/* Product hierarchy and ambient campaign repair. Last in the cascade on home and Shop. */
:root { --store-paper:#e8dfcf; --store-ink:#171511; --store-hairline:rgba(23,21,17,.25); }
body .collection.original-product-ui { background:var(--store-paper); color:var(--store-ink); padding:clamp(72px,7.6vw,118px) clamp(24px,5.3vw,90px) clamp(86px,9vw,140px); }
body .collection .collection-head { display:grid;grid-template-columns:minmax(160px,.65fr) minmax(0,1.65fr) auto;gap:22px;align-items:end;padding-bottom:30px;border-bottom:1px solid var(--store-hairline); }
body .collection .collection-head h2 { font:500 clamp(45px,5vw,84px)/.94 var(--serif);letter-spacing:-.06em; }
body .collection .collection-head p:last-child{font:10px/1.5 var(--mono);text-align:right;color:#574d42}
body .collection .filter-list{margin:28px 0 30px;gap:8px}
body .collection .filter-list button{min-width:125px;flex:none;border-color:var(--store-hairline);letter-spacing:.11em}
body .collection.original-product-ui .products { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(16px,2.15vw,35px);align-items:stretch;max-width:1500px;margin:0 auto;padding:0; }
body .collection.original-product-ui .product-card,
body .collection.original-product-ui .product-card:nth-child(2),
body .collection.original-product-ui .product-card:nth-child(3){grid-column:auto;display:flex;flex-direction:column;min-width:0;width:auto;max-width:none;margin:0;align-self:stretch;gap:0}
body .collection.original-product-ui .product-image,
body .collection.original-product-ui .product-card:nth-child(3) .product-image{height:auto;aspect-ratio:4/5;width:100%;margin:0;overflow:hidden;background:#d4c8b6}
body .collection.original-product-ui .product-image img{width:100%;height:100%;object-fit:cover;object-position:center 33%;transition:transform .85s cubic-bezier(.17,.67,.33,1);filter:saturate(.82) contrast(1.035)}
body .collection.original-product-ui .product-card:nth-child(2) .product-image img{object-position:center 42%}
body .collection.original-product-ui .product-card:nth-child(3) .product-image img{object-position:center 30%}
body .collection.original-product-ui .product-image:focus-visible img,
body .collection.original-product-ui .product-image:hover img{transform:scale(1.035)}
body .collection.original-product-ui .product-image span{left:auto;right:14px;bottom:14px;transform:none;opacity:1;background:#eee7dd;color:#161411;border:1px solid rgba(22,20,17,.18);font:10px var(--mono);letter-spacing:.08em;padding:12px 14px}
body .collection.original-product-ui .product-meta,
body .collection.original-product-ui .product-card:nth-child(3) .product-meta{display:flex;flex-direction:column;gap:0;flex:1;width:100%;padding:20px 0 0;margin:0;align-items:stretch}
body .collection.original-product-ui .product-meta>div{display:flex;flex-direction:column;align-items:stretch;flex:1;min-width:0;width:100%;gap:0}
body .collection.original-product-ui .product-meta h3{font:500 clamp(24px,2.3vw,34px)/1.07 var(--serif);letter-spacing:-.045em;margin:0 0 10px;color:#15130f;min-height:2.15em}
body .collection.original-product-ui .product-meta p{font:13px/1.5 var(--sans);letter-spacing:0;color:#554b3f;margin:0;min-height:2.9em;max-width:360px}
body .collection.original-product-ui .product-meta .original-price{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:10px;margin:17px 0 12px;padding:14px 0;border-top:1px solid var(--store-hairline)}
body .collection.original-product-ui .product-meta .original-price strong{font:600 22px var(--sans);letter-spacing:-.03em;color:#181511}
body .collection.original-product-ui .product-meta .original-price span{margin:0;font:9px/1.4 var(--mono);letter-spacing:.1em;color:#665847}
body .collection.original-product-ui .product-details-link{font:10px var(--mono);letter-spacing:.12em;display:inline-flex;align-self:flex-start;margin:0 0 18px;padding:8px 0;border-bottom:1px solid #171410}
body .collection.original-product-ui .product-meta .add{position:static!important;opacity:1!important;pointer-events:auto!important;display:flex!important;align-items:center;justify-content:space-between;text-align:left;width:100%;min-height:52px;padding:0 17px;background:#191712;color:#f0e7d8;white-space:normal;font:10px var(--mono);letter-spacing:.13em;transition:background .2s ease;cursor:pointer}
body .collection.original-product-ui .product-meta .add b{font:20px var(--sans)}
body .collection.original-product-ui .product-meta .add:hover{background:#4b4031}
.commerce-shop .shop-hero{padding:85px clamp(24px,5.3vw,90px) 60px;min-height:0}
.commerce-shop .shop-hero h1{font:500 clamp(58px,7vw,108px)/.89 var(--serif);margin:21px 0;letter-spacing:-.07em}
.commerce-shop .shop-hero h1 em{display:inline;padding:0 0 0 .12em}
.commerce-shop .shop-hero p:last-child{max-width:620px;font:16px/1.6 var(--serif)}
.commerce-shop .shop-hero:after{font-size:19vw;bottom:-.3em;opacity:.48}
.commerce-shop .original-product-ui{padding-top:80px}
/* Dialog: fixed, centered and carefully framed; visual button close remains inside the panel. */
dialog.quick-view{position:fixed;margin:auto;inset:0;max-width:min(1000px,calc(100vw - 36px));width:min(1000px,calc(100vw - 36px));max-height:min(90svh,840px);border:0;border-radius:0;overflow:auto;box-shadow:0 22px 100px rgba(0,0,0,.45)}
dialog.quick-view[open]{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.9fr)}
dialog.quick-view .dialog-gallery{padding:20px;background:#d5c9b8;min-width:0}
dialog.quick-view .dialog-gallery>img{width:100%;height:min(61svh,580px);max-height:none;object-fit:cover;object-position:center 28%;display:block}
dialog.quick-view .dialog-info{padding:clamp(28px,4.5vw,64px) clamp(22px,4vw,54px);overflow:visible;min-width:0}
dialog.quick-view .dialog-info h2{font-size:clamp(35px,3.9vw,58px);line-height:1.02}
dialog.quick-view .dialog-close{position:absolute;top:12px;right:12px;z-index:4;background:#ede7db;border:1px solid #a79b88;width:44px;height:44px;display:grid;place-items:center;font:29px/1 var(--sans);color:#1a1611}
dialog.quick-view .sizes{flex-wrap:wrap}
dialog.quick-view .sizes button{min-width:47px;min-height:47px}
dialog.quick-view .dialog-add{display:flex;align-items:center;justify-content:space-between;min-height:55px;width:100%;font:10px var(--mono);letter-spacing:.1em}
dialog.quick-view .dialog-add:disabled{color:#eee5d7;opacity:.72}
dialog.quick-view .continue-shopping{min-height:42px}
.campaign-sequence{height:min(900px,100svh);min-height:670px;isolation:isolate}
.js-enabled .editorial-panel .editorial-image{clip-path:inset(0 8% 0 0);transition:clip-path 1.1s cubic-bezier(.19,.77,.31,1)}
.js-enabled .editorial-panel .editorial-image img{transform:scale(1.045);transition:transform 1.4s cubic-bezier(.19,.77,.31,1)}
.editorial-panel.editorial-visible .editorial-image{clip-path:inset(0)}
.editorial-panel.editorial-visible .editorial-image img{transform:scale(1)}
.campaign-sequence .campaign-sticky{height:100%}
.campaign-sequence .campaign-frame.frame-one{display:block;opacity:1}
.campaign-sequence .campaign-frame .campaign-poster{width:100%;height:100%;object-fit:cover;object-position:center 38%;transform:scale(1.045);filter:brightness(.58) saturate(.67)}
.campaign-loop{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;opacity:0;transition:opacity 1.2s ease;pointer-events:none}
.campaign-sequence.video-active .campaign-loop{opacity:1}
.campaign-sequence.video-active .campaign-poster{opacity:0}
.campaign-sequence .campaign-frame:after{pointer-events:none}
.campaign-sequence .campaign-copy{z-index:3}
.campaign-sequence .campaign-copy h2{font-size:clamp(60px,7vw,110px)}
.campaign-sequence .campaign-progress{font:10px var(--mono);letter-spacing:.12em;align-items:center;color:#e1d8ca;z-index:3}
.campaign-sequence .campaign-progress i{background:#cbb797;width:75px;height:1px}
@media (max-width:1050px){
 body .collection.original-product-ui .products{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
 body .collection .collection-head{grid-template-columns:1fr 1.5fr}
 body .collection .collection-head p:last-child{display:none}
}
@media (max-width:720px){
 body .collection.original-product-ui{padding:67px 6vw 90px}
 body .collection .collection-head{display:block;padding-bottom:22px}
 body .collection .collection-head h2{font-size:clamp(48px,12vw,72px);margin:18px 0 0}
 body .collection .filter-list{margin:20px 0 26px}
 body .collection .filter-list button{min-width:0;flex:1;padding:13px 8px;font-size:9px}
 body .collection.original-product-ui .products{grid-template-columns:1fr;gap:38px}
 body .collection.original-product-ui .product-card:nth-child(3){display:flex;grid-column:auto}
 body .collection.original-product-ui .product-image{aspect-ratio:4/4.7}
 body .collection.original-product-ui .product-meta h3{min-height:0;font-size:29px}
 body .collection.original-product-ui .product-meta p{min-height:0}
 body .collection.original-product-ui .product-meta .original-price{margin-top:14px}
 body .collection.original-product-ui .product-meta .add{margin-top:0}
 .commerce-shop .shop-hero{padding:62px 7vw 46px}
 .commerce-shop .shop-hero h1{font-size:clamp(54px,13vw,80px);line-height:.97}
 .commerce-shop .shop-hero h1 em{display:block;padding-left:9vw}
 .commerce-shop .shop-hero:after{font-size:44vw}
 dialog.quick-view{width:calc(100vw - 24px);max-width:calc(100vw - 24px);max-height:92svh}
 dialog.quick-view[open]{display:block}
 dialog.quick-view .dialog-gallery{padding:10px}
 dialog.quick-view .dialog-gallery>img{height:min(29svh,265px);max-height:none}
 dialog.quick-view .dialog-gallery button{width:46px;height:46px}
 dialog.quick-view .dialog-gallery>div{margin-top:6px}
 dialog.quick-view .dialog-info{padding:18px 20px 26px}
 dialog.quick-view .dialog-info h2{font-size:34px;margin:13px 0 7px}
 dialog.quick-view .dialog-info .dialog-price{margin:7px 0 11px}
 dialog.quick-view .dialog-info>p:not(.eyebrow){font-size:12px;line-height:1.45}
 dialog.quick-view .size-label{margin-top:13px}
 dialog.quick-view .sizes{margin:12px 0}
 dialog.quick-view .quantity{margin:12px 0}
 dialog.quick-view .dialog-add{min-height:49px}
 dialog.quick-view .dialog-close{top:8px;right:8px}
 .campaign-sequence{min-height:610px;height:82svh}
 .campaign-sequence .campaign-copy{bottom:12svh}
 .campaign-sequence .campaign-copy h2{font-size:clamp(54px,14vw,85px)}
 .campaign-sequence .campaign-poster{object-position:center}
}
/* Keep the three-image garment atlas airy at narrow sizes, without covering the main embroidery caption. */
@media (min-width:721px) and (max-width:1050px){
 .detail-atlas .atlas-main figcaption{max-width:145px;line-height:1.4}
}
@media (max-width:720px){
 .detail-atlas{height:1060px;min-height:1060px}
 .detail-atlas .atlas-float-one{top:725px}
 .detail-atlas .atlas-float-two{bottom:32px}
}
/* The original material-detail photographs remain in the atlas.
   Two verified Instagram campaign portraits join below, never replacing them. */
.detail-atlas{min-height:1550px}
.detail-atlas .atlas-float-one{top:640px;bottom:auto;left:8.5vw;width:195px;height:255px}
.detail-atlas .atlas-float-two{top:930px;bottom:auto;right:5.5vw;width:215px;height:295px}
.detail-atlas .atlas-float-three{top:1010px;left:31vw;width:205px;height:275px}
.detail-atlas .atlas-float-four{top:1190px;right:31vw;width:205px;height:280px}
.detail-atlas .atlas-float img{display:block;object-fit:cover;object-position:center}
.detail-atlas .atlas-float-three img{object-position:center 36%}
.detail-atlas .atlas-float-four img{object-position:center 46%}
.detail-atlas .atlas-float figcaption{max-width:calc(100% - 24px);line-height:1.4}
@media (min-width:721px) and (max-width:1180px){
 .detail-atlas{min-height:1720px}
 .detail-atlas .atlas-float-one{top:680px;left:7vw;width:175px;height:235px}
 .detail-atlas .atlas-float-two{top:1040px;right:4vw;width:190px;height:265px}
 .detail-atlas .atlas-float-three{top:980px;left:27vw;width:180px;height:250px}
 .detail-atlas .atlas-float-four{top:1380px;right:33vw;width:190px;height:270px}
}
@media (max-width:720px){
 .detail-atlas{height:1620px;min-height:1620px}
 .detail-atlas .atlas-float-one{top:735px;left:7vw;width:138px;height:178px}
 .detail-atlas .atlas-float-two{top:1050px;left:7vw;right:auto;width:143px;height:194px}
 .detail-atlas .atlas-float-three{top:862px;left:auto;right:7vw;width:138px;height:186px}
 .detail-atlas .atlas-float-four{top:1280px;right:7vw;width:143px;height:220px}
 .detail-atlas .atlas-float figcaption{bottom:8px;left:8px;font-size:8px;line-height:1.3;letter-spacing:.04em;padding:6px 7px;max-width:calc(100% - 16px)}
}
@media (prefers-reduced-motion:reduce){
 .editorial-panel .editorial-image{clip-path:none!important;transition:none!important}
 .editorial-panel .editorial-image img{transform:none!important;transition:none!important}
 .campaign-loop{display:none!important}
 .campaign-sequence .campaign-poster{animation:none!important;transform:none!important}
 .campaign-sequence .campaign-copy{animation:none!important}
 body .collection.original-product-ui .product-image img{transition:none!important}
}
