/* Identidade Capapreta Lab, reaproveitada na Harmoniza */
@font-face{font-family:'AmericanCaptain';src:url('assets/font.otf') format('opentype');font-weight:normal;font-display:swap;font-synthesis:none;}
*{margin:0;padding:0;box-sizing:border-box;}
:root{--g:#D4A537;--g2:#e8bd52;--k:#080808;--w:#F2F0EC;--m:#888888;--ok:#5fbf6b;--err:#e0604f;
  --display:AmericanCaptain,'Bebas Neue',sans-serif;--body:'Barlow Condensed',sans-serif;--prose:'Barlow',sans-serif;}
html{scroll-behavior:smooth;overflow-x:hidden;}
body{background:var(--k);color:var(--w);font-family:var(--prose);font-weight:300;line-height:1.6;overflow-x:hidden;-webkit-font-smoothing:antialiased;}
a{color:inherit;}
img{max-width:100%;}

nav{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:14px 5vw;background:rgba(8,8,8,0.96);border-bottom:1px solid rgba(255,255,255,0.05);backdrop-filter:blur(8px);transition:box-shadow .3s;}
nav.scrolled{box-shadow:0 2px 20px rgba(0,0,0,0.4);}
.nav-logo-img{height:28px;width:auto;display:block;}
.nav-links{display:flex;gap:30px;}
.nav-links a{font-family:var(--body);font-size:.74rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--w);text-decoration:none;opacity:.7;transition:opacity .2s,color .2s;white-space:nowrap;}
.nav-links a:hover{opacity:1;color:var(--g);}
.nav-cta{background:var(--g);color:var(--k);font-family:var(--body);font-size:.85rem;letter-spacing:.12em;text-transform:uppercase;padding:10px 22px;text-decoration:none;transition:background .2s;white-space:nowrap;font-weight:700;border:none;cursor:pointer;}
.nav-cta:hover{background:var(--g2);}

.eyebrow,.sec-eye{font-family:var(--body);font-size:.7rem;font-weight:700;letter-spacing:.45em;text-transform:uppercase;color:var(--g);}
.eyebrow{margin-bottom:20px;}
.sec-eye{margin-bottom:14px;}
.sec-title{font-family:var(--display);text-transform:uppercase;font-size:clamp(30px,4.5vw,58px);line-height:.95;margin-bottom:20px;font-weight:normal;}
.sec-title span{color:var(--g);}
section{padding:60px 5vw;scroll-margin-top:74px;}
hr.div{border:none;border-top:1px solid rgba(255,255,255,.05);}

.btn-g{background:var(--g);color:var(--k);border:none;cursor:pointer;font-family:var(--body);font-size:1rem;letter-spacing:.1em;text-transform:uppercase;padding:16px 34px;white-space:nowrap;transition:background .2s,transform .15s;font-weight:700;text-decoration:none;display:inline-block;text-align:center;}
.btn-g:hover{background:var(--g2);transform:translateY(-2px);}
.btn-g:disabled{opacity:.5;cursor:wait;transform:none;}
.btn-o{border:1px solid rgba(255,255,255,.25);color:var(--w);background:transparent;font-family:var(--body);font-size:1rem;letter-spacing:.1em;text-transform:uppercase;padding:16px 34px;text-decoration:none;display:inline-block;transition:border-color .2s;cursor:pointer;text-align:center;font-weight:700;}
.btn-o:hover{border-color:var(--g);}
.btn-k{background:var(--k);color:var(--g);border:none;cursor:pointer;font-family:var(--body);font-size:1rem;letter-spacing:.1em;text-transform:uppercase;padding:16px 34px;font-weight:700;text-decoration:none;display:inline-block;}

/* Hero */
.hero{display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;overflow:hidden;padding:72px 5vw 56px;margin-top:58px;text-align:center;}
.hero-bg{position:absolute;inset:0;background:url('assets/hero-harmoniza.jpg') center/cover;}
.hero-ov{position:absolute;inset:0;background:radial-gradient(ellipse 620px 640px at center, rgba(8,8,8,.9) 0%, rgba(8,8,8,.8) 45%, rgba(8,8,8,.6) 100%);}
.hero-content{position:relative;z-index:2;width:100%;max-width:760px;margin:0 auto;}
.hero h1{font-family:var(--display);text-transform:uppercase;font-weight:normal;line-height:.95;font-size:clamp(78px,13.8vw,180px);color:var(--g);text-shadow:0 4px 24px rgba(0,0,0,.5);}
.hero-sub{font-family:var(--body);font-size:clamp(1.15rem,2.4vw,1.55rem);font-weight:600;text-transform:uppercase;letter-spacing:.04em;line-height:1.25;max-width:620px;margin:18px auto 0;}
.hero-sub b{color:var(--g);font-weight:700;}
.hero-ctas{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-top:30px;}
.hero-meta{margin-top:22px;font-family:var(--body);font-size:.72rem;letter-spacing:.28em;text-transform:uppercase;color:var(--m);}

.motivos-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;}
.motivo{background:#111;padding:28px 22px;border-top:3px solid transparent;transition:border-color .3s,transform .3s;text-align:left;}
.motivo:hover{border-top-color:var(--g);transform:translateY(-3px);}
.motivo .n{font-family:var(--display);font-size:2.6rem;color:var(--g);line-height:1;margin-bottom:6px;}
.motivo .t{font-family:var(--body);font-size:.95rem;font-weight:700;text-transform:uppercase;color:var(--w);margin-bottom:8px;line-height:1.2;letter-spacing:.08em;}
.motivo .d{font-size:.85rem;color:#777;line-height:1.6;}
.motivo.dourado{background:var(--g);}
.motivo.dourado .n{color:rgba(0,0,0,.12);}
.motivo.dourado .t{color:var(--k);}
.motivo.dourado .d{color:rgba(0,0,0,.6);}
.hero-motivos{position:relative;z-index:2;width:100%;max-width:920px;margin:44px auto 0;}

/* Lata da Diesel ao lado do título */
.hero-title{display:flex;align-items:center;justify-content:center;font-size:clamp(68px,12.5vw,170px);margin:-.05em 0 -.08em;}
.hero-title h1{font-size:1em;position:relative;z-index:2;margin-left:-.11em;}
.hero-can{height:1.5em;width:auto;flex-shrink:0;position:relative;z-index:1;transform:rotate(-10deg);filter:drop-shadow(0 .08em .12em rgba(0,0,0,.7));animation:canDrop 1.2s cubic-bezier(.2,.8,.2,1) .35s both,canFloat 5.5s ease-in-out 1.7s infinite;}

/* Combos */
.combos-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin-top:30px;}
.combo{background:#0e0e0e;display:flex;flex-direction:column;border:2px solid rgba(212,165,55,.45);transition:border-color .3s,transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s;}
.combo:hover{border-color:var(--g);transform:translateY(-5px);box-shadow:0 16px 36px rgba(0,0,0,.5);}
.combo-tag{position:absolute;bottom:12px;left:12px;z-index:2;background:var(--k);color:var(--g);font-family:var(--body);font-size:.66rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase;padding:6px 10px;}
.combo-body{padding:22px 20px 20px;display:flex;flex-direction:column;flex:1;}
.combo-name{font-family:var(--display);font-weight:normal;font-size:1.75rem;text-transform:uppercase;line-height:.95;margin-bottom:12px;text-wrap:balance;}
.combo-name em{display:block;font-style:normal;color:var(--g);font-size:.8em;margin-top:4px;}
.combo-foot{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 20px;background:#15120a;border-top:2px solid rgba(212,165,55,.45);}
.combo-what{font-family:var(--body);font-size:.8rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;line-height:1.25;color:var(--w);}
.combo-what small{display:block;font-family:var(--prose);font-weight:300;font-size:.74rem;letter-spacing:0;text-transform:none;color:var(--m);margin-top:2px;}
.combo-price{font-family:var(--display);font-size:2.1rem;line-height:1;color:var(--g);white-space:nowrap;}
.combo-photo{aspect-ratio:4/3;background:#151515 center/cover;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;}
.combo-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.combo-photo .ph{font-family:var(--body);font-size:.65rem;letter-spacing:.3em;text-transform:uppercase;color:#3a3a3a;}
.combo-desc{font-size:.85rem;color:#888;line-height:1.55;flex:1;}
.combos-note{margin-top:20px;font-family:var(--body);font-size:.85rem;letter-spacing:.12em;text-transform:uppercase;color:var(--w);}
.combos-note b{color:var(--g);}

/* Seção dourada */
.gold-texture{background-color:var(--g);background-image:linear-gradient(rgba(212,165,55,.9),rgba(212,165,55,.9)),url('assets/gold.jpg');background-size:cover;background-position:center;color:var(--k);}
.gold-texture .sec-eye{color:rgba(8,8,8,.5);}
.gold-texture .sec-title,.gold-texture .sec-title span{color:var(--k);}
.gold-texture p{color:rgba(8,8,8,.7);}
.desafio{position:relative;overflow:hidden;}
.desafio::before{content:'EM CASA';position:absolute;top:6%;right:-1%;font-family:var(--display);font-size:clamp(80px,16vw,200px);color:transparent;-webkit-text-stroke:2px rgba(0,0,0,.07);white-space:nowrap;pointer-events:none;}
.desafio-inner{position:relative;z-index:1;max-width:980px;}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;margin-top:28px;}
.step{background:var(--k);color:var(--w);padding:26px 22px;}
.step .n{font-family:var(--display);font-size:2.4rem;color:var(--g);line-height:1;margin-bottom:6px;}
.step .t{font-family:var(--body);font-weight:700;text-transform:uppercase;letter-spacing:.08em;margin-bottom:6px;}
.step p{color:#888;font-size:.85rem;line-height:1.6;}

/* Formulário */
.form-wrap{max-width:560px;}
.form-lbl{font-family:var(--body);font-size:.85rem;font-weight:700;letter-spacing:.25em;text-transform:uppercase;color:var(--w);margin-bottom:12px;}
.field{display:block;margin-bottom:2px;}
.form-input{width:100%;background:#111;border:1px solid rgba(255,255,255,.1);color:var(--w);font-family:var(--prose);font-size:1.05rem;padding:15px 18px;outline:none;transition:border-color .3s;border-radius:0;-webkit-appearance:none;}
.form-input::placeholder{color:rgba(242,240,236,.45);}
.form-input:focus{border-color:var(--g);}
.checks{margin:18px 0 20px;display:flex;flex-direction:column;gap:12px;}
.check{display:flex;gap:12px;align-items:flex-start;font-size:.86rem;color:#aaa;line-height:1.5;cursor:pointer;}
.check input{appearance:none;-webkit-appearance:none;width:20px;height:20px;border:1px solid rgba(255,255,255,.3);background:#111;flex-shrink:0;margin-top:1px;cursor:pointer;display:grid;place-content:center;}
.check input:checked{background:var(--g);border-color:var(--g);}
.check input:checked::after{content:'';width:10px;height:6px;border-left:2px solid var(--k);border-bottom:2px solid var(--k);transform:rotate(-45deg) translate(1px,-1px);}
.form-btn{width:100%;}
.form-note{font-size:.74rem;color:#555;margin-top:12px;letter-spacing:.03em;}
.form-msg{margin-top:14px;font-size:.88rem;min-height:1.2em;}
.form-msg.err{color:var(--err);}

/* FAQ */
.faq-list{max-width:700px;margin-top:12px;}
.faq-item{border-bottom:1px solid rgba(255,255,255,.12);}
.faq-q{display:flex;justify-content:space-between;align-items:center;gap:16px;width:100%;background:none;border:none;color:#fff;text-align:left;cursor:pointer;padding:20px 0;font-family:var(--body);font-size:.9rem;text-transform:uppercase;letter-spacing:.12em;font-weight:700;}
.faq-ic{color:var(--g);font-size:1.4rem;font-family:var(--prose);transition:transform .3s;font-weight:700;}
.faq-a{font-size:.9rem;color:#aaa;line-height:1.75;padding-bottom:18px;display:none;max-width:600px;}
.faq-item.open .faq-a{display:block;}
.faq-item.open .faq-ic{transform:rotate(45deg);}

.cta-final{padding:100px 5vw;text-align:center;position:relative;overflow:hidden;}
.cta-final::before{content:'HARMONIZA!';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-family:var(--display);font-size:clamp(70px,16vw,210px);color:transparent;-webkit-text-stroke:2px rgba(0,0,0,.06);white-space:nowrap;pointer-events:none;}
.cta-final .title{font-family:var(--display);font-size:clamp(34px,6vw,72px);text-transform:uppercase;line-height:.94;color:var(--k);margin-bottom:20px;position:relative;}
.cta-final .sub{font-size:1rem;color:rgba(0,0,0,.55);max-width:440px;margin:0 auto 34px;position:relative;line-height:1.7;}
.cta-final .btn-k{position:relative;}

footer{background:#0a0a0a;padding:38px 5vw;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:20px;border-top:1px solid rgba(255,255,255,.04);}
.footer-brand{font-family:var(--display);font-size:.95rem;letter-spacing:.15em;text-transform:uppercase;color:var(--w);}
.footer-brand span{color:var(--g);display:block;font-size:.52rem;letter-spacing:.35em;font-family:var(--body);font-weight:700;margin-top:4px;}
.footer-legal{font-size:.7rem;color:#4a4a4a;max-width:380px;text-align:center;line-height:1.6;}
.footer-contact{font-size:.75rem;color:#555;text-align:right;}
.footer-contact a{color:var(--g);text-decoration:none;}

.wa-float{position:fixed;right:22px;bottom:22px;width:58px;height:58px;background:#25D366;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 20px rgba(0,0,0,.45);z-index:150;transition:transform .2s;}
.wa-float:hover{transform:scale(1.08);}
.wa-float svg{width:30px;height:30px;fill:#fff;}

/* Páginas de app (Minha Harmoniza, Equipe, Guia) */
.app{max-width:560px;margin:0 auto;padding:88px 20px 60px;}
.card{background:#111;border-top:3px solid var(--g);padding:26px 22px;margin-bottom:2px;}
.card.flat{border-top-color:transparent;}
.big-title{font-family:var(--display);text-transform:uppercase;font-size:clamp(40px,10vw,64px);line-height:.92;color:var(--g);}
.muted{color:var(--m);}
.small{font-size:.82rem;}
.label{font-family:var(--body);font-size:.68rem;font-weight:700;letter-spacing:.3em;text-transform:uppercase;color:var(--m);}
.qr-box{background:var(--w);padding:18px;display:inline-block;margin:6px auto 0;}
.qr-box canvas,.qr-box img,.qr-box svg{display:block;width:220px;height:220px;image-rendering:pixelated;}
.code-text{font-family:var(--display);font-size:2.2rem;letter-spacing:.12em;color:var(--w);margin-top:12px;line-height:1;}
.stats{display:grid;grid-template-columns:1fr 1fr;gap:2px;}
.stat{background:#111;padding:20px;}
.stat .v{font-family:var(--display);font-size:2.6rem;color:var(--g);line-height:1;}
.stat .l{font-family:var(--body);font-size:.68rem;letter-spacing:.25em;text-transform:uppercase;color:var(--m);margin-top:4px;}
.progress{display:flex;gap:6px;margin-top:12px;}
.progress i{flex:1;height:10px;background:rgba(255,255,255,.1);}
.progress i.on{background:var(--g);}
.voucher{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 0;border-top:1px solid rgba(255,255,255,.07);}
.voucher:first-child{border-top:none;}
.voucher .vc{font-family:var(--display);font-size:1.4rem;letter-spacing:.06em;}
.tag{font-family:var(--body);font-size:.66rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;padding:4px 9px;}
.tag.ready{background:var(--g);color:var(--k);}
.tag.done{background:rgba(255,255,255,.08);color:var(--m);}
.center{text-align:center;}
.stack>*+*{margin-top:12px;}
.row{display:flex;gap:10px;}
.row>*{flex:1;}
.hidden{display:none !important;}
.toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);background:var(--w);color:var(--k);font-family:var(--body);font-weight:700;letter-spacing:.06em;text-transform:uppercase;font-size:.9rem;padding:12px 20px;z-index:300;box-shadow:0 8px 30px rgba(0,0,0,.5);max-width:90vw;text-align:center;}
.toast.err{background:var(--err);color:#fff;}

@media(max-width:900px){
  .combos-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;}
  .nav-links{display:none;}
  footer{flex-direction:column;text-align:center;}
  .footer-contact{text-align:center;}
  .hero-ov{background:rgba(8,8,8,.88);}
}
@media(max-width:600px){
  .motivos-grid,.steps{grid-template-columns:1fr;}
  .combos-grid{grid-template-columns:1fr;gap:16px;}
  .wa-float{right:16px;bottom:16px;width:52px;height:52px;}
  .hero{padding-top:56px;}
}
@keyframes fadeUp{from{opacity:0;transform:translateY(28px);}to{opacity:1;transform:translateY(0);}}
.js-anim .anim:not(.visible){opacity:0;}
.anim.visible{animation:fadeUp 1.2s cubic-bezier(.22,1,.36,1) forwards;}
.d1{animation-delay:.1s!important;}.d2{animation-delay:.25s!important;}.d3{animation-delay:.4s!important;}.d4{animation-delay:.55s!important;}


/* ---------- Animações ---------- */
@keyframes canDrop{0%{opacity:0;transform:translateY(-.7em) rotate(-32deg);}60%{opacity:1;transform:translateY(.03em) rotate(-6deg);}80%{transform:translateY(-.015em) rotate(-11.5deg);}100%{transform:translateY(0) rotate(-10deg);}}
@keyframes canFloat{0%,100%{transform:translateY(0) rotate(-10deg);}50%{transform:translateY(-.045em) rotate(-8deg);}}
@keyframes floatC{0%,100%{transform:translateY(0) rotate(-8deg);}50%{transform:translateY(-10px) rotate(-5deg);}}
@keyframes marq{to{transform:translateX(-50%);}}
@keyframes rise{0%{transform:translate(0,0);opacity:0;}10%{opacity:.55;}90%{opacity:.35;}100%{transform:translate(12px,-520px);opacity:0;}}

/* Faixa com os combos */
.marquee{background:var(--g);color:var(--k);overflow:hidden;padding:13px 0;border-block:1px solid rgba(0,0,0,.25);}
.marquee-track{display:flex;width:max-content;animation:marq 42s linear infinite;}
.marquee:hover .marquee-track{animation-play-state:paused;}
.marquee-seq{display:flex;align-items:center;flex-shrink:0;}
.marquee span{font-family:var(--display);font-size:1.45rem;line-height:1;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;}
.marquee i{font-style:normal;font-size:.9rem;margin:0 22px;opacity:.55;}

/* Fotos dos combos ganham zoom no hover */
.combo-photo img{transition:transform .9s cubic-bezier(.2,.8,.2,1);}
.combo:hover .combo-photo img{transform:scale(1.06);}

/* Chamada final: lata, bolhas e o "brinde" no hover */
.cta-can{display:block;height:190px;width:auto;margin:0 auto 18px;position:relative;z-index:1;filter:drop-shadow(0 14px 18px rgba(0,0,0,.35));transition:transform .5s cubic-bezier(.3,1.6,.5,1);}
.cta-can.visible{animation:fadeUp 1.2s cubic-bezier(.22,1,.36,1) forwards,floatC 5s ease-in-out 1.2s infinite;}
.cta-final:has(.btn-k:hover) .cta-can{animation-play-state:paused;transform:rotate(14deg) translateY(-6px);}
.bubbles{position:absolute;inset:0;overflow:hidden;pointer-events:none;}
.bubble{position:absolute;bottom:-30px;left:var(--x);width:var(--s);height:var(--s);border-radius:50%;border:1.5px solid rgba(8,8,8,.25);background:rgba(255,255,255,.18);animation:rise var(--t) linear var(--d) infinite;}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none !important;transition:none !important;}
  .js-anim .anim:not(.visible){opacity:1;}
  .hero-can{transform:rotate(-10deg);}
}
