@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@500;600&display=swap');
:root{--ink:#171715;--paper:#f6f5f2;--white:#fff;--line:#deddd8;--muted:#77766f;--wine:#702a31;--serif:"Playfair Display",Georgia,serif;--sans:"DM Sans",Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:15px}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}.announcement{height:30px;background:#1d1d1b;color:white;display:flex;justify-content:center;align-items:center;font-size:10px;letter-spacing:.17em;text-transform:uppercase}
header{height:76px;background:rgba(246,245,242,.97);border-bottom:1px solid var(--line);padding:0 5vw;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:6}
.brand{display:flex;align-items:center;gap:11px}.brand-name{font:600 23px var(--serif);letter-spacing:.04em}.brand-overseas{font-size:9px;color:var(--muted);letter-spacing:.28em;border-left:1px solid var(--line);padding:5px 0 5px 11px}
nav{display:flex;gap:32px}nav button,.header-action{border:0;background:none;padding:9px 0;text-transform:uppercase;letter-spacing:.14em;font-size:11px}nav button.active,nav button:hover,.header-action:hover{color:var(--wine)}.header-right{display:flex;gap:23px;align-items:center}.header-action{display:inline-flex;align-items:center;gap:9px}.search-icon{width:15px;height:15px;border:1.3px solid currentColor;border-radius:50%;position:relative;display:inline-block}.search-icon:after{content:"";position:absolute;width:6px;border-top:1.3px solid;right:-5px;bottom:-2px;transform:rotate(48deg)}.bag-icon{font-size:15px}.bag-count{display:inline-grid;place-items:center;min-width:17px;height:17px;border-radius:20px;background:var(--ink);color:white;font-size:10px;letter-spacing:0}
.hero{height:min(690px,calc(100vh - 106px));min-height:520px;position:relative;overflow:hidden;background:#d1d0ce}.hero-track{height:100%;display:flex;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none}.hero-track::-webkit-scrollbar{display:none}.hero-slide{height:100%;flex:0 0 100%;position:relative;overflow:hidden;scroll-snap-align:start;background:var(--paper)}.hero-slide-image{position:absolute;inset:0;background-color:#d1d0ce;background-repeat:no-repeat;background-size:300% 300%;background-position:center}.hero-slide--home .hero-slide-image{background:none}.hero-slide-image img{width:100%;height:100%;object-fit:cover;object-position:center 44%;display:block}.hero-slide--home:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,10,10,.44),transparent 75%);pointer-events:none}.hero-slide--split .hero-slide-image{left:50%;width:50%;background-size:300% 300%}.hero-copy{position:absolute;z-index:1;left:9vw;top:50%;transform:translateY(-42%);color:white;max-width:min(460px,38vw)}.hero-slide--split .hero-copy{left:9vw;max-width:36vw;color:var(--ink)}.eyebrow{font-size:10px;letter-spacing:.24em;text-transform:uppercase}.hero h1,.hero h2{font:500 clamp(45px,6.4vw,82px)/.98 var(--serif);letter-spacing:-.045em;margin:22px 0}.hero h2{font-size:clamp(42px,5.2vw,68px)}.hero p{max-width:360px;line-height:1.7;font-size:15px;color:rgba(255,255,255,.88)}.hero-slide--split p{color:var(--muted)}.cta{display:inline-flex;align-items:center;gap:19px;margin-top:22px;border:0;border-bottom:1px solid currentColor;padding:0 0 10px;background:none;font-size:10px;letter-spacing:.18em;text-transform:uppercase}.cta:hover{color:var(--wine)}.hero-scroll-hint{position:absolute;z-index:2;right:5vw;bottom:22px;display:flex;align-items:center;gap:14px;color:#fff;font-size:10px;letter-spacing:.14em;text-transform:uppercase;text-shadow:0 1px 4px rgba(0,0,0,.35)}.hero-progress{display:block;width:76px;height:2px;background:rgba(255,255,255,.42)}.hero-progress span{display:block;width:20%;height:100%;background:#fff;transition:width .22s ease}
.wrap{max-width:1500px;margin:auto;padding-left:6vw;padding-right:6vw}.intro{padding-top:68px;padding-bottom:28px;display:flex;justify-content:space-between;align-items:end;gap:30px}.intro h2,.section-title{font:500 clamp(32px,4vw,48px)/1.08 var(--serif);margin:10px 0 0}.intro p{max-width:360px;line-height:1.65;color:var(--muted);font-size:13px;margin:0}
.search-area{padding-top:30px;padding-bottom:52px}.search-box{background:#eae9e5;padding:26px 30px 25px;display:grid;grid-template-columns:1fr auto;gap:18px;align-items:center}.search-title{font:500 25px var(--serif);margin:0 0 6px}.search-sub{font-size:12px;color:var(--muted);margin:0}.search-controls{display:flex;gap:9px}.keyword-box{display:flex;width:min(410px,45vw);height:48px;background:white;border:1px solid #cbc9c3}.keyword-box input{flex:1;min-width:0;border:0;padding:0 14px;outline:none;background:transparent;font-size:13px}.keyword-box button{border:0;background:var(--ink);color:white;padding:0 18px;font-size:10px;letter-spacing:.12em;text-transform:uppercase}.image-search{grid-column:1/-1;display:flex;align-items:center;gap:15px;padding-top:17px;border-top:1px solid #d5d3ce}.upload-label{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:1px solid var(--ink);padding:11px 16px;background:transparent;font-size:10px;text-transform:uppercase;letter-spacing:.13em;cursor:pointer}.upload-label:hover{background:white}.upload-label input{display:none}.upload-tip{font-size:12px;color:var(--muted)}.image-preview{display:none;align-items:center;gap:10px;font-size:11px}.image-preview.visible{display:flex}.image-preview img{width:40px;height:46px;object-fit:cover}.image-preview button{border:0;background:none;text-decoration:underline;font-size:11px}
.subcategory-caption{font-size:10px;text-transform:uppercase;letter-spacing:.16em;color:var(--muted);margin:0 0 12px}.category-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0 24px;padding:0 0 27px}.category-tab{border:0;border-bottom:1px solid var(--line);background:transparent;padding:13px 2px;text-align:left;white-space:normal;font-size:10px;letter-spacing:.12em;text-transform:uppercase}.category-tab.active,.category-tab:hover{background:transparent;color:var(--wine);border-color:var(--line);font-weight:600}
.products-section{padding-top:0;padding-bottom:90px}.product-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:21px}.product-head h2{font:500 34px var(--serif);margin:0}.product-head p{font-size:12px;color:var(--muted);margin:0}.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:38px 16px}.product-card{min-width:0}.product-image{aspect-ratio:.78;background-color:#e1e0dc;background-size:300% 200%;background-repeat:no-repeat;position:relative;overflow:hidden;cursor:pointer}.product-image:hover .quick-add{opacity:1;transform:translateY(0)}.product-image .quick-add{position:absolute;right:13px;bottom:13px;width:42px;height:42px;background:white;border:0;border-radius:50%;font-size:23px;opacity:1;transform:none;transition:.2s}.product-image .quick-add:hover{background:var(--ink);color:white}.product-badge{position:absolute;top:13px;left:13px;background:rgba(255,255,255,.86);padding:7px 9px;font-size:9px;letter-spacing:.11em;text-transform:uppercase}.product-info{padding-top:13px;display:flex;justify-content:space-between;gap:12px}.product-info h3{font-weight:500;font-size:13px;margin:0 0 5px}.product-info p{font-size:11px;color:var(--muted);margin:0}.price{font-size:13px;white-space:nowrap}.empty-state{grid-column:1/-1;padding:50px 20px;border:1px solid var(--line);text-align:center;color:var(--muted);line-height:1.7}.empty-state strong{display:block;color:var(--ink);font:500 25px var(--serif);margin-bottom:7px}
.story{display:grid;grid-template-columns:1fr 1fr;background:#e7e6e1}.story-image{background:url("../images/campaign.png") center 48%/cover no-repeat;min-height:440px}.story-copy{padding:7vw;display:flex;justify-content:center;flex-direction:column}.story-copy h2{font:500 clamp(35px,4vw,52px)/1.07 var(--serif);margin:14px 0;max-width:460px}.story-copy p{font-size:13px;line-height:1.8;color:#5e5d57;max-width:440px}
footer{background:#20201f;color:#f4f3ef;padding:52px 7vw 26px}.foot-top{display:flex;justify-content:space-between;gap:38px;padding-bottom:42px}.foot-brand{font:500 27px var(--serif)}.foot-note{max-width:290px;color:#bcbab3;font-size:12px;line-height:1.7;margin-top:12px}.foot-links{display:flex;gap:60px}.foot-col{display:grid;gap:12px;align-content:start}.foot-col strong{font-size:10px;letter-spacing:.17em;text-transform:uppercase;margin-bottom:4px}.foot-col a{font-size:12px;color:#c7c5bf}.foot-bottom{border-top:1px solid #4a4946;padding-top:19px;display:flex;justify-content:space-between;color:#aaa8a2;font-size:10px}
.overlay{position:fixed;inset:0;background:rgba(15,15,15,.42);z-index:10;opacity:0;pointer-events:none;transition:opacity .2s}.overlay.open{opacity:1;pointer-events:auto}
.side-panel{position:fixed;z-index:11;top:0;right:0;bottom:0;width:min(480px,100vw);background:var(--paper);transform:translateX(101%);transition:transform .28s ease;display:flex;flex-direction:column}.side-panel.open{transform:translateX(0)}.panel-head{height:78px;padding:0 25px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.panel-head h2{font:500 25px var(--serif);margin:0}.close{font-size:25px;border:0;background:none;line-height:1;padding:4px}.panel-body{overflow:auto;padding:22px 25px;flex:1}.cart-row{display:grid;grid-template-columns:88px 1fr auto;gap:14px;padding:0 0 19px;margin-bottom:19px;border-bottom:1px solid var(--line)}.cart-thumb{width:88px;height:115px;background-size:300% 300%;background-repeat:no-repeat;background-color:#e4e3df}.cart-details h3{font-size:13px;font-weight:500;margin:4px 0 7px}.cart-details p{font-size:11px;color:var(--muted);margin:4px 0}.qty-control{display:flex;align-items:center;gap:11px;margin-top:12px;font-size:12px}.qty-control button{border:0;background:none;font-size:15px;padding:0 3px}.remove-item{background:none;border:0;text-decoration:underline;color:var(--muted);font-size:10px;padding:0;margin-top:9px}.cart-row-price{font-size:12px}.panel-foot{border-top:1px solid var(--line);padding:18px 25px 24px}.subtotal{display:flex;justify-content:space-between;font-size:14px;margin-bottom:6px}.shipping-note{font-size:11px;color:var(--muted);margin:0 0 17px}.solid-button{width:100%;background:var(--ink);color:white;border:1px solid var(--ink);padding:16px 18px;text-transform:uppercase;letter-spacing:.15em;font-size:10px}.solid-button:hover{background:var(--wine);border-color:var(--wine)}.text-button{border:0;background:none;text-decoration:underline;padding:12px 0;font-size:11px}
.product-modal{position:fixed;z-index:13;left:50%;top:50%;transform:translate(-50%,-47%) scale(.98);width:min(1040px,calc(100vw - 30px));max-height:92vh;overflow:auto;background:var(--paper);opacity:0;pointer-events:none;transition:.2s;display:grid;grid-template-columns:1.05fr .95fr}.product-modal.open{opacity:1;pointer-events:auto;transform:translate(-50%,-50%) scale(1)}.gallery-column{padding:18px;background:#e5e4e0;display:flex;flex-direction:column;gap:12px}.gallery-main{height:min(65vh,610px);min-height:410px;background-size:300% 200%;background-repeat:no-repeat;background-color:#e3e2de;position:relative;cursor:zoom-in;transition:background-size .18s}.gallery-main.zoomed{background-size:600% 400%;cursor:zoom-out}.gallery-main .gallery-zoom{position:absolute;right:12px;bottom:12px;border:0;background:rgba(255,255,255,.92);padding:10px 12px;font-size:10px;letter-spacing:.1em;text-transform:uppercase}.gallery-arrow{position:absolute;top:50%;transform:translateY(-50%);border:0;background:rgba(255,255,255,.92);width:38px;height:38px;border-radius:50%;font-size:20px}.gallery-arrow.prev{left:11px}.gallery-arrow.next{right:11px}.gallery-thumbs{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.gallery-thumb{aspect-ratio:1;border:1px solid transparent;background-size:300% 200%;background-repeat:no-repeat;background-color:#d7d6d2;cursor:pointer;position:relative;padding:0}.gallery-thumb .gallery-label{position:absolute;bottom:0;left:0;right:0;background:rgba(255,255,255,.9);margin:0;padding:4px 0;display:block}.gallery-thumb.active{border:2px solid var(--ink)}.gallery-label{font-size:9px;letter-spacing:.1em;text-transform:uppercase;text-align:center;margin-top:5px}.modal-copy{padding:38px;display:flex;flex-direction:column;justify-content:center;position:relative}.garment-details{margin-top:18px;border-top:1px solid var(--line);padding-top:13px}.garment-details h3{font-size:10px;letter-spacing:.14em;text-transform:uppercase;margin:0 0 10px}.garment-details p{display:flex;justify-content:space-between;gap:10px;border-bottom:1px solid var(--line);padding:8px 0;margin:0;font-size:11px}.garment-details p span:last-child{text-align:right;color:var(--muted)}.modal-copy{padding:32px;display:flex;flex-direction:column;justify-content:center}.modal-copy h2{font:500 34px/1.1 var(--serif);margin:12px 0}.modal-copy .modal-price{font-size:14px}.modal-copy p{font-size:12px;color:var(--muted);line-height:1.7}.size-label{font-size:10px;text-transform:uppercase;letter-spacing:.14em;margin:20px 0 10px}.sizes{display:flex;gap:8px}.sizes button{min-width:41px;padding:10px 8px;background:transparent;border:1px solid var(--line);font-size:11px}.sizes button.active,.sizes button:hover{border-color:var(--ink);background:var(--ink);color:white}.modal-copy .solid-button{margin-top:22px}
#checkoutView{display:none;padding:56px 6vw 85px;max-width:1440px;margin:auto}.checkout-header{display:flex;justify-content:space-between;align-items:end;margin-bottom:38px}.checkout-header h1{font:500 45px var(--serif);margin:8px 0 0}.back-shop{border:0;background:none;text-decoration:underline;font-size:11px}.checkout-layout{display:grid;grid-template-columns:1.15fr .85fr;gap:6vw}.checkout-form h2,.order-summary h2{font:500 25px var(--serif);margin:0 0 20px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.field{display:grid;gap:7px}.field.full{grid-column:1/-1}.field label{font-size:10px;letter-spacing:.1em;text-transform:uppercase}.field input,.field select,.field textarea{border:1px solid #c9c7c1;background:#fff;padding:13px 12px;outline:none;font-size:13px;width:100%}.field input:focus,.field select:focus{border-color:var(--ink)}.checkout-form .solid-button{margin-top:22px}.fine-print{font-size:11px;color:var(--muted);line-height:1.6;margin-top:12px}.summary-box{background:#ebeae6;padding:23px}.summary-row{display:grid;grid-template-columns:62px 1fr auto;gap:12px;align-items:center;padding:0 0 13px;margin-bottom:13px;border-bottom:1px solid #d7d5cf}.summary-thumb{height:78px;background-size:300% 300%;background-repeat:no-repeat;background-color:#deddd9}.summary-row h3{font-size:12px;font-weight:500;margin:0 0 5px}.summary-row p{font-size:10px;color:var(--muted);margin:0}.summary-row .sum-price{font-size:11px}.summary-total{display:flex;justify-content:space-between;padding-top:5px;font-size:14px}.order-success{display:none;margin-top:18px;background:#e6eee8;padding:18px;font-size:13px;line-height:1.6}.order-success.visible{display:block}
@media(max-width:850px){header{padding:0 24px}nav{gap:20px}.header-right{gap:14px}.wrap{padding-left:24px;padding-right:24px}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.search-box{grid-template-columns:1fr}.search-controls{width:100%}.keyword-box{width:100%}.story-copy{padding:45px}.checkout-layout{gap:30px}}
@media(max-width:600px){.announcement{height:27px;font-size:8px}header{height:64px;padding:0 17px}.brand-name{font-size:20px}.brand-overseas{display:none}nav{gap:12px}nav button{font-size:9px;letter-spacing:.1em}.header-right{gap:13px}.header-action{font-size:0;gap:0}.header-action .bag-count{font-size:10px;margin-left:5px}.hero{height:72vh;min-height:500px;max-height:670px}.hero-slide--home .hero-slide-image img{object-position:57% center}.hero-slide--split .hero-slide-image{inset:0;width:100%;left:0}.hero-slide--split:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,10,10,.5),rgba(10,10,10,.12));pointer-events:none}.hero-slide--split .hero-copy{left:24px;right:20px;top:auto;bottom:100px;transform:none;max-width:82%;color:#fff}.hero-slide--split p{color:rgba(255,255,255,.9)}.hero h1,.hero h2{font-size:clamp(42px,12vw,58px);margin:17px 0}.hero-scroll-hint{right:15px;left:15px;bottom:17px;justify-content:flex-end;gap:9px;font-size:9px}.hero-progress{width:48px}.wrap{padding-left:18px;padding-right:18px}.intro{display:block;padding-top:48px}.intro p{margin-top:15px}.search-area{padding-top:22px;padding-bottom:37px}.search-box{padding:20px 17px}.search-title{font-size:23px}.search-controls{display:grid}.keyword-box{width:100%}.image-search{align-items:flex-start;flex-wrap:wrap;gap:10px}.upload-label{padding:10px}.category-strip{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 15px;margin-right:0;padding-bottom:22px}.category-tab{padding:9px 14px}.products-section{padding-bottom:55px}.product-head h2{font-size:29px}.product-head p{font-size:10px}.product-grid{gap:25px 10px}.product-image{aspect-ratio:.74}.product-image .quick-add{width:36px;height:36px;right:8px;bottom:8px}.product-info h3{font-size:12px}.price{font-size:11px}.story{grid-template-columns:1fr}.story-copy{padding:42px 23px}.story-image{min-height:300px;order:2}.foot-top{display:block}.foot-links{margin-top:29px;gap:38px}.foot-bottom{gap:14px;flex-wrap:wrap}.product-modal{grid-template-columns:1fr;max-height:88vh}.gallery-column{padding:10px;gap:8px}.gallery-main{min-height:300px;height:38vh}.gallery-thumbs{gap:5px}.gallery-label{font-size:8px}.modal-copy{padding:22px}.garment-details{margin-top:12px}.garment-details p{padding:6px 0}.modal-copy h2{font-size:28px}.panel-head{height:65px}.panel-body{padding:18px}.panel-foot{padding:16px 18px 20px}#checkoutView{padding:38px 18px 65px}.checkout-header{align-items:start;gap:15px}.checkout-header h1{font-size:36px}.checkout-layout{grid-template-columns:1fr;gap:38px}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.summary-box{padding:17px}}
.sample-location{margin-top:9px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.location-label{font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.location-options{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:wrap}.location-chip{display:inline-flex;align-items:center;gap:4px;padding:5px 8px;border:1px solid var(--line);font-size:10px;line-height:1;color:var(--muted);white-space:nowrap}.location-chip.available{background:var(--ink);border-color:var(--ink);color:#fff;font-weight:600}.location-chip.available:before{content:"✓"}.location-chip.unavailable{background:transparent;color:var(--muted)}.garment-details p span.location-options{color:var(--ink);text-align:right}

.hero-arrow{position:absolute;z-index:3;top:50%;transform:translateY(-50%);width:44px;height:44px;border:1px solid rgba(255,255,255,.65);border-radius:50%;background:rgba(20,20,20,.3);color:white;font-size:30px;line-height:1;display:grid;place-items:center}
.hero-arrow:hover{background:var(--wine)}.hero-arrow--prev{left:22px}.hero-arrow--next{right:22px}
.hero-slider-controls{position:absolute;z-index:3;bottom:24px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:18px;background:rgba(20,20,20,.5);color:white;padding:10px 16px;border-radius:24px;font-size:11px;white-space:nowrap}
.hero-dots{display:flex;align-items:center;gap:4px}.hero-dot{display:grid;place-items:center;width:26px;height:26px;border:0;background:none;padding:0}.hero-dot:before{content:'';width:7px;height:7px;border-radius:50%;border:1px solid white;transition:background .2s}.hero-dot.active:before{background:white}
.hero-play{border:0;border-left:1px solid rgba(255,255,255,.4);background:none;color:white;padding:5px 0 5px 14px;font-size:11px}
.hero-arrow:focus-visible,.hero-dot:focus-visible,.hero-play:focus-visible{outline:2px solid white;outline-offset:3px}
@media(max-width:600px){.hero-arrow{width:34px;height:34px;font-size:24px}.hero-arrow--prev{left:8px}.hero-arrow--next{right:8px}.hero-slider-controls{bottom:18px;gap:10px;padding:7px 12px}.hero-slide--home .hero-copy{left:24px;max-width:82%}}
@media(prefers-reduced-motion:reduce){.hero-track{scroll-behavior:auto}}

.country-warning{font-size:12px;color:var(--wine);line-height:1.5;margin:4px 0 0}.country-warning:empty{display:none}.solid-button:disabled{opacity:.5;cursor:not-allowed}
