
/* styles.css - minimal, clean layout inspired by the React design */
:root{
  --bg:#f8fafc;
  --dark:#2b2d30;
  --accent:#1f2937;
  --muted:#6b7280;
}

*{box-sizing:border-box}
body{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial; margin:0; color:var(--accent); background:var(--bg); -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale;}

.container{max-width:1100px; margin:0 auto; padding:0 24px;}

.site-header{position:relative; background:var(--dark); color:white; overflow:hidden; min-height:520px;}
.header-bg img{width:100%; height:520px; object-fit:cover; filter:grayscale(10%) contrast(90%); display:block; opacity:0.95;}
.header-overlay{position:absolute; inset:0; display:flex; flex-direction:column; justify-content:center; pointer-events:none;}
.header-top{display:flex; align-items:flex-start; padding-top:20px;}
.logo{width:64px; height:64px; object-fit:contain; pointer-events:auto; margin-left:8px;}

.header-content{pointer-events:auto; text-align:center; margin-top:10px;}
.header-content h1{font-size:56px; letter-spacing:0.16em; margin:8px 0; font-weight:700; text-transform:uppercase;}
.slogan-main{font-size:20px; margin-top:18px; opacity:0.95;}
.slogan-sub{font-size:14px; margin-top:8px; opacity:0.8; color:var(--bg);}

.cta-row{display:flex; gap:12px; justify-content:center; margin-top:22px;}
.btn{display:inline-block; padding:12px 20px; border-radius:999px; text-decoration:none; font-weight:600;}
.btn.primary{background:#ffffff; color:var(--dark); box-shadow:0 6px 18px rgba(0,0,0,0.12);}
.btn.ghost{border:1px solid rgba(255,255,255,0.14); color:rgba(255,255,255,0.95); background:transparent;}

.section{padding:48px 0 72px; display:flex; gap:32px; align-items:flex-start;}
.left{flex:2;}
.right{flex:1;}

.cards{display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:18px; margin-top:18px;}
.card{background:white; padding:20px; border-radius:12px; box-shadow:0 6px 16px rgba(16,24,40,0.06);}
.contact-card .btn.primary{display:inline-block; margin-top:12px;}

.footer{display:flex; justify-content:space-between; align-items:center; gap:12px; padding:24px 0; border-top:1px solid #e6e9ef; background:var(--bg);}
.footer-left{display:flex; align-items:center; gap:12px;}
.logo-sm{width:48px; height:48px; object-fit:contain;}
.muted{color:var(--muted); font-size:14px;}

@media (max-width:900px){
  .header-content h1{font-size:38px;}
  .site-header{min-height:420px;}
  .header-bg img{height:420px;}
  .section{flex-direction:column;}
  .footer{flex-direction:column; text-align:center; gap:8px;}
}
