/*
Theme Name: AVA Quickvcard Child
Description: Personnalisations maintenues par AVA pour le thème Quickvcard.
Author: AVA
Template: quickvcard
Version: 1.1.17
Text Domain: ava-quickvcard-child
*/

:root {
	--ava-vcard-text-on-light: #1f2937;
	--ava-vcard-text-on-dark: #ffffff;
}

.vcard-social-theme .vcard-profile-head.ava-text-on-light,
.vcard-social-two-theme .vcard-profile-head.ava-text-on-light,
.vcard-social-theme .vcard-profile-head.ava-text-on-light :is(h1, h2, h3, h4, h5, h6, p, em, b, span),
.vcard-social-two-theme .vcard-profile-head.ava-text-on-light :is(h1, h2, h3, h4, h5, h6, p, em, b, span) {
	color: var(--ava-vcard-text-on-light) !important;
}

.vcard-social-theme .vcard-profile-head.ava-text-on-dark,
.vcard-social-two-theme .vcard-profile-head.ava-text-on-dark,
.vcard-social-theme .vcard-profile-head.ava-text-on-dark :is(h1, h2, h3, h4, h5, h6, p, em, b, span),
.vcard-social-two-theme .vcard-profile-head.ava-text-on-dark :is(h1, h2, h3, h4, h5, h6, p, em, b, span) {
	color: var(--ava-vcard-text-on-dark) !important;
}

.vcard-social-theme .vcard-description.ava-text-on-light,
.vcard-social-two-theme .vcard-description.ava-text-on-light,
.vcard-social-theme .vcard-description.ava-text-on-light :is(h1, h2, h3, h4, h5, h6, p, em, b, span),
.vcard-social-two-theme .vcard-description.ava-text-on-light :is(h1, h2, h3, h4, h5, h6, p, em, b, span) {
	color: var(--ava-vcard-text-on-light) !important;
}

.vcard-social-theme .vcard-description.ava-text-on-dark,
.vcard-social-two-theme .vcard-description.ava-text-on-dark,
.vcard-social-theme .vcard-description.ava-text-on-dark :is(h1, h2, h3, h4, h5, h6, p, em, b, span),
.vcard-social-two-theme .vcard-description.ava-text-on-dark :is(h1, h2, h3, h4, h5, h6, p, em, b, span) {
	color: var(--ava-vcard-text-on-dark) !important;
}

/*
 * Keep the public card unchanged while giving the dashboard iframe enough
 * lateral background to make the selected primary colour visible. The query
 * parameter and class are added only to the fixed desktop preview.
 */
html.ava-dashboard-card-preview {
	background: transparent;
	scrollbar-gutter: auto !important;
	scrollbar-width: none;
}

html.ava-dashboard-card-preview body {
	background: transparent;
	margin-left: 0;
	margin-right: 0;
	overflow-x: hidden;
	scrollbar-width: none;
}

html.ava-dashboard-card-preview::-webkit-scrollbar,
html.ava-dashboard-card-preview body::-webkit-scrollbar {
	display: none;
	height: 0;
	width: 0;
}

html.ava-dashboard-card-preview .vcard-page {
	box-sizing: border-box;
	min-width: 31.125rem !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	padding-left: 1.5rem !important;
	padding-right: 1.5rem !important;
	width: 31.125rem !important;
}

html.ava-dashboard-card-preview .vcard-page > div {
	width: 100% !important;
}

html.ava-dashboard-card-preview .vcard-page .vcard {
	margin-left: auto !important;
	margin-right: auto !important;
	max-width: 28.125rem !important;
	width: 28.125rem !important;
}

.ava-remove-card-media {
	margin-top: 0.5rem;
	border: 0;
	background: transparent;
	color: #b42318;
	font: inherit;
	text-decoration: underline;
	cursor: pointer;
}

.ava-remove-card-media:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 2px;
}

.ava-card-media-status {
	margin: 0.35rem 0 0;
	font-size: 0.875rem;
}

.ava-card-media-status[hidden] {
	display: none;
}

.ava-card-media-status-error {
	color: #b42318;
	font-weight: 600;
}

.ava-delete-library-control {
	margin-top: 1rem;
	padding-top: 0.75rem;
	border-top: 1px solid #dcdcde;
}

.ava-delete-library-control .button-link-delete {
	color: #b32d2e;
	font-weight: 600;
	text-decoration: underline;
	cursor: pointer;
}

.ava-delete-library-status {
	margin: 0.4rem 0 0;
	font-size: 0.8125rem;
}

.ava-vcard-session-status {
	margin: 0.75rem 0 0;
	color: #b42318;
	font-size: 0.875rem;
	font-weight: 600;
}

/*
 * Public navigation: align the Quickvcard header with the dark AVA visual
 * identity without changing the parent theme templates or navigation data.
 */
.header.navbar {
	background-color: #050506 !important;
	color: #f5f5f5;
}

/*
 * The homepage hero is intentionally full-bleed.  Keep the navigation over
 * its dark upper area there only; the normal dark header remains elsewhere.
 */
body.home .header.navbar {
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	z-index: 1030;
	background-color: transparent !important;
	box-shadow: none !important;
}

body.home.admin-bar .header.navbar {
	top: var(--ava-adminbar-height, 32px);
}

@media ( max-width: 782px ) {
	body.home.admin-bar .header.navbar {
		top: var(--ava-adminbar-height, 46px);
	}
}

/* Keep the two homepage calls to action aligned without changing buttons on
 * the rest of the site. Elementor uses distinct desktop and mobile widgets. */
body.home .ava-hero-cta {
	width: auto !important;
	vertical-align: middle;
}

@media ( min-width: 1025px ) {
	body.home .ava-hero-cta:not( .elementor-hidden-desktop ) {
		display: inline-block;
	}
}

@media ( min-width: 768px ) and ( max-width: 1024.98px ) {
	body.home .ava-hero-cta:not( .elementor-hidden-tablet ) {
		display: inline-block;
	}
}

body.home .ava-hero-cta .elementor-button-wrapper {
	text-align: left;
}

body.home .ava-hero-cta + .ava-hero-cta {
	margin-left: 1.25rem;
}

body.home .ava-hero-cta-primary .elementor-button {
	background-color: #ff7500 !important;
	border-color: #ff7500 !important;
	color: #ffffff !important;
}

body.home .ava-hero-cta-primary .elementor-button:hover,
body.home .ava-hero-cta-primary .elementor-button:focus-visible {
	background-color: #ff941e !important;
	border-color: #ff941e !important;
	color: #ffffff !important;
}

body.home .ava-hero-cta-secondary .elementor-button {
	background-color: rgba( 5, 5, 6, 0.35 ) !important;
	border-color: #f5f5f5 !important;
	color: #f5f5f5 !important;
}

body.home .ava-hero-cta-secondary .elementor-button:hover,
body.home .ava-hero-cta-secondary .elementor-button:focus-visible {
	background-color: #f5f5f5 !important;
	border-color: #f5f5f5 !important;
	color: #050506 !important;
}

@media ( max-width: 767.98px ) {
	body.home .ava-hero-cta:not( .elementor-hidden-mobile ) {
		display: inline-block;
	}

	body.home .ava-hero-cta .elementor-button-wrapper {
		text-align: center;
	}

	body.home .ava-hero-cta + .ava-hero-cta {
		margin-left: 0.75rem;
	}
}

.header.navbar .navbar-brand img {
	filter: brightness( 0 ) invert( 1 );
}

.header.navbar .nav-link,
.header.navbar .navbar-toggler,
.header.navbar .navbar-toggler:focus,
.header.navbar .navbar-toggler:hover {
	color: #f5f5f5 !important;
}

.header.navbar .nav-link:hover,
.header.navbar .nav-link:focus-visible {
	color: #d9cdb9 !important;
}

.header.navbar .nav-link:focus-visible,
.header.navbar .navbar-toggler:focus-visible,
.header.navbar .btn:focus-visible {
	outline: 2px solid #f5f5f5;
	outline-offset: 3px;
	box-shadow: none;
}

.header.navbar .navbar-toggler-icon {
	filter: invert( 1 );
}

.header.navbar .dropdown-menu {
	background-color: #151516;
	border-color: #343436;
}

.header.navbar .dropdown-item {
	color: #f5f5f5;
}

.header.navbar .dropdown-item:hover,
.header.navbar .dropdown-item:focus {
	background-color: #29292b;
	color: #ffffff;
}

.header.navbar .btn.btn-primary {
	background-color: transparent;
	border-color: #f5f5f5;
	color: #f5f5f5;
}

.header.navbar .btn.btn-primary:hover,
.header.navbar .btn.btn-primary:focus {
	background-color: #f5f5f5;
	border-color: #f5f5f5;
	color: #050506;
}

@media ( max-width: 991.98px ) {
	.header.navbar .offcanvas {
		background-color: #050506;
		color: #f5f5f5;
	}

	.header.navbar .offcanvas .border-top,
	.header.navbar .offcanvas .border-bottom {
		border-color: #343436 !important;
	}

	.header.navbar .offcanvas-title {
		color: #f5f5f5;
	}

	.header.navbar .btn-close {
		filter: invert( 1 ) grayscale( 1 ) brightness( 2 );
	}
}
