/* =========================================================
   Inner pages — shared section patterns
   (Services, Industries, Growth System, Case Studies,
    Doctor's Guide, Book, Guides, Contact)
   ========================================================= */

/* ---------- Page hero ---------- */
.p-hero{position:relative;background:var(--dark);margin-top:-84px;padding:190px 0 110px;overflow:hidden;color:#B9BAC0}
.p-hero .container{position:relative}
.p-hero.center{text-align:center}
.p-hero.center .container{display:grid;justify-items:center}
.p-hero h1{font-size:clamp(2.4rem,5.4vw,4.4rem);font-weight:800;color:#fff;letter-spacing:-.04em;line-height:1.02}
.p-hero h1 .serif{font-weight:400;color:var(--red-3)}
.p-hero .lede{font-size:clamp(1rem,1.5vw,1.15rem);max-width:640px;margin-top:22px;color:#D9DAE0}
.p-hero.center .lede{margin-inline:auto}
.p-hero .hero-ctas{margin:32px 0 0;justify-content:inherit}
.p-hero.center .hero-ctas{justify-content:center}
.p-split{display:grid;grid-template-columns:1.1fr .9fr;gap:50px;align-items:center}
.crumbs{display:inline-flex;align-items:center;gap:10px;margin-bottom:26px;padding:8px 18px;border-radius:999px;background:rgba(0,0,0,.4);border:1px solid rgba(125,211,143,.3);font-size:.84rem;font-weight:600}
.crumbs a{color:#B9BAC0}.crumbs a:hover{color:var(--red-3)}
.crumbs .i{width:14px;height:14px;color:var(--red-2);stroke-width:2.4}
.crumbs span{color:var(--red-3)}
.floaters{position:absolute;inset:0;pointer-events:none}
.floaters i{position:absolute;width:58px;height:58px;border-radius:18px;display:grid;place-items:center;background:rgba(255,255,255,.04);border:1px solid var(--line-dark);color:var(--red-3);backdrop-filter:blur(6px);animation:drift 9s ease-in-out infinite;animation-delay:var(--dl,0s)}
.floaters .i{width:24px;height:24px}
@keyframes drift{50%{transform:translateY(-22px) rotate(6deg)}}
.hero-stats{display:flex;flex-wrap:wrap;gap:12px;margin-top:34px}
.p-hero.center .hero-stats{justify-content:center}
.hero-stats div{padding:14px 20px;border-radius:18px;background:rgba(255,255,255,.04);border:1px solid var(--line-dark);text-align:left}
.hero-stats b{display:block;font-size:1.7rem;color:#fff;line-height:1;font-weight:800;letter-spacing:-.03em}
.hero-stats b sup{font-size:.55em;color:var(--red-3)}
.hero-stats span{font-size:.8rem}

/* ---------- Pain → solution swap cards ---------- */
.swaps{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.swapc{position:relative;min-height:260px;border-radius:24px;overflow:hidden;border:1px solid var(--line);background:#fff;cursor:pointer;outline:none}
.swapc .pn,.swapc .sl2{position:absolute;inset:0;padding:26px;display:flex;flex-direction:column;transition:transform .7s var(--ease),opacity .5s}
.swapc .pn{background:#fff}
.swapc .sl2{background:linear-gradient(160deg,var(--red),var(--red-deep));color:#E9F6EC;transform:translateY(100%)}
.swapc:hover .sl2,.swapc:focus .sl2,.swapc.on .sl2{transform:none}
.swapc:hover .pn,.swapc:focus .pn,.swapc.on .pn{transform:translateY(-30%);opacity:0}
.swapc .tag{display:inline-flex;align-items:center;gap:8px;font-size:.7rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.swapc .pn .tag{color:var(--warn)}
.swapc .sl2 .tag{color:#CDEFD4}
.swapc .tag .i{width:16px;height:16px}
.swapc h3{font-size:1.15rem;margin-top:14px;line-height:1.3}
.swapc .sl2 h3{color:#fff}
.swapc p{font-size:.92rem;margin-top:8px}
.swapc .hint2{margin-top:auto;font-size:.78rem;font-weight:700;color:var(--red);display:flex;gap:6px;align-items:center}
.swapc .hint2 .i{width:14px;height:14px}
.swapc .sl2 a{margin-top:auto;display:inline-flex;align-items:center;gap:8px;font-weight:800;color:#fff}
.swapc .sl2 a .i{width:15px;height:15px;stroke-width:2.6}
.dark .swapc{border-color:var(--line-dark);background:var(--dark-2)}
.dark .swapc .pn{background:var(--dark-2)}
.dark .swapc h3{color:#fff}

/* ---------- Audience tabs ---------- */
.aud-tabs{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;padding:8px;border-radius:999px;background:#fff;border:1px solid var(--line);width:max-content;max-width:100%;margin:0 auto 30px;position:relative}
.aud-tab{padding:12px 20px;border-radius:999px;font-weight:700;font-size:.92rem;color:var(--ink);display:flex;align-items:center;gap:8px;transition:background .35s,color .35s}
.aud-tab .i{width:17px;height:17px}
.aud-tab.on{background:var(--dark);color:#fff}
.aud-panel{display:grid;grid-template-columns:1fr 1fr .8fr;gap:18px}
.aud-panel>div{border-radius:24px;padding:28px;animation:tagIn .55s var(--ease) both}
.aud-panel>div:nth-child(2){animation-delay:.08s}.aud-panel>div:nth-child(3){animation-delay:.16s}
.aud-pain{background:#fff;border:1px solid var(--line)}
.aud-sol{background:var(--dark);color:#B9BAC0}
.aud-act{background:linear-gradient(160deg,var(--red-2),var(--red-deep));color:#E9F6EC;display:flex;flex-direction:column}
.aud-panel h4{font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;margin-bottom:14px}
.aud-pain h4{color:var(--warn)}.aud-sol h4{color:var(--red-3)}.aud-act h4{color:#CDEFD4}
.aud-panel ul{display:grid;gap:10px}
.aud-panel li{display:flex;gap:10px;align-items:flex-start;font-weight:600;line-height:1.4;font-size:.94rem}
.aud-pain li{color:var(--ink)}
.aud-sol li{color:#fff}
.aud-panel li .i{width:18px;height:18px;margin-top:2px}
.aud-pain li .i{color:var(--warn)}.aud-sol li .i{color:var(--red-3)}
.aud-act h3{color:#fff;font-size:1.4rem;line-height:1.25}
.aud-act p{margin-top:10px;font-size:.92rem}
.aud-act .btn{margin-top:auto;align-self:flex-start}

/* ---------- Before / after compare slider ---------- */
.cmp{position:relative;border-radius:30px;overflow:hidden;user-select:none;touch-action:pan-y;min-height:540px;--x:50%}
.cmp-side{position:absolute;inset:0;padding:44px;display:grid;grid-template-columns:1fr 1fr;gap:20px;align-content:center}
.cmp-before{background:#2A2122;color:#C8B8B9}
.cmp-after{background:linear-gradient(140deg,var(--red-deep),var(--red));color:#E9F6EC;clip-path:inset(0 0 0 var(--x))}
.cmp-side h3{grid-column:1/-1;font-size:1.6rem;color:#fff;margin-bottom:6px}
.cmp-side h3 small{display:block;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;margin-bottom:6px}
.cmp-before h3 small{color:#FF8A8E}.cmp-after h3 small{color:#CDEFD4}
.cmp-row{padding:16px 18px;border-radius:16px;background:rgba(255,255,255,.06);display:flex;gap:12px;align-items:flex-start;font-weight:600;line-height:1.4}
.cmp-row .i{width:20px;height:20px;flex-shrink:0;margin-top:1px}
.cmp-before .cmp-row .i{color:#FF8A8E}.cmp-after .cmp-row .i{color:#CDEFD4}
.cmp-handle{position:absolute;top:0;bottom:0;left:var(--x);width:3px;margin-left:-1.5px;background:#fff;pointer-events:none;z-index:2}
.cmp-handle::after{content:"⇆";position:absolute;top:50%;left:50%;width:54px;height:54px;margin:-27px 0 0 -27px;border-radius:50%;background:#fff;color:var(--red);display:grid;place-items:center;font-size:1.3rem;font-weight:800;box-shadow:0 10px 30px rgba(0,0,0,.35)}
.cmp input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:ew-resize;z-index:3;margin:0}
.cmp-cap{text-align:center;margin-top:14px;font-size:.86rem;color:var(--muted)}

/* ---------- Process (scroll-filled line) ---------- */
.proc{position:relative;display:grid;grid-template-columns:repeat(var(--n,5),1fr);gap:18px;--p:0}
.proc::before,.proc::after{content:"";position:absolute;top:34px;left:calc(50% / var(--n,5));right:calc(50% / var(--n,5));height:3px;border-radius:3px}
.proc::before{background:var(--line)}
.proc::after{background:linear-gradient(90deg,var(--red),var(--red-3));transform:scaleX(var(--p));transform-origin:left;transition:transform .2s linear}
.dark .proc::before{background:var(--line-dark)}
.pstep{position:relative;z-index:1;text-align:center}
.pstep .n{width:70px;height:70px;margin:0 auto 18px;border-radius:50%;background:#fff;border:3px solid var(--line);display:grid;place-items:center;color:var(--red);transition:all .5s var(--pop)}
.pstep .n .i{width:26px;height:26px}
.pstep.lit .n{background:var(--red);border-color:var(--red-3);color:#fff;transform:scale(1.08);box-shadow:0 14px 30px -10px rgba(39,128,63,.6)}
.dark .pstep .n{background:var(--dark-2);border-color:var(--line-dark)}
.pstep small{font-size:.7rem;font-weight:800;letter-spacing:.14em;color:var(--red);text-transform:uppercase}
.dark .pstep small{color:var(--red-3)}
.pstep h3{font-size:1.08rem;margin-top:4px}
.pstep p{font-size:.88rem;margin-top:6px}

/* ---------- Engagement plans ---------- */
.plans3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;align-items:stretch;perspective:1200px}
.plan3{position:relative;border-radius:28px;padding:32px;background:#fff;border:1px solid var(--line);display:flex;flex-direction:column;transition:transform .2s ease-out,box-shadow .4s;transform-style:preserve-3d}
.plan3.hot{background:var(--dark);color:#B9BAC0;border-color:var(--dark);box-shadow:0 40px 70px -40px rgba(39,128,63,.6)}
.plan3.hot h3{color:#fff}
.plan3 .badge{position:absolute;top:-13px;left:32px;padding:6px 14px;border-radius:999px;background:var(--red-2);color:#fff;font-size:.72rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.plan3 .for2{font-size:.72rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--red)}
.plan3.hot .for2{color:var(--red-3)}
.plan3 h3{font-size:1.6rem;margin-top:6px}
.plan3 .pp{margin-top:8px;font-size:.94rem}
.plan3 ul{display:grid;gap:10px;margin:22px 0 26px}
.plan3 li{display:flex;gap:10px;align-items:flex-start;font-weight:600;font-size:.93rem;line-height:1.4;color:var(--ink)}
.plan3.hot li{color:#fff}
.plan3 li .i{width:18px;height:18px;color:var(--red-2);stroke-width:2.8;margin-top:2px}
.plan3 .btn{margin-top:auto}

/* ---------- Product spotlight (Mediqora) ---------- */
.spot{display:grid;grid-template-columns:1fr 1.05fr;gap:50px;align-items:center}
.spot-copy p{margin-top:14px}
.spot-feats{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:24px 0 30px}
.spot-feats li{display:flex;gap:10px;align-items:center;padding:12px 14px;border-radius:14px;background:rgba(255,255,255,.05);border:1px solid var(--line-dark);color:#fff;font-weight:600;font-size:.9rem}
.spot-feats .i{width:18px;height:18px;color:var(--red-3)}
.spot-vis{position:relative;padding:30px 0}
.mq{border-radius:22px;background:#0F0D0E;border:1px solid var(--line-dark);overflow:hidden;box-shadow:0 50px 80px -40px rgba(0,0,0,.8)}
.mq-bar{display:flex;align-items:center;gap:8px;padding:12px 16px;background:#1A1718;border-bottom:1px solid var(--line-dark)}
.mq-bar i{width:10px;height:10px;border-radius:50%;background:#3a3536}
.mq-bar i:nth-child(1){background:#FF5F57}.mq-bar i:nth-child(2){background:#FEBC2E}.mq-bar i:nth-child(3){background:#28C840}
.mq-bar span{margin-left:10px;font-size:.76rem;color:#8E8F96;font-family:ui-monospace,Consolas,monospace}
.mq-body{display:grid;grid-template-columns:120px 1fr;min-height:300px}
.mq-side{border-right:1px solid var(--line-dark);padding:14px 10px;display:grid;gap:6px;align-content:start}
.mq-side span{font-size:.74rem;padding:8px 10px;border-radius:8px;color:#8E8F96}
.mq-side span.on{background:rgba(85,185,106,.15);color:var(--red-3);font-weight:700}
.mq-main{padding:16px;display:grid;gap:10px;align-content:start}
.mq-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.mq-kpis div{padding:12px;border-radius:12px;background:rgba(255,255,255,.04)}
.mq-kpis b{display:block;color:#fff;font-size:1.2rem}
.mq-kpis small{font-size:.68rem;color:#8E8F96}
.mq-row{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;border-radius:10px;background:rgba(255,255,255,.03);font-size:.78rem;color:#D9DAE0}
.mq-row em{font-style:normal;font-size:.68rem;padding:3px 8px;border-radius:999px;background:rgba(85,185,106,.15);color:var(--red-3);font-weight:700}
.mq-float{position:absolute;padding:12px 16px;border-radius:16px;background:#fff;color:var(--ink);font-weight:700;font-size:.85rem;box-shadow:0 20px 40px -14px rgba(0,0,0,.5);display:flex;gap:10px;align-items:center;animation:bob 6s ease-in-out infinite}
.mq-float .i{width:30px;height:30px;padding:6px;border-radius:10px;background:var(--red);color:#fff}
.mq-float.f1{top:0;right:-10px}.mq-float.f2{bottom:0;left:-14px;animation-delay:-3s}

/* ---------- ROI calculator ---------- */
.calc{display:grid;grid-template-columns:1fr 1fr;gap:0;border-radius:30px;overflow:hidden;border:1px solid var(--line);background:#fff}
.calc-in{padding:40px;display:grid;gap:24px}
.rng label{display:flex;justify-content:space-between;font-weight:700;color:var(--ink);font-size:.95rem;margin-bottom:10px}
.rng label output{color:var(--red);font-weight:800}
.rng input{width:100%;-webkit-appearance:none;appearance:none;height:8px;border-radius:8px;background:linear-gradient(90deg,var(--red-2) var(--f,50%),var(--cream-2) var(--f,50%));outline:none}
.rng input::-webkit-slider-thumb{-webkit-appearance:none;width:26px;height:26px;border-radius:50%;background:#fff;border:4px solid var(--red);box-shadow:0 6px 14px -4px rgba(39,128,63,.6);cursor:pointer}
.rng input::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:#fff;border:4px solid var(--red);cursor:pointer}
.calc-out{background:var(--dark);color:#B9BAC0;padding:40px;display:flex;flex-direction:column;justify-content:center}
.calc-out small{font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;color:#FF8A8E;font-weight:800}
.calc-out .big{font-size:clamp(2.4rem,5vw,3.8rem);font-weight:800;color:#fff;letter-spacing:-.04em;line-height:1.05;margin:8px 0}
.calc-out .big em{font-style:normal;color:var(--red-3)}
.calc-out .row2{display:flex;gap:10px;flex-wrap:wrap;margin:14px 0 24px}
.calc-out .row2 span{padding:8px 14px;border-radius:999px;background:rgba(255,255,255,.06);font-size:.84rem;color:#fff}
.calc-out .note{font-size:.78rem;color:#8E8F96;margin-top:14px}

/* ---------- Promise columns ---------- */
.promise{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.pcol{border-radius:28px;padding:34px}
.pcol.yes{background:#fff;border:2px solid var(--red-2)}
.pcol.no{background:#FFF6F6;border:2px dashed #F3B7B9}
.pcol h3{display:flex;align-items:center;gap:12px;font-size:1.3rem;margin-bottom:18px}
.pcol h3 .i{width:36px;height:36px;padding:8px;border-radius:50%;color:#fff;stroke-width:3}
.pcol.yes h3 .i{background:var(--red)}.pcol.no h3 .i{background:var(--warn)}
.pcol li{display:flex;gap:12px;align-items:flex-start;padding:12px 0;border-bottom:1px solid rgba(0,0,0,.06);color:var(--ink);font-weight:600;line-height:1.45}
.pcol li:last-child{border:0}
.pcol li .i{width:18px;height:18px;margin-top:2px;stroke-width:2.6}
.pcol.yes li .i{color:var(--red)}.pcol.no li .i{color:var(--warn)}

/* ---------- Numbered accordion ---------- */
.acc2-wrap{display:grid;grid-template-columns:.8fr 1.2fr;gap:50px;align-items:start}
.acc2-list{display:grid;gap:10px}
.acc2{border-radius:20px;background:#fff;border:1px solid var(--line);overflow:hidden;transition:border-color .3s,box-shadow .3s}
.acc2.open{border-color:var(--red-2);box-shadow:0 20px 40px -30px rgba(23,66,37,.5)}
.acc2-q{width:100%;display:flex;align-items:center;gap:16px;padding:20px 22px;font-weight:700;color:var(--ink);font-size:1rem;line-height:1.35}
.acc2-q em{font-style:normal;font-size:.78rem;font-weight:800;color:var(--red-2);flex-shrink:0;width:26px}
.acc2-q .pm2{margin-left:auto;width:32px;height:32px;border-radius:50%;background:var(--cream);display:grid;place-items:center;flex-shrink:0;transition:transform .4s var(--ease),background .3s}
.acc2-q .pm2 .i{width:16px;height:16px;stroke-width:2.6}
.acc2.open .pm2{transform:rotate(180deg);background:var(--red);color:#fff}
.acc2-a{display:grid;grid-template-rows:0fr;transition:grid-template-rows .5s var(--ease)}
.acc2.open .acc2-a{grid-template-rows:1fr}
.acc2-a>div{overflow:hidden}
.acc2-a p{padding:0 22px 20px 64px;font-size:.95rem}
.dark .acc2{background:var(--dark-2);border-color:var(--line-dark)}
.dark .acc2-q{color:#fff}
.dark .acc2-q .pm2{background:rgba(255,255,255,.06)}

/* ---------- Quick-form CTA ---------- */
.qform{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;padding:50px;border-radius:36px;background:var(--dark);color:#B9BAC0;position:relative;overflow:hidden}
.qform::before{content:"";position:absolute;width:500px;height:500px;border-radius:50%;background:radial-gradient(circle,rgba(85,185,106,.3),transparent 60%);left:-200px;bottom:-250px}
.qform>*{position:relative}
.qform h2{color:#fff;font-size:clamp(1.7rem,3vw,2.5rem)}
.qform p{margin-top:12px}
.qform .urg{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
.qform .urg span{display:inline-flex;align-items:center;gap:8px;padding:9px 14px;border-radius:999px;background:rgba(255,255,255,.06);color:#fff;font-size:.86rem;font-weight:600}
.qform .urg .i{width:16px;height:16px;color:var(--red-3)}
.qform form{margin:0;background:#fff;border-radius:24px;padding:28px}

/* ---------- Leaky funnel ---------- */
.leak-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}
.leak{position:relative;width:100%;max-width:440px;margin-inline:auto}
.leak svg{width:100%;height:auto;overflow:visible}
.leak .fl{fill:url(#gGrad);opacity:.9}
.leak .drop{fill:var(--warn);animation:drip 2.4s ease-in infinite;animation-delay:var(--dl)}
@keyframes drip{0%{transform:translate(0,0);opacity:0}15%{opacity:1}100%{transform:translate(var(--dx),70px);opacity:0}}
.leak-tags{display:grid;gap:10px}
.leak-tag{display:flex;gap:14px;align-items:center;padding:16px 18px;border-radius:18px;background:#fff;border:1px solid var(--line)}
.leak-tag .lt-i{width:42px;height:42px;border-radius:12px;background:#FFF1F1;color:var(--warn);display:grid;place-items:center;flex-shrink:0}
.leak-tag b{display:block;color:var(--ink)}
.leak-tag span{font-size:.88rem}
.leak-tag .fix{margin-left:auto;font-size:.72rem;font-weight:800;color:var(--red);background:var(--red-soft);padding:6px 10px;border-radius:999px;white-space:nowrap}

/* ---------- Venn pillars ---------- */
.venn-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}
.venn{position:relative;width:min(100%,460px);aspect-ratio:1;margin-inline:auto}
.vc{position:absolute;width:58%;aspect-ratio:1;border-radius:50%;display:grid;place-items:center;text-align:center;padding:12%;font-weight:800;color:#fff;font-size:1rem;mix-blend-mode:normal;cursor:pointer;transition:transform .5s var(--pop),opacity .4s,box-shadow .4s;opacity:.82}
.vc span{display:block;font-size:.68rem;letter-spacing:.14em;opacity:.8;margin-bottom:4px}
.vc.v1{top:0;left:21%;background:radial-gradient(circle at 40% 30%,rgba(125,211,143,.95),rgba(39,128,63,.85))}
.vc.v2{bottom:2%;left:0;background:radial-gradient(circle at 40% 30%,rgba(85,185,106,.95),rgba(26,92,44,.85))}
.vc.v3{bottom:2%;right:0;background:radial-gradient(circle at 40% 30%,rgba(60,140,80,.95),rgba(22,19,20,.85))}
.vc.v1>div{transform:translateY(-22%)}.vc.v2>div{transform:translate(-14%,14%)}.vc.v3>div{transform:translate(14%,14%)}
.vc.on{opacity:1;transform:scale(1.06);z-index:3;box-shadow:0 30px 60px -20px rgba(39,128,63,.7)}
.venn-core{position:absolute;left:50%;top:56%;transform:translate(-50%,-50%);width:26%;aspect-ratio:1;border-radius:50%;background:#fff;display:grid;place-items:center;text-align:center;font-size:.68rem;font-weight:800;color:var(--ink);z-index:4;box-shadow:0 10px 30px rgba(0,0,0,.25);padding:6px;line-height:1.2}
.venn-panel{border-radius:26px;padding:32px;background:var(--dark);color:#B9BAC0;min-height:360px}
.venn-panel small{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--red-3);font-weight:800}
.venn-panel h3{color:#fff;font-size:1.6rem;margin-top:6px}
.venn-panel p{margin-top:8px}
.venn-panel ul{display:grid;gap:8px;margin-top:18px}
.venn-panel li{display:flex;gap:10px;align-items:center;padding:11px 14px;border-radius:12px;background:rgba(255,255,255,.05);color:#fff;font-weight:600;font-size:.92rem;animation:tagIn .45s var(--pop) both}
.venn-panel li .i{width:17px;height:17px;color:var(--red-3)}

/* ---------- Horizontal rail ---------- */
.rail-wrap{position:relative}
.rail{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(300px,1fr);gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;padding:6px 4px 24px;scrollbar-width:thin;scrollbar-color:var(--red-2) transparent;cursor:grab}
.rail.drag{cursor:grabbing;scroll-snap-type:none}
.rcard{scroll-snap-align:start;border-radius:26px;padding:28px;background:var(--dark-2);border:1px solid var(--line-dark);display:flex;flex-direction:column;gap:14px;min-height:340px}
.rcard .rn{display:flex;justify-content:space-between;align-items:center}
.rcard .rn b{font-size:2.6rem;font-weight:800;color:transparent;-webkit-text-stroke:1.2px rgba(125,211,143,.5);line-height:1}
.rcard .rn .i{width:44px;height:44px;padding:11px;border-radius:14px;background:var(--red);color:#fff}
.rcard h3{font-size:1.3rem}
.rcard dl{display:grid;gap:10px}
.rcard dt{font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;font-weight:800;color:var(--red-3)}
.rcard dd{color:#E9E9EC;font-size:.92rem;margin-top:2px}
.rail-nav{display:flex;gap:10px;justify-content:flex-end;margin-bottom:16px}
.rail-nav button{width:48px;height:48px;border-radius:50%;border:1px solid var(--line-dark);display:grid;place-items:center;color:#fff;transition:background .3s}
.rail-nav button:hover{background:var(--red)}
.rail-nav .i{width:18px;height:18px;stroke-width:2.6}
.rail-nav button:first-child .i{transform:rotate(180deg)}

/* ---------- Gantt roadmap ---------- */
.gantt{border-radius:28px;background:#fff;border:1px solid var(--line);padding:30px;overflow:hidden}
.g-head,.g-row{display:grid;grid-template-columns:220px repeat(12,1fr);align-items:center}
.g-head{font-size:.7rem;font-weight:800;color:var(--muted);letter-spacing:.06em;padding-bottom:12px;border-bottom:1px solid var(--line)}
.g-head span{text-align:center}
.g-row{padding:12px 0;border-bottom:1px dashed var(--line)}
.g-row:last-child{border:0}
.g-row b{font-size:.92rem;color:var(--ink);padding-right:12px}
.g-row b small{display:block;font-weight:600;color:var(--muted);font-size:.78rem}
.g-bar{grid-column:var(--s)/var(--e);height:34px;border-radius:10px;background:linear-gradient(90deg,var(--red),var(--red-2));color:#fff;font-size:.74rem;font-weight:700;display:flex;align-items:center;padding:0 12px;white-space:nowrap;overflow:hidden;transform:scaleX(0);transform-origin:left;transition:transform 1s var(--ease);transition-delay:var(--d)}
.gantt.in .g-bar{transform:none}
.g-bar.alt{background:linear-gradient(90deg,var(--dark),#3a3536)}

/* ---------- KPI pyramid ---------- */
.pyr{display:grid;gap:8px;justify-items:center}
.pyr-l{width:calc(40% + var(--k) * 12%);padding:16px 22px;border-radius:16px;display:flex;justify-content:space-between;align-items:center;gap:16px;background:linear-gradient(90deg,rgba(39,128,63,calc(.35 + var(--k) * .12)),rgba(85,185,106,calc(.25 + var(--k) * .1)));color:#fff;opacity:0;transform:scale(.85);transition:opacity .6s,transform .7s var(--pop);transition-delay:calc(var(--k) * .12s)}
.pyr.in .pyr-l{opacity:1;transform:none}
.pyr-l b{font-size:1rem}
.pyr-l span{font-size:.84rem;color:#E9F6EC;text-align:right}

/* ---------- Fit-check quiz ---------- */
.quiz{max-width:820px;margin-inline:auto;border-radius:30px;background:#fff;border:1px solid var(--line);padding:40px;box-shadow:0 40px 70px -45px rgba(0,0,0,.3)}
.qz-bar{height:6px;border-radius:6px;background:var(--cream-2);overflow:hidden;margin-bottom:28px}
.qz-bar i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--red),var(--red-3));transition:width .5s var(--ease)}
.qz-step{display:none;animation:tagIn .5s var(--ease) both}
.qz-step.on{display:block}
.qz-step small{font-size:.74rem;letter-spacing:.14em;font-weight:800;color:var(--red);text-transform:uppercase}
.qz-step h3{font-size:clamp(1.3rem,2.4vw,1.8rem);margin:8px 0 24px}
.qz-opts{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.qz-opt{padding:18px 20px;border-radius:18px;border:2px solid var(--line);font-weight:700;color:var(--ink);transition:all .3s var(--pop);display:flex;gap:12px;align-items:center}
.qz-opt:hover{border-color:var(--red-2);transform:translateY(-3px)}
.qz-opt .i{width:22px;height:22px;color:var(--red)}
.qz-res{text-align:center}
.qz-res .score{font-size:4rem;font-weight:800;color:var(--red);line-height:1}
.qz-res h3{margin:10px 0 10px}
.qz-res p{max-width:520px;margin:0 auto 24px}
.qz-res .btns{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}

/* ---------- Industry directory ---------- */
.dir-bar{position:sticky;top:84px;z-index:20;background:rgba(245,249,246,.92);backdrop-filter:blur(12px);padding:16px 0;margin-bottom:26px;border-bottom:1px solid var(--line)}
.dir-search{display:flex;align-items:center;gap:12px;padding:0 18px;height:58px;border-radius:999px;background:#fff;border:1.5px solid var(--line);transition:border-color .3s,box-shadow .3s}
.dir-search:focus-within{border-color:var(--red-2);box-shadow:0 0 0 4px var(--red-soft)}
.dir-search .i{width:20px;height:20px;color:var(--muted)}
.dir-search input{flex:1;border:0;outline:none;font:inherit;font-size:1rem;color:var(--ink);background:transparent;min-width:0}
.dir-search em{font-style:normal;font-size:.82rem;font-weight:700;color:var(--red);white-space:nowrap}
.dir-chips{display:flex;gap:8px;overflow-x:auto;padding:12px 0 2px;scrollbar-width:none}
.dir-chips::-webkit-scrollbar{display:none}
.dir-chip{flex-shrink:0;padding:8px 14px;border-radius:999px;border:1px solid var(--line);background:#fff;font-size:.82rem;font-weight:700;color:var(--ink);transition:all .3s}
.dir-chip b{color:var(--red);margin-right:4px}
.dir-chip.on,.dir-chip:hover{background:var(--dark);color:#fff;border-color:var(--dark)}
.dir-chip.on b,.dir-chip:hover b{color:var(--red-3)}
.dir-grid{columns:3 320px;column-gap:18px}
.dcat{break-inside:avoid;margin-bottom:18px;border-radius:24px;background:#fff;border:1px solid var(--line);overflow:hidden;scroll-margin-top:200px;transition:box-shadow .4s,border-color .4s}
.dcat:hover{border-color:var(--red-2);box-shadow:0 30px 50px -36px rgba(23,66,37,.5)}
.dcat-h{display:flex;align-items:center;gap:14px;padding:20px 22px;background:linear-gradient(120deg,var(--dark),#24201f)}
.dcat-h .ic{width:46px;height:46px;border-radius:14px;background:var(--red);color:#fff;display:grid;place-items:center;flex-shrink:0}
.dcat-h small{display:block;font-size:.68rem;font-weight:800;letter-spacing:.14em;color:var(--red-3)}
.dcat-h h3{color:#fff;font-size:1.05rem;line-height:1.25}
.dcat-h em{margin-left:auto;font-style:normal;font-weight:800;color:#fff;background:rgba(255,255,255,.1);padding:6px 10px;border-radius:999px;font-size:.78rem}
.dcat ol{padding:14px 16px 18px;display:flex;flex-wrap:wrap;gap:6px}
.dcat li{padding:7px 12px;border-radius:999px;background:var(--cream);border:1px solid var(--line);font-size:.82rem;font-weight:600;color:var(--ink);display:flex;gap:6px;align-items:center}
.dcat li i{font-style:normal;font-size:.68rem;color:var(--muted);font-weight:700}
.dcat li mark{background:var(--red-soft);color:var(--red-deep);border-radius:4px}
.dir-empty{display:none;text-align:center;padding:60px 20px}
.dir-empty.on{display:block}
.dir-empty h3{margin-bottom:10px}

/* ---------- Category index tiles ---------- */
.cat-tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px}
.cat-tile{display:flex;gap:12px;align-items:center;padding:14px 16px;border-radius:18px;background:#fff;border:1px solid var(--line);transition:all .35s var(--pop)}
.cat-tile:hover{transform:translateY(-4px);border-color:var(--red-2);box-shadow:0 20px 30px -24px rgba(23,66,37,.6)}
.cat-tile .ic{width:40px;height:40px;border-radius:12px;background:var(--red-soft);color:var(--red);display:grid;place-items:center;flex-shrink:0}
.cat-tile b{display:block;font-size:.86rem;color:var(--ink);line-height:1.25}
.cat-tile small{font-size:.74rem;color:var(--red);font-weight:700}
.dark .cat-tile{background:rgba(255,255,255,.04);border-color:var(--line-dark)}
.dark .cat-tile b{color:#fff}
.dark .cat-tile .ic{background:rgba(85,185,106,.14);color:var(--red-3)}
.dark .cat-tile small{color:var(--red-3)}

/* ---------- Case study cards + modal ---------- */
.cf{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-bottom:34px}
.cf button{padding:10px 18px;border-radius:999px;border:1px solid var(--line-dark);color:#D9DAE0;font-weight:700;font-size:.88rem;transition:all .3s}
.cf button.on,.cf button:hover{background:var(--red);border-color:var(--red);color:#fff}
.ccards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.ccard{position:relative;border-radius:26px;padding:26px;background:var(--dark-2);border:1px solid var(--line-dark);display:flex;flex-direction:column;gap:12px;min-height:300px;cursor:pointer;text-align:left;overflow:hidden;transition:transform .5s var(--pop),border-color .3s,opacity .4s}
.ccard::after{content:"";position:absolute;right:-60px;top:-60px;width:180px;height:180px;border-radius:50%;background:radial-gradient(circle,rgba(85,185,106,.25),transparent 70%);transition:transform .6s var(--ease)}
.ccard:hover{transform:translateY(-8px);border-color:rgba(125,211,143,.45)}
.ccard:hover::after{transform:scale(1.6)}
.ccard.hide{display:none}
.ccard .ct{display:flex;gap:8px;flex-wrap:wrap}
.ccard .ct span{font-size:.68rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;padding:5px 10px;border-radius:999px;background:rgba(85,185,106,.14);color:var(--red-3)}
.ccard .ic{width:52px;height:52px;border-radius:16px;background:var(--red);color:#fff;display:grid;place-items:center}
.ccard .ic .i{width:24px;height:24px}
.ccard h3{font-size:1.25rem;color:#fff}
.ccard p{font-size:.92rem}
.ccard .more{margin-top:auto;display:inline-flex;align-items:center;gap:8px;font-weight:800;color:var(--red-3);font-size:.9rem}
.ccard .more .i{width:15px;height:15px;stroke-width:2.6;transition:transform .3s}
.ccard:hover .more .i{transform:translateX(4px)}
.modal{position:fixed;inset:0;z-index:300;display:grid;place-items:center;padding:20px;background:rgba(10,8,9,.7);backdrop-filter:blur(6px);opacity:0;visibility:hidden;transition:opacity .4s,visibility .4s}
.modal.on{opacity:1;visibility:visible}
.modal-box{position:relative;width:min(100%,780px);max-height:88vh;overflow:auto;border-radius:30px;background:#fff;padding:40px;transform:translateY(40px) scale(.96);transition:transform .6s var(--pop)}
.modal.on .modal-box{transform:none}
.modal-x{position:absolute;top:18px;right:18px;width:44px;height:44px;border-radius:50%;background:var(--cream);display:grid;place-items:center}
.modal-x .i{width:18px;height:18px;stroke-width:2.6}
.modal-box h3{font-size:1.7rem;padding-right:50px}
.modal-box .ct span{font-size:.7rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;padding:5px 10px;border-radius:999px;background:var(--red-soft);color:var(--red);margin-right:6px}
.modal-box .timeline{margin-top:22px}
.modal-box .btn{margin-top:20px}

/* ---------- Book (3D cover + chapters) ---------- */
.book3d{perspective:1600px;display:grid;place-items:center;padding:20px 0}
.bk{position:relative;width:280px;height:390px;transform-style:preserve-3d;transform:rotateY(-28deg) rotateX(6deg);transition:transform 1s var(--ease);animation:bkFloat 7s ease-in-out infinite}
.book3d:hover .bk{transform:rotateY(-8deg) rotateX(2deg)}
@keyframes bkFloat{50%{translate:0 -14px}}
.bk-front{position:absolute;inset:0;border-radius:6px 16px 16px 6px;background:linear-gradient(150deg,var(--red-deep),#0f2a17 60%,var(--dark));padding:30px 26px;display:flex;flex-direction:column;color:#E9F6EC;box-shadow:inset 6px 0 10px rgba(0,0,0,.4),30px 40px 60px -20px rgba(0,0,0,.6);overflow:hidden;transform:translateZ(18px)}
.bk-front::before{content:"+";position:absolute;right:-30px;bottom:-80px;font-size:18rem;font-weight:800;line-height:1;color:rgba(125,211,143,.12)}
.bk-front small{font-size:.66rem;letter-spacing:.2em;font-weight:800;color:var(--red-3)}
.bk-front h3{color:#fff;font-size:1.9rem;line-height:1.05;margin-top:14px;letter-spacing:-.03em}
.bk-front h3 em{font-family:var(--serif);font-weight:400;color:var(--red-3)}
.bk-front p{font-size:.8rem;margin-top:12px;opacity:.85}
.bk-front .by{margin-top:auto;font-size:.78rem;font-weight:700;color:#fff;border-top:1px solid rgba(255,255,255,.2);padding-top:12px}
.bk-spine{position:absolute;top:0;left:0;width:36px;height:100%;background:linear-gradient(90deg,#0b1f11,var(--red-deep));transform:rotateY(-90deg) translateZ(18px) translateX(-18px);transform-origin:left}
.bk-pages{position:absolute;top:6px;right:-2px;width:34px;height:calc(100% - 12px);background:repeating-linear-gradient(90deg,#fff 0 2px,#e7ece8 2px 3px);transform:rotateY(90deg) translateZ(262px) translateX(-16px);transform-origin:right}
.chap{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;counter-reset:ch}
.chap li{display:flex;gap:16px;align-items:flex-start;padding:20px;border-radius:20px;background:#fff;border:1px solid var(--line);transition:transform .4s var(--pop),border-color .3s}
.chap li:hover{transform:translateX(6px);border-color:var(--red-2)}
.chap li::before{counter-increment:ch;content:counter(ch,decimal-leading-zero);font-size:1.6rem;font-weight:800;color:transparent;-webkit-text-stroke:1.2px var(--red-2);line-height:1;flex-shrink:0;width:42px}
.chap b{display:block;color:var(--ink);font-size:1rem}
.chap span{font-size:.88rem}

/* ---------- Guide cards ---------- */
.g-filter{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-bottom:30px}
.g-filter button{padding:10px 16px;border-radius:999px;border:1px solid var(--line);background:#fff;font-weight:700;font-size:.86rem;color:var(--ink);transition:all .3s}
.g-filter button.on,.g-filter button:hover{background:var(--dark);color:#fff;border-color:var(--dark)}
.gcards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;align-items:start}
.gcard{border-radius:24px;background:#fff;border:1px solid var(--line);overflow:hidden;transition:box-shadow .4s,border-color .3s}
.gcard.hide{display:none}
.gcard.open{border-color:var(--red-2);box-shadow:0 30px 50px -36px rgba(23,66,37,.55)}
.gc-top{padding:24px;display:flex;flex-direction:column;gap:10px}
.gc-meta{display:flex;justify-content:space-between;align-items:center}
.gc-meta span{font-size:.68rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--red);background:var(--red-soft);padding:5px 10px;border-radius:999px}
.gc-meta em{font-style:normal;font-size:.78rem;color:var(--muted);display:flex;gap:6px;align-items:center}
.gc-meta em .i{width:14px;height:14px}
.gcard h3{font-size:1.12rem;line-height:1.3}
.gcard p{font-size:.9rem}
.gc-btn{display:inline-flex;align-items:center;gap:8px;font-weight:800;color:var(--red);font-size:.9rem;margin-top:4px}
.gc-btn .i{width:15px;height:15px;stroke-width:2.6;transition:transform .3s}
.gcard.open .gc-btn .i{transform:rotate(90deg)}
.gc-body{display:grid;grid-template-rows:0fr;transition:grid-template-rows .5s var(--ease);background:var(--cream)}
.gcard.open .gc-body{grid-template-rows:1fr}
.gc-body>div{overflow:hidden}
.gc-body ol{padding:18px 24px 8px;display:grid;gap:10px;counter-reset:st}
.gc-body li{display:grid;grid-template-columns:26px 1fr;gap:10px;font-size:.9rem;color:var(--ink);line-height:1.45}
.gc-body li::before{counter-increment:st;content:counter(st);width:26px;height:26px;border-radius:50%;background:var(--red);color:#fff;font-size:.74rem;font-weight:800;display:grid;place-items:center}
.gc-body .gc-cta{padding:8px 24px 22px}
.gc-body .gc-cta a{display:inline-flex;align-items:center;gap:8px;font-weight:800;font-size:.88rem;color:var(--red-deep)}
.gc-body .gc-cta .i{width:15px;height:15px}

/* ---------- Hub cards (guide landing) ---------- */
.hubs{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.hubc{position:relative;border-radius:32px;padding:40px;overflow:hidden;display:flex;flex-direction:column;min-height:420px;transition:transform .5s var(--pop)}
.hubc:hover{transform:translateY(-8px)}
.hubc.a{background:linear-gradient(150deg,var(--red-deep),var(--dark));color:#CDEFD4}
.hubc.b{background:#fff;border:1px solid var(--line)}
.hubc .big-i{width:70px;height:70px;border-radius:22px;display:grid;place-items:center;margin-bottom:24px}
.hubc.a .big-i{background:rgba(255,255,255,.1);color:#fff}
.hubc.b .big-i{background:var(--red-soft);color:var(--red)}
.hubc .big-i .i{width:32px;height:32px}
.hubc small{font-size:.72rem;letter-spacing:.14em;font-weight:800;text-transform:uppercase}
.hubc.a small{color:var(--red-3)}.hubc.b small{color:var(--red)}
.hubc h3{font-size:clamp(1.6rem,2.6vw,2.2rem);margin-top:8px}
.hubc.a h3{color:#fff}
.hubc p{margin-top:10px}
.hubc ul{display:grid;gap:8px;margin:20px 0 28px}
.hubc li{display:flex;gap:10px;align-items:center;font-weight:600}
.hubc.a li{color:#fff}.hubc.b li{color:var(--ink)}
.hubc li .i{width:17px;height:17px;color:var(--red-2);stroke-width:2.8}
.hubc .btn{margin-top:auto;align-self:flex-start}
.hubc .deco{position:absolute;right:-40px;top:-40px;width:220px;height:220px;border-radius:50%;border:34px solid rgba(255,255,255,.05)}
.hubc.b .deco{border-color:var(--red-soft)}

/* ---------- Contact ---------- */
.cways{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.cway{border-radius:24px;padding:26px;background:#fff;border:1px solid var(--line);display:flex;flex-direction:column;gap:10px;transition:transform .45s var(--pop),border-color .3s,box-shadow .4s}
.cway:hover{transform:translateY(-8px);border-color:var(--red-2);box-shadow:0 30px 50px -36px rgba(23,66,37,.6)}
.cway .ic{width:54px;height:54px;border-radius:16px;background:var(--red);color:#fff;display:grid;place-items:center}
.cway .ic .i{width:24px;height:24px}
.cway.wa2 .ic{background:#25D366}
.cway small{font-size:.7rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--red)}
.cway b{color:var(--ink);font-size:1.05rem;word-break:break-word}
.cway span{font-size:.88rem}
.cway em{margin-top:auto;font-style:normal;font-weight:800;color:var(--red);display:inline-flex;gap:6px;align-items:center;font-size:.88rem}
.cway em .i{width:14px;height:14px;stroke-width:2.6}
.map{border-radius:28px;overflow:hidden;border:1px solid var(--line);height:420px;background:var(--cream-2)}
.map iframe{width:100%;height:100%;border:0;display:block}
.next3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;counter-reset:nx}
.next3 li{position:relative;padding:28px;border-radius:24px;background:rgba(255,255,255,.04);border:1px solid var(--line-dark)}
.next3 li::before{counter-increment:nx;content:"0" counter(nx);font-size:2.4rem;font-weight:800;color:transparent;-webkit-text-stroke:1.2px var(--red-3);display:block;line-height:1;margin-bottom:14px}
.next3 b{display:block;color:#fff;font-size:1.08rem}
.next3 span{font-size:.92rem;display:block;margin-top:6px}

/* ---------- Generic helpers ---------- */
.stack-cta{display:flex;gap:12px;flex-wrap:wrap;justify-content:center;margin-top:40px}
.note-s{font-size:.82rem;color:var(--muted);text-align:center;margin-top:16px}
.center-t{text-align:center}

/* ---------- Responsive ---------- */
@media (max-width:1100px){
  .swaps,.ccards,.gcards{grid-template-columns:repeat(2,1fr)}
  .aud-panel{grid-template-columns:1fr 1fr}
  .aud-act{grid-column:1/-1}
  .cways{grid-template-columns:repeat(2,1fr)}
  .plans3{grid-template-columns:1fr;max-width:560px;margin-inline:auto}
}
@media (max-width:1000px){
  .p-split,.spot,.calc,.promise,.acc2-wrap,.qform,.leak-grid,.venn-grid,.hubs{grid-template-columns:1fr}
  .proc{grid-template-columns:1fr;gap:14px}
  .proc::before,.proc::after{display:none}
  .pstep{display:grid;grid-template-columns:70px 1fr;gap:16px;text-align:left;align-items:center}
  .pstep .n{margin:0}
  .g-head,.g-row{grid-template-columns:140px repeat(12,1fr)}
  .chap{grid-template-columns:1fr}
}
@media (max-width:760px){
  .p-hero{padding:150px 0 90px}
  .floaters i:nth-child(n+3){display:none}
  .swaps,.ccards,.gcards,.aud-panel,.cways,.next3,.spot-feats,.qz-opts{grid-template-columns:1fr}
  .aud-tabs{border-radius:22px;width:100%}
  .aud-tab{flex:1 1 45%;justify-content:center;padding:10px 12px;font-size:.84rem}
  .cmp{min-height:620px}
  .cmp-side{grid-template-columns:1fr;padding:26px 20px;align-content:start}
  .calc-in,.calc-out,.quiz,.qform,.modal-box,.hubc,.pcol{padding:26px 20px}
  .qform form{padding:22px 18px}
  .gantt{padding:18px;overflow-x:auto}
  .g-head,.g-row{min-width:640px}
  .pyr-l{width:100%!important;flex-direction:column;align-items:flex-start;gap:4px}
  .pyr-l span{text-align:left}
  .mq-body{grid-template-columns:1fr}
  .mq-side{display:none}
  .mq-float{display:none}
  .leak-tag{flex-wrap:wrap}
  .leak-tag .fix{margin-left:56px}
  .dir-bar{top:72px}
  .bk{width:230px;height:320px}
  .bk-pages{transform:rotateY(90deg) translateZ(212px) translateX(-16px)}
}

/* ---------- Category / industry template ---------- */
.jump{display:flex;flex-wrap:wrap;gap:8px;margin-top:28px}
.p-hero.center .jump{justify-content:center}
.jump a{padding:9px 15px;border-radius:999px;background:rgba(255,255,255,.05);border:1px solid var(--line-dark);color:#E9E9EC;font-size:.84rem;font-weight:600;transition:all .3s}
.jump a:hover{background:var(--red);border-color:var(--red);color:#fff}
.hv-card{position:relative;border-radius:30px;padding:30px;background:linear-gradient(150deg,rgba(39,128,63,.25),rgba(255,255,255,.03));border:1px solid rgba(125,211,143,.25)}
.hv-card h3{color:#fff;font-size:1.1rem;margin-bottom:14px;display:flex;gap:10px;align-items:center}
.hv-card h3 .i{width:22px;height:22px;color:var(--red-3)}
.hv-list{display:grid;gap:8px}
.hv-list li{display:flex;gap:12px;align-items:center;padding:12px 14px;border-radius:14px;background:rgba(0,0,0,.25);color:#fff;font-weight:600;font-size:.92rem;opacity:0;transform:translateX(20px);animation:hvIn .6s var(--ease) forwards;animation-delay:calc(.6s + var(--k) * .1s)}
.hv-list li .i{width:18px;height:18px;color:var(--red-3)}
.hv-list li em{margin-left:auto;font-style:normal;font-size:.7rem;color:var(--red-3);font-weight:800}
@keyframes hvIn{to{opacity:1;transform:none}}
.svc-wrap{display:grid;grid-template-columns:240px 1fr;gap:40px;align-items:start}
.onpage{position:sticky;top:110px;display:grid;gap:4px;padding:16px;border-radius:20px;background:#fff;border:1px solid var(--line)}
.onpage small{font-size:.68rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);padding:4px 10px 8px}
.onpage a{padding:9px 12px;border-radius:12px;font-size:.86rem;font-weight:600;color:var(--ink);transition:all .3s;border-left:3px solid transparent}
.onpage a:hover{background:var(--cream)}
.onpage a.on{background:var(--red-soft);color:var(--red-deep);border-left-color:var(--red)}
.svc-rows{display:grid;gap:22px}
.svc-row{display:grid;grid-template-columns:1fr 1fr;border-radius:30px;overflow:hidden;background:#fff;border:1px solid var(--line);scroll-margin-top:110px}
.svc-row:nth-child(even) .sr-main{order:2}
.sr-main{padding:36px}
.sr-main .no{font-size:.72rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--red)}
.sr-main h2{font-size:clamp(1.35rem,2.2vw,1.8rem);margin-top:8px}
.sr-pain{display:flex;gap:10px;margin-top:14px;padding:12px 14px;border-radius:14px;background:#FFF4F4;color:#8E1F23;font-weight:600;font-size:.92rem;line-height:1.45}
.sr-pain .i{width:18px;height:18px;color:var(--warn);margin-top:2px}
.sr-main>p{margin-top:12px}
.kw{display:flex;flex-wrap:wrap;gap:6px;margin-top:16px}
.kw span{font-size:.74rem;font-weight:700;color:var(--muted);border:1px dashed #C8D6CC;padding:5px 10px;border-radius:999px}
.sr-side{background:var(--dark);color:#B9BAC0;padding:36px;display:flex;flex-direction:column}
.sr-side h4{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--red-3);margin-bottom:14px}
.sr-side ul{display:grid;gap:10px}
.sr-side li{display:flex;gap:10px;align-items:flex-start;color:#fff;font-weight:600;font-size:.93rem;line-height:1.45}
.sr-side li .i{width:18px;height:18px;color:var(--red-3);stroke-width:2.6;margin-top:2px}
.sr-out{margin-top:20px;padding:14px 16px;border-radius:14px;background:rgba(85,185,106,.12);border:1px solid rgba(125,211,143,.25);color:#E9F6EC;font-size:.9rem}
.sr-out b{display:block;color:var(--red-3);font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;margin-bottom:4px}
.sr-side .btn{margin-top:auto;align-self:flex-start;padding-top:0}
.sr-side .btn-wrap{margin-top:22px}
.segs{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}
.seg{border-radius:22px;padding:22px;background:#fff;border:1px solid var(--line);scroll-margin-top:110px;transition:transform .45s var(--pop),border-color .3s,box-shadow .4s}
.seg:hover{transform:translateY(-6px);border-color:var(--red-2);box-shadow:0 26px 40px -30px rgba(23,66,37,.6)}
.seg .ic{width:44px;height:44px;border-radius:14px;background:var(--red-soft);color:var(--red);display:grid;place-items:center;margin-bottom:12px}
.seg h3{font-size:1.02rem}
.seg p{font-size:.88rem;margin-top:6px}
.seg a{display:inline-flex;gap:6px;align-items:center;margin-top:12px;font-weight:800;font-size:.84rem;color:var(--red)}
.seg a .i{width:14px;height:14px;stroke-width:2.6}
.allsegs{margin-top:30px;border-radius:24px;background:#fff;border:1px dashed var(--red-2);padding:24px}
.allsegs h3{font-size:1rem;margin-bottom:12px}
.allsegs div{display:flex;flex-wrap:wrap;gap:6px}
.allsegs span{padding:7px 12px;border-radius:999px;background:var(--cream);border:1px solid var(--line);font-size:.82rem;font-weight:600;color:var(--ink)}
.stackx{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;align-items:center}
.stackx a{display:inline-flex;align-items:center;gap:12px;padding:12px 18px 12px 12px;border-radius:999px;background:rgba(255,255,255,.05);border:1.5px solid rgba(125,211,143,.4);color:#fff;font-weight:700;transition:all .35s var(--pop)}
.stackx a:hover{background:var(--red);transform:translateY(-4px)}
.stackx a i{width:36px;height:36px;border-radius:50%;background:var(--red);display:grid;place-items:center}
.stackx a i .i{width:17px;height:17px}
.stackx .plus{color:var(--red-3)}
@media (max-width:1000px){
  .svc-wrap{grid-template-columns:1fr}
  .onpage{position:static;grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}
  .onpage small{grid-column:1/-1}
  .svc-row{grid-template-columns:1fr}
  .svc-row:nth-child(even) .sr-main{order:0}
}
@media (max-width:760px){.sr-main,.sr-side{padding:26px 20px}}

/* ---------- Home: segment cloud ---------- */
.seg-cloud{margin-top:26px;border-radius:26px;background:var(--dark);padding:28px;color:#B9BAC0}
.seg-cloud-h{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;margin-bottom:20px}
.seg-cloud-h h3{color:#fff;font-size:1.35rem}
.seg-cloud-h p{font-size:.92rem;margin-top:4px;max-width:640px}
.seg-cloud .cat-tile{background:rgba(255,255,255,.04);border-color:var(--line-dark)}
.seg-cloud .cat-tile b{color:#fff}
.seg-cloud .cat-tile .ic{background:rgba(85,185,106,.14);color:var(--red-3)}
.seg-cloud .cat-tile small{color:var(--red-3)}

.p-hero.ready .fade-up{opacity:1;transform:none}
.p-hero h1 .w{display:inline}

/* compare slider: before content left half, after content right half */
.cmp-side{grid-template-columns:1fr;gap:12px}
.cmp-before{padding-right:calc(50% + 36px)}
.cmp-after{padding-left:calc(50% + 36px)}
@media (max-width:760px){
  .cmp{min-height:0;display:grid;gap:12px;border-radius:24px;overflow:visible}
  .cmp-side{position:relative;inset:auto;padding:24px 20px!important;border-radius:24px;clip-path:none!important}
  .cmp-handle,.cmp input{display:none}
  .cmp+.cmp-cap{display:none}
}

/* =========================================================
   MEDICAL DECOR — capsules, crosses, ECG, molecules
   (injected by site.js into every section)
   ========================================================= */
.section,.cta-sec,.matrix-sec{isolation:isolate}
.mdeco{position:absolute;inset:0;z-index:-1;pointer-events:none;overflow:hidden}
.mx{position:absolute;width:var(--s,90px);height:var(--s,90px);opacity:var(--o,.08);animation:mxSpin var(--t,26s) linear infinite}
.mx::before,.mx::after{content:"";position:absolute;border-radius:calc(var(--s,90px) * .12);background:linear-gradient(135deg,var(--red-3),var(--red))}
.mx::before{left:33%;right:33%;top:0;bottom:0}
.mx::after{top:33%;bottom:33%;left:0;right:0}
.mx.ol::before,.mx.ol::after{background:none;border:2px solid var(--red-2)}
@keyframes mxSpin{to{transform:rotate(360deg)}}
.mpill{position:absolute;width:var(--w,120px);height:calc(var(--w,120px) * .42);border-radius:999px;overflow:hidden;display:grid;grid-template-columns:1fr 1fr;opacity:var(--o,.14);transform:rotate(var(--r,-30deg));animation:pillFloat var(--t,9s) ease-in-out infinite;box-shadow:inset 0 -6px 10px rgba(0,0,0,.08)}
.mpill::before{content:"";background:linear-gradient(160deg,var(--red-3),var(--red))}
.mpill::after{content:"";background:linear-gradient(160deg,#fff,#DCE9DF)}
@keyframes pillFloat{50%{transform:rotate(calc(var(--r,-30deg) + 12deg)) translateY(-18px)}}
.mecg{position:absolute;left:0;right:0;height:80px;opacity:var(--o,.16)}
.mecg path{fill:none;stroke:var(--red-2);stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1400;stroke-dashoffset:1400;animation:ecgDraw 6s linear infinite}
@keyframes ecgDraw{60%{stroke-dashoffset:0}100%{stroke-dashoffset:-1400}}
.mmol{position:absolute;width:var(--s,140px);height:var(--s,140px);opacity:var(--o,.12);animation:mxSpin 40s linear infinite reverse}
.mmol i{position:absolute;width:16%;height:16%;border-radius:50%;background:var(--red-2)}
.mmol i:nth-child(1){left:42%;top:42%;width:20%;height:20%;background:var(--red)}
.mmol i:nth-child(2){left:10%;top:12%}.mmol i:nth-child(3){right:6%;top:24%}.mmol i:nth-child(4){left:18%;bottom:6%}.mmol i:nth-child(5){right:16%;bottom:12%}
.mmol svg{position:absolute;inset:0;width:100%;height:100%}
.mmol line{stroke:var(--red-2);stroke-width:2}
.dark .mx,.dark .mpill,.dark .mecg,.dark .mmol,.p-hero .mx,.p-hero .mecg{--o:.14}
.dark .mpill{--o:.18}
.hero-ecg{position:absolute;left:0;right:0;bottom:0;height:90px;pointer-events:none;opacity:.35;z-index:0}
.hero-ecg path{fill:none;stroke:url(#gGrad);stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1600;stroke-dashoffset:1600;animation:ecgDraw 5s linear infinite}
.hero-ecg circle{fill:var(--red-3);filter:drop-shadow(0 0 6px var(--red-3))}
@media (max-width:760px){.mx,.mmol{--s:60px}.mpill{--w:80px}}
@media (prefers-reduced-motion:reduce){.mx,.mpill,.mmol,.mecg path,.hero-ecg path{animation:none!important;stroke-dashoffset:0}}

/* Process steps as two-tone capsules (echoing the home "growth system" pills) */
.pstep .n{width:92px;height:50px;border-radius:999px;border:0;background:linear-gradient(90deg,var(--red) 0 50%,#fff 50% 100%);box-shadow:0 14px 26px -14px rgba(39,128,63,.7),inset 0 -5px 10px rgba(0,0,0,.08);justify-content:start;padding-left:13px;color:#fff;transform:rotate(-10deg);margin-bottom:22px}
.pstep .n::after{content:"";position:absolute;width:30px;height:8px;border-radius:999px;background:rgba(255,255,255,.4);top:7px;left:12px}
.pstep .n{position:relative}
.pstep .n .i{width:22px;height:22px}
.pstep.lit .n{transform:rotate(0) scale(1.08);background:linear-gradient(90deg,var(--red-2) 0 50%,#fff 50% 100%)}
.dark .pstep .n{background:linear-gradient(90deg,var(--red) 0 50%,#2a2526 50% 100%)}
.proc::before,.proc::after{top:25px}
@media (max-width:1000px){.pstep{grid-template-columns:92px 1fr}.pstep .n{margin:0}}

/* =========================================================
   JUSTIFICATION / INFORMATIVE PATTERNS
   ========================================================= */
/* Comparison table */
.vs-table{border-radius:28px;overflow:hidden;border:1px solid var(--line);background:#fff}
.vs-row{display:grid;grid-template-columns:1.1fr 1fr 1fr;border-top:1px solid var(--line)}
.vs-row:first-child{border-top:0}
.vs-row>div{padding:18px 22px;display:flex;gap:10px;align-items:flex-start;font-size:.94rem;line-height:1.45}
.vs-row>div:first-child{font-weight:700;color:var(--ink)}
.vs-row>div:nth-child(2){background:#FFF8F8;color:#6B2A2D}
.vs-row>div:nth-child(3){background:var(--red-soft);color:var(--red-deep);font-weight:600}
.vs-row .i{width:18px;height:18px;margin-top:2px;flex-shrink:0;stroke-width:2.6}
.vs-row>div:nth-child(2) .i{color:var(--warn)}.vs-row>div:nth-child(3) .i{color:var(--red)}
.vs-head>div{font-size:.74rem!important;font-weight:800!important;letter-spacing:.14em;text-transform:uppercase;padding:16px 22px!important}
.vs-head>div:first-child{background:var(--dark);color:#fff!important}
.vs-head>div:nth-child(2){background:#2A2122!important;color:#FF8A8E!important}
.vs-head>div:nth-child(3){background:var(--red)!important;color:#fff!important}
.vs-row{opacity:0;transform:translateX(-20px);transition:opacity .5s,transform .6s var(--ease);transition-delay:calc(var(--k,0) * .06s)}
.vs-table.in .vs-row{opacity:1;transform:none}
@media (max-width:760px){.vs-row{grid-template-columns:1fr}.vs-row>div:first-child{background:var(--cream)}.vs-head{display:none}}

/* Formula: Visibility × Trust × Response */
.formula{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:14px}
.fterm{width:190px;border-radius:24px;padding:24px 18px;text-align:center;background:var(--dark-2);border:1px solid var(--line-dark);transition:transform .5s var(--pop)}
.fterm:hover{transform:translateY(-6px)}
.fterm .ic{width:54px;height:54px;border-radius:16px;margin:0 auto 12px;background:rgba(85,185,106,.15);color:var(--red-3);display:grid;place-items:center}
.fterm .ic .i{width:26px;height:26px}
.fterm b{display:block;color:#fff;font-size:1.1rem}
.fterm span{font-size:.84rem}
.fop{font-size:2.4rem;font-weight:800;color:var(--red-3);line-height:1}
.fterm.res{background:linear-gradient(160deg,var(--red),var(--red-deep));border-color:transparent}
.fterm.res .ic{background:rgba(255,255,255,.15);color:#fff}
.fterm.res span{color:#E9F6EC}
.fnote{max-width:760px;margin:30px auto 0;text-align:center;font-size:1.02rem}
.fnote b{color:#fff}
.zero{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:40px}
.zero div{border-radius:20px;padding:20px;background:rgba(255,255,255,.04);border:1px dashed rgba(255,138,142,.35)}
.zero b{display:block;color:#FF8A8E;font-size:.74rem;letter-spacing:.12em;text-transform:uppercase;margin-bottom:6px}
.zero p{font-size:.9rem}
@media (max-width:760px){.zero{grid-template-columns:1fr}.fterm{width:100%}}

/* Impact × effort quadrant */
.quad-wrap{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:center}
.quad{position:relative;aspect-ratio:1;max-width:520px;width:100%;margin-inline:auto;border-radius:28px;overflow:hidden;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:4px;background:var(--line)}
.quad>div{background:#fff;padding:16px;position:relative}
.quad>div small{font-size:.66rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.quad>div:nth-child(1){background:var(--red-soft)}
.quad>div:nth-child(1) small{color:var(--red)}
.qdot{position:absolute;left:var(--x);top:var(--y);transform:translate(-50%,-50%) scale(0);padding:7px 12px;border-radius:999px;background:var(--dark);color:#fff;font-size:.74rem;font-weight:700;white-space:nowrap;transition:transform .6s var(--pop);transition-delay:var(--d);z-index:2}
.qdot.g{background:var(--red)}
.quad.in .qdot{transform:translate(-50%,-50%) scale(1)}
.quad .ax{position:absolute;font-size:.7rem;font-weight:800;letter-spacing:.12em;color:var(--muted);text-transform:uppercase;z-index:3}
.quad .ax.y{left:8px;top:50%;transform:rotate(-90deg) translateX(50%);transform-origin:left top}
.quad .ax.x{bottom:8px;left:50%;transform:translateX(-50%)}
.qrules{display:grid;gap:12px}
.qrules li{display:grid;grid-template-columns:44px 1fr;gap:14px;padding:16px;border-radius:18px;background:#fff;border:1px solid var(--line)}
.qrules li b{display:block;color:var(--ink)}
.qrules li span{font-size:.9rem}
.qrules .n{width:44px;height:44px;border-radius:14px;background:var(--red);color:#fff;display:grid;place-items:center;font-weight:800}
@media (max-width:1000px){.quad-wrap{grid-template-columns:1fr}}

/* Myth vs fact */
.myths{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.myth{border-radius:24px;overflow:hidden;border:1px solid var(--line);background:#fff;display:grid;grid-template-rows:auto 1fr}
.myth-q{display:flex;gap:12px;align-items:flex-start;padding:18px 20px;background:#FFF6F6;border-bottom:1px dashed #F3B7B9}
.myth-q em{font-style:normal;font-size:.68rem;font-weight:800;letter-spacing:.14em;color:#fff;background:var(--warn);padding:4px 9px;border-radius:999px;flex-shrink:0;margin-top:2px}
.myth-q b{color:#6B2A2D;line-height:1.4}
.myth-a{display:flex;gap:12px;align-items:flex-start;padding:18px 20px}
.myth-a em{font-style:normal;font-size:.68rem;font-weight:800;letter-spacing:.14em;color:#fff;background:var(--red);padding:4px 9px;border-radius:999px;flex-shrink:0;margin-top:2px}
.myth-a p{color:var(--ink);font-size:.94rem}
@media (max-width:760px){.myths{grid-template-columns:1fr}}

/* Glossary */
.gloss{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.gl{border-radius:22px;padding:22px;background:rgba(255,255,255,.04);border:1px solid var(--line-dark);transition:border-color .3s,transform .4s var(--pop)}
.gl:hover{border-color:rgba(125,211,143,.45);transform:translateY(-4px)}
.gl small{font-size:.68rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--red-3)}
.gl h3{font-size:1.08rem;margin:6px 0 8px;color:#fff}
.gl p{font-size:.9rem}
.gl .why{margin-top:10px;padding-top:10px;border-top:1px dashed var(--line-dark);font-size:.84rem;color:#D9DAE0}
.gl .why b{color:var(--red-3)}
@media (max-width:1000px){.gloss{grid-template-columns:1fr 1fr}}
@media (max-width:640px){.gloss{grid-template-columns:1fr}}

/* Audit checklist with reasons */
.auditx{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;counter-reset:ax}
.auditx li{display:grid;grid-template-columns:52px 1fr;gap:14px;padding:18px;border-radius:20px;background:#fff;border:1px solid var(--line);transition:transform .4s var(--pop),border-color .3s}
.auditx li:hover{transform:translateX(6px);border-color:var(--red-2)}
.auditx .ic{width:52px;height:52px;border-radius:16px;background:var(--red-soft);color:var(--red);display:grid;place-items:center}
.auditx b{display:block;color:var(--ink)}
.auditx span{font-size:.88rem}
.auditx em{display:block;font-style:normal;font-size:.8rem;color:var(--red-deep);margin-top:6px;font-weight:600}
@media (max-width:760px){.auditx{grid-template-columns:1fr}}

/* Ledger: vanity vs growth metrics */
.ledger{display:grid;grid-template-columns:1fr 70px 1fr;gap:0;border-radius:28px;overflow:hidden;border:1px solid var(--line)}
.ledger>div{padding:16px 22px;display:flex;align-items:center;gap:10px;border-top:1px solid var(--line);font-weight:600;font-size:.94rem}
.ledger .lh{font-size:.72rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;border-top:0}
.ledger .l{background:#FBF7F7;color:#6B2A2D}
.ledger .m{background:var(--cream);justify-content:center;color:var(--red)}
.ledger .m .i{width:20px;height:20px;stroke-width:2.6}
.ledger .r{background:#fff;color:var(--red-deep)}
.ledger .lh.l{background:#2A2122;color:#FF8A8E}.ledger .lh.m{background:var(--dark)}.ledger .lh.r{background:var(--red);color:#fff}
@media (max-width:640px){.ledger{grid-template-columns:1fr 40px 1fr}.ledger>div{padding:12px;font-size:.84rem}}

/* Blog cards */
.blogs{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.blog{border-radius:24px;overflow:hidden;background:#fff;border:1px solid var(--line);display:flex;flex-direction:column;transition:transform .5s var(--pop),box-shadow .4s}
.blog:hover{transform:translateY(-8px);box-shadow:0 30px 50px -30px rgba(23,66,37,.5)}
.blog-th{position:relative;height:170px;overflow:hidden;background:linear-gradient(140deg,var(--red-deep),var(--dark));display:grid;place-items:center}
.blog-th .big{width:74px;height:74px;border-radius:22px;background:rgba(255,255,255,.12);display:grid;place-items:center;color:#fff;position:relative;z-index:1;transition:transform .5s var(--pop)}
.blog:hover .blog-th .big{transform:scale(1.12) rotate(-6deg)}
.blog-th .big .i{width:34px;height:34px}
.blog-th .mx{--s:120px;--o:.18;right:-30px;top:-30px}
.blog-th .mpill{--w:110px;--o:.35;left:-24px;bottom:16px}
.blog-th.b2{background:linear-gradient(140deg,#174225,#0f2a17)}
.blog-th.b3{background:linear-gradient(140deg,var(--red),var(--red-deep))}
.blog-bd{padding:22px;display:flex;flex-direction:column;gap:10px;flex:1}
.blog-meta{display:flex;justify-content:space-between;align-items:center}
.blog-meta span{font-size:.68rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--red);background:var(--red-soft);padding:5px 10px;border-radius:999px}
.blog-meta em{font-style:normal;font-size:.78rem;color:var(--muted);display:flex;gap:6px;align-items:center}
.blog-meta em .i{width:14px;height:14px}
.blog h3{font-size:1.12rem;line-height:1.35}
.blog p{font-size:.9rem}
.blog .more2{margin-top:auto;display:inline-flex;align-items:center;gap:8px;font-weight:800;color:var(--red-deep);font-size:.9rem;padding-top:6px}
.blog .more2 .i{width:15px;height:15px;stroke-width:2.6;transition:transform .3s}
.blog:hover .more2 .i{transform:translateX(5px)}
@media (max-width:1000px){.blogs{grid-template-columns:1fr 1fr}}
@media (max-width:640px){.blogs{grid-template-columns:1fr}}

/* Coming soon */
.soon{display:inline-flex;align-items:center;gap:8px;padding:7px 14px;border-radius:999px;background:#FFF4D6;color:#7A5300;font-size:.74rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;border:1px solid #F3D58A}
.soon::before{content:"";width:8px;height:8px;border-radius:50%;background:#E9A400;animation:ping 1.6s infinite}
.bk-soon{position:absolute;top:18px;right:-14px;z-index:5;transform:rotate(8deg) translateZ(40px);padding:8px 14px;border-radius:10px;background:#FFD24A;color:#4A3200;font-weight:800;font-size:.78rem;letter-spacing:.1em;box-shadow:0 10px 20px -8px rgba(0,0,0,.5)}

/* =========================================================
   FLOATING OFFER CARD
   ========================================================= */
.of-stack{position:fixed;left:24px;bottom:24px;z-index:95;font-family:var(--sans)}
.of-w{animation:ofIn .7s var(--pop) .9s both}
@keyframes ofIn{from{opacity:0;transform:translateY(40px) scale(.9)}to{opacity:1;transform:none}}
.of-card{position:relative;width:340px;border-radius:24px;padding:2px;background:linear-gradient(135deg,var(--red-3),var(--red),#C8F07A,var(--red-2));background-size:300% 300%;animation:ofBorder 6s linear infinite;box-shadow:0 24px 50px -14px rgba(0,0,0,.55),0 0 40px -10px rgba(85,185,106,.5)}
@keyframes ofBorder{0%{background-position:0 50%}50%{background-position:100% 50%}100%{background-position:0 50%}}
.of-in{position:relative;overflow:hidden;border-radius:22px;padding:16px;color:#fff;background:radial-gradient(260px 160px at 100% 0,rgba(85,185,106,.3),transparent 70%),#0E1A12}
.of-in .mx{--s:110px;--o:.08;right:-30px;bottom:-30px}
.of-ctrl{position:absolute;right:12px;top:12px;display:flex;gap:6px;z-index:2}
.of-ctrl button{width:26px;height:26px;border-radius:50%;background:rgba(255,255,255,.1);color:#fff;font-size:15px;line-height:1;display:grid;place-items:center;text-align:center}
.of-ctrl button:hover{background:rgba(255,255,255,.22)}
.of-tag{display:inline-flex;align-items:center;gap:6px;background:rgba(229,72,77,.16);border:1px solid rgba(255,138,142,.5);color:#FF9A8D;font-size:.64rem;font-weight:800;letter-spacing:.12em;padding:4px 9px;border-radius:999px}
.of-tag::before{content:"";width:7px;height:7px;border-radius:50%;background:#FF4D40;animation:ofBlink 1.2s infinite}
@keyframes ofBlink{50%{opacity:.25}}
.of-head{display:flex;gap:12px;align-items:center;margin-top:10px}
.of-logo{width:48px;height:48px;border-radius:14px;flex-shrink:0;background:linear-gradient(135deg,var(--red-3),var(--red) 60%,var(--red-deep));display:grid;place-items:center;position:relative;box-shadow:0 8px 18px -6px rgba(39,128,63,.8)}
.of-logo::before,.of-logo::after{content:"";position:absolute;background:#fff;border-radius:3px}
.of-logo::before{width:8px;height:24px}.of-logo::after{width:24px;height:8px}
.of-title{font-size:1.02rem;font-weight:800;line-height:1.25;margin:0;color:#fff}
.of-title span{font-family:var(--serif);font-style:italic;font-weight:400;color:var(--red-3);font-size:1.15em}
.of-sub{font-size:.76rem;color:#B9CDBF;margin-top:3px;line-height:1.4}
.of-feat{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:12px 0}
.of-feat span{display:flex;gap:6px;align-items:flex-start;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:10px;padding:6px 8px;font-size:.7rem;color:#DBE7DE;line-height:1.3}
.of-feat span::before{content:"+";color:var(--red-3);font-weight:900}
.of-tm small{display:block;font-size:.64rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#FF9A8D}
.of-cd{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin:6px 0 12px}
.of-cd div{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:10px;text-align:center;padding:5px 2px}
.of-cd b{display:block;font-size:1.05rem;font-weight:800;line-height:1.1;font-variant-numeric:tabular-nums}
.of-cd em{font-style:normal;font-size:.56rem;letter-spacing:.08em;color:#9FB6A6;text-transform:uppercase}
.of-price{display:flex;align-items:baseline;gap:8px;margin-bottom:8px}
.of-price b{font-size:1.5rem;font-weight:800;color:#C8F07A}
.of-price b small{font-size:.75rem;color:#9FB6A6;font-weight:700;margin-left:2px}
.of-price s{color:#8AA093;font-size:.8rem}
.of-price em{font-style:normal;margin-left:auto;font-size:.68rem;font-weight:800;color:#0E1A12;background:#C8F07A;padding:3px 8px;border-radius:999px}
.of-slots{display:flex;align-items:center;gap:8px;font-size:.76rem;color:#DBE7DE;margin-bottom:10px}
.of-slots span{display:inline-flex;gap:4px}
.of-slots i{width:10px;height:10px;border-radius:3px;background:#FF4D40;box-shadow:0 0 0 2px rgba(255,77,64,.25)}
.of-slots b{color:#fff}
.of-cta{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;gap:8px;width:100%;background:var(--red-2);color:#04150A;font-weight:800;font-size:.9rem;padding:12px;border-radius:999px;box-shadow:0 10px 24px -8px rgba(85,185,106,.8);transition:transform .2s}
.of-cta:hover{transform:translateY(-2px)}
.of-cta::after{content:"";position:absolute;top:0;left:-60%;width:40%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.6),transparent);transform:skewX(-20deg);animation:ofShine 2.8s ease-in-out infinite}
@keyframes ofShine{0%,60%{left:-60%}100%{left:130%}}
.of-note{text-align:center;font-size:.68rem;color:#9FB6A6;margin-top:8px}
.of-pill{display:none;align-items:center;gap:10px;background:linear-gradient(135deg,var(--red),var(--red-deep));color:#fff;border:2px solid #C8F07A;border-radius:999px;padding:6px 14px 6px 6px;box-shadow:0 14px 30px -10px rgba(39,128,63,.8),0 0 26px -4px rgba(200,240,122,.5);font-weight:700;font-size:.84rem}
.of-pill .of-logo{width:34px;height:34px;border-radius:50%}
.of-pill .of-logo::before{width:6px;height:16px}.of-pill .of-logo::after{width:16px;height:6px}
.of-pill .pt{background:#C8F07A;color:#0E1A12;padding:2px 8px;border-radius:999px;font-size:.7rem;font-weight:800}
.of-w.min .of-card{display:none}
.of-w.min .of-pill{display:inline-flex;animation:pillPulse 2.6s ease-in-out infinite}
@keyframes pillPulse{50%{box-shadow:0 14px 30px -10px rgba(39,128,63,.8),0 0 0 8px rgba(200,240,122,.15)}}
@media (max-width:760px){.of-stack{left:12px;bottom:84px}.of-card{width:min(310px,calc(100vw - 90px))}.of-feat span{font-size:.64rem}}
