/* Approved mobile page refinements. Individual brand bodies and directory
   controls stay under their separate production/current stylesheets.
   The dedicated mobile-header layer owns navigation. */
@media (max-width: 700px) {
  .content-page:not(.brand-seo-page):not(.brand-directory-page):not(.intelligence-page) .editorial-main {
    width: calc(100% - 2rem);
    padding: 1.5rem 0 2.5rem;
  }
  .content-page .editorial-hero { margin-bottom: 2rem; }
  .content-page .editorial-hero h1 {
    max-width: 19ch;
    margin-bottom: .85rem;
    font-size: clamp(2.05rem, 8.5vw, 2.55rem);
    line-height: 1.04;
    letter-spacing: -.035em;
  }
  .content-page .editorial-lede { margin-block: .75rem; font-size: 1rem; line-height: 1.55; }
  .content-page .hero-actions { gap: .5rem; margin-top: 1rem; }
  .content-page .hero-actions > a { min-height: 2.75rem; padding: .65rem .9rem; font-size: .875rem; }
  .content-page .story-section,
  .content-page .principles-section { margin-bottom: 2rem; }
  .content-page .story-section h2,
  .content-page .principles-section > h2 { margin-bottom: 1rem; font-size: 1.8rem; line-height: 1.08; }
  .content-page .story-columns { gap: .25rem; font-size: 1rem; }
  .content-page .story-accent { padding: 1.1rem; }
  .content-page .story-accent > p:not(.eyebrow) { font-size: 1rem; }
  .content-page .editorial-grid,
  .content-page .principle-grid { gap: .65rem; }
  .content-page .editorial-card,
  .content-page .principle-card { padding: 1rem; box-shadow: none; }
  .content-page .editorial-card h2,
  .content-page .principle-card h3 { font-size: 1.5rem; margin-bottom: .55rem; }
  .content-page .editorial-card p,
  .content-page .editorial-card li,
  .content-page .principle-card p { font-size: .9375rem; line-height: 1.55; }
  .content-page .methodology-callout { margin-top: 2rem; padding: 1.2rem; }
  .content-page .methodology-callout h2 { font-size: 1.8rem; line-height: 1.08; }
  .methodology-page .methodology-date { margin-top: 1rem; }
  .methodology-page .methodology-facts { margin-bottom: 2rem; padding: 1rem 0; }
  .methodology-page .methodology-fact-list { margin-top: 1rem; }
  .methodology-page .methodology-fact-list > div { padding: .75rem 0; }
  .methodology-page .methodology-fact-list dd { font-size: .875rem; }

  .intelligence-page .intelligence-hero { gap: 1.4rem; padding: 1.6rem 1rem 2rem; }
  .intelligence-page .intelligence-hero h1,
  html[lang="fr-CA"] .intelligence-page .intelligence-hero h1 {
    max-width: 17ch;
    margin-bottom: 1rem;
    font-size: clamp(2.25rem, 9.2vw, 2.85rem);
    line-height: 1.02;
    letter-spacing: -.04em;
  }
  .intelligence-page .intelligence-lede { font-size: 1rem; line-height: 1.55; }
  .intelligence-page .intelligence-hero-actions { margin-top: 1.1rem; gap: .6rem; }
  .intelligence-page .intelligence-hero-actions > a { min-height: 2.75rem; font-size: .875rem; }
  .intelligence-page .intelligence-section { padding-block: 2rem; }
  .intelligence-page .intelligence-section-heading { margin-bottom: 1.2rem; }
  .intelligence-page .intelligence-section-heading h2 { font-size: 2rem; line-height: 1.06; }
  .intelligence-page .intelligence-section-heading > p:not(.intelligence-kicker) { font-size: .9375rem; line-height: 1.55; }
  .intelligence-page .partnership-form { gap: 1rem; }
  .intelligence-page .partnership-field :is(input, select, textarea) { font-size: 1rem; min-height: 2.75rem; }
  .intelligence-page .partnership-choice-grid label { min-height: 2.75rem; }

  /* Existing virtual-try-on states keep their privacy and consent choices. */
  .tryon-page .editorial-main { padding: 1.4rem 1rem 2.5rem; }
  .tryon-page .editorial-main h1 { font-size: 2.1rem; margin-bottom: .75rem; line-height: 1.06; }
  .tryon-page .studio-steps { gap: .65rem; margin: 1.1rem 0; }
  .tryon-page .studio-steps button { min-height: 2.75rem; font-size: .75rem; padding-block: .6rem; white-space: normal; }
  .tryon-page .studio-step h2 { font-size: 1.7rem; margin-block: .75rem; }
  .tryon-page .mode-choice { margin: 1rem 0 1.4rem; gap: .6rem; }
  .tryon-page .mode-choice button { padding: .9rem; }
  .tryon-page .mode-choice strong { font-size: 1.25rem; }
  .tryon-page .mode-choice span { font-size: .8125rem; line-height: 1.45; }
  .tryon-page .vibe-grid { gap: .6rem; margin-bottom: 1.25rem; }
  .tryon-page .vibe-grid button { padding: .85rem; min-height: 7.5rem; }
  .tryon-page .vibe-grid strong { font-size: 1.2rem; }
  .tryon-page .vibe-grid span { font-size: .8125rem; }
  .tryon-page .step-actions { gap: .75rem; padding-top: 1rem; margin-block: 1.25rem; }
  .tryon-page .studio-flow :is(input:not([type="checkbox"]), textarea, select) { font-size: 1rem; }
  .tryon-page .studio-flow :is(button, .text-button) { min-height: 2.75rem; }
  .tryon-page .welcome-copy { padding-inline: 1rem; }
  .tryon-page .welcome-copy h2 { font-size: 1.8rem; }
  .tryon-page .welcome-example-tabs button { min-height: 2.75rem; }
  .tryon-page .welcome-skip { min-height: 2.75rem; }
  .tryon-page .stylist-welcome { width: calc(100% - 1rem); }

  .live-tryon-page .live-main { padding: 1.4rem 1rem 2.5rem; }
  .live-tryon-page .live-heading { margin-bottom: 1.2rem; }
  .live-tryon-page .live-heading h1 { font-size: clamp(2.6rem, 11vw, 3.2rem); }
  .live-tryon-page .live-heading > p:last-child { margin-top: .8rem; font-size: 1rem; }
  .live-tryon-page .live-form { gap: 1rem; }
  .live-tryon-page .photo-inputs { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .65rem; }
  .live-tryon-page .photo-input,
  .live-tryon-page .photo-input > img,
  .live-tryon-page .photo-input > span { min-height: 12rem; }
  .live-tryon-page .photo-input > span { padding: .9rem; }
  .live-tryon-page .photo-input strong { font-size: 1.2rem; }
  .live-tryon-page .photo-input small { font-size: .8125rem; margin-bottom: .75rem; }
  .live-tryon-page .live-fields :is(input, select) { min-height: 2.75rem; font-size: 1rem; }
  .live-tryon-page .priority-control button { min-height: 2.75rem; }

  .cart-page .cart-main { padding-top: 1.25rem; }
  .cart-page .cart-state-panel { min-height: 0; padding: 1.2rem; }
  .cart-page .cart-state-panel h1 { max-width: 18ch; font-size: 2rem; line-height: 1.05; }
  .cart-page .cart-state-panel > p:not(.eyebrow) { font-size: .9375rem; }
  .cart-page .cart-hero { gap: 1rem; margin-bottom: 1.5rem; }
  .cart-page .cart-hero h1 { font-size: 2.25rem; }
  .cart-page .cart-section { padding: 1rem; margin-bottom: 1rem; }
  .cart-page .cart-recovery-panel { margin-top: 1rem; padding: 1rem; gap: .75rem; }
  .cart-page .cart-recovery-panel p { font-size: .875rem; }
  .cart-page .cart-main :is(button, .primary-button, .secondary-button, summary) { min-height: 2.75rem; }

  .shared-shortlist-page .shared-shortlist-main { padding: 1.2rem 1rem 2rem; }
  .shared-shortlist-page .shared-shortlist-main h1 { font-size: 2rem; line-height: 1.06; }
  .shared-shortlist-page .shared-product-body { padding: .7rem; gap: .4rem; }
  .shared-shortlist-page .shared-product-body h2 { font-size: .9375rem; line-height: 1.35; }
  .shared-shortlist-page .shared-product-note { font-size: .8125rem; }
  .shared-shortlist-page .shared-product-body :is(button, a) { min-height: 2.75rem; }

  .extension-continue-page { padding: 1rem; }
  .extension-continue-page .extension-continue-card { padding: 1.3rem; border-radius: 1rem; }
  .extension-continue-page .extension-continue-card .wordmark { margin-bottom: 1.25rem; }
  .extension-continue-page .extension-continue-card h1 { font-size: 2rem; line-height: 1.06; }
  .extension-continue-page .extension-continue-note { font-size: .8125rem; }
  .extension-continue-page .extension-continue-card .inline-link { display: inline-flex; align-items: center; min-height: 2.75rem; }
}

@media (max-width: 600px) {
  /* Retain real art while avoiding a full viewport of image before discovery. */
  .knitwear-editorial .edit-hero-art { height: 12rem; }
  .knitwear-editorial .edit-hero-copy { padding: 1.1rem 1.1rem 2.2rem; }
  .knitwear-editorial .edit-hero h1 { font-size: clamp(2.2rem, 9.5vw, 2.65rem); margin-block: .65rem; line-height: 1.04; }
  .knitwear-editorial .edit-hero-copy > p:not(.edit-eyebrow) { font-size: .9375rem; line-height: 1.5; }
  .knitwear-editorial .edit-hero-actions { margin-top: 1rem; gap: .6rem; }
  .knitwear-editorial .affordable-hero { padding-top: 12rem; }
  .knitwear-editorial .affordable-hero > img { height: 12rem; }
  .knitwear-editorial .affordable-hero > div { padding: 1.1rem 1.1rem 1.5rem; }
  .knitwear-editorial .affordable-hero h1 { font-size: clamp(2.2rem, 9.5vw, 2.65rem); margin-block: .65rem; line-height: 1.04; }
  .knitwear-editorial .affordable-hero p:not(.edit-eyebrow) { font-size: .9375rem; line-height: 1.5; }
  .knitwear-editorial .edit-section { margin-block: 1.6rem; }
  .knitwear-editorial :is(.edit-section, .edit-footer-panels, .edit-art-disclosure) { width: calc(100% - 2rem); }
  .knitwear-editorial h2 { font-size: 2rem; line-height: 1.08; }
  .knitwear-editorial .edit-deck { font-size: .875rem; line-height: 1.5; }
  .knitwear-editorial .edit-category-rail > a > img { height: 9.5rem; }
  .knitwear-editorial .visual-rail h3 { font-size: .875rem; }
  .knitwear-editorial .visual-rail p { font-size: .8125rem; }
  .knitwear-editorial :is(.edit-quick-search, .collection-shopping-bar) :is(input, select) { min-height: 2.75rem; height: 2.75rem; font-size: 1rem; }
  .knitwear-editorial :is(.edit-button, .affordable-primary, .affordable-secondary, .knit-product-action, .knit-save) { min-height: 2.75rem; }
  .knitwear-editorial .knit-save { min-width: 2.75rem; }
  .knitwear-editorial .knit-product-brand { font-size: .75rem; }
  .knitwear-editorial .knit-product-copy h3 { font-size: .875rem; min-height: 0; line-height: 1.35; }
  .knitwear-editorial .knit-product-action { font-size: .8125rem; }
  .knitwear-editorial :is(.knit-product-size-summary, .knit-product-availability) { font-size: .75rem !important; line-height: 1.5 !important; }
  .knitwear-editorial :is(.edit-mobile-filter > summary, .collection-filter-panel > summary, .edit-sidebar summary, .edit-sidebar details label, .collection-sidebar label) { min-height: 2.75rem; }
  .knitwear-editorial .collection-results .edit-product-grid { gap: 1rem .6rem; }
  .knitwear-editorial .edit-small-note { font-size: .75rem !important; }
  .knitwear-editorial .edit-stock-note { font-size: .75rem; line-height: 1.5; }
  .knitwear-editorial .affordable-filters :is(input, select) { font-size: 1rem; }
  .knitwear-editorial .affordable-budgets { gap: .5rem !important; }
  .knitwear-editorial .affordable-budgets a { padding: .8rem .65rem !important; }
  .knitwear-editorial .affordable-budgets span,
  .knitwear-editorial .affordable-budgets p { font-size: .75rem; }
  .knitwear-editorial .affordable-budgets strong { font-size: 1.8rem; }
  .knitwear-editorial .luxury-principles { gap: .75rem; font-size: .6875rem; line-height: 1.5; }
  .knitwear-editorial .luxury-details figcaption { font-size: .75rem; }
  .knitwear-editorial .voices-portraits a > img { height: 15rem; }
  .knitwear-editorial .making-chapters p:not(.edit-eyebrow) { font-size: .875rem; }
}

@media (max-width: 359px) {
  .live-tryon-page .photo-inputs { grid-template-columns: 1fr; }
  .knitwear-editorial .affordable-budgets { grid-template-columns: 1fr; }
  .knitwear-editorial .affordable-budgets a { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: .3rem .7rem; }
  .knitwear-editorial .affordable-budgets p { margin: .25rem 0 0; }
}

/* Exact source-size chips and full details for the approved editorial result grids. */
.knitwear-editorial .result-card-sizes { display: flex; flex-wrap: nowrap; align-items: center; gap: .25rem; min-width: 0; min-height: 28px; margin: 0; }
.knitwear-editorial .result-card-sizes [hidden] { display: none !important; }
.knitwear-editorial .result-size-chip { flex: 0 0 auto; display: inline-flex; align-items: center; justify-content: center; min-width: 27px; min-height: 27px; padding: .2rem .35rem; border: 1px solid var(--line, #d8d6ce); border-radius: 999px; background: var(--paper, #f7f5ef); color: var(--ink, #181a17); font: 600 .75rem/1.2 var(--sans, sans-serif); white-space: nowrap; }
.knitwear-editorial .result-size-more { flex: 0 0 auto; min-width: 44px; min-height: 44px; padding: .25rem; border: 1px solid var(--line, #d8d6ce); border-radius: 999px; background: transparent; color: var(--red-dark, #9c2917); font: 650 .75rem/1.2 var(--sans, sans-serif); cursor: pointer; }
.knitwear-editorial .result-card-description { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; line-clamp: 2; overflow: hidden; margin: 0; color: var(--ink-soft, #5f625c); font-size: .875rem; line-height: 1.45; }
.knitwear-editorial .result-card-freshness { margin: 0; color: var(--ink-soft, #5f625c); font-size: .75rem; line-height: 1.4; }
.knitwear-editorial .result-card-details > summary { box-sizing: border-box; min-height: 44px; padding-block: .65rem; font-size: .8125rem; line-height: 1.4; }
.knitwear-editorial .result-card-details .result-card-description-full { font-size: .8125rem; line-height: 1.5; }
@media (max-width: 700px) { .knitwear-editorial .result-card-description { font-size: .8125rem; } }
