/*
 * Phase 6D — controlled responsive layout corrections
 *
 * This stylesheet is intentionally scoped to the four market homepages.
 * It does not activate the Phase 6C-C fonts or change content, routes,
 * navigation destinations, SEO metadata, or consent behavior.
 */

/* The hand-raised kicker is text, not a numbered process badge. */
.phase6d-home .ph6-hr-text .badge {
  display: block;
  flex: 0 0 auto;
  width: fit-content;
  height: auto;
  min-height: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: #C9A24B;
  line-height: 1.35;
  white-space: normal;
}

/* Shared Phase 6 image/text panels. */
.phase6d-home .ph6-hr-text {
  min-width: 0;
  padding: clamp(1.5rem, 4vw, 3rem) clamp(1rem, 5vw, 3.5rem);
}

.phase6d-home .ph6-hr-text h3,
.phase6d-home .ph6-hr-text p,
.phase6d-home .ph6-hr-text a {
  max-width: 62ch;
}

.phase6d-home .ph6-hr-img img,
.phase6d-home .ph6-sc-img img,
.phase6d-home .ph6-masonry img,
.phase6d-home .ph6-food-item img,
.phase6d-home .ph6-conf-main img,
.phase6d-home .ph6-conf-sm img,
.phase6d-home .ph6-del-img img {
  max-width: 100%;
}

/* ES/PT hero content: keep the hero commanding without making it a full-screen
   wall of text on narrow devices. */
.phase6d-home .hero-content,
.phase6d-home .hero-home .hero-content {
  width: min(100%, 920px);
  min-width: 0;
}

.phase6d-home .hero-content h1,
.phase6d-home .hero-home .hero-content h1 {
  text-wrap: balance;
}

.phase6d-home .hero-content p,
.phase6d-home .hero-home .hero-content p {
  max-width: 68ch;
}

.phase6d-home .hero .cta-row,
.phase6d-home .hero-home .cta-row {
  align-items: stretch;
}

.phase6d-home .hero .cta-row > a,
.phase6d-home .hero-home .cta-row > a {
  min-height: 48px;
}

.phase6d-home .hero-content a.btn-email,
.phase6d-home .hero-content a.btn-email:hover,
.phase6d-home .hero-home .hero-content a.btn-ghost,
.phase6d-home .hero-home .hero-content a.btn-ghost:hover {
  color: #fff;
  text-decoration: none;
}

.phase6d-home .nav-mobile,
.phase6d-home .nav-mob {
  z-index: 2147483001;
}

.phase6d-home .nav-mobile-list .nm-languages,
.phase6d-home .nav-mob-list .nm-languages {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.5rem;
  margin-top: 0.9rem;
  padding-top: 0.9rem;
  border-top: 1px solid rgba(255,255,255,.15);
}

.phase6d-home .nm-languages a {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  min-height: 44px;
  padding: 0.55rem 0.65rem;
  border: 1px solid rgba(255,255,255,.2);
  border-radius: 8px;
  color: rgba(255,255,255,.82);
  font: 700 0.82rem/1.2 system-ui,-apple-system,Segoe UI,sans-serif;
  text-decoration: none;
}

.phase6d-home .nm-languages a:hover,
.phase6d-home .nm-languages a:focus-visible,
.phase6d-home .nm-languages a[aria-current="page"] {
  color: #fff;
  border-color: #C9A24B;
  background: rgba(201,162,75,.16);
}

.phase6d-home .nm-languages a span[aria-hidden="true"] {
  flex: 0 0 auto;
  font-size: 1rem;
}

/* Existing mobile-menu triggers are already present on ES/FR/PT/EN.
   Move to them before the full desktop navigation can overflow. */
@media (max-width: 1100px) {
  .phase6d-home .header {
    padding-inline: clamp(0.85rem, 4vw, 5%);
  }

  .phase6d-home .header .nav,
  .phase6d-home .site-header .main-nav {
    display: none !important;
  }

  .phase6d-home .header .nav-ham,
  .phase6d-home .site-header .nav-ham {
    display: flex;
  }

  .phase6d-home .header .logo img,
  .phase6d-home .site-header .brand-logo img {
    height: 56px !important;
    width: auto !important;
  }
}

/* ES homepage. */
.phase6d-home .hero {
  min-height: min(760px, calc(100svh - 78px));
}

.phase6d-home .es-section,
.phase6d-home .ph6-species,
.phase6d-home .ph6-gallery,
.phase6d-home .ph6-handraised,
.phase6d-home .ph6-food,
.phase6d-home .ph6-confidence,
.phase6d-home .ph6-delivery,
.phase6d-home .about,
.phase6d-home .contact {
  padding-inline: clamp(1rem, 5vw, 5%);
}

/* EN homepage uses inline section styles, so its hero receives small semantic
   hooks while retaining the existing visual system. */
.phase6d-home .phase6d-en-hero {
  min-height: min(760px, 88svh);
  padding-inline: clamp(1rem, 5vw, 5%);
}

.phase6d-home .phase6d-en-hero-inner {
  min-width: 0;
}

.phase6d-home .phase6d-en-hero-copy {
  min-width: 0;
}

.phase6d-home .phase6d-en-hero-copy h1 {
  text-wrap: balance;
}

.phase6d-home .phase6d-en-hero-ctas,
.phase6d-home .phase6d-en-hero-trust {
  align-items: stretch;
}

.phase6d-home .phase6d-en-hero-ctas > a {
  min-height: 48px;
}

@media (max-width: 1023px) {
  .phase6d-home .ph6-species-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .phase6d-home .ph6-delivery .ph6-wrap {
    gap: clamp(1.5rem, 4vw, 3rem);
  }

  .phase6d-home .phase6d-en-hero {
    min-height: 680px;
  }
}

@media (max-width: 767px) {
  .phase6d-home .hero,
  .phase6d-home .hero-home {
    min-height: 0;
    padding: clamp(4.5rem, 11vh, 6rem) 1rem clamp(2.25rem, 7vh, 4rem);
  }

  .phase6d-home .hero-content,
  .phase6d-home .hero-home .hero-content {
    padding-inline: clamp(0.25rem, 2vw, 1rem);
  }

  .phase6d-home .hero h1,
  .phase6d-home .hero-home .hero-content h1 {
    font-size: clamp(2.375rem, 8.5vw, 3rem);
    line-height: 1.08;
    letter-spacing: -0.025em;
    margin-bottom: 0.85rem;
  }

  .phase6d-home .hero p,
  .phase6d-home .hero-home .hero-content p {
    font-size: clamp(0.98rem, 2.8vw, 1.08rem);
    line-height: 1.65;
    margin-bottom: 0.9rem;
  }

  .phase6d-home .hero .cta-row,
  .phase6d-home .hero-home .cta-row {
    width: min(100%, 25rem);
    margin-inline: auto;
    flex-direction: column;
    gap: 0.65rem;
  }

  .phase6d-home .hero .cta-row > a,
  .phase6d-home .hero-home .cta-row > a {
    width: 100%;
    margin-inline: 0;
    text-align: center;
    min-height: 52px;
    padding: 0.72rem 0.85rem;
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 1.25;
  }

  .phase6d-home .trust-strip {
    gap: 0.75rem 1rem;
    margin-top: 1rem;
  }

  .phase6d-home .trust-strip span {
    min-width: 0;
    line-height: 1.35;
  }

  .phase6d-home .ph6-sh {
    margin-bottom: 2rem;
  }

  .phase6d-home .ph6-sh h2 {
    font-size: clamp(1.55rem, 5.5vw, 2.1rem);
    line-height: 1.18;
    text-wrap: balance;
  }

  .phase6d-home .ph6-sh p {
    max-width: 42ch;
  }

  .phase6d-home .ph6-hr-grid,
  .phase6d-home .ph6-hr-grid.reverse {
    grid-template-columns: 1fr;
    direction: ltr;
  }

  .phase6d-home .ph6-hr-img {
    min-height: 0;
    aspect-ratio: 4 / 3;
  }

  .phase6d-home .ph6-hr-text {
    padding: clamp(1.4rem, 5vw, 2rem) clamp(1rem, 5vw, 1.8rem);
  }

  .phase6d-home .ph6-hr-text .badge {
    margin-bottom: 0.55rem;
  }

  .phase6d-home .ph6-hr-text h3 {
    font-size: clamp(1.35rem, 5.5vw, 1.8rem);
    line-height: 1.2;
  }

  .phase6d-home .ph6-food,
  .phase6d-home .ph6-gallery,
  .phase6d-home .ph6-handraised,
  .phase6d-home .ph6-confidence,
  .phase6d-home .ph6-delivery {
    padding-block: clamp(3.25rem, 8vw, 5rem);
  }

  .phase6d-home .ph6-delivery .ph6-wrap {
    grid-template-columns: 1fr;
  }

  .phase6d-home .ph6-trust-bar {
    gap: 0.8rem 1.1rem;
    margin-top: 2rem;
  }

  .phase6d-home .phase6d-en-hero {
    min-height: 0;
    padding: clamp(4.5rem, 11vh, 6rem) 1rem clamp(2.25rem, 7vh, 4rem);
  }

  .phase6d-home .phase6d-en-hero-inner {
    padding-inline: clamp(0.25rem, 2vw, 1rem) !important;
  }

  .phase6d-home .phase6d-en-hero-copy {
    max-width: 100% !important;
  }

  .phase6d-home .phase6d-en-hero-copy h1 {
    font-size: clamp(2.25rem, 8.5vw, 3rem) !important;
    line-height: 1.08 !important;
    margin-bottom: 1rem !important;
  }

  .phase6d-home .phase6d-en-hero-copy > p {
    font-size: clamp(0.98rem, 2.8vw, 1.08rem) !important;
    line-height: 1.65 !important;
    margin-bottom: 1.25rem !important;
  }

  .phase6d-home .phase6d-en-hero-ctas,
  .phase6d-home .phase6d-en-hero-trust {
    width: min(100%, 25rem);
    margin-inline: auto;
  }

  .phase6d-home .phase6d-en-hero-ctas {
    flex-direction: column;
    gap: 0.65rem !important;
  }

  .phase6d-home .phase6d-en-hero-ctas > a {
    width: 100%;
    text-align: center;
    min-height: 52px;
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 1.25;
  }

  .phase6d-home .phase6d-en-hero-trust {
    flex-direction: column;
    gap: 0.65rem !important;
    margin-top: 1.25rem !important;
  }
}

@media (max-width: 599px) {
  .phase6d-home .header .logo img,
  .phase6d-home .site-header .brand-logo img {
    height: 48px !important;
  }

  .phase6d-home .ph6-species-grid,
  .phase6d-home .ph6-food-strip-7 {
    grid-template-columns: 1fr;
  }

  .phase6d-home .ph6-food-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .phase6d-home .ph6-masonry {
    columns: 1;
  }

  .phase6d-home .ph6-trust-bar {
    flex-direction: column;
    align-items: flex-start;
  }
}

@media (max-width: 429px) {
  .phase6d-home .hero,
  .phase6d-home .hero-home,
  .phase6d-home .phase6d-en-hero {
    padding-top: 4.25rem;
    padding-bottom: 2rem;
  }

  .phase6d-home .hero h1,
  .phase6d-home .hero-home .hero-content h1 {
    font-size: clamp(2.25rem, 10vw, 2.65rem);
    line-height: 1.06;
  }

  .phase6d-home .trust-strip {
    display: grid;
    grid-template-columns: 1fr;
    justify-items: center;
  }

  .phase6d-home .trust-strip span {
    justify-content: center;
    text-align: center;
  }

  .phase6d-home .ph6-hr-text {
    padding-inline: 1rem;
  }

  .phase6d-home .ph6-food-strip {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 359px) {
  .phase6d-home .header .logo img,
  .phase6d-home .site-header .brand-logo img {
    height: 44px !important;
  }

  .phase6d-home .hero h1,
  .phase6d-home .hero-home .hero-content h1,
  .phase6d-home .phase6d-en-hero-copy h1 {
    font-size: 2.2rem !important;
  }

  .phase6d-home .hero-content,
  .phase6d-home .hero-home .hero-content,
  .phase6d-home .phase6d-en-hero-inner {
    padding-inline: 0 !important;
  }
}