/* Quote request intake — inherits the site palette and container widths. */
.rv-quote-page{background:#fff;color:#111}
.rv-quote-intro{padding:78px 0 30px;background:#0b0b0c;color:#fff}
.rv-quote-intro h1{margin:12px 0 14px;font:900 clamp(30px,4vw,58px)/1.02 Arial,sans-serif;letter-spacing:-.045em}
.rv-quote-lead{max-width:640px;margin:0;color:#c9c9c9;font:400 15px/1.6 Arial,sans-serif}
.rv-quote-fire{display:block;margin:24px 0 0;padding:16px 18px;border-left:5px solid #e51b23;background:rgba(229,27,35,.16);color:#fff;font:900 clamp(15px,2vw,22px)/1.28 Arial,sans-serif;letter-spacing:.03em;text-transform:uppercase}
.rv-quote-fire a{color:#fff;text-decoration:underline;text-underline-offset:2px}
.rv-quote-urgent{margin:12px 0 0;padding:13px 16px;border-left:3px solid #e51b23;background:rgba(229,27,35,.1);font:700 13px/1.5 Arial,sans-serif}
.rv-quote-urgent a{color:#fff;text-decoration:underline}
.rv-quote-form-wrap{padding:44px 0 78px}
.rv-quote-form fieldset{margin:0 0 30px;padding:26px;border:1px solid #e4e4e4;border-radius:2px;background:#fafafa}
.rv-quote-form legend{padding:0 10px;color:#111;font:900 11px/1 Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase}
.rv-quote-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px 22px}
.rv-quote-grid p{margin:0;display:flex;flex-direction:column;gap:7px}
.rv-quote-wide{grid-column:1/-1}
.rv-quote-form label{color:#333;font:700 12px/1.3 Arial,sans-serif;letter-spacing:.02em}
.rv-quote-form label span{color:#e51b23}
.rv-quote-form input[type=text],
.rv-quote-form input[type=email],
.rv-quote-form input[type=tel],
.rv-quote-form input[type=date],
.rv-quote-form input[type=number],
.rv-quote-form select,
.rv-quote-form textarea{width:100%;padding:11px 12px;border:1px solid #d4d4d4;border-radius:2px;background:#fff;color:#111;font:400 14px/1.4 Arial,sans-serif}
.rv-quote-form textarea{resize:vertical}
.rv-quote-form input:focus,
.rv-quote-form select:focus,
.rv-quote-form textarea:focus{border-color:#e51b23;outline:2px solid rgba(229,27,35,.18);outline-offset:1px}
.rv-quote-form small{color:#777;font:400 12px/1.5 Arial,sans-serif}
.rv-quote-checks{display:grid;grid-template-columns:repeat(2,1fr);gap:11px 22px;margin-top:20px}
.rv-quote-checks label,
.rv-quote-consent label{display:flex;align-items:flex-start;gap:9px;font:400 13px/1.45 Arial,sans-serif;letter-spacing:0}
.rv-quote-checks input,
.rv-quote-consent input{margin:2px 0 0;flex:0 0 auto}
.rv-quote-consent{margin:0 0 26px;padding:17px 18px;border:1px solid #e4e4e4;border-radius:2px;background:#fff}
.rv-quote-submit{display:flex;flex-direction:column;gap:11px;margin:0}
.rv-quote-submit .button{align-self:flex-start;padding:15px 30px;border:0;border-radius:2px;background:#e51b23;color:#fff;font:900 12px/1 Arial,sans-serif;letter-spacing:.1em;text-transform:uppercase;cursor:pointer}
.rv-quote-submit .button:hover{background:#c4161d}
.rv-quote-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.rv-quote-notice{margin:0 0 30px;padding:20px 22px;border-radius:2px}
.rv-quote-notice h2{margin:0 0 8px;font:900 20px/1.15 Arial,sans-serif;letter-spacing:-.02em}
.rv-quote-notice p{margin:0;font:400 14px/1.55 Arial,sans-serif}
.rv-quote-notice-ok{border-left:3px solid #1e8e3e;background:#f1f8f2;color:#14401f}
.rv-quote-notice-bad{border-left:3px solid #e51b23;background:#fdf2f2;color:#5c1114}
@media(max-width:760px){
	.rv-quote-grid,.rv-quote-checks{grid-template-columns:1fr}
	.rv-quote-form fieldset{padding:20px 17px}
	.rv-quote-submit .button{align-self:stretch;text-align:center}
}

/* Emergency page — phone first, no form. */
.rv-emergency-page{background:#0b0b0c;color:#fff}
.rv-emergency-hero{padding:78px 0 92px}
.rv-emergency-fire{display:block;margin:0 0 30px;padding:16px 18px;border-left:5px solid #e51b23;background:rgba(229,27,35,.16);color:#fff;font:900 clamp(15px,2vw,22px)/1.28 Arial,sans-serif;letter-spacing:.03em;text-transform:uppercase}
.rv-emergency-fire a{color:#fff;text-decoration:underline;text-underline-offset:2px}
.rv-emergency-hero h1{margin:0 0 30px;max-width:900px;font:900 clamp(26px,3.4vw,46px)/1.12 Arial,sans-serif;letter-spacing:-.035em}
.rv-emergency-lead{max-width:560px;margin:0 0 34px;color:#c9c9c9;font:400 16px/1.6 Arial,sans-serif}
.rv-emergency-call{display:inline-flex;flex-direction:column;gap:6px;padding:26px 44px;border-radius:3px;background:#e51b23;color:#fff;text-decoration:none;cursor:default}
.rv-mobile-only{display:none}
.rv-emergency-call-label{font:900 11px/1 Arial,sans-serif;letter-spacing:.16em;text-transform:uppercase;opacity:.9}
.rv-emergency-call-number{font:900 clamp(30px,4.4vw,54px)/1 Arial,sans-serif;letter-spacing:-.035em}
.rv-emergency-note{margin:34px 0 0;color:#9a9a9a;font:400 14px/1.6 Arial,sans-serif}
.rv-emergency-note a{color:#fff;text-decoration:underline;text-underline-offset:2px}
@media(max-width:760px){
	.rv-emergency-hero{padding:52px 0 64px}
	.rv-emergency-call{display:flex;align-items:center;padding:24px 20px;text-align:center;cursor:pointer;transition:background .2s ease}
	.rv-emergency-call:hover,.rv-emergency-call:focus,.rv-emergency-call:active{background:#c4161d;color:#fff}
	.rv-desktop-only{display:none}
	.rv-mobile-only{display:block}
}
