/* =====================================================================
   Drawer "Solicite su mantenimiento" — RENDAE (Bootstrap offcanvas)
   ===================================================================== */
.offcanvas-backdrop{ z-index:100000; }
.r-drawer.offcanvas{
  --bs-offcanvas-width:min(560px,100%);
  --bs-offcanvas-zindex:100001;
  z-index:100001;
  background:#F5F7FA;
  color:#0A2540;
  font-family:"Inter",sans-serif;
  border-left:0;
  box-shadow:-20px 0 60px rgba(10,37,64,.2);
}
.r-drawer__close{
  position:absolute; top:20px; right:20px; z-index:2;
  width:40px; height:40px; border-radius:50%;
  border:1px solid #E5E8ED; background:#fff; color:#0A2540;
  display:flex; align-items:center; justify-content:center;
  font-size:16px; cursor:pointer; transition:.2s;
}
.r-drawer__close:hover{ background:#0A2540; color:#fff; }
.r-drawer__body{ padding:72px 40px 48px; overflow-y:auto; }

.r-drawer__eyebrow{
  display:block; font-size:12px; letter-spacing:.18em; text-transform:uppercase;
  font-weight:600; color:#D32F2F; margin-bottom:14px;
}
.r-drawer h2{
  font-size:clamp(1.7rem,4vw,2.1rem); line-height:1.15;
  font-weight:700; color:#0A2540; margin:0 0 14px;
}
.r-drawer__lead{ font-size:15px; line-height:1.6; color:#5A6478; margin:0 0 28px; }

.mant-form label{
  display:block; font-size:12px; letter-spacing:.06em; text-transform:uppercase;
  font-weight:500; color:#0A2540; margin-bottom:8px;
}
.mant-form input[type="text"],
.mant-form input[type="email"],
.mant-form input[type="tel"]{
  width:100%; height:50px; padding:0 16px;
  border:1px solid #E5E8ED; border-radius:12px;
  background:#fff; color:#0A2540; font:inherit; font-size:15px;
  transition:border-color .2s, box-shadow .2s;
  -webkit-appearance:none; appearance:none;
}
.mant-form input::placeholder{ color:#9aa3b2; }
.mant-form input:focus{
  outline:none; border-color:#1E5FE6; box-shadow:0 0 0 3px rgba(30,95,230,.15);
}
.mant-form .is-invalid{ border-color:#D32F2F !important; box-shadow:0 0 0 3px rgba(211,47,47,.12); }
.mant-form .field-error{ display:none; margin-top:6px; font-size:12.5px; line-height:1.4; color:#B71F1F; }
.mant-form .field-error.is-visible{ display:block; }
.mant-form .hp-field{ position:absolute; left:-9999px; width:1px; height:1px; overflow:hidden; }
.mant-form .form-status{ font-size:14px; padding:12px 14px; border-radius:10px; }
.mant-form .form-status.is-error{ color:#B71F1F; background:rgba(211,47,47,.08); }

.r-submit{
  margin-top:28px; display:inline-flex; align-items:center; gap:10px;
  height:52px; padding:0 30px; border:0; border-radius:8px;
  background:#D32F2F; color:#fff; font:inherit; font-size:14px;
  font-weight:600; letter-spacing:.06em; text-transform:uppercase;
  cursor:pointer; transition:background .2s, transform .2s;
}
.r-submit:hover{ background:#B71F1F; transform:translateY(-1px); }
.r-submit[disabled]{ opacity:.45; cursor:not-allowed; transform:none; background:#D32F2F; }

.r-success{ text-align:center; padding-top:40px; }
.r-success i{ font-size:56px; color:#1E5FE6; }
.r-success h3{ font-size:1.6rem; font-weight:700; margin:16px 0 10px; color:#0A2540; }
.r-success p{ color:#5A6478; line-height:1.6; margin-bottom:24px; }
.r-success .r-submit{ margin-top:0; }

@media (max-width:575px){
  .r-drawer__body{ padding:68px 22px 40px; }
}
