/* cyrillic-ext */
@font-face {
  font-family: 'Plus Jakarta Sans';
  font-style: normal;
  font-weight: 200 800;
  font-display: swap;
  src: url(fonts/plus-jakarta-sans-58677bc4e688/plus-jakarta-sans-9b76284e.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* vietnamese */
@font-face {
  font-family: 'Plus Jakarta Sans';
  font-style: normal;
  font-weight: 200 800;
  font-display: swap;
  src: url(fonts/plus-jakarta-sans-58677bc4e688/plus-jakarta-sans-35af93a0.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Plus Jakarta Sans';
  font-style: normal;
  font-weight: 200 800;
  font-display: swap;
  src: url(fonts/plus-jakarta-sans-58677bc4e688/plus-jakarta-sans-305d441d.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Plus Jakarta Sans';
  font-style: normal;
  font-weight: 200 800;
  font-display: swap;
  src: url(fonts/plus-jakarta-sans-58677bc4e688/plus-jakarta-sans-be25729b.woff2) format('woff2');
  unicode-range: U+0000-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: 'Plus Jakarta Sans Fallback';
  src: local("Arial");
  ascent-override: 98.88%;
  descent-override: 21.15%;
  line-gap-override: 0.00%;
  size-adjust: 104.98%;
}

.__font_plus_jakarta_sans_1v8ti09 { font-family: 'Plus Jakarta Sans', 'Plus Jakarta Sans Fallback'; font-style: normal; }

.__variable_plus_jakarta_sans_1v8ti09 { --font-geist-sans: 'Plus Jakarta Sans', 'Plus Jakarta Sans Fallback'; }

/* cyrillic-ext */
@font-face {
  font-family: 'Geist Mono';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(fonts/geist-mono-00e989178794/geist-mono-f6b33328.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Geist Mono';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(fonts/geist-mono-00e989178794/geist-mono-44e03052.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* symbols2 */
@font-face {
  font-family: 'Geist Mono';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(fonts/geist-mono-00e989178794/geist-mono-0638449e.woff2) format('woff2');
  unicode-range: U+2000-2001, U+2004-2008, U+200A, U+23B8-23BD, U+2500-259F;
}
/* vietnamese */
@font-face {
  font-family: 'Geist Mono';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(fonts/geist-mono-00e989178794/geist-mono-971fb274.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Geist Mono';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(fonts/geist-mono-00e989178794/geist-mono-44745446.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Geist Mono';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(fonts/geist-mono-00e989178794/geist-mono-013b2f2f.woff2) format('woff2');
  unicode-range: U+0000-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: 'Geist Mono Fallback';
  src: local("Arial");
  ascent-override: 74.67%;
  descent-override: 21.92%;
  line-gap-override: 0.00%;
  size-adjust: 134.59%;
}

.__font_geist_mono_1001rt9 { font-family: 'Geist Mono', 'Geist Mono Fallback'; font-style: normal; }

.__variable_geist_mono_1001rt9 { --font-geist-mono: 'Geist Mono', 'Geist Mono Fallback'; }


:root{--font-geist-sans:'Plus Jakarta Sans',Arial,sans-serif;--font-geist-mono:'Geist Mono',monospace}
body{font-family:var(--font-geist-sans)}
.desk-tab-list{display:flex}.desk-tab{flex:1;cursor:pointer}.desk-panel[hidden]{display:none!important}.glass-service-icon{font-size:38px}.theme-switch{display:inline-flex;align-items:center;border-radius:999px}.theme-switch [data-slot=switch-thumb]{display:block;border-radius:50%}.service-expand-button{display:list-item;cursor:pointer;padding:14px 0;font-weight:650}.service-expanded{padding:10px 0 20px}.service-expanded h4{margin-top:20px}.service-expanded p{margin:10px 0}.m2-menu{position:fixed;inset:0 0 0 auto;margin:0;width:min(90vw,360px);max-width:none;height:100dvh;max-height:none;overflow:auto;background:#f3f6fb;color:#020617;border:1px solid #526487;padding:76px 26px 30px}.m2-menu::backdrop{background:#02061799;backdrop-filter:blur(6px)}.m2-menu h2{font-size:25px;font-weight:750}.m2-menu nav{display:flex;flex-direction:column;margin-top:25px}.m2-menu nav a{padding:18px 0;border-bottom:1px solid #7185a6;font-size:20px}.menu-close{position:absolute;right:16px;top:16px;width:44px;height:44px;font-size:32px;cursor:pointer}.m2-menu .nav-contact{background:transparent;box-shadow:none;color:inherit;border-radius:0}.standard-page{min-height:60vh;max-width:1200px;margin:auto}.standard-page h1{font-size:clamp(40px,5vw,70px);font-weight:750;line-height:1.1;margin:30px 0}.standard-page p{margin:20px 0;line-height:1.7}.screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}html[data-theme=dark] .m2-menu{background:#101a30;color:#edf2ff}
/* Readable weight in both color schemes, including editorial italics. */
h1,h2,h3,h4,h5,h6{font-weight:700!important}
h1 :is(span,em),h2 :is(span,em),h3 :is(span,em),.entrance-copy h1 .hero-line-accent{font-weight:600!important}
button,summary,[role=button],.desk-tab,.text-link,.entrance-cta,.contact-button,.glass-action,.nav-contact,.desktop-nav a,.m2-menu nav a{font-weight:600!important}
.service-glass .desk-tabs{display:block}.service-glass .desk-tab-list{height:auto;align-items:center;justify-content:stretch}.service-glass .desk-tab{height:auto;min-height:44px;display:flex;align-items:center;justify-content:center}.service-glass .desk-panel{width:100%}.entrance-copy h1{letter-spacing:-.035em}
/* Decorative light must not create an internally scrollable hero. */
.studio-entrance{overflow:clip}.studio-entrance::before{inset:0}

/* Keep campaign lettering visible in previews. */
.project-image.m2-preview-contain img{object-fit:contain;background:#eef2f6}
