/* Shared editorial system for the homepage, through the expert statement. */
.hero,.numbered-sections{
  --home-mint:#8fe0d2;
  --home-copy:#c7d5e6;
  --home-rule:rgba(169,196,225,.24);
  --home-gap:clamp(32px,5vw,72px);
}
.hero-content{width:calc(100% - 14vw);max-width:1180px;margin-inline:auto;}
.hero h1{font-weight:500;letter-spacing:-.035em;line-height:1.12;}
.hero .lede{color:var(--home-copy);line-height:1.8;font-size:17px;}
.hero .btn-primary{background:var(--home-mint);border-color:var(--home-mint);color:#0b2235;box-shadow:none;}
.numbered-bg::after{background:linear-gradient(90deg,rgba(3,12,28,.94),rgba(5,18,42,.84));}
.numbered-sections > section{
  padding:44px 7vw;
  content-visibility:visible;
  contain-intrinsic-size:none;
  scroll-margin-top:90px;
}
.numbered-sections > section::before{background:rgba(5,18,36,.24);}
.numbered-sections > .framework-section::before,.numbered-sections > .continuity-section::before{background:rgba(5,18,36,.24);}
.numbered-sections > section > .section-inner{max-width:1180px;margin-inline:auto;}
.numbered-sections > section + section > .section-inner{border-top:1px solid var(--home-rule);padding-top:28px;}
.numbered-sections .open-line{display:none;}
.numbered-sections .section-kicker{margin:0 0 28px;color:var(--home-mint);font:11px/1.6 ui-monospace,Menlo,monospace;letter-spacing:.1em;text-transform:uppercase;}
.numbered-sections h2{
  font-size:clamp(30px,3.4vw,44px);font-weight:500;line-height:1.16;
  letter-spacing:-.03em;text-shadow:none;margin:0;max-width:19ch;text-wrap:balance;
}
.numbered-sections h3{text-shadow:none;font-weight:500;letter-spacing:-.015em;}
.numbered-sections .intro-lead,.numbered-sections .open-grid,.numbered-sections .manifesto-grid,.numbered-sections .continuity-layout{
  display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:var(--home-gap);align-items:start;
}
.numbered-sections .open-desc,.numbered-sections .manifesto-body{max-width:none;padding-top:0;}
.numbered-sections .open-desc p,.numbered-sections .manifesto-body p,.numbered-sections .framework-intro-top > p,.numbered-sections .continuity-lead{
  font-size:16px;line-height:1.8;color:var(--home-copy);text-shadow:none;max-width:60ch;margin:0;
}
.numbered-sections .principle-row{margin-top:32px;gap:22px;}
.numbered-sections .principle{
  min-height:0;
  padding:32px 30px;
  background:linear-gradient(165deg,rgba(24,54,88,.6) 0%,rgba(6,16,32,.78) 100%);
  border:1px solid rgba(169,196,225,.14);
  box-shadow:0 26px 54px -30px rgba(2,8,20,.85);
  transition:transform .5s cubic-bezier(.22,1,.36,1),box-shadow .5s ease,border-color .5s ease,background .5s ease;
}
.numbered-sections .principle:hover{
  transform:translateY(-6px);
  border-color:rgba(143,224,210,.5);
  background:linear-gradient(165deg,rgba(32,70,110,.72) 0%,rgba(8,22,42,.85) 100%);
  box-shadow:0 34px 70px -28px rgba(2,8,20,.9),0 0 0 1px rgba(143,224,210,.18);
}
.numbered-sections .principle h3{font-size:20px;margin-top:0;margin-bottom:12px;}
.numbered-sections .principle p,.numbered-sections .framework-step p,.numbered-sections .continuity-copy p{color:var(--home-copy);font-size:14px;line-height:1.75;}
.numbered-sections .stat-row-plain{margin-top:40px;border-top:1px solid var(--home-rule);padding-top:28px;}
.numbered-sections .stat .num{font-size:clamp(40px,4.5vw,60px);font-weight:500;letter-spacing:-.04em;color:var(--home-mint);}
.numbered-sections .stat .label{color:var(--home-copy);font-size:13px;line-height:1.7;}
.numbered-sections .services-head{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:var(--home-gap);align-items:start;margin-bottom:40px;}
.numbered-sections .services-head-note{display:block;max-width:60ch;color:var(--home-copy);font-size:16px;line-height:1.8;}
.numbered-sections .service-console{min-height:0;border-color:var(--home-rule);}
.numbered-sections .service-title{font-size:clamp(26px,2.7vw,36px);margin-top:0;color:var(--home-mint);}
.numbered-sections .service-description{color:var(--home-copy);font-size:15px;line-height:1.8;}
.numbered-sections .service-tab[aria-selected="true"]{color:var(--home-mint);}
.numbered-sections .service-tab::after{background:var(--home-mint);}
.numbered-sections .service-copy{will-change:transform,opacity;}
.numbered-sections .service-copy.is-sliding{animation:serviceCopyIn .6s cubic-bezier(.16,1,.3,1);}
@keyframes serviceCopyIn{from{opacity:0;transform:translateX(90px);}to{opacity:1;transform:translateX(0);}}
@media(prefers-reduced-motion:reduce){.numbered-sections .service-copy.is-sliding{animation:none;}}
.numbered-sections .framework-intro-top{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:24px var(--home-gap);max-width:none;align-items:start;}
.numbered-sections .framework-rail{grid-column:1/-1;margin-top:4px;padding-top:22px;border-color:var(--home-rule);}
.numbered-sections .framework-scroll{gap:var(--home-gap);margin-top:36px;}
.numbered-sections .framework-step h3,.numbered-sections .continuity-copy h3{font-size:20px;}
.numbered-sections .framework-step .n{display:none;}
.numbered-sections .continuity-lead{margin-top:24px;max-width:42ch;}
.numbered-sections .continuity-copy .continuity-promise{color:var(--home-mint);font-size:15px;}
.numbered-sections .manifesto{margin:0;}
.numbered-sections .manifesto-body{gap:20px;}
.numbered-sections .manifesto-sign{margin:28px 0 0;text-align:right;color:var(--home-mint);font-size:11px;}
.numbered-sections .scroll-float{transform:translateY(24px);transition:opacity .7s ease,transform .7s cubic-bezier(.22,1,.36,1);}
.numbered-sections .scroll-float.is-visible{transform:none;}
@media(max-width:820px){
  .numbered-sections > section{padding:32px 7vw;}
  .numbered-sections > section + section > .section-inner{padding-top:22px;}
  .numbered-sections .section-kicker{margin-bottom:22px;font-size:10px;}
  .numbered-sections .intro-lead,.numbered-sections .open-grid,.numbered-sections .manifesto-grid,.numbered-sections .continuity-layout,.numbered-sections .services-head,.numbered-sections .framework-intro-top{grid-template-columns:minmax(0,1fr);gap:24px;}
  .numbered-sections h2{max-width:22ch;overflow-wrap:anywhere;}
  .numbered-sections .principle-row{margin-top:24px;gap:16px;}
  .numbered-sections .principle,.numbered-sections .principle + .principle{padding:22px 20px;}
  .numbered-sections .services-head{margin-bottom:28px;}
  .numbered-sections .framework-scroll{gap:28px;}
  .numbered-sections .manifesto-sign{text-align:left;}
  .hero .lede{font-size:16px;}
  .numbered-sections .service-copy.is-sliding{animation-name:serviceCopyInMobile;}
}
@keyframes serviceCopyInMobile{from{opacity:0;transform:translateX(28px);}to{opacity:1;transform:translateX(0);}}
@media(prefers-reduced-motion:reduce){.numbered-sections .scroll-float{transform:none;transition:none;}}
