/*
Theme Name: ImagineThis Culture Journey
Theme URI: https://imaginethisculturejourney.com
Author: SteerPoint
Author URI: http: //www.steerpoint.com/
Description: Custom Theme for the ImagineThis Culture Journey Website
Version: 1.0
Text Domain: imaginethisculturejourney
*/

/* Custom Properties */
:root {
	--spm-color-slate-grey: #003e52;
	--spm-color-red: #91351e;
	--spm-color-orange: #ffac1c;
	
	--spm-font-family-body: Lato, Helvetica, Arial, Lucida, sans-serif;
	--spm-font-family-heading: Lato, Helvetica, Arial, Lucida, sans-serif;
	
	/* --spm-header-height: 78px;
	--spm-nav-height: 40px; */
	--spm-mobile-footer-height: 40px;
}

/* Overall formatting */
body {overflow-x: hidden;min-width: 1210px;margin: 0;padding: 0;color: #666;font: 16px/1.4 var(--spm-font-family-body);}
body > .layer_2 {position: relative;min-height: 100%;background: #fff;box-shadow: 0 0 15px rgba(0,0,0,0.7);transition: transform 0.2s;-webkit-transition: -webkit-transform 0.2s;}
body > .layer_2.menu_revealed {transform: translateX(250px);-webkit-transform: translateX(250px);}

h1 {font-size: 1.5em;} h2 {font-size: 1.5em;} h3 {font-size: 1em;font-weight: bold;} h4 {font-size: 1em;} h5 {font-size: 1.3em; } h6 {font-size: 0.67em;}
h1, h2, h3, h4, h5, h6 {margin: 0 0 0.7em;font-weight: normal;}
p {margin: 0 0 1em;}
a, a:visited {color: var(--spm-color-orange);transition: color 0.2s;text-decoration: none;}
a img {border: none;}
img {max-width: 100%;height: auto;}
ul {margin: 0 0 10px;padding: 0 0 0 25px;}
li {margin: 0 0 3px;}
table {margin: 0 0 1em;}
th, td {vertical-align: top;}
th {color: #444;vertical-align: middle;}
hr {margin: 0 0 1em;height: 4px;background-color: #5f5f5f;border: none;}
input[type="date"], input[type="datetime-local"], input[type="email"], input[type="month"], input[type="number"], input[type="password"], input[type="search"], input[type="tel"], input[type="text"], input[type="time"], input[type="url"], input[type="week"],
textarea,
select {padding: 6px;color: #555;font: 300 15px var(--spm-font-family-body);background-color: #fff;border: 1px solid #ddd;border-radius: 0;box-shadow: 0 1px 4px rgba(0,0,0,0.1) inset;}
input[type="submit"] {cursor: pointer;height: 38px;padding: 0 35px;color: #fff;font: 16px/38px var(--spm-font-family-body);background-color: #000;border: none;appearance: none;-webkit-appearance: none;}
label {font-weight: bold;}
textarea {overflow: auto;}
select {margin: 0 5px 5px 0;vertical-align: middle;}

/* Common Styles */
.clearfix:after {display: block;clear: both;content: '';}

.columns {display: flex;flex-wrap: wrap;gap: var(--spm-row-gap) var(--spm-column-gap);--spm-row-gap: 20px;--spm-column-gap: 20px;--spm-column-gap-adjusted: var(--spm-column-gap) * (var(--spm-column-count) - 1) / var(--spm-column-count); /* column gap multiplied by a - 1 / a (where a = column count) */;}
.columns.rtl {flex-direction: row-reverse;}
.columns.columns-2 {--spm-column-count: 2;}
.columns.columns-3 {--spm-column-count: 3;}
.columns.columns-4 {--spm-column-count: 4;}
.columns.columns-5 {--spm-column-count: 5;}
.columns.columns-6 {--spm-column-count: 6;}
.columns.columns-7 {--spm-column-count: 7;}
.columns.columns-8 {--spm-column-count: 8;}
.columns.columns-9 {--spm-column-count: 9;}
.columns > .column {width: calc(100% / var(--spm-column-count) - var(--spm-column-gap-adjusted));}

.full_coverage_link {position: absolute;overflow: hidden;left: 0;right: 0;top: 0;bottom: 0;text-decoration: none;text-indent: -999em;}
.full_coverage_link:hover {text-decoration: none;}

.video_container {position: relative;padding-top: 56.25%;margin: 0 0 10px;}
.video_container > *:first-child {position: absolute;display: block;left: 0;top: 0;width: 100%;height: 100%;max-width: none;}

a.anchor {position: relative;top: calc(0px - var(--spm-header-height) - var(--spm-nav-height) - 140px);}

/* - buttons (.button was already taken by WooCommerce) - */
.spm_button,
.spm_button:visited {position: relative;display: inline-flex;gap: 0.6em;padding: 0.8em 1.5em;color: #fff;text-decoration: none;font: 16px/1em var(--spm-font-family-body);background-color: #000;border-radius: 4px;transition: color 0.2s, background-color 0.2s;}
.spm_button:hover {text-decoration: none;background-color: var(--spm-color-grey);}

.has_border {border: 7px solid #dfdfdf;border-radius: 2px;}

/* Wrap */
.wrap {position: relative;max-width: 1170px;margin: 0 auto;padding: 0 20px;}

/* Responsive Menu */
#responsive_menu {position: fixed;display: none;left: 0;width: 210px;height: 100%;padding: 7px 20px 10px;font-size: 18px;line-height: 1em;background-color: #333;}

#responsive_menu .menu {margin: 0 -20px 20px;padding: 0;list-style: none;}
#responsive_menu .menu li {margin: 0;background-color: #555;border-bottom: 1px solid #444;}
#responsive_menu .menu li a {display: block;padding: 14px 20px;color: #fff;text-decoration: none;}
#responsive_menu .menu li a:hover {background-color: #666;}
#responsive_menu .menu li.current-menu-item a,
#responsive_menu .menu li.current-menu-parent a {font-weight: normal;}

/* Header */
#header {color: #fff;font-size: 12px;background-color: #000;}
#header .wrap {height: 155px;}

#header #responsive_menu_button {display: none;float: left;overflow: hidden;width: 60px;height: 60px;text-indent: -999em;background: url(images/header-responsive_menu_button-bkg.png) no-repeat center / 24px 24px;}

#header .logo {position: absolute;left: 20px;top: 10px;width: 166px;height: 134px;max-width: calc(100% - 80px);background: url(images/header-logo.webp) no-repeat center / 100% auto;}
#header .logo a {position: relative;display: block;overflow: hidden;height: 100%;text-indent: -999em;}

#header .nav {position: absolute;right: 20px;top: 50px;font-size: 19px;font-weight: 500;}

#header .nav .menu {height: 50px;margin: 0;padding: 0;list-style: none;line-height: 50px;}
#header .nav .menu > li {position: relative;float: left;margin: 0; font-style: italic;}
#header .nav .menu > li > a {position: relative;z-index: 98;display: block;padding: 0 8px;color: #fff;text-decoration: none;}
#header .nav .menu > li.last > a {padding-right: 0;}
#header .nav .menu > li > a:hover {color: var(--spm-color-orange);}
/* #header .nav .menu > li.current-menu-item > a,
#header .nav .menu > li.current-menu-parent > a {}  */

#header .nav .sub-menu {position: absolute;z-index: 98;width: 140px;left: -999em;margin: 0 0 0 15px;padding: 10px 0;list-style: none;text-transform: none;font-size: 14px;line-height: 1.1em;background-color: #fff;box-shadow: 0 2px 2px rgba(0,0,0,0.3);}
#header .nav .menu > li:hover .sub-menu {left: auto;}
#header .nav .sub-menu > li {float: none;left: auto;margin: 0;padding: 0;background: none;}
#header .nav .sub-menu li > a {height: auto;padding: 4px 15px;color: #5a5a64;background: none;}
#header .nav .sub-menu li > a:hover {background-color: #eee;}
#header .nav .sub-menu li.last a {padding: 4px 15px;}

/*#header .dropdown-menu {display: none;width: 100%;margin: 0 0 10px;color: #333;font-size: 22px;}*/

/* Banner */
/* #banner {color: #fff;background: #888 url(images/banner.jpg) no-repeat center top; min-height: 400px;}
#banner .wrap {min-height: 200px;padding: 30px 20px;}

#banner .logo {overflow: hidden;width: 600px;height: 82px;margin: 0 0 0 20px;text-indent: -999em;background: url(images/banner-itcj-logo.png);}
#banner .logo a {display: block;height: 100%;} */

#banner {position: relative;color: #fff;font-size: 28px;line-height: 1.2;background-color: #000;}

#banner .background {position: absolute;left: 0;top: 0;display: block;width: 100%;height: 100%;object-fit: cover;}

#banner .wrap {position: relative;display: flex;flex-direction: column;justify-content: center;min-height: 240px;margin: 0 auto;padding: 45px 90px;}

#banner p {margin: 0 0 0.8em;}

#banner .foreground_image {max-width: min(100%,600px);}

#banner .title {font: bold 44px/1.1em var(--spm-font-family-heading);}

/* Banner (Inside Pages) */
#banner_inside_page {position: relative;overflow: hidden;color: #fff;text-align: center;background-color: #333;}
#banner_inside_page .wrap {position: relative;display: flex;flex-direction: column;justify-content: center;min-height: 100px;margin: 0 auto;padding: 60px 20px;}

#banner_inside_page .background {position: absolute;left: 0;top: 0;width: 100%;height: 100%;object-fit: cover;}

#banner_inside_page .page_title {margin: 0;font: bold 48px/1.1em var(--spm-font-family-heading);text-shadow: 0 0 15px #000;}

/* Main */
#main .wrap {padding: 80px 20px 35px;}

#main .page_title {margin: 0 0 1em;color: var(--spm-color-slate-grey);font-size: 42px;line-height: 1em;}

/* Content */
#content {float: left;width: 73%;margin: 0 0 40px;line-height: 1.6em;}
#content.full_width {float: none;width: auto;}

#content img {max-width: 100%;height: auto;}

#content .breadcrumbs {margin: 0 0 1em;color: #727272;text-transform: lowercase;font-size: 14px;}

/* - blog - */
#content .blog_archive .post {position: relative;}
#content .blog_archive .post .image_container {margin: 0 0 15px;}
#content .blog_archive .post .image_container img {display: block;width: 100%;height: 200px;object-fit: cover;}
#content .blog_archive .post .title {text-align: center;font-size: 20px;}

#content article {position: relative;}

#content article .title {position: relative;margin: 0 0 0.7em;color: var(--spm-color-slate-grey);font: bold 38px/1.1em var(--spm-font-family-heading);letter-spacing: -0.04em;text-transform: capitalize;}
#content article .title a {color: inherit;text-decoration: none;}

#content article .postmetadata {color: #888;text-transform: uppercase;font-weight: normal;font-size: 16px;}

/* Sidebar */
#sidebar {float: right;width: 23%;font-size: 17px;line-height: 1.4em;}

#sidebar .widget {margin: 0 0 35px;}

#sidebar .widget .widgettitle {color: var(--spm-color-slate-grey);font: bold 25px/0.9em var(--spm-font-family-heading);}
#sidebar .widget .widgettitle a {color: inherit;}

#sidebar .widget li {margin: 2% 0 ;}
#sidebar .widget li a {text-decoration: none;}
#sidebar .widget li a:hover {text-decoration: underline;}

/* Layout Blocks */
.layout_block {position: relative;overflow: hidden;}

.layout_block.centered {text-align: center;}

.layout_block.more_padding_top {padding-top: 80px !important;}
.layout_block.more_padding_bottom {padding-bottom: 65px !important;}

.layout_block .wrap {position: relative;padding: 60px 20px 45px;}

.layout_block.less_padding_top .wrap {padding-top: 30px !important;}
.layout_block.less_padding_bottom .wrap {padding-bottom: 20px !important;}

.layout_block .section_title {margin: 0 0 0.5em;color: var(--spm-color-slate-grey);font: bold 48px/1.1em var(--spm-font-family-heading);letter-spacing: -0.04em;;}

.layout_block h3 {font-weight: 600;font-size: 22px;line-height: 1.35em;}

.layout_block.centered ul {display: inline-block;text-align: start;}

/* - content editor - */
.layout_block.content_editor .secondary_title {font-size: 22px;}

.layout_block.content_editor .content {margin: 0 auto;}

.layout_block.content_editor.intro {font-size: 18px;}
.layout_block.content_editor.intro .wrap {max-width: 768px;}

/* - content w/image & content w/video - */
.layout_block.content_with_image {position: relative;}

.layout_block.content_with_image .section_title {margin: 0 0 1em;text-align: center;}

.layout_block.content_with_image .columns.content_with_image_columns {align-items: center;--spm-row-gap: 40px;--spm-column-gap: 60px;}
.layout_block.content_with_image .columns.content_with_image_columns.right {flex-direction: row-reverse;}

.layout_block.content_with_image .columns.content_with_image_columns > .column.column-image {text-align: center;}
.layout_block.content_with_image .columns.content_with_image_columns > .column-image .image {display: block;margin: 0 auto 1em;}

.layout_block.content_with_image.content_with_video.square_aspect_ratio .columns.content_with_image_columns > .column-image .video_container {padding-top: 100%;}

.layout_block.content_with_image .columns.content_with_image_columns .section_title {text-align: start;}

/* - multi-column - */
.layout_block.multi_column {text-align: center;}

.layout_block.multi_column .section_title {margin: 0 0 1em;}

.layout_block.multi_column .intro_text {max-width: 855px;margin: 0 auto 1em;line-height: 1.4;}

.layout_block.multi_column .columns {justify-content: center;--spm-row-gap: 40px;--spm-column-gap: 40px;}

.layout_block.multi_column .columns .image {display: block;margin: 0 auto 20px;}

.layout_block.multi_column .columns .title {min-height: 2.2em;margin: 0 0 0.5em;font-weight: bold;font-size: 22px;line-height: 1.1em;}

.layout_block.multi_column .columns .spm_button {padding: 1.2em 2.8em;}

/* - interstitial section - */
.layout_block.interstitial_section {position: relative;color: #fff;text-align: center;font-size: 18px;background: #333;}

.layout_block.interstitial_section .background {position: absolute;left: 0;top: 0;width: 100%;height: 100%;object-fit: cover;}

.layout_block.interstitial_section .wrap {position: relative;max-width: 960px;padding: 50px 20px 30px;}

.layout_block.interstitial_section .section_title {color: #fff;font-size: 40px;}

.layout_block.interstitial_section a {color: inherit;}
.layout_block.interstitial_section a:hover {color: var(--spm-color-orange);}

.layout_block.interstitial_section .spm_button {color: #000;background-color: #fff;}
.layout_block.interstitial_section .spm_button:hover {color: #fff;background-color: var(--spm-color-orange);}

/* - blog posts - */
.layout_block.blog_posts {text-align: center;} 

.layout_block.blog_posts .section_title {margin: 0 0 0.7em;}

.layout_block.blog_posts .columns {margin: 0 auto;--spm-row-gap: 40px;--spm-column-gap: 40px;}

.layout_block.blog_posts .image_container {position: relative;margin: 0 0 20px;padding-top: 75%;}
.layout_block.blog_posts .image_container .image {position: absolute;left: 0;top: 0;width: 100%;height: 100%;object-fit: cover;}

.layout_block.blog_posts .title {font-weight: bold;font-size: 18px;min-height: 2.0em;color:#012d5a}
.layout_block.blog_posts .title a {color: inherit;}

/* Footer */
#footer {color: #012d5a;font-size: 17px;line-height: 1.3em;background-color: #e3ddd9;background-repeat: no-repeat;background-position: center top;background-size: cover;}
#footer .wrap {padding: 35px 20px 35px;}

#footer .columns {--spm-column-gap: 60px;}
/* #footer .columns > .column.column-1 {width: calc(32% - var(--spm-column-gap-adjusted));}
#footer .columns > .column.column-2,
#footer .columns > .column.column-3,
#footer .columns > .column.column-4 {width: calc(22% - var(--spm-column-gap-adjusted));} */

#footer .columns > .column.column-1 {width: calc(50% - var(--spm-column-gap-adjusted));}
#footer .columns > .column.column-2,
#footer .columns > .column.column-3 {width: calc(25% - var(--spm-column-gap-adjusted));}

#footer .title {font: bold 22px/1em var(--spm-font-family-heading);}

#footer a {color: #012d5a;text-decoration: none;}
#footer a:hover {color: #000;text-decoration: underline;}

#footer .menu,
#footer .recent_posts {padding: 0;list-style-type: none;line-height: 1.1;}
#footer .menu li,
#footer .recent_posts li {margin: 0 0 0.5em;}
#footer .menu li ul,
#footer .recent_posts li ul {margin-top: 0.5em;padding-left: 1em;list-style: none;font-size: 0.8em;}

#footer .social_media {padding: 0;font-size: 30px;}
#footer .social_media li {display: inline-block;width: 35px;}
#footer .social_media li a {display: block;height: auto;color: #000;}
#footer .social_media li a:hover {color: var(--spm-color-slate-grey);text-decoration: none;}

/* Sub-Footer */
#sub_footer {text-align: center;font-size: 13px;line-height: 1.4;background-color: #f5f5f5;}
#sub_footer .wrap {padding: 15px 20px 10px;}

#sub_footer p {margin: 0 0 0.5em;}

/* Footer (Mobile) */
#mobile_footer {display: none;position: fixed;z-index: 999;left: 0;right: 0;bottom: 0;min-width: 320px;color: #fff;text-align: center;text-transform: uppercase;font: 500 18px/var(--spm-mobile-footer-height) var(--spm-font-family-body);box-shadow: 0 0 4px 1px rgba(0,0,0,0.3);}

#mobile_footer ul {display: flex;margin: 0;padding: 0;list-style: none;}
#mobile_footer ul li {width: 50%;margin: 0;}

#mobile_footer ul li a {display: flex;justify-content: center;align-items: center;gap: 0.5em;color: inherit;text-decoration: none;background-color: var(--spm-color-slate-grey);transition: color 0.2s;}
#mobile_footer ul li a.alternate {background-color: #333;}
#mobile_footer ul li i {font-size: 1.5em;}

/* WordPress */

/* - editor formatting - */
.alignleft {float: left;}
.alignright {float: right;text-align: right;}
.aligncenter {margin-left: auto;margin-right: auto;text-align: center;}
.hidden {display: none;}
.cleared {clear: both;}

img.alignleft {display: inline;margin: 0 1.5em 0.8em 0;max-width: 39%;}
img.aligncenter {display: block;margin: 0 auto;}
img.alignright {display: inline;margin: 0 0 0.8em 2.5em;max-width: 39%;}

.wp-caption.alignleft {margin: 0 1.5em 3em 0;}
.wp-caption.aligncenter {margin: 0 auto;}
.wp-caption.alignright {margin: 0 0 3em 2.5em;text-align: left;}

/* - galleries - */
.gallery {margin: 0 -5% 0 0;}
.gallery:after {display: block;clear: both;content: '';}

.gallery-item {float: left;margin: 0 5% 5% 0;}
.gallery-columns-1 .gallery-item {width: 95%;}
.gallery-columns-2 .gallery-item {width: 45%;}
.gallery-columns-3 .gallery-item {width: 28.333%;}
.gallery-columns-4 .gallery-item {width: 20%;}

.gallery-item img {display: block;width: 100%;box-shadow: 0 2px 18px -7px #fff;}

.gallery-item .wp-caption-text {display: none;}

/* - page and comment navigation - */
.navigation {overflow: hidden;margin: 0 0 20px;}
.comment-navigation {overflow: hidden;}
.navigation ul,
.comment-navigation ul {float: right;margin: 0 0 5px;list-style: none;}
.navigation li,
.comment-navigation li {float: left;margin: 0 0 5px 5px;}
.navigation a,
.navigation span,
.comment-navigation a,
.comment-navigation span {display: block;padding: 0 0.7em;color: #fff;text-decoration: none;line-height: 2em;background-color: #38434f;}
.navigation span,
.comment-navigation span {color: #fff;}

.vcard {font-weight: bold;}
.vcard img {margin: 0 7px 0 0;vertical-align: middle;border: 2px solid #ccd0dd;}

.comment-date {float: right;font-size: 10px;font-weight: normal;}

/* - accessbility - */
.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;width: 1px;word-wrap: normal !important;}

/* Gravity Forms */
.gform_wrapper .gform_title {text-align: center;font-size: 36px;line-height: 1.2em;}

.gform_wrapper .gform_fields {grid-row-gap: 15px !important;grid-column-gap: 15px !important;}

.gform_wrapper input:not([type="submit"]),
.gform_wrapper select,
.gform_wrapper textarea {line-height: inherit !important;}

.gform_wrapper .gform_footer {margin: 0 !important;padding-bottom: 0 !important;}

.gform_wrapper .gform_footer .gform_ajax_spinner {margin-left: 10px;}

/* Repsonsive Design */
@media only screen and (max-width: 1209px) {
	body {min-width: 320px;}
	
	.wrap {width: auto;}
	
	#footer .wrap {padding: 40px 20px 20px;}
	#footer .title {font-size: 24px;}
}

@media only screen and (max-width: 959px) {
	.layout_block.content_with_image {text-align: center;}
	.layout_block.content_with_image .columns.content_with_image_columns {--spm-column-count: 1;}
	.layout_block.content_with_image .columns.content_with_image_columns > .column {width: 100% !important;}
	.layout_block.content_with_image .columns.content_with_image_columns .section_title {text-align: center;}
}

@media only screen and (max-width: 767px) {
	.buttons {width: 150px;margin: 0 auto !important;}
	.buttons a {display: block;margin: 0 0 10px;}
	
	#header .wrap {padding: 10px 0 0;}
	#header #responsive_menu_button {display: block;}
	#header .nav {display: none;}
	#header .logo {position: static;margin: 0 auto;}
	
	#banner .wrap {padding: 40px 20px 25px;}
	
	#banner_inside_page .wrap {min-height: auto;}
	#banner_inside_page .page_title {font-size: 32px;}
	
	#content {float: none;width: auto;}	
	
	#content .columns.columns-2.blog_archive {--spm-column-count: 1;}
	
	#sidebar {float: none;width: auto;}
	
	.layout_block .section_title {font-size: 30px;}
	
	.layout_block.content_editor.intro {font-size: 16px;line-height: 1.25;}
	
	.layout_block.multi_column .columns.columns-2,
	.layout_block.multi_column .columns.columns-3 {--spm-column-count: 1;}
	.layout_block.multi_column .columns.columns-4 {--spm-column-count: 2;}
	
	.layout_block.blog_posts .columns.columns-2,
	.layout_block.blog_posts .columns.columns-3 {max-width: 360px;--spm-column-count: 1;}
	.layout_block.blog_posts .columns.columns-4 {--spm-column-count: 2;}
	
	#footer .wrap {max-width: 280px;padding: 40px 20px 5px;text-align: center;}
	#footer .columns.columns-3 > .column,
	#footer .columns.columns-4 > .column {width: 100% !important;}
	#footer .menu li ul {padding-left: 0;}
}