/* Contact-specific layout and controls. Shared header/footer are preserved. */
.connect-page{background:var(--parchment);color:var(--brown);color-scheme:light}
.connect-page .header{position:sticky;top:0;background:var(--garnet);color:var(--parchment)}
@media(max-width:1380px){:root:not([data-navigation-enhanced]) .connect-page .header{position:relative}}
.connect-main{font:400 18px/1.75 var(--font-body);background:var(--parchment)}
.connect-content{width:100%;max-width:1408px;margin-inline:auto;padding-inline:clamp(24px,4vw,64px)}
.connect-main h1{font:400 clamp(38px,3.6vw,50px)/1.2 var(--font-heading);margin:0 0 24px;letter-spacing:-.5px}
.connect-main h2{font:400 clamp(27px,2.3vw,32px)/1.4 var(--font-heading);margin:0 0 22px}
.connect-main h3{font:400 21px/1.4 var(--font-heading);margin:0 0 10px;color:var(--oxblood)}
.connect-main p{margin:0 0 18px}
.connect-invitation{padding:clamp(40px,4.5vw,64px) 0 clamp(32px,3.5vw,48px)}
.connect-intro{max-width:720px;margin:0}
.connect-intro .connect-signature{margin:22px 0 0}
.connect-reach{padding:0 0 clamp(48px,5vw,72px)}
.connect-columns{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(40px,5vw,72px);align-items:start}
.connect-direct{padding-top:28px;max-width:410px}
.connect-main .connect-section-label{font:400 11px/1.7 var(--font-ui);letter-spacing:1.6px;color:var(--oxblood);margin:0 0 14px}
.connect-direct-option{margin-top:28px}
.connect-direct-option p{margin-bottom:6px}
.connect-main a{color:var(--oxblood);text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:1px;overflow-wrap:anywhere}
.connect-main a:hover{text-decoration-thickness:2px}
.connect-direct-option>a{display:inline-block;padding-block:8px;min-height:44px}
.connect-direct .connect-text-note{font-size:15px;line-height:1.75;margin:12px 0 0;max-width:360px}
.connect-email-address{overflow-wrap:anywhere}
.connect-inquiry{background:#fffaf3;padding:clamp(26px,3vw,40px);border-radius:6px;min-width:0}
.connect-inquiry h2{font-size:clamp(26px,2vw,30px);margin-bottom:26px}
.connect-field{display:flex;flex-direction:column;gap:8px;margin-bottom:22px;min-width:0}
.connect-field label,.connect-check,.connect-page legend{font:400 16px/1.6 var(--font-body)}
.connect-required{font:400 12px/1.6 var(--font-body);color:#745653}
.connect-help{font:400 13px/1.6 var(--font-body);color:#745653}
.connect-field-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.connect-page input:not([type=checkbox]),.connect-page select,.connect-page textarea{width:100%;min-width:0;box-sizing:border-box;background:#fffdf9;border:1px solid #b3a196;border-radius:3px;padding:12px;color:var(--brown);font:400 17px/1.5 var(--font-body);min-height:48px}
.connect-page textarea{resize:vertical;min-height:140px}
.connect-page input:focus-visible,.connect-page select:focus-visible,.connect-page textarea:focus-visible,.connect-main a:focus-visible,.connect-submit:focus-visible{outline:2px solid var(--oxblood);outline-offset:4px}
.connect-page input:user-invalid,.connect-page select:user-invalid{border-color:var(--garnet);border-width:2px}
.connect-page fieldset{border:0;padding:0;margin:0 0 22px;min-width:0}
.connect-page legend{color:var(--oxblood);padding:0;margin-bottom:18px}
.connect-check{display:flex;align-items:flex-start;gap:12px;min-height:44px;margin-bottom:22px}
.connect-check input{width:20px;height:20px;flex-shrink:0;margin:3px 0 0;accent-color:var(--garnet)}
.connect-privacy,.connect-setup{font:400 14px/1.7 var(--font-body)}
.connect-setup{color:var(--brown)}
.connect-submit{display:inline-block;min-height:48px;background:var(--garnet);color:var(--parchment);border:1px solid var(--garnet);border-radius:0;padding:13px 24px;font:400 16px/1.5 var(--font-ui);cursor:pointer}
.connect-submit:disabled{opacity:.6;cursor:not-allowed}
.connect-form-status{font:400 16px/1.7 var(--font-body);margin-top:18px!important}
.connect-form-status:empty{display:none}
.connect-success h3{color:var(--brown)}
.connect-discovery{background:var(--garnet);color:var(--parchment);padding:clamp(48px,5vw,72px) 0 48px;scroll-margin-top:120px}
.connect-discovery-copy{max-width:780px}
.connect-main .connect-discovery .connect-section-label{color:var(--parchment)}
.connect-discovery h2{font-size:clamp(28px,2.5vw,36px);margin-bottom:24px}
.connect-main .connect-booking{display:inline-flex;align-items:center;justify-content:center;min-height:48px;margin-top:8px;padding:14px 24px;background:var(--parchment);color:var(--garnet);font:400 16px/1.5 var(--font-ui);text-decoration:none;border:1px solid var(--parchment)}
.connect-main .connect-booking:hover{background:#fffaf3;text-decoration:none}
.connect-main .connect-booking:focus-visible{outline-color:var(--parchment)}
.connect-discovery .connect-setup{color:var(--parchment)}
.connect-page [hidden]{display:none!important}
#contact-captcha{margin-bottom:22px;max-width:100%}
@media(max-width:900px){.connect-columns{grid-template-columns:1fr;gap:32px}.connect-direct{padding-top:0;max-width:650px}.connect-direct .connect-text-note{max-width:500px}.connect-inquiry{max-width:780px;width:100%}}
@media(max-width:600px){.connect-main{font-size:17px}.connect-content{padding-inline:24px}.connect-invitation{padding:36px 0 32px}.connect-main h1{font-size:38px;margin-bottom:22px}.connect-main h2{font-size:28px}.connect-main h3{font-size:21px}.connect-field-pair{grid-template-columns:1fr;gap:0}.connect-inquiry{padding:26px 20px}.connect-inquiry h2{font-size:26px}.connect-direct-option{margin-top:24px}.connect-reach{padding-bottom:44px}.connect-discovery{padding:44px 0 40px}.connect-discovery h2{font-size:28px}.connect-main .connect-booking{font-size:16px;padding:14px 20px}}
.connect-skip{position:absolute;top:-100px;left:24px;z-index:10;background:var(--parchment);color:var(--garnet);padding:12px 18px}
.connect-skip:focus{top:10px}
/* Choice-first contact composition; the form controls and integration are unchanged. */
.connect-choices-page .connect-invitation{padding:30px 0 22px}
.connect-choices-page .connect-intro{max-width:800px}
.connect-choices-page .connect-main h1{font-size:clamp(36px,3vw,44px);margin-bottom:18px}
.connect-choices-page .connect-intro p{margin-bottom:12px}
.connect-choices-page .connect-intro p:last-child{margin-bottom:0}
.connect-options{padding-bottom:36px}
.connect-options h2{font-size:clamp(25px,2vw,29px);margin-bottom:20px}
.connect-options-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:stretch}
.connect-option-card{display:grid;grid-template-rows:auto 1fr auto 28px;gap:0;background:#fffaf3;border:1px solid rgba(156,70,64,.4);border-radius:0;box-shadow:none;padding:24px;min-width:0;scroll-margin-top:28px}
.connect-main .connect-option-card h3{font-size:23px;line-height:1.4;color:var(--brown);margin:0 0 12px}
.connect-main .connect-option-description{font-size:17px;line-height:1.65;margin:0 0 16px}
.connect-choices-page .connect-main .connect-option-action{display:inline-flex;align-items:center;justify-content:flex-start;justify-self:start;min-height:44px;margin:0;padding:8px 0;background:none;border:0;border-radius:0;color:var(--oxblood);font:400 16px/1.6 var(--font-ui);text-decoration:underline;text-underline-offset:5px}
.connect-choices-page .connect-main .connect-option-action:hover{background:none;text-decoration-thickness:2px}
.connect-choices-page .connect-main .connect-option-action:focus-visible{outline-color:var(--oxblood)}
.connect-main .connect-option-detail{font:400 14px/1.7 var(--font-body);margin:0}
.connect-option-card:focus-within{border-color:var(--oxblood)}
@media(hover:hover){.connect-option-card:hover{border-color:var(--oxblood);background:#faf5ee}}
.connect-main .connect-email-invitation{font-size:17px;line-height:1.7;margin:22px 0 0}
.connect-main .connect-instagram{margin:8px 0 0;font-size:17px;line-height:1.7}
.connect-form-section{padding:0 0 clamp(48px,5vw,72px)}
.connect-choices-page .connect-inquiry{max-width:820px;margin-inline:auto;scroll-margin-top:28px}
.connect-inquiry:focus-visible{outline:2px solid var(--oxblood);outline-offset:5px}
.connect-mobile-choices{display:none}
html:has(.connect-choices-page){scroll-behavior:smooth}
@media(prefers-reduced-motion:reduce){html:has(.connect-choices-page){scroll-behavior:auto}}
@media(max-width:900px){.connect-options-grid{grid-template-columns:1fr;gap:16px}.connect-option-card{padding:22px 24px;grid-template-rows:auto 1fr auto auto}.connect-main .connect-option-card h3{font-size:23px}.connect-main .connect-option-description{margin-bottom:10px}.connect-mobile-choices{display:flex;flex-wrap:wrap;gap:0 18px;margin-top:14px}.connect-mobile-choices a{display:inline-flex;align-items:center;min-height:44px;font:400 14px/1.6 var(--font-ui)}.connect-options{padding-bottom:28px}}
@media(max-width:600px){.connect-choices-page .connect-invitation{padding:28px 0 24px}.connect-choices-page .connect-main h1{font-size:36px}.connect-options h2{font-size:25px}.connect-option-card{padding:20px}.connect-main .connect-option-description{font-size:17px}.connect-main .connect-option-detail{font-size:14px}.connect-form-section{padding-bottom:44px}}
.connect-choices-page .connect-intro{line-height:1.65}
@media(max-width:600px){.connect-choices-page .connect-intro{font-size:16px;line-height:1.6}}
