/* Shared editorial palette, including standalone villa and utility pages. */
:root {
  --vic-paper:#f8f7f3; --vic-stone:#eee8dc; --vic-charcoal:#20221e;
  --vic-gold:#806a43; --vic-rule:#d8d2c5; --vic-muted:#55584f;
  --paper:var(--vic-paper); --ink:var(--vic-charcoal); --mist:var(--vic-stone); --line:var(--vic-rule);
}
html body {background:var(--vic-paper);color:var(--vic-charcoal);font-family:"Helvetica Neue",Arial,sans-serif}
body .site-header {background:var(--vic-paper);color:var(--vic-charcoal);border-bottom:1px solid var(--vic-rule);box-shadow:none}
.site-header .vic-logo-mark {filter:invert(1) grayscale(1);mix-blend-mode:multiply}
.site-header .vic-brand-signature strong {color:var(--vic-gold);font-weight:500;letter-spacing:.12em}
.site-header .vic-brand-signature em {color:var(--vic-charcoal)}
body .site-header nav a,body .site-header .nav-app {color:var(--vic-charcoal);font-weight:450}
body .site-header nav a:hover {color:var(--vic-gold)}
body .site-header .nav-cta,body .button.dark {background:var(--vic-charcoal);color:#fff;border:1px solid var(--vic-charcoal)}
body .site-header .nav-app {background:transparent;border-color:var(--vic-rule)}
.edition-menu {display:none}
@media(max-width:1180px){
  .site-header .edition-menu {display:block;position:relative;margin-left:auto}
  .edition-menu summary {padding:10px 4px;font-size:13px;cursor:pointer}
  .site-header .edition-menu nav {display:grid;position:absolute;top:100%;right:0;width:min(240px,78vw);background:var(--vic-paper);border:1px solid var(--vic-rule);padding:12px 20px;gap:0;max-height:68vh;overflow:auto}
  .site-header .edition-menu nav a {padding:9px 0}
  .site-header .edition-menu ~ a {margin-left:0}
}
body :is(.hero-workspace,.page-hero,.destination-hero,.collections-hero,.vic-app-intro) h1 {
  font-family:Georgia,serif;font-weight:400;font-size:clamp(34px,4.15vw,56px)!important;
  letter-spacing:-.035em!important;line-height:1.06!important;text-wrap:balance;
}
body :is(.page-intro,.workspace-intro,.destination-intro,.collections-intro,.section-intro,.split-copy,.section-heading,.service-copy,.regional-copy,.choose-destination,.editorial,.faq,.closing,.collection-closing,.vic-live-heading,.proof-intro,.vic-planning-index,.app-promo,.vic-app-download-final) h2 {
  font:400 clamp(30px,3.3vw,46px)/1.12 Georgia,serif;letter-spacing:-.03em;text-wrap:balance;
}
body :is(.destination-intro,.collections-intro,.page-intro,.regional-copy,.section-heading,.split-copy,.vic-planning) h2 em {color:var(--vic-gold)}
body .eyebrow {font-weight:500;letter-spacing:.16em}
body :is(.page-intro,.collections-intro,.destination-intro,.regional-copy,.vic-planning,.split-copy) .eyebrow {color:var(--vic-gold)}
body .text-link {font-weight:500;border-bottom-color:#af9a72}
body .proof-band,body footer {background:#1d1f1b;color:#f7f5f0}
body footer :is(p,a,.legal) {color:#d1d0c8}
body footer h4 {color:#e6d8bd;font:400 17px Georgia,serif}
body footer a:hover {color:#e8ca91}
body .app-promo {background:var(--vic-stone);color:var(--vic-charcoal);border-block:1px solid var(--vic-rule)}
body .app-promo-inner :is(h2,p,.text-link) {color:var(--vic-charcoal)}
body .app-promo-inner .eyebrow {color:var(--vic-gold)}
body .button.gold {background:#dac49c;color:#24251e;border-color:#dac49c}
body .button,body .nav-cta {font-weight:500;letter-spacing:.055em}
body :is(.text-link,.button,.check-list,.content-card-body) svg {stroke-width:1.35}
body .content-cards,body .place-grid,body .collection-grid {gap:clamp(16px,2vw,30px);background:transparent}
body .content-cards article,body .place-grid .place-card,body .collection-grid .collection-card {
  display:flex;flex-direction:column;position:relative;inset:auto;aspect-ratio:auto!important;
  height:auto!important;min-height:0;overflow:hidden;background:var(--vic-stone);color:var(--vic-charcoal);
  border:0;border-radius:0;box-shadow:none;
}
body .content-cards article:nth-child(even),body .place-grid .place-card:nth-child(even),body .collection-grid .collection-card:nth-child(even) {background:#eae9e0}
body .content-cards article .content-card-media,body .place-grid .place-photo,body .collection-photo {
  display:block;position:relative;inset:auto;width:100%;aspect-ratio:1.72;height:auto;min-height:0;flex:0 0 auto;object-fit:cover;
}
body .place-grid .place-shade,body .content-cards article .content-card-media::after,body .content-card-media>span {display:none}
body .content-cards article .content-card-body,body .place-grid .place-content,body .collection-grid .collection-card-copy {
  display:flex;flex:1;flex-direction:column;align-items:flex-start;justify-content:flex-start;
  position:static;transform:none;min-height:0;height:auto;padding:clamp(18px,2vw,28px);background:transparent;color:var(--vic-charcoal);text-shadow:none;
}
body .content-cards .content-card-body h3,body .place-content h2,body .collection-card-copy h2 {
  max-width:100%;margin:0 0 8px;color:var(--vic-charcoal);font:400 clamp(24px,2.1vw,32px)/1.15 Georgia,serif;letter-spacing:-.025em;text-shadow:none;
}
body .place-content h2 a,body .content-card-body h3 a {color:inherit;text-shadow:none}
body .content-cards .content-card-body p,body .place-content>p,body .collection-card-detail p {
  color:var(--vic-muted);font:400 15px/1.55 "Helvetica Neue",Arial,sans-serif;text-shadow:none;max-width:100%;padding:0;
}
body .content-cards .content-card-body .content-card-kicker,body .place-content .destination-parent,body .collection-card-copy>p {
  color:var(--vic-gold)!important;font:500 10px/1.5 Arial,sans-serif!important;letter-spacing:.14em;text-transform:uppercase;margin:0 0 9px;
}
body .content-card-body>svg {display:none}
body .place-content>a,body .collection-card-copy>a {color:var(--vic-charcoal);border-color:#b29b73;margin-top:auto;padding-top:12px}
body .collection-card-detail strong {color:var(--vic-gold);font-weight:500}
body .collection-card .collection-card-detail {opacity:1;max-height:none}
body .vic-planning {padding-top:clamp(42px,6vw,82px);padding-bottom:60px}
body .vic-planning h1 {font:400 clamp(34px,4vw,54px)/1.08 Georgia,serif;letter-spacing:-.035em}
body .vic-planning h2 {font:400 clamp(25px,2.8vw,36px)/1.16 Georgia,serif;letter-spacing:-.025em}
body .vic-planning p {font-size:16px;line-height:1.75;color:var(--vic-muted)}
body .vic-planning nav {color:var(--vic-gold);font-size:13px}
body .vic-planning figcaption {padding:10px 14px;background:var(--vic-stone);font-size:13px;color:var(--vic-muted)}
body .waterfall-card {background:var(--vic-stone);padding:0 0 14px}
body .waterfall-card img {border-radius:0}
body .waterfall-card :is(h3,p) {margin-inline:18px}
body .vic-planning-links a {text-decoration-color:#baa57f;text-underline-offset:5px}
body .villa-detail {color:var(--vic-charcoal);font:16px/1.65 "Helvetica Neue",Arial,sans-serif}
body .villa-detail h1,body .vic-utility h1 {font:400 clamp(34px,4vw,54px)/1.1 Georgia,serif;letter-spacing:-.035em}
body .villa-detail h2,body .vic-utility h2 {font:400 clamp(25px,2.4vw,34px)/1.2 Georgia,serif}
body .villa-detail .specs,body .villa-detail form {background:var(--vic-stone);padding:18px 24px;border:0}
body .villa-detail button {background:var(--vic-charcoal);color:white}
body .villa-detail footer {padding:24px}
.vic-utility {max-width:700px;margin:10vh auto;padding:24px;line-height:1.7}
.vic-utility a {color:var(--vic-gold);text-underline-offset:4px}
@media(max-width:600px){
  body .content-cards article .content-card-media,body .place-grid .place-photo,body .collection-photo {aspect-ratio:1.55}
  .site-header .nav-app {padding-inline:5px}
}
html {scrollbar-gutter:stable}
body .destination-grid {gap:clamp(16px,2vw,28px)}
body .destination-grid .home-destination-card {
  display:flex;flex-direction:column;padding:0;height:auto;min-height:0;overflow:hidden;
  background:var(--vic-stone);border:0;color:var(--vic-charcoal);
}
.home-place-photo {display:block;width:100%;aspect-ratio:1.65;object-fit:cover}
body .home-destination-card .home-destination-content {
  position:relative;inset:auto;padding:20px 24px;height:auto;min-height:0;background:transparent;
  color:var(--vic-charcoal);text-shadow:none;flex:1;
}
body .home-destination-content h3 {font:400 28px/1.15 Georgia,serif;margin:0;color:var(--vic-charcoal)}
body .home-destination-content .destination-parent {color:var(--vic-gold);text-shadow:none}
body .home-destination-content p {color:var(--vic-muted);opacity:1;text-shadow:none;transform:none}
body .home-destination-content a {color:var(--vic-charcoal);opacity:1;transform:none;border-color:var(--vic-rule)}
body .place-content .destination-parent {text-shadow:none}
