:root{
  --bg:#fffaf0;
  --card:#fff8ef;
  --accent:#2b6cb0;
  --muted:#6b6b6b;
  --brown:#c49a6c;
  --text:#222;
  --max:1100px;
  --pad:18px;
  font-family: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial;
}
*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;
  line-height:1.5;font-size:16px;
}
.container{max-width:var(--max);margin:0 auto;padding:28px}

.site-header {
  position: sticky;
  top: 0;
  z-index: 999;
  background: rgba(255, 255, 255, 0.96); /* slightly translucent */
  backdrop-filter: blur(8px); /* frosted glass effect */
  border-bottom: 1px solid rgba(0,0,0,0.06);
}

.site-header .nav a {
  color: #333; /* dark text for contrast */
}

.header-inner{display:flex;align-items:center;justify-content:space-between}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:inherit}
.brand-text{font-weight:700;font-size:20px}
.nav a{margin-left:18px;text-decoration:none;color:var(--muted)}
.nav a.cta{background:var(--accent);color:#fff;padding:8px 12px;border-radius:8px}

.hero{padding:46px 0; background-image: linear-gradient( rgba(255,250,245,0.7), rgba(255,250,245,0.7) ), url(''); background-size:cover}
.hero-inner{display:flex;gap:28px;align-items:center;flex-wrap:wrap}
.hero-copy{flex:1;min-width:260px}
.hero-copy h1{font-size:36px;margin:0 0 10px}
.lead{color:var(--muted);margin-bottom:18px}
.btn-primary{background:var(--accent);color:#fff;padding:12px 18px;border-radius:10px;text-decoration:none;display:inline-block}

.services {
  padding: 4rem 0;
  background: #fff;
}

.services-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 1.8rem;
  list-style: none;
  margin: 2rem 0 0;
  padding: 0;
}

.services-grid li {
  background: #faf6ef;
  border: 1px solid #e7d8c2;
  border-radius: 8px;
  padding: 1.2rem 1.1rem;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
  display: flex;
  gap: 0.9rem;
  align-items: flex-start;
}

.service-icon {
  flex: 0 0 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 2px;
}

.service-icon svg {
  width: 32px;
  height: auto;
  display: block;
}

.service-text {
  flex: 1;
}

.services-grid li strong {
  display: block;
  font-size: 1.05rem;
  margin-bottom: 0.25rem;
  color: #533e2d;
}

.services-grid li span {
  display: block;
  font-size: 0.9rem;
  line-height: 1.4;
  color: #6f5d4d;
}

.services-grid li:hover {
  transform: translateY(-4px);
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.1);
}

.services-grid li strong {
  display: block;
  font-size: 1.15rem;
  margin-bottom: 0.4rem;
  color: #533e2d;
}

.services-grid li span {
  display: block;
  font-size: 0.92rem;
  line-height: 1.4;
  color: #6f5d4d;
}

.local-seo{margin-top:12px;color:var(--muted);font-size:14px}

.how-it-works{padding:26px 0}
.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:18px;margin-top:18px}
.step{background:#fff;padding:18px;border-radius:10px;box-shadow:0 4px 14px rgba(10,10,10,0.03)}
.step-icon{width:44px;height:44px;border-radius:8px;background:var(--brown);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;margin-bottom:10px}

.quote{padding:30px 0;background:linear-gradient(180deg, rgba(255,255,255,0.6), rgba(255,255,255,0.6))}
.form{max-width:900px;margin:0 auto}
.form-row{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:12px}
.form-row label{font-size:13px;color:var(--muted);display:block;margin-bottom:6px}
input[type="text"],input[type="email"],input[type="tel"],select,textarea{width:100%;padding:10px;border-radius:8px;border:1px solid #e6e6e6;background:white}
textarea{resize:vertical}
fieldset.appointment{border:1px solid #eee;padding:12px;border-radius:8px;margin-bottom:12px}
.option{display:flex;align-items:center;gap:8px;margin-bottom:8px}
.form-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.privacy{font-size:13px;color:var(--muted);margin:0}

.faq{padding:26px 0}
.grid-faq{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}

.site-footer{border-top:1px solid rgba(0,0,0,0.05);padding:22px 0;background:transparent}
.footer-inner{display:flex;gap:18px;justify-content:space-between;flex-wrap:wrap}

@media (max-width:780px){
  .form-row{grid-template-columns:1fr}
  .hero-copy h1{font-size:26px}
  .nav{display:none}
}

.hero-art {
  flex: 1;
  min-width: 220px;
  display: flex;
  justify-content: center;
  align-items: center;
}

.hero-art svg {
  max-width: 100%;
  height: auto;
  display: block;
}
