:root{
  --mbc-red:#A71930; --mbc-black:#000; --mbc-gray:#A5ACAF; --mbc-white:#fff;
  --bg:#0b0b0b; --card:#111; --text:#f5f5f5; --muted:#c9c9c9;
  --ring: rgba(167,25,48,.35);
}

*{box-sizing:border-box}
body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:#070707;color:var(--text)}
a{color:inherit;text-decoration:none}
.container{width:min(1120px,92%);margin:0 auto}
.section{padding:56px 0}
.muted{color:var(--muted)}

.site-header{position:sticky;top:0;z-index:20;background:rgba(0,0,0,.85);backdrop-filter: blur(10px);border-bottom:1px solid #1c1c1c}
.header-inner{display:flex;align-items:center;gap:18px;padding:14px 0}
.brand{display:flex;align-items:center;gap:10px;font-weight:800}
.brand-mark{display:inline-grid;place-items:center;width:36px;height:36px;border-radius:10px;background:var(--mbc-red);color:#fff}
.brand-name{letter-spacing:.3px}
.nav{margin-left:auto}

/* --- NAV: remove bullets and normalize WP menu output --- */
.nav ul,
.nav ol,
.site-header ul,
.site-header ol,
.footer-nav ul,
.footer-nav ol,
.menu {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}
.menu{display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.menu li{margin:0 !important;padding:0 !important}
.menu li::marker{content:"" !important}
.menu a{padding:10px 10px;border-radius:10px;color:#fff;display:inline-flex;align-items:center}
.menu a:hover{background:#141414}

.header-cta{display:flex;gap:10px;align-items:center}
.hide-mobile{display:inline-flex}
@media (max-width: 900px){ .hide-mobile{display:none} }

.btn{display:inline-flex;align-items:center;justify-content:center;padding:10px 14px;border-radius:12px;font-weight:800;border:1px solid transparent;white-space:nowrap}
.btn-primary{background:var(--mbc-red);color:#fff;box-shadow:0 0 0 0 var(--ring)}
.btn-primary:hover{filter:brightness(1.05)}
.btn-outline{background:transparent;border-color:#2a2a2a}
.btn-outline:hover{border-color:var(--mbc-gray)}

.card{background:linear-gradient(180deg,#101010,#0b0b0b);border:1px solid #1f1f1f;border-radius:18px;padding:18px;box-shadow:0 12px 30px rgba(0,0,0,.35)}
.grid-2{display:grid;grid-template-columns:1.1fr .9fr;gap:18px}
@media (max-width: 900px){.grid-2{grid-template-columns:1fr}}

.hero{padding:56px 0 18px}
.hero-inner{display:grid;grid-template-columns:1.1fr .9fr;gap:18px;align-items:stretch}
@media (max-width: 900px){.hero-inner{grid-template-columns:1fr}}
.hero h1{font-size:clamp(30px,4vw,46px);margin:0 0 10px}
.kicker{display:inline-flex;gap:8px;align-items:center;padding:8px 10px;border-radius:999px;background:#111;border:1px solid #222;color:#fff}
.kicker-dot{width:10px;height:10px;border-radius:50%;background:var(--mbc-red)}
.actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}

.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:18px}
@media (max-width: 900px){.service-grid{grid-template-columns:1fr}}

.service-tile{
  border-radius:18px;
  padding:16px;
  background:#0f0f0f;
  border:1px solid #1e1e1e;
  display:flex;
  gap:12px;
  align-items:flex-start;
}
.service-tile:hover{border-color:var(--mbc-gray);box-shadow:0 0 0 4px var(--ring)}
.service-icon{
  width:44px;height:44px;border-radius:14px;
  display:grid;place-items:center;
  background:rgba(167,25,48,.12);
  border:1px solid rgba(167,25,48,.25);
  font-size:20px;
  flex:0 0 auto;
}
.service-tile h3{margin:0 0 6px}
.service-tile p{margin:0}

.checklist{margin:10px 0 0; padding-left:18px}
.checklist li{margin:6px 0}

.site-footer{border-top:1px solid #1c1c1c;padding:24px 0;background:#050505}
.footer-inner{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}
.footer-bottom{padding-top:12px}
@media (max-width: 900px){.footer-inner{flex-direction:column}}

.portal-header{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:14px}

/* --- FORM CONTROLS: dark + aligned --- */
.card input,
.card select,
.card textarea,
.site-main input,
.site-main select,
.site-main textarea {
  width: 100%;
  height: 44px;
  padding: 10px 12px;
  border-radius: 12px;
  border: 1px solid #2a2a2a;
  background: #0c0c0c !important;
  color: var(--text) !important;
  outline: none;
  box-shadow: none !important;
  -webkit-appearance: none;
  appearance: none;
}

.card textarea,
.site-main textarea{
  height:auto;
  min-height:120px;
  resize:vertical;
}

.card input::placeholder,
.site-main input::placeholder,
.card textarea::placeholder,
.site-main textarea::placeholder {
  color: #8e8e8e;
}

.card input:focus,
.card select:focus,
.card textarea:focus,
.site-main input:focus,
.site-main select:focus,
.site-main textarea:focus {
  border-color: var(--mbc-gray);
  box-shadow: 0 0 0 4px var(--ring) !important;
}

.card input[type="date"],
.card input[type="time"]{
  color-scheme: dark;
}

.card select option,
.site-main select option {
  background: #0c0c0c;
  color: var(--text);
}

/* Improve label spacing inside plugin inline grids */
.card label{margin-bottom:6px}
.card .muted{line-height:1.35}

/* Make the plugin's inline grid stack nicely on smaller screens */
@media (max-width: 520px){
  .card div[style*="grid-template-columns:1fr 1fr 1fr"]{
    grid-template-columns:1fr !important;
  }
  .card div[style*="grid-template-columns:1fr 1fr;"]{
    grid-template-columns:1fr !important;
  }
}

/* Sticky Call Now (mobile only) */
.sticky-call{
  position:fixed;
  left:14px;
  right:14px;
  bottom:14px;
  z-index:9999;
  display:none;
  justify-content:center;
  align-items:center;
  gap:10px;
  padding:14px 16px;
  border-radius:16px;
  background:var(--mbc-red);
  color:#fff;
  font-weight:900;
  border:1px solid rgba(255,255,255,.08);
  box-shadow:0 16px 40px rgba(0,0,0,.55);
}
@media (max-width: 900px){
  .sticky-call{display:flex}
  body{padding-bottom:80px;} /* prevents overlap with content */
}
.archive .page-title,
.archive h1 {
  display: none;
}
