/* Custom overrides on top of the purchased template — kept in this
   single file rather than scattered across the template's own CSS,
   same convention as other Cyfamod-built sites. */

/* Project page sidebar — "Support This Project" merged into the same
   card as Project Info (phone/location), rather than its own separate
   box whose header just repeated its own button's label. */
.sidebar__event-info-btn {
	margin-top: 24px;
}
.sidebar__event-info-btn .thm-btn {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	width: 100%;
	justify-content: center;
}

/* Page loader — replaces the template's 3-dot bouncing spinner with
   the Stovix logo, pulsing in place. .loader's own flex-centering
   (assets/css/style.css) still applies; this just swaps what's inside. */
.stovix-loader-logo {
	width: 220px;
	height: auto;
	animation: stovixLoaderPulse 1.1s ease-in-out infinite;
}
@keyframes stovixLoaderPulse {
	0%, 100% { transform: scale(0.85); opacity: 0.55; }
	50% { transform: scale(1); opacity: 1; }
}
@media (prefers-reduced-motion: reduce) {
	.stovix-loader-logo {
		animation: none;
	}
}

/* Mobile donate CTA, inside the slide-out mobile nav drawer
   (.mobile-nav__content) — the drawer had a nav list but no donate
   button at all, confirmed missing on mobile per client feedback.
   Deliberately NOT reusing the existing .mobile-nav__buttons class —
   that one already has its own unrelated CSS (a compact icon-only row
   for the top header bar, hidden above 1366px) that would make a
   real button render as tiny colored text instead. */
.mobile-nav__cta {
	margin-top: 30px;
}
.mobile-nav__cta .thm-btn {
	display: inline-flex;
	align-items: center;
	gap: 8px;
}

/* WhatsApp floating widget — bottom-left, since .scroll-to-top (the
   template's own "Go Back Top" element) is fixed bottom-right. */
.stovix-wa-widget {
	position: fixed;
	left: 24px;
	bottom: 24px;
	z-index: 9999;
	transition: transform .25s ease-in-out, opacity .25s ease-in-out;
}
/* Fades/slides out of the way while scrolling down past the reading
   column, since it sits over body text that starts flush-left. */
.stovix-wa-widget.stovix-wa-hidden {
	opacity: 0;
	transform: translateX(-16px);
	pointer-events: none;
}
@media (prefers-reduced-motion: reduce) {
	.stovix-wa-widget {
		transition: none;
	}
}
.stovix-wa-button {
	position: relative;
	width: 60px;
	height: 60px;
	border-radius: 50%;
	background: #25D366;
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 28px;
	cursor: pointer;
	box-shadow: 0 6px 20px rgba(0, 0, 0, 0.25);
	transition: transform .2s ease-in-out;
	animation: stovixWaPulse 2.2s ease-in-out infinite;
}
.stovix-wa-button:hover {
	transform: scale(1.08);
}
.stovix-wa-badge {
	position: absolute;
	top: -2px;
	right: -2px;
	width: 20px;
	height: 20px;
	border-radius: 50%;
	background: #FF3B30;
	color: #fff;
	font-size: 11px;
	font-weight: 700;
	display: flex;
	align-items: center;
	justify-content: center;
	border: 2px solid #fff;
}
.stovix-wa-widget.stovix-wa-open .stovix-wa-badge {
	display: none;
}
@keyframes stovixWaPulse {
	0%   { box-shadow: 0 6px 20px rgba(0, 0, 0, 0.25), 0 0 0 0 rgba(37, 211, 102, 0.6); }
	70%  { box-shadow: 0 6px 20px rgba(0, 0, 0, 0.25), 0 0 0 14px rgba(37, 211, 102, 0); }
	100% { box-shadow: 0 6px 20px rgba(0, 0, 0, 0.25), 0 0 0 0 rgba(37, 211, 102, 0); }
}
.stovix-wa-panel {
	position: absolute;
	left: 0;
	bottom: 76px;
	width: 300px;
	background: #fff;
	border-radius: 8px;
	box-shadow: 0 12px 40px rgba(0, 0, 0, 0.2);
	overflow: hidden;
	opacity: 0;
	visibility: hidden;
	transform: translateY(12px);
	transition: all .25s ease-in-out;
}
.stovix-wa-widget.stovix-wa-open .stovix-wa-panel {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}
.stovix-wa-panel-header {
	background: var(--donatix-primary, #013F88);
	padding: 16px;
	display: flex;
	align-items: center;
	gap: 12px;
	position: relative;
}
.stovix-wa-avatar {
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background: #fff;
	padding: 4px;
	box-sizing: border-box;
	flex-shrink: 0;
	object-fit: contain;
}
.stovix-wa-panel-header h5 {
	color: #fff;
	font-size: 14px;
	font-weight: 700;
	margin: 0 0 3px;
}
.stovix-wa-status {
	color: rgba(255, 255, 255, 0.8);
	font-size: 11px;
}
.stovix-wa-status i {
	color: var(--donatix-secondary, #00EFB8);
	font-size: 7px;
	margin-right: 4px;
	vertical-align: middle;
}
.stovix-wa-close {
	position: absolute;
	top: 12px;
	right: 14px;
	color: rgba(255, 255, 255, 0.8);
	cursor: pointer;
	font-size: 14px;
}
.stovix-wa-close:hover {
	color: #fff;
}
.stovix-wa-panel-body {
	padding: 16px;
	background: #ECE5DD;
}
.stovix-wa-bubble {
	background: #fff;
	border-radius: 8px;
	padding: 12px 14px;
	font-size: 13px;
	line-height: 1.5;
	color: #333;
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
}
.stovix-wa-start-btn {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	background: #25D366;
	color: #fff;
	font-size: 13px;
	font-weight: 700;
	text-transform: uppercase;
	padding: 14px;
	transition: background .2s ease-in-out;
}
.stovix-wa-start-btn:hover {
	background: #1DA851;
	color: #fff;
}
.stovix-wa-start-btn i {
	font-size: 18px;
}
@media (max-width: 480px) {
	.stovix-wa-panel {
		width: calc(100vw - 48px);
	}
}
@media (prefers-reduced-motion: reduce) {
	.stovix-wa-button, .stovix-wa-panel {
		transition: none;
		animation: none;
	}
}

/* Our Projects location filter — tabs above the project grid, filtering
   by country. Deliberately named .location-filter-* rather than reusing
   the template's own .post-filter/.filter-layout/.filter-item classes:
   the vendor's script.js binds unscoped click + Isotope handlers to
   those exact class names on every page, which fought this page's own
   filter script for control (see the JS comment further down in
   event-grid.php for the full story). */
.project-location-filter {
	margin-bottom: 40px;
}
.location-filter-tabs {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	list-style: none;
	margin: 0;
	padding: 0;
}
.location-filter-tabs li {
	cursor: pointer;
}
.location-filter-tabs li .filter-text {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 10px 24px;
	border-radius: 30px;
	border: 1px solid rgba(var(--donatix-primary-rgb), 0.2);
	color: var(--donatix-primary);
	font-weight: 600;
	font-size: 15px;
	transition: all .2s ease-in-out;
}
.location-filter-tabs li.active .filter-text,
.location-filter-tabs li:hover .filter-text {
	background: var(--donatix-primary);
	border-color: var(--donatix-primary);
	color: var(--donatix-white);
}
/* South Africa "coming soon" placeholder card — keeps that filter tab
   from showing an empty grid before write-ups for that location exist.
   Hidden on page load and under "All Locations" (see .location-filter-
   item--hidden-by-default below); only revealed by the filter script
   when its own tab is clicked. Content is centered both ways, unlike
   the real project cards, since there's no image and just a short
   message to hold in the middle of the card. */
.event-one__single--coming-soon {
	border: 2px dashed rgba(var(--donatix-primary-rgb), 0.25);
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 280px;
	text-align: center;
}
.event-one__single--coming-soon .event-one__single-inner {
	/* Without this, .event-one__single-inner shrinks to fit its own text
	   (default flex-item sizing), leaving no extra horizontal space for
	   text-align: center on its children to actually center anything
	   within -- the box was exactly as wide as the text itself. */
	width: 100%;
}
.event-one__single--coming-soon .event-one__single-content {
	margin: 0 auto;
	max-width: 420px;
}
.event-one__single--coming-soon .icon-heart {
	display: inline-block;
	font-size: 32px;
	color: var(--donatix-secondary);
	margin-bottom: 16px;
}
.location-filter-item--hidden-by-default {
	display: none;
}

/* Project photo gallery — added to event-details pages so client photos
   beyond the template's 3 fixed image slots have somewhere to go.
   Reuses .gallery-page__single (assets/css/module-css/gallery.css) for
   the tile look; this just adds the section spacing + smaller mobile
   thumbnail height so a 2-column phone grid doesn't get too tall. */
.project-gallery {
	position: relative;
	display: block;
	padding: 0 0 80px;
}
.project-gallery .sec-title {
	margin-bottom: 40px;
}
.project-gallery__single .gallery-page__single-img img {
	height: 220px;
}
@media (max-width: 767px) {
	.project-gallery__single .gallery-page__single-img img {
		height: 160px;
	}
}
.project-gallery__single--hidden {
	display: none;
}
.project-gallery__load-more-box {
	display: flex;
	justify-content: center;
	margin-top: 10px;
}
.project-gallery__load-more {
	cursor: pointer;
	border: none;
}

/* "The STOVIX Code" — acronym breakdown on the About page, built as a
   real on-page section (matching the site's own type/color system)
   rather than embedding the client's screenshot as an image. */
.stovix-meaning {
	position: relative;
	display: block;
	padding: 0;
}
.stovix-meaning .row {
	margin-bottom: -10px;
}
.stovix-meaning__single {
	text-align: center;
	padding: 0 10px;
	margin-bottom: 10px;
}
.stovix-meaning__letter {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 70px;
	height: 70px;
	margin: 0 auto 16px;
	border-radius: 50%;
	background: var(--donatix-primary);
	color: var(--donatix-white);
	font-size: 30px;
	font-weight: 700;
}
.stovix-meaning__single h3 {
	font-size: 17px;
	font-weight: 700;
}

/* Why Choose section — this whole block is built around persuading
   people to donate ("Start Your Donating Now" was literally one of its
   bullet headings) but never actually had a donate button anywhere. */
.why-choose-one__content-btn {
	margin-top: 30px;
}

/* Recent Projects (about.php) — .event-two__single-date sizes itself to
   its own text content by default, so a short label ("FCT") makes the
   whole date column narrower than a longer one ("Oyo State"), pushing
   that card's title to start further left than its siblings. Fixed
   width keeps every card's title starting at the same x position
   regardless of label length. */
.event-two__single-date {
	min-width: 230px;
}
@media (max-width: 480px) {
	.event-two__single-date {
		min-width: 0;
	}
}

/* Payaza QR Code layout on donate-now.php */
.payaza-qr-layout {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 25px;
}
.payaza-qr-card {
	background: var(--donatix-white);
	padding: 15px;
	border-radius: 12px;
	box-shadow: 0 5px 20px rgba(1, 63, 136, 0.08);
	border: 1px solid rgba(1, 63, 136, 0.12);
	text-align: center;
	flex-shrink: 0;
	max-width: 170px;
}
.payaza-qr-img img {
	width: 140px;
	height: 140px;
	display: block;
	margin: 0 auto;
	border-radius: 6px;
}
.payaza-qr-caption {
	margin-top: 8px;
	font-size: 12px;
	line-height: 1.3;
	color: var(--donatix-primary);
	text-align: left;
}
@media (max-width: 767px) {
	.payaza-qr-layout {
		flex-direction: column;
		text-align: center;
	}
	.payaza-qr-card {
		margin-top: 20px;
	}
}

/* Expanded Partner Logos & Tightened Margins */
.brand-one {
	padding: 35px 0 15px !important;
	margin-bottom: 0 !important;
}
.brand-one__single-inner {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	height: 120px !important;
	padding: 10px !important;
}
.brand-one__single-inner a img,
.brand-one__carousel.owl-carousel .owl-item img {
	max-height: 110px !important;
	max-width: 220px !important;
	width: auto !important;
	height: auto !important;
	object-fit: contain !important;
	filter: none !important;
	-webkit-filter: none !important;
	opacity: 1 !important;
	transform: scale(1.35) !important;
	transition: transform 300ms ease !important;
}
.brand-one__single-inner a img:hover {
	transform: scale(1.45) !important;
}


/* ── Sticky Header UIUX Fix ── */
.main-header.stricky-fixed {
	position: fixed !important;
	top: 0 !important;
	left: 0 !important;
	width: 100% !important;
	z-index: 999 !important;
	background: #fff !important;
	box-shadow: 0px 10px 60px 0px rgba(0,0,0,0.05) !important;
	animation: slideInDown 0.4s ease-in-out !important;
}

/* ── Hide services shape2 to avoid layout break ── */
.services-one .shape2 {
	display: none !important;
}

/* ── Funfact & Counter desktop symmetry / one line fix ── */
@media (min-width: 992px) {
	.funfact-one__single-inner p {
		white-space: nowrap !important;
		font-size: 14px !important;
		margin-left: -10px !important;
	}
	.funfact-one__single-inner h2,
	.why-choose-one__content-text2-top-left-text p {
		white-space: nowrap !important;
	}
	.funfact-one__single-inner h2 span.odometer,
	.funfact-one__single-inner h2 span.plus,
	.why-choose-one__content-text2-top-left-text p span.odometer {
		display: inline-block !important;
		vertical-align: baseline !important;
	}
}

/* ── Fix Teal Button Visibility in Why-Choose ── */
.why-choose-one__content-text2-top-left-img li .icon-box,
.why-choose-one__content-text2-top-left-img li .icon-box a {
	width: 36px !important;
	height: 36px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	border-radius: 50% !important;
}

/* ── Mobile carousel: images fill slide without cropping or gaps ── */
.about-one__imgs-carousel .owl-item .about-one__img1,
.about-one__imgs-carousel .owl-item .about-one__img2 {
	position: static !important;
	float: none !important;
	width: 100% !important;
	margin: 0 !important;
	min-height: unset !important;
}
.about-one__imgs-carousel .owl-item .about-one__img1 .inner {
	border-radius: 14px !important;
	overflow: hidden !important;
	height: auto !important;
}
.about-one__imgs-carousel .owl-item .about-one__img1 .inner img,
.about-one__imgs-carousel .owl-item .about-one__img2 img {
	width: 100% !important;
	height: auto !important;
	border-radius: 14px !important;
}
.about-one__imgs-carousel .owl-item .about-one__img2 {
	border-radius: 14px !important;
	overflow: hidden !important;
	min-height: unset !important;
	height: auto !important;
}
/* Why Choose dynamic carousel */
.why-choose-one__imgs-carousel .owl-item .why-choose-one__img1,
.why-choose-one__imgs-carousel .owl-item .why-choose-one__img2 {
	position: static !important;
	float: none !important;
	width: 100% !important;
	margin: 0 !important;
}
.why-choose-one__imgs-carousel .owl-item .why-choose-one__img1 .inner {
	border-radius: 14px !important;
	overflow: hidden !important;
	height: 260px !important;
}
.why-choose-one__imgs-carousel .owl-item .why-choose-one__img1 .inner img,
.why-choose-one__imgs-carousel .owl-item .why-choose-one__img2 img {
	width: 100% !important;
	height: 260px !important;
	object-fit: cover !important;
	object-position: center 80% !important;
	border-radius: 14px !important;
}
.why-choose-one__imgs-carousel .owl-item .why-choose-one__img2 {
	border-radius: 14px !important;
	overflow: hidden !important;
	height: 260px !important;
}
/* Mobile carousel equal-height items (services & team) */
.services-one__carousel .owl-item > div,
.team-one__carousel .owl-item > div {
	height: 100% !important;
}
.services-one__carousel.owl-carousel,
.team-one__carousel.owl-carousel {
	align-items: stretch !important;
}

/* ── Separate experience badge from image (global for all screen sizes) ── */
.why-choose-one__img-experince {
	position: relative !important;
	top: auto !important;
	left: auto !important;
	bottom: auto !important;
	right: auto !important;
	margin: 20px auto 0 !important;
	width: 100% !important;
	max-width: 300px !important;
	text-align: center !important;
	border-radius: 12px !important;
	transform: none !important;
	box-shadow: 0 4px 14px rgba(0,0,0,0.05) !important;
}
.why-choose-one__img-experince-inner {
	transform: none !important;
	margin: 0 !important;
	width: 100% !important;
	display: flex !important;
	flex-direction: row !important;
	justify-content: center !important;
	align-items: center !important;
	padding: 20px !important;
	gap: 15px !important;
}
.why-choose-one__img-experince-inner .count-text h2 {
	margin-bottom: 0 !important;
}
.why-choose-one__img-experince-inner p {
	margin-bottom: 0 !important;
}

/* Homepage FAQ section whitespace fix */
.faq-one {
	padding: 35px 0 60px !important;
}

/* ── Form Inputs: Ensure input[type="tel"] matches text and email inputs site-wide ── */
input[type="tel"] {
	font-family: inherit;
	box-sizing: border-box;
}

/* ── About section responsiveness fix ── */
.about-one__tab .tabs-button-box {
	flex-wrap: wrap !important;
	gap: 10px !important;
}
.about-one__tab .tabs-button-box li+li {
	margin-left: 0 !important;
}
.about-one__content-bottom {
	flex-wrap: wrap !important;
	gap: 20px !important;
}

/* ── About/Why-choose carousel containers: desktop shows items normally ── */
.about-one__imgs-carousel,
.why-choose-one__imgs-carousel {
	position: relative;
}

/* ── About + Why-choose carousel: images fill slide on mobile ── */
.about-one__imgs-carousel .owl-item .about-one__img1,
.about-one__imgs-carousel .owl-item .about-one__img2 {
	position: static !important;
	float: none !important;
	width: 100% !important;
}
.about-one__imgs-carousel .owl-item .about-one__img1 .inner,
.about-one__imgs-carousel .owl-item img {
	width: 100% !important;
	height: 260px !important;
	overflow: hidden !important;
	border-radius: 12px !important;
}
.about-one__imgs-carousel .owl-item .about-one__img1 .inner img,
.about-one__imgs-carousel .owl-item .about-one__img2 img {
	width: 100% !important;
	height: 260px !important;
	object-fit: cover !important;
	object-position: center top !important;
	border-radius: 12px !important;
}
.why-choose-one__imgs-carousel .owl-item .why-choose-one__img1,
.why-choose-one__imgs-carousel .owl-item .why-choose-one__img2 {
	position: static !important;
	float: none !important;
	width: 100% !important;
}
.why-choose-one__imgs-carousel .owl-item .why-choose-one__img1 .inner,
.why-choose-one__imgs-carousel .owl-item .why-choose-one__img2 {
	width: 100% !important;
	height: 260px !important;
	overflow: hidden !important;
	border-radius: 12px !important;
}
.why-choose-one__imgs-carousel .owl-item .why-choose-one__img1 .inner img,
.why-choose-one__imgs-carousel .owl-item .why-choose-one__img2 img {
	width: 100% !important;
	height: 260px !important;
	object-fit: cover !important;
	object-position: center top !important;
	border-radius: 12px !important;
}

/* ── FAQ mobile carousel slide styles ── */
.faq-mobile-slide {
	background: #fff;
	border-radius: 12px;
	padding: 20px 18px;
	box-shadow: 0 4px 18px rgba(0,0,0,0.07);
	border: 1px solid rgba(0,0,0,0.07);
	min-height: 160px;
}
.faq-mobile-slide__q {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	margin-bottom: 12px;
}
.faq-mobile-slide__q .icon-checked-1 {
	color: var(--donatix-base, #e55a2b);
	font-size: 18px;
	flex-shrink: 0;
	margin-top: 2px;
}
.faq-mobile-slide__q h4 {
	font-size: 15px;
	font-weight: 700;
	line-height: 1.4;
	margin: 0;
	color: #1a1a2e;
}
.faq-mobile-slide__a p {
	font-size: 13px;
	line-height: 1.6;
	color: #555;
	margin: 0;
}
.faq-mobile-carousel.owl-carousel .owl-dots {
	margin-top: 14px !important;
	text-align: center !important;
}

/* =====================================================
   STOVIX MOBILE REAL ESTATE — Full Override (<= 767px)
   Template default is 120px — this kills it site-wide
   ===================================================== */
@media (max-width: 767px) {

	/* ── Section Padding: All major sections get 25px vertical ── */
	.approch-one,
	.about-one,
	.services-one,
	.funfact-one,
	.team-one,
	.faq-one,
	.contact-one,
	.events-one,
	.why-choose-one,
	.testimonials-one,
	.testimonial-one,
	.cta-one,
	.cause-one,
	.brand-one,
	.hero-one,
	.causes-one {
		padding: 25px 0 !important;
		margin-top: 0 !important;
		margin-bottom: 0 !important;
	}

	/* Kill template's own 120px rules with max specificity */
	section.approch-one,
	section.why-choose-one,
	section.testimonial-one,
	section.funfact-one {
		padding-top: 25px !important;
		padding-bottom: 25px !important;
	}

	.sec-title,
	.approch-one__tab,
	.about-one__tab {
		margin-bottom: 15px !important;
	}

	.sec-title__title {
		font-size: 24px !important;
		line-height: 1.25 !important;
	}

	.main-header__one-bottom {
		margin: 0 !important;
		padding: 0 !important;
	}

	/* ── Hide decorative floating shapes on mobile ── */
	.team-one .shape1,
	.team-one .float-bob-y,
	.approch-one .shape1,
	.approch-one .shape2,
	.approch-one .shape3 {
		display: none !important;
	}

	/* ── Symmetrical 2×2 Stats Grid ── */
	.funfact-one__inner {
		padding: 0 !important;
	}
	.funfact-one__box {
		display: flex !important;
		flex-wrap: wrap !important;
		margin: 0 !important;
		padding: 0 !important;
		gap: 10px !important;
	}
	.funfact-one__box li {
		width: calc(50% - 5px) !important;
		flex: 0 0 calc(50% - 5px) !important;
		max-width: calc(50% - 5px) !important;
		padding: 0 !important;
		margin: 0 !important;
		float: none !important;
		box-sizing: border-box !important;
	}
	.funfact-one__single-inner {
		height: 100% !important;
		min-height: 90px !important;
		display: flex !important;
		flex-direction: column !important;
		align-items: center !important;
		justify-content: center !important;
		padding: 12px 8px !important;
		border-radius: 10px !important;
		background: #fff !important;
		box-shadow: 0 4px 14px rgba(0,0,0,0.05) !important;
		border: 1px solid rgba(0,0,0,0.07) !important;
		text-align: center !important;
		margin: 0 !important;
	}
	.funfact-one__single-inner h2 {
		font-size: 26px !important;
		line-height: 1.1 !important;
		margin-bottom: 4px !important;
	}
	.funfact-one__single-inner p {
		font-size: 11px !important;
		line-height: 1.3 !important;
		margin: 0 !important;
		font-weight: 700 !important;
		text-align: center !important;
	}

	/* ── Why Choose Pill / Avatar Flex — Restore from dev ── */
	.why-choose-one__content-text2 {
		border-radius: 16px !important;
		padding: 16px !important;
	}
	.why-choose-one__content-text2-top {
		display: flex !important;
		flex-direction: row !important;
		align-items: center !important;
		justify-content: space-between !important;
		flex-wrap: nowrap !important;
		gap: 8px !important;
	}
	.why-choose-one__content-text2-top-left {
		display: flex !important;
		align-items: center !important;
		flex-shrink: 0 !important;
	}
	.why-choose-one__content-text2-top-left-img {
		display: flex !important;
		align-items: center !important;
	}
	.why-choose-one__content-text2-top-left-img li .img-box {
		width: 36px !important;
		height: 36px !important;
	}
	.why-choose-one__content-text2-top-left-text {
		margin-left: 10px !important;
		margin-top: 0 !important;
		margin-bottom: 0 !important;
	}
	.why-choose-one__content-text2-top-left-text p {
		font-size: 14px !important;
		line-height: 1.3 !important;
	}
	.why-choose-one__content-text2-top-right {
		display: block !important;
		flex-shrink: 0 !important;
	}

	/* ── About Carousel: full-width on mobile ── */
	.about-one__imgs-carousel,
	.why-choose-one__imgs-carousel {
		width: 100% !important;
		border-radius: 12px !important;
		overflow: hidden !important;
	}

	/* ── FAQ: Hide decorative side images ── */
	.faq-one__img {
		display: none !important;
	}

	/* ── Carousel Dots ── */
	.services-one__carousel .owl-dots,
	.team-one__carousel .owl-dots,
	.about-one__imgs-carousel .owl-dots,
	.why-choose-one__imgs-carousel .owl-dots {
		margin-top: 12px !important;
		text-align: center !important;
	}

	/* ── Separate about badge from carousel on mobile ── */
	.about-one__img-content {
		position: relative !important;
		bottom: auto !important;
		right: auto !important;
		margin: 20px auto 0 !important;
		width: 100% !important;
		max-width: 100% !important;
		padding: 0 !important;
		box-shadow: none !important;
	}
	.about-one__img-content-inner {
		text-align: center !important;
	}
	.about-one__img-content-inner .btn-box {
		display: flex !important;
		justify-content: center !important;
	}

	/* ── Testimonial image pushed down on mobile ONLY ── */
	.testimonial-one__img {
		margin-top: 50px !important;
	}
	.testimonial-one__content {
		margin-left: 0 !important;
		padding: 0 14px 0 16px !important;
	}
	.testimonial-one__content .sec-title {
		padding-right: 6px !important;
	}
	.testimonial-one__single {
		padding-left: 2px !important;
		padding-right: 6px !important;
	}
	.testimonial-one__single-quote {
		right: 6px !important;
	}
}
