:root{
  --bg:#0a0f1a;
  --bg-soft:#0f1628;
  --panel:#101a2e;
  --panel-2:#16223b;
  --line:rgba(255,255,255,.08);
  --line-strong:rgba(255,255,255,.16);
  --text:#0f1728;
  --text-light:#f5f7fb;
  --muted:#6d788d;
  --muted-light:rgba(255,255,255,.72);
  --surface:#ffffff;
  --surface-2:#f6f7fb;
  --surface-3:#edf1f8;
  --blue:#5b8cff;
  --blue-2:#82b0ff;
  --violet:#8b6dff;
  --cyan:#69c9ff;
  --shadow:0 30px 80px rgba(8,14,26,.16);
  --shadow-strong:0 35px 120px rgba(0,0,0,.38);
  --radius-xl:32px;
  --radius-lg:24px;
  --radius-md:18px;
  --radius-sm:14px;
  --container:1200px;
  --ease:cubic-bezier(.2,.8,.2,1);
  --header-height:70px;
  --hero-title-size:clamp(2.35rem, 5vw, 4.6rem);
  --hero-title-line:.98;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color:var(--text);
  background:var(--surface-2);
  line-height:1.5;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
.skip-link{
  position:absolute;
  left:16px;
  top:-60px;
  background:#fff;
  color:#111827;
  padding:10px 14px;
  border-radius:999px;
  z-index:999;
  box-shadow:var(--shadow);
  transition:top .2s ease;
}
.skip-link:focus{top:16px}
.page-shell{
  position:relative;
  overflow:hidden;
  padding-top:var(--header-height);
}
.container{
  width:min(var(--container), calc(100% - 48px));
  margin:0 auto;
}
.eyebrow{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:8px 12px;
  border-radius:999px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.1);
  color:rgba(255,255,255,.88);
  backdrop-filter:blur(18px);
  font-size:.82rem;
  letter-spacing:.02em;
}
.eyebrow.light{
  color:#1a2948;
  background:rgba(91,140,255,.09);
  border-color:rgba(91,140,255,.14);
}
.eyebrow-dot{
  width:8px;height:8px;border-radius:999px;
  background:linear-gradient(135deg,var(--cyan),var(--violet));
  box-shadow:0 0 18px rgba(130,176,255,.7);
}
.hero-dark .eyebrow,
.page-hero .eyebrow{
  color:#1a2948;
  background:rgba(255,255,255,.7);
  border-color:rgba(16,26,46,.08);
  box-shadow:0 12px 26px rgba(50,87,108,.10);
}
.section.dark .eyebrow,
.showcase-panel.dark .eyebrow,
.callout .eyebrow{
  color:#fff;
  background:linear-gradient(135deg,#2d7cff,#69c9ff);
  border-color:rgba(45,124,255,.18);
  box-shadow:0 12px 26px rgba(45,124,255,.18);
}
.showcase-panel.dark .eyebrow.light{
  color:#1a2948;
  background:rgba(91,140,255,.09);
  border-color:rgba(91,140,255,.14);
  box-shadow:none;
}
.hero-dark .btn.secondary,
.page-hero .btn.secondary{
  background:rgba(255,255,255,.76);
  border-color:rgba(16,26,46,.10);
  color:#1a2948;
}
.site-header{
  position:fixed;
  top:0;
  left:0;
  right:0;
  z-index:50;
  backdrop-filter:saturate(180%) blur(16px);
  background:linear-gradient(90deg, rgba(245,251,255,.96), rgba(223,250,255,.96));
  border-bottom:1px solid rgba(29,92,120,.14);
  color:#1f2d25;
}
body.light-header .site-header{
  background:linear-gradient(90deg, rgba(245,251,255,.96), rgba(223,250,255,.96));
  border-bottom:1px solid rgba(29,92,120,.14);
  color:#1f2d25;
}
.nav{
  display:flex;
  align-items:center;
  justify-content:space-between;
  min-height:var(--header-height);
  gap:20px;
}
.brand{
  display:flex;
  align-items:center;
  gap:14px;
  min-width:0;
}
.brand-mark{
  width:42px;height:42px;border-radius:14px;
  flex:0 0 42px;
  display:grid;place-items:center;
  background:#fff;
  box-shadow:0 14px 36px rgba(91,140,255,.34);
  overflow:hidden;
}
.brand-mark img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  border-radius:14px;
}
.brand-copy{min-width:0}
.brand-title{
  font-size:.96rem;
  font-weight:800;
  letter-spacing:-.01em;
}
.brand-sub{
  font-size:.62rem;
  font-weight:800;
  letter-spacing:.16em;
  text-transform:uppercase;
  opacity:.64;
}
.nav-links{
  display:flex;
  align-items:center;
  gap:6px;
}
.nav-links a{
  padding:10px 12px;
  border-radius:999px;
  color:inherit;
  font-weight:800;
  white-space:nowrap;
  opacity:.88;
  transition:all .2s var(--ease);
}
.nav-links a:hover,
.nav-links a.is-active{
  background:rgba(111,76,180,.12);
  opacity:1;
}
body.light-header .nav-links a:hover,
body.light-header .nav-links a.is-active{
  background:rgba(111,76,180,.12);
}
.nav-actions{
  display:flex;
  align-items:center;
  gap:12px;
}
.nav .btn{
  min-height:42px;
  padding:0 16px;
}
.btn{
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-height:48px;
  padding:0 18px;
  border-radius:999px;
  font-weight:600;
  border:1px solid transparent;
  overflow:hidden;
  transform:translateY(0) scale(1);
  transition:
    transform .22s var(--ease),
    box-shadow .22s var(--ease),
    background .22s var(--ease),
    border-color .22s var(--ease),
    color .22s var(--ease);
  cursor:pointer;
  -webkit-tap-highlight-color:transparent;
}
.btn::before{
  content:"";
  position:absolute;
  inset:-1px;
  background:linear-gradient(115deg, transparent 0%, rgba(255,255,255,.42) 42%, transparent 64%);
  transform:translateX(-130%);
  transition:transform .55s var(--ease);
  pointer-events:none;
}
.btn > *{
  position:relative;
  z-index:1;
}
.btn:hover{
  transform:translateY(-3px) scale(1.015);
}
.btn:hover::before{
  transform:translateX(130%);
}
.btn:active{
  transform:translateY(1px) scale(.98);
  box-shadow:0 8px 18px rgba(50,87,108,.16);
}
.btn:focus-visible{
  outline:3px solid rgba(105,201,255,.55);
  outline-offset:3px;
}
.btn.primary{
  color:white;
  background:linear-gradient(135deg,var(--blue),var(--violet));
  box-shadow:0 14px 40px rgba(91,140,255,.32);
}
.btn.primary:hover{
  box-shadow:0 20px 46px rgba(91,140,255,.42);
}
.btn.secondary{
  color:inherit;
  background:rgba(255,255,255,.06);
  border-color:rgba(255,255,255,.08);
}
.btn.secondary:hover{
  background:rgba(255,255,255,.82);
  border-color:rgba(91,140,255,.18);
  box-shadow:0 18px 36px rgba(50,87,108,.14);
}
body.light-header .btn.secondary{
  background:rgba(16,26,46,.04);
  border-color:rgba(16,26,46,.08);
}
body.light-header .btn.secondary:hover{
  background:rgba(255,255,255,.9);
  border-color:rgba(91,140,255,.18);
  box-shadow:0 18px 36px rgba(50,87,108,.14);
}
.btn.ghost{
  background:transparent;
  border-color:rgba(16,26,46,.1);
  color:#243352;
}
.btn.ghost:hover{
  background:rgba(91,140,255,.08);
  border-color:rgba(91,140,255,.18);
  box-shadow:0 14px 30px rgba(50,87,108,.12);
}
.mobile-toggle{
  display:none;
  width:48px;height:48px;
  border-radius:14px;
  border:1px solid rgba(111,76,180,.16);
  background:rgba(255,255,255,.54);
  color:inherit;
  cursor:pointer;
  transform:translateY(0) scale(1);
  transition:
    transform .22s var(--ease),
    box-shadow .22s var(--ease),
    background .22s var(--ease),
    border-color .22s var(--ease);
  -webkit-tap-highlight-color:transparent;
}
.mobile-toggle:hover{
  transform:translateY(-2px) scale(1.03);
  background:rgba(255,255,255,.9);
  border-color:rgba(91,140,255,.2);
  box-shadow:0 14px 30px rgba(50,87,108,.14);
}
.mobile-toggle:active{
  transform:translateY(1px) scale(.96);
  box-shadow:0 8px 18px rgba(50,87,108,.12);
}
.mobile-toggle:focus-visible{
  outline:3px solid rgba(105,201,255,.55);
  outline-offset:3px;
}
body.light-header .mobile-toggle{
  background:rgba(16,26,46,.04);
  border-color:rgba(16,26,46,.08);
}
.mobile-panel{
  display:none;
  padding:0 0 18px;
}
.mobile-panel .panel{
  padding:16px;
  border-radius:22px;
  background:rgba(245,251,255,.96);
  border:1px solid rgba(29,92,120,.14);
}
body.light-header .mobile-panel .panel{
  background:#fff;
  border-color:rgba(16,26,46,.08);
  box-shadow:var(--shadow);
}
.mobile-panel a{
  display:block;
  padding:14px 8px;
  border-bottom:1px solid rgba(29,92,120,.12);
  font-weight:800;
}
body.light-header .mobile-panel a{
  border-bottom-color:rgba(16,26,46,.08);
}
.mobile-panel a:last-child{border-bottom:none}
.hero-dark{
  position:relative;
  color:var(--text);
  background:
    linear-gradient(135deg, rgba(255,255,255,.88), rgba(255,255,255,.46)),
    linear-gradient(120deg,#f5fbff 0%, #e8f8ff 48%, #dffaff 100%);
  border-bottom:1px solid rgba(29,92,120,.12);
}
.hero-dark::before,
.hero-dark::after{
  display:none;
}
.hero-grid{
  display:grid;
  grid-template-columns: 1.02fr .98fr;
  gap:48px;
  align-items:center;
  padding:96px 0 70px;
}
.home-hero .hero-grid{
  grid-template-columns:.92fr 1.08fr;
  padding:42px 0 66px;
}
.home-hero .hero-copy{
  position:relative;
  z-index:1;
}
.home-hero .hero-copy h1{
  margin-top:0;
}
.hero-copy h1{
  margin:18px 0 18px;
  font-size:var(--hero-title-size);
  line-height:var(--hero-title-line);
  letter-spacing:-.05em;
}
.page-hero h1{
  margin:0;
  font-size:var(--hero-title-size);
  line-height:var(--hero-title-line);
  letter-spacing:-.05em;
}
.hero-copy p,
.page-hero p{
  margin:0;
  max-width:62ch;
  font-size:1.08rem;
  color:#42516c;
}
.hero-actions{
  display:flex;
  flex-wrap:wrap;
  gap:14px;
  margin:28px 0 26px;
}
.hero-meta{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:14px;
}
.reward-loop{
  position:relative;
  gap:16px;
  margin-top:4px;
}
.reward-loop::before{
  content:"";
  position:absolute;
  left:12%;
  right:12%;
  top:31px;
  height:4px;
  border-radius:999px;
  background:linear-gradient(90deg,#5b8cff,#69c9ff,#25bca5,#5b8cff);
  background-size:220% 100%;
  opacity:.72;
  animation:rewardFlow 6s linear infinite;
}
.metric{
  padding:18px 18px;
  border-radius:8px;
  background:rgba(255,255,255,.78);
  border:1px solid rgba(16,26,46,.08);
  box-shadow:0 18px 38px rgba(50,87,108,.12);
}
.metric strong{
  display:block;
  font-size:1.2rem;
  margin-bottom:6px;
}
.metric span{color:#5b6880;font-size:.94rem}
.reward-card{
  position:relative;
  overflow:hidden;
  min-height:158px;
  padding:16px;
  display:grid;
  align-content:start;
  gap:9px;
  background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(236,250,255,.9));
  border-color:rgba(91,140,255,.14);
  box-shadow:0 18px 44px rgba(50,87,108,.16);
  isolation:isolate;
  animation:rewardLift 7s ease-in-out infinite;
}
.reward-card:nth-child(2){animation-delay:.35s}
.reward-card:nth-child(3){animation-delay:.7s}
.reward-card:nth-child(4){animation-delay:1.05s}
.reward-card:nth-child(5){animation-delay:1.4s}
.reward-card::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  background:linear-gradient(115deg,transparent 0%,rgba(255,255,255,.7) 42%,transparent 62%);
  transform:translateX(-120%);
  animation:rewardShine 7s ease-in-out infinite;
  pointer-events:none;
}
.reward-card:nth-child(2)::after{animation-delay:.45s}
.reward-card:nth-child(3)::after{animation-delay:.9s}
.reward-card:nth-child(4)::after{animation-delay:1.25s}
.reward-card:nth-child(5)::after{animation-delay:1.7s}
.reward-card > *{
  position:relative;
  z-index:1;
}
.reward-card .reward-step-label{
  color:#6b7890;
  font-size:.72rem;
  font-weight:900;
  letter-spacing:.12em;
}
.reward-card .reward-icon{
  width:52px;
  height:52px;
  display:grid;
  place-items:center;
  border-radius:8px;
  color:#fff;
  font-size:1rem;
  font-weight:900;
  box-shadow:0 14px 30px rgba(50,87,108,.16);
}
.learn-card .reward-icon{background:linear-gradient(135deg,#4e7dff,#6fd4ff)}
.earn-card .reward-icon{background:linear-gradient(135deg,#1d9fd5,#65ddeb)}
.lock-card .reward-icon{background:linear-gradient(135deg,#20a98f,#77dfcf)}
.reward-card strong{
  margin:3px 0 0;
  font-size:1.18rem;
}
.reward-card .reward-copy{
  color:#53617a;
  font-size:.9rem;
  line-height:1.35;
}
.closed-core-loop{
  grid-template-columns:repeat(3, minmax(0, 1fr));
  grid-template-areas:
    "learn earn unlock"
    ". lock play";
  column-gap:14px;
  row-gap:14px;
  margin-top:10px;
}
.closed-core-loop::before{
  display:none;
}
.closed-core-loop .reward-card{
  min-height:146px;
  overflow:visible;
  z-index:1;
}
.closed-core-loop .reward-card::after{
  display:none;
}
.closed-core-loop .loop-learn-card{grid-area:learn;z-index:7}
.closed-core-loop .loop-earn-card{grid-area:earn;z-index:6}
.closed-core-loop .loop-unlock-card{grid-area:unlock;z-index:5}
.closed-core-loop .loop-play-card{grid-area:play;z-index:4}
.closed-core-loop .loop-lock-again-card{grid-area:lock;z-index:3}
.closed-core-loop .reward-card .loop-icon{
  margin-top:1px;
}
.closed-core-loop .reward-card::before{
  position:absolute;
  z-index:4;
  width:auto;
  height:auto;
  display:block;
  border-radius:0;
  background:transparent;
  border:0;
  color:#17a86f;
  font-size:1.85rem;
  font-weight:900;
  line-height:1;
  text-shadow:0 10px 20px rgba(23,168,111,.22);
  box-shadow:none;
  pointer-events:none;
}
.closed-core-loop .loop-learn-card::before,
.closed-core-loop .loop-earn-card::before{
  content:"\2192";
  right:-20px;
  top:38px;
}
.closed-core-loop .loop-unlock-card::before{
  content:"\2193";
  left:50%;
  bottom:-26px;
  transform:translateX(-50%);
}
.closed-core-loop .loop-play-card::before{
  content:"\2190";
  left:-20px;
  top:38px;
}
.closed-core-loop .loop-lock-again-card::before{
  content:"\2196";
  left:-22px;
  top:-20px;
}
@keyframes rewardFlow{
  from{background-position:0% 50%}
  to{background-position:220% 50%}
}
@keyframes rewardLift{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-5px)}
}
@keyframes rewardShine{
  0%,38%{transform:translateX(-120%)}
  58%,100%{transform:translateX(120%)}
}
@media (prefers-reduced-motion: reduce){
  .reward-loop::before,
  .reward-card,
  .reward-card::after{
    animation:none;
  }
  .btn,
  .btn::before,
  .mobile-toggle{
    transition:none;
  }
  .btn:hover,
  .btn:active,
  .mobile-toggle:hover,
  .mobile-toggle:active{
    transform:none;
  }
  .btn:hover::before{
    transform:translateX(-130%);
  }
}
.hero-visual{
  position:relative;
  min-height:620px;
}
.orb{
  position:absolute;
  inset:auto auto 10% 12%;
  width:240px;height:240px;border-radius:50%;
  background:radial-gradient(circle at 40% 30%, rgba(130,176,255,.95), rgba(91,140,255,.3) 45%, rgba(10,15,26,0) 72%);
  filter:blur(8px);
  opacity:.7;
}
.device-stack{
  position:absolute;
  inset:0;
  display:grid;
  place-items:center;
}
.phone{
  width:min(360px, 100%);
  border-radius:46px;
  padding:14px;
  background:linear-gradient(180deg,#141b2e,#0f1527);
  border:1px solid rgba(255,255,255,.08);
  box-shadow:var(--shadow-strong);
  position:relative;
}
.phone::before{
  content:"";
  display:block;
  width:38%;
  height:28px;
  border-radius:0 0 20px 20px;
  background:#0c1020;
  position:absolute;
  top:14px;left:50%;
  transform:translateX(-50%);
}
.phone-screen{
  min-height:630px;
  padding:54px 20px 20px;
  border-radius:34px;
  background:
    radial-gradient(circle at 20% 0%, rgba(130,176,255,.25), transparent 30%),
    linear-gradient(180deg,#f8fbff,#eef3fb 35%, #e8eef8 100%);
  overflow:hidden;
  color:#172136;
}
.phone-top{
  display:flex;justify-content:space-between;align-items:center;
  margin-bottom:16px;
  font-size:.84rem;
  color:#50607d;
}
.phone-card{
  padding:18px;
  border-radius:24px;
  background:#fff;
  box-shadow:0 16px 38px rgba(17,32,61,.09);
  border:1px solid rgba(16,26,46,.05);
  margin-bottom:14px;
}
.phone-card.dark{
  background:linear-gradient(180deg,#14223e,#0d1831);
  color:white;
}
.phone-label{
  font-size:.76rem;
  text-transform:uppercase;
  letter-spacing:.14em;
  color:#7a89a5;
}
.phone-title{
  margin-top:8px;
  font-size:1.35rem;
  font-weight:700;
  letter-spacing:-.04em;
}
.progress-ring{
  width:118px;height:118px;border-radius:50%;
  margin:18px auto 12px;
  display:grid;place-items:center;
  background:
    radial-gradient(closest-side, white 68%, transparent 70% 100%),
    conic-gradient(var(--blue) 0 264deg, rgba(91,140,255,.12) 264deg 360deg);
}
.progress-ring span{
  font-size:1.2rem;
  font-weight:700;
  color:#182743;
}
.loop-steps{
  display:grid;
  gap:10px;
}
.loop-step{
  display:grid;
  grid-template-columns:42px 1fr;
  gap:12px;
  align-items:start;
}
.loop-step .num{
  width:42px;height:42px;border-radius:14px;
  display:grid;place-items:center;
  background:rgba(255,255,255,.08);
  color:#dbe6ff;
  font-weight:700;
}
.loop-step strong{display:block;margin:2px 0 4px}
.loop-step p{margin:0;color:rgba(255,255,255,.74);font-size:.94rem}
.floating-card{
  position:absolute;
  padding:18px;
  border-radius:24px;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.14);
  backdrop-filter:blur(18px);
  box-shadow:0 18px 44px rgba(0,0,0,.22);
}
.float-a{top:56px;left:-18px;max-width:240px}
.float-b{bottom:74px;right:-18px;max-width:250px}
.floating-card strong{display:block;font-size:1rem;margin-bottom:6px}
.floating-card p{margin:0;color:rgba(255,255,255,.8);font-size:.92rem}
.home-hero-art{
  position:relative;
  z-index:1;
}
.home-hero-art::before{
  content:"";
  position:absolute;
  inset:18px -8px 10px 28px;
  border-radius:8px;
  background:linear-gradient(135deg, rgba(105,201,255,.32), rgba(91,140,255,.18));
  filter:blur(24px);
  opacity:.86;
  z-index:0;
}
.home-hero-art img{
  position:relative;
  z-index:1;
  width:min(100%, 560px);
  margin-left:auto;
  border-radius:8px;
  border:0;
  box-shadow:0 24px 70px rgba(50,87,108,.18);
  -webkit-mask-image:radial-gradient(ellipse 94% 90% at 50% 50%, #000 68%, rgba(0,0,0,.94) 82%, rgba(0,0,0,.38) 96%, transparent 100%);
  mask-image:radial-gradient(ellipse 94% 90% at 50% 50%, #000 68%, rgba(0,0,0,.94) 82%, rgba(0,0,0,.38) 96%, transparent 100%);
}
.home-hero-note{
  position:absolute;
  z-index:3;
  left:0;
  bottom:24px;
  max-width:300px;
  padding:16px 18px;
  border-radius:8px;
  background:rgba(255,255,255,.92);
  border:1px solid rgba(16,26,46,.08);
  color:#172136;
  font-weight:700;
  box-shadow:0 18px 44px rgba(50,87,108,.16);
  backdrop-filter:blur(16px);
}
.page-hero{
  position:relative;
  color:var(--text);
  background:
    linear-gradient(135deg, rgba(255,255,255,.88), rgba(255,255,255,.48)),
    linear-gradient(120deg,#f5fbff 0%, #e8f8ff 48%, #dffaff 100%);
  border-bottom:1px solid rgba(29,92,120,.12);
}
.page-hero .wrap{
  display:grid;
  gap:14px;
  padding:38px 0 30px;
}
.page-hero + .section.light{
  padding-top:32px;
}
.not-found-hero{
  position:relative;
  display:grid;
  place-items:center;
  min-height:calc(100vh - var(--header-height));
  padding:72px 0;
  overflow:hidden;
  background:
    radial-gradient(circle at 12% 18%, rgba(105,201,255,.28), transparent 34%),
    radial-gradient(circle at 88% 80%, rgba(139,109,255,.16), transparent 36%),
    linear-gradient(120deg,#f5fbff 0%, #e8f8ff 48%, #dffaff 100%);
}
.not-found-hero::before,
.not-found-hero::after{
  content:"";
  position:absolute;
  border-radius:999px;
  border:1px solid rgba(91,140,255,.12);
  pointer-events:none;
}
.not-found-hero::before{
  width:420px;
  height:420px;
  top:-240px;
  right:-120px;
  box-shadow:0 0 0 44px rgba(105,201,255,.04);
}
.not-found-hero::after{
  width:300px;
  height:300px;
  bottom:-190px;
  left:-80px;
  box-shadow:0 0 0 36px rgba(139,109,255,.035);
}
.not-found-card{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:minmax(300px,.85fr) minmax(0,1.15fr);
  align-items:stretch;
  min-height:430px;
  overflow:hidden;
  border:1px solid rgba(16,26,46,.09);
  border-radius:var(--radius-xl);
  background:rgba(255,255,255,.86);
  box-shadow:0 32px 90px rgba(50,87,108,.18);
  backdrop-filter:blur(20px);
}
.not-found-status{
  position:relative;
  display:grid;
  place-content:center;
  justify-items:center;
  padding:54px 38px;
  overflow:hidden;
  text-align:center;
  background:
    linear-gradient(145deg,rgba(255,255,255,.96),rgba(231,247,255,.88)),
    linear-gradient(135deg,var(--cyan),var(--violet));
  border-right:1px solid rgba(16,26,46,.08);
}
.not-found-status::before{
  content:"";
  position:absolute;
  width:240px;
  height:240px;
  border-radius:50%;
  background:linear-gradient(135deg,rgba(105,201,255,.28),rgba(139,109,255,.18));
  filter:blur(4px);
  opacity:.72;
}
.not-found-label,
.not-found-status h1,
.not-found-status-line{
  position:relative;
  z-index:1;
}
.not-found-label{
  margin-bottom:20px;
  color:#516078;
  font-size:.78rem;
  font-weight:800;
  letter-spacing:.24em;
  text-transform:uppercase;
}
.not-found-status h1{
  margin:0;
  color:transparent;
  background:linear-gradient(135deg,#2d7cff 10%,#69c9ff 48%,#8b6dff 92%);
  background-clip:text;
  -webkit-background-clip:text;
  font-size:clamp(7.5rem,15vw,11.5rem);
  font-weight:900;
  letter-spacing:-.1em;
  line-height:.78;
  transform:translateX(-.05em);
  filter:drop-shadow(0 18px 24px rgba(91,140,255,.2));
}
.not-found-status-line{
  margin-top:28px;
  color:#42516c;
  font-size:.9rem;
  font-weight:700;
}
.not-found-copy{
  align-self:center;
  padding:clamp(38px,6vw,72px);
}
.not-found-copy h2{
  max-width:12ch;
  margin:20px 0 16px;
  font-size:clamp(2.25rem,4.5vw,4rem);
  line-height:1.02;
  letter-spacing:-.045em;
}
.not-found-copy p{
  max-width:54ch;
  margin:0;
  color:#5b6880;
  font-size:1.05rem;
  line-height:1.7;
}
.not-found-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:30px;
}
.not-found-actions .btn.secondary{
  color:#1a2948;
  background:rgba(255,255,255,.76);
  border-color:rgba(16,26,46,.1);
}
.not-found-page .footer{
  margin-top:0;
}
@media (max-width: 760px){
  .not-found-hero{
    min-height:auto;
    padding:32px 0;
  }
  .not-found-card{
    grid-template-columns:1fr;
    min-height:0;
    border-radius:24px;
  }
  .not-found-status{
    padding:42px 24px;
    border-right:0;
    border-bottom:1px solid rgba(16,26,46,.08);
  }
  .not-found-status h1{
    font-size:clamp(6rem,32vw,9rem);
  }
  .not-found-status-line{
    margin-top:22px;
  }
  .not-found-copy{
    padding:34px 24px 38px;
  }
  .not-found-copy h2{
    font-size:2.35rem;
  }
  .not-found-actions .btn{
    flex:1 1 100%;
  }
}
.program-access .section{
  padding:76px 0;
}
.program-access .section.tight{
  padding:58px 0;
}
.program-access .page-hero + .section.light{
  padding-top:28px;
}
.hero-subgrid{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:14px;
}
.hero-pill{
  padding:16px 18px;
  border-radius:8px;
  background:rgba(255,255,255,.78);
  border:1px solid rgba(16,26,46,.08);
  box-shadow:0 16px 34px rgba(50,87,108,.12);
}
.hero-pill strong{
  display:block;
  margin-bottom:6px;
  font-size:1rem;
}
.hero-pill span{color:#5b6880;font-size:.94rem}
.features .feature-loop-copy{
  max-width:98ch;
  overflow:visible;
}
.feature-loop-icons{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:18px;
  width:100%;
  padding:16px 18px;
  border-radius:8px;
  background:rgba(255,255,255,.78);
  border:1px solid rgba(16,26,46,.08);
  box-shadow:0 16px 34px rgba(50,87,108,.12);
}
.feature-loop-item{
  position:relative;
  min-width:0;
  display:grid;
  justify-items:center;
  align-content:start;
  gap:8px;
  text-align:center;
}
.feature-loop-item:not(:last-child)::after{
  content:"\2192";
  position:absolute;
  top:15px;
  right:-9px;
  transform:translateX(50%);
  color:#4f77d8;
  font-size:1.15rem;
  font-weight:900;
  line-height:1;
}
.feature-loop-item strong{
  color:#172136;
  font-size:.84rem;
  line-height:1.15;
}
.loop-nowrap{
  white-space:nowrap;
}
.section{
  position:relative;
  padding:96px 0;
}
.section.tight{padding:72px 0}
.section.light{background:var(--surface)}
.difference-section{
  padding:80px 0 66px;
  background:linear-gradient(180deg,#f5fbff 0%, #ffffff 72%);
  border-bottom:1px solid rgba(29,92,120,.08);
}
.difference-copy{
  max-width:820px;
  margin:0 auto;
  text-align:center;
}
.difference-copy h2{
  margin:0;
  font-size:4.6rem;
  line-height:1;
  letter-spacing:0;
}
.difference-copy h2 span{
  display:block;
  color:#2d7cff;
}
.difference-copy p{
  margin:14px auto 0;
  max-width:700px;
  color:#42516c;
  font-size:1.18rem;
  line-height:1.64;
}
.difference-copy .difference-lead{
  margin-top:22px;
}
.difference-copy p strong{
  color:#172136;
  display:block;
  font-size:1.3rem;
  line-height:1.46;
  font-weight:850;
}
.difference-cross{
  position:relative;
  display:inline-block;
  color:#6b7890;
  white-space:nowrap;
}
.difference-cross::after{
  content:"";
  position:absolute;
  left:-2px;
  right:-2px;
  top:54%;
  height:2px;
  border-radius:999px;
  background:#e45564;
  transform:rotate(-2deg);
}
.difference-highlight{
  color:#12886d;
  font-weight:850;
  background:linear-gradient(180deg, transparent 54%, rgba(105,201,255,.38) 54%);
}
.section.tint{
  background:
    radial-gradient(circle at 100% 0%, rgba(91,140,255,.10), transparent 28%),
    linear-gradient(180deg,#f7f9fd 0%, #f0f4fb 100%);
}
.section.dark{
  color:var(--text);
  background:
    radial-gradient(circle at 0% 0%, rgba(105,201,255,.18), transparent 26%),
    linear-gradient(120deg,#f5fbff 0%, #e8f8ff 52%, #dffaff 100%);
}
.story-section{
  padding-top:48px;
  padding-bottom:56px;
  background:
    radial-gradient(circle at 100% 0%, rgba(105,201,255,.08), transparent 28%),
    linear-gradient(180deg,#ffffff 0%, #f7f9fd 100%);
}
.story-section .section-head{
  margin-bottom:24px;
}
.setup-section{
  padding-top:52px;
}
.setup-section .section-head{
  margin-bottom:24px;
}
.setup-section .section-head,
.balance-section .section-head{
  grid-template-columns:1fr;
  gap:12px;
  align-items:start;
}
.setup-section .section-head h2,
.balance-section .section-head h2{
  margin-top:0;
}
.setup-section .section-head p,
.balance-section .section-head p{
  max-width:none;
  white-space:nowrap;
}
.balance-section{
  padding-top:64px;
  padding-bottom:42px;
}
.balance-section .section-head{
  margin-bottom:24px;
}
.modes-section{
  padding-top:42px;
}
.section-head{
  display:grid;
  grid-template-columns: 1fr auto;
  gap:24px;
  align-items:end;
  margin-bottom:34px;
}
.section-head h2{
  margin:14px 0 0;
  font-size:clamp(2rem,4.6vw,4rem);
  line-height:1;
  letter-spacing:-.055em;
}
.section-head p{
  margin:0;
  max-width:58ch;
  color:var(--muted);
}
.section.dark .section-head p{color:#5b6880}
.features .section-head{
  grid-template-columns:1fr;
  gap:12px;
  align-items:start;
}
.features .section-head h2{
  margin-top:0;
}
.features .section-head p{
  max-width:none;
}
.grid{
  display:grid;
  gap:20px;
}
.grid.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.grid.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.card{
  position:relative;
  padding:26px;
  border-radius:30px;
  background:#fff;
  border:1px solid rgba(16,26,46,.06);
  box-shadow:var(--shadow);
}
.card.dark{
  background:linear-gradient(180deg,#ffffff,#eef7ff);
  color:var(--text);
  border-color:rgba(91,140,255,.16);
  box-shadow:0 22px 54px rgba(50,87,108,.14);
}
.card.soft{
  background:rgba(255,255,255,.72);
  backdrop-filter:blur(18px);
}
.card h3{
  margin:0 0 10px;
  font-size:1.4rem;
  letter-spacing:-.04em;
}
.card p{
  margin:0;
  color:#5c6982;
}
.card.dark p{color:#5c6982}
.kicker{
  display:inline-block;
  margin-bottom:12px;
  color:#5573c6;
  font-size:.79rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.16em;
}
.balance-section .kicker{
  font-weight:900;
}
.card.dark .kicker{color:#2d60d8}
.feature-points{
  display:grid;
  gap:12px;
  margin-top:18px;
}
.feature-points li{
  list-style:none;
  position:relative;
  padding-left:28px;
  color:#42516c;
}
.card.dark .feature-points li{color:#42516c}
.feature-points li::before{
  content:"";
  width:12px;height:12px;border-radius:50%;
  background:linear-gradient(135deg,var(--cyan),var(--violet));
  position:absolute;
  left:0;top:.38em;
  box-shadow:0 0 0 4px rgba(91,140,255,.10);
}
.story-stack{
  display:grid;
  gap:30px;
}
.story-panel{
  display:grid;
  grid-template-columns:minmax(320px, .95fr) minmax(0, 1.05fr);
  gap:34px;
  align-items:center;
  padding:22px;
  border-radius:8px;
  background:#fff;
  border:1px solid rgba(16,26,46,.07);
  box-shadow:var(--shadow);
}
.story-panel.reverse .story-media{order:2}
.story-panel.reverse .story-copy{order:1}
.story-media{
  position:relative;
  border-radius:8px;
  overflow:visible;
  padding:10px;
  background:
    radial-gradient(circle at 18% 12%, rgba(105,201,255,.32), transparent 34%),
    linear-gradient(135deg, rgba(255,255,255,.88), rgba(223,250,255,.72));
  border:0;
  box-shadow:0 22px 58px rgba(50,87,108,.14);
}
.story-media::before{
  content:"";
  position:absolute;
  inset:8px;
  border-radius:8px;
  background:linear-gradient(135deg, rgba(105,201,255,.34), rgba(91,140,255,.16));
  filter:blur(20px);
  opacity:.72;
  z-index:0;
}
.story-media::after{
  content:"";
  position:absolute;
  inset:10px;
  border-radius:8px;
  box-shadow:
    inset 0 0 38px rgba(245,251,255,.98),
    inset 0 0 78px rgba(105,201,255,.24);
  pointer-events:none;
  z-index:2;
}
.story-media img{
  position:relative;
  z-index:1;
  width:100%;
  height:auto;
  border-radius:8px;
  -webkit-mask-image:radial-gradient(ellipse 96% 92% at 50% 50%, #000 70%, rgba(0,0,0,.95) 84%, rgba(0,0,0,.44) 97%, transparent 100%);
  mask-image:radial-gradient(ellipse 96% 92% at 50% 50%, #000 70%, rgba(0,0,0,.95) 84%, rgba(0,0,0,.44) 97%, transparent 100%);
}
.story-copy{
  padding:18px clamp(4px, 2vw, 22px);
}
.story-tag{
  display:inline-block;
  margin-bottom:14px;
  color:#5573c6;
  font-size:.8rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.16em;
}
.story-copy h3{
  margin:0 0 14px;
  font-size:3rem;
  line-height:1.03;
  letter-spacing:0;
}
.story-copy p{
  margin:0;
  max-width:58ch;
  color:#5c6982;
  font-size:1.02rem;
}
.story-copy .feature-points{
  margin:22px 0 0;
  padding:0;
}
.story-points{
  gap:10px;
}
.setup-points{
  counter-reset: setup-point;
}
.story-points li{
  min-height:30px;
  padding-left:42px;
  display:flex;
  align-items:center;
}
.setup-points li{
  counter-increment: setup-point;
}
.story-points li::before{
  width:28px;
  height:28px;
  border-radius:8px;
  display:grid;
  place-items:center;
  font-size:.88rem;
  font-weight:900;
  line-height:1;
  top:50%;
  transform:translateY(-50%);
  box-shadow:0 8px 20px rgba(50,87,108,.12);
}
.issue-points li::before{
  content:"!";
  color:#b4414a;
  background:linear-gradient(135deg,#fff4f5,#ffe2e5);
  border:1px solid rgba(180,65,74,.16);
}
.action-points li::before{
  content:"\2713";
  color:#1c65d8;
  background:linear-gradient(135deg,#eff8ff,#dff4ff);
  border:1px solid rgba(28,101,216,.15);
}
.setup-points li::before{
  content:counter(setup-point);
  color:#246f8f;
  background:linear-gradient(135deg,#effdff,#d7f7fb);
  border:1px solid rgba(36,111,143,.16);
}
.resolved-points li::before{
  content:"\2713";
  color:#247a68;
  background:linear-gradient(135deg,#f1fffb,#dff9f1);
  border:1px solid rgba(36,122,104,.16);
}
.showcase{
  display:grid;
  grid-template-columns: 1.04fr .96fr;
  gap:28px;
  align-items:stretch;
}
.showcase-panel{
  height:100%;
  padding:32px;
  border-radius:34px;
  background:#fff;
  box-shadow:var(--shadow);
  border:1px solid rgba(16,26,46,.06);
}
.showcase-panel.dark{
  background:#fff;
  color:var(--text);
  border-color:rgba(16,26,46,.06);
  box-shadow:var(--shadow);
}
.showcase-rail{
  display:grid;
  gap:14px;
}
.core-loop-steps{
  margin-top:26px;
}
.core-loop-steps .loop-step{
  padding:14px;
  border-radius:8px;
  background:rgba(255,255,255,.92);
  border:1px solid rgba(91,140,255,.12);
  box-shadow:0 14px 30px rgba(50,87,108,.10);
}
.loop-icon{
  position:relative;
  width:42px;
  height:42px;
  border-radius:14px;
  overflow:hidden;
  box-shadow:0 12px 24px rgba(50,87,108,.16);
}
.loop-icon::before,
.loop-icon::after{
  content:"";
  position:absolute;
}
.loop-icon span{
  position:absolute;
  display:block;
}
.icon-book{
  background:linear-gradient(135deg,#4e7dff,#69c9ff);
}
.icon-book::before,
.icon-book::after{
  top:10px;
  width:12px;
  height:20px;
  background:
    repeating-linear-gradient(180deg, transparent 0 5px, rgba(45,124,255,.32) 5px 6px),
    rgba(255,255,255,.94);
  border:2px solid rgba(255,255,255,.92);
  box-shadow:0 4px 10px rgba(23,33,54,.14);
}
.icon-book::before{
  left:7px;
  border-radius:5px 1px 2px 5px;
  transform:skewY(5deg);
}
.icon-book::after{
  right:7px;
  border-radius:1px 5px 5px 2px;
  transform:skewY(-5deg);
}
.icon-book span{
  left:20px;
  top:9px;
  width:2px;
  height:23px;
  border-radius:999px;
  background:#2d7cff;
  box-shadow:0 0 0 2px rgba(255,255,255,.9);
}
.icon-time{
  background:linear-gradient(135deg,#1d9fd5,#65ddeb);
}
.icon-time::before{
  left:10px;
  top:10px;
  width:18px;
  height:18px;
  border:3px solid #fff;
  border-radius:50%;
}
.icon-time::after{
  left:20px;
  top:14px;
  width:3px;
  height:10px;
  border-radius:999px;
  background:#fff;
}
.icon-time span{
  left:21px;
  top:22px;
  width:9px;
  height:3px;
  border-radius:999px;
  background:#fff;
  transform:rotate(25deg);
  transform-origin:left center;
}
.icon-unlock{
  background:linear-gradient(135deg,#19a77e,#7be0c7);
}
.icon-unlock::before{
  left:12px;
  top:8px;
  width:14px;
  height:13px;
  border:3px solid #fff;
  border-bottom:0;
  border-radius:12px 12px 0 0;
  transform:rotate(-28deg);
  transform-origin:4px 16px;
}
.icon-unlock span,
.icon-lock span{
  left:12px;
  bottom:8px;
  width:18px;
  height:14px;
  border-radius:5px;
  background:#fff;
}
.icon-unlock::after{
  left:19px;
  bottom:13px;
  width:4px;
  height:4px;
  border-radius:50%;
  background:#148c6a;
}
.icon-play{
  background:linear-gradient(135deg,#4d83ff,#69c9ff);
}
.icon-play::before{
  left:9px;
  top:9px;
  width:24px;
  height:24px;
  border-radius:8px;
  background:#fff;
}
.icon-play::after{
  left:19px;
  top:15px;
  width:0;
  height:0;
  border-top:6px solid transparent;
  border-bottom:6px solid transparent;
  border-left:9px solid #2d7cff;
}
.icon-play span{
  left:13px;
  top:24px;
  width:4px;
  height:4px;
  border-radius:50%;
  background:#69c9ff;
  box-shadow:17px 0 0 #69c9ff;
}
.icon-lock{
  background:linear-gradient(135deg,#e04b5a,#ff8b8f);
}
.icon-lock::before{
  left:13px;
  top:7px;
  width:13px;
  height:13px;
  border:3px solid #fff;
  border-bottom:0;
  border-radius:12px 12px 0 0;
}
.icon-lock::after{
  left:19px;
  bottom:13px;
  width:4px;
  height:4px;
  border-radius:50%;
  background:#c73949;
}
.mini-stack{
  display:grid;
  gap:12px;
}
.mini-card{
  padding:18px;
  border-radius:20px;
  background:var(--surface-3);
  border:1px solid rgba(16,26,46,.06);
}
.mini-card strong{
  display:block;
  margin-bottom:6px;
}
.mini-card p{
  margin:0;
  color:#5d6c86;
}
.showcase-panel.dark .mini-card p{color:#5d6c86}
.parent-flow-card,
.child-flow-card{
  display:grid;
  grid-template-columns:42px 1fr;
  gap:12px;
  align-items:start;
}
.child-flow-list{
  margin-top:0;
  gap:12px;
}
.parent-flow-icon{
  margin-top:2px;
}
.parent-icon-settings{
  background:linear-gradient(135deg,#4e7dff,#69c9ff);
}
.parent-icon-settings::before{
  left:9px;
  top:13px;
  width:18px;
  height:20px;
  border-radius:6px;
  background:#fff;
  box-shadow:0 4px 10px rgba(23,33,54,.14);
}
.parent-icon-settings::after{
  left:13px;
  top:19px;
  width:10px;
  height:2px;
  border-radius:999px;
  background:#2d7cff;
  box-shadow:0 5px 0 #2d7cff;
}
.parent-icon-settings span{
  right:8px;
  top:8px;
  width:0;
  height:0;
  border-left:5px solid transparent;
  border-right:5px solid transparent;
  border-bottom:8px solid #fff;
  filter:drop-shadow(0 6px 0 #fff);
}
.parent-icon-rule{
  background:linear-gradient(135deg,#4d83ff,#69c9ff);
}
.parent-icon-rule::before{
  left:10px;
  top:13px;
  width:22px;
  height:3px;
  border-radius:999px;
  background:#fff;
  box-shadow:0 8px 0 #fff, 0 16px 0 #fff;
}
.parent-icon-rule::after{
  left:14px;
  top:9px;
  width:7px;
  height:7px;
  border-radius:50%;
  background:#fff;
  box-shadow:12px 8px 0 #fff, -1px 16px 0 #fff;
}
.parent-icon-rule span{
  right:8px;
  bottom:8px;
  width:10px;
  height:6px;
  border-left:3px solid #19a77e;
  border-bottom:3px solid #19a77e;
  transform:rotate(-45deg);
  background:transparent;
}
.parent-icon-summary{
  background:linear-gradient(135deg,#1d9fd5,#65ddeb);
}
.parent-icon-summary::before{
  left:9px;
  bottom:9px;
  width:4px;
  height:10px;
  border-radius:999px;
  background:#fff;
  box-shadow:8px -5px 0 #fff, 16px -12px 0 #fff;
}
.parent-icon-summary::after{
  left:11px;
  top:12px;
  width:20px;
  height:13px;
  border-left:3px solid #fff;
  border-bottom:3px solid #fff;
  transform:skewY(-20deg);
  opacity:.86;
}
.parent-icon-summary span{
  right:8px;
  top:10px;
  width:0;
  height:0;
  border-top:5px solid transparent;
  border-bottom:5px solid transparent;
  border-left:8px solid #fff;
  transform:rotate(-28deg);
}
.parent-icon-bonus{
  background:linear-gradient(135deg,#19a77e,#7be0c7);
}
.parent-icon-bonus::before{
  left:10px;
  top:10px;
  width:20px;
  height:20px;
  border:3px solid #fff;
  border-radius:50%;
}
.parent-icon-bonus::after{
  left:20px;
  top:14px;
  width:3px;
  height:10px;
  border-radius:999px;
  background:#fff;
  box-shadow:5px 8px 0 #fff;
  transform-origin:bottom center;
}
.parent-icon-bonus span{
  left:8px;
  top:7px;
  width:10px;
  height:3px;
  border-radius:999px;
  background:#fff;
  box-shadow:0 0 0 0 #fff;
}
.parent-icon-bonus span::after{
  content:"";
  position:absolute;
  left:3px;
  top:-3px;
  width:3px;
  height:9px;
  border-radius:999px;
  background:#fff;
}
.showcase-panel.dark .loop-step .num,
.section.dark .loop-step .num{
  background:linear-gradient(135deg,#2d7cff,#69c9ff);
  color:#fff;
}
.showcase-panel.dark .loop-step p,
.section.dark .loop-step p{
  color:#5b6880;
}
.timeline{
  display:grid;
  grid-template-columns: repeat(5, minmax(0,1fr));
  gap:16px;
  margin-top:10px;
}
.timeline-card{
  padding:22px;
  border-radius:26px;
  background:#fff;
  box-shadow:var(--shadow);
  border:1px solid rgba(16,26,46,.06);
}
.timeline-card .step{
  display:inline-grid;place-items:center;
  width:40px;height:40px;border-radius:14px;
  background:linear-gradient(135deg,var(--blue),var(--violet));
  color:#fff;font-weight:700;
  margin-bottom:16px;
}
.timeline-card h3{
  margin:0 0 8px;
  font-size:1.15rem;
}
.timeline-card p{margin:0;color:#5b6880;font-size:.96rem}
.setup-timeline{
  grid-template-columns:repeat(4,minmax(0,1fr));
}
.showcase-title{
  margin:18px 0 12px;
  font-size:3.2rem;
  line-height:1;
  letter-spacing:0;
}
.showcase-copy{
  margin:0;
  color:#5d6b84;
  max-width:52ch;
}
.pricing-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:20px;
}
.price-card{
  position:relative;
  padding:30px;
  border-radius:8px;
  background:#fff;
  color:var(--text);
  border:1px solid rgba(16,26,46,.07);
  box-shadow:var(--shadow);
  overflow:visible;
}
.price-card.featured{
  background:
    linear-gradient(180deg,#ffffff 0%, #f7fcff 100%);
  color:var(--text);
  border:1px solid rgba(45,124,255,.34);
  box-shadow:
    0 2px 0 rgba(255,255,255,.9) inset,
    0 0 0 1px rgba(105,201,255,.18),
    0 18px 28px rgba(45,124,255,.15),
    0 38px 74px rgba(50,87,108,.18);
  transform:translateY(-10px);
  z-index:2;
}
.price-card.featured::after{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg,#2d7cff,#69c9ff);
  pointer-events:none;
  z-index:0;
  height:6px;
  border-radius:8px 8px 0 0;
}
.price-card.featured > *{
  position:relative;
  z-index:1;
}
.plan-badge{
  --plan-icon: none;
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  padding:7px 10px;
  border-radius:999px;
  border:1px solid transparent;
  font-size:.74rem;
  font-weight:800;
  letter-spacing:.04em;
  line-height:1;
  white-space:nowrap;
}
.plan-badge::before{
  content:"";
  width:13px;
  height:13px;
  display:inline-block;
  background:currentColor;
  flex:0 0 13px;
  -webkit-mask:var(--plan-icon) center / contain no-repeat;
  mask:var(--plan-icon) center / contain no-repeat;
}
.price-plan-badge{
  margin:0;
  padding:8px 12px;
  font-size:.8rem;
}
.table-plan-badge{
  min-width:68px;
  padding:6px 9px;
  font-size:.68rem;
}
.plan-badge.plan-free{
  --plan-icon:url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M20.25 3.75C13.15 3.85 7.9 6.25 5.25 10.62 3.33 13.79 3.63 17.05 6.03 19.02c2.72 2.24 7.02 1.17 9.88-2.46 2.5-3.17 3.78-7.65 4.34-12.81Z'/%3E%3C/svg%3E");
  background:rgba(169,247,115,.24);
  color:#326c00;
  border-color:rgba(50,108,0,.16);
}
.plan-badge.plan-free::before{
  width:13px;
  height:13px;
}
.plan-badge.plan-plus{
  --plan-icon:url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4.1 18.4h15.8c.45 0 .78-.38.73-.83L19.45 7.25c-.06-.55-.72-.8-1.12-.42l-3.87 3.66-1.87-5.1c-.2-.53-.96-.53-1.17 0l-1.88 5.1-3.87-3.66c-.4-.38-1.06-.13-1.12.42L3.37 17.57c-.05.45.28.83.73.83Zm.95 2.1h13.9c.42 0 .76-.34.76-.76s-.34-.76-.76-.76H5.05c-.42 0-.76.34-.76.76s.34.76.76.76Z'/%3E%3C/svg%3E");
  background:rgba(104,43,244,.12);
  color:#682bf4;
  border-color:rgba(104,43,244,.16);
}
.plan-badge.plan-plus::before{
  width:14px;
  height:14px;
  flex-basis:14px;
}
.plan-badge.plan-pro{
  --plan-icon:url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12 3.15c.34 0 .65.2.8.52l2.17 4.4 4.86.7c.35.05.64.3.75.63.1.33.02.7-.23.94l-3.52 3.43.83 4.84c.06.35-.08.7-.36.9-.29.2-.67.23-.98.07L12 17.3l-4.35 2.29c-.31.16-.69.13-.97-.07-.29-.2-.43-.55-.37-.9l.83-4.84-3.52-3.43c-.25-.24-.34-.61-.23-.94.11-.33.4-.58.75-.63l4.86-.7 2.17-4.4c.15-.32.48-.52.83-.52Z'/%3E%3C/svg%3E");
  background:rgba(144,78,0,.12);
  color:#904e00;
  border-color:rgba(144,78,0,.18);
}
.price-badge.popular{
  position:absolute;
  top:-16px;
  right:22px;
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:8px 12px;
  border-radius:999px;
  background:linear-gradient(135deg,#256ff0 0%, #38bdf8 100%);
  color:#fff;
  border:1px solid rgba(45,124,255,.24);
  box-shadow:
    0 12px 26px rgba(45,124,255,.26),
    0 0 0 1px rgba(255,255,255,.38) inset;
  font-size:.82rem;
  font-weight:800;
  letter-spacing:0;
  text-shadow:0 1px 0 rgba(14,49,104,.22);
  z-index:3;
}
.badge-crown{
  position:relative;
  width:24px;
  height:21px;
  flex:0 0 24px;
  display:inline-block;
  filter:drop-shadow(0 2px 4px rgba(92,56,0,.28));
}
.badge-crown::before,
.badge-crown::after{
  content:"";
  position:absolute;
  bottom:0;
}
.badge-crown::before{
  left:0;
  width:24px;
  height:19px;
  background:linear-gradient(180deg,#fff7b0 0%, #ffd45c 42%, #f2a51d 100%);
  clip-path:polygon(0 100%, 0 48%, 20% 70%, 31% 4%, 50% 60%, 69% 4%, 80% 70%, 100% 48%, 100% 100%);
}
.badge-crown::after{
  left:3px;
  width:18px;
  height:5px;
  border-radius:2px;
  background:linear-gradient(180deg,#ffe48a,#e79915);
  box-shadow:
    5px -11px 0 -3px #fff7b0,
    9px -13px 0 -3px #fff7b0,
    13px -11px 0 -3px #fff7b0;
}
.price-card h3{
  margin:18px 0 10px;
  font-size:2rem;
  letter-spacing:-.05em;
}
.price-sub{color:#5d6a82}
.price-card.featured .price-sub{color:#4d5d76}
.price{
  display:flex;
  align-items:flex-end;
  gap:8px;
  margin:18px 0 20px;
}
.price strong{
  font-size:3rem;
  line-height:.86;
  letter-spacing:-.07em;
}
.price.price-status strong{
  font-size:2.35rem;
  line-height:1;
  letter-spacing:0;
  white-space:nowrap;
}
.price span{
  color:#62708a;
}
.price-card.featured .price span{color:#4d5d76}
.price-alt{
  margin:-8px 0 18px;
  color:#62708a;
  font-size:.95rem;
  font-weight:700;
}
.price-card.featured .price-alt{
  color:#4d5d76;
}
.price-features{
  display:grid;
  gap:12px;
  margin:18px 0 26px;
  padding:0;
}
.price-features li{
  list-style:none;
  display:grid;
  grid-template-columns:24px 1fr;
  gap:10px;
  align-items:start;
  color:#3d4c66;
}
.price-card.featured .price-features li{color:#263854}
.price-features li::before{
  content:"✓";
  width:24px;height:24px;border-radius:999px;
  display:grid;place-items:center;
  background:linear-gradient(135deg,#2d7cff,#69c9ff);
  color:#fff;
  font-weight:700;
  box-shadow:0 8px 16px rgba(45,124,255,.16);
}
.price-card.featured .price-features li::before{
  background:linear-gradient(135deg,#2d7cff,#69c9ff);
  color:#fff;
}
.price-note{
  margin-top:18px;
  padding:16px 18px;
  border-radius:20px;
  background:#f4f7fc;
  color:#4f5d76;
  font-size:.92rem;
}
.price-card.featured .price-note{
  background:rgba(45,124,255,.10);
  color:#2d466d;
}
.compare-stack{
  display:grid;
  gap:22px;
}
.compare-block{
  background:#fff;
  border:1px solid rgba(16,26,46,.07);
  border-radius:30px;
  box-shadow:var(--shadow);
  overflow:hidden;
}
.compare-block-head{
  display:grid;
  grid-template-columns:auto 1fr;
  gap:14px;
  align-items:start;
  padding:24px 24px 10px;
}
.compare-index{
  display:grid;
  place-items:center;
  width:38px;
  height:38px;
  border-radius:14px;
  background:linear-gradient(135deg,var(--blue),var(--violet));
  color:#fff;
  font-weight:800;
}
.compare-block h3{
  margin:0 0 6px;
  font-size:1.35rem;
  letter-spacing:-.03em;
}
.compare-block p{
  margin:0;
  color:#5d6a82;
}
.compare-block .compare-footnote{
  margin:-8px 24px 24px;
  padding:14px 16px;
  border-radius:18px;
  background:#f3f6fb;
  color:#52617b;
  font-size:.94rem;
}
.compare-wrap{
  overflow:auto;
  padding-bottom:10px;
}
.compare-block .compare-wrap{
  padding:0 24px 24px;
}
.compare-table{
  width:100%;
  min-width:920px;
  border-collapse:separate;
  border-spacing:0;
  background:#fff;
  border:1px solid rgba(16,26,46,.07);
  border-radius:28px;
  overflow:hidden;
  box-shadow:var(--shadow);
}
.compare-block .compare-table{
  min-width:960px;
  box-shadow:none;
  border-radius:20px;
}
.compare-table th,
.compare-table td{
  padding:18px 18px;
  border-bottom:1px solid rgba(16,26,46,.06);
  vertical-align:top;
}
.compare-table tr:last-child td{border-bottom:none}
.compare-table thead th{
  background:linear-gradient(180deg,#f9fbff,#f1f5fd);
  text-align:left;
  font-size:.88rem;
  text-transform:uppercase;
  letter-spacing:.12em;
  color:#53617c;
}
.compare-table tbody td:first-child{
  font-weight:600;
  color:#1b2944;
  min-width:220px;
}
.compare-table .nowrap{
  white-space:nowrap;
}
.compare-table th:nth-child(2),
.compare-table th:nth-child(3),
.compare-table th:nth-child(4),
.compare-table td.plan-cell{
  text-align:center;
}
.compare-table td.plan-cell{
  min-width:112px;
}
.table-mark{
  display:inline-grid;
  place-items:center;
  min-width:32px;
  height:32px;
  padding:0 8px;
  border-radius:999px;
  font-size:1rem;
  font-weight:800;
  line-height:1;
}
.table-mark.yes{
  background:rgba(35,181,126,.12);
  color:#16835d;
}
.table-mark.no{
  background:#eef2f7;
  color:#718096;
}
.table-value{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:32px;
  padding:6px 10px;
  border-radius:999px;
  background:rgba(91,140,255,.09);
  color:#2c53bb;
  font-size:.82rem;
  font-weight:700;
  line-height:1.2;
}
.callout{
  padding:26px 28px;
  border-radius:8px;
  background:linear-gradient(180deg,#ffffff,#eef7ff);
  color:var(--text);
  box-shadow:0 22px 54px rgba(50,87,108,.14);
  border:1px solid rgba(91,140,255,.16);
  height:100%;
}
.callout h3{margin:0 0 10px;font-size:1.5rem}
.callout p{margin:0;color:#5b6880}
.callout-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:20px;
  align-items:stretch;
}
.split-panels{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:20px;
}
.child-flow-icon{
  margin-top:2px;
}
.child-icon-load{
  background:linear-gradient(135deg,#4e7dff,#69c9ff);
}
.child-icon-load::before{
  left:9px;
  top:9px;
  width:18px;
  height:20px;
  border-radius:6px;
  background:#fff;
  box-shadow:0 4px 10px rgba(23,33,54,.14);
}
.child-icon-load::after{
  left:13px;
  top:14px;
  width:10px;
  height:2px;
  border-radius:999px;
  background:#2d7cff;
  box-shadow:0 5px 0 #2d7cff;
}
.child-icon-load span{
  right:8px;
  bottom:8px;
  width:0;
  height:0;
  border-left:5px solid transparent;
  border-right:5px solid transparent;
  border-top:8px solid #fff;
  filter:drop-shadow(0 -6px 0 #fff);
}
.child-icon-protected{
  background:linear-gradient(135deg,#4e7dff,#8fb8ff);
}
.child-icon-protected::before{
  left:12px;
  top:11px;
  width:18px;
  height:18px;
  border-radius:50%;
  background:
    radial-gradient(circle at center, #4e7dff 0 3px, transparent 4px),
    #fff;
  box-shadow:
    0 -5px 0 -2px #fff,
    5px 0 0 -2px #fff,
    0 5px 0 -2px #fff,
    -5px 0 0 -2px #fff;
}
.child-icon-protected::after{
  left:9px;
  top:20px;
  width:25px;
  height:4px;
  border-radius:999px;
  background:#e04b5a;
  transform:rotate(-34deg);
  box-shadow:0 2px 8px rgba(224,75,90,.22);
}
.child-icon-protected span{
  display:none;
}
.child-icon-apps{
  background:linear-gradient(135deg,#4d83ff,#69c9ff);
}
.child-icon-apps::before{
  left:9px;
  top:9px;
  width:10px;
  height:10px;
  border-radius:4px;
  background:#fff;
  box-shadow:14px 0 0 #fff, 0 14px 0 #fff, 14px 14px 0 #fff;
}
.child-icon-apps::after{
  left:12px;
  top:12px;
  width:4px;
  height:4px;
  border-radius:50%;
  background:#2d7cff;
  box-shadow:14px 0 0 #19a77e, 0 14px 0 #69c9ff, 14px 14px 0 #2d7cff;
}
.child-icon-apps span{
  display:none;
}
.child-icon-path{
  background:linear-gradient(135deg,#19a77e,#7be0c7);
}
.child-icon-path::before{
  left:11px;
  top:13px;
  width:18px;
  height:12px;
  border-left:3px solid #fff;
  border-bottom:3px solid #fff;
  border-radius:0 0 0 10px;
}
.child-icon-path::after{
  right:9px;
  top:20px;
  width:0;
  height:0;
  border-top:5px solid transparent;
  border-bottom:5px solid transparent;
  border-left:8px solid #fff;
}
.child-icon-path span{
  left:9px;
  top:10px;
  width:7px;
  height:7px;
  border-radius:50%;
  background:#fff;
  box-shadow:9px 14px 0 #fff, 20px 14px 0 #fff;
}
.child-icon-reminder{
  background:linear-gradient(135deg,#2d7cff,#69c9ff);
}
.child-icon-reminder::before{
  left:12px;
  top:12px;
  width:18px;
  height:16px;
  border-radius:12px 12px 6px 6px;
  background:#fff;
}
.child-icon-reminder::after{
  left:10px;
  top:26px;
  width:22px;
  height:3px;
  border-radius:999px;
  background:#fff;
}
.child-icon-reminder span{
  left:18px;
  top:8px;
  width:6px;
  height:6px;
  border-radius:50%;
  border:2px solid #fff;
  box-shadow:2px 23px 0 -1px #fff;
}
.child-icon-relock{
  background:linear-gradient(135deg,#19a77e 0%, #7be0c7 42%, #e04b5a 58%, #ff8b8f 100%);
}
.child-icon-relock::before{
  left:7px;
  bottom:9px;
  width:12px;
  height:10px;
  border-radius:4px;
  background:#fff;
  box-shadow:16px 0 0 #fff;
}
.child-icon-relock::after{
  left:8px;
  top:8px;
  width:8px;
  height:9px;
  border:2px solid #fff;
  border-bottom:0;
  border-radius:9px 9px 0 0;
  transform:rotate(-28deg);
  transform-origin:2px 10px;
}
.child-icon-relock span{
  left:25px;
  top:8px;
  width:8px;
  height:9px;
  border:2px solid #fff;
  border-bottom:0;
  border-radius:9px 9px 0 0;
}
.feature-mode-title{
  margin:18px 0 12px;
  font-size:3rem;
  line-height:1;
  letter-spacing:0;
  white-space:nowrap;
}
.summary-strip{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
  margin-top:24px;
}
.mode-summary{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
  margin-top:16px;
}
.summary-item{
  padding:20px;
  border-radius:24px;
  background:#fff;
  box-shadow:var(--shadow);
}
.summary-item strong{
  display:block;
  margin-bottom:8px;
  font-size:1.15rem;
}
.summary-item span{color:#5e6b84}
.doc-page{
  background:#fff;
  border:1px solid rgba(16,26,46,.07);
  border-radius:34px;
  box-shadow:var(--shadow);
  padding:30px;
}
.legal-page > h1,
.legal-page > h2{
  margin:14px 0 12px;
  font-size:clamp(2rem,4vw,3rem);
  letter-spacing:-.045em;
}
.legal-meta{
  display:grid;
  gap:6px;
  margin:18px 0 22px;
  padding:18px;
  border-radius:18px;
  background:rgba(91,140,255,.08);
  border:1px solid rgba(91,140,255,.16);
}
.legal-meta p{
  margin:0;
  color:#33415f;
}
.doc-toc{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin:20px 0 0;
}
.doc-toc a{
  padding:10px 14px;
  border-radius:999px;
  background:rgba(91,140,255,.08);
  color:#2950b6;
  font-weight:600;
}
.doc-section{
  padding:28px 0;
  border-bottom:1px solid rgba(16,26,46,.07);
}
.doc-section:last-child{border-bottom:none;padding-bottom:0}
.doc-section h2{
  margin:0 0 14px;
  font-size:1.8rem;
  letter-spacing:-.04em;
}
.doc-section h3{
  margin:22px 0 10px;
  font-size:1.12rem;
}
.doc-section p,.doc-section li{
  color:#4a5a76;
}
.doc-section ul{
  margin:0;
  padding-left:20px;
}
.contact-grid{
  display:grid;
  grid-template-columns:.92fr 1.08fr;
  gap:24px;
}
.contact-card{
  padding:28px;
  border-radius:30px;
  background:#fff;
  border:1px solid rgba(16,26,46,.06);
  box-shadow:var(--shadow);
}
.contact-list{
  display:grid;
  gap:14px;
  margin-top:18px;
}
.contact-row{
  padding:18px;
  border-radius:20px;
  background:var(--surface-3);
}
.contact-row strong{
  display:block;
  margin-bottom:6px;
}
.form-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}
.form-grid .full{grid-column:1/-1}
.field{
  display:grid;
  gap:8px;
}
.field label{
  font-size:.88rem;
  font-weight:600;
  color:#2d3c59;
}
.field input,
.field select,
.field textarea{
  width:100%;
  border:1px solid rgba(16,26,46,.12);
  background:#fbfcff;
  border-radius:18px;
  padding:14px 16px;
  color:#132038;
  outline:none;
  transition:border-color .2s ease, box-shadow .2s ease;
}
.field textarea{min-height:152px;resize:vertical}
.field-meta{
  display:flex;
  justify-content:flex-end;
  color:#6b7890;
  font-size:.82rem;
}
.field-meta.is-near-limit{
  color:#a15c00;
  font-weight:700;
}
.send-check{
  display:inline-flex;
  width:auto;
  max-width:100%;
  gap:7px;
  align-items:center;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  cursor:pointer;
  box-shadow:none;
  transition:color .2s ease;
}
.send-check input{
  appearance:auto;
  -webkit-appearance:auto;
  position:static;
  width:14px;
  height:14px;
  min-width:14px;
  padding:0;
  margin:0;
  border:0;
  border-radius:3px;
  background:initial;
  accent-color:#2d7cff;
  cursor:pointer;
  box-shadow:none;
  transform:none;
  transition:box-shadow .18s ease;
}
.send-check input::after{
  content:none;
}
.send-check input:checked{
  box-shadow:none;
}
.send-check input:checked::after{
  content:none;
}
.send-check span{
  color:#2d3c59;
  font-size:.9rem;
  line-height:1;
}
.send-check:hover{
  color:#1d5bbf;
  box-shadow:none;
}
.send-check:focus-within{
  box-shadow:none;
}
.field input:focus,
.field select:focus,
.field textarea:focus{
  border-color:rgba(91,140,255,.55);
  box-shadow:0 0 0 4px rgba(91,140,255,.12);
}
.form-note{
  margin-top:14px;
  color:#64728c;
  font-size:.92rem;
}
.cta-band{
  padding:34px;
  border-radius:8px;
  background:
    radial-gradient(circle at 100% 0%, rgba(105,201,255,.24), transparent 28%),
    linear-gradient(120deg,#ffffff 0%, #eef7ff 52%, #dffaff 100%);
  color:var(--text);
  box-shadow:0 24px 70px rgba(50,87,108,.16);
  border:1px solid rgba(16,26,46,.08);
}
.cta-band h2{
  margin:0 0 10px;
  font-size:clamp(2rem,4vw,3.2rem);
  line-height:.95;
  letter-spacing:-.06em;
}
.cta-band p{
  margin:0;
  max-width:58ch;
  color:#5b6880;
}
.cta-band .btn.secondary{
  background:#fff;
  border-color:rgba(16,26,46,.10);
  color:#1a2948;
}
.cta-actions{
  display:flex;
  flex-wrap:wrap;
  gap:14px;
  margin-top:20px;
}
.faq{
  display:grid;
  gap:14px;
}
.faq details{
  background:#fff;
  border:1px solid rgba(16,26,46,.07);
  border-radius:24px;
  padding:18px 22px;
  box-shadow:var(--shadow);
}
.faq summary{
  list-style:none;
  cursor:pointer;
  font-weight:700;
  letter-spacing:-.02em;
  color:#1b2944;
}
.faq summary::-webkit-details-marker{display:none}
.faq details p{
  margin:12px 0 0;
  color:#5f6c84;
}
.faq-page .doc-section .faq{
  margin-top:14px;
}
.faq-page .doc-page{
  opacity:1;
  transform:none;
}
.pricing .section{
  padding:58px 0;
}
.pricing .pricing-overview{
  padding-bottom:36px;
}
.pricing .pricing-comparison{
  padding-top:32px;
}
.pricing .section.tight{
  padding:46px 0;
}
.pricing .section-head{
  margin-bottom:22px;
}
.pricing .section-head h2{
  margin-top:10px;
}
.pricing .pricing-comparison .section-head{
  margin-bottom:16px;
}
.pricing .pricing-comparison .section-head h2{
  margin-top:0;
}
.pricing .pricing-grid{
  gap:16px;
  margin-top:20px;
}
.pricing .price-card{
  padding:24px;
  border-radius:8px;
}
.pricing .price-card.featured{
  padding:24px;
}
.pricing .price-card h3{
  margin:0 0 8px;
}
.pricing .price{
  margin:14px 0 16px;
}
.pricing .price-features{
  gap:9px;
  margin:16px 0 18px;
}
.pricing .price-note{
  margin-top:14px;
  padding:12px 14px;
  border-radius:8px;
}
.pricing .compare-stack{
  gap:14px;
}
.pricing .compare-block{
  border-radius:22px;
}
.pricing .compare-block-head{
  padding:14px 16px 4px;
}
.pricing .compare-index{
  width:32px;
  height:32px;
  border-radius:12px;
}
.pricing .compare-block h3{
  font-size:1.2rem;
}
.pricing .compare-block .compare-wrap{
  padding:0 16px 12px;
}
.pricing .compare-table{
  border-radius:16px;
  table-layout:fixed;
}
.pricing .compare-table th,
.pricing .compare-table td{
  padding:7px 10px;
  line-height:1.28;
}
.pricing .compare-table th:first-child,
.pricing .compare-table td:first-child{
  width:28%;
}
.pricing .compare-table th:nth-child(2),
.pricing .compare-table th:nth-child(3),
.pricing .compare-table th:nth-child(4),
.pricing .compare-table td:nth-child(2),
.pricing .compare-table td:nth-child(3),
.pricing .compare-table td:nth-child(4){
  width:11%;
  text-align:center;
}
.pricing .compare-table th:nth-child(5),
.pricing .compare-table td:nth-child(5){
  width:39%;
}
.pricing .compare-table thead th{
  font-size:.76rem;
  vertical-align:middle;
}
.pricing .compare-table td.plan-cell{
  min-width:92px;
  vertical-align:middle;
}
.pricing .table-mark{
  min-width:24px;
  height:24px;
  font-size:.86rem;
}
.pricing .table-value{
  min-height:24px;
  padding:4px 8px;
}
.pricing .compare-block .compare-footnote{
  margin:-2px 16px 12px;
  padding:9px 12px;
  border-radius:14px;
}
.pricing .faq{
  gap:10px;
}
.pricing .faq details{
  padding:14px 18px;
  border-radius:18px;
}
.pricing .cta-band{
  padding:28px;
}
.footer{
  background:linear-gradient(120deg,#f5fbff 0%, #e8f8ff 52%, #dffaff 100%);
  color:var(--text);
  padding:54px 0 34px;
  margin-top:40px;
  border-top:1px solid rgba(16,26,46,.08);
}
.footer-grid{
  display:grid;
  grid-template-columns:1.2fr .8fr .8fr;
  gap:20px;
}
.footer h4{
  margin:0 0 14px;
  font-size:1rem;
}
.footer p,.footer a{
  color:#5b6880;
}
.footer-links{
  display:grid;
  gap:10px;
}
.footer-bottom{
  margin-top:26px;
  padding-top:18px;
  border-top:1px solid rgba(16,26,46,.08);
  color:#6d788d;
  font-size:.9rem;
}
.reveal{
  opacity:0;
  transform:translateY(24px);
  transition:opacity .8s var(--ease), transform .8s var(--ease);
}
.reveal.is-visible{
  opacity:1;
  transform:none;
}
.price-card.featured.reveal.is-visible{
  transform:translateY(-10px);
}
@media (max-width: 1120px){
  .hero-grid,
  .showcase,
  .callout-grid,
  .contact-grid{
    grid-template-columns:1fr;
  }
  .hero-visual{min-height:560px}
  .home-hero-art img{margin:0 auto}
  .home-hero-note{left:50%;transform:translateX(-50%)}
  .story-panel,
  .story-panel.reverse{
    grid-template-columns:1fr;
  }
  .story-panel.reverse .story-media,
  .story-panel.reverse .story-copy{
    order:initial;
  }
  .setup-timeline{grid-template-columns:repeat(2,minmax(0,1fr))}
  .grid.cols-4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .timeline{grid-template-columns:repeat(2,minmax(0,1fr))}
  .summary-strip{grid-template-columns:1fr}
}
@media (max-width: 1040px){
  .nav-links,.nav-actions{display:none}
  .mobile-toggle{display:grid;place-items:center}
  .mobile-panel.is-open{display:block}
}
@media (max-width: 920px){
  .nav-links,.nav-actions{display:none}
  .mobile-toggle{display:grid;place-items:center}
  .mobile-panel.is-open{display:block}
  .hero-meta,
  .hero-subgrid,
  .pricing-grid,
  .grid.cols-3,
  .split-panels{
    grid-template-columns:1fr;
  }
  .grid.cols-2{grid-template-columns:1fr}
  .section-head{
    grid-template-columns:1fr;
    align-items:start;
  }
  .setup-section .section-head p,
  .balance-section .section-head p{
    white-space:normal;
  }
  .footer-grid{
    grid-template-columns:1fr;
  }
  .price-card.featured{
    transform:none;
  }
  .price-card.featured.reveal.is-visible{
    transform:none;
  }
  .reward-loop::before{
    display:none;
  }
  .closed-core-loop{
    grid-template-columns:1fr;
    grid-template-areas:none;
  }
  .closed-core-loop .reward-card{
    grid-area:auto;
    overflow:hidden;
  }
  .closed-core-loop .reward-card::before{
    display:none;
  }
  .reward-card{
    min-height:0;
    grid-template-columns:52px 1fr;
    column-gap:14px;
    align-items:center;
  }
  .reward-card .reward-icon,
  .reward-card .loop-icon{
    grid-row:1 / span 3;
    grid-column:1;
  }
  .reward-card .reward-step-label,
  .reward-card strong,
  .reward-card .reward-copy{
    grid-column:2;
  }
  .difference-section{
    padding:66px 0 56px;
  }
  .difference-copy h2{
    font-size:3.4rem;
    line-height:1.04;
  }
  .story-copy h3{font-size:2.45rem}
  .showcase-title{font-size:2.6rem}
  .feature-mode-title{font-size:2.7rem}
}
@media (max-width: 720px){
  :root{
    --header-height:66px;
    --hero-title-size:clamp(2.15rem, 11vw, 3.1rem);
  }
  .container{width:min(var(--container), calc(100% - 32px))}
  .hero-grid{padding:76px 0 56px}
  .home-hero .hero-grid{padding:34px 0 48px}
  .home-hero-art img{width:100%}
  .home-hero-note{
    position:static;
    transform:none;
    margin-top:12px;
    max-width:none;
  }
  .home-hero .hero-grid{
    display:grid;
    grid-template-columns:1fr;
    gap:26px;
    align-items:start;
  }
  .home-hero .hero-copy h1{
    font-size:2.55rem;
    line-height:1.04;
    letter-spacing:0;
  }
  .home-hero .hero-copy p{
    font-size:1rem;
    line-height:1.62;
  }
  .home-hero .hero-actions{
    gap:10px;
    margin:22px 0 18px;
  }
  .home-hero .hero-actions .btn{
    flex:1 1 100%;
  }
  .home-hero .closed-core-loop{
    display:grid;
    grid-template-columns:1fr;
    gap:8px;
    margin-top:0;
  }
  .home-hero .closed-core-loop .reward-card{
    min-height:0;
    grid-template-columns:42px 1fr;
    grid-template-rows:auto auto;
    align-items:center;
    column-gap:10px;
    row-gap:2px;
    padding:10px 12px;
    border-radius:8px;
    box-shadow:0 10px 22px rgba(50,87,108,.10);
    animation:none;
  }
  .home-hero .closed-core-loop .reward-card .loop-icon{
    grid-row:1 / span 2;
    grid-column:1;
    width:38px;
    height:38px;
    border-radius:12px;
    transform:scale(.9);
    transform-origin:center;
  }
  .home-hero .closed-core-loop .reward-step-label{
    display:none;
  }
  .home-hero .closed-core-loop .reward-card strong{
    grid-column:2;
    margin:0;
    font-size:.96rem;
    line-height:1.18;
  }
  .home-hero .closed-core-loop .reward-card .reward-copy{
    grid-column:2;
    font-size:.78rem;
    line-height:1.32;
  }
  .home-hero-art{
    margin-top:2px;
  }
  .home-hero-art::before{
    inset:12px 0 8px 0;
    filter:blur(18px);
  }
  .home-hero-art img{
    max-width:460px;
    margin:0 auto;
    box-shadow:0 18px 48px rgba(50,87,108,.14);
  }
  .page-hero .wrap{padding:34px 0 24px}
  .page-hero + .section.light{padding-top:24px}
  .program-access .section{padding:60px 0}
  .program-access .section.tight{padding:48px 0}
  .phone{width:min(100%, 330px)}
  .phone-screen{min-height:590px}
  .float-a{left:0}
  .float-b{right:0}
  .section{padding:76px 0}
  .difference-section{
    padding:50px 0 44px;
  }
  .difference-copy{
    text-align:left;
  }
  .difference-copy h2{
    font-size:2.35rem;
    line-height:1.08;
  }
  .difference-copy .difference-lead{
    margin-top:18px;
  }
  .difference-copy p{
    max-width:none;
    font-size:1rem;
    line-height:1.68;
  }
  .difference-copy p strong{
    font-size:1.08rem;
    line-height:1.55;
  }
  .difference-cross{
    white-space:normal;
    text-decoration:line-through;
    text-decoration-color:#e45564;
    text-decoration-thickness:2px;
    text-decoration-skip-ink:none;
  }
  .difference-cross::after{
    display:none;
  }
  .story-panel{padding:14px;gap:18px}
  .story-copy{padding:4px}
  .story-copy h3{font-size:2rem}
  .showcase-title{font-size:2.15rem}
  .feature-mode-title{font-size:2rem}
  .features .feature-loop-copy{font-size:.96rem}
  .feature-loop-icons{
    gap:10px;
    padding:12px 10px;
  }
  .feature-loop-item:not(:last-child)::after{
    right:-5px;
    top:16px;
    font-size:.82rem;
  }
  .feature-loop-item strong{
    font-size:.68rem;
  }
  .setup-timeline{grid-template-columns:1fr}
  .card,.showcase-panel,.contact-card,.doc-page,.cta-band,.callout,.price-card{padding:22px}
  .compare-block-head{padding:20px 18px 8px}
  .compare-block .compare-wrap{padding:0 18px 18px}
  .compare-block .compare-footnote{margin:-4px 18px 18px}
  .timeline{grid-template-columns:1fr}
  .metric,.summary-item{padding:18px}
  .form-grid{grid-template-columns:1fr}
}
@media (max-width: 420px){
  .home-hero .hero-copy h1{
    font-size:2.25rem;
  }
  .home-hero .closed-core-loop .reward-card{
    grid-template-rows:auto;
    min-height:58px;
  }
  .home-hero .closed-core-loop .reward-card .loop-icon{
    grid-row:1;
  }
  .home-hero .closed-core-loop .reward-card .reward-copy{
    display:none;
  }
  .feature-mode-title{font-size:1.65rem}
}

/* Updates index and article pages */
.updates-page,
.update-article-page{
  background:#f7f9fd;
}
.updates-page .footer,
.update-article-page .footer{
  margin-top:0;
}
.updates-page .reveal,
.update-article-page .reveal{
  opacity:1;
  transform:none;
  transition:none;
}
.updates-hero,
.update-article-hero{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  background:
    radial-gradient(circle at 88% 14%, rgba(139,109,255,.13), transparent 30%),
    radial-gradient(circle at 8% 86%, rgba(105,201,255,.2), transparent 32%),
    linear-gradient(120deg,#f5fbff 0%,#e8f8ff 52%,#dffaff 100%);
  border-bottom:1px solid rgba(29,92,120,.12);
}
.updates-hero::before,
.update-article-hero::before{
  content:"";
  position:absolute;
  z-index:-1;
  width:380px;
  height:380px;
  top:-230px;
  right:-90px;
  border:1px solid rgba(91,140,255,.1);
  border-radius:50%;
  box-shadow:0 0 0 44px rgba(105,201,255,.035);
  pointer-events:none;
}
.updates-hero .container,
.update-article-hero .container{
  position:relative;
  z-index:1;
}
.updates-intro{
  max-width:860px;
  padding:clamp(58px,8vw,92px) 0 clamp(52px,7vw,78px);
}
.updates-intro h1{
  max-width:14ch;
  margin:18px 0 18px;
  font-size:clamp(2.7rem,6.2vw,5.2rem);
  line-height:.98;
  letter-spacing:-.055em;
}
.updates-intro p{
  max-width:62ch;
  margin:0;
  color:#42516c;
  font-size:clamp(1.05rem,1.8vw,1.22rem);
  line-height:1.68;
}
.updates-list,
.updates-section{
  padding:clamp(54px,7vw,84px) 0 clamp(72px,9vw,112px);
  background:
    radial-gradient(circle at 100% 0%, rgba(105,201,255,.07), transparent 28%),
    linear-gradient(180deg,#fff 0%,#f7f9fd 100%);
}
.updates-list__header,
.updates-section__header{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:24px;
  margin-bottom:30px;
}
.updates-list__header h2,
.updates-section__header h2{
  margin:0;
  font-size:clamp(2rem,4.2vw,3.5rem);
  line-height:1.02;
  letter-spacing:-.05em;
}
.updates-list__header p,
.updates-section__header p{
  max-width:54ch;
  margin:0;
  color:#5b6880;
}
.updates-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:24px;
}
.updates-pagination{
  display:grid;
  grid-template-columns:1fr auto 1fr;
  align-items:center;
  gap:16px;
  margin-top:38px;
  padding-top:28px;
  border-top:1px solid rgba(16,26,46,.09);
}
.updates-pagination > :last-child{
  justify-self:end;
}
.updates-pagination__status{
  color:#5b6880;
  font-size:.9rem;
  font-weight:750;
  white-space:nowrap;
}
.update-card{
  position:relative;
  display:flex;
  min-width:0;
  flex-direction:column;
  overflow:hidden;
  border:1px solid rgba(16,26,46,.08);
  border-radius:22px;
  background:#fff;
  box-shadow:0 22px 60px rgba(50,87,108,.13);
  transition:
    transform .24s var(--ease),
    border-color .24s var(--ease),
    box-shadow .24s var(--ease);
}
.update-card:focus-within{
  border-color:rgba(91,140,255,.42);
  box-shadow:
    0 22px 60px rgba(50,87,108,.15),
    0 0 0 4px rgba(91,140,255,.1);
}
.update-card--featured{
  grid-column:1 / -1;
  display:grid;
  grid-template-columns:minmax(300px,.82fr) minmax(0,1.18fr);
  min-height:480px;
}
.update-card__media{
  position:relative;
  display:grid;
  width:100%;
  aspect-ratio:4 / 3;
  place-items:center;
  overflow:hidden;
  padding:16px;
  background:
    radial-gradient(circle at 20% 14%, rgba(105,201,255,.3), transparent 36%),
    linear-gradient(145deg,#f7fcff,#e7f5ff 54%,#eef0ff);
  border-bottom:1px solid rgba(16,26,46,.07);
}
.update-card__media img{
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center;
  border-radius:14px;
  filter:drop-shadow(0 18px 30px rgba(50,87,108,.16));
}
.update-card--featured .update-card__media{
  min-height:480px;
  aspect-ratio:auto;
  padding:24px;
  border-right:1px solid rgba(16,26,46,.07);
  border-bottom:0;
}
.update-card--featured .update-card__media img{
  max-height:590px;
}
.update-card__body{
  display:flex;
  min-width:0;
  flex:1;
  flex-direction:column;
  align-items:flex-start;
  padding:26px;
}
.update-card--featured .update-card__body{
  justify-content:center;
  padding:clamp(32px,5vw,64px);
}
.update-card__meta,
.update-article-meta{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px 12px;
  margin:0 0 14px;
  color:#52617a;
  font-size:.82rem;
  font-weight:750;
  letter-spacing:.02em;
}
.update-card__category,
.update-article-category{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:5px 10px;
  border:1px solid rgba(91,140,255,.15);
  border-radius:999px;
  color:#315aa9;
  background:rgba(91,140,255,.08);
  font-size:.74rem;
  font-weight:850;
  letter-spacing:.08em;
  line-height:1;
  text-transform:uppercase;
}
.update-card__meta time,
.update-article-meta time{
  white-space:nowrap;
}
.update-card__title{
  margin:0 0 14px;
  color:#14213a;
  font-size:clamp(1.45rem,2.3vw,2rem);
  line-height:1.13;
  letter-spacing:-.035em;
}
.update-card--featured .update-card__title{
  max-width:18ch;
  font-size:clamp(2.15rem,4.5vw,4rem);
  line-height:1.02;
  letter-spacing:-.05em;
}
.update-card__title a{
  color:inherit;
}
.update-card__summary{
  margin:0;
  color:#5b6880;
  font-size:1rem;
  line-height:1.7;
}
.update-card--featured .update-card__summary{
  max-width:58ch;
  font-size:1.07rem;
}
.update-card__link{
  display:inline-flex;
  align-items:center;
  gap:9px;
  margin-top:24px;
  color:#315fc5;
  font-weight:800;
}
.update-card__link::after{
  content:"\2192";
  transition:transform .2s var(--ease);
}
.update-card__link:hover::after{
  transform:translateX(4px);
}
.update-card__title a:focus-visible,
.update-card__media:focus-visible,
.update-card__link:focus-visible,
.update-breadcrumbs a:focus-visible,
.update-article-content a:focus-visible,
.update-article-resources a:focus-visible,
.update-resources a:focus-visible{
  outline:3px solid rgba(91,140,255,.5);
  outline-offset:4px;
  border-radius:4px;
}
.update-breadcrumbs{
  padding-top:28px;
  color:#52617a;
  font-size:.9rem;
  font-weight:700;
}
.update-breadcrumbs ol{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:7px;
  margin:0;
  padding:0;
  list-style:none;
}
.update-breadcrumbs li{
  display:inline-flex;
  align-items:center;
  gap:7px;
}
.update-breadcrumbs li + li::before{
  content:"/";
  color:#91a0b8;
}
.update-breadcrumbs a{
  color:#315aa9;
  text-decoration:underline;
  text-decoration-color:rgba(49,90,169,.3);
  text-underline-offset:3px;
}
.update-breadcrumbs [aria-current="page"]{
  color:#66748a;
}
.update-article-header{
  max-width:990px;
  padding:clamp(34px,5vw,56px) 0 clamp(44px,6vw,68px);
}
.update-article-header h1{
  max-width:18ch;
  margin:16px 0 20px;
  font-size:clamp(2.65rem,6.4vw,5.4rem);
  line-height:.98;
  letter-spacing:-.057em;
}
.update-article-standfirst{
  max-width:64ch;
  margin:0;
  color:#42516c;
  font-size:clamp(1.12rem,2vw,1.3rem);
  line-height:1.68;
}
.update-article-byline{
  color:#42516c;
}
.update-article-figure{
  width:min(940px,calc(100% - 48px));
  margin:clamp(38px,6vw,66px) auto;
  padding:18px;
  border:1px solid rgba(16,26,46,.08);
  border-radius:24px;
  background:
    radial-gradient(circle at 16% 12%, rgba(105,201,255,.24), transparent 34%),
    linear-gradient(145deg,#f8fcff,#eaf6ff 58%,#f1f0ff);
  box-shadow:0 26px 76px rgba(50,87,108,.16);
}
.update-article-figure img{
  width:auto;
  max-width:100%;
  max-height:760px;
  margin:0 auto;
  object-fit:contain;
  border-radius:16px;
}
.update-article-figure figcaption{
  max-width:70ch;
  margin:14px auto 0;
  padding:0 4px;
  color:#66748a;
  font-size:.86rem;
  line-height:1.55;
  text-align:center;
}
.update-article-main,
.update-article-section{
  padding:clamp(56px,8vw,92px) 0 clamp(72px,10vw,116px);
  background:#fff;
}
.update-article-content{
  width:min(72ch,100%);
  margin:0 auto;
  color:#35445f;
  font-size:1.09rem;
  line-height:1.78;
}
.update-article-content > :first-child{
  margin-top:0;
}
.update-article-content > :last-child{
  margin-bottom:0;
}
.update-article-content p{
  margin:0 0 1.35em;
}
.update-article-content h2{
  margin:2.15em 0 .62em;
  color:#14213a;
  font-size:clamp(1.75rem,3.4vw,2.45rem);
  line-height:1.12;
  letter-spacing:-.04em;
}
.update-article-content h3{
  margin:1.8em 0 .55em;
  color:#1b2944;
  font-size:clamp(1.3rem,2.5vw,1.7rem);
  line-height:1.2;
  letter-spacing:-.025em;
}
.update-article-content ul,
.update-article-content ol{
  margin:0 0 1.5em;
  padding-left:1.35em;
}
.update-article-content li{
  padding-left:.28em;
}
.update-article-content li + li{
  margin-top:.62em;
}
.update-article-content strong{
  color:#1d2c48;
}
.update-article-content a:not(.btn),
.update-article-resources a,
.update-resources a{
  color:#285ebc;
  font-weight:700;
  text-decoration:underline;
  text-decoration-color:rgba(40,94,188,.38);
  text-decoration-thickness:1.5px;
  text-underline-offset:3px;
}
.update-article-content a:not(.btn):hover,
.update-article-resources a:hover,
.update-resources a:hover{
  color:#173f8e;
  text-decoration-color:currentColor;
}
.update-article-lead,
.update-article-page .article-lead{
  margin-bottom:1.45em;
  color:#263753;
  font-size:clamp(1.18rem,2.2vw,1.32rem);
  font-weight:550;
  line-height:1.68;
}
.update-article-callout,
.update-article-page .article-callout{
  position:relative;
  margin:2.4em 0;
  overflow:hidden;
  padding:26px 28px 26px 32px;
  border:1px solid rgba(91,140,255,.16);
  border-radius:18px;
  background:
    radial-gradient(circle at 100% 0%, rgba(105,201,255,.17), transparent 36%),
    linear-gradient(135deg,#f8fcff,#edf6ff);
  box-shadow:0 16px 38px rgba(50,87,108,.09);
}
.update-article-callout::before,
.update-article-page .article-callout::before{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:5px;
  background:linear-gradient(180deg,var(--cyan),var(--violet));
}
.update-article-callout h2,
.update-article-callout h3,
.update-article-page .article-callout h2,
.update-article-page .article-callout h3{
  margin:0 0 10px;
  font-size:1.35rem;
  line-height:1.2;
  letter-spacing:-.02em;
}
.update-article-callout p:last-child,
.update-article-page .article-callout p:last-child{
  margin-bottom:0;
}
.update-article-content blockquote{
  margin:2.25em 0;
  padding:5px 0 5px 24px;
  border-left:4px solid #69c9ff;
  color:#263753;
  font-size:1.16rem;
  font-weight:650;
  line-height:1.65;
}
.update-article-content blockquote p:last-child{
  margin-bottom:0;
}
.update-article-loop,
.update-article-page .article-loop{
  margin:2.5em 0;
}
.update-article-loop > h2,
.update-article-loop > h3,
.update-article-page .article-loop > h2,
.update-article-page .article-loop > h3{
  margin-top:0;
}
.update-loop,
.update-article-loop ol,
.update-article-page .article-loop ol{
  counter-reset:update-loop;
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:10px;
  margin:1.35em 0 0;
  padding:0;
  list-style:none;
}
.update-loop > li,
.update-article-loop ol > li,
.update-article-page .article-loop ol > li{
  counter-increment:update-loop;
  display:flex;
  min-width:0;
  min-height:142px;
  flex-direction:column;
  align-items:flex-start;
  gap:10px;
  margin:0;
  padding:16px 14px;
  border:1px solid rgba(16,26,46,.08);
  border-radius:16px;
  color:#42516c;
  background:linear-gradient(180deg,#fff,#f2f8ff);
  box-shadow:0 12px 28px rgba(50,87,108,.08);
  font-size:.88rem;
  line-height:1.5;
}
.update-loop > li::before,
.update-article-loop ol > li::before,
.update-article-page .article-loop ol > li::before{
  content:counter(update-loop,decimal-leading-zero);
  display:grid;
  width:34px;
  height:34px;
  place-items:center;
  border-radius:11px;
  color:#fff;
  background:linear-gradient(135deg,var(--blue),var(--violet));
  box-shadow:0 10px 22px rgba(91,140,255,.25);
  font-size:.72rem;
  font-weight:900;
  letter-spacing:.06em;
}
.update-loop > li strong,
.update-article-loop ol > li strong,
.update-article-page .article-loop ol > li strong{
  display:block;
  color:#1b2944;
  font-size:.95rem;
  line-height:1.25;
}
.update-article-resources,
.update-resources{
  margin:2.6em 0 0;
  padding:28px;
  border:1px solid rgba(16,26,46,.08);
  border-radius:18px;
  background:#f7f9fd;
}
.update-article-resources h2,
.update-article-resources h3,
.update-resources h2,
.update-resources h3{
  margin:0 0 12px;
  color:#1b2944;
  font-size:1.3rem;
  letter-spacing:-.02em;
}
.update-article-resources ul,
.update-resources ul{
  margin:0;
  padding-left:1.2em;
}
.update-article-resources li + li,
.update-resources li + li{
  margin-top:9px;
}
.update-article-actions{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  width:min(72ch,100%);
  margin:clamp(46px,7vw,72px) auto 0;
  padding-top:28px;
  border-top:1px solid rgba(16,26,46,.09);
}
.update-article-actions .btn.secondary{
  color:#1a2948;
  background:#fff;
  border-color:rgba(16,26,46,.1);
}
.related-updates{
  padding:clamp(54px,7vw,82px) 0;
  background:#f7f9fd;
}
.related-updates .updates-grid{
  margin-top:26px;
}

@media (hover:hover){
  .update-card:hover{
    transform:translateY(-5px);
    border-color:rgba(91,140,255,.2);
    box-shadow:0 30px 74px rgba(50,87,108,.18);
  }
}
@media (max-width:1120px){
  .nav-links,
  .nav-actions{
    display:none;
  }
  .mobile-toggle{
    display:grid;
    place-items:center;
  }
  .mobile-panel.is-open{
    display:block;
  }
}
@media (max-width:1020px){
  .updates-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .update-loop,
  .update-article-loop ol,
  .update-article-page .article-loop ol{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}
@media (max-width:820px){
  .updates-list__header,
  .updates-section__header{
    align-items:flex-start;
    flex-direction:column;
  }
  .update-card--featured{
    display:flex;
    min-height:0;
  }
  .update-card--featured .update-card__media{
    min-height:0;
    aspect-ratio:4 / 3;
    border-right:0;
    border-bottom:1px solid rgba(16,26,46,.07);
  }
  .update-card--featured .update-card__media img{
    max-height:none;
  }
  .update-card--featured .update-card__body{
    justify-content:flex-start;
    padding:30px;
  }
  .update-card--featured .update-card__title{
    max-width:22ch;
    font-size:clamp(2rem,7vw,3.25rem);
  }
  .update-article-figure{
    width:min(940px,calc(100% - 32px));
  }
}
@media (max-width:720px){
  .updates-intro{
    padding:48px 0 52px;
  }
  .updates-intro h1{
    max-width:none;
    font-size:clamp(2.45rem,12vw,3.4rem);
    letter-spacing:-.045em;
  }
  .updates-grid{
    grid-template-columns:1fr;
    gap:18px;
  }
  .update-card--featured{
    grid-column:auto;
  }
  .update-card__body,
  .update-card--featured .update-card__body{
    padding:24px;
  }
  .update-card__title{
    font-size:1.65rem;
  }
  .update-card--featured .update-card__title{
    font-size:2.15rem;
  }
  .update-breadcrumbs{
    padding-top:20px;
    font-size:.84rem;
  }
  .update-article-header{
    padding:30px 0 48px;
  }
  .update-article-header h1{
    max-width:none;
    font-size:clamp(2.45rem,12vw,3.55rem);
    letter-spacing:-.048em;
  }
  .update-article-figure{
    margin:32px auto 42px;
    padding:10px;
    border-radius:18px;
  }
  .update-article-figure img{
    max-height:none;
    border-radius:12px;
  }
  .update-article-main,
  .update-article-section{
    padding:54px 0 72px;
  }
  .update-article-content{
    font-size:1.03rem;
    line-height:1.74;
  }
  .update-article-callout,
  .update-article-page .article-callout,
  .update-article-resources,
  .update-resources{
    padding:22px;
  }
  .update-loop,
  .update-article-loop ol,
  .update-article-page .article-loop ol{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media (max-width:520px){
  .update-card__media,
  .update-card--featured .update-card__media{
    aspect-ratio:1 / 1;
    padding:12px;
  }
  .update-loop,
  .update-article-loop ol,
  .update-article-page .article-loop ol{
    grid-template-columns:1fr;
  }
  .update-loop > li,
  .update-article-loop ol > li,
  .update-article-page .article-loop ol > li{
    min-height:0;
  }
  .update-article-actions{
    align-items:stretch;
    flex-direction:column;
  }
  .update-article-actions .btn{
    width:100%;
  }
  .updates-pagination{
    grid-template-columns:1fr;
  }
  .updates-pagination > *,
  .updates-pagination > :last-child{
    width:100%;
    justify-self:stretch;
    text-align:center;
  }
  .updates-pagination > span:empty{
    display:none;
  }
}
@media (prefers-reduced-motion:reduce){
  .update-card,
  .update-card__link::after{
    transition:none;
  }
  .update-card:hover{
    transform:none;
  }
}
