.contact-hero{border-bottom:1px solid var(--border);grid-template-columns:minmax(0,1fr);display:grid}.contact-info{padding:clamp(2rem, 5vw, 4rem) var(--gutter) clamp(2.25rem, 5vw, 3.75rem);align-content:start;gap:1.35rem;display:grid}.contact-info .t-h1,.contact-lead{margin:0}.contact-call{justify-items:start;gap:1rem;margin-top:.25rem;display:grid}.contact-bigphone{color:var(--foreground);letter-spacing:-.03em;white-space:nowrap;align-items:center;gap:clamp(.75rem,1.6vw,1.25rem);font-size:clamp(2.5rem,1.8rem + 3.4vw,4.5rem);font-weight:800;line-height:1;text-decoration:none;display:inline-flex}.contact-bigphone svg{width:.72em;height:.72em;color:var(--accent);stroke-width:2px;flex-shrink:0}.contact-bigphone:hover{text-underline-offset:8px;text-decoration:underline;text-decoration-thickness:3px;-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent)}.contact-lines{gap:.25rem;margin-top:.25rem;display:grid}.contact-lines a{min-height:44px;color:var(--foreground);overflow-wrap:anywhere;flex-wrap:wrap;align-items:center;gap:.3rem 1rem;font-size:clamp(1.125rem,1rem + .5vw,1.375rem);text-decoration:none;display:inline-flex}.contact-lines a svg{width:24px;height:24px;color:var(--accent);flex-shrink:0}.contact-lines a:hover{text-underline-offset:5px;text-decoration:underline;-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent)}.contact-line-note{color:var(--muted-foreground);font-size:.875rem}.contact-hours{border-collapse:collapse;width:100%;max-width:460px;font-size:1.0625rem}.contact-hours caption{text-align:left;border-top:1px solid var(--border);padding:1.25rem 0 .5rem}.contact-hours th{text-align:left;color:var(--muted-foreground);padding:.5rem 1.5rem .5rem 0;font-weight:400}.contact-hours td{text-align:right;padding:.5rem 0;font-weight:600}.contact-address{border-top:1px solid var(--border);justify-items:start;gap:1rem;padding-top:1.25rem;display:grid}.contact-address p{align-items:flex-start;gap:.85rem;margin:0;font-size:clamp(1.0625rem,1rem + .3vw,1.25rem);line-height:1.45;display:flex}.contact-address svg{width:24px;height:24px;color:var(--accent);flex-shrink:0;margin-top:.1rem}.contact-map{border-top:1px solid var(--border);background:#202226;min-height:380px;margin:0;position:relative;overflow:hidden}.contact-map iframe{pointer-events:none;filter:invert()hue-rotate(180deg)grayscale(.92)brightness(.8)contrast(1.15);border:0;width:100%;height:calc(100% + 64px);position:absolute;top:-64px;left:0}.contact-map-pin{width:26px;height:30px;position:absolute;top:calc(50% - 32px);left:50%;translate:-50% -100%}.contact-map-pin>span{background:var(--primary);clip-path:polygon(0 0,100% 0,100% 70%,50% 100%,0 70%);position:absolute;inset:0}.contact-map-pin:after{content:"";border:2px solid var(--primary);opacity:0;border-radius:50%;width:40px;height:14px;position:absolute;bottom:-7px;left:50%;translate:-50% 50%}.contact-map-label{border:1px solid var(--border);background:var(--card);color:var(--foreground);white-space:nowrap;padding:.55rem .9rem;font-size:.9375rem;font-weight:700;position:absolute;top:calc(50% - 96px);left:calc(50% + 24px)}.contact-map-open{border:1px solid var(--border);background:color-mix(in oklab, var(--background) 88%, transparent);min-height:44px;color:var(--foreground);align-items:center;gap:.5rem;padding:.5rem .9rem;font-size:.875rem;font-weight:600;text-decoration:none;display:inline-flex;position:absolute;bottom:1rem;left:1rem}.contact-map-open svg{width:16px;height:16px;color:var(--accent)}.contact-map-open:hover{border-color:var(--accent)}@keyframes contact-pin-drop{0%{opacity:0;translate:0 -70px}to{opacity:1;translate:0}}@keyframes contact-pin-ring{0%{opacity:.9;scale:.4}to{opacity:0;scale:2}}@keyframes contact-label-in{0%{opacity:0;translate:-8px}to{opacity:1;translate:0}}html[data-motion=on] .contact-map:not([data-state=play]) :is(.contact-map-pin>span,.contact-map-label){opacity:0;animation:1ms 4s forwards contact-failsafe}@keyframes contact-failsafe{to{opacity:1;translate:0}}html[data-motion=on] .contact-map[data-state=play] .contact-map-pin>span{animation:.65s cubic-bezier(.3,1.5,.5,1) .25s backwards contact-pin-drop}html[data-motion=on] .contact-map[data-state=play] .contact-map-label{animation:.4s .85s backwards contact-label-in}html[data-motion=on] .contact-map[data-state=play] .contact-map-pin:after{animation:2.4s ease-out 1.1s infinite contact-pin-ring}html[data-motion=on] .contact-map[data-inview=false] .contact-map-pin:after,html[data-page=hidden] .contact-map-pin:after{animation-play-state:paused}@media (min-width:1024px){.contact-hero{min-height:calc(100vh - var(--header-h));grid-template-columns:minmax(0,5fr) minmax(0,7fr)}.contact-info{padding-left:max(var(--gutter), calc((100vw - var(--container)) / 2 + var(--gutter)));border-right:1px solid var(--border);padding-right:clamp(2rem,3.5vw,3.5rem)}.contact-map{border-top:0;min-height:100%}}.contact-enquiry-grid{align-items:start;gap:2rem;display:grid}.contact-enquiry-copy{justify-items:start;gap:1.1rem;display:grid}.contact-enquiry-copy .t-h2,.contact-enquiry-copy .t-lead{margin:0}.contact-messengers{flex-wrap:wrap;gap:.75rem;display:flex}.contact-form-panel{min-width:0}.site-surface .contact-form-panel :is(input,textarea,button[role=combobox],[data-slot=select-trigger]){border-radius:0}.site-surface .contact-form-panel :is(input:not([type=checkbox]),[data-slot=select-trigger]){min-height:52px}.site-surface .contact-form-panel button[type=submit]{--cut:14px;height:auto;min-height:52px;padding:.8rem 1.75rem;font-size:1rem;font-weight:700}@media (min-width:1024px){.contact-enquiry-grid{grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(2.5rem,5vw,5rem)}}
