:root{
  --brand:#d32f2f;
  --bg:#ffffff;
  --text:#222;
  --muted:#666;
}
*{box-sizing:border-box}
body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,'Helvetica Neue',Arial;line-height:1.5;color:var(--text);background:var(--bg)}
.container{max-width:1000px;margin:0 auto;padding:1rem}
.site-header{border-bottom:1px solid #eee}
.brand{font-weight:700;color:var(--brand);text-decoration:none;font-size:1.25rem;display:inline-flex;align-items:center}
.brand-logo{height:40px;width:auto;display:block}
.main-nav{display:inline-block;margin-left:2rem}
.main-nav a{margin-left:1rem;color:var(--text);text-decoration:none}
.hero{padding:3rem 0;text-align:center}
.hero h1{color:var(--brand);margin:0 0 .5rem}
.section{padding:2rem 0}
.services-list{list-style:none;padding:0;display:flex;gap:1rem;flex-wrap:wrap;justify-content:center}
.services-list li{background:#f7f7f7;padding:.75rem 1rem;border-radius:6px}
.btn{display:inline-block;background:var(--brand);color:#fff;padding:.5rem 1rem;border-radius:4px;text-decoration:none}
.site-footer{border-top:1px solid #eee;padding:1rem 0;text-align:center;color:var(--muted)}
/* Footer social link */
.site-footer .social-links{margin-top:.5rem}
.site-footer .social-links a{color:var(--text);text-decoration:none;margin-left:0.5rem;font-weight:600}
.site-footer .social-links a:hover{color:var(--brand)}
@media(min-width:700px){
  .main-nav a{margin-left:2rem}
  .hero{padding:6rem 0}
}

.gallery{display:flex;gap:1rem;flex-wrap:wrap;justify-content:center;margin-top:1.25rem}
.gallery figure{margin:0;max-width:320px;text-align:center}
.gallery img{width:100%;height:auto;border-radius:6px;display:block;box-shadow:0 6px 18px rgba(16,24,40,0.06)}
.gallery figcaption{font-size:.9rem;color:var(--muted);margin-top:.45rem}

/* Contact form styles */
.contact-form{max-width:880px;margin:1rem auto 0;display:flex;flex-direction:column;gap:1rem}
.contact-form .form-row{display:flex;gap:1rem;align-items:flex-start}
.contact-form .form-field{flex:1;display:flex;flex-direction:column;text-align:left}
.contact-form .form-field.full{flex-basis:100%}
.contact-form label span{font-weight:600;margin-bottom:.35rem;display:inline-block;color:var(--text)}
.contact-form input,.contact-form textarea{width:100%;padding:.75rem .9rem;border:1px solid #e6e9ee;border-radius:10px;background:#fff;font-size:1rem;color:var(--text);box-shadow:inset 0 1px 0 rgba(255,255,255,0.6)}
.contact-form input{height:44px}
.contact-form textarea{min-height:140px}
.contact-form input:focus,.contact-form textarea:focus{outline:none;border-color:rgba(211,47,47,0.18);box-shadow:0 6px 18px rgba(16,24,40,0.06)}
.contact-form .form-actions{justify-content:space-between;align-items:center}
.contact-form .help{color:var(--muted);margin-right:1rem}

/* Card and layout adjustments for contact section */
.section.contact .container{max-width:880px;margin-left:auto;margin-right:auto;text-align:left}
.section.contact .section-title{text-align:left;margin-top:0}
.section.contact .lead{color:var(--muted);margin-bottom:1rem}
.form-card{background:linear-gradient(180deg,#ffffff,#fbfdff);padding:1.25rem;border-radius:12px;box-shadow:0 10px 30px rgba(13,38,59,0.06);border:1px solid rgba(15,23,42,0.04)}
.form-card .contact-form{margin:0}

/* Button improvements */
.btn{display:inline-block;background:var(--brand);color:#fff;padding:.65rem 1.1rem;border-radius:8px;text-decoration:none;border:none;cursor:pointer;font-weight:600;box-shadow:0 6px 18px rgba(211,47,47,0.12)}
.btn:hover{transform:translateY(-1px)}
.btn:active{transform:translateY(0)}

@media(max-width:700px){
  .contact-form .form-row{flex-direction:column}
  .site-header{padding:20px}
  .form-card{padding:1rem}
  .btn{width:100%}
}
