.contact-banner,.section-title.centered{text-align:center}:root{--background:#fcf9f8;--surface:#ffffff;--surface-low:#f6f3f2;--surface-line:#e5e2e1;--text:#1b1b1b;--muted:#414844;--primary:#0e2f22;--primary-deep:#00190f;--secondary:#306a44;--soft-green:#b2f1c1;--accent:#a73133;--accent-dark:#842124;--shadow:0 18px 45px rgba(28, 28, 28, 0.08)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Geist,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--background);color:var(--text);-webkit-font-smoothing:antialiased}img{display:block;max-width:100%}a{color:inherit}.material-symbols-outlined{font-variation-settings:"FILL" 0,"wght" 400,"GRAD" 0,"opsz" 24;line-height:1}.index-container{width:min(1280px,calc(100% - 4rem));margin-inline:auto}main{padding-top:80px}.index-hero{position:relative;min-height:520px;display:flex;align-items:center;overflow:hidden}.contact-media,.hero-media{position:absolute;inset:0;background-position:center;background-size:cover}.hero-media{background-image:url("../images/NAIROBI SKYLINE.png")}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,25,15,.92) 0,rgba(0,25,15,.58) 48%,rgba(0,25,15,.28) 100%)}.contact-banner,.hero-content,.intro-image-wrap{position:relative}.hero-content{padding-block:5rem}.hero-copy{max-width:700px}.hero-copy h1{margin:0 0 1.5rem;color:#fff;font-size:clamp(3rem, 6vw, 4.4rem);line-height:1.08;letter-spacing:-.045em}.hero-copy p{margin:0 0 2.5rem;color:rgba(255,255,255,.9);font-size:clamp(1.05rem, 2vw, 1.25rem);font-weight:300;line-height:1.75}.hero-actions{display:flex;flex-wrap:wrap;gap:1rem}.button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:52px;padding:.95rem 1.6rem;border-radius:.5rem;border:0;font:inherit;font-weight:700;text-decoration:none;transition:transform 180ms,background 180ms,color 180ms,border-color 180ms}.button:hover{transform:translateY(-1px)}.button-light{background:#fff;color:var(--primary)}.button-light:hover{background:var(--surface-low)}.button-ghost{color:#fff;border:2px solid rgba(255,255,255,.45);background:rgba(255,255,255,.08);backdrop-filter:blur(8px)}.button-ghost:hover{background:rgba(255,255,255,.16)}.button-outline{border:2px solid var(--accent);color:var(--accent);background:0 0}.button-outline:hover,.button-red{color:#fff;background:var(--accent)}.button-red{min-height:60px;padding-inline:2rem;box-shadow:0 18px 40px rgba(167,49,51,.3)}.button-red:hover{background:var(--accent-dark)}.intro-section{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:4rem;align-items:center;padding-block:6rem}.intro-image-wrap::before{content:"";position:absolute;inset:-1rem;border-radius:.75rem;background:rgba(48,106,68,.08);transition:transform .3s}.intro-image-wrap:hover::before{transform:scale(1.03)}.intro-image-wrap img{position:relative;width:100%;height:400px;object-fit:cover;border-radius:.75rem;box-shadow:var(--shadow)}.intro-copy h2,.section-title h2{margin:0;color:var(--primary);font-size:clamp(2.3rem, 4vw, 3rem);line-height:1.12;letter-spacing:-.04em}.intro-copy p{margin:1.5rem 0 2rem;color:var(--muted);font-size:1.08rem;line-height:1.85}.services-section{padding-block:6rem;background:var(--surface-low)}.section-title{margin-bottom:4rem}.section-title span{display:block;width:80px;height:6px;margin:1rem auto 0;border-radius:999px;background:var(--accent)}.section-title p{margin:1rem 0 0;color:#c7ebd7;font-size:1.1rem}.services-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem}.service-tile{padding:2rem;border-radius:.75rem;background:#fff;box-shadow:0 4px 20px rgba(28,28,28,.04);transition:transform 220ms,box-shadow 220ms}.service-tile:hover{transform:translateY(-.5rem);box-shadow:0 18px 45px rgba(28,28,28,.08)}.service-icon{width:56px;height:56px;display:grid;place-items:center;margin-bottom:1.5rem;border-radius:999px;color:var(--secondary);background:rgba(178,241,193,.28);transition:background 180ms,color 180ms}.service-icon .material-symbols-outlined{font-size:2rem}.service-tile:hover .service-icon{color:#fff;background:var(--secondary)}.service-tile h3{margin:0 0 1rem;color:var(--primary);font-size:1.25rem;line-height:1.3}.service-tile p{margin:0 0 2rem;color:var(--muted);line-height:1.75}.service-tile a{display:inline-flex;align-items:center;gap:.35rem;color:var(--secondary);font-weight:700;text-decoration:none;transition:gap 180ms}.service-tile a:hover{gap:.55rem}.why-section{padding-block:6rem;color:#fff;background:var(--primary)}.why-section .section-title h2{color:#fff}.why-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:3rem}.why-grid article{display:grid;gap:1rem;align-content:start}.why-grid .material-symbols-outlined{color:var(--accent);font-size:2.5rem}.why-grid h3{margin:0;font-size:1.15rem;line-height:1.35}.why-grid p{margin:0;color:rgba(255,255,255,.72);font-weight:300;line-height:1.75}.contact-banner{min-height:400px;display:grid;place-items:center;overflow:hidden}.contact-media{background-image:url("https://images.unsplash.com/photo-1497366754035-f200968a6e72?auto=format&fit=crop&w=1800&q=80")}.contact-overlay{position:absolute;inset:0;background:rgba(14,47,34,.82);backdrop-filter:blur(3px)}.contact-content{position:relative;display:grid;justify-items:center;gap:2rem;padding-block:4rem}.contact-content h2{max-width:860px;margin:0;color:#fff;font-size:clamp(2.4rem, 5vw, 3.6rem);line-height:1.12;letter-spacing:-.04em}@media (max-width:960px){.index-nav-links{position:absolute;top:80px;right:2rem;left:2rem;display:grid;gap:1rem;padding:1.25rem;border:1px solid var(--surface-line);border-radius:.75rem;background:rgba(255,255,255,.96);box-shadow:var(--shadow);transform:translateY(-1rem);opacity:0;pointer-events:none;transition:transform 180ms,opacity 180ms}.index-nav-links.open{transform:translateY(0);opacity:1;pointer-events:auto}.index-menu-toggle{display:block}.footer-grid,.intro-section,.services-grid,.why-grid{grid-template-columns:1fr}.intro-section{gap:3rem}.why-grid{gap:2rem}}@media (max-width:640px){.index-container,.index-nav{width:min(100% - 2rem,1280px)}.index-brand{font-size:1.05rem}.index-hero{min-height:600px}.hero-content,.intro-section,.services-section,.why-section{padding-block:4rem}.hero-copy h1{font-size:2.75rem}.button,.hero-actions{width:100%}.intro-image-wrap img{height:300px}.service-tile{padding:1.5rem}}