*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }/*! tailwindcss v3.4.13 | MIT License | https://tailwindcss.com*/*,:after,:before{box-sizing:border-box;border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]{display:none}.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.absolute{position:absolute}.relative{position:relative}.-top-4{top:-1rem}.left-1\/2{left:50%}.right-3{right:.75rem}.top-3{top:.75rem}.mx-0\.5{margin-left:.125rem;margin-right:.125rem}.mx-auto{margin-left:auto;margin-right:auto}.my-5{margin-top:1.25rem;margin-bottom:1.25rem}.my-6{margin-top:1.5rem;margin-bottom:1.5rem}.mb-1{margin-bottom:.25rem}.mb-10{margin-bottom:2.5rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-1\.5{margin-top:.375rem}.mt-10{margin-top:2.5rem}.mt-12{margin-top:3rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.mt-auto{margin-top:auto}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.hidden{display:none}.aspect-square{aspect-ratio:1/1}.h-10{height:2.5rem}.h-5{height:1.25rem}.h-7{height:1.75rem}.h-9{height:2.25rem}.h-auto{height:auto}.w-10{width:2.5rem}.w-5{width:1.25rem}.w-7{width:1.75rem}.w-9{width:2.25rem}.w-full{width:100%}.max-w-2xl{max-width:42rem}.max-w-\[340px\]{max-width:340px}.max-w-\[420px\]{max-width:420px}.max-w-\[640px\]{max-width:640px}.max-w-\[720px\]{max-width:720px}.max-w-container{max-width:760px}.max-w-md{max-width:28rem}.max-w-wide{max-width:1280px}.max-w-xl{max-width:36rem}.flex-1{flex:1 1 0%}.flex-shrink{flex-shrink:1}.flex-shrink-0{flex-shrink:0}.-translate-x-1\/2{--tw-translate-x:-50%}.-translate-x-1\/2,.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.flex-col{flex-direction:column}.items-start{align-items:flex-start}.items-center{align-items:center}.justify-center{justify-content:center}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.space-y-0>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(0px*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(0px*var(--tw-space-y-reverse))}.space-y-1\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.375rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.375rem*var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.5rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem*var(--tw-space-y-reverse))}.overflow-hidden{overflow:hidden}.whitespace-nowrap{white-space:nowrap}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-3xl{border-radius:1.5rem}.rounded-full{border-radius:9999px}.rounded-md{border-radius:.375rem}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-\[\#3A1B09\]\/5{border-color:rgba(58,27,9,.05)}.border-white\/15{border-color:hsla(0,0%,100%,.15)}.bg-\[\#1A0A04\]{--tw-bg-opacity:1;background-color:rgb(26 10 4/var(--tw-bg-opacity))}.bg-\[\#333333\]{--tw-bg-opacity:1;background-color:rgb(51 51 51/var(--tw-bg-opacity))}.bg-\[\#39B574\]{--tw-bg-opacity:1;background-color:rgb(57 181 116/var(--tw-bg-opacity))}.bg-\[\#3A1B09\]{--tw-bg-opacity:1;background-color:rgb(58 27 9/var(--tw-bg-opacity))}.bg-\[\#8CEE7A\]{--tw-bg-opacity:1;background-color:rgb(140 238 122/var(--tw-bg-opacity))}.bg-\[\#E6DCCB\]{--tw-bg-opacity:1;background-color:rgb(230 220 203/var(--tw-bg-opacity))}.bg-\[\#E7B66F\]{--tw-bg-opacity:1;background-color:rgb(231 182 111/var(--tw-bg-opacity))}.bg-\[\#EE6352\]{--tw-bg-opacity:1;background-color:rgb(238 99 82/var(--tw-bg-opacity))}.bg-\[\#F1C40F\]{--tw-bg-opacity:1;background-color:rgb(241 196 15/var(--tw-bg-opacity))}.bg-\[\#F6F0DA\]{--tw-bg-opacity:1;background-color:rgb(246 240 218/var(--tw-bg-opacity))}.bg-\[\#F6FFF6\]{--tw-bg-opacity:1;background-color:rgb(246 255 246/var(--tw-bg-opacity))}.bg-\[\#F8FDFF\]{--tw-bg-opacity:1;background-color:rgb(248 253 255/var(--tw-bg-opacity))}.bg-\[\#FBDEDA\]{--tw-bg-opacity:1;background-color:rgb(251 222 218/var(--tw-bg-opacity))}.bg-\[\#FDF6F7\]{--tw-bg-opacity:1;background-color:rgb(253 246 247/var(--tw-bg-opacity))}.bg-\[\#FF2C2C\]{--tw-bg-opacity:1;background-color:rgb(255 44 44/var(--tw-bg-opacity))}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity))}.object-cover{-o-object-fit:cover;object-fit:cover}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.px-0{padding-left:0;padding-right:0}.px-2{padding-left:.5rem;padding-right:.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-14{padding-top:3.5rem;padding-bottom:3.5rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pb-16{padding-bottom:4rem}.pb-8{padding-bottom:2rem}.pt-14{padding-top:3.5rem}.pt-4{padding-top:1rem}.pt-5{padding-top:1.25rem}.text-left{text-align:left}.text-center{text-align:center}.align-middle{vertical-align:middle}.font-sans{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.text-2xl{font-size:1.5rem;line-height:2rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[28px\]{font-size:28px}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-extrabold{font-weight:800}.font-normal{font-weight:400}.uppercase{text-transform:uppercase}.italic{font-style:italic}.leading-\[1\.05\]{line-height:1.05}.leading-none{line-height:1}.leading-relaxed{line-height:1.625}.leading-snug{line-height:1.375}.leading-tight{line-height:1.25}.tracking-\[0\.18em\]{letter-spacing:.18em}.tracking-tight{letter-spacing:-.025em}.tracking-wide{letter-spacing:.025em}.tracking-wider{letter-spacing:.05em}.text-\[\#333\]{--tw-text-opacity:1;color:rgb(51 51 51/var(--tw-text-opacity))}.text-\[\#333\]\/80{color:rgba(51,51,51,.8)}.text-\[\#39B574\]{--tw-text-opacity:1;color:rgb(57 181 116/var(--tw-text-opacity))}.text-\[\#3A1B09\]{--tw-text-opacity:1;color:rgb(58 27 9/var(--tw-text-opacity))}.text-\[\#3A1B09\]\/70{color:rgba(58,27,9,.7)}.text-\[\#3A1B09\]\/80{color:rgba(58,27,9,.8)}.text-\[\#666\]{--tw-text-opacity:1;color:rgb(102 102 102/var(--tw-text-opacity))}.text-\[\#8CEE7A\]{--tw-text-opacity:1;color:rgb(140 238 122/var(--tw-text-opacity))}.text-\[\#E7B66F\]{--tw-text-opacity:1;color:rgb(231 182 111/var(--tw-text-opacity))}.text-\[\#EE6352\]{--tw-text-opacity:1;color:rgb(238 99 82/var(--tw-text-opacity))}.text-\[\#FF8A80\]{--tw-text-opacity:1;color:rgb(255 138 128/var(--tw-text-opacity))}.text-gray-500{--tw-text-opacity:1;color:rgb(107 114 128/var(--tw-text-opacity))}.text-green-900{--tw-text-opacity:1;color:rgb(20 83 45/var(--tw-text-opacity))}.text-red-400{--tw-text-opacity:1;color:rgb(248 113 113/var(--tw-text-opacity))}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}.text-white\/60{color:hsla(0,0%,100%,.6)}.text-white\/80{color:hsla(0,0%,100%,.8)}.text-white\/90{color:hsla(0,0%,100%,.9)}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.opacity-90{opacity:.9}.shadow{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color)}.shadow,.shadow-cardLg{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-cardLg{--tw-shadow:0 12px 28px rgba(0,0,0,.25);--tw-shadow-colored:0 12px 28px var(--tw-shadow-color)}.shadow-lg{--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.shadow-lg,.shadow-md{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color)}.shadow-sm{--tw-shadow:0 1px 2px 0 rgba(0,0,0,.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.grayscale{--tw-grayscale:grayscale(100%);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}@media (min-width:640px){.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:768px){.md\:block{display:block}.md\:w-auto{width:auto}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:justify-start{justify-content:flex-start}.md\:gap-4{gap:1rem}.md\:p-10{padding:2.5rem}.md\:p-8{padding:2rem}.md\:px-10{padding-left:2.5rem;padding-right:2.5rem}.md\:py-12{padding-top:3rem;padding-bottom:3rem}.md\:py-14{padding-top:3.5rem;padding-bottom:3.5rem}.md\:py-16{padding-top:4rem;padding-bottom:4rem}.md\:py-20{padding-top:5rem;padding-bottom:5rem}.md\:pb-10{padding-bottom:2.5rem}.md\:pb-12{padding-bottom:3rem}.md\:pt-20{padding-top:5rem}.md\:text-2xl{font-size:1.5rem;line-height:2rem}.md\:text-3xl{font-size:1.875rem;line-height:2.25rem}.md\:text-4xl{font-size:2.25rem;line-height:2.5rem}.md\:text-5xl{font-size:3rem;line-height:1}.md\:text-\[44px\]{font-size:44px}.md\:text-base{font-size:1rem;line-height:1.5rem}.md\:text-lg{font-size:1.125rem;line-height:1.75rem}.md\:text-sm{font-size:.875rem;line-height:1.25rem}.md\:text-xl{font-size:1.25rem;line-height:1.75rem}.md\:text-xs{font-size:.75rem;line-height:1rem}}@media (min-width:1024px){.lg\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}}
:root {
      --primary:        #39B574;
      --primary-hover:  #2E9D5F;
      --secondary:      #E7B66F;
      --accent:         #F1C40F;
      --urgency:        #EE6352;
      --danger:         #FF2C2C;
      --background:        #3A1B09;
      --background-soft:   #F6F0DA;
      --background-light:  #FDF6F7;
      --background-mint:   #F6FFF6;
      --text:        #202020;
      --text-body:   #333333;
      --text-invert: #FCFCFC;
      --text-muted:  rgba(58, 27, 9, 0.6);

      --font-sans: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;

      --shadow-cta: 0 6px 16px rgba(57,181,116,.35);
      --grad-bg:    radial-gradient(ellipse at top, #4A2410 0%, #3A1B09 60%, #2A1306 100%);
      --grad-cta:   linear-gradient(180deg, #39B574 0%, #2E9D5F 100%);
      --grad-badge: linear-gradient(135deg, #F08947 0%, #E7B66F 100%);
      --grad-alert: linear-gradient(90deg, #EE6352 0%, #E55747 100%);
    }

    html { scroll-behavior: smooth; }

    /* ===== Paleta Boneca de Papel ===== */
    .bg-pink-brand    { background-color: #FF6BA8 !important; }
    .bg-pink-soft     { background-color: #FBDEDA !important; }
    .bg-purple-deep   { background-color: #4A2A5C !important; }
    .bg-purple-darker { background-color: #2A1638 !important; }
    .bg-mint-soft     { background-color: #F6FFF6 !important; }
    .bg-cream-warm    { background-color: #FDF6F7 !important; }
    .text-pink-brand  { color: #FF6BA8 !important; }
    .text-gold-soft   { color: #F4C84A !important; }
    .border-pink-soft { border-color: #FBDEDA !important; }

    /* Contraste estrutural: toda superficie define uma cor de texto segura.
       A adaptacao de paleta deve atualizar estes pares, nunca somente o fundo. */
    .text-ink         { color: #3A1B09 !important; }
    .text-ink-muted   { color: rgba(58, 27, 9, .70) !important; }
    .text-ink-subtle  { color: rgba(58, 27, 9, .75) !important; }
    .text-ink-soft    { color: rgba(58, 27, 9, .80) !important; }
    .text-on-dark     { color: #FFFFFF !important; }

    .bg-white,
    .bg-cream-warm,
    .bg-pink-soft,
    .bg-mint-soft { color: #3A1B09; }

    .bg-pink-brand,
    .bg-purple-deep,
    .bg-purple-darker { color: #FFFFFF; }

    body {
      background: var(--background);
      background-image: var(--grad-bg);
      color: var(--text-invert);
      font-family: var(--font-sans);
      font-size: 16px;
      line-height: 1.6;
      margin: 0;
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
    }

    h1, h2 { font-weight: 800; line-height: 1.05; letter-spacing: -0.5px; }
    h3, h4 { font-weight: 700; line-height: 1.2; }

    /* CTA Primário */
    .cta {
      display: inline-block;
      background: var(--primary);
      color: #173426;
      padding: 18px 36px;
      font: 600 18px/1.2 var(--font-sans);
      border-radius: 3px;
      letter-spacing: 0.5px;
      text-transform: uppercase;
      text-decoration: none;
      border: none;
      cursor: pointer;
      box-shadow: var(--shadow-cta);
      transition: all 0.25s cubic-bezier(.4,0,.2,1);
    }
    .cta:hover {
      background: var(--primary-hover);
      transform: translateY(-2px);
      box-shadow: 0 10px 24px rgba(57,181,116,0.45);
    }
    .cta:active { transform: translateY(0); }

    /* Carrossel de modelos (auto-scroll via JS + drag/swipe manual) */
    .marquee {
      overflow-x: auto;
      overflow-y: hidden;
      /* O respiro vertical mantém a sombra inteira dentro da área rolável.
         Sem ele, o overflow corta todas as sombras na mesma altura e cria
         a aparência de uma linha horizontal sob o carrossel. */
      padding-block: 12px 20px;
      cursor: grab;
      scrollbar-width: none;
      -ms-overflow-style: none;
      -webkit-overflow-scrolling: touch;
      overscroll-behavior-x: contain;
      /* Permite pan em ambos os eixos — o browser tem axis-lock nativo:
         gesto horizontal → swipa o carrossel; gesto vertical → rola a página. */
      touch-action: pan-x pan-y;
    }
    .marquee::-webkit-scrollbar { display: none; }
    .marquee.is-dragging { cursor: grabbing; user-select: none; }
    .marquee__track {
      display: flex;
      gap: 16px;
      width: max-content;
    }
    .lamp-card {
      width: 240px;
      height: 340px;            /* proporção A4 (1:√2 ≈ 1:1.414) */
      border-radius: 12px;
      overflow: hidden;
      background: #fff;
      box-shadow: 0 4px 12px rgba(0,0,0,0.18);
      flex-shrink: 0;
      position: relative;
    }
    .responsive-picture { display: contents; }
    .lamp-card img {
      width: 100%;
      height: 100%;
      object-fit: contain;
      background: #fff;
      display: block;
    }
    .image-zoom-button {
      position: absolute;
      right: 10px;
      bottom: 10px;
      z-index: 3;
      min-height: 40px;
      padding: 9px 12px;
      border: 0;
      border-radius: 999px;
      background: rgba(58, 27, 9, .92);
      color: #fff;
      font: 800 11px/1 var(--font-sans);
      text-transform: uppercase;
      letter-spacing: .04em;
      cursor: pointer;
      box-shadow: 0 6px 18px rgba(0,0,0,.24);
    }
    .image-zoom-button:hover,
    .image-zoom-button:focus-visible { background: #39B574; outline: 3px solid rgba(57,181,116,.28); }
    @media (max-width: 768px) {
      .lamp-card { width: 200px; height: 283px; }
    }

    /* Galeria de ambientes — grid 2x2 */
    .ambient-strip {
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      gap: 16px;
      max-width: 900px;
      margin-inline: auto;
    }
    .ambient-strip img,
    .visual-placeholder--ambient {
      width: 100%;
      aspect-ratio: 1 / 1;
      object-fit: contain;
      border-radius: 12px;
      display: block;
    }
    @media (max-width: 640px) {
      .ambient-strip { gap: 10px; }
      .ambient-strip img,
      .visual-placeholder--ambient { aspect-ratio: 1 / 1; }
    }

    /* Slots visuais do template — substituídos por WebPs reais na oferta final */
    .visual-placeholder {
      display: grid;
      place-items: center;
      min-height: 160px;
      padding: 20px;
      border: 2px dashed rgba(58, 27, 9, .28);
      border-radius: 16px;
      background: linear-gradient(145deg, rgba(255,255,255,.82), rgba(251,222,218,.72));
      color: rgba(58, 27, 9, .66);
      text-align: center;
      font-size: 12px;
      font-weight: 800;
      line-height: 1.35;
    }
    .visual-placeholder::before { content: attr(data-placeholder); }
    .visual-placeholder--mockup { width: min(420px, 82vw); min-height: 300px; }
    .visual-placeholder--bonus { min-height: 190px; border-radius: 0; }
    .visual-placeholder--guarantee { width: 100%; max-width: 250px; min-height: 250px; }
    .visual-placeholder--dark {
      border-color: rgba(255,255,255,.48);
      background: rgba(255,255,255,.1);
      color: rgba(255,255,255,.82);
    }

    /* Ícone check verde redondo */
    .check {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      width: 22px; height: 22px;
      border-radius: 999px;
      background: var(--primary);
      color: #173426;
      flex-shrink: 0;
      font-size: 13px;
      font-weight: 800;
    }

    /* FAQ */
    .faq-item { border-bottom: 1px solid rgba(58,27,9,0.12); }
    .faq-question {
      width: 100%;
      display: flex;
      justify-content: space-between;
      align-items: center;
      padding: 20px 0;
      background: none;
      border: none;
      color: #3A1B09;
      font: 600 18px/1.4 var(--font-sans);
      cursor: pointer;
      text-align: left;
    }
    .faq-chevron { transition: transform 0.3s ease; flex-shrink: 0; margin-left: 16px; }
    .faq-question[aria-expanded="true"] .faq-chevron { transform: rotate(180deg); }
    .faq-answer {
      max-height: 0;
      overflow: hidden;
      transition: max-height 0.35s ease;
      color: rgba(58,27,9,0.80);
      font: 400 16px/1.6 var(--font-sans);
    }
    .faq-answer.open { max-height: 600px; padding-bottom: 20px; }

    /* Hero highlight */
    .highlight-yellow { color: var(--accent); }

    /* Empilhamento de preço dos bônus */
    .bonus-price-stack {
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 10px;
      padding: 10px 12px;
      border-radius: 8px;
      background: #fff;
      border: 1px solid rgba(58,27,9,.12);
      font-weight: 800;
    }
    .bonus-old-price {
      color: #d93025;
      text-decoration: line-through;
      text-decoration-thickness: 2px;
    }
    .bonus-free { color: #145E34; }

    /* Imagem obrigatória da garantia */
    .guarantee-layout {
      display: grid;
      grid-template-columns: minmax(0, 1fr);
      gap: 32px;
      align-items: center;
    }
    .guarantee-visual {
      display: grid;
      place-items: center;
      justify-self: center;
      margin-inline: auto;
    }
    .guarantee-copy { width: 100%; }

    /* Respiro obrigatório entre os três passos e o início da FAQ */
    [data-how-you-start] { margin-bottom: 5rem !important; }
    @media (min-width: 768px) {
      [data-how-you-start] { margin-bottom: 6rem !important; }
    }
    .guarantee-seal {
      display: block;
      width: 100%;
      max-width: 250px;
      height: auto;
      object-fit: contain;
    }
    @media (max-width: 767px) {
      .guarantee-layout { gap: 20px; }
      .guarantee-seal { max-width: 210px; }
    }

    /* Pulse no badge "MAIS VENDIDO" */
    @keyframes pulse-glow {
      0%, 100% { box-shadow: 0 0 0 0 rgba(57,181,116,0.55); }
      50%      { box-shadow: 0 0 0 10px rgba(57,181,116,0); }
    }
    .pulse-glow { animation: pulse-glow 2s infinite; }

    /* Pulse (escala) no mockup do Plano Completo / hero */
    @keyframes mockup-pulse {
      0%, 100% { transform: scale(1); }
      50%      { transform: scale(1.045); }
    }
    .mockup-pulse { animation: mockup-pulse 1.6s ease-in-out infinite; transform-origin: center; }

    /* Stars */
    .stars { color: var(--accent); letter-spacing: 1px; font-size: 20px; }

    /* ===== Carrossel de Depoimentos ===== */
    .testi-carousel {
      position: relative;
      max-width: 340px;
      margin: 0 auto;
    }
    .testi-viewport {
      overflow: hidden;
      border-radius: 16px;
    }
    .testi-track {
      display: flex;
      transition: transform 0.45s cubic-bezier(.4,0,.2,1);
      will-change: transform;
    }
    .testi-slide {
      min-width: 100%;
      flex: 0 0 100%;
      background: #FFFFFF;
      border-radius: 16px;
      overflow: hidden;
      box-shadow: 0 4px 16px rgba(58,27,9,0.08);
      border: 1px solid rgba(58,27,9,0.06);
      display: flex;
      flex-direction: column;
    }
    .testi-photo {
      width: 100%;
      aspect-ratio: 4 / 5;
      object-fit: cover;
      display: block;
      background: #FBDEDA;
    }
    .testi-photo-placeholder {
      width: 100%;
      aspect-ratio: 4 / 5;
      background: linear-gradient(135deg, #FBDEDA 0%, #FFE5EE 100%);
      display: flex;
      align-items: center;
      justify-content: center;
      color: rgba(58,27,9,0.35);
      font-size: 13px;
      font-weight: 600;
      text-align: center;
      padding: 14px;
    }
    .testi-content {
      padding: 20px 22px 24px;
    }
    .testi-content .stars { display: block; margin-bottom: 10px; }
    .testi-quote {
      font-style: italic;
      color: #333;
      font-size: 15px;
      line-height: 1.55;
      margin: 0 0 16px 0;
    }
    .testi-author { font-weight: 700; font-size: 14px; color: #3A1B09; margin: 0; }
    .testi-relation { font-size: 12px; color: #666; margin: 2px 0 0 0; }

    /* Setas */
    .testi-arrow {
      position: absolute;
      top: 38%;
      transform: translateY(-50%);
      width: 44px;
      height: 44px;
      border-radius: 50%;
      background: #FFFFFF;
      border: 1px solid rgba(58,27,9,0.10);
      box-shadow: 0 4px 12px rgba(58,27,9,0.15);
      cursor: pointer;
      display: flex;
      align-items: center;
      justify-content: center;
      color: #3A1B09;
      font-size: 22px;
      font-weight: bold;
      z-index: 5;
      transition: all 0.2s ease;
      user-select: none;
    }
    .testi-arrow:hover { background: #FBDEDA; transform: translateY(-50%) scale(1.05); }
    .testi-arrow:active { transform: translateY(-50%) scale(0.95); }
    .testi-arrow-prev { left: -8px; }
    .testi-arrow-next { right: -8px; }
    @media (min-width: 768px) {
      .testi-arrow-prev { left: -28px; }
      .testi-arrow-next { right: -28px; }
    }

    /* Indicadores (dots) */
    .testi-dots {
      display: flex;
      justify-content: center;
      gap: 8px;
      margin-top: 20px;
    }
    .testi-dot {
      width: 9px;
      height: 9px;
      border-radius: 50%;
      background: rgba(58,27,9,0.20);
      border: none;
      cursor: pointer;
      padding: 0;
      transition: all 0.25s ease;
    }
    .testi-dot.active {
      background: #FF6BA8;
      width: 28px;
      border-radius: 5px;
    }

    /* Mockup do catálogo (hero / cards) */
    .mockup-wrap {
      position: relative;
      display: inline-block;
    }
    .mockup-wrap img {
      display: block;
    }
    .mockup-badge {
      position: absolute;
      top: -8px;
      right: -8px;
      width: 88px;
      height: 88px;
      border-radius: 999px;
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      text-align: center;
      color: #3A1B09;
      font-weight: 800;
      line-height: 1;
      font-size: 11px;
      text-transform: uppercase;
      letter-spacing: 0.3px;
      transform: rotate(12deg);
      background: linear-gradient(135deg, #F08947 0%, #E7B66F 100%);
      box-shadow: 0 6px 14px rgba(0,0,0,0.25);
    }
    .mockup-badge .num {
      font-size: 22px;
      margin-bottom: 2px;
    }
    @media (min-width: 768px) {
      .mockup-badge { width: 110px; height: 110px; font-size: 12px; }
      .mockup-badge .num { font-size: 28px; }
    }

    /* Compact countdown inline */
    .cd-inline {
      display: inline-flex;
      gap: 6px;
      font-variant-numeric: tabular-nums;
      font-weight: 800;
      letter-spacing: 1px;
    }
    .cd-inline .cd-box {
      background: rgba(0,0,0,0.18);
      padding: 6px 10px;
      border-radius: 6px;
      min-width: 44px;
      text-align: center;
    }

    /* ===== Anti-clone: desabilita seleção de texto e drag-fantasma das imagens ===== */
    html, body {
      -webkit-user-select: none;
      -moz-user-select: none;
      -ms-user-select: none;
      user-select: none;
      -webkit-touch-callout: none;       /* iOS: bloqueia menu de "salvar imagem" */
      -webkit-tap-highlight-color: transparent;
    }
    /* Permite seleção em inputs caso adicione no futuro */
    input, textarea, [contenteditable="true"] {
      -webkit-user-select: text;
      -moz-user-select: text;
      -ms-user-select: text;
      user-select: text;
    }
    img {
      -webkit-user-drag: none;
      -khtml-user-drag: none;
      -moz-user-drag: none;
      -o-user-drag: none;
      user-drag: none;
      -webkit-touch-callout: none;
      pointer-events: none;              /* impede drag-fantasma; carrossel arrasta o container */
    }
  
    .offer-modal {
      position: fixed;
      inset: 0;
      z-index: 9999;
      display: none;
      align-items: center;
      justify-content: center;
      padding: 18px;
    }

    .offer-modal.is-open {
      display: flex;
    }

    .offer-modal__backdrop {
      position: absolute;
      inset: 0;
      background: rgba(0, 0, 0, 0.78);
    }

    .offer-modal__box {
      position: relative;
      z-index: 1;
      width: min(100%, 460px);
      max-height: 90vh;
      overflow-y: auto;
      border-radius: 22px;
      background: #2A1638;
      color: #fff;
      padding: 34px 24px 26px;
      text-align: center;
      box-shadow: 0 28px 70px rgba(42, 22, 56, 0.45);
      border: 1px solid rgba(255, 255, 255, 0.16);
    }

    .offer-modal__close {
      position: absolute;
      top: 10px;
      right: 14px;
      border: 0;
      background: transparent;
      color: #fff;
      font-size: 30px;
      line-height: 1;
      cursor: pointer;
    }

    .offer-modal__badge {
      display: inline-block;
      border-radius: 999px;
      background: #FF2C2C;
      color: #fff;
      padding: 6px 14px;
      font-size: 11px;
      font-weight: 800;
      text-transform: uppercase;
      letter-spacing: 0.08em;
      margin-bottom: 16px;
    }

    .offer-modal h2 {
      margin: 0 0 12px;
      font-size: clamp(1.45rem, 6vw, 2rem);
      line-height: 1.1;
      font-weight: 900;
    }

    .offer-modal p {
      margin: 0 auto 18px;
      color: rgba(255, 255, 255, 0.84);
      font-size: 0.98rem;
      line-height: 1.5;
    }

    .offer-modal__price {
      display: grid;
      gap: 3px;
      margin: 14px 0 18px;
    }

    .offer-modal__price span {
      color: rgba(255, 255, 255, 0.68);
      font-size: 0.92rem;
      font-weight: 700;
    }

    .offer-modal__price strong {
      color: #39B574;
      font-size: 3rem;
      line-height: 1;
      font-weight: 900;
    }

    .offer-modal__price small {
      color: rgba(255, 255, 255, 0.72);
      font-size: 0.78rem;
      font-weight: 700;
    }

    .offer-modal__cta,
    .offer-modal__decline {
      display: block;
      border-radius: 12px;
      text-decoration: none;
      font-weight: 900;
      line-height: 1.25;
    }

    .offer-modal__cta {
      background: linear-gradient(180deg, #39B574 0%, #2E9D5F 100%);
      color: #173426;
      padding: 16px 18px;
      text-transform: uppercase;
      box-shadow: 0 10px 24px rgba(57, 181, 116, 0.32);
    }

    .offer-modal__decline {
      margin-top: 12px;
      padding: 13px 14px;
      color: rgba(255, 255, 255, 0.9);
      background: rgba(255, 255, 255, 0.08);
      border: 1px solid rgba(255, 255, 255, 0.18);
      font-size: 0.9rem;
    }

    .image-lightbox {
      position: fixed;
      inset: 0;
      z-index: 10000;
      display: none;
      align-items: center;
      justify-content: center;
      padding: 18px;
    }
    .image-lightbox.is-open { display: flex; }
    .image-lightbox__backdrop { position: absolute; inset: 0; background: rgba(0,0,0,.88); }
    .image-lightbox__box {
      position: relative;
      z-index: 1;
      width: min(94vw, 820px);
      max-height: 92vh;
      display: grid;
      place-items: center;
      padding: 18px;
      border-radius: 16px;
      background: #fff;
      box-shadow: 0 28px 80px rgba(0,0,0,.48);
    }
    .image-lightbox__box img { width: auto; max-width: 100%; max-height: 84vh; object-fit: contain; pointer-events: none; }
    .image-lightbox__placeholder:not([hidden]) { width: min(76vw, 560px); aspect-ratio: 1 / 1.414; display: grid; place-items: center; padding: 30px; background: #f4fbf8; color: #3A1B09; font-weight: 900; text-align: center; }
    .image-lightbox__close { position: absolute; top: 8px; right: 10px; z-index: 2; width: 42px; height: 42px; border: 0; border-radius: 999px; background: #3A1B09; color: #fff; font-size: 28px; line-height: 1; cursor: pointer; }

.csp-inline-05623cc4c9ae { background-color: #000000; background-image: none; }

.csp-inline-136fc56e9780 { color:#EF6C57; }

.csp-inline-56206f770aaf { background:#9CA3AF !important; box-shadow:none !important; }

.csp-inline-7d0968e79aee { color:#9CA3AF; }

.csp-inline-af8c179fa1f1 { transform: translateX(0%); }

.csp-inline-b12b0b323954 { font-size:1.875rem; line-height:1.15; }

.csp-inline-c904bb203519 { color:#FF5A5A; font-size:18.5px; }

.csp-inline-e68888b44ecf { background:#EFFCEF; color:#2E9D5F; border:1px solid #C9EBD5; font-size:14px; }

.csp-inline-f89d317d7a5d { background:#FF2C2C; font-size:13px; }
.hero-photo-wrap {
  position: relative;
  width: min(100%, 1080px);
  overflow: hidden;
  border-radius: 24px;
  background: #f8ecea;
  box-shadow: 0 24px 60px rgba(70, 27, 36, 0.18);
}

.bonus-visual-wrap {
  display: grid;
  place-items: center;
  min-height: 300px;
  padding: 14px;
  background: linear-gradient(180deg, #fff9f8 0%, #f8e8e6 100%);
}

.bonus-visual-wrap > picture > img {
  display: block;
  width: 100%;
  height: 300px;
  object-fit: contain;
}

@media (max-width: 640px) {
  .bonus-visual-wrap,
  .bonus-visual-wrap > picture > img {
    min-height: 280px;
    height: 280px;
  }
}

.hero-photo-wrap img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 2 / 1;
  object-fit: cover;
  object-position: center;
}

.hero-photo-copy {
  position: absolute;
  inset: 0;
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-content: space-between;
  padding: clamp(14px, 2.4vw, 28px);
  pointer-events: none;
}

.hero-photo-copy__left,
.hero-photo-copy__right {
  align-self: start;
  width: fit-content;
  max-width: 92%;
  padding: 9px 12px;
  border-radius: 8px;
  color: #ffffff;
  background: rgba(43, 20, 28, 0.78);
  box-shadow: 0 8px 22px rgba(0, 0, 0, 0.22);
  font-size: clamp(0.72rem, 1.55vw, 1.12rem);
  line-height: 1.12;
  letter-spacing: 0.035em;
  text-align: left;
}

.hero-photo-copy__right {
  justify-self: end;
  color: #173426;
  background: rgba(239, 252, 239, 0.92);
  text-align: right;
}

.hero-photo-copy__signature {
  grid-column: 1 / -1;
  justify-self: center;
  align-self: end;
  padding: 7px 12px;
  border-radius: 999px;
  color: #ffffff;
  background: rgba(43, 20, 28, 0.82);
  font-size: clamp(0.65rem, 1.25vw, 0.9rem);
  font-weight: 700;
  line-height: 1.2;
}

@media (max-width: 640px) {
  .hero-photo-wrap {
    border-radius: 18px;
  }

  .hero-photo-wrap img {
    aspect-ratio: 2 / 1;
    object-fit: contain;
  }

  .hero-photo-copy {
    position: static;
    gap: 8px;
    padding: 10px;
  }

  .hero-photo-copy__left,
  .hero-photo-copy__right {
    max-width: 96%;
    padding: 6px 7px;
    border-radius: 6px;
    font-size: 0.66rem;
  }

  .hero-photo-copy__signature {
    padding: 6px 9px;
    font-size: 0.62rem;
  }
}

/* QA 30/09: pares de cores com contraste AA; CTAs mantêm o verde aprovado. */
.bg-pink-brand { background-color: #A52B60 !important; color: #fff; }
.text-pink-brand { color: #A52B60 !important; }
[class~="text-[#39B574]"] { color: #176B40 !important; }
[class~="bg-[#39B574]"] { color: #173426 !important; }
[class~="bg-[#FF2C2C]"], .csp-inline-f89d317d7a5d { background-color: #C72532 !important; color: #fff; }
[class~="bg-[#EE6352]"] { background-color: #B94337 !important; color: #fff; }
[class~="text-[#EE6352]"] { color: #A33129 !important; }
.csp-inline-e68888b44ecf { color: #176B40; }
.image-zoom-button:hover, .image-zoom-button:focus-visible { color: #173426; }
.offer-modal__cta { background: #39B574; }

.bg-purple-deep [class~="text-[#39B574]"] { color: #81E8AD !important; }
.offer-modal__badge { background: #C72532; color: #fff; }

.text-3xl { font-size: 1.875rem; line-height: 2.25rem; }
[class~="text-[#3A1B09]/75"] { color: rgba(58, 27, 9, .75); }
img[data-image-role="product-summary-mockup"], img[data-image-role="complete-plan-mockup"] { object-fit: contain; }
