*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'DM Sans',sans-serif;background:#f7f8f6;color:#1e2520}
a{text-decoration:none;-webkit-tap-highlight-color:transparent}
button{-webkit-tap-highlight-color:transparent;font-family:'DM Sans',sans-serif}
ul{list-style:none}

/* Fade in */
.mru-fi{opacity:0;transform:translateY(22px);transition:opacity .6s ease,transform .6s ease}
.mru-fi.vis{opacity:1;transform:none}

/* Pulse */
@keyframes mru-pulse{0%{box-shadow:0 0 0 0 rgba(106,191,105,.6)}70%{box-shadow:0 0 0 14px rgba(106,191,105,0)}100%{box-shadow:0 0 0 0 rgba(106,191,105,0)}}
.mru-fab{animation:mru-pulse 2.5s ease-in-out infinite;transition:transform .2s}
.mru-fab:hover{animation:none;transform:scale(1.12)!important}

/* Mobile nav */
.mru-mnav{display:none;position:fixed;top:104px;left:0;right:0;bottom:0;background:#0f2e1a;z-index:999;flex-direction:column;padding:24px 20px;gap:4px;overflow-y:auto}
.mru-mnav.open{display:flex}

/* Input base */
.mru-inp{font-family:'DM Sans',sans-serif;font-size:15px;width:100%;padding:12px 16px;border:1.5px solid #d4d9d0;border-radius:8px;background:#fff;outline:none;transition:border-color .2s;color:#1e2520}
.mru-inp:focus{border-color:#1a4d2e}
.mru-inp[type=date]{color:#4a5568}

/* ── WPForms Styling to match our green theme ── */
#mru-wpform-active { display: block !important; }
#mru-wpform-active .wpforms-form { font-family: 'DM Sans', sans-serif; }
#mru-wpform-active .wpforms-field { margin-bottom: 16px; }
#mru-wpform-active .wpforms-field-label {
  display: block; font-size: 13px; font-weight: 600; color: #4a5568;
  margin-bottom: 6px; text-transform: uppercase; letter-spacing: .05em;
}
#mru-wpform-active input[type=text],
#mru-wpform-active input[type=email],
#mru-wpform-active input[type=tel],
#mru-wpform-active input[type=url],
#mru-wpform-active input[type=number],
#mru-wpform-active select,
#mru-wpform-active textarea {
  font-family: 'DM Sans', sans-serif !important;
  font-size: 15px !important;
  width: 100% !important;
  padding: 12px 16px !important;
  border: 1.5px solid #d4d9d0 !important;
  border-radius: 8px !important;
  background: #fff !important;
  outline: none !important;
  transition: border-color .2s !important;
  color: #1e2520 !important;
  box-shadow: none !important;
}
#mru-wpform-active input:focus,
#mru-wpform-active select:focus,
#mru-wpform-active textarea:focus {
  border-color: #1a4d2e !important;
  box-shadow: 0 0 0 3px rgba(26,77,46,.08) !important;
}
#mru-wpform-active .wpforms-submit-container { margin-top: 8px; }
#mru-wpform-active .wpforms-submit,
#mru-wpform-active button[type=submit] {
  font-family: 'DM Sans', sans-serif !important;
  background: #1a4d2e !important;
  color: #ffffff !important;
  border: none !important;
  padding: 14px 28px !important;
  border-radius: 8px !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  cursor: pointer !important;
  width: 100% !important;
  transition: opacity .2s !important;
  box-shadow: 0 4px 14px rgba(26,77,46,.4) !important;
  letter-spacing: .02em !important;
}
#mru-wpform-active .wpforms-submit:hover,
#mru-wpform-active button[type=submit]:hover {
  opacity: .85 !important;
  transform: translateY(-1px) !important;
}
#mru-wpform-active .wpforms-confirmation-container,
#mru-wpform-active .wpforms-confirmation-container-full {
  background: #eef0ec !important;
  border: 1px solid #d4d9d0 !important;
  border-radius: 12px !important;
  padding: 24px !important;
  color: #1a4d2e !important;
  font-weight: 600 !important;
  text-align: center !important;
  font-size: 16px !important;
}
#mru-wpform-active .wpforms-error-container,
#mru-wpform-active .wpforms-field-error {
  color: #c0392b !important; font-size: 13px !important; margin-top: 4px !important;
}

/* Responsive */
@media(max-width:900px){
  .mru-pricing-grid{grid-template-columns:1fr 1fr!important}
}
@media(max-width:768px){
  .mru-donly{display:none!important}
  .mru-hbg{display:block!important}
  .mru-2col,.mru-hgrid,.mru-cgrid{grid-template-columns:1fr!important}
  .mru-f2col{grid-template-columns:1fr!important}
  .mru-pricing-grid{grid-template-columns:1fr!important}
}
@media(max-width:480px){
  .mru-fgrid{grid-template-columns:1fr!important}
}
