/* Real typography and a single text-free render keep motion away from content. */
:focus-visible{outline:2px solid var(--orange);outline-offset:6px}
html{scroll-padding-top:88px}
.social-ribbon{background:#fff;color:var(--ink);padding:44px 0 38px;overflow:hidden}
.social-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:28px}
.social-heading h2{font:500 clamp(32px,3vw,44px)/1 var(--serif);letter-spacing:-.04em;margin:10px 0 0}
.social-heading h2 span,.foundation-heading h2 span{color:var(--orange)}
.social-actions{display:flex;align-items:center;gap:26px;font-size:12px}
.social-actions>a{border-bottom:1px solid #d6d6d6;padding:8px 0}
.social-toggle{display:inline-flex;align-items:center;gap:12px;font:inherit;color:#555;border:1px solid #dedede;border-radius:99px;padding:10px 14px;background:white;cursor:pointer;white-space:nowrap}
.social-toggle:hover{color:#111;border-color:#888}
.social-viewport{overflow-x:auto;overflow-y:hidden;scrollbar-width:none;overscroll-behavior-x:contain;direction:ltr;padding:4px 0 12px}
.social-viewport::-webkit-scrollbar{display:none}
.social-track{display:flex;width:max-content}
.social-group{display:flex;gap:24px;padding-right:24px;flex:none}
.social-card{display:block;flex:none;width:clamp(276px,26vw,380px);background:#fff}
.social-card img{width:100%;height:auto;aspect-ratio:1;object-fit:contain;border:1px solid #eeece7;border-radius:3px;transition:border-color .25s ease}
.social-card:hover img{border-color:#bdb7ac}
.social-card:focus-visible{outline-offset:-3px}
.social-caption{display:flex;justify-content:space-between;gap:12px;padding:13px 3px 0;font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:#767676}
.social-caption>span:last-child{font-size:16px;line-height:12px;color:var(--orange)}
.foundations{padding:80px 0 76px;background:#07090b;color:#fff;overflow:hidden}
.foundation-heading{position:relative;z-index:1}
.foundation-heading h2{font:500 clamp(58px,6.5vw,94px)/.93 var(--serif);letter-spacing:-.052em;margin:18px 0 0}
.foundation-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.55fr) minmax(0,1fr);gap:clamp(18px,2.6vw,42px);align-items:center;margin-top:12px}
.foundation-visual{grid-column:2;grid-row:1;position:relative;isolation:isolate;width:100%;aspect-ratio:1;display:grid;place-items:center}
.foundation-visual:before{content:'';position:absolute;z-index:-1;inset:12%;background:radial-gradient(ellipse,rgba(255,105,0,.15),transparent 68%);filter:blur(18px)}
.foundation-visual:after{content:'';position:absolute;z-index:-1;bottom:0;left:20%;width:60%;height:8%;border-radius:50%;background:radial-gradient(ellipse,rgba(255,105,0,.16),transparent 70%);filter:blur(10px)}
.foundation-cube{display:block;width:100%;height:auto;animation:foundationFloat 7s ease-in-out infinite;transform-origin:center;will-change:transform}
.foundation-money{grid-column:1;grid-row:1}
.foundation-ai{grid-column:3;grid-row:1}
.foundation-theme{position:relative;z-index:1;padding-top:38px}
.foundation-kicker{font-size:10px;letter-spacing:.19em;text-transform:uppercase;color:#ff8b39;margin-bottom:20px}
.foundation-theme h3{font:500 clamp(34px,3.4vw,52px)/1.02 var(--serif);letter-spacing:-.04em;margin:0 0 22px}
.foundation-theme p{font-size:15px;line-height:1.7;color:#b5b6b8;max-width:350px;margin:0}
.foundation-theme a{display:inline-flex;gap:16px;align-items:center;margin-top:24px;font-size:13px;color:#ff9146;border-bottom:1px solid #98613a;padding-bottom:8px}
.foundation-theme a:hover{color:#ffb27c;border-color:currentColor}
@keyframes foundationFloat{0%,100%{transform:translateY(4px) rotate(-.6deg) scale(.985)}50%{transform:translateY(-12px) rotate(.6deg) scale(1.015)}}
@media(min-width:1024px) and (prefers-reduced-motion:no-preference){
  html{scroll-snap-type:y proximity}
  .hero,.foundations,.premium-signals,.thesis,.quote{scroll-snap-align:start;scroll-snap-stop:normal}
}
@media(min-width:681px) and (max-width:1020px){
  .foundation-grid{grid-template-columns:1fr 1fr;gap:32px}
  .foundation-visual{grid-row:1;grid-column:1 / -1;width:min(480px,70%);justify-self:center}
  .foundation-money{grid-row:2;grid-column:1}.foundation-ai{grid-row:2;grid-column:2}
  .foundation-theme{padding-top:0}.signals-editorial{gap:34px;grid-template-columns:1fr 1.3fr}
  .signal-row{grid-template-columns:28px minmax(0,1fr);gap:12px}.signal-row-source{grid-column:2;text-align:left}
}
@media(max-width:680px){
  html{scroll-padding-top:68px}
  .nav{background:rgba(247,244,238,.94)}.nav-inner{height:68px!important}.hero .wrap{padding-top:98px!important}
  .social-ribbon{padding:32px 0 28px}
  .social-heading{align-items:flex-start;gap:18px;flex-wrap:wrap;margin-bottom:22px}
  .social-heading h2{font-size:36px}.social-actions{width:100%;justify-content:space-between;gap:16px;font-size:11px}
  .social-card{width:78vw;max-width:360px}.social-group{gap:16px;padding-right:16px}.social-caption{font-size:9px}
  .foundations{padding:58px 0 64px}.foundation-heading .label{font-size:8px;letter-spacing:.16em}
  .foundation-heading h2{font-size:clamp(48px,13.2vw,66px);margin-top:14px}
  .foundation-grid{display:flex;flex-direction:column;gap:0;margin-top:20px;align-items:stretch}
  .foundation-visual{width:min(100%,400px);margin:0 auto 30px}
  .foundation-theme{padding:0}.foundation-kicker{font-size:9px;margin-bottom:15px}
  .foundation-theme h3{font-size:39px;margin-bottom:16px}.foundation-theme p{font-size:15px;max-width:none}
  .foundation-theme a{margin-top:20px}.foundation-money{padding-bottom:34px;border-bottom:1px solid rgba(255,255,255,.14)}.foundation-ai{padding-top:34px}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-snap-type:none;scroll-behavior:auto}
  .foundation-cube{animation:none;will-change:auto}
  .social-group[aria-hidden]{display:none}.social-toggle{display:none}
}


/* 2026-09-28 — unified editorial pass */
.social-ribbon{
  background:#fbfaf7;
  color:var(--ink);
  padding:54px 0 46px;
  overflow:hidden;
  border-top:1px solid rgba(10,12,14,.06);
  border-bottom:1px solid rgba(10,12,14,.09);
}
.social-heading{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:end;
  gap:36px;
  margin-bottom:30px;
}
.social-heading h2{
  font:500 clamp(38px,3.6vw,54px)/.96 var(--serif);
  letter-spacing:-.045em;
  margin:9px 0 10px;
}
.social-heading h2 span{color:var(--orange)}
.social-heading p{
  margin:0;
  max-width:620px;
  color:#676a70;
  font-size:14px;
  line-height:1.6;
}
.social-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:18px;
  font-size:11px;
  padding-bottom:3px;
}
.social-actions>a{
  color:#4e5156;
  border-bottom:1px solid #d3cec6;
  padding:8px 0 6px;
}
.social-toggle{
  display:inline-flex;
  align-items:center;
  gap:10px;
  font:inherit;
  color:#5b5f64;
  border:1px solid #ddd8cf;
  border-radius:99px;
  padding:9px 13px;
  background:#fff;
  cursor:pointer;
  white-space:nowrap;
}
.social-toggle:hover{color:#111;border-color:#99948b}

.social-viewport{
  overflow-x:auto;
  overflow-y:hidden;
  scrollbar-width:none;
  overscroll-behavior-x:contain;
  padding:3px 0 8px;
}
.social-viewport::-webkit-scrollbar{display:none}
.social-track{display:flex;width:max-content}
.social-group{
  display:flex;
  gap:18px;
  padding-right:18px;
  flex:none;
}
.social-card{
  display:block;
  flex:none;
  width:clamp(245px,22vw,320px);
  color:var(--ink);
  background:transparent;
}
.social-card img{
  width:100%;
  height:auto;
  aspect-ratio:1;
  object-fit:cover;
  border:1px solid #e7e2da;
  border-radius:14px;
  box-shadow:0 10px 26px rgba(15,17,20,.06);
  transition:transform .45s cubic-bezier(.2,.7,.2,1),box-shadow .45s ease,border-color .3s ease;
}
.social-card:hover img{
  transform:translateY(-4px);
  box-shadow:0 20px 40px rgba(15,17,20,.11);
  border-color:#cfc8bd;
}
.social-caption{
  display:flex;
  justify-content:space-between;
  gap:12px;
  padding:12px 2px 0;
  font-size:9px;
  letter-spacing:.13em;
  text-transform:uppercase;
  color:#8a8d91;
}
.social-caption>span:last-child{
  color:var(--orange);
  font-size:15px;
  line-height:10px;
}
.social-title{
  display:block;
  margin-top:8px;
  max-width:290px;
  font:500 21px/1.06 var(--serif);
  letter-spacing:-.025em;
  color:#17191c;
}

/* Foundations: one strong dark chapter after the white editorial ribbon. */
.foundations{
  padding:92px 0 88px;
  background:#07090b;
  color:#fff;
  overflow:hidden;
  border-top:1px solid rgba(255,255,255,.04);
}
.foundation-heading{max-width:760px}
.foundation-heading h2{
  font:500 clamp(60px,6.4vw,94px)/.92 var(--serif);
  letter-spacing:-.052em;
  margin:16px 0 0;
}
.foundation-heading h2 span{color:var(--orange)}
.foundation-grid{
  display:grid;
  grid-template-columns:minmax(0,.92fr) minmax(420px,1.45fr) minmax(0,.92fr);
  gap:clamp(24px,3vw,48px);
  align-items:center;
  margin-top:12px;
}
.foundation-visual{
  grid-column:2;
  grid-row:1;
  width:100%;
  max-width:640px;
  justify-self:center;
}
.foundation-cube{
  display:block;
  width:100%;
  height:auto;
  animation:foundationFloat 6.8s ease-in-out infinite;
  transform-origin:center;
  will-change:transform;
}
.foundation-theme{padding-top:48px}
.foundation-kicker{
  font-size:9px;
  letter-spacing:.2em;
  text-transform:uppercase;
  color:#ff8b39;
  margin-bottom:17px;
}
.foundation-theme h3{
  font:500 clamp(35px,3.2vw,50px)/.98 var(--serif);
  letter-spacing:-.042em;
  margin:0 0 18px;
}
.foundation-theme p{
  font-size:14px;
  line-height:1.68;
  color:#aaaeb3;
  max-width:330px;
  margin:0;
}
.foundation-theme a{
  display:inline-flex;
  gap:14px;
  align-items:center;
  margin-top:22px;
  font-size:12px;
  color:#ff9146;
  border-bottom:1px solid rgba(255,145,70,.42);
  padding-bottom:6px;
}

/* Keep the subsequent dark thesis as a quieter editorial interlude. */
.thesis{
  padding:104px 0!important;
  border-top:1px solid rgba(255,255,255,.08);
}
.thesis-grid{gap:72px!important}
.thesis h2{font-size:clamp(50px,5.25vw,78px)!important}
.thesis p{max-width:500px;color:rgba(255,255,255,.70)!important}

/* Lighter chapters below. */
.initiatives{padding:100px 0!important}
.initiatives h2{max-width:480px}
.initiative{margin-left:32px!important}
.quote{padding:132px 0 118px!important}

@media(min-width:1024px) and (prefers-reduced-motion:no-preference){
  html{scroll-snap-type:y proximity}
  .hero,.social-ribbon,.foundations,.thesis,.quote{
    scroll-snap-align:start;
    scroll-snap-stop:normal;
  }
}

@media(min-width:681px) and (max-width:1020px){
  .social-heading{grid-template-columns:1fr}
  .social-actions{justify-content:flex-start}
  .social-card{width:300px}
  .foundation-grid{grid-template-columns:1fr 1fr;gap:34px}
  .foundation-visual{grid-column:1/-1;grid-row:1;width:min(500px,72%)}
  .foundation-money{grid-column:1;grid-row:2}
  .foundation-ai{grid-column:2;grid-row:2}
  .foundation-theme{padding-top:0}
}

@media(max-width:680px){
  .social-ribbon{padding:36px 0 32px}
  .social-heading{
    display:block;
    margin-bottom:22px;
  }
  .social-heading h2{font-size:40px;margin:8px 0 9px}
  .social-heading p{font-size:13px;line-height:1.55}
  .social-actions{
    justify-content:space-between;
    margin-top:18px;
    gap:12px;
  }
  .social-card{
    width:72vw;
    max-width:300px;
    scroll-snap-align:center;
  }
  .social-group{gap:14px;padding-right:14px}
  .social-title{font-size:18px;line-height:1.08}
  .social-caption{font-size:8px}

  .foundations{padding:64px 0 70px}
  .foundation-heading h2{font-size:52px}
  .foundation-grid{display:flex;flex-direction:column;margin-top:20px}
  .foundation-visual{width:min(100%,380px);margin:0 auto 30px}
  .foundation-theme{padding:0}
  .foundation-theme h3{font-size:38px}
  .foundation-money{padding-bottom:34px;border-bottom:1px solid rgba(255,255,255,.13)}
  .foundation-ai{padding-top:34px}
  .thesis{padding:80px 0!important}
  .thesis h2{font-size:46px!important}
  .initiatives{padding:82px 0!important}
  .initiative{margin-left:0!important}
  .quote{padding:96px 0!important}
}


/* 2026-09-28 — clean editorial hero, no repeated cube */
.hero.hero-clean{
  position:relative;
  min-height:760px;
  background:
    radial-gradient(circle at 76% 28%,rgba(255,105,0,.06),transparent 22%),
    linear-gradient(180deg,#f8f5ef 0%,#f4f0e9 58%,#f1ede5 100%);
  overflow:hidden;
  border-bottom:1px solid rgba(10,12,14,.06);
}
.hero.hero-clean:before{
  content:'';
  position:absolute;
  inset:auto -8% -18% auto;
  width:min(760px,58vw);
  aspect-ratio:1;
  border-radius:50%;
  background:radial-gradient(circle,rgba(255,255,255,.82),rgba(255,255,255,.28) 38%,transparent 70%);
  filter:blur(12px);
  pointer-events:none;
}
.hero.hero-clean:after{
  content:'';
  position:absolute;
  left:0;right:0;bottom:0;
  height:180px;
  opacity:.34;
  background:
    linear-gradient(154deg,transparent 0 41%,rgba(135,139,145,.12) 41.2% 42.1%,transparent 42.3%),
    linear-gradient(26deg,transparent 0 57%,rgba(135,139,145,.09) 57.2% 58.1%,transparent 58.3%);
  pointer-events:none;
}
.hero-atmosphere{
  position:absolute;
  inset:0;
  pointer-events:none;
  opacity:.52;
  background:
    radial-gradient(circle at 78% 60%,rgba(255,105,0,.055),transparent 19%),
    linear-gradient(90deg,rgba(255,255,255,.22),transparent 42%);
}
.hero.hero-clean .wrap{
  position:relative;
  z-index:2;
  min-height:760px;
  display:flex;
  align-items:center;
}
.hero.hero-clean .hero-copy{
  width:min(820px,72vw);
  padding-top:80px;
}
.hero.hero-clean h1{
  font-size:clamp(78px,8.6vw,132px);
  line-height:.86;
  letter-spacing:-.062em;
  max-width:820px;
}
.hero.hero-clean .hero-sub{
  max-width:640px;
  font-size:23px;
  line-height:1.5;
  color:#3f4349;
}
.hero.hero-clean .hero-buttons{margin-top:30px}
.hero.hero-clean .hero-foot{
  margin-top:44px;
  color:#595d63;
}

@media(max-width:900px){
  .hero.hero-clean .hero-copy{width:min(680px,86vw)}
}
@media(max-width:680px){
  .hero.hero-clean{
    min-height:720px;
    background:linear-gradient(180deg,#f8f5ef 0%,#f2eee6 100%);
  }
  .hero.hero-clean .wrap{
    min-height:720px;
    padding-top:86px!important;
    align-items:center;
  }
  .hero.hero-clean .hero-copy{
    width:100%;
    padding-top:30px;
  }
  .hero.hero-clean h1{
    font-size:clamp(60px,17vw,76px);
    line-height:.88;
    max-width:100%;
  }
  .hero.hero-clean .hero-sub{
    max-width:340px;
    font-size:18px;
    line-height:1.5;
  }
  .hero.hero-clean .hero-foot{
    max-width:300px;
    margin-top:32px;
    line-height:1.5;
  }
  .hero.hero-clean:before{
    width:480px;
    right:-220px;
    bottom:-120px;
  }
}
