.sub-hero{position:relative;background:var(--dark);color:var(--dark-fg);overflow:hidden;padding:clamp(112px,17vh,168px) 0 clamp(48px,8vw,100px)}
.sub-grid{position:relative;display:grid;gap:clamp(28px,5vw,70px);align-items:end}
@media (min-width:900px){.sub-grid{grid-template-columns:1.25fr .75fr}}
.crumbs{display:flex;flex-wrap:wrap;align-items:center;gap:10px;font-size:.78rem;letter-spacing:.18em;text-transform:uppercase;color:var(--dark-muted);margin-bottom:clamp(18px,3vw,32px)}
.crumbs a{transition:color .3s}.crumbs a:hover{color:var(--copper)}.crumbs i{display:block;width:22px;height:1px;background:var(--copper)}
.sub-title{font-family:var(--serif);font-weight:500;font-size:clamp(3.2rem,12vw,9.5rem);line-height:.9;letter-spacing:-.025em}
.sub-title em{color:var(--copper);font-weight:400}
.sub-lede{max-width:36ch;font-size:clamp(1.05rem,1rem + .5vw,1.3rem);color:var(--dark-muted);line-height:1.5;margin-top:clamp(20px,3vw,34px)}
.sub-cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}
.sub-visual{position:relative;width:min(64vw,300px);aspect-ratio:3/4.1;border-radius:999px 999px 22px 22px;background:var(--g);overflow:hidden;color:rgba(255,248,235,.94);justify-self:start}
@media (min-width:900px){.sub-visual{justify-self:end;width:min(100%,340px)}}
.sub-visual::after{content:'';position:absolute;inset:0;background:radial-gradient(70% 50% at 50% 100%,rgba(255,255,255,.18),transparent 70%);pointer-events:none}
.sub-visual svg{position:absolute;left:50%;bottom:9%;width:52%;height:auto;transform:translateX(-50%);filter:drop-shadow(0 14px 18px rgba(0,0,0,.28))}
.sub-visual .cap{position:absolute;left:0;right:0;bottom:12px;text-align:center;font-size:.68rem;letter-spacing:.2em;text-transform:uppercase;font-weight:500;color:rgba(255,248,235,.92);z-index:2}
.sub-body{padding:clamp(70px,10vw,140px) 0}
.sub-cols{display:grid;gap:clamp(36px,6vw,90px)}
@media (min-width:900px){.sub-cols{grid-template-columns:1.1fr .9fr}}
.sub-cols h2{font-family:var(--serif);font-weight:500;font-size:clamp(2rem,4.6vw,3.4rem);line-height:1;letter-spacing:-.015em;margin:12px 0 22px}
.sub-copy p{color:var(--muted);max-width:46ch}
.sub-copy p+p{margin-top:16px}
.sub-copy p.big{font-family:var(--serif);font-size:clamp(1.5rem,3vw,2.1rem);line-height:1.2;color:var(--fg)}
.incl li{display:flex;gap:14px;align-items:baseline;padding:16px 0;border-top:1px solid var(--line)}
.incl li:last-child{border-bottom:1px solid var(--line)}
.incl li::before{content:'';flex:none;width:.6em;height:.6em;background:var(--accent);clip-path:polygon(50% 0,62% 38%,100% 50%,62% 62%,50% 100%,38% 62%,0 50%,38% 38%)}
.sub-body .pillars{margin-top:clamp(56px,9vw,120px)}
.rel{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;margin-top:22px}
.rel a{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:22px 24px;border:1px solid var(--line);border-radius:18px;background:var(--surface);font-family:var(--serif);font-size:1.6rem;line-height:1.1;transition:transform .4s var(--out),background .3s,color .3s}
.rel a:hover{background:var(--copper);color:#100F0D;transform:translateY(-4px)}
.rel svg{width:20px;height:20px;flex:none}
.sub-more{margin-top:clamp(56px,9vw,120px)}
.contact .cta-row{position:relative;margin-top:clamp(28px,5vw,56px)}
@keyframes as-show{to{opacity:1;transform:none}}
html.js .rise,html.js .reveal,html.js .line>span{animation:as-show 0s linear 4s forwards}
html.js .rise{transition-delay:calc(.1s + var(--d,0s))}
html.js .line>span{transition-delay:calc(.05s + var(--i)*.1s)}