/* Final review: shared loading, full footer and the supplied About composition. */
.page-preloader{display:block!important;position:fixed;inset:0;z-index:2000;box-sizing:border-box;background:#f2f3f0!important;color:#1267fa;animation:preloader-failsafe 0s 9s forwards!important;pointer-events:auto;opacity:1;overflow:hidden}
@keyframes preloader-failsafe{to{visibility:hidden;pointer-events:none}}
.page-preloader[hidden]{display:none!important}
.page-preloader.is-finishing{opacity:0!important;transition:opacity .52s ease!important;pointer-events:none}
.page-preloader .loading-brand{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:min(39vw,470px)!important;height:auto;max-height:65vh;object-fit:contain}
.loading-stage{position:absolute;left:var(--edge,40px);bottom:75px;font:500 clamp(20px,3vw,46px)/1.1 'Vela Sans',sans-serif;letter-spacing:-.045em;color:#12191e}
.loading-rail{position:absolute;left:var(--edge,40px);right:var(--edge,40px);bottom:40px;height:2px;background:#b5c2c8;overflow:hidden}
.loading-rail-fill{display:block;width:100%;height:100%;background:#1267fa;transform:scaleX(0);transform-origin:left;will-change:transform}
.loading-percent{position:absolute;right:var(--edge,40px);bottom:75px;color:#1267fa;font:500 clamp(20px,3vw,46px)/1 'Vela Sans',sans-serif;letter-spacing:-.05em;font-variant-numeric:tabular-nums}
@media(max-width:700px){.page-preloader .loading-brand{width:min(75vw,330px)!important}.loading-stage,.loading-percent{bottom:62px;font-size:21px}.loading-rail{bottom:30px}}
@media(prefers-reduced-motion:reduce){.page-preloader{display:none!important}}

/* The wordmark sits under the contact surface as the footer scrolls into view. */
.footer.closing-footer{position:relative;isolation:isolate;overflow:visible!important}
.closing-footer .footer-contact-surface{position:relative;z-index:2;background:#1267fa}
.closing-footer .footer-reveal{position:sticky!important;bottom:0;z-index:1;background:#1267fa}
.closing-footer .footer-identity{position:relative;z-index:1;background:#1267fa}
.closing-footer .footer-wordmark{overflow:visible}
.closing-footer .footer-wordmark img{width:100%;height:auto;max-width:100%}
.closing-footer .footer-bottom{display:grid!important;grid-template-columns:1.15fr 1.5fr .9fr auto!important;align-items:start!important;gap:14px 22px!important;visibility:visible!important;opacity:1!important;min-height:35px;margin-top:0}
.closing-footer .footer-bottom>*{display:block!important;visibility:visible!important;opacity:1!important}
.closing-footer .footer-bottom .footer-legal{display:flex!important;flex-wrap:wrap;gap:8px 18px}
.closing-footer .footer-bottom .footer-author{display:inline-flex!important;justify-self:end}
@media(max-width:900px){.closing-footer .footer-bottom{grid-template-columns:1fr 1fr!important}.closing-footer .footer-author{justify-self:start!important}}
@media(max-width:700px){.closing-footer .footer-bottom{display:flex!important;flex-direction:column;gap:0!important;align-items:stretch!important}.closing-footer .footer-bottom .footer-legal{display:flex!important;flex-direction:column}.closing-footer .footer-reveal{position:relative!important}}

/* About: the light editorial layout supplied by the owner. */
body[data-final-about=true],body[data-final-about=true] .about-v2{background:#f3f4f2;color:#111719}
body[data-final-about=true] .about-v2{overflow:visible!important}
body[data-final-about=true] .header .brand .brand-lion{display:none!important}
body[data-final-about=true] .header .brand .wordmark{width:180px}
.header.on-blue .brand img.wordmark,.header.on-dark .brand img.wordmark{filter:brightness(0) invert(1)!important}
.header .menu-toggle,.header .menu-toggle:hover,.header .menu-toggle:focus,.header .menu-toggle:focus-visible{border:0!important;outline:0!important;box-shadow:none!important;-webkit-appearance:none;appearance:none}
.header .menu-toggle:focus-visible .menu-strokes{opacity:.65}
body[data-final-about=true] .about-v2 h1,body[data-final-about=true] .about-v2 h2,body[data-final-about=true] .about-v2 h3{font-weight:650;letter-spacing:-.047em;line-height:1.02;text-wrap:balance}
body[data-final-about=true] .about-v2 p{line-height:1.42}
.about-v2 .about-hero{padding-top:clamp(55px,5vw,95px);padding-bottom:clamp(90px,9vw,165px)}
.about-v2 .about-hero-grid{grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:clamp(48px,7vw,150px)}
.about-v2 .about-hero h1{font-size:clamp(56px,5.55vw,105px);max-width:1030px;margin-bottom:54px}
.about-v2 .about-hero-copy p{color:#242a2d;font-size:clamp(18px,1.15vw,23px);max-width:750px}
.about-v2 .about-brand-art{background:transparent;aspect-ratio:1/1}
.about-v2 .about-brand-art img{padding:0;width:min(100%,690px);height:100%;object-fit:contain}
.about-v2 .about-statement,.about-v2 .about-experience,.about-v2 .about-future{background:#e9edec;color:#111719}
.about-v2 .about-statement{padding-block:clamp(110px,10vw,195px)}
.about-v2 .about-statement .about-body p,.about-v2 .about-section .about-body p,.about-v2 .about-future .about-body p{color:#282e30}
.about-v2 .about-section{padding-block:clamp(110px,10vw,180px)}
.about-v2 .about-direction-list a{font-weight:450}
.about-v2 .about-direction-list a:hover{font-weight:450}
.about-v2 .about-experience{padding-block:clamp(105px,9vw,170px)}
.about-v2 .about-project{background:#f7f8f6;color:#111719;border:1px solid #d0d5d4}
.about-v2 .about-project:hover{background:#fff;border-color:#8b9699}
.about-v2 .about-project img{background:#e4e9e8;object-fit:contain}
.about-v2 .about-project strong{font-weight:600}
.about-v2 .about-method{background:#f3f4f2}
.about-v2 .about-future{padding-block:clamp(115px,10vw,190px)}

/* Each concept passes over the previous one when the next section enters. */
.about-v2 .about-panel{position:sticky;top:0;box-sizing:border-box;width:100%;max-width:none;min-height:100svh;padding:clamp(70px,7vw,135px) var(--edge,40px) clamp(95px,9vw,165px);border:0;background:#f3f4f2;box-shadow:0 -1px 0 #d5dbd9;overflow:hidden}
.about-v2 .about-panel-oksville{z-index:1}
.about-v2 .about-panel-library{z-index:2;background:#1267fa;color:#fff;box-shadow:none}
.about-v2 .about-panel-playground{z-index:3}
.about-v2 .about-panel-spaces{z-index:4}
.about-v2 .about-panel{position:relative;top:auto;z-index:auto;box-shadow:0 -14px 32px -25px #26323b66}
.about-panel>*{max-width:1660px;margin-left:auto;margin-right:auto}
.about-concept-brand{height:clamp(80px,10vw,150px);margin-bottom:clamp(35px,4vw,80px);display:flex;align-items:flex-start}
.about-concept-brand img{display:block;max-height:100%;max-width:clamp(170px,19vw,360px);object-fit:contain;object-position:left center}
.about-panel-hero-image{width:min(69%,1100px);margin:0 0 clamp(65px,7vw,130px) auto!important;overflow:hidden}
.about-panel-hero-image img{display:block;width:100%;aspect-ratio:1.75/1;object-fit:cover;pointer-events:none;user-select:none}
.about-panel-hero-image figcaption{display:none}
.about-panel .about-concept-head{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(45px,7vw,140px);margin-bottom:clamp(55px,5vw,100px)}
.about-panel .about-concept-head>div{display:contents}
.about-panel .about-concept-head h3{font-size:clamp(54px,5.7vw,106px);margin:0;max-width:800px;grid-column:1;grid-row:1/3}
.about-panel .about-concept-head p{grid-column:2;grid-row:1;font-size:clamp(19px,1.4vw,26px);color:#282e30;max-width:820px;margin:0}
.about-panel .about-concept-head .about-concept-note{grid-column:2;grid-row:2;color:#69747a;font-size:14px;text-transform:uppercase;letter-spacing:.09em;margin-top:22px}
.about-panel .about-concept-head{grid-template-columns:minmax(0,38%) minmax(0,62%);column-gap:0;row-gap:0}
.about-panel .about-concept-head h3{grid-column:1/-1;grid-row:1;font-size:clamp(40px,4.15vw,70px);max-width:670px;overflow-wrap:normal;word-break:normal;hyphens:none}
.about-panel .about-concept-head p{grid-column:2;grid-row:2;margin-top:clamp(25px,3vw,55px);font-size:clamp(17px,1.28vw,22px)}
.about-panel .about-concept-head .about-concept-note{grid-column:2;grid-row:3;margin-top:22px}
.about-panel-library .about-concept-head p{color:#fff}
.about-panel-library .about-concept-head .about-concept-note{color:#d8e6ff}
.about-panel .about-gallery{width:min(69%,1100px);margin-left:auto;margin-right:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(18px,2vw,32px)}
.about-panel .about-gallery-item img{width:100%;aspect-ratio:1.62/1;object-fit:cover;pointer-events:none;user-select:none}
.about-panel .about-gallery-item figcaption{font-size:12px;color:#626c70}
.about-panel-library .about-gallery-item figcaption,.about-panel-library .about-gallery-item figcaption strong{color:#fff;border-color:#ffffff73}
.about-billboard{width:min(69%,1100px);margin:clamp(60px,6vw,110px) 0 0 auto!important}
.about-billboard img{width:100%;height:auto;display:block;pointer-events:none;user-select:none}
.about-v2 .cta-section{position:relative;z-index:5}
body[data-final-about=true] .closing-footer{z-index:6}
@media(max-width:960px){.about-v2 .about-hero-grid{grid-template-columns:1fr}.about-v2 .about-brand-art{width:min(70vw,600px);justify-self:center}.about-panel .about-concept-head{grid-template-columns:1fr;gap:25px}.about-panel .about-concept-head h3,.about-panel .about-concept-head p,.about-panel .about-concept-head .about-concept-note{grid-column:1;grid-row:auto}.about-panel-hero-image,.about-panel .about-gallery,.about-billboard{width:100%}}
@media(max-width:700px){.about-v2 .about-hero{padding-top:30px}.about-v2 .about-hero h1{font-size:clamp(39px,9vw,68px);margin-bottom:28px}.about-v2 .about-brand-art{width:100%;max-width:400px}.about-v2 .about-panel{position:relative;min-height:0;padding:70px var(--edge,24px) 90px}.about-concept-brand{height:85px;margin-bottom:26px}.about-panel-hero-image{margin-bottom:40px!important}.about-panel .about-concept-head h3{font-size:clamp(42px,9vw,65px)}.about-panel .about-concept-head p{font-size:18px}.about-panel .about-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.about-panel .about-gallery-item figcaption{display:none}.about-billboard{margin-top:35px!important}}
@media(max-width:700px){.about-panel .about-concept-head{display:block}.about-panel .about-concept-head h3{font-size:clamp(34px,8vw,50px);max-width:100%}.about-panel .about-concept-head p{margin-top:24px}.about-panel .about-concept-head .about-concept-note{margin-top:20px}}
@media(prefers-reduced-motion:reduce){.about-v2 .about-panel{position:relative}.closing-footer .footer-reveal{position:relative!important}}
/* Keep the priority-project icon white beside its white label. */
.viewer-section .feature-intro .with-icon>.icon{color:#fff}

/* The first white section starts directly after the film; the divider follows directions. */
.home-page #directions .section-label{border-top:0;padding-top:0}
.home-page #directions{padding-bottom:clamp(45px,5vw,75px)}
.home-page .home-section-divider-line{height:0;border-top:1px solid var(--line)}
.home-page .home-advantages{padding-top:clamp(45px,5vw,75px)}

/* Alternate loading-screen study, available only with ?loader=blue. */
.loader-blue .page-preloader{background:#1267fa!important;color:#fff!important}
.loader-blue .page-preloader .loading-brand{visibility:hidden}
.loader-blue .page-preloader::before{content:"";position:absolute;left:50%;top:50%;width:min(58vw,780px);aspect-ratio:1757/329;transform:translate(-50%,-50%);background:url('/assets/gkssd-wordmark.svg') center/contain no-repeat;filter:brightness(0) invert(1)}
.loader-blue .loading-stage,.loader-blue .loading-percent{color:#fff}
.loader-blue .loading-rail{background:#ffffff66}
.loader-blue .loading-rail-fill{background:#fff}
@media(max-width:700px){.loader-blue .page-preloader::before{width:min(78vw,520px)}}

/* The contact surface scrolls over the blue identity layer, which stays on screen at the end. */
body .footer.closing-footer{width:100%;min-height:0;background:#1267fa;overflow:visible!important}
body .closing-footer .footer-reveal{position:sticky!important;bottom:0!important;z-index:1;width:100%;background:#1267fa;clip-path:none!important}
body .closing-footer .footer-identity{transform:none;background:#1267fa}
body .closing-footer .footer-wordmark{overflow:hidden}
body .closing-footer .footer-wordmark img{transform:none;will-change:auto}
.approach-section .section-label .with-icon>.icon{color:#1267fa;flex:none}
.home-page .header .brand img.wordmark{width:180px!important}
@media(max-width:800px){.home-page .header .brand img.wordmark{width:136px!important}}
@media(max-width:700px){body .closing-footer .footer-requisites{padding:22px 0 26px;line-height:1.5;white-space:normal}body .closing-footer .footer-legal{padding-top:24px}body .closing-footer .footer-author{align-items:center;gap:12px}}

@media(min-width:701px){
  .closing-footer .footer-bottom{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    align-items:center!important;
    gap:16px 40px!important;
    padding-bottom:24px;
    font-size:clamp(11px,.7vw,12px);
  }
  .closing-footer .footer-bottom>*{align-self:center}
  .closing-footer .footer-requisites{grid-column:1;grid-row:1}
  .closing-footer .footer-legal{grid-column:1;grid-row:2}
  .closing-footer .footer-copyright{grid-column:2;grid-row:1;justify-self:end}
  .closing-footer .footer-author{grid-column:2;grid-row:2;justify-self:end!important}
}
