/* =========================================================
   Glicolife / Genix — styles.css
   Estrutura: variáveis + base > seções da página (na ordem em
   que aparecem no HTML) > breakpoints ≤980px e ≤600px.
   Os blocos "Refinamentos" / "QA visual final" mais abaixo são
   ajustes visuais posteriores mantidos na ordem original para
   não alterar a cascata (cada um só sobrescreve propriedades
   pontuais das regras acima dele).
   ========================================================= */

/* ---- Variáveis e reset base ---- */
:root {
  --cream:#faf5ec;
  --paper:#fffdf9;
  --ink:#0a392f;
  --green:#073d31;
  --green-2:#0b4b3d;
  --gold:#d7a746;
  --gold-soft:#f6d98d;
  --line:#ded8cb;
  --muted:#70756f;
}
* {
  box-sizing:border-box;
}
html {
  scroll-behavior:smooth;
}
body {
  margin:0;
  background:var(--paper);
  color:var(--ink);
  font-family:Inter,Arial,sans-serif;
  -webkit-font-smoothing:antialiased;
}
img,
svg {
  display:block;
  max-width:100%;
}
a {
  color:inherit;
  text-decoration:none;
}
.shell {
  width:min(1400px,84%);
  margin-inline:auto;
}
.skip {
  position:fixed;
  left:12px;
  top:-60px;
  z-index:999;
  background:#fff;
  padding:10px 14px;
  border-radius:8px;
}
.skip:focus {
  top:12px;
}
.site-header {
  position:fixed;
  inset:0 0 auto;
  z-index:50;
  transition:.28s;
}
.site-header.scrolled {
  background:rgba(251,247,239,.86);
  backdrop-filter:blur(18px);
  box-shadow:0 1px 0 rgba(7,61,49,.08);
}
.nav-wrap {
  height:70px;
  display:grid;
  grid-template-columns:1fr auto 1fr;
  align-items:center;
}
.brand {
  width:134px;
}
.brand img {
  width:100%;
  height:auto;
}
.desktop-nav {
  display:flex;
  gap:48px;
  font-size:13px;
}
.desktop-nav a {
  transition:.2s;
}
.desktop-nav a:hover {
  opacity:.55;
}
.nav-cta {
  justify-self:end;
  background:var(--green);
  color:#fff;
  border-radius:999px;
  padding:12px 26px;
  font-size:14px;
  font-weight:600;
  box-shadow:0 12px 28px rgba(7,61,49,.17);
}
.menu-button,
.mobile-nav {
  display:none;
}
/* ---- Hero ---- */
.hero {
  position:relative;
  min-height:640px;
  padding:92px 0 0;
  overflow:hidden;
  background:#d9b98a;
}
.hero-bg {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center center;
  z-index:0;
}
.hero .hero-grid {
  position:relative;
  z-index:1;
}
.hero-grid {
  display:grid;
  grid-template-columns:1.03fr .97fr;
  align-items:center;
  min-height:548px;
}
.hero-copy {
  padding:43px 0 38px 38px;
  position:relative;
  z-index:3;
}
.product-wordmark {
  width:150px;
  height:auto;
  margin-bottom:22px;
}
.hero h1,
.routine h2,
.faq h2,
.final-cta h2 {
  font-family:"DM Serif Display",Georgia,serif;
  font-weight:400;
  letter-spacing:-.035em;
}
.hero h1 {
  font-size:clamp(59px,5.7vw,87px);
  line-height:.95;
  max-width:650px;
  margin:0;
}
.hero-copy>p {
  max-width:420px;
  margin:28px 0 25px;
  color:#59625d;
  font-size:17px;
  line-height:1.55;
}
.pill {
  min-height:56px;
  padding:0 29px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:42px;
  font-weight:600;
  transition:.25s;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.3),inset 0 -2px 4px rgba(0,0,0,.12),0 13px 0 rgba(4,40,32,.09),0 24px 40px rgba(4,40,32,.24);
}
.pill:hover {
  transform:translateY(-2px);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.36),inset 0 -2px 4px rgba(0,0,0,.12),0 15px 0 rgba(4,40,32,.09),0 28px 48px rgba(4,40,32,.3);
}
.pill-green:hover {
  box-shadow:inset 0 1px 0 rgba(255,255,255,.28),0 10px 0 rgba(4,40,32,.07),0 19px 30px rgba(4,40,32,.2);
}
.pill-green {
  background:linear-gradient(180deg,#0b5948 0%,#06372d 100%);
  color:#fff;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.22),0 9px 0 rgba(4,40,32,.07),0 16px 26px rgba(4,40,32,.16);
}
.pill span {
  font-size:24px;
  color:var(--gold);
  transform:translateY(-1px);
}
.hero-facts {
  display:flex;
  gap:36px;
  margin-top:28px;
  font-size:13px;
  font-weight:600;
}
.hero-facts span {
  display:flex;
  align-items:center;
  gap:7px;
}
.hero-facts i {
  width:16px;
  height:16px;
  border:2px solid var(--gold);
  border-radius:50%;
  position:relative;
}
.hero-facts i:after {
  content:"";
  position:absolute;
  width:4px;
  height:4px;
  border-radius:50%;
  background:var(--gold);
  inset:4px;
}
.hero-art {
  position:relative;
  min-height:612px;
  display:grid;
  place-items:center;
}
@keyframes float {
  50% {
    transform:translateY(-2px);
  }
}
/* ---- Metrics strip (180 cápsulas / 3 frascos / 6 meses / frete) ---- */
.metrics {
  background:#fff;
  border-top:1px solid rgba(0,0,0,.04);
  border-bottom:1px solid rgba(0,0,0,.04);
}
.metrics-grid {
  display:grid;
  grid-template-columns:repeat(4,1fr);
}
.metrics article {
  min-height:150px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:16px;
  border-right:1px solid var(--line);
}
.metrics article:last-child {
  border:0;
}
.metrics strong {
  font:400 64px/1 "DM Serif Display",Georgia,serif;
}
.metrics small {
  text-transform:uppercase;
  letter-spacing:.25em;
  font-size:10px;
  margin-top:24px;
}
.metric-icon {
  width:70px;
  height:70px;
  border:2px solid var(--gold);
  border-radius:50%;
  display:grid;
  place-items:center;
  color:var(--gold);
}
.metric-icon svg {
  width:42px;
  height:42px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.crescent {
  border-color:transparent;
  border-left-color:var(--gold);
  border-top-color:var(--gold);
  border-bottom-color:var(--gold);
}
/* ---- Routine section ("Criado para fazer parte da sua rotina") ---- */
.routine {
  padding:0;
  background:#f8f4ed;
}
.routine-panel {
  display:grid;
  grid-template-columns:.74fr 1.26fr;
  min-height:500px;
  background:#f2ede4;
}
.routine-copy {
  padding:72px 52px 56px 58px;
  position:relative;
  z-index:2;
  margin-right:-96px;
  background:linear-gradient(90deg,#f2ede4 0%,#f2ede4 74%,rgba(242,237,228,.6) 90%,rgba(242,237,228,0) 100%);
}
.eyebrow {
  display:block;
  color:#b88329;
  text-transform:uppercase;
  letter-spacing:.26em;
  font-size:10px;
  font-weight:700;
  margin-bottom:22px;
}
.eyebrow:before {
  content:"";
  display:block;
  width:28px;
  height:2px;
  background:var(--gold);
  margin-bottom:19px;
}
.routine h2 {
  font-size:50px;
  line-height:1.02;
  margin:0 0 28px;
  max-width:430px;
}
.routine-copy>p {
  color:#626b66;
  line-height:1.68;
  font-size:15px;
  max-width:420px;
}
.routine-list {
  margin-top:38px;
}
.routine-list div {
  display:flex;
  gap:18px;
  padding:15px 0;
  border-top:1px solid #d7d1c7;
}
.routine-list div:last-child {
  border-bottom:1px solid #d7d1c7;
}
.routine-list b {
  color:#c18d30;
}
.routine-list span {
  font-size:14px;
}
.routine-photo {
  background-image:url('assets/cena-rotina.jpg');
  background-size:cover;
  background-position:center;
  min-height:500px;
  -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 220px);
  mask-image:linear-gradient(90deg,transparent 0,#000 220px);
}
/* ---- Offer / pricing band ---- */
.offer {
  background:var(--green);
}
.offer-band {
  min-height:318px;
  display:grid;
  grid-template-columns:1.22fr .82fr .96fr;
  color:#fff;
  align-items:stretch;
}
.offer-photo {
  min-height:318px;
  position:relative;
}
.offer-summary {
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  border-left:1px solid rgba(217,170,75,.055);
  border-right:1px solid rgba(217,170,75,.055);
  padding:24px;
}
.offer-summary>p {
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.15em;
  margin:0;
}
.offer-summary h2 {
  font:400 42px/1 "DM Serif Display",Georgia,serif;
  color:#e3b755;
  margin:12px 0 27px;
}
.offer-icons {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:22px;
  width:100%;
}
.offer-icons span {
  display:grid;
  place-items:center;
  gap:6px;
  color:#e4b956;
}
.offer-icons svg {
  width:38px;
  height:38px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.5;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.offer-icons b {
  font-size:11px;
  color:#fff;
  font-weight:500;
}
.price-card {
  padding:40px 44px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  text-align:center;
}
.price-copy small {
  display:block;
  text-transform:uppercase;
  letter-spacing:.18em;
  color:#dccb9f;
  font-size:10px;
  margin-bottom:9px;
}
.price-copy span {
  display:block;
  font-size:17px;
}
.price-copy strong {
  display:block;
  color:#f3d079;
  font-size:57px;
  line-height:1.05;
  margin:5px 0;
}
.price-copy sup {
  font-size:24px;
}
.price-copy p {
  margin:0 0 24px;
}
.pill-gold {
  min-width:290px;
  background:linear-gradient(180deg,#ffedb8 0%,#e0ad42 55%,#d29a2f 100%);
  color:#10372e;
  box-shadow:inset 0 1px 0 #fff8d8,inset 0 -2px 4px rgba(120,70,10,.18),0 9px 0 #a5711c,0 22px 36px rgba(0,0,0,.28);
}
.pill-gold:hover {
  box-shadow:inset 0 1px 0 #fff8d8,inset 0 -2px 4px rgba(120,70,10,.18),0 11px 0 #a5711c,0 28px 44px rgba(0,0,0,.34);
}
.pill-gold span {
  color:#10372e;
}
.secure {
  display:flex;
  align-items:center;
  gap:7px;
  color:#d5bc77;
  font-size:11px;
  margin-top:20px;
}
.secure svg {
  width:18px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.5;
}
.trust-strip {
  display:grid;
  grid-template-columns:repeat(4,1fr);
  background:#faf6ef;
}
.trust-strip article {
  min-height:82px;
  display:flex;
  justify-content:center;
  align-items:center;
  gap:11px;
  color:var(--ink);
  border-right:1px solid var(--line);
}
.trust-strip article:last-child {
  border:0;
}
.trust-strip svg {
  width:34px;
  color:#d29d3c;
  fill:none;
  stroke:currentColor;
  stroke-width:1.5;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.trust-strip b,
.trust-strip span {
  display:block;
}
.trust-strip b {
  font-size:12px;
}
.trust-strip span {
  font-size:10px;
  color:#787d78;
  margin-top:3px;
}
/* ---- FAQ / accordion ---- */
.faq {
  padding:78px 0 68px;
  background:#fcfaf6;
}
.faq-grid {
  display:grid;
  grid-template-columns:.82fr 1.18fr;
  gap:86px;
}
.faq h2 {
  font-size:48px;
  line-height:1.04;
  margin:0;
  max-width:420px;
}
.accordion article {
  border-bottom:1px solid var(--line);
}
.accordion button {
  width:100%;
  padding:17px 0;
  border:0;
  background:none;
  text-align:left;
  color:var(--ink);
  font:600 13px Inter;
  position:relative;
}
.accordion i:before,
.accordion i:after {
  content:"";
  position:absolute;
  right:5px;
  top:50%;
  width:12px;
  height:1px;
  background:var(--ink);
}
.accordion i:after {
  transform:rotate(90deg);
  transition:.2s;
}
.accordion button[aria-expanded=true] i:after {
  transform:rotate(0);
}
.accordion article>div {
  display:grid;
  grid-template-rows:0fr;
  transition:.3s;
}
.accordion article>div p {
  overflow:hidden;
  margin:0;
  color:#6b726e;
  line-height:1.6;
  font-size:13px;
}
.accordion button[aria-expanded=true]+div {
  grid-template-rows:1fr;
}
.accordion button[aria-expanded=true]+div p {
  padding-bottom:15px;
}
/* ---- Final CTA band ---- */
.final-cta {
  background:linear-gradient(90deg,#06392f,#0a4a3b);
  color:#fff;
}
.final-grid {
  min-height:236px;
  display:grid;
  grid-template-columns:1fr 1fr;
  align-items:center;
}
.final-copy {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:34px;
  padding-left:48px;
}
.final-copy h2 {
  font-size:44px;
  line-height:.98;
  margin:0;
}
.final-copy .pill {
  min-width:300px;
}
/* ---- Footer ---- */
footer {
  background:#061f1a;
  color:#fff;
  padding:22px 0;
}
.footer-grid {
  display:grid;
  grid-template-columns:1.25fr repeat(3,1fr);
  gap:40px;
  align-items:center;
}
.footer-grid div {
  display:flex;
  flex-direction:column;
  gap:4px;
}
.footer-grid b {
  color:#d9b354;
  font-size:10px;
}
.footer-grid a,
.footer-grid span {
  font-size:10px;
  color:#f0f2ef;
}
/* ---- Checkout toast + reveal-on-scroll animation ---- */
.toast {
  position:fixed;
  z-index:99;
  left:50%;
  bottom:20px;
  transform:translate(-50%,140%);
  background:#fff;
  color:var(--ink);
  padding:14px 18px;
  border-radius:12px;
  box-shadow:0 18px 50px rgba(0,0,0,.22);
  transition:.3s;
}
.toast.show {
  transform:translate(-50%,0);
}
.reveal {
  opacity:0;
  transform:translateY(20px);
  transition:.7s;
}
.reveal.is-visible {
  opacity:1;
  transform:none;
}

/* =========================================================
   Responsive — tablet / mobile nav (≤980px)
   ========================================================= */
@media(max-width:980px) {
  .shell {
    width:min(760px,calc(100% - 36px));
  }
  .desktop-nav,
  .nav-cta {
    display:none;
  }
  .nav-wrap {
    grid-template-columns:1fr auto;
    height:72px;
  }
  .menu-button {
    display:block;
    width:42px;
    height:42px;
    border:0;
    background:none;
  }
  .menu-button span {
    display:block;
    width:23px;
    height:1px;
    background:var(--ink);
    margin:7px auto;
  }
  .mobile-nav {
    display:grid;
    grid-template-rows:0fr;
    overflow:hidden;
    background:rgba(251,247,239,.98);
    padding:0 18px;
    transition:.3s;
  }
  .mobile-nav.open {
    grid-template-rows:1fr;
    padding-bottom:16px;
  }
  .mobile-nav a {
    padding:12px 0;
    border-bottom:1px solid var(--line);
  }
  .hero {
    padding-top:90px;
  }
  .hero-grid,
  .routine-panel,
  .faq-grid,
  .final-grid {
    grid-template-columns:1fr;
  }
  .hero-copy {
    text-align:center;
    padding-left:0;
  }
  .product-wordmark {
    margin-inline:auto;
  }
  .hero h1 {
    margin-inline:auto;
  }
  .hero-copy>p {
    margin-inline:auto;
  }
  .hero-facts {
    justify-content:center;
  }
  .hero-art {
    min-height:530px;
  }
  .metrics-grid {
    grid-template-columns:repeat(2,1fr);
  }
  .metrics article:nth-child(2) {
    border-right:0;
  }
  .routine-copy {
    padding:55px 42px;
    margin-right:0;
    background:#f2ede4;
  }
  .routine-photo {
    min-height:430px;
    -webkit-mask-image:none;
    mask-image:none;
  }
  .offer-band {
    grid-template-columns:1fr 1fr;
  }
  .offer-photo {
    grid-row:1/3;
  }
  .price-card {
    grid-column:2;
  }
  .trust-strip {
    grid-template-columns:repeat(2,1fr);
  }
  .faq-heading {
    text-align:center;
  }
  .faq h2 {
    margin-inline:auto;
  }
  .final-copy {
    padding:35px 0 55px;
    justify-content:center;
    flex-direction:column;
    text-align:center;
  }
  .footer-grid {
    grid-template-columns:1fr 1fr;
  }
}

/* =========================================================
   Responsive — mobile (≤600px)
   ========================================================= */
@media(max-width:600px) {
  .shell {
    width:calc(100% - 26px);
  }
  .brand {
    width:108px;
  }
  .hero {
    min-height:auto;
  }
  .hero-grid {
    min-height:auto;
  }
  .hero-copy {
    padding-top:26px;
  }
  .product-wordmark {
    width:125px;
  }
  .hero h1 {
    font-size:51px;
  }
  .hero-copy>p {
    font-size:15px;
  }
  .hero-facts {
    gap:12px;
    flex-wrap:wrap;
  }
  .hero-art {
    min-height:410px;
  }
  .metrics article {
    min-height:105px;
    gap:10px;
  }
  .metric-icon {
    width:50px;
    height:50px;
  }
  .metric-icon svg {
    width:31px;
    height:31px;
  }
  .metrics strong {
    font-size:46px;
  }
  .metrics small {
    font-size:8px;
    margin-top:17px;
  }
  .routine-copy {
    padding:44px 26px;
  }
  .routine h2,
  .faq h2,
  .final-cta h2 {
    font-size:39px;
  }
  .routine-photo {
    min-height:320px;
  }
  .offer-band {
    grid-template-columns:1fr;
  }
  .offer-photo {
    grid-row:auto;
    min-height:270px;
  }
  .offer-summary,
  .price-card {
    grid-column:auto;
  }
  .offer-summary {
    border:0;
    border-top:1px solid rgba(217,170,75,.08);
    border-bottom:1px solid rgba(217,170,75,.08);
  }
  .price-card {
    padding:30px 18px;
  }
  .price-copy strong {
    font-size:48px;
  }
  .pill-gold {
    min-width:100%;
    gap:25px;
  }
  .trust-strip {
    margin-inline:-13px;
  }
  .trust-strip article {
    padding:15px 8px;
    gap:8px;
  }
  .trust-strip svg {
    width:27px;
  }
  .trust-strip b {
    font-size:10px;
  }
  .trust-strip span {
    font-size:8px;
  }
  .faq {
    padding:70px 0;
  }
  .faq-grid {
    gap:34px;
  }
  .final-photo {
    height:260px;
  }
  .final-copy .pill {
    min-width:100%;
  }
  .footer-grid {
    grid-template-columns:1fr;
    text-align:center;
  }
  .toast {
    width:calc(100% - 24px);
    text-align:center;
  }
}
/* =========================================================
   Ajustes visuais adicionais (ícones, gradientes de texto,
   detalhes do rodapé) — sobrescrevem pontualmente as regras
   das seções acima.
   ========================================================= */
:root {
  --gold:#c99a3d;
  --gold-light:#f1d590;
  --gold-mid:#d3a54a;
  --gold-deep:#9d6c1d;
}
.hero-facts svg {
  width:18px;
  height:18px;
  fill:none;
  stroke:var(--gold);
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
  flex:0 0 auto;
  filter:drop-shadow(0 1px 1px rgba(91,55,5,.12));
}
.hero-facts i {
  display:none;
}
.routine-copy {
  margin-right:-128px;
  background:linear-gradient(90deg,#f2ede4 0%,#f2ede4 68%,rgba(242,237,228,.78) 82%,rgba(242,237,228,.28) 94%,rgba(242,237,228,0) 100%);
}
.routine-photo {
  -webkit-mask-image:linear-gradient(90deg,transparent 0,rgba(0,0,0,.35) 100px,#000 270px);
  mask-image:linear-gradient(90deg,transparent 0,rgba(0,0,0,.35) 100px,#000 270px);
}
.offer-summary h2,
.price-copy strong {
  color:transparent;
  background:linear-gradient(180deg,var(--gold-light) 0%,var(--gold-mid) 48%,var(--gold-deep) 100%);
  -webkit-background-clip:text;
  background-clip:text;
  text-shadow:0 1px 0 rgba(255,255,255,.08),0 4px 10px rgba(0,0,0,.16);
}
.offer-icons span {
  color:var(--gold-mid);
}
.offer-icons svg {
  filter:drop-shadow(0 2px 2px rgba(0,0,0,.16));
}
.pill-gold {
  background:linear-gradient(180deg,#f8e4aa 0%,#ddb25b 42%,#bf8730 100%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.78),inset 0 -3px 5px rgba(105,61,5,.22),0 8px 0 #8f611d,0 18px 34px rgba(0,0,0,.30);
}
.pill-gold:hover {
  box-shadow:inset 0 1px 0 rgba(255,255,255,.82),inset 0 -3px 5px rgba(105,61,5,.22),0 10px 0 #8f611d,0 24px 42px rgba(0,0,0,.34);
}
.final-copy h2 {
  max-width:470px;
}
.metric-shipping strong {
  font-size:50px;
  letter-spacing:-.04em;
}
.metric-shipping small {
  margin-top:18px;
}
.footer-grid {
  grid-template-columns:1.15fr repeat(4,1fr);
}
.footer-legal {
  gap:6px!important;
}
/* =========================================================
   Páginas institucionais (Política de Privacidade / Termos)
   ========================================================= */
.legal-main {
  padding:118px 0 82px;
  background:linear-gradient(180deg,#fbf7ef 0%,#fffdf9 260px);
}
.legal-hero {
  max-width:900px;
  margin-bottom:48px;
}
.legal-kicker {
  display:block;
  color:#a87929;
  text-transform:uppercase;
  letter-spacing:.23em;
  font-size:10px;
  font-weight:700;
  margin-bottom:18px;
}
.legal-main h1 {
  font:400 clamp(48px,6vw,78px)/.98 "DM Serif Display",Georgia,serif;
  letter-spacing:-.035em;
  margin:0 0 18px;
  color:var(--ink);
}
.legal-updated {
  font-size:12px;
  color:#7c817d;
  margin:0 0 20px;
}
.legal-intro {
  font-size:18px;
  line-height:1.65;
  color:#59625d;
  max-width:760px;
}
.legal-content {
  max-width:900px;
  background:rgba(255,255,255,.72);
  border:1px solid rgba(7,61,49,.08);
  border-radius:28px;
  padding:20px 54px 48px;
  box-shadow:0 24px 60px rgba(7,61,49,.06);
}
.legal-section {
  padding:30px 0;
  border-bottom:1px solid var(--line);
}
.legal-section:last-child {
  border-bottom:0;
  padding-bottom:0;
}
.legal-section h2 {
  font:400 30px/1.15 "DM Serif Display",Georgia,serif;
  letter-spacing:-.02em;
  margin:0 0 14px;
}
.legal-section p,
.legal-section li {
  font-size:14px;
  line-height:1.75;
  color:#606863;
}
.legal-section ul {
  margin:12px 0 0;
  padding-left:20px;
}
.legal-contact {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
  margin-top:18px;
}
.legal-contact a {
  display:block;
  background:#f7f1e7;
  border-radius:16px;
  padding:16px 18px;
  font-size:13px;
  font-weight:600;
}
.legal-header .desktop-nav {
  visibility:hidden;
}
@media(max-width:980px) {
  .routine-copy {
    margin-right:0;
    background:#f2ede4;
  }
  .routine-photo {
    -webkit-mask-image:none;
    mask-image:none;
  }
  .footer-grid {
    grid-template-columns:1fr 1fr;
  }
  .legal-main {
    padding-top:104px;
  }
}
@media(max-width:600px) {
  .hero-facts svg {
    width:16px;
    height:16px;
  }
  .metric-shipping strong {
    font-size:34px;
  }
  .metric-shipping small {
    font-size:7px;
    letter-spacing:.18em;
    margin-top:12px;
  }
  .metrics article {
    min-width:0;
    padding:0 5px;
  }
  .metrics article>* {
    min-width:0;
  }
  .final-copy h2 {
    font-size:37px;
    max-width:340px;
  }
  .footer-grid {
    grid-template-columns:1fr;
  }
  .legal-main {
    padding:96px 0 58px;
  }
  .legal-content {
    padding:8px 22px 30px;
    border-radius:22px;
  }
  .legal-section {
    padding:25px 0;
  }
  .legal-section h2 {
    font-size:26px;
  }
  .legal-intro {
    font-size:16px;
  }
  .legal-contact {
    grid-template-columns:1fr;
  }
}
@media(max-width:360px) {
  .metrics article {
    gap:6px;
  }
  .metric-icon {
    width:44px;
    height:44px;
    flex:0 0 44px;
  }
  .metric-icon svg {
    width:27px;
    height:27px;
  }
  .metrics strong {
    font-size:39px;
  }
  .metric-shipping strong {
    font-size:29px;
  }
  .metrics small {
    letter-spacing:.15em;
  }
}
/* =========================================================
   Polimento visual adicional (sombras, gradientes, footer)
   ========================================================= */
.metric-shipping strong {
  font-size:46px;
  letter-spacing:-.035em;
}
.offer-band {
  position:relative;
  background:linear-gradient(90deg,rgba(255,255,255,.018),rgba(255,255,255,0) 44%,rgba(218,174,86,.025));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025),inset 0 -1px 0 rgba(0,0,0,.08);
}
.offer-summary {
  background:linear-gradient(180deg,rgba(255,255,255,.018),rgba(255,255,255,0));
}
.price-card {
  background:radial-gradient(circle at 50% 44%,rgba(221,178,91,.055),transparent 58%);
}
.offer-summary h2,
.price-copy strong {
  filter:drop-shadow(0 3px 8px rgba(0,0,0,.14));
}
.offer-icons span {
  text-shadow:0 1px 7px rgba(198,146,52,.12);
}
.pill-gold {
  position:relative;
  overflow:hidden;
  background:linear-gradient(180deg,#f9e9bc 0%,#edcf88 22%,#d6a84e 55%,#b77c26 100%);
  border:1px solid rgba(255,240,190,.48);
  box-shadow:inset 0 2px 0 rgba(255,255,255,.82),inset 0 -3px 6px rgba(92,52,5,.24),0 7px 0 #885b1b,0 17px 30px rgba(0,0,0,.26);
}
.pill-gold::before {
  content:"";
  position:absolute;
  inset:1px 12px auto;
  height:42%;
  border-radius:999px;
  background:linear-gradient(180deg,rgba(255,255,255,.36),rgba(255,255,255,0));
  pointer-events:none;
}
.pill-gold:hover {
  box-shadow:inset 0 2px 0 rgba(255,255,255,.86),inset 0 -3px 6px rgba(92,52,5,.24),0 9px 0 #885b1b,0 23px 40px rgba(0,0,0,.31);
}
.pill-gold > *,
.pill-gold {
  isolation:isolate;
}
.faq {
  padding-bottom:112px;
}
footer {
  padding:34px 0 30px;
  border-top:1px solid rgba(218,179,84,.16);
}
.footer-grid {
  grid-template-columns:1.35fr repeat(4,1fr);
  gap:46px;
  align-items:start;
}
.footer-brand {
  display:flex;
  flex-direction:column;
  gap:12px!important;
}
.footer-brand img {
  width:135px;
  height:auto;
  filter:brightness(0) invert(1);
}
.footer-brand span {
  max-width:210px;
  line-height:1.55;
  color:rgba(240,242,239,.62);
}
.footer-grid div:not(.footer-brand) {
  padding-top:3px;
}
.footer-grid b {
  margin-bottom:3px;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.footer-grid a {
  transition:opacity .2s;
}
.footer-grid a:hover {
  opacity:.66;
}
@media(max-width:980px) {
  .footer-grid {
    grid-template-columns:1fr 1fr;
    gap:28px 44px;
  }
  .footer-brand {
    grid-column:1/-1;
  }
}
@media(max-width:600px) {
  .metric-shipping strong {
    font-size:31px;
  }
  .faq {
    padding-bottom:88px;
  }
  footer {
    padding:32px 0;
  }
  .footer-grid {
    grid-template-columns:1fr;
    text-align:center;
    gap:22px;
  }
  .footer-brand {
    grid-column:auto;
    align-items:center;
  }
  .footer-brand span {
    max-width:none;
  }
  .footer-grid div:not(.footer-brand) {
    padding-top:0;
  }
}
@media(max-width:360px) {
  .metric-shipping strong {
    font-size:27px;
  }
}
.pill-gold {
  border-color:rgba(255,240,190,.24);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.46),inset 0 -3px 6px rgba(92,52,5,.22),0 7px 0 #885b1b,0 17px 30px rgba(0,0,0,.26);
}
.pill-gold::before {
  inset:2px 18px auto;
  height:24%;
  background:linear-gradient(180deg,rgba(255,255,255,.16),rgba(255,255,255,0));
}
.pill-gold:hover {
  box-shadow:inset 0 1px 0 rgba(255,255,255,.52),inset 0 -3px 6px rgba(92,52,5,.22),0 9px 0 #885b1b,0 23px 40px rgba(0,0,0,.31);
}
/* Restaurar somente as duas divisórias internas da área verde da oferta */
.offer-summary {
  border-left:1px solid rgba(217,170,75,.18);
  border-right:1px solid rgba(217,170,75,.18);
}
/* Suavizar a linha/brilho do botão dourado sem perder o relevo */
.pill-gold {
  border-color:rgba(255,240,190,.18);
  box-shadow:inset 0 .5px 0 rgba(255,255,255,.28),inset 0 -3px 6px rgba(92,52,5,.22),0 7px 0 #885b1b,0 17px 30px rgba(0,0,0,.26);
}
.pill-gold::before {
  display:none;
}
.pill-gold:hover {
  box-shadow:inset 0 .5px 0 rgba(255,255,255,.34),inset 0 -3px 6px rgba(92,52,5,.22),0 9px 0 #885b1b,0 23px 40px rgba(0,0,0,.31);
}
/* Mobile navigation fix — closed by default, opens only via hamburger */
@media (max-width:980px) {
  .site-header {
    position:fixed;
    inset:0 0 auto;
    z-index:1000;
    padding-top:env(safe-area-inset-top);
    background:rgba(251,247,239,.94);
    backdrop-filter:blur(18px);
  }
  .nav-wrap {
    position:relative;
    z-index:2;
  }
  .mobile-nav {
    display:none;
    position:absolute;
    top:100%;
    left:0;
    right:0;
    z-index:1;
    background:rgba(251,247,239,.985);
    padding:0 18px 16px;
    border-top:1px solid var(--line);
    box-shadow:0 16px 30px rgba(7,61,49,.10);
    overflow:visible;
    grid-template-rows:none;
  }
  .mobile-nav.open {
    display:flex;
    flex-direction:column;
  }
  .mobile-nav a {
    display:block;
    padding:13px 0;
  }

  /* CTA de compra sempre visível ao lado do menu no cabeçalho móvel */
  .nav-wrap {
    grid-template-columns:1fr auto auto;
    gap:10px;
  }
  .nav-cta {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:40px;
    padding:0 18px;
    font-size:13px;
  }

  /* No celular, a composição horizontal vira duas faixas: texto e produto */
  .hero-bg {
    display:none;
  }
  .hero {
    background:#f6dfbe;
    padding-top:calc(90px + env(safe-area-inset-top));
  }
  .hero-grid {
    grid-template-columns:minmax(0,1fr);
  }
  .hero-art {
    width:100vw;
    margin-inline:0;
    justify-self:center;
    background-color:#f6dfbe;
    background-image:url("assets/hero-composicao-hd.jpg");
    background-repeat:no-repeat;
    background-position:right center;
    background-size:auto 100%;
  }
}

@media (max-width:600px) {
  .hero-copy {
    width:100%;
    min-width:0;
    padding-inline:0;
  }
  .hero h1 {
    width:100%;
    max-width:100%;
    font-size:clamp(38px,10.5vw,44px);
    line-height:.98;
    overflow-wrap:normal;
    text-wrap:balance;
  }

  /* Remove a faixa verde que aparecia à direita dos quatro benefícios */
  .offer .trust-strip.shell {
    width:100%;
    max-width:none;
    margin-inline:0;
  }
}

@media (max-width:360px) {
  .nav-wrap {
    gap:6px;
  }
  .nav-cta {
    min-height:38px;
    padding:0 13px;
    font-size:12px;
  }
}
/* =========================================================
   Imagens da oferta e do CTA final — <img> real com
   object-fit, sem pseudo-elementos de fundo
   ========================================================= */
.offer-photo,
.final-photo {
  background:none !important;
}
.offer-photo::before,
.offer-photo::after {
  display:none !important;
  content:none !important;
}
.offer-photo {
  min-height:318px;
  display:flex;
  align-items:flex-end;
  justify-content:center;
  overflow:visible;
  padding:8px 8px 0;
}
.offer-photo > img {
  display:block;
  width:min(112%,760px);
  max-width:none;
  height:auto;
  object-fit:contain;
  object-position:center bottom;
  margin:0 auto -2px;
}
.final-photo {
  height:236px;
  display:flex;
  align-items:flex-end;
  justify-content:center;
  overflow:hidden;
  padding:0 20px;
}
.final-photo > img {
  display:block;
  width:min(92%,540px);
  max-width:none;
  height:auto;
  object-fit:contain;
  object-position:center bottom;
  margin:0 auto -34px;
}
@media(max-width:980px) {
  .offer-photo {
    min-height:360px;
    padding:14px 10px 0;
  }
  .offer-photo > img {
    width:min(98%,650px);
    margin-bottom:0;
  }
  .final-photo {
    height:300px;
    padding:0 18px;
  }
  .final-photo > img {
    width:min(88%,520px);
    margin-bottom:-30px;
  }
}
@media(max-width:600px) {
  .offer-photo {
    min-height:300px;
    padding:12px 6px 0;
  }
  .offer-photo > img {
    width:104%;
    max-width:560px;
  }
  .final-photo {
    height:270px;
    padding:0 8px;
  }
  .final-photo > img {
    width:92%;
    max-width:430px;
    margin-bottom:-22px;
  }
}
