/* Base */
body{
  font-family:'Montserrat',sans-serif;
  margin:0;
  padding:0;
  color:#2E2E2E;
  background:#FFFFFF;
  line-height:1.5;
}
a{color:inherit;}
/* Header */
header{
  background:#1F2A44;
  color:#FFFFFF;
  padding:18px 12px;
  text-align:center;
}
.header-tagline{
  margin:10px 0 0;
  font-size:1.02em;
}
.logo-link{display:inline-block; text-decoration:none;}
.site-logo{
  max-width:420px;
  height:auto;
  display:block;
  margin:0 auto 6px auto;
}
/* Nav */
nav{
  background:#2E2E2E;
  text-align:center;
  padding:10px 8px;
}
nav a{
  color:#FFFFFF;
  text-decoration:none;
  margin:0 10px;
  font-weight:700;
  display:inline-block;
  padding:6px 4px;
}
nav a:hover{color:#4A6F5E;}
/* Layout */
section{
  padding:52px 16px;
  max-width:980px;
  margin:auto;
}
h2{
  color:#1F2A44;
  text-align:center;
  margin:0 0 18px;
}
h3{color:#1F2A44; margin-top:0;}
/* Cards & lists */
.card{
  border:1px solid #e6e6e6;
  border-radius:10px;
  padding:18px;
  margin:14px 0;
  background:#fff;
}
.clean-list{list-style:none; padding-left:0; margin:0;}
.clean-list li{padding:8px 0; border-bottom:1px solid #f0f0f0;}
.clean-list li:last-child{border-bottom:none;}
.small-muted{font-size:.95em; color:#555;}
/* Buttons */
.cta-button{
  display:inline-block;
  background:#1F2A44;
  color:#fff;
  padding:12px 18px;
  text-decoration:none;
  border-radius:6px;
  margin-top:10px;
  border:none;
  cursor:pointer;
  font-weight:700;
}
.cta-button:hover{background:#4A6F5E;}
.cta-button.secondary{background:#2E2E2E;}
.cta-button.secondary:hover{background:#4A6F5E;}
.button-row{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  justify-content:center;
  margin-top:10px;
}
/* Forms */
.service-form{margin-top:10px;}
.form-row{margin:12px 0;}
.form-row label{display:block; font-weight:700; margin-bottom:6px;}
.form-row input[type="text"],
.form-row input[type="email"],
.form-row input[type="tel"],
.form-row select,
.form-row textarea{
  width:100%;
  max-width:720px;
  box-sizing:border-box;
  padding:10px;
  border-radius:6px;
  border:1px solid #cfcfcf;
  font-size:1em;
}
.checkbox-row{display:flex; align-items:flex-start; gap:10px;}
.checkbox-row input[type="checkbox"]{margin-top:4px;}
/* Testimonials */
.quote{margin:0; font-style:italic;}
.quote-by{margin:10px 0 0; font-weight:700; color:#555;}
/* Hidden sections */
.hidden-section{display:none;}
/* Assets page */
.asset-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(240px, 1fr));
  gap:14px;
  align-items:start;
}
.asset-item img{
  width:100%;
  max-width:420px;
  border:1px solid #eee;
  border-radius:10px;
}
/* Footer */
footer{
  background:#2E2E2E;
  color:#FFFFFF;
  padding:22px 12px;
  margin-top:30px;
}
.footer-inner{max-width:980px; margin:0 auto; text-align:center;}
.footer-links a{color:#fff; text-decoration:none;}
.footer-links a:hover{color:#4A6F5E;}
.footer-copy{margin:10px 0 6px;}
.footer-disclaimer{font-size:.9em; color:#dddddd; margin:0;}
/* Optional: FAQ headings spacing */
#faq h3{margin-bottom:6px;}
/* Global image scaling */
img{max-width:100%; height:auto;}
/* Dark mode support */
@media (prefers-color-scheme: dark){
  body{background:#0f1116; color:#e8e8e8;}
  h2,h3{color:#cfd8ff;}
  .card{background:#141824; border-color:#2a3248;}
  .small-muted{color:#b9b9b9;}
  nav{background:#1b1f2b;}
  footer{background:#1b1f2b;}
  .footer-disclaimer{color:#b9b9b9;}
}

/* Cards */
.cards{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
  gap:16px;
  margin:16px 0;
}
.card{
  background:#ffffff;
  border:1px solid #e0e0e0;
  border-radius:10px;
  padding:16px;
  box-shadow:0 2px 10px rgba(0,0,0,0.06);
}
.card h3{margin-top:0;}
