/* ===========================================================================
   Crawdaddy marketing site — shared stylesheet
   Brand-matched to the app: Barlow + Fraunces, red #c93b00 on dark #0d0908.
   =========================================================================== */
:root{
  --red:#c93b00; --red-bright:#e8581f;
  --bg:#090605; --layer:rgba(20, 14, 11, 0.6); --layer-2:rgba(26, 18, 13, 0.7); --layer-3:#231711;
  --border:rgba(255, 255, 255, 0.06); --border-mid:rgba(255, 255, 255, 0.12);
  --glass-glow: 0 8px 32px rgba(0, 0, 0, 0.4), inset 0 1px 0 rgba(255, 255, 255, 0.1);
  --text:#f5e6c5; --cream:#f5e6c5; --muted:#a89578; --muted-2:#7a6b52;
  --boiled:#c93b00; --live:#4a8bbf; --cater:#9a6bbf; --gold:#f5c842;
  --font-display:'Fraunces', Georgia, serif;
  --font-body:'Barlow', system-ui, sans-serif;
  --maxw:1160px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--bg);color:var(--text);font-family:var(--font-body);
  -webkit-font-smoothing:antialiased;line-height:1.55;overflow-x:hidden}
a{color:inherit;text-decoration:none}
img{max-width:100%}
h1,h2,h3{text-wrap:balance}
p{text-wrap:pretty}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 24px}
.accent{color:var(--red-bright)}
.center{text-align:center}

@keyframes ambientPulse {
  0% { transform: scale(1) translate(0, 0); opacity: 0.15; }
  33% { transform: scale(1.1) translate(2%, 3%); opacity: 0.25; }
  66% { transform: scale(0.95) translate(-1%, -2%); opacity: 0.15; }
  100% { transform: scale(1) translate(0, 0); opacity: 0.15; }
}
@keyframes floatUp {
  0% { transform: translateY(0px); }
  50% { transform: translateY(-12px); }
  100% { transform: translateY(0px); }
}

body::before{
  content:''; position:fixed; inset:-20%; z-index:-1; pointer-events:none;
  background:
    radial-gradient(1000px 800px at 78% 10%, rgba(201,59,0,0.25), transparent 60%),
    radial-gradient(800px 600px at 15% 40%, rgba(201,59,0,0.15), transparent 55%);
  animation: ambientPulse 20s ease-in-out infinite alternate;
  filter: blur(40px);
}

/* ── header ── */
header{position:sticky;top:0;z-index:50;backdrop-filter:blur(20px) saturate(160%);
  background:rgba(9, 6, 5, 0.7);border-bottom:1px solid var(--border); box-shadow: 0 10px 30px rgba(0,0,0,0.3);}
.nav{display:flex;align-items:center;justify-content:space-between;height:66px;position:relative}
.brand{display:flex;align-items:center;gap:11px;font-weight:800;letter-spacing:.5px}
.brand img{width:30px;height:30px;display:block}
.brand .word{font-size:21px;text-transform:uppercase;letter-spacing:1px}
.brand .craw{color:var(--red-bright)} .brand .daddy{color:var(--cream)}
.nav-links{display:flex;align-items:center;gap:30px}
.nav-links a{color:var(--muted);font-size:14px;font-weight:600;transition:color .15s}
.nav-links a:hover,.nav-links a.active{color:var(--cream)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;
  font-family:var(--font-body);font-weight:700;font-size:14px;letter-spacing:.2px;
  padding:11px 22px;border-radius:12px;cursor:pointer;border:1px solid transparent;
  transition:transform .25s cubic-bezier(0.25, 0.8, 0.25, 1),box-shadow .25s cubic-bezier(0.25, 0.8, 0.25, 1),background .25s ease,border-color .25s ease,color .25s ease;white-space:nowrap; position:relative; overflow:hidden;}
.btn::after{content:'';position:absolute;top:0;left:-100%;width:50%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,0.2),transparent);transform:skewX(-20deg);transition:0s;}
.btn:hover::after{left:150%;transition:.6s ease-in-out;}
.btn:active{transform:scale(.96)}
.btn-primary{background:linear-gradient(135deg, var(--red-bright), var(--red));color:#fff;box-shadow:0 8px 24px rgba(201,59,0,.4), inset 0 1px 0 rgba(255,255,255,0.2); border: 1px solid rgba(255,255,255,0.1);}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 12px 32px rgba(201,59,0,.5), inset 0 1px 0 rgba(255,255,255,0.3);}
.btn-ghost{background:rgba(255,255,255,0.03);backdrop-filter:blur(10px);color:var(--cream);border-color:var(--border-mid); box-shadow:0 4px 12px rgba(0,0,0,0.2);}
.btn-ghost:hover{border-color:rgba(201,59,0,0.5);color:#fff;background:rgba(201,59,0,0.1); transform:translateY(-2px); box-shadow:0 8px 20px rgba(201,59,0,0.2);}
.nav .btn{padding:9px 18px}
/* mobile hamburger + full dropdown menu */
.nav-burger{display:none;background:none;border:0;cursor:pointer;color:var(--cream);padding:6px;margin:-6px;line-height:0}
.nav-burger svg{display:block;width:28px;height:28px}
.mobile-menu{display:none;position:absolute;top:calc(100% + 12px);right:0;min-width:238px;flex-direction:column;gap:2px;padding:10px;background:var(--layer-3);border:1px solid var(--border-mid);border-radius:16px;box-shadow:0 28px 64px -22px rgba(0,0,0,.85), inset 0 1px 0 rgba(255,255,255,.06);z-index:60}
.mobile-menu a{padding:12px 14px;border-radius:11px;color:var(--cream);font-size:15px;font-weight:600;display:block;transition:background .15s}
.mobile-menu a:hover,.mobile-menu a:active{background:rgba(255,255,255,.05)}
.mobile-menu .mm-sep{height:1px;background:var(--border-mid);margin:7px 6px}
.mobile-menu .mm-ghost{border:1px solid var(--border-mid);text-align:center;margin-top:2px}
.mobile-menu .mm-cta{background:linear-gradient(135deg,var(--red-bright),var(--red));color:#fff;text-align:center;font-weight:800;margin-top:2px}
@media(max-width:760px){
  .nav-links a:not(.btn){display:none}
  .nav-links .btn{display:none}
  .nav-burger{display:inline-flex;align-items:center}
  html.menu-open .mobile-menu{display:flex}
}
@media(min-width:761px){ .nav-burger,.mobile-menu{display:none!important} }

/* ── store badge ── */
.store-badge{display:inline-flex;align-items:center;gap:11px;background:#000;color:#fff;
  border:1px solid #2a2a2a;border-radius:13px;padding:9px 18px 9px 15px;transition:border-color .15s, transform .12s}
.store-badge:hover{border-color:#555;transform:translateY(-1px)}
.store-badge svg{width:26px;height:26px;flex-shrink:0}
.store-badge .sb-top{font-size:10px;letter-spacing:.4px;color:#bbb;line-height:1.1}
.store-badge .sb-big{font-size:19px;font-weight:600;line-height:1.15;font-family:var(--font-body)}

/* ── sections ── */
section{padding:78px 0}
.sec-head{text-align:center;max-width:680px;margin:0 auto 48px}
.kicker{font-size:12px;font-weight:800;letter-spacing:2.6px;text-transform:uppercase;color:var(--red-bright);margin-bottom:14px}
h1.title{font-family:var(--font-display);font-weight:600;line-height:1.02;
  font-size:clamp(48px,7.8vw,86px);letter-spacing:-2px;margin-bottom:20px; 
  background: linear-gradient(180deg, #fff 20%, #e0cbb0 100%); -webkit-background-clip: text; -webkit-text-fill-color: transparent;}
h1.title .em{color:var(--red-bright);font-style:italic}
h2{font-family:var(--font-display);font-weight:600;font-size:clamp(30px,4.4vw,44px);line-height:1.08;letter-spacing:-.5px;margin-bottom:14px}
.sec-head p{color:var(--muted);font-size:17px}
.lede{font-size:clamp(16px,2.1vw,19px);color:var(--muted);max-width:540px;margin-bottom:30px}
.lede strong{color:var(--cream);font-weight:600}
.cta-row{display:flex;flex-wrap:wrap;gap:14px;align-items:center}
.soon{font-size:9px;color:var(--red-bright);font-weight:800;letter-spacing:1px}

/* ── hero ── */
.hero{padding:84px 0 70px;position:relative}
.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:54px;align-items:center}
@media(max-width:900px){ .hero-grid{grid-template-columns:1fr;gap:44px} }
.eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:800;
  letter-spacing:2.4px;text-transform:uppercase;color:var(--red-bright);
  border:1px solid var(--border-mid);background:var(--layer);padding:7px 14px;border-radius:999px;margin-bottom:22px}
.eyebrow .dot{width:6px;height:6px;border-radius:50%;background:var(--red-bright);box-shadow:0 0 0 4px rgba(201,59,0,.2)}
.trust{display:flex;align-items:center;gap:18px;margin-top:26px;color:var(--muted-2);font-size:13px;font-weight:600;flex-wrap:wrap}
.trust b{color:var(--cream)}

/* phone mockup */
.phone-shell{justify-self:center;position:relative; perspective:1200px; padding: 20px;}
.phone{width:300px;height:610px;border-radius:46px;background:#000;border:1px solid var(--border-mid);
  box-shadow:-20px 40px 100px rgba(0,0,0,.8), 0 0 0 9px #15100c, inset 0 0 0 1px rgba(255,255,255,.04), 0 0 80px rgba(201,59,0,.15);
  padding:11px;position:relative;overflow:hidden; transform: rotateY(-18deg) rotateX(12deg) rotateZ(2deg); transform-style: preserve-3d; transition: transform 0.5s ease;}
.phone:hover{transform: rotateY(-12deg) rotateX(8deg) rotateZ(1deg);}
.phone .notch{position:absolute;top:11px;left:50%;transform:translateX(-50%);width:120px;height:26px;background:#000;border-radius:0 0 16px 16px;z-index:3}
.phone-screen{width:100%;height:100%;border-radius:36px;overflow:hidden;background:var(--bg);position:relative;display:flex;flex-direction:column}
.ps-head{padding:18px 16px 12px;border-bottom:1px solid var(--border)}
.ps-logo{font-family:var(--font-body);font-weight:800;font-size:19px;text-transform:uppercase;letter-spacing:1px}
.ps-modes{display:flex;gap:7px;padding:12px 14px}
.ps-pill{flex:1;text-align:center;font-size:10px;font-weight:800;letter-spacing:.6px;text-transform:uppercase;padding:7px 0;border-radius:9px;border:1px solid var(--border-mid);color:var(--muted)}
.ps-pill.on{background:var(--red);color:#fff;border-color:var(--red)}
.ps-map{flex:1;position:relative;margin:2px 12px 12px;border-radius:16px;overflow:hidden;
  background:linear-gradient(120deg,#1a1410,#100d0a),
    repeating-linear-gradient(0deg, transparent, transparent 38px, rgba(255,255,255,.02) 39px),
    repeating-linear-gradient(90deg, transparent, transparent 38px, rgba(255,255,255,.02) 39px);
  border:1px solid var(--border); box-shadow: inset 0 20px 40px rgba(0,0,0,0.5);}
.ps-pin{position:absolute;width:34px;height:34px;border-radius:50%;background:linear-gradient(135deg, var(--red-bright), var(--red));border:2px solid rgba(20,10,5,.8);display:flex;align-items:center;justify-content:center;box-shadow:0 8px 20px rgba(201,59,0,.5); animation: floatUp 4s ease-in-out infinite; transition: transform 0.3s;}
.ps-pin:hover{transform: scale(1.2) translateY(-5px);}
.ps-pin img{width:20px;height:20px; filter:drop-shadow(0 2px 4px rgba(0,0,0,0.4));}
.ps-pin.gold{background:linear-gradient(135deg, #f5c842, #b06010);box-shadow:0 8px 24px rgba(245,200,66,.6),0 0 0 2px rgba(245,200,66,0.5); z-index: 10;}
@keyframes floatA { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-12px)} }
@keyframes floatB { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-8px)} }
@keyframes floatC { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-15px)} }

.float-card{position:absolute;background:var(--layer-2); backdrop-filter:blur(16px); border:1px solid rgba(255,255,255,0.08);
  border-radius:18px;padding:16px 18px;width:190px;box-shadow:var(--glass-glow), 0 20px 40px rgba(0,0,0,0.6); z-index: 10;}
@media(max-width:860px){ .float-card{display:none} }
.fc-header{font-size:10px;font-weight:800;letter-spacing:.8px;text-transform:uppercase;color:var(--muted); margin-bottom:8px; display:flex; align-items:center; gap:6px;}
.fc-name{font-family:var(--font-display);font-weight:600;font-size:16px; color:#fff;}
.fc-meta{font-size:12px;color:var(--muted);margin-top:4px}
.pulse-dot{width:8px;height:8px;border-radius:50%;background:var(--red-bright);box-shadow:0 0 0 3px rgba(201,59,0,.3); animation: pulse 2s infinite;}

.card-boiling{left:-80px; top:120px; animation: floatA 6s ease-in-out infinite;}
.card-boiling .fc-timer{font-size:12px; font-weight:700; color:var(--cream); margin-top:8px;}
.card-boiling .fc-timer span{color:var(--muted); font-weight:500;}
.card-boiling .fc-bar{width:100%; height:4px; background:rgba(255,255,255,0.1); border-radius:2px; margin-top:8px; overflow:hidden;}
.card-boiling .fc-progress{height:100%; background:linear-gradient(90deg, var(--red), var(--gold)); border-radius:2px;}

.card-price{right:-70px; top:280px; width:160px; animation: floatB 5s ease-in-out infinite 1s;}
.card-price .fc-price{font-family:var(--font-display); font-size:28px; font-weight:700; color:#fff;}
.card-price .fc-price .lb{font-family:var(--font-body); font-size:14px; color:var(--muted);}

.card-rated{left:-50px; bottom:100px; width:170px; animation: floatC 7s ease-in-out infinite 0.5s;}

@keyframes pulse { 0%{box-shadow:0 0 0 0 rgba(201,59,0,.5)} 70%{box-shadow:0 0 0 6px rgba(201,59,0,0)} 100%{box-shadow:0 0 0 0 rgba(201,59,0,0)} }

/* ── feature grid ── */
.feat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
@media(min-width:861px) {
  .feat:nth-child(1) { grid-column: span 2; }
  .feat:nth-child(4) { grid-column: span 2; }
  .feat:nth-child(5) { grid-column: span 2; }
}
@media(max-width:860px){ .feat-grid{grid-template-columns:1fr 1fr} }
@media(max-width:560px){ .feat-grid{grid-template-columns:1fr} }
.feat{background:var(--layer); backdrop-filter:blur(16px); border:1px solid var(--border);border-radius:20px;padding:32px 28px;
  transition:transform .3s cubic-bezier(0.25, 0.8, 0.25, 1), border-color .3s, box-shadow .3s; box-shadow: var(--glass-glow);}
.feat:hover{transform:translateY(-6px);border-color:rgba(201,59,0,0.4); box-shadow: 0 16px 40px rgba(0,0,0,0.6), 0 0 20px rgba(201,59,0,0.15), inset 0 1px 0 rgba(255, 255, 255, 0.15);}
.feat-ico{width:46px;height:46px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:22px;background:rgba(201,59,0,.12);border:1px solid rgba(201,59,0,.3);margin-bottom:16px}
.feat h3{font-family:var(--font-display);font-weight:600;font-size:20px;margin-bottom:7px}
.feat p{color:var(--muted);font-size:14.5px}

/* ── modes ── */
.modes{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
@media(max-width:760px){ .modes{grid-template-columns:1fr} }
.mode{border-radius:24px;padding:40px 30px;border:1px solid var(--border);position:relative;overflow:hidden;
  transition:transform .3s ease, box-shadow .3s; box-shadow: var(--glass-glow); backdrop-filter:blur(12px); display:flex; flex-direction:column; justify-content:flex-end; min-height: 380px;}
.mode:hover{transform:translateY(-8px); box-shadow: 0 20px 50px rgba(0,0,0,0.8), 0 0 30px rgba(201,59,0,0.1), inset 0 1px 0 rgba(255, 255, 255, 0.15);}
/* ::before = the photo (full color); ::after = theme-tinted dark scrim for legibility; content sits above both */
.mode::before { content:''; position:absolute; inset:0; z-index:0; background-size:cover; background-position:center; transition:transform .6s ease; }
.mode::after  { content:''; position:absolute; inset:0; z-index:1; pointer-events:none; }
.mode:hover::before { transform:scale(1.06); }
.mode > * { position:relative; z-index:2; text-shadow: 0 2px 10px rgba(0,0,0,0.9); }
.mode .ml{font-size:12px;font-weight:800;letter-spacing:1.8px;text-transform:uppercase;opacity:1; text-shadow: 0 2px 4px rgba(0,0,0,0.8);}
.mode h3{font-family:var(--font-display);font-weight:600;font-size:32px;margin:10px 0 10px; color:#fff;}
.mode p{font-size:15px;color:rgba(255,255,255,0.95); line-height:1.6;}
.mode.boiled{border-color:rgba(201,59,0,.5)} .mode.boiled::before{background-image:url('/assets/mode_boiled.png')} .mode.boiled::after{background:linear-gradient(180deg, rgba(201,59,0,.30) 0%, rgba(13,9,8,.45) 50%, rgba(13,9,8,.92) 100%)} .mode.boiled .ml{color:#ffb7a1}
.mode.live{border-color:rgba(74,139,191,.5)} .mode.live::before{background-image:url('/assets/mode_live.png')} .mode.live::after{background:linear-gradient(180deg, rgba(74,139,191,.28) 0%, rgba(13,9,8,.45) 50%, rgba(13,9,8,.92) 100%)} .mode.live .ml{color:#b3dbff}
.mode.cater{border-color:rgba(154,107,191,.5)} .mode.cater::before{background-image:url('/assets/mode_cater.png')} .mode.cater::after{background:linear-gradient(180deg, rgba(154,107,191,.28) 0%, rgba(13,9,8,.45) 50%, rgba(13,9,8,.92) 100%)} .mode.cater .ml{color:#e6cfff}

/* ── stats ── */
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;text-align:center;
  background:var(--layer);border:1px solid var(--border);border-radius:22px;padding:44px 24px}
@media(max-width:640px){ .stats{grid-template-columns:repeat(2,1fr);gap:26px} }
.stat .num{font-family:var(--font-display);font-weight:700;font-size:clamp(38px,6vw,56px);color:var(--cream);line-height:1;font-variant-numeric:tabular-nums}
.stat .num .accent{color:var(--red-bright)}
.stat .lab{color:var(--muted);font-size:13px;font-weight:600;letter-spacing:.4px;text-transform:uppercase;margin-top:8px}

/* ── steps ── */
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
@media(max-width:760px){ .steps{grid-template-columns:1fr} }
.step .n{font-family:var(--font-display);font-weight:700;font-size:40px;color:var(--red);opacity:.45;line-height:1}
.step h3{font-family:var(--font-display);font-weight:600;font-size:20px;margin:10px 0 6px}
.step p{color:var(--muted);font-size:14.5px}

/* ── split feature (image/visual + text) ── */
.split{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}
@media(max-width:820px){ .split{grid-template-columns:1fr;gap:34px} }
.split.flip .split-visual{order:2}
@media(max-width:820px){ .split.flip .split-visual{order:0} }
.split h2{margin-bottom:16px}
.split p{color:var(--muted);font-size:16px;margin-bottom:14px}
.split-list{list-style:none;margin-top:18px}
.split-list li{display:flex;gap:11px;align-items:flex-start;margin-bottom:13px;font-size:15px}
.split-list .ck{flex-shrink:0;width:22px;height:22px;border-radius:50%;background:rgba(201,59,0,.16);border:1px solid rgba(201,59,0,.4);color:var(--red-bright);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:800;margin-top:1px}
.split-list b{color:var(--cream)}
.visual-card{background:var(--layer); backdrop-filter:blur(16px); border:1px solid rgba(255,255,255,0.08);border-radius:24px;padding:36px;min-height:320px;display:flex;flex-direction:column;justify-content:center;gap:16px; box-shadow: var(--glass-glow); transition:transform .3s, box-shadow .3s;}
.visual-card:hover{transform:translateY(-8px); box-shadow: 0 24px 60px rgba(0,0,0,0.6), inset 0 1px 0 rgba(255,255,255,0.15), 0 0 30px rgba(201,59,0,0.15);}

/* ── pricing / tiers ── */
.tiers{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;align-items:stretch}
@media(max-width:860px){ .tiers{grid-template-columns:1fr;max-width:440px;margin:0 auto} }
.tier{background:var(--layer); backdrop-filter:blur(16px); border:1px solid rgba(255,255,255,0.08);border-radius:24px;padding:36px 30px;display:flex;flex-direction:column; box-shadow: var(--glass-glow); transition:transform .3s, box-shadow .3s;}
.tier:hover{transform:translateY(-8px); box-shadow: 0 24px 60px rgba(0,0,0,0.6), inset 0 1px 0 rgba(255,255,255,0.15), 0 0 30px rgba(201,59,0,0.15);}
.tier.featured-tier{border-color:var(--red);box-shadow:0 0 0 1px var(--red), 0 24px 60px rgba(201,59,0,.3), inset 0 1px 0 rgba(255,255,255,0.15);position:relative}
.tier.featured-tier:hover{box-shadow:0 0 0 1px var(--red), 0 30px 80px rgba(201,59,0,.4), inset 0 1px 0 rgba(255,255,255,0.2);}
.tier .popular{position:absolute;top:-14px;left:50%;transform:translateX(-50%);background:linear-gradient(135deg, var(--red-bright), var(--red));color:#fff;font-size:10px;font-weight:800;letter-spacing:1px;text-transform:uppercase;padding:6px 16px;border-radius:999px; box-shadow: 0 4px 12px rgba(201,59,0,0.5);}
.tier .tname{font-size:13px;font-weight:800;letter-spacing:1.4px;text-transform:uppercase;color:var(--muted)}
.tier .tprice{font-family:var(--font-display);font-weight:700;font-size:40px;margin:12px 0 2px}
.tier .tprice span{font-family:var(--font-body);font-size:15px;color:var(--muted);font-weight:600}
.tier .tdesc{color:var(--muted);font-size:14px;margin-bottom:20px}
.tier ul{list-style:none;flex:1;margin-bottom:22px}
.tier li{display:flex;gap:10px;font-size:14px;margin-bottom:11px;color:var(--cream)}
.tier li .ck{color:var(--red-bright);font-weight:800;flex-shrink:0}
.tier li.muted{color:var(--muted-2)} .tier li.muted .ck{color:var(--muted-2)}

/* ── FAQ ── */
.faq{max-width:760px;margin:0 auto}
.faq details{background:var(--layer);border:1px solid var(--border);border-radius:14px;margin-bottom:12px;overflow:hidden}
.faq summary{padding:18px 22px;font-weight:700;font-size:16px;cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:12px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:'+';color:var(--red-bright);font-size:22px;font-weight:400;transition:transform .2s}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq details p{padding:0 22px 20px;color:var(--muted);font-size:15px;line-height:1.6}

/* ── CTA band ── */
.cta-band{background:linear-gradient(150deg, rgba(201,59,0,.20), rgba(201,59,0,.05));
  border:1px solid rgba(201,59,0,.4);border-radius:26px;padding:56px 40px;text-align:center;position:relative;overflow:hidden}
.cta-band h2{margin-bottom:12px}
.cta-band p{color:var(--muted);font-size:17px;max-width:520px;margin:0 auto 28px}
.cta-band .cta-row{justify-content:center}

/* ── page hero (interior pages) ── */
.page-hero{padding:72px 0 30px;text-align:center}
.page-hero h1{font-family:var(--font-display);font-weight:600;font-size:clamp(38px,6vw,60px);letter-spacing:-1.5px;line-height:1.03;
  background: linear-gradient(180deg, #fff 20%, #e0cbb0 100%); -webkit-background-clip: text; -webkit-text-fill-color: transparent;}
.page-hero p{color:var(--muted);font-size:18px;max-width:600px;margin:18px auto 0}

/* ── prose (about / legal) ── */
.prose{max-width:760px;margin:0 auto}
.prose h2{font-size:clamp(24px,3.4vw,32px);margin:38px 0 14px}
.prose h3{font-family:var(--font-display);font-weight:600;font-size:20px;margin:26px 0 10px}
.prose p{color:var(--muted);font-size:16px;margin-bottom:16px;line-height:1.7}
.prose ul{color:var(--muted);font-size:16px;margin:0 0 16px 22px;line-height:1.7}
.prose li{margin-bottom:8px}
.prose b,.prose strong{color:var(--cream)}
.prose a{color:var(--red-bright);text-decoration:underline}
.legal-meta{color:var(--muted-2);font-size:13px;margin-bottom:30px}

/* ── footer ── */
footer{border-top:1px solid var(--border);padding:48px 0 60px;margin-top:30px}
.foot{display:flex;flex-wrap:wrap;justify-content:space-between;gap:30px;align-items:flex-start}
.foot-brand{max-width:280px}
.foot-brand .word{font-size:20px;font-weight:800;text-transform:uppercase;letter-spacing:1px}
.foot-brand p{color:var(--muted-2);font-size:13px;margin-top:10px}
.foot-cols{display:flex;gap:60px;flex-wrap:wrap}
.foot-col h4{font-size:11px;font-weight:800;letter-spacing:1.6px;text-transform:uppercase;color:var(--muted-2);margin-bottom:14px}
.foot-col a{display:block;color:var(--muted);font-size:14px;margin-bottom:9px;transition:color .15s}
.foot-col a:hover{color:var(--cream)}
.foot-bottom{margin-top:40px;padding-top:24px;border-top:1px solid var(--border);color:var(--muted-2);font-size:12.5px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px}

/* ── reveal (progressive enhancement) ── */
html.js .reveal{opacity:0;transform:translateY(18px);transition:opacity .6s ease, transform .6s cubic-bezier(.22,.61,.36,1)}
html.js .reveal.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){ html.js .reveal{opacity:1;transform:none;transition:none} }
