:root{--site-max:1180px}
html{min-height:100%;scroll-behavior:smooth;background:#070a12}
body{height:auto!important;min-height:100%;background-color:#070a12;-webkit-font-smoothing:antialiased;overscroll-behavior-y:none}
a{color:inherit;text-decoration:none}
a,button,input,select,textarea{font:inherit}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(245,163,0,.7);outline-offset:3px}
.skip-link{position:fixed;left:12px;top:12px;z-index:1000;padding:10px 14px;border-radius:10px;background:#fff;color:#111;transform:translateY(-160%)}
.skip-link:focus{transform:none}
.topbar{max-width:var(--site-max);margin-left:auto;margin-right:auto;isolation:isolate}
.top-actions a[href^="tel:"]{text-decoration:none}
.site-nav{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.service-nav{max-width:var(--site-max);margin:10px auto 0;display:flex;align-items:center;gap:6px;padding:6px;border:1px solid rgba(255,255,255,.07);border-radius:14px;background:rgba(10,14,25,.58);overflow-x:auto;scrollbar-width:none}
.service-nav::-webkit-scrollbar{display:none}
.service-nav a{flex:1;min-width:max-content;padding:9px 12px;border-radius:10px;color:rgba(234,240,255,.7);font-size:12.5px;text-align:center;white-space:nowrap}
.service-nav a:hover,.service-nav a[aria-current="page"]{color:#fff;background:rgba(245,163,0,.11)}
.service-nav a[aria-current="page"]{box-shadow:inset 0 0 0 1px rgba(245,163,0,.28)}
.site-footer{max-width:var(--site-max);margin:18px auto 0;border:1px solid rgba(255,255,255,.09);border-radius:22px;background:rgba(10,14,25,.72);box-shadow:0 18px 55px rgba(0,0,0,.35);padding:20px}
.site-footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:24px}
.site-footer strong{display:block;margin-bottom:8px}
.site-footer p,.site-footer a{color:rgba(234,240,255,.72);font-size:13px;line-height:1.6}
.site-footer a{display:block;margin:4px 0}
.site-footer a:hover{color:#fff}
.site-footer-bottom{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:18px;padding-top:14px;border-top:1px solid rgba(255,255,255,.08);color:rgba(234,240,255,.6);font-size:12px}
.breadcrumbs{max-width:var(--site-max);margin:0 auto 12px;color:rgba(234,240,255,.66);font-size:12px}
.breadcrumbs a{text-decoration:underline;text-decoration-color:rgba(245,163,0,.5)}
.eyebrow{color:rgba(255,235,205,.92)}
.trust-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:14px 0}
.trust-item{padding:14px;border:1px solid rgba(255,255,255,.09);border-radius:16px;background:rgba(255,255,255,.025)}
.trust-item strong{display:block;font-size:14px;margin-bottom:4px}
.trust-item span{display:block;color:rgba(234,240,255,.7);font-size:12.5px;line-height:1.5}
.seo-copy{max-width:76ch}
.legal-note{font-size:12px;line-height:1.55;color:rgba(234,240,255,.7)}
.legal-note a{color:rgba(255,225,175,.95);text-decoration:underline}
.consent{display:flex;align-items:flex-start;gap:9px}
.consent input{width:auto;margin-top:4px}
.consent label{margin:0}
.reveal{opacity:0;transform:translateY(22px);transition:opacity .55s ease,transform .55s cubic-bezier(.2,.8,.2,1)}
.reveal.is-visible{opacity:1;transform:none}
.service,.big,.card,.spec,.credential,.partner-card{transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}
.service:hover,.big:hover,.card:hover,.spec:hover,.credential:hover,.partner-card:hover{transform:translateY(-4px);border-color:rgba(245,163,0,.28);box-shadow:0 20px 45px rgba(0,0,0,.22)}
.qualification-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:16px}
.qualification-badge{min-height:112px;padding:17px;border:1px solid rgba(255,255,255,.1);border-radius:16px;background:linear-gradient(145deg,rgba(255,255,255,.045),rgba(255,255,255,.015));display:flex;flex-direction:column;justify-content:space-between}
.qualification-badge b{font-size:22px;letter-spacing:-.02em;color:#fff}.qualification-badge span{color:rgba(234,240,255,.66);font-size:12px;line-height:1.4}.qualification-badge i{display:block;width:28px;height:3px;border-radius:3px;background:#f5a300;margin-bottom:14px}
.process-flow{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:18px;counter-reset:flow}
.process-step{position:relative;padding:22px 18px;border-top:1px solid rgba(255,255,255,.12);counter-increment:flow}
.process-step:before{content:counter(flow,decimal-leading-zero);display:block;margin-bottom:14px;color:#f5a300;font-size:12px;font-weight:800;letter-spacing:.12em}
.process-step:not(:last-child):after{content:"";position:absolute;right:-5px;top:-5px;width:9px;height:9px;border-radius:50%;background:#f5a300;box-shadow:0 0 0 6px rgba(245,163,0,.12)}
.process-step strong{display:block;margin-bottom:7px}.process-step p{margin:0;color:rgba(234,240,255,.68);font-size:13px;line-height:1.55}
.compare{--position:50%;position:relative;overflow:hidden;width:100%;max-height:760px;margin:24px auto 8px;border:1px solid rgba(255,255,255,.12);border-radius:18px;background:#070a12;aspect-ratio:4/3;box-shadow:0 24px 65px rgba(0,0,0,.36)}
.compare img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.compare .compare-after{position:absolute;inset:0;overflow:hidden;clip-path:inset(0 0 0 var(--position))}.compare .compare-after>img{clip-path:none}
.compare .compare-before{transform:scale(var(--rgb-scale,2)) rotate(var(--rgb-rotation,0deg));transform-origin:var(--rgb-origin,50% 50%)}
.compare[data-pair="pv"]{--rgb-scale:2.24;--rgb-origin:50% 50%;--rgb-rotation:0deg}
.compare[data-pair="pv"] .compare-after>img{transform:rotate(1deg) scale(1.025)}
.compare[data-pair="infra"]{--rgb-scale:2.54;--rgb-origin:48.8% 50.2%;--rgb-rotation:0deg}
.compare:after{content:"";position:absolute;pointer-events:none;top:0;bottom:0;left:var(--position);width:2px;background:#fff;box-shadow:0 0 0 1px rgba(0,0,0,.25)}
.compare input{position:absolute;z-index:3;inset:auto 18px 16px;width:calc(100% - 36px);height:28px;accent-color:#f5a300;cursor:ew-resize;direction:ltr}
.compare-label{position:absolute;z-index:1;top:12px;padding:6px 9px;border-radius:999px;background:rgba(5,8,15,.72);font-size:11px;font-weight:800}.compare-label.before{left:12px}.compare-label.after{right:12px}
.faq-list{display:grid;gap:9px;margin-top:16px}.faq-list details{border:1px solid rgba(255,255,255,.09);border-radius:14px;background:rgba(255,255,255,.025);padding:0 16px}.faq-list summary{cursor:pointer;padding:15px 28px 15px 0;font-weight:750;position:relative;list-style:none}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:"+";position:absolute;right:2px;color:#f5a300;font-size:20px;top:11px}.faq-list details[open] summary:after{content:"−"}.faq-list details p{margin:0 0 16px;color:rgba(234,240,255,.7);line-height:1.6;font-size:13.5px}
.lightbox{position:fixed;z-index:9999;inset:0;display:none;place-items:center;padding:24px;background:rgba(2,4,9,.92);backdrop-filter:blur(10px)}.lightbox.open{display:grid}.lightbox img{max-width:min(1200px,95vw);max-height:88vh;border-radius:14px;box-shadow:0 30px 90px #000}.lightbox button{position:fixed;top:18px;right:18px;width:44px;height:44px;border:1px solid rgba(255,255,255,.18);border-radius:50%;background:#111827;color:#fff;font-size:25px;cursor:pointer}
main img:not(.logo img){cursor:zoom-in}
@media(max-width:700px){.compare{aspect-ratio:4/3;max-height:none;margin-top:18px}}
.mobile-cta{display:none;position:fixed;z-index:900;left:10px;right:10px;bottom:10px;gap:8px;padding:8px;border:1px solid rgba(255,255,255,.12);border-radius:16px;background:rgba(8,12,22,.92);backdrop-filter:blur(16px);box-shadow:0 18px 45px rgba(0,0,0,.45);transform:translateY(140%);transition:transform .3s ease}.mobile-cta.visible{transform:none}.mobile-cta a{flex:1;padding:12px 8px;border-radius:11px;text-align:center;font-size:13px;font-weight:800;background:rgba(255,255,255,.07)}.mobile-cta a:first-child{background:#f5a300;color:#12100a}
.language-picker{position:relative;margin-left:auto;z-index:80}.language-picker select{appearance:none;min-width:180px;padding:10px 38px 10px 13px;border:1px solid rgba(255,255,255,.13);border-radius:999px;background:rgba(10,14,25,.94);color:#eaf0ff;font-size:12.5px;font-weight:700;cursor:pointer}.language-picker:after{content:"⌄";position:absolute;right:14px;top:6px;color:#f5a300;font-size:19px;pointer-events:none}.language-picker select:hover{border-color:rgba(245,163,0,.45)}.language-picker select option{background:#101625;color:#fff}body>.skiptranslate{display:none!important}body{top:0!important}.goog-te-banner-frame,.goog-te-balloon-frame{display:none!important}.goog-text-highlight{background:transparent!important;box-shadow:none!important}
@media(max-width:980px){.site-footer-grid,.trust-strip{grid-template-columns:1fr}.qualification-strip{grid-template-columns:repeat(2,1fr)}.topbar{position:relative;top:auto}.top-actions{justify-content:flex-start!important}.service-nav a{flex:0 0 auto}}
@media(max-width:760px){.topbar{align-items:flex-start!important;flex-direction:column}.site-nav,.top-actions{width:100%;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px!important}.site-nav .btn,.site-nav .pill,.top-actions .btn,.top-actions .pill{justify-content:center;text-align:center;white-space:normal}.service-nav{margin-top:8px}.language-picker{width:100%;margin:0}.language-picker select{width:100%}}
@media(max-width:620px){html{height:100%;overflow:hidden;overscroll-behavior-y:none}body{position:fixed!important;inset:0;width:100%;height:100dvh!important;min-height:0;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-y:none;padding-bottom:76px}.container,.wrap{padding-left:12px!important;padding-right:12px!important}.topbar{border-radius:18px!important;padding:12px!important}.brand .tag,.brand-name span{display:block;font-size:11px}.hero-inner,.hero-copy{padding-left:16px!important;padding-right:16px!important}h1{font-size:clamp(28px,9vw,38px)!important}.section-head{align-items:flex-start!important;flex-direction:column}.hint{font-size:12px}.service .content:before{display:none!important}.site-footer{border-radius:18px}.site-footer-bottom{flex-direction:column}.breadcrumbs{margin-top:12px}.qualification-strip,.process-flow{grid-template-columns:1fr}.process-step:not(:last-child):after{display:none}.mobile-cta{display:flex}}
@media(max-width:380px){.site-nav,.top-actions{grid-template-columns:1fr}.service-nav a{padding:8px 10px}.brand .tag,.brand-name span{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}.reveal{opacity:1;transform:none}}
