*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:20px}body{margin:0;color:#2d2824;background:#fffdfb;font-family:Arial,Helvetica,sans-serif;font-size:13px}a{color:inherit;text-decoration:none}button,input{font:inherit}button,a{ -webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}img{display:block;width:100%;object-fit:cover}h1,h2,h3,p{margin:0}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid #956643;outline-offset:4px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.wrap{max-width:1440px;margin:auto;padding-left:5%;padding-right:5%}header{background:#fffdfb}.topbar{height:86px;display:flex;align-items:center;gap:40px}.brand{display:flex;align-items:center;gap:12px;min-width:235px}.brand-icon{font-size:39px;color:#966742}.brand strong{font-family:Georgia,serif;font-size:26px;letter-spacing:4px;display:inline-block;position:relative}.brand strong small{font:6px Arial;letter-spacing:2px;margin-left:10px}.brand em{display:block;font-size:9px;font-style:normal;color:#837c75;margin-top:4px}.search{display:flex;flex:1;max-width:620px;border:1px solid #e5dfd8;border-radius:30px;overflow:hidden;background:white;height:41px}.search input{border:0;background:none;min-width:0;width:100%;padding:0 18px;font-size:11px;outline:none}.search button{border:0;background:#91633f;color:#fff;width:47px;border-radius:50%;font-size:26px;flex-shrink:0}.actions{margin-left:auto;display:flex;gap:26px}.actions a{font-size:9px;text-align:center;position:relative;white-space:nowrap}.actions span{display:block;font-size:25px;line-height:1.2;margin-bottom:4px}.actions b{position:absolute;right:0;top:-2px;font-size:8px;border-radius:50%;background:#bd9672;width:13px;height:13px;line-height:13px}.menu{display:none}nav{height:46px;display:flex;align-items:center;gap:33px;border-top:1px solid #f0ebe6;font-size:11px}nav a{height:100%;display:flex;align-items:center;white-space:nowrap}nav a.current{color:#906342;border-bottom:2px solid #906342}.all-categories{margin-right:30px;font-weight:600}.hero{background:#eee1d1;overflow:hidden}.hero-inner{display:grid;grid-template-columns:37% 63%;align-items:center;position:relative;min-height:440px;padding-right:0;max-width:1600px}.hero-copy{position:relative;z-index:1;padding:35px 0}.eyebrow{font-size:10px;letter-spacing:1.2px;font-weight:600;color:#996e4d}.hero h1{font-size:clamp(35px,3.5vw,55px);line-height:1.03;letter-spacing:-1.7px;margin:16px 0}.hero h1 span{color:#91633f}.hero p{color:#696055;font-size:12px;line-height:1.6;margin-bottom:24px}.btn{display:inline-flex;align-items:center;justify-content:space-between;gap:26px;background:#90633f;color:white;border-radius:25px;padding:13px 22px;font-size:11px;border:1px solid transparent}.btn:hover{background:#714a2d}.hero-points{display:flex;gap:17px;margin-top:31px;font-size:8px;color:#5e5549}.hero-film{position:relative;align-self:stretch;min-width:0;mask-image:linear-gradient(90deg,transparent,#000 9%)}.hero-film video{display:block;width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:center}.film-toggle{position:absolute;right:16px;bottom:16px;background:#fffdfbe6;color:#795237;border:1px solid #fff8;border-radius:20px;padding:7px 12px;font-size:10px}.section-title{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:23px}.section-title h2{font-size:25px;letter-spacing:-.6px;margin-top:7px}.section-title>a{font-size:10px}.categories-section{padding-top:34px;padding-bottom:36px}.categories{display:grid;grid-template-columns:repeat(6,1fr);gap:15px}.category{border:1px solid #eee8e1;border-radius:5px;overflow:hidden;background:white;box-shadow:0 2px 5px #30201005;transition:transform .2s}.category:hover{transform:translateY(-3px)}.category>img{height:135px}.category>div{padding:14px 12px 10px;position:relative;min-height:91px}.category h3{font-size:12px;margin-bottom:6px}.category p{font-size:10px;color:#91877e;line-height:1.5;max-width:130px}.category span{display:block;text-align:right;color:#936747;margin-top:6px}.feature-banner{background:#efe3d7;display:grid;grid-template-columns:34% 48% 18%;align-items:center;max-width:1600px;margin:auto;min-height:250px}.feature-banner>img{height:250px;object-position:center 32%;mask-image:linear-gradient(90deg,#000 65%,transparent)}.feature-banner>div:nth-child(2){padding:25px 20px}.feature-banner h2{font-size:27px;line-height:1.15;letter-spacing:-.6px;margin:10px 0}.feature-banner p{font-size:11px;color:#7b6e61;line-height:1.6;margin-bottom:17px}.seal{text-align:center;color:#92633f;font-family:Georgia,serif;font-style:italic;transform:rotate(8deg);border:1px solid #bd9b7d;border-radius:50%;width:135px;height:135px;padding-top:28px;font-size:16px}.seal strong{font-style:normal;font-size:24px}.collection{padding-top:36px;padding-bottom:26px}#filters{display:flex;gap:8px}#filters button{background:none;border:0;border-radius:20px;padding:8px 15px;font-size:10px}#filters button.active{background:#8c603e;color:white}.results-line{display:flex;justify-content:space-between;margin:-7px 0 16px;font-size:10px;color:#918476}#clear-search{border:0;background:none;color:#8c603e;font-size:10px}.products{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.product{position:relative;border:1px solid #eee8e2;border-radius:5px;padding:10px;background:white;box-shadow:0 2px 5px #30201004}.product-open{display:block;border:0;background:none;text-align:left;padding:0;width:100%}.product .photo{overflow:hidden;border-radius:3px;background:#f7f3ee;position:relative}.product img{aspect-ratio:1;transition:transform .4s}.product:hover img{transform:scale(1.035)}.product .tag{position:absolute;left:9px;top:9px;background:#bd9978;color:white;border-radius:12px;font-size:8px;padding:4px 8px}.favorite{position:absolute;right:14px;top:14px;border:0;background:#ffffffdc;border-radius:50%;font-size:21px;width:29px;height:29px;line-height:27px;z-index:1}.favorite.selected{color:#8c603e}.product h3{font-size:12px;margin:13px 3px 6px}.product small{display:block;font-size:9px;color:#a18c76;margin:0 3px 12px}.product-cta{display:block;background:#936643;color:white;border-radius:5px;padding:10px;text-align:center;font-size:10px}.note{font-size:10px;color:#998a7a;text-align:center;margin:24px 0 0}#empty{padding:40px;text-align:center;color:#867767}.journal{padding-top:20px;padding-bottom:35px}.gallery{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}.gallery button{padding:0;border:0;background:none;border-radius:4px;overflow:hidden}.gallery img{aspect-ratio:1;transition:transform .4s}.gallery button:hover img{transform:scale(1.04)}.benefits{background:#f6f0e9}.benefits>.wrap{display:grid;grid-template-columns:repeat(4,1fr);padding-top:24px;padding-bottom:24px;gap:22px}.benefits>.wrap>div{display:flex;align-items:center;gap:12px}.benefits i{width:43px;height:43px;display:grid;place-items:center;background:#eee2d5;border-radius:50%;font-size:24px;font-style:normal;flex-shrink:0}.benefits b{font-size:11px;font-weight:500}.benefits small{display:block;font-size:9px;color:#8d8073;margin-top:5px}footer{padding:40px 5% 20px;background:#2a221d;color:#f6f0e9;display:grid;grid-template-columns:2fr 1fr 1fr;gap:25px}.logo{font-family:Georgia,serif;letter-spacing:4px;font-size:28px;display:inline-block}.logo small{display:block;font:6px Arial;letter-spacing:3px;text-align:center;margin-top:4px}footer p{font-size:11px;line-height:1.8;color:#c8baad;margin-top:15px}footer b{display:block;font-size:11px;margin-bottom:17px}footer>div>a:not(.logo){display:block;font-size:10px;margin:10px 0}.footer-bottom{grid-column:1/-1;display:flex;justify-content:space-between;border-top:1px solid #ffffff20;padding-top:18px;font-size:9px;color:#b5a495}.footer-bottom span:last-child{margin-left:auto}dialog{border:0;padding:0;max-width:850px;width:90%;background:#fffdfb;border-radius:10px;overflow:hidden}dialog[open]{display:grid;grid-template-columns:1fr 1fr}dialog::backdrop{background:#241b14c9}dialog>img{height:520px;object-fit:contain;background:#f2e9e0}dialog>div{padding:65px 30px 30px}dialog h2{font-size:27px;margin:15px 0}dialog p{font-size:12px;line-height:1.8;margin-bottom:25px}.close{position:absolute;right:12px;top:10px;background:#fff9;border:0;border-radius:50%;font-size:25px;width:33px;height:33px}@media(max-width:1000px){.topbar{gap:20px}.brand{min-width:190px}.actions{gap:15px}nav{gap:22px}.all-categories{margin-right:0}.hero h1{font-size:38px}.hero-points{gap:10px;flex-wrap:wrap}.hero-inner{min-height:390px}.categories{gap:10px}.category>img{height:110px}.category h3{font-size:10px}.seal{width:105px;height:105px;font-size:13px;padding-top:20px}.seal strong{font-size:20px}}@media(max-width:700px){.topbar{height:auto;padding-top:14px;padding-bottom:13px;flex-wrap:wrap;gap:14px}.brand{min-width:0;flex:1}.brand strong{font-size:24px}.brand-icon{font-size:31px}.brand em{font-size:8px}.actions{gap:17px}.actions a{font-size:8px}.actions span{font-size:21px}.menu{display:block;border:0;background:none;font-size:23px}.search{order:4;max-width:none;flex-basis:100%;height:37px}.search button{width:40px}.search input{font-size:11px}nav{height:auto;display:none;padding-top:12px;padding-bottom:16px;flex-wrap:wrap;gap:18px;font-size:11px}nav.open{display:flex}nav a{height:25px}.all-categories{width:100%}.hero-inner{display:flex;flex-direction:column;padding:0;min-height:0}.hero-film{order:0;position:relative;aspect-ratio:16/9;width:100%;min-height:0;mask-image:none}.hero-film video{position:absolute;width:100%;height:100%;object-fit:contain}.hero-copy{order:1;padding:24px 6% 28px;width:100%}.hero h1{font-size:37px;letter-spacing:-1.2px;margin:11px 0}.hero h1 br:nth-child(2){display:none}.hero p{font-size:12px;margin-bottom:18px}.hero-points{margin-top:21px;gap:18px}.categories-section{padding-top:26px;padding-bottom:26px}.section-title{gap:15px;align-items:start;margin-bottom:18px}.section-title h2{font-size:22px}.section-title>a{font-size:9px;text-align:right;max-width:100px;padding-top:15px}.eyebrow{font-size:9px}.categories{grid-template-columns:repeat(3,1fr);gap:11px}.category>img{height:auto;aspect-ratio:1}.category>div{padding:10px;min-height:88px}.category h3{font-size:10px}.category p{font-size:9px}.feature-banner{grid-template-columns:33% 67%;min-height:230px}.feature-banner>img{height:100%;min-height:230px}.feature-banner>div:nth-child(2){padding:22px 15px}.feature-banner h2{font-size:23px}.feature-banner p{font-size:10px}.feature-banner p br{display:none}.feature-banner .btn{font-size:10px;padding:11px 15px}.seal{display:none}.collection{padding-top:28px}.collection .section-title{display:block}#filters{margin-top:16px;gap:5px}#filters button{padding:7px 13px}.products{grid-template-columns:1fr 1fr;gap:11px}.product{padding:7px}.product h3{font-size:11px;line-height:1.4}.product small{font-size:8px}.product-cta{font-size:9px;padding:9px 5px}.favorite{right:9px;top:9px;font-size:20px}.gallery{grid-template-columns:repeat(3,1fr);gap:8px}.benefits>.wrap{grid-template-columns:1fr 1fr;gap:20px 12px}.benefits>.wrap>div{gap:8px}.benefits i{width:34px;height:34px;font-size:20px}.benefits b{font-size:10px}.benefits small{font-size:8px}footer{grid-template-columns:1fr 1fr;padding-top:30px}footer>div:first-child{grid-column:1/-1}.footer-bottom{font-size:8px;line-height:1.8;gap:15px}.footer-bottom span:last-child{text-align:right}dialog[open]{grid-template-columns:1fr}dialog{max-height:90svh;overflow:auto}dialog>img{height:40svh}dialog>div{padding:25px}dialog h2{font-size:23px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Official identity with one compact navigation row; no search banner. */
header.compact-header{height:78px;display:flex;align-items:center;gap:24px;background:#fffdfb}.official-brand{min-width:74px;flex-shrink:0}.official-brand img{width:74px;height:74px;object-fit:contain}.compact-header nav{flex:1;border:0;padding:0;margin:0;height:78px;justify-content:flex-end;gap:25px;font-size:10px}.official-footer img{width:90px;height:90px;object-fit:contain;border-radius:4px}@media(max-width:1000px){.compact-header nav{gap:16px;font-size:9px}.compact-header{gap:12px!important}}@media(max-width:700px){header.compact-header{height:auto;min-height:65px;position:relative;flex-wrap:wrap;justify-content:space-between;gap:0;padding-top:0;padding-bottom:0}.official-brand{min-width:62px;flex:0 0 auto}.official-brand img{height:62px;width:62px}.compact-header .menu{margin-left:auto}.compact-header nav{display:none;flex:0 0 100%;height:auto;justify-content:flex-start;padding:10px 0 18px;gap:15px 22px;font-size:11px}.compact-header nav.open{display:flex}.compact-header nav a{height:25px}}

/* Maison ASATI: a discreet masthead and an immersive film. */
:root{--gold:#c2a06c;--ink:#241e18}body{background:#faf8f4;color:var(--ink)}header.compact-header{height:48px;min-height:48px;gap:22px;padding-top:0;padding-bottom:0;background:#fffdfa;max-width:none;border-bottom:1px solid #d7cbb847}.official-brand{min-width:46px}.official-brand img{height:46px;width:46px}.compact-header nav{height:48px;font-size:9px;letter-spacing:1.3px;text-transform:uppercase;gap:28px}.compact-header nav a.current{border-bottom:1px solid #b5915f;color:#8b6b40}.compact-header .menu{font-size:20px}.hero{height:calc(100svh - 48px);min-height:0;background:#221c16;position:relative;overflow:hidden}.hero-inner{height:100%;min-height:0;max-width:none;width:100%;padding:0;display:block;position:relative}.hero-film{position:absolute;inset:0;width:100%;height:100%;mask-image:none;min-height:0}.hero-film video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}.hero-inner:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,#17130e9c 0%,#17130e38 44%,transparent 70%),linear-gradient(0deg,#17130ec4,transparent 65%);z-index:1}.hero-copy{position:absolute;left:6%;bottom:9%;top:auto;width:47%;padding:0;z-index:2;color:#fffaf0}.hero .eyebrow{color:#e0c89f;font-size:9px;font-weight:400;letter-spacing:3px}.hero h1{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:clamp(43px,5.8vw,84px);line-height:1.02;letter-spacing:-1.7px;margin:20px 0}.hero h1 span{color:#e5cfac}.hero p{color:#e5ddd2;font-size:12px;line-height:1.8;letter-spacing:.2px;margin-bottom:25px}.hero .btn{border:1px solid #e0caa0;background:#f8f2e8;color:#2f261c;border-radius:0;padding:16px 25px;letter-spacing:1.2px;font-size:9px;text-transform:uppercase}.hero .btn:hover{background:#c2a06c}.hero-points{color:#e4d7c1;letter-spacing:.7px;font-size:8px;gap:23px;margin-top:28px}.film-toggle{z-index:3;right:25px;bottom:25px;background:#201a133b;border:1px solid #fff8;color:#fff7e8;border-radius:0;padding:8px 13px;font-size:9px;letter-spacing:.8px}.section-title h2,.feature-banner h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.4px}.section-title h2{font-size:31px}.categories-section{padding-top:46px;padding-bottom:46px}.category{border-radius:0;box-shadow:none}.category>img{height:160px}.feature-banner{background:#e8ddce}.feature-banner h2{font-size:33px}.seal{color:#94744c;border-color:#b99b74}.collection{padding-top:45px}.product{border-radius:0;box-shadow:none;background:#fffdfa;border-color:#e8e1d6}.product-cta{border-radius:0;background:#6e5942;font-size:9px;letter-spacing:.8px}.product .tag{background:#ad9271}.btn{border-radius:0;background:#766047}.benefits{background:#f0ebe3}footer{background:#211b16}.gallery button{border-radius:0}@media(max-width:1000px){.compact-header nav{gap:17px;font-size:8px;letter-spacing:.8px}.hero-copy{width:54%}.hero h1{font-size:clamp(42px,6.4vw,65px)}}@media(max-width:700px){header.compact-header{height:44px;min-height:44px;flex-wrap:nowrap}.official-brand{min-width:42px}.official-brand img{height:42px;width:42px}.compact-header nav{position:absolute;top:44px;left:0;right:0;width:100%;background:#fffdfa;height:auto;z-index:10;padding:18px 6%;border-bottom:1px solid #e5dacb;gap:15px 22px;font-size:10px}.hero{height:calc(100svh - 44px);min-height:0}.hero-inner{height:100%;display:block;padding:0}.hero-film{position:absolute;inset:0;aspect-ratio:auto;width:100%;height:100%}.hero-film video{position:absolute;height:100%;width:100%;aspect-ratio:auto;object-fit:cover;object-position:56% center}.hero-copy{position:absolute;left:7%;bottom:7%;top:auto;width:86%;padding:0}.hero h1{font-size:clamp(36px,9vw,50px);line-height:1.04;letter-spacing:-1px;margin:16px 0}.hero h1 br:nth-child(2){display:initial}.hero .eyebrow{font-size:8px;letter-spacing:2.4px}.hero p{font-size:11px;margin-bottom:20px}.hero .btn{font-size:8px;padding:14px 19px}.hero-points{font-size:7px;gap:15px;margin-top:22px}.film-toggle{right:13px;bottom:13px;font-size:8px;padding:6px 9px}.hero-inner:after{background:linear-gradient(0deg,#17130edb,transparent 90%)}.category>img{height:auto}.section-title h2{font-size:26px}.feature-banner h2{font-size:26px}}@media(max-height:600px) and (min-width:701px){.hero-copy{bottom:7%;width:50%}.hero h1{font-size:42px;margin:12px 0}.hero-points{display:none}.hero p{margin-bottom:15px}}

/* Quiet, evenly spaced navigation for the compact masthead. */
.compact-header nav {
  justify-content: center;
  gap: clamp(14px, 1.8vw, 28px);
  font: 500 12px Manrope, Arial, sans-serif;
  letter-spacing: .1px;
  text-transform: none;
  color: #463c32;
}
.compact-header nav a { transition: color .18s ease; }
.compact-header nav a:hover,
.compact-header nav a:focus-visible { color: #805b2d; }
.compact-header nav a.current {
  color: #805b2d;
  border-bottom: 1px solid #b49368;
}
@media (min-width: 901px) and (max-width: 1150px) {
  .compact-header nav { gap: 14px; font-size: 11px; }
}
@media (max-width: 900px) {
  .compact-header nav { gap: 14px 24px; letter-spacing: .1px; }
}

.product-price{display:block;font-size:14px;color:#382a20;margin:0 3px 12px}.product-price[hidden]{display:none}#filters{flex-wrap:wrap}#view-price{font-size:17px}

.gallery-collection{margin-top:18px}.gallery-collection summary{cursor:pointer;width:fit-content;color:#63472f;font-weight:600}.gallery-collection .gallery{margin-top:14px}

#cart-trigger {
  flex-shrink: 0;
  min-height: 32px;
  padding: 3px 0 3px 18px;
  border: 0;
  border-left: 1px solid #e1d7ca;
  background: transparent;
  font: 500 12px Manrope, Arial, sans-serif;
}
#cart-count {
  display: inline-grid;
  place-items: center;
  min-width: 17px;
  height: 17px;
  padding: 0 3px;
  margin-left: 4px;
  background: #eee8de;
  color: #6e5942;
  border-radius: 50%;
  font-size: 10px;
}
.product .add-to-cart { width: 100%; border: 0; margin-top: 3px; }
.product .add-to-cart:hover { background: #51402e; }
#view-add { margin-bottom: 10px; }
#view-add[hidden] { display: none; }
#cart-dialog {
  width: min(95vw, 490px);
  max-height: 90svh;
  padding: 23px;
  overflow: auto;
  border-radius: 0;
  color: #2d2824;
}
#cart-dialog[open] { display: block; }
.cart-heading { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.cart-heading h2 { font-family: Georgia, serif; font-weight: 400; font-size: 28px; }
#cart-close {
  width: 38px;
  height: 38px;
  border: 1px solid #e5d8c9;
  background: transparent;
  font-size: 23px;
}
#cart-empty { margin-top: 18px; }
#cart-lines { margin: 15px 0; padding: 0; list-style: none; }
.cart-line {
  display: grid;
  grid-template-columns: 58px minmax(0, 1fr);
  align-items: start;
  gap: 13px;
  padding: 12px 0;
  border-top: 1px solid #e5d8c9;
}
.cart-line img { width: 58px; height: 58px; object-fit: cover; }
.cart-line strong { overflow-wrap: anywhere; }
.cart-unit { display: block; margin: 4px 0 6px; color: #70543b; font-size: 12px; }
.cart-controls { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; }
.cart-controls button { min-width: 33px; min-height: 32px; border: 1px solid #e5d8c9; background: #faf6f0; }
.cart-controls button[data-action="remove"] { border-color: transparent; color: #795031; text-decoration: underline; }
.cart-controls button:disabled { opacity: .5; cursor: default; }
.cart-quantity { min-width: 22px; text-align: center; }
#cart-summary { border-top: 1px solid #e5d8c9; padding-top: 15px; }
.cart-totals { display: flex; justify-content: space-between; align-items: baseline; gap: 10px; font-size: 14px; }
#cart-note { font-size: 12px; color: #6c6055; margin: 9px 0 15px; }
#cart-whatsapp { width: 100%; justify-content: center; }
#cart-delivery label { display: block; margin: 14px 0; font-weight: 600; }
#cart-delivery input {
  display: block;
  width: 100%;
  margin-top: 6px;
  padding: 11px;
  border: 1px solid #d4c4b2;
  background: #fffdfb;
  color: inherit;
}

/* Editorial layouts for the catalogue, categories and visual journal. */
.categories-section, .collection, .journal {
  padding-top: clamp(42px, 6vw, 84px);
  padding-bottom: clamp(36px, 5vw, 68px);
}
.categories-section .section-title,
.collection .section-title,
.journal .section-title { margin-bottom: clamp(22px, 3vw, 38px); }
.categories-section .section-title h2,
.collection .section-title h2,
.journal .section-title h2 { font-size: clamp(30px, 4.3vw, 48px); }
.categories-section .categories,
.collection .products,
.journal #gallery {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(20px, 3vw, 44px);
}
.categories-section .category {
  border: 0;
  border-bottom: 1px solid #dacbb9;
  background: transparent;
  box-shadow: none;
}
.categories-section .category > img { height: auto; aspect-ratio: 3 / 2; }
.category-pochette-photo {
  position: relative;
  display: block;
  aspect-ratio: 3 / 2;
  overflow: hidden;
  background: #f2f2f1;
}
.category-pochette-photo img {
  position: absolute;
  bottom: 0;
  height: 135%;
  object-fit: contain;
}
.categories-section .category > div { min-height: 0; padding: 16px 36px 18px 0; }
.categories-section .category h3 {
  font: normal clamp(19px, 2.1vw, 27px)/1.15 Georgia, serif;
}
.categories-section .category p { max-width: none; font-size: 12px; color: #685b4e; }
.categories-section .category span {
  position: absolute;
  right: 1px;
  top: 11px;
  font-size: 18px;
  transition: transform .22s ease;
}
.categories-section .category:hover span { transform: translateX(4px); }
.collection .product {
  display: flex;
  flex-direction: column;
  padding: 0;
  border: 0;
  background: transparent;
}
.collection .product-open { flex: 1; }
.collection .product .photo { border-radius: 0; background: #eee8df; }
.collection .product img { aspect-ratio: 4 / 5; transition: transform .55s ease; }
.collection .product h3 {
  margin: 16px 0 5px;
  font: normal clamp(18px, 2.1vw, 25px)/1.15 Georgia, serif;
}
.collection .product small { margin: 0 0 7px; color: #72604e; font-size: 11px; }
.collection .product .product-price { margin: 0 0 12px; font-size: 13px; }
.collection .product .add-to-cart {
  min-height: 40px;
  margin-top: 5px;
  background: transparent;
  color: #59422e;
  border: 1px solid #b7a087;
  font-size: 11px;
  transition: color .22s ease, background .22s ease, border-color .22s ease;
}
.collection .product .add-to-cart:hover { background: #6e5942; color: white; border-color: #6e5942; }
.collection #filters { flex-wrap: wrap; }
.collection #filters button { font-size: 11px; }
.journal .gallery button { background: #eee8df; }
.journal #gallery img { aspect-ratio: 5 / 4; }
.journal #gallery-more { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: clamp(12px, 2vw, 25px); }
.journal .gallery-collection { margin-top: 26px; }
.journal .gallery-collection summary { padding: 11px 15px; border: 1px solid #b7a087; }
@media (max-width: 700px) {
  .categories-section .categories,
  .collection .products,
  .journal #gallery,
  .journal #gallery-more { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px 14px; }
  .categories-section .category > div { padding-right: 20px; }
  .categories-section .category p, .collection .product .add-to-cart { font-size: 10px; }
  .collection .product h3 { margin-top: 12px; }
}
@media (prefers-reduced-motion: no-preference) {
  .editorial-arrival { animation: editorial-arrival .52s ease both; }
  .editorial-arrival:nth-child(3n + 2) { animation-delay: .07s; }
  .editorial-arrival:nth-child(3n + 3) { animation-delay: .14s; }
  @keyframes editorial-arrival {
    from { opacity: 0; translate: 0 15px; }
    to { opacity: 1; translate: 0 0; }
  }
}

/* Carousel based on the Olidasn “Les signatures” section. */
.signatures {
  --signature-accent: #805b2d;
  --photo-ratio: .85;
  --carousel-height: clamp(440px, 76svh, 720px);
  --copy-width: clamp(240px, 25vw, 320px);
  --active-card-width: min(78vw, 1080px, calc((var(--carousel-height) - 50px) * var(--photo-ratio) + var(--copy-width) + 16px));
  --preview-near: calc(var(--active-card-width) / 2 + 85px);
  --preview-far: calc(var(--active-card-width) / 2 + 200px);
  --serif: 'Cormorant Garamond', Georgia, serif;
  font: 14px Manrope, Arial, sans-serif;
  position: relative;
  padding: 24px 0 22px;
  overflow: hidden;
}
.signatures .eyebrow {
  color: var(--signature-accent);
  font-size: 8px;
  letter-spacing: 2px;
  line-height: 1.7;
  font-weight: 500;
}
.signatures :focus-visible {
  outline: 2px solid #956643;
  outline-offset: 5px;
}
.signature-navigation[hidden] { display: none; }
.signature-heading {
  text-align: center;
  padding: 0 6%;
  position: relative;
  z-index: 2;
}
.signature-heading .eyebrow {
  margin-bottom: 5px;
}
.signature-heading h2 {
  font-size: clamp(27px, 3.1vw, 40px);
  font-weight: 500;
  letter-spacing: -.04em;
  line-height: 1.1;
}
.signature-stage {
  position: relative;
  height: var(--carousel-height);
  max-width: 1680px;
  margin: 0 auto;
  perspective: 1600px;
  touch-action: pan-y;
  outline-offset: -5px!important;
}
.signature-card {
  --card-width: 130px;
  position: absolute;
  left: 50%;
  top: 50%;
  width: var(--card-width);
  height: calc(100% - 32px);
  border: 1px solid #e8d39370;
  border-radius: 20px;
  padding: 8px;
  background: #eee5d2;
  color: #272319;
  box-shadow: 0 15px 50px #0004;
  transform: translate(-50%,-50%);
  overflow: hidden;
  transition: transform .85s cubic-bezier(.22,1,.36,1),width .85s cubic-bezier(.22,1,.36,1),opacity .6s,filter .6s;
  will-change: transform,width;
  backface-visibility: hidden;
}
.signature-card[data-slot="0"] {
  --card-width: var(--active-card-width);
  transform: translate(-50%,-50%);
  opacity: 1;
  z-index: 5;
  filter: none;
}
.signature-card[data-slot="-1"] {
  transform: translate(-50%,-50%) translateX(calc(-1 * var(--preview-near))) scale(.84) rotateY(14deg);
  z-index: 4;
  opacity: .95;
}
.signature-card[data-slot="1"] {
  transform: translate(-50%,-50%) translateX(var(--preview-near)) scale(.84) rotateY(-14deg);
  z-index: 4;
  opacity: .95;
}
.signature-card[data-slot="-2"] {
  transform: translate(-50%,-50%) translateX(calc(-1 * var(--preview-far))) scale(.64) rotateY(20deg);
  z-index: 3;
  opacity: .7;
}
.signature-card[data-slot="2"] {
  transform: translate(-50%,-50%) translateX(var(--preview-far)) scale(.64) rotateY(-20deg);
  z-index: 3;
  opacity: .7;
}
.signature-card[data-slot="-3"] {
  transform: translate(-50%,-50%) translateX(-550px) scale(.4) rotateY(25deg);
  opacity: 0;
  pointer-events: none;
  z-index: 1;
}
.signature-card[data-slot="3"] {
  transform: translate(-50%,-50%) translateX(550px) scale(.4) rotateY(-25deg);
  opacity: 0;
  pointer-events: none;
  z-index: 1;
}
.signature-card-copy {
  position: absolute;
  left: 28px;
  top: 38px;
  width: calc(var(--copy-width) - 48px);
  bottom: 34px;
  display: flex;
  flex-direction: column;
  opacity: 0;
  transform: translateX(-15px);
  transition: opacity .25s,transform .5s;
  pointer-events: none;
}
.signature-card[data-slot="0"] .signature-card-copy {
  opacity: 1;
  transform: none;
  transition: opacity .45s .25s,transform .65s .15s;
  pointer-events: auto;
}
.signature-card-copy .eyebrow {
  font-size: 9px;
  letter-spacing: 1.3px;
  color: #8b7340;
}
.signature-card-copy h3 {
  font-size: clamp(27px, 2.7vw, 40px);
  font-weight: 500;
  line-height: 1.1;
  letter-spacing: -1.2px;
  margin-top: 14px;
  max-width: 100%;
  overflow-wrap: anywhere;
}
.signature-card-copy>p:not(.eyebrow) {
  font-family: var(--serif);
  font-size: clamp(22px, 2vw, 30px);
  line-height: 1.3;
  color: #675b45;
  margin-top: auto;
  max-width: 230px;
}
.signature-byline {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 20px;
  border-top: 1px solid #9b865c40;
  padding-top: 15px;
}
.signature-byline>span {
  font-size: 8px;
  letter-spacing: 1.6px;
  color: #8b7340;
}
.signature-byline button {
  padding: 0;
  border: 0;
  background: none;
  font-size: 11px;
  display: flex;
  gap: 13px;
  align-items: center;
  color: #4c3c1e;
}
.signature-byline button>span {
  font-size: 16px;
}
.signature-card-image {
  position: absolute;
  right: 8px;
  top: 8px;
  bottom: 8px;
  width: calc(100% - 16px);
  border-radius: 13px;
  overflow: hidden;
  background: #f2ede2;
  transition: width .85s cubic-bezier(.22,1,.36,1);
}
.signature-card[data-slot="0"] .signature-card-image {
  width: calc(100% - var(--copy-width) - 16px);
}
.signature-card-image img {
  height: 100%;
  width: 100%;
  object-fit: contain;
  object-position: center;
}
.signature-card-image:after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(transparent 78%, #f2ede2e6);
  pointer-events: none;
}
.signature-card-image>span {
  position: absolute;
  bottom: 16px;
  left: 18px;
  color: #503d28;
  font-size: 10px;
  letter-spacing: 3px;
  font-weight: 600;
  z-index: 1;
  opacity: 0;
  transition: opacity .4s;
}
.signature-card[data-slot="0"] .signature-card-image>span {
  opacity: 1;
}
.signature-preview-button {
  position: absolute;
  inset: 0;
  width: 100%;
  border: 0;
  background: none;
  z-index: 2;
  cursor: pointer;
}
.signature-card[data-slot="0"] .signature-preview-button {
  display: none;
}
.signature-navigation {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 18px;
  margin-top: 2px;
}
.signature-prev,.signature-next,.signature-play {
  border: 1px solid #b99a79;
  background: transparent;
  color: var(--signature-accent);
  border-radius: 50%;
  width: 34px;
  height: 34px;
  font-size: 16px;
  display: grid;
  place-items: center;
  transition: background .3s,color .3s;
}
.signature-prev:hover,.signature-next:hover,.signature-play:hover {
  background: var(--signature-accent);
  color: #fffdfb;
}
.signature-play {
  font-size: 10px;
  width: 28px;
  height: 28px;
  margin-left: 5px;
}
.signature-dots {
  display: flex;
  align-items: center;
  gap: 7px;
}
.signature-dots button {
  position: relative;
  width: 16px;
  height: 28px;
  padding: 0;
  border: 0;
  background: transparent;
}
.signature-dots button:after {
  content: '';
  position: absolute;
  left: 50%;
  top: 50%;
  width: 5px;
  height: 5px;
  transform: translate(-50%,-50%);
  border-radius: 10px;
  background: #bba389;
  transition: width .5s,background .5s;
}
.signature-dots button[aria-pressed=true] {
  width: 30px;
}
.signature-dots button[aria-pressed=true]:after {
  width: 25px;
  background: var(--signature-accent);
}
.signature-card:focus-within {
  outline: 1px solid var(--signature-accent);
  outline-offset: 5px;
}

@media (min-width: 701px) and (max-width: 1000px) {
  .signatures { --copy-width: 240px; }
  .signature-card-copy { left: 22px; width: calc(var(--copy-width) - 40px); }
  .signature-byline { display: block; }
  .signature-byline button { margin-top: 12px; }
}
@media (max-width: 700px) {
  .signatures { padding: 18px 0; --active-card-width: calc(100vw - 40px); }
  .signature-stage { height: clamp(450px, 76svh, 660px); }
  .signature-card { --card-width: 55px; border-radius: 15px; padding: 6px; }
  .signature-card[data-slot="0"] { --card-width: var(--active-card-width); }
  .signature-card-image { right: 6px; top: 6px; bottom: 6px; width: calc(100% - 12px); border-radius: 10px; }
  .signature-card[data-slot="0"] .signature-card-image {
    width: calc(100% - 12px);
    bottom: 176px;
  }
  .signature-card-copy {
    left: 18px;
    right: 18px;
    top: auto;
    bottom: 18px;
    width: auto;
    height: 144px;
  }
  .signature-card-copy .eyebrow { font-size: 8px; letter-spacing: 1px; }
  .signature-card-copy h3 {
    font-size: clamp(19px, 5vw, 27px);
    line-height: 1.12;
    margin-top: 5px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }
  .signature-card-copy > p:not(.eyebrow) { font-size: 19px; margin-top: auto; max-width: none; }
  .signature-byline { justify-content: flex-end; border: 0; padding: 0; margin-top: 8px; }
  .signature-byline > span { display: none; }
  .signature-byline button { font-size: 10px; gap: 8px; }
  .signature-card-image > span { font-size: 8px; left: 14px; bottom: 12px; }
  .signature-card[data-slot="-1"] { transform: translate(-50%,-50%) translateX(calc(-50vw - 8px)) scale(.86) rotateY(12deg); }
  .signature-card[data-slot="1"] { transform: translate(-50%,-50%) translateX(calc(50vw + 8px)) scale(.86) rotateY(-12deg); }
  .signature-card[data-slot="-2"] { transform: translate(-50%,-50%) translateX(-100vw) scale(.65); opacity: 0; }
  .signature-card[data-slot="2"] { transform: translate(-50%,-50%) translateX(100vw) scale(.65); opacity: 0; }
  .signature-navigation { gap: 12px; }
  .signature-dots { gap: 4px; }
  .signature-play { margin-left: 0; }
}
@media (prefers-reduced-motion: reduce) {
  .signature-card, .signature-card-copy, .signature-card-image,
  .signature-card-image > span, .signature-dots button:after { transition: none !important; }
}
.signature-dots { flex-wrap: wrap; justify-content: center; max-width: 340px; }
@media (prefers-reduced-motion: no-preference) {
  .signature-heading.signature-enter { animation: signature-enter .9s cubic-bezier(.16,1,.3,1) both; }
  @keyframes signature-enter {
    from { opacity: 0; transform: translateY(35px); }
  }
}
@media (max-width: 900px) {
  header.compact-header { position: relative; justify-content: space-between; gap: 12px; }
  .compact-header .menu { display: block; margin-left: 0; order: 3; }
  #cart-trigger { margin-left: auto; order: 2; }
  .compact-header nav {
    display: none;
    position: absolute;
    z-index: 10;
    top: 100%;
    left: 0;
    right: 0;
    width: 100%;
    height: auto;
    flex-wrap: wrap;
    justify-content: flex-start;
    background: #fffdfa;
    padding: 15px 5%;
    font-size: 12px;
  }
  .compact-header nav.open { display: flex; }
  .compact-header nav a { min-height: 28px; }
}

.footer-bottom { flex-wrap: wrap; align-items: baseline; gap: 8px 22px; }
.bag-rail {
  padding: clamp(40px, 5vw, 72px) 0 26px;
  overflow: hidden;
  border-bottom: 1px solid #e8dfd3;
}
.bag-rail[hidden] { display: none; }
.rail-heading { text-align: center; }
.rail-heading h2 {
  margin: 10px 0 13px;
  font: normal clamp(32px, 4.2vw, 56px)/1.08 Georgia, serif;
  letter-spacing: -1.7px;
}
.rail-heading > p:last-child { font-size: 12px; color: #796b5c; line-height: 1.7; }
.rail-stage {
  --rail-art-height: clamp(190px, 22vw, 280px);
  position: relative;
  height: calc(var(--rail-art-height) + 190px);
  max-width: 1800px;
  margin-left: auto;
  margin-right: auto;
  margin-top: 25px;
  touch-action: pan-y;
  user-select: none;
  cursor: grab;
}
.rail-stage.is-dragging { cursor: grabbing; }
.rail-stage:focus-visible { outline: 1px solid #ac8d69; outline-offset: -6px; }
.rail-wire { position: absolute; top: 0; left: 0; width: 100%; height: 180px; pointer-events: none; }
.rail-wire path { fill: none; stroke: #927c61; stroke-width: 2; }
.rail-wire .rail-wire-shadow { stroke: #e8dfd0; stroke-width: 6; transform: translateY(3px); }
.rail-products { position: absolute; inset: 0; }
.rail-item {
  position: absolute;
  top: 0;
  left: 0;
  width: var(--rail-item-width, 220px);
  padding: 0;
  border: 0;
  background: transparent;
  color: #382c21;
  transform-origin: 50% 0;
  will-change: transform;
}
.rail-item[hidden] { display: none; }
.rail-item:focus-visible { outline: 1px solid #956643; outline-offset: 9px; border-radius: 8px; }
.rail-swing { display: block; transform-origin: 50% 10px; animation: rail-sway 3.8s ease-in-out infinite alternate; }
.rail-is-still .rail-swing { animation-play-state: paused; }
.rail-hook { display: block; width: 24px; height: 36px; margin: 0 auto; fill: none; stroke: #a58b64; stroke-width: 1.5; }
.rail-art { display: block; transition: transform .35s ease; transform-origin: 50% 0; }
.rail-art img {
  width: 100%;
  height: auto;
  max-height: var(--rail-art-height);
  object-fit: contain;
  object-position: center top;
  filter: drop-shadow(0 15px 9px #47321a18);
  pointer-events: none;
}
.rail-item:hover .rail-art, .rail-item:focus-visible .rail-art { transform: translateY(-3px) scale(1.055); }
.rail-item-title {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  margin-top: 13px;
  font: normal 16px/1.3 Georgia, serif;
  overflow-wrap: anywhere;
}
.rail-item-price { display: block; margin-top: 5px; font-size: 10px; color: #88735c; }
.rail-controls { display: flex; justify-content: center; align-items: center; flex-wrap: wrap; gap: 16px; padding: 0 18px; }
.rail-controls[hidden] { display: none; }
.rail-controls > span { font-size: 9px; letter-spacing: 1.3px; color: #8b775e; }
.rail-controls button {
  display: grid;
  place-items: center;
  width: 36px;
  height: 36px;
  border: 1px solid #c7b69b;
  border-radius: 50%;
  background: transparent;
  color: #795b39;
  font-size: 16px;
  transition: background .2s ease, color .2s ease;
}
.rail-controls button:hover { background: #795b39; color: #fffdfb; }
.rail-controls .rail-toggle { width: 30px; height: 30px; font-size: 10px; }
@keyframes rail-sway {
  from { transform: rotate(-2.5deg); }
  to { transform: rotate(2.5deg); }
}
@media (max-width: 700px) {
  .rail-heading h2 { letter-spacing: -1px; }
  .rail-heading > p:last-child { max-width: 270px; margin: auto; }
  .rail-stage { --rail-art-height: 195px; margin-top: 18px; height: 380px; }
  .rail-item-title { font-size: 14px; }
  .rail-controls { gap: 12px; }
  .rail-controls > span { font-size: 8px; letter-spacing: .7px; }
}
@media (prefers-reduced-motion: reduce) {
  .rail-swing { animation: none; }
  .rail-art { transition: none; }
}
.footer-bottom .footer-motto { margin-left: auto; }
footer > .footer-bottom > .footer-credit {
  margin: 0;
  color: #f1e7dc;
  text-decoration: underline;
  text-underline-offset: 3px;
}
@media (max-width: 700px) {
  .footer-bottom .footer-motto { margin-left: 0; }
}

.collection-tools { display: flex; align-items: center; justify-content: flex-end; flex-wrap: wrap; gap: 10px 18px; }
.collection-tools #favorites-link { font-size: 12px; color: #6e5942; }
.collection .results-line { align-items: center; gap: 16px; }
