:root{
    /* Paleta bege da v4 */
    --bg:#F0E6D2;
    --bg-card:#F7F1E5;
    --bg-card-warm:#ebe0c8;
    --bg-deeper:#e5d7bd;
    --black:#1A1A1A;
    --black-soft:#3a2e23;
    --black-muted:#666666;
    --caramel:#B8945A;
    --caramel-dark:#9c7c47;
    --caramel-light:#d4b388;
    --line:#d4c6ab;
    --line-soft:#dfd4bd;
    --line-strong:#bba88a;

    --shadow-soft: 0 18px 50px -20px rgba(58,46,35,.18);
    --shadow-warm: 0 18px 40px -15px rgba(184,148,90,.22);

    --serif: 'Instrument Serif', serif;
    --sans: 'Inter', -apple-system, sans-serif;
  }
  *{margin:0;padding:0;box-sizing:border-box}
  html{scroll-behavior:smooth}
  body{
    background:var(--bg);
    color:var(--black);
    font-family:var(--sans);
    font-weight:400;
    line-height:1.6;
    font-size:16px;
    -webkit-font-smoothing:antialiased;
    overflow-x:hidden;
  }

  body::after{
    content:'';
    position:fixed;
    inset:0;
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0.4 0 0 0 0 0.3 0 0 0 0 0.2 0 0 0 0.08 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
    opacity:.6;
    pointer-events:none;
    z-index:1;
    mix-blend-mode:multiply;
  }
  .wrapper{position:relative;z-index:2;}

  .container{
    max-width:780px;
    margin:0 auto;
    padding:0 32px;
  }
  @media(max-width:680px){
    .container{padding:0 24px;}
  }

  /* TYPOGRAPHY */
  h1{
    font-family:var(--serif);
    font-size:clamp(2.6rem, 5vw, 4.4rem);
    line-height:1;
    color:var(--black);
    font-weight:400;
    letter-spacing:-.01em;
  }
  h2{
    font-family:var(--serif);
    font-size:clamp(2rem, 4vw, 3rem);
    line-height:1.05;
    color:var(--black);
    font-weight:400;
    letter-spacing:-.01em;
  }
  h3{
    font-family:var(--serif);
    font-size:clamp(1.3rem, 2.4vw, 1.6rem);
    font-weight:400;
    color:var(--black);
    line-height:1.15;
  }
  h1 em, h2 em, h3 em{
    font-style:italic;
    color:var(--caramel-dark);
    font-weight:400;
  }
  p{
    color:var(--black-soft);
    margin-bottom:1.1em;
    font-size:1rem;
    font-weight:400;
    line-height:1.65;
  }
  p strong, .strong{
    color:var(--black);
    font-weight:500;
  }
  em{
    font-family:var(--serif);
    font-style:italic;
    color:var(--caramel-dark);
    font-weight:400;
  }

  /* META ITEM */
  .meta-item{
    font-family:var(--sans);
    font-size:.7rem;
    color:var(--black-soft);
    letter-spacing:.22em;
    text-transform:uppercase;
    font-weight:500;
    display:inline-flex;
    align-items:center;
    gap:14px;
    margin-bottom:24px;
  }
  .meta-item::before{
    content:'';
    width:30px;
    height:1px;
    background:var(--caramel-dark);
  }
  .meta-item.accent{
    color:var(--caramel-dark);
    font-weight:600;
  }

  /* TOPBAR */
  .topbar{
    border-bottom:1px solid var(--line);
    background:rgba(240,230,210,.85);
    backdrop-filter:blur(12px);
    -webkit-backdrop-filter:blur(12px);
    position:sticky;
    top:0;
    z-index:50;
  }
  .topbar-inner{
    max-width:1240px;
    margin:0 auto;
    padding:18px 32px;
    display:flex;
    justify-content:space-between;
    align-items:center;
  }
  .brand{
    font-family:var(--serif);
    font-size:1.3rem;
    color:var(--black);
    font-style:italic;
  }
  .topbar-cta{
    background:var(--black);
    color:var(--bg);
    padding:10px 22px;
    border-radius:999px;
    font-size:.76rem;
    font-weight:500;
    text-decoration:none;
    letter-spacing:.08em;
    transition:all .25s ease;
  }
  .topbar-cta:hover{background:var(--caramel-dark);}

  /* HERO */
  .hero{
    max-width:1240px;
    margin:0 auto;
    padding:80px 32px 60px;
  }
  @media(max-width:880px){
    .hero{padding:50px 24px 40px;}
  }

  .hero-main{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:80px;
    align-items:stretch;
  }
  @media(max-width:980px){
    .hero-main{grid-template-columns:1fr;gap:50px;}
    .hero-right{height:480px;}
    .image-frame{height:100%;}
    .hero-photo{left:50%;}
  }
  .hero-left{padding-top:20px;}
  .headline{margin-bottom:36px;}
  .hero-deck p{
    font-family:var(--sans);
    font-size:1.02rem;
    line-height:1.6;
    color:var(--black-soft);
    max-width:460px;
    margin-bottom:.9em;
  }
  .hero-deck p.lead{
    font-family:var(--serif);
    font-size:1.45rem;
    color:var(--black);
    font-style:italic;
    line-height:1.3;
    margin:20px 0;
    font-weight:400;
  }
  .hero-deck p strong{color:var(--black);font-weight:500;}

  /* BUTTON */
  .btn-rect{
    background:var(--black);
    color:var(--bg);
    padding:16px 32px;
    font-family:var(--sans);
    font-size:.78rem;
    font-weight:500;
    letter-spacing:.14em;
    text-transform:uppercase;
    text-decoration:none;
    transition:all .3s ease;
    display:inline-flex;
    align-items:center;
    gap:14px;
    border:1px solid var(--black);
    cursor:pointer;
  }
  .btn-rect:hover{
    background:var(--caramel-dark);
    border-color:var(--caramel-dark);
  }

  /* HERO IMAGE */
  .hero-right{position:relative;}
  .image-frame{
    height:100%;
    background:var(--bg-card);
    position:relative;
    overflow:visible;
  }
  .image-frame-photo{background:transparent;border:none;padding:0;}
  .hero-photo{
    width:115%;
    height:115%;
    object-fit:cover;
    object-position:center top;
    display:block;
    position:absolute;
    bottom:0;
    left:35%;
    transform:translateX(-50%);
  }

  /* SECTION DIVIDER */
  .section-divider{
    max-width:1240px;
    margin:80px auto;
    padding:0 32px;
  }
  .section-divider .line{
    width:100%;
    height:1px;
    background:linear-gradient(90deg, transparent, var(--line-strong) 20%, var(--line-strong) 80%, transparent);
  }
  @media(max-width:680px){
    .section-divider{margin:60px auto;padding:0 24px;}
  }

  /* DIAGNOSTIC LIST */
  .diag-list{
    list-style:none;
    margin:32px 0;
    border-top:1px solid var(--line);
  }
  .diag-list li{
    color:var(--black-soft);
    padding:18px 0 18px 36px;
    position:relative;
    font-size:1.02rem;
    border-bottom:1px solid var(--line-soft);
    font-weight:400;
  }
  .diag-list li::before{
    content:'';
    position:absolute;
    left:6px;
    top:26px;
    width:8px;
    height:8px;
    border:1px solid var(--caramel-dark);
    border-radius:50%;
  }

  /* BORDER QUOTE BOX (com suporte a autor) */
  .border-quote{
    border:1px solid var(--caramel-dark);
    padding:32px;
    margin:36px 0;
    text-align:center;
    background:var(--bg-card);
  }
  .border-quote p{
    font-family:var(--serif);
    font-size:1.3rem;
    color:var(--black);
    font-weight:500;
    line-height:1.4;
    margin:0;
    font-style:italic;
  }
  .border-quote .quote-author{
    display:block;
    margin-top:14px;
    font-family:var(--sans);
    font-style:normal;
    font-size:.74rem;
    color:var(--caramel-dark);
    letter-spacing:.18em;
    text-transform:uppercase;
    font-weight:600;
  }

  /* COMPARISON - EMPILHADA AGORA */
  .comparison-stack{
    display:flex;
    flex-direction:column;
    gap:16px;
    margin:40px 0;
  }
  .comp-block{
    background:var(--bg-card);
    border:1px solid var(--line);
    padding:32px 36px;
  }
  .comp-block.good{
    background:var(--bg-card-warm);
    border-color:var(--caramel-dark);
  }
  .comp-title{
    font-family:var(--serif);
    font-style:italic;
    font-size:1.3rem;
    color:var(--black-muted);
    margin-bottom:20px;
    padding-bottom:14px;
    border-bottom:1px solid var(--line);
  }
  .comp-block.good .comp-title{color:var(--caramel-dark);}
  .comp-list{list-style:none;}
  .comp-list li{
    padding:11px 0 11px 26px;
    position:relative;
    color:var(--black-soft);
    font-size:.98rem;
    line-height:1.5;
    font-weight:400;
  }
  .comp-list li::before{
    position:absolute;
    left:0;
    top:13px;
    font-size:.9rem;
    line-height:1;
    font-family:var(--sans);
    font-weight:500;
  }
  .comp-block.bad .comp-list li::before{
    content:'×';
    color:#a05050;
  }
  .comp-block.good .comp-list li::before{
    content:'✓';
    color:var(--caramel-dark);
    font-weight:600;
  }

  .lead-strong{
    font-family:var(--serif);
    font-size:1.4rem;
    color:var(--black);
    margin-top:16px;
    font-weight:500;
    font-style:italic;
  }

  /* PILARES - EMPILHADOS */
  .pillars-stack{
    display:flex;
    flex-direction:column;
    gap:14px;
    margin:36px 0;
  }
  .pillar-block{
    background:var(--bg-card);
    border:1px solid var(--line);
    padding:28px 32px;
    text-align:center;
    transition:all .35s ease;
  }
  .pillar-block:hover{
    background:var(--bg-card-warm);
    border-color:var(--caramel-dark);
  }
  .pillar-block h3{
    font-family:var(--serif);
    font-size:1.4rem;
    margin-bottom:8px;
    color:var(--black);
    font-weight:400;
  }
  .pillar-block p{
    font-size:.95rem;
    color:var(--black-soft);
    margin:0;
    line-height:1.5;
  }

  /* MODULES */
  .modules{
    display:flex;
    flex-direction:column;
    margin:36px 0;
    border-top:1px solid var(--line);
  }
  .module{
    padding:28px 0;
    border-bottom:1px solid var(--line-soft);
    display:grid;
    grid-template-columns: 80px 1fr;
    gap:24px;
    align-items:start;
    transition:all .35s ease;
  }
  @media(max-width:680px){
    .module{grid-template-columns:60px 1fr;gap:18px;}
  }
  .module:hover{background:var(--bg-card);padding-left:16px;padding-right:16px;}
  .module-num{
    font-family:var(--serif);
    font-style:italic;
    font-size:1.6rem;
    color:var(--caramel-dark);
    line-height:1;
    padding-top:6px;
  }
  .module-num .label{
    display:block;
    font-style:normal;
    font-family:var(--sans);
    font-size:.6rem;
    letter-spacing:.24em;
    text-transform:uppercase;
    color:var(--black-soft);
    font-weight:500;
    margin-bottom:6px;
  }
  .module-content h3{
    font-family:var(--serif);
    font-weight:400;
    font-size:1.4rem;
    margin-bottom:8px;
    color:var(--black);
    line-height:1.2;
  }
  .module-content p{
    color:var(--black-soft);
    font-size:.98rem;
    margin:0;
    line-height:1.6;
  }

  /* BONUS SECTION */
  .bonus-section{
    background:var(--bg-card);
    padding:80px 0;
    margin:80px 0;
  }
  @media(max-width:680px){
    .bonus-section{padding:60px 0;margin:60px 0;}
  }
  .bonus-grid{
    display:grid;
    grid-template-columns:repeat(2, 1fr);
    gap:16px;
    margin:36px 0;
  }
  @media(max-width:780px){
    .bonus-grid{grid-template-columns:1fr;}
  }
  .bonus-card{
    background:var(--bg);
    border:1px solid var(--line);
    padding:24px 26px;
    display:grid;
    grid-template-columns:50px 1fr;
    gap:18px;
    align-items:start;
    transition:all .35s ease;
  }
  .bonus-card:hover{
    border-color:var(--caramel-dark);
    transform:translateY(-3px);
    box-shadow:var(--shadow-warm);
  }
  .bonus-num{
    font-family:var(--serif);
    font-style:italic;
    font-size:2rem;
    color:var(--caramel-dark);
    line-height:1;
  }
  .bonus-content h3{
    font-family:var(--serif);
    font-size:1.1rem;
    line-height:1.25;
    margin-bottom:8px;
    color:var(--black);
    font-weight:500;
  }
  .bonus-content h3 .format{
    display:inline-block;
    margin-left:6px;
    font-family:var(--sans);
    font-size:.6rem;
    letter-spacing:.18em;
    text-transform:uppercase;
    color:var(--caramel-dark);
    background:var(--bg-card-warm);
    padding:3px 8px;
    border-radius:3px;
    vertical-align:middle;
    font-weight:600;
    font-style:normal;
  }
  .bonus-content p{
    font-size:.9rem;
    color:var(--black-soft);
    margin:0;
    line-height:1.55;
  }

  /* CREATOR - novo formato com avatar */
  .creator-block{
    background:var(--bg-card);
    border:1px solid var(--line);
    padding:40px 36px;
    margin:36px 0;
  }
  .creator-avatar{
    width:62px;
    height:62px;
    border-radius:50%;
    background:var(--bg);
    border:1px solid var(--line-strong);
    display:flex;
    align-items:center;
    justify-content:center;
    font-family:var(--serif);
    font-style:italic;
    font-size:1.2rem;
    color:var(--caramel-dark);
    margin-bottom:22px;
    font-weight:500;
  }
  .creator-block h3{
    font-family:var(--serif);
    font-size:1.7rem;
    color:var(--black);
    margin-bottom:14px;
    font-weight:400;
  }
  .creator-block p{
    font-size:1rem;
    line-height:1.65;
    color:var(--black-soft);
    margin:0;
  }
  .creator-block p strong{color:var(--black);font-weight:500;}

  /* TESTIMONIALS - nova estrutura */
  .testimonials{
    display:flex;
    flex-direction:column;
    gap:20px;
    margin:36px 0;
  }
  .testimonial{
    background:var(--bg-card);
    border:1px solid var(--line);
    padding:32px 36px;
  }
  .testimonial-tag{
    display:inline-block;
    background:var(--bg);
    border:1px solid var(--line);
    border-radius:999px;
    padding:5px 14px;
    font-family:var(--sans);
    font-size:.66rem;
    font-weight:500;
    letter-spacing:.2em;
    text-transform:uppercase;
    color:var(--caramel-dark);
    margin-bottom:16px;
  }
  .testimonial-headline{
    font-family:var(--serif);
    font-size:clamp(1.8rem, 3.4vw, 2.2rem);
    color:var(--black);
    line-height:1.1;
    margin-bottom:8px;
    font-weight:400;
  }
  .testimonial-subhead{
    font-family:var(--serif);
    font-style:italic;
    font-size:1.05rem;
    color:var(--black-muted);
    margin-bottom:22px;
    line-height:1.45;
  }
  .testimonial-quote{
    border-left:2px solid var(--caramel-dark);
    padding:8px 0 8px 22px;
    margin:0 0 20px 0;
  }
  .testimonial-quote p{
    font-family:var(--sans);
    font-size:.98rem;
    line-height:1.65;
    color:var(--black-soft);
    margin-bottom:1em;
    font-style:normal;
  }
  .testimonial-quote p:last-child{margin-bottom:0;}
  .testimonial-quote p strong{
    color:var(--black);
    font-weight:600;
  }
  .testimonial-author{
    display:flex;
    flex-direction:column;
    gap:2px;
  }
  .testimonial-author strong{
    font-family:var(--serif);
    font-size:1.1rem;
    color:var(--black);
    font-weight:500;
  }
  .testimonial-author span{
    font-size:.84rem;
    color:var(--caramel-dark);
    font-style:italic;
    font-family:var(--serif);
  }

  /* OFFER LIST */
  .offer-list{
    list-style:none;
    margin:32px 0;
    border-top:1px solid var(--line);
  }
  .offer-list li{
    color:var(--black);
    padding:20px 0 20px 36px;
    position:relative;
    font-size:1.08rem;
    border-bottom:1px solid var(--line-soft);
    font-family:var(--serif);
    font-weight:500;
  }
  .offer-list li::before{
    content:'✓';
    position:absolute;
    left:6px;
    top:22px;
    color:var(--caramel-dark);
    font-size:1.1rem;
    line-height:1;
    font-weight:600;
  }

  /* FINAL */
  .final-call{padding:60px 0;}
  .final-call h2{margin-bottom:32px;}

  .imperadora-block{
    text-align:center;
    margin:60px 0;
    padding:48px 0;
    border-top:1px solid var(--line);
    border-bottom:1px solid var(--line);
  }
  .imperadora-block p{
    font-family:var(--serif);
    font-size:clamp(1.6rem, 3.4vw, 2.2rem);
    font-style:italic;
    color:var(--black);
    max-width:640px;
    margin:0 auto;
    line-height:1.3;
    font-weight:400;
  }

  /* PRICE CARD */
  .price-card{
    background:var(--bg-card);
    border:1px solid var(--black);
    padding:48px 40px;
    margin:40px 0;
    text-align:center;
  }
  .price-card .meta-line{
    color:var(--caramel-dark);
    font-size:.66rem;
    letter-spacing:.24em;
    margin-bottom:24px;
    text-transform:uppercase;
    font-weight:600;
  }
  .price-card .price-row{
    display:flex;
    justify-content:center;
    align-items:baseline;
    gap:16px;
    margin-bottom:8px;
    flex-wrap:wrap;
  }
  .price-old{
    color:var(--black-soft);
    text-decoration:line-through;
    font-size:1.1rem;
    font-family:var(--serif);
    font-style:italic;
    opacity:.65;
  }
  .price-now{
    font-family:var(--serif);
    font-size:clamp(3.2rem, 8vw, 4.8rem);
    color:var(--black);
    line-height:1;
    font-weight:400;
    letter-spacing:-.02em;
  }
  .price-now .currency{
    color:var(--caramel-dark);
    font-size:.5em;
    vertical-align:top;
    margin-right:.05em;
    line-height:1;
    position:relative;
    top:.25em;
    font-style:italic;
  }
  .price-sub{
    color:var(--black-soft);
    font-size:.78rem;
    margin-bottom:30px;
    letter-spacing:.18em;
    text-transform:uppercase;
    font-weight:500;
  }
  .price-card .btn-rect{margin-top:8px;}
  .price-guarantee{
    margin-top:22px;
    font-size:.72rem;
    color:var(--black-soft);
    letter-spacing:.16em;
    text-transform:uppercase;
    font-weight:500;
  }
  .price-guarantee::before{
    content:'';
    display:inline-block;
    width:5px;height:5px;
    border-radius:50%;
    background:var(--caramel-dark);
    margin-right:10px;
    vertical-align:middle;
  }

  /* HERO PRICE CARD - escuro */
  .price-card-hero{
    background:var(--black);
    border:1px solid var(--black);
    color:var(--bg);
    padding:36px 32px;
    margin:50px auto 0;
    text-align:center;
    max-width:780px;
  }
  .price-card-hero .price-old{color:var(--bg);opacity:.5;}
  .price-card-hero .price-now{color:var(--bg);}
  .price-card-hero .price-now .currency{color:var(--caramel-light);}
  .price-card-hero .price-sub{color:var(--caramel-light);opacity:.85;}
  .price-card-hero .btn-rect{
    background:var(--caramel);
    color:var(--black);
    border-color:var(--caramel);
  }
  .price-card-hero .btn-rect:hover{
    background:var(--bg);
    color:var(--black);
    border-color:var(--bg);
  }
  .price-card-hero .price-guarantee{color:var(--caramel-light);opacity:.8;}

  /* FOOTER */
  footer{
    border-top:1px solid var(--line);
    padding:50px 0;
    margin-top:80px;
    background:var(--bg-deeper);
  }
  footer .footer-inner{
    max-width:1240px;
    margin:0 auto;
    padding:0 32px;
    display:flex;
    justify-content:space-between;
    align-items:center;
    flex-wrap:wrap;
    gap:24px;
  }
  footer .footer-brand{
    font-family:var(--serif);
    font-style:italic;
    font-size:1.4rem;
    color:var(--black);
  }
  footer .footer-meta{
    font-size:.74rem;
    color:var(--black-soft);
    letter-spacing:.14em;
    text-transform:uppercase;
    font-weight:500;
  }
  @media(max-width:680px){
    footer .footer-inner{flex-direction:column;align-items:flex-start;padding:0 24px;}
  }

  /* SECTION BACKGROUNDS */
  section:not(.hero) { padding: 80px 0; }

  .sec-a { background: #FAF5EC; }
  .sec-b { background: #EAD9C2; }
  .sec-c { background: #F4EBD8; }

  /* WAVE DIVIDER */
  .wave-div {
    display: block;
    line-height: 0;
    overflow: hidden;
    height: 80px;
  }
  .wave-div svg {
    display: block;
    width: 100%;
    height: 100%;
  }

  /* DARK SECTION */
  .sec-dark { background: #1A1208; }
  .sec-dark h2 { color: #F0E6D2; }
  .sec-dark .container > p { color: rgba(240,230,210,.7); }
  .sec-dark .container > p strong { color: #F0E6D2; }
  .sec-dark .meta-item { color: var(--caramel-light); }
  .sec-dark .meta-item::before { background: var(--caramel-light); }
  .sec-dark .imperadora-block {
    border-color: rgba(240,230,210,.15);
  }
  .sec-dark .imperadora-block p { color: #F0E6D2; }

  /* Override bonus-section float — now handled by wave system */
  .bonus-section { background: none; margin: 0; padding: 0; }
  .bonus-section.sec-c { padding: 80px 0; }
  .bonus-card { background: #FAF5EC; }

  /* ANIMATIONS */
  @keyframes fadeUp{
    from{opacity:0;transform:translateY(16px);}
    to{opacity:1;transform:translateY(0);}
  }
  .reveal{
    opacity:0;
    transform:translateY(16px);
    transition:opacity .8s ease, transform .8s ease;
  }
  .reveal.in{
    opacity:1;
    transform:translateY(0);
  }
  .fade{animation:fadeUp .9s ease-out backwards;}
  .fade.d1{animation-delay:.05s;}
  .fade.d2{animation-delay:.15s;}
  .fade.d3{animation-delay:.3s;}
  .fade.d4{animation-delay:.45s;}
  .fade.d5{animation-delay:.6s;}
