:root{
  --maroon:#5b100f;
  --maroon-dark:#3d0a09;
  --skin:#fcedcf;
  --cream:#fdf6e7;
  --olive:#5c5e2f;
  --ink:#1e1e1e;
  --border:#ecdcb8;
  --border2:#e3cfa8;
  --border3:#f0e0bd;
  --muted:#8a7a5c;
  --muted2:#6b6250;
  --muted3:#5c5445;
  --text2:#4a4335;
  --ph-text:#b09b73;
}

*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;
  background:var(--skin);
  color:var(--ink);
  font-family:'yoon-a-yoonche','Jost',sans-serif;
  -webkit-font-smoothing:antialiased;
}
a{color:inherit;text-decoration:none;}
h1,h2,h3{margin:0;font-family:'Cormorant Garamond',serif;font-weight:300;}
img{max-width:100%;display:block;}
button{font-family:inherit;}
::-webkit-scrollbar{width:10px;height:10px;}
::-webkit-scrollbar-thumb{background:#d3c3a0;border-radius:8px;}

.eyebrow{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:var(--maroon);}
.slogan{margin:0;font-size:19px;letter-spacing:.03em;color:var(--maroon);}
.slogan b{font-weight:500;}
.slogan i{font-style:normal;font-weight:300;}

.ph{
  position:relative;display:flex;align-items:flex-end;justify-content:center;
  background:repeating-linear-gradient(135deg,#f0dfba 0 14px,#f9ebcd 14px 28px);
  padding:14px;
}
.ph span{font-family:'JetBrains Mono',monospace;font-size:10px;letter-spacing:.1em;color:var(--ph-text);text-transform:uppercase;}
.ph-plain{background:repeating-linear-gradient(135deg,#f0dfba 0 14px,#ece2d1 14px 28px);}

/* announcement bar */
.announce{
  background:var(--maroon);color:#f0dcdd;text-align:center;
  font-size:11px;letter-spacing:.2em;text-transform:uppercase;padding:10px;
}

/* nav */
.site-nav{
  display:flex;align-items:center;justify-content:space-between;
  padding:24px 44px;max-width:1440px;margin:0 auto;
}
.site-nav .logo{display:flex;align-items:center;gap:11px;color:var(--ink);}
.site-nav .logo span{font-size:22px;letter-spacing:.42em;padding-left:.42em;}
.site-nav .links{display:flex;gap:30px;font-size:12px;letter-spacing:.18em;text-transform:uppercase;}
.site-nav .links.right{gap:22px;letter-spacing:.16em;}
.site-nav a:hover{color:var(--maroon);}

/* hero split */
.hero-split{display:grid;grid-template-columns:.85fr 1.15fr;min-height:600px;max-width:1440px;margin:0 auto;}
.hero-left{background:#f5e3bd;display:flex;flex-direction:column;justify-content:center;padding:70px 60px;}
.hero-left h2{font-size:62px;line-height:1.05;margin:22px 0 16px;}
.hero-left .desc{font-size:14px;line-height:1.8;color:var(--muted3);margin:0 0 32px;max-width:340px;}
.hero-actions{display:flex;gap:16px;}
.btn-solid{background:var(--maroon);color:#fff;font-size:12px;letter-spacing:.16em;text-transform:uppercase;padding:16px 30px;}
.btn-solid:hover{background:var(--maroon-dark);}
.btn-outline{border:1px solid var(--ink);color:var(--ink);font-size:12px;letter-spacing:.16em;text-transform:uppercase;padding:16px 30px;}
.btn-outline:hover{border-color:var(--maroon);color:var(--maroon);}
.hero-right{background:repeating-linear-gradient(135deg,#eedcb6 0 20px,#f7e9c9 20px 40px);display:flex;align-items:flex-end;padding:22px;min-height:300px;}

section.block{max-width:1440px;margin:0 auto;padding:54px 44px;}
.block-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:32px;}
.block-head h3{font-size:38px;margin:8px 0 0;}
.block-head a{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--maroon);}
.block-head a:hover{color:var(--maroon-dark);}

.cat-strip{display:flex;gap:16px;flex-wrap:wrap;}
.cat-strip a{flex:1;min-width:130px;display:flex;flex-direction:column;gap:12px;}
.cat-strip .ph{aspect-ratio:3/4;}
.cat-strip .name{font-size:12px;letter-spacing:.14em;text-transform:uppercase;text-align:center;}
.cat-strip a:hover{opacity:.9;}

.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;}
.grid-6{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;}
.product-card{display:flex;flex-direction:column;gap:12px;}
.product-card .ph{aspect-ratio:3/4;}
.product-card .row{display:flex;justify-content:space-between;align-items:baseline;gap:8px;}
.product-card .name{font-family:'Cormorant Garamond',serif;font-size:18px;}
.product-card .price{font-size:13px;color:var(--maroon);white-space:nowrap;}
.product-card .cat{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);}
.product-card:hover{opacity:.92;}

.lookbook{position:relative;max-width:1440px;margin:30px auto;padding:0 44px;}
.lookbook-inner{
  height:420px;background:repeating-linear-gradient(135deg,#e8d4a9 0 22px,#f1dfb8 22px 44px);
  display:flex;align-items:center;
}
.lookbook-card{background:var(--skin);margin-left:26px;padding:52px 56px;max-width:440px;}
.lookbook-card h3{font-size:42px;line-height:1.1;margin:16px 0 18px;}
.lookbook-card p{font-size:14px;line-height:1.8;color:var(--muted3);margin:0 0 26px;}

.split-dark{display:grid;grid-template-columns:1fr 1fr;max-width:1440px;margin:0 auto;}
.split-dark .copy{background:var(--ink);color:#f6e4c1;padding:70px 60px;display:flex;flex-direction:column;justify-content:center;}
.split-dark .copy h3{font-size:36px;line-height:1.2;margin:22px 0 16px;color:#f6e4c1;}
.split-dark .copy p{font-size:14px;line-height:1.8;color:#b8ad96;margin:0 0 24px;max-width:380px;}
.split-dark .copy a{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:#f6e4c1;border-bottom:1px solid #5a534a;padding-bottom:5px;align-self:flex-start;}
.split-dark .img{background:repeating-linear-gradient(135deg,#eedcb6 0 20px,#f7e9c9 20px 40px);min-height:420px;display:flex;align-items:flex-end;padding:20px;}

.insta-head{text-align:center;margin-bottom:22px;font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:var(--muted);}
.grid-6 .ph{aspect-ratio:1/1;padding:0;}
.grid-6 .ph:hover{opacity:.9;}

.newsletter-warm{
  background:#f5e3bd;padding:70px 44px;display:flex;align-items:center;justify-content:space-between;gap:40px;flex-wrap:wrap;
  max-width:1440px;margin:0 auto;
}
.newsletter-warm h3{font-size:34px;}
.newsletter-warm p{font-size:14px;color:var(--muted3);margin:8px 0 0;}
.newsletter-warm form{display:flex;min-width:320px;flex:1;max-width:420px;border-bottom:1px solid #b09b73;}
.newsletter-warm input{flex:1;background:transparent;border:none;outline:none;color:var(--ink);font-family:inherit;font-size:14px;padding:12px 4px;}
.newsletter-warm button{background:var(--maroon);color:#fff;border:none;font-family:inherit;font-size:12px;letter-spacing:.16em;text-transform:uppercase;cursor:pointer;padding:12px 26px;}
.newsletter-warm button:hover{background:var(--maroon-dark);}

.site-footer{
  background:var(--skin);color:var(--muted3);padding:44px;display:flex;justify-content:space-between;align-items:center;
  border-top:1px solid var(--border);font-size:12px;letter-spacing:.08em;max-width:1440px;margin:0 auto;flex-wrap:wrap;gap:16px;
}
.footer-left{display:flex;align-items:center;gap:16px;color:var(--ink);flex-wrap:wrap;}
.footer-brand{display:flex;align-items:center;gap:10px;}
.footer-brand span{font-size:17px;letter-spacing:.42em;padding-left:.42em;}
.footer-slogan{font-size:15px;letter-spacing:.03em;color:var(--maroon);}

.simple-footer-dark{background:var(--ink);color:#8a8070;padding:36px 44px;display:flex;justify-content:space-between;font-size:11px;letter-spacing:.1em;max-width:1440px;margin:0 auto;flex-wrap:wrap;gap:8px;}

/* ---- catalog 2a ---- */
.collection-banner{
  position:relative;height:300px;max-width:1352px;margin:0 auto;
  background:repeating-linear-gradient(135deg,#eeddb9 0 20px,#f7e8c8 20px 40px);
  display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;
}
.collection-banner h1{font-size:58px;margin:14px 0 10px;}
.collection-banner .tag{position:absolute;bottom:16px;right:20px;font-size:10px;letter-spacing:.1em;color:var(--ph-text);text-transform:uppercase;}

.tabs-bar{
  display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:20px;
  max-width:1352px;margin:0 auto;padding:34px 44px 0;
}
.tabs{display:flex;gap:34px;}
.tab{background:transparent;border:none;padding:0 0 10px;cursor:pointer;font-family:inherit;font-size:13px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);border-bottom:2px solid transparent;}
.tab.active{color:var(--maroon);border-bottom-color:var(--maroon);}
.dropdowns{display:flex;flex-wrap:wrap;gap:12px;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted3);}
.dropdowns span{border:1px solid var(--border2);padding:9px 16px;background:#fdf6e7;}

.count-row{max-width:1352px;margin:0 auto;padding:12px 44px 0;border-bottom:1px solid var(--border3);}
.count-row span{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);}

.catalog2-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px 22px;max-width:1352px;margin:0 auto;padding:38px 44px 30px;}
.catalog2-grid .product-card .price{color:var(--maroon);}

.load-more-wrap{display:flex;justify-content:center;padding:10px 44px 70px;}
.load-more{border:1px solid var(--ink);padding:16px 42px;font-size:12px;letter-spacing:.2em;text-transform:uppercase;cursor:pointer;background:transparent;font-family:inherit;}
.load-more:hover{background:var(--ink);color:#fff;}

/* ---- product 2b ---- */
.product2-wrap{display:grid;grid-template-columns:1fr 440px;align-items:start;max-width:1440px;margin:0 auto;}
.mosaic{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:8px 8px 8px 44px;}
.mosaic .wide{grid-column:span 2;aspect-ratio:16/11;}
.mosaic .fabric{grid-column:span 2;aspect-ratio:16/9;}
.mosaic .tall{aspect-ratio:3/4;}

.purchase-rail{position:sticky;top:0;padding:34px 44px 44px;background:var(--cream);}
.purchase-rail h1{font-size:42px;line-height:1.1;margin:14px 0 6px;}
.purchase-rail .price{font-family:'Cormorant Garamond',serif;font-size:24px;color:var(--maroon);}
.purchase-rail .desc{font-size:14px;line-height:1.85;color:var(--muted3);margin:22px 0 0;}
.opt-row{display:flex;justify-content:space-between;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-bottom:12px;}
.opt-row a{color:var(--maroon);}
.colour-row{display:flex;gap:12px;}
.swatch{width:28px;height:28px;border-radius:50%;}

.size2-row{display:flex;gap:9px;}
.size2-box{flex:1;height:46px;display:flex;align-items:center;justify-content:center;font-family:inherit;font-size:13px;letter-spacing:.1em;cursor:pointer;border:1px solid var(--border2);background:transparent;color:var(--ink);}
.size2-box.active{border-color:var(--ink);background:var(--ink);color:#fff;}

.qty-buy{display:flex;align-items:center;gap:14px;margin-top:24px;}
.qty-stepper{display:flex;align-items:center;border:1px solid var(--border2);}
.qty-stepper button{width:44px;height:58px;border:none;background:transparent;cursor:pointer;font-size:18px;color:var(--ink);}
.qty-val{min-width:32px;text-align:center;font-size:15px;}
.add-btn{flex:1;width:100%;height:58px;border:none;cursor:pointer;font-family:inherit;font-size:13px;letter-spacing:.18em;text-transform:uppercase;color:#fff;background:var(--maroon);transition:background .25s;}
.add-btn.added{background:var(--olive);}

.perks-row{display:flex;gap:26px;margin-top:18px;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);}

.spec-table{margin-top:32px;border-top:1px solid var(--border3);padding-top:22px;}
.spec-table .label{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-bottom:16px;}
.spec-grid{display:grid;grid-template-columns:auto 1fr;gap:10px 22px;font-size:13px;color:var(--muted3);}
.spec-grid .k{color:var(--muted);}

@media (max-width:1100px){
  .hero-split,.split-dark,.product2-wrap{grid-template-columns:1fr;}
  .purchase-rail{position:static;}
  .grid-4,.catalog2-grid{grid-template-columns:repeat(2,1fr);}
  .grid-6{grid-template-columns:repeat(3,1fr);}
  .mosaic{padding:8px 44px;}
}
@media (max-width:640px){
  .site-nav{flex-direction:column;gap:14px;padding:20px;}
  .site-nav .links{display:none;}
  .hero-left{padding:50px 28px;}
  .hero-left h2{font-size:42px;}
  section.block{padding:40px 24px;}
  .cat-strip{flex-direction:column;}
  .grid-4,.grid-6,.catalog2-grid{grid-template-columns:1fr 1fr;}
  .lookbook{padding:0 24px;}
  .lookbook-card{margin-left:0;padding:32px;max-width:100%;}
  .newsletter-warm,.site-footer,.simple-footer-dark{padding:32px 24px;}
  .collection-banner h1{font-size:38px;}
  .tabs-bar,.count-row,.catalog2-grid,.load-more-wrap{padding-left:24px;padding-right:24px;}
  .tabs{gap:18px;overflow-x:auto;}
  .mosaic{padding:8px 24px;}
  .purchase-rail{padding:24px;}
}
