/* Functional additions use the existing Iconic type, gold actions and surfaces. */
.sr-only,.button .sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important}
.intake-pair{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start}.care-requests{padding-top:16px}
.intake-card{min-width:0;padding:clamp(24px,3.5vw,48px);border:1px solid var(--line);border-radius:22px;background:#fff}
.intake-card:first-child{background:#f6e4ad66}.intake-card h2{font-size:clamp(27px,2.7vw,40px);line-height:1.18;min-height:1.2em}
.intake-card>.button{margin-top:26px}.intake-card details{margin-top:28px;border-top:1px solid #bdb5a6}
.intake-card summary{display:flex;justify-content:space-between;align-items:center;list-style:none;min-height:52px;padding:10px 0;font-weight:500;cursor:pointer}
.intake-card summary::-webkit-details-marker{display:none}.intake-card summary span{font-size:23px;transition:transform .2s}.intake-card details[open] summary span{transform:rotate(45deg)}
.intake-card details p{font-size:16px;line-height:1.7;padding:0 0 4px}.intake-card details[open] p{animation:intake-in .25s ease-out}
@keyframes intake-in{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:none}}
.flow-offices{width:min(850px,calc(100vw - 32px));max-height:calc(100dvh - 36px);overflow-y:auto}.flow-office-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.flow-office-grid article{min-width:0}.flow-office-grid h3{font-size:20px}.flow-office-grid .button{width:100%;padding:12px 16px;gap:8px;align-items:center}.flow-office-grid [hidden]{display:none!important}
/* Percent width excludes classic scrollbars; both safe-area gutters stay clear. */
#chat-dialog[data-live-chat]{--chat-gutter-left:max(16px,env(safe-area-inset-left));--chat-gutter-right:max(16px,env(safe-area-inset-right));position:fixed;inset:auto var(--chat-gutter-right) calc(94px + env(safe-area-inset-bottom)) auto;margin:0;z-index:85;box-sizing:border-box;min-width:0;width:min(400px,calc(100% - var(--chat-gutter-left) - var(--chat-gutter-right)));max-height:calc(100dvh - 125px);padding:30px 24px;overflow:auto}
#chat-dialog [hidden]{display:none!important}#chat-dialog [data-chat-heading] h2{padding-right:26px;font-size:25px}
.chat-office-choices{display:grid;gap:12px;margin-top:22px}.chat-office-choices .button{margin:0;width:100%}
#chat-dialog.is-connected{padding:0;height:min(620px,calc(100dvh - 125px))}#chat-dialog [data-chat-frame]{height:100%;width:100%}
#chat-dialog iframe{display:block;width:100%;height:100%;border:0;background:var(--cream)}
@media(max-width:700px){.intake-pair{grid-template-columns:1fr;gap:18px}.intake-card h2{min-height:0}.flow-office-grid{grid-template-columns:1fr;gap:22px}.flow-office-grid .button{margin-top:10px}.care-requests{padding-top:12px}}
@media(prefers-reduced-motion:reduce){.intake-card details[open] p{animation:none}.intake-card summary span{transition:none}}
.contact-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(32px,6vw,96px);align-items:start}
.contact-layout>div{min-width:0}.contact-layout h2{margin-bottom:20px}
.callback-open{margin-top:28px;background:transparent;border:0;border-bottom:1px solid currentColor;border-radius:0;padding-inline:0}
.office-select-label{display:block;font-size:16px;font-weight:600;margin-bottom:9px}
.office-select{width:100%;min-height:54px;padding:12px 16px;font:inherit;color:var(--ink);background:#fff;border:1px solid #8c887f;border-radius:8px}
.office-select:focus-visible,.contact-form input:focus-visible,.contact-form textarea:focus-visible{outline:3px solid #a05c00;outline-offset:3px}
.contact-form{margin-top:28px}.contact-form h3{font-size:22px;line-height:1.3;margin-bottom:12px}
.contact-form-intro{margin-bottom:22px}.contact-form fieldset{min-width:0;display:grid;grid-template-columns:1fr 1fr;gap:20px;border:0;padding:0;margin:22px 0}
.contact-form-field{min-width:0}.contact-form-field--wide{grid-column:1/-1}.contact-form-field label{display:block;font-size:16px;font-weight:500;margin-bottom:7px}
.contact-form-field input,.contact-form-field textarea{display:block;width:100%;min-width:0;padding:12px 14px;border:1px solid #8c887f;border-radius:8px;font:inherit;line-height:1.5;background:#fff;color:var(--ink)}
.contact-form-field input{min-height:52px}.contact-form-field textarea{resize:vertical;min-height:112px}
.contact-form-field p{font-size:16px!important;line-height:1.55;margin-top:7px}
.contact-form-consent{display:flex;align-items:flex-start;gap:12px;font-size:16px;line-height:1.6}
.contact-form-consent input{flex:none;width:22px;height:22px;margin:1px 0 0;accent-color:#81500b}
.contact-form>p:not(.contact-form-intro){font-size:16px!important;line-height:1.6;margin-top:14px}
.contact-form a{text-decoration:underline;text-underline-offset:3px}.contact-form button{margin-top:22px}
.contact-form button:disabled{opacity:.6;cursor:wait;transform:none}.contact-form fieldset:disabled{opacity:.7}
.callback-dialog{width:min(660px,calc(100vw - 32px));max-height:calc(100dvh - 40px);overflow-y:auto;padding:42px 32px 30px;overscroll-behavior:contain}
.callback-dialog h2{padding-right:20px}.callback-dialog .contact-form h3{font-size:20px}
@media(max-width:700px){.contact-layout{grid-template-columns:1fr;gap:30px}.contact-form fieldset{grid-template-columns:1fr;gap:18px}.callback-dialog{padding:42px 22px 26px}.contact-form button{width:100%;justify-content:center}}
