/* Shared catalog geometry. Brand campaigns vary; product controls remain consistent. */
.lb-hero{position:relative;background:#101010;color:white;min-height:710px;height:min(810px,calc(100svh - 80px));overflow:hidden;isolation:isolate}
.lb-hero-top{position:absolute;top:28px;left:var(--space);right:var(--space);z-index:3;display:flex;align-items:center;justify-content:space-between;gap:24px}
.lb-hero-top .eyebrow{color:#bbb}
.lb-hero-top img{width:185px;height:auto;background:#fff;padding:7px 10px}
.lb-hero-visual{position:absolute;inset:0 0 0 28%;z-index:1}
.lb-hero-visual img{width:100%;height:100%;object-fit:cover;object-position:54% 50%}
.lb-hero-copy{position:relative;z-index:2;padding:150px var(--space) 130px;width:65%;pointer-events:none}
.lb-hero-copy button{pointer-events:auto}
.lb-hero-copy h1{font-size:clamp(62px,7.25vw,110px);font-weight:900;line-height:.88;letter-spacing:-.065em;margin:0}
.lb-hero-copy>p:not(.hero-kicker){font-size:16px;line-height:1.55;color:#d4d4d4;margin:32px 0 25px;max-width:30ch}
.lb-hero-bottom{position:absolute;bottom:28px;left:var(--space);right:var(--space);z-index:3;display:flex;justify-content:space-between;gap:20px;font-size:10px;text-transform:uppercase;letter-spacing:.06em}
.lb-hero-bottom span{color:#ccc}
.catalog-search-row{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(160px,.8fr) minmax(150px,.7fr);align-items:end;gap:24px;margin-bottom:30px}
.catalog-search-row label{font-size:11px;font-weight:600;color:var(--ra-muted);letter-spacing:.01em}
.catalog-search-row input,.catalog-search-row select{display:block;min-height:48px;width:100%;margin-top:10px;background:#fff;border:1px solid var(--ra-line);border-radius:0;padding:12px 14px;font:inherit;font-size:13px;color:var(--ra-ink)}
.catalog-search-row select{padding-right:32px}
.catalog-toolbar{scroll-margin-top:30px}
.product-brand{height:24px;display:flex;align-items:center;margin-bottom:14px}
.product-brand img{height:20px;width:auto;max-width:98px;object-fit:contain}
.product-card:is([data-type="trousers"],[data-type="jacket"],[data-type="tshirt"]) .product-image-link{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}
.product-card:is([data-type="trousers"],[data-type="jacket"],[data-type="tshirt"]) .product-image{margin:0;flex:none;max-height:100%}
.product-card[data-type="trousers"] .product-image{height:90%;width:72%;padding:28px 0 12px}
.product-card[data-type="jacket"] .product-image{height:90%;width:85%;padding:24px 0 10px}
.product-card[data-type="tshirt"] .product-image{height:90%;width:84%;padding:24px 0 10px}
.catalog-badge{position:absolute;top:18px;right:16px;font-size:10px;font-weight:650;background:#f5f5f3;padding:6px 8px;line-height:1.25}
.catalog-swatches{display:flex;flex-wrap:wrap;gap:5px;min-height:44px;align-content:start;margin:18px 0 7px}
.catalog-swatch{width:44px;height:44px;display:grid;place-items:center;border:1px solid transparent;background:#fff;padding:4px}
.catalog-swatch img{width:32px;height:32px;max-width:100%;object-fit:contain}
.catalog-swatch[aria-pressed="true"]{border-color:var(--ra-ink)}
.catalog-swatch:hover{border-color:#b7b7b2}
.catalog-color-name{font-size:11px;color:var(--ra-muted);margin:0 0 18px;min-height:14px}
.product-info h3{min-height:53px}
.product-feature{min-height:32px;line-height:1.45}
.catalog-empty{padding:60px 0;text-align:center}
.catalog-empty p{font-size:18px}
.catalog-empty button{background:#101010;color:white;padding:14px 22px;border:0;font-size:13px}
.catalog-pages{display:flex;justify-content:center;align-items:center;gap:12px;margin:48px 0 10px}
.catalog-pages button{display:grid;place-items:center;min-width:44px;min-height:44px;background:transparent;border:1px solid transparent;font-size:13px}
.catalog-pages button[aria-current="page"]{border-color:#101010;font-weight:700}
.catalog-pages button:disabled{opacity:.3}
.lb-editorial{display:grid;grid-template-columns:1.22fr .78fr;background:#101010;color:white;min-height:640px}
.lb-editorial>div:first-child{min-width:0}
.lb-editorial img{width:100%;height:100%;object-fit:cover;object-position:68% 50%;max-height:760px}
.lb-editorial-copy{padding:80px 42px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}
.lb-editorial h2{font-size:clamp(46px,5.5vw,84px);font-weight:850;line-height:.9;letter-spacing:-.055em;margin:36px 0 24px}
.lb-editorial-copy>p:not(.eyebrow){font-size:14px;line-height:1.7;color:#bfbfbf;max-width:35ch;margin-bottom:32px}
.lb-editorial .solid-button{background:#fff;color:#101010}
.stress-banner{padding:16px var(--space);font-size:12px;line-height:1.5;background:#fff0ef;color:#632128;border-bottom:1px solid #ddd}
.stress-banner a{margin-left:14px;text-decoration:underline;white-space:nowrap}
@media(max-width:1000px){
 .lb-hero{height:740px}
 .lb-hero-copy{width:75%;padding-top:160px}
 .lb-hero-copy h1{font-size:clamp(58px,7.4vw,86px)}
 .lb-hero-visual{left:20%;opacity:.85}
 .lb-editorial-copy{padding:60px 28px}
 .catalog-search-row{grid-template-columns:minmax(0,1.4fr) minmax(130px,.8fr) minmax(120px,.7fr);gap:14px}
}
@media(max-width:700px){
 .site-header nav{display:none}
 .lb-hero{height:710px;min-height:710px}
 .lb-hero-top{top:20px;gap:12px;align-items:flex-start}
 .lb-hero-top .eyebrow{font-size:9px;max-width:15ch;line-height:1.5}
 .lb-hero-top img{width:135px;padding:5px 7px}
 .lb-hero-visual{inset:210px 0 0;opacity:1}
 .lb-hero-visual img{object-fit:cover;object-position:54% 48%}
 .lb-hero-copy{padding:98px 20px 0;width:100%}
 .lb-hero-copy h1{font-size:clamp(40px,9.5vw,64px)}
 .lb-hero-copy>p:not(.hero-kicker){font-size:13px;margin:20px 0}
 .lb-hero-copy .hero-kicker{font-size:9px;margin-bottom:15px}
 .lb-hero-copy .hero-cta{width:190px;min-height:46px;font-size:11px}
 .lb-hero-bottom{bottom:20px;font-size:8px;align-items:end}
 .lb-hero-bottom span{max-width:20ch;line-height:1.5}
 .catalog-search-row{grid-template-columns:1fr 1fr;gap:18px 12px;margin-bottom:24px}
 .catalog-search-label{grid-column:1/-1}
 .catalog-search-row input,.catalog-search-row select{font-size:16px}
 .filters{gap:18px}
 .filters button{font-size:11px}
 .catalog-toolbar>p{max-width:13ch;font-size:11px}
 .catalog-badge{top:11px;right:9px;font-size:8px;max-width:9ch;padding:4px 5px;text-align:center}
 .image-label{font-size:8px}
 .product-card[data-type="trousers"] .product-image{padding-top:26px;width:82%}
 .product-card[data-type="jacket"] .product-image,.product-card[data-type="tshirt"] .product-image{padding-top:26px;width:90%}
 .product-brand img{max-width:80px;height:17px}
 .product-brand{height:20px;margin-bottom:12px}
 .product-info h3{min-height:42px}
 .product-info h3 small{font-size:11px}
 .product-feature{font-size:11px;min-height:34px}
 .catalog-swatches{gap:4px}
 .catalog-swatch{width:40px;height:44px;padding:3px}
 .catalog-color-name{font-size:10px}
 .catalog-pages{gap:4px;margin-top:36px}
 .catalog-pages button{min-width:36px}
 .lb-editorial{grid-template-columns:1fr;min-height:0}
 .lb-editorial img{height:440px;object-position:70% center}
 .lb-editorial-copy{padding:44px 22px 52px}
 .lb-editorial h2{font-size:56px;margin-top:25px}
}
@media(max-width:360px){
 .filters{gap:11px}
 .filters button{font-size:10px}
 .catalog-swatch{width:38px}
 .product-feature{font-size:10px}
 .lb-editorial h2{font-size:48px}
}
