/* ============================================================
   FANFUSER — Artist Marketing Site
   Base:   Skeleton 5 v1
   ============================================================ */

:root{
  --black:#080810;--dark:#0d0d18;--surface:#131320;--card:#1a1a2c;--card-hi:#21213a;
  --coral:#ff7d4b;--coral2:#ff9464;--coral-dim:rgba(255,125,75,.10);--coral-glow:rgba(255,125,75,.30);
  --amber:#fab05a;--cyan:#45b7ec;--lime:#c8f53a;--pink:#ff5c87;--lilac:#a78bfa;
  --white:#f2f0e8;--muted:#9090ac;--faint:#44445a;--bdr:rgba(255,255,255,.07);--bdr-hi:rgba(255,255,255,.12);
  --lt-bg:#f5f2ec;--lt-bg2:#ede9e2;--lt-text:#0d0d18;--lt-muted:#6a6880;--lt-bdr:rgba(13,13,24,.10);
  --fd:'Unbounded',sans-serif;
  --fb:'Plus Jakarta Sans',sans-serif;
  --fm:'Fira Code',monospace;
  --ease:cubic-bezier(.16,1,.3,1);--bounce:cubic-bezier(.34,1.56,.64,1);
  --rail-w:160px;
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{font-family:var(--fb);background:var(--dark);color:var(--white);overflow-x:hidden;line-height:1.6;}
a{color:inherit;text-decoration:none;}
::selection{background:var(--coral);color:#fff;}

/* ══════════════════════════════════════════════════════════
   TRANSPARENT LEFT RAIL NAV
══════════════════════════════════════════════════════════ */
.rail{
  position:fixed;top:0;left:0;bottom:0;
  width:var(--rail-w);z-index:1000;
  display:flex;flex-direction:column;align-items:flex-start;
  justify-content:space-between;
  padding:2.5rem 0 2.5rem 1.4rem;
  background:transparent;
  pointer-events:none;
}

.rail__logo{
  pointer-events:all;
  font-family:var(--fd);font-size:.62rem;font-weight:900;
  letter-spacing:.14em;text-transform:uppercase;
  cursor:pointer;
  color:var(--white);
  filter:drop-shadow(0 1px 4px rgba(0,0,0,.7));
  transition:color .3s, filter .3s;
}
.rail__logo em{color:var(--coral);font-style:normal;}
.rail--light .rail__logo{color:var(--lt-text);filter:none;}
.rail--orange .rail__logo{color:rgba(0,0,0,.75);filter:none;}

.rail__nav{
  display:flex;flex-direction:column;
  justify-content:space-between;
  align-items:flex-start;
  position:absolute;
  top:6rem;bottom:6rem;left:1.4rem;
  width:calc(var(--rail-w) - 1.4rem);
  padding-left:28px;
}
.rail__nav::before{
  content:'';position:absolute;
  top:0;bottom:0;left:9px;width:1px;
  background:linear-gradient(to bottom,
    transparent 0%,rgba(255,255,255,.18) 8%,
    rgba(255,255,255,.18) 92%,transparent 100%);
  pointer-events:none;transition:background .35s;
}
.rail--light .rail__nav::before{
  background:linear-gradient(to bottom,
    transparent 0%,rgba(0,0,0,.18) 8%,
    rgba(0,0,0,.18) 92%,transparent 100%);
}
.rail--orange .rail__nav::before{
  background:linear-gradient(to bottom,
    transparent 0%,rgba(0,0,0,.20) 8%,
    rgba(0,0,0,.20) 92%,transparent 100%);
}
.rail__prog{
  position:absolute;top:0;left:9px;width:1px;
  background:var(--coral);transform-origin:top;transform:scaleY(0);
  transition:transform .12s linear;pointer-events:none;
}

.rail__item{
  pointer-events:all;
  position:relative;
  cursor:pointer;
}
.rail__dot{
  position:absolute;
  left:-23px;top:50%;transform:translateY(-50%);
  width:8px;height:8px;border-radius:50%;
  background:rgba(255,255,255,.20);border:1.5px solid rgba(255,255,255,.25);
  transition:all .3s var(--ease);z-index:1;
}
.rail--light .rail__dot{background:rgba(0,0,0,.14);border-color:rgba(0,0,0,.22);}
.rail--orange .rail__dot{background:rgba(0,0,0,.16);border-color:rgba(0,0,0,.25);}
.rail__dot::after{
  content:'';position:absolute;inset:-6px;border-radius:50%;
  background:var(--coral-glow);opacity:0;transition:opacity .3s;
}
.rail__item:hover .rail__dot,
.rail__item.active .rail__dot{
  background:var(--coral);border-color:var(--coral);
  box-shadow:0 0 10px var(--coral-glow);
}
.rail__item:hover .rail__dot::after,
.rail__item.active .rail__dot::after{opacity:1;}

.rail__lbl{
  display:block;
  font-family:var(--fm);font-size:.52rem;letter-spacing:.1em;text-transform:uppercase;
  color:rgba(255,255,255,.32);
  text-shadow:0 1px 6px rgba(0,0,0,.6);
  transition:color .25s, text-shadow .25s;white-space:nowrap;
  padding:.32rem 0;
}
.rail--light .rail__lbl{color:rgba(0,0,0,.30);text-shadow:none;}
.rail--orange .rail__lbl{color:rgba(0,0,0,.40);text-shadow:none;}
.rail__item:hover .rail__lbl{color:rgba(255,255,255,.88);text-shadow:0 1px 8px rgba(0,0,0,.8);}
.rail--light .rail__item:hover .rail__lbl{color:rgba(0,0,0,.70);text-shadow:none;}
.rail--orange .rail__item:hover .rail__lbl{color:rgba(0,0,0,.70);text-shadow:none;}
.rail__item.active .rail__lbl{color:var(--coral);text-shadow:none;}
.rail--light .rail__item.active .rail__lbl{color:var(--coral);}
.rail--orange .rail__item.active .rail__lbl{color:rgba(0,0,0,.75);}

.rail__cta-wrap{pointer-events:all;padding-left:1.4rem;}
.rail__cta{
  background:var(--coral);color:#fff;
  font-family:var(--fd);font-weight:700;letter-spacing:.08em;text-transform:uppercase;
  border-radius:999px;cursor:pointer;border:none;
  font-size:.52rem;padding:.55rem 1rem;
  box-shadow:0 0 12px var(--coral-glow);
  animation:railPulse 3s ease-in-out infinite;
  transition:font-size .4s var(--bounce),padding .4s var(--bounce),box-shadow .3s,transform .3s var(--bounce);
  white-space:nowrap;display:block;
}
.rail__cta:hover{
  font-size:.6rem;padding:.65rem 1.3rem;
  animation:none;transform:translateY(-2px);
  box-shadow:0 0 28px var(--coral-glow),0 6px 20px rgba(255,125,75,.4);
}
@keyframes railPulse{
  0%,100%{box-shadow:0 0 8px var(--coral-glow),0 0 0 0 rgba(255,125,75,.4);}
  50%{box-shadow:0 0 18px var(--coral-glow),0 0 0 7px rgba(255,125,75,0);}
}
@media(max-width:1000px){.rail{display:none;}}

/* ══════════════════════════════════════════════════════════
   COMPARE OVERLAY
══════════════════════════════════════════════════════════ */
.cmp-overlay{
  position:fixed;inset:0;z-index:2000;
  display:flex;flex-direction:column;
  pointer-events:none;opacity:0;
  transition:opacity .35s var(--ease);
}
.cmp-overlay.open{opacity:1;pointer-events:all;}
.cmp-overlay__backdrop{
  position:absolute;inset:0;
  background:rgba(8,8,16,.82);
  backdrop-filter:blur(18px) saturate(1.3);
  cursor:pointer;
}
.cmp-panel{
  position:absolute;bottom:0;left:0;right:0;
  max-height:80vh;overflow-y:auto;
  background:var(--black);
  border-top:1px solid rgba(255,125,75,.35);
  border-radius:28px 28px 0 0;
  padding:1.5rem 0 2rem;
  transform:translateY(100%);
  transition:transform .32s cubic-bezier(.32,1,.24,1);
}
.cmp-overlay.open .cmp-panel{transform:translateY(0);}
.cmp-panel-head{
  display:flex;align-items:center;justify-content:space-between;
  padding:0 3rem 1.2rem;
  border-bottom:1px solid var(--bdr);
  margin-bottom:1.2rem;
}
.cmp-panel-title{font-family:var(--fd);font-size:clamp(1.2rem,2.2vw,1.9rem);font-weight:900;letter-spacing:-.03em;line-height:.97;}
.cmp-panel-title .acc{color:var(--coral);}
.cmp-panel-close{
  width:38px;height:38px;border-radius:50%;
  background:rgba(255,255,255,.07);border:1px solid var(--bdr-hi);
  display:flex;align-items:center;justify-content:center;
  font-size:.9rem;cursor:pointer;color:var(--muted);
  transition:all .2s;flex-shrink:0;
}
.cmp-panel-close:hover{background:var(--coral);color:#fff;border-color:var(--coral);}
.cmp-inner{padding:0 3rem;}
.cmp-table{width:100%;border-collapse:separate;border-spacing:0 5px;}
.cmp-table thead th{
  padding:.75rem 1.2rem;font-family:var(--fm);font-size:.54rem;
  letter-spacing:.1em;text-transform:uppercase;text-align:center;
  color:var(--faint);border-bottom:1px solid var(--bdr);
}
.cmp-table thead th:first-child{text-align:left;}
.cmp-table thead th.hl-head{
  background:var(--coral);color:#fff;border-radius:8px 8px 0 0;
  font-family:var(--fd);font-size:.7rem;font-weight:700;letter-spacing:0;padding:1rem 1.2rem;
}
.cmp-table tbody td{
  padding:.7rem 1.2rem;vertical-align:middle;
  border-bottom:1px solid var(--bdr);
}
.cmp-table tbody tr:last-child td{border-bottom:none;}
.cmp-table tbody td:first-child{font-family:var(--fb);font-size:.84rem;color:var(--white);font-weight:500;}
.cmp-table tbody td.hl{
  background:rgba(255,125,75,.06);
  border-left:1px solid rgba(255,125,75,.14);
  border-right:1px solid rgba(255,125,75,.14);
  text-align:center;
}
.cmp-table tbody tr:last-child td.hl{border-radius:0 0 8px 8px;border-bottom:1px solid rgba(255,125,75,.14);}
.c-yes{color:#3dd68c;font-size:.84rem;font-weight:600;}
.c-no{color:var(--faint);}
.c-part{color:var(--amber);font-size:.8rem;}
.c-excl{
  display:inline-flex;align-items:center;gap:4px;
  background:var(--coral);color:#fff;
  font-family:var(--fm);font-size:.56rem;letter-spacing:.04em;
  padding:3px 9px;border-radius:999px;
}

/* ══════════════════════════════════════════════════════════
   SCROLL REVEALS
══════════════════════════════════════════════════════════ */
[data-r]{opacity:0;transform:translateY(52px);transition:opacity .9s var(--ease),transform .9s var(--ease);}
[data-r="left"]{transform:translateX(-56px);}
[data-r="right"]{transform:translateX(56px);}
[data-r="fade"]{transform:none;}
[data-r="scale"]{transform:scale(.9);}
[data-r].on{opacity:1;transform:none;}
[data-d="1"]{transition-delay:.12s;}[data-d="2"]{transition-delay:.24s;}
[data-d="3"]{transition-delay:.36s;}[data-d="4"]{transition-delay:.48s;}[data-d="5"]{transition-delay:.60s;}

/* ══════════════════════════════════════════════════════════
   UTILITIES
══════════════════════════════════════════════════════════ */
.container{max-width:1440px;margin:0 auto;padding:0 3rem;padding-left:calc(var(--rail-w) + 2.5rem);}
@media(max-width:1000px){.container{padding-left:2rem;}}
.section{padding:8rem 0;}
.overline{
  font-family:var(--fm);font-size:.6rem;letter-spacing:.18em;text-transform:uppercase;
  color:var(--coral);display:flex;align-items:center;gap:.5rem;margin-bottom:1.5rem;
}
.overline::before{content:'';width:16px;height:1px;background:currentColor;}

/* ══════════════════════════════════════════════════════════
   BUTTONS
══════════════════════════════════════════════════════════ */
.btn{display:inline-flex;align-items:center;gap:.5rem;padding:13px 30px;border-radius:999px;font-family:var(--fb);font-size:.95rem;font-weight:700;cursor:pointer;transition:all .25s var(--ease);border:none;}
.btn--coral{background:var(--coral);color:#fff;}
.btn--coral:hover{background:var(--coral2);transform:translateY(-2px);box-shadow:0 8px 28px var(--coral-glow);}
.btn--ghost{background:transparent;color:var(--white);border:1.5px solid var(--bdr-hi);}
.btn--ghost:hover{border-color:var(--coral);color:var(--coral);}
.btn--dark{background:var(--black);color:var(--white);}
.btn--dark:hover{background:var(--surface);transform:translateY(-2px);}
.btn--lt-ghost{background:transparent;color:var(--lt-text);border:1.5px solid var(--lt-bdr);}
.btn--lt-ghost:hover{border-color:var(--coral);color:var(--coral);}
.btn--white{background:#fff;color:var(--coral);font-weight:700;}
.btn--white:hover{background:var(--lt-bg);transform:translateY(-2px);box-shadow:0 8px 28px rgba(0,0,0,.2);}

/* ══════════════════════════════════════════════════════════
   HERO
══════════════════════════════════════════════════════════ */
.hero{
  min-height:100vh;display:flex;align-items:center;
  background:#04040a;position:relative;overflow:hidden;padding:7rem 0 6rem;
}
.hero__grid{
  position:absolute;inset:0;
  background-image:linear-gradient(rgba(255,255,255,.016) 1px,transparent 1px),
    linear-gradient(to right,rgba(255,255,255,.016) 1px,transparent 1px);
  background-size:80px 80px;pointer-events:none;
}
.hero__bloom-a{position:absolute;top:-120px;right:-80px;width:700px;height:700px;border-radius:50%;background:radial-gradient(circle,rgba(255,125,75,.10) 0%,transparent 65%);animation:drift 16s ease-in-out infinite alternate;pointer-events:none;}
.hero__bloom-b{position:absolute;bottom:-80px;left:5%;width:500px;height:500px;border-radius:50%;background:radial-gradient(circle,rgba(69,183,236,.07) 0%,transparent 65%);animation:drift 18s ease-in-out infinite alternate-reverse;pointer-events:none;}
.hero__ghost{
  position:absolute;top:5%;left:calc(var(--rail-w) + 1rem);
  font-family:var(--fd);font-size:clamp(4rem,8vw,10rem);font-weight:900;line-height:1;
  letter-spacing:-.04em;color:rgba(255,255,255,.06);pointer-events:none;user-select:none;
  white-space:nowrap;will-change:transform;
  max-width:calc(100vw - var(--rail-w) - 2rem);
  overflow:hidden;
}
.hero__inner{
  position:relative;z-index:1;
  display:grid;grid-template-columns:1fr auto;gap:5rem;align-items:center;width:100%;
}
.hero__kicker{
  display:inline-flex;align-items:center;gap:.5rem;padding:5px 14px;border-radius:999px;
  background:rgba(255,125,75,.08);border:1px solid rgba(255,125,75,.2);
  font-family:var(--fm);font-size:.58rem;letter-spacing:.1em;text-transform:uppercase;
  color:var(--coral);margin-bottom:2rem;
}
.hero__kicker-dot{width:5px;height:5px;border-radius:50%;background:var(--coral);animation:blink 2s infinite;}
.hero__hed{
  font-family:var(--fd);font-size:clamp(3rem,6.5vw,7.5rem);font-weight:900;
  line-height:.93;letter-spacing:-.04em;margin-bottom:2rem;
}
.hero__hed .line1{display:block;color:var(--white);}
.hero__hed .line2{display:block;color:var(--coral);}
.hero__hed .your{position:relative;display:inline-block;}
.hero__hed .your::after{
  content:'';position:absolute;left:-2px;right:-2px;bottom:4px;height:6px;
  background:var(--coral);opacity:.22;border-radius:2px;
  transform:scaleX(0);transform-origin:left;
  transition:transform 1s .5s var(--ease);
}
.hero__hed .your.drawn::after{transform:scaleX(1);}
.hero__sub{font-size:clamp(1rem,1.6vw,1.15rem);color:var(--muted);line-height:1.8;max-width:540px;margin-bottom:2.5rem;}
.hero__acts{display:flex;gap:.75rem;flex-wrap:wrap;margin-bottom:3rem;}
.hero__proof{display:flex;align-items:center;gap:1rem;}
.proof-faces{display:flex;}
.pf{width:32px;height:32px;border-radius:50%;border:2px solid var(--black);margin-right:-9px;flex-shrink:0;}
.pf:nth-child(1){background:linear-gradient(135deg,var(--coral),var(--amber));}
.pf:nth-child(2){background:linear-gradient(135deg,var(--cyan),var(--lilac));}
.pf:nth-child(3){background:linear-gradient(135deg,var(--lime),var(--cyan));}
.pf:nth-child(4){background:linear-gradient(135deg,var(--pink),var(--coral));}
.proof-txt{font-size:.88rem;color:var(--muted);}
.proof-txt strong{color:var(--white);}

/* Hero right — card stack */
.hero__cards{position:relative;width:280px;height:440px;flex-shrink:0;}
.hcard{position:absolute;border-radius:24px;overflow:hidden;}
.hcard--back{
  width:240px;height:380px;top:30px;right:-16px;
  background:var(--card);border:1px solid var(--bdr);
  transform:rotate(8deg);display:flex;align-items:flex-end;padding:1.25rem;
}
.hcard--back-text{font-family:var(--fd);font-size:1.2rem;font-weight:900;color:rgba(255,255,255,.06);line-height:1.1;}
.hcard--mid{
  width:250px;height:400px;top:16px;left:-10px;
  background:var(--coral);transform:rotate(-4deg);
  display:flex;align-items:flex-end;padding:1.5rem;
}
.hcard--mid .big{font-family:var(--fd);font-size:2rem;font-weight:900;color:#fff;line-height:1;}
.hcard--mid .sub{font-family:var(--fm);font-size:.58rem;color:rgba(255,255,255,.7);letter-spacing:.1em;margin-top:6px;}
.hcard--front{
  width:260px;height:420px;top:0;left:10px;z-index:2;
  background:var(--card);border:1px solid var(--bdr-hi);
}
.hcard-img{
  height:62%;background:linear-gradient(160deg,var(--card-hi),var(--surface));
  display:flex;align-items:center;justify-content:center;
  font-family:var(--fm);font-size:.55rem;color:var(--faint);letter-spacing:.1em;
  overflow:hidden;position:relative;
}
.hcard-img img{width:100%;height:100%;object-fit:cover;object-position:center 30%;display:block;}
.hcard-info{padding:1rem;border-top:1px solid var(--bdr);}
.hcard-name{font-family:var(--fd);font-size:.9rem;font-weight:700;letter-spacing:-.01em;margin-bottom:3px;}
.hcard-meta{font-family:var(--fm);font-size:.52rem;color:var(--faint);letter-spacing:.06em;}
.hcard-stats{display:flex;gap:.75rem;margin-top:.6rem;}
.hcard-stat-n{font-family:var(--fd);font-size:1.1rem;font-weight:900;color:var(--coral);line-height:1;}
.hcard-stat-l{font-family:var(--fm);font-size:.48rem;color:var(--faint);letter-spacing:.05em;margin-top:1px;}
/* Floating badges */
.fbadge{
  position:absolute;border-radius:999px;padding:8px 16px;z-index:3;
  font-family:var(--fd);font-size:.75rem;font-weight:900;line-height:1;
}
.fbadge-sub{font-family:var(--fm);font-size:.48rem;letter-spacing:.06em;margin-top:3px;}
.fbadge--1{background:var(--lime);color:var(--black);top:-20px;right:-30px;animation:floatBadge 4s ease-in-out infinite;}
.fbadge--1 .fbadge-sub{color:rgba(14,14,26,.6);}
.fbadge--2{background:var(--cyan);color:var(--black);bottom:60px;right:-44px;animation:floatBadge 5s ease-in-out infinite reverse;}
.fbadge--2 .fbadge-sub{color:rgba(14,14,26,.6);}
/* Scroll hint */
.hero__scroll{
  position:absolute;bottom:2rem;left:calc(var(--rail-w) + 2.5rem);
  display:flex;align-items:center;gap:.75rem;
  font-family:var(--fm);font-size:.58rem;letter-spacing:.12em;color:var(--faint);
}
.hero__scroll-line{width:40px;height:1px;background:linear-gradient(to right,var(--faint),transparent);}

/* ══════════════════════════════════════════════════════════
   MARQUEE + COMPARE PILL
══════════════════════════════════════════════════════════ */
.marquee-wrap{position:relative;}
.marquee{overflow:hidden;background:var(--coral);padding:12px 0;}
.mq-track{display:inline-flex;animation:ticker 20s linear infinite;}
.mq-item{
  display:inline-flex;align-items:center;gap:2rem;padding:0 2.5rem;
  font-family:var(--fd);font-size:.82rem;font-weight:700;color:#fff;
  letter-spacing:.03em;text-transform:uppercase;
}
.mq-sep{color:rgba(255,255,255,.4);}

.cmp-pill-bar{
  display:flex;justify-content:flex-end;align-items:center;
  padding:.7rem 3rem .7rem calc(var(--rail-w) + 2.5rem);
  background:var(--surface);
  border-bottom:1px solid var(--bdr);
}
.cmp-pill{
  display:inline-flex;align-items:center;gap:.6rem;
  padding:7px 18px;border-radius:999px;cursor:pointer;
  background:rgba(255,125,75,.08);
  border:1px solid rgba(255,125,75,.25);
  font-family:var(--fm);font-size:.58rem;letter-spacing:.1em;text-transform:uppercase;
  color:var(--coral);transition:all .25s;
  animation:pillPulse 4s ease-in-out infinite;
}
.cmp-pill:hover{background:rgba(255,125,75,.15);border-color:var(--coral);animation:none;transform:translateY(-1px);}
.cmp-pill__icon{
  width:18px;height:18px;border-radius:50%;background:var(--coral);
  color:#fff;display:flex;align-items:center;justify-content:center;font-size:.62rem;
}
@keyframes pillPulse{
  0%,100%{box-shadow:0 0 0 0 rgba(255,125,75,.3);}
  50%{box-shadow:0 0 0 5px rgba(255,125,75,0);}
}

/* ══════════════════════════════════════════════════════════
   PROBLEM SECTION
══════════════════════════════════════════════════════════ */
.problem{background:var(--surface);position:relative;overflow:hidden;}
.problem::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(to right,transparent,var(--coral),transparent);}
.problem__headline{
  font-family:var(--fd);font-size:clamp(2.5rem,5vw,5rem);font-weight:900;
  letter-spacing:-.04em;line-height:.95;margin-bottom:1.5rem;
}
.problem__headline span{color:var(--coral);}
.problem__body{font-size:1rem;color:var(--muted);line-height:1.8;max-width:620px;margin-bottom:3.5rem;}
.problem__cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;}
.prob-card{
  background:var(--card);border:1px solid var(--bdr);
  border-radius:20px;overflow:hidden;position:relative;
  transition:border-color .3s,transform .4s var(--ease);
  display:flex;flex-direction:column;
}
.prob-card:hover{border-color:rgba(255,125,75,.45);transform:translateY(-6px);}
.prob-card::before{
  content:'';position:absolute;top:0;left:0;right:0;height:2px;
  background:var(--coral);transform:scaleX(0);transform-origin:left;
  transition:transform .4s var(--ease);z-index:2;
}
.prob-card:hover::before{transform:scaleX(1);}
.prob-card__img{
  position:relative;width:100%;height:200px;overflow:hidden;flex-shrink:0;
}
.prob-card__img img{
  width:100%;height:100%;object-fit:cover;object-position:top;
  display:block;
}
.prob-card__img::after{
  content:'';position:absolute;inset:0;
  background:linear-gradient(to bottom,transparent 40%,var(--card) 100%);
}
.prob-card__body{padding:1.25rem 1.5rem 1.5rem;}
.prob-card__title{font-family:var(--fd);font-size:.95rem;font-weight:700;letter-spacing:-.01em;margin-bottom:.65rem;}
.prob-card__text{font-size:.88rem;color:var(--muted);line-height:1.75;}

/* ══════════════════════════════════════════════════════════
   FEATURE SECTIONS
══════════════════════════════════════════════════════════ */
.fd-sec{background:var(--dark);}
.fs-sec{background:var(--surface);}
.ff-sec{background:var(--coral);position:relative;overflow:hidden;}
.ff-sec::before{content:'';position:absolute;inset:0;background-image:repeating-linear-gradient(-45deg,transparent,transparent 30px,rgba(0,0,0,.04) 30px,rgba(0,0,0,.04) 32px);pointer-events:none;}
.fl-sec{background:var(--lt-bg);}
.f-layout{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:start;}
.f-layout--flip .f-text{order:2;}.f-layout--flip .f-viz-wrap{order:1;}

.f-num{font-family:var(--fm);font-size:.56rem;letter-spacing:.12em;text-transform:uppercase;color:var(--faint);margin-bottom:.5rem;}
.ff-sec .f-num{color:rgba(255,255,255,.5);}
.fl-sec .f-num{color:var(--lt-muted);}
.f-title{font-family:var(--fd);font-size:clamp(2rem,3.5vw,3.8rem);font-weight:900;line-height:.95;letter-spacing:-.04em;margin-bottom:1.25rem;}
.f-title .acc{color:var(--coral);}
.ff-sec .f-title{color:#fff;}
.ff-sec .f-title .acc{color:var(--black);}
.fl-sec .f-title{color:var(--lt-text);}
.f-body{font-size:1rem;color:var(--muted);line-height:1.8;margin-bottom:1.5rem;}
.ff-sec .f-body{color:rgba(255,255,255,.8);}
.fl-sec .f-body{color:var(--lt-muted);}

/* Short clarify accordion */
.clarify{margin-bottom:1.75rem;}
.cl-item{border-bottom:1px solid var(--bdr);}
.ff-sec .cl-item{border-bottom-color:rgba(0,0,0,.15);}
.fl-sec .cl-item{border-bottom-color:var(--lt-bdr);}
.cl-btn{width:100%;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.85rem 0;background:none;border:none;cursor:pointer;text-align:left;font-family:var(--fb);font-size:.88rem;font-weight:600;color:var(--white);transition:color .2s;}
.ff-sec .cl-btn{color:#fff;}
.fl-sec .cl-btn{color:var(--lt-text);}
.cl-btn:hover{color:var(--coral);}
.ff-sec .cl-btn:hover{color:var(--black);}
.cl-chev{width:22px;height:22px;border-radius:50%;border:1.5px solid var(--bdr-hi);display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:.7rem;color:var(--muted);transition:all .3s;}
.ff-sec .cl-chev{border-color:rgba(0,0,0,.25);color:rgba(0,0,0,.5);}
.fl-sec .cl-chev{border-color:var(--lt-bdr);color:var(--lt-muted);}
.cl-item.open .cl-chev{background:var(--coral);border-color:var(--coral);color:#fff;transform:rotate(45deg);}
.cl-body{max-height:0;overflow:hidden;transition:max-height .4s var(--ease),padding .3s;font-size:.85rem;color:var(--muted);line-height:1.75;}
.ff-sec .cl-body{color:rgba(255,255,255,.8);}
.fl-sec .cl-body{color:var(--lt-muted);}
.cl-item.open .cl-body{max-height:140px;padding-bottom:1rem;}

/* VS strip */
.vs-strip{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;margin-top:1.5rem;}
.vs-lbl{font-family:var(--fm);font-size:.56rem;letter-spacing:.06em;text-transform:uppercase;color:var(--faint);}
.ff-sec .vs-lbl{color:rgba(0,0,0,.45);}
.fl-sec .vs-lbl{color:var(--lt-muted);}
.vs-tag{padding:3px 10px;border-radius:3px;border:1px solid var(--bdr-hi);color:var(--faint);font-family:var(--fm);font-size:.56rem;}
.ff-sec .vs-tag{border-color:rgba(0,0,0,.2);color:rgba(0,0,0,.5);}
.fl-sec .vs-tag{border-color:var(--lt-bdr);color:var(--lt-muted);}
.vs-tag--excl{border-color:var(--coral);color:var(--coral);background:var(--coral-dim);}
.ff-sec .vs-tag--excl{border-color:rgba(0,0,0,.4);color:var(--black);background:rgba(0,0,0,.1);}

/* ══════════════════════════════════════════════════════════
   DEEP PANEL CAROUSEL
══════════════════════════════════════════════════════════ */
.f-viz-wrap{position:relative;}
.viz-card{position:relative;padding-bottom:54px;}

/* Shimmer sweep animation */
@keyframes shimmer-sweep{
  0%    { transform:translateX(-120%) skewX(-20deg); opacity:0; }
  8%    { opacity:1; }
  40%   { transform:translateX(220%) skewX(-20deg); opacity:.7; }
  41%,100%{ transform:translateX(220%) skewX(-20deg); opacity:0; }
}
.shimmer-wrap{
  position:absolute;inset:0;border-radius:20px;
  overflow:hidden;pointer-events:none;z-index:4;
}
.shimmer-beam{
  position:absolute;top:0;bottom:0;width:60px;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.13) 40%,rgba(255,255,255,.22) 50%,rgba(255,255,255,.13) 60%,transparent);
  animation:shimmer-sweep 3.8s ease-in-out infinite;
}
#sw-a .shimmer-beam{ animation-delay:0s; }
#sw-f .shimmer-beam{ animation-delay:1.3s; }
#sw-l .shimmer-beam{ animation-delay:2.6s; }

/* Fan Feed (orange bg): brighter beam, dark pill */
#sw-f .shimmer-beam{
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.18) 40%,rgba(255,255,255,.34) 50%,rgba(255,255,255,.18) 60%,transparent);
}
#sl-f button{
  background:rgba(0,0,0,.30);
  border-color:rgba(0,0,0,.55);
  color:#fff;
}
#sl-f button:hover{ background:rgba(0,0,0,.50); border-color:rgba(0,0,0,.8); }

/* FanLinks (light bg): coral-tinted beam, coral pill */
#sw-l .shimmer-beam{
  background:linear-gradient(90deg,transparent,rgba(255,125,75,.12) 40%,rgba(255,125,75,.28) 50%,rgba(255,125,75,.12) 60%,transparent);
}
#sl-l button{
  background:rgba(255,125,75,.12);
  border-color:rgba(255,125,75,.55);
  color:var(--coral);
}
#sl-l button:hover{ background:rgba(255,125,75,.24); border-color:var(--coral); }

/* Explore pill — base style */
.shimmer-label{
  position:absolute;bottom:14px;left:0;right:0;
  display:flex;justify-content:center;z-index:5;pointer-events:auto;
}
.shimmer-label button{
  display:flex;align-items:center;gap:.4rem;
  padding:.35rem .85rem;
  background:rgba(255,125,75,.14);
  border:1px solid rgba(255,125,75,.35);
  border-radius:100px;cursor:pointer;
  font-family:var(--fm);font-size:.52rem;letter-spacing:.1em;text-transform:uppercase;
  color:var(--coral);transition:background .2s,border-color .2s;
}
.shimmer-label button:hover{ background:rgba(255,125,75,.28); border-color:var(--coral); }

/* Orange borders on nav controls when carousel is open */
.deep-carousel.open .dc-arrow,
.deep-carousel.open .dc-close{
  border-color:var(--coral);
  border-width:2px;
}
.dc-close{
  color:var(--coral) !important;
}

/* Deep carousel panel */
.deep-carousel{
  position:absolute;inset:0 0 54px 0;transform:translateX(110%);
  transition:transform .32s cubic-bezier(.32,1,.24,1);z-index:10;
  border-radius:20px;overflow:hidden;
  background:var(--card);border:1px solid var(--bdr-hi);
}
.fl-sec .deep-carousel{background:#fff;border-color:var(--lt-bdr);}
.ff-sec .deep-carousel{background:var(--black);border-color:rgba(255,255,255,.12);}
.deep-carousel.open{transform:translateX(0);}

.dc-header{
  display:flex;align-items:center;justify-content:space-between;
  padding:.9rem 1.25rem;border-bottom:1px solid var(--bdr);background:var(--card-hi);
}
.fl-sec .dc-header{background:var(--lt-bg2);border-bottom-color:var(--lt-bdr);}
.ff-sec .dc-header{background:var(--dark);border-bottom-color:rgba(255,255,255,.08);}
.dc-nav{display:flex;align-items:center;gap:.5rem;}
.dc-arrow{
  width:28px;height:28px;border-radius:50%;background:rgba(255,255,255,.06);
  border:1px solid var(--bdr-hi);display:flex;align-items:center;justify-content:center;
  font-size:.75rem;cursor:pointer;color:var(--muted);transition:all .2s;flex-shrink:0;
}
.fl-sec .dc-arrow{background:rgba(13,13,24,.05);border-color:var(--lt-bdr);color:var(--lt-muted);}
.dc-arrow:hover{background:var(--coral);border-color:var(--coral);color:#fff;}
.dc-arrow:disabled{opacity:.25;pointer-events:none;}
.dc-pips{display:flex;gap:5px;align-items:center;}
.dc-pip{width:6px;height:6px;border-radius:50%;background:var(--bdr-hi);transition:all .25s;cursor:pointer;}
.fl-sec .dc-pip{background:var(--lt-bdr);}
.dc-pip.active{background:var(--coral);width:14px;border-radius:3px;}
.dc-close{
  width:28px;height:28px;border-radius:50%;background:rgba(255,255,255,.06);
  border:1px solid var(--bdr-hi);display:flex;align-items:center;justify-content:center;
  font-size:.75rem;cursor:pointer;color:var(--faint);transition:all .2s;flex-shrink:0;
}
.fl-sec .dc-close{background:rgba(13,13,24,.05);border-color:var(--lt-bdr);color:var(--lt-muted);}
.dc-close:hover{background:var(--coral);color:#fff;border-color:var(--coral);}
.dc-viewport{overflow:hidden;height:calc(100% - 52px);}
.dc-track{display:flex;height:100%;transition:transform .45s var(--ease);}
.dc-slide{min-width:100%;height:100%;padding:1.25rem;overflow-y:auto;}
.dc-title{font-family:var(--fd);font-size:.85rem;font-weight:700;letter-spacing:-.01em;margin-bottom:.5rem;}
.fl-sec .dc-title{color:var(--lt-text);}
.dc-body{font-size:.83rem;color:var(--muted);line-height:1.75;margin-bottom:1rem;}
.fl-sec .dc-body{color:var(--lt-muted);}
.dc-list{list-style:none;display:flex;flex-direction:column;gap:.55rem;margin-bottom:1rem;}
.dc-list li{display:flex;align-items:flex-start;gap:.6rem;font-size:.82rem;color:var(--muted);}
.fl-sec .dc-list li{color:var(--lt-muted);}
.dc-list li::before{content:'→';color:var(--coral);flex-shrink:0;margin-top:1px;}
.dc-list li strong{color:var(--white);}
.fl-sec .dc-list li strong{color:var(--lt-text);}
.dc-bars{display:flex;flex-direction:column;gap:.5rem;margin-top:.75rem;}
.dc-bar-row{display:flex;align-items:center;gap:.6rem;}
.dc-bar-lbl{font-family:var(--fm);font-size:.5rem;color:var(--faint);width:70px;flex-shrink:0;}
.fl-sec .dc-bar-lbl{color:var(--lt-muted);}
.dc-bar-track{flex:1;height:5px;background:var(--bdr);border-radius:3px;overflow:hidden;}
.fl-sec .dc-bar-track{background:var(--lt-bdr);}
.dc-bar-fill{height:100%;background:var(--coral);border-radius:3px;}
.dc-bar-val{font-family:var(--fm);font-size:.5rem;color:var(--coral);}

/* ══════════════════════════════════════════════════════════
   VISUAL MOCKUPS
══════════════════════════════════════════════════════════ */
.viz{background:var(--card);border:1px solid var(--bdr-hi);border-radius:20px;overflow:hidden;box-shadow:0 28px 72px rgba(0,0,0,.5);}
.viz-bar{display:flex;align-items:center;justify-content:space-between;padding:.65rem 1.2rem;background:var(--card-hi);border-bottom:1px solid var(--bdr);}
.vdots{display:flex;gap:5px;}
.vd{width:9px;height:9px;border-radius:50%;}
.vd:nth-child(1){background:#ff6058;}.vd:nth-child(2){background:#ffbd2e;}.vd:nth-child(3){background:#27c93f;}
.vz-lbl{font-family:var(--fm);font-size:.56rem;color:var(--faint);}
.vz-live{display:flex;align-items:center;gap:4px;font-family:var(--fm);font-size:.52rem;color:#27c93f;}
.vz-dot{width:5px;height:5px;border-radius:50%;background:#27c93f;animation:blink 1.5s infinite;}
.viz-body{padding:1.25rem;}
.kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:.6rem;margin-bottom:1rem;}
.kpi{background:var(--card-hi);border:1px solid var(--bdr);border-radius:12px;padding:.8rem;position:relative;overflow:hidden;}
.kpi::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;}
.kpi:nth-child(1)::before{background:var(--coral);}
.kpi:nth-child(2)::before{background:var(--cyan);}
.kpi:nth-child(3)::before{background:var(--amber);}
.kpi-v{font-family:var(--fd);font-size:1.65rem;font-weight:900;line-height:1;}
.kpi:nth-child(1) .kpi-v{color:var(--coral);}
.kpi:nth-child(2) .kpi-v{color:var(--cyan);}
.kpi:nth-child(3) .kpi-v{color:var(--amber);}
.kpi-l{font-family:var(--fm);font-size:.48rem;letter-spacing:.07em;text-transform:uppercase;color:var(--faint);margin-top:2px;}
.kpi-d{font-family:var(--fm);font-size:.48rem;color:#3dd68c;margin-top:3px;}
.spark{height:52px;display:flex;align-items:flex-end;gap:2px;background:var(--card-hi);border:1px solid var(--bdr);border-radius:12px;padding:.6rem;margin-bottom:1rem;}
.sb{flex:1;border-radius:2px 2px 0 0;background:rgba(255,125,75,.2);min-height:3px;}
.sb-hi{background:rgba(255,125,75,.85);}.sb-md{background:rgba(255,125,75,.48);}
.fan-rows{display:flex;flex-direction:column;}
.fan-row{display:flex;align-items:center;gap:.65rem;padding:.55rem 0;border-bottom:1px solid var(--bdr);}
.fan-row:last-child{border-bottom:none;}
.fan-av{width:27px;height:27px;border-radius:7px;flex-shrink:0;background:linear-gradient(135deg,var(--coral),var(--amber));}
.fan-av-b{background:linear-gradient(135deg,var(--cyan),rgba(55,19,236,.5));}
.fan-av-c{background:linear-gradient(135deg,var(--lime),var(--cyan));}
.fan-name{flex:1;font-size:.78rem;font-weight:600;}
.fan-stat{font-family:var(--fm);font-size:.52rem;color:var(--faint);}
.fan-score{font-family:var(--fm);font-size:.58rem;color:var(--coral);background:var(--coral-dim);border-radius:999px;padding:2px 7px;}

/* Feed grid */
.feed-rows{display:flex;flex-direction:column;gap:12px;}
.feed-row-pair{display:flex;gap:12px;}
.feed-row-pair:nth-child(even){margin-left:20px;}
.feed-v{flex:1;border-radius:16px;overflow:hidden;border:2px solid rgba(255,255,255,.16);}
.feed-v:nth-child(1){background:linear-gradient(160deg,#2a1040,#0d0d14);}
.feed-v:nth-child(2){background:linear-gradient(160deg,#0d1828,#171a30);}
.feed-v-img{aspect-ratio:9/16;max-height:130px;}
.feed-v-meta{padding:.4rem .65rem;background:rgba(0,0,0,.3);display:flex;justify-content:space-between;}
.feed-v-loc{font-family:var(--fm);font-size:.46rem;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.75);}
.feed-v-ct{font-family:var(--fm);font-size:.46rem;color:rgba(255,255,255,.45);}
.ff-badge-pill{display:inline-flex;align-items:center;gap:.5rem;padding:7px 18px;border-radius:999px;background:rgba(0,0,0,.18);border:2px solid rgba(0,0,0,.2);font-family:var(--fd);font-size:.62rem;font-weight:700;color:#fff;margin-bottom:1.5rem;}
.ff-badge-dot{width:7px;height:7px;border-radius:50%;background:#fff;animation:blink 1.5s infinite;}

/* FanLinks */
.fl-card{background:var(--lt-bg2);border:1px solid var(--lt-bdr);border-radius:20px;padding:1.5rem;box-shadow:0 16px 48px rgba(0,0,0,.1);}
.fl-av{width:52px;height:52px;border-radius:14px;background:linear-gradient(135deg,var(--coral),var(--amber));margin:0 auto .75rem;}
.fl-name{font-family:var(--fd);font-size:1rem;font-weight:900;text-align:center;letter-spacing:-.02em;margin-bottom:2px;color:var(--lt-text);}
.fl-meta{font-family:var(--fm);font-size:.52rem;text-align:center;color:var(--lt-muted);letter-spacing:.06em;margin-bottom:1.25rem;}
.fl-tabs{display:flex;background:#e8e4dc;border-radius:999px;padding:3px;margin-bottom:1rem;}
.fl-tab{flex:1;padding:5px;text-align:center;font-family:var(--fm);font-size:.46rem;letter-spacing:.05em;text-transform:uppercase;color:var(--lt-muted);border-radius:999px;cursor:pointer;transition:all .2s;}
.fl-tab--on{background:var(--coral);color:#fff;}
.fl-links{display:flex;flex-direction:column;gap:.5rem;}
.fl-link{display:flex;align-items:center;gap:.75rem;padding:.65rem .9rem;background:#fff;border-radius:12px;font-size:.8rem;font-weight:500;color:var(--lt-text);transition:transform .2s;}
.fl-link:hover{transform:translateX(3px);}
.fl-link-ic{width:28px;height:28px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:.9rem;flex-shrink:0;}
.fl-link:nth-child(1) .fl-link-ic{background:rgba(255,125,75,.12);}
.fl-link:nth-child(2) .fl-link-ic{background:rgba(69,183,236,.12);}
.fl-link:nth-child(3) .fl-link-ic{background:rgba(250,176,90,.15);}
.fl-link:nth-child(4) .fl-link-ic{background:rgba(200,245,58,.2);}
.fl-link-ar{margin-left:auto;color:var(--lt-muted);}
.fl-stats{display:flex;gap:.5rem;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--lt-bdr);}
.fl-stat{flex:1;text-align:center;}
.fl-stat-n{font-family:var(--fd);font-size:1rem;font-weight:900;color:var(--coral);}
.fl-stat-l{font-family:var(--fm);font-size:.46rem;letter-spacing:.06em;text-transform:uppercase;color:var(--lt-muted);margin-top:1px;}

/* ══════════════════════════════════════════════════════════
   PRICING
══════════════════════════════════════════════════════════ */
.pricing{background:var(--lt-bg);}
.pr-hed{font-family:var(--fd);font-size:clamp(2.5rem,4vw,4.5rem);font-weight:900;line-height:.95;letter-spacing:-.04em;margin-bottom:1rem;color:var(--lt-text);}
.pr-hed .acc{color:var(--coral);}
.pr-sub{font-size:1rem;color:var(--lt-muted);max-width:480px;margin-bottom:3.5rem;line-height:1.75;}
.price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;}
.price-card{border-radius:24px;padding:2rem;position:relative;transition:transform .4s var(--ease);}
.price-card:hover{transform:translateY(-7px);}
.pc-free{background:#fff;border:1.5px solid var(--lt-bdr);}
.pc-pro{background:var(--dark);color:var(--white);border:1.5px solid rgba(255,125,75,.38);}
.pc-pro:hover{border-color:var(--coral);}
.pc-mgmt{background:var(--surface);color:var(--white);border:1.5px solid var(--bdr);}
.price-badge{position:absolute;top:-12px;left:50%;transform:translateX(-50%);background:var(--coral);color:#fff;font-family:var(--fm);font-size:.54rem;letter-spacing:.08em;padding:4px 14px;border-radius:999px;white-space:nowrap;}
.pr-tier{font-family:var(--fm);font-size:.56rem;letter-spacing:.14em;text-transform:uppercase;color:var(--lt-muted);margin-bottom:.75rem;}
.pc-pro .pr-tier,.pc-mgmt .pr-tier{color:var(--faint);}
.pr-num{font-family:var(--fd);font-size:3.2rem;font-weight:900;line-height:1;color:var(--lt-text);margin-bottom:4px;}
.pc-pro .pr-num{color:var(--coral);}
.pc-mgmt .pr-num{color:var(--white);}
.pr-period{font-size:.9rem;font-weight:400;color:var(--lt-muted);}
.pc-pro .pr-period,.pc-mgmt .pr-period{color:var(--muted);}
.pr-desc{font-size:.82rem;color:var(--lt-muted);margin:1rem 0;padding:1rem 0;border-top:1px solid var(--lt-bdr);}
.pc-pro .pr-desc,.pc-mgmt .pr-desc{color:var(--muted);border-top-color:var(--bdr);}
.pr-feats{list-style:none;display:flex;flex-direction:column;gap:.6rem;margin-bottom:2rem;}
.pr-feats li{font-size:.84rem;color:var(--lt-muted);display:flex;gap:.6rem;}
.pc-pro .pr-feats li,.pc-mgmt .pr-feats li{color:var(--muted);}
.pr-feats li::before{content:'→';color:var(--coral);flex-shrink:0;font-size:.7rem;margin-top:2px;}

/* ══════════════════════════════════════════════════════════
   PROOF
══════════════════════════════════════════════════════════ */
.proof-sec{background:var(--lt-bg2);}
.proof-hed{font-family:var(--fd);font-size:clamp(2rem,3.5vw,3.8rem);font-weight:900;letter-spacing:-.04em;line-height:.95;margin-bottom:3.5rem;color:var(--lt-text);}
.proof-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;}
.proof-card{background:#fff;border:1px solid var(--lt-bdr);border-radius:20px;padding:2rem;position:relative;box-shadow:0 8px 28px rgba(0,0,0,.06);transition:transform .35s var(--ease);}
.proof-card:hover{transform:translateY(-4px);}
.proof-card::before{content:'';position:absolute;top:0;left:2rem;right:2rem;height:2px;background:linear-gradient(to right,transparent,var(--coral),transparent);}
.proof-stars{color:var(--amber);font-size:.9rem;margin-bottom:1rem;letter-spacing:2px;}
.proof-q{font-size:.9rem;color:var(--lt-muted);line-height:1.75;font-style:italic;margin-bottom:1.5rem;}
.proof-author{display:flex;align-items:center;gap:.75rem;padding-top:1rem;border-top:1px solid var(--lt-bdr);}
.proof-av{width:36px;height:36px;border-radius:10px;background:linear-gradient(135deg,var(--coral),var(--amber));flex-shrink:0;}
.proof-name{font-size:.86rem;font-weight:700;color:var(--lt-text);}
.proof-role{font-family:var(--fm);font-size:.54rem;color:var(--lt-muted);margin-top:1px;}

/* ══════════════════════════════════════════════════════════
   FINALE
══════════════════════════════════════════════════════════ */
.finale{background:var(--coral);position:relative;overflow:hidden;padding:10rem 0 0;}
.finale__stripes{position:absolute;inset:0;background-image:repeating-linear-gradient(-45deg,transparent,transparent 28px,rgba(0,0,0,.04) 28px,rgba(0,0,0,.04) 30px);pointer-events:none;}
.finale__ghost{
  position:absolute;bottom:-1rem;left:0;right:0;
  font-family:var(--fd);font-size:clamp(6rem,14vw,18rem);font-weight:900;
  letter-spacing:-.04em;color:rgba(0,0,0,.07);white-space:nowrap;text-align:center;
  pointer-events:none;user-select:none;will-change:transform;
}
.finale__inner{position:relative;z-index:1;text-align:center;padding-bottom:6rem;}
.finale__kicker{
  font-family:var(--fm);font-size:.6rem;letter-spacing:.22em;text-transform:uppercase;
  color:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;gap:.6rem;margin-bottom:2rem;
}
.finale__kicker::before,.finale__kicker::after{content:'';width:36px;height:1px;background:rgba(0,0,0,.3);}
.finale__hed{font-family:var(--fd);font-size:clamp(3.5rem,9vw,11rem);font-weight:900;line-height:.9;letter-spacing:-.04em;color:#fff;margin-bottom:2rem;}
.finale__sub{font-size:1.05rem;color:rgba(255,255,255,.75);max-width:520px;margin:0 auto 3.5rem;line-height:1.8;}
.finale__acts{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap;margin-bottom:7rem;}
.finale__foot{background:var(--black);padding:2rem 0;border-top:1px solid var(--bdr);}
.finale__foot-inner{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1.5rem;}
.finale__links{display:flex;gap:1.75rem;list-style:none;flex-wrap:wrap;}
.finale__links a{font-size:.78rem;color:var(--faint);transition:color .2s;}
.finale__links a:hover{color:var(--white);}
.finale__copy{font-family:var(--fm);font-size:.56rem;color:var(--faint);}

/* ══════════════════════════════════════════════════════════
   PAGE INTRO SEQUENCE
══════════════════════════════════════════════════════════ */
#intro{
  position:fixed;inset:0;z-index:9999;
  background:var(--black);
  display:flex;align-items:center;justify-content:center;
  pointer-events:all;
  transition:opacity .6s var(--ease);
}
#intro.done{opacity:0;pointer-events:none;}
#intro-word{
  font-family:var(--fd);font-weight:900;
  font-size:clamp(4rem,12vw,14rem);
  letter-spacing:-.04em;line-height:1;
  color:var(--white);
  white-space:nowrap;
  opacity:1;
  transform:scale(1) translate(0,0);
  transform-origin:center center;
  transition:none;
}
#intro-word em{color:var(--coral);font-style:normal;}

body.intro-active{overflow:hidden;}
body.intro-active [data-r],
body.intro-active .hero__ghost,
body.intro-active .rail,
body.intro-active .marquee-wrap{
  opacity:0 !important;
  transition:none !important;
}

/* ══════════════════════════════════════════════════════════
   ANIMATIONS + RESPONSIVE
══════════════════════════════════════════════════════════ */
@keyframes drift{0%{transform:translate(0,0);}100%{transform:translate(22px,-18px);}}
@keyframes blink{0%,100%{opacity:1;}50%{opacity:.3;}}
@keyframes ticker{from{transform:translateX(0);}to{transform:translateX(-50%);}}
@keyframes floatBadge{0%,100%{transform:translateY(0);}50%{transform:translateY(-8px);}}

@media(max-width:1100px){
  .hero__inner{grid-template-columns:1fr;}.hero__cards{display:none;}
  .problem__cards{grid-template-columns:1fr;}
  .f-layout,.f-layout--flip{grid-template-columns:1fr;}
  .f-layout--flip .f-text{order:1;}.f-layout--flip .f-viz-wrap{order:2;}
  .price-grid,.proof-grid{grid-template-columns:1fr;}
}
@media(max-width:640px){
  .container{padding:0 1.5rem;}
  .hero__acts,.finale__acts{flex-direction:column;align-items:flex-start;}
  .finale__acts{align-items:center;}
  .finale__foot-inner{flex-direction:column;align-items:flex-start;}
  .cmp-panel-head,.cmp-inner{padding-left:1.5rem;padding-right:1.5rem;}
}

/* ── FanLinks comparison table inside carousel ─────────── */
.dc-slide--table{padding-bottom:.5rem;}
.cmp-tbl-wrap{overflow-x:auto;margin-top:.75rem;border-radius:10px;border:1px solid rgba(0,0,0,.08);}
.cmp-tbl{width:100%;border-collapse:collapse;font-size:.68rem;font-family:var(--fb);}
.cmp-tbl thead tr{background:var(--lt-bg2);}
.cmp-tbl thead th{
  padding:.5rem .6rem;text-align:center;font-weight:700;letter-spacing:.04em;text-transform:uppercase;
  font-size:.58rem;color:var(--lt-muted);border-bottom:2px solid rgba(0,0,0,.08);white-space:nowrap;
}
.cmp-tbl thead th.cmp-tbl-feat{text-align:left;color:var(--lt-text);}
.cmp-tbl thead th.cmp-tbl-ff{color:var(--coral);background:rgba(255,125,75,.06);}
.cmp-tbl tbody tr:nth-child(even){background:rgba(0,0,0,.025);}
.cmp-tbl tbody td{
  padding:.42rem .6rem;border-bottom:1px solid rgba(0,0,0,.05);
  text-align:center;color:var(--lt-muted);font-size:.68rem;
}
.cmp-tbl tbody td:first-child{text-align:left;color:var(--lt-text);font-weight:500;white-space:nowrap;}
.cmp-tbl td.ff-yes{color:var(--coral);font-weight:800;font-size:.8rem;background:rgba(255,125,75,.05);}
.cmp-tbl td.yes{color:#22a652;font-weight:700;}
.cmp-tbl td.no{color:rgba(0,0,0,.2);font-size:.75rem;}
.cmp-tbl td.partial{color:#b07a20;font-size:.64rem;font-weight:600;}

/* ── Inline Compare Section ─────────────────────────────── */
.cmp-inline-sec{background:var(--surface);padding:7rem 0;}
.cmp-inline-hed{
  font-family:var(--fd);font-size:clamp(2.4rem,5vw,4.8rem);font-weight:900;
  line-height:.95;letter-spacing:-.03em;color:var(--white);margin-bottom:1.5rem;
}
.cmp-inline-hed .acc{color:var(--coral);}
.cmp-inline-sub{color:var(--muted);font-size:1rem;line-height:1.7;max-width:580px;margin-bottom:3rem;}
.cmp-inline-note{font-size:.68rem;color:var(--faint);margin-top:1.5rem;}
.cmp-inline-wrap{overflow-x:auto;border-radius:16px;border:1px solid var(--bdr);}
.cmp-full-table{width:100%;border-collapse:collapse;font-size:.78rem;font-family:var(--fb);}
.cmp-full-table thead tr{background:var(--card);}
.cmp-full-table thead th{
  padding:.7rem .9rem;text-align:center;font-weight:700;letter-spacing:.05em;
  text-transform:uppercase;font-size:.58rem;color:var(--muted);
  border-bottom:1px solid var(--bdr);white-space:nowrap;
}
.cmp-full-table thead th:first-child{text-align:left;}
.cmp-full-table thead th.cft-ff{
  color:var(--coral);background:rgba(255,125,75,.08);
  border-left:1px solid rgba(255,125,75,.2);border-right:1px solid rgba(255,125,75,.2);
}
.cmp-full-table tbody tr:hover td{background:rgba(255,255,255,.02);}
.cmp-full-table tbody td{
  padding:.55rem .9rem;border-bottom:1px solid rgba(255,255,255,.04);
  text-align:center;color:var(--muted);vertical-align:middle;
}
.cmp-full-table tbody td:first-child{text-align:left;color:var(--white);font-weight:500;}
.cmp-full-table td.cft-ff{
  background:rgba(255,125,75,.04);
  border-left:1px solid rgba(255,125,75,.12);border-right:1px solid rgba(255,125,75,.12);
}
.cmp-full-table td.cft-yes{color:var(--coral);font-weight:800;font-size:.82rem;}
.cmp-full-table td.cft-no{color:rgba(255,255,255,.15);font-size:.78rem;}
.cmp-full-table td.cft-partial{color:var(--amber);font-size:.68rem;font-weight:600;}
.cmp-full-table tr.cft-group td{
  padding:.4rem .9rem;font-family:var(--fm);font-size:.58rem;letter-spacing:.1em;
  text-transform:uppercase;color:var(--coral);background:rgba(255,125,75,.05);
  border-top:1px solid rgba(255,125,75,.12);font-weight:700;text-align:left;
}
