/* =========================================================
   ONE DAY IN PARIS × iLAUNCHU — Private Creative Showcase (funnel)
   Recolored to the CLIENT'S brand palette (their site colors):
   cream/ivory #F1EFE7 · deep wine #32111B · tan-gold #A89879 · blush
   Newsreader serif + Montserrat — same bold funnel FORMAT, their colors.
   ========================================================= */

:root{
  --cream:    #F1EFE7;   /* their exact background */
  --paper:    #FAF8F2;
  --blush:    #F4ECE6;
  --ink:      #241A16;
  --ink-soft: #5C4F45;
  --faint:    #978777;
  --wine:     #32111B;   /* their deep maroon */
  --wine-2:   #4E1B29;
  --olive:    #34341D;   /* their dark band */
  --gold:     #9C7C45;   /* deepened from their #A89879 for contrast */
  --gold-soft:#A89879;   /* their exact tan-gold */
  --poppy:    #C2606A;   /* rose from their poppy logo */
  --line:     #E1D8C8;
  --line-2:   #D4C8B4;
  --shadow:   0 24px 60px -28px rgba(50,17,27,.30);
  --shadow-2: 0 40px 90px -36px rgba(50,17,27,.42);

  --disp:  "Newsreader", "Cormorant Garamond", Georgia, serif;
  --body:  "Montserrat", "Helvetica Neue", Arial, sans-serif;
  --serif: "Newsreader", "Cormorant Garamond", Georgia, serif;
  --maxw: 1180px;
}

*{ box-sizing:border-box; margin:0; padding:0; }
html{ scroll-behavior:smooth; -webkit-text-size-adjust:100%; }
body{
  font-family:var(--body); color:var(--ink); background:var(--cream);
  line-height:1.65; font-weight:400; overflow-x:hidden; -webkit-font-smoothing:antialiased;
  padding-bottom:60px; /* room for sticky bar */
}
img{ max-width:100%; display:block; }
a{ color:inherit; text-decoration:none; }

/* ---------- Type ---------- */
.disp{ font-family:var(--disp); font-weight:500; line-height:1.02; letter-spacing:-0.01em; }
h1,h2,h3{ font-family:var(--disp); font-weight:500; line-height:1.04; letter-spacing:-0.01em; }
.h-xl{ font-size:clamp(2.7rem,7vw,5.8rem); }
.h-lg{ font-size:clamp(2.1rem,5vw,3.9rem); }
.h-md{ font-size:clamp(1.6rem,3.4vw,2.5rem); }
.accent-red{ color:var(--poppy); font-style:italic; }
.accent-gold{ color:var(--gold); font-style:italic; }
.accent-wine{ color:var(--wine); font-style:italic; }
.accent-poppy{ color:var(--poppy); font-style:italic; }
em.script{ font-family:var(--serif); font-style:italic; font-weight:500; }

.eyebrow{ font-family:var(--body); font-weight:600; font-size:.68rem; letter-spacing:.30em; text-transform:uppercase; color:var(--gold); }
.eyebrow .dot{ color:var(--poppy); }
.lead{ font-size:clamp(1rem,1.5vw,1.18rem); color:var(--ink-soft); font-weight:400; }
.tiny-note{ font-size:.68rem; color:var(--faint); letter-spacing:.03em; }

/* ---------- Layout ---------- */
.wrap{ max-width:var(--maxw); margin:0 auto; padding:0 26px; }
.section-pad{ padding:clamp(64px,9vw,118px) 0; }
.center{ text-align:center; }
section{ position:relative; }
.rule{ height:1px; background:var(--line); border:0; }

/* dark wine band utility */
.band-wine{ background:var(--wine); color:var(--cream); }
.band-wine .lead{ color:rgba(255,255,255,.82); }
.band-wine .eyebrow{ color:var(--gold-soft); }
.band-wine .div-label span{ color:rgba(255,255,255,.6); }
.band-wine .div-label::before,.band-wine .div-label::after{ background:rgba(255,255,255,.18); }

/* ---------- Buttons ---------- */
.btn{
  display:inline-flex; align-items:center; gap:10px; cursor:pointer;
  font-family:var(--body); font-weight:600; text-transform:uppercase; letter-spacing:.14em;
  font-size:.74rem; padding:15px 30px; border-radius:3px; border:1.5px solid transparent;
  transition:transform .25s, box-shadow .25s, background .25s, color .25s;
}
.btn svg{ width:15px;height:15px; }
.btn-red{ background:var(--wine); color:var(--cream); box-shadow:0 12px 30px -14px rgba(50,17,27,.7); }
.btn-red:hover{ background:var(--wine-2); transform:translateY(-2px); }
.btn-gold{ background:var(--gold); color:#fff; }
.btn-gold:hover{ background:#856537; transform:translateY(-2px); }
.btn-ghost{ background:transparent; color:var(--ink); border-color:var(--line-2); }
.btn-ghost:hover{ border-color:var(--ink); transform:translateY(-2px); }
.band-wine .btn-ghost, .hero .btn-ghost{ color:var(--cream); border-color:rgba(255,255,255,.45); }
.band-wine .btn-ghost:hover, .hero .btn-ghost:hover{ background:var(--cream); color:var(--wine); border-color:var(--cream); }

/* ---------- Top bar ---------- */
.topbar{
  position:sticky; top:0; z-index:90; background:rgba(241,239,231,.86);
  backdrop-filter:blur(12px); -webkit-backdrop-filter:blur(12px);
  border-bottom:1px solid var(--line);
}
.topbar .bar-in{ display:flex; align-items:center; justify-content:space-between; padding:10px 26px; max-width:1320px; margin:0 auto; }
.tb-left{ display:flex; align-items:center; gap:16px; flex-wrap:wrap; }
.tb-brand{ display:flex; align-items:center; gap:9px; }
.tb-brand svg{ width:22px;height:22px; color:var(--poppy); }
.tb-brand b{ font-family:var(--disp); font-weight:600; letter-spacing:.01em; font-size:1.12rem; }
.tag-pill{ font-size:.58rem; letter-spacing:.18em; text-transform:uppercase; color:var(--faint);
  border:1px solid var(--line-2); padding:5px 11px; border-radius:30px; }
.tag-pill.live{ color:var(--poppy); border-color:rgba(194,96,106,.4); }
.tag-pill.live::before{ content:"● "; }
.tb-right{ display:flex; align-items:center; gap:18px; }
.tb-services{ font-size:.6rem; letter-spacing:.2em; text-transform:uppercase; color:var(--faint); }
@media (max-width:760px){ .tb-services,.tag-pill:not(.live){ display:none; } }

/* ---------- Hero (photo + wine overlay) ---------- */
.hero{ position:relative; overflow:hidden; color:var(--cream); padding:clamp(70px,11vw,130px) 0 clamp(56px,8vw,96px); }
.hero-bg{ position:absolute; inset:0; z-index:0; }
.hero-bg img{ width:100%;height:100%;object-fit:cover; }
.hero-bg::after{ content:""; position:absolute; inset:0;
  background:linear-gradient(180deg, rgba(50,17,27,.62), rgba(50,17,27,.72) 55%, rgba(36,12,18,.92)); }
.hero .wrap{ position:relative; z-index:2; }
.hero .lead{ color:rgba(255,255,255,.9); }
.hero .lead b{ color:#fff; }
.hero .showcase-flag{
  display:inline-flex; align-items:center; gap:9px; font-size:.64rem; letter-spacing:.24em;
  text-transform:uppercase; color:var(--gold-soft); border:1px solid rgba(168,152,121,.5);
  padding:7px 15px; border-radius:30px; margin-bottom:26px; background:rgba(168,152,121,.08);
}
.hero h1{ max-width:15ch; }
.hero .lead{ max-width:60ch; margin:24px 0 32px; font-size:1.18rem; }
.hero-ctas{ display:flex; gap:14px; flex-wrap:wrap; }
.hero-strip{ display:flex; gap:30px; flex-wrap:wrap; margin-top:44px; padding-top:26px; border-top:1px solid rgba(255,255,255,.16); }
.hero-strip .hs{ display:flex; flex-direction:column; }
.hero-strip .hs b{ font-family:var(--disp); font-weight:500; font-size:2rem; color:var(--gold-soft); line-height:1; }
.hero-strip .hs span{ font-size:.62rem; letter-spacing:.16em; text-transform:uppercase; color:rgba(255,255,255,.7); margin-top:6px; }

/* ---------- Section heading ---------- */
.sec-head{ max-width:760px; }
.sec-head.center{ margin:0 auto; }
.sec-head .eyebrow{ margin-bottom:14px; display:block; }
.sec-head .lead{ margin-top:16px; }
.knum{ font-family:var(--disp); font-style:italic; font-weight:500; font-size:1.5rem; color:var(--gold); }

/* ---------- Divider label ---------- */
.div-label{ display:flex; align-items:center; justify-content:center; gap:14px; margin-bottom:18px; }
.div-label span{ font-size:.64rem; letter-spacing:.26em; text-transform:uppercase; color:var(--faint); }
.div-label .n{ color:var(--poppy); font-family:var(--disp); font-style:italic; font-weight:600; font-size:1.1rem; }
.div-label::before,.div-label::after{ content:""; height:1px; width:44px; background:var(--line); }

/* ---------- Split ---------- */
.split{ display:grid; grid-template-columns:1fr 1.25fr; gap:54px; align-items:center; }
.split.rev{ grid-template-columns:1.25fr 1fr; }
@media (max-width:980px){ .split,.split.rev{ grid-template-columns:1fr; gap:40px; } }

.feature-list{ list-style:none; display:grid; gap:14px; margin-top:26px; }
.feature-list li{ display:flex; gap:13px; align-items:flex-start; font-size:.95rem; color:var(--ink-soft); }
.feature-list .tick{ flex:none; width:24px;height:24px;border-radius:5px;background:var(--blush);
  color:var(--poppy); display:flex;align-items:center;justify-content:center; font-size:.72rem; margin-top:2px; font-weight:700; }
.feature-list b{ color:var(--ink); font-weight:600; }
.band-wine .feature-list li{ color:rgba(255,255,255,.82); }
.band-wine .feature-list b{ color:#fff; }
.band-wine .feature-list .tick{ background:rgba(255,255,255,.12); color:var(--gold-soft); }

/* ---------- browser mockup ---------- */
.web-frame{ display:block; position:relative; }
.browser{ background:#fff; border-radius:12px; box-shadow:var(--shadow-2); overflow:hidden; color:#2b2420; border:1px solid var(--line); }
.browser-bar{ display:flex; align-items:center; gap:8px; padding:11px 15px; background:#efeae0; 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:12px; background:#fff; border-radius:20px; font-size:.7rem; color:#7a6f63; padding:6px 15px; display:flex; align-items:center; gap:7px; }
.browser-bar .url svg{ width:11px;height:11px; color:#7FB069; }
.browser-bar .open-btn{ font-size:.6rem; letter-spacing:.12em; text-transform:uppercase; font-weight:600; color:#fff; background:var(--wine); padding:6px 12px; border-radius:20px; white-space:nowrap; }
.browser-bar .open-btn:hover{ background:var(--wine-2); }
.site-tabs{ display:flex; gap:3px; padding:9px 14px 0; background:#fff; }
.site-tab{ font-size:.64rem; letter-spacing:.12em; text-transform:uppercase; padding:8px 13px; cursor:pointer; color:#9a8d7e; border-radius:6px 6px 0 0; white-space:nowrap; transition:.2s; }
.site-tab.active{ color:var(--wine); background:var(--cream); font-weight:600; }
.site-pane{ display:none; } .site-pane.active{ display:block; animation:fade .45s ease; }
@keyframes fade{ from{opacity:0;transform:translateY(8px)} to{opacity:1;transform:none} }
.mini-nav{ display:flex; align-items:center; justify-content:space-between; padding:13px 20px; border-bottom:1px solid #ece2d0; background:#FFFDF8; }
.mini-nav .mb{ font-family:var(--serif); font-size:1.05rem; display:flex; align-items:center; gap:7px; }
.mini-nav .mb svg{ width:17px;height:17px; color:var(--poppy); }
.mini-nav .ml{ display:flex; gap:13px; font-size:.55rem; letter-spacing:.1em; text-transform:uppercase; color:#5a4f46; }
.mini-nav .ml .res{ color:var(--wine); border:1px solid var(--wine); padding:4px 9px; border-radius:2px; }
.mini-hero{ position:relative; height:230px; color:#fff; display:flex; align-items:center; justify-content:center; text-align:center; 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(50,17,27,.25),rgba(50,17,27,.6)); }
.mini-hero .mc{ position:relative; z-index:2; }
.mini-hero .me{ font-size:.55rem; letter-spacing:.3em; text-transform:uppercase; color:var(--gold-soft); }
.mini-hero h4{ font-family:var(--serif); font-weight:500; font-size:2rem; margin:7px 0 13px; line-height:1.04; }
.mini-hero .mbtn{ font-size:.58rem; letter-spacing:.18em; text-transform:uppercase; background:var(--gold); color:#fff; padding:9px 19px; display:inline-block; font-weight:600; }
.mini-strip{ display:grid; grid-template-columns:repeat(3,1fr); }
.mini-strip .c{ position:relative; height:115px; overflow:hidden; }
.mini-strip .c img{ width:100%;height:100%;object-fit:cover; transition:transform .6s; }
.mini-strip .c:hover img{ transform:scale(1.08); }
.mini-strip .c span{ position:absolute; inset:auto 0 0 0; padding:8px 10px; font-family:var(--serif); font-style:italic; font-size:.92rem; color:#fff; background:linear-gradient(transparent,rgba(50,17,27,.78)); }
.mini-menu{ padding:24px 28px; background:#FFFDF8; }
.mini-menu .cat{ font-size:.55rem; letter-spacing:.26em; text-transform:uppercase; color:var(--gold); margin-bottom:11px; }
.mini-menu .row{ display:flex; justify-content:space-between; gap:14px; padding:8px 0; border-bottom:1px dashed #e7dcc9; }
.mini-menu .row .n{ font-family:var(--serif); font-size:1.1rem; }
.mini-menu .row .d{ font-size:.62rem; color:#8b7f73; }
.mini-menu .row .p{ font-family:var(--serif); color:var(--wine); font-size:1.05rem; }
.mini-res{ display:grid; grid-template-columns:1fr 1fr; min-height:290px; }
.mini-res .img{ position:relative; } .mini-res .img img{ position:absolute; inset:0; width:100%;height:100%;object-fit:cover; }
.mini-res .form{ padding:24px 26px; background:#FFFDF8; }
.mini-res .form h4{ font-family:var(--serif); font-weight:500; font-size:1.6rem; }
.mini-res .fld{ background:#fff; border:1px solid #e7dcc9; border-radius:3px; padding:9px 12px; font-size:.66rem; color:#8b7f73; margin-top:9px; display:flex; justify-content:space-between; }
.mini-res .go{ background:var(--wine); color:#fff; text-align:center; padding:11px; font-size:.62rem; letter-spacing:.16em; text-transform:uppercase; margin-top:13px; }
.mini-res .pw{ font-size:.54rem; color:#8b7f73; text-align:center; margin-top:8px; }
.mini-events{ position:relative; min-height:290px; 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(50,17,27,.82),rgba(50,17,27,.2)); }
.mini-events .mc{ position:relative; z-index:2; padding:28px; max-width:74%; }
.mini-events .mc h4{ font-family:var(--serif); font-weight:500; font-size:1.9rem; margin-bottom:7px; }
.mini-events .mc p{ font-size:.7rem; color:rgba(255,255,255,.85); }
.mini-events .tags{ display:flex; gap:7px; margin-top:12px; flex-wrap:wrap; }
.mini-events .tags span{ font-size:.52rem; letter-spacing:.1em; text-transform:uppercase; border:1px solid rgba(255,255,255,.4); padding:5px 9px; border-radius:20px; }
.mock-cap{ font-size:.62rem; letter-spacing:.18em; text-transform:uppercase; color:var(--faint); text-align:center; margin-top:12px; }
.view-site-btn{ display:inline-flex; margin-top:16px; }

/* ---------- Instagram ---------- */
.phone{ width:320px; background:#241813; border-radius:42px; padding:11px; box-shadow:var(--shadow-2); border:1px solid rgba(0,0,0,.1); position:relative; margin:0 auto; }
.phone::before{ content:""; position:absolute; top:19px; left:50%; transform:translateX(-50%); width:110px; height:24px; background:#120b08; border-radius:20px; z-index:5; }
.phone-screen{ background:#fff; color:#1a1a1a; border-radius:32px; overflow:hidden; }
.ig-top{ display:flex; align-items:center; justify-content:space-between; padding:25px 15px 9px; border-bottom:1px solid #efe9df; }
.ig-top .u{ display:flex; align-items:center; gap:7px; font-weight:600; font-size:.82rem; }
.ig-top .u svg{ width:13px;height:13px; }
.ig-profile{ display:flex; align-items:center; gap:16px; padding:15px; }
.ig-av{ width:62px;height:62px;border-radius:50%; padding:3px; background:linear-gradient(45deg,var(--gold),var(--poppy),var(--wine)); flex:none; }
.ig-av div{ width:100%;height:100%;border-radius:50%;background:var(--cream);display:flex;align-items:center;justify-content:center;border:2px solid #fff; color:var(--poppy); }
.ig-av svg{ width:28px;height:28px; }
.ig-stats{ display:flex; gap:16px; }
.ig-stats div{ text-align:center; }
.ig-stats b{ display:block; font-size:.9rem; }
.ig-stats span{ font-size:.6rem; color:#8a8a8a; }
.ig-bio{ padding:0 15px 12px; font-size:.71rem; line-height:1.5; }
.ig-bio .h{ font-weight:700; }
.ig-bio .lk{ color:#385898; }
.ig-actions{ display:flex; gap:7px; padding:0 15px 13px; }
.ig-actions div{ flex:1; text-align:center; font-size:.66rem; font-weight:600; padding:7px; border-radius:7px; background:#efe9df; }
.ig-actions div.f{ background:var(--wine); color:#fff; }
.ig-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:2px; }
.ig-grid .cell{ position:relative; aspect-ratio:1; overflow:hidden; }
.ig-grid .cell img{ width:100%;height:100%;object-fit:cover; }
.ig-grid .cell .rl{ position:absolute; top:5px; right:5px; width:13px;height:13px; color:#fff; filter:drop-shadow(0 1px 2px rgba(0,0,0,.5)); }

.pillar-row{ display:grid; grid-template-columns:repeat(2,1fr); gap:12px; margin-top:24px; }
.p-item{ border:1px solid var(--line); border-radius:7px; padding:16px; background:var(--paper); }
.p-item h4{ font-family:var(--serif); font-weight:500; font-size:1.3rem; }
.p-item p{ font-size:.8rem; color:var(--ink-soft); }
.p-item .tag{ font-size:.58rem; letter-spacing:.14em; text-transform:uppercase; color:var(--gold); }
.callout{ display:flex; gap:15px; align-items:center; margin-top:22px; padding:18px 20px; background:var(--wine); border-radius:8px; }
.callout svg{ width:30px;height:30px; flex:none; color:var(--gold-soft); }
.callout p{ font-size:.85rem; color:rgba(255,255,255,.85); }
.callout b{ color:#fff; }

/* ---------- Ads ---------- */
.cards-3{ display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
@media (max-width:820px){ .cards-3{ grid-template-columns:1fr; } }
.target-card{ background:var(--paper); border:1px solid var(--line); border-radius:10px; padding:22px; }
.target-card .tt{ font-size:.6rem; letter-spacing:.16em; text-transform:uppercase; color:var(--gold); margin-bottom:5px; }
.target-card .tv{ font-family:var(--serif); font-weight:500; font-size:1.5rem; }
.target-card p{ font-size:.8rem; color:var(--ink-soft); margin-top:5px; }

.ad-row{ display:grid; grid-template-columns:repeat(3,1fr); gap:18px; margin-top:36px; align-items:start; }
@media (max-width:880px){ .ad-row{ grid-template-columns:1fr; max-width:360px; margin-left:auto; margin-right:auto; } }
.fb-ad{ background:#fff; color:#1c1e21; border-radius:10px; box-shadow:var(--shadow); overflow:hidden; border:1px solid var(--line); }
.fb-ad .h{ display:flex; align-items:center; gap:9px; padding:11px 12px; }
.fb-ad .av{ width:36px;height:36px;border-radius:50%;background:linear-gradient(45deg,var(--gold),var(--poppy));flex:none;display:flex;align-items:center;justify-content:center; }
.fb-ad .av svg{ width:19px;height:19px;color:#fff; }
.fb-ad .nm{ font-weight:700; font-size:.8rem; line-height:1.1; }
.fb-ad .sp{ font-size:.62rem; color:#8a8d91; }
.fb-ad .cp{ padding:0 12px 9px; font-size:.76rem; line-height:1.45; }
.fb-ad .im img{ width:100%; height:170px; object-fit:cover; }
.fb-ad .lk{ display:flex; align-items:center; justify-content:space-between; gap:9px; padding:11px 12px; background:#f0f2f5; }
.fb-ad .lk .t{ font-size:.58rem; letter-spacing:.05em; text-transform:uppercase; color:#65676b; }
.fb-ad .lk .hh{ font-weight:700; font-size:.82rem; line-height:1.2; }
.fb-ad .cta{ background:#e4e6eb; font-weight:700; font-size:.72rem; padding:9px 14px; border-radius:6px; white-space:nowrap; }
.fb-ad .mt{ display:flex; justify-content:space-between; padding:8px 12px; font-size:.64rem; color:#65676b; border-top:1px solid #eee; }

.ig-story{ width:100%; max-width:230px; aspect-ratio:9/18; border-radius:20px; overflow:hidden; position:relative; box-shadow:var(--shadow); color:#fff; margin:0 auto; }
.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(50,17,27,.4),transparent 28%,transparent 52%,rgba(50,17,27,.82)); }
.ig-story .bars{ position:absolute; top:10px; left:10px; right:10px; display:flex; gap:4px; z-index:3; }
.ig-story .bars i{ flex:1; height:2px; background:rgba(255,255,255,.4); border-radius:2px; }
.ig-story .bars i.on{ background:#fff; }
.ig-story .su{ position:absolute; top:21px; left:11px; z-index:3; display:flex; align-items:center; gap:6px; font-size:.64rem; font-weight:600; }
.ig-story .su .a{ width:22px;height:22px;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 .su .a svg{ width:12px;height:12px;color:#fff; }
.ig-story .su .s{ font-size:.54rem; opacity:.8; font-weight:400; }
.ig-story .ct{ position:absolute; left:13px; right:13px; bottom:52px; z-index:3; }
.ig-story .ct .e{ font-size:.5rem; letter-spacing:.24em; text-transform:uppercase; color:var(--gold-soft); }
.ig-story .ct h4{ font-family:var(--serif); font-weight:500; font-size:1.5rem; line-height:1.04; margin:5px 0; }
.ig-story .sw{ position:absolute; left:13px; right:13px; bottom:13px; z-index:3; background:rgba(255,255,255,.95); color:var(--wine); text-align:center; font-size:.6rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase; padding:9px; border-radius:8px; }

/* email mock */
.email-mock{ background:#fff; color:#222; border-radius:10px; box-shadow:var(--shadow); overflow:hidden; border:1px solid var(--line); }
.email-mock .eh{ display:flex; align-items:center; gap:10px; padding:13px 16px; border-bottom:1px solid #eee; }
.email-mock .eh .ea{ width:34px;height:34px;border-radius:50%;background:linear-gradient(45deg,var(--gold),var(--poppy));flex:none;display:flex;align-items:center;justify-content:center; }
.email-mock .eh .ea svg{ width:18px;height:18px;color:#fff; }
.email-mock .eh .ef b{ display:block; font-size:.8rem; }
.email-mock .eh .ef span{ font-size:.66rem; color:#888; }
.email-mock .ebody img{ width:100%; height:120px; object-fit:cover; }
.email-mock .ebody .et{ padding:16px; }
.email-mock .ebody .et h5{ font-family:var(--serif); font-weight:500; font-size:1.4rem; margin-bottom:6px; }
.email-mock .ebody .et p{ font-size:.76rem; color:#555; line-height:1.5; }
.email-mock .ebody .et .eb{ display:inline-block; margin-top:12px; background:var(--wine); color:#fff; font-size:.66rem; letter-spacing:.1em; text-transform:uppercase; padding:9px 16px; border-radius:4px; font-weight:600; }

/* results band */
.results{ display:grid; grid-template-columns:repeat(4,1fr); gap:18px; margin-top:48px; text-align:center; }
.results .r b{ font-family:var(--disp); font-weight:500; font-size:clamp(2.2rem,4.4vw,3.4rem); color:var(--wine); display:block; line-height:1; }
.results .r b .s{ color:var(--gold); }
.results .r span{ font-size:.64rem; letter-spacing:.14em; text-transform:uppercase; color:var(--faint); }
@media (max-width:640px){ .results{ grid-template-columns:repeat(2,1fr); gap:30px; } }

/* SERP */
.serp{ background:#fff; color:#222; border-radius:10px; padding:20px 22px; box-shadow:var(--shadow-2); border:1px solid var(--line); }
.serp .sb{ display:flex; align-items:center; gap:8px; background:#fff; border:1px solid #e1e1e1; border-radius:30px; padding:9px 16px; font-size:.78rem; color:#555; margin-bottom:16px; box-shadow:0 1px 3px rgba(0,0,0,.06); }
.serp .sb svg{ width:14px;height:14px; color:#999; }
.serp .res{ padding:10px 0; border-bottom:1px solid #eee; }
.serp .res:last-child{ border-bottom:none; }
.serp .res.ours{ background:linear-gradient(90deg,var(--blush),transparent); margin:0 -10px; padding:12px 10px; border-radius:7px; border:none; }
.serp .tg{ font-size:.55rem; letter-spacing:.1em; text-transform:uppercase; color:var(--gold); }
.serp .ur{ font-size:.68rem; color:#3a7d3a; }
.serp .ti{ font-family:var(--serif); font-size:1.18rem; color:#1a0dab; }
.serp .ours .ti{ color:var(--wine); }
.serp .de{ font-size:.72rem; color:#777; }
.serp .st{ color:#d6a531; font-size:.7rem; }

/* ---------- Offer (dark wine band) ---------- */
.offer{ background:var(--wine); color:var(--cream); }
.offer .eyebrow{ color:var(--gold-soft); }
.offer .lead{ color:rgba(255,255,255,.82); }
.stack-card{ max-width:860px; margin:0 auto; background:rgba(255,255,255,.04); border:1px solid rgba(255,255,255,.14); border-radius:14px; overflow:hidden; box-shadow:var(--shadow-2); }
.stack-row{ display:flex; justify-content:space-between; gap:18px; align-items:flex-start; padding:18px 30px; border-bottom:1px solid rgba(255,255,255,.12); }
.stack-row .nm{ font-family:var(--serif); font-weight:500; font-size:1.4rem; color:#fff; }
.stack-row .ds{ font-size:.76rem; color:rgba(255,255,255,.6); font-family:var(--body); font-weight:400; }
.stack-row .vl{ font-family:var(--serif); font-weight:500; font-size:1.3rem; color:rgba(255,255,255,.85); white-space:nowrap; }
.stack-total{ display:flex; justify-content:space-between; align-items:center; padding:20px 30px; background:rgba(0,0,0,.22); }
.stack-total .lbl{ font-family:var(--body); font-weight:700; text-transform:uppercase; letter-spacing:.16em; font-size:.78rem; color:var(--gold-soft); }
.stack-total .amt{ font-family:var(--serif); font-weight:600; font-size:1.9rem; color:#fff; }
.your-price{ background:linear-gradient(120deg, var(--gold), #856537); padding:24px 30px; display:flex; justify-content:space-between; align-items:center; gap:18px; flex-wrap:wrap; }
.your-price .l span{ font-family:var(--body); font-weight:700; font-size:.66rem; letter-spacing:.2em; text-transform:uppercase; color:rgba(255,255,255,.85); }
.your-price .l b{ display:block; font-family:var(--serif); font-weight:600; font-size:clamp(2.1rem,4.5vw,3rem); color:#fff; line-height:1.05; }
.your-price .l b small{ font-size:1.1rem; }
.your-price .btn-gold{ background:#fff; color:var(--wine); }
.your-price .btn-gold:hover{ background:var(--cream); color:var(--wine); }

.offer-boxes{ display:grid; grid-template-columns:1fr 1fr; gap:20px; max-width:860px; margin:24px auto 0; }
@media (max-width:680px){ .offer-boxes{ grid-template-columns:1fr; } }
.obox{ background:rgba(255,255,255,.05); border:1px solid rgba(255,255,255,.14); border-radius:12px; padding:26px; text-align:center; }
.obox.hot{ border-color:var(--gold-soft); box-shadow:0 0 0 1px rgba(168,152,121,.4) inset; }
.obox .ol{ font-size:.62rem; letter-spacing:.18em; text-transform:uppercase; color:var(--gold-soft); }
.obox .op{ font-family:var(--serif); font-weight:600; font-size:2.6rem; color:#fff; line-height:1.05; margin:6px 0; }
.obox .op small{ font-size:1.1rem; color:rgba(255,255,255,.7); }
.obox p{ font-size:.8rem; color:rgba(255,255,255,.7); margin-bottom:16px; }
.obox .btn-red{ background:var(--gold); color:#fff; }
.obox .btn-red:hover{ background:#856537; }
.obox .btn-ghost{ color:#fff; border-color:rgba(255,255,255,.4); }
.obox .btn-ghost:hover{ background:#fff; color:var(--wine); }
.obox .btn{ width:100%; justify-content:center; }
.guar{ display:inline-flex; gap:9px; align-items:center; margin-top:14px; font-size:.72rem; color:var(--gold-soft); letter-spacing:.04em; }
.guar svg{ width:18px;height:18px; }
.offer .tiny-note{ color:rgba(255,255,255,.55); }

/* ---------- Game plan ---------- */
.plan-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:18px; margin-top:44px; }
@media (max-width:820px){ .plan-grid{ grid-template-columns:1fr; } }
.plan-card{ background:var(--paper); border:1px solid var(--line); border-radius:12px; padding:28px; position:relative; overflow:hidden; }
.plan-card .pn{ font-family:var(--disp); font-weight:600; font-size:3.4rem; color:var(--blush); position:absolute; top:6px; right:18px; line-height:1; }
.plan-card .pm{ font-size:.62rem; letter-spacing:.18em; text-transform:uppercase; color:var(--poppy); }
.plan-card h4{ font-family:var(--serif); font-weight:500; font-size:1.6rem; margin:6px 0 10px; }
.plan-card p{ font-size:.86rem; color:var(--ink-soft); }

/* ---------- Final ---------- */
.final{ position:relative; overflow:hidden; text-align:center; color:var(--cream); }
.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(50,17,27,.86),rgba(36,12,18,.92)); }
.final .wrap{ position:relative; z-index:2; }
.final .eyebrow{ color:var(--gold-soft); }
.final .lead{ color:rgba(255,255,255,.88); max-width:600px; margin:20px auto 32px; }

/* ---------- Footer ---------- */
footer{ background:var(--wine); color:rgba(255,255,255,.62); padding:40px 0 30px; font-size:.8rem; }
footer .fg{ display:flex; justify-content:space-between; align-items:center; gap:20px; flex-wrap:wrap; }
footer .fb{ display:flex; align-items:center; gap:10px; color:#fff; }
footer .fb svg{ width:22px;height:22px; color:var(--gold-soft); }
footer .fb b{ font-family:var(--disp); font-weight:600; }
footer .fl{ display:flex; gap:18px; }
footer .fl a:hover{ color:var(--gold-soft); }
footer .fine{ margin-top:20px; padding-top:18px; border-top:1px solid rgba(255,255,255,.14); font-size:.68rem; color:rgba(255,255,255,.45); text-align:center; }

/* ---------- Sticky bottom bar ---------- */
.stickybar{ position:fixed; bottom:0; left:0; right:0; z-index:95; background:var(--wine);
  border-top:1px solid rgba(255,255,255,.14); }
.stickybar .sb-in{ display:flex; align-items:center; justify-content:space-between; gap:14px; padding:10px 26px; max-width:1320px; margin:0 auto; }
.stickybar .sb-l{ display:flex; align-items:center; gap:14px; font-size:.82rem; color:var(--cream); }
.stickybar .sb-l .x{ font-family:var(--disp); font-weight:500; font-size:1.05rem; }
.stickybar .sb-l .pr{ color:var(--gold-soft); font-family:var(--serif); font-weight:600; }
.stickybar .sb-l .free{ font-size:.58rem; letter-spacing:.12em; text-transform:uppercase; color:rgba(255,255,255,.6); border-left:1px solid rgba(255,255,255,.2); padding-left:14px; }
.stickybar .btn-red{ background:var(--gold); color:#fff; padding:11px 22px; font-size:.72rem; }
.stickybar .btn-red:hover{ background:#856537; }
@media (max-width:620px){ .stickybar .sb-l .x,.stickybar .sb-l .free{ display:none; } }

/* ---------- Reveal ---------- */
.reveal{ opacity:0; transform:translateY(26px); transition:opacity .8s cubic-bezier(.2,.7,.3,1), transform .8s cubic-bezier(.2,.7,.3,1); }
.reveal.in{ opacity:1; transform:none; }
.d1{ transition-delay:.08s;} .d2{ transition-delay:.16s;} .d3{ transition-delay:.24s;}
::selection{ background:var(--poppy); color:#fff; }

/* ===== Personal note hero (proposal) — David Medina ===== */
.note-hero{ background:radial-gradient(120% 85% at 88% 0%, rgba(168,152,121,.20), transparent 55%), radial-gradient(90% 70% at 0% 100%, rgba(194,96,106,.10), transparent 55%), var(--cream); padding:clamp(92px,12vw,150px) 0 clamp(60px,8vw,96px); }
.note-hero .nh-grid{ display:grid; grid-template-columns:1.08fr .92fr; gap:58px; align-items:center; }
.note-hero .showcase-flag{ display:inline-flex; align-items:center; gap:9px; font-size:.62rem; letter-spacing:.22em; text-transform:uppercase; color:#856537; border:1px solid rgba(168,152,121,.55); padding:7px 15px; border-radius:30px; background:rgba(168,152,121,.1); margin-bottom:24px; }
.note-hero h1{ max-width:15ch; }
.note-hero h1 em.script{ font-family:var(--serif); font-style:italic; color:var(--poppy); }
.note-hero .lead{ max-width:54ch; margin:22px 0 30px; font-size:1.16rem; }
.note-hero .hero-ctas{ display:flex; gap:14px; flex-wrap:wrap; }
.note-hero .nh-sign{ margin-top:26px; font-family:var(--serif); font-style:italic; font-size:1.3rem; color:var(--wine); }
.note-hero .nh-sign b{ font-style:normal; font-weight:600; }
.note-hero .nh-sign span{ display:block; font-family:var(--body); font-style:normal; font-size:.62rem; letter-spacing:.2em; text-transform:uppercase; color:var(--faint); margin-top:5px; }

.nh-photo{ display:flex; flex-direction:column; align-items:center; gap:22px; }
.nh-video{ width:100%; max-width:380px; }
.nh-video-label{ display:flex; align-items:center; justify-content:center; gap:9px; font-family:var(--serif); font-style:italic; color:var(--wine); font-size:1.02rem; margin-bottom:10px; }
.nh-video-label svg{ width:18px; height:18px; color:var(--poppy); }
.nh-video-frame{ position:relative; width:100%; aspect-ratio:16/9; border-radius:10px; overflow:hidden; box-shadow:var(--shadow-2); border:1px solid var(--line-2); background:#000; }
.nh-video-frame iframe{ position:absolute; inset:0; width:100%; height:100%; border:0; }
.nh-card{ position:relative; width:100%; max-width:380px; aspect-ratio:4/5; border-radius:10px; overflow:hidden; box-shadow:var(--shadow-2); border:1px solid var(--line-2); background:linear-gradient(160deg,var(--blush),var(--cream)); }
.nh-card img{ width:100%; height:100%; object-fit:cover; }
.nh-card .nh-tag{ position:absolute; left:0; right:0; bottom:0; z-index:2; background:linear-gradient(transparent,rgba(50,17,27,.86)); color:var(--cream); font-size:.64rem; letter-spacing:.16em; text-transform:uppercase; text-align:center; padding:34px 16px 14px; }
.nh-card .nh-name{ position:absolute; left:16px; bottom:42px; z-index:2; color:#fff; font-family:var(--serif); font-size:1.4rem; }
.nh-card::after{ content:""; position:absolute; inset:0; border:6px solid rgba(255,255,255,.5); border-radius:10px; pointer-events:none; }
/* placeholder state (until David's photo is added) */
.nh-card.placeholder{ display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; gap:10px; color:var(--wine); padding:30px; }
.nh-card.placeholder svg{ width:64px; height:64px; opacity:.5; }
.nh-card.placeholder b{ font-family:var(--serif); font-size:1.5rem; }
.nh-card.placeholder small{ font-size:.72rem; color:var(--faint); letter-spacing:.04em; max-width:22ch; }
@media(max-width:920px){ .note-hero .nh-grid{ grid-template-columns:1fr; gap:38px; } .note-hero{ text-align:center; } .note-hero .showcase-flag{ } .note-hero h1,.note-hero .lead{ max-width:none; } .note-hero .hero-ctas{ justify-content:center; } .nh-photo{ order:-1; } }
