/* Forms occupy the page, with provider-owned fields and responsive heights. */
.enquiry-panel{display:grid;gap:32px;padding:0;border:0;background:white;color:var(--blue)}
.enquiry-copy{min-width:0}
.enquiry-copy h2{font-size:clamp(2.5rem,4.5vw,4.5rem);font-weight:700;letter-spacing:-.05em;margin:0 0 24px;line-height:1.1}
.enquiry-copy>p:not(.technical-label){font-size:1rem;max-width:36ch;color:var(--ink)}
.enquiry-photo{margin-top:28px}
.enquiry-photo img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
.enquiry-alternatives,.embed-alternatives{display:flex;flex-wrap:wrap;gap:12px 24px;margin-top:20px}
.enquiry-alternatives a,.embed-alternatives a{display:flex;align-items:center;gap:8px;min-height:44px;font-size:1rem;color:var(--blue)}
.enquiry-alternatives .icon,.embed-alternatives .icon{width:18px;height:18px}
.inline-form{min-width:0;max-width:100%;background:white;color:var(--ink);scroll-margin-top:calc(var(--header-height) + 16px)}
.inline-form iframe{display:block;width:100%;max-width:100%;border:0;background:white;color-scheme:light;min-height:500px}
.embed-alternatives{gap:8px 24px;margin-top:16px}
.embed-alternatives a{font-size:.875rem}
.contact-direct{margin-top:28px;display:grid;gap:16px}
.contact-direct>a{font-size:1rem;overflow-wrap:anywhere}
.contact-photo{margin-top:32px;clip-path:none}
.contact-photo img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
.contact-intro::after{display:none}
.contact-heading{background:var(--blue);color:white;padding-block:clamp(2.5rem,5vw,4.5rem)}
.contact-heading h1{font-size:clamp(3.5rem,7vw,7rem);font-weight:700;letter-spacing:-.055em}
.contact-heading-mark{display:none}
.contact-layout{padding-top:40px;gap:40px}
.contact-intro p{font-size:clamp(1.6rem,2.6vw,2.5rem);font-weight:400;line-height:1.35}
.contact-form-area{border:0!important;padding:0!important;scroll-margin-top:calc(var(--header-height) + 20px)}
.tour-hero{background:var(--blue);color:white;padding-block:clamp(2.5rem,5vw,4.5rem)}
.tour-hero-copy h1{font-size:clamp(3.5rem,7vw,7rem);font-weight:700;max-width:none;letter-spacing:-.055em;line-height:1.05;margin-bottom:24px}
.tour-hero-copy p{max-width:48ch;font-size:clamp(1rem,1.7vw,1.3rem)}
.tour-photo{border-radius:0;aspect-ratio:3/2;max-height:none;margin-top:28px}
.tour-booking-layout{display:grid;gap:32px;padding-top:40px}
.tour-alternative{margin-bottom:32px}
.tour-alternative p{max-width:65ch;font-size:1rem}
.tour-mail-mark{display:none}
.tour-booking{border:0!important;padding:0!important}
.tour-booking .enquiry-panel{color:var(--blue)}

/* Inline providers need generous space; provider fields and resizing are unchanged. */
.enquiry-photo{min-height:0;overflow:visible}
.enquiry-copy{padding:0}
.enquiry-photo img{position:static;inset:auto;min-height:0}
.contact-intro{position:static}
.tour-alternative{padding-right:0}
body{padding-bottom:calc(64px + env(safe-area-inset-bottom))}
@media(min-width:700px){
 body{padding-bottom:0}
 .enquiry-panel,.contact-layout,.tour-booking-layout{grid-template-columns:minmax(200px,.7fr) minmax(0,1.8fr);gap:clamp(32px,5vw,80px);align-items:start}
 /* Form pages already offer call/email alongside the form and in the header/footer. */
 body:has(.inline-form) .contact-dock{display:none}
}
@media(max-width:999px){
 .enquiry-panel{display:flex;flex-direction:column;gap:24px}
 .enquiry-copy{display:contents}
 .enquiry-copy>h2,.enquiry-copy>p{order:0;margin:0}
 .enquiry-copy>.enquiry-alternatives{order:1;margin:0}
 .enquiry-panel>.inline-form{order:2}
 .enquiry-copy>.enquiry-photo{order:3;margin-top:0}
 .tour-booking-layout,.contact-layout{display:flex;flex-direction:column;gap:28px}
 .tour-alternative,.contact-intro{display:contents}
 .tour-alternative>p,.contact-intro>p{order:0;margin:0}
 .tour-alternative>.enquiry-alternatives,.contact-direct{order:1;margin-top:0}
 .tour-booking,.contact-form-area{order:2}
 .tour-photo,.contact-photo{order:3;margin:8px 0 0}
 .enquiry-photo,.contact-photo,.tour-photo{max-width:420px}
}
@media(max-width:699px){
 .inline-form iframe{width:calc(100% + 2 * var(--gutter));max-width:none;margin-inline:calc(-1 * var(--gutter))}
 .film-caption{flex-wrap:wrap}
}
/* Preserve audited room/equipment views and the responsive sizing fixes. */
.rail-panel:nth-child(even)>img{clip-path:none;border-radius:0}
.wood-hero-photo,.print-hero-photo{width:100%;min-width:0;min-height:0;aspect-ratio:3/2;border-radius:0;clip-path:none}
.programmes-hero-image{width:100%;min-width:0;align-self:start;aspect-ratio:3/2;clip-path:none}
.textile-hero-media,.host-event-photo,.host-room-photo--board,.host-room-photo--meeting{clip-path:none;border-radius:0}
.wood-rail .rail-panel:nth-child(2),.textile-media-rail .textile-rail-work,.print-workshop-rail .rail-panel{clip-path:none;border-radius:0}
.workspace-rail .rail-panel{clip-path:none!important;border-radius:0!important}
.print-hero>.page-title .lab-title-icon{display:inline-flex}
.metal-page :is(.metal-access,.metal-powder) .section-heading{color:inherit}
body[data-page] .wood-contact{color:white}
@media(min-width:700px) and (max-width:999px){
 .workspace-hero-stage{grid-template-columns:1fr}
 .workspace-hero-media.workspace-film{margin-inline:var(--gutter)}
 .workspace-intro{padding-inline:var(--gutter)}
 .print-hero .page-hero-grid{grid-template-columns:1fr;margin-top:32px}
 .print-intro{padding-top:0}
 .print-hero>.page-title{max-width:none}
}
