
/* ALLWAYS v0.3.9 Resilient Cinematic MPA Foundation */
/* Component ownership: tokens -> base -> atmosphere -> header -> hero -> engine -> cards -> route pages -> forms -> footer -> utilities */

@view-transition { navigation: auto; }

:root{
  --navy-980:#010511;
  --navy-950:#020714;
  --navy-900:#061327;
  --navy-820:#0a1b33;
  --route-blue:#58aee0;
  --route-blue-soft:#7ecbff;
  --gold:#f0b83f;
  --gold-soft:#f4c967;
  --moonstone:#f7f3e9;
  --moonstone-dim:#dce8f5;
  --ink-soft:#b8c7da;
  --glass:rgba(6,19,39,.68);
  --glass-strong:rgba(6,19,39,.88);
  --line:rgba(244,201,103,.26);
  --blue-line:rgba(126,203,255,.22);
  --font-display:"Fraunces","Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;
  --font-ui:"Inter",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --ease:cubic-bezier(.2,.8,.2,1);
  --shadow-gold:0 0 42px rgba(240,184,63,.18);
  --shadow-blue:0 0 42px rgba(88,174,224,.16);
  --max:1180px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--navy-950);color:var(--moonstone)}
body{
  margin:0;
  min-height:100vh;
  font-family:var(--font-ui);
  background:
    radial-gradient(circle at 22% 8%, rgba(88,174,224,.18), transparent 28%),
    radial-gradient(circle at 78% 4%, rgba(240,184,63,.12), transparent 26%),
    linear-gradient(120deg, #071827 0%, #020714 54%, #0d1824 100%);
  color:var(--moonstone);
  overflow-x:hidden;
  line-height:1.5;
}
body::before{
  content:"";
  position:fixed; inset:0;
  pointer-events:none; z-index:-3;
  background:
    linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.022) 1px,transparent 1px);
  background-size:64px 64px;
  mask-image:radial-gradient(circle at center,black,transparent 78%);
}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
main{position:relative;z-index:1;}

/* ALLWAYS v0.3.9 signature light pointer */
@media(pointer:fine){
  body.has-premium-cursor,
  body.has-premium-cursor button,
  body.has-premium-cursor a,
  body.has-premium-cursor .choice-card,
  body.has-premium-cursor .nav-link,
  body.has-premium-cursor .primary-cta,
  body.has-premium-cursor .menu-button{cursor:none}
  body.has-premium-cursor input,
  body.has-premium-cursor textarea,
  body.has-premium-cursor select{cursor:text}
}
.premium-cursor{
  position:fixed;
  left:var(--cursor-x,-100px);
  top:var(--cursor-y,-100px);
  z-index:9999;
  width:24px;
  height:24px;
  border-radius:999px;
  pointer-events:none;
  opacity:0;
  transform:translate(-50%,-50%) scale(var(--cursor-scale,1));
  background:
    radial-gradient(circle,rgba(255,255,255,.98) 0 2px,rgba(240,184,63,.88) 3px 5px,rgba(240,184,63,.22) 6px 11px,transparent 14px);
  box-shadow:
    0 0 18px rgba(240,184,63,.34),
    0 0 36px rgba(88,174,224,.18);
  mix-blend-mode:screen;
  transition:opacity .16s ease,transform .12s ease;
}
.premium-cursor::after{
  content:"";
  position:absolute;
  left:12px;
  top:50%;
  width:38px;
  height:1px;
  transform:translateY(-50%) rotate(-17deg);
  transform-origin:left center;
  background:linear-gradient(90deg,rgba(247,243,233,.78),rgba(88,174,224,.38),transparent);
  box-shadow:0 0 16px rgba(126,203,255,.22);
  opacity:.78;
}
body.has-premium-cursor .premium-cursor{opacity:.78}
body.has-premium-cursor .premium-cursor.active{--cursor-scale:1.18;opacity:.96}


/* atmosphere */
.ambient-field{position:fixed;inset:0;z-index:-2;pointer-events:none;overflow:hidden}
.ambient-field::before,.ambient-field::after{
  content:""; position:absolute; inset:-14%;
  background:
    linear-gradient(18deg,transparent 0 43%,rgba(126,203,255,.22) 44%,transparent 45%),
    linear-gradient(156deg,transparent 0 54%,rgba(240,184,63,.16) 55%,transparent 56%);
  animation:routeDrift 16s var(--ease) infinite alternate;
  opacity:.72;
}
.ambient-field::after{transform:rotate(9deg);opacity:.38;animation-duration:23s}
.node{position:absolute;width:8px;height:8px;border-radius:50%;background:var(--route-blue-soft);box-shadow:0 0 18px rgba(126,203,255,.9)}
.n1{left:7%;top:24%;background:var(--gold);box-shadow:0 0 18px rgba(240,184,63,.9)}
.n2{right:17%;top:13%}.n3{left:38%;bottom:18%;background:var(--gold)}.n4{right:9%;bottom:22%}
.route-orbit{position:absolute;border:1px dashed rgba(126,203,255,.16);border-radius:50%;opacity:.42}
.orbit-a{width:160px;height:160px;left:2%;top:22%}.orbit-b{width:210px;height:210px;right:4%;top:25%;border-color:rgba(240,184,63,.14)}
@keyframes routeDrift{from{transform:translate3d(-20px,0,0)}to{transform:translate3d(20px,-12px,0)}}

/* header */
.site-header{
  width:min(var(--max),calc(100% - 40px));
  margin:24px auto 0;
  min-height:58px;
  display:flex;align-items:center;justify-content:space-between;gap:18px;
  position:relative;z-index:20;
}
.brand-lockup{display:flex;align-items:center;gap:10px}
.brandmark{width:48px;height:48px;object-fit:contain;filter:drop-shadow(0 0 12px rgba(240,184,63,.20))}
.wordmark{
  font-family:var(--font-display);
  font-weight:900;letter-spacing:.045em;color:#154796;
  text-shadow:0 0 1px #fff,0 0 22px rgba(88,174,224,.16);
  font-size:clamp(26px,3vw,44px);
}
.top-nav{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.nav-link,.menu-button,.ghost-cta{
  border:1px solid var(--line);
  background:rgba(2,7,20,.52);
  backdrop-filter:blur(14px);
  border-radius:999px;
  padding:12px 18px;
  color:rgba(247,243,233,.92);
  font-weight:800;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06);
  transition:transform .2s var(--ease),border-color .2s ease,box-shadow .2s ease;
}
.nav-link:hover,.menu-button:hover,.ghost-cta:hover{transform:translateY(-1px);border-color:rgba(244,201,103,.55);box-shadow:0 14px 40px rgba(0,0,0,.24),var(--shadow-gold)}
.menu-button{display:none;align-items:center;gap:8px;color:var(--moonstone)}
.menu-button img{width:24px;height:24px}
.mobile-menu{width:min(var(--max),calc(100% - 40px));margin:10px auto 0;position:relative;z-index:30}
.mobile-menu nav{display:grid;gap:8px}


/* home hero — v0.3.9 Hero Precision Hotfix 1
   Scope: hero only. Static-first, no stack-on-load, slower cinematic cycle. */
.hero-home{
  width:min(1260px,calc(100% - 40px));
  margin:10px auto 0;
  text-align:center;
  min-height:clamp(372px,43vw,535px);
  display:grid;
  grid-template-rows:auto minmax(250px,1fr) auto;
  row-gap:0;
  align-items:center;
  justify-items:center;
  position:relative;
  padding:0 0 8px;
  isolation:isolate;
  overflow:visible;
}
.hero-route-field{
  position:absolute;
  inset:-8% -2% -7%;
  z-index:-1;
  overflow:hidden;
  pointer-events:none;
  mask-image:radial-gradient(ellipse at center,black 0 60%,transparent 80%);
}
.hero-route-field::before,
.hero-route-field::after{
  content:"";
  position:absolute;
  inset:8% 5%;
  border-radius:50%;
  background:
    linear-gradient(108deg,transparent 0 45%,rgba(126,203,255,.20) 46%,transparent 47%),
    linear-gradient(72deg,transparent 0 52%,rgba(240,184,63,.17) 53%,transparent 54%),
    radial-gradient(circle at 50% 48%,rgba(88,174,224,.10),transparent 44%);
  opacity:.62;
  transform:translate3d(0,0,0);
  animation:heroFieldDrift 18s var(--ease) infinite alternate;
}
.hero-route-field::after{
  opacity:.34;
  transform:rotate(8deg) scale(1.08);
  animation-duration:28s;
  animation-direction:alternate-reverse;
}
.hero-rail{
  position:absolute;
  left:50%;
  top:50%;
  width:min(86vw,980px);
  height:1px;
  transform-origin:center;
  background:linear-gradient(90deg,transparent,rgba(126,203,255,.34),rgba(240,184,63,.34),transparent);
  box-shadow:0 0 28px rgba(88,174,224,.12);
  opacity:.38;
}
.rail-a{transform:translate(-50%,-50%) rotate(8deg)}
.rail-b{transform:translate(-50%,-50%) rotate(-11deg);opacity:.24}
.hero-node{
  position:absolute;
  z-index:-1;
  width:7px;
  height:7px;
  border-radius:999px;
  pointer-events:none;
  background:var(--gold-soft);
  box-shadow:0 0 18px rgba(240,184,63,.62),0 0 38px rgba(240,184,63,.16);
  opacity:.42;
  will-change:transform,opacity,filter;
}
.hero-node::after{
  content:"";
  position:absolute;
  inset:-11px;
  border-radius:999px;
  border:1px solid rgba(247,243,233,.08);
  box-shadow:inset 0 0 14px rgba(126,203,255,.08);
  opacity:.72;
  transform:scale(.74);
}
.hero-node.node-a{
  left:18%;
  top:36%;
  animation:heroNodeOrbitA 18s ease-in-out infinite;
}
.hero-node.node-b{
  right:16%;
  top:42%;
  background:var(--route-blue-soft);
  box-shadow:0 0 18px rgba(126,203,255,.62),0 0 38px rgba(126,203,255,.15);
  animation:heroNodeOrbitB 22s ease-in-out infinite;
}
.hero-node.node-c{
  left:49%;
  top:76%;
  width:5px;
  height:5px;
  opacity:.34;
  animation:heroNodeOrbitC 24s ease-in-out infinite;
}
.hero-kicker{
  display:inline-flex;
  gap:10px;
  align-items:center;
  justify-content:center;
  border:1px solid rgba(244,201,103,.36);
  background:linear-gradient(135deg,rgba(2,7,20,.72),rgba(8,27,48,.42));
  border-radius:999px;
  padding:8px 16px;
  color:var(--gold-soft);
  font-family:var(--font-display);
  font-weight:900;
  letter-spacing:.055em;
  line-height:1;
  text-transform:uppercase;
  box-shadow:0 12px 44px rgba(0,0,0,.24),inset 0 1px 0 rgba(255,255,255,.08);
  margin:0;
}
.kicker-dot,
.hero-kicker span{
  width:7px;height:7px;border-radius:50%;
  background:rgba(247,243,233,.88);
  box-shadow:0 0 16px rgba(247,243,233,.92),0 0 24px rgba(240,184,63,.34);
}
.hero-stage{
  width:100%;
  min-height:clamp(262px,29vw,372px);
  display:grid;
  place-items:center;
  position:relative;
  overflow:visible;
}
.hero-stage::before{
  content:"";
  position:absolute;
  inset:10% 7% 4%;
  z-index:-1;
  border-radius:45%;
  pointer-events:none;
  background:
    radial-gradient(circle at 50% 62%,rgba(247,243,233,.10),transparent 31%),
    radial-gradient(circle at 42% 52%,rgba(88,174,224,.12),transparent 34%),
    radial-gradient(circle at 58% 48%,rgba(240,184,63,.10),transparent 38%);
  filter:blur(26px);
  opacity:.48;
  animation:heroAtmosphereBreath 9s ease-in-out infinite;
}
.hero-deck{
  position:relative;
  width:100%;
  min-height:clamp(254px,28vw,362px);
  display:grid;
  place-items:center;
  overflow:visible;
  contain:layout;
}
.hero-slide{
  position:absolute;
  inset:0;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  opacity:0;
  visibility:visible;
  transform:translate3d(0,28px,0) scale(.982);
  filter:blur(18px);
  pointer-events:none;
  padding:0 max(18px,3.5vw);
  animation-name:heroMasterCycle;
  animation-duration:21s;
  animation-timing-function:var(--ease);
  animation-iteration-count:infinite;
  animation-fill-mode:both;
  animation-delay:var(--hero-delay,0s);
}
.hero-slide.is-active{pointer-events:auto}
.hero-slide::before{
  content:"";
  position:absolute;
  inset:1% 9% -1%;
  z-index:-2;
  border-radius:999px;
  background:
    radial-gradient(circle at 50% 48%,var(--glow),transparent 57%),
    radial-gradient(circle at 48% 76%,rgba(240,184,63,.10),transparent 43%);
  filter:blur(20px);
  opacity:.0;
  transform:translateZ(0) scale(.94);
  animation:heroGlowBreath 21s ease-in-out infinite both;
  animation-delay:var(--hero-delay,0s);
}
.hero-slide::after{
  content:"";
  position:absolute;
  inset:12% 7% 8%;
  z-index:-1;
  pointer-events:none;
  background:
    radial-gradient(ellipse at 42% 56%,rgba(247,243,233,.18),transparent 34%),
    radial-gradient(ellipse at 58% 48%,rgba(126,203,255,.14),transparent 38%),
    radial-gradient(ellipse at 50% 64%,rgba(240,184,63,.10),transparent 46%);
  filter:blur(28px);
  opacity:0;
  mix-blend-mode:screen;
  transform:translate3d(-22px,18px,0) scale(.96);
  animation:heroSmokeReveal 21s var(--ease) infinite both;
  animation-delay:var(--hero-delay,0s);
}
.hero-get{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin:0 0 2px;
  padding:7px 14px 6px;
  border:1px solid rgba(244,201,103,.34);
  border-radius:999px;
  background:rgba(2,7,20,.48);
  color:var(--gold-soft);
  font-family:var(--font-display);
  font-weight:950;
  font-size:clamp(17px,1.9vw,29px);
  letter-spacing:.16em;
  line-height:1;
  text-transform:uppercase;
  box-shadow:0 14px 40px rgba(0,0,0,.22),0 0 20px rgba(240,184,63,.10);
  opacity:.96;
}
.hero-statement{
  position:relative;
  display:inline-block;
  margin:0;
  padding:0 .10em .11em .06em;
  max-width:100%;
  font-family:var(--font-display);
  font-size:clamp(68px,10.9vw,158px);
  line-height:.92;
  font-weight:950;
  letter-spacing:-.058em;
  text-transform:uppercase;
  white-space:nowrap;
  font-optical-sizing:auto;
  font-variation-settings:"opsz" 144,"wght" 950,"SOFT" 18,"WONK" 1;
  color:transparent;
  background:
    linear-gradient(180deg,#fffdf3 0%,#f7f3e9 37%,#dbeefa 73%,#90c5ea 100%);
  -webkit-background-clip:text;
  background-clip:text;
  text-shadow:0 34px 90px rgba(0,0,0,.68),0 0 38px rgba(88,174,224,.14);
  transform:translateZ(0);
  overflow:visible;
}
.hero-statement-long{
  font-size:clamp(47px,7.95vw,118px);
  letter-spacing:-.048em;
  padding-inline:.08em .12em;
}
.hero-statement::before{
  content:attr(data-text);
  position:absolute;
  inset:0 .06em .08em 0;
  z-index:-1;
  color:transparent;
  -webkit-text-stroke:1px rgba(244,201,103,.19);
  text-shadow:0 0 38px var(--glow);
  transform:translate3d(.018em,.025em,0);
  opacity:.70;
  pointer-events:none;
}
.hero-statement span{
  position:relative;
  display:inline-block;
  padding-right:.04em;
}
.hero-statement span::after{
  content:"";
  position:absolute;
  inset:6% -6% 8%;
  background:linear-gradient(110deg,transparent 24%,rgba(255,255,255,.34) 45%,transparent 58%);
  transform:translateX(-122%) skewX(-16deg);
  mix-blend-mode:screen;
  opacity:0;
  animation:heroTypeGleam 21s var(--ease) infinite both;
  animation-delay:calc(var(--hero-delay,0s) + 1.2s);
}
.hero-route-cut{
  width:min(72%,760px);
  height:3px;
  border-radius:999px;
  margin-top:6px;
  background:linear-gradient(90deg,transparent,var(--accent),var(--gold-soft),transparent);
  box-shadow:0 0 28px var(--glow),0 0 14px rgba(240,184,63,.16);
  transform-origin:center;
  opacity:0;
  animation:heroRouteCut 21s var(--ease) infinite both;
  animation-delay:var(--hero-delay,0s);
}
.hero-slide p{
  margin:17px 0 0;
  max-width:760px;
  font-weight:850;
  color:rgba(247,243,233,.86);
  font-size:clamp(16px,1.62vw,22px);
  text-wrap:balance;
}
@keyframes heroMasterCycle{
  0%{opacity:0;visibility:visible;transform:translate3d(0,30px,0) scale(.982);filter:blur(24px)}
  6%{opacity:.72;transform:translate3d(0,12px,0) scale(.992);filter:blur(13px)}
  12%,27%{opacity:1;transform:translate3d(0,0,0) scale(1);filter:blur(0)}
  34%{opacity:0;transform:translate3d(0,-22px,0) scale(1.012);filter:blur(18px)}
  100%{opacity:0;visibility:visible;transform:translate3d(0,-22px,0) scale(1.012);filter:blur(18px)}
}
@keyframes heroSmokeReveal{
  0%{opacity:0;transform:translate3d(-26px,22px,0) scale(.94)}
  5%{opacity:.18}
  13%{opacity:.58;transform:translate3d(0,0,0) scale(1)}
  29%{opacity:.34}
  36%,100%{opacity:0;transform:translate3d(24px,-18px,0) scale(1.04)}
}
@keyframes heroGlowBreath{
  0%{transform:scale(.92);opacity:0}
  10%{opacity:.50}
  21%{transform:scale(1.04);opacity:.92}
  31%{opacity:.45}
  38%,100%{transform:scale(1.08);opacity:0}
}
@keyframes heroRouteCut{
  0%{opacity:0;transform:scaleX(.10)}
  9%{opacity:.34;transform:scaleX(.24)}
  15%,27%{opacity:.94;transform:scaleX(1)}
  35%,100%{opacity:0;transform:scaleX(.24)}
}
@keyframes heroTypeGleam{
  0%,12%,100%{opacity:0;transform:translateX(-122%) skewX(-16deg)}
  19%{opacity:.36}
  31%{opacity:0;transform:translateX(122%) skewX(-16deg)}
}
@keyframes heroAtmosphereBreath{0%,100%{transform:scale(.98);opacity:.34}50%{transform:scale(1.03);opacity:.62}}
@keyframes heroFieldDrift{from{transform:translate3d(-12px,2px,0) rotate(.001deg)}to{transform:translate3d(14px,-8px,0) rotate(.001deg)}}
@keyframes heroNodeOrbitA{
  0%,100%{transform:translate3d(0,0,0) scale(.74);opacity:.22;filter:blur(.2px)}
  18%{transform:translate3d(34px,-18px,0) scale(1.02);opacity:.52;filter:blur(0)}
  42%{transform:translate3d(84px,28px,0) scale(.88);opacity:.36}
  68%{transform:translate3d(28px,54px,0) scale(1.08);opacity:.48}
}
@keyframes heroNodeOrbitB{
  0%,100%{transform:translate3d(0,0,0) scale(.78);opacity:.24}
  22%{transform:translate3d(-42px,18px,0) scale(1.08);opacity:.50}
  54%{transform:translate3d(-96px,-22px,0) scale(.90);opacity:.36}
  78%{transform:translate3d(-36px,-58px,0) scale(1.02);opacity:.44}
}
@keyframes heroNodeOrbitC{
  0%,100%{transform:translate3d(-20px,0,0) scale(.70);opacity:.16}
  24%{transform:translate3d(24px,-28px,0) scale(.94);opacity:.36}
  52%{transform:translate3d(70px,2px,0) scale(.78);opacity:.22}
  76%{transform:translate3d(14px,24px,0) scale(1.02);opacity:.34}
}
.hero-home[data-hero-mode="js-fallback"] .hero-slide{
  animation:none;
  opacity:0;
  transform:translate3d(0,20px,0) scale(.986);
  filter:blur(12px);
}
.hero-home[data-hero-mode="js-fallback"] .hero-slide::before,
.hero-home[data-hero-mode="js-fallback"] .hero-slide::after,
.hero-home[data-hero-mode="js-fallback"] .hero-route-cut,
.hero-home[data-hero-mode="js-fallback"] .hero-statement span::after{
  animation:none;
}
.hero-home[data-hero-mode="js-fallback"] .hero-slide.is-active{
  opacity:1;
  transform:translate3d(0,0,0) scale(1);
  filter:blur(0);
  transition:opacity .9s var(--ease),transform .9s var(--ease),filter .9s var(--ease);
}
.allways-mantra{
  margin:0;
  font-family:var(--font-display);
  font-size:clamp(22px,3vw,42px);
  line-height:1;
  font-weight:930;
  letter-spacing:.012em;
  text-transform:uppercase;
  color:var(--moonstone);
  text-wrap:balance;
  text-shadow:0 18px 52px rgba(0,0,0,.52),0 0 22px rgba(88,174,224,.09);
}
.allways-mantra span{color:var(--gold-soft)}
.allways-mantra b{color:var(--route-blue-soft);font-weight:930}

.mantra-support{
  max-width:860px;
  margin:14px auto 0;
  color:rgba(247,243,233,.82);
  font-family:var(--font-ui);
  font-size:clamp(15px,1.55vw,20px);
  line-height:1.45;
  font-weight:720;
  letter-spacing:.005em;
  text-wrap:balance;
  text-shadow:0 12px 34px rgba(0,0,0,.42);
}
.mantra-support strong{
  color:var(--gold-soft);
  font-weight:850;
}
.hero-support{display:none!important}


/* engine */
.engine-row{
  width:min(var(--max),calc(100% - 40px));
  margin:34px auto 0;
  display:grid;grid-template-columns:repeat(3,1fr);gap:18px;
}
.engine-row article{
  border:1px solid var(--line);border-radius:22px;padding:30px;
  background:linear-gradient(145deg,rgba(4,18,38,.86),rgba(8,31,54,.6));
  text-align:center;box-shadow:0 24px 80px rgba(0,0,0,.22);
}
.engine-row h2{
  margin:0 0 12px;
  font-family:var(--font-display);
  font-size:clamp(28px,3.3vw,46px);
  letter-spacing:.018em;
  line-height:.9;
  color:var(--gold-soft);
}
.engine-row .engine-core h2{color:var(--moonstone);letter-spacing:.018em}
.engine-row p{margin:0;font-weight:850;color:rgba(247,243,233,.84)}

/* sections/cards */
.choice-section,.content-grid,.note-panel,.story-panel,.provider-banner,.form-shell,.schedule-shell,.center-cta,.content-card{
  width:min(var(--max),calc(100% - 40px));margin:54px auto 0;
}
.section-title,.route-hero h1,.story-copy h2,.provider-banner h2,.content-card h2,.schedule-context h2{
  font-family:var(--font-display);
  font-weight:930;
  letter-spacing:-.038em;
  line-height:.9;
}
.section-title{font-size:clamp(42px,6vw,82px);text-align:center;margin:0}
.section-sub{max-width:840px;margin:14px auto 0;text-align:center;color:rgba(247,243,233,.78);font-weight:720;font-size:18px}
.choice-grid{margin-top:28px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.intent-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.choice-card,.content-card{
  position:relative;overflow:hidden;
  min-height:190px;
  border:1px solid rgba(126,203,255,.18);
  border-radius:24px;
  background:linear-gradient(145deg,rgba(3,15,33,.84),rgba(7,30,55,.54));
  padding:32px;
  transition:transform .24s var(--ease),border-color .24s ease,box-shadow .24s ease;
}
.choice-card::before{
  content:"";position:absolute;left:32px;bottom:28px;width:76px;height:1px;
  background:linear-gradient(90deg,var(--gold),transparent);opacity:.42;
}
.choice-card:hover,.choice-card.is-activating,.content-card:hover{
  transform:translateY(-4px);
  border-color:rgba(244,201,103,.55);
  box-shadow:0 28px 90px rgba(0,0,0,.34),0 0 34px rgba(240,184,63,.12);
}
.choice-card h3{
  margin:0 0 10px;
  font-family:var(--font-display);
  font-weight:920;
  font-size:clamp(34px,4vw,54px);
  line-height:.88;
  letter-spacing:-.006em;
}
.choice-card p{margin:0;color:rgba(247,243,233,.78);font-weight:760;font-size:18px}
.card-route{position:absolute;right:24px;bottom:22px;color:var(--gold-soft);font-size:12px;letter-spacing:.12em;text-transform:uppercase;font-weight:850;opacity:.72;transform:translateX(0);transition:.22s var(--ease)}
.choice-card:hover .card-route,.choice-card.is-activating .card-route{opacity:1;transform:translateX(0)}
.primary-cta{
  display:inline-flex;align-items:center;gap:10px;position:relative;overflow:hidden;isolation:isolate;
  border:1px solid rgba(255,255,255,.24);border-radius:999px;padding:16px 28px;
  font-family:var(--font-display);font-weight:900;letter-spacing:.025em;text-transform:uppercase;color:#061327;
  background:radial-gradient(circle at 25% 18%,rgba(255,255,255,.78),transparent 18%),linear-gradient(135deg,#f8dd95,#f0b83f 42%,#c77c1f);
  box-shadow:0 18px 58px rgba(240,184,63,.24),inset 0 1px 0 rgba(255,255,255,.5);
  transition:transform .22s var(--ease),box-shadow .22s ease;
}
.primary-cta::before{
  content:"";position:absolute;inset:-50% -70%;z-index:-1;background:linear-gradient(110deg,transparent 36%,rgba(255,255,255,.58) 50%,transparent 64%);
  transform:translateX(-48%) rotate(8deg);opacity:0;transition:.7s var(--ease);
}
.primary-cta:hover{transform:translateY(-2px);box-shadow:0 28px 78px rgba(240,184,63,.3)}
.primary-cta:hover::before{opacity:.85;transform:translateX(44%) rotate(8deg)}
.primary-cta::after{content:"";width:5px;height:5px;border-radius:50%;background:#fff8d8;box-shadow:0 0 12px rgba(255,248,216,.95),-16px 0 0 rgba(255,248,216,.24),-31px 0 0 rgba(126,203,255,.18)}

/* story/provider panels */
.story-panel{
  display:grid;grid-template-columns:.9fr 1.1fr;gap:46px;align-items:center;
}
.story-orb{
  width:min(420px,70vw);aspect-ratio:1;border-radius:50%;display:grid;place-items:center;
  background:radial-gradient(circle at 45% 40%,rgba(247,243,233,.72),rgba(240,184,63,.28) 18%,rgba(88,174,224,.16) 42%,transparent 68%);
  border:1px solid rgba(244,201,103,.16);
  margin:auto;
}
.story-orb img{width:35%;filter:drop-shadow(0 0 20px rgba(240,184,63,.4))}
.story-copy,.provider-banner,.note-panel,.form-shell,.schedule-shell,.content-card{
  border:1px solid var(--line);border-radius:28px;background:linear-gradient(145deg,rgba(6,19,39,.78),rgba(13,33,52,.58));padding:42px;box-shadow:0 24px 90px rgba(0,0,0,.24)
}
.eyebrow{display:block;color:var(--gold-soft);font-size:12px;letter-spacing:.22em;text-transform:uppercase;font-weight:900;margin-bottom:14px}
.story-copy h2,.provider-banner h2{font-size:clamp(46px,6vw,86px);margin:0 0 18px}
.story-copy p,.provider-banner p,.content-card p,.route-hero p{color:rgba(247,243,233,.78);font-size:20px;font-weight:740}
.provider-banner{position:relative}
.provider-banner .primary-cta{position:absolute;right:42px;top:50%;transform:translateY(-50%)}
.provider-banner .primary-cta:hover{transform:translateY(calc(-50% - 2px))}

/* route pages */
.route-hero{
  width:min(var(--max),calc(100% - 40px));
  margin:82px auto 0;
  text-align:left;
  padding:46px;
  border-radius:32px;
  border:1px solid rgba(244,201,103,.20);
  background:linear-gradient(145deg,rgba(4,18,38,.72),rgba(9,28,49,.42));
  box-shadow:0 30px 120px rgba(0,0,0,.28);
}
.route-hero h1{font-size:clamp(54px,8vw,112px);margin:0 0 14px;max-width:980px}
.context-summary{
  margin-top:24px;border:1px solid rgba(126,203,255,.25);border-radius:18px;padding:16px 18px;background:rgba(2,7,20,.42);color:var(--moonstone-dim);font-weight:800;
}
.content-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.center-cta{display:flex;gap:12px;justify-content:center;align-items:center;flex-wrap:wrap}
.legal-copy{max-width:900px}

/* forms/schedule */
.form-shell{max-width:860px}
form{display:grid;gap:18px}
label{display:grid;gap:8px;color:var(--moonstone);font-weight:850}
input,textarea{
  width:100%;border-radius:16px;border:1px solid rgba(126,203,255,.2);background:rgba(2,7,20,.56);
  color:var(--moonstone);padding:15px 16px;font:inherit;outline:none;
}
input:focus,textarea:focus{border-color:rgba(244,201,103,.55);box-shadow:0 0 0 4px rgba(240,184,63,.08)}
.schedule-shell{display:grid;grid-template-columns:.9fr 1.1fr;gap:26px}
.schedule-options{display:grid;gap:10px}
.schedule-options label{display:flex;align-items:center;gap:10px;font-weight:760}
.context-chips{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
.context-chips span{border:1px solid rgba(126,203,255,.25);border-radius:999px;padding:8px 11px;color:var(--moonstone-dim);background:rgba(2,7,20,.36);font-size:13px;font-weight:780}

/* footer/tools */
.site-footer{width:min(var(--max),calc(100% - 40px));margin:64px auto 26px;color:rgba(247,243,233,.62);font-size:14px}
.footer-line{display:flex;gap:16px;flex-wrap:wrap;align-items:center;justify-content:center}
.footer-line a{color:rgba(247,243,233,.72)}
.chat-launcher{
  position:fixed;right:22px;bottom:22px;z-index:50;display:flex;align-items:center;gap:10px;
  border:1px solid var(--line);border-radius:999px;background:rgba(2,7,20,.78);padding:10px 16px;backdrop-filter:blur(14px);
  box-shadow:0 16px 48px rgba(0,0,0,.32);
}
.chat-launcher span{display:grid;line-height:1.05}.chat-launcher strong{font-family:var(--font-display);font-size:20px;letter-spacing:.02em}.chat-launcher em{font-style:normal;font-size:12px;color:rgba(247,243,233,.72);text-align:right}
.back-top{position:fixed;right:22px;bottom:90px;width:46px;height:46px;border-radius:50%;border:1px solid var(--line);display:grid;place-items:center;background:rgba(2,7,20,.62);font-weight:900}

/* route transitions and debug */
body.route-activating::after{content:"";position:fixed;inset:0;background:radial-gradient(circle at center,rgba(240,184,63,.10),transparent 52%);z-index:999;pointer-events:none;animation:routeFlash .34s var(--ease) both}
@keyframes routeFlash{from{opacity:0}45%{opacity:1}to{opacity:0}}
.debug-panel{position:fixed;left:16px;bottom:16px;z-index:100;background:rgba(2,7,20,.92);border:1px solid rgba(244,201,103,.32);border-radius:16px;padding:14px;max-width:360px;color:var(--moonstone);font:12px/1.4 var(--font-ui);box-shadow:0 18px 60px rgba(0,0,0,.45)}
.debug-panel pre{white-space:pre-wrap;margin:8px 0 0;color:#9fd6ff}

/* view transitions */
::view-transition-old(root){animation:pageOut .28s ease both}
::view-transition-new(root){animation:pageIn .44s var(--ease) both}
@keyframes pageOut{to{opacity:.2;filter:blur(8px);transform:scale(.995)}}
@keyframes pageIn{from{opacity:.2;filter:blur(10px);transform:translateY(8px)}}

/* responsive */
@media (max-width:900px){
  .top-nav{display:none}.menu-button{display:inline-flex}
  .site-header{width:min(100% - 24px,var(--max));margin-top:16px}
  .hero-home{margin-top:8px;min-height:402px;width:calc(100% - 24px)}
  .engine-row,.choice-grid,.intent-grid,.story-panel,.content-grid,.schedule-shell{grid-template-columns:1fr}
  .choice-section,.content-grid,.note-panel,.story-panel,.provider-banner,.form-shell,.schedule-shell,.center-cta,.content-card,.route-hero{width:calc(100% - 24px)}
  .provider-banner .primary-cta{position:relative;right:auto;top:auto;transform:none;margin-top:16px}
  .provider-banner .primary-cta:hover{transform:translateY(-2px)}
  .hero-statement{font-size:clamp(58px,16vw,102px)}
  .hero-statement-long{font-size:clamp(48px,12.5vw,82px)}
}
@media (max-width:560px){
  .wordmark{font-size:28px}.brandmark{width:42px;height:42px}
  .hero-home{min-height:382px}
  .hero-stage{min-height:236px}
  .hero-deck{min-height:230px}
  .hero-statement{font-size:clamp(54px,15.8vw,92px);letter-spacing:-.047em;line-height:.94}
  .hero-statement-long{font-size:clamp(41px,11.6vw,66px);letter-spacing:-.038em}
  .hero-slide p{font-size:15px;margin-top:13px}
  .allways-mantra{font-size:clamp(19px,7vw,30px)}
  .allways-mantra{font-size:clamp(19px,6vw,28px)}
  .hero-support{font-size:17px}
  .engine-row article,.choice-card,.story-copy,.provider-banner,.note-panel,.form-shell,.schedule-shell,.content-card,.route-hero{padding:24px}
  .chat-launcher{right:12px;bottom:12px}
  .back-top{right:12px;bottom:78px}
}
@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
  .hero-slide{position:relative;display:none;opacity:1;filter:none;transform:none;animation:none}
  .hero-slide:first-child{display:flex}
  .hero-route-field,.hero-statement span::after{display:none}
}


@media (max-width:680px){
  .mantra-support{font-size:14px;line-height:1.4;margin-top:10px;max-width:92vw}
}


/* ALLWAYS v0.3.9 Customer Industry Flow + Schedule Routing */
.industry-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
.insurance-flow,
.continue-panel,
.schedule-choice-panel{
  width:min(var(--max),calc(100% - 40px));
  margin:34px auto 0;
  border:1px solid var(--line);
  border-radius:28px;
  background:linear-gradient(145deg,rgba(6,19,39,.76),rgba(4,13,28,.54));
  box-shadow:0 28px 90px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.06);
  padding:clamp(24px,4vw,42px);
  backdrop-filter:blur(18px);
}
.insurance-flow .section-title,
.continue-panel .section-title{margin-top:0}
.flow-note{
  margin:10px 0 22px;
  max-width:840px;
  color:rgba(247,243,233,.78);
  font-weight:700;
  font-size:17px;
}
.flow-note strong{color:var(--moonstone)}
.micro-trust{
  margin-top:22px;
  padding:16px 18px;
  border:1px solid rgba(126,203,255,.18);
  border-radius:18px;
  color:rgba(247,243,233,.78);
  font-weight:680;
  background:rgba(2,7,20,.28);
}
.path-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:18px;
}
.path-actions .ghost-cta{display:inline-flex;align-items:center;justify-content:center}
.schedule-choice-panel{
  display:grid;
  grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);
  gap:22px;
  align-items:start;
}
.schedule-choice-panel h2{
  margin:0 0 8px;
  font-family:var(--font-display);
  font-size:clamp(34px,4vw,56px);
  line-height:.98;
  letter-spacing:-.042em;
}
.cal-route-card{
  border:1px solid rgba(126,203,255,.22);
  border-radius:24px;
  padding:22px;
  background:rgba(2,7,20,.32);
}
.cal-route-card strong{
  display:block;
  color:var(--gold-soft);
  text-transform:uppercase;
  letter-spacing:.09em;
  font-weight:900;
  font-size:13px;
  margin-bottom:10px;
}
.schedule-next-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin-top:16px;
}
.schedule-next-grid a{
  border:1px solid rgba(244,201,103,.25);
  border-radius:18px;
  padding:16px;
  background:rgba(6,19,39,.62);
  font-weight:850;
  transition:transform .2s var(--ease),border-color .2s ease,box-shadow .2s ease;
}
.schedule-next-grid a:hover,
.schedule-next-grid a:focus-visible{
  transform:translateY(-2px);
  border-color:rgba(244,201,103,.58);
  box-shadow:0 20px 50px rgba(0,0,0,.28),0 0 26px rgba(240,184,63,.11);
}
@media(max-width:900px){
  .industry-grid{grid-template-columns:1fr 1fr;}
  .schedule-choice-panel{grid-template-columns:1fr;}
  .schedule-next-grid{grid-template-columns:1fr;}
}
@media(max-width:620px){
  .industry-grid{grid-template-columns:1fr;}
}

