/* SOS-specific UI. Brand fonts, colors, navigation and footer come from assets/site.css. */
.sos-hero{grid-template-columns:minmax(0,1fr) minmax(310px,.96fr);min-height:400px;gap:32px;background:linear-gradient(115deg,#eef7f8 0%,#f9f8f4 65%,#faece8 100%)}
.sos-hero h1{font-size:clamp(35px,4.5vw,53px);line-height:1.36;white-space:normal}
.sos-hero .hero-lead{font-size:clamp(17px,2.1vw,20px)}
.sos-hero-image{margin:0;min-width:0;display:flex;align-items:center;justify-content:center}
.sos-hero-image img{display:block;width:min(100%,420px);height:auto;object-fit:contain;object-position:center}
.sos-section{max-width:910px;margin-inline:auto;padding-top:73px}
.sos-section h2{margin-bottom:6px}
.sos-flow{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:28px 0 28px;color:#6f7a71;font-size:13px;font-weight:700}
.sos-flow span:not(.sos-flow-arrow){display:inline-flex;align-items:center;gap:8px;background:#eaf3ef;border:1px solid #dce9e1;border-radius:100px;padding:7px 14px}
.sos-flow b{display:flex;align-items:center;justify-content:center;width:21px;height:21px;background:#75a09b;border-radius:50%;color:white;font-size:11px}
.sos-flow-arrow{font-size:16px;color:#a2b2ad}
.sos-question{min-width:0;display:grid;grid-template-columns:96px minmax(0,1fr);gap:18px;padding:21px 23px;border:1px solid #e6e2da;background:white;border-radius:16px;margin-bottom:14px}
.sos-dog{display:flex;flex-direction:column;align-items:center;gap:6px;align-self:start;color:#897468;font-size:12px;font-weight:700}
.sos-dog-portrait{width:86px;height:92px;border-radius:12px;display:flex;align-items:center;justify-content:center;overflow:hidden}
.sos-dog-portrait img{display:block;width:auto;height:auto;max-width:96%;max-height:98%;object-fit:contain;object-position:center}
.sos-question-body{min-width:0}
.sos-question-title{display:block;font-size:16px;line-height:1.8;font-weight:750;color:#584b43;margin:4px 0 12px}
.sos-no{color:#598986;font-weight:800;font-size:15px;margin-right:9px;white-space:nowrap}
.sos-required{display:inline-block;white-space:nowrap;margin-left:5px;border-radius:4px;padding:1px 5px;color:#986a62;background:#f9e9e5;font-size:10px;font-weight:700;vertical-align:middle}
.sos-question textarea{display:block;width:100%;border:1px solid #d7d2c9;border-radius:9px;background:#fffdfa;color:#584b43;padding:13px 15px;min-height:83px;font-family:inherit;font-size:15px;line-height:1.8;resize:vertical}
.sos-question textarea::placeholder{color:#8b8179;opacity:1}
.sos-question textarea:focus,.sos-question input:focus-visible{outline:3px solid #b5dbd9;outline-offset:1px;border-color:#669997}
.sos-question textarea[aria-invalid="true"],.sos-consent:has(input[aria-invalid="true"]){border-color:#c37b6f}
.sos-radio-set{border:0;padding:0;margin:0;min-width:0}
.sos-radio-set legend{width:100%;float:none;margin:4px 0 13px}
.sos-options{display:flex;gap:9px;flex-wrap:wrap}
.sos-options label{display:inline-flex;align-items:center;gap:8px;padding:9px 15px;border:1px solid #e2ded4;border-radius:8px;background:#fdfcf8;min-height:46px;cursor:pointer;font-size:14px;font-weight:700}
.sos-options label:has(input:checked){background:#eaf2ed;border-color:#8aa999}
.sos-options input,.sos-consent input{accent-color:#517b68;flex-shrink:0;width:18px;height:18px}
.sos-consent{display:inline-flex;align-items:center;gap:10px;border-radius:9px;border:1px solid #dce8dd;background:#f5f9f5;padding:11px 16px;min-height:49px;cursor:pointer;font-size:16px;font-weight:750}
.sos-consent input{width:21px;height:21px}
.sos-hint{margin:10px 0 0;color:#83756d;font-size:12px;line-height:1.8}
.sos-submit-zone{text-align:center;padding:29px 0 4px}
.sos-submit{font:inherit;font-size:16px;font-weight:750;color:white;background:#527e6a;border:0;border-radius:9px;padding:14px 23px;min-height:51px;cursor:pointer}
.sos-submit:hover{background:#406a58}
.sos-submit:focus-visible,.sos-dialog button:focus-visible,.sos-dialog a:focus-visible{outline:3px solid #b5dbd9;outline-offset:3px}
.sos-send-note{font-size:12px;line-height:1.9;margin:14px auto 0;color:#81736b}
.sos-dialog{box-sizing:border-box;width:min(92vw,650px);border-radius:17px;border:1px solid #e1dbd2;padding:0;color:#584b43;background:#fffefa;box-shadow:0 16px 60px #33271d44;max-height:88dvh}
.sos-dialog::backdrop{background:#2c292b99}
.sos-dialog-content{padding:26px;max-height:88dvh;overflow:auto}
.sos-dialog-content h2{font-size:25px;line-height:1.4;margin:0 0 9px}
.sos-dialog-help{font-size:14px;line-height:1.7;margin:0 0 17px;color:#776c63}
#message-preview{white-space:pre-wrap;overflow-wrap:anywhere;font-family:inherit;font-size:14px;line-height:1.8;color:#50443d;background:#f8f7f3;border-radius:10px;border:1px solid #ebe6df;padding:17px;max-height:45dvh;overflow:auto}
#copy-status{min-height:1.4em;margin:8px 0 0;color:#346e52;font-size:13px}
.sos-dialog-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:stretch;margin-top:14px}
.sos-dialog-actions button,.sos-dialog-actions a{font-family:inherit;text-align:center;text-decoration:none;font-size:14px;font-weight:750;border-radius:8px;padding:12px 15px;min-height:46px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}
.sos-btn-sub{border:1px solid #dedad0;color:#5b695e;background:white}
.sos-btn-line{background:#06ad47;color:#fff;border:1px solid #06ad47;margin-left:auto}
.sos-btn-line:hover{background:#058f3a}
.sos-dialog-note{margin:17px 0 0;font-size:12px;line-height:1.8;color:#87796e}
@media(max-width:720px){.sos-hero{grid-template-columns:1fr;gap:15px;padding:29px 24px 22px}.sos-hero .hero-copy{text-align:left}.sos-hero-image img{width:min(100%,365px)}.sos-section{padding-top:59px}}
@media(max-width:620px){.sos-hero{padding:26px 19px 20px}.sos-hero h1{font-size:clamp(32px,8vw,42px)}.sos-hero-image img{width:min(100%,285px)}.sos-desktop-break{display:none}.sos-flow{gap:7px;font-size:11px;margin-top:18px}.sos-flow span:not(.sos-flow-arrow){padding:6px 8px;gap:4px}.sos-flow b{width:17px;height:17px;font-size:10px}.sos-flow-arrow{font-size:12px}.sos-question{grid-template-columns:68px minmax(0,1fr);gap:10px;padding:14px 12px;border-radius:12px}.sos-dog-portrait{width:64px;height:72px}.sos-dog{font-size:11px}.sos-question-title{font-size:15px;line-height:1.65;margin:2px 0 10px}.sos-no{font-size:12px;margin-right:4px}.sos-question textarea{font-size:14px;padding:11px 12px}.sos-options{gap:6px}.sos-options label{padding:7px 10px;font-size:13px}.sos-submit{font-size:14px;width:100%}.sos-dialog-content{padding:18px}.sos-dialog-content h2{font-size:21px}.sos-dialog-actions .sos-btn-line{order:-1;flex:1 1 100%;margin-left:0}.sos-dialog-actions .sos-btn-sub{flex:1 1 40%}}
@media(max-width:370px){.sos-flow{gap:4px}.sos-flow span:not(.sos-flow-arrow){padding:5px 6px}.sos-question{grid-template-columns:61px minmax(0,1fr);gap:8px;padding:13px 9px}.sos-dog-portrait{width:58px;height:65px}.sos-question-title{font-size:14px}.sos-required{font-size:9px;margin-left:0}.sos-options label{font-size:12px;padding:7px 8px}}
