:root{--blue:#005DCB;--blue-d:#00449a;--ink:#0f172a;--mut:#64748b;--bg:#fff;--alt:#f3f6fb;--line:#e2e8f0;--r:16px}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,system-ui,sans-serif;color:var(--ink);background:var(--bg);line-height:1.5;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:var(--blue)}
em{font-style:normal;color:var(--blue)}
.muted{color:var(--mut);font-size:.9rem;margin:.2rem 0 .8rem}
.center{text-align:center}
.hdr{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;padding:12px 18px;background:#fff;border-bottom:1px solid var(--line)}
.hdr__menu{background:none;border:0;font-size:1.5rem;cursor:pointer;color:var(--blue)}
.hdr__secure{font-size:.7rem;letter-spacing:.08em;font-weight:600;color:#334155}
.logo{font-weight:800;font-style:italic;font-size:1.35rem;letter-spacing:-.02em;color:var(--ink);text-decoration:none}
.logo span{color:var(--blue)}
.logo--w{color:#fff;font-size:1.6rem}.logo--w span{color:#6fb0ff}
.drawer{position:fixed;inset:0 40% 0 0;min-width:260px;background:#fff;z-index:40;padding:70px 24px;box-shadow:8px 0 30px #0003;display:flex;flex-direction:column;gap:18px}
.drawer[hidden]{display:none}
.drawer a{font-weight:600;text-decoration:none;color:var(--ink);font-size:1.1rem}
.drawer a.btn{color:#fff}
.drawer__close{position:absolute;top:16px;right:16px;border:0;background:none;font-size:1.4rem;cursor:pointer}
.btn{display:inline-block;background:var(--blue);color:#fff;border:0;border-radius:12px;padding:14px 26px;font:700 .95rem Inter,sans-serif;text-align:center;text-decoration:none;cursor:pointer;transition:.15s}
.btn:hover{background:var(--blue-d);transform:translateY(-1px)}
.btn--block{display:block;width:100%}.btn--lg{padding:18px;font-size:1.05rem}
.btn--ghost{background:#fff;color:var(--blue);border:2px solid var(--blue)}
.btn--ghost:hover{background:var(--alt)}
.hero{text-align:center;padding:36px 18px 48px;max-width:820px;margin:auto}
.hero__kicker{margin:0;color:var(--mut)}
.hero h1{font-size:clamp(2.2rem,7vw,3.6rem);margin:.2rem 0 .4rem;line-height:1.1;letter-spacing:-.03em}
.hero__sub{color:#475569;max-width:480px;margin:0 auto 24px}
.hero__card{background:linear-gradient(135deg,#003f94,#0a6ae0);border-radius:24px;padding:22px;margin-bottom:26px;position:relative}
.hero__card img{margin:auto;max-height:420px;width:auto;border-radius:14px;background:#fff}
.hero__tags{list-style:none;display:flex;gap:8px;justify-content:center;flex-wrap:wrap;padding:0;margin:16px 0 0}
.hero__tags li{background:#fff2;color:#fff;border:1px solid #fff5;border-radius:99px;padding:5px 14px;font-size:.85rem;font-weight:600}
.sec{padding:56px 18px;max-width:1040px;margin:auto}
.sec--alt{max-width:none;background:var(--alt)}
.sec--alt>*{max-width:1040px;margin-left:auto;margin-right:auto}
.sec h2{text-align:center;font-size:clamp(1.5rem,4.5vw,2.2rem);margin:0 0 6px;letter-spacing:-.02em;line-height:1.2}
.sec__sub{text-align:center;color:var(--mut);margin:0 auto 28px;max-width:600px}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px}
.card{background:#fff;border:1px solid var(--line);border-radius:var(--r);overflow:hidden;box-shadow:0 4px 18px #0f172a0d}
.card img{aspect-ratio:1;object-fit:cover;width:100%;background:#f1f5f9}
.card h3{margin:14px 16px 4px}.card p{margin:0 16px 18px;color:var(--mut)}
.checks{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}
.checks li{background:#fff;border-radius:14px;padding:16px 16px 16px 48px;position:relative;border:1px solid var(--line)}
.checks li::before{content:"✓";position:absolute;left:14px;top:16px;width:24px;height:24px;border-radius:50%;background:var(--blue);color:#fff;text-align:center;line-height:24px;font-size:.85rem}
.checks b,.checks span{display:block}.checks span{color:var(--mut);font-size:.92rem}
.pills{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;margin-top:22px}
.pill{background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px;text-align:center}
.pill img,.pill__ico{width:56px;height:56px;margin:0 auto 6px;object-fit:contain;font-size:2rem}
.pill b,.pill span{display:block}.pill span{font-size:.88rem;color:var(--mut)}
.specs{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:center}
.specs>img{border-radius:var(--r);box-shadow:0 8px 28px #0f172a22}
dl{margin:0}dt{font-weight:700;margin-top:10px}dd{margin:0;color:#475569}
.note{background:#eaf2ff;border-left:4px solid var(--blue);padding:12px 14px;border-radius:8px;margin-top:16px}
.buy{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:28px;align-items:start}
.gallery img#mainImg{border-radius:var(--r);background:#fff;border:1px solid var(--line);width:100%}
.thumbs{display:flex;gap:10px;margin-top:10px}
.thumbs button{width:72px;padding:0;border:2px solid var(--line);border-radius:10px;overflow:hidden;background:#fff;cursor:pointer}
.thumbs button.on{border-color:var(--blue)}
.panel{background:#fff;border-radius:20px;padding:22px;border:1px solid var(--line);box-shadow:0 8px 30px #0f172a12}
.panel h3{margin:6px 0 0}
.kit{display:grid;grid-template-columns:auto 64px 1fr auto;gap:12px;align-items:center;border:2px solid var(--line);border-radius:14px;padding:12px;margin-bottom:10px;cursor:pointer}
.kit:has(input:checked){border-color:var(--blue);background:#f0f6ff}
.kit img{width:64px;height:64px;object-fit:contain;border-radius:8px;background:#fff}
.kit b{font-size:.85rem;display:block;line-height:1.3}.kit small{color:#15803d;font-weight:600}
.kit__price{text-align:right}.kit__price s{display:block;color:var(--mut);font-size:.8rem}.kit__price strong{font-size:1.15rem}
.badge{display:inline-block;background:#0f172a;color:#fff;font-size:.65rem;font-weight:700;border-radius:99px;padding:2px 9px;margin-bottom:4px}.badge--hot{background:#dc2626}
.priceBox{text-align:center;background:var(--alt);border-radius:14px;padding:14px;margin:14px 0 20px}
.priceBox s{color:var(--mut)}.priceBox__now{font-size:2.3rem;font-weight:800;color:var(--blue);line-height:1.1}
.coffee{margin:10px 0 0;font-size:.9rem}
.fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.fields label,.lbl{font-weight:600;font-size:.88rem}
.lbl{margin:16px 0 6px}
select{display:block;width:100%;margin-top:4px;padding:12px;border:1.5px solid #cbd5e1;border-radius:10px;font:500 .95rem Inter,sans-serif;background:#fff}
select:disabled{background:#f1f5f9;color:#94a3b8}
select:focus{outline:2px solid var(--blue);border-color:var(--blue)}
.colors{display:flex;gap:12px}
.c{width:42px;height:42px;border-radius:50%;border:3px solid #fff;box-shadow:0 0 0 2px var(--line);cursor:pointer}
.c.on{box-shadow:0 0 0 3px var(--blue)}
.c--preto{background:#111}.c--cinza{background:#8b8f96}.c--bege{background:#d6c4a0}
.error{color:#dc2626;font-weight:600;font-size:.9rem}
.stock{text-align:center;margin:16px 0 10px}
.ship{display:flex;gap:12px;align-items:center;margin-top:16px;padding-top:14px;border-top:1px solid var(--line);font-size:.92rem}
.ship img{width:40px;height:40px;object-fit:contain}
.stat{text-align:center;font-size:1.2rem;margin-bottom:26px}.stat strong{font-size:2.6rem;color:var(--blue)}.stat span{display:block;color:var(--mut)}
.vids{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;margin-bottom:22px}
.vids video{width:100%;aspect-ratio:9/16;object-fit:cover;border-radius:var(--r);background:#000}
.reviews{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}
.rev{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:18px}
.rev__top{display:flex;gap:12px;align-items:center}.rev small{display:block;color:#15803d}
.av{width:44px;height:44px;border-radius:50%;background:var(--blue);color:#fff;display:grid;place-items:center;font-weight:700;font-size:.9rem}
.stars{color:#f59e0b;margin:10px 0 4px;letter-spacing:2px}.stars span{color:var(--ink);letter-spacing:0;font-weight:700}
.rev p:last-child{margin:0}
.score{text-align:center;margin-top:30px;color:#475569}
.seal{display:inline-block;margin:16px auto 0;border:3px solid var(--blue);color:var(--blue);border-radius:50%;width:110px;height:110px;padding-top:34px;font-weight:800;font-size:.7rem;line-height:1.3}
.faq{max-width:760px}
.faq details{background:#fff;border:1px solid var(--line);border-radius:12px;margin-bottom:10px;padding:0 16px}
.faq summary{padding:15px 0;font-weight:600;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:10px}
.faq summary::after{content:"+";color:var(--blue);font-size:1.3rem;line-height:1}
.faq details[open] summary::after{content:"–"}
.faq p{margin:0 0 16px;color:#475569}
.ftr{background:#0f172a;color:#cbd5e1;padding:40px 18px;text-align:center;font-size:.92rem}
.ftr p{margin:4px 0}.ftr a{color:#8fc1ff}.ftr b{color:#fff}.ftr .muted{color:#94a3b8}
.ftr__links{margin-top:14px!important}
.toast{position:fixed;left:14px;bottom:14px;z-index:30;background:#fff;border:1px solid var(--line);box-shadow:0 8px 28px #0003;border-radius:12px;padding:10px 14px;max-width:290px;font-size:.82rem}
.toast[hidden]{display:none}
.modal{position:fixed;inset:0;background:#0f172acc;z-index:60;display:grid;place-items:center;padding:14px}
.modal[hidden]{display:none}
.modal__box{background:#fff;border-radius:20px;padding:24px;max-width:560px;width:100%;max-height:92vh;overflow:auto;position:relative}
.modal__x{position:absolute;top:10px;right:14px;border:0;background:none;font-size:1.8rem;cursor:pointer}
.tex{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.tex button{border:2px solid var(--line);background:#fff;border-radius:12px;padding:6px;cursor:pointer;font:600 .85rem Inter}
.tex button.on{border-color:var(--blue);background:#eaf2ff}
.tex img{border-radius:8px;aspect-ratio:1;object-fit:cover;width:100%}
.sum{display:grid;grid-template-columns:auto 1fr;gap:4px 14px;background:var(--alt);padding:14px;border-radius:12px;margin:16px 0}
.sum dt{margin:0;font-weight:600}.sum dd{margin:0;text-align:right}
.modal__act{display:flex;gap:10px;flex-wrap:wrap;margin:10px 0}.modal__act .btn{flex:1}
.legal{max-width:760px;margin:auto;padding:30px 18px 60px}.legal h1{color:var(--blue)}.legal h2{margin-top:36px}
@media(max-width:760px){.specs,.buy{grid-template-columns:1fr}.fields{grid-template-columns:1fr}.kit{grid-template-columns:auto 52px 1fr}.kit__price{grid-column:2/-1;text-align:left;display:flex;gap:8px;align-items:baseline}.hdr__secure{font-size:.6rem}}

/* ===== Animações ===== */
.progress{position:fixed;top:0;left:0;height:3px;width:0;background:linear-gradient(90deg,#0a6ae0,#6fb0ff);z-index:70}
.hdr{transition:padding .25s,box-shadow .25s}
.hdr.small{padding:7px 18px;box-shadow:0 4px 20px #0f172a1a}
@keyframes up{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:none}}
@keyframes float{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-12px) rotate(1deg)}}
@keyframes bg{0%{background-position:0 50%}50%{background-position:100% 50%}100%{background-position:0 50%}}
@keyframes pulse{0%{box-shadow:0 0 0 0 #005dcb66}70%{box-shadow:0 0 0 16px #005dcb00}100%{box-shadow:0 0 0 0 #005dcb00}}
@keyframes shine{from{transform:translateX(-120%) skewX(-20deg)}to{transform:translateX(320%) skewX(-20deg)}}
@keyframes pop{0%{transform:scale(.85)}60%{transform:scale(1.08)}100%{transform:scale(1)}}
@keyframes mq{to{transform:translateX(-50%)}}
.hero__kicker,.hero h1,.hero__sub,.hero__card,.hero>.btn{opacity:0;animation:up .8s cubic-bezier(.2,.7,.2,1) forwards}
.hero h1{animation-delay:.12s}.hero__sub{animation-delay:.24s}.hero__card{animation-delay:.36s}.hero>.btn{animation-delay:.6s}
.hero__card{background:linear-gradient(120deg,#003f94,#0a6ae0,#2a8cff,#003f94);background-size:300% 300%;animation:up .8s .36s cubic-bezier(.2,.7,.2,1) forwards,bg 9s ease infinite}
.hero__card img{animation:float 6s ease-in-out infinite}
.hero__tags li{animation:pop .6s both}.hero__tags li:nth-child(2){animation-delay:.15s}.hero__tags li:nth-child(3){animation-delay:.3s}
.btn{position:relative;overflow:hidden}
.btn:not(.btn--ghost)::after{content:"";position:absolute;top:0;bottom:0;width:30%;background:linear-gradient(90deg,transparent,#fff6,transparent);animation:shine 3.2s infinite}
.hero>.btn,.btn--lg{animation:up .8s .6s forwards,pulse 2.2s 1.6s infinite}
.btn--lg{animation:pulse 2.2s infinite;opacity:1}
.rv{opacity:0;transform:translateY(34px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1);transition-delay:var(--d,0s)}
.rv.in{opacity:1;transform:none}
.card,.pill,.rev,.checks li,.kit,.vids video{transition:transform .3s,box-shadow .3s,border-color .3s}
.card:hover,.pill:hover,.rev:hover,.checks li:hover{transform:translateY(-6px);box-shadow:0 16px 36px #005dcb26}
.card img{transition:transform .6s}.card:hover img{transform:scale(1.08)}
.card{overflow:hidden}
.kit:hover{transform:scale(1.015)}
.vids video:hover{transform:scale(1.03);box-shadow:0 14px 34px #0f172a40}
.specs>img{transition:transform .5s}.specs>img:hover{transform:scale(1.03) rotate(-1deg)}
.pop{animation:pop .45s}
.c{transition:transform .2s}.c:hover{transform:scale(1.15)}.c.on{animation:pop .4s}
.faq details{transition:box-shadow .25s,border-color .25s}.faq details[open]{border-color:var(--blue);box-shadow:0 8px 22px #005dcb1f}
.faq summary::after{transition:transform .3s}.faq details[open] summary::after{transform:rotate(180deg)}
.faq details[open] p{animation:up .35s}
.mq{overflow:hidden;background:var(--blue);color:#fff;padding:11px 0;white-space:nowrap}
.mq div{display:inline-block;animation:mq 26s linear infinite;font-weight:600;font-size:.9rem}
.mq span{margin:0 26px}
.mq:hover div{animation-play-state:paused}
.bar{height:8px;background:#e2e8f0;border-radius:99px;overflow:hidden;margin:6px 0 12px}
.bar i{display:block;height:100%;width:0;background:linear-gradient(90deg,#f59e0b,#dc2626);border-radius:99px;transition:width 1.6s cubic-bezier(.2,.7,.2,1)}
.modal{animation:fade .25s}.modal__box{animation:up .35s}
@keyframes fade{from{opacity:0}to{opacity:1}}
.toast{animation:up .4s}
.sticky{position:fixed;left:0;right:0;bottom:0;z-index:25;background:#fff;border-top:1px solid var(--line);padding:10px 14px;display:flex;align-items:center;justify-content:space-between;gap:12px;box-shadow:0 -8px 24px #0f172a1f;transform:translateY(110%);transition:transform .4s}
.sticky.on{transform:none}.sticky b{font-size:1.15rem;color:var(--blue)}.sticky .btn{padding:11px 18px}
.seal{animation:float 5s ease-in-out infinite}
.stars{display:inline-block}
@media(min-width:900px){.sticky{display:none}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}.rv,.hero__kicker,.hero h1,.hero__sub,.hero__card,.hero>.btn{opacity:1;transform:none}}
@media(max-width:899px){.toast{bottom:78px}}
