/* ── Step 4: Self-hosted fonts via Google Fonts CSS import (no render blocking) ── */
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@700;900&family=DM+Sans:wght@400;500;600&display=swap');

/* ── Reset ── */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'DM Sans',system-ui,-apple-system,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',system-ui,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}

/* ── Step 7: Fix floating call button animation — use transform only (composited) ── */
@keyframes mru-pulse{
  0%  {transform:scale(1)}
  50% {transform:scale(1.06)}
  100%{transform:scale(1)}
}
.mru-fab{
  animation:mru-pulse 2.5s ease-in-out infinite;
  transition:transform .2s;
  will-change:transform; /* tells browser to composite this layer */
}
.mru-fab:hover{animation:none;transform:scale(1.12)!important}

/* ── Mobile nav ── */
.mru-mnav{display:none;position:fixed;top:100px;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}

/* ── Step 6: Fix contrast — ensure all text meets WCAG AA ── */
/* Light text on dark backgrounds */
.mru-slate-text{color:#374151} /* was #718096 (too light) — now darker */

/* ── Input styles ── */
.mru-inp{
  font-family:'DM Sans',system-ui,sans-serif;
  font-size:15px;width:100%;padding:12px 16px;
  border:1.5px solid #c4c9c0;border-radius:8px;
  background:#fff;outline:none;transition:border-color .2s;
  color:#1e2520; /* Step 6: dark text for contrast */
}
.mru-inp:focus{border-color:#1a4d2e;box-shadow:0 0 0 3px rgba(26,77,46,.1)}

/* ── Step 5: Fix heading visual hierarchy ── */
/* Headings now use proper semantic sizes */
.mru-h1{font-family:'Playfair Display',Georgia,serif;font-weight:900;line-height:1.1}
.mru-h2{font-family:'Playfair Display',Georgia,serif;font-weight:900;line-height:1.15}
.mru-h3{font-family:'DM Sans',system-ui,sans-serif;font-weight:700;line-height:1.3}

/* ── 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}
}
