
:root {
  --cream: #f7f3eb;
  --paper: #fffdf8;
  --ink: #253833;
  --plum: #0b7f78;
  --plum-dark: #055b56;
  --burgundy: #5b0b24;
  --sage: #9fc4b8;
  --sage-pale: #deece6;
  --terracotta: #6f1530;
  --coral-soft: #ead9d1;
  --mint: #cde6de;
  --lime: #eadfbd;
  --gold: #bd9746;
  --line: rgba(11, 127, 120, .17);
  --heading-font: Charter, Iowan Old Style, Baskerville, Georgia, Times New Roman, serif;
  --body-font: Inter, Avenir Next, Avenir, Helvetica Neue, Arial, sans-serif;
  --serif: var(--heading-font);
  --sans: var(--body-font);
}

html[data-heading-font="lora"] { --heading-font: Lora, Georgia, serif; }
html[data-heading-font="merriweather"] { --heading-font: Merriweather, Georgia, serif; }
html[data-heading-font="cormorant"] { --heading-font: Cormorant Garamond, Georgia, serif; }
html[data-body-font="manrope"] { --body-font: Manrope, Arial, sans-serif; }
html[data-body-font="source-sans"] { --body-font: Source Sans 3, Arial, sans-serif; }

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: radial-gradient(circle at 86% 4%, rgba(205,230,222,.6), transparent 30rem), var(--cream); color: var(--ink); font-family: var(--sans); font-size: 17px; line-height: 1.65; }
a { color: inherit; text-decoration: none; }
::selection { background: var(--terracotta); color: white; }

.site-shell { min-height: 100vh; overflow: hidden; }
.site-header { height: 96px; max-width: 1440px; margin: auto; padding: 0 5vw; display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid var(--line); position: relative; z-index: 20; backdrop-filter: blur(16px); }
.brand { display: inline-flex; align-items: center; gap: 13px; }
.brand-mark { width: 52px; height: 52px; display: grid; place-items: center; border-radius: 50%; background: var(--plum); color: var(--cream); font: 600 16px/1 var(--serif); letter-spacing: .05em; }
.brand-logo { background: transparent; overflow: visible; }
.brand-logo img { width: 100%; height: 100%; object-fit: contain; display: block; }
.brand-text { display: flex; flex-direction: column; line-height: 1.2; }
.brand-text strong { font: 500 18px/1.25 var(--serif); }
.brand-text small { margin-top: 3px; text-transform: uppercase; font-size: 10px; letter-spacing: .19em; color: #796d75; }
.desktop-nav { display: flex; align-items: center; gap: clamp(12px, 1.45vw, 25px); }
.desktop-nav .zva-menu { list-style: none; margin: 0; padding: 0; display: flex; align-items: center; gap: clamp(12px, 1.45vw, 25px); }
.desktop-nav .zva-menu > li { position: relative; padding: 26px 0; }
.desktop-nav .zva-menu a { position: relative; font-size: 14px; letter-spacing: .01em; }
.desktop-nav .sub-menu { width: 300px; position: absolute; left: 50%; top: 72px; z-index: 30; margin: 0; padding: 13px; list-style: none; display: grid; gap: 3px; background: rgba(255,253,248,.98); border: 1px solid var(--line); border-radius: 24px; box-shadow: 0 24px 60px rgba(5,72,67,.16); opacity: 0; visibility: hidden; transform: translate(-50%, 10px); transition: opacity .2s ease, transform .2s ease, visibility .2s; }
.desktop-nav .menu-item-has-children:hover > .sub-menu, .desktop-nav .menu-item-has-children:focus-within > .sub-menu { opacity: 1; visibility: visible; transform: translate(-50%, 0); }
.desktop-nav .sub-menu li { margin: 0; }
.desktop-nav .sub-menu a { min-height: 45px; padding: 9px 12px; display: flex; align-items: center; border-radius: 14px; font: 18px/1.15 var(--serif); }
.desktop-nav .sub-menu a:hover { background: var(--sage-pale); }
.desktop-nav a { position: relative; font-size: 14px; letter-spacing: .01em; }
.desktop-nav a::after { content: ""; position: absolute; height: 1px; left: 0; right: 100%; bottom: -9px; background: var(--plum); transition: right .25s ease; }
.desktop-nav a:hover::after, .desktop-nav a.active::after { right: 0; }
.nav-group { position: relative; padding: 26px 0; }
.nav-group > a { display: flex; align-items: center; gap: 6px; }
.nav-group.active > a::after { right: 0; }
.nav-chevron { color: var(--gold); font-size: 16px; line-height: 1; transform: translateY(-1px); }
.nav-submenu { width: 340px; position: absolute; left: 50%; top: 72px; padding: 13px; display: grid; gap: 3px; background: rgba(255,253,248,.98); border: 1px solid var(--line); border-radius: 24px; box-shadow: 0 24px 60px rgba(5,72,67,.16); opacity: 0; visibility: hidden; transform: translate(-50%, 10px); transition: opacity .2s ease, transform .2s ease, visibility .2s; }
.nav-group:hover .nav-submenu, .nav-group:focus-within .nav-submenu { opacity: 1; visibility: visible; transform: translate(-50%, 0); }
.nav-submenu a { min-height: 48px; padding: 8px 10px; display: grid; grid-template-columns: 34px 1fr; gap: 12px; align-items: center; border-radius: 14px; font: 18px/1.15 var(--serif); }
.nav-submenu a::after { display: none; }
.nav-submenu a:hover, .nav-submenu a.active { background: var(--sage-pale); }
.submenu-icon { width: 30px; height: 30px; color: var(--burgundy); }
.nav-submenu-about, .nav-submenu-more { width: 270px; }
.menu-mini-icon { width: 30px; height: 30px; display: grid; place-items: center; overflow: hidden; border-radius: 50%; background: var(--mint); color: var(--burgundy); font: 18px/1 var(--serif); }
.menu-mini-icon img { width: 100%; height: 100%; display: block; object-fit: contain; }
.menu-mini-space { border-radius: 10px; }
.header-actions { display: flex; align-items: center; gap: 22px; }
.language-switcher { display: flex; align-items: center; gap: 9px; }
.language-switcher a { font-size: 10px; letter-spacing: .12em; color: #8a7e86; }
.language-switcher a.active { color: var(--plum); font-weight: 700; }
.button { min-height: 54px; display: inline-flex; align-items: center; justify-content: center; gap: 18px; padding: 0 30px; background: var(--plum); color: white; border: 1px solid var(--plum); border-radius: 999px; font-size: 14px; font-weight: 650; letter-spacing: .025em; box-shadow: 0 12px 28px rgba(7,74,64,.15); transition: transform .2s ease, background .2s ease, box-shadow .2s ease; }
.button:hover { transform: translateY(-3px); background: var(--plum-dark); box-shadow: 0 17px 35px rgba(7,74,64,.22); }
.button-small { min-height: 44px; padding: 0 23px; font-size: 13px; }
.mobile-menu { display: none; position: relative; }
.zva-mobile-menu { list-style: none; margin: 0; padding: 0; }
.zva-mobile-menu .sub-menu { list-style: none; margin: 4px 0 10px 15px; padding: 0 0 0 14px; border-left: 1px solid var(--line); }

.hero { position: relative; max-width: 1440px; min-height: 690px; margin: 0 auto; padding: 100px 5vw 86px; display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(350px, .9fr); align-items: center; }
.hero::before { content: ""; width: 200px; height: 200px; position: absolute; left: -135px; top: 90px; border: 1px solid var(--line); border-radius: 50%; }
.hero-copy { position: relative; z-index: 2; max-width: 760px; }
.eyebrow, .kicker { display: flex; align-items: center; gap: 12px; text-transform: uppercase; letter-spacing: .17em; font-size: 11px; font-weight: 700; color: #796d75; }
.eyebrow span { width: 38px; height: 1px; background: var(--gold); }
h1, h2, h3, blockquote { font-family: var(--serif); font-weight: 400; margin: 0; }
.hero h1 { max-width: 820px; margin-top: 28px; font-size: clamp(52px, 5.3vw, 78px); line-height: 1.01; letter-spacing: -.038em; }
.hero-lead { max-width: 650px; margin: 32px 0 0; font-size: clamp(17px, 1.45vw, 21px); line-height: 1.65; color: #62575f; }
.hero-actions { margin-top: 38px; display: flex; align-items: center; gap: 34px; }
.text-link { display: inline-flex; gap: 22px; align-items: center; font-size: 14px; font-weight: 650; letter-spacing: .02em; border-bottom: 1px solid var(--ink); padding-bottom: 4px; }
.text-link span { color: var(--terracotta); }
.hero-art { position: relative; height: 480px; margin-left: 4vw; }
.art-orbit { position: absolute; border: 1px solid rgba(81, 51, 71, .24); border-radius: 50%; }
.orbit-one { width: 390px; height: 390px; right: 1vw; top: 20px; }
.orbit-two { width: 270px; height: 420px; right: 95px; top: 36px; transform: rotate(36deg); }
.art-shape { position: absolute; filter: saturate(.75); }
.shape-plum { width: 205px; height: 320px; right: 104px; top: 77px; border-radius: 54% 46% 43% 57% / 35% 39% 61% 65%; background: var(--plum); transform: rotate(18deg); box-shadow: 30px 32px 0 rgba(199, 123, 98, .55); }
.shape-sage { width: 130px; height: 130px; right: 3px; bottom: 52px; border-radius: 50%; background: var(--sage); mix-blend-mode: multiply; }
.hero-note { position: absolute; top: 0; right: 42px; display: flex; flex-direction: column; text-align: right; }
.hero-note span { font-size: 9px; letter-spacing: .19em; text-transform: uppercase; }
.hero-note strong { font: 400 58px/1 var(--serif); color: rgba(81, 51, 71, .26); }
.hero-bottom { position: absolute; bottom: 0; left: 5vw; right: 5vw; display: flex; justify-content: space-between; padding: 20px 0; border-top: 1px solid var(--line); font-size: 10px; text-transform: uppercase; letter-spacing: .15em; color: #776c73; }

.intro-section { max-width: 1440px; min-height: 440px; margin: auto; padding: 100px 11vw; display: grid; grid-template-columns: 140px minmax(0, 900px); gap: 4vw; align-items: start; background: var(--paper); }
.section-icon { width: 76px; height: 76px; border-radius: 24px; background: var(--coral-soft); position: relative; transform: rotate(-8deg); box-shadow: 18px 18px 0 var(--mint); }
.section-icon::before, .section-icon::after, .section-icon span { content: ""; position: absolute; border-radius: 50%; background: var(--plum); }
.section-icon::before { width: 20px; height: 20px; left: 17px; top: 17px; }
.section-icon::after { width: 12px; height: 12px; right: 15px; top: 24px; background: var(--burgundy); }
.section-icon span { width: 34px; height: 13px; left: 20px; bottom: 16px; border-radius: 999px; }
.intro-section p { margin: 0; max-width: 980px; font: 400 clamp(31px, 3.4vw, 49px)/1.28 var(--serif); letter-spacing: -.02em; }

.services-section { max-width: 1440px; margin: auto; padding: 115px 5vw 130px; }
.section-heading { display: flex; justify-content: space-between; align-items: end; margin-bottom: 50px; }
.section-heading h2 { margin-top: 14px; font-size: clamp(39px, 4.3vw, 59px); line-height: 1.08; letter-spacing: -.03em; }
.service-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.service-grid.grid-4 { grid-template-columns: repeat(4, 1fr); }
.service-grid.grid-2 { grid-template-columns: repeat(2, 1fr); }
@media (min-width: 1221px) { .service-grid.grid-7 .service-card:last-child { grid-column: 2; } }
.service-card { position: relative; min-height: 455px; padding: 22px 22px 76px; border: 1px solid rgba(7,74,64,.12); border-radius: 28px; overflow: hidden; background: rgba(255,255,255,.5); box-shadow: 0 14px 42px rgba(7,74,64,.055); transition: background .25s, transform .25s, box-shadow .25s; }
.service-card + .service-card { border-left: 1px solid rgba(7,74,64,.12); }
.service-card:hover { background: var(--paper); transform: translateY(-8px) rotate(-.35deg); box-shadow: 0 24px 52px rgba(7,74,64,.12); z-index: 2; }
.card-visual { height: 205px; margin: -4px -4px 30px; border-radius: 20px; overflow: hidden; background: var(--mint); position: relative; }
.card-visual img { width: 100%; height: 100%; object-fit: cover; display: block; transform: scale(1.02); transition: transform .45s ease; }
.service-card:hover .card-visual img { transform: scale(1.07); }
.card-icon { width: 54px; height: 54px; position: absolute; left: 14px; bottom: 14px; display: grid; place-items: center; border-radius: 18px; color: var(--burgundy); background: rgba(255,253,248,.9); box-shadow: 0 8px 24px rgba(60,20,33,.12); backdrop-filter: blur(8px); }
.card-icon svg { width: 34px; height: 34px; }
.card-visual-project-eq img { object-position: 58% 30%; }.card-visual-project-parents img { object-position: 16% 75%; }
.service-card h3 { font-size: 28px; line-height: 1.15; }
.service-card p { margin: 14px 34px 0 0; color: #675c63; font-size: 14px; }
.card-arrow { position: absolute; right: 28px; bottom: 28px; color: var(--terracotta); font-size: 22px; }

.quote-section { max-width: 1440px; min-height: 520px; margin: auto; padding: 90px 12vw; background: var(--plum); color: var(--cream); display: flex; flex-direction: column; justify-content: center; align-items: center; text-align: center; position: relative; }
.quote-section::before, .quote-section::after { content: ""; position: absolute; border: 1px solid rgba(245, 240, 232, .17); border-radius: 50%; }
.quote-section::before { width: 360px; height: 360px; left: -180px; }.quote-section::after { width: 250px; height: 380px; right: -80px; transform: rotate(35deg); }
.quote-section blockquote { max-width: 1000px; font-size: clamp(35px, 4.8vw, 64px); line-height: 1.2; letter-spacing: -.03em; position: relative; z-index: 2; }
.signature { margin-top: 34px; color: var(--terracotta); font: italic 30px/1 var(--serif); }

.about-strip { max-width: 1440px; margin: auto; padding: 120px 8vw; display: grid; grid-template-columns: minmax(300px, .8fr) minmax(380px, 1.2fr); gap: 9vw; align-items: center; background: var(--paper); }
.portrait-placeholder { aspect-ratio: 4 / 5; max-width: 430px; background: linear-gradient(145deg, var(--sage-pale), #d4c4bd); position: relative; overflow: hidden; }
.portrait-placeholder::before { content: ""; position: absolute; width: 70%; height: 70%; border: 1px solid rgba(81, 51, 71, .35); border-radius: 50%; left: 15%; top: 15%; }
.portrait-placeholder::after { content: ""; position: absolute; width: 48%; height: 48%; background: var(--plum); border-radius: 50% 50% 46% 54% / 62% 46% 54% 38%; left: 26%; top: 27%; opacity: .84; }
.portrait-placeholder span { position: absolute; left: 28px; bottom: 20px; z-index: 2; color: white; font: italic 30px/1 var(--serif); }
.about-strip-copy h2 { margin: 18px 0 24px; font-size: clamp(48px, 5.4vw, 76px); line-height: 1; letter-spacing: -.04em; }
.about-strip-copy p { max-width: 650px; font-size: 18px; color: #62575f; }
.button-outline { margin-top: 25px; background: transparent; color: var(--plum); }.button-outline:hover { color: white; }

.contact-band { max-width: 1440px; min-height: 340px; margin: auto; padding: 72px 8vw; background: radial-gradient(circle at 88% 0, rgba(189,151,70,.22), transparent 28rem), linear-gradient(125deg, #4f091f, #7b223d); color: #fff9f3; display: grid; grid-template-columns: minmax(0, 1fr) auto; align-content: center; align-items: center; gap: 7vw; }
.contact-band .kicker { color: #f3dfd7; }
.contact-band h2 { max-width: 720px; margin: 14px 0 12px; font-size: clamp(38px, 4.2vw, 58px); line-height: 1.04; letter-spacing: -.03em; }
.contact-band p { max-width: 630px; margin: 0; color: #ead9df; font-size: 16px; }
.contact-band-actions { min-width: 255px; display: grid; gap: 11px; }
.contact-band-actions .button { min-width: 220px; justify-content: space-between; }
.button-ghost-light { background: transparent; border-color: rgba(255,255,255,.42); color: white; box-shadow: none; }
.button-ghost-light:hover { background: rgba(255,255,255,.1); border-color: white; }
.contact-detail-link { margin-top: 6px; color: #eedee3; font-size: 13px; text-align: center; text-decoration: underline; text-underline-offset: 4px; }
.button-light { background: #fff9f3; color: var(--plum); border-color: #fff9f3; }.button-light:hover { background: var(--plum); color: white; border-color: var(--plum); }

.inner-hero { max-width: 1440px; min-height: 600px; margin: auto; padding: 78px 5vw; position: relative; border-bottom: 1px solid var(--line); display: grid; grid-template-columns: minmax(0, 1fr) minmax(360px, .72fr); gap: 5vw; align-items: center; }
.inner-hero h1 { max-width: 900px; margin-top: 30px; font-size: clamp(46px, 4.8vw, 70px); line-height: 1.02; letter-spacing: -.038em; }
.inner-hero p { max-width: 760px; margin: 32px 0 0; color: #62575f; font-size: 19px; }
.inner-hero-visual { min-height: 390px; border-radius: 52% 48% 18px 18px / 34% 34% 18px 18px; overflow: hidden; box-shadow: 22px 24px 0 var(--mint); transform: rotate(1.5deg); }
.inner-hero-visual img { width: 100%; height: 100%; min-height: 390px; object-fit: cover; display: block; }
.visual-therapy img { object-position: 50% 50%; }.visual-learning img { object-position: 50% 50%; }.visual-process img { object-position: 62% 50%; }
.content-sections { max-width: 1440px; margin: auto; padding: 40px 8vw 110px; background: var(--paper); }
.entry-content > .wp-block-group { max-width: 1100px; margin-left: auto; margin-right: auto; }
.entry-content .wp-block-group__inner-container > :first-child { margin-top: 0; }
.entry-content .wp-block-group__inner-container > :last-child { margin-bottom: 0; }
.content-block { display: grid; grid-template-columns: 160px minmax(0, 780px); gap: 5vw; padding: 75px 0; border-bottom: 1px solid var(--line); }
.content-icon { width: 86px; height: 86px; border-radius: 28px; background: var(--mint); position: relative; }
.content-icon span, .content-icon::before, .content-icon::after { content: ""; position: absolute; }
.content-icon-1::before { width: 28px; height: 28px; border-radius: 50%; background: var(--plum); left: 17px; top: 29px; }.content-icon-1::after { width: 28px; height: 28px; border-radius: 50%; background: var(--terracotta); right: 15px; top: 29px; mix-blend-mode: multiply; }
.content-icon-2::before { width: 44px; height: 44px; border: 2px solid var(--plum); border-radius: 50% 50% 50% 8px; left: 19px; top: 17px; transform: rotate(-18deg); }.content-icon-2::after { width: 12px; height: 12px; background: var(--terracotta); border-radius: 50%; right: 10px; bottom: 10px; }
.content-icon-3::before { width: 46px; height: 2px; background: var(--plum); left: 20px; top: 42px; transform: rotate(-35deg); }.content-icon-3::after { width: 18px; height: 18px; border: 2px solid var(--terracotta); border-radius: 50%; right: 12px; top: 18px; }
.content-block h2 { margin: 10px 0 20px; font-size: clamp(34px, 3.5vw, 48px); line-height: 1.12; letter-spacing: -.025em; }
.content-block p { margin: 0; color: #586a64; font-size: 18px; line-height: 1.75; }
.content-block ul { list-style: none; padding: 20px 0 0; margin: 0; display: grid; gap: 10px; }
.content-block li { position: relative; padding-left: 25px; }.content-block li::before { content: ""; width: 7px; height: 7px; border: 1px solid var(--terracotta); border-radius: 50%; position: absolute; left: 0; top: .65em; }
.service-links { max-width: 1440px; margin: auto; padding: 80px 5vw 30px; display: grid; grid-template-columns: repeat(3, 1fr); }
.article-card time { display: block; margin: 0 0 10px; color: #796d75; font-size: 12px; letter-spacing: .08em; text-transform: uppercase; }
.author-card { max-width: 1120px; margin: 80px auto; padding: 35px; display: grid; grid-template-columns: 150px 1fr; gap: 35px; align-items: center; border: 1px solid var(--line); border-radius: 30px; background: var(--paper); }
.author-card img { width: 150px; height: 150px; object-fit: cover; object-position: center 30%; border-radius: 50%; }
.author-card h2 { margin: 8px 0 12px; font-size: 38px; }
.author-card p { margin: 0 0 18px; }
@media (max-width: 700px) { .author-card { margin: 45px 20px; grid-template-columns: 86px 1fr; gap: 18px; padding: 22px; } .author-card img { width: 86px; height: 86px; } .author-card h2 { font-size: 29px; } }
.service-links a { min-height: 230px; padding: 28px; border: 1px solid var(--line); position: relative; }.service-links a + a { border-left: 0; }.service-links span { color: var(--terracotta); font: italic 18px/1 var(--serif); }.service-links h2 { margin-top: 65px; font-size: 30px; }.service-links b { position: absolute; right: 25px; bottom: 20px; color: var(--terracotta); }
.empty-state { max-width: 1440px; min-height: 390px; margin: auto; padding: 80px 8vw; display: flex; align-items: center; gap: 70px; background: var(--paper); }
.empty-symbol { width: 170px; height: 170px; display: grid; place-items: center; flex: 0 0 auto; border: 1px solid var(--line); border-radius: 50%; color: var(--terracotta); font: italic 70px/1 var(--serif); }.empty-state p { max-width: 600px; font: 32px/1.3 var(--serif); }
.contact-card { max-width: 1440px; margin: auto; padding: 90px 8vw 110px; display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(330px, .7fr); gap: 7vw; align-items: center; background: var(--paper); }
.contact-card h2 { max-width: 720px; margin: 15px 0 18px; font-size: clamp(40px, 4.5vw, 62px); line-height: 1.05; }
.contact-card-copy > p { max-width: 720px; color: #5f6f6a; font-size: 18px; }
.contact-guide { position: relative; padding: 34px; border: 1px solid var(--line); border-radius: 30px; background: linear-gradient(145deg, var(--sage-pale), rgba(255,253,248,.8)); box-shadow: 16px 18px 0 var(--mint); }
.contact-guide-symbol { width: 52px; height: 52px; display: grid; place-items: center; position: absolute; right: 26px; top: 24px; border-radius: 50%; background: var(--burgundy); color: white; font-size: 22px; }
.contact-guide h3 { max-width: 250px; margin-bottom: 25px; font-size: 31px; line-height: 1.08; }
.contact-guide ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 13px; }
.contact-guide li { position: relative; padding-left: 26px; color: #38554d; }
.contact-guide li::before { content: ""; width: 9px; height: 9px; position: absolute; left: 0; top: .55em; border: 2px solid var(--gold); border-radius: 50%; }
.contact-guide p { margin: 26px 0 0; padding-top: 20px; border-top: 1px solid rgba(11,127,120,.18); color: #697972; font-size: 14px; }

.hero-with-photo { grid-template-columns: minmax(0, 1.1fr) minmax(360px, .72fr); column-gap: 5vw; }
.hero-photo-wrap { position: relative; height: 515px; display: flex; justify-content: flex-end; align-items: center; }
.photo-frame { width: min(100%, 385px); height: 485px; position: relative; z-index: 2; overflow: hidden; background: var(--sage-pale); border-radius: 190px 190px 18px 18px; box-shadow: 24px 25px 0 var(--sage-pale); }
.photo-frame img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 43%; display: block; filter: contrast(1.02); }
.photo-orbit { width: 420px; height: 420px; position: absolute; right: -50px; top: 45px; border: 1px solid rgba(7,74,64,.35); border-radius: 50%; }
.photo-caption { position: absolute; right: 0; bottom: -5px; z-index: 3; font-size: 9px; letter-spacing: .16em; text-transform: uppercase; color: #65736e; }
.hero-brand-art { height: 510px; position: relative; display: grid; place-items: center; }
.hero-brand-orbit { position: absolute; border: 1px solid rgba(11,127,120,.24); border-radius: 50%; }
.hero-brand-orbit-one { width: 430px; height: 430px; transform: rotate(18deg); }
.hero-brand-orbit-two { width: 295px; height: 440px; border-color: rgba(91,11,36,.2); transform: rotate(-34deg); }
.hero-logo-disc { width: 330px; height: 330px; position: relative; z-index: 2; display: grid; place-items: center; border-radius: 50%; background: radial-gradient(circle, rgba(255,253,248,.95), rgba(222,236,230,.65)); box-shadow: 0 24px 70px rgba(5,91,86,.1); }
.hero-logo-disc img { width: 88%; height: 88%; object-fit: contain; }
.hero-brand-art > span { position: absolute; right: 0; bottom: 22px; color: #6b7772; font-size: 10px; letter-spacing: .18em; text-transform: uppercase; }
.about-art { aspect-ratio: 3/2; overflow: hidden; border-radius: 32px 32px 32px 120px; background: var(--sage-pale); box-shadow: -18px 18px 0 var(--coral-soft); }
.about-art img { width: 100%; height: 100%; object-fit: cover; display: block; }
.about-art-logo { display: grid; place-items: center; background: radial-gradient(circle at 50% 45%, #fffdf8, var(--sage-pale)); }
.about-art-logo img { width: 78%; height: 78%; object-fit: contain; }
.compact-section { background: var(--paper); }
.compact-section .service-card { min-height: 405px; }
.compact-section .card-visual { height: 220px; }
.project-method { max-width: 1440px; margin: auto; padding: 105px 8vw 112px; display: grid; grid-template-columns: minmax(300px, .78fr) minmax(540px, 1.22fr); gap: 7vw; align-items: start; background: linear-gradient(135deg, #e8f0ec, #f7f0e9); }
.project-method-copy h2 { max-width: 640px; margin: 16px 0 22px; font-size: clamp(40px, 4.7vw, 66px); line-height: 1.03; letter-spacing: -.035em; }
.project-method-copy p { max-width: 610px; margin: 0; color: #586a64; font-size: 17px; line-height: 1.7; }
.project-method-grid { display: grid; grid-template-columns: repeat(2, 1fr); border-top: 1px solid rgba(7,74,64,.22); border-left: 1px solid rgba(7,74,64,.22); }
.project-method-grid article { min-height: 220px; padding: 28px; border-right: 1px solid rgba(7,74,64,.22); border-bottom: 1px solid rgba(7,74,64,.22); background: rgba(255,253,248,.62); }
.project-method-grid article > span { width: 47px; height: 47px; display: grid; place-items: center; border: 1px solid rgba(91,11,36,.28); border-radius: 50%; color: var(--burgundy); font: 24px/1 var(--serif); }
.project-method-grid h3 { margin: 38px 0 8px; font-size: 26px; }
.project-method-grid p { margin: 0; color: #65756f; font-size: 13px; }
.project-snapshot { max-width: 1440px; margin: auto; padding: 76px 8vw 0; background: var(--paper); }
.project-snapshot > div { margin-top: 25px; display: grid; grid-template-columns: repeat(4, 1fr); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.project-snapshot article { min-height: 126px; padding: 25px 24px; display: grid; align-content: center; gap: 8px; }
.project-snapshot article + article { border-left: 1px solid var(--line); }
.project-snapshot article span { color: #738079; font-size: 9px; font-weight: 700; letter-spacing: .15em; text-transform: uppercase; }
.project-snapshot article strong { font: 400 25px/1.2 var(--serif); }
.snapshot-heading { display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.program-status { width: max-content; padding: 8px 13px; position: absolute; top: 18px; left: 18px; z-index: 3; border: 1px solid rgba(255,255,255,.55); border-radius: 999px; color: white; font-size: 9px; font-weight: 800; line-height: 1; letter-spacing: .13em; text-transform: uppercase; box-shadow: 0 9px 22px rgba(25,39,35,.16); }
.snapshot-heading .program-status { position: static; box-shadow: none; }
.status-recruiting { background: #187c5a; }.status-closed { background: #7f3449; }.status-completed { background: #53645e; }.status-planned { background: #b17d25; }
.program-pricing { max-width: 1440px; margin: auto; padding: 90px 8vw 110px; background: linear-gradient(135deg, #e8f0ec, #f8f1e8); }
.pricing-heading { display: grid; grid-template-columns: 150px minmax(0, 800px); gap: 4vw; align-items: start; }
.pricing-heading h2 { font-size: clamp(40px, 4.8vw, 66px); line-height: 1.04; letter-spacing: -.035em; }
.pricing-grid { margin-top: 52px; display: grid; grid-template-columns: repeat(4, 1fr); border-top: 1px solid rgba(7,74,64,.2); border-left: 1px solid rgba(7,74,64,.2); }
.pricing-grid article { min-height: 190px; padding: 26px; display: flex; flex-direction: column; justify-content: space-between; gap: 30px; border-right: 1px solid rgba(7,74,64,.2); border-bottom: 1px solid rgba(7,74,64,.2); background: rgba(255,253,248,.64); }
.pricing-grid span { color: #66766f; font-size: 10px; font-weight: 750; letter-spacing: .13em; text-transform: uppercase; }
.pricing-grid strong { font: 400 24px/1.22 var(--serif); }
.pricing-footer { padding-top: 28px; display: flex; align-items: center; justify-content: space-between; gap: 35px; }
.pricing-footer p { max-width: 670px; margin: 0; color: #5b6c65; font-size: 14px; }
.related-services { max-width: 1440px; margin: auto; padding: 95px 5vw 110px; background: linear-gradient(145deg, #f6f1e9, #e6efeb); }
.related-services > h2 { max-width: 840px; margin: 14px 0 42px; font-size: clamp(40px, 4.5vw, 62px); line-height: 1.04; letter-spacing: -.035em; }
.related-services > div { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }
.related-services.related-count-1 > div { grid-template-columns: minmax(280px, 520px); }
.related-services.related-count-2 > div { grid-template-columns: repeat(2, 1fr); }
.related-services.related-count-4 > div, .related-services.related-count-7 > div { grid-template-columns: repeat(4, 1fr); }
.related-services a { min-height: 142px; padding: 24px; display: grid; grid-template-columns: 52px 1fr auto; gap: 17px; align-items: center; border: 1px solid rgba(7,74,64,.16); border-radius: 23px; background: rgba(255,253,248,.78); box-shadow: 0 12px 35px rgba(7,74,64,.045); transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease; }
.related-services a:hover { transform: translateY(-4px); border-color: rgba(7,74,64,.35); box-shadow: 0 18px 42px rgba(7,74,64,.1); }
.related-icon { width: 52px; height: 52px; padding: 11px; border-radius: 18px; background: var(--mint); color: var(--plum); }
.related-services a > span { display: grid; gap: 8px; }
.related-services strong { font: 400 23px/1.1 var(--serif); }
.related-services small { color: #738079; font-size: 9px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.related-services b { color: var(--gold); font-size: 18px; }
.credentials-list { max-width: 1440px; margin: auto; padding: 50px 6vw 110px; background: var(--paper); }
.credential-academic { margin: 20px 0 74px; padding: 38px 42px; display: grid; grid-template-columns: minmax(220px, .7fr) minmax(0, 1.3fr); gap: 4vw; align-items: center; border-radius: 28px; background: linear-gradient(135deg, var(--sage-pale), #f7efe6); }
.credential-academic p { margin: 0; font: 400 clamp(25px, 2.8vw, 38px)/1.3 var(--serif); }
.credential-group { padding: 72px 0; border-top: 1px solid var(--line); }
.credential-group-heading { margin-bottom: 36px; display: grid; grid-template-columns: minmax(280px, .9fr) minmax(320px, 1.1fr); gap: 6vw; align-items: end; }
.credential-group-heading h2 { max-width: 660px; margin: 12px 0 0; font-size: clamp(38px, 4.2vw, 58px); line-height: 1.05; letter-spacing: -.03em; }
.credential-group-heading p { max-width: 620px; margin: 0; color: #5c6d67; font-size: 16px; line-height: 1.7; }
.credential-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.credential-card { min-width: 0; display: grid; grid-template-columns: minmax(190px, .82fr) minmax(0, 1.18fr); overflow: hidden; border: 1px solid var(--line); border-radius: 26px; background: #fffdfa; box-shadow: 0 14px 36px rgba(7,74,64,.055); scroll-margin-top: 110px; }
.document-image, .credential-mini-image { position: relative; min-width: 0; aspect-ratio: 1 / 1; }
.document-image { --document-inset: 10px; overflow: hidden; background: #eef2ef; border: 0; border-right: 1px solid var(--line); cursor: zoom-in; transition: background .2s ease; }
.document-image:hover { background: #e2ece7; }
.document-image:focus-visible { z-index: 1; outline: 3px solid var(--plum); outline-offset: -3px; }
.document-image img, .credential-mini-image img { position: absolute; inset: var(--document-inset); width: calc(100% - 2 * var(--document-inset)); height: calc(100% - 2 * var(--document-inset)); display: block; object-fit: contain; object-position: center; }
.document-image > span { position: absolute; right: 14px; bottom: 14px; padding: 6px 9px; border-radius: 999px; background: rgba(255,253,248,.92); color: var(--plum); font-size: 9px; font-weight: 750; letter-spacing: .08em; box-shadow: 0 4px 16px rgba(7,74,64,.12); }
.credential-card-copy { min-width: 0; padding: clamp(24px, 2.7vw, 38px); display: flex; flex-direction: column; }
.credential-card h3 { margin: 13px 0 16px; font: 400 clamp(27px, 2.5vw, 39px)/1.08 var(--serif); overflow-wrap: anywhere; }
.credential-card p { margin: 0 0 24px; color: #5c6d67; font-size: 14px; line-height: 1.65; }
.credential-open { width: 100%; margin-top: auto; padding: 18px 0 0; display: flex; justify-content: space-between; gap: 18px; border: 0; border-top: 1px solid var(--line); background: transparent; color: var(--plum); font: inherit; font-size: 10px; font-weight: 750; letter-spacing: .11em; text-align: left; text-transform: uppercase; cursor: pointer; }
.credential-open:hover { color: var(--burgundy); }
.credential-open:focus-visible { outline: 2px solid var(--plum); outline-offset: 5px; }
.credential-open span { color: var(--gold); font-size: 17px; line-height: .7; }
.document-lightbox { position: fixed; inset: 0; z-index: 1000; padding: 18px; display: grid; place-items: center; background: rgba(5, 38, 33, .84); backdrop-filter: blur(10px); }
.document-lightbox[aria-hidden="true"] { display: none; }
.document-lightbox[aria-hidden="false"] { display: grid; }
.document-lightbox-panel { width: min(1180px, 96vw); height: min(930px, 94vh); overflow: hidden; display: grid; grid-template-rows: auto minmax(0, 1fr); border: 1px solid rgba(255,255,255,.28); border-radius: 25px; background: #fffdf8; box-shadow: 0 30px 90px rgba(0,0,0,.35); }
.document-lightbox-panel > header { min-height: 70px; padding: 14px 16px 14px 24px; display: flex; align-items: center; justify-content: space-between; gap: 24px; border-bottom: 1px solid var(--line); }
.document-lightbox-panel > header strong { max-width: 760px; font: 400 clamp(20px, 2.2vw, 31px)/1.15 var(--serif); }
.document-lightbox-panel > header > div { display: flex; align-items: center; gap: 9px; }
.document-zoom-button, .document-lightbox-close { border: 1px solid var(--line); background: white; color: var(--plum-dark); cursor: pointer; }
.document-zoom-button { min-height: 42px; padding: 0 17px; border-radius: 999px; font-size: 11px; font-weight: 750; letter-spacing: .08em; text-transform: uppercase; }
.document-lightbox-close { width: 44px; height: 44px; border-radius: 50%; font: 300 31px/1 sans-serif; }
.document-zoom-button:hover, .document-lightbox-close:hover { background: var(--sage-pale); }
.document-zoom-button:focus-visible, .document-lightbox-close:focus-visible { outline: 3px solid var(--gold); outline-offset: 2px; }
.document-lightbox-viewport { min-height: 0; overflow: auto; display: grid; place-items: center; padding: 20px; background: #e8efeb; overscroll-behavior: contain; }
.document-lightbox-image { min-width: 0; padding: 0; display: block; border: 0; background: transparent; cursor: zoom-in; }
.document-lightbox-image img { width: auto; max-width: 100%; height: auto; max-height: calc(94vh - 112px); display: block; object-fit: contain; box-shadow: 0 12px 38px rgba(7,74,64,.14); }
.document-lightbox-panel.is-zoomed .document-lightbox-viewport { display: block; }
.document-lightbox-panel.is-zoomed .document-lightbox-image { width: 150%; max-width: 1680px; margin: 0 auto; cursor: zoom-out; }
.document-lightbox-panel.is-zoomed .document-lightbox-image img { width: 100%; max-width: none; max-height: none; }
.document-placeholder { aspect-ratio: 1 / 1; padding: 28px; display: flex; flex-direction: column; justify-content: space-between; background: #edf2ef; border: 9px solid white; box-shadow: 0 12px 35px rgba(7,74,64,.1); color: #75817c; }
.document-placeholder span { max-width: 230px; font-size: 11px; letter-spacing: .08em; text-transform: uppercase; }
.document-placeholder b { align-self: flex-end; color: var(--terracotta); font: 500 44px/1 var(--serif); }
.credential-icon-2 { transform: rotate(12deg); }.credential-icon-3 { color: var(--plum) !important; }
.demo-label { display: inline-block; margin-top: 20px; padding: 7px 12px; border: 1px solid var(--line); border-radius: 20px; font-size: 9px; letter-spacing: .14em; text-transform: uppercase; }
.articles-catalog { max-width: 1440px; margin: auto; padding: 90px 5vw 120px; background: var(--paper); }
.article-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.article-grid-4 { grid-template-columns: repeat(2, 1fr); }
.article-card { min-width: 0; overflow: hidden; display: flex; flex-direction: column; border: 1px solid var(--line); border-radius: 28px; background: #fffdfa; box-shadow: 0 14px 36px rgba(7,74,64,.055); transition: transform .2s ease, box-shadow .2s ease; }
.article-card:hover { transform: translateY(-6px); box-shadow: 0 22px 48px rgba(7,74,64,.12); }
.article-cover { aspect-ratio: 3 / 2; overflow: hidden; background: var(--sage-pale); }
.article-cover img { width: 100%; height: 100%; display: block; object-fit: cover; transition: transform .35s ease; }
.article-card:hover .article-cover img { transform: scale(1.025); }
.article-card-copy { min-height: 390px; padding: 28px; display: flex; flex-direction: column; }
.article-meta { display: flex; justify-content: space-between; gap: 16px; color: var(--burgundy); font-size: 9px; font-weight: 700; letter-spacing: .13em; text-transform: uppercase; }
.article-meta b { color: #7b8782; font-weight: 650; white-space: nowrap; }
.article-card h3 { margin: 48px 0 18px; font-size: clamp(29px, 2.4vw, 37px); line-height: 1.08; }
.article-card p { margin: 0 0 28px; color: #65756f; font-size: 14px; line-height: 1.65; }
.article-card-copy > strong { margin-top: auto; padding-top: 20px; display: flex; justify-content: space-between; border-top: 1px solid var(--line); color: var(--plum); font-size: 11px; letter-spacing: .09em; text-transform: uppercase; }
.article-card-copy > strong i { color: var(--gold); font-style: normal; font-size: 18px; }
.article-page { max-width: 1440px; margin: auto; padding: 0 8vw 120px; background: var(--paper); }
.article-publication-meta { max-width: 830px; margin: 0 auto; padding: 38px 0; display: flex; gap: 28px; border-bottom: 1px solid var(--line); color: #738079; font-size: 10px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; }
.article-body { max-width: 830px; margin: 0 auto; }
.article-body section { padding: 75px 0; border-bottom: 1px solid var(--line); }
.article-body h2 { margin: 15px 0 24px; font-size: clamp(38px, 4.2vw, 57px); line-height: 1.07; letter-spacing: -.03em; }
.article-body p { margin: 0; color: #445b54; font-size: 19px; line-height: 1.82; }
.article-body p + p { margin-top: 22px; }
.article-sources { margin: 30px 0 0; padding-left: 24px; display: grid; gap: 12px; }
.article-sources a { color: var(--teal); text-decoration: underline; text-decoration-color: rgba(7,74,64,.24); text-underline-offset: 4px; }
.article-sources a span { margin-left: 8px; color: var(--terracotta); }

.language-support { max-width: 1440px; margin: auto; padding: 82px 8vw; display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(360px, .85fr); gap: 7vw; align-items: center; overflow: hidden; position: relative; background: linear-gradient(135deg, #e4f0eb 0%, #f8f2e9 58%, #f2e2dc 100%); }
.language-support::after { content: "A"; position: absolute; right: -28px; bottom: -96px; color: rgba(7,74,64,.055); font: 400 310px/1 var(--serif); pointer-events: none; }
.language-support-multilingual { background: linear-gradient(135deg, #d9ece6 0%, #fbf5eb 52%, #ead6d6 100%); }
.language-support-copy { position: relative; z-index: 1; }
.language-support h2 { max-width: 800px; margin: 14px 0 20px; font-size: clamp(38px, 4.4vw, 62px); line-height: 1.03; letter-spacing: -.035em; }
.language-support p { max-width: 780px; margin: 0; color: #53665f; font-size: 17px; line-height: 1.7; }
.language-support small { display: block; margin-top: 24px; color: var(--burgundy); font-size: 11px; font-weight: 650; letter-spacing: .1em; text-transform: uppercase; }
.language-support-list { position: relative; z-index: 1; display: grid; gap: 12px; }
.language-support-list span { min-height: 86px; padding: 19px 23px; display: flex; align-items: center; gap: 20px; border: 1px solid rgba(7,74,64,.13); border-radius: 22px; background: rgba(255,253,248,.78); color: var(--teal); font: 400 25px/1 var(--serif); box-shadow: 0 12px 32px rgba(7,74,64,.055); }
.language-support-list b { width: 46px; height: 46px; display: grid; place-items: center; flex: 0 0 auto; border-radius: 50%; background: var(--teal); color: white; font: 700 10px/1 var(--sans); letter-spacing: .12em; }
.article-body ul { margin: 30px 0 0; padding: 0; list-style: none; display: grid; gap: 13px; }
.article-body li { position: relative; padding-left: 28px; color: #50655e; font-size: 17px; }
.article-body li::before { content: ""; width: 9px; height: 9px; position: absolute; left: 0; top: .55em; border: 2px solid var(--gold); border-radius: 50%; }
.author-card { margin-top: 95px; padding: 46px; display: grid; grid-template-columns: 150px minmax(0, 1fr); gap: 44px; align-items: center; border-radius: 38px; background: radial-gradient(circle at 0 0, rgba(11,127,120,.24), transparent 28rem), var(--plum-dark); color: white; }
.author-mark { width: 150px; height: 150px; display: grid; place-items: center; border-radius: 50%; background: #fffdfa; }
.author-mark img { width: 90%; height: 90%; object-fit: contain; }
.author-card .kicker { color: #bfded5; }
.author-card h2 { margin: 11px 0 5px; color: white; font-size: clamp(38px, 4vw, 56px); }
.author-card strong { color: #f0dca7; font-size: 13px; }
.author-card p { max-width: 780px; margin: 18px 0 0; color: #d8e5e1; font-size: 16px; line-height: 1.65; }
.author-actions { margin-top: 28px; display: flex; flex-wrap: wrap; gap: 28px; align-items: center; }
.text-link-light { color: white; }
.seo-links { max-width: 1440px; margin: auto; padding: 95px 8vw 110px; background: #e7eeea; }
.seo-links h2 { margin: 13px 0 38px; max-width: 750px; font-size: clamp(40px, 4.5vw, 64px); line-height: 1.05; }
.seo-links > div { display: grid; grid-template-columns: 1fr 1fr; }
.seo-links a { min-height: 65px; padding: 18px 4px; border-top: 1px solid rgba(7,74,64,.24); display: flex; justify-content: space-between; align-items: center; margin-right: 34px; font: 24px/1.2 var(--serif); }
.seo-links a b { color: var(--terracotta); font-family: var(--sans); font-size: 17px; }
.seo-hero { background: linear-gradient(120deg, var(--cream), #e4ede8); }
.messenger-actions { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 40px; }
.messenger-button { min-width: 190px; padding: 18px 24px; border-radius: 999px; display: flex; justify-content: space-between; align-items: center; color: white; font-weight: 650; box-shadow: 0 12px 28px rgba(7,74,64,.12); transition: transform .2s ease, box-shadow .2s ease; }
.messenger-button:hover { transform: translateY(-3px); box-shadow: 0 18px 36px rgba(7,74,64,.2); }
.messenger-button.whatsapp { background: #1e8f66; }.messenger-button.telegram { background: #2389ad; }
.contact-direct { margin-top: 28px; display: flex; flex-wrap: wrap; gap: 10px 22px; color: var(--plum); font-weight: 650; }
.messenger-mark { width: 30px; height: 30px; margin: -6px 2px -6px -9px; display: grid; place-items: center; border-radius: 50%; background: rgba(255,255,255,.18); font-size: 12px; }

.about-portrait-visual { height: 480px; border-radius: 220px 220px 24px 24px; transform: none; box-shadow: 20px 22px 0 var(--sage-pale); }
.about-portrait-visual img { height: 100%; object-position: 50% 42%; }
.about-profile { max-width: 1440px; margin: auto; padding: 100px 8vw 120px; background: var(--paper); }
.about-profile-intro { display: grid; grid-template-columns: 160px minmax(0, 900px); gap: 4vw; align-items: start; }
.about-profile-intro p { margin: 0; font: 400 clamp(30px, 3.4vw, 48px)/1.28 var(--serif); letter-spacing: -.02em; }
.about-facts { margin: 70px 0 90px; display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.about-facts > div { padding: 25px 24px; display: grid; gap: 6px; }
.about-facts > div + div { border-left: 1px solid var(--line); }
.about-facts span { color: #738079; font-size: 10px; font-weight: 700; letter-spacing: .15em; text-transform: uppercase; }
.about-facts strong { font: 400 25px/1.2 var(--serif); }
.about-story-list { display: grid; gap: 26px; }
.about-story-list article { min-height: 430px; overflow: hidden; display: grid; grid-template-columns: minmax(300px, .9fr) minmax(360px, 1.1fr); align-items: stretch; border: 1px solid var(--line); border-radius: 34px; background: linear-gradient(145deg, rgba(222,236,230,.46), rgba(255,253,248,.95)); }
.about-story-list article:nth-child(even) { grid-template-columns: minmax(360px, 1.1fr) minmax(300px, .9fr); background: linear-gradient(145deg, rgba(234,217,209,.55), rgba(255,253,248,.95)); }
.about-story-list article:nth-child(even) .about-story-visual { order: 2; }
.about-story-visual { min-height: 430px; overflow: hidden; }
.about-story-visual img { width: 100%; height: 100%; display: block; object-fit: cover; }
.about-story-copy { padding: clamp(36px, 5vw, 70px); display: flex; flex-direction: column; justify-content: center; }
.story-symbol { width: 66px; height: 66px; margin-bottom: 48px; position: relative; border-radius: 22px; background: var(--mint); transform: rotate(-5deg); }
.story-symbol::before, .story-symbol::after, .story-symbol span { content: ""; position: absolute; border: 1.5px solid var(--plum); border-radius: 50%; }
.story-symbol::before { width: 27px; height: 27px; left: 12px; top: 12px; }
.story-symbol::after { width: 25px; height: 35px; right: 9px; bottom: 8px; border-color: var(--burgundy); }
.story-symbol span { width: 12px; height: 12px; left: 27px; top: 27px; background: var(--gold); border: 0; }
.story-symbol-2 { transform: rotate(7deg); }.story-symbol-3 { border-radius: 50%; }.story-symbol-4 { transform: rotate(45deg); }
.about-story-list h2 { max-width: 620px; margin: 12px 0 18px; font-size: clamp(34px, 3.4vw, 50px); line-height: 1.07; }
.about-story-list p { margin: 0; color: #586a64; font-size: 17px; line-height: 1.75; }
.about-story-list .story-symbol { margin: 34px 0 0; }
.credentials-preview { margin-top: 72px; padding-top: 56px; border-top: 1px solid var(--line); }
.credentials-preview-heading { max-width: 750px; margin-bottom: 30px; }
.credentials-preview h2 { margin: 12px 0 18px; font-size: clamp(32px, 3.5vw, 48px); line-height: 1.12; }
.credentials-preview-heading p { margin: 0; color: #586a64; font-size: 17px; line-height: 1.65; }
.credentials-preview-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; }
.credential-mini { min-width: 0; border: 1px solid var(--line); border-radius: 20px; overflow: hidden; background: #fffdf8; }
.credential-mini-link { display: block; height: 100%; border-radius: inherit; transition: background .2s ease; }
.credential-mini-link:hover { background: var(--sage-pale); }
.credential-mini-link:focus-visible { outline: 3px solid var(--plum); outline-offset: -3px; }
.credential-mini-image { --document-inset: 14px; background: #f0f4ef; border-bottom: 1px solid var(--line); }
.credential-mini-copy { padding: 20px 18px 24px; }
.credential-mini-date { color: var(--plum); font-size: 12px; font-weight: 650; }
.credential-mini h3 { margin: 12px 0; font: 400 22px/1.25 var(--serif); overflow-wrap: anywhere; }
.credential-mini h3 span { color: var(--plum); white-space: nowrap; }
.credential-mini p { margin: 0; color: #586a64; font-size: 14px; line-height: 1.6; }
.credentials-preview > .button { margin-top: 30px; }
@media (max-width: 1180px) {
  .credential-grid { grid-template-columns: 1fr; }
  .credential-card { grid-template-columns: minmax(220px, .72fr) minmax(0, 1.28fr); }
}
@media (max-width: 1050px) {
  .credentials-preview-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .credential-group-heading { grid-template-columns: 1fr; gap: 18px; align-items: start; }
}
@media (max-width: 540px) {
  .credentials-preview { margin-top: 50px; padding-top: 40px; }
  .credentials-preview-grid { grid-template-columns: 1fr; gap: 16px; }
  .credential-mini-link { display: grid; grid-template-columns: minmax(90px, .75fr) minmax(0, 1.25fr); align-items: start; }
  .credential-mini-image { --document-inset: 8px; margin: 16px 0 16px 12px; border: 1px solid var(--line); border-radius: 8px; }
  .credential-mini-copy { padding: 18px 14px; }
  .credential-mini h3 { font-size: 20px; }
  .credentials-preview > .button { width: 100%; }
  .credential-card { grid-template-columns: 1fr; }
  .document-image { border-right: 0; border-bottom: 1px solid var(--line); }
  .credential-card-copy { padding: 26px 22px 30px; }
  .credential-group { padding: 54px 0; }
  .credential-group-heading { margin-bottom: 26px; }
  .credential-group-heading h2 { font-size: 35px; }
  .document-lightbox { padding: 8px; }
  .document-lightbox-panel { width: 100%; height: 96vh; border-radius: 18px; }
  .document-lightbox-panel > header { min-height: 64px; padding: 10px 10px 10px 16px; gap: 10px; }
  .document-lightbox-panel > header strong { max-width: 50vw; font-size: 18px; }
  .document-zoom-button { min-height: 40px; padding: 0 12px; font-size: 9px; }
  .document-lightbox-close { width: 42px; height: 42px; }
  .document-lightbox-viewport { padding: 10px; }
  .document-lightbox-panel.is-zoomed .document-lightbox-image { width: 205%; }
}
.about-closing { margin-top: 80px; padding: 46px; display: grid; grid-template-columns: 100px minmax(0, 1fr) auto; gap: 36px; align-items: center; border-radius: 34px; background: var(--plum-dark); color: white; }
.about-closing img { width: 100px; height: 100px; object-fit: contain; }
.about-closing p { margin: 0; font: 400 clamp(25px, 2.7vw, 38px)/1.25 var(--serif); }
.about-closing .button { background: white; border-color: white; color: var(--plum-dark); box-shadow: none; }

.coworking-page { max-width: 1440px; margin: auto; padding: 70px 8vw 120px; background: var(--paper); }
.coworking-facts { margin: 55px 0 85px; display: grid; grid-template-columns: repeat(4, 1fr); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.coworking-facts div { min-height: 120px; padding: 25px; display: grid; align-content: center; gap: 5px; }
.coworking-facts div + div { border-left: 1px solid var(--line); }
.coworking-facts strong { font: 400 35px/1 var(--serif); color: var(--burgundy); }
.coworking-facts span { color: #6d7a75; font-size: 11px; letter-spacing: .08em; text-transform: uppercase; }
.coworking-story { display: grid; gap: 28px; }
.coworking-story article { min-height: 430px; overflow: hidden; display: grid; grid-template-columns: 1fr 1fr; align-items: stretch; border-radius: 34px; background: var(--sage-pale); }
.coworking-story article:nth-child(even) .coworking-photo { order: 2; }
.coworking-story article > div:last-child { padding: clamp(35px, 5vw, 70px); display: flex; flex-direction: column; justify-content: center; }
.coworking-photo img { width: 100%; height: 100%; display: block; object-fit: cover; }
.coworking-story h2 { margin: 13px 0 20px; font-size: clamp(36px, 4vw, 56px); line-height: 1.04; }
.coworking-story p { margin: 0; color: #4f635c; font-size: 17px; line-height: 1.72; }

.booking-section { max-width: 1440px; margin: auto; padding: 95px 8vw 120px; display: grid; grid-template-columns: minmax(280px, .72fr) minmax(520px, 1.28fr); gap: 6vw; align-items: start; background: linear-gradient(135deg, #e7f0eb, #f6eee6); }
.booking-copy h2 { margin: 14px 0 20px; font-size: clamp(40px, 4.7vw, 64px); line-height: 1.03; }
.booking-timezone { margin: 28px 0 22px; padding: 14px 17px; display: block; border-left: 4px solid var(--gold); background: rgba(255,253,248,.7); color: var(--burgundy); font-size: 14px; }
.booking-form-shell { min-height: 630px; padding: 18px; overflow: hidden; border-radius: 30px; background: white; box-shadow: 0 20px 55px rgba(7,74,64,.12); }
.bitrix-booking-form { min-height: 590px; }
.bitrix-booking-form .b24-form { min-height: 590px; }

.journey-section { max-width: 1440px; margin: auto; padding: 95px 8vw 105px; background: var(--sage-pale); }
.journey-section > h2 { max-width: 780px; margin: 14px 0 48px; font-size: clamp(38px, 4.2vw, 58px); line-height: 1.06; }
.journey-grid { display: grid; grid-template-columns: repeat(4, 1fr); position: relative; }
.journey-grid::before { content: ""; position: absolute; left: 10%; right: 10%; top: 31px; height: 1px; background: rgba(11,127,120,.3); }
.journey-grid article { position: relative; z-index: 2; padding-right: 28px; }
.journey-grid article > span { width: 62px; height: 62px; display: grid; place-items: center; border: 1px solid rgba(11,127,120,.28); border-radius: 50%; background: var(--paper); color: var(--burgundy); font-size: 23px; }
.journey-grid h3 { margin: 22px 0 7px; font-size: 25px; }
.journey-grid p { max-width: 210px; margin: 0; color: #5c6e68; font-size: 14px; }
.service-faq { max-width: 1440px; margin: auto; padding: 95px 8vw 115px; background: var(--paper); }
.service-faq > h2 { max-width: 850px; margin: 14px 0 45px; font-size: clamp(38px, 4.2vw, 58px); line-height: 1.06; }
.service-faq > div { max-width: 980px; }
.service-faq details { border-top: 1px solid var(--line); }
.service-faq details:last-child { border-bottom: 1px solid var(--line); }
.service-faq summary { list-style: none; padding: 23px 0; display: flex; justify-content: space-between; gap: 25px; cursor: pointer; font: 400 24px/1.25 var(--serif); }
.service-faq summary::-webkit-details-marker { display: none; }
.service-faq summary span { color: var(--gold); font-family: var(--sans); transition: transform .2s ease; }
.service-faq details[open] summary span { transform: rotate(45deg); }
.service-faq details p { max-width: 790px; margin: -3px 0 25px; color: #5d6e68; font-size: 16px; }

.tests-catalog { max-width: 1440px; margin: auto; padding: 105px 5vw 80px; background: var(--paper); }
.tests-catalog > h2 { max-width: 820px; margin: 14px 0 48px; font-size: clamp(42px, 5vw, 70px); line-height: 1.02; letter-spacing: -.035em; }
.test-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.test-card { min-height: 330px; padding: 28px; display: flex; flex-direction: column; border: 1px solid var(--line); border-radius: 28px; background: linear-gradient(145deg, rgba(222,236,230,.55), rgba(255,253,248,.94)); box-shadow: 0 14px 38px rgba(5,91,86,.06); transition: transform .2s ease, box-shadow .2s ease; }
.test-card:nth-child(2), .test-card:nth-child(5) { background: linear-gradient(145deg, rgba(234,217,209,.7), rgba(255,253,248,.96)); }
.test-card:hover { transform: translateY(-6px); box-shadow: 0 22px 48px rgba(5,91,86,.12); }
.test-card > div { display: flex; align-items: center; justify-content: space-between; color: var(--burgundy); font-size: 10px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; }
.test-card h3 { margin-top: 52px; font-size: 35px; line-height: 1.05; }
.test-card p { margin: 16px 0 28px; color: #61736d; font-size: 14px; }
.test-card strong { margin-top: auto; display: flex; align-items: center; justify-content: space-between; color: var(--plum); font-size: 12px; }
.test-card strong i { color: var(--gold); font-style: normal; font-size: 20px; }
.tests-notice { max-width: 900px; margin: 32px 0 0; padding: 20px 24px; border-left: 3px solid var(--gold); background: rgba(234,223,189,.45); color: #5f6f6a; font-size: 13px; }

.quiz-shell { max-width: 1440px; margin: auto; padding: 100px 8vw 120px; display: grid; grid-template-columns: minmax(260px,.65fr) minmax(420px,1fr); gap: 7vw; align-items: start; }
.quiz-intro h2 { margin: 16px 0 24px; font-size: clamp(42px, 4.8vw, 68px); line-height: 1.03; letter-spacing: -.035em; }
.quiz-intro p { color: #62726c; }
.quiz-card { min-height: 560px; padding: 38px; border-radius: 36px; background: var(--plum-dark); color: white; box-shadow: 24px 26px 0 var(--mint); }
.quiz-progress { display: grid; gap: 11px; color: #d8eae4; font-size: 10px; letter-spacing: .15em; text-transform: uppercase; }
.quiz-progress > div { height: 5px; overflow: hidden; border-radius: 999px; background: rgba(255,255,255,.12); }
.quiz-progress i { height: 100%; display: block; border-radius: 999px; background: linear-gradient(90deg, var(--gold), #e4c97f); transition: width .25s ease; }
.quiz-hint { display: block; margin-top: 30px; color: #a9cfc6; font-size: 11px; }
.quiz-card h3 { margin: 12px 0 27px; font-size: clamp(32px, 3.2vw, 48px); line-height: 1.08; }
.quiz-options { display: grid; gap: 10px; }
.quiz-options button { width: 100%; min-height: 60px; padding: 14px 17px; display: flex; justify-content: space-between; align-items: center; border: 1px solid rgba(255,255,255,.16); border-radius: 17px; background: rgba(255,255,255,.04); color: white; text-align: left; font: inherit; cursor: pointer; transition: background .2s ease, border .2s ease, transform .2s ease; }
.quiz-options button:hover, .quiz-options button.selected { background: rgba(205,230,222,.16); border-color: rgba(228,201,127,.7); transform: translateX(3px); }
.quiz-options button b { width: 24px; color: #e4c97f; text-align: right; }
.quiz-next { margin-top: 28px; background: var(--burgundy); border-color: var(--burgundy); box-shadow: none; }
.quiz-next:disabled { opacity: .45; cursor: not-allowed; transform: none; }
.quiz-result h3 { color: #f4dfab; font-size: clamp(50px, 6vw, 78px); }
.quiz-result p { color: #d5e6e0; font-size: 18px; }
.quiz-result strong { margin-top: 16px; display: block; color: white; font-size: 14px; font-weight: 550; }
.quiz-result small { margin: 28px 0; display: block; padding-top: 18px; border-top: 1px solid rgba(255,255,255,.15); color: #a9cfc6; font-size: 11px; }

.site-footer { max-width: 1440px; margin: auto; padding: 68px 5vw 28px; background: var(--plum-dark); color: var(--cream); }
.footer-main { display: grid; grid-template-columns: minmax(320px, 1fr) minmax(430px, .8fr); gap: 7vw; align-items: start; padding-bottom: 62px; }
.brand-footer .brand-mark { width: 72px; height: 72px; background: transparent; color: var(--plum); }
.brand-footer .brand-text strong { font-size: 24px; color: white; }
.brand-footer .brand-text small { max-width: 430px; color: #c7d8d2; text-transform: none; letter-spacing: .01em; font-size: 14px; line-height: 1.45; }
.footer-links { display: grid; grid-template-columns: repeat(2, minmax(150px, 1fr)); column-gap: 65px; row-gap: 16px; font-size: 15px; color: #dce8e4; }
.footer-links a:hover { color: white; text-decoration: underline; text-underline-offset: 5px; }
.footer-meta { padding-top: 22px; border-top: 1px solid rgba(255,255,255,.15); display: flex; justify-content: space-between; color: #a9c1b9; font-size: 10px; text-transform: uppercase; letter-spacing: .14em; }

@media (max-width: 1220px) {
  .desktop-nav { display: none; }.mobile-menu { display: block; }.header-actions .button { display: none; }.mobile-menu summary { list-style: none; cursor: pointer; font-size: 12px; text-transform: uppercase; letter-spacing: .12em; }.mobile-menu summary::-webkit-details-marker { display: none; }.mobile-panel { position: absolute; width: min(390px, 94vw); right: 0; top: 35px; max-height: calc(100vh - 100px); overflow-y: auto; padding: 26px; display: grid; gap: 14px; background: var(--paper); border: 1px solid var(--line); border-radius: 22px; box-shadow: 0 20px 45px rgba(45,37,48,.16); }.mobile-panel > a { font-family: var(--serif); font-size: 23px; }.mobile-panel .language-switcher { margin-top: 12px; }
  .mobile-section-link { color: var(--burgundy); }
  .mobile-submenu { margin: -5px 0 6px; padding: 8px 0 10px 14px; display: grid; gap: 7px; border-left: 1px solid var(--gold); }
  .mobile-submenu a { display: grid; grid-template-columns: 28px 1fr; gap: 10px; align-items: center; color: #586a64; font-size: 13px; }
  .mobile-submenu .submenu-icon { width: 24px; height: 24px; }
  .hero { grid-template-columns: 1fr .6fr; }.hero-art { margin-left: 0; transform: scale(.82); transform-origin: center right; }.hero h1 { font-size: clamp(53px, 7vw, 78px); }.service-grid.grid-4 { grid-template-columns: repeat(2, 1fr); }.service-grid.grid-4 .service-card:nth-child(3) { border-left: 1px solid var(--line); }.service-grid.grid-4 .service-card:nth-child(n+3) { border-top: 0; }.service-card { min-height: 440px; }.contact-band { grid-template-columns: 1fr; }.contact-band .button { justify-self: start; margin-top: 18px; }
  .hero-with-photo { grid-template-columns: 1fr minmax(300px, .7fr); }.photo-frame { height: 440px; }.photo-orbit { width: 360px; height: 360px; }.article-grid { grid-template-columns: 1fr 1fr; }
  .inner-hero { grid-template-columns: minmax(0, 1fr) minmax(300px, .7fr); padding-left: 5vw; padding-right: 5vw; }.inner-hero-visual, .inner-hero-visual img { min-height: 330px; }
  .test-grid { grid-template-columns: repeat(2, 1fr); }.quiz-shell { grid-template-columns: 1fr; }.quiz-intro { max-width: 760px; }
  .contact-card { grid-template-columns: 1fr; }.contact-guide { max-width: 680px; }
  .about-closing { grid-template-columns: 90px 1fr; }.about-closing .button { grid-column: 2; justify-self: start; }
  .journey-grid { grid-template-columns: repeat(2, 1fr); gap: 38px 18px; }.journey-grid::before { display: none; }
  .project-method { grid-template-columns: 1fr; }.project-method-copy { max-width: 780px; }.project-snapshot > div { grid-template-columns: repeat(2, 1fr); }.project-snapshot article:nth-child(3) { border-left: 0; }.project-snapshot article:nth-child(n+3) { border-top: 1px solid var(--line); }
  .pricing-grid { grid-template-columns: repeat(2, 1fr); }.booking-section { grid-template-columns: 1fr; }.booking-copy { max-width: 760px; }.about-story-list article, .about-story-list article:nth-child(even) { grid-template-columns: minmax(280px, .8fr) minmax(360px, 1.2fr); }.coworking-story article { grid-template-columns: minmax(280px, .8fr) minmax(360px, 1.2fr); }
  .related-services.related-count-4 > div, .related-services.related-count-7 > div { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 760px) {
  .site-header { height: 78px; padding: 0 20px; }.brand-mark { width: 40px; height: 40px; }.brand-text strong { font-size: 15px; }.brand-text small { font-size: 8px; }.header-actions { margin-left: auto; margin-right: 16px; }.header-actions .language-switcher { display: none; }
  .hero { min-height: auto; padding: 75px 22px 95px; grid-template-columns: 1fr; }.hero h1 { font-size: clamp(45px, 12vw, 58px); }.hero-lead { font-size: 17px; }.hero-actions { align-items: flex-start; flex-direction: column; gap: 25px; }.hero-art { height: 310px; width: 330px; max-width: 100%; margin: 45px auto 0; transform: none; }.orbit-one { width: 280px; height: 280px; right: 0; }.orbit-two { width: 190px; height: 280px; right: 66px; }.shape-plum { width: 135px; height: 210px; right: 82px; top: 58px; }.shape-sage { width: 90px; height: 90px; bottom: 17px; }.hero-note { right: 0; }.hero-bottom { left: 22px; right: 22px; flex-direction: column; gap: 6px; padding: 16px 0; }
  .hero-photo-wrap { width: min(100%, 390px); height: 485px; margin: 45px auto 15px; }.photo-frame { width: calc(100% - 25px); height: 450px; }.photo-orbit { width: 330px; height: 330px; right: -35px; }.photo-caption { bottom: 0; }
  .hero-brand-art { width: min(100%, 390px); height: 410px; margin: 38px auto 10px; }.hero-brand-orbit-one { width: 340px; height: 340px; }.hero-brand-orbit-two { width: 230px; height: 355px; }.hero-logo-disc { width: 260px; height: 260px; }.hero-brand-art > span { right: 10px; }
  .intro-section { min-height: 0; padding: 75px 22px; grid-template-columns: 1fr; gap: 30px; }.intro-section p { font-size: 34px; }
  .services-section { padding: 85px 22px; }.section-heading { align-items: flex-start; flex-direction: column; gap: 28px; }.section-heading h2 { font-size: 45px; }.service-grid, .service-grid.grid-4, .service-grid.grid-2, .service-links { grid-template-columns: 1fr; }.service-card { min-height: 410px; }.service-card + .service-card, .service-grid.grid-4 .service-card:nth-child(n+2), .service-links a + a { border-left: 1px solid var(--line); border-top: 0; }
  .quote-section { min-height: 470px; padding: 75px 26px; }.quote-section blockquote { font-size: 35px; }
  .about-strip { padding: 85px 22px; grid-template-columns: 1fr; gap: 60px; }.about-art { max-width: 100%; border-radius: 24px 24px 24px 76px; }.about-strip-copy h2 { font-size: 50px; }
  .contact-band { padding: 62px 22px; min-height: 0; }.contact-band h2 { font-size: 42px; }.contact-band-actions { width: 100%; min-width: 0; }.contact-band-actions .button { width: 100%; }
  .inner-hero { min-height: 0; padding: 72px 22px 70px; grid-template-columns: 1fr; gap: 55px; }.inner-hero h1 { font-size: 43px; }.inner-hero p { font-size: 17px; }.inner-hero-visual, .inner-hero-visual img { min-height: 260px; }.inner-hero-visual { border-radius: 34px 34px 12px 70px; box-shadow: 12px 14px 0 var(--mint); }
  .content-sections { padding: 20px 22px 70px; }.content-block { grid-template-columns: 1fr; gap: 26px; padding: 60px 0; }.content-block h2 { font-size: 35px; }.service-links { padding: 55px 22px 20px; }.empty-state { padding: 70px 22px; flex-direction: column; align-items: flex-start; gap: 38px; }.empty-state p { font-size: 28px; }.contact-card { padding: 68px 22px 88px; }.contact-card h2 { font-size: 41px; }.contact-guide { padding: 28px; box-shadow: 10px 12px 0 var(--mint); }.credentials-list { padding: 35px 22px 70px; }.credential-row { grid-template-columns: 1fr; gap: 35px; }.articles-catalog { padding: 65px 22px 85px; }.article-grid { grid-template-columns: 1fr; }.article-card-copy { min-height: 340px; }.article-page { padding: 0 22px 88px; }.article-publication-meta { padding: 28px 0; }.article-body section { padding: 58px 0; }.article-body p { font-size: 17px; }.author-card { margin-top: 65px; padding: 30px; grid-template-columns: 76px 1fr; gap: 22px; }.author-mark { width: 76px; height: 76px; }.author-card > div:nth-child(2) { grid-column: 1 / -1; }.author-actions { align-items: stretch; flex-direction: column; }.author-actions .button { width: 100%; }.seo-links { padding: 70px 22px; }.seo-links > div { grid-template-columns: 1fr; }.seo-links a { margin-right: 0; font-size: 21px; }
  .site-footer { padding: 60px 22px 24px; }.footer-main { grid-template-columns: 1fr; gap: 55px; }.footer-links { grid-template-columns: 1fr 1fr; column-gap: 40px; }.footer-meta { gap: 20px; flex-direction: column; }
  .tests-catalog { padding: 80px 22px 65px; }.test-grid { grid-template-columns: 1fr; }.test-card { min-height: 290px; }.quiz-shell { padding: 75px 22px 100px; }.quiz-card { min-height: 0; padding: 25px; border-radius: 26px; box-shadow: 12px 14px 0 var(--mint); }.quiz-card h3 { font-size: 34px; }.quiz-options button { min-height: 58px; }.tests-notice { margin-top: 24px; }
  .about-portrait-visual { height: 420px; }.about-profile { padding: 72px 22px 90px; }.about-profile-intro { grid-template-columns: 1fr; gap: 24px; }.about-profile-intro p { font-size: 30px; }.about-facts { margin: 50px 0 65px; grid-template-columns: 1fr; }.about-facts > div + div { border-left: 0; border-top: 1px solid var(--line); }.about-story-list article, .about-story-list article:nth-child(even) { min-height: 0; grid-template-columns: 1fr; }.about-story-list article:nth-child(even) .about-story-visual { order: 0; }.about-story-visual { min-height: 260px; }.about-story-copy { padding: 32px 27px 38px; }.about-story-list h2 { font-size: 35px; }.about-closing { margin-top: 60px; padding: 30px; grid-template-columns: 70px 1fr; gap: 22px; }.about-closing img { width: 70px; height: 70px; }.about-closing p { grid-column: 1 / -1; }.about-closing .button { grid-column: 1 / -1; width: 100%; }
  .journey-section, .service-faq { padding: 72px 22px 88px; }.journey-grid { grid-template-columns: 1fr; }.journey-grid article { display: grid; grid-template-columns: 58px 1fr; gap: 0 18px; padding: 0; }.journey-grid article > span { width: 58px; height: 58px; grid-row: 1 / 3; }.journey-grid h3 { margin: 3px 0 4px; }.service-faq summary { font-size: 21px; }
  .project-method { padding: 76px 22px 84px; }.project-method-grid { grid-template-columns: 1fr; }.project-method-grid article { min-height: 185px; }.project-snapshot { padding: 60px 22px 0; }.project-snapshot > div { grid-template-columns: 1fr; }.project-snapshot article + article, .project-snapshot article:nth-child(3) { border-left: 0; border-top: 1px solid var(--line); }
  .snapshot-heading { align-items: flex-start; flex-direction: column; }.program-pricing { padding: 70px 22px 82px; }.pricing-heading { grid-template-columns: 1fr; gap: 18px; }.pricing-grid { grid-template-columns: 1fr; margin-top: 38px; }.pricing-grid article { min-height: 150px; }.pricing-footer { align-items: stretch; flex-direction: column; }.pricing-footer .button { width: 100%; }.credential-academic { padding: 28px; grid-template-columns: 1fr; gap: 18px; }.coworking-page { padding: 55px 22px 82px; }.coworking-facts { grid-template-columns: repeat(2, 1fr); margin: 20px 0 60px; }.coworking-facts div:nth-child(3) { border-left: 0; }.coworking-facts div:nth-child(n+3) { border-top: 1px solid var(--line); }.coworking-story article { grid-template-columns: 1fr; }.coworking-story article:nth-child(even) .coworking-photo { order: 0; }.coworking-photo { min-height: 250px; }.coworking-story article > div:last-child { padding: 33px 27px 40px; }.booking-section { padding: 72px 22px 88px; grid-template-columns: 1fr; }.booking-form-shell { min-height: 520px; padding: 8px; }.bitrix-booking-form { min-height: 490px; }
  .related-services { padding: 75px 22px 88px; }.related-services > div, .related-services.related-count-1 > div, .related-services.related-count-2 > div, .related-services.related-count-4 > div, .related-services.related-count-7 > div { grid-template-columns: 1fr; }.related-services a { min-height: 120px; }
  .language-support { padding: 70px 22px 78px; grid-template-columns: 1fr; gap: 42px; }.language-support::after { font-size: 220px; right: -24px; bottom: -66px; }.language-support h2 { font-size: 40px; }.language-support p { font-size: 16px; }.language-support-list { max-width: 520px; }.language-support-list span { min-height: 76px; }
}

/* Shared latest-publications placements and private self-reflection questionnaires. */
.latest-articles { max-width: 1440px; margin: auto; padding: 85px 5vw; background: var(--sage-pale); }
.latest-articles-heading { display: flex; justify-content: space-between; align-items: end; gap: 24px; margin-bottom: 34px; }
.latest-articles-heading h2 { margin: 10px 0 0; font-size: clamp(36px, 4vw, 54px); }
.articles-compact { padding: 0; background: transparent; }
.articles-compact .article-card-copy { min-height: 350px; padding: 25px; }
.articles-compact .article-card h3 { margin-top: 20px; font-size: clamp(26px, 2.5vw, 34px); }
.article-card time { margin-top: 16px; color: #65756f; font-size: 13px; }
.own-tests { padding-bottom: 45px; }
.own-tests > h2 { margin-bottom: 20px; }
.own-tests-lead { max-width: 760px; margin-bottom: 36px; font-size: 18px; }
.own-test-card { min-height: 350px; }
.own-test-card h3 { margin-top: 35px; }
.own-test-card .button { margin-top: auto; font-size: 14px; }
.self-check-panel { margin-top: 45px; padding: clamp(24px, 5vw, 60px); border: 1px solid var(--line); border-radius: 30px; background: #fffdf8; }
.self-check-heading { display: flex; gap: 30px; align-items: center; }
.self-check-heading img { width: 170px; height: 120px; object-fit: cover; border-radius: 18px; }
.self-check-panel h3 { font-size: clamp(26px, 3vw, 38px); line-height: 1.2; margin: 22px 0; }
.self-check-panel p { font-size: 17px; line-height: 1.65; }
.self-check-panel .tests-notice { font-size: 14px; margin: 25px 0; }
.self-check-panel progress { width: 100%; height: 8px; accent-color: var(--teal); }
.self-check-options { border: 0; padding: 0; display: grid; gap: 12px; }
.self-check-options label { display: flex; align-items: center; gap: 14px; cursor: pointer; padding: 17px 20px; border: 1px solid var(--line); border-radius: 14px; font-size: 17px; }
.self-check-options label.selected { background: var(--sage-pale); border-color: var(--teal); }
.self-check-options input { width: 20px; height: 20px; accent-color: var(--teal); }
.self-check-actions { display: flex; gap: 16px; flex-wrap: wrap; margin: 30px 0; }
.self-check-panel button:disabled { opacity: .45; cursor: not-allowed; }
.self-check-panel :focus-visible { outline: 3px solid var(--gold); outline-offset: 4px; }
.self-check-panel h3:focus { outline: none; }
.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; }
#self-regulation-test { scroll-margin-top: 110px; }
@media(max-width: 700px) { .latest-articles { padding: 60px 22px; } .latest-articles-heading { align-items: start; flex-direction: column; } .self-check-heading { align-items: start; flex-direction: column; gap: 10px; } .self-check-heading img { width: 100%; height: 150px; } .self-check-actions .button { width: 100%; } }

/* Real portraits in the introduction and author blocks; image assets stay untouched. */
.profile-hero-photo { min-width: 0; padding: 0 20px 22px 0; }
.profile-hero-photo .photo-frame { border-radius: 170px 170px 28px 28px; box-shadow: 18px 18px 0 var(--sage-pale); }
.profile-hero-photo .photo-frame img { object-position: 50% 22%; filter: none; }
.profile-hero-photo .photo-caption { bottom: -8px; left: 0; right: 0; text-align: center; font-size: 11px; letter-spacing: .1em; }
.about-art-portrait { aspect-ratio: 5 / 6; max-height: 520px; border-radius: 32px 32px 32px 90px; }
.about-art-portrait img { object-position: 50% 30%; }
.profile-photo-green { width: min(100%, 420px); height: 520px; justify-self: center; }
.profile-photo-green img { object-position: 50% 85%; }
.about-story-photo { position: relative; min-width: 0; }
.about-story-photo img { position: absolute; inset: 0; object-position: 50% 24%; }
.about-story-photo-1 img { object-position: 50% 32%; }
.author-mark-photo { overflow: hidden; }
.author-mark-photo img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 23%; }
.about-closing-portrait img { object-fit: cover; object-position: 50% 23%; border-radius: 50%; }
@media (max-width: 760px) {
  .profile-hero-photo { height: auto; padding: 0 18px 30px 0; margin-bottom: 24px; }
  .profile-hero-photo .photo-frame { width: 100%; height: auto; aspect-ratio: 3 / 4; }
  .profile-hero-photo .photo-caption { bottom: 0; font-size: 10px; }
  .about-art-portrait { width: 100%; max-width: 440px; max-height: none; aspect-ratio: 5 / 6; justify-self: center; }
  .profile-photo-green { height: 440px; max-width: 370px; }
  .about-story-photo { height: clamp(320px, 85vw, 440px); min-height: 320px; }
}

/* WordPress transfer refinements: stable page grids, compact credentials and navigation. */
.about-story-copy ul { margin: 24px 0 0; padding: 0; display: grid; gap: 10px; list-style: none; }
.about-story-copy li { position: relative; padding-left: 24px; color: #586a64; font-size: 15px; }
.about-story-copy li::before { content: ""; width: 8px; height: 8px; position: absolute; left: 0; top: .65em; border: 2px solid var(--gold); border-radius: 50%; }

.about-credentials-preview { max-width: 1440px; margin: auto; padding: 78px 8vw 105px; background: var(--paper); border-top: 1px solid var(--line); }
.about-credentials-preview .section-heading { margin-bottom: 34px; }
.credential-mini-link { width: 100%; padding: 0; border: 0; background: transparent; color: inherit; font: inherit; text-align: left; cursor: zoom-in; }
.credential-mini-copy { display: block; }
.credential-mini-title { margin: 12px 0; display: block; font: 400 22px/1.25 var(--serif); overflow-wrap: anywhere; }
.credential-mini-title span { color: var(--plum); white-space: nowrap; }
.credential-mini-summary { display: block; color: #586a64; font-size: 14px; line-height: 1.6; }

.credentials-list { padding: 44px clamp(28px, 5vw, 72px) 105px; }
.credential-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.credential-card { display: flex; flex-direction: column; }
.document-image { width: 100%; flex: 0 0 auto; border-right: 0; border-bottom: 1px solid var(--line); }
.credential-card-copy { min-height: 330px; }
.credential-card h3 { font-size: clamp(25px, 2vw, 34px); }

.journey-grid.journey-grid-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.journey-grid.journey-grid-3::before { left: 12%; right: 12%; }
.journey-grid.journey-grid-3 article { padding-right: 38px; }
.journey-grid.journey-grid-3 p { max-width: 330px; }

.contact-formats { max-width: 1440px; margin: auto; padding: 76px 8vw 94px; background: var(--paper); }
.contact-formats .section-heading { margin-bottom: 28px; }
.contact-formats-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.contact-formats-grid article { min-height: 235px; padding: 34px; border: 1px solid var(--line); border-radius: 28px; background: linear-gradient(145deg, rgba(222,236,230,.54), rgba(255,253,248,.96)); }
.contact-formats-grid article:nth-child(2) { background: linear-gradient(145deg, rgba(234,217,209,.56), rgba(255,253,248,.96)); }
.contact-formats-grid article > span { width: 46px; height: 46px; display: grid; place-items: center; border: 1px solid rgba(11,127,120,.28); border-radius: 50%; color: var(--burgundy); font: 20px/1 var(--serif); }
.contact-formats-grid h2 { margin: 28px 0 10px; font-size: clamp(29px, 3vw, 42px); line-height: 1.08; }
.contact-formats-grid p { max-width: 620px; margin: 0; color: #586a64; font-size: 16px; }

.site-footer { padding: 42px 5vw 22px; }
.footer-main { grid-template-columns: minmax(260px, .72fr) minmax(0, 1.28fr); gap: 5vw; padding-bottom: 32px; }
.brand-footer .brand-mark { width: 58px; height: 58px; }
.brand-footer .brand-text strong { font-size: 21px; }
.brand-footer .brand-text small { max-width: 350px; font-size: 12px; }
.footer-links, .footer-links ul { margin: 0; padding: 0; list-style: none; }
.footer-links { grid-template-columns: repeat(4, minmax(120px, 1fr)); column-gap: 30px; row-gap: 12px; font-size: 13px; }
.footer-links > li > a { color: white; font-weight: 700; }
.footer-links .sub-menu { margin-top: 8px; display: grid; gap: 5px; color: #c8dad4; font-size: 12px; }
.footer-meta { padding-top: 16px; }

.back-to-top { box-sizing: border-box !important; width: 48px !important; min-width: 48px !important; max-width: 48px !important; height: 48px !important; min-height: 48px !important; max-height: 48px !important; padding: 0 !important; margin: 0 !important; position: fixed !important; inset-inline-start: auto !important; inset-inline-end: max(14px, env(safe-area-inset-right)) !important; right: max(14px, env(safe-area-inset-right)) !important; left: auto !important; bottom: max(14px, env(safe-area-inset-bottom)) !important; z-index: 120; display: grid; place-items: center; overflow: hidden; contain: layout paint; border: 1px solid rgba(255,255,255,.5); border-radius: 50%; background: var(--burgundy); color: white; box-shadow: 0 14px 34px rgba(37,56,51,.24); font: 24px/1 var(--sans); cursor: pointer; opacity: 0; visibility: hidden; transform: translate3d(0,14px,0); transition: opacity .2s ease, visibility .2s ease, transform .2s ease, background .2s ease; }
.back-to-top.is-visible { opacity: 1; visibility: visible; transform: translateY(0); }
.back-to-top:hover { background: var(--plum-dark); }
.back-to-top:focus-visible { outline: 3px solid var(--gold); outline-offset: 3px; }

@media (max-width: 1180px) {
  .credential-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .footer-main { grid-template-columns: minmax(230px, .62fr) minmax(0, 1.38fr); }
  .footer-links { grid-template-columns: repeat(3, minmax(120px, 1fr)); }
}

@media (max-width: 900px) {
  .journey-grid.journey-grid-3 { grid-template-columns: 1fr; gap: 34px; }
  .journey-grid.journey-grid-3::before { display: none; }
  .journey-grid.journey-grid-3 article { padding-right: 0; }
  .journey-grid.journey-grid-3 p { max-width: 680px; }
  .contact-formats-grid { grid-template-columns: 1fr; }
  .footer-main { grid-template-columns: 1fr; gap: 34px; }
  .footer-links { grid-template-columns: repeat(3, minmax(110px, 1fr)); }
}

@media (max-width: 760px) {
  .about-credentials-preview { padding: 62px 22px 78px; }
  .credential-grid { grid-template-columns: 1fr; }
  .credential-card-copy { min-height: 0; }
  .contact-formats { padding: 58px 22px 72px; }
  .contact-formats-grid article { min-height: 0; padding: 27px 24px; }
  .site-footer { padding: 42px 22px 20px; }
  .footer-main { gap: 30px; padding-bottom: 28px; }
  .footer-links { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 24px; row-gap: 18px; }
  .back-to-top { width: 44px !important; min-width: 44px !important; max-width: 44px !important; height: 44px !important; min-height: 44px !important; max-height: 44px !important; inset-inline-end: max(12px, env(safe-area-inset-right)) !important; right: max(12px, env(safe-area-inset-right)) !important; bottom: max(12px, env(safe-area-inset-bottom)) !important; }
}

/* 1.2.0 — parity fixes for the WordPress transfer. */
body { overflow-x: hidden; }
.site-shell { overflow: visible; }
.site-header {
  position: sticky;
  top: 0;
  z-index: 300;
  background: rgba(247, 243, 235, .94);
  box-shadow: 0 1px 0 rgba(11, 127, 120, .12), 0 9px 28px rgba(37, 56, 51, .045);
  -webkit-backdrop-filter: blur(16px);
  backdrop-filter: blur(16px);
}
body.admin-bar .site-header { top: 32px; }
.inner-hero, .language-support, .content-sections, .journey-section,
.contact-card, .contact-formats, .booking-section, .related-services,
.latest-articles, .seo-links, .about-profile, .about-credentials-preview,
.credentials-list { scroll-margin-top: 112px; }

/* Keep imported editor blocks from inheriting narrow WordPress flow widths. */
.entry-content > .content-block {
  width: min(100%, 1100px);
  max-width: 1100px;
  margin-inline: auto;
  display: grid !important;
  grid-template-columns: 120px minmax(0, 1fr) !important;
  column-gap: clamp(34px, 5vw, 72px);
}
.entry-content > .content-block > .wp-block-group,
.entry-content > .content-block > .wp-block-group > * {
  min-width: 0;
  max-width: none;
  width: auto;
}
.entry-content > .content-block > .wp-block-group > h2,
.entry-content > .content-block > .wp-block-group > p,
.entry-content > .content-block > .wp-block-group > ul { margin-left: 0; margin-right: 0; }

/* Original compact directions component: four cards, then three. */
.direction-cards { isolation: isolate; }
.direction-cards.direction-mode-all { background: linear-gradient(145deg, #f7f3eb, #e5efeb); }
.direction-cards.direction-mode-related { background: linear-gradient(145deg, #f7f3eb, #edf3f0); }
.direction-cards > div { align-items: stretch; }
.direction-cards a { min-width: 0; }
.direction-cards .related-icon { display: grid; place-items: center; flex: 0 0 auto; }
.direction-cards .related-icon svg { width: 100%; height: 100%; display: block; }
.direction-cards a > span:nth-child(2) { min-width: 0; }
.direction-cards strong { overflow-wrap: normal; hyphens: none; }
.direction-cards b { align-self: center; }

/* Reassert the template grids after WordPress core block styles load. */
.journey-grid.journey-grid-3 {
  width: 100%;
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: clamp(22px, 3vw, 42px);
}
.journey-grid.journey-grid-3 article { min-width: 0; padding-right: 0; }
.journey-grid.journey-grid-3 h3,
.journey-grid.journey-grid-3 p { width: auto; max-width: none; }
.contact-card { grid-template-columns: minmax(0, 1.08fr) minmax(330px, .72fr); }
.contact-card > *, .contact-formats-grid > * { min-width: 0; }
.contact-formats-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }

/* Flat footer navigation prevents nested WordPress menus from stretching it. */
.site-footer { padding: 32px 5vw 18px; }
.footer-main {
  grid-template-columns: minmax(330px, 1.15fr) minmax(430px, .85fr);
  gap: clamp(55px, 9vw, 150px);
  padding-bottom: 26px;
}
.brand-footer { align-items: flex-start; }
.brand-footer .brand-mark { width: 54px; height: 54px; }
.brand-footer .brand-text strong { color: white; font-size: 22px; }
.brand-footer .brand-text small { max-width: 430px; font-size: 12px; line-height: 1.45; }
.footer-main nav { min-width: 0; }
.footer-links {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  grid-template-columns: repeat(2, minmax(150px, 1fr));
  column-gap: clamp(36px, 5vw, 78px);
  row-gap: 11px;
  color: #dce8e4;
  font-size: 13px;
}
.footer-links li { margin: 0; padding: 0; list-style: none; }
.footer-links a { color: inherit; font-weight: 600; }
.footer-meta { padding-top: 14px; }

@media (max-width: 1180px) {
  .footer-main { grid-template-columns: minmax(270px, .8fr) minmax(410px, 1.2fr); gap: 55px; }
}

@media (max-width: 900px) {
  .journey-grid.journey-grid-3 { grid-template-columns: 1fr !important; }
  .contact-card, .contact-formats-grid { grid-template-columns: 1fr; }
  .footer-main { grid-template-columns: 1fr; gap: 28px; }
  .footer-links { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 782px) {
  body.admin-bar .site-header { top: 46px; }
}

@media (max-width: 760px) {
  .entry-content > .content-block {
    grid-template-columns: 1fr !important;
    row-gap: 24px;
  }
  .site-footer { padding: 30px 22px 18px; }
  .footer-main { gap: 25px; padding-bottom: 22px; }
  .brand-footer .brand-text strong { font-size: 19px; }
  .footer-links { column-gap: 22px; row-gap: 10px; font-size: 12px; }
  .footer-meta { padding-top: 13px; }
}

/* 1.2.1 — preserve the original homepage cards and fix legacy Group wrappers. */
.zva-page-content,
.article-content,
.article-page-shell { width: 100%; min-width: 0; }
body .entry-content > .content-block {
  width: min(100%, 1100px) !important;
  max-width: 1100px !important;
  margin-inline: auto !important;
}

/*
 * Older WordPress versions add .wp-block-group__inner-container around Group
 * contents.  It must span both columns; otherwise WordPress places the whole
 * section inside the 120px icon column.
 */
body .entry-content > .content-block > .wp-block-group__inner-container {
  width: 100% !important;
  max-width: none !important;
  min-width: 0;
  margin: 0 !important;
  grid-column: 1 / -1;
  display: grid !important;
  grid-template-columns: 120px minmax(0, 1fr) !important;
  column-gap: clamp(34px, 5vw, 72px);
}
body .entry-content > .content-block > .content-icon,
body .entry-content > .content-block > .wp-block-group__inner-container > .content-icon {
  grid-column: 1;
}
body .entry-content > .content-block > .wp-block-group,
body .entry-content > .content-block > .wp-block-group__inner-container > .wp-block-group {
  width: 100% !important;
  max-width: none !important;
  min-width: 0;
  margin: 0 !important;
  grid-column: 2;
}
body .entry-content .content-block .wp-block-group__inner-container,
body .entry-content .content-block .wp-block-group__inner-container > * {
  max-width: none;
  min-width: 0;
}
.article-content .content-block p + p { margin-top: 1.15em; }

@media (max-width: 760px) {
  body .entry-content > .content-block > .wp-block-group__inner-container {
    grid-template-columns: 1fr !important;
    row-gap: 24px;
  }
  body .entry-content > .content-block > .content-icon,
  body .entry-content > .content-block > .wp-block-group,
  body .entry-content > .content-block > .wp-block-group__inner-container > .content-icon,
  body .entry-content > .content-block > .wp-block-group__inner-container > .wp-block-group {
    grid-column: 1;
  }
}

/* 1.3.0 — editable projects, mobile-safe back-to-top and SEO polish. */
.projects-catalog .project-grid,
.projects-catalog .service-grid.grid-4 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 22px;
}
.projects-catalog .service-card {
  min-width: 0;
  min-height: 590px;
  padding: 24px 24px 78px;
}
.projects-catalog .card-visual {
  height: auto;
  aspect-ratio: 16 / 8.7;
  margin-bottom: 34px;
}
.projects-catalog .service-card h3 {
  max-width: 620px;
  font-size: clamp(32px, 3vw, 45px);
  line-height: 1.08;
}
.projects-catalog .service-card p {
  max-width: 620px;
  margin-top: 18px;
  font-size: 16px;
  line-height: 1.65;
}

.zva-tests-page {
  width: 100%;
  max-width: 1440px;
  margin: 0 auto;
  padding: 76px 5vw 96px;
  overflow: hidden;
}
.zva-tests-page .zva-latest {
  width: 100%;
  max-width: none;
  min-width: 0;
  margin: 0;
}
.zva-tests-page .zva-latest > h2 {
  margin: 0 0 34px;
  font-size: clamp(36px, 4vw, 54px);
  line-height: 1.08;
}
.zva-tests-page .zva-latest-grid {
  width: 100%;
  min-width: 0;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}
.zva-tests-page .zva-latest-grid > article,
.zva-tests-page .zva-latest-grid > article > a,
.zva-tests-page .zva-latest-grid > article > a > div {
  min-width: 0;
}
.zva-tests-page .zva-latest-grid > article { height: 100%; }
.zva-tests-page .zva-latest article a > div {
  min-height: 285px;
  padding: 26px;
}
.zva-tests-page .zva-latest h3 {
  margin: 0 0 18px;
  font-size: clamp(25px, 2.3vw, 34px);
  overflow-wrap: anywhere;
}
.zva-tests-page .zva-latest p {
  margin: 0 0 22px;
  overflow-wrap: anywhere;
}

.latest-articles {
  padding: 58px 5vw 68px;
}
.latest-articles .section-heading { margin-bottom: 28px; }
.latest-articles .section-heading h2 {
  font-size: clamp(34px, 3.7vw, 50px);
}
.latest-articles-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}
.latest-article-card {
  min-width: 0;
  height: 100%;
  overflow: hidden;
  display: grid;
  grid-template-rows: auto 1fr;
  border: 1px solid rgba(7,74,64,.13);
  border-radius: 22px;
  background: #fffdfa;
  box-shadow: 0 12px 32px rgba(7,74,64,.05);
  transition: transform .2s ease, box-shadow .2s ease;
}
.latest-article-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 18px 40px rgba(7,74,64,.11);
}
.latest-article-image {
  display: block;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  background: var(--mint);
}
.latest-article-image img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  transition: transform .35s ease;
}
.latest-article-card:hover img { transform: scale(1.035); }
.latest-article-card h3 {
  height: 3.5em;
  margin: 0;
  padding: 20px 22px 24px;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  font-size: clamp(23px, 2vw, 30px);
  line-height: 1.15;
}

@media (max-width: 900px) {
  .projects-catalog .project-grid,
  .projects-catalog .service-grid.grid-4 { grid-template-columns: 1fr; }
  .zva-tests-page .zva-latest-grid,
  .latest-articles-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 650px) {
  .projects-catalog .project-grid,
  .projects-catalog .service-grid.grid-4,
  .zva-tests-page .zva-latest-grid,
  .latest-articles-grid { grid-template-columns: 1fr; }
  .projects-catalog .service-card { min-height: 520px; }
  .zva-tests-page { padding: 58px 22px 72px; }
  .zva-tests-page .zva-latest article a > div { min-height: 0; }
  .latest-articles { padding: 52px 22px 60px; }
}

html, body { max-width: 100%; overflow-x: clip; }
.language-support, .quote-section { overflow: hidden; }
@supports not (overflow: clip) {
  html, body { overflow-x: hidden; }
}
