:root{--paper:#f4f6f1;--paper-2:#e9ece5;--white:#fff;--ink:#111815;--ink-soft:#44504a;--charcoal:#171d1b;--charcoal-2:#202925;--forest:#0a3e2c;--green:#4c9b24;--green-dark:#28771f;--navy:#07304b;--line:#11181524;--line-light:#ffffff2e;--shadow:0 28px 70px #0d1f161f;--radius:3px;--shell:min(1240px, calc(100vw - 48px));--font:"Segoe UI", Tahoma, Arial, sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:96px}body{background:var(--paper);color:var(--ink);font-family:var(--font);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.75}body::selection,::selection{background:var(--green);color:#fff}img{max-width:100%}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,summary,a{-webkit-tap-highlight-color:transparent}:focus-visible{outline-offset:4px;outline:3px solid #83c759}.shell{width:var(--shell);margin-inline:auto}.section{padding-block:clamp(80px,9vw,138px)}.skip-link{inset-inline-start:20px;z-index:9999;background:var(--ink);color:#fff;padding:10px 18px;transition:top .2s;position:fixed;top:-80px}.skip-link:focus{top:16px}.visually-hidden{clip:rect(0, 0, 0, 0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.eyebrow{color:var(--green-dark);letter-spacing:.06em;text-transform:uppercase;align-items:center;gap:10px;margin-bottom:22px;font-size:.78rem;font-weight:800;display:inline-flex}.eyebrow:before{content:"";background:currentColor;width:30px;height:2px}.eyebrow.light{color:#a6d97c}h1,h2,h3,p{margin-top:0}h1,h2,h3{letter-spacing:-.035em}h2{margin-bottom:28px;font-size:clamp(2.35rem,5vw,5.2rem);line-height:1.12}.section-heading{max-width:790px;margin-bottom:58px}.section-heading h2{margin-bottom:22px}.section-heading p{color:var(--ink-soft);max-width:650px;margin-bottom:0;font-size:1.08rem}.split-heading{grid-template-columns:minmax(0,1.2fr) minmax(300px,.65fr);align-items:end;gap:10vw;max-width:none;display:grid}.split-heading p{padding-bottom:16px}.button{border-radius:var(--radius);cursor:pointer;border:1px solid #0000;justify-content:center;align-items:center;gap:10px;min-height:50px;padding:12px 24px;font-weight:800;line-height:1.3;transition:transform .25s,background-color .25s,border-color .25s,color .25s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button:disabled{cursor:wait;opacity:.65;transform:none}.button-sm{min-height:44px;padding:10px 18px;font-size:.88rem}.button-lg{min-height:58px;padding-inline:28px}.button-primary{background:var(--green);color:#081006;border-color:var(--green)}.button-primary:hover{background:#63b53a;border-color:#63b53a}.button-outline{border-color:var(--ink);color:var(--ink);background:0 0}.button-outline:hover{background:var(--ink);color:#fff}.button-light{color:var(--ink);background:#fff;border-color:#fff}.button-ghost-light{color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#08161138;border-color:#ffffff73}.button-ghost-light:hover{background:#ffffff1f;border-color:#fff}.text-link{color:var(--ink);border-bottom:1px solid;align-items:center;gap:16px;padding-bottom:7px;font-weight:800;transition:gap .25s,color .25s;display:inline-flex}.text-link:hover{color:var(--green-dark);gap:24px}.text-link.light{color:#fff}.centered-action{text-align:center;margin-top:52px}.site-header{z-index:1000;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#f7f9f5f0;position:sticky;top:0}.header-shell{align-items:center;gap:34px;height:78px;display:flex}.brand{flex:none;align-items:center;gap:10px;display:inline-flex}.brand-mark{object-fit:contain;width:38px;height:56px}.brand-copy{flex-direction:column;line-height:1.2;display:flex}.brand-copy strong{color:var(--navy);letter-spacing:-.02em;font-size:1.05rem}.brand-copy small{color:var(--green-dark);margin-top:5px;font-size:.62rem;font-weight:700}.desktop-nav{white-space:nowrap;align-items:center;gap:22px;margin-inline:auto;font-size:.87rem;font-weight:700;display:flex}.desktop-nav>a,.nav-dropdown>summary{color:#26312c;padding-block:27px;position:relative}.desktop-nav>a:after,.nav-dropdown>summary:after{content:"";inset-inline:0;background:var(--green);transform-origin:100%;height:2px;transition:transform .25s;position:absolute;bottom:19px;transform:scaleX(0)}.desktop-nav>a:hover:after,.nav-dropdown>summary:hover:after,.nav-dropdown[open]>summary:after{transform:scaleX(1)}.nav-dropdown{position:relative}.nav-dropdown summary{cursor:pointer;align-items:center;gap:5px;list-style:none;display:flex}.nav-dropdown summary::-webkit-details-marker{display:none}.nav-dropdown-panel{top:calc(100% - 8px);border:1px solid var(--line);width:310px;box-shadow:var(--shadow);background:#fff;padding:12px;position:absolute;inset-inline-start:-28px}.nav-dropdown-panel a{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:12px 14px;transition:background .2s,padding .2s;display:flex}.nav-dropdown-panel a:last-child{border-bottom:0}.nav-dropdown-panel a:hover{background:var(--paper);padding-inline-start:20px}.header-actions{align-items:center;gap:16px;display:flex}.header-phone{flex-direction:column;align-items:flex-end;line-height:1.1;display:flex}.header-phone span{color:var(--ink-soft);font-size:.62rem}.header-phone b{color:var(--navy);margin-top:5px;font-size:.9rem}.mobile-nav{margin-inline-start:auto;display:none}.mobile-actions{display:none}.home-hero{color:#fff;background:#0b1c15;align-items:center;min-height:calc(100svh - 78px);display:grid;position:relative;overflow:hidden}.home-hero-media,.home-hero-overlay,.home-hero-grid{position:absolute;inset:0}.home-hero-media img{object-fit:cover;object-position:55% center;filter:saturate(.84)contrast(1.03)}.home-hero-overlay{background:linear-gradient(90deg,#07130e26 0%,#07130eab 56%,#07130ef2 100%),linear-gradient(#0000 55%,#07120d6b)}.home-hero-grid,.page-hero-grid,.not-found-grid{opacity:.16;background-image:linear-gradient(#ffffff1f 1px,#0000 1px),linear-gradient(90deg,#ffffff1f 1px,#0000 1px);background-size:72px 72px;-webkit-mask-image:linear-gradient(270deg,#000 0%,#0000 68%);mask-image:linear-gradient(270deg,#000 0%,#0000 68%)}.home-hero-inner{z-index:2;grid-template-columns:minmax(0,1fr) 245px;align-items:end;gap:7vw;padding-block:96px 120px;display:grid;position:relative}.hero-copy{max-width:830px}.sector-label{color:#cfe8c1;align-items:center;gap:14px;margin-bottom:30px;font-size:.8rem;font-weight:800;display:flex}.sector-line{background:var(--green);width:42px;height:2px}.hero-copy h1{margin-bottom:30px;font-size:clamp(4rem,8vw,8.1rem);font-weight:850;line-height:.96}.hero-copy h1 em{color:#a9d77e;font-style:normal;font-weight:500}.hero-copy>p{color:#ffffffd1;max-width:720px;margin-bottom:38px;font-size:clamp(1rem,1.6vw,1.28rem);line-height:1.95}.hero-actions{flex-wrap:wrap;gap:12px;display:flex}.hero-cities{color:#ffffffc7;flex-wrap:wrap;align-items:center;gap:12px;margin-top:42px;font-size:.86rem;font-weight:700;display:flex}.hero-cities i{color:var(--green)}.hero-technical-card{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0818118c;border:1px solid #ffffff42;padding:26px}.technical-kicker{color:#b6df8c;letter-spacing:.15em;font:700 .72rem/1.2 ui-monospace,monospace;display:block}.hero-measure{border-bottom:1px solid #ffffff59;justify-content:space-between;align-items:flex-end;height:70px;margin-block:24px;display:flex}.hero-measure span{background:#ffffff6b;width:1px}.hero-measure span:first-child,.hero-measure span:nth-child(5){height:68px}.hero-measure span:nth-child(2),.hero-measure span:nth-child(4){height:34px}.hero-measure span:nth-child(3){height:48px}.hero-technical-card strong{font-size:1.32rem;display:block}.hero-technical-card p{color:#ffffffa6;font-size:.76rem}.hero-technical-card a{color:#c4efa4;border-top:1px solid #ffffff40;justify-content:space-between;padding-top:16px;font-size:.78rem;font-weight:800;display:flex}.hero-scroll{z-index:2;inset-inline-start:24px;color:#ffffff8c;writing-mode:vertical-rl;align-items:center;gap:10px;font-size:.66rem;display:flex;position:absolute;bottom:26px}.hero-scroll span{background:linear-gradient(#fff,#0000);width:1px;height:48px}.intro-section{background:var(--white)}.intro-grid{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:center;gap:clamp(50px,8vw,120px);display:grid}.intro-copy h2{max-width:640px}.intro-copy .lead{color:var(--ink);font-size:clamp(1.12rem,1.8vw,1.4rem);line-height:1.95}.intro-copy>p:not(.lead){color:var(--ink-soft);margin-bottom:32px}.intro-image{min-height:590px;box-shadow:var(--shadow);margin:0;position:relative;overflow:hidden}.intro-image img,.installation-image img,.movement-image img,.content-section-image img,.article-image img,.article-hero-image img{object-fit:cover;transition:transform .7s cubic-bezier(.2,.7,.2,1)}.intro-image:hover img,.content-section-image:hover img,.movement-image:hover img,.installation-image:hover img,.article-card:hover img{transform:scale(1.035)}.intro-image figcaption{inset-inline-end:0;background:var(--forest);color:#fff;flex-direction:column;min-width:220px;padding:20px 24px;display:flex;position:absolute;bottom:0}.intro-image figcaption span{color:#a5d983;font-size:.7rem}.services-section{background:var(--paper)}.service-cards{border-top:1px solid var(--line);border-inline-start:1px solid var(--line);grid-template-columns:repeat(3,1fr);display:grid}.service-card{border-inline-end:1px solid var(--line);border-bottom:1px solid var(--line);background:#ffffff59;min-height:575px;padding:34px 34px 100px;transition:background .3s,color .3s,transform .3s;position:relative;overflow:hidden}.service-card:hover{background:var(--charcoal);color:#fff;transform:translateY(-8px)}.service-number{color:var(--green-dark);font:700 .72rem/1 ui-monospace,monospace;display:block}.service-card-image{aspect-ratio:16/9;border-block:1px solid var(--line);background:#fff;width:calc(100% + 68px);margin:28px -34px 30px;position:relative;overflow:hidden}.service-card-image img{object-fit:cover;transition:transform .45s}.service-card-image.is-contain img{object-fit:contain;padding:10px}.service-card:hover .service-card-image img{transform:scale(1.025)}.service-card:hover .service-card-image.is-contain img{transform:scale(1.015)}.service-card h3{margin-bottom:18px;font-size:1.55rem;line-height:1.25}.service-card p{color:var(--ink-soft);line-height:1.85}.service-card:hover p{color:#ffffffad}.service-card>a{inset-inline:34px;border-top:1px solid var(--line);justify-content:space-between;padding-top:14px;font-size:.8rem;font-weight:800;display:flex;position:absolute;bottom:34px}.service-card:hover>a{border-color:var(--line-light);color:#b4e68a}.benefits-section{background:var(--charcoal);color:#fff}.benefits-section .shell{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:9vw;display:grid}.benefits-heading{align-self:start;position:sticky;top:120px}.benefits-heading p{color:#ffffffa8;font-size:1.05rem}.benefit-list{border-top:1px solid var(--line-light)}.benefit-list>div{border-bottom:1px solid var(--line-light);grid-template-columns:56px 1fr;align-items:center;gap:24px;padding-block:27px;display:grid}.benefit-list span{color:var(--green);font:700 .72rem/1 ui-monospace,monospace}.benefit-list b{font-size:clamp(1.1rem,2vw,1.55rem)}.factors-grid{border-top:1px solid var(--line);border-inline-start:1px solid var(--line);grid-template-columns:repeat(4,1fr);display:grid}.factors-grid article{border-inline-end:1px solid var(--line);border-bottom:1px solid var(--line);min-height:220px;padding:26px;transition:background .25s}.factors-grid article:hover{background:#fff}.factors-grid span{color:var(--green-dark);font:700 .68rem/1 ui-monospace,monospace}.factors-grid h3{margin:54px 0 10px;font-size:1.22rem}.factors-grid p{color:var(--ink-soft);font-size:.88rem;line-height:1.75}.installation-section{background:#fff}.installation-grid,.movement-grid{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:center;gap:clamp(50px,8vw,110px);display:grid}.installation-image{min-height:680px;margin:0;position:relative;overflow:hidden}.image-measure{inset-inline-start:18px;color:#fff;writing-mode:vertical-rl;flex-direction:column;justify-content:space-between;width:28px;font:700 .58rem/1 ui-monospace,monospace;display:flex;position:absolute;top:22px;bottom:22px}.image-measure i{inset-inline-start:2px;background:#fff;width:1px;position:absolute;top:0;bottom:0}.installation-copy p,.movement-copy>p{color:var(--ink-soft);font-size:1.05rem}.technical-list{border-top:1px solid var(--line);margin-block:36px}.technical-list>div{border-bottom:1px solid var(--line);grid-template-columns:44px 150px 1fr;align-items:center;gap:20px;padding-block:18px;display:grid}.technical-list span{color:var(--green-dark);font:700 .66rem/1 ui-monospace,monospace}.technical-list p{margin:0;font-size:.84rem}.movement-section{overflow:hidden}.movement-grid{grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr)}.movement-image{min-height:520px;box-shadow:var(--shadow);margin:0;position:relative;overflow:hidden}.movement-image figcaption{inset-inline-start:24px;background:#fff;flex-direction:column;min-width:180px;padding:17px 20px;display:flex;position:absolute;bottom:24px}.movement-image figcaption b{color:var(--green-dark);font:700 .65rem/1.5 ui-monospace,monospace}.check-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 24px;margin:30px 0 36px;padding:0;list-style:none;display:grid}.check-grid li{border-bottom:1px solid var(--line);align-items:center;gap:10px;padding-block:10px;font-size:.92rem;font-weight:700;display:flex}.check-grid li span{color:var(--green-dark)}.surveillance-section{color:#fff;background:#071512;min-height:760px;padding-block:clamp(90px,10vw,150px);position:relative;overflow:hidden}.surveillance-grid-bg{opacity:.15;background-image:linear-gradient(#ffffff1a 1px,#0000 1px),linear-gradient(90deg,#ffffff1a 1px,#0000 1px);background-size:55px 55px;position:absolute;inset:0}.surveillance-inner{grid-template-columns:minmax(0,1fr) minmax(420px,.82fr);align-items:center;gap:8vw;display:grid;position:relative}.surveillance-copy h2{font-size:clamp(2.8rem,5.2vw,5.8rem)}.surveillance-copy h2 em{color:#a8d981;font-style:normal;font-weight:500}.surveillance-copy>p{color:#ffffffad;max-width:730px;font-size:1.05rem}.surveillance-points{flex-wrap:wrap;gap:9px;margin-block:34px;display:flex}.surveillance-points span{color:#fffc;border:1px solid #ffffff3d;padding:8px 13px;font-size:.76rem}.surveillance-diagram{aspect-ratio:1;background:radial-gradient(circle,#4b9b2424,#0000 60%);border:1px solid #ffffff38;position:relative}.diagram-fence{border:2px solid #ffffff73;position:absolute;inset:14%}.diagram-fence span{border:2px solid var(--green);background:#071512;width:10px;height:10px;position:absolute}.diagram-fence span:first-child{top:-6px;right:-6px}.diagram-fence span:nth-child(2){top:-6px;left:-6px}.diagram-fence span:nth-child(3){bottom:-6px;right:-6px}.diagram-fence span:nth-child(4){bottom:-6px;left:-6px}.diagram-center{text-align:center;border:1px solid var(--green);background:#4b9b241f;place-content:center;display:grid;position:absolute;inset:38%}.diagram-center small{color:#a6d97c;font:600 .55rem/1 ui-monospace,monospace}.camera-node{color:#ffffffb8;align-items:center;gap:6px;font-size:.68rem;display:flex;position:absolute}.camera-node i{background:var(--green);width:10px;height:10px;box-shadow:0 0 0 8px #4b9b241f, 0 0 22px var(--green);border-radius:50%}.node-a{top:18%;right:25%}.node-b{top:28%;left:17%}.node-c{bottom:24%;right:20%}.node-d{bottom:17%;left:26%}.scan-line{background:linear-gradient(90deg, var(--green), transparent);transform-origin:0;width:46%;height:1px;animation:7s linear infinite scan;position:absolute;top:50%;left:50%}@keyframes scan{to{transform:rotate(360deg)}}.audiences-section{background:#fff;overflow:hidden}.audience-marquee{flex-wrap:wrap;gap:10px;display:flex}.audience-marquee span{border:1px solid var(--line);color:var(--ink-soft);padding:14px 20px;font-weight:700;transition:background .2s,color .2s,transform .2s}.audience-marquee span:hover{background:var(--forest);color:#fff;transform:translateY(-3px)}.areas-section{background:var(--paper-2)}.areas-grid{border-top:1px solid var(--line);border-inline-start:1px solid var(--line);grid-template-columns:repeat(4,1fr);display:grid}.area-card{border-inline-end:1px solid var(--line);border-bottom:1px solid var(--line);background:#ffffff3d;flex-direction:column;justify-content:space-between;min-height:350px;padding:26px;transition:background .3s,color .3s,transform .3s;display:flex;position:relative}.area-card:hover{background:var(--forest);color:#fff;transform:translateY(-7px)}.area-index{color:var(--green-dark);font:700 .68rem/1 ui-monospace,monospace}.area-card>div>span{color:var(--green-dark);font-size:.72rem;font-weight:800}.area-card:hover .area-index,.area-card:hover>div>span{color:#a7dc82}.area-card h3{margin:7px 0 12px;font-size:2rem}.area-card p{color:var(--ink-soft);font-size:.86rem}.area-card:hover p{color:#ffffffad}.card-arrow{inset-inline-end:24px;font-size:1.2rem;position:absolute;top:24px}.areas-grid.compact .area-card{min-height:240px}.areas-action{margin-top:34px}.portfolio-section,.projects-gallery-section{background:#fff}.portfolio-grid{grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-flow:dense;gap:14px;display:grid}.portfolio-card{background:var(--charcoal);min-height:360px;margin:0;position:relative;overflow:hidden}.portfolio-card.wide{grid-column:span 2}.portfolio-card.tall{grid-row:span 2;min-height:580px}.portfolio-card.square{aspect-ratio:1}.portfolio-card a{position:absolute;inset:0}.portfolio-card img{object-fit:cover;transition:transform .7s cubic-bezier(.2,.7,.2,1),filter .4s}.portfolio-card:hover img{filter:brightness(.72);transform:scale(1.045)}.portfolio-card figcaption{inset-inline:0;color:#fff;opacity:0;background:linear-gradient(#0000,#050e0adb);grid-template-columns:1fr auto;gap:4px 20px;padding:70px 24px 22px;transition:opacity .3s,transform .3s;display:grid;position:absolute;bottom:0;transform:translateY(18px)}.portfolio-card:hover figcaption,.portfolio-card:focus-within figcaption{opacity:1;transform:translateY(0)}.portfolio-card figcaption span{color:#b3e58b;grid-column:1;font-size:.68rem}.portfolio-card figcaption b{font-size:.94rem}.portfolio-card figcaption i{grid-area:1/2/3;align-self:end;font-style:normal}.portfolio-filters{flex-wrap:wrap;gap:8px;margin-bottom:32px;display:flex}.portfolio-filters button{border:1px solid var(--line);color:var(--ink-soft);cursor:pointer;background:0 0;padding:9px 16px;font-size:.82rem;font-weight:700;transition:background .2s,color .2s}.portfolio-filters button.active,.portfolio-filters button:hover{background:var(--ink);color:#fff}.technical-compliance{background:var(--forest);color:#fff;padding-block:clamp(78px,8vw,120px)}.compliance-grid{grid-template-columns:1fr 1fr;gap:9vw;display:grid}.compliance-grid h2{margin-bottom:0}.compliance-grid>div:last-child{padding-top:34px}.compliance-grid p{color:#ffffffbd;font-size:1.08rem}.compliance-grid small{color:#ffffff73;margin-top:24px;font-size:.68rem;display:block}.process-layout{grid-template-columns:minmax(300px,.72fr) minmax(0,1.28fr);gap:9vw;display:grid}.sticky-heading{align-self:start;position:sticky;top:120px}.process-list{border-top:1px solid var(--line);margin:0;padding:0;list-style:none}.process-list li{border-bottom:1px solid var(--line);grid-template-columns:65px 1fr;align-items:center;gap:24px;padding-block:27px;display:grid}.process-list span{color:var(--green-dark);font:700 .72rem/1 ui-monospace,monospace}.process-list b{font-size:clamp(1.05rem,2vw,1.4rem)}.home-quote-section,.quote-page-section,.inline-quote-section{background:var(--paper-2)}.project-form{border-top:5px solid var(--green);box-shadow:var(--shadow);background:#fff;padding:clamp(30px,5vw,64px)}.project-form.compact{grid-template-columns:minmax(260px,.62fr) minmax(0,1.38fr);align-items:start;gap:60px;display:grid}.project-form.compact .form-heading{grid-row:1/4}.form-heading{max-width:780px;margin-bottom:42px}.form-heading h2{margin-bottom:18px;font-size:clamp(2.2rem,4vw,4.2rem)}.form-heading p{color:var(--ink-soft)}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;display:grid}.project-form.compact .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid label,.file-field{flex-direction:column;gap:8px;display:flex}.form-grid label>span,.file-field>span{font-size:.82rem;font-weight:800}.form-grid label>span b{color:#b73434}.form-grid label>span em,.file-field>span em{color:var(--ink-soft);font-size:.65rem;font-style:normal;font-weight:500}.form-grid input,.form-grid select,.form-grid textarea{width:100%;min-height:54px;color:var(--ink);background:#fafbf8;border:1px solid #c9cec7;border-radius:0;padding:12px 14px;transition:border-color .2s,box-shadow .2s,background .2s}.form-grid textarea{resize:vertical;min-height:120px}.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus{border-color:var(--green-dark);background:#fff;outline:none;box-shadow:0 0 0 3px #4b9b2426}.field-wide{grid-column:1/-1}.upload-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;display:grid}.file-field{background:var(--paper);border:1px dashed #adb5aa;padding:20px}.file-field input{background:0 0;border:0;min-height:auto;padding:7px 0}.file-field small{color:var(--ink-soft);font-size:.68rem}.form-submit-row{align-items:center;gap:24px;margin-top:30px;display:flex}.project-form.compact .form-submit-row,.project-form.compact .form-status{grid-column:2}.form-submit-row p{max-width:560px;color:var(--ink-soft);margin:0;font-size:.72rem}.form-submit-row p a{text-decoration:underline}.honeypot{clip-path:inset(50%)!important;opacity:0!important;pointer-events:none!important;width:1px!important;height:1px!important;position:absolute!important;inset:0 auto auto 0!important;overflow:hidden!important}.honeypot input{border:0!important;width:1px!important;height:1px!important;min-height:0!important;padding:0!important}.form-status{border-inline-start:4px solid;align-items:center;gap:12px;margin-top:24px;padding:16px 18px;display:flex}.form-status p{margin:0}.form-status.success{border-color:var(--green-dark);background:#edf7e9}.form-status.error{background:#fff0ed;border-color:#b73434}.faq-section{background:#fff}.faq-layout{grid-template-columns:minmax(280px,.7fr) minmax(0,1.3fr);gap:9vw;display:grid}.faq-list{border-top:1px solid var(--line)}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{cursor:pointer;justify-content:space-between;align-items:center;gap:20px;min-height:82px;padding-block:20px;font-size:1.08rem;font-weight:800;list-style:none;display:flex}.faq-list summary::-webkit-details-marker{display:none}.faq-plus{border:1px solid var(--line);width:32px;height:32px;color:var(--green-dark);flex:0 0 32px;place-items:center;font-size:1.3rem;transition:transform .25s,background .25s;display:grid}.faq-list details[open] .faq-plus{background:var(--ink);color:#fff;transform:rotate(45deg)}.faq-list details>div{color:var(--ink-soft);padding:0 0 25px}.faq-list details>div p{max-width:700px;margin:0}.page-hero{background:var(--charcoal);color:#fff;align-items:end;min-height:590px;display:grid;position:relative;overflow:hidden}.page-hero-image,.page-hero-overlay,.page-hero-grid{position:absolute;inset:0}.page-hero-image img{object-fit:cover;object-position:center}.page-hero-overlay{background:linear-gradient(90deg,#06110c40,#06110ce8 75%),linear-gradient(#0000 40%,#06100cad)}.page-hero-inner{z-index:2;padding-block:44px 72px;position:relative}.breadcrumbs{margin-bottom:44px}.breadcrumbs ol{flex-wrap:wrap;gap:8px;margin:0;padding:0;font-size:.68rem;list-style:none;display:flex}.breadcrumbs li{color:#ffffffa8;align-items:center;display:flex}.breadcrumbs li:not(:last-child):after{content:"/";color:var(--green);margin-inline-start:8px}.breadcrumbs a:hover{color:#fff}.page-hero-content{max-width:900px}.page-hero-content h1{max-width:900px;margin-bottom:26px;font-size:clamp(3rem,6.7vw,7.4rem);line-height:1.03}.page-hero-content>p{color:#fffc;max-width:780px;font-size:clamp(1rem,1.7vw,1.23rem)}.page-hero-actions{align-items:center;gap:36px;margin-top:34px;display:flex}.page-hero-index{color:#ffffffad;align-items:center;gap:12px;font-size:.72rem;display:flex}.page-hero-index b{color:#a6d97c;font:800 1.4rem/1 ui-monospace,monospace}.scope-strip{background:var(--ink);color:#fff}.scope-strip-inner{grid-template-columns:repeat(4,1fr);display:grid}.scope-strip-inner>div{border-inline-end:1px solid var(--line-light);flex-direction:column;justify-content:center;min-height:100px;padding:18px 24px;display:flex}.scope-strip-inner>div:first-child{border-inline-start:1px solid var(--line-light)}.scope-strip-inner span{color:#a9d982;font-size:.63rem}.scope-strip-inner b{margin-top:5px;font-size:.87rem}.content-sections{background:#fff}.content-section:nth-child(2n){background:var(--paper)}.content-section-grid{grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);align-items:center;gap:clamp(50px,9vw,130px);display:grid}.content-section.reverse .content-section-copy{order:2}.content-section-copy>p{color:var(--ink-soft);font-size:1.05rem}.content-section-image{min-height:500px;box-shadow:var(--shadow);margin:0;position:relative;overflow:hidden}.content-section-image figcaption{inset-inline-start:18px;background:#fff;justify-content:space-between;gap:22px;min-width:160px;padding:13px 16px;font-size:.7rem;display:flex;position:absolute;bottom:18px}.content-section-image figcaption b{color:var(--green-dark);font-family:ui-monospace,monospace}.technical-panel{border:1px solid var(--line);background-image:radial-gradient(circle,#4b9b241a,#0000 50%);place-content:center;min-height:380px;display:grid;position:relative;overflow:hidden}.technical-panel:before,.technical-panel:after{content:"";background:var(--line);position:absolute}.technical-panel:before{width:1px;top:0;bottom:0;left:50%}.technical-panel:after{height:1px;top:50%;left:0;right:0}.technical-panel b{color:var(--green-dark);opacity:.35;font:700 clamp(4rem,8vw,8rem)/1 ui-monospace,monospace}.technical-panel small{text-align:center;color:var(--ink-soft);letter-spacing:.15em;margin-top:12px;font:700 .55rem/1 ui-monospace,monospace}.technical-line{border:1px dashed #4b9b2459;position:absolute;inset:12%}.technical-corner{border-color:var(--green);width:22px;height:22px;position:absolute}.technical-corner.top{border-top:2px solid;border-right:2px solid;top:12%;right:12%}.technical-corner.bottom{border-bottom:2px solid;border-left:2px solid;bottom:12%;left:12%}.privacy-sections .content-section{padding-block:60px}.privacy-sections .content-section-grid{grid-template-columns:minmax(0,1fr) minmax(280px,.45fr)}.official-reference,.case-study-placeholder{background:var(--forest);color:#fff;padding-block:80px}.official-reference-inner,.case-study-inner{justify-content:space-between;align-items:center;gap:50px;display:flex}.official-reference h2,.case-study-inner h2{max-width:780px;font-size:clamp(2.2rem,4vw,4.5rem)}.official-reference p,.case-study-inner p{color:#ffffffad;max-width:740px}.related-section{background:var(--paper)}.related-links{border-top:1px solid var(--line);border-inline-start:1px solid var(--line);grid-template-columns:repeat(3,1fr);display:grid}.related-links a{border-inline-end:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:1fr auto;align-content:space-between;min-height:170px;padding:24px;transition:background .25s,color .25s;display:grid}.related-links a:hover{background:var(--ink);color:#fff}.related-links span{color:var(--green-dark);font:700 .66rem/1 ui-monospace,monospace}.related-links b{grid-column:1;font-size:1.15rem}.related-links i{grid-area:1/2/3;align-self:end;font-style:normal}.contact-panel-section{background:#fff}.contact-panel-grid{border-top:1px solid var(--line);border-inline-start:1px solid var(--line);grid-template-columns:repeat(3,1fr);display:grid}.contact-method{border-inline-end:1px solid var(--line);border-bottom:1px solid var(--line);flex-direction:column;justify-content:flex-end;min-height:300px;padding:30px;transition:background .25s,color .25s;display:flex;position:relative}.contact-method.whatsapp,.contact-method:hover{background:var(--forest);color:#fff}.contact-method>span{color:var(--green-dark);font-size:.72rem;font-weight:800}.contact-method.whatsapp>span,.contact-method:hover>span{color:#a6d97c}.contact-method b{margin-block:10px;font-size:1.55rem}.contact-method p{color:var(--ink-soft);margin:0;font-size:.85rem}.contact-method.whatsapp p,.contact-method:hover p{color:#ffffffa6}.contact-method i{top:26px;font-style:normal;position:absolute;inset-inline-end:26px}.blog-index-section{background:#fff}.blog-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.article-card{border:1px solid var(--line);background:var(--paper);transition:transform .25s,box-shadow .25s}.article-card:hover{box-shadow:var(--shadow);transform:translateY(-6px)}.article-card.featured{grid-column:span 2;display:grid}.article-card.featured>a{grid-template-columns:1.2fr .8fr;display:grid}.article-image{min-height:260px;position:relative;overflow:hidden}.article-card.featured .article-image{min-height:480px}.article-copy{padding:24px}.article-meta{color:var(--ink-soft);flex-wrap:wrap;gap:12px;font-size:.67rem;display:flex}.article-meta span:first-child{color:var(--green-dark);font-weight:800}.article-copy h2{margin-block:18px 12px;font-size:clamp(1.4rem,2.5vw,2.3rem)}.article-copy p{color:var(--ink-soft);font-size:.86rem}.article-link{border-top:1px solid var(--line);justify-content:space-between;gap:16px;margin-top:24px;padding-top:14px;font-size:.72rem;display:flex}.article-link span{color:var(--ink-soft)}.article-page{background:#fff}.article-header{background:var(--charcoal);color:#fff;padding-block:50px 90px}.article-header-grid{grid-template-columns:minmax(0,1fr) minmax(380px,.82fr);align-items:center;gap:7vw;display:grid}.article-header-copy h1{margin-block:22px;font-size:clamp(3rem,6vw,6.5rem);line-height:1.08}.article-header-copy>p{color:#ffffffb8;font-size:1.1rem}.article-header .article-meta{color:#ffffff9e}.article-hero-image{min-height:500px;margin:0;position:relative;overflow:hidden}.article-body-layout{grid-template-columns:260px minmax(0,760px);justify-content:center;gap:7vw;padding-block:100px;display:grid}.article-aside{border:1px solid var(--line);background:var(--paper);align-self:start;padding:24px;position:sticky;top:120px}.article-aside>span{color:var(--green-dark);font-size:.68rem;font-weight:800}.article-aside ol{color:var(--ink-soft);margin:18px 0 26px;padding-inline-start:20px;font-size:.8rem}.article-aside li{margin-bottom:10px}.article-aside a:not(.button):hover{color:var(--green-dark)}.article-body>section{border-bottom:1px solid var(--line);margin-bottom:60px;padding-block:0 60px}.article-section-index{color:var(--green-dark);font:700 .72rem/1 ui-monospace,monospace}.article-body h2{margin-block:16px 22px;font-size:clamp(2rem,4vw,3.6rem)}.article-body p,.article-body li{color:#34403a;font-size:1.05rem;line-height:2}.article-reference{border-inline-start:5px solid var(--green);background:var(--paper);margin-bottom:50px;padding:34px}.article-reference h2{font-size:1.8rem}.article-reference a{color:var(--green-dark);font-weight:800}.article-next-step{background:var(--forest);color:#fff;padding:42px}.article-next-step h2{font-size:clamp(2rem,4vw,3.8rem)}.article-next-step p{color:#ffffffb3}.not-found-page{background:var(--charcoal);color:#fff;place-items:center;min-height:72vh;display:grid;position:relative;overflow:hidden}.not-found-grid{position:absolute;inset:0;-webkit-mask-image:none;mask-image:none}.not-found-inner{z-index:2;text-align:center;max-width:900px;padding-block:90px;position:relative}.not-found-code{color:#ffffff0f;margin-bottom:-42px;font:900 clamp(8rem,25vw,21rem)/.8 ui-monospace,monospace;display:block}.not-found-inner h1{font-size:clamp(2.7rem,6vw,6rem)}.not-found-inner p{color:#ffffffa8}.not-found-inner>div{justify-content:center;gap:12px;margin-top:30px;display:flex}.site-footer{color:#fff;background:#0b1210}.footer-cta{border-bottom:1px solid var(--line-light);grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:70px;padding-block:90px;display:grid}.footer-cta h2{max-width:760px;font-size:clamp(2.6rem,5vw,5.5rem)}.footer-cta p{color:#ffffffa6;max-width:720px}.footer-cta-actions{flex-direction:column;align-items:stretch;gap:22px;display:flex}.footer-main{grid-template-columns:1.35fr repeat(3,.65fr);gap:50px;padding-block:74px;display:grid}.footer-brand-row{align-items:center;gap:12px;display:flex}.footer-brand-row img{object-fit:contain}.footer-brand-row>div{flex-direction:column;display:flex}.footer-brand-row strong{font-size:1.2rem}.footer-brand-row span{color:#98d06e;font-size:.62rem}.footer-brand>p{color:#ffffff94;max-width:380px;margin-block:24px;font-size:.82rem}.footer-numbers{flex-wrap:wrap;gap:12px;display:flex}.footer-numbers a{border:1px solid var(--line-light);padding:7px 10px;font:700 .75rem/1.2 ui-monospace,monospace}.footer-main h3{color:#a7d986;letter-spacing:0;margin-bottom:20px;font-size:.75rem}.footer-main ul{margin:0;padding:0;list-style:none}.footer-main li{color:#fff9;margin-bottom:10px;font-size:.77rem}.footer-main li a:hover{color:#fff}.footer-bottom{border-top:1px solid var(--line-light);color:#fff6;justify-content:space-between;align-items:center;gap:24px;min-height:70px;font-size:.65rem;display:flex}[data-reveal]{opacity:0;transition:opacity .7s,transform .7s;transform:translateY(24px)}[data-reveal].is-visible{opacity:1;transform:none}@media (max-width:1120px){:root{--shell:min(100% - 36px, 1080px)}.desktop-nav{gap:14px;font-size:.8rem}.header-phone{display:none}.home-hero-inner{grid-template-columns:1fr 210px;gap:40px}.factors-grid,.areas-grid{grid-template-columns:repeat(2,1fr)}.area-card{min-height:280px}.surveillance-inner{grid-template-columns:1fr 380px;gap:50px}.footer-main{grid-template-columns:1.2fr repeat(3,.7fr);gap:26px}}@media (max-width:940px){.desktop-nav,.header-actions{display:none}.mobile-nav{display:block}.mobile-nav>summary{border:1px solid var(--line);cursor:pointer;align-content:center;gap:5px;width:46px;height:46px;padding:10px;list-style:none;display:grid}.mobile-nav>summary::-webkit-details-marker{display:none}.mobile-nav>summary span{background:var(--ink);height:2px;display:block}.mobile-nav>nav{inset-inline:0;border-bottom:1px solid var(--line);max-height:calc(100svh - 78px);box-shadow:var(--shadow);background:#fff;flex-direction:column;gap:0;padding:24px;display:flex;position:fixed;top:78px;overflow-y:auto}.mobile-nav>nav>a,.mobile-nav .nav-dropdown>summary{border-bottom:1px solid var(--line);padding:15px 0;font-weight:800;display:block}.mobile-nav>nav>.button{border-bottom:0;margin-top:20px}.nav-dropdown.mobile .nav-dropdown-panel{width:auto;box-shadow:none;border:0;padding:4px 14px 12px;position:static}.home-hero-inner{grid-template-columns:1fr;align-items:center}.hero-technical-card{display:none}.split-heading,.intro-grid,.benefits-section .shell,.installation-grid,.movement-grid,.surveillance-inner,.compliance-grid,.process-layout,.faq-layout,.content-section-grid,.project-form.compact,.article-header-grid,.article-body-layout{grid-template-columns:1fr}.split-heading{gap:20px}.intro-image,.installation-image{min-height:520px}.benefits-heading,.sticky-heading,.article-aside{position:static}.benefit-list{margin-top:24px}.service-cards{grid-template-columns:1fr}.service-card{min-height:540px}.surveillance-diagram{width:min(520px,100%);margin-inline:auto}.portfolio-grid,.blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.portfolio-card.wide,.article-card.featured{grid-column:span 2}.project-form.compact .form-heading,.project-form.compact .form-submit-row,.project-form.compact .form-status{grid-area:auto}.official-reference-inner,.case-study-inner,.footer-cta{grid-template-columns:1fr;align-items:start;display:grid}.contact-panel-grid,.related-links{grid-template-columns:1fr}.contact-method{min-height:220px}.article-body-layout{max-width:800px}.article-aside{display:none}.footer-main{grid-template-columns:1.3fr 1fr 1fr}.footer-main>div:last-child{grid-column:2/-1}}@media (max-width:700px){:root{--shell:calc(100% - 28px)}body{padding-bottom:68px}.section{padding-block:72px}h2{font-size:clamp(2.25rem,12vw,3.6rem)}.header-shell{height:68px}.brand-mark{width:31px;height:46px}.brand-copy strong{font-size:.95rem}.brand-copy small{max-width:190px;font-size:.54rem}.mobile-nav>nav{max-height:calc(100svh - 68px);top:68px}.mobile-actions{inset-inline:0;z-index:1200;background:#07100d;grid-template-columns:1fr 1fr;height:68px;padding:8px;display:grid;position:fixed;bottom:0;box-shadow:0 -10px 28px #0003}.mobile-actions a{color:#fff;justify-content:center;align-items:center;gap:9px;font-size:.86rem;font-weight:800;display:flex}.mobile-actions a:first-child{border-inline-end:1px solid #ffffff2e}.whatsapp-dot{color:#58c747;text-shadow:0 0 10px #58c74799}.home-hero{min-height:calc(100svh - 68px)}.home-hero-media img{object-position:64% center}.home-hero-overlay{background:linear-gradient(90deg,#07130e61,#07130ee6 82%),linear-gradient(#0000 40%,#06100cbf)}.home-hero-inner{padding-block:68px 86px}.hero-copy h1{font-size:clamp(3.7rem,18vw,5.4rem)}.hero-copy>p{font-size:.98rem;line-height:1.85}.hero-actions{flex-direction:column;align-items:stretch}.hero-cities{gap:8px;font-size:.72rem}.hero-scroll{display:none}.intro-image,.installation-image,.movement-image,.content-section-image,.article-hero-image{min-height:390px}.service-card{min-height:520px;padding:26px 26px 92px}.service-card-image{width:calc(100% + 52px);margin:24px -26px 26px}.factors-grid,.areas-grid,.portfolio-grid,.blog-grid,.scope-strip-inner,.form-grid,.project-form.compact .form-grid,.upload-row,.footer-main{grid-template-columns:1fr}.factors-grid article{min-height:180px}.factors-grid h3{margin-top:35px}.technical-list>div{grid-template-columns:34px 1fr}.technical-list p{grid-column:2}.check-grid{grid-template-columns:1fr}.surveillance-section{min-height:auto}.surveillance-copy h2{font-size:clamp(2.55rem,12vw,3.7rem)}.surveillance-diagram{margin-top:30px}.area-card{min-height:230px}.portfolio-card,.portfolio-card.tall{grid-row:auto;min-height:330px}.portfolio-card.wide,.article-card.featured{grid-column:auto}.portfolio-card figcaption{opacity:1;transform:none}.compliance-grid>div:last-child{padding-top:0}.process-list li{grid-template-columns:46px 1fr}.project-form{padding:26px 18px}.form-submit-row{flex-direction:column;align-items:stretch}.page-hero{min-height:570px}.page-hero-inner{padding-block:32px 56px}.page-hero-content h1{font-size:clamp(3rem,14vw,4.8rem)}.page-hero-actions{flex-direction:column;align-items:flex-start;gap:20px}.scope-strip-inner>div{border-bottom:1px solid var(--line-light);min-height:72px}.content-section.reverse .content-section-copy{order:initial}.technical-panel{min-height:270px}.official-reference,.case-study-placeholder{padding-block:65px}.article-card.featured>a{display:block}.article-card.featured .article-image{min-height:300px}.article-header{padding-block:36px 60px}.article-header-copy h1{font-size:clamp(2.7rem,13vw,4.3rem)}.article-body-layout{padding-block:70px}.article-body>section{margin-bottom:45px;padding-bottom:45px}.article-next-step{padding:30px 22px}.footer-cta{padding-block:70px}.footer-main{gap:34px;padding-block:58px}.footer-main>div:last-child{grid-column:auto}.footer-bottom{flex-direction:column;justify-content:center;align-items:flex-start;gap:4px;min-height:92px}.not-found-inner>div{flex-direction:column}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}[data-reveal]{opacity:1;transform:none}}
