@font-face{font-family:Manrope;src:url('assets/manrope-regular.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Manrope;src:url('assets/manrope-semibold.ttf') format('truetype');font-style:normal;font-weight:500 700;font-display:swap}
@font-face{font-family:Manrope;src:url('assets/manrope-extrabold.ttf') format('truetype');font-style:normal;font-weight:800;font-display:swap}
:root{--paper:#f5f4f0;--ink:#202624;--muted:#5c635f;--line:#d6d9d2;--red:#b93629;--red-hover:#9f2c21;--dark:#202a26;--ease:cubic-bezier(.16,1,.3,1);--gutter:clamp(24px,5vw,88px);--radius:20px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:115px}body{margin:0;color:var(--ink);background:var(--paper);font-family:Manrope,sans-serif;font-weight:400;-webkit-font-smoothing:antialiased}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}a{color:inherit;text-decoration:none}button{color:inherit}img{display:block;max-width:100%;object-fit:cover}h1,h2,h3,p{margin:0}h1,h2,h3{text-wrap:balance}p{line-height:1.75}::selection{background:#b93629;color:#fff}*{scrollbar-width:thin;scrollbar-color:#727a74 var(--paper)}:focus-visible{outline:2px solid var(--red);outline-offset:6px}input,textarea{caret-color:var(--red)}[hidden]{display:none!important}.page-width{width:calc(100% - var(--gutter)*2);max-width:1392px;margin-inline:auto}.section-space{padding-block:110px}.icon-sprite{position:absolute;width:0;height:0;overflow:hidden}.icon{width:22px;height:22px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip-link{position:fixed;top:8px;left:16px;z-index:100;padding:12px 20px;background:var(--ink);color:white;transform:translateY(-150%)}.skip-link:focus{transform:none}
.site-header{position:fixed;z-index:30;top:0;left:var(--gutter);right:var(--gutter);max-width:1392px;margin-inline:auto;display:flex;align-items:center;justify-content:space-between;gap:22px;padding:16px 22px;border-radius:0 0 18px 18px;background:rgba(250,250,247,.76);border:1px solid rgba(255,255,255,.85);border-top:0;box-shadow:0 8px 26px rgba(33,42,34,.05),inset 0 1px 0 white;backdrop-filter:blur(24px) saturate(1.15);-webkit-backdrop-filter:blur(24px) saturate(1.15);transition:background .4s,box-shadow .4s}.site-header.scrolled{background:rgba(250,250,247,.94);box-shadow:0 8px 28px rgba(33,42,34,.09)}.brand{display:flex;align-items:center;gap:10px}.brand-mark{width:42px;height:42px;fill:var(--red);flex-shrink:0}.brand-name{font-size:29px;font-weight:800;letter-spacing:-.04em;line-height:1.1}.brand-name>span{display:block;font-size:9px;font-weight:600;letter-spacing:.075em;margin-top:6px}.desktop-nav{display:flex;gap:29px;font-size:13px;font-weight:600}.desktop-nav a{position:relative;padding-block:8px}.desktop-nav a:after{content:'';position:absolute;bottom:2px;left:0;width:100%;height:1px;background:var(--red);transform:scaleX(0);transform-origin:left;transition:transform .4s var(--ease)}.desktop-nav a:hover:after,.desktop-nav a.active:after{transform:scaleX(1)}.header-contacts{display:flex;flex-direction:column;align-items:flex-end;gap:5px;min-width:202px;margin:0;font-style:normal;white-space:nowrap}.header-address{font-size:11px;color:var(--muted);line-height:1.5}.header-phone{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;line-height:1.5;font-variant-numeric:tabular-nums;letter-spacing:-.01em}.menu-toggle{display:none}.mobile-nav{position:fixed;z-index:29;top:84px;left:var(--gutter);right:var(--gutter);padding:18px 24px;border:1px solid white;border-radius:18px;background:rgba(249,249,246,.96);backdrop-filter:blur(24px);box-shadow:0 16px 32px #20262415}.mobile-nav a{display:flex;align-items:center;justify-content:space-between;padding:16px 0;border-bottom:1px solid var(--line);font-weight:600}.mobile-nav a:last-child{border:0;color:var(--red)}
.button{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;padding:19px 24px;border:0;border-radius:11px;font-size:13px;font-weight:600;transition:background .3s,box-shadow .4s,transform .4s var(--ease)}.button.primary{background:var(--red);color:#fff;box-shadow:0 6px 18px rgba(137,37,28,.13)}.button.primary:hover{background:var(--red-hover);transform:translateY(-2px);box-shadow:0 10px 22px rgba(137,37,28,.19)}.button.primary:active{transform:translateY(0)}.button:disabled{cursor:wait;opacity:.7;transform:none}.text-link{display:inline-flex;align-items:center;gap:14px;font-size:12px;font-weight:600;padding-block:8px}.text-link .icon{width:18px;height:18px;transition:transform .3s var(--ease)}.text-link:hover .icon{transform:translateX(4px)}.glass{background:rgba(248,249,244,.8);border:1px solid rgba(255,255,255,.8);backdrop-filter:blur(20px) saturate(1.1);-webkit-backdrop-filter:blur(20px) saturate(1.1);box-shadow:0 12px 30px rgba(32,40,31,.08),inset 0 1px 0 #fff9}

.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:47px}.section-heading h2{font-size:clamp(34px,3.7vw,54px);font-weight:500;letter-spacing:-.04em;line-height:1.18}.section-heading>p,.objects-description>p{font-size:13px;color:var(--muted);max-width:420px}.expertise-layout{display:grid;grid-template-columns:1fr 1.02fr;gap:70px;align-items:stretch}.expertise-visual{position:relative;min-height:470px;overflow:hidden;border-radius:var(--radius);background:#e6e6df}.expertise-visual img{width:100%;height:100%;position:absolute;object-fit:cover;transition:opacity .25s;}.expertise-visual img.switching{opacity:.35}.service-image-caption{position:absolute;left:26px;right:26px;bottom:24px;display:flex;justify-content:space-between;gap:20px;font-size:11px}.service-image-caption span:last-child{font-size:9px;color:#505950}.model-chip{position:absolute;top:24px;left:24px;display:flex;align-items:center;gap:9px;font-size:10px;border-radius:9px;padding:11px 13px}.model-chip .icon{width:14px;height:14px}.service{border-top:1px solid var(--line)}.service:last-child{border-bottom:1px solid var(--line)}.service summary{display:flex;align-items:center;gap:18px;padding-block:26px;cursor:pointer;list-style:none}.service summary::-webkit-details-marker{display:none}.step-number{font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums}.service h3{font-size:19px;line-height:1.4;font-weight:600;letter-spacing:-.02em}.service-toggle{margin-left:auto;display:grid;place-items:center;width:27px;height:27px;border-radius:50%;border:1px solid #c7cdc6;transition:background .3s,transform .4s var(--ease)}.service-toggle .icon{width:14px;height:14px}.service[open] .service-toggle{background:var(--ink);color:white;border-color:var(--ink);transform:rotate(45deg)}.service[open] h3{color:var(--red)}.service-body{padding:0 38px 27px}.service-body p{color:var(--muted);font-size:12px;max-width:58ch}.service-body ul{padding:0;margin:16px 0 0;list-style:none;font-size:11px;display:flex;flex-direction:column;gap:8px}.service-body li{position:relative;padding-left:14px}.service-body li:before{content:'';position:absolute;left:0;top:7px;width:4px;height:4px;background:var(--red);border-radius:50%}
.objects-section{background:#ebece5;padding-top:100px;padding-bottom:70px}.objects-description{display:flex;flex-direction:column;gap:22px}.filter-group{display:flex;align-items:center;padding:4px;background:#dce0d780;border:1px solid #d5dad2;border-radius:10px;gap:2px}.filter{background:transparent;border:0;border-radius:7px;padding:10px 14px;font-size:10px;color:#515951;transition:background .25s,color .25s,box-shadow .25s}.filter:hover{color:var(--ink)}.filter.active{background:#fff;color:var(--ink);box-shadow:0 2px 8px #2635240a}.object-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:25px 28px;align-items:start}.object-card.wide{grid-row:span 2}.object-image{position:relative;overflow:hidden;border-radius:16px;background:#e0e2da}.object-image img{width:100%;height:230px;transition:transform .8s var(--ease)}.wide .object-image img{height:570px;object-position:65% center}.object-card:hover .object-image img{transform:scale(1.035)}.object-badge{position:absolute;top:18px;left:18px;padding:9px 12px;border-radius:8px;font-size:10px}.object-arrow{position:absolute;right:18px;bottom:18px;width:40px;height:40px;display:grid;place-items:center;border:1px solid #fffb;border-radius:50%;color:var(--ink);background:#f9faf3d9;backdrop-filter:blur(12px);transition:background .3s,transform .3s}.object-arrow:hover{background:white;transform:rotate(10deg)}.object-arrow .icon{width:18px;height:18px}.object-title{display:flex;justify-content:space-between;gap:15px;align-items:baseline;margin-top:16px}.object-title h3{font-size:16px;font-weight:600;letter-spacing:-.025em}.object-title>span{font-size:9px;color:var(--muted);text-align:right}.objects-note{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-top:35px}.objects-note>span{max-width:70ch;font-size:10px;line-height:1.7;color:var(--muted)}.object-grid.filtered{grid-template-columns:repeat(2,1fr)}.object-grid.filtered .wide{grid-row:auto}.object-grid.filtered .object-image img{height:390px}
.approach-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:65px;padding-top:10px}.approach-grid article{border-top:1px solid var(--line);padding-top:27px}.principle-mark{display:flex;align-items:center;height:26px;color:var(--red);margin-bottom:23px}.principle-mark .icon{width:24px;height:24px}.approach-grid h3{font-size:21px;font-weight:500;letter-spacing:-.03em;line-height:1.38;margin-bottom:19px}.approach-grid p{font-size:12px;color:var(--muted);max-width:42ch}.workflow{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:56px;padding:25px 27px;background:#fff7;border-radius:13px;border:1px solid #fff;font-size:10px}.workflow>span{white-space:nowrap}.workflow>i{flex:1;height:1px;background:#cbd2c9;position:relative}.workflow>i:after{content:'';position:absolute;right:0;top:-2px;width:5px;height:5px;border-top:1px solid #9aa398;border-right:1px solid #9aa398;transform:rotate(45deg)}.workflow-final{display:flex;gap:10px;align-items:center;color:var(--red);font-weight:600}.workflow .icon{width:16px;height:16px}
.region-section{position:relative;isolation:isolate;min-height:550px;display:flex;align-items:center;overflow:hidden}.region-section>img{position:absolute;z-index:-3;width:100%;height:100%;object-position:center 60%}.region-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(18,28,21,.75),rgba(22,34,25,.36) 60%,rgba(19,29,22,.08))}.region-content{color:#fff;padding-block:70px}.region-content h2{font-size:clamp(38px,4.3vw,63px);font-weight:500;letter-spacing:-.04em;line-height:1.2;max-width:750px}.region-content p{margin-top:25px;font-size:14px;color:#e3e8df}.region-signature{display:flex;align-items:center;gap:26px;margin-top:53px;font-size:26px;font-weight:800;letter-spacing:-.03em}.region-signature>span{font-weight:400;letter-spacing:0;font-size:10px;padding-left:26px;border-left:1px solid #ffffff52}.region-caption{position:absolute;right:var(--gutter);bottom:20px;color:white;font-size:9px}
.contact-section{background:var(--dark);color:#f6f7f2;padding-block:100px}.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:85px}.contact-copy h2{font-size:clamp(36px,3.75vw,56px);font-weight:500;letter-spacing:-.04em;line-height:1.18}.contact-copy>p{font-size:13px;color:#c5d0c6;margin-top:27px}.contact-location{display:flex;gap:12px;align-items:flex-start;margin-top:43px;font-size:12px}.contact-location .icon{width:17px;height:17px}.contact-location>span>span{display:block;font-size:9px;color:#bbc7bc;margin-top:8px}.contact-placeholder{font-size:10px;color:#bbc7bc;line-height:1.8;margin-top:25px}.project-form{padding:31px 32px;border:1px solid #ffffff20;background:#ffffff05;border-radius:18px}.project-form h3{font-size:21px;font-weight:500;letter-spacing:-.02em;margin-bottom:25px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:19px}.project-form label{display:block;font-size:10px;margin-bottom:22px;color:#d8e1d8}.project-form input,.project-form textarea,.project-form select{width:100%;border:0;border-bottom:1px solid #728075;border-radius:0;background:transparent;color:#f6f7f2;display:block;font-size:12px;padding:12px 0;outline-offset:4px}.project-form input::placeholder,.project-form textarea::placeholder{color:#aebdaf;opacity:1}.project-form select{appearance:none;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23c7d0c7'%3E%3Cpath d='m4 6 4 4 4-4'/%3E%3C/svg%3E") right center/16px no-repeat;padding-right:25px}.project-form option{background:var(--dark);color:white}.project-form textarea{resize:vertical;min-height:90px}.project-form .button{width:100%;font-size:12px;margin-top:2px}.form-note{font-size:9px;line-height:1.7;color:#b5c4b6;margin-top:17px}.form-status{padding:14px 16px;border-radius:8px;border:1px solid #728575;color:#ebf3e6;font-size:11px;margin-top:18px;background:#314237}.form-status.error{border-color:#eea198;color:#ffd0c9;background:#51382f}
.site-footer{background:var(--dark);color:white;padding-block:42px 26px;border-top:1px solid #ffffff14}.footer-top{display:flex;justify-content:space-between;align-items:center;gap:30px;padding-bottom:38px}.footer-brand .brand-mark{fill:#e35b4d}.footer-brand .brand-name{font-size:30px}.footer-top>p{font-size:12px;line-height:1.65;color:#c6d0c6}.back-top{display:flex;align-items:center;gap:13px;font-size:11px}.back-top .icon{transform:rotate(-90deg);width:16px;height:16px}.footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:22px;padding-top:23px;border-top:1px solid #ffffff1c;font-size:9px;color:#b8c6b9}.footer-links{display:flex;gap:25px}.footer-links button{padding:0;border:0;background:transparent;font-size:9px;color:#b8c6b9;line-height:1.5}.footer-links button:hover{color:white}.preview-label{color:#b8c6b9}.info-dialog{position:fixed;width:min(550px,calc(100vw - 40px));margin:auto;padding:38px;border:1px solid white;border-radius:20px;background:var(--paper);color:var(--ink);box-shadow:0 28px 80px #0003}.info-dialog::backdrop{background:#202a2670;backdrop-filter:blur(7px)}.info-dialog h2{font-size:28px;font-weight:500;letter-spacing:-.03em;margin-bottom:22px}.info-dialog p{font-size:12px;color:var(--muted);margin-block:15px}.info-dialog dl{display:grid;grid-template-columns:95px 1fr;font-size:12px;gap:16px;margin-top:23px}.info-dialog dt{color:var(--muted)}.info-dialog dd{margin:0}.dialog-close{position:absolute;top:17px;right:17px;display:grid;place-items:center;width:32px;height:32px;border:1px solid var(--line);border-radius:50%;background:white}.dialog-close .icon{width:16px;height:16px;transform:rotate(45deg)}
@keyframes hero-arrive{from{opacity:.4;filter:blur(3px);transform:translateY(14px)}to{opacity:1;filter:blur(0);transform:none}}
@media(min-width:1700px){}
@media(max-width:1200px){.desktop-nav{gap:19px;font-size:12px}.site-header{padding-inline:17px}.brand-name{font-size:26px}.header-contacts{min-width:185px}.header-phone{font-size:13px}.expertise-layout{gap:35px}.contact-layout{gap:50px}.approach-grid{gap:36px}.object-title{flex-direction:column;gap:5px}.object-title>span{text-align:left}}
@media(max-width:960px){.desktop-nav{display:none}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:6px;width:34px;height:40px;padding:5px;background:transparent;border:0}.menu-toggle span{height:1.5px;width:24px;background:var(--ink);transition:transform .3s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.75px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.75px) rotate(-45deg)}.header-contacts{margin-left:auto}.section-heading{align-items:flex-start}.section-heading h2{font-size:38px}.section-heading>p,.objects-description>p{font-size:11px}.expertise-layout{gap:28px;grid-template-columns:.9fr 1.1fr}.service h3{font-size:16px}.service summary{gap:12px}.service-body{padding-left:25px;padding-right:10px}.service-body p{font-size:11px}.service-body ul{font-size:10px}.expertise-visual{min-height:440px}.wide .object-image img{height:515px}.object-image img{height:215px}.object-title h3{font-size:15px}.approach-grid h3{font-size:19px}.approach-grid p{font-size:11px}.contact-layout{gap:30px}.project-form{padding:27px 24px}.contact-copy h2{font-size:38px}.contact-location>span>span{max-width:220px;line-height:1.6}.objects-note{align-items:flex-start}.section-space{padding-block:80px}}
@media(max-width:680px){:root{--gutter:22px}html{scroll-padding-top:105px}.site-header{top:0;padding:12px 14px;border-radius:0 0 14px 14px;gap:10px 15px;flex-wrap:wrap}.brand-mark{width:34px;height:34px}.brand{gap:8px}.brand-name{font-size:24px}.brand-name>span{font-size:7px;letter-spacing:.04em;margin-top:4px}.header-contacts{order:3;flex-basis:100%;min-width:0;margin-left:0;flex-direction:row;align-items:center;justify-content:space-between;gap:10px;padding-top:9px;border-top:1px solid #20262415}.header-address{font-size:9px}.header-phone{font-size:11px;gap:6px}.menu-toggle{margin-left:auto}.mobile-nav{top:107px}.desktop-break{display:none}.section-space{padding-block:62px}.section-heading{display:block;margin-bottom:28px}.section-heading h2{font-size:34px;line-height:1.22}.section-heading>p,.objects-description>p{font-size:12px;margin-top:19px;max-width:42ch}.expertise-layout{display:flex;flex-direction:column;gap:24px}.expertise-visual{min-height:330px}.service-image-caption{left:19px;right:19px;bottom:18px;font-size:10px}.model-chip{left:19px;top:19px;font-size:9px}.service summary{padding-block:23px;gap:14px}.service h3{font-size:17px}.service-body{padding-left:30px;padding-bottom:25px}.service-body p{font-size:12px;line-height:1.75}.service-body ul{font-size:11px}.objects-section{padding-bottom:40px}.objects-description{gap:16px}.objects-description>p{margin-top:20px}.filter-group{width:fit-content}.filter{padding:10px 13px;font-size:10px}.object-grid,.object-grid.filtered{grid-template-columns:1fr;gap:25px}.object-card.wide{grid-row:auto}.object-image img,.wide .object-image img,.object-grid.filtered .object-image img{height:290px}.wide .object-image img{object-position:65% center}.model-card .object-image img{height:270px}.object-title{flex-direction:row;align-items:flex-start;gap:15px}.object-title h3{font-size:16px;max-width:220px}.object-title>span{font-size:9px;text-align:right;max-width:120px;line-height:1.6}.objects-note{display:block;margin-top:28px}.objects-note>span{display:block;font-size:9px;max-width:55ch}.objects-note .text-link{margin-top:13px;font-size:11px}.approach-grid{grid-template-columns:1fr;gap:29px;padding-top:0}.approach-grid article{padding-top:20px;display:grid;grid-template-columns:35px 1fr;gap:12px 14px}.principle-mark{margin:3px 0 0;grid-row:span 2}.approach-grid h3{font-size:21px;margin-bottom:0;line-height:1.35}.approach-grid h3 br{display:none}.approach-grid p{font-size:12px;max-width:48ch}.workflow{margin-top:34px;padding:21px 23px;display:grid;grid-template-columns:1fr;gap:16px;font-size:11px}.workflow>i{width:1px;height:15px;margin-left:3px}.workflow>i:after{top:10px;right:-2px;transform:rotate(135deg)}.region-section{min-height:470px}.region-section>img{object-position:65% center}.region-shade{background:linear-gradient(90deg,#18251fbb,#18251f77)}.region-content{padding-block:60px}.region-content h2{font-size:37px}.region-content p{font-size:12px;margin-top:22px}.region-signature{margin-top:39px;font-size:25px;gap:20px}.region-signature>span{padding-left:20px;font-size:9px}.region-caption{right:22px;bottom:15px;font-size:8px}.contact-section{padding-block:62px}.contact-layout{grid-template-columns:1fr;gap:37px}.contact-copy h2{font-size:36px}.contact-copy>p{font-size:12px;margin-top:24px}.contact-location{margin-top:27px}.contact-placeholder{font-size:9px;margin-top:18px}.project-form{padding:26px 23px;border-radius:15px}.project-form h3{font-size:21px;margin-bottom:26px}.form-row{gap:17px}.project-form input,.project-form textarea,.project-form select{font-size:16px}.project-form input{font-size:16px}.project-form input::placeholder{font-size:11px}.project-form label{font-size:10px}.project-form textarea::placeholder{font-size:12px}.project-form select{font-size:13px}.form-note{font-size:9px}.site-footer{padding-block:33px 24px}.footer-top{gap:20px;flex-wrap:wrap;padding-bottom:30px}.footer-top>p{font-size:10px}.footer-brand .brand-name{font-size:26px}.footer-brand .brand-mark{width:36px}.back-top{font-size:10px;width:100%;justify-content:flex-end}.footer-bottom{display:grid;grid-template-columns:1fr auto;gap:19px;font-size:8px}.footer-links{grid-row:2;grid-column:span 2;gap:23px}.footer-links button{font-size:9px}.preview-label{font-size:8px}.info-dialog{padding:35px 25px}.info-dialog h2{font-size:25px}.info-dialog dl{grid-template-columns:75px 1fr;font-size:11px}}
@media(max-width:360px){:root{--gutter:16px}.object-title{flex-direction:column;gap:5px}.object-title>span{text-align:left;max-width:none}.form-row{grid-template-columns:1fr;gap:0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
@media print{.site-header,.mobile-nav,.hero-actions,.object-arrow,.project-form,.footer-links,.back-top{display:none!important}.section-space{padding-block:35px}.contact-layout{display:block}.contact-section{padding-block:40px}.region-section{min-height:350px}a{color:inherit}.site-header{position:static}}

.region-caption{padding:6px 9px;border-radius:5px;background:rgba(25,36,28,.62)}
.footer-links button{min-height:40px}

/* Page navigation stays in the main header; the second panel belongs to home. */
.mobile-nav{top:calc(var(--header-height,76px) + 8px);z-index:32}
.section-nav{--nav-joint:18px;position:fixed;z-index:28;top:calc(var(--header-height,76px) - var(--nav-joint));left:var(--gutter);right:var(--gutter);max-width:1392px;margin-inline:auto;display:flex;align-items:center;justify-content:space-between;gap:30px;padding:calc(9px + var(--nav-joint)) 24px 9px;border:1px solid #ffffffb3;border-top:0;border-radius:0 0 13px 13px;background:rgba(250,250,247,.76);backdrop-filter:blur(24px) saturate(1.15);-webkit-backdrop-filter:blur(24px) saturate(1.15);box-shadow:0 9px 22px #20262406;transition:opacity .16s,transform .2s var(--ease),clip-path .2s var(--ease);transform-origin:top;clip-path:inset(0 0 0 0)}
.section-nav-label{font-size:9px;color:var(--muted);white-space:nowrap}
.section-nav-links{display:flex;align-items:center;justify-content:space-between;gap:34px}
.section-nav a{position:relative;display:block;padding:9px 0;font-size:11px;font-weight:500;white-space:nowrap;transition:color .25s}
.section-nav a:after{content:'';position:absolute;left:0;right:0;bottom:4px;height:1px;background:var(--red);transform:scaleX(0);transform-origin:left;transition:transform .35s var(--ease)}
.section-nav a:hover,.section-nav a.active{color:var(--red)}
.section-nav a:hover:after,.section-nav a.active:after{transform:scaleX(1)}
.home-page{scroll-padding-top:calc(var(--header-height,76px) + 80px)}
html:has(.home-page){scroll-padding-top:calc(var(--header-height,76px) + 80px)}
html:has(.inner-page){scroll-padding-top:calc(var(--header-height,76px) + 25px)}
.page-leaving .section-nav{opacity:0;transform:translateY(-12px) scaleY(.85);clip-path:inset(0 0 100% 0);pointer-events:none}
.inner-intro{padding-top:calc(var(--header-height,76px) + 78px);padding-bottom:65px;display:flex;align-items:flex-end;justify-content:space-between;gap:50px}
.inner-intro h1{font-size:clamp(42px,5.1vw,76px);font-weight:500;letter-spacing:-.04em;line-height:1.13;max-width:820px}
.inner-intro>p{max-width:39ch;color:var(--muted);font-size:13px;margin-bottom:7px}
.inner-page .expertise-section{padding-top:15px}
.inner-page .clients-section{padding-top:60px}
.inner-cta{display:flex;justify-content:space-between;align-items:center;gap:30px;padding-block:58px;border-top:1px solid var(--line)}
.inner-cta h2{font-size:35px;font-weight:500;letter-spacing:-.035em}
@media(max-width:960px){.section-nav{padding-inline:19px;gap:20px}.section-nav-links{gap:27px}.inner-intro{display:block;padding-top:calc(var(--header-height,76px) + 65px)}.inner-intro>p{margin-top:26px;max-width:52ch}}
@media(max-width:680px){.section-nav{--nav-joint:14px;left:var(--gutter);right:var(--gutter);top:calc(var(--header-height,99px) - var(--nav-joint));padding:calc(6px + var(--nav-joint)) 14px 6px;gap:0;overflow-x:auto;scrollbar-width:none;border-radius:0 0 10px 10px}.section-nav::-webkit-scrollbar{display:none}.section-nav-label{display:none}.section-nav-links{justify-content:space-between;gap:19px;flex:1}.section-nav a{font-size:10px;padding:10px 0}.inner-intro{padding-top:calc(var(--header-height,99px) + 51px);padding-bottom:40px}.inner-intro h1{font-size:42px}.inner-intro>p{font-size:12px;max-width:43ch;margin-top:21px}.inner-page .expertise-section{padding-top:0}.inner-page .clients-section{padding-top:40px}.inner-cta{display:block;padding-block:38px}.inner-cta h2{font-size:29px;margin-bottom:24px}}
@media(max-width:360px){.section-nav-links{gap:15px}.section-nav{padding-inline:12px}.section-nav a{font-size:9px}.inner-intro h1{font-size:37px}}
@media(prefers-reduced-motion:reduce){.page-leaving .section-nav{transform:none}.section-nav{transition:none}}
@media print{.section-nav{display:none}.inner-intro{padding-top:40px}}

.section-nav{-webkit-mask:radial-gradient(circle at 100% 0,transparent calc(var(--nav-joint) - .5px),#000 var(--nav-joint)) left top/var(--nav-joint) var(--nav-joint) no-repeat,radial-gradient(circle at 0 0,transparent calc(var(--nav-joint) - .5px),#000 var(--nav-joint)) right top/var(--nav-joint) var(--nav-joint) no-repeat,linear-gradient(#000 0 0) left bottom/100% calc(100% - var(--nav-joint)) no-repeat;mask:radial-gradient(circle at 100% 0,transparent calc(var(--nav-joint) - .5px),#000 var(--nav-joint)) left top/var(--nav-joint) var(--nav-joint) no-repeat,radial-gradient(circle at 0 0,transparent calc(var(--nav-joint) - .5px),#000 var(--nav-joint)) right top/var(--nav-joint) var(--nav-joint) no-repeat,linear-gradient(#000 0 0) left bottom/100% calc(100% - var(--nav-joint)) no-repeat}
.site-header.scrolled + .section-nav{background:rgba(250,250,247,.94)}

.clients-section { padding-top: 34px; padding-bottom: 20px; }
.clients-heading { display: flex; align-items: center; justify-content: space-between; gap: 30px; margin-bottom: 23px; }
.clients-heading h2 { font-size: 27px; font-weight: 600; letter-spacing: -.03em; line-height: 1.3; }
.clients-heading p { font-size: 12px; color: var(--muted); }
.client-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 12px; }
.client-card {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: 145px;
  padding: 22px 20px 16px;
  border: 1px solid #bcc3bc;
  border-radius: 13px;
  background: transparent;
  transition: border-color .25s;
}
.client-logo { display: flex; align-items: center; justify-content: center; height: 64px; }
.client-logo img { width: 100%; max-width: 164px; height: auto; max-height: 54px; object-fit: contain; }
.tele2 .client-logo img { width: 64px; }
.mts .client-logo img, .beeline .client-logo img { width: 48px; }
.client-caption { display: flex; align-items: center; justify-content: space-between; gap: 8px; font-size: 10px; color: var(--muted); margin-top: 17px; }
.client-caption .icon { width: 14px; height: 14px; opacity: .7; }
.client-card:hover { border-color: var(--ink); }
@media (max-width: 1100px) {
  .client-card { padding-inline: 14px; }
}
@media (max-width: 960px) {
  .client-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 680px) {
  .location-label { font-size: 10px; }
  .location-label .icon { width: 14px; height: 14px; }
  .clients-section { padding-top: 29px; padding-bottom: 5px; }
  .clients-heading { display: block; margin-bottom: 19px; }
  .clients-heading h2 { font-size: 23px; }
  .clients-heading p { margin-top: 12px; font-size: 11px; }
  .clients-heading p br { display: none; }
  .client-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  .client-card { min-height: 122px; padding: 17px 14px 13px; border-radius: 11px; }
  .client-card:last-child { grid-column: span 2; }
  .client-logo { height: 51px; }
  .client-logo img { max-height: 43px; }
  .tele2 .client-logo img { width: 54px; }
  .mts .client-logo img, .beeline .client-logo img { width: 43px; }
  .client-caption { font-size: 9px; margin-top: 16px; }
}
@media (max-width: 360px) { }
@media print { }

/* A corporate cover: text and a photographic plate share one physical frame. */
.home-page .hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 41%);
  margin-top: calc(var(--header-height, 76px) + 78px);
  padding: 10px;
  border: 1px solid #c1c8c0;
  border-radius: 22px;
  background: #faf9f5;
  box-shadow: 0 8px 26px #20262406, inset 0 1px 0 #fff;
}
.hero-intro {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 45px;
  padding: 36px 44px 32px 36px;
  animation: hero-arrive .8s var(--ease) both;
}
.hero h1 {
  font-size: clamp(46px, 4.45vw, 68px);
  font-weight: 600;
  line-height: 1.12;
  letter-spacing: -.04em;
  text-wrap: initial;
}
.hero h1 span { color: var(--red); }
.hero-copy > p {
  max-width: 410px;
  margin-top: 28px;
  font-size: 14px;
  line-height: 1.85;
  color: var(--muted);
}
.hero-profile {
  padding-top: 23px;
  border-top: 1px solid var(--line);
}
.hero-profile > p { font-size: 11px; margin-bottom: 14px; }
.location-label { display: flex; align-items: center; gap: 8px; font-size: 11px; color: var(--muted); }
.location-label .icon { width: 16px; height: 16px; }
.company-contacts {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 60px;
  padding-block: 46px 85px;
  border-top: 1px solid var(--line);
}
.contact-identity > img { margin-bottom: 23px; }
.contact-identity h2 { font-size: 37px; letter-spacing: -.04em; font-weight: 600; }
.contact-identity h2 span { display: block; font-size: 12px; letter-spacing: .02em; font-weight: 400; margin-top: 9px; }
.contact-identity > p { max-width: 38ch; font-size: 13px; margin-top: 27px; color: var(--muted); }
.office-details { font-style: normal; }
.office-details > div { padding-block: 25px; border-bottom: 1px solid var(--line); }
.office-details > div:first-child { padding-top: 0; }
.office-details span { display: block; font-size: 11px; color: var(--muted); margin-bottom: 14px; }
.office-details p { font-size: 23px; line-height: 1.4; letter-spacing: -.025em; }
.office-details small { display: block; font-size: 12px; color: var(--muted); margin-top: 10px; }
@media (max-width: 1100px) {
  .hero-intro { padding: 29px 30px 28px 25px; gap: 30px; }
  .hero h1 { font-size: clamp(38px, 4.4vw, 49px); }
  .hero-copy > p { font-size: 12px; margin-top: 22px; }
  .hero-profile { padding-top: 17px; }
  .hero-profile > p { font-size: 9px; }
}
@media (max-width: 760px) {
  .home-page .hero { grid-template-columns: minmax(0, 1fr); padding: 8px; border-radius: 18px; margin-top: calc(var(--header-height, 99px) + 66px); }
  .hero-intro { padding: 23px 19px 25px; gap: 25px; }
  .hero h1 { font-size: clamp(29px, 8.9vw, 53px); line-height: 1.12; }
  .hero-copy > p { font-size: 12px; margin-top: 20px; }
  .hero-profile > p { font-size: 10px; margin-bottom: 12px; }
  .location-label { font-size: 10px; }
  .company-contacts { grid-template-columns: 1fr; gap: 38px; padding-block: 35px 60px; }
  .contact-identity > img { width: 56px; height: 56px; }
  .office-details p { font-size: 21px; }
}
@media (prefers-reduced-motion: reduce) { .hero-intro { animation: none; } }
@media print { .home-page .hero { margin-top: 25px; } .hero-intro { animation: none; } }

/* Static photograph generated from the authored telecom installation. */
.hero h1 { font-size: clamp(36px, 3.6vw, 54px); color: var(--ink); }
.hero-photo { min-width: 0; margin: 0; }
.hero-photo > img { display: block; width: 100%; height: auto; border-radius: 14px; }
.hero-photo > figcaption { padding: 11px 4px 5px; font-size: 9px; color: var(--muted); }
@media (max-width: 1100px) {
  .hero h1 { font-size: clamp(32px, 4.1vw, 45px); }
}
@media (max-width: 760px) {
  .hero h1 { font-size: clamp(27px, 8.35vw, 47px); line-height: 1.15; }
  .hero-photo > img { border-radius: 11px; }
  .hero-photo > figcaption { padding-inline: 9px; }
}

/* Company profile, document places and the object register. */
.corporate-section { margin-top: 60px; padding-top: 46px; padding-bottom: 6px; border-top: 1px solid var(--line); }
.corporate-section h2 { font-size: clamp(28px, 3vw, 43px); font-weight: 500; letter-spacing: -.035em; line-height: 1.2; margin-bottom: 32px; }
.company-section { display: grid; grid-template-columns: 1.1fr 1fr; gap: 90px; align-items: start; }
.company-story p { max-width: 57ch; font-size: 14px; line-height: 1.85; color: var(--muted); }
.company-story p + p { margin-top: 17px; }
.company-facts { margin-top: 4px; }
.company-facts > div { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; padding: 18px 0; border-bottom: 1px solid var(--line); font-size: 12px; }
.company-facts dt { color: var(--muted); }
.company-facts dd { margin: 0; }
.fill-field { color: var(--muted); font-weight: 400; }
.work-list { display: grid; grid-template-columns: 1fr 1fr; gap: 0 68px; }
.work-list article { display: grid; grid-template-columns: minmax(130px, .85fr) 1fr; gap: 24px; padding: 26px 0; border-top: 1px solid var(--line); }
.work-list h3 { font-size: 17px; font-weight: 600; letter-spacing: -.025em; line-height: 1.35; }
.work-list p { color: var(--muted); font-size: 12px; line-height: 1.8; }
.project-heading { display: flex; justify-content: space-between; gap: 30px; align-items: baseline; }
.project-heading p { font-size: 13px; white-space: nowrap; }
.project-heading .fill-field { font-size: 22px; margin-right: 8px; }
.project-period { display: flex; gap: 18px; font-size: 11px; color: var(--muted); margin: -4px 0 24px; }
.project-register { border: 1px solid var(--line); border-radius: 12px; overflow-x: auto; }
.project-register table { width: 100%; min-width: 640px; border-collapse: collapse; text-align: left; }
.project-register th { color: var(--muted); font-size: 11px; font-weight: 500; padding: 17px 22px; background: #efefe9; }
.project-register td { padding: 24px 22px; font-size: 12px; color: var(--muted); border-top: 1px solid var(--line); }
.project-register td:first-child { width: 38%; }
.project-register td small { display: block; font-size: 10px; margin-top: 8px; }
.document-groups { display: grid; grid-template-columns: 1fr 1fr; gap: 54px; }
.document-group > h3 { font-size: 17px; font-weight: 500; margin-bottom: 22px; }
.document-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.document-slot { margin: 0; min-width: 0; }
.document-paper { position: relative; aspect-ratio: .74; display: flex; flex-direction: column; justify-content: space-between; padding: 28px 24px; border: 1px solid #c9cfc7; border-radius: 6px; background: #fcfcf8; }
.document-paper > span { max-width: 17ch; font-size: 11px; line-height: 1.55; color: var(--muted); }
.document-paper svg { width: 100%; fill: none; stroke: #d2d7cf; stroke-width: 1; }
.document-slot figcaption { margin-top: 15px; font-size: 12px; color: var(--muted); line-height: 1.6; }
.document-slot figcaption small { display: block; margin-top: 4px; font-size: 10px; }
.office-section { padding-bottom: 80px; }
.office-layout { display: grid; grid-template-columns: .8fr 1.2fr; gap: 54px; align-items: stretch; }
.office-copy { display: flex; flex-direction: column; align-items: flex-start; padding-top: 12px; }
.office-copy address { font-style: normal; }
.office-copy address strong { font-size: 24px; font-weight: 500; letter-spacing: -.025em; }
.office-copy address p { font-size: 15px; margin-top: 10px; }
.office-copy dl { margin: 32px 0; }
.office-copy dt { font-size: 11px; color: var(--muted); margin-bottom: 10px; }
.office-copy dd { margin: 0; font-size: 20px; font-variant-numeric: tabular-nums; }
.map-link { display: inline-flex; gap: 12px; align-items: center; font-size: 12px; padding-block: 8px; margin-top: auto; border-bottom: 1px solid var(--line); }
.map-link .icon { width: 16px; height: 16px; }
.office-map { min-width: 0; overflow: hidden; border: 1px solid var(--line); border-radius: 14px; background: #e9ece5; }
.office-map iframe { display: block; width: 100%; height: 390px; border: 0; }
.inner-page .corporate-section { margin-top: 0; margin-bottom: 56px; }
@media (max-width: 1100px) {
 .company-section { gap: 50px; }
 .work-list { gap: 0 36px; }
 .work-list article { display: block; }
 .work-list h3 { margin-bottom: 12px; }
 .document-groups { gap: 30px; }
 .document-paper { padding: 22px 18px; }
}
@media (max-width: 760px) {
 .corporate-section { margin-top: 42px; padding-top: 30px; }
 .corporate-section h2 { font-size: 29px; margin-bottom: 25px; }
 .company-section, .office-layout { grid-template-columns: 1fr; gap: 30px; }
 .company-story p { font-size: 12px; }
 .company-facts { margin-top: 0; }
 .company-facts > div { padding: 15px 0; font-size: 11px; }
 .work-list { gap: 0 27px; }
 .work-list article { padding: 21px 0; }
 .work-list h3 { font-size: 15px; }
 .work-list p { font-size: 11px; }
 .project-heading { display: block; }
 .project-heading h2 { margin-bottom: 17px; }
 .project-heading p { margin-bottom: 18px; font-size: 12px; }
 .project-heading .fill-field { font-size: 18px; }
 .project-period { margin-bottom: 20px; }
 .project-register th, .project-register td { padding-inline: 17px; }
 .document-groups { grid-template-columns: 1fr; gap: 35px; }
 .document-grid { gap: 14px; }
 .document-paper { padding: 22px 18px; }
 .document-slot figcaption { font-size: 11px; }
 .office-copy { padding: 0; }
 .office-copy address strong { font-size: 23px; }
 .office-copy address p { font-size: 13px; }
 .office-copy dl { margin-block: 25px; }
 .map-link { margin-top: 0; }
 .office-map iframe { height: 340px; }
 .office-section { padding-bottom: 48px; }
 .inner-page .corporate-section { margin-bottom: 35px; }
}
@media (max-width: 400px) { .work-list { grid-template-columns: 1fr; } .document-paper > span { font-size: 10px; } }

/* The joined lower panel carries the same page navigation on every route. */
.header-contacts { margin-left: auto; }
.section-nav { justify-content: center; }
.section-nav-links { width: 100%; justify-content: center; gap: 44px; }
.section-nav a { font-size: 12px; }
html:has(.inner-page) { scroll-padding-top: calc(var(--header-height,76px) + 80px); }
.hero-facts { margin-bottom: 23px; }
.hero-facts > div { display: grid; grid-template-columns: 132px 1fr; gap: 20px; padding: 12px 0; font-size: 11px; line-height: 1.6; border-bottom: 1px solid var(--line); }
.hero-facts > div:first-child { padding-top: 0; }
.hero-facts > div:last-child { border-bottom: 0; }
.hero-facts dt { color: var(--muted); }
.hero-facts dd { margin: 0; max-width: 31ch; }
.site-footer { padding-block: 57px 24px; }
.footer-grid { display: grid; grid-template-columns: 1.45fr 1fr 1.2fr; gap: 75px; padding-bottom: 45px; }
.footer-brand-block > p { max-width: 32ch; margin-top: 25px; color: #c7d0c9; font-size: 12px; line-height: 1.8; }
.footer-region { display: block; margin-top: 24px; font-size: 10px; color: #c7d0c9; }
.footer-grid h2 { font-size: 12px; font-weight: 500; margin-bottom: 23px; color: #c7d0c9; }
.footer-navigation { display: flex; flex-direction: column; align-items: flex-start; }
.footer-navigation > a { font-size: 12px; line-height: 1.6; margin-bottom: 12px; }
.footer-grid a:hover { text-decoration: underline; text-underline-offset: 5px; }
.footer-office address { font-style: normal; font-size: 13px; line-height: 1.8; }
.footer-phone { font-size: 21px; margin-top: 18px; font-variant-numeric: tabular-nums; letter-spacing: -.015em; }
.footer-office > a { display: inline-flex; align-items: center; gap: 12px; margin-top: 18px; font-size: 11px; color: #c7d0c9; }
.footer-office > a .icon { width: 14px; height: 14px; }
.footer-bottom { display: grid; grid-template-columns: 1fr auto 1fr; gap: 28px; }
.footer-bottom .back-top { justify-self: end; width: auto; }
.footer-bottom .footer-links { grid-row: auto; grid-column: auto; }
.footer-links button { font-size: 10px; }
@media (max-width: 1100px) {
 .footer-grid { gap: 38px; }
 .footer-phone { font-size: 18px; }
 .hero-facts > div { grid-template-columns: 110px 1fr; gap: 15px; font-size: 10px; }
}
@media (max-width: 760px) {
 .section-nav-links { gap: 26px; }
 .section-nav a { font-size: 11px; }
 .hero-facts > div { grid-template-columns: 105px 1fr; font-size: 10px; }
 .hero-profile { padding-top: 19px; }
 .footer-grid { grid-template-columns: 1fr 1fr; gap: 35px; padding-bottom: 29px; }
 .footer-brand-block { grid-column: span 2; }
 .footer-brand-block > p { max-width: 42ch; font-size: 11px; margin-top: 20px; }
 .footer-region { margin-top: 14px; }
 .footer-grid h2 { margin-bottom: 17px; }
 .footer-navigation > a { font-size: 11px; }
 .footer-office address { font-size: 11px; }
 .footer-phone { font-size: 15px; }
 .footer-bottom { grid-template-columns: 1fr auto; gap: 13px; }
 .footer-bottom .footer-links { grid-row: 2; grid-column: span 2; gap: 23px; }
 .footer-bottom .back-top { grid-row: 1; grid-column: 2; }
 .site-footer { padding-block: 36px 20px; }
}
@media (max-width: 680px) {
 .header-contacts { margin-left: 0; }
 .section-nav-links { justify-content: center; gap: 25px; }
 .section-nav a { font-size: 10px; }
}
@media (max-width: 400px) {
 .section-nav-links { gap: 18px; }
 .footer-grid { grid-template-columns: 1fr; gap: 26px; }
 .footer-brand-block { grid-column: auto; }
 .footer-navigation { display: grid; grid-template-columns: 1fr 1fr; gap: 0 20px; align-items: start; }
 .footer-navigation h2 { grid-column: span 2; }
 .footer-phone { font-size: 19px; }
}
