/*
Theme Name: Orsena Niseko Child
Theme URI: https://www.orsena.ch/
Description: Thème enfant Orsena — Schema.org (LocalBusiness, FAQ) sans toucher au parent.
Author: Anouar / SEO tech
Template: template-wp-niseko-main
Version: 1.0.0
Text Domain: orsena-child
*/

/* -------------------------------------------------------------------------
   Shortcodes ACF — alignés sur le layout Elementor magasins
   (sélecteurs Elementor inclus : le widget Shortcode n’hérite pas tout seul)
   ------------------------------------------------------------------------- */

.elementor-widget-shortcode .orsena-store-address,
.elementor-widget-text-editor .orsena-store-address,
.orsena-store-address {
	font-family: var(--e-global-typography-text-font-family, Radikal, sans-serif);
	font-size: var(--e-global-typography-text-font-size, 1.8rem);
	font-weight: var(--e-global-typography-text-font-weight, 300);
	line-height: 1.4;
	color: var(--e-global-color-text, #000);
}

.elementor-widget-shortcode .orsena-store-address p,
.orsena-store-address p {
	margin: 0 0 0.35em;
}

.orsena-store-address p:last-child {
	margin-bottom: 0;
}

.orsena-store-address a,
.orsena-store-address .orsena-maps-link {
	color: inherit;
	text-decoration: none;
}

.orsena-store-address a:hover,
.orsena-store-address .orsena-maps-link:hover {
	text-decoration: underline;
}

/* Horaires : colonne jour | plage (comme .heures .heure Elementor) */
.elementor-widget-shortcode .orsena-store-hours.heures,
.elementor-widget-text-editor .orsena-store-hours.heures,
.orsena-store-hours.heures {
	display: flex;
	flex-direction: column;
	gap: 10px;
	width: 100%;
	font-family: var(--e-global-typography-text-font-family, Radikal, sans-serif);
	font-size: var(--e-global-typography-text-font-size, 1.8rem);
	font-weight: var(--e-global-typography-text-font-weight, 300);
	line-height: 1.4;
	color: var(--e-global-color-text, #000);
}

.elementor-widget-shortcode .orsena-store-hours .heure,
.orsena-store-hours .heure {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: baseline;
	gap: 1rem;
	width: 100%;
}

.orsena-store-hours .heure p {
	margin: 0;
}

.orsena-store-hours .heure .day {
	flex: 0 1 auto;
}

.orsena-store-hours .heure .hours {
	flex: 0 0 auto;
	text-align: right;
	color: var(--e-global-color-ce519fa, #6d6d6d);
}

@media (max-width: 767px) {
	.elementor-widget-shortcode .orsena-store-hours.heures,
	.elementor-widget-shortcode .orsena-store-address,
	.orsena-store-hours.heures,
	.orsena-store-address {
		font-size: 1.6rem;
	}
}

/* -------------------------------------------------------------------------
   FAQ Leistungen & Garantien — [orsena_faq]
   ------------------------------------------------------------------------- */

.elementor-widget-shortcode .orsena-faq,
.orsena-faq {
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
	width: 100%;
	font-family: var(--e-global-typography-text-font-family, Radikal, sans-serif);
	font-size: var(--e-global-typography-text-font-size, 1.8rem);
	font-weight: var(--e-global-typography-text-font-weight, 300);
	line-height: 1.45;
	color: var(--e-global-color-text, #000);
}

.orsena-faq-item {
	border-bottom: 1px solid rgba(0, 0, 0, 0.12);
	padding: 0.85rem 0;
}

.orsena-faq-question {
	cursor: pointer;
	list-style: none;
	font-weight: 500;
	color: var(--e-global-color-primary, #000);
}

.orsena-faq-question::-webkit-details-marker {
	display: none;
}

.orsena-faq-question::after {
	content: "+";
	float: right;
	font-weight: 400;
	opacity: 0.55;
}

.orsena-faq-item[open] .orsena-faq-question::after {
	content: "–";
}

.orsena-faq-answer {
	margin-top: 0.65rem;
	color: var(--e-global-color-ce519fa, #6d6d6d);
}

.orsena-faq-answer p {
	margin: 0 0 0.5em;
}

.orsena-faq-answer p:last-child {
	margin-bottom: 0;
}

@media (max-width: 767px) {
	.orsena-faq {
		font-size: 1.6rem;
	}
}
