/*
Theme Name: ISOO
Author: X-CD
Description: A custom theme for ISOO
Version: 1.00
*/
@charset "utf-8";
@import url('https://fonts.googleapis.com/css?family=Open+Sans:400,400i,600,600i,700,700i&display=swap');
@import url('https://fonts.googleapis.com/css?family=Abhaya+Libre:400,500,600&display=swap');

/* CSS Document */
/* RESET */
/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;	
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
/* END RESET */

/* WORDPRESS CORE */
.alignnone {
    margin: 5px 20px 20px 0;
}

.aligncenter,
div.aligncenter {
    display: block;
    margin: 5px auto 5px auto;
}

.alignright {
    float:right;
    margin: 5px 0 20px 20px;
}

.alignleft {
    float: left;
    margin: 5px 20px 20px 0;
}

a img.alignright {
    float: right;
    margin: 5px 0 20px 20px;
}

a img.alignnone {
    margin: 5px 20px 20px 0;
}

a img.alignleft {
    float: left;
    margin: 5px 20px 20px 0;
}

a img.aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto;
}

.wp-caption {
    background: #fff;
    border: 1px solid #f0f0f0;
    max-width: 96%; /* Image does not overflow the content area */
    padding: 5px 3px 10px;
    text-align: center;
}

.wp-caption.alignnone {
    margin: 5px 20px 20px 0;
}

.wp-caption.alignleft {
    margin: 5px 20px 20px 0;
}

.wp-caption.alignright {
    margin: 5px 0 20px 20px;
}

.wp-caption img {
    border: 0 none;
    height: auto;
    margin: 0;
    max-width: 98.5%;
    padding: 0;
    width: auto;
}

.wp-caption p.wp-caption-text {
    font-size: 11px;
    line-height: 17px;
    margin: 0;
    padding: 0 4px 5px;
}

/* Text meant only for screen readers. */
.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important; /* Many screen reader and browser combinations announce broken words as they would appear visually. */
}

.screen-reader-text:focus {
	background-color: #eee;
	clip: auto !important;
	clip-path: none;
	color: #444;
	display: block;
	font-size: 1em;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000;
	/* Above WP toolbar. */
}

.wp-block-columns {
	max-width: 1650px;
    margin: 0 auto;
	padding: 15px 50px 0px;
}

#single .wp-block-columns h1, #single .wp-block-columns h2, #single .wp-block-columns h3, #single .wp-block-columns h4 {
	padding:0;
}  

#single .wp-block-columns p {
	padding:10px 0;
}

#single .wp-block-columns ul {
	padding:15px 50px;
}

#single .wp-block-gallery .blocks-gallery-item {
	margin:0 5px 10px;
}
/* END WORDPRESS CORE */
/* SLIDEOUT */
.slideout-menu {
  position: fixed;
  top: 0;
  bottom: 0;
  width: 500px;
  min-height: 100vh;
  overflow-y: scroll;
  -webkit-overflow-scrolling: touch;
  z-index: 0;
  display: none;
}

#mobile-menu-wrap {  
	width: 500px;
	min-width: 500px;
	opacity: 0;
	visibility: hidden;
}

#mobile-menu-wrap.visible {
	opacity: 1;
	visibility: visible;
}

.slideout-menu-left {
  left: 0;
}

.slideout-menu-right {
  right: 0;
}

.slideout-panel {
  position: relative;
  z-index: 1;
  background-color: #FFF; /* A background-color is required */
  min-height: 100vh;
}

.slideout-open,
.slideout-open body,
.slideout-open .slideout-panel {
  overflow: hidden;
}

.slideout-open .slideout-menu {
  display: block;
}

#panel:before {
  content: '';
  display: block;
  background-color: rgba(0,0,0,0);
  transition: background-color 0.5s ease-in-out;
}

#panel.panel-open:before {
  position: absolute;
  top: 0;
  bottom: 0;
  width: 100%;
  background-color: rgba(0,0,0,.5);
  z-index: 99;
}

#close-mobile {
	height: 40px;
    background:#e0e4e6;
    text-align: right;
    padding:0 25px;
    box-sizing: border-box;
	margin-bottom:25px;
	display: flex;
	justify-content: space-between;
}

#close-mobile a {
	display: inline-block;
	color:#0b77b7;
	font-size:26px;
	line-height: 42px;
}

#mobile-menu-back {
	visibility: hidden;
}

#mobile-menu-back.active {
	visibility: visible;
}

#mobileSearch {
	display:block;
	width:100%;
	margin-bottom:30px;
	text-align: center;
}

#mobileSearch .searchForm input[type="text"] {
	width:85%;
}

#mobile-menu {
	padding:0 25px;
	box-sizing: border-box;
	margin-bottom:60px;
}

#mobile-menu li {
	border-bottom:1px solid #dbd9d2;
	padding:25px 0;
}

#mobile-menu li a {
	display: inline-block;
	width:90%;
	font-family: 'Montserrat', sans-serif;
    font-size: 18px;
    font-weight: 500;
    color: #0b77b7;
    text-decoration: none;
    text-transform: uppercase;
}

#mobile-menu li ul {
	display:none;
	position: absolute;
    height: 100%;
    width: 100%;
    background: #fff;
    top: 61px;
    left: 0px;
	padding-left: 25px;
	box-sizing: border-box;
}

#mobile-menu li ul.expanded {
	display:block;
	z-index: 20;
}

#mobile-menu li ul.expanded ul.expanded {
	top:0;
}

#mobile-menu .mobileParentItem:after {
	display:inline-block;
	content:">";
	position: absolute;
	right:30px;
	z-index: 10;
}

#mobile-menu-wrap .button {
	display: block;
	width:200px;
	margin:0 auto 15px;
	text-align: center;
}
/* END SLIDEOUT */

/* GENERAL */
* {
	font-family: 'Open Sans', sans-serif;
}

img {
	max-width: 100%;
	height: auto;
}

.button, #single .button, .mainContent a.button {
	font-family: 'Open Sans', sans-serif;
	font-size:16px;
	font-weight: 600;
	color:#fff;
	text-decoration: none;
	text-align: center;
	text-transform: uppercase;
	background: #0973ba;
	padding:15px 0px;
	border:2px solid #0973ba;
	display: inline-block;
	max-width:270px;
	width:100%;
	box-sizing: border-box;
}

.button.white, #single .button.white {
	color:#0973ba;
	background: #fff;
}

.button.squared {
	border-radius: 0;
}

.button.whiteborder {
	border:2px solid #fff;
}

main {
	padding-top:230px;
}

main p {
	padding:15px 0;
	font-family: "Open Sans", sans-serif;
	font-size:16px;
	font-weight: 400;
	line-height: 26px;
	margin:0 auto;
}

.searchForm input[type="text"] {
    width: 200px;
    height: 31px;
	padding-left:15px;
    position: relative;
    z-index: 1;
	border:2px solid #e8e8e8;
}
.searchForm input[type="submit"] {
    margin-left: -50px;
    height: 20px;
    width: 50px;
    position: relative;
    z-index: 10;
    background-image: url(img/caccn-magnify.png);
    background-color: transparent;
    border: none;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    color: transparent;
	cursor: pointer;
}

nav.social ul {
	display: inline-block;
}

nav.social li {
	display: inline-block;
	margin:0 5px;
}

.wc-gallery-captions-show .gallery-caption {
	background: #fff !important;
}

.wc-gallery .gallery-item {
	float: none !important;
}
/* END GENERAL */

/* X-CD */
.x-cd-slim-login-submit {
	font-family: 'Open Sans', sans-serif;
    font-size: 16px;
    font-weight: 600;
    color: #fff;
    text-decoration: none;
    text-align: center;
    text-transform: uppercase;
    background: #0973ba;
    padding: 15px 0px;
    border: 2px solid #0973ba;
    display: inline-block;
    max-width: 270px;
    width: 100%;
    box-sizing: border-box;
	cursor: pointer;
}

.featherlight .featherlight-content {
	padding:50px 25px 0 !important;
}

.x-cd-login-slim-form .form-actions {
	padding:10px 0;
}

.x-cd-login-slim-form .x-cd-extra-info {
	display:block;
	width:100%;
	padding:10px 0;
}

.x-cd-login-slim-form .x-cd-extra-info a {
	color:#0973ba;
}

.x-cd-login-slim-form .form-actions a {
	color:#0973ba;
	font-size:16px;
}
/* END X-CD */

/* HEADER */
header {
	position: fixed;
	top:0;
	width:100%;
	z-index: 99;
	max-width:100vw;
	box-sizing: border-box;
}


#topBar {
	background: #0973ba;
    display: flex;
    justify-content: flex-end;
    padding: 0 20px;
	font-family: 'Montserrat', sans-serif;
	font-weight: 400;
	font-size: 14px;
	line-height: 30px;
	width:100%;
	box-sizing: border-box;
}

#topBar a {
	color:#fff;
	text-decoration: none;
	font-weight: 600;
	text-transform: uppercase;
}

#mainLogo {
	display: flex;
	justify-content: center;
	align-items: center;
	background: #fff;
	border-bottom:1px solid #d6e8f4;
	padding:35px 20px;
	box-sizing: border-box;
	position: relative;
}

#menuToggle {
	display:none;
}

#menuToggle a {
	font-size: 50px;
	color:#000;
	text-decoration: none;
}

#mainMenu {
	background:#fff;
	display: flex;
	justify-content: center;
	border-bottom:1px solid #eeeeee;
}

#mainMenu .menu {
	display:inline-flex;
	justify-content: center;
	padding:25px 20px;
	box-sizing: border-box;
}

#mainMenu .menu li {
	display:inline-block;
	margin:0px 18px;
	position: static;
}

#mainMenu .menu li a {
	font-family: 'Montserrat', sans-serif;
	font-size:16px;
	font-weight: 500;
	color:#000;
	text-decoration: none;	
	letter-spacing: .5px;
}

#mainMenu .menu li.highlight a {
	color:#0065ad;
	text-transform: uppercase;
	font-weight: 800;
}

#mainMenu .menu li a:hover {
	color:#0065ae;
}

#mainMenu .menu ul.sub-menu {
	position:absolute;
	visibility: none;
	opacity: 0;	
	text-align: left;
	display: none;
	background: #FFF;
	border-bottom: 1px solid #e0e4e6;
}

#mainMenu .menu li:hover ul.sub-menu {
	opacity: 1;
	visibility: visible;
	padding:15px;
	display: block;	
}

#mainMenu .menu ul.sub-menu li {
	display:block;
	margin: 10px auto;
	position: relative;
	vertical-align: top;
}

#mainMenu .menu ul.sub-menu li.menu-item-has-children a {
	font-weight: 600;
}

#mainMenu .menu ul.sub-menu li.menu-item-has-children ul.sub-menu li a {
	font-weight:500;
}

#mainMenu .menu ul.sub-menu ul.sub-menu {
	display: block;
    text-align: left;
	position: relative;
	visibility: visible;
	opacity: 1;
	width:auto;
	left:auto;
	border-bottom:none;
	padding:12px 0 0;
}

#mainMenu .menu ul.sub-menu .sub-menu li {
	display: block;
	text-align: left;
	margin:10px auto;
}

#headerCTA {
	padding-left:18px;
	z-index: 99;
}

#headerCTA .button {
	padding:8px 60px;
}

#mobileMenuButton {
	display: none;
}

#mobileMenuButton a {
	font-size:24px;
	color:#024c7e;
	text-decoration: none;
}
/* END HEADER */

/* HOME PAGE */
.mobileSlider {
	display:none;
}

.isooNews {
	width:100%;
	max-width: 1500px;
	margin:50px auto;
	padding:50px;
	text-align: right;
	box-sizing: border-box;
	background: url(img/isoo_geometric_background.png);
}

.isooNews h1 {
	padding:0 0 40px 25px;
	font-size:32px;
	text-align: left;
	color: #fff;
	font-family: 'Abhaya Libre', serif;
}

.isooNews article {
	padding: 25px;
	background: #fff;
	margin:5px auto;
	text-align: left;
}

.isooNews article a {
	font-size:14px;
	color:#0973ba;
	margin-top: auto;
}

.isooNews a {
	font-size:14px;
	color:#fff;
}

.featuredSpeakers {
	max-width:1500px;
	padding:50px 30px;
	margin: 0 auto;
	display:block;
	text-align: center;
}

p.mainSubtitle {
	font-size:32px;
	font-weight: 600;
	display: inline-block;
	padding-bottom:10px;
	border-bottom:2px solid #b0afaf;
	margin-bottom:15px;
	font-family: 'Abhaya Libre', serif;
}

#speakers {
	padding-top:75px;
}

.speaker {
	display:inline-block;
	width:20%;
	vertical-align: top;
	margin:0 2%;
	position: relative;
	padding:25px;
	box-sizing: border-box;
	text-align: left;
}

.speaker img {
	width:100%;
    height:100%;
    object-fit: cover;
    overflow: hidden;
}

.speaker h3 {
	font-size: 18px;
	font-weight: 500;
	line-height: 22px;
	text-align: left;
	margin:10px 0;
}

.speaker .speakerImage {
	position: relative;
}

.featuredSpeakers .speaker p {
	font-size:15px;
	text-align: left;
	line-height: 20px;
	margin-bottom:5px;
	padding: 0;
}

.speaker p:before {
	display:none;
}

#speakersMobile {
	max-width:300px;
	margin:0 auto;
	padding:60px 30px 0;
	display: none;
}

#speakersMobile .speaker {
	display:block;
	max-width:300px;
	width:100%;
	height:auto;
	margin:0 auto;
}

#speakersMobile .speaker img {
	max-width: 100%;
	height:auto;
	object-fit: contain;
}

.slick-arrow {
	background: none;
	border:none;
	cursor: pointer;
	font-size: 45px;
	position: absolute;
	top:50%;
	transform: translateX(-50%);
}

.slick-next {
	right:-50px;
}

.slick-prev {
	left:-15px;
}
/* END HOME PAGE */

/* SINGLE */
#pageTitle {
	background: url(img/isoo_subpage_banner.png);
	background-repeat: no-repeat;
	text-align: center;
	background-position: center center;
}

#single #pageTitle h1 {
	font-family: "Open Sans", sans-serif;
	font-size:32px;
	font-weight: 500;
	color:#fff;
	border-bottom: none;
	text-align: center;
	display: inline-block;
	padding:15px 25px;
	border: 2px solid #fff;
	text-decoration: none;
}

#single h1, #single h2 {
	display: block;
	font-family: 'Abhaya Libre', serif;
	font-weight: 500;
	padding-bottom: 10px;
	position: relative;
	text-decoration: underline;
	text-underline-position: under;
}

#single h1 {	
	font-size: 36px;
	margin: 10px auto 25px;
	line-height: 40px;
}

#single h2 {
	font-size: 32px;
	margin: 25px auto 15px;
}

#single h3 {
	font-family: 'Abhaya Libre', serif;
	color:#000;
	font-size: 24px;
	font-weight: 500;
	margin:15px auto;
}

#single h4 {
	font-family: "Open Sans", sans-serif;
	font-size: 20px;
	font-weight: 500;
	margin:15px auto;
}

#single h5 {
	font-size:16px;
	font-weight: 500;
	margin: 10px auto;
}

#single h6 {
	font-size:12px;
	font-weight: 500;
	margin: 10px auto;
}

#single a {
	color: #0b77b7;
	font-weight: 500;
	text-decoration: underline;
}

#single .button a {
	color: #fff;
	text-decoration: none;
	font-weight: 600;
}

#single ul, #single ol {
	padding:10px 75px;
	margin:0 auto 0 auto;
	font-family: "Open Sans", sans-serif;
}

#single ul {
	list-style: disc;
}

#single ul ul {
	padding:15px 25px;
	list-style: circle;
}

#single ol {
	list-style: decimal;
}

#single ol ol {
	padding:10px;
	list-style: lower-roman;
}

#single ul li, #single ol li {
	margin:0 0 10px;
}

#pageTitle {
	width:100%;
	background-size:100% auto;
	background-position:center left;
	background-repeat: no-repeat;
	padding:75px 25px;
	box-sizing: border-box;
	margin-bottom:50px;
}

#pageTitle h1 {
	font-size:36px;
	font-family: "Open Sans", sans-serif;
	font-weight: 600;
	color:#fff;
	text-align: center;
	margin:25px auto;
}

#pageTitle h1:before {
	display: none;
}

.wp-block-quote, #single .wp-block-quote {
	display: block;
	padding:50px;
	background: url(img/xcd-review-background-image.png);
	background-size: cover;
	text-align: center;
}

.wp-block-quote p, #single .wp-block-quote p {
	color:#fff;
	font-size:18px;
	font-weight: 600;
	max-width: 1200px;
}

.wp-block-quote cite, #single .wp-block-quote cite {
	color:#fff;
	font-size: 14px;
	font-weight: 500;
	font-family: "Open Sans", sans-serif;
}
/* END SINGLE */

/* REUSABLE SECTIONS */
.mainContent {
	max-width: 1700px;
	margin: 0 auto;
	padding: 0 20px 50px;
	box-sizing: border-box;
	font-family: "Open Sans", sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 26px;
}

.mainContent h1 {
	font-size:32px;
	line-height: 38px;
	font-weight: 500;
	padding:0px 0px 20px;
}

.mainContent img {
	vertical-align: middle;
}

.mainContent h2 {
	display: flex;
	justify-content: space-between;
	font-size: 28px;
	line-height: 36px;
	padding: 15px 0;
}

.mainContent a {
	color:#0b77b7;
	font-weight: 600;
}

hr {
	border:1px solid #f9f9f9;
	max-width: 1650px;
	margin: 0 auto;
	padding:0 15px;
	box-sizing: border-box;
}

.isooCTABreak {
	display: flex;
	max-width: 1700px;
	width:100%;
	margin:0 auto;
	justify-content: space-between;
	padding:50px 20px;
	box-sizing: border-box;
}

.isooCTABreak div {
	width:45%;
}

.isooCTALeft h1, #single .isooCTALeft h1 {
	color:#000;
	font-size: 32px;
	padding-bottom:40px;
	line-height: 40px;
	font-family: 'Abhaya Libre', serif;
}

.isooCTALeft p {
	font-size: 18px;
	line-height: 24px;
	padding-bottom:45px;
}

.logIn {
	margin-left:25px;
	color:#0973ba;
	font-size:18px;
	text-transform: uppercase;
	font-weight: 600;
	text-decoration: none;
	border-bottom:1px solid #0973ba;
	padding-bottom: 5px;
}

.isooCTARight {
	text-align: center;
}

.isooCTARight p, #single .isooCTARight p {
	font-size:20px;
	line-height: 30px;
}

.isooCTARight a, #single .isooCTARight a {
	color:#0063ad;
	font-size: 18px;
	font-weight: 600;
}

.isooCenterBreak {
	background: #e0dfe0;
	background: -moz-linear-gradient(left,  #ffffff 0%, #e0dfe0 100%);
	background: -webkit-linear-gradient(left,  #ffffff 0%,#e0dfe0 100%);
	background: linear-gradient(to right,  #ffffff 0%,#e0dfe0 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#e0dfe0',GradientType=1 );
	width:100%;
	display: block;
	clear: both;
	padding:40px 20px;
	text-align: center;
	box-sizing: border-box;
}

.isooCenterBreak h1 {
	color:#000;
	font-size: 32px;
	line-height: 40px;
	padding-bottom:40px;
	font-family: 'Abhaya Libre', serif;
}

.isooCenterBreak p {
	font-size: 18px;
	padding:5px;
}

.isooCenterBreak p a {
	color:#0063ad;
	font-size: 18px;
	font-weight: 600;
	text-decoration: none;
}

.isooCenterBreak .button {
	margin-top:40px;
}
/* END REUSABLE SECTIONS */

/* ARCHIVE */
#archiveList {
	width:100%;
	max-width:1650px;
	padding:100px 50px;
	margin: 0 auto;
	box-sizing: border-box;
}

#archiveList .post {
	display:block;
	width:100%;
	margin-bottom:100px;
}

#archiveList .post .postTeaser {
	margin-bottom: 25px;
}

#archiveList .post h2 {
	font-size:20px;
	font-weight: 500;
	margin-bottom: 15px;
	letter-spacing: 1px;
	padding: 0;
}

#archiveList .post p {
	font-size:14px;
	line-height:22px;
	font-weight: 400;
	padding: 0;
}

#archiveList .post p.postDate {
	margin-bottom: 40px;
}
/* END ARCHIVE */
/* FOOTER */
footer {
	width:100%;
	padding:100px 20px;
	box-sizing: border-box;
	background: #f3f5f4;
	border-top:10px solid #e2e9eb;
}

#footerContent {
	width:100%;
	max-width: 1700px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
}

#logoSocial img {
	margin-bottom: 30px;
}

#footerContent .button {
	padding:15px;
}

#footerNav {
	width:60%;
}

#footerNav ul {
	display:flex;
	justify-content: space-between;
	padding-top: 50px;
}

#footerNav a {
	color:#000;
	text-decoration: none;
	font-size: 18px;
	line-height: 24px;
	font-family: 'Abhaya Libre', serif;

}
/* END FOOTER */
@media screen and (max-width:1099px) {	
	#mainMenu {
		display:none;
	}
	
	#menuToggle {
		display:inline-block;
		position: absolute;
		right:20px;
	}
	
	main {
		padding-top: 151px;
	}
	
	#single {
		padding-top: 127px;
	}
		
	#footerContent {
		flex-wrap: wrap-reverse;
	}
	
	footer section, #footerNav {
		width:100%;
		text-align: center;
		padding-bottom:50px;
	}
	
	footer #logoSocial {
		padding-bottom: 0;
	}
}

@media screen and (max-width:990px) {
	
	.isooCTABreak {
		flex-wrap: wrap;
	}
	
	.isooCTABreak div {
		width:100%;
	}
	
	.isooCTALeft {
		padding-bottom: 75px;
	}
	
	#pageTitle {
		padding:20px;
	}
}

@media screen and (max-width:700px) {
	#mainLogo {
		justify-content: space-between;
	}	
	
	#menuToggle {
		position: relative;
		right:auto;
	}
	
	#single h1:before, #single h2:before {
		width: 75%;
	}
	
	#speakers {
		display: none;
	}
	
	#speakersMobile {
		display: block;
	}
	
	#footerNav {
		display: none;
	}
}

@media screen and (max-width:535px) {
	#mainLogo img {
		width:75%;
	}
	
	.isooNews h1, .isooCTALeft h1, #single .isooCTALeft h1, .isooCenterBreak h1 {
		font-size: 24px;
	}
}

@media screen and (max-width:500px) {
	#mobile-menu-wrap {
		width:100%;
		min-width:300px;
	}
}