.header{position:sticky;top:0;z-index:20;background:var(--page);border-bottom:1px solid var(--line)}header .container{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand img{width:175px;height:60px;object-fit:contain}.nav{display:flex;gap:28px;align-items:center;font-size:.8rem}.nav a:hover{color:var(--accent)}.menu-toggle{display:none;background:none;border:1px solid var(--line);color:inherit;padding:8px 14px}.button{display:inline-flex;justify-content:center;align-items:center;gap:25px;padding:15px 25px;background:var(--accent);color:var(--button-ink);border:1px solid var(--accent);font-size:.82rem;font-weight:600;transition:transform .2s}.button:hover{transform:translateY(-2px)}.button.outline{background:transparent;color:var(--ink);border-color:var(--line)}.actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:32px}.hero{padding:0}.hero-grid{display:grid;grid-template-columns:1.05fr 1fr;min-height:690px;align-items:center}.hero-copy{padding:70px 50px 70px 0}.hero-media{height:690px;position:relative;overflow:hidden}.hero-media img,.hero-media video{width:100%;height:100%;object-fit:cover;object-position:center 28%}.portrait-caption{position:absolute;bottom:30px;left:30px;color:#fff;font-size:.8rem;text-shadow:0 2px 8px #000}.portrait-caption span{display:block;opacity:.8;font-size:.7rem}.strip{border-block:1px solid var(--line);padding:22px 0}.strip .container{display:flex;justify-content:space-between;gap:24px;font-size:.75rem;letter-spacing:.07em}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.card{padding:32px;border:1px solid var(--line);background:var(--surface)}.card .number{display:block;color:var(--accent);font-size:.75rem;margin-bottom:32px}.card h3{margin-bottom:18px}.card p{font-size:.9rem}.split{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.split img{max-height:580px;width:100%;object-fit:cover}.band{background:var(--surface)}.rule-list{list-style:none;padding:0;margin:30px 0 0}.rule-list li{border-top:1px solid var(--line);padding:18px 0}.rule-list span{color:var(--accent);margin-right:20px;font-size:.75rem}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px}form{display:grid;gap:18px}label{display:grid;gap:7px;font-size:.8rem}input,select,textarea{width:100%;padding:12px;border:1px solid var(--line);background:var(--page);color:var(--ink);border-radius:0}textarea{resize:vertical;min-height:100px}.form-note{font-size:.75rem}.form-status{font-size:.8rem;color:var(--accent)}footer{padding:35px 0;border-top:1px solid var(--line)}footer .container{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:.75rem}footer nav{display:flex;gap:20px;flex-wrap:wrap}details{border-bottom:1px solid var(--line);padding:22px 0}summary{cursor:pointer;font-size:1.05rem}details p{padding-top:16px;max-width:760px}dialog{width:min(580px,92%);border:1px solid var(--line);background:var(--page);color:var(--ink);padding:35px;max-height:90vh}dialog::backdrop{background:#070b12b3}dialog h2{font-size:2rem;margin-bottom:20px}.close-dialog{float:right;color:inherit;border:0;background:transparent;font-size:1.5rem}.floating{position:fixed;bottom:22px;right:22px;z-index:15;box-shadow:var(--shadow-lg)}.tabs{display:flex;flex-wrap:wrap;gap:10px;margin:32px 0}.tabs button{background:transparent;border:1px solid var(--line);padding:12px 18px;color:var(--ink)}.tabs button[aria-selected=true]{background:var(--accent);color:var(--button-ink)}.panel{padding:35px;background:var(--surface);border-left:3px solid var(--accent)}.panel h3{margin-bottom:18px}.panel p{max-width:800px}@media(max-width:900px){.nav{gap:16px}.hero-grid{min-height:570px}.hero-media{height:570px}.hero-copy{padding-right:25px}.grid{grid-template-columns:1fr 1fr}.split,.contact-grid{gap:35px}}@media(max-width:700px){header .container{min-height:76px}.brand img{width:150px;height:52px}.menu-toggle{display:block}.nav{display:none;position:absolute;top:76px;left:0;right:0;padding:24px 5%;background:var(--page);border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch}.nav.open{display:flex}.hero-grid,.split,.contact-grid,.grid{grid-template-columns:1fr}.hero-copy{padding:55px 0 40px}.hero-media{height:460px}.strip .container{flex-wrap:wrap;justify-content:center}.split,.contact-grid{gap:40px}.card{padding:26px}.floating{bottom:12px;right:12px;padding:12px 18px}.section-head .button{margin-top:20px}}

/* Four-step journeys and longer, descriptive navigation labels. */
.grid-four{grid-template-columns:repeat(2,minmax(0,1fr))}
.contact-grid>*{min-width:0}.contact-grid a{overflow-wrap:anywhere}
form .actions{margin-top:0;gap:10px}.form-status:empty{display:none}
@media(min-width:1101px){.nav{gap:18px;font-size:.72rem}.nav .button{padding:12px 16px}}
@media(max-width:1100px){
 .menu-toggle{display:block}
 .nav{display:none;position:absolute;top:100%;left:0;right:0;padding:24px 5%;background:var(--page);border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;max-height:calc(100dvh - 88px);overflow:auto}
 .nav.open{display:flex}
}
@media(max-width:700px){.grid-four{grid-template-columns:1fr}footer{padding-bottom:90px}}

/* Reading and form primitives shared by the three distinct journeys. */
.prose p+p{margin-top:22px}.prose .lead{margin-top:0}
.text-link{display:inline-block;color:var(--accent);font-weight:600;font-size:.88rem;text-underline-offset:5px;margin-top:22px}
button.text-link{padding:0;border:0;background:none;text-align:left;cursor:pointer}
.text-link:hover{text-decoration:underline}.inline-note{padding:22px 0;border-top:1px solid var(--line);margin-top:32px;max-width:850px;font-size:.9rem}
fieldset{min-width:0;margin:0;padding:24px;border:1px solid var(--line);display:grid;gap:14px}
legend{padding:0 8px;font-weight:600;font-size:1rem}.form-pair{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.direct-contact{display:grid;justify-items:start;gap:10px;margin:30px 0}.direct-contact a{overflow-wrap:anywhere}
.dialog-intro{margin-bottom:24px}.form-status{overflow-wrap:anywhere}
@media(max-width:700px){.form-pair{grid-template-columns:1fr}fieldset{padding:18px}.text-link{line-height:1.7}}
