.contact-reservations-page { padding-bottom: calc(var(--mobile-action-height) + var(--space-6) + env(safe-area-inset-bottom)); }
.cr-hero__grid { display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); gap:var(--space-5); align-items:center; }
.cr-hero__copy { grid-column:1 / span 5; min-width:0; max-width:35rem; }
.cr-hero__badges { display:flex; flex-wrap:wrap; gap:var(--space-2); min-width:0; }
.cr-hero__media { grid-column:6 / span 7; grid-row:1; min-width:0; width:100%; height:30rem; border-radius:var(--radius-feature); overflow:hidden; background:var(--color-timber); }
.cr-hero__media img { width:100%; max-width:100%; height:100%; object-fit:cover; object-position:center; }
.cr-quick-panel { grid-column:7 / span 5; grid-row:1; z-index:1; min-width:0; margin-block:var(--space-8); }
.cr-quick-form, .cr-quick-form__intro { display:flex; flex-direction:column; min-width:0; gap:var(--space-4); }
.cr-quick-form__intro p { margin:0; }
.cr-quick-form__grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:var(--space-4); min-width:0; }
.cr-quick-form__grid > *, .cr-fields-grid > *, .cr-context-options > *, .cr-arrival-cards > *, .cr-contact-cards > * { min-width:0; }
.cr-quick-form .field { margin:0; }
.cr-quick-form__notice { display:flex; gap:var(--space-3); align-items:flex-start; padding:var(--space-3); background:var(--color-sage-mist); border-radius:var(--radius-control); }
.cr-quick-form__notice span { flex:0 0 1.25rem; width:1.25rem; height:1.25rem; display:grid; place-items:center; border-radius:50%; background:var(--color-sage); color:var(--color-white); font-weight:700; }
.cr-quick-form__notice p, .cr-form-message { margin:0; font-size:var(--text-utility); line-height:var(--leading-utility); }
.cr-form-message { min-height:1.5rem; color:var(--color-error); font-weight:700; }
.cr-journey__heading { max-width:37.5rem; }
.cr-journey__cards { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:var(--space-5); margin-top:var(--space-7); }
.cr-step { display:flex; flex-direction:column; align-items:stretch; gap:var(--space-3); }
.cr-step > * { margin:0; }
.cr-step .badge { align-self:flex-start; }
.cr-step--poker { background:var(--color-sage-mist); }
.cr-step:hover, .cr-step:focus-within, .cr-contact-card:hover, .cr-contact-card:focus-within { border-color:rgba(197,168,105,.55); box-shadow:0 12px 34px rgba(0,0,0,.07); }
.cr-engine__outer { display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); }
.cr-engine__heading { grid-column:2 / span 10; max-width:38.75rem; min-width:0; }
.cr-engine__panel { grid-column:2 / span 10; min-width:0; margin-top:var(--space-6); }
.cr-reservation-form { display:flex; flex-direction:column; gap:var(--space-6); min-width:0; }
.cr-reservation-form fieldset { margin:0; }
.cr-fieldset-help { margin-top:calc(var(--space-3) * -1); }
.cr-context-options { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:var(--space-3); }
.cr-context-option { display:flex; align-items:flex-start; gap:var(--space-2); min-width:0; min-height:4.5rem; margin:0; padding:var(--space-3); border:1px solid var(--color-border); border-radius:var(--radius-control); background:var(--color-alabaster); font-weight:400; }
.cr-context-option span { display:flex; flex-direction:column; min-width:0; gap:var(--space-1); }
.cr-context-option small { font-size:var(--text-meta); line-height:var(--leading-meta); }
.cr-fields-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:var(--space-4) var(--space-5); }
.cr-fields-grid .field { margin:0; }
.cr-field--full { grid-column:1 / -1; }
.cr-optional { color:var(--color-text-muted); font-weight:400; }
.cr-poker-fieldset { display:flex; flex-direction:column; align-items:stretch; gap:var(--space-4); padding:var(--space-5); border:1px solid rgba(82,115,92,.3); border-radius:var(--radius-card); background:var(--color-sage-mist); }
.cr-poker-fieldset[hidden], .cr-function-note[hidden] { display:none; }
.cr-poker-fieldset > *, .cr-function-note > * { margin:0; }
.cr-poker-fieldset .field { width:min(100%,20rem); margin:0; }
.cr-check-label { display:flex; align-items:flex-start; gap:var(--space-3); min-width:0; margin:0; font-size:var(--text-utility); font-weight:400; line-height:var(--leading-utility); }
.cr-function-note { padding:var(--space-4); border-left:2px solid var(--color-brass); background:var(--color-alabaster); }
.cr-function-note p { margin:var(--space-2) 0 0; }
.cr-submit-area { display:flex; flex-direction:column; align-items:flex-start; gap:var(--space-4); min-width:0; }
.cr-submit-area p { max-width:38.75rem; margin:0; font-size:var(--text-utility); line-height:var(--leading-utility); }
.cr-error-summary { margin:0; }
.cr-live-confirmation { min-width:0; }
.cr-live-confirmation:not(:empty) { margin-top:var(--space-6); }
.cr-live-confirmation__card { display:flex; flex-direction:column; gap:var(--space-4); border-top:3px solid var(--color-brass); }
.cr-live-confirmation__card > * { margin:0; }
.cr-live-confirmation__card dl { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:var(--space-3); margin:0; }
.cr-live-confirmation__card dl > div { min-width:0; padding-bottom:var(--space-3); border-bottom:1px solid var(--color-border); }
.cr-live-confirmation__card dd { margin:var(--space-1) 0 0; }
.cr-live-confirmation__policy { margin:0; padding:var(--space-4); background:var(--color-sage-mist); border-radius:var(--radius-control); }
.cr-live-confirmation__policy p { margin:var(--space-2) 0 0; }
.cr-confirmation__panel { width:min(100%,45rem); margin-inline:auto; }
.cr-confirmation__intro { max-width:36.25rem; }
.cr-summary-preview { margin-top:var(--space-6); border-top:3px solid var(--color-brass); }
.cr-summary-preview dl { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:var(--space-4); margin:var(--space-5) 0 0; }
.cr-summary-preview dl > div { min-width:0; }
.cr-summary-preview dd { margin:var(--space-1) 0 0; }
.cr-confirmation__policy { margin-top:var(--space-4); max-width:43.75rem; padding:var(--space-4); border-radius:var(--radius-card); background:var(--color-sage-mist); }
.cr-confirmation__policy p { margin:var(--space-2) 0 0; }
.cr-location__heading { max-width:35rem; }
.cr-address-panel { display:flex; flex-direction:column; align-items:flex-start; gap:var(--space-4); min-width:0; margin-top:var(--space-6); padding:var(--space-6); border-radius:var(--radius-feature); background:var(--color-timber); }
.cr-address-panel > * { margin:0; }
.cr-address-panel address { max-width:45rem; font-family:var(--font-heading); font-size:clamp(1.875rem,4vw,2.625rem); font-style:normal; font-weight:600; line-height:1.1; }
.cr-address-panel p { max-width:38rem; }
.cr-arrival-cards { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:var(--space-5); margin-top:var(--space-5); }
.cr-arrival-card { display:flex; flex-direction:column; align-items:flex-start; gap:var(--space-3); }
.cr-arrival-card > * { margin:0; }
.cr-arrival-icon { display:grid; place-items:center; width:2.75rem; height:2.75rem; border:1px solid var(--color-brass); border-radius:50%; color:var(--color-charcoal); font-weight:700; }
.cr-hours { width:calc((100% - var(--space-5)) / 2); min-width:0; margin-top:var(--space-5); }
.cr-hours dl { margin:0; border-top:1px solid var(--color-border); }
.cr-hours dl > div { display:flex; justify-content:space-between; gap:var(--space-4); padding:var(--space-3) 0; border-bottom:1px solid var(--color-border); }
.cr-hours dd { margin:0; }
.cr-atmosphere__grid { display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); gap:var(--space-5); align-items:center; }
.cr-atmosphere__content { grid-column:9 / span 4; grid-row:1; min-width:0; max-width:31.25rem; }
.cr-atmosphere__media { grid-column:1 / span 7; grid-row:1 / span 2; min-width:0; width:100%; margin:0; }
.cr-atmosphere__media img { width:100%; max-width:100%; aspect-ratio:3 / 2; border-radius:var(--radius-feature); object-fit:cover; object-position:center; }
.cr-offline-note { grid-column:9 / span 4; grid-row:2; display:flex; gap:var(--space-3); min-width:0; padding:var(--space-4); border-left:2px solid var(--color-sage); background:var(--color-sage-mist); }
.cr-offline-note > div { min-width:0; max-width:29.375rem; }
.cr-offline-note h3 { margin-bottom:var(--space-2); }
.cr-offline-note p { margin-bottom:var(--space-3); }
.cr-chip { flex:0 0 2rem; width:2rem; height:2rem; border:6px dotted var(--color-alabaster); border-radius:50%; background:var(--color-ceramic); }
.cr-concierge__heading { max-width:35rem; }
.cr-contact-cards { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:var(--space-5); margin-top:var(--space-6); }
.cr-contact-card { display:flex; flex-direction:column; align-items:flex-start; gap:var(--space-3); }
.cr-contact-card > * { margin:0; }
.cr-contact-card p:not(.meta) { max-width:32rem; }
.cr-contact-value { overflow-wrap:anywhere; font-size:var(--text-body-large); font-weight:700; }
.cr-contact-card .button { margin-top:auto; }
.cr-support-note { max-width:42.5rem; margin-top:var(--space-6); padding-top:var(--space-5); border-top:1px solid var(--color-timber); }
.cr-rules__panel { width:min(100%,58.125rem); margin-inline:auto; }
.cr-rules__heading { max-width:37.5rem; }
.cr-rule-list { display:flex; flex-direction:column; gap:var(--space-3); margin-top:var(--space-6); }
.cr-rule { display:grid; grid-template-columns:4rem minmax(0,1fr); gap:var(--space-4); min-width:0; padding:var(--space-5); background:var(--color-white); border:1px solid var(--color-border); border-radius:var(--radius-card); }
.cr-rule > div { min-width:0; max-width:38.75rem; }
.cr-rule h3 { margin-bottom:var(--space-2); }
.cr-rule p { margin:0; }
.cr-rule__icon { display:grid; place-items:center; width:4rem; height:4rem; border-radius:50%; background:var(--color-travertine); color:var(--color-sage); font-family:var(--font-body); font-size:var(--text-utility); font-weight:700; }
.cr-rule__icon--chip { border:10px dotted var(--color-white); background:var(--color-ceramic); }
.cr-rule--age { background:var(--color-sage-mist); border-color:rgba(82,115,92,.35); }
.cr-closing__panel { display:flex; flex-direction:column; align-items:center; gap:var(--space-5); padding:var(--space-7); border-top:2px solid var(--color-brass); border-radius:var(--radius-feature); text-align:center; }
.cr-closing__copy { max-width:32.5rem; }
.cr-closing__copy .eyebrow { color:var(--color-brass-soft); }
.cr-closing__copy > * { margin-left:auto; margin-right:auto; }
.cr-closing__actions { display:flex; flex-wrap:wrap; justify-content:center; gap:var(--space-3); min-width:0; }
.cr-closing__actions .button--secondary { border-color:var(--color-brass-soft); color:var(--color-white); }
.cr-closing__actions .button--secondary:hover { color:var(--color-charcoal); }
@media (max-width:61.1875rem) { .cr-hero__copy { grid-column:1 / span 6; } .cr-quick-panel { grid-column:7 / span 6; margin-block:0; } .cr-hero__media { grid-column:1 / -1; grid-row:2; height:18rem; } }
@media (max-width:56.25rem) { .cr-journey__cards { grid-template-columns:repeat(2,minmax(0,1fr)); } .cr-journey__cards > :nth-child(3) { grid-column:1 / span 1; } .cr-fields-grid { grid-template-columns:1fr; } .cr-field--full { grid-column:1; } .cr-atmosphere__content { grid-column:8 / span 5; } .cr-atmosphere__media { grid-column:1 / span 6; } .cr-offline-note { grid-column:8 / span 5; } }
@media (max-width:53.75rem) { .cr-arrival-cards { grid-template-columns:1fr; } .cr-hours { width:100%; max-width:32rem; } }
@media (max-width:51.25rem) { .cr-rule { grid-template-columns:1fr; gap:var(--space-3); } .cr-rule__icon { width:3rem; height:3rem; } }
@media (max-width:48.75rem) { .cr-contact-cards { grid-template-columns:1fr; } }
@media (max-width:47.9375rem) { .contact-reservations-page { padding-bottom:calc(var(--mobile-action-height) + var(--space-8) + env(safe-area-inset-bottom)); } .cr-hero__grid, .cr-engine__outer, .cr-atmosphere__grid { grid-template-columns:1fr; gap:var(--space-5); } .cr-hero__copy, .cr-quick-panel, .cr-hero__media, .cr-engine__heading, .cr-engine__panel, .cr-atmosphere__content, .cr-atmosphere__media, .cr-offline-note { grid-column:1; grid-row:auto; width:100%; } .cr-hero__copy { max-width:none; } .cr-hero__media { height:auto; aspect-ratio:4 / 5; } .cr-quick-panel { order:2; } .cr-hero__media { order:3; } .cr-quick-form__grid, .cr-context-options, .cr-journey__cards, .cr-arrival-cards, .cr-contact-cards { grid-template-columns:1fr; } .cr-journey__cards { gap:var(--space-4); margin-top:var(--space-6); } .cr-journey__cards > :nth-child(3) { grid-column:1; } .cr-engine__heading, .cr-engine__panel { max-width:none; } .cr-engine__panel { padding:var(--space-4); } .cr-context-option { min-height:4rem; } .cr-poker-fieldset { padding:var(--space-4); } .cr-poker-fieldset .field { width:100%; } .cr-submit-area .button { width:100%; min-height:3rem; } .cr-live-confirmation__card dl, .cr-summary-preview dl { grid-template-columns:1fr; } .cr-summary-preview dl { gap:var(--space-3); } .cr-address-panel { padding:var(--space-5); } .cr-atmosphere__content { order:1; max-width:none; } .cr-atmosphere__media { order:2; } .cr-atmosphere__media img { aspect-ratio:4 / 5; } .cr-offline-note { order:3; max-width:none; } .cr-closing__panel { padding:var(--space-5); } .cr-closing__actions { flex-direction:column; width:100%; } .cr-closing__actions .button { width:100%; min-height:3rem; } }
@media (max-width:38.75rem) { .cr-closing__actions { flex-direction:column; width:100%; } .cr-closing__actions .button { width:100%; } }
@media (hover:none) { .cr-step:hover, .cr-contact-card:hover { border-color:var(--color-border-brass); box-shadow:var(--shadow-ambient); } }
