/* Criativa Vogue — sistema visual unificado v2
   Espelha o padrão visual do index.html (paleta escura, Cormorant + Libre Baskerville,
   header fixo com brand "CV | Criativa Vogue" e footer-bar) e expande com variantes de
   seções utilizadas pelas demais páginas. */

*,*::before,*::after{box-sizing:border-box}
html,body{margin:0;padding:0;width:100%;overflow-x:hidden;background:#1c1008}
html{scroll-behavior:smooth;scroll-padding-top:76px}
body{
  font-family:"Libre Baskerville",Georgia,serif;
  font-size:.9rem;
  color:#1c1008;
  background:#1c1008;
  line-height:1.7;
  -webkit-font-smoothing:antialiased;
  isolation:isolate;
}
body.is-locked{overflow:hidden}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
h1,h2,h3,p,ul{margin:0}
ul{padding:0;list-style:none}
button{cursor:pointer;font:inherit;border:0;background:transparent;padding:0;color:inherit}
:focus-visible{outline:2px solid #c9a55a;outline-offset:4px}

.container{
  width:min(calc(100% - 32px),1200px);
  margin:0 auto;
}

.skip-link{
  position:fixed;
  top:12px;
  left:12px;
  z-index:500;
  transform:translateY(-150%);
  padding:10px 14px;
  background:#fdf5e8;
  color:#1c1008;
}
.skip-link:focus{transform:translateY(0)}

/* ============ Header ============ */
.site-header{
  position:fixed;
  top:0;
  left:0;
  width:100%;
  z-index:200;
  height:64px;
  padding:0 48px;
  padding-top:env(safe-area-inset-top);
  padding-left:max(48px, env(safe-area-inset-left));
  padding-right:max(48px, env(safe-area-inset-right));
  display:flex;
  align-items:center;
  justify-content:space-between;
  background:rgba(20,12,5,.96);
  border-bottom:1px solid rgba(255,240,210,.08);
  color:#fdf5e8;
  /* Anti-ghost iOS: layer próprio evita smearing durante momentum scroll */
  transform:translateZ(0);
  -webkit-transform:translateZ(0);
  -webkit-backface-visibility:hidden;
  backface-visibility:hidden;
  will-change:transform;
}
@supports (backdrop-filter: blur(8px)) or (-webkit-backdrop-filter: blur(8px)){
  .site-header{
    background:rgba(20,12,5,.78);
    backdrop-filter:blur(10px) saturate(140%);
    -webkit-backdrop-filter:blur(10px) saturate(140%);
  }
}
.header-brand{
  display:flex;
  align-items:center;
  gap:10px;
  min-width:0;
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:1rem;
  font-weight:500;
  text-transform:uppercase;
  white-space:nowrap;
  color:#fdf5e8;
}
.header-brand-mark{
  font-size:1.15rem;
  font-weight:700;
}
.header-brand-sep{opacity:.4;margin:0 2px}
.header-brand-name{
  font-size:.78rem;
  font-weight:400;
  opacity:.9;
}

.site-nav{
  display:flex;
  align-items:center;
  gap:30px;
}
.nav-link{
  font-family:"Libre Baskerville",Georgia,serif;
  font-size:.7rem;
  font-weight:400;
  text-transform:uppercase;
  color:rgba(253,245,232,.72);
  transition:color .2s ease;
}
.nav-link:hover{color:#fdf5e8}
.nav-link[aria-current="page"]{color:#c9a55a}

.header-actions{
  display:flex;
  align-items:center;
  gap:14px;
}
.header-actions .button,
.header-actions .button-primary{min-height:42px;padding:0 22px;font-size:.65rem}

.menu-toggle{
  display:none;
  align-items:center;
  justify-content:center;
  width:40px;
  height:40px;
  border:1px solid rgba(255,240,210,.15);
  color:#fdf5e8;
  flex-shrink:0;
  background:transparent;
}
.menu-toggle svg{display:block}

.mobile-nav{
  display:none;
  position:fixed;
  top:calc(64px + env(safe-area-inset-top));
  left:0;
  right:0;
  z-index:199;
  flex-direction:column;
  padding:24px 32px 32px;
  background:rgba(18,10,4,.98);
  border-bottom:1px solid rgba(201,165,90,.15);
  transform:translateZ(0);
  -webkit-transform:translateZ(0);
}
@supports (backdrop-filter: blur(8px)) or (-webkit-backdrop-filter: blur(8px)){
  .mobile-nav{
    background:rgba(18,10,4,.86);
    backdrop-filter:blur(14px) saturate(140%);
    -webkit-backdrop-filter:blur(14px) saturate(140%);
  }
}
.mobile-nav.is-open{display:flex}
.mobile-nav a{
  display:block;
  padding:16px 0;
  font-family:"Libre Baskerville",Georgia,serif;
  font-size:.75rem;
  text-transform:uppercase;
  color:rgba(253,245,232,.82);
  border-bottom:1px solid rgba(201,165,90,.1);
}
.mobile-nav a:last-child{border-bottom:0}

/* ============ Page hero ============ */
.page-hero{
  position:relative;
  padding:140px 0 64px;
  background:
    radial-gradient(ellipse at 78% 42%, rgba(171,118,62,.22) 0%, rgba(171,118,62,.05) 28%, transparent 55%),
    linear-gradient(90deg,#170b04 0%,#221107 48%,#321b0c 100%);
  color:#fdf5e8;
}
.page-hero-grid{
  display:grid;
  grid-template-columns:1.1fr .9fr;
  gap:64px;
  align-items:center;
}
.page-hero-grid--text-only{grid-template-columns:1fr}
.page-hero-grid figure{
  margin:0;
  display:flex;
  align-items:center;
  justify-content:center;
}
.page-hero-grid figure img{
  width:100%;
  height:auto;
  max-height:78vh;
  object-fit:contain;
  display:block;
}
.page-hero h1{
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:3rem;
  font-weight:300;
  line-height:1.12;
  margin:18px 0 22px;
  max-width:560px;
}
.page-hero p{
  font-size:.85rem;
  line-height:1.75;
  color:rgba(253,245,232,.72);
  max-width:480px;
}

.breadcrumb{
  font-family:"Libre Baskerville",Georgia,serif;
  font-size:.6rem;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:rgba(201,165,90,.7);
  margin-bottom:12px;
}
.breadcrumb a{color:inherit;border-bottom:1px solid transparent}
.breadcrumb a:hover{border-color:rgba(201,165,90,.5)}

.eyebrow{
  display:inline-block;
  font-family:"Libre Baskerville",Georgia,serif;
  font-size:.62rem;
  font-weight:700;
  text-transform:uppercase;
  color:#c9a55a;
  letter-spacing:.08em;
  margin-bottom:6px;
}

/* ============ Sections ============ */
.section{padding:90px 0}
.section-light{background:#ede4d7;color:#1c1008}
.section-soft{background:#1a0d05;color:#fdf5e8;border-top:1px solid rgba(201,165,90,.08)}
.section-dark{background:#120b04;color:#fdf5e8}

.section-head{
  display:flex;
  flex-direction:column;
  gap:18px;
  max-width:760px;
  margin:0 auto 52px;
  text-align:center;
}
.section-head .eyebrow{margin:0 auto}
.section-title{
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:2.1rem;
  font-weight:300;
  line-height:1.2;
  margin:0;
}
.section-light .section-title{color:#1c1008}
.section-soft .section-title,
.section-dark .section-title{color:#fdf5e8}
.section-copy{
  font-size:.82rem;
  line-height:1.7;
  color:rgba(253,245,232,.7);
}
.section-light .section-copy{color:rgba(28,16,8,.7)}

.content-stack{
  max-width:780px;
  margin:0 auto;
  display:flex;
  flex-direction:column;
  gap:18px;
}
.content-stack h2{
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:1.9rem;
  font-weight:300;
}
.content-stack p,.content-stack li{font-size:.84rem;line-height:1.75}
.content-stack ul{display:flex;flex-direction:column;gap:10px;padding-left:18px;list-style:disc}
.content-stack li::marker{color:#c9a55a}

.light-note{
  border-left:2px solid #c9a55a;
  padding:14px 18px;
  font-size:.8rem;
  font-style:italic;
  color:rgba(28,16,8,.78);
  background:rgba(201,165,90,.08);
}

/* ============ Buttons ============ */
.button,.button-primary,.button-secondary,.button-outline{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:50px;
  padding:0 30px;
  border:1px solid transparent;
  font-family:"Libre Baskerville",Georgia,serif;
  font-size:.7rem;
  text-transform:uppercase;
  transition:background .25s ease,color .25s ease,border-color .25s ease;
  text-align:center;
  white-space:nowrap;
}
.button-primary{
  background:transparent;
  color:#c9a55a;
  border-color:rgba(201,165,90,.6);
}
.button-primary:hover{
  background:rgba(201,165,90,.12);
  border-color:#c9a55a;
  color:#e8c97a;
}
.section-light .button-primary{
  background:#1c1008;
  color:#fdf5e8;
  border-color:#1c1008;
}
.section-light .button-primary:hover{
  background:#2c1a0e;
  border-color:#2c1a0e;
}
.button-secondary{
  background:transparent;
  color:rgba(253,245,232,.78);
  border-color:rgba(253,245,232,.24);
}
.button-secondary:hover{
  background:rgba(253,245,232,.08);
  color:#fdf5e8;
}
.section-light .button-secondary{
  color:#1c1008;
  border-color:rgba(28,16,8,.24);
}
.section-light .button-secondary:hover{background:rgba(28,16,8,.06)}
.button-outline{
  background:transparent;
  color:#c9a55a;
  border-color:rgba(201,165,90,.45);
}
.button-outline:hover{background:rgba(201,165,90,.1)}
.section-light .button-outline{
  color:#1c1008;
  border-color:rgba(28,16,8,.25);
}
.section-light .button-outline:hover{background:rgba(28,16,8,.06)}

.button-row{
  display:flex;
  flex-wrap:wrap;
  gap:14px;
  margin-top:8px;
}

/* ============ Quote panel / split ============ */
.split{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:64px;
  align-items:center;
}
.split-media{overflow:hidden}
.split-media{display:flex;align-items:center;justify-content:center}
.split-media img{width:100%;height:auto;max-height:78vh;object-fit:contain;display:block}
.split-copy{display:flex;flex-direction:column;gap:18px}
.split-copy h2{
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:2.2rem;
  font-weight:300;
  line-height:1.2;
}
.split-copy p{font-size:.85rem;line-height:1.75}

.quote-panel{
  margin-top:14px;
  padding:22px 24px;
  border-left:2px solid #c9a55a;
  font-family:"Cormorant Garamond",Georgia,serif;
  font-style:italic;
  font-size:1.1rem;
  line-height:1.5;
  color:rgba(28,16,8,.85);
  background:rgba(201,165,90,.08);
}

/* ============ Story grid (sobre) ============ */
.story-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:36px;
}
.story-card{
  display:flex;
  flex-direction:column;
  border:1px solid rgba(201,165,90,.14);
}
.section-light .story-card{
  background:#fdf5e8;
  border-color:rgba(28,16,8,.08);
}
.story-card-wide{grid-column:span 3}
.story-media{margin:0;display:flex;align-items:center;justify-content:center}
.story-media img{width:100%;height:auto;display:block}
.story-copy{padding:26px 28px;display:flex;flex-direction:column;gap:10px}
.story-number{
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:.82rem;
  color:#c9a55a;
}
.story-copy h3{
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:1.4rem;
  font-weight:400;
  line-height:1.25;
  color:inherit;
}
.story-copy p{font-size:.8rem;line-height:1.7;opacity:.78}

/* ============ Zigzag editorial (sobre) ============ */
.zigzag{
  display:flex;
  flex-direction:column;
  gap:0;
}
.zigzag-block{
  padding:90px 0;
  border-top:1px solid rgba(201,165,90,.12);
}
.zigzag-block:first-child{border-top:0}
.zigzag-block.is-light{background:#ede4d7;color:#1c1008}
.zigzag-block.is-soft{background:#1a0d05;color:#fdf5e8}
.zigzag-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:72px;
  align-items:center;
  width:min(calc(100% - 32px),1200px);
  margin:0 auto;
}
.zigzag-block:nth-child(even) .zigzag-row{
  direction:rtl;
}
.zigzag-block:nth-child(even) .zigzag-row > *{
  direction:ltr;
}
.zigzag-media{
  margin:0;
  display:flex;
  align-items:center;
  justify-content:center;
}
.zigzag-media img{
  width:100%;
  height:auto;
  max-height:78vh;
  object-fit:contain;
  display:block;
}
.is-light .zigzag-media{background:transparent}
.is-soft .zigzag-media{background:transparent}
.zigzag-copy{
  display:flex;
  flex-direction:column;
  gap:16px;
  max-width:480px;
}
.zigzag-block:nth-child(even) .zigzag-copy{
  margin-left:auto;
}
.zigzag-number{
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:2.4rem;
  font-weight:300;
  color:#c9a55a;
  line-height:1;
  letter-spacing:-.02em;
}
.zigzag-copy h3{
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:2rem;
  font-weight:300;
  line-height:1.2;
  margin:0;
}
.is-light .zigzag-copy h3{color:#1c1008}
.is-soft .zigzag-copy h3{color:#fdf5e8}
.zigzag-copy p{
  font-size:.88rem;
  line-height:1.8;
}
.is-light .zigzag-copy p{color:rgba(28,16,8,.78)}
.is-soft .zigzag-copy p{color:rgba(253,245,232,.78)}

/* ============ Authority panel ============ */
.authority-panel{
  max-width:820px;
  margin:0 auto;
  text-align:center;
  display:flex;
  flex-direction:column;
  gap:16px;
}
.authority-panel .eyebrow{margin:0 auto}
.authority-panel h2{
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:2rem;
  font-weight:300;
}
.authority-panel p{font-size:.85rem;color:rgba(253,245,232,.72)}

/* ============ CTA band ============ */
.cta-band{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:32px;
  padding:42px 48px;
  border:1px solid rgba(201,165,90,.18);
  background:
    radial-gradient(ellipse at 80% 20%, rgba(201,165,90,.16) 0%, transparent 60%),
    #1a0d05;
  color:#fdf5e8;
}
.section-light .cta-band{
  background:#1c1008;
  color:#fdf5e8;
}
.cta-band h2{
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:1.7rem;
  font-weight:300;
  line-height:1.2;
  margin-bottom:6px;
}
.cta-band p{font-size:.82rem;color:rgba(253,245,232,.7)}

/* ============ Care grid (cuidados) ============ */
.care-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:1px;
  background:rgba(201,165,90,.18);
  border:1px solid rgba(201,165,90,.18);
}
.care-card{
  background:#1a0d05;
  padding:32px 28px;
  display:flex;
  flex-direction:column;
  gap:10px;
}
.care-card h3{
  font-family:"Libre Baskerville",Georgia,serif;
  font-size:.7rem;
  font-weight:700;
  text-transform:uppercase;
  color:#c9a55a;
  letter-spacing:.06em;
}
.care-card p{font-size:.8rem;line-height:1.7;color:rgba(253,245,232,.7)}

/* ============ Process timeline (como funciona) ============ */
.process-steps{
  list-style:none;
  padding:0;
  margin:0;
  display:flex;
  flex-direction:column;
  gap:0;
  counter-reset:none;
  position:relative;
  max-width:980px;
  margin-inline:auto;
}
.process-step{
  display:grid;
  grid-template-columns:120px 1fr;
  gap:36px;
  align-items:flex-start;
  padding:42px 0;
  border-top:1px solid rgba(201,165,90,.15);
}
.process-step:first-child{border-top:0;padding-top:8px}
.process-step:last-child{padding-bottom:8px}
.process-step-num{
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:3.4rem;
  font-weight:300;
  line-height:1;
  color:#c9a55a;
  display:block;
  letter-spacing:-.02em;
}
.process-step-body{display:flex;flex-direction:column;gap:14px}
.process-step-body h3{
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:1.6rem;
  font-weight:400;
  line-height:1.2;
  color:#fdf5e8;
  margin:0;
}
.section-light .process-step-body h3{color:#1c1008}
.process-step-body p{
  font-size:.85rem;
  line-height:1.78;
  color:rgba(253,245,232,.72);
  margin:0;
}
.section-light .process-step-body p{color:rgba(28,16,8,.72)}
.process-step-tag{
  display:inline-block;
  font-family:"Libre Baskerville",Georgia,serif;
  font-size:.58rem;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.12em;
  color:#c9a55a;
  margin-bottom:2px;
}

/* ============ Steps grid (como funciona) ============ */
.steps-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:1px;
  background:rgba(201,165,90,.18);
  border:1px solid rgba(201,165,90,.18);
}
.step-card{
  background:#1a0d05;
  padding:36px 30px;
  display:flex;
  flex-direction:column;
  gap:10px;
}
.step-num{
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:.85rem;
  color:#c9a55a;
}
.step-card h3{
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:1.3rem;
  font-weight:400;
  color:#fdf5e8;
}
.step-card p{font-size:.8rem;line-height:1.7;color:rgba(253,245,232,.7)}

/* ============ Testimonials ============ */
.testimonial-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:24px;
}
.testimonial-grid-rich{grid-template-columns:repeat(3,1fr)}
.testimonial-card{
  background:#fdf5e8;
  border:1px solid rgba(28,16,8,.08);
  padding:24px 26px;
  display:flex;
  flex-direction:column;
  gap:14px;
}
.testimonial-author{
  display:flex;
  align-items:center;
  gap:12px;
}
.testimonial-author img{
  width:42px;
  height:42px;
  border-radius:50%;
  object-fit:cover;
}
.testimonial-author cite{
  font-style:normal;
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:1rem;
  color:#1c1008;
}
.stars{color:#c9a55a;font-size:.78rem;letter-spacing:1px}
.testimonial-card blockquote{
  margin:0;
  font-size:.82rem;
  line-height:1.7;
  color:rgba(28,16,8,.78);
  font-style:italic;
}

/* Destaques: avaliações longas em evidência (2 colunas, card mais rico) */
.testimonial-highlights{grid-template-columns:repeat(2,1fr);margin-bottom:60px}
.testimonial-card-featured{
  border-top:2px solid #c9a55a;
  padding:30px 32px;
  gap:16px;
}
.testimonial-card-featured blockquote{font-size:.9rem;line-height:1.8}
.avatar-initial{
  width:42px;
  height:42px;
  flex:0 0 42px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:1.2rem;
  font-weight:600;
  line-height:1;
  color:#fff;
}

/* ============ Product grid (listagens) ============ */
.support-note{
  text-align:center;
  font-family:"Cormorant Garamond",Georgia,serif;
  font-style:italic;
  font-size:1.05rem;
  color:rgba(253,245,232,.78);
  max-width:680px;
  margin:0 auto 48px;
}
.section-light .support-note{color:rgba(28,16,8,.78)}

.product-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:32px;
}
.product-card{
  display:flex;
  flex-direction:column;
  background:#fdf5e8;
  border:1px solid rgba(28,16,8,.08);
  overflow:hidden;
  color:#1c1008;
}
.product-card{align-self:start}
.product-card img{
  width:100%;
  height:auto;
  display:block;
  transition:transform .6s ease;
}
.product-card:hover img{transform:scale(1.03)}
.product-body{
  padding:22px 24px;
  display:flex;
  flex-direction:column;
  gap:10px;
}
.product-body h2,.product-body h3{
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:1.3rem;
  font-weight:400;
  line-height:1.25;
}
.product-body p{font-size:.8rem;line-height:1.7;color:rgba(28,16,8,.7)}
.status-pill{
  display:inline-flex;
  align-items:center;
  width:fit-content;
  padding:4px 12px;
  font-family:"Libre Baskerville",Georgia,serif;
  font-size:.55rem;
  text-transform:uppercase;
  letter-spacing:.1em;
  border:1px solid rgba(28,16,8,.2);
  color:rgba(28,16,8,.65);
}

/* ============ Footer-bar ============ */
.footer-bar{
  background:#120b04;
  padding:32px 48px 26px;
  text-align:center;
  border-top:1px solid rgba(201,165,90,.12);
  color:#fdf5e8;
}
.footer-phrase{
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:1.05rem;
  text-transform:uppercase;
  color:#c9a55a;
}
.footer-links{
  display:flex;
  justify-content:center;
  flex-wrap:wrap;
  gap:14px 22px;
  margin-top:18px;
  color:rgba(253,245,232,.58);
  font-size:.74rem;
}
.footer-meta{
  margin-top:12px;
  font-size:.65rem;
  letter-spacing:.05em;
  color:rgba(253,245,232,.4);
  text-transform:uppercase;
}

/* ============ Galeria de produto (gerador) ============ */
.product-detail{
  padding:calc(96px + env(safe-area-inset-top)) 0 80px;
  background:#1a0d05;
  color:#fdf5e8;
}
.product-detail-grid{
  display:grid;
  grid-template-columns:1.1fr .9fr;
  gap:52px;
  align-items:flex-start;
}
.product-detail-intro{
  display:none;
}
.product-gallery{display:flex;flex-direction:column;gap:14px}
.product-gallery-main{
  overflow:hidden;
  display:flex;
  align-items:center;
  justify-content:center;
}
.product-gallery-main img,
.product-gallery-main video{
  width:100%;
  height:auto;
  display:block;
}
.product-gallery-thumbs{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(82px,1fr));
  gap:10px;
}
.product-gallery-thumb{
  border:1px solid rgba(201,165,90,.18);
  background:#120b04;
  aspect-ratio:1;
  overflow:hidden;
  cursor:pointer;
  padding:0;
}
.product-gallery-thumb img,
.product-gallery-thumb video{width:100%;height:100%;object-fit:cover}
.product-gallery-thumb.is-active{border-color:#c9a55a}

.product-info{display:flex;flex-direction:column;gap:18px}
.product-info h1{
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:2.4rem;
  font-weight:300;
  line-height:1.15;
}
.product-info p{font-size:.85rem;line-height:1.75;color:rgba(253,245,232,.72)}

/* Accordion detalhes do produto (gerador): Altura do salto, Exterior, Forro etc. */
.description-detail-list{
  display:flex;
  flex-direction:column;
  gap:8px;
  margin:0 0 6px;
  padding:0;
}
.description-detail-item{
  border:1px solid rgba(201,165,90,.18);
  background:rgba(253,245,232,.04);
  overflow:hidden;
}
.description-detail-item + .description-detail-item{margin-top:0}
.description-detail-item summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  min-height:52px;
  padding:0 18px;
  cursor:pointer;
  list-style:none;
  font-family:"Libre Baskerville",Georgia,serif;
  font-size:.66rem;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:#c9a55a;
}
.description-detail-item summary::-webkit-details-marker{display:none}
.description-detail-item summary::after{
  content:"+";
  color:#c9a55a;
  font-size:1.15rem;
  line-height:1;
  transition:transform .25s ease;
}
.description-detail-item[open] summary::after{content:"−"}
.description-detail-item[open]{background:rgba(253,245,232,.07)}
.description-detail-copy{
  margin:0;
  padding:4px 18px 18px;
  color:rgba(253,245,232,.82);
  font-size:.84rem;
  line-height:1.7;
}

.product-accordion{
  border-top:1px solid rgba(201,165,90,.16);
  padding:14px 0;
}
.product-accordion summary{
  list-style:none;
  cursor:pointer;
  font-family:"Libre Baskerville",Georgia,serif;
  font-size:.7rem;
  text-transform:uppercase;
  letter-spacing:.06em;
  color:#c9a55a;
  display:flex;
  justify-content:space-between;
  align-items:center;
}
.product-accordion summary::-webkit-details-marker{display:none}
.product-accordion summary::after{content:"+";font-size:1.1rem;color:#c9a55a}
.product-accordion[open] summary::after{content:"−"}
.product-accordion-body{
  padding-top:14px;
  font-size:.8rem;
  line-height:1.7;
  color:rgba(253,245,232,.72);
}
.product-accordion-body ul{display:flex;flex-direction:column;gap:8px;list-style:disc;padding-left:18px}
.product-accordion-body li::marker{color:#c9a55a}

.related-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:24px;
}

/* ============ Responsivo ============ */
@media(max-width:980px){
  .site-header{padding:0 24px}
  .site-nav{display:none}
  .header-actions .button,
  .header-actions .button-primary{display:none}
  .menu-toggle{display:flex}

  /* Mobile: a foto sobe e cola logo após o header (sem margem marrom no topo).
     padding-top apenas pro header fixo (64px), sem respiro extra que mostraria o bg da hero. */
  .page-hero{padding:64px 0 56px;overflow:hidden}
  .page-hero-grid{grid-template-columns:1fr;gap:0}
  /* Foto full-bleed: estoura o container lateral pra ocupar 100vw, sem margens marrons.
     Margem inferior + faixa de degradê escuro criam transição limpa para o texto. */
  .page-hero-grid figure{
    order:-1;
    max-height:50vh;
    margin:0 calc(50% - 50vw) 32px;
    width:100vw;
    position:relative;
    isolation:isolate;
    overflow:hidden;
  }
  .page-hero-grid figure::after{
    content:"";
    position:absolute;
    left:0;
    right:0;
    bottom:0;
    height:48%;
    background:linear-gradient(to bottom,transparent 0%,rgba(23,11,4,.55) 60%,#170b04 100%);
    pointer-events:none;
  }
  .page-hero-grid figure img{
    width:100%;
    height:100%;
    max-height:50vh;
    object-fit:cover;
    object-position:center 35%;
  }
  .page-hero h1{font-size:2.2rem}

  .section{padding:60px 0}
  .section-title{font-size:1.7rem}

  .split{grid-template-columns:1fr;gap:32px}
  .story-grid{grid-template-columns:repeat(2,1fr);gap:24px}
  .story-card-wide{grid-column:span 2}

  .zigzag-block{padding:56px 0}
  .zigzag-row{grid-template-columns:1fr;gap:32px;direction:ltr}
  .zigzag-block:nth-child(even) .zigzag-row{direction:ltr}
  .zigzag-copy,
  .zigzag-block:nth-child(even) .zigzag-copy{margin-left:0;max-width:100%}
  .zigzag-media img{max-height:62vh}
  .zigzag-number{font-size:2rem}
  .zigzag-copy h3{font-size:1.6rem}

  .care-grid,.steps-grid{grid-template-columns:repeat(2,1fr)}
  .process-step{grid-template-columns:80px 1fr;gap:24px;padding:32px 0}
  .process-step-num{font-size:2.6rem}
  .process-step-body h3{font-size:1.35rem}
  .testimonial-grid{grid-template-columns:repeat(2,1fr);gap:18px}
  .product-grid{grid-template-columns:repeat(2,1fr);gap:20px}
  .related-grid{grid-template-columns:repeat(2,1fr)}
  .cta-band{padding:32px 28px;flex-direction:column;align-items:flex-start}

  .product-detail{padding:calc(80px + env(safe-area-inset-top)) 0 56px}
  .product-detail-grid{grid-template-columns:1fr;gap:24px}
  /* Mobile: mostra título/breadcrumb ANTES da galeria pra evitar imagem ocupando viewport todo */
  .product-detail-intro{display:flex;flex-direction:column;gap:10px}
  .product-detail-intro h1{
    font-family:"Cormorant Garamond",Georgia,serif;
    font-size:1.9rem;
    font-weight:300;
    line-height:1.15;
    margin:0;
  }
  .product-info h1,
  .product-info > .eyebrow{display:none}
  /* galeria do produto: proporção natural no mobile também (sem cap que distorcia a foto) */

  .footer-bar{padding:28px 24px}
}

@media(max-width:640px){
  .header-brand-name{font-size:.7rem}
  .page-hero h1{font-size:1.8rem}
  .section{padding:48px 0}
  .section-title{font-size:1.5rem}
  .story-grid,.story-card-wide{grid-template-columns:1fr}
  .story-card-wide{grid-column:span 1}
  .care-grid,.steps-grid,.testimonial-grid,.product-grid,.related-grid{grid-template-columns:1fr}
  .process-step{grid-template-columns:1fr;gap:8px;padding:28px 0}
  .process-step-num{font-size:2.2rem}
  .button-row{flex-direction:column;align-items:stretch}
  .button-row .button,
  .button-row .button-primary,
  .button-row .button-secondary,
  .button-row .button-outline{width:100%}
  .footer-phrase{font-size:.86rem}
  .product-info h1{font-size:1.9rem}
}
