/* ==== ported from V2 by scripts/v5/v2-port (prune-css.cjs, port-css.cjs): re-run the port rather than editing above the end marker ==== */
/* ==== v2 sheet 9 of https://bhhl.lettiva.com/holly-tree-house/the-area: <style> /* Chapter ordinal — large Roman numeral above the eyebrow.  ==== */
.hero-16-chapter-index { font-family: var(--font-display); font-weight: 300; font-size: var(--type-h1); line-height: 1; color: var(--accent); margin-bottom: var(--space-6); font-variant-numeric: oldstyle-nums; }
/* ==== v2 sheet 10 of https://bhhl.lettiva.com/holly-tree-house/the-area: <style> .welcome-threshold-section { container-type: inline-size; }  ==== */
.welcome-threshold-section { container-type: inline-size; }
.welcome-threshold-section { padding-bottom: clamp(2.5rem, 5vw, 4.5rem); }
.welcome-threshold-section .wt { max-width: none; margin: 0px; }
.welcome-threshold-section .wt-bodywrap { max-width: 1400px; margin: 0px auto; padding-inline: var(--section-pad-x); }
.welcome-threshold-section .wt-eyebrow { margin-bottom: var(--space-5); }
.welcome-threshold-section .wt-heading { max-width: 16ch; }
.welcome-threshold-section .wt-prose { max-width: 58ch; margin-top: var(--space-8); }
.welcome-threshold-section .wt-lead { color: var(--foreground); }
.welcome-threshold-section .wt-body { margin-top: 0.9em; }
.welcome-threshold-section .wt-pullline { position: relative; font-family: var(--font-display); font-style: italic; font-weight: 300; font-size: var(--type-pull-quote); line-height: var(--lh-tight); color: var(--accent); margin: var(--space-8) 0; padding-left: 1.5em; max-width: 24ch; text-wrap: balance; }
.welcome-threshold-section .wt-pullline::before { content: "“"; position: absolute; top: -0.06em; left: 0px; font-family: var(--font-display); font-style: italic; font-weight: 300; font-size: 2.6em; line-height: 0.82; color: var(--accent); opacity: 0.34; letter-spacing: -0.04em; pointer-events: none; user-select: none; }
.welcome-threshold-section .wt-close { max-width: 58ch; margin-top: var(--space-10); padding-top: var(--space-5); border-top: 1px solid color-mix(in srgb, var(--foreground) 15%, transparent); }
.welcome-threshold-section .wt-fig { margin: var(--space-12) 0 0; position: relative; }
.welcome-threshold-section .wt-fig .fig-plate { border-left: 0px; border-right: 0px; }
.welcome-threshold-section .wt-fig .fig-plate img { width: 100%; aspect-ratio: 12 / 5; object-fit: cover; display: block; height: auto !important; }
.welcome-threshold-section .wt-figcap { max-width: 1400px; margin: var(--space-3) auto 0; padding-inline: var(--section-pad-x); }
@container (max-width: 720px) {
.welcome-threshold-section .wt-fig .fig-plate img { aspect-ratio: 4 / 3; }
}
/* ==== v2 sheet 11 of https://bhhl.lettiva.com/holly-tree-house/the-area: <style> .content-section-2 { container-type: inline-size; } /* ──  ==== */
.content-section-2 { container-type: inline-size; }
.content-section-2 .cs2-head { max-width: 55ch; margin-bottom: var(--space-12); }
.content-section-2 .cs2-head .cs2-eyebrow { margin-bottom: var(--space-5); }
.content-section-2 .cs2-head .cs2-sub { margin-top: var(--space-5); color: var(--muted-foreground-1); max-width: 52ch; }
.content-section-2.cs2-v-centered .cs2-head { max-width: none; text-align: center; display: flex; flex-direction: column; align-items: center; margin-bottom: var(--space-16); }
.content-section-2.cs2-v-centered .cs2-heading { max-width: 24ch; margin-inline: auto; }
.content-section-2.cs2-v-centered .cs2-sub { margin-left: auto; margin-right: auto; max-width: 48ch; }
.content-section-2.cs2-v-centered .cs2-ornament { width: 36px; height: 1px; border: 0px; margin: var(--space-6) auto 0; background: color-mix(in srgb, var(--foreground) 30%, transparent); }
.content-section-2 .cs2-ornament { display: none; }
.content-section-2.cs2-v-centered .cs2-ornament { display: block; }
@container (max-width: 720px) {
.content-section-2 .cs2-head { margin-bottom: var(--space-8); }
.content-section-2.cs2-v-centered .cs2-head { margin-bottom: var(--space-10); }
}
/* ==== v2 sheet 12 of https://bhhl.lettiva.com/holly-tree-house/the-area: <style> .content-section-2 { container-type: inline-size; } /* ──  ==== */
.content-section-2 { container-type: inline-size; }
.content-section-2 .cs2-head { max-width: 55ch; margin-bottom: var(--space-12); }
.content-section-2 .cs2-head .cs2-eyebrow { margin-bottom: var(--space-5); }
.content-section-2 .cs2-head .cs2-sub { margin-top: var(--space-5); color: var(--muted-foreground-1); max-width: 52ch; }
.content-section-2.cs2-v-centered .cs2-head { max-width: none; text-align: center; display: flex; flex-direction: column; align-items: center; margin-bottom: var(--space-16); }
.content-section-2.cs2-v-centered .cs2-heading { max-width: 24ch; margin-inline: auto; }
.content-section-2.cs2-v-centered .cs2-sub { margin-left: auto; margin-right: auto; max-width: 48ch; }
.content-section-2.cs2-v-centered .cs2-ornament { width: 36px; height: 1px; border: 0px; margin: var(--space-6) auto 0; background: color-mix(in srgb, var(--foreground) 30%, transparent); }
.content-section-2 .cs2-ornament { display: none; }
.content-section-2.cs2-v-centered .cs2-ornament { display: block; }
@container (max-width: 720px) {
.content-section-2 .cs2-head { margin-bottom: var(--space-8); }
.content-section-2.cs2-v-centered .cs2-head { margin-bottom: var(--space-10); }
}
/* ==== v2 sheet 13 of https://bhhl.lettiva.com/holly-tree-house/the-area: <style> .content-section-2 { container-type: inline-size; } /* ──  ==== */
.content-section-2 { container-type: inline-size; }
.content-section-2 .cs2-head { max-width: 55ch; margin-bottom: var(--space-12); }
.content-section-2 .cs2-head .cs2-eyebrow { margin-bottom: var(--space-5); }
.content-section-2 .cs2-head .cs2-sub { margin-top: var(--space-5); color: var(--muted-foreground-1); max-width: 52ch; }
.content-section-2.cs2-v-centered .cs2-head { max-width: none; text-align: center; display: flex; flex-direction: column; align-items: center; margin-bottom: var(--space-16); }
.content-section-2.cs2-v-centered .cs2-heading { max-width: 24ch; margin-inline: auto; }
.content-section-2.cs2-v-centered .cs2-sub { margin-left: auto; margin-right: auto; max-width: 48ch; }
.content-section-2.cs2-v-centered .cs2-ornament { width: 36px; height: 1px; border: 0px; margin: var(--space-6) auto 0; background: color-mix(in srgb, var(--foreground) 30%, transparent); }
.content-section-2 .cs2-ornament { display: none; }
.content-section-2.cs2-v-centered .cs2-ornament { display: block; }
@container (max-width: 720px) {
.content-section-2 .cs2-head { margin-bottom: var(--space-8); }
.content-section-2.cs2-v-centered .cs2-head { margin-bottom: var(--space-10); }
}
/* ==== v2 sheet 14 of https://bhhl.lettiva.com/holly-tree-house/the-area: <style> .cta-ledger-section { container-type: inline-size; } .cta-l ==== */
.cta-ledger-section { container-type: inline-size; }
.cta-ledger-section .ctl { max-width: 880px; margin: 0px auto; }
.cta-ledger-section .ctl-rule { display: flex; align-items: baseline; justify-content: space-between; gap: var(--space-6); flex-wrap: wrap; padding-top: var(--space-5); margin-bottom: var(--space-10); border-top: 1px solid color-mix(in srgb, var(--foreground) 15%, transparent); }
.cta-ledger-section .ctl-eyebrow { margin-bottom: var(--space-6); }
.cta-ledger-section .ctl-heading { max-width: 16ch; }
.cta-ledger-section .ctl-lead { margin-top: var(--space-5); max-width: 44ch; color: var(--muted-foreground-1); }
.cta-ledger-section .ctl-facts { display: grid; grid-auto-flow: column; grid-auto-columns: 1fr; margin-top: var(--space-10); border-top: 1px solid color-mix(in srgb, var(--foreground) 15%, transparent); border-bottom: 1px solid color-mix(in srgb, var(--foreground) 15%, transparent); }
.cta-ledger-section .ctl-fact { padding: var(--space-5) var(--space-6) var(--space-5) 0; display: flex; flex-direction: column; gap: var(--space-2); }
.cta-ledger-section .ctl-fact + .ctl-fact { padding-left: var(--space-6); border-left: 1px solid color-mix(in srgb, var(--foreground) 12%, transparent); }
.cta-ledger-section .ctl-fact-value { font-family: var(--font-display); font-weight: 300; font-size: clamp(24px, 3vw, 32px); line-height: 1.1; color: var(--foreground); font-feature-settings: "onum"; }
.cta-ledger-section .ctl-fact-label { font-family: var(--font-mono); font-size: 10.5px; letter-spacing: 0.18em; text-transform: uppercase; color: var(--muted-foreground-2); }
.cta-ledger-section .ctl-action { margin-top: var(--space-10); display: flex; align-items: baseline; gap: var(--space-6); flex-wrap: wrap; }
.cta-ledger-section .ctl-btn { display: inline-flex; align-items: center; gap: 10px; background: var(--primary); color: var(--primary-foreground); font-size: var(--type-small); font-weight: 500; border-radius: 999px; padding: 16px 40px; text-decoration: none; transition: background-color 300ms; }
.cta-ledger-section .ctl-btn:hover { background: var(--primary-hover); }
.cta-ledger-section .ctl-btn svg { transition: transform 300ms; }
.cta-ledger-section .ctl-btn:hover svg { transform: translateX(2px); }
.cta-ledger-section .ctl-caption { opacity: 0.7; }
@container (max-width: 720px) {
.cta-ledger-section .ctl-rule { margin-bottom: var(--space-8); }
.cta-ledger-section .ctl-facts { grid-auto-flow: row; grid-template-columns: 1fr 1fr; }
.cta-ledger-section .ctl-fact + .ctl-fact { padding-left: 0px; border-left: 0px; }
.cta-ledger-section .ctl-fact:nth-child(2n) { padding-left: var(--space-6); border-left: 1px solid color-mix(in srgb, var(--foreground) 12%, transparent); }
.cta-ledger-section .ctl-fact:nth-child(n+3) { border-top: 1px solid color-mix(in srgb, var(--foreground) 12%, transparent); }
}
/* ==== v2 sheet 15 of https://bhhl.lettiva.com/holly-tree-house/the-area: <style> /* Atmospheric CSS * / @layer atmospheric { /* ══════════════ ==== */
@layer atmospheric {
[data-section="arrival"] figure { box-shadow: rgba(0, 0, 0, 0.06) 0px 4px 16px, rgba(0, 78, 55, 0.11) 0px 18px 50px, rgba(0, 0, 0, 0.06) 0px 55px 100px; transition: box-shadow 0.5s; }
[data-section="arrival"] figure:hover { box-shadow: rgba(0, 0, 0, 0.08) 0px 4px 16px, rgba(0, 78, 55, 0.15) 0px 24px 60px, rgba(0, 0, 0, 0.08) 0px 60px 110px; }
[data-section="arrival"] figure img { filter: brightness(1.03) saturate(1.14) contrast(1.02); }
[data-section="out-and-about"] { background: linear-gradient(rgb(250, 247, 240) 0%, rgb(245, 240, 230) 100%); position: relative; }
[data-section="out-and-about"]::before { content: ""; position: absolute; inset: 0px; background-image: radial-gradient(at 23% 17%, rgba(26, 39, 64, 0.02), transparent 38%), radial-gradient(at 78% 73%, rgba(26, 39, 64, 0.024), transparent 42%); pointer-events: none; z-index: 0; }
[data-section="out-and-about"] > * { position: relative; z-index: 1; }
[data-section="after-dark"] { background: radial-gradient(at 30% 20%, rgba(255, 255, 255, 0.04), transparent 40%), radial-gradient(at 80% 70%, rgba(255, 255, 255, 0.03), transparent 45%), linear-gradient(rgb(26, 39, 64) 0%, rgba(26, 39, 64, 0.92) 100%); color: rgb(245, 241, 232); }
[data-section="after-dark"] p, [data-section="after-dark"] li, [data-section="after-dark"] dd { color: rgba(245, 241, 232, 0.86); }
[data-section="local-knowledge"] { background: linear-gradient(rgb(250, 247, 240) 0%, rgb(245, 240, 230) 100%); position: relative; }
[data-section="local-knowledge"]::before { content: ""; position: absolute; inset: 0px; background-image: radial-gradient(at 23% 17%, rgba(26, 39, 64, 0.02), transparent 38%), radial-gradient(at 78% 73%, rgba(26, 39, 64, 0.024), transparent 42%); pointer-events: none; z-index: 0; }
[data-section="local-knowledge"] > * { position: relative; z-index: 1; }
[data-section] a[href="/enquire"], [data-section] a[href="/book"], [data-section] a[href="/contact"], [data-section] a[class*="bg-"] { position: relative; z-index: 10; box-shadow: rgba(0, 0, 0, 0.08) 0px 2px 8px, rgba(0, 0, 0, 0.06) 0px 8px 24px; transition: transform 0.25s, box-shadow 0.25s, background-color 0.25s; }
[data-section] a[href="/enquire"]:hover, [data-section] a[href="/book"]:hover, [data-section] a[href="/contact"]:hover, [data-section] a[class*="bg-"]:hover { transform: translateY(-1px); box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 12px, rgba(0, 0, 0, 0.08) 0px 12px 32px; }
[data-section] p[data-editable$="-eyebrow"] { letter-spacing: 0.16em; }
[data-section="welcome"], [data-section="rates"], [data-section="inventory"], [data-section="logistics"], [data-section="out-and-about"], [data-section="local-knowledge"], [data-section="arrival-details"], [data-section="inside-details"], [data-section="story"], [data-section="sister-houses"] { position: relative; }
[data-section="welcome"]::after, [data-section="rates"]::after, [data-section="inventory"]::after, [data-section="logistics"]::after, [data-section="out-and-about"]::after, [data-section="local-knowledge"]::after, [data-section="arrival-details"]::after, [data-section="inside-details"]::after, [data-section="story"]::after, [data-section="sister-houses"]::after { content: ""; position: absolute; inset: 0px; background: radial-gradient(80% 60% at 8% 0%, rgba(116, 130, 98, 0.05), transparent 60%), linear-gradient(165deg, rgba(178, 108, 72, 0.035) 0%, transparent 45%, rgba(116, 130, 98, 0.04) 100%); pointer-events: none; z-index: 1; }
[data-page]:not([data-page="celebrations"]) [data-section="closer"] { position: relative; background: linear-gradient(rgb(255, 255, 255) 0%, rgb(248, 244, 234) 100%); }
[data-page]:not([data-page="celebrations"]) [data-section="closer"]::after { content: ""; position: absolute; inset: 0px; background: radial-gradient(70% 55% at 50% 110%, rgba(116, 130, 98, 0.06), transparent 65%); pointer-events: none; z-index: 1; }
[data-page="the-area"] [data-section="arrival"] img { filter: saturate(1.08) contrast(1.02); }
[data-page="the-area"] [data-section="after-dark"] { position: relative; color: rgb(238, 240, 233); }
[data-page="the-area"] [data-section="after-dark"] :is(h1, h2, h3, h4, p, span, li, cite, blockquote) { color: rgb(238, 240, 233) !important; }
[data-page="the-area"] [data-section="after-dark"]::after { content: ""; position: absolute; inset: 0px; pointer-events: none; z-index: 1; background-image: radial-gradient(1.5px 1.5px at 12% 26%, rgba(248, 245, 236, 0.9), transparent 60%), radial-gradient(1px 1px at 27% 62%, rgba(248, 245, 236, 0.7), transparent 60%), radial-gradient(2px 2px at 43% 16%, rgba(255, 255, 255, 0.85), transparent 60%), radial-gradient(1px 1px at 57% 46%, rgba(248, 245, 236, 0.6), transparent 60%), radial-gradient(1.5px 1.5px at 70% 30%, rgba(255, 255, 255, 0.8), transparent 60%), radial-gradient(1px 1px at 84% 68%, rgba(248, 245, 236, 0.65), transparent 60%), radial-gradient(2px 2px at 91% 20%, rgba(255, 255, 255, 0.75), transparent 60%), radial-gradient(1px 1px at 7% 76%, rgba(248, 245, 236, 0.55), transparent 60%), radial-gradient(1.5px 1.5px at 63% 82%, rgba(255, 255, 255, 0.6), transparent 60%), radial-gradient(1px 1px at 36% 88%, rgba(248, 245, 236, 0.5), transparent 60%); opacity: 0.6; }
@media (prefers-reduced-motion: no-preference) {
[data-page="the-area"] [data-section="after-dark"].in-view::after { animation: 9s cubic-bezier(0.7, 0, 0.3, 1) 0s infinite alternate none running wye-night-breathe; }
}
@keyframes wye-night-breathe { 
  0% { opacity: 0.42; }
  100% { opacity: 0.95; }
}
}
/* ==== v2 sheet 16 of https://bhhl.lettiva.com/holly-tree-house/the-area: <style> .sticky-booking-widget-floating-mobile { display: none; }  ==== */
.sticky-booking-widget-floating-mobile { display: none; }
@media (max-width: 768px) {
.sticky-booking-widget-floating-desktop { display: none !important; }
.sticky-booking-widget-floating-mobile { display: block; }
body { padding-bottom: calc(76px + env(safe-area-inset-bottom)); }
}
/* ==== end of the ported V2 CSS; the port's own V5 rules follow ==== */

/* ==== The port's own V5 rules for the area page (draft-page.cjs notes: places, map; V2's own rules for classes its pruned sheet dropped) ==== */

/* Places, attractions and dining (V2 filtered one list with a script; here each group is a list of its own, with a row of links to the groups).
   V2 showed the row of kinds only for 2 groups or more; a group's own tiles, "Show all" and its separators come and go with the record. */
.port-place-filter:not(:has(a + a)) { display: none; }
.port-place-group + .port-place-group { margin-top: 3.5rem; }
.port-place-group { scroll-margin-top: 6rem; }
.port-place-spec:not(:has(> span)) { display: none; }
.port-place-spec > span + span::before { content: "·"; display: inline-block; opacity: 0.4; margin-right: 0.625rem; }
.port-place-more:not(:has(.port-place-detail > *)) { display: none; }
.port-places-rest:not(:has(article)) { display: none; }
.port-places-rest:not([open]) .port-places-fewer, .port-places-rest[open] .port-places-all { display: none; }

/* The map frame (V2's PropertyMapWrapper): a fixed 480px frame, 560px from 768px up, inside a 1px border, muted like a printed map.
   The platform sizes the piece by aspect ratio, so it is given V2's height here (its 1px border included in the 482px and 562px). */
.port-map.lv-map { aspect-ratio: auto; height: 482px; }
@media (min-width: 768px) {
.port-map.lv-map { height: 562px; }
}
.port-map.lv-map iframe { filter: saturate(0.45) sepia(0.12) contrast(1.02); }

/* A place's photograph credit and "No photograph" plate: the Tailwind utilities V2's place cards use, which no page of V2's drew today
   (no place carries a credit on record), so the pruned sheet dropped them. Values are V2's own, from _next/static/chunks/0m2gwvgh8ev0l.css, in the same layer. */
@layer utilities {
.inset-x-0 { inset-inline: calc(var(--spacing) * 0); }
.px-2 { padding-inline: calc(var(--spacing) * 2); }
.bg-gradient-to-t { --tw-gradient-position: to top in oklab; background-image: linear-gradient(var(--tw-gradient-stops)); }
.from-black\/45 { --tw-gradient-from: #00000073; }
.text-white\/90 { color: #ffffffe6; }
.tracking-\[0\.28em\] { --tw-tracking: .28em; letter-spacing: .28em; }
.\[\&\:\:-webkit-scrollbar\]\:hidden::-webkit-scrollbar { display: none; }
.\[\&\:\:-webkit-details-marker\]\:hidden::-webkit-details-marker { display: none; }
}

/* Tap targets (a V5 rule: a link or control is at least 44px tall on a phone). V2 drew this page's small links at the height of their
   words: the kinds of place, "More information", a place's Directions and Website, "Show all" and the river link. Below 1024px each is
   44px tall here, its words centred in it; from 1024px up they are V2's own size. */
@media (max-width: 1023.98px) {
.port-place-filter a { min-height: 44px; }
.port-place-more > summary { min-height: 44px; }
.port-place-detail a { min-height: 44px; }
.port-places-rest > summary > span { display: inline-flex; align-items: center; min-height: 44px; }
[data-section="river"] a { min-height: 44px; }
}
.port-dining-count { counter-reset: port-dining; }
.port-dining-count .port-count-hit { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
.port-dining-count .port-count-hit > * { counter-increment: port-dining; }
.port-dining-n::before { content: counter(port-dining); }
.port-dining-count:not(:has(.port-count-hit)) { display: none; }
.port-attr-count { counter-reset: port-attr; }
.port-attr-count .port-count-hit { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
.port-attr-count .port-count-hit > * { counter-increment: port-attr; }
.port-attr-n::before { content: counter(port-attr); }
.port-attr-count:not(:has(.port-count-hit)) { display: none; }
.port-hp-signals:not(:has(> *)) { display: none; }
.port-count-row:not(:has(.port-count-hit)) { display: none; }
.port-eyebrow-area { letter-spacing: 0.16em; }
@media (min-width: 48rem) { .md\:pt-8 { padding-top: calc(var(--spacing, 0.25rem) * 8); } }
