/* ============================================================
   VANITY DETAIL
   ============================================================ */
.vd-crumbs{padding:30px 0 6px}
.vd-crumbs .crumbs{font-size:12px;color:var(--muted);display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.vd-crumbs .crumbs a{color:var(--muted);transition:color .2s var(--ease)}
.vd-crumbs .crumbs a:hover{color:var(--ink)}
.vd-crumbs .crumbs .sep{opacity:.4}

.vd-hero{
  display:grid;grid-template-columns:1.05fr 1fr;gap:60px;align-items:start;
  padding:30px 0 60px;
}
@media(max-width:880px){.vd-hero{grid-template-columns:1fr;gap:36px}}

.vd-img{
  position:sticky;top:calc(var(--topbar-h) + var(--nav-h) + 30px);
  aspect-ratio:3/4;border-radius:14px;overflow:hidden;
  background:var(--bg-2);border:1px solid var(--line);
}
.vd-img img{width:100%;height:100%;object-fit:cover;display:block}
@media(max-width:880px){.vd-img{position:static}}

.vd-info .code{
  font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;
  color:var(--gold);
}
.vd-info .code::before{content:"— ";opacity:.6}
.vd-info h1{margin:10px 0 4px;font-size:clamp(36px,4.6vw,58px);line-height:1.05}
.vd-info h1 em{font-style:italic;color:var(--gold)}
.vd-info .tagline{font-size:14px;color:var(--muted);font-weight:500;letter-spacing:.04em;margin-bottom:16px}
.vd-info .lede{font-size:16px;line-height:1.7;color:var(--ink-2);max-width:50ch;margin-bottom:24px}

/* Quick spec */
.vd-quickspec{
  display:grid;grid-template-columns:repeat(2,1fr);gap:0;
  background:var(--bg-2);border:1px solid var(--line);
  border-radius:12px;overflow:hidden;margin-bottom:24px;
}
.vd-quickspec .it{padding:15px 18px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.vd-quickspec .it:nth-child(2n){border-right:none}
.vd-quickspec .it:nth-last-child(-n+2){border-bottom:none}
.vd-quickspec .it .k{font-size:10px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-bottom:4px}
.vd-quickspec .it .v{font-family:var(--serif);font-size:17px;font-weight:500;line-height:1.2;color:var(--ink)}

/* Included cabinets */
.vd-incl{border:1px solid var(--line);border-radius:12px;overflow:hidden;margin-bottom:24px;background:#fff}
.vd-incl .hd{
  display:grid;grid-template-columns:1fr;gap:14px;
  padding:11px 18px;background:var(--bg-2);border-bottom:1px solid var(--line);
  font-size:9.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);
}
.vd-incl .rw{
  display:grid;grid-template-columns:1fr;gap:14px;align-items:baseline;
  padding:13px 18px;border-bottom:1px solid var(--line);
}
.vd-incl .rw:last-child{border-bottom:none}
.vd-incl .rw .c{font-size:13px;font-weight:700}
.vd-incl .rw .c span{display:block;font-size:11.5px;color:var(--muted);font-weight:500;margin-top:1px}
.vd-incl .rw .p{font-size:13px;font-weight:600;font-feature-settings:'tnum' 1;min-width:64px;text-align:right}
.vd-incl .hd .p{min-width:64px;text-align:right}

/* Series price cards */
.vd-prices{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:24px}
.vd-ft{
  border:1px solid var(--line);border-radius:12px;background:#fff;
  display:flex;align-items:center;gap:12px;padding:10px 12px;
  transition:border-color .2s var(--ease);
}
.vd-ft:hover{border-color:var(--ink)}
.vd-ft .im{width:56px;height:56px;flex-shrink:0;border-radius:9px;overflow:hidden;background:var(--bg-2);border:1px solid var(--line)}
.vd-ft .im img{width:100%;height:100%;object-fit:cover;display:block}
.vd-ft .tx .k{font-size:8.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.vd-ft .tx .nm{font-size:13.5px;font-weight:700;margin-top:2px}
.vd-ft .tx .ds{font-size:10.5px;color:var(--muted);margin-top:1px}
.vd-price{
  border:1.5px solid var(--line);border-radius:12px;padding:18px 20px;background:#fff;
  transition:border-color .2s var(--ease);
}
.vd-price:hover{border-color:var(--ink)}
.vd-price .s{font-size:10px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}
.vd-price .v{font-family:var(--serif);font-size:34px;letter-spacing:-.01em;margin-top:6px;font-feature-settings:'tnum' 1}
.vd-price .n{font-size:10.5px;color:var(--muted);margin-top:4px}
@media(max-width:480px){.vd-prices{grid-template-columns:1fr}}

.vd-ctas{display:flex;gap:10px;flex-wrap:wrap}

/* Finishes */
.vd-fin{padding:60px 0;border-top:1px solid var(--line);background:var(--bg-2)}
.vd-fin .head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:26px;flex-wrap:wrap}
.vd-fin h2{font-size:clamp(26px,3.2vw,40px)}
.vd-fin h2 em{font-style:italic;color:var(--gold)}
.vd-fin .head p{color:var(--muted);font-size:13.5px;max-width:46ch}
.vd-fin-grid{display:grid;grid-template-columns:repeat(9,1fr);gap:10px}
.vd-fin-chip{
  display:block;background:#fff;border:1.5px solid var(--line);border-radius:10px;overflow:hidden;
  text-decoration:none;color:inherit;transition:all .2s var(--ease);
}
.vd-fin-chip:hover{border-color:var(--ink);transform:translateY(-2px)}
.vd-fin-chip .im{aspect-ratio:1/1;background:var(--bg-2)}
.vd-fin-chip .im img{width:100%;height:100%;object-fit:cover;display:block}
.vd-fin-chip .nm{font-size:10.5px;font-weight:700;padding:7px 9px;letter-spacing:.02em}
.vd-fin-chip .nm span{display:block;font-size:8.5px;color:var(--muted);font-weight:700;letter-spacing:.12em;text-transform:uppercase;margin-top:1px}
@media(max-width:1080px){.vd-fin-grid{grid-template-columns:repeat(5,1fr)}}
@media(max-width:640px){.vd-fin-grid{grid-template-columns:repeat(3,1fr)}}

/* Pagination + related */
.vd-pag{
  display:grid;grid-template-columns:1fr 1fr;gap:14px;
  padding:40px 0 10px;
}
.vd-pag .nx{
  background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);
  padding:22px 26px;text-decoration:none;color:inherit;
  display:flex;flex-direction:column;gap:5px;
  transition:all .25s var(--ease);
}
.vd-pag .nx:hover{border-color:var(--ink);transform:translateY(-2px)}
.vd-pag .nx:last-child{text-align:right;align-items:flex-end}
.vd-pag .nx .l{font-size:11px;font-weight:600;letter-spacing:.14em;color:var(--muted);text-transform:uppercase}
.vd-pag .nx h3{font-size:21px;margin-top:3px;font-family:var(--serif)}
.vd-pag .nx .fn{font-size:12px;color:var(--gold)}

.vd-rel{padding:40px 0 70px}
.vd-rel h3{font-size:clamp(24px,3vw,34px);margin-bottom:20px}
.vd-rel h3 em{font-style:italic;color:var(--gold)}
.vd-rel-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.vd-rel-card{
  display:block;background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;
  text-decoration:none;color:inherit;transition:all .25s var(--ease);
}
.vd-rel-card:hover{border-color:var(--ink);transform:translateY(-3px);box-shadow:var(--shadow)}
.vd-rel-card .ph{aspect-ratio:3/4;overflow:hidden;background:var(--bg-2)}
.vd-rel-card .ph img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .7s var(--ease)}
.vd-rel-card:hover .ph img{transform:scale(1.04)}
.vd-rel-card .b{padding:14px 16px}
.vd-rel-card .b .c{font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.vd-rel-card .b h4{font-family:var(--serif);font-size:19px;margin-top:3px}
@media(max-width:780px){.vd-rel-grid{grid-template-columns:1fr}}
