/* Finishing details: layout rhythm, contact, and the coverage planner. */
:root{color-scheme:light;--muted:#56685e}
html{scrollbar-gutter:stable}
body.dialog-open{overflow:hidden}
header{position:sticky;top:0;z-index:12;background:#faf8f1f5;backdrop-filter:blur(16px)}
section[id]{scroll-margin-top:15px}
.hero h1{font-size:clamp(48px,5.4vw,82px)}
.hero-image:after{content:"";position:absolute;inset:65% 0 0;background:linear-gradient(transparent,#153d322e);pointer-events:none}
.photo-tag,.image-caption{z-index:1}
.coverage-card{position:relative;overflow:hidden}
.coverage-card:after{content:"";position:absolute;bottom:0;left:0;width:0;height:3px;background:#a08c56;transition:width .25s}
.coverage-card:hover:after,.coverage-card:focus-visible:after{width:100%}
.resource-card{display:flex;flex-direction:column;height:100%}
.resource-art{width:100%;flex-shrink:0}
.resource-card .article-link{width:100%;margin-top:auto}
.resource-card p{padding-bottom:4px}
.contact{display:grid;grid-template-columns:1fr 1fr;gap:11%;border-top:1px solid var(--line);align-items:center}
.contact-copy>p{max-width:380px;color:var(--muted);font-size:14px;line-height:1.85;margin:24px 0}
.contact-email{display:inline-flex;align-items:center;gap:32px;border-bottom:1px solid #a6b09f;padding-bottom:8px;font-size:16px}
.contact-email:hover{color:#8b602d}
.contact-form{background:#efefe5;padding:32px;border:1px solid #e0e2d6;border-radius:6px}
.contact-form .form-label{margin:0 0 8px;font-size:12px}
.contact-form .optional{font-weight:400;color:var(--muted)}
.contact-form select,.contact-form textarea{width:100%;border:1px solid #bfc7b8;border-radius:3px;background:var(--cream);color:var(--ink);padding:13px 14px;font:inherit;font-size:13px;margin-bottom:20px}
.contact-form textarea{resize:vertical;min-height:108px;max-height:320px;display:block}
.contact-form textarea::placeholder{color:#647267}
.contact-form .button{width:100%;justify-content:space-between}
.contact-form .microcopy{line-height:1.8;margin-bottom:0}
#contact-status{font-size:11px;line-height:1.7;margin-bottom:0}
#contact-status:empty{display:none}
textarea:focus-visible{outline:3px solid #bb7636;outline-offset:3px}
.planner-progress{list-style:none;display:flex;gap:12px;padding:0;margin:0 0 28px}
.planner-progress li{display:flex;align-items:center;gap:8px;flex:1;color:#6b786b;font-size:10px}
.planner-progress li>span{display:grid;place-items:center;border:1px solid #c2cbb9;width:26px;height:26px;border-radius:50%;flex-shrink:0;font-size:11px}
.planner-progress small{font-size:10px;line-height:1.4}
.planner-progress .current{font-weight:600;color:var(--green)}
.planner-progress .current>span{background:var(--green);color:var(--cream);border-color:var(--green)}
.planner-progress .complete>span{background:#dfe8d5;border-color:#b2c2a7;color:var(--green)}
.result-success{display:flex;gap:10px;align-items:center;font-size:10px;font-weight:600;letter-spacing:.09em}
.result-success>span{display:grid;place-items:center;border-radius:50%;background:#e0ead6;width:30px;height:30px;font-size:16px}
.result-summary{display:flex;gap:12px;flex-wrap:wrap;margin:22px 0 0}
.result-summary span{background:#e7eadf;border:1px solid #d6decc;border-radius:3px;padding:6px 10px;font-size:10px}
.choice{min-height:60px}
.close{min-width:44px;min-height:44px;display:grid;place-items:center;border-radius:50%;margin:-8px -8px -8px 0}
.close:hover{background:#e9ecdf}
dialog{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#b8c4ae transparent}
dialog h2:focus{outline:none}
.dialog-top{position:sticky;top:-32px;background:var(--cream);z-index:2;padding-top:4px}
.result-tools button{min-height:44px}
.footer-bottom button,.footer-bottom a{display:inline-flex;align-items:center;min-height:36px}
@media(min-width:1600px){.hero h1{font-size:82px}}
@media(max-width:1100px) and (min-width:801px){.hero h1{font-size:clamp(48px,5.4vw,62px)}nav{gap:18px}.contact{gap:7%}.contact-form{padding:25px}}
@media(max-width:800px){header{position:sticky}.hero h1{font-size:clamp(38px,6.2vw,49px);letter-spacing:-1.5px}.contact{gap:6%}.contact-copy h2{font-size:39px}.contact-copy>p{font-size:12px}.contact-email{font-size:14px;gap:15px}.contact-form{padding:22px}.contact-form select,.contact-form textarea{font-size:16px}.contact-form .button{font-size:12px}.menu-toggle{min-height:44px;min-width:44px}}
@media(max-width:560px){.hero h1{font-size:clamp(42px,13.6vw,61px);letter-spacing:-1.8px}.hero-copy{padding-top:36px}.hero-note{font-size:10px}.hero-image{min-height:350px}.coverage-card p{font-size:11px}.coverage-card{min-height:240px}.coverage-card h3{font-size:26px}.tabs button{min-height:52px}.section-heading>p,.steps p,.resource-card p,.faq-list p{font-size:13px}.resource-card>small{font-size:9px}.contact{grid-template-columns:1fr;gap:30px}.contact-copy h2{font-size:43px}.contact-copy>p{font-size:13px}.contact-email{font-size:16px}.contact-form{padding:23px}.contact-form .form-label{font-size:13px}.planner-progress{gap:7px;margin-bottom:24px}.planner-progress li{gap:6px}.planner-progress small{font-size:9px}.planner-progress li>span{width:23px;height:23px}.dialog-top{top:-23px}.choice-grid{grid-template-columns:1fr}.choice{padding:16px;font-size:14px;min-height:56px}.form-label select{font-size:16px}.dialog-actions{align-items:center}.dialog-actions>.button{min-height:48px}.result-tools{gap:13px}.result-tools button{font-size:12px}.disclosure{font-size:10px}.footer-bottom,.footer-bottom button,.domain{font-size:11px}.closing .eyebrow{position:relative;z-index:1}}
@media(max-width:350px){.hero h1{font-size:39px}.hero-actions{gap:16px}.hero-actions .button{padding:15px}.hero-actions .text-link{font-size:10px}.tabs{gap:14px}.tabs button{gap:9px}.coverage-grid{grid-template-columns:1fr}.coverage-card{min-height:220px}.planner-progress small{font-size:8px}.result-summary{gap:6px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media print{body.dialog-open{overflow:visible}.planner-progress,.result-summary,.result-success{display:none}.dialog-top{position:static}.checklist{background:white;padding:0}.checklist h3{break-after:avoid}.checklist li{break-inside:avoid}}

/* Statewide Texas personal insurance. */
.coverage-label{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding:0 0 17px;margin:0 0 24px;font-size:10px;font-weight:600;letter-spacing:.12em}.coverage-label span:last-child{color:var(--muted);font-size:9px}.primary-coverage{background:#e9eddf;border-color:#d4ddca}.statewide{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center}.texas-visual{position:relative;background:#e4e8da;border-radius:5px;padding:35px;overflow:hidden;min-height:410px;display:flex;flex-direction:column;justify-content:space-between}.texas-monogram{font:400 150px/.9 var(--serif);letter-spacing:-10px;color:#234e40;margin:25px 0 15px}.texas-monogram span{font-size:62px;letter-spacing:0;color:#a58c51;vertical-align:top;display:inline-block;margin:8px 0 0 20px}.texas-visual>p{font:400 27px/1.2 var(--serif);margin:0 0 28px}.texas-coordinates{font-size:8px;letter-spacing:.1em;line-height:1.9;color:#536952}.statewide-copy>p{color:var(--muted);font-size:13px;line-height:1.85;margin:22px 0}.statewide-copy .small-copy{font-size:11px}.statewide-copy h2{font-size:51px}.contact-form>h3{font:400 30px/1.15 var(--serif);margin:20px 0}.contact-form>p{color:var(--muted);font-size:13px;line-height:1.8}.hero-image>img{object-position:50% center}
@media(max-width:800px){.statewide{gap:6%}.texas-visual{padding:26px;min-height:390px}.texas-monogram{font-size:118px}.texas-monogram span{font-size:45px;margin-left:14px}.statewide-copy h2{font-size:43px}}
@media(max-width:560px){.coverage-label span:last-child{display:none}.statewide{grid-template-columns:1fr;gap:32px}.texas-visual{min-height:350px}.texas-monogram{font-size:135px}.statewide-copy h2{font-size:43px}.coverage-card h3{font-size:24px}.hero .eyebrow{font-size:8px}.hero p{max-width:340px}.contact-form>h3{font-size:29px}}

/* Private-recipient inquiry form, delivered by Web3Forms. */
.contact{align-items:start}.contact-copy{padding-top:25px}.contact-copy .small-copy{font-size:11px;line-height:1.8}.contact-expectations{display:flex;gap:10px;align-items:center;font-size:12px;margin:25px 0}.contact-expectations .mini-check{flex-shrink:0}.contact-form{min-width:0}.form-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:23px}.form-heading h3{font:400 29px/1.15 var(--serif);margin:0}.form-heading>span{font-size:9px;color:var(--muted);white-space:nowrap}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.contact-form .form-label{display:block;margin:0;font-size:11px}.contact-form .form-label>span{color:#8d652c}.contact-form .form-label>small{font-size:10px;font-weight:400;color:var(--muted)}.contact-form input:not([type=checkbox]),.contact-form select,.contact-form textarea{display:block;width:100%;min-width:0;margin:8px 0 17px;background:var(--cream);border:1px solid #bfc7b8;border-radius:3px;padding:12px 13px;color:var(--ink);font:inherit;font-size:13px}.contact-form textarea{margin-bottom:10px}.contact-consent{display:flex;align-items:flex-start;gap:10px;font-size:11px;line-height:1.7;margin:20px 0}.contact-consent input{margin:4px 0 0;flex-shrink:0;accent-color:var(--green);width:16px;height:16px}.form-status{font-size:12px!important;line-height:1.8;margin:15px 0 0}.form-status:empty{display:none}.form-status[data-state=error]{color:#95421f}.form-status[data-state=success]{color:#245d3f}.privacy-link{background:none;font:inherit;padding:0;text-decoration:underline;text-underline-offset:3px}.contact-form [hidden]{display:none!important}
@media(max-width:800px){.contact-form input:not([type=checkbox]),.contact-form select,.contact-form textarea{font-size:16px}.form-row{grid-template-columns:1fr;gap:0}.form-heading{align-items:start}.form-heading h3{font-size:27px}}
@media(max-width:560px){.contact-copy{padding-top:0}.contact-form .form-label{font-size:12px}.contact-consent{font-size:12px}.contact-form{padding:23px}}
