/* Shared header/footer rules extracted from the current GEO stylesheet. */
:root {
    --geo-ink: #0a1726; --geo-dark: #0c1d28; --geo-yellow: #ffb52c;
    --geo-muted: #6680a8; --geo-pale: #f0f7fc; --geo-white: #fff;
}
.dz-site-shell {
    font-family: Inter, Arial, sans-serif;
    line-height: 1.5;
    -webkit-font-smoothing: antialiased;
}
.dz-site-shell a { color: inherit; text-decoration: none; }
.dz-site-shell button { font: inherit; }
.dz-site-shell p { margin: 0; font-size: 19px; line-height: 1.5; }
.dz-site-shell :focus-visible { outline: 3px solid #6579ff; outline-offset: 5px; }
@font-face{font-family:Inter;src:url("../fonts/inter-400.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:Inter;src:url("../fonts/inter-500.woff2") format("woff2");font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:Inter;src:url("../fonts/inter-600.woff2") format("woff2");font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:Inter;src:url("../fonts/inter-700.woff2") format("woff2");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:Inter;src:url("../fonts/inter-800.woff2") format("woff2");font-weight:800;font-style:normal;font-display:swap}
.geo-container {
    width:calc(100% - 144px);max-width:1120px;margin-inline:auto
}
.geo-icon {
    width:32px;height:32px;display:block;flex:none;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round
}
.geo-svg-defs {
    position:absolute;width:0;height:0;overflow:hidden
}
.geo-button {
    display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:58px;padding:15px 27px;border:1px solid #efa315;border-radius:7px;font-size:16px;font-weight:700;line-height:1.3;transition:background .18s,box-shadow .18s
}
.geo-button--primary {
    background:linear-gradient(110deg,#ffc145,#ffb126);color:#0a1726!important;box-shadow:inset 0 0 0 1px #ffffff18
}
.geo-button--primary:hover {
    background:#ffc955;box-shadow:0 5px 20px #ffb52c25
}
.geo-button--outline {
    background:transparent;color:white;border-color:#a6b3bf;box-shadow:inset 0 0 0 2px #ffffff0d
}
.geo-button--outline:hover {
    background:#ffffff10
}
.geo-button .geo-icon {
    width:22px;height:22px
}
.geo-dark-top {
    color:white;background:radial-gradient(ellipse at 55% 40%,#172c37 0%,#0c1d28 66%,#0a1924 100%)
}
.geo-header {
    position:relative;z-index:5
}
.geo-header__inner {
    min-height:104px;display:flex;align-items:center;justify-content:space-between;gap:38px
}
.geo-logo {
    display:flex;flex-direction:column;flex:none;line-height:1.1
}
.geo-logo__name {
    font-size:32px;font-weight:800;letter-spacing:-1px
}
.geo-logo__name span {
    color:var(--geo-yellow)
}
.geo-logo__caption {
    font-size:14px;font-weight:600;margin-top:3px;letter-spacing:0
}
.geo-navigation {
    display:flex;align-items:center;gap:70px
}
.geo-navigation ul {
    display:flex;align-items:center;gap:36px;list-style:none;margin:0;padding:0;font-size:15px
}
.geo-navigation li a:hover {
    color:var(--geo-yellow)
}
.geo-navigation .geo-button {
    font-size:14px;min-height:50px;padding:12px 20px;white-space:nowrap
}
.geo-menu-toggle {
    display:none;border:0;background:none;color:white;padding:8px;cursor:pointer;width:44px;height:44px
}
.geo-menu-toggle span {
    display:block;height:2px;background:currentColor;margin:6px 0;border-radius:2px;transition:transform .2s,opacity .2s
}
.geo-breadcrumbs {
    display:flex;gap:6px;align-items:center;padding:10px 0 24px;font-size:13px;color:#e3e9ed
}
.geo-breadcrumbs a:hover {
    text-decoration:underline
}
.geo-footer {
    background:#081720;color:#d7e1e7;padding:40px 0 20px
}
.geo-footer__grid {
    display:grid;grid-template-columns:1.3fr .7fr 1fr;gap:50px
}
.geo-footer__description {
    font-size:14px!important;max-width:320px;margin-top:16px!important;color:#afbec8
}
.geo-footer ul {
    list-style:none;margin:0;padding:0;font-size:14px
}
.geo-footer li+li {
    margin-top:9px
}
.geo-footer__contacts {
    display:flex;flex-direction:column;gap:12px;align-items:start;font-size:16px
}
.geo-footer a:hover {
    color:var(--geo-yellow)
}
.geo-footer__bottom {
    margin-top:30px;border-top:1px solid #ffffff15;padding-top:18px;display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap
}
.geo-footer__bottom p {
    font-size:12px;color:#91a6b4
}
@media (min-width:1500px) {
.geo-container {
    max-width:1200px
}
}
@media (max-width:1199px) {
.geo-container {
    width:calc(100% - 88px)
}
.geo-navigation {
    gap:36px
}
.geo-navigation ul {
    gap:26px
}
}
@media (max-width:900px) {
.geo-header__inner {
    min-height:86px
}
.geo-menu-toggle {
    display:block
}
.geo-navigation {
    display:none;position:absolute;top:calc(100% - 1px);left:0;right:0;padding:24px 44px;background:#102531;box-shadow:0 12px 20px #00101c33;border-top:1px solid #ffffff20
}
.geo-navigation.is-open {
    display:flex;align-items:stretch;flex-direction:column;gap:22px
}
.geo-navigation ul {
    flex-direction:column;align-items:stretch;gap:0
}
.geo-navigation li a {
    display:block;padding:10px 0;font-size:17px
}
.geo-navigation .geo-button {
    align-self:flex-start
}
.geo-footer__grid {
    gap:25px
}
.geo-footer__contacts {
    font-size:14px
}
}
@media (max-width:640px) {
.geo-container {
    width:calc(100% - 40px)
}
.geo-header__inner {
    min-height:86px;gap:12px
}
.geo-logo__name {
    font-size:29px
}
.geo-logo__caption {
    font-size:12px
}
.geo-navigation {
    padding:20px
}
.geo-breadcrumbs {
    display:none
}
.geo-button {
    min-height:50px;padding:13px 20px;font-size:14px
}
.geo-footer {
    padding:32px 0 20px
}
.geo-footer__grid {
    grid-template-columns:1fr 1fr;gap:28px 22px
}
.geo-footer__info {
    grid-column:1/-1
}
.geo-footer__contacts {
    font-size:13px;gap:10px
}
.geo-footer__bottom {
    margin-top:25px
}
.geo-footer__bottom p {
    font-size:11px
}
}
@media (max-width:360px) {
.geo-container {
    width:calc(100% - 32px)
}
}
@media print {
.geo-menu-toggle, .geo-navigation, .geo-footer {
    display:none!important
}
.geo-container {
    width:100%
}
.geo-dark-top {
    color:#000;background:#fff
}
}
.geo-navigation a.is-current { color: var(--geo-yellow); }
/* Breadcrumbs remain visible on the About mobile page. */
.about-design .geo-breadcrumbs { display: flex; flex-wrap: wrap; }
