/* Hazaar Dastaan v10 · The Residence. One editorial system, in two seasons. */
:root {
    --lx-paper: #f4eee3;
    --lx-soft: #e9decb;
    --lx-ink: #4b282e;
    --lx-muted: #756560;
    --lx-accent: #947346;
    --lx-deep: #321c23;
    --lx-line: #d1c1a7;
    --vd-light: #fff6e6;
    --vd-brass: #c1a477;
}
html[data-season='winter'] {
    --lx-paper: #f0f1ee;
    --lx-soft: #dee5e3;
    --lx-ink: #263e46;
    --lx-muted: #5b6c71;
    --lx-accent: #817156;
    --lx-deep: #172e37;
    --lx-line: #c2cecb;
    --vd-brass: #c4b28c;
}
body { background: var(--lx-paper); }
.vd-home { overflow: clip; }
.vd-home *, .vd-home *::before, .vd-home *::after { box-sizing: border-box; }
.vd-home figure, .vd-home h1, .vd-home h2, .vd-home h3, .vd-home p { margin: 0; }
.vd-home p { font: 400 15px/29px var(--sans); color: var(--lx-muted); }
.vd-home h2 { font: 400 78px/1.01 var(--serif); letter-spacing: -2px; }
.vd-home h3 { font: 400 40px/1.08 var(--serif); }
.vd-home figure { overflow: hidden; }
.vd-home figure > img { width: 100%; height: 100%; object-fit: cover; }
.vd-wrap { width: calc(100% - 112px); max-width: 1280px; margin: 0 auto; }
.vd-kicker { display: block; font: 500 15px/23px var(--sans); text-transform: uppercase; letter-spacing: 2px; margin-bottom: 24px; }
.vd-chapter { display: flex; align-items: center; gap: 18px; font: 500 15px/24px var(--sans); padding-bottom: 36px; text-transform: uppercase; letter-spacing: 1px; }
.vd-chapter > span:first-child { color: var(--lx-accent); }
.vd-chapter > i { height: 1px; flex: 1; background: currentColor; opacity: .23; margin: 0 8px; }
.vd-chapter > span:last-child, .vd-chapter > a { letter-spacing: 0; text-transform: none; }
.vd-text-link { display: inline-flex; align-items: center; justify-content: space-between; gap: 35px; border-bottom: 1px solid currentColor; padding: 10px 0; font: 500 15px/24px var(--sans); }
.vd-text-link .lx-arrow { transition: transform 350ms; }
.vd-text-link:hover .lx-arrow { transform: translateX(6px); }
.vd-round-link { display: inline-flex; width: 64px; height: 64px; border: 1px solid currentColor; border-radius: 50%; align-items: center; justify-content: center; flex-shrink: 0; transition: background 300ms, color 300ms; }
.vd-round-link:hover { background: var(--vd-brass); color: var(--lx-deep); }
.vd-button { display: inline-flex; align-items: center; justify-content: space-between; gap: 50px; padding: 21px 30px; background: var(--vd-light); color: #3d272b; font: 500 15px/23px var(--sans); }
.vd-section-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 110px; margin-bottom: 55px; }
.vd-section-heading h2 { flex: 1; max-width: 760px; }
.vd-section-heading > p, .vd-section-heading > div { width: 360px; flex-shrink: 0; }
.vd-section-heading .vd-text-link { margin-top: 20px; }
.vd-controls { display: flex; align-items: center; gap: 22px; font: 500 15px/24px var(--sans); }
.vd-controls button { display: flex; align-items: center; justify-content: center; border: 1px solid currentColor; background: transparent; border-radius: 50%; color: inherit; width: 50px; height: 50px; cursor: pointer; transition: background 250ms; }
.vd-controls button:hover { background: #b99a6733; }
.vd-controls button svg { width: 22px; }
/* Arrival: a left-to-right tonal veil protects every summer photograph. */
.vd-arrival { height: 100svh; min-height: 790px; max-height: 1150px; position: relative; background: #231a17; color: var(--vd-light); isolation: isolate; }
.vd-arrival-images, .vd-arrival-image, .vd-arrival-veil { position: absolute; inset: 0; }
.vd-arrival-image { opacity: 0; visibility: hidden; transition: opacity 700ms, visibility 700ms; }
.vd-arrival-image.is-active { opacity: 1; visibility: visible; }
.vd-arrival-image.is-active .lx-season-photo { animation: vd-arrival-drift 12s ease-out both; }
.vd-arrival-veil { background: linear-gradient(90deg,#140d0de0 0%,#1c1215a6 31%,#130f1030 72%),linear-gradient(180deg,#120d11b8 0%,transparent 28%,transparent 62%,#160f16b8 100%); }
.vd-arrival-top { position: absolute; inset: 155px 56px auto; display: flex; justify-content: space-between; font-size: 15px; letter-spacing: 1px; }
.vd-arrival-top span:last-child { writing-mode: vertical-rl; text-transform: uppercase; }
.vd-arrival-copy { position: absolute; top: 47%; left: max(56px,calc((100% - 1280px)/2)); transform: translateY(-43%); width: 760px; padding-right: 40px; }
.vd-arrival-copy .vd-kicker { color: #eee1c7; letter-spacing: 3px; }
.vd-arrival h1 { font: 400 136px/.87 var(--serif); letter-spacing: -3px; text-shadow: 0 3px 35px #0003; color: #fff9ec !important; }
.vd-arrival h1 em { display: block; font: 400 168px/1.03 'La Graziela',var(--serif); margin-left: 14px; letter-spacing: 0; }
.vd-arrival-description { display: flex; align-items: center; gap: 24px; margin-top: 26px; max-width: 530px; }
.vd-arrival-description p { color: #fff6e6; font-size: 18px; line-height: 26px; flex: 1; }
.vd-hairline { width: 55px; height: 1px; background: #d2b480; }
.vd-arrival-description .vd-round-link { width: 50px; height: 50px; }
.vd-arrival-bottom { position: absolute; inset: auto 56px 35px; display: flex; justify-content: space-between; align-items: center; gap: 30px; padding-top: 25px; border-top: 1px solid #fff4; }
.vd-scroll { display: flex; gap: 20px; align-items: center; font-size: 15px; }
.vd-scroll span { font-size: 25px; }
.vd-arrival .lx-season-switch { border-color: #fff7; background: #2017196b; backdrop-filter: blur(10px); }
.vd-arrival .lx-season-switch button { color: #fff5e3; }
.vd-arrival .lx-season-switch button[aria-pressed='true'] { background: #f7ead0; color: #39252b; }
body.home .site-header, body.page-template-template-home .site-header { background: linear-gradient(#100d126b,transparent) !important; color: #fff7e5 !important; }
body.home .site-header .main-nav .hd-native-menu > li > a, body.page-template-template-home .site-header .main-nav .hd-native-menu > li > a { color: #fff7e5 !important; }
body.home .site-header .header-book, body.page-template-template-home .site-header .header-book { color: #fff7e5 !important; }
.site-header .header-inner { min-height: 118px; }
/* The residence: one architectural view, one considered editorial insert. */
.vd-prologue { padding-top: 95px; padding-bottom: 120px; }
.vd-prologue-top { display: flex; gap: 90px; align-items: flex-end; padding: 35px 0 65px; }
.vd-prologue-top > div:first-child { flex: 1; }
.vd-prologue-top h2 { font-size: 81px; max-width: 780px; }
.vd-prologue-note { width: 290px; flex-shrink: 0; }
.vd-monogram { display: block; font: 400 92px/.85 var(--serif); letter-spacing: -18px; color: var(--lx-accent); margin-bottom: 40px; }
.vd-monogram > span { font-style: italic; position: relative; top: 12px; }
.vd-prologue-note p { font-size: 15px; line-height: 27px; }
.vd-residence { position: relative; padding: 0 0 95px 145px; }
.vd-residence-photo { height: 690px; }
.vd-residence-card { position: absolute; bottom: 0; left: 0; width: 450px; background: var(--lx-deep); color: #fff1da; padding: 52px 48px; box-shadow: 14px 14px 0 var(--lx-paper); }
.vd-residence-card::before { content: ''; position: absolute; inset: 13px; border: 1px solid #cfb57a55; pointer-events: none; }
.vd-residence-card > * { position: relative; }
.vd-residence-card > p { font: 400 29px/35px var(--serif); color: #f8eddb; }
.vd-residence-card .vd-small { font: 400 15px/27px var(--sans); color: #dccfbe; }
.vd-card-rule { width: 60px; height: 1px; background: var(--vd-brass); margin: 27px 0; }
.vd-residence-card .vd-kicker { color: var(--vd-brass); }
.vd-residence-card .vd-text-link { margin-top: 20px; }
.vd-residence-caption { display: block; text-align: right; padding: 22px 0; color: var(--lx-accent); font: italic 24px var(--serif); }
/* Property theatre: consistent framing instead of scattered photographs. */
.vd-property { padding-top: 90px; background: var(--lx-soft); }
.vd-property-theatre { margin: 0 30px; }
.vd-property-stage { height: 650px; position: relative; overflow: hidden; background: var(--lx-deep); }
.vd-property-stage > figure, .vd-experience-visual > figure { position: absolute; inset: 0; opacity: 0; visibility: hidden; transition: opacity 420ms,visibility 420ms; }
.vd-property-stage > figure.is-active, .vd-experience-visual > figure.is-active { opacity: 1; visibility: visible; }
.vd-property-strip { display: flex; gap: 35px; align-items: center; justify-content: space-between; padding: 28px 35px; color: #f8edda; background: var(--lx-deep); }
.vd-property-brand { font: 400 25px var(--serif); letter-spacing: 1px; }
.vd-property-brand em { display: block; font: 400 15px var(--sans); margin-top: 9px; letter-spacing: 2px; }
.vd-property-index { display: flex; align-items: center; gap: 15px; }
.vd-property-index button { background: none; color: inherit; border: 0; border-bottom: 1px solid transparent; padding: 12px 8px; font: 400 21px var(--serif); opacity: .55; cursor: pointer; }
.vd-property-index button[aria-pressed='true'] { opacity: 1; border-color: var(--vd-brass); }
/* Room salon. */
.vd-rooms { background: var(--lx-deep); color: #f6ead4; padding: 110px 0; }
.vd-rooms .vd-chapter, .vd-rooms .vd-chapter > span:first-child { color: var(--vd-brass); }
.vd-rooms .vd-section-heading > p { color: #d7c7b7; }
.vd-suite { display: flex; min-height: 620px; }
.vd-suite[hidden] { display: none; }
.vd-suite-photo { position: relative; width: 64%; overflow: hidden; }
.vd-suite-photo img { width: 100%; height: 100%; object-fit: cover; }
.vd-suite-number { position: absolute; top: 22px; left: 28px; font: 400 90px/1 var(--serif); color: #fff5e4; text-shadow: 0 2px 15px #0004; }
.vd-suite-details { width: 36%; background: var(--lx-paper); color: var(--lx-ink); padding: 45px 40px; display: flex; flex-direction: column; align-items: flex-start; }
.vd-suite-details .vd-kicker { color: var(--lx-accent); font-size: 15px; }
.vd-suite-details h3 { font-size: 46px; line-height: 1.01; margin-bottom: 20px; }
.vd-suite-area { font: italic 25px var(--serif); margin-bottom: 25px; }
.vd-suite-details p { font-size: 15px; line-height: 27px; margin-bottom: 30px; }
.vd-suite-bottom { display: flex; align-items: center; justify-content: space-between; gap: 30px; width: 100%; margin-top: auto; padding-top: 20px; border-top: 1px solid var(--lx-line); font-size: 15px; }
.vd-suite-bottom strong { display: block; font: 400 34px var(--serif); margin-top: 5px; }
.vd-suite-bottom .vd-round-link { width: 52px; height: 52px; }
.vd-suite-details > .vd-text-link { margin-top: 16px; }
.vd-suite-tabs { display: flex; margin-top: 32px; }
.vd-suite-tabs button { display: flex; align-items: center; gap: 20px; flex: 1; border: 0; border-top: 1px solid #ddc9a740; padding: 24px 20px 10px; background: transparent; color: #dbcdbd; cursor: pointer; text-align: left; font: 400 25px/29px var(--serif); }
.vd-suite-tabs button > span:first-child { font: 400 15px var(--sans); color: var(--vd-brass); }
.vd-suite-tabs button > span:last-child { margin-left: auto; font-size: 27px; }
.vd-suite-tabs button[aria-selected='true'] { border-top-color: var(--vd-brass); color: #fff7e7; }
.vd-fallback-rooms { display: flex; gap: 30px; }
.vd-fallback-rooms a { width: 33%; }
/* Experiences: a stable gallery stage and a precise index. */
.vd-experiences { padding-block: 110px; }
.vd-experience-layout { display: flex; gap: 75px; align-items: stretch; }
.vd-experience-visual { position: relative; width: 53%; min-height: 665px; background: var(--lx-soft); }
.vd-experience-visual figure > img { width: 100%; height: 100%; object-fit: cover; }
.vd-experience-visual figcaption { position: absolute; bottom: 0; left: 0; right: 0; padding: 55px 25px 25px; color: #fff5e6; font-size: 15px; letter-spacing: 2px; background: linear-gradient(transparent,#170e18b0); }
.vd-experience-list { flex: 1; align-self: center; }
.vd-experience-row { border-top: 1px solid var(--lx-line); }
.vd-experience-row:last-child { border-bottom: 1px solid var(--lx-line); }
.vd-experience-row h3 button { display: flex; align-items: center; gap: 20px; padding: 25px 0; width: 100%; color: var(--lx-ink); font: 400 32px/1.08 var(--serif); background: transparent; border: 0; text-align: left; cursor: pointer; }
.vd-experience-row h3 button > span { font: 400 15px var(--sans); color: var(--lx-accent); }
.vd-experience-row button i { position: relative; width: 17px; height: 17px; margin-left: auto; flex-shrink: 0; }
.vd-experience-row button i::before, .vd-experience-row button i::after { content: ''; width: 17px; height: 1px; background: currentColor; position: absolute; left: 0; top: 8px; }
.vd-experience-row button i::after { transform: rotate(90deg); transition: transform 300ms; }
.vd-experience-row.is-active button i::after { transform: rotate(0); }
.vd-experience-row > div { padding: 0 0 30px 39px; }
.vd-experience-row > div[hidden] { display: none; }
.vd-experience-row .vd-text-link { margin-top: 15px; }
/* Dining is one composed spread with a close view of the table. */
.vd-dining { background: var(--lx-soft); padding-top: 90px; }
.vd-dining .vd-section-heading h2 { max-width: 690px; }
.vd-dining-table { position: relative; padding: 0 0 95px; margin-right: 56px; }
.vd-dining-room { width: 82%; height: 600px; }
.vd-dining-plate { position: absolute; right: 0; bottom: 0; width: 31%; height: 430px; border: 12px solid var(--lx-soft); border-bottom: 0; overflow: visible !important; }
.vd-dining-plate .lx-season-photo { height: calc(100% - 45px); }
.vd-dining-plate figcaption { padding: 15px 0; color: var(--lx-ink); font: italic 23px var(--serif); text-align: center; }
.vd-breakfast { display: flex; gap: 50px; align-items: flex-start; padding: 60px 0 85px; border-top: 1px solid var(--lx-line); }
.vd-breakfast .vd-kicker { width: 24%; margin-bottom: 0; }
.vd-breakfast h3 { flex: 1; font-size: 42px; }
.vd-breakfast p { width: 40%; }
.vd-evenings { position: relative; height: 750px; color: #fff1dc; isolation: isolate; }
.vd-evenings > figure, .vd-evenings-veil { position: absolute; inset: 0; }
.vd-evenings-veil { background: linear-gradient(90deg,#171018ba,#17101826 70%),linear-gradient(0deg,#171018c9,transparent 75%); }
.vd-evenings-copy { position: relative; height: 100%; display: flex; flex-direction: column; justify-content: flex-end; padding-block: 75px; }
.vd-evenings-copy h2 { font-size: 92px; max-width: 880px; }
.vd-evenings-copy h2 em { display: block; font-weight: 400; }
.vd-evenings-copy > div { max-width: 430px; align-self: flex-end; margin-top: -15px; }
.vd-evenings-copy p { color: #efe1cd; }
.vd-evenings-copy .vd-text-link { margin-top: 20px; }
/* The archive spread. */
.vd-heritage { padding-block: 110px; }
.vd-heritage-spread { display: flex; flex-wrap: wrap; border: 1px solid var(--lx-line); position: relative; }
.vd-heritage-left { width: 50%; padding: 60px; }
.vd-heritage-left .vd-monogram { font-size: 67px; letter-spacing: -12px; margin-bottom: 35px; }
.vd-heritage-left h2 { font-size: 65px; margin-bottom: 28px; }
.vd-heritage-left p + p { margin-top: 20px; }
.vd-heritage-left .vd-text-link { margin-top: 20px; }
.vd-heritage-spread > figure { width: 50%; }
.vd-philosophy { width: 100%; padding: 55px 60px; border-top: 1px solid var(--lx-line); display: flex; flex-wrap: wrap; gap: 25px 65px; }
.vd-philosophy .vd-kicker { width: 100%; margin: 0; }
.vd-philosophy h3 { width: calc(50% - 33px); font-size: 42px; }
.vd-philosophy blockquote { width: calc(50% - 33px); margin: 0; font: italic 29px/36px var(--serif); color: var(--lx-accent); }
.vd-philosophy p { width: 65%; }
.vd-philosophy .vd-text-link { margin-left: auto; align-self: flex-end; }
/* Photo journal: an architectural rhythm rather than mixed card patterns. */
.vd-journal { background: var(--lx-soft); padding-block: 90px; }
.vd-journal-gallery { display: flex; flex-wrap: wrap; gap: 48px 30px; }
.vd-journal-gallery > a { width: calc(50% - 15px); }
.vd-journal-gallery > a:nth-child(even) { padding-top: 85px; }
.vd-journal-gallery figure { height: 440px; position: relative; }
.vd-journal-gallery img { width: 100%; height: 100%; object-fit: cover; transition: transform 900ms; }
.vd-journal-gallery a:hover img { transform: scale(1.035); }
.vd-journal-zoom { position: absolute; right: 20px; bottom: 20px; width: 52px; height: 52px; border-radius: 50%; background: var(--lx-paper); display: flex; align-items: center; justify-content: center; }
.vd-journal-gallery a > div { display: flex; align-items: baseline; gap: 20px; padding-top: 18px; }
.vd-journal-gallery a > div > span { font-size: 15px; color: var(--lx-accent); }
.vd-journal-gallery a h3 { font-size: 30px; }
.vd-location { padding-block: 110px; }
.vd-location-layout { display: flex; gap: 90px; align-items: stretch; }
.vd-location-layout > div { flex: 1; padding-top: 25px; }
.vd-location h2 { font-size: 65px; margin-bottom: 30px; }
.vd-location-layout > figure { width: 48%; min-height: 630px; }
.vd-travel { display: flex; gap: 35px; margin: 30px 0; padding: 27px 0; border-block: 1px solid var(--lx-line); }
.vd-travel > div { flex: 1; }
.vd-travel strong { display: block; font: 400 47px var(--serif); margin-bottom: 8px; }
.vd-travel span { font-size: 15px; }
.vd-location address { font-style: normal; font-size: 15px; margin-bottom: 20px; }
.vd-invitation { position: relative; min-height: 750px; display: flex; align-items: center; justify-content: center; color: #fff5e3; text-align: center; isolation: isolate; }
.vd-invitation > figure, .vd-invitation-shade { position: absolute; inset: 0; }
.vd-invitation-shade { background: #1a1016a3; }
.vd-invitation-copy { position: relative; width: 100%; max-width: 950px; padding: 90px 35px; }
.vd-invitation-copy h2 { font-size: 108px; }
.vd-invitation-copy p { color: #f5e9d8; max-width: 480px; margin: 28px auto 35px; }
.archive-footer { padding-top: 80px; }
.archive-footer .archive-footer-word { font-size: 102px; letter-spacing: 1px; opacity: .5; }
.vd-motion [data-vd-reveal] { opacity: 0; transform: translateY(25px); transition: opacity 700ms,transform 1100ms cubic-bezier(.2,.7,.1,1); }
.vd-motion [data-vd-reveal].is-seen { opacity: 1; transform: none; }
@keyframes vd-arrival-drift { from { transform: scale(1.035); } to { transform: scale(1); } }
@media(min-width:1600px) {
    .vd-arrival-copy { width: 900px; }
    .vd-arrival h1 { font-size: 155px; }
    .vd-arrival h1 em { font-size: 185px; }
    .vd-property-stage { height: 760px; }
}
@media(max-width:1100px) {
    .vd-home h2 { font-size: 64px; }
    .vd-section-heading { gap: 55px; }
    .vd-section-heading > div, .vd-section-heading > p { width: 310px; }
    .vd-arrival-copy { left: 45px; width: 700px; }
    .vd-arrival h1 { font-size: 122px; }
    .vd-arrival h1 em { font-size: 150px; }
    .vd-prologue-top { gap: 50px; }
    .vd-prologue-top h2 { font-size: 67px; }
    .vd-residence { padding-left: 90px; }
    .vd-residence-card { width: 395px; padding: 42px 35px; }
    .vd-property-brand { font-size: 21px; }
    .vd-property-strip { padding: 25px; gap: 20px; }
    .vd-property-index { gap: 7px; }
    .vd-suite-photo { width: 58%; }
    .vd-suite-details { width: 42%; padding: 35px; }
    .vd-suite-details h3 { font-size: 40px; }
    .vd-suite-tabs button { font-size: 22px; gap: 12px; padding-inline: 12px; }
    .vd-experience-layout { gap: 40px; }
    .vd-experience-row h3 button { font-size: 29px; }
    .vd-heritage-left { padding: 40px; }
    .vd-philosophy { padding: 40px; }
    .vd-philosophy p { width: 55%; }
    .vd-location-layout { gap: 55px; }
    .vd-location h2 { font-size: 57px; }
}
@media(max-width:990px) {
    .vd-wrap { width: calc(100% - 64px); }
    .vd-chapter > span:last-child:not(:nth-child(2)) { max-width: 250px; }
    .vd-chapter { letter-spacing: 0; }
    .vd-arrival-top { inset: 135px 32px auto; }
    .vd-arrival-copy { left: 32px; width: 650px; }
    .vd-arrival-bottom { left: 32px; right: 32px; gap: 20px; }
    .vd-scroll { max-width: 145px; }
    .vd-prologue-top { gap: 40px; }
    .vd-prologue-note { width: 245px; }
    .vd-prologue-top h2 { font-size: 57px; }
    .vd-residence-photo { height: 650px; }
    .vd-property-stage { height: 560px; }
    .vd-property-strip .vd-property-index { display: none; }
    .vd-suite-details { padding: 30px; }
    .vd-suite-details p { line-height: 25px; }
    .vd-experience-visual { width: 47%; }
    .vd-experience-row h3 button { font-size: 26px; }
    .vd-experience-layout { gap: 30px; }
    .vd-dining-table { margin-right: 32px; }
    .vd-dining-room { height: 500px; }
    .vd-dining-plate { width: 34%; height: 350px; }
    .vd-evenings { height: 710px; }
    .vd-evenings-copy h2 { font-size: 73px; }
    .vd-evenings-copy > div { margin-top: 30px; }
    .vd-philosophy { gap: 25px 35px; }
    .vd-philosophy h3, .vd-philosophy blockquote { width: calc(50% - 18px); }
    .vd-journal-gallery figure { height: 370px; }
    .vd-location-layout { gap: 40px; }
    .vd-location h2 { font-size: 53px; }
    .vd-invitation-copy h2 { font-size: 88px; }
    body.menu-is-open .site-header { background: var(--lx-paper) !important; color: var(--lx-ink) !important; }
    body.menu-is-open .site-header .main-nav .hd-native-menu > li > a { color: var(--lx-ink) !important; }
}
@media(max-width:700px) {
    .vd-wrap { width: calc(100% - 40px); }
    .vd-home h2 { font-size: 47px; line-height: 1.03; letter-spacing: -1px; }
    .vd-home h3 { font-size: 34px; }
    .vd-home p { font-size: 15px; line-height: 27px; }
    .vd-kicker { letter-spacing: 1px; margin-bottom: 18px; }
    .vd-chapter { gap: 12px; padding-bottom: 25px; font-size: 15px; }
    .vd-chapter > i { margin: 0; }
    .vd-chapter > span:last-child:not(:nth-child(2)), .vd-chapter > a { display: none; }
    .vd-section-heading { display: block; margin-bottom: 32px; }
    .vd-section-heading > div, .vd-section-heading > p { width: 100%; margin-top: 24px; }
    .vd-controls { gap: 12px; }
    .vd-controls button { width: 40px; height: 40px; }
    .vd-arrival { min-height: 760px; max-height: 950px; }
    .vd-arrival-top { top: 115px; left: 20px; right: 20px; font-size: 15px; }
    .vd-arrival-top span:last-child { display: none; }
    .vd-arrival-copy { left: 20px; width: calc(100% - 40px); top: 45%; padding-right: 0; }
    .vd-arrival-copy .vd-kicker { max-width: 280px; letter-spacing: 1px; }
    .vd-arrival h1 { font-size: 75px; line-height: .91; letter-spacing: -1px; }
    .vd-arrival h1 em { font-size: 110px; margin-left: 0; margin-top: 9px; }
    .vd-arrival-description { gap: 15px; margin-top: 25px; }
    .vd-hairline { width: 30px; }
    .vd-arrival-description p { font-size: 16px; line-height: 25px; }
    .vd-arrival-description .vd-round-link { width: 43px; height: 43px; }
    .vd-arrival-bottom { left: 20px; right: 20px; bottom: 25px; gap: 22px 12px; flex-wrap: wrap; padding-top: 20px; }
    .vd-arrival-season { width: 100%; order: -1; text-align: left; }
    .vd-arrival-bottom .vd-controls { margin-left: auto; }
    .vd-arrival-bottom .vd-controls button { width: 34px; height: 34px; }
    .vd-arrival-bottom .vd-controls span { font-size: 15px; }
    .vd-scroll { font-size: 15px; gap: 10px; max-width: 145px; line-height: 21px; }
    .vd-arrival-veil { background: linear-gradient(90deg,#160d11c7,#1e111352),linear-gradient(0deg,#160e15bd,transparent 50%,#160e1550); }
    .vd-prologue { padding-block: 65px 75px; }
    .vd-prologue-top { display: block; padding: 15px 0 35px; }
    .vd-prologue-top h2 { font-size: 52px; }
    .vd-prologue-note { display: flex; gap: 27px; width: 100%; align-items: flex-start; margin-top: 30px; }
    .vd-prologue-note .vd-monogram { font-size: 60px; letter-spacing: -12px; margin: 8px 0 0; width: 60px; flex-shrink: 0; }
    .vd-prologue-note p { font-size: 15px; line-height: 25px; }
    .vd-residence { padding: 0; }
    .vd-residence-photo { height: 390px; }
    .vd-residence-card { position: relative; width: calc(100% - 20px); margin: -45px auto 0; padding: 40px 30px; box-shadow: none; }
    .vd-residence-card > p { font: 400 26px/32px var(--serif); }
    .vd-residence-card .vd-small { font-size: 15px; }
    .vd-residence-caption { padding: 18px 10px 0; font-size: 21px; }
    .vd-property { padding-top: 65px; }
    .vd-property-theatre { margin: 0; }
    .vd-property-stage { height: 450px; }
    .vd-property-strip { padding: 22px 20px; gap: 20px; }
    .vd-property-brand { font-size: 20px; letter-spacing: 0; }
    .vd-property-brand em { font-size: 15px; letter-spacing: 0; max-width: 140px; line-height: 20px; }
    .vd-property-strip .vd-controls { gap: 8px; }
    .vd-property-strip .vd-controls button { width: 33px; height: 33px; }
    .vd-rooms { padding-block: 70px; }
    .vd-suite { display: flex; flex-direction: column; }
    .vd-suite-photo { width: 100%; height: 350px; }
    .vd-suite-number { font-size: 70px; left: 20px; top: 15px; }
    .vd-suite-details { width: 100%; padding: 30px 26px; }
    .vd-suite-details h3 { font-size: 43px; }
    .vd-suite-area { margin-bottom: 18px; }
    .vd-suite-details p { margin-bottom: 23px; }
    .vd-suite-tabs { overflow-x: auto; margin-top: 20px; }
    .vd-suite-tabs button { flex: 0 0 75%; font-size: 23px; padding: 20px 10px; }
    .vd-experiences { padding-block: 70px; }
    .vd-experience-layout { display: flex; flex-direction: column; gap: 25px; }
    .vd-experience-visual { width: 100%; min-height: 0; height: 400px; }
    .vd-experience-list { width: 100%; }
    .vd-experience-row h3 button { font-size: 28px; padding-block: 23px; }
    .vd-experience-row > div { padding-left: 36px; }
    .vd-dining { padding-top: 65px; }
    .vd-dining-table { margin: 0 20px 0 0; padding-bottom: 100px; }
    .vd-dining-room { width: 94%; height: 410px; }
    .vd-dining-plate { width: 49%; height: 240px; border-width: 7px; }
    .vd-dining-plate figcaption { font-size: 19px; line-height: 21px; }
    .vd-breakfast { flex-wrap: wrap; gap: 18px; padding-block: 35px 55px; }
    .vd-breakfast .vd-kicker { width: 100%; }
    .vd-breakfast h3 { width: 100%; flex: auto; font-size: 37px; }
    .vd-breakfast p { width: 100%; }
    .vd-evenings { height: 690px; }
    .vd-evenings-copy { padding-block: 55px; }
    .vd-evenings-copy h2 { font-size: 57px; }
    .vd-evenings-copy > div { max-width: 100%; align-self: flex-start; margin-top: 28px; }
    .vd-heritage { padding-block: 70px; }
    .vd-heritage-spread { flex-direction: column; }
    .vd-heritage-left { width: 100%; padding: 35px 27px; }
    .vd-heritage-left .vd-monogram { font-size: 55px; }
    .vd-heritage-left h2 { font-size: 53px; }
    .vd-heritage-spread > figure { width: 100%; height: 390px; }
    .vd-philosophy { padding: 35px 27px; gap: 25px; }
    .vd-philosophy h3, .vd-philosophy blockquote, .vd-philosophy p { width: 100%; }
    .vd-philosophy h3 { font-size: 35px; }
    .vd-philosophy blockquote { font-size: 26px; line-height: 32px; }
    .vd-philosophy .vd-text-link { margin-left: 0; }
    .vd-journal { padding-block: 65px; }
    .vd-journal-gallery { gap: 28px 15px; }
    .vd-journal-gallery > a { width: calc(50% - 8px); }
    .vd-journal-gallery > a:nth-child(even) { padding-top: 40px; }
    .vd-journal-gallery figure { height: 250px; }
    .vd-journal-gallery a h3 { font-size: 23px; }
    .vd-journal-gallery a > div { gap: 10px; align-items: flex-start; }
    .vd-journal-zoom { width: 35px; height: 35px; right: 10px; bottom: 10px; }
    .vd-journal-zoom svg { width: 23px; }
    .vd-location { padding-block: 70px; }
    .vd-location-layout { flex-direction: column; gap: 35px; }
    .vd-location-layout > div { padding: 0; }
    .vd-location h2 { font-size: 48px; }
    .vd-location-layout > figure { width: 100%; min-height: 0; height: 420px; }
    .vd-travel { gap: 20px; }
    .vd-travel strong { font-size: 41px; }
    .vd-invitation { min-height: 650px; }
    .vd-invitation-copy { padding-inline: 25px; }
    .vd-invitation-copy h2 { font-size: 61px; }
    .vd-button { gap: 35px; padding: 19px 24px; }
    .archive-footer .archive-footer-word { font-size: 45px; }
}
@media(prefers-reduced-motion:reduce) {
    .vd-motion [data-vd-reveal] { opacity: 1; transform: none; }
    .vd-arrival-image.is-active .lx-season-photo { animation: none; }
}
/* Inner pages are chapters of the same residence. */
.vd-page { background: var(--lx-paper) !important; color: var(--lx-ink) !important; }
.vd-page .vd-page-arrival { position: relative; height: 640px; background: var(--lx-deep); color: #fff5e1; display: flex; align-items: flex-end; isolation: isolate; }
.vd-page-arrival > figure, .vd-page-veil { position: absolute; inset: 0; }
.vd-page-veil { background: linear-gradient(0deg,#160e17d9 0%,#160e1761 55%,#160e172b 100%); }
.vd-page-arrival > .vd-wrap { position: relative; padding-block: 65px; }
.vd-page .vd-page-arrival h1 { font: 400 100px/.96 var(--serif) !important; letter-spacing: -2px; max-width: 1000px; color: #fff7e5; margin: 0; }
.vd-page-arrival .vd-text-link { margin-top: 30px; color: #fff6e5 !important; }
.vd-page-arrival p { color: #f2e5d4 !important; max-width: 620px; margin-top: 25px; }
.vd-room-arrival .vd-text-link { margin-top: 0; margin-bottom: 25px; }
.vd-story-intro { padding-block: 100px 80px; }
.vd-story-photo-pair { display: flex; gap: 35px; align-items: flex-end; }
.vd-story-photo-pair > figure:first-child { width: 65%; height: 600px; }
.vd-story-photo-pair > figure:last-child { flex: 1; height: 400px; }
.vd-story-history { padding-bottom: 100px; }
.vd-story-history-copy { display: flex; align-items: flex-start; gap: 100px; }
.vd-story-history-copy h2 { width: 40%; font-size: 90px !important; }
.vd-story-history-copy > div { flex: 1; }
.vd-story-history-copy p { font: 400 27px/37px var(--serif) !important; }
.vd-story-history-copy .vd-text-link { margin-top: 30px; }
.vd-story-philosophy { background: var(--lx-deep); padding: 95px 0; color: #f5e8d3; }
.vd-story-philosophy h2 { font-size: 80px !important; max-width: 900px; line-height: 1.02 !important; }
.vd-story-philosophy p { max-width: 620px; color: #dfd2bf !important; margin: 35px 0; }
.vd-story-experience { padding-block: 100px 70px; }
.vd-story-panorama { height: 650px; }
.vd-story-experience > .vd-text-link { margin-top: 25px; }
.vd-story-reels { padding-bottom: 90px; }
.vd-reel-track { display: flex; gap: 25px; overflow-x: auto; scroll-snap-type: x mandatory; padding-bottom: 25px; scrollbar-width: thin; }
.vd-reel-track a { flex: 0 0 30%; scroll-snap-align: start; }
.vd-reel-track figure { height: 420px; position: relative; margin-bottom: 17px; }
.vd-reel-track figure > span { position: absolute; right: 20px; bottom: 20px; border-radius: 50%; color: var(--lx-ink); background: var(--lx-paper); width: 45px; height: 45px; display: flex; align-items: center; justify-content: center; }
.vd-story-reels video { width: 100%; max-height: 650px; margin-bottom: 45px; }
.vd-story-cta { padding-block: 80px 100px; border-top: 1px solid var(--lx-line); text-align: center; }
.vd-story-cta h2 { font-size: 90px !important; margin-bottom: 30px; }
.vd-list-intro { padding-block: 90px; text-align: center; max-width: 900px; }
.vd-list-intro h2 { font-size: 70px !important; margin: 20px 0 30px; }
.vd-list-intro p { max-width: 780px; margin: 0 auto; }
.vd-room-entry { border-top: 1px solid var(--lx-line); padding-top: 40px; margin-bottom: 80px; }
.vd-room-entry-photo { height: 600px; position: relative; display: block; overflow: hidden; }
.vd-room-entry-photo img { width: 100%; height: 100%; object-fit: cover; }
.vd-room-entry-photo > span { position: absolute; bottom: 20px; left: 30px; font: 400 120px/1 var(--serif); color: #fff4df; text-shadow: 0 3px 20px #0004; }
.vd-room-entry-copy { display: flex; gap: 55px; padding-top: 35px; }
.vd-room-entry-copy > div:first-child { width: 39%; }
.vd-page .vd-room-entry-copy h2 { font-size: 48px !important; margin: 0 0 18px; }
.vd-room-entry-copy > div:nth-child(2) { flex: 1; }
.vd-room-entry-copy .vd-text-link { margin-top: 20px; }
.vd-room-entry-copy > aside { width: 130px; font-size: 15px; flex-shrink: 0; }
.vd-room-entry-copy > aside > strong { display: block; font: 400 36px var(--serif); margin-top: 7px; margin-bottom: 20px; }
.vd-rituals { background: var(--lx-soft); padding: 90px 0; }
.vd-ritual-list { display: flex; gap: 35px; }
.vd-ritual-list article { flex: 1; min-width: 0; }
.vd-ritual-list figure { height: 370px; margin-bottom: 27px; }
.vd-ritual-list .vd-kicker { margin-bottom: 15px; color: var(--lx-accent); }
.vd-ritual-list h3 { font-size: 35px; margin-bottom: 20px; }
.hr-compare { padding-block: 90px !important; }
.hr-compare-row > a { border-radius: 0 !important; box-shadow: none !important; padding: 30px 25px !important; border: 1px solid var(--lx-line) !important; background: transparent !important; color: var(--lx-ink) !important; }
.hr-enquiry { background: var(--lx-deep) !important; color: #f2e7d2 !important; border: 0 !important; }
.hr-enquiry p { color: #dacbba !important; }
.hr-enquiry .hr-kicker { color: var(--vd-brass) !important; }
.hr-enquiry .hr-enquiry-form { background: var(--lx-paper); color: var(--lx-ink); padding: 35px; }
.hr-enquiry-form .hr-button { margin: 0; }
.hr-room-story { gap: 90px !important; }
.hr-reserve-card { border-top: 3px solid var(--lx-accent) !important; }
.hr-gallery { padding-block: 90px !important; }
.hr-gallery-track { gap: 25px !important; }
.hr-gallery-track > figure { border-radius: 0 !important; box-shadow: none !important; }
.hr-private-view { padding: 75px !important; gap: 65px !important; }
.hr-private-view figure { border-radius: 0 !important; }
.hr-features li { padding: 20px 0 !important; }
.h7-gallery.vd-page .lx-section-head h2 { font-size: 65px !important; }
.h7-gallery.vd-page .lx-seasonal-gallery { padding-top: 90px; }
.h7-gallery.vd-page .lx-gallery-grid { gap: 40px; }
.h7-gallery.vd-page .lx-gallery-grid > figure { width: calc(50% - 20px); }
.h7-gallery.vd-page .lx-gallery-grid > figure:nth-child(5n+1) { width: 100%; }
.h7-gallery.vd-page .lx-gallery-grid button { height: 480px; }
.h7-gallery.vd-page .lx-gallery-grid > figure:nth-child(5n+1) button { height: 650px; }
.h7-gallery .h7-photo button { border-radius: 0; }
.h7-contact.vd-page .h7-contact-body { max-width: 1280px; width: calc(100% - 112px); margin: 0 auto; padding-inline: 0 !important; padding-block: 95px !important; }
.h7-contact.vd-page .h7-contact-form { border: 1px solid var(--lx-line); border-top: 3px solid var(--lx-accent); padding: 50px !important; }
.h7-contact.vd-page .h7-contact-details { display: block; }
.h7-contact.vd-page .h7-contact-tile { padding-block: 25px !important; }
.h7-contact-tile > span { color: var(--lx-accent); font-size: 15px; }
.h7-contact-tile > a { font-size: 25px; font-family: var(--serif) !important; }
.h7-contact.vd-page .h7-directions { gap: 75px; }
.hd-message-page { background: var(--lx-paper) !important; color: var(--lx-ink) !important; padding-top: 60px !important; }
.hd-message-page h1 { font-size: 85px !important; line-height: .98 !important; }
.hd-message-mark { display: none; }
/* Footer: a generous invitation followed by an uncluttered contact index. */
.vd-footer { background: var(--lx-deep); color: #f1e4cd; padding: 75px 0 25px; }
.vd-footer-invitation { display: flex; align-items: center; justify-content: space-between; gap: 65px; padding-bottom: 50px; border-bottom: 1px solid #e2cba340; }
.vd-footer h2 { font: 400 65px/1 var(--serif); max-width: 700px; margin: 0; }
.vd-footer-invitation .vd-round-link { width: 90px; height: 90px; }
.vd-footer-invitation .vd-kicker { color: var(--vd-brass); }
.vd-footer-columns { display: flex; justify-content: space-between; gap: 100px; padding-block: 50px; }
.vd-footer-brand { flex: 1; }
.vd-footer-brand .wordmark-image { width: 185px !important; max-height: 110px !important; filter: brightness(0) invert(1) !important; margin-bottom: 25px; }
.vd-footer-brand p { font: italic 26px/32px var(--serif); max-width: 280px; margin: 0; color: #e3cfad; }
.vd-footer-nav { width: 180px; display: flex; flex-direction: column; gap: 10px; font-size: 15px; }
.vd-footer-menu { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 12px; }
.vd-footer-contact { width: 350px; display: flex; flex-direction: column; gap: 16px; font-size: 15px; }
.vd-footer-contact > a:first-child, .vd-footer-contact > a:nth-child(2) { font: 400 27px var(--serif); }
.vd-footer-contact address { font-style: normal; color: #d5c6b2; font-size: 15px; line-height: 26px; }
.vd-footer-word { font: 400 113px/1 var(--serif); letter-spacing: 2px; opacity: .36; text-align: center; padding: 15px 0 35px; white-space: nowrap; }
.vd-footer-bottom { display: flex; justify-content: space-between; align-items: center; gap: 30px; border-top: 1px solid #e2cba340; padding-top: 24px; font-size: 15px; }
@media(max-width:1100px) {
    .vd-page .vd-page-arrival h1 { font-size: 85px !important; }
    .vd-page .vd-room-entry-copy h2 { font-size: 43px !important; }
    .vd-room-entry-copy { gap: 35px; }
    .vd-footer-columns { gap: 60px; }
    .vd-footer-word { font-size: 90px; }
}
@media(max-width:990px) {
    .vd-page .vd-page-arrival { height: 570px; }
    .vd-page .vd-page-arrival h1 { font-size: 76px !important; }
    .vd-story-photo-pair > figure:first-child { height: 480px; }
    .vd-story-photo-pair > figure:last-child { height: 320px; }
    .vd-room-entry-photo { height: 490px; }
    .vd-room-entry-copy { flex-wrap: wrap; }
    .vd-room-entry-copy > div:first-child { width: 48%; }
    .vd-room-entry-copy > div:nth-child(2) { width: 45%; flex: auto; }
    .vd-room-entry-copy aside { display: flex; align-items: center; gap: 20px; width: 100%; }
    .vd-room-entry-copy > aside > strong { margin: 0; }
    .vd-room-entry-copy aside .vd-round-link { width: 45px; height: 45px; }
    .vd-ritual-list { gap: 25px; }
    .vd-ritual-list figure { height: 270px; }
    .vd-story-history-copy { gap: 55px; }
    .vd-story-history-copy h2 { font-size: 70px !important; }
    .vd-reel-track a { flex-basis: 43%; }
    .vd-footer-columns { gap: 40px; }
    .vd-footer-contact { width: 280px; }
    .vd-footer-word { font-size: 75px; }
    .h7-contact.vd-page .h7-contact-body { width: calc(100% - 64px); }
}
@media(max-width:700px) {
    .vd-page .vd-page-arrival { height: 540px; }
    .vd-page .vd-page-arrival h1 { font-size: 57px !important; line-height: .99 !important; letter-spacing: -1px; }
    .vd-page-arrival > .vd-wrap { padding-block: 40px; }
    .vd-page-arrival .vd-kicker { letter-spacing: 1px; }
    .vd-page-arrival p { margin-top: 20px; }
    .vd-story-intro { padding-block: 65px 55px; }
    .vd-story-photo-pair { gap: 15px; }
    .vd-story-photo-pair > figure:first-child { width: 62%; height: 330px; }
    .vd-story-photo-pair > figure:last-child { height: 230px; }
    .vd-story-history { padding-bottom: 65px; }
    .vd-story-history-copy { flex-direction: column; gap: 25px; }
    .vd-story-history-copy h2 { width: 100%; font-size: 58px !important; }
    .vd-story-history-copy p { font-size: 24px !important; line-height: 33px !important; }
    .vd-story-philosophy { padding-block: 65px; }
    .vd-story-philosophy h2 { font-size: 49px !important; }
    .vd-story-experience { padding-block: 65px 50px; }
    .vd-story-panorama { height: 390px; }
    .vd-story-reels { padding-bottom: 65px; }
    .vd-reel-track { gap: 18px; }
    .vd-reel-track a { flex-basis: 80%; }
    .vd-reel-track figure { height: 350px; }
    .vd-story-cta { padding-block: 60px 75px; }
    .vd-story-cta h2 { font-size: 58px !important; }
    .vd-list-intro { padding-block: 65px; }
    .vd-list-intro h2 { font-size: 48px !important; }
    .vd-room-entry { padding-top: 25px; margin-bottom: 50px; }
    .vd-room-entry-photo { height: 365px; }
    .vd-room-entry-photo > span { font-size: 85px; left: 20px; }
    .vd-room-entry-copy { flex-direction: column; gap: 25px; padding-top: 25px; }
    .vd-room-entry-copy > div:first-child, .vd-room-entry-copy > div:nth-child(2) { width: 100%; }
    .vd-page .vd-room-entry-copy h2 { font-size: 41px !important; }
    .vd-room-entry-copy aside { gap: 15px; }
    .vd-room-entry-copy aside .vd-round-link { margin-left: auto; }
    .vd-rituals { padding-block: 65px; }
    .vd-ritual-list { flex-direction: column; gap: 40px; }
    .vd-ritual-list figure { height: 360px; margin-bottom: 20px; }
    .vd-ritual-list h3 { margin-bottom: 17px; }
    .hr-compare { padding-block: 60px !important; }
    .hr-enquiry .hr-enquiry-form { padding: 25px; }
    .hr-private-view { padding: 50px 20px !important; gap: 30px !important; }
    .hr-room-story { gap: 35px !important; }
    .h7-gallery.vd-page .lx-section-head h2 { font-size: 45px !important; }
    .h7-gallery.vd-page .lx-seasonal-gallery { padding-top: 65px; }
    .h7-gallery.vd-page .lx-gallery-grid { gap: 22px 14px; }
    .h7-gallery.vd-page .lx-gallery-grid > figure { width: calc(50% - 7px); }
    .h7-gallery.vd-page .lx-gallery-grid button { height: 230px; }
    .h7-gallery.vd-page .lx-gallery-grid > figure:nth-child(5n+1) button { height: 380px; }
    .h7-contact.vd-page .h7-contact-body { width: calc(100% - 40px); padding-block: 60px !important; }
    .h7-contact.vd-page .h7-contact-form { padding: 30px 22px !important; }
    .h7-contact.vd-page .h7-directions { gap: 35px; }
    .hd-message-page h1 { font-size: 55px !important; }
    .vd-footer { padding-top: 55px; }
    .vd-footer h2 { font-size: 43px; }
    .vd-footer-invitation { gap: 25px; padding-bottom: 35px; }
    .vd-footer-invitation .vd-round-link { width: 55px; height: 55px; }
    .vd-footer-columns { flex-wrap: wrap; gap: 35px 25px; padding-block: 35px; }
    .vd-footer-brand { width: 100%; flex: auto; }
    .vd-footer-brand .wordmark-image { width: 145px !important; }
    .vd-footer-brand p { max-width: 100%; font-size: 23px; }
    .vd-footer-nav { width: calc(40% - 13px); }
    .vd-footer-contact { width: calc(60% - 13px); }
    .vd-footer-contact > a:first-child, .vd-footer-contact > a:nth-child(2) { font-size: 21px; overflow-wrap: anywhere; }
    .vd-footer-word { font-size: 38px; white-space: normal; letter-spacing: 0; padding-bottom: 30px; }
    .vd-footer-bottom { gap: 20px; flex-wrap: wrap; }
}
@media(max-width:700px) {
    .site-header .header-inner { min-height: 90px; }
    .vd-experience-visual { position: sticky; top: 0; z-index: 2; height: 320px; }
}
@media(max-width:380px) {
    .vd-arrival h1 { font-size: 67px; }
    .vd-arrival h1 em { font-size: 100px; }
    .vd-arrival-description { gap: 12px; }
    .vd-hairline { width: 23px; }
}
.vd-page { padding-top: 0 !important; }
