/* ==========================================================
   UNITRADE INTERNATIONAL — responsive.css
   Laptop <= 1280 · Tablet <= 1024 · Mobile <= 767 · Small <= 400
   ========================================================== */

/* ---------- Laptop ---------- */
@media (max-width: 1280px) {
  .nav__list { gap: 18px; }
  .nav__list a { font-size: .875rem; }
  .products__grid { grid-template-columns: repeat(2, 1fr); }
  .card__img { aspect-ratio: 16 / 9; }
  .card__img--product { aspect-ratio: 4 / 3; padding: 28px 20px 16px; }
}

/* ---------- Tablet: navigation collapses ---------- */
@media (max-width: 1100px) {
  .burger { display: block; }
  .nav {
    position: fixed; inset: 0; z-index: -1; flex-direction: column; align-items: stretch; justify-content: flex-start; gap: 28px;
    padding: calc(var(--header-h) + env(safe-area-inset-top, 0px) + 24px) var(--gutter) 32px;
    background: var(--color-primary); overflow-y: auto;
    visibility: hidden; opacity: 0; transition: opacity .3s, visibility .3s;
  }
  .nav.is-open { visibility: visible; opacity: 1; }
  .nav__list { flex-direction: column; gap: 0; border-top: 1px solid var(--color-line-dark); }
  .nav__list a { display: block; font-size: 1.5rem; font-weight: 600; font-stretch: 112%; padding-block: 16px; border-bottom: 1px solid var(--color-line-dark); white-space: normal; }
  .nav__list a::after { display: none; }
  .lang { align-self: flex-start; }
  .lang__btn { min-width: 56px; min-height: 48px; font-size: .9375rem; }
  .nav__cta { min-height: 56px; }
  body.nav-open { overflow: hidden; }
}

@media (max-width: 1024px) {
  .trust__grid { grid-template-columns: repeat(2, 1fr); }
  .trust__item { padding-inline: 0 24px; border-inline-start: 0; border-top: 1px solid var(--color-line); }
  .trust__item:nth-child(-n+2) { border-top: 0; }
  .steps { grid-template-columns: 1fr; }
  .steps::before { inset-inline: 7px auto; top: 0; bottom: 0; width: 1px; height: auto; }
  .step { padding: 0 0 36px; padding-inline-start: 48px; }
  .step:last-child { padding-bottom: 0; }
  .step__n { margin-bottom: 4px; }
  .step p { max-width: 52ch; }
  .why__grid { grid-template-columns: repeat(2, 1fr); }
  .quote__grid { grid-template-columns: 1fr; }
  .contact { position: static; }
  .footer__grid { grid-template-columns: 1fr 1fr; }
  .hero__row { grid-template-columns: 1fr; }
}

/* ---------- Mobile ---------- */
@media (max-width: 767px) {
  :root { --header-h: 64px; }
  body { font-size: 1rem; }
  .about__grid, .logistics__grid, .markets__grid { grid-template-columns: 1fr; }
  .about__fig { order: -1; }
  .about__fig img { aspect-ratio: 4 / 3; }
  .about__fig::after { display: none; }
  .hero__img { object-position: 58% 50%; }
  .hero__cta .btn, .cta__btns .btn { flex: 1 1 100%; }
  .hero__tags li { padding-inline-end: 12px; margin-inline-end: 12px; }
  .products__grid { grid-template-columns: 1fr; }
  .why__grid { grid-template-columns: 1fr; }
  .why__item { padding: 28px 0; display: grid; grid-template-columns: 32px 1fr; column-gap: 20px; }
  .why__item .ico { grid-row: span 2; }
  .why__item h3 { margin-top: 2px; }
  .form { grid-template-columns: 1fr; }
  .form__foot .btn { width: 100%; }
  .globe { order: -1; }
  .globe svg { width: min(78%, 360px); }
  .footer__grid { grid-template-columns: 1fr; gap: 36px; }
  .footer__base { flex-direction: column; }
}

/* ---------- Small phones ---------- */
@media (max-width: 400px) {
  .trust__grid { grid-template-columns: 1fr; }
  .trust__item, .trust__item:nth-child(2) { border-top: 1px solid var(--color-line); padding: 20px 0; }
  .trust__item:first-child { border-top: 0; }
  .who { grid-template-columns: 1fr; }
  .logo__img { width: clamp(150px, 48vw, 190px); }
}

/* ---------- Large screens ---------- */
@media (min-width: 1700px) {
  :root { --container: 1440px; }
}

/* ---------- Reduced motion ---------- */
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation: none !important; transition: none !important; }
  .js .reveal { opacity: 1; transform: none; }
  .logistics__fig img { height: 100%; transform: none !important; }
}

/* ---------- Print ---------- */
@media print {
  .header, .burger, .cta__btns, .hero__cta { display: none; }
  .js .reveal { opacity: 1; transform: none; }
}

/* ---------- Manufacturer portfolio ---------- */
@media (max-width: 1180px) {
  .partners__inner { grid-template-columns: 1fr; }
  .partners__title { max-width: 22ch; }
  .brand-products { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .brand-products--three { grid-template-columns: repeat(3, minmax(0,1fr)); }
}

@media (max-width: 900px) {
  .partners__logos { grid-template-columns: repeat(2, 1fr); }
  .partner-logo:nth-child(3) { border-inline-start: 0; border-top: 1px solid rgba(13,27,42,.08); }
  .partner-logo:nth-child(4) { border-top: 1px solid rgba(13,27,42,.08); }
  .brand-group__head { grid-template-columns: 1fr; }
  .brand-group__head > p { justify-self: start; }
  .brand-products--three { grid-template-columns: repeat(2, minmax(0,1fr)); }
}

@media (max-width: 620px) {
  .partners__logos { grid-template-columns: 1fr 1fr; }
  .partner-logo { min-height: 132px; padding: 18px 12px 14px; }
  .partner-logo img { height: 68px; }
  .brand-group__identity { align-items: flex-start; }
  .brand-group__identity img { width: 88px; height: 66px; }
  .brand-products,
  .brand-products--three,
  .brand-products--single { grid-template-columns: 1fr; }
  .product-card__visual { min-height: 238px; }
  .product-card__visual img { height: 205px; }
  .brand-group--white { padding-inline: 14px; }
}
