.home-direction-b {
  --home-stage-gradient: radial-gradient(circle at 8% 12%, rgb(124 58 237 / 22%), transparent 31rem), radial-gradient(circle at 88% 34%, rgb(34 211 238 / 14%), transparent 29rem), linear-gradient(145deg, var(--sf-home-primary-background), var(--sf-home-secondary-background));
}

.home-direction-b .site-header .shell { min-height:72px; }
.home-direction-b .site-identity { display:flex; min-width:0; align-items:center; gap:.55rem; overflow:visible; font-size:.82rem; letter-spacing:.04em; white-space:nowrap; }
.site-identity__mark { display:inline-grid; width:2.25rem; height:2.25rem; flex:0 0 auto; place-items:center; border:1px solid rgb(246 196 83 / 65%); border-radius:.65rem .2rem .65rem .2rem; background:linear-gradient(145deg,rgb(124 58 237 / 35%),rgb(34 211 238 / 12%)); color:var(--sf-home-cta-primary); font-size:.72rem; font-weight:900; letter-spacing:.08em; box-shadow:inset 0 0 0 2px rgb(255 255 255 / 4%); transform:rotate(-2deg); }
.site-identity__wordmark { color:inherit !important; font:inherit; }
.site-identity__wordmark strong { color:var(--sf-home-cta-primary); font-weight:900; }
.header-cta { flex:0 0 auto; padding-inline:var(--sf-space-3) !important; font-size:.76rem !important; }
.home-direction-b .home-cta::before { content:none; }
.home-direction-b .menu-toggle { flex:0 0 auto; width:var(--sf-touch-min); padding:0; overflow:hidden; font-size:0; }
.home-direction-b .menu-toggle::before { content:"☰"; font-size:1.25rem; line-height:1; }
.home-direction-b .menu-toggle[aria-expanded="true"]::before { content:"×"; font-size:1.65rem; }

.home-hero { position:relative; isolation:isolate; overflow:hidden; padding-block:clamp(2rem,6vw,5rem); border-bottom:1px solid var(--sf-home-border); background:var(--home-stage-gradient); color:var(--sf-home-text-on-dark); }
.home-hero::after { position:absolute; z-index:-1; inset:auto -12rem -14rem auto; width:32rem; height:32rem; border:1px solid rgb(246 196 83 / 20%); border-radius:50%; content:""; }
.home-hero__layout { display:grid; gap:clamp(1.5rem,4vw,3.5rem); align-items:center; }
.home-hero__content,.home-hero__media,.home-hero__media img { min-width:0; }
.home-hero__content { position:relative; z-index:1; }
.home-hero__content h1 { max-width:17ch; font-size:clamp(2.25rem,6.5vw,4.75rem); font-weight:800; letter-spacing:-.04em; line-height:1.02; text-wrap:balance; }
.hero-cta { margin-top:var(--sf-space-6); }
.home-hero__media { position:relative; display:block; overflow:hidden; border:1px solid rgb(255 255 255 / 18%); border-radius:clamp(1rem,3vw,1.75rem); background:var(--sf-home-dark-surface); box-shadow:var(--sf-home-shadow-stage); }
.home-hero__media::after { position:absolute; inset:0; border-radius:inherit; background:linear-gradient(135deg,rgb(124 58 237 / 12%),transparent 38%,rgb(34 211 238 / 8%)); content:""; pointer-events:none; }
.home-hero__media img { display:block; width:100%; height:auto; aspect-ratio:3 / 2; object-fit:cover; object-position:58% center; }

.home-content { min-width:0; padding-block:var(--sf-space-4) var(--sf-space-16); }
.home-content > .content-section { max-width:none; padding:clamp(1.5rem,4vw,3.5rem); border:1px solid rgb(17 24 39 / 9%); border-radius:clamp(1rem,2vw,1.5rem); background:var(--sf-home-light-surface); box-shadow:0 18px 48px rgb(2 6 23 / 14%); color:var(--sf-home-text-on-light); }
.home-content > .content-section:first-child { margin-top:clamp(2rem,5vw,4rem); }
.home-content .reading { max-width:var(--sf-reading-max); }
.home-content h2 { max-width:26ch; color:var(--sf-home-text-on-light); font-weight:800; letter-spacing:-.025em; }
.section-copy { margin-top:var(--sf-space-5); }
.home-content .prose { color:#354052; font-size:clamp(1rem,1.5vw,1.08rem); line-height:1.72; }
.supporting-section { display:grid; gap:clamp(1.5rem,4vw,3rem); }
.supporting-media { position:relative; display:block; align-self:start; overflow:hidden; border:1px solid rgb(17 24 39 / 12%); border-radius:var(--sf-radius-lg); background:var(--sf-home-secondary-background); box-shadow:0 16px 36px rgb(2 6 23 / 17%); }
.supporting-media::after { position:absolute; inset:0; border:1px solid rgb(255 255 255 / 12%); border-radius:inherit; background:linear-gradient(145deg,rgb(124 58 237 / 7%),transparent 45%,rgb(246 196 83 / 8%)); content:""; pointer-events:none; }
.supporting-media img { display:block; width:100%; height:100%; object-fit:cover; }
.supporting-media--portrait { aspect-ratio:4 / 3; }
.supporting-media--landscape { aspect-ratio:8 / 5; }

.home-topic-grid { display:grid; grid-template-columns:minmax(0,1fr); gap:var(--sf-space-4); margin-top:var(--sf-space-8); }
.home-topic-grid a { position:relative; display:block; min-width:0; min-height:11.5rem; padding:var(--sf-space-5); overflow:hidden; overflow-wrap:anywhere; border:1px solid var(--sf-home-border); border-radius:var(--sf-radius-lg); background:radial-gradient(circle at 100% 0,rgb(34 211 238 / 13%),transparent 9rem),linear-gradient(145deg,var(--sf-home-card-surface),var(--sf-home-primary-background)); box-shadow:0 12px 30px rgb(2 6 23 / 14%); color:var(--sf-home-text-on-dark); font-size:1.02rem; font-weight:750; line-height:1.35; text-decoration-color:var(--sf-home-cta-primary); text-decoration-thickness:2px; transition:border-color var(--sf-motion),box-shadow var(--sf-motion),transform var(--sf-motion); }
.home-topic-grid__media { position:absolute; top:var(--sf-space-4); right:var(--sf-space-4); display:block; width:clamp(5.5rem,10vw,7.25rem); aspect-ratio:1; overflow:hidden; border:1px solid rgb(255 255 255 / 22%); border-radius:calc(var(--sf-radius-lg) - .35rem); background:var(--sf-home-secondary-background); box-shadow:0 12px 24px rgb(2 6 23 / 26%); transform:rotate(3deg); transition:transform var(--sf-motion),box-shadow var(--sf-motion); }
.home-topic-grid__media::after { position:absolute; inset:0; border:1px solid rgb(246 196 83 / 22%); border-radius:inherit; background:linear-gradient(135deg,rgb(255 255 255 / 16%),transparent 42%,rgb(124 58 237 / 20%)); content:""; pointer-events:none; }
.home-topic-grid__media img { display:block; width:100%; height:100%; object-fit:cover; }
.home-topic-grid a span { position:relative; z-index:1; display:block; padding-top:clamp(5.75rem,11vw,7.5rem); text-shadow:0 1px 12px rgb(2 6 23 / 38%); }
.home-topic-grid a::before { position:absolute; inset:0 auto 0 0; width:3px; background:linear-gradient(var(--sf-home-accent-violet),var(--sf-home-accent-cyan)); content:""; }
.home-topic-grid a:hover { border-color:rgb(246 196 83 / 65%); box-shadow:0 16px 36px rgb(2 6 23 / 22%); color:var(--sf-home-text-on-dark); transform:translateY(-2px); }
.home-topic-grid a:hover .home-topic-grid__media { box-shadow:0 16px 30px rgb(2 6 23 / 34%); transform:rotate(0) scale(1.035); }
.home-topic-grid a:focus-visible { z-index:1; outline:3px solid var(--sf-home-cta-primary); outline-offset:3px; }
.contextual-cta { display:flex; justify-content:center; margin-top:var(--sf-space-8); padding:var(--sf-space-5); border:1px solid var(--sf-home-border); border-radius:var(--sf-radius-lg); background:var(--sf-home-secondary-background); }
.mobile-sticky-cta { display:none; }
.mobile-sticky-cta[hidden] { display:none; }
.home-direction-b .site-footer { border-top-color:var(--sf-home-border); background:var(--sf-home-primary-background); color:var(--sf-home-muted-text); }
.footer-layout { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:var(--sf-space-6); }
.footer-brand { display:flex; align-items:center; gap:var(--sf-space-3); }
.footer-brand p { margin:0; color:var(--sf-home-text-on-dark); font-weight:750; letter-spacing:.02em; }
.footer-navigation { display:flex; flex-wrap:wrap; gap:var(--sf-space-2) var(--sf-space-5); }
.footer-navigation a { color:var(--sf-home-muted-text); text-decoration-color:rgb(246 196 83 / 55%); }
.footer-navigation a:hover { color:var(--sf-home-cta-primary); }

@media (min-width:640px) { .home-topic-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }

@media (max-width:767px) {
  .home-direction-b .site-header .shell { gap:var(--sf-space-2); }
  .home-direction-b .site-identity { max-width:none; }
  .home-hero__media img { aspect-ratio:4 / 3; object-position:62% center; }
  .mobile-sticky-cta { position:fixed; z-index:8; right:var(--sf-space-3); bottom:max(12px,env(safe-area-inset-bottom)); left:var(--sf-space-3); display:block; padding:var(--sf-space-2); border:1px solid var(--sf-home-border); border-radius:var(--sf-radius-lg); background:rgb(10 16 32 / 96%); box-shadow:var(--sf-shadow-overlay); }
  .mobile-sticky-cta .home-cta { width:100%; }
  .home-topic-grid a { min-height:10.5rem; }
  .home-topic-grid__media { width:clamp(5.5rem,27vw,6.75rem); }
  .home-topic-grid a span { padding-top:clamp(5.75rem,28vw,6.9rem); }
  .footer-layout,.footer-navigation { align-items:flex-start; flex-direction:column; }
}

@media (min-width:768px) { .home-direction-b .site-identity { font-size:.88rem; } }

@media (min-width:900px) {
  .home-direction-b .site-header .shell { min-height:80px; }
  .home-direction-b .primary-navigation a { padding-inline:var(--sf-space-2); font-size:.78rem; line-height:1.25; }
  .home-hero__layout { grid-template-columns:minmax(0,5fr) minmax(0,6fr); }
  .home-hero__media { margin-right:calc((100vw - min(calc(100vw - 64px),var(--sf-container-max))) / -2); border-radius:1.75rem 0 0 1.75rem; }
  .supporting-section { grid-template-columns:minmax(0,1.15fr) minmax(17rem,.85fr); align-items:start; }
  .supporting-section--wide { grid-template-columns:minmax(0,1.05fr) minmax(20rem,.95fr); }
  .supporting-section .reading { max-width:none; }
}

@media (min-width:1100px) { .home-direction-b .primary-navigation a { font-size:.84rem; } .home-topic-grid { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media (prefers-reduced-motion:reduce) { .home-topic-grid a,.home-topic-grid__media { transition:none; } .home-topic-grid a:hover,.home-topic-grid a:hover .home-topic-grid__media { transform:none; } }
@media (max-width:374px) { .site-identity__wordmark { display:none; } .header-cta { padding-inline:var(--sf-space-2) !important; font-size:.7rem !important; } }
