@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url('/assets/manrope-cyrillic-variable.woff2') format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url('/assets/manrope-latin-variable.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
:root{--paper:#f7f8f3;--white:#fff;--ink:#173b37;--muted:#657570;--mint:#aeded1;--teal:#11afa7;--dark:#102f2b;--card:#1c3d37;--border:#d6dfd7;--light:#bed0c7;--field-border:#78968c;--error:#ffd2c7;--gutter:clamp(24px,5vw,96px);--content:1296px;--radius:12px}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:24px}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Manrope,Arial,sans-serif;font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased}
body.menu-is-open{overflow:hidden}
h1,h2,h3,p,dl,dd,ul{margin:0}
ul{list-style:none;padding:0}
a{color:inherit;text-decoration:none;text-underline-offset:4px}
button,input,textarea{font:inherit}
button,a,input,textarea{-webkit-tap-highlight-color:transparent}
button{cursor:pointer}
img{display:block;max-width:100%}
button{color:inherit}
[hidden]{display:none!important}
:focus-visible{outline:3px solid var(--teal);outline-offset:5px}
.dark-section :focus-visible{outline-color:var(--mint)}
.container{width:calc(100% - var(--gutter)*2);max-width:var(--content);margin-inline:auto}
.eyebrow{font-size:11px;font-weight:700;line-height:1.4;letter-spacing:1.6px;text-transform:uppercase;color:var(--muted)}
.button{display:inline-flex;align-items:center;justify-content:space-between;gap:20px;min-height:56px;padding:16px 22px;border:1px solid transparent;border-radius:10px;font-size:14px;font-weight:700;line-height:1.4;text-align:left;letter-spacing:.05px;transition:background-color .18s,border-color .18s,transform .18s;white-space:nowrap}
.button>span[aria-hidden]{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:18px;height:18px}
.button svg{display:block;width:18px;height:18px;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;transition:transform .18s}
.button:hover svg{transform:translateX(1.5px)}
.button:active{transform:translateY(1px)}
.button-dark{background:var(--dark);color:var(--white)}
.button-dark:hover{background:#24534a}
.button-small{min-height:46px;padding:12px 18px;font-size:13px;gap:18px;border-radius:8px}
.button-teal{background:var(--teal);color:var(--dark)}
.button-teal:hover{background:#37c4b8}
.button-mint{background:var(--mint);color:var(--dark)}
.button-mint:hover{background:#c7eee2}
.button-outline{background:transparent;border-color:#b8c8c0;color:var(--ink);font-weight:600}
.button-outline:hover{background:#e9eee7;border-color:#839e91}
.hero-actions .button-outline:hover svg{transform:translateY(1.5px)}
.button:disabled{opacity:.65;cursor:wait;transform:none;box-shadow:none}
.button:disabled svg{transform:none}
.text-link{display:inline-flex;gap:10px;align-items:center;font-size:14px;font-weight:700;min-height:44px}
.text-link:hover,.desktop-nav a:hover,.header-phone a:hover,.footer-domain:hover{text-decoration:underline}
.skip-link{position:fixed;left:16px;top:12px;z-index:30;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;background:var(--dark);color:var(--white);border-radius:6px}
.skip-link:focus{width:auto;height:auto;margin:0;padding:12px 18px;overflow:visible;clip-path:none}
.header-row{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-block:26px 24px;border-bottom:1px solid var(--border)}
.brand{display:flex;align-items:center;gap:14px;flex-shrink:0;width:auto}
.brand-mark{width:38px;height:44px;display:flex;align-items:center;flex-shrink:0}
.brand-copy{display:flex;flex-direction:column;gap:4px}
.brand-name{font-size:16px;line-height:1.2;font-weight:700;letter-spacing:.2px;white-space:nowrap}
.brand-caption{font-size:9px;line-height:1.3;letter-spacing:1.3px;font-weight:500;color:var(--muted)}
.desktop-nav{display:flex;align-items:center;gap:20px;font-size:13px;font-weight:500}
.desktop-nav a{display:flex;align-items:center;min-height:44px;padding:0 4px}
.header-contact{display:flex;align-items:center;gap:24px}
.header-phone{display:flex;flex-direction:column;gap:3px;min-width:166px}
.header-phone a{font-size:16px;font-weight:700;line-height:1.3}
.header-phone span{font-size:11px;color:var(--muted)}
.header-contact .button{min-width:206px}
.menu-toggle{border:1px solid var(--border);border-radius:8px;background:transparent;width:46px;height:46px;flex-shrink:0;align-items:center;justify-content:center;flex-direction:column;gap:6px}
.menu-toggle span{display:block;width:20px;height:2px;background:var(--ink);transition:transform .2s}
.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4px) rotate(45deg)}
.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-4px) rotate(-45deg)}
.mobile-menu{padding-block:16px 24px;flex-direction:column}
.mobile-menu a{padding:14px 0;border-bottom:1px solid var(--border);font-size:18px;font-weight:600}
.hero{padding-top:44px;padding-bottom:56px}
.hero-grid{display:grid;grid-template-columns:minmax(0,724fr) minmax(0,528fr);gap:44px;align-items:center}
.hero-copy{display:flex;flex-direction:column;align-items:flex-start;gap:26px;min-width:0}
h1{font-size:clamp(48px,5.14vw,74px);font-weight:600;line-height:1.08;letter-spacing:-3.1px}
.hero-description{font-size:19px;line-height:1.5;color:var(--muted)}
.hero-actions{display:flex;gap:12px;align-items:center;max-width:100%}
.hero-actions .button{min-width:250px;flex-shrink:0}
.hero-actions .button-outline{min-width:166px}
.hero-image{position:relative;height:610px;min-width:0;border-radius:22px;overflow:hidden}
.hero-photo{width:100%;height:100%;object-fit:cover}
.photo-badge{position:absolute;left:24px;top:24px;display:inline-flex;align-items:center;min-height:34px;border-radius:30px;padding:8px 16px;background:var(--white);color:var(--ink);font-size:10px;font-weight:700;letter-spacing:.8px;line-height:1.4;text-transform:uppercase}
.photo-caption{position:absolute;bottom:24px;left:24px;right:24px;display:flex;gap:18px;align-items:center;min-height:112px;padding:24px;background:var(--dark);border-radius:12px;color:var(--white)}
.shield-icon{display:flex;align-items:center;justify-content:center;width:38px;height:38px;flex-shrink:0}
.photo-caption p{font-size:17px;font-weight:700;line-height:1.4;margin-bottom:6px}
.photo-caption span:not(.shield-icon){font-size:12px;color:var(--light);line-height:1.4;display:block}
.facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px;margin-top:42px;border-top:1px solid var(--border);padding-top:42px}
.facts dt{font-size:25px;line-height:1.25;letter-spacing:-.6px;font-weight:600;margin-bottom:8px}
.facts dd{font-size:13px;color:var(--muted);line-height:1.4}
.dark-section{background:var(--dark);color:var(--white)}
.dark-section .eyebrow{color:var(--mint)}
.solutions{padding-block:84px 80px}
.section-heading{display:grid;grid-template-columns:minmax(0,758fr) minmax(0,450fr);gap:88px;align-items:center;margin-top:38px;margin-bottom:38px}
h2{font-size:54px;font-weight:600;line-height:1.12;letter-spacing:-1.8px}
.section-heading>p{font-size:17px;color:var(--muted);line-height:1.55}
.dark-section .section-heading>p{color:var(--light)}
.service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.service-card{display:flex;flex-direction:column;align-items:stretch;gap:22px;min-width:0;padding:28px;background:var(--card);border-radius:var(--radius);transition:background-color .2s,box-shadow .2s}
.service-card:hover,.service-card:focus-within{background:#254c44;box-shadow:inset 0 0 0 1px #709e8e}
.service-card-top{display:flex;align-items:center;justify-content:space-between;font-size:12px;font-weight:500;line-height:1.4;color:var(--light)}
.service-icon{position:relative;display:block;width:36px;height:36px}
.service-icon img{position:absolute}
.fire-icon img{left:6.134px;top:2.635px}
.surveillance-icon img{left:3.627px;top:4.345px}
.door-icon img{left:2.502px;top:2.502px}
.maintenance-icon img{left:7.002px;top:2.502px}
.service-card h3{font-size:26px;font-weight:600;line-height:1.25;letter-spacing:-.5px}
.service-card p{font-size:15px;line-height:1.5;color:var(--light)}
.service-card-list{display:flex;flex-direction:column;gap:10px;margin:0;padding-top:16px;color:var(--light);font-size:14px;line-height:1.5}
.service-card-list li{position:relative;padding-left:16px}
.service-card-list li::before{content:'';position:absolute;left:0;top:.62em;width:6px;height:6px;border-radius:50%;background:var(--mint)}
.service-card-action{display:inline-flex;align-items:center;gap:8px;margin-top:3px;color:var(--mint);font-size:13px;font-weight:700}
.service-card-action svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;transition:transform .18s}
.service-card-action:hover{text-decoration:underline}
.service-card-action:hover svg{transform:translateX(3px)}
.service-details{margin-top:auto;padding-top:2px}
.service-details summary{display:flex;align-items:center;justify-content:space-between;min-height:44px;padding-block:8px;border-block:1px solid #4e7165;list-style:none;cursor:pointer;color:var(--light);font-size:14px;font-weight:600}
.service-details summary::-webkit-details-marker{display:none}
.service-details summary span{font-size:23px;font-weight:400;line-height:1;transition:transform .18s}
.service-details[open] summary span{transform:rotate(45deg)}
.solutions-bottom{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:38px}
.solutions-bottom>p{font-size:17px;font-weight:500}
.solutions-bottom .button{color:var(--mint);border-color:#6b9386;min-width:220px}
.solutions-bottom .button:hover{color:var(--dark)}
.projects{background:var(--white);padding-block:88px}
.projects .section-heading{margin-top:36px;margin-bottom:36px}
.project-toolbar{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px;margin-bottom:30px}
.project-filters{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.project-filters button{display:inline-flex;gap:8px;align-items:center;min-height:44px;padding:10px 16px;border:1px solid var(--border);border-radius:8px;background:transparent;color:var(--ink);font-size:13px;font-weight:600;line-height:1.4;transition:background-color .18s,border-color .18s}
.project-filters button:hover{background:var(--paper);border-color:#839e91}
.project-filters button[aria-pressed=true]{background:var(--dark);border-color:var(--dark);color:var(--white)}
.project-filters button span{opacity:.7;font-size:11px}
.project-count{font-size:12px;color:var(--muted)}
.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px 24px}
.project-card{min-width:0}
.project-photo{position:relative;height:248px;border-radius:14px;overflow:hidden;margin-bottom:22px}
.project-photo>img{width:100%;height:100%;object-fit:cover}
.project-photo .photo-badge{left:20px;top:20px;font-size:11px;font-weight:600;letter-spacing:0}
.project-card h3{font-size:21px;font-weight:600;line-height:1.3;letter-spacing:-.4px;margin-bottom:8px}
.project-card>p{font-size:15px;color:var(--muted);line-height:1.5}
.project-card .project-address{font-size:13px;color:var(--ink);font-weight:600;line-height:1.45;margin-bottom:8px}


.about{padding-block:80px 88px}
.about-grid{display:grid;grid-template-columns:minmax(0,370fr) minmax(0,846fr);gap:80px;margin-top:38px}
.company-year>p{font-size:116px;font-weight:500;line-height:1;letter-spacing:-7px;margin-bottom:14px}
.company-year>span{display:block;font-size:16px;line-height:1.5;color:var(--muted)}
.about-copy{display:flex;flex-direction:column;gap:24px}
.about-copy h2{font-size:44px;line-height:1.15;letter-spacing:-1.3px}
.about-copy>p{font-size:18px;color:var(--muted);line-height:1.55}
.regions{display:flex;flex-wrap:wrap;gap:12px}
.regions li{display:inline-flex;align-items:center;justify-content:center;padding:8px 16px;border-radius:30px;background:var(--white);font-size:11px;font-weight:600;min-height:34px;line-height:1.4}
.contact{padding-block:80px}
.contact-grid{display:grid;grid-template-columns:minmax(0,648fr) minmax(0,548fr);gap:100px;align-items:center}
.contact-copy{display:flex;flex-direction:column;align-items:flex-start;gap:26px;min-width:0}
.contact h2{font-size:66px;line-height:1.1;letter-spacing:-2.2px}
.contact-description{font-size:18px;line-height:1.5;color:var(--light)}
.contact-phone{font-size:30px;font-weight:600;line-height:1.3;letter-spacing:-.7px}
.contact-email{font-size:20px;color:var(--mint);font-weight:500;line-height:1.4}
.contact-phone:hover,.contact-email:hover{text-decoration:underline}
.contact-address{display:flex;flex-direction:column;gap:5px;margin-top:2px;max-width:370px;color:var(--light);font-size:14px;line-height:1.5}
.contact-address strong{color:var(--white);font-size:15px}
.contact-address a{display:inline-flex;align-items:center;gap:7px;width:max-content;margin-top:5px;color:var(--mint);font-weight:700}
.contact-address a:hover{text-decoration:underline}
.lead-form{position:relative;background:var(--card);border-radius:16px;padding:32px;display:flex;flex-direction:column;gap:24px;min-width:0}
.lead-form h3{font-size:26px;font-weight:600;line-height:1.25;letter-spacing:-.4px}
.form-intro{font-size:14px;color:var(--light);line-height:1.5;margin-top:-12px}
.field{display:flex;flex-direction:column;min-height:50px;position:relative}
.field label{font-size:15px;line-height:1.4;color:var(--light);cursor:text}
.field input,.field textarea{display:block;width:100%;padding:5px 0 7px;min-height:29px;background:none;border:0;border-bottom:1px solid #45635a;border-radius:0;color:var(--white);font-size:16px;line-height:1.4;outline-offset:4px}
.field textarea{resize:vertical;min-height:49px;max-height:220px}
.field input:focus,.field textarea:focus{border-bottom-color:var(--mint)}
.field [aria-invalid=true]{border-bottom-color:var(--error)}
.field-error{font-size:12px;line-height:1.5;color:var(--error);padding-top:6px}
.lead-form>.button{width:100%}
.consent-field label{display:flex;gap:10px;align-items:flex-start;font-size:12px;color:var(--light);line-height:1.5;cursor:pointer}
.consent-field input{flex-shrink:0;margin:1px 0 0;width:15px;height:15px;accent-color:var(--mint)}
.consent-field a{text-decoration:underline}
.form-status{padding:16px;border:1px solid var(--mint);border-radius:8px;font-size:14px;line-height:1.6;color:var(--white)}
.form-status.is-error{border-color:var(--error);color:var(--error)}
.honey-field{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}
.no-script-note{color:var(--light);font-size:12px}
.site-footer{padding-block:40px 32px}
.footer-row{display:flex;gap:30px;align-items:center;justify-content:space-between;margin-bottom:30px}
.footer-row address{font-size:13px;line-height:1.55;color:var(--muted);font-style:normal;min-width:430px}
.footer-domain{font-size:16px;font-weight:700;min-width:130px}
.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:24px;border-top:1px solid var(--border);padding-top:30px;font-size:11px;color:var(--muted);line-height:1.4}
.footer-bottom a:hover{text-decoration:underline}
.footer-links{display:flex;gap:22px;align-items:center}
.quick-contact{display:none}
.privacy-dialog{width:calc(100% - 32px);max-width:680px;max-height:85dvh;padding:32px;border:1px solid var(--border);border-radius:16px;background:var(--paper);color:var(--ink)}
.privacy-dialog::backdrop{background:#102f2bbf;backdrop-filter:blur(4px)}
.dialog-header{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:20px}
.dialog-close{display:flex;align-items:center;justify-content:center;border:1px solid var(--border);background:transparent;width:44px;height:44px;border-radius:50%;font-size:28px;line-height:1}
.privacy-dialog h2{font-size:30px;letter-spacing:-1px;line-height:1.2;margin-bottom:24px;overflow-wrap:anywhere}
.privacy-dialog>p{font-size:15px;margin-top:16px;color:var(--muted)}
.privacy-dialog a{text-decoration:underline;color:var(--ink)}
.privacy-page{max-width:780px;padding-block:64px}
.privacy-page h1{font-size:40px;letter-spacing:-1px;overflow-wrap:anywhere;margin-block:32px}
.privacy-page h2{font-size:24px;letter-spacing:-.5px;margin-block:32px 12px}
.privacy-page p{margin-block:16px}
.privacy-page a{text-decoration:underline}
@media(min-width:1600px){:root{--content:1440px}.hero-grid{grid-template-columns:1.37fr 1fr}.hero-image{height:650px}}
@media(min-width:1231px){.desktop-nav a{padding-inline:0}.hero-image>.photo-badge{width:260px}}
@media(max-width:1230px){.header-contact .button{min-width:unset}.header-contact{gap:14px}.header-phone{min-width:unset}.brand{width:auto}.desktop-nav{gap:12px}.desktop-nav a{padding-inline:0}.hero-grid{gap:32px}.hero-image{height:570px}.hero-description{font-size:17px}.desktop-break{display:none}.photo-caption{padding:20px;gap:12px}.photo-caption p{font-size:15px}.section-heading{gap:60px}.contact-grid{gap:60px}.service-card h3{font-size:24px}.footer-row address{min-width:unset}}
@media(max-width:1050px){.header-phone{display:none}.header-contact .button{font-size:12px;padding-inline:18px}.brand-name{font-size:14px}.brand-caption{font-size:8px}.brand{gap:10px}.hero-grid{grid-template-columns:1.2fr 1fr;gap:28px}h1{font-size:54px;letter-spacing:-2.5px}.hero-image{height:540px}.photo-caption{left:16px;right:16px;bottom:16px;padding:16px;gap:10px}.photo-badge{left:16px;top:16px;font-size:9px;padding:8px 12px}.photo-caption p{font-size:14px}.photo-caption span:not(.shield-icon){font-size:11px}.facts{gap:24px}.facts dt{font-size:23px}h2{font-size:46px}.section-heading{gap:36px}.service-card{padding:24px}.service-card h3{font-size:22px}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 20px}.project-photo{height:280px}.project-card h3{font-size:22px}.about-grid{gap:48px;grid-template-columns:1fr 2fr}.about-copy h2{font-size:38px}.contact-grid{gap:40px;grid-template-columns:1fr 1fr}.contact h2{font-size:58px}.contact-phone{font-size:26px}.lead-form{padding:26px}.footer-row{flex-wrap:wrap}.footer-row address{font-size:12px}}
@media(max-width:800px){:root{--gutter:28px}.header-row{padding-block:18px;gap:16px}.header-contact{margin-left:auto}.desktop-nav{gap:16px}.desktop-nav a{font-size:12px}.header-contact .button{display:none}.brand-name{font-size:13px}.brand-caption{font-size:7px}.brand-mark{width:32px}.brand-mark img{max-width:32px;height:auto}.hero{padding-top:36px;padding-bottom:44px}.hero-grid{grid-template-columns:1.13fr 1fr;gap:24px}h1{font-size:42px;letter-spacing:-1.8px}.hero-copy{gap:22px}.hero-description{font-size:15px}.eyebrow{font-size:10px;letter-spacing:1.3px}.hero-image{height:440px}.photo-caption .shield-icon{display:none}.photo-caption{min-height:94px}.photo-caption p{font-size:13px}.photo-badge{font-size:8px;left:12px;top:12px;max-width:calc(100% - 24px)}.facts{gap:20px;margin-top:32px;padding-top:32px}.facts dt{font-size:20px}.facts dd{font-size:12px}.solutions,.projects{padding-block:64px}.section-heading{gap:32px;grid-template-columns:1.2fr 1fr;margin-block:28px}h2{font-size:39px;letter-spacing:-1.3px}.section-heading>p{font-size:15px}.service-grid{gap:16px}.service-card{padding:22px;gap:18px}.service-card h3{font-size:21px}.service-card p{font-size:14px}.solutions-bottom>p{font-size:15px}.project-grid{gap:28px 20px}.project-photo{height:235px;margin-bottom:18px}.project-photo .photo-badge{font-size:9px;left:12px;top:12px}.project-card h3{font-size:20px}.project-card>p{font-size:14px}.about{padding-block:64px}.about-grid{gap:32px;grid-template-columns:1fr 2fr;margin-top:28px}.company-year>p{font-size:88px;letter-spacing:-5px}.company-year>span{font-size:14px}.about-copy h2{font-size:33px}.about-copy>p{font-size:16px}.regions{gap:8px}.regions li{padding:8px 12px;font-size:10px}.contact{padding-block:64px}.contact-grid{gap:28px}.contact h2{font-size:48px}.contact-copy{gap:22px}.contact-description{font-size:16px}.contact-phone{font-size:23px}.contact-email{font-size:18px}.lead-form{padding:24px;gap:22px}.lead-form h3{font-size:24px}.footer-row{row-gap:24px}.footer-domain{min-width:unset}.footer-row address{font-size:11px}.footer-row .brand{width:auto}}
@media(max-width:620px){:root{--gutter:20px}.header-row{padding-block:16px}.brand-name{font-size:13px}.brand-caption{font-size:7px;letter-spacing:1px}.brand-mark{width:32px;height:38px}.desktop-nav{display:none}.header-contact{display:none}.menu-toggle:not([hidden]){display:flex}.mobile-menu:not([hidden]){display:flex}.site-header:has(.menu-toggle[aria-expanded=true]){position:fixed;inset:0 0 auto;max-height:100dvh;overflow:auto;z-index:20;background:var(--paper);box-shadow:0 0 0 100vmax #102f2b80}.hero{padding-top:32px;padding-bottom:40px}.hero-grid{grid-template-columns:1fr;gap:32px}.hero-copy{gap:22px}h1{font-size:clamp(38px,9.5vw,58px);letter-spacing:-1.9px}.hero-description{font-size:16px;max-width:430px}.hero-image{height:430px;max-height:none;border-radius:16px}.hero-photo{object-position:center 43%}.photo-badge{left:18px;top:18px;font-size:9px;min-height:32px}.photo-caption{left:18px;right:18px;bottom:18px;min-height:96px;padding:18px;gap:14px}.photo-caption .shield-icon{display:flex;width:28px;height:34px}.photo-caption p{font-size:14px}.photo-caption span:not(.shield-icon){font-size:10px}.facts{grid-template-columns:1fr;gap:24px;margin-top:32px;padding-top:28px}.facts>div{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:start}.facts dt{font-size:19px;margin:0}.facts dd{font-size:12px}.solutions,.projects{padding-block:48px}.section-heading{grid-template-columns:1fr;gap:22px;margin-block:26px}.section-heading h2,h2{font-size:38px;letter-spacing:-1.3px}.section-heading>p{max-width:440px;font-size:15px}.service-grid{grid-template-columns:1fr;gap:14px}.service-card{padding:24px;gap:20px}.service-card h3{font-size:23px}.service-card p{font-size:14px;max-width:380px}.solutions-bottom{align-items:flex-start;flex-direction:column;gap:12px;margin-top:26px}.solutions-bottom>p{font-size:15px}.solutions-bottom .button{width:100%}.projects .section-heading{margin-block:26px}.project-grid{grid-template-columns:1fr;gap:36px}.project-photo{height:auto;aspect-ratio:1.9;margin-bottom:18px}.project-card h3{font-size:23px}.project-card>p{font-size:14px}.project-photo .photo-badge{left:16px;top:16px;font-size:9px}.about{padding-block:48px}.about-grid{grid-template-columns:1fr;gap:32px;margin-top:28px}.company-year{display:flex;align-items:center;gap:28px}.company-year>p{font-size:88px;margin:0;letter-spacing:-5px}.company-year>span{font-size:13px}.about-copy{gap:22px}.about-copy h2{font-size:32px;letter-spacing:-1px}.about-copy>p{font-size:16px}.contact{padding-block:48px}.contact-grid{grid-template-columns:1fr;gap:36px}.contact-copy{gap:22px}.contact h2{font-size:52px;letter-spacing:-1.7px}.contact-phone{font-size:27px}.contact-email{font-size:19px}.contact-description{font-size:17px}.lead-form{padding:26px 24px;gap:24px}.lead-form h3{font-size:25px}.footer-row{display:grid;grid-template-columns:1fr auto;gap:24px}.footer-row .brand{grid-column:1/-1}.footer-row address{font-size:12px}.footer-domain{font-size:14px}.site-footer{padding-block:32px 24px}.footer-bottom{padding-top:24px;align-items:flex-start;font-size:10px;gap:20px}.footer-links{flex-wrap:wrap;gap:12px}.privacy-dialog{padding:24px}.privacy-dialog h2{font-size:27px}.privacy-page{padding-block:36px}.privacy-page h1{font-size:32px}}
@media(max-width:360px){:root{--gutter:16px}.brand-name{font-size:12px}.brand-caption{font-size:6.5px}.hero-image{height:390px}.photo-caption{left:12px;right:12px;padding:15px;gap:12px}.photo-caption p{font-size:12px}.photo-caption span:not(.shield-icon){font-size:9px}.facts>div{grid-template-columns:1fr;gap:7px}.service-card{padding:22px}.service-card h3{font-size:21px}.section-heading h2,h2{font-size:34px}.company-year{gap:22px}.company-year>p{font-size:76px}.company-year>span{font-size:12px}.about-copy h2{font-size:29px}.lead-form{padding:24px 20px}.contact-phone{font-size:25px}.footer-row address{font-size:10px}.footer-domain{font-size:12px}.privacy-dialog{padding:20px}}
@media(max-width:800px){.quick-contact:not([hidden]){position:fixed;left:16px;right:16px;bottom:max(12px,env(safe-area-inset-bottom));z-index:15;display:grid;grid-template-columns:1fr 1.4fr;gap:8px;padding:8px;border:1px solid var(--border);border-radius:14px;background:var(--paper);box-shadow:0 4px 24px #102f2b26}.quick-contact a{display:flex;align-items:center;justify-content:center;gap:10px;min-height:46px;border:1px solid #b8c8c0;border-radius:8px;font-size:13px;font-weight:700}.quick-contact a:last-child{background:var(--dark);color:var(--white);border-color:var(--dark)}.menu-is-open .quick-contact{display:none!important}}
@media(max-width:1050px){.hero-actions{display:grid;grid-template-columns:1fr;gap:12px;width:100%;max-width:350px}.hero-actions .button{width:100%;min-width:0}}
@media(max-width:620px){.hero-actions{max-width:none}.hero-actions .button{min-height:52px;padding:14px 18px;font-size:13px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}.button:hover{transform:none}}
@media(max-width:620px){html:not(.js) .header-row{flex-wrap:wrap}html:not(.js) .desktop-nav{display:flex;flex-wrap:wrap;gap:20px;width:100%}html:not(.js) .desktop-nav a{font-size:14px}}
