@charset "UTF-8";
html {
  font-family: sans-serif;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%; }

body {
  margin: 0; }

nav, section {
  display: block; }

a {
  background-color: transparent; }

h1 {
  margin: .67em 0;
  font-size: 2em; }

img {
  border: 0; }

button {
  margin: 0;
  font: inherit;
  color: inherit; }

button {
  overflow: visible; }

button {
  text-transform: none; }

button {
  -webkit-appearance: button; }

button::-moz-focus-inner {
  padding: 0;
  border: 0; }

* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box; }

*:before, *:after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box; }

html {
  font-size: 10px; }

body {
  font-family: Helvetica Neue,Helvetica,Arial,sans-serif;
  font-size: 14px;
  line-height: 1.42857143;
  color: #333;
  background-color: #fff; }

button {
  font-family: inherit;
  font-size: inherit;
  line-height: inherit; }

a {
  color: #337ab7;
  text-decoration: none; }

img {
  vertical-align: middle; }

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0; }

h1 {
  font-family: inherit;
  font-weight: 500;
  line-height: 1.1;
  color: inherit; }

h1 {
  margin-top: 20px;
  margin-bottom: 10px; }

h1 {
  font-size: 36px; }

p {
  margin: 0 0 10px; }

ul {
  margin-top: 0;
  margin-bottom: 10px; }

ul ul {
  margin-bottom: 0; }

.container-fluid {
  padding-right: 15px;
  padding-left: 15px;
  margin-right: auto;
  margin-left: auto; }

.collapse {
  display: none; }

.dropdown {
  position: relative; }

.dropdown-menu {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 1000;
  display: none;
  float: left;
  min-width: 160px;
  padding: 5px 0;
  margin: 2px 0 0;
  font-size: 14px;
  text-align: left;
  list-style: none;
  background-color: #fff;
  -webkit-background-clip: padding-box;
  background-clip: padding-box;
  border: 1px solid #ccc;
  border: 1px solid rgba(0, 0, 0, 0.15);
  border-radius: 4px;
  -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
  box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175); }

.dropdown-menu > li > a {
  display: block;
  padding: 3px 20px;
  clear: both;
  font-weight: 400;
  line-height: 1.42857143;
  color: #333;
  white-space: nowrap; }

.nav {
  padding-left: 0;
  margin-bottom: 0;
  list-style: none; }

.nav > li {
  position: relative;
  display: block; }

.nav > li > a {
  position: relative;
  display: block;
  padding: 10px 15px; }

.navbar {
  position: relative;
  min-height: 50px;
  margin-bottom: 20px;
  border: 1px solid transparent; }

@media (min-width: 768px) {
  .navbar {
    border-radius: 4px; } }

@media (min-width: 768px) {
  .navbar-header {
    float: left; } }

.navbar-collapse {
  padding-right: 15px;
  padding-left: 15px;
  overflow-x: visible;
  -webkit-overflow-scrolling: touch;
  border-top: 1px solid transparent;
  -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1); }

@media (min-width: 768px) {
  .navbar-collapse {
    width: auto;
    border-top: 0;
    -webkit-box-shadow: none;
    box-shadow: none; }
  .navbar-collapse.collapse {
    display: block !important;
    height: auto !important;
    padding-bottom: 0;
    overflow: visible !important; } }

.container-fluid > .navbar-header {
  margin-right: -15px;
  margin-left: -15px; }

@media (min-width: 768px) {
  .container-fluid > .navbar-header {
    margin-right: 0;
    margin-left: 0; } }

.navbar-brand {
  float: left;
  height: 50px;
  padding: 15px;
  font-size: 18px;
  line-height: 20px; }

@media (min-width: 768px) {
  .navbar > .container-fluid .navbar-brand {
    margin-left: -15px; } }

.navbar-toggle {
  position: relative;
  float: right;
  padding: 9px 10px;
  margin-top: 8px;
  margin-right: 15px;
  margin-bottom: 8px;
  background-color: transparent;
  background-image: none;
  border: 1px solid transparent;
  border-radius: 4px; }

@media (min-width: 768px) {
  .navbar-toggle {
    display: none; } }

.navbar-nav {
  margin: 7.5px -15px; }

.navbar-nav > li > a {
  padding-top: 10px;
  padding-bottom: 10px;
  line-height: 20px; }

@media (min-width: 768px) {
  .navbar-nav {
    float: left;
    margin: 0; }
  .navbar-nav > li {
    float: left; }
  .navbar-nav > li > a {
    padding-top: 15px;
    padding-bottom: 15px; } }

.navbar-nav > li > .dropdown-menu {
  margin-top: 0;
  border-top-left-radius: 0;
  border-top-right-radius: 0; }

.container-fluid:before, .container-fluid:after, .nav:before, .nav:after, .navbar:before, .navbar:after, .navbar-header:before, .navbar-header:after, .navbar-collapse:before, .navbar-collapse:after {
  display: table;
  content: " "; }

.container-fluid:after, .nav:after, .navbar:after, .navbar-header:after, .navbar-collapse:after {
  clear: both; }

@-ms-viewport {
  width: device-width; }

@font-face {
  font-family: FontAwesome;
  /*
    src:url(../font-awesome/fonts/fontawesome-webfont.eot?v=4.5.0);
    src:url(../font-awesome/fonts/fontawesome-webfont.eot?#iefix&v=4.5.0) format("embedded-opentype"),url(../font-awesome/fonts/fontawesome-webfont.woff2?v=4.5.0) format("woff2"),url(../font-awesome/fonts/fontawesome-webfont.woff?v=4.5.0) format("woff"),url(../font-awesome/fonts/fontawesome-webfont.ttf?v=4.5.0) format("truetype"),url(../font-awesome/fonts/fontawesome-webfont.svg?v=4.5.0#fontawesomeregular) format("svg");
    */
  font-display: swap; }

.fa {
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

.fa-align-justify:before {
  content: ""; }

.fa-phone:before {
  content: ""; }

@font-face {
  font-family: BebasNeue;
  src: url(https://images.sunsationalswimschool.com/font/BebasNeue.otf);
  font-display: swap; }

@font-face {
  font-family: LeckerliOne-Regular;
  src: url(https://images.sunsationalswimschool.com/font/LeckerliOne-Regular.ttf);
  font-display: swap; }

@font-face {
  font-family: Poppins-Bold;
  src: url(https://images.sunsationalswimschool.com/font/Poppins-Bold.ttf);
  font-display: swap; }

@font-face {
  font-family: Poppins-Regular;
  src: url(https://images.sunsationalswimschool.com/font/Poppins-Regular.ttf);
  font-display: swap; }

nav.swim-school-navbar {
  padding-top: 15px;
  text-align: center;
  font-weight: 700; }

nav.swim-school-navbar div.info-wrapper {
  margin: 0 auto; }

nav.swim-school-navbar div.info-wrapper div.phone-number {
  text-align: center;
  float: left;
  font-size: 18px;
  display: inline-block;
  color: #1a75b5;
  margin-bottom: 10px; }

nav.swim-school-navbar div.info-wrapper div.phone-number i {
  color: #f50004; }

nav.swim-school-navbar div.info-wrapper div.login-container {
  float: left; }

nav.swim-school-navbar div.info-wrapper div.login-container a.btn-login {
  text-align: center;
  text-decoration: none;
  width: 170px;
  color: white;
  background-color: #1b7fba;
  display: block;
  border-radius: 15px;
  padding: 3px 0;
  margin: -5px auto 0; }

nav.swim-school-navbar a.sunsational-logo {
  display: block;
  background-repeat: no-repeat;
  background-position: center;
  background-size: 100% 100%;
  height: 180px;
  width: 180px; }
  .no-webp nav.swim-school-navbar a.sunsational-logo {
    background-image: url(https://images.sunsationalswimschool.com/pages/logo.png); }
  .webp nav.swim-school-navbar a.sunsational-logo {
    background-image: url(https://images.sunsationalswimschool.com/pages/logo.webp); }

nav.swim-school-navbar .navbar-header i.fa-align-justify {
  color: #f50004;
  font-size: 32px;
  line-height: 32px; }

nav.swim-school-navbar .navbar-header div.responsive-logo {
  margin-top: -10px;
  display: none; }

nav.swim-school-navbar .navbar-header div.responsive-logo a.sunsational-logo {
  width: 120px;
  height: 120px; }

nav.swim-school-navbar .navbar-header div.responsive-container {
  float: left;
  display: none;
  width: 55%;
  margin-top: 17px; }

nav.swim-school-navbar .navbar-header div.responsive-container div.info-wrapper {
  width: 100%;
  text-align: center; }

nav.swim-school-navbar .navbar-header div.responsive-container div.info-wrapper div.phone-number, nav.swim-school-navbar .navbar-header div.responsive-container div.info-wrapper div.login-container {
  text-align: center;
  width: 50%; }

nav.swim-school-navbar .navbar-header div.responsive-container div.info-wrapper div.phone-number {
  font-family: Poppins-Bold;
  font-size: 19px;
  margin-top: 3px;
  margin-bottom: 7px; }

nav.swim-school-navbar .navbar-header div.responsive-container div.info-wrapper div.login-container a.btn-login {
  width: 120px;
  padding: 2px 0; }

nav.swim-school-navbar span.logo-container {
  display: inline-block; }

nav.swim-school-navbar span.collapsible-nav {
  display: inline-block;
  vertical-align: top; }

nav.swim-school-navbar span.collapsible-nav ul.navbar-nav li {
  border-right: 1px solid #dedede; }

nav.swim-school-navbar span.collapsible-nav ul.navbar-nav li:last-child {
  border-right: none; }

nav.swim-school-navbar span.collapsible-nav ul.navbar-nav li a {
  color: #282828;
  padding-bottom: 0;
  display: block;
  min-width: 50px;
  text-align: center; }

nav.swim-school-navbar span.collapsible-nav ul.navbar-nav li a div.nav-icon {
  text-align: center;
  margin: 0 auto;
  color: #1a75b5;
  margin-bottom: 10px;
  background-position: center top;
  background-size: 900% 105%;
  width: 26px;
  height: 26px;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center; }
  .no-webp nav.swim-school-navbar span.collapsible-nav ul.navbar-nav li a div.nav-icon {
    background-image: url(https://images.sunsationalswimschool.com/pages/nav-icon-support-min.png); }
  .webp nav.swim-school-navbar span.collapsible-nav ul.navbar-nav li a div.nav-icon {
    background-image: url(https://images.sunsationalswimschool.com/pages/nav-icon-support-min.webp); }

nav.swim-school-navbar span.collapsible-nav ul.navbar-nav li a div.nav-icon.user-icon {
  background-position: 0 0;
  width: 21px; }

nav.swim-school-navbar span.collapsible-nav ul.navbar-nav li a div.nav-icon.sun-icon {
  background-position: -41px 0; }

nav.swim-school-navbar span.collapsible-nav ul.navbar-nav li a div.nav-icon.swimmer-icon {
  background-position: -92px 0;
  width: 30px; }

nav.swim-school-navbar span.collapsible-nav ul.navbar-nav li a div.nav-icon.pricing-icon {
  background-position: -141px 0; }

nav.swim-school-navbar span.collapsible-nav ul.navbar-nav li a div.nav-icon.envelope-icon {
  background-position: -188px 0; }

nav.swim-school-navbar span.collapsible-nav ul.navbar-nav li a span.text {
  font-family: BebasNeue;
  color: #111;
  font-size: 23px;
  line-height: 18px; }

nav.swim-school-navbar span.collapsible-nav ul.navbar-nav li.active a div.nav-icon {
  width: 26px;
  height: 26px;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center; }
  .no-webp nav.swim-school-navbar span.collapsible-nav ul.navbar-nav li.active a div.nav-icon {
    background-image: url(https://images.sunsationalswimschool.com/pages/nav-icon-support-active-min.png); }
  .webp nav.swim-school-navbar span.collapsible-nav ul.navbar-nav li.active a div.nav-icon {
    background-image: url(https://images.sunsationalswimschool.com/pages/nav-icon-support-active-min.webp); }

nav.swim-school-navbar span.collapsible-nav ul.navbar-nav li.active a div.nav-icon.user-icon {
  background-position: 0 0;
  width: 21px; }

nav.swim-school-navbar span.collapsible-nav ul.navbar-nav li.active a span.text {
  display: inline-block;
  padding-bottom: 3px;
  border-bottom: 3px solid #f50004;
  color: #f50004; }

nav.swim-school-navbar span.collapsible-nav ul.navbar-nav li ul.dropdown-menu {
  margin-top: 1px;
  border: 1px solid #f50004;
  border-bottom: 4px solid #f50004; }

nav.swim-school-navbar span.collapsible-nav ul.navbar-nav li ul.dropdown-menu li {
  border-bottom: 1px solid #eee; }

nav.swim-school-navbar span.collapsible-nav ul.navbar-nav li ul.dropdown-menu li a {
  text-align: left;
  padding: 10px; }

nav.swim-school-navbar span.side-container {
  display: inline-block;
  vertical-align: top; }

nav.swim-school-navbar span.side-container div.info-wrapper {
  width: 170px; }

nav.swim-school-navbar span.side-container div.info-wrapper div.phone-number, nav.swim-school-navbar span.side-container div.info-wrapper div.login-container {
  width: 170px; }

@media (max-width: 1079px) and (min-width: 785px) {
  nav.swim-school-navbar ul.navbar-nav li a span.text {
    display: none !important; } }

@media (max-width: 1079px) {
  nav.swim-school-navbar span.side-container div.info-wrapper {
    width: 140px; }
  nav.swim-school-navbar span.side-container div.info-wrapper div.phone-number {
    width: 135px;
    font-size: 14px;
    margin-bottom: 7px; }
  nav.swim-school-navbar span.side-container div.info-wrapper div.login-container {
    width: 130px; }
  nav.swim-school-navbar span.side-container div.info-wrapper div.login-container a.btn-login {
    width: 130px;
    padding: 3px 0; }
  nav.swim-school-navbar span.logo-container a.sunsational-logo {
    width: 130px;
    height: 130px; } }

@media (max-width: 785px) {
  nav.swim-school-navbar span.side-container, nav.swim-school-navbar span.logo-container {
    display: none; }
  nav.swim-school-navbar div.responsive-container, nav.swim-school-navbar div.responsive-logo {
    display: block !important; } }

@media (max-width: 520px) {
  nav.swim-school-navbar div.responsive-container {
    width: 245px !important; }
  nav.swim-school-navbar div.responsive-container div.info-wrapper div.phone-number {
    font-size: 13px !important; }
  nav.swim-school-navbar div.responsive-container div.info-wrapper div.login-container a.btn-login {
    width: 100px !important; } }

@media (max-width: 480px) {
  nav.swim-school-navbar div.responsive-container div.info-wrapper {
    margin-top: -30px; }
  nav.swim-school-navbar div.responsive-container div.info-wrapper div.phone-number {
    margin-left: 63px; } }

@media (max-width: 785px) {
  nav.swim-school-navbar .navbar-collapse.collapse {
    display: none !important; }
  nav.swim-school-navbar .navbar-toggle {
    display: block !important; }
  nav.swim-school-navbar .navbar-header {
    float: none; } }

body {
  font-family: Poppins-Regular;
  font-size: 14px; }

h1 {
  font-family: BebasNeue;
  font-size: 46px; }

h1 span.sunsational-header {
  color: #d4121a;
  font-family: LeckerliOne-Regular;
  font-size: 54px; }

.fixed-width {
  margin: 0 auto; }

@media (min-width: 992px) {
  .fixed-width {
    max-width: 950px; } }

.page-section {
  text-align: center;
  padding-top: 30px;
  padding-bottom: 30px; }

div.text-wall-container {
  color: #333;
  text-align: left;
  max-width: 580px;
  margin: auto; }

@media (max-width: 992px) {
  div.text-wall-container {
    padding: 0 20px; } }

div.photo-panel-gift-certificate-new {
  width: 100%;
  height: 30.25vw;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  margin-bottom: 0;
  margin-top: -30px;
  z-index: -1; }
  .no-webp div.photo-panel-gift-certificate-new {
    background-image: url(https://images.sunsationalswimschool.com/pages/gift-certificate-banner-new-wide-2021-11-24T02:29:18.293Z.jpg); }
  .webp div.photo-panel-gift-certificate-new {
    background-image: url(https://images.sunsationalswimschool.com/pages/gift-certificate-banner-new-wide-2021-11-24T02:29:41.309Z.webp); }

div.photo-panel-gift-certificate-new div.button-container {
  width: 100%;
  padding-top: 28%; }

div.photo-panel-gift-certificate-new div.button-container div.banner-wrapper {
  width: 295px;
  margin: 0 auto;
  position: relative; }

div.photo-panel-gift-certificate-new div.button-container div.banner-wrapper div.curly-arrow {
  width: 30px;
  height: 50px;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  position: absolute;
  left: -50px;
  top: -15px; }
  .no-webp div.photo-panel-gift-certificate-new div.button-container div.banner-wrapper div.curly-arrow {
    background-image: url(https://images.sunsationalswimschool.com/pages/yellow_arrow_banner-min.png); }
  .webp div.photo-panel-gift-certificate-new div.button-container div.banner-wrapper div.curly-arrow {
    background-image: url(https://images.sunsationalswimschool.com/pages/yellow_arrow_banner-min.webp); }

div.photo-panel-gift-certificate-new div.button-container div.banner-wrapper a.btn-book {
  display: block;
  text-align: center;
  text-decoration: none;
  margin: 0 auto;
  width: 295px;
  height: 70px;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  color: transparent; }
  .no-webp div.photo-panel-gift-certificate-new div.button-container div.banner-wrapper a.btn-book {
    background-image: url(https://images.sunsationalswimschool.com/pages/btn_buynow-min.png); }
  .webp div.photo-panel-gift-certificate-new div.button-container div.banner-wrapper a.btn-book {
    background-image: url(https://images.sunsationalswimschool.com/pages/btn_buynow-min.webp); }

@media (max-width: 1080px) {
  div.photo-panel-gift-certificate-new div.button-container div.banner-wrapper {
    width: 273px; }
  div.photo-panel-gift-certificate-new div.button-container div.banner-wrapper a.btn-book {
    width: 273px;
    height: 65px; } }

@media (max-width: 785px) {
  div.photo-panel-gift-certificate-new div.button-container div.banner-wrapper {
    width: 231px; }
  div.photo-panel-gift-certificate-new div.button-container div.banner-wrapper div.curly-arrow {
    left: -35px;
    width: 24px;
    height: 40px; }
  div.photo-panel-gift-certificate-new div.button-container div.banner-wrapper a.btn-book {
    width: 231px;
    height: 55px; } }

@media (max-width: 992px) {
  div.photo-panel-gift-certificate-new {
    height: 63.75vw; }
    .no-webp div.photo-panel-gift-certificate-new {
      background-image: url(https://images.sunsationalswimschool.com/pages/gift-certificate-banner-new-mobile-2021-11-23T18:20:43.941Z.jpg); }
    .webp div.photo-panel-gift-certificate-new {
      background-image: url(https://images.sunsationalswimschool.com/pages/gift-certificate-banner-new-mobile-2021-11-23T18:21:07.192Z.webp); }
  div.photo-panel-gift-certificate-new div.button-container {
    width: 100%;
    padding-top: 47%; } }

@media (max-width: 1079px) {
  div.photo-panel-gift-certificate-new {
    margin-top: -80px; } }

@media (max-width: 785px) {
  div.photo-panel-gift-certificate-new {
    margin-top: -30px; } }

nav, section {
  display: block; }

img {
  vertical-align: middle; }

*, :after, :before {
  box-sizing: border-box; }

html {
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  -webkit-overflow-scrolling: touch; }

body {
  margin: 0; }

img {
  border: 0;
  max-width: 100%;
  height: auto;
  vertical-align: middle; }

button {
  font-family: inherit;
  font-size: 100%;
  margin: 0; }

button, li {
  line-height: 1.6; }

button {
  text-transform: none; }

button {
  -webkit-appearance: button; }

button::-moz-focus-inner {
  border: 0;
  padding: 0; }

ul {
  padding-left: 1em; }

ul ul {
  margin-bottom: 0; }

.nav:after {
  content: "";
  display: table;
  clear: both; }

.nav {
  list-style: none;
  margin: 0;
  padding: 0; }

.nav > li, .nav > li > a {
  display: inline-block;
  zoom: 1; }

body, html {
  overflow-x: hidden; }

::-webkit-input-placeholder {
  color: #ccc; }

::-moz-placeholder {
  color: #ccc; }

:-ms-input-placeholder {
  color: #ccc; }

h1 {
  font-size: 48px;
  margin: 0 auto 1.6rem;
  font-weight: 400;
  line-height: 1.05;
  letter-spacing: -.035em;
  max-width: 600px; }

@media (min-width: 0) and (max-width: 599px) {
  h1 {
    font-size: 40px; } }

@media (min-width: 600px) and (max-width: 899px) {
  h1 {
    font-size: 40px; } }
