.ip-banner {
	position: relative;
	width: 100%;
}

.ip-banner::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 1;
	background: rgba(0, 0, 0, 0.65);
}

.ip-banner canvas {
	display: block;
	position: relative;
	z-index: 0;
	width: 100%;
	min-height: 250px;
	background-color: var(--dark);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}

.ip-banner > .container {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	margin-top: 3%;
	z-index: 2;
}

.ip-banner h1 {
	font-family: var(--font-family-title);
	font-size: var(--font-size-title-sm);
	font-weight: 400;
	color: #ffffff;
	letter-spacing: 0.05em;
	line-height: 1;
	text-align: center;
	text-transform: uppercase;
}

.ip-banner h1 span {
	display: block;
}

.ip-banner h1 span:nth-child(1) {
	color: rgba(var(--primary-color),1);
}
.ip-banner h1 span:nth-child(2) {
	color: #fff;
}

.ip-banner h1:has(span:nth-child(2):empty) span {	
	color: #fff;
}

.ip-banner-breadcrumbs {
	position: absolute;
	width: 100%;
	bottom: 20px;
	color: #fff;
	z-index: 1;
}

.ip-banner-breadcrumbs p {
	font-family: var(--font-family-compass-sans);
	font-size: 18px;	
}

.ip-breadcrumbs {
	padding: 20px 0;
	display: none;
}

.ip-breadcrumbs p#breadcrumbs {
	font-family: var(--font-family-compass-sans);
	font-size: 18px;
}

.ip-breadcrumbs p#breadcrumbs a {
	transition: all var(--default-transition);
}

.ip-breadcrumbs p#breadcrumbs a:hover {
	color: rgba(var(--primary-color),1);
}

/* Adjust minimum height of page area */
#content-sidebar,
#content-full {
	min-height: 500px;
	margin-top: 20px;
}

/** Adjust width of content columns **/
#content-sidebar #content {
	width: 77.08%;
}

#content-full #content {
	width: 100%;
}

/* Adjust width of sidebar */
.sidebar {
	width: 20.83%;
}

/* fullwidth template */
.page-template-template-fullwidth #content {
	padding-left: 15px;
	padding-right: 15px;
}

.page-template-template-fullwidth #content ihf-search[data-eureka-id*=""].ihf-eureka {
	margin-left: -15px;
	margin-right: -15px;
}

/* Adjust line height of page elements */
#content h4,
aside h4,
#content p,
aside p,
#content blockquote,
aside blockquote,
#content ul,
aside ul,
#content fieldset,
aside fieldset,
#content form,
aside form,
#content ol,
aside ol,
#content dl,
aside dl,
#content dir,
aside dir,
#content menu,
aside menu {
	line-height: 1.7;
}

/* Style .entry-title(post/page) and .archive-title(category/archive/etc) main headings (h1) */
#content .entry-title,
#content .archive-title {
	font-family: var(--font-family-title);
	font-size: 75px;
	color: var(--font-color-title);
	line-height: 0.9;
	letter-spacing: 0.02em;
	text-transform: uppercase;
}

/* Styles for category/archive/search/etc subheadings (h2) */
#content .archive-subtitle {
	font-family: var(--font-family-title);
	font-size: 60px;
	color: var(--font-color-title);
	line-height: 0.9;
	letter-spacing: 0.02em;
	text-transform: uppercase;
}

.ip-architect-list {
    font-size: 0;
}
.ip-architect-item {
    padding-top: 15px;
    padding-bottom: 15px;
}
.ip-architect-item a {
    display: block;
    position: relative;
}
.ip-architect-image img {
	aspect-ratio: 490/665;
}
.ip-architect-image::after {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	background: linear-gradient(to bottom, rgba(0,0,0,0) 40%,rgba(0,0,0,0.45) 100%);
}
.ip-architect-text {
    position: absolute;
    width: 100%;
    bottom: 0;
    left: 0;
    padding: 15px 10px;
}
.ip-architect-name {
    font-size: 18px;
    color: #ffffff;
	line-height: 1.2;
	text-align: center;
}

.ip-curated-list {
	margin: 0 -10px;
    font-size: 0;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}
.ip-curated-item {
	padding: 10px;
}
.ip-curated-item a {
    display: block;
    position: relative;
}
.ip-curated-image img {
	aspect-ratio: 200/200;
	transition: all .5s;
}
.ip-curated-image:hover img {
	opacity: 0.6;
}
/* .ip-curated-image::after {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	background: linear-gradient(to bottom, rgba(0,0,0,0) 40%,rgba(0,0,0,0.45) 100%);
} */
.ip-curated-text {
    position: absolute;
    width: 100%;
    bottom: 0;
    left: 0;
    padding: 15px 10px;
}
.ip-curated-name {
	font-family: var(--font-family-title);
    font-size: 25px;
    color: #ffffff;
    line-height: 1;
    letter-spacing: 0.07em;
    text-align: center;
    text-transform: uppercase;
}

.ip-style-item {
	padding-top: 15px;
	padding-bottom: 15px;
}
.ip-style-item img {
	transition: all .5s;
}
.ip-style-item:hover img {
	opacity: 0.5;
}

/* iPad(landscape) | iPad(landscape) | Galaxy Tab 4 (landscape) | Galaxy Tab 3 (landscape) */
/* iPad(portrait) | Galaxy Tab 4(portrait)  */
@media only screen and (max-width: 991px) {
	.ip-banner .container {
		margin-top: 0;
	}
	.ip-breadcrumbs p#breadcrumbs {
		font-size: 14px;
	}
	
	/* The following are used on inner pages. Please edit carefully. */
	.inner {
		width: 100%;
	}

	#content-sidebar,
	#content-full {
		width: 100%;
	}

	.outer {
		width: 100%;
		min-width: 100%;
	}

	#content-sidebar #content {
		width: 100%;
	}

	#content .entry-title,
	#content .archive-title {
		font-size: 50px;
	}

	#content .archive-subtitle {
		font-size: 42px;
	}
}

/* Galaxy Tab 3(portrait) | Galaxy S5(landscape) */
@media only screen and (max-width: 767px) {
	.ip-banner .container {
		width: 100%;
	}
}

/* Galaxy S5(portrait) | iPod Touch(landscape) | iPod Touch(portrait) */
@media only screen and (max-width: 480px) {

	#content .entry-title,
	#content .archive-title {
		font-size: 38px;
	}

	#content .archive-subtitle {
		font-size: 34px;
	}
}