/* ============================================================
   GALINDO ECHEGUREN - CUSTOM CSS
   Responsive Menu & Sticky Header Fixes
   ============================================================ */

/* ============================================================
   GLOBAL LOGO RULES - Apply to all screen sizes
   ============================================================ */

/* GLOBAL: Hide logo-mobile-sticky by default on desktop (will be shown in mobile/tablet media queries) */
@media only screen and (min-width: 1240px) {
	#Top_bar #logo img.logo-mobile-sticky,
	#Header_creative #Top_bar #logo img.logo-mobile-sticky {
		display: none !important;
	}
}

/* ============================================================
   REVOLUTION SLIDER TEXT - Responsive Fix
   ============================================================ */

/* Desktop - Large Screens (1240px+) */
@media only screen and (min-width: 1240px) {
	/* Maintain original slider text proportions */
	#rev_slider_1_1 rs-layer[data-text*="s:100,150,50,120"] {
		font-size: 100px !important;
		letter-spacing: 3px !important;
		line-height: 1.1 !important;
	}
}

/* Tablet Large - Medium Screens (1024px - 1239px) */
@media only screen and (min-width: 1024px) and (max-width: 1239px) {
	#rev_slider_1_1 rs-layer[data-text*="s:100,150,50,120"] {
		font-size: 80px !important;
		letter-spacing: 2px !important;
		line-height: 1.15 !important;
	}
}

/* Tablet - Medium Screens (768px - 1023px) */
@media only screen and (min-width: 768px) and (max-width: 1023px) {
	#rev_slider_1_1 rs-layer[data-text*="s:100,150,50,120"] {
		font-size: 55px !important;
		letter-spacing: 1.5px !important;
		line-height: 1.2 !important;
		word-break: break-word;
	}
}

/* ============================================================
   MOBILE & TABLET RESPONSIVE LOGO - Override structure.css rules
   ============================================================ */

/* CRITICAL: Override structure.css line 7693 which hides logo-mobile-sticky */
/* Target mobile and tablet screens where we want the symbol visible */
@media only screen and (max-width: 1239px) {
	/* Override the default hiding rule from structure.css with maximum specificity */
	body.mobile-sticky #Top_bar #logo img.logo-mobile-sticky,
	body #Top_bar #logo img.logo-mobile-sticky,
	#Header_creative #Top_bar #logo img.logo-mobile-sticky {
		display: inline-block !important;
		max-height: 40px !important;
		width: 40px !important;
		min-width: 40px !important;
		height: auto !important;
		visibility: visible !important;
		opacity: 1 !important;
		z-index: 999 !important;
	}

	/* Ensure it shows in sticky state with maximum specificity */
	body.mobile-sticky #Top_bar.is-sticky #logo img.logo-mobile-sticky,
	body #Top_bar.is-sticky #logo img.logo-mobile-sticky,
	#Header_creative #Top_bar.is-sticky #logo img.logo-mobile-sticky {
		display: inline-block !important;
		max-height: 40px !important;
		width: 40px !important;
		min-width: 40px !important;
		height: auto !important;
		visibility: visible !important;
		opacity: 1 !important;
		z-index: 999 !important;
	}

	/* Hide other logo variants in mobile/tablet */
	body.mobile-sticky #Top_bar #logo img.logo-main,
	body.mobile-sticky #Top_bar #logo img.logo-sticky,
	body.mobile-sticky #Top_bar #logo img.logo-mobile,
	body #Top_bar #logo img.logo-main,
	body #Top_bar #logo img.logo-sticky {
		display: none !important;
	}

	/* In sticky state, hide non-mobile-sticky variants */
	body.mobile-sticky #Top_bar.is-sticky #logo img.logo-main,
	body.mobile-sticky #Top_bar.is-sticky #logo img.logo-sticky,
	body.mobile-sticky #Top_bar.is-sticky #logo img.logo-mobile,
	body #Top_bar.is-sticky #logo img.logo-main,
	body #Top_bar.is-sticky #logo img.logo-sticky,
	body #Top_bar.is-sticky #logo img.logo-mobile {
		display: none !important;
	}
}

/* Mobile - Small Screens (max 767px) - Slider text rules */
@media only screen and (max-width: 767px) {
	/* Revolution Slider text for mobile */
	#rev_slider_1_1 rs-layer[data-text*="s:100,150,50,120"] {
		font-size: 32px !important;
		letter-spacing: 0.8px !important;
		line-height: 1.3 !important;
		word-break: break-word;
	}
}

/* Tablet - Medium Screens (768px - 1023px) */
@media only screen and (min-width: 768px) and (max-width: 1023px) {
	#rev_slider_1_1 rs-layer[data-text*="s:100,150,50,120"] {
		font-size: 55px !important;
		letter-spacing: 1.5px !important;
		line-height: 1.2 !important;
		word-break: break-word;
	}
}

/* Mobile - Small Screens (480px - 767px) */
@media only screen and (min-width: 480px) and (max-width: 767px) {
	#rev_slider_1_1 rs-layer[data-text*="s:100,150,50,120"] {
		font-size: 32px !important;
		letter-spacing: 0.8px !important;
		line-height: 1.3 !important;
		word-break: break-word;
	}
}

/* Small Mobile (max 480px) */
@media only screen and (max-width: 480px) {
	/* Rules managed by inline styles in HTML */
}

/* ============================================================
   REVOLUTION SLIDER - Ensure Logo Visibility
   ============================================================ */

#rev_slider_1_1 rs-layer[id="slider-1-slide-1-layer-4"] {
	z-index: 99 !important;
	visibility: visible !important;
	opacity: 1 !important;
}

/* DESKTOP - Ensure sticky doesn't apply */
@media only screen and (min-width: 1240px) {
	#Header_creative .creative-wrapper {
		position: static !important;
	}
	
	body.sticky-header {
		padding-top: 0 !important;
	}
}

/* RESPONSIVE - Apply responsive styles */
@media only screen and (max-width: 1239px) {
	
	/* === PREVENT OVERFLOW === */
	html, body {
		overflow-x: hidden !important;
	}

	/* === WRAPPER - NORMAL POSITION WITH TOP PADDING === */
	#Header_creative .creative-wrapper {
		position: relative !important;
		top: 0 !important;
		left: 0 !important;
		right: 0 !important;
		width: 100% !important;
		height: auto !important;
		z-index: 1001 !important;
		background-color: #0f382c !important;
		padding: 0 !important;
		margin: 0 !important;
		margin-bottom: 0 !important;
	}
	
	/* === ADD PADDING TO BODY FOR FIXED STICKY HEADER === */
	body {
		padding-top: 60px !important;
	}
	
	/* === ENSURE WRAPPER DOESN'T OVERLAP CONTENT === */
	#Wrapper {
		padding-top: 0 !important;
		margin-top: 0 !important;
	}

	/* === HIDE ACTION_BAR COMPLETELY === */
	#Action_bar {
		display: none !important;
	}

	/* === TOP_BAR - FIXED AT TOP FOR STICKY EFFECT === */
	#Top_bar,
	#Header_creative #Top_bar {
		background-color: #0f382c !important;
		position: fixed !important;
		top: 0 !important;
		left: 0 !important;
		right: 0 !important;
		width: 100% !important;
		box-sizing: border-box !important;
		height: 60px !important;
		padding: 0 !important;
		margin: 0 !important;
		display: flex !important;
		align-items: center !important;
		justify-content: space-between !important;
		z-index: 1001 !important;
	}

	/* === TOP BAR ELEMENTS WRAPPERS === */
	#Top_bar .top_bar_left,
	#Header_creative #Top_bar .top_bar_left {
		width: auto !important;
		padding: 0 !important;
		margin: 0 !important;
		float: none !important;
		display: flex !important;
		align-items: center !important;
		flex: 1 !important;
	}

	#Top_bar .top_bar_right,
	#Header_creative #Top_bar .top_bar_right {
		display: none !important;
	}

	#Top_bar .one {
		width: 100% !important;
		padding: 0 !important;
		margin: 0 !important;
		display: flex !important;
		align-items: center !important;
		justify-content: space-between !important;
	}

	/* === LOGO ON LEFT SIDE === */
	#Top_bar .logo,
	#Header_creative #Top_bar .logo {
		display: flex !important;
		position: relative !important;
		left: 0 !important;
		top: 0 !important;
		transform: none !important;
		z-index: 99998 !important;
		width: auto !important;
		margin: 0 !important;
		padding: 0 15px !important;
		height: 60px !important;
		align-items: center !important;
		flex-shrink: 0 !important;
	}

	#Top_bar #logo,
	#Header_creative #Top_bar #logo {
		padding: 0 !important;
		height: auto !important;
		line-height: 1 !important;
		margin: 0 !important;
		display: flex !important;
		align-items: center !important;
		min-width: 60px !important;
	}

	#Top_bar #logo img,
	#Header_creative #Top_bar #logo img {
		max-height: 40px !important;
		width: auto !important;
		height: auto !important;
		display: none !important;
	}

	#Top_bar #logo img.logo-mobile,
	#Header_creative #Top_bar #logo img.logo-mobile {
		display: none !important;
		max-height: 40px !important;
		width: auto !important;
		height: auto !important;
	}

	#Top_bar #logo img.logo-mobile-sticky,
	#Header_creative #Top_bar #logo img.logo-mobile-sticky {
		display: inline-block !important;
		max-height: 40px !important;
		width: auto !important;
		height: auto !important;
		visibility: visible !important;
		opacity: 1 !important;
	}

	#Top_bar #logo img.logo-main,
	#Header_creative #Top_bar #logo img.logo-main {
		display: none !important;
	}

	#Top_bar #logo img.logo-sticky,
	#Header_creative #Top_bar #logo img.logo-sticky {
		display: none !important;
		max-height: 40px !important;
		width: auto !important;
		height: auto !important;
	}

	/* === MENU WRAPPER === */
	#Top_bar .menu_wrapper,
	#Header_creative #Top_bar .menu_wrapper {
		position: relative !important;
		display: flex !important;
		flex: 1 !important;
		justify-content: flex-end !important;
		width: auto !important;
		height: 60px !important;
		align-items: center !important;
		float: none !important;
		padding: 0 !important;
		margin: 0 !important;
	}

	/* === HAMBURGER MENU BUTTON ON RIGHT === */
	#Top_bar a.responsive-menu-toggle,
	#Header_creative #Top_bar a.responsive-menu-toggle,
	#Header_creative .responsive-menu-toggle {
		display: block !important;
		width: 50px !important;
		height: 60px !important;
		position: relative !important;
		right: 0 !important;
		top: 0 !important;
		transform: none !important;
		z-index: 99999 !important;
		line-height: 60px !important;
		text-align: center !important;
		color: #fff !important;
		background: transparent !important;
		padding: 0 15px !important;
		margin: 0 !important;
		border: none !important;
		visibility: visible !important;
		opacity: 1 !important;
		pointer-events: auto !important;
		flex-shrink: 0 !important;
	}

	#Top_bar a.responsive-menu-toggle i,
	#Header_creative #Top_bar a.responsive-menu-toggle i,
	#Header_creative .responsive-menu-toggle i {
		font-size: 24px !important;
		color: #fff !important;
		line-height: 60px !important;
	}

	#Header_creative a.creative-menu-toggle {
		display: none !important;
	}

	/* === MENU DROPDOWN STYLING === */
	#Top_bar #menu,
	#Header_creative #Top_bar #menu {
		display: none !important;
		height: auto !important;
		position: fixed !important;
		top: 60px !important;
		left: 0 !important;
		right: 0 !important;
		width: 100vw !important;
		margin: 0 !important;
		padding: 0 !important;
		background: #fff !important;
		z-index: 99998 !important;
		box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15) !important;
		border: none !important;
		overflow-y: auto !important;
		max-height: calc(100vh - 60px) !important;
		float: none !important;
		width: 100% !important;
	}

	/* Show menu when active */
	#Top_bar.menu-active #menu,
	#Header_creative #Top_bar.menu-active #menu {
		display: block !important;
	}

	/* Menu items */
	#Top_bar #menu li,
	#Header_creative #Top_bar #menu li {
		width: 100% !important;
		margin: 0 !important;
		padding: 0 !important;
		border-bottom: 1px solid #f0f0f0 !important;
		list-style: none !important;
		float: none !important;
	}

	#Top_bar #menu li:last-child,
	#Header_creative #Top_bar #menu li:last-child {
		border-bottom: none !important;
	}

	#Top_bar #menu > li > a,
	#Header_creative #Top_bar #menu > li > a {
		padding: 15px 20px !important;
		line-height: 20px !important;
		display: block !important;
		margin: 0 !important;
		height: auto !important;
		border: none !important;
		color: #333 !important;
		background: transparent !important;
	}

	#Top_bar #menu > li > a:hover,
	#Header_creative #Top_bar #menu > li > a:hover {
		background: #f5f5f5 !important;
	}

	#Top_bar #menu > li > a span,
	#Header_creative #Top_bar #menu > li > a span {
		line-height: 20px !important;
		border: none !important;
		padding: 0 !important;
		color: #333 !important;
	}

	/* Submenus */
	#Top_bar #menu > li > ul,
	#Header_creative #Top_bar #menu > li > ul {
		position: static !important;
		display: none !important;
		background: #f9f9f9 !important;
		width: 100% !important;
		float: none !important;
		padding-left: 20px !important;
		margin: 0 !important;
		box-shadow: none !important;
	}

	#Top_bar #menu > li.active > ul,
	#Top_bar #menu > li.open > ul,
	#Header_creative #Top_bar #menu > li.active > ul,
	#Header_creative #Top_bar #menu > li.open > ul {
		display: block !important;
	}

	#Top_bar #menu > li > ul > li,
	#Header_creative #Top_bar #menu > li > ul > li {
		width: 100% !important;
		border: none !important;
		margin: 0 !important;
		padding: 0 !important;
		float: none !important;
	}

	#Top_bar #menu > li > ul > li > a,
	#Header_creative #Top_bar #menu > li > ul > li > a {
		padding: 10px 15px !important;
		font-size: 0.9em !important;
		color: #333 !important;
	}
}

/* === MOBILE SMALL (max-width: 767px) === */
@media only screen and (max-width: 767px) {
	/* === ADJUST PADDING FOR MOBILE === */
	body {
		padding-top: 50px !important;
	}

	/* === OVERRIDE HEADER_CREATIVE FOR MOBILE === */
	#Header_creative .creative-wrapper {
		height: auto !important;
	}

	#Top_bar,
	#Header_creative #Top_bar {
		height: 50px !important;
		min-height: 50px !important;
		top: 0 !important;
		position: fixed !important;
	}

	/* === LOGO IN MOBILE === */
	#Top_bar .logo,
	#Header_creative #Top_bar .logo {
		height: 50px !important;
		padding: 0 10px !important;
	}

	/* === ENSURE HAMBURGER VISIBLE IN MOBILE === */
	#Top_bar a.responsive-menu-toggle,
	#Header_creative #Top_bar a.responsive-menu-toggle,
	#Header_creative .responsive-menu-toggle {
		display: block !important;
		height: 50px !important;
		line-height: 50px !important;
		width: 50px !important;
		position: relative !important;
		right: 0 !important;
		top: 0 !important;
		transform: none !important;
		z-index: 99999 !important;
		color: #fff !important;
		visibility: visible !important;
		opacity: 1 !important;
		pointer-events: auto !important;
		flex-shrink: 0 !important;
		padding: 0 !important;
		margin: 0 !important;
	}

	#Top_bar a.responsive-menu-toggle i,
	#Header_creative #Top_bar a.responsive-menu-toggle i,
	#Header_creative .responsive-menu-toggle i {
		font-size: 20px !important;
		color: #fff !important;
	}

	/* === MENU IN MOBILE === */
	#Top_bar #menu,
	#Header_creative #Top_bar #menu {
		top: 50px !important;
		max-height: calc(100vh - 50px) !important;
	}

	#Top_bar.menu-active #menu,
	#Header_creative #Top_bar.menu-active #menu {
		display: block !important;
	}
}

/* ============================================================
   COUNTER ALIGNMENT FIX - Tablet Responsive
   ============================================================ */

/* Tablet (768px - 1024px): Center align the quick fact counters */
@media only screen and (min-width: 768px) and (max-width: 1024px) {
	.items_group {
		display: flex !important;
		flex-wrap: wrap !important;
		justify-content: center !important;
		align-items: center !important;
		gap: 20px !important;
	}
	
	.column_quick_fact {
		text-align: center !important;
		flex: 1 1 calc(33.333% - 20px) !important;
		min-width: 180px !important;
		float: none !important;
		margin: 0 !important;
	}
	
	.column_quick_fact .quick_fact {
		margin: 0 auto !important;
		display: block !important;
	}
}

/* ============================================================
   HELPER HEADER ALIGNMENT FIX - Mobile Responsive
   ============================================================ */

/* Mobile (max-width: 767px): Ensure helper header title stays centered */
@media only screen and (max-width: 767px) {
	.helper .helper_header {
		text-align: center !important;
		padding: 15px 20px 15px 20px !important;
	}
	
	.helper .helper_header .title {
		text-align: center !important;
		margin: 0 !important;
	}
}

/* ============================================================
   CUSTOM FIXES FOR 13" SCREENS (1024px - 1440px)
   Footer logo alignment, accordions & industry block padding
   ============================================================ */

/* DESKTOP (1441px+): Align left */
@media only screen and (min-width: 1441px) {
	#Footer .widgets_wrapper .container .column.one-fourth:first-child {
		text-align: left;
	}
	
	#Footer .image_frame.image_item.no_link {
		margin: 0 !important;
	}
	
	#Footer .footer_copy .container {
		padding-left: 0 !important;
	}
	
	#Footer .footer_copy .flv_style_65 {
		text-align: left;
		margin: 0 !important;
	}
}

/* SPECIFIC FIX: 1441px - 1489px range - Footer logo alignment */
@media only screen and (min-width: 1441px) and (max-width: 1489px) {
	/* Add left margin to logo wrapper to align with footer_copy baseline without overflow */
	#Footer .image_wrapper {
		margin-left: 60px;
		display: block;
	}
	
	#Footer .image_wrapper img {
		max-width: 100%;
		height: auto;
	}
	
	/* Align footer_copy (privacy link) with logo baseline */
	#Footer .footer_copy .container {
		margin-left: 60px;
	}

	/* Adjust footer-legal block to align with logo margin */
	#Footer .footer_copy .footer-legal {
		margin-left: 50px !important;
	}
}

/* DESKTOP LARGE (1490px+): Standard alignment */
@media only screen and (min-width: 1490px) {
	#Footer .widgets_wrapper .container .column.one-fourth:first-child {
		text-align: left;
	}
	
	#Footer .image_frame.image_item.no_link {
		margin: 0 !important;
		display: block;
	}
	
	#Footer .image_wrapper {
		margin: 0;
		margin-left: 0 !important;
	}
	
	#Footer .image_wrapper img {
		display: inline-block;
		max-width: 100%;
		height: auto;
	}
	
	/* Align privacy link to the left */
	#Footer .footer_copy .flv_style_65 {
		text-align: left;
		margin: 0 !important;
	}
	
	/* Align footer_copy with logo margin */
	#Footer .footer_copy .container {
		padding-left: 0 !important;
		padding-right: 0 !important;
		margin-left: 0 !important;
	}
}

/* TABLET/MEDIUM DESKTOP (1025px - 1240px): Add left margin/padding */
@media only screen and (min-width: 1025px) and (max-width: 1240px) {
	#Footer .widgets_wrapper .container {
		padding-left: 40px !important;
	}
	
	#Footer .footer_copy .container {
		padding-left: 40px !important;
		margin-left: 40px !important;
	}
	
	#Footer .widgets_wrapper .container .column.one-fourth:first-child {
		text-align: left;
	}
	
	#Footer .image_wrapper {
		margin-left: 40px !important;
	}
	
	#Footer .footer_copy .flv_style_65 {
		text-align: left;
		margin: 0 !important;
	}
}

/* TABLET/SMALL DESKTOP (1241px - 1440px): Fix logo alignment without sticky menu overlap */
@media only screen and (min-width: 1241px) and (max-width: 1440px) {
	#Footer .widgets_wrapper .container {
		padding-left: 40px !important;
	}
	
	#Footer .footer_copy .container {
		padding-left: 40px !important;
		margin-left: 40px !important;
	}
	
	#Footer .widgets_wrapper .container .column.one-fourth:first-child {
		text-align: left;
	}
	
	#Footer .image_frame.image_item.no_link {
		margin: 0 !important;
		display: block;
	}
	
	#Footer .image_wrapper {
		margin-left: 40px !important;
		display: block;
	}
	
	#Footer .image_wrapper img {
		display: inline-block;
		max-width: 100%;
		height: auto;
	}
	
	#Footer .footer_copy .flv_style_65 {
		text-align: left;
		margin: 0 !important;
	}
	
	/* Align footer_copy with logo baseline */
	#Footer .footer_copy .container {
		margin-left: 40px !important;
	}
}

/* MOBILE/TABLET SMALL (max-width: 1024px): Align logo and privacy with padding */
@media only screen and (max-width: 1024px) {
	#Footer .widgets_wrapper .container {
		padding-left: 20px !important;
	}
	
	#Footer .footer_copy .container {
		padding-left: 20px !important;
		margin-left: 40px !important;
	}
	
	#Footer .widgets_wrapper .container .column.one-fourth:first-child {
		text-align: left;
	}
	
	#Footer .image_frame.image_item.no_link {
		margin: 0 !important;
		display: block;
	}
	
	#Footer .image_wrapper {
		margin-left: 0 !important;
	}
	
	#Footer .image_wrapper img {
		display: inline-block;
		max-width: 180px;
		height: auto;
	}
	
	#Footer .footer_copy .flv_style_65 {
		text-align: left;
		margin: 0 !important;
	}
	
	/* Adjust WhatsApp button position in mobile */
	.message_box_fixed {
		bottom: 100px !important;
	}
}

/* Accordions and industry blocks: add horizontal padding */
@media only screen and (max-width: 1280px) {
	.faq_wrapper,
	.feature_list {
		padding-left: 24px !important;
		padding-right: 24px !important;
	}
}

/* Breakpoint fix: 1281px - 1489px - Add lateral margins to FAQ and feature blocks */
@media only screen and (min-width: 1281px) and (max-width: 1489px) {
	.faq_wrapper,
	.feature_list {
		padding-left: 50px !important;
		padding-right: 50px !important;
	}
}

@media only screen and (max-width: 1024px) {
	/* Slightly more padding for smaller screens */
	.faq_wrapper,
	.feature_list {
		padding-left: 16px !important;
		padding-right: 16px !important;
	}
}

/* ============================================================
   CONTACT SECTION - Responsive Phone & Email Icons Fix
   ============================================================ */

/* Desktop - Large Screens (1240px+) - Keep original styling */
@media only screen and (min-width: 1240px) {
	#contacto .column_attr[style*="background-image"] {
		/* Keep original: padding: 10px 0 10px 55px; */
	}
}

/* Tablet - Medium Screens (768px - 1239px) */
@media only screen and (min-width: 768px) and (max-width: 1239px) {
	#contacto .column_attr[style*="background-image"] {
		padding: 10px 0 10px 50px !important;
		background-position: left 15px center !important;
		text-align: left;
	}
	
	#contacto .column_attr h5 {
		font-size: 24px !important;
	}
}

/* Mobile - Small Screens (max 767px) */
@media only screen and (max-width: 767px) {
	#contacto .column_attr[style*="background-image"] {
		/* Icon at left, text beside it */
		padding: 10px 0 10px 45px !important;
		background-position: left center !important;
		background-size: 35px 35px !important;
		text-align: left;
	}
	
	#contacto .column_attr h5 {
		font-size: 18px !important;
		margin: 0 !important;
	}
}
/* ============================================================
   MISIÓN Y VISIÓN SECTION - Responsive Fixes
   ============================================================ */

/* Breakpoint 1240px - 1489px (1301px - 1489px as mentioned) */
@media only screen and (min-width: 1240px) and (max-width: 1489px) {
	.section.mcb-section-660x9r693 .section_wrapper {
		width: 100% !important;
		max-width: 100% !important;
		margin: 0 !important;
		padding: 0 !important;
	}
	
	/* Ensure wrap is 100% width */
	.section.mcb-section-660x9r693 .wrap.mcb-wrap.one {
		width: 100% !important;
		margin: 0 !important;
		padding: 0 !important;
	}
	
	/* Ensure wrap-inner is 100% width */
	.section.mcb-section-660x9r693 .wrap.mcb-wrap.one .mcb-wrap-inner {
		width: 100% !important;
		margin: 0 !important;
		padding: 0 !important;
	}
	
	/* Title - centered with margin auto */
	.section.mcb-section-660x9r693 .wrap.mcb-wrap.one .column.three-fourth {
		float: none !important;
		display: block !important;
		width: 75% !important;
		margin-left: auto !important;
		margin-right: auto !important;
		padding: 0 !important;
		text-align: left !important;
		clear: both !important;
	}
	
	/* Mission column */
	.section.mcb-section-660x9r693 > .column.one-third:nth-child(3) {
		float: left !important;
		width: 36% !important;
		margin-left: 13.5% !important;
		margin-right: 1.5% !important;
		padding: 0 !important;
	}
	
	/* Vision column */
	.section.mcb-section-660x9r693 > .column.one-third:nth-child(4) {
		float: left !important;
		width: 36% !important;
		margin-left: 0 !important;
		margin-right: 12.5% !important;
		padding: 0 !important;
	}
	
	/* Reset column_attr for desktop - remove 960px fixes */
	.section.mcb-section-660x9r693 > .column.one-third:nth-child(3) .column_attr,
	.section.mcb-section-660x9r693 > .column.one-third:nth-child(4) .column_attr {
		margin-right: 10px !important;
		padding-right: 0 !important;
		padding-left: 0 !important;
	}
}

/* Breakpoint 1050px - 1239px */
@media only screen and (min-width: 1050px) and (max-width: 1239px) {
	.section.mcb-section-660x9r693 .section_wrapper {
		width: 100% !important;
		max-width: 100% !important;
		margin: 0 !important;
		padding: 0 !important;
	}
	
	/* Ensure wrap is 100% width */
	.section.mcb-section-660x9r693 .wrap.mcb-wrap.one {
		width: 100% !important;
		margin: 0 !important;
		padding: 0 !important;
	}
	
	/* Ensure wrap-inner is 100% width */
	.section.mcb-section-660x9r693 .wrap.mcb-wrap.one .mcb-wrap-inner {
		width: 100% !important;
		margin: 0 !important;
		padding: 0 !important;
	}
	
	/* Title - centered with margin auto */
	.section.mcb-section-660x9r693 .wrap.mcb-wrap.one .column.three-fourth {
		float: none !important;
		display: block !important;
		width: 75% !important;
		margin-left: auto !important;
		margin-right: auto !important;
		padding: 0 !important;
		text-align: left !important;
		clear: both !important;
	}
	
	/* Mission column */
	.section.mcb-section-660x9r693 > .column.one-third:nth-child(3) {
		float: left !important;
		width: 40% !important;
		margin-left: 12.5% !important;
		margin-right: 1.5% !important;
		padding: 0 !important;
	}
	
	/* Vision column */
	.section.mcb-section-660x9r693 > .column.one-third:nth-child(4) {
		float: left !important;
		width: 40% !important;
		margin-left: 0 !important;
		margin-right: 12.5% !important;
		padding: 0 !important;
	}
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
	/* Title section - centered */
	.mcb-section-660x9r693 .column.three-fourth {
		float: none !important;
		margin: 0 auto !important;
		display: block !important;
		clear: both !important;
		text-align: left !important;
		width: 90% !important;
		padding: 0 7% !important;
	}
	
	/* Add padding to title elements */
	.mcb-section-660x9r693 .column.three-fourth h6,
	.mcb-section-660x9r693 .column.three-fourth h2 {
		padding-left: 0 !important;
		padding-right: 0 !important;
	}

	/* Mission column - with left margin to align inside title width */
	.mcb-section-660x9r693 .column.one-third {
		margin-left: 12.5% !important;
		margin-right: 12.5% !important;
		padding-left: 0 !important;
		padding-right: 0 !important;
	}
	
	/* Mission and Vision paragraphs */
	.mcb-section-660x9r693 .column.one-third .column_attr {
		padding-left: 0 !important;
		padding-right: 0 !important;
	}
	
	.mcb-section-660x9r693 .column.one-third p {
		font-size: 16px !important;
		margin: 0 !important;
		margin-bottom: 1em !important;
	}
}

/* Mobile - Small Screens (max 767px) */
@media only screen and (max-width: 767px) {
	/* Title section - centered */
	.mcb-section-660x9r693 .column.three-fourth {
		float: none !important;
		margin: 0 auto !important;
		display: block !important;
		clear: both !important;
		text-align: left !important;
		width: 90% !important;
		padding: 0 7% !important;
	}
	
	/* Apply padding to column_attr inside title column for h6 and h2 */
	.mcb-section-660x9r693 .column.three-fourth .column_attr {
		padding-left: 0 !important;
		padding-right: 0 !important;
	}
	
	/* Add padding directly to title elements */
	.mcb-section-660x9r693 .column.three-fourth h6,
	.mcb-section-660x9r693 .column.three-fourth h2 {
		padding-left: 0 !important;
		padding-right: 0 !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
	}
	/* Mission and Vision columns - stack vertically */
	.mcb-section-660x9r693 .column.one-third {
		float: none !important;
		width: 100% !important;
		clear: both !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
		margin-bottom: 30px !important;
		padding-left: 0 !important;
	}

	/* Homologar tamaño de fuente y márgenes de párrafos en misión y visión con "Quiénes somos" */
	.mcb-section-660x9r693 .column_attr {
		padding-left: 7% !important;
		padding-right: 7% !important;
	}
	
	.mcb-section-660x9r693 .column_attr p {
		font-size: 16px !important;
		margin: 0 !important;
		margin-bottom: 1em !important;
	}
}

/* Breakpoint 960px - 1024px (Tablet Landscape) - OVERRIDE tablet settings with side-by-side layout */
@media only screen and (min-width: 960px) and (max-width: 1024px) {
	.section.mcb-section-660x9r693 .section_wrapper {
		width: 100% !important;
		max-width: 100% !important;
		margin: 0 !important;
		padding: 0 !important;
	}
	
	/* Ensure wrap is 100% width */
	.section.mcb-section-660x9r693 .wrap.mcb-wrap.one {
		width: 100% !important;
		margin: 0 !important;
		padding: 0 !important;
	}
	
	/* Title - centered */
	.section.mcb-section-660x9r693 .wrap.mcb-wrap.one .column.three-fourth {
		float: none !important;
		display: block !important;
		width: 75% !important;
		margin-left: auto !important;
		margin-right: auto !important;
		padding: 0 !important;
		text-align: left !important;
		clear: both !important;
	}
	
	/* Mission column - inside title width (75% total container) - OVERRIDE tablet stacking */
	.section.mcb-section-660x9r693 > .column.one-third:nth-child(3) {
		float: left !important;
		width: 36.5% !important;
		margin-left: 12.5% !important;
		margin-right: 2% !important;
		margin-bottom: 0 !important;
		padding: 0 !important;
		clear: none !important;
	}
	
	/* Mission content - override inline margin-right and add padding instead */
	.section.mcb-section-660x9r693 > .column.one-third:nth-child(3) .column_attr {
		margin-right: -10px !important;
		padding-right: 30px !important;
		padding-left: 20px !important;
	}
	
	/* Mission content elements - add horizontal margins */
	.section.mcb-section-660x9r693 > .column.one-third:nth-child(3) .column_attr h4,
	.section.mcb-section-660x9r693 > .column.one-third:nth-child(3) .column_attr hr,
	.section.mcb-section-660x9r693 > .column.one-third:nth-child(3) .column_attr p {
		margin-left: 0 !important;
		margin-right: 0 !important;
	}
	
	/* Vision column - inside title width (75% total container) - OVERRIDE tablet stacking */
	.section.mcb-section-660x9r693 > .column.one-third:nth-child(4) {
		float: left !important;
		width: 36.5% !important;
		margin-left: 2% !important;
		margin-right: 12.5% !important;
		margin-bottom: 0 !important;
		padding: 0 !important;
		clear: none !important;
	}
	
	/* Vision content - override inline margin-right and padding-left, add padding instead */
	.section.mcb-section-660x9r693 > .column.one-third:nth-child(4) .column_attr {
		margin-right: -10px !important;
		padding-right: 30px !important;
		padding-left: 20px !important;
	}
	
	/* Vision content elements - add horizontal margins */
	.section.mcb-section-660x9r693 > .column.one-third:nth-child(4) .column_attr h4,
	.section.mcb-section-660x9r693 > .column.one-third:nth-child(4) .column_attr hr,
	.section.mcb-section-660x9r693 > .column.one-third:nth-child(4) .column_attr p {
		margin-left: 0 !important;
		margin-right: 0 !important;
	}
}

/* ============================================================
   FOOTER ICONS LAYOUT
   ============================================================ */

#Footer .footer_copy .container {
	position: relative !important;
}

#Footer .footer_copy .column.one,
.footer-copy-row {
	display: flex !important;
	flex-wrap: wrap !important;
	align-items: flex-end !important;
	justify-content: space-between !important;
	gap: 24px !important;
	padding: 10px 0 !important;
	width: 100% !important;
}

.footer-legal {
	flex: 1 1 320px !important;
	display: block !important;
}

/* FOOTER ICONS LAYOUT AND STYLING */
.footer-icons {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 16px !important;
	width: auto !important;
	height: auto !important;
	overflow: visible !important;
	visibility: visible !important;
	opacity: 1 !important;
}

.footer-icon,
#Footer .footer-icons a {
	width: auto !important;
	height: auto !important;
	border-radius: 0 !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	color: #fff !important;
	transition: background 0.3s ease, border-color 0.3s ease, color 0.3s ease, transform 0.3s ease !important;
	text-decoration: none !important;
	background: transparent !important;
	padding: 0 !important;
	margin: 0 8px !important;
}

.footer-icon i,
#Footer .footer-icons i {
	font-size: 16px !important;
	line-height: 1 !important;
	display: inline-block !important;
}

.footer-icon svg,
#Footer .footer-icons svg {
	width: 22px !important;
	height: 22px !important;
	display: block !important;
	fill: currentColor !important;
}

.footer-icon i {
	font-size: 20px !important;
}

.footer-icon-linkedin,
#Footer .footer-icons .footer-icon-linkedin {
	background: transparent !important;
}

.footer-icon-linkedin:hover,
#Footer .footer-icons .footer-icon-linkedin:hover {
	color: #ffffff !important;
	transform: translateY(-2px) !important;
}

.footer-icon-top,
#Footer .footer-icons .footer-icon-top {
	background: transparent !important;
}

.footer-icon-top:hover,
#Footer .footer-icons .footer-icon-top:hover {
	color: #fff !important;
	transform: translateY(-4px) !important;
}

#Footer .footer-icons #back_to_top,
#Footer a#back_to_top.button.button_js.footer-icon.footer-icon-top {
	display: inline-flex !important;
	opacity: 1 !important;
	visibility: visible !important;
	padding: 0 !important;
	margin: 0 !important;
	overflow: visible !important;
	float: none !important;
}

/* Desktop and all resolutions >= 1025px - Icons with standard positioning */
@media screen and (min-width: 1025px) {
	#Footer .footer_copy .container {
		position: relative !important;
	}

	.footer-icons {
		position: absolute !important;
		left: 75% !important;
		top: 25% !important;
		transform: translateY(-50%) !important;
		right: auto !important;
		bottom: auto !important;
		margin: 0 !important;
		z-index: 10 !important;
	}
}

/* Specific adjustment for 1025px - 1440px range */
@media screen and (min-width: 1025px) and (max-width: 1440px) {
	.footer-icons {
		left: 73% !important;
	}
}

/* Specific adjustment for 1441px - 1489px range */
@media screen and (min-width: 1441px) and (max-width: 1489px) {
	.footer-icons {
		left: 75% !important;
		transform: translateY(-50%) !important;
	}
	
	/* Adjust footer-legal block to align with logo margin */
	#Footer .footer_copy .footer-legal {
		margin-left: 50px !important;
	}
}

/* Specific adjustment for footer-legal in 1025px - 1440px range only */
@media screen and (min-width: 1025px) and (max-width: 1440px) {
	#Footer .footer_copy .footer-legal {
		transform: translateX(40px) !important;
	}
}

/* Tablet/Mobile (max-width: 1024px) - Different layout for smaller screens */
@media (max-width: 1024px) {
	.footer-copy-row {
		align-items: center !important;
		flex-direction: row !important;
	}

	.footer-icons {
		position: relative !important;
		left: auto !important;
		top: auto !important;
		transform: none !important;
		flex: 0 0 auto !important;
		justify-content: flex-start !important;
		margin-left: 0 !important;
		margin-top: 0 !important;
		padding-top: 0 !important;
	}
}

/* ============================================================
   FOOTER COPY ROW - Center alignment fix for all desktop breakpoints
   ============================================================ */

/* Ensure footer_copy .container is properly centered */
#Footer .footer_copy .container {
	width: 100% !important;
	margin: 0 auto !important;
	padding-left: auto !important;
	padding-right: auto !important;
	padding-top: 20px !important;
	padding-bottom: 20px !important;
}

/* Footer legal column - Full width in footer_copy */
#Footer .footer_copy .footer-copy-row {
	display: flex !important;
	width: 100% !important;
	justify-content: space-between !important;
	align-items: center !important;
	flex-wrap: wrap !important;
	padding: 10px 0 !important;
	margin: 0 !important;
	gap: 20px !important;
}

/* Footer legal text - Left aligned within row */
#Footer .footer_copy .footer-legal {
	flex: 1 1 auto !important;
	text-align: left !important;
	padding: 0 !important;
	margin: 0 !important;
	display: flex !important;
	align-items: center !important;
	height: auto !important;
}

#Footer .footer_copy .footer-legal .column_attr {
	text-align: left !important;
	padding: 0 !important;
	margin: 0 !important;
	display: flex !important;
	align-items: center !important;
	flex-wrap: wrap !important;
	gap: 5px !important;
}

#Footer .footer_copy .footer-legal a {
	display: inline-block !important;
	margin: 0 !important;
	padding: 0 !important;
	line-height: 1.2 !important;
	white-space: nowrap !important;
	vertical-align: middle !important;
}

#Footer .footer_copy .footer-legal a + a::before {
	content: " | " !important;
	margin: 0 5px !important;
}

/* Footer icons - Right aligned and vertically centered */
#Footer .footer-icons {
	flex: 0 0 auto !important;
	text-align: right !important;
	margin-left: auto !important;
	display: flex !important;
	align-items: center !important;
	justify-content: flex-end !important;
	gap: 10px !important;
	height: auto !important;
	margin-top: 20px !important;
}

#Footer .footer-icon {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	margin: 0 5px !important;
	padding: 0 !important;
	line-height: 1 !important;
}

/* OVERRIDE: 1441px - 1489px footer-legal positioning - highest specificity */
@media screen and (min-width: 1441px) and (max-width: 1489px) {
	#Footer .footer_copy .column.one.footer-copy-row #Footer .footer_copy .footer-legal,
	#Footer .footer_copy .footer-legal {
		margin-left: 65px !important;
		margin-right: auto !important;
	}
}

/* ============================================================
   BIOGRAFÍA BUTTON - Biography Modal Button Styles
   ============================================================ */

.btn-biografia {
	display: inline-block;
	margin-top: 10px;
	padding: 8px 20px;
	border: 2px solid #666666;
	background-color: transparent;
	color: #333333;
	text-transform: capitalize;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.5px;
	cursor: pointer;
	transition: all 0.3s ease;
	border-radius: 2px;
	text-decoration: none;
}

.btn-biografia:hover {
	border-color: #164b3c;
	color: #ffffff;
	background-color: #164b3c;
}

.btn-biografia:active {
	border-color: #0d2e24;
	color: #ffffff;
	background-color: #0d2e24;
}

/* ============================================================
   HELPER HEADER OUTLINE - For dark backgrounds
   ============================================================ */

.helper.helper-outline {
	background: transparent;
}

.helper.helper-outline .helper_header {
	border: 1px solid #ffffff;
	background: transparent;
}