/* Bounded refinement: home hero, shared top navigation and native cursor only. */
body{cursor:auto}a,button,summary,input[type=checkbox],select{cursor:pointer}input,textarea{cursor:text}

/* Preserve the existing vertical guides below the home hero, not over its photo. */
body[data-page=home]{position:relative}
body[data-page=home]:before{position:absolute;top:var(--home-hero-height,100svh)}
.header{background:linear-gradient(180deg,rgba(11,13,15,.92),rgba(11,13,15,.65) 70%,rgba(11,13,15,.3));height:90px}
.header:after{opacity:.25}
.desktop-nav{gap:25px}
.desktop-nav a{font-size:14px;font-weight:600;min-height:48px;padding:14px 7px;line-height:20px;text-shadow:0 1px 8px rgba(0,0,0,.35)}
.desktop-nav a:hover,.desktop-nav a:focus-visible{color:var(--ivory)}
.desktop-nav a:after{height:2px;bottom:6px;left:7px}
.header-cta{font-size:14px;min-height:46px;align-items:center;gap:20px;padding:10px 15px;border:1px solid rgba(244,241,234,.7);background:rgba(11,13,15,.38);transition:background .25s,border-color .25s}
.header-cta:hover{background:rgba(11,13,15,.88);border-color:var(--ivory)}
.header.is-scrolled{background:rgba(11,13,15,.9)}

.hero.hero-refined{height:auto;min-height:100svh;max-height:none}
.hero-refined .hero-img{object-position:61% center;filter:saturate(.78) contrast(1.04);animation:refined-photo 1.1s var(--ease) both}
.hero-refined .hero-visual-shade{background:linear-gradient(90deg,rgba(7,10,10,.68),rgba(7,10,10,.24) 48%,transparent 74%),linear-gradient(0deg,rgba(7,10,10,.46),transparent 30%)}
.hero-refined .hero-copy{display:grid;align-items:center;height:auto;min-height:100svh;padding:132px var(--pad) 28px;grid-template-columns:minmax(0,7fr) minmax(0,5fr);grid-template-rows:auto minmax(410px,1fr) auto;gap:22px 4vw}
.hero-refined .hero-copy>.eyebrow{grid-column:1/-1;grid-row:1;font-size:10px;letter-spacing:.12em;gap:16px;line-height:1.65;margin:0}
.hero-refined h1{grid-column:1;grid-row:2;width:100%;font-size:clamp(92px,10.4vw,158px);line-height:.91;letter-spacing:-.075em;align-self:center;margin:0;padding:0 0 .12em;color:#fff;text-shadow:0 2px 24px rgba(0,0,0,.25);isolation:isolate}
.hero-refined h1 span{width:max-content;max-width:100%;animation:refined-title .85s var(--ease) both;opacity:1;clip-path:none;transform:none}
.hero-refined h1 span:nth-child(2){margin-left:12%;animation-delay:.07s}
.hero-refined h1 span:nth-child(3){margin-left:24%;animation-delay:.14s}
.hero-refined h1 em{font-size:1.06em;color:var(--ivory)}
.hero-refined .hero-statement{grid-column:2;grid-row:2;align-self:center;justify-self:end;width:100%;max-width:450px;margin:0;padding:30px 27px;border:0;position:relative;isolation:isolate}
.hero-refined .hero-statement:before{content:"";position:absolute;inset:-45px -36px;z-index:-1;background:radial-gradient(ellipse,rgba(11,13,15,.88) 25%,rgba(11,13,15,.64) 50%,transparent 76%);pointer-events:none}
.hero-refined .hero-statement>p{font-size:17px;line-height:1.75;color:white;max-width:390px;margin-bottom:27px;text-shadow:0 1px 5px rgba(0,0,0,.5)}
.hero-refined .hero-buttons{display:flex;flex-direction:column;align-items:stretch;gap:13px;width:100%}
.hero-refined .hero-buttons .button{font-size:16px;font-weight:700;line-height:22px;min-height:54px;padding:15px 23px;gap:22px;width:100%;transform:none;transition:background .25s,color .25s,border-color .25s;box-shadow:0 4px 14px rgba(0,0,0,.08)}
.hero-refined .hero-buttons .button:before{display:none}
.hero-refined .hero-buttons .button>span:last-child{font-size:20px;transition:transform .25s}
.hero-refined .hero-buttons .button:hover>span:last-child{transform:translate(2px,-2px)}
.hero-refined .hero-buttons .white{background:var(--ivory);color:#171a1e;border:1px solid var(--ivory)}
.hero-refined .hero-buttons .white:hover{background:#fff;color:#171a1e;border-color:#fff}
.hero-refined .hero-buttons .ghost{background:rgba(11,13,15,.86);color:#fff;border:1px solid rgba(244,241,234,.92)}
.hero-refined .hero-buttons .ghost:hover{background:#171a1e;color:#fff;border-color:#fff}
.hero-refined .hero-buttons .button:focus-visible{outline:3px solid #fff;outline-offset:5px}
.hero-refined .hero-bottom{grid-column:1/-1;grid-row:3;width:100%;display:flex;justify-content:space-between;align-items:end;gap:24px;border:0;padding-top:15px;margin:0}
.hero-refined .hero-note{color:white;font-size:12px;line-height:1.6;text-shadow:0 1px 6px #000}
.hero-refined .scroll-cue{min-height:44px;min-width:44px;font-size:18px;gap:4px;padding:5px;align-items:center}
.hero-refined .scroll-cue span{font-size:9px;letter-spacing:.13em}
@keyframes refined-title{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@keyframes refined-photo{from{opacity:.75;transform:scale(1.01)}to{opacity:1;transform:scale(1)}}
@media(min-width:900px) and (max-height:750px){.hero-refined .hero-copy{padding-top:112px;grid-template-rows:auto minmax(340px,1fr) auto;gap:15px 4vw}.hero-refined h1{font-size:clamp(88px,9vw,134px)}}
@media(max-width:1099px){.header{height:80px}.hero-refined .hero-copy{padding-top:120px;gap:24px 20px}.hero-refined h1{font-size:clamp(90px,11vw,122px)}.hero-refined h1 span:nth-child(3){margin-left:14%}.hero-refined .hero-statement{padding:23px 15px}.hero-refined .hero-statement>p{font-size:16px}.hero-refined .hero-buttons .button{font-size:15px}}
@media(max-width:899px){.hero-refined .hero-copy{grid-template-columns:1fr;grid-template-rows:auto auto auto auto;padding:116px var(--pad) 25px;gap:25px;align-content:center}.hero-refined h1{grid-column:1;grid-row:2;font-size:clamp(76px,14vw,119px);max-width:690px;padding:0}.hero-refined h1 span:nth-child(2){margin-left:8%}.hero-refined h1 span:nth-child(3){margin-left:17%}.hero-refined .hero-statement{grid-column:1;grid-row:3;max-width:600px;padding:8px 0;margin:0;justify-self:start;align-self:auto}.hero-refined .hero-statement:before{inset:-35px -28px;background:radial-gradient(ellipse at 45% 52%,rgba(11,13,15,.82) 26%,rgba(11,13,15,.48) 56%,transparent 83%)}.hero-refined .hero-statement>p{max-width:500px}.hero-refined .hero-buttons{flex-direction:row;gap:14px}.hero-refined .hero-buttons .button{flex:1;min-width:0;padding:15px 19px}.hero-refined .hero-bottom{grid-row:4}.hero-refined .hero-visual-shade{background:linear-gradient(90deg,rgba(7,10,10,.58),rgba(7,10,10,.12) 82%),linear-gradient(0deg,rgba(7,10,10,.4),transparent 40%)} }
@media(max-width:599px){.header{height:76px}.header-cta{font-size:12px;padding:9px 12px;gap:12px}.hero-refined .hero-copy{padding:110px 22px 22px;gap:23px}.hero-refined h1{font-size:clamp(68px,19vw,100px);line-height:.92;margin:0}.hero-refined .hero-copy>.eyebrow{font-size:9px;gap:10px;letter-spacing:.07em;flex-wrap:wrap}.hero-refined .hero-statement{padding:4px 0}.hero-refined .hero-statement>p{font-size:16px;line-height:1.7;margin-bottom:22px}.hero-refined .hero-buttons{flex-direction:column;gap:12px}.hero-refined .hero-buttons .button{font-size:16px;min-height:54px;padding:15px 21px}.hero-refined .hero-bottom{padding-top:3px}.hero-refined .hero-note{font-size:11px}.hero-refined .hero-img{object-position:55% center}.hero-refined h1 span:nth-child(3){margin-left:18%}}
@media(prefers-reduced-motion:reduce){.hero-refined h1 span,.hero-refined .hero-img{animation:none;opacity:1;transform:none}.hero-refined .hero-buttons .button>span:last-child{transition:none}.hero-refined .hero-buttons .button:hover>span:last-child{transform:none}}
