/* V47: visual page system. The existing navigation continues to own the header. */
.hb-visual-pages #main{overflow:clip}
.hb-visual-pages #main .hb-v47-hero{padding-block:clamp(34px,5vw,68px) clamp(48px,6vw,80px)}
.hb-v47-hero-inner{max-width:1280px;padding-inline:clamp(20px,5vw,64px);margin-inline:auto;display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,1fr);gap:clamp(28px,4vw,58px);align-items:center}
.hb-v47-hero-inner>.wrap{padding:0;margin:0;min-width:0;max-width:none}
.hb-visual-pages #main .hb-v47-hero h1{font-size:clamp(34px,3.65vw,54px);line-height:1.08;max-width:22ch;letter-spacing:-.04em}
.hb-visual-pages #main .hb-v47-hero .lede{font-size:clamp(17px,1.5vw,19px);line-height:1.68;margin-top:24px}
.hb-v47-figure{margin:0;min-width:0;position:relative}
.hb-v47-figure img{width:100%;height:auto;display:block;aspect-ratio:3/2;object-fit:cover;border-radius:22px;border:1px solid var(--line2);box-shadow:0 18px 45px -30px rgba(32,24,20,.45)}
.hb-v47-figure figcaption{margin-top:12px;color:var(--fainter);font-size:11px;line-height:1.5;letter-spacing:.015em}
.hb-v47-figure--diagram img{aspect-ratio:18/13;object-fit:contain;background:#f7f2ea;box-shadow:none}
.hb-v47-hero .hb-v47-figure:before{content:"";position:absolute;inset:-10px 16px 38px -10px;border:1px solid rgba(200,16,46,.22);border-radius:27px;pointer-events:none;z-index:-1}
.hb-v47-story{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(30px,6vw,80px);align-items:center}
.hb-v47-story-copy{min-width:0}
.hb-v47-story-copy>.eyebrow{color:var(--accent2);margin:0 0 18px}
.hb-visual-pages .hb-v47-story-copy h2{font-size:clamp(28px,3vw,42px);line-height:1.15;max-width:25ch}
.hb-visual-pages .hb-v47-story-copy .prose p{font-size:16.5px;line-height:1.78}
.hb-v47-story--reverse .hb-v47-figure{order:-1}
.hb-visual-pages #main .grid{background:transparent;border:0;gap:18px;animation:none;margin-top:36px}
.hb-visual-pages #main .grid.g2{grid-template-columns:repeat(2,minmax(0,1fr))}
.hb-visual-pages #main .grid.g3{grid-template-columns:repeat(3,minmax(0,1fr))}
.hb-visual-pages #main .grid .cell{min-width:0;border:1px solid var(--line);border-radius:16px;padding:clamp(24px,2.7vw,34px);background:var(--surf);position:relative;transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}
.hb-visual-pages #main .cell h3{font-size:20px;line-height:1.25;max-width:30ch}
.hb-visual-pages #main .cell p{font-size:15.5px;line-height:1.7}
.hb-visual-pages #main .cell .num{display:inline-flex;margin-bottom:14px;margin-left:12px;vertical-align:middle;color:var(--accent2)}
.hb-v47-icon{width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;color:var(--accent2);background:rgba(200,16,46,.065);border-radius:12px;margin:0 0 18px;vertical-align:middle;flex-shrink:0}
.hb-v47-icon svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}
.hb-visual-pages #main .grid .cell:hover{border-color:rgba(200,16,46,.4);box-shadow:0 12px 32px -24px rgba(20,12,10,.45);transform:translateY(-3px)}
.hb-visual-pages #main .cards{animation:none;gap:22px}
.hb-visual-pages #main .card{min-width:0}
.hb-visual-pages #main .card h3{line-height:1.22}
.hb-visual-pages #main .card .hb-v47-icon{margin:0 0 8px}
.hb-visual-pages #main .faq{animation:none;background:transparent;border:0;gap:12px}
.hb-visual-pages #main .faq .qa{border:1px solid var(--line);background:var(--surf);border-radius:14px;padding:26px}
.hb-visual-pages #main .faq h3{line-height:1.3}
.hb-visual-pages #main .stats{animation:none}
.hb-visual-pages #main .stat{padding:24px;border:1px solid var(--line);border-top:3px solid var(--accent);border-radius:14px;background:var(--surf)}
.hb-visual-pages #main section.blk>.wrap>.eyebrow,.hb-visual-pages #main section.blk>.wrap>h2,.hb-visual-pages #main .rise{animation:none}
.hb-visual-pages #main section.blk{padding-block:clamp(48px,6vw,82px)}
.hb-visual-pages #main .hb-v47-art-figure{max-width:900px;margin:36px auto 42px}
.hb-visual-pages #main .hb-v47-art-figure img{max-height:550px;object-fit:contain}
.hb-visual-pages .hb-v47-card-image{display:block;width:calc(100% + 56px);max-width:none;margin:-28px -28px 12px;border-radius:15px 15px 0 0;aspect-ratio:3/2;object-fit:cover}
.hb-visual-pages .hb-v47-card-image--diagram{object-fit:contain;background:#f7f2ea}
.hb-visual-pages #main .hb-v47-reading{max-width:72ch}
.hb-motion-ready .hb-reveal{transition:opacity .65s ease,transform .65s cubic-bezier(.2,.7,.3,1)}
.hb-motion-ready .hb-reveal.hb-reveal-pending{opacity:0;transform:translateY(22px)}
@media(min-width:1200px){.hb-v47-story--reverse{grid-template-columns:minmax(0,1.02fr) minmax(0,1fr)}}
@media(max-width:1000px){
 .hb-v47-hero-inner{gap:28px}
 .hb-visual-pages #main .hb-v47-hero h1{font-size:clamp(32px,4.2vw,45px)}
 .hb-visual-pages #main .grid.g3{grid-template-columns:repeat(2,minmax(0,1fr))}
 .hb-v47-story{gap:32px}
}
@media(max-width:760px){
 .hb-v47-hero-inner,.hb-v47-story{grid-template-columns:minmax(0,1fr)}
 .hb-v47-hero-inner{display:flex;flex-direction:column;align-items:stretch;gap:22px}
 .hb-v47-hero-inner>.wrap{display:contents}
 .hb-v47-hero-inner>.wrap>.kicker{order:0;margin:0}
 .hb-v47-hero-inner>.wrap>h1{order:1}
 .hb-v47-hero-inner>.hb-v47-figure{order:2;margin:4px 0}
 .hb-v47-hero-inner>.wrap>.lede{order:3;margin:0!important}
 .hb-v47-hero-inner>.wrap>.hero-ctas{order:4;margin-top:4px}
 .hb-v47-hero-inner>.wrap>.chips{order:5}
 .hb-visual-pages #main .hb-v47-hero h1{font-size:clamp(32px,7vw,43px);max-width:23ch}
 .hb-v47-figure img{border-radius:17px}
 .hb-v47-story--reverse .hb-v47-figure{order:initial}
 .hb-v47-story-copy .prose p{max-width:none}
 .hb-v47-hero .hb-v47-figure:before{display:none}
 .hb-visual-pages #main .hb-v47-art-figure{margin:28px 0}
}
@media(max-width:560px){
 .hb-visual-pages #main .grid.g2,.hb-visual-pages #main .grid.g3,.hb-visual-pages #main .cards,.hb-visual-pages #main .stats{grid-template-columns:minmax(0,1fr)}
 .hb-visual-pages #main .grid{gap:14px}
 .hb-visual-pages #main .cell{padding:24px}
 .hb-visual-pages #main .card{padding:24px}
 .hb-visual-pages .hb-v47-card-image{width:calc(100% + 48px);margin:-24px -24px 10px}
 .hb-visual-pages #main .hero-ctas .btn{width:100%}
 .hb-visual-pages #main .faq .qa{padding:22px}
}
@media(prefers-reduced-motion:reduce){
 .hb-visual-pages *{scroll-behavior:auto!important}
 .hb-visual-pages #main *{animation:none!important;transition:none!important}
 .hb-motion-ready .hb-reveal.hb-reveal-pending{opacity:1;transform:none}
 .hb-visual-pages #main .cell:hover,.hb-visual-pages #main .card:hover{transform:none}
}
@media print{.hb-motion-ready .hb-reveal.hb-reveal-pending{opacity:1;transform:none}.hb-v47-figure{break-inside:avoid}}
