:root {
  --bg: #f5f1e8;
  --surface: rgba(255,255,255,0.88);
  --surface-strong: #ffffff;
  --surface-soft: #edf4ec;
  --text: #1c2a21;
  --muted: #5d6a61;
  --primary: #2f6f46;
  --primary-dark: #1f4f31;
  --accent: #b98a45;
  --border: rgba(47,111,70,.12);
  --shadow: 0 20px 55px rgba(19,31,23,.10);
  --radius-xl: 30px;
  --radius-lg: 22px;
  --radius-md: 18px;
  --max: 1240px;
}
*{box-sizing:border-box} html{scroll-behavior:smooth} body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--text);line-height:1.6;background:linear-gradient(180deg,#f6f4ec,#efebe0)} a{text-decoration:none;color:inherit} img{max-width:100%;display:block}
.container{width:min(calc(100% - 2rem),var(--max));margin:0 auto}
.topbar{background:linear-gradient(90deg,var(--primary-dark),var(--primary));color:#fff;padding:.75rem 0}.topbar-items{display:flex;gap:1rem;flex-wrap:wrap;font-size:.95rem}.topbar a{color:#fff}
.site-header{position:sticky;top:0;z-index:100;background:rgba(245,241,232,.86);backdrop-filter:blur(12px);border-bottom:1px solid var(--border)}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:82px}.logo{display:flex;align-items:center;gap:.9rem;font-weight:800}.logo-mark{width:54px;height:54px;border-radius:18px;background:linear-gradient(135deg,var(--primary),#4b8a5f);display:grid;place-items:center;color:#fff;font-size:1.4rem;box-shadow:var(--shadow)}.logo-text small{display:block;color:var(--muted);text-transform:uppercase;font-size:.75rem;letter-spacing:.08em}.logo-text strong{font-size:1.05rem}
.site-nav{display:flex;gap:.35rem;align-items:center}.site-nav a{padding:.85rem 1rem;border-radius:999px;font-weight:700;color:var(--muted)}.site-nav a:hover,.site-nav a.active{background:rgba(255,255,255,.8);color:var(--text)}
.nav-toggle{display:none;background:transparent;border:0;font-size:1.8rem}
.hero-section{padding:3.2rem 0 5rem}.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:2rem;align-items:center}.eyebrow{display:inline-block;padding:.55rem .95rem;border-radius:999px;background:rgba(47,111,70,.1);color:var(--primary-dark);font-weight:800;margin-bottom:1rem;font-size:.92rem}.hero-section h1{font-size:clamp(2.6rem,6vw,5.1rem);line-height:.98;letter-spacing:-.06em;margin:0 0 1rem}.hero-section p{font-size:1.06rem;color:var(--muted);max-width:60ch}.button-row,.feature-pills{display:flex;gap:1rem;flex-wrap:wrap;margin-top:1.5rem}.btn{display:inline-flex;align-items:center;justify-content:center;padding:1rem 1.35rem;border-radius:999px;font-weight:800;border:0;cursor:pointer}.btn-primary{background:linear-gradient(135deg,var(--primary),var(--primary-dark));color:#fff;box-shadow:0 14px 28px rgba(47,111,70,.25)}.btn-secondary{background:#fff;color:var(--text);border:1px solid var(--border)}.feature-pills span{padding:.75rem 1rem;background:rgba(255,255,255,.78);border:1px solid var(--border);border-radius:999px;font-weight:700}
.hero-card{background:var(--surface);border:1px solid rgba(255,255,255,.45);padding:1rem;border-radius:34px;box-shadow:var(--shadow)}.hero-card img{width:100%;border-radius:24px}
.section{padding:0 0 5rem}.section-head{margin-bottom:2rem}.section h2,.page-hero h1{font-size:clamp(2rem,4vw,3.5rem);line-height:1.02;letter-spacing:-.05em;margin:0 0 .8rem}.section p,.page-hero p{color:var(--muted)}
.card-grid{display:grid;gap:1.4rem}.card-grid.three{grid-template-columns:repeat(3,1fr)}.card{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:var(--radius-xl);padding:1.5rem}.service-card ul{padding-left:1.2rem;margin:1rem 0 0}.service-card li{margin:.35rem 0}
.alt-section{padding-top:0}.split-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.highlight-box{background:linear-gradient(135deg,var(--primary-dark),var(--primary) 70%,#588f68);color:#fff;border-radius:var(--radius-xl);padding:2rem;box-shadow:var(--shadow)}.highlight-box p{color:rgba(255,255,255,.9)}.stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-top:1.5rem}.stats-grid div{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.12);border-radius:20px;padding:1rem}.stats-grid strong{display:block;margin-bottom:.35rem}.stack-cards{display:grid;gap:1rem}
.inner-page{padding:3rem 0 5rem}.page-hero{margin-bottom:2rem}
.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.3rem}.gallery-item{background:#fff;border-radius:28px;overflow:hidden;border:1px solid var(--border);box-shadow:var(--shadow)}.gallery-content{padding:1rem 1.1rem 1.2rem}
.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:1.5rem}.contact-list{display:grid;gap:1rem;margin-top:1.2rem}.contact-list div{padding:1rem;background:var(--surface-soft);border:1px solid var(--border);border-radius:18px}.contact-list strong{display:block;margin-bottom:.2rem} .form-card form{display:grid;gap:1rem;margin-top:1rem}.form-card label{display:grid;gap:.45rem;font-weight:700}.form-card input,.form-card textarea{padding:.95rem 1rem;border-radius:16px;border:1px solid var(--border);font:inherit}
.legal-box{background:var(--surface);padding:1.5rem;border-radius:26px;border:1px solid var(--border);box-shadow:var(--shadow)}
.site-footer{padding:2rem 0 3rem}.footer-inner{padding-top:1.5rem;border-top:1px solid var(--border);display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;color:var(--muted)}.footer-links{display:flex;gap:1rem;flex-wrap:wrap}
@media (max-width: 900px){.hero-grid,.split-grid,.contact-grid,.gallery-grid,.card-grid.three{grid-template-columns:1fr}.site-nav{display:none;position:absolute;top:100%;left:1rem;right:1rem;background:#fff;border:1px solid var(--border);border-radius:22px;padding:1rem;box-shadow:var(--shadow);flex-direction:column}.site-nav.open{display:flex}.nav-toggle{display:block}}
