:root{--navy:#06102b;--blue:#0051d5;--text:#17243b;--muted:#5a687d;--line:#dfe5ef;--paper:#f6f8fc;--white:#fff;font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--text);background:var(--white);font-synthesis:none;scroll-behavior:smooth;scroll-padding-top:100px}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:4px}button{cursor:pointer}button:disabled{cursor:wait;opacity:.65}p{line-height:1.75;margin:0 0 1rem;color:var(--muted)}h1,h2,h3{color:var(--navy);margin:0;line-height:1.18;letter-spacing:-.035em}h1{font-size:clamp(2.3rem,4.5vw,4rem);font-weight:730;max-width:800px}h2{font-size:clamp(1.7rem,3vw,2.6rem)}h3{font-size:1.25rem}.wrap{width:min(1180px,calc(100% - 64px));margin:auto}.site-header{position:sticky;top:0;z-index:30;background:rgba(255,255,255,.97);border-bottom:1px solid var(--line)}.header-inner{min-height:78px;display:flex;align-items:center;gap:24px}.brand{display:flex;align-items:center;gap:10px;margin-right:auto;font-size:1.3rem;letter-spacing:.04em;font-weight:800;color:var(--navy)}.brand img{height:36px;width:36px;max-width:120px;object-fit:contain}.main-nav{display:flex;gap:24px;align-items:center;font-size:.9rem;font-weight:600}.main-nav a:hover,.main-nav a[aria-current=page]{color:var(--blue)}.header-actions{display:flex;gap:14px;align-items:center}.language{font-size:.8rem;color:var(--muted)}.language[aria-current=true]{color:var(--blue);font-weight:800}.button{white-space:nowrap;border:1px solid transparent;background:var(--blue);color:#fff;display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:13px 20px;border-radius:7px;font-weight:650;font-size:.9rem;line-height:1.35;transition:background .18s,transform .18s}.button:hover{background:#003eab;transform:translateY(-1px)}.button.secondary{background:white;border-color:var(--line);color:var(--navy)}.button.secondary:hover{background:var(--paper)}.menu-toggle{display:none;border:1px solid var(--line);border-radius:6px;background:white;width:42px;height:40px;font-size:1.2rem}.eyebrow{font-size:.72rem;font-weight:750;color:var(--blue);letter-spacing:.14em;text-transform:uppercase;display:block;margin-bottom:18px}.hero{padding:42px 0 36px;background:linear-gradient(130deg,#f7f9fd,#fff 65%)}.hero-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:56px;align-items:center}.hero p{font-size:1.05rem;max-width:610px;margin:24px 0}.actions{display:flex;gap:12px;flex-wrap:wrap}.hero-art{max-width:420px;margin-left:auto;border-radius:14px;overflow:hidden;background:var(--navy);position:relative;box-shadow:0 18px 50px #06102b13}.hero-art img{width:100%;height:auto;aspect-ratio:640/420;object-fit:cover}.hero-art figcaption{font-size:.72rem;color:#bdc5e9;letter-spacing:.06em;padding:0 24px 20px}.hero-art figure{margin:0}.section{padding:58px 0}.section.tint{background:var(--paper)}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:28px}.section-heading p{max-width:520px;margin:12px 0 0}.text-link{color:var(--blue);font-weight:650;font-size:.9rem}.areas-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.area-card{padding:26px;display:flex;flex-direction:column;background:white;border:1px solid var(--line);border-radius:10px;min-width:0;transition:border-color .18s,transform .18s}.area-card:hover{border-color:#9ebbf0;transform:translateY(-2px)}.area-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:26px}.area-number{font-size:.7rem;letter-spacing:.1em;font-weight:750;color:var(--blue)}.area-icon{width:38px;height:38px;display:grid;place-items:center;background:#edf3ff;border-radius:9px;color:var(--blue)}.area-icon svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:1.6}.area-card h3{margin-bottom:12px}.area-card p{font-size:.9rem;line-height:1.65;margin-bottom:20px}.area-card .text-link{margin-top:auto}.intro-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:72px;align-items:start}.intro-copy p{margin-bottom:24px}.page-intro{padding:56px 0 42px;background:var(--paper);border-bottom:1px solid var(--line)}.page-intro p{max-width:700px;margin:20px 0 0;font-size:1.05rem}.breadcrumb{display:flex;gap:12px;margin-bottom:28px;font-size:.8rem;color:var(--muted)}.prose{max-width:780px}.prose h2{font-size:1.8rem;margin-bottom:22px}.prose p{font-size:1rem}.value-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.value{border-top:2px solid var(--blue);padding-top:20px}.value h3{margin-bottom:12px}.value p{font-size:.95rem}.product-grid,.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.product-card,.project-card{border:1px solid var(--line);background:white;border-radius:10px;overflow:hidden}.card-body{padding:24px}.product-card img,.project-card img{width:100%;aspect-ratio:4/3;object-fit:cover}.product-card h3{margin-bottom:12px}.product-card p{font-size:.9rem}.product-price{font-weight:700;color:var(--navy);margin-top:18px}.features{margin:18px 0;font-size:.85rem}.features div{display:flex;justify-content:space-between;gap:18px;padding:9px 0;border-bottom:1px solid var(--line)}.features dd{margin:0;text-align:right}.product-card details{font-size:.85rem;margin:18px 0}.product-card summary{color:var(--blue);cursor:pointer}.partner-list{display:flex;flex-wrap:wrap;gap:20px}.partner{border:1px solid var(--line);border-radius:8px;padding:20px 28px;font-weight:650;display:flex;align-items:center;gap:18px}.partner img{max-height:44px;width:auto}.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:76px}.contact-info h2{margin-bottom:20px}.contact-info address{font-style:normal;line-height:1.7;color:var(--muted);margin-top:30px}.contact-line{display:block;margin-bottom:16px;overflow-wrap:anywhere}.contact-line small{display:block;text-transform:uppercase;letter-spacing:.1em;font-size:.65rem;color:var(--muted);margin-bottom:3px}.contact-info a{color:var(--navy)}.quote-form{background:white;border:1px solid var(--line);padding:30px;border-radius:12px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field{display:flex;flex-direction:column;gap:7px;min-width:0;font-size:.85rem;font-weight:600}.field.full{grid-column:1/-1}.field input,.field select,.field textarea,.newsletter-form input[type=email]{width:100%;padding:12px;border:1px solid #cbd4e3;border-radius:6px;background:white;color:var(--text)}.field textarea{min-height:112px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid #9dbcf6;border-color:var(--blue)}.consent{display:flex;gap:9px;align-items:flex-start;font-size:.75rem;line-height:1.6;color:var(--muted);font-weight:400;margin:18px 0}.consent input{margin-top:4px;flex-shrink:0}.consent a{text-decoration:underline}.honeypot{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.feedback{padding:12px 14px;background:#edf3ff;border-radius:6px;font-size:.85rem;line-height:1.6;margin:16px 0}.feedback.error{background:#fff1ef;color:#9b2525}.feedback.success{background:#eaf7ef;color:#1d6d40}.hidden,[hidden]{display:none!important}.site-footer{background:var(--navy);color:white;padding:38px 0 24px}.footer-top{display:flex;justify-content:space-between;align-items:start;gap:30px}.footer-top strong{font-size:1.15rem}.footer-nav{display:flex;flex-wrap:wrap;gap:20px;font-size:.85rem;color:#c5d0e4}.footer-bottom{border-top:1px solid #ffffff20;margin-top:30px;padding-top:20px;display:flex;justify-content:space-between;gap:20px;font-size:.75rem;color:#abb8d0}.socials{display:flex;gap:16px}.newsletter{display:flex;align-items:start;justify-content:space-between;gap:48px}.newsletter h2{font-size:1.3rem;margin-bottom:8px}.newsletter p{font-size:.85rem;margin:0}.newsletter-form{width:min(500px,100%)}.newsletter-row{display:flex;gap:10px}.newsletter-form .consent{margin-bottom:0}.empty-projects{border:1px dashed #b5c4da;border-radius:10px;padding:36px;max-width:760px}.empty-projects h2{font-size:1.4rem;margin-bottom:14px}.mobile-service-links{margin-top:24px;display:flex;flex-wrap:wrap;gap:8px}.service-pill{padding:8px 13px;border:1px solid var(--line);border-radius:30px;font-size:.8rem;background:#fff}
@media(min-width:1100px){.areas-grid .area-card:nth-child(4),.areas-grid .area-card:nth-child(5){grid-column:auto}}
@media(max-width:1050px){.main-nav{gap:15px;font-size:.82rem}.header-inner{gap:16px}.header-actions>.button{display:none}.hero-grid{gap:30px}.contact-grid{gap:40px}}
@media(max-width:800px){.wrap{width:calc(100% - 40px)}.menu-toggle{display:block}.main-nav{display:none;position:absolute;top:77px;left:0;right:0;background:white;border-bottom:1px solid var(--line);padding:20px;flex-direction:column;align-items:stretch;font-size:1rem}.main-nav.is-open{display:flex}.main-nav a{padding:8px}.hero{padding:36px 0}.hero-grid{grid-template-columns:1fr;gap:30px}.hero-art{max-width:500px}.hero-art img{aspect-ratio:16/8}.hero-art figcaption{padding-bottom:16px}.areas-grid,.product-grid,.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.section{padding:42px 0}.intro-grid,.contact-grid{grid-template-columns:1fr;gap:30px}.value-grid{grid-template-columns:1fr;gap:26px}.contact-info address{margin-top:20px}.section-heading{align-items:start}.newsletter{flex-direction:column;gap:20px}.footer-top{flex-direction:column}.footer-nav{gap:16px}}
@media(max-width:480px){.wrap{width:calc(100% - 32px)}h1{font-size:2.35rem}.brand img{max-width:80px;height:28px}.header-actions{gap:10px}.areas-grid,.product-grid,.project-grid{grid-template-columns:1fr}.area-card{padding:22px}.area-top{margin-bottom:16px}.section-heading{flex-direction:column;gap:16px}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.quote-form{padding:22px}.footer-bottom{flex-direction:column;gap:12px}.newsletter-row{flex-direction:column}.page-intro{padding:36px 0}.hero-art{display:none}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}

@media(min-width:801px){.hero h1{font-size:3.7rem}.hero p{font-size:1rem}.hero+.section{padding-top:42px}}

.references{padding:24px 0 36px}.references .wrap{display:flex;align-items:center;gap:32px;flex-wrap:wrap}.references .section-heading{margin:0}.references h2{font-size:1.15rem}.references .partner{padding:12px 20px}.newsletter-row input{flex:1;min-width:0}.newsletter-row .button{flex-shrink:0}.honeypot:focus{clip-path:none;width:auto;height:auto;background:white;padding:12px;z-index:100}
