:root{--contact-columns: .8fr 1.2fr;--contact-layout-gap: 20px;--contact-panel-padding: clamp(34px, 5vw, 58px);--contact-heading-size: var(--interior-heading-size);--contact-heading-color: var(--interior-heading-color);--contact-body-size: var(--interior-body-size);--contact-body-color: var(--interior-body-color);--contact-form-columns: minmax(0,.8fr) minmax(0,1.2fr);--contact-form-gap: clamp(2rem, 6vw, 5rem);--contact-form-padding: clamp(1.5rem, 5vw, 4rem);--contact-form-heading-size: clamp(2rem, 4vw, 3.5rem);--contact-form-heading-color: var(--navy);--contact-label-size: .85rem;--contact-label-color: var(--navy);--contact-input-size: 1rem;--contact-input-color: var(--navy);--contact-input-background: rgba(255,255,255,.82);--contact-button-size: 1rem;--contact-button-color: white;--contact-button-background: var(--navy);--contact-success-color: #257052;--contact-error-color: #a43f4b;--contact-map-height: 580px}.contact-layout{display:grid;grid-template-columns:var(--contact-columns);gap:var(--contact-layout-gap);align-items:stretch}.contact-panel{padding:var(--contact-panel-padding);border-radius:var(--nook-radius-xl);background:var(--nook-white);border:1px solid var(--nook-border);box-shadow:var(--nook-shadow)}.contact-panel h2{margin:0;color:var(--contact-heading-color);font-size:var(--contact-heading-size);line-height:1.02;letter-spacing:-.045em}.contact-panel p{color:var(--contact-body-color);font-size:var(--contact-body-size);line-height:1.85}.contact-list{display:grid;gap:14px;margin-top:34px}.contact-item{display:block;padding:20px 22px;border-radius:var(--nook-radius-md);color:var(--nook-ink);background:#f5f7f4;text-decoration:none;transition:transform .2s ease,background-color .2s ease}.contact-item:hover{transform:translateY(-2px);background:#edf3e8}.contact-item span{display:block;margin-bottom:5px;color:var(--nook-muted);font-size:.73rem;font-weight:800;letter-spacing:.11em;text-transform:uppercase}.map-shell{position:relative;min-height:var(--contact-map-height);overflow:hidden;border-radius:var(--nook-radius-xl);background:var(--nook-blue);border:1px solid var(--nook-border);box-shadow:var(--nook-shadow)}.map-shell:after{content:"";position:absolute;top:50%;left:50%;width:22px;height:22px;margin:-35px 0 0 -11px;border-radius:50%;background:#a84f3152;box-shadow:0 0 #a84f318c;animation:map-pin-pulse 2.4s ease-out infinite;pointer-events:none;z-index:2}@keyframes map-pin-pulse{0%{transform:scale(.55);opacity:1}70%{transform:scale(2.6);opacity:0}to{opacity:0}}.map-shell iframe{position:absolute;inset:0;width:100%;height:100%;border:0;filter:saturate(.78) contrast(.92)}.hours-grid{display:grid;margin-top:24px}.hours-row{display:flex;justify-content:space-between;gap:30px;padding:15px 0;border-bottom:1px solid var(--nook-border);color:var(--nook-muted)}.hours-row strong{color:var(--nook-navy);font-weight:700}.contact-form-card{display:grid;grid-template-columns:var(--contact-form-columns);gap:var(--contact-form-gap);padding:var(--contact-form-padding);border:1px solid rgba(255,255,255,.8);border-radius:clamp(1.75rem,4vw,3rem);background:radial-gradient(circle at top left,rgba(255,255,255,.95),transparent 45%),#ffffffad;box-shadow:0 24px 60px #23374b1a,inset 0 1px #ffffffe6;backdrop-filter:blur(18px)}.contact-form-card__intro h2{margin:.7rem 0 1rem;color:var(--contact-form-heading-color);font-size:var(--contact-form-heading-size);line-height:1;letter-spacing:-.04em}.contact-form-card__intro p{max-width:32rem;margin:0;line-height:1.75}.contact-form{display:grid;gap:1.2rem}.contact-form__honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.contact-form__status{min-height:1.5rem;margin:0;text-align:center;font-weight:700}.contact-form__status[data-type=success]{color:var(--contact-success-color)}.contact-form__status[data-type=error]{color:var(--contact-error-color)}.contact-form__submit:disabled{cursor:wait;opacity:.65;transform:none}.contact-form__row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem}.contact-form__field{display:grid;gap:.5rem}.contact-form__field>span{color:var(--contact-label-color);font-size:var(--contact-label-size);font-weight:800;letter-spacing:.04em}.contact-form input,.contact-form select,.contact-form textarea{width:100%;border:1px solid rgba(35,55,75,.12);border-radius:1rem;background:var(--contact-input-background);color:var(--contact-input-color);font:var(--contact-input-size) var(--font-body);outline:none;padding:.95rem 1rem;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.contact-form textarea{min-height:10rem;resize:vertical}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:var(--nook-blue);box-shadow:0 0 0 4px #56a0be24;transform:translateY(-1px)}.contact-form__submit{display:inline-flex;justify-content:center;align-items:center;gap:.8rem;min-height:3.5rem;border:0;border-radius:999px;background:var(--contact-button-background);box-shadow:0 12px 26px #23374b2e;color:var(--contact-button-color);cursor:pointer;font:800 var(--contact-button-size) var(--font-body);transition:transform .18s ease,box-shadow .18s ease}.contact-form__submit:hover{transform:translateY(-2px);box-shadow:0 16px 32px #23374b3d}.contact-form__submit:active{transform:translateY(0)}@media(max-width:900px){.contact-layout{grid-template-columns:1fr}.map-shell{min-height:450px}}@media(max-width:760px){.contact-form-card,.contact-form__row{grid-template-columns:1fr}}@media(max-width:560px){.contact-panel,.map-shell{border-radius:24px}.hours-row{align-items:start;flex-direction:column;gap:3px}}
