:root{--dark:#081d21;--ink:#173e40;--mint:#c5eddc;--paper:#f3f5ef}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font-family:Arial,Helvetica,sans-serif;line-height:1.65}a{color:inherit}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #cfad69;outline-offset:5px}.skip{position:absolute;top:-100px;background:white;padding:12px;z-index:10}.skip:focus{top:0}header{height:112px;background:var(--dark);display:flex;align-items:center;justify-content:space-between;padding:20px 6%;border-bottom:1px solid #ffffff20;color:white}.brand img{width:230px;height:auto;display:block}.header-contact{text-decoration:none;font-size:15px;border:1px solid #ffffff35;padding:12px 22px}.header-contact span{margin-left:20px}.hero{position:relative;color:white;background:linear-gradient(90deg,#081d21 0%,#081d21f2 35%,#081d2150 70%,#081d2140),url('assets/origins.webp') center/cover;min-height:760px;padding:65px 6% 75px;overflow:hidden}.hero-inner{max-width:710px;position:relative;z-index:1}.launch-row{display:flex;align-items:center;gap:20px;margin-bottom:35px}.launch{position:relative;display:inline-flex;align-items:center;gap:12px;border:1px solid #8ee6c877;border-radius:5px;color:var(--mint);padding:10px 18px;text-transform:uppercase;font-size:14px;letter-spacing:.15em;font-weight:bold;animation:glow 3s ease-in-out infinite}.launch i{height:7px;width:7px;background:#8ee6c8;border-radius:50%;box-shadow:0 0 13px #8ee6c8}#motion{font:inherit;font-size:12px;color:#d7e8e2;background:none;border:0;text-decoration:underline;text-underline-offset:4px;cursor:pointer}.eyebrow{font-size:11px;letter-spacing:.13em;font-weight:bold;margin:0 0 22px}.hero .eyebrow{color:#afd5cc}h1{font-size:clamp(45px,5.4vw,80px);font-weight:400;line-height:1.12;letter-spacing:-.04em;margin:0 0 25px}em{font-style:normal;color:#acd7c8}.intro{font-size:clamp(20px,2vw,26px);line-height:1.5;color:#e9f2ed}.summary{max-width:560px;font-size:17px;color:#bed2ce;margin-bottom:30px}.cta{display:inline-flex;align-items:center;gap:50px;background:var(--mint);color:#143c40;font-size:15px;font-weight:bold;text-decoration:none;padding:16px 23px;border-radius:3px}.launch-note{font-size:12px;color:#a8c2bb;max-width:470px}.art-caption{position:absolute;right:6%;bottom:28px;color:#cfdfd6;font-size:11px}.services{padding:90px 6% 65px}.section-heading{max-width:750px}.section-heading h2,.questions h2{font-weight:400;letter-spacing:-.035em;font-size:clamp(36px,4vw,52px);line-height:1.15;margin:0 0 24px}.section-heading h2 em,.questions h2 em{color:#638c79}.section-heading>p:last-child{max-width:620px;color:#5c746e}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin-top:45px}.cards article{padding:32px 28px;background:#ffffff85;border:1px solid #d3ded4;border-radius:5px}.number{font-size:10px;letter-spacing:.14em;color:#6f8e80;font-weight:bold}h3{font-weight:400;font-size:25px;line-height:1.3;margin:23px 0 16px}.cards p{font-size:15px;color:#5d746d}.scope{max-width:900px;font-size:13px;color:#647a72;margin-top:30px}.questions{border-top:1px solid #d8e1d8;padding:75px 6%;display:grid;grid-template-columns:1fr 1.3fr;gap:60px}.questions details{border-bottom:1px solid #cfdcd2;padding:20px 0}.questions summary{cursor:pointer;font-size:17px;font-weight:500}.questions details p{font-size:15px;color:#5b746c;max-width:650px}.contact{padding:80px 6%;background:#133b3e;color:white}.contact h2{font-size:clamp(34px,4vw,54px);font-weight:400;line-height:1.18;letter-spacing:-.035em}.contact>a{font-size:clamp(18px,2.2vw,28px);text-underline-offset:7px;text-decoration-thickness:1px;color:var(--mint)}.contact>p:last-child{color:#b0cbc3;font-size:14px}footer{display:flex;flex-wrap:wrap;justify-content:space-between;gap:18px;padding:30px 6%;background:var(--dark);color:#a7bdb7;font-size:11px}@keyframes glow{0%,100%{box-shadow:0 0 0 #8ee6c800;border-color:#8ee6c866}50%{box-shadow:0 0 22px #8ee6c833;border-color:#8ee6c8}}.motion-paused .launch{animation:none}@media(max-width:750px){header{height:90px}.brand img{width:180px}.header-contact{padding:8px 12px;font-size:12px}.header-contact span{margin-left:10px}.hero{padding-top:40px;min-height:740px;background-position:60% center;background-image:linear-gradient(90deg,#081d21ef,#081d21bc),url('assets/origins.webp')}.hero-inner{max-width:560px}.launch-row{gap:12px;margin-bottom:32px}.launch{font-size:11px;padding:8px 12px}h1{font-size:clamp(40px,8vw,60px)}.summary{font-size:16px}.art-caption{left:6%;right:auto;font-size:10px}.services{padding-top:60px}.cards{grid-template-columns:1fr}.questions{grid-template-columns:1fr;gap:10px;padding-top:55px;padding-bottom:55px}.contact{padding-top:60px;padding-bottom:60px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.launch{animation:none}}
.brand{text-decoration:none}.strapline{display:block;font-size:11px;letter-spacing:.16em;color:#d9ebe4;text-align:center;margin-top:3px}@media(max-width:750px){.strapline{font-size:9px;letter-spacing:.12em}}
.hero{background:var(--dark);padding-bottom:165px}.scenes,.scene{position:absolute;inset:0}.scene{background-position:center;background-size:cover;opacity:0;transition:opacity 1.5s ease}.scene.active{opacity:1}.scenes:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#081d21 0%,#081d21f2 35%,#081d2150 70%,#081d2140)}.carousel-controls{position:absolute;bottom:25px;left:6%;right:6%;z-index:2;display:grid;grid-template-columns:1fr auto;gap:15px 30px}.chapter-buttons{display:flex;gap:15px}.chapter-buttons button{border:0;border-top:1px solid #ffffff50;background:none;color:#a0bcb4;padding:15px 0 0;flex:1;text-align:left;font:inherit;font-size:11px;cursor:pointer}.chapter-buttons button[aria-pressed=true]{color:var(--mint);border-color:var(--mint)}.chapter-buttons span{margin-left:8px}.playback{display:flex;gap:8px;align-items:center}.playback button{border:1px solid #ffffff50;background:#081d2166;color:white;border-radius:50%;width:36px;height:36px;cursor:pointer}.carousel-controls .art-caption{position:static;grid-column:1/-1;margin:0;color:#a5beb5;font-size:10px}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:750px){.hero{padding-bottom:205px}.scenes:after{background:linear-gradient(90deg,#081d21ef,#081d21c0)}.scene{background-position:60% center}.carousel-controls{bottom:22px;gap:15px;grid-template-columns:1fr}.chapter-buttons{gap:12px}.chapter-buttons button{font-size:10px;min-width:0}.chapter-buttons span{display:block;margin:4px 0 0;font-size:9px}.playback{justify-content:flex-end}.carousel-controls .art-caption{font-size:9px}}@media(prefers-reduced-motion:reduce){.scene{transition:none}}

/* Responsive brand proportions and viewport-aware hero, revision 4. */
:root{--header-height:104px}
html,body{width:100%;max-width:100%}
header{height:var(--header-height);gap:20px;padding-block:14px}
.brand{display:block;width:220px;max-width:100%;min-width:0;flex:0 1 220px}
.brand img{display:block;width:100%;max-width:100%;height:auto;aspect-ratio:1627/434}
.strapline{font-size:15px;line-height:1.25;letter-spacing:.035em;text-align:justify;text-align-last:justify;margin-top:6px;white-space:nowrap}
.header-contact{flex:none;white-space:nowrap}
.hero{min-height:calc(100svh - var(--header-height));padding:clamp(24px,4vh,56px) 6% 24px;display:flex;flex-direction:column;justify-content:space-between;gap:28px}
.hero-inner{width:100%;min-width:0;max-width:710px}
.hero h1{font-size:clamp(40px,4.5vw,66px);overflow-wrap:break-word}
.launch-row{margin-bottom:24px;flex-wrap:wrap;gap:12px 20px}
.carousel-controls{position:relative;inset:auto;width:100%;min-width:0;flex:none;gap:12px 24px}
.chapter-buttons{min-width:0}
.chapter-buttons button{min-width:0}
.carousel-controls .art-caption{overflow-wrap:anywhere}
.cards{grid-template-columns:repeat(3,minmax(0,1fr))}
.questions{grid-template-columns:minmax(0,1fr) minmax(0,1.3fr)}
.cards article,.questions>div{min-width:0}
.contact>a{overflow-wrap:anywhere}
@media(min-width:751px) and (max-height:850px){
 :root{--header-height:96px}
 .hero{padding-top:24px;padding-bottom:20px;gap:20px}
 .hero h1{font-size:clamp(40px,4.1vw,54px);line-height:1.08;margin-bottom:16px}
 .launch-row{margin-bottom:18px}
 .launch{padding:8px 14px;font-size:12px}
 .hero .eyebrow{margin-bottom:14px}
 .intro{font-size:20px;line-height:1.4;margin:14px 0}
 .summary{font-size:15px;line-height:1.5;margin:14px 0 18px}
 .cta{padding:12px 22px}
 .launch-note{font-size:11px;margin:12px 0 0}
 .chapter-buttons button{padding-top:10px}
}
@media(min-width:751px) and (max-height:650px){
 :root{--header-height:88px}
 .brand{width:200px;flex-basis:200px}
 .strapline{font-size:13.5px}
 .hero{padding-top:18px;padding-bottom:16px;gap:18px}
 .hero h1{font-size:42px;margin-bottom:12px}
 .hero .eyebrow{font-size:10px;margin-bottom:10px}
 .launch-row{margin-bottom:12px}
 .intro{font-size:18px;line-height:1.35;margin:12px 0}
 .summary{font-size:14px;line-height:1.45;margin:12px 0 14px}
 .cta{padding:10px 20px;font-size:14px}
 .launch-note{margin-top:10px}
 .carousel-controls{gap:10px 24px}
}
@media(max-width:750px){
 :root{--header-height:94px}
 header{gap:16px;padding-inline:5%}
 .brand{width:200px;flex-basis:200px}
 .strapline{font-size:clamp(10px,3.1vw,12px);letter-spacing:.02em;margin-top:5px}
 .header-contact{font-size:12px;padding:8px 10px}
 .header-contact span{margin-left:6px}
 .hero{padding-top:30px;padding-bottom:22px;gap:30px}
 .hero h1{font-size:clamp(34px,8vw,52px)}
 .launch-row{margin-bottom:24px}
 .hero .eyebrow{font-size:10px;letter-spacing:.1em}
 .carousel-controls{grid-template-columns:minmax(0,1fr);gap:14px}
 .chapter-buttons{gap:8px}
 .cards,.questions{grid-template-columns:minmax(0,1fr)}
}

/* Revision 5: compact hero, independent of screen height. */
.hero{min-height:0;justify-content:flex-start;padding-top:28px;padding-bottom:20px;gap:24px}
@media(min-width:751px){
 .hero-inner{max-width:650px}
 .hero h1{font-size:clamp(38px,3.8vw,52px);line-height:1.08;margin-bottom:16px}
 .launch-row{margin-bottom:18px}
 .launch{padding:8px 14px;font-size:12px}
 .hero .eyebrow{margin-bottom:14px}
 .intro{font-size:20px;line-height:1.4;margin:14px 0}
 .summary{font-size:15px;line-height:1.5;margin:14px 0 18px}
 .cta{padding:12px 22px}
 .launch-note{font-size:11px;margin:12px 0 0}
 .chapter-buttons button{padding-top:10px}
}
@media(min-width:751px) and (max-height:650px){
 .hero{padding-top:18px;padding-bottom:16px;gap:18px}
 .hero h1{font-size:38px}
 .intro{font-size:18px}
}
@media(max-width:750px){.hero{padding-top:24px;gap:24px}}

/* Revision 6: independently balance the original symbol and lettering. */
.brand{width:250px;flex-basis:250px}
.brand-lockup{display:flex;align-items:center;gap:14px;width:100%}
.brand-symbol{display:block;width:29px;height:34px;flex:0 0 29px;overflow:hidden}
.brand-wordmark{display:block;width:calc(100% - 43px);height:auto;aspect-ratio:1127/182;overflow:hidden}
.strapline{font-size:15px}
@media(max-width:750px){
 .brand{width:220px;flex-basis:220px}
 .brand-lockup{gap:12px}
 .brand-symbol{width:25px;height:29px;flex-basis:25px}
 .brand-wordmark{width:calc(100% - 37px)}
 .strapline{font-size:clamp(10px,3.1vw,13px)}
}

/* Revision 7: retain readable proportions on shorter laptop screens. */
@media(min-width:751px){
 .hero-inner{max-width:580px}
 .hero h1{font-size:clamp(42px,3.8vw,52px)}
 .intro{font-size:21px}
 .summary{max-width:550px;font-size:16px}
 .scenes:after{background:linear-gradient(90deg,#081d21 0%,#081d21f2 32%,#081d21c9 46%,#081d2140 68%,#081d2120)}
}
@media(min-width:751px) and (max-height:650px){
 .hero{padding-top:16px;padding-bottom:14px;gap:16px}
 .hero h1{font-size:44px;margin-bottom:12px}
 .intro{font-size:20px;line-height:1.35;margin:10px 0}
 .summary{font-size:15px;line-height:1.45;margin:10px 0 14px}
 .hero .eyebrow{margin-bottom:10px}
 .launch-row{margin-bottom:12px}
 .launch-note{margin-top:10px}
}
