@font-face { font-family: Fraunces; src: url('/v2/fonts/fraunces-300.ttf') format('truetype'); font-weight: 300; font-display: swap; }
@font-face { font-family: Fraunces; src: url('/v2/fonts/fraunces-400.ttf') format('truetype'); font-weight: 400; font-display: swap; }
@font-face { font-family: Fraunces; src: url('/v2/fonts/fraunces-500.ttf') format('truetype'); font-weight: 500; font-display: swap; }
@font-face { font-family: Inter; src: url('/v2/fonts/inter-400.ttf') format('truetype'); font-weight: 400; font-display: swap; }
@font-face { font-family: Inter; src: url('/v2/fonts/inter-500.ttf') format('truetype'); font-weight: 500; font-display: swap; }
@font-face { font-family: Inter; src: url('/v2/fonts/inter-600.ttf') format('truetype'); font-weight: 600; font-display: swap; }
@font-face { font-family: Inter; src: url('/v2/fonts/inter-700.ttf') format('truetype'); font-weight: 700; font-display: swap; }
@font-face { font-family: JetBrains Mono; src: url('/v2/fonts/jetbrains-400.ttf') format('truetype'); font-weight: 400; font-display: swap; }
@font-face { font-family: JetBrains Mono; src: url('/v2/fonts/jetbrains-600.ttf') format('truetype'); font-weight: 600; font-display: swap; }

:root {
  --pine:#10201A;
  --pine-deep:#0B1813;
  --pine-raised:#172E25;
  --pine-line:#28443A;
  --cream:#F3EEE1;
  --cream-dim:#C7C9BC;
  --ink:#14241C;
  --sage:#8AA088;
  --mint:#BFE6CB;
  --brass:#C7A66B;
  --brass-dim:#9A8252;
  --ease:cubic-bezier(.22,.61,.36,1);
  --shadow:0 18px 40px -14px rgba(0,0,0,.45);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  min-height: 100vh;
  margin: 0;
  color: var(--ink);
  font-family: Inter, system-ui, sans-serif;
  background: var(--cream);
}
button, input { font: inherit; }
button { cursor: pointer; }
a { color: inherit; }
:focus-visible { outline: 2px solid var(--mint); outline-offset: 3px; }
.sr-only { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; }

.intro-overlay {
  position: fixed;
  inset: 0;
  z-index: 1000;
  display: grid;
  place-items: center;
  overflow: hidden;
  background:
    radial-gradient(circle at 50% 42%, rgba(191,230,203,.12), transparent 24rem),
    linear-gradient(180deg, var(--pine) 0%, var(--pine-deep) 100%);
  color: var(--cream);
  transition: opacity 800ms var(--ease), transform 800ms var(--ease);
}
.intro-overlay[hidden] {
  display: none !important;
  pointer-events: none !important;
}
.intro-overlay.is-hidden { opacity: 0; transform: translateY(-18px); pointer-events: none; }
.intro-skip {
  position: absolute;
  top: 28px;
  right: 30px;
  z-index: 4;
  border: 1px solid rgba(243,238,225,.16);
  border-radius: 999px;
  padding: 10px 14px;
  background: rgba(23,46,37,.58);
  color: var(--cream);
  font-family: "JetBrains Mono", monospace;
  font-size: 12px;
}
.intro-progress {
  position: absolute;
  left: 50%;
  bottom: 34px;
  width: min(260px, calc(100% - 48px));
  height: 3px;
  border-radius: 999px;
  background: rgba(243,238,225,.12);
  transform: translateX(-50%);
  overflow: hidden;
}
.intro-progress span { display:block; width: 0%; height: 100%; background: var(--mint); transition: width 900ms var(--ease); }
.intro-progress-label { position:absolute; left:50%; bottom:46px; transform:translateX(-50%); color:var(--cream-dim); font:600 11px "JetBrains Mono", monospace; letter-spacing:.12em; }
.intro-dots {
  position: absolute;
  left: 50%;
  bottom: 34px;
  z-index: 4;
  display: flex;
  align-items: center;
  gap: 8px;
  transform: translateX(-50%);
}
.intro-dots span {
  width: 7px;
  height: 7px;
  border-radius: 999px;
  background: rgba(243,238,225,.28);
  transition: width 700ms var(--ease), background 700ms var(--ease);
}
.intro-overlay[data-beat="1"] .intro-dots span:nth-child(1),
.intro-overlay[data-beat="2"] .intro-dots span:nth-child(2),
.intro-overlay[data-beat="3"] .intro-dots span:nth-child(3) {
  width: 26px;
  background: var(--mint);
}
.intro-dots + .intro-progress,
.intro-progress-label {
  display: none;
}
.intro-beat { position: absolute; inset: 0; display: grid; place-items: center; opacity: 0; transform: translateY(18px); transition: opacity 900ms var(--ease), transform 900ms var(--ease); pointer-events:none; }
.intro-overlay[data-beat="1"] .intro-logo-beat,
.intro-overlay[data-beat="2"] .intro-value-beat,
.intro-overlay[data-beat="3"] .intro-coach-beat { opacity: 1; transform: translateY(0); pointer-events:auto; }
.intro-overlay[data-beat="2"] .intro-logo-beat { opacity: .2; transform: scale(1.08); }
.intro-overlay[data-beat="2"] .intro-logo-mark { opacity: .22; }
.intro-overlay[data-beat="3"] { background: rgba(16,32,26,.74); backdrop-filter: blur(14px); }
.intro-logo-mark {
  width: 116px; height:116px; border-radius:28px;
  display:grid; place-items:center;
  background: linear-gradient(135deg, var(--mint), #6f8d75);
  box-shadow: 0 34px 80px rgba(0,0,0,.42), inset 0 1px 0 rgba(255,255,255,.28);
  animation: logoArrive 900ms var(--ease) both;
}
.intro-logo-mark span { width:42px; height:58px; border-radius:11px 11px 7px 7px; background:var(--pine-deep); clip-path: polygon(0 0,100% 0,100% 100%,50% 76%,0 100%); opacity:.86; }
.burst-field { position:absolute; inset:0; }
.burst-tile, .platform-tile { position:absolute; will-change:transform; transition: transform 650ms var(--ease); }
.burst-tile > div, .platform-tile > div {
  display:grid; place-items:center; width:100%; height:100%; border-radius:22px;
  box-shadow: 0 24px 46px rgba(0,0,0,.24), inset 0 1px 0 rgba(255,255,255,.26);
  animation: bob var(--dur,7s) var(--delay,0s) var(--ease) infinite;
}
.burst-tile img, .platform-tile img { width:52%; height:52%; filter: brightness(0) invert(1); }
.burst-tile { left:50%; top:50%; opacity:0; width:70px; height:70px; transform: translate(-50%,-50%) scale(.35) rotate(0deg); animation: burstOut 1100ms var(--ease) forwards; animation-delay: var(--pop); }
.tile-instagram { --x:-290px; --y:-120px; --r:-9deg; --pop:250ms; --dur:7.2s; background:#E4405F; }
.tile-tiktok { --x:-210px; --y:160px; --r:7deg; --pop:320ms; --dur:8.4s; }
.tile-x { --x:280px; --y:-128px; --r:8deg; --pop:390ms; width:78px; height:78px; }
.tile-facebook { --x:310px; --y:118px; --r:-7deg; --pop:460ms; width:76px; height:76px; }
.tile-pinterest { --x:-58px; --y:218px; --r:-4deg; --pop:530ms; width:62px; height:62px; }
.tile-reddit { --x:75px; --y:-220px; --r:5deg; --pop:600ms; width:60px; height:60px; }
.tile-instagram > div, .hero-instagram > div { background:linear-gradient(135deg,#ffdc80,#e1306c,#833ab4); }
.tile-tiktok > div, .hero-tiktok > div, .tile-x > div, .hero-x > div { background:#05070a; }
.tile-facebook > div, .hero-facebook > div { background:#1877F2; }
.tile-pinterest > div, .hero-pinterest > div { background:#E60023; }
.tile-reddit > div, .hero-reddit > div { background:#FF4500; }
.intro-value-beat { text-align:center; padding:28px; }
.mono-eyebrow { margin:0 0 18px; color:var(--brass); font:600 12px "JetBrains Mono", monospace; letter-spacing:.28em; text-transform:uppercase; }
.intro-value-beat h2, .coach-copy h2 { margin:0; font:400 clamp(46px,8vw,92px)/1.02 Fraunces, serif; letter-spacing:-.02em; }
.intro-value-copy { color:var(--cream-dim); font-size:18px; }
.intro-chips { display:flex; flex-wrap:wrap; justify-content:center; gap:12px; margin-top:28px; }
.intro-chips span { opacity:0; transform:translateY(14px); border:1px solid var(--pine-line); border-radius:999px; padding:12px 16px; background:rgba(23,46,37,.74); color:var(--cream); transition:opacity 700ms var(--ease), transform 700ms var(--ease); }
.intro-overlay[data-beat="2"] .intro-chips span { opacity:1; transform:translateY(0); }
.intro-overlay[data-beat="2"] .intro-chips span:nth-child(2){transition-delay:90ms}.intro-overlay[data-beat="2"] .intro-chips span:nth-child(3){transition-delay:180ms}.intro-overlay[data-beat="2"] .intro-chips span:nth-child(4){transition-delay:270ms}
.coach-card { width:min(860px, calc(100% - 36px)); display:grid; grid-template-columns: 330px 1fr; gap:34px; align-items:center; border:1px solid rgba(243,238,225,.12); border-radius:28px; padding:28px; background:rgba(23,46,37,.72); box-shadow:var(--shadow); backdrop-filter:blur(18px); }
.iphone-frame { position:relative; width:280px; height:560px; margin:auto; border:10px solid #050706; border-radius:42px; background:#101010; box-shadow:0 30px 80px rgba(0,0,0,.46); overflow:hidden; }
.iphone-top { position:absolute; left:50%; top:12px; width:90px; height:24px; border-radius:999px; background:#050706; transform:translateX(-50%); z-index:2; }
.iphone-screen { position:absolute; inset:18px 12px 76px; border-radius:28px; background:linear-gradient(180deg, #f3eee1, #e9eadc); padding:64px 22px; }
.mini-site-line { width:120px; height:10px; border-radius:999px; background:#c7a66b; opacity:.55; }
.mini-site-title { width:190px; height:64px; border-radius:18px; margin-top:28px; background:#10201a; opacity:.9; }
.mini-site-bar { height:44px; border-radius:14px; margin-top:26px; background:#172e25; }
.safari-bar { position:absolute; left:0; right:0; bottom:0; height:70px; display:flex; justify-content:space-around; align-items:center; background:#f7f7f7; color:#444; }
.safari-bar span { width:20px; height:20px; border-radius:7px; background:#d9d9d9; display:grid; place-items:center; font-size:18px; }
.share-button-highlight { position:relative; background:#fff !important; color:#1d77ff; }
.share-button-highlight::after, .add-highlight::after { content:""; position:absolute; inset:-12px; border:2px solid var(--mint); border-radius:999px; animation:pulseRing 1.8s var(--ease) infinite; }
.share-sheet { position:absolute; left:14px; right:14px; bottom:72px; height:150px; border-radius:22px 22px 0 0; background:rgba(255,255,255,.94); color:#111; padding:20px; transform:translateY(20px); opacity:.96; }
.share-sheet div { width:48px; height:5px; border-radius:999px; background:#d7d7d7; margin:0 auto 24px; }
.share-sheet p { margin:0; font-weight:700; }
.add-highlight { position:absolute; right:22px; bottom:34px; color:#1d77ff; font-size:28px; }
.coach-copy p:not(.mono-eyebrow) { color:var(--cream-dim); font-size:17px; line-height:1.7; }
.coach-copy span { color:var(--mint); }
.got-it-button { min-height:54px; border:0; border-radius:16px; padding:0 24px; background:var(--mint); color:var(--pine-deep); font-weight:700; }

.site-header { position:fixed; top:18px; left:50%; z-index:200; width:min(1180px, calc(100% - 40px)); min-height:68px; display:flex; align-items:center; justify-content:space-between; gap:18px; padding:10px 12px; border:1px solid rgba(138,160,136,.24); border-radius:22px; background:rgba(243,238,225,.76); backdrop-filter:blur(18px); transform:translateX(-50%); }
.brand { display:flex; align-items:center; gap:10px; color:var(--ink); font-weight:700; text-decoration:none; }
.brand-mark img { width:42px; height:42px; border-radius:14px; }
.site-header nav { display:flex; gap:28px; color:rgba(20,36,28,.72); font-size:14px; font-weight:600; }
.site-header nav a { text-decoration:none; }
.header-cta { min-height:44px; border:0; border-radius:999px; padding:0 18px; background:var(--pine); color:var(--cream); font-weight:700; }
.hero-section {
  position:relative;
  min-height:100vh;
  display:grid;
  place-items:center;
  overflow:hidden;
  padding:132px 20px 86px;
  background:
    radial-gradient(circle at 65% 82%, rgba(191,230,203,.48), transparent 26rem),
    radial-gradient(circle at 48% 38%, rgba(191,230,203,.18), transparent 20rem),
    linear-gradient(180deg, #f7f1e4 0%, var(--cream) 62%, #eaf0df 100%);
}
.hero-aura { position:absolute; width:min(680px,70vw); height:min(680px,70vw); border-radius:50%; background:radial-gradient(circle, rgba(191,230,203,.42), transparent 64%); filter:blur(18px); animation:aura 12s var(--ease) infinite; pointer-events:none; }
.hero-ribbon {
  position:absolute;
  inset:auto -10% 19% -10%;
  height:260px;
  border-top:3px solid rgba(138,160,136,.22);
  border-radius:50%;
  transform:rotate(-8deg);
  pointer-events:none;
}
.hero-content { position:relative; z-index:2; width:min(860px,100%); text-align:center; }
h1 { margin:0; color:var(--ink); font:400 clamp(56px,9vw,118px)/1.02 Fraunces, serif; letter-spacing:-.025em; }
.hero-lede { max-width:720px; margin:28px auto 34px; color:rgba(20,36,28,.68); font-size:clamp(20px,2.2vw,28px); line-height:1.42; }
.command-bar { width:min(720px,100%); display:grid; grid-template-columns:44px minmax(0,1fr) 126px; gap:0; align-items:center; margin:0 auto; border:1px solid rgba(191,230,203,.18); border-radius:18px; padding:8px; background:var(--pine); box-shadow:0 28px 70px rgba(11,24,19,.22); transition:box-shadow 300ms var(--ease), border-color 300ms var(--ease); }
.command-bar:focus-within { border-color:var(--mint); box-shadow:0 28px 70px rgba(11,24,19,.22), 0 0 0 4px rgba(191,230,203,.13); }
.link-icon { color:var(--mint); font-size:30px; }
.command-bar input { min-height:58px; border:0; outline:0; background:transparent; color:var(--cream); font:500 17px "JetBrains Mono", monospace; }
.command-bar input::placeholder { color:rgba(199,201,188,.56); }
.command-bar button, .checkout-button { min-height:56px; border:0; border-radius:14px; background:var(--mint); color:var(--pine-deep); font-weight:700; }
.consent-line { width:min(720px,100%); margin:18px auto 0; color:rgba(20,36,28,.66); font-size:14px; line-height:1.5; text-align:center; }
.trust-line { margin-top:28px; color:rgba(20,36,28,.58); font:500 14px "JetBrains Mono", monospace; }
.trust-line span { color:var(--brass); letter-spacing:.08em; }
.status-line { width:min(720px,100%); margin:18px auto 0; border-radius:14px; padding:12px 14px; background:rgba(255,255,255,.45); color:rgba(20,36,28,.65); font-size:14px; }
.status-line.loading { color:var(--pine); }.status-line.error { color:#a03222; background:#fff0ec; }
.platform-tile { opacity:0; animation:heroTileIn 900ms var(--ease) forwards; animation-delay:var(--in); }
.floating-platforms,
.platform-tile {
  pointer-events: none;
}
.platform-tile > div { border-radius:24px; }
.hero-instagram { left:7%; top:25%; width:78px; height:78px; --in:160ms; --dur:7s; --delay:.2s; --rot:-7deg; }
.hero-tiktok { left:12%; bottom:32%; width:64px; height:64px; --in:290ms; --dur:8.2s; --delay:.6s; --rot:6deg; }
.hero-pinterest { left:22%; bottom:12%; width:58px; height:58px; --in:420ms; --dur:7.6s; --delay:.9s; --rot:-5deg; }
.hero-x { right:6%; top:24%; width:72px; height:72px; --in:550ms; --dur:8.8s; --delay:.3s; --rot:5deg; }
.hero-facebook { right:10%; bottom:33%; width:76px; height:76px; --in:680ms; --dur:7.8s; --delay:.8s; --rot:-6deg; }
.hero-reddit { right:22%; bottom:15%; width:62px; height:62px; --in:810ms; --dur:8.5s; --delay:.5s; --rot:7deg; }
.dark-section, .light-section, .result-panel { padding:104px 28px; }
.dark-section { background:var(--pine); color:var(--cream); }
.light-section { background:var(--cream); color:var(--ink); }
.section-heading { width:min(1180px,100%); margin:0 auto 34px; }
.section-heading h2, .result-panel h2 { max-width:780px; margin:0; font:400 clamp(34px,5vw,58px)/1.04 Fraunces, serif; letter-spacing:-.02em; }
.section-note, .section-heading p:not(.mono-eyebrow) { max-width:760px; color:var(--cream-dim); line-height:1.7; }
.light-section .section-heading p:not(.mono-eyebrow) { color:rgba(20,36,28,.66); }
.bento-grid, .pricing-grid { width:min(1180px,100%); display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; margin:0 auto; }
.bento-card, .light-card, .price-card { border-radius:22px; padding:28px; box-shadow:var(--shadow); transition:transform 250ms var(--ease), border-color 250ms var(--ease); }
.bento-card:hover, .light-card:hover, .price-card:hover { transform:translateY(-5px); }
.bento-card { min-height:230px; border:1px solid var(--pine-line); background:var(--pine-raised); }
.bento-card.wide, .light-card.wide { grid-column:1/-1; }
.step-number { display:grid; place-items:center; width:44px; height:44px; border:1px solid var(--brass); border-radius:999px; color:var(--brass); font:600 12px "JetBrains Mono", monospace; }
.bento-card h3, .light-card h3 { margin:24px 0 10px; font:400 24px Fraunces, serif; }
.bento-card p { color:var(--cream-dim); line-height:1.7; }
.light-card { min-height:210px; border:1px solid rgba(138,160,136,.32); background:#fffaf0; }
.light-card p { color:rgba(20,36,28,.66); line-height:1.7; }
.pricing-section .pricing-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
.price-card { display:grid; gap:12px; min-height:260px; border:1px solid var(--pine-line); background:var(--pine-raised); }
.price-card.featured { border-color:var(--brass); }
.price-card p { margin:0; color:var(--brass); font:600 12px "JetBrains Mono", monospace; letter-spacing:.18em; text-transform:uppercase; }
.discount-badge {
  display:inline-flex;
  align-items:center;
  width:fit-content;
  margin-left:8px;
  border-radius:999px;
  padding:5px 8px;
  background:rgba(191,230,203,.14);
  color:var(--mint);
  font:700 10px "JetBrains Mono", monospace;
  letter-spacing:.08em;
  white-space:nowrap;
}
.price-card strong { font:400 clamp(34px,4vw,52px) Fraunces, serif; }
.price-card strong span { color:var(--cream-dim); font:500 15px Inter, sans-serif; }
.price-card small { color:var(--cream-dim); line-height:1.7; }
.price-card .checkout-button { margin-top:auto; }
.billing-card {
  grid-column: 1 / -1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  border: 1px solid var(--pine-line);
  border-radius: 22px;
  padding: 24px;
  background: rgba(23,46,37,.72);
  box-shadow: var(--shadow);
}
.billing-card h3 {
  margin: 0 0 8px;
  font: 400 26px Fraunces, serif;
}
.billing-card p:last-child {
  max-width: 720px;
  margin: 0;
  color: var(--cream-dim);
  line-height: 1.7;
}
.billing-button {
  min-height: 54px;
  flex: 0 0 auto;
  border: 1px solid rgba(191,230,203,.34);
  border-radius: 16px;
  padding: 0 20px;
  background: transparent;
  color: var(--mint);
  font-weight: 700;
}
.billing-button:hover {
  background: rgba(191,230,203,.1);
}
.plan-modal[hidden] { display:none; }
body.modal-open { overflow:hidden; }
.plan-modal {
  position:fixed;
  inset:0;
  z-index:1200;
  display:grid;
  place-items:center;
  padding:28px;
  color:var(--cream);
}
.plan-modal-backdrop {
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 24% 14%, rgba(255,24,126,.18), transparent 24rem),
    radial-gradient(circle at 74% 20%, rgba(36,83,255,.2), transparent 26rem),
    rgba(5,7,8,.86);
  backdrop-filter:blur(18px);
}
.plan-modal-panel {
  position:relative;
  width:min(1180px,100%);
  max-height:min(860px, calc(100vh - 48px));
  overflow:auto;
  border:1px solid rgba(243,238,225,.11);
  border-radius:30px;
  padding:30px;
  background:
    linear-gradient(90deg, rgba(255,24,126,.12), transparent 28%, transparent 72%, rgba(36,83,255,.12)),
    radial-gradient(circle at 22% 0%, rgba(191,230,203,.1), transparent 25rem),
    linear-gradient(135deg, #090d0b, #101916 52%, #070b09);
  box-shadow:0 38px 120px rgba(0,0,0,.62);
}
.plan-modal-close {
  position:absolute;
  top:18px;
  right:18px;
  width:44px;
  height:44px;
  border:1px solid rgba(243,238,225,.16);
  border-radius:999px;
  background:rgba(243,238,225,.08);
  color:var(--cream);
  font-size:28px;
  line-height:1;
}
.plan-modal-heading {
  max-width:720px;
  margin-bottom:24px;
}
.plan-modal-heading h2 {
  margin:0;
  font:400 clamp(42px,6vw,82px)/.98 Fraunces, serif;
  letter-spacing:-.035em;
}
.plan-modal-heading p:last-child,
.plan-modal-note {
  color:var(--cream-dim);
  line-height:1.7;
}
.plan-modal-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
  align-items:stretch;
}
.plan-option {
  position:relative;
  display:grid;
  gap:16px;
  min-height:560px;
  padding:64px 22px 22px;
  border:1px solid rgba(243,238,225,.12);
  border-radius:22px;
  overflow:hidden;
  background:
    radial-gradient(circle at 18% 0%, rgba(243,238,225,.12), transparent 16rem),
    linear-gradient(180deg, rgba(33,37,43,.96), rgba(18,21,25,.98));
  box-shadow:0 20px 54px rgba(0,0,0,.34), inset 0 1px 0 rgba(243,238,225,.12);
}
.plan-option.featured {
  border:2px solid #f22082;
  background:
    radial-gradient(circle at 30% 0%, rgba(242,32,130,.2), transparent 18rem),
    linear-gradient(180deg, rgba(45,28,40,.98), rgba(20,20,24,.98));
}
.plan-option.value {
  border-color:#2453ff;
  background:
    radial-gradient(circle at 30% 0%, rgba(36,83,255,.24), transparent 18rem),
    linear-gradient(180deg, rgba(21,28,51,.98), rgba(16,19,26,.98));
}
.plan-option.is-selected {
  box-shadow:0 0 0 4px rgba(191,230,203,.12), var(--shadow), inset 0 1px 0 rgba(243,238,225,.12);
}
.plan-ribbon {
  position:absolute;
  inset:0 0 auto;
  width:100%;
  margin:0;
  border-radius:0;
  padding:13px 16px;
  background:rgba(243,238,225,.1);
  color:var(--cream);
  font:700 11px "JetBrains Mono", monospace;
  letter-spacing:.12em;
  text-align:center;
  text-transform:uppercase;
}
.plan-option.featured .plan-ribbon { background:linear-gradient(90deg, #f22082, #ff4fac); }
.plan-option.value .plan-ribbon { background:linear-gradient(90deg, #2453ff, #4d79ff); }
.plan-option h3 {
  margin:0;
  font:400 clamp(30px,3.6vw,44px)/1 Fraunces, serif;
  letter-spacing:-.025em;
}
.plan-discount {
  width:fit-content;
  border:1px solid rgba(243,238,225,.14);
  border-radius:999px;
  padding:7px 10px;
  background:rgba(243,238,225,.08);
  color:var(--cream);
  font:700 11px "JetBrains Mono", monospace;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.plan-discount.hot {
  border-color:rgba(255,94,181,.42);
  background:rgba(242,32,130,.18);
  color:#ffb4d8;
}
.plan-discount.value {
  border-color:rgba(77,121,255,.42);
  background:rgba(36,83,255,.2);
  color:#b8c8ff;
}
.plan-subtitle { min-height:1.4em; }
.plan-credit-box {
  display:grid;
  gap:10px;
  min-height:132px;
  border-radius:16px;
  padding:18px;
  background:rgba(243,238,225,.075);
  box-shadow:inset 0 1px 0 rgba(243,238,225,.1);
}
.plan-option strong {
  display:block;
  font:400 clamp(40px,5vw,58px)/1 Fraunces, serif;
}
.plan-option strong span {
  color:var(--cream-dim);
  font:500 15px Inter, sans-serif;
}
.plan-credit-box small {
  color:var(--cream-dim);
  line-height:1.45;
}
.plan-option p:not(.plan-ribbon) {
  margin:0;
  color:var(--cream-dim);
  line-height:1.65;
}
.plan-option ul {
  display:grid;
  gap:11px;
  margin:8px 0 0;
  padding:0;
  list-style:none;
  color:rgba(243,238,225,.78);
  line-height:1.45;
}
.plan-option li::before {
  content:"✓";
  margin-right:8px;
  color:var(--mint);
  font-weight:800;
}
.plan-modal-checkout {
  align-self:end;
  min-height:56px;
  margin-top:auto;
  border:0;
  border-radius:16px;
  background:var(--mint);
  color:var(--pine-deep);
  font-weight:800;
}
.plan-option.featured .plan-modal-checkout {
  background:linear-gradient(135deg, #f22082, #ff5eb5);
  color:#fff;
  box-shadow:0 14px 28px rgba(242,32,130,.28);
}
.plan-option.value .plan-modal-checkout {
  background:linear-gradient(135deg, #2453ff, #4d79ff);
  color:#fff;
  box-shadow:0 14px 28px rgba(36,83,255,.28);
}
.plan-modal-note {
  margin:20px 0 0;
  text-align:center;
  font-size:14px;
}
.result-panel {
  background:#fffaf0;
}
.result-panel > div {
  width:min(1180px,100%);
  margin:0 auto;
}
.result-preview {
  display:grid;
  grid-template-columns:minmax(240px,420px) minmax(0,1fr);
  gap:22px;
  margin-top:18px;
  align-items:center;
  border:1px solid rgba(138,160,136,.26);
  border-radius:28px;
  padding:18px;
  background:#fff;
  box-shadow:0 22px 60px rgba(11,24,19,.1);
}
.media-preview-video,
.media-preview-image,
.media-preview-empty {
  width:100%;
  aspect-ratio:9 / 16;
  max-height:520px;
  border-radius:22px;
  object-fit:cover;
  background:linear-gradient(180deg, #10201a, #172e25);
  box-shadow:0 18px 42px rgba(11,24,19,.18);
}
.media-preview-empty {
  display:grid;
  place-items:center;
  color:var(--cream-dim);
  font:600 12px "JetBrains Mono", monospace;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.result-meta {
  min-width:0;
  display:grid;
  gap:14px;
  align-content:center;
}
.result-meta p {
  margin:0 0 10px;
  color:rgba(20,36,28,.66);
  line-height:1.55;
}
.result-title-text {
  display:-webkit-box;
  max-height:8.2em;
  overflow:hidden;
  color:var(--ink) !important;
  font:400 clamp(24px,3.6vw,44px)/1.08 Fraunces, serif;
  letter-spacing:-.02em;
  -webkit-line-clamp:4;
  -webkit-box-orient:vertical;
}
.media-list { display:grid; gap:12px; margin-top:18px; }
.media-item {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  border:1px solid rgba(138,160,136,.3);
  border-radius:16px;
  padding:14px;
  background:#fff;
}
.media-action {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  border-radius:12px;
  padding:0 18px;
  background:var(--pine);
  color:var(--cream);
  font-weight:800;
  text-decoration:none;
  white-space:nowrap;
}
.primary-download-action {
  width:fit-content;
  min-height:56px;
  border-radius:16px;
  padding:0 26px;
  background:var(--mint);
  color:var(--pine-deep);
  box-shadow:0 16px 34px rgba(11,24,19,.16);
}
.faq-list { width:min(900px,100%); margin:0 auto; }
details { border-bottom:1px solid rgba(138,160,136,.34); padding:22px 0; }
summary { cursor:pointer; list-style:none; font:400 24px Fraunces, serif; }
summary::-webkit-details-marker { display:none; }
summary::after { content:"+"; float:right; color:var(--brass); transition:transform 250ms var(--ease); }
details[open] summary::after { transform:rotate(45deg); }
details p { color:rgba(20,36,28,.66); line-height:1.7; }
.site-footer { padding:82px 28px 34px; background:var(--pine-deep); color:var(--cream); }
.site-footer > * { width:min(1180px,100%); margin-left:auto; margin-right:auto; }
.site-footer h2 { margin:0; font:400 clamp(52px,10vw,140px)/.9 Fraunces, serif; letter-spacing:-.04em; }
.site-footer p { color:var(--cream-dim); max-width:720px; }
.site-footer nav { display:flex; flex-wrap:wrap; gap:18px; margin-top:28px; }
.site-footer a { color:var(--cream-dim); }
.site-footer small { display:block; margin-top:36px; color:rgba(199,201,188,.7); }
.reveal-on-scroll { opacity:0; transform:translateY(24px); transition:opacity 760ms var(--ease), transform 760ms var(--ease); }
.reveal-on-scroll.is-visible { opacity:1; transform:translateY(0); }

@keyframes logoArrive { from{opacity:0; transform:scale(.72)} to{opacity:1; transform:scale(1)} }
@keyframes burstOut { to{opacity:1; transform:translate(calc(-50% + var(--x)), calc(-50% + var(--y))) scale(1) rotate(var(--r));} }
@keyframes bob { 0%,100%{transform:translateY(0) rotate(var(--rot,0deg))} 50%{transform:translateY(-18px) rotate(calc(var(--rot,0deg) * -1))} }
@keyframes pulseRing { 0%,100%{opacity:.3; transform:scale(.9)} 50%{opacity:1; transform:scale(1.08)} }
@keyframes aura { 0%,100%{transform:scale(1); opacity:.72} 50%{transform:scale(1.12); opacity:1} }
@keyframes heroTileIn { from{opacity:0; transform:scale(.4)} to{opacity:1; transform:scale(1)} }

@media (max-width: 900px) {
  .site-header { position:absolute; flex-wrap:wrap; justify-content:center; }
  .site-header nav { order:3; width:100%; justify-content:center; gap:16px; }
  .hero-section { padding-top:178px; }
  .pricing-section .pricing-grid, .bento-grid { grid-template-columns:1fr; }
  .billing-card { flex-direction: column; align-items: stretch; }
  .plan-modal {
    padding:14px;
    align-items:start;
  }
  .plan-modal-panel {
    max-height:calc(100vh - 28px);
    padding:22px 16px;
    border-radius:22px;
  }
  .plan-modal-grid {
    grid-template-columns:1fr;
  }
  .plan-option {
    min-height:auto;
  }
  .coach-card { grid-template-columns:1fr; text-align:center; }
  .iphone-frame { width:240px; height:480px; }
}
@media (max-width: 680px) {
  .intro-skip { top:16px; right:16px; }
  .intro-value-beat h2, .coach-copy h2 { font-size:44px; }
  .burst-tile { width:54px; height:54px; }
  .tile-instagram{--x:-118px;--y:-138px}.tile-tiktok{--x:-130px;--y:122px}.tile-x{--x:128px;--y:-120px}.tile-facebook{--x:130px;--y:110px}.tile-pinterest{--x:-34px;--y:174px}.tile-reddit{--x:34px;--y:-184px}
  .command-bar { grid-template-columns:36px minmax(0,1fr); }
  .command-bar button { grid-column:1/-1; }
  .consent-line { text-align:left; }
  .platform-tile { display:none !important; }
  .dark-section, .light-section, .result-panel { padding:64px 20px; }
  .result-preview {
    grid-template-columns:1fr;
  }
  .media-preview-video,
  .media-preview-image,
  .media-preview-empty {
    max-height:420px;
  }
  .media-item {
    align-items:stretch;
    flex-direction:column;
  }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation:none !important; transition:none !important; scroll-behavior:auto !important; }
  .intro-overlay { display:none !important; }
  .reveal-on-scroll { opacity:1 !important; transform:none !important; }
  .platform-tile { opacity:1 !important; }
}

/* SEO landing and platform guide styles */
.header-cta { display:inline-flex; align-items:center; justify-content:center; text-decoration:none; }
.section-note { max-width:760px; margin:16px auto 0; color:rgba(20,36,28,.66); line-height:1.7; }
.dark-section .section-note { color:rgba(199,201,188,.76); }
.seo-section { position:relative; overflow:hidden; }
.seo-section::after { content:""; position:absolute; right:-110px; bottom:-130px; width:360px; height:360px; border-radius:50%; background:radial-gradient(circle, rgba(191,230,203,.42), transparent 66%); pointer-events:none; }
.seo-grid { grid-template-columns:repeat(3, minmax(0, 1fr)); }
.platform-seo-links { width:min(980px,100%); margin:32px auto 0; display:flex; flex-wrap:wrap; justify-content:center; gap:12px; }
.platform-seo-links a { border:1px solid rgba(138,160,136,.34); border-radius:999px; padding:12px 16px; background:rgba(255,255,255,.68); color:var(--ink); font-weight:700; text-decoration:none; box-shadow:0 10px 26px rgba(11,24,19,.06); }
.platform-page { background:linear-gradient(180deg, #f7f1e4 0%, var(--cream) 58%, #eaf0df 100%); }
.platform-page-main { padding-top:118px; }
.platform-hero { min-height:auto; padding:112px 20px 70px; }
.platform-hero .hero-content { width:min(930px,100%); }
.platform-hero h1 { font-size:clamp(52px,8vw,104px); }
.platform-copy-section { padding:72px 24px; }
.platform-copy-section .copy-wrap { width:min(980px,100%); margin:0 auto; display:grid; grid-template-columns:1.1fr .9fr; gap:24px; align-items:start; }
.platform-copy-card { border:1px solid rgba(138,160,136,.28); border-radius:22px; padding:28px; background:rgba(255,255,255,.72); box-shadow:0 20px 52px rgba(11,24,19,.08); }
.platform-copy-card h2, .platform-copy-card h3 { margin:0 0 14px; color:var(--ink); font:400 clamp(30px,4vw,52px)/1.05 Fraunces, serif; letter-spacing:-.02em; }
.platform-copy-card p, .platform-copy-card li { color:rgba(20,36,28,.68); line-height:1.75; }
.platform-copy-card ul { margin:16px 0 0; padding-left:20px; }
.platform-cta-row { display:flex; flex-wrap:wrap; gap:12px; margin-top:24px; }
.platform-cta-row a { display:inline-flex; align-items:center; justify-content:center; min-height:52px; border-radius:999px; padding:0 20px; font-weight:800; text-decoration:none; }
.platform-cta-row a:first-child { background:var(--pine); color:var(--cream); }
.platform-cta-row a:last-child { border:1px solid rgba(138,160,136,.35); background:#fff; color:var(--ink); }
.platform-faq { padding-top:60px; }
@media (max-width:900px) { .seo-grid, .platform-copy-section .copy-wrap { grid-template-columns:1fr; } .platform-page-main { padding-top:156px; } }
