/* ******************** 
	HTML 
***************************** */
* {
    box-sizing: border-box;
}

body {
	width: 100% !important;
	min-height: 100% !important;
	min-height: 100vh !important;
	margin: 0 !important;
	padding: 0 !important;
}
.landing-page-wrapper { 
	position: relative;
	z-index: 50;
}

body.logged-in {  
    margin-top: 32px !important;  
}  

/* ******************** 
	GLOBAL IMAGE STYLES – Images
***************************** */

img {
	/* width: auto; */
	height: auto;
	max-width: 100%;
	height: auto !important;
	margin-bottom: 1rem;
}

.picborder,
.picright,
.picleft {
	border: 1px solid gainsboro;
}

.picright, 
.picrightnb,
.alignright {
	float: right !important;
	margin: 0 0 1.3rem 2rem;
	max-width: 50%;
	display: table;
}

.picleft,
.picleftnb,
.alignleft {
	float: left;
	margin: .4rem 2rem 1.3rem 0;
	max-width: 50%;
	display: table;
}

.picborder,
.noborder,
.aligncenter { 
	display: table; 
	margin: 0 auto 1.5rem auto;
	display: table;
}


/* ******************** 
	PROMO CALENDAR 
***************************** */


header.promocal-header { 
	display: block;
	max-width: 1000px;
	margin: 0 auto !important;
	text-align: center;
	padding: 3rem 2rem 0 2rem !important;
	position: relative;
}
.promocal-description p,
.promocal-description li { font-size: 1.1rem !important; }
.container.calendar-wrap { 
	margin: 0 auto !important; 
	padding: 1rem !important;
}
.calendar-container {
	display: grid;
	grid-template-columns: repeat(7, 1fr);
	grid-template-rows: 1fr;
	grid-column-gap: 1rem;
	grid-row-gap: 1rem;
	align-items: stretch;
	max-width: 90%;
	margin-left: auto;
	margin-right: auto;
}

.calendar-container div { 
	font-size: 3rem;
	font-weight: bold;
	text-align: center;
	padding: 0;
}
.calendar-container div:first-child  { 
	grid-column: 1;
}

.calendar-container div .btn-primary { 
	display: inline-block;
	width: 100%;
	font-size: 3rem;
	font-weight: bold;
	padding: 2rem 0;
	-webkit-border-radius: 15px !important;
	-moz-border-radius: 15px !important;
	border-radius: 15px !important;		
}

.calendar-container div .btn-primary.disabled { 
	text-shadow: none !important;
	pointer-events: none;
}

.calendar-container div .btn.btn-primary:hover,
.calendar-container div .btn.btn-primary:active:hover { 
	text-shadow: none !important;
}


@media (max-width: 950px) {
	.calendar-container { grid-template-columns: repeat(4, 1fr); }
}
@media (max-width: 768px) {
	.calendar-container { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 576px) {
	.calendar-container { grid-template-columns: repeat(2, 1fr); }
}


	
/* ******************** 
	YOUTUBE, IFRAME, VIDEO, AUDIO CONTAINERS 
***************************** */

iframe { width: 100%; }

.video-container {
	position: relative;
	padding-bottom: 56.25%;
	padding-top: 30px;
	margin: 0rem auto 2rem auto;
	height: 0;
	overflow: hidden;
	width: 100%;
	max-width: 100%;
}
.video-container iframe,  
.video-container object,  
.video-container embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%; 
	max-height: 100%;
}

video { width: 100%; height: 100%; max-width: 100%; }
.wp-video { width: 100% !important; margin: 1.5rem auto !important; }
.wp-video-shortcode { width: 100% !important; }

.mejs-container { width: 100% !important; max-width: 600px !important; margin: 1.5rem 0 !important; }

.video-wall .video-container { margin: 0 auto !important; }
.video-wall iframe { margin: 0 auto !important; }
.video-wall .content-block { padding-top: 0 !important; }
.video-wall .video-container { margin-top: 0 !important; padding-top: 0 !important; }



/* ******************** 
	BUTTON PRIMARY 
***************************** */


	.modal.landing-modal .modal-body { 
		box-shadow: none !important;
		padding-top: 1rem !important;
		border-color: transparent !important;
	}
	.modal.landing-modal .modal-header {
		padding-bottom: 0 !important;
		border-color: transparent !important;
	}
	.modal.landing-modal .modal-footer {
		padding-bottom: 1rem !important;	
		border-color: transparent !important;
	}
	.modal.landing-modal .btn.btn-primary {
		font-size: 1rem !important;
		font-weight: bold;
		-webkit-border-radius: 4px !important;
		-moz-border-radius: 4px !important;
		border-radius: 4px !important;
		padding: 10px 15px !important;
		
	}


/* *******************
	Multiple Books - Buttons 
***************************** */


.multiple-books-promotion { 
	max-width: 1000px !important;
	margin: 0 auto !important;
}

.multiple-books-promotion .row, 
.multiple-books-promotion .col {
	margin: 0 auto !important;
}

.multiple-books-promotion .bookbox .book-spacing { padding: 0 1.5rem 1rem 1.5rem;  }
.multiple-books-promotion .center-btn { margin-left: auto; margin-right: auto; }


.multiple-books-promotion .bookswrap { }

.lp-center-text p, 
.lp-center-text h1, 
.lp-center-text h2,
.lp-center-text h3, 
.lp-center-text h4, 
.lp-center-text h5, 
.lp-center-text h6 { text-align: center !important; }

.mbp-top-section header.mbp-header { }

.mbp-top-section .lp-banner { text-align: center; margin: 0 auto 3rem auto; }
.mbp-top-section .lp-banner img { max-width: 100%; margin: 0 auto; }


.mbp-top-section { padding: 2rem 0; }
.mbp-top-section h1 { margin-bottom: 2rem !important; }
.mbp-top-section h2 { margin-bottom: 2rem !important; }
.mbp-bot-section { padding: 2rem 0; }

.multiple-books-promotion .bookbox.six-books .bookti { font-size: 1rem; }
.multiple-books-promotion .bookbox.five-books .bookti { font-size: 1rem; }
.multiple-books-promotion .bookbox.four-books .bookti { font-size: 1.1rem; }
.multiple-books-promotion .bookbox.three-books .bookti { font-size: 1.3rem; }
.multiple-books-promotion .bookbox.two-books .bookti { font-size: 1.6rem; }
.multiple-books-promotion .bookbox .bookti { display: block; padding-bottom: 1rem; }

.multiple-books-promotion .bookbox .book-description { line-height: 130%; padding-bottom: .5rem; }

	@media (max-width: 576px) {

		.multiple-books-promotion .bookbox .book-spacing { padding-bottom: 2rem;  }

	}	


/* ******************** 
	Block Editor 
***************************** */

.wp-block-column-is-layout-flow { 
	margin-left: auto !important;
	margin-right: auto !important;
}

.wp-block-image .alignright { margin-left: 3rem; margin-bottom: 2rem; }
.wp-block-image .alignright .wp-element-caption { text-align: center; }

.wp-block-image .alignleft { margin-right: 3rem; margin-bottom: 2rem; }
.wp-block-image .alignleft .wp-element-caption { text-align: center; }

.wp-block-image .aligncenter { margin-bottom: 3rem; }
.wp-block-image .aligncenter .wp-element-caption { text-align: center; }



/* ******************** 
	FOOTER - BASIC 
***************************** */
footer {
	width: 94%;
	max-width: 1000px;
    display: table;
    margin: 0 auto;
    padding: 1rem 0 2rem 0 !important;
}

.copyright-policy { 
	width: 100%;
	max-width: 1020px;
	display: table;
	padding: 1.5rem 10px 1rem 10px;	
	margin: 0 auto;
	font-size: .9rem !important;
}

footer .copy-left { 
	text-align: left; 
	float: left; 
}
footer .copy-left span, 
footer .copy-left a  { 
	display: inline-block !important;
}
footer .copy-left span { 
	height: auto !important; 
	margin: 0 .8rem; 
}

footer .copy-right { 
	text-align: right;
	float: right; 
}
footer .copy-right a { margin: 0 .8rem; }
footer .copy-right span::before { content: "|"; }

.disclaimers-credits,
.disclaimers-credits p { 
	width: 85% !important;
	display: table;
	text-align: center !Important;
	padding: 0;
	clear: both !important;
	margin: .9rem auto 0 auto !important;
	line-height: 130% !important;
}


	@media (max-width: 767.6px) {
	
		footer .copy-left,
		footer .copy-right { 
			float: none !important;
			display: block !important;
			text-align: center !important;
		}
		footer .copy-left { padding: 0 0 1rem 0 !important; }
		footer .copy-right { padding: 1rem 0 !important; }
		footer .copy-left span { 
			display: block !important;
			float: none !important;
			height: 1px !important;
			color: transparent !important;
		}
		.disclaimers-credits div { width: 90% !important; }
		footer .copy-right span::before { content: ""; }

		
	}