/* SASDAS MARBLE — colour system: 60 white / 30 black / 10 burgundy (#6D001A).
   Loaded last: re-points the token layer and the accent aliases. No structural changes. */
:root{
  --burgundy:#6d001a;--burgundy-deep:#4e0013;--burgundy-lift:#8a0322;
  --burgundy-line:rgba(109,0,26,.38);--burgundy-on-dark:#a80a2b;--burgundy-wash:rgba(109,0,26,.07);
  /* light surface set */
  --colors-canvas:#ffffff;
  --colors-surface-soft:#f5f3f1;
  --colors-surface-card:#ffffff;
  --colors-surface-elevated:#faf9f8;
  --colors-hairline:rgba(0,0,0,.12);
  --colors-hairline-strong:rgba(0,0,0,.28);
  /* type on light */
  --colors-on-dark:#000000;
  --colors-body:#3c3c3c;
  --colors-body-strong:#111111;
  --colors-muted:#6d6d6d;
  --colors-muted-soft:#9b9b9b;
  --colors-primary:#000000;
  --colors-link:var(--burgundy);
  --colors-warning:var(--burgundy);--colors-success:var(--burgundy);
  /* legacy accent aliases → burgundy / neutral hairlines */
  --gold:var(--burgundy);--gold-soft:var(--burgundy);
  --gold-line:rgba(0,0,0,.13);--gold-wash:var(--burgundy-wash);
}
/* dark zones keep the token contract, flipped — ~30% black */
.site-header,.site-footer,.band,.overlay,.lightbox,.hero-c,.dark-zone{
  --colors-on-dark:#ffffff;
  --colors-body:rgba(255,255,255,.76);
  --colors-body-strong:#ffffff;
  --colors-muted:rgba(255,255,255,.62);
  --colors-muted-soft:rgba(255,255,255,.44);
  --colors-hairline:rgba(255,255,255,.16);
  --colors-hairline-strong:rgba(255,255,255,.32);
  --colors-surface-soft:#111111;
  --colors-surface-card:#0b0b0b;
  --gold:#ffffff;--gold-soft:#ffffff;--gold-line:rgba(255,255,255,.2);--gold-wash:rgba(255,255,255,.1)
}
html{background:#fff}
body{background:#fff;color:var(--colors-body)}
::selection{background:var(--burgundy);color:#fff}
a{color:var(--burgundy)}
a:hover{color:var(--burgundy-lift)}
a.plain{color:inherit}

/* ── BUTTONS ─────────────────────────────────────────────── */
.btn{border-radius:2px;border:1px solid var(--burgundy);background:var(--burgundy);color:#fff;backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:0 10px 26px -14px rgba(109,0,26,.7);transition:background .35s ease,border-color .35s ease,box-shadow .35s ease,transform .3s ease,color .35s ease}
.btn:hover{background:var(--burgundy-lift);border-color:var(--burgundy-lift);color:#fff;transform:translateY(-1px);box-shadow:0 16px 32px -14px rgba(109,0,26,.85)}
.btn:active{transform:none;background:var(--burgundy-deep);box-shadow:inset 0 2px 6px rgba(0,0,0,.3)}
.btn:focus-visible{outline:2px solid var(--burgundy);outline-offset:3px}
.btn .ripple{background:rgba(255,255,255,.24)}
/* outline / quiet */
.btn-quiet{background:transparent;border-color:rgba(0,0,0,.62);color:#000;box-shadow:none}
.btn-quiet:hover{background:transparent;border-color:var(--burgundy);color:var(--burgundy);box-shadow:0 10px 24px -18px rgba(0,0,0,.6)}
/* secondary — black */
.btn-black{background:#000;border-color:#000;color:#fff;box-shadow:0 10px 26px -16px rgba(0,0,0,.8)}
.btn-black:hover{background:var(--burgundy);border-color:var(--burgundy);color:#fff}
/* legacy gold button = primary burgundy */
.btn-gold{background:var(--burgundy);border-color:var(--burgundy);color:#fff;box-shadow:0 12px 30px -14px rgba(109,0,26,.75)}
.btn-gold:hover{background:var(--burgundy-lift);border-color:var(--burgundy-lift);color:#fff}
/* on dark backgrounds the outline inverts */
.band .btn-quiet,.site-footer .btn-quiet,.overlay .btn-quiet,.hero-c .btn-quiet{border-color:rgba(255,255,255,.62);color:#fff}
.band .btn-quiet:hover,.site-footer .btn-quiet:hover,.overlay .btn-quiet:hover,.hero-c .btn-quiet:hover{border-color:#fff;background:rgba(255,255,255,.1);color:#fff}
.btn-icon{border-color:rgba(0,0,0,.22);background:#fff;color:#000;box-shadow:0 4px 14px -8px rgba(0,0,0,.4);backdrop-filter:none;-webkit-backdrop-filter:none}
.btn-icon:hover{background:var(--burgundy);border-color:var(--burgundy);color:#fff}
.band .btn-icon,.overlay .btn-icon,.lightbox .btn-icon{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.4);color:#fff;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.band .btn-icon:hover,.overlay .btn-icon:hover,.lightbox .btn-icon:hover{background:var(--burgundy);border-color:var(--burgundy);color:#fff}

/* ── HEADER (black bar, white mark, burgundy accents) ────── */
.site-header{background:#000;border-bottom:1px solid rgba(255,255,255,.14)}
.site-header.scrolled{background:#000;border-bottom-color:rgba(255,255,255,.14)}
.nav-links a{color:#fff}
.nav-links a:hover{opacity:1;color:#fff;border-bottom-color:var(--burgundy)}
.nav-links a.active{border-bottom-color:var(--burgundy);color:#fff}
.nav-call{border-color:var(--burgundy);background:var(--burgundy);color:#fff!important}
.nav-call:hover{background:var(--burgundy-lift);border-color:var(--burgundy-lift);color:#fff!important}
.mobile-menu.open{background:#000}
.mobile-menu a{color:#fff}
.mobile-menu a:hover{color:#fff}
.mm-call{color:#fff!important;border-top-color:rgba(255,255,255,.18)}

/* ── FOOTER (black slab) ─────────────────────────────────── */
.site-footer{background:#000;border-top:none;color:rgba(255,255,255,.76)}
.site-footer h4{color:rgba(255,255,255,.55)}
.site-footer .cols a{color:rgba(255,255,255,.8)}
.site-footer .cols a:hover{color:#fff}
.site-footer .legal{border-top-color:rgba(255,255,255,.14)}
.site-footer .legal-links a:hover{color:#fff}
.foot-call{color:#fff!important}
.foot-call:hover{color:#fff!important;opacity:.85}

/* ── SECTION FURNITURE ───────────────────────────────────── */
.section-head{border-bottom-color:rgba(0,0,0,.12)}
.section-head .caption{color:var(--burgundy)}
.hairline-top{border-top-color:rgba(0,0,0,.1)}
.rule-gold{background:var(--burgundy)}
.gold{color:var(--burgundy)}
.caption{color:var(--colors-muted)}
.spec-row{border-top-color:rgba(0,0,0,.12)}
.spec-row:last-child{border-bottom-color:rgba(0,0,0,.12)}
.spec-row:hover{border-top-color:var(--burgundy)}
.spec-row .k{color:var(--burgundy)}
.stat .v{color:#fff}
.band .caption,.band .spec-row .k{color:rgba(255,255,255,.7)}
.photo-card .name{color:#000}
.photo-card .sub{color:var(--burgundy)}
.photo-card .frame{background:var(--colors-surface-soft)}
.faq summary::after{color:var(--burgundy)}
.faq summary::marker{color:var(--burgundy)}
.faq details[open] summary{color:var(--burgundy)}
.field label{color:var(--burgundy)}
.field input,.field textarea,.field select{color:#000;border-bottom-color:rgba(0,0,0,.24)}
.field input:focus,.field textarea:focus,.field select:focus{border-bottom-color:var(--burgundy)}
.field ::placeholder{color:#9b9b9b}
.overlay{background:rgba(0,0,0,.62)}
.overlay .panel{background:#fff;border-color:rgba(0,0,0,.12);color:var(--colors-body)}
.overlay .panel{--colors-on-dark:#000;--colors-body:#3c3c3c;--colors-body-strong:#111;--colors-muted:#6d6d6d;--colors-muted-soft:#9b9b9b;--colors-hairline:rgba(0,0,0,.12);--colors-hairline-strong:rgba(0,0,0,.28);--gold:var(--burgundy);--gold-soft:var(--burgundy);--gold-line:rgba(0,0,0,.13)}
/* photo bands keep their dark scrim — this is the black 30% */
.band::after{background:linear-gradient(to bottom,rgba(0,0,0,.62),rgba(0,0,0,.42) 40%,rgba(0,0,0,.78))}
.band img.bg{opacity:.7}
.band{background:#000}
/* legible burgundy for use on black */
/* ── CATALOGUE TILES ─────────────────────────────────────── */
.cat-lede p{color:var(--colors-muted)}
.cat-tile .frame{background:#f0eeec;box-shadow:0 18px 34px -26px rgba(0,0,0,.5)}
.cat-tile:hover .frame{box-shadow:0 40px 60px -34px rgba(0,0,0,.45),0 0 0 1px var(--burgundy-line)}
.cat-tile .frame::after{background:linear-gradient(to top,rgba(0,0,0,.5),rgba(0,0,0,.04) 48%,rgba(0,0,0,.34))}
.cat-tile .frame::before{border-color:rgba(255,255,255,.4)}
.cat-tile:hover .frame::before{border-color:#fff}
.cat-tile::after{background:radial-gradient(ellipse at center,rgba(0,0,0,.34),transparent 72%)}
.cat-tile:hover::after{opacity:.55}
.tile-idx{color:#fff}
.tile-idx::after{background:#fff}
.tile-count{color:rgba(255,255,255,.8)}
.tile-meta{border-top-color:rgba(0,0,0,.14)}
.tile-meta::after{background:var(--burgundy)}
.tname{color:#000}
.cat-tile:hover .tname{color:var(--burgundy)}
.tsub{color:var(--colors-muted)}
.tgo{border-color:rgba(0,0,0,.24);color:#000}
.cat-tile:hover .tgo{background:var(--burgundy);border-color:var(--burgundy);color:#fff}
.cat-tile:focus-visible{outline-color:var(--burgundy)}

/* ── HORIZONTAL ROWS ─────────────────────────────────────── */
.rcard .frame{background:#f0eeec;box-shadow:0 18px 34px -28px rgba(0,0,0,.5)}
.rcard:hover .frame{box-shadow:0 34px 52px -30px rgba(0,0,0,.45)}
.rcard .ov{background:rgba(0,0,0,.55);border-top-color:rgba(255,255,255,.14)}
.rcard .ov .name{color:#fff}
.rcard .ov .sub{color:rgba(255,255,255,.68)}
.rcard .ov .desc{color:rgba(255,255,255,.8)}
.rcard .ov .go{color:#fff;border-color:rgba(255,255,255,.5);border-radius:2px}
.rcard .ov .go:hover{background:var(--burgundy);border-color:var(--burgundy);color:#fff}
.rcard .badge{color:#fff;background:var(--burgundy);border-color:var(--burgundy)}

/* ── COLLECTION page ─────────────────────────────────────── */
.filters{background:rgba(255,255,255,.94);border-top-color:rgba(0,0,0,.1);border-bottom-color:rgba(0,0,0,.1)}
.chip{color:#4a4a4a;border-color:rgba(0,0,0,.18);border-radius:2px;transition:color .25s,background .25s,border-color .25s}
.chip:hover{color:#000;border-color:var(--burgundy);background:var(--burgundy-wash)}
.chip.on{color:#fff;background:var(--burgundy);border-color:var(--burgundy)}
.tools select{color:#000;border-bottom-color:rgba(0,0,0,.24)}
.tools select option{background:#fff;color:#000}
.search{border-bottom-color:rgba(0,0,0,.24)}
.search input{color:#000}
.search svg{stroke:#6d6d6d}
.count{color:var(--colors-muted)}
.acts .btn-icon{background:rgba(255,255,255,.9);border-color:rgba(0,0,0,.18);color:#000;backdrop-filter:blur(8px)}
.acts .btn-icon:hover{background:var(--burgundy);border-color:var(--burgundy);color:#fff}
.acts .btn-icon.wished{background:var(--burgundy);border-color:var(--burgundy);color:#fff}
.qv .ph{background:#f0eeec}
.qv .close{background:rgba(255,255,255,.92);border-color:rgba(0,0,0,.18);color:#000}
.qv .close:hover{background:var(--burgundy);border-color:var(--burgundy);color:#fff}
.page-head .caption{color:var(--burgundy)}

/* ── PRODUCT page ────────────────────────────────────────── */
.crumbs a{color:var(--colors-muted)}
.crumbs a:hover{color:var(--burgundy)}
.stage{background:#f0eeec}
.zhint{background:rgba(0,0,0,.62);color:#fff}
.thumbs button{border-color:rgba(0,0,0,.16);background:#f0eeec}
.thumbs button.on{border-color:var(--burgundy);box-shadow:0 0 0 1px var(--burgundy)}
.pd .btn.ghost{background:transparent;border-color:rgba(0,0,0,.62);color:#000;box-shadow:none}
.pd .btn.ghost:hover{border-color:var(--burgundy);color:var(--burgundy);background:transparent}
.applied span{color:#4a4a4a;border-color:rgba(0,0,0,.16);border-radius:2px}
.lightbox{background:rgba(0,0,0,.92)}

/* ── CONTACT page ────────────────────────────────────────── */
.c-head .caption{color:var(--burgundy)}
.detail-row{border-top-color:rgba(0,0,0,.12)}
.detail-row .k{color:var(--burgundy)}
.detail-row a,.detail-row .v{color:#000}
.detail-row a:hover{color:var(--burgundy);opacity:1}
.mapph{background:#f5f3f1;border-color:rgba(0,0,0,.12)}
.mapph::before{background:repeating-linear-gradient(45deg,transparent,transparent 22px,rgba(0,0,0,.028) 22px,rgba(0,0,0,.028) 44px)}
.mapph .dot{background:var(--burgundy);box-shadow:0 0 0 6px rgba(109,0,26,.14)}
.ok{border-color:var(--burgundy-line);background:var(--burgundy-wash);color:#111;border-radius:2px}

/* ── CRAFTSMANSHIP page ──────────────────────────────────── */
.hero-c::after{background:linear-gradient(to bottom,rgba(0,0,0,.5),rgba(0,0,0,.18) 40%,rgba(0,0,0,.82))}
.process-grid{background:rgba(0,0,0,.12)}
.process-grid .cell{background:#fff}
.pn{color:var(--burgundy)}
.assure .item{border-top-color:rgba(0,0,0,.12)}
.gallery-strip .g{background:#f0eeec}
.pquote{color:#000}

/* ── LEGAL pages ─────────────────────────────────────────── */
.legal-hero .caption{color:var(--burgundy)}
.legal-nav a{color:var(--colors-muted);border-top-color:rgba(0,0,0,.12)}
.legal-nav a:hover{color:var(--burgundy)}
.legal-body .sec{border-top-color:rgba(0,0,0,.12)}
.legal-body h2 .num{color:var(--burgundy)}
.legal-body li::before{color:var(--burgundy)}
.legal-body .note{border-left-color:var(--burgundy)}
.legal-body a,.legal-wrap a{color:var(--burgundy)}
.legal-body a:hover,.legal-wrap a:hover{color:var(--burgundy-lift)}

/* sticky mobile call bar */
.call-bar{border-color:var(--burgundy);background:var(--burgundy);color:#fff;box-shadow:0 16px 38px -16px rgba(0,0,0,.6)}
.call-bar:active{background:var(--burgundy-deep);color:#fff}
