/* ══════════════════════════════════════════════════════════════
   miguel paupério jóias — landing page
   Paleta e tipografia derivadas da identidade real da loja:
   letras metálicas sobre fachada grafite, ouro trabalhado, prata.
   ══════════════════════════════════════════════════════════════ */

:root{
  /* — cor — */
  --ink:        #16181c;
  --ink-2:      #22262c;
  --ink-3:      #33383f;
  --bone:       #f6f3ee;
  --bone-2:     #efeae2;
  --bone-3:     #e4ddd2;
  --gold:       #a8834e;
  --gold-lit:   #c9a978;
  --gold-ink:   #866339;   /* AA sobre --bone */
  --silver:     #9aa0a6;
  --text:       #191b1f;
  --muted:      #565c65;   /* AA sobre --bone */
  --muted-dark: #a9afb8;   /* AA sobre --ink */
  --line:       rgba(25,27,31,.14);
  --line-dark:  rgba(255,255,255,.14);

  /* — tipografia — */
  --serif: "Cormorant Garamond", "Iowan Old Style", Georgia, "Times New Roman", serif;
  --sans:  "Jost", "Futura", "Century Gothic", "Segoe UI", system-ui, sans-serif;

  --fs-hero:  clamp(2.9rem, 1.4rem + 6.2vw, 6.4rem);
  --fs-h2:    clamp(2.05rem, 1.3rem + 3.1vw, 3.7rem);
  --fs-h3:    clamp(1.22rem, 1.06rem + .62vw, 1.6rem);
  --fs-lead:  clamp(1.02rem, .96rem + .34vw, 1.24rem);
  --fs-body:  clamp(1rem, .96rem + .18vw, 1.075rem);
  --fs-small: .865rem;
  --fs-micro: .72rem;

  /* — espaço (base 4) — */
  --s1:.25rem; --s2:.5rem;  --s3:.75rem; --s4:1rem;   --s5:1.5rem;
  --s6:2rem;   --s7:3rem;   --s8:4rem;   --s9:6rem;   --s10:8rem;
  --sec: clamp(4.5rem, 2.5rem + 8vw, 9.5rem);
  --gut: clamp(1.25rem, .55rem + 2.6vw, 3rem);
  --wrap: 1240px;

  --r-sm: 2px;
  --r-md: 3px;
  --z-nav: 50;
  --ease: cubic-bezier(.22,.61,.36,1);
}

/* ── reset ─────────────────────────────────────────────── */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body,h1,h2,h3,h4,p,figure,blockquote,dl,dd,ul,table{margin:0}
ul{padding:0;list-style:none}
img,picture,svg,iframe{display:block;max-width:100%}
img{height:auto}
button{font:inherit;color:inherit;background:none;border:0}
a{color:inherit}

html{scroll-behavior:smooth;scroll-padding-top:88px}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

body{
  font-family:var(--sans);
  font-size:var(--fs-body);
  font-weight:300;
  line-height:1.72;
  color:var(--text);
  background:var(--bone);
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}

.wrap{width:100%;max-width:var(--wrap);margin-inline:auto;padding-inline:var(--gut)}

.sr-only{
  position:absolute;width:1px;height:1px;padding:0;margin:-1px;
  overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0;
}

.skip-link{
  position:absolute;left:var(--s4);top:-100px;z-index:100;
  padding:var(--s3) var(--s5);background:var(--ink);color:var(--bone);
  font-size:var(--fs-small);letter-spacing:.06em;transition:top .2s var(--ease);
}
.skip-link:focus{top:var(--s4)}

:focus-visible{outline:2px solid var(--gold);outline-offset:3px}

/* ── tipografia base ───────────────────────────────────── */
h1,h2,h3{
  font-family:var(--serif);
  font-weight:400;
  line-height:1.06;
  letter-spacing:-.005em;
  text-wrap:balance;
}
h2{font-size:var(--fs-h2)}
h3{font-size:var(--fs-h3);line-height:1.2}
h1 em,h2 em{font-style:italic;color:var(--gold-ink)}

p{text-wrap:pretty}

.eyebrow{
  font-family:var(--sans);
  font-size:var(--fs-micro);
  font-weight:400;
  letter-spacing:.34em;
  text-transform:uppercase;
  color:var(--gold-ink);
  margin-bottom:var(--s4);
}
.eyebrow--light{color:var(--gold-lit)}

.sec-head{margin-bottom:clamp(2.5rem,1.5rem + 3vw,4.5rem);max-width:42ch}
.sec-head--center{margin-inline:auto;text-align:center}

/* ── wordmark ──────────────────────────────────────────── */
.wordmark{
  display:inline-flex;align-items:baseline;gap:.42em;
  font-family:var(--sans);text-decoration:none;line-height:1;
}
.wordmark__name{
  font-size:1.05rem;font-weight:300;letter-spacing:.02em;
  text-transform:lowercase;white-space:nowrap;
}
.wordmark__name b{font-weight:500}
.wordmark__sub{
  font-size:.62rem;font-weight:300;letter-spacing:.24em;
  text-transform:lowercase;color:var(--gold-ink);
}
.wordmark--foot .wordmark__name{font-size:1.35rem;color:var(--bone)}
.wordmark--foot .wordmark__sub{color:var(--gold-lit)}

/* ── botões ────────────────────────────────────────────── */
.btn{
  --btn-bg:transparent; --btn-fg:var(--text); --btn-bd:var(--line);
  display:inline-flex;align-items:center;justify-content:center;gap:.55em;
  min-height:48px;padding:.85em 1.9em;
  font-family:var(--sans);font-size:var(--fs-small);font-weight:400;
  letter-spacing:.16em;text-transform:uppercase;text-decoration:none;
  color:var(--btn-fg);background:var(--btn-bg);
  border:1px solid var(--btn-bd);border-radius:var(--r-sm);
  cursor:pointer;
  transition:background-color .28s var(--ease),color .28s var(--ease),border-color .28s var(--ease);
}
.btn svg{width:16px;height:16px;fill:currentColor;flex:none}

.btn--solid{--btn-bg:var(--ink);--btn-fg:var(--bone);--btn-bd:var(--ink)}
.btn--solid:hover{--btn-bg:var(--gold-ink);--btn-bd:var(--gold-ink)}

.btn--line:hover{--btn-bg:var(--ink);--btn-fg:var(--bone);--btn-bd:var(--ink)}

.btn--gold{--btn-bg:var(--gold);--btn-fg:#fff;--btn-bd:var(--gold)}
.btn--gold:hover{--btn-bg:var(--gold-lit);--btn-fg:var(--ink);--btn-bd:var(--gold-lit)}

.btn--ghost{--btn-bd:transparent;padding:.6em 1em;letter-spacing:.1em}
.btn--ghost:hover{--btn-fg:var(--gold-ink)}

/* ══════════════════════════════════════════════════════════
   NAV
   ══════════════════════════════════════════════════════════ */
.nav{
  position:fixed;inset:0 0 auto;z-index:var(--z-nav);
  background:rgba(246,243,238,.82);
  backdrop-filter:saturate(1.35) blur(12px);
  -webkit-backdrop-filter:saturate(1.35) blur(12px);
  border-bottom:1px solid transparent;
  transition:background-color .4s var(--ease),border-color .4s var(--ease);
}
.nav__inner{
  width:100%;
  padding:var(--s4) var(--gut);
  display:flex;align-items:center;gap:var(--s5);
}
.nav .wordmark{margin-right:auto}

.nav__links{display:none;gap:clamp(1.1rem,.4rem + 1.6vw,2.2rem)}
.nav__links a{
  position:relative;padding:.35em 0;text-decoration:none;
  font-size:var(--fs-small);font-weight:300;letter-spacing:.1em;
  color:var(--text);transition:color .25s var(--ease);
}
.nav__links a::after{
  content:"";position:absolute;left:0;bottom:0;width:100%;height:1px;
  background:var(--gold);transform:scaleX(0);transform-origin:right;
  transition:transform .34s var(--ease);
}
.nav__links a:hover{color:var(--gold-ink)}
.nav__links a:hover::after{transform:scaleX(1);transform-origin:left}

.nav__cta{display:none}

.nav__toggle{
  width:48px;height:48px;margin-right:-12px;
  display:grid;place-content:center;gap:5px;cursor:pointer;
}
.nav__toggle span{
  display:block;width:22px;height:1px;background:var(--text);
  transition:transform .3s var(--ease),opacity .2s var(--ease);
}
.nav__toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(6px) rotate(45deg)}
.nav__toggle[aria-expanded="true"] span:nth-child(2){opacity:0}
.nav__toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}

.nav--solid{
  background:rgba(246,243,238,.965);
  border-bottom-color:var(--line);
}

.nav__mobile{
  display:flex;flex-direction:column;
  padding:var(--s2) var(--gut) var(--s6);
  background:rgba(246,243,238,.985);
  backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
  border-top:1px solid var(--line);
  max-height:calc(100dvh - 72px);overflow-y:auto;
}
.nav__mobile a{
  padding:var(--s4) 0;text-decoration:none;
  font-family:var(--serif);font-size:1.45rem;
  border-bottom:1px solid var(--line);
}
.nav__mobile a:last-child{border-bottom:0}
.nav__mobile-cta{
  margin-top:var(--s5);padding:var(--s4) var(--s5)!important;
  background:var(--ink);color:var(--bone);text-align:center;
  font-family:var(--sans)!important;font-size:var(--fs-small)!important;
  letter-spacing:.14em;text-transform:uppercase;border-bottom:0!important;
}

@media (min-width:900px){
  .nav__links{display:flex}
  .nav__cta{display:inline-flex}
  .nav__toggle{display:none}
  .nav__mobile{display:none!important}
}

/* ══════════════════════════════════════════════════════════
   HERO
   ══════════════════════════════════════════════════════════ */
.hero{
  position:relative;
  display:grid;
  grid-template-columns:1fr;
  padding-top:clamp(6.5rem,5rem + 6vw,9rem);
}
.hero__text{
  padding:0 var(--gut) clamp(3rem,2rem + 4vw,5rem);
  max-width:var(--wrap);width:100%;margin-inline:auto;
  align-self:center;
}
.hero__title{
  font-size:var(--fs-hero);
  line-height:.98;
  letter-spacing:-.018em;
  margin-bottom:var(--s5);
}
.hero__title .line{display:block;overflow:hidden}
.hero__lead{
  max-width:46ch;font-size:var(--fs-lead);color:var(--muted);
  margin-bottom:var(--s6);
}
.hero__actions{display:flex;flex-wrap:wrap;gap:var(--s3);margin-bottom:var(--s6)}

.hero__meta{
  display:flex;align-items:center;gap:.5em;flex-wrap:wrap;
  font-size:var(--fs-small);color:var(--muted);letter-spacing:.02em;
}
.hero__meta strong{font-weight:500;color:var(--text)}
.stars{display:inline-flex;gap:2px}
.stars svg{width:15px;height:15px;fill:var(--gold)}

.hero__media{position:relative;overflow:hidden;background:var(--bone-2)}
.hero__media img{width:100%;aspect-ratio:4/3;object-fit:cover}
.hero__caption{
  position:absolute;left:var(--gut);bottom:var(--s4);
  padding:.5em 1em;background:rgba(22,24,28,.72);color:var(--bone);
  font-size:var(--fs-micro);letter-spacing:.2em;text-transform:uppercase;
  backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);
}
.hero__scroll{display:none}

@media (min-width:900px){
  .hero{
    grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);
    align-items:stretch;
    min-height:min(94vh,900px);
    padding-top:0;
  }
  .hero__text{
    grid-column:1;
    max-width:none;margin:0;
    padding:clamp(7rem,5rem + 7vw,10rem) clamp(2.5rem,1rem + 4vw,5rem) var(--s9) var(--gut);
    display:flex;flex-direction:column;justify-content:center;
  }
  .hero__text > *{max-width:34rem}
  .hero__media{grid-column:2;height:100%}
  .hero__media img{height:100%;aspect-ratio:auto;min-height:520px}
  .hero__scroll{
    display:block;position:absolute;left:var(--gut);bottom:var(--s6);
    width:1px;height:64px;background:var(--line);overflow:hidden;
  }
  .hero__scroll span{
    display:block;width:100%;height:32px;background:var(--gold);
    animation:scrollHint 2.4s var(--ease) infinite;
  }
}
@keyframes scrollHint{
  0%{transform:translateY(-100%)}
  100%{transform:translateY(200%)}
}
@media (prefers-reduced-motion:reduce){.hero__scroll span{animation:none}}

/* ══════════════════════════════════════════════════════════
   MARCAS
   ══════════════════════════════════════════════════════════ */
.brands{
  background:var(--ink);color:var(--bone);
  padding-block:clamp(2.75rem,2rem + 2.4vw,4rem);
}
.brands__label{
  text-align:center;font-size:var(--fs-micro);letter-spacing:.32em;
  text-transform:uppercase;color:var(--muted-dark);margin-bottom:var(--s5);
}
.brands__list{
  display:flex;flex-wrap:wrap;justify-content:center;
  gap:clamp(1.25rem,.5rem + 3vw,3.75rem);
}
.brands__list li{
  font-family:var(--sans);font-size:clamp(.78rem,.7rem + .38vw,1rem);
  font-weight:300;letter-spacing:.28em;text-transform:uppercase;
  color:rgba(246,243,238,.82);
  transition:color .3s var(--ease);
}
.brands__list li:hover{color:var(--gold-lit)}

/* ══════════════════════════════════════════════════════════
   A CASA
   ══════════════════════════════════════════════════════════ */
.house{padding-block:var(--sec)}
.house__grid{display:grid;gap:clamp(2.5rem,1.5rem + 4vw,5rem)}

.house__media{display:grid;gap:var(--s4)}
.house__fig{overflow:hidden;background:var(--bone-2)}
.house__fig img{width:100%;object-fit:cover}
.house__fig--a img{aspect-ratio:1/1}
.house__fig--b img{aspect-ratio:16/9}

.house__copy h2{margin-bottom:var(--s5)}
.house__copy p{color:var(--muted);max-width:52ch}
.house__copy p + p{margin-top:var(--s4)}

.facts{
  margin-top:var(--s6);padding-top:var(--s5);
  border-top:1px solid var(--line);
  display:grid;gap:var(--s4);
}
.facts div{display:grid;gap:var(--s1)}
.facts dt{
  font-size:var(--fs-micro);letter-spacing:.24em;text-transform:uppercase;
  color:var(--gold-ink);
}
.facts dd{font-family:var(--serif);font-size:1.22rem;line-height:1.3}

@media (min-width:820px){
  .house__grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center}
  .house__media{grid-template-columns:1fr;gap:var(--s5)}
  .house__fig--a{margin-right:clamp(2rem,6vw,5rem)}
  .house__fig--b{margin-left:clamp(2rem,6vw,5rem)}
  .facts{grid-template-columns:repeat(3,1fr);gap:var(--s5)}
}

/* ══════════════════════════════════════════════════════════
   COLEÇÕES
   ══════════════════════════════════════════════════════════ */
.collections{padding-block:var(--sec);background:var(--bone-2)}
.coll-grid{display:grid;gap:clamp(2rem,1rem + 3vw,3rem)}

.coll__img{overflow:hidden;background:var(--bone-3);margin-bottom:var(--s5)}
.coll__img img{
  width:100%;aspect-ratio:4/5;object-fit:cover;
  transition:transform .9s var(--ease),filter .6s var(--ease);
}
.coll:hover .coll__img img{transform:scale(1.045)}

.coll h3{margin-bottom:var(--s3)}
.coll p{color:var(--muted);font-size:var(--fs-small);line-height:1.75;max-width:38ch}

@media (min-width:760px){
  .coll-grid{grid-template-columns:repeat(3,1fr);align-items:start}
  /* desnível editorial — via margem, para não colidir com as animações */
  .coll-grid > :nth-child(2){margin-top:clamp(1.5rem,4vw,3.5rem)}
}
@media (prefers-reduced-motion:reduce){
  .coll:hover .coll__img img{transform:none}
}

/* ══════════════════════════════════════════════════════════
   PEÇA ÚNICA
   ══════════════════════════════════════════════════════════ */
.unique{
  background:var(--ink);color:var(--bone);
  padding-block:var(--sec);
}
.unique__grid{display:grid;gap:clamp(2.5rem,1.5rem + 4vw,5rem);align-items:center}
.unique__copy h2{margin-bottom:var(--s5)}
.unique__copy h2 em{color:var(--gold-lit)}
.unique__copy p{color:var(--muted-dark);max-width:50ch;margin-bottom:var(--s6)}
.unique__media{overflow:hidden;background:var(--ink-2)}
.unique__media img{width:100%;aspect-ratio:1/1;object-fit:cover}

@media (min-width:820px){
  .unique__grid{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr)}
}

/* ══════════════════════════════════════════════════════════
   GALERIA
   ══════════════════════════════════════════════════════════ */
.gallery{padding-block:var(--sec)}
.gal-grid{display:grid;gap:var(--s3);grid-template-columns:repeat(2,1fr)}

.gal{position:relative;overflow:hidden;background:var(--bone-2);aspect-ratio:1}
.gal img{width:100%;height:100%;object-fit:cover;
  transition:transform .9s var(--ease)}
.gal:hover img{transform:scale(1.05)}
.gal figcaption{
  position:absolute;inset:auto 0 0 0;
  padding:2.2em .9em .8em;
  font-size:var(--fs-micro);letter-spacing:.18em;text-transform:uppercase;
  color:#fff;
  background:linear-gradient(to top,rgba(15,16,19,.78),transparent);
  opacity:0;transform:translateY(6px);
  transition:opacity .35s var(--ease),transform .35s var(--ease);
}
.gal:hover figcaption,.gal:focus-within figcaption{opacity:1;transform:none}

@media (max-width:699px){
  .gal figcaption{opacity:1;transform:none}
  /* 2 colunas: a última peça ocupa a linha inteira */
  .gal--wide{grid-column:1/-1;aspect-ratio:16/10}
}
@media (min-width:700px){
  /* 6 colunas: cada peça ocupa 2 → linha 1: alta + 2 quadrados
                                   linha 2: alta (cont.) + 2 quadrados */
  .gal-grid{grid-template-columns:repeat(6,1fr)}
  .gal{grid-column:span 2}
  .gal--tall{grid-row:span 2;aspect-ratio:auto}
}
@media (prefers-reduced-motion:reduce){.gal:hover img{transform:none}}

/* ══════════════════════════════════════════════════════════
   SERVIÇOS
   ══════════════════════════════════════════════════════════ */
.services{padding-block:var(--sec);background:var(--bone-2)}
.serv-grid{display:grid;gap:0;border-top:1px solid var(--line)}
.serv{
  padding:var(--s6) 0;border-bottom:1px solid var(--line);
  display:grid;gap:var(--s3);
}
.serv__num{
  font-family:var(--serif);font-size:1rem;font-style:italic;
  color:var(--gold-ink);letter-spacing:.06em;
}
.serv p{color:var(--muted);font-size:var(--fs-small);max-width:46ch}

@media (min-width:760px){
  .serv-grid{grid-template-columns:repeat(2,1fr);column-gap:clamp(2rem,4vw,5rem)}
  .serv{
    grid-template-columns:auto 1fr;
    column-gap:var(--s5);align-items:start;
    padding:var(--s7) 0;
  }
  .serv__num{grid-row:span 2;padding-top:.45em}
  .serv h3{margin-bottom:var(--s2)}
}

/* ══════════════════════════════════════════════════════════
   TESTEMUNHO
   ══════════════════════════════════════════════════════════ */
.quote{padding-block:var(--sec)}
.quote__inner{position:relative;max-width:66ch;text-align:center}
.quote__mark{
  display:block;font-family:var(--serif);font-size:clamp(5rem,3rem + 8vw,9rem);
  line-height:.6;color:var(--bone-3);margin-bottom:var(--s2);
  user-select:none;
}
.quote blockquote p{
  font-family:var(--serif);font-style:italic;font-weight:300;
  font-size:clamp(1.45rem,1rem + 2.1vw,2.35rem);
  line-height:1.34;letter-spacing:-.008em;
  margin-bottom:var(--s5);
}
.quote footer{display:grid;gap:var(--s1)}
.quote cite{
  font-style:normal;font-size:var(--fs-small);
  letter-spacing:.16em;text-transform:uppercase;
}
.quote__src{font-size:var(--fs-micro);letter-spacing:.14em;color:var(--muted)}

.quote__score{
  margin-top:var(--s6);padding-top:var(--s5);
  border-top:1px solid var(--line);
  font-size:var(--fs-small);color:var(--muted);
  display:flex;align-items:center;justify-content:center;
  gap:.5em;flex-wrap:wrap;
}
.quote__score strong{font-weight:500;color:var(--text)}
.stars--row svg{width:16px;height:16px}

/* ══════════════════════════════════════════════════════════
   VISITAR
   ══════════════════════════════════════════════════════════ */
.visit{padding-block:var(--sec);background:var(--bone-2)}
.visit__grid{display:grid;gap:clamp(2.5rem,1.5rem + 4vw,4.5rem)}
.visit__info h2{margin-bottom:var(--s4)}
.visit__intro{color:var(--muted);max-width:46ch;margin-bottom:var(--s6)}

.visit__blocks{display:grid;gap:var(--s5)}
.vblock h3{
  font-family:var(--sans);font-size:var(--fs-micro);font-weight:400;
  letter-spacing:.24em;text-transform:uppercase;color:var(--gold-ink);
  margin-bottom:var(--s2);
}
.vblock p{font-family:var(--serif);font-size:1.18rem;line-height:1.45}
.vblock a{
  text-decoration:none;
  background-image:linear-gradient(var(--gold),var(--gold));
  background-size:0 1px;background-repeat:no-repeat;background-position:0 100%;
  transition:background-size .38s var(--ease),color .28s var(--ease);
}
.vblock a:hover{color:var(--gold-ink);background-size:100% 1px}
.vblock__note{
  font-family:var(--sans)!important;font-size:var(--fs-micro)!important;
  color:var(--muted);letter-spacing:.06em;margin-top:var(--s1);
}

.hours{width:100%;border-collapse:collapse;font-family:var(--serif);font-size:1.08rem}
.hours th,.hours td{padding:.45em 0;text-align:left;vertical-align:top;font-weight:400}
.hours th{color:var(--muted);padding-right:var(--s4);white-space:nowrap}
.hours td{text-align:right;line-height:1.4}
.hours__closed td{color:var(--muted)}

.visit__actions{display:flex;flex-wrap:wrap;gap:var(--s3);margin-top:var(--s6)}

.visit__map{
  position:relative;overflow:hidden;background:var(--bone-3);
  border:1px solid var(--line);
  aspect-ratio:4/3;
}
.visit__map iframe{width:100%;height:100%;border:0;filter:grayscale(.35) contrast(1.02)}

@media (min-width:400px){
  .visit__blocks{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s5) var(--s4)}
  .vblock--hours{grid-column:1/-1}
}
@media (min-width:900px){
  .visit__grid{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);align-items:start}
  .visit__map{aspect-ratio:1/1;position:sticky;top:104px}
  .vblock--hours{grid-column:auto}
}

/* ══════════════════════════════════════════════════════════
   FOOTER
   ══════════════════════════════════════════════════════════ */
.foot{background:var(--ink);color:var(--bone);padding-top:clamp(3.5rem,2rem + 5vw,6rem)}
.foot__grid{
  display:grid;gap:var(--s7);
  padding-bottom:clamp(3rem,2rem + 3vw,4.5rem);
}
.foot h2{
  font-family:var(--sans);font-size:var(--fs-micro);font-weight:400;
  letter-spacing:.24em;text-transform:uppercase;color:var(--gold-lit);
  margin-bottom:var(--s4);
}
.foot p{font-size:var(--fs-small);color:var(--muted-dark);line-height:1.85}
.foot p + p{margin-top:var(--s3)}
.foot a{
  text-decoration:none;color:var(--bone);
  transition:color .25s var(--ease);
}
.foot a:hover{color:var(--gold-lit)}
.foot__brand p{margin-top:var(--s4);max-width:28ch}
.foot__nav{display:flex;flex-direction:column;align-items:flex-start;gap:var(--s3)}
.foot__nav a{font-size:var(--fs-small);color:var(--muted-dark)}
.foot__nav h2{margin-bottom:var(--s1)}

.foot__base{border-top:1px solid var(--line-dark);padding-block:var(--s5)}
.foot__base-in{
  display:flex;flex-wrap:wrap;gap:var(--s3) var(--s5);
  justify-content:space-between;align-items:center;
}
.foot__base p{font-size:var(--fs-micro);letter-spacing:.06em;color:var(--muted-dark)}

@media (min-width:640px){
  .foot__grid{grid-template-columns:repeat(2,1fr)}
}
@media (min-width:960px){
  .foot__grid{grid-template-columns:1.4fr .8fr 1fr 1fr;gap:var(--s6)}
}

/* ══════════════════════════════════════════════════════════
   REVEAL (motion.dev define o estado final; isto é o inicial)
   ══════════════════════════════════════════════════════════ */
/* o estado inicial só se aplica quando o JS confirma que consegue animar,
   para que o conteúdo continue visível se o JS falhar */
.js-reveal [data-reveal]{opacity:0}
.reveal-off [data-reveal]{opacity:1!important;transform:none!important}

@media (prefers-reduced-motion:reduce){
  [data-reveal]{opacity:1!important;transform:none!important}
  *,*::before,*::after{
    animation-duration:.01ms!important;animation-iteration-count:1!important;
    transition-duration:.01ms!important;
  }
}
