/*
Theme Name: Happiness At School
Author: positiva.com.pl
Version: 1.0
*/
/* Table of contents:
    1. COLOR VARIABLES
    2. FONT VARIABLES
    3. OTHER VARIABLES
    4. MIXINS
      4.1 Breakpoints
      4.2 General grid for page
      4.3 Image as background
      4.4 Titles of sections
    5. GENERAL STYLES AND RESET 
    6. STYLES FOR WORDPRESS POSTS


*/
.container {
  display: grid;
  grid-template-columns: [full-start] minmax(1em, 1fr) [center-start] repeat(6, [col-start] minmax(min-content, 18.33rem) [col-end]) [center-end] minmax(1em, 1fr) [full-end];
}
@media screen and (min-width: 48em) {
  .container {
    grid-template-columns: [full-start] minmax(2em, 1fr) [center-start] repeat(6, [col-start] minmax(min-content, 20rem) [col-end]) [center-end] minmax(2em, 1fr) [full-end];
  }
}

/* 4.3 Image as background */
/* 4.4 Pseudo elements -> before and after */
.section-background {
  background-color: #f9ecef;
  padding-top: 4%;
}
@media screen and (min-width: 48em) {
  .section-background {
    padding-top: 0;
  }
}

*,
*::before,
*::after {
  vertical-align: baseline;
  font-family: inherit;
  font-style: inherit;
  border: 0 none;
  outline: 0;
  padding: 0;
  margin: 0;
  box-sizing: inherit;
}

html {
  box-sizing: border-box;
  font-size: 62.5%;
}

body, html {
  height: 100%;
}

footer {
  position: sticky;
  top: 100vh;
}

a {
  color: #251A12;
  text-decoration: none;
  transition: all 0.3s ease-in-out;
}
a:hover, a:focus, a:active {
  text-decoration: none;
  color: #CB4868;
}

ul {
  list-style-type: none;
}

em {
  font-style: italic;
}

button:hover,
a:hover {
  cursor: pointer;
}

body {
  font-family: "Open Sans", sans-serif;
  color: #251A12;
  background-color: #fff;
  font-weight: 400;
  line-height: 2.8rem;
  font-size: 1.8rem;
  min-width: 100%;
}
@media screen and (min-width: 31.25em) {
  body {
    font-size: 2rem;
  }
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: 100%;
  line-height: 1.3;
  text-align: center;
  margin-bottom: 2rem;
}

h1 {
  font-size: 4.2rem;
}
@media screen and (min-width: 31.25em) {
  h1 {
    font-size: 4.6rem;
  }
}

h2 {
  font-size: 3.8rem;
}
@media screen and (min-width: 31.25em) {
  h2 {
    font-size: 4.2rem;
  }
}

h3 {
  font-size: 3.4rem;
}
@media screen and (min-width: 31.25em) {
  h3 {
    font-size: 3.8rem;
  }
}

h4 {
  font-size: 3rem;
}
@media screen and (min-width: 31.25em) {
  h4 {
    font-size: 3.4rem;
  }
}

h5 {
  font-size: 2.6rem;
}
@media screen and (min-width: 31.25em) {
  h5 {
    font-size: 3rem;
  }
}

h6 {
  font-size: 2.2rem;
}
@media screen and (min-width: 31.25em) {
  h6 {
    font-size: 2.6rem;
  }
}

h2 {
  margin-bottom: 1em;
}

section {
  text-align: center;
}

.section-title {
  font-size: 1.3em;
  margin-bottom: 0.7em;
}
@media screen and (min-width: ) {
  .section-title {
    font-size: 1.5em;
    margin-bottom: 1em;
  }
}
@media screen and (min-width: 48em) {
  .section-title {
    font-size: 1.85em;
    margin-bottom: 1.5em;
  }
}

.skip-link {
  left: -100%;
  position: absolute;
}
.skip-link:focus {
  left: 50%;
}

article h1, article h2, article h3, article h4, article h5, article h6 {
  margin-bottom: 1em;
  text-align: center;
  color: #251A12;
  font-family: "Open Sans", sans-serif;
}
article h1:nth-of-type(1),
article h2:nth-of-type(1) {
  color: #AE3250;
  font-family: "Poppins", sans-serif;
}
article h2,
article h3,
article h4,
article h5,
article h6,
article p,
article ol,
article ul {
  line-height: 120%;
}
article p,
article ol,
article ul {
  text-align: left;
  margin-bottom: 2rem;
  line-height: 1.5;
}
article p {
  margin-bottom: 2rem;
}
article a {
  text-decoration: underline;
  color: #CB4868;
  word-break: break-word;
  overflow-wrap: break-word;
  word-wrap: break-word;
}
article a.button {
  text-decoration: none;
}
article ul,
article ol {
  list-style-position: inside;
}
article ul {
  list-style-type: none;
  padding-left: 3rem;
}
article ul li {
  position: relative;
  padding-bottom: 0.7em;
  padding-left: 1rem;
}
article ul li:before {
  content: "";
  display: block;
  position: absolute;
  top: 1.1rem;
  left: -1.6rem;
  height: 0.7rem;
  width: 0.7rem;
  border-radius: 50%;
  background-color: #CB4868;
}
article ol {
  padding-left: 1.3rem;
}
article tr, article td {
  border: 0.1rem solid #ccc;
  padding: 1rem;
}
article em {
  font-style: italic;
}
article sub,
article sup {
  font-size: 1.4rem;
}
article sub {
  vertical-align: sub;
}
article sup {
  vertical-align: super;
}
article strong {
  font-weight: 700;
}
article hr {
  width: 100%;
  height: 0.05rem;
  margin: 2rem 0;
}
article figcaption {
  text-align: center;
  font-size: 1.4rem;
  margin-top: 0;
}
article figcaption a {
  text-decoration: underline;
}
article blockquote {
  margin: 0 auto;
  border-left: 0.3rem solid #CB4868;
  text-align: left;
  width: 80%;
  padding: 1rem 2rem;
}
article blockquote p {
  margin-bottom: 0;
  line-height: 190%;
  font-size: 2rem;
}
article blockquote p em {
  font-size: 3rem;
}
article figure img {
  margin-bottom: 2rem;
  height: auto;
}
article blockquote,
article .wp-block-media-text {
  margin-top: 2rem;
  margin-bottom: 2rem;
}
article .wp-block-pullquote p {
  font-size: initial;
}
article button {
  cursor: pointer;
  margin-top: 0;
}
article .wp-block-media-text .wp-block-media-text__content {
  padding: 0;
}
@media (min-width: 601px) {
  article .wp-block-media-text .wp-block-media-text__content {
    padding: 0 0 0 8%;
  }
}
article .wp-block-media-text.has-media-on-the-right .wp-block-media-text__content {
  padding: 0;
}
@media (min-width: 601px) {
  article .wp-block-media-text.has-media-on-the-right .wp-block-media-text__content {
    padding: 0 8% 0 0;
  }
}
article .wp-block-gallery {
  margin: 3em 0 2em;
}
article .wp-block-gallery li:before {
  display: none;
}
article .wp-block-gallery figure + .button {
  margin-top: 0;
}

ul.footer-menu,
ul.mobile-menu,
.menu-menu-glowne-desktop-container ul,
.menu-menu-glowne-mobile-container ul {
  list-style-type: none;
}

img {
  height: auto;
  width: auto;
  max-width: 100%;
}

.blocks-gallery-grid.is-cropped .blocks-gallery-image a,
.blocks-gallery-grid.is-cropped .blocks-gallery-image img,
.blocks-gallery-grid.is-cropped .blocks-gallery-item a,
.blocks-gallery-grid.is-cropped .blocks-gallery-item img,
.wp-block-gallery.is-cropped .blocks-gallery-image a,
.wp-block-gallery.is-cropped .blocks-gallery-image img,
.wp-block-gallery.is-cropped .blocks-gallery-item a,
.wp-block-gallery.is-cropped .blocks-gallery-item img {
  height: auto;
}

.custom-article {
  margin-bottom: 15%;
}
@media screen and (min-width: 48em) {
  .custom-article {
    margin-bottom: 6%;
  }
}

.wp-block-gallery.has-nested-images.is-cropped figure.wp-block-image:not(#individual-image) a,
.wp-block-gallery.has-nested-images.is-cropped figure.wp-block-image:not(#individual-image) img {
  flex: none;
  height: auto;
}

/* Table of contents:
     1. SCROLL TO TOP
     2. BUTTONS
     3. CONTACT FORM
     4. ARROW BACKGROUND
     5. PARTNERS' IMAGES
*/
#scroll-to-top {
  display: none;
  width: 5rem;
  height: 5rem;
  right: 1em;
  position: fixed;
  bottom: 15rem;
  background-color: transparent;
  text-align: center;
  justify-content: center;
  cursor: pointer;
  z-index: 99999;
  border-radius: 50%;
  padding: 0.3em;
  border: 0.4rem solid #298F77;
}

.button,
.frm_style_formidable-style.with_frm_style .frm_compact .frm_dropzone.dz-clickable .dz-message,
.frm_style_formidable-style.with_frm_style input[type=submit],
.frm_style_formidable-style.with_frm_style .frm_submit input[type=button],
.frm_style_formidable-style.with_frm_style .frm_submit button,
.frm_form_submit_style,
.frm_style_formidable-style.with_frm_style .frm-edit-page-btn,
.wp-block-button__link {
  background-color: #AE3250;
  color: #fff;
  transition-timing-function: ease-in-out;
  transition-duration: 0.2s;
  border: solid 0.2rem #AE3250;
  font-weight: 500;
  border-radius: 3rem;
  display: inline-flex;
  text-align: center;
  padding: 0.7em 3em;
  cursor: pointer;
  font-size: 1.8rem;
  position: relative;
  margin-top: 1.5em;
  overflow: hidden;
  transition: all 0.2s linear 0s;
}
@media screen and (min-width: 31.25em) {
  .button,
.frm_style_formidable-style.with_frm_style .frm_compact .frm_dropzone.dz-clickable .dz-message,
.frm_style_formidable-style.with_frm_style input[type=submit],
.frm_style_formidable-style.with_frm_style .frm_submit input[type=button],
.frm_style_formidable-style.with_frm_style .frm_submit button,
.frm_form_submit_style,
.frm_style_formidable-style.with_frm_style .frm-edit-page-btn,
.wp-block-button__link {
    width: initial;
    font-size: 2.2rem;
  }
}
.button:hover, .button:focus, .button:active,
.frm_style_formidable-style.with_frm_style .frm_compact .frm_dropzone.dz-clickable .dz-message:hover,
.frm_style_formidable-style.with_frm_style .frm_compact .frm_dropzone.dz-clickable .dz-message:focus,
.frm_style_formidable-style.with_frm_style .frm_compact .frm_dropzone.dz-clickable .dz-message:active,
.frm_style_formidable-style.with_frm_style input[type=submit]:hover,
.frm_style_formidable-style.with_frm_style input[type=submit]:focus,
.frm_style_formidable-style.with_frm_style input[type=submit]:active,
.frm_style_formidable-style.with_frm_style .frm_submit input[type=button]:hover,
.frm_style_formidable-style.with_frm_style .frm_submit input[type=button]:focus,
.frm_style_formidable-style.with_frm_style .frm_submit input[type=button]:active,
.frm_style_formidable-style.with_frm_style .frm_submit button:hover,
.frm_style_formidable-style.with_frm_style .frm_submit button:focus,
.frm_style_formidable-style.with_frm_style .frm_submit button:active,
.frm_form_submit_style:hover,
.frm_form_submit_style:focus,
.frm_form_submit_style:active,
.frm_style_formidable-style.with_frm_style .frm-edit-page-btn:hover,
.frm_style_formidable-style.with_frm_style .frm-edit-page-btn:focus,
.frm_style_formidable-style.with_frm_style .frm-edit-page-btn:active,
.wp-block-button__link:hover,
.wp-block-button__link:focus,
.wp-block-button__link:active {
  outline: none;
  color: #fff;
  background-color: #CB4868;
  border: solid 0.2rem #CB4868;
}

button {
  background-color: transparent;
}

.frm_style_formidable-style.with_frm_style p.description,
.frm_style_formidable-style.with_frm_style div.description,
.frm_style_formidable-style.with_frm_style div.frm_description,
.frm_style_formidable-style.with_frm_style .frm-show-form > div.frm_description,
.frm_style_formidable-style.with_frm_style .frm_error {
  padding: 0.3em 0 0 1em;
}

.frm_style_formidable-style.with_frm_style .frm_error_style,
.frm_style_formidable-style.with_frm_style p.description,
.frm_style_formidable-style.with_frm_style div.description,
.frm_style_formidable-style.with_frm_style div.frm_description,
.frm_style_formidable-style.with_frm_style .frm-show-form > div.frm_description,
.frm_style_formidable-style.with_frm_style .frm_error,
.with_frm_style .frm_message,
.frm_success_style {
  font-size: 1.6rem;
  font-family: "Open Sans", sans-serif;
}

form {
  font-family: "Open Sans", sans-serif;
  font-size: 1em;
}
form h4 {
  font-size: 1.1em;
  margin-bottom: 0.5;
  border-bottom: 0.1rem solid #ccc;
}
@media screen and (min-width: 31.25em) {
  form h4 {
    font-size: 1.2em;
  }
}

.frm_fields_container {
  border-radius: 2rem;
  padding: 0;
}

.with_frm_style input[type=text],
.with_frm_style input[type=password],
.with_frm_style input[type=email],
.with_frm_style input[type=number],
.with_frm_style input[type=url],
.with_frm_style input[type=tel],
.with_frm_style input[type=file],
.with_frm_style input[type=search],
.with_frm_style select,
.with_frm_style .frm-card-element.StripeElement {
  height: 5rem;
}

.with_frm_style input[type=text],
.with_frm_style input[type=password],
.with_frm_style input[type=email],
.with_frm_style input[type=number],
.with_frm_style input[type=url],
.with_frm_style input[type=tel],
.with_frm_style input[type=phone],
.with_frm_style input[type=search],
.with_frm_style select,
.with_frm_style textarea,
.frm_form_fields_style,
.with_frm_style .frm_scroll_box .frm_opt_container,
.frm_form_fields_active_style,
.frm_form_fields_error_style,
.with_frm_style .frm-card-element.StripeElement,
.with_frm_style .chosen-container-multi .chosen-choices,
.with_frm_style .chosen-container-single .chosen-single,
.frm_style_formidable-style.with_frm_style .form-field input:not([type=file]):focus,
.frm_style_formidable-style.with_frm_style select:focus,
.frm_style_formidable-style.with_frm_style textarea:focus {
  background-color: #fff;
  border-radius: 2.2rem;
  border-color: #ddd;
  border-width: 0.2rem;
  padding: 1.3rem;
}
.with_frm_style input[type=text]:hover,
.with_frm_style input[type=password]:hover,
.with_frm_style input[type=email]:hover,
.with_frm_style input[type=number]:hover,
.with_frm_style input[type=url]:hover,
.with_frm_style input[type=tel]:hover,
.with_frm_style input[type=phone]:hover,
.with_frm_style input[type=search]:hover,
.with_frm_style select:hover,
.with_frm_style textarea:hover,
.frm_form_fields_style:hover,
.with_frm_style .frm_scroll_box .frm_opt_container:hover,
.frm_form_fields_active_style:hover,
.frm_form_fields_error_style:hover,
.with_frm_style .frm-card-element.StripeElement:hover,
.with_frm_style .chosen-container-multi .chosen-choices:hover,
.with_frm_style .chosen-container-single .chosen-single:hover,
.frm_style_formidable-style.with_frm_style .form-field input:not([type=file]):focus:hover,
.frm_style_formidable-style.with_frm_style select:focus:hover,
.frm_style_formidable-style.with_frm_style textarea:focus:hover {
  border-color: #edc5ce;
}
.with_frm_style input[type=text]:focus, .with_frm_style input[type=text]:active,
.with_frm_style input[type=password]:focus,
.with_frm_style input[type=password]:active,
.with_frm_style input[type=email]:focus,
.with_frm_style input[type=email]:active,
.with_frm_style input[type=number]:focus,
.with_frm_style input[type=number]:active,
.with_frm_style input[type=url]:focus,
.with_frm_style input[type=url]:active,
.with_frm_style input[type=tel]:focus,
.with_frm_style input[type=tel]:active,
.with_frm_style input[type=phone]:focus,
.with_frm_style input[type=phone]:active,
.with_frm_style input[type=search]:focus,
.with_frm_style input[type=search]:active,
.with_frm_style select:focus,
.with_frm_style select:active,
.with_frm_style textarea:focus,
.with_frm_style textarea:active,
.frm_form_fields_style:focus,
.frm_form_fields_style:active,
.with_frm_style .frm_scroll_box .frm_opt_container:focus,
.with_frm_style .frm_scroll_box .frm_opt_container:active,
.frm_form_fields_active_style:focus,
.frm_form_fields_active_style:active,
.frm_form_fields_error_style:focus,
.frm_form_fields_error_style:active,
.with_frm_style .frm-card-element.StripeElement:focus,
.with_frm_style .frm-card-element.StripeElement:active,
.with_frm_style .chosen-container-multi .chosen-choices:focus,
.with_frm_style .chosen-container-multi .chosen-choices:active,
.with_frm_style .chosen-container-single .chosen-single:focus,
.with_frm_style .chosen-container-single .chosen-single:active,
.frm_style_formidable-style.with_frm_style .form-field input:not([type=file]):focus:focus,
.frm_style_formidable-style.with_frm_style .form-field input:not([type=file]):focus:active,
.frm_style_formidable-style.with_frm_style select:focus:focus,
.frm_style_formidable-style.with_frm_style select:focus:active,
.frm_style_formidable-style.with_frm_style textarea:focus:focus,
.frm_style_formidable-style.with_frm_style textarea:focus:active {
  border-color: #CB4868;
  box-shadow: none;
}

.with_frm_style .frm_top_container .frm_primary_label,
.with_frm_style .frm_hidden_container .frm_primary_label,
.with_frm_style .frm_pos_top {
  font-family: "Open Sans", sans-serif;
  color: #251A12;
  border: none;
  font-weight: 400;
  font-size: 1.8rem;
  padding-left: 1.3rem;
}

.frm_style_formidable-style.with_frm_style .form-field.section-space {
  margin-bottom: 0;
  margin-top: 1.5em;
}
.frm_style_formidable-style.with_frm_style .form-field.section-space:nth-of-type(1) {
  margin-top: 0;
}

.frm_style_formidable-style.with_frm_style .form-field {
  line-height: 1.5;
}

.with_frm_style .vertical_radio .frm_checkbox label,
.with_frm_style .vertical_radio .frm_radio label,
.frm_style_formidable-style.with_frm_style .form-field,
.with_frm_style .frm_primary_label,
.frm_style_formidable-style.with_frm_style .form-field,
.with_frm_style .frm_radio label,
.with_frm_style .frm_checkbox label {
  font-size: 1em;
  font-family: "Open Sans", sans-serif;
}

.with_frm_style .vertical_radio .frm_checkbox label,
.with_frm_style .vertical_radio .frm_radio label,
.with_frm_style .frm_radio label,
.with_frm_style .frm_checkbox label {
  font-size: 1em;
  padding-bottom: 0.5em;
}

.frm_style_formidable-style.with_frm_style .frm_none_container .frm_primary_label,
.frm_style_formidable-style.with_frm_style .frm_pos_none {
  display: block;
  margin-bottom: 0.7em;
}

.frm_style_formidable-style.with_frm_style .form-field {
  margin-bottom: 1.5em;
}

.frm_upload_text button, .frm_compact_text button {
  background-color: #fff;
  border-radius: 2.2rem;
  border-color: #ddd;
  border-width: 0.2rem;
  padding: 1.3rem;
  border-style: solid;
}

.frm_submit {
  text-align: center;
}
@media screen and (min-width: 31.25em) {
  .frm_submit {
    text-align: left;
  }
}

.custom-shape-divider {
  grid-column: full-start/full-end !important;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  overflow: hidden;
  line-height: 0;
  bottom: -1px;
}

.custom-shape-divider svg {
  position: relative;
  display: block;
  width: calc(100% + 1.3px);
  height: 32px;
  bottom: -1px;
}
@media screen and (min-width: 48em) {
  .custom-shape-divider svg {
    height: 62px;
  }
}
@media screen and (min-width: 75em) {
  .custom-shape-divider svg {
    height: 82px;
  }
}

.custom-shape-divider .shape-fill {
  fill: #fff;
}

.tabs {
  border-radius: 1rem 1rem 0 0;
}
.tabs .tabs__item {
  width: 100%;
  display: block;
  margin-bottom: 1em;
}
.tabs .radiotab {
  position: absolute;
  opacity: 0;
}
.tabs .label {
  position: relative;
  cursor: pointer;
  text-align: center;
  font-size: 1.1em;
  padding: 0.8em;
  color: #251A12;
  background-color: #f9ecef;
  transition: background-color 0.3s, color 0.3s;
  border: none;
  width: 100%;
  display: block;
  margin-bottom: 0.7em;
  border-radius: 1rem;
}
.tabs .label:after {
  position: absolute;
  top: 50%;
  right: 0.5em;
  content: url(img/arrow-down-submenu-desktop.svg);
  transform: translate(0, -40%);
}
.tabs .label:hover {
  background-color: #edc5ce;
}
.tabs .label:active, .tabs .label:focus {
  background-color: #e7b2be;
}
@media screen and (min-width: 48em) {
  .tabs .label {
    margin-bottom: 1em;
  }
}
.tabs .panel {
  display: none;
  background: #fff;
  width: 100%;
  padding: 0.7em;
  border-bottom: solid 0.2rem #CB4868;
  border-left: solid 0.2rem #CB4868;
  border-right: solid 0.2rem #CB4868;
  border-top: none;
  border-bottom-left-radius: 1rem;
  border-bottom-right-radius: 1rem;
}
@media screen and (min-width: 48em) {
  .tabs .panel {
    order: 99;
  }
}
.tabs input:checked + .label + .panel {
  display: block;
  margin-bottom: 0.7em;
}
.tabs input:checked + .label + .panel > * {
  text-align: left;
}
.tabs .radiotab:checked + .label {
  background: #fff;
  color: #AE3250;
  border-top: solid 0.2rem #CB4868;
  border-left: solid 0.2rem #CB4868;
  border-right: solid 0.2rem #CB4868;
  border-bottom: none;
  font-weight: 700;
  margin-bottom: 0;
  padding-bottom: 0;
  border-radius: 1rem 1rem 0 0;
}
.tabs .radiotab:checked + .label:after {
  display: none;
}
.tabs .radiotab:checked + .label:focus {
  background-color: #d67089;
}
.tabs .radiotab:checked + .label:active {
  background-color: #d67089;
}
@media screen and (min-width: 48em) {
  .tabs .radiotab:checked + .label {
    padding: 0.8em;
  }
}
.tabs .school-container {
  padding: 0.5em;
  display: list-item;
  list-style-position: inside;
}
.tabs .school-name {
  display: inline-block;
}
.tabs .school-address {
  padding-left: 1.1em;
}

.partners .blocks-gallery-grid.is-cropped .blocks-gallery-image a, .partners .blocks-gallery-grid.is-cropped .blocks-gallery-image img, .partners .blocks-gallery-grid.is-cropped .blocks-gallery-item a, .partners .blocks-gallery-grid.is-cropped .blocks-gallery-item img, .partners .wp-block-gallery.is-cropped .blocks-gallery-image a, .partners .wp-block-gallery.is-cropped .blocks-gallery-image img, .partners .wp-block-gallery.is-cropped .blocks-gallery-item a, .partners .wp-block-gallery.is-cropped .blocks-gallery-item img {
  height: 13rem;
  width: auto;
  object-fit: scale-down;
}
.partners .blocks-gallery-grid, .partners .wp-block-gallery {
  margin: auto;
}
.partners h3 {
  margin-top: 2em;
}
.partners h3 + figure.wp-block-gallery {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
}
@media screen and (min-width: 48em) {
  .partners h3 + figure.wp-block-gallery {
    grid-template-columns: repeat(6, 1fr);
  }
}
.partners h3 + figure.wp-block-gallery > figure.wp-block-image {
  width: 90%;
}
@media screen and (min-width: 48em) {
  .partners h3 + figure.wp-block-gallery > figure.wp-block-image {
    grid-template-columns: repeat(6, 1fr);
  }
}
.partners .wp-block-gallery.has-nested-images figure.wp-block-image:not(#individual-image),
.partners .wp-block-gallery.has-nested-images.columns-1 figure.wp-block-image:not(#individual-image), .partners .wp-block-gallery.has-nested-images.columns-2 figure.wp-block-image:not(#individual-image), .partners .wp-block-gallery.has-nested-images.columns-3 figure.wp-block-image:not(#individual-image), .partners .wp-block-gallery.has-nested-images.columns-4 figure.wp-block-image:not(#individual-image), .partners .wp-block-gallery.has-nested-images.columns-5 figure.wp-block-image:not(#individual-image),
.partners .wp-block-gallery.has-nested-images.columns-6 figure.wp-block-image:not(#individual-image), .partners .wp-block-gallery.has-nested-images.columns-7 figure.wp-block-image:not(#individual-image) {
  width: 90%;
}
@media (min-width: 600px) {
  .partners .wp-block-gallery.has-nested-images figure.wp-block-image:not(#individual-image),
.partners .wp-block-gallery.has-nested-images.columns-1 figure.wp-block-image:not(#individual-image), .partners .wp-block-gallery.has-nested-images.columns-2 figure.wp-block-image:not(#individual-image), .partners .wp-block-gallery.has-nested-images.columns-3 figure.wp-block-image:not(#individual-image), .partners .wp-block-gallery.has-nested-images.columns-4 figure.wp-block-image:not(#individual-image), .partners .wp-block-gallery.has-nested-images.columns-5 figure.wp-block-image:not(#individual-image),
.partners .wp-block-gallery.has-nested-images.columns-6 figure.wp-block-image:not(#individual-image), .partners .wp-block-gallery.has-nested-images.columns-7 figure.wp-block-image:not(#individual-image) {
    width: 90%;
  }
}

.container-frontpage > *, .container-subpage > * {
  display: grid;
  grid-template-columns: [full-start] minmax(1em, 1fr) [center-start] repeat(6, [col-start] minmax(min-content, 18.33rem) [col-end]) [center-end] minmax(1em, 1fr) [full-end];
}
@media screen and (min-width: 48em) {
  .container-frontpage > *, .container-subpage > * {
    grid-template-columns: [full-start] minmax(2em, 1fr) [center-start] repeat(6, [col-start] minmax(min-content, 20rem) [col-end]) [center-end] minmax(2em, 1fr) [full-end];
  }
}
.container-frontpage > * > *, .container-subpage > * > * {
  grid-column: center-start/center-end;
}

.top-bar, .nav-main, .footer {
  display: grid;
  display: grid;
  grid-template-columns: [full-start] minmax(1em, 1fr) [center-start] repeat(6, [col-start] minmax(min-content, 18.33rem) [col-end]) [center-end] minmax(1em, 1fr) [full-end];
}
@media screen and (min-width: 48em) {
  .top-bar, .nav-main, .footer {
    grid-template-columns: [full-start] minmax(2em, 1fr) [center-start] repeat(6, [col-start] minmax(min-content, 20rem) [col-end]) [center-end] minmax(2em, 1fr) [full-end];
  }
}

.top-bar {
  background-color: #AE3250;
  color: #fff;
  padding: 0.35em 0;
}
.top-bar .contact-list, .top-bar .socials-list {
  display: flex;
  align-items: center;
}
.top-bar .contact-list, .top-bar .logo {
  grid-column: 2/-2;
}
@media screen and (min-width: 31.25em) {
  .top-bar .contact-list, .top-bar .logo {
    grid-column: 2/-4;
    grid-column: 2/span 3;
  }
}
.top-bar .contact-list {
  justify-content: space-between;
}
@media screen and (min-width: 62em) {
  .top-bar .contact-list {
    justify-content: flex-start;
  }
}
.top-bar .contact-list a {
  font-size: 1.6rem;
}
.top-bar .socials-list {
  display: none;
}
@media screen and (min-width: 31.25em) {
  .top-bar .socials-list {
    display: flex;
    justify-content: flex-end;
    grid-column: -4/-2;
  }
}
.top-bar .socials-list .socials-item:not(:last-child) {
  padding-right: 0.5em;
}
.top-bar .socials-link {
  display: flex;
}

.footer .contact-item span, .top-bar .contact-item span {
  display: none;
}

.contact-item {
  color: #fff;
  padding-left: 0.3em;
}
.contact-item:not(:last-child) {
  padding-right: 0.5em;
}
.contact-item img {
  position: relative;
  top: 0.2em;
}
@media screen and (min-width: 31.25em) {
  .contact-item img {
    padding-right: 0.2em;
  }
}
.contact-item a {
  color: #fff;
}

.nav-main__wrapper {
  grid-column: 2/-2;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0.35em 0;
}

.logo {
  display: flex;
}
.logo img {
  max-width: 5.5rem;
}
@media screen and (min-width: 31.25em) {
  .logo img {
    max-width: 10rem;
  }
}

.menu-menu-glowne-container {
  display: none;
}
@media screen and (min-width: 75em) {
  .menu-menu-glowne-container {
    display: flex;
    justify-content: flex-end;
    align-items: center;
  }
}

.nav-main__list {
  display: flex;
  justify-content: space-between;
  font-size: 1.2em;
}
.nav-main__list .menu-item:not(:last-child) {
  padding-right: 1.5em;
}
.nav-main__list .menu-item a {
  font-size: 1.8rem;
  text-transform: uppercase;
}
@media screen and (min-width: 75em) {
  .nav-main__list .menu-item a {
    transition: background-size 0.4s ease;
    background: linear-gradient(to bottom, transparent 60%, rgba(203, 72, 104, 0.25) 0) center center/0% 75% no-repeat;
    padding: 0 0.6rem 0.2rem 0.6rem;
  }
  .nav-main__list .menu-item a:hover {
    background-size: 100% 100%;
  }
  .nav-main__list .menu-item a:active {
    background-size: 80% 100%;
  }
  .nav-main__list .menu-item a:focus {
    color: #AE3250;
  }
}
@media screen and (min-width: 75em) {
  .nav-main__list .menu-item.current-menu-item a {
    transition: none;
    background: linear-gradient(to bottom, transparent 60%, rgba(203, 72, 104, 0.25) 0) center center/100% 100% no-repeat;
  }
}

.nav-main {
  position: relative;
}
.nav-main.navigation-open .menu-menu-glowne-container {
  position: absolute;
  display: block;
  top: 100%;
  left: 0;
  right: 0;
  z-index: 11;
}
.nav-main.navigation-open .nav-main__list {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  background-color: #CB4868;
  background-color: #fff;
  justify-content: center;
  flex-direction: column;
  align-items: center;
}
.nav-main.navigation-open .menu-item {
  padding: 0.7em 0;
  width: 100%;
  text-align: center;
  border-bottom: 1px solid #eee;
}
.nav-main.navigation-open .menu-item:hover {
  background-color: #fff;
  cursor: pointer;
}
.nav-main.navigation-open .menu-item:hover a {
  color: #CB4868;
}
.nav-main.navigation-open .menu-item a {
  color: #AE3250;
  height: 100%;
  width: 100%;
  font-weight: 600;
}
.nav-main.navigation-open .menu-item a:hover, .nav-main.navigation-open .menu-item a:active, .nav-main.navigation-open .menu-item a:focus {
  color: #CB4868;
}
.nav-main.navigation-open .button-nav {
  background-image: url("img/close-nav.svg");
}

.menu-item-has-children {
  position: relative;
}
.menu-item-has-children > a {
  position: relative;
}
.menu-item-has-children > a:after {
  position: absolute;
  top: 0.3rem;
  right: -3.5rem;
  content: url("img/arrow-down-submenu-mobile-hover.svg");
  display: block;
}
@media screen and (min-width: 75em) {
  .menu-item-has-children > a:after {
    top: 0;
    right: -2.2rem;
    content: url("img/arrow-down-submenu-desktop.svg");
  }
}
.menu-item-has-children > a:hover:after {
  content: url("img/arrow-down-submenu-mobile-hover.svg");
}
.menu-item-has-children .sub-menu {
  display: none;
  background-color: #fff;
}
@media screen and (min-width: 75em) {
  .menu-item-has-children .sub-menu {
    position: absolute;
    top: 3rem;
    left: 0;
    right: 0;
    z-index: 111;
  }
}
.menu-item-has-children .sub-menu .menu-item {
  padding: 0.3em 0;
  border: none;
}
@media screen and (min-width: 75em) {
  .menu-item-has-children .sub-menu .menu-item {
    padding: 0;
    border-bottom: 1px solid #eee;
  }
}
.menu-item-has-children .sub-menu .menu-item:nth-last-child(1) {
  border-bottom: 0.1rem solid transparent;
}
.menu-item-has-children .sub-menu .menu-item a {
  width: 100%;
  display: block;
  color: #CB4868;
}
@media screen and (min-width: 75em) {
  .menu-item-has-children .sub-menu .menu-item a {
    background: none;
  }
  .menu-item-has-children .sub-menu .menu-item a:hover {
    background: none;
  }
}
@media screen and (min-width: 75em) {
  .menu-item-has-children .sub-menu .menu-item a:hover, .menu-item-has-children .sub-menu .menu-item a:focus {
    background-color: #CB4868;
    color: #fff;
  }
}
.menu-item-has-children.sub-menu-open > a {
  background: none;
}
.menu-item-has-children.sub-menu-open:hover {
  background-color: #CB4868;
}
@media screen and (min-width: 75em) {
  .menu-item-has-children.sub-menu-open:hover {
    background-color: #fff;
  }
}
.menu-item-has-children.sub-menu-open:hover a {
  color: #fff;
}
@media screen and (min-width: 75em) {
  .menu-item-has-children.sub-menu-open:hover a {
    color: #251A12;
  }
}
.menu-item-has-children.sub-menu-open .sub-menu {
  padding-bottom: 0;
  display: block;
}
@media screen and (min-width: 75em) {
  .menu-item-has-children.sub-menu-open .sub-menu {
    box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
  }
}
@media screen and (min-width: 75em) {
  .menu-item-has-children.sub-menu-open .sub-menu a {
    display: inline-block;
    padding: 0.7em;
    color: #251A12;
    text-align: center;
  }
}
.menu-item-has-children.sub-menu-open > a:after {
  content: url("img/arrow-up-submenu-mobile.svg");
  display: block;
  padding-right: 0.5rem;
}
@media screen and (min-width: 75em) {
  .menu-item-has-children.sub-menu-open > a:after {
    content: url("img/arrow-up-submenu-desktop.svg");
  }
}

.button-nav {
  background-image: url("img/button-nav.svg");
  height: 3.8rem;
  width: 3.8rem;
  transition: all 0.3s ease-in-out;
}
@media screen and (min-width: 75em) {
  .button-nav {
    display: none;
  }
}

.footer {
  background-color: #AE3250;
  color: #fff;
  grid-template-rows: auto auto;
  padding: 1em 0;
}
@media screen and (min-width: 62em) {
  .footer {
    grid-row: auto;
  }
}
.footer .contact-list, .footer .footer__info {
  grid-column: 2/-2;
  text-align: center;
}
.footer .contact-list {
  grid-row: 1/2;
  text-align: center;
  padding-bottom: 1em;
}
@media screen and (min-width: 62em) {
  .footer .contact-list {
    grid-column: 2/5;
    grid-row: 1/2;
    padding-bottom: 0;
    text-align: left;
  }
}
.footer .contact-list .widget_ha_as_contact_sidebar_widget {
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media screen and (min-width: 62em) {
  .footer .contact-list .widget_ha_as_contact_sidebar_widget {
    display: initial;
  }
}
.footer .contact-item:active, .footer .contact-item:focus, .footer .contact-item:hover {
  color: #fff;
  text-decoration: underline;
}
.footer .contact-item img {
  padding-right: 0;
}
.footer .contact-item:not(:last-child) {
  padding-right: 0;
}
@media screen and (min-width: 62em) {
  .footer .contact-item:not(:last-child) {
    padding-right: 1em;
  }
}
.footer .socials-list {
  display: flex;
  padding-left: 0.3rem;
  padding-top: 1.3rem;
  justify-content: center;
}
@media screen and (min-width: 62em) {
  .footer .socials-list {
    justify-content: flex-start;
  }
}
.footer .socials-list li {
  padding-right: 0.5em;
}
.footer .socials-list li:last-child(1) {
  padding-right: 0;
}
.footer .footer__info {
  grid-row: 2/3;
}
@media screen and (min-width: 62em) {
  .footer .footer__info {
    grid-column: 5/-2;
    grid-row: 1/2;
    text-align: right;
  }
}
.footer .footer__info .footer__info-madeBy a {
  color: #fff;
}

.container-frontpage > *,
.container-subpage > * {
  padding-bottom: 15%;
}
@media screen and (min-width: 48em) {
  .container-frontpage > *,
.container-subpage > * {
    padding-bottom: 5%;
  }
}
.container-frontpage > .section-background,
.container-subpage > .section-background {
  padding: 12% 0 15%;
}
@media screen and (min-width: 48em) {
  .container-frontpage > .section-background,
.container-subpage > .section-background {
    padding: 5% 0 8%;
  }
}
.container-frontpage .section-background + section,
.container-subpage .section-background + section {
  padding-top: 10%;
}
@media screen and (min-width: 48em) {
  .container-frontpage .section-background + section,
.container-subpage .section-background + section {
    padding-top: 5%;
  }
}
.container-frontpage .section-image section,
.container-subpage .section-image section {
  padding-top: 5%;
}
.container-frontpage .section-image,
.container-subpage .section-image {
  padding: 0;
  margin-bottom: 15%;
}
@media screen and (min-width: 48em) {
  .container-frontpage .section-image,
.container-subpage .section-image {
    margin-bottom: 5%;
  }
}
.container-frontpage .section-image__title,
.container-subpage .section-image__title {
  margin-bottom: 0.5em;
}
.container-frontpage .section-image article,
.container-subpage .section-image article {
  padding: 5em 0;
}
.container-frontpage .section-image article > *,
.container-subpage .section-image article > * {
  text-align: center;
}
.container-frontpage .section-image .button,
.container-subpage .section-image .button {
  margin-top: 0.5em;
}
@media screen and (min-width: 31.25em) {
  .container-frontpage .section-image .button,
.container-subpage .section-image .button {
    margin-top: 1.5em;
  }
}
.container-frontpage .banner-frontpage + section,
.container-subpage .banner-frontpage + section {
  padding-top: 5%;
}
@media screen and (min-width: 48em) {
  .container-frontpage .banner-frontpage + section,
.container-subpage .banner-frontpage + section {
    padding-top: 0;
  }
}
.container-frontpage .banner-subpage + article, .container-frontpage .banner-subpage + section,
.container-subpage .banner-subpage + article,
.container-subpage .banner-subpage + section {
  padding-top: 8%;
}
@media screen and (min-width: 48em) {
  .container-frontpage .banner-subpage + article, .container-frontpage .banner-subpage + section,
.container-subpage .banner-subpage + article,
.container-subpage .banner-subpage + section {
    padding-top: 4%;
  }
}

.container-subpage .custom-section {
  padding-bottom: 0;
}

.title-subpage {
  margin: 0;
  padding: 0.5em 0;
  font-size: 1.2em;
  font-family: "Poppins", sans-serif;
  color: #AE3250;
  font-weight: 600;
}
@media screen and (min-width: 31.25em) {
  .title-subpage {
    font-size: 1.4em;
    padding: 1em 0;
  }
}

.school__year-title {
  margin-bottom: 0.5em;
}

.error-404__text {
  text-align: center;
}

.banner-frontpage {
  position: relative;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  background-color: #CB4868;
  background-color: #fff;
  background-position: 95% center;
  margin-top: 0;
}
@media screen and (min-width: 48em) {
  .banner-frontpage {
    background-position: center center;
  }
}

.banner-frontpage__title {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  margin: 0 auto;
  padding: 5em 0;
}
@media screen and (min-width: 31.25em) {
  .banner-frontpage__title {
    max-width: 46.5rem;
  }
}
.banner-frontpage__title .button {
  margin-top: 2em;
}

.banner-frontpage__title-box {
  background-color: #fff;
  padding: 8%;
  border-radius: 3rem;
}
@media screen and (min-width: 31.25em) {
  .banner-frontpage__title-box {
    padding: 10%;
  }
}

.banner__text {
  font-size: 2em;
  font-family: "Poppins", sans-serif;
  font-weight: 700;
  letter-spacing: 0.2rem;
  line-height: 1;
  background-size: cover;
  color: #298F77;
}
@media screen and (min-width: 31.25em) {
  .banner__text {
    font-size: 2.7em;
  }
}
@media screen and (min-width: 48em) {
  .banner__text {
    font-size: 3.1em;
  }
}

.banner-subpage {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  background-color: #CB4868;
  background-color: #fff;
  padding: 0.5em 0;
  background-image: url("img/gradient3.jpg");
}

.coverage-map img, .coverage-map iframe {
  width: 100%;
}

.join {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  background-color: #CB4868;
}

.current-year {
  position: relative;
  background-color: #f9ecef;
}

.organiser {
  background-image: url("img/colorful-kid.jpg");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  background-color: #CB4868;
  position: relative;
}
.organiser .section-image__title, .organiser img {
  position: relative;
  z-index: 2;
}
.organiser .section-image__title {
  color: #fff;
}
.organiser img {
  margin-top: 1.5em;
}
.organiser .showcase {
  grid-column: 1/-1;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  z-index: 1;
  opacity: 0.7;
  background-color: #000;
}

.container-subpage .page-contact {
  margin: 0;
}
.container-subpage .contact-list {
  margin-bottom: 3em;
}
@media screen and (min-width: 62em) {
  .container-subpage .contact-list {
    margin: 0;
    grid-column: 2/5;
  }
}
.container-subpage .contact-list .contact-item {
  color: #251A12;
  height: 15vh;
  margin-bottom: 1em;
  font-weight: 500;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 0;
  font-size: 1.25em;
}
@media screen and (min-width: 62em) {
  .container-subpage .contact-list .contact-item {
    width: 50%;
  }
}
.container-subpage .contact-list .contact-item:first-child {
  margin-bottom: 4em;
}
.container-subpage .contact-list .contact-item img {
  bottom: 1em;
  top: auto;
}
.container-subpage .contact-list .contact-item span {
  margin-bottom: 0.6em;
  color: #CB4868;
  font-size: 2.5rem;
}

@media screen and (min-width: 62em) {
  .contact-form {
    margin: 0;
    grid-column: 5/-2;
  }
}

.school-name__link {
  color: #AE3250;
}

/*# sourceMappingURL=style.css.map */
