/* ============================================
   Beauté Naissante - Custom Styles
   Modern Beauty Institute Theme
   ============================================ */

/* --- CSS Custom Properties --- */
:root {
	--bn-transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	--bn-transition-slow: all 0.6s cubic-bezier(0.4, 0, 0.2, 1);
	--bn-shadow-soft: 0 2px 15px rgba(0,0,0,0.06);
	--bn-shadow-medium: 0 4px 25px rgba(0,0,0,0.08);
	--bn-shadow-strong: 0 10px 40px rgba(0,0,0,0.12);
	--bn-shadow-golden: 0 4px 20px rgba(196,149,106,0.25);
	--bn-radius-sm: 4px;
	--bn-radius-md: 8px;
	--bn-radius-lg: 16px;
	--bn-radius-xl: 24px;
	--bn-radius-pill: 999px;
	--bn-green-dark: #23341F;
	--bn-green-medium: #2B3D25;
	--bn-topbar-height: 32px;
}

/* --- Base Resets --- */
*,
*::before,
*::after {
	box-sizing: border-box;
}

html {
	scroll-behavior: smooth;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

body {
	overflow-x: hidden;
}

img {
	max-width: 100%;
	height: auto;
	display: block;
}

/* --- FSE Template Part Stacking Fix --- */
/* WordPress FSE wraps template parts in elements that can create stacking contexts.
   Ensure the header part stays above all page content. */
header.wp-block-template-part,
.wp-block-template-part[data-type="header"] {
	position: relative;
	z-index: 9999;
}

/* Prevent cover blocks from overlapping the header */
.wp-block-cover {
	isolation: auto !important;
}

/* --- Dark Cover Blocks: Force white text --- */
/* theme.json sets body text to #3A3A3A which overrides WordPress's default
   white text in dark cover blocks. Fix with explicit color rules. */
.wp-block-cover.is-dark,
.wp-block-cover.is-dark .wp-block-cover__inner-container {
	color: #ffffff;
}

.wp-block-cover.is-dark h1,
.wp-block-cover.is-dark h2,
.wp-block-cover.is-dark h3,
.wp-block-cover.is-dark h4,
.wp-block-cover.is-dark p,
.wp-block-cover.is-dark li,
.wp-block-cover.is-dark span,
.wp-block-cover.is-dark .wp-block-heading {
	color: inherit;
}

/* Ensure elements with explicit has-text-color keep their own color */
.wp-block-cover.is-dark .has-text-color {
	color: currentColor;
}

/* Cover block links should be light too */
.wp-block-cover.is-dark a:not(.wp-block-button__link) {
	color: var(--wp--preset--color--primary-light, #E8C5A8);
}

/* Section labels inside dark covers */
.wp-block-cover.is-dark .bn-section-label {
	color: var(--wp--preset--color--primary-light, #E8C5A8);
}

/* --- Dark Background Groups: Force light text --- */
/* Groups with dark background colors (secondary=#2C2C2C, black=#1A1A1A)
   need white text since body text color is #3A3A3A (invisible on dark bg) */
.has-secondary-background-color,
.has-black-background-color,
.has-text-background-color {
	color: rgba(255, 255, 255, 0.9);
}

.has-secondary-background-color h1,
.has-secondary-background-color h2,
.has-secondary-background-color h3,
.has-secondary-background-color h4,
.has-black-background-color h1,
.has-black-background-color h2,
.has-black-background-color h3,
.has-black-background-color h4 {
	color: #ffffff;
}

.has-secondary-background-color p,
.has-secondary-background-color li,
.has-secondary-background-color span,
.has-black-background-color p,
.has-black-background-color li,
.has-black-background-color span {
	color: inherit;
}

.has-secondary-background-color a:not(.wp-block-button__link),
.has-black-background-color a:not(.wp-block-button__link) {
	color: var(--wp--preset--color--primary-light, #E8C5A8);
}

/* Keep explicit text color presets */
.has-secondary-background-color .has-text-color,
.has-black-background-color .has-text-color {
	color: currentColor;
}

/* --- Top Info Bar --- */
.bn-topbar {
	background: linear-gradient(135deg, #3a2a1a 0%, #2C2C2C 100%);
	padding: 0.4rem 1rem;
	display: flex;
	justify-content: center;
	align-items: center;
	z-index: 10001;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	transform: translateY(0);
	transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1);
}

.bn-topbar.header-hidden {
	transform: translateY(-100%);
}

.bn-topbar-content {
	font-family: 'DM Sans', sans-serif;
	font-size: 0.75rem;
	font-weight: 400;
	color: rgba(255, 255, 255, 0.85);
	letter-spacing: 0.08em;
	text-transform: uppercase;
	margin: 0;
	display: flex;
	align-items: center;
	gap: 0.5rem;
	flex-wrap: nowrap;
}

.bn-topbar-sep {
	color: rgba(196, 149, 106, 0.6);
	font-size: 0.6rem;
}

/* Status dot indicator */
.bn-status-dot {
	display: inline-block;
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: #888;
	flex-shrink: 0;
}

.bn-status-dot.open {
	background: #2ecc71;
	box-shadow: 0 0 6px rgba(46, 204, 113, 0.5);
	animation: bn-dot-pulse 2s ease-in-out infinite;
}

.bn-status-dot.rdv {
	background: #f39c12;
	box-shadow: 0 0 6px rgba(243, 156, 18, 0.5);
}

.bn-status-dot.closed {
	background: #e74c3c;
}

@keyframes bn-dot-pulse {
	0%, 100% { opacity: 1; }
	50% { opacity: 0.6; }
}

/* --- Header Styles --- */
.bn-header {
	position: fixed;
	top: var(--bn-topbar-height, 32px);
	left: 0;
	width: 100%;
	z-index: 10000;
	background: rgba(255, 255, 255, 0.95);
	backdrop-filter: blur(20px);
	-webkit-backdrop-filter: blur(20px);
	border-bottom: 1px solid rgba(229, 221, 212, 0.5);
	transform: translateY(0);
	transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1),
	            background 0.3s ease,
	            box-shadow 0.3s ease;
}

.bn-header.scrolled {
	box-shadow: var(--bn-shadow-soft);
	background: rgba(255, 255, 255, 0.98);
}

.bn-header.header-hidden {
	transform: translateY(calc(-100% - var(--bn-topbar-height, 32px)));
}

.bn-header-inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	max-width: 1400px;
	margin: 0 auto;
	padding: 0.75rem 2rem;
}

/* Logo — Text-based with Great Vibes script font */
.bn-logo {
	flex-shrink: 0;
}

.bn-logo-text,
.bn-logo-text a {
	font-family: 'Great Vibes', cursive;
	font-size: clamp(1.6rem, 3vw, 2.2rem);
	font-weight: 400;
	color: #C4956A;
	text-decoration: none;
	letter-spacing: 0.01em;
	line-height: 1.1;
	transition: var(--bn-transition);
	margin: 0;
	white-space: nowrap;
}

.bn-logo-text a:hover {
	color: #A67B5B;
}

.bn-header.scrolled .bn-logo-text,
.bn-header.scrolled .bn-logo-text a {
	font-size: clamp(1.4rem, 2.5vw, 1.8rem);
}

/* Legacy logo image support */
.bn-logo img,
.bn-logo .custom-logo {
	max-height: 60px;
	width: auto;
	transition: var(--bn-transition);
}

.bn-header.scrolled .bn-logo img,
.bn-header.scrolled .bn-logo .custom-logo {
	max-height: 48px;
}

/* Navigation */
.bn-nav .wp-block-navigation__container {
	gap: 0.25rem;
}

.bn-nav .wp-block-navigation-item__content {
	font-family: var(--wp--preset--font-family--body);
	font-size: 0.875rem;
	font-weight: 500;
	letter-spacing: 0.03em;
	color: var(--wp--preset--color--secondary);
	padding: 0.5rem 0.85rem;
	border-radius: var(--bn-radius-pill);
	transition: var(--bn-transition);
}

.bn-nav .wp-block-navigation-item__content:hover {
	color: var(--wp--preset--color--primary);
	background: var(--wp--preset--color--cream);
}

.bn-nav .current-menu-item > .wp-block-navigation-item__content {
	color: var(--wp--preset--color--primary);
	font-weight: 600;
}

/* CTA Button - Prendre RDV */
.bn-cta-rdv {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	background: linear-gradient(135deg, #C4956A 0%, #A67B5B 100%);
	color: #fff !important;
	font-family: var(--wp--preset--font-family--body);
	font-size: 0.8125rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	text-decoration: none;
	padding: 0.75rem 1.75rem;
	border-radius: var(--bn-radius-pill);
	border: none;
	cursor: pointer;
	transition: var(--bn-transition);
	box-shadow: var(--bn-shadow-golden);
	white-space: nowrap;
}

.bn-cta-rdv:hover {
	background: linear-gradient(135deg, #A67B5B 0%, #8B6914 100%);
	transform: translateY(-2px);
	box-shadow: 0 6px 25px rgba(196,149,106,0.4);
	color: #fff !important;
}

.bn-cta-rdv svg,
.bn-cta-rdv::before {
	width: 16px;
	height: 16px;
}

/* Header actions group (icons + phone + CTA) */
.bn-header-actions {
	gap: 1.25rem !important;
	align-items: center;
}

/* WooCommerce account & cart icons in header */
.bn-header .wc-block-mini-cart,
.bn-header .wp-block-woocommerce-mini-cart,
.bn-header .wp-block-woocommerce-customer-account,
.bn-header .wc-block-customer-account {
	display: flex;
	align-items: center;
	transition: var(--bn-transition);
}

.bn-header .wc-block-mini-cart .wc-block-mini-cart__button,
.bn-header .wp-block-woocommerce-customer-account a,
.bn-header .wc-block-customer-account a {
	color: var(--wp--preset--color--secondary, #2C2C2C);
	opacity: 0.75;
	transition: var(--bn-transition);
	display: flex;
	align-items: center;
}

.bn-header .wc-block-mini-cart .wc-block-mini-cart__button svg,
.bn-header .wp-block-woocommerce-customer-account svg,
.bn-header .wc-block-customer-account svg {
	width: 22px;
	height: 22px;
}

.bn-header .wc-block-mini-cart .wc-block-mini-cart__button:hover,
.bn-header .wp-block-woocommerce-customer-account a:hover,
.bn-header .wc-block-customer-account a:hover {
	color: var(--wp--preset--color--primary, #C4956A);
	opacity: 1;
}

/* Mini cart badge count */
.bn-header .wc-block-mini-cart__badge {
	background: var(--wp--preset--color--primary, #C4956A);
	color: #fff;
	font-size: 0.65rem;
	min-width: 16px;
	height: 16px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: 700;
}

/* Phone in header — separated from CTA by a subtle pipe */
.bn-header-phone {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	font-size: 0.875rem;
	font-weight: 500;
	color: var(--wp--preset--color--secondary);
	text-decoration: none;
	transition: var(--bn-transition);
	padding-right: 1.25rem;
	border-right: 1px solid var(--wp--preset--color--border);
}

.bn-header-phone a {
	color: inherit;
	text-decoration: none;
}

.bn-header-phone:hover,
.bn-header-phone a:hover {
	color: var(--wp--preset--color--primary);
}

/* --- Hero Section --- */
.bn-hero {
	position: relative;
	min-height: 100vh;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
}

.bn-hero-content {
	position: relative;
	z-index: 2;
	text-align: center;
	max-width: 800px;
	padding: 2rem;
}

.bn-hero-subtitle {
	font-family: var(--wp--preset--font-family--accent-font);
	font-size: clamp(1rem, 2vw, 1.25rem);
	font-weight: 300;
	font-style: italic;
	letter-spacing: 0.15em;
	color: var(--wp--preset--color--primary-light);
	margin-bottom: 1rem;
}

.bn-hero h1 {
	font-family: var(--wp--preset--font-family--heading);
	font-size: clamp(2.5rem, 6vw, 4.5rem);
	font-weight: 700;
	color: #fff;
	line-height: 1.1;
	margin-bottom: 1.5rem;
	letter-spacing: -0.02em;
}

.bn-hero-description {
	font-size: clamp(1rem, 1.5vw, 1.2rem);
	color: rgba(255, 255, 255, 0.85);
	line-height: 1.7;
	margin-bottom: 2.5rem;
}

.bn-hero-buttons {
	display: flex;
	gap: 1rem;
	justify-content: center;
	flex-wrap: wrap;
}

/* --- Section Styles --- */
.bn-section {
	padding: clamp(3rem, 8vw, 7rem) 0;
}

.bn-section-header {
	text-align: center;
	max-width: 700px;
	margin: 0 auto 4rem;
}

.bn-section-label {
	font-family: var(--wp--preset--font-family--body);
	font-size: 0.75rem;
	font-weight: 600;
	letter-spacing: 0.25em;
	text-transform: uppercase;
	color: var(--wp--preset--color--primary);
	margin-bottom: 1rem;
	display: block;
}

.bn-section-title {
	font-family: var(--wp--preset--font-family--heading);
	font-size: clamp(1.8rem, 4vw, 2.5rem);
	font-weight: 600;
	color: var(--wp--preset--color--secondary);
	line-height: 1.2;
	margin-bottom: 1.25rem;
}

.bn-section-description {
	font-size: 1.05rem;
	color: var(--wp--preset--color--body-text-light);
	line-height: 1.7;
}

/* Gold decorative line under headings */
.bn-gold-line::after {
	content: '';
	display: block;
	width: 60px;
	height: 2px;
	background: linear-gradient(90deg, var(--wp--preset--color--primary), var(--wp--preset--color--primary-light));
	margin: 1rem auto 0;
}

.bn-gold-line.align-left::after {
	margin-left: 0;
}

/* --- Service Cards --- */
.bn-service-card {
	position: relative;
	border-radius: var(--bn-radius-lg);
	overflow: hidden;
	background: #fff;
	box-shadow: var(--bn-shadow-soft);
	transition: var(--bn-transition-slow);
	cursor: pointer;
}

.bn-service-card:hover {
	transform: translateY(-8px);
	box-shadow: var(--bn-shadow-strong);
}

.bn-service-card-image {
	position: relative;
	overflow: hidden;
	aspect-ratio: 4 / 5;
}

.bn-service-card-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.8s cubic-bezier(0.4, 0, 0.2, 1);
}

.bn-service-card:hover .bn-service-card-image img {
	transform: scale(1.08);
}

.bn-service-card-overlay {
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, transparent 40%, rgba(26,26,26,0.8) 100%);
	opacity: 0;
	transition: var(--bn-transition);
}

.bn-service-card:hover .bn-service-card-overlay {
	opacity: 1;
}

.bn-service-card-content {
	padding: 1.5rem;
}

.bn-service-card-title {
	font-family: var(--wp--preset--font-family--heading);
	font-size: 1.25rem;
	font-weight: 600;
	color: var(--wp--preset--color--secondary);
	margin-bottom: 0.5rem;
}

.bn-service-card-text {
	font-size: 0.9rem;
	color: var(--wp--preset--color--body-text-light);
	line-height: 1.6;
}

.bn-service-card-price {
	display: inline-block;
	font-family: var(--wp--preset--font-family--heading);
	font-size: 1.1rem;
	font-weight: 600;
	color: var(--wp--preset--color--primary);
	margin-top: 0.75rem;
}

/* --- Category Cards (3-column image cards with overlay) --- */
.bn-category-cards {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 1.5rem;
}

.bn-category-card {
	position: relative;
	border-radius: var(--bn-radius-lg);
	overflow: hidden;
	aspect-ratio: 3 / 4;
	cursor: pointer;
	transition: var(--bn-transition-slow);
}

.bn-category-card:hover {
	transform: translateY(-6px);
	box-shadow: var(--bn-shadow-strong);
}

.bn-category-card img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.8s cubic-bezier(0.4, 0, 0.2, 1);
}

.bn-category-card:hover img {
	transform: scale(1.06);
}

.bn-category-card-overlay {
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(0,0,0,0.05) 0%, rgba(0,0,0,0.55) 70%, rgba(0,0,0,0.75) 100%);
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	padding: 2rem 1.75rem;
	transition: var(--bn-transition);
}

.bn-category-card:hover .bn-category-card-overlay {
	background: linear-gradient(180deg, rgba(0,0,0,0.1) 0%, rgba(0,0,0,0.6) 60%, rgba(0,0,0,0.8) 100%);
}

.bn-category-card-title {
	font-family: var(--wp--preset--font-family--heading, 'Playfair Display', serif);
	font-size: clamp(1.25rem, 2vw, 1.6rem);
	font-weight: 600;
	color: #ffffff;
	line-height: 1.2;
	margin: 0 0 0.75rem;
}

.bn-category-card-link {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	font-family: var(--wp--preset--font-family--body, 'DM Sans', sans-serif);
	font-size: 0.8rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--wp--preset--color--primary-light, #E8C5A8);
	text-decoration: none;
	transition: var(--bn-transition);
}

.bn-category-card-link::after {
	content: '→';
	transition: transform 0.3s ease;
}

.bn-category-card:hover .bn-category-card-link {
	color: #ffffff;
}

.bn-category-card:hover .bn-category-card-link::after {
	transform: translateX(4px);
}

/* Category cards responsive */
@media (max-width: 768px) {
	.bn-category-cards {
		grid-template-columns: 1fr;
		gap: 1rem;
	}

	.bn-category-card {
		aspect-ratio: 16 / 9;
	}
}

@media (min-width: 769px) and (max-width: 1024px) {
	.bn-category-cards {
		grid-template-columns: repeat(3, 1fr);
		gap: 1rem;
	}
}

/* --- Pricing Table --- */
.bn-pricing-card {
	background: #fff;
	border-radius: var(--bn-radius-lg);
	padding: 2.5rem 2rem;
	text-align: center;
	box-shadow: var(--bn-shadow-soft);
	transition: var(--bn-transition);
	border: 1px solid var(--wp--preset--color--border);
	position: relative;
	overflow: hidden;
}

.bn-pricing-card:hover {
	box-shadow: var(--bn-shadow-golden);
	border-color: var(--wp--preset--color--primary-light);
}

.bn-pricing-card.featured {
	border: 2px solid var(--wp--preset--color--primary);
	transform: scale(1.03);
}

.bn-pricing-card.featured::before {
	content: 'Populaire';
	position: absolute;
	top: 1rem;
	right: -2rem;
	background: var(--wp--preset--color--primary);
	color: #fff;
	font-size: 0.7rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	padding: 0.3rem 2.5rem;
	transform: rotate(45deg);
}

.bn-pricing-title {
	font-family: var(--wp--preset--font-family--heading);
	font-size: 1.35rem;
	font-weight: 600;
	color: var(--wp--preset--color--secondary);
	margin-bottom: 0.5rem;
}

.bn-pricing-duration {
	font-size: 0.85rem;
	color: var(--wp--preset--color--body-text-light);
	margin-bottom: 1.5rem;
}

.bn-pricing-amount {
	font-family: var(--wp--preset--font-family--heading);
	font-size: 2.75rem;
	font-weight: 700;
	color: var(--wp--preset--color--primary);
	line-height: 1;
	margin-bottom: 0.25rem;
}

.bn-pricing-amount span {
	font-size: 1.25rem;
	font-weight: 400;
}

.bn-pricing-per {
	font-size: 0.8rem;
	color: var(--wp--preset--color--body-text-light);
	margin-bottom: 2rem;
}

.bn-pricing-features {
	list-style: none;
	padding: 0;
	margin: 0 0 2rem;
	text-align: left;
}

.bn-pricing-features li {
	padding: 0.6rem 0;
	border-bottom: 1px solid var(--wp--preset--color--cream-dark);
	font-size: 0.9rem;
	color: var(--wp--preset--color--body-text);
	display: flex;
	align-items: center;
	gap: 0.75rem;
}

.bn-pricing-features li::before {
	content: '✓';
	color: var(--wp--preset--color--primary);
	font-weight: 700;
	flex-shrink: 0;
}

/* --- Testimonial Section --- */
.bn-testimonial {
	background: var(--wp--preset--color--cream);
	border-radius: var(--bn-radius-lg);
	padding: 3rem;
	position: relative;
}

.bn-testimonial::before {
	content: '"';
	font-family: var(--wp--preset--font-family--heading);
	font-size: 6rem;
	color: var(--wp--preset--color--primary-light);
	position: absolute;
	top: 0.5rem;
	left: 1.5rem;
	line-height: 1;
	opacity: 0.5;
}

.bn-testimonial-text {
	font-family: var(--wp--preset--font-family--accent-font);
	font-size: 1.2rem;
	font-style: italic;
	line-height: 1.8;
	color: var(--wp--preset--color--body-text);
	margin-bottom: 1.5rem;
}

.bn-testimonial-author {
	font-weight: 600;
	color: var(--wp--preset--color--secondary);
}

/* --- Contact Section --- */
.bn-contact-info {
	display: flex;
	align-items: flex-start;
	gap: 1rem;
	padding: 1.25rem 0;
	border-bottom: 1px solid var(--wp--preset--color--cream-dark);
}

.bn-contact-info-icon {
	width: 40px;
	height: 40px;
	background: var(--wp--preset--color--cream);
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	color: var(--wp--preset--color--primary);
}

.bn-contact-info-label {
	font-size: 0.75rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--wp--preset--color--body-text-light);
	margin-bottom: 0.25rem;
}

.bn-contact-info-value {
	font-size: 1rem;
	color: var(--wp--preset--color--secondary);
	font-weight: 500;
}

/* --- Footer --- */
.bn-footer {
	background: var(--wp--preset--color--secondary);
	color: rgba(255, 255, 255, 0.7);
	padding: 4rem 0 2rem;
}

.bn-footer h3,
.bn-footer h4 {
	color: #fff;
	font-size: 1rem;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	margin-bottom: 1.5rem;
}

.bn-footer a {
	color: rgba(255, 255, 255, 0.7);
	text-decoration: none;
	transition: var(--bn-transition);
}

.bn-footer a:hover {
	color: var(--wp--preset--color--primary-light);
}

.bn-footer-hours {
	font-size: 0.9rem;
	line-height: 2;
}

.bn-footer-hours strong {
	color: #fff;
}

.bn-footer-bottom {
	border-top: 1px solid rgba(255, 255, 255, 0.1);
	margin-top: 3rem;
	padding-top: 1.5rem;
	font-size: 0.8rem;
	text-align: center;
	color: rgba(255, 255, 255, 0.4);
}

/* Footer logo — Great Vibes text, lighter for dark background */
.bn-footer-logo,
.bn-footer-logo a {
	font-family: 'Great Vibes', cursive !important;
	font-size: clamp(1.8rem, 3.5vw, 2.4rem) !important;
	font-weight: 400 !important;
	color: #C4956A !important;
	text-decoration: none !important;
	letter-spacing: 0.01em;
	line-height: 1.2;
	margin: 0 0 0.25rem !important;
	display: block;
}

.bn-footer-logo a:hover {
	color: #E8C5A8 !important;
}

/* Footer social icons — SVG circles */
.bn-footer-social {
	display: flex;
	gap: 0.75rem;
	margin-top: 1.25rem;
}

.bn-footer-social .bn-social-icon {
	width: 40px;
	height: 40px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.08);
	color: rgba(255, 255, 255, 0.7);
	transition: var(--bn-transition);
}

.bn-footer-social .bn-social-icon svg {
	width: 18px;
	height: 18px;
	fill: currentColor;
}

.bn-footer-social .bn-social-icon:hover {
	background: var(--wp--preset--color--primary);
	color: #fff;
	transform: translateY(-3px);
}

/* --- Block Style Overrides --- */

/* Button groups: gap between buttons (theme.json blockGap is 0 globally) */
.wp-block-buttons {
	gap: 0.75rem;
}

/* Outline Gold Button */
.wp-block-button.is-style-bn-outline-gold .wp-block-button__link {
	background: transparent;
	color: var(--wp--preset--color--primary);
	border: 2px solid var(--wp--preset--color--primary);
	transition: var(--bn-transition);
}

.wp-block-button.is-style-bn-outline-gold .wp-block-button__link:hover {
	background: var(--wp--preset--color--primary);
	color: #fff;
}

/* CTA RDV Button */
.wp-block-button.is-style-bn-cta-rdv .wp-block-button__link {
	background: linear-gradient(135deg, #C4956A 0%, #A67B5B 100%);
	color: #fff;
	box-shadow: var(--bn-shadow-golden);
	border: none;
	transition: var(--bn-transition);
}

.wp-block-button.is-style-bn-cta-rdv .wp-block-button__link:hover {
	background: linear-gradient(135deg, #A67B5B 0%, #8B6914 100%);
	transform: translateY(-2px);
	box-shadow: 0 6px 25px rgba(196,149,106,0.4);
}

/* Card Group Style */
.wp-block-group.is-style-bn-card {
	background: #fff;
	border-radius: var(--bn-radius-lg);
	padding: 2rem;
	box-shadow: var(--bn-shadow-soft);
	border: 1px solid var(--wp--preset--color--border);
	transition: var(--bn-transition);
}

.wp-block-group.is-style-bn-card:hover {
	box-shadow: var(--bn-shadow-medium);
	transform: translateY(-4px);
}

/* Glass Group Style */
.wp-block-group.is-style-bn-glass {
	background: rgba(255, 255, 255, 0.7);
	backdrop-filter: blur(20px);
	-webkit-backdrop-filter: blur(20px);
	border-radius: var(--bn-radius-lg);
	padding: 2rem;
	border: 1px solid rgba(255, 255, 255, 0.3);
}

/* Dark glass variant — when glass cards are inside dark covers */
.wp-block-cover.is-dark .wp-block-group.is-style-bn-glass {
	background: rgba(0, 0, 0, 0.3);
	border: 1px solid rgba(255, 255, 255, 0.12);
}

/* Gold Border Group */
.wp-block-group.is-style-bn-gold-border {
	border: 1px solid var(--wp--preset--color--primary-light);
	border-radius: var(--bn-radius-lg);
	padding: 2rem;
	position: relative;
}

.wp-block-group.is-style-bn-gold-border::before {
	content: '';
	position: absolute;
	top: -1px;
	left: 2rem;
	right: 2rem;
	height: 2px;
	background: linear-gradient(90deg, transparent, var(--wp--preset--color--primary), transparent);
}

/* Hover Zoom Image */
.wp-block-image.is-style-bn-hover-zoom {
	overflow: hidden;
	border-radius: var(--bn-radius-lg);
}

.wp-block-image.is-style-bn-hover-zoom img {
	transition: transform 0.8s cubic-bezier(0.4, 0, 0.2, 1);
}

.wp-block-image.is-style-bn-hover-zoom:hover img {
	transform: scale(1.08);
}

/* Golden Frame Image */
.wp-block-image.is-style-bn-golden-frame {
	border: 2px solid var(--wp--preset--color--primary-light);
	border-radius: var(--bn-radius-lg);
	padding: 0.5rem;
}

/* Gold Line Separator */
.wp-block-separator.is-style-bn-gold-line {
	border: none;
	height: 2px;
	background: linear-gradient(90deg, transparent, var(--wp--preset--color--primary), transparent);
	max-width: 200px;
	margin: 2rem auto;
}

/* Heading with line */
.wp-block-heading.is-style-bn-with-line::after {
	content: '';
	display: block;
	width: 60px;
	height: 2px;
	background: var(--wp--preset--color--primary);
	margin-top: 0.75rem;
}

/* Accent heading */
.wp-block-heading.is-style-bn-accent {
	color: var(--wp--preset--color--primary);
}

/* Services Grid Columns */
.wp-block-columns.is-style-bn-services-grid > .wp-block-column {
	border-radius: var(--bn-radius-lg);
	overflow: hidden;
	background: #fff;
	box-shadow: var(--bn-shadow-soft);
	transition: var(--bn-transition);
}

.wp-block-columns.is-style-bn-services-grid > .wp-block-column:hover {
	box-shadow: var(--bn-shadow-medium);
	transform: translateY(-4px);
}

/* Parallax Cover */
.wp-block-cover.is-style-bn-parallax {
	min-height: 500px;
}

/* --- WooCommerce Overrides --- */
.woocommerce .products .product {
	border-radius: var(--bn-radius-lg);
	overflow: hidden;
	transition: var(--bn-transition);
}

.woocommerce .products .product:hover {
	box-shadow: var(--bn-shadow-medium);
}

.woocommerce .button,
.woocommerce a.button {
	background: var(--wp--preset--color--primary) !important;
	color: #fff !important;
	border-radius: var(--bn-radius-pill) !important;
	font-weight: 600 !important;
	letter-spacing: 0.05em !important;
	padding: 0.75rem 1.75rem !important;
	text-transform: uppercase !important;
	font-size: 0.8125rem !important;
	transition: var(--bn-transition) !important;
	border: none !important;
}

.woocommerce .button:hover,
.woocommerce a.button:hover {
	background: var(--wp--preset--color--primary-dark) !important;
}

/* ───────────────────────────────────────────────
 * GREEN SECTIONS — Inspired by reference site
 * Deep olive green backgrounds with light text
 * ─────────────────────────────────────────────── */

.bn-section-green,
.is-style-bn-green-section {
	background: linear-gradient(160deg, var(--bn-green-dark) 0%, var(--bn-green-medium) 100%);
	color: rgba(255, 255, 255, 0.9);
	padding: clamp(3rem, 8vw, 6rem) 0;
}

.bn-section-green h1,
.bn-section-green h2,
.bn-section-green h3,
.bn-section-green h4,
.bn-section-green .wp-block-heading,
.is-style-bn-green-section h1,
.is-style-bn-green-section h2,
.is-style-bn-green-section h3,
.is-style-bn-green-section h4,
.is-style-bn-green-section .wp-block-heading {
	color: #ffffff;
}

.bn-section-green p,
.bn-section-green li,
.is-style-bn-green-section p,
.is-style-bn-green-section li {
	color: rgba(255, 255, 255, 0.85);
}

.bn-section-green a:not(.wp-block-button__link),
.is-style-bn-green-section a:not(.wp-block-button__link) {
	color: var(--wp--preset--color--primary-light, #E8C5A8);
}

.bn-section-green .bn-section-label,
.is-style-bn-green-section .bn-section-label {
	color: var(--wp--preset--color--primary-light, #E8C5A8);
}

/* Cards on green sections — white with shadow */
.bn-section-green .wp-block-group.is-style-bn-card,
.is-style-bn-green-section .wp-block-group.is-style-bn-card {
	background: #ffffff;
	color: #3a2a1a;
	border-radius: var(--bn-radius-lg);
	padding: 1.5rem;
	box-shadow: 0 8px 30px rgba(0, 0, 0, 0.15);
}

.bn-section-green .wp-block-group.is-style-bn-card h3,
.bn-section-green .wp-block-group.is-style-bn-card p,
.is-style-bn-green-section .wp-block-group.is-style-bn-card h3,
.is-style-bn-green-section .wp-block-group.is-style-bn-card p {
	color: #3a2a1a;
}

/* Accent italic style (for headings like "Nature & Technologie") */
.bn-accent-italic {
	font-family: 'Cormorant Garamond', serif;
	font-style: italic;
	font-weight: 300;
}

/* Bullet points with colored dots */
.bn-green-check-list {
	list-style: none;
	padding: 0;
}

.bn-green-check-list li {
	position: relative;
	padding-left: 1.5rem;
	margin-bottom: 0.6rem;
}

.bn-green-check-list li::before {
	content: '';
	position: absolute;
	left: 0;
	top: 0.5em;
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: var(--wp--preset--color--primary-light, #E8C5A8);
}

/* ───────────────────────────────────────────────
 * MEGA-MENU — Hostinger-style panel with icons + descriptions
 *
 * Architecture:
 * - Trigger: .bn-mega-trigger (wp:navigation-link in header.html)
 * - Panel: #bn-mega-panel (rendered by PHP inc/mega-menu.php)
 * - JS manages hover/focus (navigation.js → initMegaMenu)
 * ─────────────────────────────────────────────── */

/* ── A. Trigger — chevron indicator ── */

.bn-nav .wp-block-navigation-item.bn-mega-trigger > .wp-block-navigation-item__content {
	cursor: pointer;
}

.bn-nav .wp-block-navigation-item.bn-mega-trigger > .wp-block-navigation-item__content::after {
	content: '';
	display: inline-block;
	width: 10px;
	height: 10px;
	margin-left: 4px;
	vertical-align: -1px;
	background: currentColor;
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	transition: transform 0.25s ease;
}

.bn-nav .wp-block-navigation-item.bn-mega-trigger.is-mega-open > .wp-block-navigation-item__content::after {
	transform: rotate(180deg);
}

/* ── B. Panel — positioning & appearance ── */

.bn-mega-panel {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 9999;
	opacity: 0;
	visibility: hidden;
	transform: translateY(-8px);
	pointer-events: none;
	transition: opacity 0.2s ease, transform 0.2s ease, visibility 0.2s;
}

.bn-mega-panel.is-open {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
	pointer-events: auto;
}

.bn-mega-panel__inner {
	max-width: 1400px;
	margin: 0 auto;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 0;
	padding: 1.5rem 2.5rem 2rem;
	background: #fff;
	border-top: 3px solid var(--wp--preset--color--primary, #C4956A);
	border-radius: 0 0 16px 16px;
	box-shadow: 0 20px 60px rgba(0, 0, 0, 0.12), 0 0 0 1px rgba(0, 0, 0, 0.04);
}

/* ── C. Backdrop ── */

.bn-mega-panel::before {
	content: '';
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100vh;
	background: rgba(0, 0, 0, 0.15);
	z-index: -1;
	opacity: 0;
	transition: opacity 0.2s ease;
	pointer-events: none;
}

.bn-mega-panel.is-open::before {
	opacity: 1;
}

/* ── D. Category headers ── */

.bn-mega-panel__col {
	padding: 0 1.25rem;
	border-right: 1px solid rgba(0, 0, 0, 0.06);
}

.bn-mega-panel__col:first-child {
	padding-left: 0;
}

.bn-mega-panel__col:last-child {
	border-right: none;
	padding-right: 0;
}

/* Sections empilées dans une colonne */
.bn-mega-panel__cat-section {
	margin-bottom: 0;
}

.bn-mega-panel__cat-section + .bn-mega-panel__cat-section {
	margin-top: 1.25rem;
	padding-top: 1.1rem;
	border-top: 1px solid rgba(0, 0, 0, 0.07);
}

.bn-mega-panel__cat-header {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	width: 100%;
	padding: 0 0 0.5rem 0;
	margin-bottom: 0.4rem;
	border: none;
	border-bottom: 2px solid var(--wp--preset--color--primary, #C4956A);
	background: none;
	cursor: default;
	text-align: left;
}

.bn-mega-panel__cat-icon {
	display: flex;
	align-items: center;
	color: var(--wp--preset--color--primary, #C4956A);
}

.bn-mega-panel__cat-icon svg {
	width: 20px;
	height: 20px;
}

.bn-mega-panel__cat-label {
	font-family: var(--wp--preset--font-family--heading, 'Playfair Display', serif);
	font-size: 0.85rem;
	font-weight: 700;
	color: var(--wp--preset--color--secondary, #2C2C2C);
	letter-spacing: 0.04em;
	text-transform: uppercase;
	text-decoration: none;
}

.bn-mega-panel__cat-label:hover {
	color: var(--wp--preset--color--primary, #C4956A);
}

.bn-mega-panel__chevron {
	display: none;
	margin-left: auto;
	color: var(--wp--preset--color--primary, #C4956A);
	transition: transform 0.25s ease;
}

.bn-mega-panel__chevron svg {
	width: 16px;
	height: 16px;
}

/* ── E. Service items ── */

.bn-mega-panel__items {
	display: flex;
	flex-direction: column;
	gap: 1px;
}

.bn-mega-panel__item {
	display: flex;
	align-items: center;
	gap: 0.55rem;
	padding: 0.35rem 0.5rem;
	border-radius: 8px;
	text-decoration: none;
	transition: background 0.15s ease;
}

.bn-mega-panel__item:hover {
	background: var(--wp--preset--color--cream, #FAF8F5);
	text-decoration: none;
}

.bn-mega-panel__item-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	width: 28px;
	height: 28px;
	border-radius: 7px;
	background: var(--wp--preset--color--cream, #FAF8F5);
	color: var(--wp--preset--color--primary, #C4956A);
	transition: background 0.15s ease, color 0.15s ease;
}

.bn-mega-panel__item:hover .bn-mega-panel__item-icon {
	background: var(--wp--preset--color--primary, #C4956A);
	color: #fff;
}

.bn-mega-panel__item-icon svg {
	width: 15px;
	height: 15px;
}

.bn-mega-panel__item-title {
	font-family: var(--wp--preset--font-family--body, 'DM Sans', sans-serif);
	font-size: 0.84rem;
	font-weight: 500;
	color: var(--wp--preset--color--secondary, #2C2C2C);
	line-height: 1.3;
}

.bn-mega-panel__item:hover .bn-mega-panel__item-title {
	color: var(--wp--preset--color--primary, #C4956A);
}


/* ───────────────────────────────────────────────
 * NAV PICTOGRAMS — SVG icons for "Bons Cadeaux" & "Prendre RDV"
 * ─────────────────────────────────────────────── */

/* Bons Cadeaux — gift icon */
.bn-nav .wp-block-navigation-item.bn-nav-gift > .wp-block-navigation-item__content::before {
	content: '';
	display: inline-block;
	width: 16px;
	height: 16px;
	margin-right: 0.35rem;
	vertical-align: -2px;
	background: currentColor;
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 12 20 22 4 22 4 12'/%3E%3Crect x='2' y='7' width='20' height='5'/%3E%3Cline x1='12' y1='22' x2='12' y2='7'/%3E%3Cpath d='M12 7H7.5a2.5 2.5 0 0 1 0-5C11 2 12 7 12 7z'/%3E%3Cpath d='M12 7h4.5a2.5 2.5 0 0 0 0-5C13 2 12 7 12 7z'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 12 20 22 4 22 4 12'/%3E%3Crect x='2' y='7' width='20' height='5'/%3E%3Cline x1='12' y1='22' x2='12' y2='7'/%3E%3Cpath d='M12 7H7.5a2.5 2.5 0 0 1 0-5C11 2 12 7 12 7z'/%3E%3Cpath d='M12 7h4.5a2.5 2.5 0 0 0 0-5C13 2 12 7 12 7z'/%3E%3C/svg%3E");
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
}

/* Prendre RDV button — calendar icon */
.wp-block-button.is-style-bn-cta-rdv .wp-block-button__link::before {
	content: '';
	display: inline-block;
	width: 15px;
	height: 15px;
	margin-right: 0.4rem;
	vertical-align: -2px;
	background: currentColor;
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='18' rx='2' ry='2'/%3E%3Cline x1='16' y1='2' x2='16' y2='6'/%3E%3Cline x1='8' y1='2' x2='8' y2='6'/%3E%3Cline x1='3' y1='10' x2='21' y2='10'/%3E%3Cpath d='M8 14h.01M12 14h.01M16 14h.01M8 18h.01M12 18h.01'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='18' rx='2' ry='2'/%3E%3Cline x1='16' y1='2' x2='16' y2='6'/%3E%3Cline x1='8' y1='2' x2='8' y2='6'/%3E%3Cline x1='3' y1='10' x2='21' y2='10'/%3E%3Cpath d='M8 14h.01M12 14h.01M16 14h.01M8 18h.01M12 18h.01'/%3E%3C/svg%3E");
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
}

/* --- Responsive --- */
@media (max-width: 1024px) {
	.bn-header-inner {
		padding: 0.6rem 1.25rem;
	}

	.bn-header-phone {
		display: none;
	}

	.bn-topbar-content {
		font-size: 0.65rem;
		gap: 0.35rem;
	}

	/* Mega-menu: 2×2 on tablet */
	.bn-mega-panel__inner {
		grid-template-columns: repeat(2, 1fr);
		padding: 1.5rem 2rem;
		max-width: 1000px;
	}

	.bn-mega-panel__col {
		padding: 0 1rem;
		margin-bottom: 1rem;
	}

	.bn-mega-panel__col:nth-child(2n) {
		border-right: none;
	}

	.bn-mega-panel__item-desc {
		font-size: 0.7rem;
	}
}

/* Menu mobile et méga-menu en accordéon : voir la section LOT A en fin de fichier. */

@media (max-width: 768px) {
	.bn-hero {
		min-height: 85vh;
	}

	.bn-hero h1 {
		font-size: clamp(2rem, 8vw, 3rem);
	}

	.bn-hero-buttons {
		flex-direction: column;
		align-items: center;
	}

	.bn-section {
		padding: clamp(2.5rem, 6vw, 4rem) 0;
	}

	.bn-section-header {
		margin-bottom: 2.5rem;
	}

	.bn-pricing-card.featured {
		transform: none;
	}

	.bn-testimonial {
		padding: 2rem 1.5rem;
	}

	.bn-footer {
		padding: 3rem 0 1.5rem;
	}

	/* Stack columns on mobile */
	.wp-block-columns {
		flex-direction: column;
	}

	.wp-block-columns > .wp-block-column {
		flex-basis: 100% !important;
	}
}

@media (max-width: 480px) {
	.bn-cta-rdv {
		padding: 0.65rem 1.25rem;
		font-size: 0.75rem;
	}

	.bn-logo img {
		max-height: 45px;
	}
}

/* --- Utility Classes --- */
.bn-text-center { text-align: center; }
.bn-text-left { text-align: left; }
.bn-text-right { text-align: right; }
.bn-uppercase { text-transform: uppercase; }
.bn-tracking-wide { letter-spacing: 0.08em; }
.bn-tracking-wider { letter-spacing: 0.15em; }

.bn-mt-0 { margin-top: 0; }
.bn-mb-0 { margin-bottom: 0; }
.bn-mx-auto { margin-left: auto; margin-right: auto; }

.bn-max-w-sm { max-width: 600px; }
.bn-max-w-md { max-width: 800px; }
.bn-max-w-lg { max-width: 1000px; }

.bn-hidden { display: none; }
.bn-sr-only {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	clip-path: inset(50%);
	border: 0;
}

/* --- Skip link for keyboard/screen reader accessibility (WCAG 2.4.1) --- */
.bn-skip-link {
	position: absolute;
	top: -9999px;
	left: 50%;
	transform: translateX(-50%);
	background: var(--wp--preset--color--primary);
	color: #fff;
	padding: 0.75rem 1.5rem;
	border-radius: var(--bn-radius-sm);
	font-size: 0.875rem;
	font-weight: 600;
	text-decoration: none;
	z-index: 100000;
	transition: top 0.2s ease;
}
.bn-skip-link:focus {
	top: 1rem;
	outline: 2px solid var(--wp--preset--color--primary);
	outline-offset: 2px;
}

/* Focus visible : voir la section LOT A en fin de fichier. */

/* ───────────────────────────────────────────────
 * MOBILE MENU — Hamburger, overlay, slide-in nav
 * Previously injected by JS (navigation.js), now in CSS for performance
 * ─────────────────────────────────────────────── */

/* Hamburger button */
.bn-hamburger {
	display: none;
	flex-direction: column;
	gap: 5px;
	padding: 8px;
	background: none;
	border: none;
	cursor: pointer;
	z-index: 1001;
}

.bn-hamburger-line {
	display: block;
	width: 24px;
	height: 2px;
	background: var(--wp--preset--color--secondary, #2C2C2C);
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	transform-origin: center;
}

.bn-hamburger.active .bn-hamburger-line:nth-child(1) {
	transform: translateY(7px) rotate(45deg);
}

.bn-hamburger.active .bn-hamburger-line:nth-child(2) {
	opacity: 0;
	transform: scaleX(0);
}

.bn-hamburger.active .bn-hamburger-line:nth-child(3) {
	transform: translateY(-7px) rotate(-45deg);
}

/* Mobile overlay */
.bn-mobile-overlay {
	position: fixed;
	inset: 0;
	background: rgba(0, 0, 0, 0.5);
	backdrop-filter: blur(4px);
	opacity: 0;
	pointer-events: none;
	transition: opacity 0.3s ease;
	z-index: 998;
}

.bn-mobile-overlay.active {
	opacity: 1;
	pointer-events: auto;
}

body.menu-open {
	overflow: hidden;
}

/* Tiroir mobile et décalage sous l'en-tête fixe : voir la section LOT A en fin de fichier. */

/* --- Scroll to top button --- */
.bn-scroll-top {
	position: fixed;
	bottom: 2rem;
	right: 2rem;
	width: 48px;
	height: 48px;
	background: var(--wp--preset--color--primary);
	color: #fff;
	border: none;
	border-radius: 50%;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	box-shadow: var(--bn-shadow-medium);
	opacity: 0;
	transform: translateY(20px);
	transition: var(--bn-transition);
	z-index: 999;
}

.bn-scroll-top.visible {
	opacity: 1;
	transform: translateY(0);
}

.bn-scroll-top:hover {
	background: var(--wp--preset--color--primary-dark);
	transform: translateY(-3px);
}

/* --- Scroll indicator --- */
.bn-scroll-indicator {
	position: absolute;
	bottom: 2rem;
	left: 50%;
	transform: translateX(-50%);
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.25rem;
	color: rgba(255, 255, 255, 0.9);
	cursor: pointer;
	z-index: 10;
	user-select: none;
	pointer-events: auto;
}

.bn-scroll-indicator__label {
	font-size: 0.7rem;
	letter-spacing: 0.2em;
	text-transform: uppercase;
	font-weight: 500;
	opacity: 0.85;
	font-family: var(--wp--preset--font-family--body, sans-serif);
}

.bn-scroll-indicator__chevron {
	display: block;
	width: 26px;
	height: 26px;
	animation: bn-scroll-bounce 2s ease-in-out infinite;
}

.bn-scroll-indicator__chevron:nth-child(3) {
	animation-delay: 0.25s;
	opacity: 0.5;
}

@keyframes bn-scroll-bounce {
	0%   { transform: translateY(0);   opacity: 1; }
	50%  { transform: translateY(7px); opacity: 0.4; }
	100% { transform: translateY(0);   opacity: 1; }
}

@media (max-width: 768px) {
	.bn-scroll-indicator {
		bottom: 1.25rem;
	}
}

/* --- Loading animation --- */
.bn-page-transition {
	position: fixed;
	inset: 0;
	background: var(--wp--preset--color--cream);
	z-index: 9999;
	display: flex;
	align-items: center;
	justify-content: center;
	opacity: 1;
	transition: opacity 0.5s ease;
	pointer-events: none;
}

.bn-page-transition.loaded {
	opacity: 0;
}

.bn-loader {
	width: 40px;
	height: 40px;
	border: 3px solid var(--wp--preset--color--cream-dark);
	border-top-color: var(--wp--preset--color--primary);
	border-radius: 50%;
	animation: bn-spin 0.8s linear infinite;
}

@keyframes bn-spin {
	to { transform: rotate(360deg); }
}


/* =====================================================
   TESTIMONIALS / GOOGLE REVIEWS
   ===================================================== */

.bn-testimonials-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 1.5rem;
}

.bn-testimonial-card {
	transition: transform 0.3s ease, box-shadow 0.3s ease;
	box-shadow: 0 2px 12px rgba(0, 0, 0, 0.04);
	display: flex;
	flex-direction: column;
}

.bn-testimonial-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 8px 30px rgba(0, 0, 0, 0.08);
}

.bn-google-rating-badge p {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	padding: 0.4rem 1.2rem;
	border-radius: 2rem;
	background: rgba(244, 180, 0, 0.1);
	border: 1px solid rgba(244, 180, 0, 0.25);
}

.bn-google-rating-badge p strong {
	color: #f4b400;
	font-size: 1.15rem;
}

/* Stars */
.bn-stars {
	line-height: 1;
}

/* Responsive: 2 columns on tablet */
@media (max-width: 1024px) {
	.bn-testimonials-grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

/* Responsive: horizontal scroll on mobile */
@media (max-width: 768px) {
	.bn-testimonials-grid {
		display: flex;
		overflow-x: auto;
		scroll-snap-type: x mandatory;
		-webkit-overflow-scrolling: touch;
		gap: 1rem;
		padding-bottom: 1rem;
	}

	.bn-testimonial-card {
		min-width: 280px;
		max-width: 85vw;
		flex-shrink: 0;
		scroll-snap-align: start;
	}

	/* Scrollbar styling */
	.bn-testimonials-grid::-webkit-scrollbar {
		height: 4px;
	}
	.bn-testimonials-grid::-webkit-scrollbar-track {
		background: rgba(0, 0, 0, 0.05);
		border-radius: 2px;
	}
	.bn-testimonials-grid::-webkit-scrollbar-thumb {
		background: var(--wp--preset--color--primary, #8B6F4E);
		border-radius: 2px;
	}
}


/* =====================================================================
   LOT A (revue d'octobre 2026) : couleurs lisibles, en-tête, menus,
   accessibilité, échelle typographique. Placé en fin de fichier pour
   l'emporter sur les règles plus anciennes à spécificité égale.
   ===================================================================== */

/* --- 1. Jetons de couleur ---
   --bn-or        : #C4956A, filets, icônes, fonds, grands titres (24 px et plus).
   --bn-or-texte  : #8C6440, tout texte doré courant ou petit sur fond clair
                    (5,23:1 sur blanc, 4,86:1 sur crème #FAF6F1).
   --bn-on-or     : texte posé sur un fond doré (#2C2C2C, 5,22:1). */
:root {
	--bn-or: #C4956A;
	--bn-or-clair: #E8C5A8;
	--bn-or-texte: #8C6440;
	--bn-on-or: #2C2C2C;
	--bn-focus: #2C2C2C;
	--bn-header-h: 109px;
	--wp--preset--color--primary-text: #8C6440;
}

/* Petits textes dorés du thème : sur-titres, liens, prix, badges */
.bn-section-label,
.has-primary-color,
.bn-service-card-price,
.bn-pricing-amount,
.bn-pricing-features li::before,
.bn-contact-info-icon,
.bn-mega-panel__cat-label:hover,
.bn-mega-panel__item:hover .bn-mega-panel__item-title,
.bn-nav .wp-block-navigation-item__content:hover,
.bn-header-phone a:hover,
.bn-header .wc-block-mini-cart .wc-block-mini-cart__button:hover,
.wp-block-heading.is-style-bn-accent {
	color: var(--bn-or-texte);
}

/* Sur fond sombre (couvertures, sections foncées, vertes) : l'or clair reste lisible */
.wp-block-cover.is-dark .bn-section-label,
.wp-block-cover.is-dark .has-primary-color,
.has-secondary-background-color .has-primary-color,
.has-black-background-color .has-primary-color,
.bn-section-green .bn-section-label,
.bn-footer .has-primary-color {
	color: var(--bn-or-clair);
}

/* Liens dans le texte : soulignés pour ne pas reposer sur la couleur seule */
main p a:not([class]),
main li a:not([class]) {
	text-decoration: underline;
	text-underline-offset: 0.15em;
}

/* Boutons : aplat sans dégradé ni halo, texte foncé sur l'or */
.wp-element-button,
.wp-block-button__link,
.bn-cta-rdv,
.woocommerce .button,
.woocommerce a.button {
	box-shadow: none;
}
.wp-block-button:not(.is-style-bn-outline-gold):not(.is-style-outline) .wp-block-button__link:not(.has-background),
.wp-block-button.is-style-bn-cta-rdv .wp-block-button__link,
.bn-cta-rdv,
.bn-skip-link,
.bn-scroll-top {
	background: var(--bn-or);
	color: var(--bn-on-or);
}
.wp-block-button:not(.is-style-bn-outline-gold):not(.is-style-outline) .wp-block-button__link:not(.has-background):hover,
.wp-block-button.is-style-bn-cta-rdv .wp-block-button__link:hover,
.bn-cta-rdv:hover,
.bn-scroll-top:hover {
	background: var(--bn-or-texte);
	color: #fff !important;
	transform: none;
	box-shadow: none;
}
.woocommerce .button,
.woocommerce a.button {
	color: var(--bn-on-or) !important;
}
.woocommerce .button:hover,
.woocommerce a.button:hover {
	background: var(--bn-or-texte) !important;
	color: #fff !important;
}
.bn-header .wc-block-mini-cart__badge {
	background: var(--bn-or);
	color: var(--bn-on-or);
	font-size: 0.75rem;
}
/* Bouton contour doré : le texte prend l'or foncé (sauf couleur posée dans le contenu) */
.wp-block-button.is-style-bn-outline-gold .wp-block-button__link:not(.has-text-color) {
	color: var(--bn-or-texte);
	border-color: var(--bn-or-texte);
}
.wp-block-button.is-style-bn-outline-gold .wp-block-button__link:not(.has-text-color):hover {
	background: var(--bn-or-texte);
	color: #fff;
}

/* Pied de page : liens et mentions lisibles sur #2C2C2C */
.bn-footer-bottom,
.bn-footer-bottom p {
	color: #A0A0A0;
}
.bn-footer a {
	color: rgba(255, 255, 255, 0.85);
}
.bn-footer a:hover {
	color: var(--bn-or-clair);
	text-decoration: underline;
}

/* --- 2. Focus visible partout (WCAG 2.4.7, 1.4.11) : anneau foncé décalé, blanc sur fond sombre --- */
:focus-visible {
	outline: 2px solid var(--bn-focus);
	outline-offset: 3px;
	box-shadow: none;
}
.wp-block-cover.is-dark :focus-visible,
.has-secondary-background-color :focus-visible,
.has-black-background-color :focus-visible,
.bn-footer :focus-visible,
.bn-topbar :focus-visible,
.bn-section-green :focus-visible,
.bn-on-dark :focus-visible {
	outline-color: #fff;
}
:focus:not(:focus-visible) {
	outline: none;
}
.bn-skip-link:focus {
	top: 0.5rem;
	outline: 2px solid var(--bn-focus);
}

/* --- 3. Décalage sous l'en-tête fixe : hauteur réelle posée par navigation.js --- */
body {
	padding-top: var(--bn-header-h, 109px);
}

/* Pages hors Elementor (légales) : conteneur de lecture et marges */
body.page:not(.elementor-page):not(.home):not(.woocommerce-page) main > .wp-block-post-content {
	max-width: 800px;
	margin-inline: auto;
	padding: clamp(2rem, 6vw, 4rem) clamp(1rem, 4vw, 1.5rem);
}
/* Panier, commande, compte, boutique : même conteneur de 1200 px que le reste du site */
body.woocommerce-cart main,
body.woocommerce-checkout main,
body.woocommerce-account main,
body.woocommerce-shop main {
	max-width: 1200px;
	margin-inline: auto;
	padding: clamp(2rem, 5vw, 3rem) clamp(1rem, 4vw, 1.5rem);
	box-sizing: border-box;
}
body.woocommerce-cart main .alignwide,
body.woocommerce-checkout main .alignwide {
	max-width: 100%;
	margin-inline: 0;
}

/* --- 4. En-tête --- */
.bn-header-inner {
	max-width: 1200px;
	padding: 0.75rem clamp(1rem, 4vw, 1.5rem);
	gap: 1rem;
}
.bn-topbar-content {
	white-space: nowrap;
}
.bn-header-phone,
.bn-header-phone a,
.bn-nav .wp-block-navigation-item__content,
.bn-header .is-style-bn-cta-rdv .wp-block-button__link {
	white-space: nowrap;
}
.bn-header .is-style-bn-cta-rdv .wp-block-button__link {
	display: inline-flex;
	align-items: center;
	min-height: 44px;
	padding: 0.7rem 1.4rem;
	font-size: 0.8125rem;
	letter-spacing: 0.08em;
}
.bn-header .wc-block-mini-cart__button,
.bn-header .wc-block-customer-account a {
	min-width: 44px;
	min-height: 44px;
	justify-content: center;
}

/* Statut d'ouverture : vert si ouvert, or si fermé, jamais rouge */
.bn-status-dot.open {
	background: #5B8C5A;
	box-shadow: none;
	animation: none;
}
.bn-status-dot.closed {
	background: var(--bn-or);
}

/* Petits portables : on retire le numéro avant que la navigation ne casse */
@media (max-width: 1199px) {
	.bn-header-phone {
		display: none;
	}
}

/* Téléphones */
@media (max-width: 600px) {
	.bn-topbar {
		padding: 0.3rem 1rem;
	}
	.bn-topbar-content {
		font-size: 0.6875rem;
		letter-spacing: 0.06em;
	}
	.bn-topbar-extra {
		display: none;
	}
	.bn-header-inner {
		padding: 0.5rem 1rem;
		gap: 0.5rem;
	}
	.bn-header-actions {
		gap: 0.25rem !important;
		margin-left: auto;
	}
	.bn-logo-text,
	.bn-logo-text a,
	.bn-header.scrolled .bn-logo-text,
	.bn-header.scrolled .bn-logo-text a {
		font-size: 1.5rem;
	}
	.bn-header .wp-block-woocommerce-customer-account,
	.bn-header .wc-block-customer-account {
		display: none !important;
	}
	.bn-rdv-long {
		display: none;
	}
	.bn-header .is-style-bn-cta-rdv .wp-block-button__link {
		padding: 0.6rem 0.85rem;
		letter-spacing: 0.06em;
	}
}

/* --- 5. Menu mobile (1024 px et moins) --- */
.bn-hamburger {
	position: relative;
	width: 44px;
	height: 44px;
	padding: 10px;
	justify-content: center;
	align-items: center;
	flex-shrink: 0;
}

@media (max-width: 1024px) {
	.bn-hamburger {
		display: flex;
	}

	/* Le tiroir : seulement le <nav>, jamais la liste qui reçoit aussi la classe bn-nav */
	html.bn-js nav.wp-block-navigation.bn-nav {
		position: fixed;
		top: 0;
		right: 0;
		width: min(320px, 86vw);
		height: 100vh;
		height: 100dvh;
		background: #fff;
		padding: 4.5rem 1.5rem 2rem;
		z-index: 999;
		overflow-y: auto;
		overscroll-behavior: contain;
		transform: translateX(105%);
		visibility: hidden;
		transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1), visibility 0s linear 0.35s;
		box-shadow: none;
		border-left: 1px solid var(--wp--preset--color--border);
		display: block;
	}
	html.bn-js nav.wp-block-navigation.bn-nav.mobile-open {
		transform: translateX(0);
		visibility: visible;
		transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1), visibility 0s;
	}
	nav.bn-nav ul.wp-block-navigation__container {
		position: static;
		right: auto;
		width: auto;
		height: auto;
		padding: 0;
		box-shadow: none;
		overflow: visible;
		background: none;
		display: flex;
		flex-direction: column;
		align-items: stretch;
		gap: 0;
		transform: none;
		visibility: inherit;
	}
	nav.bn-nav .wp-block-navigation-item {
		display: block;
		width: 100%;
		border-bottom: 1px solid var(--wp--preset--color--cream-dark, #F0E8DE);
	}
	nav.bn-nav .wp-block-navigation-item__content {
		display: flex;
		align-items: center;
		width: 100%;
		min-height: 48px;
		padding: 0.75rem 0;
		font-size: 1rem;
		border-radius: 0;
		background: none;
		text-align: left;
	}
	nav.bn-nav .wp-block-navigation-item__content:hover {
		background: none;
	}
}

/* Bouton « Nos Soins » : même allure qu'un lien de navigation */
.bn-mega-toggle {
	border: 0;
	background: none;
	cursor: pointer;
	font: inherit;
	font-size: 0.875rem;
	font-weight: 500;
	letter-spacing: 0.03em;
	color: var(--wp--preset--color--secondary);
	padding: 0.5rem 0.85rem;
	line-height: inherit;
}
.bn-nav .bn-mega-trigger > .bn-mega-toggle::after {
	content: '';
	display: inline-block;
	width: 10px;
	height: 10px;
	margin-left: 6px;
	vertical-align: -1px;
	background: currentColor;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") center / contain no-repeat;
	transition: transform 0.25s ease;
}
.bn-nav .bn-mega-toggle[aria-expanded="true"]::after {
	transform: rotate(180deg);
}
.bn-nav .bn-mega-toggle[aria-expanded="true"],
.bn-nav .bn-mega-toggle:hover {
	color: var(--bn-or-texte);
}
@media (max-width: 1024px) {
	nav.bn-nav .bn-mega-toggle {
		justify-content: space-between;
	}
}

/* --- 6. Méga-menu (ordinateur) : le panneau est dans l'en-tête, juste sous lui --- */
@media (min-width: 1025px) {
	html.bn-js .bn-mega-panel.is-ready {
		position: fixed;
		top: 100%;
		left: 0;
		width: 100%;
	}
	.bn-mega-panel__inner {
		max-width: 1200px;
		border-radius: 0;
		box-shadow: 0 1px 0 var(--wp--preset--color--border);
		padding: 1.5rem 2rem 2rem;
	}
	.bn-mega-panel::before {
		top: 100%;
	}
	.bn-mega-panel__chevron {
		display: none !important;
	}
	.bn-mega-panel__item {
		min-height: 36px;
	}
}
.bn-mega-panel__cat-header {
	display: flex;
	align-items: center;
	gap: 0.5rem;
}
.bn-mega-panel__cat-label {
	color: var(--wp--preset--color--secondary);
}
.bn-mega-panel__chevron {
	border: 0;
	background: none;
	padding: 0;
	cursor: pointer;
	color: var(--bn-or-texte);
}
.bn-mega-panel__item-icon,
.bn-mega-panel__cat-icon,
.bn-mega-panel__item:hover .bn-mega-panel__item-icon {
	color: var(--bn-or-texte);
}
.bn-mega-panel__item:hover .bn-mega-panel__item-icon {
	background: var(--wp--preset--color--cream-dark);
}
.bn-mega-panel__item-title {
	font-size: 0.875rem;
}

/* Sans JavaScript : le panneau s'affiche comme une liste en bas de page */
html:not(.bn-js) .bn-mega-panel {
	position: static;
	opacity: 1;
	visibility: visible;
	transform: none;
	pointer-events: auto;
}
html:not(.bn-js) .bn-mega-panel::before,
html:not(.bn-js) .bn-mega-panel__chevron {
	display: none;
}

/* Méga-menu dans le tiroir mobile : accordéon */
@media (max-width: 1024px) {
	.bn-mega-panel.is-ready {
		position: static !important;
		opacity: 1 !important;
		visibility: visible !important;
		transform: none !important;
		pointer-events: auto !important;
		display: none;
		width: 100%;
		z-index: auto !important;
	}
	.bn-mega-panel.is-ready.is-open {
		display: block;
	}
	.bn-mega-panel::before {
		display: none;
	}
	.bn-mega-panel__inner {
		display: block;
		padding: 0 0 0.5rem;
		box-shadow: none;
		border: none;
		border-radius: 0;
		background: transparent;
		max-width: 100%;
	}
	.bn-mega-panel__col,
	.bn-mega-panel__col:first-child,
	.bn-mega-panel__col:last-child {
		padding: 0;
		margin: 0;
		border: none;
	}
	.bn-mega-panel__cat-section + .bn-mega-panel__cat-section {
		margin-top: 0;
		padding-top: 0;
		border-top: none;
	}
	.bn-mega-panel__cat-header {
		padding: 0 0 0 0.75rem;
		margin: 0;
		border-bottom: none;
	}
	.bn-mega-panel__cat-label {
		flex: 1;
		display: flex;
		align-items: center;
		min-height: 48px;
		font-size: 0.8125rem;
	}
	.bn-mega-panel__cat-icon {
		display: none;
	}
	.bn-mega-panel__chevron {
		display: flex;
		align-items: center;
		justify-content: center;
		width: 48px;
		height: 48px;
		margin-left: auto;
	}
	.bn-mega-panel__chevron svg {
		width: 18px;
		height: 18px;
		transition: transform 0.25s ease;
	}
	.bn-mega-panel__chevron[aria-expanded="true"] svg {
		transform: rotate(180deg);
	}
	.bn-mega-panel__items {
		display: none;
		padding: 0 0 0.5rem 1.25rem;
	}
	.bn-mega-panel__items.is-expanded {
		display: flex;
		max-height: none;
	}
	.bn-mega-panel__item {
		min-height: 44px;
		padding: 0.25rem 0;
	}
	.bn-mega-panel__item-icon {
		display: none;
	}
	.bn-mega-panel__item-title {
		font-size: 1rem;
	}
}

/* --- 7. Cibles tactiles (44 px) --- */
.bn-footer-social .bn-social-icon {
	width: 44px;
	height: 44px;
}
.bn-footer-links a,
.bn-footer .wp-block-column p a {
	display: inline-block;
	padding-block: 0.6rem;
}
.bn-footer-links li {
	margin: 0;
}
@media (max-width: 1024px) {
	.bn-category-card-link,
	main a[href][style*="uppercase" i]:not(.wp-block-button__link):not(.elementor-button) {
		display: inline-flex;
		align-items: center;
		min-height: 44px;
	}
}

/* --- 8. Pied de page --- */
.bn-footer {
	padding: clamp(3rem, 6vw, 4rem) 0 2rem;
}
.bn-footer > .wp-block-columns,
.bn-footer > .bn-footer-bottom {
	max-width: 1200px;
	margin-inline: auto !important;
}
.bn-footer .wp-block-columns {
	gap: 2rem 3rem;
}
.bn-footer h2,
.bn-footer h4 {
	font-family: var(--wp--preset--font-family--body);
	font-size: 0.75rem !important;
	letter-spacing: 0.15em;
	color: #fff;
	margin: 0 0 1rem;
}
.bn-footer-links {
	list-style: none;
	padding-left: 0;
	margin: 0;
}
.bn-footer p,
.bn-footer li,
.bn-footer .bn-footer-hours {
	font-size: 1rem !important;
}
.bn-footer-hours p {
	margin: 0;
	line-height: 1.9;
}
.bn-footer-bottom {
	gap: 0.25rem 1.5rem;
	align-items: center;
	text-align: center;
}
.bn-footer-bottom p,
.bn-footer-bottom a {
	font-size: 0.875rem !important;
}

/* --- 9. Échelle typographique : texte courant à 16 px au moins ---
   Annotations : 12 px en capitales espacées. Texte : 16 px, interligne 1,6.
   Les tailles écrites en dur dans le contenu (13, 14, 15 px) remontent à 16 px ;
   les sur-titres en capitales et les boutons gardent leur taille. */
body {
	font-size: 1rem;
	line-height: 1.6;
}
main :is(p, li, span, em, strong, a, div, td, label):is(
	[style*="font-size:13px" i], [style*="font-size: 13px" i],
	[style*="font-size:14px" i], [style*="font-size: 14px" i],
	[style*="font-size:15px" i], [style*="font-size: 15px" i],
	[style*="font-size:0.8rem" i], [style*="font-size:0.85rem" i], [style*="font-size:0.875rem" i],
	[style*="font-size:0.9rem" i], [style*="font-size:0.95rem" i],
	[style*="font-size: 0.875rem" i], [style*="font-size: 0.9rem" i], [style*="font-size: 0.95rem" i],
	[style*="font-size:clamp(0.875rem" i], [style*="font-size: clamp(0.875rem" i]
):not([style*="uppercase" i]):not(.bn-section-label):not(.wp-block-button__link):not(.elementor-button) {
	font-size: 1rem !important;
}
/* Sur-titres : 12 px, capitales espacées, une seule valeur */
.bn-section-label,
main p[style*="uppercase" i][style*="font-size:0.7" i],
main p[style*="uppercase" i][style*="font-size:0.8" i] {
	font-size: 0.75rem !important;
	letter-spacing: 0.2em;
}

/* Titres : 56 / 38 / 22 px sur ordinateur, 36 / 28 / 20 px sur téléphone */
@media (max-width: 767px) {
	.elementor-widget-heading h1.elementor-heading-title,
	main h1.wp-block-heading,
	main h1.wp-block-post-title {
		font-size: 2.25rem !important;
		line-height: 1.15;
	}
	.elementor-widget-heading h2.elementor-heading-title,
	.elementor-widget-text-editor h2,
	main h2.wp-block-heading {
		font-size: 1.75rem !important;
		line-height: 1.2;
	}
	.elementor-widget-heading h3.elementor-heading-title,
	.elementor-widget-text-editor h3,
	main h3.wp-block-heading {
		font-size: 1.25rem !important;
	}
}
h1, h2, h3, .elementor-heading-title {
	text-wrap: balance;
}
main p {
	text-wrap: pretty;
}

/* --- 10. Bandeau des marques : pause au survol, au focus et par bouton (WCAG 2.2.2) --- */
.bn-marquee {
	position: relative;
}
.bn-marquee:hover .bn-marquee-inner,
.bn-marquee:focus-within .bn-marquee-inner,
.bn-marquee.is-paused .bn-marquee-inner {
	animation-play-state: paused;
}
.bn-marquee-item,
p.bn-marquee-item {
	color: var(--bn-or-texte) !important;
}
.bn-marquee-toggle {
	display: flex;
	align-items: center;
	margin: 0.75rem auto 0;
	min-height: 44px;
	padding: 0 1.25rem;
	border: 1px solid var(--wp--preset--color--border);
	border-radius: 999px;
	background: transparent;
	color: var(--wp--preset--color--secondary);
	font: 500 0.75rem/1 var(--wp--preset--font-family--body);
	letter-spacing: 0.12em;
	text-transform: uppercase;
	cursor: pointer;
}
@media (prefers-reduced-motion: reduce) {
	.bn-marquee {
		white-space: normal;
	}
	.bn-marquee-inner {
		animation: none !important;
		flex-wrap: wrap;
		justify-content: center;
		row-gap: 1rem;
		width: 100%;
	}
	.bn-marquee-toggle {
		display: none;
	}
}

/* --- 11. Contenu jamais masqué en attendant le JavaScript ---
   Le garde anti-flash de functions.php (body à opacité 0 jusqu'au chargement des
   polices) retardait l'affichage du titre de l'accueil (LCP). Les polices sont
   en font-display: swap : la page s'affiche tout de suite. */
body:not(.bn-ready),
body.bn-ready {
	opacity: 1 !important;
	animation: none !important;
	transition: none !important;
}

/* --- 12. Recherche : le message « Aucun résultat » ne s'affiche que sans résultat --- */
main:has(.wp-block-post) .bn-no-results {
	display: none;
}

/* --- 13. Mouvement réduit --- */
@media (prefers-reduced-motion: reduce) {
	html {
		scroll-behavior: auto;
	}
	.bn-scroll-indicator__chevron {
		animation: none;
	}
}

/* --- 14. Doré écrit en dur dans le contenu (couleur du préréglage « primary » ou #C4956A
   posée en style) : passe à l'or texte sur fond clair. Le lot B retire ces couleurs du
   contenu ; cette règle garde le site lisible en attendant. Fond sombre : or clair. --- */
main :is([style*="color:var(--wp--preset--color--primary)" i], [style*="color: var(--wp--preset--color--primary)" i], [style*="color:#C4956A" i], [style*="color: #C4956A" i], [style*="color:#c4956a" i]):not([style*="background-color:var(--wp--preset--color--primary)" i]):not([style*="background-color:#C4956A" i]):not([style*="background:#C4956A" i]) {
	color: var(--bn-or-texte) !important;
}
main :is(.wp-block-cover.is-dark, .has-secondary-background-color, .has-black-background-color, .bn-section-green, .bn-on-dark) :is([style*="color:var(--wp--preset--color--primary)" i], [style*="color:#C4956A" i], [style*="color: #C4956A" i]) {
	color: var(--bn-or-clair) !important;
}
.bn-google-rating-badge p strong {
	color: var(--bn-or-texte);
}

/* --- 15. Tiroir du mini-panier WooCommerce fermé : hors de l'écran ET hors du clavier
   (débordement horizontal de 3 px à 390 px, éléments focalisables sous aria-hidden). --- */
.wc-block-components-drawer__screen-overlay--is-hidden {
	visibility: hidden;
}

/* Bouton RDV de l'en-tête : espace entre « Prendre » et « RDV » (le bouton est un flex),
   et aucun halo (le style de bloc d'origine en posait un). */
.bn-rdv-long {
	margin-right: 0.35em;
}
.wp-block-button.is-style-bn-cta-rdv .wp-block-button__link,
.wp-block-button.is-style-bn-cta-rdv .wp-block-button__link:hover {
	box-shadow: none;
}

/* Pied de page : marges latérales (le padding global était écrasé à 0) et liens légaux */
.bn-footer {
	padding-left: clamp(1rem, 4vw, 1.5rem);
	padding-right: clamp(1rem, 4vw, 1.5rem);
}
.bn-footer-legal {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 0 1.25rem;
}
.bn-footer-bottom .bn-footer-legal a {
	padding-block: 0.6rem;
	display: inline-block;
}

/* --- Voiles des heroes : une seule valeur, plus légère (0,65 au lieu de 0,75 à 0,8).
   Mesuré sur 18 pages à 390 et 1440 px (zone la plus claire sous chaque ligne) :
   texte blanc 4,5:1 et plus partout ; les sur-titres dorés passent en or clair
   (navigation.js) pour tenir 4,5:1. Plus clair que 0,65, plusieurs photos claires
   (contact, bons cadeaux, modelages) font tomber les sur-titres sous 3:1. */
/* Le hero est la première ou la deuxième section (la première sert parfois à injecter du CSS, masquée) */
.elementor > .elementor-top-section:nth-child(-n+2) > .elementor-background-overlay {
	opacity: 0.65 !important;
}
.wp-block-cover.bn-hero > .wp-block-cover__background {
	opacity: 0.7 !important;
}

/* Bon cadeau : petits textes dorés lisibles (badge, sous-titre) */
.bn-gift-hero__badge {
	color: var(--bn-or-texte) !important;
	border-color: var(--bn-or-texte) !important;
}
.bn-gift-hero__subtitle {
	color: #6B6B6B !important;
}

/* Grilles écrites en style dans le contenu (repeat(3,1fr), repeat(4,1fr)…) :
   une colonne sur téléphone, deux sur tablette, pour ne jamais déborder. */
@media (max-width: 768px) {
	main [style*="grid-template-columns:repeat(" i],
	main [style*="grid-template-columns: repeat(" i] {
		grid-template-columns: 1fr !important;
	}
	main div:not(.bn-testimonials-grid) > .bn-testimonial-card {
		min-width: 0;
		max-width: none;
	}
}
@media (min-width: 769px) and (max-width: 1024px) {
	main [style*="grid-template-columns:repeat(4" i],
	main [style*="grid-template-columns: repeat(4" i] {
		grid-template-columns: repeat(2, 1fr) !important;
	}
}
/* Photos plus claires mesurées sous le texte (accueil, bons cadeaux, modelages) : voile 0,75 */
body.home .elementor > .elementor-top-section:nth-child(-n+2) > .elementor-background-overlay,
body.page-id-418 .elementor > .elementor-top-section:nth-child(-n+2) > .elementor-background-overlay,
body.page-id-412 .elementor > .elementor-top-section:nth-child(-n+2) > .elementor-background-overlay {
	opacity: 0.75 !important;
}

/* Bandeau du haut : séparateurs à une distance franche (12 px au moins) */
.bn-topbar-content {
	gap: 0.75rem;
}
/* Indicateur « Défiler » : un seul chevron, à 48 px du bas du hero */
.bn-scroll-indicator {
	bottom: 3rem;
}
.bn-scroll-indicator__chevron + .bn-scroll-indicator__chevron {
	display: none;
}

/* Cibles tactiles : boutons et liens légaux à 44 px de haut au moins */
.elementor-button,
.wp-block-button__link,
.woocommerce .button {
	min-height: 44px;
}
.elementor-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
}
.bn-footer-bottom .bn-footer-legal a {
	padding-block: 0.75rem;
	line-height: 1.4;
}

/* --- Indicateur « Défiler » dans le premier écran (retour cliente du 04/03) ---
   Les heros pleine hauteur faisaient 100vh SOUS l'en-tête fixe : leur bas, et l'indicateur
   posé à 48 px de ce bas, tombaient sous la ligne de flottaison (905 px sur un écran de 900).
   Le hero qui porte l'indicateur prend la hauteur de l'écran moins l'en-tête réel
   (--bn-header-h, posé par navigation.js) : l'indicateur reste visible sans défiler.
   Contrôle : getBoundingClientRect().bottom de .bn-scroll-indicator < innerHeight,
   à 1440 x 900, 1366 x 768 et 390 x 844. */
.elementor-top-section.elementor-section-height-min-height:has(.bn-scroll-indicator) > .elementor-container {
	min-height: calc(100vh - var(--bn-header-h, 101px)) !important;
	min-height: calc(100svh - var(--bn-header-h, 101px)) !important;
}
@media (max-width: 767px) {
	.bn-scroll-indicator {
		bottom: 1.5rem;
	}
}

/* --- Formulaire de contact (Contact Form 7, n° 12) ---
   Champs pleine largeur de 48 px, liste au chevron doré, case RGPD de 22 px dans une
   ligne cliquable de 44 px, bouton doré à texte #2C2C2C comme les boutons du site.
   Contrôle : hauteur des champs et du bouton >= 44 px à 390 et 1440 px. */
.wpcf7 .bn-form-grid {
	display: grid;
	gap: 1.25rem;
}
.wpcf7 .bn-form-grid p {
	margin: 0;
}
.wpcf7 .bn-form-row br {
	display: none;
}
.wpcf7 .bn-form-row > p > label,
.wpcf7 .bn-form-row > label {
	display: block;
	margin-bottom: 0.4rem;
	font-family: var(--wp--preset--font-family--body, "DM Sans", sans-serif);
	font-size: 0.9375rem;
	font-weight: 500;
	color: #2C2C2C;
}
.wpcf7 .wpcf7-form-control-wrap {
	display: block;
	position: relative;
}
.wpcf7 input[type="text"],
.wpcf7 input[type="email"],
.wpcf7 input[type="tel"],
.wpcf7 select,
.wpcf7 textarea {
	box-sizing: border-box;
	display: block;
	width: 100%;
	min-height: 48px;
	margin: 0;
	padding: 0.75rem 1rem;
	font-family: var(--wp--preset--font-family--body, "DM Sans", sans-serif);
	font-size: 1rem; /* 16 px : pas de zoom automatique sur iPhone */
	line-height: 1.5;
	color: #2C2C2C;
	background-color: #FAF6F1;
	border: 1px solid #D8C9B8;
	border-radius: var(--bn-radius-md, 8px);
	box-shadow: none;
	transition: border-color 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease;
}
.wpcf7 textarea {
	min-height: 160px;
	resize: vertical;
}
.wpcf7 select {
	-webkit-appearance: none;
	appearance: none;
	padding-right: 2.75rem;
	cursor: pointer;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%238C6440' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 1rem center;
	background-size: 14px 14px;
}
.wpcf7 input[type="text"]:hover,
.wpcf7 input[type="email"]:hover,
.wpcf7 input[type="tel"]:hover,
.wpcf7 select:hover,
.wpcf7 textarea:hover {
	border-color: #C4956A;
}
.wpcf7 input[type="text"]:focus,
.wpcf7 input[type="email"]:focus,
.wpcf7 input[type="tel"]:focus,
.wpcf7 select:focus,
.wpcf7 textarea:focus {
	outline: none;
	background-color: #FFFFFF;
	border-color: #8C6440;
	box-shadow: 0 0 0 3px rgba(196, 149, 106, 0.35);
}
.wpcf7 .bn-form-note {
	font-size: 0.875rem;
	color: #6B6B6B;
}

/* Case RGPD */
.wpcf7 .bn-form-consent .wpcf7-list-item {
	display: block;
	margin: 0;
}
.wpcf7 .bn-form-consent .wpcf7-list-item > label {
	display: flex;
	align-items: flex-start;
	gap: 0.75rem;
	min-height: 44px;
	padding: 0.25rem 0;
	font-size: 0.9375rem;
	line-height: 1.55;
	color: #3A3A3A;
	cursor: pointer;
}
.wpcf7 .bn-form-consent input[type="checkbox"] {
	flex: 0 0 auto;
	width: 22px;
	height: 22px;
	margin: 0.1rem 0 0;
	accent-color: #8C6440;
	cursor: pointer;
}
.wpcf7 .bn-form-consent input[type="checkbox"]:focus-visible {
	outline: 2px solid var(--bn-focus, #2C2C2C);
	outline-offset: 2px;
}
.wpcf7 .bn-form-consent a {
	color: #8C6440;
	text-decoration: underline;
	text-underline-offset: 2px;
}

/* Bouton d'envoi : même bouton doré que le reste du site */
.wpcf7 .bn-form-submit p {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.75rem;
}
.wpcf7 input[type="submit"].bn-btn-submit,
.wpcf7 .wpcf7-submit {
	-webkit-appearance: none;
	appearance: none;
	min-height: 48px;
	padding: 0.875rem 2.25rem;
	font-family: var(--wp--preset--font-family--body, "DM Sans", sans-serif);
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #2C2C2C;
	background: #C4956A;
	border: 0;
	border-radius: var(--bn-radius-pill, 999px);
	cursor: pointer;
	transition: transform 0.3s ease, box-shadow 0.3s ease, background-color 0.3s ease;
}
.wpcf7 .wpcf7-submit:hover:not(:disabled),
.wpcf7 .wpcf7-submit:focus-visible {
	background: #D2A57C;
	transform: translateY(-2px);
	box-shadow: 0 6px 25px rgba(196, 149, 106, 0.4);
}
.wpcf7 .wpcf7-submit:focus-visible {
	outline: 2px solid var(--bn-focus, #2C2C2C);
	outline-offset: 3px;
}
.wpcf7 .wpcf7-submit:disabled {
	opacity: 0.55;
	cursor: not-allowed;
}
@media (max-width: 767px) {
	.wpcf7 .wpcf7-submit {
		width: 100%;
	}
}
.wpcf7 .wpcf7-spinner {
	margin: 0;
}

/* Erreurs et messages de retour */
.wpcf7 .wpcf7-not-valid {
	border-color: #B3261E !important;
	background-color: #FDF6F5;
}
.wpcf7 .wpcf7-not-valid:focus {
	box-shadow: 0 0 0 3px rgba(179, 38, 30, 0.2);
}
.wpcf7 .wpcf7-not-valid-tip {
	display: block;
	margin-top: 0.35rem;
	font-size: 0.875rem;
	color: #B3261E;
}
.wpcf7 form .wpcf7-response-output {
	margin: 1.5rem 0 0;
	padding: 0.875rem 1.125rem;
	font-size: 0.9375rem;
	line-height: 1.5;
	border: 1px solid #D8C9B8;
	border-left-width: 4px;
	border-radius: var(--bn-radius-md, 8px);
	background: #FAF6F1;
	color: #2C2C2C;
}
.wpcf7 form.sent .wpcf7-response-output {
	border-color: #4F7A4A;
	background: #F2F7F1;
}
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.failed .wpcf7-response-output,
.wpcf7 form.spam .wpcf7-response-output {
	border-color: #B3261E;
	background: #FDF6F5;
}
/* Carte du formulaire sur téléphone : 24 px de marge intérieure au lieu de 40, champs de 302 px à 390 */
@media (max-width: 767px) {
	.elementor-column:has(.wpcf7) > .elementor-widget-wrap.elementor-element-populated {
		padding: 28px 24px !important;
	}
}

/* --- /modelages-du-monde/ : « Rituels et soins enveloppants » et « Modelages spécifiques » ---
   Le titre et les trois cartes étaient sur une seule rangée (titre 603 px, cartes de 199 px à 1440).
   Le titre passe sur sa propre ligne, les trois cartes se partagent la largeur (390 px chacune à 1440). */
@media (min-width: 768px) {
	body.page-id-412 .elementor-element-3416a75 > .elementor-container,
	body.page-id-412 .elementor-element-d82c8d1 > .elementor-container {
		flex-wrap: wrap;
	}
	body.page-id-412 .elementor-element-3416a75 > .elementor-container > .elementor-column:first-child,
	body.page-id-412 .elementor-element-d82c8d1 > .elementor-container > .elementor-column:first-child {
		width: 100% !important;
	}
	body.page-id-412 .elementor-element-3416a75 > .elementor-container > .elementor-column:not(:first-child),
	body.page-id-412 .elementor-element-d82c8d1 > .elementor-container > .elementor-column:not(:first-child) {
		width: 33.333% !important;
	}
}
/* Cartes de même hauteur dans une rangée */
body.page-id-412 :is(.elementor-element-3416a75, .elementor-element-d82c8d1) > .elementor-container > .elementor-column:not(:first-child) > .elementor-widget-wrap {
	align-content: stretch;
	align-items: stretch;
}
body.page-id-412 :is(.elementor-element-3416a75, .elementor-element-d82c8d1) > .elementor-container > .elementor-column:not(:first-child) > .elementor-widget-wrap > .elementor-widget {
	align-self: stretch;
	width: 100%;
}
body.page-id-412 :is(.elementor-element-3416a75, .elementor-element-d82c8d1) > .elementor-container > .elementor-column:not(:first-child) > .elementor-widget-wrap > .elementor-widget > div[style] {
	box-sizing: border-box;
	height: 100%;
}

/* Lien vers la carte des soins et tarifs, en pied du méga-menu (06/10/2026) */
.bn-mega-panel__tarifs {
	grid-column: 1 / -1;
	margin: 1rem 0 0;
	padding-top: 1rem;
	border-top: 1px solid var(--wp--preset--color--border, #E5DDD4);
	font-family: var(--wp--preset--font-family--body);
	font-size: 0.875rem;
	font-weight: 500;
}
.bn-mega-panel__tarifs a {
	color: #8C6440;
	text-decoration: underline;
	text-decoration-color: #C4956A;
	text-underline-offset: 4px;
}
.bn-mega-panel__tarifs a:hover,
.bn-mega-panel__tarifs a:focus {
	color: var(--wp--preset--color--secondary, #2C2C2C);
}
@media (max-width: 1024px) {
	.bn-mega-panel__tarifs {
		margin: 0.5rem 0 0;
		padding: 0.75rem 0.5rem 0;
	}
}

/* Méga-menu : intertitres de volet (Silhouette et minceur : Technologies, puis Soins manuels) */
.bn-mega-panel__group {
	margin: 12px 0 4px;
	padding: 0 12px;
	font-family: 'DM Sans', sans-serif;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: #8C6440;
}
.bn-mega-panel__items > .bn-mega-panel__group:first-child { margin-top: 0; }

/* ==== DÉBUT : pages en widgets natifs (08/10/2026), bloc écrit par la conversion ==== */
/* Agent conversion-1 (accueil, tarifs, contact, institut, massages, soins corps, soins signature, bons cadeaux, amincissement).
   Règles communes, puis apparence des widgets natifs (classes bn-n-xxxxxx relevées sur le rendu d'origine).
   Ici et pas dans le CSS de page : un enregistrement par la gérante change le signe supérieur en entité dans le CSS de page. */
/* Sections internes créées par la conversion : pas de retrait latéral (le kit Elementor en met 20 px sur téléphone à toutes les sections). */
.elementor-section.elementor-inner-section.bn-sous-section { padding-left: 0 !important; padding-right: 0 !important; }

/* Boutons dorés (bn-btn-primary) : reprise de la feuille posée auparavant dans une section cachée de chaque page. */
.bn-btn-primary .elementor-button{position:relative!important;overflow:hidden!important;transition:transform 0.3s ease,box-shadow 0.3s ease!important;}
.bn-btn-primary .elementor-button .elementor-button-content-wrapper{position:relative!important;z-index:1!important;}
.bn-btn-primary .elementor-button::after{content:""!important;position:absolute!important;inset:0!important;background:linear-gradient(135deg,rgb(166,123,91) 0%,rgb(139,105,20) 100%)!important;opacity:0!important;transition:opacity 0.3s ease!important;pointer-events:none!important;}
.bn-btn-primary .elementor-button:hover::after,.bn-btn-primary .elementor-button:focus::after{opacity:1!important;}
.bn-btn-primary .elementor-button:hover,.bn-btn-primary .elementor-button:focus{transform:translateY(-2px)!important;box-shadow:rgba(196,149,106,0.4) 0px 6px 25px!important;}

/* Cartes catégories de l'accueil (bn-cat-*) : section interne, une colonne par carte, image en fond, voile, titre et lien. */
.elementor-section.bn-cat-cartes > .elementor-container {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1.5rem;
	max-width: none;
}
.elementor-section.bn-cat-cartes > .elementor-container > .elementor-column { width: auto !important; min-width: 0; }
.elementor-column.bn-cat-carte > .elementor-widget-wrap {
	position: relative;
	overflow: hidden;
	border-radius: var(--bn-radius-lg);
	aspect-ratio: 3 / 4;
	display: flex;
	flex-direction: column;
	flex-wrap: nowrap;
	justify-content: flex-end;
	align-content: stretch;
	padding: 2rem 1.75rem !important;
	transition: var(--bn-transition-slow);
	cursor: pointer;
}
.elementor-column.bn-cat-carte > .elementor-widget-wrap:hover {
	transform: translateY(-6px);
	box-shadow: var(--bn-shadow-strong);
}
.elementor-column.bn-cat-carte > .elementor-widget-wrap::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
	pointer-events: none;
	background: linear-gradient(180deg, rgba(0,0,0,0.05) 0%, rgba(0,0,0,0.55) 70%, rgba(0,0,0,0.75) 100%);
	transition: var(--bn-transition);
}
.elementor-column.bn-cat-carte > .elementor-widget-wrap:hover::before {
	background: linear-gradient(180deg, rgba(0,0,0,0.1) 0%, rgba(0,0,0,0.6) 60%, rgba(0,0,0,0.8) 100%);
}
.elementor .elementor-element.bn-cat-img { position: absolute !important; inset: 0; margin: 0 !important; width: 100% !important; z-index: 0; line-height: 0; }
.elementor-element.bn-cat-img a { display: block; height: 100%; }
.elementor-element.bn-cat-img img { width: 100% !important; height: 100% !important; max-width: none !important; object-fit: cover; transition: transform 0.8s cubic-bezier(0.4, 0, 0.2, 1); border-radius: 0 !important; }
.elementor-column.bn-cat-carte > .elementor-widget-wrap:hover .bn-cat-img img { transform: scale(1.06); }
.elementor .elementor-element.bn-cat-titre { position: static !important; z-index: 2; margin: 0 0 0.75rem !important; width: 100%; }
.elementor-element.bn-cat-titre .elementor-heading-title {
	position: relative !important; z-index: 2 !important;
	font-family: var(--wp--preset--font-family--heading, 'Playfair Display', serif) !important;
	font-size: clamp(1.25rem, 2vw, 1.6rem) !important;
	font-weight: 600 !important;
	color: #ffffff !important;
	line-height: 1.2 !important;
	margin: 0 !important;
}
.elementor-element.bn-cat-titre .elementor-heading-title a { color: inherit; }
.elementor-element.bn-cat-titre .elementor-heading-title a::after { content: ""; position: absolute; inset: 0; z-index: 3; }
.elementor-element.bn-cat-titre .elementor-heading-title a { position: static; }
.elementor .elementor-element.bn-cat-lien { position: relative; z-index: 2; margin: 0 !important; width: 100%; }
.elementor-element.bn-cat-lien p {
	display: flex !important;
	width: fit-content;
	align-items: center !important;
	gap: 0.5rem !important;
	margin: 0 !important;
	font-family: var(--wp--preset--font-family--body, 'DM Sans', sans-serif) !important;
	font-size: 0.8rem !important;
	font-weight: 600 !important;
	letter-spacing: 0.1em !important;
	text-transform: uppercase !important;
	color: #E8C5A8 !important;
	transition: var(--bn-transition) !important;
}
.elementor-element.bn-cat-lien p::after { content: '→'; transition: transform 0.3s ease; }
.elementor-column.bn-cat-carte > .elementor-widget-wrap:hover .bn-cat-lien p { color: #ffffff; }
.elementor-column.bn-cat-carte > .elementor-widget-wrap:hover .bn-cat-lien p::after { transform: translateX(4px); }
@media (max-width: 1024px) {
	.elementor-element.bn-cat-lien p { min-height: 44px; }
}
@media (max-width: 768px) {
	.elementor-section.bn-cat-cartes > .elementor-container { grid-template-columns: minmax(0, 1fr); gap: 1rem; }
	.elementor-column.bn-cat-carte > .elementor-widget-wrap { aspect-ratio: 16 / 9; }
}
@media (min-width: 769px) and (max-width: 1024px) {
	.elementor-section.bn-cat-cartes > .elementor-container { gap: 1rem; }
}

/* Bandeau des marques : liste éditable (widget Éditeur de texte à la classe bn-marquee), défilement par animations.js. */
.elementor-widget-text-editor.bn-marquee > ul {
	display: inline-flex;
	gap: 3rem;
	margin: 0;
	padding: 0;
	list-style: none;
	animation: bn-marquee 30s linear infinite;
}
.elementor-widget-text-editor.bn-marquee:hover > ul,
.elementor-widget-text-editor.bn-marquee:focus-within > ul,
.elementor-widget-text-editor.bn-marquee.is-paused > ul { animation-play-state: paused; }
.elementor-widget-text-editor.bn-marquee > ul > li {
	font-family: var(--wp--preset--font-family--heading);
	font-size: clamp(1.5rem, 3vw, 2.5rem);
	font-weight: 300;
	color: var(--bn-or-texte) !important;
	white-space: nowrap;
	display: flex;
	align-items: center;
	gap: 3rem;
	margin: 0;
	padding: 0;
}
.elementor-widget-text-editor.bn-marquee > ul > li::after {
	content: '✦';
	color: var(--wp--preset--color--primary-light);
	font-size: 0.75em;
}
@media (prefers-reduced-motion: reduce) {
	.elementor-widget-text-editor.bn-marquee > ul {
		animation: none !important;
		flex-wrap: wrap;
		justify-content: center;
		row-gap: 1rem;
		width: 100%;
	}
}

/* Carte Google de /contact/ (widget natif Google Maps) */
.elementor-widget-google_maps.bn-carte-google iframe { display: block; }

/* Logo Bloomea de /technologie-faciale/fontaine-bloomea/ (colonne de 228 px) : au-dessus de « Made in France », à ses
   140 px d'origine. À côté du texte, la piste « auto » de la grille l'écrasait à 39 px. Le dessin occupe 55 % du PNG
   (vide de 22,5 % à gauche, 21,7 % en haut, 21,8 % en bas) : marges négatives pour caler l'encre sur le bord du texte. */
.elementor .elementor-element.elementor-element-35c6a84.bn-n-d9d4c1,
.elementor .elementor-element.elementor-element-68685a3.bn-n-6f4b2e,
.elementor .elementor-element.elementor-element-c9f39e5.bn-n-3e3ba2 { grid-column: 1 / -1 !important; grid-row: auto !important; align-self: start !important; }
.elementor .elementor-element.elementor-element-35c6a84.bn-n-d9d4c1 { width: 140px; margin: -15px 0 -15px -32px !important; }
.elementor-element.bn-n-d9d4c1.bn-n-d9d4c1 img { width: 140px !important; max-width: none !important; }

/* Vignettes sous la photo d'une carte de soin (Hydrajet et Photomodulation LED de /technologie-faciale/, photos
   envoyées le 08/10/2026) : une rangée de 120 px de haut, à gauche, 8 px sous la photo et entre les vignettes.
   Chaque image garde son format et n'est jamais agrandie (428 px au moins pour 120 affichés, 309 pour 227). */
.elementor-section.bn-vignettes-soin { margin: 8px 0 0; }
.elementor-section.bn-vignettes-soin > .elementor-container { display: flex; flex-wrap: nowrap; gap: 8px; justify-content: flex-start; }
.elementor-section.bn-vignettes-soin > .elementor-container > .elementor-column { width: auto !important; flex: none; }
/* La carte habille toute colonne qu'elle contient (.bn-n-0b6a4e .elementor-widget-wrap : fond, bordure, arrondi,
   ombre, marge de 10 px) : les colonnes des vignettes restent nues, calées sur le bord gauche de la photo. */
.elementor-section.bn-vignettes-soin.bn-vignettes-soin .elementor-widget-wrap { padding: 0 !important; margin: 0 !important; background: none !important; border: 0 !important; border-radius: 0 !important; box-shadow: none !important; overflow: visible !important; }
.elementor-section.bn-vignettes-soin .elementor-widget { margin: 0 !important; }
.elementor-widget-image.bn-vignette-img { line-height: 0; }
.elementor-widget-image.bn-vignette-img img { display: block; height: 120px; width: auto; max-width: none; object-fit: cover; }

/* Encart laser de /laser-diode/ (bn-laser-*) : texte, grande photo, deux photos côte à côte (ancien bloc HTML et sa feuille de style). */
.elementor-section.bn-laser-encart > .elementor-container {
	display: grid;
	grid-template-columns: minmax(0, 1fr) calc((320px - 12px) * 1.5027 / 2.5027) calc((320px - 12px) / 2.5027);
	column-gap: 12px;
	row-gap: 12px;
	align-items: center;
	max-width: 860px;
	margin: 0 auto;
}
.elementor-section.bn-laser-encart > .elementor-container > .elementor-column { width: auto !important; min-width: 0; }
.elementor-column.bn-laser-c1 { grid-column: 1; grid-row: 1 / span 2; margin-right: 36px; }
.elementor-column.bn-laser-c2 { grid-column: 2 / span 2; grid-row: 1; }
.elementor-column.bn-laser-c3 { grid-column: 2; grid-row: 2; }
.elementor-column.bn-laser-c4 { grid-column: 3; grid-row: 2; }
.elementor-widget-text-editor.bn-laser-texte p { color: #6B6B6B; font-size: 16px; line-height: 1.8; margin: 0; text-align: left; }
.elementor-widget-image.bn-laser-img { line-height: 0; text-align: left; }
.elementor-widget-image.bn-laser-img img { display: block; width: 100%; height: auto; max-width: 100%; border-radius: 12px; }
.bn-laser-c3 .bn-laser-img img { aspect-ratio: 275 / 183; }
.bn-laser-c4 .bn-laser-img img { aspect-ratio: 1 / 1; }
@media (max-width: 767px) {
	/* Les 12 px entre les deux petites photos sont une piste, pas un écart de colonnes : avec column-gap, les deux
	   pistes de bord ajoutaient 24 px et la grille débordait de 14 px à 390 px (344 px dans 330). */
	.elementor-section.bn-laser-encart .elementor-container {
		grid-template-columns: minmax(0, 1fr) calc((320px - 12px) * 1.5027 / 2.5027) 12px calc((320px - 12px) / 2.5027) minmax(0, 1fr);
		column-gap: 0;
		max-width: 700px;
	}
	.elementor-column.bn-laser-c1 { grid-column: 1 / -1; grid-row: 1; margin-right: 0; margin-bottom: 20px; }
	.elementor-column.bn-laser-c2 { grid-column: 2 / span 3; grid-row: 2; }
	.elementor-column.bn-laser-c3 { grid-column: 2; grid-row: 3; }
	.elementor-column.bn-laser-c4 { grid-column: 4; grid-row: 3; }
	.elementor-widget-text-editor.bn-laser-texte p { text-align: center; }
}

/* Carte des soins et tarifs (/tarifs/) : sections internes natives. Les articles de prix viennent de [bn_tarifs gabarit="tarifs"]
   (feuille bn-t-* imprimée par l'extension). Chaque section porte la classe bn-tarifs, ancienne enveloppe de la page. */
.elementor-section.elementor-inner-section.bn-tarifs { max-width: 1200px; margin-left: auto !important; margin-right: auto !important; padding: 0 24px !important; width: 100%; font-family: "DM Sans", sans-serif; color: #2C2C2C; font-size: 16px; line-height: 1.7; }
.bn-tarifs .elementor-widget { --kit-widget-spacing: 0px !important; }
.bn-tarifs .elementor-widget-text-editor, .bn-tarifs .elementor-widget-text-editor p { font-family: "DM Sans", sans-serif; font-size: 16px; line-height: 1.7; color: #2C2C2C; margin: 0; padding: 0; }
.bn-tarifs .elementor-widget-text-editor ul { margin: 0; padding: 0; list-style: none; }
.bn-tarifs .elementor-widget-text-editor a { color: #8C6440 !important; text-decoration: underline; text-decoration-color: #C4956A; text-underline-offset: 4px; text-decoration-thickness: 1px; }
.bn-tarifs .elementor-widget-text-editor a:hover, .bn-tarifs .elementor-widget-text-editor a:focus { color: #2C2C2C !important; }
.elementor-section.bn-t-sommaire-n > .elementor-container { display: grid; grid-template-columns: repeat(4, 1fr); gap: 32px 48px; padding: 64px 0; max-width: none; }
.elementor-section.bn-t-sommaire-n > .elementor-container > .elementor-column,
.elementor-section.bn-t-sec-n > .elementor-container > .elementor-column { width: auto !important; min-width: 0; }
.bn-t-somcol p, .bn-t-sur-w p { font-size: 13px !important; font-weight: 600; letter-spacing: 0.2em; text-transform: uppercase; color: #8C6440 !important; line-height: 1.4 !important; }
.bn-t-somcol li { margin: 8px 0 0; line-height: 1.5; }
.elementor-section.bn-t-sec-n { scroll-margin-top: 120px; }
.elementor-section.bn-t-sec-n > .elementor-container { display: grid; grid-template-columns: minmax(0, 4fr) minmax(0, 8fr); gap: 48px; padding: 64px 0; border-top: 1px solid #E5DDD4; max-width: none; }
.elementor-column.bn-t-gauche-n { align-self: start; }
.bn-t-titre-w { margin-top: 4px !important; }
.elementor-widget-heading.bn-t-titre-w h2.elementor-heading-title { font-family: "Playfair Display", serif !important; font-size: 32px !important; font-weight: 600 !important; line-height: 1.2 !important; color: #2C2C2C !important; text-wrap: balance; margin: 0; }
.bn-t-intro-w { margin-top: 24px !important; }
.bn-t-intro-w p, .bn-t-texte-w p { color: #6B6B6B !important; text-wrap: pretty; }
.bn-t-lien-w { margin-top: 16px !important; }
.elementor-widget-image.bn-t-vignette-w { margin-top: 48px !important; max-width: 220px; text-align: left; line-height: 0; }
.bn-t-vignette-w img { width: 100% !important; height: auto !important; display: block; border-radius: 12px; }
.bn-t-sub-w { margin-top: 48px !important; }
.bn-t-droite-n > .elementor-widget-wrap > .bn-t-sub-w:first-child { margin-top: 0 !important; }
.elementor-widget-heading.bn-t-sub-w h3.elementor-heading-title { font-family: "DM Sans", sans-serif !important; font-size: 13px !important; font-weight: 600 !important; letter-spacing: 0.2em; text-transform: uppercase; color: #8C6440 !important; line-height: 1.4 !important; padding-bottom: 12px; border-bottom: 1px solid #E5DDD4; margin: 0; }
.bn-t-sub-w + .bn-t-texte-w { margin-top: 16px !important; }
.bn-t-note-w { margin-top: 24px !important; }
.bn-t-note-w p { color: #8C6440 !important; text-wrap: pretty; }
.bn-t-items-w .elementor-shortcode { font-family: "DM Sans", sans-serif; font-size: 16px; line-height: 1.7; color: #2C2C2C; }
.bn-t-items-w p, .bn-t-items-w ul, .bn-t-items-w h3 { margin: 0; padding: 0; }
.bn-t-items-w ul { list-style: none; }
@media (max-width: 1024px) { .elementor-section.bn-t-sommaire-n > .elementor-container { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 900px) { .elementor-section.bn-t-sec-n > .elementor-container { grid-template-columns: 1fr; gap: 24px; padding: 48px 0; } .elementor-section.bn-t-sec-n > .elementor-container > .elementor-column { min-width: auto; } }
@media (min-width: 901px) { #technologies-corps .bn-t-gauche-n { position: sticky; top: 120px; } }
@media (max-width: 600px) {
	.elementor-section.elementor-inner-section.bn-tarifs { padding: 0 16px !important; }
	.elementor-section.bn-t-sommaire-n > .elementor-container { gap: 24px 16px; padding: 48px 0; }
	.elementor-widget-heading.bn-t-titre-w h2.elementor-heading-title { font-size: 28px !important; }
}

/* /tarifs/ : articles sans prix (titre + texte natifs) et ligne Pressothérapie, mêmes mesures que .bn-t-item */
.bn-t-art-nom, .bn-t-art-ligne { padding-top: 20px !important; }
.elementor-widget-heading.bn-t-art-nom p.elementor-heading-title { font-family: "Playfair Display", serif !important; font-size: 20px !important; font-weight: 600 !important; line-height: 27.2px !important; color: #2C2C2C !important; margin: 0; padding-bottom: 2.9px; }
.bn-t-art-ligne { display: flex; }
.elementor-widget-text-editor.bn-t-art-ligne { display: flex; justify-content: space-between; align-items: baseline; gap: 24px; }
.bn-t-art-ligne p:first-child { flex: 1; min-width: 0; font-family: "Playfair Display", serif !important; font-size: 20px !important; font-weight: 600; line-height: 27.2px !important; color: #2C2C2C !important; }
.bn-t-art-ligne p:last-child { font-family: "Playfair Display", serif !important; font-size: 20px !important; font-weight: 700; color: #8C6440 !important; white-space: nowrap; font-variant-numeric: lining-nums tabular-nums; text-align: right; }
.bn-t-art-ligne em { font-family: "DM Sans", sans-serif; font-size: 13px; font-weight: 400; font-style: normal; color: #6B6B6B; }
.bn-t-art-desc { margin-top: 4px !important; padding-bottom: 20px !important; border-bottom: 1px solid #E5DDD4; }
.bn-t-art-desc p { color: #6B6B6B !important; max-width: 62ch; text-wrap: pretty; }
@media (max-width: 600px) { .elementor-widget-text-editor.bn-t-art-ligne { gap: 16px; } }

/* page 401 */
.bn-n-0d0fe9.bn-n-0d0fe9 > p {font-family:"DM Sans", sans-serif!important;font-size:17px!important;font-weight:400!important;font-style:normal!important;line-height:30.6px!important;color:rgba(255, 255, 255, 0.85)!important;letter-spacing:normal!important;text-transform:none!important;text-align:center!important;text-decoration-line:none!important;margin-top:0px!important;margin-bottom:0px!important;text-wrap:pretty!important}
.bn-n-0d0fe9.bn-n-0d0fe9 {font-family:"DM Sans", sans-serif!important;font-size:17px!important;font-weight:400!important;font-style:normal!important;line-height:30.6px!important;color:rgba(255, 255, 255, 0.85)!important;letter-spacing:normal!important;text-transform:none!important;text-align:center!important;text-decoration-line:none!important}
.bn-n-12e34b.bn-n-12e34b > p {font-family:"DM Sans", sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;line-height:25.6px!important;color:rgb(107, 107, 107)!important;letter-spacing:normal!important;text-transform:none!important;text-align:start!important;text-decoration-line:none!important;margin-top:0px!important;margin-bottom:0px!important;text-wrap:pretty!important}
.bn-n-12e34b.bn-n-12e34b {font-family:"DM Sans", sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;line-height:25.6px!important;color:rgb(107, 107, 107)!important;letter-spacing:normal!important;text-transform:none!important;text-align:start!important;text-decoration-line:none!important}
.bn-n-16437f.bn-n-16437f {border-top-width:2px!important;border-top-style:solid!important;border-top-color:rgb(232, 197, 168)!important;border-right-width:2px!important;border-right-style:solid!important;border-right-color:rgb(232, 197, 168)!important;border-bottom-width:2px!important;border-bottom-style:solid!important;border-bottom-color:rgb(232, 197, 168)!important;border-left-width:2px!important;border-left-style:solid!important;border-left-color:rgb(232, 197, 168)!important;border-top-left-radius:16px!important;border-top-right-radius:16px!important;border-bottom-left-radius:16px!important;border-bottom-right-radius:16px!important;padding-top:8px!important;padding-right:8px!important;padding-bottom:8px!important;padding-left:8px!important;text-align:left!important;line-height:0!important}
.bn-n-16437f.bn-n-16437f img {width:100%!important;height:auto!important;aspect-ratio:3/4!important;object-fit:cover!important;display:block!important;max-width:100%!important}
.bn-n-16f114.bn-n-16f114 {overflow:hidden!important;border-top-left-radius:8px!important;border-top-right-radius:8px!important;border-bottom-left-radius:8px!important;border-bottom-right-radius:8px!important;text-align:left!important;line-height:0!important}
.bn-n-16f114.bn-n-16f114 img {width:100%!important;aspect-ratio:4/5!important;object-fit:cover!important;display:block!important;transition:transform 0.8s cubic-bezier(0.4,0,0.2,1)!important;height:auto!important;max-width:100%!important}
.bn-n-16f114.bn-n-16f114 a {display:block!important}
.bn-n-227b78.bn-n-227b78 > p {font-family:"DM Sans", sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;line-height:25.6px!important;color:rgb(58, 58, 58)!important;letter-spacing:normal!important;text-transform:none!important;text-align:center!important;text-decoration-line:none!important;margin-top:0px!important;margin-bottom:0px!important;text-wrap:pretty!important}
.bn-n-227b78.bn-n-227b78 {font-family:"DM Sans", sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;line-height:25.6px!important;color:rgb(58, 58, 58)!important;letter-spacing:normal!important;text-transform:none!important;text-align:center!important;text-decoration-line:none!important}
.bn-n-22bc5a.bn-n-22bc5a > p {font-family:"DM Sans", sans-serif!important;font-size:16px!important;font-weight:600!important;font-style:normal!important;line-height:25.6px!important;color:rgb(140, 100, 64)!important;letter-spacing:normal!important;text-transform:none!important;text-align:start!important;text-decoration-line:none!important;margin-top:0px!important;margin-bottom:0px!important;text-wrap:pretty!important}
.bn-n-22bc5a.bn-n-22bc5a {font-family:"DM Sans", sans-serif!important;font-size:16px!important;font-weight:600!important;font-style:normal!important;line-height:25.6px!important;color:rgb(140, 100, 64)!important;letter-spacing:normal!important;text-transform:none!important;text-align:start!important;text-decoration-line:none!important}
.bn-n-2a2f92.bn-n-2a2f92 > .elementor-widget-wrap {background-color:rgb(255, 255, 255)!important;border-top-width:2px!important;border-top-style:solid!important;border-top-color:rgb(196, 149, 106)!important;border-right-width:2px!important;border-right-style:solid!important;border-right-color:rgb(196, 149, 106)!important;border-bottom-width:2px!important;border-bottom-style:solid!important;border-bottom-color:rgb(196, 149, 106)!important;border-left-width:2px!important;border-left-style:solid!important;border-left-color:rgb(196, 149, 106)!important;border-top-left-radius:12px!important;border-top-right-radius:12px!important;border-bottom-left-radius:12px!important;border-bottom-right-radius:12px!important;box-shadow:rgba(0, 0, 0, 0.06) 0px 2px 15px 0px!important;padding-top:32px!important;padding-right:24px!important;padding-bottom:32px!important;padding-left:24px!important;margin:10px 10px 10px 10px!important;width:auto!important;flex:1 1 auto!important;min-width:0!important;align-content:flex-start!important}
.bn-n-2a2f92.bn-n-2a2f92 > .elementor-widget-wrap:hover {transform:translateY(-4px)!important;box-shadow:var(--bn-shadow-medium)!important}
.bn-n-3c3504.bn-n-3c3504 > .elementor-container {display:grid!important;grid-template-columns:repeat(3,1fr)!important;justify-content:normal!important;align-items:normal!important;row-gap:24px!important;column-gap:24px!important;max-width:none!important;margin:0!important;width:100%!important;padding-top:0px!important;padding-right:0px!important;padding-bottom:0px!important;padding-left:0px!important}
.bn-n-3c3504.bn-n-3c3504 > .elementor-container > .elementor-column {width:auto!important;min-width:0!important}
@media (max-width: 767px) {
	.bn-n-3c3504.bn-n-3c3504 > .elementor-container {grid-template-columns:minmax(0, 1fr)!important}
}
.bn-n-3c7b0a.bn-n-3c7b0a > .elementor-widget-wrap {background-color:rgb(255, 255, 255)!important;border-top-left-radius:12px!important;border-top-right-radius:12px!important;border-bottom-left-radius:12px!important;border-bottom-right-radius:12px!important;box-shadow:rgba(0, 0, 0, 0.04) 0px 1px 3px 0px, rgba(0, 0, 0, 0.06) 0px 6px 24px 0px!important;padding-top:28px!important;padding-right:24px!important;padding-bottom:28px!important;padding-left:24px!important;transition:transform 0.3s ease,box-shadow 0.3s ease!important;margin:0px 0px 0px 0px!important;width:auto!important;flex:1 1 auto!important;min-width:0!important;align-content:flex-start!important}
.bn-n-3c7b0a.bn-n-3c7b0a > .elementor-widget-wrap:hover {transform:translateY(-4px)!important}
.bn-n-429e9f.bn-n-429e9f > p {font-family:"DM Sans", sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:italic!important;line-height:28px!important;color:rgb(58, 58, 58)!important;letter-spacing:normal!important;text-transform:none!important;text-align:start!important;text-decoration-line:none!important;margin-top:0px!important;margin-bottom:0px!important;text-wrap:pretty!important}
.bn-n-429e9f.bn-n-429e9f {font-family:"DM Sans", sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:italic!important;line-height:28px!important;color:rgb(58, 58, 58)!important;letter-spacing:normal!important;text-transform:none!important;text-align:start!important;text-decoration-line:none!important}
.bn-n-4fb96e.bn-n-4fb96e > p {font-family:"DM Sans", sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;line-height:25.6px!important;color:rgba(255, 255, 255, 0.6)!important;letter-spacing:normal!important;text-transform:none!important;text-align:center!important;text-decoration-line:none!important;margin-top:0px!important;margin-bottom:0px!important;text-wrap:pretty!important}
.bn-n-4fb96e.bn-n-4fb96e {font-family:"DM Sans", sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;line-height:25.6px!important;color:rgba(255, 255, 255, 0.6)!important;letter-spacing:normal!important;text-transform:none!important;text-align:center!important;text-decoration-line:none!important}
.bn-n-5ae7ba.bn-n-5ae7ba > .elementor-widget-wrap {background-color:rgb(255, 255, 255)!important;border-top-width:2px!important;border-top-style:solid!important;border-top-color:rgb(196, 149, 106)!important;border-right-width:2px!important;border-right-style:solid!important;border-right-color:rgb(196, 149, 106)!important;border-bottom-width:2px!important;border-bottom-style:solid!important;border-bottom-color:rgb(196, 149, 106)!important;border-left-width:2px!important;border-left-style:solid!important;border-left-color:rgb(196, 149, 106)!important;border-top-left-radius:12px!important;border-top-right-radius:12px!important;border-bottom-left-radius:12px!important;border-bottom-right-radius:12px!important;box-shadow:rgba(0, 0, 0, 0.06) 0px 2px 15px 0px!important;padding-top:32px!important;padding-right:24px!important;padding-bottom:32px!important;padding-left:24px!important;margin:10px 10px 10px 10px!important;width:auto!important;flex:1 1 auto!important;min-width:0!important;align-self:flex-start!important;align-content:flex-start!important}
.bn-n-5ae7ba.bn-n-5ae7ba > .elementor-widget-wrap:hover {transform:translateY(-4px)!important;box-shadow:var(--bn-shadow-medium)!important}
.bn-n-700e81.bn-n-700e81 {overflow:hidden!important;border-top-left-radius:16px!important;border-top-right-radius:16px!important;border-bottom-left-radius:16px!important;border-bottom-right-radius:16px!important;text-align:left!important;line-height:0!important}
.bn-n-700e81.bn-n-700e81 img {width:100%!important;height:auto!important;aspect-ratio:3/4!important;object-fit:cover!important;display:block!important;max-width:100%!important}
.bn-n-7548b0.bn-n-7548b0 > p {font-family:"DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;line-height:25.6px!important;color:rgb(244, 180, 0)!important;letter-spacing:1.28px!important;text-transform:none!important;text-align:start!important;text-decoration-line:none!important;margin-top:0px!important;margin-bottom:0px!important;text-wrap:pretty!important}
.bn-n-7548b0.bn-n-7548b0 {font-family:"DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;line-height:25.6px!important;color:rgb(244, 180, 0)!important;letter-spacing:1.28px!important;text-transform:none!important;text-align:start!important;text-decoration-line:none!important}
.bn-n-959805.bn-n-959805 > ul > li {font-family:"Playfair Display", serif!important;font-weight:300!important;letter-spacing:2px!important;font-size:40px!important;line-height:64px!important;margin-top:40px!important;margin-bottom:40px!important;column-gap:48px!important}
@media (max-width: 767px) {
	.bn-n-959805.bn-n-959805 > ul > li {letter-spacing:1.2px!important;font-size:24px!important;line-height:38.4px!important;margin-top:24px!important;margin-bottom:24px!important}
}
.bn-n-9fa35a.bn-n-9fa35a > p {font-family:"DM Sans", sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;line-height:26.4px!important;color:rgb(107, 107, 107)!important;letter-spacing:normal!important;text-transform:none!important;text-align:start!important;text-decoration-line:none!important;margin-top:0px!important;margin-bottom:0px!important;text-wrap:pretty!important}
.bn-n-9fa35a.bn-n-9fa35a {font-family:"DM Sans", sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;line-height:26.4px!important;color:rgb(107, 107, 107)!important;letter-spacing:normal!important;text-transform:none!important;text-align:start!important;text-decoration-line:none!important}
.bn-n-adcc7b.bn-n-adcc7b > p {font-family:"DM Sans", sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;line-height:28.8px!important;color:rgba(255, 255, 255, 0.85)!important;letter-spacing:normal!important;text-transform:none!important;text-align:start!important;text-decoration-line:none!important;margin-top:0px!important;margin-bottom:0px!important;text-wrap:pretty!important}
.bn-n-adcc7b.bn-n-adcc7b {font-family:"DM Sans", sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;line-height:28.8px!important;color:rgba(255, 255, 255, 0.85)!important;letter-spacing:normal!important;text-transform:none!important;text-align:start!important;text-decoration-line:none!important}
.bn-n-b290ea.bn-n-b290ea > p {font-family:"DM Sans", sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;line-height:28.8px!important;color:rgb(58, 58, 58)!important;letter-spacing:normal!important;text-transform:none!important;text-align:start!important;text-decoration-line:none!important;margin-top:0px!important;margin-bottom:0px!important;text-wrap:pretty!important}
.bn-n-b290ea.bn-n-b290ea {font-family:"DM Sans", sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;line-height:28.8px!important;color:rgb(58, 58, 58)!important;letter-spacing:normal!important;text-transform:none!important;text-align:start!important;text-decoration-line:none!important}
.bn-n-b78798.bn-n-b78798 {overflow:hidden!important;border-top-left-radius:16px!important;border-top-right-radius:16px!important;border-bottom-left-radius:16px!important;border-bottom-right-radius:16px!important;text-align:left!important;line-height:0!important}
.bn-n-b78798.bn-n-b78798 img {width:100%!important;height:auto!important;aspect-ratio:4/3!important;object-fit:cover!important;display:block!important;max-width:100%!important}
.bn-n-bae945.bn-n-bae945 > p {font-family:"DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif!important;font-size:12px!important;font-weight:700!important;font-style:normal!important;line-height:19.2px!important;color:rgb(232, 197, 168)!important;letter-spacing:1.2px!important;text-transform:uppercase!important;text-align:start!important;text-decoration-line:none!important;margin-top:0px!important;margin-bottom:0px!important;text-wrap:pretty!important}
.bn-n-bae945.bn-n-bae945 {font-family:"DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif!important;font-size:12px!important;font-weight:700!important;font-style:normal!important;line-height:19.2px!important;color:rgb(232, 197, 168)!important;letter-spacing:1.2px!important;text-transform:uppercase!important;text-align:start!important;text-decoration-line:none!important}
.bn-n-bde393.bn-n-bde393 > p {font-family:"DM Sans", sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;line-height:27.2px!important;color:rgb(107, 107, 107)!important;letter-spacing:normal!important;text-transform:none!important;text-align:center!important;text-decoration-line:none!important;margin-top:0px!important;margin-bottom:0px!important;text-wrap:pretty!important}
.bn-n-bde393.bn-n-bde393 {font-family:"DM Sans", sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;line-height:27.2px!important;color:rgb(107, 107, 107)!important;letter-spacing:normal!important;text-transform:none!important;text-align:center!important;text-decoration-line:none!important}
.bn-n-c07e08.bn-n-c07e08 > .elementor-widget-wrap {border-top-left-radius:8px!important;border-top-right-radius:8px!important;border-bottom-left-radius:8px!important;border-bottom-right-radius:8px!important;padding-top:0px!important;padding-right:0px!important;padding-bottom:0px!important;padding-left:0px!important;overflow:hidden!important;transition:transform 0.3s ease,box-shadow 0.3s ease!important;margin:10px 10px 10px 10px!important;width:auto!important;flex:1 1 auto!important;min-width:0!important;align-self:flex-start!important;align-content:flex-start!important}
.bn-n-c07e08.bn-n-c07e08 > .elementor-widget-wrap:hover {transform:translateY(-4px)!important;box-shadow:0 12px 40px rgba(0,0,0,0.12)!important}
.bn-n-c21a53.bn-n-c21a53 {overflow:hidden!important;border-top-left-radius:8px!important;border-top-right-radius:8px!important;border-bottom-left-radius:8px!important;border-bottom-right-radius:8px!important;text-align:left!important;line-height:0!important}
.bn-n-c21a53.bn-n-c21a53 img {width:100%!important;aspect-ratio:4/5!important;object-fit:cover!important;display:block!important;transition:transform 0.8s cubic-bezier(0.4,0,0.2,1)!important;height:auto!important;max-width:100%!important}
.bn-n-c279e1.bn-n-c279e1 .elementor-divider {padding-block:0px!important;line-height:0!important;font-size:0!important}
.bn-n-c4c996.bn-n-c4c996 > p {font-family:"DM Sans", sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;line-height:28.8px!important;color:rgb(107, 107, 107)!important;letter-spacing:normal!important;text-transform:none!important;text-align:start!important;text-decoration-line:none!important;margin-top:0px!important;margin-bottom:0px!important;text-wrap:pretty!important}
.bn-n-c4c996.bn-n-c4c996 {font-family:"DM Sans", sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;line-height:28.8px!important;color:rgb(107, 107, 107)!important;letter-spacing:normal!important;text-transform:none!important;text-align:start!important;text-decoration-line:none!important}
.bn-n-d8dbd2.bn-n-d8dbd2 > .elementor-widget-wrap {border-top-left-radius:8px!important;border-top-right-radius:8px!important;border-bottom-left-radius:8px!important;border-bottom-right-radius:8px!important;padding-top:0px!important;padding-right:0px!important;padding-bottom:0px!important;padding-left:0px!important;overflow:hidden!important;transition:transform 0.3s ease,box-shadow 0.3s ease!important;margin:10px 10px 10px 10px!important;width:auto!important;flex:1 1 auto!important;min-width:0!important;align-content:flex-start!important}
.bn-n-d8dbd2.bn-n-d8dbd2 > .elementor-widget-wrap:hover {transform:translateY(-4px)!important;box-shadow:0 12px 40px rgba(0,0,0,0.12)!important}
.bn-n-da02eb.bn-n-da02eb > p {font-family:"DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;line-height:25.6px!important;color:rgba(255, 255, 255, 0.9)!important;letter-spacing:normal!important;text-transform:none!important;text-align:start!important;text-decoration-line:none!important;margin-top:0px!important;margin-bottom:0px!important;text-wrap:pretty!important}
.bn-n-da02eb.bn-n-da02eb {font-family:"DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;line-height:25.6px!important;color:rgba(255, 255, 255, 0.9)!important;letter-spacing:normal!important;text-transform:none!important;text-align:start!important;text-decoration-line:none!important}
.bn-n-e135c2.bn-n-e135c2 {border-top-width:2px!important;border-top-style:solid!important;border-top-color:rgb(232, 197, 168)!important;border-right-width:2px!important;border-right-style:solid!important;border-right-color:rgb(232, 197, 168)!important;border-bottom-width:2px!important;border-bottom-style:solid!important;border-bottom-color:rgb(232, 197, 168)!important;border-left-width:2px!important;border-left-style:solid!important;border-left-color:rgb(232, 197, 168)!important;border-top-left-radius:16px!important;border-top-right-radius:16px!important;border-bottom-left-radius:16px!important;border-bottom-right-radius:16px!important;padding-top:8px!important;padding-right:8px!important;padding-bottom:8px!important;padding-left:8px!important;max-width:510px!important;text-align:left!important;line-height:0!important}
.bn-n-e135c2.bn-n-e135c2 img {width:100%!important;height:auto!important;display:block!important;max-width:100%!important}
.bn-n-e3cf11.bn-n-e3cf11 .elementor-heading-title {font-family:"Playfair Display", serif!important;font-size:24px!important;font-weight:600!important;font-style:normal!important;line-height:30px!important;color:rgb(140, 100, 64)!important;letter-spacing:normal!important;text-transform:none!important;text-align:start!important;text-decoration-line:none!important;margin:0px!important;padding:0px!important;text-wrap:balance!important}
@media (max-width: 767px) {
	.bn-n-e3cf11.bn-n-e3cf11 .elementor-heading-title {font-size:20px!important;line-height:25px!important}
}
.bn-n-e4c46f.bn-n-e4c46f > p {font-family:"DM Sans", sans-serif!important;font-size:17.6px!important;font-weight:400!important;font-style:normal!important;line-height:31.68px!important;color:rgb(255, 255, 255)!important;letter-spacing:normal!important;text-transform:none!important;text-align:center!important;text-decoration-line:none!important;margin-top:0px!important;margin-bottom:0px!important;max-width:720px!important;margin-left:auto!important;margin-right:auto!important;text-wrap:pretty!important}
.bn-n-e4c46f.bn-n-e4c46f {font-family:"DM Sans", sans-serif!important;font-size:17.6px!important;font-weight:400!important;font-style:normal!important;line-height:31.68px!important;color:rgb(255, 255, 255)!important;letter-spacing:normal!important;text-transform:none!important;text-align:center!important;text-decoration-line:none!important}
.bn-n-e64c21.bn-n-e64c21 > ul {display:flex!important;flex-wrap:wrap!important;column-gap:12px!important;row-gap:12px!important;align-items:center!important;list-style:none!important;margin:0!important;padding:0!important}
.bn-n-e64c21.bn-n-e64c21 > ul > li {font-family:"DM Sans", sans-serif!important;font-size:16px!important;color:rgb(107, 107, 107)!important;line-height:25.6px!important;font-weight:400!important;margin:0!important;padding:0!important;display:block!important}
.bn-n-e64c21.bn-n-e64c21 > ul > li + li::before {content:"|"!important;color:rgb(229, 221, 212)!important;font-family:"DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif!important;font-size:16px!important;line-height:25.6px!important;margin-right:12px!important}
.bn-n-e64c21.bn-n-e64c21 strong {color:rgb(140, 100, 64)!important;font-weight:700!important}
.bn-n-f4d839.bn-n-f4d839 > p {font-family:"DM Sans", sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;line-height:25.6px!important;color:rgb(107, 107, 107)!important;letter-spacing:normal!important;text-transform:none!important;text-align:center!important;text-decoration-line:none!important;margin-top:0px!important;margin-bottom:0px!important;text-wrap:pretty!important}
.bn-n-f4d839.bn-n-f4d839 {font-family:"DM Sans", sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;line-height:25.6px!important;color:rgb(107, 107, 107)!important;letter-spacing:normal!important;text-transform:none!important;text-align:center!important;text-decoration-line:none!important}
.bn-n-f719d9.bn-n-f719d9 > ul {font-family:"DM Sans", sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;line-height:35.2px!important;color:rgb(58, 58, 58)!important;letter-spacing:normal!important;text-transform:none!important;text-align:start!important;text-decoration-line:none!important;margin-top:0px!important;margin-bottom:0px!important;list-style-type:none!important;list-style-position:outside!important;padding-left:0px!important;padding-right:0px!important;padding-top:0px!important;padding-bottom:0px!important}
.bn-n-f719d9.bn-n-f719d9 {font-family:"DM Sans", sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;line-height:35.2px!important;color:rgb(58, 58, 58)!important;letter-spacing:normal!important;text-transform:none!important;text-align:start!important;text-decoration-line:none!important}
.bn-n-f719d9.bn-n-f719d9 li {font-family:"DM Sans", sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;line-height:35.2px!important;color:rgb(58, 58, 58)!important;letter-spacing:normal!important;text-transform:none!important;text-align:start!important;text-decoration-line:none!important;margin-top:0px!important;margin-bottom:0px!important;padding-top:0px!important;padding-bottom:0px!important;padding-left:0px!important;list-style-type:none!important;display:list-item!important}
.bn-n-f719d9.bn-n-f719d9 > ul > li:first-child, .bn-n-f719d9.bn-n-f719d9 > ol > li:first-child {margin-top:0px!important}
.bn-n-f719d9.bn-n-f719d9 > ul > li:last-child, .bn-n-f719d9.bn-n-f719d9 > ol > li:last-child {margin-bottom:0px!important}
.bn-n-f719d9.bn-n-f719d9 a {font-weight:600!important;color:rgb(140, 100, 64)!important;text-decoration-line:underline!important;text-decoration-color:rgb(140, 100, 64)!important;text-underline-offset:3px!important}
.bn-n-f78a9f.bn-n-f78a9f .elementor-heading-title {font-family:"Playfair Display", serif!important;font-size:22px!important;font-weight:600!important;font-style:normal!important;line-height:26.4px!important;color:rgb(44, 44, 44)!important;letter-spacing:normal!important;text-transform:none!important;text-align:start!important;text-decoration-line:none!important;margin:0px!important;padding:0px!important;text-wrap:balance!important}
@media (max-width: 767px) {
	.bn-n-f78a9f.bn-n-f78a9f .elementor-heading-title {font-size:20px!important;line-height:24px!important}
}
.bn-n-fcff43.bn-n-fcff43 > .elementor-widget-wrap {background-color:rgba(255, 255, 255, 0.07)!important;border-top-width:1px!important;border-top-style:solid!important;border-top-color:rgba(255, 255, 255, 0.15)!important;border-right-width:1px!important;border-right-style:solid!important;border-right-color:rgba(255, 255, 255, 0.15)!important;border-bottom-width:1px!important;border-bottom-style:solid!important;border-bottom-color:rgba(255, 255, 255, 0.15)!important;border-left-width:1px!important;border-left-style:solid!important;border-left-color:rgba(255, 255, 255, 0.15)!important;border-top-left-radius:8px!important;border-top-right-radius:8px!important;border-bottom-left-radius:8px!important;border-bottom-right-radius:8px!important;padding-top:20px!important;padding-right:20px!important;padding-bottom:20px!important;padding-left:20px!important;margin:0px 0px 0px 0px!important;width:auto!important;flex:1 1 auto!important;min-width:0!important;align-content:flex-start!important}
.elementor .elementor-element.elementor-element-95aeb8c {position:static!important}
.elementor-element-95aeb8c .elementor-heading-title a::after {content:""!important;position:absolute!important;inset:0!important;z-index:1!important}
.elementor .elementor-element.elementor-element-0d0bad8 {position:static!important}
.elementor-element-0d0bad8 .elementor-heading-title a::after {content:""!important;position:absolute!important;inset:0!important;z-index:1!important}
.elementor .elementor-element.elementor-element-0c3dc5f {position:static!important}
.elementor-element-0c3dc5f .elementor-heading-title a::after {content:""!important;position:absolute!important;inset:0!important;z-index:1!important}
.elementor .elementor-element.elementor-element-f7a080a {position:static!important}
.elementor-element-f7a080a .elementor-heading-title a::after {content:""!important;position:absolute!important;inset:0!important;z-index:1!important}
/* page 5058 */
.bn-n-1afd51.bn-n-1afd51 > p {font-family:"DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;line-height:28.8px!important;color:rgba(255, 255, 255, 0.8)!important;letter-spacing:normal!important;text-transform:none!important;text-align:center!important;text-decoration-line:none!important;margin-top:0px!important;margin-bottom:0px!important;text-wrap:pretty!important}
.bn-n-1afd51.bn-n-1afd51 {font-family:"DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;line-height:28.8px!important;color:rgba(255, 255, 255, 0.8)!important;letter-spacing:normal!important;text-transform:none!important;text-align:center!important;text-decoration-line:none!important}
.bn-n-49e89c.bn-n-49e89c > p {font-family:"DM Sans", sans-serif!important;font-size:12px!important;font-weight:600!important;font-style:normal!important;line-height:19.2px!important;color:rgb(232, 197, 168)!important;letter-spacing:3px!important;text-transform:uppercase!important;text-align:center!important;text-decoration-line:none!important;margin-top:0px!important;margin-bottom:0px!important;text-wrap:pretty!important}
.bn-n-49e89c.bn-n-49e89c {font-family:"DM Sans", sans-serif!important;font-size:12px!important;font-weight:600!important;font-style:normal!important;line-height:19.2px!important;color:rgb(232, 197, 168)!important;letter-spacing:3px!important;text-transform:uppercase!important;text-align:center!important;text-decoration-line:none!important}
.bn-n-726298.bn-n-726298 > p {font-family:"DM Sans", sans-serif!important;font-size:18px!important;font-weight:400!important;font-style:normal!important;line-height:32.4px!important;color:rgba(255, 255, 255, 0.85)!important;letter-spacing:normal!important;text-transform:none!important;text-align:center!important;text-decoration-line:none!important;margin-top:0px!important;margin-bottom:0px!important;max-width:700px!important;margin-left:auto!important;margin-right:auto!important;text-wrap:pretty!important}
.bn-n-726298.bn-n-726298 {font-family:"DM Sans", sans-serif!important;font-size:18px!important;font-weight:400!important;font-style:normal!important;line-height:32.4px!important;color:rgba(255, 255, 255, 0.85)!important;letter-spacing:normal!important;text-transform:none!important;text-align:center!important;text-decoration-line:none!important}
.bn-n-d9ed8a.bn-n-d9ed8a > p {font-family:"DM Sans", sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;line-height:24px!important;color:rgb(58, 58, 58)!important;letter-spacing:normal!important;text-transform:none!important;text-align:center!important;text-decoration-line:none!important;margin-top:0px!important;margin-bottom:0px!important;text-wrap:pretty!important}
.bn-n-d9ed8a.bn-n-d9ed8a {font-family:"DM Sans", sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;line-height:24px!important;color:rgb(58, 58, 58)!important;letter-spacing:normal!important;text-transform:none!important;text-align:center!important;text-decoration-line:none!important}
.bn-n-d9ed8a.bn-n-d9ed8a a {color:rgb(255, 255, 255)!important;text-decoration-line:underline!important;text-decoration-color:rgba(255, 255, 255, 0.6)!important;text-decoration-thickness:1px!important;text-underline-offset:4px!important}
/* page 411 */
.bn-n-13a433.bn-n-13a433 .elementor-heading-title {font-family:"DM Sans", sans-serif!important;font-size:18px!important;font-weight:700!important;font-style:normal!important;line-height:21.6px!important;color:rgb(140, 100, 64)!important;letter-spacing:normal!important;text-transform:none!important;text-align:start!important;text-decoration-line:none!important;margin:0px!important;padding:0px!important;text-wrap:balance!important}
@media (max-width: 767px) {
	.bn-n-13a433.bn-n-13a433 .elementor-heading-title {font-size:20px!important;line-height:24px!important}
}
.bn-n-2299ba.bn-n-2299ba > p {font-family:"DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;line-height:25.6px!important;color:rgb(58, 58, 58)!important;letter-spacing:normal!important;text-transform:none!important;text-align:start!important;text-decoration-line:none!important;margin-top:0px!important;margin-bottom:0px!important;text-wrap:pretty!important}
.bn-n-2299ba.bn-n-2299ba {font-family:"DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;line-height:25.6px!important;color:rgb(58, 58, 58)!important;letter-spacing:normal!important;text-transform:none!important;text-align:start!important;text-decoration-line:none!important}
.bn-n-2299ba.bn-n-2299ba a {font-weight:600!important;color:rgb(140, 100, 64)!important;text-decoration-line:none!important}
.bn-n-2299ba.bn-n-2299ba em {color:rgb(229, 221, 212)!important;font-style:normal!important}
.bn-n-2a59e6.bn-n-2a59e6 > p {font-family:"DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;line-height:25.6px!important;color:rgb(58, 58, 58)!important;letter-spacing:normal!important;text-transform:none!important;text-align:start!important;text-decoration-line:none!important;margin-top:0px!important;margin-bottom:8px!important;text-wrap:pretty!important}
.bn-n-2a59e6.bn-n-2a59e6 {font-family:"DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;line-height:25.6px!important;color:rgb(58, 58, 58)!important;letter-spacing:normal!important;text-transform:none!important;text-align:start!important;text-decoration-line:none!important}
.bn-n-2a59e6.bn-n-2a59e6 > :first-child {margin-top:0px!important}
.bn-n-2a59e6.bn-n-2a59e6 > :last-child {margin-bottom:0px!important}
.bn-n-2a59e6.bn-n-2a59e6 strong {font-weight:700!important}
.bn-n-2a59e6.bn-n-2a59e6 a {color:rgb(44, 44, 44)!important;text-decoration-line:none!important}
.bn-n-44f0bb.bn-n-44f0bb > p {font-family:"DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;line-height:25.6px!important;color:rgb(58, 58, 58)!important;letter-spacing:normal!important;text-transform:none!important;text-align:start!important;text-decoration-line:none!important;margin-top:0px!important;margin-bottom:0px!important;text-wrap:pretty!important}
.bn-n-44f0bb.bn-n-44f0bb {font-family:"DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;line-height:25.6px!important;color:rgb(58, 58, 58)!important;letter-spacing:normal!important;text-transform:none!important;text-align:start!important;text-decoration-line:none!important}
.bn-n-44f0bb.bn-n-44f0bb a {color:rgb(44, 44, 44)!important;text-decoration-line:none!important}
.bn-n-4d1d11.bn-n-4d1d11 > p {font-family:"DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;line-height:25.6px!important;color:rgb(58, 58, 58)!important;letter-spacing:normal!important;text-transform:none!important;text-align:start!important;text-decoration-line:none!important;margin-top:0px!important;margin-bottom:0px!important;text-wrap:pretty!important}
.bn-n-4d1d11.bn-n-4d1d11 {font-family:"DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;line-height:25.6px!important;color:rgb(58, 58, 58)!important;letter-spacing:normal!important;text-transform:none!important;text-align:start!important;text-decoration-line:none!important}
.bn-n-5b3182.bn-n-5b3182 > p {font-family:"DM Sans", sans-serif!important;font-size:20px!important;font-weight:600!important;font-style:normal!important;line-height:32px!important;color:rgb(44, 44, 44)!important;letter-spacing:normal!important;text-transform:none!important;text-align:center!important;text-decoration-line:none!important;margin-top:0px!important;margin-bottom:0px!important;text-wrap:pretty!important}
.bn-n-5b3182.bn-n-5b3182 {font-family:"DM Sans", sans-serif!important;font-size:20px!important;font-weight:600!important;font-style:normal!important;line-height:32px!important;color:rgb(44, 44, 44)!important;letter-spacing:normal!important;text-transform:none!important;text-align:center!important;text-decoration-line:none!important}
.bn-n-8ba0a5.bn-n-8ba0a5 > p {font-family:"DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;line-height:25.6px!important;color:rgb(107, 107, 107)!important;letter-spacing:normal!important;text-transform:none!important;text-align:start!important;text-decoration-line:none!important;margin-top:0px!important;margin-bottom:0px!important;text-wrap:pretty!important}
.bn-n-8ba0a5.bn-n-8ba0a5 {font-family:"DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;line-height:25.6px!important;color:rgb(107, 107, 107)!important;letter-spacing:normal!important;text-transform:none!important;text-align:start!important;text-decoration-line:none!important}
.bn-n-932884.bn-n-932884 > .elementor-widget-wrap {background-color:rgb(255, 255, 255)!important;border-top-left-radius:16px!important;border-top-right-radius:16px!important;border-bottom-left-radius:16px!important;border-bottom-right-radius:16px!important;box-shadow:rgba(0, 0, 0, 0.06) 0px 2px 15px 0px!important;padding-top:24px!important;padding-right:24px!important;padding-bottom:24px!important;padding-left:24px!important;margin:0px 0px 0px 0px!important;width:auto!important;flex:1 1 auto!important;min-width:0!important;align-content:flex-start!important}
.bn-n-b93d17.bn-n-b93d17 > p {font-family:"DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif!important;font-size:18px!important;font-weight:400!important;font-style:normal!important;line-height:32.4px!important;color:rgba(255, 255, 255, 0.85)!important;letter-spacing:normal!important;text-transform:none!important;text-align:center!important;text-decoration-line:none!important;margin-top:0px!important;margin-bottom:0px!important;text-wrap:pretty!important}
.bn-n-b93d17.bn-n-b93d17 {font-family:"DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif!important;font-size:18px!important;font-weight:400!important;font-style:normal!important;line-height:32.4px!important;color:rgba(255, 255, 255, 0.85)!important;letter-spacing:normal!important;text-transform:none!important;text-align:center!important;text-decoration-line:none!important}
/* page 417 */
.bn-n-0b4bc6.bn-n-0b4bc6 > p {font-family:"DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;line-height:28.8px!important;color:rgb(107, 107, 107)!important;letter-spacing:normal!important;text-transform:none!important;text-align:center!important;text-decoration-line:none!important;margin-top:0px!important;margin-bottom:0px!important;max-width:780px!important;margin-left:auto!important;margin-right:auto!important;text-wrap:pretty!important}
.bn-n-0b4bc6.bn-n-0b4bc6 {font-family:"DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;line-height:28.8px!important;color:rgb(107, 107, 107)!important;letter-spacing:normal!important;text-transform:none!important;text-align:center!important;text-decoration-line:none!important}
.bn-n-30ab8a.bn-n-30ab8a > .elementor-container {display:grid!important;grid-template-columns:repeat(3,1fr)!important;justify-content:normal!important;align-items:normal!important;row-gap:16px!important;column-gap:16px!important;max-width:none!important;margin:0!important;width:100%!important;padding-top:0px!important;padding-right:0px!important;padding-bottom:0px!important;padding-left:0px!important}
.bn-n-30ab8a.bn-n-30ab8a > .elementor-container > .elementor-column {width:auto!important;min-width:0!important}
@media (max-width: 767px) {
	.bn-n-30ab8a.bn-n-30ab8a > .elementor-container {grid-template-columns:minmax(0, 1fr)!important}
}
.bn-n-30c56b.bn-n-30c56b > .elementor-widget-wrap {background-color:rgb(255, 255, 255)!important;border-top-width:1px!important;border-top-style:solid!important;border-top-color:rgb(229, 221, 212)!important;border-right-width:1px!important;border-right-style:solid!important;border-right-color:rgb(229, 221, 212)!important;border-bottom-width:1px!important;border-bottom-style:solid!important;border-bottom-color:rgb(229, 221, 212)!important;border-left-width:1px!important;border-left-style:solid!important;border-left-color:rgb(229, 221, 212)!important;border-top-left-radius:16px!important;border-top-right-radius:16px!important;border-bottom-left-radius:16px!important;border-bottom-right-radius:16px!important;box-shadow:rgba(0, 0, 0, 0.06) 0px 2px 15px 0px!important;padding-top:32px!important;padding-right:32px!important;padding-bottom:32px!important;padding-left:32px!important;margin:10px 10px 10px 10px!important;width:auto!important;flex:1 1 auto!important;min-width:0!important;align-self:flex-start!important;align-content:flex-start!important}
.bn-n-312625.bn-n-312625 > .elementor-widget-wrap {background-color:rgb(250, 246, 241)!important;border-top-width:1px!important;border-top-style:solid!important;border-top-color:rgb(229, 221, 212)!important;border-right-width:1px!important;border-right-style:solid!important;border-right-color:rgb(229, 221, 212)!important;border-bottom-width:1px!important;border-bottom-style:solid!important;border-bottom-color:rgb(229, 221, 212)!important;border-left-width:1px!important;border-left-style:solid!important;border-left-color:rgb(229, 221, 212)!important;border-top-left-radius:16px!important;border-top-right-radius:16px!important;border-bottom-left-radius:16px!important;border-bottom-right-radius:16px!important;box-shadow:rgba(0, 0, 0, 0.06) 0px 2px 15px 0px!important;padding-top:40px!important;padding-right:48px!important;padding-bottom:40px!important;padding-left:48px!important;margin:0px 0px 0px 0px!important;width:auto!important;flex:1 1 auto!important;min-width:0!important;max-width:860px!important;margin-left:auto!important;margin-right:auto!important;align-content:flex-start!important}
.bn-n-324c97.bn-n-324c97 .elementor-heading-title {font-family:"Playfair Display", serif!important;font-size:22px!important;font-weight:600!important;font-style:normal!important;line-height:26.4px!important;color:rgb(140, 100, 64)!important;letter-spacing:normal!important;text-transform:none!important;text-align:start!important;text-decoration-line:none!important;margin:0px!important;padding:0px!important;text-wrap:balance!important}
@media (max-width: 767px) {
	.bn-n-324c97.bn-n-324c97 .elementor-heading-title {font-size:20px!important;line-height:24px!important}
}
.bn-n-782db1.bn-n-782db1 {text-align:left!important;line-height:0!important}
.bn-n-782db1.bn-n-782db1 img {width:100%!important;height:240px!important;object-fit:cover!important;max-width:100%!important;display:block!important;border-top-left-radius:8px!important;border-top-right-radius:8px!important;border-bottom-left-radius:8px!important;border-bottom-right-radius:8px!important}
.bn-n-83846e.bn-n-83846e > .elementor-container {display:grid!important;grid-template-columns:repeat(2, minmax(0, 1fr))!important;row-gap:24px!important;column-gap:0px!important;grid-template-rows:auto auto auto!important;padding-bottom:24px!important}
.bn-n-83846e.bn-n-83846e > .elementor-container > .elementor-column {width:auto!important;min-width:0!important}
.bn-n-83846e.bn-n-83846e > .elementor-container > .elementor-column:nth-child(4) {grid-column:2!important;grid-row:1 / span 3!important}
.bn-n-83846e.bn-n-83846e > .elementor-container > .elementor-column:nth-child(-n+3) {grid-column:1!important}
@media (max-width: 767px) {
	.bn-n-83846e.bn-n-83846e > .elementor-container {grid-template-columns:minmax(0, 1fr)!important;row-gap:24px!important;padding-bottom:24px!important;grid-template-rows:none!important}
	.bn-n-83846e.bn-n-83846e > .elementor-container > .elementor-column:nth-child(4) {grid-column:auto!important;grid-row:auto!important}
}
.bn-n-9e8f36.bn-n-9e8f36 > p {font-family:"DM Sans", sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;line-height:32px!important;color:rgb(58, 58, 58)!important;letter-spacing:normal!important;text-transform:none!important;text-align:start!important;text-decoration-line:none!important;margin-top:0px!important;margin-bottom:0px!important;text-wrap:pretty!important}
.bn-n-9e8f36.bn-n-9e8f36 {font-family:"DM Sans", sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;line-height:32px!important;color:rgb(58, 58, 58)!important;letter-spacing:normal!important;text-transform:none!important;text-align:start!important;text-decoration-line:none!important}
.bn-n-9e8f36.bn-n-9e8f36 strong {font-weight:700!important}
.bn-n-9e8f36.bn-n-9e8f36 a {color:rgb(140, 100, 64)!important;text-decoration-line:none!important}
.bn-n-a073e6.bn-n-a073e6 {width:100%!important}
.bn-n-c7647b.bn-n-c7647b > p {font-family:"DM Sans", sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;line-height:30.4px!important;color:rgb(58, 58, 58)!important;letter-spacing:normal!important;text-transform:none!important;text-align:start!important;text-decoration-line:none!important;margin-top:0px!important;margin-bottom:20px!important;text-wrap:pretty!important}
.bn-n-c7647b.bn-n-c7647b {font-family:"DM Sans", sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;line-height:30.4px!important;color:rgb(58, 58, 58)!important;letter-spacing:normal!important;text-transform:none!important;text-align:start!important;text-decoration-line:none!important}
.bn-n-c7647b.bn-n-c7647b > :first-child {margin-top:0px!important}
.bn-n-c7647b.bn-n-c7647b > :last-child {margin-bottom:0px!important}
.bn-n-c7647b.bn-n-c7647b strong {font-weight:700!important}
.bn-n-d0c214.bn-n-d0c214 > p {font-family:"DM Sans", sans-serif!important;font-size:18px!important;font-weight:400!important;font-style:normal!important;line-height:32.4px!important;color:rgba(255, 255, 255, 0.85)!important;letter-spacing:normal!important;text-transform:none!important;text-align:center!important;text-decoration-line:none!important;margin-top:0px!important;margin-bottom:0px!important;text-wrap:pretty!important}
.bn-n-d0c214.bn-n-d0c214 {font-family:"DM Sans", sans-serif!important;font-size:18px!important;font-weight:400!important;font-style:normal!important;line-height:32.4px!important;color:rgba(255, 255, 255, 0.85)!important;letter-spacing:normal!important;text-transform:none!important;text-align:center!important;text-decoration-line:none!important}
.bn-n-f813d4.bn-n-f813d4 .elementor-button {font-family:"DM Sans", sans-serif!important;font-size:13px!important;font-weight:600!important;font-style:normal!important;line-height:20.8px!important;color:rgb(44, 44, 44)!important;letter-spacing:1.04px!important;text-transform:uppercase!important;text-align:start!important;text-decoration-line:none!important;background-color:rgb(196, 149, 106)!important;border-top-left-radius:999px!important;border-top-right-radius:999px!important;border-bottom-left-radius:999px!important;border-bottom-right-radius:999px!important;padding-top:12px!important;padding-right:28px!important;padding-bottom:12px!important;padding-left:28px!important;display:inline-block!important}
.bn-n-f813d4.bn-n-f813d4 .elementor-button .elementor-button-content-wrapper {display:inline!important;gap:0!important}
/* page 412 */
.bn-n-14b9a2.bn-n-14b9a2 {flex:1!important;min-width:180px!important}
.bn-n-22f7d6.bn-n-22f7d6 {flex:1.5!important;min-width:260px!important}
.bn-n-3e9167.bn-n-3e9167 .elementor-heading-title {font-family:"Playfair Display", serif!important;font-size:32px!important;font-weight:600!important;font-style:normal!important;line-height:38.4px!important;color:rgb(44, 44, 44)!important;letter-spacing:normal!important;text-transform:none!important;text-align:center!important;text-decoration-line:none!important;margin:0px!important;padding:0px!important;text-wrap:balance!important}
@media (max-width: 767px) {
	.bn-n-3e9167.bn-n-3e9167 .elementor-heading-title {font-size:28px!important;line-height:33.6px!important}
}
.bn-n-4be402.bn-n-4be402 > p {font-family:"DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;line-height:28.8px!important;color:rgb(107, 107, 107)!important;letter-spacing:normal!important;text-transform:none!important;text-align:center!important;text-decoration-line:none!important;margin-top:0px!important;margin-bottom:0px!important;text-wrap:pretty!important}
.bn-n-4be402.bn-n-4be402 {font-family:"DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;line-height:28.8px!important;color:rgb(107, 107, 107)!important;letter-spacing:normal!important;text-transform:none!important;text-align:center!important;text-decoration-line:none!important}
.bn-n-5435dc.bn-n-5435dc {flex:0 0 240px!important;max-width:100%!important}
.bn-n-5fa688.bn-n-5fa688 > p {font-family:"Cormorant Garamond", serif!important;font-size:16px!important;font-weight:400!important;font-style:italic!important;line-height:25.6px!important;color:rgb(107, 107, 107)!important;letter-spacing:normal!important;text-transform:none!important;text-align:center!important;text-decoration-line:none!important;margin-top:0px!important;margin-bottom:0px!important;text-wrap:pretty!important}
.bn-n-5fa688.bn-n-5fa688 {font-family:"Cormorant Garamond", serif!important;font-size:16px!important;font-weight:400!important;font-style:italic!important;line-height:25.6px!important;color:rgb(107, 107, 107)!important;letter-spacing:normal!important;text-transform:none!important;text-align:center!important;text-decoration-line:none!important}
.bn-n-61f455.bn-n-61f455 .elementor-heading-title {font-family:"Playfair Display", serif!important;font-size:26px!important;font-weight:600!important;font-style:normal!important;line-height:31.2px!important;color:rgb(44, 44, 44)!important;letter-spacing:normal!important;text-transform:none!important;text-align:start!important;text-decoration-line:none!important;margin:0px!important;padding:0px!important;text-wrap:balance!important}
@media (max-width: 767px) {
	.bn-n-61f455.bn-n-61f455 .elementor-heading-title {font-size:20px!important;line-height:24px!important}
}
.bn-n-662b84.bn-n-662b84 > p {font-family:"Cormorant Garamond", serif!important;font-size:18px!important;font-weight:400!important;font-style:italic!important;line-height:28.8px!important;color:rgb(232, 197, 168)!important;letter-spacing:2.7px!important;text-transform:none!important;text-align:center!important;text-decoration-line:none!important;margin-top:0px!important;margin-bottom:0px!important;text-wrap:pretty!important}
.bn-n-662b84.bn-n-662b84 {font-family:"Cormorant Garamond", serif!important;font-size:18px!important;font-weight:400!important;font-style:italic!important;line-height:28.8px!important;color:rgb(232, 197, 168)!important;letter-spacing:2.7px!important;text-transform:none!important;text-align:center!important;text-decoration-line:none!important}
.bn-n-7bf208.bn-n-7bf208 > p {font-family:"DM Sans", sans-serif!important;font-size:12px!important;font-weight:600!important;font-style:normal!important;line-height:19.2px!important;color:rgb(140, 100, 64)!important;letter-spacing:3px!important;text-transform:uppercase!important;text-align:center!important;text-decoration-line:none!important;margin-top:0px!important;margin-bottom:0px!important;text-wrap:pretty!important}
.bn-n-7bf208.bn-n-7bf208 {font-family:"DM Sans", sans-serif!important;font-size:12px!important;font-weight:600!important;font-style:normal!important;line-height:19.2px!important;color:rgb(140, 100, 64)!important;letter-spacing:3px!important;text-transform:uppercase!important;text-align:center!important;text-decoration-line:none!important}
.bn-n-7f07d6.bn-n-7f07d6 > .elementor-widget-wrap {background-color:rgb(255, 255, 255)!important;border-top-width:2px!important;border-top-style:solid!important;border-top-color:rgb(196, 149, 106)!important;border-right-width:2px!important;border-right-style:solid!important;border-right-color:rgb(196, 149, 106)!important;border-bottom-width:2px!important;border-bottom-style:solid!important;border-bottom-color:rgb(196, 149, 106)!important;border-left-width:2px!important;border-left-style:solid!important;border-left-color:rgb(196, 149, 106)!important;border-top-left-radius:16px!important;border-top-right-radius:16px!important;border-bottom-left-radius:16px!important;border-bottom-right-radius:16px!important;box-shadow:rgba(0, 0, 0, 0.06) 0px 2px 15px 0px!important;padding-top:40px!important;padding-right:32px!important;padding-bottom:40px!important;padding-left:32px!important;margin:10px 10px 10px 10px!important;width:auto!important;flex:1 1 auto!important;min-width:0!important;align-content:flex-start!important}
.bn-n-80f93a.bn-n-80f93a > .elementor-widget-wrap {background-color:rgb(255, 255, 255)!important;border-top-width:1px!important;border-top-style:solid!important;border-top-color:rgb(229, 221, 212)!important;border-right-width:1px!important;border-right-style:solid!important;border-right-color:rgb(229, 221, 212)!important;border-bottom-width:1px!important;border-bottom-style:solid!important;border-bottom-color:rgb(229, 221, 212)!important;border-left-width:1px!important;border-left-style:solid!important;border-left-color:rgb(229, 221, 212)!important;border-top-left-radius:16px!important;border-top-right-radius:16px!important;border-bottom-left-radius:16px!important;border-bottom-right-radius:16px!important;box-shadow:rgba(0, 0, 0, 0.06) 0px 2px 15px 0px!important;padding-top:32px!important;padding-right:24px!important;padding-bottom:32px!important;padding-left:24px!important;margin:10px 10px 10px 10px!important;width:auto!important;flex:1 1 auto!important;min-width:0!important;align-content:flex-start!important}
.bn-n-830977.bn-n-830977 {padding-top:7px!important;padding-right:0px!important;padding-bottom:0px!important;padding-left:0px!important;max-width:100%!important;text-align:left!important;line-height:0!important}
.bn-n-830977.bn-n-830977 img {width:100%!important;height:auto!important;display:block!important;max-width:100%!important;border-top-left-radius:12px!important;border-top-right-radius:12px!important;border-bottom-left-radius:12px!important;border-bottom-right-radius:12px!important}
.bn-n-b991d6.bn-n-b991d6 > p {font-family:"DM Sans", sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;line-height:28px!important;color:rgb(107, 107, 107)!important;letter-spacing:normal!important;text-transform:none!important;text-align:start!important;text-decoration-line:none!important;margin-top:0px!important;margin-bottom:0px!important;text-wrap:pretty!important}
.bn-n-b991d6.bn-n-b991d6 {font-family:"DM Sans", sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;line-height:28px!important;color:rgb(107, 107, 107)!important;letter-spacing:normal!important;text-transform:none!important;text-align:start!important;text-decoration-line:none!important}
.bn-n-bc7d79.bn-n-bc7d79 > p {font-family:"DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif!important;font-size:17px!important;font-weight:400!important;font-style:normal!important;line-height:30.6px!important;color:rgba(255, 255, 255, 0.85)!important;letter-spacing:normal!important;text-transform:none!important;text-align:center!important;text-decoration-line:none!important;margin-top:0px!important;margin-bottom:0px!important;text-wrap:pretty!important}
.bn-n-bc7d79.bn-n-bc7d79 {font-family:"DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif!important;font-size:17px!important;font-weight:400!important;font-style:normal!important;line-height:30.6px!important;color:rgba(255, 255, 255, 0.85)!important;letter-spacing:normal!important;text-transform:none!important;text-align:center!important;text-decoration-line:none!important}
.bn-n-bd1e2a.bn-n-bd1e2a > p {font-family:"DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;line-height:28.8px!important;color:rgb(107, 107, 107)!important;letter-spacing:normal!important;text-transform:none!important;text-align:center!important;text-decoration-line:none!important;margin-top:0px!important;margin-bottom:0px!important;max-width:650px!important;margin-left:auto!important;margin-right:auto!important;text-wrap:pretty!important}
.bn-n-bd1e2a.bn-n-bd1e2a {font-family:"DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;line-height:28.8px!important;color:rgb(107, 107, 107)!important;letter-spacing:normal!important;text-transform:none!important;text-align:center!important;text-decoration-line:none!important}
.bn-n-c37b29.bn-n-c37b29 > .elementor-widget-wrap {border-top-width:2px!important;border-top-style:solid!important;border-top-color:rgb(196, 149, 106)!important;border-right-width:2px!important;border-right-style:solid!important;border-right-color:rgb(196, 149, 106)!important;border-bottom-width:2px!important;border-bottom-style:solid!important;border-bottom-color:rgb(196, 149, 106)!important;border-left-width:2px!important;border-left-style:solid!important;border-left-color:rgb(196, 149, 106)!important;border-top-left-radius:16px!important;border-top-right-radius:16px!important;border-bottom-left-radius:16px!important;border-bottom-right-radius:16px!important;padding-top:48px!important;padding-right:40px!important;padding-bottom:48px!important;padding-left:40px!important;margin:0px 0px 0px 0px!important;width:auto!important;flex:1 1 auto!important;min-width:0!important;align-content:flex-start!important}
.bn-n-ec336c.bn-n-ec336c .elementor-heading-title {font-family:"Playfair Display", serif!important;font-size:20px!important;font-weight:600!important;font-style:normal!important;line-height:24px!important;color:rgb(44, 44, 44)!important;letter-spacing:normal!important;text-transform:none!important;text-align:start!important;text-decoration-line:none!important;margin:0px!important;padding:0px!important;text-wrap:balance!important}
.bn-n-f32342.bn-n-f32342 > .elementor-container {display:flex!important;flex-wrap:wrap!important;flex-direction:row!important;justify-content:normal!important;align-items:normal!important;row-gap:40px!important;column-gap:40px!important;max-width:none!important;margin:0!important;width:100%!important;padding-top:0px!important;padding-right:0px!important;padding-bottom:0px!important;padding-left:0px!important}
.bn-n-f32342.bn-n-f32342 > .elementor-container > .elementor-column {width:auto!important}
/* page 301 */
.bn-n-66a196.bn-n-66a196 .elementor-heading-title {font-family:"Playfair Display", serif!important;font-size:24px!important;font-weight:600!important;font-style:normal!important;line-height:31.2px!important;color:rgb(140, 100, 64)!important;letter-spacing:normal!important;text-transform:none!important;text-align:start!important;text-decoration-line:none!important;margin:0px!important;padding:0px!important;text-wrap:balance!important}
@media (max-width: 767px) {
	.bn-n-66a196.bn-n-66a196 .elementor-heading-title {font-size:20px!important;line-height:26px!important}
}
.bn-n-86f244.bn-n-86f244 > .elementor-widget-wrap {background-color:rgb(255, 255, 255)!important;border-top-width:2px!important;border-top-style:solid!important;border-top-color:rgb(196, 149, 106)!important;border-right-width:2px!important;border-right-style:solid!important;border-right-color:rgb(196, 149, 106)!important;border-bottom-width:2px!important;border-bottom-style:solid!important;border-bottom-color:rgb(196, 149, 106)!important;border-left-width:2px!important;border-left-style:solid!important;border-left-color:rgb(196, 149, 106)!important;border-top-left-radius:16px!important;border-top-right-radius:16px!important;border-bottom-left-radius:16px!important;border-bottom-right-radius:16px!important;box-shadow:rgba(196, 149, 106, 0.15) 0px 4px 20px 0px!important;padding-top:0px!important;padding-right:0px!important;padding-bottom:0px!important;padding-left:0px!important;overflow:hidden!important;margin:10px 10px 10px 10px!important;width:auto!important;flex:1 1 auto!important;min-width:0!important;align-self:flex-start!important;align-content:flex-start!important}
.bn-n-a08112.bn-n-a08112 > p {font-family:"DM Sans", sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;line-height:28.8px!important;color:rgba(255, 255, 255, 0.75)!important;letter-spacing:normal!important;text-transform:none!important;text-align:center!important;text-decoration-line:none!important;margin-top:0px!important;margin-bottom:0px!important;max-width:700px!important;margin-left:auto!important;margin-right:auto!important;text-wrap:pretty!important}
.bn-n-a08112.bn-n-a08112 {font-family:"DM Sans", sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;line-height:28.8px!important;color:rgba(255, 255, 255, 0.75)!important;letter-spacing:normal!important;text-transform:none!important;text-align:center!important;text-decoration-line:none!important}
.bn-n-a089ed.bn-n-a089ed > p {font-family:"DM Sans", sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;line-height:28.8px!important;color:rgb(107, 107, 107)!important;letter-spacing:normal!important;text-transform:none!important;text-align:center!important;text-decoration-line:none!important;margin-top:0px!important;margin-bottom:0px!important;max-width:720px!important;margin-left:auto!important;margin-right:auto!important;text-wrap:pretty!important}
.bn-n-a089ed.bn-n-a089ed {font-family:"DM Sans", sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;line-height:28.8px!important;color:rgb(107, 107, 107)!important;letter-spacing:normal!important;text-transform:none!important;text-align:center!important;text-decoration-line:none!important}
.bn-n-b5f850.bn-n-b5f850 a {display:inline-flex!important;align-items:center!important;column-gap:6.4px!important;color:rgb(140, 100, 64)!important;text-decoration-line:none!important;font-weight:600!important;letter-spacing:1.04px!important;text-transform:uppercase!important;font-size:13px!important;font-family:"DM Sans", sans-serif!important;line-height:20.8px!important;min-height:0px!important}
.bn-n-b5f850.bn-n-b5f850 > p {font-family:"DM Sans", sans-serif!important;font-size:13px!important;font-weight:600!important;font-style:normal!important;line-height:20.8px!important;color:rgb(140, 100, 64)!important;letter-spacing:1.04px!important;text-transform:uppercase!important;text-align:start!important;text-decoration-line:none!important;margin-top:0px!important;margin-bottom:0px!important;display:flex!important}
.bn-n-b5f850.bn-n-b5f850 {font-family:"DM Sans", sans-serif!important;font-size:13px!important;font-weight:600!important;font-style:normal!important;line-height:20.8px!important;color:rgb(140, 100, 64)!important;letter-spacing:1.04px!important;text-transform:uppercase!important;text-align:start!important;text-decoration-line:none!important}
.bn-n-b5f850.bn-n-b5f850 a::after {content:""!important;display:inline-block!important;width:14px!important;height:14px!important;background-color:currentColor!important;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='9 18 15 12 9 6'%3E%3C/polyline%3E%3C/svg%3E") center / contain no-repeat!important;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='9 18 15 12 9 6'%3E%3C/polyline%3E%3C/svg%3E") center / contain no-repeat!important;vertical-align:baseline!important;margin-left:0px!important;margin-right:6.4px!important;order:-1!important}
@media (max-width: 767px) {
	.bn-n-b5f850.bn-n-b5f850 a {min-height:44px!important}
}
.bn-n-b6d595.bn-n-b6d595 .elementor-shortcode > * {margin-top:0px!important;margin-bottom:0px!important}
.bn-n-c198d2.bn-n-c198d2 {overflow:hidden!important;aspect-ratio:16/9!important;text-align:left!important;line-height:0!important}
.bn-n-c198d2.bn-n-c198d2 img {width:100%!important;height:100%!important;object-fit:cover!important;display:block!important;max-width:100%!important}
.bn-n-cad048.bn-n-cad048 > p {font-family:"DM Sans", sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;line-height:28.8px!important;color:rgba(255, 255, 255, 0.8)!important;letter-spacing:normal!important;text-transform:none!important;text-align:center!important;text-decoration-line:none!important;margin-top:0px!important;margin-bottom:0px!important;text-wrap:pretty!important}
.bn-n-cad048.bn-n-cad048 {font-family:"DM Sans", sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;line-height:28.8px!important;color:rgba(255, 255, 255, 0.8)!important;letter-spacing:normal!important;text-transform:none!important;text-align:center!important;text-decoration-line:none!important}
.bn-n-cbe226.bn-n-cbe226 > .elementor-widget-wrap {background-color:rgb(255, 255, 255)!important;border-top-width:2px!important;border-top-style:solid!important;border-top-color:rgb(196, 149, 106)!important;border-right-width:2px!important;border-right-style:solid!important;border-right-color:rgb(196, 149, 106)!important;border-bottom-width:2px!important;border-bottom-style:solid!important;border-bottom-color:rgb(196, 149, 106)!important;border-left-width:2px!important;border-left-style:solid!important;border-left-color:rgb(196, 149, 106)!important;border-top-left-radius:16px!important;border-top-right-radius:16px!important;border-bottom-left-radius:16px!important;border-bottom-right-radius:16px!important;box-shadow:rgba(196, 149, 106, 0.15) 0px 4px 20px 0px!important;padding-top:0px!important;padding-right:0px!important;padding-bottom:0px!important;padding-left:0px!important;overflow:hidden!important;margin:10px 10px 10px 10px!important;width:auto!important;flex:1 1 auto!important;min-width:0!important;align-content:flex-start!important}
.bn-n-d28d1b.bn-n-d28d1b > p {font-family:"DM Sans", sans-serif!important;font-size:18px!important;font-weight:400!important;font-style:italic!important;line-height:32.4px!important;color:rgba(255, 255, 255, 0.85)!important;letter-spacing:normal!important;text-transform:none!important;text-align:center!important;text-decoration-line:none!important;margin-top:0px!important;margin-bottom:0px!important;max-width:700px!important;margin-left:auto!important;margin-right:auto!important;text-wrap:pretty!important}
.bn-n-d28d1b.bn-n-d28d1b {font-family:"DM Sans", sans-serif!important;font-size:18px!important;font-weight:400!important;font-style:italic!important;line-height:32.4px!important;color:rgba(255, 255, 255, 0.85)!important;letter-spacing:normal!important;text-transform:none!important;text-align:center!important;text-decoration-line:none!important}
.bn-n-e5a6cf.bn-n-e5a6cf .elementor-heading-title {font-family:"Playfair Display", serif!important;font-size:20px!important;font-weight:600!important;font-style:normal!important;line-height:24px!important;color:rgb(44, 44, 44)!important;letter-spacing:normal!important;text-transform:none!important;text-align:center!important;text-decoration-line:none!important;margin:0px!important;padding:0px!important;text-wrap:balance!important}
.bn-n-f64631.bn-n-f64631 > .elementor-widget-wrap {background-color:rgb(255, 255, 255)!important;border-top-width:1px!important;border-top-style:solid!important;border-top-color:rgb(229, 221, 212)!important;border-right-width:1px!important;border-right-style:solid!important;border-right-color:rgb(229, 221, 212)!important;border-bottom-width:1px!important;border-bottom-style:solid!important;border-bottom-color:rgb(229, 221, 212)!important;border-left-width:1px!important;border-left-style:solid!important;border-left-color:rgb(229, 221, 212)!important;border-top-left-radius:16px!important;border-top-right-radius:16px!important;border-bottom-left-radius:16px!important;border-bottom-right-radius:16px!important;box-shadow:rgba(0, 0, 0, 0.06) 0px 2px 15px 0px!important;padding-top:32px!important;padding-right:24px!important;padding-bottom:32px!important;padding-left:24px!important;margin:10px 10px 10px 10px!important;width:auto!important;flex:1 1 auto!important;min-width:0!important;align-self:flex-start!important;align-content:flex-start!important}
.bn-n-f69dd1.bn-n-f69dd1 > p {font-family:"DM Sans", sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;line-height:28.8px!important;color:rgb(107, 107, 107)!important;letter-spacing:normal!important;text-transform:none!important;text-align:center!important;text-decoration-line:none!important;margin-top:0px!important;margin-bottom:0px!important;text-wrap:pretty!important}
.bn-n-f69dd1.bn-n-f69dd1 {font-family:"DM Sans", sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;line-height:28.8px!important;color:rgb(107, 107, 107)!important;letter-spacing:normal!important;text-transform:none!important;text-align:center!important;text-decoration-line:none!important}
/* page 445 */
.bn-n-26d7eb.bn-n-26d7eb {padding-top:20px!important}
.bn-n-2cbfdf.bn-n-2cbfdf > p {font-family:"DM Sans", sans-serif!important;font-size:11px!important;font-weight:600!important;font-style:normal!important;line-height:17.6px!important;color:rgb(140, 100, 64)!important;letter-spacing:2.2px!important;text-transform:uppercase!important;text-align:start!important;text-decoration-line:none!important;margin-top:0px!important;margin-bottom:0px!important;text-wrap:pretty!important}
.bn-n-2cbfdf.bn-n-2cbfdf {font-family:"DM Sans", sans-serif!important;font-size:11px!important;font-weight:600!important;font-style:normal!important;line-height:17.6px!important;color:rgb(140, 100, 64)!important;letter-spacing:2.2px!important;text-transform:uppercase!important;text-align:start!important;text-decoration-line:none!important}
@media (max-width: 767px) {
	.bn-n-61f455.bn-n-61f455 .elementor-heading-title {font-size:20px!important;line-height:24px!important}
}
.bn-n-71d455.bn-n-71d455 > .elementor-widget-wrap {background-color:rgb(255, 255, 255)!important;border-top-width:2px!important;border-top-style:solid!important;border-top-color:rgb(196, 149, 106)!important;border-right-width:2px!important;border-right-style:solid!important;border-right-color:rgb(196, 149, 106)!important;border-bottom-width:2px!important;border-bottom-style:solid!important;border-bottom-color:rgb(196, 149, 106)!important;border-left-width:2px!important;border-left-style:solid!important;border-left-color:rgb(196, 149, 106)!important;border-top-left-radius:16px!important;border-top-right-radius:16px!important;border-bottom-left-radius:16px!important;border-bottom-right-radius:16px!important;box-shadow:rgba(196, 149, 106, 0.15) 0px 4px 20px 0px!important;padding-top:40px!important;padding-right:32px!important;padding-bottom:40px!important;padding-left:32px!important;margin:10px 10px 10px 10px!important;width:auto!important;flex:1 1 auto!important;min-width:0!important;flex-direction:column!important;flex-wrap:nowrap!important;align-content:stretch!important}
.elementor .elementor-element.elementor-element-ab8f357 {margin-top:auto!important}
.elementor .elementor-element.elementor-element-7edd887 {margin-top:auto!important}
/* page 418 */
.bn-n-5016d9.bn-n-5016d9 > p {font-family:"DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;line-height:28.8px!important;color:rgb(107, 107, 107)!important;letter-spacing:normal!important;text-transform:none!important;text-align:center!important;text-decoration-line:none!important;margin-top:0px!important;margin-bottom:0px!important;max-width:700px!important;margin-left:auto!important;margin-right:auto!important;text-wrap:pretty!important}
.bn-n-5016d9.bn-n-5016d9 {font-family:"DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;line-height:28.8px!important;color:rgb(107, 107, 107)!important;letter-spacing:normal!important;text-transform:none!important;text-align:center!important;text-decoration-line:none!important}
.bn-n-578db8.bn-n-578db8 > ul {font-family:"DM Sans", sans-serif!important;font-size:14px!important;font-weight:400!important;font-style:normal!important;line-height:25.2px!important;color:rgb(107, 107, 107)!important;letter-spacing:normal!important;text-transform:none!important;text-align:start!important;text-decoration-line:none!important;margin-top:0px!important;margin-bottom:0px!important;padding-top:0px!important;padding-right:0px!important;padding-bottom:0px!important;padding-left:19.2px!important;list-style-type:disc!important;list-style-position:outside!important}
.bn-n-578db8.bn-n-578db8 {font-family:"DM Sans", sans-serif!important;font-size:14px!important;font-weight:400!important;font-style:normal!important;line-height:25.2px!important;color:rgb(107, 107, 107)!important;letter-spacing:normal!important;text-transform:none!important;text-align:start!important;text-decoration-line:none!important}
.bn-n-578db8.bn-n-578db8 li {font-family:"DM Sans", sans-serif!important;font-size:14px!important;font-weight:400!important;font-style:normal!important;line-height:25.2px!important;color:rgb(107, 107, 107)!important;letter-spacing:normal!important;text-transform:none!important;text-align:start!important;text-decoration-line:none!important;margin-top:0px!important;margin-bottom:6.4px!important;padding-top:0px!important;padding-bottom:0px!important;padding-left:0px!important;list-style-type:disc!important;display:list-item!important}
.bn-n-578db8.bn-n-578db8 > ul > li:first-child, .bn-n-578db8.bn-n-578db8 > ol > li:first-child {margin-top:0px!important}
.bn-n-578db8.bn-n-578db8 > ul > li:last-child, .bn-n-578db8.bn-n-578db8 > ol > li:last-child {margin-bottom:0px!important}
.bn-n-7d729e.bn-n-7d729e .elementor-heading-title {font-family:"Playfair Display", serif!important;font-size:20px!important;font-weight:600!important;font-style:normal!important;line-height:24px!important;color:rgb(140, 100, 64)!important;letter-spacing:normal!important;text-transform:none!important;text-align:start!important;text-decoration-line:none!important;margin:0px!important;padding:0px!important;text-wrap:balance!important}
.bn-n-a01788.bn-n-a01788 > p {font-family:"DM Sans", sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;line-height:28.8px!important;color:rgb(107, 107, 107)!important;letter-spacing:normal!important;text-transform:none!important;text-align:start!important;text-decoration-line:none!important;margin-top:0px!important;margin-bottom:0px!important;text-wrap:pretty!important}
.bn-n-a01788.bn-n-a01788 {font-family:"DM Sans", sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;line-height:28.8px!important;color:rgb(107, 107, 107)!important;letter-spacing:normal!important;text-transform:none!important;text-align:start!important;text-decoration-line:none!important}
.bn-n-a01788.bn-n-a01788 a {font-weight:600!important;color:rgb(140, 100, 64)!important;text-decoration-line:underline!important;text-decoration-color:rgb(140, 100, 64)!important;text-underline-offset:2.4px!important}
.bn-n-f617c2.bn-n-f617c2 > p {font-family:"DM Sans", sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;line-height:28.8px!important;color:rgb(107, 107, 107)!important;letter-spacing:normal!important;text-transform:none!important;text-align:start!important;text-decoration-line:none!important;margin-top:0px!important;margin-bottom:0px!important;text-wrap:pretty!important}
.bn-n-f617c2.bn-n-f617c2 {font-family:"DM Sans", sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;line-height:28.8px!important;color:rgb(107, 107, 107)!important;letter-spacing:normal!important;text-transform:none!important;text-align:start!important;text-decoration-line:none!important}
.bn-n-f617c2.bn-n-f617c2 a {font-weight:600!important;color:rgb(140, 100, 64)!important;text-decoration-line:underline!important;text-decoration-color:rgb(140, 100, 64)!important;text-underline-offset:2.4px!important;white-space:nowrap!important}
@media (max-width: 767px) {
	.bn-n-f78a9f.bn-n-f78a9f .elementor-heading-title {font-size:20px!important;line-height:24px!important}
}
/* page 14 */
.bn-n-04aaff.bn-n-04aaff .elementor-heading-title {font-family:"Playfair Display", serif!important;font-size:20px!important;font-weight:600!important;font-style:normal!important;line-height:26px!important;color:rgb(44, 44, 44)!important;letter-spacing:normal!important;text-transform:none!important;text-align:start!important;text-decoration-line:none!important;margin:0px!important;padding:0px!important;text-wrap:balance!important}
.bn-n-0eac60.bn-n-0eac60 a {color:rgb(140, 100, 64)!important;text-decoration-line:none!important;display:inline!important;min-height:0px!important;align-items:normal!important}
.bn-n-0eac60.bn-n-0eac60 > p {font-family:"DM Sans", sans-serif!important;font-size:13px!important;font-weight:600!important;font-style:normal!important;line-height:25.6px!important;color:rgb(140, 100, 64)!important;letter-spacing:0.65px!important;text-transform:uppercase!important;text-align:start!important;text-decoration-line:none!important;margin-top:0px!important;margin-bottom:0px!important}
.bn-n-0eac60.bn-n-0eac60 {font-family:"DM Sans", sans-serif!important;font-size:13px!important;font-weight:600!important;font-style:normal!important;line-height:20.8px!important;color:rgb(140, 100, 64)!important;letter-spacing:0.65px!important;text-transform:uppercase!important;text-align:start!important;text-decoration-line:none!important}
@media (max-width: 767px) {
	.bn-n-0eac60.bn-n-0eac60 a {display:inline-flex!important;min-height:44px!important;align-items:center!important}
	.bn-n-0eac60.bn-n-0eac60 > p {display:inline-flex!important;flex-direction:row!important;flex-wrap:nowrap!important;justify-content:normal!important;align-items:center!important;row-gap:normal!important;column-gap:normal!important;grid-template-columns:none!important}
}
.bn-n-16db53.bn-n-16db53 {overflow:hidden!important;aspect-ratio:16/9!important;text-align:left!important;line-height:0!important}
.bn-n-16db53.bn-n-16db53 img {width:100%!important;height:100%!important;object-fit:cover!important;display:block!important;transition:transform 0.4s ease!important;max-width:100%!important}
.bn-n-234a34.bn-n-234a34 > .elementor-widget-wrap {background-color:rgb(255, 255, 255)!important;border-top-width:1px!important;border-top-style:solid!important;border-top-color:rgb(229, 221, 212)!important;border-right-width:1px!important;border-right-style:solid!important;border-right-color:rgb(229, 221, 212)!important;border-bottom-width:1px!important;border-bottom-style:solid!important;border-bottom-color:rgb(229, 221, 212)!important;border-left-width:1px!important;border-left-style:solid!important;border-left-color:rgb(229, 221, 212)!important;border-top-left-radius:16px!important;border-top-right-radius:16px!important;border-bottom-left-radius:16px!important;border-bottom-right-radius:16px!important;box-shadow:rgba(0, 0, 0, 0.06) 0px 2px 15px 0px!important;padding-top:28px!important;padding-right:24px!important;padding-bottom:28px!important;padding-left:24px!important;margin:10px 10px 10px 10px!important;width:auto!important;flex:1 1 auto!important;min-width:0!important;align-self:flex-start!important;align-content:flex-start!important}
.bn-n-23dbdc.bn-n-23dbdc > p {font-family:"DM Sans", sans-serif!important;font-size:17px!important;font-weight:400!important;font-style:normal!important;line-height:30.6px!important;color:rgba(255, 255, 255, 0.8)!important;letter-spacing:normal!important;text-transform:none!important;text-align:center!important;text-decoration-line:none!important;margin-top:0px!important;margin-bottom:0px!important;max-width:720px!important;margin-left:auto!important;margin-right:auto!important;text-wrap:pretty!important}
.bn-n-23dbdc.bn-n-23dbdc {font-family:"DM Sans", sans-serif!important;font-size:17px!important;font-weight:400!important;font-style:normal!important;line-height:30.6px!important;color:rgba(255, 255, 255, 0.8)!important;letter-spacing:normal!important;text-transform:none!important;text-align:center!important;text-decoration-line:none!important}
.bn-n-38d566.bn-n-38d566 > p {font-family:"DM Sans", sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;line-height:25.6px!important;color:rgb(107, 107, 107)!important;letter-spacing:normal!important;text-transform:none!important;text-align:start!important;text-decoration-line:none!important;margin-top:0px!important;margin-bottom:0px!important;text-wrap:pretty!important}
.bn-n-38d566.bn-n-38d566 {font-family:"DM Sans", sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;line-height:25.6px!important;color:rgb(107, 107, 107)!important;letter-spacing:normal!important;text-transform:none!important;text-align:start!important;text-decoration-line:none!important}
.bn-n-38d566.bn-n-38d566 strong {font-weight:700!important;color:rgb(140, 100, 64)!important}
.bn-n-491ad2.bn-n-491ad2 > p {font-family:"DM Sans", sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;line-height:25.6px!important;color:rgb(107, 107, 107)!important;letter-spacing:normal!important;text-transform:none!important;text-align:start!important;text-decoration-line:none!important;margin-top:0px!important;margin-bottom:0px!important;text-wrap:pretty!important}
.bn-n-491ad2.bn-n-491ad2 {font-family:"DM Sans", sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;line-height:25.6px!important;color:rgb(107, 107, 107)!important;letter-spacing:normal!important;text-transform:none!important;text-align:start!important;text-decoration-line:none!important}
.bn-n-491ad2.bn-n-491ad2 strong {font-weight:600!important;color:rgb(140, 100, 64)!important}
.bn-n-739397.bn-n-739397 > p {font-family:"DM Sans", sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;line-height:28.8px!important;color:rgb(107, 107, 107)!important;letter-spacing:normal!important;text-transform:none!important;text-align:center!important;text-decoration-line:none!important;margin-top:0px!important;margin-bottom:0px!important;max-width:760px!important;margin-left:auto!important;margin-right:auto!important;text-wrap:pretty!important}
.bn-n-739397.bn-n-739397 {font-family:"DM Sans", sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;line-height:28.8px!important;color:rgb(107, 107, 107)!important;letter-spacing:normal!important;text-transform:none!important;text-align:center!important;text-decoration-line:none!important}
.bn-n-7ebe9b.bn-n-7ebe9b > p {font-family:"DM Sans", sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;line-height:28.8px!important;color:rgba(255, 255, 255, 0.75)!important;letter-spacing:normal!important;text-transform:none!important;text-align:center!important;text-decoration-line:none!important;margin-top:0px!important;margin-bottom:0px!important;text-wrap:pretty!important}
.bn-n-7ebe9b.bn-n-7ebe9b {font-family:"DM Sans", sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;line-height:28.8px!important;color:rgba(255, 255, 255, 0.75)!important;letter-spacing:normal!important;text-transform:none!important;text-align:center!important;text-decoration-line:none!important}
.bn-n-91af41.bn-n-91af41 > p {font-family:"DM Sans", sans-serif!important;font-size:17px!important;font-weight:400!important;font-style:normal!important;line-height:30.6px!important;color:rgb(107, 107, 107)!important;letter-spacing:normal!important;text-transform:none!important;text-align:center!important;text-decoration-line:none!important;margin-top:0px!important;margin-bottom:0px!important;max-width:720px!important;margin-left:auto!important;margin-right:auto!important;text-wrap:pretty!important}
.bn-n-91af41.bn-n-91af41 {font-family:"DM Sans", sans-serif!important;font-size:17px!important;font-weight:400!important;font-style:normal!important;line-height:30.6px!important;color:rgb(107, 107, 107)!important;letter-spacing:normal!important;text-transform:none!important;text-align:center!important;text-decoration-line:none!important}
.bn-n-945be4.bn-n-945be4 > p {font-family:"DM Sans", sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:italic!important;line-height:27.2px!important;color:rgb(107, 107, 107)!important;letter-spacing:normal!important;text-transform:none!important;text-align:start!important;text-decoration-line:none!important;margin-top:0px!important;margin-bottom:0px!important;text-wrap:pretty!important}
.bn-n-945be4.bn-n-945be4 {font-family:"DM Sans", sans-serif!important;font-size:16px!important;font-weight:400!important;font-style:italic!important;line-height:27.2px!important;color:rgb(107, 107, 107)!important;letter-spacing:normal!important;text-transform:none!important;text-align:start!important;text-decoration-line:none!important}
.bn-n-a114fd.bn-n-a114fd .elementor-icon-list-items {margin:0px!important;padding:0px!important;list-style:none!important}
.bn-n-a114fd.bn-n-a114fd .elementor-icon-list-item {display:block!important;font-family:"DM Sans", sans-serif!important;font-size:15px!important;font-weight:400!important;font-style:normal!important;line-height:28.5px!important;color:rgb(58, 58, 58)!important;letter-spacing:normal!important;text-transform:none!important;text-align:start!important;text-decoration-line:none!important;margin:0px 0px 12px 0px!important;padding:0px!important}
.bn-n-a114fd.bn-n-a114fd .elementor-icon-list-item:last-child {margin-bottom:0px!important}
.bn-n-a114fd.bn-n-a114fd .elementor-icon-list-item::before {content:"✓ "!important;color:rgb(58, 58, 58)!important;font-size:15px!important;font-weight:400!important;line-height:28.5px!important;font-family:"DM Sans", sans-serif!important;flex-shrink:0!important}
.bn-n-a114fd.bn-n-a114fd .elementor-icon-list-text {font-family:"DM Sans", sans-serif!important;font-size:15px!important;font-weight:400!important;font-style:normal!important;line-height:28.5px!important;color:rgb(58, 58, 58)!important;letter-spacing:normal!important;text-transform:none!important;text-align:start!important;text-decoration-line:none!important;padding:0px!important;margin:0px!important;align-self:auto!important;display:inline!important}
.bn-n-a114fd.bn-n-a114fd .elementor-icon-list-text strong {font-weight:700!important}
.bn-n-a4a8c5.bn-n-a4a8c5 .elementor-heading-title {font-family:"Playfair Display", serif!important;font-size:20px!important;font-weight:600!important;font-style:normal!important;line-height:26px!important;color:rgb(44, 44, 44)!important;letter-spacing:normal!important;text-transform:none!important;text-align:start!important;text-decoration-line:none!important;margin:0px!important;padding:0px!important;text-wrap:balance!important}
.bn-n-a4a8c5.bn-n-a4a8c5 .elementor-heading-title a {color:rgb(44, 95, 46)!important;text-decoration-line:none!important}
.bn-n-ad9669.bn-n-ad9669 > .elementor-widget-wrap {background-color:rgb(255, 255, 255)!important;border-top-width:1px!important;border-top-style:solid!important;border-top-color:rgb(229, 221, 212)!important;border-right-width:1px!important;border-right-style:solid!important;border-right-color:rgb(229, 221, 212)!important;border-bottom-width:1px!important;border-bottom-style:solid!important;border-bottom-color:rgb(229, 221, 212)!important;border-left-width:1px!important;border-left-style:solid!important;border-left-color:rgb(229, 221, 212)!important;border-top-left-radius:16px!important;border-top-right-radius:16px!important;border-bottom-left-radius:16px!important;border-bottom-right-radius:16px!important;box-shadow:rgba(0, 0, 0, 0.06) 0px 2px 15px 0px!important;padding-top:0px!important;padding-right:0px!important;padding-bottom:0px!important;padding-left:0px!important;overflow:hidden!important;margin:10px 10px 10px 10px!important;width:auto!important;flex:1 1 auto!important;min-width:0!important;align-content:flex-start!important}
.bn-n-b2d205.bn-n-b2d205 > .elementor-widget-wrap {background-color:rgb(255, 255, 255)!important;border-top-width:1px!important;border-top-style:solid!important;border-top-color:rgb(229, 221, 212)!important;border-right-width:1px!important;border-right-style:solid!important;border-right-color:rgb(229, 221, 212)!important;border-bottom-width:1px!important;border-bottom-style:solid!important;border-bottom-color:rgb(229, 221, 212)!important;border-left-width:1px!important;border-left-style:solid!important;border-left-color:rgb(229, 221, 212)!important;border-top-left-radius:16px!important;border-top-right-radius:16px!important;border-bottom-left-radius:16px!important;border-bottom-right-radius:16px!important;box-shadow:rgba(0, 0, 0, 0.06) 0px 2px 15px 0px!important;padding-top:0px!important;padding-right:0px!important;padding-bottom:0px!important;padding-left:0px!important;overflow:hidden!important;margin:10px 10px 10px 10px!important;width:auto!important;flex:1 1 auto!important;min-width:0!important;align-self:flex-start!important;align-content:flex-start!important}
.bn-n-b86b5f.bn-n-b86b5f > p {font-family:"DM Sans", sans-serif!important;font-size:18px!important;font-weight:400!important;font-style:italic!important;line-height:28.8px!important;color:rgba(255, 255, 255, 0.9)!important;letter-spacing:normal!important;text-transform:none!important;text-align:center!important;text-decoration-line:none!important;margin-top:0px!important;margin-bottom:0px!important;text-wrap:pretty!important}
.bn-n-b86b5f.bn-n-b86b5f {font-family:"DM Sans", sans-serif!important;font-size:18px!important;font-weight:400!important;font-style:italic!important;line-height:28.8px!important;color:rgba(255, 255, 255, 0.9)!important;letter-spacing:normal!important;text-transform:none!important;text-align:center!important;text-decoration-line:none!important}
.bn-n-c05589.bn-n-c05589 {overflow:hidden!important;border-top-left-radius:12px!important;border-top-right-radius:12px!important;border-bottom-left-radius:12px!important;border-bottom-right-radius:12px!important;aspect-ratio:4/3!important;text-align:left!important;line-height:0!important}
.bn-n-c05589.bn-n-c05589 img {width:100%!important;height:100%!important;object-fit:cover!important;display:block!important;max-width:100%!important}
.bn-n-d5679a.bn-n-d5679a > p {font-family:"Cormorant Garamond", serif!important;font-size:22px!important;font-weight:400!important;font-style:italic!important;line-height:35.2px!important;color:rgba(255, 255, 255, 0.9)!important;letter-spacing:normal!important;text-transform:none!important;text-align:center!important;text-decoration-line:none!important;margin-top:0px!important;margin-bottom:0px!important;max-width:700px!important;margin-left:auto!important;margin-right:auto!important;text-wrap:pretty!important}
.bn-n-d5679a.bn-n-d5679a {font-family:"Cormorant Garamond", serif!important;font-size:22px!important;font-weight:400!important;font-style:italic!important;line-height:35.2px!important;color:rgba(255, 255, 255, 0.9)!important;letter-spacing:normal!important;text-transform:none!important;text-align:center!important;text-decoration-line:none!important}
.bn-n-dd52bb.bn-n-dd52bb .elementor-heading-title {font-family:"Playfair Display", serif!important;font-size:26px!important;font-weight:600!important;font-style:normal!important;line-height:31.2px!important;color:rgb(44, 44, 44)!important;letter-spacing:normal!important;text-transform:none!important;text-align:center!important;text-decoration-line:none!important;margin:0px!important;padding:0px!important;text-wrap:balance!important}
@media (max-width: 767px) {
	.bn-n-dd52bb.bn-n-dd52bb .elementor-heading-title {font-size:20px!important;line-height:24px!important}
}
.bn-n-ea99bf.bn-n-ea99bf > .elementor-widget-wrap {background-color:rgb(255, 255, 255)!important;border-top-width:1px!important;border-top-style:solid!important;border-top-color:rgb(229, 221, 212)!important;border-right-width:1px!important;border-right-style:solid!important;border-right-color:rgb(229, 221, 212)!important;border-bottom-width:1px!important;border-bottom-style:solid!important;border-bottom-color:rgb(229, 221, 212)!important;border-left-width:1px!important;border-left-style:solid!important;border-left-color:rgb(229, 221, 212)!important;border-top-left-radius:16px!important;border-top-right-radius:16px!important;border-bottom-left-radius:16px!important;border-bottom-right-radius:16px!important;box-shadow:rgba(0, 0, 0, 0.06) 0px 2px 15px 0px!important;padding-top:28px!important;padding-right:24px!important;padding-bottom:28px!important;padding-left:24px!important;margin:10px 10px 10px 10px!important;width:auto!important;flex:1 1 auto!important;min-width:0!important;align-content:flex-start!important}
/* ==== FIN : pages en widgets natifs ==== */
