/* ============================================================
   BAGUETTE — V19
   Quiet luxury / editorial watch boutique
   ============================================================ */

:root {
  --bg: #f5f1e9;
  --paper: #faf8f3;
  --paper-2: #ece6da;
  --ink: #1b1916;
  --muted: #817a70;
  --faint: #aaa297;
  --line: rgba(27,25,22,.12);
  --line-soft: rgba(27,25,22,.065);
  --burgundy: #651d29;
  --burgundy-dark: #4d1720;
  --cream: #e7dece;
  --white: #fffdf8;
  --max: 1440px;
  --narrow: 980px;
  --serif: Iowan Old Style, Baskerville, "Times New Roman", Georgia, serif;
  --sans: "Helvetica Neue", Helvetica, Arial, sans-serif;
  --ease: cubic-bezier(.22,.7,.2,1);
  --fast: 180ms var(--ease);
  --base: 360ms var(--ease);
  --slow: 700ms var(--ease);
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.6;-webkit-font-smoothing:antialiased}
body.is-locked{overflow:hidden}
img,video{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button,input,select{font:inherit}
button{border:0;background:none;color:inherit;cursor:pointer}
ul,ol{list-style:none;margin:0;padding:0}
h1,h2,h3,h4,p{margin:0}
h1,h2,h3,h4{font-family:var(--serif);font-weight:400;line-height:1.03}
::selection{background:var(--burgundy);color:var(--white)}

.container{width:min(var(--max),calc(100% - 64px));margin-inline:auto}
.container--narrow{width:min(var(--narrow),calc(100% - 64px))}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link{position:fixed;left:16px;top:-100px;z-index:10000;background:var(--ink);color:var(--white);padding:10px 14px;font-size:12px}.skip-link:focus{top:16px}
.section-index{font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:var(--muted)}
.eyebrow{display:block;font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:var(--muted)}
.text-link{display:inline-flex;align-items:center;gap:10px;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);transition:color var(--fast)}
.text-link span{font-size:16px;transition:transform var(--base)}
.text-link:hover{color:var(--burgundy)}.text-link:hover span{transform:translate(3px,-3px)}

/* HEADER */
.site-header{position:sticky;top:0;z-index:1000;background:rgba(245,241,233,.92);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid transparent;transition:background var(--base),border-color var(--base),box-shadow var(--base)}
.site-header--scrolled{border-color:var(--line);box-shadow:0 10px 35px rgba(27,25,22,.035)}
.header-inner{min-height:86px;width:min(1600px,calc(100% - 56px));margin:auto;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px}
.header-logo{justify-self:center;display:flex;align-items:center;justify-content:center;height:64px;width:140px;overflow:hidden}.header-logo img{display:block;width:132px;height:auto;max-height:64px;object-fit:contain}.header-logo-text{font-family:var(--serif);font-size:23px;letter-spacing:.09em}
.header-sidebar-toggle{justify-self:start;display:inline-flex;align-items:center;gap:10px;padding:10px 0;color:var(--muted)}
.header-menu-icon{width:20px;display:grid;gap:5px}.header-menu-icon i{display:block;width:18px;height:1px;background:currentColor;transition:transform var(--base),width var(--base)}
.header-sidebar-toggle:hover{color:var(--ink)}.header-sidebar-toggle:hover .header-menu-icon i:first-child{width:12px}.header-sidebar-toggle:hover .header-menu-icon i:last-child{width:18px}
.header-menu-label{font-size:10px;font-weight:600;letter-spacing:.14em}
.header-actions{justify-self:end;display:flex;align-items:center;gap:4px}.header-action-btn{position:relative;width:42px;height:42px;display:grid;place-items:center;color:var(--muted);transition:color var(--fast),background var(--fast)}.header-action-btn:hover{color:var(--ink);background:rgba(27,25,22,.045)}
.header-cart-link{border-left:1px solid var(--line);margin-left:5px;padding-left:10px;width:52px}.header-cart-count{position:absolute;right:0;top:2px;min-width:17px;height:17px;padding:0 4px;border-radius:20px;background:var(--burgundy);color:#fff;font-size:9px;line-height:17px;text-align:center;opacity:0;transform:scale(.75);transition:opacity var(--base),transform var(--base)}.header-cart-count.is-visible{opacity:1;transform:scale(1)}
.header-nav{position:absolute;left:50%;transform:translateX(-50%);top:92px;z-index:2}.header-nav-list{display:flex;gap:30px;white-space:nowrap}.header-nav-link{position:relative;font-size:10px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);padding:8px 0}.header-nav-link::after{content:"";position:absolute;left:0;right:100%;bottom:2px;height:1px;background:var(--burgundy);transition:right var(--base)}.header-nav-link:hover{color:var(--ink)}.header-nav-link:hover::after{right:0}

/* SEARCH */
.search-overlay{position:fixed;inset:0;z-index:3000;background:var(--bg);opacity:0;visibility:hidden;transform:translateY(-12px);transition:opacity var(--base),transform var(--slow),visibility var(--base);overflow:auto}
.search-overlay.is-open{opacity:1;visibility:visible;transform:none}.search-overlay-noise{position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 82% 25%,rgba(101,29,41,.07),transparent 24%),radial-gradient(circle at 18% 78%,rgba(181,153,105,.08),transparent 20%)}
.search-overlay-inner{position:relative;width:min(1240px,calc(100% - 64px));min-height:100%;margin:auto;padding:42px 0 64px;display:flex;flex-direction:column}.search-overlay-topline{display:flex;align-items:center;justify-content:space-between;font-size:10px;letter-spacing:.16em;color:var(--muted)}.search-overlay-close{width:42px;height:42px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;transition:background var(--fast),transform var(--base)}.search-overlay-close svg{width:19px;height:19px;display:block}.search-overlay-close svg path{fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round}.search-overlay-close:hover{background:var(--paper-2);transform:rotate(90deg)}
.search-overlay-heading{margin-top:clamp(80px,14vh,170px);max-width:800px}.search-overlay-kicker{font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:var(--burgundy);margin-bottom:22px}.search-overlay-heading h2{font-size:clamp(48px,8vw,112px);letter-spacing:-.045em}.search-overlay-heading em,.hero-title em,.featured-heading em,.latest-heading em,.philosophy-copy em,.cta-title em{font-style:italic;color:var(--burgundy)}
.search-form{margin-top:clamp(44px,7vh,78px);border-bottom:1px solid var(--ink);display:grid;grid-template-columns:1fr auto;align-items:end}.search-input{width:100%;border:0;outline:0;background:transparent;padding:14px 0 18px;color:var(--ink);font-family:var(--serif);font-size:clamp(25px,3.4vw,50px)}.search-input::placeholder{color:#a49c91}.search-submit{display:flex;align-items:center;gap:16px;padding:0 0 19px;font-size:10px;font-weight:600;letter-spacing:.12em;text-transform:uppercase}.search-submit svg{transition:transform var(--base)}.search-submit:hover{color:var(--burgundy)}.search-submit:hover svg{transform:translate(5px,-2px)}
.search-overlay-bottom{margin-top:auto;padding-top:36px}.search-quick-label{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:14px}.search-quick-links{display:flex;gap:24px}.search-quick-links a{font-family:var(--serif);font-size:22px;border-bottom:1px solid var(--line);padding-bottom:5px}.search-quick-links a:hover{color:var(--burgundy);border-color:var(--burgundy)}.search-live-results{display:none}

/* DRAWER */
.sidebar{position:fixed;z-index:2200;left:0;top:0;height:100dvh;width:min(470px,92vw);padding:28px 38px 22px;background:#f8f5ee;box-shadow:24px 0 80px rgba(27,25,22,.14);transform:translateX(-105%);visibility:hidden;transition:transform var(--slow),visibility var(--base);display:flex;flex-direction:column;overflow:hidden}.sidebar.is-open{transform:none;visibility:visible}.sidebar-overlay{position:fixed;inset:0;z-index:2100;background:rgba(27,25,22,.48);backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);opacity:0;visibility:hidden;pointer-events:none;transition:opacity var(--base),visibility var(--base)}.sidebar-overlay.is-open{opacity:1;visibility:visible;pointer-events:auto}
.sidebar-topline{display:flex;justify-content:space-between;align-items:center;font-size:10px;letter-spacing:.15em;color:var(--muted)}.sidebar-close{width:40px;height:40px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;transition:transform var(--base),background var(--fast)}.sidebar-close svg{width:18px;height:18px;display:block}.sidebar-close svg path{fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round}.sidebar-close:hover{transform:rotate(90deg);background:var(--paper-2)}.sidebar-intro{margin:clamp(42px,8vh,76px) 0 30px}.sidebar-intro p{font-family:var(--serif);font-size:clamp(32px,4vw,52px);line-height:1.02;letter-spacing:-.03em}.sidebar-intro em{font-style:italic;color:var(--burgundy)}.sidebar-nav-list{border-top:1px solid var(--line)}.sidebar-nav-link{display:grid;grid-template-columns:34px minmax(0,1fr) 20px;align-items:center;gap:10px;padding:13px 0;border-bottom:1px solid var(--line);transition:padding var(--base),color var(--fast)}.sidebar-nav-link:hover{padding-left:8px;color:var(--burgundy)}.sidebar-nav-number{font-size:10px;color:var(--faint);letter-spacing:.08em}.sidebar-nav-label{font-family:var(--serif);font-size:22px;line-height:1.05;overflow-wrap:anywhere;word-break:normal}.sidebar-nav-arrow{font-size:16px;text-align:right}.sidebar-footer{margin-top:auto;padding-top:28px;display:flex;justify-content:space-between;font-size:9px;letter-spacing:.14em;color:var(--faint)}

/* MARQUEE */
.marquee{height:34px;overflow:hidden;background:var(--paper-2);border-bottom:1px solid var(--line-soft);border-top:1px solid var(--line-soft);position:relative}.marquee-track{height:100%;display:flex;width:max-content;align-items:center;animation:marquee 34s linear infinite}.marquee-item{font-size:9px;font-weight:600;letter-spacing:.14em;color:#766f65;white-space:nowrap;padding-right:70px}@keyframes marquee{to{transform:translateX(-50%)}}

/* ICON ARROWS — SVG avoids platform emoji substitution on iOS/Safari. */
.arrow-icon{width:15px;height:15px;display:block;flex:0 0 auto;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;transition:transform var(--base)}
.btn .arrow-icon,.text-link .arrow-icon{transition:transform var(--base)}
.btn:hover .arrow-icon,.text-link:hover .arrow-icon{transform:translate(3px,-3px)}
.sidebar-nav-arrow{display:flex;align-items:center;justify-content:flex-end}
.sidebar-nav-arrow .arrow-icon,.sidebar-secondary-arrow .arrow-icon{width:14px;height:14px}
/* BUTTONS */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:54px;padding:0 23px;font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;border:1px solid transparent;transition:background var(--base),color var(--base),border-color var(--base),transform var(--base)}.btn:hover{transform:translateY(-2px)}.btn--primary{background:var(--burgundy);color:#fff}.btn--primary:hover{background:var(--burgundy-dark);color:#fff}.btn--secondary{background:transparent;border-color:var(--line);color:var(--ink)}.btn--secondary:hover{border-color:var(--ink)}.btn--light{background:var(--white);color:var(--ink)}.btn--outline-light{border-color:rgba(255,255,255,.35);color:#fff}.btn--outline-light:hover{background:rgba(255,255,255,.08);border-color:#fff}

/* HERO */
.hero{min-height:calc(100vh - 120px);padding:26px 0 28px;background:var(--bg)}.hero-grid{width:min(1600px,calc(100% - 56px));margin:auto;min-height:calc(100vh - 174px);display:grid;grid-template-columns:1.02fr .98fr;gap:clamp(35px,6vw,100px);align-items:stretch}.hero-content{display:flex;flex-direction:column;justify-content:center;padding:60px 0 30px}.hero-kicker{display:flex;gap:22px;align-items:center;font-size:9px;letter-spacing:.15em;color:var(--muted);margin-bottom:38px}.hero-kicker span:first-child{color:var(--burgundy)}.hero-title{font-size:clamp(56px,7vw,112px);letter-spacing:-.055em;max-width:720px}.hero-title em{font-style:italic}.hero-subtitle{max-width:500px;margin-top:34px;color:var(--muted);font-size:15px;line-height:1.75}.hero-actions{display:flex;gap:10px;margin-top:38px}.hero-actions .btn{min-width:190px}.hero-footnote{margin-top:auto;padding-top:48px;display:flex;justify-content:space-between;max-width:620px;font-size:9px;letter-spacing:.14em;color:var(--faint)}
.hero-media{position:relative;min-height:680px;overflow:hidden;background:var(--paper-2)}.hero-media::before{content:"";position:absolute;inset:20px;border:1px solid rgba(255,255,255,.65);z-index:2;pointer-events:none}.hero-image,.hero-video{width:100%;height:100%;min-height:680px;object-fit:cover;object-position:center;transition:transform 1.4s var(--ease);filter:saturate(.78) contrast(.96)}.hero:hover .hero-image{transform:scale(1.018)}.hero-placeholder{min-height:680px;display:grid;place-items:center;background:radial-gradient(circle at 35% 30%,#d9cfc0,transparent 30%),linear-gradient(135deg,#e6ded1,#cfc3b2);color:rgba(27,25,22,.45);font-family:var(--serif);font-size:50px;letter-spacing:.08em}.hero-decoration{display:none!important}.hero-media-caption{position:absolute;z-index:3;left:34px;right:34px;bottom:30px;display:flex;justify-content:space-between;color:#fff;font-size:9px;letter-spacing:.13em;text-transform:uppercase;text-shadow:0 1px 8px rgba(0,0,0,.25)}

/* INTRO */
.intro-section{padding:clamp(72px,9vw,125px) 0;border-bottom:1px solid var(--line)}.intro-grid{display:grid;grid-template-columns:1fr minmax(0,2.2fr) 1fr;gap:50px;align-items:start}.intro-copy h2{font-size:clamp(40px,5.4vw,78px);letter-spacing:-.04em;max-width:850px}.intro-copy p{max-width:560px;margin-top:34px;color:var(--muted);font-size:17px;line-height:1.8}.intro-signature{justify-self:end;text-align:right;font-family:var(--serif);font-size:22px;line-height:1.05}.intro-signature em{font-size:12px;color:var(--burgundy)}

/* SECTIONS */
.featured-section,.latest-section{padding:clamp(62px,8vw,108px) 0}.section-topline{display:flex;justify-content:space-between;align-items:center;padding-bottom:18px;border-bottom:1px solid var(--line);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.section-topline a:hover{color:var(--burgundy)}.featured-heading,.latest-heading{display:grid;grid-template-columns:1.25fr 1fr;gap:32px;align-items:end;padding:30px 0 38px}.featured-heading h2,.latest-heading h2{font-size:clamp(50px,7vw,100px);letter-spacing:-.055em}.featured-heading p,.latest-heading p{max-width:350px;justify-self:end;color:var(--muted);line-height:1.75}.featured-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:26px}.product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:34px 24px}.product-grid--featured .product-card:nth-child(2){transform:translateY(70px)}.product-grid--featured .product-card:nth-child(3){transform:translateY(24px)}

/* PRODUCT CARD */
.product-card{min-width:0}.product-card-link{display:block}.product-card-image-wrap{position:relative;aspect-ratio:4/5;overflow:hidden;background:#e9e1d5;border:1px solid var(--line-soft)}.product-card-image{width:100%;height:100%;object-fit:cover;transition:transform 1s var(--ease),filter 1s var(--ease)}.product-card-link:hover .product-card-image{transform:scale(1.035);filter:saturate(.9)}.product-card-overlay{position:absolute;left:14px;right:14px;bottom:14px;display:flex;justify-content:space-between;align-items:center;padding:10px 12px;background:rgba(250,248,243,.92);backdrop-filter:blur(8px);font-size:9px;letter-spacing:.12em;text-transform:uppercase;opacity:0;transform:translateY(8px);transition:opacity var(--base),transform var(--base)}.product-card-link:hover .product-card-overlay{opacity:1;transform:none}.product-card-status{position:absolute;top:14px;left:14px;padding:7px 9px;background:rgba(250,248,243,.92);font-size:9px;letter-spacing:.12em}.product-card-image-placeholder{height:100%;display:grid;place-items:center;align-content:center;gap:8px;color:var(--muted);font-family:var(--serif);font-size:28px}.product-card-image-placeholder small{font-family:var(--sans);font-size:8px;letter-spacing:.13em;text-transform:uppercase}.product-card-info{padding:15px 1px 0}.product-card-brand{display:block;font-size:9px;letter-spacing:.13em;text-transform:uppercase;color:var(--muted);margin-bottom:7px}.product-card-title{font-size:21px;letter-spacing:-.02em}.product-card-price-wrap{display:flex;align-items:center;justify-content:space-between;margin-top:11px}.product-card-price{font-size:12px;font-weight:600}.product-card-number{font-size:9px;color:var(--faint)}.product-card-form{margin-top:12px}.product-card-add-btn{width:100%;display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:10px;text-align:left;border-top:1px solid var(--line);padding:11px 1px 0;font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);transition:color var(--fast),border-color var(--fast)}.product-card-add-btn:hover,.product-card-add-btn.is-processing{color:var(--burgundy);border-color:var(--burgundy)}.product-card-add-arrow{width:15px;height:15px;display:block;transition:transform var(--base)}.product-card-add-btn:hover .product-card-add-arrow{transform:translate(3px,-3px)}.product-card-add-check{display:none}.product-card-add-btn.is-in-cart .product-card-add-label{display:none}.product-card-add-btn.is-in-cart .product-card-add-check{display:inline}.product-card-add-btn.is-in-cart{color:var(--burgundy)}

/* SERVICE */
.service-strip{padding:0 0 clamp(72px,9vw,115px)}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.service-grid>div{padding:32px 32px 38px 0;border-right:1px solid var(--line)}.service-grid>div+div{padding-left:32px}.service-grid>div:last-child{border-right:0}.service-grid span{font-size:9px;letter-spacing:.14em;color:var(--burgundy)}.service-grid h3{font-size:32px;margin:25px 0 12px}.service-grid p{max-width:310px;color:var(--muted);font-size:13px;line-height:1.7}

/* PHILOSOPHY */
.philosophy-section{padding:0 0 clamp(72px,9vw,120px)}.philosophy-grid{display:grid;grid-template-columns:1fr 1fr;min-height:650px;background:var(--paper-2)}.philosophy-visual{position:relative;display:grid;place-items:center;overflow:hidden;background:linear-gradient(135deg,#e1d7c9,#c9bba8)}.philosophy-visual::before{content:"";position:absolute;width:54%;aspect-ratio:1;border:1px solid rgba(255,255,255,.6);border-radius:50%}.philosophy-visual span{position:relative;font-family:var(--serif);font-size:clamp(160px,24vw,330px);line-height:.7;color:rgba(27,25,22,.62)}.philosophy-visual i{position:absolute;width:12px;height:12px;border-radius:50%;background:var(--burgundy);right:18%;top:20%}.philosophy-copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(40px,7vw,110px)}.philosophy-copy h2{font-size:clamp(46px,5vw,78px);letter-spacing:-.05em;margin-top:30px}.philosophy-copy p{max-width:470px;margin-top:32px;color:var(--muted);line-height:1.8}.philosophy-copy .text-link{margin-top:34px}

/* CTA */
.cta-section{padding:clamp(100px,12vw,170px) 0}.cta-section--dark{background:var(--burgundy-dark);color:#fff}.cta-inner{max-width:900px}.cta-section .section-index{color:rgba(255,255,255,.55)}.cta-title{font-size:clamp(64px,9vw,132px);letter-spacing:-.06em;color:#fff;margin-top:34px}.cta-title em{color:#d6b1a8}.cta-text{max-width:480px;color:rgba(255,255,255,.68);line-height:1.8;margin-top:32px}.cta-actions{display:flex;gap:10px;margin-top:42px}

/* COLLECTION */
.collection-page{padding:clamp(54px,8vw,110px) 0 140px}.collection-page-topline{display:flex;justify-content:space-between;align-items:center;padding-bottom:18px;border-bottom:1px solid var(--line);color:var(--muted);font-size:10px}.collection-page-header{padding:38px 0 58px}.collection-page-title{font-size:clamp(56px,8vw,110px);letter-spacing:-.06em}.collection-page-description{max-width:650px;color:var(--muted);margin-top:24px;line-height:1.8}.collection-toolbar{display:flex;justify-content:flex-end;border-bottom:1px solid var(--line);padding-bottom:14px;margin-bottom:34px}.collection-sort{display:flex;align-items:center;gap:10px}.collection-sort-label{font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.collection-sort-select{min-width:190px;padding:7px 10px;border:1px solid var(--line);background:transparent;color:var(--ink);font-size:11px}.collection-empty{min-height:40vh;display:grid;place-items:center;font-family:var(--serif);font-size:40px;color:var(--muted)}.pagination{display:flex;justify-content:center;gap:8px;margin-top:70px}.pagination-link{min-width:36px;height:36px;display:grid;place-items:center;border:1px solid var(--line);font-size:10px;color:var(--muted)}.pagination-link:hover,.pagination-link--current{border-color:var(--ink);color:var(--ink)}

/* PRODUCT */
.product-page{padding:clamp(50px,7vw,100px) 0 120px}.product-page-inner{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(340px,.88fr);gap:clamp(50px,8vw,130px);align-items:start}.product-page-info{position:sticky;top:120px}.product-brand{font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}.product-title{font-size:clamp(48px,6vw,94px);letter-spacing:-.06em;margin-top:18px}.product-price-wrap{margin-top:24px}.product-price{font-size:17px;font-weight:600}.product-availability{display:flex;align-items:center;gap:8px;margin-top:12px;font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.product-availability-dot{width:6px;height:6px;border-radius:50%;background:var(--burgundy)}.product-availability-dot--sold{background:#999}.product-actions{margin-top:34px}.product-add-btn{width:100%;min-height:62px;display:flex;align-items:center;justify-content:space-between;padding:0 20px;background:var(--burgundy);color:#fff;font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;transition:background var(--base),transform var(--base)}.product-add-btn:hover{background:var(--burgundy-dark);transform:translateY(-2px)}.product-add-btn-arrow{width:17px;height:17px;display:block;transition:transform var(--base)}.product-add-btn:hover .product-add-btn-arrow{transform:translate(4px,-4px)}.product-add-btn--disabled{background:#d3cec4;color:#827b72}.product-variants{margin-bottom:12px}.product-variants-label{display:block;font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:8px}.product-variant-select{width:100%;padding:13px;border:1px solid var(--line);background:transparent;color:var(--ink)}.product-description-block,.product-specs-block{border-top:1px solid var(--line);margin-top:46px;padding-top:22px}.product-section-label{font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:18px}.product-description-content{font-size:14px;line-height:1.85;color:#5f5951}.product-description-content p+p{margin-top:12px}.product-specs-list{display:flex;flex-direction:column}.product-spec-item{display:grid;grid-template-columns:1fr 1.2fr;gap:20px;padding:12px 0;border-bottom:1px solid var(--line-soft)}.product-spec-label{font-size:11px;color:var(--muted)}.product-spec-value{font-size:12px;text-align:right}.product-description-empty{font-size:12px;color:var(--muted);line-height:1.7}.product-trust-note{display:flex;gap:12px;margin-top:40px;padding-top:20px;border-top:1px solid var(--line-soft)}.product-trust-line{width:28px;height:1px;background:var(--burgundy);margin-top:9px;flex:none}.product-trust-note p{font-size:11px;color:var(--muted);line-height:1.7}.product-gallery-main{background:var(--paper-2);box-shadow:0 25px 70px rgba(27,25,22,.08);overflow:hidden}.product-gallery-image{width:100%;aspect-ratio:4/5;object-fit:cover}.product-gallery-thumbs{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-top:10px}.product-gallery-thumb{border:1px solid var(--line-soft);padding:0;background:transparent;aspect-ratio:1;overflow:hidden}.product-gallery-thumb img{width:100%;height:100%;object-fit:cover}.product-gallery-thumb--active{border-color:var(--ink)}.product-gallery-placeholder{aspect-ratio:4/5;display:grid;place-items:center;background:var(--paper-2);color:var(--muted);font-family:var(--serif);font-size:34px}.product-gallery-placeholder small{display:block;font-family:var(--sans);font-size:8px;letter-spacing:.15em}.product-related{padding:90px 0 130px;border-top:1px solid var(--line)}

/* CART */
.cart-page{padding:clamp(54px,8vw,110px) 0 130px}.cart-page-heading{margin-bottom:54px}.cart-page-title{font-size:clamp(58px,8vw,110px);letter-spacing:-.06em;margin-top:14px}.cart-items{border-top:1px solid var(--line)}.cart-item{display:grid;grid-template-columns:150px 1fr auto auto;gap:26px;align-items:center;padding:20px 0;border-bottom:1px solid var(--line)}.cart-item.is-removing{opacity:.25;transform:translateX(-10px);transition:opacity var(--base),transform var(--base)}.cart-item-image{aspect-ratio:4/5;background:var(--paper-2);overflow:hidden}.cart-item-image img{width:100%;height:100%;object-fit:cover}.cart-item-brand{font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.cart-item-title{display:block;font-family:var(--serif);font-size:28px;margin-top:8px}.cart-item-title:hover{color:var(--burgundy)}.cart-item-variant,.cart-item-unique{font-size:11px;color:var(--muted);margin-top:6px}.cart-item-price{font-size:13px;font-weight:600;white-space:nowrap}.cart-item-remove{display:inline-flex;align-items:center;gap:8px;color:var(--muted);font-size:9px;letter-spacing:.12em;text-transform:uppercase;transition:color var(--fast)}.cart-item-remove:hover{color:var(--burgundy)}.cart-item-remove svg{width:13px;height:13px}.cart-footer{display:flex;justify-content:space-between;align-items:center;gap:30px;padding-top:30px}.cart-totals{display:flex;align-items:baseline;gap:18px}.cart-total-label{font-size:9px;letter-spacing:.13em;text-transform:uppercase;color:var(--muted)}.cart-total-price{font-family:var(--serif);font-size:27px}.cart-actions{display:flex;align-items:center;gap:28px}.cart-continue{font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.cart-checkout-btn{min-height:54px;padding:0 25px;background:var(--burgundy);color:#fff;font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;transition:background var(--base),transform var(--base)}.cart-checkout-btn:hover{background:var(--burgundy-dark);transform:translateY(-2px)}.cart-empty{min-height:48vh;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;border-top:1px solid var(--line)}.cart-empty-mark{font-size:16px;color:var(--burgundy);margin-bottom:18px}.cart-empty-title{font-size:clamp(42px,6vw,70px);letter-spacing:-.04em}.cart-empty-text{color:var(--muted);margin:15px 0 28px}.cart-empty--live{min-height:55vh;border-top:0}

/* SEARCH RESULTS */
.search-page{padding:clamp(54px,8vw,110px) 0 140px}.search-results-top{display:flex;justify-content:space-between;align-items:center;padding-bottom:18px;border-bottom:1px solid var(--line)}.search-page-header{padding:40px 0 70px}.search-page-title{font-size:clamp(58px,8vw,110px);letter-spacing:-.06em}.search-page-title em{font-style:italic;color:var(--burgundy)}.search-page-lead{max-width:560px;margin-top:28px;color:var(--muted);line-height:1.8}.search-page-results-head{display:flex;justify-content:space-between;padding-bottom:14px;border-bottom:1px solid var(--line);font-size:9px;letter-spacing:.13em;text-transform:uppercase;color:var(--muted);margin-bottom:32px}.search-empty{min-height:45vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.search-empty-mark{font-size:12px;color:var(--burgundy);letter-spacing:.1em}.search-empty h2{font-size:clamp(40px,5vw,65px);margin-top:16px}.search-empty p{color:var(--muted);margin:15px 0 28px}.product-grid--search{grid-template-columns:repeat(4,minmax(0,1fr))}

/* FOOTER */
.site-footer{background:#ebe4d8;border-top:1px solid var(--line);padding-top:70px}.footer-inner{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:45px;padding-bottom:70px}.footer-logo .header-logo-text{font-size:28px}.footer-tagline{max-width:330px;margin-top:22px;color:var(--muted);font-size:12px;line-height:1.8}.footer-nav-title,.footer-contacts-title,.footer-social-title{font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:18px}.footer-nav-list{display:grid;gap:10px}.footer-nav-link,.footer-contact-link,.footer-contact-text{font-size:12px}.footer-nav-link:hover,.footer-contact-link:hover{color:var(--burgundy)}.footer-contact-link{display:block;margin-bottom:8px}.footer-contact-text{color:var(--muted);font-style:normal;margin-top:8px}.footer-social-links{display:flex;gap:8px}.footer-social-link{width:38px;height:38px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;transition:background var(--fast),color var(--fast),transform var(--base)}.footer-social-link:hover{background:var(--burgundy);color:#fff;transform:translateY(-2px)}.footer-bottom{border-top:1px solid var(--line);padding:18px 0}.footer-bottom-inner{width:min(var(--max),calc(100% - 64px));margin:auto;display:flex;justify-content:space-between;gap:30px}.footer-copyright,.footer-legal-link{font-size:9px;letter-spacing:.06em;color:var(--muted)}.footer-legal{display:flex;gap:20px}.footer-legal-link:hover{color:var(--burgundy)}

/* 404 */
.page-404{min-height:calc(100vh - 120px);display:grid;place-items:center;padding:80px 0}.page-404-inner{text-align:center}.page-404-label{font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}.page-404-title{font-size:clamp(130px,20vw,280px);letter-spacing:-.08em;line-height:.8;margin:30px 0}.page-404-text{color:var(--muted);margin-bottom:28px}

/* REVEAL */
.reveal{opacity:0;transform:translateY(24px);transition:opacity 900ms var(--ease),transform 1100ms var(--ease)}.reveal.is-visible{opacity:1;transform:none}

@media (max-width:1100px){.header-inner{min-height:74px}.header-nav{position:static;transform:none;grid-column:1/-1;grid-row:2;justify-self:center;margin-top:-4px}.header-inner{grid-template-rows:auto auto}.header-nav-list{gap:20px}.hero-grid{grid-template-columns:1fr 1fr}.hero-media,.hero-image,.hero-video,.hero-placeholder{min-height:600px}.featured-grid,.product-grid,.product-grid--search{grid-template-columns:repeat(2,minmax(0,1fr))}.product-grid--featured .product-card:nth-child(2),.product-grid--featured .product-card:nth-child(3){transform:none}.footer-inner{grid-template-columns:1.5fr 1fr 1fr}}
@media (max-width:760px){.container,.container--narrow{width:min(100% - 32px,1440px)}.header-inner{width:calc(100% - 32px);min-height:68px;grid-template-columns:1fr auto 1fr}.header-nav{display:none}.header-menu-label{display:none}.header-action-btn{width:38px;height:38px}.header-cart-link{width:48px}.marquee{height:30px}.marquee-item{font-size:8px;padding-right:45px}.search-overlay-inner{width:calc(100% - 32px);padding-top:24px}.search-overlay-heading{margin-top:90px}.search-overlay-heading h2{font-size:clamp(42px,12vw,68px)}.search-form{grid-template-columns:1fr}.search-submit{padding:16px 0}.search-quick-links a{font-size:19px}.sidebar{width:100%;padding:26px 22px}.sidebar-intro{margin-top:70px}.hero{padding:0 0 18px}.hero-grid{width:100%;min-height:0;grid-template-columns:1fr;gap:0}.hero-content{order:2;padding:55px 24px 25px;min-height:590px}.hero-media{order:1;min-height:58vh}.hero-image,.hero-video,.hero-placeholder{min-height:58vh}.hero-media::before{inset:12px}.hero-media-caption{left:24px;right:24px;bottom:22px}.hero-title{font-size:clamp(53px,15vw,86px)}.hero-subtitle{font-size:14px}.hero-actions{flex-direction:column;align-items:stretch}.hero-actions .btn{width:100%}.hero-footnote{margin-top:48px}.intro-section{padding:62px 0}.intro-grid{grid-template-columns:1fr;gap:24px}.intro-signature{justify-self:start;text-align:left}.featured-section,.latest-section{padding:58px 0}.featured-heading,.latest-heading{grid-template-columns:1fr;gap:18px;padding:24px 0 30px}.featured-heading p,.latest-heading p{justify-self:start}.featured-grid,.product-grid,.product-grid--search{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 14px}.product-card-title{font-size:18px}.product-card-overlay{display:none}.product-grid--featured .product-card:nth-child(2),.product-grid--featured .product-card:nth-child(3){transform:none}.service-grid{grid-template-columns:1fr}.service-grid>div,.service-grid>div+div{padding:25px 0;border-right:0;border-bottom:1px solid var(--line)}.service-grid>div:last-child{border-bottom:0}.philosophy-grid{grid-template-columns:1fr;min-height:0}.philosophy-visual{min-height:390px}.philosophy-copy{padding:65px 28px}.cta-title{font-size:clamp(58px,16vw,90px)}.cta-actions{flex-direction:column;align-items:stretch}.cta-actions .btn{width:100%}.collection-page,.search-page,.cart-page{padding-top:50px}.collection-page-title,.search-page-title,.cart-page-title{font-size:clamp(52px,16vw,82px)}.collection-toolbar{justify-content:flex-start}.cart-item{grid-template-columns:90px 1fr;gap:15px}.cart-item-price{grid-column:2}.cart-item-remove{grid-column:2;justify-self:start}.cart-footer{flex-direction:column;align-items:stretch}.cart-actions{flex-direction:column;align-items:stretch;gap:18px}.cart-continue{align-self:flex-start}.cart-checkout-btn{width:100%}.product-page{padding-top:35px}.product-page-inner{grid-template-columns:1fr;gap:50px}.product-page-info{position:static}.product-title{font-size:clamp(52px,15vw,84px)}.product-spec-item{grid-template-columns:1fr;gap:5px}.product-spec-value{text-align:left}.product-gallery-thumbs{grid-template-columns:repeat(4,1fr)}.footer-inner{grid-template-columns:1fr 1fr;gap:38px}.footer-brand{grid-column:1/-1}.footer-bottom-inner{width:calc(100% - 32px);flex-direction:column}.footer-legal{flex-wrap:wrap}.page-404-title{font-size:38vw}}
@media (max-width:420px){.featured-grid,.product-grid,.product-grid--search{grid-template-columns:1fr}.hero-content{min-height:540px}.product-card-image-wrap{aspect-ratio:5/6}.footer-inner{grid-template-columns:1fr}.footer-social{grid-column:auto}.search-overlay-heading{margin-top:70px}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}}
@media print{.site-header,.marquee,.sidebar,.sidebar-overlay,.search-overlay,.site-footer{display:none!important}}

/* ============================================================
   BAGUETTE — V20 refinement layer
   Header / archive / gallery / editorial pages / micro-motion
   ============================================================ */
.site-header{position:sticky;top:0;z-index:1000;background:rgba(250,248,243,.97);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border-bottom:1px solid var(--line-soft);transition:box-shadow .5s var(--ease),background .5s var(--ease)}
.header-inner{display:block;width:min(1600px,calc(100% - 56px));min-height:0}
.header-top{height:82px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px;transition:height .55s var(--ease)}
.header-logo{grid-column:2;justify-self:center}
.header-logo-text{font-size:24px;letter-spacing:.12em}
.header-actions{grid-column:3;justify-self:end}
.header-account-link{display:grid}
.header-nav{position:static;left:auto;top:auto;transform:none;display:flex;justify-content:center;max-height:56px;overflow:hidden;opacity:1;transition:max-height .55s var(--ease),opacity .35s var(--ease),transform .55s var(--ease)}
.header-nav-list{height:56px;display:flex;align-items:center;justify-content:center;gap:38px}
.header-nav-link{font-size:10px;letter-spacing:.13em;padding:9px 0}
.site-header--scrolled{background:rgba(250,248,243,.985);box-shadow:0 12px 34px rgba(27,25,22,.06)}
.site-header--scrolled .header-top{height:86px}
.site-header--scrolled .header-nav{opacity:0;transform:translate(-50%,-10px);pointer-events:none;visibility:hidden}
.site-header--scrolled .header-menu-label{opacity:0;width:0;overflow:hidden}
.header-action-btn{transition:color .25s var(--ease),background .25s var(--ease),transform .35s var(--ease)}
.header-action-btn:hover{transform:translateY(-1px)}
.header-menu-icon{transition:transform .4s var(--ease)}
.site-header--scrolled .header-menu-icon{transform:scale(1.06)}

/* Keep the marquee in its own visual plane; it never sits under navigation. */
.marquee{position:relative;z-index:1;border-top:0;box-shadow:inset 0 -1px rgba(27,25,22,.04)}

/* Search: gallery-like luxury sheet rather than a generic full-screen form. */
.search-overlay{z-index:4000;background:#f6f1e8}
.search-overlay-inner{width:min(1320px,calc(100% - 80px));padding:34px 0 70px}
.search-overlay-heading{max-width:940px;margin-top:clamp(90px,16vh,180px)}
.search-overlay-heading h2{font-size:clamp(54px,7.6vw,118px);letter-spacing:-.055em}
.search-form{max-width:1100px;margin-top:clamp(48px,8vh,90px);padding-bottom:5px}
.search-input{font-size:clamp(28px,3.8vw,58px);padding:12px 0 20px}
.search-submit{padding-bottom:20px;text-transform:uppercase;letter-spacing:.14em}
.search-quick-links a{transition:color .25s var(--ease),transform .35s var(--ease)}
.search-quick-links a:hover{color:var(--burgundy);transform:translateY(-2px)}

/* Product gallery */
.product-gallery-main{position:relative;overflow:hidden;background:var(--paper-2);isolation:isolate}
.product-gallery-image{position:absolute!important;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;visibility:hidden;transform:scale(1.025);transition:opacity .65s var(--ease),transform .85s var(--ease),visibility .65s}
.product-gallery-image--active{position:relative!important;opacity:1;visibility:visible;transform:scale(1)}
.gallery-nav{position:absolute;z-index:3;top:0;bottom:0;width:23%;display:flex;align-items:center;opacity:0;transition:opacity .35s var(--ease);color:var(--ink)}
.gallery-nav span{display:grid;place-items:center;width:46px;height:46px;border:1px solid rgba(255,255,255,.65);border-radius:50%;background:rgba(250,248,243,.76);backdrop-filter:blur(8px);font-size:18px;transition:transform .35s var(--ease),background .25s}
.gallery-nav--prev{left:0;justify-content:flex-start;padding-left:18px}.gallery-nav--next{right:0;justify-content:flex-end;padding-right:18px}
.product-gallery-main:hover .gallery-nav{opacity:1}
.gallery-nav--prev:hover span{transform:translateX(-3px)}.gallery-nav--next:hover span{transform:translateX(3px)}
.gallery-counter{position:absolute;z-index:3;right:18px;bottom:18px;display:flex;gap:7px;align-items:center;font-size:9px;letter-spacing:.14em;color:var(--ink);background:rgba(250,248,243,.72);backdrop-filter:blur(8px);padding:8px 10px}
.gallery-counter-separator{opacity:.45}
.product-gallery-thumb{position:relative;overflow:hidden;opacity:.58;transition:opacity .3s var(--ease),transform .35s var(--ease)}
.product-gallery-thumb:hover,.product-gallery-thumb--active{opacity:1}.product-gallery-thumb:hover{transform:translateY(-2px)}
.product-gallery-thumb--active::after{content:"";position:absolute;inset:auto 0 0;height:2px;background:var(--burgundy)}

/* Product page */
.product-page{padding-top:18px}
.product-page-inner{align-items:start}
.product-page-info{padding-top:10px}
.product-title{letter-spacing:-.045em}
.product-description-content{font-size:15px;line-height:1.8;color:var(--muted)}
.product-description-content p{margin:0 0 14px}.product-description-content p:last-child{margin-bottom:0}
.product-specs-block{margin-top:32px}
.product-trust-note{margin-top:36px}

/* Archive / collections: more art direction, less catalogue-grid feeling. */
.collection-page{padding:0 0 120px}
.collection-hero{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:54px;min-height:430px;padding:54px 0 72px;border-bottom:1px solid var(--line);align-items:end}
.collection-page-topline{display:flex;justify-content:space-between;gap:20px;padding-bottom:20px;border-bottom:1px solid var(--line-soft);font-size:10px;color:var(--muted);letter-spacing:.12em;text-transform:uppercase}
.collection-page-title{font-size:clamp(70px,10vw,148px);letter-spacing:-.065em;margin-top:36px}
.collection-page-description{max-width:650px;margin-top:26px;font-size:16px;line-height:1.75;color:var(--muted)}
.collection-hero-art{height:390px;min-height:390px;background:linear-gradient(145deg,#e8dfd0,#d9cdbb);position:relative;overflow:hidden;padding:28px;display:flex;align-items:flex-end;justify-content:space-between;color:rgba(27,25,22,.62)}
.collection-hero-art::before{content:"";position:absolute;inset:16px;border:1px solid rgba(255,255,255,.58)}
.collection-hero-art span{position:relative;font-family:var(--serif);font-size:40px;line-height:.88;letter-spacing:-.04em}.collection-hero-art small{position:relative;font-size:9px;letter-spacing:.16em}.collection-hero-art i{position:absolute;width:170px;height:170px;border-radius:50%;right:-42px;top:-38px;background:rgba(101,29,41,.12)}
.collection-page-inner{margin-top:30px}
.collection-toolbar{display:flex;justify-content:space-between;align-items:center;padding:14px 0 20px;border-bottom:1px solid var(--line);margin-bottom:30px}
.collection-toolbar-label{display:flex;align-items:center;gap:22px;font-size:11px;color:var(--muted)}
.collection-sort{position:relative}.collection-sort::after{display:none!important;content:none!important}
.collection-sort-select{appearance:none;-webkit-appearance:none;border:1px solid var(--line);border-radius:999px;background:var(--paper);padding:12px 44px 12px 18px;min-width:190px;color:var(--ink);font-size:11px;letter-spacing:.06em;outline:0;cursor:pointer;transition:border-color .25s,box-shadow .25s}
.collection-sort-select:hover,.collection-sort-select:focus{border-color:rgba(101,29,41,.45);box-shadow:0 8px 24px rgba(27,25,22,.05)}
.product-grid--archive{grid-template-columns:repeat(3,minmax(0,1fr));column-gap:28px;row-gap:62px}
.product-grid--archive .product-card:nth-child(3n+2){transform:translateY(28px)}
.product-grid--archive .product-card-image-wrap{aspect-ratio:4/5}
.product-grid--archive .product-card-overlay{opacity:0;transform:translateY(8px);transition:opacity .35s var(--ease),transform .45s var(--ease)}
.product-grid--archive .product-card:hover .product-card-overlay{opacity:1;transform:none}
.pagination{margin-top:80px;padding-top:22px;border-top:1px solid var(--line);display:flex;justify-content:center;gap:8px}.pagination-link{min-width:38px;height:38px;display:grid;place-items:center;border:1px solid transparent;font-size:10px;color:var(--muted);transition:all .25s}.pagination-link:hover,.pagination-link--current{border-color:var(--line);color:var(--ink);background:var(--paper)}

/* Editorial information pages */
.editorial-page{padding:54px 0 130px}.editorial-page-topline{display:flex;justify-content:space-between;color:var(--muted);font-size:10px;letter-spacing:.14em;text-transform:uppercase;padding-bottom:20px;border-bottom:1px solid var(--line)}
.editorial-page-heading{display:grid;grid-template-columns:100px 1fr;align-items:start;padding:58px 0 70px}.editorial-page-number{font-size:10px;letter-spacing:.16em;color:var(--burgundy);padding-top:16px}.page-title{font-size:clamp(64px,9vw,132px);letter-spacing:-.06em}
.editorial-page-layout{display:grid;grid-template-columns:260px minmax(0,720px);gap:90px;margin-left:100px}.editorial-page-aside{min-height:280px;background:var(--paper-2);position:relative;padding:22px;display:flex;flex-direction:column;justify-content:space-between;font-size:10px;letter-spacing:.14em;color:var(--muted)}.editorial-page-aside i{position:absolute;width:100px;height:100px;border-radius:50%;right:24px;top:24px;background:rgba(101,29,41,.13)}.editorial-page-aside small{font-size:9px;line-height:1.5}.page-body{font-size:17px;line-height:1.9;color:#59534b}.page-body h2,.page-body h3{color:var(--ink);margin:0 0 20px;font-size:34px}.page-body p{margin:0 0 22px}.page-body img{margin:34px 0;width:100%;height:auto}.page-body a{color:var(--burgundy);text-decoration:underline;text-underline-offset:4px}

/* Cart empty state: home is the neutral doorway to both collections. */
.cart-empty{min-height:520px;display:grid;place-items:center;text-align:center;align-content:center;gap:12px}.cart-empty-title{font-size:clamp(42px,5vw,70px);letter-spacing:-.04em}.cart-empty-text{color:var(--muted);font-size:16px}.cart-empty-mark{color:var(--burgundy);font-size:22px}

/* Sidebar stays opaque and above everything when opened. */
.sidebar{background:var(--paper)!important;z-index:2500;box-shadow:20px 0 60px rgba(27,25,22,.08)}
.sidebar-overlay{z-index:2400}

/* Product-card polish */
.product-card{transition:transform .55s var(--ease)}
.product-card:hover{transform:translateY(-4px)}
.product-grid--archive .product-card:nth-child(3n+2):hover{transform:translateY(24px)}
.product-card-image{transition:transform 1s var(--ease),filter .6s var(--ease)}
.product-card:hover .product-card-image{transform:scale(1.035);filter:saturate(.96)}
.product-card-info{padding-top:15px}.product-card-title{font-size:20px;letter-spacing:-.02em}.product-card-price{font-size:13px}

/* Reveal motion */
.reveal{opacity:0;transform:translateY(24px);transition:opacity .8s var(--ease),transform .9s var(--ease)}
.reveal.is-visible{opacity:1;transform:none}

@media (max-width: 900px){
  .header-inner{width:calc(100% - 32px)}
  .header-top{height:74px}.header-nav{top:74px;max-height:none}.header-nav-list{height:50px;gap:18px;overflow:auto;justify-content:flex-start;padding:0 4px}.header-nav-link{font-size:9px;letter-spacing:.09em}
  .header-menu-label{font-size:9px}.header-account-link{display:none}
  .collection-hero{grid-template-columns:1fr;min-height:0;gap:28px;padding:34px 0 46px}.collection-hero-art{min-height:230px}.collection-page-title{font-size:clamp(60px,16vw,100px)}
  .product-grid--archive{grid-template-columns:repeat(2,minmax(0,1fr));gap:38px 18px}.product-grid--archive .product-card:nth-child(3n+2){transform:none}.product-grid--archive .product-card:nth-child(3n+2):hover{transform:translateY(-4px)}
  .editorial-page-layout{grid-template-columns:1fr;margin-left:0;gap:34px}.editorial-page-aside{min-height:180px}.editorial-page-heading{grid-template-columns:45px 1fr}
}
@media (max-width: 640px){
  .container,.container--narrow{width:calc(100% - 32px)}
  .header-top{grid-template-columns:1fr auto 1fr;gap:6px}.header-logo-text{font-size:20px}.header-actions{gap:0}.header-action-btn{width:38px;height:38px}.header-cart-link{width:44px;padding-left:4px;margin-left:0}.header-sidebar-toggle{gap:7px}.header-menu-label{display:none}
  .header-nav-list{gap:20px}.site-header--scrolled .header-top{height:74px}
  .marquee-item{font-size:9px}
  .collection-page-topline{font-size:8px}.collection-toolbar{align-items:flex-start;gap:15px}.collection-toolbar-label span:last-child{display:none}.collection-sort-select{min-width:160px;padding-left:14px}
  .product-grid--archive{grid-template-columns:1fr 1fr}.product-grid--archive .product-card-title{font-size:16px}.product-grid--archive .product-card-brand{font-size:8px}
  .gallery-nav{opacity:1;width:18%;}.gallery-nav span{width:38px;height:38px}.gallery-counter{right:10px;bottom:10px}
  .product-gallery-thumbs{gap:7px;overflow-x:auto;padding-bottom:5px}.product-gallery-thumb{flex:0 0 64px}
  .editorial-page{padding-top:34px}.editorial-page-heading{padding:42px 0 48px}.page-title{font-size:clamp(54px,15vw,86px)}.page-body{font-size:15px;line-height:1.8}
  .search-overlay-inner{width:calc(100% - 32px)}.search-overlay-heading{margin-top:80px}.search-overlay-heading h2{font-size:clamp(48px,14vw,74px)}
}
@media (prefers-reduced-motion:reduce){.reveal,.product-card,.product-gallery-image,.gallery-nav,.header-nav,.header-top{transition:none!important}.reveal{opacity:1;transform:none}}


/* ============================================================
   BAGUETTE — V21 editorial pages / boutique / checkout
   ============================================================ */
.editorial-special{padding:0 0 150px;overflow:hidden}
.special-hero{padding-top:38px}
.special-hero-meta{display:flex;justify-content:space-between;gap:20px;padding:0 0 18px;border-bottom:1px solid var(--line);font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.special-hero-grid,.packaging-hero-grid,.about-hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:70px;min-height:620px;align-items:stretch}
.special-hero-copy,.packaging-copy,.about-copy{padding:85px 0 65px}
.special-kicker{font-size:9px;letter-spacing:.17em;text-transform:uppercase;color:var(--burgundy);margin-bottom:28px}
.special-hero h1,.packaging-copy h1,.about-copy h1,.payment-hero h1{font-family:var(--serif);font-size:clamp(72px,9vw,145px);font-weight:400;line-height:.88;letter-spacing:-.065em;margin:0}
.special-hero h1 em,.packaging-copy h1 em,.about-copy h1 em,.payment-hero h1 em{color:var(--burgundy)}
.special-lead{max-width:560px;margin-top:38px;font-size:17px;line-height:1.75;color:var(--muted)}
.special-hero-art{position:relative;background:linear-gradient(145deg,#e9dfd1,#d5c5b4);min-height:620px;overflow:hidden;padding:28px;display:flex;align-items:flex-end;justify-content:space-between;color:rgba(22,20,18,.55)}
.special-hero-art::before{content:"";position:absolute;inset:18px;border:1px solid rgba(255,255,255,.65)}
.special-art-ring{position:absolute;width:360px;height:360px;border-radius:50%;right:-100px;top:110px;border:1px solid rgba(90,23,32,.22);box-shadow:0 0 0 55px rgba(90,23,32,.035),0 0 0 110px rgba(90,23,32,.02);animation:baguetteFloat 9s ease-in-out infinite}
.special-hero-art>span,.special-hero-art>small{position:relative;font-size:9px;letter-spacing:.15em}
.special-hero-art>span{font-family:var(--serif);font-size:54px;letter-spacing:-.04em}
.care-manifesto,.packaging-story,.about-footer-note{display:grid;grid-template-columns:260px minmax(0,760px);gap:90px;margin:100px 0 120px;padding-top:26px;border-top:1px solid var(--line)}
.special-index{font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.care-quote,.packaging-story h2{font-family:var(--serif);font-size:clamp(48px,6vw,86px);line-height:.98;letter-spacing:-.05em;margin:0 0 32px}
.care-quote em,.packaging-story h2 em{color:var(--burgundy)}
.care-copy,.packaging-story p,.about-footer-note p{max-width:700px;font-size:16px;line-height:1.9;color:var(--muted)}
.care-steps{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:80px}
.care-step{padding:28px 24px 34px 0;border-right:1px solid var(--line)}
.care-step+.care-step{padding-left:24px}
.care-step:last-child{border-right:0}
.care-step span{font-size:9px;letter-spacing:.16em;color:var(--burgundy)}
.care-step h2{font-family:var(--serif);font-size:34px;font-weight:400;letter-spacing:-.03em;margin:52px 0 18px}
.care-step p{font-size:13px;line-height:1.75;color:var(--muted);max-width:250px}
.special-note{display:grid;grid-template-columns:120px 1fr;gap:40px;padding:22px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:10px;letter-spacing:.12em;text-transform:uppercase}
.special-note span{color:var(--burgundy)}
.special-note p{font-size:12px;line-height:1.7;letter-spacing:0;text-transform:none;color:var(--muted);max-width:800px}
.packaging-hero-grid{grid-template-columns:.8fr 1.2fr}
.packaging-hero-photo{position:relative;margin:0;min-height:700px;background:#2a0b12;overflow:hidden}
.packaging-hero-photo::after{content:"";position:absolute;inset:18px;border:1px solid rgba(255,255,255,.42);pointer-events:none}
.packaging-hero-photo img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 1.4s var(--ease),filter 1s var(--ease)}
.packaging-hero-photo:hover img{transform:scale(1.025);filter:saturate(.92)}
.packaging-hero-photo figcaption{position:absolute;z-index:2;left:30px;right:30px;bottom:28px;display:flex;justify-content:space-between;color:#fff;font-size:8px;letter-spacing:.16em}
.packaging-specs{display:grid;gap:0;margin-top:60px;border-top:1px solid var(--line)}
.packaging-specs>div{display:grid;grid-template-columns:42px 1fr;gap:18px;padding:18px 0;border-bottom:1px solid var(--line)}
.packaging-specs span{font-size:9px;color:var(--burgundy);letter-spacing:.15em}
.packaging-specs p{font-size:12px;line-height:1.5;color:var(--muted);margin:0}
.packaging-marquee{display:flex;align-items:center;justify-content:center;gap:24px;padding:25px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:9px;letter-spacing:.16em;color:var(--muted);text-transform:uppercase}
.packaging-marquee i{width:4px;height:4px;background:var(--burgundy);border-radius:50%}
.about-hero-grid{grid-template-columns:1.1fr .9fr}
.about-contact{display:grid;grid-template-columns:repeat(2,1fr);gap:26px;margin-top:55px;max-width:650px}
.about-contact>div{padding-top:16px;border-top:1px solid var(--line)}
.about-contact span{font-size:8px;letter-spacing:.16em;color:var(--muted)}
.about-contact p{font-size:13px;line-height:1.6;margin-top:10px}
.about-contact a:hover{color:var(--burgundy)}
.about-map-card{position:relative;min-height:620px;background:#e8dfd2;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end;padding:28px}
.map-card-grid{position:absolute;inset:0;opacity:.45;background-image:linear-gradient(rgba(27,25,22,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(27,25,22,.07) 1px,transparent 1px);background-size:58px 58px;transform:rotate(-8deg) scale(1.18)}
.map-card-grid::after{content:"";position:absolute;left:18%;top:40%;width:120%;height:1px;background:var(--burgundy);transform:rotate(-12deg);box-shadow:0 -95px 0 rgba(101,29,41,.12),0 120px 0 rgba(101,29,41,.08)}
.map-card-pin{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:78px;height:78px;border-radius:50%;display:grid;place-items:center;background:var(--burgundy);color:#fff;font-family:var(--serif);font-size:34px;box-shadow:0 0 0 14px rgba(90,23,32,.08),0 20px 50px rgba(27,25,22,.12);animation:baguettePulse 4s ease-in-out infinite}
.about-map-card>span,.about-map-card>small{position:relative;font-size:9px;letter-spacing:.15em}.about-map-card>small{margin-top:8px;color:var(--muted)}
.boutique-gallery{margin-top:40px}
.boutique-gallery-grid{display:grid;grid-template-columns:1.35fr .65fr;grid-template-rows:repeat(2,minmax(240px,1fr));gap:18px;margin-top:30px}
.boutique-photo{position:relative;min-height:260px;background:var(--paper-2);overflow:hidden}
.boutique-photo--large{grid-row:1 / 3}
.boutique-photo img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 1s var(--ease),filter .8s var(--ease)}
.boutique-photo:hover img{transform:scale(1.025);filter:saturate(.95)}
.boutique-photo figcaption{position:absolute;left:18px;bottom:16px;font-size:8px;letter-spacing:.14em;color:#fff;text-shadow:0 1px 12px rgba(0,0,0,.25)}
.boutique-photo--placeholder{display:flex;flex-direction:column;justify-content:space-between;padding:22px;border:1px solid var(--line)}
.boutique-photo--placeholder span{font-family:var(--serif);font-size:38px;color:var(--burgundy)}
.boutique-photo--placeholder p{font-family:var(--serif);font-size:34px;line-height:.95;letter-spacing:-.03em}
.boutique-photo--placeholder small{font-size:8px;letter-spacing:.16em;color:var(--muted)}
.sidebar-secondary{display:grid;gap:0;margin:20px 0 0;border-top:1px solid var(--line)}
.sidebar-secondary a{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--line);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);transition:color .25s var(--ease),padding .35s var(--ease)}
.sidebar-secondary a:hover{color:var(--burgundy);padding-left:5px}
.baguette-checkout-layout{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans)}
.checkout-chrome{min-height:100vh;padding:0 5vw 40px}
.checkout-header{min-height:90px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:20px;border-bottom:1px solid rgba(27,25,22,.10)}
.checkout-logo{justify-self:start;font-family:var(--serif);font-size:24px;letter-spacing:.12em}.checkout-logo:hover{color:var(--burgundy)}
.checkout-header-meta{display:flex;gap:24px;font-size:8px;letter-spacing:.15em;color:var(--muted);text-transform:uppercase}
.checkout-back{justify-self:end;font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.checkout-back:hover{color:var(--burgundy)}
.checkout-main{display:grid;grid-template-columns:280px minmax(0,1fr);gap:70px;max-width:1300px;margin:0 auto;padding:60px 0 100px}
.checkout-intro{padding-top:12px}.checkout-intro>span{font-size:8px;letter-spacing:.16em;color:var(--burgundy)}.checkout-intro>i{display:block;width:38px;height:1px;background:var(--burgundy);margin:25px 0}.checkout-intro>p{font-family:var(--serif);font-size:23px;line-height:1.15;letter-spacing:-.02em}
.checkout-content{min-width:0;background:rgba(255,255,255,.34);border:1px solid rgba(27,25,22,.08);padding:34px;box-shadow:0 30px 80px rgba(27,25,22,.045)}
.checkout-footer{max-width:1300px;margin:0 auto;border-top:1px solid var(--line);padding-top:18px;display:grid;grid-template-columns:1fr 1fr 1fr;font-size:8px;letter-spacing:.15em;color:var(--muted);text-transform:uppercase}
.checkout-footer span:nth-child(2){text-align:center}.checkout-footer a{text-align:right}.checkout-footer a:hover{color:var(--burgundy)}
@keyframes baguetteFloat{0%,100%{transform:translate3d(0,0,0) rotate(0)}50%{transform:translate3d(-12px,12px,0) rotate(4deg)}}
@keyframes baguettePulse{0%,100%{box-shadow:0 0 0 14px rgba(90,23,32,.08),0 20px 50px rgba(27,25,22,.12)}50%{box-shadow:0 0 0 24px rgba(90,23,32,.045),0 24px 60px rgba(27,25,22,.16)}}
@media (max-width:900px){
 .special-hero-grid,.packaging-hero-grid,.about-hero-grid{grid-template-columns:1fr;gap:20px}.special-hero-copy,.packaging-copy,.about-copy{padding:60px 0 40px}.special-hero-art,.about-map-card{min-height:420px}.packaging-hero-photo{min-height:560px}
 .care-manifesto,.packaging-story,.about-footer-note{grid-template-columns:1fr;gap:25px;margin:75px 0 85px}.care-steps{grid-template-columns:1fr}
 .care-step{border-right:0;border-bottom:1px solid var(--line);padding:25px 0}.care-step+.care-step{padding-left:0}.care-step:last-child{border-bottom:0}
 .boutique-gallery-grid{grid-template-columns:1fr 1fr;grid-template-rows:auto}.boutique-photo--large{grid-row:auto;grid-column:1/-1;min-height:420px}
 .checkout-main{grid-template-columns:1fr;gap:30px;padding-top:35px}.checkout-intro{padding-top:0}
}
@media (max-width:640px){
 .special-hero-meta{font-size:7px}.special-hero h1,.packaging-copy h1,.about-copy h1{font-size:clamp(58px,16vw,92px)}.special-lead{font-size:15px}
 .about-contact{grid-template-columns:1fr}.boutique-gallery-grid{grid-template-columns:1fr}.boutique-photo--large{min-height:360px}.special-note{grid-template-columns:1fr;gap:12px}.packaging-hero-photo{min-height:470px}
 .checkout-chrome{padding:0 16px 28px}.checkout-header{min-height:76px;grid-template-columns:1fr auto}.checkout-header-meta{display:none}.checkout-logo{font-size:20px}.checkout-content{padding:18px}.checkout-footer{grid-template-columns:1fr;gap:10px}.checkout-footer span:nth-child(2),.checkout-footer a{text-align:left}
}
@media (prefers-reduced-motion:reduce){.special-art-ring,.map-card-pin{animation:none!important}}


/* V24 header stability: nav floats below the fixed-height header so scroll state never reflows the page. */
.site-header{min-height:86px}
.site-header .header-inner{min-height:86px}
.site-header .header-nav{max-height:none;overflow:visible}
.site-header--scrolled .header-nav{max-height:none;border-color:transparent;visibility:hidden;opacity:0;transform:translate(-50%,-10px);pointer-events:none}
.site-header--scrolled .header-inner{min-height:86px}

/* ============================================================
   BAGUETTE — V23 refinement layer
   Exclusive / page routing / live cart / care photography / motion
   ============================================================ */
.site-header{z-index:1200}
.site-header:not(.site-header--scrolled){box-shadow:0 8px 28px rgba(27,25,22,.025)}
.header-nav{position:absolute;left:50%;top:86px;width:100%;background:rgba(250,248,243,.985);border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft);transform:translateX(-50%);visibility:visible;transition:opacity .42s var(--ease),transform .52s var(--ease),visibility .42s var(--ease);will-change:opacity,transform}
.header-nav-list{min-height:52px}
.site-header--scrolled .header-nav{max-height:0;border-color:transparent;overflow:hidden}
.site-header--scrolled .header-inner{box-shadow:none}

/* Homepage Exclusive section: richer, more collectible than the general archive. */
.featured-section{position:relative}
.featured-section::before{content:"";position:absolute;right:-180px;top:110px;width:360px;height:360px;border-radius:50%;border:1px solid rgba(101,29,41,.12);box-shadow:0 0 0 55px rgba(101,29,41,.025),0 0 0 110px rgba(181,153,105,.045);animation:baguetteFloat 11s ease-in-out infinite;pointer-events:none}
.featured-section .featured-heading h2{position:relative}
.featured-section .featured-heading h2 em{color:var(--burgundy)}
.featured-section .product-card:nth-child(1){transform:translateY(10px)}
.featured-section .product-card:nth-child(3){transform:translateY(34px)}
.featured-section .product-card:nth-child(4){transform:translateY(-8px)}

/* Exclusive archive gets a distinct wine-paper opening instead of a generic catalogue header. */
.collection-page--exclusive{background:linear-gradient(180deg,rgba(101,29,41,.035),transparent 520px)}
.collection-hero--exclusive{position:relative}
.collection-hero--exclusive .collection-page-title{font-style:italic;color:var(--burgundy)}
.collection-hero--exclusive .collection-page-description{max-width:720px}
.collection-hero--exclusive .collection-hero-art{background:linear-gradient(145deg,#5b1b25,#2e0d13);color:rgba(255,250,242,.86);box-shadow:0 28px 80px rgba(77,23,32,.14)}
.collection-hero--exclusive .collection-hero-art::before{border-color:rgba(255,255,255,.28)}
.collection-hero--exclusive .collection-hero-art i{width:220px;height:220px;right:-55px;top:-60px;background:rgba(231,222,206,.16);box-shadow:0 0 0 45px rgba(231,222,206,.045)}
.collection-hero--exclusive .collection-hero-art span{font-size:48px}
.collection-page--exclusive .collection-toolbar{padding-top:18px}
.collection-page--exclusive .collection-sort-select{border-color:rgba(101,29,41,.2);background:#fbf7ef}

/* Sorting: a small editorial control instead of a default form field. */
.collection-sort{display:flex;align-items:center;gap:10px}
.collection-sort-shell{position:relative;display:flex;align-items:center}
.collection-sort-glyph{position:absolute;left:15px;z-index:2;color:var(--burgundy);font-size:13px;pointer-events:none}
.collection-sort-arrow{position:absolute;right:15px;z-index:2;color:var(--burgundy);font-size:13px;pointer-events:none;transition:transform .35s var(--ease)}
.collection-sort-shell:hover .collection-sort-arrow{transform:translate(2px,-2px)}
.collection-sort-select{min-width:220px!important;padding:12px 42px 12px 38px!important;border:1px solid rgba(27,25,22,.14)!important;border-radius:0!important;background:rgba(250,248,243,.82)!important;box-shadow:inset 0 -1px rgba(27,25,22,.03);letter-spacing:.08em!important;transition:border-color .3s var(--ease),box-shadow .3s var(--ease),background .3s var(--ease)!important}
.collection-sort-select:hover,.collection-sort-select:focus{border-color:rgba(101,29,41,.42)!important;box-shadow:0 12px 30px rgba(27,25,22,.06)!important;background:#fffdf8!important}

/* Care & Authenticity hero: editorial photograph on the right. */
.special-hero-grid--photo{grid-template-columns:.94fr 1.06fr}
.special-hero-photo{position:relative;margin:0;min-height:620px;overflow:hidden;background:#d8cec0;box-shadow:0 30px 80px rgba(27,25,22,.08)}
.special-hero-photo::before{content:"";position:absolute;inset:18px;border:1px solid rgba(255,255,255,.62);z-index:2;pointer-events:none}
.special-hero-photo img{width:100%;height:100%;min-height:620px;object-fit:cover;display:block;filter:saturate(.78) contrast(.97);transition:transform 1.4s var(--ease),filter 1s var(--ease)}
.special-hero-photo:hover img{transform:scale(1.025);filter:saturate(.92) contrast(1)}
.special-hero-photo figcaption{position:absolute;left:30px;right:30px;bottom:28px;z-index:3;display:flex;justify-content:space-between;color:#fff;font-size:8px;letter-spacing:.16em;text-transform:uppercase;text-shadow:0 1px 12px rgba(0,0,0,.24)}
.special-photo-placeholder{min-height:620px;display:grid;place-items:center;align-content:center;gap:8px;background:linear-gradient(145deg,#e8dfd1,#cdbda9);color:var(--muted);font-family:var(--serif);font-size:48px}
.special-photo-placeholder small{font-family:var(--sans);font-size:8px;letter-spacing:.16em}
.care-hero-note{margin-top:42px;max-width:520px;padding-top:18px;border-top:1px solid var(--line);display:grid;grid-template-columns:130px 1fr;gap:20px}
.care-hero-note>span{font-size:8px;letter-spacing:.16em;color:var(--burgundy)}
.care-hero-note p{font-size:12px;line-height:1.75;color:var(--muted)}
.care-manifesto{grid-template-columns:260px minmax(0,840px)}
.care-copy{max-width:790px}
.care-step{transition:background .35s var(--ease),padding .45s var(--ease)}
.care-step:hover{background:rgba(101,29,41,.025)}

/* Live cart state */
.cart-empty--live{animation:cartEmptyIn .55s var(--ease) both}
.product-card-add-btn.is-in-cart{color:var(--burgundy);border-color:rgba(101,29,41,.35)}
.product-card-add-btn.is-in-cart .product-card-add-arrow{transform:translateY(-1px)}
@keyframes cartEmptyIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}

/* Slightly more movement across editorial pages without turning them into a carnival. */
.special-hero-photo,.packaging-hero-photo,.about-map-card,.collection-hero-art{will-change:transform}
.collection-hero-art{animation:editorialDrift 12s ease-in-out infinite}
@keyframes editorialDrift{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}

@media (max-width:900px){
  .header-nav{background:rgba(250,248,243,.99)}
  .special-hero-grid--photo{grid-template-columns:1fr}
  .special-hero-photo,.special-hero-photo img,.special-photo-placeholder{min-height:560px}
  .care-hero-note{grid-template-columns:110px 1fr}
  .collection-hero--exclusive .collection-hero-art{height:300px;min-height:300px}
  .featured-section::before{display:none}
}
@media (max-width:640px){
  .header-nav{border-top:1px solid var(--line-soft)}
  .special-hero-photo,.special-hero-photo img,.special-photo-placeholder{min-height:470px}
  .care-hero-note{grid-template-columns:1fr;gap:8px}
  .collection-sort-select{min-width:180px!important}
  .collection-hero-art{animation:none}
}
@media (prefers-reduced-motion:reduce){.featured-section::before,.collection-hero-art{animation:none!important}}


/* V24 — product page cart state */
.product-add-btn .product-add-btn-check{display:none}
.product-add-btn.is-in-cart{background:var(--paper);color:var(--burgundy);border:1px solid rgba(101,29,41,.38)}
.product-add-btn.is-in-cart .product-add-btn-label{display:none}
.product-add-btn.is-in-cart .product-add-btn-check{display:inline}
.product-add-btn.is-in-cart .product-add-btn-arrow{transform:none}
.product-add-btn.is-in-cart:hover{background:var(--paper-2);color:var(--burgundy-dark)}

/* V24 — care page is intentionally a photo placeholder until the cleaning-process image is ready. */
.care-process-placeholder{height:100%;min-height:620px;display:grid;place-items:center;align-content:center;text-align:center;padding:40px;background:linear-gradient(145deg,#e8dfd1,#d2c2b0);color:var(--muted)}
.care-process-placeholder span{font-family:var(--serif);font-size:clamp(34px,4vw,58px);line-height:.95;letter-spacing:-.04em}
.care-process-placeholder small{margin-top:14px;font-size:8px;letter-spacing:.16em;text-transform:uppercase}
.care-process-placeholder::before{content:"";position:absolute;inset:18px;border:1px solid rgba(255,255,255,.62);pointer-events:none}
.special-hero-photo{position:relative}
.care-process-placeholder{position:absolute;inset:0}
.care-process-list{margin-top:44px;border-top:1px solid var(--line)}
.care-process-item{display:grid;grid-template-columns:54px 190px 1fr;gap:20px;padding:22px 0;border-bottom:1px solid var(--line-soft);align-items:start}
.care-process-item>span{font-size:9px;letter-spacing:.14em;color:var(--burgundy)}
.care-process-item h2{font-size:25px;letter-spacing:-.025em}
.care-process-item p{font-size:13px;line-height:1.75;color:var(--muted);max-width:520px}
.care-final-touch{margin-top:44px;padding-top:22px;border-top:1px solid var(--line);font-family:var(--serif);font-size:28px;line-height:1.1;letter-spacing:-.02em}
.care-final-touch em{color:var(--burgundy)}
@media (max-width:900px){.care-process-placeholder{min-height:560px}.care-process-item{grid-template-columns:45px 1fr;gap:10px 16px}.care-process-item p{grid-column:2}.care-final-touch{font-size:24px}}
@media (max-width:640px){.care-process-placeholder{min-height:470px}.care-process-item{grid-template-columns:38px 1fr}.care-process-item p{grid-column:2}.care-process-item h2{font-size:22px}}


/* Exclusive decorative art must never create horizontal page overflow. */
.featured-section{overflow:hidden}

/* ============================================================
   BAGUETTE — V27 audited polish
   ============================================================ */

/* Header: fixed layout, no backdrop-filter repaint, nav cloud collapses
   independently from the header itself. This avoids scroll-time reflow jitter. */
.site-header{
  height:86px!important;
  min-height:86px!important;
  background:var(--paper)!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  border-bottom:1px solid var(--line-soft);
  box-shadow:none;
  overflow:visible;
  transition:box-shadow .34s var(--ease),border-color .34s var(--ease);
}
.site-header .header-inner{
  height:86px!important;
  min-height:86px!important;
}
.site-header .header-top{
  height:86px!important;
}
.site-header .header-nav{
  position:absolute!important;
  left:50%!important;
  top:86px!important;
  width:100%!important;
  height:42px!important;
  max-height:42px!important;
  margin:0!important;
  display:flex!important;
  align-items:center;
  justify-content:center;
  overflow:hidden!important;
  background:var(--paper)!important;
  border-top:1px solid var(--line-soft);
  border-bottom:1px solid var(--line-soft);
  opacity:1;
  visibility:visible;
  transform:translateX(-50%);
  pointer-events:auto;
  transition:opacity .38s var(--ease),transform .48s var(--ease),visibility .38s var(--ease);
  will-change:opacity,transform;
}
.site-header .header-nav-list{
  height:42px!important;
  min-height:42px!important;
  align-items:center;
}
.site-header--scrolled{
  height:86px!important;
  min-height:86px!important;
  background:var(--paper)!important;
  border-color:var(--line)!important;
  box-shadow:0 10px 35px rgba(27,25,22,.035);
}
.site-header--scrolled .header-nav{
  opacity:0!important;
  visibility:hidden!important;
  transform:translate(-50%,-14px)!important;
  pointer-events:none!important;
}

/* The marquee reserves the navigation-cloud height only while the cloud is visible.
   This keeps both layers visible at the top and lets the marquee slide neatly upward. */
.marquee{
  margin-top:42px;
  transition:margin-top .48s var(--ease);
}
.site-header--scrolled + .marquee{margin-top:0}

/* Slightly larger, optically centered logo. */
.header-logo{width:172px!important;height:64px!important;transform:none!important}
.header-logo img{
  width:158px!important;
  height:auto!important;
  max-height:58px!important;
  object-fit:contain;
  transform:none!important;
}

/* Mobile: the navigation cloud is completely removed. Sidebar is the only navigation. */
@media (max-width:760px){
  .site-header,
  .site-header--scrolled{
    height:68px!important;
    min-height:68px!important;
  }
  .site-header .header-inner,
  .site-header .header-top{
    height:68px!important;
    min-height:68px!important;
  }
  .site-header .header-nav,
  .site-header--scrolled .header-nav{display:none!important}
  .marquee,
  .site-header--scrolled + .marquee{margin-top:0}
  .header-logo{width:150px!important;height:56px!important}
  .header-logo img{width:142px!important;max-height:52px!important}
}

/* Hero decoration should never sit on top of the watch photograph on small screens. */
@media (max-width:760px){
  .hero-decoration{display:none!important}
}

/* Sorting control: SVG-only arrows, so iOS cannot turn the glyph into emoji. */
.collection-sort-glyph{left:15px!important;width:15px;height:15px;display:grid;place-items:center}
.sort-glyph-icon,.sort-arrow-icon{width:15px;height:15px;display:block;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.collection-sort-arrow{right:15px!important;width:15px;height:15px;display:grid;place-items:center;font-size:0!important}
.collection-sort-shell:hover .collection-sort-arrow{transform:translate(2px,-2px)}

/* Product add/remove state. */
.product-card-add-btn.is-in-cart .product-card-add-label,
.product-add-btn.is-in-cart .product-add-btn-label{display:none}
.product-card-add-btn.is-in-cart .product-card-add-check,
.product-add-btn.is-in-cart .product-add-btn-check{display:none}
.product-card-add-btn.is-in-cart,
.product-add-btn.is-in-cart{color:var(--burgundy);border-color:rgba(101,29,41,.35)}
.product-card-add-btn.is-removing,
.product-add-btn.is-removing{opacity:.55;pointer-events:none}

/* Footer: supplied logo + restrained movement. */
.footer-logo{display:inline-flex;align-items:center;justify-content:flex-start;width:190px;height:78px;overflow:visible}
.footer-logo img{display:block;width:190px;height:auto;max-height:78px;object-fit:contain;transform:none}
.footer-nav-item,.footer-contact-link,.footer-social-link,.footer-legal-link{transition:transform .35s var(--ease),color .25s var(--ease)}
.footer-nav-item:hover{transform:translateX(5px)}
.footer-nav-link{position:relative;display:inline-block}
.footer-nav-link::after{content:"";position:absolute;left:0;right:100%;bottom:-3px;height:1px;background:var(--burgundy);transition:right .35s var(--ease)}
.footer-nav-link:hover::after{right:0}
.footer-contact-link:hover{transform:translateX(4px)}
.footer-social-link:hover{transform:translateY(-4px) rotate(-3deg)}
.footer-bottom{position:relative;overflow:hidden}
.footer-bottom::before{content:"";position:absolute;left:0;top:-1px;width:34%;height:1px;background:var(--burgundy);transform:scaleX(.25);transform-origin:left;transition:transform .7s var(--ease)}
.site-footer:hover .footer-bottom::before{transform:scaleX(1)}

/* Mobile gallery: touch swipe is handled by JS; disable accidental browser gestures on the image. */
@media (max-width:760px){
  .product-gallery-main{touch-action:pan-y;cursor:grab}
  .product-gallery-main:active{cursor:grabbing}
  .gallery-nav{opacity:1}
  .gallery-nav span{width:40px;height:40px;font-size:16px}
}

/* Keep the editorial header/photo pages visually stable while the header animates. */
.page-home .hero-media img,
.page-about .boutique-photo img{backface-visibility:hidden;-webkit-backface-visibility:hidden}

/* V27 audit: generic text glyph arrows remain available only where they are not
   used as UI iconography; actionable diagonal arrows use .arrow-icon SVGs. */

@media (max-width:760px){.footer-logo{width:150px;height:62px}.footer-logo img{width:150px;max-height:62px}}

.product-card-remove-btn,
.product-remove-btn{
  display:inline-flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  width:100%;
  margin-top:7px;
  padding:9px 11px;
  border:1px solid var(--line-soft);
  color:var(--muted);
  font-size:9px;
  letter-spacing:.11em;
  text-transform:uppercase;
  opacity:0;
  visibility:hidden;
  transform:translateY(-4px);
  pointer-events:none;
  transition:opacity .3s var(--ease),transform .35s var(--ease),visibility .3s var(--ease),color .25s var(--ease),border-color .25s var(--ease);
}
.product-card-remove-btn.is-visible,
.product-remove-btn.is-visible{
  opacity:1;
  visibility:visible;
  transform:none;
  pointer-events:auto;
}
.product-card-remove-btn:hover,
.product-remove-btn:hover{color:var(--burgundy);border-color:rgba(101,29,41,.28)}
.product-card-remove-btn .arrow-icon,
.product-remove-btn .arrow-icon{width:13px;height:13px}
.product-card-remove-btn.is-removing,
.product-remove-btn.is-removing{opacity:.45;pointer-events:none}
.product-add-btn.is-in-cart{background:var(--paper);color:var(--burgundy);border:1px solid rgba(101,29,41,.38)}
.product-add-btn.is-in-cart .product-add-btn-label{display:none}
.product-add-btn.is-in-cart .product-add-btn-check{display:inline}
.product-add-btn.is-in-cart .product-add-btn-arrow{transform:none}
@media (max-width:760px){
  .product-card-remove-btn{font-size:8px;padding:8px 9px}
}

/* V28 — in-cart controls: compact on product cards, actionable everywhere. */
.product-card-add-btn.is-in-cart{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 1px 0;border-top-color:rgba(101,29,41,.28);color:var(--burgundy);cursor:pointer}
.product-card-add-btn.is-in-cart .product-card-add-label{display:none!important}
.product-card-add-btn.is-in-cart .product-card-add-check{display:inline!important;flex:1}
.product-card-add-btn.is-in-cart .product-card-add-arrow{display:block;width:14px;height:14px;transform:none}
.product-card-add-btn.is-in-cart:hover .product-card-add-arrow{transform:translate(3px,-3px)}
.product-add-btn.is-in-cart{cursor:pointer}
.product-add-btn.is-in-cart .product-add-btn-check{display:inline!important}
.product-add-btn.is-in-cart:hover .product-add-btn-arrow{transform:translate(3px,-3px)}

/* ============================================================
   V29 — product card controls, high-resolution product imagery,
   homepage horizontal product rails
   ============================================================ */

/* Product imagery: InSales large_url is only 480px. Use the original asset
   so the browser can render the best source available from the catalog. */
.product-card-image,
.product-gallery-image{image-rendering:auto;-webkit-backface-visibility:hidden;backface-visibility:hidden}

/* Compact cart controls on product cards. The icon communicates the action;
   aria-label + tooltip keeps the control understandable without visual noise. */
.product-card-form{display:inline-flex;width:auto;vertical-align:middle;margin-top:12px}
.product-card-add-btn{width:38px!important;height:38px!important;min-width:38px;display:grid!important;place-items:center;grid-template-columns:1fr!important;padding:0!important;border:1px solid rgba(27,25,22,.14)!important;border-radius:50%;background:transparent;box-shadow:none;color:var(--ink);position:relative;transition:color var(--fast),border-color var(--fast),background var(--fast),transform var(--fast)}
.product-card-add-btn:hover{color:var(--burgundy);border-color:rgba(101,29,41,.42)!important;background:rgba(101,29,41,.035);transform:translateY(-1px)}
.product-card-add-icon{width:17px;height:17px;display:grid;place-items:center}
.product-card-add-icon svg,.product-card-remove-btn svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.35;stroke-linecap:round;stroke-linejoin:round}
.product-card-add-icon--check{display:none}
.product-card-add-btn.is-in-cart{background:var(--burgundy)!important;color:var(--white)!important;border-color:var(--burgundy)!important}
.product-card-add-btn.is-in-cart .product-card-add-icon--add{display:none}
.product-card-add-btn.is-in-cart .product-card-add-icon--check{display:grid}
.product-card-add-btn.is-in-cart:hover{background:var(--burgundy-dark)!important;border-color:var(--burgundy-dark)!important}
.product-card-add-btn.is-processing{transform:scale(.96);opacity:.72}
.product-card-add-btn::after,.product-card-remove-btn::after{content:attr(data-tooltip);position:absolute;left:50%;bottom:calc(100% + 8px);transform:translate(-50%,4px);padding:6px 8px;background:var(--ink);color:var(--white);font-size:8px;line-height:1;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity var(--fast),transform var(--fast);z-index:30}
.product-card-add-btn:hover::after,.product-card-remove-btn:hover::after{opacity:1;transform:translate(-50%,0)}
.product-card-remove-btn{position:relative;display:none!important;width:38px;height:38px;vertical-align:middle;align-items:center;justify-content:center;margin:12px 0 0 6px;padding:0;border:1px solid var(--line-soft);border-radius:50%;color:var(--muted);background:transparent;transition:color var(--fast),border-color var(--fast),background var(--fast),transform var(--fast)}
.product-card-remove-btn.is-visible{display:inline-flex!important}
.product-card-remove-btn:hover{color:var(--burgundy);border-color:rgba(101,29,41,.3);background:rgba(101,29,41,.035);transform:translateY(-1px)}
.product-card-remove-btn.is-removing{opacity:.45;pointer-events:none}

/* Homepage rails */
.product-carousel{position:relative}
.product-carousel-viewport{overflow-x:auto;overflow-y:visible;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;-ms-overflow-style:none;touch-action:pan-x;overscroll-behavior-x:contain;padding:2px 0 18px}
.product-carousel-viewport::-webkit-scrollbar{display:none}
.product-carousel-track{display:flex;gap:24px;align-items:flex-start;width:max-content}
.product-carousel-slide{flex:0 0 calc((min(100%, 1376px) - 72px)/4);min-width:0;scroll-snap-align:start}
.product-carousel-slide .product-card{width:100%}
.product-carousel-controls{display:flex;justify-content:flex-end;gap:8px;margin:-2px 0 18px}
.product-carousel-arrow{width:42px;height:42px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;color:var(--ink);background:rgba(250,248,243,.7);transition:color var(--fast),border-color var(--fast),background var(--fast),transform var(--fast),opacity var(--fast)}
.product-carousel-arrow:hover:not(:disabled){color:var(--burgundy);border-color:rgba(101,29,41,.38);background:var(--white);transform:translateY(-2px)}
.product-carousel-arrow:disabled{opacity:.3;cursor:default}
.product-carousel-bottom-link{display:flex;justify-content:flex-end;margin-top:12px}
.product-carousel-bottom-link a{display:inline-flex;align-items:center;gap:8px;color:var(--burgundy);font-size:10px;letter-spacing:.14em;text-transform:uppercase;transition:color var(--fast),transform var(--fast)}
.product-carousel-bottom-link a:hover{color:var(--ink);transform:translateY(-1px)}
.product-carousel-bottom-link .arrow-icon{width:15px;height:15px}
.product-carousel-bottom-link .arrow-icon path{stroke:currentColor;fill:none;stroke-width:1.35;stroke-linecap:round;stroke-linejoin:round}
.product-carousel-arrow .arrow-icon{width:17px;height:17px}
.product-carousel-arrow .arrow-icon path{stroke:currentColor;fill:none;stroke-width:1.35;stroke-linecap:round;stroke-linejoin:round}
.product-carousel-cta{align-self:stretch;min-height:100%;background:var(--burgundy);color:var(--white);overflow:hidden}
.product-carousel-cta-link{position:relative;min-height:100%;aspect-ratio:4/5;display:flex;flex-direction:column;justify-content:space-between;padding:26px;color:var(--white);background:linear-gradient(145deg,var(--burgundy),var(--burgundy-dark));overflow:hidden}
.product-carousel-cta-link::before{content:"";position:absolute;width:180px;height:180px;border:1px solid rgba(255,255,255,.2);border-radius:50%;right:-72px;top:-65px;box-shadow:0 0 0 42px rgba(255,255,255,.035)}
.product-carousel-cta-link strong{position:relative;z-index:1;font-family:var(--serif);font-size:clamp(32px,3vw,54px);font-weight:400;line-height:.98;letter-spacing:-.045em}
.product-carousel-cta-link strong em{color:var(--cream)}
.product-carousel-cta-link .section-index{position:relative;z-index:1;color:rgba(255,255,255,.62)}
.product-carousel-cta-arrow{position:relative;z-index:1;align-self:flex-end;width:42px;height:42px;border:1px solid rgba(255,255,255,.28);border-radius:50%;display:grid;place-items:center}
.product-carousel-cta-arrow .arrow-icon{width:16px;height:16px}
.product-carousel-cta-arrow .arrow-icon path{stroke:currentColor;fill:none;stroke-width:1.35;stroke-linecap:round;stroke-linejoin:round}

/* Keep product specs in the desktop two-column layout on phones too. */
@media (max-width:760px){
  .product-spec-item{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:14px;padding:13px 0}
  .product-spec-value{text-align:right;overflow-wrap:anywhere}
  .product-carousel-track{gap:14px}
  .product-carousel-slide{flex-basis:calc(100vw - 32px)}
  .product-carousel-controls{margin-bottom:14px}
  .product-carousel-arrow{width:38px;height:38px}
  .product-carousel-cta-link{aspect-ratio:4/5;padding:22px}
}
@media (min-width:761px) and (max-width:1100px){
  .product-carousel-slide{flex-basis:calc((100vw - 64px - 24px)/2)}
}
@media (min-width:1101px){
  .product-carousel-slide{flex-basis:calc((min(100vw - 64px, 1440px) - 72px)/4)}
}

/* ============================================================
   V30 — clearer product actions and calmer, consumer-friendly rails
   ============================================================ */
/* Product card actions: readable without tooltips, still compact. */
.product-card-form{display:block;width:100%;margin-top:12px}
.product-card-add-btn{
  width:auto!important;height:38px!important;min-width:0!important;display:inline-flex!important;align-items:center;justify-content:center;gap:8px;padding:0 13px!important;
  border:1px solid var(--line)!important;border-radius:999px!important;background:transparent!important;color:var(--ink)!important;
  font-size:8px!important;letter-spacing:.11em;text-transform:uppercase;white-space:nowrap
}
.product-card-add-btn .product-card-add-label{display:inline!important}
.product-card-add-btn .product-card-add-check{display:none!important}
.product-card-add-btn.is-in-cart{background:var(--burgundy)!important;border-color:var(--burgundy)!important;color:var(--white)!important}
.product-card-add-btn.is-in-cart .product-card-add-label{display:none!important}
.product-card-add-btn.is-in-cart .product-card-add-check{display:inline!important;flex:none}
.product-card-add-icon{width:16px;height:16px;flex:0 0 16px}
.product-card-add-btn:hover{transform:translateY(-1px);border-color:rgba(101,29,41,.42)!important;color:var(--burgundy)!important;background:rgba(101,29,41,.035)!important}
.product-card-add-btn.is-in-cart:hover{background:var(--burgundy-dark)!important;border-color:var(--burgundy-dark)!important;color:var(--white)!important}
.product-card-add-btn::after,.product-card-remove-btn::after{display:none!important}
.product-card-remove-btn{
  display:none!important;width:auto!important;height:38px!important;margin:8px 0 0!important;padding:0 11px!important;border-radius:999px!important;
  align-items:center;justify-content:center;gap:7px;color:var(--muted);font-size:8px;letter-spacing:.1em;text-transform:uppercase
}
.product-card-remove-btn.is-visible{display:inline-flex!important}
.product-card-remove-btn svg{width:15px;height:15px}
.product-card-remove-btn span{display:inline}

/* Rails: arrows live at the edges and stay deliberately quiet. */
.product-carousel{position:relative}
.product-carousel-controls{position:absolute;z-index:5;left:-12px;right:-12px;top:50%;height:0;margin:0;display:flex;justify-content:space-between;pointer-events:none}
.product-carousel-arrow{pointer-events:auto;width:36px;height:36px;border-color:rgba(27,25,22,.13);background:rgba(250,248,243,.76);backdrop-filter:blur(8px);opacity:.48}
.product-carousel-arrow:hover:not(:disabled){opacity:1;transform:translateY(-50%) scale(1.04)}
.product-carousel-arrow:disabled{opacity:.12}
.product-carousel-viewport{
  touch-action:pan-y;overscroll-behavior-x:auto;position:relative;
  mask-image:linear-gradient(to right,transparent 0,black 5%,black 95%,transparent 100%);
  -webkit-mask-image:linear-gradient(to right,transparent 0,black 5%,black 95%,transparent 100%);
}
.product-carousel-cta-link{transition:transform .55s var(--ease),filter .55s var(--ease)}
.product-carousel-cta-link:hover{transform:translateY(-4px);filter:brightness(1.03)}
/* Exclusive and Archive end cards are intentionally different chapters. */
.product-carousel--exclusive .product-carousel-cta-link{background:linear-gradient(145deg,#241d1c,#651d29)}
.product-carousel--exclusive .product-carousel-cta-link::before{border-color:rgba(255,255,255,.16);box-shadow:0 0 0 42px rgba(255,255,255,.025)}
.product-carousel--archive .product-carousel-cta{background:#e9e1d5;color:var(--ink);border:1px solid var(--line-soft)}
.product-carousel--archive .product-carousel-cta-link{background:linear-gradient(145deg,#efe8dd,#ddd1c0);color:var(--ink)}
.product-carousel--archive .product-carousel-cta-link::before{border-color:rgba(101,29,41,.18);box-shadow:0 0 0 42px rgba(101,29,41,.035)}
.product-carousel--archive .product-carousel-cta-link strong em{color:var(--burgundy)}
.product-carousel--archive .product-carousel-cta-link .section-index{color:var(--muted)}
.product-carousel--archive .product-carousel-cta-arrow{border-color:rgba(27,25,22,.2)}

@media (max-width:760px){
  .product-carousel-controls{left:-3px;right:-3px;top:48%;z-index:8}
  .product-carousel-arrow{width:30px;height:30px;background:rgba(250,248,243,.62);opacity:.42}
  .product-carousel-arrow .arrow-icon{width:14px;height:14px}
  .product-carousel-viewport{margin-inline:-16px;padding:2px 0 16px;scroll-padding-inline:40px;mask-image:linear-gradient(to right,transparent 0,black 8%,black 92%,transparent 100%);-webkit-mask-image:linear-gradient(to right,transparent 0,black 8%,black 92%,transparent 100%)}
  .product-carousel-track{gap:14px;padding-inline:40px}
  .product-carousel-slide{flex-basis:calc(100vw - 112px);scroll-snap-align:start}
  .product-carousel-slide .product-card{transition:transform .35s var(--ease),opacity .35s var(--ease)}
  .product-card-add-btn{height:36px!important;padding-inline:11px!important;font-size:7.5px!important}
  .product-card-remove-btn{height:34px!important;padding-inline:10px!important;font-size:7.5px!important}
}
/* Keep edge controls centered on their anchor line. */
.product-carousel-arrow{transform:translateY(-50%)}
.product-carousel-arrow:disabled{transform:translateY(-50%)}


/* ============================================================
   BAGUETTE — V31
   Archive alignment / compact cart actions / calmer rails / cart swipe
   ============================================================ */

/* Collection grid: every product sits on the same baseline. */
.product-grid--archive .product-card,
.product-grid--archive .product-card:nth-child(3n+2),
.product-grid--archive .product-card:nth-child(3n+2):hover{transform:none!important}
.product-grid--archive .product-card:hover{transform:translateY(-3px)!important}
.product-grid--archive .product-card-brand{display:none!important}

/* Product cards: one compact action row; no vertical jump when the item enters the cart. */
.product-card-actions{display:flex;align-items:center;gap:7px;min-height:39px;margin-top:12px}
.product-card-form{display:block;width:auto;margin:0}
.product-card-add-btn{height:38px!important;width:auto!important;min-width:0!important;padding:0 12px!important;display:inline-flex!important;align-items:center;justify-content:center;gap:7px;border:1px solid var(--line)!important;border-radius:999px!important;background:transparent!important;color:var(--ink)!important;font-size:8px!important;letter-spacing:.1em;text-transform:uppercase;white-space:nowrap}
.product-card-add-btn:hover{background:rgba(101,29,41,.035)!important;color:var(--burgundy)!important;border-color:rgba(101,29,41,.38)!important}
.product-card-add-btn.is-in-cart{background:var(--burgundy)!important;border-color:var(--burgundy)!important;color:var(--white)!important}
.product-card-add-btn.is-in-cart:hover{background:var(--burgundy-dark)!important;border-color:var(--burgundy-dark)!important;color:var(--white)!important}
.product-card-add-btn .product-card-add-label{display:inline!important}
.product-card-add-btn .product-card-add-check{display:none!important}
.product-card-add-btn.is-in-cart .product-card-add-label{display:none!important}
.product-card-add-btn.is-in-cart .product-card-add-check{display:inline!important}
.product-card-remove-btn{position:static!important;display:none!important;width:auto!important;height:38px!important;min-width:38px;margin:0!important;padding:0 10px!important;align-items:center;justify-content:center;gap:6px;border:1px solid var(--line)!important;border-radius:999px!important;background:transparent!important;color:var(--muted)!important;font-size:8px!important;letter-spacing:.1em;text-transform:uppercase;opacity:1!important;visibility:visible!important;transform:none!important;pointer-events:auto!important}
.product-card-remove-btn.is-visible{display:inline-flex!important}
.product-card-remove-btn:hover{color:var(--burgundy)!important;border-color:rgba(101,29,41,.32)!important;background:rgba(101,29,41,.035)!important;transform:none!important}
.product-card-remove-btn svg{width:14px!important;height:14px!important}
.product-card-remove-btn span{display:inline!important}

/* Product page: the cart state and remove action share one stable row. */
.product-actions-row{display:flex;align-items:stretch;gap:8px;width:100%}
.product-actions-row .product-add-btn{flex:1;min-width:0}
.product-actions-row .product-remove-btn{flex:0 0 auto}
.product-remove-btn{display:none!important;width:auto!important;min-width:96px;height:auto!important;margin:0!important;padding:0 14px!important;align-items:center;justify-content:center;gap:7px;border:1px solid var(--line)!important;border-radius:0!important;background:transparent!important;color:var(--muted)!important;font-size:9px!important;letter-spacing:.1em;text-transform:uppercase;opacity:1!important;visibility:visible!important;transform:none!important;pointer-events:auto!important}
.product-remove-btn.is-visible{display:inline-flex!important}
.product-remove-btn:hover{color:var(--burgundy)!important;border-color:rgba(101,29,41,.32)!important;background:rgba(101,29,41,.035)!important}
.product-remove-btn .remove-icon{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.35;stroke-linecap:round;stroke-linejoin:round}
.product-add-btn.is-in-cart{background:var(--paper)!important;color:var(--burgundy)!important;border:1px solid rgba(101,29,41,.38)!important}
.product-add-btn.is-in-cart .product-add-btn-label{display:none!important}
.product-add-btn.is-in-cart .product-add-btn-check{display:inline!important}
.product-add-btn.is-in-cart:hover{background:var(--paper-2)!important;color:var(--burgundy-dark)!important}

/* Homepage rails: conservative cards, no blur/mask, clear peeks on mobile. */
.product-carousel-viewport{mask-image:none!important;-webkit-mask-image:none!important;touch-action:pan-y!important;overscroll-behavior-x:contain}
.product-carousel-controls{pointer-events:none}
.product-carousel-arrow{pointer-events:auto;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;background:transparent!important;border-color:transparent!important;box-shadow:none!important;opacity:.38}
.product-carousel-arrow:hover:not(:disabled){opacity:.8;background:transparent!important;border-color:transparent!important;transform:translateY(-50%)!important}
.product-carousel-arrow:disabled{opacity:.12}
.product-carousel-arrow .arrow-icon{width:16px;height:16px}
.product-carousel-cta-link{transition:none!important}
.product-carousel-cta-link:hover{transform:none!important;filter:none!important}

/* No touch zoom on product cards. Desktop hover remains available. */
@media (hover:none){
  .product-card:hover{transform:none!important}
  .product-card:hover .product-card-image,.product-card-link:hover .product-card-image{transform:none!important;filter:none!important}
}

/* Mobile rail: one calm central card with substantial neighboring peeks. */
@media (max-width:760px){
  .product-carousel-viewport{margin-inline:-16px!important;padding:2px 0 22px!important;scroll-padding-inline:0!important;overflow-x:hidden!important;overflow-y:visible!important;overscroll-behavior-x:none!important}
  .product-carousel-track{gap:16px!important;padding-inline:60px!important}
  .product-carousel-slide{flex-basis:calc(100vw - 120px)!important;scroll-snap-align:none}
  .product-carousel-slide .product-card{transition:none!important}
  .product-carousel-controls{left:-2px!important;right:-2px!important;top:48%!important}
  .product-carousel-arrow{width:28px!important;height:28px!important;opacity:.32}
  .product-carousel-arrow .arrow-icon{width:13px!important;height:13px!important}
  .product-card-actions{gap:6px;min-height:36px;margin-top:10px}
  .product-card-add-btn{height:36px!important;padding:0 10px!important;font-size:7.5px!important}
  .product-card-remove-btn{height:36px!important;min-width:36px!important;padding:0 9px!important;font-size:7.5px!important}
  .product-card-remove-btn span{display:inline!important}
  .product-actions-row{gap:7px}
  .product-remove-btn{min-width:92px;padding:0 11px!important;font-size:8px!important}
}

/* Cart rows: mobile delete button becomes a clean cross at the right. */
.cart-item{position:relative;overflow:hidden;display:block}
.cart-item-content{position:relative;z-index:2;display:grid;grid-template-columns:150px 1fr auto auto;gap:26px;align-items:center;background:var(--bg);transition:transform .32s var(--ease);will-change:transform}
.cart-item-swipe-delete{display:none}
@media (max-width:760px){
  .cart-item{display:block;padding:0;min-height:122px;--swipe-progress:0}
  .cart-item-content{grid-template-columns:90px minmax(0,1fr);gap:15px;padding:15px 0;background:var(--bg);touch-action:pan-y;will-change:transform}
  .cart-item-image{grid-column:1;grid-row:1 / span 2;width:90px}
  .cart-item-info{grid-column:2;grid-row:1;padding-right:48px;min-width:0}
  .cart-item-price{grid-column:2;grid-row:2;justify-self:start;padding-right:48px;margin-top:6px}
  .cart-item-remove{position:absolute;right:0;top:15px;z-index:3;width:34px;height:34px;display:grid;place-items:center;padding:0;margin:0;border:1px solid var(--line)!important;border-radius:50%;background:var(--bg);color:var(--muted);font-size:0;line-height:1}
  .cart-item-remove svg{width:15px;height:15px}
  .cart-item-remove span{display:none}
  .cart-item-swipe-delete{position:absolute;inset:0 0 0 auto;z-index:1;display:grid;place-items:center;width:82px;padding:0;background:var(--burgundy);color:#fff;opacity:calc(.18 + var(--swipe-progress) * .82);transition:opacity .18s var(--ease)}
  .cart-item-swipe-delete svg{width:19px;height:19px}
  .cart-item.is-removing .cart-item-content{transition:transform .22s var(--ease)}
  .cart-item-brand{font-size:8px}
  .cart-item-title{font-size:21px;margin-top:5px;line-height:1.05}
  .cart-item-variant,.cart-item-unique{font-size:10px;margin-top:4px}
}

@media (max-width:420px){
  .product-card-add-btn{padding-inline:8px!important}
  .product-card-remove-btn{min-width:34px!important;padding-inline:7px!important}
  .product-remove-btn{min-width:84px;padding-inline:9px!important}
}


/* ============================================================
   BAGUETTE — V32
   Carousel limits / mobile swipe / archive card alignment / search grid / cart UX
   ============================================================ */

/* All product cards keep the same title/action rhythm; this also stabilizes homepage rails. */
.product-card{display:flex;flex-direction:column;height:100%}
.product-card-link{display:flex;flex-direction:column;flex:1 1 auto}
.product-card-title{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;min-height:2.12em;line-height:1.06}
.product-card-info{display:flex;flex-direction:column;flex:1 1 auto}
.product-card-price-wrap{margin-top:auto;padding-top:11px}

/* Product cards in archive/search: stable height and shared action baseline. */
.product-grid--archive .product-card,
.product-grid--search .product-card{display:flex;flex-direction:column;height:100%;transform:none!important}
.product-grid--archive .product-card-link,
.product-grid--search .product-card-link{display:flex;flex-direction:column;flex:1 1 auto}
.product-grid--archive .product-card-title,
.product-grid--search .product-card-title{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;min-height:2.12em;line-height:1.06}
.product-grid--archive .product-card-info,
.product-grid--search .product-card-info{display:flex;flex-direction:column;flex:1 1 auto}
.product-grid--archive .product-card-price-wrap,
.product-grid--search .product-card-price-wrap{margin-top:auto;padding-top:11px}
.product-grid--archive .product-card-actions,
.product-grid--search .product-card-actions{margin-top:12px}
.product-grid--archive .product-card:hover,
.product-grid--archive .product-card:focus-within{transform:none!important}
.product-grid--archive .product-card-link:hover .product-card-image,
.product-grid--archive .product-card-link:focus-visible .product-card-image{transform:none!important;filter:none!important}

/* Homepage rails: desktop can contain up to 10 products, then the CTA card. */
.product-carousel-slide{scroll-snap-stop:always}
.product-carousel-arrow{border-color:rgba(27,25,22,.22)!important;background:rgba(250,248,243,.94)!important;opacity:.68!important;box-shadow:0 5px 18px rgba(27,25,22,.07);backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
.product-carousel-arrow:hover:not(:disabled){opacity:.95!important;border-color:rgba(101,29,41,.4)!important;background:var(--white)!important}
.product-carousel-arrow:disabled{opacity:.22!important}

/* Search: 3 columns on desktop, 2 columns on phones. */
@media (min-width:1101px){
  .product-grid--search{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (min-width:761px) and (max-width:1100px){
  .product-grid--search{grid-template-columns:repeat(3,minmax(0,1fr))}
}

/* Remove browser-specific focus colours around circular controls. */
.sidebar-close:focus,
.search-overlay-close:focus,
.product-carousel-arrow:focus,
.collection-sort-select:focus{outline:none}
.sidebar-close:focus-visible,
.search-overlay-close:focus-visible,
.product-carousel-arrow:focus-visible{outline:1px solid rgba(101,29,41,.32);outline-offset:3px}
.sidebar-close svg path,
.search-overlay-close svg path{stroke:currentColor!important}

/* Search back control uses the same diagonal SVG language as the rest of Baguette. */
.search-back-link .arrow-icon{width:15px;height:15px}
.search-back-link:hover .arrow-icon{transform:translate(-3px,3px)}

/* Mobile: exactly two search/category columns, with larger usable cards. */
@media (max-width:760px){
  .product-grid--search{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:28px 10px!important}
  .product-grid--archive{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:30px 10px!important}
  .product-card-image-wrap{aspect-ratio:4/5}
  .product-card-title{font-size:17px!important}
  .product-card-add-btn,.product-card-remove-btn{height:34px!important}
  .product-card-add-btn{padding-inline:9px!important}
  .product-card-remove-btn{min-width:34px!important;padding-inline:8px!important}

  /* Show at most five product cards on each homepage rail on mobile; CTA is always the final slide. */
  .product-carousel-slide:nth-child(n+6):not(.product-carousel-cta){display:none!important}
  .product-carousel-viewport{margin-inline:-16px!important;padding:2px 0 22px!important;scroll-padding-inline:16px!important;touch-action:pan-y pinch-zoom!important;overscroll-behavior-x:contain!important;mask-image:none!important;-webkit-mask-image:none!important;scroll-behavior:auto}
  .product-carousel-track{gap:12px!important;padding-inline:16px!important}
  .product-carousel-slide{flex-basis:calc(100vw - 76px)!important;scroll-snap-align:start!important}
  .product-carousel-controls{left:2px!important;right:2px!important;top:46%!important}
  .product-carousel-arrow{width:32px!important;height:32px!important;opacity:.7!important;border-color:rgba(27,25,22,.22)!important;background:rgba(250,248,243,.96)!important;box-shadow:0 4px 14px rgba(27,25,22,.08)!important}
  .product-carousel-arrow .arrow-icon{width:14px!important;height:14px!important}
}

/* At the smallest phone widths, keep the requested two-column category/search grid. */
@media (max-width:420px){
  .product-grid--search,
  .product-grid--archive{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}

/* Cart: mobile deletion is swipe-only; the hint explains the gesture without clutter. */
.cart-swipe-hint{display:none}
@media (max-width:760px){
  .cart-swipe-hint{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:0 0 12px;color:var(--muted);font-size:9px;letter-spacing:.08em;text-transform:uppercase}
  .cart-swipe-hint svg{width:18px;height:18px;flex:none;color:var(--burgundy)}
  .cart-item-remove{display:none!important}
}


/* ============================================================
   BAGUETTE — V33
   Carousel gesture/centering / sort / desktop hover / clean cards
   ============================================================ */

/* Product cards: the image itself is the sole model-entry affordance. */
.product-card-overlay,.product-card-number{display:none!important}
.product-card-actions{display:flex!important;align-items:center!important;gap:7px!important;min-height:39px!important;margin-top:12px!important}
.product-card-add-btn{flex:1 1 auto!important;min-width:0!important}
.product-card-remove-btn{flex:0 0 auto!important}

/* Restore the editorial hover on desktop only for archive and search grids. */
@media (hover:hover) and (min-width:761px){
  .product-grid--archive .product-card:hover,
  .product-grid--search .product-card:hover{transform:translateY(-4px)!important}
  .product-grid--archive .product-card-link:hover .product-card-image,
  .product-grid--search .product-card-link:hover .product-card-image{transform:scale(1.035)!important;filter:saturate(.96)!important}
}
@media (hover:none), (max-width:760px){
  .product-grid--archive .product-card:hover,
  .product-grid--search .product-card:hover{transform:none!important}
  .product-grid--archive .product-card-link:hover .product-card-image,
  .product-grid--search .product-card-link:hover .product-card-image{transform:none!important;filter:none!important}
}

/* Collection sorting is a real GET form; keep only platform-supported non-alphabetic choices. */
.collection-sort{margin:0!important;position:relative!important}
.collection-sort-shell{position:relative!important}
.collection-sort-glyph .sort-glyph-icon{width:16px;height:16px;display:block}
.collection-sort-glyph .sort-glyph-icon path{stroke:currentColor;fill:none;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
.collection-sort-select{cursor:pointer!important}

/* Carousel controls sit on the vertical center of the product photography. */
.product-carousel-controls{transform:translateY(-50%)!important}
.product-carousel-arrow{transform:none!important}
.product-carousel-arrow:hover:not(:disabled){transform:translateY(-1px)!important}
.product-carousel-arrow:disabled{transform:none!important}

/* The mobile rail is centered: equal side breathing room, a next-card peek, and a quiet editorial marker at the start. */
@media (max-width:760px){
  .product-carousel-viewport{
    position:relative!important;
    margin-inline:-16px!important;
    padding:2px 0 24px!important;
    scroll-padding-inline:60px!important;
    scroll-snap-type:x mandatory!important;
    touch-action:pan-y pinch-zoom!important;
    overscroll-behavior-x:contain!important;
    mask-image:none!important;
    -webkit-mask-image:none!important;
    scroll-behavior:auto!important;
  }
  .product-carousel-track{
    gap:16px!important;
    padding-inline:60px!important;
  }
  .product-carousel-slide{
    flex-basis:calc(100vw - 120px)!important;
    scroll-snap-align:center!important;
    scroll-snap-stop:normal!important;
  }
  .product-carousel-slide .product-card{transition:none!important}
  .product-carousel-controls{left:2px!important;right:2px!important;transform:translateY(-50%)!important;pointer-events:none}
  .product-carousel-arrow{pointer-events:auto!important;width:30px!important;height:30px!important;opacity:.78!important;border-color:rgba(27,25,22,.22)!important;background:rgba(250,248,243,.96)!important;box-shadow:0 4px 14px rgba(27,25,22,.08)!important}
  .product-carousel-arrow .arrow-icon{width:14px!important;height:14px!important}
  .product-carousel-slide .product-card-actions{min-height:36px!important}
}

/* Remove the old alphabetic sorting options from the UI at every viewport. */
.collection-sort select option[value="title"],
.collection-sort select option[value="descending_title"]{display:none!important}


/* ============================================================
   BAGUETTE — V34
   Mobile rail gesture stability / cart swipe cue / gallery arrows /
   desktop archive hover restoration
   ============================================================ */

/* The gallery uses the same quiet chevrons as the homepage product rails. */
.gallery-nav{width:22%;opacity:0;transition:opacity .3s var(--ease);color:var(--ink)}
.gallery-nav span{width:36px;height:36px;border:1px solid rgba(27,25,22,.22);border-radius:50%;background:rgba(250,248,243,.94);backdrop-filter:none;-webkit-backdrop-filter:none;display:grid;place-items:center;transition:opacity .25s var(--ease),transform .35s var(--ease),border-color .25s var(--ease)}
.gallery-nav span .arrow-icon{width:16px;height:16px}
.gallery-nav span .arrow-icon path{fill:none;stroke:currentColor;stroke-width:1.35;stroke-linecap:round;stroke-linejoin:round}
.gallery-nav--prev{padding-left:14px}.gallery-nav--next{padding-right:14px}
.gallery-nav--prev:hover span{transform:translateX(-3px)}
.gallery-nav--next:hover span{transform:translateX(3px)}

/* Mobile cart: the explanatory text is gone; the row itself carries a quiet swipe cue. */
.cart-swipe-hint{display:none!important}
.cart-item-swipe-indicator{display:none}
@media (max-width:760px){
  .cart-item-swipe-indicator{position:absolute;right:5px;top:50%;z-index:4;display:grid;place-items:center;width:30px;height:30px;color:var(--muted);opacity:.62;pointer-events:none;transform:translateY(-50%);transition:opacity .24s var(--ease),transform .28s var(--ease)}
  .cart-item-swipe-indicator svg{width:17px;height:17px}
  .cart-item[data-removing="true"] .cart-item-swipe-indicator{opacity:0;transform:translate(10px,-50%)}
  .cart-item-content{padding-right:38px!important;transition:transform .42s cubic-bezier(.22,.72,.18,1)!important}
  .cart-item-swipe-delete{transition:opacity .24s var(--ease)!important}
  .cart-item.is-removing .cart-item-content{transition:transform .42s cubic-bezier(.22,.72,.18,1)!important}
  .cart-item.is-removing-complete{max-height:0!important;min-height:0!important;opacity:0;overflow:hidden;transform:translateY(-6px);margin:0!important;padding:0!important;border:0!important;transition:max-height .36s var(--ease),opacity .28s var(--ease),transform .36s var(--ease),margin .36s var(--ease)!important}
  .cart-item.is-removing-complete .cart-item-content{transform:translate3d(-100%,0,0)!important}
}

/* Mobile rail: keep the browser's vertical page scrolling, but disable native snap
   only for the duration of an active horizontal gesture. JS restores it after the
   custom eased animation, preventing the snap/flicker/jump-back seen on iOS. */
.product-carousel-viewport{scroll-snap-type:x mandatory}
@media (max-width:760px){
  .product-carousel-viewport{touch-action:pan-y!important;scroll-behavior:auto!important;overflow-x:auto!important;overscroll-behavior-x:contain!important}
  .product-carousel-viewport::before{content:"";position:absolute;left:20px;top:50%;z-index:3;width:48px;height:48px;transform:translateY(-50%);pointer-events:none;border:1px solid rgba(27,25,22,.08);background:rgba(250,248,243,.78)}
  .product-carousel-viewport::after{content:"";position:absolute;left:36px;top:50%;z-index:4;width:12px;height:12px;transform:translateY(-50%) rotate(45deg);pointer-events:none;border-top:1px solid rgba(101,29,41,.62);border-right:1px solid rgba(101,29,41,.62)}
}

/* Desktop archive/search hover: restore the lift for every column, including the middle one. */
@media (hover:hover) and (min-width:761px){
  .product-grid--archive .product-card:hover,
  .product-grid--search .product-card:hover{transform:translateY(-4px)!important}
  .product-grid--archive .product-card-link:hover .product-card-image,
  .product-grid--search .product-card-link:hover .product-card-image{transform:scale(1.018)!important;filter:none!important}
}

/* ============================================================
   BAGUETTE — V35
   Mobile carousel rebuilt from scratch / CTA image sizing /
   gallery arrow fade / cart swipe direction / reliable sorting
   ============================================================ */

/* The category CTA is an image-sized editorial tile, not a full product-card-height block. */
.product-carousel-cta{
  align-self:flex-start!important;
  min-height:0!important;
  height:auto!important;
  overflow:hidden;
}
.product-carousel-cta-link{
  display:flex!important;
  width:100%;
  aspect-ratio:4/5!important;
  min-height:0!important;
  height:auto!important;
}

/* Product-gallery controls use the same restrained opacity/fade language as rail arrows. */
.gallery-nav{opacity:0!important;transition:opacity .35s var(--ease)!important}
.product-gallery-main:hover .gallery-nav{opacity:.68!important}
.gallery-nav span{opacity:.68;transition:opacity .28s var(--ease),transform .35s var(--ease),border-color .25s var(--ease)!important}
.gallery-nav:hover span{opacity:1}
@media (max-width:760px){
  .gallery-nav{opacity:.68!important}
  .gallery-nav span{opacity:.72}
  .gallery-nav:hover span{opacity:1}
}

/* Mobile homepage rails no longer use native horizontal scrolling/snap.
   JS owns the track position so short and long gestures share one animation path. */
@media (max-width:760px){
  .product-carousel-viewport.product-carousel-viewport--custom-mobile{
    overflow:hidden!important;
    scroll-snap-type:none!important;
    scroll-behavior:auto!important;
    touch-action:pan-y!important;
    overscroll-behavior-x:contain!important;
    mask-image:none!important;
    -webkit-mask-image:none!important;
    padding:2px 0 24px!important;
  }
  .product-carousel-viewport.product-carousel-viewport--custom-mobile .product-carousel-track{
    width:max-content!important;
    gap:16px!important;
    padding:0!important;
    transform:translate3d(0,0,0);
    will-change:transform;
    transition:none!important;
  }
  .product-carousel-viewport.product-carousel-viewport--custom-mobile .product-carousel-slide{
    flex:0 0 calc(100vw - 112px)!important;
    width:calc(100vw - 112px)!important;
    scroll-snap-align:none!important;
    scroll-snap-stop:normal!important;
  }
  .product-carousel-viewport.product-carousel-viewport--custom-mobile .product-carousel-cta{
    flex:0 0 calc(100vw - 112px)!important;
    width:calc(100vw - 112px)!important;
  }
  .product-carousel-viewport.product-carousel-viewport--custom-mobile .product-carousel-cta-link{
    aspect-ratio:4/5!important;
    width:100%!important;
  }
  .product-carousel-controls{
    left:2px!important;
    right:2px!important;
    top:50%!important;
    pointer-events:none!important;
  }
  .product-carousel-arrow{
    pointer-events:auto!important;
    width:32px!important;
    height:32px!important;
    opacity:.68!important;
    background:rgba(250,248,243,.96)!important;
    border-color:rgba(27,25,22,.22)!important;
    box-shadow:0 4px 14px rgba(27,25,22,.08)!important;
    transition:opacity .28s var(--ease),color .25s var(--ease),border-color .25s var(--ease)!important;
  }
  .product-carousel-arrow:hover:not(:disabled){opacity:.95!important;transform:translateY(-50%)!important}
  .product-carousel-arrow:disabled{opacity:.18!important}
}

/* Mobile cart swipe cue points in the actual deletion direction: left. */
@media (max-width:760px){
  .cart-item-swipe-indicator svg{transform:none!important}
}

/* Sorting is a real GET submission; the native select is intentionally retained. */
.collection-sort-select{cursor:pointer!important}


/* ============================================================
   BAGUETTE — V35
   Clean mobile rail / centered first card / stable controls /
   remove small brand labels from product + cart pages
   ============================================================ */
.product-brand,
.cart-item-brand{display:none!important}

@media (max-width:760px){
  /* The mobile rail starts directly with the first product. No marker,
     pseudo-decoration, mask, or artificial leading panel. */
  .product-carousel-viewport,
  .product-carousel-viewport.product-carousel-viewport--custom-mobile{
    margin-inline:-16px!important;
    padding:2px 0 24px!important;
    overflow:hidden!important;
    scroll-snap-type:none!important;
    scroll-behavior:auto!important;
    mask-image:none!important;
    -webkit-mask-image:none!important;
    touch-action:pan-y!important;
  }
  .product-carousel-viewport::before,
  .product-carousel-viewport::after,
  .product-carousel-viewport.product-carousel-viewport--custom-mobile::before,
  .product-carousel-viewport.product-carousel-viewport--custom-mobile::after{
    display:none!important;
    content:none!important;
  }
  .product-carousel-start-marker,
  .product-carousel-viewport.product-carousel-viewport--custom-mobile .product-carousel-start-marker{
    display:none!important;
    width:0!important;
    flex:0 0 0!important;
  }
  .product-carousel-track,
  .product-carousel-viewport.product-carousel-viewport--custom-mobile .product-carousel-track{
    gap:16px!important;
    padding:0!important;
    width:max-content!important;
    will-change:transform;
    transition:none!important;
  }
  .product-carousel-slide,
  .product-carousel-viewport.product-carousel-viewport--custom-mobile .product-carousel-slide{
    flex:0 0 calc(100vw - 112px)!important;
    width:calc(100vw - 112px)!important;
    scroll-snap-align:none!important;
  }
  .product-carousel-viewport.product-carousel-viewport--custom-mobile .product-carousel-slide:first-child{
    /* JS centers this item; this rule only prevents legacy alignment styles. */
    scroll-snap-align:none!important;
  }
  .product-carousel-controls,
  .product-carousel-viewport.product-carousel-viewport--custom-mobile ~ .product-carousel-controls{
    transform:translateY(-50%)!important;
  }
  .product-carousel-arrow,
  .product-carousel-arrow:hover:not(:disabled),
  .product-carousel-arrow:focus,
  .product-carousel-arrow:focus-visible{
    transform:none!important;
    transition:opacity .28s var(--ease),color .28s var(--ease),border-color .28s var(--ease),background .28s var(--ease)!important;
  }
}

/* ============================================================
   BAGUETTE — V36
   Mobile rail: no leading decoration / image-centered controls /
   hard end boundary / quieter archive & search typography
   ============================================================ */

@media (max-width:760px){
  /* The mobile rail is intentionally clean: no pseudo-elements, no marker,
     no native horizontal scrolling. JS owns the track position. */
  .product-carousel-viewport{
    overflow-x:hidden!important;
    scroll-snap-type:none!important;
    scroll-padding-inline:0!important;
    mask-image:none!important;
    -webkit-mask-image:none!important;
  }
  .product-carousel-viewport::before,
  .product-carousel-viewport::after{
    content:none!important;
    display:none!important;
  }
  .product-carousel-track{
    padding-inline:0!important;
  }
  .product-carousel-slide{
    flex-basis:calc(100vw - 120px)!important;
    scroll-snap-align:none!important;
    scroll-snap-stop:normal!important;
  }
  /* JS calculates the vertical position from .product-card-image-wrap,
     so the controls are centered on photography rather than card content. */
  .product-carousel-controls{
    left:2px!important;
    right:2px!important;
    top:auto!important;
    transform:translateY(-50%)!important;
  }
  .product-carousel-arrow{
    transform:none!important;
  }
  .product-carousel-arrow:hover:not(:disabled){
    transform:none!important;
  }

  /* Slightly quieter product information on category/search grids. */
  .product-grid--archive .product-card-title,
  .product-grid--search .product-card-title{
    font-size:15px!important;
    line-height:1.08!important;
    min-height:2.16em!important;
    letter-spacing:-.018em!important;
  }
  .product-grid--archive .product-card-price,
  .product-grid--search .product-card-price{
    font-size:11px!important;
    line-height:1.2!important;
  }
  .product-grid--archive .product-card-price-wrap,
  .product-grid--search .product-card-price-wrap{
    padding-top:8px!important;
  }
}

/* ============================================================
   BAGUETTE — V37
   Mobile carousel controls / hard end boundary / collection art
   ============================================================ */
@media (max-width:760px){
  /* JS measures the actual product photography and writes its center to
     --carousel-controls-top. The !important keeps older mobile overrides
     from moving the arrows back into the card header. */
  .product-carousel-controls{
    top:var(--carousel-controls-top,50%)!important;
    bottom:auto!important;
    transform:translateY(-50%)!important;
  }

  /* The last category CTA is the true end of the rail. There is no
     additional empty track area after it. */
  .product-carousel-viewport.product-carousel-viewport--custom-mobile{
    overflow:hidden!important;
  }

  /* All collection hero cards share the same mobile dimensions. */
  .collection-hero-art,
  .collection-hero--exclusive .collection-hero-art{
    height:300px!important;
    min-height:300px!important;
  }
  .collection-hero-art span,
  .collection-hero--exclusive .collection-hero-art span{
    font-size:48px!important;
  }
}


/* ============================================================
   BAGUETTE — V38
   Carousel controls: desktop + mobile photo-center alignment.
   Remove legacy collection card codes.
   ============================================================ */
.product-carousel-controls{
  top:var(--carousel-controls-top,50%) !important;
  bottom:auto !important;
  transform:translateY(-50%) !important;
}
.product-carousel-arrow,
.product-carousel-arrow:disabled{
  transform:translateY(-50%) !important;
}
.product-carousel-arrow:hover:not(:disabled){
  transform:translateY(-50%) scale(1.04) !important;
}
.collection-hero-art small{display:none !important;}

@media (max-width:760px){
  .product-carousel-controls{
    top:var(--carousel-controls-top,50%) !important;
    transform:translateY(-50%) !important;
  }
  .product-carousel-arrow,
  .product-carousel-arrow:disabled,
  .product-carousel-arrow:hover:not(:disabled){
    transform:none !important;
  }
}

/* V42: marquee is continuous; hovering never pauses it. */
.marquee:hover .marquee-track{animation-play-state:running!important}

/* V42: Exclusive and Collection rails share identical card geometry. The CTA
   is an image-sized editorial card and must start on exactly the same line. */
.product-carousel-slide.product-carousel-cta{align-self:flex-start!important}
.product-carousel--exclusive .product-carousel-slide,
.product-carousel--archive .product-carousel-slide{align-self:flex-start}

/* V42: Exclusive uses the same desktop card hover treatment as The Collection. */
@media (hover:hover) and (min-width:761px){
  /* Exclusive archive cards use the exact same desktop hover values as The Collection. */
  .collection-page--exclusive .product-grid--archive .product-card:hover{transform:translateY(-4px)!important}
  .collection-page--exclusive .product-grid--archive .product-card-link:hover .product-card-image{transform:scale(1.018)!important;filter:none!important}
  .product-carousel--exclusive .product-card{transition:transform .55s var(--ease)!important}
  .product-carousel--exclusive .product-card:hover{transform:translateY(-4px)!important}
  .product-carousel--exclusive .product-card-link:hover .product-card-image{transform:scale(1.035)!important;filter:saturate(.96)!important}
  .product-carousel--archive .product-card:hover{transform:translateY(-4px)!important}
  .product-carousel--archive .product-card-link:hover .product-card-image{transform:scale(1.035)!important;filter:saturate(.96)!important}
}
@media (hover:none), (max-width:760px){
  .product-carousel--exclusive .product-card,
  .product-carousel--archive .product-card{transition:none!important;transform:none!important}
  .product-carousel--exclusive .product-card-link:hover .product-card-image,
  .product-carousel--archive .product-card-link:hover .product-card-image{transform:none!important;filter:none!important}
}

/* V42: sold items are excluded from storefront cards; no SOLD badge is rendered. */
.product-card-status{display:none!important}


/* V45: neutralize legacy featured-grid offsets inside both homepage rails.
   Exclusive sits in .featured-section, where older editorial offsets were
   originally applied to nth-child product cards. Those offsets must not leak
   into the carousel, otherwise the cards and the final CTA start on different
   vertical baselines. */
.product-carousel .product-card,
.product-carousel .product-card:nth-child(1),
.product-carousel .product-card:nth-child(2),
.product-carousel .product-card:nth-child(3),
.product-carousel .product-card:nth-child(4),
.featured-section .product-carousel .product-card:nth-child(n),
.latest-section .product-carousel .product-card:nth-child(n){
  transform:none!important;
}

/* V44: Exclusive rail uses the exact same card animation as The Collection. */
@media (hover:hover) and (min-width:761px){
  .product-carousel--exclusive .product-carousel-slide .product-card,
  .product-carousel--archive .product-carousel-slide .product-card{
    transition:transform .55s var(--ease)!important;
  }
  .product-carousel--exclusive .product-carousel-slide .product-card:hover,
  .product-carousel--archive .product-carousel-slide .product-card:hover{
    transform:translateY(-4px)!important;
  }
  .product-carousel--exclusive .product-carousel-slide .product-card-link:hover .product-card-image,
  .product-carousel--archive .product-carousel-slide .product-card-link:hover .product-card-image{
    transform:scale(1.035)!important;
    filter:saturate(.96)!important;
  }
  /* CTA is locked to the resting top baseline; product hover must never
     move the editorial end card with the product card animation. */
  .product-carousel--exclusive .product-carousel-slide.product-carousel-cta,
  .product-carousel--archive .product-carousel-slide.product-carousel-cta{
    align-self:flex-start!important;
    margin-top:0!important;
    transform:none!important;
  }
  .product-carousel--exclusive .product-carousel-cta-link,
  .product-carousel--archive .product-carousel-cta-link{
    margin-top:0!important;
    transform:none!important;
  }
}

@media (hover:none), (max-width:760px){
  .product-carousel--exclusive .product-carousel-slide .product-card,
  .product-carousel--archive .product-carousel-slide .product-card{
    transition:none!important;
    transform:none!important;
  }
  .product-carousel--exclusive .product-carousel-slide .product-card-link:hover .product-card-image,
  .product-carousel--archive .product-carousel-slide .product-card-link:hover .product-card-image{
    transform:none!important;
    filter:none!important;
  }
}

/* V45: inline COME BY note belongs directly below the About lead. */
.about-footer-note--inline{
  grid-template-columns:110px minmax(0,1fr)!important;
  gap:28px!important;
  margin:42px 0 0!important;
  padding-top:22px!important;
  padding-bottom:0!important;
}
.about-footer-note--inline span{font-size:8px;letter-spacing:.16em;color:var(--burgundy)}
.about-footer-note--inline p{margin:0;max-width:560px;font-size:13px;line-height:1.75;color:var(--muted)}
@media (max-width:640px){
  .about-footer-note--inline{grid-template-columns:1fr!important;gap:12px!important;margin-top:34px!important}
}

/* V46 — Event page */
.event-hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:70px;min-height:620px;align-items:stretch}
.event-copy{padding:85px 0 65px}
.event-copy h1{font-family:var(--serif);font-size:clamp(72px,9vw,145px);font-weight:400;line-height:.88;letter-spacing:-.065em;margin:0}
.event-copy h1 em{color:var(--burgundy)}
.event-note{display:grid;grid-template-columns:120px minmax(0,560px);gap:30px;margin-top:55px;padding-top:24px;border-top:1px solid var(--line)}
.event-note span,.event-contact-heading>span{font-size:8px;letter-spacing:.16em;color:var(--burgundy)}
.event-note p{margin:0;font-size:13px;line-height:1.8;color:var(--muted)}
.event-contact{margin-top:55px;padding-top:24px;border-top:1px solid var(--line);max-width:650px}
.event-contact-heading{display:grid;grid-template-columns:120px 1fr;gap:30px;margin-bottom:26px}
.event-contact-heading p{margin:0;color:var(--muted);font-size:13px;line-height:1.7}
.event-visual{position:relative;min-height:620px;background:#e8dfd2;overflow:hidden;margin:0}
.event-visual img{width:100%;height:100%;min-height:620px;display:block;object-fit:cover;object-position:center;filter:saturate(.82) contrast(.96)}
.event-photo-placeholder{min-height:620px;height:100%;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:10px;background:linear-gradient(135deg,#e6ded1,#cfc3b2);color:rgba(27,25,22,.5);text-align:center}
.event-photo-placeholder span{font-size:9px;letter-spacing:.16em}.event-photo-placeholder small{font-size:8px;letter-spacing:.13em;color:var(--muted)}
.event-visual figcaption{position:absolute;z-index:2;left:28px;right:28px;bottom:24px;display:flex;justify-content:space-between;color:#fff;font-size:8px;letter-spacing:.15em;text-transform:uppercase;text-shadow:0 1px 8px rgba(0,0,0,.3)}
.event-footer-note{display:grid;grid-template-columns:260px minmax(0,760px);gap:90px;margin:100px 0 120px;padding-top:26px;border-top:1px solid var(--line)}
.event-footer-note h2{font-family:var(--serif);font-size:clamp(48px,5vw,78px);font-weight:400;line-height:.94;letter-spacing:-.05em;margin:0 0 25px}.event-footer-note h2 em{color:var(--burgundy)}
.event-footer-note p{max-width:700px;font-size:16px;line-height:1.9;color:var(--muted);margin:0}

/* V47 — cookie consent */
.cookie-consent{position:fixed;z-index:2147483000;left:24px;right:24px;bottom:24px;pointer-events:auto;opacity:1;transform:translateY(0);transition:opacity .35s var(--ease),transform .45s var(--ease)}
.cookie-consent[hidden]{display:block;opacity:0;transform:translateY(18px);pointer-events:none;visibility:hidden}
.cookie-consent.is-accepted{opacity:0;transform:translateY(18px);pointer-events:none;visibility:hidden}
.cookie-consent-inner{width:min(720px,100%);margin-left:auto;display:flex;align-items:center;justify-content:space-between;gap:28px;padding:18px 20px;background:rgba(250,248,243,.97);border:1px solid var(--line);box-shadow:0 18px 50px rgba(27,25,22,.12);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.cookie-consent-copy{display:grid;gap:6px}.cookie-consent-copy span{font-size:8px;letter-spacing:.16em;color:var(--muted)}.cookie-consent-copy p{margin:0;font-size:11px;line-height:1.55;color:var(--ink)}
.cookie-consent-btn{flex:none;border:1px solid var(--burgundy);background:var(--burgundy);color:#fff;padding:11px 20px;font:inherit;font-size:9px;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;transition:transform .25s var(--ease),background .25s var(--ease)}
.cookie-consent-btn:hover{transform:translateY(-1px);background:#4f1520}
@media (max-width:760px){
 .event-hero-grid{grid-template-columns:1fr;gap:20px;min-height:0}.event-copy{padding:60px 0 40px}.event-copy h1{font-size:clamp(58px,16vw,92px)}.event-note{grid-template-columns:1fr;gap:12px;margin-top:38px}.event-contact{margin-top:40px}.event-contact-heading{grid-template-columns:1fr;gap:10px}.event-visual{min-height:420px}.event-visual img,.event-photo-placeholder{min-height:420px}.event-footer-note{grid-template-columns:1fr;gap:25px;margin:75px 0 85px}.event-footer-note h2{font-size:clamp(46px,13vw,72px)}
 .cookie-consent{left:12px;right:12px;bottom:12px}.cookie-consent-inner{padding:15px;gap:14px;align-items:flex-end}.cookie-consent-copy p{font-size:10px}.cookie-consent-btn{padding:10px 14px}
}

/* V49 — text refinements / logo-led headings / homepage rail spacing */
.inline-baguette-logo{display:block;object-fit:contain;object-position:left center;height:auto}.inline-baguette-logo--signature{width:150px;margin-bottom:8px}.intro-signature{display:flex;flex-direction:column;align-items:flex-end}.inline-baguette-logo--index{display:inline-block;width:92px;height:auto;vertical-align:middle;margin-left:3px}.section-index--logo{display:flex;align-items:center;gap:2px}.philosophy-visual--photo{background:var(--paper-2);margin:0}.philosophy-visual--photo::before{display:none}.philosophy-visual--photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.86) contrast(.98)}.philosophy-photo-placeholder{position:absolute;inset:18px;display:grid;place-items:center;align-content:center;gap:12px;background:linear-gradient(145deg,#e8dfd1,#d2c2b0);color:var(--muted);text-align:center}.philosophy-photo-placeholder span{font-family:var(--serif);font-size:clamp(34px,4vw,58px);line-height:.95;letter-spacing:-.04em}.philosophy-photo-placeholder small{font-family:var(--sans);font-size:8px;letter-spacing:.16em}.latest-section + .featured-section{padding-top:clamp(30px,4.5vw,62px)}.latest-heading h2{line-height:.92}.intro-copy h2 strong{font-weight:500}.philosophy-copy p strong{color:var(--ink);font-family:var(--serif);font-size:1.08em;font-weight:500}
@media (max-width:760px){.intro-signature{align-items:flex-start}.inline-baguette-logo--signature{width:138px}.inline-baguette-logo--index{width:82px}.philosophy-photo-placeholder{inset:12px}.latest-section + .featured-section{padding-top:18px}}


/* V50 — editorial text accents / Dessert divider / final mobile rail stop */
.intro-copy h2 .accent-italic{font-style:italic;color:var(--burgundy);font-weight:500}
.featured-heading h2 em{font-style:italic;color:var(--burgundy)}
.philosophy-divider{display:flex;align-items:center;padding:0 0 18px;border-bottom:1px solid var(--line)}
.philosophy-grid{padding-top:48px}
.philosophy-copy h2 em{color:var(--burgundy);font-style:italic}
@media (max-width:760px){.philosophy-grid{padding-top:34px}.philosophy-divider{padding-bottom:14px}}

/* Keep the last homepage carousel card as the true horizontal endpoint. */
@media (max-width:760px){.product-carousel-bottom-link{margin-top:8px}.product-carousel-bottom-link a{font-size:9px}.product-carousel-viewport.product-carousel-viewport--custom-mobile{overscroll-behavior-x:none!important}}

/* Prevent CMS/legal text from creating horizontal overflow on small screens. */
@media (max-width:760px){.page-body,.page-body *{max-width:100%;box-sizing:border-box;overflow-wrap:anywhere;word-break:break-word}.page-body table{display:block;width:100%!important;overflow-x:auto;-webkit-overflow-scrolling:touch}.page-body pre,.page-body code{white-space:pre-wrap!important;word-break:break-word}.page-body img,.page-body iframe,.page-body video{max-width:100%!important;height:auto}}


/* V50 — legal/CMS pages must never push the document wider than the viewport. */
html,body{max-width:100%;overflow-x:hidden}

/* V51 — typography refinements */
.intro-copy h2{max-width:100%;}
.intro-copy .intro-description{max-width:680px;margin:28px 0 0;font-size:17px;line-height:1.75;color:#59534b;}
.intro-copy h2 .accent-italic{font-style:italic;color:var(--burgundy);font-weight:500;}
@media (max-width:760px){.intro-copy .intro-description{font-size:15px;line-height:1.75;margin-top:22px;}.editorial-page-heading,.editorial-page-heading *{min-width:0;max-width:100%;}.page-title{overflow-wrap:anywhere;word-break:break-word;hyphens:auto;font-size:clamp(42px,12vw,72px);line-height:.94;}}


/* V53 — center the packaging story copy on desktop and keep it centered on smaller screens. */
.packaging-story{grid-template-columns:1fr;justify-items:center;}
.packaging-story>div{width:min(760px,100%);text-align:center;}

/* V52 — mobile editorial pages: keep every text/photo block inside the viewport. */
@media (max-width:760px){
  .editorial-special,.editorial-special .container,.special-hero,.special-hero-grid,.packaging-hero-grid,.event-hero-grid,.special-hero-copy,.packaging-copy,.event-copy,.special-hero-photo,.packaging-hero-photo,.event-visual{min-width:0;max-width:100%;box-sizing:border-box;}
  .special-hero-meta{min-width:0;}
  .special-hero-meta span{min-width:0;max-width:50%;overflow-wrap:anywhere;word-break:break-word;}
  .special-hero h1,.packaging-copy h1,.event-copy h1,.special-lead,.care-process-list,.care-process-item,.care-process-item h2,.care-process-item p,.event-note,.event-contact,.event-footer-note,.event-footer-note h2,.event-footer-note p{min-width:0;max-width:100%;overflow-wrap:anywhere;word-break:break-word;}
  .special-hero-photo img,.packaging-hero-photo img,.event-visual img{width:100%;max-width:100%;height:auto;object-fit:cover;}
}

/* V55 — compact product-card rhythm */
.product-card-price-wrap{padding-top:5px!important;margin-top:auto!important}
.product-card-actions{margin-top:5px!important;min-height:38px!important;align-items:center!important}
.product-card-form{margin-top:0!important}
@media (max-width:760px){
  .product-card-price-wrap{padding-top:4px!important}
  .product-card-actions{margin-top:4px!important;min-height:36px!important}
}

/* V55 — editorial headings: keep key words together on narrow screens */
.editorial-nowrap{white-space:nowrap}

/* V56 — compact drawer: all navigation fits without an inner scrollbar. */
.sidebar{overflow:hidden!important}
.sidebar-topline{flex:0 0 auto}
.sidebar-intro{margin:clamp(38px,6vh,64px) 0 24px!important}
.sidebar-intro p{font-size:clamp(28px,3.4vw,44px);line-height:.98}
.sidebar-nav{flex:0 0 auto}
.sidebar-nav-link{padding:11px 0!important}
.sidebar-nav-label{font-size:21px;line-height:1.02;overflow-wrap:break-word}
.sidebar-secondary{margin:16px 0 0!important}
.sidebar-secondary a{padding:8px 0!important;font-size:9px}
.sidebar-legal{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:auto;padding-top:10px;border-top:1px solid var(--line)}
.sidebar-legal a{min-width:0;color:var(--faint);font-size:6.7px;line-height:1.18;letter-spacing:.035em;text-transform:uppercase;overflow-wrap:break-word;word-break:normal;transition:color .25s var(--ease)}
.sidebar-legal a:hover{color:var(--burgundy)}
.sidebar-footer{padding-top:9px!important;font-size:7px!important}
@media (max-width:760px){
  .sidebar{width:100%;padding:20px 20px 16px!important}
  .sidebar-intro{margin-top:38px!important;margin-bottom:22px!important}
  .sidebar-intro p{font-size:clamp(28px,8vw,40px)}
  .sidebar-nav-link{padding:10px 0!important}
  .sidebar-nav-label{font-size:20px}
  .sidebar-secondary{margin-top:13px!important}
  .sidebar-secondary a{padding:7px 0!important}
  .sidebar-legal{gap:6px;padding-top:9px}
  .sidebar-legal a{font-size:6.2px;line-height:1.15}
  .sidebar-footer{padding-top:8px!important}
}

/* V56 — minimal back-to-top: a quiet arrow, no capsule or decoration. */
.back-to-top{position:fixed;right:24px;bottom:24px;z-index:1900;width:34px;height:34px;border:0;background:transparent;color:var(--ink);display:grid;place-items:center;cursor:pointer;opacity:0;transform:translateY(8px);pointer-events:none;transition:opacity .3s var(--ease),transform .35s var(--ease),color .25s var(--ease)}
.back-to-top:not([hidden]).is-visible{opacity:1;transform:none;pointer-events:auto}
.back-to-top:hover{color:var(--burgundy);transform:translateY(-2px)}
.back-to-top-arrow{position:static;font-family:var(--sans);font-size:24px;font-weight:300;line-height:1;transition:transform .3s var(--ease)}
.back-to-top:hover .back-to-top-arrow{transform:translateY(-2px)}
.back-to-top-line{display:none}
@media (max-width:760px){.back-to-top{right:12px;bottom:12px;width:32px;height:32px}.back-to-top-arrow{font-size:22px}}
@media (prefers-reduced-motion:reduce){.back-to-top{transition:none}.back-to-top-arrow,.back-to-top-line{transition:none}}


/* V57 — compact drawer, mobile swipe, frosted back-to-top */
.sidebar{overflow:hidden!important}
.sidebar-nav{display:flex;flex:1 1 auto;min-height:0}
.sidebar-nav-list{display:flex;flex:1 1 auto;flex-direction:column;min-height:0}
.sidebar-nav-item{display:flex;flex:1 1 0;min-height:0}
.sidebar-nav-link{width:100%;min-height:0;padding:12px 0!important}
.sidebar-secondary{margin-top:10px!important;flex:0 0 auto}
.sidebar-legal{margin-top:10px!important;flex:0 0 auto}
.sidebar-footer{margin-top:8px!important;flex:0 0 auto}

.back-to-top{right:24px;bottom:22%;width:38px;height:38px;border:1px solid rgba(22,20,18,.14);border-radius:50%;background:rgba(243,238,229,.42);color:var(--ink);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 8px 24px rgba(27,25,22,.08);transform:translateY(8px);transition:opacity .3s var(--ease),transform .35s var(--ease),background .25s var(--ease),color .25s var(--ease),border-color .25s var(--ease)}
.back-to-top:hover{color:var(--burgundy);background:rgba(243,238,229,.68);border-color:rgba(90,23,32,.22);transform:translateY(-2px)}
.back-to-top-arrow{font-size:18px;font-weight:400;line-height:1;transform:translateY(-1px)}
.back-to-top:hover .back-to-top-arrow{transform:translateY(-3px)}
@media (max-width:760px){
  .sidebar{padding:18px 20px 12px!important}
  .sidebar-intro{margin-top:28px!important;margin-bottom:14px!important}
  .sidebar-intro p{font-size:clamp(26px,7.5vw,36px)}
  .sidebar-nav-link{padding:8px 0!important}
  .sidebar-nav-label{font-size:18px;line-height:1.01}
  .sidebar-secondary{margin-top:8px!important}
  .sidebar-secondary a{padding:6px 0!important}
  .sidebar-legal{margin-top:7px!important;padding-top:7px!important;gap:5px}
  .sidebar-legal a{font-size:5.9px;line-height:1.08}
  .sidebar-footer{margin-top:6px!important;padding-top:6px!important}
  .back-to-top{right:14px;bottom:19%;width:36px;height:36px}
  .back-to-top-arrow{font-size:17px}
}
@media (prefers-reduced-motion:reduce){.back-to-top{transition:none}.back-to-top-arrow{transition:none}}


/* V60 — full-height sidebar rhythm: menu fills the available space, account stays clean */
.sidebar-intro{margin-bottom:18px!important;flex:0 0 auto!important}
.sidebar-nav{display:flex!important;flex:1 1 auto!important;min-height:0!important}
.sidebar-nav-list{height:auto!important;display:flex!important;flex:1 1 auto!important;flex-direction:column!important;min-height:0!important}
.sidebar-nav-item{display:flex!important;flex:1 1 0!important;min-height:0!important}
.sidebar-nav-link{width:100%!important;height:auto!important;min-height:0!important;box-sizing:border-box;display:grid!important;align-content:center!important;padding:15px 0!important}
.sidebar-nav-label{font-size:25px!important;line-height:1.04!important}
.sidebar-nav-item:last-child .sidebar-nav-link{border-bottom:0!important}
.sidebar-secondary{margin-top:12px!important;flex:0 0 auto!important;border-top:0!important}
.sidebar-secondary a{border-top:0!important;border-bottom:0!important;padding:12px 0!important}
.sidebar-legal{margin-top:10px!important;flex:0 0 auto!important}
.sidebar-footer{margin-top:auto!important;padding-top:10px!important;flex:0 0 auto!important}

.back-to-top{right:22px!important;bottom:20%!important;width:36px!important;height:36px!important;border:1px solid rgba(27,25,22,.16)!important;border-radius:50%!important;background:rgba(250,248,243,.38)!important;color:var(--ink)!important;backdrop-filter:blur(12px)!important;-webkit-backdrop-filter:blur(12px)!important;box-shadow:0 6px 20px rgba(27,25,22,.10)!important;display:grid!important;place-items:center!important}
.back-to-top-arrow{width:15px!important;height:15px!important;display:block!important;fill:none!important;stroke:currentColor!important;stroke-width:1.35!important;stroke-linecap:round!important;stroke-linejoin:round!important;transform:none!important;transition:transform .3s var(--ease),color .25s var(--ease)!important}
.back-to-top:hover .back-to-top-arrow{transform:translateY(-2px)!important}
@media (max-width:760px){
  .sidebar-intro{margin-top:24px!important;margin-bottom:10px!important}
  .sidebar-nav-link{padding:11px 0!important}
  .sidebar-nav-label{font-size:23px!important;line-height:1.03!important}
  .sidebar-secondary{margin-top:10px!important}
  .sidebar-secondary a{padding:10px 0!important}
  .sidebar-legal{margin-top:6px!important;padding-top:6px!important}
  .sidebar-footer{margin-top:auto!important;padding-top:8px!important}
  .back-to-top{right:14px!important;bottom:18%!important;width:34px!important;height:34px!important}
  .back-to-top-arrow{width:14px!important;height:14px!important}
  .footer-bottom-inner{gap:12px!important}
  .footer-legal{width:100%!important;display:flex!important;flex-wrap:nowrap!important;justify-content:space-between!important;align-items:center!important;gap:7px!important;white-space:nowrap!important}
  .footer-legal-link{font-size:7px!important;letter-spacing:.02em!important;white-space:nowrap!important;flex:0 0 auto!important}
}


/* V63 — editorial image galleries: preserve the full frame on desktop and mobile. */
.philosophy-visual--gallery{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;align-items:stretch;background:var(--paper-2);padding:0!important;overflow:hidden;}
.philosophy-gallery-item{position:relative;margin:0;min-width:0;min-height:0;background:var(--paper-2);display:flex;align-items:center;justify-content:center;overflow:hidden;}
.philosophy-gallery-item img{position:static!important;width:100%!important;height:100%!important;max-width:100%;object-fit:contain!important;object-position:center;display:block;filter:saturate(.86) contrast(.98);}
.packaging-hero-photo--gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:0;min-height:700px;background:#2a0b12;position:relative;overflow:hidden;}
.packaging-gallery-item{position:relative;margin:0;min-width:0;min-height:0;background:#2a0b12;display:flex;align-items:center;justify-content:center;overflow:hidden;}
.packaging-gallery-item img{width:100%;height:100%;max-width:100%;object-fit:contain;object-position:center;display:block;}
.packaging-gallery-caption{position:absolute;z-index:4;left:30px;right:30px;bottom:28px;display:flex;justify-content:space-between;color:#fff;font-size:8px;letter-spacing:.16em;text-transform:uppercase;text-shadow:0 1px 12px rgba(0,0,0,.28);pointer-events:none;}
.special-hero-photo.care-process-photo,.event-visual--photo{background:var(--paper-2);display:flex;align-items:center;justify-content:center;}
.special-hero-photo.care-process-photo img,.event-visual--photo img{width:100%;height:100%;min-height:0;max-width:100%;object-fit:contain;object-position:center;display:block;}
.hero-media{background:var(--paper-2);display:flex;align-items:center;justify-content:center;}
.hero-image,.hero-video{object-fit:contain!important;object-position:center;}
@media (max-width:760px){
  .philosophy-visual--gallery{grid-template-columns:1fr;gap:8px;min-height:0!important;background:var(--paper-2);}
  .philosophy-gallery-item{aspect-ratio:auto;min-height:0;}
  .philosophy-gallery-item img{height:auto!important;aspect-ratio:auto;object-fit:contain!important;}
  .packaging-hero-photo--gallery{grid-template-columns:1fr;gap:8px;min-height:0;background:#2a0b12;}
  .packaging-gallery-item{min-height:0;}
  .packaging-gallery-item img{height:auto;aspect-ratio:auto;object-fit:contain;}
  .packaging-gallery-caption{left:20px;right:20px;bottom:18px;font-size:7px;}
  .special-hero-photo.care-process-photo,.event-visual--photo{min-height:0!important;height:auto;background:var(--paper-2);}
  .special-hero-photo.care-process-photo img,.event-visual--photo img{height:auto!important;min-height:0!important;object-fit:contain!important;}
  .hero-media{min-height:58vh;background:var(--paper-2);}
  .hero-image,.hero-video{min-height:0!important;height:auto!important;max-height:100%;object-fit:contain!important;}
}


/* V65 — packaging: one seamless square collage on desktop and mobile. */
.packaging-hero-photo--gallery{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  grid-template-rows:minmax(0,1fr) minmax(0,1fr)!important;
  grid-template-areas:"lead red" "lead detail";
  gap:0!important;
  width:100%;
  aspect-ratio:1 / 1;
  height:auto!important;
  min-height:0!important;
  align-self:start;
  background:transparent!important;
  overflow:hidden;
  position:relative;
}
.packaging-hero-photo--gallery::after{content:"";display:block!important;position:absolute;inset:16px;border:1px solid rgba(255,255,255,.82);z-index:4;pointer-events:none;box-sizing:border-box}
.packaging-hero-photo--gallery .packaging-gallery-item{
  position:relative;
  width:100%;
  height:100%;
  min-width:0;
  min-height:0;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  overflow:hidden;
  display:block;
}
.packaging-hero-photo--gallery .packaging-gallery-item--lead{grid-area:lead}
.packaging-hero-photo--gallery .packaging-gallery-item--red{grid-area:red}
.packaging-hero-photo--gallery .packaging-gallery-item--detail{grid-area:detail}
.packaging-hero-photo--gallery .packaging-gallery-item img{
  display:block;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  object-fit:cover!important;
  object-position:center;
  margin:0!important;
  padding:0!important;
  transform:none!important;
  transition:none!important;
}
.packaging-hero-photo--gallery .packaging-gallery-caption{
  left:20px;
  right:20px;
  bottom:18px;
  z-index:5;
}
@media (max-width:760px){
  .packaging-hero-photo--gallery{
    width:100%;
    aspect-ratio:1 / 1;
    height:auto!important;
    min-height:0!important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    grid-template-rows:minmax(0,1fr) minmax(0,1fr)!important;
    grid-template-areas:"lead red" "lead detail";
    gap:0!important;
    background:transparent!important;
  }
  .packaging-hero-photo--gallery::after{inset:10px}
  .packaging-hero-photo--gallery .packaging-gallery-item img{
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
  }
  .packaging-hero-photo--gallery .packaging-gallery-caption{
    left:12px;
    right:12px;
    bottom:12px;
    font-size:6px;
  }
}


/* V67 — homepage Hero: landscape image, no crop, retain the white inset frame and BAGUETTE wordmark. */
.hero-media{
  position:relative!important;
  width:100%;
  height:auto!important;
  min-height:0!important;
  aspect-ratio:4 / 3;
  align-self:center;
  overflow:hidden;
  background:var(--paper-2);
  display:block!important;
}
.hero-media::before{
  content:"";
  position:absolute;
  inset:20px;
  border:1px solid rgba(255,255,255,.82);
  z-index:3;
  pointer-events:none;
  box-sizing:border-box;
}
.hero-image,
.hero-video{
  position:absolute!important;
  inset:0!important;
  display:block!important;
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:center center!important;
  transform:none!important;
  transition:none!important;
  filter:none!important;
}
.hero-media-caption{
  position:absolute!important;
  z-index:4!important;
  left:28px!important;
  right:28px!important;
  bottom:30px!important;
  display:flex!important;
  justify-content:center!important;
  align-items:center!important;
  color:#fff!important;
  font-size:10px!important;
  font-weight:500!important;
  letter-spacing:.28em!important;
  text-transform:uppercase!important;
  text-align:center!important;
  text-shadow:0 1px 8px rgba(0,0,0,.65)!important;
  pointer-events:none!important;
}
.hero-media-caption span{display:block;}
@media (max-width:760px){
  .hero-media{
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    aspect-ratio:4 / 3!important;
    align-self:stretch!important;
  }
  .hero-media::before{inset:12px!important;}
  .hero-image,
  .hero-video{
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    max-height:none!important;
    object-fit:contain!important;
    transform:none!important;
    filter:none!important;
  }
  .hero-media-caption{
    left:20px!important;
    right:20px!important;
    bottom:20px!important;
    font-size:8px!important;
    letter-spacing:.24em!important;
  }
}

/* V68 — Dessert inset frame + original-photo Event collage, responsive without cropping. */
.philosophy-visual--single::after{
  content:"";
  position:absolute;
  inset:18px;
  z-index:3;
  border:1px solid rgba(255,255,255,.84);
  box-sizing:border-box;
  pointer-events:none;
}
.event-visual--collage{
  position:relative!important;
  display:block!important;
  width:100%;
  height:auto!important;
  min-height:0!important;
  aspect-ratio:16 / 21;
  overflow:hidden;
  background:#1c1715!important;
}
.event-visual--collage img{
  position:absolute!important;
  inset:0!important;
  display:block!important;
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  max-width:100%!important;
  object-fit:contain!important;
  object-position:center!important;
  filter:none!important;
}
.event-visual--collage::before{
  content:"";
  position:absolute;
  inset:18px;
  z-index:3;
  border:1px solid rgba(255,255,255,.84);
  box-sizing:border-box;
  pointer-events:none;
}
.event-visual--collage figcaption{
  left:34px!important;
  right:34px!important;
  bottom:30px!important;
  z-index:4!important;
}
@media (max-width:760px){
  .philosophy-visual--single::after{inset:12px;}
  .event-visual--collage{
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    aspect-ratio:16 / 21!important;
  }
  .event-visual--collage img{
    height:100%!important;
    min-height:0!important;
    object-fit:contain!important;
  }
  .event-visual--collage::before{inset:12px;}
  .event-visual--collage figcaption{
    left:22px!important;
    right:22px!important;
    bottom:20px!important;
    font-size:7px!important;
  }
}



/* V69 — unify every photo frame with the Packaging gallery; no image filters. */
.hero-media{
  position:relative!important;
  aspect-ratio:4 / 3!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  overflow:hidden!important;
  background:var(--paper-2)!important;
}
.hero-media::before{
  content:"";
  position:absolute;
  inset:16px!important;
  z-index:3;
  border:1px solid rgba(255,255,255,.82)!important;
  box-sizing:border-box;
  pointer-events:none;
}
.hero-media .hero-image,
.hero-media .hero-video{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:center!important;
  filter:none!important;
  opacity:1!important;
  mix-blend-mode:normal!important;
  transform:none!important;
  transition:none!important;
}
.hero-media-caption{
  position:absolute!important;
  z-index:4!important;
  left:28px!important;
  right:28px!important;
  bottom:24px!important;
  display:flex!important;
  justify-content:space-between!important;
  align-items:center!important;
  color:#fff!important;
  font-size:8px!important;
  font-weight:500!important;
  letter-spacing:.16em!important;
  text-transform:uppercase!important;
  text-align:left!important;
  text-shadow:0 1px 12px rgba(0,0,0,.45)!important;
  pointer-events:none!important;
}
.hero-media-caption span{display:block!important;}
.philosophy-visual--single{
  align-self:center!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  aspect-ratio:2048 / 1535!important;
  position:relative!important;
  overflow:hidden!important;
  background:var(--paper-2)!important;
}
.philosophy-visual--single::after{
  content:"";
  position:absolute;
  inset:16px!important;
  z-index:3;
  border:1px solid rgba(255,255,255,.82)!important;
  box-sizing:border-box;
  pointer-events:none;
}
.philosophy-visual--single .philosophy-gallery-item{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  overflow:hidden!important;
}
.philosophy-visual--single .philosophy-gallery-item img{
  position:absolute!important;
  inset:0!important;
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  object-fit:contain!important;
  object-position:center!important;
  filter:none!important;
  opacity:1!important;
  mix-blend-mode:normal!important;
  transform:none!important;
  transition:none!important;
}
.philosophy-visual--single .philosophy-gallery-caption{
  position:absolute!important;
  z-index:4!important;
  left:28px!important;
  right:28px!important;
  bottom:24px!important;
  display:flex!important;
  justify-content:space-between!important;
  color:#fff!important;
  font-size:8px!important;
  letter-spacing:.16em!important;
  text-transform:uppercase!important;
  text-shadow:0 1px 12px rgba(0,0,0,.45)!important;
  pointer-events:none!important;
}
.event-visual--collage{
  position:relative!important;
  display:block!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  aspect-ratio:1600 / 2134!important;
  overflow:hidden!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:0!important;
}
.event-visual--collage img{
  position:absolute!important;
  inset:0!important;
  display:block!important;
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  max-width:none!important;
  object-fit:contain!important;
  object-position:center!important;
  filter:none!important;
  opacity:1!important;
  mix-blend-mode:normal!important;
  transform:none!important;
  transition:none!important;
}
.event-visual--collage::before{
  content:"";
  position:absolute;
  inset:16px!important;
  z-index:3;
  border:1px solid rgba(255,255,255,.82)!important;
  box-sizing:border-box;
  pointer-events:none;
}
.event-visual--collage figcaption{
  position:absolute!important;
  left:28px!important;
  right:28px!important;
  bottom:24px!important;
  z-index:4!important;
  display:flex!important;
  justify-content:space-between!important;
  color:#fff!important;
  font-size:8px!important;
  letter-spacing:.16em!important;
  text-transform:uppercase!important;
  text-shadow:0 1px 12px rgba(0,0,0,.45)!important;
  pointer-events:none!important;
}
@media (max-width:760px){
  .hero-media{aspect-ratio:4 / 3!important;width:100%!important;min-height:0!important;}
  .hero-media::before{inset:10px!important;}
  .hero-media-caption{left:18px!important;right:18px!important;bottom:16px!important;font-size:6px!important;letter-spacing:.12em!important;}
  .philosophy-visual--single{width:100%!important;aspect-ratio:2048 / 1535!important;min-height:0!important;}
  .philosophy-visual--single::after{inset:10px!important;}
  .philosophy-visual--single .philosophy-gallery-caption{left:18px!important;right:18px!important;bottom:16px!important;font-size:6px!important;letter-spacing:.12em!important;}
  .event-visual--collage{aspect-ratio:1600 / 2134!important;width:100%!important;min-height:0!important;}
  .event-visual--collage::before{inset:10px!important;}
  .event-visual--collage figcaption{left:18px!important;right:18px!important;bottom:16px!important;font-size:6px!important;letter-spacing:.12em!important;}
}


/* V70 — DESSERT caption reset.
   The legacy `.philosophy-visual span` rule was enlarging caption spans
   and rendering oversized letters over the original photograph. */
.philosophy-visual--single .philosophy-gallery-caption span{
  position:static!important;
  display:block!important;
  width:auto!important;
  height:auto!important;
  font-family:var(--sans)!important;
  font-size:inherit!important;
  font-weight:500!important;
  line-height:1.2!important;
  letter-spacing:inherit!important;
  color:inherit!important;
  text-transform:inherit!important;
  white-space:nowrap!important;
  opacity:1!important;
  transform:none!important;
  text-shadow:inherit!important;
}
.philosophy-visual--single .philosophy-gallery-caption{
  font-family:var(--sans)!important;
  font-size:8px!important;
  line-height:1.2!important;
  letter-spacing:.16em!important;
  color:#fff!important;
}
@media (max-width:760px){
  .philosophy-visual--single .philosophy-gallery-caption{
    font-size:6px!important;
    letter-spacing:.12em!important;
  }
}


/* V72 — Care collage uses the user's original photos, edge-to-edge, with one Packaging-style inset frame. */
.care-process-collage{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  grid-template-rows:repeat(2,minmax(0,1fr))!important;
  grid-template-areas:"movement tool crown" "movement bracelet caseback";
  gap:0!important;
  width:100%!important;
  aspect-ratio:3 / 3.2;
  height:auto!important;
  min-height:0!important;
  padding:0!important;
  overflow:hidden!important;
  position:relative!important;
  background:#211a18!important;
  box-shadow:none!important;
}
.care-process-collage::before{
  content:""!important;
  position:absolute!important;
  inset:16px!important;
  z-index:4!important;
  border:1px solid rgba(255,255,255,.82)!important;
  pointer-events:none!important;
  box-sizing:border-box!important;
}
.care-process-collage .care-process-tile{
  display:block!important;
  position:relative!important;
  min-width:0!important;
  min-height:0!important;
  width:100%!important;
  height:100%!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  background:#211a18!important;
}
.care-process-tile--movement{grid-area:movement}
.care-process-tile--tool{grid-area:tool}
.care-process-tile--crown{grid-area:crown}
.care-process-tile--bracelet{grid-area:bracelet}
.care-process-tile--caseback{grid-area:caseback}
.care-process-collage .care-process-tile img{
  display:block!important;
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  max-width:none!important;
  object-fit:cover!important;
  object-position:center!important;
  margin:0!important;
  padding:0!important;
  filter:none!important;
  opacity:1!important;
  mix-blend-mode:normal!important;
  transform:none!important;
  transition:none!important;
}
.care-process-collage figcaption{
  position:absolute!important;
  left:28px!important;
  right:28px!important;
  bottom:24px!important;
  z-index:5!important;
  display:flex!important;
  justify-content:space-between!important;
  gap:12px!important;
  color:#fff!important;
  font-size:8px!important;
  line-height:1.2!important;
  letter-spacing:.16em!important;
  text-transform:uppercase!important;
  text-shadow:0 1px 12px rgba(0,0,0,.45)!important;
  pointer-events:none!important;
}
.care-process-collage figcaption span{
  position:static!important;
  display:block!important;
  width:auto!important;
  height:auto!important;
  font-size:inherit!important;
  line-height:inherit!important;
  letter-spacing:inherit!important;
  color:inherit!important;
}

/* V72 — Event collage order: sofa, chandelier, kissing sculpture, elevator; seamless and enlarged. */
.event-hero-grid{
  grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr)!important;
  gap:clamp(32px,4vw,60px)!important;
  min-height:0!important;
}
.event-visual--collage{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  grid-template-rows:repeat(2,minmax(0,1fr))!important;
  grid-template-areas:"sofa chandelier" "sculpture elevator";
  gap:0!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  aspect-ratio:4 / 5!important;
  padding:0!important;
  overflow:hidden!important;
  background:#1c1715!important;
  border:0!important;
  box-shadow:none!important;
}
.event-visual--collage::before{
  content:""!important;
  position:absolute!important;
  inset:16px!important;
  z-index:3!important;
  border:1px solid rgba(255,255,255,.82)!important;
  box-sizing:border-box!important;
  pointer-events:none!important;
}
.event-collage-tile{
  display:block!important;
  min-width:0!important;
  min-height:0!important;
  width:100%!important;
  height:100%!important;
  margin:0!important;
  padding:0!important;
  background-image:url("event-baguette.jpg")!important;
  background-repeat:no-repeat!important;
  background-size:200% 200%!important;
}
.event-collage-tile--sofa{grid-area:sofa;background-position:0 0!important}
.event-collage-tile--chandelier{grid-area:chandelier;background-position:0 100%!important}
.event-collage-tile--sculpture{grid-area:sculpture;background-position:100% 0!important}
.event-collage-tile--elevator{grid-area:elevator;background-position:100% 100%!important}
.event-visual--collage figcaption{
  position:absolute!important;
  left:28px!important;
  right:28px!important;
  bottom:24px!important;
  z-index:4!important;
  display:flex!important;
  justify-content:space-between!important;
  color:#fff!important;
  font-size:8px!important;
  letter-spacing:.16em!important;
  text-transform:uppercase!important;
  text-shadow:0 1px 12px rgba(0,0,0,.45)!important;
  pointer-events:none!important;
}
@media(max-width:760px){
  .care-process-collage{
    width:100%!important;
    aspect-ratio:3 / 3.2!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    grid-template-rows:repeat(2,minmax(0,1fr))!important;
    grid-template-areas:"movement tool crown" "movement bracelet caseback"!important;
    min-height:0!important;
  }
  .care-process-collage::before{inset:10px!important}
  .care-process-collage figcaption{left:18px!important;right:18px!important;bottom:16px!important;font-size:6px!important;letter-spacing:.12em!important}
  .event-hero-grid{
    grid-template-columns:minmax(0,1fr)!important;
    gap:20px!important;
  }
  .event-visual--collage{
    width:100%!important;
    aspect-ratio:4 / 5!important;
    min-height:0!important;
  }
  .event-visual--collage::before{inset:10px!important}
  .event-visual--collage figcaption{left:18px!important;right:18px!important;bottom:16px!important;font-size:6px!important;letter-spacing:.12em!important}
}


/* V73 — desktop-first care collage layout; original photos kept unfiltered and uncropped. */
.editorial-special--care .special-hero-grid--photo{
  grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr)!important;
  gap:clamp(24px,3.2vw,48px)!important;
  align-items:start!important;
}
.editorial-special--care .care-process-collage{
  width:100%!important; max-width:none!important; min-width:0!important;
  aspect-ratio:4 / 5!important; height:auto!important; min-height:0!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  grid-template-rows:repeat(6,minmax(0,1fr))!important;
  grid-template-areas:"movement tool" "movement tool" "movement bracelet" "crown bracelet" "crown caseback" "crown caseback"!important;
  gap:0!important; padding:0!important; overflow:hidden!important;
  background:#171210!important; position:relative!important;
}
.editorial-special--care .care-process-collage .care-process-tile{
  width:100%!important;height:100%!important;min-width:0!important;min-height:0!important;
  margin:0!important;padding:0!important;overflow:hidden!important;background:#171210!important;
}
.editorial-special--care .care-process-tile--movement{grid-area:movement!important}
.editorial-special--care .care-process-tile--crown{grid-area:crown!important}
.editorial-special--care .care-process-tile--tool{grid-area:tool!important}
.editorial-special--care .care-process-tile--bracelet{grid-area:bracelet!important}
.editorial-special--care .care-process-tile--caseback{grid-area:caseback!important}
.editorial-special--care .care-process-collage .care-process-tile img{
  display:block!important;position:absolute!important;inset:0!important;
  width:100%!important;height:100%!important;max-width:none!important;min-height:0!important;
  object-fit:contain!important;object-position:center!important;
  margin:0!important;padding:0!important;filter:none!important;opacity:1!important;
  mix-blend-mode:normal!important;transform:none!important;
}
/* The foam-and-gold clasp photograph must remain fully visible. */
.editorial-special--care .care-process-tile--bracelet img{object-fit:contain!important;object-position:center!important}
.editorial-special--care .care-process-collage::before{
  content:""!important;position:absolute!important;inset:16px!important;z-index:4!important;
  border:1px solid rgba(255,255,255,.84)!important;box-sizing:border-box!important;pointer-events:none!important;
}
/* V73 — use individual, explicitly referenced image assets for Event, eliminating the black background fallback. */
.editorial-special--event .event-hero-grid{
  grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr)!important;
  gap:clamp(28px,3.5vw,52px)!important;
}
.editorial-special--event .event-visual--collage{
  display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;
  grid-template-rows:repeat(2,minmax(0,1fr))!important;
  grid-template-areas:"sofa chandelier" "sculpture elevator"!important;
  gap:0!important;width:100%!important;max-width:none!important;height:auto!important;
  min-height:0!important;aspect-ratio:4 / 5!important;overflow:hidden!important;
  padding:0!important;background:#171210!important;
}
.editorial-special--event .event-collage-tile{
  position:relative!important;display:block!important;width:100%!important;height:100%!important;
  min-width:0!important;min-height:0!important;margin:0!important;padding:0!important;
  overflow:hidden!important;background:#171210!important;
}
.editorial-special--event .event-collage-tile--sofa{grid-area:sofa!important}
.editorial-special--event .event-collage-tile--chandelier{grid-area:chandelier!important}
.editorial-special--event .event-collage-tile--sculpture{grid-area:sculpture!important}
.editorial-special--event .event-collage-tile--elevator{grid-area:elevator!important}
.editorial-special--event .event-collage-tile img{
  position:absolute!important;inset:0!important;display:block!important;width:100%!important;height:100%!important;
  min-height:0!important;max-width:none!important;object-fit:cover!important;object-position:center!important;
  margin:0!important;padding:0!important;filter:none!important;opacity:1!important;transform:none!important;
}
.editorial-special--event .event-visual--collage::before{
  content:""!important;position:absolute!important;inset:16px!important;z-index:3!important;
  border:1px solid rgba(255,255,255,.84)!important;box-sizing:border-box!important;pointer-events:none!important;
}
@media(max-width:760px){
 .editorial-special--care .special-hero-grid--photo{grid-template-columns:minmax(0,1fr)!important;gap:24px!important}
 .editorial-special--care .care-process-collage{width:100%!important;aspect-ratio:4 / 5!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;grid-template-rows:repeat(6,minmax(0,1fr))!important;grid-template-areas:"movement tool" "movement tool" "movement bracelet" "crown bracelet" "crown caseback" "crown caseback"!important}
 .editorial-special--care .care-process-collage::before{inset:10px!important}
 .editorial-special--care .care-process-collage figcaption{left:18px!important;right:18px!important;bottom:16px!important;font-size:6px!important;letter-spacing:.12em!important}
 .editorial-special--event .event-hero-grid{grid-template-columns:minmax(0,1fr)!important;gap:20px!important}
 .editorial-special--event .event-visual--collage{width:100%!important;aspect-ratio:4 / 5!important}
 .editorial-special--event .event-visual--collage::before{inset:10px!important}
 .editorial-special--event .event-visual--collage figcaption{left:18px!important;right:18px!important;bottom:16px!important;font-size:6px!important;letter-spacing:.12em!important}
}


/* V74 — repair editorial collages: seamless tile joins, responsive geometry, no text overlap. */
.editorial-special--care .special-hero-grid--photo,
.editorial-special--event .event-hero-grid{
  display:grid!important;
  grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr)!important;
  align-items:start!important;
  gap:clamp(24px,3vw,46px)!important;
}
.editorial-special--care .special-hero-copy,
.editorial-special--event .event-copy{
  min-width:0!important;
  max-width:100%!important;
  position:relative!important;
  z-index:1!important;
}
.editorial-special--care .special-hero-copy h1,
.editorial-special--event .event-copy h1{
  max-width:100%!important;
  font-size:clamp(42px,4.25vw,76px)!important;
  line-height:.98!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
}
.editorial-special--care .care-process-collage,
.editorial-special--event .event-visual--collage{
  position:relative!important;
  display:grid!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  height:auto!important;
  min-height:0!important;
  aspect-ratio:4 / 5!important;
  padding:0!important;
  gap:0!important;
  overflow:hidden!important;
  border:0!important;
  box-shadow:none!important;
  background:transparent!important;
  isolation:isolate!important;
}
/* Care: two equal-size images on the left, three stacked on the right. */
.editorial-special--care .care-process-collage{
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  grid-template-rows:repeat(6,minmax(0,1fr))!important;
  grid-template-areas:"movement tool" "movement tool" "movement bracelet" "crown bracelet" "crown caseback" "crown caseback"!important;
}
.editorial-special--care .care-process-collage .care-process-tile,
.editorial-special--event .event-collage-tile{
  position:relative!important;
  display:block!important;
  width:100%!important;
  height:100%!important;
  min-width:0!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  overflow:hidden!important;
  background:#171210!important;
}
.editorial-special--care .care-process-tile--movement{grid-area:movement!important}
.editorial-special--care .care-process-tile--crown{grid-area:crown!important}
.editorial-special--care .care-process-tile--tool{grid-area:tool!important}
.editorial-special--care .care-process-tile--bracelet{grid-area:bracelet!important}
.editorial-special--care .care-process-tile--caseback{grid-area:caseback!important}
.editorial-special--care .care-process-collage .care-process-tile img,
.editorial-special--event .event-collage-tile img{
  position:absolute!important;
  inset:0!important;
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  filter:none!important;
  opacity:1!important;
  mix-blend-mode:normal!important;
  transform:none!important;
  object-position:center!important;
}
/* Keep the gold clasp and foam fully visible; other details fill their tiles to avoid dark gutters. */
.editorial-special--care .care-process-tile--bracelet img{object-fit:contain!important;object-position:center!important}
.editorial-special--care .care-process-tile:not(.care-process-tile--bracelet) img{object-fit:cover!important}
.editorial-special--care .care-process-collage::before,
.editorial-special--event .event-visual--collage::before{
  content:""!important;
  position:absolute!important;
  inset:16px!important;
  z-index:5!important;
  border:1px solid rgba(255,255,255,.84)!important;
  box-sizing:border-box!important;
  pointer-events:none!important;
}
.editorial-special--care .care-process-collage figcaption{
  display:none!important;
}
/* Event tile order: sofa top-left, chandelier top-right, sculpture bottom-left, elevator bottom-right. */
.editorial-special--event .event-visual--collage{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  grid-template-rows:repeat(2,minmax(0,1fr))!important;
  grid-template-areas:"sofa chandelier" "sculpture elevator"!important;
}
.editorial-special--event .event-collage-tile--sofa{grid-area:sofa!important}
.editorial-special--event .event-collage-tile--chandelier{grid-area:chandelier!important}
.editorial-special--event .event-collage-tile--sculpture{grid-area:sculpture!important}
.editorial-special--event .event-collage-tile--elevator{grid-area:elevator!important}
.editorial-special--event .event-visual--collage figcaption{display:none!important}
@media(max-width:900px){
  .editorial-special--care .special-hero-grid--photo,
  .editorial-special--event .event-hero-grid{
    grid-template-columns:minmax(0,1fr)!important;
    gap:26px!important;
  }
  .editorial-special--care .special-hero-copy h1,
  .editorial-special--event .event-copy h1{font-size:clamp(40px,8vw,68px)!important}
  .editorial-special--care .care-process-collage,
  .editorial-special--event .event-visual--collage{width:100%!important;max-width:720px!important;margin-inline:auto!important}
}
@media(max-width:600px){
  .editorial-special--care .care-process-collage,
  .editorial-special--event .event-visual--collage{aspect-ratio:4 / 5!important}
  .editorial-special--care .care-process-collage::before,
  .editorial-special--event .event-visual--collage::before{inset:10px!important}
}


/* V75 — Care collage: clasp leads the right column, fills its tile without side gutters. */
.editorial-special--care .care-process-collage{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  grid-template-rows:repeat(2,minmax(0,1fr))!important;
  grid-template-areas:none!important;
  aspect-ratio:2 / 3!important;
  height:auto!important;
  min-height:0!important;
  gap:0!important;
  padding:0!important;
  overflow:hidden!important;
  background:transparent!important;
  position:relative!important;
}
.editorial-special--care .care-process-tile--movement{
  grid-column:1!important;grid-row:1!important;
}
.editorial-special--care .care-process-tile--crown{
  grid-column:1!important;grid-row:2!important;
}
.editorial-special--care .care-process-right-column{
  grid-column:2!important;grid-row:1 / span 2!important;
  display:flex!important;flex-direction:column!important;
  min-width:0!important;min-height:0!important;
  width:100%!important;height:100%!important;
  gap:0!important;margin:0!important;padding:0!important;
  overflow:hidden!important;background:transparent!important;
}
.editorial-special--care .care-process-right-column .care-process-tile--bracelet{
  flex:45 1 0!important;
}
.editorial-special--care .care-process-right-column .care-process-tile--tool,
.editorial-special--care .care-process-right-column .care-process-tile--caseback{
  flex:27.5 1 0!important;
}
.editorial-special--care .care-process-collage .care-process-tile{
  position:relative!important;display:block!important;
  width:100%!important;height:100%!important;min-width:0!important;min-height:0!important;
  flex-shrink:1!important;margin:0!important;padding:0!important;
  border:0!important;border-radius:0!important;overflow:hidden!important;
  background:transparent!important;
}
.editorial-special--care .care-process-collage .care-process-tile img{
  position:absolute!important;inset:0!important;display:block!important;
  width:100%!important;height:100%!important;max-width:none!important;min-height:0!important;
  object-fit:cover!important;object-position:center!important;
  margin:0!important;padding:0!important;border:0!important;border-radius:0!important;
  filter:none!important;opacity:1!important;mix-blend-mode:normal!important;transform:none!important;
}
.editorial-special--care .care-process-tile--bracelet img{
  object-fit:cover!important;object-position:center 48%!important;
}
.editorial-special--care .care-process-collage::before,
.editorial-special--event .event-visual--collage::before{
  content:""!important;position:absolute!important;inset:16px!important;z-index:5!important;
  border:1px solid rgba(255,255,255,.84)!important;box-sizing:border-box!important;pointer-events:none!important;
}
.editorial-special--care .care-process-collage figcaption,
.editorial-special--event .event-visual--collage figcaption{
  position:absolute!important;left:28px!important;right:28px!important;bottom:24px!important;
  z-index:6!important;display:flex!important;justify-content:space-between!important;align-items:center!important;
  gap:12px!important;color:#fff!important;font-size:8px!important;line-height:1.2!important;
  letter-spacing:.16em!important;text-transform:uppercase!important;
  text-shadow:0 1px 12px rgba(0,0,0,.6)!important;pointer-events:none!important;
}
.editorial-special--care .care-process-collage figcaption span,
.editorial-special--event .event-visual--collage figcaption span{
  position:static!important;display:block!important;width:auto!important;height:auto!important;
  color:inherit!important;font-size:inherit!important;line-height:inherit!important;letter-spacing:inherit!important;
}
.editorial-special--event .event-visual--collage{aspect-ratio:4 / 5!important;}
@media(max-width:900px){
  .editorial-special--care .care-process-collage{max-width:720px!important;margin-inline:auto!important;aspect-ratio:2 / 3!important;}
  .editorial-special--event .event-visual--collage{max-width:720px!important;margin-inline:auto!important;}
}
@media(max-width:600px){
  .editorial-special--care .care-process-collage{aspect-ratio:2 / 3!important;}
  .editorial-special--care .care-process-collage::before,
  .editorial-special--event .event-visual--collage::before{inset:10px!important;}
  .editorial-special--care .care-process-collage figcaption,
  .editorial-special--event .event-visual--collage figcaption{
    left:18px!important;right:18px!important;bottom:16px!important;
    font-size:6px!important;letter-spacing:.12em!important;
  }
}


/* V75 QA fix — tighter mobile Event rhythm and robust collage captions. */
.editorial-special--care .care-process-collage,
.editorial-special--event .event-visual--collage{
  isolation:isolate!important;
}
.editorial-special--care .care-process-collage .care-process-tile,
.editorial-special--care .care-process-right-column,
.editorial-special--event .event-visual--collage .event-collage-tile{
  gap:0!important;
  outline:0!important;
  box-shadow:none!important;
}
.editorial-special--care .care-process-right-column .care-process-tile--bracelet img{
  object-fit:cover!important;
  object-position:50% 48%!important;
}
.editorial-special--care .care-process-right-column .care-process-tile--tool img{
  object-position:50% 48%!important;
}
.editorial-special--care .care-process-right-column .care-process-tile--caseback img{
  object-position:50% 52%!important;
}
@media(max-width:900px){
  .editorial-special--event .event-hero-grid{gap:18px!important;}
  .editorial-special--event .event-copy{padding-bottom:0!important;}
}
@media(max-width:600px){
  .editorial-special--event .event-hero-grid{gap:12px!important;}
  .editorial-special--event .event-copy{padding-top:36px!important;padding-bottom:0!important;}
  .editorial-special--event .event-visual--collage{margin-top:0!important;}
  .editorial-special--event .event-visual--collage figcaption{display:flex!important;}
  .editorial-special--care .care-process-collage figcaption,
  .editorial-special--event .event-visual--collage figcaption{z-index:8!important;}
}


/* V77 — eliminate mobile zoom hairlines by letting adjacent collage images overlap by 1px. */
.editorial-special--care .care-process-collage .care-process-tile img,
.editorial-special--event .event-visual--collage .event-collage-tile img{
  inset:-1px!important;
  width:calc(100% + 2px)!important;
  height:calc(100% + 2px)!important;
}


/* V78 — a little more breathing room between Event copy and collage. */
.editorial-special--event .event-hero-grid{gap:82px!important;}
@media(max-width:900px){
  .editorial-special--event .event-hero-grid{gap:22px!important;}
}
@media(max-width:600px){
  .editorial-special--event .event-hero-grid{gap:20px!important;}
}

/* V81 — Event CTA first, then event details; keep the collage in the right column on desktop. */
.editorial-special--event .event-hero-grid{
  grid-template-columns:minmax(0,1fr) minmax(0,.92fr)!important;
  align-items:start!important;
  gap:clamp(32px,5vw,72px)!important;
  min-height:0!important;
}
.editorial-special--event .event-copy{
  display:flex!important;
  flex-direction:column!important;
  gap:clamp(30px,3.5vw,52px)!important;
  min-width:0!important;
  padding:clamp(36px,5vw,72px) 0 0!important;
}
.editorial-special--event .event-cta-block{
  display:grid!important;
  grid-template-columns:minmax(64px,.28fr) minmax(0,1fr)!important;
  gap:clamp(18px,2.5vw,36px)!important;
  align-items:start!important;
  padding:0 0 clamp(26px,3vw,40px)!important;
  border-bottom:1px solid var(--line)!important;
  min-width:0!important;
}
.editorial-special--event .event-cta-block .special-index{
  padding-top:8px!important;
  font-size:9px!important;
  letter-spacing:.14em!important;
  color:var(--muted)!important;
}
.editorial-special--event .event-cta-block h2{
  font-family:var(--serif)!important;
  font-size:clamp(38px,4.2vw,64px)!important;
  font-weight:400!important;
  line-height:.98!important;
  letter-spacing:-.05em!important;
  margin:0 0 18px!important;
  overflow-wrap:anywhere!important;
}
.editorial-special--event .event-cta-block h2 em{color:var(--burgundy)!important;}
.editorial-special--event .event-cta-block p{
  max-width:620px!important;
  margin:0!important;
  color:var(--muted)!important;
  font-size:clamp(13px,1.05vw,15px)!important;
  line-height:1.8!important;
}
.editorial-special--event .event-info-block{min-width:0!important;}
.editorial-special--event .event-info-block .special-kicker{margin-top:0!important;}
.editorial-special--event .event-visual--collage{width:100%!important;min-width:0!important;}
@media(max-width:900px){
  .editorial-special--event .event-hero-grid{
    grid-template-columns:minmax(0,1fr)!important;
    gap:22px!important;
  }
  .editorial-special--event .event-copy{
    gap:30px!important;
    padding-top:30px!important;
  }
  .editorial-special--event .event-cta-block{
    grid-template-columns:minmax(0,1fr)!important;
    gap:12px!important;
    padding-bottom:24px!important;
  }
  .editorial-special--event .event-cta-block h2{font-size:clamp(38px,8vw,58px)!important;}
}
@media(max-width:600px){
  .editorial-special--event .event-hero-grid{gap:18px!important;}
  .editorial-special--event .event-copy{gap:26px!important;padding-top:24px!important;}
  .editorial-special--event .event-cta-block{gap:8px!important;padding-bottom:20px!important;}
  .editorial-special--event .event-cta-block h2{font-size:clamp(36px,9.5vw,50px)!important;margin-bottom:14px!important;}
  .editorial-special--event .event-cta-block p{font-size:14px!important;line-height:1.75!important;}
}


/* V82 — Event hierarchy and alignment: CTA headline leads, both copy blocks share a left edge. */
.editorial-special--event .event-cta-block{
  grid-template-columns:minmax(0,1fr)!important;
  gap:12px!important;
  align-items:start!important;
}
.editorial-special--event .event-cta-block .special-index{
  padding-top:0!important;
  margin:0 0 4px!important;
}
.editorial-special--event .event-cta-block h2{
  font-size:clamp(52px,6.1vw,88px)!important;
  font-weight:400!important;
  line-height:.96!important;
  margin:0 0 18px!important;
  max-width:100%!important;
}
.editorial-special--event .event-cta-block h2 strong{font-weight:600!important;}
.editorial-special--event .event-info-block h1{
  font-size:clamp(42px,4.25vw,76px)!important;
  line-height:.98!important;
}
.editorial-special--event .event-info-block .special-lead{
  max-width:620px!important;
  font-size:clamp(13px,1.05vw,15px)!important;
  line-height:1.8!important;
}
@media(max-width:900px){
  .editorial-special--event .event-cta-block{gap:8px!important;}
  .editorial-special--event .event-cta-block h2{font-size:clamp(46px,11.5vw,68px)!important;}
  .editorial-special--event .event-info-block h1{font-size:clamp(38px,10vw,54px)!important;}
}
@media(max-width:600px){
  .editorial-special--event .event-cta-block h2{font-size:clamp(44px,12vw,64px)!important;margin-bottom:14px!important;}
  .editorial-special--event .event-info-block h1{font-size:clamp(36px,9.8vw,50px)!important;}
}
