/* ============================================================
   Fraktus landing — OS, docs, coverage, helpers, crisis,
   trust, today, final, footer, responsive
   ============================================================ */

/* ---------- 04 care OS (forest) ---------- */
.os{background:
  radial-gradient(90% 60% at 50% 0%, rgba(141,196,166,0.10), rgba(141,196,166,0) 60%),
  linear-gradient(165deg,var(--forest-900),var(--forest-950) 70%);
  padding:150px 0 160px;position:relative;overflow:hidden;}
.os::before,.os::after{content:"";position:absolute;left:0;right:0;height:90px;pointer-events:none;}
.os-aurora{position:absolute;inset:0;pointer-events:none;overflow:hidden;}
.os-aurora i{position:absolute;width:46vw;height:46vw;min-width:480px;min-height:480px;border-radius:50%;
  filter:blur(90px);opacity:.45;will-change:transform;}
.os-aurora .a1{left:-12%;top:-18%;background:radial-gradient(closest-side,rgba(141,196,166,0.20),rgba(141,196,166,0));
  animation:aurora1 calc(22s/var(--motion,1)) ease-in-out infinite alternate;}
.os-aurora .a2{right:-15%;top:24%;background:radial-gradient(closest-side,rgba(232,111,69,0.10),rgba(232,111,69,0));
  animation:aurora2 calc(28s/var(--motion,1)) ease-in-out infinite alternate;}
.os-aurora .a3{left:24%;bottom:-30%;background:radial-gradient(closest-side,rgba(79,134,173,0.12),rgba(79,134,173,0));
  animation:aurora1 calc(26s/var(--motion,1)) ease-in-out infinite alternate-reverse;}
@keyframes aurora1{from{transform:translate(0,0) scale(1);}to{transform:translate(9%,14%) scale(1.18);}}
@keyframes aurora2{from{transform:translate(0,0) scale(1.1);}to{transform:translate(-12%,-8%) scale(0.92);}}
.os-head{text-align:center;max-width:880px;margin:0 auto;position:relative;z-index:2;}
.os-eyebrow{color:var(--forest-glow);}
.os-h{color:var(--forest-ink);margin-left:auto;margin-right:auto;}
.os-h em{color:var(--forest-glow);font-style:italic;}
.os-sub{color:var(--forest-ink-dim);margin-left:auto;margin-right:auto;}
.os-graph{max-width:1000px;margin:56px auto 0;position:relative;z-index:2;}
#graph-svg{width:100%;height:auto;display:block;overflow:visible;}
.g-line{fill:none;stroke:var(--forest-line);stroke-width:1.4;stroke-dasharray:var(--len);stroke-dashoffset:var(--len);
  transition:stroke-dashoffset 1.6s cubic-bezier(.3,.7,.2,1);transition-delay:var(--d,0s);}
.g-glow{fill:none;stroke:rgba(141,196,166,0.12);stroke-width:5;stroke-dasharray:var(--len);stroke-dashoffset:var(--len);
  transition:stroke-dashoffset 1.6s cubic-bezier(.3,.7,.2,1);transition-delay:var(--d,0s);}
.os-graph.in .g-line,.os-graph.in .g-glow{stroke-dashoffset:0;}
.g-node{opacity:0;transform:translateY(16px) scale(.86);transform-origin:center;transform-box:fill-box;
  transition:opacity .7s ease, transform .8s cubic-bezier(.3,1.5,.4,1);transition-delay:var(--d,0s);}
.os-graph.in .g-node{opacity:1;transform:none;}
.g-node rect{fill:var(--forest-800);stroke:rgba(141,196,166,0.28);stroke-width:1;rx:14;}
.g-node text{font-family:var(--font-ui);font-size:14px;font-weight:700;fill:var(--forest-ink);}
.g-node .g-sub{font-size:10.5px;font-weight:600;fill:var(--forest-ink-dim);}
.g-node.center rect{fill:#24433a;stroke:var(--forest-glow);stroke-width:1.4;}
.os-graph.in .g-node.center rect{animation:centerBreath calc(4.5s/var(--motion,1)) ease-in-out infinite;}
@keyframes centerBreath{
  0%,100%{filter:drop-shadow(0 0 12px rgba(141,196,166,0.25));}
  50%{filter:drop-shadow(0 0 30px rgba(141,196,166,0.65));}}
.g-pulse{fill:var(--forest-glow);opacity:0;filter:drop-shadow(0 0 6px rgba(141,196,166,0.9));}
.os-graph.in .g-pulse{animation:gPulse var(--dur,4s) linear infinite;animation-delay:var(--d,0s);}
@keyframes gPulse{0%{opacity:0;}12%{opacity:.95;}88%{opacity:.95;}100%{opacity:0;}}

/* chaos flowing INTO the graph core */
.os-inflow{position:absolute;inset:0;pointer-events:none;}
.inflow-chip{position:absolute;left:50%;top:50%;white-space:nowrap;
  background:rgba(38,68,55,0.92);color:#cfe2d6;border:1px solid rgba(141,196,166,0.35);
  border-radius:99px;padding:8px 15px;font-size:12.5px;font-weight:700;opacity:0;
  box-shadow:0 6px 18px rgba(0,0,0,0.3);}
.os-graph.in .inflow-chip{animation:inflow var(--dur,6s) cubic-bezier(.5,.1,.6,1) infinite;animation-delay:var(--d,0s);}
@keyframes inflow{
  0%{opacity:0;transform:translate(calc(-50% + var(--sx)),calc(-50% + var(--sy))) rotate(var(--rr)) scale(1);}
  10%{opacity:.95;}
  62%{opacity:.95;}
  78%{opacity:0;transform:translate(-50%,-50%) rotate(0deg) scale(.12);}
  100%{opacity:0;transform:translate(-50%,-50%) scale(.12);}}
.os-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;max-width:1100px;margin:64px auto 0;position:relative;z-index:2;}
.os-card{background:linear-gradient(150deg,rgba(38,68,55,0.65),rgba(28,51,42,0.65));border:1px solid rgba(141,196,166,0.18);
  border-radius:var(--r-md);padding:22px 24px;backdrop-filter:blur(6px);position:relative;overflow:hidden;
  opacity:0;transform:translateY(24px);transition:opacity .8s ease, transform .6s cubic-bezier(.2,.8,.2,1), border-color .3s ease, box-shadow .3s ease;transition-delay:var(--d,0s);}
.os-cards.in .os-card{opacity:1;transform:none;transition-delay:var(--d,0s);}
.os-cards.in .os-card:hover{transform:translateY(-5px);border-color:rgba(141,196,166,0.55);
  box-shadow:0 18px 40px rgba(0,0,0,0.35), 0 0 24px rgba(141,196,166,0.12) inset;transition-delay:0s;}
.os-card::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;opacity:0;
  background:radial-gradient(80% 60% at 50% 0%,rgba(141,196,166,0.14),rgba(141,196,166,0));transition:opacity .3s ease;}
.os-card:hover::after{opacity:1;}
.os-card h4{color:var(--forest-ink);font-size:16.5px;display:flex;align-items:center;gap:10px;font-family:var(--font-display);}
.os-card h4 i{width:9px;height:9px;border-radius:50%;background:var(--forest-glow);display:block;flex-shrink:0;
  box-shadow:0 0 10px rgba(141,196,166,0.6);}
.os-cards.in .os-card h4 i{animation:osDot calc(3.6s/var(--motion,1)) ease-in-out infinite;animation-delay:var(--d,0s);}
@keyframes osDot{0%,100%{box-shadow:0 0 6px rgba(141,196,166,0.4);}50%{box-shadow:0 0 16px rgba(141,196,166,0.95);}}
.os-card p{color:var(--forest-ink-dim);font-size:13.5px;font-weight:500;line-height:1.5;margin-top:8px;text-wrap:pretty;}

/* ---------- 05 docs ---------- */
.docs{padding:150px 0 140px;}
.docs-stage{display:grid;grid-template-columns:minmax(0,1fr) 60px minmax(0,1fr);gap:18px;align-items:center;
  margin-top:52px;}
.doc-paper{padding:24px 26px;overflow:hidden;}
.doc-head{display:flex;gap:14px;align-items:center;margin-bottom:18px;}
.doc-pdfbadge{font-size:10px;font-weight:800;color:var(--rose-700);background:var(--rose-100);
  padding:6px 9px;border-radius:8px;box-shadow:var(--sh-sm);}
.doc-title{font-size:16.5px;font-weight:700;}
.doc-meta{font-size:12.5px;font-weight:600;color:var(--ink-400);margin-top:2px;}
.doc-lines{display:flex;flex-direction:column;gap:9px;}
.doc-line{height:9px;border-radius:5px;background:var(--sunken);box-shadow:var(--sh-in);position:relative;overflow:hidden;}
.doc-line.hl::after{content:"";position:absolute;inset:0;border-radius:5px;background:linear-gradient(90deg,var(--amber-200),var(--clay-200));
  transform:scaleX(0);transform-origin:left;transition:transform .7s cubic-bezier(.2,.8,.2,1);transition-delay:var(--d,0s);}
.docs-stage.scanned .doc-line.hl::after{transform:scaleX(1);}
.scanbeam{position:absolute;left:0;right:0;top:0;height:46px;pointer-events:none;opacity:0;
  background:linear-gradient(180deg,rgba(232,111,69,0) 0%,rgba(232,111,69,0.16) 45%,rgba(232,111,69,0.35) 50%,rgba(232,111,69,0.16) 55%,rgba(232,111,69,0) 100%);}
.docs-stage.scanning .scanbeam{animation:scan calc(1.1s/var(--motion,1)) cubic-bezier(.4,0,.4,1) 1 forwards;}
@keyframes scan{0%{opacity:1;transform:translateY(-30px);}100%{opacity:0;transform:translateY(420px);}}
.doc-arrow{color:var(--ink-300);width:60px;}
.doc-extract{display:flex;flex-direction:column;gap:16px;}
.extract-card{padding:20px 22px;opacity:0;transform:translateX(34px) scale(.95);
  transition:opacity .5s ease, transform .6s cubic-bezier(.3,1.4,.4,1);transition-delay:.35s;}
.extract-card.two{transition-delay:.5s;}
.docs-stage.scanned .extract-card{opacity:1;transform:none;}
.extract-h{font-size:16.5px;font-weight:700;margin-top:12px;line-height:1.3;}
.extract-src{margin-top:10px;font-size:12.5px;font-weight:600;color:var(--ink-500);background:rgba(120,105,90,0.07);
  border-radius:10px;padding:9px 12px;line-height:1.4;}
.extract-src .src-q{color:var(--clay-600);font-family:var(--font-serif);font-size:15px;}
.extract-src .src-pg{font-weight:800;color:var(--clay-600);margin-left:6px;}
.extract-ctas{display:flex;gap:9px;margin-top:14px;flex-wrap:wrap;}
.docs-flow{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px;margin-top:54px;}
.dflow-step{display:inline-flex;align-items:center;gap:7px;background:var(--card-hi);box-shadow:var(--sh-sm);
  border-radius:99px;padding:10px 17px;font-size:13.5px;font-weight:700;color:var(--ink-500);transition:color .3s, box-shadow .3s;}
.dflow-step.lit{color:var(--ink-900);box-shadow:var(--sh-md), 0 0 0 1.5px var(--clay-200);}
.dflow-step.lit i{background:var(--clay-500);}
.dflow-step i{width:7px;height:7px;border-radius:50%;background:var(--ink-300);display:block;transition:background .3s;}
.dflow-sep{color:var(--ink-300);font-weight:800;}
.docs-points{list-style:none;margin:46px auto 0;padding:0;max-width:680px;display:flex;flex-direction:column;gap:0;}
.docs-points li{display:flex;align-items:center;gap:13px;padding:15px 6px;font-size:15.5px;font-weight:600;color:var(--ink-700);
  border-bottom:1px solid var(--hair);}
.docs-points li::before{content:"";width:20px;height:20px;border-radius:50%;flex-shrink:0;
  background:var(--sage-100);box-shadow:var(--sh-sm);
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%233a795b' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 13l4 4 10-10'/%3E%3C/svg%3E");
  background-size:11px;background-position:center;background-repeat:no-repeat;}

/* ---------- 06 coverage chase ---------- */
.coverage{padding:140px 0 150px;background:linear-gradient(180deg,rgba(224,219,211,0) 0%,rgba(224,219,211,0.55) 18%,rgba(224,219,211,0.55) 82%,rgba(224,219,211,0) 100%);}
.boss-stage{display:grid;grid-template-columns:minmax(0,0.9fr) minmax(0,1.1fr);gap:44px;align-items:center;margin-top:54px;}
.boss-letter{position:relative;overflow:hidden;background:linear-gradient(165deg,#2e2a25,#201d19);border-radius:18px;
  padding:30px 30px 34px;box-shadow:0 24px 60px rgba(34,31,27,0.4);transform:perspective(900px) rotateY(4deg) rotateX(1deg);
  transition:transform 1.2s cubic-bezier(.2,.8,.2,1), box-shadow 1.2s ease, filter 1.2s ease;}
.boss-letter-head{color:#f1ede7;font-size:14px;font-weight:700;letter-spacing:.12em;line-height:1.5;margin-bottom:18px;
  border-bottom:1px solid rgba(241,237,231,0.16);padding-bottom:14px;}
.boss-body{display:flex;flex-direction:column;gap:8px;}
.boss-row{height:7px;border-radius:4px;background:rgba(241,237,231,0.16);}
.boss-row.dim{background:rgba(241,237,231,0.08);}
.boss-stamp{position:absolute;inset:auto;left:50%;top:46%;transform:translate(-50%,-50%) rotate(-9deg) scale(2.4);
  font-family:var(--font-display);font-weight:700;font-size:26px;letter-spacing:.18em;color:var(--sage-600);
  border:3px solid var(--sage-600);border-radius:10px;padding:8px 20px;opacity:0;transition:opacity .5s ease .9s, transform .5s cubic-bezier(.3,1.4,.4,1) .9s;}
.boss-stage.sliced .boss-letter{transform:perspective(900px) rotateY(0deg) scale(.94);filter:saturate(.85) brightness(.92);}
.boss-stage.sliced .boss-stamp{opacity:1;transform:translate(-50%,-50%) rotate(-9deg) scale(1);}
.boss-cards{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.boss-card{background:var(--card);border-radius:var(--r-sm);box-shadow:var(--sh-md);padding:17px 19px;
  opacity:0;transform:translateX(-60px) rotate(-2deg);transition:opacity .6s ease, transform .8s cubic-bezier(.3,1.4,.4,1);transition-delay:var(--d,0s);}
.boss-stage.sliced .boss-card{opacity:1;transform:none;}
.boss-card .bc-k{font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;margin-bottom:7px;display:flex;align-items:center;gap:7px;}
.boss-card .bc-k i{width:7px;height:7px;border-radius:50%;display:block;}
.boss-card .bc-v{font-size:14px;font-weight:650;color:var(--ink-900);line-height:1.4;text-wrap:pretty;}
.boss-card .bc-s{font-size:12px;font-weight:600;color:var(--ink-500);margin-top:4px;line-height:1.4;}
.coverage-honesty{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-top:48px;}

/* ---------- 07 helpers orbit ---------- */
.helpers{padding:150px 0;overflow:hidden;}
.point-list{list-style:none;margin:28px 0 0;padding:0;display:flex;flex-direction:column;}
.point-list li{display:flex;align-items:center;gap:13px;padding:13px 4px;font-size:15.5px;font-weight:600;color:var(--ink-700);border-bottom:1px solid var(--hair);}
.point-list li::before{content:"";width:18px;height:18px;border-radius:50%;flex-shrink:0;background:var(--sage-100);
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%233a795b' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 13l4 4 10-10'/%3E%3C/svg%3E");
  background-size:10px;background-position:center;background-repeat:no-repeat;box-shadow:var(--sh-sm);}
.orbit-stage{position:relative;height:480px;}
.shield{position:absolute;left:50%;top:50%;width:330px;height:330px;transform:translate(-50%,-50%);
  border-radius:50%;border:1.5px dashed rgba(58,121,91,0.45);
  background:radial-gradient(closest-side,rgba(214,231,220,0) 78%,rgba(214,231,220,0.35) 96%);}
.shield::after{content:"task-only boundary";position:absolute;top:-12px;left:50%;transform:translateX(-50%);
  font-size:10.5px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--sage-700);
  background:var(--sage-100);border-radius:99px;padding:4px 11px;box-shadow:var(--sh-sm);}
.orbit-center{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:4;text-align:center;
  padding:18px 26px 16px;}
.avatar{width:54px;height:54px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;
  font-weight:700;font-size:21px;color:#fff;background:linear-gradient(160deg,#ee7a52,#c2542f);box-shadow:var(--sh-md);}
.orbit-center-name{font-size:15px;font-weight:700;margin-top:8px;}
.orbit-center-role{font-size:11px;font-weight:700;color:var(--ink-400);letter-spacing:.05em;}
.orbit-ring{position:absolute;left:50%;top:50%;width:0;height:0;animation:orbitSpin calc(40s/var(--motion,1)) linear infinite;}
@keyframes orbitSpin{to{transform:rotate(360deg);}}
.helper-chip{position:absolute;left:0;top:0;transform:translate(-50%,-50%);
  animation:orbitCounter calc(40s/var(--motion,1)) linear infinite;}
@keyframes orbitCounter{to{transform:translate(-50%,-50%) rotate(-360deg);}}
.helper-chip .hc-inner{display:flex;align-items:center;gap:9px;background:var(--card-hi);box-shadow:var(--sh-md);
  border-radius:99px;padding:8px 15px 8px 8px;font-size:13px;font-weight:700;color:var(--ink-700);}
.helper-chip .hc-av{width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  font-size:13px;font-weight:700;color:#fff;}
.helper-chip .hc-role{display:block;font-size:10px;font-weight:700;color:var(--ink-400);}
.task-sat{position:absolute;left:50%;top:50%;z-index:5;pointer-events:none;opacity:0;}
.orbit-stage.live .task-sat{animation:taskLaunch calc(5s/var(--motion,1)) cubic-bezier(.3,.7,.3,1) infinite;}
@keyframes taskLaunch{
  0%,14%{opacity:0;transform:translate(-50%,-50%) scale(.6);}
  22%{opacity:1;transform:translate(-50%,-50%) scale(1.05);}
  52%{opacity:1;transform:translate(calc(-50% + 148px),calc(-50% - 96px)) scale(1);}
  60%{opacity:0;transform:translate(calc(-50% + 148px),calc(-50% - 96px)) scale(.7);}
  100%{opacity:0;}}
.doc-bounce{position:absolute;left:50%;top:50%;z-index:5;pointer-events:none;opacity:0;}
.orbit-stage.live .doc-bounce{animation:docBounce calc(5s/var(--motion,1)) cubic-bezier(.4,.6,.4,1) infinite;animation-delay:2.4s;}
@keyframes docBounce{
  0%,10%{opacity:0;transform:translate(-50%,-50%) scale(.7);}
  18%{opacity:1;transform:translate(-50%,-50%) scale(1);}
  38%{opacity:1;transform:translate(calc(-50% - 112px),calc(-50% + 74px)) scale(1);}
  46%{transform:translate(calc(-50% - 96px),calc(-50% + 62px)) scale(.96);}
  58%{opacity:1;transform:translate(calc(-50% - 30px),calc(-50% + 20px)) scale(.9);}
  68%,100%{opacity:0;transform:translate(-50%,-50%) scale(.7);}}

/* ---------- 08 crisis ---------- */
.crisis{padding:150px 0 140px;background:linear-gradient(170deg,#262120,#1d1a19 75%);position:relative;}
.crisis,.crisis *{--motion:0.55;}
.crisis .wrap-narrow{text-align:center;}
.crisis-eyebrow{color:var(--rose-500);}
.crisis-h{color:#f3ece8;font-size:clamp(26px,2.9vw,40px);margin-left:auto;margin-right:auto;}
.crisis-card{max-width:720px;margin:46px auto 0;background:rgba(250,231,226,0.04);border:1px solid rgba(207,98,83,0.35);
  border-radius:var(--r-lg);overflow:hidden;text-align:left;}
.crisis-banner{display:flex;gap:13px;align-items:center;background:rgba(207,98,83,0.14);color:#edb6aa;
  padding:17px 24px;font-size:14px;font-weight:650;line-height:1.45;border-bottom:1px solid rgba(207,98,83,0.25);}
.crisis-banner svg{flex-shrink:0;}
.crisis-steps{padding:10px 24px 22px;}
.crisis-step{display:flex;gap:18px;align-items:flex-start;padding:18px 0;border-bottom:1px solid rgba(243,236,232,0.08);}
.crisis-step:last-child{border-bottom:none;}
.cs-n{width:36px;height:36px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;
  font-weight:700;font-size:15px;color:#edb6aa;border:1.5px solid rgba(207,98,83,0.45);}
.crisis-step h4{color:#f3ece8;font-size:16.5px;font-weight:700;}
.crisis-step p{color:#a89c96;font-size:14px;font-weight:500;line-height:1.5;margin-top:5px;text-wrap:pretty;}
.crisis-note{color:#8d817b;font-size:13.5px;font-weight:600;margin-top:30px;font-style:italic;font-family:var(--font-serif);}

/* ---------- 09 trust ---------- */
.trust{padding:150px 0;}
.vault-stage{position:relative;height:420px;perspective:900px;}
.vault-layer{position:absolute;left:50%;width:min(380px,86%);height:86px;border-radius:18px;
  transform:translateX(-50%) rotateX(55deg) rotateZ(-32deg);
  background:linear-gradient(150deg,rgba(246,243,238,0.95),rgba(232,227,219,0.95));
  box-shadow:var(--sh-md);display:flex;align-items:center;justify-content:center;
  border:1px solid var(--hair);
  transition:transform .9s cubic-bezier(.2,.8,.2,1), opacity .7s ease;transition-delay:var(--d,0s);opacity:0;}
.vault-layer span{font-size:13.5px;font-weight:800;color:var(--ink-700);letter-spacing:.02em;
  transform:rotateZ(0deg);text-align:center;padding:0 18px;}
.vault-layer.l1{top:62%;--d:0s;}
.vault-layer.l2{top:46%;--d:.12s;}
.vault-layer.l3{top:30%;--d:.24s;}
.vault-layer.l4{top:14%;--d:.36s;background:linear-gradient(150deg,#e9f1ec,#d6e7dc);border-color:rgba(58,121,91,0.3);}
.vault-layer.l4 span{color:var(--sage-700);}
.vault-stage.in .vault-layer{opacity:1;transform:translateX(-50%) rotateX(55deg) rotateZ(-32deg) translateZ(var(--z,0px));}
.vault-stage.in .l1{--z:0px;} .vault-stage.in .l2{--z:34px;} .vault-stage.in .l3{--z:68px;} .vault-stage.in .l4{--z:102px;}
.honesty-list{list-style:none;margin:24px 0 0;padding:0;}
.honesty-list li{display:flex;align-items:center;gap:13px;padding:12px 4px;font-size:15px;font-weight:600;color:var(--ink-700);border-bottom:1px solid var(--hair);}
.honesty-list li::before{content:"";width:18px;height:18px;border-radius:50%;flex-shrink:0;background:var(--sage-100);
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%233a795b' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 13l4 4 10-10'/%3E%3C/svg%3E");
  background-size:10px;background-position:center;background-repeat:no-repeat;box-shadow:var(--sh-sm);}
.trust-pages{display:flex;gap:9px;flex-wrap:wrap;margin-top:24px;}

/* ---------- 10 today / stress ---------- */
.today{padding:150px 0;}
.today .wrap{text-align:center;}
.today .s-h,.today .s-sub{margin-left:auto;margin-right:auto;}
.today-board{margin-top:48px;padding:34px;display:grid;grid-template-columns:220px 1fr;gap:34px;
  text-align:left;overflow:hidden;}
.fog{position:absolute;inset:0;border-radius:inherit;pointer-events:none;z-index:3;
  background:radial-gradient(120% 90% at 80% 10%,rgba(207,98,83,0.22),rgba(207,154,69,0.16) 45%,rgba(207,98,83,0) 75%);
  opacity:1;transition:opacity 1.2s ease;}
.today-meter{position:relative;z-index:4;}
.meter-label{font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-400);}
.meter-num{font-size:74px;font-weight:700;letter-spacing:-0.04em;line-height:1;margin-top:8px;color:var(--ink-900);
  font-variant-numeric:tabular-nums;}
.meter-word{font-size:20px;font-style:italic;color:var(--clay-600);margin-top:4px;transition:color .6s ease;}
.meter-track{height:12px;margin-top:18px;}
.meter-hint{font-size:11.5px;font-weight:600;color:var(--ink-400);margin-top:12px;line-height:1.45;}
.today-cols{position:relative;z-index:4;display:flex;flex-direction:column;gap:11px;}
.today-task{display:flex;align-items:center;gap:15px;background:var(--card);border-radius:var(--r-sm);
  box-shadow:var(--sh-sm);padding:15px 18px;cursor:pointer;transition:transform .35s cubic-bezier(.3,1.4,.4,1), box-shadow .3s ease, opacity .4s ease;}
.today-task:hover{transform:translateY(-2px);box-shadow:var(--sh-md);}
.today-task .tt-check{width:24px;height:24px;border-radius:8px;flex-shrink:0;background:var(--sunken);
  box-shadow:var(--sh-in);display:flex;align-items:center;justify-content:center;transition:.25s;}
.today-task .tt-check svg{opacity:0;transform:scale(.4);transition:.3s cubic-bezier(.3,1.6,.4,1);}
.today-task .tt-group{font-size:10.5px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:var(--clay-600);}
.today-task .tt-txt{font-size:15px;font-weight:700;color:var(--ink-900);margin-top:2px;}
.today-task .tt-sub{font-size:12.5px;font-weight:600;color:var(--ink-500);margin-top:2px;}
.today-task.done{opacity:.62;transform:scale(.985);}
.today-task.done .tt-check{background:var(--sage-600);box-shadow:0 4px 10px rgba(58,121,91,0.35);}
.today-task.done .tt-check svg{opacity:1;transform:scale(1);}
.today-task.done .tt-txt{text-decoration:line-through;text-decoration-color:var(--ink-300);text-decoration-thickness:1.5px;}
.today-task.settle{animation:settle .55s cubic-bezier(.3,1.5,.4,1);}
@keyframes settle{0%{transform:scale(1);}40%{transform:scale(.96) translateY(2px);}100%{transform:scale(.985);}}
.today-done-note{display:none;align-items:center;gap:11px;background:var(--sage-100);color:var(--sage-700);
  border-radius:var(--r-sm);padding:15px 18px;font-size:14.5px;font-weight:700;}
.today-done-note.on{display:flex;animation:settle .6s cubic-bezier(.3,1.5,.4,1);}

/* ---------- 11 final ---------- */
.final{position:relative;padding:170px 0 150px;overflow:hidden;text-align:center;}
.final-orbit{position:absolute;inset:0;pointer-events:none;}
.final-orbit .orb-ring{position:absolute;left:50%;top:50%;border:1px solid rgba(120,105,90,0.14);border-radius:50%;
  transform:translate(-50%,-50%);}
.final-orbit .orb-item{position:absolute;left:50%;top:50%;width:0;height:0;animation:orbitSpin var(--spd) linear infinite;}
.final-orbit .orb-item > span{display:block;transform:translate(var(--r),0);}
.final-orbit .orb-item .chip{box-shadow:var(--sh-sm);animation:orbitCounterChip var(--spd) linear infinite;}
@keyframes orbitCounterChip{to{transform:rotate(-360deg);}}
.final-inner{position:relative;z-index:4;max-width:760px;margin:0 auto;padding:0 28px;}
.final-h{font-size:clamp(34px,4vw,56px);line-height:1.06;letter-spacing:-0.03em;font-weight:500;text-wrap:balance;}
.final-h em{font-style:italic;color:var(--clay-600);}
.final-ctas{justify-content:center;margin-top:36px;}
.final-note{font-size:12.5px;font-weight:600;color:var(--ink-400);line-height:1.6;margin-top:36px;max-width:560px;
  margin-left:auto;margin-right:auto;text-wrap:pretty;}

/* ---------- footer ---------- */
.foot{border-top:1px solid var(--hair);padding:38px 28px 30px;}
.foot-inner{max-width:1180px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;}
.foot-brand{display:flex;align-items:center;gap:11px;font-size:14.5px;font-weight:700;color:var(--ink-700);}
.foot-logo{width:28px;height:28px;border-radius:8px;}
.foot-links{display:flex;align-items:center;gap:6px;flex-wrap:wrap;}
.foot-links a{font-size:13.5px;font-weight:650;color:var(--ink-500);padding:8px 12px;border-radius:99px;transition:.2s;}
.foot-links a:hover{color:var(--ink-900);background:rgba(120,105,90,0.08);}
.feedback-pill{border:none;cursor:pointer;background:var(--card-hi);box-shadow:var(--sh-sm);color:var(--ink-500);
  font-family:var(--font-ui);font-size:13px;font-weight:700;padding:9px 16px;border-radius:99px;transition:.2s;margin-left:8px;}
.feedback-pill:hover{color:var(--ink-900);box-shadow:var(--sh-md);}
.foot-fine{max-width:1180px;margin:18px auto 0;font-size:12px;font-weight:600;color:var(--ink-400);}

/* ---------- mobile rail ---------- */
.mobile-rail{position:fixed;left:14px;right:14px;bottom:14px;z-index:55;display:none;}

/* ---------- responsive ---------- */
@media (max-width:1020px){
  .nav-links{display:none;}
  .hero-grid{grid-template-columns:1fr;gap:10px;}
  .hero-theater{height:420px;min-height:340px;}
  .wrap-split{grid-template-columns:1fr;gap:44px;}
  .os-cards{grid-template-columns:1fr 1fr;}
  .boss-stage{grid-template-columns:1fr;}
  .docs-stage{grid-template-columns:1fr;gap:14px;}
  .doc-arrow{transform:rotate(90deg);margin:0 auto;}
  .today-board{grid-template-columns:1fr;}
}
@media (max-width:640px){
  .nav{padding:10px 14px;gap:10px;}
  .nav .btn{display:none;}
  .nav-sub{display:none;}
  .hero{padding:96px 18px 80px;}
  .frag{max-width:180px;}
  .os-cards{grid-template-columns:1fr;}
  .boss-cards{grid-template-columns:1fr;}
  .mobile-rail.on{display:block;}
  .wrap,.wrap-wide,.wrap-narrow,.wrap-split{padding-left:18px;padding-right:18px;}
  .messy,.docs,.coverage,.helpers,.crisis,.trust,.today{padding-top:96px;padding-bottom:96px;}
  .orbit-stage{height:400px;}
  .shield{width:280px;height:280px;}
  .vault-stage{height:340px;}
  .today-board{padding:22px;}
  .meter-num{font-size:56px;}
  .final{padding:120px 0 110px;}
}
