@font-face{font-family:'Adigiana 2';src:url('fonts/Adigiana2.woff2') format('woff2');font-style:normal;font-weight:100 900;font-display:swap}
@font-face{font-family:'Noto Sans';src:url('fonts/NotoSans-Cyrillic-Variable.woff2') format('woff2');font-style:normal;font-weight:100 900;font-display:swap;unicode-range:U+0400-052F,U+2DE0-2DFF,U+A640-A69F,U+2116}
@font-face{font-family:'Noto Sans';src:url('fonts/NotoSans-Latin-Variable.woff2') format('woff2');font-style:normal;font-weight:100 900;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
body.gd33-layout{margin:0;font-family:'Noto Sans',Arial,sans-serif;--gg-display:'Adigiana 2',cursive;--gg-body:'Noto Sans',Arial,sans-serif}
.gd33-layout :is(h1,h2,h3,h4,h5,h6){font-family:'Adigiana 2',cursive!important}
.gd33-layout :is(input,select,textarea,button){font-family:inherit}
.gd33-layout :is(a,button,input,select,textarea,summary):focus-visible{outline:3px solid #2eadd8;outline-offset:4px}
.gd33-layout main:focus{outline:none}
.gd33-layout :is(main,header,footer) img{max-width:100%}
.gd33-layout :is(main,header,footer) [class*="__inner"]>*{min-width:0}
.gd33-layout .gdv2-b15__header>*{min-width:0}
.gd33-layout :is(.gdv2-b13__header,.gdv2-b5-teacher__card,.gdv2-b7-visual__caption,.gdt-approach__grid)>*{min-width:0}
.gd33-layout .gdt-approach li>div{min-width:0}
.gd33-layout .ga-direction-group__header h3{min-width:0;white-space:normal;flex:0 1 auto}
.gd33-layout :is(.gg-button,.gd-request__submit,.gdt-button) svg{flex-shrink:0;align-self:center}
.gd33-layout .gg-header{z-index:100}
.gd33-layout .gg-header__inner{grid-template-columns:180px minmax(0,1fr) auto;gap:20px;min-height:132px}
.gd33-layout .gg-header__brand,.gd33-layout .gg-header__brand img{width:174px;height:116px}
.gd33-layout .gg-header__nav{gap:clamp(12px,1.5vw,24px);min-width:0}
.gd33-layout .gg-header__item{position:relative}
.gd33-layout .gg-header__nav-main{appearance:none;border:0;border-radius:0;background:transparent;box-shadow:none;padding:16px 0;cursor:pointer;display:flex;align-items:center;color:#174d3d;font-family:'Noto Sans',Arial,sans-serif;font-size:13px;font-weight:800;line-height:1.4;text-transform:uppercase;white-space:nowrap}
.gd33-layout .gg-header__nav>a{font-size:13px;padding:16px 0}
.gd33-layout .gg-header__nav-main .gg-chevron{transition:transform .18s}
.gd33-layout .is-expanded>.gg-header__nav-main .gg-chevron{transform:rotate(225deg);margin-bottom:-3px}
.gd33-layout .gg-header__submenu{display:none;position:absolute;left:-20px;top:100%;width:290px;max-width:calc(100vw - 32px);padding:12px;border:1px solid #dce9cf;border-radius:18px;background:#fffdf8;box-shadow:0 12px 30px #174d3d1c;z-index:110}
.gd33-layout .is-expanded>.gg-header__submenu{display:grid;gap:2px}
.gd33-layout .gg-header__submenu a{display:block;padding:11px 12px;border-radius:10px;font-size:13px;font-weight:600;line-height:1.45;white-space:normal;text-transform:none}
.gd33-layout .gg-header__submenu a:hover,.gd33-layout .gg-header__submenu a:focus-visible{background:#e7f1d8;color:#174d3d}
.gd33-layout .gg-header__phone{gap:8px}
.gd33-layout .gg-header__phone-icon{width:50px;height:50px}
.gd33-layout .gg-header__phone-icon svg{width:31px}
.gd33-layout .gg-header__phone strong{font-size:16px}
.gd33-layout .gg-header__phone small{font-size:10px}

/* The restored footer template uses gg-footer, rather than the legacy gg-garden-footer. */
.gd33-layout .gg-footer,.gd33-layout .gg-footer *{box-sizing:border-box}
.gd33-layout .gg-footer{position:relative;background:#eaf4de;color:#174d3d;font-family:'Noto Sans',Arial,sans-serif;margin:0;width:100%}
.gd33-layout .gg-footer__wave{display:block;width:100%;height:60px;background:#fffaf3;fill:#eaf4de}
.gd33-layout .gg-footer__inner{width:min(1280px,calc(100% - 64px));margin:auto;padding:32px 0 28px}
.gd33-layout .gg-footer__top{display:grid;grid-template-columns:1.05fr 1.2fr .7fr 1.1fr;gap:32px}
.gd33-layout .gg-footer a{color:inherit;text-decoration:none}
.gd33-layout .gg-footer a:hover{text-decoration:underline;text-underline-offset:4px}
.gd33-layout .gg-footer :is(h2,p){margin:0}
.gd33-layout .gg-footer h2{font-family:'Noto Sans',Arial,sans-serif!important;font-size:13px;line-height:1.45;font-weight:800;letter-spacing:.03em;text-transform:uppercase;margin:0 0 20px}
.gd33-layout .gg-footer__brand>a{display:block;width:180px}
.gd33-layout .gg-footer__brand img{display:block;width:180px;max-width:100%;height:auto;margin:-20px 0 12px}
.gd33-layout .gg-footer__brand>strong{display:block;font-family:'Adigiana 2',cursive;font-size:24px;line-height:1.2;margin:0 0 12px}
.gd33-layout .gg-footer__brand p{font-size:12px;line-height:1.6;max-width:230px}
.gd33-layout .gg-footer__brand>small{display:block;font-size:11px;font-weight:700;text-transform:uppercase;margin:20px 0 8px}
.gd33-layout .gg-footer__socials{display:flex;gap:10px}
.gd33-layout .gg-footer__socials a{display:grid;place-items:center;width:40px;height:40px;background:#fffdf8;border-radius:50%}
.gd33-layout .gg-footer__socials svg{width:26px;height:26px;fill:#174d3d}
.gd33-layout .gg-footer__socials a:nth-child(2) path{fill:#fffdf8}
.gd33-layout .gg-footer__socials a:nth-child(3) path{fill:#fffdf8}
.gd33-layout .gg-footer__project{display:grid;grid-template-columns:38px minmax(0,1fr) 20px;align-items:center;gap:10px;border:1px solid #b8d59e;border-radius:18px;padding:16px 12px;margin-bottom:12px;background:#f8fbed}
.gd33-layout .gg-footer__project.is-other{background:#fffdf8}
.gd33-layout .gg-footer__project-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#e2edcc}
.gd33-layout .gg-footer__project-icon svg{width:24px;height:24px;stroke:#174d3d;stroke-width:2;fill:none;stroke-linecap:round;stroke-linejoin:round}
.gd33-layout .gg-footer__project :is(small,strong,em){display:block;font-style:normal}
.gd33-layout .gg-footer__project small{font-size:9px;line-height:1.4;text-transform:uppercase;color:#63776b}
.gd33-layout .gg-footer__project strong{font-size:16px;margin:4px 0}
.gd33-layout .gg-footer__project em{font-size:10px;line-height:1.5}
.gd33-layout .gg-footer__project i{display:grid;place-items:center}
.gd33-layout .gg-footer__project i svg{width:20px;height:20px;fill:none;stroke:#174d3d;stroke-width:2}
.gd33-layout .gg-footer__nav>div{display:grid;gap:9px}
.gd33-layout .gg-footer__nav a{font-size:13px;line-height:1.6;font-weight:600;padding:2px 0}
.gd33-layout .gg-footer__contact-list{display:grid;gap:20px}
.gd33-layout .gg-footer__contact-row{display:grid;grid-template-columns:38px minmax(0,1fr);align-items:start;gap:10px}
.gd33-layout .gg-footer__contact-row>span:first-child{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#fffdf8}
.gd33-layout .gg-footer__contact-row svg{width:24px;height:24px;fill:none;stroke:#6cb737;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.gd33-layout .gg-footer__contact-row.is-phone svg{stroke:#ff8317}
.gd33-layout .gg-footer__contact-row.is-hours svg{stroke:#2eadd8}
.gd33-layout .gg-footer__contact-row :is(small,strong,em){display:block;font-style:normal}
.gd33-layout .gg-footer__contact-row small{font-size:10px;text-transform:uppercase;color:#63776b;margin-bottom:4px}
.gd33-layout .gg-footer__contact-row strong{font-size:13px;line-height:1.6}
.gd33-layout .gg-footer__contact-row.is-phone strong{font-size:16px;white-space:nowrap}
.gd33-layout .gg-footer__contact-row em{font-size:11px;line-height:1.6}
.gd33-layout .gg-footer__docs{border-top:1px solid #b7cf9f;margin-top:36px;padding-top:28px}
.gd33-layout .gg-footer__docs>div{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px 24px}
.gd33-layout .gg-footer__docs a{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 0;font-size:12px;line-height:1.5}
.gd33-layout .gg-footer__docs i{font:24px/1 Arial;color:#67a832}
.gd33-layout .gg-footer__bottom{display:flex;flex-wrap:wrap;gap:12px 26px;align-items:center;border-top:1px solid #b7cf9f;margin-top:26px;padding-top:22px;color:#536b5f;font-size:10px;line-height:1.6}
.gd33-layout .gg-footer__bottom>span:last-child{margin-left:auto}
.gd33-layout .gg-footer__bottom a{text-decoration:underline;text-underline-offset:3px}

@media(max-width:1180px){
 .gd33-layout .gg-header__inner{width:calc(100% - 40px);display:flex;min-height:112px;justify-content:space-between;padding:0;gap:20px}
 .gd33-layout .gg-header__brand,.gd33-layout .gg-header__brand img{width:146px;height:98px}
 .gd33-layout .gg-header__toggle{display:grid;order:3;width:52px;height:52px;flex:0 0 52px;padding:13px;border:0;border-radius:50%;background:#174d3d;place-content:center;gap:5px;cursor:pointer}
 .gd33-layout .gg-header__toggle span:not(.screen-reader-text){display:block;width:26px;height:3px;border-radius:3px;background:#fff}
 .gd33-layout .gg-header__phone{margin-left:auto}
 .gd33-layout .gg-header__nav{display:none;position:absolute;top:100%;left:20px;right:20px;width:auto;padding:14px;background:#fffdf8;border:1px solid #dce9cf;border-radius:20px;box-shadow:0 12px 30px #174d3d1c;max-height:calc(100dvh - 130px);overflow-y:auto;overscroll-behavior:contain;align-items:stretch;gap:0}
 .gd33-layout .gg-header.is-open .gg-header__nav{display:flex;flex-direction:column}
 .gd33-layout .gg-header__nav>a,.gd33-layout .gg-header__nav-main{display:flex;justify-content:space-between;width:100%;padding:14px 12px;font-size:14px;min-height:48px;white-space:normal}
 .gd33-layout .gg-header__nav-main{border-bottom:1px solid #e7efde}
 .gd33-layout .gg-header__submenu{position:static;width:100%;max-width:none;border:0;border-radius:12px;background:#f1f6e7;box-shadow:none;margin:0 0 8px;padding:6px}
 .gd33-layout .gg-header__submenu a{font-size:14px;min-height:44px}
 .gd33-layout .gg-nav-underline{display:none}
 .gd33-layout .gg-footer__top{grid-template-columns:1fr 1fr;gap:32px 40px}
 .gd33-layout .gg-footer__docs>div{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(min-width:761px) and (max-width:1100px){
 .gd33-layout .gg-hero__main{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px}
 .gd33-layout .gg-hero h1{font-size:clamp(34px,4.3vw,48px)}
 .gd33-layout .gg-title-line{max-width:100%}
 .gd33-layout .gg-hero__copy{padding-top:24px}
 .gd33-layout .gg-hero__lead{font-size:16px}
 .gd33-layout .gg-hero__facts{gap:16px;flex-wrap:wrap}
 .gd33-layout .gg-environment__inner{grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:24px}
 .gd33-layout .gg-environment__cards{gap:12px}
 .gd33-layout .gg-environment__cards article{padding:20px 14px;min-height:0}
}
@media(min-width:761px) and (max-width:1000px){
 .gd33-layout .ghp-programs__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .gd33-layout .ghp-programs__grid article{min-width:0;padding:30px}
}
@media(max-width:760px){
 .gd33-layout .ga-direction-group__header h3{overflow-wrap:anywhere}
 .gd33-layout .gdt-approach h2{font-size:clamp(28px,8vw,42px);overflow-wrap:anywhere}
 .gd33-layout .ga-direction-card{height:auto;min-height:245px;padding-bottom:48px}
 .gd33-layout .ga-direction-card__tag{font-size:8px}
 .gd33-layout .ga-direction-card strong{margin-right:6px;font-size:13px;line-height:1.4}
 .gd33-layout .gg-header__inner{min-height:96px;width:calc(100% - 32px);gap:10px}
 .gd33-layout .gg-header__brand,.gd33-layout .gg-header__brand img{width:126px;height:84px}
 .gd33-layout .gg-header__phone{display:none}
 .gd33-layout .gg-header__nav{left:12px;right:12px;max-height:calc(100dvh - 112px)}
 .gd33-layout .gg-footer__wave{height:36px}
 .gd33-layout .gg-footer__inner{width:calc(100% - 40px);padding-top:24px}
 .gd33-layout .gg-footer__top{grid-template-columns:minmax(0,1fr);gap:30px}
 .gd33-layout .gg-footer__brand>a{width:154px}
 .gd33-layout .gg-footer__brand img{width:154px;margin:0 0 12px}
 .gd33-layout .gg-footer__brand p{max-width:none}
 .gd33-layout .gg-footer__nav>div{grid-template-columns:1fr 1fr;gap:8px 24px}
 .gd33-layout .gg-footer h2{margin-bottom:14px}
 .gd33-layout .gg-footer__nav a,.gd33-layout .gg-footer__docs a{font-size:14px;min-height:40px}
 .gd33-layout .gg-footer__project{padding:18px 16px}
 .gd33-layout .gg-footer__project strong{font-size:18px}
 .gd33-layout .gg-footer__project em{font-size:12px}
 .gd33-layout .gg-footer__contact-row strong{font-size:15px}
 .gd33-layout .gg-footer__contact-row small{font-size:11px}
 .gd33-layout .gg-footer__contact-row em{font-size:13px}
 .gd33-layout .gg-footer__docs>div{grid-template-columns:minmax(0,1fr);gap:2px}
 .gd33-layout .gg-footer__bottom{display:grid;font-size:12px;gap:14px}
 .gd33-layout .gg-footer__bottom>span:last-child{margin-left:0}
 .gd33-layout :is(.gd-request,.gd-callback-modal) input:not([type=checkbox]):not([type=hidden]),.gd33-layout :is(.gd-request,.gd-callback-modal) textarea{font-size:16px}
}
@media(max-width:380px){
 .gd33-layout .gdv2-b5-teacher__card{margin-left:12px;width:calc(100% - 24px);padding:74px 18px 20px}
 .gd33-layout .gdv2-b5-teacher__avatar{top:20px;left:18px}
 .gd33-layout .gdv2-b5-teacher__card h3{font-size:22px;overflow-wrap:anywhere}
 .gd33-layout .gdv2-b13__title{font-size:34px}
}
@media(prefers-reduced-motion:reduce){.gd33-layout *{scroll-behavior:auto!important;transition-duration:0s!important;animation-duration:.01ms!important}}

/* Original section dividers recovered from the approved source package. */
.gd33-layout .gdv2-b5::before{background-image:url("prodlenka/wave-05-top.svg")}
.gd33-layout .gdv2-b5::after{background-image:url("prodlenka/wave-05-bottom.svg")}
.gd33-layout .gdv2-b6::before{background-image:url("prodlenka/wave-06-top.svg")}
.gd33-layout .gdv2-b6::after{background-image:url("prodlenka/wave-06-bottom.svg")}
.gd33-layout .gdv2-b7::before{background-image:url("prodlenka/wave-07-top.svg")}
.gd33-layout .gdv2-b7::after{background-image:url("prodlenka/wave-07-bottom.svg")}
.gd33-layout .gdv2-b10::before{background-image:url("prodlenka/wave-10-top.svg")}
.gd33-layout .gdv2-b10::after{background-image:url("prodlenka/wave-10-bottom.svg")}
.gd33-layout .gdv2-b13::before{background-image:url("prodlenka/wave-13-top.svg")}
.gd33-layout .gdv2-b13::after{background-image:url("prodlenka/wave-13-bottom.svg")}
.gd33-layout .gdv2-b14::before{background-image:url("prodlenka/wave-14-top.svg")}
.gd33-layout .gdv2-b14::after{background-image:url("prodlenka/wave-14-bottom.svg")}
.gd33-layout .gdv2-b15::before{background-image:url("prodlenka/wave-15-top.svg")}
.gd33-layout .gdv2-b15::after{background-image:url("prodlenka/wave-15-bottom.svg")}
.gd33-layout .gdv2-b16::before{background-image:url("prodlenka/wave-16-top.svg")}
.gd33-layout .gdv2-b16::after{background-image:url("prodlenka/wave-16-bottom.svg")}
