/* ================================================================
   MR.DENIM — FULL RESPONSIVE SYSTEM (All Devices)
   Covers: Navbar, Homepage Sections, Footer
   Breakpoints:
     xs  : 0–374px   (tiny phones, Galaxy Fold)
     sm  : 375–575px (mobile portrait)
     md  : 576–767px (large mobile / small tablet)
     lg  : 768–991px (tablet portrait)
     xl  : 992–1199px(tablet landscape / small laptop)
     2xl : 1200px+   (desktop)
   ================================================================ */

/* ── Tailwind md:hidden patch (not generated by Tailwind build) ── */
@media (min-width: 768px) {
  .md\:hidden { display: none !important; }
}

/* ================================================================
   ROOT TOKENS — Mobile-First Fluid System
   ================================================================ */
:root {
  --navbar-height: 72px;
}

.page-home-dark {
  /* Fluid Spacing */
  --space-8:  clamp(6px,  1vw,  8px);
  --space-16: clamp(12px, 2vw, 16px);
  --space-24: clamp(16px, 3vw, 24px);
  --space-32: clamp(20px, 4vw, 32px);
  --space-48: clamp(28px, 5vw, 48px);
  --space-64: clamp(40px, 6.5vw, 64px);
  --space-96: clamp(56px, 9vw,  96px);

  /* Fluid Typography */
  --font-hero: clamp(2.2rem, 8vw,  6.75rem);
  --font-h2:   clamp(1.75rem,5vw, 3.625rem);
  --font-h3:   clamp(1.375rem,4vw,2.5rem);
  --font-body: clamp(0.875rem,1.5vw,1rem);
}

/* ================================================================
   GLOBAL LAYOUT FIXES
   ================================================================ */
html, body {
  overflow-x: hidden;
  max-width: 100%;
}

/* Make all container-luxury fluid on all screen sizes */
.container-luxury {
  width: 100%;
  padding-left:  clamp(16px, 4vw, 40px);
  padding-right: clamp(16px, 4vw, 40px);
}

/* ================================================================
   ── ANNOUNCEMENT BAR ──
   ================================================================ */
.announcement-bar {
  font-size: clamp(9px, 1.2vw, 11px);
  height: clamp(30px, 4vw, 36px);
}

.announcement-item {
  padding: 0 clamp(20px, 4vw, 60px);
}

/* ================================================================
   ── NAVBAR — Full Responsive ──
   ================================================================ */
.main-nav {
  width: 100%;
  left: 0;
  right: 0;
}

.nav-inner {
  padding: 0 clamp(16px, 4vw, 40px);
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

/* Logo fluid sizing */
.nav-logo {
  font-size: clamp(14px, 3.5vw, 22px);
  letter-spacing: clamp(0.08em, 1.5vw, 0.2em);
  white-space: nowrap;
  flex-shrink: 0;
}

/* Nav icons touch-friendly */
.nav-icon-btn {
  min-width: 40px;
  min-height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.nav-icons {
  gap: clamp(4px, 2vw, 20px);
  flex-shrink: 0;
}

/* Search bar fluid */
.search-bar-inner {
  padding: 0 clamp(16px, 4vw, 40px);
}

/* Desktop nav links: visible md+ */
.nav-links {
  display: none;
}

/* Hamburger: visible below md */
.mobile-menu-btn {
  display: flex;
  min-width: 44px;
  min-height: 44px;
  align-items: center;
  justify-content: center;
}

/* ── Tablet+ (768px+): Show desktop nav, hide hamburger ── */
@media (min-width: 768px) {
  .nav-links {
    display: flex;
    align-items: center;
    gap: clamp(20px, 3vw, 40px);
  }

  .mobile-menu-btn {
    display: none;
  }

  .nav-inner {
    padding: 0 clamp(24px, 3vw, 40px);
  }
}

/* ── Large Desktop (1200px+) ── */
@media (min-width: 1200px) {
  .nav-inner {
    padding: 0 40px;
  }
}

/* ── Mega Dropdown responsive ── */
@media (max-width: 1199px) {
  .men-dropdown,
  .women-dropdown,
  .kids-dropdown {
    left: 0;
    transform: translateX(0) translateY(10px);
    min-width: 240px;
  }

  .nav-item-dropdown:hover .men-dropdown,
  .nav-item-dropdown:hover .women-dropdown,
  .nav-item-dropdown:hover .kids-dropdown {
    transform: translateX(0) translateY(0);
  }
}

/* ================================================================
   ── MOBILE MENU OVERLAY ──
   ================================================================ */
.mobile-menu {
  width: min(420px, 100vw);
  padding: clamp(60px, 10vw, 80px) clamp(24px, 6vw, 48px) clamp(24px, 5vw, 48px);
}

.mobile-nav-link {
  font-size: clamp(24px, 7vw, 32px);
  padding: clamp(12px, 2vw, 16px) 0;
}

/* ================================================================
   HOMEPAGE SECTIONS — phd- classes
   ================================================================ */

/* ── Section Containers ── */
.phd-container {
  padding-left:  clamp(16px, 4vw, 40px);
  padding-right: clamp(16px, 4vw, 40px);
  width: 100%;
}

.phd-section {
  padding: var(--space-64) 0;
}

/* Section header */
.page-home-dark .phd-section-header {
  text-align: center;
  margin-bottom: var(--space-48);
}

/* ── Typography ── */
.phd-hero-headline {
  font-size: var(--font-hero);
  line-height: 0.95;
}

.phd-section-title,
.phd-look-title,
.phd-bs-headline,
.phd-featured-hero-name {
  font-size: var(--font-h2);
  line-height: 1.1;
}

.phd-hero-subtext,
.phd-section-sub,
.phd-look-desc,
.phd-bs-body {
  font-size: var(--font-body);
  line-height: 1.6;
}

.phd-eyebrow,
.phd-hero-eyebrow,
.phd-col-tag {
  font-size: clamp(9px, 1.2vw, 11px);
  letter-spacing: 0.25em;
}

/* ================================================================
   ── HERO SECTION ──
   ================================================================ */
.phd-hero {
  min-height: 100svh;
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  padding-top: var(--navbar-height);
}

.phd-hero-content {
  width: 100%;
  max-width: 100%;
  padding: var(--space-48) var(--space-24) var(--space-48);
  text-align: center;
}

.phd-hero-season {
  top: calc(var(--navbar-height) + 12px);
  left: 50%;
  transform: translateX(-50%);
  font-size: clamp(9px, 2vw, 11px);
}

.phd-hero-gold-line {
  margin: var(--space-24) auto;
}

.phd-hero-ctas {
  flex-direction: column;
  align-items: stretch;
  gap: var(--space-16);
}

.phd-hero-scroll {
  display: none;
}

/* sm: 576px — Buttons side by side */
@media (min-width: 576px) {
  .phd-hero-ctas {
    flex-direction: row;
    justify-content: center;
    align-items: center;
  }
}

/* lg: 768px — Desktop hero layout */
@media (min-width: 768px) {
  .phd-hero {
    align-items: flex-end;
    justify-content: flex-start;
  }

  .phd-hero-content {
    max-width: 700px;
    padding: 0 40px 72px;
    text-align: left;
  }

  .phd-hero-season {
    top: calc(var(--navbar-height) + 28px);
    left: 40px;
    transform: none;
  }

  .phd-hero-gold-line {
    margin: 24px 0 28px;
  }

  .phd-hero-ctas {
    justify-content: flex-start;
  }

  .phd-hero-scroll {
    display: flex;
  }
}

/* ================================================================
   ── IMAGES & ASPECT RATIOS ──
   ================================================================ */
.phd-hero-img,
.phd-col-img,
.phd-product-img,
.phd-look-img,
.phd-bs-img,
.phd-featured-img {
  object-fit: cover !important;
  width: 100%;
  height: 100%;
}

.phd-col-img-wrap,
.phd-product-img-wrap {
  aspect-ratio: 3/4;
  height: auto;
}

@media (min-width: 768px) {
  .phd-col-img-wrap,
  .phd-product-img-wrap {
    aspect-ratio: 4/5;
  }
}

/* ================================================================
   ── BUTTONS (Accessible Touch Targets) ──
   ================================================================ */
.phd-btn-primary,
.phd-btn-outline,
.phd-btn-ghost,
.phd-btn-text {
  min-height: 44px;
  padding: var(--space-16) var(--space-32);
  display: inline-flex;
  justify-content: center;
  align-items: center;
  font-size: clamp(11px, 1.5vw, 13px);
  width: 100%;
  cursor: pointer;
}

@media (min-width: 576px) {
  .phd-btn-primary,
  .phd-btn-outline,
  .phd-btn-ghost,
  .phd-btn-text {
    width: auto;
  }
}

/* Disable hover animation on touch devices */
@media (hover: none) {
  .phd-btn-primary:hover,
  .phd-btn-outline:hover,
  .phd-btn-ghost:hover,
  .phd-btn-text:hover {
    gap: 10px;
  }
}

/* ================================================================
   ── TRUST STRIP ──
   ================================================================ */
.phd-trust-strip {
  overflow-x: hidden;
}

.phd-trust-inner {
  display: flex;
  flex-direction: column;
  gap: var(--space-16);
  padding: var(--space-24) 0;
  align-items: flex-start;
}

.phd-trust-item {
  width: 100%;
  justify-content: flex-start;
  gap: 12px;
}

.phd-trust-divider {
  width: 100%;
  height: 1px;
  margin: 4px 0;
}

@media (min-width: 576px) {
  .phd-trust-inner {
    flex-direction: row;
    flex-wrap: wrap;
    gap: 16px 24px;
    justify-content: space-around;
  }

  .phd-trust-item {
    width: auto;
  }

  .phd-trust-divider {
    display: none;
  }
}

@media (min-width: 768px) {
  .phd-trust-inner {
    flex-wrap: nowrap;
    gap: 20px;
    padding: 24px 0;
    align-items: center;
    justify-content: center;
  }

  .phd-trust-item {
    justify-content: center;
    width: auto;
  }

  .phd-trust-divider {
    display: block;
    width: 1px;
    height: 24px;
    margin: 0;
  }
}

/* ================================================================
   ── PRODUCT GRIDS ──
   ================================================================ */

/* xs–sm: 1 column */
.phd-products-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-24);
}

/* sm 576px: 2 columns */
@media (min-width: 576px) {
  .phd-products-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

/* xl 992px: 4 columns */
@media (min-width: 992px) {
  .phd-products-grid {
    grid-template-columns: repeat(4, 1fr);
    gap: var(--space-32);
  }
}

/* ── Stats Grid ── */
.phd-stats-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--space-24);
}

@media (min-width: 992px) {
  .phd-stats-grid {
    grid-template-columns: repeat(4, 1fr);
  }
}

/* ── Filter Bar ── */
.phd-filter-bar {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-start;
}

@media (min-width: 768px) {
  .phd-filter-bar {
    flex-wrap: nowrap;
    justify-content: center;
  }
}

.phd-filter-tab {
  min-height: 44px;
  white-space: nowrap;
  flex: 0 0 auto;
}

/* ================================================================
   ── BRAND STORY / FEATURED SPLIT ──
   ================================================================ */
.phd-bs-grid,
.phd-featured-split {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-32);
}

@media (min-width: 992px) {
  .phd-bs-grid,
  .phd-featured-split {
    grid-template-columns: repeat(2, 1fr);
    gap: 60px;
  }
}

/* ================================================================
   ── SHOP THE LOOK ──
   ================================================================ */
.phd-look-entry {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-32);
  margin-bottom: var(--space-64);
}

/* Disable RTL alternating on mobile */
.phd-look-reverse {
  direction: ltr;
}

.phd-look-img-wrap {
  aspect-ratio: 4/5;
  overflow: hidden;
}

@media (min-width: 768px) {
  .phd-look-entry {
    grid-template-columns: repeat(2, 1fr);
    gap: 60px;
    margin-bottom: 100px;
  }
}

@media (min-width: 992px) {
  .phd-look-entry {
    gap: 80px;
    margin-bottom: 140px;
  }

  .phd-look-reverse {
    direction: rtl;
  }

  .phd-look-reverse > * {
    direction: ltr;
  }

  .phd-look-img-wrap {
    aspect-ratio: auto;
  }
}

/* ================================================================
   ── LOOKBOOK GRID ──
   ================================================================ */
.phd-lookbook-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 8px;
}

.phd-lb-item:first-child {
  grid-column: span 1;
  grid-row: span 1;
}

@media (min-width: 480px) {
  .phd-lookbook-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (min-width: 992px) {
  .phd-lookbook-grid {
    grid-template-columns: repeat(3, 1fr);
  }

  .phd-lb-item:first-child {
    grid-column: span 2;
    grid-row: span 2;
  }
}

/* ================================================================
   ── WOMEN'S SPOTLIGHT ──
   ================================================================ */
.phd-spotlight-content {
  padding: 0 var(--space-24) var(--space-48);
}

.phd-spotlight-headline {
  font-size: var(--font-hero);
}

@media (min-width: 992px) {
  .phd-spotlight-content {
    padding: 0 80px 72px;
  }
}

/* ================================================================
   ── FEATURED SUB-GRID ──
   ================================================================ */
.phd-featured-sub-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 10px;
}

@media (min-width: 576px) {
  .phd-featured-sub-grid {
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
  }
}

@media (min-width: 992px) {
  .phd-featured-sub-grid {
    gap: 20px;
  }
}

/* ================================================================
   ── REVIEW / TESTIMONIAL CARDS ──
   ================================================================ */
.phd-review-card {
  padding: var(--space-24) var(--space-24) var(--space-16);
  margin: 0 4px var(--space-24);
}

@media (min-width: 768px) {
  .phd-review-card {
    padding: 44px 40px 36px;
    margin: 0 8px 40px;
  }
}

/* ================================================================
   ── BRAND STATS BAR ──
   ================================================================ */
.phd-stats-bar {
  padding: var(--space-32) 0;
}

.phd-stat {
  padding: var(--space-24) var(--space-16);
  border-right: none;
  border-bottom: 1px solid rgba(255,255,255,0.05);
}

.phd-stat:last-child {
  border-bottom: none;
}

.phd-stat-number {
  font-size: clamp(36px, 8vw, 72px);
}

.phd-stat-label {
  font-size: clamp(10px, 1.5vw, 12px);
}

@media (min-width: 768px) {
  .phd-stats-grid {
    grid-template-columns: repeat(4, 1fr);
  }

  .phd-stat {
    border-bottom: none;
    border-right: 1px solid rgba(255,255,255,0.05);
    padding: 32px 20px;
  }

  .phd-stat:last-child {
    border-right: none;
  }
}

/* ================================================================
   ── COLLECTIONS SECTION — Luxury Responsive ──
   ================================================================ */

/* ── Default Mobile: Stack vertically ── */
.lux-collections {
  overflow-x: hidden;
}
.lux-col-rule-wrap {
  padding: 24px 20px 0;
}
.lux-col-rule-wrap--bottom { padding: 0 20px 24px; }
.lux-col-col-header { padding: 32px 20px 36px; }
.lux-col-container { padding: 0 16px 40px; }

.lux-col-grid {
  grid-template-columns: 1fr;
  grid-template-rows: auto;
  gap: 4px;
}
.lux-col-card--hero { grid-row: span 1; }
.lux-col-card--hero,
.lux-col-card--accent {
  min-height: 320px;
}
.lux-col-card:hover .lux-col-desc { opacity: 0; }
.lux-col-cta-row { opacity: 1; transform: none; }
.lux-col-desc { display: none; }

/* Trust strip: stack on mobile */
.lux-col-trust { padding: 24px 20px; }
.lux-col-trust-inner {
  flex-direction: column;
  gap: 20px;
}
.lux-col-trust-sep { width: 60px; height: 1px;
  background: linear-gradient(90deg, transparent, rgba(201,169,110,0.25), transparent);
}

/* ── sm 480px: 2 columns ── */
@media (min-width: 480px) {
  .lux-col-grid {
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: auto;
  }
  .lux-col-card--hero {
    min-height: 380px;
  }
  .lux-col-card--accent {
    min-height: 240px;
  }
}

/* ── md 768px: 2 tall + 2 small ── */
@media (min-width: 768px) {
  .lux-col-rule-wrap { padding: 32px 40px 0; }
  .lux-col-rule-wrap--bottom { padding: 0 40px 32px; }
  .lux-col-container { padding: 0 24px 48px; }
  .lux-col-grid {
    grid-template-columns: repeat(4, 1fr);
    grid-template-rows: 420px 300px;
  }
  .lux-col-card--hero { grid-row: span 2; min-height: unset; }
  .lux-col-card--accent { min-height: unset; }
  .lux-col-desc { display: block; }
  .lux-col-card:hover .lux-col-desc { opacity: 1; }

  /* Trust strip: row */
  .lux-col-trust-inner { flex-direction: row; }
  .lux-col-trust-sep { width: 1px; height: 52px;
    background: linear-gradient(180deg, transparent, rgba(201,169,110,0.25), transparent);
  }
}

/* ── xl 1200px: Full luxury grid ── */
@media (min-width: 1200px) {
  .lux-col-grid {
    grid-template-rows: 480px 360px;
  }
  .lux-col-container { padding: 0 40px 60px; }
}

/* ── Touch devices: Disable hover effects ── */
@media (hover: none) {
  .lux-col-desc { display: none !important; }
  .lux-col-cta-row { opacity: 1 !important; transform: none !important; }
  .lux-col-card:hover .lux-col-img { transform: none !important; }
  .lux-col-card:hover .lux-col-border-glow { border-color: transparent !important; }
}

/* ================================================================
   ── NEWSLETTER SECTION ──
   ================================================================ */
.phd-newsletter-form {
  flex-direction: column;
  gap: var(--space-16);
}

@media (min-width: 576px) {
  .phd-newsletter-form {
    flex-direction: row;
    flex-wrap: nowrap;
    gap: 0;
  }
}

/* ================================================================
   ── COMMUNITY CTA ──
   ================================================================ */
.phd-cta-section {
  text-align: center;
  padding: var(--space-64) var(--space-24);
}

/* ================================================================
   ── PARTNERS STRIP ──
   ================================================================ */
.phd-partners-inner {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: clamp(24px, 5vw, 60px);
}

/* ================================================================
   ── BACK TO TOP ──
   ================================================================ */
#back-to-top {
  bottom: clamp(16px, 3vw, 40px);
  right:  clamp(16px, 3vw, 40px);
  width:  44px;
  height: 44px;
}

/* ================================================================
   ── SECTION HEADER SPACING ──
   ================================================================ */
.phd-section-header {
  margin-bottom: var(--space-48);
}

/* ================================================================
   FOOTER — Full Responsive
   ================================================================ */

/* Default (mobile): single column */
.footer-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: clamp(28px, 5vw, 48px);
  padding-bottom: clamp(28px, 5vw, 48px);
  border-bottom: 1px solid rgba(255,255,255,0.06);
}

.footer-bottom {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 12px;
  padding-top: 24px;
}

.site-footer {
  padding: clamp(48px, 8vw, 80px) 0 clamp(24px, 4vw, 40px);
}

.footer-brand-logo {
  font-size: clamp(16px, 4vw, 20px);
}

.footer-tagline {
  font-size: clamp(11px, 1.5vw, 13px);
}

.footer-link {
  font-size: clamp(12px, 1.5vw, 13px);
  padding: clamp(5px, 1vw, 8px) 0;
}

.footer-insta-grid {
  display: flex;
  gap: 4px;
  flex-wrap: nowrap;
}

.footer-insta-thumb {
  width: clamp(60px, 20vw, 72px);
  height: clamp(60px, 20vw, 72px);
}

/* sm 576px: 2-column footer */
@media (min-width: 576px) {
  .footer-grid {
    grid-template-columns: 1fr 1fr;
  }

  .footer-bottom {
    flex-direction: row;
    justify-content: space-between;
    text-align: left;
  }
}

/* lg 768px: 3-column footer */
@media (min-width: 768px) {
  .footer-grid {
    grid-template-columns: 1.4fr 1fr 1fr;
  }
}

/* xl 992px: All 4 columns */
@media (min-width: 992px) {
  .footer-grid {
    grid-template-columns: 1.5fr 1fr 1fr 1fr;
    gap: 48px;
  }

  .footer-bottom {
    padding-top: 32px;
  }
}

/* ================================================================
   UNIVERSAL RESPONSIVE PATCHES
   Fixes for inherited desktop-first CSS in app.css
   ================================================================ */

/* ── Extra Small (< 375px): Galaxy Fold etc ── */
@media (max-width: 374px) {
  :root { --navbar-height: 60px; }

  .nav-logo { font-size: 13px; letter-spacing: 0.06em; }
  .nav-icons { gap: 2px; }
  .nav-icon-btn { min-width: 34px; width: 34px; }
  .nav-icon-btn svg { width: 17px; height: 17px; }

  .phd-hero-headline { font-size: 2rem; }
  .phd-section-title { font-size: 1.6rem; }

  .footer-grid { gap: 20px; }
  .footer-insta-thumb { width: 52px; height: 52px; }

  /* QV modal */
  .qv-modal { padding: 8px; }
  .qv-info-col { padding: 20px 14px; }

  .mobile-menu { padding: 56px 20px 24px; }
  .mobile-nav-link { font-size: 22px; }
}

/* ── Small Mobile (375px – 575px) ── */
@media (max-width: 575px) {
  :root { --navbar-height: 64px; }

  /* Navbar */
  .nav-inner { padding: 0 16px; }
  .nav-logo { font-size: 15px; }
  .nav-icons { gap: 4px; }

  /* Hero */
  .phd-hero-content {
    padding: 0 16px 48px;
    max-width: 100%;
  }
  .phd-hero-season {
    top: calc(var(--navbar-height) + 10px);
    left: 50%;
    transform: translateX(-50%);
    font-size: 9px;
  }
  .phd-hero-headline { font-size: clamp(2rem, 11vw, 3rem); line-height: 1; }
  .phd-hero-ctas { gap: 12px; }
  .phd-hero-ctas a { justify-content: center; }

  /* Trust */
  .phd-trust-inner { flex-direction: column; gap: 12px; }
  .phd-trust-text  { font-size: 12px; }

  /* Sections */
  .phd-section { padding: 44px 0; }
  .phd-section-title { font-size: clamp(1.6rem, 8vw, 2.2rem); }

  /* Grids */
  .phd-col-grid,
  .phd-products-grid { grid-template-columns: 1fr; }

  /* Stats */
  .phd-stats-grid { grid-template-columns: 1fr 1fr; }
  .phd-stat { padding: 20px 12px; }
  .phd-stat-number { font-size: 36px; }

  /* Shop look */
  .phd-look-entry { gap: 24px; margin-bottom: 48px; }
  .phd-look-number { font-size: 40px; top: 8px; left: 8px; }

  /* Featured */
  .phd-featured-text { padding: 32px 16px; }
  .phd-featured-hero-name { font-size: 24px; }

  /* Lookbook */
  .phd-lookbook-grid { grid-template-columns: 1fr; }
  .phd-lb-item:first-child { grid-column: span 1; grid-row: span 1; }

  /* Footer */
  .footer-grid { grid-template-columns: 1fr; gap: 24px; }
  .footer-bottom { flex-direction: column; text-align: center; gap: 10px; }
  .footer-copy, .footer-legal { font-size: 10px; }
  .footer-legal { display: flex; flex-wrap: wrap; gap: 4px; justify-content: center; }

  /* Announcement bar */
  .announcement-bar { font-size: 9px; height: 28px; }
  .announcement-item { padding: 0 16px; }
  .announcement-close { right: 8px; }

  /* Container */
  .container-luxury,
  .phd-container { padding-left: 16px; padding-right: 16px; }

  /* Brand story */
  .phd-bs-body,
  .phd-bs-grid { gap: 20px; }

  /* Quick view mobile */
  .qv-panel { grid-template-columns: 1fr; }
  .qv-img-wrap { min-height: 260px; }
  .qv-info-col { padding: 24px 18px; }
  .qv-modal { padding: 10px; }

  /* Filter bar */
  .phd-filter-tab { flex: 1 1 calc(50% - 10px); text-align: center; padding: 10px 8px; }
  .phd-filter-bar { gap: 8px; }

  /* Collection cards */
  .phd-col-card--tall .phd-col-img-wrap { min-height: 280px; }
}

/* ── Medium Mobile (576px – 767px) ── */
@media (min-width: 576px) and (max-width: 767px) {
  /* Navbar still mobile */
  .nav-inner { padding: 0 20px; }
  .nav-logo  { font-size: 17px; }

  /* 2-col products */
  .phd-products-grid,
  .phd-col-grid { grid-template-columns: repeat(2, 1fr); }

  /* Stats */
  .phd-stats-grid { grid-template-columns: repeat(2, 1fr); }

  /* Hero buttons side by side */
  .phd-hero-ctas { flex-direction: row; justify-content: center; }

  /* Lookbook 2 cols */
  .phd-lookbook-grid { grid-template-columns: repeat(2, 1fr); }

  /* Footer 2 cols */
  .footer-grid { grid-template-columns: repeat(2, 1fr); }
}

/* ── Tablet Portrait (768px – 991px) ── */
@media (min-width: 768px) and (max-width: 991px) {
  /* Nav is now visible */
  .nav-links { gap: 20px; }
  .nav-link  { font-size: 10px; }

  /* Products 2 col */
  .phd-products-grid  { grid-template-columns: repeat(2, 1fr); }
  .phd-col-grid       { grid-template-columns: repeat(2, 1fr); }
  .phd-stats-grid     { grid-template-columns: repeat(4, 1fr); }

  /* Featured split stacks */
  .phd-featured-split { grid-template-columns: 1fr; min-height: auto; }
  .phd-bs-grid        { grid-template-columns: 1fr; gap: 40px; }

  /* Shop look */
  .phd-look-entry { grid-template-columns: repeat(2, 1fr); gap: 40px; margin-bottom: 80px; }

  /* Lookbook */
  .phd-lookbook-grid { grid-template-columns: repeat(2, 1fr); }
  .phd-lb-item:first-child { grid-column: span 2; grid-row: span 1; }

  /* Footer 3 col */
  .footer-grid { grid-template-columns: 1.4fr 1fr 1fr; }
  .footer-bottom { flex-direction: row; justify-content: space-between; }

  /* Container */
  .container-luxury,
  .phd-container { padding-left: 28px; padding-right: 28px; }
}

/* ── Tablet Landscape / Small Laptop (992px – 1199px) ── */
@media (min-width: 992px) and (max-width: 1199px) {
  .nav-links { gap: 28px; }
  .nav-link  { font-size: 10.5px; }

  .phd-products-grid { grid-template-columns: repeat(3, 1fr); }
  .phd-col-grid      { grid-template-columns: repeat(2, 1fr); }
  .phd-stats-grid    { grid-template-columns: repeat(4, 1fr); }

  .phd-featured-split { grid-template-columns: 1fr 1fr; }
  .phd-bs-grid        { grid-template-columns: 1fr 1fr; }

  .phd-look-entry { gap: 60px; margin-bottom: 120px; }

  .phd-lookbook-grid { grid-template-columns: repeat(3, 1fr); }
  .phd-lb-item:first-child { grid-column: span 2; grid-row: span 2; }

  .footer-grid { grid-template-columns: 1.5fr 1fr 1fr 1fr; }

  .container-luxury,
  .phd-container { padding-left: 36px; padding-right: 36px; }

  /* Dropdown positioning fix */
  .men-dropdown,
  .women-dropdown,
  .kids-dropdown {
    left: 50%;
    transform: translateX(-50%) translateY(10px);
  }
  .nav-item-dropdown:hover .men-dropdown,
  .nav-item-dropdown:hover .women-dropdown,
  .nav-item-dropdown:hover .kids-dropdown {
    transform: translateX(-50%) translateY(0);
  }
}

/* ── Full Desktop (1200px+) ── */
@media (min-width: 1200px) {
  .phd-section { padding: 100px 0; }
  .phd-products-grid { grid-template-columns: repeat(4, 1fr); }
  .phd-col-grid      { grid-template-columns: repeat(4, 1fr); }
  .footer-grid       { grid-template-columns: 1.5fr 1fr 1fr 1fr; }

  .container-luxury,
  .phd-container { padding-left: 40px; padding-right: 40px; }
}

/* ── Wide Desktop (1400px+) ── */
@media (min-width: 1400px) {
  .phd-section { padding: 120px 0; }
}

/* ================================================================
   ANNOUNCEMENT BAR ↔ NAVBAR OFFSET
   ================================================================ */
/* Make sure body does not hide content under fixed header */
body.has-announcement-bar .main-nav {
  top: clamp(28px, 4vw, 36px);
}

body.has-announcement-bar .main-nav.scrolled {
  top: 0;
}

/* ================================================================
   MOBILE MENU — Overflow & Scroll
   ================================================================ */
body.mobile-menu-open {
  overflow: hidden;
  height: 100vh;
}

/* ================================================================
   SCROLL REVEAL — Respect reduced motion
   ================================================================ */
@media (prefers-reduced-motion: reduce) {
  .phd-reveal,
  .reveal-fade {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
    animation: none !important;
  }

  .phd-hero-img {
    animation: none !important;
  }

  .announcement-track {
    animation-play-state: paused !important;
  }
}

/* ================================================================
   PRINT
   ================================================================ */
@media print {
  #loading-screen,
  .announcement-bar,
  #main-nav,
  #mobile-menu,
  #mobile-overlay,
  #back-to-top {
    display: none !important;
  }

  .site-footer {
    background: #fff !important;
    color: #000 !important;
    border-top: 2px solid #b8965a;
  }

  .footer-grid { grid-template-columns: repeat(2, 1fr) !important; }
}
