/* Product views and the Hudson & Common lookbook. */
.product-gallery,.product-copy{min-width:0}
.product-photo>img{aspect-ratio:4/5;object-fit:contain}
.product-thumbnails{display:flex;gap:10px;overflow-x:auto;padding:14px 2px 6px;scrollbar-width:thin}
.product-thumbnail{flex:0 0 84px;border:1px solid transparent;background:transparent;color:var(--ink);padding:4px;text-align:left}
.product-thumbnail img{width:100%;height:auto;aspect-ratio:4/5;object-fit:contain;background:var(--paper)}
.product-thumbnail span{display:block;font-size:.6875rem;line-height:1.4;padding:7px 0 2px}
.product-thumbnail[aria-pressed=true]{border-color:var(--ink)}
.lookbook-preview{background:var(--paper)}
.lookbook-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:36px}
.lookbook-heading h2{margin-top:18px;max-width:15ch}
.lookbook-heading h2 em,.lookbook-intro h1 em{font-weight:400;color:#796343}
.lookbook-heading>div:last-child{max-width:36ch;color:var(--muted);font-size:.9375rem}
.lookbook-heading .text-link{display:inline-block;margin-top:20px;color:var(--ink)}
.lookbook-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:44px 26px}
.lookbook-card{min-width:0;margin:0}
.lookbook-card[hidden]{display:none}
.lookbook-photo{position:relative;display:block;background:#e8e1d6;overflow:hidden;cursor:zoom-in}
.lookbook-photo img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;transition:transform .35s}
.lookbook-photo:hover img{transform:scale(1.025)}
.lookbook-photo>span{position:absolute;bottom:14px;right:14px;background:var(--paper);color:var(--ink);width:34px;height:34px;display:grid;place-items:center;font-size:1.3rem;border-radius:50%}
.lookbook-card figcaption{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding-top:13px}
.lookbook-card h3{font:400 clamp(1.55rem,2vw,2rem)/1.15 var(--serif)}
.lookbook-card figcaption>span{font-size:.75rem;color:var(--muted);white-space:nowrap}
.lookbook-note{font-size:.75rem;line-height:1.6;color:var(--muted);margin-top:28px;max-width:70ch}
.lookbook-intro{padding-bottom:35px;border-top:1px solid var(--rule)}
.lookbook-intro h1{font-size:clamp(3.2rem,6.5vw,6.5rem);max-width:16ch;margin:20px 0 24px}
.lookbook-intro>p:last-child{max-width:55ch;color:var(--muted);font-size:1rem}
.lookbook-content{padding-top:0}
.lookbook-filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px;padding-top:14px;border-top:1px solid var(--rule)}
.lookbook-filter{background:transparent;border:1px solid var(--rule);color:var(--ink);padding:9px 16px;min-height:44px;font-size:.8125rem}
.lookbook-filter[aria-pressed=true]{background:var(--navy);border-color:var(--navy);color:var(--cream)}
.lookbook-count{font-size:.75rem;color:var(--muted);margin-bottom:28px}
.lookbook-cta{text-align:center;border-top:1px solid var(--rule);padding-block:50px}
.lookbook-cta>p{font:400 2.7rem/1.1 var(--serif);margin-bottom:24px}
#image-viewer{width:min(1280px,94vw);max-width:94vw;max-height:94svh;background:var(--paper)}
#image-viewer .viewer-bar{position:relative;min-height:70px}
.viewer-controls{display:flex;align-items:center;gap:18px}
.viewer-controls button{padding:8px 12px;min-width:44px;min-height:44px;border:1px solid var(--rule);background:transparent;color:var(--ink)}
.viewer-controls button:disabled{opacity:.35;cursor:default}
#viewer-count{font-size:.75rem;color:var(--muted);min-width:5ch;text-align:center}
#viewer-image{width:100%;height:calc(90svh - 150px);object-fit:contain;background:#eee8de}
.viewer-caption{font-size:.8125rem;color:var(--muted);padding:15px 24px;line-height:1.6}
@media(min-width:1500px){.lookbook-preview .lookbook-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){
 .product-thumbnail{flex-basis:72px}
 .lookbook-heading{display:block;margin-bottom:26px}
 .lookbook-heading>div:last-child{margin-top:24px;max-width:none}
 .lookbook-grid{grid-template-columns:1fr;gap:30px}
 .lookbook-card h3{font-size:1.8rem}
 .lookbook-intro{padding-top:38px;padding-bottom:30px}
 .lookbook-intro h1{font-size:clamp(3.1rem,12vw,4.7rem)}
 .lookbook-filter{padding:8px 12px}
 .lookbook-note{font-size:.6875rem}
 .viewer-controls{gap:5px}
 .viewer-controls button{padding:8px}
 #image-viewer .viewer-bar{gap:12px;flex-wrap:wrap;padding:12px 16px}
 #viewer-image{height:calc(90svh - 190px)}
 .viewer-caption{padding:12px 16px;font-size:.75rem}
}
