@font-face{font-family: "Zhikharev";src: url("assets/fonts/zhikharev-cyr.woff2") format("woff2");font-style: normal;font-weight: 400;font-display: swap;unicode-range: U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family: "Inter";src: url("assets/fonts/inter-cyr.woff2") format("woff2");font-style: normal;font-weight: 100 900;font-display: swap;unicode-range: U+0020,U+00A0,U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family: "Inter";src: url("assets/fonts/inter-lat.woff2") format("woff2");font-style: normal;font-weight: 100 900;font-display: swap;unicode-range: U+0000-001F,U+0021-009F,U+00A1-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family: "Montserrat";src: url("assets/fonts/montserrat-cyr.woff2") format("woff2");font-style: normal;font-weight: 100 900;font-display: swap;unicode-range: U+0020,U+00A0,U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family: "Montserrat";src: url("assets/fonts/montserrat-lat.woff2") format("woff2");font-style: normal;font-weight: 100 900;font-display: swap;unicode-range: U+0000-001F,U+0021-009F,U+00A1-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,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"),local("ArialMT"),local("Helvetica"),local("Roboto");size-adjust: 110.7%;ascent-override: 87.4%;descent-override: 22.7%;line-gap-override: 0%}:root{--accent: #0d726f;--accent-bright: #14918D;--accent-text: #0d726f;--accent-dark: #095450;--btn: #0d726f;--btn-hover: #095450;--ink: #0A0B0D;--text: #555566;--muted: #70707e;--line: #e5e5e8;--soft: #f7f7f8;--dark: #0A0B0D;--card-radius: 20px;--small-radius: 8px;--shell: 1296px;--shadow: 0 8px 30px rgba(27,27,35,0.1);--hov-tint: rgba(13,114,111,.07);--hov-light: #f1f4f4;--hov-transition: background-color 160ms ease,border-color 160ms ease,color 160ms ease}*,*::before,*::after{box-sizing: border-box}html{scroll-behavior: smooth}html:has(main > .hero){background: var(--ink)}body{margin: 0;color: var(--text);background: #fff;font-family: "Montserrat","Montserrat Fallback",Arial,sans-serif;font-size: 16px;line-height: 1.5;-webkit-font-smoothing: antialiased}body.is-locked{overflow: hidden}button,input,select{font: inherit}button,a{-webkit-tap-highlight-color: transparent}button{cursor: pointer}a{color: inherit;text-decoration: none}img{display: block;max-width: 100%}h1,h2,h3,p{margin-top: 0}h1,h2,h3{color: var(--ink);font-family: "Montserrat","Montserrat Fallback",Arial,sans-serif;font-weight: 600}[hidden]{display: none !important}.sr-only{position: absolute;width: 1px;height: 1px;overflow: hidden;padding: 0;border: 0;margin: -1px;clip: rect(0,0,0,0);white-space: nowrap}.shell{width: min(calc(100% - 64px),var(--shell));margin-inline: auto}.button{display: inline-flex;min-height: 52px;align-items: center;justify-content: center;padding: 0 26px;border: 1px solid var(--btn);border-radius: var(--small-radius);color: #fff;background: var(--btn);font-weight: 700;line-height: 1;transition: var(--hov-transition)}.button:hover{border-color: var(--btn-hover);background: var(--btn-hover)}.button--small{min-height: 40px;padding-inline: 18px;font-size: 14px}.button--light{border-color: #fff;color: var(--accent-text);background: #fff}.button--light:hover{border-color: var(--accent-text);color: var(--accent-dark);background: var(--hov-light)}.button--outline,.button--ghost{border-color: var(--line);color: var(--ink);background: #fff}.button--outline:hover,.button--ghost:hover{border-color: var(--accent-text);color: var(--accent-text);background: var(--hov-tint)}.button--wide{width: 100%}.icon-button{display: inline-grid;width: 40px;height: 40px;place-items: center;padding: 0;border: 0;color: var(--ink);background: transparent;font-size: 30px}.brand{display: inline-flex;align-items: flex-end;gap: 9px;color: #fff;font-family: "Montserrat","Montserrat Fallback",Arial,sans-serif;font-size: 31px;font-weight: 600;letter-spacing: -1.7px;line-height: 1;white-space: nowrap}.brand small{padding-bottom: 2px;font-family: "Montserrat","Montserrat Fallback",Arial,sans-serif;font-size: 9px;font-weight: 700;letter-spacing: 2px}.brand__accent,.nav-brand span{color: var(--accent)}.brand--dark{color: var(--ink)}.site-header{position: absolute;z-index: 30;top: 0;right: 0;left: 0}.topline{display: flex;height: 80px;align-items: center;gap: 28px;color: #fff}.topline__tagline{margin: 0;color: rgba(255,255,255,0.62);font-size: 13px;line-height: 1.35}.topline__actions{display: flex;align-items: center;gap: 22px;margin-left: auto;font-size: 14px;font-weight: 500}.topline__actions > a:first-of-type{display: grid;width: 30px;height: 30px;place-items: center;border-radius: 50%;background: #29a9ea;font-size: 11px;font-weight: 700}.nav-card{position: relative;display: flex;height: 64px;align-items: center;gap: 24px;padding: 0 24px;border-radius: 10px;background: #fff;box-shadow: var(--shadow);transition: border-radius 180ms ease,width 180ms ease,box-shadow 180ms ease}.nav-card__menu{width: 24px;height: 24px;gap: 4px}.nav-card__menu span{display: block;width: 18px;height: 2px;border-radius: 2px;background: currentColor}.nav-brand{display: none;color: var(--ink);font-family: "Montserrat","Montserrat Fallback",Arial,sans-serif;font-size: 24px;font-weight: 700;letter-spacing: -1px}.desktop-nav{display: flex;min-width: 0;flex: 1;align-items: center;justify-content: space-around;gap: 22px}.desktop-nav a{color: var(--ink);font-weight: 500;white-space: nowrap;transition: color 160ms ease}.desktop-nav a:hover{color: var(--accent)}.nav-card__search{width: 30px;height: 30px}.search-icon{position: relative;display: block;width: 16px;height: 16px;border: 2px solid currentColor;border-radius: 50%}.search-icon::after{position: absolute;right: -5px;bottom: -3px;width: 7px;height: 2px;background: currentColor;content: "";transform: rotate(45deg)}.nav-card__cta{display: none}.nav-search{position: absolute;z-index: 4;inset: 0;padding: 8px;border-radius: inherit;background: #fff}.nav-search form{display: grid;height: 100%;grid-template-columns: 1fr auto auto;align-items: center;gap: 8px}.nav-search label{margin: 0}.nav-search input{height: 46px}.nav-search__list{position: absolute;z-index: 5;top: calc(100% - 4px);right: 8px;left: 8px;max-height: 60vh;margin: 0;padding: 6px;overflow-y: auto;list-style: none;border-radius: var(--small-radius);background: #fff;box-shadow: 0 8px 18px -10px rgba(10,11,13,.18),0 22px 44px -26px rgba(10,11,13,.32)}.nav-search__list a{display: flex;align-items: baseline;justify-content: space-between;gap: 16px;padding: 11px 13px;border-radius: 9px;color: var(--ink);text-decoration: none}.nav-search__list b{font-weight: 500}.nav-search__list i{flex: 0 0 auto;color: var(--muted);font-size: 12.5px;font-style: normal}.nav-search__list li.is-on a,.nav-search__list a:hover,.nav-search__list a:focus-visible{background: var(--soft)}.nav-search__none{padding: 13px;color: var(--muted)}@media (max-width: 760px){.nav-search__list i{display: none}}.site-header.is-sticky .topline{display: none}.site-header.is-sticky .nav-card{position: fixed;top: 0;right: 0;left: 0;width: 100%;max-width: none;height: 64px;border-radius: 0;box-shadow: 0 2px 16px rgba(20,20,25,0.1)}.site-header.is-sticky .nav-brand,.site-header.is-sticky .nav-card__cta{display: inline-flex}.hero{position: relative;isolation: isolate;height: 100vh;height: 100svh;min-height: 640px;overflow: hidden;background: #151515}.hero__video{position: absolute;inset: 0;z-index: 0;width: 100%;height: 100%;object-fit: cover;object-position: center;pointer-events: none;transition: opacity 400ms ease}.hero-slide{position: absolute;inset: 0;display: grid;align-items: center;opacity: 0;pointer-events: none;transition: opacity 600ms ease}.hero-slide::before{content: none}.hero-slide.is-active{z-index: 2;opacity: 1;pointer-events: auto}.hero-slide.is-active::before{transform: scale(1.06)}.hero-slide__overlay{position: absolute;inset: 0;background: linear-gradient(100deg,rgba(6,8,10,.86) 0%,rgba(6,8,10,.62) 30%,rgba(6,8,10,.22) 58%,rgba(6,8,10,0) 82%),linear-gradient(to top,rgba(6,8,10,.72) 0%,rgba(6,8,10,.18) 22%,rgba(6,8,10,0) 46%)}.hero-slide__content{position: relative;z-index: 2;padding-top: 136px;color: #fff}.eyebrow,.section-kicker{margin-bottom: 20px;color: var(--accent);font-size: 13px;font-weight: 700;letter-spacing: 0.12em}.hero h1,.hero h2{max-width: 18ch;margin-bottom: 20px;color: #fff;font-size: clamp(38px,4.4vw,64px);line-height: 1.06;letter-spacing: -0.03em;text-wrap: balance}.hero-slide__lead{max-width: 48ch;margin-bottom: 34px;color: rgba(255,255,255,0.78);font-size: 17.5px;line-height: 1.6}.hero-slide__buttons{display: flex;gap: 12px}.hero-controls{position: absolute;z-index: 5;right: 0;bottom: 54px;left: 0;display: flex;align-items: center;justify-content: space-between}.hero-dots{display: flex;gap: 8px;margin-left: 42%}.hero-dot{width: 34px;height: 3px;padding: 0;border: 0;background: rgba(255,255,255,0.28)}.hero-dot.is-active{background: var(--accent)}.hero-arrows{display: flex;gap: 8px}.square-button{display: grid;width: 48px;height: 48px;place-items: center;border: 0;border-radius: var(--small-radius);color: var(--ink);background: #fff;font-size: 20px;transition: var(--hov-transition)}.square-button:hover{color: var(--accent-text);background: var(--hov-tint)}.section{padding: 104px 0}.section--soft{background: var(--soft)}.section-heading{display: grid;grid-template-columns: 1fr 1fr;align-items: start;gap: 40px;margin-bottom: 48px}.section-heading h2{margin-bottom: 0;font-size: clamp(34px,3.1vw,44px);line-height: 1.18;letter-spacing: -0.025em}.section-heading > p,.section-heading > div > p:last-child{max-width: 620px;margin: 4px 0 0 auto;font-size: 18px;line-height: 1.55}.section-heading--compact > div > .section-kicker{margin: 0 0 14px;font-size: 13px;line-height: 1}.section-heading--compact > div > h2{margin-bottom: 0}.section-heading--single{grid-template-columns: 1fr}.heading-arrow{display: inline-block;margin-left: 8px;color: var(--ink);font-family: "Montserrat","Montserrat Fallback",Arial,sans-serif;font-weight: 400}.services{padding-top: 80px}.services-grid{display: grid;grid-template-columns: repeat(4,1fr);gap: 16px}.media-card{position: relative;display: flex;min-height: 306px;flex-direction: column;justify-content: flex-end;overflow: hidden;padding: 28px 32px;border-radius: var(--card-radius);color: #fff;background: #252525}.media-card::before,.project-card::before{position: absolute;inset: 0;background-image: linear-gradient(180deg,rgba(0,0,0,0.05) 0%,rgba(0,0,0,0.18) 38%,rgba(0,0,0,0.62) 72%,rgba(0,0,0,0.88) 100%),var(--card-image);background-position: center;background-size: cover;content: "";transition: transform 450ms ease}.media-card:hover::before,.project-card:hover::before{transform: scale(1.035)}.media-card--wide{grid-column: span 2}.media-card__meta,.media-card strong{position: relative;z-index: 1}.media-card__meta{margin-bottom: 6px;color: rgba(255,255,255,0.7);font-size: 14px}.media-card strong{max-width: 520px;font-family: "Montserrat","Montserrat Fallback",Arial,sans-serif;font-size: 24px;font-weight: 700;line-height: 1.24}.projects-grid{display: grid;grid-template-columns: 2fr 1fr 1fr;gap: 16px}.project-card{position: relative;min-height: 512px;overflow: hidden;border-radius: var(--card-radius);background: #262626}.project-card > div{position: absolute;z-index: 1;right: 0;bottom: 0;left: 0;padding: 28px 32px}.project-card span{color: rgba(255,255,255,0.7);font-size: 14px}.project-card h3{margin: 6px 0 0;color: #fff;font-size: 22px;line-height: 1.32}.project-card--featured h3{max-width: 540px;font-size: 25px}.centered-action{display: flex;justify-content: center;margin-top: 32px}.trust-strip{padding: 60px 0;border-top: 1px solid var(--line);border-bottom: 1px solid var(--line);background: #fff}.trust-strip__grid{display: grid;grid-template-columns: repeat(3,1fr);gap: 36px}.trust-item{display: flex;align-items: center;gap: 20px}.trust-item b{display: grid;width: 54px;height: 54px;flex: 0 0 auto;place-items: center;border: 2px solid var(--accent);border-radius: 50%;color: var(--accent);font-family: "Montserrat","Montserrat Fallback",Arial,sans-serif}.trust-item p{display: flex;margin: 0;flex-direction: column;gap: 4px}.trust-item strong{color: var(--ink)}.trust-item span{color: var(--muted);font-size: 14px}.tabs{display: flex;gap: 8px}.tab{min-height: 40px;padding: 0 20px;border: 0;border-radius: var(--small-radius);color: var(--text);background: #f4f4f6;font-weight: 500}.tab.is-active,.tab:hover{color: #fff;background: var(--accent)}.review-window{position: relative;overflow: hidden;border: 1px solid var(--line);border-radius: var(--card-radius);background: #fff}.review-track{display: flex;transition: transform 420ms ease}.review-card{min-width: calc(100% / 3);padding: 44px 40px 48px;border-right: 1px solid var(--line)}.review-card > span{color: var(--muted);font-size: 14px}.review-card h3{margin: 6px 0 12px;font-size: 20px}.stars{margin-bottom: 24px;color: var(--accent);letter-spacing: 4px}.review-card p{margin-bottom: 0;font-size: 17px;line-height: 1.6}.slider-button{position: absolute;z-index: 3;top: 50%;display: grid;width: 44px;height: 44px;place-items: center;border: 1px solid var(--line);border-radius: var(--small-radius);color: var(--ink);background: #fff;box-shadow: 0 8px 24px rgba(20,20,25,0.08);transform: translateY(-50%)}.slider-button--left{left: 12px}.slider-button--right{right: 12px}.process-grid{display: grid;grid-template-columns: repeat(4,1fr);gap: 16px}.process-card{display: grid;min-height: 430px;grid-template-rows: auto auto 1fr auto;padding: 34px 32px;border: 1px solid var(--line);border-radius: var(--card-radius)}.process-card h3{margin-bottom: 16px;font-size: 22px;line-height: 1.35}.process-card p{color: var(--muted)}.process-card b{align-self: end;padding-top: 44px;border-top: 1px solid var(--line);color: var(--accent);font-family: "Montserrat","Montserrat Fallback",Arial,sans-serif;font-size: 64px;font-weight: 600;line-height: 1}.process-card span{margin-top: 8px;color: var(--muted);font-size: 14px}.article-grid{display: grid;grid-template-columns: repeat(4,1fr);gap: 16px}.article-card{overflow: hidden;border: 1px solid var(--line);border-radius: var(--card-radius);background: #fff}.article-card img{width: 100%;height: auto;aspect-ratio: 4 / 3;object-fit: cover;transition: transform 400ms ease}.article-card:hover img{transform: scale(1.035)}.article-card h3{margin: 0;padding: 24px;font-size: 18px;line-height: 1.45}.contact-map{position: relative;min-height: 560px;overflow: hidden;border-radius: var(--card-radius);background-color: #f1f1f2;background-image: linear-gradient(32deg,transparent 46%,rgba(255,255,255,0.9) 47%,rgba(255,255,255,0.9) 49%,transparent 50%),linear-gradient(-18deg,transparent 44%,rgba(255,255,255,0.84) 45%,rgba(255,255,255,0.84) 47%,transparent 48%),repeating-linear-gradient(90deg,transparent 0 92px,rgba(255,255,255,0.65) 93px 96px),repeating-linear-gradient(0deg,transparent 0 76px,rgba(255,255,255,0.65) 77px 80px)}.contact-map__panel{position: absolute;z-index: 2;top: 36px;bottom: 36px;left: 36px;width: min(420px,calc(100% - 72px));padding: 40px;border-radius: 14px;background: #fff;box-shadow: var(--shadow)}.contact-map__label{margin-bottom: 12px;color: var(--accent);font-size: 13px;font-weight: 700;letter-spacing: 0.1em;text-transform: uppercase}.contact-map__panel h3{margin-bottom: 24px;font-size: 30px;line-height: 1.3}.contact-map__panel > a{display: block;margin-bottom: 8px;color: var(--ink);font-size: 24px;font-weight: 700}.contact-map__panel .button{margin-top: 24px}.contact-map__pin{position: absolute;top: 46%;left: 70%;display: grid;width: 92px;height: 92px;place-items: center;border: 12px solid rgba(255,109,0,0.2);border-radius: 50%;background: var(--accent);box-shadow: 0 0 0 18px rgba(255,109,0,0.1);transform: translate(-50%,-50%)}.contact-map__pin span{color: #fff;font-size: 12px;font-weight: 700}.lead-section{padding-top: 32px}.lead-card{display: grid;overflow: hidden;grid-template-columns: 1fr 1fr;border-radius: var(--card-radius);background: var(--soft)}.lead-card__image{min-height: 620px;background-image: url("assets/images/form.jpg");background-position: center;background-size: cover}.lead-form{padding: 56px 64px}.lead-form h2,.modal h2{margin-bottom: 20px;font-size: 40px;line-height: 1.2}.lead-form > p:not(.section-kicker),.modal > p:not(.section-kicker){margin-bottom: 30px}label{display: flex;margin-bottom: 18px;flex-direction: column;gap: 8px;color: var(--text);font-size: 14px}input,select{width: 100%;height: 52px;padding: 0 16px;border: 1px solid var(--line);border-radius: var(--small-radius);outline: none;color: var(--ink);background: #fff;transition: border-color 160ms ease,box-shadow 160ms ease}input:focus,select:focus{border-color: var(--accent);box-shadow: 0 0 0 3px rgba(255,109,0,0.12)}.checkbox{display: grid;grid-template-columns: 20px 1fr;align-items: start;gap: 10px}.checkbox input{width: 20px;height: 20px;margin: 0;accent-color: var(--accent)}.form-status{display: block;min-height: 24px;margin-top: 16px;color: #267a3e;font-size: 14px}label.has-error,.modal label.has-error:not(.checkbox){margin-bottom: 0}input[aria-invalid="true"]{border-color: #b00020}input[aria-invalid="true"]:focus{box-shadow: 0 0 0 3px rgba(176,0,32,0.12)}.field-error{display: block;margin: 6px 0 14px;color: #b00020;font-size: 14px;line-height: 1.4}.footer{padding: 48px 0 20px;color: #b7b7bd;background: var(--dark)}.footer__grid{display: grid;grid-template-columns: 1.4fr 1fr 1.35fr 1.25fr;gap: 16px}.footer__grid > div{min-height: 300px;padding: 32px;border-radius: var(--card-radius);background: #282828}.footer__grid h3{margin-bottom: 22px;color: #fff;font-family: "Montserrat","Montserrat Fallback",Arial,sans-serif;font-size: 17px;font-weight: 700}.footer__grid a:not(.brand),.footer__grid p{display: block;margin-bottom: 12px;font-size: 14px}.footer__grid a:hover{color: var(--accent)}.footer__brand .brand{margin-bottom: 28px}.footer__contacts > a:first-of-type{color: #fff;font-size: 20px;font-weight: 700}.footer__bottom{display: flex;justify-content: space-between;padding-top: 20px;color: #77777d;font-size: 13px}.floating-contact{position: fixed;z-index: 20;right: 0;top: 50%;translate: 0 -50%;display: inline-flex;align-items: center;justify-content: center;padding: 22px 11px;border: 1px solid rgba(255,255,255,.18);border-right: 0;border-radius: 10px 0 0 10px;color: #fff;background: rgba(12,14,16,.66);backdrop-filter: blur(10px);font: inherit;font-size: 12.5px;font-weight: 600;letter-spacing: .06em;cursor: pointer;opacity: 0;visibility: hidden;transform: translateX(10px);transition: opacity 260ms ease,transform 260ms ease,background 160ms ease,visibility 260ms}.floating-contact.is-on{opacity: 1;visibility: visible;transform: translateX(0)}.floating-contact:hover{border-color: transparent;background: var(--accent)}.floating-contact__label{writing-mode: vertical-rl;rotate: 180deg}.floating-contact__icon{display: none;width: 20px;height: 20px}@media (prefers-reduced-motion: reduce){.floating-contact{transition: opacity 160ms ease,visibility 160ms}}@media (max-width: 1399px){.floating-contact{top: auto;right: 16px;bottom: 18px;translate: 0 0;width: 46px;height: 46px;padding: 0;border: 0;border-radius: 50%;background: var(--accent);box-shadow: 0 6px 20px -6px rgba(10,11,13,.45)}.floating-contact__label{display: none}.floating-contact__icon{display: block}}.contact-sheet{width: 300px;max-width: calc(100% - 32px);margin: 0;inset: auto 16px 76px auto;padding: 18px 20px 6px;border: 0;border-radius: var(--card-radius);color: var(--ink);background: #fff;box-shadow: 0 30px 90px rgba(0,0,0,0.3)}.contact-sheet::backdrop{background: rgba(18,18,22,0.35)}.contact-sheet__title{margin: 0 40px 8px 0;color: var(--muted);font-size: 12.5px;font-weight: 600;letter-spacing: .06em;text-transform: uppercase}.contact-sheet__close{position: absolute;top: 9px;right: 9px;display: grid;place-items: center;width: 36px;height: 36px;border: 0;border-radius: 50%;color: var(--ink);background: transparent}.contact-sheet__close:hover{background: var(--soft)}.contact-sheet__row{display: flex;flex-direction: column;gap: 2px;width: 100%;padding: 13px 0;border: 0;border-top: 1px solid var(--line);color: var(--ink);background: none;text-align: left}.contact-sheet__row b{font-size: 16px;font-weight: 600;transition: var(--hov-transition)}.contact-sheet__row span{color: var(--muted);font-size: 14px}.contact-sheet__row:hover b{color: var(--accent)}@media (min-width: 1400px){.contact-sheet{inset: 50% 58px auto auto;translate: 0 -50%}}@media (max-width: 600px){.contact-sheet{width: 100%;max-width: 100%;inset: auto 0 0 0;padding: 20px 20px calc(6px + env(safe-area-inset-bottom,0px));border-radius: 20px 20px 0 0}}.drawer-backdrop{position: fixed;z-index: 90;inset: 0;background: rgba(18,18,22,0.62);backdrop-filter: blur(2px)}.drawer{position: fixed;z-index: 100;top: 0;bottom: 0;left: 0;width: min(360px,88vw);overflow-y: auto;padding: 28px 32px 40px;background: #fff;box-shadow: 16px 0 45px rgba(0,0,0,0.18);transform: translateX(-105%);transition: transform 300ms ease}.drawer.is-open{transform: translateX(0)}.drawer__head{display: flex;align-items: center;justify-content: space-between;margin-bottom: 30px}.drawer__nav{display: flex;margin-bottom: 24px;flex-direction: column}.drawer__nav a{display: flex;min-height: 48px;align-items: center;justify-content: space-between;border-bottom: 1px solid var(--line);color: var(--ink);font-weight: 500}.drawer__nav a:hover{color: var(--accent)}.drawer__contacts{margin-top: 30px;padding-top: 24px;border-top: 1px solid var(--line);font-size: 14px}.drawer__contacts a{display: block;margin-bottom: 12px;color: var(--ink);font-size: 20px;font-weight: 700}.modal{width: min(520px,calc(100% - 32px));padding: 44px;border: 0;border-radius: var(--card-radius);box-shadow: 0 30px 90px rgba(0,0,0,0.3)}.modal::backdrop{background: rgba(18,18,22,0.7);backdrop-filter: blur(4px)}.modal__close{position: absolute;top: 14px;right: 18px;width: 38px;height: 38px;border: 0;border-radius: 50%;color: var(--ink);background: var(--soft);font-size: 28px}.modal{max-height: min(88vh,900px);overflow-y: auto}.modal h2{margin-bottom: 12px;font-size: 30px}.modal > p:not(.section-kicker){margin-bottom: 22px}.modal__about{display: flex;margin-bottom: 22px;padding: 12px 16px;gap: 10px;align-items: baseline;flex-wrap: wrap;border-radius: var(--small-radius);background: var(--hov-tint);color: var(--ink);font-size: 15px;font-weight: 600;line-height: 1.35}.modal__about[hidden]{display: none}.modal__about b{font-weight: 700}.modal__about span{color: var(--muted);font-size: 12px;font-weight: 600;letter-spacing: 0.08em;text-transform: uppercase}textarea{width: 100%;min-height: 92px;padding: 13px 16px;border: 1px solid var(--line);border-radius: var(--small-radius);outline: none;color: var(--ink);background: #fff;font: inherit;font-size: 15px;resize: vertical;transition: border-color 160ms ease,box-shadow 160ms ease}textarea:focus{border-color: var(--accent);box-shadow: 0 0 0 3px var(--hov-tint)}@media (max-width: 1180px){.desktop-nav{gap: 12px}.desktop-nav a{font-size: 14px}.topline__actions{gap: 14px}.article-grid{grid-template-columns: repeat(2,1fr)}.footer__grid{grid-template-columns: repeat(2,1fr)}}@media (max-width: 900px){.shell{width: min(calc(100% - 32px),var(--shell))}.site-header{position: absolute}.topline{height: 72px}.topline__tagline,.topline__actions > span,.topline__actions > a:first-of-type,.topline__actions .button,.desktop-nav,.nav-card__search{display: none}.topline__actions{margin-left: auto}.topline__actions > a:last-of-type{font-size: 13px}.brand{font-size: 24px}.brand small{display: none}.nav-card{height: 56px;justify-content: space-between;padding: 0 16px}.site-header.is-sticky .nav-brand{display: inline-flex}.site-header.is-sticky .nav-card__cta{display: none}.site-header.is-sticky .nav-card{height: 58px}.hero{min-height: 600px}.hero-slide__content{padding-top: 120px}.hero h1,.hero h2{max-width: 620px;font-size: 50px}.hero-slide__lead{max-width: 570px;font-size: 17px}.hero-dots{margin-left: 0}.section{padding: 80px 0}.section-heading{grid-template-columns: 1fr;gap: 18px;margin-bottom: 34px}.section-heading > p,.section-heading > div > p:last-child{margin-left: 0}.services-grid{grid-template-columns: repeat(2,1fr)}.media-card--wide{grid-column: auto}.projects-grid{grid-template-columns: 1fr 1fr}.project-card--featured{grid-column: 1 / -1}.trust-strip__grid{grid-template-columns: 1fr}.process-grid{grid-template-columns: repeat(2,1fr)}.review-card{min-width: 50%}.contact-map__pin{left: 78%}.lead-card{grid-template-columns: 1fr}.lead-card__image{min-height: 460px}}@media (max-width: 640px){.shell{width: min(calc(100% - 24px),var(--shell))}.topline{height: 64px}.topline__actions > a:last-of-type{display: none}.nav-card{width: calc(100% - 24px);margin-inline: 12px}.site-header.is-sticky .nav-card{width: 100%;margin: 0}.hero{min-height: 560px}.hero-slide::before{background-position: 62% center}.hero-slide__overlay{background: linear-gradient(180deg,rgba(4,5,6,0.32) 0%,rgba(4,5,6,0.8) 62%,rgba(4,5,6,0.94) 100%)}.hero-slide__content{display: flex;height: 100%;flex-direction: column;justify-content: flex-end;padding-top: 120px;padding-bottom: 72px}.eyebrow{margin-bottom: 12px}.hero h1,.hero h2{margin-bottom: 18px;font-size: clamp(27px,7.6vw,34px);line-height: 1.08;max-width: none;hyphens: none;overflow-wrap: normal}.hero-slide__lead{margin-bottom: 24px;font-size: 15px}.hero-slide__buttons{flex-direction: row;gap: 10px}.hero-slide__buttons .button{flex: 1 1 0;min-width: 0;padding-inline: 12px;font-size: 14.5px}.hero-controls{bottom: 24px}.hero-dot{width: 25px}.square-button{width: 42px;height: 42px}.section{padding: 64px 0}.section-heading h2{font-size: 32px}.section-heading > p,.section-heading > div > p:last-child{font-size: 16px}.services-grid,.projects-grid,.process-grid,.article-grid,.footer__grid{grid-template-columns: 1fr}.media-card,.project-card{min-height: 360px}.project-card--featured{grid-column: auto}.trust-strip{padding: 44px 0}.tabs{width: 100%;overflow-x: auto}.tab{flex: 0 0 auto}.article-grid{display: flex;overflow-x: auto;scroll-snap-type: x mandatory;scrollbar-width: none}.article-grid::-webkit-scrollbar{display: none}.article-card{min-width: 84vw;scroll-snap-align: start}.review-card{min-width: 100%;padding: 38px 32px}.process-card{min-height: 360px}.contact-map{min-height: 680px}.contact-map__panel{top: 18px;right: 18px;bottom: auto;left: 18px;width: auto;padding: 28px}.contact-map__panel h3{font-size: 25px}.contact-map__panel > a{font-size: 20px}.contact-map__pin{top: 78%;left: 50%}.lead-card{width: 100%;border-radius: 0}.lead-card__image{min-height: 360px}.lead-form{padding: 40px 24px}.lead-form h2{font-size: 32px}.modal h2{font-size: 24px}.modal > p:not(.section-kicker){margin-bottom: 18px}.modal label{margin-bottom: 14px}.footer__grid > div{min-height: auto}.footer__bottom{align-items: flex-start;flex-direction: column;gap: 8px}.modal{padding: 30px 20px 26px}}@media (prefers-reduced-motion: reduce){html{scroll-behavior: auto}*,*::before,*::after{scroll-behavior: auto !important;transition-duration: 0.01ms !important;animation-duration: 0.01ms !important;animation-iteration-count: 1 !important}}@view-transition{navigation: auto}::view-transition-group(root),::view-transition-old(root),::view-transition-new(root){animation-duration: .26s;animation-timing-function: cubic-bezier(.4,0,.2,1)}html.vt-in .hero::before{animation: none;opacity: 0}@media (prefers-reduced-motion: reduce){::view-transition-old(root),::view-transition-new(root){animation: none}}
