/*
Theme Name: Microsite Theme
Author: 4084
Description: Classic theme for creating customizable microsites with Gutenberg editor support.
Version: 1.0.4
Requires at least: 6.0
Tested up to: 6.4
Requires PHP: 8.0
License: GPL v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: microsite-theme
Tags: classic-theme, gutenberg, custom-header, custom-logo, custom-menu, featured-images, translation-ready
*/
:root{
	--baseDark:#000000;
	--baseLight:#FFFFFF;
	--siteMaxWidth:1620px;
	--siteGutters:3rem;
}
*{box-sizing:border-box;}
body{
	margin:0;
	padding:0;
	font-size:100%;
	font-weight:400;
	line-height:1.5;
	min-height:100vh;
	font-family: curiosity;
}
.inner{
	padding:0 var(--siteGutters);
	width:100%;
	max-width:var(--siteMaxWidth);
	margin:0 auto;
}
header a, footer a{
	color:var(--baseLight);
}
header{
	background-color:var(--baseDark);
	color:var(--baseLight);
}
header.site-header--sticky {
	position: sticky;
	top: 0;
	z-index: 100;
}
body.admin-bar header.site-header--sticky {
	top: 32px;
}
@media screen and (max-width: 782px) {
	body.admin-bar header.site-header--sticky {
		top: 46px;
	}
}
header .inner{
	display:flex;
	justify-content: space-between;
	align-items: center;
	max-width:none;
}
header h1.microsite-header-title{
	display:flex;
	align-items:center;
	gap:1rem;
	flex-wrap:wrap;
	font-size:1.4rem;
	font-weight:500;
}
header h1 a{
	display:flex;
	align-items:normal;
	justify-content: space-between;
	gap:1rem;
	text-decoration:none;
	color:var(--baseLight);
}
header h1 a .microsite-site-lockup,
header h1 a .microsite-header-lockup{
	max-height:50px;
	max-width:160px;
	width:auto;
	height:auto;
	display:block;
}
header h1 a .microsite-header-title-text{
	align-self:center;
	font-size:1.1rem;
	font-weight:500;
}
header h1 .microsite-header-inline-title{
	align-self:center;
	font-size:1.6rem;
	font-weight:500;
}
header .main-navigation{
	display:flex;
	justify-content: space-between;
	align-items: center;
	gap:2rem;
}
header .main-navigation a{
	text-decoration:none;
	transition: opacity .2s ease;
}
header .main-navigation a:hover{
	opacity:.7;
}
header .main-navigation .nav-item-has-dropdown{
	position:relative;
	display:inline-block;
}
header .main-navigation .nav-item-has-dropdown .caret{
	display:inline-block;
	margin-left:.25em;
	font-size:.75em;
	vertical-align:middle;
	transition:transform .2s ease;
}
header .main-navigation .nav-item-has-dropdown:hover .caret{
	transform:rotate(180deg);
}
header .main-navigation .nav-dropdown{
	position:absolute;
	top:100%;
	left:0;
	margin-top:-2px;
	padding-top:2px;
	min-width:180px;
	margin:0;
	padding:.5rem 0;
	list-style:none;
	background-color:var(--baseDark);
	border:1px solid rgba(255,255,255,.15);
	box-shadow:0 4px 12px rgba(0,0,0,.3);
	opacity:0;
	visibility:hidden;
	transform:translateY(-4px);
	transition:opacity .2s ease, visibility .2s ease, transform .2s ease;
	z-index:100;
}
header .main-navigation .nav-item-has-dropdown:hover .nav-dropdown{
	opacity:1;
	visibility:visible;
	transform:translateY(0);
}
header .main-navigation .nav-dropdown a{
	display:block;
	padding:.5rem 1rem;
	white-space:nowrap;
	color:var(--baseLight);
}
header .main-navigation .nav-dropdown a:hover{
	opacity:1;
	background-color:rgba(255,255,255,.1);
}

footer{
	background-color:var(--baseDark);
	color:var(--baseLight);
	padding:3rem 0;
}
footer .inner.flex{
	display:flex;
	justify-content: space-between;
	align-items: flex-start;
}
footer .inner.flex .foot{
	width:20%;
}
footer .inner.flex .wide-foot{
	width:calc(50%);
}
footer p, h5, h6, ul, li {
	margin:0;
	padding:0;
}
footer p{
	line-height:2em;
	font-size:.95rem;
}
footer .inner.flex .wide-foot p{
	line-height:2em;
}
footer h5, footer h6{
	font-size:1.3rem;
	text-transform:uppercase;
	font-weight:800;
	margin-bottom:1rem;
}
footer h6{
	font-size:1rem;
}
footer ul{
	list-style:none
}
ul#menu-quick-links{
	text-transform:uppercase;
	font-weight:500;
	font-size:.9rem;
}
ul#menu-quick-links li{
	padding:.2em 0
}
ul#menu-quick-links a{
	text-decoration:none;
	transition: opacity .2s ease;
}
ul#menu-quick-links a:hover{
	opacity:.7;
}
footer .inner.legal-nav, footer .inner.social, footer .inner.copyright{
	text-align:center;
	margin:1rem auto;
}
ul#menu-legal{
	margin-top:6rem;
	display:flex;
	justify-content:center;
	align-items:center;
	gap:1rem;
	font-size:.75rem;
	text-transform:uppercase;
	font-weight:500;
}
ul#menu-legal a{
	text-decoration:none;
	transition: opacity .2s ease;
}
ul#menu-legal a:hover{
	opacity:.7;
}
footer .inner.copyright p{
	font-size:.75rem;
	text-transform:uppercase;
	font-weight:500;
}
footer .inner.social ul{
	display:flex;
	justify-content:center;
	align-items:center;
	gap:1rem;
}
footer .inner.social ul a{
	display:inline-block;
	color:var(--baseLight);
	text-decoration:none;
	line-height:1;
	transition:opacity .2s ease;
}
footer .inner.social ul a:hover{
	opacity:.8;
}
footer .inner.social ul a i{
	font-size:1.25rem;
}
/* Hamburger menu: hide toggle above breakpoint */
header .nav-toggle{
	display:none;
}

@media screen and (max-width: 1019px) {
	header.site-header:not(.site-header--sticky){
		position:relative;
	}
	header .nav-toggle{
		display:flex;
		flex-direction:column;
		justify-content:center;
		gap:5px;
		width:44px;
		height:44px;
		padding:10px;
		background:transparent;
		border:none;
		cursor:pointer;
		color:var(--baseLight);
	}
	header .nav-toggle-bar{
		display:block;
		width:100%;
		height:2px;
		background-color:currentColor;
		transition:transform .2s ease, opacity .2s ease;
	}
	header .nav-toggle[aria-expanded="true"] .nav-toggle-bar:nth-child(1){
		transform:translateY(7px) rotate(45deg);
	}
	header .nav-toggle[aria-expanded="true"] .nav-toggle-bar:nth-child(2){
		opacity:0;
	}
	header .nav-toggle[aria-expanded="true"] .nav-toggle-bar:nth-child(3){
		transform:translateY(-7px) rotate(-45deg);
	}
	header .nav-menu-wrapper{
		position:absolute;
		top:100%;
		left:0;
		right:0;
		background-color:var(--baseDark);
		border-top:1px solid rgba(255,255,255,.15);
		box-shadow:0 4px 12px rgba(0,0,0,.3);
		max-height:0;
		overflow:hidden;
		opacity:0;
		visibility:hidden;
		transition:max-height .3s ease, opacity .2s ease, visibility .2s ease;
		z-index:99;
	}
	header.nav-menu-open .nav-menu-wrapper{
		max-height:80vh;
		opacity:1;
		visibility:visible;
		overflow-y:auto;
	}
	header .main-navigation{
		flex-direction:column;
		align-items:stretch;
		gap:0;
		padding:1rem var(--siteGutters) 1.5rem;
	}
	header .main-navigation > a,
	header .main-navigation > .nav-item-has-dropdown{
		display:block;
		padding:.75rem 0;
		border-bottom:1px solid rgba(255,255,255,.1);
	}
	header .main-navigation > .nav-item-has-dropdown:last-child{
		border-bottom:none;
	}
	header .main-navigation .nav-item-has-dropdown .nav-dropdown{
		position:static;
		opacity:1;
		visibility:visible;
		transform:none;
		box-shadow:none;
		border:none;
		margin:0;
		padding:0 0 0 1rem;
		max-height:0;
		overflow:hidden;
		transition:max-height .2s ease;
	}
	header .main-navigation .nav-item-has-dropdown.nav-dropdown-open .nav-dropdown{
		max-height:500px;
		padding-top:.5rem;
	}
	header .main-navigation .nav-item-has-dropdown .caret{
		transition:transform .2s ease;
	}
	header .main-navigation .nav-item-has-dropdown.nav-dropdown-open .caret{
		transform:rotate(180deg);
	}
	footer .inner.flex{
		flex-wrap:wrap;
		gap:4rem;
	}
	footer .inner.flex .wide-foot{
		width:100%;
	}
	footer .inner.flex .foot{
		width:50%;
	}
	ul#menu-legal{
		flex-wrap:wrap;
	}
	ul#menu-legal li{
	}
}
@media screen and (max-width: 600px) {
	footer .inner.flex .foot{
		width:100%;
		text-align:center
	}
}

/*


BEGIN CONTENT


*/

main#microsite-page{

}
main#microsite-page .microsite-content{

}
.microsite-landing{
	padding:3rem 0 4rem;
}
.microsite-landing__inner{
	max-width:1000px;
}
.microsite-landing__header h1{
	margin:0;
}
.microsite-landing__header p{
	margin:.5rem 0 1.5rem;
}
.microsite-landing__table-wrap{
	overflow-x:auto;
}
.microsite-landing__table{
	width:100%;
	border-collapse:collapse;
	background:#fff;
}
.microsite-landing__table th,
.microsite-landing__table td{
	padding:.85rem 1rem;
	border-bottom:1px solid #ddd;
	text-align:left;
}
.microsite-landing__table th{
	font-size:.9rem;
	text-transform:uppercase;
	letter-spacing:.03em;
}
.microsite-landing__table td time{
	white-space:nowrap;
}
.microsite-landing__empty{
	margin:0;
}
main#microsite-page .microsite-content article.microsite{
/*	padding:0px var(--siteGutters) 0px var(--siteGutters);*/
	max-width:var(--siteMaxWidth);
	margin:0 auto;
	position:relative;
}
.microsite h1,
.microsite h2,
.microsite h3,
.microsite h4,
.microsite h5,
.microsite h6,
.microsite p,
.microsite ol,
.microsite ul,
.microsite li,
.microsite blockquote,
.microsite > div{
	margin:1rem 0;
	padding:0 2rem;
}
.microsite h1,
.microsite h2,
.microsite h3,
.microsite h4,
.microsite h5,
.microsite h6{
	line-height:1.2em;
	margin-top:3rem;
	margin-bottom:.5em;
}
.microsite p,
.microsite li{
	font-size:1.25rem;
}
.microsite ol,
.microsite ul{
	padding-left:2rem;
}
.microsite li{
	margin:0;
}
.microsite h1{
	font-size:2.2rem;
}
.microsite h2{
	font-size:2rem;
}
.microsite h3{
	font-size:1.8rem;
}
.microsite h4{
	font-size:1.6rem;
}
.microsite h5{
	font-size:1.4rem;
}
.microsite h6{
	font-size:1.2rem;
}
.microsite blockquote{
	padding:3rem 8rem;
	background-image:url('/app/themes/microsite-theme/assets/images/blockquote.svg');
	background-repeat:no-repeat;
	background-position-y:40%;
	background-position-x:0;
}
.microsite blockquote p{
	font-size:1.6rem;
}
/* Gutter bleed for all covers in microsite */
.microsite .wp-block-image.size-full,
.microsite .wp-block-cover,
.microsite .wp-block-cover-image{
	margin:0;
	margin-left:calc(var(--siteGutters) * -1);
/*	width:calc(100% + calc(var(--siteGutters) * 2));*/
}

.microsite .wp-block-columns .wp-block-column .wp-block-image.size-full{
	margin:0;
}
.microsite .wp-block-columns .wp-block-column .wp-block-image.size-full img{
	width:100%;
	height:auto;
}

/* Viewport full bleed: Image block size "Full bleed" only (not generic full size) */
.microsite .wp-block-image.size-microsite_full_bleed{
	width:100vw;
	max-width:100vw;
	margin-left:calc(50% - 50vw);
	margin-right:calc(50% - 50vw);
}
.microsite .wp-block-columns .wp-block-column .wp-block-image.size-microsite_full_bleed{
	width:auto;
	max-width:100%;
	margin-left:0;
	margin-right:0;
}
.microsite .wp-block-columns .wp-block-column .wp-block-image.size-microsite_full_bleed img{
	width:100%;
	height:auto;
}

/* Full bleed: full-size image or Full Bleed block style */
.microsite .wp-block-cover.has-full-size-image,
.microsite .wp-block-cover-image.has-full-size-image,
.microsite .wp-block-cover.is-style-full-bleed,
.microsite .wp-block-cover-image.is-style-full-bleed{
	width:100vw;
	max-width:100vw;
	margin-left:calc(50% - 50vw);
	margin-right:calc(50% - 50vw);
}
.microsite .wp-block-microsite-theme-content-band,
.microsite .wp-block-microsite-theme-design-block{
	margin:0;
	width:100vw;
	max-width:100vw;
	margin-left:calc(50% - 50vw);
	margin-right:calc(50% - 50vw);
	box-sizing:border-box;
	padding-left:var(--siteGutters);
	padding-right:var(--siteGutters);
	display:flex;
	flex-direction:column;
	justify-content:center;
	align-items:stretch;
	min-height:0;
}
.wp-element-caption{
	font-size:.85em;
}
.microsite .wp-block-cover .wp-block-cover__inner-container,
.microsite .wp-block-cover-image .wp-block-cover__inner-container{
	padding:var(--siteGutters);
}
.microsite .wp-block-cover .wp-block-cover__inner-container h1,
.microsite .wp-block-cover .wp-block-cover__inner-container h2,
.microsite .wp-block-cover .wp-block-cover__inner-container h3,
.microsite .wp-block-cover .wp-block-cover__inner-container h4,
.microsite .wp-block-cover .wp-block-cover__inner-container h5,
.microsite .wp-block-cover .wp-block-cover__inner-container h6,
.microsite .wp-block-cover-image .wp-block-cover__inner-container h1,
.microsite .wp-block-cover-image .wp-block-cover__inner-container h2,
.microsite .wp-block-cover-image .wp-block-cover__inner-container h3,
.microsite .wp-block-cover-image .wp-block-cover__inner-container h4,
.microsite .wp-block-cover-image .wp-block-cover__inner-container h5,
.microsite .wp-block-cover-image .wp-block-cover__inner-container h6{
	margin:calc(var(--siteGutters) / 2) 0;
	padding:0;
}

.microsite .wp-block-cb-carousel-v2 .cb-pagination.swiper-pagination-horizontal{
	padding-top:4rem;
	justify-content: flex-start;
	top:unset;
	bottom:-40px;
}
.wp-block-cb-carousel-v2[data-cb-pagination=true] .swiper-horizontal{
	margin-bottom: calc(var(--wp--custom--carousel-block--pagination-bullet-size, 8px) * 8);
}
.microsite .wp-block-cb-carousel-v2 .cb-button-prev,
.microsite .wp-block-cb-carousel-v2.cb-rtl .cb-button-next,
.microsite .wp-block-cb-carousel-v2 .cb-button-next,
.microsite .wp-block-cb-carousel-v2.cb-rtl .cb-button-prev{
	border-radius:100%;
	border:1px solid #000;
	padding:10px;
	height:40px;
	width:40px;
	display:flex;
	align-items:center;
	justify-content: center;
}
.microsite .wp-block-cb-carousel-v2 .cb-button-prev,
.microsite .wp-block-cb-carousel-v2.cb-rtl .cb-button-next{
	top:unset;
	bottom:-40px;
	left:unset;
	right: calc(var(--wp--custom--carousel-block--navigation-sides-offset, 10px) + 60px);
}
.microsite .wp-block-cb-carousel-v2 .cb-button-next,
.microsite .wp-block-cb-carousel-v2.cb-rtl .cb-button-prev{
	top:unset;
	bottom:-40px;
}
.microsite .row-max-2,
.microsite .row-max-3,
.microsite .row-max-4 {
	display:flex;
	flex-wrap:wrap;
	gap:2rem;
}
.microsite .row-max-2 > *,
.microsite .row-max-3 > *,
.microsite .row-max-4 > *{
	min-width:0;
}
.microsite .row-max-2 > *{
	width:calc(calc(100% / 2) - 2rem);
}
.microsite .row-max-3 > *{
	width:calc(calc(100% / 3) - 2rem);
}
.microsite .row-max-4 > *{
	width:calc(calc(100% / 4) - 2rem);
}
@media screen and (max-width: 1200px) {
	.microsite .row-max-4 > * {
		width:calc(calc(100% / 3) - 2rem);
	}
}
@media screen and (max-width: 900px) {
	.microsite .row-max-3 > *,
	.microsite .row-max-4 > * {
		width:calc(calc(100% / 2) - 2rem);
	}
	
}
@media screen and (max-width: 600px) {
	.microsite .row-max-2 > *,
	.microsite .row-max-3 > *,
	.microsite .row-max-4 > * {
		width:100%;
	}
}