@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500&family=Manrope:wght@700;800&display=swap");@layer reset, tokens, base, components, utilities;@layer reset{*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{min-height:100dvh}img,video{display:block;max-width:100%;height:auto}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer;border:none;background:none}ol,ul{list-style:none}}@layer base{body{font-family:var(--font-body);font-weight:var(--font-weight-body);color:var(--color-ink);background:var(--color-white);line-height:1.6;-webkit-font-smoothing:antialiased}h1,h2,h3,h4{font-family:var(--font-heading);font-weight:800;color:var(--color-navy);line-height:1.05;text-transform:uppercase;letter-spacing:-.02em}h1{font-size:clamp(2.5rem,7vw,5rem)}h2{font-size:clamp(2rem,5vw,3.5rem)}h3{font-size:clamp(1.3rem,3vw,1.75rem)}p{max-width:65ch}::selection{background:var(--color-green);color:var(--color-white)}}@layer components{.container{width:100%;max-width:var(--max-width);margin-inline:auto;padding-inline:var(--space-sm)}@media (min-width:768px){.container{padding-inline:var(--space-md)}}.btn-primary{display:inline-flex;align-items:center;gap:var(--space-xs);padding:1rem 2rem;background:var(--color-green);color:var(--color-white);font-weight:700;font-size:1.1rem;text-transform:uppercase;letter-spacing:.05em;transition:all var(--transition-fast)}.btn-primary:hover{background:var(--color-green-hover);transform:translateY(-2px);box-shadow:0 8px 24px rgba(76,159,56,.3)}.btn-outline{display:inline-flex;align-items:center;gap:var(--space-xs);padding:1rem 2rem;border:3px solid var(--color-navy);color:var(--color-navy);font-weight:700;text-transform:uppercase;letter-spacing:.05em;transition:all var(--transition-fast)}.btn-outline:hover{background:var(--color-navy);color:var(--color-white)}.section{padding-block:var(--space-xl)}@media (min-width:768px){.section{padding-block:var(--space-2xl)}}.section-mist{background:var(--color-navy)}.section-mist,.section-mist h2,.section-mist h3{color:var(--color-white)}.video-hero{position:relative;width:100%;min-height:80vh;display:flex;align-items:flex-end;justify-content:flex-start;overflow:hidden}@media (min-width:768px){.video-hero{min-height:90vh}}.video-hero .video-poster,.video-hero video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.video-hero .video-poster{z-index:1}.video-hero video{z-index:2}.video-hero-overlay{position:relative;z-index:3;text-align:left;padding:var(--space-xl) var(--space-lg);max-width:900px;width:100%}.video-hero-overlay:before{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(22,40,74,.85) 0,rgba(22,40,74,.4) 60%,transparent);z-index:-1}.video-hero-overlay h1,.video-hero-overlay p{color:var(--color-white)}.video-hero-overlay h1{border-left:4px solid var(--color-green);padding-left:var(--space-sm)}.video-hero-overlay p{margin-top:var(--space-sm);font-size:1.25rem;padding-left:calc(var(--space-sm) + 4px)}@media (prefers-reduced-motion:reduce){.video-hero video{display:none}.video-hero .video-poster{z-index:2}}.service-grid{display:grid;grid-gap:var(--space-md);gap:var(--space-md);grid-template-columns:1fr}@media (min-width:640px){.service-grid{grid-template-columns:repeat(2,1fr)}}.service-card{padding:var(--space-lg);background:var(--color-white);border-left:4px solid var(--color-green);transition:transform var(--transition-base),box-shadow var(--transition-base)}.service-card:hover{transform:translateX(4px);box-shadow:-4px 0 0 var(--color-navy)}.section-mist .service-card{background:hsla(0,0%,100%,.08);border-left-color:var(--color-green)}.section-mist .service-card p{color:hsla(0,0%,100%,.8)}.service-card h3{margin-bottom:var(--space-xs)}.stats-row{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:var(--space-md);gap:var(--space-md);text-align:center;padding-block:var(--space-lg)}.stat-number{font-family:var(--font-heading);font-weight:800;font-size:clamp(3rem,6vw,5rem);color:var(--color-green);line-height:1}.stat-label{margin-top:var(--space-xs);font-size:1rem;color:var(--color-white);font-weight:var(--font-weight-body-medium);text-transform:uppercase;letter-spacing:.1em}.values-grid{display:grid;grid-gap:var(--space-md);gap:var(--space-md);grid-template-columns:1fr}@media (min-width:640px){.values-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width:1024px){.values-grid{grid-template-columns:repeat(4,1fr)}}.value-card{padding:var(--space-md);text-align:left;border-top:3px solid var(--color-green)}.value-card h3{margin-bottom:var(--space-xs);color:var(--color-green);text-transform:uppercase}.contact-info{display:flex;flex-direction:column;gap:var(--space-sm)}.contact-info a{color:var(--color-green);font-weight:700;font-size:1.1rem;transition:color var(--transition-fast)}.contact-info a:hover{color:var(--color-green-hover)}.map-image{width:100%;max-width:600px;border:1px solid rgba(22,40,74,.08)}.cta-section{text-align:left;padding-block:var(--space-xl);background:var(--color-green)}.cta-section h2{margin-bottom:var(--space-xs);color:var(--color-white)}.cta-section p{margin-bottom:var(--space-md);color:hsla(0,0%,100%,.9)}.cta-section .btn-primary{background:var(--color-navy)}.cta-section .btn-primary:hover{background:var(--color-ink);box-shadow:0 8px 24px rgba(22,40,74,.3)}.two-col{display:grid;grid-gap:var(--space-lg);gap:var(--space-lg);grid-template-columns:1fr;align-items:start}@media (min-width:768px){.two-col{grid-template-columns:1fr 1fr}}}@layer utilities{.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.fade-in{animation:fadeIn var(--transition-base) ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}}@layer tokens{:root{--color-navy:#16284a;--color-green:#4c9f38;--color-green-hover:#3d8a2d;--color-ink:#1b2330;--color-mist:#f5f6f4;--color-white:#fff;--font-heading:"Manrope",system-ui,sans-serif;--font-body:"Inter",system-ui,sans-serif;--font-weight-heading:700;--font-weight-body:400;--font-weight-body-medium:500;--space-xs:0.75rem;--space-sm:1.25rem;--space-md:2rem;--space-lg:3rem;--space-xl:5rem;--space-2xl:7rem;--space-3xl:10rem;--radius-sm:0;--radius-md:0;--radius-lg:0;--max-width:1400px;--transition-fast:200ms ease;--transition-base:400ms cubic-bezier(0.16,1,0.3,1)}}