
:root{--green:#465427;--green2:#64734b;--mustard:#d79b09;--cream:#f8f2e9;--soft:#fbf7f1;--coffee:#3d2b21;--text:#4f4339;--muted:#807368;--line:#e8dfd4;--white:#fff;--shadow:0 18px 45px rgba(61,43,33,.08)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,sans-serif;color:var(--text);background:#fff}a{text-decoration:none;color:inherit}.shell{width:min(1220px,calc(100% - 40px));margin:auto}
.topbar{background:var(--mustard);color:white;font-size:11px}.topbar__inner{min-height:32px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.header{background:#fff;border-bottom:1px solid #eee;position:sticky;top:0;z-index:20}.header__inner{min-height:92px;display:flex;align-items:center;gap:28px}.brand--placeholder{width:190px;height:62px;border:1.5px dashed #af9f90;border-radius:9px;display:grid;place-items:center;text-align:center;background:#fbf8f4;color:#8a796a;line-height:1.15;flex:0 0 auto}.brand--placeholder span{font-size:11px;font-weight:700}.brand--placeholder small{display:block;font-size:9px;margin-top:4px}.nav{display:flex;gap:24px;align-items:center;flex:1;font-size:13px}.menu-toggle{display:none;background:none;border:0;font-size:25px}.header__cta{margin-left:auto}
.button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 18px;border-radius:8px;font-size:13px;font-weight:700}.button--green{background:var(--green);color:white}.button--mustard{background:var(--mustard);color:white}.button--outline{border:1px solid var(--green);color:var(--green);background:white}.button--light{background:white;color:var(--green)}
.hero{background:linear-gradient(90deg,var(--soft) 0 50%,#e7ddd2 50%)}.hero__grid{display:grid;grid-template-columns:1fr 1fr;min-height:515px}.hero__content{padding:58px 55px 42px 0;display:flex;flex-direction:column;justify-content:center}.kicker{display:block;color:var(--green);text-transform:uppercase;font-size:11px;font-weight:800;letter-spacing:.08em}.kicker--light{color:#f5e8c1}h1,h2,h3{color:var(--coffee);margin-top:0}h1,h2{font-family:Georgia,serif}h1{font-size:clamp(42px,5vw,66px);line-height:1.03;margin:13px 0 17px}h2{font-size:clamp(31px,3.4vw,44px);line-height:1.08;margin:7px 0 0}.ornament{width:178px;height:1px;background:#d8cab8;margin:5px 0 20px;position:relative}.ornament:before{content:"";position:absolute;width:28px;height:3px;background:var(--green);left:0;top:-1px}.ornament:after{content:"✦";position:absolute;right:-22px;top:-11px;color:var(--mustard);font-size:18px}.hero__content>p{font-size:18px;line-height:1.55;max-width:520px;margin:0}.hero__actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}.hero__benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:30px}.hero__benefits strong{display:block;font-size:11px;color:var(--coffee)}.hero__benefits span{display:block;font-size:10px;color:var(--muted);margin-top:4px}
.media-placeholder{background:linear-gradient(135deg,#d9c8b4,#9b7c5d);color:white;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;letter-spacing:.08em;font-size:12px;font-weight:700;min-height:220px}.media-placeholder small{font-size:9px;letter-spacing:0;margin-top:8px;font-weight:500}.hero__media{min-height:515px}
.section{padding:70px 0}.section--soft{background:var(--soft)}.section-heading{margin-bottom:28px}.section-heading--center{text-align:center}.section-heading--split{display:flex;justify-content:space-between;align-items:flex-end;gap:30px}.text-link{font-size:12px;font-weight:700;color:var(--green)}
.category-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:14px}
.category-card{border:1px solid var(--line);border-radius:12px;background:white;overflow:hidden;transition:.2s}
.category-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}
.category-card__visual {
  height: 165px;
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: flex-end;
  padding: 15px;
  background: #ddd;
}

/* imagem */
.category-card__visual img {
  position: absolute;
  inset: 0;

  width: 100%;
  height: 100%;

  object-fit: cover;
  display: block;

  transition: transform 0.35s ease;
}

/* degradê para o texto continuar legível */
.category-card__visual::after {
  content: "";

  position: absolute;
  inset: 0;

  background: linear-gradient(
    to top,
    rgba(36, 28, 21, 0.78) 0%,
    rgba(36, 28, 21, 0.25) 48%,
    rgba(36, 28, 21, 0.03) 100%
  );
}

/* nome sobre a foto */
.category-card__visual span {
  position: relative;
  z-index: 2;

  color: #fff;

  font-family: Georgia, serif;
  font-size: 17px;
  font-weight: 700;
  line-height: 1.15;
}

/* zoom sutil */
.category-card:hover .category-card__visual img {
  transform: scale(1.045);
}

.product-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}.product-card{background:white;border:1px solid var(--line);border-radius:12px;overflow:hidden}.product-card__image{min-height:190px}.product-card__body{padding:15px}.product-card__body h3{font-size:14px;margin:0 0 4px}.product-card__body p{font-size:10px;color:var(--muted);margin:0}.product-card__body>div{display:flex;justify-content:space-between;align-items:center;margin-top:17px}.product-card__body a{width:30px;height:30px;border-radius:50%;background:var(--green);color:white;display:grid;place-items:center;font-size:20px}
.trust-strip{background:linear-gradient(90deg,var(--green),var(--green2));color:white}.trust-strip__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;padding:22px 0}.trust-strip strong{display:block;font-size:12px}.trust-strip span{display:block;font-size:10px;color:#e4eadc;margin-top:4px}
.story{background:var(--cream)}.story__grid{display:grid;grid-template-columns:.9fr 1.1fr;min-height:360px}.story__media{min-height:360px}.story__content{padding:65px 0 55px 64px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.story__content p{font-size:14px;line-height:1.65;max-width:560px;margin:20px 0 22px}
.channel-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.channel-card{border:1px solid var(--line);border-radius:14px;padding:24px;background:white;min-height:230px;display:flex;flex-direction:column}.channel-card--featured{background:var(--green);color:white;border-color:var(--green)}.channel-card--featured h3,.channel-card--featured b{color:white}.channel-card>span{font-size:11px;font-weight:700;color:var(--mustard)}.channel-card h3{font-size:20px;margin:36px 0 8px}.channel-card p{font-size:12px;line-height:1.5;color:var(--muted);margin:0}.channel-card--featured p{color:#e4eadc}.channel-card b{font-size:11px;color:var(--green);margin-top:auto;padding-top:20px}
.catalog-cta{background:var(--mustard);color:white;padding:50px 0}.catalog-cta__inner{display:flex;align-items:center;justify-content:space-between;gap:40px}.catalog-cta h2{color:white;max-width:650px}.catalog-cta p{max-width:710px;line-height:1.6;font-size:13px}
.footer{background:#2c231d;color:#d9cec4;padding:50px 0 20px}.footer__grid{display:grid;grid-template-columns:1.5fr repeat(3,1fr);gap:40px}.brand--footer{font-family:Georgia,serif;color:white;font-size:22px}.footer p{font-size:12px}.footer strong{display:block;color:white;font-size:12px;margin-bottom:12px}.footer a{display:block;font-size:11px;margin:9px 0;color:#c9bbb0}.footer__bottom{border-top:1px solid rgba(255,255,255,.1);margin-top:35px;padding-top:18px;font-size:10px}
@media(max-width:1050px){.nav{display:none}.menu-toggle{display:block;margin-left:auto}.header__cta{margin-left:0}.category-grid{grid-template-columns:repeat(4,1fr)}.product-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.topbar__inner span:nth-child(n+2){display:none}.header__inner{min-height:78px}.brand--placeholder{width:145px;height:52px}.header__cta{display:none}.nav.nav--open{display:flex;position:absolute;left:0;right:0;top:78px;background:white;flex-direction:column;align-items:stretch;padding:18px 20px;border-bottom:1px solid var(--line)}.hero{background:var(--soft)}.hero__grid,.story__grid{grid-template-columns:1fr}.hero__content{padding:45px 0 38px}.hero__media{min-height:340px}.hero__benefits{grid-template-columns:1fr;gap:12px}.category-grid{grid-template-columns:repeat(2,1fr)}.product-grid{grid-template-columns:repeat(2,1fr)}.trust-strip__grid{grid-template-columns:repeat(2,1fr)}.story__content{padding:45px 0}.channel-grid{grid-template-columns:repeat(2,1fr)}.catalog-cta__inner{align-items:flex-start;flex-direction:column}.footer__grid{grid-template-columns:1fr 1fr}}
@media(max-width:480px){.shell{width:min(100% - 28px,1220px)}h1{font-size:39px}.hero__actions{flex-direction:column}.category-grid,.product-grid,.channel-grid,.trust-strip__grid,.footer__grid{grid-template-columns:1fr}.section{padding:52px 0}.section-heading--split{display:block}.text-link{display:inline-block;margin-top:12px}}
.logo-img {
  max-width: 190px;
  max-height: 68px;
  width: auto;
  height: auto;
  object-fit: contain;
  display: block;
}
.hero__media {
  overflow: hidden;
}

.hero-img {
  width: 100%;
  height: 100%;
  min-height: 515px;
  object-fit: cover;
  display: block;
}

.story {
  background: var(--cream);
}

.story__grid {
  display: grid;
  grid-template-columns: 0.95fr 1.05fr;
  min-height: 420px;
}

.story__media {
  overflow: hidden;
}

.story-img {
  width: 100%;
  height: 100%;
  min-height: 420px;
  object-fit: cover;
  display: block;
}

.story__content {
  padding: 65px 0 60px 64px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
}

.story__content h2 {
  font-size: clamp(32px, 3.5vw, 48px);
  line-height: 1.08;
  margin: 8px 0 22px;
}

.story__content p {
  max-width: 580px;
  font-size: 14px;
  line-height: 1.7;
  margin: 0 0 14px;
  color: var(--text);
}

.story__signature {
  margin-top: 8px !important;
  font-size: 12px !important;
  font-weight: 700;
  color: var(--green) !important;
}

.story__content .button {
  margin-top: 18px;
}

.specialty {
  background: var(--soft);
  padding: 70px 0;
}

.specialty__grid {
  display: grid;
  grid-template-columns: 0.95fr 1.05fr;
  align-items: center;
  gap: 65px;
}

.specialty__content {
  max-width: 560px;
}

.specialty__content h2 {
  font-size: clamp(32px, 3.5vw, 48px);
  line-height: 1.08;
  margin: 8px 0 22px;
}

.specialty__content p {
  font-size: 14px;
  line-height: 1.7;
  margin: 0 0 14px;
  color: var(--text);
}

.specialty__content .button {
  margin-top: 16px;
}

.specialty__media {
  overflow: hidden;
  border-radius: 14px;
  min-height: 420px;
}

.specialty-img {
  width: 100%;
  height: 100%;
  min-height: 420px;
  object-fit: cover;
  display: block;
}

@media (max-width: 760px) {
  .specialty {
    padding: 52px 0;
  }

  .specialty__grid {
    grid-template-columns: 1fr;
    gap: 32px;
  }

  .specialty__media {
    min-height: 320px;
  }

  .specialty-img {
    min-height: 320px;
  }
}
/* ========================================
   QUERIDINHOS DO QUINTAL
======================================== */

#destaques {
  background: var(--soft);
  padding: 65px 0;
}

/* Cabeçalho da seção */
#destaques .section-heading--split {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 30px;
  margin-bottom: 28px;
}

#destaques .section-heading h2 {
  margin-top: 6px;
}

#destaques .text-link {
  color: var(--green);
  font-size: 12px;
  font-weight: 700;
  transition: opacity 0.2s ease;
}

#destaques .text-link:hover {
  opacity: 0.65;
}


/* ========================================
   GRID
======================================== */

.product-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 18px;
}


/* ========================================
   CARD
======================================== */

.product-card {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 10px;
  overflow: hidden;

  transition:
    transform 0.25s ease,
    box-shadow 0.25s ease;
}

.product-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 14px 35px rgba(61, 43, 33, 0.10);
}


/* ========================================
   IMAGEM
======================================== */

.product-card__image {
  width: 100%;
  height: 250px;

  background: #f3eee8;
  overflow: hidden;
}

.product-card__image img {
  width: 100%;
  height: 100%;

  display: block;
  object-fit: cover;

  transition: transform 0.35s ease;
}

.product-card:hover .product-card__image img {
  transform: scale(1.035);
}


/* ========================================
   CONTEÚDO
======================================== */

.product-card__body {
  padding: 17px 16px 16px;
}

.product-card__body h3 {
  margin: 0 0 7px;

  font-size: 14px;
  font-weight: 700;
  line-height: 1.3;

  color: var(--coffee);
}

.product-card__body p {
  margin: 0;

  min-height: 34px;

  font-size: 11px;
  line-height: 1.5;

  color: var(--muted);
}


/* PREÇO + BOTÃO */

.product-card__body > div {
  display: flex;
  align-items: center;
  justify-content: space-between;

  margin-top: 18px;
}

.product-card__body strong {
  font-size: 15px;
  color: var(--coffee);
}


/* BOTÃO + */

.product-card__body > div a {
  width: 32px;
  height: 32px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 50%;

  background: var(--green);
  color: #fff;

  font-size: 20px;
  font-weight: 400;
  line-height: 1;

  transition:
    background 0.2s ease,
    transform 0.2s ease;
}

.product-card__body > div a:hover {
  background: var(--mustard);
  transform: scale(1.08);
}


/* ========================================
   TABLET
======================================== */

@media (max-width: 900px) {

  .product-grid {
    grid-template-columns: repeat(2, 1fr);
  }

}


/* ========================================
   MOBILE
======================================== */

@media (max-width: 520px) {

  #destaques {
    padding: 48px 0;
  }

  #destaques .section-heading--split {
    display: block;
  }

  #destaques .text-link {
    display: inline-block;
    margin-top: 12px;
  }

  .product-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
  }

  .product-card__image {
    height: 175px;
  }

  .product-card__body {
    padding: 12px;
  }

  .product-card__body h3 {
    font-size: 12px;
  }

  .product-card__body p {
    font-size: 10px;
    min-height: 45px;
  }

  .product-card__body strong {
    font-size: 12px;
  }

  .product-card__body > div a {
    width: 28px;
    height: 28px;
    font-size: 17px;
  }

}
/* ========================================
   PÁGINA SOBRE
======================================== */

.about-hero {
  background: var(--soft);
}

.about-hero__grid {
  display: grid;
  grid-template-columns: 0.9fr 1.1fr;
  min-height: 520px;
  align-items: stretch;
}

.about-hero__content {
  padding: 80px 60px 70px 0;

  display: flex;
  flex-direction: column;
  justify-content: center;
}

.about-hero__content h1 {
  margin: 10px 0 22px;

  font-size: clamp(40px, 5vw, 64px);
  line-height: 1.05;
}

.about-hero__content p {
  max-width: 520px;

  margin: 0;

  font-size: 17px;
  line-height: 1.7;

  color: var(--text);
}

.about-hero__media {
  overflow: hidden;
}

.about-hero-img {
  width: 100%;
  height: 100%;
  min-height: 520px;

  display: block;
  object-fit: cover;
}


/* TEXTO */

.about-story {
  padding: 85px 0;

  background: var(--cream);
}

.about-story__inner {
  max-width: 780px;
}

.about-story__quote {
  margin: 0;
  padding: 0;

  border: 0;

  font-family: Georgia, serif;
  font-size: 18px;
  line-height: 1.9;

  color: var(--coffee);
}

.about-story__quote p {
  margin: 0 0 23px;
}

.about-story__highlight {
  margin: 40px 0 !important;

  font-size: 28px;
  line-height: 1.3;
  font-weight: 700;

  color: var(--green);
}

.about-story__closing {
  margin-top: 40px !important;

  font-size: 21px;
  line-height: 1.65;
  font-style: italic;
}

.about-story__author {
  display: flex;
  flex-direction: column;
  gap: 4px;

  margin-top: 38px;

  padding-top: 22px;

  border-top: 1px solid var(--line);
}

.about-story__author strong {
  color: var(--green);

  font-size: 14px;
}

.about-story__author span {
  font-size: 12px;

  color: var(--muted);
}


/* MOBILE */

@media (max-width: 760px) {

  .about-hero__grid {
    grid-template-columns: 1fr;
  }

  .about-hero__content {
    padding: 52px 0 40px;
  }

  .about-hero-img {
    min-height: 360px;
  }

  .about-story {
    padding: 55px 0;
  }

  .about-story__quote {
    font-size: 16px;
    line-height: 1.8;
  }

  .about-story__highlight {
    font-size: 23px;
  }

  .about-story__closing {
    font-size: 18px;
  }

}

/* ========================================
   PÁGINA SOBRE
======================================== */

.about-hero {
  background: var(--soft);
}

.about-hero__grid {
  display: grid;

  grid-template-columns: 0.85fr 1.15fr;

  min-height: 540px;

  align-items: center;

  gap: 65px;
}


.about-hero__content {
  padding: 70px 0;
}


.about-hero__content h1 {
  margin: 10px 0 22px;

  font-size: clamp(40px, 5vw, 62px);
  line-height: 1.05;
}


.about-hero__content p {
  max-width: 520px;

  margin: 0;

  font-size: 17px;
  line-height: 1.7;

  color: var(--text);
}


.about-hero__media {
  display: flex;

  align-items: center;
  justify-content: center;

  padding: 34px 0;
}


.about-hero__photo-wrap {
  width: 100%;
  max-width: 620px;
  height: 470px;

  overflow: hidden;

  border-radius: 18px;

  box-shadow:
    0 20px 50px rgba(61, 43, 33, 0.12);
}

.about-hero-img {
  width: 100%;
  height: 100%;

  display: block;

  object-fit: cover;
  object-position: center;
}

.about-hero-img {
  width: 100%;
  height: 100%;

  display: block;

  object-fit: cover;
}
/* ========================================
   DEPOIMENTO — ESTILO EDITORIAL / JORNAL
======================================== */

.about-story {
  padding: 90px 0;

  background: #f4efe6;

  border-top: 1px solid #ded4c7;
  border-bottom: 1px solid #ded4c7;
}


/* área maior, como página editorial */

.about-story__inner {
  max-width: 1100px;
}


/* título editorial */

.about-story .kicker {
  margin-bottom: 12px;

  letter-spacing: 0.16em;

  font-size: 10px;
}


/* linha de jornal */

.about-story .kicker::after {
  content: "";

  display: block;

  width: 100%;
  height: 1px;

  margin-top: 14px;

  background: #cfc2b2;
}


/* TEXTO PRINCIPAL */

.about-story__quote {
  margin: 36px 0 0;

  padding: 0;

  border: 0;

  font-family: Georgia, "Times New Roman", serif;

  font-size: 17px;
  line-height: 1.75;

  color: #352a22;

  text-align: justify;

  column-count: 2;
  column-gap: 58px;

  column-rule:
    1px solid rgba(74, 58, 42, 0.18);
}


/* cada parágrafo */

.about-story__quote p {
  margin: 0 0 18px;

  break-inside: avoid;
}


/* PRIMEIRA LETRA DE JORNAL */

.about-story__quote p:first-child::first-letter {
  float: left;

  margin:
    7px
    9px
    0
    0;

  font-family: Georgia, serif;

  font-size: 68px;
  line-height: 0.72;

  font-weight: 700;

  color: var(--green);
}


/* momento importante da história */

.about-story__highlight {
  margin: 30px 0 !important;

  padding:
    18px
    0;

  border-top:
    1px solid #bcae9e;

  border-bottom:
    1px solid #bcae9e;

  font-size: 25px;
  line-height: 1.3;

  font-weight: 700;

  text-align: left;

  color: var(--green);

  break-inside: avoid;
}


/* fechamento */

.about-story__closing {
  margin-top: 28px !important;

  font-size: 19px;
  line-height: 1.65;

  font-style: italic;

  text-align: left;

  break-inside: avoid;
}


/* AUTORA */

.about-story__author {
  display: flex;
  flex-direction: column;

  gap: 3px;

  margin-top: 40px;

  padding-top: 22px;

  border-top:
    3px double #b9aa98;

  text-align: right;
}


.about-story__author strong {
  font-family: Georgia, serif;

  font-size: 15px;

  color: var(--coffee);
}


.about-story__author span {
  font-size: 10px;

  text-transform: uppercase;

  letter-spacing: 0.12em;

  color: var(--muted);
}
@media (max-width: 760px) {

  .about-story {
    padding: 58px 0;
  }

  .about-story__quote {
    column-count: 1;
    column-rule: 0;

    font-size: 16px;

    text-align: left;
  }

  .about-story__quote p:first-child::first-letter {
    font-size: 56px;
  }

  .about-story__highlight {
    font-size: 22px;
  }

  .about-story__closing {
    font-size: 18px;
  }

  .about-story__author {
    text-align: left;
  }

}

/* ========================================
   CARROSSEL — GALERIA DA HISTÓRIA
======================================== */

.gallery-section {
  padding: 80px 0;
  background: #fff;
}

.gallery-section--old {
  background: var(--soft);
}

.gallery-heading {
  max-width: 650px;
  margin-bottom: 35px;
}

.gallery-heading h2 {
  margin: 8px 0 16px;
  font-size: clamp(32px, 4vw, 48px);
  line-height: 1.08;
}

.gallery-heading p {
  margin: 0;
  max-width: 560px;
  font-size: 14px;
  line-height: 1.7;
  color: var(--muted);
}

/* estrutura */
.carousel {
  position: relative;
}

.carousel__track {
  display: flex;
  gap: 18px;

  overflow-x: auto;
  scroll-behavior: smooth;

  scrollbar-width: none;

  padding: 2px 0 8px;
}

.carousel__track::-webkit-scrollbar {
  display: none;
}

/* cards */
.carousel__slide {
  flex: 0 0 calc(33.333% - 12px);

  height: 390px;

  overflow: hidden;

  border-radius: 14px;

  background: #eee;

  box-shadow:
    0 10px 30px rgba(61, 43, 33, 0.08);
}

.carousel__slide img {
  width: 100%;
  height: 100%;

  display: block;

  object-fit: cover;

  transition:
    transform 0.4s ease,
    filter 0.4s ease;
}

.carousel__slide:hover img {
  transform: scale(1.04);
}

/* carrossel antigo com aparência mais nostálgica */
.gallery-section--old .carousel__slide img {
  filter:
    saturate(0.88)
    sepia(0.08);
}

/* botões */
.carousel__button {
  position: absolute;

  top: 50%;

  transform: translateY(-50%);

  z-index: 5;

  width: 44px;
  height: 44px;

  border: 0;
  border-radius: 50%;

  display: flex;
  align-items: center;
  justify-content: center;

  background: var(--green);
  color: #fff;

  font-size: 19px;

  cursor: pointer;

  box-shadow:
    0 8px 22px rgba(0, 0, 0, 0.18);

  transition:
    transform 0.2s ease,
    background 0.2s ease;
}

.carousel__button:hover {
  background: var(--mustard);

  transform:
    translateY(-50%)
    scale(1.07);
}

.carousel__button--prev {
  left: -22px;
}

.carousel__button--next {
  right: -22px;
}

/* ========================================
   TABLET
======================================== */

@media (max-width: 900px) {

  .carousel__slide {
    flex: 0 0 calc(50% - 9px);
    height: 360px;
  }

}

/* ========================================
   MOBILE
======================================== */

@media (max-width: 600px) {

  .gallery-section {
    padding: 55px 0;
  }

  .gallery-heading {
    margin-bottom: 25px;
  }

  .carousel__track {
    gap: 12px;

    scroll-snap-type: x mandatory;
  }

  .carousel__slide {
    flex: 0 0 85%;

    height: 330px;

    scroll-snap-align: start;
  }

  .carousel__button {
    display: none;
  }

}

/* ==========================================================
   RESPONSIVIDADE FINAL — HOME QUINTAL MINEIRO
   Estas regras ficam por último para substituir conflitos
   deixados pelas versões anteriores do CSS.
========================================================== */

html,
body {
  width: 100%;
  max-width: 100%;
  overflow-x: hidden;
}

img,
svg,
video,
iframe {
  max-width: 100%;
}

.category-card__body {
  position: relative;
  padding: 16px;
}

.category-card__body h3 {
  margin: 0 28px 6px 0;
  font-size: 14px;
  line-height: 1.3;
}

.category-card__body p {
  margin: 0;
  color: var(--muted);
  font-size: 11px;
  line-height: 1.5;
}

.category-card__body b {
  position: absolute;
  top: 16px;
  right: 16px;
  color: var(--green);
}

@media (max-width: 1050px) {
  .header__inner {
    position: relative;
  }

  .nav.nav--open {
    display: flex;
    position: absolute;
    z-index: 100;
    top: 100%;
    left: -20px;
    right: -20px;
    flex-direction: column;
    align-items: stretch;
    gap: 0;
    padding: 10px 20px 18px;
    background: #fff;
    border-bottom: 1px solid var(--line);
    box-shadow: 0 18px 30px rgba(61, 43, 33, 0.12);
  }

  .nav.nav--open a {
    width: 100%;
    padding: 13px 4px;
    border-bottom: 1px solid var(--line);
    font-size: 14px;
  }
}

@media (max-width: 760px) {
  .shell {
    width: calc(100% - 32px);
    max-width: 100%;
  }

  .topbar__inner {
    min-height: 34px;
    justify-content: center;
    text-align: center;
  }

  .header__inner {
    min-height: 72px;
    gap: 12px;
  }

  .brand,
  .logo-img {
    display: block;
    width: auto;
    max-width: 145px;
    max-height: 54px;
  }

  .menu-toggle {
    width: 44px;
    height: 44px;
    margin-left: auto;
    padding: 0;
    display: grid;
    place-items: center;
    color: var(--green);
    cursor: pointer;
  }

  .nav.nav--open {
    left: -16px;
    right: -16px;
  }

  h1 {
    font-size: clamp(36px, 11vw, 48px);
    line-height: 1.05;
  }

  h2,
  .story__content h2,
  .specialty__content h2 {
    font-size: clamp(29px, 8.5vw, 38px);
    overflow-wrap: anywhere;
  }

  .hero,
  .hero__grid {
    min-height: 0;
  }

  .hero__grid {
    width: 100%;
    grid-template-columns: minmax(0, 1fr);
  }

  .hero__content {
    width: calc(100% - 32px);
    margin-inline: auto;
    padding: 42px 0 34px;
  }

  .hero__content > p {
    max-width: 100%;
    font-size: 16px;
  }

  .hero__actions {
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
  }

  .hero__actions .button {
    width: 100%;
    min-height: 48px;
    padding-inline: 14px;
    text-align: center;
  }

  .hero__benefits {
    grid-template-columns: 1fr;
    gap: 0;
  }

  .hero__benefits > div {
    padding: 11px 0;
    border-bottom: 1px solid var(--line);
  }

  .hero__media,
  .hero-img {
    width: 100%;
    min-height: 290px;
    height: 290px;
  }

  .hero-img {
    object-position: center;
  }

  .section,
  #destaques,
  .specialty,
  .instagram-section {
    padding: 50px 0;
  }

  .section-heading,
  #destaques .section-heading--split,
  .instagram-heading {
    display: block;
    margin-bottom: 24px;
  }

  .text-link,
  #destaques .text-link,
  .instagram-profile-link {
    display: inline-flex;
    margin-top: 14px;
  }

  .category-grid,
  .product-grid,
  .channel-grid {
    grid-template-columns: minmax(0, 1fr);
    gap: 14px;
  }

  .category-card,
  .product-card,
  .channel-card {
    min-width: 0;
    width: 100%;
  }

  .category-card__visual {
    height: 210px;
  }

  .product-card__image {
    height: auto;
    min-height: 0;
    aspect-ratio: 4 / 3;
  }

  .product-card__body {
    padding: 16px;
  }

  .product-card__body h3 {
    font-size: 15px;
  }

  .product-card__body p {
    min-height: 0;
    font-size: 12px;
  }

  .trust-strip__grid {
    grid-template-columns: 1fr 1fr;
    gap: 0 18px;
    padding: 15px 0;
  }

  .trust-strip__grid > div {
    padding: 12px 0;
  }

  .story__grid,
  .specialty__grid {
    grid-template-columns: minmax(0, 1fr);
    min-height: 0;
    gap: 0;
  }

  .story__media,
  .story-img,
  .specialty__media,
  .specialty-img {
    width: 100%;
    min-height: 280px;
    height: 280px;
  }

  .story__content {
    width: 100%;
    padding: 42px 0 48px;
  }

  .story__quote {
    width: 100%;
    margin: 18px 0 0;
    padding: 0;
    overflow-wrap: anywhere;
  }

  .story__content p {
    max-width: 100%;
    margin: 0 0 14px;
  }

  .story__content .button,
  .specialty__content .button {
    width: 100%;
    min-height: 48px;
    text-align: center;
  }

  .specialty__grid {
    gap: 30px;
  }

  .specialty__content {
    max-width: 100%;
  }

  .instagram-feed,
  .instagram-feed > div,
  [class*="elfsight-app-"] {
    width: 100%;
    max-width: 100%;
    min-width: 0;
  }

  .instagram-setup {
    min-height: 200px;
    padding: 24px 18px;
  }

  .channel-card {
    min-height: 190px;
  }

  .catalog-cta {
    padding: 48px 0;
  }

  .catalog-cta__inner {
    align-items: stretch;
    gap: 24px;
  }

  .catalog-cta__inner .button {
    width: 100%;
    min-height: 48px;
  }

  .footer {
    padding-top: 42px;
  }

  .footer__grid {
    grid-template-columns: 1fr 1fr;
    gap: 28px 22px;
  }
}

@media (max-width: 430px) {
  .shell {
    width: calc(100% - 28px);
  }

  .hero__content {
    width: calc(100% - 28px);
  }

  h1 {
    font-size: clamp(33px, 10.5vw, 42px);
  }

  .hero__content h1 br {
    display: none;
  }

  .category-card__visual {
    height: 190px;
  }

  .trust-strip__grid,
  .footer__grid {
    grid-template-columns: 1fr;
  }

  .trust-strip__grid > div:not(:last-child) {
    border-bottom: 1px solid rgba(255, 255, 255, 0.14);
  }

  .footer__grid > div {
    min-width: 0;
  }
}

/* NOSSA HISTÓRIA — FOTO E TEXTO LADO A LADO NO CELULAR */
@media (max-width: 768px) {
  .story .story__grid {
    display: grid !important;
    grid-template-columns: 30% minmax(0, 70%) !important;
    width: 100% !important;
    min-height: 0 !important;
    gap: 0 !important;
    align-items: stretch !important;
  }

  .story__media {
    width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    min-height: 100% !important;
    overflow: hidden !important;
  }

  .story-img {
    width: 100% !important;
    height: 100% !important;
    min-height: 100% !important;
    display: block !important;
    object-fit: cover !important;
    object-position: center !important;
  }

  .story__content {
    width: 100% !important;
    min-width: 0 !important;
    padding: 34px 16px !important;
  }

  .story__content h2 {
    width: 100% !important;
    margin: 7px 0 18px !important;
    font-size: clamp(27px, 8vw, 34px) !important;
    line-height: 1.06 !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
  }

  .story__quote {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .story__quote p,
  .story__content p {
    width: 100% !important;
    max-width: none !important;
    margin: 0 0 13px !important;
    font-size: 13px !important;
    line-height: 1.58 !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
  }

  .story__content .button {
    width: 100% !important;
    padding-inline: 10px !important;
    font-size: 11px !important;
    text-align: center !important;
  }
}
