/**
 * Dannibiz — global Elementor design refresh (content unchanged).
 */

.dannibiz-design {
	--db-navy: #0b1d36;
	--db-navy-mid: #132d52;
	--db-blue: #1a4d8f;
	--db-gold: #d4a853;
	--db-gold-dark: #b8892f;
	--db-cream: #f7f4ef;
	--db-white: #ffffff;
	--db-text: #334155;
	--db-muted: #64748b;
	--db-border: #e2e8f0;
	--db-shadow: 0 20px 50px rgba(11, 29, 54, 0.1);
	--db-shadow-lg: 0 28px 60px rgba(11, 29, 54, 0.16);
	--db-radius: 16px;
	--db-radius-sm: 10px;
	--db-font: "DM Sans", system-ui, sans-serif;
	--db-display: "Playfair Display", Georgia, serif;
	--db-header-offset: 120px;
	scroll-behavior: smooth;
}

.dannibiz-design body,
.dannibiz-design .elementor-widget-text-editor,
.dannibiz-design .elementor-icon-box-description,
.dannibiz-design .elementor-accordion .elementor-tab-content,
.dannibiz-design .elementor-icon-list-text {
	font-family: var(--db-font);
	color: var(--db-text);
}

/* ── Typography ── */
.dannibiz-design .elementor-heading-title {
	font-family: var(--db-display) !important;
	color: var(--db-navy) !important;
	letter-spacing: -0.02em;
	line-height: 1.2 !important;
}

.dannibiz-design .elementor-158 .elementor-heading-title,
.dannibiz-design .elementor-44 .deensimc-scroll-text {
	font-family: var(--db-font) !important;
}

.dannibiz-design .elementor-widget-divider .elementor-divider-separator {
	border-color: var(--db-gold) !important;
	opacity: 1;
}

/* ── Sticky header shell (details in header-footer.css) ── */
.dannibiz-design .hfe-site-header,
.dannibiz-design header[data-elementor-type="header"] {
	position: sticky;
	top: 0;
	z-index: 1000;
}

/* ── Buttons ── */
.dannibiz-design .elementor-button {
	font-family: var(--db-font) !important;
	font-weight: 600 !important;
	border-radius: 999px !important;
	transition: transform 0.3s ease, box-shadow 0.3s ease, background 0.3s ease !important;
}

.dannibiz-design .elementor-button:not(.hfe-menu-item) {
	background: linear-gradient(135deg, var(--db-navy), var(--db-blue)) !important;
	color: var(--db-white) !important;
	border: none !important;
	box-shadow: 0 10px 28px rgba(11, 29, 54, 0.22);
}

.dannibiz-design .elementor-button:not(.hfe-menu-item):hover,
.dannibiz-design .elementor-button:not(.hfe-menu-item):focus {
	background: linear-gradient(135deg, var(--db-gold), var(--db-gold-dark)) !important;
	color: var(--db-navy) !important;
	transform: translateY(-3px);
	box-shadow: 0 14px 32px rgba(212, 168, 83, 0.35);
}

/* ── Sections & containers ── */
.dannibiz-design .elementor-section,
.dannibiz-design .e-con.e-parent {
	position: relative;
}

.dannibiz-design .elementor-location-header .elementor-section.elementor-top-section,
.dannibiz-design .elementor-location-footer .elementor-section.elementor-top-section:not(.elementor-element-2644a1e6):not(.elementor-element-24a098f8),
.dannibiz-design .elementor-44 .elementor-section.elementor-top-section,
.dannibiz-design .elementor-158 .elementor-section.elementor-top-section:not(.elementor-element-2644a1e6):not(.elementor-element-24a098f8) {
	padding-top: 0 !important;
	padding-bottom: 0 !important;
}

.dannibiz-design main .elementor-section.elementor-top-section,
.dannibiz-design .elementor-location-content .elementor-section.elementor-top-section {
	padding-top: clamp(56px, 8vw, 96px) !important;
	padding-bottom: clamp(56px, 8vw, 96px) !important;
}

.dannibiz-design .elementor-location-header .elementor-section:nth-child(even),
.dannibiz-design .elementor-location-footer .elementor-section:nth-child(even),
.dannibiz-design main .elementor-section:nth-child(even):not([data-settings*="background_background"]) {
	background-color: var(--db-cream);
}

/* ── Icon boxes (services) ── */
.dannibiz-design .elementor-widget-icon-box .elementor-icon-box-wrapper {
	background: var(--db-white);
	border: 1px solid var(--db-border);
	border-radius: var(--db-radius);
	padding: 28px 24px;
	box-shadow: var(--db-shadow);
	transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease;
	height: 100%;
}

.dannibiz-design .elementor-widget-icon-box .elementor-icon-box-wrapper:hover {
	transform: translateY(-8px);
	box-shadow: var(--db-shadow-lg);
	border-color: rgba(212, 168, 83, 0.4);
}

.dannibiz-design .elementor-widget-icon-box .elementor-icon {
	background: linear-gradient(135deg, var(--db-navy), var(--db-blue)) !important;
	color: var(--db-gold) !important;
	border-radius: 14px;
	padding: 14px;
	transition: transform 0.35s ease;
}

.dannibiz-design .elementor-widget-icon-box .elementor-icon-box-wrapper:hover .elementor-icon {
	transform: scale(1.08) rotate(-4deg);
}

.dannibiz-design .elementor-widget-icon-box .elementor-icon-box-title {
	font-family: var(--db-font) !important;
	font-weight: 700 !important;
	color: var(--db-navy) !important;
}

/* ── Image boxes (testimonials) ── */
.dannibiz-design .elementor-widget-image-box .elementor-image-box-wrapper {
	background: var(--db-white);
	border-radius: var(--db-radius);
	padding: 24px;
	box-shadow: var(--db-shadow);
	transition: transform 0.35s ease, box-shadow 0.35s ease;
}

.dannibiz-design .elementor-widget-image-box .elementor-image-box-wrapper:hover {
	transform: translateY(-6px);
	box-shadow: var(--db-shadow-lg);
}

.dannibiz-design .elementor-widget-image-box .elementor-image-box-img img {
	border-radius: var(--db-radius-sm);
}

/* ── Accordion (FAQ) ── */
.dannibiz-design .elementor-widget-accordion .elementor-accordion-item {
	border: 1px solid var(--db-border) !important;
	border-radius: var(--db-radius-sm) !important;
	margin-bottom: 12px;
	overflow: hidden;
	background: var(--db-white);
	transition: box-shadow 0.3s ease;
}

.dannibiz-design .elementor-widget-accordion .elementor-accordion-item:hover {
	box-shadow: var(--db-shadow);
}

.dannibiz-design .elementor-widget-accordion .elementor-tab-title {
	padding: 18px 22px !important;
	font-family: var(--db-font) !important;
	font-weight: 600 !important;
	transition: background 0.25s ease;
}

.dannibiz-design .elementor-widget-accordion .elementor-tab-title.elementor-active {
	background: rgba(212, 168, 83, 0.12);
}

.dannibiz-design .elementor-widget-accordion .elementor-accordion-icon,
.dannibiz-design .elementor-widget-accordion .elementor-accordion-title {
	color: var(--db-navy) !important;
}

.dannibiz-design .elementor-widget-accordion .elementor-active .elementor-accordion-icon,
.dannibiz-design .elementor-widget-accordion .elementor-active .elementor-accordion-title {
	color: var(--db-gold-dark) !important;
}

/* ── Image carousel ── */
.dannibiz-design .elementor-image-carousel-wrapper {
	border-radius: var(--db-radius);
	overflow: hidden;
	box-shadow: var(--db-shadow-lg);
}

.dannibiz-design .elementor-image-carousel-wrapper img {
	border-radius: var(--db-radius);
}

.dannibiz-design .swiper-pagination-bullet-active {
	background: var(--db-gold) !important;
}

/* ── Prime slider hero ── */
.dannibiz-design .bdt-pagepiling-slider .bdt-prime-slider-content .bdt-title-tag {
	font-family: var(--db-display) !important;
	text-shadow: 0 4px 24px rgba(0, 0, 0, 0.35) !important;
}

.dannibiz-design .bdt-pagepiling-slider .bdt-slide-btn .bdt-button-circle {
	background: var(--db-gold) !important;
	transition: transform 0.3s ease;
}

.dannibiz-design .bdt-pagepiling-slider .bdt-slide-btn:hover .bdt-button-circle {
	transform: scale(1.12);
}

.dannibiz-design .bdt-pagepiling-slider #pp-nav li a.active {
	background: var(--db-gold) !important;
}

/* ── Team slider ── */
.dannibiz-design #sptp-1055 .sptp-member {
	background: var(--db-white);
	border-radius: var(--db-radius);
	overflow: hidden;
	box-shadow: var(--db-shadow);
	transition: transform 0.35s ease, box-shadow 0.35s ease;
}

.dannibiz-design #sptp-1055 .sptp-member:hover {
	transform: translateY(-8px);
	box-shadow: var(--db-shadow-lg);
}

.dannibiz-design #sptp-1055 .sptp-member-name-title {
	font-family: var(--db-display) !important;
	color: var(--db-navy) !important;
}

.dannibiz-design #sptp-1055 .sptp-main-carousel .swiper-button-next,
.dannibiz-design #sptp-1055 .sptp-main-carousel .swiper-button-prev {
	background: var(--db-navy);
	border-color: var(--db-navy);
	border-radius: 50%;
	transition: background 0.25s ease, transform 0.25s ease;
}

.dannibiz-design #sptp-1055 .sptp-main-carousel .swiper-button-next:hover,
.dannibiz-design #sptp-1055 .sptp-main-carousel .swiper-button-prev:hover {
	background: var(--db-gold) !important;
	border-color: var(--db-gold) !important;
	color: var(--db-navy) !important;
	transform: scale(1.08);
}

.dannibiz-design #sptp-1055 .swiper-pagination-bullet-active {
	background-color: var(--db-gold) !important;
}

/* ── Dark CTA sections ── */
.dannibiz-design .elementor-section[style*="03406D"],
.dannibiz-design .elementor-element-3a2802c {
	background: linear-gradient(135deg, var(--db-navy), var(--db-navy-mid)) !important;
}

.dannibiz-design .elementor-element-3a2802c .elementor-heading-title,
.dannibiz-design .elementor-element-0573f47 .elementor-heading-title,
.dannibiz-design .elementor-element-d40859a {
	color: var(--db-white) !important;
}

/* ── Contact form (CF7) ── */
.dannibiz-design input[type="text"],
.dannibiz-design input[type="email"],
.dannibiz-design input[type="tel"],
.dannibiz-design input[type="url"],
.dannibiz-design textarea,
.dannibiz-design .wpcf7-form-control {
	border: 1px solid var(--db-border) !important;
	border-radius: var(--db-radius-sm) !important;
	padding: 14px 18px !important;
	font-family: var(--db-font) !important;
	transition: border-color 0.25s ease, box-shadow 0.25s ease;
	box-shadow: none !important;
}

.dannibiz-design input:focus,
.dannibiz-design textarea:focus,
.dannibiz-design .wpcf7-form-control:focus {
	border-color: var(--db-gold) !important;
	box-shadow: 0 0 0 3px rgba(212, 168, 83, 0.2) !important;
	outline: none;
}

.dannibiz-design .wpcf7-submit {
	background: linear-gradient(135deg, var(--db-gold), var(--db-gold-dark)) !important;
	color: var(--db-navy) !important;
	border: none !important;
	border-radius: 999px !important;
	font-weight: 700 !important;
	cursor: pointer;
}

/* ── Icon list checkmarks ── */
.dannibiz-design .elementor-icon-list-icon i,
.dannibiz-design .elementor-icon-list-icon svg {
	color: var(--db-gold) !important;
	fill: var(--db-gold) !important;
}

/* ── Page content area ── */
.dannibiz-design #content.site-main {
	max-width: none;
	padding: 0;
}

.dannibiz-design .page-header {
	display: none;
}

/* ── Inner pages hero spacing (page content only — not HFE header/footer) ── */
.dannibiz-design:not(.home) .elementor[data-elementor-type="wp-page"] > .elementor-section.elementor-top-section:first-of-type {
	padding-top: clamp(40px, 6vw, 72px) !important;
}

/* ── Selection highlight ── */
.dannibiz-design ::selection {
	background: rgba(212, 168, 83, 0.35);
	color: var(--db-navy);
}
