﻿.snp-home .region-section {
  min-height: 400px; }
  .snp-home .region-section .row .col {
    width: 100%;
    flex-direction: column; }
    @media (min-width: 768px) {
      .snp-home .region-section .row .col {
        width: 50%; } }

.snp-home .page-nav {
  margin-bottom: 25px; }

.snp-home .row {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap; }

.snp-home .up-advantage {
  margin: 0; }

.snp-home .up-advantage .row {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap; }
  .snp-home .up-advantage .row .text-tile {
    width: 100%; }
    @media (min-width: 768px) {
      .snp-home .up-advantage .row .text-tile {
        width: 33.33%; } }

.snp-home .up-advantage-sub {
  display: block;
  color: rgba(1, 1, 1, 0.7);
  padding: 0 15px; }

.snp-home .hero-title {
  color: #fff;
  font-size: 52px;
  font-weight: 600;
  margin-bottom: 12px; }

.snp-home .title-sub {
  font-size: 20px;
  color: #fff;
  margin: 0; }

.snp-home .info-block {
  padding: 50px 0px;
  background-color: white; }

.snp-home .col {
  width: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 35px; }

.snp-home a, .snp-home p {
  font-size: 15px; }

.snp-home .hero {
  height: 320px;
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  line-height: normal;
  padding: 25px;
  background-color: rgba(0, 0, 0, 0.5);
  color: white;
  text-align: left; }

.snp-home .hero-container {
  background-image: url(/Images/stay-and-plays.jpg);
  background-size: cover;
  background-position: center; }

.snp-tile {
  display: flex;
  align-items: end;
  background-color: rgba(0, 0, 0, 0.4);
  color: white;
  padding: 10px;
  height: 14em;
  border-radius: 15px; }

.snp-tile-background {
  background-image: url(/Images/stay-and-plays.jpg);
  background-size: cover;
  border-radius: 15px; }

.snp-tile-container {
  width: 50%;
  padding: 5px; }

@media (min-width: 768px) {
  .snp-tile-container {
    width: 25%; }
  .snp-home .col {
    width: 20%; }
  .snp-home .col.region-info {
    padding-right: 50px; }
  .snp-home .info-block {
    padding: 50px; } }

.snp-course .hero-title {
  color: #fff;
  font-size: 52px;
  font-weight: 600;
  margin-bottom: 12px; }

.snp-course .title-sub {
  font-size: 20px;
  color: #fff;
  margin: 0; }

.snp-course .hero {
  min-height: 400px;
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  line-height: normal;
  padding: 25px 25px 50px;
  background-color: rgba(0, 0, 0, 0.5); }

.snp-course .hero .ticker.on-sale {
  margin-top: 15px;
  display: inline-block; }

.snp-course .hero-container {
  background-image: url(/Images/stay-and-plays.jpg);
  background-size: cover;
  background-position: center; }

.snp-course select:active {
  color: red; }

.snp-course .room-col, .snp-course .guests-col, .snp-course .nights-col, .snp-course .rounds-col, .snp-course .notes-col, .snp-course #byp-submit {
  display: none !important; }

.snp-course .info-block {
  padding: 25px 0; }

.snp-course .package-header {
  font-size: 30px;
  line-height: 32px;
  margin-bottom: 25px;
  padding-bottom: 0; }

@media (min-width: 768px) {
  .snp-course .package-header {
    margin-bottom: 50px; } }

.snp-course .info-block + .info-block {
  padding-top: 0; }

.snp-course .snp-course-page .billing-box div.error {
  margin-bottom: 0; }

.snp-course .sp-package-tile {
  display: flex;
  flex-direction: column;
  width: 100%;
  background-color: white;
  margin-bottom: 25px;
  padding: 0; }

.snp-course .sp-package-tile-image {
  width: 100%;
  height: 160px;
  background-size: cover;
  background-position: center; }

.snp-course .sp-package-tile .tickets-list {
  margin: 0; }

.snp-course .sp-package-tile .tickets-list li {
  width: 100%;
  padding: 0; }

.snp-course .sp-package-tile .tickets-list li:first-child {
  margin-right: 0;
  margin-bottom: 5px; }

.snp-course .sp-package-tile .tickets-list .btn-default {
  text-align: center; }

.snp-course .sp-package-tile .package-title .lightbox-opener {
  display: inline-block;
  margin-bottom: 20px; }

.snp-course .sp-package-tile:last-child {
  margin-bottom: 0; }

.snp-course .sp-interest-tile .title-info {
  padding: 25px;
  width: 100%; }

.snp-course .sp-interest-tile .package-title h2 {
  margin: 0 0 12px 0; }

.snp-course .sp-interest-tile .package-title p {
  margin: 0; }

.snp-course .sp-interest-tile .info-list {
  margin: 15px 0 0 0;
  padding: 0; }

.snp-course .sp-interest-tile .interest-action {
  margin-top: 20px;
  display: flex;
  align-items: center;
  gap: 15px;
  flex-wrap: wrap; }

.snp-course .sp-interest-tile .interest-action .side-text {
  font-size: 14px;
  color: rgba(0, 0, 0, 0.65); }

.snp-course .snp-course-page .checkout-form {
  padding-bottom: 0; }

@media (min-width: 768px) {
  .snp-course .hero {
    min-height: 500px;
    padding: 25px; }
  .snp-course .field-row {
    display: flex; }
  .snp-course .info-block {
    padding: 50px; }
  .snp-course .sp-package-tile {
    flex-direction: row; }
  .snp-course .sp-package-tile-image {
    width: 25%;
    height: auto; }
  .snp-course .sp-package-tile .title-info {
    flex: 1;
    display: flex;
    align-items: center;
    gap: 25px; }
  .snp-course .sp-package-tile .title-info > * {
    flex: 1;
    min-width: 0; }
  .snp-course .sp-package-tile .package-title .lightbox-opener {
    margin-bottom: 0; }
  .snp-course .sp-package-tile .tickets-list li {
    width: 50%; }
  .snp-course .sp-interest-tile .title-info {
    padding: 25px;
    gap: 25px; }
  .snp-course .sp-interest-tile .interest-action {
    margin-top: 0;
    flex-direction: column;
    align-items: stretch;
    gap: 10px; }
  .snp-course .sp-interest-tile .interest-action .btn-default {
    white-space: nowrap; }
  .snp-course .sp-interest-tile .interest-action .side-text {
    text-align: center; } }

.snp-course .course-info .detail .title {
  max-height: 250px;
  overflow: hidden; }

.snp-course .course-info .detail .title.expanded {
  max-height: none; }
