/* =========================================================
   ONE DAY IN PARIS — Growth Proposal by iLaunchU
   Elegant Parisian aesthetic · cream / poppy-blush / gold / wine
   ========================================================= */

:root {
  /* Palette */
  --cream:        #FAF5EC;
  --cream-2:      #F4ECDD;
  --paper:        #FFFDF8;
  --ink:          #2B2420;
  --ink-soft:     #5A4F46;
  --ink-faint:    #8B7F73;
  --wine:         #6E2233;
  --wine-deep:    #511826;
  --poppy:        #DE8A82;
  --poppy-soft:   #EBB4AD;
  --poppy-tint:   #F6DAD4;
  --gold:         #C2A05B;
  --gold-deep:    #A6843F;
  --line:         #E3D7C4;
  --shadow-soft:  0 18px 50px -20px rgba(64, 40, 28, 0.28);
  --shadow-card:  0 24px 60px -28px rgba(64, 40, 28, 0.40);
  --shadow-deep:  0 40px 90px -40px rgba(40, 20, 14, 0.55);

  /* Type */
  --serif: "Cormorant Garamond", Georgia, "Times New Roman", serif;
  --sans:  "Jost", "Helvetica Neue", Arial, sans-serif;

  --maxw: 1180px;
}

* { box-sizing: border-box; margin: 0; padding: 0; }

html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }

body {
  font-family: var(--sans);
  color: var(--ink);
  background: var(--cream);
  line-height: 1.65;
  font-weight: 300;
  overflow-x: hidden;
  -webkit-font-smoothing: antialiased;
}

img { max-width: 100%; display: block; }

a { color: inherit; text-decoration: none; }

/* ---------- Typography helpers ---------- */
.eyebrow {
  font-family: var(--sans);
  font-weight: 500;
  font-size: 0.72rem;
  letter-spacing: 0.34em;
  text-transform: uppercase;
  color: var(--gold-deep);
}
.eyebrow.on-dark { color: var(--poppy-soft); }

h1, h2, h3, h4 { font-family: var(--serif); font-weight: 500; line-height: 1.08; letter-spacing: -0.01em; }
h2.section-title { font-size: clamp(2.2rem, 4.6vw, 3.7rem); }
.section-title em { font-style: italic; color: var(--wine); }
.lead { font-size: clamp(1.05rem, 1.6vw, 1.25rem); color: var(--ink-soft); font-weight: 300; }

.script-accent { font-family: var(--serif); font-style: italic; }

/* ---------- Layout ---------- */
.wrap { max-width: var(--maxw); margin: 0 auto; padding: 0 28px; }
section { position: relative; }
.section-pad { padding: clamp(72px, 11vw, 150px) 0; }
.center { text-align: center; }
.divider-flourish {
  display: flex; align-items: center; justify-content: center; gap: 14px;
  color: var(--gold); margin: 0 auto 26px;
}
.divider-flourish::before, .divider-flourish::after {
  content: ""; height: 1px; width: 54px; background: linear-gradient(90deg, transparent, var(--gold));
}
.divider-flourish::after { background: linear-gradient(90deg, var(--gold), transparent); }
.divider-flourish span { font-size: 1.1rem; }

/* ---------- Buttons ---------- */
.btn {
  display: inline-flex; align-items: center; gap: 10px;
  font-family: var(--sans); font-weight: 500; font-size: 0.82rem;
  letter-spacing: 0.16em; text-transform: uppercase;
  padding: 16px 34px; border-radius: 2px; cursor: pointer;
  transition: all .35s cubic-bezier(.2,.7,.3,1); border: 1px solid transparent;
}
.btn-primary { background: var(--wine); color: var(--cream); }
.btn-primary:hover { background: var(--wine-deep); transform: translateY(-2px); box-shadow: var(--shadow-soft); }
.btn-gold { background: var(--gold); color: #2b2008; }
.btn-gold:hover { background: var(--gold-deep); color: #fff; transform: translateY(-2px); box-shadow: var(--shadow-soft); }
.btn-ghost { background: transparent; color: var(--ink); border-color: var(--ink); }
.btn-ghost:hover { background: var(--ink); color: var(--cream); }
.btn-ghost.on-dark { color: var(--cream); border-color: rgba(255,255,255,.5); }
.btn-ghost.on-dark:hover { background: var(--cream); color: var(--ink); }

/* ---------- Top Nav ---------- */
.topbar {
  position: fixed; top: 0; left: 0; right: 0; z-index: 100;
  display: flex; align-items: center; justify-content: space-between;
  padding: 18px 34px; transition: all .4s ease;
}
.topbar.scrolled {
  background: rgba(250, 245, 236, 0.88);
  backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px);
  border-bottom: 1px solid var(--line); padding: 12px 34px;
}
.brand-lockup { display: flex; align-items: center; gap: 12px; }
.poppy-mark { width: 30px; height: 30px; flex: none; }
.brand-lockup .b-name { font-family: var(--serif); font-size: 1.18rem; letter-spacing: .02em; line-height: 1; }
.brand-lockup .b-sub { font-size: .58rem; letter-spacing: .28em; text-transform: uppercase; color: var(--ink-faint); }
.topbar.on-hero:not(.scrolled) .b-name,
.topbar.on-hero:not(.scrolled) .b-sub { color: var(--cream); }
.nav-links { display: flex; gap: 30px; align-items: center; }
.nav-links a { font-size: .74rem; letter-spacing: .14em; text-transform: uppercase; font-weight: 400; color: var(--ink-soft); transition: color .25s; }
.topbar.on-hero:not(.scrolled) .nav-links a { color: rgba(255,255,255,.82); }
.nav-links a:hover { color: var(--wine); }
.topbar.on-hero:not(.scrolled) .nav-links a:hover { color: #fff; }
.nav-cta { font-size: .72rem !important; padding: 11px 22px; }
@media (max-width: 900px){ .nav-links a:not(.nav-cta){ display:none; } }

/* ---------- Hero ---------- */
.hero {
  min-height: 100vh; display: flex; align-items: center;
  position: relative; color: var(--cream); overflow: hidden;
}
.hero-bg { position: absolute; inset: 0; z-index: 0; }
.hero-bg img { width: 100%; height: 100%; object-fit: cover; transform: scale(1.05); }
.hero-bg::after {
  content: ""; position: absolute; inset: 0;
  background:
    linear-gradient(180deg, rgba(30,18,12,.55) 0%, rgba(30,18,12,.25) 35%, rgba(40,22,14,.72) 100%),
    radial-gradient(120% 90% at 20% 30%, rgba(40,22,14,.35), transparent 60%);
}
.hero-inner { position: relative; z-index: 2; padding-top: 90px; max-width: 880px; }
.hero .eyebrow { margin-bottom: 24px; }
.hero h1 { font-size: clamp(3rem, 7.6vw, 6.4rem); font-weight: 500; line-height: .98; }
.hero h1 em { font-style: italic; color: var(--poppy-soft); }
.hero .lead { color: rgba(255,255,255,.9); max-width: 620px; margin: 28px 0 40px; font-size: 1.18rem; }
.hero-ctas { display: flex; gap: 16px; flex-wrap: wrap; }
.hero-meta {
  position: absolute; bottom: 34px; left: 0; right: 0; z-index: 2;
  display: flex; justify-content: space-between; align-items: flex-end;
  font-size: .72rem; letter-spacing: .2em; text-transform: uppercase; color: rgba(255,255,255,.7);
}
.scroll-cue { display: flex; flex-direction: column; align-items: center; gap: 8px; }
.scroll-cue .line { width: 1px; height: 40px; background: linear-gradient(rgba(255,255,255,.7), transparent); animation: drop 2s infinite; }
@keyframes drop { 0%{transform:scaleY(0);transform-origin:top} 50%{transform:scaleY(1);transform-origin:top} 51%{transform-origin:bottom} 100%{transform:scaleY(0);transform-origin:bottom} }
@media (max-width:600px){ .hero-meta{ display:none; } }

/* ---------- Understanding ---------- */
.understanding { background: var(--paper); }
.understanding .grid { display: grid; grid-template-columns: 1.1fr 1fr; gap: 70px; align-items: center; }
.understanding .quote {
  font-family: var(--serif); font-style: italic; font-size: clamp(1.7rem,3vw,2.4rem);
  line-height: 1.25; color: var(--ink); margin: 22px 0;
}
.understanding .quote .by { display:block; font-style: normal; font-family: var(--sans); font-size:.74rem; letter-spacing:.22em; text-transform:uppercase; color:var(--ink-faint); margin-top:18px; }
.pillar-chips { display:flex; flex-wrap:wrap; gap:10px; margin-top:26px; }
.pillar-chips span { font-size:.72rem; letter-spacing:.12em; text-transform:uppercase; padding:8px 16px; border:1px solid var(--line); border-radius:30px; color:var(--ink-soft); }
.understanding .img-stack { position: relative; }
.understanding .img-stack img { border-radius: 4px; box-shadow: var(--shadow-card); }
.understanding .img-stack .img-b {
  position:absolute; width: 46%; bottom: -38px; right: -22px; border:6px solid var(--paper);
}
@media (max-width:860px){ .understanding .grid{ grid-template-columns:1fr; gap:48px; } .understanding .img-stack .img-b{ display:none; } }

/* ---------- Problem / transition band ---------- */
.band-dark { background: var(--wine-deep); color: var(--cream); text-align:center; }
.band-dark .lead { color: rgba(255,255,255,.82); max-width: 760px; margin: 0 auto; }
.band-dark h2 em { color: var(--poppy-soft); }

/* ---------- Vision cards ---------- */
.vision-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 22px; margin-top: 56px; }
.v-card {
  background: var(--paper); border: 1px solid var(--line); border-radius: 4px; padding: 36px 28px;
  transition: transform .4s, box-shadow .4s; position: relative; overflow: hidden;
}
.v-card:hover { transform: translateY(-6px); box-shadow: var(--shadow-card); }
.v-card .num { font-family: var(--serif); font-style: italic; font-size: 1.1rem; color: var(--gold-deep); }
.v-card h3 { font-size: 1.55rem; margin: 12px 0 10px; }
.v-card p { font-size: .92rem; color: var(--ink-soft); }
.v-card .ic { width:40px;height:40px;color:var(--wine);margin-bottom:6px; }
@media (max-width:880px){ .vision-grid{ grid-template-columns:repeat(2,1fr);} }
@media (max-width:520px){ .vision-grid{ grid-template-columns:1fr;} }

/* ---------- Showcase shared ---------- */
.showcase-head { max-width: 720px; }
.showcase-head.center { margin: 0 auto; }
.kicker-num { font-family: var(--serif); font-style: italic; font-size: 1.3rem; color: var(--gold-deep); display:block; margin-bottom: 6px; }
.feature-list { list-style:none; margin-top: 28px; display:grid; gap: 16px; }
.feature-list li { display:flex; gap:14px; align-items:flex-start; font-size:.96rem; color:var(--ink-soft); }
.feature-list .tick { flex:none; width:22px;height:22px;border-radius:50%;background:var(--poppy-tint);color:var(--wine);display:flex;align-items:center;justify-content:center;font-size:.7rem;margin-top:3px; }
.feature-list b { color: var(--ink); font-weight: 500; }

/* ---------- Browser mockup (website) ---------- */
.website { background: linear-gradient(180deg, var(--cream) 0%, var(--cream-2) 100%); }
.website .layout { display:grid; grid-template-columns: 1fr 1.35fr; gap: 56px; align-items:center; }
@media (max-width:980px){ .website .layout{ grid-template-columns:1fr; gap:44px; } }

.browser {
  background:#fff; border-radius:12px; box-shadow: var(--shadow-deep); overflow:hidden;
  border:1px solid rgba(0,0,0,.06);
}
.browser-bar { display:flex; align-items:center; gap:8px; padding:12px 16px; background:#ECE7DE; border-bottom:1px solid var(--line); }
.browser-bar .dot { width:11px;height:11px;border-radius:50%; }
.dot.r{background:#E5867E}.dot.y{background:#E6C15F}.dot.g{background:#9FC08A}
.browser-bar .url { flex:1; margin-left:14px; background:#fff; border-radius:20px; font-size:.7rem; color:var(--ink-faint); padding:6px 16px; letter-spacing:.04em; display:flex;align-items:center;gap:7px; }
.browser-bar .url svg{width:11px;height:11px;color:#86b06a;}
.site-tabs { display:flex; gap:4px; padding:10px 16px 0; background:#fff; }
.site-tab { font-size:.66rem; letter-spacing:.12em; text-transform:uppercase; padding:8px 14px; cursor:pointer; color:var(--ink-faint); border-radius:6px 6px 0 0; transition:all .25s; white-space:nowrap; }
.site-tab.active { color:var(--wine); background:var(--cream); font-weight:500; }
.site-pane { display:none; }
.site-pane.active { display:block; animation: fade .5s ease; }
@keyframes fade { from{opacity:0;transform:translateY(8px)} to{opacity:1;transform:none} }

/* mini site rendered inside browser */
.mini-nav { display:flex; align-items:center; justify-content:space-between; padding:14px 22px; border-bottom:1px solid var(--line); background:var(--paper); }
.mini-nav .mini-brand { font-family:var(--serif); font-size:1rem; letter-spacing:.02em; display:flex;align-items:center;gap:7px; }
.mini-nav .mini-brand svg{width:18px;height:18px;}
.mini-nav .mini-links { display:flex; gap:14px; font-size:.56rem; letter-spacing:.1em; text-transform:uppercase; color:var(--ink-soft); }
.mini-nav .mini-links .res { color:var(--wine); border:1px solid var(--wine); padding:4px 10px; border-radius:2px; }
.mini-hero { position:relative; height:240px; color:#fff; display:flex; flex-direction:column; justify-content:center; align-items:center; text-align:center; padding:0 30px; overflow:hidden; }
.mini-hero img { position:absolute; inset:0; width:100%;height:100%;object-fit:cover; }
.mini-hero::after{ content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(30,18,12,.3),rgba(30,18,12,.6));}
.mini-hero .mh-content{ position:relative; z-index:2; }
.mini-hero .mh-eye{ font-size:.56rem; letter-spacing:.3em; text-transform:uppercase; color:var(--poppy-soft); }
.mini-hero h4{ font-family:var(--serif); font-size:2rem; font-weight:500; margin:8px 0 14px; line-height:1.05; }
.mini-hero .mh-btn{ font-size:.58rem; letter-spacing:.18em; text-transform:uppercase; background:var(--gold); color:#2b2008; padding:9px 20px; display:inline-block; }
.mini-strip { display:grid; grid-template-columns:repeat(3,1fr); }
.mini-strip .ms-cell{ position:relative; height:120px; overflow:hidden; }
.mini-strip .ms-cell img{ width:100%;height:100%;object-fit:cover; transition:transform .6s; }
.mini-strip .ms-cell:hover img{ transform:scale(1.08); }
.mini-strip .ms-cell span{ position:absolute; inset:auto 0 0 0; padding:8px 10px; font-family:var(--serif); font-style:italic; font-size:.95rem; color:#fff; background:linear-gradient(transparent,rgba(20,12,8,.75)); }

/* menu pane */
.mini-menu { padding:26px 30px; background:var(--paper); }
.mini-menu .mm-cat{ font-size:.56rem; letter-spacing:.26em; text-transform:uppercase; color:var(--gold-deep); margin-bottom:12px; }
.mini-menu .mm-row{ display:flex; justify-content:space-between; gap:14px; padding:9px 0; border-bottom:1px dashed var(--line); }
.mini-menu .mm-row .mm-name{ font-family:var(--serif); font-size:1.05rem; }
.mini-menu .mm-row .mm-desc{ font-size:.62rem; color:var(--ink-faint); }
.mini-menu .mm-row .mm-price{ font-family:var(--serif); color:var(--wine); font-size:1rem; white-space:nowrap; }

/* reservations pane */
.mini-res{ display:grid; grid-template-columns:1fr 1fr; min-height:300px; }
.mini-res .mr-img{ position:relative; }
.mini-res .mr-img img{ position:absolute; inset:0; width:100%;height:100%;object-fit:cover; }
.mini-res .mr-form{ padding:26px 28px; background:var(--paper); }
.mini-res .mr-form h4{ font-family:var(--serif); font-size:1.5rem; }
.mini-res .mr-field{ background:#fff; border:1px solid var(--line); border-radius:3px; padding:9px 12px; font-size:.66rem; color:var(--ink-faint); margin-top:9px; display:flex;align-items:center;justify-content:space-between; }
.mini-res .mr-go{ background:var(--wine); color:#fff; text-align:center; padding:11px; font-size:.62rem; letter-spacing:.16em; text-transform:uppercase; margin-top:14px; }
.mini-res .mr-powered{ font-size:.54rem; color:var(--ink-faint); text-align:center; margin-top:8px; letter-spacing:.08em;}

/* events pane */
.mini-events{ position:relative; min-height:300px; color:#fff; display:flex; align-items:flex-end; }
.mini-events img{ position:absolute; inset:0; width:100%;height:100%;object-fit:cover;}
.mini-events::after{ content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(20,12,8,.78),rgba(20,12,8,.2));}
.mini-events .me-content{ position:relative; z-index:2; padding:30px; max-width:70%; }
.mini-events .me-content h4{ font-family:var(--serif); font-size:1.9rem; margin-bottom:8px;}
.mini-events .me-content p{ font-size:.7rem; color:rgba(255,255,255,.85); }
.mini-events .me-tags{ display:flex; gap:8px; margin-top:14px; flex-wrap:wrap;}
.mini-events .me-tags span{ font-size:.54rem; letter-spacing:.1em; text-transform:uppercase; border:1px solid rgba(255,255,255,.4); padding:5px 10px; border-radius:20px;}

/* ---------- Instagram ---------- */
.insta { background: var(--paper); }
.insta .layout { display:grid; grid-template-columns: 360px 1fr; gap: 64px; align-items:center; }
@media (max-width:980px){ .insta .layout{ grid-template-columns:1fr; gap:48px; } .phone{ margin:0 auto; } }

.phone {
  width: 330px; background:#fff; border-radius:42px; padding:12px;
  box-shadow: var(--shadow-deep); border:1px solid rgba(0,0,0,.07); position:relative;
}
.phone::before{ content:""; position:absolute; top:20px; left:50%; transform:translateX(-50%); width:120px; height:26px; background:#1c1612; border-radius:20px; z-index:5;}
.phone-screen{ background:#fff; border-radius:32px; overflow:hidden; }
.ig-top{ display:flex; align-items:center; justify-content:space-between; padding:26px 16px 10px; border-bottom:1px solid #f0eadf;}
.ig-top .ig-user{ display:flex; align-items:center; gap:8px; font-weight:500; font-size:.82rem;}
.ig-top .ig-user svg{ width:14px;height:14px;}
.ig-profile{ display:flex; align-items:center; gap:18px; padding:16px;}
.ig-avatar{ width:64px;height:64px;border-radius:50%; padding:3px; background:linear-gradient(45deg,var(--gold),var(--poppy),var(--wine)); flex:none;}
.ig-avatar div{ width:100%;height:100%;border-radius:50%; background:var(--paper); display:flex;align-items:center;justify-content:center; border:2px solid #fff;}
.ig-avatar svg{ width:30px;height:30px;}
.ig-stats{ display:flex; gap:18px; }
.ig-stats div{ text-align:center; }
.ig-stats b{ display:block; font-size:.92rem; }
.ig-stats span{ font-size:.62rem; color:var(--ink-faint); }
.ig-bio{ padding:0 16px 14px; font-size:.72rem; line-height:1.5; }
.ig-bio .h{ font-weight:600; }
.ig-bio .link{ color:#385898; }
.ig-actions{ display:flex; gap:8px; padding:0 16px 14px;}
.ig-actions div{ flex:1; text-align:center; font-size:.66rem; font-weight:500; padding:7px; border-radius:7px; background:#f0eadf;}
.ig-actions div.f{ background:var(--wine); color:#fff;}
.ig-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:2px; }
.ig-grid .ig-cell{ position:relative; aspect-ratio:1; overflow:hidden; }
.ig-grid .ig-cell img{ width:100%;height:100%;object-fit:cover; }
.ig-grid .ig-cell .rl{ position:absolute; top:5px; right:5px; width:13px;height:13px;color:#fff; filter:drop-shadow(0 1px 2px rgba(0,0,0,.4));}

.insta-strategy .pillar-row{ display:grid; grid-template-columns:repeat(2,1fr); gap:14px; margin-top:26px;}
.insta-strategy .p-item{ border:1px solid var(--line); border-radius:4px; padding:18px; background:var(--cream);}
.insta-strategy .p-item h4{ font-size:1.15rem; margin-bottom:4px;}
.insta-strategy .p-item p{ font-size:.82rem; color:var(--ink-soft);}
.insta-strategy .p-item .tag{ font-size:.6rem; letter-spacing:.14em; text-transform:uppercase; color:var(--gold-deep);}
.creator-note{ display:flex; gap:16px; align-items:center; margin-top:26px; padding:20px; background:var(--wine-deep); color:var(--cream); border-radius:4px;}
.creator-note svg{ width:34px;height:34px;flex:none;color:var(--poppy-soft);}
.creator-note p{ font-size:.86rem; color:rgba(255,255,255,.85);}
.creator-note b{ color:#fff; font-weight:500;}

/* ---------- Meta Ads ---------- */
.ads { background: linear-gradient(180deg, var(--cream-2), var(--cream)); }
.ads .layout{ display:grid; grid-template-columns: 1fr 1fr; gap:52px; align-items:center;}
@media (max-width:980px){ .ads .layout{ grid-template-columns:1fr; gap:48px;} }
.ad-stack{ display:flex; gap:24px; align-items:flex-start; justify-content:center; flex-wrap:wrap;}

/* FB feed ad */
.fb-ad{ width:330px; background:#fff; border-radius:10px; box-shadow:var(--shadow-card); overflow:hidden; font-size:.8rem;}
.fb-ad .fb-head{ display:flex; align-items:center; gap:9px; padding:12px;}
.fb-ad .fb-av{ width:38px;height:38px;border-radius:50%;background:linear-gradient(45deg,var(--gold),var(--poppy));flex:none; display:flex;align-items:center;justify-content:center;}
.fb-ad .fb-av svg{width:20px;height:20px;}
.fb-ad .fb-name{ font-weight:600; font-size:.82rem; line-height:1.1;}
.fb-ad .fb-spon{ font-size:.64rem; color:#8a8d91; display:flex;align-items:center;gap:4px;}
.fb-ad .fb-copy{ padding:0 12px 10px; font-size:.78rem; color:#1c1e21; line-height:1.45;}
.fb-ad .fb-img{ position:relative; }
.fb-ad .fb-img img{ width:100%; height:200px; object-fit:cover;}
.fb-ad .fb-link{ display:flex; align-items:center; justify-content:space-between; gap:10px; padding:12px; background:#f0f2f5;}
.fb-ad .fb-link .fl-t{ font-size:.6rem; letter-spacing:.06em; text-transform:uppercase; color:#65676b;}
.fb-ad .fb-link .fl-h{ font-weight:600; font-size:.84rem; color:#1c1e21; line-height:1.2;}
.fb-ad .fb-cta{ background:#e4e6eb; color:#1c1e21; font-weight:600; font-size:.74rem; padding:9px 16px; border-radius:6px; white-space:nowrap;}
.fb-ad .fb-meta{ display:flex; justify-content:space-between; padding:9px 12px; font-size:.66rem; color:#65676b; border-top:1px solid #eee;}

/* IG story ad */
.ig-story{ width:200px; aspect-ratio:9/19.5; border-radius:22px; overflow:hidden; position:relative; box-shadow:var(--shadow-card); color:#fff;}
.ig-story img{ position:absolute; inset:0; width:100%;height:100%;object-fit:cover;}
.ig-story::after{ content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,12,8,.45),transparent 30%,transparent 55%,rgba(20,12,8,.78));}
.ig-story .st-bars{ position:absolute; top:10px; left:10px; right:10px; display:flex; gap:4px; z-index:3;}
.ig-story .st-bars i{ flex:1; height:2px; background:rgba(255,255,255,.4); border-radius:2px;}
.ig-story .st-bars i.on{ background:#fff;}
.ig-story .st-user{ position:absolute; top:22px; left:12px; z-index:3; display:flex; align-items:center; gap:7px; font-size:.66rem; font-weight:500;}
.ig-story .st-user .av{ width:24px;height:24px;border-radius:50%;background:linear-gradient(45deg,var(--gold),var(--poppy)); border:1.5px solid #fff; display:flex;align-items:center;justify-content:center;}
.ig-story .st-user .av svg{ width:13px;height:13px;}
.ig-story .st-user .sp{ font-size:.55rem; opacity:.8; font-weight:400;}
.ig-story .st-content{ position:absolute; left:14px; right:14px; bottom:56px; z-index:3;}
.ig-story .st-content .st-eye{ font-size:.52rem; letter-spacing:.24em; text-transform:uppercase; color:var(--poppy-soft);}
.ig-story .st-content h4{ font-family:var(--serif); font-size:1.5rem; line-height:1.05; margin:5px 0;}
.ig-story .st-swipe{ position:absolute; left:14px; right:14px; bottom:14px; z-index:3; background:rgba(255,255,255,.95); color:#1c1612; text-align:center; font-size:.62rem; font-weight:600; letter-spacing:.12em; text-transform:uppercase; padding:9px; border-radius:8px;}
.ad-label{ font-size:.6rem; letter-spacing:.18em; text-transform:uppercase; color:var(--ink-faint); text-align:center; margin-top:12px;}

.ad-targets{ display:grid; grid-template-columns:repeat(2,1fr); gap:12px; margin-top:24px;}
.ad-targets .t{ background:var(--paper); border:1px solid var(--line); border-radius:4px; padding:14px 16px;}
.ad-targets .t .tt{ font-size:.6rem; letter-spacing:.14em; text-transform:uppercase; color:var(--gold-deep); margin-bottom:3px;}
.ad-targets .t .tv{ font-family:var(--serif); font-size:1.05rem;}
.ad-targets .t p{ font-size:.74rem; color:var(--ink-soft);}

.results-band{ display:grid; grid-template-columns:repeat(4,1fr); gap:20px; margin-top:54px; text-align:center;}
.results-band .r b{ font-family:var(--serif); font-size:clamp(2.2rem,4vw,3.2rem); color:var(--wine); display:block; line-height:1;}
.results-band .r span{ font-size:.7rem; letter-spacing:.16em; text-transform:uppercase; color:var(--ink-faint);}
.results-band .r .pre{ font-size:1.2rem; color:var(--gold-deep); }
@media (max-width:680px){ .results-band{ grid-template-columns:repeat(2,1fr); gap:34px;} .ad-targets{ grid-template-columns:1fr;} }

/* ---------- SEO + Blog ---------- */
.seo { background: var(--wine-deep); color: var(--cream); }
.seo .eyebrow{ color:var(--poppy-soft); }
.seo h2 em{ color: var(--poppy-soft); }
.seo .lead{ color: rgba(255,255,255,.82); }
.serp{ background:var(--paper); color:var(--ink); border-radius:8px; padding:22px 24px; box-shadow:var(--shadow-deep); margin-top:8px;}
.serp .serp-bar{ display:flex; align-items:center; gap:8px; background:#fff; border:1px solid var(--line); border-radius:30px; padding:9px 16px; font-size:.78rem; color:var(--ink-soft); margin-bottom:18px;}
.serp .serp-bar svg{ width:14px;height:14px; color:var(--ink-faint);}
.serp .serp-res{ padding:10px 0; border-bottom:1px solid var(--line);}
.serp .serp-res:last-child{ border-bottom:none;}
.serp .serp-res.ours{ background:linear-gradient(90deg,var(--poppy-tint),transparent); margin:0 -12px; padding:12px; border-radius:6px; border-bottom:none;}
.serp .sr-tag{ font-size:.56rem; letter-spacing:.12em; text-transform:uppercase; color:var(--gold-deep);}
.serp .sr-url{ font-size:.68rem; color:#3a7d3a; }
.serp .sr-title{ font-family:var(--serif); font-size:1.15rem; color:#1a0dab; }
.serp .ours .sr-title{ color:var(--wine); }
.serp .sr-desc{ font-size:.72rem; color:var(--ink-faint); }
.serp .sr-stars{ color:var(--gold); font-size:.7rem; letter-spacing:.04em;}

.seo-grid{ display:grid; grid-template-columns:1fr 1fr; gap:56px; align-items:center;}
@media (max-width:980px){ .seo-grid{ grid-template-columns:1fr; gap:44px;} }
.seo-points{ list-style:none; display:grid; gap:14px; margin-top:24px;}
.seo-points li{ display:flex; gap:12px; align-items:flex-start; font-size:.92rem; color:rgba(255,255,255,.82);}
.seo-points .tick{ flex:none; width:22px;height:22px;border-radius:50%;background:rgba(255,255,255,.12);color:var(--poppy-soft); display:flex;align-items:center;justify-content:center;font-size:.7rem; margin-top:2px;}
.seo-points b{ color:#fff; font-weight:500;}

/* blog */
.blog-showcase{ background: var(--cream); }
.blog-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:26px; margin-top:52px;}
@media (max-width:880px){ .blog-grid{ grid-template-columns:1fr;} }
.blog-card{ background:var(--paper); border:1px solid var(--line); border-radius:6px; overflow:hidden; transition:transform .4s,box-shadow .4s; cursor:pointer;}
.blog-card:hover{ transform:translateY(-6px); box-shadow:var(--shadow-card);}
.blog-card .bc-img{ height:200px; overflow:hidden; position:relative;}
.blog-card .bc-img img{ width:100%;height:100%;object-fit:cover; transition:transform .6s;}
.blog-card:hover .bc-img img{ transform:scale(1.06);}
.blog-card .bc-cat{ position:absolute; top:14px; left:14px; font-size:.58rem; letter-spacing:.14em; text-transform:uppercase; background:var(--cream); color:var(--wine); padding:6px 12px; border-radius:30px;}
.blog-card .bc-body{ padding:24px;}
.blog-card .bc-body h3{ font-size:1.45rem; line-height:1.15; margin-bottom:10px;}
.blog-card .bc-body p{ font-size:.86rem; color:var(--ink-soft);}
.blog-card .bc-meta{ display:flex; justify-content:space-between; align-items:center; margin-top:18px; font-size:.66rem; letter-spacing:.08em; text-transform:uppercase; color:var(--ink-faint);}
.blog-card .bc-meta .read{ color:var(--gold-deep); display:flex; align-items:center; gap:5px;}

/* ---------- Offer / Value stack ---------- */
.offer{ background: var(--paper); }
.offer-card{
  max-width: 860px; margin: 56px auto 0; background: var(--cream); border:1px solid var(--line);
  border-radius:8px; overflow:hidden; box-shadow:var(--shadow-card);
}
.offer-card .oc-top{ background:var(--wine-deep); color:var(--cream); text-align:center; padding:38px 30px 32px; position:relative;}
.offer-card .oc-top .eyebrow{ color:var(--poppy-soft);}
.offer-card .oc-top h3{ font-size:2.1rem; margin:8px 0 4px;}
.offer-card .oc-top p{ font-size:.9rem; color:rgba(255,255,255,.8);}
.stack{ padding: 14px 36px; }
.stack .s-row{ display:flex; justify-content:space-between; align-items:flex-start; gap:18px; padding:18px 0; border-bottom:1px solid var(--line);}
.stack .s-row:last-child{ border-bottom:none;}
.stack .s-row .s-name{ font-family:var(--serif); font-size:1.25rem;}
.stack .s-row .s-desc{ font-size:.78rem; color:var(--ink-soft);}
.stack .s-row .s-val{ font-family:var(--serif); font-size:1.15rem; color:var(--ink-faint); white-space:nowrap; text-align:right;}
.stack .s-row .s-val .strike{ text-decoration:line-through; opacity:.7; }
.offer-total{ background:var(--cream-2); padding:26px 36px; text-align:center; border-top:2px solid var(--gold);}
.offer-total .ot-line{ display:flex; justify-content:center; align-items:baseline; gap:14px; flex-wrap:wrap;}
.offer-total .ot-fair{ font-size:.9rem; color:var(--ink-faint); text-decoration:line-through;}
.offer-total .ot-now{ font-family:var(--serif); font-size:clamp(2.4rem,5vw,3.4rem); color:var(--wine); line-height:1;}
.offer-total .ot-sub{ font-size:.74rem; letter-spacing:.16em; text-transform:uppercase; color:var(--ink-faint); margin-top:8px;}
.offer-total .ot-mo{ font-size:1rem; color:var(--ink-soft);}
.offer-split{ display:grid; grid-template-columns:1fr 1fr; gap:1px; background:var(--line); margin:0;}
.offer-split .os{ background:var(--cream); padding:24px 30px; text-align:center;}
.offer-split .os .label{ font-size:.62rem; letter-spacing:.18em; text-transform:uppercase; color:var(--gold-deep);}
.offer-split .os .price{ font-family:var(--serif); font-size:2rem; color:var(--wine); line-height:1.1; margin:4px 0;}
.offer-split .os .price small{ font-size:.9rem; color:var(--ink-soft);}
.offer-split .os p{ font-size:.74rem; color:var(--ink-soft);}
@media (max-width:600px){ .offer-split{ grid-template-columns:1fr;} .stack{ padding:14px 22px;} }

.guarantee{ display:flex; gap:22px; align-items:center; max-width:760px; margin:40px auto 0; padding:28px 32px; border:1px solid var(--gold); border-radius:8px; background:linear-gradient(120deg,var(--poppy-tint),transparent);}
.guarantee .seal{ width:64px;height:64px;flex:none;color:var(--wine);}
.guarantee h4{ font-size:1.4rem; margin-bottom:4px;}
.guarantee p{ font-size:.88rem; color:var(--ink-soft);}

/* ---------- Final CTA ---------- */
.final{ position:relative; color:var(--cream); text-align:center; overflow:hidden;}
.final-bg{ position:absolute; inset:0; z-index:0;}
.final-bg img{ width:100%;height:100%;object-fit:cover;}
.final-bg::after{ content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(40,22,14,.78),rgba(81,24,38,.82));}
.final .wrap{ position:relative; z-index:2;}
.final h2{ font-size:clamp(2.4rem,5.5vw,4.4rem);}
.final h2 em{ color:var(--poppy-soft); font-style:italic;}
.final .lead{ color:rgba(255,255,255,.88); max-width:600px; margin:24px auto 38px;}
.final-ctas{ display:flex; gap:16px; justify-content:center; flex-wrap:wrap;}
.final .micro{ margin-top:30px; font-size:.72rem; letter-spacing:.18em; text-transform:uppercase; color:rgba(255,255,255,.6);}

/* ---------- Footer ---------- */
footer{ background:var(--ink); color:rgba(255,255,255,.6); padding:48px 0 36px; font-size:.78rem;}
footer .f-grid{ display:flex; justify-content:space-between; align-items:center; gap:24px; flex-wrap:wrap;}
footer .f-brand{ display:flex; align-items:center; gap:12px; color:#fff;}
footer .f-brand svg{ width:26px;height:26px;}
footer .f-brand b{ font-family:var(--serif); font-size:1.1rem; font-weight:500;}
footer .f-links{ display:flex; gap:22px;}
footer .f-links a:hover{ color:var(--poppy-soft);}
footer .f-fine{ margin-top:24px; padding-top:20px; border-top:1px solid rgba(255,255,255,.12); font-size:.7rem; color:rgba(255,255,255,.4); text-align:center;}

/* ---------- Reveal animation ---------- */
.reveal{ opacity:0; transform:translateY(28px); transition:opacity .9s cubic-bezier(.2,.7,.3,1), transform .9s cubic-bezier(.2,.7,.3,1);}
.reveal.in{ opacity:1; transform:none;}
.reveal.d1{ transition-delay:.08s;} .reveal.d2{ transition-delay:.16s;} .reveal.d3{ transition-delay:.24s;} .reveal.d4{ transition-delay:.32s;}

::selection{ background:var(--poppy); color:#fff;}
