:root{
    --ink:#15211C; --muted:#566460;
    --emerald:#0E7A66; --emerald-deep:#0A5A4C; --emerald-2:#073B33; --emerald-soft:#DCF0EA;
    --ivory:#F8F5EE; --ivory-deep:#EFEADF; --card:#FFFFFF;
    --amber:#F5A300; --amber-deep:#C97F00; --amber-soft:#FDEBC4; --amber-glow:rgba(245,163,0,.55);
    --green-ok:#1E9E5E; --green-soft:#D8F0E1;
    --coral:#E64A2B; --coral-soft:#FBE2DB;
    --line:#E6E0D3;
  }
  *{box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{margin:0;background:var(--ivory);color:var(--ink);
    font-family:'Mulish',system-ui,sans-serif;font-size:18px;line-height:1.65;-webkit-font-smoothing:antialiased;}
  .wrap{max-width:1080px;margin:0 auto;padding:0 24px;}
  .narrow{max-width:680px;}
  h1,h2,h3,.serif{font-family:'Fraunces',Georgia,serif;letter-spacing:-.005em;font-weight:600;}
  section{padding:84px 0;}
  @media(max-width:640px){
    section{padding:58px 0;} body{font-size:17px;}
    .btn{font-size:18px;padding:18px 24px;gap:8px;}
    .btn .ar{font-size:19px;}
    .pricetag{gap:14px;margin-bottom:22px;}
    .pricetag .old{font-size:21px;}
    .pricetag .now{font-size:48px;}
  }
  p{color:var(--muted);}

  .eyebrow{font-family:'Mulish';font-weight:800;letter-spacing:.18em;text-transform:uppercase;
    font-size:12px;margin:0 0 18px;display:inline-flex;align-items:center;gap:12px;color:var(--amber-deep);}
  .eyebrow::before,.eyebrow::after{content:"";width:26px;height:2px;background:var(--amber);display:inline-block;}
  .eyebrow.one::after{display:none;}

  /* ---- button (destacado) ---- */
  .btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;
    background:linear-gradient(180deg,#FFB422,var(--amber));color:#3a2700;
    font-family:'Mulish';font-weight:800;font-size:20px;text-decoration:none;border:none;cursor:pointer;
    padding:20px 36px;border-radius:14px;letter-spacing:.01em;line-height:1.2;
    box-shadow:0 12px 34px -6px var(--amber-glow), inset 0 1px 0 rgba(255,255,255,.5);
    transition:transform .15s ease, box-shadow .15s ease, filter .15s ease;
    width:100%;max-width:440px;position:relative;}
  .btn .lbl{text-align:center;}
  .btn:hover,.btn:focus-visible{transform:translateY(-3px);filter:brightness(1.04);
    box-shadow:0 20px 46px -8px var(--amber-glow);outline:none;}
  .btn:focus-visible{outline:3px solid #fff;outline-offset:3px;}
  .btn .ar{font-size:22px;line-height:1;transition:transform .15s ease;}
  .btn:hover .ar{transform:translateX(4px);}
  .btn.pulse{animation:glow 2.4s ease-in-out infinite;}
  @keyframes glow{0%,100%{box-shadow:0 12px 34px -6px var(--amber-glow), inset 0 1px 0 rgba(255,255,255,.5);}
    50%{box-shadow:0 16px 48px -4px rgba(245,163,0,.85), inset 0 1px 0 rgba(255,255,255,.5);}}
  .btn-note{margin-top:15px;font-size:13.5px;color:var(--muted);letter-spacing:.02em;}

  /* ---- top bar ---- */
  .topbar{background:var(--emerald-2);color:#bfe4da;font-size:13px;}
  .topbar .wrap{display:flex;justify-content:space-between;align-items:center;height:46px;font-weight:700;letter-spacing:.02em;}
  .topbar .brand{color:#fff;font-family:'Fraunces';font-weight:600;letter-spacing:0;font-size:16px;}
  .topbar .right{display:flex;gap:14px;align-items:center;}
  @media(max-width:560px){ .topbar .right span.hide{display:none;} }

  /* ---- hero (centralizado) ---- */
  .hero{background:radial-gradient(130% 100% at 50% -10%, #13977C 0%, var(--emerald) 38%, var(--emerald-deep) 78%, var(--emerald-2) 100%);
    color:#fff;text-align:center;position:relative;overflow:hidden;}
  .hero .hero-inner{padding:70px 0 80px;display:flex;flex-direction:column;align-items:center;}
  .hero .eyebrow{color:#FFD06B;}
  .hero .eyebrow::before,.hero .eyebrow::after{background:var(--amber);}
  .hero h1{font-size:clamp(40px,7vw,68px);font-weight:600;line-height:1.03;margin:0 0 22px;color:#fff;max-width:16ch;}
  .hero h1 em{font-style:italic;color:#FFC247;font-weight:500;}
  .hero .lead{font-size:clamp(17px,2.4vw,21px);color:#d9efe8;max-width:40ch;margin:0 0 28px;}
  .pricetag{display:inline-flex;align-items:center;gap:16px;margin:0 0 24px;}
  .pricetag .old{font-family:'Fraunces';font-weight:500;font-size:24px;color:#8fc0b5;text-decoration:line-through;text-decoration-thickness:2px;}
  .pricetag .now{font-family:'Fraunces';font-weight:700;font-size:58px;color:#FFC247;line-height:1;}
  .reassure{margin-top:20px;font-size:13.5px;color:#a9d3c9;display:flex;gap:16px;flex-wrap:wrap;justify-content:center;}
  .reassure b{color:#e3f1ec;font-weight:700;}

  /* phone showcase below CTA */
  .phone-shell{position:relative;margin:48px auto 0;}
  .phone{width:264px;height:540px;background:linear-gradient(#1c1c1c,#0a0a0a);border-radius:44px;
    padding:12px;box-shadow:0 50px 90px -22px rgba(0,0,0,.65), inset 0 0 0 1.5px #2e2e2e;position:relative;}
  .phone::before{content:"";position:absolute;top:20px;left:50%;transform:translateX(-50%);width:54px;height:5px;background:#262626;border-radius:6px;z-index:2;}
  .phone .screen{width:100%;height:100%;border-radius:31px;
    background:radial-gradient(120% 80% at 70% 8%, #14977B, var(--emerald-2));overflow:hidden;
    display:flex;flex-direction:column;justify-content:center;padding:36px 28px;color:#fff;position:relative;text-align:left;}
  .phone .screen .e{font-family:'Mulish';font-weight:800;font-size:9px;letter-spacing:.2em;text-transform:uppercase;color:#FFC247;margin:0 0 16px;}
  .phone .screen h4{font-family:'Fraunces';font-weight:600;font-size:31px;line-height:1.04;margin:0;}
  .phone .screen h4 em{color:#FFC247;font-style:italic;font-weight:500;}
  .phone .screen .sub{font-size:11px;color:#c2ded7;margin:16px 0 0;line-height:1.45;}
  .phone .screen .ring{position:absolute;right:-30px;bottom:36px;width:120px;height:120px;opacity:.5;}
  .badge{position:absolute;z-index:3;top:-18px;right:-10px;width:108px;height:108px;border-radius:50%;
    background:radial-gradient(circle at 35% 30%, #FFC247, var(--amber));color:#3a2700;
    display:flex;flex-direction:column;align-items:center;justify-content:center;font-family:'Fraunces';font-weight:700;line-height:1;
    transform:rotate(8deg);box-shadow:0 16px 30px -8px rgba(0,0,0,.5);border:3px solid #FFD06B;}
  .badge small{font-family:'Mulish';font-weight:800;font-size:9px;letter-spacing:.08em;text-transform:uppercase;opacity:.8;}
  .badge b{font-size:32px;margin:2px 0;}

  /* ---- pain (centralizado) ---- */
  .pain .wrap{text-align:center;}
  .pain h2{font-size:clamp(28px,5vw,42px);margin:0 0 24px;color:var(--ink);}
  .pain p{font-size:19px;margin:0 auto 18px;max-width:60ch;}
  .pain .hl{color:var(--ink);font-weight:700;}
  .pain .pull{font-family:'Fraunces';font-style:italic;font-weight:500;font-size:clamp(21px,3vw,27px);
    color:var(--emerald-deep);margin:34px auto 0;line-height:1.4;max-width:30ch;}

  /* ---- inside ---- */
  .inside{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line);}
  .inside .head{text-align:center;margin:0 0 44px;}
  .inside h2{font-size:clamp(28px,5vw,42px);margin:0 0 10px;color:var(--ink);}
  .inside .sub{margin:0 auto;font-size:18px;max-width:50ch;}
  .feats{display:grid;grid-template-columns:1fr 1fr;gap:18px;}
  @media(max-width:680px){ .feats{grid-template-columns:1fr;} }
  .feat{background:var(--ivory);border:1px solid var(--line);border-radius:18px;padding:28px 28px;transition:transform .15s ease, box-shadow .15s ease;}
  .feat:hover{transform:translateY(-3px);box-shadow:0 16px 36px -16px rgba(14,122,102,.4);}
  .feat .ico{width:46px;height:46px;border-radius:12px;background:var(--emerald);
    display:flex;align-items:center;justify-content:center;margin:0 0 16px;box-shadow:0 8px 18px -6px rgba(14,122,102,.6);}
  .feat .ico svg{width:23px;height:23px;stroke:#fff;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}
  .feat h3{font-size:20px;margin:0 0 8px;color:var(--ink);font-weight:600;}
  .feat p{margin:0;font-size:15.5px;line-height:1.55;}
  .feat .tagx{font-family:'Mulish';font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--green-ok);margin-top:14px;display:inline-block;}

  /* ---- testimonials ---- */
  .love{background:var(--ivory);}
  .love h2{font-size:clamp(26px,4.6vw,36px);margin:0 0 38px;text-align:center;color:var(--ink);}
  .quotes{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
  @media(max-width:760px){ .quotes{grid-template-columns:1fr;} }
  .quote{background:#fff;border:1px solid var(--line);border-top:4px solid var(--amber);border-radius:16px;padding:26px;text-align:center;}
  .quote .stars{color:var(--amber);font-size:16px;letter-spacing:3px;margin:0 0 14px;}
  .quote p.t{font-family:'Fraunces';font-weight:400;font-size:18px;color:var(--ink);margin:0 0 16px;line-height:1.45;}
  .quote .who{font-family:'Mulish';font-weight:700;font-size:13px;color:var(--muted);letter-spacing:.02em;}

  /* ---- offer ---- */
  .offer{background:radial-gradient(130% 100% at 50% -10%, #13977C, var(--emerald) 40%, var(--emerald-2));color:#fff;}
  .offer .above{text-align:center;color:#bfe4da;margin:0 0 8px;font-family:'Fraunces';font-style:italic;font-size:21px;}
  .offer h2{font-size:clamp(28px,5vw,42px);margin:0 0 34px;color:#fff;text-align:center;font-weight:600;}
  .offer-card{background:#fff;color:var(--ink);max-width:540px;margin:0 auto;border-radius:24px;
    padding:40px 34px;box-shadow:0 50px 90px -26px rgba(0,0,0,.55);text-align:center;border-top:6px solid var(--amber);}
  .offer-card .limited{display:inline-flex;align-items:center;gap:8px;background:var(--coral-soft);color:var(--coral);
    font-family:'Mulish';font-weight:800;font-size:12px;letter-spacing:.1em;text-transform:uppercase;padding:8px 16px;border-radius:20px;margin:0 0 22px;}
  .offer-card .prices{display:flex;align-items:baseline;justify-content:center;gap:16px;margin:0 0 4px;}
  .offer-card .old{font-family:'Fraunces';font-size:30px;color:#b0a690;text-decoration:line-through;text-decoration-thickness:2px;}
  .offer-card .new{font-family:'Fraunces';font-weight:700;font-size:76px;color:var(--emerald);line-height:1;}
  .offer-card .new span{font-size:32px;}
  .offer-card .single{color:var(--muted);font-size:14.5px;margin:0 0 26px;}
  .countdown{display:flex;justify-content:center;gap:12px;margin:0 0 30px;}
  .cd-box{background:var(--emerald);color:#fff;border-radius:12px;padding:12px 0;min-width:68px;box-shadow:0 10px 22px -10px rgba(14,122,102,.7);}
  .cd-box b{font-family:'Fraunces';font-weight:700;font-size:32px;display:block;line-height:1;}
  .cd-box small{font-family:'Mulish';font-weight:700;font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:#a9d3c9;}
  .includes{text-align:left;max-width:390px;margin:0 auto 28px;padding:0;list-style:none;}
  .includes li{display:flex;gap:12px;align-items:flex-start;padding:9px 0;font-size:16px;border-bottom:1px solid var(--ivory-deep);color:var(--ink);}
  .includes li:last-child{border-bottom:none;}
  .includes li svg{width:21px;height:21px;flex:none;margin-top:2px;stroke:var(--green-ok);fill:none;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;}
  .pay{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:18px;font-family:'Mulish';font-weight:700;font-size:12.5px;color:var(--muted);flex-wrap:wrap;letter-spacing:.02em;}
  .pay .chip{border:1px solid var(--line);border-radius:8px;padding:5px 12px;}

  /* ---- guarantee ---- */
  .guarantee{background:var(--green-soft);}
  .guarantee .wrap{display:flex;align-items:center;justify-content:center;gap:30px;max-width:820px;text-align:left;}
  @media(max-width:640px){ .guarantee .wrap{flex-direction:column;text-align:center;} }
  .seal{width:116px;height:116px;border-radius:50%;background:var(--green-ok);color:#fff;flex:none;
    display:flex;flex-direction:column;align-items:center;justify-content:center;font-family:'Fraunces';font-weight:700;line-height:1;box-shadow:0 16px 34px -10px rgba(30,158,94,.6);}
  .seal b{font-size:42px;} .seal small{font-family:'Mulish';font-weight:800;font-size:10px;letter-spacing:.1em;text-transform:uppercase;opacity:.9;margin-top:2px;}
  .guarantee h3{font-size:25px;margin:0 0 8px;color:#177a48;font-weight:600;}
  .guarantee p{margin:0;color:#3c5749;}

  /* ---- faq ---- */
  .faq .head{text-align:center;}
  .faq h2{font-size:clamp(26px,4.6vw,36px);margin:0 0 30px;color:var(--ink);}
  details{background:#fff;border:1px solid var(--line);border-radius:14px;margin:0 0 12px;overflow:hidden;}
  summary{cursor:pointer;list-style:none;padding:20px 22px;font-family:'Mulish';font-weight:700;font-size:17px;display:flex;justify-content:space-between;align-items:center;gap:14px;color:var(--ink);}
  summary::-webkit-details-marker{display:none;}
  summary::after{content:"+";font-family:'Fraunces';font-size:26px;color:var(--amber-deep);flex:none;transition:transform .2s;line-height:1;}
  details[open] summary::after{transform:rotate(45deg);}
  details .ans{padding:0 22px 22px;color:var(--muted);font-size:16px;line-height:1.6;}

  /* ---- final ---- */
  .final{background:radial-gradient(130% 100% at 50% -10%, #13977C, var(--emerald) 40%, var(--emerald-2));color:#fff;text-align:center;}
  .final h2{font-size:clamp(30px,6vw,52px);margin:0 0 16px;color:#fff;font-weight:600;}
  .final h2 em{font-style:italic;color:#FFC247;font-weight:500;}
  .final p{color:#d9efe8;max-width:38ch;margin:0 auto 30px;}
  .final .cta-col{display:flex;flex-direction:column;align-items:center;}

  footer{background:var(--emerald-2);color:#7fa79d;font-size:13px;padding:40px 0 44px;}
  footer .wrap{display:flex;flex-direction:column;gap:10px;max-width:760px;text-align:center;align-items:center;}
  footer a{color:#FFC247;}
  footer .name{font-family:'Fraunces';font-weight:600;color:#e8efec;font-size:17px;}

  /* sticky mobile bar */
  #stick{position:fixed;left:0;right:0;bottom:0;z-index:60;background:#fff;border-top:1px solid var(--line);
    box-shadow:0 -10px 28px rgba(0,0,0,.14);padding:11px 16px;display:flex;align-items:center;gap:14px;
    transform:translateY(120%);transition:transform .28s ease;}
  #stick.show{transform:translateY(0);}
  #stick .px{flex:1;display:flex;flex-direction:column;line-height:1.05;}
  #stick .px .o{font-family:'Mulish';font-weight:700;font-size:13px;color:#9a9080;text-decoration:line-through;text-decoration-thickness:1.5px;}
  #stick .px .n{font-family:'Fraunces';font-weight:700;font-size:28px;color:var(--emerald);}
  #stick .btn{width:auto;font-size:17px;padding:15px 26px;flex-wrap:nowrap;}
  @media(min-width:861px){ #stick{display:none;} }

  [id]{scroll-margin-top:16px;}
  @media(prefers-reduced-motion:reduce){ html{scroll-behavior:auto;} *{transition:none!important;animation:none!important;} }
  .reveal{opacity:0;transform:translateY(16px);transition:opacity .7s ease,transform .7s ease;}
  .reveal.in{opacity:1;transform:none;}
