/* Aria Bello — luxury editorial layer */

:root {
	--gold: #B8956E;
	--gold-light: #D4BC94;
	--gold-muted: rgba(184, 149, 110, 0.45);
	--champagne: #EBE3D6;
	--lux-shadow: 0 28px 70px rgba(17, 17, 17, 0.07);
	--lux-shadow-hover: 0 32px 80px rgba(17, 17, 17, 0.11);
	--lux-line: linear-gradient(90deg, transparent, var(--gold-light) 20%, var(--sage) 50%, var(--gold-light) 80%, transparent);
}

/* ——— Global ornaments ——— */
.aria-luxury-ornament {
	display: none;
}

.aria-header {
	border-bottom-color: rgba(184, 149, 110, 0.2);
	box-shadow: 0 1px 0 rgba(184, 149, 110, 0.12);
}
.aria-header-brand--text {
	letter-spacing: 0.22em;
}

/* ——— Typography & section headers ——— */
.section-num,
.hero-index,
.ih-index,
.about-kicker,
.contact-links-kicker,
.newsletter-kicker {
	color: var(--gold) !important;
	opacity: 0.92;
}
.section-line,
.hero-rule {
	background: var(--lux-line) !important;
	height: 1px;
}
.section-title,
.hero-h1,
.ih-h1,
.about-hero-title,
.contact-form-title {
	letter-spacing: -0.01em;
}
.section-title em,
.hero-h1 em,
.ih-h1 em {
	color: rgba(68, 68, 68, 0.85);
}

/* ——— Hero luxury frame ——— */
.hero-image {
	box-shadow: inset 0 0 0 1px rgba(184, 149, 110, 0.15);
}
.hero-image::after {
	content: '';
	position: absolute;
	inset: 24px;
	border: 1px solid rgba(249, 247, 244, 0.35);
	pointer-events: none;
	z-index: 1;
}
.hero-text {
	background: linear-gradient(165deg, rgba(249, 247, 244, 0.98) 0%, rgba(242, 239, 233, 0.92) 100%);
}

/* ——— Buttons ——— */
.btn-jet,
.button.btn-jet,
a.btn-jet,
.contact-form-wrap .wpcf7-form .wpcf7-submit,
.newsletter-form .btn-jet,
.bk-pay {
	letter-spacing: 0.26em !important;
	box-shadow: var(--lux-shadow);
	transition: background 0.3s, box-shadow 0.3s, transform 0.25s !important;
}
.btn-jet:hover,
.contact-form-wrap .wpcf7-form .wpcf7-submit:hover,
.newsletter-form .btn-jet:hover {
	box-shadow: 0 12px 36px rgba(184, 149, 110, 0.22);
	transform: translateY(-1px);
}
.btn-line:hover {
	color: var(--gold);
	border-bottom-color: var(--gold);
}

/* ——— Cards & panels ——— */
.prod--fancy,
.tc--fancy,
.contact-card,
.contact-link-card,
.about-pillar,
.about-catering-card,
.about-founder-card,
.about-value-chip span {
	transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.4s, border-color 0.35s !important;
}
.prod--fancy:hover,
.tc--fancy:hover,
.contact-card:hover,
.contact-link-card:hover,
.about-pillar:hover,
.about-catering-card:hover {
	box-shadow: var(--lux-shadow-hover) !important;
}
.contact-card {
	position: relative;
}
.contact-card::before,
.contact-link-card::before,
.about-pillar::before {
	content: '';
	display: block;
	width: 24px;
	height: 1px;
	background: var(--gold-light);
	margin-bottom: 16px;
	opacity: 0;
	transition: opacity 0.35s, width 0.35s;
}
.contact-card::before {
	margin-bottom: 0;
	position: absolute;
	top: 18px;
	left: 28px;
}
.contact-card:hover::before,
.contact-link-card:hover::before,
.about-pillar:hover::before {
	opacity: 1;
	width: 40px;
}
.contact-card:hover::before {
	width: 32px;
}

.shop-sec--fancy,
.shop-sec--gloss,
.shop-sec--hair {
	position: relative;
}
.shop-sec--fancy::after {
	content: '◆';
	position: absolute;
	top: 32px;
	right: 56px;
	font-size: 0.5rem;
	color: var(--gold-muted);
	letter-spacing: 0;
}

/* ——— Inner pages ——— */
.inner-hero,
.contact-hero--fancy,
.about-hero {
	position: relative;
}
.inner-hero::after,
.contact-hero--fancy::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 56px;
	right: 56px;
	height: 1px;
	background: var(--lux-line);
}
.contact-hero--premium::before {
	content: '';
	position: absolute;
	inset: 0;
	background-image:
		linear-gradient(rgba(184, 149, 110, 0.035) 1px, transparent 1px),
		linear-gradient(90deg, rgba(184, 149, 110, 0.035) 1px, transparent 1px);
	background-size: 48px 48px;
	mask-image: linear-gradient(180deg, rgba(0, 0, 0, 0.35), transparent 85%);
	pointer-events: none;
}
.contact-studio--premium::after {
	content: '◆';
	position: absolute;
	top: 36px;
	right: 56px;
	font-size: 0.55rem;
	color: var(--gold-muted);
	letter-spacing: 0;
}

.about-stats,
.about-story-band {
	border-top: 1px solid rgba(184, 149, 110, 0.15);
}
.about-stat strong {
	font-family: var(--serif);
	color: var(--jet);
}
.about-founder-card {
	border-color: rgba(184, 149, 110, 0.25);
	background: linear-gradient(145deg, #F5F2EC, #F9F7F4);
}

/* ——— Map & form ——— */
.contact-map-frame {
	box-shadow: var(--lux-shadow);
	border-color: rgba(184, 149, 110, 0.25);
}
.contact-map-pin-card {
	border-color: rgba(184, 149, 110, 0.3);
}
.contact-map-corner {
	border-color: var(--gold-light);
}
.contact-form-sec--fancy {
	background: linear-gradient(165deg, #F0EBE3 0%, #F2EFE9 100%);
}

/* ——— Footer ——— */
.aria-footer--fancy {
	border-top: 1px solid rgba(184, 149, 110, 0.2);
	background: linear-gradient(180deg, #F0EBE3 0%, #F9F7F4 55%, #F5F2EC 100%);
}
.aria-footer--fancy::before {
	content: '◆';
	display: block;
	text-align: center;
	font-size: 0.45rem;
	color: var(--gold-muted);
	padding-top: 28px;
	letter-spacing: 0.5em;
}
.footer-bottom--fancy {
	border-top: 1px solid rgba(184, 149, 110, 0.15);
}

/* ——— Elementor sections ——— */
.elementor-page .elementor-top-section:not(:first-child) {
	position: relative;
}
.elementor-page .elementor-top-section:not(:first-child)::before {
	content: '';
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	width: min(180px, 30%);
	height: 1px;
	background: var(--lux-line);
	z-index: 1;
}

/* ——— Booking form panel ——— */
.booking-sec .nife-booking,
.booking-grid--page .nife-booking {
	border-color: rgba(184, 149, 110, 0.2);
	box-shadow: var(--lux-shadow);
}

@media (max-width: 768px) {
	.aria-luxury-ornament {
		margin-left: 0;
		padding: 12px 24px;
	}
	.shop-sec--fancy::after {
		display: none;
	}
}
