:root{color-scheme:dark;--bg:#0A0A0A;--surface:#141414;--surface-2:#1C1A18;--line:#39332D;--text:#E8D9B7;--muted:#A39A88;--acid:#C8102E;--image-bg:#E8D9B7;--max:1240px;--so-grit:#7A7366;--so-ui:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);font:16px/1.5 Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}
a{color:inherit;text-decoration:none}
button,select{font:inherit}
img{display:block;max-width:100%}
.container{width:min(var(--max),calc(100% - 44px));margin:0 auto}
.site-header{position:sticky;top:0;z-index:50;background:rgba(8,8,8,.94);backdrop-filter:blur(14px);border-bottom:1px solid rgba(255,255,255,.08)}
.navbar{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{font-size:18px;font-weight:950;letter-spacing:.12em}
.brand span{color:var(--acid)}
.navlinks{display:flex;gap:24px;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.16em;color:#aaa}
.navlinks a:hover{color:#fff}
.kicker{color:var(--acid);font-size:11px;font-weight:900;letter-spacing:.2em;text-transform:uppercase}
.display{font-size:clamp(48px,8vw,96px);line-height:.88;letter-spacing:-.055em;font-weight:950;max-width:940px;margin:18px 0 24px}
.hero-home{padding:86px 0 72px;border-bottom:1px solid var(--line)}
.hero-copy{max-width:760px;color:#bdbdb9;font-size:18px}
.cta-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}
.btn{min-height:52px;padding:0 20px;display:inline-flex;align-items:center;justify-content:center;border:1px solid #5a5a5a;background:#f2f2ed;color:#080808;font-weight:900;text-transform:uppercase;letter-spacing:.06em}
.btn:hover{filter:brightness(1.04)}
.btn.secondary{background:transparent;color:#f2f2ed;border-color:#444}
.btn.secondary:hover{border-color:#777}
.feature-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border-bottom:1px solid var(--line)}
.feature{background:var(--bg);padding:24px}
.feature strong{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.12em}
.feature span{display:block;margin-top:5px;color:#898989;font-size:12px}
.section{padding:64px 0}
.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:26px}
.section-title{font-size:32px;line-height:1;margin:0}
.product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.product-card{position:relative;overflow:hidden;border:1px solid var(--line);background:linear-gradient(180deg,#111,#0d0d0d);padding:14px;transition:border-color .2s,transform .2s}
.product-card:hover{border-color:#555;transform:translateY(-2px)}
.product-card.is-unavailable{border-color:#5a4545}
.product-card.is-unavailable .card-price{color:#b7a0a0;font-size:12px;text-transform:uppercase;letter-spacing:.08em}
.availability-notice{margin:0 0 18px;padding:12px 14px;border-left:3px solid #b7a0a0;background:#171313;color:#e1cccc;font-size:12px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.product-card>img{width:100%;aspect-ratio:1/1;object-fit:contain;background:var(--image-bg)}.product-card.elevated>img{padding:0}.product-card:focus-visible,.btn:focus-visible,.buy-button:focus-visible,.thumb:focus-visible,select:focus-visible,.trust-link:focus-visible{outline:2px solid var(--acid);outline-offset:3px}
.card-body{padding:16px 4px 7px}
.card-kicker{font-size:10px;font-weight:900;color:#8c8c8c;text-transform:uppercase;letter-spacing:.17em}
.card-title{font-size:25px;line-height:1.02;margin:7px 0}
.card-price{font-weight:900;font-size:18px}
.site-footer{border-top:1px solid var(--line);padding:28px 0 40px;color:#707070;font-size:11px}
.footer-row{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap}
.product-layout{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.8fr);gap:44px;padding:40px 0 72px}
.gallery{position:sticky;top:96px;align-self:start}
.main-shot{padding:10px;background:#0d0d0d;border:1px solid #222}
.main-shot img{width:100%;background:var(--image-bg)}
.thumbs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:10px}
.thumb{padding:5px;background:#0d0d0d;border:1px solid #252525;cursor:pointer}
.thumb:hover{border-color:#666}
.thumb img{width:100%;aspect-ratio:1/1;object-fit:contain;background:var(--image-bg)}
.product-info{padding-top:4px;max-width:580px}
.product-title{font-size:clamp(40px,4.8vw,64px);line-height:.94;letter-spacing:-.045em;margin:10px 0 14px;font-weight:950}
.product-price{font-size:30px;font-weight:900;letter-spacing:-.025em}
.product-copy{color:#aaa;max-width:540px;font-size:15px;line-height:1.65;margin:14px 0 0}
.product-facts{display:flex;flex-wrap:wrap;gap:8px 18px;margin:22px 0 12px;padding:0;list-style:none;color:#a5a5a0;font-size:11px;line-height:1.5}
.product-facts li{position:relative;padding-left:11px}
.product-facts li::before{content:"";position:absolute;left:0;top:.58em;width:4px;height:4px;border-radius:50%;background:var(--acid)}
.product-policy-links{display:flex;gap:18px;flex-wrap:wrap;margin:0 0 24px}
.buy-box{padding-top:0}
.trust-link{display:inline-block;color:#b9b9b3;font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.09em;border-bottom:1px solid #454545;padding-bottom:3px}
.trust-link:hover{color:var(--acid);border-bottom-color:var(--acid)}
.field-label{display:block;margin-bottom:8px;color:#9a9a9a;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.14em}
select{width:100%;min-height:52px;border:1px solid #4d4d4d;background:#0d0d0d;color:#fff;padding:0 14px}
.buy-button{width:100%;min-height:58px;margin-top:12px;border:0;background:var(--acid);color:#0a0a0a;font-weight:950;text-transform:uppercase;letter-spacing:.07em;cursor:pointer}
.buy-button:hover{filter:brightness(1.06)}
.buy-button:disabled{opacity:.55;cursor:not-allowed}
.micro{font-size:11px;color:#707070;margin-top:10px}
.error{font-size:13px;color:#ff9e9e;margin-top:12px}
.policy-page{max-width:900px;padding:76px 0 100px}
.policy-card{max-width:760px;border:1px solid var(--line);background:#101010;padding:24px;margin:0 0 26px;color:#b8b8b4}
.policy-card p{margin:0 0 14px}
.policy-card p:last-child{margin-bottom:0}
.success{max-width:740px;margin:13vh auto;text-align:center;padding:0 22px 80px}
@media(max-width:900px){.product-layout{grid-template-columns:1fr;gap:26px}.gallery{position:static;max-width:760px}.product-info{max-width:none}}
@media(max-width:700px){.container{width:min(var(--max),calc(100% - 32px))}.navbar{min-height:62px}.navlinks{display:flex;gap:12px}.navlinks a{display:inline-flex;flex:0 0 auto;white-space:nowrap}.navlinks{width:100%;justify-content:space-between;gap:8px;overflow-x:auto;font-size:9px}.navlinks .cart-nav{padding:7px 9px}.hero-home{padding-top:54px}.feature-strip,.product-grid{grid-template-columns:1fr}.section{padding:46px 0}.display{font-size:clamp(44px,13vw,72px)}.product-title{font-size:clamp(40px,12vw,62px)}.policy-page{padding-top:54px}}

.cart-nav{display:inline-flex;align-items:center;gap:8px}
.cart-count{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 6px;border:1px solid var(--acid);border-radius:999px;color:var(--acid);font-size:11px;letter-spacing:0}
.cart-view-link{width:100%;margin-top:10px}
.success-note{font-size:13px;color:var(--acid);margin-top:12px}
.cart-page{padding:58px 0 90px}
.cart-heading{margin-bottom:18px}
.cart-message{color:#ffb3b3;font-size:13px;margin:18px 0}
.cart-lines{margin-top:34px;border-top:1px solid var(--line)}
.cart-line{display:grid;grid-template-columns:112px minmax(0,1fr) auto;gap:22px;align-items:start;padding:22px 0;border-bottom:1px solid var(--line)}
.cart-line-image{width:112px;aspect-ratio:1/1;object-fit:contain;background:var(--image-bg);border:1px solid var(--line)}
.cart-line-main h2{font-size:21px;line-height:1.1;margin:5px 0 8px}
.cart-line-price{font-size:14px;font-weight:800}
.cart-line-total{font-size:16px;white-space:nowrap}
.cart-line-controls{display:flex;align-items:end;gap:12px;flex-wrap:wrap;margin-top:15px}
.cart-line-controls label{display:grid;gap:5px;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.1em;font-weight:900}
.cart-line-controls select{min-height:40px;min-width:100px;padding:0 10px}
.cart-line-controls label:nth-child(2) select{min-width:76px}
.text-button{border:0;background:transparent;color:#aaa;text-decoration:underline;text-underline-offset:4px;padding:10px 0;cursor:pointer;font-size:12px}
.text-button:hover{color:#fff}
.cart-summary{max-width:500px;margin:34px 0 0 auto;padding:22px;border:1px solid var(--line);background:var(--surface)}
.cart-summary>div{display:flex;justify-content:space-between;gap:18px;font-size:15px}
.cart-summary>div strong{font-size:22px}
.cart-summary .buy-button{background:var(--acid);color:#0a0a0a;cursor:pointer}
.cart-summary .buy-button:disabled{cursor:not-allowed}
.cart-summary .btn{width:100%;margin-top:10px}
.cart-empty{padding:48px 20px;text-align:center;border:1px solid var(--line);background:var(--surface)}
.cart-empty h2{margin:0 0 8px;font-size:25px}
.cart-empty p{color:var(--muted);margin:0 0 20px}
@media(max-width:700px){.cart-page{padding-top:42px}.cart-line{grid-template-columns:82px minmax(0,1fr);gap:14px}.cart-line-image{width:82px}.cart-line-total{grid-column:2;justify-self:start}.cart-line-main h2{font-size:18px}.cart-line-controls{gap:8px}.cart-line-controls select{min-width:88px}.cart-summary{margin-top:24px;padding:17px}}

/* Structured brand, customer-care, and social footer. */
.site-footer{padding:42px 0 24px;color:var(--muted);font-size:13px}
.footer-grid{display:grid;grid-template-columns:minmax(220px,1.35fr) minmax(150px,.75fr) minmax(250px,1fr);gap:48px;padding-bottom:34px}
.footer-brand-mark{display:inline-block;font-size:17px;line-height:1.2}
.footer-brand p,.footer-social p{max-width:290px;margin:14px 0 0;color:#b8b8b4;font-size:13px;line-height:1.65}
.footer-tagline{display:inline-block;margin-top:16px;color:var(--acid);font-size:10px;font-weight:900;letter-spacing:.17em}
.footer-column{display:flex;flex-direction:column;align-items:flex-start;gap:11px}
.footer-column h2{margin:3px 0 7px;color:var(--text);font-size:11px;font-weight:900;letter-spacing:.15em;text-transform:uppercase}
.footer-column>a{color:#b8b8b4;text-decoration:none;transition:color .15s ease}
.footer-column>a:hover,.footer-social-links a:hover{color:var(--acid)}
.footer-social p{margin:0 0 4px}
.footer-social-links{display:flex;gap:12px;flex-wrap:wrap;margin-top:4px}
.footer-social-links a{display:inline-flex;align-items:center;gap:9px;min-height:42px;padding:0 12px;border:1px solid #383838;color:#e8e8e3;font-size:12px;font-weight:800;transition:border-color .15s ease,color .15s ease}
.footer-social-links a:hover{border-color:var(--acid)}
.footer-social-links svg{width:18px;height:18px;flex:none}
.footer-bottom{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-top:18px;border-top:1px solid var(--line);color:#92928e;font-size:10px;letter-spacing:.06em}
.site-footer a:focus-visible{outline:2px solid var(--acid);outline-offset:4px}
@media(max-width:800px){.footer-grid{grid-template-columns:1fr 1fr;gap:32px}.footer-brand{grid-column:1/-1}}
@media(max-width:700px){.site-footer{padding-top:34px}.footer-grid{grid-template-columns:1fr;gap:28px;padding-bottom:28px}.footer-brand{grid-column:auto}.footer-bottom{flex-direction:column;gap:8px}}

/* Compact product-page size and quantity controls. */
.buy-box #size{width:150px;max-width:100%;min-height:42px;padding:0 10px}
.buy-box #quantity{width:76px;min-height:42px;padding:0 10px}

/* Storefront visual polish: consistent cards, clearer hierarchy, and calmer mobile spacing. */
.hero-home {
  padding-block: clamp(58px, 7vw, 88px) clamp(54px, 6vw, 74px);
}
.hero-home .display {
  max-width: 860px;
  text-wrap: balance;
}
.hero-home .hero-copy {
  max-width: 650px;
  line-height: 1.7;
}
.hero-home .cta-row {
  margin-top: 26px;
}
.section-head {
  margin-bottom: 30px;
}
.section-title {
  letter-spacing: -.035em;
}
.product-grid {
  align-items: stretch;
  column-gap: 18px;
  row-gap: 24px;
}
.product-card {
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: 12px;
  border-color: #252525;
  border-radius: 2px;
  background: #0e0e0e;
}
.product-card:hover {
  border-color: #4a4a4a;
  transform: translateY(-2px);
}
.product-card:focus-visible {
  outline-offset: 4px;
}
.product-card > img {
  flex: none;
  aspect-ratio: 1 / 1;
  object-fit: contain;
  background: var(--image-bg);
}
.card-body {
  display: flex;
  flex: 1;
  flex-direction: column;
  align-items: flex-start;
  padding: 15px 3px 5px;
}
.card-kicker {
  min-height: 1.4em;
  line-height: 1.4;
}
.card-title {
  max-width: 100%;
  margin: 7px 0 12px;
  overflow-wrap: anywhere;
  line-height: 1.08;
}
.card-price {
  margin-top: auto;
  padding-top: 3px;
  color: var(--text);
  font-size: 17px;
  line-height: 1.4;
}
.product-card.is-unavailable .card-price {
  padding-top: 6px;
}
@media (min-width: 701px) {
  .product-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 700px) {
  .container {
    width: min(var(--max), calc(100% - 28px));
  }
  .navbar {
    gap: 12px;
  }
  .navlinks a:not(.cart-nav) {
    display: inline-flex;
  }
  .brand {
    font-size: 16px;
    letter-spacing: .09em;
  }
  .hero-home {
    padding-block: 48px 44px;
  }
  .hero-home .display {
    max-width: 12ch;
    font-size: clamp(42px, 12.5vw, 66px);
    line-height: .92;
    letter-spacing: -.05em;
    margin-block: 15px 20px;
  }
  .hero-home .hero-copy {
    font-size: 16px;
    line-height: 1.65;
  }
  .hero-home .cta-row {
    gap: 10px;
    margin-top: 22px;
  }
  .hero-home .btn {
    min-height: 48px;
    padding-inline: 14px;
    font-size: 11px;
  }
  .feature {
    padding: 19px 18px;
  }
  .section {
    padding-block: 38px;
  }
  .section-head {
    align-items: center;
    margin-bottom: 20px;
  }
  .section-title {
    font-size: 28px;
    line-height: 1.05;
  }
  .product-grid {
    gap: 16px;
  }
  .product-card {
    padding: 10px;
  }
  .card-body {
    padding: 13px 2px 4px;
  }
  .card-title {
    font-size: clamp(21px, 6vw, 25px);
  }
  .card-price {
    font-size: 16px;
  }
}
@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }
  .product-card,
  .btn,
  .footer-column > a,
  .footer-social-links a {
    transition: none;
  }
  .product-card:hover {
    transform: none;
  }
}


/* Serial Outfitters locked brand system — shared customer-facing shell. */
body{font-family:var(--so-ui);background:var(--bg);color:var(--text)}
.site-header{background:rgba(10,10,10,.96);border-bottom:1px solid var(--line)}
.navbar{min-height:86px}
.brand{display:flex;flex-direction:column;gap:1px;letter-spacing:.08em;line-height:1}
.brand-name{font-family:var(--so-ui);font-size:clamp(15px,1.7vw,19px);font-weight:950;letter-spacing:.12em;color:var(--text)}
.brand-tagline{font-family:var(--so-ui);font-size:10px;font-weight:900;letter-spacing:.2em;color:var(--acid)}
.navlinks{align-items:center;gap:clamp(12px,2vw,26px);font-family:var(--so-ui);font-size:11px;letter-spacing:.12em;color:var(--text)}
.navlinks a{padding:10px 0}
.navlinks a:hover,.navlinks a:focus-visible{color:var(--acid)}
.navlinks .cart-nav{border:1px solid var(--line);padding:10px 14px;color:var(--text)}
.kicker{color:var(--acid)}
.display{font-family:Georgia,"Times New Roman",serif;color:var(--text);font-weight:900;letter-spacing:-.045em}
.btn{background:var(--acid);border-color:var(--acid);color:var(--text)}
.btn.secondary{background:transparent;border-color:var(--line);color:var(--text)}
.btn.secondary:hover{border-color:var(--acid);color:var(--text)}
.product-card{border-color:var(--line);background:var(--surface);border-radius:2px}
.product-card:hover{border-color:var(--acid)}
.card-kicker{color:var(--so-grit)}
.product-card>img,.main-shot img,.thumb img{background:#1C1A18}
.buy-button{background:var(--acid);color:var(--text)}
.buy-button:hover{background:#a70d25}
.product-facts li::before{background:var(--acid)}
.trust-link:hover{color:var(--acid);border-bottom-color:var(--acid)}
.site-footer{background:#080808;border-top:1px solid var(--line);color:var(--muted);padding:42px 0 22px}
.footer-grid{display:grid;grid-template-columns:1.5fr 1fr .7fr;gap:36px;align-items:start}
.footer-brand p{max-width:340px;color:var(--muted);font-size:13px;line-height:1.7}
.footer-column{display:flex;flex-direction:column;gap:12px;font-size:12px}.footer-column h2{margin:0 0 5px;color:var(--text);font-size:11px;letter-spacing:.12em;text-transform:uppercase}.footer-column p{margin:0 0 6px;color:var(--muted);font-size:12px}
.footer-links a:hover,.footer-social a:hover{color:var(--acid)}
.footer-social>span{font-size:10px;font-weight:900;letter-spacing:.16em;color:var(--acid)}
.footer-bottom{display:flex;justify-content:space-between;gap:12px;margin-top:32px;padding-top:16px;border-top:1px solid var(--line);font-size:10px;letter-spacing:.12em}
.hero-brand-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.9fr);gap:clamp(28px,5vw,72px);align-items:center}
.hero-brand-grid .display{font-size:clamp(58px,8vw,104px);max-width:8ch}
.brand-manifesto{margin-top:30px;padding-top:14px;border-top:1px solid var(--line);font-size:10px;font-weight:900;letter-spacing:.15em;color:var(--muted)}
.brand-manifesto span{color:var(--acid)}
.hero-art-panel{padding:18px;border:1px solid var(--line);background:linear-gradient(145deg,#171411,#0c0c0c)}
.hero-art-label{display:block;margin-bottom:14px;color:var(--acid);font-size:9px;font-weight:900;letter-spacing:.16em}
.hero-art-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:10px}
.hero-art-grid .product-card{padding:7px}
.hero-art-grid .product-card>img{aspect-ratio:1/1}
.hero-art-grid .card-body{padding:10px 2px 4px}
.hero-art-grid .card-title{font-size:clamp(13px,1.4vw,17px)}
.hero-art-grid .card-price{font-size:12px}
.editorial-page{padding-top:72px;padding-bottom:80px}
.editorial-page>.display{max-width:9ch}
.editorial-lead{max-width:760px;margin:24px 0 42px;color:var(--text);font-family:Georgia,serif;font-size:clamp(22px,3vw,34px);line-height:1.35}
.editorial-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;margin-bottom:38px;padding:28px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.editorial-columns h2{font-family:Georgia,serif;font-size:24px}
.editorial-columns p{max-width:520px;color:var(--muted);line-height:1.8}
@media(max-width:800px){.hero-brand-grid{grid-template-columns:1fr}.hero-brand-grid .display{font-size:clamp(54px,12vw,82px)}.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}}
@media(max-width:700px){.navbar{min-height:74px;align-items:center;flex-wrap:wrap;padding-block:12px}.navlinks{width:100%;justify-content:space-between;gap:8px;overflow-x:auto;font-size:9px}.navlinks a{white-space:nowrap}.navlinks .cart-nav{padding:7px 9px}.brand-name{font-size:15px}.brand-tagline{font-size:8px}.hero-art-panel{padding:10px}.hero-art-grid{gap:7px}.footer-grid{grid-template-columns:1fr 1fr;gap:24px}.footer-bottom{font-size:9px}.editorial-columns{grid-template-columns:1fr;gap:14px}.editorial-page{padding-top:46px;padding-bottom:54px}}
@media(prefers-reduced-motion:reduce){.hero-brand-grid *{scroll-behavior:auto}}

.collection-filters{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 24px}
.collection-filters a{display:inline-flex;align-items:center;min-height:38px;padding:0 14px;border:1px solid var(--line);color:var(--muted);font-size:10px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}
.collection-filters a:hover,.collection-filters a.is-active{border-color:var(--acid);color:var(--text);background:rgba(200,16,46,.1)}
@media(max-width:700px){.collection-filters{flex-wrap:nowrap;overflow-x:auto;padding-bottom:5px}.collection-filters a{flex:none}}

/* Product discovery density: use the available desktop width without shrinking mobile cards. */
@media(min-width:1100px){.product-grid{grid-template-columns:repeat(4,minmax(0,1fr));column-gap:16px;row-gap:24px}}
@media(min-width:701px) and (max-width:1099px){.product-grid{grid-template-columns:repeat(3,minmax(0,1fr));column-gap:14px;row-gap:20px}}


/* Approved Serial Outfitters logo asset integration. */
.brand-logo-link {
  display: flex;
  flex: 0 1 auto;
  min-width: 0;
  align-items: center;
}
.brand-logo-picture {
  display: block;
  background: #0A0A0A;
}
.brand-logo-header {
  display: block;
  width: auto;
  height: 68px;
  max-width: min(250px, 32vw);
  object-fit: contain;
  object-position: left center;
}
.footer-brand-logo-link {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 7px;
  background: #080808;
}
.footer-brand-logo {
  width: auto;
  height: 86px;
  max-width: 170px;
  object-fit: contain;
  object-position: left center;
}
.about-brand-signature {
  width: min(100%, 320px);
  height: auto;
  margin: 18px 0 22px;
  background: #0A0A0A;
  object-fit: contain;
}
@media (max-width: 700px) {
  .brand-logo-header {
    height: 58px;
    max-width: 64px;
    object-position: center;
  }
  .footer-brand-logo {
    height: 76px;
    max-width: 150px;
  }
}


/* Responsive constraints: prevent grid min-content overflow and keep
   navigation and editorial content usable at narrow viewport widths. */
.product-layout,
.product-layout > *,
.gallery,
.product-info,
.main-shot,
.thumbs,
.editorial-page,
.editorial-columns,
.editorial-columns > *,
.footer-grid,
.footer-grid > *,
.site-header,
.navbar,
.navlinks {
  min-width: 0;
}


.product-info,
.product-title,
.product-copy,
.editorial-page .display,
.editorial-lead,
.editorial-columns p {
  overflow-wrap: anywhere;
}

.product-info select {
  max-width: 100%;
}

@media (max-width: 800px) {
  .editorial-columns {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (max-width: 700px) {
  .navlinks {
    overflow-x: auto;
    scrollbar-width: thin;
  }

  .navlinks > a {
    flex: 0 0 auto;
    min-width: max-content;
    white-space: nowrap;
  }

  .footer-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .footer-brand {
    grid-column: auto;
  }
}

/* Approved full-bleed homepage campaign hero. Product artwork in this image is
   composited from the exact active Printful mockups; catalog imagery remains
   independently sourced from Printful for product cards and product pages. */
.hero-home-lifestyle{position:relative;isolation:isolate;min-height:clamp(560px,calc(100vh - 86px),820px);display:flex;align-items:center;overflow:hidden;padding-block:0;background:#080808 url("/assets/hero/serial-outfitters-lifestyle.webp") center right/cover no-repeat}
.hero-home-lifestyle::before{content:"";position:absolute;inset:0;z-index:0;background:linear-gradient(90deg,#080808 0%,rgba(8,8,8,.96) 20%,rgba(8,8,8,.78) 36%,rgba(8,8,8,.18) 60%,rgba(8,8,8,0) 100%),linear-gradient(0deg,rgba(8,8,8,.34),transparent 25%,transparent 80%,rgba(8,8,8,.16))}
.hero-home-lifestyle .hero-brand-grid{position:relative;z-index:1;display:block;width:min(var(--max),calc(100% - 44px));min-height:inherit;padding-block:clamp(64px,8vw,110px)}
.hero-home-lifestyle .hero-home-copy{max-width:min(48%,620px)}
.hero-home-lifestyle .display{max-width:8ch;font-size:clamp(58px,8vw,104px)}
.hero-home-lifestyle .hero-copy{max-width:650px}
@media(max-width:800px){.hero-home-lifestyle{min-height:700px;background-position:58% center}.hero-home-lifestyle::before{background:linear-gradient(90deg,rgba(8,8,8,.94),rgba(8,8,8,.70) 58%,rgba(8,8,8,.24)),linear-gradient(0deg,rgba(8,8,8,.5),transparent 48%)}.hero-home-lifestyle .hero-home-copy{max-width:min(78%,620px)}}
@media(max-width:700px){.hero-home-lifestyle{min-height:660px;align-items:flex-start;background-size:auto 100%;background-position:12% center}.hero-home-lifestyle .hero-brand-grid{width:min(var(--max),calc(100% - 28px));padding-block:62px 52px}.hero-home-lifestyle .hero-home-copy{max-width:100%}.hero-home-lifestyle .display{font-size:clamp(48px,12vw,72px)}.hero-home-lifestyle::before{background:linear-gradient(90deg,rgba(8,8,8,.92),rgba(8,8,8,.66) 76%,rgba(8,8,8,.28)),linear-gradient(0deg,rgba(8,8,8,.65),transparent 58%)}}


/* Shop-page-only merchandising polish. Keep shared storefront components unchanged. */
.shop-page .shop-hero{padding-block:clamp(34px,4vw,52px)}
.shop-page .shop-hero .display{max-width:13ch;margin-block:14px 16px;font-size:clamp(42px,6.2vw,76px);line-height:.96;letter-spacing:-.045em}
.shop-page .shop-hero .hero-copy{max-width:650px;margin:0;line-height:1.65}
.shop-page .shop-hero-signoff{margin:18px 0 0;color:var(--acid);font-size:10px;font-weight:900;letter-spacing:.15em}
.shop-page #collection{padding-top:clamp(30px,4vw,48px)}
.shop-page .product-grid{align-items:stretch}
.shop-page .shop-product-card{min-height:100%;padding:12px;border-color:var(--line);background:var(--surface)}
.shop-page .shop-product-card>img{aspect-ratio:1/1;object-fit:contain}
.shop-page .shop-product-card .card-body{gap:0;padding:14px 3px 5px}
.shop-page .shop-card-title{margin:6px 0 12px;font-size:clamp(17px,1.65vw,21px);line-height:1.12;overflow-wrap:anywhere}
.shop-page .shop-product-card .card-price{margin-top:auto;padding-top:4px;font-size:15px;font-weight:800}
.shop-page .shop-card-availability{margin-top:auto;padding-top:6px;color:var(--so-grit);font-size:12px;font-weight:800;line-height:1.4}
.shop-page .shop-card-link{display:flex;justify-content:space-between;align-items:center;margin-top:12px;padding-top:10px;border-top:1px solid var(--line);color:var(--text);font-size:10px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
.shop-page .shop-card-link span{color:var(--acid);font-size:16px}
.shop-page .shop-product-card:hover .shop-card-link{color:var(--acid)}
@media(max-width:700px){.shop-page .shop-hero{padding-block:34px 30px}.shop-page .shop-hero .display{max-width:12ch;font-size:clamp(36px,10vw,54px)}.shop-page .shop-hero-signoff{font-size:9px}.shop-page .shop-product-card{padding:9px}.shop-page .shop-product-card .card-body{padding:11px 2px 4px}.shop-page .shop-card-title{font-size:clamp(16px,4.5vw,19px)}.shop-page .shop-product-card .card-price{font-size:14px}}
