.oasis-quote .quote-entry{background:var(--cream);padding:62px 0 76px}
.quote-layout{display:grid;grid-template-columns:.82fr 1.18fr;grid-template-rows:auto 1fr;gap:40px 7%;align-items:start}
.quote-intro h1{font-size:clamp(44px,4.3vw,64px);line-height:1.06;margin-bottom:24px}
.quote-intro .eyebrow{font-size:10px;margin-bottom:22px}
.quote-lead{font-size:18px;max-width:370px;line-height:1.6}
.quote-region{font-size:13px;max-width:310px;margin-bottom:24px}
.quote-phone{display:flex;flex-direction:column;align-items:flex-start;font-size:13px;gap:4px}
.quote-phone strong{font-size:21px;letter-spacing:-.03em;font-weight:550;border-bottom:1px solid #8da7a9}
.quote-form-panel{grid-column:2;grid-row:1/3;background:var(--paper);padding:35px 38px;border-top:3px solid #bfded2;scroll-margin-top:115px;min-width:0}
.quote-fieldset{margin:0 0 26px;padding:0;border:0;min-width:0}
.quote-fieldset legend{font-size:19px;font-weight:600;letter-spacing:-.025em;padding:0;margin-bottom:18px}
.quote-pair{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:start}
.oasis-quote .field{min-width:0;margin-bottom:15px}
.oasis-quote .field label{display:block;font-size:13px;font-weight:600;margin-bottom:7px;line-height:1.5}
.oasis-quote .field label span{font-size:11px;font-weight:400;color:var(--muted)}
.oasis-quote .input{display:block;width:100%;min-width:0;min-height:49px;background:#fff;color:var(--ink);border:1px solid #a8b6b5;border-radius:3px;font:inherit;font-size:16px;line-height:1.5;padding:11px 12px;box-shadow:none;scroll-margin-top:115px}
.oasis-quote select.input{padding-right:24px;cursor:pointer}
.oasis-quote textarea.input{resize:vertical;min-height:124px}
.oasis-quote .input:focus-visible{outline:2px solid var(--teal);outline-offset:2px;border-color:var(--teal)}
.oasis-quote .input::placeholder{color:#637478;opacity:1}
.oasis-quote .field-help{font-size:12px;line-height:1.6;margin:8px 0 0}
.oasis-quote #contact-help{margin:0 0 12px}
.oasis-quote #spatial-comments-hint{background:#e9f1eb;border-left:2px solid #528975;padding:10px 12px;color:#254c44}
.quote-optional{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:0 0 24px}
.quote-optional summary{display:flex;align-items:center;gap:12px;min-height:58px;cursor:pointer;list-style:none;font-size:14px;font-weight:600;padding:14px 0}
.quote-optional summary::-webkit-details-marker{display:none}
.quote-optional summary span{font-size:11px;font-weight:400;color:var(--muted)}
.quote-optional summary:after{content:'+';margin-left:auto;font-size:23px;font-weight:400;line-height:1}
.quote-optional[open] summary:after{content:'−'}
.quote-optional-fields>.field-help{margin:0 0 18px}
.quote-submit .button{width:100%;font-size:15px;min-height:54px;transform:none}
.quote-submit p{font-size:12px;line-height:1.6;margin:14px 0 7px}
.quote-submit>a{font-size:12px;text-decoration:underline;text-underline-offset:3px;display:inline-flex;align-items:center;min-height:32px}
.oasis-quote .error-text{color:#9a2630;font-size:14px;line-height:1.6;scroll-margin-top:115px}
.oasis-quote .error-text:empty{display:none}
.oasis-quote #formError:not(:empty){margin-top:18px;padding:14px;border:1px solid currentColor}
.oasis-quote [aria-invalid=true]{border-color:#9a2630}
.oasis-quote button[disabled]{opacity:.65;cursor:wait}
.quote-next{padding-top:28px;border-top:1px solid #c7d3cb;max-width:370px}
.quote-next h2{font-size:23px;letter-spacing:-.025em;margin-bottom:24px}
.quote-next ol{list-style:none;counter-reset:quote-step;padding:0;margin:0 0 24px}
.quote-next li{counter-increment:quote-step;position:relative;padding:0 0 22px 31px}
.quote-next li:before{content:counter(quote-step,decimal-leading-zero);position:absolute;left:0;top:2px;font-size:11px;color:var(--teal)}
.quote-next strong{display:block;font-size:14px;font-weight:600;margin-bottom:4px}
.quote-next li span{display:block;font-size:13px;line-height:1.6;color:var(--muted)}
.quote-next>a{display:table;min-height:36px;font-size:13px;text-decoration:underline;text-underline-offset:4px}
.quote-questions{padding:68px 0 76px}
.quote-questions h2{font-size:36px}
.quote-questions p{font-size:14px}
.quote-questions p a{text-decoration:underline;text-underline-offset:4px}
@media(max-width:1000px){.quote-layout{gap:32px 5%;grid-template-columns:.8fr 1.2fr}.quote-form-panel{padding:28px 24px}.quote-intro h1{font-size:43px}.quote-pair{grid-template-columns:1fr;gap:0}}
@media(max-width:700px){.oasis-quote .quote-entry{padding:30px 0 42px}.quote-layout{display:flex;flex-direction:column;gap:27px}.quote-intro,.quote-form-panel,.quote-next{width:100%;max-width:none}.quote-intro h1{font-size:40px;line-height:1.08;margin-bottom:15px}.quote-intro .eyebrow{font-size:8px;margin-bottom:15px}.quote-lead{font-size:15px;margin-bottom:12px;max-width:420px}.quote-region{font-size:12px;margin-bottom:16px;max-width:100%}.quote-phone{flex-direction:row;align-items:center;gap:8px;font-size:12px}.quote-phone strong{font-size:15px}.quote-form-panel{padding:24px 19px}.quote-fieldset{margin-bottom:23px}.quote-fieldset legend{font-size:19px;margin-bottom:16px}.quote-next{padding-top:27px}.quote-next h2{font-size:25px}.quote-next ol{margin-bottom:12px}.quote-next li{padding-bottom:20px}.quote-next>a{min-height:44px}.quote-questions{padding:45px 0}.quote-questions h2{font-size:31px}.quote-questions .faq-layout{gap:10px}.oasis-quote .menu-toggle{height:44px}}
