:root{--ink:#172028;--dark:#141b20;--blue:#70d0f2;--muted:#65717a;--line:#dce2e5}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:#fff}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}header{height:88px;padding:0 5%;display:flex;align-items:center;gap:38px;background:var(--dark);color:#fff;border-bottom:1px solid #ffffff20}.logo{display:flex;align-items:center;gap:13px;font-size:23px;font-weight:800;letter-spacing:.5px}.logo i{display:grid;gap:4px;transform:skew(-17deg);width:30px}.logo b{display:block;width:100%;height:6px;background:linear-gradient(90deg,#8ddbf4,#388ac0)}.logo b:nth-child(2){width:77%}nav{display:flex;gap:25px;margin-left:auto;font-size:13px;color:#d4dade}.header-contact{font-size:13px;border:1px solid #ffffff40;padding:13px 18px}.menu{display:none}a:hover{color:#329ac4}.hero{position:relative;background:var(--dark);min-height:640px;color:#fff;overflow:hidden}.hero-photo{position:absolute;right:0;top:0;width:59%;height:100%;background:linear-gradient(90deg,#141b20 0%,#141b2070 28%,#141b200d 75%),linear-gradient(0deg,#141b20bb,transparent 55%)}.hero-grid{position:absolute;inset:0;background-image:linear-gradient(#ffffff04 1px,transparent 1px),linear-gradient(90deg,#ffffff04 1px,transparent 1px);background-size:100px 100px;pointer-events:none}.hero-content{position:relative;padding:62px 5% 25px}.eyebrow,.section-label{font-size:11px;font-weight:600;letter-spacing:1.6px}.eyebrow{color:#afd5e5;display:flex;align-items:center;gap:10px}.eyebrow span{width:6px;height:6px;background:var(--blue)}h1{font-size:clamp(44px,5.5vw,80px);line-height:1.05;font-weight:500;letter-spacing:-3px;margin:47px 0 25px;max-width:850px}.hero-content>p{font-size:18px;line-height:1.6;color:#ccd4d9;max-width:460px}.actions{display:flex;gap:12px;margin-top:35px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;padding:18px 24px;font-size:14px;border:0;font-weight:600}.blue{background:var(--blue);color:#102431}.blue:hover{background:#a0e3fa;color:#102431}.outline{border:1px solid #ffffff55;color:#fff}.hero-bottom{display:flex;justify-content:space-between;max-width:600px;font-size:10px;letter-spacing:1px;color:#a1aeb6;margin-top:75px}.photo-caption{position:absolute;right:5%;bottom:25px;font-size:11px;line-height:1.7;color:#d8e0e5}.photo-caption span{font-size:9px;letter-spacing:1px;color:#9cabb4}.stats{padding:40px 5%;display:grid;grid-template-columns:repeat(3,1fr) .8fr;border-bottom:1px solid var(--line);gap:35px}.stats>div{border-right:1px solid var(--line);display:flex;flex-direction:column;gap:10px}.stats strong{font-size:45px;font-weight:500;letter-spacing:-2px}.stats small{font-size:25px}.stats .plus{color:#208caf}.stats div>span{font-size:12px;color:var(--muted)}.stats p{margin:0;font-size:18px;line-height:1.5}.section{padding:88px 5%}.section-label{color:#58717e;margin-bottom:30px}.section-heading{display:flex;justify-content:space-between;gap:50px;align-items:end;margin-bottom:40px}h2{font-size:clamp(30px,3.2vw,46px);line-height:1.15;letter-spacing:-1.5px;font-weight:500;margin:0}.section-heading>p{max-width:350px;font-size:14px;line-height:1.7;color:var(--muted);margin:0}.service-layout{display:grid;grid-template-columns:1fr 1.2fr;gap:65px}.service-image{position:relative;height:440px;overflow:hidden}.service-image img{width:100%;height:100%;object-fit:cover}.service-image span{position:absolute;bottom:0;left:0;right:0;padding:20px;color:white;background:#14232bd9;font-size:10px;letter-spacing:1.1px}details{border-top:1px solid var(--line)}details:last-child{border-bottom:1px solid var(--line)}summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:18px;padding:24px 0;font-size:19px}summary::-webkit-details-marker{display:none}summary>span{font-size:11px;color:#84949c}summary b{font-size:20px;margin-left:auto;font-weight:400;color:#3d91b4}details p{margin:0 30px 24px;color:var(--muted);font-size:14px;line-height:1.7;max-width:460px}.solutions{background:#f0f3f4}.solution-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.solution-grid img{width:100%;height:260px;object-fit:cover;filter:saturate(.75);transition:filter .3s}.solution-grid a:hover img{filter:saturate(1.1)}.solution-grid span{display:block;font-size:10px;color:var(--muted);letter-spacing:1px;margin:22px 0 12px}h3{font-size:24px;font-weight:500;line-height:1.25;margin:0}.solution-grid h3{position:relative;padding-right:30px}.solution-grid b{position:absolute;right:0;font-weight:400}.filters{display:flex;gap:8px}.filters button{border:1px solid var(--line);padding:11px 17px;background:white;font-size:12px}.filters .active{background:var(--ink);border-color:var(--ink);color:white}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.project{border:0;background:none;padding:0;text-align:left;color:inherit}.project>div{height:340px;position:relative;overflow:hidden}.project img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.project:hover img{transform:scale(1.035)}.project div>span{position:absolute;bottom:0;right:0;background:var(--blue);padding:18px 22px;font-size:24px}.project>p{font-size:10px;letter-spacing:1px;color:var(--muted);margin:22px 0 12px}.about{background:#17232b;color:white;display:grid;grid-template-columns:1fr 1fr;gap:75px;align-items:center}.about-photo img{width:100%;height:475px;object-fit:cover}.about .section-label{color:#8ec3dc}.about h2{font-size:56px}.about p{font-size:15px;line-height:1.7;color:#b5c4ce;max-width:450px}.text-link{display:inline-block;margin-top:20px;font-size:14px;color:var(--blue);border-bottom:1px solid #70d0f255;padding-bottom:12px}.tech-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.tech article{padding:35px;background:#eef3f6;overflow:hidden}.tech article>span{font-size:10px;letter-spacing:1px;color:var(--muted)}.tech h3{font-size:40px;letter-spacing:-1px;margin:25px 0 15px}.tech p{font-size:14px;line-height:1.7;max-width:390px;color:var(--muted)}.tech a{display:inline-block;margin-top:20px;font-size:13px}.circuit{position:relative;margin-top:35px;border-top:1px solid #aac5d4;padding:30px 0 5px;display:flex;gap:15px}.circuit i{width:40px;height:25px;border:1px solid #4fa9ce;transform:skew(-17deg)}.circuit b{font-size:9px;color:#587989;letter-spacing:1px;align-self:center;margin-left:auto}.faq{padding-top:20px}.faq-layout{display:grid;grid-template-columns:1fr 1.2fr;gap:65px}.faq summary{font-size:17px}.faq details p{margin-left:0}.contact{background:#141d24;color:#fff}.contact .section-label{color:#9dbaca}.contact-layout{display:grid;grid-template-columns:1.2fr 1fr;gap:90px}.contact h2{font-size:55px}.contact em{color:var(--blue);font-style:normal}.contact p{font-size:14px;line-height:1.7;color:#a9bac5;margin:24px 0}.phone{display:block;font-size:26px;margin-top:40px}.mail{display:inline-block;color:var(--blue);margin-top:15px;font-size:16px}label{display:block;font-size:11px;color:#b1c1cb;margin-bottom:20px}input,textarea{display:block;resize:vertical;width:100%;border:0;border-bottom:1px solid #ffffff35;border-radius:0;background:transparent;padding:12px 0;color:white;outline:none;font-size:15px}input:focus,textarea:focus{border-color:var(--blue)}form .button{width:100%}.contact .form-note{font-size:11px;margin:15px 0 0;color:#a9bac5}footer{padding:35px 5%;background:#10171c;color:#c0cbd2;display:flex;justify-content:space-between;align-items:center;gap:20px}footer .logo{font-size:19px}footer p,footer>span{font-size:11px;line-height:1.7}dialog{border:0;padding:45px;max-width:620px;width:90%;color:var(--ink)}dialog::backdrop{background:#06121dcc}dialog h2{font-size:32px}dialog p{line-height:1.8;color:var(--muted)}.close{float:right;background:none;border:0;font-size:30px}body:has(dialog[open]){overflow:hidden}[hidden]{display:none!important}:focus-visible{outline:2px solid #269ac6;outline-offset:5px}@media(min-width:1600px){body{max-width:1920px;margin:auto}.hero{min-height:720px}}@media(max-width:1000px){header{gap:20px}.logo{font-size:19px}nav{gap:15px;font-size:11px}.header-contact{display:none}.hero-photo{width:70%;opacity:.65}.section-heading{gap:25px}.service-layout,.faq-layout{gap:30px}.about{gap:35px}.contact-layout{gap:40px}.stats{gap:20px}.stats strong{font-size:36px}.solution-grid img{height:200px}}@media(max-width:700px){header{height:74px;justify-content:space-between}.menu{display:block;background:none;border:1px solid #ffffff40;color:white;font-size:22px;padding:5px 10px}nav{display:none;position:absolute;top:74px;left:0;right:0;padding:25px 5%;background:#17232b;z-index:10;font-size:17px;flex-direction:column;gap:23px}nav.open{display:flex}.hero{min-height:680px}.hero-photo{width:100%;background-position:60% center;opacity:.4}.hero-content{padding-top:38px}.eyebrow{font-size:9px;letter-spacing:1px}h1{font-size:47px;letter-spacing:-2px;margin-top:65px}.hero-content>p{font-size:16px;max-width:330px}.button{padding:17px 18px;gap:20px;font-size:12px}.hero-bottom{margin-top:65px;font-size:8px}.photo-caption{display:none}.stats{grid-template-columns:1fr 1fr;padding-top:30px;padding-bottom:30px;gap:30px}.stats>div{border:0}.stats strong{font-size:35px}.stats p{font-size:15px}.stats div>span{font-size:11px}.section{padding:58px 5%}.section-label{font-size:9px;margin-bottom:24px}.section-heading{display:block;margin-bottom:28px}.section-heading>p{margin-top:20px}.service-layout,.faq-layout,.about,.contact-layout{grid-template-columns:1fr;gap:30px}.service-image{height:280px}summary{font-size:17px;padding:22px 0}.solution-grid{grid-template-columns:1fr;gap:35px}.solution-grid img{height:250px}.solution-grid h3{font-size:25px}.solution-grid h3 br{display:none}.project-grid{grid-template-columns:1fr;gap:35px}.filters{margin-top:25px}.project>div{height:260px}.about-photo img{height:340px}.about h2{font-size:43px}.tech-grid{grid-template-columns:1fr}.tech article{padding:28px}.circuit{gap:10px}.circuit b{font-size:8px}.faq-layout{gap:30px}.contact h2{font-size:43px}.contact-layout{gap:45px}.phone{font-size:25px;margin-top:25px}footer{display:grid;grid-template-columns:1fr 1fr;padding-top:30px}footer .logo{grid-column:span 2}dialog{padding:30px}.project h3{font-size:23px}}


/* Branded opening sequence */
#site-loader{position:fixed;inset:0;z-index:1000;background:#111a21;color:#fff;display:grid;place-items:center;overflow:hidden;transition:none;pointer-events:auto}#site-loader.leaving{transition:opacity .65s ease,visibility .65s;opacity:0;visibility:hidden;pointer-events:none}.loader-grid{position:absolute;inset:-15%;background-image:linear-gradient(#70d0f208 1px,transparent 1px),linear-gradient(90deg,#70d0f208 1px,transparent 1px);background-size:85px 85px;mask-image:radial-gradient(ellipse,#000,transparent 70%);animation:grid-arrive 2.2s ease both}.loader-grid:after{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at center,#277aa32b,transparent 55%)}.loader-center{text-align:center;position:relative;animation:loader-rise .7s ease both}.loader-symbol{width:116px;margin:0 auto 38px;display:grid;gap:16px;transform:skew(-17deg);position:relative}.loader-symbol span{display:block;height:24px;width:100%;background:linear-gradient(110deg,#70d0f2 0%,#b3efff 35%,#388ac0 75%,#70d0f2 100%);background-size:250% 100%;box-shadow:0 0 25px #70d0f218;transform-origin:left;animation:bar-connect .75s cubic-bezier(.16,1,.3,1) both,bar-light 1.3s .75s ease both}.loader-symbol span:nth-child(2){width:77%;animation-delay:.17s,.92s}.loader-symbol span:nth-child(3){animation-delay:.34s,1.09s}.loader-name{font-size:clamp(29px,5vw,52px);font-weight:800;letter-spacing:5px;animation:word-connect .9s .45s both}.loader-caption{font-size:9px;letter-spacing:2.6px;color:#8daab9;margin-top:22px;animation:loader-rise .8s .8s both}.loader-bottom{position:absolute;bottom:45px;left:5%;right:5%;display:flex;justify-content:space-between;font-size:9px;letter-spacing:1.5px;color:#89a3b2}.loader-progress b{font-weight:400;color:#b7e9fc;display:inline-block;min-width:22px;text-align:right;font-variant-numeric:tabular-nums}.loader-track{position:absolute;bottom:0;left:0;right:0;height:2px;background:#ffffff0a}.loader-track i{display:block;width:100%;height:100%;background:#70d0f2;transform-origin:left;animation:load-track 2.1s cubic-bezier(.2,.7,.2,1) both;box-shadow:0 0 20px #70d0f2}.loader-replay{background:none;border:0;border-bottom:1px solid #ffffff30;color:#a9bac5;font-size:10px;padding:7px 0}html.loading body{overflow:hidden}html.loading main{opacity:0;transform:translateY(14px)}main{transition:opacity .8s,transform .8s}@keyframes bar-connect{from{opacity:0;transform:translateX(-90px) scaleX(.2);filter:blur(8px)}to{opacity:1;transform:translateX(0) scaleX(1);filter:blur(0)}}@keyframes bar-light{0%{background-position:100% 0}60%{box-shadow:0 0 34px #70d0f250}100%{background-position:0 0;box-shadow:0 0 12px #70d0f218}}@keyframes word-connect{from{opacity:0;letter-spacing:12px;filter:blur(6px)}to{opacity:1;letter-spacing:5px;filter:blur(0)}}@keyframes loader-rise{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}@keyframes load-track{from{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes grid-arrive{from{opacity:0;transform:scale(1.12)}to{opacity:1;transform:scale(1)}}@media(max-width:600px){.loader-symbol{width:90px;gap:12px;margin-bottom:30px}.loader-symbol span{height:19px}.loader-name{font-size:29px;letter-spacing:3px}.loader-caption{font-size:7px;letter-spacing:1.4px}.loader-bottom{font-size:7px;bottom:28px;letter-spacing:.7px}}@media(prefers-reduced-motion:reduce){#site-loader{display:none}.loader-center,.loader-symbol span,.loader-name,.loader-caption,.loader-grid,.loader-track i{animation:none}html.loading main{opacity:1;transform:none}main{transition:none}}


/* Responsive originals: the hero is requested early, lower sections load lazily. */
.hero-photo{background:none}.hero-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:55% center}.hero-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#141b20 0%,#141b2070 28%,#141b200d 75%),linear-gradient(0deg,#141b20bb,transparent 55%)}@media(max-width:700px){.hero-photo img{object-position:60% center}}

/* Quiet photographic slideshow: stable text, soft crossfade, no layout shift. */
.hero-photo .hero-slide{opacity:0;z-index:0;transform:scale(1.035);transition:opacity 1.5s ease,transform 8s linear;filter:saturate(.92);object-position:var(--photo-position,55% center)}.hero-photo .hero-slide.is-active{opacity:1;z-index:1;transform:scale(1)}.hero-photo .hero-slide.is-previous{opacity:1;z-index:0}.hero-photo:after{z-index:2;pointer-events:none}.hero-slideshow-controls{position:absolute;right:5%;bottom:83px;z-index:3;display:flex;align-items:center;gap:14px;color:#e4eef3}.hero-slide-counter{font-size:11px;font-variant-numeric:tabular-nums;letter-spacing:1px}.hero-slide-counter i{font-style:normal;color:#91a5b1}.hero-slide-dots{display:flex;gap:0}.hero-slide-dots button{border:0;background:transparent;display:grid;place-items:center;min-width:38px;min-height:44px;padding:8px;color:inherit}.hero-slide-dots button span{display:block;width:17px;height:2px;background:#d7e9f055;transition:width .4s,background .4s}.hero-slide-dots button[aria-current=true] span{width:28px;background:var(--blue)}.hero-slide-dots button:hover span{background:#fff}.hero-slide-pause{border:1px solid #ffffff35;border-radius:50%;width:42px;height:42px;display:grid;place-items:center;background:#14232b55;color:#d7e9f0;font-size:14px;backdrop-filter:blur(6px)}.hero-slide-pause:hover{background:#233a47}.photo-caption .hero-slide-location{color:#d8e0e5;font-size:11px;letter-spacing:.2px}.hero-photo .hero-slide[data-slide="1"]{--photo-position:60% center}.hero-photo .hero-slide[data-slide="2"]{--photo-position:57% center}.hero-photo .hero-slide[data-slide="3"]{--photo-position:58% center}@media(max-width:700px){.hero-slideshow-controls{bottom:20px;gap:8px}.hero-slide-dots button{min-width:32px}.hero-slide-counter{font-size:10px}.hero-slide-pause{width:40px;height:40px}.hero-content{padding-bottom:80px}.hero-photo .hero-slide{object-position:var(--mobile-photo-position,55% center)}.hero-photo .hero-slide[data-slide="1"]{--mobile-photo-position:62% center}.hero-photo .hero-slide[data-slide="2"]{--mobile-photo-position:60% center}.hero-photo .hero-slide[data-slide="3"]{--mobile-photo-position:55% center}}@media(prefers-reduced-motion:reduce){.hero-photo .hero-slide{transform:none;transition:none}}

/* Odometer counters finish at the supplied company figures. */
.stats strong{font-variant-numeric:tabular-nums}.stat-value{display:inline-flex;align-items:flex-start;vertical-align:baseline;white-space:pre}.stat-digit{display:inline-block;width:.57em;height:1.12em;line-height:1.12em;overflow:hidden;position:relative;vertical-align:top}.stat-digit-track{display:flex;flex-direction:column;transition:transform .12s cubic-bezier(.2,.8,.3,1);will-change:transform}.stat-digit-track>span{height:1.12em;line-height:1.12em;flex-shrink:0;display:block;text-align:center}.stat-separator{line-height:1.12em;white-space:pre}.stat-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.stats.is-counting .stat-value{color:#2388b0}.stats.is-counted .plus{animation:stat-accent 5s ease-in-out infinite}.stats.is-counted>div:first-child strong small{animation:stat-accent 5s 1s ease-in-out infinite}@keyframes stat-accent{0%,65%,100%{text-shadow:none}80%{text-shadow:0 0 16px #58bce37a}}@media(prefers-reduced-motion:reduce){.stat-digit-track{transition:none}.stats.is-counted .plus,.stats.is-counted>div:first-child strong small{animation:none}}

.hero-photo{z-index:0}.hero-grid{z-index:1}.hero-content{z-index:2}.photo-caption{z-index:3}
.hero-photo{overflow:hidden}

.stats{position:relative}.stats-motion-toggle{position:absolute;right:4%;top:7px;display:grid;place-items:center;width:32px;height:32px;border:0;background:transparent;color:#7b929e;font-size:13px;border-radius:50%}.stats-motion-toggle:hover{background:#e8f0f4;color:#2388b0}.stat-digit-track{transition:transform .45s cubic-bezier(.2,.8,.3,1)}@media(max-width:700px){.stats small{font-size:19px}}@media(prefers-reduced-motion:reduce){.stat-digit-track{transition:none}.stats-motion-toggle{display:none}}

/* Project portfolios and the Moscow office. */
.project-grid{row-gap:42px}.project>div{height:320px}.project-photo-total{display:inline-block;margin-top:12px;font-size:11px;color:#617785;letter-spacing:.4px}.project[data-project="theatre"] img{object-position:50% 35%}#project-dialog{max-width:920px;max-height:90dvh;overflow:auto;padding:42px}#project-dialog .section-label{margin-bottom:20px}#project-dialog h2{padding-right:30px}#project-dialog .project-location{font-size:11px;letter-spacing:1px;color:#5e8498;margin:15px 0}#project-dialog .project-description{margin:20px 0 26px;max-width:740px}#project-dialog .close{position:absolute;right:20px;top:14px}#project-dialog .project-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:28px}.photo-trigger{position:relative;border:0;padding:0;background:#dce7ed;overflow:hidden;display:block;width:100%;cursor:zoom-in;color:inherit}.photo-trigger img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .4s}.photo-trigger:hover img{transform:scale(1.035)}.project-gallery .photo-trigger{height:185px}.photo-enlarge{position:absolute;bottom:0;right:0;background:#121e28bb;color:#d2edf9;padding:10px 14px;font-size:20px}.office-section{background:#f0f3f4}.office-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:65px;align-items:center}.office-copy h2{font-size:48px}.office-copy>p{font-size:15px;line-height:1.75;color:var(--muted);max-width:390px}.office-copy address{font-size:16px;line-height:1.65;font-style:normal;margin-top:30px}.office-copy address small{display:block;font-size:10px;letter-spacing:1.1px;color:#648093;margin-bottom:8px}.office-feature{height:370px}.office-feature>span{position:absolute;bottom:0;left:0;right:0;text-align:left;background:linear-gradient(transparent,#13212be6);color:white;padding:45px 24px 22px;font-size:13px}.office-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:25px}.office-strip .photo-trigger{height:230px}.office-strip .photo-trigger img{object-position:center 40%}#photo-dialog{background:#101a21;color:#e5f0f5;border:0;padding:60px 22px 22px;width:min(1200px,94vw);max-width:94vw;max-height:94dvh;overflow:hidden}#photo-dialog::backdrop{background:#061018ed}.photo-viewer-close{position:absolute;top:9px;right:18px;border:0;background:none;color:#e5f0f5;width:40px;height:40px;font-size:32px}.photo-viewer-stage{height:70dvh;max-height:800px;display:grid;place-items:center;position:relative}.photo-viewer-image{display:block;width:100%;height:100%;object-fit:contain}.photo-viewer-loading{position:absolute;inset:0;display:grid;place-items:center;color:#a2c1d1;font-size:14px}.photo-viewer-footer{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:16px}.photo-viewer-caption{margin:0;font-size:13px;line-height:1.5;color:#bdcfda;max-width:70%}.photo-viewer-controls{display:flex;align-items:center;gap:15px}.photo-viewer-count{font-variant-numeric:tabular-nums;white-space:nowrap;font-size:12px;color:#98bacb}.photo-viewer-prev,.photo-viewer-next{width:42px;height:42px;border:1px solid #ffffff35;background:transparent;color:#e5f0f5;font-size:23px}.photo-viewer-prev:hover,.photo-viewer-next:hover{background:#263d4b}nav{gap:21px}@media(max-width:1000px){.office-layout{gap:30px}.office-copy h2{font-size:38px}.office-feature{height:320px}.office-strip .photo-trigger{height:180px}nav{gap:14px}}@media(max-width:700px){.project>div{height:260px}.project-grid{row-gap:32px}#project-dialog{padding:35px 22px 25px}#project-dialog h2{font-size:27px}#project-dialog .project-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.project-gallery .photo-trigger{height:150px}.office-layout{grid-template-columns:1fr;gap:26px}.office-copy h2{font-size:36px}.office-copy address{margin-top:22px}.office-feature{height:270px}.office-strip{gap:10px;margin-top:12px;grid-template-columns:1fr 1fr}.office-strip .photo-trigger{height:160px}.office-strip .photo-trigger:last-child{grid-column:span 2;height:220px}#photo-dialog{padding:54px 12px 15px;width:96vw;max-width:96vw}.photo-viewer-stage{height:65dvh}.photo-viewer-caption{font-size:11px;max-width:56%}.photo-viewer-controls{gap:8px}.photo-viewer-prev,.photo-viewer-next{width:36px;height:40px}.photo-viewer-footer{gap:10px;margin-top:12px}}
@media(prefers-reduced-motion:reduce){.photo-trigger img{transition:none}.photo-trigger:hover img{transform:none}}
.photo-viewer-stage{grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(0,1fr);overflow:hidden}.photo-viewer-image{min-width:0;min-height:0;max-width:100%;max-height:100%}.photo-viewer-footer{position:relative;z-index:2}.photo-viewer-close{z-index:2}
