.comfort-sr {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
}
.comfort-center { text-align: center; }
.comfort-nowrap { white-space: nowrap; }

body.mm-pushed { transform: none; overflow-x: hidden; }
body.mm-pushed .comfort-page { transform: translateX(280px); }


@media (max-width: 1024px) {
  .comfort-bolt-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .comfort-steps,
  .comfort-perks { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .comfort-cuff-top { grid-template-columns: 1fr; }
  .comfort-cutting-table,
  .comfort-tote-grid,
  .comfort-split { grid-template-columns: 1fr; }
}


@media (max-width: 767px) {
  .comfort-collar-bar-hours { display: none; }
  .comfort-collar-row { flex: 1 1 0; width: auto; max-width: none; min-width: 0; margin: 0 0 0 4vw; }
  .comfort-nav { margin-left: 0; }
  .comfort-nav-link { border-radius: 0; }
  .comfort-cart-link { margin-left: auto; padding: 0.4rem 0.7rem; }
  .comfort-cart-text { display: none; }
  .comfort-front-stats { grid-template-columns: repeat(2, 1fr); padding: 1.25rem; }
  .comfort-front-shot img { aspect-ratio: 4 / 3; }
  .comfort-mail-grid,
  .comfort-mix-list,
  .comfort-terms,
  .comfort-cuff-cols { grid-template-columns: 1fr; }
  .comfort-cuff-form { grid-template-columns: 1fr; }
  .comfort-line { grid-template-columns: 4rem minmax(0, 1fr); }
  .comfort-line-img { width: 4rem; height: 4rem; }
  .comfort-line-total { grid-column: 2; text-align: left; }
  .comfort-spec-list { grid-template-columns: 1fr; }
  .comfort-spec-list dt { border-bottom: none; padding-bottom: 0; }

  
  .comfort-swipe {
    display: flex;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    gap: 1rem;
    padding-bottom: 0.75rem;
    overscroll-behavior-x: contain;
  }
  .comfort-swipe > * {
    flex: 0 0 82%;
    min-width: 0;
    scroll-snap-align: start;
  }
  .comfort-steps.comfort-swipe { grid-template-columns: none; }
}

@media (max-width: 420px) {
  .comfort-logo-name { font-size: 1.05rem; }
  .comfort-front-actions .comfort-btn,
  .comfort-front-actions .comfort-btn-ghost { width: 100%; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .comfort-card, .comfort-perk, .comfort-btn, .comfort-page { transition: none; }
}


@media (max-width: 1100px) and (min-width: 768px) {
  :root { --collar-h: 9.5rem; }
  .comfort-collar-row { flex-wrap: wrap; row-gap: 0; padding-bottom: 0.4rem; }
  .comfort-nav { order: 3; flex: 0 0 100%; margin-left: 0; }
  .comfort-cart-link { margin-left: auto; }
  .comfort-nav-link { font-size: 0.92rem; }
}
