/* Reserve the scrollbar gutter so feedback and scrolling cannot rewrap the page. */
html:has(.nicolas-venues) { scrollbar-gutter: stable; }
.nicolas-venues {
    --venue-cream: var(--nicolas-surface);
    --venue-dark: #242720;
    --venue-soft-ink: #bfc1b7;
    --venue-line: var(--nicolas-border);
    --venue-orange: #ff9567;
    --venue-space: clamp(4rem, 7vw, 7rem);
    --venue-feedback-time: .18s;
    overflow: clip;
}
.nicolas-venues .section { padding-block: var(--venue-space); }
.nicolas-venues [id] { scroll-margin-top: 7rem; }
/* The hall opens; the menu/drinks composition settles. Everything else remains still. */
@media (prefers-reduced-motion: no-preference) {
    .nicolas-venues__large-grid > .has-event-aperture { background: var(--venue-dark); }
    .nicolas-venues__large-grid > .has-event-aperture > :is(picture, img, .nicolas-venues__photo-art) {
        background: #e4ded3;
        clip-path: inset(0 var(--venue-aperture, 0%) 0 var(--venue-aperture, 0%));
    }
    .nicolas-venues__large-grid > .has-event-aperture > .nicolas-venues__photo-art { opacity: 1; }
    .nicolas-venues__large-grid > .has-event-aperture > .nicolas-venues__photo-art > span { opacity: .6; }
    .nicolas-venues__large-grid > .has-event-aperture > figcaption { background: linear-gradient(transparent, var(--venue-dark) 40%); color: var(--nicolas-white); }
    .nicolas-venues__large-grid > .has-event-aperture > .nicolas-venues__photo-meta { background: var(--venue-dark); color: var(--venue-soft-ink); }
    .nicolas-venues__large-grid > .is-aperture-active > :is(img, .nicolas-venues__photo-art) { will-change: clip-path; }
    .nicolas-venues__food-photos.has-event-pair > :first-child { transform: translateX(calc(-1 * var(--venue-pair-x, 0px))); }
    .nicolas-venues__food-photos.has-event-pair > :last-child { transform: translate(var(--venue-pair-x, 0px), var(--venue-pair-y, 0px)); }
}
.nicolas-venues__eyebrow { margin-bottom: 1.25rem; color: var(--nicolas-accent-dark); font-size: .75rem; font-weight: 800; letter-spacing: .12em; line-height: 1.6; text-transform: uppercase; }
.nicolas-venues__intro { font-size: clamp(1.125rem, 1.5vw, 1.3rem); }
.nicolas-venues__actions { display: flex; flex-wrap: wrap; align-items: center; gap: 1.25rem 1.75rem; margin-top: 2rem; }
.nicolas-venues .nicolas-button { padding: 1rem 1.3rem; border-width: 1px; transition: background-color var(--venue-feedback-time) ease, color var(--venue-feedback-time) ease, border-color var(--venue-feedback-time) ease, box-shadow var(--venue-feedback-time) ease; }
.nicolas-venues .nicolas-button--primary { border-color: var(--nicolas-accent); background: var(--nicolas-accent); color: var(--nicolas-white); }
.nicolas-venues .nicolas-venues__button-secondary { border-color: var(--nicolas-button-secondary-border); background: var(--nicolas-button-secondary-fill); color: var(--nicolas-accent-dark); }
.nicolas-venues .nicolas-venues__section-cta { width: fit-content; max-width: 100%; justify-self: start; white-space: normal; overflow-wrap: anywhere; }
.nicolas-venues__large .nicolas-venues__button-secondary { --nicolas-button-secondary-fill: var(--nicolas-button-secondary-fill-dark); border-color: var(--nicolas-button-secondary-border); color: var(--venue-orange); }
.nicolas-venues a:focus-visible { outline: 3px solid var(--nicolas-accent-dark); outline-offset: 4px; }
.nicolas-venues__enquiry a:focus-visible,
.nicolas-venues__large a:focus-visible { outline-color: var(--venue-orange); }
.nicolas-venues__enquiry .nicolas-venues__button-secondary { --nicolas-button-secondary-fill: var(--nicolas-button-secondary-fill-dark); border-color: var(--nicolas-button-secondary-border); color: var(--nicolas-white); }
.nicolas-venues__text-link { display: inline-flex; align-items: center; justify-content: space-between; gap: 1.25rem; color: var(--nicolas-accent-dark); font-size: var(--nicolas-type-secondary); font-weight: var(--nicolas-weight-accent); text-underline-offset: .3em; }
.nicolas-venues__text-link:hover { text-decoration: underline; }
.nicolas-venues__fine-print { font-size: var(--nicolas-type-note); line-height: 1.6; }
.nicolas-venues__section-heading { display: grid; grid-template-columns: 1.3fr 1fr; align-items: end; gap: 3rem; margin-bottom: 3rem; }
.nicolas-venues__section-heading > p { max-width: 29rem; justify-self: end; color: var(--nicolas-muted); }

/* Replaceable photo slots: deliberately abstract, never presented as venue photographs. */
.nicolas-venues__photo { position: relative; isolation: isolate; display: flex; min-width: 0; margin: 0; overflow: hidden; align-items: end; aspect-ratio: 16 / 10; background: #e4ded3; color: #54564b; }
.nicolas-venues__photo--hero { aspect-ratio: 4 / 5; }
.nicolas-venues__photo--wide { aspect-ratio: 3 / 2; }
.nicolas-venues__photo--portrait { aspect-ratio: 3 / 4; }
.nicolas-venues__photo img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.nicolas-venues__hero-photo picture { position: absolute; inset: 0; display: block; }
.nicolas-venues__hero-photo img { object-position: center; }
.nicolas-venues__hero-photo-overlay { position: absolute; z-index: 1; inset: 0; background: linear-gradient(180deg, rgb(20 20 18 / .04) 35%, rgb(20 20 18 / .48)); pointer-events: none; }
.nicolas-venues__hero-photo figcaption { z-index: 2; padding-top: 3rem; color: var(--nicolas-white); background: linear-gradient(transparent, rgb(20 20 18 / .55)); }
.nicolas-venues__photo-meta { position: absolute; z-index: 1; top: 1.25rem; right: 1.5rem; left: 1.5rem; display: flex; justify-content: space-between; gap: 1rem; font-size: .65rem; font-weight: 800; letter-spacing: .13em; }
.nicolas-venues__photo figcaption { position: relative; z-index: 1; width: 100%; padding: 2.5rem 1.5rem 1.5rem; background: linear-gradient(transparent, #e4ded3 70%); }
.nicolas-venues__photo figcaption > span { display: block; margin-bottom: .3rem; font-size: .65rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.nicolas-venues__photo figcaption strong { display: block; font-size: .9rem; font-weight: 700; }
.nicolas-venues__photo-art { position: absolute; inset: 0; overflow: hidden; opacity: .6; }
.nicolas-venues__photo-art span { position: absolute; bottom: -8%; width: 35%; height: 86%; border: 1px solid #a9aa98; border-radius: 50% 50% 0 0; }
.nicolas-venues__photo-art span:nth-child(1) { left: 1%; transform: rotate(-16deg); }
.nicolas-venues__photo-art span:nth-child(2) { left: 33%; bottom: -23%; height: 100%; }
.nicolas-venues__photo-art span:nth-child(3) { right: -1%; transform: rotate(16deg); }
.nicolas-venues__gallery { display: grid; gap: 1rem; margin-top: 1rem; }
.nicolas-venues__gallery--three { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.nicolas-venues__gallery-note { margin-top: 1rem; color: var(--venue-soft-ink); font-size: .75rem; }

/* Opening spread and a direct comparison of the two spaces. */
.nicolas-venues .nicolas-venues__hero { position: relative; isolation: isolate; padding-top: calc(clamp(8rem, 11vw, 10rem) + var(--nicolas-hero-top-extra)); padding-bottom: 0; background: var(--venue-cream); }
.nicolas-venues__hero::before { position: absolute; z-index: 0; inset: 0; background-color: var(--nicolas-muted); -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='%23fff' stroke-width='.8' stroke-linecap='round'%3E%3Cpath d='M3 7.5c3.2 0 5.4 2 5.7 5.2'/%3E%3Cpath d='M19.5 15.5c-2.8.5-4.5 2-5.1 4.8'/%3E%3C/g%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='%23fff' stroke-width='.8' stroke-linecap='round'%3E%3Cpath d='M3 7.5c3.2 0 5.4 2 5.7 5.2'/%3E%3Cpath d='M19.5 15.5c-2.8.5-4.5 2-5.1 4.8'/%3E%3C/g%3E%3C/svg%3E"); -webkit-mask-size: 24px 24px; mask-size: 24px 24px; opacity: .14; content: ""; pointer-events: none; }
.nicolas-venues__hero > .inner { position: relative; z-index: 1; }
.nicolas-venues__hero-grid { display: grid; grid-template-columns: 1.1fr 1fr; gap: clamp(2rem, 5vw, 5rem); align-items: center; }
.nicolas-venues__hero-copy { padding-block: 1rem 2rem; }
.nicolas-venues__hero h1 { font-size: clamp(3.8rem, 6.5vw, 6.5rem); font-weight: 600; line-height: .98; }
.nicolas-venues__lead { max-width: 33rem; margin-top: 1.75rem; color: var(--nicolas-muted); font-size: 1rem; }
.nicolas-venues__hero-visual { position: relative; padding-bottom: 2rem; }
.nicolas-venues__hero-visual .nicolas-venues__photo { border-radius: 48% 48% .25rem .25rem; }
.nicolas-venues__hero-visual .nicolas-venues__photo-meta { top: 28%; }
.nicolas-venues__hero-visual .nicolas-venues__photo-art { inset: 15% -10% 0; }
.nicolas-venues__visual-note { position: relative; width: 85%; margin: -1rem 0 0 -1rem; padding: 1.25rem 1.5rem; background: var(--nicolas-white); font-size: 1.15rem; font-weight: 750; }
.nicolas-venues__visual-note > span { display: block; margin-top: .25rem; color: var(--nicolas-muted); font-size: .75rem; font-weight: 500; }
/* Preserve the three hero cards' tuned values, including their breakpoint overrides. */
.nicolas-venues__space-nav { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; margin-top: 3rem; padding-bottom: 2rem; }
.nicolas-venues__space-nav a { display: flex; min-width: 0; min-height: 8rem; align-items: center; gap: 1rem; padding: 1.25rem; border: 1px solid transparent; border-radius: .5rem; background: linear-gradient(var(--nicolas-white), var(--nicolas-white)) padding-box, linear-gradient(135deg, var(--nicolas-accent-dark), var(--nicolas-accent), var(--venue-orange)) border-box; box-shadow: 0 2px 6px rgb(0 0 0 / .03); color: var(--nicolas-ink); font-size: .95rem; font-weight: 800; transition: border-color var(--venue-feedback-time) ease, box-shadow var(--venue-feedback-time) ease, background-color var(--venue-feedback-time) ease; }
.nicolas-venues__space-nav a:active { border-color: var(--nicolas-accent-dark); box-shadow: inset 0 0 0 1px var(--nicolas-accent-dark); }
.nicolas-venues__space-nav a > span:first-child { flex: 1; min-width: 0; transition: color var(--venue-feedback-time) ease; }
.nicolas-venues__space-nav a > span:last-child { color: var(--nicolas-accent-dark); font-size: 1.5rem; }
.nicolas-venues__space-nav small { display: block; margin-top: .2rem; color: var(--nicolas-muted); font-size: .7rem; font-weight: 500; }
.nicolas-venues__space-nav strong { font-size: 2.25rem; font-weight: 500; line-height: 1; }
.nicolas-venues__space-nav strong small { display: inline; }
.nicolas-venues__space-nav strong small:first-child { display: block; margin: 0 0 .35rem; }

@media (hover: hover) and (pointer: fine) {
    .nicolas-venues .nicolas-button--primary:hover { border-color: var(--nicolas-accent-dark); background: transparent; color: var(--nicolas-accent-dark); }
    .nicolas-venues .nicolas-venues__button-secondary:hover { background: var(--nicolas-accent-dark); color: var(--nicolas-white); }
    .nicolas-venues__large .nicolas-venues__button-secondary:hover { background: var(--venue-orange); color: var(--venue-dark); }
    .nicolas-venues__enquiry .nicolas-button--primary:hover { border-color: var(--venue-orange); color: var(--venue-orange); }
    .nicolas-venues__enquiry .nicolas-venues__button-secondary:hover { background: var(--nicolas-white); color: var(--venue-dark); }
    .nicolas-venues__space-nav a:hover { border-color: var(--nicolas-accent-dark); background-color: var(--venue-cream); box-shadow: 0 4px 14px rgb(0 0 0 / .12); }
    .nicolas-venues__space-nav a:hover > span:first-child { color: var(--nicolas-accent-dark); }
}
/* Neutralize the shared primary-button hover on touch, without changing global styles. */
@media (hover: none), (pointer: coarse) {
    .nicolas-venues .nicolas-button--primary:hover { background: var(--nicolas-accent); color: var(--nicolas-white); }
}
@media (prefers-reduced-motion: reduce) {
    .nicolas-venues .nicolas-button,
    .nicolas-venues__space-nav a,
    .nicolas-venues__space-nav a > span:first-child,
    .nicolas-venues .nicolas-venues__faq-list summary,
    .nicolas-venues .nicolas-venues__faq-list summary > span::after { transition: none; }
}

/* Shared controls, retimed only while this Events stylesheet is in use. */
body:has(.nicolas-venues) .nicolas-menu { transition: opacity .24s ease, visibility .24s ease; }
body:has(.nicolas-venues) .nicolas-action-bar { transition: transform .24s ease-out, opacity .24s ease-out; }
@media (hover: none), (pointer: coarse) {
    body:has(.nicolas-venues) :is(.nicolas-action-bar__button, .nicolas-footer__social-link, .full-menu-top-icon-svg, .full-menu-bottom-icon-svg):hover { transform: none; }
}
@media (prefers-reduced-motion: reduce) {
    body:has(.nicolas-venues) :is(.nicolas-menu, .nicolas-header__toggle span, .nicolas-menu__list a, .nicolas-action-bar, .nicolas-action-bar__button, .nicolas-footer__social-link, .full-menu-top-icon-svg, .full-menu-bottom-icon-svg) { transition: none; }
    body:has(.nicolas-venues) :is(.nicolas-action-bar__button, .nicolas-footer__social-link, .full-menu-top-icon-svg, .full-menu-bottom-icon-svg):is(:hover, :focus-visible) { transform: none; }
}

/* Main hall: a dominant, dark editorial section. */
.nicolas-venues__large { background: var(--venue-dark); color: var(--nicolas-white); }
.nicolas-venues__large .nicolas-venues__eyebrow,
.nicolas-venues__large .nicolas-venues__text-link { color: var(--venue-orange); }
.nicolas-venues__large .nicolas-venues__section-heading > p { color: var(--venue-soft-ink); }
.nicolas-venues__large-grid { display: grid; grid-template-columns: 1.65fr 1fr; gap: clamp(2rem, 4vw, 4rem); align-items: center; }
.nicolas-venues__large-photo > picture { position: absolute; inset: 0; display: block; }
.nicolas-venues__large-photo figcaption { color: var(--nicolas-white); background: linear-gradient(transparent, rgb(20 20 18 / .58)); }
.nicolas-venues__room-details { padding-block: .5rem; }
.nicolas-venues__capacity { display: flex; flex-wrap: wrap; align-items: baseline; gap: 0 .75rem; }
.nicolas-venues__capacity > span:first-child { flex-basis: 100%; color: var(--venue-soft-ink); font-size: .9rem; }
.nicolas-venues__capacity strong { font-size: clamp(4rem, 6vw, 6rem); font-weight: 500; line-height: 1.1; letter-spacing: -.06em; }
.nicolas-venues__capacity > span:last-child { font-size: .9rem; }
/* Capacity and its qualifying note deliberately retain their original typography. */
.nicolas-venues__room-details .nicolas-venues__fine-print { max-width: 24rem; margin-top: .6rem; color: var(--venue-soft-ink); font-size: .8rem; }
.nicolas-venues__feature-list { margin: 1.75rem 0; padding: 0; list-style: none; }
.nicolas-venues__feature-list li { position: relative; margin-top: .7rem; padding-left: 1.25rem; font-size: var(--nicolas-type-compact); }
.nicolas-venues__feature-list li::before { position: absolute; top: .6em; left: 0; width: .35rem; height: .35rem; border-radius: 50%; background: var(--nicolas-accent); content: ""; }
.nicolas-venues__large .nicolas-venues__feature-list li::before { background: var(--venue-orange); }
.nicolas-venues__large .nicolas-venues__gallery { margin-top: 2rem; }

/* Private room: quieter, lighter and visually distinct. */
.nicolas-venues__private-grid { display: grid; grid-template-columns: 1fr 1.35fr; gap: clamp(2rem, 6vw, 6rem); align-items: center; }
.nicolas-venues__private-copy > .nicolas-venues__intro { margin-top: 1.5rem; color: var(--nicolas-muted); }
.nicolas-venues__private-visual { position: relative; padding-bottom: 1.5rem; }
.nicolas-venues__capacity-badge { position: absolute; right: 0; bottom: 0; display: flex; gap: 1rem; align-items: center; padding: 1rem 1.5rem; background: var(--nicolas-accent-dark); color: var(--nicolas-white); }
.nicolas-venues__capacity-badge strong { font-size: 3.5rem; font-weight: 500; line-height: 1; }
.nicolas-venues__capacity-badge > span { font-size: .75rem; }
.nicolas-venues__gallery--private { grid-template-columns: 1fr 1fr; width: 67%; margin-top: 2rem; margin-left: auto; }

/* Food carries the same visual weight as the rooms. */
.nicolas-venues__menus { background: var(--venue-cream); }
.nicolas-venues__menu-grid { display: grid; grid-template-columns: 1.35fr 1fr; align-items: center; gap: clamp(2rem, 5vw, 5rem); }
.nicolas-venues__food-photos { display: grid; grid-template-columns: 1.15fr 1fr; gap: 1rem; align-items: start; }
.nicolas-venues__food-photos > :last-child { margin-top: 4rem; }
.nicolas-venues__food-photos > :last-child .nicolas-venues__photo-art { transform: rotate(180deg); }
.nicolas-venues__menu-copy article { padding-bottom: 2rem; }
.nicolas-venues__menu-copy h3 { margin-bottom: .75rem; }
.nicolas-venues__menu-copy p { color: var(--nicolas-muted); font-size: var(--nicolas-type-compact); }
.nicolas-venues__service-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 2rem; }
.nicolas-venues__service-grid article { padding-top: 1.25rem; border-top: 1px solid var(--venue-line); }
.nicolas-venues__service-grid h3 { margin-bottom: .75rem; }
.nicolas-venues__service-grid p { color: var(--nicolas-muted); font-size: var(--nicolas-type-compact); }

.nicolas-venues__outdoor { background: #eef0e9; }
.nicolas-venues__outdoor-grid { display: grid; grid-template-columns: 1.2fr 1fr; align-items: center; gap: clamp(2rem, 6vw, 6rem); }
.nicolas-venues__outdoor-photos { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; align-items: start; }
.nicolas-venues__outdoor-photos .nicolas-venues__photo { aspect-ratio: 3 / 4; }
.nicolas-venues__outdoor-photos > :last-child { margin-top: 4rem; }
.nicolas-venues__outdoor-copy > p:not([class]) { margin-top: 1.25rem; color: var(--nicolas-muted); }
.nicolas-venues__outdoor-stat { display: flex; align-items: center; gap: 1.25rem; margin-top: 2rem; padding-top: 1.5rem; border-top: 1px solid #ccd0c3; }
.nicolas-venues__outdoor-stat strong { font-size: 3.5rem; font-weight: 500; line-height: 1; letter-spacing: -.05em; }
.nicolas-venues__outdoor-stat span { max-width: 13rem; font-size: var(--nicolas-type-secondary); }
.nicolas-venues__practical-grid { display: grid; grid-template-columns: 1.15fr 1fr; gap: clamp(2rem, 6vw, 6rem); margin-top: 3rem; }
.nicolas-venues__practical-grid h3 { margin-bottom: 1rem; }
.nicolas-venues__practical-grid p:not(.nicolas-venues__eyebrow) { margin-top: .75rem; color: var(--nicolas-muted); font-size: var(--nicolas-type-compact); }
.nicolas-venues__practical-grid .nicolas-venues__section-cta { margin-top: 1.5rem; }
.nicolas-venues__location { padding-block: 1.5rem; border-top: 1px solid var(--venue-line); }
.nicolas-venues__location .nicolas-venues__address { color: var(--nicolas-ink); }
.nicolas-venues__stay { padding: 2rem; border-radius: var(--nicolas-radius-card); background: var(--venue-cream); }
.nicolas-venues__stay .nicolas-venues__eyebrow { margin-bottom: .75rem; }

.nicolas-venues__process { background: var(--venue-cream); }
.nicolas-venues__steps { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 2rem; margin: 0; padding: 0; list-style: none; }
.nicolas-venues__steps li { padding-top: 1rem; border-top: 1px solid var(--venue-line); }
.nicolas-venues__steps li > span { color: var(--nicolas-accent-dark); font-size: 2.75rem; font-weight: 500; line-height: 1.2; letter-spacing: -.06em; }
.nicolas-venues__steps h3 { margin: 1.5rem 0 .75rem; }
.nicolas-venues__steps p { color: var(--nicolas-muted); font-size: var(--nicolas-type-compact); }
.nicolas-venues__faq-grid { display: grid; grid-template-columns: 1fr 1.5fr; gap: clamp(2rem, 6vw, 6rem); }
.nicolas-venues__faq-list { border-top: 1px solid var(--venue-line); }
.nicolas-venues__faq-list details { border-bottom: 1px solid var(--venue-line); }
.nicolas-venues__faq-list summary { display: flex; min-height: 4.5rem; align-items: center; justify-content: space-between; gap: 1.5rem; padding-block: 1.25rem; list-style: none; font-size: 1rem; font-weight: 750; cursor: pointer; transition: color var(--venue-feedback-time) ease; }
.nicolas-venues__faq-list summary::-webkit-details-marker { display: none; }
.nicolas-venues__faq-list summary > span { position: relative; width: 1rem; height: 1rem; flex: 0 0 1rem; color: var(--nicolas-accent-dark); }
.nicolas-venues__faq-list summary > span::before,
.nicolas-venues__faq-list summary > span::after { position: absolute; top: 50%; left: 0; width: 100%; height: 1.5px; background: currentColor; content: ""; }
.nicolas-venues__faq-list summary > span::after { transform: rotate(90deg); transition: transform var(--venue-feedback-time) ease; }
.nicolas-venues__faq-list details[open] summary { color: var(--nicolas-accent-dark); }
@media (hover: hover) and (pointer: fine) {
    .nicolas-venues__faq-list summary:hover { color: var(--nicolas-accent-dark); }
}
.nicolas-venues__faq-list details[open] summary > span::after { transform: none; }
.nicolas-venues__faq-answer { padding: 0 2.5rem 1.5rem 0; color: var(--nicolas-muted); font-size: var(--nicolas-type-compact); }

.nicolas-venues__enquiry { background: var(--venue-dark); color: var(--nicolas-white); }
.nicolas-venues__enquiry-grid { display: grid; grid-template-columns: 1.7fr 1fr; gap: clamp(2.5rem, 6vw, 6rem); align-items: center; }
.nicolas-venues__enquiry .nicolas-venues__eyebrow,
.nicolas-venues__enquiry .nicolas-venues__text-link,
.nicolas-venues__enquiry h2 > span { color: var(--venue-orange); }
.nicolas-venues__enquiry h2 { font-size: clamp(2.4rem, 4vw, 4rem); }
.nicolas-venues__enquiry h2 + p { max-width: 35rem; margin-top: 1.5rem; color: var(--venue-soft-ink); }
.nicolas-venues__enquiry .nicolas-venues__fine-print { max-width: 31rem; margin-top: 1rem; color: var(--venue-soft-ink); }
.nicolas-venues__enquiry-checklist { padding: 2rem; border: 1px solid #515449; border-radius: var(--nicolas-radius-card); }
.nicolas-venues__enquiry-checklist ul { display: grid; gap: .9rem; margin: 1.5rem 0; padding: 0; list-style: none; }
.nicolas-venues__enquiry-checklist li { position: relative; padding-left: 1.25rem; font-size: var(--nicolas-type-compact); }
.nicolas-venues__enquiry-checklist li::before { position: absolute; top: .6em; left: 0; width: .35rem; height: .35rem; border-radius: 50%; background: var(--venue-orange); content: ""; }
.nicolas-venues__enquiry-checklist > p { color: var(--venue-soft-ink); font-size: var(--nicolas-type-note); }

@media (max-width: 70rem) {
    .nicolas-venues__space-nav { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .nicolas-venues__space-nav a:last-child { grid-column: 1 / -1; }
    .nicolas-venues__space-nav strong { font-size: 1.75rem; }
    .nicolas-venues__large-grid { grid-template-columns: minmax(0, 1fr); gap: 2rem; }
    .nicolas-venues__service-grid,
    .nicolas-venues__steps { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .nicolas-venues__menu-grid,
    .nicolas-venues__outdoor-grid { gap: 2rem; }
}
@media (max-width: 52rem) {
    .nicolas-venues__hero-grid { grid-template-columns: 1.15fr 1fr; gap: 1.5rem; }
    .nicolas-venues__hero h1 { font-size: clamp(3rem, 7.5vw, 4rem); }
    .nicolas-venues__hero-visual .nicolas-venues__photo { aspect-ratio: 3 / 5; }
    .nicolas-venues__visual-note { padding: 1rem; font-size: 1rem; }
    .nicolas-venues__section-heading { grid-template-columns: 1fr; align-items: start; gap: 1.5rem; margin-bottom: 2rem; }
    .nicolas-venues__section-heading > p { max-width: 38rem; justify-self: start; }
    .nicolas-venues__large-grid,
    .nicolas-venues__private-grid,
    .nicolas-venues__menu-grid,
    .nicolas-venues__outdoor-grid,
    .nicolas-venues__faq-grid,
    .nicolas-venues__enquiry-grid { grid-template-columns: 1fr; gap: 2.5rem; }
    .nicolas-venues__large-grid > .nicolas-venues__photo { height: auto; min-height: 0; }
    .nicolas-venues__room-details { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem 2rem; }
    .nicolas-venues__room-details .nicolas-venues__fine-print { grid-column: 1; }
    .nicolas-venues__room-details .nicolas-venues__feature-list { grid-column: 2; grid-row: 1 / 3; margin: 0; align-self: center; }
    .nicolas-venues__room-details > a { grid-column: 1 / -1; justify-self: start; }
    .nicolas-venues__gallery--private { width: 100%; }
    .nicolas-venues__food-photos { max-width: 38rem; }
    .nicolas-venues__menu-copy { display: grid; grid-template-columns: 1fr 1fr; gap: 1.5rem; }
    .nicolas-venues__menu-copy article { padding-bottom: 0; }
    .nicolas-venues__menu-copy > a { grid-column: 1 / -1; }
    .nicolas-venues__outdoor-copy { grid-row: 1; }
    .nicolas-venues__outdoor-photos { max-width: 38rem; }
    .nicolas-venues__outdoor-photos .nicolas-venues__photo { aspect-ratio: 1; }
    .nicolas-venues__practical-grid { gap: 2rem; }
    .nicolas-venues__stay { padding: 1.5rem; }
    .nicolas-venues__enquiry-checklist { max-width: 35rem; }
}
@media (max-width: 36rem) {
    .nicolas-venues .nicolas-venues__hero { padding-top: calc(7.5rem + var(--nicolas-hero-top-extra)); }
    .nicolas-venues__hero-grid { grid-template-columns: 1fr; gap: 1.75rem; }
    .nicolas-venues__hero-copy { padding: 0; }
    .nicolas-venues__hero h1 { font-size: clamp(3.4rem, 13vw, 4.5rem); }
    .nicolas-venues__hero h1 br:last-of-type { display: none; }
    .nicolas-venues__hero h1 > span::before { content: " "; }
    .nicolas-venues__hero-visual { padding-bottom: 0; }
    .nicolas-venues__hero-visual .nicolas-venues__photo { aspect-ratio: 1; border-radius: 45% 45% .25rem .25rem; }
    .nicolas-venues__visual-note { margin-left: 0; }
    .nicolas-venues__space-nav { grid-template-columns: 1fr; margin-top: 2rem; }
    .nicolas-venues__space-nav a { min-height: 6rem; }
    .nicolas-venues__space-nav strong { font-size: 2rem; }
    .nicolas-venues__gallery--three { grid-template-columns: 1fr 1fr; }
    .nicolas-venues__gallery--three > :first-child { grid-column: 1 / -1; aspect-ratio: 16 / 7; }
    .nicolas-venues__gallery .nicolas-venues__photo figcaption { padding: 2rem .75rem .75rem; }
    .nicolas-venues__gallery .nicolas-venues__photo-meta { top: .75rem; right: .75rem; left: .75rem; }
    .nicolas-venues__gallery .nicolas-venues__photo figcaption strong { font-size: .75rem; }
    .nicolas-venues__gallery .nicolas-venues__photo figcaption > span { font-size: .55rem; }
    .nicolas-venues__room-details { display: block; }
    .nicolas-venues__room-details .nicolas-venues__feature-list { margin-block: 1.5rem; }
    .nicolas-venues__menu-copy,
    .nicolas-venues__practical-grid { grid-template-columns: 1fr; }
    .nicolas-venues__food-photos { gap: .75rem; }
    .nicolas-venues__food-photos > :last-child { margin-top: 2rem; }
    .nicolas-venues__food-photos .nicolas-venues__photo-meta { top: .75rem; right: .75rem; left: .75rem; }
    .nicolas-venues__food-photos .nicolas-venues__photo figcaption { padding: 2rem .75rem .75rem; }
    .nicolas-venues__food-photos .nicolas-venues__photo figcaption strong { font-size: .75rem; }
    .nicolas-venues__service-grid { grid-template-columns: 1fr; }
    .nicolas-venues__outdoor-photos { grid-template-columns: 1fr; }
    .nicolas-venues__outdoor-photos .nicolas-venues__photo { aspect-ratio: 3 / 2; }
    .nicolas-venues__outdoor-photos > :last-child { width: 85%; margin: 0 0 0 auto; }
    .nicolas-venues__steps { grid-template-columns: 1fr; gap: 1.5rem; }
    .nicolas-venues__steps li { display: grid; grid-template-columns: 3rem 1fr; gap: .5rem 1rem; }
    .nicolas-venues__steps li > span { grid-row: 1 / 3; font-size: 2rem; }
    .nicolas-venues__steps h3 { margin: 0; }
    .nicolas-venues__steps p { grid-column: 2; }
    .nicolas-venues__enquiry-checklist { padding: 1.5rem; }
}
