
@font-face{font-family:'Cinzel';font-style:normal;font-weight:500;font-display:swap;src:url(fonts/cinzel-latin-500-normal.woff2) format('woff2')}
@font-face{font-family:'Cinzel';font-style:normal;font-weight:700;font-display:swap;src:url(fonts/cinzel-latin-700-normal.woff2) format('woff2')}
@font-face{font-family:'Cinzel';font-style:normal;font-weight:900;font-display:swap;src:url(fonts/cinzel-latin-900-normal.woff2) format('woff2')}
@font-face{font-family:'Jost';font-style:normal;font-weight:300;font-display:swap;src:url(fonts/jost-latin-300-normal.woff2) format('woff2')}
@font-face{font-family:'Jost';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/jost-latin-400-normal.woff2) format('woff2')}
@font-face{font-family:'Jost';font-style:normal;font-weight:500;font-display:swap;src:url(fonts/jost-latin-500-normal.woff2) format('woff2')}
@font-face{font-family:'Jost';font-style:normal;font-weight:600;font-display:swap;src:url(fonts/jost-latin-600-normal.woff2) format('woff2')}
/* Layout: black lacquer + gold leaf storefront. Hash views: inicio, perfumes, cadeiras, promocoes, favoritos, p-<slug>, gestao. Product tiles are lit white plinths that pop out in 3D. Single dark look by design. */
@property --fy{syntax:"<length>";inherits:false;initial-value:0px}
:root{
  --bg:#070605; --surface:#121010; --surface-2:#1a1715; --fg:#f4ead2; --muted:#a8997a;
  --line:#2c261c; --gold:#d9b24c; --gold-hi:#f8e3a0; --gold-lo:#8a6620; --ink:#0b0907;
  --plinth:#ffffff; --sale:#e0523f; --ok:#6fbf7a; --warn:#e3a93b;
  --gold-grad:linear-gradient(135deg,#8a6620 0%,#f8e3a0 28%,#c99a33 50%,#fff1c2 70%,#9c7425 100%);
  --display:"Cinzel","Trajan Pro",Georgia,serif;
  --body:"Jost",system-ui,-apple-system,"Segoe UI",sans-serif;
  color-scheme:dark;
}
*{box-sizing:border-box}
body{background:var(--bg);color:var(--fg);font-family:var(--body);font-size:16px;line-height:1.55;overflow-x:hidden;
  background-image:radial-gradient(1200px 600px at 50% -10%,rgba(217,178,76,.12),transparent 60%)}
[hidden]{display:none!important}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.wrap{max-width:1240px;margin:0 auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
a{color:inherit}
h1,h2,h3{font-family:var(--display);font-weight:700;margin:0;line-height:1.12;text-wrap:balance;letter-spacing:.03em}
button,input,select{font:inherit;color:inherit}
.eyebrow{font-size:12px;letter-spacing:.3em;text-transform:uppercase;color:var(--gold);font-weight:500}
.gold-text{background:var(--gold-grad);-webkit-background-clip:text;background-clip:text;color:transparent}
:focus-visible{outline:2px solid var(--gold-hi);outline-offset:3px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 20px;border-radius:2px;font:600 12px var(--body);letter-spacing:.16em;text-transform:uppercase;text-decoration:none;cursor:pointer;border:1px solid var(--gold);color:var(--gold-hi);background:transparent;transition:transform .15s,box-shadow .15s,background .15s;white-space:nowrap}
.btn:hover{background:rgba(217,178,76,.1)}
.btn.gold{background:var(--gold-grad);color:var(--ink);border-color:transparent;box-shadow:0 5px 0 #5a4213,0 12px 20px rgba(0,0,0,.45)}
.btn.gold:hover{transform:translateY(-2px);box-shadow:0 7px 0 #5a4213,0 16px 26px rgba(0,0,0,.55)}
.btn.gold:active{transform:translateY(4px);box-shadow:0 1px 0 #5a4213,0 4px 10px rgba(0,0,0,.5)}
.btn.sm{padding:9px 12px;font-size:11px;letter-spacing:.1em}
.icon-btn{width:38px;height:38px;border-radius:50%;border:1px solid var(--line);background:rgba(7,6,5,.75);display:inline-grid;place-items:center;cursor:pointer;color:var(--fg)}
.icon-btn:hover{border-color:var(--gold)}
.icon-btn svg{width:18px;height:18px}

/* header */
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:40;background:var(--bg)}
header.top{position:sticky;top:env(safe-area-inset-top,0px);z-index:30;background:rgba(7,6,5,.9);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
header.top .wrap{display:flex;align-items:center;gap:16px;padding-block:10px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;flex:none}
.brand img{width:34px;height:auto;filter:drop-shadow(0 4px 10px rgba(217,178,76,.3))}
.brand span{font-family:var(--display);font-weight:900;font-size:18px;letter-spacing:.12em}
nav.main{display:flex;gap:2px;flex-wrap:wrap;flex:1;justify-content:center}
nav.main a{text-decoration:none;font-size:12.5px;font-weight:600;letter-spacing:.13em;text-transform:uppercase;padding:8px 10px;color:#ddd0ad;border:1px solid transparent;border-radius:2px}
nav.main a:hover{color:#fff}
nav.main a[aria-current="page"]{color:var(--gold-hi);border-color:var(--gold-lo)}
nav.main a.promo{color:var(--gold-hi)}
.tools{display:flex;gap:8px;flex:none}
.count{position:absolute;transform:translate(12px,-12px);min-width:18px;height:18px;border-radius:9px;background:var(--gold);color:var(--ink);font-size:11px;font-weight:600;display:grid;place-items:center;padding:0 5px;font-variant-numeric:tabular-nums}
@media (max-width:900px){
  header.top .wrap{flex-wrap:wrap;justify-content:space-between}
  nav.main{order:3;flex-basis:100%;justify-content:flex-start;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin-inline:-4px}
  nav.main a{flex:none;font-size:11px;padding:6px 8px}
}

/* hero */
.hero{overflow:hidden;overflow:clip}
.hero .wrap{display:grid;grid-template-columns:1.1fr 1fr;gap:40px;align-items:center;padding-block:56px 40px}
.hero h1{font-size:clamp(42px,7.5vw,92px);font-weight:900;letter-spacing:.06em;line-height:1;margin-block:14px 8px}
.hero h1 .gold-text{filter:drop-shadow(0 1px 0 #6b4f17) drop-shadow(0 2px 0 #5a4213) drop-shadow(0 3px 0 #4a3610) drop-shadow(0 4px 0 #3a2a0c) drop-shadow(0 14px 18px rgba(0,0,0,.7))}
.hero .sub{font-family:var(--display);font-size:clamp(13px,1.8vw,17px);letter-spacing:.28em;color:var(--muted);margin:0 0 20px}
.hero p.lead{max-width:44ch;opacity:.85;font-size:18px;font-weight:300;margin:0 0 28px}
.btns{display:flex;flex-wrap:wrap;gap:12px}
.stats{display:flex;gap:28px;margin-top:30px;flex-wrap:wrap}
.stats b{display:block;font-family:var(--display);font-size:28px;font-variant-numeric:tabular-nums}
.stats span{font-size:12px;color:var(--muted);letter-spacing:.12em;text-transform:uppercase}
.crest-scene{perspective:1100px;display:flex;justify-content:center;align-items:center;min-height:400px}
/* hero 3D showcase */
.showcase{--cw:230px;position:relative;min-width:0;display:flex;flex-direction:column;align-items:center;gap:10px}
.sc-tabs{display:flex;gap:8px}
.sc-tabs button{background:transparent;border:1px solid var(--line);color:var(--muted);padding:7px 16px;border-radius:20px;font-size:12px;letter-spacing:.16em;text-transform:uppercase;cursor:pointer}
.sc-tabs button[aria-selected="true"]{background:var(--gold-grad);color:var(--ink);border-color:transparent}
.sc-stage{position:relative;width:100%}
.sc-track{display:flex;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:none;perspective:1000px;padding:34px calc(50% - var(--cw) / 2) 26px;cursor:grab;overscroll-behavior-x:contain;-webkit-mask-image:linear-gradient(90deg,transparent,#000 14%,#000 86%,transparent);mask-image:linear-gradient(90deg,transparent,#000 14%,#000 86%,transparent)}
.sc-track::-webkit-scrollbar{display:none}
.sc-track.dragging{cursor:grabbing;scroll-snap-type:none}
.sc-track.dragging .sc-card{transition:none}
.sc-card{flex:0 0 var(--cw);margin-inline:-22px;scroll-snap-align:center;text-decoration:none;color:inherit;position:relative;transform-style:preserve-3d;transition:opacity .35s;-webkit-user-select:none;user-select:none}
.sc-3d{transform-style:preserve-3d;transform:rotateY(var(--ry,0deg)) translateZ(var(--tz,0px)) scale(var(--sc,1));will-change:transform}
.sc-plinth{position:relative;aspect-ratio:1;background:var(--plinth);border:1px solid #e9d39a;box-shadow:0 22px 40px rgba(0,0,0,.65);overflow:hidden;transform-style:preserve-3d;transition:transform .3s ease-out,box-shadow .3s}
.sc-plinth img{width:100%;height:100%;object-fit:contain;display:block;pointer-events:none;transition:transform .5s cubic-bezier(.2,.9,.3,1)}
.sc-plinth .badge{transform:none}
.sc-shine{position:absolute;inset:0;pointer-events:none;background:linear-gradient(115deg,transparent 35%,rgba(255,255,255,.55) 48%,transparent 60%);background-size:260% 100%;background-position:130% 0;mix-blend-mode:screen;opacity:0;transition:opacity .3s}
.sc-card.on .sc-plinth{box-shadow:0 34px 60px rgba(0,0,0,.75),0 0 0 1px var(--gold),0 0 40px rgba(217,178,76,.35)}
.sc-card:hover .sc-plinth img{transform:scale(1.04)}
.sc-card:hover .sc-shine{opacity:1;animation:scshine 1.2s ease-out}
@keyframes scshine{from{background-position:130% 0}to{background-position:-30% 0}}
.sc-meta{display:flex;flex-direction:column;gap:2px;padding:12px 6px 0;text-align:center;opacity:0;transition:opacity .3s}
.sc-card.on .sc-meta{opacity:1}
.sc-meta .b{font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold)}
.sc-meta b{font-weight:500;font-size:14px;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.sc-meta .pr{font-family:var(--display);font-size:18px;color:var(--gold-hi);font-variant-numeric:tabular-nums}
.sc-meta s{font-family:var(--body);font-size:12px;color:var(--muted)}
.sc-arrow{position:absolute;top:calc(50% - 40px);z-index:120;width:42px;height:42px;border-radius:50%;border:1px solid var(--gold-lo);background:rgba(7,6,5,.8);color:var(--gold-hi);font-size:22px;line-height:1;display:grid;place-items:center;cursor:pointer;padding:0}
.sc-arrow:hover{border-color:var(--gold);background:rgba(217,178,76,.15)}
.sc-arrow.prev{left:0}.sc-arrow.next{right:0}
.sc-cap{min-height:40px;display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center}
.sc-cap b{display:none}
@media (hover:none){.sc-arrow{display:none}}
@media (max-width:860px){.showcase{--cw:190px;order:-1;margin-inline:-16px;width:calc(100% + 32px)}}
@media (prefers-reduced-motion:reduce){.sc-3d{transform:none!important}.sc-card{margin-inline:8px}}
.crest{position:relative;width:min(320px,66vw);aspect-ratio:374/440;max-width:100%;transform-style:preserve-3d;transform:rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transition:transform .25s ease-out}
.crest img{position:absolute;inset:0;width:100%;height:100%;transform:translateZ(60px);filter:drop-shadow(0 30px 40px rgba(0,0,0,.8)) drop-shadow(0 0 30px rgba(217,178,76,.25))}
.ring{position:absolute;left:50%;top:50%;width:150%;aspect-ratio:1;border-radius:50%;border:1px solid rgba(217,178,76,.45);transform:translate(-50%,-50%) rotateX(74deg) translateZ(-20px);box-shadow:0 0 30px rgba(217,178,76,.15),inset 0 0 30px rgba(217,178,76,.12)}
.ring.r2{width:120%;border-color:rgba(248,227,160,.25);transform:translate(-50%,-50%) rotateX(74deg) translateZ(-60px)}
.spark{position:absolute;left:50%;top:50%;width:150%;aspect-ratio:1;transform:translate(-50%,-50%) rotateX(74deg)}
.spark i{position:absolute;left:50%;top:-4px;width:8px;height:8px;margin-left:-4px;border-radius:50%;background:var(--gold-hi);box-shadow:0 0 14px 4px rgba(248,227,160,.7)}
@media (prefers-reduced-motion:no-preference){
  .spark{animation:orbit 9s linear infinite}
  @keyframes orbit{to{transform:translate(-50%,-50%) rotateX(74deg) rotateZ(360deg)}}
  .crest img{animation:bob 6s ease-in-out infinite}
  @keyframes bob{50%{transform:translateZ(80px) translateY(-8px)}}
}
@media (max-width:860px){.hero .wrap{grid-template-columns:1fr;text-align:center;padding-block:24px 40px}.hero p.lead{margin-inline:auto}.btns,.stats{justify-content:center}.crest-scene{min-height:300px;order:-1}}

/* sections */
section.block{padding-block:56px}
.sec-head{display:flex;justify-content:space-between;align-items:end;gap:20px;flex-wrap:wrap;margin-bottom:28px}
.sec-head h2{font-size:clamp(28px,4vw,42px);margin-top:8px}
.sec-head p{color:var(--muted);margin:6px 0 0;max-width:52ch}
.portal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
@media (max-width:720px){.portal-grid{grid-template-columns:1fr}}
.portal{display:block;text-decoration:none;perspective:900px}
.portal .inner{position:relative;border:1px solid var(--line);background:linear-gradient(160deg,var(--surface-2),var(--surface));padding:28px;min-height:260px;display:grid;grid-template-columns:1fr 160px;gap:16px;align-items:end;transform-style:preserve-3d;transition:transform .2s ease-out,border-color .3s;overflow:hidden}
.portal:hover .inner{border-color:var(--gold-lo)}
.portal h2{font-size:clamp(24px,3.2vw,34px);transform:translateZ(40px)}
.portal p{color:var(--muted);margin:10px 0 16px;transform:translateZ(30px)}
.portal .go{font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-hi);display:inline-block;transform:translateZ(30px)}
.portal .shot{background:var(--plinth);aspect-ratio:1;max-width:100%;transform:translateZ(70px) rotate(-3deg);box-shadow:0 24px 30px rgba(0,0,0,.6);border:3px solid #e9d39a}
.portal .shot img{width:100%;height:100%;object-fit:contain;display:block}
@media (max-width:440px){.portal .inner{grid-template-columns:1fr}.portal .shot{max-width:130px}}
.brands{display:flex;flex-wrap:wrap;gap:10px}
.brands a{text-decoration:none;border:1px solid var(--line);padding:10px 16px;font-family:var(--display);letter-spacing:.08em;font-size:14px;background:var(--surface)}
.brands a:hover{border-color:var(--gold);color:var(--gold-hi)}
.brands a small{color:var(--muted);font-family:var(--body);margin-left:6px;font-variant-numeric:tabular-nums}

/* page head */
.page-head{padding-block:40px 24px;text-align:center}
.page-head h1{font-size:clamp(32px,5.5vw,58px);margin-block:10px}
.page-head p{color:var(--muted);max-width:60ch;margin:0 auto;font-weight:300;font-size:17px}
.rule{width:120px;height:2px;margin:16px auto 0;background:var(--gold-grad)}
.banner{display:grid;grid-template-columns:1fr auto;gap:16px;align-items:center;border:1px solid var(--gold-lo);background:linear-gradient(110deg,#2a210f,#120e08 55%,#2a210f);padding:22px 26px;margin-bottom:24px;position:relative;overflow:hidden}
.banner b{font-family:var(--display);font-size:clamp(20px,3vw,30px)}
.banner p{margin:4px 0 0;color:var(--muted)}
.banner .big{font-family:var(--display);font-size:clamp(36px,6vw,64px);font-weight:900}
@media (max-width:560px){.banner{grid-template-columns:1fr}}
.notice{border:1px dashed var(--gold-lo);padding:14px 18px;color:var(--muted);margin-bottom:20px;font-size:15px}

/* filters */
.shop{display:grid;grid-template-columns:240px minmax(0,1fr);gap:28px;padding-bottom:64px}
@media (max-width:900px){.shop{grid-template-columns:1fr}}
.filters{display:flex;flex-direction:column;gap:16px;align-self:start;position:sticky;top:calc(env(safe-area-inset-top,0px) + var(--hh,76px) + 12px)}
@media (max-width:900px){.filters{position:static;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.filters .full{grid-column:1/-1}}
.field label{display:block;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);margin-bottom:6px}
.field input,.field select{width:100%;background:var(--surface);border:1px solid var(--line);padding:10px 12px;border-radius:2px;min-width:0}
.field input:focus,.field select:focus{border-color:var(--gold);outline:none}
.range-row{display:flex;gap:8px}
.toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:18px;color:var(--muted);font-size:14px}
.toolbar .field{display:flex;align-items:center;gap:8px}
.toolbar .field label{margin:0}
.toolbar select{width:auto}
.empty{border:1px dashed var(--line);padding:40px;text-align:center;color:var(--muted)}

/* product grid + 3D cards */
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:22px}
.p3d{perspective:1000px;min-width:0}
.card{position:relative;background:linear-gradient(170deg,var(--surface-2),var(--surface) 60%);border:1px solid var(--line);transform-style:preserve-3d;transition:border-color .3s,box-shadow .3s;display:flex;flex-direction:column;height:100%}
.p3d:hover .card{border-color:var(--gold-lo);box-shadow:0 30px 60px rgba(0,0,0,.6)}
.stage{position:relative;display:block;aspect-ratio:1;max-width:100%;transform-style:preserve-3d;margin:14px 14px 22px;cursor:pointer}
.plinth{position:absolute;inset:0;background:var(--plinth);border:1px solid #e9d39a;transform:translateZ(var(--z,18px)) scale(var(--s,1)) translateY(var(--fy));transition:transform .6s cubic-bezier(.25,.8,.35,1),box-shadow .5s;box-shadow:0 14px 24px rgba(0,0,0,.45);overflow:hidden}
.plinth img{width:100%;height:100%;object-fit:contain;display:block}
.p3d:hover .plinth{--z:48px;--s:1.02;box-shadow:0 40px 50px rgba(0,0,0,.7),0 0 0 1px var(--gold),0 0 30px rgba(217,178,76,.3)}
@media (prefers-reduced-motion:no-preference){.p3d:hover .plinth{animation:float 5s ease-in-out .6s infinite}@keyframes float{50%{--fy:-3px}}}
.noimg{display:grid;place-items:center;height:100%;color:#8a7a5a;font-family:var(--display);font-size:13px;letter-spacing:.1em;background:repeating-linear-gradient(45deg,#faf6ec,#faf6ec 10px,#f3ecda 10px,#f3ecda 20px)}
.badge{position:absolute;top:10px;left:10px;z-index:2;transform:translateZ(110px);background:var(--sale);color:#fff;font-weight:600;font-size:13px;padding:4px 9px;letter-spacing:.04em;font-variant-numeric:tabular-nums;box-shadow:0 6px 12px rgba(0,0,0,.4)}
.stage .heart,.stage .peek{position:absolute;z-index:5;transform:translateZ(110px)}
@media (hover:none),(pointer:coarse){.stage .heart,.stage .peek,.badge{transform:none}.stage{transform-style:flat}.card{transform-style:flat}}
.heart{touch-action:manipulation}
.msearch{position:sticky;top:calc(env(safe-area-inset-top,0px) + var(--hh,60px));z-index:29;background:rgba(7,6,5,.97);border-bottom:1px solid var(--gold-lo);padding-block:10px}
.msearch form,.psearch{display:flex;gap:8px}
.msearch input,.psearch input{flex:1;min-width:0;background:var(--surface);border:1px solid var(--gold-lo);border-radius:2px;padding:11px 12px;font-size:16px;color:var(--fg)}
.msearch input:focus,.psearch input:focus{outline:none;border-color:var(--gold)}
.psearch{max-width:560px;margin:22px auto 0}
/* announcement bar */
.annc{position:relative;height:30px;overflow:hidden;background:linear-gradient(90deg,#120d05,#2a1f0b 50%,#120d05);border-bottom:1px solid var(--gold-lo);font-size:12px;letter-spacing:.08em;text-align:center}
.annc .am{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;opacity:0;transform:translateY(6px);transition:opacity .5s,transform .5s;padding-inline:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.annc .am.on{opacity:1;transform:none}
.annc a{color:var(--gold-hi);text-decoration:none;display:inline-flex;align-items:center;gap:6px;max-width:100%;overflow:hidden;text-overflow:ellipsis}
.annc b{color:#fff;letter-spacing:.18em}
.annc svg{width:15px;height:15px;flex:none}
@media (max-width:600px){.annc{font-size:11px;letter-spacing:.03em}}
/* delivery line on cards */
.info .dlv{display:flex;align-items:center;gap:6px;margin:4px 0 0;font-size:11.5px;color:var(--ok)}
.info .dlv svg{width:15px;height:15px;flex:none}
@media (max-width:600px){.grid .info .dlv{font-size:10px;gap:4px}.grid .info .dlv svg{width:13px;height:13px}}
/* product page shipping box */
.shipbox{list-style:none;margin:6px 0 14px;padding:12px 14px;border:1px solid var(--line);background:rgba(217,178,76,.04);display:grid;gap:8px;font-size:14px}
.shipbox li{display:flex;gap:10px;align-items:flex-start}
.shipbox svg{width:18px;height:18px;flex:none;color:var(--gold);margin-top:1px}
.shipbox b{color:var(--fg);font-weight:500}
.shipbox .muted{color:var(--muted)}
/* cart */
.shipprog{display:grid;gap:6px;font-size:13px;color:var(--muted)}
.shipprog b{color:var(--gold-hi)}
.shipprog i{display:block;height:6px;border-radius:3px;background:var(--line);position:relative;overflow:hidden}
.shipprog i::after{content:"";position:absolute;inset:0 auto 0 0;width:var(--w);background:var(--gold-grad);border-radius:3px;transition:width .4s}
.shipprog.done{color:var(--ok)}
.nudge{font-size:13px;border:1px dashed var(--gold-lo);padding:8px 10px;color:var(--fg)}
.nudge b{color:var(--gold-hi)}
/* Black Friday banner */
.bf{padding-block:8px 24px}
.bf-box{position:relative;overflow:hidden;isolation:isolate;display:grid;grid-template-columns:1.1fr 1fr;gap:28px;align-items:center;padding:34px 36px;border:1px solid var(--gold);background:radial-gradient(600px 300px at 85% 30%,rgba(217,178,76,.22),transparent 70%),linear-gradient(135deg,#050403,#16110a 55%,#050403);box-shadow:0 30px 70px rgba(0,0,0,.6),inset 0 0 0 1px rgba(248,227,160,.08)}
.bf-box::before{content:"BLACK FRIDAY";position:absolute;right:-20px;bottom:-34px;z-index:-1;font-family:var(--display);font-weight:900;font-size:clamp(70px,12vw,170px);letter-spacing:.02em;line-height:1;color:transparent;-webkit-text-stroke:1px rgba(217,178,76,.16);white-space:nowrap}
.bf-box::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(105deg,transparent 40%,rgba(248,227,160,.12) 50%,transparent 60%);transform:translateX(-100%)}
@media (prefers-reduced-motion:no-preference){.bf-box::after{animation:shim 6s ease-in-out infinite}}
.bf-tag{display:inline-block;background:#fff;color:#000;font-family:var(--display);font-weight:900;letter-spacing:.24em;text-transform:uppercase;font-size:13px;padding:6px 12px}
.bf-title{display:flex;flex-direction:column;gap:2px;margin:16px 0 10px;font-size:clamp(26px,3.6vw,44px);letter-spacing:.02em;line-height:1.08}
.bf-title b{background:var(--gold-grad);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 2px 0 #5a4213)}
.bf-copy p{color:var(--muted);margin:0 0 14px;max-width:44ch}
.bf-cd{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0 0 18px}
.bf-cd em{font-style:normal;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin-right:4px}
.bf-cd span{display:grid;justify-items:center;min-width:54px;padding:6px 4px;border:1px solid var(--gold-lo);background:rgba(0,0,0,.5)}
.bf-cd b{font-family:var(--display);font-size:22px;font-variant-numeric:tabular-nums;color:var(--gold-hi)}
.bf-cd small{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.bf-copy .bf-ship{display:flex;align-items:center;gap:8px;margin:14px 0 0;color:var(--ok);font-size:14px}
.bf-ship svg{width:18px;height:18px}
.bf-tiles{display:grid;grid-template-columns:1fr 1fr;gap:16px;perspective:900px}
.bf-tile{position:relative;display:grid;justify-items:center;gap:2px;padding:18px 12px 16px;border:1px solid var(--gold-lo);background:linear-gradient(160deg,#1d170d,#0b0906);transform-style:preserve-3d;transition:transform .2s ease-out,box-shadow .3s}
.bf-tile.best{border-color:var(--gold);box-shadow:0 0 40px rgba(217,178,76,.25)}
.bf-tile.best::before{content:"Melhor oferta";position:absolute;top:-11px;left:50%;transform:translateX(-50%) translateZ(30px);background:var(--gold-grad);color:var(--ink);font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;padding:3px 10px;white-space:nowrap}
.bf-stack{position:relative;height:110px;width:100%;transform:translateZ(40px)}
.bf-stack img{position:absolute;left:50%;bottom:0;width:78px;height:96px;object-fit:contain;background:#fff;border:1px solid #e9d39a;box-shadow:0 12px 20px rgba(0,0,0,.6);transform:translateX(calc(-50% + (var(--k) - 1) * 34px)) rotate(calc((var(--k) - 1) * 8deg));transition:transform .4s cubic-bezier(.2,.9,.3,1.3)}
.bf-tile:hover .bf-stack img{transform:translateX(calc(-50% + (var(--k) - 1) * 44px)) rotate(calc((var(--k) - 1) * 12deg)) translateY(-6px)}
.bf-tile b{font-family:var(--display);font-size:clamp(34px,4.4vw,52px);font-weight:900;line-height:1;transform:translateZ(50px);background:var(--gold-grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.bf-tile > span{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--fg);transform:translateZ(30px);text-align:center}
.bf.compact .bf-box{padding:24px 26px}
@media (max-width:860px){.bf-box{grid-template-columns:1fr;padding:24px 18px;gap:20px}.bf-tiles{gap:10px}.bf-stack{height:90px}.bf-stack img{width:62px;height:78px}}
@media (max-width:600px){.bf-cd{justify-content:center}.bf-cd em{flex-basis:100%;text-align:center;margin:0}.bf-cd span{min-width:58px}.bf-cd b{font-size:18px}.bf-copy{text-align:center}.bf-copy p{margin-inline:auto}.bf-copy .bf-ship{justify-content:center}}

/* pop-ups */
.popbox{position:fixed;left:max(16px,env(safe-area-inset-left,0px));bottom:calc(18px + env(safe-area-inset-bottom,0px));z-index:46;width:min(350px,calc(100% - 100px));display:flex;gap:12px;align-items:center;padding:12px 34px 12px 12px;background:linear-gradient(150deg,#1c160c,#0b0906);border:1px solid var(--gold-lo);box-shadow:0 18px 40px rgba(0,0,0,.65);transform:translateY(30px) scale(.94);opacity:0;transition:transform .45s cubic-bezier(.2,.9,.3,1.2),opacity .35s}
.popbox.in{transform:none;opacity:1}
.pop-x{position:absolute;top:6px;right:6px;width:24px;height:24px;border:0;background:transparent;color:var(--muted);cursor:pointer;font-size:13px}
.pop-x:hover{color:var(--fg)}
.pop-img{flex:none;width:58px;height:58px;background:var(--plinth);border:1px solid #e9d39a;display:block}
.pop-img img{width:100%;height:100%;object-fit:contain;display:block}
.pop-body{display:flex;flex-direction:column;gap:2px;min-width:0;font-size:13px;line-height:1.35}
.pop-body small{font-size:10.5px;letter-spacing:.08em;color:var(--ok)}
.popbox.offer .pop-body small{color:var(--gold);text-transform:uppercase;letter-spacing:.18em}
.pop-body b{font-weight:600;color:var(--fg)}
.pop-body a{color:var(--gold-hi);text-decoration:none;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.pop-body span,.pop-body p{color:var(--muted);font-size:12px;margin:0}
.pop-wa{flex:none;width:52px;height:52px;border-radius:50%;background:#25d366;color:#fff;display:grid;place-items:center;box-shadow:0 8px 18px rgba(37,211,102,.35)}
.pop-wa svg{width:28px;height:28px}
.popbox.invite{border-color:#1f7a45}
.popbox.hw{border-color:#d9701c;background:radial-gradient(240px 140px at 15% 70%,rgba(255,120,20,.25),transparent 70%),linear-gradient(150deg,#1b0f1f,#0a0608);box-shadow:0 18px 40px rgba(0,0,0,.7),0 0 30px rgba(255,120,20,.2)}
.popbox.hw .pop-body b{color:#ffb15c}
.popbox.hw .pop-body a{color:#ffcf8a}
@media (max-width:600px){.popbox{padding:10px 30px 10px 10px;gap:10px}.pop-img{width:48px;height:48px}}
/* 3D pumpkin */
.pk-scene{flex:none;width:76px;height:76px;perspective:400px;display:grid;place-items:center}
.pk{position:relative;width:58px;height:50px;transform-style:preserve-3d;animation:pkspin 6s ease-in-out infinite}
.pk-body{position:absolute;inset:0;transform-style:preserve-3d}
.pk-body i{position:absolute;left:50%;top:0;width:30px;height:50px;margin-left:-15px;border-radius:50%;background:radial-gradient(circle at 40% 35%,#ffb347,#f07a12 55%,#a8440a);box-shadow:inset -4px 0 8px rgba(0,0,0,.35);transform:rotateY(var(--a)) translateZ(14px)}
.pk-face{position:absolute;inset:0;transform:translateZ(29px)}
.pk-face span{position:absolute;background:#ffe27a;box-shadow:0 0 8px #ffd23a,0 0 16px #ff9a1a}
.pk-face .e{top:15px;width:10px;height:8px;clip-path:polygon(50% 0,100% 100%,0 100%)}
.pk-face .e.l{left:15px}.pk-face .e.r{right:15px}
.pk-face .m{left:14px;right:14px;top:29px;height:9px;clip-path:polygon(0 0,15% 60%,30% 0,45% 60%,60% 0,75% 60%,90% 0,100% 0,85% 100%,15% 100%)}
.pk-stem{position:absolute;left:50%;top:-8px;width:7px;height:12px;margin-left:-3px;background:linear-gradient(#5b7a2a,#3a4f18);border-radius:3px 3px 1px 1px;transform:rotate(12deg) translateZ(2px)}
@keyframes pkspin{0%,100%{transform:rotateY(-28deg) rotateX(8deg) translateY(0)}50%{transform:rotateY(28deg) rotateX(-4deg) translateY(-4px)}}
.popbox.hw.in .pk-face span{animation:pkglow 1.6s ease-in-out infinite}
@keyframes pkglow{50%{opacity:.6;box-shadow:0 0 14px #ffd23a,0 0 26px #ff7a1a}}
/* bats */
.bats{position:fixed;inset:0;z-index:44;pointer-events:none;overflow:hidden}
.bat{filter:drop-shadow(0 0 6px rgba(255,255,255,.55)) drop-shadow(0 0 14px rgba(255,170,60,.35))}
.bat{position:absolute;top:var(--top);left:0;width:var(--size);height:calc(var(--size) * .5);animation:batR var(--dur) linear var(--delay) both;perspective:200px}
.bat.lt{animation-name:batL}
.bat-in{position:relative;width:100%;height:100%;transform-style:preserve-3d}
.bat.lt .bat-in{transform:scaleX(-1)}
.bat .bd{position:absolute;left:38%;top:20%;width:24%;height:60%;background:#fffaf0;border-radius:45% 45% 50% 50%;box-shadow:0 0 8px rgba(255,255,255,.7)}
.bat .w{position:absolute;top:10%;width:46%;height:70%;background:#f4ead2;clip-path:polygon(100% 30%,70% 0,45% 25%,25% 5%,0 40%,20% 55%,35% 100%,60% 70%,100% 70%)}
.bat .w.l{left:0;transform-origin:100% 50%;animation:flapL .22s ease-in-out infinite alternate}
.bat .w.r{right:0;transform:scaleX(-1);transform-origin:0 50%;animation:flapR .22s ease-in-out infinite alternate}
@keyframes flapL{from{transform:rotateY(0)}to{transform:rotateY(70deg)}}
@keyframes flapR{from{transform:scaleX(-1) rotateY(0)}to{transform:scaleX(-1) rotateY(70deg)}}
@keyframes batR{0%{transform:translate(-15vw,0) scale(.6)}25%{transform:translate(20vw,-4vh) scale(.9)}50%{transform:translate(50vw,3vh) scale(1.15)}75%{transform:translate(80vw,-3vh) scale(.9)}100%{transform:translate(115vw,1vh) scale(.6)}}
@keyframes batL{0%{transform:translate(115vw,0) scale(.6)}25%{transform:translate(80vw,-4vh) scale(.9)}50%{transform:translate(50vw,3vh) scale(1.15)}75%{transform:translate(20vw,-3vh) scale(.9)}100%{transform:translate(-15vw,1vh) scale(.6)}}
@media (prefers-reduced-motion:reduce){.bats{display:none}.pk{animation:none}}

@media (max-width:400px){header.top .wrap{gap:4px}header.top .brand{gap:5px}header.top .brand img{width:24px}header.top .brand span{font-size:11.5px;letter-spacing:.03em}header.top .tools{gap:3px}header.top .tools .icon-btn,header.top .hsearch button{width:31px;height:31px}header.top .tools .icon-btn svg,header.top .hsearch button svg{width:16px;height:16px}}
.mailopts{border:1px dashed var(--gold-lo);padding:12px}
.mailopts p{margin:0 0 8px;color:var(--muted);font-size:14px}
.mailopts b{color:var(--fg)}
/* tracking page */
.trk{max-width:820px;padding-bottom:40px}
.trk-tabs{justify-content:center}
.trk-form{display:grid;grid-template-columns:1fr 1.3fr auto;gap:12px;align-items:end;border:1px solid var(--gold-lo);background:var(--surface);padding:18px;margin-bottom:18px}
.trk-form .field.wide{grid-column:1/3}
.trk-form input{background:var(--bg)}
@media (max-width:640px){.trk-form{grid-template-columns:1fr}.trk-form .field.wide{grid-column:auto}}
.trk-card{border:1px solid var(--line);background:linear-gradient(160deg,var(--surface-2),var(--surface));padding:22px;margin-bottom:16px}
.trk-card.loading{color:var(--muted);text-align:center}
.trk-card.err{border-color:var(--sale);display:grid;gap:12px;justify-items:start}
.trk-head{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;align-items:flex-start}
.trk-head h2{font-size:clamp(22px,3vw,30px);margin:6px 0}
.trk-head p{margin:0;color:var(--muted)}
.trk-items{list-style:none;margin:0;padding:0;font-size:14px;color:var(--muted);text-align:right}
.trk-steps{list-style:none;margin:24px 0 8px;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(0,1fr));position:relative}
.trk-steps li{display:grid;justify-items:center;text-align:center;gap:4px;position:relative;color:var(--muted)}
.trk-steps li::before{content:"";position:absolute;top:17px;right:50%;width:100%;height:2px;background:var(--line);z-index:0}
.trk-steps li:first-child::before{display:none}
.trk-steps li.on::before{background:var(--gold-grad)}
.trk-steps .dot{position:relative;z-index:1;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--line);background:var(--bg);font-weight:600}
.trk-steps li.on{color:var(--fg)}
.trk-steps li.on .dot{background:var(--gold-grad);color:var(--ink);border-color:transparent}
.trk-steps li.now .dot{box-shadow:0 0 0 5px rgba(217,178,76,.18),0 0 24px rgba(217,178,76,.4)}
@media (prefers-reduced-motion:no-preference){.trk-steps li.now .dot{animation:trkpulse 2s ease-in-out infinite}@keyframes trkpulse{50%{box-shadow:0 0 0 9px rgba(217,178,76,.08),0 0 30px rgba(217,178,76,.5)}}}
.trk-steps b{font-size:13px;letter-spacing:.06em}
.trk-steps small{font-size:11.5px;color:var(--muted)}
@media (max-width:520px){.trk-steps small{display:none}.trk-steps b{font-size:11px}}
.trk-dhl{margin-top:20px;border-top:1px solid var(--line);padding-top:16px}
.trk-dhl-top{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.trk-dhl-top .btn{margin-left:auto}
.dhl-badge{background:#ffcc00;color:#d40511;font-weight:900;font-style:italic;letter-spacing:.04em;padding:3px 10px;font-size:15px}
.trk-eta{margin:12px 0 0;color:var(--ok)}
.trk-events{list-style:none;margin:16px 0 0;padding:0 0 0 18px;border-left:2px solid var(--line);display:grid;gap:14px}
.trk-events li{position:relative;display:grid;gap:2px;font-size:14px}
.trk-events li::before{content:"";position:absolute;left:-25px;top:4px;width:12px;height:12px;border-radius:50%;background:var(--bg);border:2px solid var(--gold-lo)}
.trk-events li.last::before{background:var(--gold);border-color:var(--gold)}
.trk-events time{font-size:12px;color:var(--muted)}
.trk-events span{color:var(--muted);font-size:13px}
.trk-note{margin:12px 0 0;color:var(--muted)}
.trk-help{color:var(--muted);font-size:14px;text-align:center}

/* welcome pop-up */
.welcome{position:fixed;inset:0;z-index:70;display:grid;place-items:center;padding:16px;perspective:1200px}
.wel-scrim{position:absolute;inset:0;background:rgba(0,0,0,.72);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);opacity:0;transition:opacity .35s}
.wel-card{position:relative;width:min(460px,100%);max-height:calc(100% - 32px);overflow:auto;text-align:center;padding:34px 28px 22px;border:1px solid var(--gold);background:radial-gradient(420px 220px at 50% 0%,rgba(217,178,76,.22),transparent 70%),linear-gradient(160deg,#1c160c,#0a0806);box-shadow:0 40px 80px rgba(0,0,0,.7),0 0 0 1px rgba(248,227,160,.08) inset;transform:rotateX(18deg) translateY(30px) scale(.92);opacity:0;transition:transform .5s cubic-bezier(.2,.9,.3,1.15),opacity .35s}
.welcome.in .wel-scrim{opacity:1}
.welcome.in .wel-card{transform:none;opacity:1}
.wel-x{position:absolute;top:10px;right:10px}
.wel-crest{width:84px;margin:0 auto 6px;filter:drop-shadow(0 12px 18px rgba(0,0,0,.6)) drop-shadow(0 0 20px rgba(217,178,76,.35))}
.wel-crest img{width:100%;height:auto;display:block}
@media (prefers-reduced-motion:no-preference){.welcome.in .wel-crest{animation:welbob 4s ease-in-out infinite}@keyframes welbob{50%{transform:translateY(-6px) rotateY(12deg)}}}
.wel-card h2{font-size:clamp(26px,5vw,34px);margin:6px 0 14px}
.wel-perks{list-style:none;margin:0 0 20px;padding:0;display:grid;gap:9px;text-align:left;font-size:15px}
.wel-perks li{display:flex;gap:10px;align-items:flex-start}
.wel-perks b{color:var(--gold);flex:none}
.wel-btns{display:grid;gap:10px}
.wel-later{margin-top:12px;background:none;border:0;color:var(--muted);text-decoration:underline;cursor:pointer;font-size:14px}
.wel-later:hover{color:var(--fg)}

.toast{display:flex;align-items:center;gap:14px;width:max-content;max-width:calc(100% - 32px);white-space:nowrap}
@media (max-width:600px){
  header.top .wrap{gap:8px}
  .brand img{width:28px}
  .brand span{font-size:14px;letter-spacing:.08em}
  .tools{gap:6px}
  .tools .icon-btn,.hsearch button{width:36px;height:36px}
  .toast{font-size:13px;padding:10px 16px}
}
.toast-link{color:var(--ink);font-weight:700;text-decoration:underline;white-space:nowrap}
/* phones: two products per row */
@media (max-width:600px){
  .grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .grid .stage{margin:8px 8px 18px}
  .grid .plinth{box-shadow:0 8px 14px rgba(0,0,0,.4)}
  .grid .info{padding:8px 9px 10px;gap:4px}
  .grid .info .b{font-size:9px;letter-spacing:.14em}
  .grid .info h3{font-size:13px;line-height:1.3}
  .grid .info .short{font-size:11.5px;-webkit-line-clamp:2}
  .grid .info .sim{font-size:10.5px}
  .grid .meta{font-size:10.5px}
  .grid .nchips{display:none}
  .grid .season{font-size:10px;padding:1px 6px 1px 4px}
  .grid .season svg{width:12px;height:12px}
  .grid .price .now{font-size:17px}
  .grid .price s{font-size:12px}
  .grid .save,.grid .prior{font-size:10px}
  .grid .card .acts{grid-template-columns:1fr;gap:6px;margin-top:6px}
  .grid .card .acts .btn{padding:8px 4px;font-size:10px;letter-spacing:.04em}
  .grid .icon-btn.heart,.grid .icon-btn.peek{width:32px;height:32px}
  .grid .icon-btn svg{width:16px;height:16px}
  .grid .stage .heart{top:5px;right:5px}.grid .stage .peek{bottom:5px;right:5px}
  .grid .badge{top:6px;left:6px;font-size:11px;padding:3px 6px}
  .grid .car-btn{display:none}
  .grid .dots{bottom:-13px}
}
.stage .heart{top:8px;right:8px}
.stage .peek{bottom:8px;right:8px;opacity:0;transition:opacity .2s}
.p3d:hover .peek,.peek:focus-visible{opacity:1}
@media (hover:none){.stage .peek{opacity:1}}
.heart[aria-pressed="true"] svg{fill:var(--sale);stroke:var(--sale)}
.info{padding:14px 16px 16px;display:flex;flex-direction:column;gap:6px;flex:1;transform:translateZ(16px)}
.info .b{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold)}
.info h3{font-family:var(--body);font-weight:500;font-size:15px;letter-spacing:0;line-height:1.35}
.info h3 a{text-decoration:none}
.info h3 a:hover{color:var(--gold-hi)}
.meta{font-size:12px;color:var(--muted)}
.price{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;margin-top:auto;padding-top:8px;font-variant-numeric:tabular-nums}
.price .now{font-family:var(--display);font-size:21px;font-weight:700}
.price .now.sale{color:var(--gold-hi)}
.price s{color:var(--muted);font-size:14px}
.save{font-size:12px;color:var(--ok)}
.prior{font-size:11px;color:var(--muted)}
.card .acts{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:8px;margin-top:10px}
.card .acts .btn{white-space:normal;text-align:center;line-height:1.25;padding:9px 8px;min-width:0;letter-spacing:.06em}
.card .glare{position:absolute;inset:0;pointer-events:none;background:radial-gradient(300px circle at var(--gx,50%) var(--gy,0%),rgba(248,227,160,.1),transparent 60%);opacity:0;transition:opacity .3s}
.p3d:hover .glare{opacity:1}
.more{display:flex;justify-content:center;margin-top:28px}
/* card image carousel: swipe (scroll-snap), arrows on mouse devices, dots, hover swap to 2nd photo */
.slides{display:flex;width:100%;height:100%;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain;text-decoration:none}
.slides::-webkit-scrollbar{display:none}
.slides .sl{flex:0 0 100%;height:100%;scroll-snap-align:center;position:relative}
.slides img{width:100%;height:100%;object-fit:contain;display:block;transition:transform .5s cubic-bezier(.2,.9,.3,1),opacity .45s}
.slides .alt{position:absolute;inset:0;opacity:0}
@media (hover:hover){.p3d:hover .slides:not(.moved) .alt{opacity:1}.p3d:hover .slides:not(.moved) .sl:first-child img:not(.alt){opacity:0}}
.p3d:hover .slides img{transform:scale(1.03)}
.car-btn{position:absolute;top:50%;z-index:2;width:30px;height:30px;margin-top:-15px;border-radius:50%;border:1px solid rgba(138,102,32,.5);background:rgba(255,255,255,.92);color:#5a4213;display:grid;place-items:center;cursor:pointer;opacity:0;transition:opacity .2s;font-size:16px;line-height:1;padding:0}
.car-btn.prev{left:6px}.car-btn.next{right:6px}
@media (hover:hover){.p3d:hover .car-btn,.car-btn:focus-visible{opacity:1}}
@media (hover:none){.car-btn{display:none}}
.dots{position:absolute;left:0;right:0;bottom:-16px;display:flex;justify-content:center;gap:6px;z-index:2;pointer-events:none;transform:translateZ(16px)}
.dots i{width:6px;height:6px;border-radius:50%;background:rgba(217,178,76,.28);transition:background .25s,transform .25s}
.dots i.on{background:var(--gold-hi);transform:scale(1.3)}
.slides{touch-action:pan-x pan-y}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.hsearch{display:flex;align-items:center;border:1px solid var(--line);border-radius:20px;background:rgba(7,6,5,.75);padding-left:12px}
.hsearch input{background:transparent;border:0;width:150px;font-size:13px;padding:8px 0;outline:none}
.hsearch:focus-within{border-color:var(--gold)}
.hsearch button{width:36px;height:36px;border:0;background:transparent;display:grid;place-items:center;cursor:pointer;color:var(--fg)}
.hsearch button svg{width:17px;height:17px}
.hsearch{padding-left:0;border-radius:50%}.hsearch input{display:none}
.seasons{display:flex;gap:6px;flex-wrap:wrap}
.season{display:inline-flex;align-items:center;gap:4px;font-size:11px;letter-spacing:.08em;padding:2px 8px 2px 6px;border:1px solid var(--line);border-radius:20px;color:var(--fg)}
.season svg{width:14px;height:14px}
.season.verao{border-color:#8a6620;color:#f8d77a}.season.inverno{border-color:#4a6a8a;color:#bcd6f0}.season.todas{border-color:#5a5246;color:var(--muted)}
.nchips{display:flex;flex-wrap:wrap;gap:4px}
.nchips span{font-size:11px;color:var(--muted);background:rgba(217,178,76,.07);border:1px solid rgba(217,178,76,.18);padding:1px 7px;border-radius:2px}
.card .glass{position:absolute;inset:0;pointer-events:none;background:linear-gradient(115deg,transparent 30%,rgba(255,255,255,.22) 45%,transparent 60%);background-size:250% 100%;background-position:var(--gl,130%) 0;mix-blend-mode:screen;opacity:0;transition:opacity .3s,background-position .2s}
.p3d:hover .glass{opacity:1}
/* season pages + homepage */
.sbanners{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
@media (max-width:720px){.sbanners{grid-template-columns:1fr}}
.sban{position:relative;display:block;text-decoration:none;min-height:230px;padding:28px;border:1px solid var(--gold-lo);overflow:hidden;isolation:isolate}
.sban::before{content:"";position:absolute;inset:-40%;z-index:-1;background:var(--sbg);transition:transform .8s}
.sban:hover::before{transform:scale(1.08) rotate(3deg)}
.sban.verao{--sbg:radial-gradient(closest-side at 70% 40%,rgba(248,215,122,.45),transparent),radial-gradient(closest-side at 20% 80%,rgba(224,140,60,.3),transparent),linear-gradient(140deg,#2b200c,#0e0b07)}
.sban.inverno{--sbg:radial-gradient(closest-side at 70% 40%,rgba(160,190,230,.3),transparent),radial-gradient(closest-side at 25% 80%,rgba(217,178,76,.25),transparent),linear-gradient(140deg,#0f1520,#0a0806)}
.sban h3{font-size:clamp(24px,3.4vw,36px);margin:10px 0 8px}
.sban p{color:var(--fg);opacity:.8;margin:0 0 16px;max-width:36ch}
.sban .ico{position:absolute;right:22px;top:22px;width:84px;height:84px;opacity:.9}
.sban .cnt{font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-hi)}
@media (prefers-reduced-motion:no-preference){.sban.verao .ico{animation:spin 30s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.sban.inverno .ico{animation:drift 6s ease-in-out infinite}@keyframes drift{50%{transform:translateY(8px) rotate(20deg)}}}
.shimmer{position:relative;overflow:hidden}
.shimmer::after{content:"";position:absolute;inset:0;background:linear-gradient(105deg,transparent 40%,rgba(248,227,160,.18) 50%,transparent 60%);transform:translateX(-100%);pointer-events:none}
@media (prefers-reduced-motion:no-preference){.shimmer::after{animation:shim 5s ease-in-out infinite}@keyframes shim{60%,100%{transform:translateX(100%)}}}
.tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:22px}
.tabs button{background:transparent;border:1px solid var(--line);padding:8px 14px;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);cursor:pointer;border-radius:2px}
.tabs button[aria-selected="true"]{border-color:var(--gold);color:var(--gold-hi);background:rgba(217,178,76,.08)}
.fams{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}
.fams a{display:block;text-decoration:none;border:1px solid var(--line);background:linear-gradient(160deg,var(--surface-2),var(--surface));padding:16px;transition:border-color .2s,transform .2s}
.fams a:hover{border-color:var(--gold);transform:translateY(-3px)}
.fams b{display:block;font-family:var(--display);font-size:15px;color:var(--gold-hi)}
.fams small{color:var(--muted);font-variant-numeric:tabular-nums}
.para{will-change:transform}
/* notes pyramid on product page */
.pyr{border:1px solid var(--line);background:var(--surface);padding:16px 18px;margin:0 0 18px}
.pyr h2{font-size:16px;letter-spacing:.12em;margin-bottom:10px}
.pyr .lvl{display:grid;grid-template-columns:120px minmax(0,1fr);gap:10px;padding:8px 0;border-top:1px solid var(--line);font-size:15px}
.pyr .lvl:first-of-type{border-top:0}
.pyr .lvl span{color:var(--gold);font-size:12px;letter-spacing:.14em;text-transform:uppercase;padding-top:2px}
.pyr .insp div{display:flex;flex-direction:column;gap:4px}
.pyr .insp small{color:var(--muted);font-size:12px;line-height:1.4}
.pyr .fam{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:10px;font-size:14px;color:var(--muted)}
@media (max-width:440px){.pyr .lvl{grid-template-columns:1fr;gap:2px}}
.zoom .gnav{position:absolute;top:50%;margin-top:-18px;width:36px;height:36px;border-radius:50%;border:1px solid rgba(138,102,32,.5);background:rgba(255,255,255,.92);color:#5a4213;cursor:pointer;font-size:18px;z-index:2;display:grid;place-items:center;padding:0}
.zoom .gnav.prev{left:10px}.zoom .gnav.next{right:10px}
.ftoggle{display:none}
@media (max-width:900px){.ftoggle{display:flex;width:100%}.filters:not(.open){display:none}}
.checks{display:flex;flex-direction:column;gap:6px;font-size:14px}
.checks label{display:flex;gap:8px;align-items:center;cursor:pointer;text-transform:none;letter-spacing:0;color:var(--fg);font-size:14px;margin:0}
.checks input{accent-color:var(--gold);width:16px;height:16px}
.subnav{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:20px}
.subnav a{text-decoration:none;font-size:12px;letter-spacing:.14em;text-transform:uppercase;padding:8px 14px;border:1px solid var(--line);color:var(--muted);border-radius:20px}
.subnav a:hover{color:var(--fg);border-color:var(--gold-lo)}
.subnav a[aria-current="page"]{color:var(--ink);background:var(--gold-grad);border-color:transparent}
@media (max-width:600px){.subnav{flex-wrap:nowrap;overflow-x:auto;justify-content:flex-start;scrollbar-width:none;margin-inline:-16px;padding-inline:16px}.subnav a{flex:none}}
.gtiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
@media (max-width:720px){.gtiles{grid-template-columns:1fr}}
.gtile{position:relative;display:flex;flex-direction:column;justify-content:flex-end;min-height:220px;padding:22px;text-decoration:none;border:1px solid var(--gold-lo);overflow:hidden;isolation:isolate;background:var(--surface)}
.gtile .bg{position:absolute;inset:0;z-index:-2;display:grid;grid-template-columns:repeat(3,1fr);gap:0;opacity:.55;transition:transform .8s,opacity .4s}
.gtile .bg img{width:100%;height:100%;object-fit:cover;background:#fff}
.gtile::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(7,6,5,.15),rgba(7,6,5,.92) 75%)}
.gtile:hover .bg{transform:scale(1.06);opacity:.75}
.gtile h3{font-size:clamp(22px,2.6vw,30px);margin:6px 0 4px}
.gtile p{margin:0;color:var(--fg);opacity:.8;font-size:14px}
.gtile .cnt{font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-hi);margin-top:10px}
.active-f{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px}
.active-f button{font-size:12px;border:1px solid var(--gold-lo);background:rgba(217,178,76,.08);color:var(--gold-hi);padding:4px 10px;cursor:pointer;border-radius:20px}
/* admin tabs + notes editor */
.atabs{display:flex;gap:8px;margin-bottom:18px}
table.admin.notes{min-width:2100px}
table.admin.notes textarea{background:var(--bg);border:1px solid var(--line);padding:6px;width:100%;min-width:150px;font:inherit;font-size:12px;resize:vertical;color:inherit}
.vst{font-size:11px;padding:2px 6px;border:1px solid}
.vst.ok{color:var(--ok);border-color:var(--ok)}.vst.no{color:var(--warn);border-color:var(--warn)}

/* product page */
.pdp{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:44px;padding-block:28px 56px}
@media (max-width:860px){.pdp{grid-template-columns:1fr;gap:24px}}
.crumbs{font-size:13px;color:var(--muted);padding-top:24px}
.crumbs a{text-decoration:none}
.crumbs a:hover{color:var(--gold-hi)}
.gallery{perspective:1200px}
.zoom{position:relative;background:var(--plinth);border:1px solid #e9d39a;aspect-ratio:1;max-width:100%;overflow:hidden;cursor:zoom-in;transform-style:preserve-3d;transform:rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transition:transform .2s ease-out;box-shadow:0 30px 60px rgba(0,0,0,.6)}
.zoom img{width:100%;height:100%;object-fit:contain;display:block;transition:transform .2s ease-out;transform-origin:var(--ox,50%) var(--oy,50%)}
.zoom.on img{transform:scale(2.2)}
.zoom.on{cursor:zoom-out}
.zoom-hint{position:absolute;bottom:10px;right:10px;background:rgba(0,0,0,.65);color:#fff;font-size:12px;padding:4px 8px}
.thumbs{display:flex;gap:10px;margin-top:12px}
.thumbs button{width:76px;height:76px;padding:0;border:2px solid transparent;background:var(--plinth);cursor:pointer}
.thumbs button[aria-current="true"]{border-color:var(--gold)}
.thumbs img{width:100%;height:100%;object-fit:contain}
.pdp h1{font-size:clamp(24px,3.4vw,36px);margin-block:8px 12px;letter-spacing:.02em}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}
.chip{font-size:12px;letter-spacing:.08em;border:1px solid var(--line);padding:4px 10px;color:var(--muted)}
.pdp .desc{font-size:17px;font-weight:300;margin:0 0 18px;max-width:60ch}
.pbox{border:1px solid var(--line);background:var(--surface);padding:18px}
.pbox .price .now{font-size:32px}
.stock{display:flex;align-items:center;gap:8px;font-size:14px;margin:12px 0}
.dot{width:9px;height:9px;border-radius:50%;background:var(--warn)}
.dot.ok{background:var(--ok)}.dot.no{background:var(--sale)}
.buyrow{display:flex;gap:10px;flex-wrap:wrap;align-items:stretch}
.qty{display:flex;border:1px solid var(--line)}
.qty button{width:40px;background:transparent;border:0;cursor:pointer;font-size:18px}
.qty input{width:48px;text-align:center;background:transparent;border:0;border-inline:1px solid var(--line);font-variant-numeric:tabular-nums}
.specs{width:100%;border-collapse:collapse;font-size:14px;margin-top:20px}
.specs th{text-align:left;font-weight:400;color:var(--muted);padding:8px 0;border-bottom:1px solid var(--line);width:40%}
.specs td{padding:8px 0;border-bottom:1px solid var(--line);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.trust{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-block:8px 48px}
@media (max-width:860px){.trust{grid-template-columns:repeat(2,minmax(0,1fr))}}
.trust div{border:1px solid var(--line);padding:16px;background:var(--surface);min-width:0}
.trust b{display:block;font-family:var(--display);font-size:15px;color:var(--gold-hi);margin-bottom:4px}
.trust p{margin:0;font-size:14px;color:var(--muted)}

/* drawer + modal */
.scrim{position:fixed;inset:0;z-index:50;background:rgba(0,0,0,.7);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}
.drawer{position:fixed;top:0;right:0;bottom:0;z-index:51;width:min(420px,100%);background:var(--surface);border-left:1px solid var(--gold-lo);display:flex;flex-direction:column;padding:calc(18px + env(safe-area-inset-top,0px)) max(18px,env(safe-area-inset-right,0px)) calc(18px + env(safe-area-inset-bottom,0px)) 18px}
.drawer header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}
.drawer h2{font-size:22px}
.lines{flex:1;overflow:auto;display:flex;flex-direction:column;gap:12px;padding-right:4px}
.line{display:grid;grid-template-columns:64px 1fr auto;gap:12px;align-items:center;border-bottom:1px solid var(--line);padding-bottom:12px}
.line img,.line .ph{width:64px;height:64px;object-fit:contain;background:var(--plinth)}
.line .n{font-size:14px;line-height:1.3}
.line .q{display:flex;align-items:center;gap:6px;margin-top:6px;font-size:13px}
.line .q button{width:26px;height:26px;border:1px solid var(--line);background:transparent;cursor:pointer}
.line .p{font-variant-numeric:tabular-nums;text-align:right;font-size:14px}
.totals{border-top:1px solid var(--gold-lo);padding-top:14px;display:flex;flex-direction:column;gap:10px}
.totals .row{display:flex;justify-content:space-between;font-variant-numeric:tabular-nums}
.totals .row b{font-family:var(--display);font-size:22px}
.totals small{color:var(--muted);font-size:12px}
.modal{position:fixed;inset:0;z-index:52;display:grid;place-items:center;padding:16px;pointer-events:none}
.modal-box{pointer-events:auto;width:min(760px,100%);max-height:calc(100% - 32px);overflow:auto;perspective:1200px}
.modal-card{position:relative;background:radial-gradient(circle at 30% 30%,#241e14,var(--surface) 70%);border:1px solid var(--gold-lo);display:grid;grid-template-columns:1fr 1fr;gap:22px;padding:22px;transform-style:preserve-3d}
@media (max-width:620px){.modal-card{grid-template-columns:1fr}}
.modal-card .pic{background:var(--plinth);aspect-ratio:1;max-width:100%;transform:translateZ(80px);box-shadow:0 30px 40px rgba(0,0,0,.7);border:1px solid #e9d39a;transition:transform .15s ease-out}
.modal-card .pic img{width:100%;height:100%;object-fit:contain}
.modal-card h3{font-size:22px;margin:6px 0 10px}
.modal-card p{color:var(--muted);font-size:15px;margin:0 0 14px}
.close{position:absolute;top:10px;right:10px;z-index:3}
@media (prefers-reduced-motion:no-preference){.modal-card.enter{animation:pop .55s cubic-bezier(.2,.9,.3,1.25)}@keyframes pop{from{transform:scale(.5) rotateY(-60deg) rotateX(15deg);opacity:0}}}
.toast{position:fixed;left:50%;bottom:calc(20px + env(safe-area-inset-bottom,0px));transform:translateX(-50%);z-index:60;background:var(--gold-grad);color:var(--ink);padding:12px 20px;font-weight:600;box-shadow:0 10px 30px rgba(0,0,0,.6)}

/* admin */
.admin-top{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-bottom:20px}
@media (max-width:860px){.admin-top{grid-template-columns:repeat(2,minmax(0,1fr))}}
.kpi{border:1px solid var(--line);background:var(--surface);padding:14px}
.kpi b{display:block;font-family:var(--display);font-size:26px;font-variant-numeric:tabular-nums}
.kpi span{font-size:12px;color:var(--muted);letter-spacing:.1em;text-transform:uppercase}
.admin-filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:12px}
.admin-filters .field{min-width:150px;flex:1}
.bulk{display:flex;flex-wrap:wrap;gap:10px;align-items:end;border:1px solid var(--gold-lo);background:#17120a;padding:12px;margin-bottom:12px}
.bulk .field{min-width:120px}
.bulk .field input,.bulk .field select{padding:8px}
.savebar{position:sticky;bottom:0;z-index:5;display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;background:rgba(7,6,5,.95);border-top:1px solid var(--gold-lo);padding:12px max(16px,env(safe-area-inset-right,0px)) calc(12px + env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px));margin-top:16px}
.tablewrap{overflow-x:auto;border:1px solid var(--line)}
table.admin{border-collapse:collapse;width:100%;min-width:1420px;font-size:13px}
table.admin th{position:sticky;top:0;background:var(--surface-2);text-align:left;font-weight:500;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--gold);padding:10px 8px;border-bottom:1px solid var(--line)}
table.admin td{padding:8px;border-bottom:1px solid var(--line);vertical-align:top}
table.admin tr.dirty td{background:rgba(217,178,76,.06)}
table.admin input,table.admin select{background:var(--bg);border:1px solid var(--line);padding:6px;width:100%;min-width:0;font-variant-numeric:tabular-nums}
table.admin input[type=checkbox]{width:auto}
table.admin select{min-width:118px}
table.admin .num{width:84px}
table.admin .dt{width:130px}
.thumb{width:44px;height:44px;background:var(--plinth);object-fit:contain}
.iss{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}
.iss span{font-size:11px;padding:1px 6px;border:1px solid #7a4a1e;color:var(--warn)}
.st{font-size:11px;padding:2px 6px;border:1px solid}
.pct{font-variant-numeric:tabular-nums;font-weight:600}
.pct.on{color:var(--ok)}

/* contacts */
.visit{border-top:1px solid var(--line);background:linear-gradient(180deg,var(--surface),var(--bg))}
.visit .wrap{padding-block:64px;display:grid;grid-template-columns:1fr 1.3fr;gap:48px}
.visit h2{font-size:clamp(28px,4vw,40px);margin-block:10px 14px}
.visit p{color:var(--muted);max-width:40ch;margin:0}
.hours{font-variant-numeric:tabular-nums;font-size:15px;border-collapse:collapse;margin-top:18px}
.hours td{padding:5px 24px 5px 0;border-bottom:1px solid var(--line)}
.hours td:first-child{color:var(--gold)}
.contacts{display:grid;gap:10px;min-width:0}
.contact{display:grid;grid-template-columns:110px 1fr auto;gap:12px;align-items:center;border:1px solid var(--line);background:var(--surface);padding:12px 16px;min-width:0}
.contact .k{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold)}
.contact .v{font-weight:500;overflow-wrap:anywhere;min-width:0}
.contact .v a{text-decoration:none}
.copy{background:transparent;border:1px solid var(--gold-lo);color:var(--gold-hi);font:500 12px var(--body);padding:6px 10px;cursor:pointer;border-radius:2px}
@media (max-width:820px){.visit .wrap{grid-template-columns:1fr;gap:32px}}
@media (max-width:440px){.contact{grid-template-columns:1fr auto}.contact .k{grid-column:1/-1}}
/* footer */
footer.site{margin-top:0;border-top:1px solid var(--gold-lo);background:linear-gradient(180deg,var(--surface),var(--bg))}
.fgrid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:32px;padding-block:48px 32px}
@media (max-width:900px){.fgrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:520px){.fgrid{grid-template-columns:1fr;gap:26px}}
.fcol{display:flex;flex-direction:column;gap:9px;min-width:0}
.fcol h3{font-size:13px;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);margin-bottom:4px}
.fcol a{text-decoration:none;color:var(--fg);opacity:.85;font-size:15px;overflow-wrap:anywhere}
.fcol a:hover{color:var(--gold-hi);opacity:1}
.fbrand p{color:var(--muted);margin:4px 0;max-width:34ch;font-size:15px}
.fbrand address{font-style:normal;font-size:14px}
.fbrand address a{color:var(--muted)}
.social{display:flex;gap:10px;margin-top:6px}
.social a{width:38px;height:38px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;color:var(--fg);opacity:1}
.social a:hover{border-color:var(--gold);color:var(--gold-hi)}
.social svg{width:18px;height:18px}
.social.big{flex-wrap:wrap}
.social.big a{width:auto;height:auto;border-radius:20px;padding:8px 14px;gap:8px;display:inline-flex;align-items:center;text-decoration:none;font-size:14px}
.lrec{margin-top:6px;display:inline-block;border:1px solid var(--gold-lo);padding:6px 12px;align-self:flex-start;font-size:13px!important}
.fbottom .credit a{color:var(--gold-2,#e9cf86);text-decoration:underline;text-underline-offset:3px}.fbottom .credit a:hover{color:#fff}
.fbottom{padding-block:18px calc(84px + env(safe-area-inset-bottom,0px));display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;font-size:13px;color:var(--muted);border-top:1px solid var(--line)}
.wa-float{position:fixed;right:max(18px,env(safe-area-inset-right,0px));bottom:calc(18px + env(safe-area-inset-bottom,0px));z-index:45;width:56px;height:56px;border-radius:50%;background:#25d366;color:#fff;display:grid;place-items:center;box-shadow:0 10px 24px rgba(0,0,0,.5);transition:transform .2s}
.wa-float:hover{transform:scale(1.08)}
.wa-float svg{width:30px;height:30px}
/* catalogue paging */
.more{flex-direction:column;align-items:center;gap:10px}
.more .shown{margin:0;color:var(--muted);font-size:14px;font-variant-numeric:tabular-nums}
.info .sim{margin:0;font-size:12px;line-height:1.35;color:var(--gold);letter-spacing:.01em}
.info .sim b{font-weight:500;color:var(--gold-hi)}
.info .short{margin:0;font-size:13px;line-height:1.45;color:var(--fg);opacity:.78;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
/* contact page */
.cpage{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:28px;padding-bottom:24px}
@media (max-width:860px){.cpage{grid-template-columns:1fr}}
.cinfo{display:grid;gap:12px;align-content:start}
.ccard{display:flex;flex-direction:column;gap:4px;border:1px solid var(--line);background:var(--surface);padding:16px 18px;text-decoration:none;min-width:0}
a.ccard:hover{border-color:var(--gold-lo)}
.ccard .k{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold)}
.ccard b{font-weight:500;font-size:17px;overflow-wrap:anywhere}
.ccard .go{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-hi)}
.ccard.wa{border-color:#1f7a45;background:linear-gradient(140deg,#0f2418,var(--surface))}
.ccard .hours{margin-top:6px}
.cside{display:grid;gap:16px;align-content:start}
.cform{border:1px solid var(--gold-lo);background:var(--surface);padding:20px;display:grid;gap:12px}
.cform h2{font-size:22px}
.cform p{margin:0;color:var(--muted);font-size:14px}
.cform textarea{width:100%;background:var(--bg);border:1px solid var(--line);padding:10px 12px;border-radius:2px;resize:vertical;font:inherit;color:inherit}
.cform input{background:var(--bg)}
.cform textarea:focus{border-color:var(--gold);outline:none}
.map{border:1px solid var(--line);aspect-ratio:4/3;max-width:100%;background:var(--surface)}
.map iframe{width:100%;height:100%;border:0;display:block;filter:grayscale(.3) contrast(1.05)}
/* blog + legal */
.posts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;padding-bottom:40px}
@media (max-width:900px){.posts{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.posts{grid-template-columns:1fr}}
.post{display:flex;flex-direction:column;text-decoration:none;border:1px solid var(--line);background:linear-gradient(170deg,var(--surface-2),var(--surface) 60%);transition:border-color .2s,transform .2s;min-width:0}
.post:hover{border-color:var(--gold-lo);transform:translateY(-3px)}
.post.first{grid-column:1/-1;display:grid;grid-template-columns:1.1fr 1fr}
@media (max-width:700px){.post.first{grid-template-columns:1fr}}
.pcover{background:var(--plinth);aspect-ratio:16/10;max-width:100%;overflow:hidden}
.post.first .pcover{aspect-ratio:4/3}
.pcover img{width:100%;height:100%;object-fit:contain;display:block}
.pbody{padding:18px;display:flex;flex-direction:column;gap:8px}
.pbody h2{font-size:20px;line-height:1.25}
.post.first .pbody{justify-content:center;padding:28px}
.post.first .pbody h2{font-size:clamp(22px,3vw,30px)}
.pbody p{margin:0;color:var(--muted);font-size:15px}
.pbody .go{font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-hi);margin-top:auto}
.posts.small{padding-bottom:0}
.doc{max-width:780px;padding-bottom:56px;font-size:17px;line-height:1.7}
.doc h1{font-size:clamp(28px,4.4vw,44px);margin:10px 0 14px}
.doc h2{font-size:clamp(19px,2.4vw,24px);margin:30px 0 10px;color:var(--gold-hi)}
.doc p,.doc li{color:var(--fg);opacity:.9}
.doc ul,.doc ol{padding-left:22px}
.doc li{margin-bottom:8px}
.doc a{color:var(--gold-hi)}
.doc .lead{font-size:19px;font-weight:300;color:var(--muted);opacity:1}
.doc .cta{margin-top:28px;display:flex;gap:10px;flex-wrap:wrap}
.doc .cta a{color:var(--gold-hi)}
.doc .cta a.gold{color:var(--ink)}
.doc img{max-width:100%;height:auto}
.hero-cover{margin:18px 0 8px;aspect-ratio:16/8}
.updated{margin-top:32px;font-size:14px;color:var(--muted)!important}
.updated.top{margin-top:0}
mark.confirm{background:rgba(227,169,59,.16);color:#f3c46b;border:1px dashed #e3a93b;padding:1px 6px;border-radius:2px;font-size:.88em}
.confirm-note{border-color:#e3a93b;color:#f3c46b}
.legal-nav{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:-6px 0 26px}
.legal-nav a{text-decoration:none;font-size:13px;padding:6px 12px;border:1px solid var(--line);border-radius:20px;color:var(--muted)}
.legal-nav a:hover{color:var(--fg);border-color:var(--gold-lo)}
.legal-nav a[aria-current="page"]{color:var(--ink);background:var(--gold-grad);border-color:transparent}
@media (max-width:600px){.legal-nav{flex-wrap:nowrap;overflow-x:auto;justify-content:flex-start;scrollbar-width:none;margin-inline:-16px;padding-inline:16px}.legal-nav a{flex:none}}
.idl{list-style:none;padding:14px 18px!important;border:1px solid var(--line);background:var(--surface)}
.idl li{margin-bottom:4px}
.legal-t{margin:12px 0 8px}
.legal-t table{border-collapse:collapse;width:100%;min-width:640px;font-size:14px;line-height:1.45}
.legal-t th{text-align:left;font-weight:500;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--gold);background:var(--surface-2);padding:9px 8px;border-bottom:1px solid var(--line)}
.legal-t td{padding:9px 8px;border-bottom:1px solid var(--line);vertical-align:top;overflow-wrap:anywhere}
.map-ph{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;text-align:center;padding:20px}
.map-ph p{margin:0;color:var(--muted);font-size:14px;max-width:36ch}
.fco,.fhours{font-size:14px!important;margin:0!important}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
