:root{
  --brand:#0f2a1d;
  --accent:#1ea44b;
  --accent2:#9ad96d;
  --text:#0f172a;
  --muted:#475569;
  --bg:#ffffff;
  --bg2:#f6f8fa;
  --border:#e5e7eb;
  --radius:18px;
  --max:1160px;
  --shadow:0 12px 35px rgba(2,6,23,.10);
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
  font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Arial;
  color:var(--text); background:var(--bg); line-height:1.6;
}
a{color:inherit;text-decoration:none}
a:hover{text-decoration:underline}
.wrap{max-width:var(--max); margin:0 auto; padding:0 22px;}
/* Top strip */
.topstrip{background:var(--brand); color:rgba(255,255,255,.9); font-size:13px;}
.topstrip .wrap{display:flex; align-items:center; justify-content:space-between; gap:14px; padding:10px 22px;}
.topstrip .mini{display:flex; gap:10px; flex-wrap:wrap; align-items:center;}
.chip{display:inline-flex; align-items:center; gap:8px; border:1px solid rgba(255,255,255,.22); padding:6px 10px; border-radius:999px;}
/* Header */
.header{position:sticky; top:0; z-index:60; background:rgba(255,255,255,.92); backdrop-filter:saturate(180%) blur(10px);
  border-bottom:1px solid var(--border);
}
.header .wrap{display:flex; align-items:center; justify-content:space-between; gap:14px; padding:14px 22px;}
.brand{display:flex; align-items:center; gap:12px;}
.mark{width:42px; height:42px; border-radius:14px; background:linear-gradient(135deg,var(--accent),#0ea5e9); box-shadow:var(--shadow);}
.brand b{display:block; font-weight:900; letter-spacing:.2px; line-height:1.05;}
.brand small{display:block; margin-top:2px; color:var(--muted); font-weight:650; font-size:12px;}
.nav{display:flex; gap:18px; align-items:center;}
.nav a{font-weight:800; color:#243043; font-size:14px; opacity:.86;}
.nav a.active{opacity:1; color:#111827;}
.actions{display:flex; gap:10px; align-items:center;}
.btn{display:inline-flex; align-items:center; justify-content:center; gap:10px; padding:11px 14px; border-radius:14px;
  font-weight:900; border:1px solid transparent; cursor:pointer;
}
.btn.primary{background:var(--accent); color:#fff;}
.btn.secondary{background:#fff; border-color:var(--border); color:#111827;}
.btn.ghost{background:transparent; border-color:var(--border); color:#111827;}
.btn.small{padding:9px 12px; border-radius:12px; font-size:13px;}
/* Hero */
.hero{
  position:relative;
  min-height: 520px;
  display:flex;
  align-items:flex-end;
  background:#0b1220;
  overflow:hidden;
}
.hero::before{
  content:"";
  position:absolute; inset:0;
  background:
    linear-gradient(180deg, rgba(2,6,23,.15) 0%, rgba(2,6,23,.72) 70%),
    url("../img/full-garden.webp") center/cover no-repeat;
  transform:scale(1.02);
  filter:saturate(1.05) contrast(1.02);
}
.hero .wrap{position:relative; padding: 56px 22px;}
.hero h1{margin:0 0 10px; color:#fff; font-size: clamp(32px, 4.2vw, 54px); letter-spacing:-.3px; line-height:1.06;}
.hero p{margin:0 0 18px; color:rgba(255,255,255,.88); font-size:18px; max-width:70ch;}
.hero .cta{display:flex; gap:10px; flex-wrap:wrap;}
.kpis{display:flex; gap:10px; flex-wrap:wrap; margin-top:18px;}
.kpis .chip{border-color:rgba(255,255,255,.22); color:rgba(255,255,255,.9);}
/* Sections */
.section{padding:46px 0;}
.section.alt{background:var(--bg2); border-top:1px solid var(--border); border-bottom:1px solid var(--border);}
.section h2{margin:0 0 12px; font-size:30px; letter-spacing:-.2px;}
.muted{color:var(--muted); margin:0 0 14px;}
/* Cards/Grid */
.grid{display:grid; grid-template-columns: repeat(12,1fr); gap:16px;}
.col-4{grid-column: span 4;}
.col-6{grid-column: span 6;}
.col-12{grid-column: span 12;}
.card{background:#fff; border:1px solid var(--border); border-radius:var(--radius); box-shadow: var(--shadow); overflow:hidden;}
.card.pad{padding:18px;}
.service h3{margin:0 0 6px; font-size:18px;}
.service p{margin:0; color:var(--muted);}
.meta{margin-top:12px; display:flex; flex-wrap:wrap; gap:10px;}
.pill{display:inline-flex; padding:6px 10px; border:1px solid var(--border); border-radius:999px; font-size:12px; color:var(--muted); background:var(--bg2);}
/* Portfolio cards */
.port{
  display:flex; flex-direction:column; height:100%;
}
.port .img{
  height:210px; background: #0b1220;
  background-size:cover; background-position:center;
}
.port .body{padding:16px;}
.port .body b{display:block; font-size:16px; margin-bottom:6px;}
.port .body span{color:var(--muted); font-size:13px;}
/* Process */
.steps{display:grid; grid-template-columns: repeat(3,1fr); gap:16px;}
.step{padding:18px;}
.step .n{width:38px; height:38px; border-radius:12px; background:var(--accent); color:#fff; display:flex; align-items:center; justify-content:center; font-weight:950;}
.step h3{margin:12px 0 6px;}
.step p{margin:0; color:var(--muted);}
/* Testimonials */
.quote{padding:18px; border-left:4px solid var(--accent); background:var(--bg2); border-radius:16px;}
.quote p{margin:0; font-weight:850; color:#111827;}
.quote footer{margin-top:8px; color:var(--muted); font-size:13px;}
/* Forms */
.form label{display:block; margin:10px 0 6px; font-weight:900; font-size:13px;}
.form input,.form select,.form textarea{width:100%; padding:11px 12px; border-radius:14px; border:1px solid var(--border); font-size:15px;}
.form textarea{min-height:130px;}
.form .row{display:grid; grid-template-columns:1fr 1fr; gap:12px;}
/* Footer */
.footer{background:#0b1220; color:rgba(255,255,255,.85); padding:34px 0; margin-top:24px;}
.footer .wrap{display:grid; grid-template-columns:1.2fr .8fr; gap:16px;}
.footer .muted{color:rgba(255,255,255,.72);}
.footer a{color:rgba(255,255,255,.92);}
/* Mobile bar */
.mobilebar{position:fixed; left:0; right:0; bottom:0; background:rgba(255,255,255,.96); border-top:1px solid var(--border);
  display:none; z-index:80;}
.mobilebar .wrap{display:grid; grid-template-columns:1fr 1fr 1fr; gap:10px; padding:10px 22px;}
@media (max-width: 980px){
  .nav{display:none;}
  .col-4,.col-6{grid-column:span 12;}
  .steps{grid-template-columns:1fr;}
  .form .row{grid-template-columns:1fr;}
  .mobilebar{display:block;}
  body{padding-bottom:80px;}
  .hero{min-height:520px;}
}