/* ========================================
   AOS ANIMATION OVERFLOW FIX
   ======================================== */

/* 
 * Prevent AOS animations from causing horizontal scrollbar
 * Constrain all animated elements to viewport
 */

/* Global viewport constraint */
html {
	overflow-x: hidden !important;
	/* Changed from clip for Safari iOS compatibility */
	max-width: 100vw !important;
}

body {
	overflow-x: hidden !important;
	/* Changed from clip for Safari iOS compatibility */
	max-width: 100vw !important;
}

/* AOS Elements Constraint */
[data-aos] {
	max-width: 100% !important;
}

/* Prevent fade animations from going outside */
[data-aos^="fade"][data-aos^="fade"] {
	transition-property: opacity, transform;
	will-change: opacity, transform;
}

/* Constrain fade-left animations */
[data-aos="fade-left"] {
	transform: translate3d(0, 0, 0);
}

[data-aos="fade-left"].aos-animate {
	transform: translate3d(0, 0, 0);
}

/* Constrain fade-right animations */
[data-aos="fade-right"] {
	transform: translate3d(0, 0, 0);
}

[data-aos="fade-right"].aos-animate {
	transform: translate3d(0, 0, 0);
}

/* Constrain fade-up animations */
[data-aos="fade-up"] {
	transform: translate3d(0, 0, 0);
}

[data-aos="fade-up"].aos-animate {
	transform: translate3d(0, 0, 0);
}

/* Ensure sections don't overflow */
section[data-aos] {
	max-width: 100% !important;
	overflow: visible !important;
}

/* Constrain all direct children of rows */
.row>[data-aos] {
	max-width: 100%;
}

/* Constrain columns inside containers */
.container>.row>[class*="col-"][data-aos],
.container-fluid>.row>[class*="col-"][data-aos] {
	max-width: 100% !important;
}

/* Prevent any transform from exceeding viewport */
[data-aos][data-aos].aos-animate {
	max-width: 100% !important;
}

/* Blog section specific */
#blog [data-aos] {
	max-width: 100%;
}

#blog .blog-grid [data-aos] {
	max-width: 100%;
}

/* Services section specific */
#services [data-aos] {
	max-width: 100%;
}

#services .row>[data-aos] {
	max-width: 100%;
}

/* Ensure hover effects don't cause overflow */
[data-aos]:hover {
	max-width: 100%;
}

/* Portfolio section */
#portfolio [data-aos] {
	max-width: 100%;
}

/* Team section */
#team [data-aos] {
	max-width: 100%;
}

/* Why-us section */
#why-us [data-aos] {
	max-width: 100%;
}

/* Prevent all animations from creating scrollbar */
* {
	max-width: 100%;
}

body>*,
section>*,
.container>*,
.container-fluid>* {
	max-width: 100%;
}

/* Override for specific elements that need full width */
.row {
	max-width: 100% !important;
}

/* Clip any overflow at section level */
section {
	overflow-x: hidden !important;
	/* Changed from clip for Safari iOS compatibility */
	contain: layout style paint;
}

/* Container containment */
.container,
.container-fluid {
	overflow-x: hidden !important;
	/* Changed from clip for Safari iOS compatibility */
	max-width: 100% !important;
	contain: layout;
}
