/* ==========================================================================
   NASHIK EXPORTS — Responsive rules
   Breakpoints: 1280 · 1100 · 960 · 760 · 560 · 400
   ========================================================================== */

/* ≤ 1280 ------------------------------------------------------------------ */
@media (max-width: 1280px) {
  .site-nav__list { gap: 1.4rem; }
  .hero-feature { width: 230px; }
  .values { grid-template-columns: repeat(3, minmax(0, 1fr)); row-gap: var(--space-6); }
  .value:nth-child(3) { border-right: 0; }
  .value:nth-child(4) { padding-left: 0; }
}

/* ≤ 1100 — tablet landscape; switch to mobile navigation ---------------- */
@media (max-width: 1100px) {
  .site-nav,
  .site-header .btn--header { display: none; }
  .nav-toggle { display: inline-block; }
  .mobile-nav { display: block; }

  .hero-feature { display: none; }
  .hero__place { display: none; }

  .feature__grid { grid-template-columns: minmax(0, 1fr); }
  .feature__media { position: relative; top: 0; }
  .feature__img { aspect-ratio: 16 / 10; }
  .feature__content { padding: 0.5rem clamp(0.5rem, 2vw, 1.5rem) 1rem; }

  .why__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .why__intro { grid-column: 1 / -1; padding-right: 0; max-width: 680px; }

  .process { grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 1rem; }
  .process__step h3 { font-size: 1.2rem; }


  .site-footer__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .site-footer__brand { grid-column: 1 / -1; }

  .gallery-categories { grid-template-columns: repeat(3, minmax(0, 1fr)); row-gap: var(--space-6); }
  .overview { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* ≤ 960 — tablet portrait ------------------------------------------------- */
@media (max-width: 960px) {
  :root { --header-height: 76px; --header-height-scrolled: 66px; }

  .section-head--split { grid-template-columns: minmax(0, 1fr); align-items: start; gap: var(--space-5); }

  .story__grid,
  .split,
  .journey__grid,
  .faq__grid,
  .contact-layout,
  .product { grid-template-columns: minmax(0, 1fr); }
  .split--reverse > :first-child { order: 0; }

  .story__media { max-width: 560px; margin-inline: auto; width: 100%; }
  .split__media { max-width: 560px; width: 100%; margin-inline: auto; }
  .journey__aside,
  .faq__intro,
  .contact-aside,
  .product__gallery { position: static; }
  .journey__img { aspect-ratio: 16 / 9; }

  .category-grid { grid-template-columns: minmax(0, 1fr); }
  .category-card { min-height: 420px; }

  /* Process → vertical timeline */
  .process { grid-template-columns: minmax(0, 1fr); gap: 2.25rem; padding-left: 0; }
  .process__line { left: 2rem; right: auto; top: 2rem; bottom: 2rem; width: 1px; height: auto; }
  .process__line-fill { transform: scaleY(0); transform-origin: top; }
  .process.is-visible .process__line-fill { transform: scaleY(1); }
  .process__step { display: grid; grid-template-columns: 4rem minmax(0, 1fr); column-gap: 1.5rem; align-items: start; text-align: left; padding: 0; }
  .process__num { grid-row: span 2; margin: 0; }
  .process__step h3 { font-size: 1.4rem; margin: 0.9rem 0 0.4rem; }

  .mosaic { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-template-rows: none; grid-auto-rows: 240px; }
  .mosaic__item--a { grid-column: 1 / -1; grid-row: span 2; border-radius: var(--radius-lg); }
  .mosaic__item--b, .mosaic__item--c, .mosaic__item--d, .mosaic__item--e { grid-column: span 1; }
  .mosaic__item--e { display: none; }
  .mosaic__item--b { grid-column: 1 / -1; }

  .approach li { grid-template-columns: 3.5rem minmax(0, 1fr); }
  .approach li p { grid-column: 2; }

  .product__main { aspect-ratio: 4 / 3; }

  .varieties { grid-template-columns: minmax(0, 1fr); }
  .cta-strip { grid-template-columns: minmax(0, 1fr); }

  .contact-aside { order: 2; }
}

/* ≤ 760 — large phones ------------------------------------------------------ */
@media (max-width: 760px) {
  :root {
    --radius-xl: 32px;
    --radius-lg: 22px;
  }

  .hero { border-radius: 0 0 var(--radius-lg) var(--radius-lg); }
  .hero-slide__content { padding-bottom: 12rem; padding-top: calc(var(--header-height) + 2rem); }
  .hero-slide__media::after {
    background:
      linear-gradient(0deg, rgba(6, 30, 25, 0.92) 0%, rgba(6, 30, 25, 0.6) 45%, rgba(6, 30, 25, 0.35) 100%),
      linear-gradient(180deg, rgba(6, 30, 25, 0.5) 0%, rgba(6, 30, 25, 0) 25%);
  }
  .hero-slide { align-items: flex-end; }
  .hero__ui { padding-bottom: 5.25rem; }
  .hero__ui-inner { gap: 1rem; }
  .hero__dots { gap: 0.75rem; flex: 1; }
  .hero__dot { width: auto; flex: 1; }
  .hero__dot-label { display: none; }

  .page-hero { min-height: 540px; border-radius: 0 0 var(--radius-lg) var(--radius-lg); }
  .page-hero__media::after {
    background:
      linear-gradient(0deg, rgba(6, 30, 25, 0.9) 0%, rgba(6, 30, 25, 0.55) 55%, rgba(6, 30, 25, 0.4) 100%);
  }

  .fact-row { grid-template-columns: minmax(0, 1fr); gap: 1rem; }
  .fact-row li { grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr); align-items: baseline; gap: 1rem; }

  .story__media { padding: 0 2rem 3rem 0; }
  .split__img-small { right: 0; bottom: -1.5rem; }
  .story__badge { width: 118px; height: 118px; left: -0.5rem; bottom: 1rem; }
  .story__badge-year { font-size: 1.5rem; }

  .feature__panel,
  .global__panel { border-radius: var(--radius-xl); }
  .feature__img { aspect-ratio: 4 / 3.4; }
  .feature__tag { left: 1rem; bottom: 1rem; }

  /* Spec list → stacked */
  .spec-list { grid-template-columns: minmax(0, 1fr); }
  .spec-list__row { padding: 0.9rem 1.25rem; }
  .spec-list__row:nth-child(odd):not(.spec-list__row--wide) { border-right: 0; }
  .spec-card__title { padding: 1rem 1.25rem; }

  /* Spec table → stacked label / value */
  .spec-table thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
  .spec-table,
  .spec-table tbody,
  .spec-table tr,
  .spec-table th,
  .spec-table td { display: block; width: 100%; }
  .spec-table tbody tr { padding: 1rem 1.25rem; border-bottom: 1px solid var(--color-line); }
  .spec-table tbody tr:last-child { border-bottom: 0; }
  .spec-table tbody th,
  .spec-table tbody td { width: 100%; padding: 0; border: 0; }
  .spec-table tbody th { font-size: 0.7rem; letter-spacing: 0.16em; text-transform: uppercase; color: var(--color-accent-strong); margin-bottom: 0.25rem; }
  .spec-table tbody td { font-weight: 600; }
  .spec-table caption { display: block; padding: 1rem 1.25rem; }

  .why__grid { grid-template-columns: minmax(0, 1fr); }

  .timeline { padding-left: 2.75rem; }
  .timeline__track { left: 0.6rem; }
  .timeline__dot { left: calc(-2.75rem + 0.6rem - 7px); }


  .cta-banner { min-height: 480px; }

  .values { grid-template-columns: minmax(0, 1fr); }
  .value,
  .value + .value { padding: var(--space-5) 0; border-right: 0; border-bottom: 1px solid var(--color-line); display: grid; grid-template-columns: 4rem minmax(0, 1fr); column-gap: 1rem; }
  .value__num { grid-row: span 2; margin: 0; font-size: 2.4rem; }


  .overview { grid-template-columns: minmax(0, 1fr); }

  .gallery-categories { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .gallery-grid { columns: 2 220px; }

  .form-grid { grid-template-columns: minmax(0, 1fr); }
  .form-card { border-radius: var(--radius-lg); }
  .form-footer { flex-direction: column-reverse; align-items: stretch; }
  .form-footer .btn { width: 100%; }

  .site-footer { border-radius: var(--radius-lg) var(--radius-lg) 0 0; }
  .site-footer__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-6); }
  .site-footer__top .btn { width: 100%; }
}

/* ≤ 560 — phones ------------------------------------------------------------ */
@media (max-width: 560px) {
  :root { --header-height: 70px; --header-height-scrolled: 64px; }
  .site-header .site-logo { --logo-width: 158px; }

  .btn { white-space: normal; }
  .hero-slide__actions .btn,
  .btn-row .btn { flex: 1 1 100%; }
  .hero-slide__text { font-size: 1.02rem; }
  .hero-slide__content { padding-bottom: 10.5rem; }

  .mosaic { grid-template-columns: minmax(0, 1fr); grid-auto-rows: 260px; }
  .mosaic__item--a { grid-row: span 1; }
  .mosaic__item--b, .mosaic__item--c, .mosaic__item--d { grid-column: 1 / -1; }
  .mosaic__item--d { display: none; }

  .gallery-grid { columns: 1; }
  .gallery-categories { grid-template-columns: minmax(0, 1fr); }

  .product__thumbs { gap: 0.5rem; }
  .sizes { justify-content: space-between; gap: 0.5rem; padding: 1.25rem 1rem; }
  .size strong { font-size: 0.78rem; }

  .site-footer__grid { grid-template-columns: minmax(0, 1fr); }
  .site-footer__bottom { flex-direction: column; align-items: flex-start; }

  .accordion__summary { font-size: 1.15rem; padding: 1.25rem 0; }

}

/* ≤ 400 — small phones ------------------------------------------------------ */
@media (max-width: 400px) {
  .site-header .site-logo { --logo-width: 146px; }
  .story__circle { border-width: 6px; }
  .chips li { font-size: 0.78rem; }
}

/* ---------- Refinement pass: new components ---------- */
@media (max-width: 1280px) {
  .trust { grid-template-columns: minmax(0, 1fr); }
  .route__stop p { max-width: 20ch; }
}
@media (max-width: 1100px) {
  .origin__head { grid-template-columns: minmax(0, 1fr); align-items: start; }
  .stages { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
  .stages__line { display: none; }
  .stage--shipment { grid-column: 1 / -1; flex-direction: row; }
  .stage--shipment .stage__media { height: auto; width: 46%; flex-shrink: 0; min-height: 320px; }
  .stage--shipment .stage__num { left: auto; right: 1.25rem; }
  .range__grid { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 960px) {
  /* produce journey → vertical vine */
  .route__vine { display: none; }
  .route__list { grid-template-columns: minmax(0, 1fr); gap: 1.75rem; padding-left: 0; }
  .route__list::before { content: ""; position: absolute; left: 2rem; top: 2rem; bottom: 2rem; width: 2px; background: linear-gradient(180deg, var(--brand-leaf-light), rgba(159, 208, 138, 0.15)); transform: translateX(-1px); }
  .route__stop { display: grid; grid-template-columns: 4rem minmax(0, 1fr); column-gap: 1.25rem; align-items: start; text-align: left; }
  .route__node { grid-row: span 3; margin: 0; }
  .route__step { margin-top: 0.45rem; }
  .route__stop p { max-width: none; }

  .purpose__grid { grid-template-columns: minmax(0, 1fr); }
  .purpose__stem { height: 90px; }
  .purpose__stem svg { inset: 0; height: 100%; }
  .purpose__leaf--1 { top: 52%; } .purpose__leaf--2 { top: 30%; } .purpose__leaf--3 { top: 8%; }

  .founder { grid-template-columns: minmax(0, 1fr); }
  .founder__body { padding-left: 0; padding-top: var(--space-5); border-left: 0; border-top: 1px solid var(--color-line-strong); }
  .varieties { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 760px) {
  .trust__list { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .stages { grid-template-columns: minmax(0, 1fr); }
  .stage--shipment { flex-direction: column; }
  .stage--shipment .stage__media { width: 100%; min-height: 0; height: 240px; }
  .stage--shipment .stage__num { left: 1.25rem; right: auto; }
  .stage__media { height: 240px; }
  .range__tiles { grid-template-rows: 200px 200px; }
  .purpose__pillars { grid-template-columns: minmax(0, 1fr); }
  .founder__facts { grid-template-columns: minmax(0, 1fr); }
  .origin__foot { flex-direction: column; align-items: flex-start; }
  .site-footer__bottom { padding-bottom: 6rem; }
}
@media (max-width: 560px) {
  .sizes { justify-content: space-between; gap: 0.5rem; padding: 1.25rem 1rem; }
  .size__visual { width: calc(var(--s) * 0.6); height: calc(var(--s) * 0.6); }
  .size__visual::after { inset: -4px; }
  .size strong { font-size: 0.74rem; }
  .range__tiles { grid-template-columns: minmax(0, 1fr); grid-template-rows: 300px 200px 200px; }
  .range__tile--1 { grid-row: auto; }
  .variety__photo { width: 4.2rem; height: 4.2rem; }
  .feature__kicker { display: none; }

  /* floating UI: compact, never wider than the screen */
  .lang { left: 0.75rem; bottom: max(0.75rem, env(safe-area-inset-bottom)); }
  .wa-float { right: 0.75rem; bottom: max(0.75rem, env(safe-area-inset-bottom)); padding: 0.35rem 0.95rem 0.35rem 0.35rem; gap: 0.55rem; }
  .wa-float__icon { width: 2.35rem; height: 2.35rem; }
  .wa-float__glyph { width: 1.25rem; height: 1.25rem; }
  .wa-float__kicker { font-size: 0.56rem; }
  .wa-float__label { font-size: 0.82rem; }
  .lang__toggle { min-height: 3.05rem; padding: 0.5rem 0.8rem; }
  .lang__current { display: none; }
  .lang__code { display: inline; }
}
@media (max-width: 400px) {
  .trust__list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .wa-float__label { font-size: 0.78rem; }
}

/* Larger screens ------------------------------------------------------------ */
@media (min-width: 1600px) {
  :root { --container-width: 1320px; }
}

/* Product catalogue */
@media (max-width: 960px) {
  .catalog-group { grid-template-columns: minmax(0, 1fr); gap: var(--space-4); }
  .product--text .product__specs { position: static; }
  .varieties--2 { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 560px) {
  .catalog-cards { grid-template-columns: minmax(0, 1fr); }
  .home-range { gap: var(--space-3); }
}

/* Source-to-supply strip: swipeable row on small screens instead of three stacked images */
@media (max-width: 760px) {
  .process-gallery { grid-template-columns: none; grid-auto-flow: column; grid-auto-columns: 78%; gap: var(--space-4); overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; padding-bottom: 0.25rem; }
  .process-gallery::-webkit-scrollbar { display: none; }
  .process-gallery__item { scroll-snap-align: start; }
}
