body { font-family: 'Inter', sans-serif; }
h1, h2, h3, h4, h5, h6, .font-geist { font-family: 'Geist', sans-serif; }
::-webkit-scrollbar { width: 6px; }
::-webkit-scrollbar-track { background: #F8FAFC; }
::-webkit-scrollbar-thumb { background: #2563EB; border-radius: 8px; }

.faq-answer { max-height: 0; overflow: hidden; transition: max-height 0.4s ease, padding 0.3s ease; }
.faq-item.active .faq-answer { max-height: 400px; padding-top: 16px; }
.faq-item.active .faq-chevron { transform: rotate(180deg); }
.faq-chevron { transition: transform 0.3s ease; }
.testimonial-track { transition: transform 0.5s cubic-bezier(0.25, 1, 0.5, 1); }

/* LDSMS plugin compatibility: keep React app readable inside Tailwind theme */
.ldsms-booking-root { font-family: 'Inter', sans-serif; }
.ldsms-booking-root button { cursor: pointer; }

/* Widen LDSMS containers (overrides build/frontend.css: .ldsms-booking max-width:1100px).
   Loaded from theme so site owners can tune width without touching the plugin. */
body .ldsms-booking {
	max-width: 1400px !important;
	width: 100%;
}
body .ldsms-booking__header {
	max-width: 1000px;
}
body .ldsms-service-detail {
	max-width: 1100px !important;
}
body .ldsms-form--checkout,
body .ldsms-payment-methods {
	max-width: 100%;
}
/* Let the service grid use the extra width: more cards per row on desktop */
body .ldsms-service-grid {
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 1fr));
}
/* Widen the theme's own page wrapper when it holds a booking app */
body .ldsms-booking-root {
	width: 100%;
}

/* WordPress core alignments */
.alignwide { max-width: 80rem; margin-left: auto; margin-right: auto; }
.alignfull { max-width: 100%; }
.wp-block-image img { border-radius: 0.75rem; }
