@font-face {
  font-family:Satoshi;
  src:url('./satoshi-regular.woff2') format('woff2');
  font-weight:400;
  font-display:swap
}
@font-face {
  font-family:Satoshi;
  src:url('./satoshi-bold.woff2') format('woff2');
  font-weight:600 800;
  font-display:swap
}
@font-face {
  font-family:Satoshi;
  src:url('./satoshi-black.woff2') format('woff2');
  font-weight:900;
  font-display:swap
}
:root {
  --paper:#f9f9f7;
  --ink:#191b1c;
  --muted:#6b6c69;
  --surface:#efefec;
  --line:#dcded8;
  --accent:#c4482e;
  --photo:#efefec;
  --ease:cubic-bezier(.19,1,.22,1);
  --gutter:4.2vw;
  --max:1600px;
  color-scheme:light
}
html[data-theme=dark] {
  --paper:#191b1c;
  --ink:#f2f2ed;
  --muted:#b0b2ac;
  --surface:#252826;
  --line:#414440;
  --accent:#ee8b71;
  color-scheme:dark
}
@media(prefers-color-scheme:dark) {
  html:not([data-theme=light]) {
    --paper:#191b1c;
    --ink:#f2f2ed;
    --muted:#b0b2ac;
    --surface:#252826;
    --line:#414440;
    --accent:#ee8b71;
    color-scheme:dark
  }
}
* {
  box-sizing:border-box
}
html {
  scroll-behavior:smooth;
  scroll-padding-top:100px
}
body {
  margin:0;
  background:var(--paper);
  color:var(--ink);
  font:14px/1.5 Satoshi,Arial,sans-serif;
  -webkit-font-smoothing:antialiased
}
body:has(dialog[open]) {
  overflow:hidden
}
a {
  color:inherit;
  text-decoration:none
}
button,input,select,textarea {
  font:inherit;
  color:inherit
}
button {
  border:0;
  background:transparent;
  padding:0;
  cursor:pointer
}
button,a,input,select {
  touch-action:manipulation;
  -webkit-tap-highlight-color:transparent
}
button:disabled {
  opacity:.4;
  cursor:not-allowed
}
img {
  display:block;
  max-width:100%;
  height:auto
}
h1,h2,h3,p {
  margin:0
}
h1,h2,h3 {
  line-height:1.07;
  text-wrap:balance
}
h1,h2 {
  letter-spacing:-.055em;
  font-weight:900
}
p {
  text-wrap:pretty
}
::selection {
  background:#e7a08d;
  color:#191b1c
}
:focus-visible {
  outline:2px solid var(--accent);
  outline-offset:5px
}
[hidden] {
  display:none!important
}
.sr-only {
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap
}
.skip-link {
  position:fixed;
  top:-80px;
  left:20px;
  background:var(--paper);
  padding:15px;
  z-index:40
}
.skip-link:focus {
  top:10px
}
.icon {
  width:21px;
  height:21px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex-shrink:0
}
.icon img {
  width:100%;
  height:100%
}
.icon-button {
  width:44px;
  height:44px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  position:relative
}
.icon-button:hover {
  background:var(--surface)
}
.overline {
  font-size:9px;
  font-weight:700;
  letter-spacing:1.9px;
  line-height:1.6
}
.section {
  padding:85px var(--gutter);
  max-width:var(--max);
  margin:auto
}
.button {
  min-height:53px;
  display:inline-flex;
  align-items:center;
  justify-content:space-between;
  gap:38px;
  padding:0 23px;
  font-size:11px;
  font-weight:700;
  transition:background .25s,transform .25s;
  white-space:nowrap
}
.button:active {
  transform:scale(.985)
}
.button-dark {
  background:#202322;
  color:#f7f7f2
}
.button-dark .icon {
  filter:invert(1)
}
.button-dark:hover {
  background:#3a4140
}
.button-white {
  background:#f6f6f2;
  color:#1c1f1d
}
.button-white:hover {
  background:#dedfd9
}
.button-outline {
  border:1px solid var(--line)
}
.button-outline:hover {
  border-color:var(--ink);
  background:var(--surface)
}
.underlined-link {
  display:inline-flex;
  align-items:center;
  gap:28px;
  font-size:11px;
  font-weight:700;
  border-bottom:1px solid currentColor;
  padding:9px 0;
  min-height:42px
}
.underlined-link .icon {
  width:17px;
  height:17px;
  transition:transform .25s
}
.underlined-link:hover .icon {
  transform:translate(3px,-3px)
}
.brand-logo {
  display:flex;
  align-items:center;
  gap:10px;
  white-space:nowrap
}
.brand-logo>img {
  width:25px;
  height:28px
}
.brand-logo>span {
  font-size:25px;
  font-weight:900;
  letter-spacing:-1.6px;
  line-height:1
}
.utility-bar {
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:9px var(--gutter);
  background:#242826;
  color:#f0f0e9;
  font-size:8px;
  font-weight:600;
  letter-spacing:1px
}
.utility-bar>a {
  display:flex;
  gap:7px;
  align-items:center;
  letter-spacing:.4px
}
.utility-bar .icon {
  width:12px;
  height:12px;
  filter:invert(1)
}
.utility-bar button {
  font-size:8px;
  display:flex;
  align-items:center;
  gap:10px
}
.site-header {
  position:sticky;
  top:0;
  z-index:10;
  background:var(--paper);
  padding:0 var(--gutter);
  height:84px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  border-bottom:1px solid var(--line)
}
.main-nav {
  display:flex;
  align-items:center;
  gap:27px;
  font-size:11px;
  font-weight:600
}
.main-nav>a,.mega-trigger {
  min-height:44px;
  display:flex;
  align-items:center;
  gap:7px
}
.main-nav>a:hover,.mega-trigger:hover {
  color:var(--accent)
}
.main-nav [aria-current] {
  text-decoration:underline;
  text-underline-offset:7px
}
.mega-trigger .icon {
  width:12px;
  height:12px
}
.header-actions {
  display:flex;
  gap:2px;
  align-items:center
}
.bag-toggle {
  gap:5px;
  width:57px
}
.cart-count {
  font-size:9px;
  min-width:15px;
  height:15px;
  display:grid;
  place-items:center
}
.wishlist-count {
  position:absolute;
  top:2px;
  right:2px;
  border-radius:50%;
  background:var(--accent);
  color:var(--paper);
  font-size:8px;
  width:15px;
  height:15px
}
.mobile-menu-toggle {
  display:none
}
.mega-menu {
  position:absolute;
  top:100%;
  left:0;
  right:0;
  background:var(--paper);
  border-bottom:1px solid var(--line);
  padding:40px var(--gutter);
  display:grid;
  grid-template-columns:1fr 2fr 1fr;
  gap:50px;
  box-shadow:0 20px 30px #14161512
}
.mega-intro h2 {
  font-size:32px;
  margin:15px 0 24px
}
.mega-brands {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:0 32px
}
.mega-brands>a {
  display:flex;
  align-items:center;
  gap:8px;
  font-size:11px;
  min-height:35px
}
.mega-brands>a>span {
  font-size:8px;
  color:var(--muted)
}
.mega-brands .icon {
  margin-left:auto;
  width:12px;
  height:12px
}
.mega-brands>a:hover {
  color:var(--accent)
}
.mega-feature {
  background:var(--photo);
  color:#202322;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:15px;
  min-width:0
}
.mega-feature>img {
  mix-blend-mode:multiply;
  width:100%;
  height:180px;
  object-fit:contain
}
.mega-feature>span {
  display:flex;
  justify-content:space-between;
  font-size:10px;
  font-weight:700;
  align-items:center
}
.campaign-hero {
  height:min(680px,calc(100dvh - 119px));
  min-height:540px;
  position:relative;
  background:#24292b;
  color:#f9f9f4;
  isolation:isolate;
  overflow:hidden
}
.campaign-hero>picture,.campaign-hero>picture>img {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:62% 60%;
  z-index:-2
}
.campaign-hero:after {
  position:absolute;
  inset:0;
  content:'';
  background:linear-gradient(90deg,rgba(18,21,22,.55),transparent 65%);
  z-index:-1
}
.campaign-content {
  position:relative;
  padding:75px var(--gutter) 70px;
  height:100%;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:center
}
.campaign-label {
  display:flex;
  gap:13px;
  align-items:center;
  font-size:9px;
  letter-spacing:2px;
  font-weight:600;
  margin-bottom:26px
}
.label-line {
  width:25px;
  height:1px;
  background:currentColor
}
.campaign-content h1 {
  font-size:clamp(66px,7vw,112px);
  line-height:.98;
  letter-spacing:-.06em;
  max-width:700px
}
.hero-description {
  font-size:13px;
  line-height:1.7;
  margin:25px 0 29px;
  color:#e3e5df
}
.campaign-bottom {
  position:absolute;
  bottom:25px;
  left:var(--gutter);
  right:var(--gutter);
  display:flex;
  justify-content:space-between;
  align-items:center;
  font-size:8px;
  letter-spacing:1px
}
.campaign-bottom>a {
  display:flex;
  align-items:center;
  gap:20px;
  font-size:10px;
  letter-spacing:0
}
.campaign-bottom .icon {
  width:15px;
  height:15px;
  filter:invert(1)
}
.brand-strip {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:22px;
  padding:29px var(--gutter);
  border-bottom:1px solid var(--line);
  max-width:1800px;
  margin:auto
}
.brand-strip>span {
  font-size:7px;
  letter-spacing:1.2px;
  color:var(--muted);
  line-height:1.8
}
.brand-word {
  font-weight:900;
  font-size:22px;
  letter-spacing:-1.2px;
  line-height:1;
  transition:color .25s
}
.brand-word:hover {
  color:var(--accent)
}
.brand-nike {
  font-size:32px;
  font-style:italic;
  letter-spacing:-2px
}
.brand-jordan {
  font-size:20px;
  text-transform:uppercase;
  letter-spacing:-1px
}
.brand-new-balance {
  font-size:17px;
  max-width:75px
}
.brand-adidas {
  font-size:26px;
  letter-spacing:-1.7px
}
.brand-asics {
  font-size:26px;
  font-style:italic;
  letter-spacing:-2px
}
.brand-salomon {
  font-size:19px
}
.brand-strip-all {
  display:flex;
  align-items:center;
  gap:9px;
  font-size:9px;
  white-space:nowrap
}
.brand-strip-all .icon {
  width:16px;
  height:16px
}
.section-heading {
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:25px;
  margin-bottom:30px
}
.section-heading .overline {
  margin-bottom:14px;
  color:var(--accent)
}
.section-heading h2 {
  font-size:clamp(34px,3.5vw,55px)
}
.section-heading .underlined-link {
  margin-bottom:2px
}
.home-filter-row {
  display:flex;
  gap:28px;
  margin-bottom:28px;
  border-bottom:1px solid var(--line)
}
.home-filter {
  font-size:11px;
  min-height:43px;
  border-bottom:2px solid transparent;
  margin-bottom:-1px;
  color:var(--muted)
}
.home-filter.selected {
  color:var(--ink);
  border-color:var(--ink);
  font-weight:700
}
.product-grid {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:24px 19px
}
.product-card {
  min-width:0
}
.product-visual {
  position:relative;
  background:var(--photo);
  color:#202322;
  overflow:hidden
}
.product-photo {
  display:block;
  aspect-ratio:1/1.075;
  position:relative;
  overflow:hidden
}
.product-photo>img {
  width:100%;
  height:100%;
  object-fit:contain;
  mix-blend-mode:multiply;
  transition:transform .65s var(--ease),opacity .5s
}
.product-photo .alternate-photo {
  position:absolute;
  inset:0;
  opacity:0
}
.product-photo:hover>img {
  transform:scale(1.04)
}
.product-photo:hover:has(.alternate-photo)>img:first-child {
  opacity:0
}
.product-photo:hover .alternate-photo {
  opacity:1
}
.save-button {
  position:absolute;
  top:9px;
  right:9px;
  width:40px;
  height:40px;
  display:grid;
  place-items:center
}
.save-button .icon {
  width:19px;
  height:19px
}
.save-button:hover {
  background:#e2e3dd
}
.save-button[aria-pressed=true] {
  background:#e9c4b9
}
.quick-button {
  position:absolute;
  bottom:13px;
  right:13px;
  display:flex;
  align-items:center;
  gap:7px;
  min-width:33px;
  min-height:33px;
  padding:5px;
  background:#fbfcf8;
  transition:background .2s
}
.quick-button .icon {
  width:18px;
  height:18px
}
.quick-button>span:not(.icon) {
  font-size:9px;
  font-weight:700;
  max-width:0;
  opacity:0;
  overflow:hidden;
  white-space:nowrap;
  transition:max-width .25s,opacity .25s
}
.quick-button:hover {
  background:#e3e6dc
}
.quick-button:hover>span:not(.icon) {
  max-width:65px;
  opacity:1;
  margin-right:7px
}
.product-info {
  padding:16px 0
}
.product-brand {
  font-size:9px;
  color:var(--muted);
  margin-bottom:6px;
  letter-spacing:.2px
}
.product-name-price {
  display:flex;
  align-items:flex-start;
  gap:12px;
  justify-content:space-between
}
.product-name {
  font-weight:700;
  font-size:11px;
  line-height:1.55;
  min-width:0
}
.product-name:hover {
  text-decoration:underline;
  text-underline-offset:3px
}
.product-price {
  font-size:10px;
  font-weight:700;
  white-space:nowrap;
  padding-top:2px;
  font-variant-numeric:tabular-nums
}
.product-color {
  font-size:10px;
  line-height:1.6;
  color:var(--muted);
  margin-top:5px
}
.selection-section {
  padding-bottom:45px
}
.editorial-grid {
  display:grid;
  grid-template-columns:1.15fr 1fr;
  gap:22px;
  padding-top:20px
}
.editorial-card {
  min-height:540px;
  position:relative;
  overflow:hidden;
  isolation:isolate
}
.court-edit>img {
  position:absolute;
  inset:0;
  object-fit:cover;
  width:100%;
  height:100%;
  z-index:-2;
  transition:transform 1s var(--ease)
}
.court-edit:after {
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(0deg,rgba(12,18,21,.65),transparent 75%);
  z-index:-1
}
.court-edit:hover>img {
  transform:scale(1.035)
}
.editorial-copy {
  position:absolute;
  bottom:35px;
  left:35px;
  right:35px;
  color:#fafbf5
}
.editorial-copy .overline {
  font-size:8px;
  letter-spacing:1.6px;
  margin-bottom:17px
}
.editorial-copy h2 {
  font-size:45px;
  line-height:1.02;
  letter-spacing:-.05em
}
.editorial-cta {
  display:flex;
  align-items:center;
  justify-content:space-between;
  font-size:10px;
  font-weight:700;
  margin-top:25px;
  gap:20px
}
.editorial-cta .icon {
  width:23px;
  height:23px
}
.court-edit .editorial-cta .icon {
  filter:invert(1)
}
.runner-edit {
  background:#e7e9e4;
  color:#232823;
  padding:35px;
  display:flex;
  flex-direction:column
}
.runner-heading {
  position:relative;
  z-index:1
}
.runner-heading .overline {
  font-size:8px;
  letter-spacing:1.6px;
  margin-bottom:17px
}
.runner-heading h2 {
  font-size:55px;
  line-height:.98
}
.runner-edit>img {
  position:absolute;
  top:16%;
  left:0;
  width:100%;
  height:72%;
  object-fit:contain;
  mix-blend-mode:multiply;
  transform:rotate(-18deg);
  transition:transform .7s var(--ease)
}
.runner-edit:hover>img {
  transform:rotate(-12deg) scale(1.03)
}
.runner-edit .editorial-cta {
  margin-top:auto;
  position:relative
}
.brand-index {
  padding-top:25px
}
.brand-index .section-heading {
  margin-bottom:40px
}
.brand-index-grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  column-gap:50px
}
.brand-index-grid>a {
  display:flex;
  align-items:center;
  gap:10px;
  min-height:57px;
  border-bottom:1px solid var(--line);
  font-size:15px;
  font-weight:600;
  transition:color .25s
}
.brand-index-grid>a>span {
  font-size:9px;
  font-weight:400;
  color:var(--muted)
}
.brand-index-grid .icon {
  width:17px;
  height:17px;
  margin-left:auto
}
.brand-index-grid>a:hover {
  color:var(--accent)
}
.manifesto-strip {
  background:var(--surface);
  display:grid;
  grid-template-columns:.55fr 1.4fr 1fr;
  align-items:center;
  gap:5vw;
  padding:65px var(--gutter)
}
.manifesto-mark>img {
  width:112px;
  height:120px;
  opacity:.9
}
.manifesto-strip .overline {
  margin-bottom:17px;
  font-size:8px
}
.manifesto-strip h2 {
  font-size:clamp(36px,4vw,61px)
}
.manifesto-text>p {
  font-size:12px;
  line-height:1.8;
  max-width:310px;
  margin-bottom:12px
}
.manifesto-text>p:nth-child(2) {
  color:var(--muted);
  font-size:11px
}
.manifesto-text .underlined-link {
  margin-top:12px;
  font-size:10px
}
.journal-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:25px
}
.journal-image {
  aspect-ratio:1.36;
  background:var(--photo);
  overflow:hidden
}
.journal-image>img {
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .8s var(--ease)
}
.journal-image.product-cover>img {
  object-fit:contain;
  mix-blend-mode:multiply
}
.journal-card {
  position:relative;
  padding-bottom:18px
}
.journal-card:hover .journal-image>img {
  transform:scale(1.035)
}
.journal-meta {
  display:flex;
  justify-content:space-between;
  margin:20px 0 12px;
  font-size:8px;
  color:var(--muted);
  text-transform:uppercase;
  letter-spacing:.8px
}
.journal-card h3 {
  font-size:20px;
  font-weight:600;
  letter-spacing:-.7px;
  padding-right:28px;
  line-height:1.25
}
.journal-card>.icon {
  position:absolute;
  right:0;
  bottom:20px;
  width:20px;
  height:20px
}
.social-invitation {
  background:var(--surface);
  max-width:none;
  display:grid;
  grid-template-columns:1fr 1fr;
  align-items:center;
  gap:10%;
  position:relative;
  overflow:hidden
}
.social-invitation h2 {
  font-size:66px;
  margin-top:20px;
  line-height:.98
}
.social-invitation>div:nth-child(2) {
  position:relative;
  z-index:1
}
.social-invitation>div:nth-child(2)>p {
  font-size:13px;
  line-height:1.8;
  max-width:280px;
  margin-bottom:25px
}
.social-large {
  position:absolute;
  right:1%;
  bottom:-100px;
  font-size:360px;
  font-weight:900;
  color:var(--ink);
  opacity:.035;
  line-height:1;
  letter-spacing:-30px;
  pointer-events:none
}
.site-footer {
  padding:65px var(--gutter) 24px
}
.footer-top {
  display:grid;
  grid-template-columns:2fr repeat(3,1fr);
  gap:55px
}
.footer-brand>p {
  font-size:11px;
  line-height:1.8;
  color:var(--muted);
  margin:20px 0
}
.instagram-link {
  font-size:9px;
  display:flex;
  align-items:center;
  gap:15px
}
.instagram-link .icon {
  width:14px;
  height:14px
}
.footer-link-group {
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:12px;
  font-size:10px
}
.footer-link-group h3 {
  font-size:10px;
  font-weight:700;
  margin:4px 0 10px
}
.footer-link-group button {
  text-align:left
}
.footer-link-group a:hover,.footer-link-group button:hover {
  color:var(--accent)
}
.footer-link-group .icon {
  width:12px;
  height:12px
}
.footer-statement {
  font-size:9.5vw;
  line-height:1.2;
  font-weight:900;
  letter-spacing:-.07em;
  margin:60px 0 27px;
  white-space:nowrap
}
.footer-bottom {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:20px;
  font-size:7px;
  letter-spacing:.5px;
  border-top:1px solid var(--line);
  padding-top:24px;
  color:var(--muted)
}
.footer-bottom>a {
  display:flex;
  align-items:center;
  gap:12px;
  color:var(--ink);
  white-space:nowrap
}
.footer-bottom .icon {
  width:13px;
  height:13px
}
.footer-evidence {
  display:grid;
  grid-template-columns:1.3fr 1fr 1fr;
  gap:40px;
  padding:32px 0;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  margin-top:35px;
  font-size:11px;
  line-height:1.8
}
.footer-evidence h3 {
  font-size:11px;
  margin-bottom:12px
}
.footer-socials {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:0 20px
}
.footer-socials a {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  min-height:42px;
  border-bottom:1px solid var(--line);
  font-size:12px
}
.footer-socials a span {
  flex-shrink:0
}
.footer-review-link {
  display:block;
  padding:0 0 17px
}
.footer-review-link+.footer-review-link {
  padding-top:17px;
  border-top:1px solid var(--line)
}
.footer-evidence small {
  display:block;
  color:var(--muted);
  font-size:11px;
  line-height:1.7;
  margin-top:12px;
  max-width:44ch
}
.footer-review-score {
  font-size:26px;
  font-weight:700;
  line-height:1.3;
  letter-spacing:-1px
}
.footer-review-score span {
  font-size:11px;
  font-weight:400;
  letter-spacing:0
}
.footer-map-link {
  display:inline-block;
  border-bottom:1px solid var(--line);
  margin-top:9px
}
.footer-evidence a:hover {
  color:var(--accent)
}
.breadcrumbs {
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  padding:21px var(--gutter) 0;
  font-size:9px;
  color:var(--muted);
  max-width:var(--max);
  margin:auto
}
.breadcrumbs>a:hover {
  color:var(--ink)
}
.collection-intro {
  padding-top:40px;
  padding-bottom:40px;
  display:grid;
  grid-template-columns:1.5fr 1fr;
  gap:50px;
  align-items:center
}
.collection-intro h1 {
  font-size:clamp(45px,5.7vw,88px);
  margin:14px 0 20px
}
.collection-intro>div>p:not(.overline) {
  font-size:12px;
  line-height:1.8;
  max-width:430px;
  color:var(--muted)
}
.collection-intro-visual {
  position:relative;
  height:225px;
  background:var(--surface);
  overflow:hidden
}
.collection-intro-visual>img {
  width:100%;
  height:100%;
  object-fit:contain;
  mix-blend-mode:multiply;
  transform:rotate(-8deg);
  padding:12px
}
.collection-count {
  position:absolute;
  bottom:12px;
  right:15px;
  font-size:8px;
  color:#454b42
}
.collection-shop {
  padding-top:30px;
  display:grid;
  grid-template-columns:185px minmax(0,1fr);
  gap:45px;
  border-top:1px solid var(--line)
}
.collection-sidebar {
  font-size:10px
}
.sidebar-head {
  font-weight:700;
  padding:8px 0 23px
}
.filter-group {
  padding:0 0 25px;
  margin-bottom:23px;
  border-bottom:1px solid var(--line)
}
.filter-group h2 {
  font-size:11px;
  letter-spacing:0;
  font-weight:700;
  margin-bottom:13px
}
.sidebar-brands {
  display:flex;
  flex-direction:column;
  gap:11px
}
.sidebar-brands>a {
  display:flex;
  justify-content:space-between;
  font-size:10px;
  color:var(--muted)
}
.sidebar-brands>a>span:last-child {
  font-size:8px
}
.sidebar-brands [aria-current] {
  color:var(--ink);
  font-weight:700
}
.sidebar-brands>a:hover {
  color:var(--accent)
}
.sidebar-all {
  font-size:9px;
  display:flex;
  gap:15px;
  align-items:center;
  margin-top:20px
}
.sidebar-all .icon {
  width:13px;
  height:13px
}
.check-label {
  display:flex;
  align-items:center;
  gap:10px;
  margin-bottom:10px;
  font-size:10px;
  min-height:24px;
  cursor:pointer
}
.check-label input {
  width:14px;
  height:14px;
  accent-color:var(--ink);
  margin:0
}
.filter-group select {
  max-width:100%;
  width:100%;
  font-size:10px;
  padding:11px;
  border:1px solid var(--line);
  background:var(--paper);
  color:var(--ink)
}
.reset-filters {
  font-size:9px;
  gap:22px
}
.reset-filters .icon {
  width:13px;
  height:13px
}
.shop-toolbar {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:15px;
  padding:7px 0 22px;
  font-size:10px;
  border-bottom:1px solid var(--line);
  margin-bottom:24px
}
.sort-control {
  display:flex;
  align-items:center;
  gap:12px;
  color:var(--muted);
  font-size:9px
}
.sort-control select {
  background:var(--paper);
  color:var(--ink);
  border:0;
  font-size:10px;
  padding:8px 0 8px 8px;
  max-width:150px
}
.collection-grid {
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:25px 17px
}
.collection-grid .product-photo {
  aspect-ratio:1/1.12
}
.active-filter-list {
  display:flex;
  gap:8px;
  flex-wrap:wrap
}
.active-filter-list:not(:empty) {
  margin-bottom:20px
}
.active-filter-list>button {
  font-size:9px;
  background:var(--surface);
  display:flex;
  align-items:center;
  gap:12px;
  padding:8px 11px
}
.active-filter-list .icon {
  width:12px;
  height:12px
}
.load-more-wrap {
  text-align:center;
  padding-top:42px
}
.load-more-wrap>p {
  font-size:10px;
  color:var(--muted);
  margin-bottom:16px
}
.mobile-filter-open,.mobile-filter-close,.mobile-filter-apply {
  display:none
}
.page-intro {
  font-size:14px;
  line-height:1.8;
  max-width:560px;
  color:var(--muted);
  margin-bottom:40px
}
.directory-intro {
  max-width:700px
}
.directory-intro h1 {
  font-size:90px;
  margin:18px 0 25px
}
.directory-intro>p:last-child {
  font-size:13px;
  line-height:1.9;
  max-width:450px;
  color:var(--muted)
}
.directory-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:0 40px;
  margin-top:60px
}
.directory-grid>a {
  padding:27px 0 24px;
  border-top:1px solid var(--line);
  position:relative;
  display:flex;
  flex-direction:column;
  min-height:205px
}
.directory-letter {
  font-size:9px;
  color:var(--muted);
  margin-bottom:18px
}
.directory-grid h2 {
  font-size:25px;
  letter-spacing:-1px
}
.directory-grid p {
  font-size:11px;
  line-height:1.8;
  color:var(--muted);
  max-width:310px;
  margin:13px 0 20px
}
.directory-grid>a>div {
  display:flex;
  justify-content:space-between;
  align-items:center;
  font-size:9px;
  margin-top:auto
}
.directory-grid .icon {
  width:17px;
  height:17px
}
.directory-grid>a:hover h2 {
  color:var(--accent)
}
.product-page {
  display:grid;
  grid-template-columns:1.25fr 1fr;
  gap:7%;
  padding-top:27px;
  align-items:start
}
.product-gallery {
  min-width:0
}
.main-product-image {
  background:var(--photo);
  color:#202322
}
.zoom-product {
  width:100%;
  display:block;
  position:relative;
  overflow:hidden
}
.zoom-product>img {
  width:100%;
  aspect-ratio:1.1;
  object-fit:contain;
  mix-blend-mode:multiply;
  transition:transform .6s var(--ease)
}
.zoom-product:hover>img {
  transform:scale(1.04)
}
.zoom-product>.icon {
  position:absolute;
  bottom:22px;
  right:22px;
  background:#fafbf7;
  width:35px;
  height:35px;
  padding:9px
}
.gallery-thumbnails {
  display:flex;
  gap:10px;
  margin-top:13px
}
.gallery-thumbnails>button {
  width:82px;
  background:var(--photo);
  border:1px solid transparent
}
.gallery-thumbnails>button.selected {
  border-color:var(--ink)
}
.gallery-thumbnails img {
  width:100%;
  aspect-ratio:1.15;
  object-fit:contain;
  mix-blend-mode:multiply
}
.image-caption {
  font-size:8px;
  line-height:1.8;
  color:var(--muted);
  display:flex;
  justify-content:space-between;
  gap:15px;
  margin-top:15px
}
.image-caption>span {
  text-align:right
}
.detail-gallery-image {
  margin-top:35px;
  background:var(--photo)
}
.detail-gallery-image>img {
  width:100%;
  mix-blend-mode:multiply
}
.purchase-panel {
  padding-top:5px;
  min-width:0
}
.purchase-brand {
  display:flex;
  align-items:center;
  justify-content:space-between;
  font-size:10px
}
.purchase-brand .icon {
  width:19px;
  height:19px
}
.purchase-brand a {
  border-bottom:1px solid var(--line)
}
.purchase-panel h1 {
  font-size:clamp(30px,3.2vw,48px);
  line-height:1.1;
  margin:11px 0 15px;
  letter-spacing:-.045em
}
.purchase-color {
  font-size:12px;
  color:var(--muted)
}
.purchase-price {
  font-size:24px;
  font-weight:700;
  margin-top:25px;
  font-variant-numeric:tabular-nums;
  line-height:1.3
}
.purchase-price small {
  display:block;
  font-size:8px;
  font-weight:400;
  color:var(--muted);
  margin-top:5px
}
.purchase-description {
  font-size:11px;
  line-height:1.9;
  color:var(--muted);
  margin:21px 0 27px;
  max-width:450px
}
.size-header {
  display:flex;
  justify-content:space-between;
  gap:10px;
  font-size:10px;
  margin-bottom:13px
}
.size-header strong {
  margin-left:5px;
  font-size:8px
}
.size-header>button {
  display:flex;
  align-items:center;
  gap:8px;
  border-bottom:1px solid var(--line);
  font-size:9px
}
.size-header .icon {
  width:12px;
  height:12px
}
.size-options {
  display:grid;
  grid-template-columns:repeat(6,1fr);
  gap:7px
}
.size-option {
  border:1px solid var(--line);
  height:43px;
  font-size:11px;
  transition:background .2s,border-color .2s
}
.size-option:hover {
  border-color:var(--ink)
}
.size-option.selected {
  background:var(--ink);
  color:var(--paper);
  border-color:var(--ink)
}
.size-error {
  font-size:9px;
  color:var(--accent);
  min-height:25px;
  padding-top:7px
}
.add-to-bag {
  width:100%
}
.purchase-disclaimer {
  font-size:8px;
  line-height:1.8;
  color:var(--muted);
  margin:14px 0 20px
}
.purchase-services {
  display:flex;
  flex-direction:column;
  gap:13px;
  font-size:9px;
  padding:20px 0;
  border-top:1px solid var(--line)
}
.purchase-services>a,.purchase-services>span {
  display:flex;
  gap:10px;
  align-items:center
}
.purchase-services .icon {
  width:15px;
  height:15px
}
.product-accordions {
  border-top:1px solid var(--line);
  margin-top:7px
}
.product-accordions details {
  border-bottom:1px solid var(--line);
  padding:17px 0;
  font-size:11px
}
.product-accordions summary {
  list-style:none;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  cursor:pointer;
  font-weight:700
}
.product-accordions summary::-webkit-details-marker {
  display:none
}
.product-accordions summary .icon {
  width:15px;
  height:15px
}
.product-accordions details[open] summary .icon {
  transform:rotate(45deg)
}
.product-accordions details>p {
  padding-top:15px;
  font-size:10px;
  line-height:1.9;
  color:var(--muted)
}
.related-products {
  border-top:1px solid var(--line)
}
.article-page {
  padding-top:55px
}
.article-page>header {
  padding:0 var(--gutter);
  max-width:950px;
  margin:0 auto 45px
}
.article-page h1 {
  font-size:64px;
  margin:22px 0
}
.article-intro {
  font-size:19px;
  line-height:1.7;
  max-width:700px;
  color:var(--muted)
}
.article-cover {
  max-width:1200px;
  margin:auto;
  background:var(--photo)
}
.article-cover>img {
  width:100%;
  max-height:650px;
  object-fit:cover
}
.article-body {
  max-width:660px;
  margin:60px auto 90px;
  padding:0 20px
}
.article-body section {
  margin-bottom:35px
}
.article-body h2 {
  font-size:28px;
  margin-bottom:17px
}
.article-body p {
  font-size:14px;
  line-height:1.9;
  color:var(--muted)
}
.about-hero h1 {
  font-size:78px;
  margin:24px 0 45px
}
.about-intro {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10%
}
.about-intro>p {
  font-size:26px;
  line-height:1.5;
  max-width:470px;
  letter-spacing:-.7px
}
.about-intro>div>p {
  font-size:13px;
  line-height:1.9;
  color:var(--muted);
  margin-bottom:17px
}
.about-campaign>img {
  width:100%;
  max-height:650px;
  object-fit:cover
}
.about-values {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:8%
}
.about-values>div>span {
  font-size:10px;
  color:var(--accent)
}
.about-values h2 {
  font-size:35px;
  margin:20px 0
}
.about-values p {
  font-size:12px;
  line-height:1.9;
  color:var(--muted)
}
.contact-page {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12%;
  min-height:70dvh
}
.contact-page h1 {
  font-size:75px;
  margin:25px 0
}
.contact-page>div>p:last-child {
  font-size:13px;
  color:var(--muted);
  line-height:1.9;
  max-width:390px
}
.contact-options>a {
  display:block;
  position:relative;
  padding:28px 0;
  border-bottom:1px solid var(--line)
}
.contact-options>a>span {
  font-size:8px;
  letter-spacing:1.3px
}
.contact-options h2 {
  font-size:26px;
  letter-spacing:-1px;
  margin-top:15px;
  word-break:break-word
}
.contact-options>a>.icon {
  position:absolute;
  right:0;
  bottom:25px;
  width:22px;
  height:22px
}
.contact-note {
  padding-top:28px
}
.contact-note h3 {
  font-size:15px;
  margin-bottom:12px
}
.contact-note p {
  font-size:11px;
  line-height:1.9;
  color:var(--muted)
}
.collectibles-hero {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8%;
  align-items:center;
  min-height:680px
}
.collectibles-hero h1 {
  font-size:62px;
  line-height:1.05;
  margin:24px 0
}
.collectibles-hero>div>p:last-of-type {
  font-size:13px;
  line-height:1.9;
  max-width:430px;
  color:var(--muted);
  margin-bottom:30px
}
.collectibles-art {
  height:460px;
  position:relative;
  perspective:1000px
}
.collector-card {
  position:absolute;
  top:30px;
  left:20%;
  width:245px;
  height:350px;
  border:1px solid #c8c9c4;
  background:#222725;
  padding:25px;
  box-shadow:10px 30px 40px #1b252320;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:space-between;
  transform:rotate(13deg);
  color:#eeeee8
}
.collector-card>span {
  font-size:8px;
  letter-spacing:1.7px
}
.collector-card>img {
  filter:invert(1);
  width:70px;
  height:76px
}
.collector-card>strong {
  font-size:30px;
  line-height:.95;
  letter-spacing:-1.5px;
  align-self:flex-start
}
.card-back {
  transform:rotate(-15deg) translate(-45px,5px);
  background:#d7d9d1;
  justify-content:center
}
.card-back>img {
  filter:none;
  width:95px;
  height:110px;
  opacity:.6
}
.collectibles-note {
  border-top:1px solid var(--line);
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:40px
}
.collectibles-note>p {
  font-size:13px;
  line-height:1.9;
  color:var(--muted);
  max-width:600px
}
.wishlist-page {
  min-height:60dvh
}
.identity-board {
  width:100%;
  margin-top:35px
}
.identity-downloads {
  display:flex;
  gap:20px;
  margin-top:25px;
  flex-wrap:wrap
}
.not-found {
  padding-top:100px;
  padding-bottom:100px;
  min-height:60dvh
}
.not-found h1 {
  font-size:70px;
  margin:25px 0
}
.not-found>p:not(.overline) {
  font-size:14px;
  color:var(--muted);
  margin-bottom:28px
}
dialog {
  border:0;
  background:var(--paper);
  color:var(--ink);
  max-height:92dvh;
  max-width:calc(100% - 40px);
  padding:32px;
  overscroll-behavior:contain;
  box-shadow:0 25px 80px #111a1430
}
dialog::backdrop {
  background:#151a19a6;
  backdrop-filter:blur(4px)
}
.dialog-head {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:24px
}
.dialog-head .overline {
  font-size:8px;
  color:var(--muted);
  margin-bottom:8px
}
.dialog-head h2 {
  font-size:31px;
  letter-spacing:-1.2px
}
.dialog-head>.icon-button {
  margin-right:-10px;
  flex-shrink:0
}
.search-dialog {
  width:800px;
  padding:35px 38px
}
.search-dialog>label {
  display:block;
  font-size:10px;
  color:var(--muted);
  margin-top:28px
}
.search-field {
  border-bottom:1px solid var(--ink);
  display:flex;
  align-items:center;
  gap:18px;
  padding:9px 0;
  margin-top:4px
}
.search-field input {
  width:100%;
  background:none;
  border:0;
  padding:12px 0;
  font-size:23px;
  min-width:0
}
.search-suggestions {
  display:flex;
  gap:15px;
  align-items:center;
  flex-wrap:wrap;
  font-size:9px;
  margin-top:19px
}
.search-suggestions>span {
  color:var(--muted);
  margin-right:3px
}
.search-suggestions>button {
  border-bottom:1px solid var(--line);
  min-height:26px
}
.search-brand-matches {
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin-top:25px
}
.search-brand-matches>a {
  display:flex;
  align-items:center;
  gap:15px;
  border:1px solid var(--line);
  padding:7px 12px;
  font-size:9px
}
.search-brand-matches .icon {
  width:12px;
  height:12px
}
.search-result-label {
  font-size:9px;
  color:var(--muted);
  margin:25px 0 10px
}
.search-result {
  display:flex;
  align-items:center;
  gap:18px;
  padding:10px 0;
  border-bottom:1px solid var(--line)
}
.search-result>img {
  width:90px;
  height:78px;
  object-fit:contain;
  background:var(--photo)
}
.search-result>span {
  flex:1;
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:4px
}
.search-result small {
  font-size:8px;
  color:var(--muted)
}
.search-result strong {
  font-size:12px;
  line-height:1.4
}
.search-result em {
  font-style:normal;
  color:var(--muted);
  font-size:9px
}
.search-result>b {
  font-size:11px;
  white-space:nowrap
}
.search-result>.icon {
  width:17px;
  height:17px
}
.search-empty {
  padding:35px 0
}
.search-empty h3 {
  font-size:23px;
  margin-bottom:12px
}
.search-empty p {
  font-size:12px;
  color:var(--muted);
  margin-bottom:15px
}
.cart-dialog {
  position:fixed;
  inset:0;
  margin:0 0 0 auto;
  width:520px;
  max-width:100%;
  max-height:100dvh;
  height:100dvh;
  display:none;
  padding:26px 30px
}
.cart-dialog[open] {
  display:flex;
  flex-direction:column
}
.cart-dialog>.dialog-head {
  padding-bottom:22px;
  border-bottom:1px solid var(--line)
}
.small-count {
  font-size:14px;
  font-weight:400;
  letter-spacing:0;
  margin-left:12px;
  color:var(--muted)
}
#cart-content {
  display:flex;
  flex-direction:column;
  min-height:0;
  flex:1;
  overflow:auto
}
.empty-state {
  grid-column:1/-1;
  text-align:center;
  padding:80px 20px
}
.empty-state h2,.empty-state h3 {
  font-size:30px;
  letter-spacing:-1px;
  font-weight:700;
  line-height:1.15
}
.empty-state p {
  font-size:12px;
  line-height:1.9;
  color:var(--muted);
  margin:17px 0 25px
}
.empty-symbol {
  display:flex;
  justify-content:center;
  margin-bottom:25px
}
.empty-symbol .icon {
  width:38px;
  height:38px
}
.cart-dialog .empty-state {
  margin:auto;
  padding-top:50px;
  padding-bottom:50px
}
.bag-items {
  flex:1
}
.bag-item {
  display:grid;
  grid-template-columns:105px 1fr auto;
  gap:15px;
  padding:25px 0;
  border-bottom:1px solid var(--line)
}
.bag-item>a>img {
  width:105px;
  height:120px;
  object-fit:contain;
  background:var(--photo)
}
.bag-item-details {
  min-width:0
}
.bag-item-brand {
  font-size:8px;
  color:var(--muted);
  display:block;
  margin-bottom:4px
}
.bag-item-name {
  font-size:11px;
  font-weight:700;
  line-height:1.5;
  display:block
}
.bag-item-details>p {
  font-size:9px;
  color:var(--muted);
  margin-top:5px
}
.bag-size {
  display:block;
  font-size:9px;
  margin-top:7px
}
.bag-line-price {
  font-size:10px;
  white-space:nowrap;
  margin-top:17px
}
.bag-item-controls {
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:center;
  margin-top:15px
}
.quantity-control {
  border:1px solid var(--line);
  display:flex;
  align-items:center;
  font-size:10px
}
.quantity-control>button {
  width:28px;
  height:30px
}
.quantity-control>span {
  width:20px;
  text-align:center
}
.remove-item {
  font-size:8px;
  min-height:30px;
  border-bottom:1px solid var(--line)
}
.bag-summary {
  padding-top:26px
}
.bag-summary>div {
  display:flex;
  justify-content:space-between;
  font-size:16px
}
.bag-summary>p {
  font-size:9px;
  line-height:1.8;
  color:var(--muted);
  margin:13px 0 20px
}
.bag-summary>.button {
  width:100%
}
.bag-summary>.bag-note {
  font-size:8px;
  margin-bottom:0
}
.quick-dialog {
  width:1000px;
  padding:0;
  position:relative
}
.floating-close {
  position:absolute;
  right:13px;
  top:13px;
  background:var(--paper);
  z-index:2
}
.quick-layout {
  display:grid;
  grid-template-columns:1fr 1fr;
  align-items:start
}
.quick-image {
  position:sticky;
  top:0;
  background:var(--photo);
  min-height:580px;
  display:grid;
  align-items:center
}
.quick-image>img {
  width:100%;
  mix-blend-mode:multiply
}
.quick-layout .purchase-panel {
  padding:38px 34px 28px
}
.quick-layout h1 {
  font-size:32px
}
.quick-layout .purchase-brand {
  padding-right:23px
}
.quick-layout .purchase-services,.quick-layout .product-accordions {
  display:none
}
.full-detail-link {
  font-size:10px;
  margin-top:6px
}
.quick-loading {
  padding:60px 30px
}
.quick-loading h2 {
  font-size:30px;
  margin:20px 0
}
.quick-loading>p:last-child {
  font-size:10px;
  color:var(--muted);
  margin-top:20px
}
.skeleton-line {
  height:16px;
  background:var(--surface);
  margin:15px 0;
  width:100%
}
.skeleton-line.short {
  width:60%
}
.info-dialog {
  width:650px;
  padding:32px 36px
}
.info-dialog h2 {
  font-size:31px;
  line-height:1.1
}
#info-content {
  font-size:12px;
  line-height:1.9;
  padding-top:22px
}
#info-content p {
  color:var(--muted);
  margin-bottom:20px
}
#info-content .info-lead {
  color:var(--ink);
  font-size:21px;
  line-height:1.5;
  margin-bottom:23px
}
.guide-links {
  display:flex;
  flex-direction:column;
  gap:10px;
  margin:25px 0
}
.guide-links>a {
  font-size:11px;
  text-decoration:underline;
  text-underline-offset:3px
}
.summary-items>div {
  display:flex;
  justify-content:space-between;
  gap:15px;
  border-bottom:1px solid var(--line);
  padding:15px 0;
  font-size:11px
}
.summary-items small {
  display:block;
  color:var(--muted);
  font-size:9px;
  margin-top:5px
}
.summary-items strong {
  white-space:nowrap
}
.summary-total {
  display:flex;
  justify-content:space-between;
  padding:24px 0;
  font-size:14px
}
.summary-instagram {
  display:flex;
  width:max-content;
  font-size:10px;
  margin-top:16px
}
#copy-fallback {
  margin-top:20px
}
#copy-fallback label {
  display:block;
  font-size:10px
}
#copy-fallback textarea {
  width:100%;
  min-height:170px;
  padding:12px;
  background:var(--surface);
  color:var(--ink);
  border:1px solid var(--line);
  font-size:11px
}
.zoomed-image {
  width:100%;
  background:var(--photo)
}
.toast {
  position:fixed;
  bottom:25px;
  left:50%;
  transform:translate(-50%,15px);
  background:#292e2b;
  color:#f6f6ef;
  z-index:30;
  padding:15px 22px;
  display:flex;
  gap:25px;
  align-items:center;
  max-width:calc(100vw - 30px);
  font-size:11px;
  opacity:0;
  pointer-events:none;
  transition:opacity .2s,transform .2s;
  box-shadow:0 5px 25px #171c1925
}
.toast.visible {
  opacity:1;
  transform:translate(-50%,0);
  pointer-events:auto
}
.toast>button {
  color:#f4b29e;
  border-bottom:1px solid currentColor;
  font-size:11px;
  white-space:nowrap
}
.mobile-menu {
  width:100%;
  max-width:100%;
  height:100dvh;
  max-height:100dvh;
  margin:0;
  padding:25px
}
.mobile-menu>nav {
  display:flex;
  flex-direction:column;
  margin:40px 0
}
.mobile-menu>nav>a {
  display:flex;
  justify-content:space-between;
  align-items:center;
  font-size:25px;
  font-weight:700;
  letter-spacing:-1px;
  padding:15px 0;
  border-bottom:1px solid var(--line)
}
.mobile-menu>p {
  color:var(--muted);
  margin-bottom:20px
}
.mobile-brand-list {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
  font-size:12px
}
.mobile-instagram {
  display:flex;
  align-items:center;
  gap:25px;
  font-size:11px;
  margin-top:35px
}
.mobile-filter-dialog {
  max-width:95%;
  width:350px;
  height:100dvh;
  max-height:100dvh;
  position:fixed;
  inset:0;
  margin:0;
  padding:22px
}
.mobile-filter-dialog .collection-sidebar {
  display:block
}
.mobile-filter-dialog .sidebar-head {
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding-bottom:20px
}
.mobile-filter-dialog .mobile-filter-close {
  display:flex
}
.mobile-filter-dialog .mobile-filter-apply {
  display:flex;
  margin:25px 0 10px;
  width:100%
}
html[data-theme=dark] .icon:not(.product-visual .icon):not(.campaign-hero .icon):not(.button-dark .icon):not(.utility-bar .icon):not(.button-white .icon):not(.court-edit .icon):not(.runner-edit .icon) {
  filter:invert(1)
}
html[data-theme=dark] .brand-logo>img,html[data-theme=dark] .manifesto-mark>img {
  filter:invert(1)
}
@media(prefers-color-scheme:dark) {
  html:not([data-theme=light]) .icon:not(.product-visual .icon):not(.campaign-hero .icon):not(.button-dark .icon):not(.utility-bar .icon):not(.button-white .icon):not(.court-edit .icon):not(.runner-edit .icon) {
    filter:invert(1)
  }
  html:not([data-theme=light]) .brand-logo>img,html:not([data-theme=light]) .manifesto-mark>img {
    filter:invert(1)
  }
}
@media(prefers-reduced-motion:no-preference) {
  .campaign-content>* {
    animation:arrive .9s var(--ease) both
  }
  .campaign-content>h1 {
    animation-delay:.08s
  }
  .campaign-content>.hero-description {
    animation-delay:.16s
  }
  .campaign-content>.button {
    animation-delay:.24s
  }
  .reveal {
    opacity:0;
    transform:translateY(22px);
    transition:opacity .7s var(--ease),transform .7s var(--ease)
  }
  .reveal.revealed {
    opacity:1;
    transform:none
  }
  dialog[open] {
    animation:arrive .25s var(--ease)
  }
}
@keyframes arrive {
  from {
    opacity:0;
    transform:translateY(16px)
  }
  to {
    opacity:1;
    transform:translateY(0)
  }
}
@media(min-width:1700px) {
  :root {
    --gutter:max(5vw,calc((100vw - 1600px)/2))
  }
  .campaign-hero {
    height:730px;
    max-height:none
  }
  .campaign-content h1 {
    font-size:118px
  }
  .campaign-content {
    padding-top:65px
  }
  .site-header {
    height:90px
  }
  .brand-strip {
    max-width:none
  }
  .section {
    padding-left:50px;
    padding-right:50px
  }
  .site-footer {
    padding-left:var(--gutter);
    padding-right:var(--gutter)
  }
}
@media(max-width:1100px) {
  .main-nav {
    gap:18px;
    font-size:10px
  }
  .brand-logo>span {
    font-size:23px
  }
  .brand-logo>img {
    width:22px
  }
  .site-header {
    gap:16px;
    height:76px
  }
  .campaign-hero {
    height:600px;
    min-height:500px
  }
  .campaign-content h1 {
    font-size:78px
  }
  .campaign-content {
    padding-top:55px
  }
  .brand-strip {
    gap:18px;
    padding-top:25px;
    padding-bottom:25px
  }
  .brand-strip>span {
    display:none
  }
  .section {
    padding-top:65px;
    padding-bottom:65px
  }
  .product-grid {
    gap:23px 15px
  }
  .product-name-price {
    display:block
  }
  .product-price {
    display:block;
    padding-top:5px
  }
  .product-color {
    margin-top:4px
  }
  .editorial-grid {
    padding-top:0
  }
  .editorial-card {
    min-height:470px
  }
  .editorial-copy,.runner-edit {
    padding:0;
    left:25px;
    right:25px;
    bottom:30px
  }
  .runner-edit {
    left:auto;
    right:auto;
    bottom:auto;
    padding:28px
  }
  .editorial-copy h2 {
    font-size:39px
  }
  .runner-heading h2 {
    font-size:48px
  }
  .brand-index {
    padding-top:0
  }
  .manifesto-strip {
    gap:4vw
  }
  .manifesto-mark>img {
    width:85px;
    height:95px
  }
  .manifesto-strip h2 {
    font-size:42px
  }
  .manifesto-text>p {
    font-size:11px
  }
  .brand-index-grid {
    column-gap:30px
  }
  .brand-index-grid>a {
    font-size:13px
  }
  .journal-card h3 {
    font-size:18px
  }
  .footer-top {
    gap:32px
  }
  .footer-brand .brand-logo>span {
    font-size:22px
  }
  .footer-link-group {
    font-size:9px
  }
  .collection-shop {
    grid-template-columns:160px 1fr;
    gap:25px
  }
  .collection-grid {
    gap:25px 14px
  }
  .collection-intro {
    gap:25px
  }
  .product-page {
    gap:5%
  }
  .purchase-panel h1 {
    font-size:35px
  }
  .purchase-description {
    font-size:10px
  }
  .size-options {
    gap:5px
  }
  .size-option {
    font-size:10px
  }
  .size-header {
    font-size:9px
  }
  .article-page h1 {
    font-size:55px
  }
  .directory-intro h1 {
    font-size:75px
  }
  .contact-page h1 {
    font-size:65px
  }
}
@media(max-width:850px) {
  .site-header {
    height:72px
  }
  .main-nav {
    gap:14px
  }
  .brand-logo>span {
    font-size:22px
  }
  .brand-logo {
    gap:7px
  }
  .header-actions {
    gap:0
  }
  .icon-button {
    width:36px
  }
  .bag-toggle {
    width:48px
  }
  .brand-strip {
    gap:20px;
    overflow:auto
  }
  .brand-word {
    flex-shrink:0
  }
  .brand-strip-all {
    margin-left:7px;
    flex-shrink:0
  }
  .brand-word.brand-new-balance {
    min-width:75px
  }
  .campaign-content h1 {
    font-size:69px
  }
  .campaign-hero {
    height:570px;
    min-height:500px
  }
  .campaign-hero>picture>img {
    object-position:65% center
  }
  .campaign-content {
    justify-content:center
  }
  .hero-description {
    font-size:12px
  }
  .section-heading h2 {
    font-size:38px
  }
  .section-heading .underlined-link {
    font-size:10px
  }
  .product-grid {
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:30px 19px
  }
  .product-name-price {
    display:flex
  }
  .product-price {
    padding-top:1px
  }
  .editorial-grid {
    grid-template-columns:1fr 1fr;
    gap:17px
  }
  .editorial-card {
    min-height:420px
  }
  .editorial-copy h2 {
    font-size:32px
  }
  .runner-heading h2 {
    font-size:40px
  }
  .editorial-copy .overline,.runner-heading .overline {
    font-size:7px;
    letter-spacing:1px
  }
  .runner-edit>img {
    height:65%;
    top:22%
  }
  .brand-index-grid {
    column-gap:25px
  }
  .brand-index-grid>a {
    font-size:12px;
    min-height:52px
  }
  .manifesto-strip {
    grid-template-columns:1fr 1fr;
    padding:50px var(--gutter);
    gap:30px
  }
  .manifesto-mark {
    display:none
  }
  .manifesto-strip h2 {
    font-size:38px
  }
  .journal-grid {
    gap:18px
  }
  .journal-meta {
    font-size:7px;
    letter-spacing:.3px;
    gap:5px
  }
  .journal-card h3 {
    font-size:16px;
    padding-right:15px
  }
  .journal-card>.icon {
    width:14px;
    height:14px
  }
  .social-invitation h2 {
    font-size:52px
  }
  .footer-top {
    grid-template-columns:1.6fr 1fr 1fr;
    gap:30px
  }
  .footer-link-group:last-child {
    display:none
  }
  .footer-statement {
    margin-top:45px;
    font-size:9.4vw
  }
  .footer-evidence {
    grid-template-columns:1fr 1fr;
    gap:25px
  }
  .footer-evidence>div:first-child {
    grid-column:1/-1
  }
  .footer-bottom {
    font-size:6px;
    gap:15px
  }
  .mega-menu {
    grid-template-columns:1fr 2fr;
    gap:30px
  }
  .mega-feature {
    display:none
  }
  .mega-brands {
    column-gap:20px
  }
  .mega-intro h2 {
    font-size:27px
  }
  .collection-sidebar {
    display:none
  }
  .collection-shop {
    display:block
  }
  .mobile-filter-open {
    display:inline-flex;
    align-items:center;
    gap:7px;
    margin-right:20px;
    font-size:11px
  }
  .mobile-filter-open .icon {
    width:17px;
    height:17px
  }
  .collection-grid {
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:25px 15px
  }
  .collection-intro h1 {
    font-size:55px
  }
  .collection-intro-visual {
    height:195px
  }
  .product-page {
    grid-template-columns:1fr 1fr;
    gap:4%
  }
  .purchase-panel h1 {
    font-size:29px
  }
  .purchase-price {
    font-size:22px
  }
  .size-options {
    grid-template-columns:repeat(4,1fr)
  }
  .purchase-services {
    font-size:8px
  }
  .size-header {
    gap:8px
  }
  .size-header>button {
    font-size:8px
  }
  .purchase-description {
    margin:18px 0
  }
  .product-accordions summary {
    font-size:10px
  }
  .directory-grid {
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:0 30px
  }
  .about-hero h1 {
    font-size:60px
  }
  .about-intro>p {
    font-size:23px
  }
  .about-values {
    gap:5%
  }
  .about-values h2 {
    font-size:28px
  }
  .collectibles-hero h1 {
    font-size:43px
  }
  .collector-card {
    width:205px;
    height:310px;
    left:15%;
    top:65px
  }
  .collector-card>strong {
    font-size:26px
  }
  .contact-page {
    gap:6%
  }
  .contact-options h2 {
    font-size:23px
  }
  .quick-layout .purchase-panel {
    padding:35px 24px 25px
  }
  .quick-layout .purchase-panel h1 {
    font-size:28px
  }
  .quick-image {
    min-height:500px
  }
  .quick-dialog .size-options {
    grid-template-columns:repeat(5,1fr)
  }
}
@media(max-width:640px) {
  :root {
    --gutter:21px
  }
  .section {
    padding:48px var(--gutter)
  }
  .utility-bar {
    padding:8px 21px;
    justify-content:center;
    font-size:6.5px;
    letter-spacing:.85px
  }
  .utility-bar>a,.utility-bar>button {
    display:none
  }
  .site-header {
    height:67px;
    gap:10px
  }
  .brand-logo>span {
    font-size:24px;
    letter-spacing:-1.5px
  }
  .brand-logo>img {
    width:21px;
    height:24px
  }
  .brand-logo {
    gap:8px
  }
  .main-nav {
    display:none
  }
  .header-actions {
    gap:1px
  }
  .header-actions .icon-button {
    width:34px
  }
  .header-actions .bag-toggle {
    width:42px
  }
  .header-actions .wishlist-link {
    display:none
  }
  .header-actions .icon {
    width:20px;
    height:20px
  }
  .mobile-menu-toggle {
    display:flex
  }
  .cart-count {
    font-size:8px;
    min-width:10px
  }
  .campaign-hero {
    height:660px;
    min-height:620px;
    max-height:none
  }
  .campaign-hero>picture>img {
    object-position:63% 57%;
    height:100%;
    width:100%
  }
  .campaign-hero:after {
    background:linear-gradient(0deg,rgba(17,21,22,.87) 0%,rgba(17,21,22,.12) 64%,rgba(17,21,22,.08))
  }
  .campaign-content {
    padding:0 var(--gutter) 69px;
    justify-content:flex-end
  }
  .campaign-label {
    font-size:7px;
    letter-spacing:1.3px;
    margin-bottom:20px
  }
  .campaign-content h1 {
    font-size:clamp(48px,13.4vw,66px);
    line-height:.98;
    max-width:360px;
    letter-spacing:-.065em
  }
  .hero-description {
    font-size:11px;
    margin:18px 0 23px;
    line-height:1.75
  }
  .campaign-content .button {
    font-size:10px;
    min-height:48px;
    gap:35px;
    padding:0 19px
  }
  .campaign-bottom {
    left:21px;
    right:21px;
    bottom:21px;
    font-size:6px;
    letter-spacing:1px
  }
  .campaign-bottom>a {
    font-size:8px;
    gap:9px
  }
  .campaign-bottom .icon {
    width:13px;
    height:13px
  }
  .brand-strip {
    padding:22px 21px;
    gap:29px;
    scrollbar-width:none
  }
  .brand-strip::-webkit-scrollbar {
    display:none
  }
  .brand-nike {
    font-size:29px
  }
  .brand-jordan {
    font-size:18px
  }
  .brand-adidas {
    font-size:25px
  }
  .brand-asics {
    font-size:25px
  }
  .brand-salomon {
    font-size:18px
  }
  .brand-word.brand-new-balance {
    font-size:16px;
    min-width:65px;
    width:65px
  }
  .brand-strip-all {
    font-size:8px
  }
  .section-heading {
    gap:15px;
    margin-bottom:25px;
    align-items:flex-end
  }
  .section-heading .overline {
    font-size:7px;
    letter-spacing:1.4px;
    margin-bottom:12px
  }
  .section-heading h2 {
    font-size:33px;
    line-height:1.06;
    letter-spacing:-1.6px
  }
  .section-heading .underlined-link {
    font-size:8px;
    gap:8px;
    min-height:30px;
    flex-shrink:0;
    max-width:110px
  }
  .section-heading .underlined-link .icon {
    width:13px;
    height:13px
  }
  .home-filter-row {
    gap:22px;
    margin-bottom:22px;
    overflow:auto;
    white-space:nowrap;
    scrollbar-width:none
  }
  .home-filter {
    font-size:9px;
    min-height:41px
  }
  .product-grid {
    gap:26px 13px
  }
  .product-photo {
    aspect-ratio:1/1.12
  }
  .save-button {
    top:5px;
    right:5px;
    width:33px;
    height:33px
  }
  .save-button .icon {
    width:16px;
    height:16px
  }
  .quick-button {
    right:9px;
    bottom:9px;
    min-height:30px;
    min-width:30px;
    padding:6px
  }
  .quick-button .icon {
    width:17px;
    height:17px
  }
  .quick-button>span:not(.icon) {
    display:none
  }
  .product-info {
    padding:13px 0 0
  }
  .product-brand {
    font-size:8px;
    margin-bottom:5px
  }
  .product-name-price {
    display:block
  }
  .product-name {
    font-size:10px;
    min-height:30px;
    display:block;
    line-height:1.5
  }
  .product-price {
    font-size:10px;
    margin-top:7px;
    padding:0
  }
  .product-color {
    font-size:8px;
    margin-top:5px;
    line-height:1.6;
    min-height:24px
  }
  .selection-section {
    padding-bottom:39px
  }
  .editorial-grid {
    grid-template-columns:1fr;
    gap:17px;
    padding-top:0
  }
  .editorial-card {
    min-height:450px
  }
  .editorial-copy {
    left:26px;
    right:26px;
    bottom:28px
  }
  .editorial-copy h2 {
    font-size:40px;
    max-width:300px
  }
  .editorial-copy .overline,.runner-heading .overline {
    font-size:8px
  }
  .editorial-cta {
    font-size:10px;
    margin-top:23px
  }
  .runner-edit {
    min-height:430px;
    padding:27px
  }
  .runner-heading h2 {
    font-size:48px
  }
  .runner-edit>img {
    top:18%;
    left:0;
    height:72%;
    width:100%
  }
  .brand-index {
    padding-top:0
  }
  .brand-index .section-heading {
    margin-bottom:25px
  }
  .brand-index .section-heading h2 {
    font-size:35px
  }
  .brand-index-grid {
    grid-template-columns:1fr 1fr;
    gap:0 22px
  }
  .brand-index-grid>a {
    font-size:11px;
    gap:6px;
    min-height:55px;
    line-height:1.4
  }
  .brand-index-grid>a>span {
    font-size:7px
  }
  .brand-index-grid .icon {
    width:13px;
    height:13px
  }
  .manifesto-strip {
    display:block;
    padding:43px 25px
  }
  .manifesto-strip .overline {
    font-size:7px;
    letter-spacing:1.5px
  }
  .manifesto-strip h2 {
    font-size:45px;
    letter-spacing:-2.3px
  }
  .manifesto-text {
    margin-top:28px;
    max-width:310px
  }
  .manifesto-text>p {
    font-size:12px;
    line-height:1.8
  }
  .manifesto-text>p:nth-child(2) {
    font-size:11px
  }
  .manifesto-text .underlined-link {
    font-size:10px
  }
  .journal-grid {
    grid-template-columns:1fr;
    gap:32px
  }
  .journal-card {
    padding-bottom:0
  }
  .journal-image {
    aspect-ratio:1.45
  }
  .journal-meta {
    font-size:8px;
    margin:15px 0 11px;
    letter-spacing:.4px
  }
  .journal-card h3 {
    font-size:22px;
    padding-right:30px;
    letter-spacing:-.8px
  }
  .journal-card>.icon {
    bottom:3px;
    width:19px;
    height:19px
  }
  .social-invitation {
    display:block
  }
  .social-invitation h2 {
    font-size:53px;
    letter-spacing:-3px;
    margin-top:18px
  }
  .social-invitation .overline {
    font-size:7px;
    letter-spacing:1.5px
  }
  .social-invitation>div:nth-child(2) {
    margin-top:30px
  }
  .social-invitation>div:nth-child(2)>p {
    font-size:12px;
    max-width:280px
  }
  .social-large {
    font-size:300px;
    right:-30px;
    bottom:-40px;
    opacity:.025
  }
  .site-footer {
    padding:40px 21px 23px
  }
  .footer-top {
    grid-template-columns:1fr 1fr;
    gap:32px 25px
  }
  .footer-brand {
    grid-column:1/-1
  }
  .footer-brand .brand-logo>span {
    font-size:25px
  }
  .footer-brand>p {
    font-size:11px;
    margin:17px 0
  }
  .footer-link-group {
    font-size:10px;
    gap:13px
  }
  .footer-link-group h3 {
    font-size:10px;
    margin-bottom:4px
  }
  .footer-link-group:last-child {
    display:flex
  }
  .footer-statement {
    font-size:9.3vw;
    margin:36px 0 22px;
    letter-spacing:-.065em
  }
  .footer-bottom {
    font-size:6px;
    gap:14px;
    flex-wrap:wrap;
    padding-top:18px
  }
  .footer-bottom>span:nth-child(2) {
    order:3;
    width:100%;
    font-size:7px;
    line-height:1.8;
    letter-spacing:0
  }
  .footer-bottom>a {
    margin-left:auto;
    font-size:7px
  }
  .footer-evidence {
    grid-template-columns:1fr;
    gap:25px;
    margin-top:30px;
    padding:25px 0;
    font-size:11px
  }
  .footer-evidence>div:first-child {
    grid-column:auto
  }
  .footer-evidence small {
    font-size:11px
  }
  .footer-socials {
    gap:0 22px
  }
  .footer-socials a {
    min-height:44px
  }
  .breadcrumbs {
    padding-top:18px;
    font-size:8px;
    gap:7px
  }
  .collection-intro {
    grid-template-columns:1fr;
    gap:25px;
    padding-top:30px;
    padding-bottom:30px
  }
  .collection-intro h1 {
    font-size:48px;
    line-height:1.02;
    margin:17px 0
  }
  .collection-intro .overline {
    font-size:7px
  }
  .collection-intro>div>p:not(.overline) {
    font-size:11px;
    max-width:340px
  }
  .collection-intro-visual {
    height:170px
  }
  .collection-intro-visual>img {
    width:100%;
    height:100%;
    padding:0;
    transform:rotate(-10deg)
  }
  .collection-count {
    font-size:7px;
    bottom:10px
  }
  .collection-shop {
    padding-top:20px
  }
  .shop-toolbar {
    gap:10px;
    font-size:8px;
    margin-bottom:20px;
    padding-top:0;
    padding-bottom:15px
  }
  .mobile-filter-open {
    font-size:10px;
    margin-right:10px;
    gap:5px;
    min-height:37px
  }
  .mobile-filter-open .icon {
    width:16px
  }
  .sort-control {
    gap:5px
  }
  .sort-control>span {
    display:none
  }
  .sort-control select {
    font-size:9px;
    max-width:135px;
    padding:8px 0
  }
  .collection-grid {
    grid-template-columns:1fr 1fr;
    gap:27px 13px
  }
  .collection-grid .product-photo {
    aspect-ratio:1/1.15
  }
  .active-filter-list>button {
    font-size:8px
  }
  .load-more-wrap {
    padding-top:35px
  }
  .load-more-wrap>p {
    font-size:9px
  }
  .load-more-wrap>.button {
    font-size:10px;
    min-height:47px
  }
  .directory-intro h1 {
    font-size:66px;
    margin:19px 0 23px
  }
  .directory-intro>.overline {
    font-size:8px
  }
  .directory-intro>p:last-child {
    font-size:12px
  }
  .directory-grid {
    grid-template-columns:1fr;
    gap:0;
    margin-top:40px
  }
  .directory-grid>a {
    min-height:0;
    padding:25px 0
  }
  .directory-grid h2 {
    font-size:28px
  }
  .directory-grid p {
    font-size:11px;
    max-width:330px
  }
  .directory-letter {
    font-size:8px;
    margin-bottom:13px
  }
  .directory-grid>a>div {
    font-size:9px
  }
  .product-page {
    grid-template-columns:1fr;
    gap:32px;
    padding-top:22px
  }
  .main-product-image {
    margin:0 -21px
  }
  .zoom-product>img {
    aspect-ratio:1.13
  }
  .zoom-product>.icon {
    bottom:15px;
    right:20px;
    width:33px;
    height:33px
  }
  .gallery-thumbnails>button {
    width:65px
  }
  .image-caption {
    font-size:7px;
    margin-top:12px
  }
  .detail-gallery-image {
    display:none
  }
  .purchase-panel {
    padding:0
  }
  .purchase-brand {
    font-size:11px
  }
  .purchase-brand>.icon-button {
    margin-right:-10px;
    width:40px
  }
  .purchase-panel h1 {
    font-size:35px;
    margin:12px 0
  }
  .purchase-color {
    font-size:11px
  }
  .purchase-price {
    font-size:24px;
    margin-top:22px
  }
  .purchase-description {
    font-size:12px;
    line-height:1.8;
    margin:23px 0
  }
  .size-header {
    font-size:10px;
    margin-bottom:15px
  }
  .size-header>button {
    font-size:9px
  }
  .size-options {
    grid-template-columns:repeat(6,1fr);
    gap:6px
  }
  .size-option {
    height:44px;
    font-size:11px
  }
  .size-error {
    font-size:9px;
    min-height:27px
  }
  .add-to-bag {
    min-height:53px;
    font-size:11px
  }
  .purchase-disclaimer {
    font-size:9px;
    margin:16px 0 21px
  }
  .purchase-services {
    font-size:10px;
    gap:16px;
    padding:23px 0
  }
  .product-accordions details {
    padding:20px 0
  }
  .product-accordions summary {
    font-size:11px
  }
  .product-accordions details>p {
    font-size:11px
  }
  .product-page+.related-products .section-heading h2 {
    font-size:30px
  }
  .article-page {
    padding-top:38px
  }
  .article-page h1 {
    font-size:42px;
    letter-spacing:-2px;
    margin:20px 0
  }
  .article-intro {
    font-size:16px;
    line-height:1.7
  }
  .article-page>header {
    margin-bottom:30px
  }
  .article-page>header>.overline {
    font-size:7px
  }
  .article-cover>img {
    max-height:370px;
    aspect-ratio:1.1;
    object-fit:cover
  }
  .article-body {
    margin:38px auto 50px;
    padding:0 24px
  }
  .article-body h2 {
    font-size:26px
  }
  .article-body p {
    font-size:13px;
    line-height:1.9
  }
  .about-hero h1 {
    font-size:49px;
    letter-spacing:-2.7px;
    margin:23px 0 30px
  }
  .about-hero .overline {
    font-size:7px
  }
  .about-intro {
    grid-template-columns:1fr;
    gap:26px
  }
  .about-intro>p {
    font-size:24px;
    max-width:340px;
    line-height:1.5
  }
  .about-intro>div>p {
    font-size:12px;
    line-height:1.9
  }
  .about-campaign>img {
    height:350px;
    object-fit:cover;
    object-position:65% center
  }
  .about-values {
    grid-template-columns:1fr;
    gap:36px
  }
  .about-values h2 {
    font-size:36px;
    margin:16px 0
  }
  .about-values p {
    font-size:12px;
    max-width:350px
  }
  .contact-page {
    grid-template-columns:1fr;
    gap:30px
  }
  .contact-page h1 {
    font-size:58px;
    margin:22px 0
  }
  .contact-page .overline {
    font-size:7px
  }
  .contact-page>div>p:last-child {
    font-size:12px
  }
  .contact-options h2 {
    font-size:25px
  }
  .contact-note p {
    font-size:11px
  }
  .collectibles-hero {
    grid-template-columns:1fr;
    gap:20px;
    padding-top:38px
  }
  .collectibles-hero h1 {
    font-size:45px;
    letter-spacing:-2.5px
  }
  .collectibles-hero .overline {
    font-size:7px
  }
  .collectibles-hero>div>p:last-of-type {
    font-size:12px
  }
  .collectibles-hero .button {
    font-size:9px;
    gap:15px;
    padding:0 17px
  }
  .collectibles-art {
    height:370px
  }
  .collector-card {
    left:27%;
    top:25px;
    width:205px;
    height:300px
  }
  .collector-card>strong {
    font-size:28px
  }
  .collectibles-note {
    display:block
  }
  .collectibles-note>p {
    font-size:12px;
    margin-bottom:20px
  }
  .page-intro {
    font-size:12px;
    margin-bottom:30px
  }
  .identity-downloads {
    display:flex;
    flex-direction:column;
    gap:12px
  }
  .identity-downloads>.button {
    font-size:10px
  }
  .not-found h1 {
    font-size:45px;
    letter-spacing:-2.5px
  }
  .not-found>.overline {
    font-size:7px
  }
  .not-found>p:not(.overline) {
    font-size:12px
  }
  .not-found .button {
    font-size:10px
  }
  .search-dialog {
    width:calc(100% - 20px);
    max-width:calc(100% - 20px);
    padding:24px 21px;
    max-height:94dvh
  }
  .dialog-head {
    gap:12px
  }
  .dialog-head h2 {
    font-size:27px;
    letter-spacing:-1px
  }
  .dialog-head>.icon-button {
    width:36px;
    height:36px;
    margin-right:-5px
  }
  .search-dialog>label {
    font-size:9px;
    margin-top:23px
  }
  .search-field {
    gap:12px
  }
  .search-field input {
    font-size:18px
  }
  .search-field .icon {
    width:21px;
    height:21px
  }
  .search-suggestions {
    gap:12px;
    font-size:8px;
    margin-top:14px
  }
  .search-result {
    gap:12px;
    padding:12px 0
  }
  .search-result>img {
    width:70px;
    height:65px
  }
  .search-result small {
    font-size:7px
  }
  .search-result strong {
    font-size:10px
  }
  .search-result em {
    font-size:8px
  }
  .search-result>b {
    font-size:10px
  }
  .search-result>.icon {
    display:none
  }
  .search-empty h3 {
    font-size:22px
  }
  .search-empty p {
    font-size:11px
  }
  .cart-dialog {
    padding:23px 21px;
    width:100%
  }
  .cart-dialog .dialog-head h2 {
    font-size:28px
  }
  .bag-item {
    grid-template-columns:85px 1fr auto;
    gap:12px;
    padding:23px 0
  }
  .bag-item>a>img {
    width:85px;
    height:110px
  }
  .bag-item-name {
    font-size:11px
  }
  .bag-item-brand {
    font-size:8px
  }
  .bag-item-details>p {
    font-size:8px
  }
  .bag-line-price {
    font-size:9px
  }
  .bag-item-controls {
    gap:12px
  }
  .quantity-control>button {
    width:30px;
    height:34px
  }
  .quantity-control>span {
    width:18px
  }
  .bag-size {
    font-size:9px
  }
  .remove-item {
    font-size:8px
  }
  .bag-summary>p {
    font-size:10px
  }
  .bag-summary>.bag-note {
    font-size:9px
  }
  .info-dialog {
    max-width:calc(100% - 22px);
    padding:25px 23px
  }
  .info-dialog h2 {
    font-size:27px;
    line-height:1.1
  }
  #info-content {
    font-size:12px;
    padding-top:24px
  }
  #info-content .info-lead {
    font-size:19px
  }
  .summary-items>div {
    font-size:10px
  }
  .summary-total {
    font-size:13px
  }
  .summary-instagram {
    font-size:9px;
    gap:15px
  }
  .quick-dialog {
    width:calc(100% - 22px);
    max-width:calc(100% - 22px);
    max-height:94dvh
  }
  .quick-layout {
    display:block
  }
  .quick-image {
    position:relative;
    min-height:0;
    height:240px
  }
  .quick-image>img {
    height:100%;
    object-fit:contain
  }
  .quick-layout .purchase-panel {
    padding:23px
  }
  .quick-layout .purchase-panel h1 {
    font-size:29px
  }
  .quick-layout .purchase-description {
    font-size:11px;
    margin:16px 0 21px
  }
  .quick-dialog .size-options {
    grid-template-columns:repeat(6,1fr)
  }
  .quick-layout .purchase-disclaimer {
    font-size:8px
  }
  .quick-loading {
    padding:27px
  }
  .floating-close {
    right:10px;
    top:10px
  }
  .toast {
    bottom:18px;
    font-size:10px;
    padding:13px 17px;
    gap:15px;
    width:max-content
  }
  .toast>span {
    max-width:250px
  }
  .toast>button {
    font-size:10px
  }
  .empty-state {
    padding:55px 10px
  }
  .empty-state h2,.empty-state h3 {
    font-size:28px
  }
  .empty-state p {
    font-size:11px
  }
  .mobile-menu .brand-logo>span {
    font-size:24px
  }
  .mobile-menu .brand-logo>img {
    width:22px
  }
  .mobile-menu>.dialog-head>.icon-button {
    width:40px
  }
  .mobile-menu>nav {
    margin:30px 0
  }
  .mobile-menu>nav>a {
    font-size:23px;
    padding:15px 0
  }
  .mobile-brand-list {
    font-size:11px;
    gap:17px
  }
  .mobile-menu>.overline {
    font-size:8px
  }
  .mobile-menu>nav .icon {
    width:22px;
    height:22px
  }
  .mobile-filter-dialog .sidebar-head {
    font-size:14px
  }
  .mobile-filter-dialog .sidebar-brands {
    gap:14px
  }
  .mobile-filter-dialog .sidebar-brands>a {
    font-size:12px
  }
  .mobile-filter-dialog .filter-group h2 {
    font-size:13px
  }
  .mobile-filter-dialog .check-label {
    min-height:33px;
    font-size:12px
  }
  .mobile-filter-dialog .filter-group select {
    font-size:12px
  }
  .mobile-filter-dialog .sidebar-all {
    font-size:11px
  }
  .mobile-filter-dialog .reset-filters {
    font-size:11px
  }
}
@media(max-width:374px) {
  .brand-logo>span {
    font-size:21px
  }
  .brand-logo>img {
    width:20px
  }
  .site-header {
    gap:8px
  }
  .header-actions .icon-button {
    width:30px
  }
  .header-actions .bag-toggle {
    width:38px
  }
  .campaign-hero {
    height:620px;
    min-height:620px
  }
  .campaign-content h1 {
    font-size:47px
  }
  .campaign-bottom {
    font-size:5px
  }
  .campaign-bottom>a {
    font-size:7px
  }
  .section-heading h2 {
    font-size:29px
  }
  .section-heading .underlined-link {
    font-size:7px;
    gap:6px
  }
  .product-name {
    font-size:9px
  }
  .product-brand {
    font-size:7px
  }
  .brand-index-grid {
    gap:0 15px
  }
  .brand-index-grid>a {
    font-size:10px
  }
  .brand-index .section-heading h2 {
    font-size:31px
  }
  .size-options,.quick-dialog .size-options {
    grid-template-columns:repeat(5,1fr)
  }
  .collectibles-hero h1 {
    font-size:38px
  }
  .collector-card {
    left:24%;
    width:185px;
    height:280px
  }
  .contact-options h2 {
    font-size:23px
  }
  .bag-item {
    grid-template-columns:72px 1fr auto;
    gap:10px
  }
  .bag-item>a>img {
    width:72px;
    height:100px
  }
}
@media(prefers-reduced-motion:reduce) {
  html {
    scroll-behavior:auto
  }
  *,*:before,*:after {
    animation:none!important;
    transition:none!important
  }
  .reveal {
    opacity:1;
    transform:none
  }
}
.footer-trustpilot {
  display:block;
  margin-top:14px
}
