
:root{
  --wine:#681923; --wine-2:#7a2430; --ink:#111; --muted:#6f6b66;
  --ivory:#f5f0e8; --paper:#fbfaf7; --white:#fff; --line:#ddd6cc; --green:#11623d;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit}
img{display:block;max-width:100%}
.serif{font-family:Georgia,"Times New Roman",serif}
.eyebrow{font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--wine);margin-bottom:18px}
.header{position:fixed;z-index:100;top:0;left:0;right:0;height:70px;padding:0 3vw;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;background:rgba(251,250,247,.94);backdrop-filter:blur(14px);border-bottom:1px solid rgba(0,0,0,.06)}
.brand{font-family:Georgia,"Times New Roman",serif;font-size:25px;letter-spacing:.055em}
.nav{display:flex;gap:24px;align-items:center;font-size:10px;letter-spacing:.13em;text-transform:uppercase}
.nav a:hover{color:var(--wine)}
.actions{justify-self:end;display:flex;align-items:center;gap:12px}
.clean-btn{border:0;background:transparent;cursor:pointer;padding:10px;font-size:12px;letter-spacing:.08em;text-transform:uppercase}
.wa-link{border-bottom:1px solid var(--wine);color:var(--wine);padding:10px 0 5px;font-size:10px;letter-spacing:.13em;text-transform:uppercase}
.mobile-toggle{display:none}
.drawer{display:none}
.hero{min-height:100vh;padding-top:70px;display:grid;grid-template-columns:44% 56%;background:var(--ivory)}
.hero-copy{display:flex;flex-direction:column;justify-content:center;padding:7vw}
.hero h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(58px,7.2vw,116px);font-weight:400;line-height:.86;margin:0 0 28px}
.hero .lead{font-family:Georgia,"Times New Roman",serif;font-style:italic;font-size:clamp(21px,2vw,32px);margin-bottom:18px}
.hero p{font-size:13px;line-height:1.7;max-width:470px;color:#403d39}
.hero-media{overflow:hidden;min-height:calc(100vh - 70px)}
.hero-media img{width:100%;height:100%;object-fit:cover}
.text-link{display:inline-block;width:max-content;margin-top:26px;color:var(--wine);font-size:10px;letter-spacing:.15em;text-transform:uppercase;border-bottom:1px solid var(--wine);padding-bottom:7px}
.category-strip{display:grid;grid-template-columns:repeat(5,1fr);background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.category-strip a{padding:24px 8px;text-align:center;text-transform:uppercase;font-size:10px;letter-spacing:.14em;border-right:1px solid var(--line)}
.category-strip a:last-child{border-right:0}
.section{padding:100px 6vw}
.section.alt{background:#fff}
.section-head{display:flex;justify-content:space-between;gap:50px;align-items:end;margin-bottom:38px}
.section-head h2{font-family:Georgia,"Times New Roman",serif;font-size:clamp(38px,4.2vw,68px);font-weight:400;line-height:.98;margin:0}
.section-head p{max-width:540px;font-size:13px;line-height:1.7;color:var(--muted);margin:0}
.editorial-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:16px}
.editorial-card{position:relative;overflow:hidden;background:#eee}
.editorial-card.large{height:78vh}
.editorial-card.small{height:calc(39vh - 8px)}
.editorial-card img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}
.editorial-card:hover img{transform:scale(1.015)}
.editorial-card .label{position:absolute;left:22px;bottom:20px;color:white;font-family:Georgia,serif;font-size:30px;text-shadow:0 2px 18px rgba(0,0,0,.45)}
.editorial-stack{display:grid;grid-template-rows:1fr 1fr;gap:16px}
.filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:32px}
.filter{border:1px solid var(--line);background:transparent;border-radius:999px;padding:10px 15px;cursor:pointer;font-size:9px;letter-spacing:.12em;text-transform:uppercase}
.filter.active{background:#111;color:#fff;border-color:#111}
.product-grid,.look-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:42px 16px}
.product-card,.look-card{cursor:pointer}
.product-image,.look-image{aspect-ratio:3/4;background:#f0ece5;position:relative;overflow:hidden}
.product-image img,.look-image img{width:100%;height:100%;object-fit:cover;transition:.35s}
.product-image .second{position:absolute;inset:0;opacity:0}
.product-card:hover .product-image .first{opacity:0}
.product-card:hover .product-image .second{opacity:1}
.badge{position:absolute;top:10px;left:10px;z-index:3;padding:7px 9px;background:var(--wine);color:#fff;font-size:8px;letter-spacing:.12em;text-transform:uppercase}
.favorite{position:absolute;top:10px;right:10px;z-index:3;width:32px;height:32px;border-radius:50%;border:0;background:rgba(255,255,255,.88);cursor:pointer}
.product-meta{padding-top:12px}
.product-name,.look-title{font-family:Georgia,serif;font-size:17px;line-height:1.2}
.product-row{display:flex;justify-content:space-between;gap:10px;margin-top:7px;font-size:10px;color:var(--muted)}
.price{margin-top:8px;font-size:13px}
.look-title{margin-top:12px}.look-cat{font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-top:5px}
.status{display:inline-block;margin-top:9px;padding:6px 8px;font-size:8px;letter-spacing:.09em;text-transform:uppercase;background:var(--green);color:#fff;border-radius:999px}
.status.reference{background:#b9aa94;color:#231f1b}
.collection-hero{display:grid;grid-template-columns:1fr 1fr;min-height:75vh;background:var(--ivory)}
.collection-hero.reverse .collection-photo{order:2}
.collection-copy{padding:8vw;display:flex;justify-content:center;flex-direction:column}
.collection-copy h3{font-family:Georgia,serif;font-weight:400;font-size:clamp(52px,6vw,96px);line-height:.9;margin:0 0 22px}
.collection-copy p{max-width:500px;font-size:13px;color:var(--muted);line-height:1.7}
.collection-photo{overflow:hidden}.collection-photo img{width:100%;height:100%;object-fit:cover}
.b2b-teaser{background:#151515;color:#f5f0e8;display:grid;grid-template-columns:1fr 1fr;min-height:60vh}
.b2b-teaser img{width:100%;height:100%;object-fit:cover}
.b2b-teaser .copy{padding:7vw;display:flex;justify-content:center;flex-direction:column}
.b2b-teaser h2{font-family:Georgia,serif;font-size:clamp(42px,5vw,78px);font-weight:400;line-height:.95;margin:0 0 20px}
.b2b-teaser p{color:#d7d0c7;font-size:13px;line-height:1.7}
.page-hero{padding:150px 6vw 80px;background:var(--ivory)}
.page-hero h1{font-family:Georgia,serif;font-weight:400;font-size:clamp(54px,7vw,104px);line-height:.9;margin:0 0 22px}
.page-hero p{max-width:680px;color:var(--muted);font-size:13px;line-height:1.7}
.b2b-hero{min-height:78vh;display:grid;grid-template-columns:52% 48%;background:#151515;color:#f5f0e8;padding-top:70px}
.b2b-photo{overflow:hidden}.b2b-photo img{width:100%;height:100%;object-fit:cover}
.b2b-copy{padding:8vw 7vw;display:flex;flex-direction:column;justify-content:center}
.b2b-copy .eyebrow{color:#c6969d}.b2b-copy h1{font-family:Georgia,serif;font-size:clamp(48px,5.5vw,88px);font-weight:400;line-height:.95;margin:0 0 22px}
.b2b-copy p{color:#d8d2cb;font-size:13px;line-height:1.7}
.b2b-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#393939}
.b2b-card{background:#1b1b1b;color:#eee;padding:42px}.b2b-card .num{font-family:Georgia,serif;font-size:35px;color:#c6969d}
.b2b-card h4{font-family:Georgia,serif;font-weight:400;font-size:25px;margin:14px 0 10px}.b2b-card p{font-size:12px;color:#cfc9c1;line-height:1.6}
.process{padding:90px 6vw;background:var(--ivory)}
.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);margin-top:35px}
.process-step{background:var(--ivory);padding:34px}.process-step b{font-family:Georgia,serif;font-size:28px;font-weight:400;color:var(--wine)}
.process-step h4{font-size:12px;letter-spacing:.08em;text-transform:uppercase}.process-step p{font-size:12px;color:var(--muted);line-height:1.6}
.b2b-terms{display:grid;grid-template-columns:1fr 1fr;gap:60px;padding:95px 6vw;background:#fff}
.term-list{border-top:1px solid var(--line)}.term{display:grid;grid-template-columns:180px 1fr;padding:18px 0;border-bottom:1px solid var(--line);font-size:12px;line-height:1.5}
.term span:first-child{font-size:9px;letter-spacing:.13em;text-transform:uppercase;color:var(--wine)}
.brands{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.brand-pill{border:1px solid #bdb4a8;padding:11px 14px;font-size:10px;letter-spacing:.08em;text-transform:uppercase}
.contact-panel{background:var(--wine);color:#fff;padding:80px 6vw;display:grid;grid-template-columns:1.3fr 1fr;gap:70px}
.contact-panel h2{font-family:Georgia,serif;font-size:clamp(48px,5vw,80px);font-weight:400;line-height:.95;margin:0}
.contact-info{align-self:center;font-size:13px;line-height:2}.contact-info a{border-bottom:1px solid rgba(255,255,255,.5);padding-bottom:3px}
.footer{background:#111;color:#f1eee8;padding:60px 6vw;display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px}
.footer .brand{font-size:31px}.footer h5{text-transform:uppercase;letter-spacing:.14em;font-size:9px;color:#aaa}.footer p,.footer a{font-size:12px;line-height:1.9;color:#e4dfd8}
.product-page{padding-top:70px;display:grid;grid-template-columns:58% 42%;min-height:100vh}
.product-gallery{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:#ddd}
.product-gallery img{width:100%;height:100%;min-height:760px;object-fit:cover;background:#eee}
.product-info{padding:8vw 6vw;position:sticky;top:70px;height:max-content}
.product-info h1{font-family:Georgia,serif;font-size:clamp(42px,4vw,64px);font-weight:400;line-height:1.02;margin:28px 0 20px}
.product-info .p-price{font-size:18px;margin-bottom:28px}
.product-info p{font-size:13px;line-height:1.8;color:#555}
.details{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:18px 0;margin:22px 0;font-size:12px;line-height:1.9}
.cta{display:block;width:100%;border:0;background:var(--wine);color:#fff;padding:17px;cursor:pointer;text-transform:uppercase;letter-spacing:.13em;font-size:10px;text-align:center}
.cta.secondary{background:#fff;color:#111;border:1px solid #111;margin-top:9px}
.toast{position:fixed;z-index:300;left:50%;bottom:22px;transform:translateX(-50%);background:#111;color:#fff;padding:11px 16px;font-size:11px;opacity:0;transition:.2s;pointer-events:none}.toast.show{opacity:1}
.notfound{min-height:100vh;display:flex;align-items:center;justify-content:center;text-align:center;padding:40px;background:var(--ivory)}
.notfound h1{font-family:Georgia,serif;font-weight:400;font-size:90px;margin:0}.notfound p{color:var(--muted)}
@media(max-width:1050px){
 .header{grid-template-columns:1fr auto;height:64px;padding:0 18px}.nav{display:none}.actions .wa-link{display:none}.mobile-toggle{display:block}
 .drawer{position:fixed;z-index:150;top:64px;right:0;width:min(360px,90vw);height:calc(100vh - 64px);background:#fbfaf7;padding:30px;display:block;transform:translateX(105%);transition:.3s;border-left:1px solid var(--line)}
 .drawer.open{transform:translateX(0)}.drawer a{display:block;padding:15px 0;border-bottom:1px solid var(--line);font-family:Georgia,serif;font-size:24px}
 .hero{grid-template-columns:1fr;padding-top:64px}.hero-copy{padding:105px 8vw 65px}.hero-media{min-height:65vh}
 .category-strip{grid-template-columns:1fr 1fr}.category-strip a:nth-child(5){grid-column:1/-1}
 .product-grid,.look-grid{grid-template-columns:repeat(2,1fr)}
 .editorial-grid{grid-template-columns:1fr}.editorial-card.large{height:72vh}.editorial-stack{grid-template-columns:1fr 1fr;grid-template-rows:auto}.editorial-card.small{height:45vh}
 .collection-hero,.collection-hero.reverse{grid-template-columns:1fr}.collection-hero.reverse .collection-photo{order:0}.collection-photo{height:68vh}
 .b2b-teaser,.b2b-hero{grid-template-columns:1fr}.b2b-teaser>div:first-child,.b2b-photo{height:60vh}.b2b-cards{grid-template-columns:1fr}
 .process-grid{grid-template-columns:1fr 1fr}.b2b-terms{grid-template-columns:1fr}.contact-panel{grid-template-columns:1fr}
 .product-page{grid-template-columns:1fr}.product-info{position:static;padding:60px 7vw}.product-gallery img{min-height:auto;aspect-ratio:3/4}
}
@media(max-width:620px){
 .brand{font-size:20px}.hero h1{font-size:58px}.hero .lead{font-size:22px}
 .section{padding:72px 14px}.section-head{display:block}.section-head p{margin-top:18px}
 .category-strip a{padding:18px 6px;font-size:9px}
 .product-grid,.look-grid{gap:30px 8px}.product-name,.look-title{font-size:14px}
 .editorial-stack{grid-template-columns:1fr}.editorial-card.small{height:55vh}.collection-copy{padding:70px 22px}
 .process{padding:70px 18px}.process-grid{grid-template-columns:1fr}.b2b-card{padding:32px 22px}.b2b-terms{padding:70px 20px}.term{grid-template-columns:1fr;gap:8px}
 .contact-panel{padding:70px 20px}.footer{grid-template-columns:1fr;padding:55px 20px}
 .product-gallery{grid-template-columns:1fr}
}
