::-moz-selection { background: #b3d4fc; text-shadow: none; }
::selection { background: #b3d4fc; text-shadow: none; }
audio, canvas, iframe, img, picture, svg, video { vertical-align: middle; }
fieldset { border: 0; margin: 0; padding: 0; }
textarea { resize: vertical; }
input:focus, select:focus, textarea:focus, button:focus { outline: none; }

/* ==========================================================================
   Fonts
   ========================================================================== */

/* latin-ext */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/montserrat/v25/JTUSjIg1_i6t8kCHKm459WdhyyTh89ZNpQ.woff2) format('woff2');
  unicode-range: U+0100-02AF, U+0304, U+0308, U+0329, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/montserrat/v25/JTUSjIg1_i6t8kCHKm459WlhyyTh89Y.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/montserrat/v25/JTUSjIg1_i6t8kCHKm459WdhyyTh89ZNpQ.woff2) format('woff2');
  unicode-range: U+0100-02AF, U+0304, U+0308, U+0329, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/montserrat/v25/JTUSjIg1_i6t8kCHKm459WlhyyTh89Y.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/montserrat/v25/JTUSjIg1_i6t8kCHKm459WdhyyTh89ZNpQ.woff2) format('woff2');
  unicode-range: U+0100-02AF, U+0304, U+0308, U+0329, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/montserrat/v25/JTUSjIg1_i6t8kCHKm459WlhyyTh89Y.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}


/* ==========================================================================
   Basics
   ========================================================================== */

ol, ul { padding-left: 1rem; margin-bottom: 1rem; }
ol li, ul li { margin-bottom: 0.5em; }
ol.lower_alpha { list-style-type: lower-alpha; }

dl.row { margin-bottom: 0.5rem; }

.nm { margin: 0 !important; }
.ntm { margin-top: 0 !important; }
.nbm { margin-bottom: 0 !important; }
.stm { margin-top: 0.5em !important; }
.sbm { margin-bottom: 0.5em !important; }
.mtm { margin-top: 0.8em !important; }
.mbm { margin-bottom: 0.8em !important; }
.btm { margin-top: 1.1em !important; }
.bbm { margin-bottom: 1.1em !important; }
.vbtm { margin-top: 1.6em !important; }
.vbbm { margin-bottom: 1.6em !important; }
.vvbtm { margin-top: 2em !important; }
.vvbbm { margin-bottom: 2em !important; }

.bigger { font-size: 1.15em; line-height: 155%; }
.small { font-size: 0.9em; line-height: 145%; }
.tiny { font-size: 0.8em; line-height: 145%; }
.uppercase { text-transform: uppercase; }

.blue { color: #3d679c; }
.green { color: #093; }
.orange { color: orange; }
.red { color: #EB0000; }
.grey { color: #666; }
.lgrey { color: #B1B1B1; }
.vlgrey { color: #CCC; }

.bglgrey { background-color: #f4f4f4; }

table td.green { color: #093; }
table td.red { color: #EB0000; }

hr { border-color: #d6dbe0; opacity: 1; }

/* ==========================================================================
   Site
   ========================================================================== */

body, html { color: #333; font-family: 'Montserrat', sans-serif; font-weight: 400; }
body { margin: 0; padding: 0; }
strong { font-weight: 600; }
a { color: #3d679c; }
a.table_link { text-decoration: none !important; color: inherit !important; }

.page_space { padding-top: 2.5rem; padding-bottom: 2.5rem; }
.page_space_top_small { padding-top: 1rem; }
.page_space_bottom { padding-bottom: 2.5rem; }
@media (min-width: 768px) {
    .page_space { padding-top: 4rem; padding-bottom: 4rem; }
    .page_space_top_small { padding-top: 2rem; }
    .page_space_bottom { padding-bottom: 4rem; }
}

.heading_box { border-top: 1px solid #d6dbe0; padding-top: 1em; }
.heading_box.blank { border-top: 0; padding-top: 0; }
.heading_box a.right { float: right; display: block; margin-left: 5px; }

.lined_section { border-top: 1px solid #d6dbe0; }

dl.feature { font-size: 1.1em; }
@media (min-width: 768px) {
    dl.feature { font-size: 1.05em; }
}

/* ==========================================================================
   Home Map/Listings
   ========================================================================== */

#map { width: 100%; position: absolute; top: 0; bottom: 50%; }
#listings { width: 100%; position: absolute; top: 50%; bottom: 0; overflow-y: scroll; overflow-x: hidden; }
#listings_holder { padding: 15px 15px 15px 15px; }

@media (min-width: 550px) {
   #listings_holder { padding: 15px 15px 15px 15px; }
}
@media (min-width: 768px) {
   #listings_holder { padding: 40px 50px; }
}
@media (min-width: 992px) {
   #map { width: 50%; position: absolute; top: 0; bottom: 0; left: 0; }
   #listings { width: 50%; position: absolute; top: 0; bottom: 0; right: 0; }
   #listings_holder { min-width: 50vw; padding: 80px 30px 30px 30px; }
}
@media (min-width: 1200px) {
   #listings_holder { padding: 80px 40px 40px 40px; }
}
@media (min-width: 1400px) {
   #listings_holder { padding: 80px 50px 50px 50px; }
}

.mapboxgl-popup { max-width: 400px; font-size: 13px; line-height: 150%; font-family: 'Open Sans', sans-serif; }
#map_content { display: none; position: absolute; top: 0; left: 0; width: 100%; min-height: 100%; background-color: #FFF; z-index: 11; }
#map_share { font-size: 28px; line-height: 28px; padding-top: 3px; background-color: #093; color: #FFF; border-radius: 10px; text-align: center; width: 70px; height: 36px; margin-right: -35px; margin-top: -18px; cursor: pointer; position: absolute; right: 50%; top: 50%; z-index: 10; }
#map_share i.fa-chevron-up { padding-top: 2px; }
@media (min-width: 992px) {
   #map_share { width: 40px; height: 70px; margin-right: -20px; margin-top: -35px; padding-top: 21px; }
}

#listings .listing { border: 3px solid #EAEAEA; border-radius: 15px; cursor: pointer; font-size: 0.8em; overflow: hidden; position: relative; margin-top: 15px; }
#listings .listing .listing_details { padding: 10px 10px; }
#listings .listing:hover { border-color: #CCC; }
#listings .listing .listing_image { width: 50px; position: absolute; top: 0; bottom: 0; background-size: cover; background-repeat: no-repeat; background-position: center center; float: left; }
#listings .listing .listing_details.hasimage { margin-left: 50px; }
#listings .listing a { text-decoration: none; font-size: 1.1em; font-weight: 700; }
#listings .listing p { margin: 0; padding: 0; }
#listings .listing p.listing_type { font-size: 0.9em; margin-top: 0.1em; }
#listings .listing p.listing_price { font-weight: 700; }
#listings .listing p.listing_price span.listing_from { font-size: 0.6em; font-weight: 600; color: #999; }
@media (min-width: 550px) {
   #listings .listing { font-size: 1em; }
   #listings .listing .listing_details { padding: 10px 15px; }
   #listings .listing .listing_image { width: 70px; }
   #listings .listing .listing_details.hasimage { margin-left: 70px; }  
}

/* ==========================================================================
   Header
   ========================================================================== */

#main_logo, .main_logo { position: absolute; top: 0; left: 0; padding: 15px; }
#main_logo img, .main_logo img { max-width: auto; max-height: 44px; }
#headspace { height: 74px; background-color: #3d679c; }
/*#headline { border-top: 1px solid #EAEAEA; }*/

/* ==========================================================================
   Nav
   ========================================================================== */

#main_nav, .main_nav { position: fixed; top: 0; right: 0; padding: 10px; z-index: 11; }
#main_nav .icon_button, .main_nav .icon_button { display: inline-block; }

.icon_button { font-size: 28px; line-height: 28px; padding-top: 10px; color: #3d679c; border-radius: 10px; text-align: center; width: 50px; height: 50px; cursor: pointer; transition: all .3s; }
.icon_button.blue { color: #FFF; background-color: #3d679c; }
.icon_button.blue:hover { background-color: #093; }
.icon_button.green { color: #FFF; background-color: #093; }
.icon_button.green:hover { background-color: #3d679c; }
.icon_button_subtle { display: inline-block; border: 1px solid #EAEAEA; background-color: #FFF; border-radius: 5px; padding: 0.3em 0.4em; cursor: pointer; text-decoration: none; font-size: 0.9em; }
@media (min-width: 768px) {
   .icon_button { font-size: 30px; line-height: 30px; padding-top: 11px; width: 54px; height: 54px; }
}

.nav_window { display: none; position: absolute; top: 9px; right: 9px; background-color: #FFF; width: 300px; padding: 10px; border: 3px solid #EAEAEA; border-radius: 10px; }
.nav_window .icon_button { float: right; margin: -12px -12px 0 0; }
.nav_window ul { margin: 0; padding: 0; list-style: none; list-style-type: none; line-height: 150%; }
.nav_window ul li { margin: 0; }
.nav_window ul li a { display: inline-block; text-decoration: none; padding: 5px; color: #333; transition: all .3s; }
.nav_window ul li a.sel { color: #3d679c; }
.nav_window ul li a:hover { color: #093; }
.nav_window ul li a i { margin-right: 2px; }
.nav_window form { padding: 5px; }

.top_controls { background-color: #f4f4f4; padding: 10px 0; }
.top_control_button { color: #FFF; background-color: #3d679c; padding: 0.2em 0.6em; border-radius: 5px; display: inline-block; text-decoration: none; transition: all .3s; }
.top_control_button:hover { background-color: #093; }
.top_control_button.green { background-color: #093; }
.top_control_button.green:hover { background-color: #3d679c; }

.breadcrumbs { margin: 0.2em -0.2em; padding: 0; list-style: none; list-style-type: none; }
.breadcrumbs li { display: inline-block; margin: 0 0.2em; font-size: 0.9em; font-weight: 600; }
.breadcrumbs li:before { font-family: "Font Awesome 6 Pro"; font-weight: 900; content: "\f0da"; display: inline-block; margin-right: 0.4em; color: #999; }
.breadcrumbs li a { text-decoration: none; transition: all .3s; }

.list_nav { padding-left: 0; list-style: none; list-style-type: none; }

.content_open_button { position: absolute; bottom: 35px; left: 0; font-size: 20px; line-height: 20px; padding: 11px 15px; color: #FFF; background-color: #093; border-top-right-radius: 10px; border-bottom-right-radius: 10px; text-align: center; cursor: pointer; transition: all .3s; }
.content_open_button:hover { background-color: #3d679c; }

.listing_button { display: block; border: 1px solid #d6dbe0; padding: 12px 15px; border-radius: 8px; text-decoration: none; }
.listing_button.obv { border-width: 3px; }
.listing_button.warning { background-color: var(--bs-danger-bg-subtle); }
.listing_button .listing_button_title { display: block; font-weight: 600; font-size: 1em; line-height: 140%; }
.listing_button .listing_button_right, .listing_button .listing_button_left { color: #333; display: block; }
.listing_button .listing_button_right { float: right; }
.listing_button .listing_button_right i { margin-left: 0.5em; }
.listing_button.clickable:hover { background-color: #e7e7e7; }
.listing_button.disabled { background-color: #f4f4f4 !important; }
.listing_button.disabled .listing_button_title, .listing_button.disabled .listing_button_left, .listing_button.disabled .listing_button_right { color: #CCC !important; }
@media (min-width: 550px) {
    .listing_button { border-color: #d6dbe0; }
    .listing_button .listing_button_title { font-size: 1.2em; }
}

/* ==========================================================================
   Forms
   ========================================================================== */

.btn-primary { background-color: #3d679c; border-color: #3d679c; transition: all .3s; }
.btn-primary:hover { background-color: #093; border-color: #093; }
.btn-success { background-color: #093; border-color: #093; transition: all .3s; }
.btn-success:hover { background-color: #3d679c; border-color: #3d679c; }
.btn.disabled, .btn:disabled, fieldset:disabled .btn { background-color: #999; border-color: #999; }
.btn-check:checked + .btn { background-color: #3d679c; border-color: #3d679c; }
.btn-check + .btn:hover { color: #093; border-color: #093; }
.btn-check:checked + .btn:hover { color: #FFF; background-color: #093; border-color: #093; }
.btn-outline-primary { color: #3d679c; border-color: #3d679c; }
label { color: #666; }
.form-text { font-size: 0.85em; line-height: 130%; padding: 0 1em; color: #999; }
#form_map { height: 400px; }
.form-floating textarea.form-control { height: 200px; }
.form-floating .form-control { line-height: 150%; } 
.form-label { margin-bottom: 0.2rem; }
.switch_viewable { cursor: pointer; }
.form-check-input { margin-top: 0.15em; }
.form-check-input:checked { background-color: #3d679c; border-color: #3d679c; }

/* ==========================================================================
   Tables
   ========================================================================== */

.clickable { cursor: pointer; }
.clickable.warning { background-color: var(--bs-danger-bg-subtle); }
.disabled td { color: #CCC; }
.table_compact { font-size: 0.9em; }
th a.table_sort { color: #333; text-decoration: none; }
th a.table_sort.sel { color: #093; }

/* ==========================================================================
   Calendars
   ========================================================================== */

.horizontal_scroll { overflow-x: scroll; white-space: nowrap; padding-bottom: 13px; }
.calendar_linear .year { text-align: left; }
.calendar_linear .year_label { padding-bottom: 5px; font-weight: 600; color: #3d679c; font-size: 1.1em; }
.calendar_linear .month { text-align: left; }
.calendar_linear .month_label { padding: 5px 0; border-top: 1px solid #EAEAEA; }
.calendar_linear .spacer { min-width: 15px; }
.calendar_linear .day { font-size: 0.9em; line-height: 120%; text-align: center; min-width: 4.5em; border: 1px solid #EAEAEA; }
.calendar_linear .day_label { padding: 0.5em 0; }
.calendar_linear .day_price { color: #3d679c; font-size: 0.9em; font-weight: 600; height: 60px; }
.calendar_linear .day_price.selectable { cursor: pointer; }
.calendar_linear .day_price.selectable.ui-selecting { background-color: #EAEAEA; }
.calendar_linear .day_price.selectable.ui-selected { background-color: #CCC; }
.calendar_linear .day_price.booked { color: #999; }
.calendar_linear .day_price.alert { color: #F00; }
.calendar_linear .day_price.default { color: #093; }
.calendar_linear .left_info { line-height: 110%; padding-left: 1em; padding-right: 1em; border-bottom: 1px solid #EAEAEA; border-top: 1px solid #EAEAEA; }
.calendar_linear .left_info span { display: block; font-size: 0.7em; }
.calendar_linear .left_info a { text-decoration: none; }
.calendar_linear .extra_label { font-size: 0.75em; border-bottom: 1px solid #EAEAEA; text-align: center; line-height: 110%; padding: 0.5em 0; }
.calendar_linear .extra { min-height: 25px; padding: 0.2em 0; font-size: 0.85em; }
.calendar_linear .drag_bar { height: 50px; border-bottom: 1px solid #EAEAEA; background: #3d679c url("../img/main/scroll2.png") repeat-x left center; background-size: auto 40px; }
@media (min-width: 992px) {
    .calendar_linear .drag_bar { height: 0; border-bottom: 0; background: transparent none no-repeat left center; }
}

/*.calendar_linear .day i { font-size: 0.8em; }*/

.calendar { overflow-x: scroll; margin-top: 1.3em; padding-bottom: 13px; position: relative; }
.calendar_years { white-space: nowrap; margin-left: -15px; position: relative; }
.calendar_year { display: inline-block; margin-left: 15px; }
.calendar_months { white-space: nowrap; display: flex; margin-left: -15px; }
.calendar_month_label { border-bottom: 1px solid #CCC; margin-bottom: 0; padding-bottom: 0.5em; }
.calendar_month { display: inline-block; margin-left: 15px; height: 100%; }
.calendar_week { white-space: nowrap; border-bottom: 1px solid #CCC; border-right: 1px solid #CCC; }
.calendar_day, .calendar_weekday_label { display: inline-block; width: 45px; text-align: center; }
.calendar_day { border-left: 1px solid #CCC; padding: 8px 0; }
.calendar_day.not_active { color: #CCC; }
.calendar_day.not_priced { color: #999; background-color: #EAEAEA; }
.calendar_weekday_labels { white-space: nowrap; border-bottom: 1px solid #CCC; padding: 13px 0 5px 0; }
.calendar_weekday_label { text-transform: uppercase; font-weight: 600; font-size: 0.8em; }
.calendar_button { display: inline-block; margin-left: 15px; color: #666; background-color: #FFF; border: 1px solid #666; cursor: pointer; border-radius: 8px; vertical-align: -145px; }
.calendar_button i { margin: 3em 1em; }
.calendar_button:hover { color: #FFF; background-color: #093; border-color: #093; }

.calendar_key_square { display: inline-block; width: 15px; height: 15px; border: 1px solid #CCC; }
.calendar_key_square.available { background-color: #FFF; }
.calendar_key_square.unavailable { background-color: #EAEAEA; }

/* ==========================================================================
   Photos
   ========================================================================== */

#photos { margin: 0 -5px; }
#photos .photo { padding: 0 5px; margin-bottom: 10px; width: 33.3333%; float: left; position: relative; }
#photos .photo.double { width: 66.6666%; }
#photos .photo a { display: block; width: 100%; height: 0; position: relative; padding-bottom: 100%; border-radius: 15px; background-size: cover; background-repeat: no-repeat; background-position: center center; }
#photos .photo.double a { padding-bottom: 99.9%; } /* Fix pushing follwing images off */
#photos .icon_button { position: absolute; bottom: 10px; right: 10px; color: #FFF; background-color: rgba(0,0,0,0.5); font-size: 20px; line-height: 20px; padding-top: 10px; width: 40px; height: 40px; }
@media (min-width: 768px) {
    #photos { margin: 0 -6px; }
    #photos .photo { padding: 0 6px; margin-bottom: 12px; width: 25%; }
    #photos .photo.double { width: 50%; }
}
@media (min-width: 992px) {
    #photos .photo { width: 16.6666%; }
    #photos .photo.double { width: 33.3333%; }
}

#photo_manager .photo_col { margin-top: 0; }
#photo_manager .photo { width: 100%; height: 0; position: relative; padding-bottom: 100%; border-radius: 15px; background-size: cover; background-repeat: no-repeat; background-position: center center; background-color: #CCC; }
#photo_manager .photo .photo_buttons { display: none; position: absolute; top: 8px; right: 8px; }
#photo_manager .photo.edit .photo_buttons { display: block; }
#photo_manager .photo .photo_buttons a { display: inline-block; border: 1px solid #FFF; color: #FFF; background-color: rgba(0,0,0,0.1); border-radius: 7px; padding: 0.4em 0.5em; font-size: 1em; cursor: pointer; }
@media (min-width: 992px) {
    #photo_manager .photo .photo_button { top: 15px; right: 15px; border-radius: 5px; padding: 0.1em 0.2em; font-size: 0.8em; }
}

#page_refresh { display: none; }

.photos_tiny { margin: 0 -4px; }
.photos_tiny .photo { width: 50px; height: 50px; margin: 4px; display: block; background-size: cover; background-repeat: no-repeat; background-position: center center; border-radius: 5px; float: left; }
.photos_tiny .photo_add { display: block; float: left; width: 50px; height: 50px; margin: 4px; border-radius: 5px; color: #FFF; background-color: #CCC; position: relative; text-align: center; }
.photos_tiny .photo_add i { font-size: 22px; position: absolute; top: 50%; left: 0; right: 0; margin: 0 auto; -ms-transform: translateY(-50%); transform: translateY(-50%); }
.photos_tiny .photo_add:hover { background-color: #3d679c; }

.photo_single img { max-width: 100%; }
@media (min-width: 768px) {
    .photo_single img { max-width: 500px; }
}

#dropzone.disabled { border-color: #CCC; }
#dropzone.disabled .dz-message { color: #CCC; }

/* ==========================================================================
   Spacing
   ========================================================================== */

.m-t-1 { margin-top: 15px; }
.m-t-2 { margin-top: 25px; }
.m-t-3 { margin-top: 35px; }
.m-t-4 { margin-top: 45px; }
.m-t-5 { margin-top: 55px; }
.m-t-6 { margin-top: 65px; }
.m-t-7 { margin-top: 75px; }
.m-b-1 { margin-bottom: 15px; }
.m-b-1-5 { margin-bottom: 20px; }
.m-b-2 { margin-bottom: 25px; }
.m-b-3 { margin-bottom: 35px; }
.m-b-4 { margin-bottom: 45px; }
.m-b-5 { margin-bottom: 55px; }
.m-b-6 { margin-bottom: 65px; }
.m-b-7 { margin-bottom: 75px; }
.m-v-1 { margin-top: 15px; margin-bottom: 15px; }
.m-v-2 { margin-top: 25px; margin-bottom: 25px; }
.m-v-3 { margin-top: 35px; margin-bottom: 35px; }
.m-v-4 { margin-top: 45px; margin-bottom: 45px; }
.m-v-5 { margin-top: 55px; margin-bottom: 55px; }
.m-v-6 { margin-top: 65px; margin-bottom: 65px; }
.m-v-7 { margin-top: 75px; margin-bottom: 75px; }

/* ==========================================================================
   Footer
   ========================================================================== */

footer { border-top: 1px solid #d6dbe0; padding-top: 3rem; padding-bottom: 3rem; font-size: 0.93em; text-align: center; }
footer #footer_logo img { max-width: 170px; }
@media (min-width: 768px) {
    footer { text-align: left; }
}

/* ==========================================================================
   Misc
   ========================================================================== */

.popup { display: none; position: fixed; z-index: 12; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(255,255,255,0.7); }
.popup_window { position: fixed; top: 32%; left: 0; right: 0; margin: 0 auto; max-width: 300px; background-color: #FFF; border: 2px solid #3d679c; border-radius: 20px; padding: 20px; -ms-transform: translateY(-50%); transform: translateY(-50%); }
@media (min-width: 992px) {
    .popup_window { top: 50%; }
}

.info_block { background-color: #F1F1F1; padding: 15px; border-radius: 8px; }

.boxdeal { border: 3px solid #F1F1F1; border-radius: 20px; padding: 20px; }
.boxdeal.blue_border { border-color: #3d679c; }
@media (min-width: 768px) {
    .boxdeal.md_full_height { height: 100%; display: flex; flex-direction: column; }
}

.shadowy { --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1); --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color); box-shadow: var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow); }

#loading { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background-color: #FFF; z-index: 9999; }
#loading i { color: #3d679c; font-size: 3em; position: absolute; top: 50%; left: 50%; margin-left: -0.4em; margin-top: -0.4em; }

#payment_loading { color: #093; border: 2px solid #093; border-radius: 20px; font-size: 30px; text-align: center; padding: 3em 0; }
#payment-form { width: 100% !important; }
#stripe { width: 150px; }
.hidden { display: none; }

@media (min-width: 550px) {}
@media (min-width: 768px) {}
@media (min-width: 992px) {}
@media (min-width: 1200px) {}
@media (min-width: 1400px) {}