:root{--navy:#081625;--slate:#243041;--cream:#EFEEE5;--gold:#BC8F38;--muted:#b3bdc8;--line:rgba(239,238,229,.17)}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:90px;-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{margin:0;background:var(--navy);color:var(--cream);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.6}
a{color:inherit;text-decoration:none}
button{font:inherit}
a,button{-webkit-tap-highlight-color:transparent}
a:focus-visible,button:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--gold);outline-offset:6px}
h1,h2,h3,p{margin:0}
h1,h2,h3{line-height:1.12;font-weight:500;letter-spacing:-.045em}
em{font-style:normal;color:var(--gold)}
header{gap:24px;height:96px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:var(--navy)}
.brand{display:inline-flex;align-items:center;flex-shrink:0}
.brand img{display:block;width:auto;height:48px}
nav{display:flex;align-items:center;gap:20px;font-size:14px}
.nav-support{padding:12px 16px;border:1px solid var(--gold);text-align:center;max-width:260px;line-height:1.4}
nav .nav-support:hover,nav .nav-support[aria-current=page]{background:var(--cream);border-color:var(--cream);color:var(--navy)}
.nav-distributor{padding:12px 16px;border:1px solid var(--gold);background:var(--gold);color:var(--navy);font-weight:700;text-align:center}
nav .nav-distributor:hover,nav .nav-distributor[aria-current=page]{background:#d0a552;color:var(--navy)}
nav a:hover,.text-link:hover{color:var(--gold)}
.nav-cta{border:1px solid #877344;padding:12px 20px}
.nav-cta span{margin-left:18px}
.menu{display:none}
.intro-video{position:relative;background:var(--navy)}
.intro-video video{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain;max-height:calc(100svh - 96px)}
.video-sound{position:absolute;top:16px;right:5%;min-height:44px;padding:10px 16px;border:1px solid var(--line);background:rgba(8,22,37,.92);color:var(--cream);font-size:.875rem;cursor:pointer}
.video-sound:hover{border-color:var(--gold)}
@media(max-width:650px){.intro-video video{max-height:none}.video-sound{top:8px;padding:8px 12px}}
.skip{position:absolute;left:16px;top:-80px;background:var(--gold);padding:12px;z-index:100}
.skip:focus{top:10px}
.hero{position:relative;min-height:720px;display:flex;align-items:center;overflow:hidden}
.hero-photo{position:absolute;width:100%;height:100%;object-fit:cover;object-position:center 46%}
.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#081625 0%,rgba(8,22,37,.93) 22%,rgba(8,22,37,.63) 48%,rgba(8,22,37,.04) 85%),linear-gradient(0deg,rgba(8,22,37,.9),transparent 35%)}
.hero-content{position:relative;padding:76px 5% 122px;width:100%}
.eyebrow{color:var(--gold);text-transform:uppercase;letter-spacing:.18em;font-size:12px;font-weight:700;margin-bottom:25px}
.hero h1{font-size:clamp(48px,5.6vw,84px);font-weight:600;line-height:1.04;max-width:850px}
.hero-intro{max-width:505px;font-size:18px;line-height:1.7;color:#d2d7db;margin-top:30px}
.hero-actions{display:flex;gap:30px;align-items:center;margin-top:34px}
.button{display:inline-flex;justify-content:space-between;align-items:center;gap:40px;padding:17px 23px;background:var(--gold);color:var(--navy);font-size:15px;font-weight:700;transition:background .2s,transform .2s}
.button:hover{background:#d0a552;transform:translateY(-2px)}
.text-link{font-size:14px;display:inline-flex;gap:20px;align-items:center;transition:color .2s}
.hero-footer{position:absolute;bottom:0;left:5%;right:5%;border-top:1px solid var(--line);display:flex;justify-content:space-between;padding:21px 0;color:#c0c7ce;font-size:12px;letter-spacing:.025em}
.hero-footer>span:last-child{display:flex;align-items:center;gap:15px}
.hero-footer i{width:3px;height:3px;background:var(--gold);border-radius:50%}
.wrap{max-width:1440px;margin:auto;padding-left:7%;padding-right:7%}
h2{font-size:clamp(34px,3.5vw,52px)}
.situations{padding-top:100px;padding-bottom:100px}
.situation-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;margin-top:52px}
.situation-grid>a{position:relative;border-top:1px solid var(--gold);padding:25px 0 52px;transition:border-color .2s}
.small-number{font-size:11px;letter-spacing:.15em;font-weight:700;color:var(--gold)}
.situation-grid h3{font-size:25px;letter-spacing:-.03em;margin:23px 0 17px;line-height:1.25}
.situation-grid p{font-size:15px;color:var(--muted);max-width:285px}
.round-arrow{display:block;position:absolute;right:0;bottom:0;font-size:23px;color:var(--gold)}
.application{display:grid;grid-template-columns:1fr 1fr;gap:10%;padding-top:95px;padding-bottom:105px;border-top:1px solid var(--line)}
.application-title h2{font-size:clamp(34px,3.1vw,46px)}
.application-title>p:not(.eyebrow){margin:28px 0 32px;max-width:465px;color:var(--muted);font-size:17px}
.preparation{background:#132132;padding:30px 32px;border-top:2px solid var(--gold)}
.prep-heading{font-size:14px;display:flex;align-items:center;gap:15px;padding-bottom:20px;border-bottom:1px solid var(--line)}
.mini-mark{font-size:24px;color:var(--gold)}
.prep-row{display:flex;gap:23px;margin:25px 0}
.prep-row>span{font-size:12px;color:var(--gold);padding-top:3px}
.prep-row h3{font-size:19px;letter-spacing:-.02em}
.prep-row p{font-size:14px;color:var(--muted);line-height:1.65;margin-top:9px}
.tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:25px}
.tags span{font-size:12px;border:1px solid var(--line);padding:5px 9px;color:#c6ced5}
.sales-section{background:var(--slate)}
.sales-section .application{border:0}
.sales-section .eyebrow,.sales-section .small-number{color:#d4aa5d}
.sales-content>div:not(.tags){border-top:1px solid #847146;padding-top:23px;margin-bottom:27px}
.sales-content h3{font-size:25px;margin:14px 0}
.sales-content p{font-size:16px;color:#c3cbd2;max-width:460px}
.practice{padding-top:105px;padding-bottom:95px}
.tabs{display:flex;gap:35px;border-bottom:1px solid var(--line);margin-top:44px}
.tabs button{color:var(--muted);background:none;border:0;border-bottom:2px solid transparent;padding:17px 0;cursor:pointer;font-size:15px}
.tabs button[aria-selected=true]{color:var(--cream);border-bottom-color:var(--gold)}
#example{display:grid;grid-template-columns:1fr 1.3fr;gap:8%;padding:43px 0 30px}
.case-intro h3{font-size:33px;margin:18px 0 25px;line-height:1.2}
.case-intro>p{font-size:12px;color:var(--muted)}
.case-steps article{display:grid;grid-template-columns:160px 1fr;gap:25px;padding:21px 0;border-bottom:1px solid var(--line)}
.case-steps article:first-child{padding-top:0}
.case-steps article>span{font-size:10px;color:var(--gold);letter-spacing:.1em;font-weight:700;line-height:1.7}
.case-steps p{font-size:15px;color:#c4cbd1;line-height:1.7}
.case-note{font-size:13px;color:var(--muted);border-top:1px solid var(--line);padding-top:22px}
.benefits{background:var(--cream);color:var(--navy);padding:95px 0}
.benefits .eyebrow{color:#795514}
.benefit-heading{display:flex;gap:9%;align-items:center}
.benefit-heading h2{flex:1}
.benefit-heading>p{flex:.7;color:#52606b;max-width:370px}
.benefit-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;margin-top:60px}
.benefit-grid article{border-top:1px solid #a9aaa2;padding-top:17px}
.benefit-grid article>span{font-size:12px;color:#795514}
.benefit-grid h3{font-size:22px;margin:22px 0 16px}
.benefit-grid p{font-size:15px;color:#52606b}
.benefit-note{font-size:12px;color:#59646c;margin-top:38px}
.human{text-align:center;padding-top:108px;padding-bottom:100px}
.human h2{font-size:clamp(34px,4vw,58px)}
.human h2 span{color:#9faeba}
.human>p:last-child{margin-top:30px;color:var(--muted)}
.demo{padding-top:55px;padding-bottom:58px;border-top:1px solid var(--gold);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:35px}
.demo h2{font-size:clamp(32px,3.3vw,46px)}
.demo p:not(.eyebrow){color:var(--muted);font-size:15px;margin-top:24px}
.demo .button{flex-shrink:0}
footer{padding-top:34px;padding-bottom:34px;display:flex;align-items:center;justify-content:space-between;gap:25px}
footer .brand img{height:38px}
footer p,footer>span{font-size:12px;color:var(--muted)}
@media(min-width:1600px){.hero-content{max-width:1600px;margin:auto}
}
@media(max-width:1650px){
header{position:relative;gap:16px}
header .brand{min-width:0;max-width:calc(100% - 110px)}
header .brand img{width:min(100%,210px);height:auto}
.menu{display:flex;align-items:center;justify-content:center;flex-shrink:0;gap:12px;min-height:44px;background:none;border:1px solid var(--line);color:var(--cream);padding:8px 12px;font-size:14px}
nav{display:none;position:absolute;top:100%;left:0;right:0;z-index:20;background:var(--navy);padding:18px 5%;border-bottom:1px solid var(--line);align-items:stretch;gap:8px}
nav.open{display:flex;flex-direction:column;max-height:calc(100svh - 96px);overflow-y:auto;overscroll-behavior:contain}
nav a{padding:10px 12px;min-height:44px}
.nav-support{max-width:none}
.nav-cta{display:flex;align-items:center;justify-content:space-between}
}
@media(max-width:950px){
.application>*,.situation-grid>*,.benefit-grid>*,#example>*,.prep-row>div{min-width:0}
main,footer{overflow-wrap:anywhere}
.hero{min-height:700px}
.hero h1{font-size:65px}
.hero-shade{background:linear-gradient(90deg,#081625 0%,#081625cc 48%,#08162533 100%),linear-gradient(0deg,#081625,transparent 40%)}
.application{gap:6%}
.wrap{padding-left:5%;padding-right:5%}
.case-steps article{grid-template-columns:1fr;gap:8px}
.benefit-grid{grid-template-columns:repeat(2,1fr)}
.demo{align-items:flex-start;flex-direction:column}
.situation-grid{gap:22px}
.situation-grid h3{font-size:22px}
}
@media(max-width:650px){header{height:auto;min-height:72px;padding-top:12px;padding-bottom:12px}
header .brand img{width:min(42vw,170px);max-width:100%;height:auto}
.hero{min-height:0;align-items:stretch;flex-direction:column}
.hero-content{padding-top:40px;padding-bottom:36px}
.hero-photo{object-position:65% center;opacity:.58}
.hero-shade{background:linear-gradient(90deg,#081625ed,#08162555),linear-gradient(0deg,#081625,transparent 85%)}
.hero h1{font-size:clamp(2rem,8.5vw,3rem);line-height:1.1}
h2,.application-title h2,.human h2,.demo h2{font-size:clamp(1.75rem,6.8vw,2.25rem);line-height:1.16}
.eyebrow{font-size:.75rem;letter-spacing:.12em;margin-bottom:20px}
.hero-intro{font-size:16px;max-width:360px}
.hero-actions{align-items:stretch;flex-direction:column;gap:20px;margin-top:26px}
.button,.text-link{max-width:100%;gap:16px}
.button{padding:15px 18px}
.button>span,.text-link>span{flex-shrink:0}
.text-link{min-height:44px}
.hero-footer{position:relative;left:auto;right:auto;margin:0 5%;font-size:.75rem;gap:12px;flex-direction:column}
.hero-footer>span:last-child{font-size:.75rem;flex-wrap:wrap;gap:10px}
.situations,.practice{padding-top:65px;padding-bottom:65px}
.situation-grid{grid-template-columns:1fr;gap:25px;margin-top:35px}
.situation-grid>a{padding-bottom:22px}
.situation-grid h3{font-size:25px;margin:15px 0}
.situation-grid h3 br{display:none}
.situation-grid p{max-width:85%}
.round-arrow{bottom:22px}
.application{grid-template-columns:1fr;gap:35px;padding-top:62px;padding-bottom:62px}
.application-title>p:not(.eyebrow){font-size:16px}
.preparation{padding:20px}
.prep-row{gap:14px}
#example{grid-template-columns:1fr;gap:35px}
.tabs{gap:16px}
.tabs button{flex:1;min-width:0;font-size:.875rem;text-align:left}
.case-intro h3{font-size:29px}
.case-steps article{padding:20px 0}
.benefits{padding:65px 0}
.benefit-heading{display:block}
.benefit-heading>p{margin-top:25px}
.benefit-grid{gap:28px 22px;margin-top:40px}
.benefit-grid h3{font-size:20px}
.benefit-grid p,.situation-grid p,.prep-row p,.case-steps p,.human>p:last-child,.demo p:not(.eyebrow){font-size:1rem}
.human{padding-top:70px;padding-bottom:70px}
.human>p:last-child{font-size:1rem}
.demo{margin:0 5%;padding-left:0;padding-right:0}
footer{flex-wrap:wrap;gap:18px}
footer .brand{max-width:100%}
footer .brand img{width:160px;max-width:100%;height:auto}
footer p{order:3;width:100%}
}
@media(max-width:400px){
.benefit-grid{grid-template-columns:minmax(0,1fr)}
footer{align-items:flex-start;flex-direction:column}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}
*{transition:none!important}
}
.partner-page{overflow-wrap:anywhere}
.partner-intro{padding-top:clamp(48px,7vw,100px);padding-bottom:clamp(48px,7vw,100px)}
.partner-intro h1{font-size:clamp(2.25rem,5vw,4.5rem);font-weight:600;max-width:900px}
.partner-tagline{font-size:clamp(1.5rem,3vw,2.5rem);line-height:1.2;color:var(--gold);margin-top:30px;letter-spacing:-.03em}
.partner-intro-copy{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:8%;margin-top:44px}
.partner-intro-copy>p{font-size:1.25rem;line-height:1.65}
.partner-intro-copy>div{color:#c3cbd2}
.partner-intro-copy p+p{margin-top:20px}
.partner-benefits{background:var(--cream);color:var(--navy);padding:72px 0}
.partner-benefits h2,.partner-section h2,.partner-ready h2{font-size:clamp(1.75rem,3vw,2.75rem)}
.partner-benefit-list{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;padding:0;margin:40px 0 0}
.partner-benefit-list li{border-top:1px solid #a9aaa2;padding-top:24px;color:#52606b;line-height:1.75}
.partner-benefit-list strong{display:block;color:var(--navy);font-size:1.375rem;letter-spacing:-.03em;line-height:1.25;margin-bottom:14px}
.partner-support{background:var(--slate)}
.partner-section{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:8%;padding-top:72px;padding-bottom:72px}
.partner-section>div{color:#c3cbd2;line-height:1.8}
.partner-section p+p{margin-top:24px}
.partner-ready{border-top:1px solid var(--gold);padding-top:48px;padding-bottom:56px}
.partner-ready p{margin-top:24px;max-width:650px;color:#c3cbd2}
@media(max-width:750px){
.partner-intro-copy,.partner-section,.partner-benefit-list{grid-template-columns:minmax(0,1fr);gap:28px}
.partner-intro-copy{margin-top:30px}
.partner-intro-copy>p{font-size:1.125rem}
.partner-benefits{padding:48px 0}
.partner-section{padding-top:48px;padding-bottom:48px}
}
/* Mobile layouts grow with their content; desktop styling remains unchanged. */
@media(max-width:750px){
main,footer{word-break:normal;overflow-wrap:break-word}
main h1,main h2,main h3,.partner-benefit-list strong{letter-spacing:normal;line-height:1.25;word-spacing:normal}
.wrap{padding-left:6%;padding-right:6%}
.application,.situation-grid,#example{grid-template-columns:minmax(0,1fr)}
.application{gap:32px}
.situation-grid{gap:28px}
.situation-grid>a{padding-bottom:24px}
.situation-grid p{max-width:calc(100% - 32px)}
.situation-grid h3{font-size:1.5rem}
.situation-grid h3 br{display:none}
.benefit-heading{display:block}
.benefit-heading>p{margin-top:24px;max-width:none}
.hero h1{font-size:clamp(2rem,8vw,3rem);line-height:1.16;letter-spacing:normal}
.hero-intro{font-size:1rem;line-height:1.7}
.partner-intro h1{font-size:clamp(1.875rem,7vw,2.75rem)}
.eyebrow,.small-number,.case-steps article>span{letter-spacing:.08em;line-height:1.6}
.case-steps article>span{font-size:.75rem}
.prep-heading,.prep-row,.hero-actions,.hero-footer,.demo,footer{min-width:0}
.prep-heading>span:last-child,.prep-row>div,.hero-footer>span,.demo>div{min-width:0}
.prep-row>span,.mini-mark{flex-shrink:0}
.tags span{max-width:100%;white-space:normal}
.button,.text-link{min-height:48px;white-space:normal;line-height:1.5}
.demo .button{flex-shrink:1}
.nav-cta{gap:12px}
.nav-cta span{margin-left:0;flex-shrink:0}
nav.open{max-height:calc(100svh - 80px);overflow-y:auto;overscroll-behavior:contain}
nav a{font-size:1rem;line-height:1.5;overflow-wrap:break-word}
}
@media(max-width:480px){
.benefit-grid{grid-template-columns:minmax(0,1fr)}
.tabs{flex-direction:column;gap:0}
.tabs button{flex:auto;width:100%;padding:16px 8px;font-size:1rem;line-height:1.5}
.preparation{padding:20px 16px}
.hero-footer>span:last-child{line-height:1.7}
.demo{margin-left:6%;margin-right:6%;padding-left:0;padding-right:0}
.demo .button{width:100%}
}

/* Keep the supplied logo crisp and proportionate at every breakpoint. */
header .brand,footer .brand{display:flex;align-items:center;width:240px;height:auto;overflow:visible;flex-shrink:0}
header .brand img,footer .brand img{position:static;display:block;width:100%;max-width:100%;height:auto;transform:none}
footer .brand{width:220px}
@media(max-width:650px){
header .brand{width:clamp(170px,50vw,200px);max-width:calc(100% - 110px)}
footer .brand{width:200px}
}
