









/*------------------------------------*\
  #LAYOUT
\*------------------------------------*/


section.lightest-gray,
section.lightest-blue,
section.dark-blue,
section.lightest-teal {
  padding: 6rem 0;
  margin: 0;
}
section.header {
  padding: inherit;
}

.page-content__wrap {
  display: flex;
  flex-direction: row-reverse;
  width: 90%;
  max-width: 1400px;
  margin: 6rem auto;
}

.page-content__inner {
  min-width: 0;
}
.page-content__wrap:not(:has(.sidebar__block, .page-content__inner > section)) {
  margin-top: 0;
  margin-bottom: 0;
}

.page-content__inner,
.page-content--listing .page-content__inner {
  width: 100%;
  padding-right: 22em;
  margin-right: 10%;
}
.page-content__inner section .container {
  width: 100%;
  max-width: 100%;
}
.page-content__inner section {
  margin: 3rem 0;
}
.page-content__inner section:first-child {
  margin-top: 0;
}
.page-content__inner section:last-child {
  margin-bottom: 0;
}
.page-content__inner section .container > div {
  width: 100%;
  max-width: 100%;
  margin-left: 0;
  margin-right: 0;
}

aside + .page-content__inner {
  padding: 0;
  margin: 0;
}

.page-content--listing .page-content__wrap {
  margin: 0 auto;
}
.page-content--listing .page-content__wrap aside {
  display: none;
}
.page-content--listing .page-content__inner section:first-child {
  margin-top: 6rem;
}
.page-content--listing .page-content__inner section:last-child {
  margin-bottom: 6rem;
}

.page-content--search .page-content__wrap {
  flex-direction: row;
}
.page-content--search .page-content__inner {
  padding-right: 0;
  margin-right: 0;
}

.page-content--article .page-content__inner {
  max-width: 900px;
  padding: 0;
  margin: 0 auto;
}


@media only screen and (max-width: 1500px) {
  section {
    margin: 5rem 0;
  }
  section.lightest-gray,
  section.lightest-blue,
  section.dark-blue,
  section.lightest-teal {
    padding: 5rem 0;
  }
  .page-content__wrap {
    margin: 5rem auto;
  }
  .page-content__inner,
  .page-content--listing .page-content__inner {
    padding-right: 20em;
    margin-right: 8%;
  }
  .page-content--listing .page-content__inner section:first-child {
    margin-top: 5rem;
  }
  .page-content--listing .page-content__inner section:last-child {
    margin-bottom: 5rem;
  }
}

@media only screen and (max-width: 1200px) {
  .container {
    width: 92%;
  }
  section {
    margin: 4rem 0;
  }
  section.lightest-gray,
  section.lightest-blue,
  section.dark-blue,
  section.lightest-teal {
    padding: 4rem 0;
  }
  .page-content__wrap {
    width: 92%;
    margin: 4rem auto;
  }
  .page-content__inner {
    padding-right: 18em;
    margin-right: 6%;
  }
  .page-content--listing .page-content__inner {
    padding: 0;
    margin: 0;
  }
  .page-content--listing .page-content__inner section:first-child {
    margin-top: 4rem;
  }
  .page-content--listing .page-content__inner section:last-child {
    margin-bottom: 4rem;
  }
}

@media only screen and (max-width: 1000px) {
  section {
    margin: 3rem 0;
  }
  section.lightest-gray,
  section.lightest-blue,
  section.dark-blue,
  section.lightest-teal {
    padding: 3rem 0;
  }
  .page-content__wrap {
    display: block;
    width: 100%;
    margin: 0 auto 3rem;
  }
  .page-content__inner,
  .page-content--listing .page-content__inner {
    padding: 0;
    margin: 0;
  }
  .page-content__inner section .container {
    width: 92%;
  }
  .page-content__inner section:first-child,
  .page-content--listing .page-content__inner section:first-child {
    margin-top: 3rem;
  }
  .page-content__inner section:last-child,
  .page-content--listing .page-content__inner section:last-child {
    margin-bottom: 3rem;
  }
  .page-content--article .page-content__wrap {
    margin: 3rem auto;
  }
  .page-content--article .page-content__inner {
    max-width: 100%;
  }
}

@media only screen and (max-width: 800px) {
  section {
    margin: 2.5rem 0;
  }
  section.lightest-gray,
  section.lightest-blue,
  section.dark-blue,
  section.lightest-teal {
    padding: 2.5rem 0;
  }
  .page-content__wrap {
    margin: 0 auto 2.5rem;
  }
  .page-content__inner section,
  .page-content__inner section:first-child,
  .page-content__inner section:last-child,
  .page-content--listing .page-content__inner section:first-child,
  .page-content--listing .page-content__inner section:last-child {
    margin: 2.5rem 0;
  }
  .page-content--article .page-content__wrap {
    margin: 2.5rem auto;
  }
}

@media only screen and (max-width: 600px) {
  .container,
  .page-content__inner section .container {
    width: 90%;
  }
  .page-content--event .page-content__wrap {
    margin-bottom: 0;
  }
  .page-content--event .page-content__inner .copy {
    margin-bottom: 2.5rem;
  }
}









/*------------------------------------*\
  #SIDEBAR
\*------------------------------------*/





/*------------------------------------*\
  #SETUP
\*------------------------------------*/


.sidebar {
  position: sticky;
  flex: 0 0 22em;
  align-self: flex-start;
  top: 2rem;
  margin-left: 10%;
  z-index: 999;
}

.sidebar__block {
  background: var(--lightest-gray);
  padding: 1.8rem 2rem 2rem;
  border-radius: 16px;
  margin-bottom: 1.5rem;
}
.sidebar__block:last-child {
  margin: 0;
}

.block__content h6 {
  font-size: 1.2rem;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  margin-bottom: 0.3rem;
}
.block__content h5 {
  font-weight: 700;
  margin-bottom: 1rem;
}
.block__content p {
  font-weight: 500;
  line-height: 1.5;
}
.block__content .text-link {
  margin-top: 1.5rem;
}

.content__row {
  display: flex;
  justify-content: space-between;
  padding: 0.6rem 0;
  border-top: 2px dotted var(--light-gray);
  margin-top: 1.5rem;
}
.content__row p {
  font-weight: 500;
}
.content__row:last-of-type {
  border-bottom: 2px dotted var(--light-gray);
}
.content__row + .content__row {
  margin-top: 0;
}

.content__date {
  margin-bottom: 0.6rem;
}
.content__date:last-of-type {
  margin-bottom: 0;
}

.block--image {
  background: #edf2f7;
  padding: 0;
  border-radius: 16px 16px 0 0;
  margin: 0;
  overflow: hidden;
}
.block--image + .sidebar__block {
  border-radius: 0 0 16px 16px;
}

.image__default {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 205px;
}
.image__default svg {
  width: 40%;
  fill: #d9e0e8;
}


@media only screen and (max-width: 1500px) {
  .sidebar {
    flex: 0 0 20em;
    margin-left: 8%;
  }
}

@media only screen and (max-width: 1200px) {
  .sidebar {
    flex: 0 0 18em;
    margin-left: 6%;
  }
  .sidebar__block {
    padding: 1.6rem 1.8rem 1.8rem;
  }
  .block--image {
    padding: 0;
  }
}

@media only screen and (max-width: 1000px) {
  .sidebar {
    position: relative;
    display: block;
    width: 100%;
    top: 0;
    margin: 0;
  }
  .sidebar__block,
  .sidebar__block:last-child {
    width: 92%;
    margin: 3rem auto;
  }
  .sidebar--location .sidebar__block,
  .sidebar--event .sidebar__block {
    background: none;
    padding: 0;
  }
  .sidebar--location .image__default {
    display: none;
  }
  .sidebar--location .block__content h5,
  .sidebar--event .block__content h5 {
    font-size: 2.1rem;
    font-weight: 600;
    margin-bottom: 1.5rem;
  }
  .block__content h6 {
    font-size: 1.15rem;
  }
  .block--image {
    border-radius: 0;
    margin: 0 auto;
  }
  .block--image img {
    border-radius: 16px;
    margin-top: 3rem;
  }
}

@media only screen and (max-width: 800px) {
  .sidebar__block,
  .sidebar__block:last-child {
    margin: 2.5rem auto;
  }
  .sidebar--location .block__content h5,
  .sidebar--event .block__content h5 {
    font-size: 1.8rem;
  }
  .block__content h6 {
    font-size: 1.1rem;
  }
  .block--image {
    margin: 0 auto;
  }
  .block--image img {
    margin-top: 2.5rem;
  }
}

@media only screen and (max-width: 600px) {
  .sidebar__block,
  .sidebar__block:last-child {
    width: 90%;
  }
  .sidebar__block {
    padding: 1.5rem;
  }
  .sidebar__block.block--cta {
    width: 90%;
  }
  .block--image {
    margin: 0 auto;
  }
  .sidebar--location .block__content h5,
  .sidebar--event .block__content h5 {
    font-size: 1.5rem;
  }
  .block__content h6 {
    font-size: 1rem;
  }
}





/*------------------------------------*\
  #LOCATION-LINKS
\*------------------------------------*/


.block--list .list--links {
  margin-top: 1.5rem;
}

.block--list .list--links .list__item {
  padding: 0.6rem 0;
  border-top-style: dotted;
  border-bottom-style: dotted;
}
.block--list .list--links .list__link span {
  font-size: 1.2rem;
  line-height: 1.5;
  color: var(--gray);
}


@media only screen and (max-width: 1200px) {
  .block--list .list--links .list__link span {
    font-size: 1.15rem;
  }
  .block--list .list--links .list__link svg {
    flex: 0 0 1em;
  }
}

@media only screen and (max-width: 800px) {
  .block--list .list--links .list__link span {
    font-size: 1.1rem;
  }
}

@media only screen and (max-width: 600px) {
  .block--list .list--links .list__link span {
    font-size: 1.05rem;
  }
}





/*------------------------------------*\
  #CTA
\*------------------------------------*/


.block--cta {
  background: none;
  padding: 0;
  border-radius: 0;
}

.block--cta .block__content {
  position: relative;
  background: var(--lightest-blue);
  padding: 1.8rem 2rem 2rem;
  border-radius: 16px 16px 0 0;
}
.block--cta .block__content::before,
.block--cta .block__content::after {
  position: absolute;
  content: '';
  width: 100%;
  height: 16px;
  left: 0;
  right: 0;
  bottom: 0;
}
.block--cta .block__content::before {
  background: #fff;
}
.block--cta .block__content::after {
  background: var(--lightest-blue);
  border-radius: 0 0 16px 16px;
}
.block--cta .block__content h5 {
  margin-bottom: 0.5rem;
}
.block--cta .block__content p {
  font-size: 1.05rem;
}
.block--cta .block__content p + p {
  margin-top: 0.5rem;
}

.block--cta .button {
  position: relative;
  justify-content: flex-start;
  width: 100%;
  text-align: left;
  padding-left: 2rem;
  padding-right: 2rem;
  margin-bottom: 1rem;
}
.block--cta .button::before {
  position: absolute;
  content: '';
  width: calc(100% + 4px);
  height: 16px;
  left: -2px;
  right: -2px;
  top: -16px;
  background: var(--lightest-blue);
}
.block--cta .block__content + .button {
  border-radius: 0 0 16px 16px;
}
.block--cta .button:last-of-type {
  margin: 0;
}
.block--cta .button + .button {
  border-radius: 16px;
}


@media only screen and (max-width: 1200px) {
  .block--cta .block__content {
    padding: 1.6rem 1.8rem 1.8rem;
  }
  .block--cta .button {
    padding-left: 1.8rem;
    padding-right: 1.8rem;
  }
}

@media only screen and (max-width: 1000px) {
  .block--cta {
    background: var(--lightest-blue);
    padding: 1.6rem 1.8rem 1.8rem;
    border-radius: 16px;
  }
  .block--cta .block__content {
    padding: 0;
  }
  .block--cta .block__content::before,
  .block--cta .block__content::after,
  .block--cta .button::before {
    display: none;
  }
  .block--cta .block__content h5 {
    font-size: 1.35rem;
    margin-bottom: 0.5rem;
  }
  .block--cta .block__content p {
    font-size: 1.15rem;
  }
  .block--cta .button {
    width: fit-content;
    padding: 0.7rem 1.2rem 0.9rem;
    margin-top: 1.5rem;
  }
  .block--cta .button:last-of-type {
    margin-top: 1.5rem;
  }
  .block--cta .block__content + .button {
    border-radius: 8px;
  }
}

@media only screen and (max-width: 800px) {
  .block--cta .block__content h5 {
    font-size: 1.3rem;
  }
  .block--cta .block__content p {
    font-size: 1.1rem;
  }
}

@media only screen and (max-width: 600px) {
  .block--cta {
    padding: 1.5rem;
  }
  .block--cta .block__content h5 {
    font-size: 1.25rem;
  }
  .block--cta .block__content p {
    font-size: 1.05rem;
  }
}




/*------------------------------------*\
  #OVERLAY
\*------------------------------------*/


.block__bar,
.sidenav__top,
.filter__top {
  display: none;
}


@media only screen and (max-width: 1000px) {
  .sidebar--overlay {
    display: contents;
  }
  .sidebar__block.block--bar {
    display: contents;
    width: 100%;
    background: transparent;
    padding: 0;
    margin: 0;
  }
  .block__bar {
    position: sticky;
    display: block;
    top: -1px;
    background: var(--lightest-gray);
    padding: 1rem 4%;
    transition: border-shadow 0.5s ease;
    z-index: 999;
  }
  .block--filter .block__bar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    background: var(--lightest-blue);
  }
  .block__bar.is-pinned {
    box-shadow: 0 4px 6px -2px rgba(57,57,57, 0.1); 
  }
  .bar__button {
    display: inline-block;
    font-size: 1.2rem;
    font-weight: 700;
    line-height: 1.2;
    color: var(--dark-blue);
    padding: 0.1rem 1rem 0.2rem;
    border: 2px solid var(--light-blue);
    border-radius: 25px;
    transition: color 0.5s ease, border-color 0.5s ease;
    cursor: pointer;
  }
  .bar__button svg {
    width: 0.8em;
    max-height: 0.7em;
    fill: var(--light-blue);
    margin-right: 0.5rem;
    transition: fill 0.5s ease;
  }
  .bar__button:hover {
    color: var(--light-blue-hover);
    border-color: var(--light-blue-hover);
  }
  .bar__button:hover svg {
    fill: var(--light-blue-hover);
  }
  .sidenav,
  .filter {
    position: fixed;
    display: none;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: var(--lightest-gray);
    z-index: 999999;
  }
  .filter {
    background: var(--lightest-blue);
  }
  .sidenav__top,
  .filter__top {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: center;
    background: var(--dark-blue);
    padding: 1.2rem 4% 1.3rem;
  }
  .top__headline {
    font-size: 1.2rem;
    font-weight: 700;
    line-height: 1.2;
    color: #fff;
  }
  .top__headline svg {
    width: 0.8em;
    max-height: 0.7em;
    fill: #fff;
    margin-right: 0.5rem;
  }
  .top__button {
    position: absolute;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 4rem;
    height: 100%;
    top: 0;
    right: 0;
    bottom: 0;
    background: var(--light-blue);
    cursor: pointer;
    transition: background 0.5s ease;
  }
  .top__button svg {
    width: 0.9em;
    height: auto;
    fill: #fff;
  }
  .top__button:hover {
    color: #fff;
    background: var(--light-blue-hover);
  }
  .sidenav__inner {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    width: 100%;
    height: 100%;
    padding: 3rem 4%;
    overflow: auto;
  }
  .filter__inner {
    display: flex;
    flex-direction: column;
    width: 100%;
    height: calc(100% - 3rem);
    padding: 3rem 4%;
    overflow: auto;
  }
}


@media only screen and (max-width: 800px) {
  .sidenav__inner,
  .filter__inner {
    padding: 2rem 4%;
  }
  .bar__button,
  .top__headline {
    font-size: 1.15rem;
  }
}

@media only screen and (max-width: 600px) {
  .sidenav__inner,
  .filter__inner {
    padding: 2rem 5%;
  }
  .block__bar {
    padding: 0.9rem 5%;
  }
  .sidenav__top,
  .filter__top {
    padding: 1.1rem 5% 1.2rem;
  }
  .bar__button,
  .top__headline {
    font-size: 1.1rem;
  }
  .top__button {
    width: 3.6rem;
  }
}





/*------------------------------------*\
  #SIDENAV
\*------------------------------------*/


.sidenav__list li a {
  display: inline-block;
  line-height: 1.3;
  transition: color 0.5s ease;
}
.sidenav__list li a:hover {
  color: var(--light-blue);
}
.sidenav__list li a:hover svg {
  fill: var(--light-blue);
}

.sidenav__link {
  font-size: 1.6rem;
  font-weight: 700;
  color: var(--dark-blue);
}
.item--active .sidenav__link {
  cursor: default;
}
.item--active .sidenav__link:hover {
  color: var(--dark-blue);
}

.sidenav__sub-list {
  margin-top: 0.8rem;
}
.sidenav__sub-list li {
  margin: 0.5rem 0;
}
.sidenav__sub-list li:last-child {
  margin-bottom: 0;
}

.sidenav__sub-link {
  font-size: 1.2rem;
  font-weight: 500;
  color: var(--gray);
  padding-right: 1rem;
}
.sidenav__sub-link svg {
  position: absolute;
  width: 0.35em;
  fill: var(--gray);
  margin: 0.5em 0 0 0.5em;
  transition: fill 0.5s ease;
}

.sub-item--active .sidenav__sub-link {
  color: var(--light-blue);
  cursor: default;
}
.sub-item--active .sidenav__sub-link svg {
  fill: var(--light-blue);
}


@media only screen and (max-width: 1000px) {
  .sidenav__link {
    width: 100%;
    font-size: 2.1rem;
    padding-bottom: 1rem;
    border-bottom: 2px solid var(--light-gray);
  }
  .sidenav__sub-list {
    margin-top: 2rem;
  }
  .sidenav__sub-list li {
    margin: 1.5rem 0;
  }
  .sidenav__sub-link {
    font-size: 1.35rem;
    font-weight: 500;
  }
}

@media only screen and (max-width: 800px) {
  .sidenav__link {
    font-size: 1.8rem;
  }
  .sidenav__sub-link {
    font-size: 1.3rem;
  }
}

@media only screen and (max-width: 600px) {
  .sidenav__link {
    font-size: 1.5rem;
    padding-bottom: 0.8rem;
  }
  .sidenav__sub-list {
    margin-top: 1.5rem;
  }
  .sidenav__sub-list li {
    margin: 1rem 0;
  }
  .sidenav__sub-link {
    font-size: 1.2rem;
  }
}





/*------------------------------------*\
  #FILTER
\*------------------------------------*/


.sidebar--filter {
  margin: 0 5% 0 0;
}

.block--filter {
  max-height: 100vh;
  background: var(--lightest-blue);
  overflow-y: auto;
}
.block--filter h5 {
  margin: 1.5rem 0 1rem;
}

.filter__header {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.filter__header h3 {
  font-weight: 700;
  color: var(--dark-blue);
}
.block--filter .button--clear {
  font-size: 0.95rem;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  padding: 0.2rem 0.6rem 0.3rem;
  border-radius: 4px;
}

.filter__range h5 {
  margin-bottom: 0.5rem;
}

.filter__options .control {
  margin-bottom: 0.7rem;
}
.filter__options .control:last-child {
  margin-bottom: 0;
}
.filter__options .checkbox__label {
  font-size: 1.2rem;
  font-weight: 500;
}
.filter__options .control__checkbox input[type=checkbox] + .checkbox__label::before {
  top: 3px;
}
.filter__options .control__checkbox input[type=checkbox]:checked + .checkbox__label::after,
.filter__options .control__checkbox input[type=checkbox]:disabled + .checkbox__label::after {
  top: 0;
}
.filter__options .control__checkbox input[type=checkbox]:checked + .checkbox__label {
  color: var(--light-blue);
}
.filter__options .control__checkbox:hover .checkbox__label {
  color: var(--light-blue);
}

.filter__button {
  display: none;
}


@media only screen and (max-width: 1200px) {
  .sidebar--filter {
    margin: 0 4% 0 0;
  }
  .filter__options .control__checkbox input[type=checkbox] + .checkbox__label::before {
    top: 2px;
  }
  .filter__options .checkbox__label {
    font-size: 1.15rem;
  }
}

@media only screen and (max-width: 1000px) {
  .sidebar--filter {
    margin: 0;
  }
  .block--filter {
    max-height: inherit;
    overflow-y: inherit;
  }
  .block--filter h5 {
    font-size: 1.4rem;
    margin-top: 0;
  }
  .control h5 {
    margin-top: 0;
  }
  .filter__header {
    display: none;
  }
  .filter__range {
    margin-bottom: 1.5rem;
  }
  .filter__options {
    margin-bottom: 3rem;
  }
  .filter__options .control {
    margin-bottom: 0.8rem;
  }
  .filter__button {
    display: block;
    margin-top: auto;
  }
  .filter__button .button {
    width: 100%;
  }
}

@media only screen and (max-width: 800px) {
  .block--filter .button--clear {
    font-size: 0.9rem;
  }
  .block--filter h5 {
    font-size: 1.3rem;
  }
  .filter__options {
    margin-bottom: 2.5rem;
  }
}

@media only screen and (max-width: 600px) {
  .block--filter .button--clear {
    font-size: 0.85rem;
  }
  .block--filter h5 {
    font-size: 1.2rem;
  }
}











/*------------------------------------*\
  #BANNERS
\*------------------------------------*/





/*------------------------------------*\
  #BREADCRUMBS
\*------------------------------------*/


.breadcrumbs {
  margin-top: 1.5rem;
}

.breadcrumbs__list {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}

.breadcrumbs__list li {
  position: relative;
  margin: 0.5rem 2rem 0 0;
}
.breadcrumbs__list li::after {
  position: absolute;
  content: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 9.59 15.17" fill="%2300a0dd"><path d="M3.41.59C2.63-.19 1.36-.19.58.59.21.96 0 1.47 0 2v11.17c0 1.1.9 2 2 2 .53 0 1.04-.21 1.41-.59L9 8.99c.78-.78.78-2.05 0-2.83L3.41.59Z"/></svg>');
  width: 0.4em;
  top: -0.15em;
  right: -1.25em;
}
.breadcrumbs__list li:last-child {
  margin-right: 0;
}
.breadcrumbs__list li:last-child::after {
  display: none;
}

.breadcrumbs__list li a {
  display: block;
  font-size: 1.05rem;
  font-weight: 600;
  line-height: 1.3;
  color: var(--gray);
  transition: color 0.5s ease;
}
.breadcrumbs__list li a:hover {
  color: var(--light-blue);
}
.breadcrumbs__list li:last-child a {
  color: var(--dark-blue);
  cursor: default;
}

.breadcrumbs__list svg {
  position: relative;
  width: 0.8em;
  top: 0.02em;
  fill: var(--gray);
  transition: fill 0.5s ease;
}
.breadcrumbs__list a:hover svg {
  fill: var(--light-blue);
}

.header.dark-blue .breadcrumbs__list li a,
.header.green .breadcrumbs__list li a,
.header.purple .breadcrumbs__list li a,
.header.pink .breadcrumbs__list li a {
  color: #fff;
}
.header.dark-blue .breadcrumbs__list svg,
.header.green .breadcrumbs__list svg,
.header.purple .breadcrumbs__list svg,
.header.pink .breadcrumbs__list svg {
  fill: #fff;
}

.header.dark-blue .breadcrumbs__list a:hover svg {
  fill: var(--lighter-blue);
}
.header.dark-blue .breadcrumbs__list li:last-child a,
.header.dark-blue .breadcrumbs__list li a:hover {
  color: var(--lighter-blue);
}

.header.green .breadcrumbs__list li::after {
  content: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 9.59 15.17" fill="%23026937"><path d="M3.41.59C2.63-.19 1.36-.19.58.59.21.96 0 1.47 0 2v11.17c0 1.1.9 2 2 2 .53 0 1.04-.21 1.41-.59L9 8.99c.78-.78.78-2.05 0-2.83L3.41.59Z"/></svg>');
}
.header.green .breadcrumbs__list li:last-child a,
.header.green .breadcrumbs__list li a:hover {
  color: var(--lightest-green);
}

.header.purple .breadcrumbs__list li::after {
  content: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 9.59 15.17" fill="%23928df3"><path d="M3.41.59C2.63-.19 1.36-.19.58.59.21.96 0 1.47 0 2v11.17c0 1.1.9 2 2 2 .53 0 1.04-.21 1.41-.59L9 8.99c.78-.78.78-2.05 0-2.83L3.41.59Z"/></svg>');
}
.header.purple .breadcrumbs__list li:last-child a,
.header.purple .breadcrumbs__list li a:hover {
  color: var(--lightest-purple);
}

.header.pink .breadcrumbs__list li::after {
  content: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 9.59 15.17" fill="%23ffffff"><path d="M3.41.59C2.63-.19 1.36-.19.58.59.21.96 0 1.47 0 2v11.17c0 1.1.9 2 2 2 .53 0 1.04-.21 1.41-.59L9 8.99c.78-.78.78-2.05 0-2.83L3.41.59Z"/></svg>');
}
.header.pink .breadcrumbs__list a:hover svg {
  fill: var(--lightest-pink);
}
.header.pink .breadcrumbs__list li:last-child a,
.header.pink .breadcrumbs__list li a:hover {
  color: var(--lightest-pink);
}

.header.lightest-blue .breadcrumbs__list .link--back {
  color: var(--light-blue);
  cursor: pointer;
}
.header.lightest-blue .breadcrumbs__list .link--back:hover {
  color: var(--light-blue-hover);
}
.header.lightest-blue .breadcrumbs__list .link--back svg {
  width: 0.8em;
  top: 0;
  fill: var(--light-blue);
  margin-right: 0.5em;
}
.header.lightest-blue .breadcrumbs__list .link--back:hover svg {
  fill: var(--light-blue-hover);
}


@media only screen and (max-width: 1200px) {
  .breadcrumbs__list li::after {
    top: -0.2em;
  }
  .breadcrumbs__list li a {
    font-size: 1rem;
  }
}

@media only screen and (max-width: 1000px) {
  .breadcrumbs {
    margin-top: 1rem;
  }
  .header--image.header--location .breadcrumbs {
    padding: 0 4%;
  }
}

@media only screen and (max-width: 800px) {
  .breadcrumbs {
    margin-top: 3%;
  }
  .breadcrumbs__list li a {
    font-size: 0.9rem;
  }
}

@media only screen and (max-width: 600px) {
  .header--image.header--location .breadcrumbs {
    padding: 0 5%;
  }
}





/*------------------------------------*\
  #SETUP
\*------------------------------------*/


section.header {
  position: relative;
  padding: 0;
  margin: 0;
  overflow: hidden;
}

.header.lightest-gray {
  background: linear-gradient(to right, var(--lightest-gray) 20%, 80%, var(--light-gray));
}
.header.lightest-blue {
  background: linear-gradient(to right, var(--lightest-blue) 25%, 75%, #cde8ff);
}
.header.dark-blue {
  background: linear-gradient(to right, var(--dark-blue) 25%, 75%, #01689D);
}
.header.green {
  background: linear-gradient(to right, var(--light-green) 25%, 75%, var(--dark-green));
}
.header.purple {
  background: linear-gradient(to right, var(--dark-purple) 25%, 75%, var(--light-purple));
}
.header.pink {
  background: var(--pink);
}

.header__copy,
.header--search .header__content {
  padding: 6rem 0;
}
.header--image.dark-blue .header__copy,
.header--image.green .header__copy,
.header--image.purple .header__copy,
.header--image.pink .header__copy {
  padding: 9rem 0;
}
.header--search .header__copy {
  padding: 0;
}

.header__copy h6 {
  text-transform: uppercase;
  letter-spacing: 0.05em;
  margin-bottom: 0.5rem;
}
.header__copy p {
  font-size: 1.5rem;
  font-weight: 400;
  line-height: 1.4;
  color: var(--gray);
  margin-top: 1rem;
}

.header.dark-blue .header__copy h6,
.header.dark-blue .header__copy p {
  color: var(--lighter-blue);
}
.header.dark-blue .header__copy h1 {
  color: #fff;
}

.header.lightest-blue .header__copy p {
  color: var(--dark-blue);
}

.header.green .header__copy h1,
.header.purple .header__copy h1,
.header.pink .header__copy h1 {
  color: #fff;
}

.header.green .header__copy h6,
.header.green .header__copy p {
  color: var(--lightest-green);
}
.header.purple .header__copy h6,
.header.purple .header__copy p {
  color: var(--lightest-purple);
}
.header.pink .header__copy h6,
.header.pink .header__copy p {
  color: var(--lightest-pink);
}

.header__cta {
  display: flex;
  margin-top: 2.5rem;
}
.header__cta .button {
  justify-content: center;
  margin: 0;
}
.header__cta .button--icon svg {
  max-height: 0.9em;
  margin: 0.1em 0.4em 0 0;
}

.header__search {
  width: 100%;
  margin-top: 3rem;
}


@media only screen and (max-width: 1500px) {
  .header__copy,
  .header--search .header__content {
    padding: 5rem 0;
  }
  .header--image.dark-blue .header__copy,
  .header--image.pink .header__copy,
  .header--image.green .header__copy {
    padding: 7rem 0;
  }
}

@media only screen and (max-width: 1200px) {
  .header__copy,
  .header--search .header__content {
    padding: 4rem 0;
  }
  .header--image.dark-blue .header__copy,
  .header--image.green .header__copy,
  .header--image.purple .header__copy,
  .header--image.pink .header__copy {
    padding: 6rem 0;
  }
  .header__copy p {
    font-size: 1.4rem;
  }
  .header__search {
    margin-top: 2.5rem;
  }
}

@media only screen and (max-width: 1000px) {
  .header__copy,
  .header--search .header__content,
  .header--image.dark-blue .header__copy,
  .header--image.green .header__copy,
  .header--image.purple .header__copy,
  .header--image.pink .header__copy {
    padding: 3rem 0;
  }
  .header__copy p {
    font-size: 1.3rem;
    margin-top: 0.8rem;
  }
}

@media only screen and (max-width: 800px) {
  .header__copy,
  .header--search .header__content,
  .header--image.dark-blue .header__copy,
  .header--image.green .header__copy,
  .header--image.purple .header__copy,
  .header--image.pink .header__copy {
    padding: 2.5rem 0;
  }
  .header__copy p {
    font-size: 1.2rem;
  }
  .header__search {
    margin-top: 2rem;
  }
}

@media only screen and (max-width: 600px) {
  .header--search .container {
    width: 100%;
  }
  .header--search .header__content {
    padding: 0;
  }
  .header--search .header__copy {
    padding: 2.5rem 5%;
  }
  .header__copy h6 {
    font-size: 1rem;
    margin-bottom: 0.3rem;
  }
  .header__copy p {
    font-size: 1.1rem;
    margin-top: 0.6rem;
  }
  .header__search {
    margin: 0;
  }
}





/*------------------------------------*\
  #IMAGE
\*------------------------------------*/


.header--image.dark-blue {
  background: linear-gradient(to right, var(--dark-blue) 25%, 75%, var(--light-blue));
}

.header--image .container,
.header--image .header__inner {
  position: static;
}

.header--image .header__inner {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}
.header--image .header__content,
.header--image .header__image {
  width: 45%;
}

.header--image .header__image {
  position: absolute;
  align-self: stretch;
  height: 120%;
  top: 0;
  right: 0;
  border-radius: 0 0 0 20rem;
  overflow: hidden;
}
.header--image .header__image img {
  position: absolute;
  width: 100%;
  height: 85%;
  object-fit: cover;
}


@media only screen and (max-width: 1500px) {
  .header--image .header__content,
  .header--image .header__image {
    width: 46%;
  }
}

@media only screen and (max-width: 1200px) {
  .header--image .header__content,
  .header--image .header__image {
    width: 47.5%;
  }
}

@media only screen and (max-width: 1000px) {
  .header--image.lightest-gray {
    background: linear-gradient(to bottom, var(--lightest-gray) 35%, 65%, var(--light-gray) 80%, #fff 80%, #fff 100%) no-repeat;
  }
  .header--image.lightest-blue {
    background: linear-gradient(to bottom, var(--lightest-blue) 35%, 65%, #cde8ff 80%, #fff 80%, #fff 100%) no-repeat;
  }
  .header--image.dark-blue {
    background: linear-gradient(to bottom, var(--dark-blue) 35%, 65%, #01689D 80%, #fff 80%, #fff 100%) no-repeat;
  }
  .header--image .container {
    width: 100%;
  }
  .header--image .header__inner {
    display: block;
  }
  .header--image .header__content {
    width: 100%;
    padding: 0 4%;
  }
  .header--image .header__image {
    position: relative;
    width: 100%;
    height: 100%;
    padding-bottom: 50%;
    border-radius: 0;
  }
  .header--image .header__image img {
    height: 100%;
  }
}

@media only screen and (max-width: 1000px) {
  .header--image.dark-blue {
    background: linear-gradient(to bottom, var(--dark-blue) 35%, 100%, #01689D 80%, #fff 80%, #fff 100%) no-repeat;
  }
  .header--image .container {
    width: 100%;
  }
}

@media only screen and (max-width: 600px) {
  .header--image .header__content {
    padding: 0 5%;
  }
  .header--image .header__image {
    width: 100%;
    padding-bottom: 55%;
  }
}





/*------------------------------------*\
  #PATTERN
\*------------------------------------*/


.header--pattern::before {
  position: absolute;
  width: 50%;
  bottom: -10%;
  right: -5%;
}
.header--pattern.lightest-gray::before {
  content: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 464.98 360" fill="%23f7f7f7"><path d="M281.57 0A71.6 71.6 0 0 0 210 71.6V150h78.4A71.6 71.6 0 0 0 360 78.42V0zm104.99 157.5A71.6 71.6 0 0 0 315 229.09v78.42h78.42A71.6 71.6 0 0 0 465 235.92V157.5zM126.49 262.48A21.48 21.48 0 0 0 105 284v23.53h23.53A21.48 21.48 0 0 0 150 286v-23.52zm0 52.52A21.48 21.48 0 0 0 105 336.44V360h23.53A21.48 21.48 0 0 0 150 338.49V315zM179 262.48A21.48 21.48 0 0 0 157.49 284v23.53H181A21.48 21.48 0 0 0 202.5 286v-23.52zm105 0A21.48 21.48 0 0 0 262.48 284v23.53H286A21.48 21.48 0 0 0 307.48 286v-23.52zM231.46 315A21.48 21.48 0 0 0 210 336.44V360h23.53A21.48 21.48 0 0 0 255 338.49V315zm-79.94-157.51A46.54 46.54 0 0 0 105 204v51h51a46.54 46.54 0 0 0 46.54-46.54v-51zm-104.98 105A46.54 46.54 0 0 0 0 309v51h51a46.53 46.53 0 0 0 46.54-46.53v-51zm209.97-105A46.54 46.54 0 0 0 210 204v51h51a46.54 46.54 0 0 0 46.54-46.54v-51zM414 52.5A46.54 46.54 0 0 0 367.48 99v51h51A46.53 46.53 0 0 0 465 103.48v-51z"/></svg>');
  opacity: 0.5;
}
.header--pattern.lightest-blue::before {
  content: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 464.98 360" fill="%23ebf6ff"><path d="M281.57 0A71.6 71.6 0 0 0 210 71.6V150h78.4A71.6 71.6 0 0 0 360 78.42V0zm104.99 157.5A71.6 71.6 0 0 0 315 229.09v78.42h78.42A71.6 71.6 0 0 0 465 235.92V157.5zM126.49 262.48A21.48 21.48 0 0 0 105 284v23.53h23.53A21.48 21.48 0 0 0 150 286v-23.52zm0 52.52A21.48 21.48 0 0 0 105 336.44V360h23.53A21.48 21.48 0 0 0 150 338.49V315zM179 262.48A21.48 21.48 0 0 0 157.49 284v23.53H181A21.48 21.48 0 0 0 202.5 286v-23.52zm105 0A21.48 21.48 0 0 0 262.48 284v23.53H286A21.48 21.48 0 0 0 307.48 286v-23.52zM231.46 315A21.48 21.48 0 0 0 210 336.44V360h23.53A21.48 21.48 0 0 0 255 338.49V315zm-79.94-157.51A46.54 46.54 0 0 0 105 204v51h51a46.54 46.54 0 0 0 46.54-46.54v-51zm-104.98 105A46.54 46.54 0 0 0 0 309v51h51a46.53 46.53 0 0 0 46.54-46.53v-51zm209.97-105A46.54 46.54 0 0 0 210 204v51h51a46.54 46.54 0 0 0 46.54-46.54v-51zM414 52.5A46.54 46.54 0 0 0 367.48 99v51h51A46.53 46.53 0 0 0 465 103.48v-51z"/></svg>');
  opacity: 0.5;
}
.header--pattern.dark-blue::before {
  content: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 464.98 360" fill="%23003764"><path d="M281.57 0A71.6 71.6 0 0 0 210 71.6V150h78.4A71.6 71.6 0 0 0 360 78.42V0zm104.99 157.5A71.6 71.6 0 0 0 315 229.09v78.42h78.42A71.6 71.6 0 0 0 465 235.92V157.5zM126.49 262.48A21.48 21.48 0 0 0 105 284v23.53h23.53A21.48 21.48 0 0 0 150 286v-23.52zm0 52.52A21.48 21.48 0 0 0 105 336.44V360h23.53A21.48 21.48 0 0 0 150 338.49V315zM179 262.48A21.48 21.48 0 0 0 157.49 284v23.53H181A21.48 21.48 0 0 0 202.5 286v-23.52zm105 0A21.48 21.48 0 0 0 262.48 284v23.53H286A21.48 21.48 0 0 0 307.48 286v-23.52zM231.46 315A21.48 21.48 0 0 0 210 336.44V360h23.53A21.48 21.48 0 0 0 255 338.49V315zm-79.94-157.51A46.54 46.54 0 0 0 105 204v51h51a46.54 46.54 0 0 0 46.54-46.54v-51zm-104.98 105A46.54 46.54 0 0 0 0 309v51h51a46.53 46.53 0 0 0 46.54-46.53v-51zm209.97-105A46.54 46.54 0 0 0 210 204v51h51a46.54 46.54 0 0 0 46.54-46.54v-51zM414 52.5A46.54 46.54 0 0 0 367.48 99v51h51A46.53 46.53 0 0 0 465 103.48v-51z"/></svg>');
  opacity: 0.2;
}
.header--pattern.green::before {
  content: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 464.98 360" fill="%236cc04a"><path d="M281.57 0A71.6 71.6 0 0 0 210 71.6V150h78.4A71.6 71.6 0 0 0 360 78.42V0zm104.99 157.5A71.6 71.6 0 0 0 315 229.09v78.42h78.42A71.6 71.6 0 0 0 465 235.92V157.5zM126.49 262.48A21.48 21.48 0 0 0 105 284v23.53h23.53A21.48 21.48 0 0 0 150 286v-23.52zm0 52.52A21.48 21.48 0 0 0 105 336.44V360h23.53A21.48 21.48 0 0 0 150 338.49V315zM179 262.48A21.48 21.48 0 0 0 157.49 284v23.53H181A21.48 21.48 0 0 0 202.5 286v-23.52zm105 0A21.48 21.48 0 0 0 262.48 284v23.53H286A21.48 21.48 0 0 0 307.48 286v-23.52zM231.46 315A21.48 21.48 0 0 0 210 336.44V360h23.53A21.48 21.48 0 0 0 255 338.49V315zm-79.94-157.51A46.54 46.54 0 0 0 105 204v51h51a46.54 46.54 0 0 0 46.54-46.54v-51zm-104.98 105A46.54 46.54 0 0 0 0 309v51h51a46.53 46.53 0 0 0 46.54-46.53v-51zm209.97-105A46.54 46.54 0 0 0 210 204v51h51a46.54 46.54 0 0 0 46.54-46.54v-51zM414 52.5A46.54 46.54 0 0 0 367.48 99v51h51A46.53 46.53 0 0 0 465 103.48v-51z"/></svg>');
  opacity: 0.2;
}
.header--pattern.purple::before {
  content: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 464.98 360" fill="%23403293"><path d="M281.57 0A71.6 71.6 0 0 0 210 71.6V150h78.4A71.6 71.6 0 0 0 360 78.42V0zm104.99 157.5A71.6 71.6 0 0 0 315 229.09v78.42h78.42A71.6 71.6 0 0 0 465 235.92V157.5zM126.49 262.48A21.48 21.48 0 0 0 105 284v23.53h23.53A21.48 21.48 0 0 0 150 286v-23.52zm0 52.52A21.48 21.48 0 0 0 105 336.44V360h23.53A21.48 21.48 0 0 0 150 338.49V315zM179 262.48A21.48 21.48 0 0 0 157.49 284v23.53H181A21.48 21.48 0 0 0 202.5 286v-23.52zm105 0A21.48 21.48 0 0 0 262.48 284v23.53H286A21.48 21.48 0 0 0 307.48 286v-23.52zM231.46 315A21.48 21.48 0 0 0 210 336.44V360h23.53A21.48 21.48 0 0 0 255 338.49V315zm-79.94-157.51A46.54 46.54 0 0 0 105 204v51h51a46.54 46.54 0 0 0 46.54-46.54v-51zm-104.98 105A46.54 46.54 0 0 0 0 309v51h51a46.53 46.53 0 0 0 46.54-46.53v-51zm209.97-105A46.54 46.54 0 0 0 210 204v51h51a46.54 46.54 0 0 0 46.54-46.54v-51zM414 52.5A46.54 46.54 0 0 0 367.48 99v51h51A46.53 46.53 0 0 0 465 103.48v-51z"/></svg>');
  opacity: 0.2;
}
.header--pattern.pink::before {
  content: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 464.98 360" fill="%23fdddd7"><path d="M281.57 0A71.6 71.6 0 0 0 210 71.6V150h78.4A71.6 71.6 0 0 0 360 78.42V0zm104.99 157.5A71.6 71.6 0 0 0 315 229.09v78.42h78.42A71.6 71.6 0 0 0 465 235.92V157.5zM126.49 262.48A21.48 21.48 0 0 0 105 284v23.53h23.53A21.48 21.48 0 0 0 150 286v-23.52zm0 52.52A21.48 21.48 0 0 0 105 336.44V360h23.53A21.48 21.48 0 0 0 150 338.49V315zM179 262.48A21.48 21.48 0 0 0 157.49 284v23.53H181A21.48 21.48 0 0 0 202.5 286v-23.52zm105 0A21.48 21.48 0 0 0 262.48 284v23.53H286A21.48 21.48 0 0 0 307.48 286v-23.52zM231.46 315A21.48 21.48 0 0 0 210 336.44V360h23.53A21.48 21.48 0 0 0 255 338.49V315zm-79.94-157.51A46.54 46.54 0 0 0 105 204v51h51a46.54 46.54 0 0 0 46.54-46.54v-51zm-104.98 105A46.54 46.54 0 0 0 0 309v51h51a46.53 46.53 0 0 0 46.54-46.53v-51zm209.97-105A46.54 46.54 0 0 0 210 204v51h51a46.54 46.54 0 0 0 46.54-46.54v-51zM414 52.5A46.54 46.54 0 0 0 367.48 99v51h51A46.53 46.53 0 0 0 465 103.48v-51z"/></svg>');
  opacity: 0.1;
}

.search--location section.header {
  overflow: visible;
}
.search--location .header--pattern::before {
  display: none;
}

.pattern {
  position: absolute;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.pattern::before {
  position: absolute;
  width: 50%;
  bottom: -10%;
  right: -5%;
  content: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 464.98 360" fill="%23003764"><path d="M281.57 0A71.6 71.6 0 0 0 210 71.6V150h78.4A71.6 71.6 0 0 0 360 78.42V0zm104.99 157.5A71.6 71.6 0 0 0 315 229.09v78.42h78.42A71.6 71.6 0 0 0 465 235.92V157.5zM126.49 262.48A21.48 21.48 0 0 0 105 284v23.53h23.53A21.48 21.48 0 0 0 150 286v-23.52zm0 52.52A21.48 21.48 0 0 0 105 336.44V360h23.53A21.48 21.48 0 0 0 150 338.49V315zM179 262.48A21.48 21.48 0 0 0 157.49 284v23.53H181A21.48 21.48 0 0 0 202.5 286v-23.52zm105 0A21.48 21.48 0 0 0 262.48 284v23.53H286A21.48 21.48 0 0 0 307.48 286v-23.52zM231.46 315A21.48 21.48 0 0 0 210 336.44V360h23.53A21.48 21.48 0 0 0 255 338.49V315zm-79.94-157.51A46.54 46.54 0 0 0 105 204v51h51a46.54 46.54 0 0 0 46.54-46.54v-51zm-104.98 105A46.54 46.54 0 0 0 0 309v51h51a46.53 46.53 0 0 0 46.54-46.53v-51zm209.97-105A46.54 46.54 0 0 0 210 204v51h51a46.54 46.54 0 0 0 46.54-46.54v-51zM414 52.5A46.54 46.54 0 0 0 367.48 99v51h51A46.53 46.53 0 0 0 465 103.48v-51z"/></svg>');
  opacity: 0.2;
}


@media only screen and (max-width: 1200px) {
  .header--pattern::before,
  .pattern::before {
    width: 60%;
  }
}

@media only screen and (max-width: 1000px) {
  .header--pattern::before,
  .pattern::before {
    position: absolute;
    width: 80%;
    bottom: -20%;
    right: -5%;
  }
}

@media only screen and (max-width: 800px) {
  .header--pattern.lightest-gray::before,
  .header--pattern.lightest-blue::before,
  .header--pattern.dark-blue::before,
  .header--pattern.green::before,
  .header--pattern.purple::before,
  .header--pattern.pink::before,
  .pattern::before {
    display: none;
  }
}





/*------------------------------------*\
  #LOCATION
\*------------------------------------*/


.header--location .header__inner {
  display: flex;
  justify-content: space-between;
  padding: 6rem 0;
}

.header--location .header__copy {
  padding: 0;
}
.header--location .header__copy p {
  color: var(--dark-blue);
}

.header--bg.header--location .header__cta {
  display: block;
  flex: 0 0 22rem;
  margin: 3.5rem 0 0 10%;
}
.header--bg.header--location .header__cta .button {
  width: 100%;
}
.header--bg.header--location .header__cta .button + .button {
  margin: 1rem 0 0;
}

.header__copy .header__cta .button {
  min-width: 205px;
}
.header__copy .header__cta .button + .button {
  margin-left: 1rem;
}


@media only screen and (max-width: 1500px) {
  .header--location .header__inner {
    padding: 5rem 0;
  }
  .header--bg.header--location .header__cta {
    flex: 0 0 20rem;
    margin: 3rem 0 0 10%;
  }
}

@media only screen and (max-width: 1300px) {
  .header--bg.header--location .header__cta {
    margin: 3rem 0 0 6%;
  }
}

@media only screen and (max-width: 1200px) {
  .header--location .header__inner {
    padding: 4rem 0;
  }
  .header--bg.header--location .header__cta {
    flex: 0 0 18rem;
    margin: 2.5rem 0 0 6%;
  }
  .header__copy .header__cta .button {
    min-width: 200px;
  }
}

@media only screen and (max-width: 1000px) {
  .header--location .header__inner {
    display: block;
    padding: 3rem 0;
  }
  .header--bg.header--location .header__cta {
    display: flex;
    flex: 0 0 100%;
    justify-content: space-between;
    max-width: 500px;
    margin: 2rem 0 0.5rem;
  }
  .header--bg.header--location .header__cta .button {
    width: 50%;
  }
  .header--bg.header--location .header__cta .button + .button {
    margin: 0 0 0 1rem;
  }
  .header__copy .header__cta {
    margin-top: 2rem;
  }
  .header__copy .header__cta .button {
    min-width: 185px;
  }
}

@media only screen and (max-width: 800px) {
  .header--location .header__inner {
    padding: 2.5rem 0;
  }
  .header__copy .header__cta {
    margin-top: 1.5rem;
  }
}

@media only screen and (max-width: 600px) {
  .header--bg.header--location .header__cta {
    max-width: 100%;
  }
}

@media only screen and (max-width: 450px) {
  .header--location .header__cta,
  .header--bg.header--location .header__cta {
    display: block;
  }
  .header--location .header__cta .button,
  .header--bg.header--location .header__cta .button {
    width: 100%;
  }
  .header--location .header__cta .button + .button,
  .header--bg.header--location .header__cta .button + .button {
    margin: 1rem 0 0;
  }
}





/*------------------------------------*\
  #ARTICLE
\*------------------------------------*/


.header--article.lightest-blue  {
  background: none;
}

.header--article.lightest-blue .background {
  position: absolute;
  width: 100%;
  height: 70%;
  top: 0;
  left: 0;
  right: 0;
  background: var(--lightest-blue);
}

.header--article .header__content {
  max-width: 900px;
  text-align: center;
  margin: 3rem auto 4rem;
}
.header--article .header__copy {
  padding: 0;
}
.header--article .header__copy p {
  color: var(--dark-blue);
}

.header--article .header__image {
  position: relative;
  max-width: 1000px;
  height: 650px;
  background: var(--lightest-gray);
  border-radius: 16px;
  overflow: hidden;
  margin: 0 auto;
}
.header--article .header__image img {
  position: absolute;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.header--article .header__image img[src$=".svg"] {
  width: 60%;
  height: inherit;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  object-fit: contain;
  margin: auto;
}


@media only screen and (max-width: 1500px) {
  .header--article .header__content {
    margin: 2.5rem auto 3.5rem;
  }
}

@media only screen and (max-width: 1200px) {
  .header--article .header__content {
    margin: 2rem auto 3rem;
  }
}

@media only screen and (max-width: 1000px) {
  .header--article .header__content {
    max-width: 100%;
    margin: 3rem auto;
  }
  .header--article .header__image {
    height: auto;
    padding-bottom: 65%;
  }
}

@media only screen and (max-width: 800px) {
  .header--article .header__content {
    margin: 2.5rem auto;
  }
}

@media only screen and (max-width: 600px) {
  .header--article.lightest-blue .background {
    height: 80%;
  }
}











/*------------------------------------*\
  #COMPONENTS
\*------------------------------------*/





/*------------------------------------*\
  #SUBPAGES
\*------------------------------------*/


.section__header {
  max-width: 900px;
  margin-bottom: 3rem;
}
.section__header h2 + p {
  margin-top: 1rem;
}

.video .section__header {
  text-align: center;
  margin: 0 auto 3rem;
}

.copy + .cards--block {
  margin-top: -1rem;
}

.cards--providers + .cards--providers {
  padding-top: 0;
}


@media only screen and (max-width: 1500px) {
  .section__header {
    margin-bottom: 2.5rem;
  }
  .video .section__header {
    margin: 0 auto 2.5rem;
  }
}

@media only screen and (max-width: 1200px) {
  .section__header {
    margin-bottom: 2rem;
  }
  .video .section__header {
    margin: 0 auto 2rem;
  }
}

@media only screen and (max-width: 1000px) {
  .page-content--listing .copy-content + .list {
    margin-top: 0;
  }
  .page-content--listing .copy-content.lightest-gray + .list,
  .page-content--listing .copy-content.lightest-blue + .list,
  .page-content--listing .copy-content.dark-blue + .list {
    margin-top: 3rem;
  }
}

@media only screen and (max-width: 800px) {
  .page-content--listing .copy-content.lightest-gray + .list,
  .page-content--listing .copy-content.lightest-blue + .list,
  .page-content--listing .copy-content.dark-blue + .list {
    margin-top: 2.5rem;
  }
}

@media only screen and (max-width: 600px) {
  .copy + .contact,
  .copy + .accordion,
  .copy + .list {
    margin-top: -0.5rem;
  }
}





/*------------------------------------*\
  #ACCORDION
\*------------------------------------*/


.accordion__inner {
  border-bottom: 2px solid var(--light-gray);
}

.accordion__title {
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 1.5rem 0;
  border-top: 2px solid var(--light-gray);
  cursor: pointer;
}
.accordion__title h4 {
  font-weight: 600;
  padding-right: 1.5em;
  transition: color 0.5s ease;
}
.accordion__title:hover h4 {
  color: var(--light-blue);
}
.accordion__block.open .accordion__title h4 {
  color: var(--light-blue);
}

.accordion__icon {
  position: relative;
  display: block;
  flex: 0 0 30px;
  width: 30px;
  height: 30px;
  background: #fff;
  border: 2px solid var(--dark-blue);
  border-radius: 50%;
  transition: background 0.5s ease, border-color 0.5s ease;
}
.accordion__icon::before,
.accordion__icon::after {
  position: absolute;
  content: '';
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: var(--dark-blue);
  border-radius: 3px;
  margin: auto;
  transition: background 0.5s ease;
}
.accordion__icon::before {
  width: 13px;
  height: 2px;
}
.accordion__icon::after {
  width: 2px;
  height: 13px;
}
.accordion__title:hover .accordion__icon {
  background: var(--light-blue);
  border-color: var(--light-blue);
}
.accordion__title:hover .accordion__icon::before,
.accordion__title:hover .accordion__icon::after {
  background: #fff;
}
.accordion__block.open .accordion__icon::after { 
  display: none;
}

.accordion__content {
  display: none;
  padding-bottom: 2rem;
}
.accordion__content p:last-child,
.accordion__content ul:last-child,
.accordion__content ol:last-child {
  margin: 0;
}
.accordion__content figure.image {
  margin: 1.5rem 0;
}


@media only screen and (max-width: 1200px) {
  .accordion__title {
    padding: 1.2rem 0;
  }
  .accordion__content {
    padding-bottom: 1.8rem;
  }
}

@media only screen and (max-width: 800px) {
  .accordion__icon {
    flex: 0 0 28px;
    width: 28px;
    height: 28px;
  }
  .accordion__icon::before {
    width: 11px;
  }
  .accordion__icon::after {
    height: 11px;
  }
}

@media only screen and (max-width: 600px) {
  .accordion__title {
    padding: 1rem 0;
  }
  .accordion__icon {
    flex: 0 0 25px;
    width: 25px;
    height: 25px;
  }
  .accordion__icon::before {
    width: 10px;
  }
  .accordion__icon::after {
    height: 10px;
  }
  .accordion__content {
    padding-bottom: 1.5rem;
  }
}





/*------------------------------------*\
  #COPY-CONTENT
\*------------------------------------*/


.copy-content {
  position: relative;
}

.copy-content__inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.copy-content__content,
.copy-content__copy {
  width: 45%;
}

.copy-content__content {
  position: relative;
  align-self: stretch;
  min-height: 25rem;
}
.copy-content__content img {
  position: absolute;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 16px;
}

.content--video {
  min-height: 400px;
}
.content__video {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  container-type: size;
  background: var(--lightest-gray);
  border-radius: 16px;
  overflow: hidden;
}
.content__video iframe {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  pointer-events: none;
  @container (min-aspect-ratio: 16/9) {
    height: 56.25vw;
  }
  @container (max-aspect-ratio: 16/9) {
    width: 177.78vh;
  }
}

.content--list {
  align-self: center;
  min-height: inherit;
}
.lightest-blue .content--list .list__item {
  border-color: #c9dbea;
}
.dark-blue .content--list .list__item {
  border-color: #335f83;
}
.dark-blue .content--list .list__link span {
  color: #fff;
}
.dark-blue .content--list .list__link:hover span {
  color: var(--lighter-blue);
}
.dark-blue .content--list .list__link svg {
  fill: var(--lighter-blue);
}

.copy-content__copy {
  padding: 2rem 0;
}
.copy-content__copy h6 {
  margin-bottom: 0.5rem;
}
.copy-content__copy h2:first-of-type {
  margin-top: 0;
}
.copy-content__copy p:last-child {
  margin: 0;
}
.copy-content__copy .button:last-of-type {
  margin-bottom: 0;
}

.copy-content--reverse .copy-content__inner {
  flex-direction: row-reverse;
}

.copy-content.copy-content--full {
  margin: 0;
  padding: 0;
}
.copy-content--full .container {
  position: static;
}
.copy-content--full .copy-content__content,
.copy-content--full .copy-content__copy {
  width: 50%;
}
.copy-content--full .copy-content__content {
  position: absolute;
  align-self: stretch;
  height: 100%;
  min-height: inherit;
  top: 0;
  left: 0;
}
.copy-content--full .copy-content__content img {
  border-radius: 0;
}
.copy-content--full .copy-content__copy {
  padding: 6rem 0 6rem 8%;
  margin-left: 50%;
}

.copy-content--full.copy-content--reverse .copy-content__inner {
  flex-direction: row;
}
.copy-content--full.copy-content--reverse .copy-content__content {
  left: inherit;
  right: 0;
}
.copy-content--full.copy-content--reverse .copy-content__copy {
  padding: 6rem 8% 6rem 0;
  margin: 0;
}

.copy-content.dark-blue h2,
.copy-content.dark-blue p,
.copy-content.dark-blue li,
.copy-content.dark-blue li::before {
  color: #fff;
}
.copy-content.dark-blue h6 {
  color: var(--lighter-blue);
}


@media only screen and (max-width: 1500px) {
  .copy-content__content,
  .copy-content__copy {
    width: 46%;
  }
  .copy-content__copy {
    padding: 1.5rem 0;
  }
  .copy-content--full .copy-content__copy {
    padding: 5rem 0 5rem 6%;
  }
  .copy-content--full.copy-content--reverse .copy-content__copy {
    padding: 5rem 6% 5rem 0;
  }
}

@media only screen and (max-width: 1200px) {
  .copy-content__content,
  .copy-content__copy {
    width: 47%;
  }
  .copy-content__copy {
    padding: 1rem 0;
  }
  .copy-content--full .copy-content__copy {
    padding: 4rem 0 4rem 5%;
  }
  .copy-content--full.copy-content--reverse .copy-content__copy {
    padding: 4rem 5% 4rem 0;
  }
}

@media only screen and (max-width: 1000px) {
  section.copy-content {
    padding: 0;
    margin: 0;
  }
  .copy-content .container {
    width: 100%;
  }
  .copy-content__inner {
    display: block;
  }
  .copy-content__content,
  .copy-content__copy {
    width: 100%;
  }
  .copy-content__content {
    padding-bottom: 50%;
    min-height: inherit;
  }
  .copy-content__content img {
    border-radius: 0;
  }
  .copy-content .copy-content__copy,
  .copy-content.copy-content--reverse .copy-content_copy,
  .copy-content--full.copy-content--reverse .copy-content__copy {
    padding: 3rem 4%;
    margin: 0;
  }
  .copy-content--full .copy-content__content,
  .copy-content--full .copy-content__copy {
    width: 100%;
  }
  .copy-content--full .copy-content__content {
    position: relative;
  }
  section.copy-content--video,
  section.copy-content--list {
    padding-bottom: 3rem;
  }
  .content--video,
  .content--list {
    width: 92%;
    min-height: inherit;
    margin: 0 auto;
  }
  .content--list {
    padding: 0;
  }
  .copy-content--list .copy-content__copy p {
    margin: 0;
  }
  .copy-content--list .copy-content__copy .button {
    display: none;
  }
}

@media only screen and (max-width: 800px) {
  .copy-content .copy-content__copy,
  .copy-content.copy-content--reverse .copy-content__copy,
  .copy-content--full.copy-content--reverse .copy-content__copy {
    padding: 2.5rem 4%;
  }
  section.copy-content--video,
  section.copy-content--list {
    padding-bottom: 2.5rem;
  }
}

@media only screen and (max-width: 600px) {
  .copy-content .copy-content__copy,
  .copy-content.copy-content--reverse .copy-content__copy,
  .copy-content--full.copy-content--reverse .copy-content__copy {
    padding: 2.5rem 5%;
  }
  .copy-content__content {
    padding-bottom: 55%;
  }
  .content--video,
  .content--list {
    width: 90%;
  }
  .content--list {
    padding: 0;
  }
}



/*------------------------------------*\
  #CONTACT
\*------------------------------------*/


.contact__cta {
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-top: 2px dotted var(--light-gray);
  padding: 1.2rem 0;
}
.contact__cta:last-child {
  border-bottom: 2px dotted var(--light-gray);
}

.cta__label {
  margin-right: 2.5rem;
}
.cta__label p {
  font-weight: 600;
  color: var(--dark-blue);
  line-height: 1.2;
}

.cta__link .text-link {
  display: flex;
  align-items: center;
  white-space: nowrap;
}
.cta__link .text-link svg {
  margin: 0.1em 0.4em 0 0;
}


@media only screen and (max-width: 800px) {
  .contact__cta {
    padding: 1rem 0;
  }
}





/*------------------------------------*\
  #VIDEO
\*------------------------------------*/


.video__embed {
  position: relative;
  padding-bottom: 56.25%;
  background: var(--lightest-gray);
  border-radius: 8px;
  overflow: hidden;
}
.lightest-gray .video__embed {
  background: var(--light-gray);
}

.video__embed iframe {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}











/*------------------------------------*\
  #LISTS
\*------------------------------------*/





/*------------------------------------*\
  #LISTS-SETUP
\*------------------------------------*/


.list--two-column,
.list--three-column {
  column-gap: 3rem;
}
.list--two-column {
  columns: 2;
}
.list--three-column {
  columns: 3;
}

.list__item {
  display: flex;
  align-items: center;
  padding: 1em 0;
  border-top: 2px dotted var(--light-gray);
  border-bottom: 2px dotted var(--light-gray);
  margin-bottom: -2px;
}
.list__item span {
  position: relative;
  font-size: 1.2rem;
  font-weight: 400;
  line-height: 1.4;
}

.list__link {
  width: 100%;
  display: flex;
}
.list__link span {
  font-weight: 600;
  cursor: pointer;
  transition: color 0.5s ease, margin 0.5s ease;
}
.list__link svg {
  fill: var(--light-blue);
  transition: fill 0.5s ease;
}


@media only screen and (max-width: 1500px) {
  .list--two-column,
  .list--three-column {
    column-gap: 2.5rem;
  }
}

@media only screen and (max-width: 1200px) {
  .list--two-column,
  .list--three-column {
    column-gap: 2rem;
  }
  .list__item {
    padding: 0.8em 0;
  }
  .list__item span {
    font-size: 1.15rem;
  }
}

@media only screen and (max-width: 800px) {
  .list__item span {
    font-size: 1.1rem;
  }
}

@media only screen and (max-width: 600px) {
  .list--two-column,
  .list--three-column {
    columns: 1;
    column-gap: none;
  }
  .list__item {
    padding: 0.6em 0;
  }
  .list__item span {
    font-size: 1.05rem;
  }
}





/*------------------------------------*\
  #LISTS-ICONS
\*------------------------------------*/


.list--icons .list__item span::before {
  position: absolute;
  content: '';
  width: 1em;
  height: 1em;
  top: 0.25em;
  left: 0;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
.list--icons .list__item span {
  padding-left: 1.5em;
}
.list--icons .list__item a {
  font-weight: 600;
  color: var(--light-blue);
  text-decoration: underline;
  transition: color 0.5s ease;
}
.list--icons .list__item a:hover {
  color: var(--light-blue-hover);
}

.list--check .list__item span::before {
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 95 94.88" fill="%236cc04a"><path d="M13.95 13.83c-18.6 18.6-18.6 48.66 0 67.1 18.6 18.6 48.66 18.6 67.1 0 18.6-18.6 18.6-48.66 0-67.1s-48.51-18.44-67.1 0Zm35.49 45.25-5.31 5.31a4.098 4.098 0 0 1-5.81 0l-5.31-5.31-7.79-7.79a4.098 4.098 0 0 1 0-5.81l2.4-2.4a4.098 4.098 0 0 1 5.81 0l7.79 7.79 20.49-20.49a4.098 4.098 0 0 1 5.81 0l2.4 2.4a4.098 4.098 0 0 1 0 5.81L49.43 59.08Z"/></svg>');
}
.list--award .list__item span::before {
  top: 0.3em;
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 23 30" fill="%236cc04a"><path d="m20.25 27.86-2.34-.6-1.04 2.17c-.37.76-1.45.76-1.81-.01l-2.1-4.5a13.49 13.49 0 0 0 6.54-2.54l1.9 4.08c.36.77-.33 1.6-1.15 1.4ZM10.04 24.92l-2.1 4.5c-.36.77-1.44.77-1.81.01l-1.04-2.17-2.34.6c-.82.2-1.51-.63-1.15-1.4l1.9-4.08a13.49 13.49 0 0 0 6.54 2.54ZM11.5 0C5.15 0 0 5.15 0 11.5S5.15 23 11.5 23 23 17.85 23 11.5 17.85 0 11.5 0Zm5.19 11.23-1.85 1.8.44 2.54c.14.84-.74 1.48-1.49 1.08l-2.28-1.2-2.28 1.2c-.75.4-1.64-.24-1.49-1.08l.44-2.55-1.85-1.8c-.61-.6-.27-1.63.57-1.75l2.56-.37 1.14-2.32c.38-.76 1.47-.76 1.84 0l1.14 2.32 2.56.37c.84.12 1.18 1.16.57 1.75Z"/></svg>');
}


@media only screen and (max-width: 1200px) {
  .list--icons .list__item span::before {
    width: 0.95em;
    height: 0.95em;
  }
}

@media only screen and (max-width: 600px) {
  .list--icons .list__item span::before {
    width: 0.9em;
    height: 0.9em;
    top: 0.3em;
  }
}





/*------------------------------------*\
  #LISTS-AMENITIES
\*------------------------------------*/


.item--park span::before {
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" fill="%236cc04a"><path d="M287,167h-62v60h62c16.54,0,30-13.46,30-30s-13.46-30-30-30Z"/><path d="M437,0H75C33.65,0,0,33.65,0,75v362c0,41.35,33.65,75,75,75h362c41.35,0,75-33.65,75-75V75c0-41.35-33.65-75-75-75ZM287,287h-62v105c0,8.28-6.72,15-15,15h-30c-8.28,0-15-6.72-15-15V122c0-8.28,6.72-15,15-15h107c49.63,0,90,40.37,90,90s-40.37,90-90,90Z"/></svg>');
}
.item--valet span::before {
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 418 418" fill="%236cc04a"><path d="M105.98,15.58L15.58,105.98c-20.77,20.82-20.77,54.52,0,75.34l75.34,75.34c20.82,20.77,54.52,20.77,75.34,0l90.41-90.41c20.77-20.82,20.77-54.52,0-75.34L181.32,15.58c-20.82-20.77-54.52-20.77-75.34,0ZM151.18,90.92l-60.27,60.27c-2.68,2.75-6.63,3.84-10.34,2.86-3.71-.98-6.61-3.87-7.59-7.59-.98-3.71.11-7.66,2.86-10.34l60.27-60.27c4.16-4.13,10.89-4.12,15.03.03s4.16,10.87.03,15.04Z"/><path d="M234.06,324.47c2,2,4.71,3.12,7.53,3.12h34.55v34.55c0,5.88,4.77,10.66,10.65,10.65h34.55v34.55c0,3.03,1.3,5.92,3.55,7.94,2.26,2.02,5.27,2.99,8.28,2.66l67.81-7.53c4.95-.56,8.86-4.47,9.42-9.42l7.53-67.81c.36-3.22-.77-6.42-3.06-8.71l-143.14-143.15-90.41,90.41,52.73,52.74Z"/></svg>');
}
.item--cafe span::before {
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 529.9 402" fill="%236cc04a"><path d="M21.42,380.58c14.28,14.28,31.5,21.42,51.68,21.42h365.45c20.18,0,37.4-7.14,51.67-21.42,14.27-14.27,21.41-31.5,21.41-51.67H0c0,20.18,7.14,37.4,21.42,51.67Z"/><path d="M137.05,292.36h201c17.51,0,32.54-6.28,45.11-18.84,12.56-12.56,18.84-27.6,18.84-45.11v-9.13h18.27c30.27,0,56.11-10.7,77.52-32.12,21.41-21.41,32.12-47.25,32.12-77.51s-10.71-56.11-32.12-77.52C476.37,10.71,450.53,0,420.26,0H91.36c-4.95,0-9.23,1.81-12.85,5.42-3.62,3.62-5.42,7.9-5.42,12.85v210.13c0,17.51,6.28,32.55,18.84,45.11,12.56,12.57,27.6,18.84,45.11,18.84ZM401.99,54.82h18.27c15.23,0,28.17,5.33,38.83,15.99,10.66,10.66,15.99,23.6,15.99,38.83s-5.33,28.17-15.99,38.83c-10.66,10.66-23.6,15.99-38.83,15.99h-18.27V54.82Z"/></svg>');
}
.item--chapel span::before {
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" fill="%236cc04a"><path d="M504.99,292.89l-59.82-37.65v256.76h51.83c8.28,0,15-6.72,15-15v-191.41c0-5.15-2.65-9.95-7.01-12.69Z"/><path d="M66.83,255.24l-59.82,37.65c-4.36,2.75-7.01,7.54-7.01,12.69v191.41c0,8.28,6.72,15,15,15h51.83V255.24Z"/><path d="M240.98,367.08c-11.23,7.47-20.95,17.05-28.69,28.36-12.13,17.72-18.54,38.45-18.54,59.92v56.64h47.24v-144.92Z"/><path d="M415.17,132.92l31.42,19.78c2.48,1.56,5.25,2.31,7.98,2.31,4.98,0,9.86-2.48,12.71-7.01,4.41-7.01,2.31-16.27-4.7-20.69L263.99,2.31c-4.88-3.07-11.1-3.07-15.98,0L49.42,127.31c-7.01,4.41-9.12,13.67-4.7,20.69s13.67,9.12,20.69,4.7l31.42-19.78v379.08h66.91v-56.64c0-27.55,8.23-54.13,23.79-76.87s37.36-40.02,63.05-50c3.49-1.36,7.37-1.36,10.86,0,25.68,9.97,47.48,27.26,63.05,50s23.79,49.32,23.79,76.87v56.64h66.91V132.92ZM256,251.65c-8.28,0-15-6.72-15-15v-50.79h-18.34c-8.28,0-15-6.72-15-15s6.72-15,15-15h18.34v-24.39c0-8.28,6.72-15,15-15s15,6.72,15,15v24.39h18.34c8.28,0,15,6.72,15,15s-6.72,15-15,15h-18.34v50.79c0,8.29-6.72,15-15,15h0Z"/><path d="M318.26,455.36c0-21.48-6.41-42.2-18.54-59.92-7.75-11.33-17.5-20.91-28.74-28.39v144.96h47.29v-56.64Z"/></svg>');
}
.item--shop span::before {
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 486.4" fill="%236cc04a"><path d="M435.2,89.6c0,14.29-2.63,27.15-7.83,38.4h46.23c21.21,0,38.4,17.19,38.4,38.4v64H0v-64c0-21.21,17.19-38.4,38.4-38.4h46.23c-5.2-11.25-7.83-24.11-7.83-38.4C76.8,37.65,122.45,0,173.29,0c29.84,0,61.4,13.97,82.71,39.14C277.3,13.97,308.87,0,338.71,0c50.84,0,96.49,37.65,96.49,89.6ZM128,89.6c0-18.87,17.68-38.4,45.29-38.4s57.11,22.26,57.11,59.73v17.07h-21.66c-20.61,0-42.4-.28-59.02-6.42-7.75-2.86-12.76-6.46-15.91-10.57-2.95-3.85-5.81-10.13-5.81-21.42h0ZM303.26,128h-21.66v-17.07c0-37.47,30.23-59.73,57.11-59.73s45.29,19.53,45.29,38.4c0,11.29-2.86,17.57-5.81,21.42-3.15,4.1-8.16,7.71-15.91,10.57-16.62,6.13-38.41,6.42-59.02,6.42Z" style="fill-rule:evenodd;"/><path d="M230.4,486.4v-204.8H25.6v166.4c0,21.25,17.15,38.4,38.4,38.4h166.4Z"/><path d="M281.6,486.4v-204.8h204.8v166.4c0,21.25-17.15,38.4-38.4,38.4h-166.4Z"/></svg>');
}
.item--appt span::before {
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 496 496" fill="%236cc04a"><path d="M262.99,481c0,8.28-6.72,15-15,15-66.23,0-128.51-25.8-175.36-72.65C25.8,376.51,0,314.23,0,247.99S25.8,119.48,72.64,72.64C119.48,25.8,181.76,0,248.01,0s128.53,25.8,175.37,72.64c.67.66,1.32,1.34,1.98,2.01v-19.02c0-8.28,6.72-15,15-15s15,6.72,15,15v55.19c0,8.28-6.72,15-15,15h-55.19c-8.28,0-15-6.72-15-15s6.72-15,15-15h18.94c-.64-.66-1.29-1.32-1.94-1.97-85-85-223.31-85-308.31,0-84.99,85-84.99,223.29,0,308.29,41.18,41.18,95.93,63.86,154.14,63.86,8.28,0,15,6.72,15,15h0ZM400.16,247.99c0,83.91-68.26,152.17-152.17,152.17s-152.17-68.26-152.17-152.17S164.09,95.83,247.99,95.83s152.17,68.26,152.17,152.17h0ZM306.29,264.34l-43.3-25.01v-70.49c0-8.28-6.72-15-15-15s-15,6.72-15,15v79.14c0,5.36,2.86,10.31,7.5,12.99l50.8,29.34c2.36,1.36,4.94,2.01,7.49,2.01,5.18,0,10.23-2.69,13-7.5,4.14-7.17,1.69-16.35-5.49-20.49h0ZM481,233c-8.28,0-14.99,6.75-14.99,14.99s6.72,14.99,14.99,14.99,14.99-6.75,14.99-14.99-6.75-14.99-14.99-14.99ZM304.43,458.55c-8.02,2.15-12.76,10.38-10.6,18.37,2.13,8.02,10.35,12.76,18.37,10.63,7.99-2.15,12.73-10.38,10.6-18.37-2.15-8.02-10.38-12.76-18.37-10.63h0ZM356.99,436.78c-7.17,4.14-9.61,13.32-5.47,20.49,4.14,7.17,13.32,9.64,20.49,5.5s9.61-13.32,5.47-20.49c-4.14-7.17-13.3-9.64-20.49-5.5ZM402.14,402.14c-5.84,5.87-5.84,15.36,0,21.2s15.36,5.87,21.23,0c5.84-5.84,5.84-15.33,0-21.2-5.87-5.87-15.36-5.87-21.23,0ZM457.27,351.51c-7.17-4.17-16.36-1.7-20.49,5.47-4.14,7.17-1.67,16.36,5.5,20.49,7.17,4.14,16.36,1.67,20.49-5.5,4.14-7.17,1.67-16.33-5.5-20.47h0ZM476.95,293.8c-8.02-2.13-16.24,2.61-18.37,10.6-2.15,8.02,2.61,16.24,10.6,18.4,7.99,2.13,16.21-2.61,18.37-10.63,2.15-7.99-2.61-16.21-10.6-18.37h0ZM476.95,202.19c7.99-2.15,12.76-10.38,10.6-18.37-2.15-8.02-10.38-12.76-18.37-10.63-7.99,2.15-12.76,10.38-10.6,18.4,2.13,7.99,10.35,12.73,18.37,10.6h0Z" style="fill-rule:evenodd;"/></svg>');
}
.item--wifi span::before {
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 389.56" fill="%236cc04a"><circle cx="255.92" cy="341.87" r="47.69" transform="translate(-135.57 512.46) rotate(-76.73)"/><path d="M497.77,100.15C429.04,31.42,340.65,0,256,0S82.96,31.42,14.24,100.15c-18.99,19.02-18.91,48.46-.18,67.27,23.39,23.65,54.01,14.24,67.73.06,46.55-46.49,108.42-72.1,174.22-72.1s127.66,25.6,174.21,72.1c13.71,14.17,44.34,23.59,67.73-.06,18.73-18.81,18.82-48.26-.18-67.27h0Z"/><path d="M256,147.11c-47.42,0-98.3,17.63-137.73,57.05-19.24,19.24-18.85,48.82.19,67.66,18.91,18.78,48.33,18.7,67.24-.2,18.78-18.78,43.74-29.12,70.3-29.12s51.52,10.34,70.3,29.12c18.91,18.91,48.33,18.98,67.24.2,19.05-18.85,19.43-48.43.19-67.66-39.43-39.42-90.31-57.05-137.73-57.05h0Z"/></svg>');
}


@media only screen and (max-width: 1300px) {
  .list--amenities .list--three-column {
    columns: 2;
  }
}

@media only screen and (max-width: 600px) {
  .list--amenities .list--three-column {
    columns: 1;
  }
}





/*------------------------------------*\
  #LISTS-SPONSORS
\*------------------------------------*/


.copy + .list--sponsors {
  margin-top: -3rem;
}

.list--sponsors + .list--sponsors {
  margin-top: -4rem;
}

.list--sponsors .section__header {
  margin-bottom: 1.5rem;
}

.list--sponsors h3 {
  color: var(--light-blue);
}
.list--sponsors .list__item span {
  font-size: 1.3rem;
  font-weight: 500;
}

.list--sponsors .list__item span::before {
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 426.67 367.26" fill="%236cc04a"><path d="M0,124.85c0,103.74,85.75,159.03,148.52,208.51,22.15,17.46,43.48,33.9,64.82,33.9s42.67-16.44,64.82-33.9c62.77-49.48,148.52-104.77,148.52-208.51S309.33-52.47,213.33,47.27C117.34-52.47,0,21.1,0,124.85Z"/></svg>');
}


@media only screen and (max-width: 1500px) {
  .copy + .list--sponsors {
    margin-top: -2.5rem;
  }
  .list--sponsors + .list--sponsors {
    margin-top: -3rem;
  }
}

@media only screen and (max-width: 1200px) {
  .copy + .list--sponsors {
    margin-top: -2rem;
  }
  .list--sponsors + .list--sponsors {
    margin-top: -2.5rem;
  }
  .list--sponsors .list--three-column {
    column-count: 2;
  }
  .list--sponsors .list__item span {
    font-size: 1.25rem;
  }
}

@media only screen and (max-width: 1000px) {
  .copy + .list--sponsors {
    margin-top: -1.5rem;
  }
  .list--sponsors + .list--sponsors {
    margin-top: -1rem;
  }
}

@media only screen and (max-width: 800px) {
  .copy + .list--sponsors {
    margin-top: -1rem;
  }
  .list--sponsors .section__header {
    margin-bottom: 1rem;
  }
  .list--sponsors .list__item span {
    font-size: 1.2rem;
  }
}

@media only screen and (max-width: 600px) {
  .list--sponsors .list--three-column {
    columns: 1;
    column-gap: none;
  }
  .list--sponsors .list__item span {
    font-size: 1.15rem;
  }
}





/*------------------------------------*\
  #LIST-LOGOS
\*------------------------------------*/


.list--logos .list__inner {
  display: grid;
  column-gap: 1.5rem;
  row-gap: 1.5rem;
}

.logos--three .list__inner {
  grid-template-columns: repeat(3, 1fr);
}
.logos--three .logo {
  min-height: 200px;
}

.logos--four .list__inner {
  grid-template-columns: repeat(4, 1fr);
}
.logos--four .logo {
  min-height: 160px;
}

.logos--five .list__inner {
  grid-template-columns: repeat(5, 1fr);
}
.logos--five .logo {
  min-height: 120px;
}

.logo {
  display: flex;
  justify-content: center;
  align-items: center;
  background: var(--lightest-gray);
  border-radius: 8px;
}
.logo img {
  width: auto;
  max-width: 55%;
  max-height: 55%;
}
.logo img[src$=".jpg"] {
  mix-blend-mode: multiply;
}


@media only screen and (max-width: 1200px) {
  .list--logos .list__inner {
    column-gap: 1rem;
    row-gap: 1rem;
  }
  .logos--three .logo {
    min-height: 150px;
  }
  .logos--four .logo {
    min-height: 120px;
  }
  .logos--five .logo {
    min-height: 100px;
  }
}

@media only screen and (max-width: 1000px) {
  .logos--five .list__inner {
    grid-template-columns: repeat(4, 1fr);
  }
  .logos--three .logo {
    min-height: 120px;
  }
  .logos--four .logo,
  .logos--five .logo {
    min-height: 90px;
  }
}

@media only screen and (max-width: 800px) {
  .list--logos .list__inner {
    column-gap: 0.75rem;
    row-gap: 0.75rem;
  }
  .logos--three .list__inner {
    grid-template-columns: repeat(2, 1fr);
  }
  .logos--three .logo {
    min-height: 125px;
  }
  .logos--five .list__inner,
  .logos--four .list__inner {
    grid-template-columns: repeat(3, 1fr);
  }
  .logos--four .logo,
  .logos--five .logo {
    min-height: 80px;
  }
  .logo img {
    max-width: 50%;
    max-height: 50%;
  }
}

@media only screen and (max-width: 600px) {
  .logos--three .list__inner,
  .logos--five .list__inner,
  .logos--four .list__inner {
    grid-template-columns: repeat(2, 1fr);
  }
  .logos--three .logo,
  .logos--four .logo,
  .logos--five .logo {
    min-height: 100px;
  }
}





/*------------------------------------*\
  #LISTS-LINKS
\*------------------------------------*/


.list--links .list__item {
  padding: 1.2rem;
  border-top-style: solid;
  border-bottom-style: solid;
}

.list--links .list__link {
  align-items: center;
  justify-content: space-between;
}
.list--links .list__link span {
  font-size: 1.3rem;
  line-height: 1.2;
  color: var(--dark-blue);
}
.list--links .list__link svg {
  flex: 0 0 1.1em;
  margin: 0.1em 0 0 1.5em;
}
.list--links .list__link:hover span {
  color: var(--light-blue);
}
.list--links .list__link:hover span {
  margin-left: 0.5em;
}


@media only screen and (max-width: 1200px) {
  .list--links .list--three-column {
    columns: 2;
  }
  .list--links .list__item {
    padding: 1rem;
  }
  .list--links .list__link span {
    font-size: 1.25rem;
  }
}

@media only screen and (max-width: 800px) {
  .list--links .list__link span {
    font-size: 1.2rem;
  }
}

@media only screen and (max-width: 600px) {
  .list--links .list--three-column {
    columns: 1;
  }
  .list--links .list__item {
    padding: 0.8rem;
  }
  .list--links .list__link span {
    font-size: 1.1rem;
  }
}





/*------------------------------------*\
  #LISTS-FILES
\*------------------------------------*/


.list--files .list__item {
  align-items: flex-start;
  padding: 0;
  border: none;
  margin: 0.5rem 0;
}

.list--files .list__link {
  align-items: flex-start;
}
.list--files .list__link svg {
  flex: 0 0 1.1em;
  margin: 0.4em 0.7em 0 0;
}
.list--files .list__link span {
  color: var(--light-blue);
  text-decoration: underline;
}

.list--files .list__link:hover svg {
  fill: var(--light-blue-hover);
}
.list--files .list__link:hover span {
  color: var(--light-blue-hover);
}











/*------------------------------------*\
  #CARDS
\*------------------------------------*/





/*------------------------------------*\
  #CARDS-SETUP
\*------------------------------------*/


.cards__inner {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  column-gap: 3rem;
  row-gap: 3rem;
}
.cards--four .cards__inner {
  grid-template-columns: repeat(4, 1fr);
}

.card {
  position: relative;
  display: flex;
  flex-direction: column;
}

.card--location,
.card--event {
  position: relative;
  background: var(--lightest-gray);
  padding: 2rem;
  border-radius: 16px;
  overflow: hidden;
}

.card__image {
  position: relative;
  width: 100%;
  height: inherit;
  padding-bottom: 60%;
  border-radius: 16px;
  overflow: hidden;
}
.card__image img {
  position: absolute;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s ease;
  z-index: 9;
}

.card__content {
  position: relative;
  display: flex;
  flex-direction: column;
  flex-grow: 1;
  margin-top: 1.5rem;
}
.card__content h6 {
  font-size: 1.05rem;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  margin-bottom: 0.5rem;
}
.card__content h3,
.card__content h4,
.card__content p {
  transition: color 0.5s ease;
}
.card__content h3 {
  font-weight: 600;
  color: var(--dark-blue);
}
.card__content h4 {
  font-weight: 600;
}
.card__content p {
  line-height: 1.4;
}
.card__content .text-link {
  line-height: 1.2;
}

.card__indicator {
  display: block;
  font-size: 0.95rem;
  font-weight: 600;
  line-height: 1;
  color: var(--dark-blue);
  background: #fff;
  border: 2px solid var(--light-gray);
  border-radius: 25px;
  padding: 0.35rem 1rem 0.4rem;
  margin-left: auto;
}

.info {
  display: flex;
  margin-top: 0.5rem;
}
.info__icon {
  width: 1rem;
  height: 1rem;
  margin: 0.25rem 0.6rem 0 0;
  overflow: visible;
}
.info__icon svg {
  width: auto;
  height: 100%;
  fill: var(--gray);
  transition: fill 0.5s ease;
}
.info__content a:hover p {
  text-decoration: underline;
}

a.card:hover .card__image img {
  transform: scale(1.1);
}
a.card:hover .card__content h3,
a.card:hover .card__content h4,
a.card:hover .card__content p,
a.card:hover .card__content .text-link {
  color: var(--light-blue);
}
a.card:hover .card__content svg {
  fill: var(--light-blue);
}
a.card:hover .card__date {
  background: var(--light-blue);
}

.card--article .card__image {
  background: var(--lightest-gray);
}
.card--article .card__image img[src$=".svg"] {
  width: 60%;
  height: inherit;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  object-fit: contain;
  margin: auto;
}

.cards--market .card__content h3 {
  line-height: 1.3;
}


@media only screen and (max-width: 1500px) {
  .cards__inner {
    column-gap: 2.5rem;
    row-gap: 2.5rem;
  }
}

@media only screen and (max-width: 1200px) {
  .cards__inner {
    column-gap: 2rem;
    row-gap: 2rem;
  }
  .cards--providers .cards__inner {
    grid-template-columns: repeat(3, 1fr);
  }
  .cards--market .cards__inner {
    grid-template-columns: repeat(2, 1fr);
  }
  .card--location,
  .card--event {
    padding: 1.8rem;
  }
  .card__indicator {
    font-size: 0.9rem;
    padding: 0.3rem 0.8rem 0.35rem;
  }
  .card__content h6 {
    font-size: 1rem;
  }
  .info__icon {
    width: 0.9rem;
    height: 0.9rem;
    margin: 0.15rem 0.5rem 0 0;
  }
  .card--market .card__content {
    margin-top: 1rem;
  }
  .card--market .info {
    margin-top: 0.3rem;
  }
}

@media only screen and (max-width: 1000px) {
  .cards__inner {
    grid-template-columns: repeat(1, 1fr);
    column-gap: 2rem;
    row-gap: 2rem;
  }
  .cards--providers .cards__inner {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media only screen and (max-width: 800px) {
  .cards__inner {
    grid-template-columns: repeat(1, 1fr);
    column-gap: 1.5rem;
    row-gap: 1.5rem;
  }
  .cards--market .cards__inner {
    grid-template-columns: repeat(1, 1fr);
  }
  .card__content h6 {
    font-size: 0.95rem;
  }
  .info__icon {
    margin: 0.1rem 0.5rem 0 0;
  }
}

@media only screen and (max-width: 600px) {
  .cards--providers .cards__inner {
    grid-template-columns: repeat(1, 1fr);
  }
  .card--location,
  .card--event {
    padding: 1.5rem;
  }
  .card__content h6 {
    font-size: 0.9rem;
    margin-bottom: 0.2rem;
  }
}





/*------------------------------------*\
  #CARDS-CTA
\*------------------------------------*/


.card--cta {
  border-radius: 16px;
  overflow: hidden;
}

.card--cta .card__image {
  padding-bottom: 90%;
}

.card--cta .card__content {
  position: absolute;
  width: calc(100% - 2rem);
  left: 1rem;
  bottom: 1rem;
  padding: 1.5rem 2rem;
  background: rgba(255,255,255, 0.8);
  backdrop-filter: blur(8px);
  border-radius: 8px;
  z-index: 99;
}
.card--cta .card__content h3,
.card--cta .card__content h4 {
  font-weight: 600;
  line-height: 1.3;
  margin-bottom: 0.5rem;
}


@media only screen and (max-width: 1200px) {
  .card--cta .card__content {
    padding: 1.3rem 1.8rem;
  }
}

@media only screen and (max-width: 1000px) {
  .card--cta .card__image {
    padding-bottom: 60%;
  }
  .card--cta .card__content {
    width: calc(100% - 3rem);
    left: 1.5rem;
    bottom: 1.5rem;
  }
}

@media only screen and (max-width: 800px) {
  .card--cta .card__content {
    padding: 1.2rem 1.5rem;
  }
}

@media only screen and (max-width: 600px) {
  .card--cta .card__image {
    padding-bottom: 80%;
  }
  .card--cta .card__content {
    width: calc(100% - 2rem);
    left: 1rem;
    bottom: 1rem;
    padding: 1rem 1.2rem;
  }
}





/*------------------------------------*\
  #CARDS-PROFILE
\*------------------------------------*/


.card--profile .card__image {
  padding-bottom: 80%;
}
.card--profile .card__image img {
  object-position: top;
}

.arrow {
  position: absolute;
  display: flex;
  width: 3em;
  height: 3em;
  right: 1rem;
  bottom: 1rem;
  padding: 0.8em;
  background: rgba(255,255,255, 0.8);
  backdrop-filter: blur(8px);
  border-radius: 8px;
  transition: background 0.5s ease;
  z-index: 9;
}
.arrow svg {
  fill: var(--light-blue);
  transform: rotate(-45deg);
  transition: fill 0.5s ease;
}
.cards--four .arrow {
  width: 2.5rem;
  height: 2.5rem;
  padding: 0.7em;
}

a.card:hover .arrow {
  background: var(--light-blue);
}
a.card:hover .arrow svg {
  fill: #fff;
}

div.card .arrow {
  display: none;
}

.card--profile .card__content h3 {
  line-height: 1.3;
  margin-bottom: 0.5rem;
}
.cards--four .card__content h3 {
  font-size: 1.4rem;
}

.profile__position {
  display: flex;
  align-items: flex-start;
}
.profile__position svg {
  flex: 0 0 0.95em;
  width: 0.95em;
  fill: var(--light-blue);
  margin: 0.25em 0.5em 0 0;
  transition: fill 0.5s ease;
}
.profile__position p {
  font-weight: 500;
  line-height: 1.2;
  color: var(--light-blue);
  margin: 0;
  transition: color 0.5s ease;
}

.page-content--leadership .profile__position svg {
  display: none;
}


@media only screen and (max-width: 1200px) {
  .card--profile .card__content {
    margin-top: 1rem;
  }
  .card--profile .card__content h3 {
    margin-bottom: 0.4rem;
  }
  .cards--four .arrow {
    width: 3rem;
    height: 3rem;
    padding: 0.8em;
  }
  .cards--four .card__content h3 {
    font-size: 1.5rem;
  }
}

@media only screen and (max-width: 800px) {
  .cards--four .card__content h3 {
    font-size: 1.4rem;
  }
  .profile__position svg {
    flex: 0 0 0.9em;
    width: 0.9em;
    margin: 0.2em 0.5em 0 0;
  }
}

@media only screen and (max-width: 600px) {
  .cards--four .card__content h3 {
    font-size: 1.3rem;
  }
}





/*------------------------------------*\
  #CARDS-LOCATION
\*------------------------------------*/


.cards--block .cards__inner {
  display: block;
}
.cards--block .card--location {
  padding: 0;
}

.card__wrap {
  display: flex;
}
.card__wrap .card__content {
  width: 70%;
  padding: 2.5rem;
  margin: 0;
}
.card__wrap .card__content h3 {
  margin-bottom: 1.5rem;
}
.card__wrap .card__content a:hover h3 {
  text-decoration: underline;
}
.card__wrap .card__content .info {
  margin: 0;
}

.card__icons {
  display: flex;
  align-items: center;
  margin-bottom: 1.5rem;
}
.icon + .icon {
  margin-left: 0.5rem;
}
.icon {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 1.8rem;
  height: 1.8rem;
}
.icon svg {
  width: auto;
  height: 100%;
  max-height: 1.8em;
  fill: var(--orange);
  overflow: visible;
  transition: fill 0.5s ease;
}

.card__buttons {
  display: flex;
  flex: 0 0 20rem;
  flex-direction: column;
  justify-content: center;
  background: var(--lighter-gray);
  padding: 2.5rem;
}
.card__buttons .button {
  width: 100%;
}
.card__buttons .button + .button {
  margin-top: 1rem;
}


@media only screen and (max-width: 1500px) {
 .card__wrap .card__content {
    padding: 2rem;
  }
  .card__buttons {
    flex: 0 0 18rem;
    padding: 2rem;
  }
}

@media only screen and (max-width: 1200px) {
  .card__wrap {
    display: block;
  }
  .card__wrap .card__content {
    width: 100%;
    padding: 1.8rem;
    margin: 0;
  }
  .card__wrap .card__content h3 {
    margin-bottom: 1.2rem;
  }
  .card__icons {
    justify-content: flex-start;
    margin-bottom: 1.2rem;
  }
  .icon {
    width: 1.5rem;
    height: 1.5rem;
  }
  .icon svg {
    max-height: 1.5em;
  }
  .card__buttons {
    flex: 0 0 100%;
    flex-direction: row;
    justify-content: space-between;
    padding: 1.8rem;
  }
  .card__buttons .button {
    width: 50%;
  }
  .card__buttons .button + .button {
    margin: 0 0 0 1rem;
  }
}

@media only screen and (max-width: 1000px) {
  .card__wrap {
    display: flex;
  }
  .card__buttons {
    display: flex;
    flex: 0 0 18rem;
    flex-direction: column;
    justify-content: center;
  }
  .card__buttons .button {
    width: 100%;
  }
  .card__buttons .button + .button {
    margin: 1rem 0 0;
  }
}

@media only screen and (max-width: 800px) {
  .card__wrap {
    display: block;
  }
  .card__wrap .card__content {
    width: 100%;
    margin: 0;
  }
  .card__wrap .card__content h3 {
    margin-bottom: 1rem;
  }
  .card__buttons {
    flex: 0 0 100%;
    flex-direction: row;
    justify-content: space-between;
  }
  .card__buttons .button {
    width: 50%;
  }
  .card__buttons .button + .button {
    margin: 0 0 0 1rem;
  }
}

@media only screen and (max-width: 600px) {
  .card__wrap .card__content {
    padding: 1.5rem;
  }
  .card__buttons {
    padding: 1.5rem;
  }
}

@media only screen and (max-width: 450px) {
  .card__buttons {
    display: block;
    background: none;
    padding-top: 0;
    margin-top: 0.5rem;
  }
  .card__buttons .button {
    width: 100%;
  }
  .card__buttons .button + .button {
    margin: 1rem 0 0;
  }
}





/*------------------------------------*\
  #CARDS-EVENT
\*------------------------------------*/


.card__date {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 4rem;
  height: 4rem;
  background: var(--light-green);
  border-radius: 8px;
  transition: background 0.5s ease;
}
.card__date h6,
.card__date span {
  color: #fff;
  line-height: 1;
  text-align: center;
  margin: 0;
}
.card__date h6 {
  font-size: 1rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}
.card__date span {
  font-size: 1.7rem;
  font-weight: 600;
}

.card--event .card__icons {
  margin-bottom: 1.5rem;
}
.card--event .card__icons svg {
  width: auto;
  height: 100%;
  max-height: 1.8em;
  fill: var(--light-green);
  overflow: visible;
}


@media only screen and (max-width: 1200px) {
  .card--event .card__icons {
    margin-bottom: 1.2rem;
  }
  .card--event .card__icons svg {
    max-height: 1.5em;
  }
  .card__date {
    width: 3.6rem;
    height: 3.6rem;
  }
  .card__date h6 {
    font-size: 0.9rem;
  }
  .card__date span {
    font-size: 1.5rem;
  }
}

@media only screen and (max-width: 600px) {
  .card__date {
    width: 3.2rem;
    height: 3.2rem;
  }
  .card__date h6 {
    font-size: 0.75rem;
  }
  .card__date span {
    font-size: 1.3rem;
  }
}





/*------------------------------------*\
  #CARDS-ROW
\*------------------------------------*/


.cards--row.lightest-gray .card,
.cards--row.lightest-blue .card {
  background: #fff;
}
.cards--row .card__content {
  padding: 0;
  margin: 0;
}
.cards--row .card__content h3 {
  line-height: 1.3;
  margin-bottom: 1.5rem;
}
.cards--row .card__info {
  padding-top: 1rem;
  border-top: 2px solid var(--light-gray);
  margin-top: auto;
}
.cards--row .card__info .info:last-child {
  margin-bottom: 0;
}

@media only screen and (max-width: 1200px) {
  .cards--row .card__content h3 {
    margin-bottom: 1rem;
  }
  .cards--row .card__info {
    padding-top: 0.5rem;
  }
}





/*------------------------------------*\
  #CARDS-SEARCH
\*------------------------------------*/


.search--location .card {
  margin: 0 0 2rem;
}
.search--location .card:last-child {
  margin: 0;
}

.search--event .cards__inner {
  grid-template-columns: repeat(2, 1fr);
  column-gap: 2rem;
  row-gap: 2rem;
}
.search--event .cards--row + .cards--row {
  margin-top: 4rem;
}


@media only screen and (max-width: 1200px) {
  .search--location .card {
    margin: 0 0 1.5rem;
  }
  .search--event .cards__inner {
    grid-template-columns: repeat(1, 1fr);
    column-gap: 1.5rem;
    row-gap: 1.5rem;
  }
}

@media only screen and (max-width: 1000px) {
  .page-content--search section.cards {
    margin-top: 3rem;
  }
  .search--event .cards__inner {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media only screen and (max-width: 800px) {
  .page-content--search section.cards {
    margin-top: 2.5rem;
  }
  .search--event .cards__inner {
    grid-template-columns: repeat(1, 1fr);
  }
}





/*------------------------------------*\
  #CARD-RESULTS
\*------------------------------------*/


.results h3 span {
  font-weight: 600;
  color: var(--light-blue);
  text-decoration: underline;
}
.results h5 {
  font-weight: 500;
  margin-top: 1rem;
}


@media only screen and (max-width: 1000px) {
  .page-content__inner section.results {
    margin-top: 3rem;
  }
}

@media only screen and (max-width: 800px) {
  .page-content__inner section.results {
    margin-top: 2.5rem;
  }
}





/*------------------------------------*\
  #CARDS-ICON
\*------------------------------------*/


.cards--icon {
  margin: 4rem 0;
}

.cards--icon .cards__inner {
  grid-template-columns: repeat(4, 1fr);
  column-gap: 1.5rem;
  row-gap: 1.5rem;
}

.card--icon {
  border-radius: 16px;
  transition: background 0.5s ease;
}
.card--icon:first-child {
  background: var(--light-green);
}
.card--icon:nth-child(2) {
  background: var(--orange);
}
.card--icon:nth-child(3) {
  background: var(--dark-blue);
}
.card--icon:last-child {
  background: var(--light-blue);
}

.card--icon .card__content {
  padding: 2rem;
  margin: 0;
}

.card--icon .icon {
  width: 2rem;
  height: 2rem;
  margin-bottom: 1rem;
}
.card--icon .icon svg {
  max-height: 2rem;
  fill: #fff;
}

.card--icon .card__content h4,
.card--icon .card__content p {
  color: #fff;
}
.card--icon .card__content h4 {
  margin-bottom: 0.3rem;
}
.card--icon .card__content p {
  margin-bottom: 1rem;
}
.card--icon .card__content h4 + p {
  font-size: 1.1rem;
}
.card--icon .card__content .text-link {
  margin-top: auto;
  margin-bottom: 0;
}
.card--icon .text-link svg {
  fill: #fff;
}

.card--icon:first-child:hover {
  background: var(--light-green-hover);
}
.card--icon:nth-child(2):hover {
  background: var(--orange-hover);
}
.card--icon:nth-child(3):hover {
  background: var(--dark-blue-hover);
}
.card--icon:last-child:hover {
  background: var(--light-blue-hover);
}

a.card--icon:hover .card__content h3,
a.card--icon:hover .card__content h4,
a.card--icon:hover .card__content p,
a.card--icon:hover .card__content .text-link {
  color: #fff;
}
a.card--icon:hover .card__content svg {
  fill: #fff;
}


@media only screen and (max-width: 1500px) {
  .cards--icon .cards__inner {
    column-gap: 1rem;
    row-gap: 1rem;
  }
}

@media only screen and (max-width: 1200px) {
  .cards--icon {
    margin: 3rem 0;
  }
  .cards--icon .cards__inner {
    grid-template-columns: repeat(2, 1fr);
  }
  .card--icon .icon {
    width: 1.8rem;
    height: 1.8rem;
    margin-bottom: 0.8rem;
  }
  .card--icon .icon svg {
    max-height: 1.8rem;
  }
  .card--icon .card__content h4 + p {
    font-size: 1.05rem;
  }
}

@media only screen and (max-width: 1000px) {
  .cards--icon {
    margin: 2.5rem 0;
  }
}

@media only screen and (max-width: 800px) {
  .card--icon .card__content {
    padding: 1.5rem;
    margin: 0;
  }
  .card--icon .icon {
    width: 1.6rem;
    height: 1.6rem;
    margin-bottom: 0.8rem;
  }
  .card--icon .icon svg {
    max-height: 1.6rem;
  }
  .card--icon .card__content h4 + p {
    font-size: 1rem;
  }
}

@media only screen and (max-width: 600px) {
  .cards--icon .cards__inner {
    grid-template-columns: repeat(1, 1fr);
    column-gap: 0;
    row-gap: 1rem;
  }
}











/*------------------------------------*\
  #HOME
\*------------------------------------*/





/*------------------------------------*\
  #BANNER
\*------------------------------------*/


.banner {
  position: relative;
  margin: 0;
}

.banner__image {
  position: absolute;
  width: 100%;
  height: 100%;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  overflow: hidden;
}
.banner__image::after {
  position: absolute;
  content: '';
  width: 100%;
  height: 100%;
  background: linear-gradient(to right, rgba(64,75,84, 0.8) 0%, rgba(64,75,84, 0) 80%);
}

.banner__inner {
  padding: 6rem 0;
}

.banner__copy {
  width: 60%;
  margin: 0 2.5rem;
}
.banner__copy h1,
.banner__copy p {
  text-shadow: 0 0 2px rgba(64,75,84, 0.1);
}
.banner__copy h1 {
  color: #fff;
}
.banner__copy p {
  font-size: 2rem;
  color: #fff;
  margin-top: 1rem;
}

.banner--white .banner__copy h6,
.banner--white .banner__copy h1,
.banner--white .banner__copy p {
  color: #fff;
}

.search-bar {
  width: 100%;
  background: rgba(255,255,255, 0.7);
  backdrop-filter: blur(8px);
  padding: 2.5rem;
  border-radius: 16px;
  margin-top: 4rem;
}

.search-bar__tabs {
  display: flex;
  margin: -0.5rem 0 2rem;
}
.tab-button {
  position: relative;
  font-size: 1.3rem;
  font-weight: 700;
  color: var(--dark-blue);
  cursor: pointer;
  transition: color 0.5s ease;
}
.tab-button + .tab-button {
  margin-left: 1.5rem;
}
.tab-button::after {
  display: none;
  position: absolute;
  content: '';
  width: 100%;
  height: 3px;
  left: 0;
  bottom: -3px;
  background: var(--light-blue);
  z-index: 9;
}
.tab-button--active {
  color: var(--light-blue);
}
.tab-button--active::after {
  display: block;
}
.tab-button:hover {
  color: var(--light-blue);
}

.search-bar__block,
.search-bar__block.js-tabs-open {
  display: block;
}
.block--search-location,
.block--search-doctor {
  display: none;
}


@media only screen and (max-width: 1500px) {
  .banner__inner {
    padding: 5rem 0;
  }
  .banner__copy p {
    font-size: 1.8rem;
  }
  .search-bar {
    padding: 2rem;
  }
}

@media only screen and (max-width: 1300px) {
  .banner__image {
    background-position: right 70% center;
  }
}

@media only screen and (max-width: 1200px) {
  .banner__image {
    background-position: right 60% center;
  }
  .banner__inner {
    padding: 4rem 0;
  }
  .banner__copy {
    width: 62%;
    margin: 0;
  }
  .banner__copy p {
    font-size: 1.7rem;
  }
  .search-bar {
    padding: 1.8rem;
    margin-top: 3rem;
  }
  .search-bar__tabs {
    margin: -0.4rem 0 1.5rem;
  }
  .tab-button {
    font-size: 1.25rem;
  }
  .tab-button + .tab-button {
    margin-left: 1.2rem;
  }
}

@media only screen and (max-width: 1000px) {
  .banner__image {
    height: 70%;
    background-position: center center;
  }
  .banner .container {
    width: 100%;
  }
  .banner__inner {
    padding: 0;
  }
  .banner__content {
    width: 92%;
    padding: 3rem 0;
    margin: 0 auto;
  }
  .banner__copy {
    width: 58%;
  }
  .banner__copy p {
    font-size: 1.6rem;
  }
  .search-bar {
    background: var(--lightest-blue);
    padding: 1.8rem 4%;
    border-radius: 0;
    margin-top: 0.5rem;
  }
}

@media only screen and (max-width: 800px) {
  .banner__image {
    background-position: right 15% center;
  }
  .banner .banner__image::after {
    bottom: 0;
    background: linear-gradient(to top, rgba(64,75,84, 0.9) 30%, rgba(64,75,84, 0) 70%);
  }
  .banner__content {
    padding: 55% 0 2.5rem;
  }
  .banner__copy {
    width: 100%;
    max-width: 600px;
  }
  .banner__copy p {
    font-size: 1.5rem;
    margin-top: 0.5rem;
  }
  .search-bar {
    background: var(--lightest-blue);
    margin: 0;
  }
  .tab-button {
    font-size: 1.2rem;
  }
  .tab-button + .tab-button {
    margin-left: 1rem;
  }
}

@media only screen and (max-width: 600px) {
  .banner__image {
    background-position: right 20% center;
  }
  .banner__content {
    width: 90%;
    padding: 65% 0 2.5rem;
  }
  .banner__copy p {
    font-size: 1.4rem;
  }
  .search-bar {
    padding: 1.5rem 5%;
  }
  .tab-button {
    font-size: 1.15rem;
  }
}





/*------------------------------------*\
  #BANNER-CTA
\*------------------------------------*/


.banner--cta .banner__inner {
  padding: 8rem 0;
}

.banner--cta .banner__copy {
  width: 45%;
  margin: 0;
}

.banner__cta {
  display: flex;
  margin-top: 2.5rem;
}
.banner__cta .button + .button {
  margin-left: 1rem;
}

.page--microsite .banner--cta .banner__inner {
  padding: 9rem 0;
}
.page--microsite .banner--cta .banner__copy {
  width: 100%;
}
.page--microsite .banner--cta h1 {
  font-size: 4.5rem;
}


@media only screen and (max-width: 1500px) {
  .banner--cta .banner__inner {
    padding: 7rem 0;
  }
  .page--microsite .banner--cta .banner__inner {
    padding: 8rem 0;
  }
  .page--microsite .banner--cta h1 {
    font-size: 4.1rem;
  }
}

@media only screen and (max-width: 1200px) {
  .banner--cta .banner__inner {
    padding: 6rem 0;
  }
  .page--microsite .banner--cta .banner__inner {
    padding: 7rem 0;
  }
  .page--microsite .banner--cta h1 {
    font-size: 3.7rem;
  }
}

@media only screen and (max-width: 1000px) {
  .banner--cta .banner__inner,
  .page--microsite .banner--cta .banner__inner {
    padding: 2rem 0;
  }
  .banner--cta .banner__image {
    height: 100%;
  }
  .banner--cta .banner__copy {
    width: 60%;
  }
  .banner__cta {
    margin-top: 2rem;
  }
}

@media only screen and (max-width: 800px) {
  .banner--cta .banner__inner,
  .page--microsite .banner--cta .banner__inner {
    padding: 1rem 0;
  }
  .banner--cta .banner__copy {
    width: 100%;
  }
  .banner__cta {
    margin-top: 1.5rem;
  }
  .page--microsite .banner--cta h1 {
    font-size: 3.3rem;
  }
}

@media only screen and (max-width: 600px) {
  .banner--cta .banner__inner,
  .page--microsite .banner--cta .banner__inner {
    padding: 0.5rem 0;
  }
  .page--microsite .banner--cta h1 {
    font-size: 2.9rem;
  }
}





/*------------------------------------*\
  #CTA-LINKS
\*------------------------------------*/


section.cta-links {
  position: relative;
  background: linear-gradient(to right, var(--dark-blue) 25%, 75%, #01689D);
  padding: 1.2rem 0 1.5rem;
  overflow: hidden;
  margin: 0;
}

.cta-links__inner {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  padding: 0 2.5rem;
}

.banner--cta + .cta-links .cta-links__inner {
  padding: 0;
}

.cta-links__content span,
.cta-links__link {
  display: block;
  font-size: 1.3rem;
  font-weight: 400;
  line-height: 1.3;
  color: #fff;
  white-space: nowrap;
}

.cta-links__content {
  position: relative;
  display: flex;
  align-items: center;
}
.cta-links__content svg {
  position: absolute;
  width: auto;
  height: 1em;
  fill: var(--light-green);
  overflow: visible;
  margin-top: 0.2rem;
}
.cta-links__content span {
  font-weight: 600;
  padding-left: 1.4rem;
}

.cta-links__list {
  display: flex;
}
.cta-links__item {
  margin-right: 2rem;
}
.cta-links__item:last-child {
  margin-right: 0;
}
.cta-links__link {
  transition: color 0.5s ease;
}
.cta-links__link:hover {
  color: var(--lighter-blue);
}


@media only screen and (max-width: 1200px) {
  section.cta-links {
    padding: 1rem 0 1.2rem;
  }
  .cta-links__inner {
    padding: 0;
  }
  .cta-links__content span,
  .cta-links__link {
    font-size: 1.25rem;
  }
  .cta-links__content svg {
    height: 0.95em;
  }
  .cta-links__content span {
    padding-left: 1.3rem;
  }
  .cta-links__item {
    margin-right: 1.5rem;
  }
}

@media only screen and (max-width: 1000px) {
  .cta-links__item:nth-child(3) {
    display: none;
  }
}

@media only screen and (max-width: 800px) {
  .cta-links__inner {
    justify-content: flex-start;
    align-items: center;
  }
  .cta-links__content svg {
    position: relative;
    width: 0.6em;
    height: auto;
    margin: 0.2rem 1.5rem 0 0;
  }
  .cta-links__content span {
    display: none;
  }
  .cta-links__link {
    font-size: 1.2rem;
  }
}

@media only screen and (max-width: 600px) {
  .cta-links__content svg {
    margin: 0.2rem 1.2rem 0 0;
  }
  .cta-links__item:nth-child(2) {
    display: none;
  }
  .cta-links__item {
    margin-right: 1.2rem;
  }
  .cta-links__link {
    font-size: 1.15rem;
  }
}










/*------------------------------------*\
  #LOCATION
\*------------------------------------*/





/*------------------------------------*\
  #HOURS
\*------------------------------------*/


.hours h2 {
  margin: -0.5rem 0 2rem;
}

.hours__block .content__row {
  margin-top: 0;
}
.hours__block .row--disclaimer {
  border-bottom: none;
  padding-top: 1.2rem;
}
.hours__block .row--disclaimer p {
  font-size: 1.2rem;
  font-weight: 600;
  color: var(--dark-blue);
}

.header + .hours {
  padding: 0;
  margin: 0;
}

.hours__display {
  position: relative;
  background: linear-gradient(to right, var(--lightest-blue) 25%, 75%, #cde8ff);
  padding: 1rem 0 1.2rem;
  border-top: 2px solid #fff;
  margin: 0;
}

.display__bar p {
  display: inline-block;
  font-size: 1.6rem;
  font-weight: 700;
  color: var(--dark-blue);
  line-height: 1.2;
  margin: 0;
  transition: color 0.5s ease;
}

.display__bar span {
  position: relative;
  font-weight: 700;
  padding-left: 1em;
  margin-right: 0.5em;
}
.display__bar span::before {
  position: absolute;
  width: 0.75em;
  top: 0.2em;
  left: 0;
}
.hours--open .display__bar span {
  color: var(--light-green);
}
.hours--open .display__bar span::before {
  content: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 142.447 142.447" fill="%236cc04a"><path d="M71.224 0C31.951 0 0 31.951 0 71.224s31.951 71.224 71.224 71.224 71.224-31.951 71.224-71.224S110.496 0 71.224 0zm0 127.447C40.222 127.447 15 102.226 15 71.224S40.222 15 71.224 15s56.224 25.222 56.224 56.224-25.222 56.223-56.224 56.223z"/><path d="M100.923 72.016H71.724V46.724c0-4.143-3.357-7.5-7.5-7.5s-7.5 3.357-7.5 7.5v32.792c0 4.143 3.357 7.5 7.5 7.5h36.699c4.143 0 7.5-3.357 7.5-7.5s-3.358-7.5-7.5-7.5z"/></svg>');
}
.hours--closed .display__bar span {
  color: var(--orange);
}
.hours--closed .display__bar span::before {
  content: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 142.447 142.447" fill="%23e24301"><path d="M71.224 0C31.951 0 0 31.951 0 71.224s31.951 71.224 71.224 71.224 71.224-31.951 71.224-71.224S110.496 0 71.224 0zm0 127.447C40.222 127.447 15 102.226 15 71.224S40.222 15 71.224 15s56.224 25.222 56.224 56.224-25.222 56.223-56.224 56.223z"/><path d="M100.923 72.016H71.724V46.724c0-4.143-3.357-7.5-7.5-7.5s-7.5 3.357-7.5 7.5v32.792c0 4.143 3.357 7.5 7.5 7.5h36.699c4.143 0 7.5-3.357 7.5-7.5s-3.358-7.5-7.5-7.5z"/></svg>');
}

.display__bar svg {
  display: none;
  position: absolute;
  width: 0.85em;
  fill: var(--dark-blue);
  margin: 0.45em 0 0 0.4em;
  overflow: visible;
  transition: all 0.5s ease;
}

.hours--active .display__bar p {
  padding-right: 1.3em;
  cursor: pointer;
}
.hours--active .display__bar svg {
  display: inline-block;
}

.hours--active .display__bar p:hover {
  color: var(--light-blue);
}
.hours--active .display__bar p:hover svg {
  fill: var(--light-blue);
}
.open .display__bar svg {
  transform: rotate(-180deg);
}

.hours__dropdown {
  position: absolute;
  display: none;
  width: 90%;
  top: 1.5rem;
  left: 0;
  padding-right: 22rem;
  z-index: 99999;
}

.open .hours__dropdown {
  display: block;
}

.hours__dropdown .hours__block {
  width: 100%;
  background: var(--lightest-gray);
  padding: 1.8rem 2rem;
  border-radius: 16px;
  box-shadow: 0 4px 6px -2px rgba(57,57,57, 0.1);
}
.hours__dropdown .hours__block .content__row:first-child {
  padding-top: 0;
  border-top: none;
}
.hours__dropdown .hours__block .content__row:last-child {
  padding-bottom: 0;
  border-bottom: none;
}
.hours__dropdown .hours__block .row--disclaimer p {
  font-size: inherit;
}


@media only screen and (max-width: 1500px) {
  .display__bar p {
    font-size: 1.5rem;
  }
  .hours__block .row--disclaimer p {
    font-size: 1.15rem;
  }
  .hours__dropdown {
    width: 92%;
    padding-right: 20rem;
  }
}

@media only screen and (max-width: 1200px) {
  .display__bar p {
    font-size: 1.5rem;
  }
  .hours__block .row--disclaimer p {
    font-size: 1.15rem;
  }
  .hours__dropdown {
    width: 94%;
    padding-right: 18rem;
  }
  .hours__dropdown .hours__block {
    padding: 1.6rem 1.8rem;
  }
}

@media only screen and (max-width: 1000px) {
  .hours h2 {
    margin: 0 0 1.5rem;
  }
  .hours__dropdown {
    position: relative;
    width: 100%;
    top: 0;
    padding: 0;
  }
  .hours__dropdown .hours__block {
    background: none;
    padding: 0;
    border-radius: 0;
    box-shadow: none;
    margin-top: 3rem;
  }
  .hours__dropdown .hours__block .row--disclaimer p {
    font-size: 1.15rem;
  }
}

@media only screen and (max-width: 800px) {
  .hours__display {
    padding: 0.8rem 0 1rem;
  }
  .display__bar p {
    font-size: 1.4rem;
  }
  .display__bar svg {
    width: 0.8em;
    margin: 0.45em 0 0 0.35em;
  }
  .hours__block .row--disclaimer p,
  .hours__dropdown .hours__block .row--disclaimer p {
    font-size: 1.1rem;
  }
  .hours__dropdown .hours__block {
    margin-top: 2.5rem;
  }
}

@media only screen and (max-width: 600px) {
  .display__bar p {
    font-size: 1.3rem;
  }
  .hours__block .row--disclaimer p,
  .hours__dropdown .hours__block .row--disclaimer p {
    font-size: 1.05rem;
  }
}











/*------------------------------------*\
  #SEARCH
\*------------------------------------*/


.header__search,
.search-bar {
  position: relative;
  z-index: 99999;
}
.header__search .control__search::before,
.search-bar .control__search::before {
  z-index: 999;
}
.header__search .search__input,
.header__search .control__button,
.search-bar .search__input {
  z-index: 99;
}

.header__search {
  background: rgba(255,255,255, 0.1);
  backdrop-filter: blur(8px);
  padding: 2rem;
  border-radius: 16px;
}

.control--search {
  display: flex;
  width: 100%;
}

.control--search .control__search,
.control--search .control__select {
  margin-right: 1.5rem;
}
.control--search .control__search .search__input {
  border-radius: 8px;
}

.control__button {
  position: relative;
  flex: 0 0 12rem;
  height: 55px;
}
.control__button::after {
  position: absolute;
  content: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" fill="%23ffffff"><path d="m493.49 404.11-86.96-86.96c16.43-30.82 25.14-65.4 25.14-101.31 0-57.65-22.45-111.85-63.22-152.62C327.68 22.45 273.48 0 215.83 0 96.82 0 0 96.82 0 215.83c0 57.65 22.45 111.85 63.22 152.62 40.77 40.77 94.96 63.22 152.62 63.22 35.92 0 70.49-8.72 101.31-25.14l86.97 86.97c11.94 11.94 27.81 18.51 44.69 18.51s32.75-6.57 44.69-18.51c11.94-11.94 18.51-27.81 18.51-44.69s-6.57-32.75-18.51-44.69Zm-277.66-68.84c-65.85 0-119.43-53.58-119.43-119.43 0-65.86 53.58-119.43 119.44-119.44 65.86 0 119.43 53.58 119.43 119.43s-53.58 119.43-119.43 119.43Z"/></svg>');
  width: 1.4em;
  height: 1.4em;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  pointer-events: none;
  cursor: pointer;
  margin: auto;
}
.control__button .button {
  width: 100%;
  height: 100%;
}

.block--search-location .control__search,
.control--article .control__search {
  width: 60%;
}
.block--search-location .control__select,
.control--article .control__select {
  width: 40%;
}

section.search--listing {
  padding: 3rem 0;
}


@media only screen and (max-width: 1200px) {
  .header__search {
    padding: 1.8rem;
  }
  .control--search .control__search,
  .control--search .control__select {
    margin-right: 1.2rem;
  }
  .control__button {
    flex: 0 0 8rem;
    height: 54px;
  }
  .control__button::after {
    width: 1.3em;
    height: 1.3em;
  }
  section.search--listing {
    padding: 2.5rem 0;
  }
}

@media only screen and (max-width: 1000px) {
  section.search--listing {
    padding: 2rem 0;
  }
  .control__button {
    flex: 0 0 4rem;
  }
}

@media only screen and (max-width: 800px) {
  .header__search {
    padding: 1.5rem;
  }
  .control__button {
    height: 47.5px;
  }
  .control__button::after {
    width: 1.2em;
    height: 1.2em;
  }
  .control--search {
    display: block;
  }
  .control--search .control__search,
  .control--search .control__select {
    margin: 0 0 1rem;
  }
  .control--search .control__search,
  .control--search .control__select,
  .control--search .control__button {
    width: 100%;
  }
  .control--search.control--full {
    display: flex;
  }
  .control--search.control--full .control__search,
  .control--search.control--full .control__button {
    margin-bottom: 0;
  }
  .control--search.control--full .control__search {
    margin-right: 1rem;
  }
  .control--search.control--full .control__button {
    flex: 0 0 3.2rem;
  }
}

@media only screen and (max-width: 600px) {
  .header__search {
    padding: 1.5rem 5%;
    border-radius: 0;
  }
  .control__button {
    height: 46.5px;
  }
  .control__button::after {
    width: 1.1em;
    height: 1.1em;
    top: -0.1rem;
  }
  .control--search.control--full .control__search {
    margin: 0;
  }
  .control--search.control--full .search__input {
    border-radius: 8px 0 0 8px;
  }
  .control--search.control--full .control__button .button {
    border-left: none;
    border-radius: 0 8px 8px 0;
  }
}











/*------------------------------------*\
  #FORMS
\*------------------------------------*/





/*------------------------------------*\
  #FORMS-SETUP
\*------------------------------------*/


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

.form__content,
.form__block {
  width: 40%;
}

.form__content h6 {
  margin-bottom: 0.5rem;
}
.form__content h2:first-of-type {
  margin-top: 0;
}
.form__content p:last-child {
  margin-bottom: 0;
}
.form__content p.disclaimer {
  font-style: normal;
}
.form__content p + .disclaimer {
  margin-top: 1.2rem;
}
.form__content .disclaimer + .disclaimer {
  margin-top: 0;
}
.form__content .disclaimer {
  margin-bottom: 0.6rem;
}

.form__block {
  background: var(--lightest-blue);
  padding: 3rem;
  border-radius: 16px;
}
.lightest-blue .form__block,
.lightest-gray .form__block {
  background: #fff;
}
.form__block h4 {
  font-weight: 600;
}
.form__block h4:first-of-type {
  margin-top: 0;
}
.form__block h4,
.form__block .form__billing h4 {
  margin: 2.5rem 0 1.5rem;
}

.form__block .control,
.ah-form input,
.ah-form select {
  margin-bottom: 1.2rem;
}
.form__block .control--submit,
.ah-form input[type=submit] {
  margin: 2rem 0 0;
}

.form__block .control__checkbox {
  margin-top: 1.5rem;
}
.form__block .control__checkbox input[type=checkbox] + .checkbox__label::before {
  border: 2px solid var(--light-blue);
}
.form__block .control__checkbox input[type=checkbox]:hover + .checkbox__label::before {
  border-color: var(--orange);
}
.form__block .control__checkbox input[type=checkbox]:checked:focus + .checkbox__label::before,
.form__block .control__checkbox input[type=checkbox]:checked:hover + .checkbox__label::before {
  border-color: var(--light-blue);
}

.control__row {
  display: flex;
  justify-content: space-between;
  margin-bottom: 1.2rem;
}
.control__row .control {
  margin-bottom: 0;
}
.row--two .control {
  width: 48.25%;
}
.row--three .control {
  width: 31%;
}

.form--event .form__block {
  width: 100%;
  max-width: 700px;
  background: var(--lightest-blue);
}

.form__disclaimer {
  display: none;
  margin: 3rem auto 0;
}
.form__disclaimer .disclaimer {
  margin-bottom: 0.6rem;
}
.form__disclaimer p:last-of-type {
  margin: 0;
}


@media only screen and (max-width: 1500px) {
  .form__content,
  .form__block {
    width: 46%;
  }
}

@media only screen and (max-width: 1200px) {
  .form__content,
  .form__block {
    width: 47%;
  }
  .form__block {
    padding: 2.5rem;
  }
  .form__block .control__checkbox input[type=checkbox] + .checkbox__label::before {
    top: 0;
  }
  .form__block .control__checkbox input[type=checkbox]:checked + .checkbox__label::after,
  .form__block .control__checkbox input[type=checkbox]:disabled + .checkbox__label::after {
    top: 0;
  }
  .form--event .form__block {
    max-width: 100%;
  }
}

@media only screen and (max-width: 1000px) {
  .form__inner {
    display: block;
  }
  .form__content,
  .form__block {
    width: 100%;
  }
  .form__content {
    margin: 0 auto 3rem;
  }
  .form__block {
    max-width: 500px;
    margin: 0 auto;
  }
  .form--event .form__block {
    max-width: 600px;
    margin: 0;
  }
  .form__disclaimer {
    display: block;
  }
}

@media only screen and (max-width: 800px) {
  .form__content {
    margin: 0 auto 2.5rem;
  }
  .form__block {
    max-width: 450px;
    padding: 2rem;
  }
  .form__block h4 {
    margin: 1.5rem 0 1rem;
  }
  .form__block .control__checkbox input[type=checkbox]:checked + .checkbox__label::after,
  .form__block .control__checkbox input[type=checkbox]:disabled + .checkbox__label::after {
    top: 1px;
  }
  .form__block .checkbox__label {
    margin: 0 0 0 1.8rem;
  }
  .form__disclaimer {
    margin: 2.5rem auto 0;
  }
}

@media only screen and (max-width: 600px) {
  .form__block {
    max-width: 100%;
    padding: 1.8rem;
  }
  section.form--event {
    background: var(--lightest-blue);
    padding: 2.5rem 0;
  }
  .form--event .form__block {
    background: #fff;
  }
  .form__block .control,
  .ah-form input,
  .ah-form select {
    margin-bottom: 1rem;
  }
  .form__block .control--submit,
  .ah-form input[type=submit] {
    margin: 1.5rem 0 0;
  }
  .form__block .control__checkbox {
    margin-top: 1.2rem;
  }
  .control__row {
    display: block;
    margin-bottom: 0;
  }
  .row--two .control,
  .row--three .control {
    width: 100%;
    margin-bottom: 1rem;
  }
  .form__block .control__checkbox input[type=checkbox] + .checkbox__label::before {
    top: -1px;
  }
  .form__block .control__checkbox input[type=checkbox]:checked + .checkbox__label::after,
  .form__block .control__checkbox input[type=checkbox]:disabled + .checkbox__label::after {
    top: 1px;
  }
}

@media only screen and (max-width: 450px) {
  .form__block {
    padding: 1.5rem;
  }
}











/*------------------------------------*\
  #SLIDERS
\*------------------------------------*/





/*------------------------------------*\
  #SLIDER-SETUP
\*------------------------------------*/


.slider__header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 3rem;
}
.slider__content {
  margin-right: 3rem;
}

.slick {
  border-radius: 16px;
  overflow: hidden;
}
.slick-list {
  margin: 0 -1rem;
}

.slide {
  background: var(--dark-blue);
  padding: 3rem;
  border-radius: 16px;
  overflow: hidden;
  margin-left: 1rem;
  margin-right: 1rem;
}

.slide__inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.slider--reverse .slide__inner {
  flex-direction: row-reverse;
}

.slide__image,
.slide__content {
  width: 47.5%;
}

.slide__image {
  position: relative;
  align-self: stretch;
  min-height: 25rem;
}
.slide__image img {
  position: absolute;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 8px;
}

.slide__content {
  padding: 2rem 0;
}
.slide__content h3,
.slide__content p {
  color: #fff;
}
.slide__content p {
  font-size: 1.1rem;
}
.slide__content p:last-child {
  margin: 0;
}

.slider.dark-blue .slider__header h2 {
  color: #fff;
}
.slider.dark-blue .slide {
  background: var(--lightest-blue);
}
.slider.dark-blue .slide__content h3 {
  color: var(--dark-blue);
}
.slider.dark-blue .slide__content p {
  color: var(--gray);
}


@media only screen and (max-width: 1500px) {
  .slider__header {
    margin-bottom: 2.5rem;
  }
}

@media only screen and (max-width: 1200px) {
  .slider__header {
    margin-bottom: 2rem;
  }
  .slide {
    padding: 2.5rem;
  }
  .slide__image,
  .slide__content {
    width: 48%;
  }
  .slide__content p {
    font-size: 1.05rem;
  }
}

@media only screen and (max-width: 1000px) {
  .slide__inner {
    display: block;
  }
  .slide__image,
  .slide__content {
    width: 100%;
  }
  .slide__image {
    min-height: auto;
    padding-bottom: 50%;
  }
  .slide__content {
    padding: 0;
    margin-top: 2.5rem;
  }
}

@media only screen and (max-width: 800px) {
  .slide {
    padding: 2rem;
  }
  .slide__image {
    padding-bottom: 55%;
  }
  .slide__content {
    margin-top: 2rem;
  }
  .slide__content p {
    font-size: 1rem;
  }
}

@media only screen and (max-width: 600px) {
  .slide {
    padding: 0;
  }
  .slide__image {
    padding-bottom: 60%;
  }
  .slide__image img {
    border-radius: 0;
  }
  .slide__content {
    padding: 1.5rem;
    margin: 0;
  }
  .slide__content p {
    font-size: 0.95rem;
  }
}





/*------------------------------------*\
  #SLIDER-TESTIMONIAL
\*------------------------------------*/


.slider--testimonial .slide {
  padding: 6rem;
}

.slider--testimonial .slide__inner {
  display: block;
}

.slider--testimonial .slide__content {
  width: 100%;
  max-width: 950px;
  text-align: center;
  padding: 0;
  margin: 0 auto;
}
.slider--testimonial .slide__content h4 {
  font-size: 2rem;
  font-weight: 400;
  line-height: 1.7;
  color: #fff;
  margin: 2rem 0;
}

.slide__icon {
  width: 3rem;
  margin: 0 auto;
}

.slide__profile {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto;
}
.profile__image {
  position: relative;
  width: 3.5rem;
  height: 3.5rem;
  border-radius: 50%;
  overflow: hidden;
  margin-right: 1rem;
}
.slide__profile img {
  position: absolute;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.slide__profile p {
  font-size: 1.3rem;
  font-weight: 600;
  color: #fff;
  margin: 0;
}

.slider--testimonial.dark-blue .slide__content h4,
.slider--testimonial.dark-blue .slide__profile p {
  color: var(--dark-blue);
}


@media only screen and (max-width: 1500px) {
  .slider--testimonial .slide {
    padding: 5rem;
  }
}

@media only screen and (max-width: 1200px) {
  .slider--testimonial .slide {
    padding: 4rem;
  }
  .slider--testimonial .slide__content h4 {
    font-size: 1.7rem;
  }
  .slide__icon {
    width: 2.5rem;
  }
  .profile__image {
    width: 3rem;
    height: 3rem;
  }
  .slide__profile p {
    font-size: 1.2rem;
  }
}

@media only screen and (max-width: 1000px) {
  .slider--testimonial .slide {
    padding: 3rem;
  }
  .slider--testimonial .slide__content h4 {
    font-size: 1.5rem;
    margin: 1.8rem 0;
  }
  .slide__icon {
    width: 2.2rem;
  }
  .profile__image {
    width: 2.8rem;
    height: 2.8rem;
  }
}

@media only screen and (max-width: 800px) {
  .slider--testimonial .slide {
    padding: 2rem;
  }
  .slider--testimonial .slide__content h4 {
    font-size: 1.3rem;
    margin: 1.5rem 0;
  }
  .slide__icon {
    width: 2rem;
  }
  .profile__image {
    width: 2.5rem;
    height: 2.5rem;
  }
  .slide__profile p {
    font-size: 1.1rem;
  }
}

@media only screen and (max-width: 600px) {
  .slider--testimonial .slide {
    padding: 1.5rem;
  }
  .slider--testimonial .slide__content h4 {
    font-size: 1.1rem;
    line-height: 1.6;
    margin: 1rem 0 1.2rem;
  }
  .slide__icon {
    width: 1.8rem;
  }
  .profile__image {
    width: 2.2rem;
    height: 2.2rem;
    margin-right: 0.8rem;
  }
  .slide__profile p {
    font-size: 1rem;
  }
}





/*------------------------------------*\
  #SLIDER-IMAGE
\*------------------------------------*/


.slider--image {
  position: relative;
}

.slider--image .slide {
  position: relative;
  height: 30rem;
  background: none;
  padding: 0;
  border-radius: 8px;
}

.slider--image .slide img {
  position: relative;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.slide__caption {
  position: absolute;
  width: 100%;
  left: 0;
  right: 0;
  bottom: 0;
  background: var(--lightest-gray);
  padding: 0.5rem 0.8rem 0.6rem;
  z-index: 99;
}
.slide__caption p {
  font-size: 0.95rem;
  font-weight: 500;
  line-height: 1.4;
  margin: 0;
}


@media only screen and (max-width: 1200px) {
  .slider--image .slide {
    height: 25rem;
  }
}

@media only screen and (max-width: 1000px) {
  .slider--image .slick-list {
    margin: 0 -0.5rem;
  }
  .slider--image .slide {
    height: 20rem;
    margin-left: 0.5rem;
    margin-right: 0.5rem;
  }
}

@media only screen and (max-width: 800px) {
  .slide__caption p {
    font-size: 0.9rem;
    line-height: 1.2;
  }
}

@media only screen and (max-width: 600px) {
  .slider--image .slide {
    height: 15rem;
  }
  .slide__caption {
    padding: 0.4rem 0.6rem 0.5rem;
  }
  .slide__caption p {
    font-size: 0.85rem;
  }
}





/*------------------------------------*\
  SLIDER-ARROWS
\*------------------------------------*/


.slider__arrows {
  flex: 0 0 6.5rem;
}

.slick-arrows {
  position: relative;
  width: 100%;
  height: 45px;
}

.slick-arrows .slick-prev,
.slick-arrows .slick-next {
  display: block;
  position: absolute;
  width: 45px;
  height: 45px;
  font-size: 0;
  line-height: 0;
  color: transparent;
  background: transparent;
  border: 2px solid var(--light-blue);
  border-radius: 50%;
  cursor: pointer;
  z-index: 99;
  transition: border-color 0.5s ease;
}
.slick-arrows .slick-prev {
  left: 0;
}
.slick-arrows .slick-next {
  right: 0;
}

.slick-arrows .slick-prev::after,
.slick-arrows .slick-next::after {
  position: absolute;
  content: '';
  width: 14px;
  height: 14px;
  top: 0;
  bottom: 0;
  border: solid var(--light-blue);
  border-width: 0 3px 3px 0;
  margin: auto;
  transition: border-color 0.5s ease;
}
.slick-arrows .slick-prev::after {
  left: 16px;
  transform: rotate(135deg);
}
.slick-arrows .slick-next::after {
  right: 16px;
  transform: rotate(-45deg);
}

.slick-arrows .slick-prev:hover,
.slick-arrows .slick-next:hover,
.slick-arrows .slick-prev:hover::after,
.slick-arrows .slick-next:hover::after  {
  border-color: var(--light-blue-hover);
}


@media only screen and (max-width: 1200px) {
  .slider__arrows {
    flex: 0 0 5.5rem;
  }
  .slick-arrows {
    height: 40px;
  }
  .slick-arrows .slick-prev,
  .slick-arrows .slick-next {
    width: 40px;
    height: 40px;
  }
  .slick-arrows .slick-prev::after,
  .slick-arrows .slick-next::after {
    width: 12px;
    height: 12px;
  }
  .slick-arrows .slick-prev::after {
    left: 14px;
  }
  .slick-arrows .slick-next::after {
    right: 14px;
  }
}

@media only screen and (max-width: 600px) {
  .slider__arrows {
    flex: 0 0 4.8rem;
  }
  .slick-arrows {
    height: 35px;
  }
  .slick-arrows .slick-prev,
  .slick-arrows .slick-next {
    width: 35px;
    height: 35px;
  }
  .slick-arrows .slick-prev::after,
  .slick-arrows .slick-next::after {
    width: 10px;
    height: 10px;
  }
  .slick-arrows .slick-prev::after {
    left: 12px;
  }
  .slick-arrows .slick-next::after {
    right: 12px;
  }
}





/*------------------------------------*\
  #SLICK-SETUP
\*------------------------------------*/


.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  -webkit-touch-callout: none;
     -khtml-user-select: none;
  -ms-touch-action: pan-y;
      touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  display: block;
  padding: 0;
  overflow: hidden;
}
.slick-list:focus {
  outline: none;
}
.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
     -moz-transform: translate3d(0, 0, 0);
      -ms-transform: translate3d(0, 0, 0);
       -o-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
}
.slick-track {
  position: relative;
  display: flex;
  top: 0;
  left: 0;
}
.slick-track:before,
.slick-track:after {
  display: table;
  content: '';
}
.slick-track:after {
  clear: both;
}
.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  display: none;
  float: left;
  height: inherit;
  min-height: 1px;
}
.slider--container .slick-slide {
  height: 100%;
}
[dir='rtl'] .slick-slide {
  float: right;
}
.slick-slide img {
  display: block;
}
.slick-slide.slick-loading img {
  display: none;
}
.slick-slide.dragging img {
  pointer-events: none;
}
.slick-initialized .slick-slide {
  display: block;
}
.slick-loading .slick-slide {
  visibility: hidden;
}
.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}
.slick-arrow.slick-hidden {
  display: none;
}










