/* public_html/assets/css/site.css
   AVAMM - Estilos do site publico
   11/07/2026 às 11:39 (horário de Bacabal-MA) */

:root{
  --breu:#141009;
  --breu-2:#1d1610;
  --couro:#241c14;
  --latao:#c79a3f;
  --latao-claro:#ead29a;
  --latao-escuro:#9c7421;
  --vinho:#8c2328;
  --vinho-esc:#641a1f;
  --marfim:#efe6d0;
  --marfim-2:#f6efe1;
  --marfim-suave:#b7a98a;
  --tinta:#2a2014;
  --tinta-suave:#7a6c54;
  --raio:14px;
}

*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  font-family:"Inter",system-ui,sans-serif;
  color:var(--tinta);
  background:var(--breu);
  -webkit-font-smoothing:antialiased;
  line-height:1.5;
}
img{max-width:100%;display:block}
a{color:inherit}

.container{width:min(1120px,92vw);margin-inline:auto}

section[id]{scroll-margin-top:84px}

/* skip link */
.pula{
  position:absolute;left:-9999px;top:0;z-index:100;
  background:var(--latao);color:#1a140c;padding:10px 16px;border-radius:0 0 8px 0;
  font-weight:600;text-decoration:none;
}
.pula:focus{left:0}

/* ===== botoes ===== */
.btn{
  display:inline-flex;align-items:center;gap:.5em;
  padding:.82em 1.5em;border-radius:999px;
  font-weight:600;font-size:.95rem;letter-spacing:.01em;
  text-decoration:none;border:1px solid transparent;cursor:pointer;background:transparent;color:inherit;font-family:inherit;
  transition:transform .22s ease,filter .22s ease,background .22s ease,color .22s ease,border-color .22s ease;
}
.btn--ouro{background:linear-gradient(180deg,var(--latao-claro),var(--latao));color:#1a140c}
.btn--ouro:hover{transform:translateY(-1px);filter:brightness(1.05)}
.btn--linha{border-color:rgba(199,154,63,.55);color:var(--marfim)}
.btn--linha:hover{background:rgba(199,154,63,.12);border-color:var(--latao)}
.btn--escuro{background:var(--tinta);color:var(--marfim)}
.btn--escuro:hover{transform:translateY(-1px);background:#3a2c1c}

a:focus-visible,.btn:focus-visible,button:focus-visible{
  outline:2px solid var(--latao);outline-offset:3px;border-radius:6px;
}

/* ===== eyebrow / titulos ===== */
.eyebrow{
  font-size:.72rem;letter-spacing:.26em;text-transform:uppercase;
  color:var(--latao);font-weight:600;
}
.eyebrow--escuro{color:var(--latao-escuro)}

.secao{padding:clamp(60px,9vw,108px) 0}
.secao--claro{background:var(--marfim-2);color:var(--tinta)}
.secao--escuro{
  background:radial-gradient(120% 130% at 50% -20%,#2a2014 0%,var(--breu-2) 55%,var(--breu) 100%);
  color:var(--marfim);
}

.secao__titulo{
  font-family:"Anton",sans-serif;font-weight:400;
  font-size:clamp(28px,5vw,46px);line-height:1;letter-spacing:.012em;
  text-transform:uppercase;color:var(--tinta);margin-top:10px;
}
.secao__titulo--claro{color:var(--marfim)}
.secao__sub{margin-top:12px;color:var(--tinta-suave);font-size:1.02rem;max-width:48ch}
.secao__sub--claro{color:var(--marfim-suave)}
.secao__head{
  display:flex;justify-content:space-between;align-items:flex-end;
  gap:24px;flex-wrap:wrap;margin-bottom:38px;
}

/* ===== topo / nav ===== */
.topo{position:fixed;inset:0 0 auto 0;z-index:50;transition:background .3s ease,box-shadow .3s ease}
.topo__row{display:flex;align-items:center;justify-content:space-between;padding:16px 0;transition:padding .3s ease}
.topo__brand{display:inline-flex;align-items:center;gap:12px;text-decoration:none}
.topo__brand img{height:46px;width:auto;border-radius:0;display:block}
.topo__nome{font-family:"Anton",sans-serif;font-size:1.5rem;letter-spacing:.06em;color:var(--marfim)}
.topo__nav{display:flex;align-items:center;gap:26px}
.topo__link{color:var(--marfim);text-decoration:none;font-weight:500;font-size:.95rem;transition:color .2s ease}
.topo__link:hover{color:var(--latao-claro)}
.topo__btn{padding:.6em 1.2em;font-size:.88rem}
.topo.rolou{background:rgba(20,16,9,.93);backdrop-filter:blur(10px);box-shadow:0 1px 0 rgba(199,154,63,.22)}
.topo.rolou .topo__row{padding:9px 0}

.topo__burger{
  display:none;flex-direction:column;gap:5px;width:42px;height:42px;
  align-items:center;justify-content:center;background:transparent;border:0;cursor:pointer;
}
.topo__burger span{width:24px;height:2px;background:var(--marfim);transition:transform .3s ease,opacity .3s ease}
.topo__burger[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.topo__burger[aria-expanded="true"] span:nth-child(2){opacity:0}
.topo__burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* ===== hero ===== */
.hero{
  position:relative;display:flex;align-items:center;overflow:hidden;
  min-height:clamp(560px,92vh,820px);padding:110px 0 90px;
  background:radial-gradient(120% 95% at 50% -10%,#2a2014 0%,var(--breu-2) 45%,var(--breu) 100%);
  color:var(--marfim);
}
.hero::before{
  content:"";position:absolute;inset:0;pointer-events:none;opacity:.05;mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}
.hero__inner{position:relative;z-index:2;display:grid;grid-template-columns:1.25fr .75fr;gap:48px;align-items:center;width:min(1120px,92vw)}
.hero__txt>*{opacity:0;transform:translateY(24px);animation:sobe .95s cubic-bezier(.2,.7,.2,1) forwards}
.hero__txt>*:nth-child(1){animation-delay:.05s}
.hero__txt>*:nth-child(2){animation-delay:.16s}
.hero__txt>*:nth-child(3){animation-delay:.26s}
.hero__txt>*:nth-child(4){animation-delay:.36s}
.hero__txt>*:nth-child(5){animation-delay:.46s}
@keyframes sobe{to{opacity:1;transform:translateY(0)}}
.hero__selo{opacity:0;transform:scale(.9);animation:surge 1.05s cubic-bezier(.34,1.45,.5,1) .3s forwards}
@keyframes surge{to{opacity:1;transform:none}}

.hero__titulo{
  font-family:"Anton",sans-serif;font-weight:400;text-transform:uppercase;
  font-size:clamp(42px,8.4vw,92px);line-height:.92;letter-spacing:.01em;margin:14px 0 0;
}
.hero__titulo em{
  display:block;font-family:"Fraunces",serif;font-style:italic;font-weight:600;
  text-transform:none;color:var(--latao-claro);font-size:.86em;letter-spacing:0;
}
.hero__lema{font-family:"Fraunces",serif;font-style:italic;font-size:clamp(16px,2.6vw,22px);color:var(--marfim-suave);margin:18px 0 26px}
.hero__cta{display:flex;gap:14px;flex-wrap:wrap}
.hero__fil{margin-top:22px;font-size:.9rem;letter-spacing:.04em;color:var(--marfim-suave)}
.hero__fil strong{color:var(--latao-claro);font-weight:600}
.hero__selo{display:flex;justify-content:center}
.hero__logo{width:clamp(170px,32vw,300px);filter:drop-shadow(0 22px 40px rgba(0,0,0,.6))}
.hero__carro{position:absolute;left:0;right:0;bottom:-6%;z-index:1;display:flex;justify-content:center;color:rgba(199,154,63,.10);pointer-events:none}
.hero__carro .carro{width:min(960px,118%)}

/* ===== sobre ===== */
.sobre{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(30px,5vw,60px);align-items:center}
.sobre__p{margin-top:16px;color:#46382a;font-size:1.04rem}
.stats{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:1px;background:rgba(42,32,20,.14);border:1px solid rgba(42,32,20,.14);border-radius:12px;overflow:hidden}
.stats__item{background:var(--marfim-2);padding:24px;display:flex;flex-direction:column;gap:6px}
.stats__valor{font-family:"Anton",sans-serif;font-size:clamp(30px,5vw,44px);line-height:1;color:var(--vinho)}
.stats__rotulo{font-size:.78rem;text-transform:uppercase;letter-spacing:.12em;color:var(--tinta-suave)}

/* ===== patrocinadores ===== */
.patro__rotulo{text-align:center;font-size:.72rem;letter-spacing:.26em;text-transform:uppercase;color:var(--marfim-suave);font-weight:600}
.patro__lista{list-style:none;display:flex;flex-wrap:wrap;justify-content:center;gap:14px 18px;margin:24px 0}
.patro__item a{
  display:flex;align-items:center;justify-content:center;width:130px;height:130px;padding:16px;
  border:1px dashed rgba(199,154,63,.4);border-radius:10px;color:var(--marfim-suave);
  text-align:center;text-decoration:none;font-family:"Fraunces",serif;font-style:italic;
  transition:transform .28s ease,box-shadow .28s ease,border-color .25s ease,color .25s ease}
.patro__item a:hover{transform:translateY(-5px);box-shadow:0 12px 30px rgba(0,0,0,.42),0 0 0 2px rgba(199,154,63,.55);border-color:var(--latao);color:var(--latao-claro)}
.patro__cta{text-align:center;color:var(--marfim-suave);font-size:.95rem}
.patro__cta a{color:var(--latao-claro);font-weight:600;text-decoration:none}
.patro__cta a:hover{text-decoration:underline}

/* ===== classificados ===== */
.grade-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(228px,1fr));gap:20px}
.card-veic{background:#fff;border:1px solid rgba(42,32,20,.1);border-radius:12px;overflow:hidden;transition:transform .25s ease,box-shadow .25s ease}
.card-veic:hover{transform:translateY(-4px);box-shadow:0 20px 40px -22px rgba(42,32,20,.5)}
.card-veic--destaque{outline:2px solid var(--latao);outline-offset:-2px}
.card-veic__foto{position:relative;aspect-ratio:4/3;display:flex;align-items:center;justify-content:center;color:rgba(199,154,63,.45);background:linear-gradient(135deg,#2a2014,#14100d)}
.card-veic__svg{width:72%}
.tag-destaque{position:absolute;top:10px;left:10px;background:var(--latao);color:#1a140c;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;padding:4px 10px;border-radius:999px}
.card-veic__ano{position:absolute;bottom:8px;right:12px;font-family:"Anton",sans-serif;color:var(--marfim);font-size:1.15rem;letter-spacing:.03em}
.card-veic__corpo{padding:16px}
.card-veic__titulo{font-family:"Fraunces",serif;font-weight:600;font-size:1.12rem;color:var(--tinta)}
.card-veic__meta{font-size:.85rem;color:var(--tinta-suave);margin-top:3px}
.card-veic__preco{font-family:"Anton",sans-serif;color:var(--vinho);font-size:1.32rem;margin-top:12px;letter-spacing:.02em}

/* ===== anuncio ===== */
.anuncio{
  display:flex;align-items:center;justify-content:center;gap:18px 26px;flex-wrap:wrap;text-align:center;
  border:1px dashed rgba(199,154,63,.45);border-radius:var(--raio);padding:clamp(24px,5vw,40px);
  text-decoration:none;color:var(--marfim);transition:border-color .25s ease,background .25s ease}
.anuncio:hover{border-color:var(--latao);background:rgba(199,154,63,.06)}
.anuncio__tag{font-size:.72rem;letter-spacing:.24em;text-transform:uppercase;color:var(--latao);font-weight:600}
.anuncio__txt{font-family:"Fraunces",serif;font-size:clamp(18px,3vw,26px)}
.anuncio__cta{color:var(--latao-claro);font-weight:600}

/* ===== parceiros ===== */
.grade-parceiros{display:grid;grid-template-columns:repeat(auto-fill,minmax(168px,1fr));gap:16px}
.card-parc{display:flex;flex-direction:column;align-items:center;text-align:center;gap:9px;padding:26px 16px;background:#fff;border:1px solid rgba(42,32,20,.1);border-radius:12px;text-decoration:none;transition:transform .22s ease,border-color .22s ease}
.card-parc:hover{transform:translateY(-3px);border-color:var(--latao)}
.card-parc__logo{width:54px;height:54px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:linear-gradient(180deg,var(--latao-claro),var(--latao));color:#1a140c;font-family:"Anton",sans-serif;font-size:1.4rem}
.card-parc__nome{font-family:"Fraunces",serif;font-weight:600;color:var(--tinta)}
.card-parc__ramo{font-size:.74rem;text-transform:uppercase;letter-spacing:.08em;color:var(--tinta-suave)}

/* ===== galeria ===== */
.galeria{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.galeria__item{position:relative;aspect-ratio:4/3;border-radius:12px;overflow:hidden;display:flex;align-items:flex-end;border:1px solid rgba(199,154,63,.15);background:linear-gradient(135deg,#241c14,#14100d);color:rgba(199,154,63,.32)}
.galeria__svg{position:absolute;inset:0;margin:auto;width:58%;opacity:.55}
.galeria__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.galeria__cap{position:relative;z-index:1;width:100%;padding:14px 16px;font-family:"Fraunces",serif;font-size:.95rem;color:var(--marfim);background:linear-gradient(transparent,rgba(0,0,0,.55))}
.galeria__item--grande{grid-column:span 2}

/* ===== associar ===== */
.secao--vinho{background:linear-gradient(135deg,var(--vinho),var(--vinho-esc));color:var(--marfim)}
.associar__inner{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,5vw,60px);align-items:center}
.associar__sub{font-family:"Fraunces",serif;font-size:clamp(16px,2.4vw,20px);color:rgba(246,239,225,.88);margin:14px 0 24px}
.beneficios{list-style:none;display:grid;gap:12px}
.beneficios__item{
  position:relative;background:rgba(0,0,0,.18);border:1px solid rgba(199,154,63,.35);border-left:3px solid var(--latao);
  border-radius:8px;padding:14px 18px 14px 42px;font-size:1rem}
.beneficios__item::before{content:"";position:absolute;left:18px;top:50%;width:8px;height:8px;margin-top:-4px;border-radius:2px;background:var(--latao-claro);transform:rotate(45deg)}

/* ===== contato ===== */
.contato{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(30px,5vw,60px);align-items:center}
.contato__sub{margin-top:12px;color:var(--tinta-suave);max-width:46ch}
.contato__lista{list-style:none;display:grid;gap:14px;margin-top:22px}
.contato__lista li{display:flex;flex-direction:column;gap:3px;border-bottom:1px solid rgba(42,32,20,.1);padding-bottom:12px}
.contato__rot{font-size:.72rem;text-transform:uppercase;letter-spacing:.14em;color:var(--tinta-suave)}
.contato__lista a{color:var(--vinho);text-decoration:none;font-family:"Fraunces",serif;font-weight:600}
.contato__lista a:hover{text-decoration:underline}
.contato__cartao{background:linear-gradient(135deg,#241c14,#14100d);color:var(--marfim);border-radius:16px;padding:clamp(28px,5vw,44px);text-align:center;border:1px solid rgba(199,154,63,.3)}
.contato__logo{width:118px;margin:0 auto}
.contato__nome{font-family:"Fraunces",serif;font-weight:600;margin-top:16px}
.contato__lema{font-family:"Fraunces",serif;font-style:italic;color:var(--latao-claro);margin-top:6px}
.contato__redes{display:flex;gap:12px;justify-content:center;margin-top:20px}
.contato__redes a{border:1px solid var(--latao);border-radius:999px;padding:8px 16px;color:var(--marfim);text-decoration:none;font-weight:500;font-size:.85rem;transition:background .2s ease,color .2s ease}
.contato__redes a:hover{background:var(--latao);color:#1a140c}

/* ===== rodape ===== */
.rodape{background:var(--breu);color:var(--marfim-suave);padding:clamp(40px,6vw,64px) 0 26px}
.rodape__row{display:flex;flex-direction:column;align-items:center;text-align:center;gap:20px;flex-wrap:wrap;padding-bottom:26px;border-bottom:1px solid rgba(199,154,63,.15)}
.rodape__marca{font-family:"Anton",sans-serif;font-size:1.7rem;letter-spacing:.05em;color:var(--marfim)}
.rodape__longo{margin-top:6px;font-size:.9rem}
.rodape__fil{margin-top:6px;font-size:.82rem;color:var(--latao)}
.rodape__nav{display:flex;flex-wrap:wrap;justify-content:center;gap:14px 22px;align-content:flex-start}
.rodape__nav a{color:var(--marfim-suave);text-decoration:none;font-size:.9rem}
.rodape__nav a:hover{color:var(--latao-claro)}
.rodape__base{display:flex;flex-direction:column;align-items:center;text-align:center;gap:4px;padding-top:20px;font-size:.8rem;color:rgba(199,154,63,.55)}

/* ===== responsivo ===== */
@media (max-width:860px){
  .topo__burger{display:flex}
  .topo__nav{
    position:fixed;inset:0 0 0 auto;width:min(300px,82vw);
    flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:20px;
    padding:92px 30px;background:var(--couro);transform:translateX(100%);
    transition:transform .32s ease;box-shadow:-24px 0 60px rgba(0,0,0,.5)}
  .topo__nav.aberto{transform:translateX(0)}
  .topo__btn{margin-top:8px}
  body.trava{overflow:hidden}
  .hero__inner{grid-template-columns:1fr;text-align:center}
  .hero__cta{justify-content:center}
  .hero__selo{order:-1}
  .hero__logo{width:clamp(150px,46vw,230px)}
  .sobre,.associar__inner,.contato{grid-template-columns:1fr}
  .galeria{grid-template-columns:repeat(2,1fr)}
  .secao__head{align-items:flex-start}
}
@media (max-width:460px){
  .stats{grid-template-columns:1fr}
  .galeria{grid-template-columns:1fr}
  .galeria__item--grande{grid-column:auto} /* com 1 coluna, span 2 criava coluna implicita e sumia album */
  .rodape__base{flex-direction:column}
}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .hero__txt>*{animation:none;opacity:1;transform:none}
  .hero__selo{animation:none;opacity:1;transform:none}
  *{transition-duration:.01ms !important}
}

/* ===== card como link + foto de capa ===== */
a.card-veic{color:inherit;text-decoration:none;display:block}
.card-veic__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}

/* ===== publicidade com logo/arte ===== */
.patro__logo{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s ease}
.patro__item a:hover .patro__logo{transform:scale(1.09)}
.patro__item a:has(.patro__logo){border:none;background:transparent;padding:0;overflow:hidden}
.anuncio-arte{display:block;border-radius:var(--raio);overflow:hidden;line-height:0;border:1px solid rgba(199,154,63,.2)}
.anuncio-arte img{width:100%;height:auto;display:block}
.card-parc__logo:has(img){background:#fff;padding:5px}
.card-parc__logo img{width:100%;height:100%;object-fit:contain;border-radius:50%}

/* ===== pagina de detalhe do classificado ===== */
.det-topo{position:sticky;top:0;z-index:30;background:rgba(20,16,9,.96);backdrop-filter:blur(8px);border-bottom:1px solid rgba(199,154,63,.2)}
.det-topo__row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0}
.det-topo__marca{display:inline-flex;align-items:center;gap:10px;color:var(--marfim);text-decoration:none;font-family:"Anton",sans-serif;font-size:1.3rem;letter-spacing:.05em}
.det-topo__marca img{width:36px;height:36px;border-radius:50%}
.det-voltar{color:var(--marfim-suave);text-decoration:none;font-size:.9rem;font-weight:500}
.det-voltar:hover{color:var(--latao-claro)}
.detalhe{background:var(--marfim-2);color:var(--tinta);min-height:100svh;padding:clamp(24px,5vw,48px) 0}
.det-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(24px,4vw,44px);align-items:start}
.det-foto-principal{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:16px;border:1px solid rgba(42,32,20,.12);background:linear-gradient(135deg,#241c14,#14100d)}
.det-foto-vazia{width:100%;aspect-ratio:4/3;border-radius:16px;display:flex;align-items:center;justify-content:center;color:rgba(199,154,63,.4);background:linear-gradient(135deg,#241c14,#14100d)}
.det-foto-vazia svg{width:55%}
.det-thumbs{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}
.det-thumb{width:74px;height:60px;border-radius:9px;overflow:hidden;border:2px solid transparent;cursor:pointer;padding:0;background:none}
.det-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.det-thumb.ativa{border-color:var(--latao)}
.det-info h1{font-family:"Anton",sans-serif;font-weight:400;font-size:clamp(26px,5vw,40px);text-transform:uppercase;line-height:1.04;letter-spacing:.01em}
.det-preco{font-family:"Anton",sans-serif;color:var(--vinho);font-size:clamp(24px,4.5vw,34px);margin:10px 0 18px;letter-spacing:.02em}
.det-tags{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:18px}
.det-tag{background:#fff;border:1px solid rgba(42,32,20,.12);border-radius:999px;padding:7px 14px;font-size:.85rem}
.det-tag strong{color:var(--tinta-suave);font-weight:600}
.det-desc{font-family:"Fraunces",serif;font-size:1.02rem;line-height:1.7;color:#46382a;white-space:pre-line;margin-bottom:22px}
.det-anunciante{font-size:.88rem;color:var(--tinta-suave);margin-top:14px}
.det-cta{display:inline-flex;align-items:center;gap:9px;background:#25d366;color:#0b3d20;font-weight:700;padding:13px 22px;border-radius:999px;text-decoration:none;transition:filter .2s ease,transform .2s ease}
.det-cta:hover{filter:brightness(1.04);transform:translateY(-1px)}
.det-cta svg{width:20px;height:20px;fill:currentColor}
.det-aviso{margin-top:14vh;text-align:center;color:var(--tinta-suave)}
@media (max-width:780px){.det-grid{grid-template-columns:1fr}}

/* ---- Galeria: álbum do Drive (abre lightbox no próprio site) ---- */
.galeria__item--album{cursor:pointer}
.galeria__item--album:focus-visible{outline:2px solid var(--latao);outline-offset:3px}
.galeria__album-badge{position:absolute;top:10px;right:10px;z-index:2;display:inline-flex;align-items:center;gap:5px;padding:5px 9px;border-radius:999px;font-size:.78rem;font-weight:600;line-height:1;color:var(--marfim);background:rgba(20,16,12,.62);border:1px solid rgba(199,154,63,.5)}
.galeria__album-badge svg{display:block}

/* ---- Lightbox ---- */
.lightbox{position:fixed;inset:0;z-index:1200;display:flex;align-items:center;justify-content:center;background:rgba(8,6,4,.93);padding:24px}
.lightbox[hidden]{display:none}
.lightbox__palco{margin:0;max-width:min(1100px,92vw);max-height:88vh;display:flex;flex-direction:column;align-items:center;gap:12px}
.lightbox__img{max-width:100%;max-height:80vh;width:auto;height:auto;object-fit:contain;border-radius:8px;box-shadow:0 18px 60px rgba(0,0,0,.6);background:#15110d}
.lightbox__legenda{color:var(--marfim-suave);font-family:"Fraunces",serif;font-style:italic;font-size:1rem;text-align:center;max-width:90vw}
.lightbox__contador{position:absolute;bottom:18px;left:50%;transform:translateX(-50%);color:rgba(246,239,225,.8);font-size:.85rem;letter-spacing:.04em}
.lightbox__fechar{position:absolute;top:14px;right:18px;width:44px;height:44px;border:none;border-radius:50%;background:rgba(0,0,0,.45);color:#fff;font-size:1.9rem;line-height:1;cursor:pointer;transition:background .2s ease}
.lightbox__fechar:hover{background:rgba(199,154,63,.85)}
.lightbox__nav{position:absolute;top:50%;transform:translateY(-50%);width:52px;height:52px;border:none;border-radius:50%;background:rgba(0,0,0,.4);color:#fff;font-size:1.3rem;cursor:pointer;transition:background .2s ease}
.lightbox__nav:hover{background:rgba(199,154,63,.85)}
.lightbox__nav--ant{left:16px}
.lightbox__nav--prox{right:16px}
@media (max-width:640px){
  .lightbox{padding:12px}
  .lightbox__nav{width:44px;height:44px}
  .lightbox__nav--ant{left:8px}
  .lightbox__nav--prox{right:8px}
  .lightbox__fechar{top:8px;right:10px}
}

/* ============================================================
   Fluidez e interatividade (camada de movimento)
   21/06/2026 às 11:05 (horário de Bacabal-MA)
   ============================================================ */
:root{
  --ease:cubic-bezier(.22,.61,.36,1);
  --ease-rev:cubic-bezier(.16,.84,.44,1);
  --ease-pop:cubic-bezier(.34,1.45,.5,1);
}
html{overflow-x:clip}
*{touch-action:manipulation}

/* Barra de progresso de leitura */
.scroll-prog{position:fixed;top:0;left:0;right:0;height:3px;z-index:200;transform:scaleX(0);transform-origin:left;
  background:linear-gradient(90deg,var(--latao-escuro),var(--latao),var(--latao-claro));pointer-events:none;will-change:transform}

/* Revelação ao rolar (só ativa com JS, nunca esconde conteúdo sem ele) */
.js-anim .revelar{opacity:0;transition:opacity .72s var(--ease-rev),transform .72s var(--ease-rev);will-change:opacity,transform}
.js-anim .revelar.visivel{opacity:1;transform:none}
/* direções de entrada */
.js-anim .rev-baixo{transform:translateY(44px)}
.js-anim .rev-cima{transform:translateY(-34px)}
.js-anim .rev-esq{transform:translateX(-52px)}
.js-anim .rev-dir{transform:translateX(52px)}
.js-anim .rev-zoom{transform:scale(.88)}
.js-anim .rev-salto{transform:translateY(46px) scale(.96)}
/* easing com leve "pop" para escala */
.js-anim .rev-zoom,.js-anim .rev-salto{transition:opacity .72s var(--ease-pop),transform .72s var(--ease-pop)}
/* em telas estreitas, entradas laterais viram verticais (mais limpo, sem empurrar a página) */
@media (max-width:680px){
  .js-anim .rev-esq,.js-anim .rev-dir{transform:translateY(38px)}
}

/* Botões: micro-interação mais "feita à mão" */
.btn{transition:transform .24s var(--ease),box-shadow .24s var(--ease),filter .24s var(--ease),background .24s var(--ease),color .24s var(--ease),border-color .24s var(--ease)}
.btn--ouro:hover{transform:translateY(-2px);filter:brightness(1.04);box-shadow:0 12px 26px -12px rgba(199,154,63,.75)}
.btn--escuro:hover{transform:translateY(-2px);box-shadow:0 12px 24px -14px rgba(0,0,0,.55)}
.btn:active{transform:translateY(0) scale(.985)}

/* Nav: sublinhado animado + seção ativa (scrollspy) */
.topo__link{position:relative}
.topo__link::after{content:"";position:absolute;left:0;right:0;bottom:-5px;height:2px;border-radius:2px;
  background:var(--latao);transform:scaleX(0);transform-origin:left;transition:transform .3s var(--ease)}
.topo__link:hover::after,.topo__link.ativo::after{transform:scaleX(1)}
.topo__link.ativo{color:var(--latao-claro)}

/* Cards: zoom suave da foto no hover */
.card-veic{transition:transform .28s var(--ease),box-shadow .28s var(--ease)}
.card-veic__img{transition:transform .55s var(--ease)}
.card-veic:hover .card-veic__img{transform:scale(1.07)}
.card-parc{transition:transform .24s var(--ease),border-color .24s var(--ease),box-shadow .24s var(--ease)}
.card-parc:hover{box-shadow:0 16px 34px -22px rgba(42,32,20,.55)}

@media (prefers-reduced-motion:reduce){
  .scroll-prog{display:none}
  .js-anim .revelar{opacity:1 !important;transform:none !important;transition:none}
}

/* ===== Fundo do herói (imagem/vídeo com transparência) ===== */
.hero__bg{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none}
.hero__bg-media{width:100%;height:100%;object-fit:cover;display:block}

/* ===== Acesso ao Calendário anual (Encontros) ===== */
.galeria__cal{display:flex;justify-content:center;margin-top:32px}
.galeria__cal-btn{gap:.6em}

/* ----- Modal do calendário ----- */
.cal-modal{position:fixed;inset:0;z-index:90;display:flex;align-items:center;justify-content:center;padding:clamp(12px,3vw,28px)}
.cal-modal[hidden]{display:none}
.cal-modal__fundo{position:fixed;inset:0;background:rgba(15,11,6,.78);backdrop-filter:blur(4px);animation:calFade .25s ease}
.cal-modal__caixa{position:relative;display:flex;flex-direction:column;width:100%;max-width:1000px;max-height:90vh;
  background:linear-gradient(180deg,var(--vinho-esc),#4f1418);color:var(--marfim);
  border:1px solid rgba(199,154,63,.45);border-radius:20px;overflow:hidden;
  box-shadow:0 60px 140px -50px rgba(0,0,0,.85);animation:calPop .3s cubic-bezier(.2,.7,.2,1)}

/* Cabeçalho fixo (não rola) */
.cal-modal__cab{position:relative;flex:none;text-align:center;padding:26px 60px 20px;
  background:radial-gradient(120% 130% at 50% -40%,rgba(199,154,63,.2),transparent 60%);
  border-bottom:1px solid rgba(199,154,63,.28)}
.cal-modal__sup{font-size:.7rem;letter-spacing:.24em;text-transform:uppercase;color:var(--latao);font-weight:700}
.cal-modal__tit{font-family:"Anton",sans-serif;font-size:clamp(24px,4.4vw,40px);letter-spacing:.02em;color:var(--marfim);line-height:1;margin-top:6px}
.cal-modal__tit strong{color:var(--latao-claro);font-weight:inherit}
.cal-modal__sub{margin:8px auto 0;font-size:.9rem;color:var(--marfim-suave);max-width:46ch;line-height:1.45}
.cal-modal__x{position:absolute;top:16px;right:16px;width:42px;height:42px;border-radius:11px;
  border:1px solid rgba(199,154,63,.4);background:rgba(20,16,9,.3);color:var(--latao-claro);
  font-size:24px;line-height:1;cursor:pointer;transition:background .2s ease}
.cal-modal__x:hover{background:rgba(199,154,63,.2)}
.cal-modal__x:focus-visible{outline:2px solid var(--latao-claro);outline-offset:2px}

/* Corpo rolável */
.cal-modal__corpo{flex:1;overflow-y:auto;padding:clamp(16px,3vw,28px);
  scrollbar-width:thin;scrollbar-color:rgba(199,154,63,.5) transparent}
.cal-modal__corpo::-webkit-scrollbar{width:9px}
.cal-modal__corpo::-webkit-scrollbar-thumb{background:rgba(199,154,63,.4);border-radius:9px}
.cal-modal__corpo::-webkit-scrollbar-track{background:transparent}

.cal-meses{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px}
.cal-mes-card{background:var(--marfim-2);color:var(--tinta);border-radius:15px;overflow:hidden;
  border:1px solid rgba(0,0,0,.05);box-shadow:0 14px 30px -22px rgba(0,0,0,.6);
  transition:transform .22s ease,box-shadow .22s ease;animation:calRise .4s ease backwards}
.cal-mes-card:hover{transform:translateY(-4px);box-shadow:0 22px 44px -22px rgba(0,0,0,.65)}
.cal-mes-card__tit{background:linear-gradient(180deg,var(--latao-claro),var(--latao));color:#1a140c;
  font-family:"Anton",sans-serif;font-size:1.05rem;letter-spacing:.04em;text-transform:uppercase;
  text-align:center;padding:10px 12px}
.cal-mes-card__tit span{font-family:"Inter",sans-serif;font-weight:600;font-size:.74rem;opacity:.8}
.cal-mes-card__lista{list-style:none;margin:0;padding:14px;display:flex;flex-direction:column;gap:12px}
.cal-evento{display:flex;flex-direction:column;gap:4px}
.cal-evento__data{align-self:flex-start;font-size:.68rem;font-weight:700;letter-spacing:.04em;
  text-transform:uppercase;color:var(--vinho);background:rgba(140,35,40,.1);padding:2px 9px;border-radius:999px}
.cal-evento__tit{font-size:.88rem;line-height:1.4;color:var(--tinta)}

.cal-modal__vazio{text-align:center;color:var(--marfim-suave);padding:40px 0;font-size:1rem}
.cal-modal__arte{text-align:center;margin-top:24px;padding-top:20px;border-top:1px solid rgba(199,154,63,.22)}

@keyframes calFade{from{opacity:0}to{opacity:1}}
@keyframes calPop{from{opacity:0;transform:translateY(16px) scale(.985)}to{opacity:1;transform:none}}
@keyframes calRise{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.cal-mes-card:nth-child(1){animation-delay:.02s}
.cal-mes-card:nth-child(2){animation-delay:.06s}
.cal-mes-card:nth-child(3){animation-delay:.10s}
.cal-mes-card:nth-child(4){animation-delay:.14s}
.cal-mes-card:nth-child(5){animation-delay:.18s}
.cal-mes-card:nth-child(6){animation-delay:.22s}
.cal-mes-card:nth-child(n+7){animation-delay:.26s}

@media (max-width:560px){
  .cal-modal{padding:0;align-items:flex-end}
  .cal-modal__caixa{max-width:none;max-height:94vh;border-radius:20px 20px 0 0;border-bottom:0}
  .cal-modal__cab{padding:22px 52px 16px}
  .cal-meses{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){
  .cal-modal__fundo,.cal-modal__caixa,.cal-mes-card{animation:none}
  .cal-mes-card{transition:none}
}

/* ===== Slider de marcas (Espaço publicitário) ===== */
.adslider{position:relative;margin:0 auto;max-width:1000px}
.adslider__viewport{display:flex;align-items:center;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;
  -webkit-overflow-scrolling:touch;scrollbar-width:none;padding:4px;scroll-behavior:smooth}
.adslider__viewport::-webkit-scrollbar{display:none}
.adslider__item{flex:0 0 calc((100% - 32px) / 3);scroll-snap-align:start;
  display:block;overflow:hidden;background:transparent;border-radius:12px;
  transition:transform .2s ease,box-shadow .2s ease}
.adslider__item:hover{transform:translateY(-3px);box-shadow:0 18px 38px -22px rgba(0,0,0,.55)}
.adslider__item img{width:100%;height:auto;display:block}
.adslider__seta{position:absolute;top:50%;transform:translateY(-50%);width:42px;height:42px;border-radius:50%;
  border:1px solid rgba(199,154,63,.45);background:rgba(20,16,9,.6);color:var(--latao-claro);
  font-size:18px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;
  backdrop-filter:blur(4px);transition:background .2s ease;z-index:2}
.adslider__seta:hover{background:rgba(199,154,63,.3)}
.adslider__seta:focus-visible{outline:2px solid var(--latao-claro);outline-offset:2px}
.adslider__seta--ant{left:-8px}
.adslider__seta--prox{right:-8px}
@media (max-width:760px){
  .adslider__item{flex-basis:100%}
  .adslider__seta{display:none}
}
@media (prefers-reduced-motion:reduce){
  .adslider__viewport{scroll-behavior:auto}
  .adslider__item{transition:none}
}

/* Cidade do parceiro (card) */
.card-parc__cidade{font-size:.82rem;color:var(--tinta-suave);display:inline-flex;align-items:center;gap:4px;margin-top:-3px}
.card-parc__cidade::before{content:"";width:5px;height:5px;border-radius:50%;background:var(--latao)}

/* Espaço publicitário logo abaixo da Galeria, no mesmo fundo (sem faixa escura dupla). */
#galeria:not([hidden]) + .secao--pub{padding-top:0}

/* Diretoria: nome em tarja dourada + função (sem foto). */
.dir-board{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px;margin-top:6px}
.dir-membro{display:flex;flex-direction:column;align-items:center;text-align:center;gap:9px}
.dir-membro__nome{
  display:flex;align-items:center;justify-content:center;width:100%;min-height:56px;
  padding:13px 18px;border-radius:9px;
  background:linear-gradient(135deg,var(--latao-claro),var(--latao));
  border:1px solid rgba(156,116,33,.4);
  box-shadow:0 12px 26px -16px rgba(156,116,33,.95);
  color:#2a1e0c;font-family:"Fraunces",serif;font-weight:600;font-size:1.05rem;line-height:1.2;
}
.dir-membro__cargo{font-size:.78rem;text-transform:uppercase;letter-spacing:.12em;color:var(--latao-escuro);font-weight:600}
@media (max-width:560px){
  .dir-board{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px}
}

/* ===================== LOJA VIRTUAL ===================== */
.loja-pagina{padding-top:0}
.loja-aviso{margin:18px 0;padding:14px 16px;border-radius:12px;background:rgba(156,116,33,.12);border:1px solid rgba(156,116,33,.35);color:var(--tinta,#2a2014);font-size:.95rem}
.loja-aviso--erro{background:rgba(140,35,40,.1);border-color:rgba(140,35,40,.4);color:#8c2328}

.loja-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:20px;margin-top:26px}
.loja-card{display:flex;flex-direction:column;background:#fff;border:1px solid rgba(42,32,20,.1);border-radius:16px;overflow:hidden;box-shadow:0 18px 40px -30px rgba(42,32,20,.5);text-decoration:none;color:inherit;transition:transform .2s ease,box-shadow .2s ease}
a.loja-card:hover{transform:translateY(-3px);box-shadow:0 26px 50px -30px rgba(42,32,20,.6)}
.loja-card__foto{position:relative;aspect-ratio:1/1;background:#f4efe4;display:flex;align-items:center;justify-content:center;overflow:hidden}
.loja-card__foto img{width:100%;height:100%;object-fit:cover;display:block}
.loja-card__sem{font-family:"Anton",sans-serif;font-size:1.6rem;color:rgba(42,32,20,.25);letter-spacing:.08em}
.loja-card__esgot{position:absolute;top:10px;left:10px;background:rgba(140,35,40,.92);color:#fff;font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;padding:4px 9px;border-radius:999px}
.loja-card__corpo{display:flex;flex-direction:column;gap:8px;padding:16px;flex:1}
.loja-card__nome{font-family:"Fraunces",serif;font-size:1.06rem;margin:0}
.loja-card__desc{font-size:.86rem;color:var(--tinta-suave,#6f6350);margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.loja-card__preco{margin:auto 0 0;padding-top:4px;font-size:1.05rem}
.loja-card__preco s{color:var(--tinta-suave,#6f6350);font-size:.85rem;margin-right:6px}
.loja-card__preco strong{color:var(--latao-escuro,#9c7421)}
.loja-card__form{display:flex;gap:8px;margin-top:4px}
.loja-card__form input{width:70px;padding:9px;border-radius:9px;border:1px solid rgba(42,32,20,.18);font:inherit}
.loja-card__form .btn{flex:1}

/* Carrinho e finalização */
.cart{display:grid;grid-template-columns:1.1fr .9fr;gap:26px;margin-top:26px;align-items:start}
.cart__itens{background:rgba(255,255,255,.06);border:1px solid rgba(199,154,63,.25);border-radius:16px;padding:16px}
.cart__linha{display:grid;grid-template-columns:1fr auto auto;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid rgba(199,154,63,.16)}
.cart__linha:last-of-type{border-bottom:0}
.cart__nome{display:flex;flex-direction:column;gap:2px;min-width:0}
.cart__nome strong{color:var(--marfim,#f6efe1)}
.cart__nome span{font-size:.8rem;color:rgba(246,239,225,.6)}
.cart__qtd{display:flex;gap:6px;align-items:center}
.cart__qtd input{width:64px;padding:7px;border-radius:8px;border:1px solid rgba(199,154,63,.3);background:rgba(0,0,0,.2);color:var(--marfim,#f6efe1);font:inherit}
.cart__total{color:var(--latao-claro,#ead29a);white-space:nowrap}
.cart__form{background:rgba(255,255,255,.06);border:1px solid rgba(199,154,63,.25);border-radius:16px;padding:18px}
.cart__resumo{display:flex;flex-direction:column;gap:7px;padding-bottom:14px;border-bottom:1px solid rgba(199,154,63,.2);margin-bottom:14px}
.cart__resumo div{display:flex;justify-content:space-between;gap:10px;color:rgba(246,239,225,.75);font-size:.92rem}
.cart__resumo strong{color:var(--marfim,#f6efe1)}
.cart__resumo-total{font-size:1.05rem !important;padding-top:7px;border-top:1px dashed rgba(199,154,63,.3)}
.cart__resumo-total strong{color:var(--latao-claro,#ead29a)}
.cart__campos{display:flex;flex-direction:column;gap:12px}
.cart__campos label{display:flex;flex-direction:column;gap:5px;font-size:.86rem;color:rgba(246,239,225,.8)}
.cart__campos input[type="text"],.cart__campos input[type="email"],.cart__campos textarea{padding:10px 12px;border-radius:9px;border:1px solid rgba(199,154,63,.3);background:rgba(0,0,0,.2);color:var(--marfim,#f6efe1);font:inherit;resize:vertical}
.cart__opcoes{border:1px solid rgba(199,154,63,.25);border-radius:12px;padding:12px;margin:0}
.cart__opcoes legend{padding:0 6px;font-size:.76rem;text-transform:uppercase;letter-spacing:.12em;color:var(--latao-claro,#ead29a)}
.cart__radio{flex-direction:row !important;align-items:center;gap:9px !important;padding:6px 0;cursor:pointer}
.cart__radio input{width:auto;accent-color:var(--latao,#c79a3f)}
.cart__aviso{color:#f0b8b8;font-size:.86rem;margin:4px 0 0}
.cart__prazo{font-size:.82rem;color:rgba(246,239,225,.6);margin:14px 0}
.cart__enviar{width:100%}
.cart__enviar[disabled]{opacity:.5;cursor:not-allowed}

/* Tela do pedido */
.ped-box{background:#fff;border:1px solid rgba(42,32,20,.12);border-radius:16px;padding:20px;margin:22px 0;box-shadow:0 18px 40px -32px rgba(42,32,20,.5)}
.ped-box--acao{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.ped-box__tit{font-family:"Fraunces",serif;font-size:1.14rem;margin:0 0 10px}
.ped-box__txt{color:var(--tinta-suave,#6f6350);font-size:.92rem;margin:0 0 12px}
.ped-box__itens{list-style:none;margin:0;padding:0}
.ped-box__itens li{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid rgba(42,32,20,.08);font-size:.94rem}
.ped-box__total{font-weight:700;border-bottom:0 !important;padding-top:12px !important;font-size:1.06rem !important;color:var(--latao-escuro,#9c7421)}
.pix-area{display:flex;gap:22px;flex-wrap:wrap;align-items:flex-start}
.pix-qr{width:208px;height:208px;display:flex;align-items:center;justify-content:center;background:#fff;border:1px solid rgba(42,32,20,.12);border-radius:12px;padding:6px;font-size:.82rem;color:var(--tinta-suave,#6f6350);text-align:center}
.pix-qr img,.pix-qr canvas{display:block;max-width:100%;height:auto}
.pix-lado{flex:1;min-width:240px;display:flex;flex-direction:column;gap:9px}
.pix-rot{font-size:.76rem;text-transform:uppercase;letter-spacing:.1em;color:var(--tinta-suave,#6f6350)}
.pix-txt{width:100%;padding:10px;border-radius:9px;border:1px solid rgba(42,32,20,.18);font-family:monospace;font-size:.78rem;word-break:break-all;resize:vertical}
.pix-valor{margin:0;font-size:.95rem}
.pix-valor strong{color:var(--latao-escuro,#9c7421)}

@media (max-width:860px){
  .cart{grid-template-columns:1fr}
}
@media (max-width:560px){
  .cart__linha{grid-template-columns:1fr auto}
  .cart__total{grid-column:1 / -1;text-align:right}
  .pix-qr{margin:0 auto}
}

/* ===== Cabeçalho próprio da loja (não depende do JS do menu) ===== */
.loja-topo{position:sticky;top:0;z-index:50;background:rgba(20,16,9,.96);backdrop-filter:blur(10px);box-shadow:0 1px 0 rgba(199,154,63,.22)}
.loja-topo__row{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:12px 0;flex-wrap:wrap}
.loja-topo__brand{display:inline-flex;align-items:center;gap:12px;text-decoration:none}
.loja-topo__brand img{height:44px;width:auto;display:block}
.loja-topo__brand span{font-family:"Anton",sans-serif;font-size:1.4rem;letter-spacing:.06em;color:var(--marfim)}
.loja-topo__nav{display:flex;align-items:center;gap:20px;flex-wrap:wrap}
.loja-topo__link{color:var(--marfim);text-decoration:none;font-weight:500;font-size:.95rem}
.loja-topo__link:hover{color:var(--latao-claro)}
.loja-topo__cart{position:relative;display:inline-flex;align-items:center;gap:8px;padding:.55em 1.1em;border-radius:999px;text-decoration:none;
  background:linear-gradient(180deg,var(--latao-claro),var(--latao));color:#1a140c;font-weight:600;font-size:.92rem}
.loja-topo__cart:hover{filter:brightness(1.06)}
.loja-topo__cart svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.loja-topo__bolha{position:absolute;top:-5px;right:-5px;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:var(--vinho);color:#fff;
  font-size:.72rem;display:flex;align-items:center;justify-content:center;border:2px solid rgba(20,16,9,.96)}
@media (max-width:520px){
  .loja-topo__row{gap:10px}
  .loja-topo__brand span{font-size:1.15rem}
  .loja-topo__nav{gap:12px;width:100%;justify-content:space-between}
}

/* ===== Estados vazios da loja ===== */
.loja-vazio{margin-top:26px;padding:44px 24px;text-align:center;border-radius:16px;
  border:1px dashed rgba(156,116,33,.4);background:rgba(156,116,33,.05)}
.loja-vazio svg{width:44px;height:44px;stroke:var(--latao);fill:none;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round;opacity:.75}
.loja-vazio p{margin:14px 0 4px;font-family:"Fraunces",serif;font-size:1.14rem;color:var(--tinta)}
.loja-vazio span{font-size:.92rem;color:var(--tinta-suave)}
.loja-vazio--escuro{border-color:rgba(199,154,63,.35);background:rgba(255,255,255,.04)}
.loja-vazio--escuro p{color:var(--marfim)}
.loja-vazio--escuro span{color:rgba(246,239,225,.6)}

/* Botão compacto (usado no carrinho). */
.btn--mini{padding:.5em 1em;font-size:.86rem}

/* ===== Movimento nos produtos (hover / foco / entrada) ===== */
.loja-card{position:relative;will-change:transform}
.loja-card__foto img{transition:transform .55s cubic-bezier(.22,.61,.36,1)}

/* Brilho que atravessa a foto ao passar o mouse. */
.loja-card__foto::after{content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(105deg,transparent 38%,rgba(255,255,255,.42) 50%,transparent 62%);
  transform:translateX(-120%);transition:transform .75s ease}

.loja-card:hover,.loja-card:focus-within{transform:translateY(-6px);box-shadow:0 30px 55px -28px rgba(42,32,20,.6);border-color:rgba(156,116,33,.45)}
.loja-card:hover .loja-card__foto img,.loja-card:focus-within .loja-card__foto img{transform:scale(1.07)}
.loja-card:hover .loja-card__foto::after{transform:translateX(120%)}
.loja-card:hover .loja-card__nome{color:var(--latao-escuro)}
.loja-card__nome{transition:color .25s ease}

/* O botão "Adicionar" ganha vida junto com o card. */
.loja-card__form .btn{transition:transform .25s ease,filter .25s ease,box-shadow .25s ease}
.loja-card:hover .loja-card__form .btn{transform:translateY(-1px);box-shadow:0 12px 22px -12px rgba(156,116,33,.9)}
.loja-card__form .btn:active{transform:translateY(1px) scale(.98)}

/* Entrada suave e escalonada dos produtos. */
@keyframes lojaSobe{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
.loja-grid .loja-card{animation:lojaSobe .5s cubic-bezier(.22,.61,.36,1) both}
.loja-grid .loja-card:nth-child(1){animation-delay:.04s}
.loja-grid .loja-card:nth-child(2){animation-delay:.10s}
.loja-grid .loja-card:nth-child(3){animation-delay:.16s}
.loja-grid .loja-card:nth-child(4){animation-delay:.22s}
.loja-grid .loja-card:nth-child(n+5){animation-delay:.28s}

@media (prefers-reduced-motion:reduce){
  .loja-card,.loja-card__foto img,.loja-card__foto::after,.loja-card__form .btn{transition:none !important}
  .loja-grid .loja-card{animation:none !important}
  .loja-card:hover{transform:none}
}
/* No toque não há hover: mantém o cartão estável. */
@media (hover:none){
  .loja-card:hover{transform:none;box-shadow:0 18px 40px -30px rgba(42,32,20,.5)}
  .loja-card:hover .loja-card__foto img{transform:none}
}

/* ===== Botões do carrinho (fundo escuro) ===== */
.cart__qtd{gap:8px}
.cart__qtd .btn{padding:.5em 1em;border-color:rgba(199,154,63,.55);color:var(--latao-claro);background:rgba(199,154,63,.1)}
.cart__qtd .btn:hover{background:rgba(199,154,63,.24);border-color:var(--latao);color:#fff}
.cart__qtd .btn:active{transform:translateY(1px)}

.cart__limpar{display:inline-flex;align-items:center;gap:7px;margin-top:12px;padding:.5em 1em;border-radius:999px;
  background:transparent;border:1px solid rgba(246,239,225,.22);color:rgba(246,239,225,.7);
  font-size:.86rem;font-weight:600;cursor:pointer;transition:border-color .2s ease,color .2s ease,background .2s ease}
.cart__limpar:hover{border-color:var(--vinho);color:#f2c9c9;background:rgba(140,35,40,.18)}
.cart__limpar svg{width:15px;height:15px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}

/* Botão de finalizar com mais presença. */
.cart__enviar{margin-top:4px;padding:.95em 1.5em;font-size:1rem;box-shadow:0 16px 30px -16px rgba(199,154,63,.8)}
.cart__enviar:hover:not([disabled]){transform:translateY(-2px)}

/* Realce rápido no valor recalculado do carrinho. */
@keyframes valorMuda{0%{color:var(--latao-claro);transform:scale(1)}30%{transform:scale(1.09)}100%{transform:scale(1)}}
.valor-muda{animation:valorMuda .45s ease;display:inline-block}
@media (prefers-reduced-motion:reduce){.valor-muda{animation:none}}

/* ===== Faixa de banners da loja (foto ou vídeo) ===== */
.lbanner{position:relative;background:#141009;overflow:hidden}
.lbanner__trilho{display:flex;width:100%;aspect-ratio:3/1;min-height:220px;will-change:transform}
.lbanner__item{position:relative;flex:0 0 100%;width:100%;height:100%;display:block;text-decoration:none;overflow:hidden}
.lbanner__media{width:100%;height:100%;object-fit:cover;display:block}
.lbanner__texto{position:absolute;inset:auto 0 0 0;padding:clamp(18px,4vw,42px);
  background:linear-gradient(180deg,transparent,rgba(20,16,9,.82));color:var(--marfim)}
.lbanner__texto h2{margin:0;font-family:"Anton",sans-serif;font-size:clamp(1.4rem,3.4vw,2.4rem);letter-spacing:.02em;text-transform:uppercase}
.lbanner__texto p{margin:6px 0 0;color:rgba(246,239,225,.85);font-size:clamp(.9rem,1.6vw,1.05rem)}
a.lbanner__item:hover .lbanner__media{transform:scale(1.03)}
a.lbanner__item .lbanner__media{transition:transform .8s cubic-bezier(.22,.61,.36,1)}
.lbanner__pontos{position:absolute;left:0;right:0;bottom:12px;display:flex;justify-content:center;gap:8px;z-index:2}
.lbanner__ponto{width:9px;height:9px;padding:0;border-radius:50%;border:1px solid rgba(246,239,225,.7);background:transparent;cursor:pointer;
  transition:background .25s ease,transform .25s ease}
.lbanner__ponto.ativo{background:var(--latao);border-color:var(--latao);transform:scale(1.25)}
@media (max-width:640px){
  .lbanner__trilho{aspect-ratio:16/10;min-height:200px}
}
@media (prefers-reduced-motion:reduce){
  .lbanner__item{transition:none}
  a.lbanner__item .lbanner__media{transition:none}
}

/* Setas de navegação da faixa de banners. */
.lbanner__seta{position:absolute;top:50%;transform:translateY(-50%);z-index:3;
  width:46px;height:46px;display:flex;align-items:center;justify-content:center;
  border-radius:50%;border:1px solid rgba(246,239,225,.35);background:rgba(20,16,9,.55);
  color:var(--marfim);cursor:pointer;backdrop-filter:blur(4px);
  transition:background .2s ease,border-color .2s ease,transform .2s ease}
.lbanner__seta:hover{background:rgba(20,16,9,.85);border-color:var(--latao);color:var(--latao-claro)}
.lbanner__seta:active{transform:translateY(-50%) scale(.94)}
.lbanner__seta svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.lbanner__seta--ant{left:16px}
.lbanner__seta--prox{right:16px}
@media (max-width:640px){
  .lbanner__seta{width:38px;height:38px}
  .lbanner__seta--ant{left:8px}
  .lbanner__seta--prox{right:8px}
}

/* Cabeçalho da loja: marca + carrinho na 1ª linha e links como abas (celular). */
.loja-topo__nav{order:3;margin-left:auto}
.loja-topo__cart{order:4}
.loja-topo__link{padding:.45em .9em;border-radius:999px;border:1px solid transparent;white-space:nowrap}
.loja-topo__link--ativo{border-color:rgba(199,154,63,.5);background:rgba(199,154,63,.14);color:var(--latao-claro)}
@media (max-width:640px){
  .loja-topo__row{flex-wrap:wrap;gap:10px 12px}
  .loja-topo__brand{flex:1 1 auto}
  .loja-topo__cart{order:2}
  .loja-topo__cart span{display:none}
  .loja-topo__nav{order:3;width:100%;margin:0;padding:4px;border-radius:999px;
    background:rgba(255,255,255,.06);border:1px solid rgba(199,154,63,.22)}
  .loja-topo__link{flex:1;text-align:center}
  .loja-topo__link--ativo{background:linear-gradient(180deg,var(--latao-claro),var(--latao));color:#1a140c;border-color:transparent;font-weight:600}
}

/* Seletor de quantidade (- n +), botão Adicionar e aviso flutuante. */
.loja-card__form{display:flex;align-items:center;gap:10px;margin-top:4px;flex-wrap:wrap}
.qtd{display:inline-flex;align-items:center;border:1px solid rgba(42,32,20,.18);border-radius:999px;overflow:hidden;background:#fff}
.qtd__btn{width:40px;height:44px;border:0;background:transparent;color:var(--tinta);font-size:1.2rem;cursor:pointer;display:flex;align-items:center;justify-content:center}
.qtd__btn:hover{background:rgba(199,154,63,.14)}
.qtd__num{width:46px;height:44px;border:0;text-align:center;font:inherit;font-weight:600;color:var(--tinta);background:transparent;-moz-appearance:textfield}
.qtd__num::-webkit-outer-spin-button,.qtd__num::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.loja-card__add{flex:1;min-height:46px;justify-content:center}
.loja-card__add.ok{background:linear-gradient(180deg,#5fbf7a,#3f8f4f);color:#fff}
.toast{position:fixed;left:50%;bottom:22px;transform:translate(-50%,20px);z-index:80;display:flex;align-items:center;gap:12px;
  padding:12px 16px;border-radius:999px;background:rgba(20,16,9,.95);color:var(--marfim);border:1px solid rgba(199,154,63,.4);
  box-shadow:0 20px 40px -18px rgba(0,0,0,.7);font-size:.92rem;opacity:0;visibility:hidden;
  transition:opacity .28s ease,transform .28s ease,visibility .28s ease}
.toast.ativo{opacity:1;visibility:visible;transform:translate(-50%,0)}
.toast a{color:var(--latao-claro);font-weight:700;text-decoration:none;white-space:nowrap}
@media (max-width:640px){
  .qtd__btn,.qtd__num{height:48px}
  .qtd__btn{width:44px}
  .loja-card__add{min-height:48px;font-size:1rem}
}

/* ===== Tela do pedido ===== */
.btn--claro{background:#fff;border:1px solid rgba(42,32,20,.22);color:var(--tinta);font-weight:600}
.btn--claro:hover{border-color:var(--latao);background:rgba(199,154,63,.08);color:var(--tinta)}
.ped-topo{display:flex;align-items:center;gap:16px;margin-bottom:10px}
.ped-selo{flex:0 0 auto;width:54px;height:54px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  background:linear-gradient(180deg,#5fbf7a,#3f8f4f);box-shadow:0 12px 24px -12px rgba(63,143,79,.9)}
.ped-selo svg{width:28px;height:28px;stroke:#fff;fill:none;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}
.ped-sit{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:8px 0 0}
.ped-badge{display:inline-block;padding:4px 11px;border-radius:999px;font-size:.78rem;font-weight:700;text-transform:uppercase;
  letter-spacing:.06em;background:rgba(176,125,29,.16);color:#9c7421}
.ped-badge--pago,.ped-badge--entregue{background:rgba(63,143,79,.16);color:#2f6b3c}
.ped-badge--cancelado{background:rgba(140,35,40,.14);color:#8c2328}
.ped-cod{display:inline-flex;align-items:center;gap:8px;font-size:.88rem;color:var(--tinta-suave)}
.ped-cod b{font-family:monospace;font-size:.95rem;color:var(--tinta);letter-spacing:.04em}
.ped-copiar{padding:3px 9px;border-radius:999px;border:1px solid rgba(42,32,20,.2);background:#fff;color:var(--tinta-suave);
  font-size:.74rem;font-weight:600;cursor:pointer}
.ped-copiar:hover{border-color:var(--latao);color:var(--tinta)}
.ped-acoes{display:flex;gap:10px;flex-wrap:wrap;margin-top:6px}
@media (max-width:560px){
  .ped-selo{width:44px;height:44px}
  .ped-acoes .btn{flex:1;justify-content:center}
  .ped-box--acao{flex-direction:column;align-items:stretch}
}

/* Faixa de banners da loja na página inicial. */
.hbanner{position:relative;overflow:hidden;border-radius:16px;background:#141009;box-shadow:0 24px 50px -34px rgba(42,32,20,.7)}
.hbanner__trilho{display:flex;width:100%;aspect-ratio:3/1;min-height:200px;will-change:transform}
.hbanner__item{position:relative;flex:0 0 100%;width:100%;height:100%;display:block;text-decoration:none;overflow:hidden}
.hbanner__item img,.hbanner__item video{transition:transform .8s cubic-bezier(.22,.61,.36,1)}
.hbanner__item:hover img,.hbanner__item:hover video{transform:scale(1.03)}
.hbanner__seta{transition:background .2s ease,border-color .2s ease}
.hbanner__seta:hover{background:rgba(20,16,9,.85) !important;border-color:var(--latao) !important;color:var(--latao-claro) !important}
.hbanner .lbanner__texto h3{margin:0;font-family:"Anton",sans-serif;font-size:clamp(1.2rem,2.8vw,2rem);letter-spacing:.02em;text-transform:uppercase;color:var(--marfim)}
@media (max-width:640px){
  .hbanner__trilho{aspect-ratio:16/10;min-height:180px}
  .hbanner__seta{width:36px !important;height:36px !important}
}
@media (prefers-reduced-motion:reduce){
  .hbanner__item img,.hbanner__item video{transition:none}
}