@font-face{font-family:Poppins;font-style:normal;font-weight:400;font-display:swap;src:url(../media/41e95f694c5c4549-s.2b_sldcwg6mn_.woff2)format("woff2");unicode-range:U+900-97F,U+1CD0-1CF4,U+1CF7-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B0A}@font-face{font-family:Poppins;font-style:normal;font-weight:400;font-display:swap;src:url(../media/6c55a692938ebbbc-s.1emuuracu50qd.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Poppins;font-style:normal;font-weight:400;font-display:swap;src:url(../media/a218039a3287bcfd-s.43zbiuwnnoiok.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Poppins;font-style:normal;font-weight:500;font-display:swap;src:url(../media/bdc7e24a509eb931-s.0ynx40_3oa9rk.woff2)format("woff2");unicode-range:U+900-97F,U+1CD0-1CF4,U+1CF7-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B0A}@font-face{font-family:Poppins;font-style:normal;font-weight:500;font-display:swap;src:url(../media/0da9c7f357bd9d4d-s.1975l3y3401x_.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Poppins;font-style:normal;font-weight:500;font-display:swap;src:url(../media/8e6fa89aa22d24ec-s.2o7m9ogm38dql.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Poppins;font-style:normal;font-weight:600;font-display:swap;src:url(../media/0a7740363b4d4863-s.3ji57o093q1kd.woff2)format("woff2");unicode-range:U+900-97F,U+1CD0-1CF4,U+1CF7-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B0A}@font-face{font-family:Poppins;font-style:normal;font-weight:600;font-display:swap;src:url(../media/5f9d24ebef5d5292-s.19xuq3td7fwu_.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Poppins;font-style:normal;font-weight:600;font-display:swap;src:url(../media/e2334d715941921e-s.3o_v2fun1jzxk.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Poppins;font-style:normal;font-weight:700;font-display:swap;src:url(../media/b53057dbf91a7acf-s.11ypmpdlzqdb_.woff2)format("woff2");unicode-range:U+900-97F,U+1CD0-1CF4,U+1CF7-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B0A}@font-face{font-family:Poppins;font-style:normal;font-weight:700;font-display:swap;src:url(../media/798ea22d9983e047-s.3go-kn2r40gie.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Poppins;font-style:normal;font-weight:700;font-display:swap;src:url(../media/47fe1b7cd6e6ed85-s.3bh2vc0w-r-ll.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Poppins Fallback;src:local(Arial);ascent-override:93.62%;descent-override:31.21%;line-gap-override:8.92%;size-adjust:112.16%}.poppins_7af6ad50-module__T7yg2G__className{font-family:Poppins,Poppins Fallback;font-style:normal}.poppins_7af6ad50-module__T7yg2G__variable{--font-poppins:"Poppins", "Poppins Fallback"}
@font-face{font-family:Montserrat;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/8298327da6d5bcce-s.3q4n78m6muld7.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Montserrat;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/44fac91e6f2d2b1b-s.1d_6dtvtn9g3_.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Montserrat;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2b402d8aebffd579-s.16nfeub7ja6ze.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Montserrat;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/a88409fdd7dc121c-s.1mvr14jy3vxq7.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Montserrat;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/e8f2fbee2754df70-s.1dqa_6e_ad4sj.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Montserrat Fallback;src:local(Arial);ascent-override:85.79%;descent-override:22.25%;line-gap-override:0.0%;size-adjust:112.83%}.montserrat_b008d2bf-module__sV8A2G__className{font-family:Montserrat,Montserrat Fallback;font-style:normal}.montserrat_b008d2bf-module__sV8A2G__variable{--font-cyr:"Montserrat", "Montserrat Fallback"}
@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e390973e931a41c5-s.0rgnxg2b64rzs.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/59b15b4bcd7b1eb5-s.2vemzm0itqzfy.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e532fa1b9921e1cd-s.3cb5lpr2l6xud.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/2fe89d53234c61d4-s.1u30mmyq6lnsd.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/99e609270109b47d-s.40sczeszzbjw1.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/5e05ae5b48faa55e-s.1yd4_i3e35931.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/a7afbb44bec2bb18-s.1qc6dx89jd2qv.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/02263ebadd758ea4-s.29yke99gs9qpn.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/68757d6cddeff913-s.1i-sca43-qwng.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/effe91970fc4db64-s.0oace-s_gkfks.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono Fallback;src:local(Arial);ascent-override:76.16%;descent-override:20.43%;line-gap-override:0.0%;size-adjust:134.59%}.ibm_plex_mono_f18096ae-module__--9oBq__className{font-family:IBM Plex Mono,IBM Plex Mono Fallback;font-style:normal}.ibm_plex_mono_f18096ae-module__--9oBq__variable{--font-plex-mono:"IBM Plex Mono", "IBM Plex Mono Fallback"}
:root{--font-display:"Poppins";--teal:#1b5a64;--teal-deep:#123f47;--teal-soft:#e3eef0;--ink:#16262b;--muted:#54696f;--faint:#5f757b;--paper:#f6f8f8;--panel:#fff;--line:#dbe3e4;--sand:#c99f5f;--crimson:#e34155;--crimson-text:#c8324a;--shadow:0 1px 0 #16262b0d;--hatch:repeating-linear-gradient(135deg, #e8eeef 0 14px, #dfe7e8 14px 16px);--ease-out-quint:cubic-bezier(.22, 1, .36, 1);--wrap-max:1440px;--wrap-pad:clamp(16px, 2.6vw, 40px)}*{box-sizing:border-box;margin:0}html{scroll-behavior:smooth;overflow-x:clip}body{background:var(--paper);color:var(--ink);font-family:var(--font-display,system-ui), var(--font-cyr,system-ui), system-ui, -apple-system, "Segoe UI", sans-serif;-webkit-font-smoothing:antialiased;font-size:16.5px;line-height:1.6;overflow-x:clip}.wrap{max-width:var(--wrap-max);padding:0 var(--wrap-pad);margin:0 auto}[id]{scroll-margin-top:16px}h1,h2,h3{font-family:var(--font-display,sans-serif), var(--font-cyr,sans-serif), sans-serif;text-wrap:balance;line-height:1.12}h2{letter-spacing:-.02em;font-size:clamp(24px,3vw,38px);font-weight:600}h3{font-size:19px;font-weight:600}p{max-width:62ch}.mono{font-family:var(--font-plex-mono,ui-monospace), ui-monospace, monospace}.eyebrow{font-family:var(--font-plex-mono,ui-monospace), ui-monospace, monospace;letter-spacing:.16em;text-transform:uppercase;color:var(--teal);font-size:12.5px;font-weight:500}.muted{color:var(--muted)}.skip-link{z-index:100;background:var(--teal);color:#fff;border-radius:0 0 10px;padding:10px 18px;position:absolute;top:0;left:-9999px}.skip-link:focus{left:0}header.site{z-index:50;background:color-mix(in srgb, var(--paper) 88%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);position:sticky;top:0}header.site .wrap{align-items:center;gap:28px;height:64px;display:flex}.logo{flex-direction:column;flex:none;line-height:1;text-decoration:none;display:flex}.logo .gko{font-family:var(--font-display,sans-serif), var(--font-cyr,sans-serif), sans-serif;color:var(--teal);letter-spacing:-.03em;font-size:26px;font-weight:700}.logo .sub{font-family:var(--font-plex-mono,monospace), monospace;letter-spacing:.42em;color:var(--muted);text-transform:uppercase;margin-top:2px;font-size:8.5px}nav.main{margin-left:auto}.nav-list{gap:18px;margin:0;padding:0;list-style:none;display:flex}.nav-item{align-items:center;height:64px;display:flex;position:relative}.nav-top{color:var(--ink);border-bottom:2px solid #0000;padding:6px 0;font-size:15px;font-weight:500;text-decoration:none}.nav-top:hover,.nav-top.on{color:var(--teal);border-bottom-color:var(--sand)}.nav-caret{width:24px;height:32px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:6px;place-items:center;padding:0;display:grid}.nav-caret svg{width:10px;height:6px;transition:transform .25s}.nav-caret:focus-visible{outline:2px solid var(--teal);outline-offset:-2px}.nav-item.open .nav-caret svg{transform:rotate(180deg)}.nav-drop{z-index:60;background:var(--panel);border:1px solid var(--line);opacity:0;visibility:hidden;width:max-content;min-width:240px;transition:opacity .16s ease, transform .22s var(--ease-out-quint), visibility 0s linear .22s;border-radius:14px;padding:8px;position:absolute;top:calc(100% - 6px);left:-14px;transform:translateY(6px);box-shadow:0 22px 48px #08161a24,0 2px 6px #08161a0d}.nav-item.open>.nav-drop{opacity:1;visibility:visible;transition-delay:0s;transform:none}@media (hover:hover){.nav-item:hover>.nav-drop{opacity:1;visibility:visible;transition-delay:.12s;transform:none}.nav-item.open>.nav-drop{transition-delay:0s}.nav-item:hover .nav-caret svg{transform:rotate(180deg)}}.nav-item:nth-last-child(-n+2)>.nav-drop{left:auto;right:-14px}.nav-drop ul{gap:1px;margin:0;padding:0;list-style:none;display:grid}.nav-drop.wide ul{grid-template-columns:repeat(2,1fr);column-gap:4px}.nav-drop a{white-space:nowrap;color:var(--ink);border-radius:9px;padding:9px 12px;font-size:14.5px;font-weight:500;line-height:1.3;text-decoration:none;transition:background .15s,color .15s;display:block}.nav-drop a:hover{background:var(--teal-soft);color:var(--teal-deep)}.nav-drop a:focus-visible{background:var(--teal-soft);outline:2px solid var(--teal);outline-offset:-2px}.nav-drop small{color:var(--muted);margin-top:2px;font-size:12.5px;font-weight:400;display:block}.nav-drop .nav-all{border-top:1px solid var(--line);color:var(--teal);border-radius:0 0 9px 9px;margin-top:6px;padding-top:11px;font-weight:600}.nav-contacts{max-width:300px;display:grid}.nav-contacts .ct-phone{color:var(--teal-deep);letter-spacing:.01em;font-size:18px;font-weight:600}.nav-contacts .ct-dim{color:var(--muted);padding:3px 12px;font-size:13.5px;line-height:1.45}.nav-contacts .ct-dim:first-of-type{padding-top:8px}.nav-contacts .ct-social{gap:2px;margin-top:6px;display:flex}.lang{gap:2px;margin-left:8px;display:flex}.lang a{font-family:var(--font-plex-mono,monospace), monospace;color:var(--muted);border-radius:6px;padding:4px 7px;font-size:12px;text-decoration:none}.lang a.on{background:var(--teal);color:#fff}.lang a:hover:not(.on){color:var(--teal)}.cta{background:var(--teal);color:#fff;cursor:pointer;border:none;border-radius:10px;flex:none;padding:11px 22px;font-size:14.5px;font-weight:600;text-decoration:none;transition:background .2s}.cta:hover{background:var(--teal-deep)}.burger{display:none}header.site{transition:background .35s,border-color .35s}header.site.over-hero{-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border-bottom-color:#0000}header.site.over-hero .gko{color:#fff}header.site.over-hero .sub{color:#ffffffbf}header.site.over-hero :is(.nav-top,.nav-caret){color:#fff}header.site.over-hero .nav-top:hover{color:#fff;border-bottom-color:var(--crimson)}header.site.over-hero .lang a{color:#fffc}header.site.over-hero .lang a.on{color:#fff;background:#ffffff2e}header.site.over-hero .cta{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffff24}header.site.over-hero .cta:hover{background:#ffffff3d}header.site.over-hero .burger{background:0 0;border-color:#ffffff73}header.site.over-hero .burger i,header.site.over-hero .burger i:before,header.site.over-hero .burger i:after{background:#fff}#hero-sentinel{pointer-events:none;width:1px;height:45vh;position:absolute;top:0}dialog.mnav{color:#f2f7f7;overscroll-behavior:contain;width:min(380px,90vw);max-width:none;height:100dvh;max-height:100dvh;transition:transform .42s var(--ease-out-quint), overlay .42s allow-discrete, display .42s allow-discrete;background:linear-gradient(170deg,#123f4794 0%,#123f47b3 45%,#0e3239d1 100%);border:none;border-left:1px solid #ffffff29;margin:0 0 0 auto;padding:0;position:fixed;inset:0 0 0 auto;overflow-y:auto;transform:translate(100%);box-shadow:-30px 0 80px #08161a59}dialog.mnav[open]{transform:none}dialog.mnav:before{content:"";z-index:-1;pointer-events:none;background:linear-gradient(170deg,#5d7a7f 0%,#486a70 45%,#33555b 100%);position:absolute;inset:0}dialog.mnav.glass:before{opacity:0;transition:opacity .3s}dialog.mnav.glass{-webkit-backdrop-filter:blur(14px)saturate(1.5);backdrop-filter:blur(14px)saturate(1.5)}html:has(dialog.mnav[open]){overflow:hidden}@starting-style{dialog.mnav[open]{transform:translate(100%)}}dialog.mnav::backdrop{opacity:0;transition:opacity .3s ease, overlay .3s allow-discrete, display .3s allow-discrete;background:#08161a47}dialog.mnav[open]::backdrop{opacity:1}@starting-style{dialog.mnav[open]::backdrop{opacity:0}}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){dialog.mnav{background:var(--teal-deep)}}.mnav-inner{min-height:100%;padding:16px 22px max(22px, env(safe-area-inset-bottom));flex-direction:column;display:flex}.mnav-top{justify-content:space-between;align-items:center;margin-bottom:22px;display:flex}dialog.mnav .logo .gko{color:#fff}dialog.mnav .logo .sub{color:#ffffffa8}.mnav-close{cursor:pointer;color:#fff;background:#ffffff14;border:1px solid #ffffff47;border-radius:12px;place-items:center;width:44px;height:44px;font-size:17px;transition:background .2s;display:grid}.mnav-close:hover{background:#ffffff2e}.mnav-links{border-top:1px solid #ffffff29;flex-direction:column;display:flex}.mnav-acc{border-bottom:1px solid #ffffff29}.mnav-acc>summary{cursor:pointer;color:#fff;letter-spacing:-.01em;align-items:baseline;gap:14px;padding:15px 2px;font-size:21px;font-weight:600;list-style:none;display:flex}.mnav-acc>summary::-webkit-details-marker{display:none}.mnav-acc>summary:focus-visible{outline-offset:2px;border-radius:6px;outline:2px solid #fff}.mnav-acc .n{font-family:var(--font-plex-mono,monospace), monospace;color:#ff8a9c;letter-spacing:.1em;font-size:12px;font-weight:500}.mnav-acc>summary:after{content:"";border-bottom:2px solid #fff9;border-right:2px solid #fff9;align-self:center;width:9px;height:9px;margin-left:auto;transition:transform .25s;transform:translateY(-3px)rotate(45deg)}.mnav-acc[open]>summary:after{transform:translateY(2px)rotate(-135deg)}.mnav-sub{margin:0;padding:0 0 14px 34px;list-style:none}.mnav-acc[open] .mnav-sub{animation:mnav-sub .35s var(--ease-out-quint) both}@keyframes mnav-sub{0%{opacity:0;transform:translateY(-6px)}}.mnav-sub a{color:#ffffffe6;padding:10px 0;font-size:16px;font-weight:500;line-height:1.35;text-decoration:none;display:block}.mnav-sub a:hover{color:#fff}.mnav-sub small{color:#ffffff9e;margin-top:1px;font-size:12.5px;font-weight:400;display:block}.mnav-sub .all a{color:#ff9fae;font-weight:600}.mnav-actions{grid-template-columns:1fr auto;gap:10px;margin:22px 0 26px;display:grid}.mnav-call{color:#fff;border:1px solid #fff6;border-radius:12px;place-items:center;min-height:52px;padding:0 20px;font-size:16px;font-weight:600;text-decoration:none;transition:background .2s;display:grid}.mnav-call:hover{background:#ffffff1a}.mnav-cta{min-height:52px;color:var(--teal-deep);background:#fff;border-radius:12px;place-items:center;font-size:16px;font-weight:700;text-decoration:none;transition:transform .2s,box-shadow .2s;display:grid;box-shadow:0 10px 30px #08161a40}@media (hover:hover) and (pointer:fine){.mnav-cta:hover{transform:translateY(-1px);box-shadow:0 14px 34px #08161a52}}.mnav-contacts{gap:6px;font-size:14.5px;line-height:1.45;display:grid}.mnav-contacts a{color:#fff;padding:4px 0;text-decoration:none}.mnav-contacts a:hover{text-underline-offset:3px;text-decoration:underline}.mnav-contacts .ct-phone{letter-spacing:.01em;font-size:22px;font-weight:600}.mnav-contacts .ct-dim{color:#fffc}.mnav-contacts .ct-social{gap:18px;margin-top:4px;display:flex}.mnav-contacts .ct-social a{text-underline-offset:3px;color:#ffffffe6;text-decoration:underline}.mnav-lang{border-top:1px solid #ffffff29;gap:6px;margin:auto 0 0;padding-top:16px;display:flex}header.site dialog.mnav .lang a{color:#ffffffd1;border-radius:8px;padding:7px 11px;font-size:13px}header.site dialog.mnav .lang a.on{color:var(--teal-deep);background:#fff}header.site dialog.mnav .lang a:hover:not(.on){color:#fff;background:#ffffff1a}dialog.mnav[open] :is(.mnav-acc,.mnav-actions,.mnav-lang){animation:mnav-item .5s var(--ease-out-quint) both}dialog.mnav[open] .mnav-acc:nth-child(2){animation-delay:40ms}dialog.mnav[open] .mnav-acc:nth-child(3){animation-delay:80ms}dialog.mnav[open] .mnav-acc:nth-child(4){animation-delay:.12s}dialog.mnav[open] .mnav-acc:nth-child(5){animation-delay:.16s}dialog.mnav[open] .mnav-actions{animation-delay:.2s}dialog.mnav[open] .mnav-lang{animation-delay:.24s}@keyframes mnav-item{0%{opacity:0;transform:translate(22px)}}@media (prefers-reduced-motion:reduce){dialog.mnav,dialog.mnav::backdrop,.nav-drop,.nav-caret svg{transition:none}dialog.mnav[open] :is(.mnav-acc,.mnav-actions,.mnav-lang),.mnav-acc[open] .mnav-sub{animation:none}}.hero{color:#f2f7f7;background:var(--teal-deep);align-items:center;min-height:min(100svh,1200px);margin-top:-64px;padding:132px 0 152px;display:flex;position:relative;overflow:hidden}.hero-media{position:absolute;inset:0}.hero-media video,.hero-media .stage{width:100%;height:100%;position:absolute;inset:0}.hero-media video{object-fit:cover}.hero-media video::-webkit-media-controls-start-playback-button{-webkit-appearance:none;display:none!important}.hero-media:after{content:"";background:linear-gradient(#0a242aa8 0%,#0e303857 42%,#0c2a3047 70%,#0a242ac7 100%);position:absolute;inset:0}.hero .wrap{z-index:1;width:100%;position:relative}.hero h1{letter-spacing:-.02em;text-transform:uppercase;color:#fff;margin:12px 0 28px;font-size:clamp(32px,4.3vw,68px);font-weight:700;line-height:1.08}.hero h1 em{color:#9fd2da;font-style:normal}.hero .eyebrow{color:#ff8296}.hero .lead{color:#d5e4e6;max-width:52ch;font-size:clamp(16.5px,1.8vw,20px)}.hero .btn2{color:#fff;background:0 0;border-color:#fff6}.hero .btn2:hover{color:#fff;border-color:#fff}.hero-actions{flex-wrap:wrap;gap:14px;margin-top:32px;display:flex}.btn2{border:1.5px solid var(--line);color:var(--ink);background:var(--panel);border-radius:10px;padding:11px 22px;font-size:14.5px;font-weight:600;text-decoration:none}.btn2:hover{border-color:var(--teal);color:var(--teal)}.ph{background:var(--hatch);border:1px solid var(--line);border-radius:4px;place-items:center;display:grid;position:relative;overflow:hidden}.ph:before,.ph:after{content:"";border:2px solid var(--teal);opacity:.55;width:26px;height:26px;position:absolute}.ph:before{border-bottom:none;border-right:none;top:14px;left:14px}.ph:after{border-top:none;border-left:none;bottom:14px;right:14px}.ph .tag{font-family:var(--font-plex-mono,monospace), monospace;letter-spacing:.18em;color:var(--faint);text-transform:uppercase;font-size:11.5px}.hero .stage{aspect-ratio:4/3.1;position:relative}.hero .stage canvas{width:100%;height:100%;position:absolute;inset:0}.stage .dim{letter-spacing:.18em;color:var(--faint);opacity:0;pointer-events:none;font-size:11px;transition:opacity .8s .3s;position:absolute}.stage[data-drawn] .dim{opacity:1}.dim-w{bottom:4px;left:50%;transform:translate(-50%)}.dim-h{transform-origin:100% 0;top:50%;right:2px;transform:rotate(90deg)translate(-50%)}.stats{border-bottom:1px solid var(--line);background:var(--paper)}.stats .wrap{grid-template-columns:repeat(4,1fr);gap:32px;padding-top:40px;padding-bottom:40px;display:grid}.stat{border-left:1px solid var(--line);padding-left:22px}.stat:first-child{border-left:none;padding-left:0}.stat .num{font-family:var(--font-display,sans-serif), var(--font-cyr,sans-serif), sans-serif;color:var(--teal);letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:clamp(28px,2.6vw,40px);font-weight:700}.stat .num .suffix{color:var(--crimson)}.stat .cap{color:var(--muted);margin-top:2px;font-size:13.5px}section{padding:120px 0}.sec-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:40px;display:flex}.sec-head .eyebrow{margin-bottom:10px;display:block}.sec-head p{color:var(--muted);margin-top:10px}.services{grid-template-columns:repeat(6,1fr);gap:18px;display:grid}.services>.svc{grid-column:span 2}.services>.svc-wide{grid-column:span 3}.services>.svc-full{grid-column:1/-1}.svc{border:1px solid var(--line);background:var(--paper);color:inherit;cursor:pointer;border-radius:6px;flex-direction:column;gap:14px;padding:0;text-decoration:none;transition:border-color .25s,transform .25s,box-shadow .25s;display:flex;position:relative;overflow:hidden}@media (hover:hover) and (pointer:fine){.svc:hover{border-color:var(--teal);transform:translateY(-2px);box-shadow:0 10px 28px #002a3a14}.svc:hover .svc-photo{transform:scale(1.02)}}.svc-body{flex-direction:column;gap:12px;padding:18px 20px 20px;display:flex}.svc-head{align-items:baseline;gap:12px;display:flex}.svc .n{font-family:var(--font-plex-mono,monospace), monospace;color:var(--crimson-text);letter-spacing:.1em;font-size:12.5px}.svc h3{letter-spacing:-.01em;margin:0;font-size:18px;font-weight:600}.svc-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.svc-list li{color:var(--muted);padding-left:14px;font-size:13.5px;line-height:1.45;position:relative}.svc-list li:before{content:"";background:var(--teal);width:6px;height:1px;position:absolute;top:.62em;left:0}.svc-photo{aspect-ratio:16/9;object-fit:cover;width:100%;transition:transform .5s var(--ease-out-quint);display:block}.svc .arr{width:30px;height:30px;color:var(--crimson);opacity:0;background:#ffffffeb;border-radius:50%;place-items:center;font-size:16px;transition:opacity .25s;display:grid;position:absolute;top:12px;right:14px}.svc:hover .arr{opacity:1}.svc-wide,.svc-full{flex-direction:row;gap:0}.svc-wide .svc-photo,.svc-full .svc-photo{aspect-ratio:auto;flex:none;align-self:stretch;width:46%;height:auto}.svc-wide .svc-body,.svc-full .svc-body{justify-content:center;padding:22px 24px}@media (max-width:1100px){.services{grid-template-columns:repeat(2,1fr)}.services>.svc,.services>.svc-wide,.services>.svc-full{grid-column:auto}.svc-wide,.svc-full{flex-direction:column;gap:14px}.svc-wide .svc-photo,.svc-full .svc-photo{aspect-ratio:16/9;align-self:auto;width:100%}.svc-wide .svc-body,.svc-full .svc-body{justify-content:flex-start;padding:18px 20px 20px}.services>.svc-full-md{flex-direction:row;grid-column:1/-1;gap:0}.svc-full-md .svc-photo{aspect-ratio:auto;flex:none;align-self:stretch;width:46%;height:auto}.svc-full-md .svc-body{justify-content:center;padding:22px 24px}}@media (max-width:640px){.services{grid-template-columns:1fr;gap:14px}.svc-body,.svc-wide .svc-body,.svc-full .svc-body{padding:16px 16px 18px}.services>.svc-full-md{flex-direction:column;grid-column:auto;gap:14px}.svc-full-md .svc-photo{aspect-ratio:16/9;align-self:auto;width:100%}.svc-full-md .svc-body{justify-content:flex-start;padding:16px 16px 18px}.svc .arr{opacity:1}}.rail{position:relative}.rail .rail-track{scroll-snap-type:none}.rail-bleed{margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw)}.rail-bleed .rail-track{padding-left:max(var(--wrap-pad), calc(50vw - var(--wrap-max) / 2 + var(--wrap-pad)));padding-right:max(var(--wrap-pad), calc(50vw - var(--wrap-max) / 2 + var(--wrap-pad)))}.rail-bleed .rail-btn.prev{left:max(10px, calc(50vw - var(--wrap-max) / 2 - 12px))}.rail-bleed .rail-btn.next{right:max(10px, calc(50vw - var(--wrap-max) / 2 - 12px))}.rail-btn{border:1px solid var(--line);background:var(--panel);width:46px;height:46px;color:var(--ink);cursor:pointer;z-index:2;border-radius:50%;font-size:19px;transition:opacity .2s,background .2s;position:absolute;top:38%;transform:translateY(-50%);box-shadow:0 8px 24px #002a3a24}.rail-btn:hover{background:var(--teal);color:#fff}.rail-btn:disabled{opacity:0;pointer-events:none}.sec-head-btn{white-space:nowrap;align-self:center}@media (max-width:900px){.rail-btn{display:none}}.svcp-hero.pjp-hero{padding:96px 0 36px}.pjp-index{scrollbar-width:none;gap:6px;margin-top:22px;padding-right:48px;display:flex;overflow-x:auto;-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 48px),#0000);mask-image:linear-gradient(90deg,#000 calc(100% - 48px),#0000)}.pjp-index::-webkit-scrollbar{display:none}.pjp-index a{white-space:nowrap;color:#dbe9eb;border:1px solid #fff3;border-radius:999px;flex:none;padding:6px 12px;font-size:13px;font-weight:500;text-decoration:none;transition:background .25s,border-color .25s,color .25s}.pjp-index .n{font-family:var(--font-plex-mono,monospace), monospace;color:#ff8a9c;letter-spacing:.08em;margin-right:6px;font-size:11px}.pjp-index a:hover{color:#fff;background:#ffffff14;border-color:#ffffff73}.pjp-head{align-items:flex-end;gap:18px;margin-bottom:28px;display:flex}.pjp-head .n{font-family:var(--font-plex-mono,monospace), monospace;letter-spacing:-.03em;color:var(--crimson);font-size:clamp(34px,4vw,56px);font-weight:500;line-height:.85}.pjp-head h2{letter-spacing:-.02em;margin:0;font-size:clamp(26px,3vw,40px);font-weight:700}.pjp-tag{color:var(--muted);margin-top:6px;font-size:14px;display:block}.pjp-frame{margin-bottom:40px;position:relative}.pjp-gallery{overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;grid-auto-columns:calc(43.4783% - 12.1739px);grid-auto-flow:column;gap:14px;display:grid;overflow-x:auto}.pjp-gallery::-webkit-scrollbar{display:none}.pjp-gallery.n1{grid-auto-columns:100%}.pjp-shot{aspect-ratio:4/3;scroll-snap-align:start;cursor:zoom-in;isolation:isolate;background-color:var(--teal-soft);background-position:50%;background-size:cover;border:0;border-radius:14px;margin:0;padding:0;display:block;position:relative;overflow:hidden}.pjp-shot img{object-fit:cover;width:100%;height:100%;transition:opacity .6s ease, transform .9s var(--ease-out-quint);display:block}.js .pjp-shot img[loading=lazy]:not(.ld){opacity:0}@media (hover:hover) and (pointer:fine){.pjp-shot:hover img{transform:scale(1.035)}}.pjp-shot:after{content:"";opacity:0;background:#ffffffeb url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23123f47' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M15 3h6v6M9 21H3v-6M21 3l-7 7M3 21l7-7'/%3E%3C/svg%3E") 50%/15px no-repeat;border-radius:50%;width:36px;height:36px;transition:opacity .25s,transform .25s;position:absolute;bottom:12px;right:12px;transform:scale(.85);box-shadow:0 6px 18px #08161a33}.pjp-shot:hover:after,.pjp-shot:focus-visible:after{opacity:1;transform:none}.pjp-shot:focus-visible{outline:3px solid var(--teal);outline-offset:3px}.pjp-count{display:none}.pjp-arrow{z-index:2;border:1px solid var(--line);background:var(--panel);width:48px;height:48px;color:var(--ink);cursor:pointer;border-radius:50%;place-items:center;font-size:19px;transition:opacity .2s,background .2s,color .2s,border-color .2s;display:grid;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 8px 24px #002a3a29}.pjp-arrow.prev{left:-12px}.pjp-arrow.next{right:-12px}.pjp-arrow:hover{background:var(--teal);border-color:var(--teal);color:#fff}.pjp-arrow:disabled{opacity:0;pointer-events:none}.pjp-arrow:focus-visible{outline:3px solid var(--teal);outline-offset:2px}.pjp-body{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:start;gap:56px;display:grid}.pjp-story{color:var(--ink);max-width:60ch;margin:0;font-size:clamp(16px,1.2vw,18px);line-height:1.72}.pjp-specs{border-top:1px solid var(--line);grid-template-columns:repeat(auto-fill,minmax(150px,1fr));margin:0 0 30px;padding:0;list-style:none;display:grid}.pjp-specs li{border-bottom:1px solid var(--line);letter-spacing:-.005em;color:var(--teal-deep);padding:14px 14px 14px 0;font-size:15.5px;font-weight:600;line-height:1.3}.pjp-specs li:before{content:"";background:var(--sand);width:18px;height:2px;margin-bottom:9px;display:block}.pjp-works-label{font-family:var(--font-plex-mono,monospace), monospace;letter-spacing:.14em;text-transform:uppercase;color:var(--crimson-text);margin-bottom:12px;font-size:11.5px;display:block}.pjp-works ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 22px;margin:0;padding:0;list-style:none;display:grid}.pjp-works li{color:var(--ink);padding-left:27px;font-size:14.5px;line-height:1.45;position:relative}.pjp-works li:before{content:"";background:var(--teal-soft) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 8.3l2.6 2.6L12 5.4' fill='none' stroke='%231b5a64' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 12px no-repeat;border-radius:50%;width:18px;height:18px;position:absolute;top:.08em;left:0}@media (max-width:900px){.svcp-hero.pjp-hero{padding:56px 0 32px}.pjp-index{margin-inline:calc(-1 * var(--wrap-pad));padding-inline:var(--wrap-pad) 48px}.pjp-head{gap:14px;margin-bottom:18px}.pjp-frame{margin-bottom:28px}.pjp-gallery{margin-inline:calc(-1 * var(--wrap-pad));padding-inline:var(--wrap-pad);scroll-padding-inline:var(--wrap-pad);grid-auto-columns:86%;gap:10px}.pjp-arrow{display:none}.pjp-shot:after{opacity:1;width:32px;height:32px;transform:none}.pjp-count{z-index:1;pointer-events:none;font-family:var(--font-plex-mono,monospace), monospace;letter-spacing:.06em;color:#fff;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#08161a8c;border-radius:999px;padding:4px 9px;font-size:12px;display:block;position:absolute;bottom:10px;left:10px}.pjp-body{grid-template-columns:1fr;gap:28px}.pjp-works ul{grid-template-columns:1fr}}dialog.lb{color:#fff;overscroll-behavior:contain;background:#08161af0;border:0;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:0}dialog.lb::backdrop{background:#08161a80}dialog.lb[open]{place-items:center;animation:.3s both lb-in;display:grid}@keyframes lb-in{0%{opacity:0}}.lb-fig{justify-items:center;gap:12px;max-width:94vw;margin:0;display:grid}.lb-fig img{object-fit:contain;-webkit-user-select:none;user-select:none;width:auto;max-width:94vw;height:auto;max-height:calc(100dvh - 130px);animation:lb-img .4s var(--ease-out-quint) both;border-radius:8px;display:block}.lb-fig img.sized{width:min(94vw, calc((100dvh - 130px) * var(--ar)));aspect-ratio:var(--ar);background-position:50%;background-repeat:no-repeat;background-size:cover}@keyframes lb-img{0%{opacity:0;transform:scale(.985)}}.lb-fig figcaption{color:#cfe0e2;align-items:baseline;gap:14px;font-size:14px;display:flex}.lb-n{font-family:var(--font-plex-mono,monospace), monospace;color:#ff8a9c;font-size:12.5px}.lb-btn{color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffff14;border:1px solid #ffffff47;border-radius:50%;place-items:center;width:48px;height:48px;font-size:19px;transition:background .2s;display:grid;position:fixed}.lb-btn:hover{background:#fff3}.lb-btn:focus-visible{outline-offset:2px;outline:2px solid #fff}.lb-close{top:16px;right:16px}.lb-prev{top:50%;left:18px;transform:translateY(-50%)}.lb-next{top:50%;right:18px;transform:translateY(-50%)}html.lb-open{overflow:hidden}@media (max-width:900px){.lb-prev,.lb-next{top:auto;bottom:max(18px, env(safe-area-inset-bottom));transform:none}.lb-prev{left:calc(50% - 64px)}.lb-next{right:calc(50% - 64px)}.lb-fig img{max-height:calc(100dvh - 180px)}.lb-fig img.sized{width:min(94vw, calc((100dvh - 180px) * var(--ar)))}}@media (prefers-reduced-motion:reduce){dialog.lb[open],.lb-fig img{animation:none}.pjp-shot img{transition:none}}.svcp-hero{background:var(--teal-deep);color:#f2f7f7;padding:120px 0 56px}.svcp-hero .eyebrow{color:#ff8296}.svcp-hero h1{letter-spacing:-.02em;text-transform:uppercase;margin:10px 0 14px;font-size:clamp(30px,3.6vw,52px);font-weight:700}.svcp-hero .lead{color:#cfe0e2;max-width:56ch;font-size:clamp(15.5px,1.6vw,18px)}@media (max-width:900px){.svcp-hero{padding:56px 0 40px}}.svcp-group{border-bottom:1px solid var(--line);padding:56px 0}.svcp-group.alt{background:var(--paper)}.svcp-grid{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:start;gap:40px;display:grid}.svcp-group.alt .svcp-media{order:2}.svcp-media img{border:1px solid var(--line);border-radius:8px;width:100%;height:auto;display:block}.svcp-media{position:sticky;top:84px}.svcp-head{align-items:baseline;gap:14px;margin-bottom:12px;display:flex}.svcp-head .n{font-family:var(--font-plex-mono,monospace), monospace;color:var(--crimson-text);letter-spacing:.1em;font-size:13px}.svcp-head h2{letter-spacing:-.015em;margin:0;font-size:clamp(22px,2.4vw,30px);font-weight:700}.svcp-intro{color:var(--muted);max-width:58ch;margin:0 0 22px;font-size:15.5px}.svcp-items{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.svcp-items li{border-top:1px solid var(--line);grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:18px;padding:13px 0;display:grid}.svcp-item-n{font-size:15px;font-weight:600}.svcp-item-d{color:var(--muted);font-size:14px;line-height:1.5}.svcp-cta{text-align:center;padding:64px 0}.svcp-cta h2{letter-spacing:-.015em;margin:0 0 20px;font-size:clamp(22px,2.6vw,32px)}.svc-all{justify-content:center;margin-top:26px;display:flex}@media (max-width:900px){.svcp-grid{grid-template-columns:1fr;gap:22px}.svcp-group.alt .svcp-media{order:0}.svcp-media{position:static}.svcp-items li{grid-template-columns:1fr;gap:3px}}.license-link{cursor:pointer;font:inherit;color:var(--teal);text-underline-offset:3px;background:0 0;border:none;padding:0;text-decoration:underline}.license-link:hover{color:var(--crimson-text)}.license-btn{border:1.5px solid var(--teal);background:var(--teal-soft);color:var(--teal);font:inherit;text-align:left;cursor:pointer;border-radius:12px;align-items:center;gap:12px;margin-top:16px;padding:10px 16px 10px 12px;transition:background .2s,color .2s,box-shadow .2s;display:inline-flex}.license-btn svg{flex:none;width:30px;height:30px}.license-btn b{font-size:15px;font-weight:600;line-height:1.25;display:block}.license-btn small{font-family:var(--font-plex-mono,monospace), monospace;letter-spacing:.08em;color:var(--muted);margin-top:2px;font-size:12px;display:block}.license-btn-arr{margin-left:6px;font-size:18px;transition:transform .2s}.license-btn:hover{background:var(--teal);color:#fff;box-shadow:0 8px 24px #1b5a6440}.license-btn:hover small{color:#d6e6e9}.license-btn:hover .license-btn-arr{transform:translate(3px)}.license-btn:focus-visible{outline:2px solid var(--crimson);outline-offset:3px}.svc-lic{flex-direction:row-reverse;align-items:center;gap:28px;display:flex}.svc-lic .svc-note{max-width:38ch;margin:0}.svc-lic .license-btn{flex:none;margin-top:0}@media (max-width:900px){.svc-lic{flex-direction:column;align-items:flex-start;gap:14px}}.license-dlg{background:0 0;border:none;max-width:min(92vw,640px);margin:auto;padding:0}.license-dlg::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#081e24b8}.license-dlg img{object-fit:contain;background:#fff;border-radius:6px;width:100%;height:auto;max-height:86vh;display:block;box-shadow:0 24px 80px #00000073}.license-close{cursor:pointer;color:#fff;background:#0a242ad9;border:none;border-radius:8px;padding:8px 14px;font-size:13.5px;font-weight:600;position:absolute;top:10px;right:10px}.license-close:hover{background:var(--crimson)}.proj-scroll{scrollbar-width:none;grid-auto-columns:minmax(320px,460px);grid-auto-flow:column;gap:28px;padding:4px 4px 18px;display:grid;overflow-x:auto}.proj-scroll::-webkit-scrollbar{display:none}.proj{background:var(--panel);flex-direction:column;display:flex;position:relative;overflow:hidden}.proj .pnum{z-index:1;font-family:var(--font-plex-mono,monospace), monospace;letter-spacing:.14em;color:#fff;text-shadow:0 1px 8px #00000073;font-size:13px;position:absolute;top:10px;left:14px}.proj-media{scroll-snap-type:x mandatory;scrollbar-width:none;grid-auto-columns:100%;grid-auto-flow:column;display:grid;overflow-x:auto}.proj-media::-webkit-scrollbar{display:none}.proj-media img{aspect-ratio:16/10;object-fit:cover;scroll-snap-align:start;background-color:var(--teal-soft);background-position:50%;background-size:cover;width:100%;display:block}.proj .body{padding:16px 2px 0}.proj h3{letter-spacing:-.01em;margin-bottom:8px;font-size:18px}.proj .body{position:relative}.proj h3 a{color:inherit;text-decoration:none;transition:color .2s}.proj h3 a:after{content:"";position:absolute;inset:0}.proj h3 a:hover,.proj h3 a:focus-visible{color:var(--teal)}.facts{flex-wrap:wrap;gap:6px;display:flex}.facts span{font-family:var(--font-plex-mono,monospace), monospace;color:var(--muted);background:var(--teal-soft);border-radius:6px;padding:3px 8px;font-size:11.5px}.process-band{background:var(--teal-deep);color:#eaf2f3}.process-band .eyebrow{color:var(--sand)}.process-band h2{color:#fff}.process-band .sec-head p{color:#b9cdd1}.steps{counter-reset:st;grid-template-columns:repeat(5,1fr);gap:18px;display:grid}.step{padding-top:18px;position:relative}.step:before{counter-increment:st;content:"0" counter(st);font-family:var(--font-plex-mono,monospace), monospace;color:var(--sand);font-size:13px}.step:after{content:"";background:#ffffff38;height:1px;position:absolute;top:26px;left:34px;right:-10px}.step:last-child:after{display:none}.step h3{color:#fff;margin:10px 0 6px;font-size:16.5px}.step p{color:#b9cdd1;font-size:13.5px}.process-band .note{color:#b9cdd1;border-left:2px solid var(--sand);max-width:none;margin-top:36px;padding-left:14px;font-size:14px}.lead-sec .wrap{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:56px;display:grid}.form{background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:4px;padding:32px}.form .row{gap:14px;display:grid}.form label{color:var(--muted);margin-bottom:5px;font-size:13px;font-weight:600;display:block}.form input,.form select,.form textarea{border:1.5px solid var(--line);width:100%;font:inherit;background:var(--paper);color:var(--ink);border-radius:10px;padding:12px 14px}.form input:focus,.form select:focus,.form textarea:focus{border-color:var(--teal);outline:none}.form input:focus-visible,.form select:focus-visible,.form textarea:focus-visible{box-shadow:0 0 0 3px #1b5a6438}.form textarea{resize:vertical;min-height:96px}.form .hint{color:var(--faint);margin-top:5px;font-size:12.5px}.form label.check{align-items:flex-start;gap:10px;margin:16px 0 0;font-size:13.5px;font-weight:400;display:flex}.form label.check input{width:auto;accent-color:var(--teal);flex:none;margin-top:2px}.form label.check input:focus-visible{outline:3px solid var(--teal);outline-offset:2px;box-shadow:none}.form [id]{scroll-margin-top:96px}.form .mail-cta{text-align:center;display:block}.form button[type=submit]{background:var(--teal);color:#fff;width:100%;font:inherit;cursor:pointer;border:none;border-radius:10px;margin-top:18px;padding:14px;font-size:15.5px;font-weight:600}.form button[type=submit]:hover{background:var(--teal-deep)}.form .fine{color:var(--faint);text-align:center;margin-top:12px;font-size:12.5px}.form .sent-note{background:var(--teal-soft);color:var(--teal-deep);border-radius:10px;margin-top:14px;padding:14px;font-size:14.5px}.form .error-note{color:#a33636;background:#f9e9e9;border-radius:10px;margin-top:14px;padding:14px;font-size:14.5px}.form .error-note a{color:inherit;font-weight:600}.clients{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--panel);padding:26px 0;overflow:hidden}.marquee{width:max-content;animation:28s linear infinite mq;display:flex}.marquee span{font-family:var(--font-plex-mono,monospace), monospace;letter-spacing:.22em;color:var(--faint);text-transform:uppercase;white-space:nowrap;padding-right:48px;font-size:13px}@keyframes mq{to{transform:translate(-50%)}}footer.site-f{background:var(--ink);color:#aebfc3;padding:52px 0 40px;font-size:14.5px}.f-grid{grid-template-columns:2fr 1fr 1fr;gap:40px;display:grid}.f-grid .gko{font-family:var(--font-display,sans-serif), var(--font-cyr,sans-serif), sans-serif;color:#fff;letter-spacing:-.03em;font-size:24px;font-weight:700}.f-grid .sub{font-family:var(--font-plex-mono,monospace), monospace;letter-spacing:.42em;color:var(--faint);text-transform:uppercase;margin-top:2px;font-size:8px}.f-grid h4{color:#fff;margin-bottom:12px;font-size:14px;font-weight:600}.f-grid a{color:#aebfc3;padding:3px 0;text-decoration:none;display:block}.f-grid a:hover{color:var(--sand)}.f-line{padding:3px 0;display:block}.f-social{gap:14px;padding-top:8px;display:flex}.f-bottom{color:#8aa0a5;border-top:1px solid #ffffff1f;flex-wrap:wrap;justify-content:space-between;gap:16px;margin-top:40px;padding-top:20px;font-size:12.5px;display:flex}.m-cta{display:none}#intro{z-index:80;background:var(--paper);transition:transform .7s var(--ease-out-quint), visibility 0s .7s;justify-content:center;align-items:center;animation:0s linear 8s forwards intro-failsafe;display:flex;position:fixed;inset:0}html[data-intro=done] #intro{visibility:hidden;transform:translateY(-101%)}html[data-intro=skip] #intro,html:not(.js) #intro{display:none}@keyframes intro-failsafe{to{visibility:hidden;pointer-events:none}}html[data-intro=done] #intro .intro-stage{opacity:0;transition:opacity .4s ease-out}.intro-stage{flex-direction:column;align-items:center;gap:18px;display:flex}.intro-word{font-family:var(--font-plex-mono,monospace), monospace;letter-spacing:.5em;text-transform:uppercase;color:var(--muted);animation:intro-rise .9s var(--ease-out-quint) 1.1s both;font-size:11px}@keyframes intro-rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.intro-mark path{fill:none;stroke:var(--teal);stroke-width:2px;stroke-dasharray:var(--len,600);stroke-dashoffset:var(--len,600);animation:intro-draw 1.4s var(--ease-out-quint) forwards}.intro-mark path:nth-child(2){animation-delay:.25s}.intro-mark path:nth-child(3){animation-delay:.5s}@keyframes intro-draw{to{stroke-dashoffset:0}}.js .hero-rise{opacity:0;transition:opacity 1.1s var(--ease-out-quint) var(--hd,0s), transform 1.1s var(--ease-out-quint) var(--hd,0s);animation:0s linear 13s forwards hero-failsafe;transform:translateY(26px)}@keyframes hero-failsafe{to{opacity:1;transform:none}}html[data-hero=ready] .hero-rise,html:not(.js) .hero-rise{opacity:1;transform:none}.js .reveal{opacity:0;transition:opacity .45s,transform .45s;transform:translateY(16px)}.js .reveal.in,html:not(.js) .reveal{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.js .reveal,.hero-rise{opacity:1!important;transition:none!important;transform:none!important}.marquee{animation:none}.intro-mark path{animation-duration:10ms}#intro{transition:none}.intro-word{opacity:1;animation:none}}@media (max-width:1320px){nav.main,header.site .wrap>.lang,header.site .wrap>.cta{display:none}.burger{border:1.5px solid var(--line);background:var(--panel);cursor:pointer;border-radius:10px;place-items:center;width:44px;height:44px;margin-left:auto;display:grid}.burger i{background:var(--ink);width:18px;height:2px;display:block;position:relative}.burger i:before,.burger i:after{content:"";background:var(--ink);width:18px;height:2px;position:absolute;left:0}.burger i:before{top:-6px}.burger i:after{top:6px}}@media (max-width:900px){.hero{min-height:86svh;padding:120px 0 48px}.stats .wrap{grid-template-columns:repeat(2,1fr);gap:20px}.stat:nth-child(odd){border-left:none;padding-left:0}section{padding:60px 0}.services{grid-template-columns:1fr}.steps{grid-template-columns:1fr;gap:26px}.step:after{display:none}.lead-sec .wrap{grid-template-columns:1fr;gap:36px}.f-grid{grid-template-columns:1fr;gap:28px}body:has(.m-cta){padding-bottom:64px}.m-cta{z-index:60;background:var(--line);border-top:1px solid var(--line);grid-template-columns:1fr 1fr;gap:1px;display:grid;position:fixed;bottom:0;left:0;right:0}.m-cta a{place-items:center;min-height:52px;padding:16px 10px;font-size:15px;font-weight:600;text-decoration:none;display:grid}.m-cta .call{background:var(--panel);color:var(--teal)}.m-cta .req{background:var(--teal);color:#fff}}.cookie{z-index:70;padding:0 var(--wrap-pad) max(14px, env(safe-area-inset-bottom));animation:cookie-in .5s var(--ease-out-quint) both;position:fixed;bottom:0;left:0;right:0}@keyframes cookie-in{0%{opacity:0;transform:translateY(18px)}}.cookie-in{max-width:var(--wrap-max);background:var(--panel);border:1px solid var(--line);border-radius:12px;flex-wrap:wrap;align-items:center;gap:20px 24px;margin:0 auto;padding:18px 20px;display:flex;box-shadow:0 12px 40px #16262b29}.cookie.open .cookie-in{flex-flow:column;align-items:stretch;max-height:80vh;overflow-y:auto}.cookie.open .cookie-text{flex:none}.cookie-text{flex:420px;min-width:0}.cookie-text h2{margin-bottom:4px;font-size:16px;font-weight:600}.cookie-text p{color:var(--muted);max-width:78ch;font-size:14px;line-height:1.5}.cookie-text a{color:var(--teal);text-underline-offset:3px}.cookie-cats{gap:14px;padding:0;list-style:none;display:grid}.cookie-cats li{border-top:1px solid var(--line);padding-top:12px}.cookie-cats label{cursor:pointer;align-items:center;gap:10px;font-size:14.5px;font-weight:600;display:flex}.cookie-cats input{width:17px;height:17px;accent-color:var(--teal);cursor:pointer}.cookie-cats input:disabled{cursor:default}.cookie-cats p{color:var(--muted);max-width:80ch;margin:5px 0 0 27px;font-size:13.5px;line-height:1.5}.cookie-always{font-family:var(--font-plex-mono,ui-monospace), ui-monospace, monospace;letter-spacing:.08em;text-transform:uppercase;color:var(--faint);font-size:11px;font-weight:400}.cookie-btns{flex-wrap:wrap;gap:10px;display:flex}.cookie-b{border:1.5px solid var(--line);background:var(--panel);color:var(--ink);font:inherit;cursor:pointer;white-space:nowrap;border-radius:9px;padding:10px 18px;font-size:14px;font-weight:600;transition:border-color .2s,background .2s}.cookie-b:hover{border-color:var(--teal)}.cookie-b.main{background:var(--teal);border-color:var(--teal);color:#fff}.cookie-b.main:hover{background:var(--teal-deep);border-color:var(--teal-deep)}@media (max-width:600px){.cookie-in{gap:10px;padding:12px 14px}.cookie-text h2{margin-bottom:2px;font-size:15px}.cookie-text p{font-size:13px;line-height:1.4}.cookie-btns{gap:8px;width:100%}.cookie-b{flex:auto;padding:8px 10px;font-size:13px}}.cookie-b.ghost{color:var(--teal);border-color:#0000;padding-inline:10px}.cookie-b.ghost:hover{border-color:var(--line)}.cookie-b:focus-visible{outline:2px solid var(--teal);outline-offset:2px}@media (max-width:900px){body:has(.m-cta) .cookie{bottom:calc(62px + env(safe-area-inset-bottom));padding-bottom:0}.cookie-in{gap:12px;padding:15px 16px}.cookie-text h2{font-size:15px}.cookie-text p{font-size:13.5px}.cookie-cats p{font-size:13px}.cookie-btns{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.cookie-b{white-space:normal;width:100%;padding:10px 12px}.cookie-b.ghost{order:2;grid-column:1/-1}.cookie.open .cookie-b.main:first-child{grid-column:1/-1}}@media (prefers-reduced-motion:reduce){.cookie{animation:none}}.f-legal{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.f-legal a,.f-legal .f-link-btn,.f-by a{color:#aebfc3}.f-legal a{text-underline-offset:3px;text-decoration:underline}.f-link-btn{font:inherit;color:inherit;cursor:pointer;text-underline-offset:3px;background:0 0;border:0;padding:0;text-decoration:underline}.f-link-btn:hover,.f-legal a:hover,.f-by a:hover{color:#dfeaec}.f-by a{text-underline-offset:3px;text-decoration:underline}.legal{padding:56px 0 72px}.legal-updated{color:#a9c4c8;margin-top:16px;font-size:12.5px}.legal-sec{max-width:78ch;margin-bottom:34px}.legal-sec h2{margin-bottom:10px;font-size:21px;font-weight:600}.legal-sec p{color:var(--muted);max-width:78ch;font-size:15.5px}.legal-table-wrap{margin-top:8px;overflow-x:auto}.legal-table{border-collapse:collapse;width:100%;min-width:560px;font-size:14.5px}.legal-table th,.legal-table td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:11px 14px}.legal-table th{letter-spacing:.06em;text-transform:uppercase;color:var(--faint);font-size:12.5px;font-weight:600}.legal-table td{color:var(--muted)}.legal-table td:first-child{color:var(--ink);white-space:nowrap}.consent-status{margin:14px 0 18px;font-size:14.5px}@media (max-width:1440px){header.site .wrap{gap:20px}.nav-list{gap:10px}.nav-top{font-size:14px}}.abp-intro{padding:72px 0}.abp-grid{grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:start;gap:48px;display:grid}.abp-text h2{margin:10px 0 18px}.abp-text p{max-width:60ch;font-size:clamp(16px,1.2vw,18px);line-height:1.72}.abp-text p+p{margin-top:14px}.abp-cards{gap:16px;display:grid}.abp-card{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:24px 26px}.abp-card h3{margin-bottom:10px;font-size:17px}.abp-card p{color:var(--muted);font-size:15px;line-height:1.6}.abp-ceo{background:var(--teal-deep);color:#d6e4e6;padding:84px 0}.abp-ceo .wrap{grid-template-columns:minmax(0,4fr) minmax(0,8fr);align-items:center;gap:56px;display:grid}.abp-ceo figure{margin:0}.abp-ceo img{aspect-ratio:4/5;object-fit:cover;object-position:top;border-radius:14px;width:100%;height:auto;display:block}.abp-ceo .eyebrow{color:#ff8296}.abp-word p{max-width:64ch;font-size:16px;line-height:1.7}.abp-word .eyebrow+p,.abp-word p+p{margin-top:14px}.abp-sign{gap:2px;margin-top:24px;display:grid}.abp-sign .regards{color:#a9c3c7;font-style:italic}.abp-sign .name{color:#fff;font-size:19px;font-weight:600}.abp-sign .role{color:#a9c3c7;font-size:14px}.abp-dirs{border-bottom:1px solid var(--line);padding:72px 0}.abp-dirs h2,.abp-fleet h2,.abp-partners h2,.abp-req h2{margin:10px 0 8px}.abp-dirs-grid{grid-template-columns:repeat(3,1fr);gap:14px;margin-top:26px;display:grid}.abp-dir{color:inherit;background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:20px 22px;text-decoration:none;transition:border-color .2s,transform .2s;display:block}@media (hover:hover) and (pointer:fine){.abp-dir:hover{border-color:var(--teal);transform:translateY(-2px)}}.abp-dir .n{font-family:var(--font-plex-mono,monospace), monospace;color:var(--crimson-text);letter-spacing:.1em;font-size:12px}.abp-dir h3{margin:6px 0 8px;font-size:17px}.abp-dir p{color:var(--muted);font-size:14px;line-height:1.55}.abp-fleet{background:var(--panel);border-bottom:1px solid var(--line);padding:72px 0}.abp-fleet-grid{grid-template-columns:repeat(6,1fr);gap:14px;margin:26px 0 0;padding:0;list-style:none;display:grid}.abp-machine{background:var(--paper);border:1px solid var(--line);text-align:center;border-radius:12px;padding:14px 12px 12px}.abp-machine img{aspect-ratio:4/3;object-fit:contain;mix-blend-mode:multiply;width:100%;height:auto;display:block}.abp-machine span{margin-top:8px;font-size:13.5px;font-weight:500;line-height:1.3;display:block}.abp-partners{padding:64px 0 0}.abp-partners .wrap{padding-bottom:26px}.partner-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;margin:28px 0 40px;padding:0;list-style:none;display:grid}.partner-tile{border:1px solid var(--line);background:#fff;border-radius:14px;place-items:center;height:96px;padding:14px 18px;transition:border-color .2s,box-shadow .2s;display:grid}.partner-tile:hover{border-color:#c3d1d3;box-shadow:0 6px 18px #16262b0f}.partner-tile img{object-fit:contain;width:auto;max-width:100%;height:auto;max-height:56px;display:block}.partner-tile span{color:var(--ink);text-align:center;overflow-wrap:anywhere;font-size:15px;font-weight:600;line-height:1.25}@media (min-width:1100px){.partner-grid{grid-template-columns:repeat(6,1fr)}}@media (max-width:420px){.partner-grid{grid-template-columns:repeat(2,1fr)}.partner-tile{height:84px;padding:12px}}.abp-req{padding:72px 0}.abp-req-grid{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:start;gap:40px;display:grid}.abp-req .note{color:var(--muted);max-width:42ch;font-size:15px}.abp-req .license-link{margin-top:14px;display:inline-block}.abp-req dl{border-top:1px solid var(--line);margin:0}.abp-req dl>div{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,2fr) minmax(0,5fr);gap:18px;padding:12px 0;display:grid}.abp-req dt{color:var(--muted);padding-top:1px;font-size:14px}.abp-req dd{margin:0;font-size:15.5px;line-height:1.5}.abp-req dd a{color:var(--teal);text-decoration:none}.abp-req dd a:hover{text-underline-offset:3px;text-decoration:underline}@media (max-width:1100px){.abp-dirs-grid{grid-template-columns:repeat(2,1fr)}.abp-fleet-grid{grid-template-columns:repeat(4,1fr)}}@media (max-width:900px){.abp-intro,.abp-dirs,.abp-fleet,.abp-req{padding:52px 0}.abp-grid,.abp-ceo .wrap,.abp-req-grid{grid-template-columns:1fr;gap:28px}.abp-ceo{padding:56px 0}.abp-ceo figure{max-width:320px}.abp-fleet-grid{grid-template-columns:repeat(3,1fr)}.abp-req dl>div{grid-template-columns:1fr;gap:2px}}@media (max-width:640px){.abp-dirs-grid{grid-template-columns:1fr;gap:10px}.abp-fleet-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.abp-machine{padding:10px 8px 8px}.abp-machine span{overflow-wrap:anywhere;-webkit-hyphens:auto;hyphens:auto;font-size:12.5px}}.mdp-video{border-bottom:1px solid var(--line);padding:64px 0}.mdp-video figure{margin:0}.mdp-video figure+figure{margin-top:40px}.mdp-video video{aspect-ratio:16/9;background:var(--ink);border-radius:14px;width:100%;height:auto;margin-top:18px;display:block}.mdp-video figcaption{color:var(--muted);margin-top:10px;font-size:14px}.mdp-albums-head{padding-top:64px}.mdp-albums-head h2{margin-top:10px}.mdp-album{content-visibility:auto;contain-intrinsic-size:auto 740px;padding:44px 0 64px;scroll-margin-top:64px}.mdp-album.alt{background:var(--panel)}.mdp-album .pjp-head{margin-bottom:20px}.mdp-album .pjp-tag a{color:var(--teal)}.pjp-gallery.mdp-grid{scroll-snap-type:none;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));grid-auto-columns:auto;grid-auto-flow:row;gap:12px;overflow:visible}.mdp-grid .pjp-shot{aspect-ratio:1;border-radius:10px}.mdp-social{border-top:1px solid var(--line);padding:64px 0}.mdp-social p{margin-top:10px}.mdp-social-links{flex-wrap:wrap;gap:12px;margin-top:18px;display:flex}.mdp-social-links a{border:1px solid var(--line);background:var(--panel);color:var(--ink);border-radius:999px;align-items:center;padding:12px 22px;font-weight:500;text-decoration:none;transition:border-color .2s,color .2s;display:inline-flex}.mdp-social-links a:hover{border-color:var(--teal);color:var(--teal)}@media (max-width:900px){.mdp-video,.mdp-social{padding:44px 0}.mdp-albums-head{padding-top:44px}}@media (max-width:640px){.pjp-gallery.mdp-grid{grid-template-columns:repeat(2,1fr);gap:8px}.mdp-album{contain-intrinsic-size:auto calc(var(--rows,4) * ((100vw - 40px) / 2 + 8px) + 150px);padding:32px 0 44px}}.svcp-group,.abp-intro,.abp-ceo,.abp-fleet,.abp-partners,.abp-req,.mdp-video,.mdp-albums-head,.mdp-social{scroll-margin-top:24px}#projects{scroll-margin-top:72px}.pjl{padding:56px 0 16px}.pjl-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin:0;padding:0;list-style:none;display:grid}.pjl-card{scroll-margin-top:84px}.pjl-card>a{background:var(--panel);border:1px solid var(--line);height:100%;color:inherit;border-radius:16px;flex-direction:column;text-decoration:none;transition:border-color .25s,transform .25s,box-shadow .25s;display:flex;overflow:hidden}@media (hover:hover) and (pointer:fine){.pjl-card>a:hover{border-color:var(--teal);transform:translateY(-3px);box-shadow:0 18px 40px #002a3a1a}.pjl-card>a:hover .pjl-media img{transform:scale(1.035)}}.pjl-card>a:focus-visible{outline:3px solid var(--teal);outline-offset:3px}.pjl-media{aspect-ratio:3/2;background:var(--hatch);background-position:50%;background-size:cover;overflow:hidden}.pjl-media img{object-fit:cover;width:100%;height:100%;transition:transform .8s var(--ease-out-quint);display:block}.pjl-body{flex-direction:column;flex:1;gap:10px;padding:20px 22px 22px;display:flex}.pjl-top{align-items:baseline;gap:12px;display:flex}.pjl-top .n{font-family:var(--font-plex-mono,monospace), monospace;color:var(--crimson-text);letter-spacing:.1em;font-size:12.5px}.pjl-top .pjp-tag{margin:0}.pjl-body h2{letter-spacing:-.015em;margin:0;font-size:clamp(20px,2vw,26px);font-weight:700}.pjl-more{color:var(--teal);margin-top:auto;padding-top:6px;font-size:14.5px;font-weight:600;transition:color .2s}.pjl-card>a:hover .pjl-more{color:var(--crimson-text)}@media (max-width:900px){.pjl{padding:32px 0 8px}.pjl-grid{grid-template-columns:1fr;gap:18px}.pjl-body{padding:16px 16px 18px}}.prj-hero{padding:72px 0 40px}.prj-hero h1{text-transform:none;margin:10px 0 0}.prj-back{color:#cfe0e2;margin-bottom:22px;font-size:14px;text-decoration:none;display:inline-block}.prj-back:hover{color:#fff}.prj-hero .eyebrow{display:block}.prj-hero .pjp-specs{border:0;flex-wrap:wrap;gap:12px 40px;margin:30px 0 0;display:flex}.prj-hero .pjp-specs li{color:#fff;border:0;padding:0}.prj-gal{background:var(--panel);padding:40px 0 0}.prj-gal .pjp-frame{margin:0}.prj-gal .pjp-gallery{grid-auto-columns:calc(62.5% - 8.75px)}.prj-about{background:var(--panel);padding:48px 0 72px}.prj-about .eyebrow{margin-bottom:12px;display:block}.prj-pager{background:var(--paper);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:0}.prj-pager .wrap{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:20px;padding-top:22px;padding-bottom:22px;display:grid}.prj-nb{min-width:0;color:inherit;align-items:center;gap:14px;text-decoration:none;display:flex}.prj-nb.next{text-align:right;flex-direction:row-reverse;grid-column:3}.prj-nb img{object-fit:cover;background:var(--teal-soft);border-radius:10px;flex:none;width:96px;height:72px}.prj-nb small{font-family:var(--font-plex-mono,monospace), monospace;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-size:11.5px;display:block}.prj-nb strong{margin-top:3px;font-size:17px;font-weight:600;line-height:1.25;transition:color .2s;display:block}.prj-nb:hover strong{color:var(--teal)}.prj-all{grid-area:1/2}@media (max-width:900px){.prj-hero{padding:40px 0 32px}.prj-gal{padding-top:28px}.prj-gal .pjp-gallery{grid-auto-columns:86%}.prj-about{padding:32px 0 48px}}@media (max-width:640px){.prj-pager .wrap{grid-template-columns:1fr 1fr;gap:16px 12px}.prj-all{grid-area:2/1/auto/-1;justify-self:center}.prj-nb,.prj-nb.next{flex-direction:column;align-items:flex-start;gap:8px}.prj-nb.next{grid-column:2;align-items:flex-end}.prj-nb img{aspect-ratio:4/3;width:100%;height:auto}.prj-nb strong{font-size:15px}}@media (max-width:480px){.hero h1{font-size:clamp(26px,7.2vw,32px)}.svcp-hero h1{font-size:clamp(26px,8.4vw,30px)}}.nav-item>.nav-drop.mega{width:min(1180px,100vw - 32px);padding:18px 20px;position:fixed;top:58px;left:50%;right:auto;transform:translate(-50%,6px)}.nav-item.open>.nav-drop.mega{transform:translate(-50%)}@media (hover:hover){.nav-item:hover>.nav-drop.mega{transform:translate(-50%)}}.nav-mega{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px 22px;display:grid}.nav-mega-col ul{gap:0}.nav-drop .nav-mega-h{color:var(--teal-deep);padding:6px 10px;font-weight:600}.nav-drop .nav-mega-col li a{color:var(--muted);padding:5px 10px;font-size:14px}.mnav-sub .grp>a{font-weight:600}.mnav-sub .grp ul{margin:0 0 8px;padding:0 0 0 14px;list-style:none}.mnav-sub .grp ul a{color:#ffffffb8;font-size:14px}a.cop-link{color:inherit;text-decoration:none;transition:border-color .2s;display:block}a.cop-link:hover{border-color:var(--teal)}.cop-proj{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px;margin-top:26px;display:grid}.cop-proj-card{color:inherit;text-decoration:none;display:block}.cop-proj-card img{aspect-ratio:3/2;object-fit:cover;background-size:cover;border-radius:14px;width:100%}.cop-proj-card h3{margin:12px 0 2px}.cop-proj-card small{color:var(--muted)}.map-embed{margin-top:12px}.map-embed iframe{background:var(--line);border:0;border-radius:12px;width:100%;height:170px;display:block}.map-embed a{margin-top:8px;font-size:14px;font-weight:600;display:inline-block}.nav-contacts .map-embed{width:300px}.f-map{max-width:360px;margin-top:20px}.f-map iframe{filter:grayscale(.2);height:180px}.f-map a{color:#fff}.map-ph{background:var(--teal-soft);text-align:center;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:8px;height:170px;padding:14px;display:flex}.map-ph button{border:1px solid var(--teal);color:var(--teal-deep);font:inherit;cursor:pointer;background:#fff;border-radius:10px;padding:8px 14px;font-weight:600}.map-ph small{color:var(--muted);max-width:30ch;font-size:12px}.f-map .map-ph{background:#ffffff0f;height:180px}.f-map .map-ph small{color:#aebfc3}.mnav-acc>.mnav-plain{color:#fff;letter-spacing:-.01em;align-items:baseline;gap:14px;padding:15px 2px;font-size:21px;font-weight:600;text-decoration:none;display:flex}.pjl-cat{margin:0 0 22px;font-size:clamp(24px,2.6vw,34px)}.pjl+.pjl{padding-top:24px}.pjl-body h3{letter-spacing:-.015em;margin:0;font-size:clamp(20px,2vw,26px);font-weight:700}.pg :is(a,button,summary):focus-visible{outline:3px solid var(--teal);outline-offset:3px}.pg :is(.svcp-hero,.pg-band) :is(a,button,summary):focus-visible{outline-color:#fff}.pg .svcp-hero .hero-actions{margin-top:28px}.btn-light,.btn-ghost{cursor:pointer;border:1.5px solid #0000;border-radius:10px;justify-content:center;align-items:center;gap:10px;min-height:48px;padding:12px 24px;font-size:15px;font-weight:600;line-height:1.25;text-decoration:none;transition:background .2s,border-color .2s;display:inline-flex}.btn-light{color:var(--teal-deep);background:#fff;border-color:#fff}.btn-light:hover{background:var(--teal-soft);border-color:var(--teal-soft)}.btn-ghost{color:#fff;background:0 0;border-color:#ffffff80}.btn-ghost:hover{background:#ffffff14;border-color:#fff}.btn-light svg,.btn-ghost svg{flex:none;width:20px;height:20px}.pg-sec{padding:76px 0}.pg-sec.alt{background:var(--panel)}.pg>section+section:not(.pg-band){border-top:1px solid var(--line)}.pg-sec h2{max-width:32ch}.pg-sec .wrap>:first-child,.band-grid>.reveal>:first-child{margin-top:0}.card-grid{grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr));gap:16px;margin:28px 0 0;padding:0;list-style:none;display:grid}.card{background:var(--panel);border:1px solid var(--line);border-radius:14px;flex-direction:column;gap:12px;padding:24px 24px 22px;scroll-margin-top:88px;display:flex}.card .n{font-family:var(--font-plex-mono,monospace), monospace;letter-spacing:.1em;color:var(--crimson-text);font-size:12.5px}.card h3{letter-spacing:-.01em;overflow-wrap:break-word;font-size:18px}.card>p{color:var(--muted);font-size:15px;line-height:1.6}.card>.btn2,.job-apply{border-color:var(--teal);color:var(--teal-deep)}.card>.btn2:hover,.job-apply:hover{background:var(--teal-soft);color:var(--teal-deep)}.card>.btn2{align-self:flex-start;align-items:center;min-height:46px;margin-top:auto;display:inline-flex}.tick-list{gap:8px;margin:2px 0 6px;padding:0;list-style:none;display:grid}.tick-list li{padding-left:27px;font-size:14.5px;line-height:1.45;position:relative}.tick-list li:before{content:"";background:var(--teal-soft) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 8.3l2.6 2.6L12 5.4' fill='none' stroke='%231b5a64' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 12px no-repeat;border-radius:50%;width:18px;height:18px;position:absolute;top:.08em;left:0}.feat-grid{grid-template-columns:repeat(auto-fit,minmax(min(250px,100%),1fr));gap:28px 36px;margin:30px 0 0;padding:0;list-style:none;display:grid}.feat{grid-template-columns:40px minmax(0,1fr);align-content:start;gap:4px 14px;display:grid}.feat .ic{background:var(--teal-soft);width:40px;height:40px;color:var(--teal);border-radius:12px;grid-row:span 2;place-items:center;display:grid}.feat .ic svg{width:20px;height:20px}.feat h3{align-self:center;font-size:17px;line-height:1.3}.feat p{color:var(--muted);grid-column:2;font-size:15px;line-height:1.6}.jobs-wrap{margin-top:28px}.jobs{gap:14px;margin:0;padding:0;list-style:none;display:grid}.job{background:var(--panel);border:1px solid var(--line);border-radius:14px;grid-template-columns:minmax(0,1fr) auto;column-gap:24px;padding:22px 24px;display:grid}.job h3{letter-spacing:-.01em;overflow-wrap:break-word;font-size:19px}.job-meta{color:var(--muted);flex-wrap:wrap;gap:6px 22px;margin:10px 0 0;padding:0;font-size:14.5px;list-style:none;display:flex}.job-meta li{align-items:center;gap:7px;display:inline-flex}.job-meta svg{width:17px;height:17px;color:var(--teal);flex:none}.job-apply{white-space:nowrap;grid-area:1/2;align-self:start}.job-more{grid-column:1/-1;margin-top:8px}.job-more summary{min-height:44px;color:var(--teal);cursor:pointer;align-items:center;gap:6px;padding:0 2px;font-size:15px;font-weight:600;list-style:none;display:inline-flex}.job-more summary::-webkit-details-marker{display:none}.job-more summary svg{width:18px;height:18px;transition:transform .2s}.job-more[open] summary svg{transform:rotate(180deg)}.job-cols{border-top:1px solid var(--line);grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr));gap:18px 32px;margin-top:6px;padding-top:16px;display:grid}.job-cols h4{font-family:var(--font-plex-mono,monospace), monospace;letter-spacing:.12em;text-transform:uppercase;color:var(--crimson-text);font-size:12px;font-weight:500}.job-cols ul{gap:7px;margin:10px 0 0;padding:0;list-style:none;display:grid}.job-cols li{padding-left:16px;font-size:14.5px;line-height:1.5;position:relative}.job-cols li:before{content:"";background:var(--teal);width:7px;height:1.5px;position:absolute;top:.72em;left:0}.jobs-empty{background:var(--panel);border:1.5px dashed #b4c4c7;border-radius:14px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px 24px;padding:24px;display:flex}.jobs-empty p{font-size:16px}.tl{counter-reset:tl;margin:30px 0 0;padding:0;list-style:none;display:grid}.tl>li{counter-increment:tl;min-height:40px;padding:0 0 26px 58px;position:relative}.tl>li:before{content:counter(tl, decimal-leading-zero);border:1.5px solid var(--teal);background:var(--panel);width:40px;height:40px;color:var(--teal);font:500 13px/1 var(--font-plex-mono,ui-monospace), ui-monospace, monospace;border-radius:50%;place-items:center;display:grid;position:absolute;top:0;left:0}.tl>li:after{content:"";background:var(--line);width:1.5px;position:absolute;top:46px;bottom:6px;left:20px}.tl>li:last-child{padding-bottom:0}.tl>li:last-child:after{display:none}.tl :is(h3,h4){margin-bottom:6px;padding-top:9px;font-size:17px;line-height:1.3}.tl p{color:var(--muted);font-size:15px;line-height:1.6}@media (min-width:1101px){.tl{grid-template-columns:repeat(var(--n,4), minmax(0, 1fr));gap:28px}.tl>li{padding:56px 0 0}.tl>li:after{width:auto;height:1.5px;inset:20px -22px auto 52px}.tl :is(h3,h4){padding-top:0}}.faq{border-top:1px solid var(--line);max-width:900px;margin-top:24px}.faq details{border-bottom:1px solid var(--line)}.faq summary{cursor:pointer;justify-content:space-between;align-items:center;gap:18px;min-height:60px;padding:14px 2px;font-size:16.5px;font-weight:600;line-height:1.4;list-style:none;display:flex}.faq summary::-webkit-details-marker{display:none}.faq summary svg{width:22px;height:22px;color:var(--teal);flex:none;transition:transform .2s}.faq details[open] summary svg{transform:rotate(45deg)}@media (hover:hover){.faq summary:hover{color:var(--teal)}}.faq .ans{max-width:75ch;color:var(--muted);white-space:pre-line;padding:0 40px 20px 2px}.pg-band{background:var(--teal-deep);color:#d6e4e6;padding:88px 0}.pg-band .eyebrow{color:#ff8296}.pg-band h2{color:#fff;max-width:24ch;margin:10px 0 14px}.pg-band .lead{color:#cfe0e2;max-width:52ch;font-size:clamp(16px,1.3vw,18px)}.pg-band .btn-light{margin-top:28px}.band-grid{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:start;gap:36px 64px;display:grid}.band-grid.solo{grid-template-columns:minmax(0,1fr)}.feat-grid.dark{margin-top:6px}.feat-grid.dark .ic{color:#9fd2da;background:#ffffff17}.feat-grid.dark h3{color:#fff}.feat-grid.dark p{color:#b9cdd1}.band-steps{border-top:1px solid #ffffff29;margin-top:56px;padding-top:40px}.band-steps>h3{color:#fff;font-size:20px}.tl.dark>li:before{border-color:var(--sand);color:var(--sand);background:0 0}.tl.dark>li:after{background:#ffffff38}.tl.dark :is(h3,h4){color:#fff}.tl.dark p{color:#b9cdd1}.refs{grid-template-columns:repeat(auto-fill,minmax(min(320px,100%),1fr));gap:18px;margin:28px 0 0;padding:0;list-style:none;display:grid}.ref{background:var(--panel);border:1px solid var(--line);border-radius:14px;flex-direction:column;gap:14px;height:100%;margin:0;padding:26px 26px 22px;display:flex}.ref .q{width:30px;height:30px;color:var(--sand)}.ref blockquote{margin:0}.ref blockquote p{white-space:pre-line;max-width:none;font-size:16px;line-height:1.65}.ref figcaption{border-top:1px solid var(--line);color:var(--muted);margin-top:auto;padding-top:14px;font-size:14px}.ref figcaption b{color:var(--ink);font-size:15px;font-weight:600;display:block}.apply-sec{padding:88px 0}.lead-sec.apply-sec .wrap{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:start;gap:56px}.apply-aside{align-content:start;gap:16px;display:grid}.apply-aside h2{margin:0}.apply-aside .fine{color:var(--faint);font-size:12.5px}@media (min-width:901px){.apply-aside{position:sticky;top:88px}}.hr-box{background:var(--panel);border:1px solid var(--line);border-radius:12px;gap:2px;padding:14px 18px;display:grid}.hr-title{font-family:var(--font-plex-mono,monospace), monospace;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:2px;font-size:12px}.hr-box a{min-height:44px;color:var(--teal-deep);overflow-wrap:anywhere;justify-self:start;align-items:center;gap:10px;font-weight:600;text-decoration:none;display:inline-flex}.hr-box a:hover{color:var(--teal);text-underline-offset:3px;text-decoration:underline}.hr-box svg{width:20px;height:20px;color:var(--teal);flex:none}.form.fx{padding:28px}.fx-note{color:var(--muted);margin:0 0 18px;font-size:13px}.fx-grid{grid-template-columns:repeat(auto-fit,minmax(min(230px,100%),1fr));gap:18px 16px;display:grid}.fld,.fld-stack{min-width:0}.fld.wide{grid-column:1/-1}.fld-stack{align-content:start;gap:14px;display:grid}.form .req{color:var(--crimson-text);margin-left:3px}.form fieldset{border:0;min-width:0;margin:0;padding:0}.form legend,.form .lbl{color:var(--muted);margin-bottom:7px;padding:0;font-size:13px;font-weight:600;display:block}.form [aria-invalid=true]{border-color:var(--crimson-text)}.form :is(input,select,textarea)[aria-invalid=true]:focus-visible{box-shadow:0 0 0 3px #c8324a38}.fld-err{color:var(--crimson-text);margin-top:6px;font-size:13.5px;font-weight:500;line-height:1.4}.fx-grid label.check{min-height:44px;color:var(--ink);cursor:pointer;margin:0;font-size:14px}.fx-grid label.check input{width:20px;height:20px;margin-top:1px}.chips{flex-wrap:wrap;gap:8px;display:flex}.form label.chip{color:var(--ink);cursor:pointer;margin:0;font-size:14.5px;font-weight:500;display:inline-flex;position:relative}.form .chip input{opacity:0;cursor:pointer;border:0;width:100%;height:100%;margin:0;padding:0;position:absolute;inset:0}.chip span{background:var(--paper);border:1.5px solid var(--line);border-radius:22px;align-items:center;gap:8px;min-height:44px;padding:9px 16px 9px 12px;line-height:1.3;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.chip svg{flex:none;width:18px;height:18px}.chip .ck-off{color:var(--muted)}.chip .ck-on{display:none}@media (hover:hover){.chip:hover span{border-color:var(--teal)}}.chip input:checked+span{background:var(--teal);border-color:var(--teal);color:#fff}.chip input:checked+span .ck-off{display:none}.chip input:checked+span .ck-on{display:block}.chip input:focus-visible+span{outline:3px solid var(--teal);outline-offset:2px}.chip input[aria-invalid=true]+span{border-color:var(--crimson-text)}.form input.vh,.vh{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.drop{background:var(--paper);border:1.5px dashed #a9bcc0;border-radius:12px;flex-wrap:wrap;align-items:center;gap:10px 14px;padding:14px;transition:background .15s,border-color .15s;display:flex}.drop.over{background:var(--teal-soft);border-color:var(--teal)}.form .drop-btn{background:var(--panel);border:1.5px solid var(--teal);min-height:44px;color:var(--teal-deep);font:inherit;cursor:pointer;border-radius:10px;align-items:center;gap:8px;padding:9px 16px;font-size:15px;font-weight:600;transition:background .15s;display:inline-flex}.form .drop-btn:hover{background:var(--teal-soft)}.form .drop-btn:disabled{opacity:.5;cursor:not-allowed;background:var(--panel)}.drop-btn svg{flex:none;width:20px;height:20px}.drop-or{color:var(--muted);font-size:14px}@media (hover:none){.drop-or{display:none}}.files{gap:8px;margin:10px 0 0;padding:0;list-style:none;display:grid}.files li{background:var(--panel);border:1px solid var(--line);border-radius:10px;grid-template-columns:20px minmax(0,1fr) auto;align-items:center;column-gap:10px;padding:6px 4px 6px 12px;font-size:14.5px;display:grid}.files li>svg{width:20px;height:20px;color:var(--teal);grid-area:1/1/3/2}.files .fn{overflow-wrap:anywhere;grid-area:1/2;line-height:1.35}.files .fs{color:var(--muted);grid-area:2/2;font-size:13px}.files .file-x{grid-area:1/3/3/4}.form .file-x{min-width:44px;min-height:44px;color:var(--crimson-text);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:0 12px;font-size:14px;font-weight:600;display:inline-flex}.form .file-x:hover{background:#fbecee}.file-x svg{flex:none;width:16px;height:16px}.form button[type=submit]:disabled{background:var(--teal-deep);cursor:progress}.spin{vertical-align:-3px;border:2px solid #fff6;border-top-color:#fff;border-radius:50%;width:16px;height:16px;margin-right:10px;animation:.8s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.form .error-note p+p{margin-top:6px}.form .error-note .crm-msg{font-weight:600}.form .error-note:focus{outline:none}.form .error-note:focus-visible{outline:3px solid var(--crimson-text);outline-offset:2px}.form-sent{justify-items:start;gap:12px;padding:36px 32px;display:grid}.form-sent .ok-ic{width:44px;height:44px;color:var(--teal)}.form-sent h3{letter-spacing:-.01em;font-size:22px}.form-sent h3:focus{outline:none}.form-sent>p{max-width:52ch;color:var(--muted)}.sent-contacts{flex-wrap:wrap;align-items:center;gap:0 18px;display:flex}.sent-contacts a{min-height:44px;color:var(--teal);overflow-wrap:anywhere;align-items:center;font-weight:600;text-decoration:none;display:inline-flex}.sent-contacts a:hover{text-underline-offset:3px;text-decoration:underline}@media (max-width:900px){.pg-sec{padding:56px 0}.pg-band{padding:60px 0}.band-grid{grid-template-columns:minmax(0,1fr)}.band-steps{margin-top:40px;padding-top:32px}.apply-sec{padding:60px 0}.lead-sec.apply-sec .wrap{grid-template-columns:minmax(0,1fr);gap:32px}}@media (max-width:640px){.card{padding:20px 18px}.job{grid-template-columns:minmax(0,1fr);padding:18px 16px}.job-apply{grid-area:auto/1;justify-self:start;margin-top:10px}.faq .ans{padding-right:2px}}@media (max-width:480px){.pg .hero-actions>a{flex:auto}.form.fx{padding:22px 16px}.form-sent{padding:28px 20px}.file-x span{display:none}}@media (prefers-reduced-motion:reduce){.spin{display:none}.btn-light,.btn-ghost,.job-more summary svg,.faq summary svg,.chip span,.drop,.form .drop-btn{transition:none}}
