body {

	--color-black:#000;
	--color-dark-grey: #68686A;
	--color-grey:#D3D3D3;
	--color-light-grey:#f2f2f2;
	--color-xlight-grey: #F8F8FA;
	--color-white:#FFF;
	
	--color-dark-violet:#132B71;
	--color-violet:#2041A0;
	--color-light-violet:#5876CC;
	
	--color-dark-coral:#12695B;
	--color-coral:#10917D;
	--color-light-coral:#2CB98F;
	--color-xlight-coral:#E1F7F0;
	
	--color-dark-yellow:#E2B500;
	--color-yellow:#FDCD09;
	--color-light-yellow:#F8ED86;
	
	--color-violet-transparent:#2041A010;
	
	--border:1px solid;
	--mid-border:2px solid;
	--border-radius:6px;
	--box-shadow:0 0 20px 0 #2041A010;
}

.has-black-background-color {
	background:var(--color-black) !important;
	border-color:var(--color-black) !important;
	color:var(--color-white);
}
.has-dark-grey-background-color {
	background:var(--color-dark-grey) !important;
	border-color:var(--color-dark-grey) !important;
	color:var(--color-white);
}
.has-grey-background-color {
	background:var(--color-grey) !important;
	border-color:var(--color-grey) !important;
}
.has-light-grey-background-color {
	background:var(--color-light-grey) !important;
	border-color:var(--color-light-grey) !important;
}
.has-xlight-grey-background-color {
	background:var(--color-xlight-grey) !important;
	border-color:var(--color-xlight-grey) !important;
}
.has-white-background-color {
	background:var(--color-white) !important;
	border-color:var(--color-white) !important;
}
.has-dark-violet-background-color {
	background:var(--color-dark-violet) !important;
	border-color:var(--color-dark-violet) !important;
	color:var(--color-white);
}
.has-violet-background-color {
	background:var(--color-violet) !important;
	border-color:var(--color-violet) !important;
}
.has-light-violet-background-color {
	background:var(--color-light-violet) !important;
	border-color:var(--color-light-violet) !important;
}
.has-dark-yellow-background-color {
	background:var(--color-dark-yellow) !important;
	border-color:var(--color-dark-yellow) !important;
	color:var(--color-white);
}
.has-yellow-background-color {
	background:var(--color-yellow) !important;
	border-color:var(--color-yellow) !important;
}
.has-light-yellow-background-color {
	background:var(--color-light-yellow) !important;
	border-color:var(--color-light-yellow) !important;
}
.has-dark-coral-background-color {
	background:var(--color-dark-coral) !important;
	border-color:var(--color-dark-coral) !important;
	color:var(--color-white);
}
.has-coral-background-color {
	background:var(--color-coral) !important;
	border-color:var(--color-coral) !important;
}
.has-light-coral-background-color {
	background:var(--color-light-coral) !important;
	border-color:var(--color-light-coral) !important;
}

.has-black-color {
	color:var(--color-black) !important;
}
.has-dark-grey-color {
	color:var(--color-dark-grey) !important;
}
.has-grey-color {
	color:var(--color-grey) !important;
}
.has-light-grey-color {
	color:var(--color-light-grey) !important;
}
.has-xlight-grey-color {
	color:var(--color-xlight-grey) !important;
}
.has-white-color {
	color:var(--color-white) !important;
}
.has-dark-violet-color {
	color:var(--color-dark-violet) !important;
}
.has-violet-color {
	color:var(--color-violet) !important;
}
.has-light-violet-color {
	color:var(--color-light-violet) !important;
}
.has-dark-yellow-color {
	color:var(--color-dark-yellow) !important;
}
.has-yellow-color {
	color:var(--color-yellow) !important;
}
.has-light-yellow-color {
	color:var(--color-light-yellow) !important;
}
.has-dark-coral-color {
	color:var(--color-dark-coral) !important;
}
.has-coral-color {
	color:var(--color-coral) !important;
}
.has-light-coral-color {
	color:var(--color-light-coral) !important;
}



/* group */
.wp-block-group.has-background {
    padding: 20px;
}
.page-content > .wp-block-group.has-background {
	padding: 55px;
	position: relative;
	width: calc(100% - 200px);
	margin: 0 auto;
	box-shadow: var(--box-shadow);
}
.page-content > .wp-block-group.has-background .wp-block-group__inner-container {
	width: calc(100% + 300px);
    left: -150px;
    position: relative;
}
.page-content > .wp-block-group.has-white-background-color {
}
.page-content > .wp-block-group.has-background .wp-block-group__inner-container > p {
	width: calc(100% - 400px);
	margin:10px auto 30px;
}

.wp-block-column > .wp-block-group {
	width:100%;
	margin:0;
	left:0;
	padding:20px;
	height:100%;
}
.wp-block-column > .wp-block-group.sticky {
	height:auto;
}

.page-content > .wp-block-group > div > h2:first-child {
	font-weight: bold;
	font-size: 10rem;
	white-space: nowrap;
	margin-top: -11rem;
	margin-bottom: -1rem;
	color: var(--color-xlight-grey);
	position: relative;
	z-index: -10;
}
.page-content > .wp-block-group.has-yellow-background-color > div > h2:first-child {
    color: var(--color-yellow);
}
.page-content > .wp-block-group > div > h2:nth-child(2) {
	margin: 0;
	font-size: 2rem;
	line-height: 1.2;
}

.wp-block-group.has-background .wp-block-group.has-background {
    background: transparent !important;
}


/* citations */

.wp-block-quote {
    font-size: 1.2em;
    padding: 1em 3em;
    text-align: center;
    position: relative;
    margin: 1em 0;
}
.wp-block-quote cite {
    font-size: .7em;
}
.wp-block-quote cite::before {
	content:'–';
	margin-right:.5em;
}
.wp-block-pullquote {
    border-top: 3px solid var(--color-coral);
    border-bottom: 3px solid var(--color-coral);
    margin: 50px 0;
    padding: 10px 0;
}
.wp-block-pullquote blockquote {
	padding: 0 150px;
}


/* videos */

.wp-block-embed.is-type-video .wp-block-embed__wrapper {
	width:100%;
	position:relative;
	height:0;
	padding-bottom:56%;
}
.wp-block-embed.is-type-video iframe {
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
}

p > iframe[data-src^="https://www.youtube.com"] {
    width: 100%;
    min-height: 400px;
}


/* cover */

.wp-block-cover {
	position: relative;
	width: 100vw;
	left: 50%;
	transform: translateX(-50%);
}

.wp-block-cover + .wp-block-group {
	margin-top:0;
}


/* tables */

.wp-block-table table td {
    padding: 25px;
    vertical-align: middle;
}


/* separator */
.wp-block-separator {
	position:relative;
	height:3px;
	width:10%;
	min-width:100px;
	margin:1.5rem auto;
	background:var(--color-light-grey);
}


/* zandegu banner */

.zandegu-banner {
    display: flex;
    justify-content: space-between;
    padding: 1em;
    margin: 2em 0;
}

.zandegu-banner .content {
    flex-grow: 2;
}

