/* LinkWhores.com — 2026-09-17. Retro-comic Miami palette: cream paper, heavy ink outlines,
   hard offset shadows, neon. Nothing here depends on a build step. */

:root{
  --paper:#FDF4E3; --paper-2:#F6E7CE; --ink:#14080F; --ink-soft:#4A3540;
  --pink:#FF2E8C; --pink-d:#E01173; --cyan:#12E0CE; --gold:#FFD84D;
  --violet:#8A2BE2; --orange:#FF8A3D; --teal:#0FB9C8;
  --edge:4px; --pop:7px 7px 0 var(--ink); --pop-sm:4px 4px 0 var(--ink);
  --wrap:1180px; --r:18px;
  --disp:"Archivo",system-ui,-apple-system,"Segoe UI",sans-serif;
  --hand:"Caveat","Archivo",cursive;
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{
  margin:0;background:var(--paper);color:var(--ink);
  font-family:var(--disp);font-size:clamp(16px,1.05vw,18px);line-height:1.6;
  font-variation-settings:"wdth" 100;overflow-x:hidden;
}
img,svg{max-width:100%;display:block}
a{color:inherit}
h1,h2,h3{margin:0;line-height:.92;text-wrap:balance}
p{margin:0 0 1em}
ul{margin:0;padding:0;list-style:none}
:focus-visible{outline:4px solid var(--violet);outline-offset:3px;border-radius:4px}
.skip{position:absolute;left:-9999px}
.skip:focus{left:12px;top:12px;z-index:99;background:var(--ink);color:var(--paper);padding:.7em 1.1em;border-radius:10px}
.wrap{width:min(100% - 2rem,var(--wrap));margin-inline:auto}

/* ── type helpers ───────────────────────────────────────────── */
.display,.sec-title,.compet-title,.brand-word,.brand-foot,.plan h3,.card h3{
  font-weight:900;font-stretch:125%;font-style:italic;text-transform:uppercase;letter-spacing:-.015em;
}
.sec-title{font-size:clamp(2.1rem,5.2vw,3.6rem)}
.sec-title.big{font-size:clamp(2.4rem,6.4vw,4.6rem)}
.sec-title em{font-style:italic;color:var(--pink)}
.sec-sub{font-size:clamp(1rem,1.5vw,1.2rem);font-weight:600;max-width:52ch;margin:.6em 0 0;color:var(--ink-soft)}
.sec-head{position:relative;margin:0 0 2.2rem}
.sec-head.centred{text-align:center}
.sec-head.centred .sec-sub{margin-inline:auto}
.swipe{display:block;height:14px;width:min(320px,60%);margin-top:.28em;border-radius:99px;
  background:linear-gradient(90deg,var(--pink),var(--violet));transform:rotate(-1.2deg)}
.sec-head.centred .swipe{margin-inline:auto}
.scrawl{font-family:var(--hand);font-size:clamp(1.15rem,2.1vw,1.6rem);font-weight:700;line-height:1.05;
  color:var(--ink);margin:0}

/* ── buttons ────────────────────────────────────────────────── */
.btn{
  --bg:var(--pink);--fg:#fff;
  display:inline-flex;align-items:center;gap:.6em;justify-content:center;
  background:var(--bg);color:var(--fg);border:var(--edge) solid var(--ink);border-radius:99px;
  padding:.75em 1.5em;font-weight:900;font-stretch:112%;font-size:1rem;text-decoration:none;cursor:pointer;
  box-shadow:var(--pop-sm);transition:transform .12s ease,box-shadow .12s ease,background .12s ease;
  text-transform:uppercase;letter-spacing:.01em;
}
.btn:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--ink)}
.btn:active{transform:translate(2px,2px);box-shadow:1px 1px 0 var(--ink)}
.btn-lg{padding:.95em 1.9em;font-size:clamp(1rem,1.3vw,1.12rem)}
.btn-sm{padding:.55em 1.1em;font-size:.86rem}
.btn-block{display:flex;width:100%}
.btn-pink{--bg:var(--pink)}
.btn-dark{--bg:var(--ink);--fg:var(--paper)}
.btn-cyan{--bg:var(--cyan);--fg:var(--ink)}
.btn-ghost{--bg:transparent;--fg:var(--paper);border-color:var(--paper);box-shadow:4px 4px 0 rgba(0,0,0,.45)}
.btn-ghost:hover{--bg:var(--paper);--fg:var(--ink)}
.arr{width:1.1em;height:.75em;background:currentColor;
  clip-path:polygon(0 38%,62% 38%,62% 8%,100% 50%,62% 92%,62% 62%,0 62%)}

/* ── nav ────────────────────────────────────────────────────── */
.nav{position:sticky;top:0;z-index:60;background:var(--ink);color:var(--paper);
  border-bottom:var(--edge) solid var(--ink)}
.nav-in{display:flex;align-items:center;gap:1.2rem;padding:.7rem 0;min-height:64px}
.brand{display:flex;align-items:center;gap:.55rem;text-decoration:none;flex:0 0 auto}
.brand-mark{width:34px;height:34px;color:var(--pink);flex:0 0 auto}
.brand-word{font-size:clamp(1.15rem,2vw,1.5rem);color:var(--pink);display:block;line-height:1}
.brand-word .dot{color:var(--paper)}
.brand-tag{display:none;font-family:var(--hand);font-size:.95rem;color:var(--paper);opacity:.8;line-height:1}
@media (min-width:1080px){.brand-tag{display:block}}
.links{display:none;gap:1.35rem;margin-left:auto;font-weight:700;font-size:.95rem}
.links a{text-decoration:none;padding:.3em 0;border-bottom:3px solid transparent}
.links a:hover{border-bottom-color:var(--pink);color:var(--cyan)}
@media (min-width:920px){.links{display:flex}}
.nav-cta{margin-left:auto;display:none}
@media (min-width:920px){.nav-cta{margin-left:0;display:inline-flex}}
.burger{margin-left:auto;display:grid;gap:5px;background:none;border:0;padding:10px;cursor:pointer}
.burger span{display:block;width:26px;height:3.5px;background:var(--paper);border-radius:2px;transition:transform .2s ease,opacity .2s ease}
.burger[aria-expanded=true] span:nth-child(1){transform:translateY(8.5px) rotate(45deg)}
.burger[aria-expanded=true] span:nth-child(2){opacity:0}
.burger[aria-expanded=true] span:nth-child(3){transform:translateY(-8.5px) rotate(-45deg)}
@media (min-width:920px){.burger{display:none}}
.drawer[hidden]{display:none}
.drawer{display:grid;background:var(--ink);border-top:2px solid rgba(255,255,255,.14);padding:.5rem 1rem 1.2rem}
.drawer a{padding:.7em 0;text-decoration:none;font-weight:800;font-size:1.1rem;border-bottom:1px solid rgba(255,255,255,.12)}
.drawer a:hover{color:var(--pink)}

/* ── hero ───────────────────────────────────────────────────── */
.hero{position:relative;isolation:isolate;color:var(--paper);
  padding:clamp(2.5rem,7vw,5rem) 0 clamp(3rem,8vw,6rem);overflow:hidden;
  border-bottom:var(--edge) solid var(--ink)}
.hero-art{position:absolute;inset:0;z-index:-1}
.hero-art .scene{width:100%;height:100%;object-fit:cover}
.hero-art::after{content:"";position:absolute;inset:0;
  background:radial-gradient(ellipse at 28% 45%,rgba(20,8,15,.78),rgba(20,8,15,.25) 58%,transparent 76%)}
.hero-in{position:relative;display:grid;gap:clamp(1.8rem,4vw,3rem)}
@media (min-width:1000px){.hero-in{grid-template-columns:minmax(0,1.18fr) minmax(0,.82fr);align-items:center}}
.hero-copy{max-width:100%}
.display{font-size:clamp(2.35rem,5.4vw,4.35rem);text-shadow:4px 4px 0 rgba(20,8,15,.55)}
.display span{display:block}
.display .l2{color:var(--pink)}
.display .l2 em{color:var(--gold);font-style:italic}
.hero .lede{font-size:clamp(1.02rem,1.6vw,1.3rem);font-weight:600;margin:1.1em 0 1.6em;max-width:34ch;
  text-shadow:0 2px 10px rgba(0,0,0,.5)}
.cta-row{display:flex;flex-wrap:wrap;gap:.8rem}
.promises{display:flex;flex-wrap:wrap;gap:1.3rem;margin-top:2rem}
.promises li{display:grid;padding-left:1.6rem;position:relative;font-size:.85rem;line-height:1.25}
.promises li::before{content:"";position:absolute;left:0;top:2px;width:1.05rem;height:1.05rem;border-radius:50%;
  background:var(--cyan);border:2.5px solid var(--ink)}
.promises li:nth-child(2)::before{background:var(--gold)}
.promises li:nth-child(3)::before{background:var(--pink)}
.promises b{font-weight:900;text-transform:uppercase;letter-spacing:.03em;font-size:.8rem}
.promises span{opacity:.82}
.scrawl-tr{display:none;position:absolute;right:0;top:-1.4rem;color:var(--gold);transform:rotate(4deg);text-align:right;z-index:2}
@media (min-width:1280px){.scrawl-tr{display:block}}

/* crew cards */
.crew{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:clamp(.7rem,1.6vw,1.1rem)}
.crew-card{background:var(--paper);color:var(--ink);border:var(--edge) solid var(--ink);border-radius:var(--r);
  padding:1.1rem 1rem;box-shadow:var(--pop);display:grid;gap:.25rem;align-content:start}
.crew-card b{font-weight:900;text-transform:uppercase;font-size:.95rem;font-stretch:112%}
.crew-card span:last-child{font-size:.85rem;line-height:1.3;color:var(--ink-soft)}
.crew-face{width:52px;height:52px;border-radius:50%;border:3px solid var(--ink);display:grid;place-items:center;
  margin-bottom:.35rem;overflow:hidden}
.crew-face svg{width:100%;height:100%}
.c1{transform:rotate(-2.5deg)}.c1 .crew-face{background:var(--pink);color:#fff}
.c2{transform:rotate(1.5deg)}.c2 .crew-face{background:var(--gold);color:var(--ink)}
.c3{transform:rotate(-1deg)}.c3 .crew-face{background:var(--cyan);color:var(--ink)}
@media (min-width:640px) and (max-width:999px){.crew{grid-template-columns:repeat(3,1fr)}}

/* neon */
.neon{position:absolute;display:none;font-weight:900;font-stretch:112%;text-transform:uppercase;
  line-height:1;text-align:center;letter-spacing:.02em}
@media (min-width:1240px){.neon-motel{display:grid}}
.neon-motel{right:3%;bottom:13%;gap:.28rem;padding:1rem 1.4rem;border:4px solid var(--cyan);border-radius:12px;
  background:rgba(20,8,15,.55);
  box-shadow:0 0 18px rgba(18,224,206,.7),inset 0 0 18px rgba(18,224,206,.45)}
.neon-l1{font-size:1.5rem;color:#fff;text-shadow:0 0 12px var(--cyan)}
.neon-l2{font-size:2.1rem;color:var(--pink);text-shadow:0 0 16px var(--pink)}
.neon-l3{font-family:var(--hand);font-size:.95rem;text-transform:none;color:var(--gold);text-shadow:0 0 10px var(--gold)}
.neon-vac{font-size:.8rem;color:var(--cyan);text-shadow:0 0 10px var(--cyan);animation:flick 4s infinite steps(1)}
@keyframes flick{0%,44%,48%,100%{opacity:1}46%,47%{opacity:.25}}
.neon-side{left:3%;bottom:13%;gap:.1rem;font-size:1.2rem;color:#fff;text-shadow:0 0 14px var(--cyan);display:none}
.neon-side .hot{color:var(--pink);text-shadow:0 0 16px var(--pink)}
@media (prefers-reduced-motion:reduce){.neon-vac{animation:none}}

/* ── services ───────────────────────────────────────────────── */
.services{position:relative;padding:clamp(3rem,7vw,5.5rem) 0;
  background:var(--paper);
  background-image:radial-gradient(var(--paper-2) 1.6px,transparent 1.7px);background-size:16px 16px}
.services .sec-head{display:flex;flex-wrap:wrap;gap:1rem;align-items:flex-end;justify-content:space-between}
.sec-scrawl{color:var(--violet);transform:rotate(-2deg);text-align:right}
.cards{display:grid;gap:clamp(1rem,2vw,1.4rem);grid-template-columns:repeat(auto-fit,minmax(215px,1fr))}
.card{position:relative;background:#fff;border:var(--edge) solid var(--ink);border-radius:var(--r);
  padding:1.5rem 1.25rem 2.4rem;box-shadow:var(--pop);display:grid;align-content:start;gap:.5rem}
.card::before{content:"";position:absolute;inset:0;border-radius:calc(var(--r) - 4px);pointer-events:none;
  background:linear-gradient(180deg,var(--accent,var(--pink)) 0 6px,transparent 6px)}
.card h3{font-size:1.32rem}
.card p{font-size:.95rem;color:var(--ink-soft);margin:0}
.card-icon{width:62px;height:62px;color:var(--accent,var(--pink));margin-bottom:.2rem;
  filter:drop-shadow(3px 3px 0 rgba(20,8,15,.18))}
.card-icon svg{width:100%;height:100%}
.tone-pink{--accent:var(--pink)}.tone-cyan{--accent:var(--cyan)}.tone-violet{--accent:var(--violet)}
.tone-gold{--accent:var(--gold)}.tone-teal{--accent:var(--teal)}.tone-orange{--accent:var(--orange)}
.sticker{position:absolute;right:-8px;bottom:-14px;background:var(--accent,var(--pink));color:var(--ink);
  border:3px solid var(--ink);border-radius:8px;padding:.3em .7em;font-family:var(--hand);font-size:1.05rem;
  font-weight:700;transform:rotate(-5deg);box-shadow:3px 3px 0 var(--ink);max-width:11ch;line-height:1.05;text-align:center}
.ticks li,.crosses li{position:relative;padding-left:1.6rem;font-size:.93rem;line-height:1.35;margin-top:.5rem}
.ticks li::before{content:"";position:absolute;left:0;top:.28em;width:.95rem;height:.55rem;
  border-left:3.5px solid var(--pink);border-bottom:3.5px solid var(--pink);transform:rotate(-45deg)}
.crosses li::before{content:"✕";position:absolute;left:0;top:-.05em;font-weight:900;color:var(--ink-soft)}
.cards .ticks{margin-top:.3rem}

/* ── districts ──────────────────────────────────────────────── */
.districts{padding:clamp(3rem,7vw,5rem) 0 0;background:linear-gradient(180deg,var(--paper) 0 42%,#0A7C96 42%);
  border-bottom:var(--edge) solid var(--ink)}
.districts .sec-head{margin-bottom:1.8rem}
.map-hold{position:relative;width:min(100% - 1.5rem,1340px);margin-inline:auto;padding-bottom:clamp(2rem,5vw,3.5rem)}
.map{position:relative;border:var(--edge) solid var(--ink);border-radius:var(--r);overflow:hidden;
  box-shadow:var(--pop)}
.map-svg{width:100%;height:auto;display:block}
.pin{position:absolute;left:var(--x);top:var(--y);transform:translate(-50%,-100%);
  background:none;border:0;padding:0;cursor:pointer;display:grid;justify-items:center;gap:2px;z-index:2}
.pin-dot{width:20px;height:20px;border-radius:50%;background:var(--accent,var(--pink));
  border:3.5px solid var(--ink);box-shadow:0 0 0 6px rgba(255,255,255,.35);order:2;
  transition:transform .15s ease}
.pin-label{order:1;background:var(--paper);border:3px solid var(--ink);border-radius:10px;padding:.35em .6em;
  display:grid;box-shadow:var(--pop-sm);max-width:20ch;transition:transform .15s ease}
.pin-label b{font-weight:900;text-transform:uppercase;font-size:.78rem;font-stretch:112%;white-space:nowrap}
.pin-label span{font-size:.72rem;line-height:1.2;color:var(--ink-soft)}
.pin:hover .pin-label,.pin[aria-expanded=true] .pin-label{transform:translateY(-4px) rotate(-1.5deg);background:var(--accent);color:var(--ink)}
.pin:hover .pin-dot{transform:scale(1.25)}
.district-list{display:none}
@media (max-width:760px){
  .pin-label{display:none}
  .pin{transform:translate(-50%,-50%)}
  .pin-dot{width:17px;height:17px}
  .district-list{display:grid;gap:.6rem;margin-top:1.1rem;
    grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}
  .district-list li{background:var(--paper);border:3px solid var(--ink);border-radius:12px;
    padding:.55rem .7rem;box-shadow:var(--pop-sm);border-left-width:9px;border-left-color:var(--accent)}
  .district-list b{display:block;font-weight:900;text-transform:uppercase;font-size:.76rem;font-stretch:112%}
  .district-list span{font-size:.74rem;line-height:1.25;color:var(--ink-soft)}
}
.map-l,.map-r{display:none;position:absolute;color:#fff;font-size:1.35rem;z-index:3}
.map-l{left:-2.5rem;top:34%;transform:rotate(-7deg)}
.map-r{right:-2.5rem;top:38%;transform:rotate(6deg);text-align:right}
@media (min-width:1420px){.map-l,.map-r{display:block}}

/* ── standards ──────────────────────────────────────────────── */
.standards{padding:clamp(3rem,7vw,5.5rem) 0;background:var(--paper)}
.standards-in{display:grid;gap:clamp(2rem,4vw,3rem)}
@media (min-width:1000px){.standards-in{grid-template-columns:minmax(0,1fr) minmax(0,1.02fr)}}
.compare{position:relative}
.compare-scrawl{position:absolute;right:0;top:0;color:var(--pink);transform:rotate(4deg);text-align:right;display:none}
@media (min-width:1000px){.compare-scrawl{display:block}}
.compare-grid{display:grid;gap:1.1rem}
@media (min-width:560px){.compare-grid{grid-template-columns:1fr 1fr}}
.col{position:relative;border:var(--edge) solid var(--ink);border-radius:var(--r);padding:1.3rem 1.2rem 2.6rem;
  box-shadow:var(--pop)}
.col h3{font-size:1.1rem;font-weight:900;text-transform:uppercase;font-stretch:112%;margin-bottom:.5rem}
.col h3 span{display:block;font-size:.8rem;font-weight:600;text-transform:none;font-stretch:100%;color:var(--ink-soft);margin-top:.2rem}
.col-bad{background:var(--paper-2)}
.col-bad h3{color:var(--ink-soft)}
.col-good{background:#FFE8F3}
.col-good h3 em{color:var(--pink);font-style:italic}
.bin,.crown{position:absolute;right:.9rem;bottom:.7rem;width:46px;height:46px}
.bin{color:var(--ink-soft)}
.crown{color:var(--gold)}

.receipts .panel{background:#fff;border:var(--edge) solid var(--ink);border-radius:var(--r);
  box-shadow:var(--pop);padding:1.3rem 1.2rem;overflow:hidden}
.panel-flag{font-family:var(--hand);font-size:1.1rem;font-weight:700;color:var(--violet);
  background:#F3E6FF;border:3px solid var(--ink);border-radius:8px;padding:.25em .7em;display:inline-block;
  transform:rotate(-1deg);margin-bottom:1rem}
.stats{display:grid;gap:.8rem;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));margin-bottom:1.2rem}
.stat{border:3px solid var(--ink);border-radius:12px;padding:.7rem .8rem;background:var(--paper)}
.stat:nth-child(2){background:#E6FFFB}
.stat:nth-child(3){background:#FFF3D6}
.stat b{display:block;font-size:clamp(1.5rem,3vw,2.1rem);font-weight:900;font-stretch:112%;line-height:1;color:var(--pink)}
.stat:nth-child(2) b,.stat:nth-child(3) b{font-size:clamp(1.1rem,2vw,1.4rem);color:var(--ink)}
.stat span{font-size:.76rem;line-height:1.2;display:block;margin-top:.35rem;color:var(--ink-soft)}
.panel-grid{display:grid;gap:1.1rem}
@media (min-width:720px){.panel-grid{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:start}}
.rows{width:100%;border-collapse:collapse;font-size:.85rem}
.rows caption{text-align:left;font-weight:800;font-size:.8rem;text-transform:uppercase;letter-spacing:.04em;
  padding-bottom:.5rem;color:var(--ink-soft)}
.rows th{text-align:left;font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-soft);
  border-bottom:3px solid var(--ink);padding:.35rem .4rem}
.rows td{padding:.5rem .4rem;border-bottom:1.5px solid rgba(20,8,15,.14);font-weight:600}
.bar{display:grid;grid-template-columns:1fr auto;align-items:center;gap:.5rem}
.bar i{height:10px;border-radius:99px;background:rgba(20,8,15,.12);position:relative;overflow:hidden}
.bar i::after{content:"";position:absolute;inset:0 auto 0 0;width:var(--w);border-radius:99px;
  background:linear-gradient(90deg,var(--cyan),var(--pink))}
.bar b{font-size:.75rem;font-weight:800}
.chart{margin:0;border:3px solid var(--ink);border-radius:12px;padding:.8rem;background:var(--paper)}
.chart figcaption{font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;font-weight:800;color:var(--ink-soft);margin-bottom:.4rem}
.chart-fill{fill:rgba(18,224,206,.28)}
.chart-line{fill:none;stroke:var(--pink);stroke-width:5;stroke-linecap:round;stroke-linejoin:round}
.chart-note{display:block;font-size:.7rem;color:var(--ink-soft);margin-top:.4rem;font-style:italic}

/* ── competitors ────────────────────────────────────────────── */
.compet{position:relative;isolation:isolate;color:#fff;overflow:hidden;
  padding:clamp(3rem,7vw,5rem) 0 0;border-block:var(--edge) solid var(--ink)}
.compet-art{position:absolute;inset:0;z-index:-1;
  background:
    radial-gradient(circle at 78% 22%,rgba(255,216,77,.45),transparent 42%),
    radial-gradient(circle at 18% 78%,rgba(18,224,206,.4),transparent 45%),
    linear-gradient(135deg,#3B1C6B,#B02A8E 42%,#FF5C7A 72%,#FF9B4A)}
.compet-art::after{content:"";position:absolute;inset:0;
  background-image:radial-gradient(rgba(20,8,15,.28) 1.7px,transparent 1.8px);background-size:13px 13px;
  mix-blend-mode:multiply}
.compet-in{position:relative;padding-bottom:clamp(2rem,5vw,3.5rem)}
.compet-title{font-size:clamp(2rem,5.6vw,4rem);text-shadow:5px 5px 0 rgba(20,8,15,.5);max-width:18ch}
.compet-title span{color:var(--gold)}
.compet-scrawl{position:absolute;right:0;top:.5rem;color:#fff;transform:rotate(-4deg);text-align:right;display:none}
@media (min-width:1000px){.compet-scrawl{display:block}}
.neon-strip{position:static;display:inline-grid;margin-top:1.6rem;gap:.15rem;padding:.8rem 1.2rem;
  border:4px solid var(--gold);border-radius:12px;background:rgba(20,8,15,.4);font-size:1.4rem;
  box-shadow:0 0 20px rgba(255,216,77,.6),inset 0 0 20px rgba(255,216,77,.3)}
.neon-strip span{color:#fff;text-shadow:0 0 12px var(--gold)}
.neon-strip .hot{color:var(--pink);text-shadow:0 0 14px var(--pink)}
.marquee{background:var(--ink);border-top:var(--edge) solid var(--ink);overflow:hidden;padding:.6rem 0}
.marquee-in{display:flex;gap:2rem;width:max-content;animation:slide 28s linear infinite;
  font-weight:900;text-transform:uppercase;font-stretch:112%;font-size:.95rem;color:var(--paper);white-space:nowrap}
.marquee .star{color:var(--pink)}
@keyframes slide{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.marquee-in{animation:none;flex-wrap:wrap;width:auto;white-space:normal}}

/* ── pricing ────────────────────────────────────────────────── */
.pricing{padding:clamp(3rem,7vw,5.5rem) 0;background:var(--ink);color:var(--paper)}
.pricing .sec-sub{color:rgba(253,244,227,.72)}
.pricing .swipe{background:linear-gradient(90deg,var(--cyan),var(--gold))}
.plans{display:grid;gap:1.2rem;grid-template-columns:repeat(auto-fit,minmax(255px,1fr));align-items:start}
.plan{position:relative;background:var(--paper);color:var(--ink);border:var(--edge) solid var(--ink);
  border-radius:var(--r);padding:1.6rem 1.3rem;box-shadow:7px 7px 0 var(--accent,var(--pink));display:grid;gap:.5rem;align-content:start}
.plan.featured{background:#FFE8F3}
.plan-badge{position:absolute;top:-16px;left:1.2rem;background:var(--pink);color:#fff;border:3px solid var(--ink);
  border-radius:99px;padding:.25em .9em;font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.05em;
  box-shadow:3px 3px 0 var(--ink)}
.plan h3{font-size:1.6rem;color:var(--accent);-webkit-text-stroke:.4px var(--ink)}
.plan-lede{font-size:.92rem;color:var(--ink-soft);margin:0}
.plan-price{font-family:var(--hand);font-size:1.45rem;font-weight:700;margin:.6rem 0 .2rem}
.plan .btn{margin-top:.4rem}
.plans-note{margin:1.6rem auto 0;max-width:60ch;text-align:center;font-size:.9rem;color:rgba(253,244,227,.72)}

/* ── faq ────────────────────────────────────────────────────── */
.faq{padding:clamp(3rem,7vw,5rem) 0;background:var(--paper);
  background-image:radial-gradient(var(--paper-2) 1.6px,transparent 1.7px);background-size:16px 16px}
.faq-in{display:grid;gap:clamp(1.5rem,3vw,2.5rem)}
@media (min-width:900px){.faq-in{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:start}}
.faq-scrawl{color:var(--pink);transform:rotate(-3deg);margin-top:.8rem}
.qs{display:grid;gap:.8rem}
.q{background:#fff;border:var(--edge) solid var(--ink);border-radius:14px;box-shadow:var(--pop-sm);
  padding:.9rem 1.1rem}
.q summary{font-weight:900;font-size:1.02rem;cursor:pointer;list-style:none;display:flex;gap:.8rem;align-items:flex-start}
.q summary::-webkit-details-marker{display:none}
.q summary::before{content:"+";color:var(--pink);font-size:1.4rem;line-height:1;font-weight:900}
.q[open] summary::before{content:"–"}
.q p{margin:.7rem 0 0;font-size:.95rem;color:var(--ink-soft)}

/* ── contact ────────────────────────────────────────────────── */
.contact{position:relative;padding:clamp(3rem,7vw,5.5rem) 0;color:#fff;
  background:linear-gradient(135deg,#8A2BE2,#FF2E8C 55%,#FF8A3D);border-top:var(--edge) solid var(--ink)}
.contact::before{content:"";position:absolute;inset:0;
  background-image:radial-gradient(rgba(20,8,15,.25) 1.7px,transparent 1.8px);background-size:13px 13px;
  mix-blend-mode:multiply;pointer-events:none}
.contact-in{position:relative;display:grid;gap:clamp(1.8rem,4vw,3rem)}
@media (min-width:900px){.contact-in{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start}}
.contact .sec-title em{color:var(--gold)}
.contact .sec-sub{color:rgba(255,255,255,.9)}
.contact-scrawl{color:var(--gold);transform:rotate(-3deg);margin-bottom:.7rem;font-size:clamp(1.3rem,2.4vw,1.9rem)}
.contact-badges{display:flex;flex-wrap:wrap;gap:1.2rem;margin:1.4rem 0}
.contact-badges li{display:flex;align-items:center;gap:.45rem;font-weight:900;text-transform:uppercase;font-size:.8rem;letter-spacing:.04em}
.contact-badges span{font-size:1.5rem}
.contact-mail{font-family:var(--hand);font-size:1.6rem;font-weight:700;color:#fff}
.form{background:var(--paper);color:var(--ink);border:var(--edge) solid var(--ink);border-radius:var(--r);
  box-shadow:var(--pop);padding:clamp(1.2rem,2.5vw,1.8rem)}
.form-line{display:grid;gap:.3rem;margin:0 0 .9rem}
.form label{font-weight:800;font-size:.82rem;text-transform:uppercase;letter-spacing:.04em}
.form input,.form select,.form textarea{
  font:inherit;font-size:.98rem;padding:.65em .8em;border:3px solid var(--ink);border-radius:10px;
  background:#fff;color:var(--ink);width:100%}
.form textarea{resize:vertical}
.form input:focus,.form select:focus,.form textarea:focus{outline:none;box-shadow:0 0 0 4px rgba(138,43,226,.45)}
.form .err{border-color:var(--pink-d);background:#FFF0F6}
.form-err{color:var(--pink-d);font-size:.8rem;font-weight:700;margin:.15rem 0 0}
.fax{position:absolute;left:-9999px}
.form-small{font-size:.76rem;color:var(--ink-soft);margin:.8rem 0 0;text-align:center}
.form-small a{font-weight:700}
.form-status{margin:.8rem 0 0;font-weight:800;text-align:center;font-size:.95rem}
.form-status.ok{color:#0B7A55}
.form-status.bad{color:var(--pink-d)}
.form.sent .form-line,.form.sent button,.form.sent .form-small{display:none}

/* ── footer ─────────────────────────────────────────────────── */
.foot{background:var(--ink);color:var(--paper);padding:2.2rem 0}
.foot-in{display:grid;gap:1rem;align-items:center}
@media (min-width:860px){.foot-in{grid-template-columns:auto 1fr auto;gap:1.8rem}}
.brand-foot{display:block;font-size:1.35rem;color:var(--pink);text-decoration:none}
.brand-foot .dot{color:var(--paper)}
.foot nav{display:flex;flex-wrap:wrap;gap:1.1rem;font-weight:700;font-size:.9rem}
.foot nav a{text-decoration:none}
.foot nav a:hover{color:var(--pink)}
.foot-mail{font-family:var(--hand);font-size:1.25rem;color:var(--cyan)}
.foot-note{grid-column:1/-1;margin:0;font-size:.78rem;opacity:.6}

/* ── page (privacy / 404) ───────────────────────────────────── */
.page{padding:clamp(2.5rem,6vw,4.5rem) 0;background:var(--paper)}
.page-in{max-width:70ch}
.page h1{font-size:clamp(2rem,5vw,3.2rem);font-weight:900;font-stretch:125%;font-style:italic;text-transform:uppercase;margin-bottom:.5em}
.page h2{font-size:1.25rem;font-weight:900;text-transform:uppercase;font-stretch:112%;margin:1.8em 0 .5em}
.page p,.page li{color:var(--ink-soft)}
.page ul{list-style:disc;padding-left:1.3rem;margin:0 0 1em}
.page li{margin-bottom:.4em}
.page a{font-weight:700;color:var(--pink-d)}

/* ── reveal ─────────────────────────────────────────────────── */
[data-reveal] > *{opacity:0;transform:translateY(22px) rotate(var(--rot,0deg))}
[data-reveal].in > *{opacity:1;transform:none;transition:opacity .5s ease var(--d,0s),transform .5s cubic-bezier(.2,.9,.3,1.2) var(--d,0s)}
@media (prefers-reduced-motion:reduce){[data-reveal] > *{opacity:1;transform:none}}
