:root{--zar:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='260'%20height='260'%3E%3Ccircle%20cx='84.2'%20cy='39.2'%20r='1.13'%20fill='%23A2865A'%20opacity='0.18'/%3E%3Ccircle%20cx='95.1'%20cy='15.1'%20r='0.98'%20fill='%23A2865A'%20opacity='0.17'/%3E%3Cpolygon%20points='18.4,24.8%2016.6,23.1%2019.5,22.8'%20fill='%23A2865A'%20opacity='0.37'/%3E%3Ccircle%20cx='163.1'%20cy='246.4'%20r='1.06'%20fill='%23A2865A'%20opacity='0.26'/%3E%3Cpolygon%20points='11.6,224.2%2011.2,222.4%2013.5,223.0'%20fill='%23A2865A'%20opacity='0.20'/%3E%3Ccircle%20cx='212.2'%20cy='47.0'%20r='1.06'%20fill='%23A2865A'%20opacity='0.33'/%3E%3Ccircle%20cx='142.4'%20cy='16.3'%20r='0.51'%20fill='%23A2865A'%20opacity='0.21'/%3E%3Cpolygon%20points='111.7,80.2%20112.6,82.8%20109.2,82.0'%20fill='%23A2865A'%20opacity='0.28'/%3E%3Ccircle%20cx='181.7'%20cy='63.5'%20r='1.05'%20fill='%23A2865A'%20opacity='0.30'/%3E%3Ccircle%20cx='189.7'%20cy='74.9'%20r='1.48'%20fill='%23A2865A'%20opacity='0.19'/%3E%3Ccircle%20cx='196.9'%20cy='39.5'%20r='0.96'%20fill='%23A2865A'%20opacity='0.17'/%3E%3Ccircle%20cx='198.8'%20cy='149.0'%20r='1.37'%20fill='%23A2865A'%20opacity='0.24'/%3E%3Ccircle%20cx='154.5'%20cy='150.8'%20r='0.93'%20fill='%23A2865A'%20opacity='0.38'/%3E%3Ccircle%20cx='123.3'%20cy='172.7'%20r='0.51'%20fill='%23A2865A'%20opacity='0.34'/%3E%3Ccircle%20cx='258.2'%20cy='213.7'%20r='0.75'%20fill='%23A2865A'%20opacity='0.26'/%3E%3Cpolygon%20points='6.0,119.2%206.8,120.6%204.8,120.4'%20fill='%23A2865A'%20opacity='0.19'/%3E%3Cpolygon%20points='32.1,64.8%2034.0,63.2%2034.8,65.2'%20fill='%23A2865A'%20opacity='0.39'/%3E%3Cpolygon%20points='140.7,230.6%20142.8,227.8%20145.0,230.6'%20fill='%23A2865A'%20opacity='0.38'/%3E%3Cpolygon%20points='93.6,231.9%2090.7,229.1%2095.5,228.7'%20fill='%23A2865A'%20opacity='0.20'/%3E%3Cpolygon%20points='58.9,126.8%2060.7,124.6%2062.4,126.9'%20fill='%23A2865A'%20opacity='0.23'/%3E%3Ccircle%20cx='96.0'%20cy='147.2'%20r='1.45'%20fill='%23A2865A'%20opacity='0.34'/%3E%3Ccircle%20cx='160.6'%20cy='175.8'%20r='0.51'%20fill='%23A2865A'%20opacity='0.39'/%3E%3Cpolygon%20points='226.3,206.5%20229.0,207.2%20226.8,208.6'%20fill='%23A2865A'%20opacity='0.26'/%3E%3Ccircle%20cx='16.2'%20cy='17.5'%20r='0.67'%20fill='%23A2865A'%20opacity='0.20'/%3E%3Ccircle%20cx='13.7'%20cy='0.1'%20r='0.61'%20fill='%23A2865A'%20opacity='0.19'/%3E%3Cpolygon%20points='5.4,228.6%205.8,225.9%208.7,227.5'%20fill='%23A2865A'%20opacity='0.20'/%3E%3Ccircle%20cx='94.7'%20cy='31.9'%20r='1.34'%20fill='%23A2865A'%20opacity='0.42'/%3E%3Cpolygon%20points='126.3,21.6%20126.3,23.0%20124.7,22.3'%20fill='%23A2865A'%20opacity='0.25'/%3E%3Cpolygon%20points='39.3,5.5%2043.9,4.6%2042.6,8.0'%20fill='%23A2865A'%20opacity='0.30'/%3E%3Ccircle%20cx='7.0'%20cy='137.3'%20r='1.48'%20fill='%23A2865A'%20opacity='0.38'/%3E%3Ccircle%20cx='67.9'%20cy='95.3'%20r='0.63'%20fill='%23A2865A'%20opacity='0.36'/%3E%3Ccircle%20cx='202.6'%20cy='85.7'%20r='0.68'%20fill='%23A2865A'%20opacity='0.37'/%3E%3Cpolygon%20points='219.2,209.4%20223.2,208.1%20222.7,211.3'%20fill='%23A2865A'%20opacity='0.35'/%3E%3Cpolygon%20points='92.1,6.9%2093.3,7.6%2091.9,8.1'%20fill='%23A2865A'%20opacity='0.23'/%3E%3C/svg%3E");--frame:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='96'%20height='96'%20viewBox='0%200%2096%2096'%3E%3Crect%20x='1.25'%20y='1.25'%20width='93.5'%20height='93.5'%20fill='none'%20stroke='%23A2865A'%20stroke-width='1.5'/%3E%3Crect%20x='5'%20y='5'%20width='86'%20height='86'%20fill='none'%20stroke='%23A2865A'%20stroke-width='.7'/%3E%3Crect%20x='30.5'%20y='30.5'%20width='35'%20height='35'%20fill='none'%20stroke='%23A2865A'%20stroke-width='1.1'/%3E%3Crect%20x='27'%20y='27'%20width='42'%20height='42'%20fill='none'%20stroke='%23A2865A'%20stroke-width='.6'/%3E%3Cpolygon%20points='16.00,7.50%2018.02,11.13%2022.01,9.99%2020.87,13.98%2024.50,16.00%2020.87,18.02%2022.01,22.01%2018.02,20.87%2016.00,24.50%2013.98,20.87%209.99,22.01%2011.13,18.02%207.50,16.00%2011.13,13.98%209.99,9.99%2013.98,11.13'%20fill='%23A2865A'/%3E%3Ccircle%20cx='16'%20cy='16'%20r='2.4'%20fill='%23F3EFE8'/%3E%3Cpolygon%20points='80.00,7.50%2082.02,11.13%2086.01,9.99%2084.87,13.98%2088.50,16.00%2084.87,18.02%2086.01,22.01%2082.02,20.87%2080.00,24.50%2077.98,20.87%2073.99,22.01%2075.13,18.02%2071.50,16.00%2075.13,13.98%2073.99,9.99%2077.98,11.13'%20fill='%23A2865A'/%3E%3Ccircle%20cx='80'%20cy='16'%20r='2.4'%20fill='%23F3EFE8'/%3E%3Cpolygon%20points='16.00,71.50%2018.02,75.13%2022.01,73.99%2020.87,77.98%2024.50,80.00%2020.87,82.02%2022.01,86.01%2018.02,84.87%2016.00,88.50%2013.98,84.87%209.99,86.01%2011.13,82.02%207.50,80.00%2011.13,77.98%209.99,73.99%2013.98,75.13'%20fill='%23A2865A'/%3E%3Ccircle%20cx='16'%20cy='80'%20r='2.4'%20fill='%23F3EFE8'/%3E%3Cpolygon%20points='80.00,71.50%2082.02,75.13%2086.01,73.99%2084.87,77.98%2088.50,80.00%2084.87,82.02%2086.01,86.01%2082.02,84.87%2080.00,88.50%2077.98,84.87%2073.99,86.01%2075.13,82.02%2071.50,80.00%2075.13,77.98%2073.99,73.99%2077.98,75.13'%20fill='%23A2865A'/%3E%3Ccircle%20cx='80'%20cy='80'%20r='2.4'%20fill='%23F3EFE8'/%3E%3Cellipse%20cx='48'%20cy='16'%20rx='2.3'%20ry='6.4'%20fill='%23A2865A'%20transform='rotate(0%2048%2016)'%20opacity='.92'/%3E%3Cellipse%20cx='48'%20cy='16'%20rx='2.3'%20ry='6.4'%20fill='%23A2865A'%20transform='rotate(45%2048%2016)'%20opacity='.92'/%3E%3Cellipse%20cx='48'%20cy='16'%20rx='2.3'%20ry='6.4'%20fill='%23A2865A'%20transform='rotate(90%2048%2016)'%20opacity='.92'/%3E%3Cellipse%20cx='48'%20cy='16'%20rx='2.3'%20ry='6.4'%20fill='%23A2865A'%20transform='rotate(135%2048%2016)'%20opacity='.92'/%3E%3Ccircle%20cx='48'%20cy='16'%20r='2.1'%20fill='%23F3EFE8'/%3E%3Ccircle%20cx='48'%20cy='16'%20r='1'%20fill='%23A2865A'/%3E%3Cellipse%20cx='48'%20cy='80'%20rx='2.3'%20ry='6.4'%20fill='%23A2865A'%20transform='rotate(0%2048%2080)'%20opacity='.92'/%3E%3Cellipse%20cx='48'%20cy='80'%20rx='2.3'%20ry='6.4'%20fill='%23A2865A'%20transform='rotate(45%2048%2080)'%20opacity='.92'/%3E%3Cellipse%20cx='48'%20cy='80'%20rx='2.3'%20ry='6.4'%20fill='%23A2865A'%20transform='rotate(90%2048%2080)'%20opacity='.92'/%3E%3Cellipse%20cx='48'%20cy='80'%20rx='2.3'%20ry='6.4'%20fill='%23A2865A'%20transform='rotate(135%2048%2080)'%20opacity='.92'/%3E%3Ccircle%20cx='48'%20cy='80'%20r='2.1'%20fill='%23F3EFE8'/%3E%3Ccircle%20cx='48'%20cy='80'%20r='1'%20fill='%23A2865A'/%3E%3Cellipse%20cx='16'%20cy='48'%20rx='2.3'%20ry='6.4'%20fill='%23A2865A'%20transform='rotate(0%2016%2048)'%20opacity='.92'/%3E%3Cellipse%20cx='16'%20cy='48'%20rx='2.3'%20ry='6.4'%20fill='%23A2865A'%20transform='rotate(45%2016%2048)'%20opacity='.92'/%3E%3Cellipse%20cx='16'%20cy='48'%20rx='2.3'%20ry='6.4'%20fill='%23A2865A'%20transform='rotate(90%2016%2048)'%20opacity='.92'/%3E%3Cellipse%20cx='16'%20cy='48'%20rx='2.3'%20ry='6.4'%20fill='%23A2865A'%20transform='rotate(135%2016%2048)'%20opacity='.92'/%3E%3Ccircle%20cx='16'%20cy='48'%20r='2.1'%20fill='%23F3EFE8'/%3E%3Ccircle%20cx='16'%20cy='48'%20r='1'%20fill='%23A2865A'/%3E%3Cellipse%20cx='80'%20cy='48'%20rx='2.3'%20ry='6.4'%20fill='%23A2865A'%20transform='rotate(0%2080%2048)'%20opacity='.92'/%3E%3Cellipse%20cx='80'%20cy='48'%20rx='2.3'%20ry='6.4'%20fill='%23A2865A'%20transform='rotate(45%2080%2048)'%20opacity='.92'/%3E%3Cellipse%20cx='80'%20cy='48'%20rx='2.3'%20ry='6.4'%20fill='%23A2865A'%20transform='rotate(90%2080%2048)'%20opacity='.92'/%3E%3Cellipse%20cx='80'%20cy='48'%20rx='2.3'%20ry='6.4'%20fill='%23A2865A'%20transform='rotate(135%2080%2048)'%20opacity='.92'/%3E%3Ccircle%20cx='80'%20cy='48'%20r='2.1'%20fill='%23F3EFE8'/%3E%3Ccircle%20cx='80'%20cy='48'%20r='1'%20fill='%23A2865A'/%3E%3Ccircle%20cx='38'%20cy='16'%20r='1.3'%20fill='%23A2865A'/%3E%3Ccircle%20cx='58'%20cy='16'%20r='1.3'%20fill='%23A2865A'/%3E%3Ccircle%20cx='38'%20cy='80'%20r='1.3'%20fill='%23A2865A'/%3E%3Ccircle%20cx='58'%20cy='80'%20r='1.3'%20fill='%23A2865A'/%3E%3Ccircle%20cx='16'%20cy='38'%20r='1.3'%20fill='%23A2865A'/%3E%3Ccircle%20cx='16'%20cy='58'%20r='1.3'%20fill='%23A2865A'/%3E%3Ccircle%20cx='80'%20cy='38'%20r='1.3'%20fill='%23A2865A'/%3E%3Ccircle%20cx='80'%20cy='58'%20r='1.3'%20fill='%23A2865A'/%3E%3C/svg%3E");--frieze:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='32'%20height='30'%20viewBox='0%200%2032%2030'%3E%3Cpath%20d='M0%201.5H32M0%2028.5H32'%20stroke='%23A2865A'%20stroke-width='1'/%3E%3Cpath%20d='M4%2028.5V15.2A13.4%2013.4%200%200%201%2016%205A13.4%2013.4%200%200%201%2028%2015.2V28.5'%20fill='none'%20stroke='%23A2865A'%20stroke-width='1.1'/%3E%3Ccircle%20cx='16'%20cy='19'%20r='1.8'%20fill='%23A2865A'/%3E%3Ccircle%20cx='0'%20cy='15'%20r='1.1'%20fill='%23A2865A'/%3E%3Ccircle%20cx='32'%20cy='15'%20r='1.1'%20fill='%23A2865A'/%3E%3C/svg%3E");--jali:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='56'%20height='56'%20viewBox='0%200%2056%2056'%3E%3Cg%20fill='none'%20stroke='%23A2865A'%20stroke-width='.9'%20opacity='.42'%3E%3Cpath%20d='M28%2010L33%2023L46%2028L33%2033L28%2046L23%2033L10%2028L23%2023Z'/%3E%3Cpath%20d='M15.3%2015.3L28%2020.5L40.7%2015.3L35.5%2028L40.7%2040.7L28%2035.5L15.3%2040.7L20.5%2028Z'/%3E%3Cpath%20d='M28%200V10M28%2046V56M0%2028H10M46%2028H56M0%200L15.3%2015.3M56%200L40.7%2015.3M0%2056L15.3%2040.7M56%2056L40.7%2040.7'/%3E%3C/g%3E%3C/svg%3E")}
/* =============================================================================
   SARACEN THREADS — store.css. The only stylesheet on the storefront.
   Rebuilt from nothing, 24 September 2026. Replaces _authority, _house, layout,
   saracen, shop, _fonts and the inline critical CSS.

   THE BRIEF: Dior's discipline, Eastern maximalism on the surface.
   From Dior: paper ground, black ink, rectangular black buttons, tracked
   capitals for the small type, very large pictures, a sticky product panel,
   two-line product names, editorial tiles in the grid, service promises above
   the footer. From the Mughal album (muraqqa): gold-sprinkled paper
   (zar-afshan), ruled frames (jadval), the vine-scroll margin (hashiya), the
   jali, the cusped niche, the khatam star. Ornament frames the object; it
   never sits under the text.
   ========================================================================== */
@font-face{font-family:"Libre Caslon Display";src:url(/assets/fonts/libre-caslon-display-latin-400-normal.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Libre Caslon Text";src:url(/assets/fonts/libre-caslon-text-latin-400-normal.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Libre Caslon Text";src:url(/assets/fonts/libre-caslon-text-latin-400-italic.woff2) format("woff2");font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:"Jost";src:url(/assets/fonts/jost-latin-300-normal.woff2) format("woff2");font-weight:300;font-display:swap}
@font-face{font-family:"Jost";src:url(/assets/fonts/jost-latin-400-normal.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Jost";src:url(/assets/fonts/jost-latin-500-normal.woff2) format("woff2");font-weight:500;font-display:swap}

:root{
  --paper:#F3EFE8; --paper-2:#E8E2D7; --leaf:#FBF9F5; --rule:#D6CEC0;
  --ink:#14110E; --ink-2:#4A433B; --ink-3:#7B7266;
  --gold:#A2865A; --gold-2:#CCB690; --gold-3:#6E5935;
  --lapis:#1B2F66; --verm:#8E2B22; --mala:#2C5A4C; --night:#0B0F1F; --night-2:#121831;
  --display:"Libre Caslon Display","Libre Caslon Text",Georgia,serif;
  --serif:"Libre Caslon Text",Georgia,"Times New Roman",serif;
  --sans:"Jost","Futura","Century Gothic","Segoe UI",system-ui,sans-serif;
  --wrap:1400px; --gut:clamp(18px,4vw,48px);
  --arch:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 140' preserveAspectRatio='none'%3E%3Cpath d='M0 140V58A54.16 54.16 0 0 1 50 4A54.16 54.16 0 0 1 100 58V140Z'/%3E%3C/svg%3E");
  --ease:cubic-bezier(.2,.7,.2,1);
  /* the piece's own colours; product pages and tiles set these */
  --g:#1D2B4F; --on:#F4EFE3; --on2:#C9C2B4; --niche:#27365A; --deep:#131E38; --line:#4A5673; --acc:#D4B06A;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:96px}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
body{margin:0;background:var(--paper) var(--zar);color:var(--ink);font:400 16px/1.65 var(--sans);-webkit-font-smoothing:antialiased;overflow-x:hidden}
body.is-locked{overflow:hidden}
img,svg{display:block;max-width:100%}
img{height:auto}
a{color:inherit;text-underline-offset:.2em;text-decoration-thickness:1px}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer}
h1,h2,h3,h4{margin:0;font-weight:400;text-wrap:balance}
p{margin:0 0 1em}p:last-child{margin-bottom:0}
ul,ol{margin:0;padding:0}
:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.skip{position:absolute;left:12px;top:-80px;z-index:300;background:var(--ink);color:var(--paper);padding:12px 18px;text-decoration:none}
.skip:focus{top:12px}
.vh{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.ic{width:20px;height:20px;flex:0 0 auto}
.wrap{width:100%;max-width:var(--wrap);margin-inline:auto;padding-inline:var(--gut)}

/* type: size carries the hierarchy, capitals carry the small print */
.cap{font:500 11.5px/1.3 var(--sans);letter-spacing:.2em;text-transform:uppercase}
.h1{font:400 clamp(2.6rem,1.5rem + 4.4vw,5.6rem)/1 var(--display);letter-spacing:-.01em}
.h2{font:400 clamp(2rem,1.4rem + 2.2vw,3.3rem)/1.06 var(--display)}
.h3{font:400 clamp(1.45rem,1.2rem + .8vw,1.95rem)/1.15 var(--display)}
.lede{font:italic 400 clamp(1.1rem,1rem + .35vw,1.3rem)/1.55 var(--serif);color:var(--ink-2)}
.star{display:inline-block;width:12px;height:12px;background:currentColor;clip-path:polygon(50% 0,61% 23%,85% 15%,77% 39%,100% 50%,77% 61%,85% 85%,61% 77%,50% 100%,39% 77%,15% 85%,23% 61%,0 50%,23% 39%,15% 15%,39% 23%)}
.frieze{height:30px;background:var(--frieze) repeat-x center/auto 30px;opacity:.9}

/* buttons: Dior's black rectangle, with a gold hairline inside */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:54px;padding:0 34px;border:0;border-radius:0;font:500 12.5px/1 var(--sans);letter-spacing:.2em;text-transform:uppercase;text-decoration:none;white-space:nowrap;transition:background-color .25s,color .25s,box-shadow .25s}
.btn--ink{background:var(--ink);color:var(--paper);box-shadow:inset 0 0 0 3px var(--ink),inset 0 0 0 4px rgba(204,182,144,.6)}
.btn--ink:hover{background:#2A2520;box-shadow:inset 0 0 0 3px #2A2520,inset 0 0 0 4px var(--gold-2)}
.btn--paper{background:var(--paper);color:var(--ink);box-shadow:inset 0 0 0 3px var(--paper),inset 0 0 0 4px var(--gold)}
.btn--paper:hover{background:#fff}
.btn--line{background:transparent;box-shadow:inset 0 0 0 1px currentColor}
.btn--line:hover{box-shadow:inset 0 0 0 2px currentColor}
.btn--block{width:100%}
.btn--sm{min-height:44px;padding:0 20px;font-size:11.5px}
.btn.is-off{opacity:.4;pointer-events:none}
.more{display:inline-flex;align-items:center;gap:10px;font:500 12px/1 var(--sans);letter-spacing:.2em;text-transform:uppercase;text-decoration:none;padding-bottom:6px;border-bottom:1px solid currentColor}
.more:hover{border-bottom-width:2px;padding-bottom:5px}
.linkbtn{border:0;background:none;padding:0;text-decoration:underline;text-underline-offset:.2em;font-weight:500}

/* ================================================================ ANNOUNCE */
.ann{background:var(--night);color:var(--gold-2);position:relative;z-index:62}
.ann__row{display:flex;justify-content:center;gap:clamp(20px,5vw,72px);max-width:var(--wrap);margin:0 auto;padding:0 var(--gut);overflow-x:auto;scrollbar-width:none;scroll-snap-type:x mandatory}
.ann__row::-webkit-scrollbar{display:none}
.ann__i{flex:0 0 auto;scroll-snap-align:center}
.ann__i summary{list-style:none;display:flex;align-items:center;gap:9px;min-height:38px;cursor:pointer;white-space:nowrap;font:500 10.5px/1 var(--sans);letter-spacing:.2em;text-transform:uppercase}
.ann__i summary::-webkit-details-marker{display:none}
.ann__i summary .star{width:8px;height:8px}
.ann__i summary .ic{width:12px;height:12px;opacity:.7;transition:transform .2s}
.ann__i[open] summary .ic{transform:rotate(180deg)}
.ann__p{position:absolute;left:0;right:0;top:100%;background:var(--night);border-top:1px solid rgba(204,182,144,.25);padding:18px var(--gut) 22px}
.ann__p p{max-width:640px;margin:0 auto;font:400 14px/1.6 var(--sans);color:#DCD6C8;text-align:center}
.ann__p a{color:var(--gold-2)}
@media (max-width:760px){.ann__row{justify-content:flex-start}.ann__i{min-width:100%;display:flex;justify-content:center}}

/* ================================================================== HEADER */
.head{position:sticky;top:0;z-index:60;background:rgba(243,239,232,.96);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--rule)}
.head::after{content:"";position:absolute;left:0;right:0;bottom:-4px;height:3px;border-bottom:1px solid rgba(162,134,90,.45)}
.head__bar{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;max-width:var(--wrap);margin:0 auto;padding:0 var(--gut);height:84px}
.head__l,.head__r{display:flex;align-items:center;gap:6px}
.head__r{justify-content:flex-end}
.head__l a,.head__r a,.menu-b{display:inline-flex;align-items:center;gap:10px;height:44px;padding:0 10px;border:0;background:none;font:500 11.5px/1 var(--sans);letter-spacing:.2em;text-transform:uppercase;text-decoration:none;color:var(--ink)}
.menu-b{margin-left:-10px}
.head__l a:hover,.head__r a:hover,.menu-b:hover{color:var(--gold-3)}
.bagn{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 5px;background:var(--verm);color:#fff;font:500 11px/1 var(--sans);letter-spacing:0}
.mark{display:flex;flex-direction:column;align-items:center;gap:6px;text-decoration:none;color:var(--ink)}
.mark__w{display:flex;align-items:center;gap:14px;font:400 clamp(1.05rem,.8rem + 1vw,1.7rem)/1 var(--display);letter-spacing:.24em;text-indent:.24em;text-transform:uppercase;white-space:nowrap}
.mark__w .star{width:10px;height:10px;color:var(--gold)}
.mark__s{font:italic 400 12px/1 var(--serif);color:var(--ink-3)}
@media (max-width:1040px){.head__l .hide-s,.head__r .hide-s{display:none}.mark__s{display:none}.head__bar{height:66px}.mark__w .star{display:none}}
@media (max-width:520px){.menu-b .cap-w,.head__r .cap-w{display:none}}

/* the menu: Dior's side panel, dressed as a palace wall */
.drawer{position:fixed;inset:0;z-index:90;visibility:hidden}
.drawer.is-open{visibility:visible}
.drawer__scrim{position:absolute;inset:0;background:rgba(16,24,46,.5);opacity:0;transition:opacity .3s}
.drawer.is-open .drawer__scrim{opacity:1}
.drawer__panel{position:absolute;inset:0 auto 0 0;width:min(480px,92vw);background:var(--night) var(--jali);color:var(--paper);transform:translateX(-102%);transition:transform .38s var(--ease);display:flex;flex-direction:column;overflow-y:auto;padding:14px clamp(20px,4vw,40px) 36px;border-right:1px solid rgba(204,182,144,.35)}
.drawer.is-open .drawer__panel{transform:none}
.drawer__top{display:flex;align-items:center;justify-content:space-between;height:60px}
.drawer__x{width:44px;height:44px;border:0;background:none;display:grid;place-items:center;margin-right:-10px;color:var(--paper)}
.drawer__h{color:var(--gold-2);margin:26px 0 12px}
.drawer__list{list-style:none;display:grid;gap:2px}
.drawer__list a{display:flex;align-items:center;gap:16px;padding:10px 0;text-decoration:none}
.drawer__list a:hover .drawer__n{color:var(--gold-2)}
.drawer__sw{width:30px;height:42px;flex:0 0 auto;background:var(--c);-webkit-mask:var(--arch) 0 0/100% 100%;mask:var(--arch) 0 0/100% 100%;box-shadow:inset 0 0 0 2px var(--r)}
.drawer__n{font:400 1.45rem/1.15 var(--display);transition:color .2s}
.drawer__d{display:block;font:400 13px/1.3 var(--sans);color:#B9B3A6}
.drawer__links{list-style:none;margin-top:26px;border-top:1px solid rgba(204,182,144,.25)}
.drawer__links a{display:flex;justify-content:space-between;align-items:center;padding:16px 0;border-bottom:1px solid rgba(204,182,144,.18);text-decoration:none;font:500 12px/1 var(--sans);letter-spacing:.2em;text-transform:uppercase}
.drawer__links a:hover{color:var(--gold-2)}

/* ============================================================ THE NICHE */
.niche{position:relative;display:block;aspect-ratio:5/7;background:var(--g);-webkit-mask:var(--arch) 0 0/100% 100% no-repeat;mask:var(--arch) 0 0/100% 100% no-repeat}
.niche::before{content:"";position:absolute;inset:0;background:radial-gradient(110% 60% at 50% 14%,rgba(255,255,255,.12),transparent 62%),linear-gradient(to top,rgba(0,0,0,.2),transparent 34%)}
.niche::after{content:"";position:absolute;inset:7px;-webkit-mask:var(--arch) 0 0/100% 100% no-repeat;mask:var(--arch) 0 0/100% 100% no-repeat;box-shadow:inset 0 0 0 1px var(--acc);opacity:.55}
.niche__img{position:absolute;left:21%;width:58%;top:25%;filter:drop-shadow(0 12px 14px rgba(0,0,0,.32));transition:transform .6s var(--ease),filter .6s var(--ease)}
.niche--cloth .niche__img{left:17%;width:66%}
.pole{position:absolute;left:16%;right:16%;top:calc(25% - 2px);height:3px;z-index:1;background:linear-gradient(90deg,#5E4C2E,#D9C9A2 32%,#A2865A 62%,#5E4C2E);transition:transform .6s var(--ease)}
.pole::before,.pole::after{content:"";position:absolute;top:-3.5px;width:10px;height:10px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#EDE2C6,#7C6639)}
.pole::before{left:-6px}.pole::after{right:-6px}
.niche--cloth .pole{left:12%;right:12%}

/* the tile: Dior's product card — picture on a mount, name, material, price */
.tile{display:flex;flex-direction:column;gap:16px;text-decoration:none;color:var(--ink);min-width:0}
.tile__mount{position:relative;display:grid;place-items:center;padding:12% 16% 9%;background:var(--paper-2);box-shadow:inset 0 0 0 1px var(--rule)}
.tile__mount::before{content:"";position:absolute;inset:8px;border:1px solid rgba(162,134,90,.45)}
.tile__mount .niche{width:100%}
.tile:hover .niche__img{transform:translateY(-6px);filter:drop-shadow(0 20px 20px rgba(0,0,0,.36))}
.tile:hover .pole{transform:translateY(-6px)}
.tile__b{display:flex;flex-direction:column;gap:4px;text-align:center}
.tile__k{color:var(--ink-3)}
.tile__n{font:400 clamp(1.2rem,1.05rem + .45vw,1.55rem)/1.2 var(--display)}
.tile__d{font:400 14px/1.4 var(--sans);color:var(--ink-2)}
.tile__p{font:400 14px/1.3 var(--sans);letter-spacing:.04em;margin-top:2px}

/* ==================================================================== HOME */
.sec{padding:clamp(64px,8vw,128px) 0}
.sec--tight{padding:clamp(44px,5vw,76px) 0}
.sec__h{text-align:center;max-width:760px;margin:0 auto clamp(34px,4vw,56px)}
.sec__h .cap{color:var(--gold-3);display:block;margin-bottom:16px}
.sec__h .lede{margin-top:16px}

.hero{background:var(--night) var(--jali);color:var(--paper);padding:clamp(18px,3vw,40px) var(--gut) clamp(26px,3.4vw,48px)}
.hero__leaf{max-width:var(--wrap);margin:0 auto;border:clamp(20px,2.4vw,30px) solid transparent;border-image:var(--frame) 32 round;background:radial-gradient(90% 70% at 50% 0%,#1A2240 0%,var(--night-2) 55%,#070A15 100%)}
.hero__in{padding:clamp(34px,5vw,70px) clamp(16px,4vw,64px) clamp(30px,4vw,56px);text-align:center}
.hero__k{color:var(--gold-2);display:inline-flex;align-items:center;gap:14px}
.hero__h{margin:22px auto 0;max-width:15ch;color:#F7F0E1}
.hero__sub{font:italic 400 clamp(1.08rem,1rem + .4vw,1.32rem)/1.55 var(--serif);color:#D8CFBD;max-width:44ch;margin:20px auto 0}
.hero__cta{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:30px}
.hero__cta .btn--line{color:var(--paper)}
.hero__from{margin-top:18px;color:#B9B09E;font:400 14px/1.5 var(--sans)}
.hero__from b{color:var(--gold-2);font-weight:500}
.arcade{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(10px,1.6vw,26px);margin-top:clamp(34px,4.4vw,60px);padding:0 clamp(0px,1vw,16px)}
.arcade .tile{color:var(--paper)}
.arcade .tile__mount{background:transparent;box-shadow:none;padding:0}
.arcade .tile__mount::before{display:none}
.arcade .tile__k{color:var(--gold-2)}
.arcade .tile__d{color:#C7BEAD}
@media (max-width:1000px){
  .arcade{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:minmax(190px,38%);overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding-bottom:6px}
  .arcade::-webkit-scrollbar{display:none}.arcade > *{scroll-snap-align:center}
}
@media (max-width:560px){.arcade{grid-auto-columns:62%}}

/* the campaign: one piece at a time, as Dior shows a line */
.camp{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(28px,5vw,96px);align-items:center}
.camp--rev{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}
.camp--rev .camp__pic{order:2}
.camp__pic{position:relative;background:var(--g);padding:clamp(26px,5vw,72px) clamp(40px,9vw,140px);border:clamp(16px,2vw,26px) solid transparent;border-image:var(--frame) 32 round;background-clip:padding-box}
.camp__pic .niche{width:100%;max-width:420px;margin:0 auto;background:var(--niche)}
.camp__t .cap{color:var(--gold-3)}
.camp__t .h2{margin:16px 0 0}
.camp__t .lede{margin:18px 0 0;max-width:34ch}
.camp__t p.camp__p{margin:22px 0 28px;font:400 15px/1.6 var(--sans);color:var(--ink-2);max-width:44ch}
.camp__t p.camp__p b{color:var(--ink);font-weight:500}
@media (max-width:900px){.camp,.camp--rev{grid-template-columns:1fr}.camp--rev .camp__pic{order:0}}
.duo{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(20px,3vw,44px)}
.duo .tile__mount{padding:10% 22% 8%;background:var(--g);box-shadow:none;border:clamp(12px,1.6vw,20px) solid transparent;border-image:var(--frame) 32 round;background-clip:padding-box}
.duo .tile__mount::before{display:none}
.duo .niche{background:var(--niche)}
.duo .tile__b{gap:6px}
.duo .tile__n{font-size:clamp(1.5rem,1.2rem + 1vw,2.1rem)}
@media (max-width:700px){.duo{grid-template-columns:1fr}}

/* service promises — Dior's row above the footer, here near the top */
.serv{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}
.serv__i{padding:clamp(24px,3vw,40px) clamp(16px,2vw,30px);text-align:center;border-left:1px solid var(--rule)}
.serv__i:first-child{border-left:0}
.serv__i .star{color:var(--gold);width:14px;height:14px;margin:0 auto 16px}
.serv__i h3{font:400 1.25rem/1.2 var(--display);margin-bottom:8px}
.serv__i p{font:400 14px/1.55 var(--sans);color:var(--ink-2);margin:0}
.serv__i a{color:var(--ink)}
@media (max-width:900px){.serv{grid-template-columns:repeat(2,minmax(0,1fr))}.serv__i:nth-child(3){border-left:0}.serv__i:nth-child(n+3){border-top:1px solid var(--rule)}}
@media (max-width:520px){.serv{grid-template-columns:1fr}.serv__i{border-left:0;border-top:1px solid var(--rule)}.serv__i:first-child{border-top:0}}

.rooms{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px}
.room{display:flex;flex-direction:column;text-decoration:none;background:var(--leaf);box-shadow:0 0 0 1px var(--rule);position:relative;transition:transform .35s var(--ease),box-shadow .35s}
.room::before{content:"";position:absolute;inset:6px;border:1px solid rgba(162,134,90,.4);pointer-events:none}
.room:hover{transform:translateY(-4px);box-shadow:0 0 0 1px var(--gold),0 24px 40px -30px rgba(23,18,13,.6)}
.room__pic{padding:18px 14px 0;background:var(--paper-2);margin:6px 6px 0}
.room__b{padding:18px 20px 24px;display:flex;flex-direction:column;gap:8px;flex:1;text-align:center}
.room__t{font:400 1.35rem/1.15 var(--display)}
.room__l{font:400 14px/1.5 var(--sans);color:var(--ink-2);margin:0;flex:1}
.room__s{color:var(--gold-3);margin-top:6px}
@media (max-width:1100px){.rooms{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:minmax(240px,34%);overflow-x:auto;scroll-snap-type:x mandatory;padding:4px 2px 14px;scrollbar-width:none}.rooms::-webkit-scrollbar{display:none}.room{scroll-snap-align:start}}
@media (max-width:560px){.rooms{grid-auto-columns:80%}}

.savoir{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(28px,5vw,96px);align-items:center}
.savoir__pic{border:clamp(14px,1.8vw,24px) solid transparent;border-image:var(--frame) 32 round;background:var(--paper-2)}
.savoir__pic figure{margin:0}
.savoir__pic img{width:100%;aspect-ratio:4/3.3;object-fit:cover}
.savoir .cap{color:var(--gold-3)}
.savoir .h2{margin:16px 0 18px}
.facts{list-style:none;display:grid;gap:14px;margin:26px 0 30px}
.facts li{display:grid;grid-template-columns:18px 1fr;gap:12px;font:400 15px/1.55 var(--sans);color:var(--ink-2)}
.facts .star{color:var(--gold);margin-top:6px}
@media (max-width:900px){.savoir{grid-template-columns:1fr}}

.quote{background:var(--night) var(--jali);color:var(--paper);text-align:center}
.quote blockquote{margin:0 auto;max-width:30ch;font:italic 400 clamp(1.6rem,1.1rem + 2vw,2.7rem)/1.3 var(--serif);color:#F3EFE8}
.quote figcaption{margin-top:24px;color:var(--gold-2)}

.faqsec{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(24px,5vw,90px)}
.faqsec .cap{color:var(--gold-3)}
.faqsec .h2{margin:14px 0 16px}
.faqsec p{color:var(--ink-2)}
@media (max-width:860px){.faqsec{grid-template-columns:1fr}}
.acc{border-top:1px solid var(--ink)}
.acc__i{border-bottom:1px solid var(--rule)}
.acc__i summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:18px;padding:20px 0;cursor:pointer;font:500 12px/1.4 var(--sans);letter-spacing:.18em;text-transform:uppercase}
.acc__i summary::-webkit-details-marker{display:none}
.acc__i summary .ic{width:16px;height:16px;transition:transform .25s var(--ease)}
.acc__i[open] summary .ic{transform:rotate(45deg)}
.acc__a{padding:0 40px 24px 0;color:var(--ink-2);font:400 15px/1.7 var(--sans)}
.acc__a p{margin:0 0 .8em}

/* ============================================================= COLLECTION */
.colhead{text-align:center;padding:clamp(40px,5vw,72px) 0 clamp(24px,3vw,40px)}
.colhead .cap{color:var(--gold-3)}
.colhead .h1{margin-top:14px}
.colhead .lede{margin:18px auto 0;max-width:46ch}
.crumbs{display:flex;gap:10px;flex-wrap:wrap;color:var(--ink-3);font:500 10.5px/1 var(--sans);letter-spacing:.2em;text-transform:uppercase;padding:22px 0 0}
.crumbs a{text-decoration:none}.crumbs a:hover{color:var(--ink)}
.bar{display:flex;justify-content:space-between;align-items:center;gap:18px;flex-wrap:wrap;border-top:1px solid var(--ink);border-bottom:1px solid var(--rule);padding:14px 0;margin-bottom:clamp(28px,3.4vw,48px)}
.bar__n{color:var(--ink-3)}
.chips{display:flex;flex-wrap:wrap;gap:6px}
.chip{display:inline-flex;align-items:center;min-height:36px;padding:0 14px;box-shadow:inset 0 0 0 1px var(--rule);font:500 11px/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;text-decoration:none}
.chip:hover{box-shadow:inset 0 0 0 1px var(--ink)}
.chip[aria-current="page"]{background:var(--ink);color:var(--paper);box-shadow:none}
.roomnote{display:flex;gap:14px;align-items:flex-start;max-width:720px;margin:0 auto clamp(26px,3vw,40px);padding:16px 20px;background:var(--leaf);box-shadow:0 0 0 1px var(--rule);font:400 15px/1.55 var(--sans);color:var(--ink-2)}
.roomnote .star{color:var(--gold);margin-top:6px;flex:0 0 auto}
.grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(34px,4vw,60px) clamp(16px,2.4vw,36px)}
.grid3 .edit{grid-column:span 1}
@media (max-width:980px){.grid3{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.grid3{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 12px}.tile__mount{padding:10% 12% 8%}.tile__d{font-size:13px}}
.edit{display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;gap:16px;padding:40px 28px;background:var(--night) var(--jali);color:var(--paper);text-decoration:none;min-height:100%}
.edit .cap{color:var(--gold-2)}
.edit .h3{max-width:12ch}
.edit p{color:#CFC6B4;font:400 14px/1.55 var(--sans);max-width:30ch;margin:0}

/* ======================================================= PRODUCT PAGE */
.pdp__g{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:clamp(24px,4vw,72px);align-items:start;padding-top:18px;padding-bottom:clamp(48px,6vw,90px)}
@media (max-width:980px){.pdp__g{grid-template-columns:1fr;gap:28px}}
.gal{display:grid;gap:14px}
.gal__i{margin:0;position:relative;background:var(--paper-2);box-shadow:inset 0 0 0 1px var(--rule)}
.gal__i > img{width:100%}
.gal__i--leaf{background:var(--g);box-shadow:none;border:clamp(18px,2.2vw,28px) solid transparent;border-image:var(--frame) 32 round;background-clip:padding-box;padding:clamp(24px,5vw,70px) clamp(40px,11vw,150px)}
.gal__i--leaf .niche{background:var(--niche);width:100%;max-width:460px;margin:0 auto}
.gal__cap{position:absolute;left:0;right:0;bottom:0;padding:12px 16px;font:400 12.5px/1.4 var(--sans);color:var(--on2);text-align:center}
.gal__i:not(.gal__i--leaf) .gal__cap{position:static;color:var(--ink-3);background:var(--leaf);border-top:1px solid var(--rule)}
.gal__note{font:400 13px/1.55 var(--sans);color:var(--ink-3);margin:4px 0 0;text-align:center}
@media (max-width:980px){
  .gal{grid-auto-flow:column;grid-auto-columns:100%;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;margin-inline:calc(var(--gut) * -1);gap:0}
  .gal::-webkit-scrollbar{display:none}
  .gal__i{scroll-snap-align:center;display:grid;align-content:center}
  .gal__i--leaf{padding:36px 18%}
  .gal__count{display:flex!important}
}
.gal__count{display:none;justify-content:center;gap:8px;margin-top:12px}
.gal__count span{width:22px;height:2px;background:var(--rule)}
.gal__count span[aria-current="true"]{background:var(--ink)}

.buy{position:sticky;top:112px}
@media (max-width:980px){.buy{position:static}}
.buy__k{display:flex;justify-content:space-between;gap:12px;color:var(--ink-3)}
.buy__k a{text-decoration:none}
.buy__name{font:400 clamp(2.3rem,1.6rem + 2.4vw,3.6rem)/1.02 var(--display);margin-top:16px}
.buy__desc{font:400 15px/1.55 var(--sans);color:var(--ink-2);margin:10px 0 0}
.buy__lede{margin:16px 0 0}
.buy__price{display:flex;align-items:baseline;gap:14px;margin-top:24px;padding-top:22px;border-top:1px solid var(--rule)}
.buy__num{font:400 1.7rem/1 var(--sans);letter-spacing:.02em;font-variant-numeric:lining-nums tabular-nums}
.buy__del{font:400 14px/1.55 var(--sans);color:var(--ink-2);margin:10px 0 0}
.buy__del b{color:var(--ink);font-weight:500}
.opt{border:0;padding:0;margin:26px 0 0;min-width:0}
.opt__l{display:flex;justify-content:space-between;align-items:baseline;width:100%;padding:0;margin-bottom:12px}
.opt__l .cap{color:var(--ink)}
.opt__l a{font:400 13px/1 var(--sans);color:var(--ink-2)}
.opt__l b{font-weight:500;color:var(--ink-2);letter-spacing:.04em;text-transform:none;font-size:13px}
.sw{display:flex;gap:10px;flex-wrap:wrap}
.sw__a{position:relative;width:38px;height:54px;text-decoration:none}
.sw__a span{position:absolute;inset:0;background:var(--c);-webkit-mask:var(--arch) 0 0/100% 100%;mask:var(--arch) 0 0/100% 100%}
.sw__a span::after{content:"";position:absolute;inset:4px;-webkit-mask:var(--arch) 0 0/100% 100%;mask:var(--arch) 0 0/100% 100%;box-shadow:inset 0 0 0 1.5px var(--r)}
.sw__a::after{content:"";position:absolute;left:4px;right:4px;bottom:-9px;height:2px;background:transparent}
.sw__a[aria-current="true"]::after{background:var(--ink)}
.sw__a:hover span{filter:brightness(1.1)}
.rows{display:grid;gap:8px}
.row{position:relative;display:grid;grid-template-columns:20px 1fr auto;gap:2px 14px;align-items:center;padding:15px 18px;background:var(--leaf);box-shadow:inset 0 0 0 1px var(--rule);cursor:pointer;transition:box-shadow .15s}
.row:hover{box-shadow:inset 0 0 0 1px var(--ink-3)}
.row input{position:absolute;opacity:0;pointer-events:none}
.row__dot{width:18px;height:18px;border-radius:50%;box-shadow:inset 0 0 0 1px var(--ink-3)}
.row__a{font:500 15px/1.3 var(--sans)}
.row__b{grid-column:2;font:400 13px/1.4 var(--sans);color:var(--ink-3)}
.row__p{grid-row:1 / span 2;grid-column:3;font:400 15px/1.2 var(--sans);text-align:right;font-variant-numeric:tabular-nums}
.row__tag{margin-left:8px;color:var(--gold-3)}
.row.is-on,.row:has(input:checked){box-shadow:inset 0 0 0 1.5px var(--ink)}
.row.is-on .row__dot,.row:has(input:checked) .row__dot{box-shadow:inset 0 0 0 5px var(--ink)}
.row:has(input:focus-visible){outline:2px solid var(--gold);outline-offset:2px}
.row__list{grid-column:2 / span 2;list-style:none;display:grid;gap:4px;margin-top:8px}
.row__list li{display:grid;grid-template-columns:12px 1fr;gap:8px;font:400 13px/1.45 var(--sans);color:var(--ink-2)}
.row__list .star{width:8px;height:8px;color:var(--gold);margin-top:6px}
.cut{margin-top:8px;padding:18px;background:var(--leaf);box-shadow:inset 0 0 0 1px var(--rule)}
.cut[hidden]{display:none}
.cut__h{font:500 15px/1.3 var(--sans);margin:0 0 4px}
.cut__d{font:400 13px/1.5 var(--sans);color:var(--ink-2);margin:0 0 14px}
.cut__row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.cut__f span{display:block;margin-bottom:6px;color:var(--ink-3)}
.cut__f input{width:100%;height:50px;border:0;border-bottom:1px solid var(--ink);background:transparent;padding:0 2px;font-size:17px;border-radius:0}
.cut__f input:focus{outline:none;border-bottom-width:2px}
.cut__ack{display:flex;gap:10px;align-items:flex-start;margin-top:14px;font:400 13px/1.5 var(--sans);color:var(--ink-2)}
.cut__ack[hidden]{display:none}
.cut__ack input{width:18px;height:18px;margin-top:1px;accent-color:var(--ink);flex:0 0 auto}
.up{position:relative;display:grid;grid-template-columns:20px 58px 1fr;gap:14px;align-items:center;margin-top:14px;padding:14px 16px;background:var(--leaf);box-shadow:inset 0 0 0 1px var(--gold);cursor:pointer}
.up[hidden]{display:none}
.up input{position:absolute;opacity:0;pointer-events:none}
.up__box{width:18px;height:18px;box-shadow:inset 0 0 0 1px var(--ink-3);display:grid;place-items:center;color:transparent}
.up__box .ic{width:13px;height:13px;stroke-width:2.6}
.up.is-on .up__box,.up:has(input:checked) .up__box{background:var(--ink);color:var(--paper);box-shadow:none}
.up.is-on,.up:has(input:checked){box-shadow:inset 0 0 0 1.5px var(--ink)}
.up__im{width:58px;height:58px;object-fit:contain;background:var(--g);padding:6px}
.up__t b{display:block;font:500 14px/1.35 var(--sans)}
.up__t span{display:block;font:400 13px/1.45 var(--sans);color:var(--ink-2);margin-top:3px}
.atc{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:60px;margin-top:22px;padding:0 26px;border:0;background:var(--ink);color:var(--paper);box-shadow:inset 0 0 0 3px var(--ink),inset 0 0 0 4px rgba(204,182,144,.65);font:500 13px/1 var(--sans);letter-spacing:.2em;text-transform:uppercase;transition:background-color .2s}
.atc:hover{background:#2A2520}
.atc[disabled]{opacity:.45;cursor:not-allowed}
.atc__p{letter-spacing:.06em;font-variant-numeric:tabular-nums}
.assure{list-style:none;display:grid;gap:10px;margin-top:20px}
.assure li{display:grid;grid-template-columns:14px 1fr;gap:10px;font:400 14px/1.5 var(--sans);color:var(--ink-2)}
.assure .star{width:9px;height:9px;color:var(--gold);margin-top:7px}
.assure b{color:var(--ink);font-weight:500}
.ask{display:flex;gap:18px;flex-wrap:wrap;margin-top:18px;padding-top:18px;border-top:1px solid var(--rule)}
.ask a{font:500 11.5px/1 var(--sans);letter-spacing:.18em;text-transform:uppercase;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:5px}
.flash{margin:16px 0 0;padding:12px 16px;background:rgba(142,43,34,.08);box-shadow:inset 0 0 0 1px rgba(142,43,34,.4);color:var(--verm);font:400 14px/1.5 var(--sans)}
.buy .acc{margin-top:28px}

.label-card{background:var(--leaf);padding:22px 24px;box-shadow:inset 0 0 0 1px var(--rule);position:relative}
.label-card::before{content:"";position:absolute;inset:5px;border:1px solid rgba(162,134,90,.45);pointer-events:none}
.label-card dl{margin:0}
.label-card .lr{display:grid;grid-template-columns:130px 1fr;gap:10px;padding:10px 0;border-bottom:1px solid var(--rule);font:400 14px/1.45 var(--sans)}
.label-card .lr:last-child{border-bottom:0}
.label-card dt{color:var(--ink-3);font:500 10.5px/1.6 var(--sans);letter-spacing:.18em;text-transform:uppercase}
.label-card dd{margin:0}

.inroom{background:var(--g);color:var(--on)}
.inroom__g{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);gap:clamp(24px,4vw,72px);align-items:center}
.inroom__pic{border:clamp(14px,1.8vw,24px) solid transparent;border-image:var(--frame) 32 round;background:var(--deep)}
.inroom__pic > img{width:100%}
.inroom .cap{color:var(--acc)}
.inroom .h2{margin:16px 0 16px}
.inroom p{color:var(--on2)}
@media (max-width:900px){.inroom__g{grid-template-columns:1fr}}
.revs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.rev{margin:0;background:var(--leaf);padding:26px;box-shadow:inset 0 0 0 1px var(--rule);display:flex;flex-direction:column;gap:14px}
.rev__s{color:var(--gold);letter-spacing:.2em}
.rev blockquote{margin:0;font:italic 400 17px/1.6 var(--serif)}
.rev figcaption{margin-top:auto;color:var(--ink-3)}
.norevs{max-width:760px;margin:0 auto 34px;text-align:center;font:400 15px/1.65 var(--sans);color:var(--ink-2)}
.norevs b{color:var(--ink);font-weight:500}
@media (max-width:860px){.revs{grid-template-columns:1fr}}

.sticky{position:fixed;left:0;right:0;bottom:0;z-index:55;background:rgba(243,239,232,.97);border-top:1px solid var(--ink);transform:translateY(110%);transition:transform .32s var(--ease);padding-bottom:env(safe-area-inset-bottom,0px)}
.sticky.is-up{transform:none}
.sticky__in{display:flex;align-items:center;gap:14px;max-width:var(--wrap);margin:0 auto;padding:10px var(--gut)}
.sticky__im{width:40px;height:54px;flex:0 0 auto;background:var(--g);-webkit-mask:var(--arch) 0 0/100% 100%;mask:var(--arch) 0 0/100% 100%;display:grid;place-items:center}
.sticky__im img{width:62%;margin-top:22%}
.sticky__t{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}
.sticky__t b{font:400 1.1rem/1.2 var(--display);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sticky__t span{font:400 13px/1.2 var(--sans);color:var(--ink-3)}
.sticky .atc{margin:0;width:auto;min-height:50px;gap:18px;padding:0 22px}

/* =================================================================== BASKET */
.cartpg{padding-bottom:clamp(64px,7vw,110px)}
.cartpg .h2{margin-top:18px}
.cartpg__g{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:clamp(24px,4vw,64px);align-items:start;margin-top:28px}
@media (max-width:960px){.cartpg__g{grid-template-columns:1fr}}
.freebar{margin-top:24px;padding:16px 20px;background:var(--leaf);box-shadow:inset 0 0 0 1px var(--rule)}
.freebar__t{display:flex;gap:10px;align-items:center;font:400 14px/1.4 var(--sans);margin:0 0 10px}
.freebar__t .ic{color:var(--gold-3)}
.freebar__t b{font-weight:500}
.freebar__bar{height:4px;background:var(--paper-2)}
.freebar__fill{display:block;height:100%;width:var(--to,0%);background:linear-gradient(90deg,var(--gold),var(--verm))}
.lines{list-style:none;border-top:1px solid var(--ink)}
.ln{display:grid;grid-template-columns:96px 1fr auto;gap:20px;padding:22px 0;border-bottom:1px solid var(--rule);align-items:start}
.ln__pic{width:96px;aspect-ratio:5/7;background:var(--g);-webkit-mask:var(--arch) 0 0/100% 100%;mask:var(--arch) 0 0/100% 100%;display:grid;place-items:center}
.ln__pic img{width:62%;margin-top:22%}
.ln__k{margin:0;font:500 10.5px/1 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--ink-3)}
.ln__n{display:block;font:400 1.35rem/1.2 var(--display);text-decoration:none;margin-top:8px}
.ln__s{font:400 13px/1.5 var(--sans);color:var(--ink-3);margin:6px 0 0}
.ln__act{display:flex;align-items:center;gap:18px;margin-top:14px}
.qty{display:inline-flex;align-items:center;box-shadow:inset 0 0 0 1px var(--rule);height:40px}
.qty button{width:40px;height:100%;border:0;background:none;display:grid;place-items:center}
.qty button:hover{background:var(--paper-2)}
.qty .ic{width:14px;height:14px}
.qty span{min-width:24px;text-align:center;font-size:14px}
.ln__rm{border:0;background:none;padding:0;font:400 13px/1 var(--sans);color:var(--ink-3);text-decoration:underline;text-underline-offset:.2em}
.ln__p{font:400 16px/1.2 var(--sans);font-variant-numeric:tabular-nums;margin:0}
.pair{display:grid;grid-template-columns:90px 1fr;gap:20px;align-items:center;margin-top:34px;padding:20px;background:var(--g);color:var(--on);border:14px solid transparent;border-image:var(--frame) 32 round;background-clip:padding-box}
.pair__pic{aspect-ratio:5/7;background:var(--niche);-webkit-mask:var(--arch) 0 0/100% 100%;mask:var(--arch) 0 0/100% 100%;display:grid;place-items:center}
.pair__pic img{width:62%;margin-top:22%}
.pair__k{margin:0;color:var(--acc);font:500 10.5px/1 var(--sans);letter-spacing:.2em;text-transform:uppercase}
.pair__n{font:400 1.35rem/1.2 var(--display);margin:8px 0 0}
.pair__d{font:400 13px/1.55 var(--sans);color:var(--on2);margin:8px 0 14px}
.pair .btn{background:var(--on);color:var(--deep)}
.bumps{margin-top:40px}
.bumps__h{font:400 1.7rem/1.15 var(--display)}
.bumps__s{color:var(--ink-2);font:400 14px/1.55 var(--sans);margin:8px 0 16px}
.bump{display:grid;grid-template-columns:64px 1fr auto;gap:16px;align-items:center;background:var(--leaf);box-shadow:inset 0 0 0 1px var(--rule);padding:12px 16px;margin-top:10px}
.bump__pic{width:64px;height:64px;background:var(--g);display:grid;place-items:center}
.bump__pic img{width:58%}
.bump__n{font:400 1.1rem/1.25 var(--display);margin:0}
.bump__d{font:400 13px/1.45 var(--sans);color:var(--ink-2);margin:4px 0 0}
.bump__p{font:400 13px/1.4 var(--sans);color:var(--ink-3);margin:4px 0 0}
.bump__p b{color:var(--ink);font-weight:500}
.sum{background:var(--leaf);box-shadow:inset 0 0 0 1px var(--rule);padding:26px;position:sticky;top:112px}
.sum .label{margin:0 0 12px;font:500 11px/1 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--ink-3)}
.sum__r{display:flex;justify-content:space-between;gap:14px;padding:8px 0;font:400 14px/1.4 var(--sans);color:var(--ink-2)}
.sum__r span:last-child{color:var(--ink);font-variant-numeric:tabular-nums}
.sum__r--big{border-top:1px solid var(--ink);margin-top:10px;padding-top:16px;font:400 18px/1.2 var(--sans);color:var(--ink)}
.sum__note{font:400 13px/1.55 var(--sans);color:var(--ink-3);margin:14px 0 0}
.sum__note b{color:var(--ink);font-weight:500}
.sum__tier{margin-top:14px;padding-top:14px;border-top:1px solid var(--rule);font:400 13px/1.55 var(--sans);color:var(--ink-2)}
.sum .btn{margin-top:20px}
.sum__pay{text-align:center;font:400 13px/1.5 var(--sans);color:var(--ink-3);margin:12px 0 0}
.ladder{margin-top:14px;padding:14px 16px;background:var(--paper);font:400 13px/1.5 var(--sans);color:var(--ink-2)}
.ladder b{display:block;color:var(--ink);font-weight:500;margin-bottom:2px}
.empty{margin-top:28px;padding:36px;background:var(--leaf);box-shadow:inset 0 0 0 1px var(--rule);max-width:680px}
.empty p{color:var(--ink-2)}
.note-bad{margin-top:14px;padding:14px 16px;background:rgba(142,43,34,.07);box-shadow:inset 0 0 0 1px rgba(142,43,34,.35);color:var(--verm);font:400 14px/1.55 var(--sans)}
.note-bad p{margin:0 0 .4em}
.note-ok{margin-top:14px;padding:14px 16px;background:rgba(44,90,76,.08);box-shadow:inset 0 0 0 1px rgba(44,90,76,.35);color:var(--mala);font:400 14px/1.55 var(--sans)}

/* ============================================ EVERY OTHER PAGE (old markup)
   Checkout, the confirmation and the policy pages still use the old
   vocabulary. These give it the new look without touching their logic. */
.sec__in{width:100%;max-width:var(--wrap);margin-inline:auto;padding-inline:var(--gut)}
.sec__in--narrow{max-width:860px}
.prose{max-width:760px;margin-inline:auto;padding-inline:var(--gut)}
.prose h1{font:400 clamp(2rem,1.4rem + 2.2vw,3.2rem)/1.06 var(--display);margin:0 0 20px}
.prose h2{font:400 clamp(1.4rem,1.2rem + .8vw,1.9rem)/1.2 var(--display);margin:2.2em 0 .6em}
.prose h3{font:500 12px/1.4 var(--sans);letter-spacing:.18em;text-transform:uppercase;margin:2em 0 .6em}
.prose p,.prose li{color:var(--ink-2);line-height:1.75}
.prose ul,.prose ol{padding-left:1.2em;margin:0 0 1em}
.prose li{margin-bottom:.4em}
.prose a{color:var(--ink);font-weight:500}
.prose .lede{font-size:1.25rem;margin-bottom:1.2em}
.prose table{width:100%;border-collapse:collapse;margin:1.2em 0;font-size:14px}
.prose th,.prose td{text-align:left;padding:10px 8px;border-bottom:1px solid var(--rule);vertical-align:top}
.d{font-family:var(--display);font-weight:400;line-height:1.08;color:var(--ink)}
.d--xl{font-size:clamp(2.6rem,1.5rem + 4.4vw,5.2rem)}.d--lg{font-size:clamp(2rem,1.4rem + 2.2vw,3.2rem)}.d--md{font-size:clamp(1.4rem,1.2rem + .8vw,1.9rem)}
.kicker,.eyebrow{font:500 11px/1.3 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--gold-3);margin:0 0 14px}
.dark,.light{background:transparent;color:var(--ink)}
.muted{color:var(--ink-3)}.small{font-size:14px}.fine{font-size:13px;color:var(--ink-3)}
.center{text-align:center}.mt1{margin-top:1rem}.mt2{margin-top:2rem}.mt3{margin-top:3rem}
.mono{font-family:ui-monospace,Menlo,monospace}
.callout,.window{background:var(--leaf);box-shadow:inset 0 0 0 1px var(--rule);padding:22px 24px;margin:1.4em 0}
.window__h{font:400 1.6rem/1.2 var(--display);margin:0 0 8px}
.cta{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;width:100%;min-height:60px;padding:12px 30px;border:0;background:var(--ink);color:var(--paper);box-shadow:inset 0 0 0 3px var(--ink),inset 0 0 0 4px rgba(204,182,144,.6);font:500 13px/1.2 var(--sans);letter-spacing:.2em;text-transform:uppercase;text-decoration:none;text-align:center}
.cta:hover{background:#2A2520}
.cta__sub{font:400 12px/1.3 var(--sans);letter-spacing:.04em;text-transform:none;opacity:.8}
.cta--off{opacity:.4;pointer-events:none}
.form{display:grid;gap:16px}
.fl{display:block;font:500 11px/1.3 var(--sans);letter-spacing:.18em;text-transform:uppercase;margin:0 0 8px;color:var(--ink)}
.fi{width:100%;height:52px;border:0;border-bottom:1px solid var(--ink);background:transparent;padding:0 2px;font-size:16px;color:var(--ink);border-radius:0}
textarea.fi{height:auto;min-height:110px;padding:12px 2px;resize:vertical;border:1px solid var(--rule)}
.fi:focus{outline:none;border-bottom-width:2px}
.f2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media (max-width:560px){.f2{grid-template-columns:1fr}}
.ferr{color:var(--verm);font-size:13px;margin:6px 0 0}
.ack{display:grid;gap:10px;margin:14px 0}
.ackrow{display:grid;grid-template-columns:22px 1fr;gap:12px;align-items:start;padding:14px 16px;background:var(--leaf);box-shadow:inset 0 0 0 1px var(--rule);font-size:14px;line-height:1.55;color:var(--ink-2);cursor:pointer}
.ackrow input{width:18px;height:18px;margin-top:2px;accent-color:var(--ink)}
.vatline{padding:12px 16px;background:rgba(142,43,34,.07);color:var(--verm);font-size:14px}
section.dark > .cart,.cart{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:clamp(24px,4vw,64px);max-width:var(--wrap);margin:0 auto;padding:clamp(28px,4vw,56px) var(--gut) clamp(64px,7vw,100px);align-items:start}
@media (max-width:960px){section.dark > .cart,.cart{grid-template-columns:1fr}}
.totals{background:var(--leaf);box-shadow:inset 0 0 0 1px var(--rule);padding:26px;position:sticky;top:112px}
.totals__r{display:flex;justify-content:space-between;gap:12px;padding:8px 0;font-size:14px;color:var(--ink-2)}
.totals__r--big{border-top:1px solid var(--ink);margin-top:8px;padding-top:16px;font-size:18px;color:var(--ink)}
.totals__note{font-size:13px;line-height:1.55;color:var(--ink-3);margin:12px 0 0}
.faq details{border-bottom:1px solid var(--rule);padding:18px 0}
.faq details summary{cursor:pointer;font-weight:500}
.sizes{display:grid;gap:8px}
.size{display:flex;align-items:center;gap:12px;padding:14px 16px;background:var(--leaf);box-shadow:inset 0 0 0 1px var(--rule);cursor:pointer}
.size input{accent-color:var(--ink)}
.size__l{flex:1;display:flex;flex-direction:column}
.size__n{font-weight:500}.size__cm{font-size:13px;color:var(--ink-3)}.size__dot{display:none}
.pdp__price{font:400 1.8rem/1 var(--sans)}
.pdp__pricenote,.dutyline{font-size:14px;color:var(--ink-2)}
.badges{display:grid;gap:8px;margin-top:16px}
.badge{display:flex;gap:10px;font-size:14px;color:var(--ink-2)}
.badge svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.5}
.vform{display:grid;gap:12px;max-width:460px}
.vres{background:var(--leaf);box-shadow:inset 0 0 0 1px var(--rule);padding:22px 24px;margin-top:22px}
.vres--no{box-shadow:inset 0 0 0 1.5px rgba(142,43,34,.45)}
.vres--yes{box-shadow:inset 0 0 0 1.5px rgba(44,90,76,.5)}
.vres__h{font:400 1.6rem/1.2 var(--display);margin:0 0 8px}
.hair{border:0;border-top:1px solid var(--rule);margin:2rem 0}
.notice{background:var(--night);color:var(--gold-2);text-align:center;font-size:13px;padding:10px var(--gut);margin:0}
.ivan{padding:clamp(40px,6vw,90px) var(--gut);text-align:center}
.lp-plate__arch{aspect-ratio:5/7;background:var(--g);-webkit-mask:var(--arch) 0 0/100% 100%;mask:var(--arch) 0 0/100% 100%;display:grid;place-items:center}
.lp-plate__arch img{width:60%}
.sheet{background:#fff;padding:32px;max-width:760px;margin:32px auto}
.sec .sec__in + .sec__in{margin-top:2rem}

/* ================================================================== FOOTER */
.news{background:var(--paper-2);border-top:1px solid var(--rule)}
.news__in{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,520px);gap:28px 64px;align-items:center}
.news .cap{color:var(--gold-3)}
.news .h3{margin-top:12px}
.news__f{display:grid;gap:14px}
.news__row{display:flex;gap:0;border-bottom:1px solid var(--ink)}
.news__row input{flex:1;min-width:0;border:0;background:none;padding:0 2px;height:54px;font-size:16px;outline:none}
.news__row .btn{min-height:54px;padding:0 20px;background:none;color:var(--ink);box-shadow:none}
.news__ok{display:flex;gap:10px;align-items:flex-start;font:400 13px/1.5 var(--sans);color:var(--ink-2)}
.news__ok input{margin-top:2px;width:16px;height:16px;accent-color:var(--ink);flex:0 0 auto}
@media (max-width:860px){.news__in{grid-template-columns:1fr}}
.foot{background:var(--night) var(--jali);color:#CFC8BA;padding:clamp(56px,6vw,90px) 0 34px;font:400 14px/1.6 var(--sans)}
.foot a{color:#EFE7D6;text-decoration:none}
.foot a:hover{color:var(--gold-2)}
.foot__g{display:grid;grid-template-columns:1.5fr repeat(3,minmax(0,1fr));gap:40px}
.foot__mark{display:flex;align-items:center;gap:12px;font:400 1.35rem/1 var(--display);letter-spacing:.22em;text-transform:uppercase;color:#F3EFE8;margin-bottom:16px}
.foot__mark .star{color:var(--gold-2)}
.foot__line{font:italic 400 16px/1.55 var(--serif);color:#E2D9C6;max-width:30ch;margin:0 0 18px}
.foot__legal{font-size:13px;color:#A9A293;margin:0}
.foot__h{color:var(--gold-2);margin:4px 0 18px}
.foot__col ul{list-style:none;display:grid;gap:10px}
.foot__base{display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;margin-top:48px;padding-top:22px;border-top:1px solid rgba(204,182,144,.25);font-size:12.5px;color:#A9A293}
.foot__base p{margin:0;max-width:78ch}
@media (max-width:900px){.foot__g{grid-template-columns:1fr 1fr}.foot__brand{grid-column:1 / -1}}

/* ================================================================ CONSENT */
.consent{position:fixed;left:16px;bottom:16px;z-index:80;max-width:430px;background:var(--leaf);color:var(--ink);padding:20px 22px;box-shadow:0 0 0 1px var(--rule),0 26px 50px -24px rgba(23,18,13,.55);font:400 14px/1.55 var(--sans);opacity:0;transform:translateY(12px);transition:opacity .25s,transform .3s var(--ease)}
.consent.is-up{opacity:1;transform:none}
.consent a{font-weight:500}
.consent__row{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px}
/* ICO: refusing must be exactly as easy as accepting — same size, same weight */
.consent__b{min-height:46px;border:0;background:transparent;box-shadow:inset 0 0 0 1px var(--ink);font:500 11.5px/1 var(--sans);letter-spacing:.18em;text-transform:uppercase}
.consent__b:hover{background:var(--ink);color:var(--paper)}
.has-sticky .consent{bottom:90px}
@media (max-width:520px){.consent{left:10px;right:10px;max-width:none}}
@media print{.head,.ann,.foot,.news,.consent,.noprint,.sticky{display:none!important}body{background:#fff}}
.grid4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(30px,3.4vw,50px) clamp(14px,2vw,30px)}
@media (max-width:980px){.grid4{grid-template-columns:repeat(2,minmax(0,1fr))}}
.buy__sz{font:400 14px/1 var(--sans);color:var(--ink-3)}
.inroom__pic--leaf{background:var(--deep);padding:clamp(24px,4vw,56px) clamp(40px,10vw,150px)}
.inroom__pic--leaf .niche{width:100%;max-width:440px;margin:0 auto;background:var(--niche)}
main > .crumbs,main > nav.crumbs{max-width:var(--wrap);margin-inline:auto;padding-inline:var(--gut)}

/* =============================================================================
   24 SEPTEMBER — PREMIUM TOUCH-UPS. Fewer devices, each used once.
   The gold frame belongs to the painting only (homepage hero, the product's
   first picture). Elsewhere: a single hairline set off the edge, as a gallery
   hangs a mount. No stars as bullets, no capitals above headings, no gold line
   inside buttons. Italic serif captions, as a dealer's label reads.
   ========================================================================== */
p{text-wrap:pretty}
.lede,.tomb,.legal__lede{font-variant-numeric:oldstyle-nums}
.star{display:none}
.btn--ink,.btn--ink:hover,.btn--paper,.atc,.cta{box-shadow:none}
.btn--paper:hover{background:#fff}
.tile__mount::before,.room::before,.label-card::before{content:none}
.camp__pic,.savoir__pic,.inroom__pic,.pair{border:0;border-image:none}
.camp__pic{outline:1px solid var(--rule);outline-offset:12px}
.savoir__pic{background:none;outline:1px solid var(--rule);outline-offset:12px}
.inroom__pic{outline:1px solid rgba(244,236,220,.22);outline-offset:12px}
.foot{background:var(--night)}
.sec__h{text-align:left;max-width:none;margin:0 0 clamp(28px,3.4vw,44px);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,460px);gap:12px 48px;align-items:end;border-top:1px solid var(--ink);padding-top:22px}
.sec__h .h2{margin:0}
.sec__h p{margin:0;color:var(--ink-2)}
@media (max-width:820px){.sec__h{grid-template-columns:1fr}}
.facts li,.assure li,.row__list li{grid-template-columns:18px 1fr}
.facts li::before,.assure li::before,.row__list li::before{content:"";width:12px;height:1px;background:var(--gold);margin-top:.85em}
.tile__k{font:italic 400 15px/1.2 var(--serif);letter-spacing:0;text-transform:none;color:var(--ink-3)}
.arcade .tile__k{color:var(--gold-2)}
.hero__k{font:italic 400 clamp(1rem,.95rem + .3vw,1.2rem)/1.4 var(--serif);color:var(--gold-2);margin:0;letter-spacing:.01em}
.hero__h{max-width:16ch}
.tomb{font:italic 400 15px/1.5 var(--serif);color:var(--ink-3);margin:0}
.gal__tomb{margin:14px 2px 0}
.camp__t .tomb{color:var(--gold-3)}
.room__s{font:italic 400 15px/1.3 var(--serif);letter-spacing:0;text-transform:none;color:var(--gold-3)}
.serv__i{text-align:left}
.serv__i h3{font-size:1.2rem}

.door{border-top:1px solid var(--rule)}
.door .h2{margin-bottom:clamp(24px,3vw,40px)}
.door__g{list-style:none;counter-reset:d;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(20px,3vw,48px)}
.door__g li{counter-increment:d;border-top:1px solid var(--ink);padding-top:18px}
.door__g li::before{content:counter(d);display:block;font:400 2.1rem/1 var(--display);color:var(--gold-3);margin-bottom:14px;font-variant-numeric:oldstyle-nums}
.door__g h3{font:400 1.35rem/1.2 var(--display);margin:0 0 8px}
.door__g p{margin:0;color:var(--ink-2);font:400 15px/1.6 var(--sans)}
@media (max-width:760px){.door__g{grid-template-columns:1fr}}

/* the policy pages */
.legal,.about{padding:clamp(36px,5vw,80px) 0 clamp(64px,8vw,120px)}
.legal__head{max-width:900px;margin-bottom:clamp(30px,4vw,56px);padding-bottom:28px;border-bottom:1px solid var(--ink)}
.legal__meta{font:italic 400 15px/1.4 var(--serif);color:var(--ink-3);margin:0 0 14px}
.legal__h{font:400 clamp(2.3rem,1.5rem + 3vw,3.9rem)/1.03 var(--display)}
.legal__lede{font:400 clamp(1.05rem,1rem + .25vw,1.2rem)/1.6 var(--serif);color:var(--ink-2);max-width:60ch;margin:18px 0 0}
.legal__g{display:grid;grid-template-columns:230px minmax(0,740px);gap:clamp(28px,5vw,80px);align-items:start}
.legal__toc{position:sticky;top:110px;font:400 14px/1.45 var(--sans)}
.legal__tt{font:italic 400 15px/1 var(--serif);color:var(--ink-3);margin:0 0 12px}
.legal__toc ol{margin:0;padding-left:1.4em;display:grid;gap:8px;color:var(--ink-3)}
.legal__toc a{color:var(--ink-2);text-decoration:none}
.legal__toc a:hover{color:var(--ink);text-decoration:underline}
.legal__s{padding:0 0 26px;margin-bottom:28px;border-bottom:1px solid var(--rule)}
.legal__s:last-child{border-bottom:0}
.legal__s h2{display:flex;gap:14px;align-items:baseline;font:400 1.55rem/1.2 var(--display);margin:0 0 14px}
.legal__n{font:italic 400 1.1rem/1 var(--serif);color:var(--gold-3);min-width:1.4em;font-variant-numeric:oldstyle-nums}
.legal__body p,.legal__body li{font:400 16px/1.75 var(--sans);color:var(--ink-2)}
.legal__body ul{padding-left:1.1em;margin:0 0 1em}
.legal__body li{margin-bottom:.55em}
.legal__body a{color:var(--ink);font-weight:500}
.legal__body b{color:var(--ink);font-weight:500}
.legal__body table{width:100%;border-collapse:collapse;margin:6px 0 16px;font:400 15px/1.5 var(--sans)}
.legal__body th,.legal__body td{text-align:left;vertical-align:top;padding:11px 12px 11px 0;border-bottom:1px solid var(--rule)}
.legal__body th{font-weight:500;color:var(--ink)}
.legal__body tbody th{width:32%}
.prices .num{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums;padding-right:0}
.prices .muted{font:italic 400 14px var(--serif)}
@media (max-width:900px){.legal__g{grid-template-columns:1fr}.legal__toc{position:static;padding:16px 18px;box-shadow:inset 0 0 0 1px var(--rule)}}
.trader{margin:8px 0 20px;padding:0;border-top:1px solid var(--rule)}
.trader div{display:grid;grid-template-columns:180px 1fr;gap:12px;padding:10px 0;border-bottom:1px solid var(--rule);font:400 15px/1.55 var(--sans)}
.trader dt{color:var(--ink-3)}
.trader dd{margin:0;color:var(--ink);overflow-wrap:anywhere}
@media (max-width:520px){.trader div{grid-template-columns:1fr;gap:2px}}
.about__g{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.78fr);gap:clamp(28px,5vw,88px);align-items:start}
.about__txt h2{font:400 1.6rem/1.2 var(--display);margin:36px 0 10px}
.about__txt h2:first-child{margin-top:0}
.about__txt p{font:400 16px/1.75 var(--sans);color:var(--ink-2)}
.about__pic{margin:12px;position:sticky;top:120px;outline:1px solid var(--rule);outline-offset:12px}
.about__pic img,.about__pic picture{width:100%;display:block}
.about__pic img{aspect-ratio:4/5;object-fit:cover}
@media (max-width:900px){.about__g{grid-template-columns:1fr}.about__pic{position:static}}
.contact__g{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,440px);gap:clamp(28px,5vw,88px);align-items:start}
.contact__side h2{font:400 1.35rem/1.2 var(--display);margin:0 0 8px}
.contact__side .trader + h2{margin-top:30px}
@media (max-width:900px){.contact__g{grid-template-columns:1fr}}

/* =============================================================================
   MADE TO MEASURE — the one size control. It rests at the full piece; she
   reduces the width or the drop. A sketch shows her piece hung inside the
   full piece, so she can see what she is taking away.
   ========================================================================== */
.mtm__lede{font:400 14px/1.55 var(--sans);color:var(--ink-2);margin:0 0 14px}
.mtm__g{display:grid;grid-template-columns:136px minmax(0,1fr);gap:22px;align-items:center;padding:18px 20px;background:var(--leaf);box-shadow:inset 0 0 0 1px var(--rule)}
.mtm__fig{width:100%;height:auto;overflow:visible}
.mtm__ghost{fill:none;stroke:var(--ink-3);stroke-width:1.4;stroke-dasharray:5 4}
.mtm__pole{stroke:#8C7550;stroke-width:3;stroke-linecap:round}
.mtm__p{fill:var(--gr);transition:width .2s var(--ease),height .2s var(--ease),x .2s var(--ease)}
.mtm__b{fill:none;stroke:var(--iv)}
.mtm__med{fill:var(--ac)}
.mtm__t{font:500 17px var(--sans);fill:var(--ink-3)}
.mtm__f{display:grid;grid-template-columns:1fr 1fr;gap:14px 18px}
.mtm__i .cap{display:block;margin-bottom:4px;color:var(--ink-3)}
.mtm__row{display:flex;align-items:baseline;gap:8px;border-bottom:1px solid var(--ink)}
.mtm__row:focus-within{box-shadow:0 1px 0 var(--ink)}
.mtm__row input{width:100%;min-width:0;border:0;background:transparent;padding:4px 0 6px;font:400 30px/1.1 var(--display);color:var(--ink);font-variant-numeric:lining-nums tabular-nums;border-radius:0}
.mtm__row input:focus{outline:none}
.mtm__row span{font:400 14px/1 var(--sans);color:var(--ink-3)}
.mtm__lim{grid-column:1 / -1;font:400 13px/1.45 var(--sans);color:var(--ink-3);margin:0}
.mtm__chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.mtm__chip{display:inline-flex;align-items:baseline;gap:8px;min-height:40px;padding:0 14px;border:0;background:transparent;box-shadow:inset 0 0 0 1px var(--rule);font:500 13px/1 var(--sans);color:var(--ink);cursor:pointer}
.mtm__chip span{font:italic 400 13px/1 var(--serif);color:var(--ink-3)}
.mtm__chip:hover{box-shadow:inset 0 0 0 1px var(--ink-3)}
.mtm__chip[aria-pressed="true"]{box-shadow:inset 0 0 0 1.5px var(--ink);background:var(--leaf)}
.mtm__band{margin:14px 0 0;font:italic 400 15px/1.4 var(--serif);color:var(--gold-3)}
.mtm__err{margin:10px 0 0;font:400 14px/1.5 var(--sans);color:var(--verm)}
.mtm__err[hidden]{display:none}
.mtm__ack{margin-top:14px;padding:14px 16px;background:var(--leaf);box-shadow:inset 0 0 0 1px var(--gold)}
@media (max-width:520px){.mtm__g{grid-template-columns:92px minmax(0,1fr);gap:14px;padding:14px}.mtm__f{grid-template-columns:1fr 1fr;gap:10px 12px}.mtm__row input{font-size:26px}}
.mtm__chip{align-items:center;justify-content:center;white-space:nowrap;line-height:1;min-height:38px;padding:0 14px}
.mtm__chip span{line-height:1}

/* =============================================================================
   THE HERO, REAL ART. The generated frame and lattice are gone: a painting,
   cropped wide and turned blue (the blue of Iznik, Isfahan and Jingdezhen),
   bleeding off the right edge and fading into midnight behind the words.
   ========================================================================== */
.hero2{position:relative;overflow:hidden;display:flex;align-items:center;min-height:clamp(560px,82vh,840px);background:var(--night);color:var(--paper)}
.hero2__art{position:absolute;top:0;bottom:0;right:0;width:62%;background:#20386E}
.hero2__art picture,.hero2__art img{display:block;width:100%;height:100%}
.hero2__art img{object-fit:cover;object-position:50% 40%;filter:grayscale(1) contrast(1.12) brightness(.98);mix-blend-mode:luminosity}
.hero2__art::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--night) 0%,rgba(11,15,31,.74) 18%,rgba(11,15,31,.14) 52%,rgba(11,15,31,0) 70%),linear-gradient(0deg,rgba(11,15,31,.4) 0%,rgba(11,15,31,0) 28%)}
.hero2__in{position:relative;z-index:1;padding-top:clamp(56px,8vw,112px);padding-bottom:clamp(56px,8vw,112px)}
.hero2__txt{max-width:600px}
.hero2__h{font:400 clamp(2.5rem,1.4rem + 3.5vw,4.8rem)/1.02 var(--display);letter-spacing:-.01em;color:#F7F3EC;margin:18px 0 0}
.hero2__sub{font:italic 400 clamp(1.05rem,1rem + .35vw,1.26rem)/1.55 var(--serif);color:#D3CFC8;max-width:40ch;margin:22px 0 0}
.hero2 .hero__cta{justify-content:flex-start;margin-top:30px}
.hero2 .hero__cta .btn--line{color:var(--paper)}
.hero2 .hero__from{color:#ABA59B}
.hero2__cap{position:absolute;right:var(--gut);bottom:18px;z-index:1;margin:0;max-width:44ch;text-align:right;font:italic 400 13px/1.4 var(--serif);color:rgba(243,239,232,.7)}
@media (max-width:900px){
  .hero2{align-items:flex-end;min-height:clamp(600px,94vh,780px)}
  .hero2__art{width:100%}
  .hero2__art::after{background:linear-gradient(0deg,var(--night) 10%,rgba(11,15,31,.8) 46%,rgba(11,15,31,.22) 100%)}
  .hero2__cap{left:var(--gut);right:auto;top:14px;bottom:auto;text-align:left}
}
.arcade--light{margin-top:0;padding:0}
.arcade--light .tile{color:var(--ink)}
.arcade--light .tile__k{color:var(--ink-3)}
.arcade--light .tile__d{color:var(--ink-2)}
/* the rest of the generated ornament goes too: natural mounts, plain grounds */
.gal__i--leaf{border:0;border-image:none;outline:1px solid var(--rule);outline-offset:10px;margin:10px}
.drawer__panel,.edit,.quote{background:var(--night)}
@media (max-width:900px){.hero2__art::after{background:linear-gradient(0deg,var(--night) 24%,rgba(11,15,31,.88) 56%,rgba(11,15,31,.45) 100%)}}

/* =============================================================================
   THE ART, SEEDED THROUGH THE SITE. One treatment for every painting, the same
   as the hero: the blue of Iznik, Isfahan and Jingdezhen, with a faint printed
   grain so it reads as a reproduction on paper rather than a screen. Replace
   any file in /assets/img/art/ and it takes this treatment automatically.
   ========================================================================== */
:root{--grain:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .5  0 0 0 0 .5  0 0 0 0 .5  0 0 0 .9 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
.art{position:relative;margin:0;overflow:hidden;background:#20386E;isolation:isolate}
.art picture,.art img{display:block;width:100%;height:100%}
.art img{object-fit:cover;filter:grayscale(1) contrast(1.12) brightness(.98);mix-blend-mode:luminosity}
.art::after,.hero2__art::before{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;background:var(--grain);opacity:.2;mix-blend-mode:overlay}
.art__cap{position:absolute;left:var(--gut);bottom:14px;z-index:3;margin:0;max-width:60ch;font:italic 400 13px/1.4 var(--serif);color:rgba(243,239,232,.82)}
.art--band{height:clamp(280px,46vh,520px)}
.art--slim{height:clamp(170px,26vh,280px)}

/* beside the three steps to her door */
.door{border-top:0}
.door__wrap{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:clamp(28px,5vw,96px);align-items:center}
.door__art{aspect-ratio:4/5;margin:12px;outline:1px solid var(--rule);outline-offset:12px}
.door__g--stack{grid-template-columns:1fr;gap:24px}
@media (max-width:900px){.door__wrap{grid-template-columns:1fr}.door__art{aspect-ratio:3/2}}

/* the letter, above every footer, over the floral border */
.news--art{position:relative;overflow:hidden;isolation:isolate;background:var(--night);color:var(--paper);border-top:0;padding:clamp(60px,7vw,100px) 0}
.news--art .news__art{position:absolute;inset:0;z-index:-1}
.news--art .news__art::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(11,15,31,.9) 0%,rgba(11,15,31,.72) 48%,rgba(11,15,31,.5) 100%)}
.news--art .h3{color:#F7F3EC}
.news--art .lede{color:#F3EFE8}
.news--art .news__row{border-bottom-color:rgba(243,239,232,.65)}
.news--art .news__row input{color:var(--paper)}
.news--art .news__row input::placeholder{color:rgba(243,239,232,.62)}
.news--art .news__row .btn{color:var(--paper)}
.news--art .news__ok{color:#D3CFC8}
.news--art .news__ok input{accent-color:var(--gold-2)}

/* the editorial tile in the collection grid */
.edit{position:relative;overflow:hidden;isolation:isolate}
.edit .edit__art{position:absolute;inset:0;z-index:-2}
.edit::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,rgba(11,15,31,.94) 18%,rgba(11,15,31,.6) 62%,rgba(11,15,31,.3) 100%)}
/* bands sit in the same deep register as the hero: a slight darkening and a vignette */
.art{background:#1B315F}
.art img{filter:grayscale(1) contrast(1.12) brightness(.93)}
.art--band::before,.art--slim::before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:radial-gradient(120% 95% at 50% 50%,rgba(11,15,31,0) 42%,rgba(11,15,31,.5) 100%),linear-gradient(rgba(11,15,31,.16),rgba(11,15,31,.16))}

/* =============================================================================
   GALLERY ROWS. Paintings shown whole, side by side at one height, in place of
   one painting stretched across the page: a wall in a museum, not a banner.
   ========================================================================== */
.strip{--sh:clamp(230px,34vh,380px);background:var(--night);color:var(--paper);padding:clamp(36px,4.6vw,66px) 0 clamp(22px,3vw,36px)}
.strip--slim{--sh:clamp(170px,24vh,260px)}
.strip__row{display:flex;justify-content:center;align-items:flex-end;gap:clamp(16px,2.2vw,32px);overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:0 var(--gut)}
.strip__row::-webkit-scrollbar{display:none}
.strip__i{flex:0 0 auto;margin:0;display:flex;flex-direction:column;gap:12px;width:calc(var(--sh) * var(--r));scroll-snap-align:center}
.strip__pic{display:block;height:var(--sh);width:100%;box-shadow:0 18px 34px -24px rgba(0,0,0,.8)}
.strip__pic img{display:block;width:100%;height:100%;object-fit:cover}
.strip__cap{font:italic 400 13px/1.35 var(--serif);color:#D3CFC8;text-wrap:balance}
.strip__cap span{display:block;margin-top:3px;font:400 12px/1.35 var(--sans);font-style:normal;color:#9A958C}
.strip--slim .strip__cap{display:none}
.strip__note{margin:clamp(18px,2.4vw,28px) 0 0;text-align:center;font:400 12px/1.4 var(--sans);letter-spacing:.02em;color:#8F8A82}
.strip__note a{color:#CFC9BF}
@media (max-width:760px){.strip__row{justify-content:flex-start}}

/* the hero is a single painting now, not a picture element */
.hero2__art > img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 38%;filter:grayscale(1) contrast(1.12) brightness(.98);mix-blend-mode:luminosity}
.door__art img{display:block;width:100%;height:100%;object-fit:cover}

/* the camel: kept in its own colour, with a light breath of the house blue */
.savoir__pic .bfig,.about__pic .bfig{position:relative;margin:0}
.savoir__pic .bfig::after,.about__pic .bfig::after{content:"";position:absolute;inset:0;pointer-events:none;background:#284A8C;mix-blend-mode:color;opacity:.16}
.savoir__pic img,.about__pic img{filter:saturate(.9) contrast(1.02)}

/* the credits */
.credits{list-style:none;display:grid;gap:0;max-width:980px;border-top:1px solid var(--ink)}
.credits__i{display:grid;grid-template-columns:140px minmax(0,1fr);gap:24px;padding:22px 0;border-bottom:1px solid var(--rule);align-items:start}
.credits__pic{display:block;background:var(--paper-2);outline:1px solid var(--rule);outline-offset:6px;margin:6px}
.credits__pic img{display:block;width:100%;height:auto}
.credits__t{font:400 1.3rem/1.25 var(--display);margin:0 0 6px}
.credits__i p{margin:0 0 6px;font:400 15px/1.6 var(--sans);color:var(--ink-2)}
.credits__i a{color:var(--ink);font-weight:500}
@media (max-width:560px){.credits__i{grid-template-columns:90px minmax(0,1fr);gap:16px}}
.strip__row{align-items:flex-start}

/* =============================================================================
   MAKE IT THE BEDCHAMBER — the room offer on counterpane pages, in the basket
   and (one quiet line) at checkout. Clear numbers, a choice, a tick; nothing
   added unless she asks.
   ========================================================================== */
.roomo{margin-top:26px;padding:22px 22px 18px;background:var(--leaf);box-shadow:inset 0 0 0 1px var(--gold)}
.cartpg .roomo{margin-top:34px}
.roomo__k{margin:0;font:italic 400 15px/1.3 var(--serif);color:var(--gold-3)}
.roomo__h{font:400 clamp(1.5rem,1.3rem + .6vw,1.9rem)/1.15 var(--display);margin:6px 0 8px}
.roomo__d{margin:0;font:400 15px/1.55 var(--sans);color:var(--ink-2)}
.roomo__d b{color:var(--ink);font-weight:500}
.roomo__sum{display:grid;grid-template-columns:1fr 1fr;margin-top:16px;box-shadow:inset 0 0 0 1px var(--rule)}
.roomo__sum span{display:flex;flex-direction:column;gap:2px;padding:12px 14px;font:400 13px/1.3 var(--sans);color:var(--ink-3)}
.roomo__sum span + span{box-shadow:inset 1px 0 0 var(--rule);background:var(--paper)}
.roomo__sum b{font:400 1.5rem/1.1 var(--display);color:var(--ink);margin-top:4px}
.roomo__sum small{font-size:12px}
.roomo__more{margin:10px 0 0;font:italic 400 16px/1.4 var(--serif);color:var(--gold-3)}
.roomo__more b{font-style:normal;font-family:var(--sans);font-weight:500;color:var(--ink)}
.roomo__sw{border:0;padding:0;margin:18px 0 0;display:grid;gap:6px}
.roomo__sw legend{margin-bottom:10px;color:var(--ink)}
.roomo__p{position:relative;display:flex;align-items:center;gap:12px;padding:8px 10px;cursor:pointer;box-shadow:inset 0 0 0 1px transparent}
.roomo__p input{position:absolute;opacity:0;pointer-events:none}
.roomo__p:hover{box-shadow:inset 0 0 0 1px var(--rule)}
.roomo__p:has(input:checked){box-shadow:inset 0 0 0 1.5px var(--ink);background:var(--paper)}
.roomo__p:has(input:focus-visible){outline:2px solid var(--gold);outline-offset:2px}
.roomo__a{width:26px;height:36px;flex:0 0 auto;background:var(--c);-webkit-mask:var(--arch) 0 0/100% 100%;mask:var(--arch) 0 0/100% 100%}
.roomo__n{font:400 1.05rem/1.2 var(--display)}
.roomo__ack{margin-top:14px}
.roomo .btn{margin-top:16px}
.roomo__fine{margin:10px 0 0;font:400 12.5px/1.5 var(--sans);color:var(--ink-3)}
.totals__room{padding:12px 14px;background:var(--leaf);box-shadow:inset 0 0 0 1px var(--gold)}
.totals__room a{font-weight:500}
.how{margin:10px 0 0;padding-left:1.3em;display:grid;gap:6px}
.how li{padding-left:4px}
.gal__i video{display:block;width:100%;height:auto}

/* the dressed room, and the offer band */
.dressed{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(28px,5vw,96px);align-items:center}
.dressed__art{margin:12px;outline:1px solid var(--rule);outline-offset:12px}
.dressed__art img{display:block;width:100%;height:100%;object-fit:cover}
.dressed .lede{margin:16px 0 26px;max-width:52ch}
@media (max-width:900px){.dressed{grid-template-columns:1fr}}
.offer{background:var(--night);color:var(--paper);padding:clamp(56px,7vw,100px) 0;text-align:center}
.offer__in{max-width:900px}
.offer .h2{color:#F7F3EC;margin:14px auto 0;max-width:24ch}
.offer__p{margin:18px auto 28px;max-width:52ch;font:400 16px/1.65 var(--sans);color:#D3CFC8}
.buy__hook{margin:14px 0 0;font:italic 400 clamp(1.05rem,1rem + .3vw,1.2rem)/1.45 var(--serif);color:var(--gold-3)}

/* the founder's thesis */
.founder{max-width:900px;margin:0 0 clamp(40px,5vw,72px);padding:0 0 clamp(32px,4vw,52px);border-bottom:1px solid var(--rule)}
.founder__h{font:400 clamp(1.6rem,1.3rem + 1vw,2.2rem)/1.15 var(--display);margin:0 0 22px}
.founder__q{margin:0;padding-left:clamp(18px,3vw,32px);border-left:2px solid var(--gold)}
.founder__q p{margin:0 0 .9em;font:italic 400 clamp(1.15rem,1rem + .45vw,1.4rem)/1.6 var(--serif);color:var(--ink)}
.founder__q footer{margin-top:16px;font:500 11.5px/1 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--gold-3)}
.founder__now{margin:24px 0 0;font:400 15px/1.6 var(--sans);color:var(--ink-2)}
.quote blockquote{max-width:34ch}

/* worth doing: the cheapest step to free delivery, with its exact effect */
.route{margin-top:18px;padding:18px 20px;background:var(--leaf);box-shadow:inset 0 0 0 1px var(--gold);display:grid;gap:6px}
.route__k{margin:0;font:italic 400 15px/1.2 var(--serif);color:var(--gold-3)}
.route__h{margin:0;font:400 clamp(1.25rem,1.1rem + .5vw,1.6rem)/1.2 var(--display);color:var(--ink)}
.route__d{margin:0;font:400 15px/1.55 var(--sans);color:var(--ink-2)}
.route__a{display:flex;flex-wrap:wrap;align-items:center;gap:14px 18px;margin-top:8px}
.route__f{margin:0}
.buy__rule{padding:10px 14px;background:var(--leaf);box-shadow:inset 0 0 0 1px var(--gold)}
.up__sel{display:block;margin-top:8px;height:38px;padding:0 10px;border:0;box-shadow:inset 0 0 0 1px var(--rule);background:var(--paper);font:400 14px var(--sans);color:var(--ink)}
.up{display:block;cursor:default}
.up__l{display:grid;grid-template-columns:20px 58px 1fr;gap:14px;align-items:center;cursor:pointer}
.up .up__sel{margin:10px 0 0 34px;width:calc(100% - 34px)}
.ln__deal{color:var(--gold-3);font-style:italic;font-family:var(--serif)}
.btn--line-ink{background:transparent;color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}
.btn--line-ink:hover{background:var(--ink);color:var(--paper)}

/* photographs at their true proportions: on a phone every slide is the same square,
   the whole picture shown, never cropped; on a desktop each at its own shape */
.gal__i > img{display:block;height:auto}
.niche__img[src*="/assets/img/products/"]:not([src*="plate"]){object-fit:cover;aspect-ratio:4/5;height:auto}
@media (max-width:760px){
  .gal__i{aspect-ratio:1/1;align-content:center}
  .gal__i:not(.gal__i--leaf) > img{width:100%;height:100%;object-fit:contain}
  .gal__i:not(.gal__i--leaf){background:var(--paper-2)}
}

/* the date she can plan around, beside the button (Baymard: show delivery dates early) */
.eta{display:flex;gap:10px;align-items:flex-start;margin:12px 0 0;padding:11px 14px;background:var(--leaf);box-shadow:inset 0 0 0 1px var(--rule);font:400 14px/1.5 var(--sans);color:var(--ink-2)}
.eta svg{flex:0 0 auto;width:18px;height:18px;margin-top:2px;color:var(--gold-3)}
.eta b{color:var(--ink);font-weight:500}
.eta--sum{margin:14px 0 0;font-size:13px}
/* phone gallery: every slide exactly the screen's width, a true square, the whole photograph inside it */
@media (max-width:760px){
  .gal{max-width:100vw}
  .gal__i{min-width:0;width:100%;aspect-ratio:1/1;position:relative;overflow:hidden}
  .gal__i:not(.gal__i--leaf) > img,.gal__i:not(.gal__i--leaf) > video{position:absolute;inset:0;width:100%;height:100%;max-width:100%;object-fit:contain}
  .gal__i:not(.gal__i--leaf) .gal__cap{position:absolute;left:0;right:0;bottom:0;margin:0;padding:8px 12px;background:rgba(251,249,245,.92);border-top:1px solid var(--rule);font-size:12.5px}
}

/* full-size viewer */
.zoom{position:fixed;inset:0;z-index:300;background:rgba(11,15,31,.95)}
.zoom[hidden]{display:none}
.zoom__s{position:absolute;inset:0;overflow:auto;display:flex;align-items:center;justify-content:center;touch-action:pinch-zoom pan-x pan-y}
.zoom__s img{max-width:94vw;max-height:92vh;width:auto;height:auto;cursor:zoom-in;box-shadow:0 24px 60px -24px rgba(0,0,0,.8)}
.zoom.is-full .zoom__s{display:block}
.zoom.is-full .zoom__s img{max-width:none;max-height:none;cursor:zoom-out;box-shadow:none}
.zoom__x{position:fixed;top:calc(12px + env(safe-area-inset-top,0px));right:14px;z-index:2;width:46px;height:46px;border:0;background:rgba(243,239,232,.14);color:#F3EFE8;font:300 30px/1 var(--sans);cursor:pointer}
.zoom__x:focus-visible{outline:2px solid var(--gold-2);outline-offset:2px}
html.zoom-on{overflow:hidden}
.gal__hint{display:flex;align-items:center;gap:8px;margin:10px 0 0;font:400 12.5px/1.4 var(--sans);color:var(--ink-3)}
.gal__hint svg{width:12px;height:12px}
/* fits your bed */
.fits{margin-top:14px;padding:12px 14px 10px;background:var(--leaf);box-shadow:inset 0 0 0 1px var(--rule)}
.fits__h{margin:0 0 8px;font:400 14px/1.5 var(--sans);color:var(--ink-2)}
.fits__h b{color:var(--ink);font-weight:500}
.fits__t{width:100%;border-collapse:collapse;font:400 14px/1.4 var(--sans)}
.fits__t th{text-align:left;font-weight:400;color:var(--ink-2);padding:6px 0;border-top:1px solid var(--rule)}
.fits__t td{text-align:right;color:var(--ink);font-weight:500;padding:6px 0;border-top:1px solid var(--rule)}
.fits__n{margin:8px 0 0;font:400 12.5px/1.45 var(--sans);color:var(--ink-3)}

/* =============================================================================
   THE STRIP: the whole collection, one piece at a time. Alabaster cards, arch
   niches, square ink buttons: the house, not a marketplace widget.
   ========================================================================== */
.upw{margin:34px 0 0;padding:22px 0 18px;background:var(--leaf);box-shadow:inset 0 0 0 1px var(--gold)}
.upw__top{display:flex;flex-wrap:wrap;gap:16px 24px;align-items:flex-end;justify-content:space-between;padding:0 22px 16px}
.upw__h{margin:0;font:400 clamp(1.3rem,1.1rem + .6vw,1.7rem)/1.15 var(--display);color:var(--ink)}
.upw__s{margin:6px 0 0;font:400 14px/1.5 var(--sans);color:var(--ink-2);max-width:62ch}
.upw__bar{margin-top:12px;height:3px;background:var(--rule);max-width:440px}
.upw__bar i{display:block;height:100%;background:linear-gradient(90deg,var(--gold),var(--verm));transition:width .6s var(--ease)}
.upw[data-free="1"] .upw__bar i{background:var(--mala)}
.upw__ctl{display:flex;flex-wrap:wrap;gap:10px 14px;align-items:center}
.upw__tabs{display:flex;gap:4px}
.upw__tab{border:0;background:transparent;box-shadow:inset 0 0 0 1px var(--rule);padding:9px 12px;font:500 11px/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-2);cursor:pointer}
.upw__tab[aria-selected="true"]{background:var(--ink);color:var(--paper);box-shadow:none}
.upw__btns{display:flex;gap:4px}
.upw__btn{width:38px;height:38px;display:grid;place-items:center;border:0;background:transparent;box-shadow:inset 0 0 0 1px var(--ink);color:var(--ink);cursor:pointer}
.upw__btn:hover{background:var(--ink);color:var(--paper)}
.upw__i-play{display:none}
.upw.is-paused .upw__i-play{display:inline-flex}
.upw.is-paused .upw__i-pause{display:none}
.upw__track{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:2px 22px 6px;scroll-padding:0 22px}
.upw__track::-webkit-scrollbar{display:none}
.upw__track:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.upw__c{flex:0 0 clamp(196px,20vw,232px);scroll-snap-align:start;display:flex;flex-direction:column;background:var(--paper);box-shadow:inset 0 0 0 1px var(--rule)}
.upw__c[hidden]{display:none}
.upw__pic{display:block;padding:14px 16px 0;background:var(--paper-2)}
.upw__pic .niche{width:100%;background:var(--niche,var(--g))}
.upw__b{display:flex;flex-direction:column;gap:4px;flex:1 1 auto;padding:12px 14px 14px}
.upw__k{margin:0;font:italic 400 13px/1.2 var(--serif);color:var(--gold-3)}
.upw__n{margin:0;font:400 1.1rem/1.2 var(--display)}
.upw__n a{color:var(--ink);text-decoration:none}
.upw__d{flex:1 1 auto;margin:0;font:400 12.5px/1.4 var(--sans);color:var(--ink-3)}
.upw__f{margin:8px 0 0}
.upw__add{width:100%;display:flex;justify-content:space-between;align-items:center;gap:8px;border:0;background:var(--ink);color:var(--paper);padding:11px 12px;font:500 10.5px/1.25 var(--sans);letter-spacing:.12em;text-transform:uppercase;text-align:right;cursor:pointer}
.upw__add:hover{background:#2A2520}
.upw__add:disabled{opacity:.75;cursor:progress}
.upw__p{font:400 16px/1 var(--display);letter-spacing:0;text-transform:none;white-space:nowrap}
.upw__c.is-added .upw__add{background:var(--mala)}
@media (max-width:760px){
  .upw__top{padding:0 16px 14px}
  .upw__track{padding:2px 16px 6px;scroll-padding:0 16px}
  .upw__c{flex-basis:64vw}
  .upw__ctl{width:100%;justify-content:space-between}
}
/* the slide-up panel after Add to basket */
.addsh{position:fixed;inset:0;z-index:250;display:flex;align-items:flex-end;justify-content:center}
.addsh[hidden]{display:none}
.addsh__bg{position:absolute;inset:0;background:rgba(11,15,31,.55)}
.addsh__in{position:relative;width:min(1120px,100%);max-height:92vh;overflow:auto;background:var(--paper);padding:20px 0 calc(18px + env(safe-area-inset-bottom,0px));box-shadow:0 -20px 50px -20px rgba(0,0,0,.5);animation:addshUp .35s var(--ease)}
@keyframes addshUp{from{transform:translateY(28px);opacity:0}to{transform:none;opacity:1}}
@media (prefers-reduced-motion:reduce){.addsh__in{animation:none}}
.addsh__top{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:0 22px}
.addsh__k{margin:0;font:500 11px/1 var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--mala)}
.addsh__t{margin:8px 0 0;font:400 clamp(1.3rem,1.1rem + .6vw,1.7rem)/1.15 var(--display)}
.addsh__x{flex:0 0 auto;width:44px;height:44px;border:0;background:transparent;box-shadow:inset 0 0 0 1px var(--rule);font:300 26px/1 var(--sans);color:var(--ink);cursor:pointer}
.addsh .upw{margin:16px 0 0;box-shadow:none;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}
.addsh__a{display:flex;flex-wrap:wrap;gap:12px 16px;align-items:center;padding:16px 22px 0}
html.addsh-on{overflow:hidden}
/* Buy now, the pack, a clear error */
.buy__now{width:100%;margin-top:10px;padding:15px 18px;border:0;background:transparent;box-shadow:inset 0 0 0 1px var(--ink);color:var(--ink);font:500 12px/1 var(--sans);letter-spacing:.18em;text-transform:uppercase;cursor:pointer}
.buy__now:hover{background:var(--ink);color:var(--paper)}
.buy__pack{margin:8px 0 0;font:400 14px/1.5 var(--sans);color:var(--ink-2)}
.buy__pack b{color:var(--ink);font-weight:500}
.buy__err{margin:0 0 12px;padding:10px 12px;background:#FBF3F1;box-shadow:inset 3px 0 0 var(--verm);font:400 14px/1.45 var(--sans);color:var(--ink)}
.co-strip{padding-top:6px;padding-bottom:12px}

/* =============================================================================
   THE ORDER PAGE (26 Sep), in the house: alabaster, ink, a hairline of gold.
   The form in two numbered sections; the summary sticky beside it; on a phone
   the total comes first, so she never scrolls to find the price.
   ========================================================================== */
.co .crumbs{padding-top:18px}
.co__steps{display:flex;flex-wrap:wrap;list-style:none;margin:14px 0 0;padding:0;font:500 11px/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-3)}
.co__steps li{display:flex;align-items:center;padding:4px 0}
.co__steps li + li::before{content:"";width:28px;height:1px;background:var(--rule);margin:0 12px}
.co__steps .is-on{color:var(--ink)}
.co__steps .is-done a{color:var(--ink-2)}
.co__head{padding:18px 0 4px}
.co__h1{margin:0}
.co__lede{margin:10px 0 0;max-width:62ch;font:italic 400 clamp(1rem,.95rem + .3vw,1.15rem)/1.5 var(--serif);color:var(--ink-2)}
.co__total-m{display:none}
.co__g{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.85fr);gap:clamp(28px,4vw,64px);align-items:start;padding:10px 0 clamp(56px,7vw,96px)}
.co__alert{margin:0 0 18px;padding:12px 14px;background:#FBF3F1;box-shadow:inset 3px 0 0 var(--verm);font:400 14.5px/1.5 var(--sans);color:var(--ink)}
.co__alert a{color:var(--ink);font-weight:500}
.co__sec{padding:26px 0 8px;border-top:1px solid var(--ink)}
.co__sec + .co__sec{margin-top:18px}
.co__h{display:flex;align-items:center;gap:12px;margin:0 0 18px;font:400 clamp(1.4rem,1.2rem + .6vw,1.8rem)/1.15 var(--display)}
.co__h span{display:grid;place-items:center;flex:0 0 auto;width:30px;height:30px;box-shadow:inset 0 0 0 1px var(--gold);font:500 12px var(--sans);color:var(--gold-3)}
.co__f{margin:0 0 16px}
.co__row2{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}
.co__l{display:block;margin:0 0 6px;font:500 11px/1.3 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-2)}
.co__l em{margin-left:4px;font-style:normal;font-weight:400;letter-spacing:.04em;text-transform:none;color:var(--ink-3)}
.co__i{display:block;width:100%;height:50px;padding:0 14px;border:0;border-radius:0;background:#fff;box-shadow:inset 0 0 0 1px var(--rule);font:400 16px/1 var(--sans);color:var(--ink);-webkit-appearance:none;appearance:none}
.co__i:focus{outline:none;box-shadow:inset 0 0 0 1.5px var(--ink),0 0 0 3px rgba(162,134,90,.2)}
.co__i[aria-invalid="true"]{box-shadow:inset 0 0 0 1.5px var(--verm)}
.co__i--pc{text-transform:uppercase}
.co__fixed{display:flex;align-items:center;height:50px;margin:0;padding:0 14px;background:var(--paper-2);font:400 16px var(--sans);color:var(--ink-2)}
.co__hint{margin:6px 0 0;font:400 13px/1.45 var(--sans);color:var(--ink-3)}
.co__hint--top{margin:-6px 0 16px;max-width:62ch}
.co__e{margin:6px 0 0;font:500 13px/1.4 var(--sans);color:var(--verm)}
.co__acks{display:grid;gap:10px}
.co__ack{display:grid;grid-template-columns:22px 1fr;gap:12px;align-items:start;padding:14px 16px;background:var(--leaf);box-shadow:inset 0 0 0 1px var(--rule);font:400 14.5px/1.55 var(--sans);color:var(--ink-2);cursor:pointer}
.co__ack:has(input:checked){box-shadow:inset 0 0 0 1px var(--ink)}
.co__ack.is-bad{box-shadow:inset 0 0 0 1.5px var(--verm)}
.co__ack input{width:20px;height:20px;margin:2px 0 0;accent-color:var(--ink)}
.co__ack a{color:var(--ink)}
.co__ack--opt{background:transparent}
.co__pay{display:flex;justify-content:space-between;align-items:center;width:100%;margin:24px 0 0;padding:20px 22px;border:0;background:var(--ink);color:var(--paper);font:500 13px/1 var(--sans);letter-spacing:.2em;text-transform:uppercase;cursor:pointer}
.co__pay b{font:400 22px/1 var(--display);letter-spacing:0;text-transform:none}
.co__pay:hover{background:#2A2520}
.co__pay:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.co__trust{display:grid;gap:10px;list-style:none;margin:16px 0 0;padding:0}
.co__trust li{display:flex;gap:10px;align-items:flex-start;font:400 13.5px/1.5 var(--sans);color:var(--ink-2)}
.co__trust svg{flex:0 0 auto;width:18px;height:18px;margin-top:1px;color:var(--gold-3)}
.co__trust b{color:var(--ink);font-weight:500}
.co__back{margin:18px 0 0;font:400 13px var(--sans)}
.co__back a{color:var(--ink-2)}
.co__sum{position:sticky;top:112px;padding:22px 22px 18px;background:var(--leaf);box-shadow:inset 0 0 0 1px var(--rule)}
.co__sum-k{margin:0 0 12px;font:500 11px/1 var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--ink-3)}
.co__lines{display:grid;gap:12px;list-style:none;margin:0 0 12px;padding:0}
.co__line{display:grid;grid-template-columns:58px 1fr auto;gap:12px;align-items:center}
.co__thumb{display:block;width:58px;height:72px;overflow:hidden;background:var(--g,var(--paper-2));box-shadow:inset 0 0 0 1px var(--rule)}
.co__thumb img{display:block;width:100%;height:100%;padding:6px;object-fit:contain}
.co__lt b{display:block;font:400 1.05rem/1.25 var(--display);color:var(--ink)}
.co__lt small{display:block;margin-top:3px;font:400 12.5px/1.4 var(--sans);color:var(--ink-3)}
.co__lp{font:400 15px var(--sans);color:var(--ink);white-space:nowrap}
.co__r{display:flex;justify-content:space-between;padding:9px 0;border-top:1px solid var(--rule);font:400 14.5px var(--sans);color:var(--ink-2)}
.co__r--big{padding:14px 0 4px;border-top:1px solid var(--ink);font:400 1.5rem/1 var(--display);color:var(--ink)}
.co__note{margin:12px 0 0;font:400 12.5px/1.5 var(--sans);color:var(--ink-3)}
.co__note b{color:var(--ink-2);font-weight:500}
.co__note--seller a{color:var(--ink-2)}
@media (max-width:900px){
  .co__g{grid-template-columns:1fr}
  .co__sum{position:static}
  .co__total-m{display:grid;grid-template-columns:1fr auto;gap:2px 12px;align-items:center;margin:16px 0 0;padding:12px 14px;background:var(--leaf);box-shadow:inset 0 0 0 1px var(--rule)}
  .co__total-m span{font:500 11px/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-3)}
  .co__total-m b{grid-row:span 2;font:400 1.45rem/1 var(--display);color:var(--ink)}
  .co__total-m small{font:400 12.5px var(--sans);color:var(--ink-3)}
  .co__row2{grid-template-columns:1fr}
  .co__steps{font-size:10px;letter-spacing:.12em}
  .co__steps li + li::before{width:14px;margin:0 8px}
}
/* the confirmation */
.co--done .co__g{padding-top:18px}
.co__kick{margin:0 0 8px;font:500 11px/1 var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--mala)}
.co__next{display:grid;gap:0;list-style:none;margin:28px 0 0;padding:0;border-top:1px solid var(--ink)}
.co__next li{display:grid;grid-template-columns:30px 1fr;gap:14px;padding:16px 0;border-bottom:1px solid var(--rule)}
.co__next li > span{display:grid;place-items:center;width:30px;height:30px;box-shadow:inset 0 0 0 1px var(--gold);font:500 12px var(--sans);color:var(--gold-3)}
.co__next b{display:block;font:400 1.15rem/1.3 var(--display);color:var(--ink)}
.co__next p{margin:4px 0 0;font:400 14px/1.5 var(--sans);color:var(--ink-2)}
.co__window{margin:26px 0 0;padding:20px 22px;background:var(--leaf);box-shadow:inset 0 0 0 1px var(--gold)}
.upw[data-ctx="parcel"] .upw__bar{display:none}
