@font-face{font-family:'Bricolage Grotesque';src:url(/fonts/bricolage-grotesque-latin-700-normal.woff2) format('woff2');font-weight:700;font-display:swap}
@font-face{font-family:'Bricolage Grotesque';src:url(/fonts/bricolage-grotesque-latin-800-normal.woff2) format('woff2');font-weight:800;font-display:swap}
@font-face{font-family:'DM Sans';src:url(/fonts/dm-sans-latin-400-normal.woff2) format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:'DM Sans';src:url(/fonts/dm-sans-latin-500-normal.woff2) format('woff2');font-weight:500;font-display:swap}
@font-face{font-family:'DM Sans';src:url(/fonts/dm-sans-latin-700-normal.woff2) format('woff2');font-weight:700;font-display:swap}
@font-face{font-family:'JetBrains Mono';src:url(/fonts/jetbrains-mono-latin-700-normal.woff2) format('woff2');font-weight:700;font-display:swap}

:root{
  --paper:#F5F2EA;--paper-2:#EDE7DA;--panel:#E9E2D0;--card:#FFFFFF;--line:#E4DED0;--line-2:#DDD6C6;
  --ink:#17171B;--ink-2:#2B2B31;--ink-3:#3F3F47;--muted:#55555E;
  --accent:#C2185B;--accent-ink:#A3124C;--accent-soft:#FCE4EE;
  --cyan:#00A0DC;--magenta:#D81B6A;--yellow:#FFCE00;--green:#0B6E4F;
  --display:'Bricolage Grotesque',system-ui,sans-serif;--body:'DM Sans',system-ui,sans-serif;--mono:'JetBrains Mono',ui-monospace,monospace;
  --wrap:1200px;--gutter:clamp(16px,5vw,40px);
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:17px;line-height:1.6}
img{max-width:100%;height:auto;display:block}
a{color:var(--ink)}a:hover{color:var(--accent)}
:focus-visible{outline:3px solid var(--accent);outline-offset:2px;border-radius:4px}
.wrap{max-width:calc(var(--wrap) + 2*var(--gutter));margin:0 auto;padding:0 var(--gutter)}
.mono{font-family:var(--mono);font-weight:700;letter-spacing:.1em;text-transform:uppercase;font-size:12px}
.eyebrow{font-family:var(--mono);font-weight:700;letter-spacing:.12em;font-size:13px;color:var(--accent);text-transform:uppercase}
h1,h2,h3{font-family:var(--display);font-weight:800;letter-spacing:-.02em;line-height:1.08;margin:0}
.skip{position:absolute;left:-999px}.skip:focus{left:16px;top:8px;z-index:10;background:#fff;padding:8px 12px}

/* Barra de cupom + topo */
.coupon{display:block;background:var(--ink);color:#fff;text-decoration:none;text-align:center;font-size:14px;padding:11px var(--gutter)}
.coupon:hover{color:#fff}.coupon b{font-family:var(--mono);font-size:12px;letter-spacing:.08em;color:var(--yellow);margin-right:8px}.coupon u{margin-left:6px}
.top{border-bottom:1px solid var(--line-2)}
.top .wrap{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:76px}
.logo{display:flex;align-items:center;gap:12px;text-decoration:none}
.dots{display:grid;grid-template-columns:repeat(2,12px);gap:3px}.dots i{width:12px;height:12px;border-radius:50%}
.dots i:nth-child(1){background:var(--cyan)}.dots i:nth-child(2){background:var(--magenta)}.dots i:nth-child(3){background:var(--yellow)}.dots i:nth-child(4){background:var(--ink)}
.logo span{display:flex;flex-direction:column;line-height:1}.logo strong{font-family:var(--display);font-size:21px;font-weight:800}.logo small{font-family:var(--mono);font-weight:700;font-size:10px;letter-spacing:.32em;color:var(--muted);margin-top:4px}
.nav{display:flex;gap:28px;font-size:15px;font-weight:500}.nav a{text-decoration:none}.nav a[aria-current]{color:var(--accent);font-weight:700}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 22px;border-radius:999px;background:var(--ink);color:#fff;text-decoration:none;font-weight:700;font-size:15px;white-space:nowrap}
.btn:hover{color:#fff;opacity:.92}.btn.accent{background:var(--accent)}.btn.ghost{background:transparent;color:var(--ink);border:1.5px solid var(--ink)}.btn.ghost:hover{color:var(--ink);background:#fff}
.btn.lg{min-height:58px;padding:0 28px;font-size:17px}.btn.white{background:#fff;color:var(--ink)}.btn.white:hover{color:var(--ink)}
.btn.sq{border-radius:12px}
@media(max-width:860px){.nav{display:none}.top .btn{min-height:44px;padding:0 16px;font-size:14px}}

/* Migalhas + cabeçalho do artigo */
.crumbs{display:flex;flex-wrap:wrap;gap:8px;font-size:14px;color:var(--muted);padding-top:28px}.crumbs a{color:var(--muted)}
.art-head{padding:24px 0 40px;max-width:980px}
.art-head .tags{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:18px}
.chip{display:inline-block;padding:6px 12px;border-radius:999px;background:var(--ink);color:#fff;font-family:var(--mono);font-weight:700;font-size:12px;letter-spacing:.1em;text-decoration:none}
.chip:hover{color:#fff}
.art-head h1{font-size:clamp(34px,5.2vw,58px);line-height:1.04;letter-spacing:-.025em}
.dek{font-size:clamp(18px,2vw,21px);color:var(--ink-3);max-width:820px;margin:18px 0 0}
.byline{display:flex;align-items:center;gap:12px;font-size:14px;color:var(--ink-3);margin-top:18px}.byline .dots{grid-template-columns:repeat(2,9px);gap:2px}.byline .dots i{width:9px;height:9px}
.hero-fig{margin:0}.hero-fig img{border-radius:24px;width:100%}.hero-fig figcaption{font-size:14px;color:var(--muted);margin-top:10px}
.hero-graphic{border-radius:24px;background:var(--panel);min-height:260px;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;padding:40px}
.hero-graphic .big{font-family:var(--display);font-weight:800;font-size:clamp(64px,12vw,150px);letter-spacing:-.03em;line-height:1;text-align:center}
.hero-graphic .cm{position:absolute;width:22px;height:22px;border-color:var(--ink);border-style:solid;border-width:0}
.cm.tl{left:22px;top:22px;border-left-width:1.5px;border-top-width:1.5px}.cm.tr{right:22px;top:22px;border-right-width:1.5px;border-top-width:1.5px}.cm.bl{left:22px;bottom:22px;border-left-width:1.5px;border-bottom-width:1.5px}.cm.br{right:22px;bottom:22px;border-right-width:1.5px;border-bottom-width:1.5px}
.hero-graphic .sub{position:absolute;bottom:26px;left:0;right:0;text-align:center}

/* Corpo do artigo */
.art-grid{display:grid;grid-template-columns:minmax(0,760px) 360px;gap:80px;padding:56px 0 96px;align-items:start}
@media(max-width:1100px){.art-grid{grid-template-columns:minmax(0,1fr);gap:40px}}
.prose{display:flex;flex-direction:column;gap:22px;min-width:0}
.prose p,.prose li{font-size:18px;line-height:1.75;color:var(--ink-2)}.prose p{margin:0}
.prose ul,.prose ol{margin:0;padding-left:22px;display:flex;flex-direction:column;gap:6px}
.prose h2{font-size:clamp(26px,3vw,34px);line-height:1.15;letter-spacing:-.015em;margin-top:26px;scroll-margin-top:24px}
.prose h3{font-family:var(--body);font-size:19px;font-weight:700;letter-spacing:0;line-height:1.35;margin-top:6px}
.prose a{color:var(--accent-ink);text-underline-offset:2px}
.quick{padding:24px 26px;border-radius:18px;background:var(--ink);color:#fff}.quick .mono{color:var(--yellow);display:block;margin-bottom:8px}.quick p{color:#fff;font-size:17px;margin:0}
.tip{padding:20px 22px;border-radius:14px;border:1.5px dashed #BDB5A2;font-size:16px;line-height:1.6}
.confirm{background:#FFF6CC;border-radius:4px;padding:0 4px;font-weight:700;color:#5C4800}
.tbl{border:1px solid var(--line);border-radius:16px;overflow:auto;background:#fff}
.tbl table{width:100%;border-collapse:collapse;min-width:560px}
.tbl th{text-align:left;padding:14px 16px;font-size:14px;border-bottom:1.5px solid var(--ink)}
.tbl td{padding:14px 16px;font-size:15px;line-height:1.45;color:var(--ink-2);border-bottom:1px solid var(--line);vertical-align:top}
.tbl tr:last-child td{border-bottom:0}.tbl td:first-child{font-family:var(--mono);font-weight:700;font-size:12px;letter-spacing:.06em;color:var(--muted)}
.choices{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px}
.choice{padding:22px;border-radius:16px;background:#fff;border:1px solid var(--line);display:flex;flex-direction:column;gap:10px}
.choice .lbl{align-self:flex-start;padding:4px 10px;border-radius:999px;font-family:var(--mono);font-weight:700;font-size:11px;letter-spacing:.08em}
.choice h3{margin:0;font-size:18px}.choice p{font-size:15px;line-height:1.55;color:var(--ink-3);margin:0}
.c-cyan{background:#E0F3FB;color:#005F85}.c-pink{background:#FCE4EE;color:#A3124C}.c-yellow{background:#FFF4C2;color:#6B5300}.c-gray{background:#ECECEE;color:#3F3F47}
.pcard{display:flex;gap:20px;padding:18px;background:#fff;border:1px solid var(--line);border-radius:18px}
.pcard img{width:150px;height:150px;object-fit:cover;border-radius:12px;flex-shrink:0}
.pcard .info{display:flex;flex-direction:column;gap:6px;min-width:0;flex:1}
.pcard .name{font-size:18px;line-height:1.3;font-weight:700}.pcard .rate{font-size:14px;color:var(--ink-3);display:flex;align-items:center;gap:6px}
.pcard .row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto;flex-wrap:wrap}
.price{font-family:var(--display);font-weight:800;font-size:26px}.pix{font-size:13px;font-weight:700;color:var(--green);margin-left:6px}.unit{font-size:13px;color:var(--muted);margin-left:6px}
@media(max-width:560px){.pcard{flex-direction:column}.pcard img{width:100%;height:200px}}
.faq{display:flex;flex-direction:column}.faq div{padding:20px 0;border-top:1.5px solid var(--ink)}.faq div:last-child{border-bottom:1.5px solid var(--ink)}
.faq h3{margin:0 0 8px}.faq p{font-size:17px}
.gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:14px}
.gallery figure{margin:0;background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden}.gallery img{width:100%;aspect-ratio:4/3;object-fit:cover}
.gallery figcaption{padding:10px 12px;font-size:14px;color:var(--ink-3)}
.phrases{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:10px;list-style:none;padding:0!important}
.phrases li{background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px 16px;font-size:16px!important;line-height:1.5!important}

/* Lateral */
.side{display:flex;flex-direction:column;gap:24px;position:sticky;top:24px}
@media(max-width:1100px){.side{position:static}}
.toc{padding:24px;border-radius:18px;background:#fff;border:1px solid var(--line);display:flex;flex-direction:column}
.toc .mono{color:var(--muted);padding-bottom:12px}
.toc a{display:flex;gap:12px;padding:10px 0;border-top:1px solid var(--line);font-size:15px;text-decoration:none;color:var(--ink-2)}
.toc a span{font-family:var(--mono);font-weight:700;font-size:12px;color:#9A9AA2;padding-top:2px}
.best{position:relative;padding:26px;border-radius:18px;background:var(--ink);color:#fff;overflow:hidden;display:flex;flex-direction:column;gap:14px}
.best::before{content:"";position:absolute;right:-40px;top:-40px;width:120px;height:120px;border-radius:50%;background:var(--magenta)}
.best>*{position:relative}.best .mono{color:var(--yellow)}.best .t{font-family:var(--display);font-weight:800;font-size:26px;line-height:1.15}
.best img{width:100%;height:190px;object-fit:cover;border-radius:12px}.best .s{font-size:14px;color:#C9C9D0}.best .pix{color:#7DDCB5}

/* Relacionados e listas */
.band{background:var(--paper-2);padding:88px 0 104px}
.band-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;margin-bottom:36px}
.band-head h2{font-size:clamp(28px,3.4vw,40px)}
.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:24px}
.acard{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;text-decoration:none;color:var(--ink)}
.acard:hover{color:var(--ink);border-color:var(--ink)}
.acard .vis{height:170px;display:flex;align-items:center;justify-content:center;font-family:var(--display);font-weight:800;font-size:48px;letter-spacing:-.02em;padding:0 16px;text-align:center}
.acard .txt{padding:22px;display:flex;flex-direction:column;gap:10px;flex:1}.acard .mono{color:var(--muted);font-size:11px}
.acard .h{font-size:19px;line-height:1.35;font-weight:700}.acard .go{font-size:14px;font-weight:700;color:var(--accent);margin-top:auto}
.v-cyan{background:#DDF1F9;color:#006C96}.v-pink{background:#FBE3EC;color:#A3124C}.v-yellow{background:#FFF3BF;color:#6B5300}.v-gray{background:#E6E3DC;color:#2B2B31}

/* CTA final + rodapé */
.cta{padding:88px 0 104px}
.cta-box{position:relative;overflow:hidden;border-radius:28px;background:var(--accent);color:#fff;padding:clamp(32px,6vw,72px);display:flex;justify-content:space-between;align-items:center;gap:40px;flex-wrap:wrap}
.cta-box::before{content:"";position:absolute;right:-80px;top:-80px;width:260px;height:260px;border-radius:50%;background:var(--yellow)}
.cta-box::after{content:"";position:absolute;right:120px;bottom:-60px;width:140px;height:140px;border-radius:50%;background:var(--cyan)}
.cta-box>*{position:relative;z-index:1}.cta-box h2{font-size:clamp(30px,4.2vw,52px);line-height:1.05;max-width:640px}.cta-box p{font-size:19px;margin:16px 0 24px}
.ticket{width:300px;max-width:100%;padding:24px 26px;border-radius:16px;background:#fff;color:var(--ink);border:2px dashed var(--ink);transform:rotate(3deg);display:flex;flex-direction:column;gap:6px}
.ticket .mono{color:var(--muted)}.ticket strong{font-family:var(--display);font-size:44px;line-height:1}
.foot{background:var(--ink);color:#C9C9D0;padding:56px 0;font-size:14px;line-height:1.7}
.foot .wrap{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:36px}
.foot a{color:#fff}.foot .mono{color:#fff;display:block;margin-bottom:8px}.foot .brand{font-family:var(--display);font-weight:800;font-size:22px;color:#fff}

/* Hub e home */
.hub-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,480px);gap:56px;align-items:center;padding-top:40px;padding-bottom:72px}
@media(max-width:560px){.logo strong{font-size:17px}.logo small{font-size:9px}.top .btn svg{display:none}}
@media(max-width:960px){.hub-hero{grid-template-columns:1fr}}
.hub-hero h1{font-size:clamp(36px,5vw,62px);line-height:1.02}
.hub-hero .lead{font-size:clamp(17px,1.8vw,19px);color:var(--ink-3);margin:18px 0 26px}
.actions{display:flex;gap:14px;flex-wrap:wrap}
.stars{display:inline-flex;gap:2px;vertical-align:middle}
.trust{display:flex;flex-wrap:wrap;align-items:center;gap:12px;font-size:15px;color:var(--ink-3);margin-top:20px}
.section{padding:88px 0}
.section h2{font-size:clamp(30px,3.6vw,48px)}
.sec-head{display:flex;flex-direction:column;gap:12px;margin-bottom:40px;max-width:760px}
.sec-head p{margin:0;color:var(--ink-3);font-size:17px}
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:28px;padding:32px 0;border-top:1.5px solid var(--ink);border-bottom:1.5px solid var(--ink)}
.stats b{display:block;font-family:var(--display);font-weight:800;font-size:40px;line-height:1}.stats span{font-size:15px;color:var(--ink-3)}
.prod-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:24px}
.prod{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden}
.prod .ph{position:relative;background:#fff}.prod .ph img{width:100%;height:228px;object-fit:cover}
.badge{position:absolute;top:12px;padding:6px 10px;border-radius:999px;font-family:var(--mono);font-weight:700;font-size:11px;letter-spacing:.06em;color:#fff}
.badge.l{left:12px;background:var(--ink)}.badge.r{right:12px;background:var(--accent)}
.prod .bd{padding:20px;display:flex;flex-direction:column;gap:10px;flex:1}.prod .bd .mono{color:var(--muted);font-size:11px}
.prod h3{font-family:var(--body);font-size:18px;font-weight:700;letter-spacing:0;line-height:1.3}
.prod .buy{margin-top:auto;display:flex;flex-direction:column;gap:10px}
.off{padding:2px 6px;border-radius:6px;background:var(--accent-soft);color:var(--accent-ink);font-size:12px;font-weight:700;margin-left:8px}
.steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:32px}
.steps li{border-top:1.5px solid var(--ink);padding-top:20px;display:flex;flex-direction:column;gap:12px}
.steps .n{font-family:var(--mono);font-weight:700;color:var(--accent)}.steps h3{font-size:24px;font-weight:700}.steps p{margin:0;color:var(--ink-3)}
.dark{background:var(--ink);color:#fff}.dark .sec-head p{color:#C9C9D0}.dark .eyebrow{color:var(--yellow)}
.who{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:20px}
.who a{padding:28px;border-radius:18px;background:#24242A;color:#fff;text-decoration:none;display:flex;flex-direction:column;gap:12px}
.who a:hover{background:#2E2E36;color:#fff}.who h3{font-size:22px;font-weight:700}.who p{margin:0;color:#C9C9D0;font-size:15px}
.who .ic{width:48px;height:48px;border-radius:12px}
.reviews{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:24px}
.review{margin:0;background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;display:flex;flex-direction:column}
.review img{width:100%;aspect-ratio:4/3;object-fit:cover}.review .bd{padding:22px;display:flex;flex-direction:column;gap:12px;flex:1}
.review blockquote{margin:0;font-size:16px;line-height:1.55;color:var(--ink-2)}
.review figcaption{margin-top:auto;padding-top:14px;border-top:1px solid #EFEAE0;display:flex;justify-content:space-between;gap:10px;font-size:13px;font-weight:700}
.review figcaption span:first-child{overflow-wrap:anywhere}.pill{padding:4px 10px;border-radius:999px;background:var(--paper);font-size:12px;flex-shrink:0}
.rating-big{display:flex;align-items:center;gap:14px}.rating-big b{font-family:var(--display);font-weight:800;font-size:80px;line-height:.9;letter-spacing:-.03em}
.hero-art{border-radius:24px;overflow:hidden;position:relative;background:var(--panel)}
.hero-art .chip2{position:absolute;right:24px;bottom:22px;background:#fff;border-radius:999px;padding:9px 16px;font-weight:700;font-size:14px;box-shadow:0 6px 16px rgba(23,23,27,.14)}
.hi{box-shadow:inset 0 -.34em 0 var(--yellow)}
