@font-face{font-family:Oswald;font-style:normal;font-weight:500;font-display:swap;src:url(../media/48cb8c496a1feb17-s.2cxn6_f21kzew.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Oswald;font-style:normal;font-weight:500;font-display:swap;src:url(../media/87ccb897ba116d44-s.2stk1byrn45r7.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Oswald;font-style:normal;font-weight:500;font-display:swap;src:url(../media/e9a8df42b0c6fb7a-s.33pk-ofy4si23.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Oswald;font-style:normal;font-weight:500;font-display:swap;src:url(../media/804b9eb4033edb5d-s.1aws_7qfq78t4.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Oswald;font-style:normal;font-weight:500;font-display:swap;src:url(../media/6ad1cda2f16975ee-s.p.1hb2l88ecv7fz.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Oswald;font-style:normal;font-weight:600;font-display:swap;src:url(../media/48cb8c496a1feb17-s.2cxn6_f21kzew.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Oswald;font-style:normal;font-weight:600;font-display:swap;src:url(../media/87ccb897ba116d44-s.2stk1byrn45r7.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Oswald;font-style:normal;font-weight:600;font-display:swap;src:url(../media/e9a8df42b0c6fb7a-s.33pk-ofy4si23.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Oswald;font-style:normal;font-weight:600;font-display:swap;src:url(../media/804b9eb4033edb5d-s.1aws_7qfq78t4.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Oswald;font-style:normal;font-weight:600;font-display:swap;src:url(../media/6ad1cda2f16975ee-s.p.1hb2l88ecv7fz.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Oswald;font-style:normal;font-weight:700;font-display:swap;src:url(../media/48cb8c496a1feb17-s.2cxn6_f21kzew.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Oswald;font-style:normal;font-weight:700;font-display:swap;src:url(../media/87ccb897ba116d44-s.2stk1byrn45r7.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Oswald;font-style:normal;font-weight:700;font-display:swap;src:url(../media/e9a8df42b0c6fb7a-s.33pk-ofy4si23.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Oswald;font-style:normal;font-weight:700;font-display:swap;src:url(../media/804b9eb4033edb5d-s.1aws_7qfq78t4.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Oswald;font-style:normal;font-weight:700;font-display:swap;src:url(../media/6ad1cda2f16975ee-s.p.1hb2l88ecv7fz.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Oswald Fallback;src:local(Arial);ascent-override:146.51%;descent-override:35.49%;line-gap-override:0.0%;size-adjust:81.43%}.oswald_1aa8ae9-module__dZo1vW__className{font-family:Oswald,Oswald Fallback;font-style:normal}.oswald_1aa8ae9-module__dZo1vW__variable{--font-oswald:"Oswald", "Oswald Fallback"}
@font-face{font-family:Work Sans;font-style:normal;font-weight:400;font-display:swap;src:url(../media/8e3fbf4aa84d044b-s.3we0903o7i6f-.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Work Sans;font-style:normal;font-weight:400;font-display:swap;src:url(../media/57dc28f7118abe14-s.15emath8fyzqj.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Work Sans;font-style:normal;font-weight:400;font-display:swap;src:url(../media/7ddd198311ba7843-s.p.31l30c9jv8unx.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Work Sans;font-style:normal;font-weight:500;font-display:swap;src:url(../media/8e3fbf4aa84d044b-s.3we0903o7i6f-.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Work Sans;font-style:normal;font-weight:500;font-display:swap;src:url(../media/57dc28f7118abe14-s.15emath8fyzqj.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Work Sans;font-style:normal;font-weight:500;font-display:swap;src:url(../media/7ddd198311ba7843-s.p.31l30c9jv8unx.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Work Sans;font-style:normal;font-weight:600;font-display:swap;src:url(../media/8e3fbf4aa84d044b-s.3we0903o7i6f-.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Work Sans;font-style:normal;font-weight:600;font-display:swap;src:url(../media/57dc28f7118abe14-s.15emath8fyzqj.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Work Sans;font-style:normal;font-weight:600;font-display:swap;src:url(../media/7ddd198311ba7843-s.p.31l30c9jv8unx.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Work Sans Fallback;src:local(Arial);ascent-override:83.09%;descent-override:21.71%;line-gap-override:0.0%;size-adjust:111.93%}.work_sans_fc4aef68-module__-oPp1q__className{font-family:Work Sans,Work Sans Fallback;font-style:normal}.work_sans_fc4aef68-module__-oPp1q__variable{--font-work-sans:"Work Sans", "Work Sans Fallback"}
:root{--navy:#121a38;--navy-2:#1b2450;--navy-3:#232d5c;--steel:#3a4048;--blue:#2a4092;--green:#109546;--green-light:#15b357;--green-dark:#0c7a3a;--off-white:#f5f4f1;--white:#fff;--grey-text:#5a6068;--grey-text-light:#7a8088;--border:#e4e2dd;--color-primary:var(--navy);--color-primary-foreground:var(--white);--color-accent:var(--green);--color-accent-hover:var(--green-dark);--color-accent-foreground:var(--navy);--color-secondary:var(--blue);--color-secondary-foreground:var(--white);--color-surface:var(--white);--color-surface-alt:var(--off-white);--color-foreground:var(--navy);--color-muted-foreground:var(--grey-text);--color-border:var(--border);--color-ring:var(--green);--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--space-24:6rem;--text-xs:.75rem;--text-sm:.85rem;--text-base:1rem;--text-md:1.05rem;--text-lg:1.15rem;--text-xl:clamp(1.3rem, 1.1rem + .8vw, 1.6rem);--text-2xl:clamp(1.8rem, 1.5rem + 1.4vw, 2.2rem);--text-3xl:clamp(2rem, 1.6rem + 1.8vw, 2.6rem);--text-4xl:clamp(2.2rem, 1.7rem + 2.4vw, 3.2rem);--text-5xl:clamp(2.6rem, 1.8rem + 3.6vw, 4.6rem);--radius:4px;--radius-sm:3px;--radius-md:6px;--radius-pill:999px;--shadow-sm:0 2px 8px #121a3814;--shadow:0 10px 30px #121a381f;--shadow-lg:0 20px 45px #121a382e;--max-width:1320px;--ease:cubic-bezier(.4, 0, .2, 1)}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}::selection{background:var(--green);color:var(--white)}:focus-visible{outline:2px solid var(--green);outline-offset:2px;border-radius:2px}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}body{font-family:var(--font-work-sans), -apple-system, Segoe UI, sans-serif;font-size:var(--text-base);color:var(--navy);background:var(--off-white);line-height:1.6;overflow-x:hidden}h1,h2,h3,h4{font-family:var(--font-oswald), "Arial Narrow", sans-serif;text-transform:uppercase;letter-spacing:.02em;color:var(--navy);font-weight:600;line-height:1.15}h3{font-size:var(--text-lg)}h4{font-size:var(--text-md)}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.container{max-width:var(--max-width);margin:0 auto;padding:0 24px}.btn{min-height:48px;font-family:var(--font-oswald), sans-serif;text-transform:uppercase;letter-spacing:.06em;font-size:var(--text-sm);border-radius:var(--radius);cursor:pointer;transition:background-color .2s var(--ease), border-color .2s var(--ease), color .2s var(--ease), transform .15s var(--ease), box-shadow .2s var(--ease);border:2px solid #0000;justify-content:center;align-items:center;gap:8px;padding:14px 30px;font-weight:600;display:inline-flex}.btn:active{transform:scale(.97)}.btn-primary{background:var(--green);color:var(--navy);border-color:var(--green)}.btn-primary:hover{background:var(--green-dark);border-color:var(--green-dark);box-shadow:0 8px 20px #10954647}.btn-outline{color:var(--white);background:0 0;border-color:#fff9}.btn-outline:hover{border-color:var(--white);background:#ffffff14}.btn-dark{background:var(--navy);color:var(--white);border-color:var(--navy)}.btn-dark:hover{background:var(--navy-3);border-color:var(--navy-3)}.btn:disabled,.btn[aria-disabled=true]{opacity:.5;cursor:not-allowed;box-shadow:none;transform:none}.site-header{z-index:1000;transition:background-color .25s var(--ease), box-shadow .25s var(--ease);background:#121a38e6;border-bottom:1px solid #ffffff14;position:fixed;top:0;left:0;right:0}.site-header .container{height:84px;transition:height .25s var(--ease);justify-content:space-between;align-items:center;display:flex}.site-header.scrolled{box-shadow:var(--shadow-sm);background:#121a38fa}.site-header.scrolled .container{height:72px}.brand{color:var(--white);align-items:center;gap:12px;display:flex}.brand-logo{flex:none;width:auto;height:42px}.footer-brand .brand-logo{height:46px}.main-nav ul{gap:36px;list-style:none;display:flex}.main-nav a{color:#ffffffd1;font-family:var(--font-oswald), sans-serif;letter-spacing:.07em;text-transform:uppercase;border-bottom:2px solid #0000;padding:6px 2px;font-size:.85rem;font-weight:500;transition:all .2s}.main-nav a:hover,.main-nav a.active{color:var(--green);border-bottom-color:var(--green)}.header-actions{align-items:center;gap:20px;display:flex}.header-phone{color:var(--white);font-family:var(--font-oswald), sans-serif;letter-spacing:.03em;align-items:center;gap:8px;font-size:.9rem;display:flex}.header-phone svg{fill:var(--green);flex:none}.nav-toggle{cursor:pointer;background:0 0;border:none;flex-direction:column;gap:5px;padding:8px;display:none}.nav-toggle span{background:var(--white);width:26px;height:2px}.hero{background:var(--navy);min-height:78vh;color:var(--white);align-items:center;display:flex;position:relative;overflow:hidden}.hero-bg{opacity:.48;background-position:50%;background-size:cover;position:absolute;inset:0}.hero-overlay{background:linear-gradient(100deg,#121a38e0 35%,#121a3894 100%);position:absolute;inset:0}.hero .container{z-index:2;padding-top:84px;position:relative}.hero-eyebrow{color:var(--green);font-family:var(--font-oswald), sans-serif;letter-spacing:.18em;text-transform:uppercase;align-items:center;gap:10px;margin-bottom:18px;font-size:.78rem;font-weight:600;display:inline-flex}.hero-eyebrow:before{content:"";background:var(--green);width:34px;height:2px}.hero h1{font-size:var(--text-5xl);max-width:780px;color:var(--white);margin-bottom:20px}.hero h1 em{color:var(--green);font-style:normal}.rotating-word{perspective:500px;display:inline-grid}.rotating-word span{opacity:0;transform-origin:50%;animation:rotate-hero-word 12s var(--ease) infinite forwards;grid-area:1/1}.rotating-word span:nth-child(2){animation-delay:3s}.rotating-word span:nth-child(3){animation-delay:6s}.rotating-word span:nth-child(4){animation-delay:9s}@keyframes rotate-hero-word{0%,20%{opacity:1;transform:rotateX(0)}25%,to{opacity:0;transform:rotateX(90deg)}}.hero p.lead{color:#ffffffc7;max-width:480px;margin-bottom:36px;font-size:1.15rem}.hero-ctas{flex-wrap:wrap;gap:16px;margin-bottom:48px;display:flex}.hero-stats{border-top:1px solid #ffffff26;flex-wrap:wrap;gap:50px;padding-top:28px;display:flex}.hero-stat .num{font-family:var(--font-oswald), sans-serif;color:var(--green);font-size:2.2rem;font-weight:600}.hero-stat .label{letter-spacing:.06em;text-transform:uppercase;color:#ffffffb3;font-size:.78rem}.page-header{background:var(--navy);color:var(--white);padding:190px 0 70px;position:relative;overflow:hidden}.page-header .hero-bg{opacity:.28}.page-header .hero-overlay{background:linear-gradient(100deg,#121a38f5 30%,#121a38b3 100%)}.page-header .container{z-index:2;position:relative}.page-header .crumb{color:var(--green);font-family:var(--font-oswald), sans-serif;letter-spacing:.1em;text-transform:uppercase;margin-bottom:14px;font-size:.78rem}.page-header h1{font-size:var(--text-4xl);color:var(--white)}.page-header p{color:#fffc;max-width:620px;margin-top:16px;font-size:1.05rem}section{padding:96px 0}.section-alt{background:var(--white)}.section-dark{background:var(--navy);color:var(--white)}.section-dark h2{color:var(--white)}.section-head{max-width:640px;margin-bottom:56px}.section-head.center{text-align:center;margin-left:auto;margin-right:auto}.eyebrow{color:var(--green-dark);font-family:var(--font-oswald), sans-serif;letter-spacing:.16em;text-transform:uppercase;align-items:center;gap:10px;margin-bottom:14px;font-size:.76rem;display:inline-flex}.eyebrow:before{content:"";background:var(--green-dark);width:30px;height:2px}.section-dark .eyebrow{color:var(--green)}.section-dark .eyebrow:before{background:var(--green)}.section-head h2{font-size:var(--text-3xl);margin-bottom:14px}.section-head p{color:var(--grey-text);font-size:1.02rem}.section-dark .section-head p{color:#ffffffbf}.about-grid{grid-template-columns:.9fr 1.1fr;align-items:center;gap:60px;display:grid}.about-media{position:relative}.about-media img{border-radius:var(--radius);box-shadow:var(--shadow)}.about-media .tag-box{background:var(--green);color:var(--navy);border-radius:var(--radius);font-family:var(--font-oswald), sans-serif;padding:22px 26px;position:absolute;bottom:-24px;left:-24px}.about-media .tag-box .num{font-size:1.8rem;font-weight:700;display:block}.about-media .tag-box .label{letter-spacing:.06em;text-transform:uppercase;font-size:.72rem}.about-copy p{color:var(--grey-text);margin-bottom:16px}.value-list{gap:14px;margin-top:28px;display:grid}.value-list li{align-items:flex-start;gap:12px;font-weight:500;list-style:none;display:flex}.value-list li:before{content:"";background:var(--green);flex:none;width:8px;height:8px;margin-top:8px;transform:rotate(45deg)}.grid{gap:28px;display:grid}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}.service-card{background:var(--white);border:1px solid var(--border);border-radius:var(--radius);padding:var(--space-8) var(--space-6);box-shadow:var(--shadow-sm);transition:transform .25s var(--ease), box-shadow .25s var(--ease), border-color .25s var(--ease);position:relative}.service-card:before{content:"";background:var(--green);transform-origin:0;height:3px;transition:transform .25s var(--ease);position:absolute;top:0;left:0;right:0;transform:scaleX(0)}.service-card:hover{box-shadow:var(--shadow-lg);border-color:#0000;transform:translateY(-4px)}.service-card:hover:before{transform:scaleX(1)}.service-card .idx{font-family:var(--font-oswald), sans-serif;color:var(--green-dark);font-size:var(--text-sm);letter-spacing:.06em;margin-bottom:var(--space-4);font-weight:600}.service-card h3{font-size:var(--text-lg);margin-bottom:var(--space-3)}.service-card p{color:var(--grey-text);font-size:var(--text-md)}.section-dark .service-card{background:var(--navy-2);border-color:#ffffff14}.section-dark .service-card h3{color:var(--white)}.section-dark .service-card p{color:#ffffffad}.project-card{background:var(--white);border-radius:var(--radius);box-shadow:var(--shadow-sm);color:inherit;transition:box-shadow .25s var(--ease), transform .25s var(--ease);flex-direction:column;display:flex;overflow:hidden}.project-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-3px)}.project-card .thumb{aspect-ratio:4/3;position:relative;overflow:hidden}.project-card .thumb img{object-fit:cover;width:100%;height:100%;transition:transform .4s var(--ease)}.project-card:hover .thumb img{transform:scale(1.06)}.status{background:var(--green);color:var(--navy);font-family:var(--font-oswald), sans-serif;font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;border-radius:var(--radius-pill);align-items:center;gap:6px;padding:6px 12px;font-weight:600;display:inline-flex}.status:before{content:"";background:var(--navy);border-radius:50%;flex:none;width:6px;height:6px}.status.ongoing{background:var(--blue);color:var(--white)}.status.ongoing:before{background:var(--white)}.project-card .status{position:absolute;top:16px;left:16px}.project-detail-copy .status{margin-bottom:16px}.project-card .body{flex-direction:column;flex:1;padding:26px;display:flex}.project-card .loc{color:var(--green-dark);letter-spacing:.08em;text-transform:uppercase;font-size:.75rem;font-family:var(--font-oswald), sans-serif;margin-bottom:8px}.project-card h3{margin-bottom:10px;font-size:1.3rem}.project-card p{color:var(--grey-text);flex:1;font-size:.95rem}.project-detail{border-bottom:1px solid var(--border);grid-template-columns:1fr 1fr;align-items:center;gap:60px;padding:80px 0;display:grid}.project-detail:last-child{border-bottom:none}.project-detail.reverse .project-detail-copy{order:2}.project-detail.reverse .project-detail-media{order:1}.project-detail-media{grid-template-columns:1fr 1fr;gap:14px;display:grid}.project-detail-media img{border-radius:var(--radius);box-shadow:var(--shadow);aspect-ratio:3/4;object-fit:cover}.project-detail-media img.wide{aspect-ratio:16/9;grid-column:1/-1}.project-detail-copy .loc{color:var(--green-dark);font-family:var(--font-oswald), sans-serif;letter-spacing:.08em;text-transform:uppercase;margin-bottom:10px;font-size:.8rem}.project-detail-copy h2{margin-bottom:16px;font-size:2rem}.project-detail-copy p{color:var(--grey-text);margin-bottom:16px}.detail-tags{flex-wrap:wrap;gap:10px;margin-top:20px;display:flex}.detail-tags span{border:1px solid var(--border);border-radius:var(--radius-pill);font-size:var(--text-xs);color:var(--navy);font-family:var(--font-oswald), sans-serif;letter-spacing:.03em;transition:border-color .2s var(--ease), color .2s var(--ease);padding:7px 16px}.detail-tags span:hover{border-color:var(--green);color:var(--green-dark)}.other-work .section-head{max-width:760px;margin-left:auto;margin-right:auto}.work-gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;display:grid}.work-gallery-item{border-radius:var(--radius);background:var(--navy);min-height:320px;box-shadow:var(--shadow);position:relative;overflow:hidden}.work-gallery-item:nth-child(7n+1),.work-gallery-item:nth-child(7n+5){grid-row:span 2;min-height:662px}.work-gallery-item img{object-fit:cover;width:100%;height:100%;transition:transform .45s var(--ease)}.work-gallery-item:after{content:"";pointer-events:none;background:linear-gradient(#0000,#09192ae0);position:absolute;inset:35% 0 0}.work-gallery-item:hover img{transform:scale(1.04)}.work-gallery-item figcaption{z-index:1;color:var(--white);position:absolute;bottom:22px;left:24px;right:24px}.work-gallery-item figcaption span{color:var(--green);font-family:var(--font-oswald), sans-serif;font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;margin-bottom:5px;display:block}.work-gallery-item figcaption h3{color:var(--white);font-size:1.25rem}.team-card{text-align:center}.team-card .photo{aspect-ratio:1;border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:20px;overflow:hidden}.team-card .photo img{object-fit:cover;width:100%;height:100%}.team-card h3{margin-bottom:4px;font-size:1.2rem}.team-card .role{color:var(--green-dark);font-family:var(--font-oswald), sans-serif;letter-spacing:.08em;text-transform:uppercase;font-size:.8rem}.cta-band{background:var(--navy);color:var(--white);position:relative;overflow:hidden}.cta-band .container{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:30px;padding:60px 24px;display:flex}.cta-band h2{color:var(--white);max-width:560px;font-size:clamp(1.6rem,3vw,2.2rem)}.cta-band .actions{flex-wrap:wrap;gap:16px;display:flex}.cta-band-light{background:var(--white);color:var(--navy)}.cta-band-light h2{color:var(--navy)}.cta-band-light .btn-outline{color:var(--navy);border-color:var(--navy)}.cta-band-light .btn-outline:hover{color:var(--white);border-color:var(--navy);background:var(--navy)}.contact-grid{grid-template-columns:1fr 1fr;gap:60px;display:grid}.contact-info-list{gap:22px;margin-top:30px;display:grid}.contact-info-item{align-items:flex-start;gap:16px;display:flex}.contact-info-item .icon{background:var(--navy);border-radius:var(--radius);flex:none;justify-content:center;align-items:center;width:46px;height:46px;display:flex}.contact-info-item .icon svg{fill:var(--green)}.contact-info-item .label{text-transform:uppercase;letter-spacing:.06em;color:var(--grey-text);margin-bottom:4px;font-size:.78rem}.contact-info-item .value{font-weight:600}.contact-info-item .value a:hover{color:var(--green-dark)}.form-card{background:var(--white);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:38px}.form-card h3{margin-bottom:8px}.form-card .form-intro{color:var(--grey-text);margin-bottom:26px;font-size:.92rem}.form-card .btn{justify-content:center;width:100%}.form-row{gap:8px;margin-bottom:20px;display:grid}.form-row label{font-family:var(--font-oswald), sans-serif;letter-spacing:.06em;text-transform:uppercase;color:var(--navy);font-size:.78rem}.form-row input,.form-row select,.form-row textarea{border:1px solid var(--border);border-radius:var(--radius);min-height:48px;font-family:inherit;font-size:var(--text-base);background:var(--off-white);transition:border-color .2s var(--ease), background-color .2s var(--ease);padding:13px 14px}.form-row textarea{min-height:140px}.form-row input:hover,.form-row select:hover,.form-row textarea:hover{border-color:var(--grey-text-light)}.form-row input:focus,.form-row select:focus,.form-row textarea:focus{outline:2px solid var(--green);outline-offset:1px;border-color:var(--green);background:var(--white)}.form-grid-2{grid-template-columns:1fr 1fr;gap:20px;display:grid}.map-embed{border:1px solid var(--border);border-radius:var(--radius);aspect-ratio:16/8;margin-top:40px;overflow:hidden}.map-embed iframe{border:0;width:100%;height:100%}.site-footer{background:var(--navy);color:#ffffffbf;padding:70px 0 30px}.footer-grid{border-bottom:1px solid #ffffff1a;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:40px;padding-bottom:50px;display:grid}.footer-brand .brand{margin-bottom:16px}.footer-grid p{color:#fff9;font-size:.92rem}.footer-col h4{color:var(--white);letter-spacing:.08em;margin-bottom:18px;font-size:.85rem}.footer-col ul{gap:12px;list-style:none;display:grid}.footer-col a{color:#ffffffa6;font-size:.92rem}.footer-col a:hover{color:var(--green)}.footer-bottom{color:#ffffff73;flex-wrap:wrap;justify-content:space-between;gap:10px;padding-top:26px;font-size:.82rem;display:flex}@media (max-width:980px){.main-nav{background:var(--navy);padding:30px 24px;transition:transform .25s;position:fixed;inset:84px 0 0;overflow-y:auto;transform:translateY(-110%)}.main-nav.open{transform:translateY(0)}.main-nav ul{flex-direction:column;gap:4px}.main-nav a{border-bottom:1px solid #ffffff14;padding:16px 4px;display:block}.nav-toggle{display:flex}.header-phone{display:none}.about-grid,.contact-grid,.project-detail,.project-detail.reverse{grid-template-columns:1fr}.project-detail.reverse .project-detail-copy,.project-detail.reverse .project-detail-media{order:initial}.grid-3,.grid-4{grid-template-columns:repeat(2,1fr)}.work-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.work-gallery-item:nth-child(7n+1),.work-gallery-item:nth-child(7n+5){grid-row:auto;min-height:380px}.footer-grid{grid-template-columns:1fr 1fr}}@media (max-width:600px){section{padding:64px 0}.grid-3,.grid-2,.grid-4,.work-gallery{grid-template-columns:1fr}.work-gallery-item,.work-gallery-item:nth-child(7n+1),.work-gallery-item:nth-child(7n+5){min-height:340px}.hero-stats{gap:30px}.footer-grid,.form-grid-2{grid-template-columns:1fr}.cta-band .container{flex-direction:column;align-items:flex-start}.header-actions .btn{min-height:38px;padding:8px 14px;font-size:.72rem}}.quote-block{text-align:center;max-width:820px;font-family:var(--font-oswald), sans-serif;color:var(--navy);border-top:2px solid var(--green);border-bottom:2px solid var(--green);margin:0 auto;padding:40px 10px;font-size:1.4rem;line-height:1.5}.directors-grid{max-width:680px;margin:0 auto}.mt-30{margin-top:30px}.section-intro-text{color:var(--grey-text)}.contact-heading{margin-bottom:10px;font-size:2rem}.service-card--dark{background:var(--navy);border-color:var(--navy);flex-direction:column;justify-content:center;display:flex}.service-card--dark h3{color:var(--white)}.service-card--dark p{color:#ffffffb3;margin-bottom:20px}.service-card--dark .btn{align-self:flex-start}.service-card--center{text-align:center}
