@charset "utf-8";
/* CSS Document */

@media (max-width: 2100px){
.contentlarge,.contentxlarge{
max-width: 1600px;
}

}
@media (max-width: 1900px){
.contentlarge,.contentxlarge{
max-width: 1500px;
}


}
@media (max-width: 1800px){
.contentlarge,.contentxlarge{
max-width: 1400px;
}

}
@media (max-width: 1700px){
.contentlarge,.contentxlarge{
max-width: 1300px;
}

}
@media (max-width: 1600px){
:root {

    --radius: 8px;
    --bigradius: 16px;
    --lowrad: 4px;

    --midrad: 9px;
    --lowpad: 4px;
    --paddings: 18px;

    }
.punto, .punto a{
font-size: 14px;
}
.plano-interactivo{
transform: translateX(10%);
}

.cta svg,.cfaqitemtitle svg,.ccontrol svg,.ccontrol{
width:40px;
height: 40px;
}
.ctamini svg{
width:32px;
height: 32px;
}
.cpresubottom .cta svg{
width:60px;
height: 60px;
}

}
@media (max-width: 1500px){
.ccontactswitcher .cctswitch{
font-size: 14px;
}
.cdelegacionestext {
    left: 40px;
    }
.ccontentitemsrv{
max-width: 1100px;
}
.contentcontact h2 {
    width: 40%;
}
.csectionbigbgbottominner img {
    aspect-ratio: 100 / 60;
    }
.csectionccontentitemsrv{
padding-left: var(--paddings);
padding-right: var(--paddings);
}
.cheaderlogo,.cmenuwrap{
display: inline-block;
vertical-align: middle;
}
.cmenuwrap{
position: relative;
transform: none;
top: auto;
left: auto;
margin-left: 20px;
}
.citemiconflick {
    width: 27vw;
}
.contentsmall {
    max-width: 800px;
    }
.cgototopicon svg,
.clinkedin svg {
  width: 50px;
  height: auto;
}

.clinkspie a {
  font-size: 14px;
  margin-bottom: 6px;
}
.contentmid {
padding-left: var(--paddings);
padding-right: var(--paddings);
}
.csbbig{
border-width: 5px;
}

.csbmini{
border-radius: 12px;
}
.csbmid{
border-radius: 12px;
}
.csbbig{
border-radius: 20px;
}
.cstext{
font-size: 14px;
}
.ccontactoitemmap {
    aspect-ratio: 190 / 65;
}
}
@media (max-width: 1400px){
.cheaderlogo svg{
height: 37px;
width: auto;
}
.ctestimonialitem {
font-size: 15px;
}
.ctestimonialitemright svg {
  width: 40px;
  height: auto;
  margin-bottom: 10px;
}
.ctitletest {
    font-size: 24px;
}
.home .punto,.home  .punto a {
    font-size: 12px;
}
}
@media (max-width: 1300px){
.csectionvaloresiconshome  .citemicon{
width: 50%;
margin-bottom: var(--gap);
}
.citemiconflick {
    width: 30vw;
}
.contentsmall {
    max-width: 700px;
    }
    .cstext{
    font-size: 13px;
    }
}
@media (max-width: 1200px){
.cheaderlogo svg{
height: 32px;
}
.cmenuwrap {
    margin-left: 5px;
}
.cmenuwrap a {
padding-left: 4px;
padding-right: 4px;
    font-size: 14px;
}
.ctamini {
    font-size: 12px;
}
.cta svg,.cfaqitemtitle svg,.ccontrol svg,.ccontrol{
width:35px;
height: 35px;
}
.ctamini svg{
width:28px;
height: 28px;
}
.cpresubottom .cta svg{
width:60px;
height: 60px;
}
.cpresubottom .cta {
    font-size: 18px;
}
.citemboxinner{
padding: var(--paddings);
}
.csbmini{
border-radius: 10px;
}
.csbmid{
border-radius: 10px;
}
.csbbig{
border-radius: 16px;
}
.home .punto,.home  .punto a {
    font-size: 12px;
    line-height: 1.2;
}
}
@media (max-width: 1100px){
.citemiconflick {
    width: 35vw;
}

}
@media (max-width: 1000px){
.contentxlargecol2logo img{
position: relative;
transform: none;
left: auto;
margin: auto;
}
.citemcardtext .contentxlarge{
min-width:inherit;
}
.citemiconflick .relative{
height: calc(100% - var(--paddings) - var(--paddings));
}
.caeologo {
float: none;
margin: auto!important;
height: auto;
width: auto;
background: transparent;
aspect-ratio:auto;
overflow: hidden;
}
.caeologo img{
margin-top: 20px;
border-radius: var(--midrad);
}
.csectionvaloresiconshome  .citemicon{
width: 100%;
margin-bottom: var(--paddingsmid);
}
.cinstalacionestext{
border-right: 0px;
}
.cinstalacionestextinner{
padding-right: 0px;
}
.cinstalacionesgallery .citemiconflick .relative {
    height: 100%;
}
:root {
    --headerheight: 56px;
    }
    .single-delegacion .csectiontopbannerbottomtext .contentxxxlarge {
    padding: 19px;
}
.cinstalacionesgallery .citemiconflick .cinner {
    padding: 0px;
}
.cinstalacionesgallery .citemiconflick {
    width: 64vw;
}
.cinstalacionesgallery .citemiconflick img{
    width: 100%!important;
}
.cinstalacionesgalleryinner {
    padding-left: 0px;
    padding-right: 0px;
    overflow: hidden;
}
    .rowubis .col33 .cinner{
    border: 0px;
    }
    .ccontactoitemmap {
        aspect-ratio: 120 / 80;
    }
    .rowubis .col33 .cinner{
    padding-left: 0px;
    }

    .cfaqitemdescinner{
    padding-right: 0px;
    }
    .cfaqitemdescinner,.cfaqitemdescinner *{
    font-size: 16px;
    }
    .cfaqitems h5{
    font-size: 18px;
    }
    .citemherramientas .col65{
    order: 2;
    }
    .csectionherramientas   .contentxxxlarge{
    padding-left: var(--paddings);
    padding-right: var(--paddings);
    }
    .cheader{
    padding: 18px;
    background:
    }
    .cheaderinner {
    background: white;
    border: 1px solid var(--lightgray);
    box-sizing: border-box;
    }
.citemcardtextcol2{
display: none;
}
.cheaderinner {
    padding-left: var(--paddingsmid);
    padding-right: var(--paddingsmid);
}
.logoresponsive{
display: block!important;
}
.logodesktop{
display: none!important;
}
.hidedesktop{
display: block;
}
.cheaderinner {

}
.cservicesicons h5{
padding-top: var(--sectionmargin);
margin-bottom: 5px;
}
.cover,.csectionbigbgbottom, .csectionbigbgbottom img{
aspect-ratio:1/1;
}
.cservicesicons h2{
padding-bottom: var(--sectionmargin);
color: var(--color1);
}
.csectionservicios .citemserviciobig.col25{
width: 50%!important;
}
.cmenuwrapresponsive{
top: 84px;
padding-left: 18px;
padding-right: 18px;
z-index: 415;
}
.csectionlefted1{
display: none;
}
.csentinell{
display: none;
}
.csectionleftedserv .rowserviciositems {
padding-left: var(--paddings);
padding-right: var(--paddings);
}
.citemsrv,.citemsrvdouble .cinner > div {
aspect-ratio:10/5;
object-fit:cover;
}
.citemsrvdouble .cinner > div:last-child {
margin-top: var(--paddingsmid);
}
.citemsrv:last-child{
margin-bottom: 0px;
}
.citemsrvdouble{
aspect-ratio:auto;
}
.cmenuwrapresponsive *{
color: white;
}
.cmenuwrapresponsive {
    max-height: calc(100vh - 102px);
    }
.cmenuwrapresponsiveopa{
background: white;
position:fixed;
top:0px;
left:0px;
height:100vh;
width:100vw;
z-index: 405;
opacity: 0;
-webkit-transition:all 0.2s ease-in-out;
-moz-transition:all 0.2s ease-in-out;
-o-transition:all 0.2s ease-in-out;
transition:all 0.2s ease-in-out;
pointer-events: none;
}
.showmenuresponsive .cmenuwrapresponsiveopa{
opacity: 1;
pointer-events: all;
}
.cmenuwrapresponsive {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: auto 1fr  auto;
  width: 100%;
  height: 100%;
  gap: 4px;
}

/* Menú: 100% ancho, ocupa toda la altura disponible */
.cmresmenu {
  grid-column: 1 / -1;
  grid-row: 2;
  height: 100%;
  background: var(--color1);
  border-radius: var(--bigradius);
}

/* Cliente y expedición: 50% + 50%, altura según contenido */
.cmrescliente {
  grid-column: 1;
  grid-row: 1;
  background: var(--color1);
  border-radius: var(--bigradius);
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
}
.cmrescliente a,.cmresexp a{
display: block;
padding-top: 20px;
padding-bottom: 20px;
width: 100%;
font-size: 16px;
}
.cloginicon svg {
    width: 40px;
    }
.csectionlogins{
padding-left: var(--paddings);
padding-right: var(--paddings);
padding-top: 85px;
padding-bottom: 16px;
}
.cmresexp {
  grid-column: 2;
  grid-row: 1;
  background: var(--color1);
  border-radius: var(--bigradius);
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
}
.cmreslang{
padding: calc(var(--paddings)* 2);
}
.cmreslang a{
display: block;
font-weight: 500;
margin-bottom: 15px;
}
.lcurrentlanguage{
color: var(--color2);
}
.cmreslang a:last-child{
margin-bottom: 0px;
}
.cmrescliente svg,
.cmresexp svg{
margin-bottom: 0px;
width: 40px;
height: auto;
}
.cmresmenu{
padding: calc(var(--paddings)* 2);
box-sizing: border-box;
}
.cmenuwrapresponsive .cmenu a{
font-size: 24px;
text-transform: uppercase;
display: block;
position: relative;
}
.cmenuwrapresponsive .cmenu a svg{
position: absolute;
right: 0px;
top: 50%;
transform: translateY(-50%);
}
/* Idiomas: 100% ancho, altura según contenido */
.cmreslang {
  grid-column: 1 / -1;
  grid-row: 3;
  background: var(--color1);
  border-radius: var(--bigradius);
}

.cmapsedessvg{
display: none;
}
.csectionbannerdefault video {
    position: relative;
    height: auto;
    aspect-ratio: auto;
    height: 65vh;
    object-fit: cover;
}

.csectionmap::before{
content: "";
background: var(--color2);;
position:absolute;
top:0px;
left:0px;
height:100%;
width:100%;
z-index: 10;
opacity: 0.8;
}
.cpresubottom .cta svg {
    width: 40px;
    height: 40px;
}
.cpresubottom .cta {
    font-size: 14px;
        border-radius: 6px;
        border-bottom-left-radius: 0px;
        border-bottom-right-radius: 0px;

        background: var(--color3);
        border-color: var(--color3);
        color: white;
}
.cpresubottom{
padding: 0px;
right: auto;
left: 50%;
transform: translateX(-50%);
bottom: -1px;
}
.cimagemap img{
min-height: 50vh;
object-fit:cover;
}
.clinkspie{
margin-bottom: 20px!important;
}
.cpresubottom .cta div {
    transform: translateY(2px);
    padding-right: 5px;
    padding-left: 0px;
    margin-left: -5px;
}
.hidepresupuesto .cpresubottom {
    transform: translateY(101%) translateX(-50%);
        /* transform: translateX(-50%); */
}
.csectionmarginmid-negativo{
display: none;
}
.cmaptext {
width: 100%;
padding: var(--paddings);
box-sizing: border-box;
    max-width: 700px;
    top: 50%;
    bottom: auto;
    transform: translateY(-50%) translateX(-50%);
    }
.showmenuresponsive .cmenuresponsive{
transform: translateY(0%);
opacity: 1;
}
.showmenuresponsive .cmenuresponsive li{
transform: translateY(0%);
opacity: 1;
}
.cmenuwrap{
display: none;
}
.cburger{
display: block;
}

.citemiconflick {
    width: 54vw;
    height: auto;
    aspect-ratio:
}

.citemiconflick .cinner {
  padding: var(--paddings);
}
.citemiconflick h4 {
    font-size: 18px;
    }
    .csingledatetime {
        margin-top: 20px;
    }
*[class^="col"],.rowmarginbot *[class^="col"] {
    width: 100%;
    margin-bottom: var(--paddingsmid);;
}
.labelcv {
    padding-top: 40px!important;
    padding-bottom: 40px!important;
}
.sadjuntar {
    font-size: 18px;
}
.ccvpdfinner{
padding-left: 45px;
}
.ccvpdfinner svg {
    width: 40px;
    }
.ccontactswitcher{
margin-bottom: 10px;
}
.citemcontact {
    margin-bottom:30px;
    }
.ccontactswitcher .cctswitch{
font-size: 14px;
}
.iinputdefault {
    font-size: 15px;
    padding: 14px;
    }
.csectionblogbody  .contentxlarge{
padding-left: 18px;
padding-right: 18px;
}
.cblogcontent h2, .cblogcontent h3, .cblogcontent h4, .cblogcontent h5 {
    margin-top: 20px;
        line-height: 1.2;
}
.ccolblogslider *{
position: relative!important;
transform: none!important;
left: auto!important;
top: auto!important;
}
.cblogcontent {
    padding-left: 0px;
    color: black;
}
.csinglepost {
    width:100%;
}
.snavblog {
    color: var(--color1);
    border-color: var(--color1);
}
.ctanoicon {
    display: inline-block;
    min-height: 36px;
    line-height: 36px;
    text-align: center;
    padding-left: 25px;
    padding-right: 25px;
    margin-right: 10px;
}
.citemboxservicios{
width: 50%;
}
.cmenuright{
display: none;
}
.citemicon img {
  margin-bottom: 22vw;
}
.citemicon h3{
font-size: 65px;
}
.jqnumbers > div {
    padding-right: 10px;
}
.ctextalignbottomright{
display: block;
text-align: left;
margin-top: 10px;
}
.csectionflickity .textright{
text-align: left;
}
.csectioncontact {
display: none;
}

.ctestimonialiteminner {
    display: flex;
     flex-direction: column;
}

.ctestimonialiteminner > div {
    flex: 1;
}
.ctestimonialitemleft, .ctestimonialitemright{
aspect-ratio:auto;
}
.ctestimonialitemleftinner {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto auto;
    gap: 4px;
    height: 100%;
}
.ctestimonialitemright svg{
display: none;
}
.ctesttitles{
padding-top: var(--paddings);
padding-bottom: var(--paddings);
}
.ctestimonialitemrightinner {
    padding: var(--paddings);
}
.contentsmall{
padding-left: var(--paddings);
padding-right: var(--paddings);
}
.clinkspie,.clinkedin,.cgototop{
width: 50%;
}
.clinkedin,.cgototop{
margin-bottom: 0px;
}
.contentmidlegal * {
    font-size: 12px;
    text-align: center;
}
.contentmidlegal .col100,.contentmidlegal .col50 {
margin-bottom: 0px;
}
.contentmidlegal {
    padding-bottom: calc(var(--paddings) * 1);
}
.cgototopicon svg, .clinkedin svg {
        width: 40px;
        height: auto;
    }

    :root {
    --radius: 8px;
    --bigradius: 16px;
    --lowrad: 4px;
    --midrad: 9px;
    --lowpad: 4px;
    --paddings: 14px;
}
.clateral h5 {
margin-bottom: 20px;
}
.clateral p {
margin-bottom:0px;
}
.csectionmarginmid,.csectionmargin {
    height: 40px;
}
.ciconostira p{
margin-bottom: 0px;
}
.rowwhyitem {
margin: 0px;
}

.hidemobile{
display: none;
}
.ccolitemrrh .cinner {
    padding: var(--paddings);
}
.current-menu-item svg *{
fill:var(--color2);
}
.crrhhtext{
text-align: left;
}
.csvg{
position: relative;
margin-bottom: 10px;
}
.ccolitemrrhinner{
padding-left: 0px;
}
.crrhhtext svg{
width: 40px;
height: auto;
}
/* Recomendado: que tus .cbar tengan transition también (por si acaso) */
.cbar{ transform-origin: center; }

/* ===== OPEN (cuando existe .showmenuresponsive) ===== */
.showmenuresponsive .cbar1{ animation: cb1_open .45s ease both; }
.showmenuresponsive .cbar3{ animation: cb3_open .45s ease both; }
.showmenuresponsive .cbar2{ animation: cb2_hide .18s ease both; }

/* ===== CLOSE (clase temporal) ===== */
.closingmenuresponsive .cbar1{ animation: cb1_close .45s ease both; }
.closingmenuresponsive .cbar3{ animation: cb3_close .45s ease both; }
.closingmenuresponsive .cbar2{ animation: cb2_show .18s ease both; }

/* ===== KEYFRAMES (2 pasos reales) ===== */
@keyframes cb1_open{
  0%   { transform: translateY(0) rotate(0); }
  55%  { transform: translateY(6px) rotate(0); }
  100% { transform: translateY(6px) rotate(45deg); }
}
@keyframes cb3_open{
  0%   { transform: translateY(0) rotate(0); }
  55%  { transform: translateY(-6px) rotate(0); }
  100% { transform: translateY(-6px) rotate(-45deg); }
}
@keyframes cb2_hide{ from{opacity:1;} to{opacity:0;} }

/* close = reverse real, también en 2 pasos */
@keyframes cb1_close{
  0%   { transform: translateY(6px) rotate(45deg); }
  45%  { transform: translateY(6px) rotate(0); }
  100% { transform: translateY(0) rotate(0); }
}
@keyframes cb3_close{
  0%   { transform: translateY(-6px) rotate(-45deg); }
  45%  { transform: translateY(-6px) rotate(0); }
  100% { transform: translateY(0) rotate(0); }
}
@keyframes cb2_show{ from{opacity:0;} to{opacity:1;} }

.csectionrsc h2 {
    text-align: left;
}
.csectionrsc img{
margin-top: 20px;
}
.csectionlefted  .cinner{
padding: calc(var(--paddings) + 4px);
margin: 0px!important;
box-sizing: border-box;
}
.col100 .cwhyleft{
display: none;
}
.csectionlefted  ul{
padding-left: 0px;
margin-left: 20px;
margin-bottom: 0px;
padding-bottom: 0px;
}
.citemcardtext{
width: 90%;
}
.citemiconflick .cinner {
    aspect-ratio: 10 /11;
    height: auto;
}
.cleftcontent,.citempinedspacing{
display: none;
}
.csectionvaloresicons .citemiconflick {
    width: 74vw;
    }
.citemcardtextcol1, .citemcardtextcol2 {
    float: left;
    width: 100%;
    min-height: 1px;

    padding: var(--paddings);
padding-top: calc(var(--sectionmargin) / 2);
padding-bottom: calc(var(--sectionmargin) / 2);
}
.csectionservicios .cinner{
height: 100%!important;
}

.csectionservicios .row{
display: block!important;
}
.csectionservicios .citemserviciobig.col25 {
    height: calc(50vh - 5px) !important;
    margin-bottom: 2px;
}
.csectionbgimg {
    aspect-ratio: auto;
    height: 65vh!important;
}
.citemserviciobigtext h2 {
    font-size: 18px;

    }
    .citemserviciobigtext h2 br {
    display: inline-block;
    width: 2px;
    }

.cfiltros a{
padding: 6px;
padding-top: 0px;
padding-bottom: 0px;
margin-right: 3px;
}
}
@media (max-width: 900px){


}
@media (max-width: 800px){


}
@media (max-width: 700px){


}
@media (max-width: 650px){


}
@media (max-width: 600px){


}
@media (max-width: 550px){


}
@media (max-width: 500px){
.citemboxservicios{
width: 100%;
}

}
@media (max-width: 499px){
.citemiconflick {
    width: 64vw;
    height: auto;
    aspect-ratio:
}
.citemicon img {
    width:50px;
    }

    .clinkspie{
    margin-bottom: 20px;
    }
    .ccontactoitemmap {
        aspect-ratio: 120 / 120;
    }
}

@media (max-width: 399px){
.citemiconflick {
    width: 64vw;
    height: auto;
    aspect-ratio:
}

.citemicon img {
    width:50px;
    }


.citemiconflick h4 {
    font-size: 16px;
    }

.cmreslang a {
    margin-bottom: 2px;
}

}
@media (max-width: 380px){

    .cmenuwrapresponsive .cmenu a {
    font-size: 22px;
    padding-top: 4px;
    padding-bottom: 4px;
}
.cmrescliente,.cmresexp{
font-size: 16px;
}
.cmenuwrapresponsive .cmenu a {
font-size: 20px;
}
.cmresmenu {
    padding: calc(var(--paddings) * 1.2);
}
.cmreslang {
    padding: calc(var(--paddings) * 1.2);
}
}
