:root {
  --flinfy-ink: #1f2a30;
  --flinfy-muted: #5a666c;
  --flinfy-sand: #f5f1ea;
  --flinfy-brass: #b48a54;
  --flinfy-line: rgba(31,42,48,.14);
}
html, body { overflow-x: hidden; }
body { color: var(--flinfy-ink); background: var(--flinfy-sand); }
img, video, iframe { max-width: 100%; }
.f-section, .m-section, .shopify-section { min-width: 0; }
.f-section h1, .f-section h2, .f-section h3, .m-section h1, .m-section h2, .m-section h3 { text-wrap: balance; }
.f-button, button, input[type=submit] { min-height: 44px; }
.f-product-card img, .f-collection-card img, .f-image-card img { object-fit: cover; }
.f-collection-list, .f-featured-collection, .f-gallery, .f-icon-box { min-width: 0; }
.f-collage-tabs--content, .f-rich-text, .f-promotion-banner { overflow-wrap: anywhere; }
@media (max-width: 767px) {
  .page_container, .main-content, .f-section, .m-section { width: 100%; max-width: 100%; }
  .f-container, .container, .container-fluid { width: 100%; max-width: 100%; padding-left: 16px; padding-right: 16px; }
  .f-section { padding-left: 0; padding-right: 0; }
  h1 { font-size: clamp(28px, 8vw, 42px); line-height: 1.12; }
  h2 { font-size: clamp(24px, 6vw, 34px); line-height: 1.18; }
  h3 { font-size: clamp(19px, 5vw, 26px); line-height: 1.2; }
  .f-button, button, input, select, textarea { max-width: 100%; }
  .f-section img { height: auto; }
}
@media (min-width: 768px) and (max-width: 1024px) {
  .container-fluid { padding-left: 28px; padding-right: 28px; }
}

/* keep announcement and carousel tracks inside the viewport */
.f-promotion--animated { max-width: 100vw !important; overflow: hidden !important; }
@media (max-width: 767px) { .f-promotion--animated { transform: none !important; animation: none !important; } }
@media (max-width: 767px) {
  .f-lookbook-product { display: none !important; }
  .f-lookbook { overflow: hidden !important; }
}
