:root{
  --green-900:#0F2E22;--green-800:#143D2C;--green-700:#1C5C40;--green-600:#237249;--green-500:#2E8A5A;
  --maroon-800:#5E1824;--maroon-700:#7A2130;--maroon-600:#8F2838;--maroon-400:#B5485A;
  --amber-500:#E8A317;--amber-600:#C98A10;
  --ink-900:#181A17;--ink-700:#3C423C;--ink-500:#6B7066;
  --paper-50:#FAF7F0;--paper-100:#F1ECDF;--steel-200:#E2DCCB;--steel-300:#CFC8B4;--white:#FFFFFF;
  --font-display:'Oswald',sans-serif;--font-body:'Inter',sans-serif;
}
*{box-sizing:border-box;}
body{margin:0;background:var(--paper-50);font-family:var(--font-body);color:var(--ink-900);}
a{color:inherit;text-decoration:none;}
a:hover{color:var(--maroon-700);}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--green-500);outline-offset:2px;}
.nav-link:hover{color:var(--maroon-700) !important;}

/* Mobile nav — pure CSS checkbox toggle, no JS */
.menu-toggle{display:none;}
.mobile-drawer a:hover{color:var(--maroon-700);}
@media (max-width: 860px) {
  .nav-links-row { display: none !important; }
  .menu-toggle { display: flex !important; }
}
#mnav:checked ~ .mobile-drawer { display: flex !important; }

/* Contact form focus state */
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--green-700) !important;box-shadow:0 0 0 3px rgba(28,92,64,0.15);}

/* Responsive grid collapses (grids are authored as inline styles; these target them by exact inline-style signature) */
@media (max-width: 900px) {
  div[style*="grid-template-columns:repeat(4,minmax(0,1fr))"] { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
  div[style*="grid-template-columns:repeat(3,minmax(0,1fr))"] { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
}
@media (max-width: 760px) {
  div[style*="grid-template-columns:2fr 1fr 1fr 1fr"] { grid-template-columns: 1fr 1fr !important; }
}
@media (max-width: 560px) {
  div[style*="grid-template-columns:repeat(4,minmax(0,1fr))"] { grid-template-columns: 1fr !important; }
  div[style*="grid-template-columns:repeat(3,minmax(0,1fr))"] { grid-template-columns: 1fr !important; }
  div[style*="grid-template-columns:2fr 1fr 1fr 1fr"] { grid-template-columns: 1fr !important; }
  div[style*="grid-template-columns:1fr 1fr"] { grid-template-columns: 1fr !important; }
}

/* WhatsApp floating button hover */
.whatsapp-fab:hover{transform:scale(1.06);}
.whatsapp-fab{transition:transform 150ms ease-out;}
