.contact-card{border-top:1px solid #b9afc5;margin-top:30px;padding-top:25px}.contact-heading{font:400 34px/1.05 var(--display);margin-bottom:14px}.contact-intro,.contact-privacy,.contact-alternative{font:400 12px/1.8 var(--font);margin:14px 0;color:#615a66}.contact-fields{border:0;padding:0;margin:0;min-width:0}.contact-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.contact-field{margin:14px 0;display:grid;gap:8px}.contact-label{font-size:12px;font-weight:650}.contact-input{width:100%;padding:13px;border:1px solid #c2b9c7;border-radius:0;background:#fff;font:400 15px var(--font);color:#252525;min-height:46px}.contact-input:focus{outline:2px solid #496bdb;outline-offset:2px}.contact-submit{background:#496bdb;color:white;border:1px solid #496bdb;min-height:48px}.contact-submit:disabled{opacity:.55;cursor:wait}.contact-status{font-size:13px;line-height:1.8;padding:12px 0}.contact-card[data-state=error] .contact-status{color:#a12618}.contact-card[data-state=success] .contact-status{color:#32694b}.contact-alternative a{color:#405ab3;text-decoration:underline}.contact-honeypot{display:none!important}.sr-only{position:absolute;width:1px;height:1px;clip:rect(0,0,0,0);overflow:hidden;white-space:nowrap}.contact-card button:focus-visible{outline:2px solid #252525;outline-offset:3px}@media(max-width:520px){.contact-row{grid-template-columns:1fr;gap:0}.contact-heading{font-size:30px}.contact-input{font-size:16px}}
/* Persistent contact choices, kept below navigation and native dialogs. */
.contact-dock{position:fixed;right:max(26px,env(safe-area-inset-right));bottom:calc(24px + env(safe-area-inset-bottom));z-index:60;isolation:isolate;view-transition-name:contact-dock}
::view-transition-group(contact-dock),::view-transition-new(contact-dock){animation:none}
::view-transition-old(contact-dock){display:none}
.contact-dock[hidden],.contact-dock-options[hidden],.contact-dock-toggle[hidden]{display:none!important}
.contact-dock-toggle,.contact-dock-action{display:flex;align-items:center;justify-content:center;position:relative;cursor:pointer;padding:0;border-radius:50%;text-decoration:none;transition:background .18s,transform .18s,box-shadow .18s}
.contact-dock-toggle{width:64px;height:64px;border:3px solid #f5f3ed;background:#405ab3;color:#fff;box-shadow:0 6px 24px #26356b45,0 0 0 1px #405ab338}
.contact-dock-toggle svg{width:29px;height:29px}
.contact-dock-toggle:hover{background:#30488f;transform:translateY(-2px);box-shadow:0 9px 28px #26356b55}
.contact-dock-close{display:none}
.contact-dock-toggle[aria-expanded=true] .contact-dock-chat{display:none}
.contact-dock-toggle[aria-expanded=true] .contact-dock-close{display:block}
.contact-dock-options{position:absolute;right:0;bottom:calc(100% + 12px);display:grid;gap:8px;padding:7px;background:#f5f3ed;border:1px solid #d4d1c9;border-radius:36px;box-shadow:0 10px 35px #27243122;animation:contact-reveal .2s ease-out}
.contact-dock-action{width:48px;height:48px;border:1px solid #d8d5ce;background:#fff;color:#405ab3}
.contact-dock-action svg{width:23px;height:23px}
.contact-dock-whatsapp{color:#18784b}
.contact-dock-call{color:#46444c}
.contact-dock-action:hover{background:#e6e9f6;transform:translateY(-1px)}
.contact-dock-whatsapp:hover{background:#e2f2e8}
.contact-dock-toggle:focus-visible,.contact-dock-action:focus-visible{outline:3px solid #222;outline-offset:4px}
.contact-dock-tip{position:absolute;right:calc(100% + 14px);top:50%;transform:translateY(-50%);background:#252525;color:#fff;padding:8px 12px;border-radius:6px;font:600 12px/1.4 var(--font);white-space:nowrap;opacity:0;visibility:hidden;pointer-events:auto;transition:opacity .15s}
.contact-dock-toggle:focus-visible .contact-dock-tip,.contact-dock-action:focus-visible .contact-dock-tip{opacity:1;visibility:visible}
.contact-dock-tip::after{content:"";position:absolute;left:100%;top:0;width:14px;height:100%}
.contact-dock-toggle[aria-expanded=true] .contact-dock-tip,.contact-tips-dismissed .contact-dock-tip{display:none}
@media(hover:hover){.contact-dock-toggle:hover .contact-dock-tip,.contact-dock-action:hover .contact-dock-tip{opacity:1;visibility:visible}}
body:has(.nav-overlay.open) .contact-dock,body:has(.brief-dialog[open]) .contact-dock{visibility:hidden;pointer-events:none}
@media(max-width:800px){body:has(.contact-dock) .footer{padding-bottom:100px}}
/* The desktop rail earns its space with three always-available contact actions. */
@media(min-width:801px){
 .side-rail .rail-word,.radical-header .header-talk{display:none}
 .contact-dock{left:0;right:auto;top:50%;bottom:auto;width:var(--rail);transform:translateY(-50%)}
 .contact-dock-options{position:static;width:100%;justify-items:center;gap:14px;padding:20px 0;background:transparent;border:0;border-radius:0;box-shadow:none;animation:none}
 .contact-dock-options::before,.contact-dock-options::after{content:"";width:24px;height:1px;background:#c7c3b9}
 .contact-dock-action{border-radius:13px;background:#f5f3ed;border-color:#d0ccc2;color:#586171}
 .contact-dock-form{background:#405ab3;border-color:#405ab3;color:#fff}
 .contact-dock-action:hover{background:#dddaeb;border-color:#b4adc6;color:#30488f;transform:translateX(2px)}
 .contact-dock-form:hover{background:#30488f;border-color:#30488f;color:#fff}
 .contact-dock-action:focus-visible{outline-width:2px;outline-offset:2px}
 .contact-dock-tip{left:calc(100% + 14px);right:auto}
 .contact-dock-tip::after{left:auto;right:100%}
}
@media(min-width:801px) and (max-height:450px){.side-rail .rail-bottom{display:none}}
@media(min-width:801px) and (max-height:360px){.side-rail{padding-top:14px}.contact-dock{top:calc(50% + 22px)}.contact-dock-options{gap:8px;padding-block:8px}}
@keyframes contact-reveal{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:520px){.contact-dock{right:max(16px,env(safe-area-inset-right));bottom:calc(16px + env(safe-area-inset-bottom))}.contact-dock-toggle{width:60px;height:60px}.contact-dock-options{right:-2px}}
@media(prefers-reduced-motion:reduce){.contact-dock-options{animation:none}.contact-dock-toggle,.contact-dock-action,.contact-dock-tip{transition:none}}
