:root {
	--text-light-color: rgba(255, 255, 255, 0.8);
	--text-dark-color: #222222;
	--text-line-height: 1.75em;
	--text-content-size: 11pt;

	--color-dark-blue: #203069;
	--color-blue: #26397d;
	--color-orange: #ebaa03;
	--color-yellow: #ffd13b;
}
body { font-family: 'Open Sans', sans-serif; }
a { color: #113349; }

/* woocommerce fix */
.woocommerce .col-1,
.woocommerce .col-2 {
  max-width: none;
}


@media (min-width: 769px) {
.w-sm-auto { width: auto !important; }
}


.pt-6 { padding-top: 6rem !important; }
.pr-6 { padding-right: 6rem !important; }
.pl-6 { padding-left: 6rem !important; }
@media (min-width: 769px) { .pl-sm-6 { padding-left: 6rem !important; } }
.pb-6 { padding-bottom: 6rem !important; }

.pt-7 { padding-top: 12rem !important; }
.pr-7 { padding-right: 12rem !important; }
@media (min-width: 769px) { .pr-sm-7 { padding-right: 12rem !important; } }
@media (min-width: 992px) { .pr-lg-7 { padding-right: 12rem !important; } }
@media (min-width: 1200px) { .pr-xl-7 { padding-right: 12rem !important; } }

.pl-7 { padding-left: 12rem !important; }
@media (min-width: 769px) { .pl-sm-7 { padding-left: 12rem !important; } }
@media (min-width: 992px) { .pl-lg-7 { padding-left: 12rem !important; } }
@media (min-width: 1200px) { .pl-xl-7 { padding-left: 12rem !important; } }

.rl-15 { transform: rotate(-15deg); }
.rr-15 { transform: rotate(15deg); }

.screen-reader-text { display: none; }


.content { font-size: var(--text-content-size); line-height: var(--text-line-height); color: var(--text-dark-color); }
.content h1, .content .h1 { letter-spacing: 1px; font-size: 25pt; font-weight: 600; color: var(--color-dark-blue); }
.content h2, .content .h2 { margin-top: 2em; letter-spacing: .5px; color: #203069; font-weight: 600; font-size: 19pt; }
.content h3, .content .h3 { margin-top: 2em; letter-spacing: 0.15em; font-size: 13pt; color: #203069; font-weight: bold;  }
.content h4, .content .h4 { letter-spacing: 0.15em; font-size: 13pt; color: #203069; font-weight: bold;  }
@media (max-width: 768px) {
	.content h1, .content .h1 {  font-size: 30pt; }
}

.absolute-center { position: absolute !important; left: 50%; top: 50%; transform: translate(-50%, -50%); }
.absolute-top-center { position: absolute; left: 50%; top: 0; transform: translate(-50%, 0); }
.absolute-bottom-center { position: absolute; left: 50%; bottom: 0; transform: translate(-50%, 0); }
.absolute-bottom-right { position: absolute; bottom: 0; right: 0; }
.absolute-bottom-left { position: absolute; bottom: 0; left: 0; }


@media (min-width: 769px) {
.w-sm-50 { width: 50% !important; }
.w-sm-25 { width: 25% !important; }
.w-sm-30 { width: 30% !important; }
}

.prices { font-size: 16pt; }
.sale-price { color: red; font-size: 110%; }
.regular-price { color: gray; font-size: 90%; text-decoration: line-through; margin-left: 1em; }

.text-dark-blue, .blue-color { color: #203069 !important; }
.text-teal { color: #00847a !important; }
.text-white a { color: inherit !important; }
.text-red { color: darkred !important; }
.text-shadow { text-shadow: rgba(0, 0, 0, 0.4) 0px 4px 5px; }

.content .btn { font-size: var(--text-content-size); }
.btn-dark-blue { border-radius: 0; background-color: #26397d; color: white !important; }
.btn-white { border-radius: 0; background-color: white; color: var(--text-dark-color) !important; border: 0; text-shadow: none; }
.btn-transparent { background-color: transparent; color: white; transition: 0.5s background-color; border: 0; }
.btn-add-to-cart { background-color: #e4e4e4; color: var(--text-dark-color); width: 100%; text-decoration: none; border-radius: 0; padding-top: 0.8em; padding-bottom: 0.8em; }

.bg-blue { background-color: #3949ab; }
.bg-dark-blue { background-color: #203069 }
.bg-teal { background-color: #00847a; }
.bg-light-teal { background-color: #defffd; }
.bg-gray { background-color: lightgray; }
.bg-light-gray { background-color: #f5f5f5; }
.bg-dark-gray { background-color: darkgray; }
.bg-yellow { background-color: #ffff33; }
.bg-bluepurple { background-color: #5586da; }
.card { border-radius: 0.5rem; }

.promo-sections .promo-section-row { padding: 5em 0; }
.promo-sections .promo-section-image { width: 50%; }
.promo-sections .promo-section-text { text-align: left; background-color: white; position: absolute; width: 50%; top: 50%; transform: translate(0, -50%); padding: 0em 2em; }
.promo-sections .promo-section-button-wrapper { text-align: right; }
.promo-sections .promo-section-button-wrapper .btn { transform: translate(3em, 0); padding: 1em; }

.promo-sections .promo-section-row:nth-child(1) { text-align: right; background-color: #e6ebf6; }
.promo-sections .promo-section-row:nth-child(1) .promo-section-text { left: 5em; }
.promo-sections .promo-section-row:nth-child(2) { text-align: left; background-color: #d1d7e9; }
.promo-sections .promo-section-row:nth-child(2) .promo-section-text { right: 5em; }
.promo-sections .promo-section-row:nth-child(3) { text-align: right; background-color: #e6ebf6; }
.promo-sections .promo-section-row:nth-child(3) .promo-section-text { left: 5em; }


.home-page-header { color: white; line-height: var(--text-line-height); position: relative; overflow: hidden; }
.home-page-header h1 { font-size: 22pt; }
.home-page-header .lead { font-size: 12pt; }
.home-page-header-text { position: absolute; left: 6em; top: 50%; width: 40%; transform: translate(0, -50%); }
.home-page-header-text p { text-shadow: 2px 2px 3px black; }
.home-page-header-text h1 { text-shadow: 2px 2px 3px black; }
.home-page-header-text .btn-transparent { text-shadow: 2px 2px 3px black; }

@media (max-width: 991px) {
	.home-page-header-text { width: auto; left: 1em; right: 1em; }
	.home-page-header-text p { display: none; }
	.home-page-header-text br { display: none; }
	.home-page-header-text .btn { font-size: 10pt; }
	.home-page-header h1 { font-size: 13pt; margin-bottom: 0.75em; }
}


.home-page-header-after { background-color: #f5f7fc; color: #203069; }
.home-page-header-after img { width: 5em; height: auto; }


.home-page-boxes .row .box-bg { position: relative; background-size: cover !important; background-position: center !important; }
.home-page-boxes .row .box-content { color: white; }
.home-page-boxes .row .box-content h2 { font-size: 16pt; }
.home-page-boxes .row > div:nth-child(1) { padding-bottom: 30px; }
.home-page-boxes .row > div:nth-child(1) .box-content { position: absolute; width: 25%; text-align: center; }
.home-page-boxes .row > div:nth-child(1) .box-bg { background: linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)),url(../images/block1-resized.png); height: 35em; }

.home-page-boxes .row > div:nth-child(2) .box-bg { background: linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)),url(../images/home-page-box-resized.png); height: 20em; }
.home-page-boxes .row > div:nth-child(2) .box-content { position: absolute; left: 30px; bottom: 30px; right: 30px; }

.home-page-boxes .row > div:nth-child(3) .box-bg { background: linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)),url(/images/box3.jpg); height: 20em; }
.home-page-boxes .row > div:nth-child(3) .box-content { position: absolute; left: 30px; bottom: 30px; right: 30px; }

.aspect-wrapper { position: relative; height: 0; }
.aspect-wrapper > * { position: absolute; width: 100%; }


.border-black { border: 4px solid black; }
.h-bottom-line:after { content: ''; display: block; width: 2em; height: 0.15em; margin: 0 auto; margin-top: 0.75em; background-color: #203069; }
.h-bottom-line-left:after { content: ''; display: block; width: 2em; height: 0.15em; margin-top: 0.75em; background-color: #203069; }

.img-black-border { padding: 0.4em; border: 3px solid black; }

.polaroid { box-shadow: 0 0 4px #333; padding: 0.5em; text-align: center; background-color: white; overflow: hidden; }

.breadcrumb { padding: 0; background: transparent; color: black; }
.breadcrumb a { color: black; }

.image-block-row { overflow: hidden; }
.image-block-row img { width: 100%; }
.image-block-row video { width: 100%; }
.image-block { position: relative; }
.image-block-row .image-block h2 { font-size: 50pt; }

.activities-row img { height: 4em; }

.instagram-media-block img { width: 100%; }

.card-row { border-top: 4px solid #00847a; }
.card-row .card-col-left, .card-row .card-col-right { background-size: cover; background-position: center; }
.card-row .card-col-center { padding-left: 10em; padding-right: 10em; line-height: 1.1em; }
@media (max-width: 1500px) { .card-row .card-col-center { padding-left: 8em; padding-right: 8em; } }
@media (max-width: 1200px) { .card-row .card-col-center { padding-left: 1em; padding-right: 1em; } }

article.post-13 { border-top: 6px solid #00847a; }

.circle-icon { display: inline-block; border-radius: 100%; width: 2em; height: 2em; position: relative; background-color: #ededed; vertical-align: middle; margin-right: 0.5em; }
.circle-icon .fa { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); font-size: 80%; }



#topSocial a { color: black; display: inline-block; width: 2em; height: 2em; border: 1px solid black; text-align: center; margin-left: 0.4em; position: relative; }
#topSocial a .fab { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); }

@media (max-width: 768px) {
	#topRight { position: static; text-align: center; width: 100%; }
}

.slider img { width: 100%; min-height: 20em; }
#slider .slide-image { padding-bottom: 50%; background-size: cover; min-height: 20em; }

.card-bar { position: absolute; bottom: 1em; left: 0; right: 0; }
.card-service { text-align: center; background-color: #f5f5f5; min-height: 24em; position: relative; padding: 1.5em; }
.card-service h3 { margin-top: 1em; margin-bottom: 1em; }
.card-service-icon { position:relative; margin: 0 auto; display: inline-block; border: 2px solid var(--color-dark-blue); border-radius: 100%; width: 3em; height: 3em; font-size: 20pt; }
.card-service-icon i { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); color: var(--color-dark-blue); }

#panels { padding-top: 5rem; padding-bottom: 5rem; }

#services .card { margin-bottom: 2em; }
#services .card-body { padding: 0.6rem; }
#services .card-title { margin-bottom: 0; color: #333; font-weight: bold; font-size: 12pt; }


.navbar { padding: 0; }
.navbar-toggler { line-height: 2.5rem; }
.dropdown-toggle::after { display: none; }
#desktopMenu { position: relative; background-color: var(--color-blue); }
#navbarDropdown .logo-desktop { max-width: 100%; width: 14em; position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); }

#desktopMenu .nav-item { font-weight:bold; font-size: 11pt; overflow: hidden; }
#desktopMenu .nav-item > a.nav-link { position:relative; color: white; padding: 2em 1.60em; font-weight:500;}
#desktopMenu .nav-item.has-dropdown:hover > a.nav-link:after { content: ''; position: absolute; width: 2em; height: 2em; background-color: white; display: block; left: 50%; bottom: 0; transform: rotate(45deg) translate(10%, 100%); }

#desktopMenu .nav-item .nav-panel { position: absolute; background-color: white; left: 0; width: 100%; z-index: 2; border-top: 1px solid lightgray; display: none; }
#desktopMenu .shop-panel-col:first-of-type { border-left: 0; }
#desktopMenu .shop-panel-col { border-left: 2px solid #f5f5f5; width: 13em; }
#desktopMenu .shop-panel-col p { font-size: 9pt; }

#desktopMenu .slick-next { right: -18px; }
#desktopMenu .slick-prev { left: -18px; }
#desktopMenu .slick-slide .shop-panel-col a { outline: none !important; }
#desktopMenu .slick-slide:first-of-type .shop-panel-col { border-left: 0; }
#desktopMenu .slick-slide .shop-panel-col { border-left: 2px solid #f5f5f5; width: 13em; min-height: 15em; }


/* #desktopMenu .nav-item:hover #shopPanel { height: auto; opacity: 1; } */
.nav-panel .shop-dropdown-menu { list-style: none; padding: 0; column-count: 2; }
.nav-panel  h2 { font-size: 16pt; border-bottom: 1px solid #525252; padding-bottom: 0.5em; margin-bottom: 1em; }
.nav-panel .shop-dropdown-menu a { display: block; padding: 0.5em; color: #525252; font-weight: normal; }
.nav-panel .shop-dropdown-menu a:hover { background-color: rgba(17,17,17,0.05); color: black; text-decoration: none; }
.nav-panel .shop-dropdown-menu li { break-inside: avoid; }



/*
#menu-menu-1 .menu-item-has-children a:after { display: none; }
@media (max-width: 1410px) { #menu-menu-1 > .menu-item > a { font-size: 14pt; } }
@media (max-width: 1320px) { #menu-menu-1 > .menu-item > a { font-size: 13pt; } } 
*/

.social-icon { display: inline-block; position: relative; width: 2em; height: 2em; border-radius: 100%; border: 1px solid var(--text-light-color); font-size: 14pt; margin-right: 0.5em; }
.social-icon .fab { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); }

#bottomBar { background-color: #2096d4; padding-top: 0.5em; padding-bottom: 0.5em; }
#bottomBar img { width: 10%; margin-left: 0.5em; margin-right: 0.75em; }

#footer { background-color: #26397d; font-size: 10pt; color: var(--text-light-color); line-height: var(--text-line-height); }
#footer a { color: var(--text-light-color); }
#footer h2 { font-weight: bold; font-size: 12pt; color: white; padding-bottom: 0.25em; }
#footer ul.menu { padding-left: 0; list-style: none; }
#footer ul.menu li a { display: block; padding: 1em 0; }

#footer-after { color: var(--text-light-color); font-size: 10pt; }

.bottom-contact-info { list-style-type: none; padding-left: 0; }


.front-page-header { position: relative; }
@media (max-width: 768px) {
.front-page-header h1 { font-size: 10pt; }
}

.page-header { position: relative; overflow: hidden; max-height: 30em; }
.page-header img { width: 100%; transform: translate(0, -10%); }
.page-header video { width: 100%; }


.slick-prev:focus, .slick-next:focus { border: 1px solid black; }
.slick-next:before, .slick-prev:before
{ color: gray !important; }

#footer-menu { list-style: none; }
#footer-menu a { color: white; font-size: 11pt; }


#popupModal .close { font-size: 100pt; opacity: 1; line-height: 0.5em; }
#popupModal .close span { font-size: 100pt; opacity: 1; }
#popupModal .popup-arrow { transform: translate(-20%, 0); }
#popupModal .your-email { width: 80%; float:left; }
#popupModal .your-email input { width: 100%; border-radius: 0; }
#popupModal input[type=submit] { background-color: white; border: 2px solid #00847a; color: black; border-radius: 0; }

#testimonialsSlider { font-size: 17pt; line-height: 2em; }
#testimonialsSlider .review-open-quote { color: lightgray; font-size: 20pt; }
#testimonialsSlider .review-location { font-size: 12pt; }
#testimonialsSlider .review-text { padding-left: 20%; padding-right: 20%; }

.woocommerce span.onsale { display: none; }
.woocommerce .form-row label { width: 100%; }
.woocommerce .woocommerce-input-wrapper { width: 100%; }
.woocommerce #respond input#submit.alt, .woocommerce a.button.alt, .woocommerce button.button.alt, .woocommerce input.button.alt { background-color: var(--color-dark-blue); }
.woocommerce #respond input#submit.alt:hover, .woocommerce a.button.alt:hover, .woocommerce button.button.alt:hover, .woocommerce input.button.alt:hover { background-color: var(--color-dark-blue); }
.woocommerce #content table.cart td.actions .input-text, .woocommerce table.cart td.actions .input-text, .woocommerce-page #content table.cart td.actions .input-text, .woocommerce-page table.cart td.actions .input-text { width: 20em; max-width: 100%; }
.woocommerce .related.products h2 { text-transform: uppercase; text-align: center; }
.woocommerce .related.products h2:after { content: ''; display: block; width: 2em; height: 0.15em; margin: 0 auto; margin-top: 0.75em; background-color: #203069; }

.single-product-gallery .single-product-gallery-image-wrap img { margin: 0 auto; }
.single-product-gallery-nav .single-product-gallery-image-wrap img { border: 2px solid #f5f5f5; width: 8em; cursor: pointer; }
.single-product-gallery-nav .slick-current .single-product-gallery-image-wrap img { border: 2px solid #203069; }

.single-product .card { border-radius: 0; }
.single-product .card .price { margin-top: 0; background-color: #f5f5f5; padding: 0.8em 1em; }
.single-product .cart { padding: 1em; margin-bottom: 0 !important; }
.single-product .cart .quantity { display: none !important; }
.single-product .variations .label { display: none; }

.product-loop-images-container { position: relative; overflow: hidden; }
.product-loop-images-container .btn { position: absolute; display: block; width: 100%; background-color: var(--color-dark-blue); color: white; width: 100%; text-decoration: none; border-radius: 0; padding-top: 0.8em; padding-bottom: 0.8em; transition: transform 0.5s; transform: translate(0,0); }
.product-loop-images-container:hover .btn { transform: translate(0, -100%); }
.product-loop-images-container .btn .fa { margin-left: 0.5em; }

.woocommerce ul.products li.product .price { text-align: center; font-size: 12pt; color: var(--text-dark-color);   }
.woocommerce ul.products li.product .price del { color: var(--text-dark-color); opacity: 0.8; }
.woocommerce ul.products li.product .price ins { text-decoration: none; color: #c00000; }

.video-blocks .video-block .video-block-overlay { position: absolute; left: 0; top: 0; right: 0; bottom: 0; }
.video-blocks .video-block h2 { font-size: 11pt; }
.video-modal .close { position: absolute; right: 1em; top:1em; color: white; font-size: 20pt; }

.video-gallery .video-gallery-nav { text-align: center; margin-top: 1em; }
.video-gallery .video-gallery-nav-item { position: relative; display: inline-block; width: 10em; border: 3px solid transparent; }
.video-gallery .video-gallery-nav-active { border: 3px solid var(--color-dark-blue); }
.video-gallery .video-gallery-nav-link { position: absolute; left: 0; top: 0; right: 0; bottom: 0; }

.stock.in-stock { display: none; }

dl.accordion dt { position: relative; padding: 0.5em; background-color: white; transition: all 0.5s; cursor: pointer; }
dl.accordion dt:after { content: '+'; font-size: 16pt; display: block; position: absolute; right: 1em; top: 50%; transform: translate(0,-50%); color: lightgray; }
dl.accordion dt.accordion-expanded:after { content: '\00d7'; }
dl.accordion dt:hover { background-color: #e4e4e4; }
dl.accordion dd { display: none; padding: 0.5em; }

.faq-content dl.accordion dt .fa { margin-right: 1em; color: var(--color-blue); }
.faq-content dl.accordion dt:after { display: none; }
.faq-content dl.accordion dt:hover { background-color: transparent; }

.product dl.accordion dt { border-top: 1px solid #e4e4e4; padding: 1em; font-size: 13pt; color: var(--color-dark-blue); }
.product dl.accordion dd { padding: 1em; }

.faq-content h2 { border-bottom: 2px solid #e4e4e4; padding-bottom: 0.75em; }


.wc_payment_method.payment_method_paytomorrow img { max-width: 100%; width: 20em; height: auto !important; }

[data-view-more] { cursor: pointer; }


#floatingShop { position: fixed; right: 15px; top: 10em; z-index: 1; background-color: var(--color-yellow); padding: 0.3em; border-radius: 2em; box-shadow: 0 0 0.5em rgba(0,0,0,0.8); font-size: 12pt;  }
#floatingShop .floating-cart { display: inline-block; color: var(--color-blue); padding: 0.3em; padding-right: 0; font-size: 15pt; text-decoration: none !important; }
#floatingShop .floating-num-badge { display: inline-block; border-radius: 100%; font-size: 9pt; text-decoration: none !important; transform: translate(-50%, 50%); background-color: white; min-width: 1.3em; height: 1.3em; text-align: center; }
#floatingShop .floating-checkout { display: inline-block; color: var(--color-blue); padding: 0.3em; padding-left: 0; font-weight: bold; text-decoration: none !important; }

.__pt-info-link { display: inline-block; padding-top: 1em; }

.tns-controls { position: absolute; top: 50%; width: 100%; height: 0; padding-left: 1em; padding-right: 1em; }
.tns-controls button { position: relative; transform: translate(0, -50%); border: 0; border-radius: 100%; width: 1.5em; height: 1.5em; background-color: #b0b0b0; padding: 0; }
.tns-controls button:before { content: ''; display: block; position: absolute; left: 50%; top:50%; transform: translate(-50%, -50%); color: white; font-size: 1.5em; height: 1.3em; line-height: 1em; font-weight: bold; }
.tns-controls button[data-controls=prev] { float: left; }
.tns-controls button[data-controls=prev]:before { content: '\2039'; }
.tns-controls button[data-controls=next] { float: right; }
.tns-controls button[data-controls=next]:before { content: '\203A'; }
