/*
Theme Name: Vigilante Impreza Child
Template: Impreza
Theme URI: https://vigilante.marketing
Description: Child theme for Impreza used by Vigilante Marketing
Tags: creative, portfolio, multi-purpose, clean, retina, responsive, parallax, mega menu, blog, agency, business, fullscreen, modern, background video, ajax
Author: Vigilante Marketing
Author URI: https://vigilante.marketing
Version: v1
License: GNU General Public License
License URI: licence/GPL.txt
Text Domain:  impreza-child

CSS changes can be made in files in the /css/ folder. This is a placeholder file required by WordPress, so do not delete it.

*/

.d-none {
	display: none;
}
.d-inline {
	display: inline;
}
.d-inline-block {
	display: inline-block;
}
.d-block {
	display: block;
}
.d-flex {
	display: flex;
}
.text-nowrap {
	white-space: nowrap;
}
.overflow-hidden {
	overflow: hidden;
}

.state_mobiles .l-canvas.type_wide,
.state_tablets .l-canvas.type_wide {
	overflow-x: hidden;
}

/*
 *
 *  FULL SCREEN HEADER
 *
 */
#page-header .w-dropdown-item {
	padding-right: 1em !important;
}
#page-header .w-dropdown-current .w-dropdown-item:after {
	display: none;
	content: none;
}

#page-header .w-dropdown.source_sidebar.opened .fa-bars {
	position: fixed;
	right: 1em;
}
#page-header .w-dropdown.source_sidebar.opened .fa-bars:before {
	content: '\f00d';
}

#page-header .w-dropdown.source_sidebar .w-dropdown-list {
	width: 100%;
	max-width: none;
	padding: 200px 3em 0 3em;
	left: 0;
	position: fixed;
	height: 100vh;
	display: flex;
	overflow: auto;
}

#page-header .w-dropdown.source_sidebar .w-dropdown-list h3:after {
	content: '';
	width: 100px;
	height: 5px;
	background: #9fd852;
	display: block;
	margin: 1rem 0 2rem 0;
}

#page-header .w-dropdown.source_sidebar .w-dropdown-list .w-dropdown-list-h {
	display: flex;
	margin: auto 8vw;
	flex: 1 1 auto;
	flex-wrap: wrap;
	justify-content: space-around;
	max-height: none;
}

#page-header .w-dropdown.source_sidebar #media_image-2.widget {
	position: absolute;
	top: 2em;
	left: 2em;
	max-width: 100px;
}

#page-header .w-dropdown.source_sidebar .widget {
	flex: 0 1 auto;
	margin: 0 auto;
	min-width: 200px;
}

/*
 *
 *  GRID ACCORDIAN
 *
 */
.vm-tabs-sections .w-grid-item {
	display: block;
	float: none;
	border-style: solid;
	border-width: 1px 0 0 0;
	border-color: #31aee2;
	margin-bottom: 0 !important;
}
.vm-tabs-sections .w-grid-item:last-child {
	border-bottom-width: 1px;
}
.vm-tabs-sections .w-tabs-section-content {
	padding: 1.5rem 0;
	display: none;
}

.vm-tabs-sections .w-tabs-section-title {
	display: block;
	color: #31aee2;
	position: relative;
	text-align: left;
	line-height: 1.5;
	white-space: nowrap;
	cursor: pointer;
	padding: 2em 0 !important;
	width: 100%;
	background: transparent;
	transition: background 0.3s, color 0.3s;
}
.vm-tabs-sections .w-tabs-section-title:after {
	content: '\f0d7';
	font-family: fontawesome;
	font-weight: 900;
	vertical-align: top;
	position: absolute;
	top: 50%;
	line-height: 2em;
	height: 2em;
	width: 2em;
	margin-top: -1em;
	text-align: center;
	transition: transform 0.3s;
	transform: rotate(0deg);
	right: 0;
}

.no-touch
	.l-section[class*='color_']
	.owl-carousel.navpos_outside
	.owl-nav
	div:hover {
	background: none;
}

/*
 *
 *  GRAVITY FORMS
 *
 */

body .gform_wrapper .gform_heading,
body .gform_wrapper .gfield,
body .gform_wrapper ul li.gfield,
body .gform_wrapper li.hidden_label input,
body .gform_wrapper .gform_footer {
	margin-top: 0;
	margin-bottom: 0;
}

body .gform_confirmation_message,
body .form_saved_message_sent {
	color: inherit;
}
html.pum-open body > .l-canvas {
	filter: blur(4px);
}
.pum-container.size-custom.pum-position-fixed {
	max-width: 80vw;
}

/*
 *
 *  OPTIMA EXPRESS
 *
 */

/* LISTINGS */
.col-sm-7.ihf-market-report-header-toggle {
	width: 100% !important;
}
.col-sm-5.ihf-market-report-header-text {
	width: 100% !important;
	text-align: center;
}
#ihf-main-container .btn-primary,
#ihf-main-container .btn-default {
	color: #fff !important;
	background-color: #1a1a1a;
	border-color: #1a1a1a;
	border: initial !important;
	border-radius: 0;
	text-transform: uppercase;
	padding: 1em 2em;
	margin-top: 2em;
}
#ihf-main-container .btn-primary:hover,
#ihf-main-container .btn-default:hover {
	background-color: #777;
	border-color: #555;
}
#sb_instagram #sbi_images .sbi_item {
	opacity: 0.5;
}

img.mfp-img {
	width: auto !important;
	height: auto;
	background: none !important;
	margin: auto;
}

.mfp-figure figure {
	height: 100%;
	display: flex;
}

.mfp-figure:after {
	background: none;
	box-shadow: none;
}

.mfp-fade.mfp-wrap.mfp-ready .mfp-content {
	height: 100%;
}

.mfp-gallery .mfp-image-holder .mfp-figure {
	height: 100%;
}
.calculator,
.calc-wrap {
	max-width: 100%;
}
.calculator {
	color: white !important;
	background-color: transparent;
	border: none;
}

.mfp-fade.mfp-wrap.mfp-ready .mfp-content {
	width: 100%;
}

img.mfp-img {
	width: 100%;
}

.w-post-elm.post_image.stretched img {
	width: 100%;
	object-fit: cover;
	height: 100%;
}
div#ihf-stat-blocks {
	display: flex;
}

div#ihf-stat-blocks .col-xs-3 {
	flex: 1 1 auto;
}

#ihf-market-report-nav-container a.ihf-market-report-nav {
	text-transform: uppercase;
	border: 1px solid #ccc !important;
	color: black;
	background-color: white;
}

#ihf-market-report-nav-container a.ihf-market-report-nav-active {
	background: #555;
	color: white;
}

#ihf-market-report-nav-container a.ihf-market-report-nav:hover {
	background: #1a1a1a;
	color: white;
}

#ihf-main-container .title-bar-1 {
	background: none;
	border: none;
	text-align: left;
	padding-left: 1.3rem;
}

#ihf-main-container .well {
	border-radius: 0 !important;
	border: none;
	box-shadow: none;
	margin-top: 1em;
}

#ihf-main-container .title-bar-1 a {
	color: black;
	font-size: 1.5em;
	font-weight: 300;
}

#ihf-main-container .ihf-slider-next .glyphicon,
#ihf-main-container .ihf-slider-prev .glyphicon {
	font-size: 2em;
	color: #555;
}

#ihf-main-container .btn-primary {
	border: none;
	border-radius: 0;
	text-transform: uppercase;
	padding: 1em 2em;
	margin-top: 2em;
}

#ihf-main-container .ihf-market-report .ihf-market-report-header-text {
	font-size: 2em;
}
#ihf-main-container .ihf-market-report .ihf-market-report-description {
	color: #1a1a1a;
	font-size: 16px;
	line-height: 1.8;
}
#ihf-main-container g.c3-chart-bars > .c3-chart-bar:nth-child(1) .c3-bar {
	fill: #1a1a1a !important;
}

#ihf-main-container .caret {
	border-top-color: white;
}

/*
 *
 *  ULTIMATE MEMBERS
 *
 */
body.um-page-user .um-profile .um-profile-body {
	max-width: 100%;
	width: 100%;
}

body.um-page-user .um .um-profile-photo a.um-profile-photo-img {
	width: 100px;
	height: 100px;
	top: calc(-50px - 4rem);
}

body.um-page-user .um-profile-photo {
	margin: 0;
}

body.um-page-user .um .um-profile-meta {
	padding-left: 0;
}

.um-row-heading,
.um-row {
	border: none !important;
}

.um-member-footer {
	text-align: right;
}
body
	.um-directory
	.um-members-wrapper
	.um-members.um-members-grid
	.um-member
	.um-member-photo {
	position: relative;
}

body
	.um-directory
	.um-members-wrapper
	.um-members.um-members-grid
	.um-member
	.um-member-photo.pattern-overlay::after {
	left: 1.5em;
	width: calc(100% - 3em);
}

.um-member-name {
	position: absolute;
	bottom: 2em;
	left: 3.5em;
	font-weight: 500;
	color: #ff0517;
	z-index: 20;
	text-align: left;
	text-shadow: 0 0 4px rgba(0, 0, 0, 0.3);
}
.um-member-name a {
	color: white !important;
}
.um-members-edit-btn {
	display: none;
}

/* =========================================================
   Apera AI – rebuild helpers (Vigilante Marketing, Oct 2026)
   ========================================================= */
.w-text.apr-eyebrow, .apr-eyebrow { color: #fd495c; font-weight: 600; font-size: 17px; margin-bottom: 18px; }
.color_alternate .apr-eyebrow, .color_footer-top .apr-eyebrow { color: var(--color-content-primary, #fd495c); }
.apr-shadow img, .apr-shadow .w-slider, .apr-video { border-radius: 5px; box-shadow: 0 6px 18px rgba(10,35,63,.18); overflow: hidden; }
.apr-mt40 { margin-top: 40px; }
.apr-hero h1 { margin-bottom: 0; }
.apr-crumbs, .apr-crumbs a { color: #fd495c; font-size: 13px; font-weight: 600; text-transform: uppercase; }
/* responsive Wistia */
.apr-video { position: relative; padding-top: 56.25%; background: #0a233f; }
.apr-video iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
/* quote play button */
.apr-play .w-popup-trigger.type_icon { width: 54px; height: 54px; border-radius: 50%; background: #fff; color: var(--color-content-primary); display: inline-flex; align-items: center; justify-content: center; font-size: 20px; box-shadow: 0 4px 14px rgba(0,0,0,.25); transition: transform .2s; }
.apr-play .w-popup-trigger.type_icon:hover { transform: scale(1.08); }
/* product tour hotspots */
.apr-tour { position: relative; max-width: 600px; margin: 0 auto; }
.apr-tour > img { width: 100%; height: auto; border-radius: 5px; box-shadow: 0 6px 18px rgba(10,35,63,.18); display: block; }
.apr-pts { position: absolute; inset: 0; }
.apr-pt { position: absolute; top: 0; padding: 0; border: 0; background: none; cursor: pointer; transform: translate(-50%, -50%); }
.apr-pt-dot { display: flex; width: 26px; height: 26px; border-radius: 50%; background: #fd495c; color: #fff; font-weight: 600; font-size: 16px; line-height: 1; align-items: center; justify-content: center; box-shadow: 0 0 0 6px rgba(253,73,92,.25); }
.apr-pt-tip { position: absolute; left: 50%; bottom: calc(100% + 12px); transform: translateX(-50%); width: 240px; padding: 16px 18px; background: #fff; color: #0a233f; border-radius: 5px; box-shadow: 0 8px 24px rgba(10,35,63,.2); text-align: left; font-size: 15px; line-height: 1.4; opacity: 0; visibility: hidden; transition: opacity .2s; z-index: 5; }
.apr-pt-tip strong { display: block; font-size: 17px; margin-bottom: 6px; }
.apr-pt:hover .apr-pt-tip, .apr-pt:focus .apr-pt-tip { opacity: 1; visibility: visible; }
/* numbered slider tabs (vertical_two_column_slider) */
.apr-numtabs .w-tabs-list { justify-content: flex-start; border: 0 !important; margin-bottom: 20px; }
.apr-numtabs .w-tabs-item { width: 44px; height: 44px; margin-right: 12px; border: 1px solid #fd495c !important; border-radius: 50% !important; padding: 0 !important; color: #fd495c; display: flex; align-items: center; justify-content: center; }
.apr-numtabs .w-tabs-item.active { background: #fd495c; color: #fff; }
.apr-numtabs .w-tabs-item:after, .apr-numtabs .w-tabs-list-bar { display: none !important; }
/* HubSpot forms on dark sections */
.apr-footer-form .hs-form fieldset { max-width: none !important; display: flex; gap: 16px; margin-bottom: 16px !important; }
.apr-footer-form .hs-form fieldset > .hs-form-field { flex: 1 1 0; min-width: 0; width: auto !important; float: none !important; padding: 0 !important; margin: 0 !important; }
.apr-footer-form .hs-form fieldset .input { margin-right: 0 !important; }
.apr-footer-form .hs-form label:not(.hs-form-booleancheckbox-display) { display: none; }
.apr-footer-form .hs-form input:not([type=submit]):not([type=checkbox]), .apr-footer-form .hs-form select { width: 100% !important; height: 44px; background: #0f345e; border: 0; color: #fff; border-radius: 3px; padding: 0 12px; font-size: 14px; font-weight: 600; box-shadow: none; }
.apr-footer-form .hs-form textarea { width: 100% !important; min-height: 170px; background: #0f345e; border: 0; color: #fff; border-radius: 3px; padding: 14px 12px; font-size: 14px; font-weight: 600; }
.apr-footer-form .hs-form ::placeholder { color: #fff; opacity: 1; font-weight: 600; }
.apr-footer-form .hs-form select { appearance: auto; }
.apr-footer-form .hs-form .hs-error-msgs { margin: 6px 0 0; padding: 0; list-style: none; font-size: 12px; color: #fd495c; }
.apr-footer-form .hs-form .legal-consent-container, .apr-footer-form .hs-form .hs-richtext { color: #fff; font-size: 11px; margin: 18px 0; }
.apr-footer-form .hs-form .legal-consent-container a { color: #fd495c; }
.apr-footer-form .hs-form .hs_recaptcha { margin-bottom: 0; }
.apr-footer-form .hs-form .hs_submit { text-align: right; margin-top: -40px; }
.apr-footer-form .hs-form .hs-button { background: #fd495c; color: #fff; border: 0; border-radius: 30px; padding: 13px 20px; text-transform: uppercase; font-weight: 600; font-size: 13px; cursor: pointer; }
.apr-footer-form .hs-form .hs-button:hover { background: #fff; color: #0a233f; }
@media (max-width: 600px) { .apr-footer-form .hs-form fieldset { flex-direction: column; } .apr-footer-form .hs-form .hs_submit { margin-top: 20px; } }
.apr-footer-form .hs-form .hs-form-field .input, .apr-footer-form .hs-form .hs-form-field .input > * { width: 100% !important; max-width: none !important; }
.apr-footer-form .hs-form fieldset > .hs-dependent-field { flex: 1 1 0; min-width: 0; }
.apr-footer-form .hs-form fieldset > .hs-dependent-field > .hs-form-field { width: 100% !important; float: none !important; }
.apr-footer-form .hs-form a { color: #fd495c !important; }
/* rebuild: lists, map, faq, carousels */
.apr-applist ul { list-style: none; margin: 30px 0 0; columns: 2; column-gap: 30px; }
.apr-applist li { font-size: 26px; font-weight: 600; line-height: 1.2; margin-bottom: 18px; color: #0a233f; break-inside: avoid; }
.apr-applist li:first-child { color: #fd495c; }
.apr-map { position: relative; padding-top: 75%; border-radius: 5px; overflow: hidden; box-shadow: 0 6px 18px rgba(10,35,63,.18); }
.apr-map iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.apr-phone { margin-top: 20px; }
.apr-socials a { display: inline-block; margin-right: 14px; font-weight: 600; }
.apr-faq .w-tabs-section { border-color: #e3e7f0 !important; }
.apr-faq .w-tabs-section-title { font-size: 20px; }
.apr-carousel .owl-nav button, .apr-carousel .owl-prev, .apr-carousel .owl-next { border: 1px solid #fd495c !important; color: #fd495c !important; border-radius: 50% !important; background: none !important; }
.apr-carousel .owl-dot span { border: 1px solid #fd495c !important; background: none !important; }
.apr-carousel .owl-dot.active span { background: #fd495c !important; }
.apr-sidebar-row > .l-section-h { max-width: none !important; padding: 0 !important; }
