@charset "UTF-8";
/*general*/
body, html{margin:0;padding:0;height:100%;font-size:14px;}
body{background-color:#fff;color:#5b5b5b;;line-height:1.5;font-family: 'Barlow', serif;font-weight:400;min-height:100%;}
*,*:after,*:before {-webkit-box-sizing: border-box !important;-moz-box-sizing: border-box !important;box-sizing: border-box !important;padding:0;margin:0;}
*:focus{outline:0;}
/*section[id]:before{content:"";display:block;height:85px;margin:-85px 0 0;}*/

/*links*/
a{color:currentColor;}
a:link,a:visited, a:hover, a:active{text-decoration:none;}
.pointer{cursor:pointer;}


.bg{background-color:#f7f7f7;}

/*headers*/
h1,h2,h3,h4,h5,h6{margin-bottom:0.5em;margin-top:0.5em;line-height:1.4;font-weight:700;font-family: 'Barlow Condensed', sans-serif;color:#000;}

h1{font-size:54px;line-height:1.23;}
h2{font-size:42px;line-height:1.23;}
h3{font-size:24px;line-height:1.23;}
h4{font-size:20px;}
h5{font-size:18px;}
h6{font-size:16px;}

header{text-align:center;position:fixed;z-index:9;top:0;left:0;right:0;background:-moz-linear-gradient(top, rgba(0,0,0,0.8) 0%, rgba(0,0,0,0) 100%);background:-webkit-linear-gradient(top, rgba(0,0,0,0.8) 0%,rgba(0,0,0,0) 100%);background:linear-gradient(to bottom, rgba(0,0,0,0.8) 0%,rgba(0,0,0,0) 100%);height:61px;}
header.scroll .header_inner, header.permanent_header .header_inner{background:#000;height:61px;}

/* Base navigation styles (overridden by modern styles above) */
nav a{color:rgba(255,255,255,0.9);display:inline-block;font-size:15px;padding:12px 18px;font-family: 'Barlow Condensed', sans-serif;letter-spacing:1.5px;font-weight:500;}
nav a:hover{color:#FFF;}

/* Modern language selector */
.lang {
  position: absolute;
  padding: 0;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
  display: flex;
  align-items: center;
  gap: 15px;
}

.lang span {
  display: flex;
  align-items: center;
  gap: 8px;
}

.lang_a {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 8px 12px;
  border-radius: 6px;
  transition: all 0.3s ease;
  opacity: 0.7;
}

.lang_a:hover {
  opacity: 1;
  background: rgba(255,255,255,0.1);
  transform: scale(1.1);
}

.lang_a.active {
  opacity: 1;
  background: rgba(99, 102, 241, 0.3);
  background-image: none;
}

.lang_a img {
  transition: transform 0.3s ease;
  filter: drop-shadow(0 2px 4px rgba(0,0,0,0.3));
}

.lang_a:hover img {
  transform: scale(1.15);
}

/* Social icons styling */
.lang a[href*="facebook"],
.lang a[href*="instagram"],
.lang a[href*="wa.me"] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  padding: 8px;
  border-radius: 50%;
  background: rgba(255,255,255,0.1);
  transition: all 0.3s ease;
  opacity: 0.8;
}

.lang a[href*="facebook"]:hover,
.lang a[href*="instagram"]:hover,
.lang a[href*="wa.me"]:hover {
  background: rgba(99, 102, 241, 0.5);
  opacity: 1;
  transform: translateY(-2px) scale(1.1);
  box-shadow: 0 4px 12px rgba(99, 102, 241, 0.4);
}

.lang a[href*="facebook"] img,
.lang a[href*="instagram"] img,
.lang a[href*="wa.me"] img {
  width: 20px;
  height: 20px;
  filter: brightness(1.2);
}

footer{background:#000;color:#999;font-size:13px;}
footer a:hover{color:#FFF;}

p{font-size:16px;line-height:1.5;color:#5b5b5b;margin-bottom:44px;}
p.lead{font-size:19px;line-height:1.434;color:#353535;font-weight:600;}

.text_col2{-webkit-column-count: 2;-moz-column-count: 2;column-count: 2;-webkit-column-gap: 70px;-moz-column-gap: 70px;column-gap: 70px;}

.grey{color:#7c7c7c;}
.green, .hover_green:hover{color:#1e7066;}

.small{font-size:14px;line-height:1.65;}
.midsmall{font-size:18px;line-height:1.5;}
.medium{font-size:20px;line-height:1.5;}
.normal{font-size:1rem;}

.text-shadow{text-shadow:0 1px 20px rgba(0,0,0,0.5);}

.separator{
	height:0;
/*-moz-transform: translateY(-50%) skewY(-2deg);
-webkit-transform: translateY(-50%) skewY(-2deg);
-o-transform: translateY(-50%) skewY(-2deg);
-ms-transform: translateY(-50%) skewY(-2deg);
transform: translateY(-50%) skewY(-2deg);
padding-bottom:4%;*/}

.separator.separator_bottom{
/*-moz-transform: translateY(50%) skewY(-2deg);
-webkit-transform: translateY(50%) skewY(-2deg);
-o-transform: translateY(50%) skewY(-2deg);
-ms-transform: translateY(50%) skewY(-2deg);
transform: translateY(50%) skewY(-2deg);*/
}

.video_coords{top:90px;bottom:90px;left:80px;right:80px;}

.contenido{padding-left:50vw;}
.portada{position:fixed;top:0;left:0;bottom:0;width:50%;}



.afterline:after{content:'';display:block;width:40px;height:3px;background:currentColor;margin:20px 0;}
.afterline.center:after{margin:20px auto;}



.thin{font-weight:100;}
.light{font-weight:300;}
.regular{font-weight:400;}
.semi-bold{font-weight:500;}
.bold, strong, .strong{font-weight:700;color:#000;}
.ultra-bold{font-weight:900;}
.italic, em{font-style:italic;}
.line-through{text-decoration:line-through;}
.underline, .hover_underline:hover{text-decoration:underline !important;}
.decoration_none, .hover_decoration_none:hover{text-decoration:none;}
.left{text-align:left;}
.right{text-align:right;}
.center{text-align:center;}
.nowrap{white-space:nowrap;}
.ellipsis{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}

.text_col2{-webkit-column-count: 2;-moz-column-count: 2;column-count: 2;-webkit-column-gap: 50px;-moz-column-gap: 50px;column-gap: 50px;}

.opacity0, .hover_opacity0:hover, .hover_parent_opacity0:hover .hover_opacity0{opacity:0;}
.opacity50, .hover_opacity50:hover, .hover_parent_opacity50:hover .hover_opacity50{opacity:.5;}
.opacity80, .hover_opacity80:hover, .hover_parent_opacity80:hover .hover_opacity80{opacity:.8;}
.opacity100, .hover_opacity100:hover, .hover_parent_opacity100:hover .hover_opacity100{opacity:1;}


.gradient_bottom{/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#000000+0,000000+100&0+0,0.65+100 */
background: -moz-linear-gradient(top, rgba(0,0,0,0) 0%, rgba(0,0,0,0.8) 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(top, rgba(0,0,0,0) 0%,rgba(0,0,0,0.8) 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(to bottom, rgba(0,0,0,0) 0%,rgba(0,0,0,0.8) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#a6000000',GradientType=0 ); /* IE6-9 */}



/*paragraphs*/
p a, li a{text-decoration:underline !important;}
p a:hover, li a:hover{color:#1e7066;}
blockquote{text-align:center;padding:60px 20px;color:#1e7066;font-size: 28px;line-height:1.65;font-family: "Barlow Condensed", "Barlow",sans-serif;font-weight:300;color:#000;min-height:260px;}




/*horizontal rule*/
hr{height:1px;border:0;border-top:1px solid #ddd;padding:0;margin:30px 0;}
hr.ocho{height:17px;border:0;background-image:url('/assets/img/hr.png');background-repeat:no-repeat;background-position:center;}

/*lists
ul, ol{margin-top:15px;}
li{margin-bottom:15px;}*/



/*float*/
.fleft{float:left;}
.fright{float:right;}
.fnone{float:none;}
.clear{clear:both;}

/*transition*/
.tran0{transition:0s;-moz-transition:0s;-webkit-transition:0s;-o-transition:0s;}
.tran03{transition:0.3s;-moz-transition:0.3s;-webkit-transition:0.3s;-o-transition:0.3s;}


/*border-radius*/
.radius0{-webkit-border-radius: 0;border-radius: 0;}
.radius2{-webkit-border-radius: 2px;border-radius: 2px;}
.round{-webkit-border-radius: 100%;border-radius: 100%;}

/*components*/

.btn{font-family: 'Barlow Condensed', sans-serif;letter-spacing:2px;padding:0 30px 0 30px;border:1px solid #000;color:#000;font-size:15px;background-color:transparent;font-size:1rem;text-align:center;display:inline-block;cursor:pointer;text-decoration:none !important;line-height:3;margin:10px 10px 10px 0;position:relative;overflow:hidden;vertical-align: middle;font-weight: 400;position:relative;transition:0.3s;-moz-transition:0.3s;-webkit-transition:0.3s;-o-transition:0.3s;}

.btn:hover{background:#000;color:#FFF;}

.btn.btn_black{background:#000;color:#FFF;}
.btn.btn_black:hover{background:#FFF;color:#000;}

.btn.btn_white{border-color:#FFF;color:#FFF;}
.btn.btn_white:hover{background:#FFF;color:#000;}

.btn_full_video{margin:0;
-moz-transform: translateY(-50%);
-webkit-transform: translateY(-50%);
-o-transform: translateY(-50%);
-ms-transform: translateY(-50%);
transform: translateY(-50%);
/*-moz-transform: translateY(-50%) skewY(2deg);
-webkit-transform: translateY(-50%) skewY(2deg);
-o-transform: translateY(-50%) skewY(2deg);
-ms-transform: translateY(-50%) skewY(2deg);
transform: translateY(-50%) skewY(2deg);*/}




/*position*/
.static{position:static;}
.rel{position:relative;}
.abs{position:absolute;}
.fix{position:fixed;}
.coords0{top:0;left:0;right:0;bottom:0;}
.coords50{top: 50%;left: 50%;
-moz-transform: translateX(-50%) translateY(-50%);
-webkit-transform: translateX(-50%) translateY(-50%);
-o-transform: translateX(-50%) translateY(-50%);
-ms-transform: translateX(-50%) translateY(-50%);
transform: translateX(-50%) translateY(-50%);
}
.vh100{min-height:100vh;}
.vh50{min-height:50vh;}


/*forms*/
input[type="text"], 
input[type="password"], 
input[type="email"], 
input[type="number"],
input[type="date"],
input[type="datetime"],
input[type="datetime-local"],
input[type="month"], 
input[type="search"], 
input[type="tel"], 
input[type="time"], 
input[type="url"], 
input[type="week"], 
textarea, 
select{
	display:block;
	padding:8px;
	margin:0;
	background:transparent;
	border:1px solid #CCC;
	width:100%;
	font-family:inherit;
	font-size:1rem;
	color:inherit;
	margin-bottom:20px;
  	border-radius:0;
  	-webkit-border-radius:0;
  	transition:0.3s;-moz-transition:0.3s;-webkit-transition:0.3s;-o-transition:0.3s;
}

input[type="text"]:focus, 
input[type="password"]:focus, 
input[type="email"]:focus, 
input[type="number"]:focus,
input[type="date"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="month"]:focus, 
input[type="search"]:focus, 
input[type="tel"]:focus, 
input[type="time"]:focus, 
input[type="url"]:focus, 
input[type="week"]:focus, 
textarea:focus, 
select:focus{
	border-color:#4290BF;
}

textarea{
	min-height:100px;
	resize:vertical;
	border:1px solid #CCC;
	padding:8px;
}

input[type="submit"]{
  	display:inline-block;
	cursor:pointer;
  appearance:none;
-moz-appearance:none; /* Firefox */
-webkit-appearance:none; /* Safari and Chrome */
transition:0.3s;-moz-transition:0.3s;-webkit-transition:0.3s;-o-transition:0.3s;

}
input[type="submit"]:hover, input[type="submit"]:active{
	text-decoration:none;
	color:#FFF;
	background:#2473a2;;
}

select.reset{appearance:none;
-moz-appearance:none; /* Firefox */
-webkit-appearance:none; /* Safari and Chrome */
padding-right:20px;
background-image:url('/assets/img/caret_down.png');
background-repeat:no-repeat;
background-position:right center;}

.btn select{
	margin:0;
	border:0;
	display:inline-block;
	min-height:auto;
	background:#FFF !important;
	color:#000 !important;
	width:auto;
	height:32px;
	border-radius:0;
	-webkit-border-radius:0;
  appearance:none;
-moz-appearance:none; /* Firefox */
-webkit-appearance:none; /* Safari and Chrome */
}


.input_label{position:relative;padding:13px 0 5px;}
.input_label label{display:inline-block;padding:0 8px;position:absolute;background:#FFF;font-size:1rem;color:#999;top:0;left:5px;pointer-events:none;transition:0.3s;-moz-transition:0.3s;-webkit-transition:0.3s;-o-transition:0.3s;}
.input_label label.bg_light-brown.brown{background:#dacbba;color:#54492a;}
.input_label label.bg_grey100{background:#f5f5f5;}
.input_label input, .input_label textarea{transition:0.3s;-moz-transition:0.3s;-webkit-transition:0.3s;-o-transition:0.3s;}

.input_label input:focus + label, .input_label textarea:focus + label{color:#498CCE;}
.input_label input:focus, .input_label textarea:focus{border-color:#498CCE;}





/*margins paddings borders width height*/
.pad0{padding:0;}
.pad2{padding:2px;}
.pad5{padding:5px;}
.pad5-0{padding:5px 0;}
.pad0-5{padding:0 5px;}
.pad10{padding:10px;}
.pad10-5{padding:10px 5px;}
.pad10-0{padding:10px 0;}
.pad10-20{padding:10px 20px;}
.pad15{padding:15px;}
.pad15-10{padding:15px 10px;}
.pad0-10{padding:0 10px;}
.pad20{padding:20px;}
.pad20-0{padding:20px 0;}
.pad20-5{padding:20px 5px;}
.pad20-15{padding:20px 15px;}
.pad0-20{padding:0 20px;}
.pad20-10{padding:20px 10px;}
.pad20-10-5{padding:20px 10px 5px;}
.pad25{padding:25px;}
.pad25-0{padding:25px 0;}
.pad0-25{padding:0 25px;}
.pad30{padding:30px;}
.pad20-0{padding:20px 0;}
.pad40-10{padding:40px 10px;}
.pad40-20{padding:40px 20px;}
.pad20-40{padding:20px 40px;}
.pad40{padding:40px;}
.pad60{padding:60px;}
.pad70{padding:70px;}
.pad80{padding:80px;}
.pad40-0{padding:40px 0;}
.pad80-0{padding:80px 0;}
.pad80-10{padding:80px 10px;}
.m0{margin:0;}
.m1_0{margin:1px 0;}
.m1{margin:1px;}
.m5{margin:5px;}
.m10{margin:10px;}
.m15{margin:15px;}
.m20{margin:20px;}
.m30{margin:30px;}
.m40{margin:60px;}
.mauto{margin:auto;}
.wauto{width:auto;}
.w100{width:100%;}
.maxw600{max-width:600px;}
.maxw740{max-width:740px;}
.maxw800{max-width:800px;}
.maxw1000{max-width:1000px;}
.maxw1200{max-width:1200px;}
.hauto{height:auto;}
.h100{height:100%;}
.border0{border:0;}
.border1{border-width:1px;}
.border2{border-width:2px;}
.border3{border-width:3px;}
.border4{border-width:4px;}
.border5{border-width:5px;}
.solid{border-style:solid;}
.dotted{border-style:dotted;}
.dashed{border-style:dashed;}

/*grid system*/
.col1{width: 100%;}
.col5-6{width:83.333%;}
.col4-5{width:80%;}
.col3-4{width:75%;}
.col2-3{width:66.667%;}
.col3-5{width: 60%;}
.col2{width: 50%;}
.col2-5{width: 40%;}
.col3{width: 33.333%;}
.col4{width: 25%;}
.col5{width: 20%;}
.col6{width: 16.667%;}

/*ratios*/
.ratio1-1, .square{padding-bottom:100%;}
.ratio4-3{padding-bottom:75%;}
.ratio3-2{padding-bottom:66.67%;}
.ratio16-9{padding-bottom:56.25%;}
.ratio16-10{padding-bottom:62.5%;}
.ratio2-1{padding-bottom:50%;}
.ratio5-2{padding-bottom:40%;}
.ratio3-1{padding-bottom:30%;}

/*background*/
.bg_fix{background-attachment:fixed;}
.bg_scroll{background-attachment:scroll;}
.bg_repeat{background-repeat:repeat;}
.bg_norepeat{background-repeat:no-repeat;}
.bg_repeat-x{background-repeat:repeat-x;}
.bg_repeat-y{background-repeat:repeat-y;}
.bg_cover{background-size:cover;background-position: center;}
.bg_contain{background-size:contain;}
.bg_auto{background-size:auto;}
.bg_none, .bg_hover_none:hover{background-color:transparent;}
.bg_currentColor{background-color:currentColor;}

.bg_blue, .bg_hover_blue:hover{background-color:#498CCE;}
.bg_light-blue, .bg_hover_light-blue:hover{background-color:#37A0EA;}
.bg_blue_alpha80{background-color: rgba(19, 124, 202, 0.8);}

.bg_red{background-color:#D11;}

.bg_cyan, .bg_hover_cyan:hover{background-color:#07beba;}

.bg_light-brown{background:#dacbba;}
.bg_hover_brown100:hover{background:#B5A592;}

.bg_grey50, .bg_hover_grey50:hover{background-color:#fafafa;}
.bg_grey100, .bg_hover_grey100:hover{background-color:#f5f5f5;}
.bg_grey200, .bg_hover_grey200:hover{background-color:#eeeeee;}
.bg_grey300, .bg_hover_grey300:hover{background-color:#e0e0e0;}
.bg_grey400, .bg_hover_grey400:hover{background-color:#bdbdbd;}
.bg_grey500, .bg_hover_grey500:hover, .bg_grey, .bg_hover_grey:hover{background-color:#9e9e9e;}
.bg_grey600, .bg_hover_grey600:hover{background-color:#757575;}
.bg_grey700, .bg_hover_grey700:hover{background-color:#616161;}
.bg_grey800, .bg_hover_grey800:hover{background-color:#424242;}
.bg_grey900, .bg_hover_grey900:hover{background-color:#212121;}
.bg_grey1000, .bg_hover_grey:hover, .bg_black, .bg_hover_black:hover{background-color:#000000;}
.bg_white, .bg_hover_white:hover{background-color:#ffffff;}

.bg_black_alpha08{background:rgba(0,0,0,0.65);}
.bg_hover_black_alpha06:hover{background:rgba(0,0,0,0.6);}
.hover_scale110:hover, .hover_parent_scale110:hover .hover_scale110{-moz-transform: scale(1.1);
-webkit-transform: scale(1.1);
-o-transform: scale(1.1);
-ms-transform: scale(1.1);
transform: scale(1.1);}


.bg_orange{background-color:#FFA300;}



/*color*/
.cyan, .hover_cyan:hover{color:#07beba;}
.blue, .hover_blue:hover{color:#4290BF;}
.red, .hover_red:hover{color: #b70d0d;}
.brown, .hover_brown:hover{color:#54492a;}
.light-blue, .hover_light-blue:hover{color:#37A0EA;}
.yellow, .hover_yellow:hover{color:#FFCD00;}
.green, .hover_green:hover{color:#62A660;}
.orange, .hover_orange:hover{color:#fb9d23;}

.bg_green{background-color:#62A660;}

.grey50, .hover_grey50:hover{color:#fafafa;}
.grey100, .hover_grey100:hover{color:#f5f5f5;}
.grey200, .hover_grey200:hover{color:#eeeeee;}
.grey300, .hover_grey300:hover{color:#e0e0e0;}
.grey400, .hover_grey400:hover{color:#bdbdbd;}
.grey500, .hover_grey500:hover, .grey, .hover_grey:hover{color:#9e9e9e;}
.grey600, .hover_grey600:hover{color:#757575;}
.grey700, .hover_grey700:hover{color:#616161;}
.grey800, .hover_grey800:hover{color:#424242;}
.grey900, .hover_grey900:hover{color:#212121;}
.grey1000, .hover_grey1000:hover, .black, .hover_black:hover{color:#000000;}
.white, .hover_white:hover{color:#ffffff !important;}
.white_alpha30{color:rgba(255,255,255,0.3);}
.white_alpha50{color:rgba(255,255,255,0.5);}
.white_alpha80{color:rgba(255,255,255,0.8);}
.black_alpha30{color:rgba(0,0,0,0.3);}
.black_alpha50{color:rgba(0,0,0,0.5);}
.black_alpha80{color:rgba(0,0,0,0.8);}


/*border-color*/
.border_none, .border_hover_none:hover, .border_focus_none:focus{border-color:transparent;}
.border_currentColor{border-color:currentColor;}

.border_blue, .border_hover_blue:hover, .border_focus_blue:focus{border-color:#498CCE;}
.border_light-blue, .border_hover_light-blue:hover, .border_focus_light-blue:focus{border-color:#37A0EA;}

.border_grey50, .border_hover_grey50:hover, .border_focus_grey50:focus{border-color:#fafafa;}
.border_grey100, .border_hover_grey100:hover, .border_focus_grey100:focus{border-color:#f5f5f5;}
.border_grey200, .border_hover_grey200:hover, .border_focus_grey200:focus{border-color:#eeeeee;}
.border_grey300, .border_hover_grey300:hover, .border_focus_grey300:focus{border-color:#e0e0e0;}
.border_grey400, .border_hover_grey400:hover, .border_focus_grey400:focus{border-color:#bdbdbd;}
.border_grey500, .border_hover_grey500:hover, .border_focus_grey500:focus, .border_grey, .border_hover_grey:hover, .border_focus_grey:focus{border-color:#9e9e9e;}
.border_grey600, .border_hover_grey600:hover, .border_focus_grey600:focus{border-color:#757575;}
.border_grey700, .border_hover_grey700:hover, .border_focus_grey700:focus{border-color:#616161;}
.border_grey800, .border_hover_grey800:hover, .border_focus_grey800:focus{border-color:#424242;}
.border_grey900, .border_hover_grey900:hover, .border_focus_grey900:focus{border-color:#212121;}
.border_grey1000, .border_hover_grey1000:hover, .border_focus_grey1000:focus, .border_black, .border_hover_black:hover , .border_focus_black:focus{border-color:#000000;}
.border_white, .border_hover_white:hover, .border_focus_white:focus{border-color:#ffffff;}



/*display*/
.inline{display:inline;}
.inline-block{display:inline-block;}
.block{display:block;}
.none{display:none !important;}
.target_block:target{display:block !important;}
.target_block:target + #overlay{display:block !important;}
.visible{visibility:visible;}
.hidden{visibility:hidden;}
.overflow_hidden{overflow:hidden;}
.overflow_auto{overflow:auto;}
.overflow_scroll{overflow:scroll;}
.overflow_visible{overflow:visible;}
.overflow-y_hidden{overflow-y:hidden;}
.overflow-y_auto{overflow-y:auto;}
.overflow-y_scroll{overflow-y:scroll;}
.overflow-y_visible{overflow-y:visible;}
.overflow-x_hidden{overflow-x:hidden;}
.overflow-x_auto{overflow-x:auto;}
.overflow-x_scroll{overflow-x:scroll;}
.overflow-x_visible{overflow-x:visible;}
.backface_hidden{-webkit-backface-visibility: hidden;backface-visibility: hidden;}
.hover_parent_block:hover .hover_block{display:block !important;}

.afternone:after{content:none;}
.beforenone:before{content:none;}

/*images iframes*/
img{vertical-align:top;max-width:100%;height:auto;}
iframe{vertical-align:top;}
a img{border:0;}
.top{vertical-align:top;}
.middle{vertical-align:middle !important;}




/*animations*/
.fade-in{animation:fade-in 0.5s;-moz-animation:fade-in 0.5s;-webkit-animation:fade-in 0.5s;-o-animation:fade-in 0.5s;}
@keyframes fade-in{from {opacity:0;}to {opacity:1;}}
@-moz-keyframes fade-in{from {opacity:0;}to {opacity:1;}}
@-webkit-keyframes fade-in{from {opacity:0;}to {opacity:1;}}


@media only screen and (min-width: 1000px) {/*desktop specific*/



}

@media only screen and (max-width: 1000px) {/* large tablets */

.tablet_pad20{padding:20px;}
.tablet_pad10{padding:10px;}
.tablet_pad20{padding:20px;}
.tablet_pad5{padding:5px;}
.tablet_col2{width:50%;}
.tablet_col2-5{width:40%;}
.tablet_col3-4{width:75%;}
.tablet_col1{width:100%;float:none;clear:both;}
.tablet_none{display:none;}
.tablet_rel{position:relative;}
.tablet_pad0{padding:0;}
.tablet_ratio4-3{padding-bottom:75%;}

.tablet_m0{margin:0 !important;}

.tablet_block{display:block !important;}
.tablet_inline-block{display: inline-block !important;}


.text_col2{-webkit-column-count: 1;-moz-column-count: 1;column-count: 1;}



}
@media only screen and (max-width: 840px) {/* small tablets 767*/


.minitablet_col4{width:25%;}
.minitablet_col3-4{width:75%;}
.minitablet_col3{width:33.33%;}
.minitablet_col2{width:50%;}
.minitablet_col1{width:100%;display:block;clear:both;float:none;}
.minitablet_left{text-align: left;}
.minitablet_block{display:block !important;}
.minitablet_none{display:none !important;}
.minitablet_inline-block{display:inline-block !important;}
.minitablet_pad0{padding:0 !important;}
.minitablet_pad2{padding:2px !important;}

.minitablet_pad5{padding:5px !important;}
.minitablet_pad7{padding:7px !important;}
.minitablet_pad10{padding:10px;}
.minitablet_pad20{padding:20px !important;}
.minitablet_fleft{float:left;}

.minitablet_pad40-0-20{padding:40px 0 20px;}

.minitablet_padt15{padding-top:15px;}

.minitablet_m0{margin:0 !important;}

.minitablet_opacity50{opacity:0.5;}


.contenido{padding:0;}
.portada{position:relative;top:0;left:0;bottom:0;width:auto;height:100vh;}




.minitablet_target_block:target{display:block !important;}

.minitablet_ratio3-2{padding-bottom:66.67%;}
.minitablet_ratio4-3{padding-bottom:75%;}
.minitablet_ratio1-1{padding-bottom:100%;}
.minitablet_rel{position:relative;}
.minitablet_pad0{padding:0;}
.minitablet_pad15{padding:15px;}
.minitablet_pad20{padding:20px !important;}
.minitablet_pad20-40{padding:20px 40px !important;}
.minitablet_pad20-0{padding:20px 0;}

.minitablet_ratio4-3{padding-bottom:66.66%;}

.minitablet_padb40{padding-bottom:40px !important;}

.minitablet_border0{border:0 !important;}
.minitablet_center{text-align:center;}
.minitablet_left{text-align:left;}
.minitablet_right{text-align:right;}

.minitablet_pad80-0{padding:80px 0;}

/* Mobile menu base styles (enhanced above) */
/* Solo aplica cuando el menú es visible en móvil (target) */
@media only screen and (max-width: 840px) {
  #menu:target {
    background: linear-gradient(135deg, rgba(0,0,0,0.98) 0%, rgba(30, 41, 59, 0.98) 100%);
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    bottom: 0 !important;
    right: 0 !important;
    overflow: auto;
    display: block !important;
    z-index: 99999 !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 100vh !important;
  }
  
  #menu:target nav {
    display: flex !important;
    flex-direction: column !important;
    width: 100%;
  }
  
  #menu:target nav a {
    display: block !important;
    padding: 18px 30px;
    width: 100%;
    box-sizing: border-box;
  }
  
  #menu:target nav a.active {
    background: rgba(99, 102, 241, 0.15);
  }
  
  #menu:target .lang {
    position: static;
    padding: 20px;
    justify-content: center;
  }
}


.parallax, .parallax_content{
  -moz-transform: translateY(0) !important;
  -webkit-transform: translateY(0) !important;
  -o-transform: translateY(0) !important;
  -ms-transform: translateY(0) !important;
  transform: translateY(0) !important;
}

.video_coords{top:0px;bottom:0px;left:0px;right:0px;}


}

@media only screen and (max-width: 560px) {/* phones 767*/
.phone_col1{width:100%;float:none;clear:both;}
.phone_col2{width:50%;}
.phone_pad20{padding:20px !important;}
.phone_pad0{padding:0;}
.phone_pad10{padding:10px;}
.phone_padt80{padding-top:80px !important;}

.about_text{line-height:1;font-size:36px;}

.phone_bg_green{background:#133C1B !important;}

.phone_left{text-align:left;}
.phone_center{text-align: center;}

.phone_none{display:none;}
.phone_block{display:block;}

.phone_ratio1-1{padding-bottom:100%;}

.phone_rel{position:relative;}


}
@media only screen and (max-width: 767px) and (orientation: portrait) {/* portrait phones */

}

/* ============================================
   MODERN ENHANCEMENTS FOR AI AGENTS & MOBILE
   ============================================ */

/* Modern color scheme for AI Agents theme */
:root {
  --ai-primary: #6366f1;
  --ai-secondary: #8b5cf6;
  --ai-accent: #06b6d4;
  --ai-gradient: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
  --ai-gradient-light: linear-gradient(135deg, #f093fb 0%, #f5576c 100%);
  --ai-dark: #1e293b;
  --ai-light: #f8fafc;
}

/* Enhanced typography for modern look */
body {
  font-smooth: always;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}

/* Modern header with backdrop blur */
header {
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  background: linear-gradient(to bottom, rgba(0,0,0,0.85) 0%, rgba(0,0,0,0.2) 100%);
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  border-bottom: 1px solid rgba(255,255,255,0.05);
  height: 70px;
}

header.scroll, header.permanent_header {
  background: rgba(0,0,0,0.95);
  box-shadow: 0 4px 30px rgba(0,0,0,0.5);
  backdrop-filter: blur(25px);
  -webkit-backdrop-filter: blur(25px);
  border-bottom: 1px solid rgba(99, 102, 241, 0.2);
}

.header_inner {
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 70px;
  padding: 0 40px;
  max-width: 1600px;
  margin: 0 auto;
  position: relative;
}

/* Desktop navigation container - Solo en desktop */
@media only screen and (min-width: 841px) {
  .header_inner > #menu.minitablet_none {
    display: flex !important;
    align-items: center;
    justify-content: center;
    flex: 1;
    position: static;
    background: transparent;
    padding: 0;
    padding-right: 180px; /* Espacio reservado para iconos sociales e idiomas */
    overflow: visible;
    animation: none;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
    gap: 10px;
    min-width: 0; /* Permitir que se comprima si es necesario */
    box-sizing: border-box;
  }
  
  .header_inner > #menu.minitablet_none:target {
    display: flex !important; /* Mantener flex en desktop cuando está visible */
  }
}

/* Modern logo styling */
header .abs img {
  transition: transform 0.3s ease;
}

header .abs:hover img {
  transform: scale(1.05);
}

/* Enhanced navigation with modern hover effects */
nav {
  display: flex;
  align-items: center;
  gap: 2px;
}

/* Desktop nav styling - Solo aplica en desktop */
@media only screen and (min-width: 841px) {
  .header_inner > #menu.minitablet_none nav {
    display: flex !important;
    flex-direction: row !important;
    gap: 2px !important;
    align-items: center;
    padding: 0;
    margin-right: 20px; /* Espacio para evitar solapamiento con iconos sociales */
  }
}

.header_inner > #menu.minitablet_none .lang {
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
  padding: 0;
  flex-shrink: 0; /* Evitar que se comprima */
  z-index: 20; /* Asegurar que esté por encima del menú */
}

/* Hide mobile-only elements in desktop */
.header_inner > #menu.minitablet_none > a[href="#!"] {
  display: none !important;
}

.header_inner > #menu.minitablet_none > a[href="/"] {
  display: none !important;
}

/* Logo positioning in desktop - Sobrescribe inline styles */
.header_inner > a.abs[href*="/"] {
  position: absolute !important;
  left: 20px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  z-index: 10;
  display: flex !important;
  align-items: center;
  justify-content: center;
  padding: 0 !important;
}

/* Asegurar que el logo no quede muy arriba */
.header_inner > a.abs[href*="/"] img {
  display: block !important;
  max-height: 45px;
  height: 45px !important;
  width: auto;
}

nav a {
  position: relative;
  color: rgba(255,255,255,0.9);
  display: inline-block;
  font-size: 14px;
  padding: 10px 12px;
  font-family: 'Barlow Condensed', sans-serif;
  letter-spacing: 1px;
  font-weight: 500;
  text-transform: uppercase;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  border-radius: 6px;
  overflow: hidden;
  white-space: nowrap;
}

nav a::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(135deg, rgba(99, 102, 241, 0.1) 0%, rgba(139, 92, 246, 0.1) 100%);
  opacity: 0;
  transition: opacity 0.3s ease;
  z-index: -1;
}

nav a::after {
  content: '';
  position: absolute;
  bottom: 8px;
  left: 50%;
  width: 0;
  height: 2px;
  background: linear-gradient(90deg, var(--ai-primary), var(--ai-secondary));
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  transform: translateX(-50%);
  border-radius: 2px;
}

nav a:hover {
  color: #fff;
  transform: translateY(-1px);
}

nav a:hover::before {
  opacity: 1;
}

nav a:hover::after,
nav a.active::after {
  width: 70%;
}

nav a.active {
  color: #fff;
  background: rgba(99, 102, 241, 0.15);
  background-image: none;
}

nav a.active::before {
  opacity: 1;
}

/* Modern button styles with gradients */
.btn {
  position: relative;
  overflow: hidden;
  transition: all 0.3s ease;
  border-radius: 4px;
  z-index: 1;
}

.btn::before {
  content: '';
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: var(--ai-gradient);
  transition: all 0.3s ease;
  z-index: -1;
}

.btn:hover::before {
  left: 0;
}

.btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(99, 102, 241, 0.4);
}

.btn.btn_black::before {
  background: #fff;
}

.btn.btn_black:hover {
  color: #000;
}

/* Modern card effects */
.col3, .col2, .col4 {
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.col3:hover, .col2:hover, .col4:hover {
  transform: translateY(-5px);
}

/* Enhanced mobile menu */
#menu {
  backdrop-filter: blur(30px);
  -webkit-backdrop-filter: blur(30px);
  background: linear-gradient(135deg, rgba(0,0,0,0.98) 0%, rgba(30, 41, 59, 0.98) 100%);
  z-index: 99999;
  animation: slideIn 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  padding-top: 80px;
  display: none !important; /* Oculto por defecto */
}

@media only screen and (max-width: 840px) {
  #menu:target {
    display: block !important; /* Visible cuando se hace target */
    position: fixed !important;
    z-index: 99999 !important;
    top: 0 !important;
    left: 0 !important;
    width: 100vw !important;
    height: 100vh !important;
    min-height: 100vh !important;
  }
}

@keyframes slideIn {
  from {
    opacity: 0;
    transform: translateX(100%);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}

/* Menú móvil - Nav vertical - Aplica solo cuando #menu es target (menú abierto) */
@media only screen and (max-width: 840px) {
  #menu:target nav {
    display: flex !important;
    flex-direction: column !important;
    gap: 0 !important;
    padding: 20px 0;
    width: 100%;
    align-items: stretch;
  }

  #menu:target nav a {
    display: block !important;
    font-size: 18px;
    padding: 18px 30px;
    border-bottom: 1px solid rgba(255,255,255,0.08);
    text-align: left;
    border-radius: 0;
    letter-spacing: 2px;
    position: relative;
    overflow: visible;
    width: 100%;
    box-sizing: border-box;
    white-space: normal;
  }
}

#menu nav a::before {
  position: absolute;
  left: 0;
  width: 4px;
  height: 100%;
  background: linear-gradient(180deg, var(--ai-primary), var(--ai-secondary));
  opacity: 0;
  transition: opacity 0.3s ease;
}

#menu nav a:hover::before,
#menu nav a.active::before {
  opacity: 1;
}

#menu nav a::after {
  display: none;
}

#menu nav a:last-child {
  border-bottom: none;
}

#menu nav a:hover {
  background: rgba(99, 102, 241, 0.15);
  padding-left: 40px;
  transform: translateX(10px);
}

/* Modern mobile menu button */
header a[href="#menu"] {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  border-radius: 8px;
  background: rgba(255,255,255,0.1);
  transition: all 0.3s ease;
  backdrop-filter: blur(10px);
}

header a[href="#menu"]:hover {
  background: rgba(99, 102, 241, 0.3);
  transform: scale(1.1);
}

header a[href="#menu"] img {
  filter: brightness(1.2);
  transition: transform 0.3s ease;
}

header a[href="#menu"]:hover img {
  transform: rotate(90deg);
}

/* Close button for mobile menu */
#menu a[href="#!"] {
  position: fixed;
  top: 20px;
  right: 20px;
  width: 44px;
  height: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: rgba(255,255,255,0.1);
  backdrop-filter: blur(10px);
  transition: all 0.3s ease;
  z-index: 10000;
}

#menu a[href="#!"]:hover {
  background: rgba(239, 68, 68, 0.5);
  transform: rotate(90deg) scale(1.1);
}

/* Modern scrollbar for webkit browsers */
::-webkit-scrollbar {
  width: 10px;
  height: 10px;
}

::-webkit-scrollbar-track {
  background: #1e293b;
}

::-webkit-scrollbar-thumb {
  background: var(--ai-gradient);
  border-radius: 5px;
}

::-webkit-scrollbar-thumb:hover {
  background: var(--ai-secondary);
}

/* Enhanced responsive breakpoints */
@media only screen and (max-width: 1200px) {
  .header_inner > #menu.minitablet_none {
    padding-right: 160px;
  }
  
  nav a {
    font-size: 13px;
    padding: 10px 10px;
    letter-spacing: 0.5px;
  }
}

@media only screen and (max-width: 1024px) {
  .header_inner > #menu.minitablet_none {
    padding-right: 140px;
  }
  
  nav a {
    font-size: 12px;
    padding: 8px 8px;
  }
}

@media only screen and (max-width: 480px) {
  h1 { font-size: 36px; line-height: 1.2; }
  h2 { font-size: 28px; line-height: 1.2; }
  h3 { font-size: 22px; line-height: 1.3; }
  
  .pad40-0 { padding: 30px 0; }
  .pad20 { padding: 15px; }
  
  header {
    height: 56px;
  }
  
  .header_inner {
    height: 56px;
  }
  
  nav a {
    font-size: 15px;
    padding: 12px 15px;
  }
}

/* Touch-friendly interactions for mobile */
@media (hover: none) and (pointer: coarse) {
  .btn {
    min-height: 48px;
    min-width: 48px;
  }
  
  nav a {
    padding: 16px 20px;
  }
}

/* Improved form inputs */
input[type="text"],
input[type="email"],
input[type="password"],
textarea {
  border-radius: 6px;
  transition: all 0.3s ease;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="password"]:focus,
textarea:focus {
  border-color: var(--ai-primary);
  box-shadow: 0 0 0 3px rgba(99, 102, 241, 0.1);
  outline: none;
}

/* Modern gallery/item hover effects */
.hover_parent_scale110 {
  transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.hover_parent_scale110:hover {
  transform: scale(1.05);
}

/* Smooth fade-in animations */
.fade-in {
  animation: fadeInUp 0.6s ease-out;
}

@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(30px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* AI-themed accent colors for special elements */
.ai-accent {
  background: var(--ai-gradient);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

/* Improved text readability on mobile */
@media only screen and (max-width: 767px) {
  body {
    font-size: 16px;
    line-height: 1.6;
  }
  
  p {
    font-size: 16px;
    line-height: 1.6;
    margin-bottom: 20px;
  }
  
  .text_col2 {
    -webkit-column-count: 1;
    -moz-column-count: 1;
    column-count: 1;
  }
}

/* Better spacing for mobile */
@media only screen and (max-width: 560px) {
  .maxw1200 {
    padding: 0 15px;
  }
  
  .separator {
    margin: 20px 0;
  }
}

/* Modern loading states */
.loading {
  position: relative;
  overflow: hidden;
}

.loading::after {
  content: '';
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,0.3), transparent);
  animation: loading 1.5s infinite;
}

@keyframes loading {
  0% { left: -100%; }
  100% { left: 100%; }
}

/* Enhanced video container */
.video_coords {
  padding: 20px;
}

@media only screen and (max-width: 767px) {
  .video_coords {
    padding: 10px;
  }
}

/* Improved accessibility */
*:focus-visible {
  outline: 2px solid var(--ai-primary);
  outline-offset: 2px;
}

/* Better image optimization */
img {
  image-rendering: -webkit-optimize-contrast;
  image-rendering: crisp-edges;
}

/* Modern section separators */
.separator {
  position: relative;
  height: 1px;
  background: linear-gradient(to right, transparent, rgba(0,0,0,0.1), transparent);
  margin: 60px 0;
}

@media only screen and (max-width: 767px) {
  .separator {
    margin: 40px 0;
  }
}

/* ============================================
   MODERN DESIGN ELEMENTS - BUITRERAS
   ============================================ */

/* Hero Section */
.hero-section {
  min-height: 100vh;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}

.hero-overlay {
  background: linear-gradient(135deg, rgba(0,0,0,0.4) 0%, rgba(99,102,241,0.3) 100%);
  z-index: 1;
}

.hero-content-wrapper {
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  padding-top: 80px;
  z-index: 2;
}

.hero-content {
  z-index: 2;
  position: relative;
  width: 100%;
}

.hero-title {
  animation: fadeInUp 0.8s ease-out;
}

.hero-subtitle {
  animation: fadeInUp 1s ease-out;
}

.btn-hero {
  animation: fadeInUp 1.2s ease-out;
}

/* Modern Buttons */
.btn-modern {
  background: var(--ai-gradient);
  border: none;
  color: white !important;
  padding: 16px 40px;
  font-size: 1.1rem;
  font-weight: 600;
  border-radius: 50px;
  box-shadow: 0 8px 25px rgba(99, 102, 241, 0.4);
  transition: all 0.3s ease;
  display: inline-block;
  text-decoration: none !important;
}

.btn-modern:hover {
  transform: translateY(-3px);
  box-shadow: 0 12px 35px rgba(99, 102, 241, 0.5);
  color: white !important;
}

.btn-modern-video {
  background: rgba(0,0,0,0.8);
  border: 2px solid rgba(255,255,255,0.3);
  color: white !important;
  padding: 14px 35px;
  font-size: 1rem;
  font-weight: 500;
  border-radius: 50px;
  transition: all 0.3s ease;
  display: inline-flex;
  align-items: center;
  text-decoration: none !important;
}

.btn-modern-video:hover {
  background: rgba(99, 102, 241, 0.9);
  border-color: rgba(99, 102, 241, 0.9);
  color: white !important;
  transform: translateY(-2px);
  box-shadow: 0 8px 20px rgba(99, 102, 241, 0.4);
}

.btn-white-small {
  background: rgba(255,255,255,0.2);
  border: 1px solid rgba(255,255,255,0.4);
  color: white !important;
  border-radius: 25px;
  transition: all 0.3s ease;
  display: inline-block;
}

.btn-white-small:hover {
  background: white;
  color: #6366f1 !important;
}

/* Section Titles */
.section-title {
  position: relative;
}

.title-accent {
  position: absolute;
  bottom: -10px;
  left: 50%;
  transform: translateX(-50%);
  width: 60px;
  height: 4px;
  background: var(--ai-gradient);
  border-radius: 2px;
}

/* Program Cards */
.programs-section {
  background: #f8fafc;
}

.program-card-link {
  position: relative;
  border-radius: 12px;
  overflow: hidden;
}

.program-card-link:hover {
  transform: translateY(-8px);
  box-shadow: 0 12px 40px rgba(0,0,0,0.2) !important;
}

.program-card-link:hover .program-overlay {
  opacity: 1 !important;
}

.program-card-link:hover .program-content {
  opacity: 1 !important;
  transform: translate(-50%, -50%) !important;
}

.program-card-link:hover .program-image {
  transform: scale(1.1);
}

.program-image {
  transition: transform 0.6s cubic-bezier(0.4, 0, 0.2, 1);
}

.program-overlay {
  z-index: 1;
}

.program-content {
  z-index: 2;
}

@media only screen and (max-width: 767px) {
  .program-card {
    padding: 10px !important;
    margin-bottom: 20px;
  }
}

/* Testimonials */
.testimonials-section {
  position: relative;
}

.testimony-modern {
  padding: 40px 20px;
}

.testimony-card {
  background: rgba(255,255,255,0.05);
  border-radius: 20px;
  padding: 50px 40px;
  backdrop-filter: blur(10px);
  border: 1px solid rgba(255,255,255,0.1);
  transition: all 0.4s ease;
}

.testimony-card:hover {
  background: rgba(255,255,255,0.08);
  transform: translateY(-5px);
}

.testimony-quote {
  margin-bottom: 25px;
}

.testimony-text {
  position: relative;
  z-index: 1;
}

.testimony-author {
  margin-top: 25px;
  padding-top: 20px;
  border-top: 1px solid rgba(255,255,255,0.2);
}

/* Testimony Navigation */
.testimony-nav {
  top: 50%;
  transform: translateY(-50%);
  width: 50px;
  height: 50px;
  background: rgba(255,255,255,0.1);
  border: 1px solid rgba(255,255,255,0.2);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.3s ease;
  z-index: 10;
}

.testimony-nav:hover {
  background: rgba(99, 102, 241, 0.8);
  border-color: rgba(99, 102, 241, 0.8);
  transform: translateY(-50%) scale(1.1);
}

.testimony-nav-prev {
  left: 20px;
}

.testimony-nav-next {
  right: 20px;
}

@media only screen and (max-width: 767px) {
  .testimony-nav {
    width: 40px;
    height: 40px;
  }
  
  .testimony-nav-prev {
    left: 10px;
  }
  
  .testimony-nav-next {
    right: 10px;
  }
  
  .testimony-card {
    padding: 30px 20px;
  }
}

/* Hero responsive */
@media only screen and (max-width: 767px) {
  .hero-section {
    min-height: 70vh;
  }
  
  .hero-content-wrapper {
    padding-top: 120px;
    align-items: flex-start;
  }
  
  .hero-content {
    padding: 20px;
  }
  
  .hero-content > div {
    padding-top: 20px !important;
  }
}

@media only screen and (max-width: 480px) {
  .hero-content-wrapper {
    padding-top: 100px;
  }
  
  .hero-content > div {
    padding-top: 40px !important;
  }
}

/* Smooth transitions */
.tran04 {
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

/* Get in Touch Section Modernizado */
.getintouch-modern {
  background: var(--ai-gradient);
  padding: 80px 0;
}

.getintouch-modern h2 {
  color: white;
}

.getintouch-modern p {
  color: rgba(255,255,255,0.9);
}

/* Additional animations */
@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(30px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* Improved spacing */
.pad60-0 {
  padding: 60px 0;
}

.pad80-0 {
  padding: 80px 0;
}

@media only screen and (max-width: 767px) {
  .pad60-0 {
    padding: 40px 0;
  }
  
  .pad80-0 {
    padding: 50px 0;
  }
}