.statement-block { padding-block: clamp(2.8rem, 6vw, 6rem) var(--section-space); border-bottom: var(--block-rule) solid var(--ink); }
.statement-block__grid { display: grid; grid-template-columns: minmax(0, 1.12fr) minmax(0, .88fr); align-items: start; gap: clamp(2rem, 5vw, 5rem); }
.statement-block__grid > * { min-width: 0; }
.statement-block__copy { padding-top: var(--space-4); }
.statement-block h1 { max-width: 10.5ch; margin-bottom: var(--space-6); font-size: clamp(2.7rem, 6.8vw, 7.2rem); line-height: .98; }
.statement-block__location { display: flex; flex-wrap: wrap; gap: .6rem 1.5rem; margin-bottom: var(--space-5); padding-block: .7rem; border-top: var(--rule); border-bottom: var(--rule); font-family: var(--mono); font-size: .7rem; line-height: 1.6; letter-spacing: .07em; text-transform: uppercase; }
.statement-block__intro { max-width: 35rem; font-size: var(--body-lg); }
.statement-block__actions { display: flex; flex-wrap: wrap; gap: .8rem 1.4rem; margin-top: var(--space-6); }
.statement-block__media { margin: 0; align-self: stretch; }
.statement-block__media .media-frame { aspect-ratio: 4 / 5; }
.statement-block__media img { width: 100%; height: 100%; object-fit: cover; object-position: 55% center; }
.statement-block__media figcaption { margin-top: .8rem; max-width: 38rem; padding: .55rem .75rem; background: var(--ink); color: var(--paper); font-family: var(--mono); font-size: .67rem; line-height: 1.6; }
.photo-caption { position: absolute; inset: auto 0 0; margin: 0; padding: 1rem 1.2rem; background: var(--ink); color: var(--paper); font-family: var(--mono); font-size: .7rem; line-height: 1.65; overflow-wrap: anywhere; }
@supports (backdrop-filter: blur(4px)) { .photo-caption { background: rgba(32,32,29,.94); backdrop-filter: blur(4px); } }
.service-boundary { background: var(--paper); color: var(--ink); max-width: 44rem; margin-block: var(--space-5) 0; padding: 1.2rem 0 1.2rem 1.2rem; border-left: 3px solid var(--accent); font-size: .92rem; line-height: 1.65; }
.service-boundary p:last-child { margin-bottom: 0; }
.service-boundary strong { display: block; margin-bottom: .4rem; color: var(--ink); font-family: var(--display); font-size: 1.35rem; font-weight: 700; }
.block-heading { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr); align-items: end; gap: var(--space-6); padding-bottom: var(--space-7); }
.block-heading > * { min-width: 0; }
.block-heading h2 { margin-bottom: 0; }
.block-heading__aside { max-width: 33rem; }
.block-heading__aside p:last-child { margin-bottom: 0; }
.section-index { display: block; width: fit-content; margin-bottom: var(--space-5); padding-block: .45rem; border-top: 2px solid var(--accent); font-family: var(--mono); font-size: .68rem; font-weight: 600; line-height: 1.6; letter-spacing: .1em; text-transform: uppercase; }
.sessions-block { padding-block: var(--section-space); background: var(--paper-deep); border-bottom: var(--block-rule) solid var(--ink); }
.session-details { margin-top: var(--space-8); }
.session-detail { display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); gap: clamp(2rem, 6vw, 6rem); padding-block: var(--space-7); border-top: 1px solid var(--ink); scroll-margin-top: 2rem; }
.session-detail > * { min-width: 0; }
.session-detail__media { margin: 0; }
.session-detail__media img { width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: cover; }
.session-detail__media figcaption { padding-top: .8rem; font-family: var(--mono); font-size: .66rem; line-height: 1.6; color: var(--muted); }
.session-detail__heading { display: flex; align-items: baseline; gap: 1.2rem; margin-bottom: var(--space-4); }
.session-detail__heading h3 { max-width: 17ch; margin: 0; font-size: clamp(1.9rem, 3.5vw, 3.5rem); }
.session-detail__number { flex: 0 0 auto; font-family: var(--mono); font-size: .73rem; color: var(--accent); }
.session-detail__body p { max-width: 54ch; }
.session-detail__basis { margin-block: var(--space-5); padding-block: 1rem; border-block: var(--rule); font-family: var(--mono); font-size: .72rem; line-height: 1.7; }
.session-detail__basis span { display: block; margin-bottom: .35rem; font-weight: 600; text-transform: uppercase; letter-spacing: .06em; }
.session-detail__limits { font-size: .9rem; color: var(--ink-soft); }
.session-detail__facts { margin: var(--space-5) 0; }
.session-detail__facts > div { display: grid; grid-template-columns: minmax(0, .45fr) minmax(0, 1fr); gap: 1rem; padding-block: .8rem; border-top: var(--rule); }
.session-detail__facts dt { font-family: var(--mono); font-size: .67rem; font-weight: 600; text-transform: uppercase; }
.session-detail__facts dd { margin: 0; font-size: .9rem; }
.ledger-sequence { position: relative; background: var(--coal); color: var(--paper); border-bottom: var(--block-rule) solid var(--ink); }
.ledger-sequence__inner { padding-block: var(--section-space); }
.ledger-sequence__heading { max-width: 46rem; margin-bottom: var(--space-7); }
.ledger-sequence__heading h2 { color: var(--paper); max-width: 15ch; }
.ledger-sequence .section-index { color: var(--paper); }
.ledger-stage { position: relative; border-top: 1px solid var(--line-dark); }
.ledger-progress { height: 2px; width: 100%; background: var(--line-dark); overflow: hidden; }
.ledger-progress__fill { display: block; width: 100%; height: 100%; background: var(--accent); transform: scaleX(var(--ledger-progress, 0)); transform-origin: left center; }
.ledger-stops { position: relative; }
.ledger-stop { display: grid; grid-template-columns: minmax(0, .4fr) minmax(0, 1fr); gap: clamp(1.5rem, 6vw, 7rem); align-items: start; padding-block: clamp(2rem, 5vw, 5rem); border-bottom: 1px solid var(--line-dark); scroll-snap-align: start; }
.ledger-stop > * { min-width: 0; }
.ledger-stop__index { display: flex; align-items: baseline; gap: 1rem; color: var(--paper); font-family: var(--mono); font-size: .72rem; letter-spacing: .08em; text-transform: uppercase; }
.ledger-stop__number { font-family: var(--display); font-size: clamp(2.5rem, 5vw, 5rem); font-weight: 400; line-height: 1; }
.ledger-stop__copy { max-width: 42rem; }
.ledger-stop__copy h3 { color: var(--paper); font-size: clamp(2rem, 4.5vw, 4.4rem); max-width: 16ch; }
.ledger-stop__copy p { max-width: 49ch; font-size: var(--body-lg); }
.ledger-stop__note { margin-top: var(--space-5); padding-top: .9rem; border-top: 1px solid var(--line-dark); font-family: var(--mono); font-size: .7rem; line-height: 1.7; color: #ded8cb; }
.ledger-stop__copy > :last-child { margin-bottom: 0; }
.ledger-sequence__footer { padding-top: var(--space-6); max-width: 48rem; font-size: .9rem; color: #ded8cb; }
.ledger-snap-track { display: none; }
@media (min-width: 1025px) and (min-height: 760px) and (prefers-reduced-motion: no-preference) and (hover: hover) {
    .ledger-sequence.is-motion-ready { position: relative; }
    .ledger-sequence.is-motion-ready .ledger-stage { position: sticky; top: 2rem; min-height: 33rem; }
    .ledger-sequence.is-motion-ready .ledger-stops { display: grid; min-height: 31rem; }
    .ledger-sequence.is-motion-ready .ledger-stop { grid-area: 1 / 1; align-self: start; border-bottom: 0; }
    .ledger-sequence.is-motion-ready .ledger-snap-track { display: block; pointer-events: none; }
    .ledger-sequence.is-motion-ready .ledger-snap-point { min-height: 65vh; scroll-snap-align: start; }
    .ledger-sequence.is-motion-ready .ledger-sequence__footer { padding-top: var(--space-7); }
}
.proof-block { padding-block: var(--section-space); border-bottom: var(--block-rule) solid var(--ink); background: var(--paper); }
.proof-block__grid { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr); align-items: start; gap: clamp(2rem, 7vw, 7rem); }
.proof-block__grid > * { min-width: 0; }
.proof-block__statement { font-family: var(--display); font-size: clamp(1.6rem, 3vw, 3rem); font-weight: 400; line-height: 1.15; max-width: 23ch; }
.proof-block__checklist { padding-block: 1.5rem; border-block: 1px solid var(--ink); }
.proof-block__checklist h3 { font-family: var(--mono); font-size: .73rem; letter-spacing: .08em; line-height: 1.5; text-transform: uppercase; margin-bottom: var(--space-5); max-width: none; }
.proof-block__note { margin-top: var(--space-5); font-size: .9rem; }
.proof-block__media { margin: var(--space-7) 0 0; }
.proof-block__media img { width: 100%; aspect-ratio: 3 / 2; object-fit: cover; }
.home-contact { background: var(--paper-deep); padding-block: var(--section-space); }
.home-contact__grid { display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); align-items: start; gap: clamp(2rem, 6vw, 6rem); }
.home-contact__grid > * { min-width: 0; }
.home-contact__intro h2 { max-width: 12ch; }
.contact-lines { margin-block: var(--space-6); border-top: 1px solid var(--ink); }
.contact-lines > div { padding-block: 1rem; border-bottom: var(--rule); }
.contact-lines dt { margin-bottom: .35rem; font-family: var(--mono); font-size: .67rem; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; }
.contact-lines dd { margin: 0; overflow-wrap: anywhere; }

.contact-lines address { font-style: normal; }
.contact-lines a { display: inline-flex; align-items: center; min-height: 44px; padding-block: .4rem; overflow-wrap: anywhere; }
.page-intro { padding-block: clamp(2.8rem, 6vw, 6.5rem); border-bottom: var(--block-rule) solid var(--ink); }
.page-intro__grid { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr); gap: clamp(2rem, 7vw, 7rem); align-items: end; }
.page-intro__grid > * { min-width: 0; }
.page-intro h1 { margin-bottom: var(--space-5); font-size: clamp(2.7rem, 6.5vw, 6.8rem); max-width: 13ch; }
.page-intro__note { padding-top: var(--space-4); border-top: var(--rule); font-size: .9rem; }
.page-intro__meta { display: flex; flex-wrap: wrap; gap: .5rem 1.5rem; font-family: var(--mono); font-size: .67rem; text-transform: uppercase; letter-spacing: .06em; }
.about-opening { padding-block: var(--section-space); background: var(--paper-deep); }
.about-opening__grid { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr); gap: clamp(2rem, 6vw, 6rem); align-items: center; }
.about-opening__grid > * { min-width: 0; }
.about-opening__media { margin: 0; }
.about-opening__media img { width: 100%; aspect-ratio: 4 / 5; object-fit: cover; }
.about-opening__media figcaption { padding-top: .85rem; font-family: var(--mono); font-size: .68rem; color: var(--muted); }
.about-opening__copy h2 { max-width: 12ch; }
.yard-notes { padding-block: var(--section-space); border-top: var(--block-rule) solid var(--ink); }
.yard-note { display: grid; grid-template-columns: minmax(0, .7fr) minmax(0, 1fr); gap: clamp(1.5rem, 8vw, 8rem); border-top: 1px solid var(--ink); padding-block: var(--space-7); }
.yard-note > * { min-width: 0; }
.yard-note h3 { max-width: 15ch; }
.yard-note__body { max-width: 42rem; }
.yard-note__body > :last-child { margin-bottom: 0; }
.boundary-block { padding-block: var(--section-space); background: var(--coal); color: var(--paper); border-block: var(--block-rule) solid var(--ink); }
.boundary-block h2, .boundary-block h3 { color: var(--paper); }
.boundary-block__grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(2rem, 7vw, 7rem); }
.boundary-block__grid > * { min-width: 0; }
.boundary-block__copy { max-width: 42rem; }
.boundary-block__copy strong { color: var(--paper); }
.boundary-block__copy p:last-child { margin-bottom: 0; }
.faq-block { padding-block: var(--section-space); }
.faq-block__grid { display: grid; grid-template-columns: minmax(0, .65fr) minmax(0, 1.35fr); gap: clamp(2rem, 6vw, 6rem); }
.faq-block__grid > * { min-width: 0; }
.faq-block__intro h2 { max-width: 11ch; }
.faq-block .faq-item__answer { max-width: 65ch; }
.faq-block .faq-item__answer > :last-child { margin-bottom: 0; }
.contact-opening { padding-block: var(--section-space); background: var(--paper-deep); }
.contact-opening__grid { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: clamp(2rem, 6vw, 6rem); align-items: start; }
.contact-opening__grid > * { min-width: 0; }
.contact-opening__details { max-width: 36rem; }
.contact-opening__details h2 { max-width: 13ch; }
.contact-opening__form { min-width: 0; }
.contact-opening__form > h2 { margin-bottom: var(--space-5); font-size: var(--display-md); }
.contact-opening__form .inquiry-form { border-width: 2px 0 0; padding-inline: 0; }
.contact-privacy-note { margin-top: var(--space-4); font-size: .85rem; color: var(--ink-soft); }
.arrival-block { padding-block: var(--section-space); border-top: var(--block-rule) solid var(--ink); }
.arrival-block__grid { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr); gap: clamp(2rem, 6vw, 6rem); align-items: start; }
.arrival-block__grid > * { min-width: 0; }
.arrival-block__media { margin: 0; }
.arrival-block__media img { width: 100%; aspect-ratio: 3 / 2; object-fit: cover; }
.arrival-block__media figcaption { padding-block: .9rem; border-bottom: var(--rule); font-family: var(--mono); font-size: .68rem; line-height: 1.6; }
.arrival-checklist { margin: var(--space-5) 0 0; padding: 0; list-style: none; counter-reset: arrival; }
.arrival-checklist li { display: grid; grid-template-columns: 2rem minmax(0, 1fr); gap: 1rem; padding-block: 1rem; margin: 0; border-top: var(--rule); counter-increment: arrival; }
.arrival-checklist li::before { content: counter(arrival, decimal-leading-zero); padding-top: .15rem; font-family: var(--mono); font-size: .7rem; color: var(--accent); }
.reply-block { padding-block: var(--section-space); background: var(--paper-deep); border-top: var(--block-rule) solid var(--ink); }
.reply-block__grid { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: clamp(2rem, 6vw, 6rem); }
.reply-block__grid > * { min-width: 0; }
.reply-block__copy { max-width: 46rem; }
.legal-intro { padding-block: clamp(3rem, 7vw, 7rem) var(--space-7); border-bottom: var(--block-rule) solid var(--ink); background: var(--paper-deep); }
.legal-intro h1 { max-width: 16ch; font-size: clamp(2.7rem, 6vw, 6.5rem); }
.legal-intro__description { max-width: 48rem; font-size: var(--body-lg); }
.legal-intro__meta { display: flex; flex-wrap: wrap; gap: .6rem 1.8rem; padding-top: var(--space-4); font-family: var(--mono); font-size: .68rem; line-height: 1.6; text-transform: uppercase; }
.legal-intro__actions { display: flex; flex-wrap: wrap; gap: .7rem; margin-top: var(--space-5); }
.privacy-stack { padding-block: var(--space-7) var(--section-space); }
.disclosure { border-bottom: 1px solid var(--ink); scroll-margin-top: 2rem; }
.disclosure:first-of-type { border-top: 1px solid var(--ink); }
.disclosure > summary { display: grid; grid-template-columns: 3rem minmax(0, 1fr) 1.5rem; align-items: baseline; gap: clamp(.8rem, 2vw, 2rem); min-height: 64px; padding: clamp(1.2rem, 2.5vw, 2.2rem) .35rem; cursor: pointer; list-style: none; font-family: var(--display); font-weight: 700; font-size: clamp(1.35rem, 2.5vw, 2.4rem); line-height: 1.15; transition: color 160ms var(--ease-standard), background-color 160ms var(--ease-standard); }
.disclosure > summary::-webkit-details-marker { display: none; }
.disclosure > summary::after { content: '+'; font-family: var(--mono); font-size: 1.15rem; font-weight: 400; justify-self: end; }
.disclosure[open] > summary::after { content: "−"; }
.disclosure > summary:hover { background: var(--paper-deep); color: var(--ink); }
.disclosure > summary:active { background: var(--ink); color: var(--paper); }
.disclosure > summary:focus-visible { outline: var(--focus-ring); outline-offset: 3px; background: var(--paper-deep); }
.disclosure__number { font-family: var(--mono); font-size: .7rem; font-weight: 600; letter-spacing: .06em; color: var(--muted); }
.disclosure > summary:active .disclosure__number { color: var(--paper); }
.disclosure__title { margin: 0; font: inherit; max-width: 38ch; }
.disclosure__body { padding: .5rem clamp(.35rem, 2vw, 2rem) var(--space-7) clamp(.35rem, 6vw, 6rem); }
.disclosure__body > p, .disclosure__body > ul, .disclosure__body > ol { max-width: 74ch; }
.disclosure__body h3 { margin-top: var(--space-6); font-size: clamp(1.4rem, 2.4vw, 2.2rem); max-width: 32ch; }
.disclosure__body > :last-child { margin-bottom: 0; }
.disclosure[open] { background: var(--paper); }
.disclosure:not([open]) > .disclosure__body { display: none; }
.disclosure:target { border-top: 3px solid var(--accent); }
.disclosure__notice { max-width: 48rem; padding: 1.1rem 1.3rem; border-left: 3px solid var(--accent); background: var(--paper-deep); margin-block: var(--space-5); }
.disclosure__notice p:last-child { margin: 0; }
.privacy-tools { display: flex; flex-wrap: wrap; gap: .7rem; margin-bottom: var(--space-6); }
.legal-contact { padding-top: var(--space-5); border-top: var(--rule); margin-top: var(--space-6); }
.legal-contact address { font-style: normal; }
.legal-contact a { overflow-wrap: anywhere; }
.cookies-document { padding-block: var(--space-7) var(--section-space); }
.cookie-tabs { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border: 1px solid var(--ink); margin-bottom: var(--space-7); }
.cookie-tabs [role=tab] { display: flex; align-items: center; justify-content: flex-start; min-width: 0; min-height: 64px; padding: 1rem 1.2rem; border: 0; border-right: var(--rule); background: var(--paper); color: var(--ink); text-align: left; font-family: var(--mono); font-size: .72rem; font-weight: 600; line-height: 1.55; text-transform: uppercase; letter-spacing: .05em; overflow-wrap: anywhere; transition: color 160ms var(--ease-standard), background-color 160ms var(--ease-standard), border-color 160ms var(--ease-standard); }
.cookie-tabs [role=tab]:last-child { border-right: 0; }
.cookie-tabs [role=tab][aria-selected=true] { background: var(--ink); color: var(--paper); border-bottom: 3px solid var(--accent); }
.cookie-tabs [role=tab]:hover { background: var(--paper-deep); color: var(--ink); }
.cookie-tabs [role=tab]:active { background: var(--accent); color: var(--white); }
.cookie-tabs [role=tab]:focus-visible { outline: var(--focus-ring); outline-offset: -5px; }
.cookie-panel { min-width: 0; scroll-margin-top: 2rem; }
.cookie-panel__layout { display: grid; grid-template-columns: minmax(0, .7fr) minmax(0, 1.3fr); gap: clamp(2rem, 6vw, 6rem); }
.cookie-panel__layout > * { min-width: 0; }
.cookie-panel__heading h2 { font-size: clamp(2rem, 4vw, 4rem); max-width: 13ch; }
.cookie-panel__body { max-width: 49rem; }
.cookie-panel__body h3 { margin-top: var(--space-6); font-size: clamp(1.5rem, 2.5vw, 2.3rem); }
.cookie-panel__body > :last-child { margin-bottom: 0; }
.cookie-panel__standfirst { font-size: var(--body-lg); max-width: 48ch; }
.cookie-accordion-toggle { display: none; }

.cookie-state { display: flex; flex-wrap: wrap; gap: 1rem 2rem; align-items: center; padding: var(--space-4) 0; border-block: 1px solid var(--ink); margin-block: var(--space-6); }
.cookie-state__label { font-family: var(--mono); font-size: .7rem; font-weight: 600; text-transform: uppercase; }
.cookie-state__value { font-family: var(--mono); font-size: .76rem; overflow-wrap: anywhere; }
.cookie-actions { display: flex; flex-wrap: wrap; gap: .8rem; margin-top: var(--space-5); }
.cookie-note { border-left: 3px solid var(--accent); padding-left: var(--space-4); margin-block: var(--space-5); font-size: .92rem; }
.storage-key { font-family: var(--mono); font-size: .88em; overflow-wrap: anywhere; }
html:not(.js) .cookie-tabs { display: none; }
html:not(.js) .cookie-panel { display: block !important; margin-bottom: var(--space-8); padding-top: var(--space-6); border-top: 1px solid var(--ink); }
.terms-jump { position: sticky; top: 4rem; z-index: 12; padding-block: .75rem; background: var(--paper); border-bottom: 1px solid var(--ink); }
.terms-jump__list { display: flex; flex-wrap: nowrap; gap: .5rem; overflow-x: auto; overscroll-behavior-inline: contain; scrollbar-width: thin; scrollbar-color: var(--accent) var(--paper-deep); padding: .35rem .25rem .65rem; margin-block: 0; list-style: none; }
.terms-jump__list li { flex: 0 0 auto; margin: 0; max-width: min(17rem, 75vw); }
.terms-jump__link { display: inline-flex; min-height: 44px; align-items: center; padding: .6rem .9rem; border: 1px solid var(--line); background: var(--paper); text-decoration: none; font-family: var(--mono); font-size: .68rem; line-height: 1.45; font-weight: 600; text-transform: uppercase; letter-spacing: .04em; transition: color 160ms var(--ease-standard), background-color 160ms var(--ease-standard), border-color 160ms var(--ease-standard); }
.terms-jump__link:hover { border-color: var(--ink); background: var(--paper-deep); color: var(--ink); }
.terms-jump__link:active { background: var(--ink); color: var(--paper); }
.terms-jump__link:focus-visible { outline: var(--focus-ring); outline-offset: 2px; }
.terms-jump__link[aria-current=true], .terms-jump__link[aria-current=location] { border-color: var(--ink); border-bottom: 3px solid var(--accent); }
.terms-section { padding-block: var(--section-space); border-bottom: var(--block-rule) solid var(--ink); scroll-margin-top: 7rem; }
.terms-section:nth-of-type(even) { background: var(--paper-deep); }
.terms-section__number { display: block; font-family: var(--mono); font-size: .72rem; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; margin-bottom: var(--space-5); }
.terms-section h2 { max-width: 22ch; font-size: clamp(2rem, 4.5vw, 4.8rem); }
.terms-section__standfirst { max-width: 51ch; margin-block: var(--space-5) var(--space-6); font-size: clamp(1.2rem, 2vw, 1.7rem); line-height: 1.5; }
.terms-section__body { max-width: 53rem; }
.terms-section__body > p { max-width: 73ch; }
.terms-section__body h3 { margin-top: var(--space-6); font-size: var(--display-sm); max-width: 32ch; }
.terms-section__body > :last-child { margin-bottom: 0; }
.terms-section:target .terms-section__number { color: var(--accent); }
.terms-section__notice { margin-block: var(--space-6); padding-block: 1.5rem; border-block: 1px solid var(--ink); }
.terms-section__notice p:last-child { margin-bottom: 0; }
.legal-media { padding-block: var(--section-space); }
.legal-media__grid { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, .8fr); gap: clamp(2rem, 6vw, 6rem); align-items: end; }
.legal-media__grid > * { min-width: 0; }
.legal-media figure { margin: 0; }
.legal-media img { width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: cover; }
.legal-media figcaption { padding-top: .8rem; font-family: var(--mono); font-size: .68rem; color: var(--muted); }
.legal-media__copy { max-width: 32rem; padding-bottom: var(--space-5); border-bottom: 1px solid var(--ink); }
.gidifa1 { width: 100%; max-width: 100%; min-width: 0; overflow-x: auto; overscroll-behavior-inline: contain; scrollbar-width: thin; scrollbar-color: var(--accent) var(--paper-deep); margin-block: var(--space-6); }
.gidifa1:focus-visible { outline: var(--focus-ring); outline-offset: 3px; }
.legal-table, .cookie-table, .basis-table, .session-table { width: 100%; border-collapse: collapse; border-spacing: 0; text-align: left; font-size: .88rem; line-height: 1.65; }
.legal-table caption, .cookie-table caption, .basis-table caption, .session-table caption { padding-bottom: 1rem; text-align: left; font-family: var(--display); font-size: 1.45rem; font-weight: 700; line-height: 1.2; }
.legal-table th, .cookie-table th, .basis-table th, .session-table th { padding: 1rem .85rem; border-block: 1px solid var(--ink); vertical-align: top; font-family: var(--mono); font-size: .67rem; font-weight: 600; line-height: 1.6; text-transform: uppercase; letter-spacing: .035em; }
.legal-table td, .cookie-table td, .basis-table td, .session-table td { padding: 1rem .85rem; border-bottom: var(--rule); vertical-align: top; overflow-wrap: anywhere; }
.legal-table thead, .cookie-table thead, .basis-table thead, .session-table thead { background: var(--paper-deep); }
.legal-table th:first-child, .cookie-table th:first-child, .basis-table th:first-child, .session-table th:first-child { padding-left: .3rem; }
.legal-table td:first-child, .cookie-table td:first-child, .basis-table td:first-child, .session-table td:first-child { padding-left: .3rem; }
.cookie-table code, .basis-table code { font-family: var(--mono); font-size: .78rem; white-space: normal; overflow-wrap: anywhere; }
.cookie-table { min-width: 36rem; }
.basis-table { min-width: 34rem; }
.table-note { margin-top: .9rem; font-family: var(--mono); font-size: .67rem; line-height: 1.7; color: var(--muted); }
.signals-list { margin: var(--space-6) 0; border-top: 1px solid var(--ink); }
.signals-list > div { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: 1.5rem; padding-block: 1.1rem; border-bottom: var(--rule); }
.signals-list dt { font-family: var(--mono); font-size: .74rem; overflow-wrap: anywhere; }

.signals-list dd { margin: 0; font-size: .92rem; }
.data-request-steps { counter-reset: request; list-style: none; padding: 0; margin-block: var(--space-5); }
.data-request-steps > li { counter-increment: request; display: grid; grid-template-columns: 2.2rem minmax(0, 1fr); gap: 1rem; padding-block: 1rem; border-top: var(--rule); }
.data-request-steps > li::before { content: counter(request, decimal-leading-zero); font-family: var(--mono); font-size: .72rem; color: var(--accent); }
.accessibility-notice { max-width: 46rem; margin-top: var(--space-5); border-top: 1px solid var(--ink); padding-top: var(--space-5); }
.stock { width: min(44rem, 100%); }
.stock h1 { max-width: 24ch; }
.not-found { padding-block: var(--section-space); min-height: 65vh; border-bottom: var(--block-rule) solid var(--ink); }
.not-found__grid { display: grid; grid-template-columns: minmax(0, .65fr) minmax(0, 1.35fr); gap: clamp(2rem, 6vw, 6rem); align-items: start; }
.not-found__grid > * { min-width: 0; }
.not-found__number { font-family: var(--display); font-size: clamp(5rem, 15vw, 14rem); line-height: .85; font-weight: 400; color: var(--muted); }
.not-found h1 { font-size: clamp(2.6rem, 5vw, 5rem); max-width: 15ch; }
.not-found__actions { display: flex; flex-wrap: wrap; gap: 1rem; margin-block: var(--space-6); }
.not-found__contact { padding-top: var(--space-5); border-top: var(--rule); overflow-wrap: anywhere; }
@media (min-width: 1440px) {
    .statement-block__media { padding-top: var(--space-6); }
    .statement-block__copy { padding-bottom: var(--space-5); }
    .session-detail { padding-block: var(--space-8); }
    .legal-intro__description { margin-top: var(--space-6); }
}
@media (min-width: 1920px) {
    .statement-block__grid { gap: 6rem; }
    .ledger-stop { padding-block: 5rem; }
    .page-intro { padding-block: 7rem; }
}
@media (max-width: 1024px) {
    .statement-block__grid { grid-template-columns: minmax(0, 1fr) minmax(0, .9fr); gap: 2rem; }
    .statement-block h1 { font-size: clamp(2.7rem, 7vw, 5.5rem); }
    .statement-block__media .media-frame { aspect-ratio: 3 / 4; }
    .block-heading { gap: 2rem; }
    .session-detail { gap: 2rem; }
    .cookie-tabs [role=tab] { padding-inline: .8rem; }
    .cookie-panel__layout { grid-template-columns: minmax(0, .65fr) minmax(0, 1.35fr); gap: 2rem; }
    .contact-opening__grid { grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); gap: 2rem; }
    .faq-block__grid { grid-template-columns: minmax(0, .7fr) minmax(0, 1.3fr); gap: 2rem; }
}
@media (max-width: 767px) {
    .statement-block__grid, .block-heading, .session-detail, .proof-block__grid, .home-contact__grid, .page-intro__grid, .about-opening__grid, .yard-note, .boundary-block__grid, .faq-block__grid, .contact-opening__grid, .arrival-block__grid, .reply-block__grid, .cookie-panel__layout, .legal-media__grid { grid-template-columns: minmax(0, 1fr); gap: var(--space-6); }
    .statement-block h1 { max-width: 12ch; font-size: clamp(2.7rem, 10.8vw, 5.2rem); }
    .statement-block__copy { padding-top: 0; }
    .statement-block__media .media-frame { aspect-ratio: 3 / 2; }
    .statement-block__media img { object-position: center; }
    .statement-block__intro { max-width: 43ch; }
    .block-heading { padding-bottom: var(--space-6); }
    .session-detail__media { max-width: 38rem; }
    .session-detail__heading h3 { max-width: 22ch; }
    .session-details { margin-top: var(--space-7); }
    .ledger-stop { grid-template-columns: minmax(0, 1fr); gap: 1.2rem; }
    .ledger-stop__index { align-items: center; }
    .ledger-stop__number { font-size: 2.4rem; }
    .ledger-stop__copy h3 { max-width: 21ch; }
    .ledger-stop__copy p { font-size: 1.03rem; }
    .about-opening__media img { aspect-ratio: 3 / 2; }
    .yard-note { padding-block: var(--space-6); }
    .yard-note h3 { max-width: 24ch; margin-bottom: 0; }
    .boundary-block h2 { max-width: 19ch; }
    .faq-block__intro h2 { max-width: 18ch; }
    .contact-opening__details { max-width: none; }
    .legal-intro h1 { max-width: 15ch; }
    .legal-intro__description { font-size: 1.03rem; }
    .disclosure > summary { grid-template-columns: 1.7rem minmax(0, 1fr) 1rem; gap: .7rem; }
    .disclosure__body { padding: .5rem .3rem var(--space-6); }
    .disclosure__body h3 { max-width: 27ch; }
    .cookie-tabs { display: none; }
    .cookie-panel { border-bottom: 1px solid var(--ink); }
    .cookie-panel:first-of-type { border-top: 1px solid var(--ink); }
    .cookie-accordion-toggle { display: flex; justify-content: space-between; align-items: center; gap: 1rem; width: 100%; min-height: 60px; padding: 1.1rem .3rem; border: 0; background: var(--paper); text-align: left; color: var(--ink); font-family: var(--display); font-size: 1.55rem; font-weight: 700; line-height: 1.2; transition: color 160ms var(--ease-standard), background-color 160ms var(--ease-standard); }
    .cookie-accordion-toggle::after { content: '+'; flex: 0 0 auto; font-family: var(--mono); font-size: 1.1rem; }
    .cookie-accordion-toggle[aria-expanded=true]::after { content: "−"; }
    .cookie-accordion-toggle:hover { background: var(--paper-deep); }
    .cookie-accordion-toggle:active { background: var(--ink); color: var(--paper); }
    .cookie-accordion-toggle:focus-visible { outline: var(--focus-ring); outline-offset: -3px; }
    .cookie-panel__layout { padding-block: var(--space-5) var(--space-7); }
    .cookie-panel__heading h2 { font-size: 2rem; max-width: 20ch; }
    .cookie-panel__body { max-width: none; }
    .terms-jump { padding-block: .35rem; }
    .terms-jump__list { margin-right: calc(-1 * var(--gutter)); padding-right: var(--gutter); }
    .terms-section { scroll-margin-top: 6rem; }
    .terms-section__standfirst { font-size: 1.2rem; }
    .legal-media__copy { max-width: none; }
    .not-found__grid { grid-template-columns: minmax(0, 1fr); gap: 2rem; }
    .not-found__number { font-size: 6rem; }
}
@media (max-width: 414px) {
    .statement-block { padding-top: 2.5rem; }
    .statement-block h1 { font-size: clamp(2.7rem, 11.3vw, 3.5rem); }
    .statement-block__location { font-size: .65rem; }
    .statement-block__actions { align-items: stretch; gap: .7rem; }
    .statement-block__actions > a { flex: 1 1 100%; }
    .photo-caption { position: relative; padding: .8rem; font-size: .64rem; }
    .statement-block__media .media-frame:has(.photo-caption) { aspect-ratio: auto; }
    .statement-block__media .media-frame:has(.photo-caption) img { aspect-ratio: 3 / 2; height: auto; }
    .service-boundary { padding-left: .85rem; font-size: .86rem; }
    .session-detail__heading { gap: .8rem; }
    .session-detail__heading h3 { font-size: 1.9rem; }
    .session-detail__facts > div { grid-template-columns: minmax(0, 1fr); gap: .4rem; }
    .page-intro h1 { font-size: 2.7rem; }
    .legal-intro h1 { font-size: 2.7rem; }
    .disclosure > summary { grid-template-columns: 1.35rem minmax(0, 1fr) .9rem; gap: .5rem; font-size: 1.3rem; }
    .disclosure__number { font-size: .62rem; }
    .disclosure__notice { padding: 1rem .8rem; }
    .privacy-tools > *, .legal-intro__actions > * { flex: 1 1 100%; }
    .signals-list > div { grid-template-columns: minmax(0, 1fr); gap: .4rem; }
    .arrival-checklist li { grid-template-columns: 1.5rem minmax(0, 1fr); gap: .7rem; }
    .cookie-actions > * { flex: 1 1 100%; }
    .terms-jump__link { padding-inline: .7rem; font-size: .64rem; }
    .terms-section h2 { font-size: 2rem; }
    .not-found__actions > * { flex: 1 1 100%; }
}
@media (prefers-reduced-motion: reduce), (hover: none), (max-height: 759px) {
    .ledger-sequence.is-motion-ready .ledger-stage { position: relative; top: auto; min-height: 0; }
    .ledger-sequence.is-motion-ready .ledger-stops { display: block; min-height: 0; }
    .ledger-sequence.is-motion-ready .ledger-stop { position: relative; opacity: 1 !important; visibility: visible !important; transform: none !important; border-bottom: 1px solid var(--line-dark); }
    .ledger-sequence.is-motion-ready .ledger-snap-track { display: none; }
    .ledger-stop { scroll-snap-align: none; }
}
@media (forced-colors: active) {
    .photo-caption, .disclosure__notice, .cookie-tabs [role=tab][aria-selected=true] { border: 1px solid CanvasText; }
    .ledger-progress { border: 1px solid CanvasText; }
    .ledger-progress__fill { background: Highlight; }
    .terms-jump__link[aria-current=location] { border: 3px solid Highlight; }
    .disclosure:target { border-top-color: Highlight; }
}
@media print {
    .statement-block, .sessions-block, .proof-block, .home-contact, .page-intro, .about-opening, .yard-notes, .boundary-block, .contact-opening, .arrival-block, .reply-block, .legal-intro, .terms-section { padding-block: 1.5rem; background: transparent; color: black; border-width: 1px; }
    .ledger-sequence { background: transparent; color: black; }
    .ledger-sequence__inner { padding-block: 1.5rem; }
    .ledger-sequence.is-motion-ready .ledger-stage { position: static; min-height: 0; }
    .ledger-sequence.is-motion-ready .ledger-stops { display: block; min-height: 0; }
    .ledger-sequence.is-motion-ready .ledger-stop { position: static; display: block; opacity: 1 !important; visibility: visible !important; transform: none !important; padding-block: 1rem; }
    .ledger-stop__copy h3, .ledger-sequence__heading h2, .ledger-stop__index, .ledger-stop__note { color: black; }
    .ledger-snap-track, .ledger-progress, .privacy-tools, .legal-intro__actions, .terms-jump, .cookie-tabs, .cookie-accordion-toggle, .cookie-actions, .statement-block__actions { display: none !important; }
    .disclosure { break-inside: avoid; }
    .disclosure > summary { padding-block: 1rem; grid-template-columns: 2rem minmax(0, 1fr); font-size: 1.3rem; }
    .disclosure > summary::after { display: none; }
    .disclosure__body { padding: .5rem 0 1.5rem; }
    .cookie-panel, .cookie-panel[hidden], .cookie-panel__layout[hidden] { display: block !important; }
    .cookie-panel__layout { display: block; padding-block: 1rem; }
    .cookie-panel__heading h2 { max-width: none; font-size: 1.6rem; }
    .terms-section { scroll-margin-top: 0; break-before: auto; }
    .terms-section h2 { font-size: 1.8rem; }
    .terms-section__standfirst { font-size: 1.1rem; }
    .gidifa1 { overflow: visible; }
    .cookie-table, .basis-table { min-width: 0; font-size: .75rem; }
    .legal-table th, .cookie-table th, .basis-table th { padding: .5rem; }
    .legal-table td, .cookie-table td, .basis-table td { padding: .5rem; }
    .legal-media { padding-block: 1rem; }
    .legal-media img { max-height: 15rem; object-fit: contain; }
    .photo-caption { position: static; background: transparent; color: black; }
    .inquiry-form { display: none; }
    .contact-lines a { padding: 0; min-height: 0; }
    .not-found { min-height: 0; }
}
