@media (max-width: 820px) {
  .nav-links {
    position: absolute;
    top: 100%;
    left: 0; right: 0;
    padding: 16px 18px 18px;
    margin: 0;
    background: rgba(247,243,240,0.96);
    border-bottom: 1px solid rgba(109,26,45,0.08);
    display: none;
    flex-direction: column; align-items: flex-start; gap: 10px;
  }
  .nav-links.open { display: flex; }
  .mobile-toggle { display: inline-flex; align-items: center; justify-content: center; width: 42px; height: 42px; border-radius: 50%; border: 1px solid rgba(109,26,45,0.12); background: rgba(255,255,255,0.6); }
  .nav-actions .btn { display: none; }
  .home-page .nav-actions .btn { display: inline-flex; padding: 10px 13px; font-size: .82rem; }
  .hero { padding-top: 30px; }
  .hero-inner { min-height: auto; }
  .hero-card { margin: 0; }
  .grid-3, .grid-4, .transform-inner, .footer-grid { grid-template-columns: 1fr; }
  .newsletter form { flex-direction: column; }
  .newsletter .btn-primary { width: 100%; }
  .footer-bottom { flex-direction: column; }
  .home-hero-grid { grid-template-columns: 1fr; gap: 34px; }
  .home-hero-copy { max-width: 690px; }
  .editorial-collage { width: min(100%, 590px); height: min(78vw, 560px); min-height: 390px; margin: 0 auto; }
  .intro-layout,.people-layout,.faq-layout { grid-template-columns: 1fr; gap: 26px; }
  .app-feature-grid { grid-template-columns: 1fr; }
  .app-feature { grid-template-columns: .8fr 1.2fr; }
  .app-feature-visual { min-height: 440px; }
  .home-service-grid { grid-template-columns: repeat(2,1fr); }
  .style-mosaic { grid-template-columns: repeat(6,1fr);grid-auto-rows:140px; }
  .tile-ethnic,.tile-western,.tile-indo { grid-column:span 2;grid-row:span 2; }
  .tile-beauty,.tile-grooming,.tile-party,.tile-accessories,.tile-shoes { grid-column:span 3;grid-row:span 2; }
  .people-image { min-height: 470px;max-width: 600px;width:100%;margin:auto; }
  .faq-intro p { max-width: 620px; }
}

@media (max-width: 560px) {
  h1 { font-size: 2.5rem; }
  h2 { font-size: 2rem; }
  .section { padding: 68px 0; }
  .hero-copy { padding-top: 0; }
  .hero-actions { flex-direction: column; align-items: stretch; }
  .hero-actions .btn { width: 100%; }
  .announcement-bar { letter-spacing: 0.07em; }
  .filters-bar { align-items: stretch; }
  .filter-group { width: 100%; }
  .filter-group select, .search-input { width: 100%; }
  .dashboard-grid { grid-template-columns: 1fr; }
  .chat-bubble { max-width: 86%; }
  .home-page .nav-actions { display: none; }
  .home-hero { padding: 46px 0 62px; }
  .home-hero-copy h1 { font-size: clamp(2.85rem,12vw,4.2rem); }
  .home-hero-copy > p { font-size: .97rem; }
  .editorial-collage { height: 112vw;min-height: 360px;max-height: 500px; }
  .collage-main { left:8%;width:61%;height:84%; }
  .collage-portrait { right:0;width:33%;height:32%; }
  .collage-western { width:43%;height:43%; }
  .collage-stamp { width:94px;height:94px;left:0;bottom:15%; }
  .collage-stamp strong { font-size:1.15rem; }
  .collage-caption { font-size:.88rem;right:0; }
  .intro-layout h2,.home-page .section-heading h2,.split-heading h2,.people-copy h2,.download-intro h2,.faq-intro h2 { font-size:2.35rem; }
  .app-feature { grid-template-columns:1fr; }
  .app-feature-visual { min-height:360px; }
  .app-feature-content { padding:24px; }
  .split-heading { grid-template-columns:1fr;gap:12px; }
  .split-heading > p { margin:0; }
  .style-mosaic { grid-template-columns:repeat(2,1fr);grid-auto-rows:150px;gap:10px; }
  .tile-ethnic,.tile-western,.tile-indo,.tile-beauty,.tile-grooming,.tile-party,.tile-accessories,.tile-shoes { grid-column:span 1;grid-row:span 1; }
  .style-tile > span { left:12px;bottom:12px;font-size:.78rem; }
  .inspiration-note { text-align:left; }
  .home-service-grid { grid-template-columns:1fr;gap:10px; }
  .home-service-card { min-height:0;padding:20px; }
  .service-footnote { flex-wrap:wrap;justify-content:flex-start; }
  .service-footnote .text-link { margin:0; }
  .people-image { min-height:390px; }
  .download-app-grid { grid-template-columns:1fr; }
  .download-app { padding:23px; }
  .store-badges { display:grid;grid-template-columns:1fr 1fr; }
  .store-placeholder,.store-badge-anchor { min-width:0;padding:8px;gap:7px; }
  .store-placeholder strong,.store-badge-anchor strong { font-size:.85rem; }
  .store-placeholder em { font-size:.55rem; }
  .home-cta { padding:66px 0; }
  .home-cta .hero-actions { flex-direction:column;align-items:stretch; }
  .home-cta .hero-actions .btn { width:100%; }
}
