.elementor-18 .elementor-element.elementor-element-marolinha-lp-root{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-18 .elementor-element.elementor-element-marolinha-html-w1{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}/* Start custom CSS */@import url("https://fonts.googleapis.com/css2?family=Rubik:wght@400;500;600;700;800&family=Nunito+Sans:wght@400;600;700&display=swap");


    /* ========================================
       CSS Variables
    ======================================== */
    :root {
      --ml-turquesa: #2fc1dc;
      --ml-turquesa-dark: #1EA7C4;
      --ml-turquesa-deep: #0D8A9E;
      --ml-amarelo: #FFB703;
      --ml-amarelo-hover: #FFA903;
      --ml-coral: #FF6B6B;
      --ml-coral-light: #FF8FA3;
      --ml-branco: #FFFFFF;
      --ml-off-white: #F8FDFF;
      --ml-sand: #FFF8E7;
      --ml-text: #0D3B4C;
      --ml-text-light: #4A6B7A;
      --ml-text-muted: #6B8A99;
      --ml-green-trust: #4bb98c;
      --ml-green-wa: #25D366;
      --ml-bg-gradient: linear-gradient(135deg, #0D8A9E 0%, #2fc1dc 50%, #1EA7C4 100%);
      --ml-radius: 12px;
      --ml-radius-lg: 20px;
      --ml-radius-xl: 28px;
      --ml-shadow: 0 4px 20px rgba(13,59,76,0.08);
      --ml-shadow-lg: 0 12px 48px rgba(13,59,76,0.15);
      --ml-shadow-xl: 0 20px 60px rgba(13,59,76,0.2);
      --ml-transition: 0.25s ease;
      --ml-font-hero: clamp(2.4rem, 6vw, 4rem);
      --ml-font-h2: clamp(1.75rem, 4vw, 2.75rem);
      --ml-font-h3: clamp(1.2rem, 2vw, 1.5rem);
      --ml-font-body: 1rem;
      --ml-font-small: 0.875rem;
      --ml-section-pad: clamp(4rem, 10vw, 7rem);
    }

    /* ========================================
       Reset & Base
    ======================================== */
    .pou-lp *, .pou-lp *::before, .pou-lp *::after {
      box-sizing: border-box;
      margin: 0;
      padding: 0;
    }
    .pou-lp {
      font-family: 'Nunito Sans', sans-serif;
      color: var(--ml-text);
      line-height: 1.6;
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
      overflow-x: hidden;
    }
    .pou-lp img {
      max-width: 100%;
      height: auto;
      display: block;
    }
    .pou-lp a {
      text-decoration: none;
      color: inherit;
      cursor: pointer;
    }
    .pou-lp h1, .pou-lp h2, .pou-lp h3, .pou-lp h4 {
      font-family: 'Rubik', sans-serif;
      line-height: 1.15;
      font-weight: 700;
    }
    .pou-lp ul { list-style: none; }
    .pou-lp section { position: relative; }
    .pou-lp button { cursor: pointer; }
    .pou-lp a:focus-visible,
    .pou-lp button:focus-visible,
    .pou-lp summary:focus-visible {
      outline: 3px solid var(--ml-amarelo);
      outline-offset: 2px;
    }

    /* ========================================
       Reduced Motion
    ======================================== */
    @media (prefers-reduced-motion: reduce) {
      .pou-lp .ml-fade,
      .pou-lp .ml-stagger {
        opacity: 1 !important;
        transform: none !important;
        transition: none !important;
      }
      .pou-lp .ml-wave-animated path {
        animation: none !important;
      }
      .pou-lp .ml-hero-img-wrap {
        animation: none !important;
      }
      .pou-lp .ml-grain::before {
        display: none !important;
      }
    }

    /* ========================================
       Utilities
    ======================================== */
    .pou-lp .ml-container {
      width: 100%;
      max-width: 1200px;
      margin: 0 auto;
      padding: 0 1.25rem;
    }
    .pou-lp .ml-section-pad {
      padding-top: var(--ml-section-pad);
      padding-bottom: var(--ml-section-pad);
    }
    .pou-lp .ml-text-center { text-align: center; }

    /* Badge */
    .pou-lp .ml-badge {
      display: inline-block;
      background: var(--ml-amarelo);
      color: var(--ml-text);
      font-family: 'Rubik', sans-serif;
      font-weight: 700;
      font-size: var(--ml-font-small);
      padding: 8px 20px;
      border-radius: 50px;
      letter-spacing: 0.02em;
      text-transform: uppercase;
    }

    /* Section label */
    .pou-lp .ml-section-label {
      display: inline-block;
      font-family: 'Rubik', sans-serif;
      font-weight: 600;
      font-size: var(--ml-font-small);
      color: var(--ml-turquesa);
      text-transform: uppercase;
      letter-spacing: 0.1em;
      margin-bottom: 12px;
    }
    .pou-lp .ml-section-title {
      font-size: var(--ml-font-h2);
      font-weight: 800;
      margin-bottom: 24px;
      color: var(--ml-text);
    }
    .pou-lp .ml-section-sub {
      font-size: 1.15rem;
      color: var(--ml-text-light);
      max-width: 640px;
      margin: 0 auto 48px;
      line-height: 1.7;
    }

    /* Grain overlay */
    .pou-lp .ml-grain {
      position: relative;
    }
    .pou-lp .ml-grain::before {
      content: '';
      position: absolute;
      inset: 0;
      pointer-events: none;
      z-index: 1;
      opacity: 0.03;
      background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
      background-repeat: repeat;
      background-size: 256px 256px;
    }

    /* ========================================
       Buttons
    ======================================== */
    .pou-lp .ml-btn {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 8px;
      padding: 16px 36px;
      border: none;
      border-radius: var(--ml-radius);
      font-family: 'Rubik', sans-serif;
      font-weight: 700;
      font-size: 1rem;
      cursor: pointer;
      transition: transform var(--ml-transition), box-shadow var(--ml-transition), background var(--ml-transition);
      text-decoration: none;
      white-space: nowrap;
      position: relative;
      overflow: hidden;
    }
    .pou-lp .ml-btn:hover {
      transform: translateY(-3px);
    }
    .pou-lp .ml-btn:active {
      transform: translateY(-1px);
    }
    .pou-lp .ml-btn--primary {
      background: var(--ml-amarelo);
      color: var(--ml-text);
      box-shadow: 0 4px 16px rgba(255,183,3,0.3);
    }
    .pou-lp .ml-btn--primary:hover {
      background: var(--ml-amarelo-hover);
      box-shadow: 0 8px 28px rgba(255,183,3,0.45);
    }
    .pou-lp .ml-btn--coral {
      background: var(--ml-coral);
      color: var(--ml-branco);
      box-shadow: 0 4px 16px rgba(255,107,107,0.3);
    }
    .pou-lp .ml-btn--coral:hover {
      background: #e55a5a;
      box-shadow: 0 8px 28px rgba(255,107,107,0.45);
    }
    .pou-lp .ml-btn--hero {
      padding: 20px 48px;
      font-size: 1.15rem;
      border-radius: 16px;
    }
    .pou-lp .ml-btn--outline {
      background: transparent;
      color: var(--ml-turquesa-dark);
      border: 2.5px solid var(--ml-turquesa);
    }
    .pou-lp .ml-btn--outline:hover {
      background: rgba(47,193,220,0.08);
      box-shadow: 0 8px 24px rgba(47,193,220,0.2);
    }

    /* SVG icon inside button */
    .pou-lp .ml-btn .ml-icon {
      width: 20px;
      height: 20px;
      flex-shrink: 0;
    }

    /* ========================================
       Animated Wave Divider
    ======================================== */
    .pou-lp .ml-wave-animated {
      position: relative;
      width: 100%;
      height: 80px;
      overflow: hidden;
      line-height: 0;
    }
    .pou-lp .ml-wave-animated svg {
      position: absolute;
      bottom: 0;
      left: 0;
      width: 200%;
      height: 100%;
    }
    .pou-lp .ml-wave-animated svg path {
      animation: ml-wave-move 8s linear infinite;
    }
    @keyframes ml-wave-move {
      0% { transform: translateX(0); }
      100% { transform: translateX(-50%); }
    }

    /* Static wave */
    .pou-lp .ml-wave {
      display: block;
      width: 100%;
      height: auto;
      line-height: 0;
    }
    .pou-lp .ml-wave svg {
      display: block;
      width: 100%;
      height: auto;
    }

    /* ========================================
       Fade-in & Stagger Animation
    ======================================== */
    .pou-lp .ml-fade {
      opacity: 0;
      transform: translateY(36px);
      transition: opacity 0.7s cubic-bezier(0.16,1,0.3,1), transform 0.7s cubic-bezier(0.16,1,0.3,1);
    }
    .pou-lp .ml-fade.ml-visible {
      opacity: 1;
      transform: translateY(0);
    }
    .pou-lp .ml-stagger { transition-delay: var(--ml-delay, 0ms); }

    /* Hero stagger */
    .pou-lp .ml-hero-badge { --ml-delay: 0ms; }
    .pou-lp .ml-hero-h1 { --ml-delay: 120ms; }
    .pou-lp .ml-hero-sub-el { --ml-delay: 240ms; }
    .pou-lp .ml-hero-cta-el { --ml-delay: 360ms; }
    .pou-lp .ml-hero-img-el { --ml-delay: 500ms; }

    /* ========================================
       HEADER
    ======================================== */
    .pou-lp .ml-header {
      position: fixed;
      top: 0;
      left: 0;
      right: 0;
      z-index: 100;
      padding: 16px 0;
      transition: background var(--ml-transition), box-shadow var(--ml-transition), padding var(--ml-transition);
    }
    .pou-lp .ml-header--scrolled {
      background: rgba(255,255,255,0.97);
      box-shadow: 0 2px 24px rgba(13,59,76,0.1);
      padding: 10px 0;
      backdrop-filter: blur(12px);
    }
    .pou-lp .ml-header-inner {
      display: flex;
      align-items: center;
      justify-content: space-between;
    }
    .pou-lp .ml-logo-link {
      display: flex;
      align-items: center;
    }
    .pou-lp .ml-logo-img {
      height: 100px;
      max-height: 100px;
      width: auto;
      transition: filter var(--ml-transition);
    }
    .pou-lp .ml-header:not(.ml-header--scrolled) .ml-logo-img {
      filter: none;
    }
    .pou-lp .ml-header-cta {
      padding: 10px 24px;
      font-size: var(--ml-font-small);
    }

    /* ========================================
       HERO
    ======================================== */
    .pou-lp .ml-hero {
      position: relative;
      min-height: 100svh;
      display: flex;
      align-items: center;
      background: linear-gradient(160deg, #084852 0%, var(--ml-turquesa-deep) 30%, var(--ml-turquesa-dark) 65%, var(--ml-turquesa) 100%);
      color: var(--ml-branco);
      overflow: hidden;
    }

    /* Geometric shapes background */
    .pou-lp .ml-hero-shapes {
      position: absolute;
      inset: 0;
      overflow: hidden;
      pointer-events: none;
    }
    .pou-lp .ml-hero-shapes::before {
      content: '';
      position: absolute;
      width: 700px;
      height: 700px;
      border-radius: 50%;
      background: radial-gradient(circle, rgba(255,183,3,0.12), transparent 70%);
      top: -250px;
      right: -150px;
    }
    .pou-lp .ml-hero-shapes::after {
      content: '';
      position: absolute;
      width: 500px;
      height: 500px;
      border-radius: 50%;
      background: radial-gradient(circle, rgba(255,107,107,0.08), transparent 70%);
      bottom: -150px;
      left: -120px;
    }
    /* Extra geometric block */
    .pou-lp .ml-hero-geo {
      position: absolute;
      width: 200px;
      height: 200px;
      border: 3px solid rgba(255,255,255,0.06);
      border-radius: 32px;
      transform: rotate(25deg);
      top: 15%;
      right: 8%;
      pointer-events: none;
    }
    .pou-lp .ml-hero-geo-2 {
      position: absolute;
      width: 120px;
      height: 120px;
      border: 2px solid rgba(255,183,3,0.1);
      border-radius: 20px;
      transform: rotate(-15deg);
      bottom: 20%;
      left: 5%;
      pointer-events: none;
    }

    .pou-lp .ml-hero-grid {
      display: grid;
      grid-template-columns: 1fr;
      gap: 48px;
      align-items: center;
      padding: 130px 0 100px;
      position: relative;
      z-index: 2;
    }
    .pou-lp .ml-hero-content {
      max-width: 600px;
    }
    .pou-lp .ml-hero h1 {
      font-size: var(--ml-font-hero);
      font-weight: 800;
      line-height: 1.08;
      margin-top: 20px;
      margin-bottom: 24px;
      letter-spacing: -0.02em;
    }
    .pou-lp .ml-hero-sub {
      font-size: clamp(1.05rem, 2vw, 1.25rem);
      color: rgba(255,255,255,0.88);
      line-height: 1.7;
      margin-bottom: 40px;
      max-width: 520px;
    }
    .pou-lp .ml-hero-ctas {
      display: flex;
      gap: 16px;
      flex-wrap: wrap;
    }

    /* Hero image with float + rotation */
    .pou-lp .ml-hero-media {
      display: flex;
      align-items: center;
      justify-content: center;
      position: relative;
    }
    .pou-lp .ml-hero-img-wrap {
      position: relative;
      animation: ml-float 4s ease-in-out infinite;
    }
    @keyframes ml-float {
      0%, 100% { transform: translateY(0) rotate(-2deg); }
      50% { transform: translateY(-16px) rotate(1deg); }
    }
    .pou-lp .ml-hero-img {
      width: 100%;
      max-width: 460px;
      height: auto;
      border-radius: var(--ml-radius-xl);
      filter: drop-shadow(0 24px 48px rgba(0,0,0,0.25));
    }
    /* Overlap effect: image breaks out of section */
    @media (min-width: 768px) {
      .pou-lp .ml-hero-img-wrap {
        margin-bottom: -40px;
      }
    }

    @media (min-width: 768px) {
      .pou-lp .ml-hero-grid {
        grid-template-columns: 1.1fr 0.9fr;
        padding: 160px 0 120px;
      }
    }
    @media (min-width: 1024px) {
      .pou-lp .ml-hero-grid {
        grid-template-columns: 1.2fr 0.8fr;
      }
    }
    @media (max-width: 767px) {
      .pou-lp .ml-hero {
        text-align: center;
      }
      .pou-lp .ml-hero-sub {
        margin-inline: auto;
      }
      .pou-lp .ml-hero-ctas {
        justify-content: center;
      }
      .pou-lp .ml-hero-img {
        max-width: 320px;
        margin: 0 auto;
      }
    }

    /* ========================================
       OFERTA PRIMEIRA COMPRA
    ======================================== */
    .pou-lp .ml-oferta { background: var(--ml-sand); }
    .pou-lp .ml-oferta-box {
      background: linear-gradient(160deg, #063C45, var(--ml-turquesa-deep), var(--ml-turquesa-dark));
      border-radius: var(--ml-radius-xl); padding: clamp(1.5rem, 4vw, 2.5rem) clamp(1.5rem, 4vw, 3rem);
      text-align: center; position: relative; overflow: hidden;
      box-shadow: 0 20px 60px rgba(13,59,76,0.25);
    }
    .pou-lp .ml-oferta-box::before { content:''; position:absolute; width:500px; height:500px;
      background:radial-gradient(circle,rgba(255,183,3,0.12),transparent 70%); top:-200px; right:-150px; pointer-events:none; }
    .pou-lp .ml-oferta-header { position: relative; z-index: 2; }
    .pou-lp .ml-oferta-badge { display:inline-block; background:var(--ml-amarelo); color:var(--ml-text);
      font-family:'Rubik',sans-serif; font-weight:700; font-size:0.85rem; padding:6px 20px;
      border-radius:50px; text-transform:uppercase; letter-spacing:0.08em; margin-bottom:1.5rem; }
    .pou-lp .ml-oferta-ganhe { display:block; font-family:'Rubik',sans-serif; font-weight:700;
      font-size:clamp(1.2rem,3vw,1.6rem); color:var(--ml-branco); text-transform:uppercase; }
    .pou-lp .ml-oferta-percent { display:block; font-family:'Rubik',sans-serif; font-weight:800;
      font-size:clamp(4rem,12vw,7rem); color:var(--ml-amarelo); line-height:1; margin:0.25rem 0; }
    .pou-lp .ml-oferta-percent-sign { font-size:0.5em; vertical-align:super; }
    .pou-lp .ml-oferta-de { display:block; font-family:'Rubik',sans-serif; font-weight:700;
      font-size:clamp(1.2rem,3vw,1.8rem); color:var(--ml-branco); text-transform:uppercase; }
    .pou-lp .ml-oferta-plus { font-family:'Rubik',sans-serif; font-weight:800; font-size:2rem;
      color:var(--ml-amarelo); margin:0.75rem 0; }
    .pou-lp .ml-oferta-frete { font-family:'Rubik',sans-serif; font-weight:800;
      font-size:clamp(1.5rem,4vw,2.5rem); color:var(--ml-branco); text-transform:uppercase; }
    .pou-lp .ml-oferta-condicao { font-size:0.9rem; color:rgba(255,255,255,0.7); margin-top:0.5rem; margin-bottom:2rem; }
    .pou-lp .ml-cupom-box { display:flex; align-items:center; justify-content:center; gap:12px;
      flex-wrap:wrap; position:relative; z-index:2; margin-bottom:2.5rem; }
    .pou-lp .ml-cupom-label { font-family:'Rubik',sans-serif; font-weight:600; font-size:0.95rem;
      color:rgba(255,255,255,0.8); text-transform:uppercase; }
    .pou-lp .ml-cupom-code { background:rgba(255,255,255,0.12); border:2.5px dashed var(--ml-amarelo);
      border-radius:var(--ml-radius); padding:12px 28px; font-family:'Rubik',sans-serif; font-weight:800;
      font-size:clamp(1.3rem,4vw,1.8rem); color:var(--ml-branco); letter-spacing:0.15em; user-select:all; }
    .pou-lp .ml-cupom-copy { background:var(--ml-amarelo); color:var(--ml-text); border:none;
      border-radius:var(--ml-radius); padding:12px 24px; font-family:'Rubik',sans-serif; font-weight:700;
      font-size:0.9rem; cursor:pointer; transition:background 0.2s ease,transform 0.2s ease; }
    .pou-lp .ml-cupom-copy:hover { background:var(--ml-amarelo-hover); transform:translateY(-2px); }
    .pou-lp .ml-oferta-selos { display:flex; justify-content:center; gap:clamp(1.5rem,4vw,3rem);
      flex-wrap:wrap; position:relative; z-index:2; }
    .pou-lp .ml-selo { display:flex; align-items:center; gap:10px; }
    .pou-lp .ml-selo-icon { width:44px; height:44px; border-radius:50%; background:rgba(255,255,255,0.12);
      border:2px solid rgba(255,255,255,0.2); display:flex; align-items:center; justify-content:center; flex-shrink:0; }
    .pou-lp .ml-selo-icon svg { width:22px; height:22px; stroke:var(--ml-amarelo); }
    .pou-lp .ml-selo-text { font-family:'Rubik',sans-serif; font-weight:700; font-size:0.85rem;
      color:var(--ml-branco); line-height:1.3; text-align:left; }
    .pou-lp .ml-selo-text small { font-weight:500; font-size:0.75rem; color:rgba(255,255,255,0.65); }

    /* ========================================
       PRODUTO
    ======================================== */
    .pou-lp .ml-produto {
      background: var(--ml-off-white);
      position: relative;
      overflow: hidden;
    }
    /* Block accent */
    .pou-lp .ml-produto::before {
      content: '';
      position: absolute;
      top: -80px;
      left: -80px;
      width: 300px;
      height: 300px;
      background: rgba(47,193,220,0.04);
      border-radius: 60px;
      transform: rotate(15deg);
      pointer-events: none;
    }
    .pou-lp .ml-produto-grid {
      display: grid;
      grid-template-columns: 1fr;
      gap: 56px;
      align-items: center;
      position: relative;
      z-index: 2;
    }
    @media (min-width: 768px) {
      .pou-lp .ml-produto-grid {
        grid-template-columns: 1fr;
        max-width: 820px;
        margin: 0 auto;
      }
    }
    .pou-lp .ml-produto-text p {
      font-size: 1.1rem;
      line-height: 1.85;
      color: var(--ml-text-light);
      margin-bottom: 28px;
    }
    .pou-lp .ml-variantes {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 16px;
      margin-bottom: 36px;
    }
    .pou-lp .ml-variantes-nota {
      background: var(--ml-branco);
      border-radius: var(--ml-radius-lg);
      box-shadow: var(--ml-shadow);
      padding: 18px 22px;
      margin-bottom: 36px;
      font-size: 1.05rem;
      line-height: 1.5;
      color: var(--ml-text);
    }
    .pou-lp .ml-variantes-nota strong { color: var(--ml-turquesa-deep); }
    .pou-lp .ml-offer-grid {
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      gap: 1.25rem;
      max-width: 720px;
      margin: 2.5rem auto 1.5rem;
    }
    @media (min-width: 992px) {
      .pou-lp .ml-offer-grid {
        grid-template-columns: repeat(4, 1fr);
        max-width: 1140px;
      }
    }
    .pou-lp .ml-prod-card {
      background: var(--ml-branco);
      border-radius: var(--ml-radius-lg);
      padding: 1rem 1rem 1.25rem;
      text-align: center;
      box-shadow: var(--ml-shadow-lg);
      display: flex;
      flex-direction: column;
      transition: transform var(--ml-transition), box-shadow var(--ml-transition);
    }
    .pou-lp .ml-prod-card:hover {
      transform: translateY(-6px);
    }
    .pou-lp .ml-prod-img {
      width: 100%;
      height: auto;
      margin: 0 auto 0.5rem;
    }
    .pou-lp .ml-prod-frete {
      display: inline-block;
      align-self: center;
      font-size: 0.72rem;
      font-weight: 700;
      letter-spacing: 0.04em;
      color: #1f9d55;
      margin-bottom: 0.5rem;
    }
    .pou-lp .ml-prod-name {
      font-size: 0.95rem;
      color: var(--ml-text);
      margin-bottom: 0.4rem;
      min-height: 2.6em;
    }
    .pou-lp .ml-prod-price {
      font-family: 'Rubik', sans-serif;
      font-weight: 800;
      font-size: 1.35rem;
      color: var(--ml-text);
    }
    .pou-lp .ml-prod-parcela {
      font-size: 0.82rem;
      color: var(--ml-text-light);
      margin-bottom: 1rem;
    }
    .pou-lp .ml-prod-card .ml-btn {
      margin-top: auto;
    }
    .pou-lp .ml-variante-card {
      background: var(--ml-branco);
      border-radius: var(--ml-radius-lg);
      padding: 28px 20px;
      text-align: center;
      box-shadow: var(--ml-shadow);
      transition: transform var(--ml-transition), box-shadow var(--ml-transition);
      border: 2px solid transparent;
    }
    .pou-lp .ml-variante-card:hover {
      transform: translateY(-6px);
      box-shadow: var(--ml-shadow-lg);
    }
    .pou-lp .ml-variante-card--rosita:hover {
      border-color: var(--ml-coral-light);
    }
    .pou-lp .ml-variante-card--caquito:hover {
      border-color: var(--ml-turquesa);
    }
    .pou-lp .ml-variante-card--verde:hover {
      border-color: #4bb98c;
    }
    .pou-lp .ml-variante-icon {
      width: 64px;
      height: 64px;
      border-radius: 50%;
      margin: 0 auto 14px;
      display: flex;
      align-items: center;
      justify-content: center;
    }
    .pou-lp .ml-variante-icon--rosita {
      background: linear-gradient(135deg, #FF6B6B, #FF8FA3);
    }
    .pou-lp .ml-variante-icon--caquito {
      background: linear-gradient(135deg, var(--ml-turquesa), #7EEAF5);
    }
    .pou-lp .ml-variante-icon--verde {
      background: linear-gradient(135deg, #4bb98c, #7EEAB5);
    }
    .pou-lp .ml-variante-icon svg {
      width: 28px;
      height: 28px;
      color: var(--ml-branco);
      stroke: var(--ml-branco);
    }
    .pou-lp .ml-variante-name {
      font-family: 'Rubik', sans-serif;
      font-weight: 700;
      font-size: 1.15rem;
      margin-bottom: 4px;
    }
    .pou-lp .ml-variante-desc {
      font-size: var(--ml-font-small);
      color: var(--ml-text-muted);
    }
    .pou-lp .ml-produto-images {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 16px;
    }
    .pou-lp .ml-produto-images img {
      width: 100%;
      height: auto;
      border-radius: var(--ml-radius-xl);
      box-shadow: var(--ml-shadow-lg);
      transition: transform var(--ml-transition);
    }
    .pou-lp .ml-produto-images img:hover {
      transform: scale(1.03);
    }

    /* ========================================
       BENEFICIOS — Asymmetric Grid
    ======================================== */
    .pou-lp .ml-beneficios {
      background: var(--ml-branco);
      position: relative;
    }
    .pou-lp .ml-beneficios-grid {
      display: grid;
      grid-template-columns: 1fr;
      gap: 20px;
    }
    @media (min-width: 768px) {
      .pou-lp .ml-beneficios-grid {
        grid-template-columns: repeat(2, 1fr);
      }
      /* First 2 cards larger */
      .pou-lp .ml-beneficio-card:nth-child(1),
      .pou-lp .ml-beneficio-card:nth-child(2) {
        padding: 40px 32px;
      }
      .pou-lp .ml-beneficio-card:nth-child(1) .ml-beneficio-title,
      .pou-lp .ml-beneficio-card:nth-child(2) .ml-beneficio-title {
        font-size: 1.2rem;
      }
    }
    @media (min-width: 1024px) {
      .pou-lp .ml-beneficios-grid {
        grid-template-columns: repeat(2, 1fr);
        grid-template-rows: auto auto auto;
      }
      .pou-lp .ml-beneficio-card:nth-child(1) {
        grid-column: 1;
        grid-row: 1;
      }
      .pou-lp .ml-beneficio-card:nth-child(2) {
        grid-column: 2;
        grid-row: 1;
      }
      .pou-lp .ml-beneficio-card:nth-child(3) {
        grid-column: 1;
      }
      .pou-lp .ml-beneficio-card:nth-child(4) {
        grid-column: 2;
      }
      .pou-lp .ml-beneficio-card:nth-child(5) {
        grid-column: 1;
      }
      .pou-lp .ml-beneficio-card:nth-child(6) {
        grid-column: 2;
      }
    }
    .pou-lp .ml-beneficio-card {
      background: var(--ml-off-white);
      border-radius: var(--ml-radius-lg);
      padding: 32px 28px;
      border: 2px solid rgba(47,193,220,0.06);
      transition: transform var(--ml-transition), box-shadow var(--ml-transition), border-color var(--ml-transition), background var(--ml-transition);
    }
    .pou-lp .ml-beneficio-card:hover {
      transform: translateY(-6px) scale(1.02);
      box-shadow: var(--ml-shadow-lg);
      border-color: var(--ml-turquesa);
      background: var(--ml-branco);
    }
    .pou-lp .ml-beneficio-icon {
      width: 48px;
      height: 48px;
      border-radius: 14px;
      background: linear-gradient(135deg, var(--ml-turquesa), var(--ml-turquesa-dark));
      display: flex;
      align-items: center;
      justify-content: center;
      margin-bottom: 20px;
      transition: background var(--ml-transition);
    }
    .pou-lp .ml-beneficio-card:hover .ml-beneficio-icon {
      background: linear-gradient(135deg, var(--ml-amarelo), var(--ml-amarelo-hover));
    }
    .pou-lp .ml-beneficio-icon svg {
      width: 24px;
      height: 24px;
      stroke: var(--ml-branco);
      fill: none;
      stroke-width: 2;
      stroke-linecap: round;
      stroke-linejoin: round;
    }
    .pou-lp .ml-beneficio-title {
      font-family: 'Rubik', sans-serif;
      font-weight: 700;
      font-size: 1.1rem;
      margin-bottom: 8px;
      color: var(--ml-text);
    }
    .pou-lp .ml-beneficio-desc {
      font-size: var(--ml-font-body);
      color: var(--ml-text-light);
      line-height: 1.6;
    }
    .pou-lp .ml-beneficios-cta {
      text-align: center;
      margin-top: 56px;
    }

    /* ========================================
       CTA MID — Bold block
    ======================================== */
    .pou-lp .ml-cta-mid {
      background: var(--ml-turquesa-deep);
      color: var(--ml-branco);
      text-align: center;
      padding: 72px 20px;
      position: relative;
      overflow: hidden;
    }
    .pou-lp .ml-cta-mid::before {
      content: '';
      position: absolute;
      width: 400px;
      height: 400px;
      background: radial-gradient(circle, rgba(255,183,3,0.15), transparent 70%);
      top: -150px;
      left: -100px;
      pointer-events: none;
    }
    .pou-lp .ml-cta-mid .ml-section-title {
      color: var(--ml-branco);
    }
    .pou-lp .ml-cta-mid .ml-section-sub {
      color: rgba(255,255,255,0.88);
    }

    /* ========================================
       DEMONSTRACAO
    ======================================== */
    .pou-lp .ml-demo {
      background: var(--ml-sand);
      position: relative;
    }
    .pou-lp .ml-demo-grid {
      display: grid;
      grid-template-columns: 1fr;
      gap: 24px;
    }
    @media (min-width: 768px) {
      .pou-lp .ml-demo-grid {
        grid-template-columns: repeat(3, 1fr);
      }
    }
    .pou-lp .ml-demo-card {
      border-radius: var(--ml-radius-lg);
      overflow: hidden;
      background: var(--ml-branco);
      box-shadow: var(--ml-shadow);
      transition: transform var(--ml-transition), box-shadow var(--ml-transition);
    }
    .pou-lp .ml-demo-card:hover {
      transform: translateY(-6px);
      box-shadow: var(--ml-shadow-lg);
    }
    .pou-lp .ml-demo-card img {
      width: 100%;
      height: auto;
      aspect-ratio: 1;
      object-fit: cover;
    }
    .pou-lp .ml-demo-label {
      display: block;
      text-align: center;
      font-family: 'Rubik', sans-serif;
      font-weight: 600;
      font-size: var(--ml-font-small);
      color: var(--ml-text);
      padding: 16px 12px;
    }
    .pou-lp .ml-demo-cta {
      text-align: center;
      margin-top: 48px;
    }

    /* ========================================
       PROVA SOCIAL — Masonry-like
    ======================================== */
    .pou-lp .ml-social {
      background: var(--ml-branco);
      position: relative;
    }
    .pou-lp .ml-reviews-grid {
      display: grid;
      grid-template-columns: 1fr;
      gap: 20px;
    }
    @media (min-width: 768px) {
      .pou-lp .ml-reviews-grid {
        grid-template-columns: repeat(2, 1fr);
      }
      /* Masonry-like: alternating heights */
      .pou-lp .ml-review-card:nth-child(1) { grid-column: 1; }
      .pou-lp .ml-review-card:nth-child(2) { grid-column: 2; }
      .pou-lp .ml-review-card:nth-child(3) { grid-column: 1; }
      .pou-lp .ml-review-card:nth-child(4) { grid-column: 2; }
      .pou-lp .ml-review-card:nth-child(5) { grid-column: 1 / -1; max-width: 600px; margin-inline: auto; }
    }
    @media (min-width: 1024px) {
      .pou-lp .ml-reviews-grid {
        grid-template-columns: repeat(3, 1fr);
      }
      .pou-lp .ml-review-card:nth-child(1) { grid-column: 1; }
      .pou-lp .ml-review-card:nth-child(2) { grid-column: 2; }
      .pou-lp .ml-review-card:nth-child(3) { grid-column: 3; }
      .pou-lp .ml-review-card:nth-child(4) { grid-column: 1; grid-column-end: span 1; }
      .pou-lp .ml-review-card:nth-child(5) { grid-column: 2; grid-column-end: span 2; max-width: none; margin-inline: 0; }
    }
    .pou-lp .ml-review-card {
      background: var(--ml-off-white);
      border-radius: var(--ml-radius-lg);
      padding: 32px 28px;
      border: 2px solid rgba(47,193,220,0.06);
      transition: transform var(--ml-transition), border-color var(--ml-transition);
    }
    .pou-lp .ml-review-card:hover {
      transform: translateY(-4px);
      border-color: var(--ml-amarelo);
    }
    .pou-lp .ml-review-stars {
      display: flex;
      gap: 3px;
      margin-bottom: 16px;
    }
    .pou-lp .ml-review-stars svg {
      width: 18px;
      height: 18px;
      fill: var(--ml-amarelo);
    }
    .pou-lp .ml-review-text {
      font-size: var(--ml-font-body);
      color: var(--ml-text-light);
      line-height: 1.7;
      margin-bottom: 20px;
      font-style: italic;
    }
    .pou-lp .ml-review-footer {
      display: flex;
      align-items: center;
      justify-content: space-between;
    }
    .pou-lp .ml-review-author {
      font-family: 'Rubik', sans-serif;
      font-weight: 700;
      font-size: var(--ml-font-body);
      color: var(--ml-text);
    }
    .pou-lp .ml-review-verified {
      display: inline-flex;
      align-items: center;
      gap: 4px;
      font-size: 0.75rem;
      color: var(--ml-green-trust);
      font-weight: 600;
    }
    .pou-lp .ml-review-verified svg {
      width: 14px;
      height: 14px;
      stroke: var(--ml-green-trust);
      fill: none;
      stroke-width: 2.5;
    }

    /* Numbers */
    .pou-lp .ml-numeros {
      display: flex;
      justify-content: center;
      gap: 56px;
      flex-wrap: wrap;
      margin-top: 56px;
      padding-top: 48px;
      border-top: 2px solid rgba(47,193,220,0.1);
    }
    .pou-lp .ml-numero-item {
      text-align: center;
    }
    .pou-lp .ml-numero-value {
      font-family: 'Rubik', sans-serif;
      font-weight: 800;
      font-size: clamp(2rem, 4.5vw, 2.8rem);
      color: var(--ml-turquesa-deep);
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 6px;
    }
    .pou-lp .ml-numero-value svg {
      width: 24px;
      height: 24px;
      fill: var(--ml-amarelo);
    }
    .pou-lp .ml-numero-label {
      font-size: var(--ml-font-small);
      color: var(--ml-text-muted);
      font-weight: 600;
      margin-top: 4px;
    }

    /* ========================================
       PARA QUEM E
    ======================================== */
    .pou-lp .ml-paraquem {
      background: var(--ml-turquesa-deep);
      color: var(--ml-branco);
      position: relative;
      overflow: hidden;
    }
    .pou-lp .ml-paraquem::before {
      content: '';
      position: absolute;
      width: 600px;
      height: 600px;
      background: radial-gradient(circle, rgba(255,183,3,0.08), transparent 70%);
      bottom: -200px;
      right: -150px;
      pointer-events: none;
    }
    .pou-lp .ml-paraquem .ml-section-label {
      color: var(--ml-amarelo);
    }
    .pou-lp .ml-paraquem .ml-section-title {
      color: var(--ml-branco);
    }
    .pou-lp .ml-paraquem-list {
      max-width: 720px;
      margin: 0 auto 48px;
      position: relative;
      z-index: 2;
    }
    .pou-lp .ml-paraquem-item {
      display: flex;
      align-items: flex-start;
      gap: 20px;
      padding: 24px 0;
      border-bottom: 1px solid rgba(255,255,255,0.12);
    }
    .pou-lp .ml-paraquem-item:last-child {
      border-bottom: none;
    }
    .pou-lp .ml-paraquem-check {
      flex-shrink: 0;
      width: 36px;
      height: 36px;
      border-radius: 50%;
      background: var(--ml-amarelo);
      display: flex;
      align-items: center;
      justify-content: center;
      margin-top: 2px;
    }
    .pou-lp .ml-paraquem-check svg {
      width: 20px;
      height: 20px;
      stroke: var(--ml-text);
      fill: none;
      stroke-width: 3;
      stroke-linecap: round;
      stroke-linejoin: round;
    }
    .pou-lp .ml-paraquem-text {
      font-size: 1.1rem;
      color: rgba(255,255,255,0.92);
      line-height: 1.6;
      padding-top: 6px;
    }
    .pou-lp .ml-paraquem-cta {
      text-align: center;
      position: relative;
      z-index: 2;
    }

    /* ========================================
       FAQ
    ======================================== */
    .pou-lp .ml-faq {
      background: var(--ml-branco);
    }
    .pou-lp .ml-faq-list {
      max-width: 760px;
      margin: 0 auto;
    }
    .pou-lp .ml-faq-item {
      border-bottom: 2px solid rgba(47,193,220,0.08);
    }
    .pou-lp .ml-faq-item summary {
      display: flex;
      align-items: center;
      justify-content: space-between;
      padding: 24px 0;
      cursor: pointer;
      font-family: 'Rubik', sans-serif;
      font-weight: 600;
      font-size: 1.1rem;
      color: var(--ml-text);
      list-style: none;
      transition: color var(--ml-transition);
    }
    .pou-lp .ml-faq-item summary::-webkit-details-marker {
      display: none;
    }
    .pou-lp .ml-faq-item summary::after {
      content: '+';
      display: flex;
      align-items: center;
      justify-content: center;
      width: 36px;
      height: 36px;
      border-radius: 50%;
      background: var(--ml-off-white);
      font-size: 1.4rem;
      font-weight: 500;
      color: var(--ml-turquesa-deep);
      transition: transform var(--ml-transition), background var(--ml-transition), color var(--ml-transition);
      flex-shrink: 0;
      margin-left: 16px;
    }
    .pou-lp .ml-faq-item[open] summary::after {
      transform: rotate(45deg);
      background: var(--ml-turquesa-deep);
      color: var(--ml-branco);
    }
    .pou-lp .ml-faq-item[open] summary {
      color: var(--ml-turquesa-deep);
    }
    .pou-lp .ml-faq-answer {
      padding: 0 0 24px;
      font-size: var(--ml-font-body);
      color: var(--ml-text-light);
      line-height: 1.75;
      max-width: 680px;
    }

    /* ========================================
       CTA FINAL
    ======================================== */
    .pou-lp .ml-cta-final {
      background: linear-gradient(160deg, #063C45, var(--ml-turquesa-deep), var(--ml-turquesa-dark));
      color: var(--ml-branco);
      text-align: center;
      position: relative;
      overflow: hidden;
    }
    .pou-lp .ml-cta-final::before {
      content: '';
      position: absolute;
      width: 600px;
      height: 600px;
      background: radial-gradient(circle, rgba(255,183,3,0.12), transparent 70%);
      top: -250px;
      right: -150px;
      pointer-events: none;
    }
    .pou-lp .ml-cta-final::after {
      content: '';
      position: absolute;
      width: 400px;
      height: 400px;
      background: radial-gradient(circle, rgba(255,107,107,0.06), transparent 70%);
      bottom: -150px;
      left: -100px;
      pointer-events: none;
    }
    .pou-lp .ml-cta-final .ml-section-label {
      color: var(--ml-amarelo);
    }
    .pou-lp .ml-cta-final .ml-section-title {
      color: var(--ml-branco);
    }
    .pou-lp .ml-price-box {
      background: rgba(255,255,255,0.08);
      border: 2px solid rgba(255,255,255,0.15);
      border-radius: var(--ml-radius-xl);
      padding: 32px 40px;
      display: inline-block;
      margin-bottom: 32px;
      backdrop-filter: blur(12px);
      position: relative;
      z-index: 2;
    }
    .pou-lp .ml-price-main {
      font-family: 'Rubik', sans-serif;
      font-size: clamp(2.2rem, 5vw, 3.2rem);
      font-weight: 800;
      color: var(--ml-amarelo);
    }
    .pou-lp .ml-price-pix {
      font-size: 1.15rem;
      color: var(--ml-branco);
      margin-top: 8px;
    }
    .pou-lp .ml-price-pix strong {
      font-weight: 700;
    }
    .pou-lp .ml-price-parcela {
      font-size: 0.95rem;
      color: rgba(255,255,255,0.8);
      margin-top: 4px;
    }
    .pou-lp .ml-price-frete {
      display: inline-flex;
      align-items: center;
      gap: 6px;
      font-family: 'Rubik', sans-serif;
      font-weight: 700;
      font-size: 0.9rem;
      color: var(--ml-green-trust);
      margin-top: 12px;
      text-transform: uppercase;
      letter-spacing: 0.04em;
    }
    .pou-lp .ml-price-frete svg {
      width: 18px;
      height: 18px;
      stroke: var(--ml-green-trust);
      fill: none;
      stroke-width: 2;
    }
    .pou-lp .ml-cta-final-body {
      font-size: 1.15rem;
      color: rgba(255,255,255,0.88);
      max-width: 640px;
      margin: 0 auto 44px;
      line-height: 1.7;
      position: relative;
      z-index: 2;
    }
    .pou-lp .ml-cta-final-buttons {
      display: flex;
      gap: 20px;
      justify-content: center;
      flex-wrap: wrap;
      position: relative;
      z-index: 2;
    }

    /* ========================================
       V4: Pulse CTA Animation
    ======================================== */
    @keyframes ml-pulse {
      0%, 100% { box-shadow: 0 4px 16px rgba(255,183,3,0.3); }
      50% { box-shadow: 0 4px 28px rgba(255,183,3,0.6), 0 0 0 8px rgba(255,183,3,0.1); }
    }
    @keyframes ml-pulse-coral {
      0%, 100% { box-shadow: 0 4px 16px rgba(255,107,107,0.3); }
      50% { box-shadow: 0 4px 28px rgba(255,107,107,0.6), 0 0 0 8px rgba(255,107,107,0.1); }
    }
    .pou-lp .ml-btn--pulse {
      animation: ml-pulse 2.5s ease-in-out infinite;
    }
    .pou-lp .ml-btn--pulse:hover {
      animation: none;
    }
    .pou-lp .ml-btn--coral.ml-btn--pulse {
      animation: ml-pulse-coral 2.5s ease-in-out infinite;
    }
    .pou-lp .ml-btn--coral.ml-btn--pulse:hover {
      animation: none;
    }
    @media (prefers-reduced-motion: reduce) {
      .pou-lp .ml-btn--pulse { animation: none !important; }
    }

    /* ========================================
       V4: Stock Scarcity Bar
    ======================================== */
    .pou-lp .ml-stock-bar {
      max-width: 420px;
      margin: 0 auto 2rem;
      position: relative;
      z-index: 2;
    }
    .pou-lp .ml-stock-label {
      display: flex;
      justify-content: space-between;
      align-items: center;
      font-family: 'Rubik', sans-serif;
      font-weight: 600;
      font-size: 0.85rem;
      margin-bottom: 8px;
    }
    .pou-lp .ml-stock-label-text {
      color: var(--ml-amarelo);
      text-transform: uppercase;
      letter-spacing: 0.05em;
    }
    .pou-lp .ml-stock-label-count {
      color: rgba(255,255,255,0.7);
    }
    .pou-lp .ml-stock-track {
      width: 100%;
      height: 10px;
      background: rgba(255,255,255,0.12);
      border-radius: 10px;
      overflow: hidden;
    }
    .pou-lp .ml-stock-fill {
      height: 100%;
      border-radius: 10px;
      background: linear-gradient(90deg, var(--ml-coral), var(--ml-amarelo));
      transition: width 1.5s ease-out;
    }

    /* ========================================
       TRUST / SELOS
    ======================================== */
    .pou-lp .ml-trust {
      background: var(--ml-off-white);
      padding: 48px 20px;
      text-align: center;
    }
    .pou-lp .ml-trust-items {
      display: flex;
      justify-content: center;
      gap: 48px;
      flex-wrap: wrap;
    }
    .pou-lp .ml-trust-item {
      display: flex;
      align-items: center;
      gap: 12px;
      font-family: 'Rubik', sans-serif;
      font-weight: 600;
      font-size: var(--ml-font-body);
      color: var(--ml-text);
    }
    .pou-lp .ml-trust-icon {
      width: 44px;
      height: 44px;
      border-radius: 14px;
      background: var(--ml-turquesa-deep);
      display: flex;
      align-items: center;
      justify-content: center;
      flex-shrink: 0;
    }
    .pou-lp .ml-trust-icon svg {
      width: 22px;
      height: 22px;
      stroke: var(--ml-branco);
      fill: none;
      stroke-width: 2;
      stroke-linecap: round;
      stroke-linejoin: round;
    }

    /* ========================================
       FOOTER
    ======================================== */
    .pou-lp .ml-footer {
      background: #063C45;
      color: rgba(255,255,255,0.6);
      padding: 48px 20px;
      text-align: center;
    }
    .pou-lp .ml-footer-logo {
      margin-bottom: 16px;
    }
    .pou-lp .ml-footer-logo img {
      height: 36px;
      width: auto;
      margin: 0 auto;
      filter: none;
      opacity: 1;
    }
    .pou-lp .ml-footer-copy {
      font-size: var(--ml-font-small);
    }
    .pou-lp .ml-footer-links {
      display: flex;
      justify-content: center;
      gap: 28px;
      margin-top: 20px;
    }
    .pou-lp .ml-footer-links a {
      display: flex;
      align-items: center;
      gap: 6px;
      color: rgba(255,255,255,0.5);
      font-size: var(--ml-font-small);
      font-weight: 600;
      transition: color var(--ml-transition);
      cursor: pointer;
    }
    .pou-lp .ml-footer-links a:hover {
      color: var(--ml-branco);
    }
    .pou-lp .ml-footer-links a svg {
      width: 16px;
      height: 16px;
      fill: currentColor;
    }

    /* ========================================
       WA FLUTUANTE
    ======================================== */
    .pou-lp .ml-wa-float {
      position: fixed;
      bottom: 24px;
      right: 24px;
      z-index: 150;
      width: 60px;
      height: 60px;
      border-radius: 50%;
      background: var(--ml-green-wa);
      display: flex;
      align-items: center;
      justify-content: center;
      box-shadow: 0 4px 20px rgba(37,211,102,0.45);
      transition: transform var(--ml-transition), box-shadow var(--ml-transition);
      animation: ml-wa-pulse 2.5s ease-in-out infinite;
      cursor: pointer;
    }
    .pou-lp .ml-wa-float:hover {
      transform: scale(1.12);
      animation: none;
      box-shadow: 0 6px 28px rgba(37,211,102,0.6);
    }
    @keyframes ml-wa-pulse {
      0%, 100% { box-shadow: 0 4px 20px rgba(37,211,102,0.45); }
      50% { box-shadow: 0 4px 32px rgba(37,211,102,0.75); }
    }

    /* ========================================
       STICKY CTA MOBILE
    ======================================== */
    .pou-lp .ml-sticky-cta {
      display: none;
      position: fixed;
      bottom: 0;
      left: 0;
      right: 0;
      z-index: 900;
      background: var(--ml-turquesa-deep);
      padding: 14px 20px;
      box-shadow: 0 -4px 24px rgba(0,0,0,0.25);
    }
    .pou-lp .ml-sticky-btn {
      display: block;
      width: 100%;
      background: var(--ml-amarelo);
      color: var(--ml-text);
      border: none;
      border-radius: var(--ml-radius);
      padding: 16px;
      font-family: 'Rubik', sans-serif;
      font-size: 1rem;
      font-weight: 700;
      cursor: pointer;
      transition: background var(--ml-transition);
      text-align: center;
    }
    .pou-lp .ml-sticky-btn:hover {
      background: var(--ml-amarelo-hover);
    }
    @media (max-width: 640px) {
      .pou-lp .ml-sticky-cta {
        display: block;
      }
      .pou-lp .ml-wa-float {
        bottom: 90px;
      }
      .pou-lp {
        padding-bottom: 80px;
      }
    }

    /* ========================================
       PERFORMANCE
    ======================================== */
    .pou-lp .ml-social,
    .pou-lp .ml-faq,
    .pou-lp .ml-paraquem,
    .pou-lp .ml-footer {
      content-visibility: auto;
      contain-intrinsic-size: 0 500px;
    }/* End custom CSS */