@charset "UTF-8";
:root{--bg:#101719;--surface:#151e20;--teal:#18453B;--deep-teal:#18453B;--green-light:#2F6B5D;--green-readable:color-mix(in srgb,var(--green-light) 65%,var(--text));--green-heading:color-mix(in srgb,var(--green-light) 85%,var(--text));--text:#f1f3ef;--muted:#aab7b7;--line:#314044;--wrap:1280px;color-scheme:dark;font-family:Arial,Helvetica,sans-serif;font-size:16px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--bg);color:var(--text);line-height:1.65}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--green-readable);outline-offset:5px}button{cursor:pointer}p{margin:0 0 1.4rem;color:var(--muted)}h1,h2,h3{margin:0;line-height:1.1;font-weight:600}h2{font-size:clamp(2.3rem,3.5vw,3.5rem);letter-spacing:-.045em}h2 span{color:var(--muted)}h3{font-size:1.4rem;letter-spacing:-.02em;line-height:1.25}h1{font-family:'Arial Narrow',Impact,'Arial',sans-serif;font-stretch:condensed;font-weight:400;font-size:clamp(4rem,6.4vw,6.6rem);letter-spacing:-.025em;line-height:.99}h1 span:not(.period){color:var(--green-heading)}.period{color:var(--green-heading)}.wrap{width:min(var(--wrap),calc(100% - 112px));margin-inline:auto}.section{padding-block:105px}.section-label,.eyebrow,.technical-tag,.hero-bottom,.hero-caption,.value-strip,.brand-name small,.footer-bottom,.local-coordinate{font-family:'Courier New',monospace;font-size:.75rem;letter-spacing:.11em}.section-label{color:var(--green-readable);margin-bottom:30px}.section-heading{display:flex;justify-content:space-between;gap:40px;align-items:flex-end;margin-bottom:48px}.section-heading p{margin-bottom:4px;max-width:380px}.split{display:grid;grid-template-columns:1.05fr 1fr;gap:90px}.button{display:inline-flex;justify-content:center;align-items:center;min-height:52px;padding:15px 26px;background:var(--teal);border:1px solid var(--teal);color:var(--text);text-transform:uppercase;font-size:.8rem;font-weight:700;letter-spacing:.1em;transition:background .2s,color .2s}.button:hover{background:var(--green-light);border-color:var(--green-light)}.text-button{background:none;color:var(--text);padding:8px 0;border:0;border-bottom:1px solid var(--teal);font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;font-weight:700;display:inline-block}.text-button:hover{color:var(--green-readable)}.header{height:100px;padding-inline:56px;display:flex;align-items:center;justify-content:space-between;background:#101719;border-bottom:1px solid var(--line);position:relative;z-index:10}.brand{display:flex;align-items:center;gap:12px;width:max-content}.brand-mark{font-size:3.05rem;font-weight:800;letter-spacing:-.11em;line-height:1;position:relative;padding-right:8px}.brand-line{display:block;height:4px;background:var(--teal);position:absolute;bottom:-7px;left:0;right:8px}.brand-name{font-size:1.4rem;letter-spacing:.14em;font-weight:700;line-height:1.2}.brand-name small{display:block;font-size:.53rem;letter-spacing:.025em;font-weight:400;color:var(--muted);margin-top:8px}.header nav{display:flex;gap:32px;align-items:center}.header nav>a:not(.button){font-size:.875rem;color:#c0cbcb}.header nav>a:hover{color:var(--green-readable)}.header nav>.button:hover{color:var(--text)}.button-small{min-height:43px;padding:10px 18px;font-size:.7rem}.menu-toggle{display:none}.hero{position:relative;isolation:isolate;min-height:710px;overflow:hidden;background-color:#0e1719;background-image:linear-gradient(#22414624 1px,transparent 1px),linear-gradient(90deg,#22414624 1px,transparent 1px);background-size:60px 60px}.hero-art{position:absolute;z-index:-2;inset:0;background-image:url('../images/hero-blueprint.png');background-size:cover;background-position:center;opacity:.85}.hero:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#101719 0%,#101719ed 29%,#10171976 57%,#10171910 100%)}.hero-content{padding-top:65px;padding-bottom:100px}.eyebrow{font-size:.73rem;color:#b6c6c5;margin-bottom:42px}.cross{color:var(--green-readable);font-size:1.15rem;display:inline-block;margin-right:10px}.hero-location{font-size:1rem;letter-spacing:.31em;color:var(--text);margin-bottom:20px}.hero-description{font-size:1.1rem;line-height:1.6;color:#c1cece;margin-top:27px;margin-bottom:26px}.actions{display:flex;gap:32px;align-items:center}.hero-caption{position:absolute;right:56px;bottom:115px;display:flex;flex-direction:column;border-left:2px solid var(--teal);padding-left:14px;color:#c5d4d3;line-height:1.7;font-size:.625rem}.hero-bottom{position:absolute;bottom:0;left:0;right:0;border-top:1px solid #59757560;padding-block:22px;display:flex;justify-content:space-between;color:#a2b5b4;font-size:.65rem}.intro-copy p:last-child{margin-bottom:0}.intro h2{font-size:clamp(2.2rem,3.3vw,3.1rem)}.value-strip{margin-top:52px;padding-top:25px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;color:#b7c9c8;font-size:.65rem}.value-strip span:before{content:'+';color:var(--green-readable);margin-right:15px}.services{background:var(--surface);border-block:1px solid var(--line)}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line)}.service{position:relative;padding:34px 32px 36px}.service+.service{border-left:1px solid var(--line)}.service-number{position:absolute;right:24px;top:24px;font-family:'Courier New',monospace;font-size:.75rem;color:#829c9b}.line-icon{font-size:2.7rem;color:var(--green-readable);line-height:1;margin-bottom:31px}.service h3{margin-bottom:22px}.service p{font-size:.95rem;min-height:105px}.service ul{list-style:none;padding:22px 0 0;margin:0;border-top:1px solid var(--line)}.service li{font-size:.8rem;color:#bdcbca;padding:6px 0 6px 17px;position:relative}.service li:before{content:'+';position:absolute;left:0;color:var(--green-readable)}.feature-section{display:grid;grid-template-columns:1fr 1fr;padding-top:85px;gap:24px}.feature{border:1px solid var(--line);padding:42px;background:linear-gradient(140deg,#19272a,#101719)}.feature-teal{background:linear-gradient(140deg,#18453B,#142b25);border-color:#2F6B5D}.feature-top{display:flex;align-items:baseline;justify-content:space-between;gap:15px}.feature .section-label{font-size:.63rem;margin-bottom:45px}.technical-tag{font-size:.6rem;border:1px solid #2F6B5D80;padding:4px 7px;color:var(--green-readable);white-space:nowrap}.feature h2{font-size:clamp(2.2rem,3vw,3rem);margin-bottom:30px}.feature p{font-size:.95rem}.feature-teal p,.feature-teal h2 span{color:#b8cecd}.feature .text-button{margin-top:12px}.type-list{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}.type-list>span{font-size:1.2rem;border-bottom:1px solid var(--line);padding:22px 5px;display:flex;gap:22px}.type-list small{font: .7rem 'Courier New',monospace;color:var(--green-readable);padding-top:7px}.process{background:var(--surface);border-block:1px solid var(--line)}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);list-style:none;padding:0;margin:0;gap:34px}.step-number{font:3.7rem 'Arial Narrow',Impact,sans-serif;color:var(--green-readable);line-height:1;display:block;border-bottom:1px solid #4c6869;padding-bottom:23px;margin-bottom:24px}.process-grid h3{font-size:1.1rem;min-height:45px;margin-bottom:14px}.process-grid p{font-size:.9rem;margin:0}.process-note{font-size:.75rem;margin:35px 0 0;padding-top:20px;border-top:1px solid var(--line)}.large-copy{font-size:1.3rem;line-height:1.5;color:var(--text);margin-top:30px}.about .split{gap:100px}.reason-list article{display:flex;gap:26px;border-top:1px solid var(--line);padding:26px 0}.reason-list article>span{font:.8rem 'Courier New',monospace;color:var(--green-readable);padding-top:4px}.reason-list h3{font-size:1.2rem;margin-bottom:12px}.reason-list p{font-size:.95rem;margin:0}.professional-note{margin:34px 0 0;padding-top:25px;border-top:1px solid var(--line);font-size:.75rem;max-width:100%}.local-section{padding-block:70px;background-color:#14352e;background-image:linear-gradient(#73878015 1px,transparent 1px),linear-gradient(90deg,#73878015 1px,transparent 1px);background-size:36px 36px;border-block:1px solid #2F6B5D}.local-inner{display:grid;grid-template-columns:1fr 1fr;gap:100px;position:relative}.local-inner h2{font-size:3rem}.local-inner h2 span{color:#acc8c7}.local-inner p{color:#c3d2d1}.local-inner p:last-child{margin-bottom:0}.local-coordinate{color:var(--green-readable);position:absolute;right:0;bottom:-50px;font-size:.65rem;text-align:right}.contact{display:grid;grid-template-columns:.9fr 1.1fr;gap:100px;padding-block:110px}.contact-copy>p{margin-top:30px;max-width:390px}.contact-checklist{margin-top:40px;display:flex;flex-direction:column;gap:10px;color:#b3c8c7;font-size:.85rem}.contact-checklist span:before{content:'+';color:var(--green-readable);margin-right:12px}form label{display:flex;flex-direction:column;gap:8px;font-size:.8rem;color:#dce4e3;margin-bottom:20px}form label>span{color:var(--muted);font-size:.75rem}input,select,textarea{width:100%;min-width:0;min-height:47px;padding:12px 14px;border:1px solid #425457;border-radius:0;color:var(--text);background:#172124;font-size:.9rem}input::placeholder,textarea::placeholder{color:#86999b;opacity:1}textarea{resize:vertical}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-note{font-size:.75rem;margin:17px 0 0}.inquiry-result{border:1px solid var(--teal);padding:20px;margin-top:24px}.inquiry-result h3{font-size:1rem;margin-bottom:10px}.inquiry-result p{font-size:.85rem}.footer{border-top:1px solid var(--line);background:#0c1315}.footer-main{padding-block:45px;display:flex;justify-content:space-between;gap:30px;align-items:center}.footer-main p{font-size:.85rem;margin:0}.footer-main nav{display:flex;gap:24px;font-size:.8rem}.footer-main nav a:hover{color:var(--green-readable)}.footer-bottom{border-top:1px solid var(--line);padding-block:24px;display:flex;justify-content:space-between;gap:25px;color:#8ca1a1;font-size:.6rem;letter-spacing:.03em}.skip-link{position:fixed;left:20px;top:-100px;padding:12px 20px;background:var(--teal);color:var(--text);z-index:100}.skip-link:focus{top:10px}
@media(min-width:1600px){.hero-art{background-position:center 48%}.hero-content{padding-block:85px 130px}.hero{min-height:780px}}
@media(max-width:1100px){.wrap{width:calc(100% - 64px)}.header{padding-inline:32px}.header nav{gap:20px}.brand-name{font-size:1.15rem}.split,.about .split,.contact,.local-inner{gap:45px}.service{padding:28px 24px}.feature{padding:30px}.feature-top{display:block}.technical-tag{display:none}.hero-caption{right:32px}.section-heading p{max-width:310px}.type-list>span{font-size:1rem}.footer-main{flex-wrap:wrap}.footer-bottom>span:nth-child(2){display:none}}
@media(max-width:800px){.header{height:85px}.header nav{gap:16px}.header nav>a:not(.button){font-size:.75rem}.brand-name small{max-width:150px;font-size:.5rem}.hero{min-height:660px}.hero-art{background-position:64% center;opacity:.6}.hero:after{background:linear-gradient(90deg,#101719f7,#101719c0 55%,#10171935)}h1{font-size:clamp(3.5rem,8vw,5rem)}.hero-content{padding-top:55px}.hero-bottom span:last-child{display:none}.hero-caption{font-size:.55rem;bottom:85px}.section{padding-block:75px}.split{grid-template-columns:1fr;gap:32px}.section-heading{align-items:flex-start;flex-direction:column;gap:25px}.section-heading p{max-width:500px}.service-grid{grid-template-columns:1fr}.service+.service{border-left:0;border-top:1px solid var(--line)}.service{padding:30px}.service p{min-height:0;max-width:550px}.service h3 br{display:none}.service ul{display:flex;flex-wrap:wrap;gap:8px 24px}.line-icon{margin-bottom:20px}.value-strip{flex-wrap:wrap;font-size:.6rem}.feature-section{padding-top:65px;gap:16px}.feature{padding:25px}.feature h2{font-size:2.2rem}.feature p{font-size:.9rem}.feature .section-label{font-size:.57rem;margin-bottom:28px}.type-list{grid-template-columns:1fr 1fr}.process-grid{grid-template-columns:1fr 1fr;gap:35px}.about .split{gap:32px}.local-inner{gap:36px;grid-template-columns:1fr}.local-inner h2{font-size:2.6rem}.local-coordinate{bottom:-55px}.contact{grid-template-columns:1fr;gap:42px}.contact-copy>p{max-width:550px}.contact-checklist{flex-direction:row;flex-wrap:wrap;gap:15px;margin-top:20px}.footer-main nav{width:100%}.footer-main .brand-name small{max-width:none}}
@media(max-width:620px){.wrap{width:calc(100% - 40px)}.header{padding-inline:20px;height:82px}.brand-mark{font-size:2.4rem}.brand-name{font-size:1.05rem}.brand-name small{font-size:.44rem;letter-spacing:0;max-width:none}.menu-toggle{display:flex;gap:10px;align-items:center;border:1px solid var(--line);background:none;color:var(--text);font-size:.65rem;padding:9px 12px}.menu-toggle span{font-size:1rem}.header nav{display:none;position:absolute;top:82px;left:0;right:0;padding:25px;background:#151e20;border-bottom:1px solid var(--line);align-items:stretch;flex-direction:column;gap:22px}.header nav.is-open{display:flex}.header nav>a:not(.button){font-size:1rem}.hero{min-height:640px}.hero-content{padding-top:43px;padding-bottom:100px}.eyebrow{font-size:.6rem;letter-spacing:.035em;margin-bottom:32px}.cross{margin-right:4px}.hero-location{font-size:.75rem;letter-spacing:.24em;margin-bottom:20px}h1{font-size:clamp(2.55rem,10.2vw,4rem);line-height:1.05}.hero-description{font-size:1rem;max-width:340px;margin-top:28px}.desktop-break{display:none}.actions{gap:24px;flex-wrap:wrap}.button{font-size:.7rem;padding:14px 20px}.text-button{font-size:.7rem}.hero-caption{bottom:70px;right:20px;font-size:.5rem}.hero-bottom{font-size:.52rem;letter-spacing:.07em}.hero-art{background-position:66% center;opacity:.48}.section{padding-block:62px}.section-label{font-size:.63rem;margin-bottom:25px}h2,.intro h2{font-size:2.2rem}.value-strip{display:grid;gap:14px;margin-top:35px}.section-heading{margin-bottom:32px}.service{padding:27px 24px}.service h3{font-size:1.3rem}.service ul{display:block}.feature-section{grid-template-columns:1fr;padding-top:50px;gap:20px}.feature{padding:30px 25px}.feature h2{font-size:2.3rem}.feature p{font-size:1rem}.type-list{grid-template-columns:1fr}.type-list>span{font-size:1.1rem;padding-block:17px}.process-grid{gap:35px 20px}.step-number{font-size:3rem}.process-grid h3{font-size:1rem;min-height:48px}.process-grid p{font-size:.9rem}.reason-list article{gap:18px}.large-copy{font-size:1.2rem}.local-section{padding-block:55px}.local-inner h2{font-size:2.3rem}.local-coordinate{bottom:-45px;font-size:.55rem}.field-row{grid-template-columns:1fr;gap:0}.footer-main{padding-block:35px;gap:25px}.footer-main p{width:100%}.footer-main nav{flex-wrap:wrap;gap:20px}.footer-bottom{font-size:.6rem;align-items:flex-start;gap:12px}.footer-bottom>span{max-width:235px}.footer-bottom>a{white-space:nowrap}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.parent-brand{display:flex;align-items:center;gap:24px}.kgm2-logo-frame{position:relative;overflow:hidden;width:180px;height:120px;flex:0 0 180px}.kgm2-logo{position:absolute;width:300px;height:auto;max-width:none;left:50%;top:50%;transform:translate(-56%,-46%)}
@media(max-width:1100px){.parent-brand{gap:16px}.footer-main{align-items:center}}
@media(max-width:620px){.parent-brand{width:100%;flex-wrap:wrap;gap:16px}.parent-brand p{width:auto}}
.header-phone{white-space:nowrap;font-variant-numeric:tabular-nums}.button-call{background:transparent;border-color:var(--green-light);color:var(--text);white-space:nowrap}.button-call:hover{background:var(--green-light);color:var(--text)}
.kgm2-logo{mix-blend-mode:lighten}
.brand-mark{letter-spacing:-.065em}.header-brands{display:flex;align-items:center;gap:24px}.header-kgm2{width:105px;height:70px;flex:0 0 105px}.header-kgm2 .kgm2-logo{width:175px}
@media(min-width:1101px) and (max-width:1250px){.header nav{gap:18px}.header-brands{gap:16px}}
@media(max-width:1100px){.header-brands{gap:12px}.header-kgm2{width:80px;height:54px;flex-basis:80px}.header-kgm2 .kgm2-logo{width:133px}}
@media(min-width:621px) and (max-width:900px){.header{padding-inline:20px}.header nav{gap:12px}.header-kgm2{width:66px;height:44px;flex-basis:66px}.header-kgm2 .kgm2-logo{width:110px}.header-brands{gap:10px}}
@media(max-width:620px){.header-brands{gap:10px}.header-kgm2{width:66px;height:44px;flex-basis:66px}.header-kgm2 .kgm2-logo{width:110px}}
@media(max-width:360px){.header-brands{gap:6px}.header-kgm2{width:50px;height:34px;flex-basis:50px}.header-kgm2 .kgm2-logo{width:83px}.header .brand{gap:8px}.header .brand-name{font-size:.95rem}.header .brand-name small{font-size:.39rem}.header .menu-toggle{padding-inline:8px}}
@media(max-width:360px){.header .brand-name small{font-size:.35rem}}
@media(min-width:621px) and (max-width:1100px){.header nav>.header-phone{display:none}}
@media(max-width:620px){.actions{gap:16px}.actions>.button{min-height:48px}.actions>.text-button{margin-right:50%}.header nav>.header-phone{min-height:44px;display:flex;align-items:center}}
/* Header-only block i. Native character retains its original footprint; rectangles supply the visible mark. */
.header .architectural-i{position:relative;color:transparent}.header .architectural-i:before,.header .architectural-i:after{content:'';position:absolute;left:.055em;width:.19em;background:var(--text)}.header .architectural-i:before{top:.385em;height:.19em}.header .architectural-i:after{top:.68em;height:.435em}
/* Small labels on green surfaces need a slightly lighter tint for text contrast. */
.local-section .section-label,.feature-teal .section-label,.feature-teal .technical-tag{color:color-mix(in srgb,var(--green-light) 50%,var(--text))}
