button,
hr,
input {
  overflow: visible;
}
progress,
sub,
sup {
  vertical-align: baseline;
}
[type=checkbox],
[type=radio],
legend {
  box-sizing: border-box;
  padding: 0;
}
html {
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
}
body {
  margin: 0;
}
details,
main {
  display: block;
}
h1 {
  margin: 0.67em 0;
  font-size: 2em;
}
hr {
  box-sizing: content-box;
  height: 0;
}
code,
kbd,
pre,
samp {
  font-size: 1em;
  font-family: monospace, monospace;
}
a {
  background-color: transparent;
}
abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  text-decoration: underline dotted;
}
b,
strong {
  font-weight: bolder;
}
small {
  font-size: 80%;
}
sub,
sup {
  position: relative;
  font-size: 75%;
  line-height: 0;
}
sub {
  bottom: -0.25em;
}
sup {
  top: -0.5em;
}
img {
  border-style: none;
}
button,
input,
optgroup,
select,
textarea {
  margin: 0;
  font-size: 100%;
  line-height: 1.15;
  font-family: inherit;
}
button,
select {
  text-transform: none;
}
[type=button],
[type=reset],
[type=submit],
button {
  -webkit-appearance: button;
}
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner,
button::-moz-focus-inner {
  border-style: none;
  padding: 0;
}
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring,
button:-moz-focusring {
  outline: ButtonText dotted 1px;
}
fieldset {
  padding: 0.35em 0.75em 0.625em;
}
legend {
  display: table;
  max-width: 100%;
  color: inherit;
  white-space: normal;
}
textarea {
  overflow: auto;
}
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}
[type=search] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}
::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}
summary {
  display: list-item;
}
[hidden],
template {
  display: none;
}
:root {
  --color-text: #212121;
  --color-text-muted: color-mix(in srgb, var(--color-text) 70%, transparent);
  --color-text-subtle: color-mix(in srgb, var(--color-text) 38%, transparent);
  --color-accent: #2271b1;
  --color-bg: color-mix(in srgb, var(--color-text) 12%, transparent);
  --color-bg-accent: color-mix(in srgb, var(--color-accent) 12%, transparent);
  --color-border: color-mix(in srgb, var(--color-text) 24%, transparent);
  --color-border-input: color-mix( in srgb, var(--color-text) 60%, transparent );
  --color-border-accent: color-mix( in srgb, var(--color-accent) 24%, transparent );
  --color-bg-dark: var(--color-text);
  --font-heading:
    system-ui,
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    Roboto,
    Helvetica,
    Arial,
    sans-serif;
  --font-body:
    system-ui,
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    Roboto,
    Helvetica,
    Arial,
    sans-serif;
  --font-icons: "Material Symbols Rounded";
  --layout-max-width: 1272px;
  --layout-max-width-narrow: 948px;
  --modal-max-width: 1056px;
  --modal-max-width-medium: 840px;
  --layout-padding: 24px;
  --layout-spacing: 12px;
  --layout-gap: 24px;
  --layout-column-gap: 24px;
  --layout-row-gap: 36px;
  --header-height: calc(var(--logo-height) + var(--layout-spacing) * 4);
  --box-shadow: 0 6px 6px color-mix(in srgb, var(--color-accent) 8%, transparent);
  --border-radius-multiplier: 1;
  --border-radius-maybe-rounded: calc( var(--border-radius) + var(--rounded) * 999px );
}
@media (max-width: 767px) {
  :root {
    --layout-padding: 16px;
    --layout-spacing: 8px;
    --layout-gap: 12px;
    --layout-column-gap: 12px;
    --layout-row-gap: 24px;
    --header-height: calc( var(--logo-height-mobile) + var(--layout-spacing) * 4 );
    --border-radius-multiplier: 0.75;
  }
}
html {
  scroll-behavior: smooth;
  scroll-padding-top: calc(var(--layout-spacing) * 2);
}
body {
  overflow-y: scroll;
}
body.no-overflow {
  width: auto;
  overflow: hidden;
  overscroll-behavior-y: none;
}
body.no-overflow .site:before {
  opacity: 1;
  pointer-events: auto;
}
body.no-overflow .site-header,
body.no-overflow .main-navigation,
body.no-overflow .site-main,
body.no-overflow .site-footer {
  padding-right: var(--scrollbar-width, 0px);
}
body {
  color: var(--color-text);
  font-style: normal;
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.666;
  font-family: var(--font-body);
  font-optical-sizing: auto;
  -webkit-font-smoothing: antialiased;
}
@media (max-width: 767px) {
  body {
    font-size: 0.9375rem;
  }
}
h1,
h2,
h3,
h4,
h5,
h6 {
  margin-block-start: 1.25em;
  margin-block-end: 0.5em;
  font-weight: 600;
  line-height: 1.3333;
  font-family: var(--font-heading);
}
:root :where(.is-layout-flow) > h1,
:root :where(.is-layout-flow) > h2,
:root :where(.is-layout-flow) > h3,
:root :where(.is-layout-flow) > h4,
:root :where(.is-layout-flow) > h5,
:root :where(.is-layout-flow) > h6 {
  margin-block-start: 1.25em;
}
h1:first-child,
h2:first-child,
h3:first-child,
h4:first-child,
h5:first-child,
h6:first-child {
  margin-block-start: 0;
}
h1:last-child,
h2:last-child,
h3:last-child,
h4:last-child,
h5:last-child,
h6:last-child {
  margin-block-end: 0;
}
h1 + p,
h2 + p,
h3 + p,
h4 + p,
h5 + p,
h6 + p {
  margin-block-start: 0.5em;
}
h1 {
  font-size: clamp(2rem, 1.09rem + 3.03vw, 3.5rem);
  font-weight: 700;
  line-height: 1.1;
  letter-spacing: -0.03em;
}
h1.modal {
  font-size: clamp(1.5rem, 1.05rem + 1.52vw, 2.25rem);
  line-height: 1.2;
  letter-spacing: -0.02em;
  text-wrap: balance;
}
h2 {
  font-size: clamp(1.25rem, 0.95rem + 1.01vw, 1.75rem);
  letter-spacing: -0.01em;
}
h3 {
  font-size: clamp(1.06rem, 0.91rem + 0.51vw, 1.31rem);
}
h3.small {
  font-size: clamp(1rem, 0.92rem + 0.25vw, 1.13rem);
}
h4 {
  font-size: clamp(1rem, 0.92rem + 0.25vw, 1.13rem);
}
h5,
h6 {
  font-weight: 700;
  line-height: 1.5;
}
h5 {
  font-size: 16px;
}
@media (max-width: 767px) {
  h5 {
    font-size: 15px;
  }
}
h1.page-title,
h2.section-title {
  margin: 0;
}
p,
ul,
:root :where(.is-layout-flow) > p,
:root :where(.is-layout-flow) > ul {
  margin-block-start: 0.5em;
}
ul {
  margin-block: 0.75em;
  padding-inline-start: 2em;
}
li > ul {
  margin-block-start: 0.25em;
}
a {
  color: var(--color-accent);
}
p {
  margin-block-end: 0.75em;
}
p:first-child {
  margin-block-start: 0;
}
p:last-child {
  margin-block-end: 0;
}
b,
strong {
  font-weight: 700;
}
.large {
  font-size: clamp(1rem, 0.92rem + 0.25vw, 1.13rem);
  font-weight: 500;
}
small,
.small {
  font-size: 14px;
  font-size: 80%;
}
@media (max-width: 767px) {
  small,
  .small {
    font-size: 13px;
    font-size: 80%;
  }
}
.tiny,
.tiny {
  font-size: 12px;
  font-size: 60%;
}
@media (max-width: 767px) {
  .tiny,
  .tiny {
    font-size: 11px;
    font-size: 60%;
  }
}
code,
.code {
  font-weight: 400;
}
section,
figure {
  margin: 0;
}
address {
  font-style: normal;
}
.wp-block-heading[class*=is-style-edu-branch-] {
  position: relative;
  flex-direction: column;
  margin-block-end: 0.75em;
}
.wp-block-heading[class*=is-style-edu-branch-]::after {
  content: "";
  display: block;
  height: clamp(1px, 0.1em, 3px);
  width: 2em;
  margin-block-start: 0.25em;
  background-color: var(--color-bg-accent);
  background-color: var(--color);
}
@font-face {
  font-style: normal;
  font-weight: 400;
  src: url(../fonts/icons/material-symbols-rounded.woff2) format("woff2");
  font-family: "Material Symbols Rounded";
}
.icon {
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  font-size: 20px;
  line-height: 1;
  font-family: "Material Symbols Rounded";
  -webkit-font-feature-settings: "liga";
  letter-spacing: normal;
  direction: ltr;
  text-transform: none;
  white-space: nowrap;
  word-wrap: normal;
  text-align: center;
  text-decoration: inherit;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-variation-settings:
    "FILL" 0,
    "wght" 400,
    "GRAD" 0,
    "opsz" 20;
}
.icon--24 {
  font-size: 24px;
  font-variation-settings: "opsz" 24;
}
.icon--200 {
  font-variation-settings: "wght" 200;
}
.icon--300 {
  font-variation-settings: "wght" 300;
}
.icon:before {
  display: inherit;
}
.icon--mail::before {
  content: "\e158";
}
.icon--menu::before {
  content: "\e5d2";
}
.icon--near_me::before {
  content: "\e569";
}
.icon--close::before {
  content: "\e5cd";
}
.icon--search::before {
  content: "\e8b6";
}
.icon--account_tree::before {
  content: "\e97a";
}
.icon--phone_enabled::before {
  content: "\e9cd";
}
.icon--accessibility_new::before {
  content: "\e92c";
}
.icon--keyboard_arrow_down::before {
  content: "\e313";
}
.icon--keyboard_arrow_left::before {
  content: "\e314";
}
.icon--keyboard_arrow_right::before {
  content: "\e315";
}
.icon--keyboard_arrow_up::before {
  content: "\e316";
}
.icon--arrow_left_alt::before {
  content: "\e940";
}
.icon--arrow_right_alt::before {
  content: "\e941";
}
.icon--arrow_forward::before {
  content: "\e5c8";
}
.icon--arrow_forward_ios::before {
  content: "\e5e1";
}
.icon--arrow_black::before {
  content: "\e5c4";
}
.icon--arrow_back_ios_new::before {
  content: "\e2ea";
}
.icon--arrow_outward::before {
  content: "\f8ce";
}
.icon--arrow_outward_down::before {
  content: "\f8ce";
}
.icon--arrow_top_right::before {
  content: "\f72d";
}
.icon--arrow_top_right_down::before {
  content: "\f72d";
}
.icon--topic::before {
  content: "\f1c8";
}
.icon--person::before {
  content: "\e7fd";
}
.icon--account_circle::before {
  content: "\e853";
}
.icon--docs::before {
  content: "\ea7d";
}
.icon--download::before {
  content: "\f090";
}
.icon--arrow_top_right_down::before,
.icon--arrow_outward_down::before {
  transform: rotate(90deg);
}
@font-face {
  font-style: normal;
  font-weight: normal;
  src: url(../fonts/social-icons/social-icons.woff2) format("woff"), url(../fonts/social-icons/social-icons.woff) format("woff2");
  font-family: "Social Icons";
}
.s-icon {
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1;
  font-family: "Social Icons";
  letter-spacing: normal;
  direction: ltr;
  text-transform: none;
  word-wrap: normal;
  text-align: center;
  text-decoration: inherit;
  white-space: nowrap;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.s-icon--discord::before {
  content: "\e816";
}
.s-icon--facebook::before {
  content: "\e819";
}
.s-icon--facebook-alt::before {
  content: "\e817";
}
.s-icon--facebook-alt2::before {
  content: "\e818";
}
.s-icon--instagram-alt::before {
  content: "\e81a";
}
.s-icon--linkedin-alt::before {
  content: "\e81b";
}
.s-icon--linkedin::before {
  content: "\e81c";
}
.s-icon--instagram::before {
  content: "\e81d";
}
.s-icon--messenger::before {
  content: "\e81f";
}
.s-icon--pinterest-alt::before {
  content: "\e820";
}
.s-icon--pinterest::before {
  content: "\e821";
}
.s-icon--snapchat::before {
  content: "\e822";
}
.s-icon--tamo::before {
  content: "\e823";
}
.s-icon--telegram::before {
  content: "\e824";
}
.s-icon--threads-alt::before {
  content: "\e825";
}
.s-icon--threads::before {
  content: "\e826";
}
.s-icon--tiktok::before {
  content: "\e827";
}
.s-icon--viber::before {
  content: "\e828";
}
.s-icon--x-alt::before {
  content: "\e829";
}
.s-icon--x::before {
  content: "\e82a";
}
.s-icon--youtube::before {
  content: "\e82b";
}
body:not(.wp-admin) :focus-visible {
  outline: 2px solid color-mix(in srgb, var(--color-accent) 48%, transparent);
  outline-offset: 0;
}
body:not(.wp-admin) .site-footer--dark-bg :focus-visible {
  outline-color: rgba(255, 255, 255, 0.48);
}
body:not(.wp-admin) ::selection {
  background-color: color-mix(in srgb, var(--color-accent) 24%, transparent);
}
body:not(.wp-admin) .srt {
  position: absolute;
  clip-path: inset(50%);
  margin: -1px;
  border: 0;
  padding: 0;
  width: 1px;
  height: 1px;
  overflow: hidden;
  white-space: nowrap;
}
@media (max-width: 767px) {
  body:not(.wp-admin) .srt-mobile {
    position: absolute;
    clip-path: inset(50%);
    margin: -1px;
    border: 0;
    padding: 0;
    width: 1px;
    height: 1px;
    overflow: hidden;
    white-space: nowrap;
  }
}
body:not(.wp-admin) .mobile-only {
  display: none;
}
@media (max-width: 767px) {
  body:not(.wp-admin) .mobile-only {
    display: block;
  }
}
body:not(.wp-admin) .skip-link:focus {
  clip: auto !important;
  display: block;
  top: 5px;
  left: 5px;
  z-index: 100000;
  clip-path: none;
  padding-inline: 1em;
  padding-block: 0.5em;
  width: auto;
  height: auto;
  font-weight: 700;
  line-height: normal;
  text-decoration: none;
}
.overlay {
  position: fixed;
  top: 0;
  left: 0;
  opacity: 0;
  z-index: 9;
  transition: opacity 0.2s ease;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: color-mix(in srgb, var(--color-text) 60%, transparent);
  pointer-events: auto;
  content: "";
}
.overlay.is-active {
  opacity: 1;
}
.editor-styles-wrapper {
  padding-inline: calc(var(--layout-spacing) * 2);
}
.editor-styles-wrapper .editor-visual-editor__post-title-wrapper,
.editor-styles-wrapper .is-root-container {
  margin-inline: auto;
  width: 100%;
  max-width: var(--editor-max-width);
}
h1.block-editor-block-list__block {
  margin-block-end: calc(var(--layout-spacing) * 2);
}
.site-header {
  position: relative;
  z-index: 11;
  background-color: #ffffff;
}
@media (max-width: 767px) {
  .site-header {
    anchor-name: --site-header;
  }
}
.site-header a.english-page-link {
  color: var(--color-text);
  font-weight: 500;
  font-size: 15px;
  text-decoration: none;
}
@media (max-width: 767px) {
  .site-header a.english-page-link {
    display: none;
    font-size: 14px;
  }
}
.site-header a.english-page-link:hover {
  color: var(--color-accent);
}
.site-header button[aria-controls=header-search] {
  display: none;
}
.site-header button[aria-controls=header-search][aria-expanded=true] .icon:before {
  content: "\e5cd";
}
@media (max-width: 767px) {
  .site-header button[aria-controls=header-search] {
    display: flex;
  }
}
.site-header__inner {
  display: flex;
  column-gap: var(--layout-column-gap);
  justify-content: space-between;
  align-items: center;
  padding-block: calc(var(--layout-spacing) * 2);
}
@media (max-width: 767px) {
  .site-header__inner {
    column-gap: var(--layout-spacing);
  }
}
.site-header__left,
.site-header__right {
  display: flex;
  column-gap: var(--layout-column-gap);
  align-items: center;
}
@media (max-width: 767px) {
  .site-header__left,
  .site-header__right {
    column-gap: var(--layout-spacing);
  }
}
.site-header__left > .icon-links,
.site-header__right > .icon-links {
  margin-inline-start: var(--layout-column-gap);
}
@media (max-width: 1199px) {
  .site-header__left > .icon-links,
  .site-header__right > .icon-links {
    margin-inline-start: 0;
  }
}
@media (max-width: 1023px) {
  .site-header__left > .icon-links > a:not(.accessibility-link),
  .site-header__right > .icon-links > a:not(.accessibility-link) {
    display: none;
  }
}
@media (max-width: 767px) {
  .site-header__search {
    margin-left: auto;
  }
}
.site-header__search > button {
  display: none;
}
@media (max-width: 767px) {
  .site-header__search > button {
    display: flex;
  }
}
@media (max-width: 767px) {
  .site-header__search .button .icon.icon--24 {
    font-size: 20px;
  }
}
@media (max-width: 767px) {
  .site-header__search .button {
    --h: 40px;
  }
}
@media (max-width: 767px) {
  .site-header__search .search-form-wrap {
    display: block;
    position: absolute;
    top: var(--header-height);
    left: 0;
    visibility: hidden;
    clip-path: inset(0 0 100% 0);
    transition: clip-path 0.24s ease, visibility 0.24s ease;
    border-bottom: 1px solid var(--color-border-accent);
    background-color: white;
    padding: calc(var(--layout-spacing) * 2);
    width: 100%;
    overflow: clip;
    pointer-events: auto;
  }
  .site-header__search .search-form-wrap.is-open {
    visibility: visible;
    clip-path: inset(0 0 0 0);
  }
}
.site-header__search .search-form {
  position: relative;
}
.site-header__search .search-form input[type=search] {
  padding-inline-end: var(--h);
  width: 100%;
}
@media (max-width: 767px) {
  .site-header__search .search-form input[type=search] {
    --h: 42px;
  }
}
.site-header__search .search-form button[type=submit] {
  --h: 32px;
  position: absolute;
  top: 5px;
  right: 5px;
  border-radius: calc(var(--border-radius-maybe-rounded) * 0.75);
}
.site-header__search .search-form button[type=submit] span {
  display: none;
}
.site-header__nav {
  display: flex;
  column-gap: inherit;
  align-items: center;
}
.site-footer {
  display: flex;
  row-gap: calc(var(--layout-spacing) * 3);
  flex-direction: column;
  background-color: var(--color-bg-accent);
  font-size: 15px;
  line-height: 1.5;
}
@media (max-width: 767px) {
  .site-footer {
    font-size: 14px;
  }
}
.site-footer img {
  display: inline-block;
  vertical-align: middle;
}
.site-footer p {
  margin: 0;
}
.site-footer a:not(.button) {
  transition: background-color 0.2s ease;
  color: var(--color-text);
  text-decoration: none;
}
.site-footer a:not(.button):not(.button):hover {
  text-decoration: underline;
}
.site-footer hr {
  margin: 0;
}
.site-footer.site-footer--dark-bg {
  background-color: var(--color-text);
  color: white;
}
.site-footer.site-footer--dark-bg a:not(.button) {
  color: white;
}
.site-footer.site-footer--dark-bg a:not(.button):hover {
  color: white;
}
.site-footer.site-footer--dark-bg .button {
  --c: white;
  --bg: rgba(255, 255, 255, 0.4);
}
.site-footer.site-footer--dark-bg hr {
  background-color: rgba(255, 255, 255, 0.08);
}
.site-footer.site-footer--white-logo .custom-logo,
.site-footer.site-footer--white-logo .sonaro-logo {
  filter: brightness(0) invert(1);
}
.site-footer__top,
.site-footer__middle,
.site-footer__bottom {
  display: flex;
  justify-content: space-between;
  gap: calc(var(--layout-spacing) * 2);
  row-gap: calc(var(--layout-spacing) * 4);
}
@media (max-width: 767px) {
  .site-footer__top,
  .site-footer__middle,
  .site-footer__bottom {
    flex-direction: column;
  }
}
.site-footer__top > div,
.site-footer__middle > div,
.site-footer__bottom > div {
  width: 100%;
}
.site-footer__top {
  padding-block-start: calc(var(--layout-spacing) * 6);
  padding-block-end: calc(var(--layout-spacing) * 3);
}
.site-footer__top-left {
  display: flex;
  align-items: flex-start;
  gap: calc(var(--layout-spacing) * 2);
}
@media (max-width: 767px) {
  .site-footer__top-left {
    flex-direction: column;
  }
}
.site-footer__top-left .institution-contacts {
  margin-block: var(--layout-spacing);
}
.site-footer__top-left .institution-contacts:last-child {
  margin-block-end: 0;
}
.site-footer__top-right {
  display: flex;
  row-gap: calc(var(--layout-spacing) * 4);
  flex-direction: column;
  align-items: flex-end;
  text-align: right;
}
@media (max-width: 767px) {
  .site-footer__top-right {
    align-items: flex-start;
    text-align: left;
  }
}
.site-footer__top-right > nav {
  margin-top: auto;
}
.site-footer__top-right > nav ul {
  display: flex;
  column-gap: var(--layout-spacing);
  row-gap: var(--layout-spacing);
  flex-wrap: wrap;
  margin: 0;
  padding: 0;
  list-style: none;
}
.site-footer__top-right .institution-branches {
  display: flex;
  width: 100%;
}
@media (max-width: 767px) {
  .site-footer__top-right .institution-branches {
    row-gap: calc(var(--layout-spacing) * 3);
    flex-direction: column;
  }
}
.site-footer__top-right .institution-branches > div {
  width: 100%;
}
@media (max-width: 767px) {
  .site-footer__top-right .institution-branches > div {
    width: 75%;
  }
}
.site-footer__top-right .institution-branches > div p {
  padding-inline-start: calc(var(--layout-spacing) * 2);
}
@media (max-width: 767px) {
  .site-footer__top-right .institution-branches > div p {
    padding-inline-start: 0;
  }
}
.site-footer__top-right .institution-branches > div hr {
  display: block;
  margin-block: var(--layout-spacing);
  width: 100%;
  height: 2px;
}
.site-footer__middle {
  align-items: center;
  font-size: 14px;
}
@media (max-width: 767px) {
  .site-footer__middle {
    flex-direction: column;
    align-items: flex-start;
    font-size: 13px;
  }
}
div.site-footer__middle--right {
  display: flex;
  column-gap: var(--layout-spacing);
  align-items: center;
  width: auto;
}
div.site-footer__middle--right > span {
  opacity: 0.6;
}
@media (max-width: 767px) {
  div.site-footer__middle--right > span {
    display: none;
  }
}
.site-footer__bottom {
  align-items: flex-end;
  padding-block-end: calc(var(--layout-spacing) * 3);
  font-size: 14px;
}
@media (max-width: 767px) {
  .site-footer__bottom {
    flex-direction: column-reverse;
    font-size: 13px;
  }
}
.site-footer__bottom p {
  opacity: 0.6;
}
.site-footer__bottom p:not(:first-child) {
  margin-top: 0.5em;
}
.site-footer__bottom-right {
  text-align: right;
}
@media (max-width: 767px) {
  .site-footer__bottom-right {
    text-align: initial;
  }
}
.institution-founder {
  display: flex;
  column-gap: var(--layout-spacing);
  align-items: center;
  font-size: 14px;
}
@media (max-width: 767px) {
  .institution-founder {
    font-size: 13px;
  }
}
.institution-founder p {
  margin: 0;
}
.institution-founder span {
  opacity: 0.6;
}
.institution-founder img {
  width: auto;
  height: calc(var(--layout-spacing) * 4);
}
.site-footer__contacts {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: var(--layout-spacing);
  margin: 0;
  padding: 0;
  list-style: none;
}
@media (max-width: 767px) {
  .site-footer__contacts {
    justify-content: flex-start;
  }
}
.page-layout {
  margin-block-start: calc(var(--layout-spacing) * 2);
  margin-block-end: calc(var(--layout-spacing) * 8);
}
.page-layout:has(.page-sidebar) {
  display: flex;
  column-gap: var(--layout-column-gap);
}
@media (max-width: 767px) {
  .page-layout:has(.page-sidebar) {
    row-gap: calc(var(--layout-spacing) * 2);
    flex-direction: column;
  }
}
.page-sidebar {
  flex: 0 0 max(240px, 25% - var(--layout-column-gap) * 0.75);
  padding-inline-end: calc(var(--layout-column-gap) * 1.5);
}
.page-main {
  flex-grow: 1;
  flex-basis: 0;
  margin-inline: auto;
  width: 100%;
  max-width: var(--layout-max-width-narrow);
}
.home .page-main,
.page-parent .page-main,
.blog .page-main,
.archive .page-main,
.post-type-archive-edu_partner .page-main {
  max-width: 100%;
}
* {
  box-sizing: border-box;
}
.container {
  margin-inline: auto;
  padding-inline: var(--layout-padding);
  width: 100%;
  max-width: calc(var(--layout-max-width) + var(--layout-padding) * 2);
}
.grid {
  display: grid;
  gap: var(--layout-gap);
}
.grid > * {
  min-width: 0;
}
.grid.grid--2 {
  grid-template-columns: repeat(2, 1fr);
}
.grid.grid--3 {
  grid-template-columns: repeat(3, 1fr);
}
.grid.grid--4 {
  grid-template-columns: repeat(4, 1fr);
}
.grid.grid--5 {
  grid-template-columns: repeat(5, 1fr);
}
.grid.grid--6 {
  grid-template-columns: repeat(6, 1fr);
}
@media (max-width: 1023px) {
  .grid.grid--cards {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 767px) {
  .grid.grid--cards {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 479px) {
  .grid.grid--cards {
    grid-template-columns: repeat(1, 1fr);
    row-gap: calc(var(--layout-spacing) * 1.5);
  }
}
.grid.grid--posts {
  column-gap: var(--layout-column-gap);
  row-gap: var(--layout-row-gap);
}
@media (max-width: 1023px) {
  .grid.grid--posts {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 767px) {
  .grid.grid--posts {
    grid-template-columns: repeat(1, 1fr);
  }
}
ul.grid {
  margin: 0;
  padding: 0;
  list-style: none;
}
.main-navigation {
  display: block;
  position: absolute;
  top: var(--header-height);
  left: 0;
  visibility: hidden;
  clip-path: inset(0 0 100% 0);
  transition: clip-path 0.24s ease, visibility 0.24s ease;
  border-bottom: 1px solid var(--color-border-accent);
  background-color: white;
  width: 100%;
  overflow: clip;
  pointer-events: auto;
  line-height: 1.3333;
}
@media (max-width: 767px) {
  .main-navigation {
    position-anchor: --site-header;
    position-area: bottom center;
    position: fixed;
    top: 0;
    border-top: none;
    padding: var(--layout-padding);
    padding-block-start: 0;
    height: calc(100svh - var(--header-height));
    line-height: inherit;
  }
  body.no-overflow .main-navigation {
    padding: var(--layout-padding);
    padding-block-start: 0;
  }
}
.main-navigation.is-open {
  visibility: visible;
  clip-path: inset(0 0 0 0);
  pointer-events: auto;
}
.main-navigation ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.main-navigation hr {
  margin-block: calc(var(--layout-spacing) * 3);
}
@media (max-width: 767px) {
  .main-navigation hr {
    display: none;
  }
}
.main-navigation button.submenu-toggle {
  display: none;
}
@media (max-width: 767px) {
  .main-navigation button.submenu-toggle {
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    cursor: pointer;
    border: none;
    border-left: 1px solid var(--color-border-accent);
    border-radius: 0;
    background: transparent;
    padding: 0;
    width: 48px;
    height: 48px;
  }
}
@media (max-width: 767px) {
  .main-navigation button.submenu-toggle i::before {
    content: "\e313";
  }
}
@media (max-width: 767px) {
  .main-navigation button.submenu-toggle[aria-expanded=true] i::before {
    content: "\e316";
  }
}
.main-navigation li.menu-item a:not(.text-button) {
  display: inline-flex;
  align-items: center;
  transition: color 0.2s ease;
  color: var(--color-text);
  text-decoration: none;
}
@media (max-width: 767px) {
  .main-navigation li.menu-item a:not(.text-button) {
    display: block;
  }
}
.main-navigation li.menu-item a:not(.text-button):hover {
  color: var(--color-accent);
}
.main-navigation li.menu-item a:not(.text-button):hover:not(.text-button) {
  text-decoration: underline;
}
@media (max-width: 767px) {
  .main-navigation li.menu-item a:not(.text-button):hover:not(.text-button) {
    color: var(--color-text);
    text-decoration: none;
  }
}
.main-navigation li.menu-item a:not(.text-button)[target=_blank]:after {
  display: inline;
  position: relative;
  top: 1px;
  vertical-align: middle;
  margin-inline-start: 0.2em;
  width: 1em;
  overflow: hidden;
  content: "\f8ce";
  font-size: 16px;
  line-height: 1;
  font-family: var(--font-icons);
  text-decoration: none;
}
@media (max-width: 767px) {
  .main-navigation li.menu-item a:not(.text-button)[target=_blank]:after {
    top: 0;
  }
}
@media (max-width: 767px) {
  .main-navigation li.menu-item.is-sub-open {
    background-color: var(--color-bg-accent);
  }
}
.main-navigation__wrap {
  padding-block-start: calc(var(--layout-spacing) * 2);
  padding-block-end: calc(var(--layout-spacing) * 4);
  max-height: calc(100svh - var(--header-height));
  overflow: auto;
}
@media (max-width: 767px) {
  .main-navigation__wrap {
    border: 1px solid var(--color-border-accent);
    border-radius: var(--border-radius);
    padding-inline: 0;
    padding-block: 0;
    height: 100%;
  }
}
.main-navigation__bottom {
  display: flex;
  column-gap: var(--layout-column-gap);
  justify-content: space-between;
  align-items: center;
}
@media (max-width: 767px) {
  .main-navigation__bottom {
    display: block;
  }
}
ul.primary-menu {
  display: flex;
  column-gap: var(--layout-column-gap);
  row-gap: var(--layout-row-gap);
}
@media (max-width: 1199px) {
  ul.primary-menu {
    grid-template-columns: repeat(4, 1fr);
  }
}
@media (max-width: 1023px) {
  ul.primary-menu {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 767px) {
  ul.primary-menu {
    display: block;
  }
}
ul.primary-menu > li {
  flex-grow: 1;
  max-width: 25%;
}
@media (max-width: 767px) {
  ul.primary-menu > li {
    max-width: 100%;
  }
}
ul.primary-menu > li.menu-item:nth-child(n+7) {
  display: none;
}
@media (max-width: 767px) {
  ul.primary-menu > li.menu-item:nth-child(n+7) {
    display: block;
  }
}
ul.primary-menu > li.submenu-toggle > a {
  pointer-events: none;
  text-decoration: none;
}
@media (max-width: 767px) {
  ul.primary-menu > li.submenu-toggle > a {
    pointer-events: auto;
  }
}
ul.primary-menu > li.submenu-toggle > a:hover {
  text-decoration: none;
}
ul.primary-menu > li > a {
  font-weight: 600;
  font-size: 19px;
}
@media (max-width: 767px) {
  ul.primary-menu > li > a {
    font-weight: initial;
    font-size: initial;
  }
}
ul.primary-menu ul.sub-menu {
  display: flex;
  row-gap: var(--layout-spacing);
  flex-direction: column;
  margin-block-start: var(--layout-spacing);
}
@media (max-width: 767px) {
  ul.primary-menu ul.sub-menu {
    margin-block-start: 0;
  }
}
@media (max-width: 767px) {
  ul.menu li.menu-item {
    position: relative;
    border-top: 1px solid var(--color-border-accent);
  }
}
@media (max-width: 767px) {
  ul.menu li.menu-item.submenu-toggle button.submenu-toggle {
    border-left: none;
    pointer-events: none;
  }
}
ul.menu li.menu-item.current-menu-item > a {
  color: var(--color-accent);
}
@media (max-width: 767px) {
  ul.menu li.menu-item a {
    display: block;
    align-content: center;
    padding-inline: calc(var(--layout-spacing) * 2);
    height: 48px;
    color: var(--color-text);
    font-weight: 500;
    text-decoration: none;
  }
  ul.menu li.menu-item a .icon {
    display: none;
  }
}
@media (max-width: 767px) {
  ul.menu li.menu-item > ul.sub-menu {
    display: none;
  }
}
@media (max-width: 767px) {
  ul.menu li.menu-item > ul.sub-menu[aria-hidden=false] {
    display: block;
  }
}
@media (max-width: 767px) {
  ul.menu li.menu-item > ul.sub-menu a {
    text-indent: 1em;
  }
}
@media (max-width: 767px) {
  ul.menu li.menu-item > ul.sub-menu ul.sub-menu a {
    text-indent: 2em;
  }
}
ul.primary-menu > li.menu-item:first-child {
  border-top: none;
}
ul.secondary-menu {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: calc(var(--layout-spacing) * 2);
  row-gap: var(--layout-spacing);
  margin-left: auto;
}
@media (max-width: 767px) {
  ul.secondary-menu {
    display: block;
  }
}
.mobile-only-menu {
  display: none;
}
.main-navigation__mobile-footer {
  display: none;
}
@media (max-width: 767px) {
  .main-navigation__mobile-footer {
    display: flex;
    column-gap: calc(var(--layout-spacing) * 2);
    justify-content: space-between;
    align-items: center;
    margin-block-start: calc(var(--layout-spacing) * 3);
    border-top: 1px solid var(--color-border-accent);
    padding-inline: calc(var(--layout-spacing) * 2);
    padding-block: calc(var(--layout-spacing) * 2);
  }
}
@media (max-width: 767px) {
  .main-navigation__mobile-footer > a {
    color: var(--color-text);
    font-weight: 500;
    text-decoration: none;
  }
}
.custom-logo-link {
  display: block;
  flex-shrink: 0;
}
.custom-logo-link img {
  vertical-align: top;
}
@media (max-width: 767px) {
  .custom-logo-link img {
    width: auto;
    height: var(--logo-height-mobile);
  }
}
.button,
.wp-element-button,
a.wp-element-button {
  --h: 48px;
  --c: white;
  --bg: var(--color-accent);
  display: inline-flex;
  column-gap: calc(var(--h) / 8);
  justify-content: center;
  align-items: center;
  opacity: 1;
  transition: background-color 0.2s ease;
  cursor: pointer;
  border: none;
  border-radius: var(--border-radius);
  background-color: var(--bg);
  padding-inline: calc(var(--h) / 2);
  height: var(--h);
  color: var(--c);
  font-weight: 600;
  font-size: initial;
  line-height: 24px;
  text-align: center;
  text-decoration: none;
  white-space: nowrap;
}
@media (max-width: 767px) {
  .button,
  .wp-element-button,
  a.wp-element-button {
    --h: 44px;
    font-size: 14px;
  }
}
.button .icon,
.button .s-icon,
.wp-element-button .icon,
.wp-element-button .s-icon,
a.wp-element-button .icon,
a.wp-element-button .s-icon {
  flex-shrink: 0;
  transition: transform 0.2s ease;
}
.button .icon.icon--24,
.button .s-icon.icon--24,
.wp-element-button .icon.icon--24,
.wp-element-button .s-icon.icon--24,
a.wp-element-button .icon.icon--24,
a.wp-element-button .s-icon.icon--24 {
  font-size: 24px;
}
@media (max-width: 767px) {
  .button .s-icon,
  .wp-element-button .s-icon,
  a.wp-element-button .s-icon {
    font-size: 20px;
  }
}
.button[disabled],
.wp-element-button[disabled],
a.wp-element-button[disabled] {
  opacity: 0.5;
  cursor: not-allowed;
  pointer-events: none;
}
.button:focus-visible,
.wp-element-button:focus-visible,
a.wp-element-button:focus-visible {
  outline: 2px solid color-mix(in srgb, var(--bg) 48%, transparent);
}
.button:hover,
.button[aria-expanded=true],
.wp-element-button:hover,
.wp-element-button[aria-expanded=true],
a.wp-element-button:hover,
a.wp-element-button[aria-expanded=true] {
  opacity: 1;
  background-color: color-mix(in oklch, var(--bg), black 24%);
  text-decoration: none;
}
.button:hover > .icon--arrow_right_alt,
.button[aria-expanded=true] > .icon--arrow_right_alt,
.wp-element-button:hover > .icon--arrow_right_alt,
.wp-element-button[aria-expanded=true] > .icon--arrow_right_alt,
a.wp-element-button:hover > .icon--arrow_right_alt,
a.wp-element-button[aria-expanded=true] > .icon--arrow_right_alt {
  transform: translateX(2px);
}
.button:active,
.wp-element-button:active,
a.wp-element-button:active {
  background-color: color-mix(in oklch, var(--bg), black 36%);
  text-decoration: none;
}
.button.button--secondary,
.is-style-outline > .button,
.wp-element-button.button--secondary,
.is-style-outline > .wp-element-button,
a.wp-element-button.button--secondary,
.is-style-outline > a.wp-element-button {
  --c: var(--color-accent);
  border: 1px solid var(--color-accent);
  background-color: transparent;
}
.button.button--secondary:hover,
.button.button--secondary[aria-expanded=true],
.is-style-outline > .button:hover,
.is-style-outline > .button[aria-expanded=true],
.wp-element-button.button--secondary:hover,
.wp-element-button.button--secondary[aria-expanded=true],
.is-style-outline > .wp-element-button:hover,
.is-style-outline > .wp-element-button[aria-expanded=true],
a.wp-element-button.button--secondary:hover,
a.wp-element-button.button--secondary[aria-expanded=true],
.is-style-outline > a.wp-element-button:hover,
.is-style-outline > a.wp-element-button[aria-expanded=true] {
  background-color: var(--color-accent);
  color: white;
}
.button.button--light,
.button.button--transparent,
.wp-element-button.button--light,
.wp-element-button.button--transparent,
a.wp-element-button.button--light,
a.wp-element-button.button--transparent {
  --c: var(--color-text);
  background-color: color-mix(in srgb, var(--bg) 12%, transparent);
}
.button.button--light:hover,
.button.button--light[aria-expanded=true],
.button.button--transparent:hover,
.button.button--transparent[aria-expanded=true],
.wp-element-button.button--light:hover,
.wp-element-button.button--light[aria-expanded=true],
.wp-element-button.button--transparent:hover,
.wp-element-button.button--transparent[aria-expanded=true],
a.wp-element-button.button--light:hover,
a.wp-element-button.button--light[aria-expanded=true],
a.wp-element-button.button--transparent:hover,
a.wp-element-button.button--transparent[aria-expanded=true] {
  background-color: color-mix(in srgb, var(--bg) 24%, transparent);
}
.button.button--light:active,
.button.button--transparent:active,
.wp-element-button.button--light:active,
.wp-element-button.button--transparent:active,
a.wp-element-button.button--light:active,
a.wp-element-button.button--transparent:active {
  background-color: color-mix(in srgb, var(--bg) 36%, transparent);
}
.button.button--light,
.wp-element-button.button--light,
a.wp-element-button.button--light {
  --c: var(--color-accent);
}
.button.button--white,
.wp-element-button.button--white,
a.wp-element-button.button--white {
  --c: var(--color-text);
  border: 1px solid var(--color-border-accent);
  background-color: white;
}
.button.button--white:hover,
.button.button--white[aria-expanded=true],
.wp-element-button.button--white:hover,
.wp-element-button.button--white[aria-expanded=true],
a.wp-element-button.button--white:hover,
a.wp-element-button.button--white[aria-expanded=true] {
  color: var(--color-accent);
}
.button.button--transparent,
.wp-element-button.button--transparent,
a.wp-element-button.button--transparent {
  background-color: transparent;
}
.button.button--transparent:hover,
.button.button--transparent[aria-expanded=true],
.wp-element-button.button--transparent:hover,
.wp-element-button.button--transparent[aria-expanded=true],
a.wp-element-button.button--transparent:hover,
a.wp-element-button.button--transparent[aria-expanded=true] {
  background-color: color-mix(in srgb, var(--bg) 12%, transparent);
}
.button.button--transparent:active,
.wp-element-button.button--transparent:active,
a.wp-element-button.button--transparent:active {
  background-color: color-mix(in srgb, var(--bg) 24%, transparent);
}
.button.button--small,
.wp-element-button.button--small,
a.wp-element-button.button--small {
  --h: 42px;
}
@media (max-width: 767px) {
  .button.button--small,
  .wp-element-button.button--small,
  a.wp-element-button.button--small {
    --h: 36px;
  }
}
.button.button--icon,
.wp-element-button.button--icon,
a.wp-element-button.button--icon {
  padding: 0;
  width: var(--h);
}
.button.button--icon > .icon:first-child,
.button.button--icon > .icon:last-child,
.wp-element-button.button--icon > .icon:first-child,
.wp-element-button.button--icon > .icon:last-child,
a.wp-element-button.button--icon > .icon:first-child,
a.wp-element-button.button--icon > .icon:last-child {
  margin: 0;
}
.button:not(.button--icon) .icon:first-child:not(:only-child),
.wp-element-button:not(.button--icon) .icon:first-child:not(:only-child),
a.wp-element-button:not(.button--icon) .icon:first-child:not(:only-child) {
  margin-inline-start: calc(var(--h) / -4);
}
.button:not(.button--icon) .icon:last-child:not(:only-child),
.wp-element-button:not(.button--icon) .icon:last-child:not(:only-child),
a.wp-element-button:not(.button--icon) .icon:last-child:not(:only-child) {
  margin-inline-end: calc(var(--h) / -4);
}
.button.button--round,
.wp-element-button.button--round,
a.wp-element-button.button--round {
  border-radius: var(--border-radius-maybe-rounded);
}
.text-button {
  --h: 36px;
  display: flex;
  column-gap: calc(var(--layout-spacing) * 0.5);
  align-items: center;
  transition: color 0.2s ease;
  height: var(--h);
  color: var(--color-accent);
  font-weight: 600;
  font-size: 16px;
  text-decoration: none;
}
.text-button .icon {
  transition: transform 0.2s ease;
}
.text-button:hover {
  color: color-mix(in oklch, var(--color-accent), black 24%);
}
.text-button:hover > span {
  text-decoration: underline;
}
.text-button:hover .icon.icon--arrow_right_alt {
  transform: translateX(2px);
}
.text-button:hover .icon.icon--arrow_top_right,
.text-button:hover .icon.icon--arrow_top_right_down {
  transform: translateY(2px);
}
.button-nav-toggle {
  --bg: var(--color-accent);
  --br: calc(var(--border-radius) + var(--rounded) * 999px);
  display: block;
  column-gap: 6px;
  clip-path: inset(0 0 0 0);
  transition: clip-path 0.2s ease;
  cursor: pointer;
  outline: none;
  border: none;
  border-radius: var(--br);
  background-color: transparent;
  padding: 0;
  overflow: hidden;
  color: white;
  font-weight: 600;
}
.button-nav-toggle > span {
  display: inline-flex;
  column-gap: 6px;
  align-content: center;
  align-items: center;
  transition: transform 0.2s ease, background-color 0.2s ease;
  border-radius: var(--br);
  background-color: var(--bg);
  padding-inline-start: 12px;
  padding-inline-end: 18px;
  height: 48px;
}
@media (max-width: 767px) {
  .button-nav-toggle > span {
    padding-inline: 8px;
    height: 40px;
  }
}
.button-nav-toggle > span > span {
  transition: opacity 0.2s ease;
}
.button-nav-toggle:hover > span {
  background-color: color-mix(in oklch, var(--bg), black 24%);
}
.button-nav-toggle:focus-visible:not([aria-expanded=true]) > span {
  box-shadow: inset 0 0 0 3px rgba(255, 255, 255, 0.48);
}
.button-nav-toggle[aria-expanded=true] {
  clip-path: inset(0 0 0 calc(100% - 48px) round var(--br));
}
.button-nav-toggle[aria-expanded=true] > span {
  transform: translateX(calc(100% - 48px));
  border-radius: var(--br);
}
@media (max-width: 767px) {
  .button-nav-toggle[aria-expanded=true] > span {
    transform: translateX(calc(100% - 40px));
  }
}
.button-nav-toggle[aria-expanded=true] > span > span {
  opacity: 0;
}
.button-nav-toggle[aria-expanded=true] .icon:before {
  content: "\e5cd";
}
.button-nav-toggle[aria-expanded=true]:focus-visible .button {
  box-shadow: none;
}
.is-layout-flex.wp-block-buttons {
  gap: var(--layout-spacing);
}
input {
  accent-color: var(--color-accent);
}
input,
textarea,
select {
  --h: 48px;
}
@media (max-width: 767px) {
  input,
  textarea,
  select {
    --h: 44px;
    font-size: 14px;
  }
}
input,
textarea,
select {
  display: inline-flex;
  column-gap: calc(var(--h) / 8);
  align-items: center;
  vertical-align: top;
  transition: border-color 0.2s ease;
  transition: border 0.2s ease;
  outline: none;
  border: 1px solid var(--color-border-input);
  border-radius: var(--border-radius);
  background-color: transparent;
  padding-inline: calc(var(--h) / 3);
  padding-block: calc(var(--h) / 6);
  height: auto;
  height: var(--h);
  color: var(--color-text);
  font-weight: 500;
}
input ::placeholder,
textarea ::placeholder,
select ::placeholder {
  color: var(--color-text-muted);
}
input:focus-visible,
textarea:focus-visible,
select:focus-visible {
  outline: 2px solid color-mix(in srgb, var(--color-accent) 24%, transparent);
  outline-offset: 0;
  border-color: var(--color-accent);
}
input.input--small,
textarea.input--small,
select.input--small {
  --h: 42px;
}
@media (max-width: 767px) {
  input.input--small,
  textarea.input--small,
  select.input--small {
    --h: 36px;
  }
}
input.input--rounded,
textarea.input--rounded,
select.input--rounded {
  border-radius: var(--border-radius-maybe-rounded);
  padding-inline: calc(var(--h) / (3 - var(--rounded) * 0.5));
}
input[type=checkbox],
input[type=radio] {
  --h: auto;
  vertical-align: middle;
  margin: 4px;
  padding: 0;
  width: 14px;
  height: 14px;
}
textarea {
  align-items: flex-start;
  padding-block: calc(var(--h) / 4);
  height: auto;
}
label {
  font-weight: 500;
  font-size: 15px;
}
@media (max-width: 767px) {
  label {
    font-size: 14px;
  }
}
label.branch-checkbox {
  display: flex;
  column-gap: 4px;
  align-items: center;
  transition: color 0.2s ease;
  font-size: 16px;
  line-height: 1;
}
label.branch-checkbox:hover {
  color: var(--color-accent);
}
label.branch-checkbox input {
  cursor: pointer;
  width: 16px;
  height: 16px;
}
label.branch-checkbox input + span {
  cursor: pointer;
}
label.branch-checkbox input[disabled] {
  cursor: default;
}
label.branch-checkbox input[disabled] + span {
  color: var(--color-text-subtle);
}
@media (max-width: 767px) {
  label.branch-checkbox {
    font-size: 15px;
  }
}
.wp-block-table,
.wp-block-table.is-style-stripes {
  width: 100%;
  max-width: 100%;
  overflow-x: auto;
}
.wp-block-table table,
.wp-block-table.is-style-stripes table {
  border-collapse: separate;
  border-spacing: 0;
  width: 100%;
  line-height: 1.333;
  --table-border-radius: var(--border-radius);
}
.wp-block-table table p,
.wp-block-table.is-style-stripes table p {
  margin-block: 0.5em;
}
.wp-block-table table p:first-child,
.wp-block-table.is-style-stripes table p:first-child {
  margin-block-start: 0;
}
.wp-block-table table p:last-child,
.wp-block-table.is-style-stripes table p:last-child {
  margin-block-end: 0;
}
.wp-block-table table thead,
.wp-block-table.is-style-stripes table thead {
  background-color: var(--color-bg-accent);
  font-weight: 600;
}
.wp-block-table table tfoot,
.wp-block-table.is-style-stripes table tfoot {
  background-color: var(--color-bg-accent);
  font-weight: 600;
}
.wp-block-table table tfoot tr:first-child td,
.wp-block-table.is-style-stripes table tfoot tr:first-child td {
  border-top-width: 2px;
}
.wp-block-table table:not(:has(thead)) tbody tr:first-child td,
.wp-block-table.is-style-stripes table:not(:has(thead)) tbody tr:first-child td {
  border-top: 1px solid var(--color-border-accent);
}
.wp-block-table table:not(:has(thead)) tbody tr:first-child td:first-child,
.wp-block-table.is-style-stripes table:not(:has(thead)) tbody tr:first-child td:first-child {
  border-top-left-radius: var(--table-border-radius);
}
.wp-block-table table:not(:has(thead)) tbody tr:first-child td:last-child,
.wp-block-table.is-style-stripes table:not(:has(thead)) tbody tr:first-child td:last-child {
  border-top-right-radius: var(--table-border-radius);
}
.wp-block-table table:not(:has(tfoot)) tbody tr:last-child td:first-child,
.wp-block-table.is-style-stripes table:not(:has(tfoot)) tbody tr:last-child td:first-child {
  border-bottom-left-radius: var(--table-border-radius);
}
.wp-block-table table:not(:has(tfoot)) tbody tr:last-child td:last-child,
.wp-block-table.is-style-stripes table:not(:has(tfoot)) tbody tr:last-child td:last-child {
  border-bottom-right-radius: var(--table-border-radius);
}
.wp-block-table table tr,
.wp-block-table.is-style-stripes table tr {
  transition: background-color 0.2s ease;
}
.wp-block-table table tr:hover,
.wp-block-table.is-style-stripes table tr:hover {
  background-color: color-mix(in srgb, var(--color-bg-accent), transparent 50%);
}
.wp-block-table table th,
.wp-block-table.is-style-stripes table th {
  font-weight: 600;
}
.wp-block-table table th,
.wp-block-table table td,
.wp-block-table.is-style-stripes table th,
.wp-block-table.is-style-stripes table td {
  border: none;
  border-right: 1px solid var(--color-border-accent);
  border-bottom: 1px solid var(--color-border-accent);
  padding: 0.75em;
}
.wp-block-table table th:first-child,
.wp-block-table table td:first-child,
.wp-block-table.is-style-stripes table th:first-child,
.wp-block-table.is-style-stripes table td:first-child {
  border-left: 1px solid var(--color-border-accent);
}
.wp-block-table table tbody th,
.wp-block-table.is-style-stripes table tbody th {
  text-align: left;
}
.wp-block-table table:has(thead) thead th,
.wp-block-table.is-style-stripes table:has(thead) thead th {
  border-top: 1px solid var(--color-border-accent);
  border-bottom: 3px solid var(--color-border-accent);
}
.wp-block-table table:has(thead) thead th:first-child,
.wp-block-table.is-style-stripes table:has(thead) thead th:first-child {
  border-top-left-radius: var(--table-border-radius);
}
.wp-block-table table:has(thead) thead th:last-child,
.wp-block-table.is-style-stripes table:has(thead) thead th:last-child {
  border-top-right-radius: var(--table-border-radius);
}
.wp-block-table table:has(tfoot) tfoot td,
.wp-block-table.is-style-stripes table:has(tfoot) tfoot td {
  border-top: 3px solid var(--color-border-accent);
}
.wp-block-table table:has(tfoot) tfoot td:first-child,
.wp-block-table.is-style-stripes table:has(tfoot) tfoot td:first-child {
  border-bottom-left-radius: var(--table-border-radius);
}
.wp-block-table table:has(tfoot) tfoot td:last-child,
.wp-block-table.is-style-stripes table:has(tfoot) tfoot td:last-child {
  border-bottom-right-radius: var(--table-border-radius);
}
.wp-block-table.is-style-stripes {
  border: none;
}
.wp-block-table.is-style-stripes tbody tr:nth-child(odd) {
  background-color: color-mix(in srgb, var(--color-bg-accent) 50%, transparent);
}
img {
  max-width: 100%;
}
.gallery,
.wp-block-gallery,
figure.wp-block-image {
  margin-block: var(--layout-row-gap);
}
.gallery img,
.wp-block-gallery img,
figure.wp-block-image img {
  display: block;
  transition: opacity 0.2s ease;
  border-radius: calc(var(--border-radius) * 0.75);
  width: 100%;
  height: auto;
}
.gallery a:hover img,
.wp-block-gallery a:hover img,
figure.wp-block-image a:hover img {
  opacity: 0.85;
}
.gallery,
.wp-block-gallery {
  gap: var(--wp--style--block-gap, 0.5em);
}
.gallery {
  display: grid;
}
.gallery.gallery-columns-2 {
  grid-template-columns: repeat(2, 1fr);
}
.gallery.gallery-columns-3 {
  grid-template-columns: repeat(3, 1fr);
}
.gallery.gallery-columns-4 {
  grid-template-columns: repeat(4 1fr);
}
.gallery > * {
  min-width: 0;
}
.gallery figure.gallery-item {
  margin: 0;
}
.gallery figure.gallery-item img {
  display: block;
  width: 100%;
  height: auto;
}
.wp-block-freeform.block-library-rich-text__tinymce .gallery {
  margin: 0 !important;
  padding: 0 !important;
  padding-block: var(--layout-spacing) !important;
}
.wp-block-freeform.block-library-rich-text__tinymce .gallery br {
  display: none !important;
}
.wp-block-freeform.block-library-rich-text__tinymce .gallery-item {
  width: 100% !important;
}
.wp-block-freeform.block-library-rich-text__tinymce .gallery-item img {
  width: 100%;
}
.icon-links {
  display: flex;
  column-gap: calc(var(--layout-spacing) * 0.5);
  align-items: center;
  font-size: 20px;
}
@media (max-width: 767px) {
  .icon-links {
    font-size: 18px;
  }
}
.site-breadcrumbs {
  margin-block-end: var(--layout-spacing);
  font-weight: 400;
  font-size: 14px;
  line-height: 1.333;
  padding-block-start: calc(var(--layout-spacing) * 0.25);
}
@media (max-width: 767px) {
  .site-breadcrumbs {
    font-size: 13px;
  }
}
.site-breadcrumbs ol {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: calc(var(--layout-spacing) * 0.5);
  margin: 0;
  padding: 0;
  color: var(--color-text-muted);
  list-style: none;
}
.site-breadcrumbs ol .icon {
  margin-inline: -0.25em;
  color: var(--color-text-muted);
  font-size: 16px;
  line-height: 1;
}
.site-breadcrumbs ol li {
  display: inherit;
  flex-wrap: inherit;
  align-items: inherit;
  gap: inherit;
}
.site-breadcrumbs ol a {
  color: var(--color-text);
}
.site-breadcrumbs ol a:not(:hover) {
  text-decoration: none;
}
.tooltip {
  display: inline-flex;
  position: absolute;
  top: 0;
  left: 50%;
  justify-content: center;
  align-items: center;
  transform: translate(-50%, -50%);
  opacity: 0;
  transition: opacity 0.2s ease, transform 0.2s ease;
  box-shadow: var(--box-shadow);
  border: 1px solid var(--color-border-accent);
  border-radius: var(--border-radius);
  background-color: white;
  padding-inline: 8px;
  padding-block: 2px;
  width: max-content;
  width: fit-content;
  height: auto;
  min-height: 22px;
  overflow: hidden;
  pointer-events: none;
  color: var(--color-text);
  font-weight: 500;
  font-size: 12px;
  line-height: 16px;
  text-align: center;
  text-overflow: ellipsis;
}
.tooltip.tooltip--left {
  left: calc(var(--h) * 0.25);
  transform: translate(0, -50%);
  text-align: left;
}
.has-tooltip,
a:has(.tooltip) {
  position: relative;
}
a:hover > .tooltip,
.has-tooltip:hover > .tooltip {
  transform: translate(-50%, calc(-50% - 4px));
  opacity: 1;
}
a:hover > .tooltip.tooltip--left,
.has-tooltip:hover > .tooltip.tooltip--left {
  transform: translate(0, calc(-50% - 4px));
}
.card {
  display: flex;
  row-gap: calc(var(--layout-spacing) * 2);
  flex-direction: column;
  align-items: flex-start;
  transition: background-color 0.2s ease, color 0.2s ease;
  border-radius: var(--border-radius);
  background-color: var(--color-bg-accent);
  padding-inline: calc(var(--layout-spacing) * 2);
  padding-block: calc(var(--layout-spacing) * 1.5);
  height: 100%;
  font-weight: 500;
  font-size: 18px;
  line-height: 1.3333;
  text-decoration: none;
}
.card:hover {
  background-color: var(--color-accent);
  color: white;
}
.card:hover .icon {
  transform: translateX(0);
  opacity: 1;
}
.card > .icon {
  font-size: 48px;
}
.card > span {
  display: flex;
  column-gap: var(--layout-spacing);
  justify-content: space-between;
  align-items: flex-end;
  margin-top: auto;
  width: 100%;
}
.card > span .icon {
  transform: translateX(-50%);
  opacity: 0;
  transition: transform 0.2s ease, opacity 0.2s ease;
  margin-right: -0.25em;
  font-size: 36px;
  line-height: calc(var(--fs) * var(--lh));
}
.card.card--link > span {
  align-items: flex-start;
}
.link-card {
  display: flex;
  row-gap: calc(var(--layout-spacing) * 3);
  flex-direction: column;
  transition: background-color 0.2s ease, color 0.2s ease;
  border-radius: var(--border-radius);
  background-color: var(--color-bg-accent);
  padding: calc(var(--layout-spacing) * 2);
  padding-inline-end: var(--layout-spacing);
  padding-block-start: calc(var(--layout-spacing) * 1.5);
  padding-block-end: var(--layout-spacing);
  height: 100%;
  font-weight: 600;
  font-size: 18px;
  line-height: 1.333;
  text-decoration: none;
  text-decoration: none;
}
@media (max-width: 767px) {
  .link-card {
    padding: calc(var(--layout-spacing) * 1.5);
    padding-inline-start: calc(var(--layout-spacing) * 2);
    font-size: 16px;
  }
}
.link-card:hover {
  background-color: var(--color-accent);
  color: white;
}
.link-card:hover .link-card__icon {
  filter: brightness(0) invert(1);
}
.link-card:has(.link-card__icon) .link-card__title {
  position: relative;
  flex-grow: 0;
  flex-direction: row;
  align-items: center;
  margin-block-start: auto;
  padding-inline-end: calc(var(--layout-spacing) * 4);
  min-height: 48px;
}
@media (max-width: 767px) {
  .link-card:has(.link-card__icon) .link-card__title {
    min-height: auto;
  }
}
.link-card:has(.link-card__icon) .link-card__title > .icon {
  position: absolute;
  right: 0;
  bottom: 0;
}
.link-card[target=_blank] .link-card__arrow:before {
  content: "\f8ce";
}
.link-card__icon {
  transition: filter 0.2s ease;
}
.link-card__icon img {
  display: block;
  width: auto;
  min-width: calc(var(--layout-spacing) * 4);
  height: calc(var(--layout-spacing) * 4);
  object-fit: contain;
}
.link-card__title {
  display: flex;
  column-gap: var(--layout-spacing);
  row-gap: calc(var(--layout-spacing) * 2);
  flex-grow: 1;
  flex-direction: column;
}
@media (max-width: 767px) {
  .link-card__title {
    flex-direction: row;
    align-items: center;
  }
}
.link-card__title > .icon {
  transition: transform 0.2s ease;
  margin-inline-start: auto;
  margin-block-start: auto;
  font-size: 48px;
}
@media (max-width: 767px) {
  .link-card__title > .icon {
    margin-block-start: initial;
    font-size: 24px;
    font-variation-settings:
      "FILL" 0,
      "wght" 300,
      "GRAD" 0,
      "opsz" 24;
  }
}
.link-card:hover .link-card__title > .icon {
  transform: translateX(4px);
}
.lesson-times-card {
  anchor-name: --lesson-times-card;
  display: flex;
  position: relative;
  row-gap: calc(var(--layout-spacing) * 3);
  flex-direction: column;
  transition: background-color 0.2s ease, color 0.2s ease;
  border-radius: var(--border-radius);
  background-color: var(--color-bg-accent);
  padding: calc(var(--layout-spacing) * 2);
  padding-block: calc(var(--layout-spacing) * 1.5);
  height: 100%;
  text-decoration: none;
}
@media (max-width: 767px) {
  .lesson-times-card {
    padding: calc(var(--layout-spacing) * 1.5);
    padding-inline-start: calc(var(--layout-spacing) * 2);
    font-size: 16px;
  }
}
.lesson-times-card:has(> button:hover) {
  background: var(--color-accent);
  color: white;
}
.lesson-times-card:has(> button:hover) .lesson-times-card__heading {
  color: white;
}
.lesson-times-card:has(> button:hover) .lesson-times-card__icon {
  filter: brightness(0) invert(1);
}
.lesson-times-card.innactive {
  padding-inline-end: var(--layout-spacing);
  padding-block-start: calc(var(--layout-spacing) * 1.5);
  padding-block-end: var(--layout-spacing);
}
@media (max-width: 767px) {
  .lesson-times-card.innactive {
    padding: calc(var(--layout-spacing) * 1.5);
    padding-inline-start: calc(var(--layout-spacing) * 2);
  }
}
.lesson-times-card.innactive .lesson-times-card__branches {
  display: none;
}
.lesson-times-card.innactive .lesson-times-card__icon {
  display: block;
  transition: filter 0.2s ease;
}
.lesson-times-card.innactive .lesson-times-card__heading {
  position: relative;
  align-items: center;
  margin-block-start: auto;
  padding-inline-end: calc(var(--layout-spacing) * 5);
  min-height: 48px;
}
@media (max-width: 767px) {
  .lesson-times-card.innactive .lesson-times-card__heading {
    min-height: auto;
  }
}
.lesson-times-card.innactive .lesson-times-card__heading .icon {
  position: absolute;
  right: 0;
  bottom: 0;
  margin: 0;
  width: initial;
  font-size: 48px;
  line-height: 1;
  font-variation-settings: "wght" 200;
}
@media (max-width: 767px) {
  .lesson-times-card.innactive .lesson-times-card__heading .icon {
    font-size: 24px;
    font-variation-settings:
      "FILL" 0,
      "wght" 300,
      "GRAD" 0,
      "opsz" 24;
  }
}
.lesson-times-card__icon {
  display: none;
}
.lesson-times-card__icon img {
  display: block;
  width: auto;
  min-width: calc(var(--layout-spacing) * 4);
  height: calc(var(--layout-spacing) * 4);
  object-fit: contain;
}
.lesson-times-card__heading {
  display: flex;
  justify-content: space-between;
  align-items: center;
  transition: color 0.2s ease;
  color: var(--color-accent);
  font-weight: 600;
  font-size: 18px;
  line-height: 1.333;
}
@media (max-width: 767px) {
  .lesson-times-card__heading {
    font-size: 16px;
  }
}
.lesson-times-card__heading .icon {
  width: 24px;
  font-size: 32px;
  line-height: 24px;
}
@media (max-width: 767px) {
  .lesson-times-card__heading .icon {
    width: auto;
    font-size: 24px;
  }
}
.lesson-times-card__branches {
  display: flex;
  margin-block-start: auto;
}
.lesson-times-card__branches > div {
  display: flex;
  row-gap: calc(var(--layout-spacing) * 0.5);
  flex-direction: column;
  width: 100%;
  font-weight: 500;
  line-height: 1.5;
}
.lesson-times-card__branches > div hr {
  display: block;
  margin: 0;
  height: 2px;
}
.lesson-times-card__branches > div [data-current-lesson] {
  font-size: 24px;
  line-height: 1;
  white-space: nowrap;
}
.lesson-times-card__branches > div [data-current-lesson-times] {
  font-size: 11px;
  white-space: nowrap;
}
[popover].lesson-times-popover {
  position: fixed;
  position-anchor: --lesson-times-card;
  position-area: span-bottom span-left;
  margin: 0;
  box-shadow: inset 0 0 0 1px var(--color-border-accent), var(--box-shadow);
  border: none;
  border-radius: var(--border-radius);
  background-color: white;
  padding: calc(var(--layout-spacing) * 2);
  padding-block-start: calc(var(--layout-spacing) * 1.5);
  width: 100%;
  width: max-content;
  min-width: 300px;
  max-width: 100%;
}
@media (max-width: 767px) {
  [popover].lesson-times-popover {
    width: 100%;
    min-width: initial;
    max-width: calc(100% - var(--layout-padding));
  }
}
.lesson-times-popover__header {
  display: flex;
  column-gap: var(--layout-spacing);
  justify-content: space-between;
  align-items: center;
  margin-block-end: calc(var(--layout-spacing) * 2);
  min-height: 24px;
}
.lesson-times-popover__header h3 {
  margin: 0;
  font-weight: 600;
  font-size: 18px;
  line-height: 1.333;
}
@media (max-width: 767px) {
  .lesson-times-popover__header h3 {
    font-size: 16px;
  }
}
.lesson-times-popover__header > .button {
  --h: 36px;
}
@media (max-width: 767px) {
  .lesson-times-popover__header > .button {
    --h: 32px;
  }
}
.lesson-times-popover__header > .button {
  position: absolute;
  top: var(--layout-spacing);
  right: var(--layout-spacing);
  border-radius: calc(var(--border-radius) * 0.75);
}
.lesson-times-popover__branches {
  display: flex;
  width: 100%;
}
@media (max-width: 767px) {
  .lesson-times-popover__branches {
    row-gap: var(--layout-row-gap);
    overflow: auto;
  }
}
.lesson-times-popover__branch {
  display: flex;
  row-gap: calc(var(--layout-spacing) * 0.75);
  flex-direction: column;
  width: 100%;
  min-width: 216px;
  max-width: 300px;
  font-size: 15px;
  line-height: 1.5;
}
@media (max-width: 767px) {
  .lesson-times-popover__branch {
    min-width: initial;
    max-width: initial;
    font-size: 14px;
  }
}
.lesson-times-popover__branch > *:not(hr) {
  padding-inline-end: calc(var(--layout-column-gap) * 2);
}
.lesson-times-popover__branch strong {
  font-weight: 600;
}
.lesson-times-popover__branch p {
  margin: 0;
  white-space: nowrap;
}
.lesson-times-popover__branch hr {
  display: block;
  margin: 0;
  height: 2px;
}
.lesson-times-popover__branch ul {
  margin: 0;
  border-collapse: collapse;
  padding-inline-start: 0;
  width: max-content;
  color: var(--color-text-muted);
  font-variant-numeric: tabular-nums;
  list-style: none;
}
.lesson-times-popover__branch ul > li {
  display: flex;
  display: table-row;
}
.lesson-times-popover__branch ul > li > span {
  display: table-cell;
  padding-inline-end: var(--layout-spacing);
  padding-block-start: calc(var(--layout-spacing) * 0.25);
}
.lesson-times-popover__branch ul > li > span:first-child {
  text-align: center;
}
.lesson-times-popover__branch ul > li.is-active {
  color: var(--color-text);
  font-weight: 600;
}
.lesson-times-popover-trigger {
  position: absolute;
  cursor: pointer;
  margin: 0;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  border: 0;
  border-radius: var(--border-radius);
  background: transparent;
  padding: 0;
  width: 100%;
  height: 100%;
  color: transparent;
  font-size: 0;
}
.edu-documents {
  display: flex;
  row-gap: calc(var(--layout-spacing) * 2);
  flex-direction: column;
}
.edu-documents > section > h3 {
  margin-block-end: var(--layout-spacing);
}
.document-list {
  display: flex;
  flex-direction: column;
  margin: 0;
  border: 1px solid var(--color-border-accent);
  border-radius: var(--border-radius);
  padding: 0;
  overflow: hidden;
  list-style: none;
}
.document-list > li:not(:last-child) {
  border-bottom: 1px solid var(--color-border-accent);
}
.document {
  display: flex;
  position: relative;
  column-gap: var(--layout-spacing);
  align-items: center;
  transition: background-color 0.2s ease;
  padding: var(--layout-spacing);
  padding-inline: var(--layout-spacing);
  padding-block: calc(var(--layout-spacing) * 0.75);
  min-height: 48px;
  line-height: 1.333;
  text-decoration: none;
}
.document:hover {
  background-color: var(--color-bg-accent);
}
@media (max-width: 767px) {
  .document {
    row-gap: var(--layout-spacing);
    flex-direction: column;
    align-items: flex-start;
    padding: calc(var(--layout-spacing) * 1.5);
    padding-inline-start: calc(var(--layout-spacing) * 4);
  }
}
@media (max-width: 767px) {
  .document > .icon {
    position: absolute;
    right: var(--layout-spacing);
    bottom: var(--layout-spacing);
  }
}
.document__title {
  display: flex;
  column-gap: calc(var(--layout-spacing) * 0.5);
  flex-grow: 1;
  align-items: flex-start;
  font-weight: 500;
  text-wrap: pretty;
}
@media (max-width: 767px) {
  .document__title .icon {
    position: absolute;
    top: calc(var(--layout-spacing) * 1.5);
    left: var(--layout-spacing);
  }
}
.document__meta {
  display: flex;
  column-gap: var(--layout-spacing);
  color: var(--color-text-subtle);
  font-size: 14px;
}
@media (max-width: 767px) {
  .document__meta {
    font-size: 12px;
  }
}
.document__meta > span {
  white-space: nowrap;
}
.edu-documents.is-style-plain .document-list {
  border: none;
  border-radius: 0;
}
.edu-documents.is-style-plain .document-list > li {
  border: none;
}
.edu-documents.is-style-plain .document {
  display: inline-flex;
  background-color: transparent;
  padding-inline: 0;
  min-height: 36px;
}
@media (max-width: 767px) {
  .edu-documents.is-style-plain .document {
    row-gap: calc(var(--layout-spacing) * 0.5);
    padding-inline-start: calc(var(--layout-spacing) * 3);
    padding-block: var(--layout-spacing);
  }
}
.edu-documents.is-style-plain .document:hover {
  background-color: transparent;
}
.edu-documents.is-style-plain .document:hover .document__title > span {
  text-decoration: underline;
}
.edu-documents.is-style-plain .document .icon--arrow_outward {
  display: none;
}
@media (max-width: 767px) {
  .edu-documents.is-style-plain .document__title .icon {
    top: 7px;
    left: 1px;
  }
}
.edu-documents.is-style-plain .document__meta {
  display: none;
}
.wp-block-file__embed {
  border-radius: var(--border-radius);
}
.wp-block-details {
  border-bottom: 1px solid var(--color-border-accent);
}
.wp-block-details summary {
  position: relative;
  column-gap: calc(var(--layout-spacing) * 0.5);
  padding-left: 0;
  padding-inline: 24px;
  padding-block: calc(var(--layout-spacing) * 0.5);
  font-weight: 500;
  font-size: 18px;
  line-height: 1.333;
  list-style: none;
}
@media (max-width: 767px) {
  .wp-block-details summary {
    font-size: 16px;
    padding-inline: 20px;
  }
}
.wp-block-details summary:before {
  position: absolute;
  top: 50%;
  left: 0;
  flex-shrink: 0;
  transform: translateY(-50%);
  content: "\e313";
  font-size: 24px;
  font-weight: initial;
  line-height: inherit;
  font-family: var(--font-icons);
  font-variation-settings:
    "FILL" 0,
    "wght" 300,
    "GRAD" 0,
    "opsz" 24;
}
@media (max-width: 767px) {
  .wp-block-details summary:before {
    font-size: 20px;
    font-variation-settings:
      "FILL" 0,
      "wght" 400,
      "GRAD" 0,
      "opsz" 20;
  }
}
.wp-block-details summary + *:first-child {
  margin-block-start: 0;
}
.wp-block-details[open] {
  padding-block-end: var(--layout-gap);
}
.wp-block-details[open] summary:before {
  content: "\e316";
}
hr {
  margin-block: var(--layout-spacing);
  border: none;
  background-color: var(--color-border-accent);
  width: 100%;
  height: 1px;
}
[data-swiper-scope] {
  --swiper-theme-color: var(--color-accent);
  --swiper-pagination-bullet-inactive-color: var(--color-bg-accent);
  --swiper-pagination-bullet-inactive-opacity: 1;
  --swiper-pagination-bullet-horizontal-gap: 4px;
  --swiper-pagination-bullet-height: 8px;
  --swiper-pagination-bullet-size: 8px;
  position: relative;
}
.edu-swiper-button-prev .icon {
  transform: translateX(-0.05em);
}
.edu-swiper-button-next .icon {
  transform: translateX(0.05em);
}
.swiper-pagination-lock {
  display: none !important;
}
.swiper-button-lock {
  display: none !important;
}
figcaption {
  color: var(--color-text-muted);
  line-height: 1.333;
}
.wp-element-caption {
  margin-block-start: 0.25em;
}
.branch-tags {
  display: flex;
  flex-wrap: wrap;
  gap: calc(var(--layout-spacing) * 0.25);
}
.branch-tags > span {
  display: inline-flex;
  column-gap: 4px;
  justify-content: center;
  align-items: center;
  border-radius: 1em;
  background-color: var(--color-bg);
  padding-inline: 8px;
  height: 22px;
  color: var(--color-text);
  color: contrast-color(var(--color-bg));
  font-weight: 500;
  font-size: 14px;
  line-height: 18px;
  white-space: nowrap;
}
@media (max-width: 767px) {
  .branch-tags > span {
    padding-inline: 6px;
    height: 20px;
    font-size: 12px;
  }
}
.branch-tags.branch-tags--dots > span {
  position: relative;
  border-radius: 0;
  background-color: transparent;
  padding: 0;
  height: auto;
}
.branch-tags.branch-tags--dots > span:before {
  border-radius: 50%;
  background-color: var(--color-bg-accent);
  width: 10px;
  height: 10px;
  content: "";
}
.wp-block-buttons,
.wp-block-table,
.wp-block-details,
.wp-block-edu-core-documents,
.wp-block-edu-core-staff {
  margin-block-start: var(--layout-spacing);
  margin-block-end: calc(var(--layout-spacing) * 2);
}
.wp-block-buttons:first-child,
.wp-block-table:first-child,
.wp-block-details:first-child,
.wp-block-edu-core-documents:first-child,
.wp-block-edu-core-staff:first-child {
  margin-block-start: 0;
}
.wp-block-buttons:last-child,
.wp-block-table:last-child,
.wp-block-details:last-child,
.wp-block-edu-core-documents:last-child,
.wp-block-edu-core-staff:last-child {
  margin-block-end: 0;
}
.page-header {
  margin-block-end: calc(var(--layout-spacing) * 3);
}
.page-header h1 {
  margin: 0;
}
.page-header__title {
  display: flex;
  column-gap: var(--layout-column-gap);
  justify-content: space-between;
  align-items: flex-end;
}
@media (max-width: 767px) {
  .page-header__title {
    row-gap: var(--layout-row-gap);
    flex-direction: column;
    align-items: flex-start;
  }
}
.page-meta {
  margin: 0;
  margin-block-end: calc(var(--layout-spacing) * 3);
}
.page-meta a {
  transition: color 0.2s ease;
}
.page-meta a:hover {
  color: var(--color-text);
  text-decoration: underline;
}
.page-meta > div {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--layout-spacing);
  font-size: 15px;
  line-height: 1.333;
}
.page-content.page-content--sitemap {
  display: flex;
  column-gap: var(--layout-column-gap);
  row-gap: var(--layout-row-gap);
}
@media (max-width: 767px) {
  .page-content.page-content--sitemap {
    flex-direction: column;
  }
}
.page-content.page-content--sitemap > section {
  width: 50%;
}
@media (max-width: 767px) {
  .page-content.page-content--sitemap > section {
    width: 100%;
  }
}
.page-content__excerpt {
  margin-block-end: calc(var(--layout-spacing) * 2);
  font-weight: 500;
  font-size: 18px;
}
@media (max-width: 767px) {
  .page-content__excerpt {
    font-size: 17px;
  }
}
.page-section {
  margin-block: calc(var(--layout-spacing) * 4);
}
.home .page-section {
  margin-block: calc(var(--layout-spacing) * 8);
}
.page-section:first-child {
  margin-block-start: 0;
}
.page-section:last-child {
  margin-block-end: 0;
}
.page-section:has(.page-section__header .button),
.page-section:has(.page-section__tabs .button) {
  position: relative;
}
@media (max-width: 767px) {
  .page-section:has(.page-section__header .button),
  .page-section:has(.page-section__tabs .button) {
    padding-block-end: calc(var(--layout-spacing) * 8);
  }
}
.page-section__header {
  display: flex;
  column-gap: var(--layout-column-gap);
  justify-content: space-between;
  align-items: center;
  margin-block-end: calc(var(--layout-spacing) * 2);
}
.page-section__header > h2 {
  font-size: clamp(1.75rem, 1.45rem + 1.01vw, 2.25rem);
  margin: 0;
  line-height: 1.2;
}
@media (max-width: 767px) {
  .page-section__header > .button,
  .page-section__tabs > .button {
    position: absolute;
    bottom: 0;
    left: 0;
  }
}
.page-navigation {
  flex-shrink: 0;
}
.page-navigation ul {
  display: flex;
  column-gap: var(--layout-column-gap);
  row-gap: calc(var(--layout-spacing) * 0.5);
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: center;
  margin: 0;
  padding: 0;
  list-style: none;
}
@media (max-width: 767px) {
  .page-navigation ul {
    flex-direction: column;
    align-items: flex-start;
  }
}
.page-footer {
  margin-block-start: calc(var(--layout-spacing) * 4);
  color: var(--color-text-muted);
  font-size: 14px;
  line-height: 1.333;
}
@media (max-width: 767px) {
  .page-footer {
    font-size: 13px;
  }
}
.page-footer p {
  margin: 0;
}
@media (max-width: 767px) {
  .page-sidebar {
    display: none;
  }
}
.page-sidebar h2 {
  font-size: clamp(1rem, 0.85rem + 0.51vw, 1.25rem);
  margin: 0;
  margin-block-end: calc(var(--layout-spacing) * 0.5);
  line-height: 1.3333;
}
.page-sidebar nav ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.page-sidebar nav > ul.menu > li.menu-item:first-child {
  margin-block-start: var(--layout-spacing);
}
.page-sidebar nav > ul.menu ul.sub-menu {
  margin-block-end: var(--layout-spacing);
  padding-inline-start: calc(var(--layout-spacing) * 1.5);
}
.page-sidebar nav li.menu-item {
  position: relative;
  width: 100%;
}
.page-sidebar nav li.menu-item > a {
  display: flex;
  align-items: center;
  width: 100%;
  height: 42px;
  color: var(--color-text);
  font-weight: 500;
  text-decoration: none;
  transition: color 0.2s ease, box-shadow 0.2s ease;
}
.page-sidebar nav li.menu-item > a[target=_blank]:after {
  display: inline;
  position: relative;
  vertical-align: middle;
  margin-inline-start: 0.2em;
  width: 1em;
  overflow: hidden;
  content: "\f8ce";
  font-size: 16px;
  line-height: 1;
  font-family: var(--font-icons);
  text-decoration: none;
}
@media (max-width: 767px) {
  .page-sidebar nav li.menu-item > a[target=_blank]:after {
    top: 0;
  }
}
.page-sidebar nav li.menu-item.current-menu-item > a,
.page-sidebar nav li.menu-item.current_page_item > a {
  color: var(--color-accent);
  font-weight: 600;
}
.page-main .search-form-wrap {
  margin-block-end: calc(var(--layout-spacing) * 3);
}
.page-main .search-form {
  display: flex;
  column-gap: var(--layout-spacing);
}
.page-main .search-form input {
  flex: 1;
  width: 100%;
}
.search-result {
  margin-block-start: calc(var(--layout-spacing) * 2);
}
.search-result__header h2 {
  font-size: clamp(1.06rem, 0.91rem + 0.51vw, 1.31rem);
  margin: 0;
}
.search-result__header p {
  font-size: 15px;
  color: var(--color-text-muted);
  margin: 0;
  margin-block: 0.25em 0;
}
@media (max-width: 767px) {
  .search-result__header p {
    font-size: 14px;
  }
}
.search-result__header a {
  display: inline-block;
  text-decoration: none;
}
.search-result__header a:hover h2 {
  text-decoration: underline;
}
.search-result__excerpt {
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  margin-block-start: 0.5em;
}
.hero-slider {
  position: relative;
  margin-block-end: calc(var(--layout-spacing) * 6);
  width: 100%;
}
.hero-slider h1,
.hero-slider h2 {
  font-size: clamp(2rem, 1.09rem + 3.03vw, 3.5rem);
}
.hero-slider .hero-slide {
  background-color: white;
}
.hero-slider .hero-slide img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media (max-width: 767px) {
  .hero-slider .hero-slide img {
    aspect-ratio: 4/3;
  }
}
.hero-slider.hero-slider--full-width .hero-slide,
.hero-slider.hero-slider--boxed .hero-slide {
  position: relative;
  aspect-ratio: 21/9;
  width: 100%;
}
@media (max-width: 1023px) {
  .hero-slider.hero-slider--full-width .hero-slide,
  .hero-slider.hero-slider--boxed .hero-slide {
    aspect-ratio: 16/9;
  }
}
@media (max-width: 767px) {
  .hero-slider.hero-slider--full-width .hero-slide,
  .hero-slider.hero-slider--boxed .hero-slide {
    display: flex;
    flex-direction: column-reverse;
    aspect-ratio: initial;
  }
}
.hero-slider.hero-slider--full-width .hero-slide .hero-slide__inner,
.hero-slider.hero-slider--boxed .hero-slide .hero-slide__inner {
  display: flex;
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  align-items: center;
  z-index: 2;
  margin-inline: auto;
  padding-inline: var(--layout-padding);
  width: 100%;
  max-width: calc(var(--layout-max-width) + var(--layout-padding) * 2);
  height: 100%;
}
@media (max-width: 767px) {
  .hero-slider.hero-slider--full-width .hero-slide .hero-slide__inner,
  .hero-slider.hero-slider--boxed .hero-slide .hero-slide__inner {
    position: initial;
    height: auto;
  }
}
.hero-slider.hero-slider--full-width .hero-slide .hero-slide__content,
.hero-slider.hero-slider--boxed .hero-slide .hero-slide__content {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  border-radius: var(--border-radius);
  background-color: rgba(255, 255, 255, 0.8);
  padding: calc(var(--layout-spacing) * 3);
  padding-block-start: calc(var(--layout-spacing) * 2.5);
  width: 100%;
}
@media (max-width: 1023px) {
  .hero-slider.hero-slider--full-width .hero-slide .hero-slide__content,
  .hero-slider.hero-slider--boxed .hero-slide .hero-slide__content {
    padding: calc(var(--layout-spacing) * 2);
  }
}
@media (max-width: 767px) {
  .hero-slider.hero-slider--full-width .hero-slide .hero-slide__content,
  .hero-slider.hero-slider--boxed .hero-slide .hero-slide__content {
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
    border-radius: 0;
    background-color: white;
    padding: 0;
  }
}
.hero-slider.hero-slider--boxed .hero-slide .hero-slide__inner {
  padding-inline-start: 5%;
}
@media (max-width: 767px) {
  .hero-slider.hero-slider--boxed .hero-slide .hero-slide__inner {
    padding-inline-start: 0;
  }
}
.hero-slider.hero-slider--boxed .hero-slide img {
  border-radius: var(--border-radius);
}
.hero-slider.hero-slider--split .hero-slide {
  display: flex;
  column-gap: var(--layout-column-gap);
  justify-content: space-between;
  align-items: center;
}
@media (max-width: 767px) {
  .hero-slider.hero-slider--split .hero-slide {
    flex-direction: column-reverse;
    align-items: flex-start;
    width: 100%;
  }
}
.hero-slider.hero-slider--split .hero-slide .hero-slide__inner {
  width: 50%;
  min-width: 0;
}
@media (max-width: 767px) {
  .hero-slider.hero-slider--split .hero-slide .hero-slide__inner {
    width: 100%;
  }
}
.hero-slider.hero-slider--split .hero-slide img {
  border-radius: var(--border-radius);
  aspect-ratio: 4/3;
  width: 50%;
  min-width: 0;
}
@media (max-width: 767px) {
  .hero-slider.hero-slider--split .hero-slide img {
    width: 100%;
  }
}
.hero-slider.hero-slider--split .edu-swiper-button-prev {
  display: none;
}
.hero-slider .edu-swiper-pagination {
  display: none;
}
@media (max-width: 1023px) {
  .hero-slider .edu-swiper-pagination {
    display: inline-block;
    margin-block-start: calc(var(--layout-spacing) * 2);
    text-align: center;
  }
}
.hero-slider .edu-swiper-button-prev,
.hero-slider .edu-swiper-button-next {
  position: absolute;
  top: 50%;
  z-index: 2;
  transition: transform 0.2s ease;
}
@media (max-width: 1023px) {
  .hero-slider .edu-swiper-button-prev,
  .hero-slider .edu-swiper-button-next {
    display: none;
  }
}
.hero-slider .edu-swiper-button-prev {
  left: 0;
  transform: translate(-100%, -50%);
}
.hero-slider .edu-swiper-button-next {
  right: 0;
  transform: translate(100%, -50%);
}
.hero-slider .swiper:hover .edu-swiper-button-prev {
  transform: translate(calc(0px + var(--layout-spacing) * 2), -50%);
}
.hero-slider .swiper:hover .edu-swiper-button-next {
  transform: translate(calc(0px + var(--layout-spacing) * -2), -50%);
}
.hero-slide__content {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  width: 100%;
  max-width: 516px;
  text-wrap: pretty;
}
@media (max-width: 1023px) {
  .hero-slide__content {
    max-width: 408px;
  }
}
@media (max-width: 767px) {
  .hero-slide__content {
    margin-block-start: calc(var(--layout-spacing) * 2);
    width: 100%;
    max-width: 100%;
  }
}
.hero-slide__content h1,
.hero-slide__content p {
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
}
.hero-slide__content h1 {
  line-clamp: 3;
  -webkit-line-clamp: 3;
}
.hero-slide__content p {
  line-clamp: 4;
  -webkit-line-clamp: 4;
  margin: 0;
  font-size: 18px;
  line-height: 1.5;
}
@media (max-width: 1023px) {
  .hero-slide__content p {
    font-size: 16px;
  }
}
.hero-slide__content .button {
  margin-block-start: calc(var(--layout-spacing) * 2);
}
.post-card {
  line-height: 1.5;
}
.post-card a {
  color: var(--color-text);
  text-decoration: none;
}
.post-card a:hover {
  text-decoration: underline;
}
.post-card h2 {
  margin: 0;
  font-weight: 600;
  font-size: 18px;
}
.post-card__thumbnail {
  display: block;
  position: relative;
  margin-block-end: var(--layout-spacing);
  border: 1px solid var(--color-border-accent);
  border-radius: var(--border-radius);
  background-color: var(--color-bg-accent);
  aspect-ratio: 3/2;
  overflow: hidden;
}
.post-card__thumbnail img {
  transform: scale(1.04);
  transition: transform 0.2s ease;
  aspect-ratio: 3/2;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.post-card__thumbnail:hover img {
  transform: scale(1);
}
.post-card__thumbnail.post-card__thumbnail--placeholder {
  position: relative;
  align-content: center;
}
.post-card__thumbnail.post-card__thumbnail--placeholder img {
  display: block;
  opacity: 0.2;
  margin-inline: auto;
  width: 50%;
  height: 50%;
  object-fit: contain;
}
.post-card__thumbnail .branch-tags {
  position: absolute;
  right: var(--layout-spacing);
  bottom: var(--layout-spacing);
  flex-direction: column;
  align-items: flex-end;
}
a.post-card__thumbnail {
  text-decoration: none;
}
a.post-card__thumbnail:hover {
  text-decoration: none;
}
.post-card__meta {
  display: flex;
  position: relative;
  column-gap: var(--layout-spacing);
  row-gap: calc(var(--layout-spacing) * 0.5);
  flex-wrap: wrap;
  align-items: center;
  margin-block-end: calc(var(--layout-spacing) * 0.5);
  color: var(--color-text-muted);
  font-size: 14px;
}
.post-card__meta > * {
  white-space: nowrap;
}
.post-card__meta > a {
  color: var(--color-text-muted);
}
.post-card__meta > a:hover {
  color: var(--color-text);
}
.post-categories {
  display: flex;
  row-gap: calc(var(--layout-spacing) * 2);
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  margin-block-end: calc(var(--layout-spacing) * 2);
}
@media (max-width: 767px) {
  .post-categories {
    margin-inline: calc(var(--layout-padding) * -1);
  }
}
.post-categories ul {
  display: flex;
  margin: 0;
  padding: 0;
  overflow-x: auto;
  list-style: none;
}
@media (max-width: 767px) {
  .post-categories ul {
    border-bottom: 1px solid var(--color-border-accent);
    padding-inline: var(--layout-padding);
  }
}
.post-categories .cat-item a,
.post-categories .cat-item button {
  --h: 48px;
  display: flex;
  align-items: center;
  transition: color 0.2s ease;
  cursor: pointer;
  border: none;
  border-bottom: 1px solid var(--color-border-accent);
  background-color: transparent;
  padding-inline: 16px;
  height: var(--h);
  color: var(--color-text);
  font-weight: 600;
  text-decoration: none;
  white-space: nowrap;
}
.post-categories .cat-item a:hover,
.post-categories .cat-item button:hover {
  color: var(--color-accent);
}
.post-categories .cat-item a:focus-visible,
.post-categories .cat-item button:focus-visible {
  outline-offset: -2px;
}
@media (max-width: 767px) {
  .post-categories .cat-item a,
  .post-categories .cat-item button {
    --h: 44px;
    border-bottom: none;
    padding-inline: 12px;
    font-size: 14px;
  }
}
.post-categories .cat-item.current-cat a,
.post-categories .cat-item.current-cat button {
  box-shadow: inset 0 -2px 0 0 var(--color-accent);
  border-color: var(--color-accent);
  color: var(--color-accent);
}
.post-card.post-card--congratulation {
  display: flex;
  position: relative;
  flex-direction: column;
  align-items: flex-start;
  border: 1px solid var(--color-border-accent);
  border-radius: var(--border-radius);
  padding: calc(var(--layout-spacing) * 2);
  padding-block-start: calc(var(--layout-spacing) * 6);
  overflow: hidden;
}
.post-card.post-card--congratulation:hover .post-card__thumbnail img {
  transform: scale(1);
}
.post-card.post-card--congratulation .post-card__thumbnail {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  -webkit-mask:
    linear-gradient(
      to bottom,
      black 0%,
      transparent 100%);
  mask:
    linear-gradient(
      to bottom,
      black 0%,
      transparent 100%);
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  border: none;
  border-radius: 0;
  width: 100%;
  height: calc(var(--layout-spacing) * 8);
}
.post-card.post-card--congratulation .post-card__thumbnail--placeholder img {
  display: none;
}
.post-card__congratulation-content {
  display: flex;
  row-gap: var(--layout-spacing);
  flex-grow: 1;
  flex-direction: column;
  align-items: flex-start;
  font-size: 0.9375em;
}
.post-card__congratulation-content p {
  margin-block: 0.25em;
}
.post-card__congratulation-content a {
  margin-block-start: auto;
  color: var(--color-accent);
  font-weight: 500;
  text-decoration: underline;
}
.post-card__congratulation-content > div {
  display: -webkit-box;
  -webkit-line-clamp: 6;
  -webkit-box-orient: vertical;
  margin-block-start: var(--layout-spacing);
  overflow: hidden;
}
nav.pagination {
  margin-block-start: calc(var(--layout-spacing) * 4);
}
nav.pagination .nav-links {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: calc(var(--layout-spacing) * 0.5);
}
nav.pagination span.page-numbers,
nav.pagination a.page-numbers {
  display: flex;
  justify-content: center;
  align-items: center;
  transition: background-color 0.2s ease;
  cursor: pointer;
  border: none;
  border: 1px solid var(--color-border-accent);
  border-radius: var(--border-radius);
  width: 44px;
  height: 44px;
  color: var(--color-accent);
  font-weight: 600;
  line-height: 24px;
  text-align: center;
  text-decoration: none;
  white-space: nowrap;
}
nav.pagination span.page-numbers.current,
nav.pagination a.page-numbers.current {
  background-color: var(--color-accent);
  color: white;
}
nav.pagination a.page-numbers:hover {
  background-color: var(--color-bg-accent);
}
nav.pagination a.page-numbers:focus-visible {
  outline: 2px solid color-mix(in srgb, var(--bg) 48%, transparent);
}
.partners {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: var(--layout-gap);
}
@media (max-width: 1023px) {
  .partners {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (max-width: 479px) {
  .partners {
    grid-template-columns: repeat(2, 1fr);
  }
}
.partners > * {
  min-width: 0;
}
.partner-logo {
  display: flex;
  justify-content: center;
  align-items: center;
  border: 1px solid var(--color-border-accent);
  border-radius: var(--border-radius);
  padding: calc(var(--layout-spacing) * 2);
  aspect-ratio: 3/2;
}
.partner-logo img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.partner-logo .tooltip {
  max-width: 100%;
}
a.partner-logo {
  transition: background-color 0.2s ease;
}
a.partner-logo:focus-visible {
  outline-offset: -3px;
}
a.partner-logo img {
  mix-blend-mode: multiply;
  transition: transform 0.2s ease;
}
a.partner-logo:hover {
  background-color: var(--color-bg-accent);
}
a.partner-logo:hover img {
  transform: scale(0.96);
}
[popover] {
  translate: 0 12px;
  opacity: 0;
  border: none;
  border-radius: var(--border-radius);
  padding: calc(var(--layout-spacing) * 3);
  width: 100%;
  max-width: min(100% - var(--layout-padding), var(--modal-max-width));
  max-height: calc(100svh - var(--layout-padding));
  overflow: auto;
}
[popover] > button[popovertargetaction=hide] {
  position: absolute;
  top: calc(var(--layout-spacing) * 0.5);
  right: calc(var(--layout-spacing) * 0.5);
  border-radius: calc(var(--border-radius) * 0.75);
  z-index: 9;
}
[popover] > button[popovertargetaction=hide] .icon {
  font-size: 36px;
}
[popover]::backdrop {
  opacity: 0;
  background-color: color-mix(in srgb, var(--color-text) 60%, transparent);
}
[popover]:popover-open {
  translate: 0 0;
  opacity: 1;
}
[popover]:popover-open::backdrop {
  opacity: 1;
}
[popover].popover-medium {
  max-width: min(100% - var(--layout-padding), var(--modal-max-width-medium));
}
[popover],
[popover]::backdrop {
  transition:
    display 0.2s,
    overlay 0.2s,
    opacity 0.2s,
    translate 0.2s;
  transition-behavior: allow-discrete;
}
@starting-style {
  [popover]:popover-open {
    translate: 0 12px;
    opacity: 0;
  }
  [popover]:popover-open::backdrop {
    opacity: 0;
  }
}
[data-event-plan-results].is-loading {
  opacity: 0.5;
  pointer-events: none;
}
.event-plan-list-item {
  display: flex;
  column-gap: var(--layout-column-gap);
  align-items: flex-start;
  transition: background-color 0.2s ease;
  cursor: pointer;
  border: none;
  border-top: 1px solid var(--color-border-accent);
  background-color: transparent;
  padding: calc(var(--layout-spacing) * 1.5);
  width: 100%;
  color: var(--color-text);
  font-size: 14px;
  line-height: 1.5;
  text-align: left;
}
@media (max-width: 1023px) {
  .event-plan-list-item {
    position: relative;
    row-gap: var(--layout-spacing);
    flex-direction: column;
    padding-inline: 0;
    padding-inline-start: calc(60px + var(--layout-column-gap));
    padding-block: calc(var(--layout-spacing) * 2);
  }
}
.event-plan-list-item:hover {
  background-color: var(--color-bg-accent);
}
@media (max-width: 767px) {
  .event-plan-list-item:hover {
    background-color: transparent;
  }
}
.event-plan-list-item :where(p) {
  margin: 0;
}
.event-plan-list-item__date {
  display: flex;
  left: 0;
  row-gap: calc(var(--layout-spacing) * 0.75);
  flex: 0 0 72px;
  flex-direction: column;
  font-weight: 600;
}
@media (max-width: 1023px) {
  .event-plan-list-item__date {
    position: absolute;
    flex: 0 0 60px;
    font-size: 13px;
  }
}
.event-plan-list-item__date .day {
  font-size: 32px;
  line-height: 1;
  letter-spacing: -0.01em;
}
@media (max-width: 1023px) {
  .event-plan-list-item__date .day {
    font-size: 28px;
  }
}
@media (max-width: 767px) {
  .event-plan-list-item__date .day {
    font-size: 24px;
  }
}
.event-plan-list-item__title {
  display: flex;
  row-gap: calc(var(--layout-spacing) * 0.75);
  flex-grow: 1;
  flex-direction: column;
  align-items: flex-start;
}
.event-plan-list-item__title h3 {
  margin-block-end: calc(var(--layout-spacing) * 0.25);
  font-weight: 500;
  font-size: 18px;
}
@media (max-width: 1023px) {
  .event-plan-list-item__title h3 {
    font-size: 16px;
  }
}
.event-plan-list-item__title p {
  color: var(--color-text-muted);
}
.event-plan-list-item__meta {
  display: flex;
  row-gap: calc(var(--layout-spacing) * 0.75);
  flex: 0 0 228px;
  flex-direction: column;
  font-weight: 500;
}
@media (max-width: 1023px) {
  .event-plan-list-item__meta {
    flex: 0 0 auto;
  }
}
.event-plan-list-item__date-range {
  display: flex;
  column-gap: var(--layout-spacing);
  align-items: center;
}
.event-plan-list-item__date-range .weekday {
  color: var(--color-text-muted);
  font-weight: 400;
}
.event-plan-list-item__arrow {
  flex-shrink: 0;
  translate: 0 0;
  opacity: 0;
  transition: translate 0.2s ease, opacity 0.2s ease;
  color: var(--color-accent);
  font-size: 36px;
}
@media (max-width: 1023px) {
  .event-plan-list-item__arrow {
    position: absolute;
    right: 0;
    bottom: calc(var(--layout-spacing) * 2);
    translate: 0 0;
    opacity: 1;
    font-size: 24px;
  }
}
.event-plan-list-item:hover .event-plan-list-item__arrow {
  translate: 4px -4px;
  opacity: 1;
}
@media (max-width: 1023px) {
  .event-plan-list-item:hover .event-plan-list-item__arrow {
    translate: 0 0;
  }
}
.event-filter {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--layout-gap);
  margin-block-end: calc(var(--layout-spacing) * 2);
}
@media (max-width: 767px) {
  .event-filter {
    flex-direction: column;
    align-items: flex-start;
  }
}
.event-filter.is-loading {
  opacity: 0.5;
  pointer-events: none;
}
.event-filter button[disabled] {
  display: none;
}
@media (max-width: 479px) {
  .event-filter select {
    width: 100%;
  }
}
.event-filter__branches {
  display: flex;
  column-gap: var(--layout-column-gap);
  row-gap: var(--layout-spacing);
  flex-wrap: wrap;
  align-items: center;
  margin: 0;
  padding: 0;
  list-style: none;
}
@media (max-width: 767px) {
  .event-filter__branches {
    flex-direction: column;
    align-items: flex-start;
  }
}
.event-popover h1 {
  margin: 0;
}
.event-popover p {
  margin: 0;
  margin-block-start: calc(var(--layout-spacing) * 0.5);
}
.event-popover__categories,
.event-popover__branches {
  margin: 0;
  margin-block-start: var(--layout-spacing);
}
.event-popover__categories {
  padding: 0;
  color: var(--color-text-muted);
  list-style: none;
}
.event-popover__meta {
  display: flex;
  align-items: flex-start;
  gap: var(--layout-gap);
  column-gap: calc(var(--layout-column-gap) * 2);
}
@media (max-width: 767px) {
  .event-popover__meta {
    flex-direction: column;
    align-items: flex-start;
  }
}
.event-popover__meta > div {
  flex: 0 1 auto;
}
@media (max-width: 767px) {
  .event-popover__meta > div {
    flex: 0 0 100%;
    width: 100%;
  }
}
.event-popover__meta table {
  border-collapse: collapse;
  width: 100%;
  line-height: 1.333;
}
.event-popover__meta table th,
.event-popover__meta table td {
  vertical-align: top;
  padding: 0;
  padding-block-end: 0.5em;
  text-align: left;
}
.event-popover__meta table th {
  padding-inline-end: var(--layout-spacing);
}
@media (max-width: 767px) {
  .event-popover__meta table th {
    width: 30%;
  }
}
@media (max-width: 479px) {
  .event-popover__meta table th {
    width: 50%;
  }
}
.event-popover__meta,
.event-popover__content {
  margin-block-start: calc(var(--layout-spacing) * 2);
  text-wrap: balance;
}
.onetap-container-toggle {
  display: none !important;
}
nav.onetap-accessibility.onetap-plugin-onetap .onetap-container .onetap-accessibility-settings header.onetap-header-top .onetap-site-container .onetap-site-info .onetap-title {
  display: none !important;
}
nav.onetap-accessibility.onetap-plugin-onetap .onetap-container .onetap-accessibility-settings header.onetap-header-top .onetap-site-container .onetap-site-info .onetap-information {
  display: none !important;
}
nav.onetap-accessibility.onetap-plugin-onetap .onetap-container .onetap-accessibility-settings header.onetap-header-top .onetap-site-container .onetap-site-info {
  min-height: 251px !important;
}
.has-background {
  border-radius: var(--border-radius);
  padding-inline: calc(var(--layout-spacing) * 2);
  padding-block: calc(var(--layout-spacing) * 1.5);
}
.has-edu-white-background-color {
  border: 1px solid var(--color-border-accent);
}
:root :where(p.has-background) {
  padding-inline: calc(var(--layout-spacing) * 2);
  padding-block: calc(var(--layout-spacing) * 1.5);
}
hr.wp-block-separator {
  background-color: var(--color-border-accent);
  height: 1px;
  border: none;
}
hr.wp-block-separator.is-style-wide {
  height: 3px;
}
.wp-block-edu-core-branch-contact {
  display: flex;
  row-gap: var(--layout-row-gap);
  flex-direction: column;
}
.wp-block-edu-core-branch-contact > address {
  display: flex;
  row-gap: var(--layout-spacing);
  flex-direction: column;
  font-weight: 500;
}
.wp-block-edu-core-branch-contact > address > header h2 {
  margin: 0;
}
.wp-block-edu-core-branch-contact > address > header h2 + p {
  margin-block-start: 0.25em;
}
.wp-block-edu-core-branch-contact > address > section {
  display: flex;
  column-gap: calc(var(--layout-spacing) * 3);
}
.wp-block-edu-core-branch-contact > address span {
  display: block;
  color: var(--color-text-muted);
  font-weight: 400;
  font-size: 0.9375em;
}
.wp-block-edu-core-branch-contact table {
  border-collapse: collapse;
  font-size: 0.9375em;
}
.wp-block-edu-core-branch-contact table th,
.wp-block-edu-core-branch-contact table td {
  padding-block: 0;
  padding: 0;
}
.wp-block-edu-core-branch-contact table th {
  padding-inline-end: var(--layout-spacing);
  font-weight: 500;
  text-align: left;
}
.wp-block-edu-core-branch-contact table .break-time th,
.wp-block-edu-core-branch-contact table .break-time td {
  padding-top: 0.5em;
}
.wp-block-edu-core-branch-map iframe {
  width: 100%;
  height: auto;
  border-radius: var(--border-radius);
  aspect-ratio: 4/3;
}
.editor-styles-wrapper .wp-block-edu-core-branch-map iframe {
  pointer-events: none;
}
.edu-staff.edu-staff--table .branch-tags {
  flex-direction: column;
  align-items: flex-start;
}
.edu-staff.edu-staff--table .wp-block-table tbody th {
  width: 30%;
}
@media (max-width: 767px) {
  .edu-staff.edu-staff--table .wp-block-table tbody th {
    width: 100%;
  }
}
.edu-staff.edu-staff--table .wp-block-table th.branch,
.edu-staff.edu-staff--table .wp-block-table td.branch {
  width: 20%;
}
@media (max-width: 767px) {
  .edu-staff.edu-staff--table .wp-block-table th.branch,
  .edu-staff.edu-staff--table .wp-block-table td.branch {
    width: 100%;
  }
}
@media (max-width: 767px) {
  .edu-staff.edu-staff--table .wp-block-table thead {
    display: none;
  }
  .edu-staff.edu-staff--table .wp-block-table tbody {
    display: flex;
    flex-direction: column;
  }
  .edu-staff.edu-staff--table .wp-block-table tr:not([hidden]) {
    display: flex;
    row-gap: var(--layout-spacing);
    flex-direction: column;
    align-items: flex-start;
    border-bottom: 1px solid var(--color-border-accent);
    padding: 0;
    padding-block: var(--layout-gap);
    width: 100%;
  }
  .edu-staff.edu-staff--table .wp-block-table tr:not([hidden]) th,
  .edu-staff.edu-staff--table .wp-block-table tr:not([hidden]) td {
    border: none;
    padding: 0;
  }
  .edu-staff.edu-staff--table .wp-block-table tr:not([hidden]) th {
    width: 100%;
    font-size: 16px;
  }
  .edu-staff.edu-staff--table .wp-block-table tr:not([hidden]) td:empty {
    display: none;
  }
  .edu-staff.edu-staff--table .wp-block-table tr:not([hidden]) p {
    color: var(--color-text-muted);
    font-size: 13px;
  }
  .edu-staff.edu-staff--table .wp-block-table .branch-tags {
    flex-direction: row;
    flex-wrap: wrap;
  }
}
.edu-staff.edu-staff--cards > ul {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: var(--layout-column-gap);
  margin: 0;
  padding: 0;
  list-style: none;
}
@media (max-width: 1199px) {
  .edu-staff.edu-staff--cards > ul {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (max-width: 1023px) {
  .edu-staff.edu-staff--cards > ul {
    grid-template-columns: repeat(2, 1fr);
  }
}
.edu-staff.edu-staff--cards > ul > * {
  min-width: 0;
}
.staff-filters {
  display: flex;
  column-gap: var(--layout-column-gap);
  row-gap: var(--layout-spacing);
  flex-wrap: wrap;
  align-items: center;
  margin: 0;
  margin-block-end: var(--layout-gap);
  padding: 0;
  list-style: none;
}
@media (max-width: 767px) {
  .staff-filters {
    flex-direction: column;
    align-items: flex-start;
  }
}
.staff-card {
  display: flex;
  position: relative;
  flex-direction: column;
  transition: background-color 0.2s ease;
  cursor: pointer;
  border: 1px solid var(--color-border);
  border-radius: var(--border-radius);
  background-color: transparent;
  padding: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.staff-card:hover {
  background-color: var(--color-bg-accent);
}
.staff-card:hover .icon--arrow_outward {
  translate: 4px -4px;
  opacity: 1;
}
@media (max-width: 1023px) {
  .staff-card:hover .icon--arrow_outward {
    translate: 0 0;
  }
}
.staff-card .icon--arrow_outward {
  position: absolute;
  top: calc(var(--layout-spacing) * 0.75);
  right: calc(var(--layout-spacing) * 0.75);
  flex-shrink: 0;
  translate: 0 0;
  opacity: 0;
  transition: translate 0.2s ease, opacity 0.2s ease;
  color: var(--color-accent);
  font-size: 36px;
}
@media (max-width: 767px) {
  .staff-card .icon--arrow_outward {
    translate: 0 0;
    opacity: 1;
    font-size: 24px;
  }
}
.editor-styles-wrapper .wp-block-edu-core-staff .staff-card {
  pointer-events: none;
}
.staff-card__photo {
  position: relative;
  padding-block-start: calc(var(--layout-spacing) * 2);
}
.staff-card__photo:before {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  -webkit-mask:
    linear-gradient(
      to bottom,
      black 0%,
      transparent 100%);
  mask:
    linear-gradient(
      to bottom,
      black 0%,
      transparent 100%);
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  background-color: var(--color-bg-accent);
  width: 100%;
  height: 75%;
  content: "";
}
.staff-card__photo img,
.staff-card__photo span {
  display: block;
  margin-inline: auto;
  border: 1px solid var(--color-border-accent);
  border-radius: 50%;
  background-color: white;
  aspect-ratio: 1;
  width: 60%;
  height: auto;
  object-fit: cover;
}
.staff-card__content {
  padding: var(--layout-spacing);
  padding-block: calc(var(--layout-spacing) * 2);
  padding-block-end: calc(var(--layout-spacing) * 1.5);
}
@media (max-width: 479px) {
  .staff-card__content h3 {
    font-size: 16px;
  }
}
.staff-card__content p {
  display: -webkit-box;
  margin: 0;
  margin-block-start: 0.5em;
  overflow: hidden;
  color: var(--color-text-muted);
  font-size: 0.875em;
  text-overflow: ellipsis;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
}
.staff-card__content p:first-child {
  margin-block-start: 0;
}
.staff-card__content .branch-tags {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-block-start: var(--layout-spacing);
}
.staff-modal {
  display: flex;
  column-gap: calc(var(--layout-column-gap) * 2);
  row-gap: var(--layout-row-gap);
}
@media (max-width: 767px) {
  .staff-modal {
    flex-direction: column;
  }
}
.staff-modal > figure {
  width: 100%;
  max-width: 360px;
}
.staff-modal > figure img,
.staff-modal > figure span {
  display: block;
  border-radius: calc(var(--border-radius) * 0.75);
  aspect-ratio: 1;
  width: 100%;
  height: auto;
  object-fit: cover;
}
.staff-modal > figure.placeholder span {
  background-color: var(--color-bg-accent);
}
.staff-modal > div {
  flex-grow: 1;
  width: 100%;
}
.staff-modal__content {
  display: flex;
  row-gap: calc(var(--layout-spacing) * 1.5);
  flex-direction: column;
  font-size: 16px;
}
@media (max-width: 767px) {
  .staff-modal__content {
    font-size: 15px;
  }
}
.staff-modal__content header,
.staff-modal__content ul {
  display: flex;
  row-gap: calc(var(--layout-spacing) * 0.5);
  flex-direction: column;
  align-items: flex-start;
}
.staff-modal__content header p,
.staff-modal__content ul p {
  margin: 0;
}
@media (max-width: 767px) {
  .staff-modal__content header p {
    font-size: 14px;
  }
}
.staff-modal__content .branch-tags {
  margin-block-start: calc(var(--layout-spacing) * 0.5);
}
.staff-modal__content ul {
  margin: 0;
  padding: 0;
  font-weight: 500;
  list-style: none;
  list-style: none;
}
.staff-modal__content h2 {
  margin: 0;
}
.staff-modal__content p {
  margin: 0;
  margin-block-end: 0.5em;
  color: var(--color-text-muted);
  line-height: 1.5;
}
.staff-modal__content p:last-child {
  margin-block-end: 0;
}
.staff-modal__content hr {
  margin: 0;
}
.staff-modal__content table {
  border-collapse: collapse;
  line-height: 1.3333;
}
.staff-modal__content table th,
.staff-modal__content table td {
  padding-block: 0.2em;
  width: 50%;
}
.staff-modal__content table th {
  padding-inline-end: 1em;
  font-weight: 400;
  text-align: left;
}
.staff-modal__content table td {
  white-space: nowrap;
}
.staff-modal__content table tr.break-time th,
.staff-modal__content table tr.break-time td {
  padding-top: 0.5em;
}
.staff-modal__content-contacts li {
  width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
figure.staff-card__photo.placeholder > span,
figure.staff-modal__photo.placeholder > span {
  position: relative;
  background-color: transparent;
  background-color: white;
  overflow: hidden;
}
figure.staff-card__photo.placeholder > span:before,
figure.staff-card__photo.placeholder > span:after,
figure.staff-modal__photo.placeholder > span:before,
figure.staff-modal__photo.placeholder > span:after {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -65%);
  transition: transform 0.2s ease;
  border-radius: 50%;
  background-color: var(--color-bg-accent);
  aspect-ratio: 1;
  width: 45%;
  height: auto;
  content: "";
}
figure.staff-card__photo.placeholder > span:after,
figure.staff-modal__photo.placeholder > span:after {
  transform: translate(-50%, 40%);
  aspect-ratio: 1.5;
  width: 80%;
}
.staff-card:hover figure.staff-card__photo.placeholder > span:before {
  transform: translate(-50%, calc(-65% - 4px));
}
.staff-card:hover figure.staff-card__photo.placeholder > span:after {
  transform: translate(-50%, calc(40% - 6px));
}
