.rm-consult { margin:28px 0; padding:24px; border:1px solid #b9cec8; border-top:4px solid #176c5d; border-radius:12px; background:#f3f8f6; color:#12324a; text-align:left; }
.rm-consult .rm-consult-label { margin:0 0 10px; color:#176c5d; font-size:14px; font-weight:800; }
.rm-consult h2 { margin:0 0 16px; color:#12324a; font-size:clamp(21px,4.8vw,26px); line-height:1.5; }
.rm-consult p { margin:0 0 16px; font-size:16px; line-height:1.85; }
.rm-consult-actions { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin:20px 0 14px; }
.rm-consult .rm-consult-button { display:flex; min-height:56px; align-items:center; justify-content:center; padding:14px 16px; border:1px solid #176c5d; border-radius:8px; background:#fff; color:#105246; font:inherit; font-weight:800; text-decoration:none; line-height:1.6; text-align:center; cursor:pointer; }
.rm-consult .rm-consult-photo { grid-column:1 / -1; min-height:64px; border-color:#0e7a68; background:#0e7a68; color:#fff; font-size:17px; box-shadow:0 5px 14px #12324a22; }
.rm-consult .rm-consult-line { background:#176c5d; color:#fff; }
.rm-consult-button:hover { box-shadow:0 2px 8px #12324a26; }
.rm-consult-button:focus-visible,.rm-consult summary:focus-visible,.rm-consult textarea:focus-visible { outline:3px solid #1769aa; outline-offset:3px; }
.rm-consult-button:disabled { opacity:.6; cursor:wait; }
.rm-consult .rm-consult-status { min-height:2em; color:#12324a; font-size:15px; font-weight:700; }
.rm-consult details { border-top:1px solid #b9cec8; border-bottom:1px solid #b9cec8; margin:16px 0; }
.rm-consult summary { padding:15px 0; font-size:15px; font-weight:700; cursor:pointer; }
.rm-consult summary::before { content:none; }
.simulator-page .estimate-help { margin:14px 0; color:#435c66; font-size:15px; line-height:1.8; }
.simulator-page .estimate-options { padding:0 14px; margin:18px 0; border:1px solid #b9cec8; border-radius:8px; background:#f6f9f8; }
.simulator-page .estimate-options summary { padding:16px 0; color:#12324a; font-size:15px; line-height:1.7; font-weight:800; cursor:pointer; }
.simulator-page .estimate-options summary::before { content:none; }
.simulator-page .estimate-options[open] summary { border-bottom:1px solid #b9cec8; margin-bottom:18px; }
.simulator-page .estimate-options summary:focus-visible { outline:3px solid #1769aa; outline-offset:2px; }
.rm-consult label { display:block; margin:8px 0; font-size:15px; }
.rm-consult textarea { box-sizing:border-box; width:100%; min-height:220px; padding:12px; border:1px solid #8aa39c; border-radius:6px; background:#fff; color:#12324a; font:inherit; font-size:16px; line-height:1.7; resize:vertical; }
.rm-consult .rm-consult-note { margin:16px 0 0; font-size:14px; color:#435c66; }
.is-presentation .rm-consult { display:none; }
.estimate-breakdown { max-width:100%; overflow-x:auto; }
.estimate-breakdown:focus-visible { outline:3px solid #1769aa; outline-offset:2px; }
.contact-actions.rm-consult-other { grid-template-columns:repeat(2,minmax(0,1fr)); }
@media (max-width:600px) { .contact-actions.rm-consult-other { grid-template-columns:1fr; } }
@media (max-width:600px) { .rm-consult { padding:20px 16px; }.rm-consult-actions { grid-template-columns:1fr; }.rm-consult .rm-consult-photo { grid-column:auto; } }
