html,
body,
* {
  box-sizing: border-box;
  padding: 0;
  margin: 0;
  font-family: poppins, sans-serif;
  scroll-behavior:smooth;
}

.login-register-modal {
  pointer-events: auto;
  z-index: 9999;
}
html {
  font-size: 62.5%;
  overflow-x: hidden;
  width: 100%;
}
body {
  font-size: 1.6rem;
  width: 100%;
  overflow-x: hidden;
}

body.no-scroll {
  overflow-y: hidden;
  height: 100vh;
}

:root {
  /* colors */
  --blue-75: rgba(34, 87, 221, 0.75);
  --blue-20: rgba(34, 87, 221, 0.2);
  --blue-20-solid: #B3C5F0;
  --blue: #2258dd;
  --medium-blue: #003090;
  --dark-blue: #010e2d;
  --dark-blue-alpha-strong: #010e2dbd;
  --very-dark-blue: #000919;
  --dark-blue-alpha: #010e2d21;
  --grey-blue: #a5b0d5;
  --red: #ff3a47;
  --red-75: rgba(255, 59, 72, 0.75);
  --red-50: rgba(255, 59, 72, 0.5);
  --red-25: rgba(255, 59, 72, 0.25);
  --maroon:  #510018;
  --holiday: #8FB8E5;
  --pink: #ff628e;
  --yellow: #edb824;
  --yellow-alpha: #edb7246c;
  --light-off-white: #f2f2f2;
  --off-white: #e5e5e5;
  --light-grey: #e9e9e9;
  --dark-grey: #333;
  --label-grey: #444;
  --black-alpha-75: hsla(0, 0%, 0%, 0.75);
  --black-alpha-20: hsla(0, 0%, 0%, 0.2);

  --key-green: #75ffa1;
  --key-yellow: #fdc473;
  --key-red: #f97a83;
  --key-grey-blue: #a6afd6;

  /* fonts */
  --lato: "Lato", sans-serif;
  --poppins: "Poppins", sans-serif;

  /* font-sizes */
  --heading000: 15rem;
  /* --heading00: 150px; */
  --heading005: 10rem;
  /* --heading00: 70px; */
  --heading0025: 8.5rem;
  /* --heading00: 85px; */
  --heading00: 7rem;
  /* --heading00: 70px; */
  --heading0: 5.5rem;
  /* --heading0: 60px; */
  --heading01: 4.75rem;
  /* --heading1: 40px; */
  --heading1: 4rem;
  /* --heading1: 40px; */
  --heading2: 3.5rem;
  /* --heading2: 35px; */
  --heading3: 3rem;
  /* --heading3: 30px; */
  --heading4: 2.5rem;
  /* --heading4: 25px; */
  --heading4-5: 2.25rem;
  /* heading-4-5: 22.5px; */
  --heading5: 2rem;
  /* --heading5: 20px; */
  --heading6: 1.8rem;
  /* --heading5: 20px; */
  --body: 1.6rem;
  /* --body: 16px; */
  --small: 1.4rem;
  /* --small: 14px; */
  --smaller: 1.2rem;
  /* --small: 12px; */
}

h1,
h2,
h3,
h4,
h5,
h6,
a,
button,
label,
input {
  font-family: var(--poppins);
}

input[type="text"], input[type="email"], input[type="password"], textarea {
  font-size: var(--body);
}

button,
a {
  cursor: pointer;
}

h2 {
  font-size: var(--heading4);
  color: var(--dark-blue);
}

.checkout-choose-family-members {
  display: flex;
  flex-direction: column;
  background-color: var(--dark-blue);
  padding: 1rem;
  border-radius: 8px;
  position: relative;
  min-height: fit-content;
  left: 0;
  overflow-y: scroll;
}

.ticker-container {
  width: 100%; /* Adjust as needed */
  overflow: hidden;
  white-space: nowrap;
  background-color: var(--dark-blue); /* Optional background color */
  color: #fff;
  position: absolute;
  top: -2rem;
  padding: 0.5rem;
  z-index: 2;
  display: block;
}

.ticker-text {
  display: inline-block;
  padding-left: 100%; /* Start offscreen */
  animation: ticker 45s linear infinite; /* Adjust speed */
}

@keyframes ticker {
  0% {
    transform: translateX(0%);
  }
  100% {
    transform: translateX(-100%);
  }
}


.grecaptcha-badge {
  z-index: 100;
}

.blue-bg h2, .patch-dark-blue-bg h2 {
  color: #fff;
}
.container {
  max-width: 1400px;
  margin: 0 auto;
  padding: 0 12rem;
}

.container-wide {
  max-width: 1600px;
  margin: 0 auto;
  padding: 0 6rem;
  position: relative;
}

.cover-container {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  background-color: var(--dark-blue-alpha-strong);
  padding-top: 3rem;
  z-index: 10;
  backdrop-filter: blur(5px);
}

.spacer {
  padding: 4rem;
}

.sml-spacer {
  padding: 1rem;
}

.additional-sml-spacer {
  padding: 0;
}

.alpha-text {
  opacity: 0.75;
  color: var(--dark-blue-alpha-strong);
}

.underline {
  padding: 1px;
  width: 100%;
  margin: 2rem 0;
  background-color: var(--dark-blue);
}

.separator {
  background-color: var(--grey-blue);
  padding: 2px;
  opacity: 0.25;
  margin: 2rem auto;
}
.separator-red {
  background-color: var(--red);
  padding: 2px;
  opacity: 1;
  margin: 1rem auto;
}

.flex,
.address-flex {
  display: flex;
}

.flex {
  gap: 4rem;
}

.address-flex {
  margin: 0 auto;
}

.off-white-bg {
  background-color: var(--light-off-white);
}

.grey-blue-bg .flex,
.grey-blue-bg .flex-two-thirds {
  gap: 1.5rem;
}

.flex-third {
  display: flex;
  flex: 1;
  /* align-items: flex-end; */
}

.flex-two-thirds {
  flex: 2.1;
  display: flex;
  gap: 4rem;
  justify-content: flex-start;
}

.flex-half {
  flex: 1;
}

.flex-wide-third {
  flex: 1.5;
}

.flex-full-height {
  height: 100%;
}

.flex-55vh {
  height: 50vh;
}

.flex-third.flex,
.flex-wide-third.flex {
  align-items: flex-end;
}

.flex-square::before {
  content: "";
  display: block;
  padding-top: 100%; /* Set the height relative to the width */
}

.flex-square img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 90%;
}

.pad-top-bottom {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.hero-section {
  height: 82vh;
  width: 100vw;
  background-color: #fff;
  color: #fff;
  position: relative;
}

.hero-section video {
  width: 101vw;
  height: 83vh;
  object-fit: cover;
}

.hero-flex {
  display: flex;
  flex-direction: column;
  justify-content: center;
  height: 100%;
  line-height: 1.25;
  z-index: 1;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
}

.hero-flex-with-logo {
  flex-direction: row; 
  justify-content: space-between; 
  align-items: center;
}

.hero-logo {
   width: 500px;
   margin-top: 150px;
}

.hero-logo-mobile {
  display: none;
  width: 200px;
}

.hero-logo img, .hero-logo-mobile img {
  width: 100%;
  height: 100%;
}

.holiday-hero .hero-logo img {
  /* margin-bottom: 6rem;  */
  position: relative; 
  z-index: 2; 
  /* width: 400px; */
  width: 500px;
}

.hero-low-text {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  height: 100%;
  padding-bottom: 6rem;
}

.no-hero {
  padding-top: 175px;
  /* padding-top: 150px; */
}
.alpha-bottom {
  position: absolute;
  bottom: 0;
  height: 25rem;
  width: 100%;
  background-image: linear-gradient(
    to bottom,
    transparent 0%,
    /* var(--very-dark-blue) */
    var(--off-white)
  );
  z-index: 2;
}

.hero-low-text h1 {
  font-size: var(--heading0);
  color: var(--dark-blue);
  z-index: 2;
}

.lessons-hero,
.ice-skating-hero,
.birthday-hero,
.patch-hero,
.food-and-drink-hero,
.membership-hero,
.fun-zone-hero,
.holiday-hero {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.lessons-hero {
  background-image: url("../images/utx-lessons-v2.jpg");
}

.fun-zone-hero {
  background-image: url("../images/birthday-parties/star-bg.jpg");
}

.ice-skating-hero {
  background-image: url("../images/ice-skating-hero.jpg");
}

.ice-skating-page-hero {
  background-image: url("../images/ice-skating-header-wide.jpg");
  background-position: center 15%;
  background-size: cover;
  /* transform: scale(1.25); */
}
.membership-hero {
  background-image: url("../images/ice-card-membership-banner.jpg");
  background-position: right 0%;
}
.food-and-drink-hero {
  position: relative;
  overflow: hidden;
  background-image: url("../images/food_and_drink_banner_v2.jpg");
}

.dark-blue-hero {
  background-color: var(--dark-blue);
}

.holiday-hero {
  background-image: url("../images/holidays-hero.jpg");
  background-position: 35% 15%;
  background-size: cover;
}




.birthday-hero {
  position: relative;
  background-image: url("../images/birthday-parties/Background-01.jpg");
  overflow: hidden;
}

.patch-hero {
  background-size: cover;
  background-position: 50% 35%;
  background-repeat: no-repeat;
  background-image: url(../images/patch/patch-3.jpg);
}

.hero-flex h1 {
  font-family: var(--poppins);
  font-size: var(--heading0);
  font-weight: 700;
  margin-top: 150px;
}

.hero-flex h2 {
  font-size: var(--heading4);
}

.center {
  text-align: center;
}

.red-text {
  color: var(--red);
}
.blue-text {
  color: var(--blue);
}

.dark-blue-text {
  color: var(--dark-blue);
  font-weight: bold;
}
.dark-grey-text {
  color: var(--label-grey);
  font-weight: 500;
}
.dark-blue-text-500 {
  color: var(--dark-blue);
  font-weight: 500;
  line-height: 1.5;
}

.subheading-bold-sml.white-text, .white-text {
  color: #fff;
}

/* NAV ================================================================================= */
.nav {
  position: absolute;
  z-index: 3;
  width: 100%;
  top: 2rem;
}

.nav-dark {
  background-color: var(--dark-blue);
  top: 0;
}
.nav-dark .nav-links {
  padding: 4rem 0 2rem 2rem;
}

.nav-dark .nav-icons {
  padding: 4rem 1rem 2rem;
}

.nav-dark .nav-inner {
  justify-content: flex-end;
  position: relative;
}

.nav-dark .nav-logo-container {
  position: absolute;
  left: 6rem;
  top: 1.5rem;
}

.solid-nav {
  position: absolute;
  top: -4rem;
  bottom: 0;
  left: 0;
  right: 0;
  height: 150px;
  background-color: var(--dark-blue);
  pointer-events: none;
}

.alpha-over-nav {
  position: absolute;
  top: -2rem;
  bottom: 0;
  left: 0;
  right: 0;
  height: 200px;
  -webkit-gradient: (
    linear,
    left top,
    left bottom,
    color-stop(50%, var(--very-dark-blue),
    to(transparent))
  );
  background-image: linear-gradient(
    180deg,
    var(--very-dark-blue),
    transparent 95%
  );
  pointer-events: none;
}


.nav-inner {
  display: flex;
  justify-content: space-between;
  flex-wrap: nowrap;
}
.nav-logo-container {
  width: 150px;
  min-width: 80px;
  z-index: 2;
  margin-top: 2rem;
}
/* santa */
/* .nav-logo-container {
  width: 220px;
  min-width: 80px;
  z-index: 2;
  margin-top: -1rem;
} */

.nav-logo-container img {
  width: 100%;
}

.nav-main {
  display: flex;
  justify-content: flex-end;
}

.nav-links {
  padding: 4rem 0 4rem 2rem;
  display: flex;
  align-items: flex-start;
  color: #fff;
}

.nav-link {
  font-family: var(--lato);
  color: #fff;
  text-decoration: none;
  font-weight: 600;
  padding: 1rem 0.5rem;
  margin: 0 0.5rem;
  cursor: pointer;
  position: relative;
  text-transform: capitalize;
  font-size: var(--heading6);
}

.nav-link:hover {
  border-bottom: 4px solid #fff;
}

.nav-link.dark-link {
  color: var(--dark-blue);
}
.nav-link.dark-link:hover {
  border-bottom: 4px solid var(--dark-blue);
}

.nav-link span {
  display: flex;
  justify-content: flex-end;
  align-items: center;
}

.nav-links-visible .nav-link:hover {
  border-bottom:none;
}


.nav-link img {
  width: 20px;
}

.nav-icons {
  display: flex;
  padding: 4rem 1rem;
  align-items: flex-start;
}

.nav-icons .red-btn {
  margin: 0 0 0 1rem;
  z-index: 2;
}

.nav-icon-container {
  width: 40px;
  height: 40px;
  margin: 0 1rem;
  z-index: 2;
}
.nav-icon-container img {
  width: 100%;
  height: 100%;
}
.nav-toggle-container {
  display: none;
  cursor: pointer;
}

@keyframes rotateNavArrowAnimation {
  0% {
    transform: rotate(0);
  }
  100% {
    transform: rotate(180deg);
  }
}

@keyframes undoRotateNavArrowAnimation {
  0% {
    transform: rotate(180deg);
  }
  100% {
    transform: rotate(0);
  }
}

/* ========== END NAV =============================================== */

/* ========== FOOTER =============================================== */
.footer {
  background-color: var(--dark-blue);
  color: #fff;
  position: relative;
}

.footer-bottom {
  background-color: var(--blue);

  text-align: center;
  padding: 2rem;
  font-weight: bold;
}

.footer-bottom-mobile {
  position: absolute;
  display: none;
  width: 100%;
}

.footer h3 {
  color: var(--yellow);
  font-size: var(--heading3);
  text-transform: capitalize;
}
.footer-inner {
  display: flex;
  justify-content: center;
  padding-bottom: 6rem;
  padding-top: 6rem;
}
.footer-inner div a,
.footer-inner div p,
.footer-inner div h3 {
  margin-bottom: 2rem;
}

.footer-inner div a:last-of-type,
.footer-inner div p:last-of-type {
  margin-bottom: 0;
}


.footer-flex-container:first-of-type {
  width: 40%;
}
.footer-flex-container:last-of-type {
  width: 60%;
}
.footer-inner-flex {
  display: flex;
  /* width: 50%; */
}

.footer-separator {
  background-color: #fff;
  margin: 0 2rem 0;
  min-height: 100%;
  padding: 1px;
  /* height: 200px; */
}

.footer-column-container {
  margin: 0 5rem;
  position: relative;
}
.footer-column-container:last-child {
  margin: 0 0 0 5rem;
}

.footer-column {
  display: flex;
  flex-direction: column;
}

.footer-column a,
.footer-location-item {
  color: #fff;
  text-decoration: none;
  text-transform: capitalize;
  font-family: var(--lato);
  font-weight: 400;
  cursor: pointer;
  position: relative;
  transition: all 250ms;
}

.footer-column a:hover,
.footer-column a:focus,
.footer-location-item:hover,
.footer-location-item:focus {
  color: var(--red);
}

.footer-column a:after,
.footer-location-item:after {
  position: absolute;
  content: "";
  bottom: -8px;
  left: 0;
  height: 2px;
  width: 100%;
  background-color: var(--red);
  visibility: hidden;
  transform: scaleX(0);
  transform-origin: left;
  transition: all 0.3s ease-in-out;
}

.footer-column a:hover:after,
.footer-location-item:hover:after {
  visibility: visible;
  transform: scaleX(1);
}

.footer-socials-container {
  display: flex;
}
.footer-social {
  height: 40px;
  width: 40px;
  margin: 0 0.5rem;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: transform 250ms;
}

.footer-social:hover {
  transform: scale(1.1);
}
.footer-social:first-child {
  margin-left: 0;
}
.footer-social:last-child {
  margin-right: 0;
}

.footer-social img {
  width: 100%;
  height: 100%;
}

.footer-column-container-mobile {
  display: none;
  position: relative;
}

.footer-logo-mobile {
  display: none;
}

/* ========== END FOOTER =============================================== */
/* ========== LOGIN REGISTER MODAL =============================================== */
.login-register-modal-container {
  height: 100vh;
  width: 100vw;
  background-color: var(--dark-blue-alpha-strong);
  backdrop-filter: blur(15px);
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 100;
  display: none;
  justify-content: center;
  /* align-items: center; */
  overflow-y: scroll;
  padding: 6rem;
}

.login-register-modal-container.show {
  display: flex;
}

.login-register-modal {
  background-color: var(--off-white);
  color: #000;
  width: 95%;
  max-width: 560px;
  padding: 3rem;
  height: fit-content;
  position: relative;
}
.login-register-modal .flex-buttons {
  display: flex;
  justify-content: center;
  align-items: center;
  width: fit-content;
  margin: 0 auto;
  background-color: #fff;
}

.login-register-modal .flex-buttons span {
  padding: 1rem 3rem;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  min-width: 150px;
}
.login-register-modal .flex-buttons span.active {
  text-align: center;
  background-color: var(--red);
  color: #fff;
  border-radius: 4rem;
}

/* ========== END LOGIN REGISTER MODAL =============================================== */

.grid-image-section {
  display: flex;
  height: 60vh;
  width: 100vw;
}

.grid-image-section .left {
  width: 66.6%;
  display: flex;
}

.grid-image-section .right {
  width: 33.3%;
}
.grid-image-section .left .tall {
  height: 100%;
  width: 50%;
  position: relative;
  overflow: hidden;
  cursor: pointer;
}

.grid-image-section .right .wide {
  height: 50%;
  width: 100%;
  position: relative;
  overflow: hidden;
  cursor: pointer;
  display: block;
}

.img-1,
.img-2,
.img-3,
.img-4 {
  transform: scale(1.025);
  height: 100%;
  width: 100%;
  object-fit: cover;
  object-position: center;
  transition: all 0.5s ease-in-out;
}

.img-2 {
  padding-bottom: 4rem;
}

.img-4 {
  /* object-position: left; */
}

.tall:hover .img-1,
.tall:hover .img-2,
.wide:hover .img-3,
.wide:hover .img-4 {
  transform: scale(1);
}

/* .tall:hover .text-container {
  animation: textMovement 0.5s;
}
.tall:hover .read-more-info {
 animation: textOpacity 0.5s;
} */

/*
.wide:hover .read-more-info {
  display: block;
  animation: textOpacity 0.5s;
}
.wide:hover .text-container h3, .wide:hover .text-container p {
  animation: textMovement 0.5s;
} */

@keyframes textOpacity {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes resetTextOpacity {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}

@keyframes textMovement {
  from {
    transform: translateY(calc(100% - 100px));
  }
  to {
    transform: translateY(0);
  }
}
@keyframes resetTextMovement {
  from {
    transform: translateY(0);
  }
  to {
    transform: translateY(calc(100% - 100px));
  }
}

.alpha-over-img {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  /* background-image: linear-gradient(180deg,transparent -20%,#000); */
  -webkit-gradient: (
    linear,
    left top,
    left bottom,
    color-stop(50%, transparent),
    to(var(--very-dark-blue))
  );
  background-image: linear-gradient(
    180deg,
    transparent 50%,
    var(--very-dark-blue)
  );
}

.left .alpha-over-img {

  -webkit-gradient: (
    linear,
    left top,
    left bottom,
    color-stop(50%, transparent),
    to(var(--off-white))
  );
  background-image: linear-gradient(
    180deg,
    transparent 50%,
    var(--off-white)
  );
}



.read-more-info {
  opacity: 0;
}

.read-more-info.opacity-1 {
  opacity: 1;
}

.grid-image-section .text-container {
  position: absolute;
  bottom: 0;
  color: #fff;
  padding: 2rem;
  transition: all 0.5s ease-in-out;
  transform: translateY(calc(100% - 100px));
}

.grid-image-section .left .text-container {
  color: var(--dark-blue);
}

.grid-image-section .text-container.show-all-text {
  transform: translateY(0);
}
.grid-image-section .text-container h3 {
  font-size: var(--heading4);
}
.grid-image-section .text-container p {
  font-size: var(--small);
}

.subheading-thin {
  font-size: var(--heading2);
  color: var(--dark-blue);
  font-weight: 500;
}
.subheading-thin-white {
  font-size: var(--heading2);
  color: #fff;
  font-weight: 500;
}
.subheading-bold {
  font-size: var(--heading2);
  font-weight: 700;
}
.subheading-thin-sml {
  font-size: var(--heading3);
  color: var(--dark-blue);
  font-weight: 500;
}
.subheading-bold-sml {
  font-size: var(--heading3);
  color: var(--dark-blue);
  font-weight: 700;
}
.subheading-smaller {
  font-size: var(--heading4);
  color: #fff;
  font-weight: 500;
}

.subheading-dark-blue {
  color: var(--dark-blue);
  font-weight: 700;
  text-align: center;
}

.bold {
  font-weight: bold;
}

.heading,
.heading-white,
.checkout-heading,
.basket-heading {
  position: relative;
  font-family: var(--poppins);
  font-weight: 700;
  width: fit-content;
}

.basket-heading.heading-red-underline::after {
  height: 5px;
}
.checkout-heading {
  margin-left: 2rem;
}

.heading,
.heading-white {
  font-size: var(--heading01);
}

.heading {
  color: var(--dark-blue);
  text-align: center;
  margin: 0 auto 4rem;
}

.heading-white {
  color: #fff;
  margin-bottom: 4rem;
}

.heading-red-underline::after,
.heading-blue-underline::after,
.heading-white-underline::after,
.thin-heading-red-underline::after {
  position: absolute;
  content: "";
  width: 100%;
  top: 95%;
  left: 0;
  right: 0;
  height: 5px;
  border-radius: 10px;
}

.thin-heading-red-underline::after {
  height: 5px;
}

.heading-red-underline::after {
  background-color: var(--red);
}

.heading-blue-underline::after {
  background-color: var(--blue);
}

.heading-white-underline::after {
  background-color: #fff;
}

.bold {
  font-family: var(--poppins);
  font-weight: 700;
}

.intro-text {
  padding-bottom: ;
}

.intro-text p {
  font-size: var(--heading6);
  margin-bottom: 1rem;
}

.btn,
.btn-med,
.btn-sml,
.btn-rounded,
.btn-wide,
.btn-full-width,
.btn-full-width-thin,
.checkout-btn {
  text-decoration: none;
  border-radius: 1rem;
  font-weight: 700;
  display: flex;
  justify-content: center;
  align-items: center;
  width: fit-content;
  border: none;
  outline: none;
  line-height: 1;
  /* text-transform: capitalize; */
  cursor: pointer;
  text-align: center;
}

.btn-rounded {
  padding: 1rem 3rem;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 3rem;
  min-width: 150px;
}

.btn {
  padding: 1.5rem 2.5rem;
  font-size: var(--heading4);
  margin: 4rem auto;
}


.intro-text .btn {
  margin: 4rem auto 1.5rem;
}

.btn-med {
  padding: 1.5rem 3rem;
  font-size: var(--heading4);
}

.btn-sml {
  padding: 1rem 2rem;
  font-size: var(--heading6);
}

.map-btn.btn-sml {
  font-size: var(--body);
}

.checkout-btn {
  width: 80%;
  margin: 0 auto;
  padding: 1rem;
  font-size: var(--heading5);
}

.btn-v-sml {
  padding: 0.5rem 1rem;
  font-size: var(--small);
  width: 100%;
  margin-left: auto;
  margin-top: 1rem;
}

.btn-wide {
  width: 60%;
  margin: 0 auto;
  font-size: var(--heading5);
  padding: 1.5rem 3rem;
}

.btn-full-width {
  width: 100%;
  font-size: var(--heading5);
  padding: 1.5rem 3rem;
}

.btn-full-width-thin {
  width: 100%;
  font-size: var(--heading5);
  padding: 0.5rem;
}

.checkout-absolute-btn {
  position: absolute;
  padding: 0.5rem 2rem;
  bottom: 1rem;
  right: 2rem;
}

.btn-sml img {
  height: 24px;
  width: 24px;
  margin-right: 1rem;
}

.outline-btn {
  border: 4px solid white;
  color: #fff;
  background-color: transparent;
  text-decoration: none;
  border-radius: 1rem;
  font-weight: 700;
  display: flex;
  justify-content: center;
  align-items: center;
  width: fit-content;
  outline: none;
  line-height: 1;
  text-transform: capitalize;
  cursor: pointer;
  font-size: var(--heading4);
  padding: 1rem 2rem;
  transition: all 350ms ease-in-out;
}

.outline-btn:hover,
.outline-btn:focus {
  background-color: #fff;
  color: var(--blue);
}

.white-btn {
  background-color: white;
  border: 4px solid white;
  transition: all 350ms ease-in-out;
}

.white-btn.clicked {
  background-color: var(--dark-blue);
  color: white;
  border:  white 4px solid;
}

.fun-zone-quiz .white-btn {
  color: var(--blue)
}
.fun-zone-quiz .white-btn:hover {
  background-color: var(--blue);
  border: 4px solid var(--blue);
  color: #fff
}

.red-btn {
  border: 4px solid var(--red);
  background-color: var(--red);
  color: white;
  transition: all 350ms ease-in-out;
}

.yellow-btn {
  border: 4px solid var(--yellow);
  background-color: var(--yellow);
  color: var(--dark-blue);
}

.outline-red-btn {
  border: 4px solid var(--red);
  background-color:#fff;
  color: var(--red);
}

.blue-btn {
  background-color: var(--blue);
  border: 4px solid var(--blue);
  color: white;
  transition: all 350ms ease-in-out;
}

.dark-blue-btn {
  background-color: var(--dark-blue);
  border: 4px solid var(--dark-blue);
  color: white;
  transition: all 350ms ease-in-out;
}


.red-btn:hover,
.red-btn:focus,
.blue-btn:hover,
.blue-btn:focus,
.dark-blue-btn:hover,
.dark-blue-btn:focus {
  background-color: white;
}

.red-btn:hover,
.red-btn:focus {
  color: var(--red);
}

.blue-btn:hover,
.blue-btn:focus {
  color: var(--blue);
}
.dark-blue-btn:hover,
.dark-blue-btn:focus {
  color: var(--dark-blue);
}

.white-btn {
  color: var(--dark-blue);
  border: 4px solid white;
}

.white-btn-with-border {
  border: 4px solid var(--dark-blue);
  color: var(--dark-blue);
  background-color: #fff;
  transition: all 350ms ease-in-out;
}

.white-btn-with-border:hover,
.white-btn-with-border:focus {
  background-color: var(--red);
  color: #fff;
}

.red-btn:hover,
.red-btn:focus {
  color: var(--red);
}
.blue-btn:hover,
.blue-btn:focus {
  color: var(--blue);
}
.white-btn:hover,
.white-btn:focus {
  color: white;
  background-color: var(--dark-blue);
  border: 4px solid #fff;
}

.youtube-btn {
  display: flex;
  gap: 2rem;
}
.youtube-btn img {
  width: 50px;
}

.btn-flex {
  display: flex;
  gap: 1rem;
  margin-top: auto;
}

.btn-flex-wide {
  display: flex;
  gap: 1rem;
  align-items: flex-end;
  justify-content: stretch;
  width: 100%;
  padding-left: 2rem;
}

.btn-flex-wide .red-btn, .btn-flex-wide .dark-blue-btn {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  flex: 1;
}

.btn-flex-wide .hidden {
  display: none;
}

.hidden {
  display: none;
}

.btn-flex a {
  flex: 1;
  display: flex;
  align-items: center;
}
.link-img {
  height: 32px;
  margin-left: 8px;
}

.rounded-corners {
  border-radius: 4rem;
}

.red-bg {
  background-color: var(--red);
  color: var(--dark-blue);
}

.blue-bg {
  background-color: var(--blue);
  color: #fff;
  padding: 6rem;
}

.blue-bg.news-section {
  padding: 4rem 0;
}

.event .blue-bg {
  padding: 6rem 0;
}
.yellow-bg {
  background-color: var(--yellow);
  color: #fff;
  padding: 6rem;
}

.dark-blue-bg,
.find-us.dark-blue-bg,
.blue-bg .dark-blue-bg {
  background-color: var(--dark-blue);
  color: #fff;
  position: relative;
}

.dark-blue-bg h2 {
  color: #fff;
}

.no-bg {
  position: relative;
}

.confirmation-page-desktop #order-summary .option-container {
  margin-top: 0;
  max-width: unset;
}

.dark-blue-bg {
  padding: 4rem 0;
}

.find-us.dark-blue-bg {
  padding: 6rem;
}

.blue-bg .dark-blue-bg {
  padding: 3rem;
}

.dark-blue-bg .subheading {
  font-size: var(--heading2);
  margin-bottom: 2rem;
}
.no-bg .subheading {
  font-size: var(--heading2);
  margin-bottom: 2rem;
  color: var(--dark-blue);
}
.no-bg .subheading-sml, .subheading-sml {
  font-size: var(--heading4);
  margin-bottom: 2rem;
  color: var(--dark-blue);
}

.patch-intro .subheading-sml {
  font-weight: 500;
  margin-bottom: 0;
}

.lessons.no-bg .subheading {
  font-size: var(--heading4);
  margin-left: 1rem;
  margin-right: 1rem;
}

.blue-bg .subheading {
  font-size: var(--heading2);
  margin-bottom: 1rem;
  line-height: 1;
}

.blue-bg h3 {
  margin-bottom: 1rem;
  font-size: var(--heading5);
}

.blue-bg p {
  margin-bottom: 1rem;
  line-height: 1.5;
}

.padded-text {
  padding: 2rem 1rem 0;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  /* height: 44%; */
}

.padded-text ul {
  padding-left: 2rem;
  margin-bottom: 1rem;
  line-height: 1.5;
}

.padded-text h4 {
  margin-bottom: 1rem;
}

.blue-bg .yellow-text {
  margin-bottom: 0;
  color: var(--yellow);
  font-weight: bold;
  font-size: var(--small);
}

.yellow-text {
  margin-bottom: 0;
  color: var(--yellow);
  font-weight: bold;
}

.link-red, .link-white {
  text-decoration: none;
  text-transform: capitalize;
  color: var(--red);
  margin: 1rem 0;
  font-weight: bold;
  display: block;
}

.link-white {
  color: #fff;
}

.link-yellow {
  text-decoration: underline;
  color: var(--yellow);
  font-weight: bold;
}

.link {
  text-decoration: none;
  color: var(--red);
  margin: 1rem 0;
  font-weight: bold;
}

.link:hover, .link:focus {
  text-decoration: underline;
}

.bold-link {
  color: inherit;
  font-weight: bold;
  text-decoration: none;
}

.bold-link:hover, .bold-link:focus {
  text-decoration: underline;
}

.white-bg {
  background-color: #fff;
  padding: 1rem;
  border-radius: 2rem;
  height: 6rem;
}

.grey-blue-bg {
  background-color: var(--grey-blue);
  padding: 3rem;
}

.grey-blue-bg .blue-bg {
  background-color: var(--blue);
  color: #fff;
  padding: 3rem;
  cursor: pointer;
}
.grey-blue-bg .yellow-bg {
  background-color: var(--yellow);
  color: #fff;
  padding: 3rem;
  cursor: pointer;
}

.grey-blue-bg .dark-blue-bg {
  background-color: var(--dark-blue);
  color: #fff;
  padding: 3rem;
  cursor: pointer;
}

.review {
  display: flex;
  flex: 1;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 1rem;
  text-align: center;
  padding: 0 5rem;
}

.review .rating {
  font-size: var(--heading3);
}

.review p {
  font-size: var(--heading6);
}

.review .sml-text {
  font-size: var(--body);
  font-weight: bold;
}

.review-star {
  width: 40px;
}

.address h3,
.find-us a {
  margin-bottom: 2rem;
  font-size: var(--heading5);
}

.find-us .address {
  min-height: 370px;
}

.find-us .address a:last-of-type,
.find-us .btns-container a:last-of-type {
  margin-bottom: 0;
}

.find-us .address h3:last-of-type {
  margin-bottom: 0.5rem;
}

.find-us .address-flex {
  display: flex;
  flex-direction: column;
  flex: 1;
  justify-content: space-between;
}
.find-us .address-flex .address {
  display: flex;
  flex: 1;
  justify-content: space-between;
}

.find-us .btns-container {
  display: flex;
  flex: 1;
  width: 100%;
  justify-content: space-between;
}

.btns-container div:last-of-type {
  width: 600px;
}

.find-us .address-flex .map {
  height: 350px;
  width: 600px;
}

.find-us-address-flex {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.map-flex {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 2rem;
}

#get-directions-mobile {
  display: none;
}
.find-us .address-flex .map iframe {
  height: 100%;
  width: 100%;
  object-fit: cover;
  border-radius: 1rem;
}

.social {
  text-align: center;
  font-size: var(--heading4);
  /* width: 60%; */
  margin: 0 auto;
  padding: 4rem 0 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

.social p {
  margin-bottom: 2rem;
  font-size: var(--heading5);
}

.social-imgs {
  display: flex;
  gap: 2rem;
  padding: 4rem 2rem 4rem 2rem;
  overflow-x: scroll;
  cursor: grab;
  /* user-select: none; /* Prevent text selection */
  /*-webkit-user-drag: none; Prevent dragging images in WebKit browsers */
  width: 100%;
}

.social-imgs:active {
  cursor: grabbing;
}

.social-img {
  flex: 1;
  /* height: calc(20vw - 4rem); */
  min-height: 300px;
  min-width: 300px;
  width: 30%;
}

.social-imgs img {
  height: 100%;
  width: 100%;
  object-fit: cover;
}

/* ===================== CAROUSEL OF EVENTS =================================== */
.info-card {
  border-radius: 20px;
  background-color: var(--blue);
  position: relative;
  z-index: 1;
}

.news-section .info-card {
  background-color: var(--dark-blue);
}

.info-card img {
  width: 100%;
  object-fit: cover;
  object-position: center;
  height: 50%;
  max-height: 275px;
  border-radius: 20px 20px 0 0;
}

.info-card-heading {
  font-size: var(--heading5);
  margin-bottom: 1rem;
  text-transform: capitalize;
  text-align: left;
}

.info-card-info {
  margin-bottom: 1rem;
  font-size: var(--smaller);
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  text-align: left;
}

.upcoming-events-cards-container.news-cards-container .info-card-info {
  -webkit-line-clamp: 3;
}

.upcoming-events-cards-container .info-card .yellow-text {
  color: var(--yellow);
  font-weight: normal;
  text-align: left;
  font-style: normal;
  justify-content: flex-start;
  text-transform: capitalize;
}


.info-card-corner-icon {
  position: absolute;
  top: 0;
  right: 0;
  border-radius: 0 20px 0 20px;
  background-color: var(--red);
  width: 75px;
  height: 50px;
  padding: 1rem;
}

.info-card .info-card-corner-icon img {
  object-fit: contain;
  height: 100%;
}

.info-card-text {
  padding: 2rem;
  height: 50%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: space-between;
  position: relative;
}

.upcoming-events.flex {
  justify-content: space-between;
  align-items: flex-start;
}

.upcoming-events .subheading,
.upcoming-events .link-red {
  margin-bottom: 1rem;
}

.info-card-price {
  background-color: var(--yellow);
  display: flex;
  flex-direction: column;
  padding: 1rem 2rem;
  align-items: center;
  justify-content: center;
  text-align: center;
  top: -35px;
  right: 10px;
  margin-right: 0;
  position: absolute;
  border-radius: 12px;
}

.info-card-price .small {
  font-family: var(--poppins);
  font-weight: 600;
  font-size: var(--heading5);
  line-height: 1;
  text-transform: capitalize;
}
.info-card-price .medium {
  font-family: var(--poppins);
  font-weight: 600;
  font-size: var(--heading4);
  line-height: 1;
  text-transform: capitalize;
}
.info-card-price .large {
  font-family: var(--poppins);
  font-weight: 700;
  font-size: var(--heading2);
  letter-spacing: 2px;
  line-height: 1;
  text-transform: capitalize;
}

.upcoming-events-cards-container .info-card.center {
  margin: auto 6rem;
}

.upcoming-events-cards-container p {
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  width: 100%;
  font-style: italic;
}

.center .slick-slide {
  margin: 0 2rem;
}

.slick-center {
  /* margin: 0 6rem; */
  animation: slickCenter 0.5s ease-in-out;
  transform: scale(1.2);
  position: relative;
  z-index: 1000;
  box-shadow: var(--dark-blue) 5px 5px 5px, var(--dark-blue) -5px 5px 5px,
    var(--dark-blue) 5px -5px 5px, var(--dark-blue) -5px -5px 5px;
}

.slick-center * {
  transform: scale(1);
}

.slick-list {
  padding-top: 8rem !important;
  padding-bottom: 8rem !important;
  z-index: 100 !important;
}

@keyframes slickCenter {
  from {
    transform: scale(1);
  }
  to {
    transform: scale(1.2);
  }
}

.carousel-center-buttons {
  display: flex;
  justify-content: center;
  align-items: center;
}
.prev,
.next {
  cursor: pointer;
  transition-duration: 0.25s;
}
.prev:hover,
.next:hover {
  transform: scale(1.1);
}

.quickbook {
  display: flex;
  width: 100%;
}

.quickbook-dropdowns {
  display: flex;
  width: 100%;
}

.quickbook-btns {
  display: flex;
  flex-direction: row-reverse;
  align-items: flex-end;
  justify-content: flex-end;
  gap: 0.5rem;
  padding: 0 0 1.5rem 1.5rem;
  border-bottom: 1px var(--dark-blue) solid;
  width: 35%;
  min-width: 315px;
  flex: 0;
  position: relative;
}

.career-quickbook-btns {
  min-width: unset;
}

.quickbook-btn {
  display: flex;
  justify-content: center;
  align-items: flex-end;
  min-width: 150px;
  margin-top: 1rem;
}

.quickbook-btns p {
  /* margin-bottom: 0.5rem; */
  opacity: 0.75;
}

.quickbook-option {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: 1rem;
  border-bottom: 1px var(--dark-blue) solid;
  /* border-right: 1px var(--dark-blue) solid; */
  position: relative;
  flex: 1;
}

.search-option {
  flex: 2;
}

.quickbook-option input {
  border: none;
}

.lessons-quickbook .quickbook-option {
  flex: unset;
}

.lessons-quickbook .quickbook-option:first-of-type {
  padding: 1rem 1rem 1rem 0;
  width: 28%;
}
.lessons-quickbook .quickbook-option:nth-of-type(2) {
  width: 20%;
}
.lessons-quickbook .quickbook-option:nth-of-type(3) {
  width: 28%;
}
.lessons-quickbook .quickbook-option:nth-of-type(4) {
  width: 28%;
}
.lessons-quickbook .quickbook-option:nth-of-type(5) {
  width: 25%;
}
/* .lessons-quickbook .quickbook-option:nth-of-type(6) {
  width: 25%;
} */

.quickbook-option:after {
  position: absolute;
  content: "";
  height: 70%;
  width: 1px;
  bottom: 0;
  right: 0;
  background-color: var(--dark-blue);
}

.quickbook-option:nth-child(:last-child):after {
  height: 0;
}
.quickbook-option label,
.quickbook-btns p {
  padding: 0 0.5rem;
  opacity: 0.75;
  font-size: var(--small);
}

.quickbook-placeholder {
  position: relative;
  display: flex;
  align-items: center;
}
.quickbook-placeholder input {
  width: 100%;
  padding: 5px;
}

.quickbook-placeholder span {
  position: absolute;
  color: var(--dark-blue);
  font-weight: bold;
  padding-left: 0.5rem;
}

/* custom select dropdown */
/* The container must be positioned relative: */
.custom-select {
  position: relative;
}

.custom-select select {
  display: none; /*hide original SELECT element: */
}

.select-selected {
  background-color: #fff;
}

.custom-select-dark-theme,
.custom-select-dark-theme .select-selected {
  background-color: var(--dark-blue);
  color: #fff;
  border-radius: 1rem;
  padding-left: 2rem;
}

.checkout .select-selected {
  text-align: left;
  padding-right: 4rem;
  font-size: var(--heading5);
}

.quickbook .select-selected,
.quickbook-option .false-dropdown {
  padding: 0 2.5rem 0 0.5rem;
  font-size: var(--heading6);
}

.false-dropdown-attendees img {
  margin-bottom: -0.25rem;
}
.false-dropdown-attendees img.adult-icon {
  width: 28px;
  height: 28px;
}
.false-dropdown-attendees img.child-icon {
  width: 24px;
  height: 24px;
  margin-left: 1rem;
}
.false-dropdown-attendees img.toddler-icon {
  width: 20px;
  height: 20px;
  margin-left: 0.75rem;
}

.quickbook .select-items div {
  font-size: var(--heading6);
  /* min-width: 180px; */
}

.select-items {
  border-radius: 0 0 1rem 1rem;
}

.select-items div:last-of-type {
  border-radius: 0 0 1rem 1rem;
}

.checkout #result {
  position: relative;
  min-height: 92px;
}

.checkout .calendar-result-container {
  position: relative;
  /* margin-top: 1rem; */
  cursor: pointer;
}

.checkout .public-skate-calendar-result {
  /* width: calc(50% - 0.5rem); */
  width: 180px;
  cursor: pointer;
}

/* Style the arrow inside the select element: */
.select-selected:after {
  position: absolute;
  content: "";
  bottom: 3px;
  right: 10px;
  width: 0;
  height: 0;
  border: 6px solid transparent;
  border-color: #fff transparent transparent transparent;
}
/* Style the arrow inside the select element: */
.select-selected:before {
  position: absolute;
  content: "";
  bottom: 0;
  right: 10px;
  width: 0;
  height: 0;
  border: 6px solid transparent;
  border-color: var(--dark-blue) transparent transparent transparent;
}

.custom-select-register-login {
  margin-top: 1rem;
  height: 54px;
}
.custom-select-register-login .placeholder {
  top: 15px;
}

.custom-select-register-login .select-selected {
  padding: 1.5rem 2rem;
  border-radius: 1rem;
  /* font-size: var(--body); */
  color: var(--label-grey);
  font-weight: normal;
  line-height: 1.25;
  height: 54px;
  font-weight: 600;
  font-size: var(--small);
}
.custom-select-register-login .select-items, .custom-select-register-login .select-items div {
border-radius: 1rem;
}

.custom-select-register-login .select-selected:after {
  bottom: unset;
  top: 20px;
}
/* Style the arrow inside the select element: */
.custom-select-register-login .select-selected:before {
  bottom: unset;
  top: 22px;
}

.custom-select-register-login .select-selected.select-arrow-active:after {
  top: 24px;
}
.custom-select-register-login .select-selected.select-arrow-active:before {
  top: 22px;
}


.gift-voucher-type-container .select-selected:before {
  top: 25px;
  right: 25px;
}

.gift-voucher-type-container .select-selected::after {
  top: 23px;
  right: 25px;
}
/* Point the arrow upwards when the select box is open (active): */
.select-selected.select-arrow-active:after,
.quickbook-option .false-dropdown.select-arrow-active:after {
  border-color: transparent transparent #fff transparent;
  top: 7px;
}

.gift-voucher-type-container .select-selected.select-arrow-active:after {
  top: 15px;
}
.select-selected.select-arrow-active:before,
.quickbook-option .false-dropdown.select-arrow-active:before {
  border-color: transparent transparent var(--dark-blue) transparent;
  /* bottom: 10px; */
  top: 5px;
}
.gift-voucher-type-container .select-selected.select-arrow-active:before {
  top: 13px;
}

#voucher-summary .tickboxes-flex {
  margin-top: 1rem;
}
/* style the items (options), including the selected item: */
.select-items div,
.select-selected,
.quickbook-option .false-dropdown,
.quickbook-option p {
  color: var(--dark-blue);
  padding: 0 0.5rem;
  border: 1px solid transparent;
  /* border-color: transparent transparent var(--dark-blue-alpha) transparent; */
  cursor: pointer;
  background-color: #fff;
  font-size: var(--heading6);
  font-weight: bold;
  font-family: var(--poppins);
}

.select-items div {
  font-weight: normal;
  line-height: 2;
}

.quickbook-option p {
  padding: 0;
  /* font-weight: normal; */
  color: var(--label-grey);
}
.quickbook-option p.faded {
  opacity: 0.5;
  padding: 0 2.5rem 0 0.5rem;
}

.quickbook-option p.output {
  width: 20px;
  text-align: center;
}
.select-items div {
  font-size: var(--body);
  color: var(--label-grey);
  position: relative;
  width: fit-content;
  padding: 0 0.5rem;
}

.quickbook-option .false-dropdown {
  position: relative;
  padding-right: 2.5rem;
}

.quickbook-option .false-dropdown:before {
  position: absolute;
  content: "";
  top: 14px;
  right: 10px;
  width: 0;
  height: 0;
  border: 6px solid transparent;
  border-color: var(--dark-blue) transparent transparent transparent;
}

.quickbook-option .false-dropdown:after {
  position: absolute;
  content: "";
  top: 11px;
  right: 10px;
  width: 0;
  height: 0;
  border: 6px solid transparent;
  border-color: #fff transparent transparent transparent;
}

/* quickbook attendees */
.counter-container {
  display: flex;
  /* gap: 0.5rem; */
  justify-content: center;
  align-items: center;
}

.counter-container img {
  height: 24px;
  width: 24px;
}

.price_clickable {
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  font-weight: bold;
}

.price_clickable:last-of-type {
  margin-bottom: 0;
}
.quickbook .price_clickable span {
  font-size: var(--heading6);
}

.counter-btn {
  display: flex;
  justify-content: center;
  align-items: center;
}

.hide {
  display: none;
}

#gv-schedule-calendar.hide,
#calendar-container.hide {
  display: none;
}

#calendar-container {
  position: absolute;
  top: 85px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 10;
  background-color: #fff;
  border-radius: 2rem;
}

#calendar-container label {
  width: 100%;
  display: block;
  padding: 1rem 1rem 0;
  margin-top: -2rem;
}

.patch-calendar-container {
  margin-bottom: 1rem;
}

#gv-schedule-calendar label {
  margin-left: 5rem;
}
#gv-schedule-calendar {
  margin-bottom: 2rem;
}

@media only screen and (max-width: 1550px) {
  .quickbook .select-selected,
  .quickbook-option .false-dropdown, #monthAndYear {
    font-size: var(--body);
  }

  .public-skate-calendar-result p {
    font-size: var(--body);
  }

  .quickbook .select-items div {
    font-size: var(--body);
  }

  .quickbook .price_clickable span{
    font-size: var(--body);
  }

  #select-attendees {
    min-width: 280px;
  }
}

.gift-voucher-type-container .form-group .select-selected,
.gift-voucher-type-container .form-group .select-items div {
  font-size: var(--small);
  font-weight: normal;
  line-height: 1.35;
  color: var(--label-grey);
}

.gift-voucher-type-container .form-group .select-selected {
  font-weight: 600;
}

.dashboard-select .select-selected {
  background-color: #fff;
}

/* Style items (options): */
.select-items {
  position: absolute;
  background-color: #fff;
  top: 100%;
  left: 0;
  right: 0;
  z-index: 99;
  padding-bottom: 0.5rem;
}

.checkout .select-items {
  border-radius: 2rem;
  position: relative;
}

.session-start-end span{
  position: relative;
}

.select-items div:hover:after,
.same-as-selected:hover:after,
.session-start-end span:hover:after {
  position: absolute;
  content: "";
  width: 100%;
  background-color: var(--red);
  height: 3px;
  left: 0;
  bottom: 0;
  border-radius: 8px; 
}


.session-start-end span:hover:after {
 width: 100%;
}


.disable-option {
  pointer-events: none;
  opacity: 0.75;
  margin-top: 1rem;
}


.checkout .select-items div:hover,
.checkout .same-as-selected {
  background-color: white;
  color: var(--dark-blue);
}

.checkout .select-items div {
  position: relative;
  /* width: fit-content; */
}

.checkout .select-items div:after {
  position: absolute;
  content: "";
  bottom: 0;
  left: 2rem;
  right: 2rem;
  background-color: var(--red);
  height: 4px;
  width: 0;
  transition: all 250ms ease-in-out;
}

.checkout .select-items div:hover {
  color: var(--red);
}
/* .checkout .select-items div:hover:after {
  width: calc(100% - 2rem);
} */

/* Hide the items when the select box is closed: */
.select-hide {
  display: none;
}

/* Create a custom checkbox */

/* Customize the label (the container) */
.checkmark-container {
  display: block;
  position: relative;
  padding-left: 35px;
  /* margin-bottom: 12px; */
  cursor: pointer;
  line-height: 1.5;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  margin: 2rem 0 0;
  color: var(--dark-grey);
  border-radius: 8px;
}

/* Hide the browser's default checkbox */
.checkmark-container input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 0;
  width: 0;
}

.checkmark {
  position: absolute;
  top: 0;
  left: 0;
  height: 20px;
  width: 20px;
  background-color: #e8e8e8;
  border-radius: 8px;
}

/* On mouse-over, add a grey background color */
.checkmark-container:hover input ~ .checkmark {
  background-color: #ccc;
}

/* When the checkbox is checked, add a background */
.checkmark-container input:checked ~ .checkmark {
  background-color: var(--red);
}

/* Create the checkmark/indicator (hidden when not checked) */
.checkmark:after {
  content: "";
  position: absolute;
  display: none;
}

/* Show the checkmark when checked */
.checkmark-container input:checked ~ .checkmark:after {
  display: block;
}

/* Style the checkmark/indicator */
.checkmark-container .checkmark:after {
  left: 6px;
  top: 2.5px;
  width: 5px;
  height: 10px;
  border: solid white;
  border-width: 0 3px 3px 0;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

/* The flip card container - set the width and height to whatever you want. */
.flip-card {
  background-color: transparent;
  perspective: 1000px; /* Remove this if you don't want the 3D effect */
  -webkit-perspective: 1000px;
  cursor: pointer;
  transition-delay: 0.25s;
  /* overflow: hidden; */
}

.flip-card .flex-wide-third {
  transition-delay: 0.25s;
}



.flip-card .rounded-corners, .no-flip-card .rounded-corners {
  border-radius:  2rem;
}

/* This container is needed to position the front and back side */
.flip-card-inner {
  position: relative;
  width: 100%;
  height: 100%;
  text-align: center;
  transition: transform 0.8s ease;
  transition: -webkit-transform 0.8s ease;
  transform-style: preserve-3d;
  -webkit-transform-style: preserve-3d;
}

.flip-card-inner img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.food-and-drink-flips-flex .flip-card-inner img {
  object-fit: cover;
}

/* Do an horizontal flip when you move the mouse over the flip box container */
.flip-card:hover .flip-card-inner {
  transform: rotateY(180deg);
}


.flip-card:hover .flip-card-front .alpha, .flip-card:hover .flip-card-front h3, .flip-card:hover .flip-card-front span {
  opacity: 0;
}

/* Position the front and back side */
.flip-card-front,
.flip-card-back {
  position: absolute;
  width: 100%;
  height: 100%;
  /* visibility: visible; */
  -webkit-backface-visibility: hidden; /* Safari */
  backface-visibility: hidden;
}

.food-and-drink-flips-flex {
  display: flex;
  flex-wrap: wrap;
  gap: 2rem;
}

.flip-card-food-and-drink {
  flex: 1;
  height: 400px;
  min-width: 400px;
}
.flip-card-food-and-drink-wide{
  flex: 2;
  height: 400px;
  min-width: 400px;
}

/* Style the front side (fallback if image is missing) */
.flip-card-front {
  background-color: var(--dark-blue);
  color: #fff;

}

.flip-card-back {
  transform: rotateY(180deg);
}

.alpha {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  z-index: 1;
  border-radius: 2rem;
  background-image: linear-gradient(
    to top,
    var(--dark-blue-alpha-strong),
    transparent
  );
}

/* Style the back side */
.flip-card-back {
  transform: rotateY(180deg);
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  /* padding: 6rem; */
  padding: 1.5rem 2rem;
  text-align: left;
  min-height: 100%;
  height: fit-content;
}

.flip-card-food-and-drink .flip-card-back, .flip-card-food-and-drink-wide .flip-card-back {
  justify-content: flex-end;
}

.flip-card-food-and-drink .flip-card-front h2, .flip-card-food-and-drink-wide .flip-card-front h2 {
  position: absolute;
  bottom: 2.5rem;
  left: 2rem;
  color: #fff;
  z-index: 100;
  transition-delay: 0.25s;
}

.flip-card-food-and-drink:hover .flip-card-front .alpha, .flip-card-food-and-drink:hover .flip-card-front h2, .flip-card-food-and-drink-wide:hover .flip-card-front .alpha, .flip-card-food-and-drink-wide:hover .flip-card-front h2 {
  opacity: 0;
}

.flip-card-food-and-drink .flip-card-front .alpha, .flip-card-food-and-drink-wide .flip-card-front .alpha  {
  height: 20%;
  top: unset;
  border-radius: 0 0 2rem 2rem;
} 

.flip-card-back h2 {
  margin-bottom: 1rem;
  color: #fff;
}
.flip-card-back small {
  /* position: absolute; */
  /* bottom: 2rem; */
  /* right: 4rem; */
  font-size: var(--smaller);
  max-width: 300px;
  line-height: 1;
  display: block;
  margin-top: 2rem;
}

.flip-card-back-dark-blue {
  background-color: var(--dark-blue);
  color: white;
}
.flip-card-back-blue {
  background-color: var(--blue);
  color: white;
}
.flip-card-back-yellow {
  background-color: var(--yellow);
  color: white;
}

.flip-card-front h3 {
  position: absolute;
  bottom: 5.5rem;
  left: 2rem;
  font-size: var(--heading4);
  color: #fff;
  font-weight: bold;
  font-family: var(--poppins);
  margin-bottom: 0;
  z-index: 2;
  text-align: left;
}

.flip-card-front span {
  position: absolute;
  bottom: 1rem;
  left: 2rem;
  font-size: var(--body);
  color: white;
  font-weight: bold;
  font-family: var(--poppins);
  margin-bottom: 0;
  z-index: 2;
}

.dont-miss .gift-voucher {
  /* background-image: url("../images/Gift-Box-Image.png"); */
  background-color: var(--dark-blue);
  /* background-position: top;
  background-size: contain;
  background-repeat: no-repeat; */
}
.dont-miss .gift-voucher .padded-text {
  height: 42%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  margin-top: 101%;
  padding: 3rem;
}
.dont-miss .white-bg {
  padding: 0;
}

.dont-miss .white-bg img {
  height: 100%;
  width: 100%;
  object-fit: cover;
}

.dont-miss .blue-bg .dark-blue-bg {
  padding: 0;
}

.book-now-mobile {
  display: none;
}

.dont-miss-mobile {
  display: none;
}

/* FILTER SECTION */
.filter-container {
  position: relative;
}

.filter-options {
  display: none;
  position: absolute;
  top: 52px;
  background-color: var(--blue);
  border-radius: 2rem;
  padding: 1rem;
  z-index: 200;
  width: 100%;
}

.filter-options.show {
  display: block;
}

.filter-options form div {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

.filter-options .checkmark-container {
  margin: 0;
  color: #fff;
}

/* ------------ SCROLL BARS START ----------------------------------------- */

.upcoming-events-cards-container::-webkit-scrollbar {
  height: 2rem;
}
.upcoming-events-cards-container::-webkit-scrollbar-thumb {
  background-color: var(--red);
  border-radius: 50px;
}
.upcoming-events-cards-container::-webkit-scrollbar-thumb:hover {
  background-color: var(--red);
}

.upcoming-events-cards-container::-webkit-scrollbar-track {
  background-color: var(--red-25);
  border-radius: 50px;
}

.upcoming-events-cards-container::-webkit-scrollbar-track {
  margin-left: 250px;
  margin-right: 250px;
}
/* Optional: Styling the scrollbar for better visibility */
.skate-cards-container::-webkit-scrollbar {
  height: 1rem;
}
.skate-cards-container::-webkit-scrollbar-track {
  margin-top: 10px;
}

.skate-cards-container::-webkit-scrollbar-thumb {
  background-color: var(--red);
  border-radius: 4px; /* Rounded corners */
}

.skate-cards-container::-webkit-scrollbar-track {
  background-color: var(--dark-blue-alpha-strong);
}

.social-imgs::-webkit-scrollbar {
  opacity: 0;
}

/* ------------ SCROLL BARS END ----------------------------------------- */

.upcoming-events-cards-container {
  position: relative;
  display: flex;
  overflow-x: scroll;
  overflow-y: hidden;
  z-index: 2;
  height: 650px;
  padding: 0 150px 0 6rem;
}

/* .upcoming-events-cards-container::before {
  position: absolute;
  content: "";
  height: 10px;
  width: 50px;
  background-color: var(--dark-blue);
  left: 0;
  bottom: 0;
}
.upcoming-events-cards-container::after {
  position: absolute;
  content: "";
  height: 10px;
  width: 50px;
  background-color: var(--dark-blue);
  right: 0;
  bottom: 0;
} */

.upcoming-events-cards-container .info-card {
  min-width: 320px;
  width: 320px;
  margin: auto 3rem;
  height: 475px;
}

/* SKATING PAGES */
.lessons {
  display: flex;
  flex-wrap: wrap;
}

.public-sessions .skate-cards-container {
  flex-wrap: wrap;
  justify-content: center;
}

.lesson-category {
  display: flex;
  flex-direction: column;
}

.lesson-category h2 {
  display: inline-block;
  color: var(--dark-blue);
}

.ice-skating-lessons {
  width: 100%;
}

.ice-skating-lessons .skate-card .red-btn {
  margin-top: auto;
}
/* 
.three-or-five {
  width: 66%;
} */

/* 

.hockey-lessons {
  width: 33%;
} */

.skate-cards-container {
  display: flex;
  flex-wrap: wrap;
  gap: 2rem;
  margin: 0 1rem 4rem;
}

.public-sessions .skate-cards-container {
  margin: 0;
}
.skate-card {
  position: relative;
  display: flex;
  flex-direction: column;
  /* flex: 1; */
  padding: 2rem;
  max-width: 500px;
  min-width: 300px;
  /* width: 31%; */
  width: calc(((1600px - 14rem) / 3));
}

.skate-card.blue-bg, .skate-card.dark-blue-bg {
  color: #fff;
  padding: 1.5rem;
  border-radius: 2rem;
  width: calc(50% - 1rem);
}
.skate-card.dark-blue-bg {
  background-color: var(--dark-blue);
  min-width: 400px;
  max-width: 400px;
}
.skate-card.blue-bg {
  background-color: var(--blue);
}
.skate-card.blue-bg .skate-card-text {
margin-bottom: 1rem;
}
.skate-card.blue-bg .img-container  {
  height: 200px;
}
.skate-card.skate-card-tall {
  display: flex;
}
.skate-card.skate-card-tall .img-container  {
  height: 265px;
}
.skate-card.skate-card-tall .img-container img {
  object-position: center;
}
.skate-card.skate-card-tall p, .skate-card.skate-card-tall h3 {
  margin-bottom: 1rem;
}

.skate-card.skate-card-tall p:first-of-type, .skate-card.skate-card-tall h3 {
  text-align: center;
}

.skate-card.skate-card-tall .skate-card-heading {
  justify-content: center;
  font-size: var(--heading5)
}

.skate-card.blue-bg .img-container img {
  border-radius: 1.5rem;
  object-position: center 37%;
}

.events .skate-card {
  width: 31.5%;
  min-width: unset;
}

.gift-vouchers .skate-card {
  /* min-width: 380px; */
  width: calc(((1600px - 18rem) / 3));
}

@media only screen and (max-width: 1600px) {
  .gift-vouchers .skate-card {
    width: calc((100% - 6rem) / 3);
  }
}

.gift-voucher-description p {
  margin-bottom: 1rem;
}
.gift-voucher-description,
.gift-voucher-image {
  width: 50%;
}
.gift-voucher-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.skate-card.skate-card-public {
  flex: unset;
  flex-basis: calc((100% - 4rem) / 3);
  min-width: unset;
}

.news-container .skate-card.skate-card-public {
  min-width: 300px;
}

.skate-card.dark-bg {
  background-color: var(--dark-blue);
  color: #fff;
}

.skate-card .lesson-text {
  padding-top: 2.5rem;
  position: relative;
}

.skate-card.skate-card-tall {
  background-color: var(--holiday);
  color: var(--dark-blue);
  border-radius: 2rem;
  padding: 1.5rem;
  width: 100%;
  height: 100%;
}

.book-now-notice {
  font-size: var(--body);
}

.skate-card-tall .img-container img {
  border-radius: 1.5rem;
}

.skate-card-tall .lesson-text {
  padding-top: 2rem;
}

.skate-card-heading {
  display: flex;
  align-items: center;
  gap: 1rem
}

.skate-card-heading img {
  width: 28px;
  height: 28px;
}
.gift-vouchers .skate-card .lesson-text {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  /* height: 100%; */
  height: 65%;
}

.skate-card .lesson-text .info-card-price {
  position: absolute;
  background-color: var(--red);
  color: #fff;
  width: 120px;
  padding: 0.5rem;
  /* top: -60px; */
  top: -74px;
}

.skate-card .lesson-text .info-card-price.info-card-price-left {
  left: -40px;
  background-color: unset;
  width: unset;
  top: -80px;
  width: 150px;
}

.skate-card.blue-bg .lesson-text .info-card-price {
  top: -70px;
}


.skate-card-tall .lesson-text .info-card-price {
  top: -80px;
  background-color: unset;
  width: unset;
  right: -40px;
  height: 150px;
  width: 150px;
  display: block;
}
.skate-card-tall .lesson-text .info-card-price img{
  height: 100%;
  width: 100%;
}

.skate-card .lesson-text .info-card-price * {
  margin-bottom: 0;
}
.skate-card .lesson-text .info-card-price .small {
  font-size: var(--smaller);
}
.skate-card .lesson-text .info-card-price .large {
  font-size: var(--heading3);
  letter-spacing: 0;
}

.skate-card .lesson-text p span {
  display: block;
  margin-bottom: 0;
}

.skate-card .lesson-text .bold {
  font-weight: bold;
}

.skate-card .lesson-text * {
  margin-bottom: 0.5rem;
}
.skate-card .lesson-text h4,.skate-card .lesson-text li {
  margin-bottom: 0;
  font-weight: 400;
}

.skate-card .lesson-text li {
  line-height: 1.25;
}

.skate-card .lesson-text h4 span {
  display: block;
  margin-bottom: 0;
}

.skate-card .lesson-text ul {
  margin-left: 2rem;
}


.skate-card .lesson-text .blue-bg {
  margin-bottom: 1rem;
}

.skate-card .lesson-text p:last-child {
  margin-bottom: 0;
}

.skate-card .lesson-text em {
  font-size: var(--small);
  /* color: var(--red); */
}

.skate-card .lesson-text a {
  margin-bottom: 0;
}

.skate-card .lesson-text .blue-bg {
  padding: 1rem;
  background-color: var(--blue);
  border-radius: 1rem;
  font-size: var(--small);
  font-weight: bold;
}

.skate-card .lesson-text .blue-bg * {
  margin-bottom: 0;
}

.skate-card .lesson-text .blue-bg .sml {
  font-size: var(--smaller);
  font-weight: 400;
}

.skate-card .img-container {
  height: 60%;
}

.lessons .skate-card .img-container {
  height: 280px;
}

/* .lessons .skate-card {
  height: 92%;
} */

.lessons .skate-card .red-btn {
  margin-top: auto;
}

.gift-vouchers .skate-card .img-container, .skate-card.skate-card-public .img-container {
  height: 300px;
}

.skate-card.skate-card-product .img-container {
  height: 265px;
}

.skate-card.skate-card-product.blue-bg {
  justify-content: space-between;
  flex-basis: calc(((100vw - 24rem) / 3));
  max-width: 480px;
}

.skate-card.skate-card-event .img-container {
  height: unset;
  max-height: 200px;
}

.skate-card .img-container img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: top;

}

.lessons .skate-card .img-container img {
  object-position: center;
}
.gift-vouchers .skate-card .img-container img {
  height: 300px;
}


.skate-card-event .img-container img {
  object-position: center;
}

.marker {
  position: absolute;
  top: 0;
  right: 15%;
  height: 100px;
  width: 80px;
  background-color: var(--red);
  clip-path: polygon(0 100%, 50% 70%, 100% 100%, 100% 0, 0 0);
  text-align: center;
  font-weight: bold;
  padding-top: 2rem;
  line-height: 1;
}

.s-and-s, .ice-skating-ads {
  color: #fff;
  position: relative;
  overflow: hidden;
}
.s-and-s {
  height: 720px;
  background-color: var(--blue);
}

.ice-skating-ads {
  height: 800px;
}

.ice-skating-ads .ad-container {
  height: 100%; 
  width: 100%; 
  display: flex; 
  justify-content: center; 
  align-items: center; 
  gap: 0.5rem
}
.ice-skating-ads .ad-container .ad {
  height: 100%;
  overflow: hidden;
  border-radius: 4rem;
}
/* .ad .img-1 {
   padding: 0.5rem;
} */

.ad:hover .img-1 {
  transform: scale(1);
}

.s-and-s .container {
  position: relative;
}

.s-and-s-circle-1 img,
.s-and-s-circle-2 img {
  object-fit: cover;
  height: 100%;
  width: 100%;
}

.s-and-s-circle-1 {
  position: absolute;
  z-index: 1;
  top: -20%;
  left: -25%;
}
.s-and-s-circle-2 {
  position: absolute;
  z-index: 1;
  right: -20%;
  bottom: -15%;
}

.s-and-s-images {
  position: absolute;
  top: 4rem;
  left: 0;
  right: 0;
  bottom: 250px;
  display: flex;
  gap: 2rem;
  z-index: 2;
}

.s-and-s-tall-imgs {
  flex: 1;
  display: flex;
  gap: 2rem;
}
.s-and-s-wide-img {
  flex: 1;
  height: 85%;
}
.s-and-s-tall-img {
  flex: 1;
}

.s-and-s-wide-img img,
.s-and-s-tall-img img {
  object-fit: cover;
  width: 100%;
  height: 100%;
  border-radius: 2rem;
}

.quiz,
.blue-center {
  background-color: var(--blue);
  color: #fff;
  width: fit-content;
  padding: 2rem 4rem;
  text-transform: capitalize;
  border-radius: 2rem;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
}

.quiz {
  flex-direction: column;
}

.blue-center {
  gap: 2rem;
}

a.blue-center {
  text-decoration: none;
  transition: 250ms ease;
}
a.blue-center:hover,
a.blue-center:focus {
  background-color: var(--red);
}

.quiz h3,
.blue-center h3 {
  font-size: var(--heading4);
  text-align: center;
}
.quiz h3 {
  margin-bottom: 1rem;
}

.quiz-modal-bg {
  position: fixed;
  width: 100%;
  padding: 10px;
  background: rgba(255, 255, 255, 0.5);
  backdrop-filter: blur(5px);
  z-index: 100;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}

.quiz-modal h2,
.quiz-results-modal h2 {
  color: white;
  font-size: var(--heading2);
  font-weight: bold;
  position: relative;
  margin: 0 auto 2rem;
  width: fit-content;
}
.quiz-results-modal h2 {
  margin-bottom: 0;
}

.quiz-modal,
.quiz-results-modal {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 2;
  text-align: center;
  display: flex;
  flex-direction: column;
  /* justify-content: center; */
  justify-content: flex-start;
  align-items: center;
  gap: 1rem;
  width: 100%;
}

.quiz-results-modal {
  top: 0;
  transform: translate(-50%, 0);
  height: 100%;
  overflow-y: scroll;
}

.quiz-results-modal.hidden,
.quiz-modal.hidden {
  display: none;
}

.quiz-modal-inner,
.quiz-results-inner {
  color: white;
  padding: 4rem 3rem 3rem;
  background-color: var(--blue);
  border-radius: 1rem;
  /* width: 100%; */
  width: 95%;
  /* max-width: 500px; */
  max-width: 1200px;
}

.quiz-modal-inner {
  position: relative;
}

.quiz-results-inner {
  position: absolute;
  background-color: transparent;
  /* top: 0; */
  /* left: 0; */
  /* right: 0; */
  /* bottom: 0; */
  padding: 20px;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  gap: 1rem;
  overflow-x: auto;
  min-height: 420px;
  max-width: 100vw;
}

.quiz-results-inner-result {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: flex-start;
  gap: 1rem;
}

.quiz-results-inner-heading {
  width: 33%;
  max-width: 500px;
}

.quiz-result-card {
  display: flex;
  flex-direction: column;
  justify-content: space-evenly;
  align-items: center;
  height: fit-content;
  /* width: 33%; */
  flex: 1;
  max-width: 500px;
  padding: 1rem;
  background-color: var(--blue);
  border-radius: 1rem;
}

.quiz-results-inner h3 {
  font-size: var(--heading4);
}
#quiz-question {
  font-size: var(--heading5);
  margin-bottom: 1rem;
}

#question-number {
  font-size: var(--heading5);
}

.planet-quiz-text-and-buttons {
  display: flex; 
  flex-direction: column; 
  width: 100%; 
  margin-top: 75px;
}

#quiz-answers {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.quiz-result-img {
  border-radius: 2rem;
  width: 100%;
  max-width: 300px;
  margin: 1rem auto;
}

#close-btn {
  border: none;
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  /* top: 1rem;
  right: 1rem; */
  top: 0;
  right: 0;
  cursor: pointer;
  transition: all 250ms ease-in-out;
  z-index: 100;
  width: 50px;
}

#close-btn:hover {
  transform: scale(1.1);
}

#close-btn img {
  width: 100%;
  height: 100%;
}

#next-btn,
.answer-btn {
  color: #fff;
  font-size: var(--heading5);
  border: solid #fff 3px;
  border-radius: 1rem;
  transition: all 250ms ease-in-out;
  padding: 1rem 2rem;
  text-align: center;
  cursor: pointer;
  display: flex;
  justify-content: center;
  align-content: center;
  width: 100%;
  max-width: 800px;
  margin: 0 auto;
}

#next-btn {
  margin-top: 1rem;
  background-color: var(--red);
}

.answer-btn {
  background-color: transparent;
}

#quiz-error {
  color: var(--red);
  margin-top: 1rem;
}

.answer-btn:hover {
  background-color: #fff;
  color: var(--blue);
}

#next-btn:hover {
  background-color: var(--red-50);
}

.selected-answer {
  background-color: #fff;
  color: var(--blue);
}

.penguin-card-bg {
  background: linear-gradient(
      var(--dark-blue-alpha-strong),
      var(--dark-blue-alpha-strong)
    ),
    url("../images/ice-penguin-2019.jpg");
}

.quiz-result-card p {
  margin-bottom: 1rem;
}

.result-card {
  padding: 1rem;
  display: flex;
  flex-direction: column;
  /* align-items: center; */
  gap: 1rem;
}

.result-card ul {
  text-align: left;
  margin-left: 4rem;
}
.result-card .red-btn {
  align-self: center;
}

.s-and-s .container {
  height: 100%;
  display: flex;
  align-items: flex-end;
}

.s-and-s .details {
  position: absolute;
  left: 0;
  right: 0;
  top: 425px;
  bottom: 4rem;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 2rem;
}
.s-and-s h2 {
  font-size: var(--heading0025);
  flex: 1;
  line-height: 1;
}

.s-and-s .details-text {
  flex: 1;
}

.s-and-s .details-text p {
  margin-bottom: 1rem;
  max-width: 500px;
}

.desktop-lessons {
  display: flex;
  gap: 1rem;
  /* align-items: baseline; */
  align-items: stretch;
  justify-content: center;
}
.mobile-lessons {
  display: none;
}

.skate-card-book-btn-flex {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  margin-top: auto;
}

.skate-card-link {
  margin: auto 0 0;
}

.register-interest-link {
  margin: auto 0 2rem;
  text-align: left;
  display: block;
  position: relative;
  width: fit-content;
  bottom: 0;
}
.register-interest-link:hover:after {
  content: "";
  position: absolute;
  width: 100%;
  background-color: var(--red);
  height: 2.5px;
  left: 0;
  bottom: -2px;
  border-radius: 5px

}

/* CHECKOUT PAGE */

.checkout {
  background-color: var(--off-white);
  min-height: 65.5vh;
}

.checkout-stage-icons {
  display: flex;
  align-items: center;
  gap: 1rem;
  margin-left: 2rem;
}

.checkout-stage-icons img {
  height: 40px;
  width: 40px;
  height: 100%;
  width: 100%;
  border-radius: 1rem;
  object-fit: contain;
}

.checkout-stage-icon {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 40px;
  width: 40px;
  border-radius: 8px;
  font-size: var(--heading5);
  color: var(--red);
  font-weight: bold;
  /* background-color: #fff; */
  cursor: pointer;
}

/* .checkout-stage-icon.active {
  background-color: var(--red);
  color: #fff;
} */

.checkout h1 {
  font-size: var(--heading1);
  color: var(--dark-blue);
}

.checkout-choose-activity {
  display: flex;
  gap: 2rem;
  flex-wrap: wrap;
  width: 100%;
}

.checkout .activity {
  cursor: pointer;
}

.checkout-activity-img-container {
  height: 200px;
  border-radius: 2rem;
  overflow: hidden;
  transition: transform 350ms ease-in-out;
}

.checkout .activity {
  width: calc(50% - 2rem);
  position: relative;
}
.checkout .activity .checkout-activity-img-container img {
  border-radius: 3rem;
}

#order-summary .option-container.confirmation-img {
  padding: 0; 
  border-radius: 2rem;
  height: 250px;
}

.confirmation-page-desktop {
  display: block;
}

.confirmation-page-desktop .summary-details-inner-flex p, .confirmation-page-mobile .summary-details-inner-flex p,
.confirmation-page-desktop .basket-session-detail p, .confirmation-page-mobile .basket-session-detail p {
  line-height: 1.25;
}

.confirmation-page-desktop .basket-session-detail, .confirmation-page-mobile .basket-session-detail {
  margin: 1rem 0;
}

.confirmation-page-mobile {
  display: none;
}

.activity-alpha {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  background-image: linear-gradient(
    to top,
    rgba(0, 0, 0, 1) 0%,
    rgba(0, 0, 0, 0.775) 15%,
    rgba(0, 0, 0, 0.62) 25%,
    rgba(0, 0, 0, 0.4) 40%,
    rgba(0, 0, 0, 0.1) 60%,
    rgba(0, 0, 0, 0) 75.5%,
    rgba(0, 0, 0, 0) 82.85%,
    rgba(0, 0, 0, 0) 88%,
    rgba(0, 0, 0, 0) 100%
  );
  border-radius: 2.5rem;
}
.activity-alpha.activity-alpha-bordered {
  position: absolute;
  top: 4px;
  left: 4px;
  bottom: 4px;
  right: 4px;
}

.checkout .activity p {
  position: absolute;
  left: 1.5rem;
  bottom: 0.5rem;
  color: #fff;
  z-index: 2;
}

.checkout .checkout-activity-img-container img.border {
  border: var(--red) 4px solid;
  transform: scale(1);
}


.checkout-activity-img-container img {
  height: 80%;
  width: 100%;
  object-fit: cover;
  border-radius: 2rem;
  transform: scale(1.05);
  transition: transform 250ms ease-in-out;
}

.checkout .activity:hover .checkout-activity-img-container img {
  transform: scale(1);
}

.checkout-and-basket {
  display: flex;
  gap: 3rem;
}

.checkout-options-section {
  flex: 2;
  display: flex;
  flex-direction: column;
  gap: 2rem;
}
.basket-section {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  margin-top: 40px;
}

.basket {
  padding: 3rem;
  background-color: #fff;
  border-radius: 2rem;
  position: relative;
}

.basket-sessions {
  margin: 1rem 0;
}

.basket-session-detail {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  color: var(--label-grey)
}

#basket-attendees-label {
  display: none;
}

.basket-label {
  color: var(--blue);
  font-size: var(--body);
}

.total-selected {
  justify-content: space-between;
  width: 100%;
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-line-clamp: 2;
}

#voucher-summary .basket-label {
  margin-top: 1rem;
}

#confirm-gift-voucher {
  margin-top: 2rem;
  margin-bottom: 2rem;
}

.patch-basket-session {
  position: relative;
  /* border: 2px solid var(--blue); */
  border-radius: 8px;
  margin-bottom: 0.5rem;
  padding: 1rem;
}

.patch-basket-session:after {
  position: absolute;
  content: '';
  height: 2px;
  background-color: var(--red);
  bottom: -5px;
  width: 100%;
  left: 0;
  right: 0;
}


.basket-section .patch-basket-session img {
  width: 24px;
  height: 24px;
  position: absolute;
  top: 50%;
  right: 1rem;
  transform: translateY(-50%);
  cursor: pointer;
}

.basket p {
  color: var(--label-grey);
}


.total-people {
  margin: 2rem 0 1.5rem;
}
.basket .total-people {
  margin: 0;
}

/* .basket span {
  position: absolute;
  top: 1rem;
  right: 2rem;
  cursor: pointer;
  color: var(--red);
} */

.basket .confirm-checkbox span {
  position: static;
  color: var(--label-grey)
}

.basket .confirm-checkbox, .basket .confirm-checkbox span {
  font-size: var(--small);
}

.basket h3 {
  color: var(--label-grey);
  font-weight: normal;
  font-size: var(--body);
  line-height: 1.75;
}
.basket .dark-blue-text{
  color: var(--dark-blue);
  font-weight: bold;
  line-height: 1.75;
  font-size: var(--heading5);
}

#basket-activity {
  margin-top: 1rem;
}

.ice-card-benefits {
  background-color: var(--blue);
  border-radius: 2rem;
  padding: 2rem;
  color: #fff;
  text-align: center;
  margin-top: 1rem;
  display: none;
}

.ice-card-benefits .white {
  background-color: #fff;
  color: var(--dark-blue);
  font-weight: bold;
  text-align: center;
  padding: 0.5rem;
  border-radius: 1rem;
  margin: 0.5rem 0;
}

.ice-card-benefits .small-print {
  font-size: var(--smaller);
}


.basket-section img {
  width: 100%;
  /* height: 100%; */
  object-fit: cover;
  /* border-radius: 2rem; */
}
.basket-section .basket-section-icon {
  width: 20px;
  height: 20px;
}

.basket-session-detail .basket-section-icon {
  width: 20px;
  height: 20px;
}

.checkout .option-container, #voucher-summary .option-container, #order-summary .option-container, .food-and-drink-select-location.option-container {
  /* background-color: #fff; */
  /* padding: 1rem; */
  border-radius: 1rem;
  display: block;
}

.checkout .option-container-options,
.checkout-choose-attendees,
.option-container-options {
  background-color: #fff;
  padding: 1rem 2rem;
  border-radius: 1rem;
  border-radius: 2rem;
  line-height: 2;
  color: #333;
}

#voucher-summary .option-container, #order-summary .option-container, .food-and-drink-select-location.option-container {
  background-color: #fff;
  padding: 1rem 2rem;
  border-radius: 1rem;
  line-height: 2;
  width: 100%;
  max-width: 600px;
  margin-top: 2rem;
}

#voucher-summary .option-container.option-container-wide, #order-summary .option-container.option-container-wide {
  max-width: unset;
}

.padding {
  padding: 12px
}
.form-line {
  width: 100%;
  padding: 2px;
  background-color: var(--red);
  border-radius: 4px;
  margin: 1rem 0;
}

.summary-details {
  color: var(--label-grey);
  font-size: var(--heading5);
  line-height: 1.75;
}

.summary-details-flex {
  display: flex;
  gap: 1rem;
  justify-content: flex-start;
  align-items: flex-start;
}

.summary-label {
  font-weight: bold;
  color: var(--label-grey);
  line-height: 1;
}

.summary-details-flex img {
  width: 24px;
  margin-top: 6px;
  /* transform: scale(2); */
}

.summary-details-inner-flex {
  display: flex;
  justify-content: space-between;
  width: 100%;
}

.summary h2, .career-heading, .career-subheading {
  color: var(--dark-blue);
  font-size: var(--heading4);
}

.checkout-heading {
  font-size: 3rem;
}

.checkout-choose-attendees label {
  display: flex;
  align-items: center;
  font-size: var(--body);
  cursor: pointer;
}
.checkout-choose-attendees label input {
  margin-right: 0.5rem;
  accent-color: var(--red);
}




.option-container-options p {
  width: fit-content;
  position: relative;
  cursor: pointer;
}
.option-container-options p:after {
  position: absolute;
  content: "";
  width: 0;
  bottom: 0;
  left: 0;
  border-radius: 8px;
  background-color: var(--red);
  height: 4px;
}
.option-container-options p:hover:after,
.option-container-options p.active:after {
  width: 100%;
}

.summary-page .option-container-options p{
  position: static;
  cursor: default;
  line-height: 1.5;
}
.summary-page .option-container-options p:hover:after{
  width: 0;
  cursor: default;
}

.summary-page h1 {
  color: var(--dark-blue);
}

.policy-page p, .policy-page h1 {
  margin-bottom: 2rem;
}

.policy-page h3, .policy-page h4, .policy-page b {
  color: var(--dark-blue)
}

.option-container.hidden,
.checkout-choose-activity.hidden,
#cal-container.hidden,
.quiz-modal-bg.hidden,
.quiz-results-inner.hidden,
#attendees-container.hidden,
#extras-container.hidden,
#f-and-d-extras-container.hidden,
#details-container.hidden {
  display: none;
}

#checkout-location {
  position: relative;
}

.checkout .option {
  display: flex;
  text-align: left;
  justify-content: flex-start;
  align-items: center;
  font-weight: bold;
  color: var(--dark-blue);
  font-size: var(--heading5);
  cursor: pointer;
  position: relative;
  padding: 0.5rem 2rem;
  gap: 0.5rem;
  /* margin-bottom: 0.5rem; */
}

/* Style the arrow inside the select element:
.checkout .option:after {
  position: absolute;
  content: "";
  top: 12px;
  right: 10px;
  width: 0;
  height: 0;
  border: 6px solid transparent;
  border-color: #fff transparent transparent transparent;
}
/* Style the arrow inside the select element: */
/* .checkout .option:before {
  position: absolute;
  content: "";
  top: 14px;
  right: 10px;
  width: 0;
  height: 0;
  border: 6px solid transparent;
  border-color: var(--dark-blue) transparent transparent transparent;
} */

/* Point the arrow upwards when the select box is open (active): */
.checkout .option.chevron-active:after {
  border-color: transparent transparent #fff transparent;
  top: 7px;
}
.checkout .option.chevron-active:before {
  border-color: transparent transparent var(--dark-blue) transparent;
  top: 5px;
}

.checkout-icon {
  height: 32px;
  width: 32px;
}

.checkout-attendees {
  display: flex;
  flex-direction: column;
}

.checkout-attendees-row {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  /* align-items: center; */
  font-size: var(--heading5);
  line-height: 2;
  border-radius: 1rem;
  padding: 1rem 0;
}

#attendees-container .checkout-attendees-row {
  flex-direction: row;
}

.checkout-choose-birthday-extras {
  display: flex;
  flex-wrap: wrap;
  gap: 2rem;
}

.checkout-choose-birthday-extras .checkout-attendees-row {
  width: 31%;
}

.extra-flex {
  display: flex;
  gap: 2.5rem;
  justify-content: flex-start;
  align-items: flex-start;
}

.f-and-d-extra-flex {
  flex-direction: column;
  width: 100%;
  gap: 0.5rem;
}

#f-and-d-extras-container .attendee-options-extras, .container-sq-extras {
  display: flex;
  flex-wrap: wrap;
  gap: 2rem;
}
#f-and-d-extras-container .checkout-attendees-row {
  width: 22%;
}

.sq-checkout-attendees-row {
  width: 31%;
}

#f-and-d-extras-container .extra-flex-icon-bg-blue, #f-and-d-extras-container .extra-flex-icon-bg{
  width: 100%;
  height: unset;
}

#extras-container .extra-flex-icon-bg-blue {
  width: 100%;
  height: 150px;
}

.f-and-d-extra-flex .extra-flex-details .f-and-d-extra-flex-title {
  text-align: center;
  order: 1;
  font-weight: bold;
  line-height: 1.25;
  margin-bottom: 1rem;
}

.checkout-choose-birthday-extras .checkout-attendees-row .f-and-d-extra-flex-title {
  color: #555;
  font-weight: 600;
  margin-bottom: 0;
  order: 1;
  line-height: 1.25;
  text-align: center;
}

.checkout-attendees-controls {
  order: 1;
  margin-top: 1rem;
}

.f-and-d-extra-flex .checkout-attendees-controls {
  text-align: center;
  justify-content: center;
  order: 3;
  margin-top: 1rem;
}

#f-and-d-extras-container p, .extra-flex.f-and-d-extra-flex p {
  order: 2;
  margin-top: 0;
  font-size: var(--small);
}

#f-and-d-extras-container .extra-flex-details p {
  line-height: 1.25;
}


.birthdays-extra-flex {
  flex-direction: column;
  justify-content: unset;
  align-items: unset;
  gap: 0.5rem;
}

.extra-flex-icon-bg-white {
  background-color: #fff;
  padding: 0.5rem;
  border-radius: 1rem;
}
.extra-flex-icon-bg-blue {
  background-color: var(--blue);
  padding: 0.5rem;
  border-radius: 1rem;
}
.extra-flex-icon-bg {
  padding: 0.5rem;
  border-radius: 1rem;
}

.extra-flex-icon-bg-white,
.extra-flex-icon-bg-blue,
.extra-flex-icon-bg  {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 2rem;
}

.extra-flex-icon-bg-white {
  min-width: 150px;
  flex: 0.5;
}

.extra-flex-icon-bg {
  padding: 0;
}

.extra-flex-img-container-birthday {
  display: flex;
  /* flex: 0.5; */
  justify-content: center;
  align-items: center;
  border-radius: 1rem;
}
.extra-flex-img-container-birthday img {
  width: 100%;
  height: 100%;
  border-radius: 1rem;
}

.extra-flex-icon-bg-white img,
.extra-flex-icon-bg-blue img,
.extra-flex-icon-bg img {
  width: 100%;
  height: 100%;
  border-radius: 0.5rem;
  object-fit: cover;
}



.extra-flex-details {
  display: flex;
  /* flex: 2.5; */
  flex-direction: column;
  width: 100%;
}

.checkout-attendees-row-dark .extra-flex-details {
  flex: 2.5;
}

.birthdays-extra-flex .extra-flex-details {
  /* justify-content: space-around; */
  text-align: center;
  justify-content: center;
  gap: 1rem;
  flex-direction: column-reverse;
}

.extra-flex-details p,
.extra-flex-details span {
  line-height: 1.5;
}

.extra-flex-details span:first-of-type,
.attendee-number,
.extra-number {
  font-weight: 500;
  color: #555;
}

.extra-flex-details span.red-text {
  color: var(--red);
  font-weight: 400;
  font-size: var(--smaller);
  display: block;
}

.extra-flex-details p {
  color: #555;
}

.checkout-attendees-row-dark .extra-flex-details span:first-of-type,
.checkout-attendees-row-dark .extra-flex-details p,
.checkout-attendees-row-dark .attendee-number {
  color: #fff;
}
.checkout-attendees-row-dark .note {
  background-color: var(--red);
  color: #fff;
  font-size: var(--small);
  margin-right: -2rem;
  padding: 0 1rem;
  font-weight: bold;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 1rem 0 0 1rem;
  width: fit-content;
}

.checkout-attendees-heading {
  display: flex; 
  justify-content: space-between; 
  margin-bottom: 1rem;
}

.confirm-checkbox-container {
  padding: 0 1.5rem; 
  
}
.confirm-checkbox-container-red {
  background-color: var(--red);

}
.confirm-checkbox-container-dark-blue {
  background-color: var(--dark-blue);

}

.confirm-checkbox input[type="checkbox"], .confirm-checkbox input[type="radio"] {
  display: none;
}
.confirm-checkbox {
  display: flex;
  align-items: flex-start;
  gap: 1rem;
  cursor: pointer;
  margin-bottom: 1rem;
}

.confirm-checkbox.hide {
  display: none;
}
.confirm-checkbox:before {
  content: "";
  font-family: 'lucida grande';
  display: inline-block;
  position: relative;
  border: 3px solid var(--red);
  color: var(--red);
  border-radius:50px;
  width:16px;
  min-width: 16px;
  height: 16px;
  margin:0;
  font-size: 16px;
  text-align: center;
  line-height: 1;
}

.confirm-checkbox-white:before{
  border: 3px solid #fff;
  color: #fff;
  width: 16px;
}

.confirm-checkbox:has(input[type="checkbox"]:checked):before, .confirm-checkbox:has(input[type="radio"]:checked):before {
  content:'\2713';
}

.tick-icon {
    font-family: 'lucida grande';
    display: inline-block;
    position: relative;
    border: 3px solid var(--red);
    background-color: var(--red);
    color: #fff;
    border-radius:50px;
    width:36px;
    height: 36px;
    margin:0;
    font-size: 32px;
    text-align: center;
    line-height: 1;

}

.confirm-checkbox strong {
  text-decoration: underline;
}
.confirm-checkbox + a {
  margin-left: 36px;
  display: block;
}

.checkout-attendees-row-padding {
  padding: 1rem;
}

.no-padding {
  padding: 0;
}
.checkout-attendees-row-dark {
  background-color: var(--dark-blue);
  color: #fff;
  padding: 1rem 2rem 2rem;
  border-radius: 1rem;
  margin-top: 1rem;
}

.checkout-attendees-row .attendees-row-subtitle {
  font-weight: bold;
  color: var(--dark-blue);
  line-height: 1.5;
}
.checkout-attendees-row-dark .attendees-row-subtitle {
  font-weight: bold;
  color: #fff;
  margin-left: 0;
  margin-top: 0;
}

.attendees-row-subtitle {
  font-weight: bold;
  margin-left: 1rem;
  margin-top: 1.5rem;
  color: var(--dark-blue);
  font-size: var(--heading4);
  display: block;
}

.checkout-attendees-controls,
.checkout-birthday-controls {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 1rem;
}

.checkout-attendees-control-icon,
.checkout-birthday-control-icon {
  height: 32px;
  width: 32px;
  cursor: pointer;
  transition: transform 250ms ease-in-out;
}
.checkout-attendees-control-icon:hover,
.checkout-birthday-control-icon:hover {
  transform: scale(1.1);
}
.checkout-attendees-control-icon img,
.checkout-birthday-control-icon img {
  height: 100%;
  width: 100%;
}

#attendees-container,
#extras-container,
#f-and-d-extras-container,
#details-container {
  padding: 15px 15px 30px;
  margin: 1rem auto 0 4rem;
  width: 500px;
  position: relative;
}

.checkout #attendees-container,
.checkout #extras-container,
.checkout #f-and-d-extras-container,
.checkout #details-container,
.checkout #checkout-extras-container,
.checkout #checkout-details-container {
  /* margin: 0.5rem 0; */
  margin: 0;
  background-color: #fff;
  /* padding: 1rem 2rem 5rem; */
  padding: 1rem 2rem;
  width: unset;
  border-radius: 1rem;
  border-radius: 2rem;
}

.checkout #checkout-extras-container {
  position: relative;
}

.checkout .checkout-birthday-controls {
  display: flex;
}

.checkout #attendees-container {
  /* padding: 1rem 0; */
  padding: 0;
}

#attendees-container p,
#extras-container p,
#details-container p {
  margin-top: 1rem;
  font-size: var(--small);
}

#f-and-d-extras-container .no-extras-available-msg {
  margin-top: 0;
  text-align: center;
}

#attendees-container p {
  margin-top: 0;
}

.attendee-options {
  background-color: #fff;
}


.checkout .attendee-options, .checkout .ts-and-cs {
  padding: 1rem 2rem;
  border-radius: 1rem;
}
.checkout .attendee-options {
  padding: 0 2rem 1rem;
}
.checkout .attendee-options-extras {
  padding: 0;
}

.hidden-extras {
  display: none;
}


#attendees-container .ts-and-cs {
  margin-bottom: 1rem;
  padding: 1rem 2rem 5rem;
  position: relative;
}
#attendees-container .ts-and-cs p {
  margin-bottom: 0.5rem;
}

.full {
  background-color: var(--key-red);
}
.not-full {
  background-color: var(--key-green);
}
.limited {
  background-color: var(--key-yellow);
}
.no-availability {
  background-color: var(--key-grey-blue);
}
.past-date, .future-date {
  background-color: #fff;
}

.attendee-number {
  width: 18px;
  text-align: center;
}

/* FUN ZONE */
.fun-zone-quiz .answer-container {
  display: flex;
  align-items: center; /* Vertically align button and image */
  gap: 10px; /* Add some space between button and image */
  width: 100%;
}
.fun-zone-quiz .answer-container button {
  width: 100%;
  justify-content: flex-start;
}

.fun-zone-quiz .answer-container img {
  width: 50px;
}

.fun-zone-quiz #planet-image {
   width: 550px;
}

.fun-zone-quiz .planet-and-q {
  display: flex;
}
.fun-zone-quiz .answers-and-hint {
  display: flex; 
  justify-content: space-between; 
  align-items: flex-end;
}
.fun-zone-quiz .hint-container {
   display: flex; 
   flex-direction: column; 
   align-items: flex-end; 
   gap: 1rem; 
   width: 30%;
}
.fun-zone-quiz .hint-container #hint-text {
 color: var(--dark-blue); 
 padding: 1rem; 
 border-radius: 1rem; 
 background-color: var(--yellow); 
 display: none; 
 font-size: var(--body);
}

.fun-zone-quiz#planets-quiz {
  height: 600px;
}
.fun-zone-quiz#planets-quiz p {
  font-size: var(--heading4-5);
}
.fun-zone-quiz#planets-quiz .rocket{
  height: 1000px;
  top: -60px;
  right: -250px;
}

.canvas-wrapper .canvas-container canvas.upper-canvas:nth-of-type(2) {
  border: none;
  background-color: transparent;
}
#size {
  -webkit-appearance: none;
  width: 200px;
  height: 10px;
  background: linear-gradient(to right, var(--dark-blue), var(--dark-blue)) left top/0% 100% no-repeat, #ddd;
  border-radius: 5px;
}

#size::-webkit-slider-runnable-track {
  width: 100%;
  height: 10px;
  background: transparent;
  border-radius: 5px;
  border: none;
}

#size::-webkit-slider-thumb {
  -webkit-appearance: none;
  border: none;
  height: 20px;
  width: 20px;
  border-radius: 50%;
  background: var(--dark-blue);
  margin-top: -5px;
  cursor: pointer;
}

#size::-moz-range-track {
  width: 100%;
  height: 10px;
  background: #ddd;
  border-radius: 5px;
  border: none;
}

#size::-moz-range-thumb {
  border: none;
  height: 20px;
  width: 20px;
  border-radius: 50%;
  background: var(--dark-blue);
  cursor: pointer;
}

#size:focus {
  outline: none;
}

#size:focus::-webkit-slider-thumb {
  box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.2);
}

#size:focus::-moz-range-thumb {
  box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.2);
}

#color {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none; /* Standard syntax */
  border: none;
  border-radius: 8px;
  width: 40px; /* Adjust width as needed */
  height: 30px; /* Adjust height as needed */
  padding: 0;
  margin-left: 1rem;
  cursor: pointer;
}

#color::-webkit-color-swatch-wrapper {
  padding: 0;
}

#color::-webkit-color-swatch {
  border: none;
  border-radius: 8px;
  padding: 0;
}

#color::-moz-color-swatch {
  border: none;
  border-radius: 8px;
  padding:0;
}

#color:focus {
    outline: none;
}

.digital-colouring-flex {
  display: flex; 
  gap: 2rem;
}

.digital-colouring-section-text h2, .digital-colouring-section-text p {
  margin-bottom: 1rem;
}

.digital-colouring-section-text p {
  font-size: var(--heading5);
}

canvas { border: 1px solid #ddd; }
.controls { margin-bottom: 10px; }
.canvas-wrapper {
    position: relative;
    width: 800px;
    height: 600px;
    /* overflow: hidden; */
}

.canvas-container {
  height: 600px!important;
  width: 800px!important;
}
#drawing-canvas,
#svg-canvas, .upper-canvas  {
  height: 600px!important; /* Default canvas height */
  width: 800px!important; /* Default canvas width */
  display: block; /* Important to remove any default spacing */
}

.canvas-wrapper canvas {
    position: absolute;
    left: 0;
    top: 0;
    display: block;
}
#svg-canvas {
    transform: translateY(-100%); /* Stack SVG canvas on top */
    pointer-events: none; /* Disable interaction with SVG canvas */
}

.arrow {
  position: absolute; 
  height: 150px; 
  width: 150px; 
  left: -85px; 
  top: -50px;
}

.arrow-text {
   position: relative; 
   font-size: var(--heading4); 
   font-weight: bold;
}

.controls-flex {
  display: flex; 
  gap: 4rem;
}

.colouring-pages {
  display: flex; 
  gap: 3rem;
}

.colouring-page-container {
  width: 30%; 
  display: flex; 
  flex-direction: column; 
  gap: 1rem;
}

.colouring-page-container.mobile-hidden {
  display: flex;
}
.colouring-page-container.mobile-show {
  display: none;
  margin-bottom: 1.5rem;
}

.colouring-pages #view-more-colouring {
  width: 30%; 
  margin: 1rem auto 0;
}

.colouring-page-image-container {
   border: var(--dark-blue) 2px solid; 
   border-radius: 1rem; 
   display: flex; 
   justify-content: center; 
   align-items: center;
}

.colouring-pages-flex {
  display: flex; 
  justify-content: space-between;
}

.colouring-pages-flex.hidden, .sml-spacer-colouring-pages.hidden {
  display: none;
}

.colouring-pages p {
  font-size: var(--heading5);
}

.colouring-page-featured  {
  flex: 0.5;
}

.colouring-page-featured .subheading-bold {
  margin-top: 5rem;
  margin-bottom: 2rem;
}

.colouring-page-featured p {
  text-align: center;
  font-weight: bold;
  margin-top: 1rem;

}

.activity-pages-flex {

  display: flex; 
  gap: 2rem; 
  height: 600px;
}

.activity-pages-flex img {
  height: 100%;
}

.activity-pages-flex > div {
   height: 90%; display: flex; gap: 1rem; flex-direction: column;
}

.fun-zone-quiz .quiz-planet {
  width: 200px;
  position: absolute;
}

.fun-zone-quiz .quiz-planet:nth-of-type(1) {
  bottom: 0;
  left: 100px;
  width: 300px;
}

.fun-zone-quiz .quiz-planet:nth-of-type(2) {
  left: 20%;
  top: 20%;
  width: 250px;
}
.fun-zone-quiz .quiz-planet:nth-of-type(3) {
  right: -10%;
  top: -10%;
  width: 200px;
}
.fun-zone-quiz .quiz-planet:nth-of-type(4) {
  right: 45%;
  bottom: 10%;
  width: 350px;
}
.fun-zone-quiz .quiz-planet:nth-of-type(5) {
  right: 15%;
  bottom: 0;
  width: 200px;
}
.fun-zone-quiz .quiz-planet:nth-of-type(6) {
  left: -10%;
  top: 10%;
  width: 300px;
}
.fun-zone-quiz .quiz-planet:nth-of-type(7) {
  right: 15%;
  top: -10%;
  width: 150px;
}
.fun-zone-quiz .quiz-planet:nth-of-type(8) {
  right: 45%;
 top: -5%;
  width: 150px;
}
.fun-zone-quiz .quiz-planet:nth-of-type(9) {
  right: 25%;
  bottom: 30%;
  width: 350px;
}

#quiz-results .well-done {
 font-size: 10rem;
}

#quiz-results.fun-zone-page-section .result-text {
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  height: 100%;
}
#quiz-results {
  display: flex;
  justify-content: center;
  align-items: center;
  transform: translate(0,0);
  height: 650px;
}

.image-selector {
  display: flex;
  gap: 1rem;
  flex-wrap: wrap;
}

.controls {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.image-selector button {
  width: 30%;
}
/* BIRTHDAY PARTIES */


#users-planet-container {
  position: absolute;
  right: 10%;
  bottom: 140px;
  z-index: 2;
  pointer-events: none;
}

#users-planet-img-container {
  height: 550px;
  width: 550px;
  z-index: 5;
  pointer-events: none;
}

@media only screen and (max-width: 1800px) {
  #users-planet-container {
    right: 5%;
  }
}

#users-planet {
  height: 100%;
  width: 100%;
}
#characters-container #users-flag {
  position: absolute;
  /* bottom: 95px; */
  bottom: 76px;
  left: 79.5%;
  height: 300px;
  width: 300px;
  z-index: 0;
}

#planet-1,
#planet-2,
#planet-3,
#planet-4,
#planet-5 {
  position: absolute;
  z-index: 1;
}

#planet-1 {
  left: 50px;
  top: 100px;
  width: 200px;
  height: 200px;
}
#planet-2 {
  right: 50px;
  top: 80px;
  width: 100px;
  height: 100px;
}
#planet-3 {
  left: 25%;
  top: 100px;
  width: 300px;
  height: 300px;
}
#planet-4 {
  right: 45%;
  top: 150px;
  width: 180px;
  height: 180px;
}
#planet-5 {
  right: 120px;
  bottom: 180px;
  width: 150px;
  height: 150px;
}
#presents-container {
  position: absolute;
  left: 200px;
  bottom: 0;
  z-index: 2;
}
#presents-container img {
  width: 150px;
  position: absolute;
}

#presents-container img:first-of-type {
  left: -100px;
  bottom: 30px;
}
#presents-container img:nth-of-type(2) {
  left: 0;
  bottom: 0;
}
#presents-container img:nth-of-type(3) {
  left: 125px;
  bottom: 20px;
}
#presents-container img:nth-of-type(4) {
  left: 225px;
  bottom: 10px;
}
#presents-container img:nth-of-type(5) {
  left: 320px;
  bottom: -15px;
}
#presents-container img:nth-of-type(6) {
  left: 420px;
  bottom: 30px;
}
#presents-container img:nth-of-type(7) {
  left: 525px;
  bottom: 0;
  width: 180px;
}
#characters-container {
  position: absolute;
  bottom: 60px;
  right: 120px;
  z-index: 12;
  width: 135%;
  height: 50%;
}

#characters-container .astro {
  height: 900px;
  position: absolute;
}
#characters-container .astro:nth-of-type(2) {
  left: 20%;
}
#characters-container .astro:nth-of-type(3) {
  left: 40%;
}
#characters-container .astro:nth-of-type(4) {
  left: 60%;
  top: 20px;
}
#characters-container .astro:last-of-type {
  left: 80%;
  z-index: 2;
}
.character-1 {
  position: absolute;
  left: 325px;
  top: 20px;
  height: 300px;
  z-index: 3;
}
.character-2 {
  position: absolute;
  left: 675px;
  top: 200px;
  height: 300px;
  z-index: 2;
}

#birthday-parties-text {
  position: absolute;
  bottom: 50%;
  transform: translateY(50%);
  left: 100px;
  width: 650px;
  z-index: 2;
  pointer-events: none;
}

.bd-star {
  width: 50px;
  position: absolute;
  z-index: 2;
}

.bd-star-1 {
  top: 100px;
  left: 100px;
}
.bd-star-2 {
  top: 75px;
  left: 500px;
}
.bd-star-3 {
  top: 100px;
  right: 150px;
}
.bd-star-4 {
  top: 50%;
  right: 80px;
}
.bd-star-5 {
  top: 65%;
  left: 50%;
}
.bd-star-6 {
  top: 30%;
  left: 60%;
}
.bd-star-7 {
  top: 65%;
  left: 200px;
}

.star-bg {
  background-image: url("../images/birthday-parties/star-bg.jpg");
  padding: 6rem 0;
  color: #fff;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
  background-position: right;
  margin-bottom: 8rem;
}

.star-bg .included {
  position: relative;
  width: 60%;
}

.star-bg .container-wide {
  display: flex;
  justify-content: flex-start;
}
.star-bg.star-bg-block .container-wide {
  display: block;
}

.star-bg .rocket {
  height: 110vh;
  margin-top: -10rem;
  position: absolute;
  right: -260px;
  z-index: 1;
  pointer-events: none;
}

.blue-bg.birthday-page.menus {
  min-height: 600px;
}
.blue-bg.birthday-page .container-wide {
  /* height: 100%; */
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: calc(600px - 12rem);
}

.blue-bg.birthday-page.birthday-page-faqs .container-wide {
  min-height: unset;
}

.blue-bg.birthday-page.patch-faqs .container-wide {
  min-height: unset;
}
.blue-bg.birthday-page.patch-faqs .container-wide .faqs {
  margin-bottom: 1rem;
}

.faq-hide-desktop {
  display: none;
}

.star-bg p,
.blue-bg.birthday-page p {
  font-size: var(--heading5);
}

.blue-bg.birthday-page p strong {
  font-size: var(--heading6);
}

.blue-bg.birthday-page p em {
  font-size: var(--small);
}

.star-bg h3,
.blue-bg.birthday-page h3,
.what-happens h2 {
  font-size: var(--heading3);
  margin: 1rem 0;
  line-height: 1.25;
}

.star-bg .free-gift h3,
.star-bg .free-gift p {
  text-align: center;
}
.blue-bg.birthday-page h2,
.recruits h2 {
  font-size: var(--heading2);
  margin: 1rem 0 2rem;
  line-height: 1.25;
}
.blue-bg.birthday-page h2 {
  text-align: center;
}

.recruits h2 {
  margin-left: 10%;
  width: fit-content;
  color: var(--blue);
}

.star-bg .red-btn {
  position: absolute;
  bottom: 0;
  transform: translate(50%, 150%);
}

.star-bg.star-bg-block {
  padding: 6rem 0;
  margin-bottom: 0;
}

.star-bg.star-bg-block .red-btn{
  position: static;
  transform: translate(0);
}

.star-bg .free-gift {
  background-color: var(--medium-blue);
  display: flex;
  align-items: center;
  gap: 2rem;
  padding: 2rem 4rem;
  position: absolute;
  bottom: 0;
  right: -175px;
  transform: translate(50%, 50%);
  width: 504px;
}

.star-bg .free-gift img {
  height: 120px;
  width: 100px;
}

.star-bg .price {
  border-radius: 50%;
  background-color: var(--red);
  position: absolute;
  top: 40%;
  right: 0;
  transform: translate(-50%, -50%);
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 2rem;
  height: 180px;
  width: 180px;
  font-weight: 800;
}
.star-bg .price span:first-of-type {
  font-size: var(--heading0);
  line-height: 1;
}
.star-bg .price span:last-of-type {
  font-size: var(--heading4);
  line-height: 1;
}

.star-bg .abs-planet-1,
.star-bg .abs-planet-2 {
  position: absolute;
}
.star-bg .abs-planet-2 {
  top: 5%;
  right: 25%;
  height: 250px;
  width: 250px;
}
.star-bg .abs-planet-1 {
  top: 40%;
  right: 35%;
  transform: translateX(50%);
  height: 350px;
  width: 350px;
}

.blue-bg.birthday-page {
  position: relative;
}

#illustrations-container-tablet {
  display: none;
}

#illustrations-container {
  position: absolute;
  top: 0;
  right: 0;
  height: 80%;
  width: 60%;
  pointer-events: none;
}
#illustrations-container img {
  position: absolute;
}
#illustrations-container img:first-of-type {
  top: 50%;
  left: 0;
  transform: translate(-50%, -25%);
  height: 300px;
}
#illustrations-container img:nth-of-type(2) {
  top: 0;
  left: 25%;
  transform: translate(-50%, 0);
  height: 250px;
}
#illustrations-container img:nth-of-type(3) {
  top: 50%;
  left: 35%;
  transform: translate(-50%, 0);
  height: 200px;
}
#illustrations-container img:nth-of-type(4) {
  top: 0;
  right: 0;
  height: 450px;
}

@media only screen and (max-width: 1650px) {
  #illustrations-container img:first-of-type {
    height: 250px;
  }
  #illustrations-container img:nth-of-type(2) {
    left: 35%;
    height: 225px;
  }
  #illustrations-container img:nth-of-type(3) {
    height: 150px;
  }
  #illustrations-container img:nth-of-type(4) {
    top: 50px;
    right: -50px;
    height: 400px;
  }
}

.what-happens {
  text-align: center;
  padding: 8rem 0;
}

.what-happens p {
  font-size: var(--heading6);
}

.what-happens .steps {
  display: flex;
  margin-top: 6rem;
  flex-wrap: wrap;
  /* gap: 1rem; */
  justify-content: center;
}
.what-happens .steps .step-arrow {
  background-color: var(--blue);
  height: 20px;
  width: 100px;
  clip-path: polygon(90% 0%, 100% 50%, 90% 100%, 0% 100%, 10% 50%, 0% 0%);
  margin-top: 10px;
  flex: 0.5;
  min-width: 75px;
  max-width: 75px;
}

.what-happens .step {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
  gap: 1rem;
  min-width: 150px;
  max-width: 150px;
  margin-bottom: 2rem;
}

.what-happens .steps .step .step-number {
  background-color: var(--red);
  width: 50px;
  height: 50px;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  font-size: var(--heading4);
  font-weight: 800;
}

.what-happens .steps .step .step-img-container {
  border-radius: 50%;
  height: 150px;
}
.what-happens .steps .step .step-img-container img {
  height: 100%;
  width: 100%;
  border-radius: 50%;
  object-fit: cover;
  min-width: 150px;
}

/* BIRTHDAY FAQS
.faqs {
  display: flex;
  gap: 2rem;
}

.faqs .left, .faqs .right {
  display: flex;
  flex-direction: column;
  flex: 1;
  gap: 1rem;
}

.faq {
  position: relative;
  cursor: pointer;
}

.faq img {
  position: absolute;
  top: 10px;
  right: 10px;
  width: 32px;
  
}

.faq h4 {
  background-color: #fff;
  color: var(--blue);
  padding: 1rem;
  border-radius: 1rem;
  padding-right: 5rem;
} */

.login-register-form button,
.faqs button, .form-group .blue-btn {
  background-color: var(--dark-blue);
  border: var(--dark-blue) 2px solid;
  padding: 1rem;
  border-radius: 8px;
  margin: 0.5rem 0;
  color: #fff;
  font-weight: 600;
  font-size: var(--heading6);
  transition: all 350ms ease-in-out;
}

.guest-login.blue-btn {
  background-color: var(--blue);
  border: var(--blue) 2px solid;
  padding: 1rem;
  margin-top: 1rem;
  font-size: var(--heading6);
  line-height: 1.5;
}

.guest-login.blue-btn:hover,
.guest-login.blue-btn:focus {
  background-color: #fff;
}

.login-register-form button {
  margin: 1rem 0;
}

.login-register-form button:hover,
.faqs button :hover,
.login-register-form button:focus,
.faqs button :focus {
  background-color: #fff;
  color: var(--dark-blue);
}

/* #revealBtn {
  display: none;
} */

.faq-btn {
  background-color: var(--dark-blue);
  color: #fff;
  padding: 1.5rem 2rem;
  border: none;
  margin: 1rem auto 0;
  width: 100%;
  max-width: 720px;
  border-radius: 1rem;
  font-size: var(--heading6);
  font-weight: bold;
}

.blue-bg.birthday-page .faq p {
  display: none;
  padding: 2rem;
  font-size: var(--body);
}

.rotated {
  transform: rotate(180deg);
}

/* RECRUITS */
.recruits {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 6rem auto;
}
.all-recruits {
  display: flex;
  flex-wrap: wrap;
  flex: 1;
  position: relative;
  padding-bottom: 1rem;
}

.recruit-click-text {
  position: absolute;
  bottom: -20px;
  left: 50%;
  transform: translateX(-50%);
  text-align: center;
  width: 100%;
}
.featured-recruit {
  display: flex;
  flex: 1.5;
  flex-direction: column;
}

.featured-recruit-inner {
  display: flex;
  justify-content: center;
  align-items: center;
}

.featured-recruit-inner p {
  color: var(--blue);
  font-size: var(--heading5);
}

.recruit-container {
  flex: 1;
  max-width: 250px;
  min-width: 150px;
  cursor: pointer;
}

.featured-recruit-container {
  max-width: 500px;
  min-width: 500px;
}

.recruit-container img,
.featured-recruit-container img {
  width: 100%;
  height: 100%;
}

.fun-zone-section, .fun-zone-page-section {
  background-image: url("../images/birthday-parties/Fun-Zone-02.png");
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  position: relative;
  height: 625px;
}

.fun-zone-page-section {
  height: 100%;
  /* transform: translate(0, 15%); */
}

.fun-zone-hero .fun-zone-page-section {
  height: 600px;
  top: 15%;
}

.fun-zone-container, .fun-zone-page-container {
  margin: 0 auto;
  position: absolute;
  left: 50%;
  top: -50px;
  bottom: -50px;
  transform: translateX(-50%);
  transform-origin: center;
  width: 100%;
  max-width: 750px;
  cursor: pointer;
  transition: all 250ms ease-in-out;
  z-index: 10;
}

.fun-zone-page-container {
  cursor: default;
  z-index: 0;
}
.fun-zone-page-container img {
  height: 100%;
  width: 100%;
}

.fun-zone-container:hover,
.fun-zone-container:focus,
.fun-zone-page-container:hover,
.fun-zone-page-container:focus {
  transform: translateX(-50%) scale(1.1);
}
.fun-zone-container img {
  width: 100%;
  height: 100%;
}

/* PLAN YOUR VISIT PAGE */
.plan-options {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
}

.plan-option {
  background-color: var(--blue);
  color: #fff;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  gap: 0.5rem;
  border-radius: 2rem;
  width: 24%;
  padding: 1rem 2rem;
}

.plan-option img {
  width: 100px;
}
.plan-option-rect img {
  width: 150px;
}

.plan-option p {
  font-size: var(--heading5);
  font-weight: 600;
  line-height: 1.25;
}

.plan-search {
  width: 95%;
  margin: 0 auto;
  max-width: 1000px;
  border-radius: 2rem;
  display: flex;
  flex: 1;
  padding: 3rem;
  gap: 2rem;
}

.plan-search img {
  width: 40px;
}

.search-container {
  border-bottom: #fff solid 4px;
  flex: 2;
}

.search-container input {
  height: 100%;
  width: 100%;
  background-color: transparent;
  border: none;
  color: #fff;
  font-size: var(--heading4);
}

.plan-faqs .faqs {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
}
.plan-faqs .faqs .faq {
  width: calc(50% - 0.5rem);
}

.plan-faqs .faq h4 {
  background-color: var(--blue);
  color: #fff;
}

.plan-faqs .faq p {
  display: none;
  padding: 2rem;
  font-size: var(--body);
}

.view-more {
  margin-left: auto;
  margin-right: 0;
  width: fit-content;
  display: block;
  font-size: var(--heading6);
  padding: 0.5rem;
  cursor: pointer;
  transition: transform 250ms ease-in-out;
}

.view-more:hover,
.view-more:focus {
  transform: scale(1.1);
}

/* CAREERS PAGE */
.career-options {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  gap: 1rem;
}

.career-heading,
.career-subheading {
  text-align: center;
  margin-bottom: 1rem;
}

.career-option {
  flex: 1;
}

.career-option-img {
}

.career-option-img img {
  height: 100%;
  width: 100%;
}

.career-option h3 {
  text-align: center;
  color: var(--dark-blue);
  margin-bottom: 2rem;
}

.careers-intro p {
  margin-bottom: 2rem;
  font-size: var(--heading6);
}

.latest-vacancies {
  padding: 3rem 0 6rem;
}

.latest-vacancies .subheading-thin {
  text-align: center;
  margin-bottom: 2rem;
}
.latest-vacancies p {
  text-align: center;
  margin-bottom: 2rem;
  font-size: var(--body);
}

.latest-vacancies-table {
  background-color: #fff;
  padding: 2rem;
}

.styled-table {
  width: 100%;
  text-align: left;
}

.styled-table td,
.styled-table th {
  width: 25%;
  /* padding: 1rem; */
}

.styled-table .flex-table-row {
  display: flex;
  width: 355px;
  padding: 1rem 0 1rem 1rem;
  justify-content: center;
  align-items: center;
}
.styled-table .flex-table-row button {
  margin: 0 5px;
}

.styled-table {
  border-radius: 2rem;
  border-collapse: collapse;
  box-shadow: 0 0 20px rgba(0, 0, 0, 0.15);
}
.styled-table thead tr {
  color: var(--dark-blue);
  text-align: left;
  border-bottom: 2px solid var(--dark-blue-alpha-strong);
}
.styled-table th,
.styled-table td {
  padding: 2rem;
}
.styled-table tbody tr {
  border-bottom: 2px solid var(--dark-blue-alpha-strong);
}

.styled-table tbody tr:last-of-type {
  border-radius: 0 0 2rem 2rem;
  border-bottom: none;
}

.career-container .flex-buttons {
  display: flex;
  justify-content: center;
  align-items: center;
  width: fit-content;
  margin: 0 auto;
  background-color: #fff;
}

.career-container .flex-buttons span {
  padding: 1rem 3rem;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  min-width: 150px;
  cursor: pointer;
  border-radius: 4rem;
  transition: all 150ms;
}
.career-container .flex-buttons span:hover {
  background-color: var(--red-50);
  color: #fff;
}

.career-container .flex-buttons span.active {
  text-align: center;
  background-color: var(--red);
  color: #fff;
  cursor: default;
}
.career-main {
  display: flex;
  gap: 6rem;
  color: var(--dark-grey);
}

.career-description {
  flex: 2;
}

.career-further-details {
  flex: 1;
  margin-top: 3rem;
}

.career-description p {
  margin-bottom: 1.5rem;
}

.career-further-details p {
  margin-bottom: 1.5rem;
}

.careers-position-container {
  padding: 4rem 0;
  display: none;
}

.application,
.overview,
.order-form {
  padding-top: 2rem;
}

.application .subheading-thin {
  margin-top: 2rem;
}

.application {
  display: none;
  max-width: 800px;
  margin: 0 auto;
}

.job-section {
  margin-bottom: 2rem;
}

.job-section ul, .job-section ol {
  padding-left: 2rem;
}

.remove-experience img,
.remove-education img {
  height: 20px;
}

.remove-experience,
.remove-education {
  background-color: var(--red);
  height: 32px;
  padding: 5px;
  border: none;
  margin-top: 1rem;
  border-radius: 0.5rem;
}

.experience-section .input-flex,
.education-section .input-flex {
  align-items: center;
}

.experience-container {
  margin-bottom: 1rem;
}

/* FORMS */

form .btn-top-margin {
  margin-top: 1rem;
}

.login-register-form {
  display: flex;
  flex-direction: column;
}

.input-flex {
  display: flex;
  gap: 1rem;
  width: 100%;
}

.input-flex-with-label {
  align-items: flex-start;
  margin-top: 5px;
}

.input-flex .form-group-with-label {
  width: 50%;
}
.clear-inputs {
  display: flex; align-items: flex-end; margin-bottom: 0.75rem
}

.form-group-with-label select.lesson-levels {
  border: var(--dark-blue) solid 2px;
  height: 54px;
}

.form-group-white-bg {
  background-color: #fff;
  padding: 1rem;
  border-radius: 1rem;
}

.form-group-white-bg.open {
  background-color: transparent;
}

.input-flex .form-group {
  width: 50%;
}

.form-group input,
.form-group-with-label input,
.form-group-with-label select,
.form-group textarea,
.form-group-file-upload {
  padding: 1.5rem 2rem;
  border: transparent 2px solid;
  background-color: #fff;
  border-radius: 8px;
  position: relative;
  width: 100%;
}

.ice-card-ice-skating-attendees {
  height: 54px;
}

.form-group-with-label .form-group-input-border,
.form-group .form-group-input-border {
  border: var(--dark-blue) 2px solid;
}


.form-group-select .select-items div,
.form-group-select .select-selected {
  min-height: 32px;
}
.form-group-select {
  height: 54px;
}
.form-group-select .placeholder {
  top: 14px;
}

.form-group-select .select-selected:before {
  top: 25px;
}
.form-group-select .select-selected.select-arrow-active:before {
  top: 14px;
}
.form-group-select .select-selected:after {
  top: 23px;
}
.form-group-select .select-selected.select-arrow-active:after {
  top: 16px;
}

.form-group-select .select-items div,
.form-group-select .select-selected {
  font-size: var(--small);
  font-weight: normal;
}

#select_voucher_location_container .select-items {
  padding: 0 2rem;
  position: relative;
  top: 1rem;
}

.gift-voucher-type-container .form-group .select-items div {
  line-height: 2;
}

textarea {
  display: block;
}

.form-group .custom-select {
  padding: 1.5rem 2rem;
  border: transparent 2px solid;
  background-color: #fff;
  border-radius: 8px;
  width: 100%;
  margin: 1rem 0 0;
}
.form-group input,
.form-group textarea {
  margin: 1rem 0 0;
}

.form-group-file-upload {
  margin: 0.5rem 0 0.75rem;
}
.file-upload-placeholder {
  display: flex;
  flex-direction: column;
  align-items: center;
  font-size: var(--small);
  color: #b1b1b1;
  text-align: center;
}

.file-upload-placeholder img {
  width: 100px;
}

.form-group-with-label input,
#ship-address {
  margin: 0;
}

#career-form .form-submit-container,
#gift-voucher-form .form-submit-container {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-top: 1rem;
}

.form-container a {
  text-align: center;
  text-decoration: none;
  display: block;
  color: var(--dark-blue);
  margin-top: 1rem;
}

.checkout-login-modal .form-container a {
  margin-top: 0;
}

.form-container {
  color: var(--dark-blue);
  padding: 0 4rem;
}
.form-container h2,
.form-container p {
  margin-bottom: 0;
  line-height: 1.25;
}

.form-container .sml-p-text {
  font-size: var(--smaller);
}

.address-img-container {
  position: relative;
}
.address-img-container img {
  position: absolute;
  right: 0;
  bottom: 0;
}

label sup {
  color: var(--red);
}

.form-group,
.form-group-with-label {
  position: relative;
  border-radius: 8px;
}

.form-group .tick,
.form-group-with-label .tick,
.form-group-dob .tick {
  position: absolute;
  height: 20px;
  width: 20px;
  opacity: 0;
}

.form-group .tick {
  top: 25px;
  right: 5px;
}

.form-group-with-label .tick {
  top: 15px;
  right: 5px;
}

.form-group-dob .tick,
.form-group-location .tick {
  right: 40px;
  top: 42px;
}

.toggle-icon {
  position: absolute;
  cursor: pointer;
  right: 3rem;
  top: 25px;
  width: 24px;
}

.placeholder {
  position: absolute;
  top: 26px;
  left: 2.25rem;
  color: #b1b1b1;
  z-index: 10;
  pointer-events: none;
}

.textarea.placeholder {
  top: 16px;
}

.ship-address-placeholder {
  top: 16px;
}

/* Hide placeholders when autofill is detected */
.autofill-visible .placeholder {
  display: none;
}

label,
.address-img-container {
  font-weight: normal;
  color: #444;
  font-weight: 600;
  font-size: var(--small);
}
.label-separate {
  padding-left: 2rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 1rem;
}

.form-input-btn {
  padding: 0.5rem 1.5rem;
  border: 2px var(--red) solid;
  border-radius: 1rem;
  color: #222;
  transition: all 150ms;
  cursor: pointer;
}
.form-input-btn:hover,
.form-input-btn:focus {
  background-color: var(--red);
  color: #fff;
}
.star {
  color: var(--red);
}
.optional {
  color: var(--red);
  font-size: var(--smaller);
}

.upload-placeholder {
  margin-right: 5px;
}

.patch-register-form {
  display: none;
}

.form-choice-btn {
  cursor: pointer;
}

.custom-file-upload {
  display: flex;
  align-items: center;
  cursor: pointer;
  color: #b1b1b1;
  background-color: #fff;
  border: transparent 2px solid;
  border-radius: 8px;
  margin: 25px 0 0;
  position: relative;
  width: 100%;
}

#file-error {
  font-size: var(--small);
  display: block;
  width: 100%;
  margin-top: 6px;
  color: var(--red)
}

.form-recaptcha {
  margin-top: 1rem;
}

.custom-file-upload img {
  height: 52px;
}

input[type="file"] {
  display: none;
}

.error,
.quickbook-option .error {
  color: var(--red);
  font-size: var(--small);
  margin-left: 0;
}

.custom-select .error {
  display: block;
  margin-top: -1rem;
}

.basket .error {
  color: var(--red);
  font-size: var(--body);
  text-align: center;
  margin-top: 1rem;
}

.error-abs {
  position: absolute;
  bottom: -20px;
  left: 0;;
}

.quickbook-option .error,
.quickbook-btns #ajaxSuccess {
  position: absolute;
  bottom: -5px;
  background-color: transparent;
  font-weight: bold;
  left: 0;
  margin-bottom: 0;
  opacity: 1;
  text-align: left;
}

.quickbook-option .error {
  bottom: -22px;
}

.success {
  font-size: var(--small);
  color: #1db954;
  text-align: center;
  font-size: var(--body);
  margin-top: 1rem;
}

.success-msg {
  font-size: var(--small);
  background-color: #1db954;
  text-align: center;
  font-size: var(--body);
  margin-top: 1rem;
  padding: 0.5rem;
}

#success.fail,
.fail {
  color: var(--red);
  text-align: center;
  font-size: var(--body);
  margin-top: 1rem;
}

/* GIFT VOUCHERS PAGE */

.radios-container {
  display: flex;
  overflow-x: scroll;
}

.skate-hire-radios {
  overflow-x: hidden;
}

.radios-container label {
  background-color: var(--blue-20);
  border-radius: 1rem;
  padding: 2rem 1rem;
  margin-right: 10px;
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  position: relative;
  flex: 1;
  min-width: 150px;
  text-align: center;
  color: #000;
}

.radios-container label:last-of-type{
  margin-right: 0;
}

.gift-voucher-designs-container label {
  position: relative;
  color: #000;
  display: inline-flex;
  width: calc(25% - 1rem);
}
.radios-container label span:first-of-type {
  font-size: var(--heading4);
}

.radios-container label input[type="radio"],
.gift-voucher-designs-container label input[type="radio"],
.checkout-choose-activity label input[type="radio"] {
  opacity: 0;
  position: absolute;
}

.radios-container label:has(> input[type="radio"]:checked) {
  background-color: var(--blue);
  color: #fff;
}

.gift-voucher-design img:has(~ input[type="radio"]:checked) {
  border: var(--red) 5px solid;
  border-radius: 3rem;
}

.gift-voucher-designs-container {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 1rem;
}

.gift-voucher-design {
  cursor: pointer;
  display: flex;
  flex-direction: column;
  border-radius: 1rem;
}

.gift-voucher-design:hover.gift-voucher-design img {
  border: 5px solid var(--blue-20);
}

.gift-voucher-design p {
  color: var(--dark-blue);
  font-weight: bold;
  font-size: var(--heading5);
}

.gift-voucher-design img {
  width: 100%;
  height: 100%;
  border-radius: 1rem;
  border: transparent 5px solid;
}

.gift-voucher-form {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}

.bullet-point-tick {
  font-size: 20px;
  width: 24px;
  height: 24px;
  min-width: 24px;
  max-width: 24px;
  border: solid #fff 2px;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  font-size: 20px;
}

.bullet-point-tick-dark-blue {
  border: 2px solid var(--dark-blue);
  color: var(--dark-blue);
}

.dark-blue-bg.holidays-dark-bg .patch-dark-blue-bg .blue-bg .bullet-list-item p{
  margin-bottom: 0;
}

.chevron {
  height: 20px;
}

.subheading-flex {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.gift-voucher-details-heading {
  cursor: pointer;
}

.char-count-container {
  font-size: var(--small);
  color: var(--blue);
  margin-left: 20px;
  /* position: absolute; */
  /* bottom: 0; */
  /* right: 20px; */
  text-align: right;
  display: block;
}

.gift-voucher-details .gv-message {
  padding-bottom: 2rem;
}

.charCount {
  color: var(--blue);
  text-align: right;
  margin-bottom: 1rem;
  margin-right: 4px;
  font-weight: bold;
}

.charCount.text-limit {
  color: var(--red);
}
.char-count-container.text-limit {
  color: var(--red);
}

/* 
.login-register-modal {
  background-color: var(--off-white);
  color: #000;
  width: 95%;
  max-width: 560px;
  padding: 3rem 3rem;
  height: fit-content;
  position: relative;
}

.login-register-modal .flex-buttons{
  display: flex;
  justify-content: center;
  align-items: center;
  width: fit-content;
  margin: 0 auto;
  background-color: #fff;
}

.login-register-modal .flex-buttons span {
  padding: 1rem 3rem;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  min-width: 150px;
}
.login-register-modal .flex-buttons span.active {
  text-align: center;
  background-color: var(--red);
  color: #fff;
  border-radius: 4rem;
} */

.login-register-modal .close {
  height: 32px;
  width: 32px;
  position: absolute;
  top: 2rem;
  right: 2rem;
  cursor: pointer;
  transition: all 250ms ease-in-out;
}

.login-register-modal .close:hover {
  transform: scale(1.2);
}

.login-register-modal .close img {
  height: 100%;
  width: 100%;
}

.password-strength-container {
  display: flex;
  font-size: var(--smaller);
  align-items: center;
}

.profile-password-strength-container {
  margin-top: 1rem;
}

.password-strength-container {
  
  margin-top: 10px;
}

.password-strength {
  display: flex;
  width: 50%;
  border: solid 2px #b1b1b1;
  border-radius: 12px;
  margin: 0 4px;
}

.profile-password-strength {
  width: 100%;
  max-width: 400px;
}

div.password-requirements {
  font-size: var(--smaller);
  color: #333;
  /* margin-bottom: 10px; */
}

.password-tick,
.profile-password-tick {
  margin: 0 4px;
  color: #056d20;
  opacity: 0;
  font-weight: 900;
}

.color-section,
.profile-color-section {
  flex-grow: 1;
  height: 12px;
  visibility: hidden;
}

.color-section:nth-child(1),
.profile-color-section:nth-child(1) {
  border-radius: 12px 0 0 12px;
}

.color-section:nth-child(4),
.profile-color-section:nth-child(4) {
  border-radius: 0 12px 12px 0;
}

#login-success,
#register-success {
  font-size: var(--smaller);
  text-align: center;
  color: #056d20;
}
#login-success.fail,
#register-success.fail {
  color: var(--red);
}

.disable-submit {
  opacity: 0.5;
  cursor: not-allowed;
}

.gv-discount {
  display: flex;
  /* justify-content: space-between; */
  color: #056d20;
  gap: 2rem;
}
.gv-discount span {
  display: block;
}

/* ====================================================== MY ACCOUNT PAGE ======================================================= */

.menu-toggle-container img {
  width: 100%;
  height: 100%;
}

.menu-toggle-container {
  height: 32px;
  width: 32px;
}
.my-account {
  min-height: 100vh;
  padding-top: 200px;
  color: var(--dark-blue);
}

.my-profile-container {
  display: flex;
  gap: 2rem;
}

.your-ice-card-menu,
.profile-nav-links {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  min-width: 350px;
}

.your-ice-card-heading {
  display: flex;
  justify-content: space-between;
  width: 100%;
  max-width: 280px;
  margin: 0 auto 2rem;
}
.your-ice-card-heading .section-activity-value {
  margin: 5px 0;
  border-radius: 5px;
}
.section .your-ice-card-heading h1 {
  margin-bottom: 0;
}

.ice-account-details-container {
  flex: 2;
  display: flex;
  flex-direction: column;
  gap: 2rem;
  width: 50%;
}

.section, .ice-card-membership-name-btn, .ice-card-membership-name-btn-active {
  background-color: #fff;
  border-radius: 1rem;
  display: flex;
  flex-direction: column;
  position: relative;
  padding: 2rem 4rem;
  text-decoration: none;
  color: var(--dark-blue);
  font-weight: bold;
}

.ice-card-membership-name-btn, .ice-card-membership-name-btn-active {
  padding: 2rem;
  width: 100%;
  max-width: 380px;
  gap: 1rem;
}

.ice-card-membership-name-btn-active {
  opacity: 0.5;
  cursor: default;
}
.ice-card-membership-name-btn:hover,
.ice-card-membership-name-btn:focus
 {
  background-color: var(--blue-20-solid);
  cursor: pointer;
}

.ice-card-membership-name-btn:has(input[type="radio"]:checked) {
  background-color: var(--blue-20-solid);
}
.ice-card-membership-name-btn:has(input[type="checkbox"]:checked) {
  background-color: var(--blue-20-solid);
}
.ice-card-membership-name-btn input[type="radio"], .ice-card-membership-name-btn input[type="checkbox"] {
  display: none;
}

.dark-section {
  color: #fff;
  background-color: var(--dark-blue);
}

.section h1 {
  margin-bottom: 2rem;
}

.your-ice-card-menu h2 {
  align-self: center;
}

.your-ice-card.section:first-child {
  margin-bottom: 3rem;
  padding-bottom: 3rem;
}

.section.profile-menu-btn, .ice-card-membership-name-btn, .ice-card-membership-name-btn-active {
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
}
.dark-section.profile-nav {
  display: none;
  justify-content: space-between;
  align-items: center;
  flex-direction: row;
}

.section-activity-value {
  font-size: var(--smaller);
  background-color: var(--dark-blue);
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0 1rem;
  border-radius: 5px;
}
.profile-menu-btn,
.ice-card-membership-name-btn,
a.section,
#my-details-signout,
#my-details-signin {
  cursor: pointer;
  transition: all 250ms ease-in-out;
}

.profile-menu-btn:hover,
.profile-menu-btn:focus,
a.section:hover,
a.section:focus,
#my-details-signout:hover,
#my-details-signout:focus,
#full-purchase-history:hover,
#full-purchase-history:focus,
#my-details-signin:hover,
#my-details-signin:focus {
  background-color: var(--blue-20);
  cursor: pointer;
}

#full-purchase-history .profile-menu-btn:hover,
#full-purchase-history .profile-menu-btn:focus {
  background-color: transparent;
}

.profile-menu-btn.active {
  background-color: var(--blue);
  color: #fff;
}

.dark-section .profile-menu-btn.active,
.dark-section .profile-menu-btn:hover,
.dark-section .profile-menu-btn:focus {
  background-color: var(--dark-blue);
}

/* .profile-menu-btn.active .section-activity-value {
  background-color: #fff;
  color: var(--dark-blue);
} */

.add-to-wallet-btn {
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translate(-50%, 50%);
  align-self: center;
  white-space: nowrap;
}

.ice-card-profile-img {
  align-self: center;
  width: 240px;
  height: 240px;
  border-radius: 50%;
  overflow: hidden;
  border: 8px solid var(--light-grey);
}

#profilePic {
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

.ice-card-barcode {
  max-width: 180px;
  margin: 0 auto;
}

.barcode-text {
  font-size: var(--heading6);
  text-align: center;
}

.ice-card-profile-img img,
.ice-card-barcode img {
  height: 100%;
  width: 100%;
}

.ice-card-profile-img img {
  object-fit: cover;
  object-position: center;
}

.ice-card-barcode img {
  object-fit: cover;
}
.my-offers {
  background-color: var(--blue);
  color: #fff;
  padding: 2rem 2rem 4rem;
  border-radius: 1rem;
}

.my-offers h2 {
  font-weight: 600;
  text-align: center;
  color: #fff;
}

.my-offers-container {
  display: flex;
  gap: 1rem;
  margin-top: 2rem;
  flex-wrap: wrap;
}

.my-offers-container .my-offer-card {
  flex: 1;
  border-radius: 1rem;
  min-height: 280px;
  display: flex;
  flex-direction: column;
position: relative;
  width: calc((100% - 8rem) / 4);
}

.my-offers-container .my-offer-card .top-half {
  background-color: var(--dark-blue);
  /* padding: 1rem; */
  height: 50%;
  border-radius: 1rem 1rem 0 0;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  overflow: hidden;
}
.my-offers-container .my-offer-card .top-half .stop-sign {
  position: absolute;
  right: 0;
  bottom: -10px;
  width: 90px;
}

.my-offers-container .my-offer-card .top-half img {
  height: 100%;
  width: 100%;
  object-fit: cover;
  object-position: right;
  border-radius: 1rem 1rem 0 0;
}

.my-offers-container .my-offer-card .bottom-half {
  background-color: #fff;
  padding: 1rem;
  height: 50%;
  border-radius: 0 0 1rem 1rem;
}

.my-offers-container .my-offer-card .bottom-half h5, .my-offers-container .my-offer-card .bottom-half h6 {
  line-height: 1.25;
}

.my-offers-container .my-offer-card .bottom-half h5 {
  font-size: 12.5px;
  margin-bottom: 6px;
}

.my-offers-container .my-offer-card .red-btn {
  position: absolute;
  bottom: -14px;
  padding: 5px;
  font-size: var(--smaller);
  left: 50%;
  transform: translateX(-50%);
  min-width: 85px;
  border-radius: 8px;
}


.transactions-container {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.transactions-container-scroll {
  height: 130vh;
  overflow-y: scroll;
}

.transactions-container .transaction {
  background-color: #fff;
  border-radius: 1rem;
  padding: 1.5rem 1rem 1.5rem 3rem;
  display: flex;
  gap: 2rem;
  align-items: flex-end;
  justify-content: space-between;
}

.transaction-price {
  display: flex;
  gap: 2rem;
  justify-content: flex-end;
  height: 100%;
  width: 20%;
  min-width: 120px;
}

.transaction-details {
  display: flex;
  gap: 2rem;
  width: 80%;
}
.transactions-container .transaction .transaction-details div {
  width: 50%;
}

.transaction-price .chevron-container {
  align-self: center;
}

.transactions-container .transaction .price {
  align-self: flex-start;
  width: 60px;
}
.transactions-container .transaction .purchase-type {
  color: var(--dark-blue);
  font-weight: bold;
  font-size: var(--heading6);
}

.transactions-container .transaction .chevron-container {
  width: 40px;
  height: 40px;
  min-width: 40px;
  min-height: 40px;
}

.chevron-container img {
  height: 100%;
  width: 100%;
}

.transactions-container .transaction .purchase-details {
  width: 45%;
}

.transaction h3 {
  line-height: 1;
}

#full-purchase-history {
  align-items: center;
}

.ice-account-details-container .pad-left {
  padding-left: 3rem;
}

.ice-account-details-container .dark-blue-bg {
  padding: 4rem;
  border-radius: 2rem;
}

.ice-account-details-container .dark-blue-bg > * {
  margin-bottom: 1rem;
}
.ice-account-details-container .dark-blue-bg .larger-text {
  font-size: var(--heading6);
}
.ice-account-details-container .dark-blue-bg .bold-text {
  font-weight: 600;
}
.ice-account-details-container .dark-blue-bg .btns-container {
  margin-bottom: 0;
  justify-content: flex-end;
}
.ice-account-details-container .dark-blue-bg h2 {
  font-size: var(--heading2);
}
.perk {
  background-color: var(--blue);
  color: #fff;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
  border-radius: 1rem;
  position: relative;
  padding: 2rem;
  flex: 1;
  margin-bottom: 2rem;
  text-align: center;
}

.perk .red-btn {
  position: absolute;
  bottom: -23px;
}
.perk .btn-sml {
  padding: 0.5rem 1rem;
}
.white-container {
  background-color: #fff;
  border-radius: 1rem;
  padding: 2rem 4rem;
}

.white-container h3,
.profile-subheading {
  display: flex;
  justify-content: space-between;
}

.white-container h3 {
  margin-bottom: 2rem;
  font-size: var(--heading4-5);
}

.profile-subheading {
  font-size: var(--heading4);
}

.profile-subheading-margin-top {
  margin-top: 2rem;
}

.profile-subheading .active-state {
  background-color: var(--dark-blue);
  color: #fff;
  padding: 0 1rem;
  height: fit-content;
  border-radius: 0.5rem;
}

.edit-my-details {
  text-decoration: underline;
  cursor: pointer;
  transition: all 250ms ease-in-out;
}
.edit-my-details:hover,
.edit-my-details:focus {
  color: var(--red);
}

.profile-flex {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}

.profile-my-details-flex {
  display: flex;
  gap: 2rem;
  flex-wrap: wrap;
  margin-top: 2rem;
}
.profile-my-details-flex div {
  width: calc(33% - 2rem);
}

.profile-form {
  max-width: 700px;
}

.profile-form input,
.profile-form .custom-select {
  padding: 2rem;
  border: var(--dark-blue-alpha) solid 2px;
  border-radius: 1rem;
  width: 100%;
  /* max-width: 500px; */
}
.profile-form .custom-select .select-selected:after {
  top: 40%;
}

.profile-form .custom-select .select-selected:before {
  top: 45%;
}
.profile-form .custom-select .select-selected.select-arrow-active:before {
  top: 34%;
}

.profile-form .form-flex {
  display: flex;
  gap: 2rem;
  width: 100%;
  align-items: flex-end;
}

.profile-form .form-flex .double-flex {
  display: flex;
  flex: 80%;
  gap: 2rem;
  align-items: flex-end;
}

.profile-form .form-flex .double-flex .input-container {
  width: 50%;
}
.profile-form .form-flex .single-flex {
  flex: 40%;
}

.profile-form .form-flex > div {
  flex: 33%;
}

.profile-form label {
  display: block;
}

.profile-form .input-container {
  position: relative;
  margin-bottom: 1.5rem;
  /* max-width: 500px; */
}

.profile-form .toggle-icon {
  position: absolute;
  cursor: pointer;
  right: 3rem;
  top: 50%;
  width: 24px;
}

.profile-form .select-items div,
.profile-form .select-selected, #profile-edit-last-name {
  font-size: var(--small);
  font-weight: normal;
  line-height: 1.25;
}

.profile-form .select-items {
  background-color: #fff;
  margin-top: -0.5rem;
  padding: 0 0.5rem;
  width: 105%;
}

.profile-form .postcode {
  width: 200px;
}

#edit-my-details-form label {
  font-weight: bold;
  font-size: var(--heading6);
  color: var(--dark-blue);
}

.log-in-warning {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 1rem;
  height: 100%;
  text-align: center;
}

.log-in-warning .open-login {
  width: 100%;
  max-width: 250px;
}

.family-member-container .ice-card-membership-name-btn:hover, 
.family-member-container .ice-card-membership-name-btn:focus {
  background-color: #fff;
}

.account-alert {
  background-color: var(--blue);
  color: #fff;
  padding: 1rem;
  border-radius: 1rem;
}

/* MY-ACOUNT-PATCH */
.patch-intro {
  display: flex;
  gap: 2rem;
  flex-direction: column;
}
.patch-intro .blue-bg {
  padding: 4rem;
  display: flex;
  border-radius: 4rem;
  position: relative;
  justify-content: space-between;
  align-items: flex-end;
  position: relative;
}

.patch-intro .yellow-bg {
  background-color: var(--yellow);
  color: var(--dark-blue);
  padding: 1.5rem 4rem;
  border-radius: 4rem;
}

.bullet-list-item {
  display: flex;
  gap: 1rem;
  align-items: center;
  margin-bottom: 1.5rem;
  color: #fff;
}
.patch-intro .bullet-list-item p {
  margin-bottom: 0;
  font-weight: 600;

  line-height: 1.25;
}
.bullet-list-item img {
  height: 24px;
  width: 24px;
}

.patch-intro .price {
  border-radius: 50%;
  background-color: var(--dark-blue);
  color: #fff;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 2rem;
  height: 180px;
  width: 180px;
  font-weight: 600;
}

.patch-intro .price span:last-of-type {
  font-size: var(--heading4);
  line-height: 1;
}

.ice-account-details-container .patch-intro .price {
  transform: translateX(50%);
}
.ice-account-details-container .patch-intro .price.patch-price {
  transform: translateX(0);
}
.red-btn-abs {
  position: absolute;
  bottom: 0;
  transform: translateY(50%);
}

.patch-intro .blue-bg h2 {
  font-size: var(--heading2);
  font-weight: 800;
  margin-bottom: 0;
  position: relative;
  line-height: 1.25;
}
.patch-intro .blue-bg h2 img {
  position: absolute;
  top: -10px;
  right: -150px;
  width: 120px;
}
.patch-intro .blue-bg h3 {
  font-size: var(--heading3);
  font-weight: 500;
}

.patch-intro .blue-bg h4 {
  font-size: var(--heading6);
}
.patch-intro .yellow-bg h4 {
  font-size: var(--heading4);
}

.img-container {
  border-radius: 4rem;
}
.patch-intro .img-container {
  /* max-height: 325px; */
  position: relative;
}
.patch-intro .img-container .note {
  position: absolute;
  background-color: var(--dark-blue);
  color: #fff;
  border-radius: 2rem;
  padding: 1rem 2rem;
  font-size: var(--heading4);
  font-weight: 600;
  right: 0;
  top: 3rem;
}
.patch-intro .profile-patch-flex .img-container .note {
  font-size: var(--heading6);
  font-weight: 600;
  border-radius: 1rem;
  right: 0;
  top: unset;
  bottom: 2rem;
}

.patch-intro .btns-container {
  display: flex;
  gap: 1rem;
}

.ice-account-details-container .patch-intro .ice-account-patch-membership.btns-container {
  margin-top: -2rem;
}

.img-container img,
.gif-container img {
  border-radius: 4rem;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.profile-patch-flex {
  display: flex;
  gap: 2rem;
}

.profile-patch-flex .img-container,
.profile-patch-flex .text-container {
  flex: 1;
}

.profile-patch-flex .text-container p {
  margin-bottom: 1rem;
}

/* infinite scroller */
.marquee {
  overflow: hidden;
  width: 100%;
  max-width: 50vw;
  margin-bottom: 2rem;
}

.marquee.my-marquee-f-and-b-1 {
  display: flex;
  max-width: 43.5vw;
}

.my-marquee-f-and-b-1-heading {
  display: block;
}
.marquee.my-marquee-f-and-b-2 {
  max-width: unset;
  display: none;
}
.my-marquee-f-and-b-2-heading {
  display: none;
}

@media only screen and (max-width: 1650px) {
  .marquee.my-marquee-f-and-b-1 {
    max-width: 50vw;
  }
}
@media only screen and (max-width: 1500px) {
  .marquee.my-marquee-f-and-b-1 {
    max-width: 45vw;
  }
}
@media only screen and (max-width: 1300px) {
  .marquee.my-marquee-f-and-b-1 {
    max-width: 41.5vw;
  }
}
@media only screen and (max-width: 1100px) {
  .marquee.my-marquee-f-and-b-1 {
    max-width: 40vw;
  }
}

.marquee.marquee-left .marquee-inner {
  -webkit-animation: marquee-left 5s linear infinite;
  animation: marquee-left 5s linear infinite;
}
.marquee.marquee-right .marquee-inner {
  -webkit-animation: marquee-right 5s linear infinite;
  animation: marquee-right 5s linear infinite;
}
.marquee-inner {
  align-items: center;
  display: flex;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  will-change: transform;
}
.marquee-content {
  display: flex;
  align-items: center;
  white-space: nowrap;
  background-color: #fff;
}

.marquee-content .sqr-logo {
  width: 100px;
  margin-right: 4rem;
}
@-webkit-keyframes marquee-left {
  0% {
    transform: translateZ(0);
  }
  to {
    transform: translate3d(-100%, 0, 0);
  }
}
@keyframes marquee-left {
  0% {
    transform: translateZ(0);
  }
  to {
    transform: translate3d(-100%, 0, 0);
  }
}
@-webkit-keyframes marquee-right {
  0% {
    transform: translate3d(-100%, 0, 0);
  }
  to {
    transform: translateZ(0);
  }
}
@keyframes marquee-right {
  0% {
    transform: translate3d(-100%, 0, 0);
  }
  to {
    transform: translateZ(0);
  }
}

/* FEDDBACK PAGE */
.feedback-form-container {
  width: 100%;
  max-width: 1000px;
}

/* .feedback-form-container p {
  color: var(--black-alpha-75);

} */
.feedback-form-container sup {
  color: var(--red);
}

/* PATCH PAGE */
/* PATCH SUCCESS PAGE */
.success-page {
  display: flex;
  height: 100vh;
  overflow: hidden;
}

.success-page-img-container,
.success-page-text-container {
  flex: 1;
}

.success-page-text-container {
  padding: 4rem;

  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

.success-page-text-container-inner {
  max-width: 600px;
}

.success-page-text-container h1 {
  font-size: var(--heading3);
  text-align: center;
}
.success-page-text-container p {
  font-size: var(--body);
}

.success-page-text-container h1,
.success-page-text-container p {
  margin-bottom: 2rem;
}

.success-page-img-container img {
  height: 100%;
  width: 100%;
  object-fit: cover;
}

.patch-intro .blue-bg {
  padding: 4rem;
  display: flex;
  border-radius: 4rem;
  position: relative;
  justify-content: space-between;
  align-items: flex-end;
}
.patch-intro .blue-bg h2 {
  font-size: var(--heading2);
  font-weight: 800;
  margin-bottom: 0;
  position: relative;
}
.patch-intro .blue-bg h2 img {
  position: absolute;
  top: -10px;
  right: -100px;
  width: 120px;
}

.patch-intro .blue-bg h3 {
  font-size: var(--heading3);
  font-weight: 500;
}

.img-container {
  border-radius: 4rem;
}
.patch-intro .img-container {
  /* max-height: 325px; */
  position: relative;
}
.patch-intro .img-container .note {
  position: absolute;
  background-color: var(--dark-blue);
  color: #fff;
  border-radius: 2rem;
  padding: 1rem 2rem;
  font-size: var(--heading4);
  font-weight: 600;
  right: 0;
  top: 3rem;
}

.img-container img,
.gif-container img {
  border-radius: 4rem;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.patch-intro {
  display: flex;
  flex-direction: column;
  gap: 4rem;
}

.patch-intro.food-and-drink-intro {
  gap: 0;
}

.patch-intro-flex {
  display: flex;
  gap: 2rem;
}

.patch-intro-flex-1 {
  gap: 4rem;
}

.patch-intro h2 {
  font-size: var(--heading3);
  margin-bottom: 2rem;
  font-weight: 500;
}
.patch-intro p {
  font-size: var(--heading6);
  margin-bottom: 2rem;
}
.patch-intro .yellow-bg p {
  font-size: var(--heading6);
  margin-bottom: 0;
}
.patch-intro p span {
  font-weight: 600;
}

.patch-intro-flex-1 .flex-item-1 {
  flex: 1.5;
}
.patch-intro-flex-1 .flex-item-2 {
  flex: 1.25;
}
.patch-intro-flex-2 .flex-item-1 {
  flex: 1.5;
  position: relative;
}
.patch-intro-flex-2 .flex-item-2 {
  flex: 1;
}

.my-account-memberships-flex {
  flex-direction: column;
  gap: 4rem;
}
.my-account-memberships-flex .membership-details-card.blue-bg .price{
 top: 2rem;
 right: 11rem;
}


.patch-intro .price {
  border-radius: 50%;
  background-color: var(--dark-blue);
  color: #fff;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 2rem;
  height: 180px;
  width: 180px;
  font-weight: 600;
}
.patch-intro .price span:first-of-type {
  font-size: var(--heading0);
  line-height: 1;
}
.patch-intro .price span:last-of-type {
  font-size: var(--heading5);
  line-height: 1;
}

.patch-intro .white-bg {
  color: #010e2d;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 4rem;
  height: unset;
}
.patch-intro .white-bg h2 {
  font-size: var(--heading2);
  font-weight: 800;
  margin-bottom: 0;
}

.patch-intro .white-bg h3 {
  font-size: var(--heading3);
  font-weight: 500;
}
.patch-intro .white-bg .red-btn {
  margin-top: 2rem;
}

.patch-intro .white-bg .price {
  transform: translateX(1.5rem);
}

.deals-container {
  width: 100%;
}
.deals-container img {
  width: 100%;
  max-width: 800px;
}

@media only screen and (max-width: 700px) {
  .deals-container-2 img {
    width: 100%;
    max-width: 350px;
  }
}


.membership-details-card.dark-blue-bg .price {
  background-color: var(--blue);
  position: absolute;
  top: 1rem;
  right: 1rem;
}
.membership-details-card.blue-bg .price {
  position: absolute;
  /* top: -3rem; */
  top: 2rem;
  right: 3rem;
}

.membership-details-card.blue-bg .price span:first-of-type {
  font-size: var(--heading01);
}
.membership-details-card.blue-bg .price span:last-of-type {
  font-size: var(--heading4);
}

.memberships-offers-carousel-container {
  /* background-color: var(--yellow); */
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  text-align: center;
  /* min-height: 350px; */
  border-radius: 2rem;
}

.patch-intro .memberships-offers-carousel-container {
 flex: 1;
}
.patch-intro .memberships-offers-carousel-container .single-item {
 max-width: 600px;
}
.slick-list {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}


.patch-dark-blue-bg.memberships-yellow-bg {
  flex-direction: column;
  padding-top: 6rem;
  gap: 8rem;
}

#rewards-find-out-more-btn-top {
  display: block;
}
#rewards-find-out-more-btn-bottom {
  display: none;
}
.dark-blue-bg.rewards .patch-dark-blue-bg {
  max-width: 1800px;
  margin: 0 auto;
  align-items: center;
}
.dark-blue-bg.holidays-dark-bg .patch-dark-blue-bg {
  max-width: 1800px;
  width: 100%;
  margin: 0 auto;
  align-items: center;
  padding: 0;
}

.dark-blue-bg.holidays-dark-bg .patch-dark-blue-bg .blue-bg {
  padding: 3rem 6rem;
  align-items: flex-start;
}
.dark-blue-bg.holidays-dark-bg .patch-dark-blue-bg .blue-bg .bullet-list-item p{
  line-height: 1.75;  
  text-align: left;
}


.dark-blue-bg.holidays-dark-bg .patch-dark-blue-bg .blue-bg .bullet-list-item {
  margin-bottom: 1.5rem;
}

.dark-blue-bg.holidays-dark-bg .patch-dark-blue-bg .blue-bg .price {
  position: static;
  align-self: flex-start;
  margin-top: 0;
  transform: translateX(50px);
}
.dark-blue-bg.holidays-dark-bg .patch-dark-blue-bg .blue-bg .deals-container {
  width: 480px;
}


.dark-blue-bg.holidays-dark-bg .patch-dark-blue-bg h2 img {
  position: absolute;
  width: 80px;
}

.dark-blue-bg.rewards .patch-dark-blue-bg .red-btn {
  margin: 2rem 0 0;
}

.dark-blue-bg.rewards .patch-dark-blue-bg .blue-bg-container {
  display: flex;
  background-color: var(--blue);
  border-radius: 2rem;
  width: 75%;
}
.dark-blue-bg.rewards
  .patch-dark-blue-bg
  .blue-bg-container
  .blue-bg
  .img-container {
  position: absolute;
  top: -3rem;
  left: 50%;
  transform: translate(-50%);
  min-width: 140px;
}
.dark-blue-bg.rewards .patch-dark-blue-bg .heading-container {
  display: flex;
  flex-direction: column;
  width: 30%;
}
/* .patch-intro .white-bg .price {
  height: 124px;
  width: 124px;
  padding: 1rem;
  margin-right: 6rem;
}

.patch-intro .white-bg .price span:first-of-type{
  font-size: var(--heading0);
  line-height: 1;
}
.patch-intro .white-bg .price span:last-of-type{
  font-size: var(--body);
  line-height: 1;
  
} */

.curve {
  float: right;
  shape-outside: circle(50%);
}
.dark-blue-bg {
  background-color: var(--dark-blue);
  color: #fff;
  position: relative;
}

.patch-dark-blue-bg {
  display: flex;
  gap: 2rem;
  padding: 12rem 6rem 6rem;
  position: relative;
}
.patch-dark-blue-bg .blue-bg {
  padding: 3rem;
  border-radius: 4rem;
  position: relative;
  flex: 1;
  padding-top: 120px;
  text-align: center;
}
.patch-dark-blue-bg h2 {
  font-size: var(--heading01);
  flex: 1.5;
  margin: auto;
  line-height: 1.25;
}
.patch-dark-blue-bg .blue-bg h3 {
  font-size: var(--heading3);
  margin-bottom: 1rem;
}
.patch-dark-blue-bg .blue-bg p {
  margin-bottom: 1rem;
  font-size: var(--heading6);
}
.patch-dark-blue-bg .blue-bg .icon {
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: var(--red);
  padding: 2rem;
  position: absolute;
  border-radius: 50%;
  top: -15%;
  left: 50%;
  transform: translate(-50%);
}

.flex {
  display: flex;
  gap: 4rem;
}

/* FAQS */
.faqs {
  display: flex;
  gap: 2rem;
}

.faqs .left,
.faqs .right {
  display: flex;
  flex-direction: column;
  flex: 1;
  gap: 1rem;
}

.faq {
  position: relative;
  cursor: pointer;
}

.faq p {
  cursor: default;
}

.faq img {
  position: absolute;
  top: 10px;
  right: 10px;
  width: 32px;
}

.faq h4 {
  background-color: #fff;
  color: var(--blue);
  padding: 1rem;
  border-radius: 1rem;
  padding-right: 5rem;
}

.blue-bg.birthday-page .faq p {
  display: none;
  padding: 2rem;
  font-size: var(--body);
}

.rotated {
  transform: rotate(180deg);
}
.blue-bg.birthday-page h2 {
  font-size: var(--heading2);
  margin: 1rem 0 2rem;
  line-height: 1.25;
  text-align: center;
}

.blue-bgs-flex {
  flex: 2.5;
  display: flex;
  gap: 4rem;
}

.blue-bgs-flex .dark {
  background-color: var(--dark-blue);
}

.rotated {
  transform: rotate(180deg);
}

.slide-msg {
  background-color: var(--yellow);
  transform: translateX(-50%);
  opacity: 0;
  transition: transform 1s ease-in-out, opacity 1s ease-in-out;
  transition-delay: 1.5s;
}

.show {
  transform: translateX(0);
  opacity: 1;
}

.yellow-bg {
  color: var(--dark-blue);
  padding: 2rem 0;
}

.yellow-bg h4 {
  font-size: var(--heading4);
}

.yellow-bg p {
  font-size: var(--heading6);
}

.img-and-anim {
  position: relative;
  position: absolute;
  top: -15%;
  left: 50%;
  transform: translate(-50%);
  width: 0%;
  height: 20px;
}

.img-and-anim .img-container,
.img-and-anim .gif-container {
  position: absolute;
  top: -2rem;
  right: 0;
  bottom: 0;
  transform: translateX(50%);
  height: 190px;
  width: 190px;
}

.img-and-anim .img-container,
.img-and-anim .img-container {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  border-radius: 50%;
  height: 190px;
  width: 190px;
}

.gif-container.hide {
  display: none;
}

#revealBtn {
  display: none;
}

.membership-faqs #revealBtn, .patch-faqs #revealBtn {
  display: block;
}

#last-line-mem-intro-2 {
  display: none;
}
#last-line-mem-intro-1 {
  display: block;
}

.calendar-result-container .patch-red {
  background-color: var(--yellow);
  color: #111;
  padding: 0.5rem;
  border-radius: 8px;
}
.calendar-result-container .patch-blue {
  background-color: var(--dark-blue);
  color: #fff;
  padding: 0.5rem;
  border-radius: 8px;
}

.calendar-result-container .patch-green {
  background-color: #fff;
  color: #111;
  padding: 0.5rem;
  border-radius: 8px;
}

/* FIND YOUR NEAREST RINK */
.find-rink-details-container {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
}

.find-rink-details-container > div {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  flex: 1.5;
}

.find-rink-details-container > div:first-child {
  flex: 1;
}

.find-rink-details-container > div:last-child {
  justify-content: center;
  align-items: stretch;
  flex: 1;
  min-width: 275px;
  max-width: 300px;
}
/* 
.find-rink-details-container .opening-times{
  display: flex;
  flex-direction: row;
  gap: 3rem;
} */

.find-rink-details-container .address {
  line-height: 1.5;
}

.find-rink-details-container .opening-times > div {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.find-rink-details-container img {
  height: 20px;
}

.find-rink-details-container .location-distance {
  display: flex;
  justify-content: flex-start;
  align-items: center;

  gap: 0.5rem;
}

.find-rink-details-container .opening-time {
  display: flex;
  gap: 1rem;
}

.find-rink-details-container .opening-time h3:first-child,
.find-rink-details-container .opening-time p:first-child {
  flex: 0.5;
}
.find-rink-details-container .opening-time h3:last-child,
.find-rink-details-container .opening-time p:last-child {
  flex: 1;
}

.find-rink-form {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 1rem;
}

.find-rink-form input {
  border: var(--dark-blue) 2px solid;
  border-radius: 1rem;
  padding: 1rem;
  width: 80%;
  max-width: 400px;
}
.find-rink-form .input-flex {
  align-items: stretch;
  justify-content: center;
}
.find-rink-form a img {
  height: 32px;
  width: 32px;
}
.find-rink-form a {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 1rem;
}

.event-map {
  flex: 2;
}

.event-flex {
  display: flex;
  justify-content: space-between;
}

.event p,
.event h2,
.event .subheading-thin,
.event .subheading-thin-white,
.event strong {
  margin-bottom: 1.5rem;
}

.h2-link {
  color: var(--red);
  font-size: var(--small);
  cursor: pointer;
  transition: transform 250ms;
}

.h2-link:focus,
.h2-link:hover {
  transform: scale(1.05);
}

.alert {
  display: none;
  position: absolute;
  background-color: var(--dark-blue-alpha-strong);
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  z-index: 999;
}

.location-alert-inner {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-color: white;
  border: 1px solid #ccc;
  padding: 20px;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
  z-index: 1000;
  text-align: center;
  border-radius: 1rem;
  max-width: 400px;
}

.alert button {
  padding: 10px 20px;
  border: none;
  background-color: var(--blue);
  color: white;
  cursor: pointer;
  border-radius: 1rem;
  width: 45%;
  margin: 10px 5px;
}


.alert button#deny-button {
  background-color: var(--red);
}

.alert button:hover {
  opacity: 0.8;
}

#select_attendees {
  position: absolute;
  /* top: 50px; */
  top: 85px;
  background-color: #fff;
  z-index: 10;
  width: 100%;
  left: 0;
  /* left: -35%; */
  /* min-width: 280px; */
  min-width: 310px;
  /* border-radius: 0 0 2rem 2rem; */
  border-radius: 2rem;
}

#select_attendees.hide {
  display: none;
}

#selection {
  padding: 1rem;
  padding-bottom: 0.5rem;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  border-radius: 0 0 2rem 2rem;
}
.q {
  cursor: pointer;
  margin-left: 0.5rem;
  border: var(--red) 1px solid;
  padding: 0 7px;
  border-radius: 50%;
  font-size: 10px;
}

.band-name {
  /* color: var(--dark-blue); */
  color: var(--label-grey);
  display: flex;
  align-items: flex-start;
  position: relative;
  /* font-weight: bold; */
}

.price_clickable {
  font-weight: normal;
}

hr {
  margin-bottom: 6px;
}

hr:last-of-type {
  display: none;
}

.alert-danger {
  background-color: var(--red-50);
  padding: 0.5rem;
}

.quickbook-option p.public-subscript,
.quickbook-option span.public-subscript {
  font-size: var(--smaller);
  color: var(--dark-blue-alpha-strong);
  position: absolute;
  top: 2rem;
  width: 100%;
  min-width: 100px;
  max-width: 250px;
  text-align: center;
  z-index: 10;
  background-color: var(--dark-blue);
  color: #fff;
  display: none;
}
.quickbook-option p.public-subscript.show,
.quickbook-option span.public-subscript.show {
  display: block;
}

.checkout .public-subscript {
  font-weight: normal;
  line-height: 1;
  margin-right: 1rem;
}

.checkout .darkgrey {
  color: #555;
}

.checkout #attendees-container p.output {
  line-height: 1;
  font-weight: bold;
  font-size: var(--heading6);
  margin-top: 0;
}

/* CALENDAR STYLES  */
/* Calendar container */
.container-calendar {
  background: #ffffff;
  /* padding: 15px; */
  padding: 1rem 1rem 1.5rem;
  /* width: 350px; */
  width: 100%;
  /* margin: 1rem auto 0 4rem; */
  overflow: auto;
  /* border: var(--very-dark-blue) solid 2px; */
  border-radius: 2rem 2rem 0 0;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  border-bottom: none;
}
.checkout .container-calendar {
  width: 80%;
}

.checkout .container-calendar,
#gv-schedule-calendar .container-calendar {
  border: none;
  border-radius: 2rem;
}

/* Buttons in the calendar */
.button-container-calendar .button {
  cursor: pointer;
  background: var(--red);
  color: #fff;
  border-radius: 4px;
  width: 32px;
  height: 32px;
  border: none;
  border-radius: 50%;
  padding: 5px;
}

.button-container-calendar .button img {
  height: 100%;
  width: 100%;
}

/* Calendar table */
.table-calendar {
  /* border-spacing: 1rem; */
  border-spacing: 4px;
  width: 100%;
}

.table-calendar td,
.table-calendar th {
  text-align: center;
  vertical-align: middle;
  border-radius: 1rem;
  width: 39px;
  min-width: 39px;
  /* height: 39px; */
  height: 46px;
  min-height: 39px;
}
.table-calendar td {
  cursor: pointer;
  width: 12%; /* Adjust the width as needed */
  box-sizing: border-box; /* Include padding and border in the element's total width and height */
  padding: 8px 0 5px; /* Adjust the padding as needed */
}
/* Date picker */
.date-picker.selected {
  font-weight: bold;
  /* outline: 2px dashed var(--blue); */
}

.date-picker.disabled {
  color: #ccc;
  pointer-events: none;
  background-color: #f9f9f9;
}

.date-picker.selected span {
  border-bottom: 2px solid currentColor;
}

.quickbook-detail-with-key {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  line-height: 1;
}

/* .session-start-end {
  position: relative;
  margin-bottom: -0.5rem;
} */

.available-slots {
  margin-top: -0.5rem;
}

.key-icon-container {
  width: 32px;
  display: inline-block;
}

.false-dropdown .key-icon-container {
  margin-left: 6px;
  position: absolute;
}

.key-icon-container img {
  width: 100%;
  height: 100%;
}

.key-container {
  padding: 1rem;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  background-color: #fff;
  /* border: 2px solid #000; */
  border-top: none;
  border-radius: 0 0 2rem 2rem;
  margin-top: -1rem;
}

.key-container > span {
  /* width: calc(50% - 10px); */
  width: calc(25% - 10px);
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 12px;
}

.birthday-qb-calendar .key-container > span {
  width: calc(50% - 10px);
}

.checkout .key-container {
  width: 90%;
  border: none;
  background-color: transparent;
}

.checkout .checkout-btn-flex {
  margin-top: 0.5rem;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
}
.checkout .checkout-btn-flex.disabled .red-btn {
  cursor: default;
  opacity: 0.5;
}
.checkout .checkout-btn-flex.disabled .red-btn:hover {
  background-color: var(--red);
  color: #fff;
}

.checkout-btn-flex .btn-full-width-thin {
  font-size: var(--body);
}

.checkout #continue-sessions,
.checkout #summary-continue {
  display: none;
}

.checkout .tickboxes-flex {
  display: none;
  /* display: flex; */
  flex-direction: column;
  width: 100%;
}
.tickboxes-flex label {
  display: block;
  margin-bottom: 1rem;
}
.tickboxes-flex label input {
  margin-right: 0.5rem;
  accent-color: var(--red);
}

/* .checkout .form-group-with-label input, */
/* .checkout .form-group textarea, */
.checkout .birthday-child-guests,
.checkout .birthday-child-gender,
.checkout .birthday-child-age,
.checkout .birthday-child-gender,
.checkout #bp-additional-info,
.checkout #bp-child-name,
.checkout #bp-child-dob
 {
  border: var(--dark-blue) solid 2px;
  border-radius: 8px;
}

.checkout #bp-child-name {
  max-height: 54px;
}

#details-container p.bp-specific-note {
  font-size: 12px;
  margin-top: 0;
  margin-bottom: 0.5rem;
  font-style: italic;
  font-weight: 600;
  color: var(--blue)
}

.checkout .birthday-child-guests,
.checkout .birthday-child-age,
.checkout .birthday-child-gender,
.checkout .checkout-choose-family-members {
  padding: 1.15rem;
}
.checkout #bp-child-dob {
  padding: 1.4rem;
}
.checkout #checkout-family-members {
  width: fit-content;
  margin-left: auto;
}
.checkout .birthday-child-guests .select-selected:after,
.checkout .birthday-child-guests .select-selected.select-arrow-active:after,
.checkout .birthday-child-age .select-selected:after,
.checkout .birthday-child-age .select-selected.select-arrow-active:after,
.checkout .birthday-child-gender .select-selected:after,
.checkout .birthday-child-gender .select-selected.select-arrow-active:after,
.checkout .checkout-choose-family-members .select-selected:after,
.checkout
  .checkout-choose-family-members
  .select-selected.select-arrow-active:after {
  top: 19px;
}
.checkout .birthday-child-guests .select-selected:before,
.checkout .birthday-child-age .select-selected:before,
.checkout .birthday-child-gender .select-selected:before,
.checkout .checkout-choose-family-members .select-selected:before {
  top: 22px;
}
.checkout .birthday-child-guests .select-selected.select-arrow-active:before,
.checkout .birthday-child-age .select-selected.select-arrow-active:before,
.checkout .birthday-child-gender .select-selected.select-arrow-active:before,
.checkout
  .checkout-choose-family-members
  .select-selected.select-arrow-active:before {
  top: 16px;
}
.checkout .birthday-child-guests .select-selected,
.checkout .birthday-child-age .select-selected,
.checkout .birthday-child-gender .select-selected,
.checkout .checkout-choose-family-members .select-selected {
  font-size: var(--body);
  font-weight: normal;
}

.checkout-choose-family-members.hide {
  display: none;
}
.checkout-choose-family-members {
  display: flex;
  flex-direction: column;
  background-color: var(--dark-blue);
  padding: 1rem;
  border-radius: 8px;
  position: relative;
  min-height: fit-content;
  left: 0;
  overflow-y: scroll;
}

.checkout-choose-family-members label {
  color: #fff;
  display: flex;
  gap: 1rem;
  cursor: pointer;
}
.checkout-choose-family-members label input {
  accent-color: var(--red);
}

.key-no-session,
.key-full,
.key-lots-of-space,
.key-limited-space {
  display: inline-block;
  width: 32px;
  height: 32px;
  /* border: solid 2px #000; */
  border-radius: 10px;
}
.checkout .key-no-session,
.checkout .key-full,
.checkout .key-lots-of-space,
.checkout .key-limited-space {
  border: none;
}

.key-no-session {
  background-color: transparent;
}
.key-no-session {
  background-color: var(--key-grey-blue);
}
.key-full,
.checkout .form-group-with-label input.ice-card-not-active {
  background-color: var(--key-red);
}
.key-lots-of-space,
.checkout .form-group-with-label input.ice-card-active {
  background-color: var(--key-green);
}

.ice-card-active {
  background-color: var(--key-green);
}

.key-limited-space {
  background-color: var(--key-yellow);
}

/* Header for month and year */
#monthAndYear {
  text-align: center;
  margin-top: 0;
  font-size: var(--heading5);
}

/* Navigation buttons */
.button-container-calendar {
  position: relative;
  margin-bottom: 1em;
  overflow: hidden;
  clear: both;
  display: flex;
  justify-content: space-around;
  align-items: center;
}

.date-picker.selected-date {
  background-color: var(--blue);
  color: #fff;
}

.calendar-result-container {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  /* margin-top: 2rem; */
  position: absolute;
  z-index: 12;
  left: 50%;
  transform: translateX(-50%);
  /* border-radius: 2rem; */
  width: 100%;
  /* max-height: 225px;
  overflow-y: scroll; */
}


.calendar-result-container p {
  color: #fff;
  background-color: var(--blue);
}
.quickbook .calendar-result-container p {
  color: var(--label-grey);
  background-color: #fff;
}

.quickbook .public-skate-calendar-result p {
  justify-content: space-between;
}

.calendar-result-container.hide {
  display: none;
}

.quickbook .calendar-result-container {
  padding: 0.5rem;
  top: 85px;
  border-radius: 6px;
  /* background-color: #fff; */
  min-width: 250px;
  gap: 0;
  overflow: hidden;
  max-height: unset;
}
.quickbook .blue-box-container .calendar-result-container {
  background-color: #fff;
}

.quickbook .table-calendar td{
  height: 40px;
}

.public-skate-calendar-result {
  background-color: var(--blue);
  color: #fff;
  border-radius: 1rem;
  padding: 1rem;
  /* min-width: 250px; */
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

.quickbook .public-skate-calendar-result {
  background-color: #fff;
  color: var(--label-grey);
  /* padding: 0 1rem; */
  padding: 0;
}

.public-skate-calendar-result.selected {
  border: var(--red) 4px solid;
}

.public-skate-calendar-result.no-click {
  opacity: 0.5;
}

.public-skate-calendar-result p {
  padding: 0;
  font-weight: normal;
  /* font-size: var(--body); */
  font-weight: bold;
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.public-skate-calendar-result span {
  font-weight: bold;
}

.calendar-result-container .session-start-end span {
  font-weight: normal;
  display: block;
}

.public-skate-calendar-result p:last-of-type {
  font-weight: normal;
}

.public-skate-calendar-result img {
  width: 28px;
}

.public-skate-key {
  width: 100%;
  display: flex;
  /* gap: 1rem; */
  flex-wrap: wrap;
  flex-direction: column;
  margin-top: 1rem;
  padding: 0 0.5rem;
}

.public-skate-key img{
  width: 24px;
}

.public-skate-key span {
  /* font-weight: bold; */
  color: var(--dark-blue);
  font-size: 1.1rem;
}

.public-skate-key .key-item {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.public-skate-key .key-item:nth-of-type(2) {
  margin-left: 0.75rem;
}

.public-skate-key .key-items{
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  gap: 0.5rem;
  padding: 5px;
}

.checkout .public-skate-key .key-items{ 
  padding: 0;
}

/* animations that show user they need to scroll */
.scroll-across {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  border-radius: 50px;
  cursor: pointer;
  z-index: 5;
  height: 30px;
  width: 50%;
  bottom: -8px;
  /* display: none; */
  border: 4px solid var(--yellow);
}

.scroll-across-container {
  position: relative;
  left: 0;
  top: -30px;
  pointer-events: none;
  height: 50px;
  display: none;
}

.scroll-across:before,
.scroll-across:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 20%;
  /* bottom: 2px; */
  border: 4px solid var(--yellow);
  height: 10px;
  width: 10px;
  transform: translate(100%, -50%) rotate(45deg);
  border-top: transparent;
  border-right: transparent;
  animation: scroll-across 2s ease-in-out infinite;
}

.scroll-across:after {
  right: 20%;
  animation-delay: 1s;
  opacity: 0;
}

@keyframes scroll-across {
  0% {
    opacity: 0;
  }
  30% {
    opacity: 1;
  }
  60% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    right: 90%;
  }
}

.banner {
  width: 110%;
  margin-left: -5%;
  object-fit: contain;
  max-height: 760px;
}

.banner-desktop {
  display: block;
}

.new-line-mobile {
  display: inline;
}

#menu-locs-container a, #allergen-info-locs-container a {
  display: block;
  text-decoration: none;
  line-height: 1.5;
  color: var(--label-grey);
  text-align: center;
  cursor: pointer;
  margin: 0.25rem 0;
}



#menu-locs-container a:first-of-type, #allergen-info-locs-container a:first-of-type {
  margin-top: 1rem;
}

.btn-flex-wide #allergen-info-btn, .btn-flex-wide #menu-btn {
  flex-direction: column;
}

.btn-flex-dropdown-container {
  flex: 1;
}
.btn-flex-dropdown-container .red-btn, .btn-flex-dropdown-container #menu-locs-container, .btn-flex-dropdown-container .dark-blue-btn, .btn-flex-dropdown-container #allergen-info-locs-container{
  width: 100%;
}

.confirm-and-pay-container {
  margin-top: 1rem;
}

/* HOLIDAYS PAGE */
.holidays-cards-outer-flex {
  display: flex; 
  gap: 2rem;
}

.highlight-offer {
  position: absolute;
  background-color: var(--pink);
  padding: 1rem 2rem;
  color: #fff;
  font-weight: bold;
  font-size: var(--heading6);
  left: 0;
  top: 4rem;
}

.highlight-offer-red {
  background-color: var(--red);
  border-radius: 0 1rem 1rem 0;
}

.holidays-cards-inner-flex {
  display: flex; 
  flex-wrap: wrap; 
  flex: 2; 
  gap: 2rem
}

.holidays-dark-bg .patch-dark-blue-bg h2, .holidays-dark-bg .patch-dark-blue-bg h3 {
  text-align: left;
  width: fit-content;
  margin: 0;
}

.upcoming-events-cards-container.holiday-food-and-drink-container {
  height: unset;
  gap: 2rem;
  padding-right: 2rem;
  padding-bottom: 2rem;
}

.holiday-food-and-drink-container img {
  border-radius: 1.5rem;
  height: 250px;
  object-fit: cover;
  object-position: center;
}
.holiday-food-and-drink-container .info-card-heading {
  font-size: var(--heading5);
}
.holiday-food-and-drink-container .info-card-text {
  padding: 2rem 0;
}
.holiday-food-and-drink-container .info-card-info {
  font-size: var(--body);
}
.holiday-food-and-drink-container a {
 margin-top: 1rem;
}

.food-offerings-dropdown {
  display: flex; 
  gap: 1rem; 
  align-items: center;
  cursor: pointer;
}

.food-offerings {
  position: absolute;
  background-color: var(--yellow);
  color: var(--dark-blue);
  padding: 1rem;
  z-index: 10;
  border-radius: 1rem
}

.skate-card .lesson-text .food-offerings-dropdown img {
  width: 30px; 
  margin-bottom: 0;
}

.food-and-drink-location-picker {
  flex: unset; 
  width: 50%;
}

.holidays h2 {
  margin-bottom: 1rem;
}
.holidays h2 span {
  font-size: var(--small);
}

.input-red-border {
  border: var(--red) 2px solid;
  border-radius: 1rem;
  display: flex;
  justify-content: space-between;
  height: 50px;
}

.input-red-border input {
  border: none;
  outline: none;
  padding: 0 .5rem;
  border-radius: 0.75rem;
}

.input-red-border p {
  background-color: var(--red);
  color: #fff;
  font-weight: bold;
  padding: 0.5rem 1rem;
  border-radius: 0.75rem;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  font-size: var(--small);
  width: 125px;
  cursor: pointer;
}

.input-red-border p.disabled {
  cursor: default;
  opacity: 0.5;
  pointer-events: none;
}

.extras-separator, #discounts, #voucher-code-input, #ic-discounts, .code-warning {
  display: none;
}

.code-warning {
  font-size: var(--smaller);
  background-color: var(--red);
  color: var(--dark-blue);
  padding: 0.5rem;
  margin-top: 0.5rem;
}


.checkout-title-and-stages-container {
  display: flex; 
  flex-direction: row-reverse; 
  justify-content: space-between;
}

.more-info-on-hover {
  color: #fff;
  background-color: var(--label-grey);
  border-radius: 50%;
  height: 16px;
  width: 16px;
  opacity: 0.75;
  font-size: var(--smaller);
  text-align: center;
  margin-top: -1rem;
  position: relative;
}

.more-info-on-hover .more-infobox {
  display: none;
  position: absolute;
  top: -85px;
  background-color: var(--dark-blue);
  z-index: 100;
  padding: 0.5rem;
  width: 225px;
}

.more-info-on-hover:hover .more-infobox {
  display: block;
}

.carer-heading{
  display: flex;
  cursor: pointer;
}
.carer-heading span {
  margin-left: 1rem;
}
.carer-heading span img {
  width: 24px;
}
.carer-ts-and-cs {
  color: var(--dark-blue);
  font-size: var(--small);
}
.carer-ts-and-cs.hide {
  display: none;
}

#details-container .input-flex {
  flex-wrap: wrap;
  position: relative;
  margin-bottom: 2rem;
}
#details-container .input-flex .form-group-with-label {
  width: calc(50% - 1rem);
}
#details-container .input-flex .clear-inputs {
  position: absolute;
  right: -2px;
  top: -10px;
}

.checkout-choose-lesson-type {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin-top: 1rem;
  gap: 1rem;
}
.checkout-choose-lesson-type div{
  width: calc(32.5% - 0.5rem);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  gap: 1rem;
}
.checkout-choose-lesson-type div p {
 font-weight: bold;
 line-height: 1;
 text-align: center;
}
.checkout-choose-lesson-type img{
  width: 100%;
  object-fit: cover;
  border-radius: 1rem;
  height: 150px;
}
.checkout-choose-lesson-type img.active {
  border:var(--red) solid 2px;
}

#register-interest-form input {
  color: var(--dark-blue)
}

.my-details-mobile, .my-account-mobile-menu {
  display: none;
}

#add-a-new-family-member {
  cursor: pointer;
}

.red-btn.disabled, .outline-red-btn.disabled {
  opacity: 0.5;
}

.red-btn.disabled:hover,
.red-btn.disabled:focus {
  background-color: var(--red);
  color: #fff;
}

.form-group-with-label.form-group-with-label-memberships {
  margin-top: -1.5rem;
}

.lesson-warning {
  display: block;
  margin-top: 2rem;
  border-radius: 1rem;
  background-color: var(--blue);
  color: #fff;
  padding: 1.5rem;
  display: none;
}

.news-posted-by {
  display: flex;
  flex-wrap: wrap;
  font-style: italic;
  opacity: 0.8;
  gap: 4rem;
}


.sign-up-btn {
  text-wrap: balance;
}

.ind-ice-card-setup #confirm-and-pay {
  margin-top: -65px;
}
.ind-ice-card-setup #add-a-new-family-member {
  margin-top: 1rem;
}

.res-only {
  display: none;
}

.cafe-flex {
  display: flex;
  flex-direction: column;
  font-weight: 600;
  line-height: 1.25;
}

.flip-card-back small {
  font-weight: 400;
}

.holidays-pass-img-holder {
  display: none;
  width: 50px;
}
.holidays-pass-img-holder img{
  width: 100%;
  height: 100%;
}

.hygiene-rating-mobile {
  display: none;
}

.hero-logo.hygiene-rating {
  position: absolute; 
  bottom: 6rem; 
  right: 6rem; 
  width: 300px; 
}
.hygiene-rating img {
 width: 100%;
 position: relative; 
 z-index: 10;
}

.lesson-logos {
  width: 100%;
  display: flex;  
  gap: 1rem; 
  align-items: center; 
  justify-content: space-around;
}

.lesson-logos img {
   /* width: 100%; 
   max-width: 400px; */
   width: 100%; 
   max-width: 400px;
   margin: auto; 
   display: block;

}


/* .carer-heading:hover + .carer-ts-and-cs{
  display: block;
} */
/* ===================================================================================================================================================================== */
/* ===================================================================================================================================================================== */
/* ====================================================================== MEDIA QUERIES ==================================================================================*/
/* ===================================================================================================================================================================== */
/* ===================================================================================================================================================================== */
/* ===================================================================================================================================================================== */
/* large laptops */
/* //302px x 1964px */
/* @media only screen and (min-width: 2500px) {
  .star-bg .price {
    background-color: pink;
  }
} */
@media only screen and (max-width: 1700px) {
  #users-planet-img-container {
    height: 500px;
    width: 500px;
  }

  #characters-container #users-flag {
    width: 225px;
    height: 225px;
    left: 78%;
  }

  #characters-container {
    right: 105px;
    bottom: 0;
  }

  #characters-container .astro {
    height: 750px;
  }

  
  #characters-container .astro:last-of-type {
    height: 700px;
    top: 24px;
  }

  #birthday-parties-text {
    width: 700px;
  }

  .character-1 {
    top: 60px;
    height: 250px;
    left: 250px;
  }

  .character-2 {
    height: 250px;
    left: unset;
    right: 400px;
    top: 15%;
    z-index: 2;
  }

  #planet-1 {
    width: 150px;
    height: 150px;
    top: 52%;
    left: 2%;
  }
  #planet-2 {
    top: 20%;
  }

  #planet-3 {
    width: 250px;
    height: 250px;
    top: 120px;
  }

  #planet-4 {
    width: 150px;
    height: 150px;
    top: 120px;
  }

  #planet-5 {
    right: 0;
    height: 120px;
    width: 120px;
    bottom: 210px;
  }
  #presents-container img {
    width: 120px;
  }

  #presents-container img:nth-of-type(2) {
    left: -20px;
  }
  #presents-container img:nth-of-type(3) {
    left: 75px;
  }
  #presents-container img:nth-of-type(4) {
    left: 150px;
  }
  #presents-container img:nth-of-type(5) {
    left: 240px;
  }
  #presents-container img:nth-of-type(6) {
    left: 325px;
  }
  #presents-container img:nth-of-type(7) {
    left: 400px;
  }

  .skate-card {
    width: calc(((100vw - 24rem) / 3));
  }

  .bd-star-1 {
    top: 25%;
  }
  .bd-star-2 {
    top: 120px;
    left: 450px;
  }
  .bd-star-3 {
    top: 130px;
  }
  .bd-star-5 {
    top: 60%;
  }
  .bd-star-6 {
    left: 55%;
    top: 40%;
  }
  .bd-star-7 {
    top: 50%;
    left: 45%;
  }

  .dark-blue-bg.rewards .patch-dark-blue-bg .blue-bg-container {
    width: 90%;
  }
  .activity-pages-flex {
    height: 520px;
  }
}
@media only screen and (max-width: 1440px) {
  .hero-section, .hero-section video { 
    height: 76vh;

  }

  .food-and-drink-hero {
    background-position: 15% center;
    /* background-size: contain; */
  }
  .container {
    padding-left: 9rem;
    padding-right: 9rem;
  }

  .container-wide {
    padding-left: 3rem;
    padding-right: 3rem;
  }
  .hero-flex h1 {
    font-size: var(--heading0);
  }
  .hero-flex h2 {
    font-size: var(--heading3);
  }

  .nav {
    top: 0;
  }
  .nav-links {
    padding: 4rem 0 4rem 8rem;
  }
  .nav-link {
    padding: 0.5rem;
    margin: 0 0.5rem;
  }

  .alpha-over-nav {
    /* height: 160px; */
  }

  .nav-dark .nav-inner {
    height: 10rem;
    background-color: var(--dark-blue);
  }

  .nav-dark .nav-logo-container,.nav-logo-container {
    left: 3rem;
  }

  .nav-dark .nav-icons {
    padding: 2rem 1rem;
  }

  .book-now-mobile {
    margin: 1rem 0 0;
  }

  .nav-icon-container {
    margin: 0 0.5rem;
  }
  .nav-toggle-container {
    display: block;
    width: 50px;
    height: 50px;
    position: relative;
    z-index: 100;
    margin: 0 0.25rem;
  }
  .nav-toggle-container img {
    width: 100%;
    height: 100%;
  }
  .nav-icons {
    position: absolute;
    right: 4rem;
    top: 1rem;
    align-items: center;
    padding: 2rem 0;
  }
  .nav-links {
    /* width:calc(100% + 4rem); */
    flex-direction: column;
    justify-content: center;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    background-color: var(--blue);
    text-align: center;
    transform: translateY(-150%);
    z-index: 11;
  }

  .nav-links-visible {
    transform: translateY(0);
  }

  .nav-link.dark-link {
    color: #fff;
  }

  @keyframes revealNavAnimation {
    0% {
      transform: translateY(-150%);
    }
    100% {
      transform: translateY(0);
    }
  }

  @keyframes hideNavAnimation {
    0% {
      transform: translateY(0);
    }
    100% {
      transform: translateY(-150%);
    }
  }

  .nav-logo-container {
    position: absolute;
    top: 3rem;
    left: 3rem;
    margin-top: 0;
  }

  .nav-link {
    margin: 1rem 0;
  }
  .mega-menu {
    top: 40px;
  }
  .mega-menu-primary-link {
    border-top: 4px solid white;
    border-left: 4px solid white;
  }

  .heading,
  .heading-white {
    font-size: var(--heading1);
  }
  /* .address h3,
  .find-us a {
    font-size: var(--heading4-5);
  } */

  .find-us.dark-blue-bg {
    padding: 4rem;
  }

  .heading-blue-underline::after,
  .heading-red-underline::after,
  .heading-white-underline::after {
    /* height: 7px; */
  }
  .blue-bg .subheading,
  .dark-blue-bg .subheading {
    font-size: var(--heading2);
  }

  .select-items div {
    font-size: var(--heading6);
  }

  .quickbook-option,
  .quickbook-btns {
    padding: 1rem;
  }
  .quickbook-option {
    /* padding-bottom: 2.5rem; */
  }

  .btn {
    font-size: var(--heading4);
  }


  .btn-sml {
    font-size: var(--heading6);
  }
  .dont-miss .flex,
  .flex-two-thirds {
    gap: 2rem;
  }

  .grey-blue-bg .yellow-bg h3,
  .grey-blue-bg .blue-bg h3,
  .grey-blue-bg .dark-blue-bg h3,
  .flip-card-front h3 {
    font-size: var(--heading4);
  }

  .btns-container div:last-of-type {
    width: 480px;
  }
  /* .find-us .address-flex .map {
    height: 480px;
    width: 480px;
  } */

  .social {
    width: 80%;
  }

  .social p {
    font-size: var(--heading4-5);
  }

  .info-card-price .medium,
  .info-card-heading,
  .btn-med {
    font-size: var(--heading5);
  }

  .dont-miss .flex-third .padded-text {
    height: 45%;
  }

  .upcoming-events-cards-container {
    padding-right: 150px;
  }

  .book-now-mobile {
    display: block;
  }

  .s-and-s .details,
  .s-and-s-images {
    left: 1.5rem;
    right: 1.5rem;
  }
  .s-and-s h2 {
    font-size: var(--heading00);
  }

  .s-and-s-circle-1 {
    top: -15%;
    left: -7%;
  }

  .s-and-s-circle-2 {
    bottom: -45%;
    right: -10%;
  }

  .quickbook .quickbook-btns {
    flex-direction: column;
    min-width: 220px;
  }

  .quickbook .quickbook-btns p {
    text-align: left;
  }

  .quickbook .quickbook-btns * {
    width: 100%;
  }

  /* BIRTHDAY PAGE */
  .star-bg {
    margin-bottom: 6rem;
  }

  .star-bg .free-gift {
    right: -10px;
    padding: 1.5rem 3rem;
    width: 460px;
  }
  .star-bg h3,
  .blue-bg.birthday-page h3,
  .what-happens h2 {
    font-size: var(--heading4);
  }

  .star-bg p,
  .blue-bg.birthday-page p {
    font-size: var(--heading6);
  }

  .star-bg .abs-planet-2 {
    right: 0;
  }

  .star-bg .free-gift img {
    height: 100px;
    width: 80px;
  }

  .star-bg p:last-of-type {
    max-width: 475px;
  }

  .star-bg #play-quiz p:last-of-type {
    max-width: unset;
  }

  /* .star-bg .free-gift h3 {
  width: 80%;
} */

  .star-bg .free-gift img {
    height: 80px;
    width: 60px;
  }

  .blue-bg.birthday-page {
    padding: 4rem 0;
  }
  .blue-bg.birthday-page p {
    font-size: var(--heading6);
  }

  .blue-bg.birthday-page p strong {
    font-size: var(--body);
  }

  #illustrations-container img:first-of-type {
    height: 175px;
    left: 5%;
  }
  #illustrations-container img:nth-of-type(2) {
    left: 42.5%;
    top: 5%;
    height: 175px;
  }
  #illustrations-container img:nth-of-type(3) {
    height: 125px;
    left: 40%;
  }
  #illustrations-container img:nth-of-type(4) {
    height: 300px;
  }

  .recruits {
    flex-direction: column-reverse;
    gap: 2rem;
  }

  .all-recruits {
    justify-content: center;
  }

  .recruit-container {
    max-width: 200px;
    /* min-width: 200px; */
  }

  .featured-recruit-container {
    max-width: 400px;
    min-width: 400px;
  }

  .featured-recruit-inner p {
    max-width: 500px;
    margin-left: 2rem;
  }

  #users-planet-container {
    bottom: 150px;
    right: 0;
  }
  #users-planet-img-container {
    position: relative;
    width: 500px;
    height: 500px;
    top: -100px;
  }

  .birthday-hero {
    background-position: top;
  }

  #birthday-parties-text {
    width: 650px;
    left: 50px;
    bottom: 55%;
  }

  .character-1 {
    top: 30px;
    z-index: 2;
  }

  .character-2 {
    right: 325px;
    top: 10%;
  }

  #planet-1 {
    width: 150px;
    height: 150px;
    left: 25%;
    top: 20px;
  }

  #planet-2 {
    top: 5%;
    left: 50%;
    width: 150px;
    height: 150px;
  }
  #planet-3 {
    top: 37.5%;
    left: 5%;
  }

  #planet-4 {
    height: 200px;
    width: 200px;
    right: 50%;
  }
  #planet-5 {
    bottom: 310px;
    left: 48%;
    /* display: none; */
  }

  .bd-star-2 {
    left: 40%;
    top: 5%;
  }
  .bd-star-3 {
    right: 50px;
  }
  .bd-star-4 {
    top: 60%;
  }
  #presents-container {
    left: 150px;
    bottom: 30px;
  }
  #presents-container img {
    width: 100px;
  }

  #presents-container img:nth-of-type(2) {
    left: -30px;
  }
  #presents-container img:nth-of-type(3) {
    left: 45px;
  }
  #presents-container img:nth-of-type(4) {
    left: 110px;
  }
  #presents-container img:nth-of-type(5) {
    left: 175px;
  }
  #presents-container img:nth-of-type(6) {
    left: 240px;
    bottom: 10px;
    z-index: 20;
  }
  #presents-container img:nth-of-type(7) {
    left: 225px;
    bottom: 25px;
  }

  /* #characters-container #users-flag {
    left: 78%;
    bottom: 105px;
  } */

  .skate-card {
    width: calc(((100vw - 6rem) / 3) - 4rem);
  }
  .skate-card.skate-card-product .img-container {
    height: 245px;
  }

  .what-happens .step {
    min-width: 59px;
  }

  /* PATCH */

  .patch-intro .blue-bg h2 {
    font-size: var(--heading3);
  }
  .patch-intro .blue-bg h3,
  .patch-intro .white-bg h3 {
    font-size: var(--heading4);
  }

  .patch-intro .blue-bg,
  .patch-intro .white-bg {
    padding: 3rem;
  }

  .patch-intro .price {
    height: 150px;
    width: 150px;
  }

  .membership-details-card.blue-bg .price span:first-of-type {
    font-size: var(--heading1);
  }
  .membership-details-card.blue-bg .price span:last-of-type {
    font-size: var(--heading5);
  }

  /* 
.patch-intro .white-bg .price {
  height: 110px;
  width: 110px;
  margin-right: -1rem;
}

.patch-intro .white-bg .price span:first-of-type {
  font-size: var(--heading01);
}

.patch-intro .white-bg .price span:last-of-type {
  font-size: var(--small);
} */

  .patch-intro .price span:first-of-type {
    font-size: var(--heading0);
  }

  .patch-intro .price span:last-of-type {
    font-size: var(--heading6);
  }

  .patch-intro .blue-bg h2 img {
    width: 100px;
  }

  .patch-dark-blue-bg h2 {
    font-size: var(--heading1);
    flex: 1.25;
  }

  .patch-intro .bullet-list-item p {
    /* font-size: var(--body); */
    margin-bottom: 1rem;
  }
  .bullet-list-item {
    align-items: flex-start;
    margin-bottom: 1rem;
  }

  .patch-intro .img-container img {
    object-position: 35%;
  }

  .lessons.no-bg .subheading {
    font-size: var(--heading4-5);
  }
  .dont-miss .gift-voucher .padded-text {
    height: 44%;
  }

  .star-bg .rocket {
    right: -220px;
  }


  .blue-bg.birthday-page.menus {
    min-height: unset;
  }
  .blue-bg.birthday-page .container-wide {
    min-height: 350px;
  }

  .patch-dark-blue-bg.memberships-yellow-bg {
    flex-direction: column;
    padding-top: 2rem;
    padding-bottom: 2rem;
    gap: 8rem;
  }

  .dark-blue-bg.rewards .patch-dark-blue-bg {
    padding: 5rem 6rem 1rem;
  }

  /* .quickbook {
    margin-top: -6rem;
  } */

  .find-out-more {
    /* margin-top: -6rem; */
    margin-top: 0;
  }

  .learn-more {
    display: none;
  }

  .qb-option-learn-more#select_attendees, .qb-option-learn-more .calendar-result-container, .qb-option-learn-more#calendar-container {
    top: 140px;
  }

  .quickbook-option:after {
    height: 40%;
  }

  /* #calendar-container {
    top: 140px;
  } */

  /* #select_attendees, .calendar-result-container {
    top: 140px;
  } */

  .checkout .calendar-result-container {
    top: 0;
  } 

  /* .quickbook .calendar-result-container {
    top: 140px
  } */

  .my-account {
    padding-top: 175px;
  }

  .patch-intro .memberships-offers-carousel-container {
    /* flex: 1.5; */
    max-height: 480px;
   }

   .ice-skating-ads {
    height: 690px;
  }

  .flip-card-food-and-drink, .flip-card-food-and-drink-wide{

    min-width: 350px;
  }
  .dark-blue-bg.holidays-dark-bg .patch-dark-blue-bg .blue-bg .deals-container {
    width: 410px;
  }
  .dark-blue-bg.holidays-dark-bg .patch-dark-blue-bg .blue-bg .price {
    transform: translateX(30px);
  }

  .skate-card.skate-card-public .img-container {
    height: 260px;
  }

  .ice-card-membership-name-btn:hover,
  .ice-card-membership-name-btn:focus
  {
    background-color: #fff;
    cursor: pointer;
  }

  .upcoming-events-cards-container::-webkit-scrollbar {
    height: 0;
  }

  .scroll-across-container-events {
    display: block;
  }

  .hero-logo {
    width: 470px;
  }
  .res-only {
    display: block;
  }

  .nav-link:hover {
    border-bottom: none;
  }
  #quiz-results.fun-zone-page-section {
    height: 500px;
  }

  .fun-zone-page-section {
    height: 75%;
    top: 15%;
    /* transform: translate(0, 10%); */
  }

  .fun-zone-hero .fun-zone-page-section {
    height: 450px;
    top: 20%;
  }

  .fun-zone-quiz#planets-quiz .rocket{
    height: 850px;
    top: -50px;
    right: -50px;
  }

  .fun-zone-quiz .quiz-planet:nth-of-type(1) {
    bottom: 0;
    left: 100px;
    width: 250px;
  }
  
  .fun-zone-quiz .quiz-planet:nth-of-type(2) {
    left: 20%;
    top: 20%;
    width: 200px;
  }
  .fun-zone-quiz .quiz-planet:nth-of-type(3) {
    right: 0%;
    top: -10%;
    width: 150px;
  }
  .fun-zone-quiz .quiz-planet:nth-of-type(4) {
    right: 45%;
    bottom: 10%;
    width: 300px;
  }
  .fun-zone-quiz .quiz-planet:nth-of-type(5) {
    right: 15%;
    bottom: 0;
    width: 150px;
  }
  .fun-zone-quiz .quiz-planet:nth-of-type(6) {
    left: -10%;
    top: 10%;
    width: 150px;
  }
  .fun-zone-quiz .quiz-planet:nth-of-type(7) {
    right: 15%;
    top: -10%;
    width: 100px;
  }
  .fun-zone-quiz .quiz-planet:nth-of-type(8) {
    right: 45%;
   top: -5%;
    width: 100px;
  }
  .fun-zone-quiz .quiz-planet:nth-of-type(9) {
    right: 25%;
    bottom: 30%;
    width: 300px;
  }

  .controls-flex {
    flex-direction: column;
    gap:1rem
  }

  .activity-pages-flex {
    height: 440px;
  }
  .hero-logo.hygiene-rating {
    right: 3rem; 
  }
  .alpha-over-nav {
    height: 120px;
  }
  .ticker-container {
    top: 0;
  }

}

/* //STUPID LAPTOP */
@media only screen and (max-width: 1400px) and (max-height: 800px) {

  .hero-logo {
    width: 375px;
    margin-top: 150px;
 }

 .hero-flex h1 {
  font-size: var(--heading1);
 }
 .hero-flex h2 {
  font-size: var(--heading5);
 }
 .subheading-thin {
  font-size: var(--heading4);
 }
 .intro-text p{
  font-size: var(--body);
 }
 .heading {
  font-size: var(--heading2)
 }
.intro-text .btn {
  font-size: var(--heading6);
  margin: 2rem auto;
}
.upcoming-events-cards-container {
  height: 475px;
}
.upcoming-events-cards-container .info-card {
  height: 350px;
  width: 200px;
  min-width: 260px;
}

.dark-blue-bg .subheading, .blue-bg .subheading {
  font-size: var(--heading4);
}
.dark-blue-bg .btn-sml, .padded-text .btn-sml, #question-number, #quiz-question, #next-btn, .answer-btn, .btn-sml {
  font-size: var(--body);
  padding: 0.5rem 1rem;
}

.upcoming-events-cards-container .info-card-text {
  padding: 1rem 1rem 2rem;
}

.upcoming-events-cards-container .info-card .yellow-text {
  font-size: var(--smaller);
}
.upcoming-events-cards-container .info-card .info-card-heading {
  font-size: var(--small);
}
.upcoming-events-cards-container .info-card .info-card-info {
  font-size: var(--smaller);
}
.upcoming-events-cards-container .info-card .info-card-price .medium {
  font-size: var(--body);
}
.upcoming-events-cards-container .info-card .btn-sml {
  font-size: var(--small);
  padding: 0.5rem 1.5rem;
}

.upcoming-events-cards-container::-webkit-scrollbar {
  height: 2rem;
}
.scroll-across-container {
  display: none;
}

  .birthday-hero {
    background-position: center 65%;
  }

  #presents-container {
    bottom: 0;
  }

  #birthday-parties-text {
    width: 450px;
  }

  #planet-3, #planet-2{
    display: none;
  }
  .character-2 {
    right: 42.50%;
    height: 200px;
  }

  .character-1 {
    height: 200px;
  }

  .bd-star-6 {
    top: 50px;
   left: 60%;
  }

  #characters-container .astro {
    height: 650px;
  }

  #characters-container .astro:last-of-type {
    height: 600px;
  }

  #characters-container {
    bottom: -75px;
  }

  #characters-container #users-flag {
    bottom: 100px;
    left: 75%;
  }

  .nav-logo-container {
    width: 120px;
  }

  /* .flex {
    width: 80%;
  } */

  .blue-bg h3 {
    font-size: var(--heading6);
  }
  .blue-bg p {
    font-size: var(--small);
  }

  .padded-text ul,  .padded-text h4 {
    font-size: var(--small);
  }

  .flex-square::before {
    padding-top: 80%;
  }

  .flex-square img {
    width: 60%;
  }

  .flex-half.gift-voucher.dark-blue-bg.rounded-corners img {
    width: 70%!important;
  }

  .dont-miss .white-bg {
    height: 4rem;
    width: 80%;
  }
  .dont-miss .white-bg img {
    border-radius: 2rem;
  }

  .upcoming-events-cards-container.news-cards-container .info-card-info {
    -webkit-line-clamp: 2;
  }

  .review p, .social p {
    font-size: var(--body);
  }

  .social .white-btn {
    font-size: var(--heading6);
    padding: 1rem 2.25rem;
  }

  .holiday-hero .hero-logo img {
    /* margin-bottom: 6rem;  */
    position: relative; 
    z-index: 2; 
    width: 250px;
  }

  .hero-low-text {
    padding-bottom: 2rem;
  }

  .hero-low-text h1 {
    font-size: var(--heading1);
  }
  .skate-card.skate-card-tall .skate-card-text, .skate-card.skate-card-tall p:first-of-type, .skate-card.skate-card-tall h3,.highlight-offer  {
    font-size: var(--small);
  }
  .skate-card .lesson-text .info-card-price .large {
    font-size: var(--heading4);
  }
  .skate-card.blue-bg .lesson-text .info-card-price {
    top: -50px;
  }
  /* NAV ================================================================================= */
.nav {
  position: absolute;
  z-index: 3;
  width: 100%;
  top: 2rem;
}

.nav-dark {
  background-color: var(--dark-blue);
  top: 0;
}
.nav-dark .nav-links {
  padding: 4rem 0 2rem 2rem;
}

.nav-dark .nav-icons {
  padding: 4rem 1rem 2rem;
}

.nav-dark .nav-inner {
  justify-content: flex-end;
  position: relative;
}

.nav-dark .nav-logo-container {
  position: absolute;
  left: 6rem;
  top: 1.5rem;
}

.solid-nav {
  position: absolute;
  top: -4rem;
  bottom: 0;
  left: 0;
  right: 0;
  height: 150px;
  background-color: var(--dark-blue);
  pointer-events: none;
}

.alpha-over-nav {
  position: absolute;
  top: -2rem;
  bottom: 0;
  left: 0;
  right: 0;
  height: 125px;
  -webkit-gradient: (
    linear,
    left top,
    left bottom,
    color-stop(50%, var(--very-dark-blue),
    to(transparent))
  );
  background-image: linear-gradient(
    180deg,
    var(--very-dark-blue),
    transparent 95%
  );
  pointer-events: none;
}


.nav-inner {
  display: flex;
  justify-content: space-between;
  flex-wrap: nowrap;
}
.nav-logo-container {
  width: 150px;
  min-width: 80px;
  z-index: 2;
  margin-top: 2rem;
  position: static;
}
/* santa */
/* .nav-logo-container {
  width: 220px;
  min-width: 80px;
  z-index: 2;
  margin-top: -1rem;
} */

.nav-logo-container img {
  width: 100%;
}

.nav-main {
  display: flex;
  justify-content: flex-end;
}

.nav-links {
  padding: 4rem 0 4rem 2rem;
  display: flex;
  align-items: flex-start;
  color: #fff;
  position: static;
  transform: translateY(0);
  background-color: transparent;
  flex-direction: row;
}

.book-now-mobile {
  display: none;
}

.nav-link {
  font-size: var(--small);
  margin: 0 1rem;
}

.nav-link:hover {
  border-bottom: 4px solid #fff;
}

.nav-link.dark-link {
  color: var(--dark-blue);
}
.nav-link.dark-link:hover {
  border-bottom: 4px solid var(--dark-blue);
}

.nav-link span {
  display: flex;
  justify-content: flex-end;
  align-items: center;
}

.nav-links-visible .nav-link:hover {
  border-bottom:none;
}


.nav-link img {
  width: 20px;
}

.nav-icons {
  display: flex;
  padding: 4rem 1rem;
  align-items: flex-start;
  position: static;
}

.nav-icons .red-btn {
  margin: 0 0 0 1rem;
  z-index: 2;
}

.nav-icon-container {
  width: 40px;
  height: 40px;
  margin: 0 1rem;
  z-index: 2;
}
.nav-icon-container img {
  width: 100%;
  height: 100%;
}
.nav-toggle-container {
  display: none;
  cursor: pointer;
}

.holiday-hero {
  /* background-position: 80%, top; */
}

.skate-card-heading {
  font-size: var(--body);
}

.no-bg .subheading {
  font-size: var(--heading4);
}
.skate-card .lesson-text * {
  font-size: var(--small);
}
.skate-card .lesson-text h3 {
  font-size: var(--body);
}

.skate-card.skate-card-public .img-container {
  height: 200px;
}

.btn {
  font-size: var(--heading6);
}
.ice-skating-ads {
  height: 500px;
}
.spacer {
  padding: 2.5rem;
}
.blue-bg.birthday-page h2 {
  font-size: var(--heading4);
}

.faq h4,.blue-bg.birthday-page .faq p {
  font-size: var(--small);
}
.lesson-logos img {
  width: 300px;
}

.quiz h3, .star-bg h3, .blue-bg.birthday-page h3{
  font-size: var(--heading5);
}
.quiz-modal h2, .quiz-results-modal h2 {
  font-size: var(--heading4-5);
}
.quiz .outline-btn,.quiz-results-inner h3,.patch-intro .blue-bg h3, .patch-intro .white-bg h3,.featured-recruit-inner p {
  font-size: var(--heading6);
}
.quiz-result-card p, .patch-intro p,.patch-dark-blue-bg .blue-bg p,.heading-container p  {
  font-size: var(--small);
}

.patch-intro h2 {
  font-size: var(--heading4-5);
}

.patch-intro .memberships-offers-carousel-container .single-item {
  max-width: 500px;
}

.patch-intro .blue-bg h2,.patch-dark-blue-bg .blue-bg h3 {
  font-size: var(--heading4-5);
}
.pass-img-holder img {
  width: 64px;
}

.patch-dark-blue-bg h2 {
  font-size: var(--heading3)
}
.img-and-anim .img-container, .img-and-anim .gif-container {
  height: 160px;
  width: 160px;
}
.patch-dark-blue-bg .blue-bg {
  padding-top: 110px;
}

.star-bg .rocket {
  right: 25px;
  top: 100px;
}
.star-bg p, .blue-bg.birthday-page p,.what-happens p {
  font-size: var(--body);
}
.blue-bg.birthday-page .container-wide,.star-bg .container-wide {
  padding-left: 4.5rem;
}
.featured-recruit-container {
  max-width: 320px;
  max-height: 320px;
  min-width: 320px;
  min-height: 320px;
}

.recruits {
  gap: 4rem;
}

.recruits h2 {
  margin-left: 5%;
  font-size: var(--heading3);
}

.recruit-container {
  max-width: 180px;
}

.gift-vouchers .skate-card .img-container img {
  height: 260px;
}

.subheading-thin-sml {
  font-size: var(--heading4-5);
}

.checkout h1 {
  font-size: var(--heading3);
}
.checkout .option {
  font-size: var(--body);
}
.heading, .heading-white, .checkout-heading, .basket-heading {
  font-size: var(--heading6);
}

.basket .dark-blue-text {
  font-size: var(--body);
}

.basket h3 {
  font-size: var(--small);
}
.checkout .activity {
  width: 40%;
}
.checkout-activity-img-container {
  height: 160px;
}
.option-container-options p {
  font-size: var(--small);
  line-height: 1.75;
}

.nav-logo-container {
  width: 132px;
}
.no-hero {
  padding-top: 160px;
}
.button-container-calendar {
  margin-bottom: 0;
}
#monthAndYear {
  font-size: var(--body);
}
.table-calendar td, .table-calendar th {
    font-size: var(--small);
    width: 26px;
    height: 40px;
}
.public-skate-calendar-result p, .public-skate-calendar-result span {
  font-size: var(--small);
}
.dark-blue-text-500,.attendee-number {
  font-size: var(--body);
}
#attendees-container p, #extras-container p, #details-container p {
  font-size: var(--smaller);
}
.checkout-attendees-row {
  padding: 0.5rem 0
}
.checkout-attendees-control-icon, .checkout-birthday-control-icon {
  height: 26px;
  width: 26px;
}

.ts-and-cs p {
  font-size: var(--small);
}
.carer-ts-and-cs,.basket .confirm-checkbox, .basket .confirm-checkbox span {
  font-size: var(--smaller);
}
.basket p {
  font-size: var(--small);
}

.attendees-row-subtitle {
  font-size: var(--heading6);
}
.f-and-d-extra-flex-title,.f-and-d-extra-flex .extra-flex-details .f-and-d-extra-flex-title,.f-and-d-extra-flex .extra-flex-details .f-and-d-extra-flex-title, .checkout-choose-birthday-extras .checkout-attendees-row .f-and-d-extra-flex-title {
  font-size: var(--body);
}
.ice-card-benefits p, .option-container h4.dark-blue-text, .basket-session-detail {
  font-size: var(--small);
}
.login-register-modal-container {
  overflow-y: scroll;
}
h2 {
  font-size: var(--heading5);
}
input[type="text"], input[type="email"], input[type="password"], textarea {
  font-size: var(--small);
}
.form-group input, .form-group-with-label input, .form-group-with-label select, .form-group textarea, .form-group-file-upload {
  padding: 0.75rem 1rem;
}
.placeholder, .select-items div {
  top: 20px;
  font-size: var(--small);
}
.custom-select-register-login .select-selected, .ice-card-ice-skating-attendees,.input-red-border, .form-group-with-label select.lesson-levels {
  height: 40px;
}
.no-bg .subheading-sml, .subheading-sml {
  font-size: var(--heading6);
}

.option-container .barcode-img {
  width: 150px;
}
.checkout .birthday-child-guests,
.checkout .birthday-child-age,
.checkout .birthday-child-gender,
.checkout .checkout-choose-family-members, .checkout #bp-child-dob, .checkout #bp-child-name {
  height: 40px;
  padding: 0.5rem;
}

.checkout .birthday-child-guests .select-selected,
.checkout .birthday-child-age .select-selected,
.checkout .birthday-child-gender .select-selected,
.checkout .checkout-choose-family-members .select-selected {
  font-size: var(--body);
}

.extra-flex-details p, .extra-flex-details span {
  font-size: var(--body);
}

.fun-zone-hero .fun-zone-page-section {
  top: 0;
}
}

/* laptop */
@media only screen and (max-width: 1300px) {
  .fun-zone-hero .fun-zone-page-section {
    top: 20%;
  }

  .pass-img-holder {
    display: none;
  }
  .dark-blue-bg.holidays-dark-bg .patch-dark-blue-bg .blue-bg .price {
    transform: translateX(-10px);
  }

  #planet-3, #planet-2{
    display: block;
  }

  .character-2 {
    right: 325px;
    top: 10%;
  }

  .character-1, .character-2 {
    height: 250px;
  }

  .bd-star-6 {
    left: 55%;
    top: 40%;
  }

  #birthday-parties-text {
    width: 650px;
  }

  #presents-container {
    bottom: 30px;
  }

  .birthday-hero {
    background-position: top;
  }

  #characters-container .astro {
    height: 700px;
  }

  #characters-container .astro:last-of-type {
    height: 700px;
  }

  #characters-container {
    bottom: 0;
  }

  #characters-container #users-flag {
    bottom: 76px;
    left: 78%;
  }

  .nav-logo-container {
    width: 150px;
  }

  .nav {
    top: 0;
  }
  .nav-links {
    padding: 4rem 0 4rem 8rem;
  }
  .nav-link {
    padding: 0.5rem;
    margin: 0 0.5rem;
  }

  .alpha-over-nav {
    /* height: 160px; */
  }

  .nav-dark .nav-inner {
    height: 10rem;
    background-color: var(--dark-blue);
  }

  .nav-dark .nav-logo-container,.nav-logo-container {
    left: 3rem;
  }

  .nav-dark .nav-icons {
    padding: 2rem 1rem;
  }

  .book-now-mobile {
    margin: 1rem 0 0;
  }

  .nav-icon-container {
    margin: 0 0.5rem;
  }
  .nav-toggle-container {
    display: block;
    width: 50px;
    height: 50px;
    position: relative;
    z-index: 100;
    margin: 0 0.25rem;
  }
  .nav-toggle-container img {
    width: 100%;
    height: 100%;
  }
  .nav-icons {
    position: absolute;
    right: 4rem;
    top: 1rem;
    align-items: center;
    padding: 2rem 0;
  }
  .nav-links {
    /* width:calc(100% + 4rem); */
    flex-direction: column;
    justify-content: center;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    background-color: var(--blue);
    text-align: center;
    transform: translateY(-150%);
    z-index: 11;
  }

  .nav-links-visible {
    transform: translateY(0);
  }

  .nav-link.dark-link {
    color: #fff;
  }
  
  .nav-logo-container {
    position: absolute;
    top: 3rem;
    left: 3rem;
    margin-top: 0;
  }

  .nav-link {
    margin: 1rem 0;
    font-size: var(--heading6);
  }

  .book-now-mobile {
    display: block;
  }

  .upcoming-events-cards-container::-webkit-scrollbar {
    height: 0;
  }

  .dark-blue-bg .btn-sml, .padded-text .btn-sml, #question-number, #quiz-question, #next-btn, .answer-btn, .btn-sml {
    padding: 1rem 2rem;
  }

  .padded-text ul, .padded-text h4, .blue-bg p {
    font-size: var(--body);
  }

  .dont-miss .white-bg {
    height: 6rem;
    width: 100%;
  }

  .upcoming-events-cards-container .info-card .info-card-heading {
    font-size: var(--body);
  }
  .upcoming-events-cards-container .info-card .info-card-price .medium {
    font-size: var(--heading6);
  }
  .upcoming-events-cards-container .info-card .btn-sml {
    font-size: var(--body);
  }

  .skate-card-heading, .skate-card .lesson-text h3 {
    font-size: var(--heading6);
  }
  .faq h4, .blue-bg.birthday-page .faq p {
    font-size: var(--body);
  }

  .blue-bg.birthday-page .container-wide, .star-bg .container-wide {
    padding-left: 3rem;
  }

  .skate-card .lesson-text * {
    font-size: var(--body);
  }

  .lesson-logos img {
    width: 100%;
  }
  .star-bg p, .blue-bg.birthday-page p, .what-happens p, .dark-blue-text-500, .attendee-number, .extra-flex-details p, .extra-flex-details span {
    font-size: var(--heading6);
  }
  .star-bg h3 {
    font-size: var(--heading5);
  }

  .blue-bg.birthday-page h3,
  .what-happens h2 {
    font-size: var(--heading4);
  }

  .featured-recruit-container {
    max-width: unset;
    max-height: unset;
  }
  .recruits {
    gap: 2rem;
  }

  .holiday-hero {
    background-position: 35%, top;
  }

  .skate-card.skate-card-tall .skate-card-text, .skate-card.skate-card-tall p:first-of-type, .skate-card.skate-card-tall h3, .highlight-offer {
    font-size: var(--body);
  }

  .basket h3, .ts-and-cs p {
    font-size: var(--body);
  }

  .basket .dark-blue-text {
    font-size: var(--heading5);
  }

  .option-container-options p {
    font-size: var(--body);
    line-height: 2;
  }
  .table-calendar td, .table-calendar th {
    font-size: var(--body);
    height: 46px;
  }

  .attendees-row-subtitle {
    font-size: var(--heading4);
  }
  #attendees-container p, #extras-container p, #details-container p, .carer-ts-and-cs, .basket .confirm-checkbox, .basket .confirm-checkbox span {
    font-size: var(--small);
  }
  .checkout-attendees-control-icon, .checkout-birthday-control-icon {
    height: 32px;
    width: 32px;
  }

  .form-group input, .form-group-with-label input, .form-group-with-label select, .form-group textarea, .form-group-file-upload {
    padding: 1.5rem 2rem
  }

  input[type="text"], input[type="email"], input[type="password"], textarea, .ice-card-benefits p, .option-container h4.dark-blue-text, .basket-session-detail {
    font-size: var(--body);
  }

  .custom-select-register-login .select-selected, .ice-card-ice-skating-attendees, .input-red-border, .form-group-with-label select.lesson-levels {
    height: 54px;
  }

  .placeholder, .select-items div {
    top: 26px;
    font-size: var(--body);
  }

  .select-items div {
    top: 0;
  }

  .heading, .heading-white, .checkout-heading, .basket-heading {
    font-size: var(--heading3);
  }

  #order-summary h3.dark-grey-text, #order-summary h3.dark-blue-text, #order-summary .summary-details {
    font-size: var(--heading6);
  }
}
@media only screen and (max-width: 1200px) {

  .container-wide, .blue-bg.birthday-page .container-wide, .star-bg .container-wide {
    padding-left: 2rem;
    padding-right: 2rem;
  }
  .footer-inner {
    flex-direction: column;
    /* width: 100%; */
    max-width: 1000px;
    /* margin: 0 auto; */
  }
  .footer-inner-flex {
    width: 100%;
    justify-content: space-between;
    margin-bottom: 6rem;
  }

  .footer-inner-flex.footer-flex-container {
    margin-bottom: 0;
  }

  .footer-socials-container {
    flex-direction: row;
  }
  .footer-flex-container:first-of-type,
  .footer-flex-container:last-of-type {
    width: 100%;
  }
  .footer-column-container:first-of-type {
    margin: 0 5rem 0 0;
  }
  .quickbook .quickbook-btns {
    flex-direction: column-reverse;
    min-width: 175px;
  }
  .quickbook .quickbook-btns p {
    text-align: right;
  }

  .quickbook .quickbook-btns * {
    width: 100%;
  }

  /* .quickbook-option:after {
    height: 80%;
  } */
  h2 {
    font-size: var(--heading5);
  }
  .subheading-thin,
  .subheading-thin-white {
    font-size: var(--heading3);
  }
  .subheading-thin-sml,
  .subheading-bold-sml {
    font-size: var(--heading4);
  }

  .grid-image-section .left {
    width: 50%;
    flex-direction: column;
  }

  .grid-image-section .right {
    width: 50%;
  }
  .grid-image-section .left .tall {
    height: 50%;
    width: 100%;
  }

  .grid-image-section .right .wide {
    height: 50%;
    width: 100%;
  }
  .dont-miss .flex {
    flex-direction: column;
    gap: 4rem;
  }

  .flex-two-thirds {
    gap: 4rem;
  }

  .dont-miss .gift-voucher {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    height: 100%;
  }
  .dont-miss .gift-voucher .padded-text {
    height: 45%;
  }

  .padded-text {
    padding: 2rem 1rem 3rem;
    display: block;
    height: unset;
  }

  .dont-miss .flex-third .flex-half {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    flex: 1;
    gap: 4rem;
  }

  .dont-miss .flex-third .flex-half .flex-square {
    width: 52.5vw;
    height: 52.5vh;
  }

  .dont-miss .blue-bg {
    padding: 3rem;
  }

  .flex-third .flex-half .dark-blue-bg.rounded-corners.flex-square {
    height: 100%;
    width: 46.5vw;
  }
  .flex-third .flex-half .dark-blue-bg.rounded-corners.flex-square:before {
    padding-top: unset;
  }

  .dont-miss-mobile {
    display: none;
  }

  .grey-blue-bg .flex-two-thirds {
    flex-direction: column;
  }

  .review .rating {
    font-size: var(--heading3);
  }
  .review p {
    font-size: var(--heading6);
  }
  .review .sml-text {
    font-size: var(--body);
  }

  .address h3,
  .find-us a {
    font-size: var(--heading6);
  }
  .btn-med {
    padding: 1.5rem 2rem;
  }
  .btns-container div:last-of-type {
    width: 400px;
  }
  /* .find-us .address-flex .map {
    height: 400px;
    width: 400px;
  } */

  .info-card-text {
    padding: 2rem;
  }

  .nav-logo-container {
    top: 2rem;
    left: 2rem;
  }
  .s-and-s h2 {
    font-size: var(--heading0);
  }

  .quiz,
  .blue-center {
    margin: 0 1.5rem;
  }

  .skate-card.skate-card-public {
    flex-basis: calc((100% - 4rem) / 3);
  }

  .quickbook {
    flex-direction: column;
    align-items: flex-end;
  }

  .quickbook-btns {
    flex-direction: row-reverse;
    width: unset;
    border-bottom: none;
  }
  .quickbook-btns * {
    width: unset;
  }

  .quickbook-option label,
  .quickbook-btns p {
    font-size: var(--small);
    text-align: left;
  }

  /* BIRTHDAY PARTIES */

  .star-bg {
    margin-bottom: 10rem;
  }

  .star-bg .red-btn {
    transform: translate(0, 150%);
  }

  .star-bg .free-gift {
    bottom: -80px;
    width: 675px;
    right: 50px;
  }

  .star-bg .free-gift h3 {
    width: unset;
  }
  #illustrations-container img:first-of-type {
    height: 140px;
    left: 0;
    top: 60%;
  }
  #illustrations-container img:nth-of-type(2) {
    left: unset;
    right: 0;
    top: 10%;
    height: 150px;
  }
  #illustrations-container img:nth-of-type(3) {
    height: 100px;
    left: 30%;
  }
  #illustrations-container img:nth-of-type(4) {
    height: 250px;
    top: 60%;
    right: 5%;
    transform: translateY(-50%);
  }
  #presents-container img:nth-of-type(2) {
    left: -55px;
    z-index: 20;
  }
  #presents-container img:nth-of-type(3) {
    left: -20px;
    z-index: 15;
  }
  #presents-container img:nth-of-type(4) {
    left: 22px;
    bottom: 40px;
  }
  #presents-container img:nth-of-type(5) {
    left: 48px;
    bottom: -5px;
    z-index: 20;
  }
  #presents-container img:nth-of-type(6) {
    left: 70px;
    bottom: 20px;
    z-index: 15;
  }
  #presents-container img:nth-of-type(7) {
    left: 70px;
  }
  #planet-1 {
    height: 115px;
    width: 115px;
  }
  #planet-3 {
    top: 35%;
  }

  .character-1 {
    top: 5px;
    left: 15%;
  }
  .character-2 {
    right: 225px;
  }

  .bd-star-1 {
    top: 21%;
  }
  .bd-star-4 {
    right: 0;
  }

  .bd-star-5 {
    left: 30%;
  }
  .bd-star-6 {
    top: 30%;
  }

  #users-planet-img-container {
    position: relative;
    top: -65px;
  }

  /* #birthday-parties-text {
    bottom: 220px;
  } */

  #users-planet-container {
    right: -40px;
  }

  #characters-container {
    bottom: -10px;
    width: 120%;
  }

  #characters-container #users-flag {
    width: 200px;
    height: 200px;
    left: 77%;
    bottom: 110px;
  }

  #presents-container {
    bottom: 80px;
  }

  #presents-container img {
    width: 120px;
  }
  #presents-container img:first-of-type {
    left: -150px;
  }
  #presents-container img:nth-of-type(2) {
    left: -65px;
    bottom: 15px;
  }
  #presents-container img:nth-of-type(3) {
    left: 20px;
    bottom: 5px;
  }
  #presents-container img:nth-of-type(4) {
    left: 95px;
    bottom: 0;
  }
  #presents-container img:nth-of-type(5) {
    left: 170px;
    bottom: 8px;
  }
  #presents-container img:nth-of-type(6) {
    left: 250px;
    bottom: 15px;
  }
  #presents-container img:nth-of-type(7) {
    display: none;
  }

  /* MY ACCOUNT PAGE */
  .profile-my-details-flex {
    gap: 1rem;
  }
  .profile-my-details-flex div {
    width: calc(33% - 1rem);
  }
  /* infinite scroller */
  /* .marquee {
  max-width: 50vw;
} */

  .profile-patch-flex.membership-perks-container {
    flex-direction: column;
  }

  .my-offers-container {
    gap: 3rem 1rem ;
    justify-content: center;
  }

  .my-offers-container .my-offer-card {
    flex: unset;
    width: calc((100% - 1rem) / 2);
    min-height: 150px;
    width: calc((100% - 1rem) / 3);
    min-width: 200px;
  }

  .ice-account-details-container .patch-intro .price {
    position: absolute;
    top: 0;
    right: 0;
    transform: translateY(-25%);
    flex-direction: row;
    height: fit-content;
    width: fit-content;
    border-radius: 2rem;
    gap: 1rem;
    padding: 1rem;
  }
  .patch-intro .price span:first-of-type {
    font-size: var(--heading1);
  }

  .patch-intro .blue-bg h2 img {
    right: -100px;
    top: 0px;
  }

  .patch-intro .blue-bg.patch-active h2 img {
    display: none;
  }

  .patch-intro .blue-bg.patch-active div:first-child {
    flex: unset;
    top: -10px;
  }

  .patch-intro .patch-active .price.patch-price span:first-of-type {
    font-size: var(--heading1);
  }
  .patch-intro .patch-active.blue-bg {
    padding: 5rem 3rem 3rem;
  }

  .profile-form .form-flex.triple-flex {
    flex-direction: column;
    gap: 0;
  }
  .profile-form .form-flex.triple-flex .single-flex,
  .profile-form .form-flex.triple-flex .double-flex {
    width: 100%;
  }
  .profile-form .form-flex.triple-flex .double-flex {
    gap: 1rem;
  }
  .skate-card.skate-card-product .img-container {
    height: 180px;
  }

  .lessons.no-bg .subheading {
    font-size: var(--heading5);
  }

  /* patch */
  /* success page */

  .pass-img-holder img {
    width: 64px;
  }

  .success-page-text-container h1 {
    font-size: var(--heading4);
  }

  .quickbook-option {
    padding-bottom: 1rem;
  }

  .quickbook-option:after {
    height: 100%;
  }

  .btn-flex {
    flex-direction: column;
  }

  .btn-flex a {
    width: 100%;
  }

  .checkout {
    min-height: unset;
  }

  .upcoming-events-cards-container {
    padding-right: 100px;
  }

  .skate-card-book-btn-flex {
    flex-direction: column;
    align-items: flex-start;
    gap: 0.5rem;
    padding-top: 0.5rem;
  }

  .birthday-quickbook-container {
    margin-top: -8rem;
    background-color: #fff;
    padding-top: 2rem;
    z-index: 2;
  }

  .birthday-hero {
    height: 84.5vh;
  }

  #birthday-parties-text {
    left: 0;
    bottom: 60%;
  }

  #characters-container .astro {
    height: 620px;
  }

  #characters-container .astro:last-of-type {
    height: 600px;
    top: 10px;
  }

  .dark-blue-bg.rewards .patch-dark-blue-bg {
    flex-direction: column;
    padding: 0;
  }
  .dark-blue-bg.rewards .patch-dark-blue-bg .heading-container {
    width: 95%;
    margin: 0 auto 4rem;
    align-items: center;
  }

  .dark-blue-bg.rewards .patch-dark-blue-bg .blue-bg-container {
    width: 95%;
    margin: 0 auto;
  }
  .quickbook {
    margin-top: 0;
  }

  .find-us .address-flex .map {
    width: 480px;
  }

  .qb-option-learn-more#select_attendees, .qb-option-learn-more .calendar-result-container, .qb-option-learn-more#calendar-container {
    top: 70px;

  }
  #select_attendees {
    left: unset;
    right: 0;
  }


  .quickbook .calendar-result-container {
    top: 75px;
  }

  .patch-intro .memberships-offers-carousel-container {
    /* flex: 1.5; */
    /* max-height: 480px; */
   }

   .patch-intro .memberships-offers-carousel-container .single-item {
    max-width: 540px;
   }

  
   .membership-intro .flex-item-1 {
    flex: 1;
   }
 

  .ice-skating-ads {
    height: 585px;
  }

  #rewards-find-out-more-btn-top {
    display: none;
  }
  #rewards-find-out-more-btn-bottom {
    display: block;
  }

  .flip-card-food-and-drink, .flip-card-food-and-drink-wide{

    min-width: 300px;
    height: 300px;
  }

  /* HOLIDAYS PAGE */
  .holidays-cards-outer-flex, .holidays-cards-inner-flex {
    gap: 1rem;
  }

  .skate-card.blue-bg {
    width: calc(50% - 0.5rem);
  }

  .dark-blue-bg.holidays-dark-bg .patch-dark-blue-bg {
    flex-direction: column;
  }

  .dark-blue-bg.holidays-dark-bg .patch-dark-blue-bg .blue-bg {
    padding-left: 3rem;
    padding-right: 3rem;
    align-items: flex-start;
    width: 100%;
  }

  .deals-container-2 {
    padding: 0 3rem;
  }

  .dark-blue-bg.holidays-dark-bg .patch-dark-blue-bg .blue-bg .price {
    margin-top: 0;
    transform: translateX(0);
  }

  .checkout-attendees-heading {
    flex-direction: column-reverse;
  }

  .checkout-attendees-row-dark .note {
    align-self: flex-end;
  }

  .sq-checkout-attendees-row {
  width: 30%;
}

.input-flex .form-group-with-label {
  width: calc(50% - 2rem);
}

.skate-card.skate-card-public .img-container {
  height: 220px;
}

.my-account-memberships-flex .membership-details-card.blue-bg .price{
  top: -2rem;
  right: 0;
}
.my-account-memberships-flex .membership-details-card.blue-bg {
  margin-top: 3rem;
}

.membership-details-card .input-flex {
  flex-direction: column;
}
.membership-details-card .input-flex .form-group, .membership-details-card .input-flex .form-group-with-label {
  width: 100%;
}

.membership-details-card .input-flex .form-group-with-label {
  margin-bottom: 1rem;
}
.form-group-with-label.form-group-with-label-memberships {
  margin-top: 0;
}

.ind-ice-card-setup #confirm-and-pay {
  margin-top: -10px;
}
.ind-ice-card-setup #add-a-new-family-member {
  margin-top: -3.5rem;
}

#quiz-results.fun-zone-page-section {
  height: 450px;
}


.activity-pages-flex {
  height: 370px;
}

.checkout-choose-birthday-extras .checkout-attendees-row {
  width: 30%;
}
/* .quickbook-dropdowns {
  flex-direction: column;
} */

}
/* laptop */
@media only screen and (max-width: 1024px) {
  .container {
    padding-left: 6rem;
    padding-right: 6rem;
  }
  .container-wide, .blue-bg.birthday-page .container-wide, .star-bg .container-wide {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }

  .additional-sml-spacer {
    padding: 0.5rem;
  }

  .nav-logo-container {
    top: 1.5rem;
    /* left: 6rem; */
  }

  .nav-icons {
    right: 2.5rem;
  }

  h2 {
    font-size: var(--heading6);
  }

  .subheading-thin,
  .subheading-thin-white {
    font-size: var(--heading4);
  }
  .subheading-thin-sml,
  .subheading-bold-sml {
    font-size: var(--heading5);
  }
  .select-selected {
    font-size: var(--heading6);
  }
  .select-items div,
  h2 {
    font-size: var(--heading5);
    /* color: var(--dark-blue); */
  }
  .dont-miss .flex,
  .flex-two-thirds {
    gap: 2rem;
  }
  .review {
    padding: 0 1rem;
  }
  .address-flex {
    flex-direction: column;
  }

  #get-directions-mobile {
    display: block;
  }

  /* #get-directions {
    display: none;
  } */

  .btns-container {
    flex-direction: column;
  }
  .find-us .address a:last-of-type,
  .find-us .btns-container a:last-of-type {
    margin-bottom: 2rem;
  }

  .find-us .btns-container a.white-btn {
    margin-bottom: 0;
  }

  .map-flex {
    display: flex;
    flex-direction: column;
    gap: 2rem;
    align-items: flex-start;

  }

  .find-us .address a:last-of-type, .find-us .btns-container a:last-of-type {
    margin-bottom: 0;
  }


  .find-us .address-flex {
    gap: 0;
  }

  .find-us .address-flex .map {
    height: 300px;
    width: 400px;
  }

  .social {
    width: 100%;
  }
  .social p {
    font-size: var(--heading6);
  }
  .dont-miss .flex-third .flex-half {
    gap: 2rem;
  }
  .dont-miss .flex-third .flex-half {
    width: 100%;
    flex-direction: column;
  }
  .dont-miss .flex-third .padded-text {
    width: 100%;
    padding: 0 1rem;
  }
  .dont-miss .white-bg {
    max-width: 450px;
  }
  .flex-third .flex-half .dark-blue-bg.rounded-corners.flex-square {
    width: 100%;
    height: 200px;
  }
  .dont-miss .flex-third .flex-half .flex-square img {
    max-width: 360px;
  }

  .upcoming-events-cards-container .info-card {
    /* height: 50vh; */
    margin: auto 2rem;
  }
  .upcoming-events-cards-container .info-card.center {
    margin: auto 4rem;
  }
  /* .flip-card-back {
    padding: 3rem;
  } */
  .flip-card-back h2 {
    text-align: left;
  }
  .ice-skating-lessons,
  .advanced-ice-skating-lessons,
  .three-or-five,
  .hockey-lessons {
    /* width: 100%; */
  }
  .gift-vouchers .skate-cards-container {
    justify-content: center;
  }
  .skate-card,
  .three-or-five .skate-card,
  .hockey-lessons .skate-card {
    width: calc((100vw - 2rem) / 2 - 1rem);
    max-width: 465px;
    min-width: unset;
    flex: unset;
  }

  .events .skate-card {
    width: calc((100vw - 2rem) / 2 - 7rem);
  }

  .btn-flex {
    flex-direction: row;
  }

  .gift-vouchers .skate-card {
    width: calc((100% - 3rem) / 2);
  }

  .s-and-s h2 {
    font-size: var(--heading1);
  }

  .s-and-s div p {
    width: 350px;
  }

  .upcoming-events-cards-container::-webkit-scrollbar-track {
    margin-left: 100px;
    margin-right: 100px;
  }

  .s-and-s {
    height: 1000px;
  }

  .s-and-s-images {
    flex-direction: column;
    bottom: 370px;
    left: 1.5rem;
    right: 1.5rem;
    width: unset;
  }

  .s-and-s-tall-imgs {
    height: 60%;
  }
  .s-and-s-wide-img {
    height: 30%;
  }

  .s-and-s-wide-img img {
    object-position: center 65%;
  }
  .s-and-s-tall-img img {
    object-position: center 40%;
  }

  .s-and-s .details {
    flex-direction: column;
    align-items: flex-start;
    top: 650px;
  }

  .s-and-s .details-text {
    margin-left: 0;
  }

  .s-and-s .details {
    left: 1.5rem;
    right: 1.5rem;
    bottom: 2rem;
    width: 50%;
    gap: 1rem;
  }

  .s-and-s .details p {
    width: unset;
  }

  .s-and-s-circle-2 {
    right: -15%;
    bottom: -12%;
  }

  .quiz h3,
  .blue-center h3,
  .outline-btn {
    font-size: var(--heading5);
  }

  .skate-card.skate-card-public {
    flex-basis: calc((100% - 2rem) / 2);
  }
  .quickbook-dropdowns {
    width: 100%;
  }

  /* .quickbook {
    max-width: 600px;
  } */
  .quickbook-dropdowns {
    flex-direction: column;
  }

  .quickbook-btns {
    flex-direction: row;
    width: 100%;
    justify-content: space-between;
  }

  .quickbook-option {
    width: 100%;
    /* max-width: 600px; */
  }

  .quickbook-option:after {
    height: 0;
  }

  .lessons-quickbook .quickbook-option:first-of-type,
  .lessons-quickbook .quickbook-option:nth-of-type(2),
  .lessons-quickbook .quickbook-option:nth-of-type(3),
  .lessons-quickbook .quickbook-option:nth-of-type(4),
  .lessons-quickbook .quickbook-option:nth-of-type(5),
  .lessons-quickbook .quickbook-option:nth-of-type(6) {
    width: unset;
  }

  .lessons-quickbook .quickbook-option:first-of-type {
    padding: 1rem 1rem 1rem 0;
  }

  #calendar-container,
  .calendar-result-container {
    left: 0;
    transform: translate(0);
    width: 100%;
    position: relative;
    top: 8px;
  }

  .public-skate-calendar-result {
    width: calc(50% - 1rem);
  }

  .quickbook  .public-skate-calendar-result{
    width: 100%;
 
  }

  .quickbook  .public-skate-calendar-result p{
    gap: 2rem;
  }

  .calendar-result-container {
    margin-top: 0;
    gap: 1rem;
    max-height: unset;
  }
  .patch-quickbook .calendar-result-container,
  .checkout-patch .calendar-result-container {
    max-height: unset;
    padding-bottom: 1rem;
  }

  .container-calendar {
    width: 100%;
  }

  .quickbook-btns {
    gap: 1rem;
  }

  .quickbook-option,
  .quickbook-btns {
    padding: 1rem 1rem 1rem 0;
  }

  .qb-option-learn-more#select_attendees,.qb-option-learn-more .calendar-result-container, .qb-option-learn-more#calendar-container {
    position: relative;
    top: 0;
  }

  .quickbook #select_attendees {
    position: relative;
    top: 0;
  }

  .quickbook .calendar-result-container {
    flex-direction: column;
  }



  .counter-container {
    gap: 1rem;
  }

  .quickbook-btn {
    margin-top: 1rem;
    width: 100%;
  }
  .quickbook-btn .red-btn {
    width: 100%;
  }

  .public-sessions .skate-cards-container {
    overflow: hidden;
  }

  .skate-card-book-btn-flex {
    flex-direction: row;
    gap: 0;
    padding-top: 0.5rem;
  }

  /* BIRTHDAY PARTIES  */

  .faqs {
    flex-direction: column;
    width: 100%;
    max-width: 720px;
    margin: 0 auto;
    gap: 1rem;
  }

  #revealBtn {
    display: block;
  }

  #illustrations-container img:first-of-type {
    height: 115px;
    left: 10%;
    top: 65%;
    opacity: 0.5;
  }
  #illustrations-container img:nth-of-type(2) {
    top: 10%;
    height: 120px;
    opacity: 0.5;
  }
  #illustrations-container img:nth-of-type(3) {
    height: 80px;
    left: 30%;
    opacity: 0.5;
  }
  #illustrations-container img:nth-of-type(4) {
    height: 200px;
    top: 65%;
    right: 0;
    transform: translateY(-50%);
    opacity: 0.5;
  }

  .star-bg {
    margin-bottom: 2rem;
    padding: 3rem 0;
  }

  .star-bg .container-wide {
    display: block;
  }

  .star-bg .rocket {
    display: none;
  }

  .star-bg .included {
    width: unset;
    z-index: 10;
  }
  .star-bg .free-gift {
    position: relative;
    transform: translate(0, 0);
    width: 100%;
    max-width: 675px;
    bottom: unset;
    right: unset;
    padding: 0 2rem 1rem;
    border-radius: 1rem;
    margin-top: 1rem;
    z-index: 10;
  }
  .star-bg .red-btn {
    position: relative;
    transform: translate(0, 0);
    margin-top: 1rem;
    bottom: unset;
  }

  .star-bg .abs-planet-1 {
    /* top: unset;
  bottom: -60px;
  right: 35%;
  transform: translate(0,0);
  opacity: 0.35; */
    display: none;
  }
  .star-bg .abs-planet-2 {
    /* top: -2rem;
  right: -2rem;
  transform: translate(0,0);
  opacity: 0.35; */
    display: none;
  }

  /* #presents-container,
  .character-2,
  .character-1 {
    display: none;
  } */

  #planet-1 {
    left: 27%;
    top: 2%;
  }
  #planet-2 {
    right: 40%;
  }

  #planet-3 {
    left: 0;
    height: 180px;
    width: 180px;
    top: 45%;
  }

  #planet-4 {
    right: unset;
    left: 320px;
    top: 85px;
  }

  #planet-5 {
    right: 50%;
    bottom: 325px;
  }

  .bd-star-7 {
    top: 45%;
    left: 60%;
  }

  #presents-container img:nth-of-type(4),
  #presents-container img:nth-of-type(5) {
    display: none;
  }

  #presents-container img:nth-of-type(6) {
    left: 95px;
  }

  #characters-container .astro {
    height: 650px;
  }

  #characters-container .astro:last-of-type {
    height: 620px;
    top: 20px;
  }

  #users-planet-container {
    height: 400px;
    width: 400px;
    bottom: 250px;
    right: -5%;
  }

  #users-planet-img-container {
    position: absolute;
    top: -10%;
    height: 450px;
    width: 450px;
    right: 0;
  }

  #characters-container {
    bottom: 0;
    width: 145%;
    bottom: -40px;
    right: 125px;
  }

  #characters-container #users-flag {
    bottom: 50px;
    left: 78%;
  }

  #birthday-parties-text {
    bottom: 62%;
    width: 600px;
  }

  .character-2 {
    right: 10%;
  }

  .birthday-hero {
    height: 91.5vh;
  }

  #illustrations-container-tablet {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }

  #illustrations-container-tablet img:first-of-type {
    height: 115px;
    /* opacity: 0.75; */
  }
  #illustrations-container-tablet img:nth-of-type(2) {
    height: 120px;
    /* opacity: 0.75; */
  }
  #illustrations-container-tablet img:nth-of-type(3) {
    height: 80px;
    /* opacity: 0.75; */
  }
  #illustrations-container-tablet img:nth-of-type(4) {
    height: 150px;
    /* opacity: 0.75; */
  }
  
  #illustrations-container {
    display: none;
  }

  /* PLAN YOUR VISIT PAGE */

  .plan-faqs .faqs {
    align-self: center;
  }
  .plan-faqs .faqs .faq {
    width: 100%;
    max-width: 800px;
  }

  /* CAREERS PAGE */
  .career-options {
    justify-content: center;
  }
  .career-option {
    flex: unset;
    width: calc(33vw - 2rem);
  }

  /* GIFT CARDS PAGE */

  .gift-voucher-designs-container {
    justify-content: flex-start;
  }

  .gift-voucher-designs-container label {
    width: calc(33% - 1rem);
  }

  /* MY ACCOUNT PAGE */

  .profile-patch-flex {
    flex-direction: column;
  }

  .patch-intro .btns-container button, .patch-intro .btns-container a {
    width: 100%;
    max-width: 380px;
  }

  .transaction-details {
    flex-direction: column;
  }
  .transactions-container .transaction .transaction-details div {
    width: 100%;
  }

  .transaction-price {
    gap: 1rem;
    align-items: center;
  }

  .transactions-container .transaction .price {
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .profile-my-details-flex div {
    width: calc(50% - 1rem);
  }

  .profile-form .form-flex {
    flex-direction: column;
    gap: 0;
  }
  .profile-form .form-flex.profile-form-btns {
    gap: 1rem;
  }
  .profile-form .form-flex.profile-form-btns button {
    width: 100%;
    max-width: 250px;
  }

  .profile-form .form-flex > div {
    width: 100%;
  }
  .ice-account-details-container .dark-blue-bg h2 {
    font-size: var(--heading3);
  }

  /* .patch-intro .blue-bg h2 img {
    display: none;
  } */
  .skate-card.skate-card-product .img-container {
    height: 250px;
  }

  .lessons.no-bg .subheading {
    font-size: var(--heading4);
  }

  .yellow-bg h4 {
    font-size: var(--heading5);
  }

  .patch-intro p,
  .yellow-bg p,
  .review p,
  .patch-dark-blue-bg .blue-bg p {
    font-size: var(--body);
  }

  .patch-intro .bullet-list-item p {
    font-size: var(--heading5);
  }

  .patch-dark-blue-bg {
    flex-direction: column;
    /* gap: 6rem; */
    gap: 8rem;
    /* padding: 6rem; */
    padding: 0 7rem;
  }

  .blue-bgs-flex {
    gap: 5rem;
  }

  .patch-intro .blue-bg div:first-child {
    flex: 1.5;
  }
  .patch-intro .blue-bg div:last-child {
    flex: 1.25;
  }
  .patch-intro .blue-bg .price {
    transform: translateY(-30%);
  }
  .patch-intro .price {
    height: 180px;
    width: 180px;
  }
  .patch-intro .price span:first-of-type {
    font-size: var(--heading0);
  }

  .patch-intro .blue-bg h2 {
    width: fit-content;
  }

  .patch-dark-blue-bg h2 {
    text-align: center;
  }

  .patch-intro-flex-2 {
    flex-direction: column;
  }

  .patch-intro .white-bg {
    padding-bottom: 0;
  }

  .patch-intro .white-bg .price {
    margin-right: 45%;
  }

  .patch-intro-flex-1 {
    gap: 2rem;
  }

  .patch-intro .img-container .note {
    font-size: var(--heading6);
  }

  .patch-dark-blue-bg.memberships-yellow-bg .blue-bgs-flex {
    gap: 2rem;
  }

  .patch-dark-blue-bg.memberships-yellow-bg {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }

  .membership-intro .patch-intro-flex.patch-intro-flex-1,
  .membership-intro .patch-intro-flex.patch-intro-flex-2 {
    gap: 4rem 2rem;
  }

  /* .faqs {
flex-direction: column;
width: 100%;
max-width: 720px;
margin: 0 auto;
gap: 1rem;
} */

  .blue-bg.birthday-page.patch-faqs {
    padding: 1.5rem;
  }

  .find-rink-details-container {
    flex-direction: column;
  }

  .find-rink-details-container > div:last-child {
    max-width: 768px;
    width: 100%;
  }
  .find-rink-form .input-flex {
    flex-direction: row;
    gap: 0.5rem;
  }
  .what-happens .step {
    min-width: 95px;
  }

  .checkout .key-container {
    width: 100%;
  }

  .patch-dark-blue-bg.memberships-yellow-bg {
    padding: 2rem;
  }

  .dark-blue-bg.rewards .patch-dark-blue-bg {
    gap: 2rem;
  }

  .quickbook-option .error {
    bottom: -3.5px;
  }

  .find-us-address-flex {
    gap: 2rem;
  }

  .quiz-modal h2 {
    font-size: var(--heading3);
  }

  .my-account {
    padding-top: 150px;
  }

  .hero-logo {
    width: 350px;
  }

  .my-offers-container .my-offer-card {
    min-height: 300px;
    min-width: unset;
   width: calc((100% - 1rem) / 2)
  }

  #f-and-d-extras-container .checkout-attendees-row {
    width: 29%;
  }

  .flip-card-food-and-drink, .flip-card-food-and-drink-wide{

    min-width: 250px;
    height: 300px;
  }

  /* Holidays page */
  .dark-blue-bg.holidays-dark-bg .patch-dark-blue-bg {
    gap: 0;
  }

  .dark-blue-bg.holidays-dark-bg .patch-dark-blue-bg h2 img {
    display: block;
  }

  .food-and-drink-location-picker {
    width: 100%;
  }

  .btn-flex-wide {
    padding-left: 0;
    padding-top: 1rem;
  }

  .skate-card.blue-bg.skate-card-product {

    flex-basis: calc((100% - 2rem) / 2);
  }

  .skate-card.skate-card-public .img-container {
    height: 280px;
  }

  .lessons-hero {
    background-position: left;
  }

  #calendar-container, .quickbook .calendar-result-container {
    top: 0;
  }

  #select_attendees {
    top: 70px;
  }

  .flip-card .rounded-corners, .no-flip-card .rounded-corners {
    padding-bottom: 2rem;
  }
  
  .flip-card.flip-card-food-and-drink .rounded-corners, .flip-card.flip-card-food-and-drink-wide .rounded-corners {
    padding-bottom: 0;
  }

  .patch-intro .yellow-bg p {
    font-size: var(--body);
  }

  .news-intro-flex {
    gap: 4rem;
    flex-direction: column;
  }


  .learn-more {
    display: block;
  }

  .confirmation-page-desktop {
    display: none;
  }
  
  .confirmation-page-mobile {
    display: block;
  }
  .confirmation-page-mobile .btn-wide {
    width: 100%;
  }

  .quickbook .quickbook-btns p {
    text-align: left;
  }

  .food-and-drink-hero {
    background-position: 3% center;
  }

  .fun-zone-page-section {
    height: 450px;
    top: 15%;
  }

  .fun-zone-quiz #planet-image {
    width: 400px;
 }

 .planet-quiz-text-and-buttons {
  margin-top: 55px;
}

.fun-zone-quiz .quiz-planet:nth-of-type(1) {
  left: 0px;
}
.fun-zone-quiz .quiz-planet:nth-of-type(9) {
  right: 10%;
}

.fun-zone-quiz .quiz-planet:nth-of-type(6) {
  display: none;
}

.digital-colouring-flex {
  flex-direction: column;
}

.activity-pages-flex {
  height: 365px;
}

}

@media only screen and (max-width: 1024px) and (orientation: portrait) {
  #users-planet-img-container {
    top: -55%;
    right: 20px;
  }

  #planet-5 {
    bottom: 550px;
  }
  #planet-3 {
    left: 50px;    
    top: 48%;
  }
  #planet-4 {
    top: 250px;
  }

  .character-1 {
    top: 160px;
  }

  #characters-container{
    bottom: 120px;
    right: 125px;
  }

  #characters-container #users-flag {
    bottom: 0;
    left: 70%;
    width: 250px;
    height: 250px;
  }

  #characters-container .astro {
    height: 950px;
  }

  #characters-container .astro:nth-of-type(2) {
    left: -13%;
  }

  #characters-container .astro:nth-of-type(3) {
    left: 16%;
  }

  #characters-container .astro:nth-of-type(4) {
    left: 43%;
    top: 20px;
  }

  #characters-container .astro:last-of-type {
    height: 875px;
    top: 30px;
    left: 70%;
  }
  .fun-zone-page-section {
    top: 30%;
  }

  .fun-zone-hero .fun-zone-page-section {
    top: 30%;
  }

}

@media only screen and (max-width: 980px) {
  /* success page */
  .success-page {
    flex-direction: column-reverse;
    height: unset;
    overflow: unset;
  }

  .what-happens .step {
    min-width: 140px;
  }

  .recruit-container {
    max-width: 200px;
    min-width: 200px;
  }

  .lessons.no-bg .subheading {
    font-size: var(--heading5);
  }
  #users-planet-img-container {
    /* top: -30%; */
    top: -60%;
  }

  #planet-3 {
    left: 60px;
  }

  #planet-4 {
    top: 175px;
  }
  .bd-star-4 {
    right: -15px;
  }

  .bd-star-5 {
    top: 55%;
  }

  .bd-star-6 {
    top: 25%;
  }
  .bd-star-7 {
    top: 50%;
    left: 50%;
  }

  .character-2 {
    right: 5%;
  }

  .find-us .address a, .find-us .btns-container a {
    font-size: var(--body);
    padding: 1rem 1.25rem;
  }

  .find-us .address-flex .map {
    width: 380px;
  }

  .patch-intro-flex-1 .flex-item-2 {
    /* max-height: unset; */
  }

  .patch-intro .memberships-offers-carousel-container {
    max-height: 380px;
   }
   .patch-intro .memberships-offers-carousel-container .single-item {
    max-width: 460px;
   }
   .ice-skating-ads {
    height: 450px;
  }

  /* HOLIDAYS PAGE */
  .holidays-cards-outer-flex {
    flex-direction: column-reverse;
  }

  .skate-card.skate-card-tall {
    flex-direction: row;
    max-width: unset;
    gap: 4rem;
  }

  .skate-card.blue-bg {
    max-width: unset;
    min-width: unset;
  }
  .skate-card.skate-card-tall div {
    flex: 1;
  }

  .marquee.my-marquee-f-and-b-1, .my-marquee-f-and-b-1-heading {
    display: none;
  }
  .marquee.my-marquee-f-and-b-2, .my-marquee-f-and-b-2-heading {
    display: block;
  }

  .ind-ice-card-setup #confirm-and-pay {
    margin-top: -10px;
  }
  .ind-ice-card-setup #add-a-new-family-member {
    margin-top: 0;
  }

  .flex-third {
    flex: 1.5;
    /* align-items: flex-end; */
  }

  .ice-skating-page-hero {
    background-position: 45% 15%;
  }

  .fun-zone-quiz .planet-and-q {
    flex-direction: column;
  }

  .planet-quiz-text-and-buttons {
    margin-top: 0;
  }

  .activity-pages-flex {
    flex-direction: column;
    height: unset;
  }

  .activity-pages-flex > div {
    height: unset;
    width: 100%;
  }

  .activity-pages-flex img {
    height: unset;
    width: 100%;
  }

}

@media only screen and (max-width: 850px) {
  .my-account {
    min-height: unset;
  }
  .transaction {
    flex-direction: column;
  }
  .transaction-details,
  .profile-my-details-flex div {
    width: 100%;
  }

  .my-profile-container {
    flex-direction: column;
  }

  .your-ice-card.section:first-child {
    align-items: center;
  }
  /* 
.transaction-details, .profile-my-details-flex div  {
  width: calc(33% - 1rem);
} */

  .patch-intro .blue-bg h2 img {
    right: -100px;
  }
  .ice-account-details-container .patch-intro .price {
    transform: translate(35%, 35%);
    border-radius: 50%;
    background-color: var(--dark-blue);
    color: #fff;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 2rem;
    height: 180px;
    width: 180px;
    font-weight: 600;
    position: relative;
  }

  .patch-intro .price span:first-of-type {
    /* font-size: var(--heading00); */
  }
  .profile-patch-flex.membership-perks-container {
    flex-direction: row;
  }
  .ice-account-details-container {
    width: 100%;
  }

  .marquee {
    max-width: 100vw;
  }
  .transaction,
  .transaction-details {
    flex-direction: row;
  }
  .transactions-container .transaction .price {
    height: 40px;
  }

  .my-offers-container .my-offer-card {
    flex: 1;

    width: calc((100% - 8rem) / 4);
  }

  .patch-intro .blue-bg h2 img {
    display: block;
  }

  .dark-section.profile-nav {
    display: flex;
  }
  .profile-nav-links {
    display: none;
    opacity: 0;
    height: 0;
    pointer-events: none;
    transform: translateY(-50%) scaleY(0);
  }

  .profile-nav-links-visible {
    display: flex;
    opacity: 1;
    height: auto;
    pointer-events: all;
    transform: translateY(0) scaleY(1);
  }

  @keyframes revealProfileNavAnimation {
    0% {
      transform: translateY(-50%) scaleY(0);
      opacity: 0;
      height: 0;
    }
    100% {
      transform: translateY(0) scaleY(1);
      opacity: 1;
      height: auto;
    }
  }

  @keyframes hideProfileNavAnimation {
    0% {
      transform: translateY(0) scaleY(1);
      opacity: 1;
      height: auto;
    }
    100% {
      transform: translateY(-50%) scaleY(0);
      opacity: 0;
      height: 0;
    }
  }

  .skate-card.skate-card-product .img-container {
    height: 220px;
  }

  .quiz-results-inner-result {
    flex-direction: column;
  }

  .quiz-results-inner h3 {
    font-size: var(--heading6);
    margin-bottom: 1rem;
  }
  .quiz-results-inner ul {
    margin-bottom: 1rem;
  }

  .quiz-results-inner p,
  .quiz-results-inner div {
    font-size: var(--small);
  }

  .quiz-result-card {
    width: 100%;
    max-width: 500px;
  }

  .result-card {
    padding: 0;
    gap: 0;
  }

  .quiz-results-inner-heading {
    max-width: 500px;
    width: unset;
  }

  .character-1 {
    height: 225px;
    left: 17.5%;
  }

  .bd-star-5 {
    top: 55%;
    left: 25%;
  }
  .bd-star-7 {
    left: 50%;
  }

  #planet-4 {
    top: 170px;
    left: 260px;
    height: 175px;
    width: 175px;
  }
  #birthday-parties-text {
    width: 500px;
  }

  #characters-container {
    width: 125%;
  }

  #characters-container #users-flag {
    left: 81%;
  }

  .bd-star-4 {
    top: 50%;
  }

  .patch-dark-blue-bg.memberships-yellow-bg .blue-bgs-flex {
    flex-direction: column;
  }

  .patch-dark-blue-bg.memberships-yellow-bg {
    gap: 6rem;
  }

  .patch-dark-blue-bg.memberships-yellow-bg .img-and-anim .img-container,
  .patch-dark-blue-bg.memberships-yellow-bg .img-and-anim .gif-container {
    top: -2.5rem;
  }

  .patch-dark-blue-bg.memberships-yellow-bg .blue-bgs-flex {
    gap: 7rem;
  }

  .find-us .address-flex .address {
    flex-direction: column;
    gap: 2rem;
  }

  .find-us .address-flex .map {
    width: 100%;
  }

  .patch-intro-flex-1 .flex-item-2 {
    max-height: 350px;
  }

  .food-and-drink-flips-flex {
    gap: 1rem;
  }

  .flip-card-food-and-drink, .flip-card-food-and-drink-wide{

    min-width: 200px;
  }
  /* Holidays page */

  .dark-blue-bg.holidays-dark-bg .patch-dark-blue-bg h2 img {
    display: none;
  }

  .sq-checkout-attendees-row {
    width: 47%;
  }
  .patch-intro .white-bg .price {
    margin-right: 25%;
  }

  .ice-account-details-container .patch-intro  .patch-active .price.patch-price {
    transform: translateX(50%);
  }

  .my-account-memberships-flex .membership-details-card.blue-bg .price {
    top: -40rem;
    right: 1rem;
  }
  .my-account-memberships-flex .membership-details-card.blue-bg.dark-blue-bg .price {
    background-color: var(--blue);
  }

  .membership-details-card .input-flex {
    flex-direction: row;
  }
  .membership-details-card .input-flex .form-group, .membership-details-card .input-flex .form-group-with-label {
    width: unset;
  }

  .membership-details-card .input-flex .form-group.file-input-container {
    width: 50%;
  }
  
  .membership-details-card .input-flex .form-group-with-label {
    margin-bottom: 0;
  }
  .membership-details-card .input-flex .form-group-with-label input {
    height: 54px;
  }
  .form-group-with-label.form-group-with-label-memberships {
    margin-top: -1.5rem;
  }

  #last-line-mem-intro-2 {
    display: block;
    margin-top: -3rem;
  }
  #last-line-mem-intro-1 {
    display: none;
  }
}


@media only screen and (max-width: 850px) and (orientation: portrait) {


  #planet-5 {
    display: none
  }

  .character-1 {
    top: 125px;
  }

  
  #characters-container{
    bottom: 30px;
  }

  #characters-container #users-flag {
    bottom: 40px;
    left: 71.5%;
    width: 225px;
    height: 225px;
  }

  #characters-container .astro {
    height:720px;
  }

  #characters-container .astro:nth-of-type(2) {
    left: 0;
  }

  #characters-container .astro:nth-of-type(3) {
    left: 24%;
  }

  #characters-container .astro:nth-of-type(4) {
    left: 48%;
    top: 20px;
  }

  #characters-container .astro:last-of-type {
    height:650px;
    top: 30px;
    left: 72%;
  }

  #presents-container {
    left: 50px;
  }
  .ind-ice-card-setup #confirm-and-pay {
    margin-top: -10px;
  }
  .ind-ice-card-setup #add-a-new-family-member {
    margin-top: -3.5rem;
  }

}


/* tablet */
@media only screen and (max-width: 768px) {
  .gift-vouchers .skate-cards-container .skate-card {
    min-width: unset;
  }

  .gift-vouchers .skate-card {
    width: calc((100% - 3rem) / 2);
    min-width: 360px;
    max-width: 360px;
  }

  .form-container {
    padding: 0;
  }
  /* .custom-select select {
    display: block;
    outline: none;
    border: none;
    background-color: #fff;
    width: 100%;
  } */

  .nav-logo-container {
    /* left: 3rem; */
  }

  .nav-icons {
    right: 3rem;
  }

  .nav-links {
    padding: 4rem 0 4rem 3rem;
  }
  .container {
    padding-left: 3rem;
    padding-right: 3rem;
  }
  .hero-flex h1 {
    font-size: var(--heading1);
  }
  .hero-flex h2 {
    font-size: var(--heading4);
  }

  .spacer {
    padding: 3rem;
  }
  .sml-spacer {
    padding: 0.5rem;
  }

  /* Style items (options): */
  .select-items {
    position: relative;
  }

  .gift-voucher-type-container .select-items {
    position: absolute;
  }

  .footer h3 {
    font-size: var(--heading4);
  }
  .footer-social {
    margin-left: 0;
    height: 50px;
    width: 50px;
  }
  .quick-book-section h3 {
    font-size: var(--heading4);
  }

  .footer-inner-flex {
    margin-bottom: 4rem;
  }
  .heading {
    font-size: var(--heading3);
  }
  .blue-bg .subheading,
  .dark-blue-bg .subheading {
    font-size: var(--heading4);
  }

  .heading-blue-underline::after,
  .heading-red-underline::after,
  .heading-white-underline::after {
    height: 5px;
  }

  .read-more-info {
    display: none;
  }

  .grid-image-section .text-container {
    transform: translateY(0);
    padding: 1rem;
  }

  .grid-image-section .text-container p {
    font-size: var(--small);
  }
  .grid-image-section .text-container h3 {
    font-size: var(--heading6);
  }

  .intro-text p {
    font-size: var(--body);
  }

  .btn {
    font-size: var(--heading5);
    /* margin: 2rem auto 0; */
    margin: 1rem auto;
  }

  .pad-top-bottom {
    padding-top: 2rem;
    padding-bottom: 2rem;
  }
  .blue-bg h3 {
    font-size: var(--heading5);
  }

  .grey-blue-bg .flex {
    flex-direction: column;
  }

  .grey-blue-bg .flex-two-thirds {
    flex-direction: row;
  }

  .grey-blue-bg .flex-wide-third,
  .grey-blue-bg .flex-third,
  .flex-wide-third.flex {
    justify-content: flex-end;
    align-items: flex-start;
  }

  .dark-blue-bg {
    padding: 2rem 0;
  }
  .grey-blue-bg .yellow-bg h3,
  .grey-blue-bg .blue-bg h3,
  .grey-blue-bg .dark-blue-bg h3,
  .flip-card-front h3 {
    font-size: var(--heading4-5);
  }

  .flex-wide-third {
    flex: 2;
  }

  .reviews {
    flex-direction: column;
    align-items: center;
  }
  .review {
    max-width: 500px;
  }
  .review p {
    font-size: var(--body);
  }

  .review .sml-text {
    font-size: var(--small);
  }
  /* .find-us.dark-blue-bg {
    padding: 4rem 2rem;
  } */

  /* .find-us .address-flex .map {
    height: 300px;
    width: 300px;
  } */

  .center .slick-slide {
    margin: 0 1rem;
  }

  .upcoming-events-cards-container .info-card {
    /* height: 44vh; */
  }

  .flip-card-back {
    flex-direction: column;
    justify-content: space-evenly;
  }

  .food-and-drink-flips-flex .flip-card-back{
    flex-direction: column;
  }

  .flip-card-back h2 {
    /* width: 35%; */
    font-size: var(--heading5);
    margin-right: 1rem;
  }


  .flip-card-food-and-drink .flip-card-back p,.flip-card-food-and-drink-wide .flip-card-back p {
    font-size: var(--small);
  }
  .flip-card-food-and-drink .flip-card-back h2,.flip-card-food-and-drink-wide .flip-card-back h2 {
    font-size: var(--body);
  }

  .no-bg .subheading {
    font-size: var(--heading3);
  }
  .no-bg .subheading-sml, .subheading-sml {
    font-size: var(--heading5);
  }

  .tick-icon {
    width:30px;
    height: 30px;
    font-size: 26px;

}

#order-summary h3.dark-grey-text, #order-summary h3.dark-blue-text, #order-summary .summary-details {
  font-size: var(--body);
}

  .ice-skating-lessons,
  .advanced-ice-skating-lessons,
  .three-or-five,
  .hockey-lessons,
  .ice-dance-lessons {
    width: 100%;
  }

  .s-and-s {
    height: 90vw;
  }

  .s-and-s .details {
    width: 60%;
  }

  .s-and-s-circle-2 {
    right: -42%;
  }
  /* .quiz-modal {
    width: 95%;
    max-width: 500px;
  } */
  .quiz-modal h2 {
    font-size: var(--heading4);
  }
  #quiz-question {
    font-size: var(--heading6);
  }
  #next-btn,
  .answer-btn {
    font-size: var(--heading6);
  }

  #quiz-error,
  #question-number {
    font-size: var(--smaller);
  }
  .checkout h1 {
    font-size: var(--heading3);
  }
  .checkout .option, #monthAndYear {
    font-size: var(--heading6);
  }
  .basket-heading {
    font-size: var(--heading5);
  }
  .basket span {
    font-size: var(--smaller);
  }
  .basket p {
    font-size: var(--body);
  }

  .basket #apply-code {
    font-size: var(--small);
  }

  .basket #basket-attendees p,.basket #basket-extras p,.basket #discounts p  {
    font-size: var(--body);
  }
  .checkout .select-selected {
    font-size: var(--body);
  }
  .checkout .select-items div {
    font-size: var(--small);
  }

  #attendees-container {
    width: 100%;
    margin: 0;
  }

  #attendees-container p {
    font-size: var(--smaller);
  }

  .checkout-attendees-row {
    font-size: var(--body);
  }

  #attendees-container,
  #extras-container,
  #f-and-d-extras-container,
  #details-container {
    margin: 0;
    width: unset;
  }

 
  .checkout-and-basket {
    flex-direction: column;
    gap: 1rem;
  }

  .basket-section {
    /* gap: 2rem; */
    margin-top: 0;
  }

  /* BIRTHDAY PAGE */
  .featured-recruit-inner p {
    font-size: var(--heading6);
  }

  #users-planet-container {
    right: -60px;
    bottom: 300px;
  }

  #users-planet-img-container {
    top: -60px;
  }

  #characters-container {
    width: 120%;
    bottom: -100px;
  }

  #characters-container .astro {
    height: 580px;
  }

  #characters-container .astro:last-of-type {
    height: 560px;
    top: 10px;
  }

  #characters-container #users-flag {
    width: 180px;
    height: 180px;
    left: 80%;
    bottom: 68px;
  }

  #star-bg {
    margin-bottom: 0;
  }
  #planet-1 {
    left: 200px;
    top: 130px;
  }
  #planet-3 {
    top: 45%;
    width: 200px;
    height: 200px;
  }
  .bd-star-5 {
    left: 30%;
  }

  .fun-zone-section {
    height: 500px;
  }
  .fun-zone-page-section {
    height: 300px;
    top: 40%;
    /* left: 50%;
    transform: translate(-50%, -25%); */
  }

  .fun-zone-hero .fun-zone-page-section {
    height: 300px;
    top: 35%;
  }
  .fun-zone-hero .fun-zone-page-section .fun-zone-page-container {
    max-width: 450px;
  }

  .fun-zone-container {
    max-width: 600px;
  }

  .fun-zone-page-container {
    max-width: 600px;
    top: -50%;
    transform: translate(-50%, 0)
  }

  #birthday-quickbook {
    padding: 2rem 0;
  }

  /* CAREERS */

  .styled-table {
    background-color: var(--light-off-white);
    box-shadow: none;
  }

  .styled-table thead {
    display: none;
  }

  .styled-table tbody,
  .styled-table tbody tr,
  .styled-table td,
  .styled-table th {
    display: block;
    width: 100%;
  }
  .styled-table td,
  .styled-table th {
    padding: 1rem 3rem 1rem 1rem;
  }
  .styled-table tbody tr td {
    padding-left: 50%;
    min-height: 50px;
    position: relative;
    text-align: right;
  }

  .styled-table tbody tr td:before {
    color: var(--blue);
    content: attr(data-label);
    font-size: 0.875rem;
    font-size: var(--table-font);
    font-weight: 600;
    left: 0;
    padding-left: 3rem;
    position: absolute;
    text-align: left;
    width: 50%;
  }

  .styled-table .flex-table-row {
    width: unset;
  }

  .styled-table tbody tr {
    border-radius: 2rem;
    margin-bottom: 2rem;
    padding: 2rem 0;
    background-color: #fff;
    box-shadow: 0 0 20px rgba(0, 0, 0, 0.15);
  }

  .styled-table tbody tr:last-of-type {
    margin-bottom: 0;
    border-radius: 2rem;
    border-bottom: 2px solid var(--dark-blue-alpha-strong);
  }

  .overview,
  .gift-voucher-description {
    flex-direction: column-reverse;
  }

  .career-main {
    gap: 2rem;
  }

  .gift-voucher-description,
  .gift-voucher-image {
    width: 100%;
  }
  .skate-card.skate-card-product .img-container {
    height: 160px;
  }

  /*PATCH PAGE */
  .blue-bgs-flex {
    flex-direction: column;
  }

  .patch-dark-blue-bg {
    gap: 5rem;
    padding: 1.5rem;
  }

  .img-and-anim .img-container,
  .img-and-anim .gif-container {
    height: 160px;
    width: 160px;
    top: 0;
  }

  .patch-dark-blue-bg.memberships-yellow-bg .img-and-anim .img-container,
  .patch-dark-blue-bg.memberships-yellow-bg .img-and-anim .gif-container {
    top: 0;
  }

  .dark-blue-bg.rewards .patch-dark-blue-bg .blue-bg-container {
    flex-wrap: wrap;
  }

  .dark-blue-bg.rewards .patch-dark-blue-bg .blue-bg {
    min-width: calc(50vw - 2rem);
    margin-bottom: 2rem;
    padding-top: 100px;
  }
  .dark-blue-bg.rewards .patch-dark-blue-bg .blue-bg.dark {
    padding-top: 150px;
  }

  .dark-blue-bg.rewards
    .patch-dark-blue-bg
    .blue-bg-container
    .blue-bg
    .img-container {
    min-width: 100px;
    width: 130px;
  }

  .patch-dark-blue-bg .blue-bg {
    padding-top: 120px;
  }

  .patch-intro-flex-1 {
    flex-direction: column;
  }

  .patch-intro .white-bg .price {
    margin-right: 10%;
  }
  .patch-intro .blue-bg div:first-child {
    flex: unset;
  }
  .patch-intro .blue-bg div:last-child {
    flex: unset;
  }
  .slide-msg {
    transition-delay: 1s;
  }

  .events .skate-card {
    width: calc((100vw - 2rem) / 2 - 4rem);
  }

  .btn-flex {
    flex-direction: column;
  }
  .quickbook .select-selected,
  .quickbook-option .false-dropdown {
    font-size: var(--heading6);
    font-weight: normal;
    color: var(--dark-blue);
    font-weight: bold;
  }

  .quickbook .select-items div {
    font-size: var(--heading6);
  }

  .quickbook-option .false-dropdown:after,
  .quickbook-option .false-dropdown:before {
    /* right: 2px; */
  }
  .quickbook-option .false-dropdown:after {
    top: 11px;
  }

  #selection span,
  #select-attendees span {
    font-size: var(--heading6);
    font-weight: normal;
  }

  #selection .output,
  #select-attendees .output {
    /* font-size: var(--small); */
  }
  #select_attendees {
    top: 0;
  }

  .checkout .option {
    /* font-weight: normal;
    text-align: left;
    justify-content: flex-start; */
  }
  .checkout-options-section select {
    font-size: var(--body);
  }
  .checkout-options-section {
    gap: 1rem;
  }

  .latest-vacancies {
    padding: 0 0 6rem;
  }

  .skate-card .lesson-text p, .skate-card .lesson-text * {
    font-size: var(--small);
  }

  .lessons .skate-card .img-container {
    height: 200px;
  }

  .skate-card-book-btn-flex {
    flex-direction: column;
    align-items: flex-start;
    gap: 0.5rem;
    padding-top: 0.5rem;
  }
  .patch-dark-blue-bg.memberships-yellow-bg {
    gap: 6rem;
  }

  .patch-dark-blue-bg.memberships-yellow-bg .blue-bgs-flex {
    gap: 5rem;
  }

  .quiz-modal-inner #close-btn {
    width: 40px;
  }

    /* .hero-flex-with-logo {
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
  } */

  .hero-logo {
    width: 250px;
  }

  .patch-intro-flex-1 .flex-item-2 {
    max-height: unset;
  }

  .patch-intro .memberships-offers-carousel-container .single-item {
    max-width: unset;
    width: 97.5vw;
  }

  #last-line-mem-intro-1 {
    display: block;
  }
  #last-line-mem-intro-2 {
    display: none;
  }

  .ice-skating-ads {
    height: 380px;
  }

  #rewards-find-out-more-btn-bottom {
    margin: 0;
  }

  .checkout-title-and-stages-container {
    flex-direction: column;
    gap: 2rem;
  }

  .checkout .container-calendar {
    width: 100%;
  }

  .public-skate-calendar-result p {
    font-size: var(--heading6);
  }

  .patch-intro .price {
    width: 150px;
    height: 150px;
  }

  .patch-intro .price span:first-of-type {
    font-size: var(--heading1);
  }

  .ice-account-details-container .patch-intro  .patch-active .price.patch-price {
    transform: translateX(0);
    right: 1rem;
  }

  .custom-select-register-login .select-items, .custom-select-register-login .select-items div {
    border-radius: 0 0 1rem 1rem;
    }
    .flex-55vh {
      height: 85vh;
    }
    .flex-third {
      flex: 2;
    }

    .cafe-flex {
      flex-direction: row;
      justify-content: space-between;
      width: 100%;
      align-items: flex-end;
    }

    .flip-card-back small {
      width: 250px;
    }

    #quiz-results.fun-zone-page-section {
      height: 350px;
      /* transform: translate(-50%, 0); */
    }
    #quiz-results.fun-zone-page-section .spacer{
      display: none;
    }
    #quiz-results .well-done {
      font-size: 8rem;
    }

    .star-bg-block {
      padding: 6rem 0;
    }
    .book-now-notice {
      font-size: var(--small);
    }

}

@media only screen and (max-width: 768px) and (orientation: portrait) {


  #planet-1 {
    display: none
  }

  .character-1 {
    top: 70px;
    left: 20%;
  }
  .character-2 {
    display: none
  }

  #characters-container #users-flag {
    width: 225px;
    height: 225px;
    left: 70%;
    bottom: 48px;
  }

  #characters-container {
    bottom: -70px;
  }

  #characters-container .astro {
    height: 650px;
  }

  #characters-container .astro:nth-of-type(2) {
    left: 0;
  }
  #characters-container .astro:nth-of-type(3) {
    left: 24%;
  }
  #characters-container .astro:nth-of-type(4) {
    left: 48%;
  }
  #characters-container .astro:last-of-type {
    top: 10px;
    height: 625px;
    left: 72%;
  }

  .ind-ice-card-setup #confirm-and-pay {
    margin-top: 0;
  }
  .ind-ice-card-setup #add-a-new-family-member {
    margin-top: -3.5rem;
  }

}

@media only screen and (max-width: 700px) {
  .scroll-across-container {
    display: block;
  }

  .gift-vouchers .skate-cards-container .skate-card {
    min-width: 360px;
  }

  .gift-vouchers .skate-cards-container {
    justify-content: flex-start;

    /* flex-wrap: nowrap;
    overflow-x: scroll; */
    /* gap: 0; */
  }

  /* #illustrations-container img:first-of-type {
    height: 150px;
    left: -140px;
    top: unset;
    bottom: 0;
    opacity: 0.35;
  }
  #illustrations-container img:nth-of-type(2) {
    top: 10%;
    height: 160px;
    right: -30px;
    opacity: 0.35;
  }
  #illustrations-container img:nth-of-type(3) {
    height: 140px;
    left: -100px;
    top: 0;
    opacity: 0.35;
  }
  #illustrations-container img:nth-of-type(4) {
    height: 250px;
    top: 55%;
    right: 65px;
    opacity: 0.35;
  } */

  #illustrations-container img:first-of-type {
    height: 75px;
    left: 140px;
    top: unset;
    bottom: 40px;
    /* opacity: 0.5; */
  }
  #illustrations-container img:nth-of-type(2) {
    top: 15%;
    height: 80px;
    right: -10px;
    /* opacity: 0.5; */
  }
  #illustrations-container img:nth-of-type(3) {
    height: 70px;
    left: 120px;
    top: 140px;
    /* opacity: 0.5; */
  }
  #illustrations-container img:nth-of-type(4) {
    height: 125px;
    top: 55%;
    right: 50px;
    /* opacity: 0.5; */
  }
  .featured-recruit-inner {
    flex-direction: column;
  }

  .featured-recruit-inner p {
    max-width: unset;
  }

  .blue-bg.birthday-page {
    height: unset;
  }
  .blue-bg.birthday-page.menus,
  .blue-bg.birthday-page .container-wide {
    min-height: 450px;
  }

  #birthday-parties-text {
    width: 550px;
  }

  #users-planet-img-container {
    height: 450px;
    width: 450px;
    top: -80px;
    right: 0;
  }

  #planet-1 {
    width: 100px;
    height: 100px;
    left: 35%;
    top: 0;
  }

  #planet-2 {
    width: 125px;
    height: 125px;
    top: 8%;
  }

  #planet-3 {
    width: 200px;
    height: 200px;
    top: 45%;
    left: 0;
  }
  #planet-4 {
    width: 180px;
    height: 180px;
    top: 20%;
    left: 25%;
  }
  #planet-5 {
    width: 120px;
    height: 120px;
    top: 50%;
    left: 30%;
    display: block;
  }

  .bd-star {
    width: 40px;
  }
  .bd-star-2 {
    top: 10%;
  }
  .bd-star-4 {
    right: unset;
    left: 0;
    top: 60%;
  }
  .bd-star-5 {
    left: 25%;
  }
  .character-2 {
    height: 210px;
    right: 0;
  }
  .character-1 {
    left: 22.5%;
    height: 200px;
  }

  .gift-voucher-design p {
    font-size: var(--body);
  }

  .profile-patch-flex.membership-perks-container {
    flex-direction: column;
  }

  .patch-intro .blue-bg h2 img {
    display: none;
  }

  .ice-account-details-container .patch-intro .price {
    position: absolute;
    top: 0;
    right: 0;
    transform: translateY(-25%);
    flex-direction: row;
    height: fit-content;
    width: fit-content;
    border-radius: 2rem;
    gap: 1rem;
    padding: 1rem;
  }
  .patch-intro .price span:first-of-type {
    font-size: var(--heading1);
  }

  .patch-intro .blue-bg{
    padding: 4rem 2rem;
  }
  .patch-intro .yellow-bg{
    padding: 2rem;
  }


  .patch-intro .blue-bg h2 {
    font-size: var(--heading3);
  }
  .patch-intro .blue-bg h3 {
    font-size: var(--heading4);
  }

  .my-offers-container .my-offer-card {
    flex: unset;
    width: calc((100% - 1rem) / 3);
    min-width: 180px;
  }

  .skate-card,
  .three-or-five .skate-card,
  .hockey-lessons .skate-card {
    width: 100%;
    max-width: 340px;
  }

  /* Optional: Styling the scrollbar for better visibility */
  .skate-cards-container::-webkit-scrollbar {
    height: 0;
  }

  .desktop-lessons {
    display: none;
  }
  .mobile-lessons {
    display: block;
  }

  .skate-cards-container {
    /* flex-wrap: nowrap;
    overflow-x: scroll; */
    /* gap: 0; */
  }

  .lessons .skate-card {
    height: 100%;
  }

  .skate-card,
  .three-or-five .skate-card,
  .hockey-lessons .skate-card {
    min-width: 360px;
    max-width: 360px;
  }

  #presents-container img {
    width: 90px;
  }

  #presents-container img:first-of-type {
    left: -160px;
    bottom: 50px;
  }

  #presents-container img:nth-of-type(2) {
    left: -95px;
    bottom: 30px;
  }

  #presents-container img:nth-of-type(3) {
    left: -25px;
    bottom: 30px;
  }

  #presents-container img:nth-of-type(6) {
    left: 35px;
    bottom: 45px;
  }

  .banner-desktop {
    display: none;
  }

      .hero-flex-with-logo {
    flex-direction: column;
    justify-content: flex-end;
    align-items: flex-start;
      }

  .hero-logo {
    display: none;
  }

  .hero-logo-mobile {
    display: block;
    margin-top: 2rem;
    width: 90%;
    max-width: 400px;
  } 

  .ice-skating-ads {
    height: 350px;
  }
  .ice-skating-ads .ad-container {
    gap: 0;
  }

  .new-line-mobile {
    display: block;
  }

  .flip-card-food-and-drink, .flip-card-food-and-drink-wide{

    min-width: 175px;
  }
  .my-account-memberships-flex .membership-details-card.blue-bg .price {
    top: 0;
    right: 1rem;
  }
  .my-account-memberships-flex .membership-details-card.blue-bg {
    margin-top: 1rem;
  }

  .membership-details-card .input-flex {
    flex-direction: column;
  }
  .membership-details-card .input-flex .form-group, .membership-details-card .input-flex .form-group-with-label, .membership-details-card .input-flex .form-group.file-input-container {
    width: 100%;
  }
  
  .membership-details-card .input-flex .form-group-with-label {
    margin-bottom: 1rem;
  }

  .form-group-with-label.form-group-with-label-memberships {
    margin-top: 0;
  }

  .patch-intro .bullet-list-item p {
    font-size: var(--body);
  }
}
/* mobile large */
@media only screen and (max-width: 600px) {
  .footer-inner-flex {
    /* justify-content: flex-start; */
  }
  .footer-column-container-mobile {
    margin: 0 0 5rem;
    display: block;
    width: 100%;
  }
	
	.footer-logo-mobile {
  display: block;
}
	
  .footer-socials-container {
    flex-direction: row;
  }

  .footer-bottom-mobile {
    text-align: left;
    left: 2.5rem;
  }

  .footer h3 {
    font-size: var(--heading5);
  }

  .footer-inner div a,
  .footer-inner div p,
  .footer-inner div h3 {
    margin-bottom: 1.5rem;
  }

  .footer-column-container:last-of-type {
    display: none;
  }

  .grid-image-section {
    flex-direction: column;
    height: unset;
  }

  .grid-image-section .left,
  .grid-image-section .right {
    width: 100%;
  }

  .grid-image-section .text-container {
    padding: 2rem;
  }

  .heading,
  .heading-white {
    font-size: var(--heading4);
  }

  .blue-bg .subheading,
  .dark-blue-bg .subheading {
    font-size: var(--heading5);
  }

  .upcoming-events.flex {
    /* flex-direction: column; */
    gap: 0;
  }

  .dont-miss .flex-third,
  .dont-miss .flex-two-thirds,
  .grey-blue-bg .flex-two-thirds {
    flex-direction: column;
  }

  .dont-miss .gift-voucher .padded-text {
    height: 50%;
    width: 100%;
  }
  .flex-two-thirds {
    flex: 4;
  }



  .find-us .address-flex .address {
    flex-direction: column;
  }

  .find-us.dark-blue-bg {
    padding: 4rem;
  }

  .map-flex {
    align-items: flex-start;
  }


  .find-us .address h3:last-of-type {
    margin-bottom: 2rem;
  }

  .btns-container div:last-of-type {
    width: unset;
  }

  .find-us .btns-container *,
  .find-us .btns-container .white-btn,
  #get-directions-mobile {
    width: 100%;
    text-align: center;
  }

  .social p {
    font-size: var(--body);
  }
  .btn-med {
    font-size: var(--heading6);
  }

  .footer-column-container-mobile {
    margin: 0;
  }

  .footer-column-container {
    margin: 0 3rem;
  }

  .footer-column-container:first-of-type {
    margin: 0 3rem 0 0;
  }

  .book-now-desktop {
    display: none;
  }

  .dont-miss .flex-third .flex-half {
    display: flex;
    flex-direction: column;
  }

  .dont-miss .flex-third .flex-half .flex-square {
    width: 100%;
    height: unset;
  }
  .dont-miss .white-bg {
    max-width: unset;
  }

  .upcoming-events-cards-container {
    height: 550px;
  }
  .upcoming-events-cards-container.news-cards-container {
    /* height: 620px; */
    height: 570px;
  }
  .upcoming-events-cards-container.news-cards-container .info-card img {
    /* height: 620px; */
    object-position: center;
  }
  .upcoming-events-cards-container .info-card {
    min-width: 280px;
    width: 80%;
    max-width: 340px;
    height: 400px;
  }

  .upcoming-events-cards-container.news-cards-container .info-card {
    height: 420px;
    min-width: 310px;
    width: 300px;
  }
  .upcoming-events-cards-container.news-cards-container .info-card .info-card-text {
    padding: 2rem 2rem 0;
  }

  .upcoming-events-cards-container.news-cards-container .info-card img {
    height: 45%;
  }
  
  .upcoming-events-cards-container .info-card.center {
    margin: auto 3rem;
  }

  .info-card img {
    /* height: 40%; */
    height: 48%;
    object-position: bottom;
  }
  .info-card-text {
    /* height: 60%; */
    height: 52%;
  }
  .info-card-price .medium,
  .info-card-heading,
  .btn-med {
    font-size: var(--body);
  }

  .info-card .yellow-text {
    font-size: var(--smaller);
  }
  .info-card-text {
    padding: 2rem;
  }
  .btn-sml {
    font-size: var(--body);
  }
  .skate-card {
    width: 100%;
    max-width: unset;
  }

  .gift-vouchers .skate-cards-container {
    justify-content: flex-start;
  }

  .gift-vouchers .skate-card {
    min-width: 360px;
  }
/* 
  .gift-vouchers .skate-card .img-container {
    min-height: 300px;
  } */

  .s-and-s div p {
    width: 100%;
  }

  .s-and-s h2 {
    font-size: var(--heading2);
  }

  .hero-low-text h1 {
    font-size: var(--heading1);
    z-index: 2;
  }

  .s-and-s-circle-1 {
    display: none;
  }

  .s-and-s-circle-2 {
    bottom: 32%;
    right: -15%;
  }

  .s-and-s .details {
    width: unset;
  }
  .quiz h3,
  .blue-center h3,
  .outline-btn {
    font-size: var(--heading6);
  }

  .outline-btn {
    width: 100%;
  }

  .quiz,
  .blue-center {
    padding: 2rem;
  }

  .skate-card.skate-card-public {
    flex-basis: 100%;
  }

  #close-btn {
    top: 0.5rem;
    right: 0.5rem;
    z-index: 1000;
  }

  /* BIRTHDAYS PAGE */

  .fun-zone-section {
    height: 450px;
    display: none;
  }

  .fun-zone-container {
    max-width: unset;
    width: 100%;
  }


  .star-bg .price {
    height: 150px;
    width: 150px;
    transform: translate(0, -80%);
    top: 42%;
  }

  .star-bg .price span:first-of-type {
    font-size: var(--heading01);
  }
  .star-bg .price span:last-of-type {
    font-size: var(--heading5);
  }



  /* #illustrations-container img:first-of-type {
    height: 150px;
    left: unset;
    right: -100px;
    top: unset;
    bottom: -150px;
  }
  #illustrations-container img:nth-of-type(2) {
    top: 25%;
    height: 160px;
    right: -90px;
  }
  #illustrations-container img:nth-of-type(3) {
    height: 140px;
    left: -90px;
    top: 0;
  }
  #illustrations-container img:nth-of-type(4) {
    height: 250px;
    top: 65%;
    right: unset;
    left: -180px;
  } */

  #illustrations-container img:nth-of-type(2) {
    top: 20%;
  }
  #illustrations-container img:nth-of-type(4) {
    right: 5px;
  }
  .what-happens .steps {
    gap: 2rem;
  }
  .what-happens .steps .step-arrow {
    display: none;
  }

  #planet-3 {
    height: 140px;
    width: 140px;
  }

  #users-planet-container {
    width: 100%;
    max-width: 500px;
  }
  .all-recruits {
    gap: 1rem;
  }

  #characters-container {
    width: 84%;
    bottom: -140px;
  }

  #characters-container .astro {
    height: 500px;
  }

  #characters-container .astro:last-of-type {
    height: 480px;
    top: 15px;
  }

  #characters-container #users-flag {
    left: 78%;
  }

  .what-happens,
  .blue-bg.birthday-page {
    padding: 3rem 0;
  }

  .blue-bg.birthday-page h2 {
    margin: 0 0 1rem;
    /* font-size: var(--heading5); */
  }

  .recruits {
    margin: 3rem auto;
  }

  .what-happens .steps {
    margin-top: 3rem;
  }

  .star-bg {
    padding: 3rem 0;
  }

  #illustrations-container-tablet img:first-of-type {
    height: 75px;
  }
  #illustrations-container-tablet img:nth-of-type(2) {
    height: 70px;
  }
  #illustrations-container-tablet img:nth-of-type(3) {
    height: 50px;
  }
  #illustrations-container-tablet img:nth-of-type(4) {
    height: 90px;
  }

  /* CAREERS PAGE */
  .career-option {
    width: calc(50vw - 2rem);
  }

  .gift-voucher-designs-container label {
    width: calc(50% - 1rem);
  }

  .gift-voucher-design p {
    font-size: var(--heading5);
  }

  .login-register-modal {
    padding: 7rem 2rem;
  }

  .login-register-modal-container {
    padding: 6rem 0;
  }

  .login-register-modal .close {
    top: 2rem;
    right: 2rem;
  }

  /* MY ACCOUNT PAGE */
  .transaction,
  .transaction-details {
    flex-direction: column;
  }
  .transaction,
  .transaction-details {
    flex-direction: column;
  }

  .transaction#full-purchase-history {
    flex-direction: row;
  }
  .transaction#full-purchase-history h3 {
    font-size: var(--heading6);
  }
  .transactions-container .transaction {
    padding: 1.5rem 0.5rem 1.5rem 2rem;
  }

  /* .skate-card,
  .three-or-five .skate-card {
    min-width: 340px;
    max-width: unset;
    margin-bottom: 1rem;
  } */

  .skate-card.skate-card-product .img-container {
    height: 250px;
  }

  /* PATCH */
  .patch-intro .blue-bg {
    display: block;
  }
  .patch-dark-blue-bg {
    padding: 1.5rem 3rem;
  }

  .patch-dark-blue-bg h2 {
    font-size: var(--heading2);
  }

  .patch-dark-blue-bg .blue-bg h3 {
    font-size: var(--heading4);
  }
  .patch-intro h2 {
    font-size: var(--heading4);
    margin-bottom: 1rem;
  }
  .patch-intro .blue-bg h2 img {
    top: 0;
  }

  .patch-intro .blue-bg .price {
    position: absolute;
    top: -45%;
    transform: translateY(50%);
    right: 0;
  }
  .patch-intro .blue-bg .price.patch-price {
    top: 0;
    transform: translateY(0);
    border-radius: 1.5rem;
  }

  .membership-intro .blue-bg .price {
    /* top: -15%; */
    top: -20%;
    transform: translateY(50%);
  }

  .membership-intro .patch-intro-flex.patch-intro-flex-1 {
    gap: 3rem;
  }
  .membership-intro .patch-intro-flex.patch-intro-flex-2 {
    gap: 8rem;
  }

  .patch-intro .blue-bg {
    padding-top: 7rem;
  }

  /* 
  .custom-file-upload {
    margin: 18.5px 0 0;
  
  } */
  /* 
  .custom-file-upload img {
    height: 48px;
  } */

  .success-page-text-container {
    padding: 2rem;
  }

  .patch-hero {
    background-position: 45% 35%;
  }

  .grid-image-section .left .tall,
  .grid-image-section .right .wide {
    height: 300px;
  }

  .events .skate-card {
    min-width: 250px;
  }
  .event-flex {
    flex-direction: column;
  }
  .skate-card-book-btn-flex {
    flex-direction: row;
    gap: 0;
    padding-top: 0.5rem;
  }

  .checkout .activity {
    width: 100%;
  }

  .checkout-activity-img-container {
    height: 260px;
    border-radius: 3rem;
  }

  .checkout .activity p {
    font-size: var(--heading6);
    bottom: 1.5rem;
    left: 2.5rem;
  }

  #ice-skating-details-container .input-flex, #details-container .input-flex {
    flex-direction: column;
    margin-bottom: 2rem;
    position: relative;
  }

  #ice-skating-details-container  .input-flex .form-group-with-label {
    width: 100%;
  }

  .key-items {
    gap: 1rem;
  }

  .ice-skating-ads {
    height: unset;
    width: 100%;
    margin-top: 1rem;
  }

  .ice-skating-ads .ad-container {
    flex-direction: column;
  }

  .ice-skating-ads .ad-container .ad {
    width: 100%;
  }
  .food-and-drink-flips-flex {
gap: 1rem;
  }
  .flip-card-food-and-drink{

    min-width: 46vw;
    height: 275px;
  }

  .flip-card-food-and-drink-wide{
    height: 275px;
    min-width:60vw;
    order: 3;
  }

  .flip-card-3{
    order: 4;
  }
  .flip-card-5{
    order: 5;
  }

  .btn-flex-wide {
    flex-direction: column;
  }
  .btn-flex-wide .btn-flex-dropdown-container {
    width: 100%;  
  }

   /* HOLIDAYS PAGE */
   .holidays-cards-outer-flex {
    flex-direction: column-reverse;
  }

  #tall-card-gif-1, #tall-card-img-2 {
    display: none;
  }

  .skate-card.blue-bg {
    width: 100%;
  }

  .skate-card.skate-card-tall {
    flex-direction: column;
    gap: 0;
  }

  .dark-blue-bg.patch-intro.holidays-dark-bg {
    /* margin-top: 5rem; */
    padding-top: 4rem;
  }

  .holidays-pass-img-holder {
    display: block;
  }

  
  .dark-blue-bg.holidays-dark-bg .patch-dark-blue-bg .blue-bg .price {
    position: absolute;
    top: -25px;
    width: 125px;
    height: 125px;
    right: 1rem;
  }

  .dark-blue-bg.holidays-dark-bg .patch-dark-blue-bg .blue-bg .price span:first-of-type {
    font-size: var(--heading3);
  }

  .dark-blue-bg.holidays-dark-bg .patch-dark-blue-bg .blue-bg .price span:last-of-type {
    font-size: var(--body);
  }

  .info-card-info {
    -webkit-line-clamp: 3;
  }

  .skate-card.skate-card-product.blue-bg {
    flex-basis: 100%;
  }
  .clear-inputs {
    position: absolute;
    top: -10px;
    right: -2px;
  }

  .footer-inner-flex.footer-flex-container {
    margin-bottom: 4rem;
  }

  .skate-card.skate-card-public .img-container {
    height: 350px;
  }
  .my-account-memberships-flex .membership-details-card.blue-bg .price {
    top: 2rem;
    top: -4rem;
  }
  #order-summary .option-container.confirmation-img {
    height: 250px;
  }

  .sign-up-btn {
    max-width: 350px;
  }

  .cafe-flex {
    flex-direction: column;
    align-items: flex-start;
  }

  .ice-skating-page-hero {
    background-position: 46.5% 15%;
  }
  .fun-zone-page-section {
    height: 200px;
  }

  .hygiene-rating-mobile {
    display: flex;
    flex-direction: column;
    width: 100%;
  }
  .hygiene-rating-mobile img {
    width: 100%;
  }
  .holiday-hero {
    background-position: 22.5%, top;
  }

  .event-map-flex {
    flex-direction: column;
  }

  .checkout-choose-birthday-extras {
    gap: 1rem;
  }
}

/* mobile large */
@media only screen and (max-width: 480px) {
  .container {
    padding-left: 2rem;
    padding-right: 2rem;
  }

  .container-wide {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }

  .container-wide.dont-miss {
    padding-left: 1rem;
    padding-right: 1rem;
  }

  .career-container {
    padding-top: 2rem;
    padding-bottom: 2rem;
  }

  .nav-links {
    padding: 4rem 0 4rem 2rem;
  }

  .grey-blue-bg {
    padding: 3rem 0;
  }
  .spacer {
    padding: 2rem;
  }

  .btn-wide {
    width: 100%;
  }

  .hero-flex h2 {
    font-size: var(--heading5);
  }

  .subheading-thin,
  .subheading-thin-white {
    font-size: var(--heading5);
  }
  .subheading-thin-sml,
  .subheading-bold-sml {
    font-size: var(--heading6);
  }
  .select-selected {
    font-size: var(--heading6);
  }
  .select-items div {
    font-size: var(--body);
  }

  /* .heading-red-underline::after, .heading-blue-underline::after, .heading-white-underline::after {
    width: 80%;
    margin: 0 auto;
  } */
  .nav-logo-container {
    left: 2rem;
    /* width: 120px; */
  }
  .nav-icons {
    right: 2rem;
    /* width: 120px; */
  }

  .hero-flex h1 {
    font-size: var(--heading2);
  }
  .btn {
    font-size: var(--heading6);
  }

  .find-us a {
    font-size: var(--body);
  }

  .find-us.dark-blue-bg {
    padding: 3rem 2rem;
  }
  .find-us .address-flex .map {
    height: calc(100vw - 7rem);
  }

  .info-card-price .medium,
  .btn-med {
    font-size: var(--heading6);
  }

  .footer-separator {
    margin: 0 1rem 0;
  }

  .dont-miss .blue-bg {
    padding: 3rem 1.5rem;
  }

  .flex-55vh {
    height: 100vh;
  }
  .flip-card-back {
    flex-direction: column;
    justify-content: flex-end;
  }

  .flip-card-back h2 {
    width: unset;
    font-size: var(--heading6);
  }
  .flip-card-back p {
    font-size: var(--small);
  }

  .upcoming-events-cards-container {
    padding-right: 20px;
    padding-left: 2rem;
  }

  .no-bg .subheading {
    font-size: var(--heading4);
  }

  .s-and-s h2 {
    font-size: var(--heading3);
  }

  .s-and-s-images {
    bottom: 375px;
    top: 1.5rem;
  }

  .s-and-s .details {
    top: 545px;
    bottom: 1.5rem;
  }

  .s-and-s-circle-2 {
    right: -45%;
    bottom: 40%;
  }

  .skate-cards-container {
    margin: 0 0 2rem;
    width: 100%;
  }

  .skate-card,
  .three-or-five .skate-card,
  .hockey-lessons .skate-card {
    min-width: 93vw;
    /* max-width: 340px; */
  }

  /* BIRTHDAYS PAGE */

  .featured-recruit-container {
    min-width: 350px;
    max-width: 350px;
  }

  .recruits h2 {
    margin-left: unset;
    width: 100%;
    text-align: center;
  }

  .featured-recruit-inner p {
    margin-left: unset;
  }

  .recruit-container {
    min-width: 175px;
    max-width: 175px;
  }

  #users-planet-container {
    bottom: 130px;
  }

  #users-planet-img-container {
    width: 250px;
    height: 250px;
    top: -225px;
    right: 45px;
  }

  #characters-container #users-flag {
    width: 150px;
    height: 150px;
    left: unset;
    right: 0px;
    bottom: 80px;
  }

  #characters-container {
    right: 0;
    left: 15px;
    bottom: 0;
  }
  #characters-container .astro:nth-of-type(2) {
    left: -43px;
  }
  #characters-container .astro:nth-of-type(3) {
    left: 40px;
  }
  #characters-container .astro:nth-of-type(4) {
    left: unset;
    right: 115px;
  }
  #characters-container .astro:last-of-type {
    left: unset;
    right: 40px;
    height: 450px;
    top: 20px;
  }

  #characters-container .astro {
    height: 475px;
  }

  #presents-container {
    bottom: 20px;
  }
  #presents-container img {
    width: 64px;
  }

  #presents-container img:nth-of-type(2) {
    left: -115px;
  }
  #presents-container img:nth-of-type(3) {
    left: -65px;
  }

  #presents-container img:nth-of-type(6) {
    left: -25px;
  }

  .character-1 {
    top: 76px;
    left: 140px;
  }

  .character-2 {
    display: none;
  }

  #planet-1 {
    left: 20px;
    height: 75px;
    width: 75px;
    top: 280px;
    display: none;
  }

  #planet-2 {
    left: unset;
    top: 15%;
    display: none;
  }
  #planet-3 {
    left: 315px;
    top: 360px;
    height: 100px;
    width: 100px;
  }
  #planet-4 {
    width: 150px;
    height: 150px;
    left: -10px;
    top: 45%;
  }

  #planet-5 {
    right: unset;
    left: 40%;
    height: 80px;
    width: 80px;
    top: unset;
    bottom: 280px;
  }

  .bd-star-1 {
    top: 21%;
  }
  .bd-star-2 {
    top: 4%;
    left: 40%
  }
  .bd-star-3 {
    right: 50px;
  }
  .bd-star-6 {
    top: 25%;
    left: 8%;
  }

  .fun-zone-section {
    height: 325px;
  }

  .birthday-hero {
    height: 88.5vh;
  }

  .birthday-quickbook {
    /* margin-top: -6rem; */
    position: relative;
    z-index: 15;
    background-color: #fff;
    padding: 2rem 0;
  }
  #illustrations-container img:first-of-type {
    left: 75%;
    bottom: -50px;
  }
  #illustrations-container img:nth-of-type(2) {
    top: 5%;
    right: -30px;
  }
  #illustrations-container img:nth-of-type(3) {
    top: 150px;
    left: unset;
    right: -30px;
  }
  #illustrations-container img:nth-of-type(4) {
    right: 0;
    top: 62.5%;
  }

  .what-happens p {
    font-size: var(--body);
  }

  .what-happens .step {
    gap: 0.5rem;
    margin-bottom: 0;
    max-width: unset;
  }

  .what-happens .steps .step .step-number {
    height: 32px;
    width: 32px;
    font-size: var(--heading5);
  }
  .what-happens .steps .step h4 {
    line-height: 1.25;
  }
  .what-happens .steps .step .step-img-container img {
    min-width: 125px;
  }
  .what-happens .steps .step .step-img-container {
    height: 125px;
    width: 125px;
  }

  .blue-bg.birthday-page .container-wide {
    min-height: unset;
  }
  .blue-bg.birthday-page .container-wide .faq-hide-mobile {
    display: none;
  }

  #birthday-parties-text {
    bottom: 60%;
    width: 100%;
  }

  /* CAREERS PAGE */

  .career-option h3 {
    font-size: var(--body);
  }

  .styled-table .flex-table-row {
    justify-content: space-around;
  }

  .input-flex {
    flex-direction: column;
    gap: unset;
  }

  .input-flex .form-group {
    width: 100%;
  }

  .gift-voucher-design p {
    font-size: var(--body);
  }

  #gift-voucher-form .form-group textarea {
    margin: 1rem 0 0;
  }
  div.password-requirements,
  .password-strength-container {
    font-size: 10px;
  }

  /* MY ACCOUNT PAGE */
  .transaction-details,
  .profile-my-details-flex div {
    width: 100%;
  }
  .section {
    padding: 2rem;
  }
  .your-ice-card-menu {
    min-width: unset;
  }

  .my-offers {
    padding: 2rem 1rem 4rem;
  }

  .my-offers-container .my-offer-card {
    min-height: 250px;
    min-width: unset;
    width: calc((100% - 1rem) / 2);
  }

  .red-btn-abs {
    /* width: 100%; */
    left: 0;
    right: 0;
  }

  .patch-intro .red-btn-abs {
    /* position: relative; */
    /* transform: translateY(0); */
    border-radius: 2rem;
  }

  .pass-img-holder img {
    width: 50px;
  }

  .ice-account-details-container .dark-blue-bg h2 {
    font-size: var(--heading4);
  }

  .profile-subheading {
    flex-direction: column-reverse;
  }
  .profile-subheading .active-state {
    align-self: flex-end;
    font-size: var(--heading6);
  }
  .profile-subheading {
    text-align: center;
  }
  .ice-account-details-container .pad-left {
    padding-left: 0;
  }
  .profile-form .form-flex.triple-flex .double-flex {
    flex-direction: column;
    gap: 0;
  }
  .profile-form .form-flex .double-flex .input-container {
    width: 100%;
  }

  .skate-card.skate-card-product .img-container {
    height: 230px;
  }

  .patch-intro .blue-bg h2 img {
    display: none;
  }
  .red-btn-abs {
    left: 0;
    /* width: 100%; */
  }

  .patch-intro .blue-bg {
    border-radius: 2rem;
  }

  /* .patch-intro-flex-2 {
    gap: 3rem;
  } */

  .patch-intro .img-container .note {
    top: 0;
  }

  .patch-intro .white-bg .price {
    margin-right: 0;
  }

  .patch-intro .blue-bg,
  .patch-intro .white-bg {
    padding: 1.5rem;
  }

  .patch-intro .blue-bg {
    padding-top: 6.5rem;
    padding-bottom: 3rem;
  }
  .membership-intro .blue-bg {
    padding-bottom: 4.5rem;
  }

  .membership-details-card .blue-bg .dark-blue-bg {
    border-radius: 2rem;
    padding: 6rem 2rem 3rem;

  }
  .membership-intro .blue-bg .sign-up-btn {
    width: 90%;
  }


  .patch-dark-blue-bg h2 {
    font-size: var(--heading3);
  }

  .patch-dark-blue-bg,
  .blue-bgs-flex {
    gap: 5rem;
  }

  .find-rink-details-container .opening-time h3:first-child,
  .find-rink-details-container .opening-time p:first-child {
    flex: 1;
  }

  .btn-flex {
    flex-direction: column;
  }
  .btn-flex a {
    width: 100%;
  }

  .container-calendar {
    width: 100%;
    padding: 5px;
    margin: 0;
  }

  .checkout-activity-img-container {
    height: 200px;
  }
  .checkout-activity-img-container img {
    object-position: top;
  }

  .checkout-stage-icons {
    margin-left: 0;
  }

  .checkout-stage-icons {
    gap: 0.5rem
  }

  .checkout-stage-icon {
    font-size: var(--body);
    height: 40px;
    width: 40px;
  }
  .checkout-stage-icons img {
    /* height: 35px;
    width: 35px; */
  }

  .extra-flex-icon-bg-blue {
    padding: 1rem;
    height: 70px;
    width: 70px;
  }
  .extra-flex-icon-bg {
    height: 70px;
    width: 70px;
  }

  .extra-flex {
    gap: 1.5rem;
  }

  .input-flex .form-group-with-label {
    width: 100%;
  }

  .dark-blue-bg.rewards .patch-dark-blue-bg .blue-bg {
    min-width: 100%;
  }
  .dark-blue-bg.rewards .patch-dark-blue-bg .blue-bg:last-of-type {
    margin-bottom: 0;
  }

  .location-alert-inner {
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    max-width: unset;
    width: 90%;
  }

  .alert button {
    width: 45%;
    margin: 10px 5px;
  }

  .public-skate-key .key-items {
    gap: 0.5rem 1rem;
  }

  .public-skate-key span {
    font-size: 1.3rem;
  }

  .hero-flex-with-logo {
    justify-content: flex-end;
    gap: 6rem;
  }

  .gift-vouchers .skate-cards-container .skate-card {
    width: calc((100% - 2rem));
    max-width: unset;
    min-width: 100%;
  }
  #f-and-d-extras-container .checkout-attendees-row {
    width: 46%;
  }

  .flip-card-food-and-drink{

    min-width: 45vw;
  }

  .skate-card.dark-blue-bg {
    min-width: 92vw;
    width: 92vw;
  }

  .skate-card .lesson-text .food-offerings-dropdown img {
    width: 24px; 
  }
  .checkout .public-skate-calendar-result {
    width: 170px;
  }

  .key-container > span {
    width: calc(50% - 10px);
  }
  .checkout-choose-lesson-type div{
    width: calc(50% - 0.5rem);
  }
  
  .checkout-choose-lesson-type {
    justify-content: flex-start;
  }
  .skate-card.skate-card-public .img-container {
    height: 250px;
  }

  .checkout-choose-lesson-type img{
    height: 120px;
  }

  .extra-flex-icon-bg-white {
    min-width: 180px;
  }

  .checkout-attendees-row-dark .extra-flex {
    flex-direction: column;
  }

  .flip-card .rounded-corners, .no-flip-card .rounded-corners {
    padding-bottom: 2rem;
  }

  /* MY ACCOUNT */
  .profile-menu-btn.section,.dark-section.profile-nav, a.section,   #my-details-signout, .my-offers, .transactions-container, .pad-left, .welcome-back-heading {
    display: none;
  }

  .my-details-mobile {
    display: block;
  }

  .my-account-mobile-menu {
    display: block;
    position: fixed; 
    bottom: 0; 
    background-color: #fff; 
    z-index: 1000; 
    width: 100%; 
    display: flex;
  }
  .my-account-mobile-menu img{
    width: 20%;
  }

  .patch-intro .red-btn-abs.sign-up-btn {
    transform: 
    translateY(25%);
    border-radius: 1rem;
    max-width: 350px;
  }

  .patch-intro .membership-details-card {
    border-radius: 2rem;
    padding-bottom: 3rem
  }

  .patch-intro .membership-details-card .red-btn-abs.sign-up-btn {
    position: relative;
    width: 100%;
    max-width: unset;
  }

  .patch-intro .membership-details-card .pass-img-holder {
    display: block;
  }
  .patch-intro .membership-details-card .price {
    transform: translate(0);
    top: 10px;
    right: 10px;
    width: 135px;
    height: 135px;
  }

  .patch-intro .membership-details-card.blue-bg .price span:first-of-type {
    font-size: var(--heading2);
  }

  .patch-intro .red-btn-abs.sign-up-btn#individual-ice-card-membership {
    transform: translateY(50%);


  }

  .patch-intro .patch-active .red-btn-abs.sign-up-btn {
    /* transform: translateY(0); */
    position: relative;
    max-width: unset;
    width: 100%;
  }

  .membership-details-card .input-flex .form-group-with-label {
    margin-bottom: 0;
  }

  #last-line-mem-intro-1 {
    margin-bottom: 1rem;
  }

  #order-summary .option-container.confirmation-img {
    height: 200px;
  }

  .intro-text .btn {
    margin: 4rem auto 1rem;
  }
  .food-and-drink-hero {
    background: url('../images/food-and-drink--hero-mobile.jpg') no-repeat;
    background-size: cover;
  }
  
/* .food-and-drink-hero::before { */
.old-food-and-drink-style{
  content: "";
  position: absolute;
  width: 185%;
  height: 64%;
  top: 155px;
  bottom: 0;
  right: 0;
  left:-42%;
  z-index: 0;
  background: url('../images/food_and_drink_banner_v2.jpg') no-repeat; /* No-repeat background */
  background-color: #ddd; /* Fallback background color */
  background-size: cover; /* Cover entire pseudo-element area */
  transform: rotate(90deg); /* css rotate background image, css background rotate */
}

.news-posted-by {
  flex-direction: column;
  gap: 0;
  align-items: flex-end;
}
.ind-ice-card-setup #add-a-new-family-member {
  margin-top: 1rem;
}

.flip-card-back small {
  margin-top: 1rem;
}

.checkout-attendees-row-dark .note {
  align-self: flex-start;
  margin-right: 0;
  margin-left: -2rem;
  border-radius: 0 1rem 1rem 0;
}
.sq-checkout-attendees-row {
  width: 46%;
}

.fun-zone-page-section {
  height: 130px;
}

.fun-zone-quiz .answers-and-hint {
  flex-direction: column;
  gap: 1.5rem;
  align-items: flex-start;
}

.fun-zone-quiz .hint-container {
  align-items: flex-start; 
  width: 100%;
}
.fun-zone-quiz .sml-spacer {
 display: none;
}
.fun-zone-quiz #next-button {
 width: 100%;
}
.fun-zone-quiz #planet-image {
 width: 100%;
}
#quiz-results .well-done {
font-size: 4rem;
}
#quiz-results h3 {
font-size: var(--body);
}
#quiz-results.fun-zone-page-section {
height: 140px;
/* transform: translate(-50%, 0); */
justify-content: center;
align-items: center;
margin: auto;
}


#quiz-results.fun-zone-page-section .spacer {
display: none;
}
.star-bg-block {
padding: 6rem 0;
}

/* .fun-zone-page-container {
  transform: translate(-50%, -25%);
} */

.fun-zone-page-container img {
  height: unset;
  width: unset;
}

/* .star-bg.star-bg-block {
  padding: 6rem 0;
} */

.fun-zone-quiz#planets-quiz p {
  font-size: var(--heading6);
}
.fun-zone-quiz .quiz-planet:nth-of-type(3) {
  top: 50%;
  width: 100px;
}
.fun-zone-quiz .quiz-planet:nth-of-type(9), .fun-zone-quiz .quiz-planet:nth-of-type(8), .fun-zone-quiz .quiz-planet:nth-of-type(7) {
  display: none;
}
.fun-zone-quiz .quiz-planet:nth-of-type(2) {
  left: 30%;
}

.fun-zone-quiz .quiz-planet:nth-of-type(4) {
  width: 150px;
  bottom: 30%;
  left: 10%;
}
.fun-zone-quiz .quiz-planet:nth-of-type(5) {
  width: 100px;
  right: 30%;
}

.fun-zone-quiz .quiz-planet:nth-of-type(1) {
  width: 200px;
  left: -50px;
}

.star-bg .fun-zone-quiz#planets-quiz .rocket {
  display: block;
  position: relative;
  height: 400px;
  top: 130px;
  right: -50%;
}

.fun-zone-hero .fun-zone-page-section {
  height: 215px;
  top: 40%;
}
.fun-zone-hero .fun-zone-page-section .fun-zone-page-container {
  max-width: 350px;
  top: -25%;
}

.colouring-pages {
  flex-direction: column;
}

.subheading-bold {
  font-size: var(--heading4);
}

.colouring-pages p {
  font-size: var(--body);
}
.colouring-pages-flex {
  flex-wrap: wrap;
}
.colouring-page-container {
  width: 48%; 
}

.colouring-pages #view-more-colouring {
  width: 100%
}

.colouring-page-container.mobile-hidden {
  display: none;
}
.colouring-page-container.mobile-show {
  display: flex;
  margin-bottom: 1.5rem;
}



.digital-colouring-section-text p {
  font-size: var(--body);
}

.controls-flex {
  flex-direction: column;
  gap: 1rem;
}

.canvas-wrapper {
  position: relative;
  width: 380px;
  height: 300px;
  /* overflow: hidden; */
}

.canvas-container {
  width: 380px!important;
height: 300px!important;
}
#drawing-canvas,
#svg-canvas, .upper-canvas  {
  width: 380px!important; /* Default canvas width */
height: 300px!important; /* Default canvas height */
display: block; /* Important to remove any default spacing */
}

.arrow {
  position: absolute; 
  height: 75px; 
  width: 75px; 
  left: -50px; 
  top: -10px;
}

.arrow-text {
  font-size: var(--heading6);
}

.summary-page .outline-red-btn, .summary-page .red-btn  {
  width: 100%;
}

.sign-up-btn {
  max-width: unset;
}

.membership-intro .patch-intro-flex.patch-intro-flex-2 {
  gap: 3rem;
}

#details-container .input-flex .form-group-with-label {
  width: 100%;
}


.my-account-memberships-flex .membership-details-card.blue-bg .price {
  flex-direction: column;
  border-radius: 50%;
  height: 140px;
  width: 140px;
}

.checkout .birthday-child-guests, .checkout .birthday-child-gender, .checkout .birthday-child-age, .checkout .birthday-child-gender, .checkout #bp-child-name, .checkout #bp-child-dob {
  height: 42px;
  font-size: var(--body);
}

.checkout .birthday-child-guests .select-selected {
  font-size: var(--body);
}

.checkout .birthday-child-guests .select-selected, .checkout .birthday-child-age .select-selected, .checkout .birthday-child-gender .select-selected {
  margin-top: 0px;
}

.checkout .birthday-child-guests, .checkout .birthday-child-age, .checkout .birthday-child-gender, .checkout .checkout-choose-family-members {
  padding: 0.5rem
}

#ice-skating-details-container .input-flex, #details-container .input-flex {
  margin-bottom: 0;
}

#details-container p.bp-specific-note  {
  font-size: 12px;
}

.ticker-container {
  padding: 1rem;
}
.checkout #checkout-family-members {
  margin-left: 0;
}
}
@media only screen and (max-width: 410px) {
  .flip-card-food-and-drink, .flip-card-food-and-drink-wide{

    min-width: 50vw;
    height: 200px
  }

  .sq-checkout-attendees-row {
    width: 46%;
  }

  .recruit-container {
    max-width: 168px;
    min-width: 168px;
  }

  .upcoming-events-cards-container.news-cards-container .info-card {
    min-width: 280px;
    height: 475px;
  }
  #users-planet-img-container {
    top: -165px;
  }
  .pass-img-holder img {
    width: 40px;
  }

  .patch-intro .membership-details-card .price {
    width: 120px;
    height: 120px;
  }

  .patch-intro .membership-details-card.blue-bg .price span:first-of-type {
    font-size: var(--heading3);
  }
  .patch-intro .membership-details-card.blue-bg .price span:last-of-type {
    font-size: var(--body);
  }

  .cafe-flex {
    font-size: var(--small);
  }

  .flip-card-back small {
    margin-top: 0.5rem;
  }

  .checkout-choose-birthday-extras .checkout-attendees-row {
    width: 45%;
  }
}

/* mobile medium */
@media only screen and (max-width: 376px) {
  .checkout .public-skate-calendar-result {
    width: 150px;
  }
  .hero-flex h2 {
    font-size: var(--heading6);
  }
  .heading,
  .heading-white {
    font-size: var(--heading4-5);
  }

  .s-and-s .details p {
    font-size: var(--small);
  }

  .s-and-s .details {
    top: 510px;
  }

  .s-and-s-images {
    bottom: 340px;
  }
  .s-and-s-circle-2 {
    bottom: 50%;
  }
  .checkout-stage-icon {
    height: 45px;
    width: 45px;
  }
  .checkout-stage-icon img {
    height: 32px;
    width: 32px;
  }

  /* BIRTHDAYS PAGE */
  .featured-recruit-container {
    min-width: 300px;
    max-width: 300px;
  }

  .recruit-container {
    min-width: 150px;
    max-width: 150px;
  }

  .featured-recruit-inner p {
    font-size: var(--body);
  }

  .fun-zone-section {
    height: 275px;
  }

  .star-bg .price {
    height: 120px;
    width: 120px;
    padding: 1rem;
  }

  .star-bg .price span:first-of-type {
    font-size: var(--heading1);
  }
  .star-bg .price span:last-of-type {
    font-size: var(--heading6);
  }

  #users-planet-container {
    bottom: 40px;
  }
  #users-planet-img-container {
    right: 0;
    top: -30px;
  }

  #planet-3 {
    top: 90px;
  }

  #characters-container {
    bottom: 50px;
  }

  #characters-container .astro {
    height: 425px;
  }

  #characters-container #users-flag {
    right: 5px;
    bottom: 95px;
    height: 130px;
    width: 130px;
  }

  #characters-container .astro:nth-of-type(4) {
    right: 90px;
  }

  #birthday-parties-text {
    bottom: 60%;
    width: 300px;
  }

  .birthday-quickbook {
    /* margin-top: -2rem; */
  }

  .character-1 {
    height: 160px;
  }
  .character-2 {
    height: 150px;
  }

  #illustrations-container img:first-of-type {
    left: 77.5%;
  }
  #illustrations-container img:nth-of-type(2) {
    right: -45px;
  }
  #illustrations-container img:nth-of-type(3) {
    right: -50px;
  }
  #illustrations-container img:nth-of-type(4) {
    right: -15px;
  }

  #illustrations-container-tablet img:first-of-type {
    height: 60px;
  }
  #illustrations-container-tablet img:nth-of-type(2) {
    height: 60px;
  }
  #illustrations-container-tablet img:nth-of-type(3) {
    height: 50px;
  }
  #illustrations-container-tablet img:nth-of-type(4) {
    height: 90px;
  }
  
  #characters-container .astro:nth-of-type(4) {
    right: 105px;
  }

  #characters-container .astro:nth-of-type(2) {
    left: -35px;
  }
  #characters-container .astro:last-of-type {
    right: 40px;
    height: 400px;
  }

  #planet-2 {
    right: 15%;
  }
  #planet-5 {
    bottom: 210px;
  }

  .gift-voucher-design p {
    font-size: var(--small);
  }
  .password-strength {
    width: 45%;
  }

  .password-requirement {
    display: block;
  }

  .skate-card.skate-card-product .img-container {
    height: 200px;
  }

  .map-btn.btn-sml {
    font-size: var(--small);
  }

  .skate-card .lesson-text *, .skate-card .lesson-text .blue-bg {
    margin-bottom: 0.5rem;
  }

  /* .skate-card .img-container {
    height: 30%;
    min-height: 150px;
  } */

  .skate-card,
  .three-or-five .skate-card,
  .hockey-lessons .skate-card {
    min-width: 92vw;
  }

  .btn-sml {
    padding: 0.5rem 0.75rem;
  }
/* 
  .calendar-result-container p,
  .calendar-result-container span {
    font-size: var(--small);
  } */

  .my-offers-container .my-offer-card {
    min-height: 280px;
  }

  .hero-logo-mobile {
    max-width: 300px;
  }

  .hero-flex-with-logo {
    gap: 2rem;
  }

  .patch-intro .price {
    height: 130px;
    width: 130px;
  }

  .patch-intro .price span:last-of-type {
    font-size: var(--small);
  }

  .patch-intro .blue-bg .price {
    /* top: -35%; */
    /* top: -17.5%; */
  }

  .membership-details-card.blue-bg .price span:first-of-type {
    font-size: var(--heading2);
  }

  /* .food-and-drink-hero::before {
    width: 200%;
    height: 75%;
    top: 155px;
    left:-50%;
  } */

}

/* mobile small */
@media only screen and (max-width: 320px) {
}


.new-flex {
  display: flex;
  gap: 1.5rem
}
.new-flex a
{
  width: 50%; 
  border-radius: 1.5rem
}
@media only screen and (max-width: 1024px) {
  .new-flex {
      flex-direction: column;
  }
  .new-flex a {
      width: 100%;
      height: 50%;
  }
}
@media only screen and (max-width: 768px) {
  .new-flex {
      flex-direction: row;
  }
  .new-flex a {
      width: 50%;
      height: 100%;
  }
  
  .flip-card-inner img {
      padding-bottom: 6rem;
  }
}
@media only screen and (max-width: 480px) {
    .flip-card-front span {
      left: 1rem;
    }

}
@media only screen and (max-width: 410px) {
  .flex-wide-third h3 {
      font-size: var(--heading6)
  }
  .flex-third h3 {
      font-size: var(--heading6);
  }

}

.announcement-banner {
  width: 100%; 
  background-color: var(--yellow);
  color: var(--dark-blue); 
  font-weight: 600;
  position: absolute;
  top: -2rem; 
  padding: 0.75rem;
  z-index: 2; 
  display: block; 
  text-align: center
}

.announcement-banner.red-notice {
  background-color: #ad0000;
  color: white;
}
.announcement-banner.dark-blue-notice {
  background-color: var(--dark-blue);
  color: white;
}

@media only screen and (max-width: 1500px) {
  .announcement-banner {
      top: 0;
      font-size: 12px;
      position: relative;
      padding: 0.5rem;
  }
}
@media only screen and (max-width: 1100px) {
  .announcement-banner {
      width: 100%; /* Adjust as needed */
      overflow: hidden;
      white-space: nowrap;
      }

      .announcement-text {
          display: inline-block;
          padding-left: 5%; /* Start offscreen */
          animation: tickerBanner 45s linear infinite; /* Adjust speed */
      }

      @keyframes tickerBanner {
      0% {
          transform: translateX(0%);
      }
      100% {
          transform: translateX(-100%);
      }
      }
}