/* SurveyAll homepage 1.8.0. Deliberately isolated from .hero/.navbar/.sa-* rules.
   Layout controls stay in CSS grid flow; only the decorative scene is absolute. */
#sah-home, #sah-header, #sah-guide { font-family: Inter, 'Open Sans', Arial, sans-serif; }
#sah-home *, #sah-header *, #sah-guide * { box-sizing: border-box; }
#sah-home { --sah-ink:#12324d; --sah-navy:#032a45; color:var(--sah-ink); }
#sah-home .sah-icon, #sah-header .sah-icon { display:block; width:24px; height:24px; flex-shrink:0; }
#sah-home a, #sah-header a { text-decoration:none; }
#sah-home a:focus-visible, #sah-header a:focus-visible, #sah-header summary:focus-visible,
#sah-home button:focus-visible, #sah-header button:focus-visible { outline:3px solid #77eadc; outline-offset:4px; }
#sah-header { position:relative; top:auto; z-index:1100; background:#03253f; color:#fff; padding:0; margin:0; }
#sah-header .sah-header-inner { width:calc(100% - 10vw); max-width:1320px; margin:auto; display:flex; align-items:center; gap:28px; min-height:80px; }
#sah-header .sah-brand { margin-right:auto; display:block; flex-shrink:0; }
#sah-header .sah-brand img { display:block; width:104px; height:70px; object-fit:contain; }
#sah-header .sah-nav-list { list-style:none; margin:0; padding:0; display:flex; align-items:center; gap:26px; }
#sah-header .sah-nav-item { margin:0; padding:0; position:relative; }
#sah-header .sah-nav-item > a, #sah-header .sah-nav-dropdown > summary { font:500 15px/1.4 Inter,'Open Sans',Arial,sans-serif; color:#eef5fb; padding:12px 0; cursor:pointer; white-space:nowrap; }
#sah-header .sah-nav-item a:hover { color:#79e1d7; }
#sah-header .sah-nav-dropdown > summary { display:flex; align-items:center; gap:5px; list-style:none; }
#sah-header summary::-webkit-details-marker { display:none; }
#sah-header summary .sah-icon { width:10px; height:10px; transform:rotate(90deg); }
#sah-header details[open] summary .sah-icon { transform:rotate(-90deg); }
#sah-header .sah-nav-dropdown > ul { position:absolute; top:100%; right:0; min-width:270px; max-width:340px; max-height:65vh; overflow:auto; margin:0; padding:8px; background:#fff; color:#163b56; list-style:none; border-radius:10px; box-shadow:0 10px 35px #00162944; }
#sah-header .sah-nav-dropdown li { margin:0; padding:0; }
#sah-header .sah-nav-dropdown li a { display:block; font:400 14px/1.4 Inter,Arial,sans-serif; padding:10px 12px; color:#17384f; border-radius:6px; }
#sah-header .sah-nav-dropdown li a:hover { background:#edf7f7; color:#077e77; }
#sah-header .sah-phone { display:flex; align-items:center; gap:7px; color:#fff; font:700 16px/1.2 Inter,Arial,sans-serif; white-space:nowrap; }
#sah-header .sah-phone .sah-icon { width:17px; height:17px; }
#sah-header .sah-book { display:flex; align-items:center; justify-content:center; flex-shrink:0; gap:9px; color:#fff; border:1px solid #c4deec; border-radius:13px; min-height:46px; padding:10px 17px; font:600 15px/1.2 Inter,Arial,sans-serif; white-space:nowrap; background:#ffffff05; }
#sah-header .sah-book .sah-icon { width:19px; height:19px; }
#sah-header .sah-book:hover { background:#ffffff15; }
#sah-header .sah-menu-toggle { display:none; border:0; background:none; color:white; min-width:40px; min-height:44px; padding:7px; cursor:pointer; }
#sah-header .sah-skip { position:absolute; top:-150px; left:20px; background:#fff; color:#052d49; padding:10px 18px; }
#sah-header .sah-skip:focus { top:10px; z-index:2; }
#sah-home .sah-shell { width:calc(100% - 10vw); max-width:1320px; margin-inline:auto; }
#sah-home .sah-hero { position:relative; isolation:isolate; padding:0; margin:0; overflow:hidden; background:radial-gradient(ellipse at 68% 0%,#074166 0%,#033453 42%,#032a45 85%); color:#fff; }
#sah-home .sah-scene { position:absolute; z-index:-1; top:0; right:0; width:54%; max-width:850px; pointer-events:none; user-select:none; }
#sah-home .sah-scene picture { display:block; }
#sah-home .sah-scene img { width:100%; height:auto; display:block; max-width:none; opacity:1; filter:none; }
#sah-home .sah-layout { position:relative; display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); grid-template-rows:auto auto auto auto; column-gap:clamp(28px,4.8vw,70px); row-gap:19px; padding-block:32px 28px; }
#sah-home .sah-intro { grid-column:1; grid-row:1; min-width:0; }
#sah-home .sah-kicker { color:#72d8d0; text-transform:uppercase; font:700 12px/1.4 Inter,Arial,sans-serif; letter-spacing:.14em; margin:0 0 12px; }
#sah-home #sah-title { font-family:Inter,'Open Sans',Arial,sans-serif; font-size:clamp(36px,4.0vw,58px); line-height:1.04; letter-spacing:-.025em; font-weight:600; color:#fff; margin:0 0 18px; padding:0; }
#sah-home #sah-title span { display:block; white-space:nowrap; }
#sah-home .sah-lead { font:500 17px/1.55 Inter,'Open Sans',Arial,sans-serif; color:#eef6fc; margin:0; max-width:610px; }
#sah-home .sah-services { grid-column:1; grid-row:2; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:11px 12px; min-width:0; }
#sah-home .sah-service { min-width:0; display:grid; grid-template-columns:42px minmax(0,1fr) 14px; gap:12px; align-items:center; padding:13px 16px; min-height:78px; border:1px solid #ffffff55; border-radius:12px; color:#fff; box-shadow:inset 0 0 0 1px #ffffff08; }
#sah-home .sah-service:hover { color:#fff; border-color:#ffffffbb; box-shadow:0 3px 14px #0002; }
#sah-home .sah-service .sah-service-icon { width:39px; height:39px; }
#sah-home .sah-service-copy { min-width:0; }
#sah-home .sah-service strong { display:block; font:600 15px/1.23 Inter,'Open Sans',Arial,sans-serif; }
#sah-home .sah-service small { display:block; margin-top:5px; font:400 12px/1.25 Inter,'Open Sans',Arial,sans-serif; }
#sah-home .sah-arrow { width:15px; height:19px; }
#sah-home .sah-blue { background:linear-gradient(115deg,#006cdb,#0578e5); }
#sah-home .sah-purple { background:linear-gradient(110deg,#5520a4,#6b24b8); }
#sah-home .sah-orange { background:linear-gradient(110deg,#e55d00,#f07900); }
#sah-home .sah-green { background:linear-gradient(110deg,#099841,#16a350); }
#sah-home .sah-teal { background:linear-gradient(110deg,#008ca4,#049eb2); }
#sah-home .sah-slate { background:linear-gradient(110deg,#496785,#587792); }
#sah-home .sah-credentials { grid-column:1; grid-row:3; display:flex; flex-wrap:wrap; gap:8px; }
#sah-home .sah-credentials > span { display:flex; align-items:center; gap:6px; border:1px solid #bcd4e490; border-radius:25px; padding:9px 10px; font:400 11px/1.15 Inter,Arial,sans-serif; white-space:nowrap; background:#ffffff07; }
#sah-home .sah-credentials .sah-icon { width:15px; height:15px; }
#sah-home .sah-assistance { grid-column:2; grid-row:2 / 4; align-self:end; justify-self:start; width:min(100%,430px); padding-left:14px; }
#sah-home .sah-handwriting { display:block; width:88px; height:95px; object-fit:contain; margin:0 0 13px -6px; }
#sah-home .sah-help { display:grid; grid-template-columns:44px minmax(0,1fr) 15px; align-items:center; gap:12px; width:100%; min-height:80px; background:#fff; color:#0a827d; border:1px solid #dae4e9; border-radius:13px; padding:12px 18px; box-shadow:0 8px 23px #001b3330; cursor:pointer; text-align:left; }
#sah-home .sah-help-symbol .sah-icon { width:43px; height:43px; color:#049d89; }
#sah-home .sah-help-copy { min-width:0; }
#sah-home .sah-help strong { display:block; font:700 21px/1.2 Inter,Arial,sans-serif; color:#00837e; }
#sah-home .sah-help small { display:block; font:400 12.5px/1.35 Inter,Arial,sans-serif; color:#435a70; margin-top:4px; }
#sah-home .sah-help:hover { background:#f4fffd; box-shadow:0 10px 30px #001b3355; }
#sah-home .sah-trust-logos { grid-column:1; grid-row:4; display:flex; align-items:center; gap:24px; }
#sah-home .sah-trust-logos a { display:block; }
#sah-home .sah-trust-logos img { display:block; object-fit:contain; max-width:100%; }
#sah-home .sah-rics { width:158px; height:53px; }
#sah-home .sah-google { width:157px; height:55px; }
#sah-home .sah-location { grid-column:2; grid-row:4; align-self:center; justify-self:end; display:flex; align-items:flex-start; gap:8px; color:#fff; }
#sah-home .sah-location .sah-icon { width:23px; height:27px; color:#ff9035; }
#sah-home .sah-location strong { display:block; font:600 14px/1.35 Inter,Arial,sans-serif; }
#sah-home .sah-location small { display:block; font:400 10.5px/1.5 Inter,Arial,sans-serif; margin-top:3px; color:#deebf4; }
#sah-home .sah-proof-strip { padding:0; margin:0; overflow:visible; background:#f5f7fa; }
#sah-home .sah-proof-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); padding-block:23px; }
#sah-home .sah-proof { display:flex; align-items:center; gap:17px; justify-content:center; padding:0 12px; border-right:1px solid #d6e0e9; }
#sah-home .sah-proof:last-child { border:0; }
#sah-home .sah-proof .sah-icon { width:49px; height:49px; color:#3e5e7a; }
#sah-home .sah-proof strong { display:block; font:700 18px/1.2 Inter,Arial,sans-serif; color:#19354f; }
#sah-home .sah-proof small { display:block; font:400 13px/1.5 Inter,Arial,sans-serif; margin-top:4px; color:#334e69; }
#sah-home .sah-section-intro { display:flex; align-items:center; justify-content:space-between; gap:28px; padding-block:45px 5px; }
#sah-home .sah-eyebrow { font:700 12px/1.5 Inter,Arial,sans-serif; letter-spacing:.1em; text-transform:uppercase; color:#00867e; margin:0 0 5px; }
#sah-home .sah-section-intro h2 { color:#15344e; font:700 clamp(25px,2.6vw,39px)/1.2 'Libre Baskerville',Georgia,serif; letter-spacing:-.025em; margin:0; }
#sah-home .sah-section-intro > a { flex-shrink:0; color:#006ee1; font:600 15px/1.4 Inter,Arial,sans-serif; }
.sah-success-heading { font-size:1.9rem; }
/* Native dialog uses the browser top layer, not a fragile page z-index overlay. */
#sah-guide { padding:0; border:0; border-radius:18px; width:min(640px,calc(100% - 32px)); max-height:calc(100dvh - 32px); overflow:auto; color:#15384f; background:#fff; box-shadow:0 20px 80px #001b3366; }
#sah-guide:not([open]) { display:none; }
#sah-guide::backdrop { background:rgba(0,20,37,.75); }
#sah-guide .sah-guide-panel { position:relative; padding:30px; }
#sah-guide .sah-guide-close { position:absolute; right:14px; top:11px; width:40px; height:40px; font:400 30px/1 Arial,sans-serif; border:0; background:transparent; color:#1b3c53; cursor:pointer; }
#sah-guide .sah-guide-eyebrow { font:700 12px/1.3 Inter,Arial,sans-serif; color:#008879; text-transform:uppercase; letter-spacing:.07em; margin:0 35px 8px 0; }
#sah-guide .sah-guide-progress { color:#62788a; font-size:12px; margin:0 0 15px; }
#sah-guide h2 { font:600 25px/1.25 Inter,Arial,sans-serif; color:#10364f; margin:0 25px 12px 0; }
#sah-guide #sah-guide-description { font:400 15px/1.5 Inter,Arial,sans-serif; color:#466174; margin:0 0 18px; }
#sah-guide .sah-guide-choices { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
#sah-guide .sah-guide-choice { text-align:left; border:1px solid #bdcfd9; background:#f5fafb; color:#16455b; border-radius:10px; min-height:62px; padding:13px 15px; font:600 14px/1.4 Inter,Arial,sans-serif; cursor:pointer; }
#sah-guide .sah-guide-choice:hover { border-color:#0b9c90; background:#eaf7f4; }
#sah-guide a:focus-visible, #sah-guide button:focus-visible { outline:3px solid #008b81; outline-offset:3px; }
#sah-guide .sah-guide-result { background:#eef8f5; padding:18px; border-radius:12px; }
#sah-guide .sah-guide-result p { margin:0 0 12px; font-size:15px; line-height:1.5; }
#sah-guide .sah-guide-result a { display:inline-flex; align-items:center; justify-content:center; background:#067e74; color:#fff; border-radius:9px; font:600 14px/1.3 Inter,Arial,sans-serif; padding:13px 17px; text-decoration:none; min-height:46px; }
#sah-guide .sah-guide-result .sah-guide-more { background:none; color:#0a6e71; text-decoration:underline; }
#sah-guide [hidden] { display:none!important; }
#sah-guide .sah-guide-controls { display:flex; gap:15px; margin:14px 0; }
#sah-guide .sah-guide-controls button { border:1px solid #c2d2dd; background:#fff; border-radius:7px; color:#24485e; padding:10px 14px; cursor:pointer; font:500 13px/1.3 Inter,Arial,sans-serif; min-height:42px; }
#sah-guide .sah-guide-fast { display:flex; flex-wrap:wrap; gap:8px 18px; padding-top:16px; border-top:1px solid #dce7ec; }
#sah-guide .sah-guide-fast a { color:#007c73; font:600 12px/1.5 Inter,Arial,sans-serif; text-decoration:underline; padding:5px 0; }
#sah-guide .sah-guide-footnote { color:#5b7080; font:400 11.5px/1.5 Inter,Arial,sans-serif; margin:15px 0 0; }
@media (max-width:1250px) {
 #sah-header .sah-header-inner { gap:18px; }
 #sah-header .sah-nav-list { gap:18px; }
 #sah-header .sah-phone { font-size:14px; }
 #sah-home .sah-layout { column-gap:30px; }
 #sah-home .sah-service { grid-template-columns:32px minmax(0,1fr) 12px; gap:9px; padding:12px; }
 #sah-home .sah-service .sah-service-icon { width:30px; height:30px; }
 #sah-home .sah-service strong { font-size:13px; }
 #sah-home .sah-service small { font-size:11px; }
 #sah-home .sah-help strong { font-size:19px; }
 #sah-home .sah-lead { font-size:15px; }
 #sah-home .sah-credentials > span { font-size:10px; padding:7px 8px; }
 #sah-home .sah-assistance { padding-left:8px; }
}
@media (max-width:1080px) {
 #sah-header .sah-header-inner { min-height:74px; gap:18px; position:relative; }
 #sah-header .sah-brand img { width:94px; height:64px; }
 #sah-header .sah-menu-toggle { display:block; }
 #sah-header #sah-navigation { display:none; position:absolute; top:100%; left:0; right:0; max-height:calc(100dvh - 100px); overflow:auto; padding:15px 20px; background:#03253f; box-shadow:0 12px 25px #001e3540; border-radius:0 0 12px 12px; }
 #sah-header #sah-navigation[data-open="true"] { display:block; }
 #sah-header .sah-nav-list { display:block; }
 #sah-header .sah-nav-item { padding:4px 0; }
 #sah-header .sah-nav-item > a, #sah-header .sah-nav-dropdown > summary { display:flex; justify-content:space-between; padding:10px 4px; }
 #sah-header .sah-nav-dropdown > ul { position:static; max-width:none; min-width:0; background:#fff; margin-block:6px; max-height:none; }
 #sah-header .sah-book { margin-left:0; }
 #sah-home #sah-title { font-size:clamp(30px,4.1vw,44px); }
 #sah-home .sah-scene { height:100%; width:50%; -webkit-mask-image:linear-gradient(transparent 0,#000 30px,#000 calc(100% - 140px),transparent 100%); mask-image:linear-gradient(transparent 0,#000 30px,#000 calc(100% - 140px),transparent 100%); }
 #sah-home .sah-scene picture, #sah-home .sah-scene img { height:100%; object-fit:cover; object-position:left top; }
 #sah-home .sah-proof strong { font-size:15px; }
 #sah-home .sah-proof small { font-size:11px; }
 #sah-home .sah-proof .sah-icon { width:38px; height:38px; }
}
@media (min-width:700px) and (max-width:900px) {
 #sah-home .sah-shell { width:calc(100% - 48px); }
 #sah-home .sah-layout { grid-template-columns:minmax(0,1.1fr) minmax(0,1fr); gap:17px 24px; }
 #sah-home .sah-lead { font-size:14px; }
 #sah-home .sah-service { min-height:78px; padding:10px; grid-template-columns:25px minmax(0,1fr) 10px; gap:8px; }
 #sah-home .sah-service .sah-service-icon { width:25px; height:25px; }
 #sah-home .sah-service strong { font-size:12px; }
 #sah-home .sah-service small { font-size:10px; }
 #sah-home .sah-help { padding:12px; grid-template-columns:34px minmax(0,1fr) 12px; gap:9px; }
 #sah-home .sah-help-symbol .sah-icon { width:34px; height:34px; }
 #sah-home .sah-help strong { font-size:17px; }
 #sah-home .sah-help small { font-size:11px; }
 #sah-home .sah-location small { font-size:10px; }
}
@media (max-width:699px) {
 #sah-header .sah-header-inner { width:calc(100% - 32px); gap:10px; min-height:72px; }
 #sah-header .sah-brand img { width:82px; height:59px; }
 #sah-header .sah-phone { display:none; }
 #sah-header .sah-book { padding:10px 12px; min-height:42px; font-size:12px; gap:7px; border-radius:11px; }
 #sah-header .sah-book .sah-icon { width:17px; height:17px; }
 #sah-header .sah-menu-toggle { padding:6px; min-width:35px; }
 #sah-home .sah-shell { width:calc(100% - 32px); }
 #sah-home .sah-hero { background:radial-gradient(ellipse at 85% 12%,#064363 0%,#032c47 50%,#03243d 88%); }
 #sah-home .sah-scene { top:25px; right:-4%; width:54%; max-width:340px; height:auto; -webkit-mask-image:none; mask-image:none; }
 #sah-home .sah-scene picture, #sah-home .sah-scene img { height:auto; }
 #sah-home .sah-layout { padding-block:22px 20px; grid-template-columns:minmax(0,60%) minmax(0,1fr); grid-template-rows:repeat(5,auto); column-gap:10px; row-gap:15px; }
 #sah-home .sah-intro { grid-column:1 / -1; grid-row:1; width:55%; max-width:335px; }
 #sah-home .sah-kicker { font-size:clamp(8px,2.1vw,10px); letter-spacing:.1em; margin-bottom:10px; white-space:nowrap; }
 #sah-home #sah-title { font-size:clamp(21px,5.7vw,34px); line-height:1.07; font-weight:600; letter-spacing:-.025em; margin-bottom:12px; }
 #sah-home .sah-lead { font-size:clamp(12px,3.1vw,15px); line-height:1.5; font-weight:400; }
 #sah-home .sah-services { grid-column:1; grid-row:2; grid-template-columns:1fr; gap:7px; }
 #sah-home .sah-service { min-height:55px; border-radius:9px; padding:9px 10px; grid-template-columns:29px minmax(0,1fr) 10px; gap:9px; }
 #sah-home .sah-service .sah-service-icon { width:28px; height:28px; }
 #sah-home .sah-service strong { font-size:11.5px; line-height:1.2; }
 #sah-home .sah-service small { font-size:10px; line-height:1.3; margin-top:3px; }
 #sah-home .sah-arrow { width:11px; height:16px; }
 #sah-home .sah-credentials { display:none; }
 #sah-home .sah-assistance { display:contents; }
 #sah-home .sah-handwriting { grid-column:2; grid-row:2; align-self:start; justify-self:start; width:min(70px,90%); height:auto; margin:64px 0 0; }
 #sah-home .sah-help { grid-column:1 / -1; grid-row:3; width:100%; min-height:67px; border-radius:11px; padding:12px; grid-template-columns:38px minmax(0,1fr) 13px; gap:10px; }
 #sah-home .sah-help-symbol .sah-icon { width:36px; height:36px; }
 #sah-home .sah-help strong { font-size:18px; }
 #sah-home .sah-help small { font-size:11px; }
 #sah-home .sah-trust-logos { grid-column:1 / -1; grid-row:4; justify-content:center; gap:22px; padding-top:1px; }
 #sah-home .sah-rics { width:135px; height:45px; }
 #sah-home .sah-google { width:134px; height:48px; }
 #sah-home .sah-location { grid-column:1 / -1; grid-row:5; justify-self:center; align-self:center; }
 #sah-home .sah-location strong { font-size:13px; }
 #sah-home .sah-location small { font-size:10px; }
 #sah-home .sah-location .sah-icon { width:22px; height:26px; }
 #sah-home .sah-proof-grid { width:100%; padding-block:15px; }
 #sah-home .sah-proof { padding:0 5px; flex-direction:column; gap:7px; text-align:center; }
 #sah-home .sah-proof .sah-icon { width:29px; height:29px; }
 #sah-home .sah-proof strong { font-size:10.5px; }
 #sah-home .sah-proof small { font-size:9px; line-height:1.4; }
 #sah-home .sah-section-intro { display:block; padding-block:28px 0; }
 #sah-home .sah-section-intro h2 { font-size:26px; }
 #sah-home .sah-section-intro > a { display:inline-block; margin-top:14px; font-size:13px; }
 #sah-guide { width:calc(100% - 24px); max-height:calc(100dvh - 24px); }
 #sah-guide .sah-guide-panel { padding:24px 18px; }
 #sah-guide h2 { font-size:23px; }
 #sah-guide .sah-guide-choices { grid-template-columns:1fr; gap:8px; }
 #sah-guide .sah-guide-choice { min-height:50px; padding:10px 12px; }
}
@media (max-width:359px) {
 #sah-header .sah-brand img { width:74px; }
 #sah-header .sah-book { font-size:11px; padding:9px; }
 #sah-home .sah-shell { width:calc(100% - 24px); }
 #sah-home #sah-title { font-size:20px; }
 #sah-home .sah-service { grid-template-columns:24px minmax(0,1fr) 10px; padding:8px; gap:7px; min-height:61px; }
 #sah-home .sah-service .sah-service-icon { width:24px; height:24px; }
 #sah-home .sah-service strong { font-size:11.5px; }
 #sah-home .sah-service small { font-size:9.5px; }
 #sah-home .sah-rics { width:121px; }
 #sah-home .sah-google { width:124px; }
}
@media (prefers-reduced-motion:reduce) { #sah-home *, #sah-header *, #sah-guide * { scroll-behavior:auto; transition:none; animation:none; } }
