.quote-page{background:#f1f7f8}.quote-page .quote-nav{display:flex;gap:25px;align-items:center;font-size:13px;font-weight:700}.quote-page .quote-nav a:hover{color:var(--teal)}.quote-hero{background:linear-gradient(120deg,#043b4b,#006a77);color:white;padding:48px 0 80px}.quote-hero .kicker{color:#7eebdf;margin-top:25px}.quote-hero h1{font-size:clamp(34px,5vw,60px);letter-spacing:-2px;margin:15px 0}.quote-hero p:last-child{color:#d4e9eb;font-size:16px}.test-pill{display:inline-block;border:1px solid #69ded2;background:#ffffff10;color:#b4fff3;border-radius:40px;padding:9px 14px;font-weight:800;font-size:11px;letter-spacing:1px}.wizard-section{margin-top:-36px;padding-bottom:90px;position:relative}.wizard-shell{max-width:950px;margin:auto;background:white;border-radius:20px;box-shadow:0 18px 55px #003c5020;overflow:hidden}.wizard-top{padding:34px 40px 20px;display:flex;align-items:center;justify-content:space-between}.wizard-top h2{font-size:29px;margin:10px 0 0}.eyebrow{font-size:11px;font-weight:800;letter-spacing:2px;color:#008f95}.step-meter{font-size:12px;color:#69848e;font-weight:700}.progress-track{height:5px;background:#e3edef}.progress-track>div{height:100%;background:var(--teal);width:20%;transition:width .2s}.quote-page form{padding:35px 40px 25px}.quote-page fieldset{border:0;margin:0 0 25px;padding:0;min-width:0}.quote-page legend{font-size:17px;font-weight:800;padding:0 0 16px}.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.field-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.quote-page label{margin:0;min-width:0}.quote-page label>span{font-size:11px;color:#496773}.quote-page input,.quote-page select,.quote-page textarea{margin-top:8px;min-width:0}.quote-page input:focus,.quote-page select:focus,.quote-page textarea:focus{outline:2px solid var(--teal);outline-offset:1px}.quote-page [aria-invalid="true"]{border-color:#be4b54}.choice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.choice{display:block;cursor:pointer}.choice input{position:absolute;opacity:0;width:1px;height:1px}.choice span{display:flex;flex-direction:column;justify-content:center;gap:8px;padding:20px;border:1px solid #cfe0e3;border-radius:12px;min-height:96px;font-weight:700;transition:.15s}.choice span small{font-weight:400;color:#607986;letter-spacing:0;text-transform:none}.choice input:checked+span{border:2px solid #008f95;background:#e7f9f8}.choice input:focus-visible+span{outline:3px solid #07344a}.help{font-size:12px;color:#6a8089;margin:10px 0 18px;line-height:1.6}.line-card{border:1px solid #dce7e9;border-radius:14px;padding:20px;margin-bottom:14px;background:#fbfdfd}.line-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.line-head strong{font-size:13px}.text-btn{border:0;background:none;color:#007f87;font-weight:800;cursor:pointer}.wizard-actions{display:flex;justify-content:space-between;gap:15px;border-top:1px solid #e8eff0;padding-top:24px}.wizard-actions .btn:last-child{margin-left:auto}.safety-note{font-size:12px;color:#5d7882;text-align:center;line-height:1.6;padding-top:10px}.review-section{margin-bottom:25px;padding:22px;background:#f1f8f8;border-radius:12px}.review-section h3{margin:0 0 12px}.review-section dl{display:grid;grid-template-columns:160px 1fr;gap:10px 18px;margin:0}.review-section dt{color:#667f87;font-size:12px}.review-section dd{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px;font-weight:600}.blocked{background:#fff5e8;border:1px solid #f0c789;color:#734d1a;border-radius:12px;padding:18px;line-height:1.7}.quote-page footer{margin-top:0}.quote-page .footer-grid{grid-template-columns:1fr 1fr .5fr}.quote-page .footer-grid small{grid-column:1/-1}@media(max-width:700px){.quote-page .header{padding:0 5%;gap:8px}.quote-page .logo img{width:165px}.quote-page .quote-nav{gap:12px;font-size:11px}.quote-hero{padding:42px 0 70px}.wizard-top{padding:25px 22px 18px}.quote-page form{padding:25px 22px}.field-grid,.field-grid.three{grid-template-columns:1fr}.choice-grid{grid-template-columns:1fr 1fr}.choice span{padding:14px;min-height:80px}.wizard-actions .btn{padding:13px 16px}.review-section dl{grid-template-columns:1fr;gap:3px}.review-section dd{margin-bottom:9px}.quote-page .footer-grid{grid-template-columns:1fr}}

.location-combo{position:relative;display:block}.location-results{position:absolute;top:100%;left:0;right:0;z-index:30;max-height:260px;overflow-y:auto;background:#fff;border:1px solid #cddde2;border-radius:8px;box-shadow:0 12px 24px #003c5022}.location-results[hidden]{display:none}.location-option{display:block;width:100%;padding:11px 13px;text-align:left;background:#fff;color:#173a49;border:0;border-bottom:1px solid #edf1f3;cursor:pointer;font:inherit;font-size:13px}.location-option:hover,.location-option:focus{background:#e7f9f8;outline:none}.quote-page input[type="hidden"]{display:none}

.location-combo{z-index:2}.location-combo:focus-within{z-index:100}.location-results{z-index:9999;max-height:340px;overscroll-behavior:contain}.location-option{min-height:40px}

.location-combo{position:relative;isolation:isolate}.location-results{display:block;position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:9999}.location-results[hidden]{display:none}.quote-page fieldset{overflow:visible}.quote-page .field-grid{overflow:visible}.quote-page .help[role=status]{min-height:18px}

.sea-panel{padding:18px;background:#f7fafb;border:1px solid #dce6eb;border-radius:10px}.sea-line{display:grid;grid-template-columns:1fr 2fr 2fr 36px;gap:10px;align-items:end;border-bottom:1px solid #dce6eb;padding:14px 0}.sea-lcl-line{grid-template-columns:0.7fr 1fr repeat(4,1fr) 32px}.sea-line label{min-width:0}.sea-line input,.sea-line select{width:100%;min-width:0}.sea-check{display:flex;gap:10px;align-items:center;margin:15px 0}.sea-check input{width:auto}.sea-extra{margin:18px 0}.sea-extra strong{display:block;margin-bottom:12px}.sea-totals{margin-top:18px;padding:16px;background:#fff;border:1px solid #dce6eb;border-radius:8px;font-weight:700}@media(max-width:850px){.sea-line,.sea-lcl-line{grid-template-columns:repeat(2,minmax(0,1fr))}.sea-line .remove-line{justify-self:start}}
