/* Product galleries and the phone layout. */
/* Dedicated artwork slides preserve the actual print size in garment photos. */
.product-photo .photo-button img.logo-detail,
.detail-gallery .detail-visual>img.logo-detail{object-fit:contain;padding:23% 14%;background:#f1f1ec;mix-blend-mode:normal}
.product-photo .photo-button img.logo-detail.dark-detail,
.detail-gallery .detail-visual>img.logo-detail.dark-detail{background:#202020}
.gallery-thumb img.logo-detail{object-fit:contain;padding:10px 6px;background:#f1f1ec}
.gallery-thumb img.logo-detail.dark-detail{background:#202020}
.detail-gallery{min-width:0;background:#eaece5;padding-bottom:20px}
.detail-gallery .detail-visual{min-height:0;aspect-ratio:1/1.05;display:grid;place-items:center}
.detail-gallery .detail-visual>img{width:100%;height:100%;max-height:560px;object-fit:contain}
.detail-gallery .detail-visual>img.on-model{mix-blend-mode:normal;object-fit:contain}
.photo-caption{font-size:10px;color:var(--muted);text-align:center;margin:4px 0 12px;min-height:15px}
.detail-thumbs{display:flex;justify-content:center;gap:10px;padding:0 18px;overflow-x:auto}
.gallery-thumb{width:72px;flex:0 0 72px;border:1px solid transparent;background:transparent;padding:3px;color:var(--muted)}
.gallery-thumb.selected{border-color:var(--ink);color:var(--ink)}
.gallery-thumb img{width:64px;height:70px;object-fit:cover;background:#e3e5de}
.gallery-thumb span{display:block;font-size:9px;margin-top:5px;white-space:nowrap}
.product-photo img.model-photo{mix-blend-mode:normal;object-fit:cover}
.photo-count{position:absolute;bottom:17px;left:12px;font-size:9px;border:0;background:#fafaf7e6;padding:6px 9px}
body:has(dialog[open]){overflow:hidden}
@media(max-width:650px){
 html{scroll-padding-top:122px}
 body{font-size:15px}
 .nav{position:sticky;top:0;z-index:10;display:grid;grid-template-columns:1fr auto;grid-template-areas:'brand bag' 'links links';padding:17px 20px 0;gap:15px;border-bottom:1px solid #dcded5;background:#fafaf7f5;backdrop-filter:blur(12px)}
 .nav .brand{grid-area:brand;font-size:19px;grid-template-columns:25px auto;letter-spacing:-.04em;column-gap:9px}
 .nav .brand img{width:25px;height:25px;grid-row:auto}
 .nav .brand-sub{display:none}
 .bag-button{grid-area:bag;font-size:13px;padding:5px 0 5px 10px;min-height:35px}
 .bag-button span{width:24px;height:24px;font-size:11px}
 .nav nav{grid-area:links;display:flex;justify-content:space-between;gap:14px;padding:11px 0 13px;border-top:1px solid #e3e5dc}
 .nav nav a,.nav nav a:last-child{display:inline-flex;align-items:center;font-size:12px;min-height:24px}
 .hero-copy{padding:34px 22px 29px}
 .hero-copy .eyebrow{font-size:10px;letter-spacing:.12em;margin-bottom:19px}
 h1{font-size:clamp(52px,15vw,70px);letter-spacing:-.065em;line-height:1.01;margin-bottom:20px}
 .hero .lede{font-size:14px;line-height:1.7;max-width:320px;margin-bottom:16px}
 .hero .lede br{display:none}
 .hero-actions{display:grid;grid-template-columns:1fr auto;align-items:center;gap:20px;margin-top:3px}
 .hero-actions .button{font-size:12px;padding:16px 17px;gap:12px;min-height:50px}
 .hero-actions .text-link{font-size:12px;white-space:nowrap}
 .hero-foot{display:none}
 .hero-visual{min-height:0;aspect-ratio:1.06}
 .hero-visual .hero-product-image{padding:40px 10px 20px}
 .hero-stamp{top:16px;right:20px}
 .hero-stamp img{width:100px}
 .visual-caption{left:20px;right:20px;bottom:15px;font-size:7px}
 .collection-strip{padding:15px 21px;display:grid;grid-template-columns:1fr 1fr;gap:12px 15px;font-size:8px;letter-spacing:.08em;line-height:1.4}
 .collection-strip span:nth-child(even){text-align:right}
 .section{padding:41px 20px}
 .section-heading h2{font-size:29px;line-height:1.1;max-width:290px}
 .section-heading .eyebrow{font-size:9px;margin-bottom:12px}
 .section-heading>p{font-size:12px;line-height:1.6;max-width:295px;margin-top:14px}
 .filters{margin:23px -2px 22px;gap:7px;overflow-x:auto;white-space:nowrap;padding:3px 2px;scrollbar-width:none}
 .filters button{font-size:12px;min-height:42px;padding:10px 16px;flex:0 0 auto}
 .products{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 14px}
 .product-photo{aspect-ratio:3/4}
 .product-label{font-size:7px;letter-spacing:.04em;top:11px;left:10px;right:10px;line-height:1.3}
 .product-meta{padding-top:13px}
 .product-title-line{display:flex;flex-direction:column;gap:5px;align-items:flex-start}
 .product-title{font-size:13px;line-height:1.35;font-weight:600;min-height:35px;display:block}
 .product-price{display:block;font-size:13px;margin:0}
 .product-fit{font-size:10px;line-height:1.55;min-height:32px;margin:8px 0 8px}
 .swatches{gap:5px;padding:3px}
 .swatch{width:34px;height:34px;padding:6px}
 .swatch.selected{outline-offset:0}
 .product-color{font-size:11px;line-height:1.4;margin-top:8px}
 .quick-add{width:36px;height:36px;bottom:11px;right:9px;font-size:23px}
 .photo-count{font-size:8px;bottom:15px;left:7px;padding:6px}
 .set-section{padding:23px 20px 38px;gap:0}
 .set-pictures{padding:0;min-height:200px}
 .set-copy{padding:22px 3px 0}
 .set-copy h2{font-size:36px;margin-bottom:18px}
 .set-copy .eyebrow{font-size:9px;margin-bottom:16px}
 .set-copy>p:not(.eyebrow){font-size:14px;line-height:1.7;max-width:none}
 .set-copy .set-color-label{margin-top:22px}
 .set-copy .button{max-width:none;font-size:14px;min-height:54px}
 .set-copy .swatches{margin-bottom:23px}
 .hat-feature{gap:25px;padding-top:42px;padding-bottom:42px}
 .hat-feature-copy{padding:0}
 .hat-feature-copy h2{font-size:42px}
 .hat-feature-copy .hat-story{font-size:15px;line-height:1.8}
 .hat-feature-copy>p:not(.eyebrow):not(.hat-story),.hat-feature-copy li{font-size:13px;line-height:1.7}
 .hat-feature-copy .button{max-width:none;font-size:14px;min-height:54px}
 .about h2{font-size:32px;line-height:1.15}
 .about-points{margin-top:32px;gap:22px}
 .about-points h3{font-size:16px}
 .about-points p{font-size:13px;line-height:1.8}
 footer{padding:32px 20px;gap:15px}
 footer p,footer a:not(.footer-brand),footer>span{font-size:11px;line-height:1.7}
 #product-dialog{max-width:100vw;width:100%;max-height:100dvh;height:100dvh;margin:0;border-radius:0;overflow:auto}
 #product-dialog .close{position:fixed;right:13px;top:12px;background:#fafaf7ec;border-radius:50%;width:42px;height:42px;z-index:5}
 .detail-gallery{padding-bottom:15px}
 .detail-gallery .detail-visual{aspect-ratio:4/4.3;max-height:440px}
 .detail-gallery .detail-visual>img{height:100%;max-height:440px;object-fit:contain}
 .detail-gallery .detail-visual>img.on-model{object-fit:contain;object-position:center}
 .detail-thumbs{justify-content:flex-start;gap:9px;padding:0 20px}
 .gallery-thumb{width:68px;flex-basis:68px}
 .gallery-thumb img{width:60px;height:65px}
 .gallery-thumb span{font-size:10px}
 .photo-caption{font-size:10px;margin:4px 0 9px}
 .detail-copy{padding:26px 22px 34px}
 .detail-copy h2{font-size:31px;line-height:1.15}
 .detail-price{font-size:21px;margin:14px 0 18px}
 .detail-copy>p:not(.eyebrow):not(.detail-price):not(.small-note){font-size:14px;line-height:1.75}
 .option-label{font-size:13px;margin:24px 0 13px}
 .size-button{min-width:48px;min-height:46px;font-size:13px}
 .detail-copy>.button{font-size:15px;min-height:55px}
 .detail-copy details{font-size:13px;line-height:1.7;margin-top:25px}
 #set-dialog{max-width:94vw}
 .set-dialog-content{padding:50px 23px 28px}
 .set-size-row{gap:12px}
 .set-size-row label{font-size:13px}
 .set-size-row select{font-size:16px;min-height:48px}
 .set-dialog-content>.button{min-height:54px;font-size:14px}
 .bag-item h3{font-size:14px}
 .bag-item p{font-size:12px}
 .stepper button{width:34px;height:34px}
 .remove{font-size:12px;min-height:30px}
 #bag-bottom>.button{min-height:54px;font-size:14px}
 .continue{font-size:13px;min-height:35px}
}
@media(max-width:350px){.nav{padding-left:15px;padding-right:15px}.nav nav a,.nav nav a:last-child{font-size:11px}.section{padding-left:15px;padding-right:15px}.hero-copy{padding-left:18px;padding-right:18px}.hero-actions{grid-template-columns:1fr;gap:13px}.hero-actions .text-link{justify-self:start}.products{gap:28px 12px}.product-title{font-size:12px}.swatch{width:30px;height:30px;padding:5px}.filters button{padding:9px 12px;font-size:11px}.hero-stamp img{width:85px}}

.hero-visual .hero-product-image.hero-model{padding:0;object-fit:cover;object-position:center 15%;mix-blend-mode:normal}.hero-visual .hero-stamp{z-index:3}.hero-visual:has(.hero-model) .visual-caption{background:#fafaf7d9;padding:7px 9px;left:18px;right:18px;bottom:14px}.hero-stamp img{max-width:100%}@media(max-width:650px){.hero-visual:has(.hero-model){aspect-ratio:4/4.3}.hero-visual .hero-product-image.hero-model{object-position:center 16%}.hero-visual:has(.hero-model) .hero-stamp img{width:100px}.product-photo .model-photo{object-position:center 18%}}
