/* ORDEM 42 — Arquivo Confidencial · protótipo de tema (localhost) */

/* ---------- Fonts ---------- */
@import url('https://fonts.googleapis.com/css2?family=Marcellus&family=Archivo:wght@400;500;600;700;800;900&family=Special+Elite&display=swap');

/* ---------- Tokens ---------- */
:root{
  --noir:#0A0907;
  --noir-2:#100E0A;
  --noir-3:#171410;
  --ink:#F4EAD5;
  --ink-2:#D8CBAF;
  --ink-dim:rgba(244,234,213,.60);
  --ink-faint:rgba(244,234,213,.34);
  --line:rgba(244,234,213,.14);
  --line-strong:rgba(244,234,213,.26);
  --gold:#C9A961;
  --gold-bright:#E4C87E;
  --gold-deep:#8f7638;
  --blood:#8B1A1A;
  --blood-bright:#B4231F;
  --kraft:#C7AB7C;
  --kraft-2:#B79868;
  --kraft-ink:#3a2f1c;

  --display:'Marcellus',Georgia,serif;
  --body:'Archivo',system-ui,sans-serif;
  --type:'Special Elite','Courier New',monospace;

  --page:1180px;
  --gutter:clamp(20px,5vw,64px);

  --tape:repeating-linear-gradient(-45deg,#E7B008 0 18px,#0A0907 18px 36px);
  --grain:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.5'/%3E%3C/svg%3E");

  --z-nav:100; --z-sticky:200; --z-bar:300; --z-modal:400;

  --ease:cubic-bezier(.19,1,.22,1);
}

/* ---------- Reset ---------- */
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{
  font-family:var(--body);
  background:var(--noir);
  color:var(--ink);
  line-height:1.6;
  font-size:16px;
  overflow-x:hidden;
  position:relative;
}
/* film grain overlay on everything */
body::before{
  content:"";position:fixed;inset:0;z-index:1;pointer-events:none;
  background-image:var(--grain);background-size:180px;opacity:.05;mix-blend-mode:overlay;
}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit}
h1,h2,h3,h4{font-family:var(--display);font-weight:400;line-height:1.04;letter-spacing:-.01em;text-wrap:balance}
::selection{background:var(--blood);color:var(--ink)}

.wrap{max-width:var(--page);margin-inline:auto;padding-inline:var(--gutter);width:100%}
.section{position:relative;z-index:2;padding-block:clamp(64px,10vw,128px)}

/* classified label */
.tag{
  font-family:var(--body);font-weight:700;font-size:.76rem;letter-spacing:.14em;text-transform:uppercase;
  color:var(--gold-bright);display:inline-block;
}

/* redaction — reveal on hover/tap */
.redact{
  background:var(--ink);color:transparent;border-radius:1px;padding:0 .12em;
  transition:background .35s var(--ease),color .35s var(--ease);cursor:help;user-select:none;
}
.redact:hover,.redact.on{background:transparent;color:var(--blood-bright)}

/* stamp */
.stamp{
  font-family:var(--type);text-transform:uppercase;letter-spacing:.12em;
  color:var(--blood-bright);border:2.5px solid var(--blood-bright);
  padding:.35em .7em;border-radius:3px;display:inline-block;
  transform:rotate(-8deg);opacity:.85;
  box-shadow:inset 0 0 0 1px rgba(180,35,31,.25);
  -webkit-mask:var(--grain);mask:var(--grain);-webkit-mask-size:120px;mask-size:120px;
}

/* buttons */
.btn{
  --bg:var(--gold);--fg:#0A0907;
  display:inline-flex;align-items:center;justify-content:center;gap:.6em;
  background:var(--bg);color:var(--fg);
  font-family:var(--body);font-weight:800;font-size:.95rem;letter-spacing:.02em;
  padding:1.05em 1.7em;border-radius:0;position:relative;
  text-transform:uppercase;transition:transform .25s var(--ease),box-shadow .25s var(--ease),background .25s;
  box-shadow:0 0 0 0 rgba(201,169,97,.5);
}
.btn:hover{transform:translateY(-2px);box-shadow:0 12px 30px -12px rgba(201,169,97,.6)}
.btn:active{transform:translateY(0)}
.btn--ghost{--bg:transparent;--fg:var(--ink);box-shadow:inset 0 0 0 1.5px var(--line-strong)}
.btn--ghost:hover{--bg:rgba(244,234,213,.06);box-shadow:inset 0 0 0 1.5px var(--gold)}
.btn--blood{--bg:var(--blood);--fg:var(--ink)}
.btn--blood:hover{--bg:var(--blood-bright)}
.btn--block{width:100%}

/* ---------- Announcement ---------- */
.announce{
  background:var(--blood);color:var(--ink);z-index:var(--z-nav);position:relative;
  font-family:var(--type);font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;
  text-align:center;padding:.55em 1em;
}

/* ---------- Header ---------- */
.hdr{
  position:sticky;top:0;z-index:var(--z-nav);
  background:rgba(10,9,7,.82);backdrop-filter:blur(10px);
  border-bottom:1px solid var(--line);
}
.hdr__in{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;height:68px}
.brand{display:flex;align-items:center;gap:.65rem;font-family:var(--display);font-size:1.35rem;letter-spacing:.02em}
.brand svg{width:30px;height:30px;color:var(--gold);flex:none}
.brand b{font-weight:400}
.nav{display:flex;gap:2rem;align-items:center}
.nav a{font-size:.86rem;letter-spacing:.03em;color:var(--ink-dim);transition:color .2s}
.nav a:hover{color:var(--ink)}
.hdr__actions{display:flex;align-items:center;gap:1rem}
.icon-btn{width:42px;height:42px;display:grid;place-items:center;color:var(--ink);position:relative}
.icon-btn svg{width:20px;height:20px}
.cart-count{position:absolute;top:4px;right:4px;background:var(--blood);color:var(--ink);font-family:var(--body);font-weight:800;font-size:.62rem;min-width:16px;height:16px;border-radius:9px;display:grid;place-items:center;padding:0 3px}
.burger{display:none}

/* ---------- Hero ---------- */
.hero{position:relative;z-index:2;padding-block:clamp(40px,7vw,84px);overflow:hidden}
.hero::after{content:"";position:absolute;inset:0;z-index:-1;
  background:radial-gradient(120% 80% at 78% 18%,rgba(201,169,97,.12),transparent 55%),
             radial-gradient(90% 70% at 0% 100%,rgba(139,26,26,.16),transparent 60%)}
.hero__in{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(2rem,5vw,4.5rem);align-items:center}
.hero__eye{margin-bottom:1.4rem}
.hero h1{font-size:clamp(2.6rem,6.4vw,5rem);margin-bottom:1.3rem}
.hero h1 em{font-style:normal;color:var(--gold)}
.hero__sub{font-size:clamp(1rem,1.4vw,1.15rem);color:var(--ink-dim);max-width:46ch;margin-bottom:2rem}
.hero__cta{display:flex;gap:1rem;flex-wrap:wrap;margin-bottom:2rem}
.hero__meta{display:flex;gap:1.6rem;flex-wrap:wrap;font-family:var(--body);font-size:.76rem;letter-spacing:.08em;color:var(--ink-dim);text-transform:uppercase}
.hero__meta span{display:flex;align-items:center;gap:.5em}
.hero__meta b{color:var(--gold);font-family:var(--body);font-weight:800}

/* hero art */
.dossier{position:relative;aspect-ratio:1/1;transform:rotate(2deg)}
.dossier__img{position:relative;border:1px solid var(--line-strong);
  box-shadow:0 40px 80px -30px rgba(0,0,0,.9),0 0 0 1px rgba(0,0,0,.5);
  background:var(--noir-2)}
.dossier__img img{width:100%;height:100%;object-fit:cover}
.dossier .tape{position:absolute;height:38px;width:66%;background:var(--tape);
  top:24px;left:-6%;transform:rotate(-6deg);opacity:.94;box-shadow:0 6px 14px rgba(0,0,0,.5)}
.dossier .stamp{position:absolute;right:-14px;bottom:34px;font-size:1.05rem;background:rgba(10,9,7,.6);z-index:3}
.dossier__clip{position:absolute;top:-14px;right:16%;width:22px;height:54px;border:3px solid var(--ink-2);border-bottom:none;border-radius:12px 12px 0 0;opacity:.6}

/* eye mark (reusable) */
.eyemark{color:var(--gold)}

/* ---------- Trust strip ---------- */
.trust{border-block:1px solid var(--line);background:var(--noir-2);position:relative;z-index:2}
.trust__in{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line)}
.trust__i{background:var(--noir-2);padding:1.3rem 1rem;text-align:center;display:flex;flex-direction:column;gap:.25rem;align-items:center}
.trust__i svg{width:22px;height:22px;color:var(--gold);margin-bottom:.2rem}
.trust__i b{font-family:var(--display);font-size:1.05rem}
.trust__i span{font-size:.76rem;color:var(--ink-dim)}

/* ---------- Section head ---------- */
.head{max-width:640px;margin-bottom:clamp(2.4rem,5vw,4rem)}
.head h2{font-size:clamp(2rem,4.4vw,3.2rem);margin-block:.8rem .6rem}
.head p{color:var(--ink-dim);font-size:1.05rem;max-width:52ch}
.head--center{margin-inline:auto;text-align:center}
.head--center p{margin-inline:auto}

/* ---------- Como funciona ---------- */
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(1rem,2.5vw,2rem);counter-reset:s}
.step{position:relative;padding:2rem 1.6rem;border:1px solid var(--line);background:var(--noir-2)}
.step::before{counter-increment:s;content:"N.º " counter(s,decimal-leading-zero);
  font-family:var(--body);font-size:.72rem;letter-spacing:.16em;color:var(--gold);display:block;margin-bottom:1rem}
.step h3{font-size:1.5rem;margin-bottom:.6rem}
.step p{color:var(--ink-dim);font-size:.95rem}
.step__ico{width:40px;height:40px;color:var(--gold);margin-bottom:1.1rem}
.step__ico svg{width:100%;height:100%}

/* ---------- Casos ---------- */
.cases{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(1rem,2.2vw,1.8rem);align-items:start}
.case{position:relative;background:var(--noir-2);border:1px solid var(--line);display:flex;flex-direction:column;transition:border-color .3s,transform .3s var(--ease)}
.case:hover{border-color:var(--gold);transform:translateY(-4px)}
.case__media{position:relative;aspect-ratio:1/1;overflow:hidden;background:#EDE7DA}
.case__media img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease)}
.case:hover .case__media img{transform:scale(1.04)}
.case__no{position:absolute;top:0;left:0;background:var(--noir);color:var(--gold);font-family:var(--body);font-size:.72rem;letter-spacing:.12em;padding:.5em .8em;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.case__flag{position:absolute;top:0;right:0;background:var(--blood);color:var(--ink);font-family:var(--body);font-size:.66rem;letter-spacing:.1em;padding:.5em .8em;text-transform:uppercase}
.case__body{padding:1.5rem;display:flex;flex-direction:column;gap:1rem;flex:1}
.case__body h3{font-size:1.55rem}
.case__stats{display:flex;gap:1.4rem;font-family:var(--body);font-size:.72rem;letter-spacing:.06em;color:var(--ink-dim);text-transform:uppercase}
.case__stats b{color:var(--ink);font-family:var(--body);font-weight:700;display:block;font-size:.9rem;text-transform:none;letter-spacing:0}
.case__price{display:flex;align-items:baseline;gap:.7rem;margin-top:auto}
.case__price .now{font-family:var(--display);font-size:1.85rem;color:var(--gold)}
.case__price .was{font-size:.95rem;color:var(--ink-faint);text-decoration:line-through}
.case__price .off{font-family:var(--body);font-weight:800;font-size:.72rem;color:var(--ink);background:var(--blood-bright);border:none;padding:.28em .5em;letter-spacing:.02em;border-radius:2px}
.case--feat{border-color:var(--gold)}
.case--feat .case__flag{background:var(--gold);color:#0A0907;font-weight:700}

/* ---------- Diferencial (evidence board) ---------- */
.evidence{position:relative;overflow:hidden}
.evidence__in{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,5vw,4.5rem);align-items:center}
.evlist{list-style:none;display:flex;flex-direction:column;gap:1.5rem}
.evlist li{display:flex;gap:1.1rem;align-items:flex-start}
.evlist .n{font-family:var(--body);color:var(--gold);font-size:.8rem;letter-spacing:.1em;flex:none;padding-top:.35rem;width:2.6em}
.evlist h4{font-family:var(--display);font-size:1.3rem;margin-bottom:.3rem}
.evlist p{color:var(--ink-dim);font-size:.95rem}
.board{position:relative;aspect-ratio:4/5;border:1px solid var(--line-strong);background:var(--noir-3);padding:1.4rem;
  box-shadow:inset 0 0 120px rgba(0,0,0,.7)}
.board__photo{position:absolute;width:44%;border:6px solid #efeadc;box-shadow:0 20px 40px -18px rgba(0,0,0,.9)}
.board__photo img{width:100%;filter:grayscale(.4) contrast(1.05)}
.board__photo.p1{top:9%;left:8%;transform:rotate(-5deg)}
.board__photo.p2{bottom:10%;right:8%;transform:rotate(4deg);width:40%}
.board__pin{position:absolute;width:12px;height:12px;border-radius:50%;background:var(--blood-bright);box-shadow:0 2px 4px rgba(0,0,0,.6)}
.board__string{position:absolute;inset:0;pointer-events:none}

/* ---------- Depoimentos ---------- */
.quotes{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem}
.quote{background:var(--noir-2);border:1px solid var(--line);padding:1.8rem;position:relative}
.quote__stars{color:var(--gold);letter-spacing:.15em;font-size:.9rem;margin-bottom:.9rem}
.quote p{font-size:1rem;color:var(--ink-2);margin-bottom:1.2rem;font-style:italic}
.quote__by{font-family:var(--body);font-size:.76rem;letter-spacing:.06em;color:var(--ink-dim);text-transform:uppercase;display:flex;align-items:center;gap:.5em}
.quote__by::before{content:"";width:18px;height:1px;background:var(--gold)}

/* ---------- FAQ ---------- */
.faq{max-width:760px;margin-inline:auto}
.faq__i{border-bottom:1px solid var(--line)}
.faq__q{width:100%;text-align:left;display:flex;justify-content:space-between;align-items:center;gap:1rem;
  padding:1.4rem 0;font-family:var(--display);font-size:1.2rem}
.faq__q .pm{color:var(--gold);font-size:1.4rem;flex:none;transition:transform .3s var(--ease)}
.faq__i.open .pm{transform:rotate(45deg)}
.faq__a{max-height:0;overflow:hidden;transition:max-height .4s var(--ease)}
.faq__a p{padding-bottom:1.4rem;color:var(--ink-dim);font-size:.98rem}

/* ---------- Final CTA ---------- */
.finale{text-align:center;position:relative;overflow:hidden}
.finale::after{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(60% 80% at 50% 0%,rgba(139,26,26,.22),transparent 70%)}
.finale h2{font-size:clamp(2.2rem,5.5vw,4rem);margin-bottom:1.2rem}
.finale p{color:var(--ink-dim);max-width:44ch;margin:0 auto 2.2rem;font-size:1.1rem}

/* ---------- Footer ---------- */
.ft{border-top:1px solid var(--line);background:var(--noir-2);position:relative;z-index:2;padding-block:3.5rem 2rem}
.ft__top{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:2rem;margin-bottom:2.5rem}
.ft__brand svg{width:34px;height:34px;color:var(--gold);margin-bottom:1rem}
.ft__brand p{color:var(--ink-dim);font-size:.9rem;max-width:32ch}
.ft h5{font-family:var(--body);font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);margin-bottom:1.1rem}
.ft ul{list-style:none;display:flex;flex-direction:column;gap:.7rem}
.ft ul a{color:var(--ink-dim);font-size:.9rem;transition:color .2s}
.ft ul a:hover{color:var(--ink)}
.ft__bot{border-top:1px solid var(--line);padding-top:1.6rem;display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;font-size:.78rem;color:var(--ink-faint);font-family:var(--body);letter-spacing:.04em}

/* ---------- Mobile buy bar ---------- */
.buybar{position:fixed;left:0;right:0;bottom:0;z-index:var(--z-bar);display:none;
  background:rgba(10,9,7,.94);backdrop-filter:blur(12px);border-top:1px solid var(--line);
  padding:.7rem var(--gutter) calc(.7rem + env(safe-area-inset-bottom));
  align-items:center;gap:1rem;justify-content:space-between}
.buybar .price{font-family:var(--display);font-size:1.3rem;color:var(--gold)}
.buybar .price small{display:block;font-family:var(--body);font-size:.62rem;color:var(--ink-dim);letter-spacing:.06em}

/* ---------- Reveal ---------- */
.rise{opacity:1;transform:none}
@media (prefers-reduced-motion:no-preference){
  .js .rise{opacity:0;transform:translateY(24px);transition:opacity .8s var(--ease),transform .8s var(--ease)}
  .js .rise.in{opacity:1;transform:none}
}

/* ---------- Responsive ---------- */
@media (max-width:900px){
  .nav{display:none}
  .burger{display:grid}
  .hero__in{grid-template-columns:1fr;gap:2.5rem}
  .dossier{max-width:420px;margin-inline:auto;order:-1}
  .evidence__in{grid-template-columns:1fr}
  .board{max-width:440px;margin-inline:auto;width:100%}
  .steps,.cases,.quotes{grid-template-columns:1fr}
  .cases{gap:1.2rem}
  .ft__top{grid-template-columns:1fr 1fr}
  .ft__brand{grid-column:1/-1}
  .buybar{display:flex}
  body{padding-bottom:76px}
  .trust__in{grid-template-columns:1fr 1fr}
}
@media (max-width:520px){
  .hero__meta{gap:1rem}
  .trust__in{grid-template-columns:1fr 1fr}
  .quotes{grid-template-columns:1fr}
}

/* ============ PRODUCT PAGE ============ */
.crumb{font-family:var(--body);font-size:.72rem;letter-spacing:.08em;color:var(--ink-dim);text-transform:uppercase;padding-block:1.2rem;display:flex;gap:.6em;align-items:center;position:relative;z-index:2}
.crumb a:hover{color:var(--gold)}
.crumb span{color:var(--ink-faint)}

.pdp{position:relative;z-index:2;padding-bottom:clamp(3rem,6vw,6rem)}
.pdp__in{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(2rem,4vw,4rem);align-items:start}

/* gallery */
.gal{position:sticky;top:88px}
.gal__main{position:relative;aspect-ratio:1/1;background:#EDE7DA;border:1px solid var(--line-strong);overflow:hidden}
.gal__main img{width:100%;height:100%;object-fit:cover}
.gal__main .tape{position:absolute;height:34px;width:60%;background:var(--tape);top:20px;left:-4%;transform:rotate(-5deg);opacity:.95;box-shadow:0 6px 14px rgba(0,0,0,.4)}
.gal__stamp{position:absolute;right:16px;bottom:16px}
.gal__thumbs{display:flex;gap:.7rem;margin-top:.7rem}
.gal__thumbs button{flex:1;aspect-ratio:1/1;background:#EDE7DA;border:1px solid var(--line);overflow:hidden;opacity:.6;transition:opacity .2s,border-color .2s}
.gal__thumbs button.on,.gal__thumbs button:hover{opacity:1;border-color:var(--gold)}
.gal__thumbs img{width:100%;height:100%;object-fit:cover}

/* buy panel */
.buy .tag{margin-bottom:1rem}
.buy h1{font-size:clamp(2.2rem,4.6vw,3.4rem);margin-bottom:1rem}
.buy__rate{display:flex;align-items:center;gap:.7rem;margin-bottom:1.4rem;font-size:.9rem;color:var(--ink-dim)}
.buy__rate .s{color:var(--gold);letter-spacing:.1em}
.buy__price{display:flex;align-items:baseline;gap:.9rem;margin-bottom:.4rem}
.buy__price .now{font-family:var(--display);font-size:2.6rem;color:var(--gold)}
.buy__price .was{font-size:1.05rem;color:var(--ink-faint);text-decoration:line-through}
.buy__price .off{font-family:var(--body);font-weight:800;font-size:.82rem;color:var(--ink);background:var(--blood-bright);border:none;padding:.32em .6em;letter-spacing:.02em;border-radius:2px}
.buy__inst{font-size:.9rem;color:var(--ink-dim);margin-bottom:1.6rem}
.buy__inst b{color:var(--ink)}
.stats-row{display:flex;gap:0;border:1px solid var(--line);margin-bottom:1.6rem}
.stats-row div{flex:1;padding:1rem;text-align:center;border-right:1px solid var(--line)}
.stats-row div:last-child{border-right:none}
.stats-row b{font-family:var(--display);font-size:1.2rem;display:block;color:var(--ink)}
.stats-row span{font-family:var(--body);font-size:.66rem;letter-spacing:.08em;color:var(--ink-dim);text-transform:uppercase}
.qty{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}
.qty__ctrl{display:flex;align-items:center;border:1px solid var(--line-strong)}
.qty__ctrl button{width:44px;height:48px;font-size:1.3rem;color:var(--ink)}
.qty__ctrl span{width:44px;text-align:center;font-weight:700}
.buy__actions{display:flex;flex-direction:column;gap:.8rem;margin-bottom:1.6rem}
.buy__note{display:flex;gap:.6rem;align-items:center;font-size:.82rem;color:var(--ink-dim);font-family:var(--body);letter-spacing:.03em}
.buy__note svg{width:16px;height:16px;color:var(--gold);flex:none}
.ship{border:1px solid var(--line);padding:1.1rem 1.2rem;margin-bottom:1.6rem;background:var(--noir-2)}
.ship label{font-family:var(--body);font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--gold);display:block;margin-bottom:.6rem}
.ship__row{display:flex;gap:.6rem}
.ship__row input{flex:1;background:var(--noir);border:1px solid var(--line-strong);color:var(--ink);padding:.7rem .9rem;font-family:var(--body);font-size:.95rem}
.ship__row input::placeholder{color:var(--ink-faint)}
.ship__row button{background:var(--noir-3);border:1px solid var(--line-strong);color:var(--ink);padding:0 1.1rem;font-family:var(--body);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase}
.ship__row button:hover{border-color:var(--gold);color:var(--gold)}

/* inside the dossier */
.inside{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-top:1.5rem}
.inside__i{border:1px solid var(--line);background:var(--noir-2);padding:1.3rem 1rem;text-align:center}
.inside__i svg{width:26px;height:26px;color:var(--gold);margin-bottom:.7rem}
.inside__i b{font-family:var(--display);font-size:1rem;display:block;margin-bottom:.2rem}
.inside__i span{font-size:.8rem;color:var(--ink-dim)}

.prose{max-width:62ch;color:var(--ink-2);font-size:1.05rem}
.prose p{margin-bottom:1.1rem}
.prose .drop::first-letter{font-family:var(--display);font-size:3.2rem;float:left;line-height:.8;padding:.05em .12em 0 0;color:var(--gold)}

/* cross-sell */
.xsell{border:1px solid var(--gold);background:linear-gradient(180deg,rgba(201,169,97,.06),transparent);display:grid;grid-template-columns:auto 1fr auto;gap:1.5rem;align-items:center;padding:1.5rem}
.xsell img{width:96px;height:96px;object-fit:cover;border:1px solid var(--line)}
.xsell h4{font-family:var(--display);font-size:1.4rem;margin-bottom:.3rem}
.xsell p{color:var(--ink-dim);font-size:.9rem}
.xsell .px{font-family:var(--display);color:var(--gold);font-size:1.5rem;white-space:nowrap}

@media (max-width:900px){
  .pdp__in{grid-template-columns:1fr}
  .gal{position:static}
  .inside{grid-template-columns:1fr 1fr}
  .xsell{grid-template-columns:1fr;text-align:center;justify-items:center}
}

/* ============ HERO SLIDER (banners reais) ============ */
.heroslider{position:relative;z-index:2;overflow:hidden;background:var(--noir);aspect-ratio:1580/600}
.hs__track{display:flex;height:100%;transition:transform .7s var(--ease);will-change:transform}
.hs__slide{min-width:100%;height:100%}
.hs__slide a,.hs__slide picture{display:block;width:100%;height:100%}
.hs__slide img{display:block;width:100%;height:100%;object-fit:cover}
@media(max-width:820px){.heroslider{aspect-ratio:820/1200}}
.hs__dots{position:absolute;bottom:18px;left:0;right:0;display:flex;gap:.5rem;justify-content:center;z-index:3}
.hs__dots button{width:9px;height:9px;border-radius:50%;background:rgba(244,234,213,.35);border:1px solid rgba(0,0,0,.2);transition:.35s var(--ease);cursor:pointer}
.hs__dots button.on{background:var(--gold);width:26px;border-radius:5px}
.hs__arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:3;width:46px;height:46px;background:rgba(10,9,7,.45);color:var(--ink);display:grid;place-items:center;border:1px solid var(--line);backdrop-filter:blur(4px);transition:.25s}
.hs__arrow svg{width:20px;height:20px}
.hs__arrow:hover{background:var(--gold);color:#0A0907;border-color:var(--gold)}
.hs__arrow.prev{left:14px}.hs__arrow.next{right:14px}
@media(max-width:900px){.hs__arrow{display:none}.hs__dots{bottom:12px}}

/* ============ COMO JOGAR (banner oficial) ============ */
.howto{position:relative;z-index:2;padding-block:clamp(48px,7vw,88px)}
.howto__img{border:1px solid var(--line);background:#0f0d0a}
.howto__img img{width:100%;display:block}

/* ============ TRAILER (vídeo real) ============ */
.trailer__wrap{position:relative;border:1px solid var(--line-strong);background:#000;overflow:hidden}
.trailer__wrap video{width:100%;display:block}
.trailer__wrap .tape{position:absolute;height:32px;width:55%;background:var(--tape);top:16px;left:-3%;transform:rotate(-4deg);opacity:.95;z-index:2;pointer-events:none;box-shadow:0 6px 14px rgba(0,0,0,.5)}
.trailer__play{position:absolute;inset:0;display:grid;place-items:center;background:rgba(10,9,7,.35);z-index:3;cursor:pointer;transition:opacity .3s}
.trailer__play.hide{opacity:0;pointer-events:none}
.trailer__play span{width:76px;height:76px;border-radius:50%;background:var(--gold);color:#0A0907;display:grid;place-items:center;box-shadow:0 10px 40px -6px rgba(201,169,97,.5)}
.trailer__play svg{width:30px;height:30px;margin-left:4px}

/* ============ DEPOIMENTOS REAIS ============ */
.reviews{columns:3;column-gap:1.3rem}
.rev{break-inside:avoid;margin-bottom:1.3rem;background:var(--noir-2);border:1px solid var(--line);padding:1.5rem;display:block}
.rev__top{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.9rem}
.rev__stars{color:var(--gold);letter-spacing:.12em;font-size:.92rem;flex:none}
.rev__badge{font-family:var(--body);font-size:.58rem;letter-spacing:.1em;color:var(--ink-dim);border:1px solid var(--line);padding:.25em .55em;text-transform:uppercase;white-space:nowrap}
.rev p{color:var(--ink-2);font-size:.96rem;line-height:1.58;margin-bottom:1.1rem}
.rev__by{font-family:var(--body);font-size:.72rem;color:var(--ink-dim);letter-spacing:.03em;display:flex;flex-wrap:wrap;gap:.5em;align-items:baseline}
.rev__by b{color:var(--gold);font-family:var(--body);font-weight:700;font-size:.86rem;letter-spacing:0}
.rev__by time{opacity:.7}
.reviews-sum{display:flex;align-items:center;justify-content:center;gap:1.2rem;margin-bottom:2.6rem;flex-wrap:wrap}
.reviews-sum .big{font-family:var(--display);font-size:2.6rem;color:var(--gold);line-height:1}
.reviews-sum .st{color:var(--gold);letter-spacing:.15em;font-size:1.05rem}
.reviews-sum small{display:block;font-family:var(--body);font-size:.72rem;color:var(--ink-dim);letter-spacing:.04em;text-transform:uppercase}
@media(max-width:900px){.reviews{columns:2}}
@media(max-width:560px){.reviews{columns:1}}

/* ============ LOGOS REAIS ============ */
.brand__logo{height:36px;width:auto;display:block}
@media(max-width:520px){.brand__logo{height:30px}}
.mark-img{display:block;width:auto;height:auto}
.ft__brand .mark-img{height:46px;margin-bottom:1rem}
.finale .mark-img{height:52px;margin:0 auto 1.5rem}

/* ============ PDP: otimizações ============ */
.gift{display:flex;align-items:center;gap:.6rem;font-size:.88rem;color:var(--ink-2);background:rgba(201,169,97,.07);border:1px solid rgba(201,169,97,.28);padding:.75rem .95rem;margin-bottom:1.5rem}
.gift svg{width:18px;height:18px;color:var(--gold);flex:none}
.pay{display:flex;align-items:center;gap:.45rem;flex-wrap:wrap;margin-bottom:1.4rem}
.pay small{font-family:var(--body);font-size:.64rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint);margin-right:.2rem}
.pay span{font-family:var(--body);font-size:.62rem;letter-spacing:.05em;text-transform:uppercase;border:1px solid var(--line-strong);color:var(--ink-dim);padding:.35em .6em;line-height:1}
.pay span.pix{color:#0A0907;background:var(--gold);border-color:var(--gold);font-weight:700}
.toast{position:fixed;left:50%;bottom:92px;transform:translate(-50%,20px);z-index:var(--z-modal);background:var(--noir-3);border:1px solid var(--gold);color:var(--ink);padding:.85rem 1.3rem;font-size:.92rem;display:flex;gap:.6rem;align-items:center;opacity:0;pointer-events:none;transition:opacity .35s var(--ease),transform .35s var(--ease);box-shadow:0 20px 50px -12px rgba(0,0,0,.8)}
.toast.show{opacity:1;transform:translate(-50%,0)}
.toast svg{width:18px;height:18px;color:var(--gold);flex:none}
@media(min-width:901px){.toast{bottom:28px;left:auto;right:28px;transform:translate(0,20px)}.toast.show{transform:translate(0,0)}}
.pdp-reviews{border-top:1px solid var(--line);margin-top:clamp(2.5rem,5vw,4rem);padding-top:clamp(2.5rem,5vw,4rem)}
.pdp-reviews .reviews{columns:3}
@media(max-width:900px){.pdp-reviews .reviews{columns:1}}

/* ==========================================================================
   ORDEM 42 - correcoes acumuladas sobre a base do prototipo
   ========================================================================== */

/* [14/07] CRITICO: sem style-critical do Amazonas, o sprite SVG fica visivel
   e vira uma BARRA PRETA no topo. Nao remover. */
.hidden{display:none!important}

/* [15/07] fita zebrada removida do CSS (a fita fisica saiu das fotos novas) */
.tape{display:none!important}

/* [21/07] a home agora tem 2 cards (BOX removido): 3 colunas deixava buraco */
.cases{grid-template-columns:repeat(2,1fr);max-width:900px;margin-inline:auto}
@media (max-width:860px){ .cases{grid-template-columns:1fr} }

/* --------------------------- PDP noir ---------------------------------- */
.pdp-page{background:var(--noir);color:var(--ink)}
.pdp{max-width:var(--page);margin-inline:auto;padding:clamp(18px,4vw,44px) var(--gutter)}
.pdp__in{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(20px,4vw,52px);align-items:start}
@media (max-width:900px){ .pdp__in{grid-template-columns:1fr;gap:24px} }

/* [14/07] breadcrumb duplicado do Amazonas dentro do painel de compra */
.pdp-page .buy .breadcrumbs{display:none}

/* [v=10] imagem cortada no mobile: altura natural + imagem inteira */
.pdp-page .gal__main,.pdpgal__main{height:auto;max-height:none}
.pdp-page .gal__main img,.pdpgal__main img{width:100%;height:auto;object-fit:contain;display:block}

/* miniaturas do carrossel proprio */
.pdpgal__t{border:1px solid var(--line);background:var(--noir-2);cursor:pointer;padding:0;overflow:hidden}
.pdpgal__t img{width:100%;height:100%;object-fit:cover;display:block}
.pdpgal__t[aria-current="true"],.pdpgal__t:hover{border-color:var(--gold)}

/* [v=11] icones de redes sociais removidos da PDP */
.social-share{display:none!important}

/* [15/07] CEP fora da PDP: calculo de frete so no checkout */
#product-shipping-container,.js-shipping-calculator-container .shipping-calculator{display:none!important}

/* mapeamento Amazonas -> noir no painel de compra */
.pdp-page .buy{background:var(--noir-2);border:1px solid var(--line);padding:clamp(18px,3vw,30px)}
.pdp-page .buy h1,.pdp-page .buy .h1{font-family:var(--display);color:var(--ink);font-weight:400}
.pdp-page .buy .price,.pdp-page .buy [data-store^="product-price"]{color:var(--gold);font-family:var(--display)}
.pdp-page .buy label,.pdp-page .buy .form-label{color:var(--ink-dim);font-family:var(--body)}
.pdp-page .buy input,.pdp-page .buy select{background:var(--noir-3);color:var(--ink);border:1px solid var(--line)}

/* [15/07] botoes: hover dourado com texto escuro (era dourado sobre dourado) */
.btn:hover,.pdp-page .buy .btn:hover,.js-addtocart:hover{background:var(--gold-bright);color:var(--noir);border-color:var(--gold-bright)}

/* [15/07] "Ver carrinho" era dourado sobre dourado e sumia */
.js-modal-open[href*="comprar"],.cart-link{background:transparent!important;color:var(--gold)!important;text-decoration:underline}


/* [28/08] BARRA ROLANTE (marquee). O markup dos 6 spans veio da home de 15/07,
   mas o CSS base e o do prototipo de 10/07, onde .announce ainda era barra
   estatica centralizada: .announce__track nao existia e os spans quebravam linha.
   Metade da faixa (12 spans / 2 = 6) e mais larga que a viewport, entao o
   translateX(-50%) fecha o loop sem emenda. */
.announce{
  padding:.55em 0;
  overflow:hidden;
  white-space:nowrap;
  text-align:left;
}
.announce__track{
  display:inline-flex;
  align-items:center;
  width:max-content;
  animation:o42marquee 45s linear infinite;
  will-change:transform;
}
.announce__track span{ flex:0 0 auto; padding-inline:1.4em; }
@keyframes o42marquee{ from{transform:translateX(0)} to{transform:translateX(-50%)} }
.announce:hover .announce__track{ animation-play-state:paused; }
@media (prefers-reduced-motion:reduce){
  .announce__track{ animation:none; }
  .announce{ text-align:center; }
}
