/* KORAÉ — Responsive foundations P1 */
@media (max-width: 1100px) {
  :root { --gutter: 28px; }
  .header-inner { gap: 20px; }
  .desktop-nav { gap: 16px; }
  .hero { grid-template-columns: 1fr; }
  .hero-media { min-height: 66vh; max-height: 760px; }
  .hero-content { padding: 52px var(--gutter) 64px; }
  .drop-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .product-grid { grid-template-columns: repeat(3, minmax(0,1fr)); }
  .manifesto-grid, .delivery-grid, .about-grid { grid-template-columns: 1fr; gap: 30px; }
}

@media (max-width: 760px) {
  :root { --gutter: 14px; }
  .header-inner { grid-template-columns: auto 1fr auto; gap: 8px; min-height: 66px; }
  .brand img { width: 32px; height: 32px; }
  .brand-copy { display: flex; }
  .brand-copy span { display: none; }
  .desktop-nav { display: none; }
  .header-actions .search-header { display: inline-grid; }
  .menu-button { display: inline-grid; }
  .cart-trigger { padding: 9px 11px; }
  .hero-media { min-height: 58vh; max-height: none; }
  .hero-content { padding: 42px 22px 52px; }
  .hero-content h1 { font-size: clamp(48px, 14vw, 72px); }
  .hero-content p { font-size: 16px; }
  .hero-brand { margin-top: 40px; }
  .section { padding: 68px 0; }
  .section-header { align-items: start; flex-direction: column; gap: 12px; margin-bottom: 22px; }
  .section-header h2 { font-size: clamp(38px, 11vw, 50px); }
  .drop-grid, .product-grid { grid-template-columns: repeat(2, minmax(0,1fr)); gap: 18px 10px; }
  .drop-grid .product-card:nth-child(n+3) { display: none; }
  .product-info { padding-top: 10px; }
  .product-info h3 { font-size: 15px; }
  .product-kicker { font-size: 9px; letter-spacing: .08em; }
  .product-bottom strong { font-size: 16px; }
  .family-grid { grid-template-columns: 1fr; }
  .family-card { min-height: 260px; }
  .quickview-grid { grid-template-columns: 1fr; gap: 16px; }
  .quickview-grid img { aspect-ratio: 1 / 1.05; }
  .quickview-copy h2 { font-size: 36px; }
  .social-grid { grid-template-columns: 1fr; }
  .footer-inner { align-items: flex-start; flex-direction: column; }
  .floating-cart { width: calc(100% - 20px); justify-content: space-between; }

  /* Mobile dialogs become bottom sheets. */
  .dialog { position: fixed; inset: auto 0 0 0; margin: 0; width: 100%; max-width: none; max-height: 88vh; border-radius: var(--radius-lg) var(--radius-lg) 0 0; border: 0; border-top: 1px solid var(--line); animation: sheet-in .28s var(--ease-out); }
  .dialog[open] { display: flex; flex-direction: column; }
  .dialog-inner { padding: 14px 18px 18px; overflow-y: auto; max-height: 88vh; position: relative; }
  .dialog-inner::before { content: ""; position: sticky; top: 0; display: block; width: 36px; height: 4px; margin: 2px auto 14px; border-radius: var(--radius-pill); background: var(--line); }
  .dialog-head h2 { font-size: 30px; }
  .confirmation h2 { font-size: 38px; }
}

@media (max-width: 430px) {
  .header-actions { gap: 5px; }
  .icon-button, .menu-button { width: 38px; height: 38px; }
  .cart-trigger { font-size: 12px; }
  .hero-media { min-height: 54vh; }
  .hero-content { padding: 36px 20px 46px; }
  .hero-content h1 { font-size: clamp(44px, 13vw, 58px); }
}

@media (max-width: 359px) {
  :root { --gutter: 10px; }
  .drop-grid, .product-grid { gap: 16px 8px; }
  .product-bottom { align-items: flex-start; flex-direction: column; gap: 5px; }
}

@keyframes sheet-in {
  from { transform: translateY(100%); }
  to { transform: translateY(0); }
}


/* P3 — anchor safety with the permanent header */
#top, #drop, #collection, #about, #delivery-section, #socials, #universes { scroll-margin-top: calc(var(--header-height, 68px) + 18px); }
