/* Phone forms share readable text, native keyboard hints and generous touch targets. */
form input[type="hidden"],form input[aria-hidden="true"]{display:none!important}
form input,form select,form textarea{box-sizing:border-box;min-width:0}
.ignite-interest-dialog{top:var(--ignite-viewport-top,0px);height:var(--ignite-viewport-height,100dvh);max-height:var(--ignite-viewport-height,100dvh);bottom:auto;-webkit-overflow-scrolling:touch;scroll-padding-block:100px 28px}
.ignite-interest-dialog .drawer-top{position:sticky;top:-1px;z-index:2;background:#4a0202;padding:12px 0 18px;margin-bottom:20px;border-bottom:1px solid #99645e}
.ignite-interest-dialog .drawer-close,.ignite-services-drawer .drawer-close{min-height:44px;min-width:64px;flex-shrink:0;touch-action:manipulation}
/* Form status lines take a full row below the form (Framer hosts forms in flex rows). */
[data-ignite-status-host]{flex-wrap:wrap!important;height:auto!important}
[data-ignite-status-host]>[data-form-status]{flex:0 0 100%!important}
[data-form-status]{flex:none!important;width:100%!important;max-width:100%!important;box-sizing:border-box;margin:16px 0 0!important;padding:0;font:500 15px/1.6 Inter,Arial,sans-serif!important;color:inherit;white-space:normal;overflow-wrap:anywhere;text-align:left}
[data-form-status="success"],[data-form-status="error"]{padding-left:14px!important;border-left:3px solid currentColor}
footer [data-form-status]{color:#fffff0!important}
@media(max-width:760px){
 form{max-width:100%;min-width:0}
 form input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([aria-hidden="true"]),form textarea,form select{font-size:16px!important;line-height:1.5!important;min-height:48px;max-width:100%}
 form input,form select,form textarea{scroll-margin-block:100px 32px}
 form input[type="date"],form input[type="time"]{width:100%;min-width:0;appearance:none;-webkit-appearance:none;text-align:left}
 form input::-webkit-date-and-time-value{text-align:left;min-height:24px}
 form textarea{min-height:120px;resize:vertical}
 form button[type="submit"],form input[type="submit"]{min-height:48px;touch-action:manipulation;white-space:normal}
 .ignite-interest-dialog{width:100%;max-width:100vw;padding:12px max(20px,env(safe-area-inset-right)) max(24px,env(safe-area-inset-bottom)) max(20px,env(safe-area-inset-left))}
 .ignite-interest-dialog .drawer-top h2{font-size:26px;min-width:0}
 .ignite-interest-dialog label{margin:0 0 20px}
 .ignite-interest-dialog input:not([type="hidden"]),.ignite-interest-dialog textarea{border-radius:8px;padding:13px 14px}
 .ignite-interest-dialog [type="submit"]{border-radius:8px}
 .ignite-interest-dialog form{margin-top:28px}
 .form-panel{min-width:0;border-radius:10px;padding:24px 20px}
 .booking-layout>*{min-width:0}
 .form-panel input:not([type="checkbox"]),.form-panel textarea{border-radius:8px}
 .form-panel .consent{min-height:44px;align-items:flex-start;gap:12px}
 .form-panel .consent input{width:24px;height:24px;min-width:24px;margin-top:0}
 .form-panel .consent span{font-size:14px;line-height:1.6}
 .form-panel button[type="submit"]{border-radius:8px}
 .choices a{min-height:56px;align-items:center;flex-wrap:wrap;gap:8px 16px}
 .choices strong{white-space:nowrap}
 [data-framer-name="Form Wrap"],[data-framer-name="Form"]{max-width:100%;min-width:0;height:auto!important}
 form [data-framer-name="Fields"]{display:flex!important;flex-direction:column!important;gap:24px!important;height:auto!important;min-width:0}
 form [data-framer-name="Fields"]>label{width:100%!important;min-width:0;height:auto!important}
 form .framer-form-input-wrapper{width:100%!important;min-width:0;height:auto!important;min-height:48px}
 form .framer-form-input-wrapper:has(textarea){min-height:120px}
 form .framer-form-input{padding:12px!important;color:#4a0202!important}
 form [data-framer-name="Fields"] p{font-size:14px!important;line-height:1.5!important}
 form:has([data-framer-name="Fields"]){gap:28px!important;height:auto!important}
 footer [data-framer-name="Input"]{height:auto!important;min-height:52px}
 footer form[data-ignite-newsletter]{gap:12px!important;align-items:center!important;min-height:52px}
 footer form[data-ignite-newsletter]>div{position:static!important;flex-shrink:0;height:auto!important}
 footer form[data-ignite-newsletter] input[type="email"]{width:100%!important;flex:1;min-width:0;padding:12px 0!important;border-radius:0!important}
 footer form[data-ignite-newsletter] input[type="submit"]{width:auto!important;min-width:64px;height:48px!important;padding:10px 14px!important;border-radius:8px!important;color:#4a0202!important;font-weight:600!important}
 [data-form-status]{font-size:16px!important;scroll-margin-block:96px 28px}
}
@media(max-width:360px){.form-panel{padding:20px 16px}.ignite-interest-dialog .drawer-top h2{font-size:24px}.drawer-top{gap:12px}}
/* Footer newsletter: a clear "Join" pill on every screen size (Framer's was a 20px dot). */
footer form[data-ignite-newsletter]{display:flex!important;align-items:center!important;gap:12px!important}
footer form[data-ignite-newsletter]>div{position:static!important;flex-shrink:0;height:auto!important}
footer form[data-ignite-newsletter] input[type="email"]{flex:1;min-width:0;width:100%!important}
footer form[data-ignite-newsletter] input[type="submit"]{width:auto!important;min-width:64px;height:36px!important;padding:0 18px!important;border-radius:999px!important;color:#4a0202!important;font:600 14px/1 Inter,Arial,sans-serif!important;letter-spacing:0!important;transition:background-color .2s}
footer form[data-ignite-newsletter] input[type="submit"]:hover{background:#d8c7b7!important}
footer form[data-ignite-newsletter] input[type="submit"]:focus-visible{outline:2px solid #fffff0;outline-offset:3px}
/* Successful sends get the IGNITE rocket, rising into place beside the confirmation. */
[data-form-status="success"]{position:relative;border-left:0!important;padding-left:26px!important}
[data-form-status="success"]::before{content:'';position:absolute;left:2px;top:.15em;width:12px;height:22px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 44'%3E%3Cpath d='M6 17.5V11C6 6 8.4 2.3 12 .5c3.6 1.8 6 5.5 6 10.5v6.5z'/%3E%3Cpath d='M6 19h12v5.2c0 .7-.6 1.3-1.3 1.3H7.3c-.7 0-1.3-.6-1.3-1.3z'/%3E%3Cpath fill-rule='evenodd' d='M12 42c-1.2-2-4.5-5.6-4.5-10.5a4.5 4.5 0 0 1 9 0c0 4.9-3.3 8.5-4.5 10.5zm0-12.3a1.8 1.8 0 1 0 0 3.6 1.8 1.8 0 0 0 0-3.6z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 44'%3E%3Cpath d='M6 17.5V11C6 6 8.4 2.3 12 .5c3.6 1.8 6 5.5 6 10.5v6.5z'/%3E%3Cpath d='M6 19h12v5.2c0 .7-.6 1.3-1.3 1.3H7.3c-.7 0-1.3-.6-1.3-1.3z'/%3E%3Cpath fill-rule='evenodd' d='M12 42c-1.2-2-4.5-5.6-4.5-10.5a4.5 4.5 0 0 1 9 0c0 4.9-3.3 8.5-4.5 10.5zm0-12.3a1.8 1.8 0 1 0 0 3.6 1.8 1.8 0 0 0 0-3.6z'/%3E%3C/svg%3E") center/contain no-repeat;animation:ignite-status-liftoff 1.1s cubic-bezier(.2,.8,.2,1) both}
@keyframes ignite-status-liftoff{0%{transform:translateY(14px);opacity:0}35%{opacity:1}70%{transform:translateY(-3px)}100%{transform:none;opacity:1}}
@media(prefers-reduced-motion:reduce){[data-form-status="success"]::before{animation:none}}
/* Privacy notice under forms, the footer privacy link and the (usually invisible) Turnstile check. */
.ignite-form-note{flex:none!important;width:100%;margin:14px 0 0!important;font:400 13px/1.55 Inter,Arial,sans-serif!important;color:inherit;opacity:.8;text-align:left;letter-spacing:0}
.ignite-form-note a,.ignite-footer-legal{color:inherit!important;text-decoration:underline!important;text-underline-offset:3px}
.ignite-form-note a:focus-visible,.ignite-footer-legal:focus-visible{outline:2px solid currentColor;outline-offset:2px}
.ignite-turnstile{position:fixed;left:50%;bottom:16px;transform:translateX(-50%);z-index:60}
/* The footer copyright line is single-line in Framer; let it wrap in its column with the policy link below. */
footer [data-framer-component-type="RichTextContainer"]:has(.ignite-footer-legal){white-space:normal!important;width:100%!important;max-width:100%!important;height:auto!important}
footer p:has(.ignite-footer-legal){white-space:normal!important}
.ignite-footer-legal{display:block;width:fit-content;margin-top:4px}
