    /************************************************************************************
      RESET
      *************************************************************************************/





      html,body,address,blockquote,div,dl,form,h1,h2,h3,h4,h5,h6,ol,p,pre,table,ul,dd,dt,li,tbody,td,tfoot,th,thead,tr,button,del,ins,map,object,a,abbr,acronym,b,bdo,big,br,cite,code,dfn,em,i,img,kbd,q,samp,small,span,strong,sub,sup,tt,var,legend,fieldset,figure{margin:0;padding:0}html,body,div,header,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;vertical-align:baseline}img,fieldset{border:0}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}span{display:inline-block}img{max-width:100%;height:auto;}

      /************************************************************************************
      GENERAL STYLING
      *************************************************************************************/
      html, body { height: 100%; margin: 0; padding: 0; }
      body { color:var(--corporativonegro); background: var(--corporativoblanco); font-family: 'Open Sans', sans-serif; font-size: 16px; height: 100%; }
      body.noscroll { overflow: hidden; }
      a { color: var(--corporativonegroalt); text-decoration: none; outline: none; }
      hr { border-bottom: 1px solid var(--corporativogris); border-top: 0;   height: 0; }
      a:hover { text-decoration: underline; }
      :focus { box-shadow: 0 0 2px var(--corporativogris); }
      p { margin: 0 0 1.2em; padding: 0; font-weight: normal; line-height: 140%; }
      small { font-size: 87%; }
      blockquote { font: italic 110%/130% "Times New Roman", Times, serif; padding: 8px 30px 15px; }
      body.noscroll { overflow: hidden; } 
      /* LIST
      ================================================ */
      ul, ol { margin: 0px 0 1.4em 22px; padding: 0; line-height: 140%; }
      li { margin: 0 0 .5em 0; padding: 0; }
      /* HEADINGS
      ================================================ */
      h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 { font-family: "Montserrat"; line-height: 120%; margin: 0; margin-bottom: 10px; font-weight: 600;     letter-spacing: -0.4px; }
      h1, .h1 { font-size: 2.3em;   }
      h2, .h2 { font-size: 1.8em; position: relative;  line-height: 1.2; }
      h3, .h3 { font-size: 1.5em; margin-bottom: 10px; }
      h4, .h4 { font-size: 1.3em; margin-bottom: 10px; }
      h5, .h5 { font-size: 1em; }
      h6, .h6 { font-size: 0.8em;}

      .fsize20 { font-size: 20px; line-height: 1.2; }
      .fsize25 { font-size: 25px; line-height: 1.2; }
      .fsize30 { font-size: 30px; line-height: 1.2; } 
      .fsize30 { font-size: 35px; line-height: 1.2; } 
      .fsize40 { font-size: 40px; line-height: 1.2; }
      .fsize60 { font-size: 60px; line-height: 1.2; } 
      
      .bold { font-weight: 600; }
      .textnormal { font-weight: 400 !important; }
      .bordertitle { display: inline-block; border-bottom: 1px solid var(--corporativo1); line-height: 1.4; margin-bottom: 10px; }

      h2 a, .h2 a { color: inherit; }

      /*=========== FORMS =========== */
      /* form input */


      input, textarea, select, input[type=search], button {    margin: 0;   box-sizing: border-box; font-family: 'Montserrat'; }
      input[type=text], input[type=email], input[type=password], input[type=date], textarea, select, input[type=search], input[type=tel] { padding: 10px 10px; font-size: 16px;     line-height: 16px; font-weight: 400; font-family: 'Montserrat'; width: 100%; box-sizing: border-box; margin-bottom: 0px; border-radius: 5px; color: var(--corporativonegro); font-weight: 400; border: 2px solid var(--corporativonegro); background: #fbfeff; }
      input[type=text], input[type=email], input[type=search], input[type=tel], input[type=date] { width: 100%; box-sizing: border-box; }

      input[type=date], select {  }
      
      @supports (-webkit-overflow-scrolling: touch) {
        input[type=date], select { padding: 12.5px;  }
        input, textarea, select, input[type=search], button { -webkit-appearance: none; }
        .input_half {   }
      }


      textarea { }
      select { padding: 9px; }  
      textarea:focus, input[type=password]:focus, input[type=text]:focus, input[type=search]:focus, input[type=tel]:focus, input[type=email]:focus { outline: none; } 
      input[type=reset], input[type=submit], button { cursor: pointer; -webkit-transition: all 0.3s ease; -o-transition: all 0.3s ease; transition: all 0.3s ease; -webkit-appearance: none; background: #000000; color: #fff; border: none; padding: 13px 15px !important; margin: 0 !important; cursor: pointer; border-radius: 3px; }
      input[type=reset]:hover, input[type=submit]:hover, button:hover, input[type=reset]:focus, input[type=submit]:focus, button:focus { background: var(--corporativonegro); }
      label { }
      .pointer { cursor: pointer; } 
      input:-webkit-autofill { -webkit-box-shadow: 0 0 0 30px white inset; } 
      input:-webkit-autofill { -webkit-text-fill-color: var(--corporativonegro)!important; }

      .input_full { width: 100%; font-size: 15px; margin-bottom: 10px }
      .input_full.nm { margin-bottom: 0 }
      .input_half { width: 50%; display: inline-flex; font-size: 15px }
      .input_quarter { width: 25%; display: inline-flex; font-size: 15px; margin-right: 5px; margin-left: 5px }
      .input_3quarter { width: 75%; display: inline-flex; font-size: 15px; margin-right: 5px; margin-left: 5px }
      .input_full > .input_half { width: calc(50% - 7px); vertical-align: top; }
      .input_full > .input_half:first-child { margin-right: 5px }
      .input_full > .input_half:last-child { margin-left: 5px }
      .input_full > .input_quarter:first-child { margin-left: 0 }
      .input_full > .input_quarter:last-child { margin-right: 0px }
      .input_full > .input_3quarter { width: calc(75% - 10px) }
      .input_full > .input_3quarter:first-child { margin-left: 0 }
      .input_full > .input_3quarter:last-child { margin-right: 0px }
      .acepto_lopd { font-size: 13px; margin: 0 15px; line-height: 16px !important }
      .acepto_lopd a { font-size: 13px; line-height: 16px !important }
      .input_full.radio { line-height: 35px; margin-bottom: 10px }
      .input_full.radio input { visibility: hidden; display: none }
      .input_full.radio * { vertical-align: middle; line-height: 35px }
      .input_full.radio i { font-size: 25px; margin: 0 10px }
      .input_for { cursor: pointer; display: inline-block; width: 30px; height: 30px; background: #FFF; border: 1px solid }
      input[type="radio"]:checked+label, input[type="checkbox"]:checked+label { }
      #lopd { zoom: 1.5 }
      .input_full .input_estrecho { background: #D9D9D9; padding: 2px 5px; border: 1.5px solid var(--corporativogris) }
      .input_full .input_blanco { background: #FFF; text-align: center; padding: 2px 5px; border: 1px solid transparent }
      .input_full .input_blanco:focus { border: 1px solid #ccc }
      .label_radio_check { display: inline-block; width: 22px; height: 22px; margin-top: 5px; border: 1px solid var(--corporativogris) }
      .radio_check_label { display: none }
      .radio_check_label:checked+label { text-align: center; line-height: 20px }
      .radio_check_label:checked+label:before { content: 'âœ”' }

      ::-webkit-input-placeholder { /* WebKit, Blink, Edge */
      color: var(--corporativogris); }
      :-moz-placeholder { /* Mozilla Firefox 4 to 18 */
      color: var(--corporativogris); opacity: 1; }
      ::-moz-placeholder { /* Mozilla Firefox 19+ */
      color: var(--corporativogris); opacity: 1; }
      :-ms-input-placeholder { /* Internet Explorer 10-11 */
      color: var(--corporativogris); }

       /*=========== Estructura =========== */ 

      .container { width: 96%; max-width: 1440px; margin: 0 auto; position: relative; } 
      .container.max { max-width: 100%; width: 1640px; }
      .container.full { max-width: 100%; width:100%; }  
      .container:after { content: "\0020"; display: block; height: 0; clear: both; visibility: hidden; }

      section { overflow: initial; } 
      .bg_image { background-clip: border-box; background-color: var(--corporativonegro); background-origin: padding-box; background-position: center; background-repeat: no-repeat; background-size: cover; position: relative; }
      .bg_image.overlay:before { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: var(--corporativonegro); opacity: 0.5;  }
      .bg_image.parallax {  
          background-attachment: fixed;
          background-size: cover;
          background-position: center center;
          transform: translateZ(0);
          will-change: transform;
       } 
      
      @supports (-webkit-overflow-scrolling: touch) {
        .bg_image.parallax {  
                background-attachment: initial; 
             }
      } 
      .bg_primary, .bg_corp1 { background: var(--corporativo1); } 
      .bg_secondary, .bg_corp2 { background: var(--corporativo2); } 
      .bg_corp3 { background: var(--corporativo3); } 
      .bg_corp4 { background: var(--corporativo4); } 
      .bg_black, div.bg_black { background: var(--corporativonegro);  }
      .bg_green { background:#39b000; }
      .bg_white { background: #fff; }
      .bg_lime { background: #ecefba; }
      .bg_blue {    background: #0073b0; }
      .bg_gray { background: #9da0a7; }
      .bg_lgray { background: #f4f6f8; }
      .bg_orange { background: #e49500; }
      .bg_lightblue { background: #0093A0; }
      .bg_yellow { background: #d8bb45; }
      .bg_cream { background:#e5ddd5; }
      .sec_pagina {  }
      .sec_pagina article { font-size: 0;  }
      .sec_pagina article > div{ font-size: initial;  }
      .pt10 { padding-top: 10px; }
      .pb10 { padding-bottom: 10px; }
      .pt20 { padding-top: 20px; }
      .pb20 { padding-bottom: 20px; }
      .pt30 { padding-top: 30px; }
      .pb30 { padding-bottom: 30px; }
      .pt40 { padding-top: 40px; }
      .pb40 { padding-bottom: 40px; }
      .pb80 { padding-bottom: 80px; }
      .pb100 { padding-bottom: 100px; }
      .pt100 { padding-top: 100px; }
      .pt200 { padding-top: 200px; }
      .pt45vh { padding-top: 45vh; }  
      .pt25vh { padding-top: 25vh; }  
      .pt12vh { padding-top: 12vh; }  
      .pt8vh { padding-top: 8vh; } 
      .pb12vh { padding-bottom: 12vh; }
      .pb25vh { padding-bottom: 25vh; }  
      .minheight75vh { min-height:75vh;     box-sizing: border-box; } 
      .minheight100vh { min-height:100vh;      box-sizing: border-box; }

      .p10 { padding: 10px; } 
      .p20 { padding: 20px; } 
      .p30 { padding: 30px; }  

      /*=========== GRID =========== */
      .col{position:relative;margin-bottom:20px;float:left;box-sizing:border-box;padding:10px}.col.one{width:6.25%}.col.two{width:12.5%}.col.three{width:18.75%}.col.onefive{width:20%}.col.four{width:25%}.col.five{width:31.25%}.col.six{width:37.5%}.col.seven{width:43.75%}.col.eight{width:50%}.col.nine{width:56.25%}.col.ten{width:62.5%}.col.eleven{width:68.75%}.col.twelve{width:75%}.col.thirteen{width:81.25%}.col.fourteen{width:87.5%}.col.fiveteen{width:93.75%}.col.sixteen{width:100%}.col.third{width:33.333334%}.col.twothird{width:66.666667%}.col.onesix{width:16.666667%}.np{padding:0}.npt{padding-top:0}.npb{padding-bottom:0}.npl{padding-left:0}.npr{padding-right:0}.nm{margin:0}.nmt{margin-top:0}.nmb{margin-bottom:0}.nml{margin-left:0}.nmr{margin-right:0}.col.npl{padding-left:0;padding-right:20px}.col.npr{padding-left:20px;padding-right:0px}.col.nplr{padding-left:0;padding-right:0px}.col.nptb{padding-top:0;padding-bottom:0px}


      /*=========== EMBEBIDOS =========== */
      .google-maps { position: relative; overflow: hidden; height: 400px; }
      .google-maps iframe { position: absolute; top: 0; left: 0; width: 100% !important; height: 100% !important; }

      .embed-container { position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden; }
      .embed-container iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

      #map { height: 33vh; min-height: 400px; position: relative; }
      #map  iframe { position: absolute; top: 0; left: 0; width: 100% !important; height: 100% !important; }

      /*=========== BOTONES =========== */

      input.btn { border: none; color: #fff !important; font-weight: normal;  }
      .btn {  font-family: "Montserrat";  font-weight: normal; background: #000000; color: #fff !important; padding: 10px; min-width: 40px; border-radius: 5px; text-align: center; display: inline-block; margin: 5px 0px; margin-right: 5px; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; font-size: 16px; line-height: 1; -webkit-transition: all 0.2s linear; -o-transition: all 0.2s linear; transition: all 0.2s linear }
      .btn.square { border-radius: 0px }
      .btn:hover { background: #222222; color: #fff; text-decoration: none }
      .uppercase { text-transform: uppercase }
      .btn.wfull { width: 100%; margin: 5px 0px }
      .btn.bold { font-weight: bold }
      .btn.min300 { min-width: 300px }
      .btn.min200 { min-width: 200px }
      .btn.right { float: right; margin-left: 5px; margin-right: 0; max-width: 100% }
      .btn.center { clear: both; float: none; margin: 5px auto; display: block; max-width: 250px }
      .btn.h60 { padding: 18px }
      .btn.h80 { padding: 28px }
      .btn.nmr { margin-right: 0 !important }
      .btn.border { background: none !important; border: 2px solid #000; color: #000 !important; padding: 8px 25px }
      .btn.border:hover { background: #000 !important; color: #fff !important }
      .btn.headercall { font-size: 15px; line-height: 18px; padding: 10px 15px; vertical-align: middle; margin: 0 5px; }
      .btn.big { font-size: 22px; line-height: 36px; padding: 10px 20px }
      .btn.medium { font-size: 14px; line-height: 20px; padding: 5px 15px }
      .btn.nomargin { margin: 0 }
      .btn.bigger { }
      .btn.small { padding: 5px; margin: 0; font-size: 14px; line-height: 18px }
      .btn.gray { background: #7F7F7F; color: #FFF !important }
      .btn.gray:hover { background: #222 }
      .btn.border.gray { border-color: #7F7F7F; color: #7F7F7F; color: #7F7F7F !important }
      .btn.border.gray:hover { background: #7F7F7F !important; color: #FFF !important }
      .btn.white { background: #FFF; color: #000 !important }
      .btn.white.colorprimary { color: var(--corporativo1) !important }
      .btn.white.colorsecondary { color: var(--corporativo2) !important }
      .btn.white:hover { background: #ECEEF5 }
      .btn.border.white { border-color: #FFF; color: #FFF; color: #FFF !important }
      .btn.border.white:hover { background: #FFF !important; color: #000000 !important }
      .btn.blue { background: #0073b0; color: #fff !important }
      .btn.blue:hover { background: #0b90d6 }
      .btn.border.blue { border-color: #0073b0; color: #0073b0 !important }
      .btn.border.blue:hover { background: #0073b0 !important; color: #fff !important }
      .btn.aqua { background: #00b08b; color: #fff !important }
      .btn.aqua:hover { background: #02bc94 }
      .btn.border.aqua { border-color: #00b08b; color: #00b08b !important }
      .btn.border.aqua:hover { background: #00b08b !important; color: #fff !important }
      .btn.green { background: #39b000; color: #fff !important }
      .btn.green:hover { background: #51da10 }
      .btn.border.green { border-color: #39b000; color: #39b000 !important }
      .btn.border.green:hover { background: #39b000 !important; color: #fff !important }
      .btn.yellow { background: #FAC205; color: #fff !important }
      .btn.yellow:hover { background: #ffd030 }
      .btn.border.yellow { border-color: #FAC205; color: #FAC205 !important }
      .btn.border.yellow:hover { background: #FAC205 !important; color: #fff !important }
      .btn.lightgreen { background: #ecefba; color: #000000 !important }
      .btn.lightgreen:hover { background: #f8ff86 }
      .btn.border.lightgreen { border-color: #ecefba; color: #ecefba !important }
      .btn.border.lightgreen:hover { background: #ecefba !important; color: #000000 !important }
      .btn.lightgray { background: #EEE; color: #000 !important }
      .btn.lightgray:hover { background: #ccc; color: #000 }
      .btn.border.lightgray { border-color: #EEE; color: #000 !important }
      .btn.border.lightgray:hover { background: #EEE !important; color: #444 !important }
      .btn.red { background: #cb1f1b; color: #fff !important }
      .btn.red:hover { background: #f9241f }
      .btn.border.red { border-color: #cb1f1b; color: #cb1f1b !important }
      .btn.border.red:hover { background: #cb1f1b !important; color: #fff !important }


      .btn.primary { background: var(--corporativo1); color: #fff !important }
      .btn.primary:hover { background: var(--corporativo1alt) }
      .btn.border.primary { border-color: var(--corporativo1); color: var(--corporativo1) !important }
      .btn.border.primary:hover { background: var(--corporativo1) !important; color: #fff !important }


      .btn.secondary { background: var(--corporativo2); color: #fff !important }
      .btn.secondary:hover { background: var(--corporativo2alt) }
      .btn.border.secondary { border-color: var(--corporativo2); color: var(--corporativo2) !important }
      .btn.border.secondary:hover { background: var(--corporativo2) !important; color: #fff !important }


      .btn.corp3 { background: var(--corporativo3); color: #fff !important }
      .btn.corp3:hover { background: var(--corporativo3alt) }
      .btn.border.corp3 { border-color: var(--corporativo3); color: var(--corporativo3) !important }
      .btn.border.corp3:hover { background: var(--corporativo3) !important; color: #fff !important }

      .btn.corp4 { background: var(--corporativo4); color: #fff !important }
      .btn.corp4:hover { background: var(--corporativo4alt) }
      .btn.border.corp4 { border-color: var(--corporativo4); color: var(--corporativo4) !important }
      .btn.border.corp4:hover { background: var(--corporativo4) !important; color: #fff !important }

      .btn.transparent { background: transparent; color: #000 !important }
      .btn.transparent:hover { background: transparent; background: #f7f7f7 }
      .btn.border.transparent { border-color: transparent; color: #000 !important }
      .btn.border.transparent:hover { background: #f7f7f7 !important; color: var(--corporativo1) !important }
      .btn.disabled { opacity: 0.10 }
      .btn.cursornone { cursor: auto !important }
      .btn.round { border-radius: 30px }
      .btn:focus { box-shadow: 0px 0px 4px #595153 }
      .btn.circle { border-radius: 50%; width: 45px; height: 45px; line-height: 1.8; font-size: 25px; padding: 0 }
      .btn.round.small { padding-left: 10px; padding-right: 10px }
      a.btn.small.border { padding: 3px 10px }
      .btn.bottomborder { border-bottom: 5px solid #00000052 }
      .btn.bottomborder:hover, .btn.bottomborder:focus { border-bottom: 3px solid #00000030; margin-top: 7px } 
      .btn.social { padding: 12px }
      .btn.twitter { background: #00aced }
      .btn.instagram { background: -webkit-radial-gradient(32% 106%, circle cover, rgb(255, 225, 125) 0%, rgb(255, 205, 105) 10%, rgb(250, 145, 55) 28%, rgb(235, 65, 65) 42%, transparent 82%), -webkit-linear-gradient(-45deg, rgb(35, 75, 215) 12%, rgb(195, 60, 190) 58%); background: -moz-radial-gradient(32% 106%, circle cover, rgb(255, 225, 125) 0%, rgb(255, 205, 105) 10%, rgb(250, 145, 55) 28%, rgb(235, 65, 65) 42%, transparent 82%), -moz-linear-gradient(-45deg, rgb(35, 75, 215) 12%, rgb(195, 60, 190) 58%); background: -ms-radial-gradient(32% 106%, circle cover, rgb(255, 225, 125) 0%, rgb(255, 205, 105) 10%, rgb(250, 145, 55) 28%, rgb(235, 65, 65) 42%, transparent 82%), -ms-linear-gradient(-45deg, rgb(35, 75, 215) 12%, rgb(195, 60, 190) 58%); background: -o-radial-gradient(32% 106%, circle cover, rgb(255, 225, 125) 0%, rgb(255, 205, 105) 10%, rgb(250, 145, 55) 28%, rgb(235, 65, 65) 42%, transparent 82%), -o-linear-gradient(-45deg, rgb(35, 75, 215) 12%, rgb(195, 60, 190) 58%); background: radial-gradient(circle farthest-corner at 32% 106%, rgb(255, 225, 125) 0%, rgb(255, 205, 105) 10%, rgb(250, 145, 55) 28%, rgb(235, 65, 65) 42%, transparent 82%), linear-gradient(135deg, rgb(35, 75, 215) 12%, rgb(195, 60, 190) 58%) }
      .btn.facebook { background: #3b5998 }
      .btn.whatsapp { background: #25d366 }
      .btn.youtube { background: #e52d27 }
      .btn.facebook:hover, .btn.facebook:focus { background: #4F6DAC }
      .btn.whatsapp:hover, .btn.whatsapp:focus { background: #128c7e }
      .btn.youtube:hover, .btn.youtube:focus { background: #f1534e }
      .btn.instagram:hover, .btn.instagram:focus { background: #000 }
      .btn.margin5 { margin-left: 5px !important; margin-bottom: 5px !important } 

      /*HELPERS*/
.small_size { font-size: 80% }
.clear { clear: both }
.left { float: left }
.right { float: right }
.textleft { text-align: left }
.textright { text-align: right }
.textcenter { text-align: center }
.dblock { display: block }
.inline-block { display: inline-block }
.nomargin { margin: 0 !important }
.nopadding { padding: 0 !important }
.margin0auto { margin: 0 auto;  }
.overflowvisible { overflow: visible }
.lh_100p { line-height: 100% }
.lh_120p { line-height: 120% }
.lh_120p { line-height: 140% }
.lh_10px { line-height: 10px }
.lh_20px { line-height: 20px }
.lh_30px { line-height: 30px }
.lh_40px { line-height: 40px }
.lh_50px { line-height: 50px }
.lh_60px { line-height: 60px }
.lh_70px { line-height: 70px }
.lh_80px { line-height: 80px }
.lh_90px { line-height: 90px }
.lh_100px { line-height: 100px }
.lh_120px { line-height: 120px }
.pb5 { padding-bottom: 5px }
.pb10 { padding-bottom: 10px }
.pb15 { padding-bottom: 15px }
.pb20 { padding-bottom: 20px }
.pb25 { padding-bottom: 25px }
.pb30 { padding-bottom: 30px }
.pb35 { padding-bottom: 35px }
.pb40 { padding-bottom: 40px }
.pb50 { padding-bottom: 50px }
.pb60 { padding-bottom: 60px }
.pb70 { padding-bottom: 70px }
.pb80 { padding-bottom: 80px }
.pb90 { padding-bottom: 90px }
.pb100 { padding-bottom: 100px }
.pt5 { padding-top: 5px }
.pt10 { padding-top: 10px }
.pt15 { padding-top: 15px }
.pt20 { padding-top: 20px }
.pt25 { padding-top: 25px }
.pt30 { padding-top: 30px }
.pt35 { padding-top: 35px }
.pt40 { padding-top: 40px }
.pt50 { padding-top: 50px }
.pt60 { padding-top: 60px }
.pt70 { padding-top: 70px }
.pt80 { padding-top: 80px }
.pt90 { padding-top: 90px }
.pt100 { padding-top: 100px }
.pt25vh { padding-top: 25vh }
.pb25vh { padding-bottom: 25vh }
.mt3 { margin-top: 3px !important }
.mt5 { margin-top: 5px !important }
.mt10 { margin-top: 10px !important }
.mt15 { margin-top: 15px !important }
.mt20 { margin-top: 20px !important }
.mt25 { margin-top: 25px !important }
.mt30 { margin-top: 30px !important }
.mt35 { margin-top: 35px !important }
.mt40 { margin-top: 40px !important }
.mt80 { margin-top: 80px !important }
.mb5 { margin-bottom: 5px !important }
.mb10 { margin-bottom: 10px !important }
.mb15 { margin-bottom: 15px !important }
.mb20 { margin-bottom: 20px !important }
.mb25 { margin-bottom: 25px !important }
.mb30 { margin-bottom: 30px !important }
.mb35 { margin-bottom: 35px !important }
.mb40 { margin-bottom: 40px !important }
.mr5 { margin-right: 5px !important }
.mr10 { margin-right: 10px !important }
.mr20 { margin-right: 20px !important }
.ml10 { margin-left: 10px !important }
.ml20 { margin-left: 20px !important }
.padding_portada { padding: 30px }
.forzar_100p { width: 100% }
.margin10negativo { margin: 0 -10px }
.margin14 { margin: 14px !important }
.displayinline { display: inline }
.displayblock { display: block }
.pr20 { padding-right: 20px }
.pl20 { padding-left: 20px }
.clearfix:after, .widget li:after, #body:after, #footer:after, footer:after, .pagenav:after, #main-nav:after, .menu:after, .gallery:after, #content:after { visibility: hidden; display: block; font-size: 0; content: " "; clear: both; height: 0 }
.clearfix, .widget li, #body, #footer, footer, .pagenav, #main-nav, .menu, .gallery, #content { display: inline-block }
.clearfix, .widget li, #body, #footer, footer, .pagenav, #main-nav, .menu, .gallery, #content { display: block; zoom: 1 }
.clear { clear: both; display: block; overflow: hidden; visibility: hidden; width: 0; height: 0 }
.pchide { display: none }
p:empty { display: none }
.textlight { font-weight: 300 }
.textnormal { font-weight: 400 }
.textbold { font-weight: bold }
.colorwhite { color: #fff }
.colorprimary { color: var(--corporativo1) }
.colorsecondary { color: var(--corporativo2) }
.colorerror { color: var(--corporativo1) }
.colorsuccess { color: #39b000 }
.offsetminus60 { margin-top: -60px }
@media screen and (max-width:1600px) {
      .container { max-width: 1280px }
}
@media screen and (max-width:1330px) {
      .container { max-width: 1080px }
      .col.full1330 { width: 100% }
      .col.hide1330 { display: none }
      .col.ten1330 { width: 62.5% }
      .col.six1330 { width: 37.5% }
}
@media screen and (max-width:1200px) {
      .container { max-width: 960px }
      .col.third.t_two { width: 50% }
      .col.onesix { width: 33.33334% }
}
@media screen and (max-width:1030px) {
      header { }
      header .col { width: auto !important; padding: 0 }
      header .col.tabletfull { width: 100% !important } 
      .tablettextleft { text-align: left }
      .tablettextright { text-align: right }
      .tablettextcenter { text-align: center }
      .container { max-width: calc(100% - 15px) }
      .container.max { max-width: 100% }
      .col.one { width: 33% }
      .col.two, .col.onesix { width: 33.33334% } 
      .col.three, .col.four, .col.five, .col.six { width: 50% }
      .col.eight, .col.nine, .col.ten, .col.eleven, .col.twelve, .col.thirteen, .col.fourteen, .col.fiveteen, .col.sixteen, .col.tabletfull, .col.third.t_two { width: 100% } 
      .col.third, .col.twothird, .col.tablethalf { width: 50% }
      .col.tabletthird { width: 33.33334% }
      
      .tablethide { display: none }
      .pchide { display: block }
      .npl, .npr { padding: 10px !important }
      .col > .npl, .col >  .npr { padding: 0px !important }
      .pttablet0 { padding-top: 0px }
      .pttablet30 { padding-top: 30px }
      .pbtablet30 { padding-bottom: 30px }
      .pbtablet10 { padding-bottom: 10px }
      .pttablet60 { padding-top: 60px }
      .pbtablet60 { padding-bottom: 60px }
      .next, .prev { display: none }
      .btn.min300 { width: 300px; max-width: 100%; min-width: initial }
      .t_center { text-align: center; display: block; margin: 0 auto; max-width: 250px }
      .t_textleft { text-align: left }
      .tablet_padding_60 { padding: 60px 0 }
      .tablet_padding_30 { padding: 30px 0 }
      .tablet_padding_10 { padding: 10px }
      .tabletnp { padding: 0 !important }
      .tabletnm { margin: 0 !important }
      .small_size { font-size: 95% }
      .tablet_10padding { padding: 10px }
      .offsetminus60 { margin-top: 0px }

      .tabletmargin0auto {     margin: 0 auto;  }
}
@media screen and (max-width:760px) {
      .col.onesix { width: 50% }
      .col.third, .col.twothird, .col.t768full { width: 100% }
      .col.s768half, .col.third.s768half { width: 50% }
      .col.nmb { margin-bottom: 0 } 
      h1, .h1 { font-size: 1.7em !important }
      h2, .h2 { font-size: 1.4em !important }
      h3, .h3 { font-size: 1.3em !important }
      h3, .h3 { font-size: 1.2em !important }
      .fsize60 { font-size: 30px !important }
      .fsize30 { font-size: 22px !important }

      .input_full > .input_half { width: 100%;  }
      .input_full > .input_half:first-child { margin-right: 0px;  margin-bottom: 10px; }
      .input_full > .input_half:last-child { margin-left: 0px; }
}
@media screen and (max-width:480px) {
      html { -webkit-text-size-adjust: none }
      .col.one, .col.two, .col.three, .col.four, .col.five, .col.six, .col.seven, .col.eight, .col.nine, .col.ten, .col.eleven, .col.twelve, .col.thirteen, .col.fourteen, .col.fiveteen, .col.sixteen, .col.third, .col.twothird { width: 100% }
      .col.s768half, .col.third.s768half { width: 100% }
}
@media screen and (max-width:410px) { }
@media screen and (max-width:340px) { h1, .h1 { font-size: 1.5em } }

.lopd_cont { position: fixed; text-align: center; width: 100%; left: 0; bottom: 0; padding: 30px; background: var(--corporativo1); box-sizing: border-box; z-index: 1006; color: #fff; }

/************************************/
/*AQUI CSS PERSONALIZADO*/ 
/************************************/ 
      /* CABECERA */
      header {  width: 100%; z-index: 1005; background: #FFFFFF;padding-top: 10px; padding-bottom: 10px;   border-bottom: 1px solid transparent; } 
      header.jumbo { padding-top: 30px; padding-bottom: 30px;  }
       header.fixed { position: fixed;  top: 0;   }
      header.transparent_header { background: RGBA(255,255,255,0); }
      header.opacity_header { background: RGBA(255,255,255,0.9); }
      header.transparent_header.scroll, header.opacity_header.scroll {  background: RGBA(255,255,255,1); border-bottom: 1px solid #eee; }
      header.jumbo.scroll {padding-top:0px; padding-bottom: 0px; }
      header, header *, .cover_open, nav:after { -webkit-transition: all linear 0.15s; -o-transition: all linear 0.15s; transition: all linear 0.15s; }
      header .col { margin: 0; padding: 5px 10px; }
      
      .trigger_menu { display: none; border: 1px solid #f7f7f7; position: fixed; top: 6px; right: 4%; color: var(--corporativo1); background: #fff; width: 45px; height: 45px; text-align: center; font-size: 20px; line-height: 45px; border-radius: 50%; z-index: 1000; }
      .trigger_menu.opened { border: 1px solid var(--corporativo1); transform: rotate(90deg); }
      header #logo { line-height: 0; display: block; font-weight: bold; max-width: 200px; }
      header.jumbo #logo {  max-width: 300px; margin: 0 auto;    }
      header.scroll #logo { font-size: 30px; max-width: 180px; }
      nav {   }
      header.scroll nav { margin-top: 0px; } 
      #logo:hover, #logo:focus { opacity: 0.9; text-decoration: none; }
      #logo img { }
      #logo.logo_panel { max-width: 65px; }
      .fade-in, .fade-in *,.fade-in2, .fade-in2 * { -webkit-transition: all ease 0.35s; -o-transition: all ease 0.35s; transition: all ease 0.35s; }
      .fade-in { transform: translateY(12px); opacity: 0; }
      .fade-in.show { transform: translateY(0px); opacity: 1; }
      .fade-in2 { transform: translateX(32px); opacity: 0; }
      .fade-in2.show { transform: translateX(0px); opacity: 1; }




      /* AÑADIDOS */ 
      .item_service, .item_service * { -webkit-transition: all linear 0.25s; -o-transition: all linear 0.25s; transition: all linear 0.25s; }
      .item_service { background-repeat: no-repeat; background-size: cover; background-position: center; max-height: 400px; min-height: 200px; height: 30vh; position: relative; display: block; }
      .item_service.full { max-height: 300px; min-height: 200px; height: 30vh; }
      .item_service:focus, .item_service:hover { -webkit-box-shadow: 1px 4px 20px -2px rgba(0, 0, 0, 0.2); box-shadow: 1px 4px 20px -2px rgba(0, 0, 0, 0.2); transform: translateY(-8px); }
      .item_service span {   max-width: 85%; padding: 10px; width: 85%; background: #fff; font-size: 28px; box-sizing: border-box; margin-top: 20px; }
      .item_service .subtitle_item_service { font-weight: 400; max-width: 90%; color: #fff; padding: 6px 20px; width: auto; display: inline-block; background: #000; font-size: 16px; box-sizing: border-box; margin-top: 5px; }
      .item_service:focus span, .item_service:hover span { top: 40%; background: var(--corporativo1); color: #fff; }
      .item_service:focus small, .item_service:hover small { } 

      .modal_overlayer, .modal_overlayer * { -webkit-transition: all 0.15s linear; -o-transition: all 0.15s linear; transition: all 0.15s linear; }
      .modal_overlayer { position: fixed; top: 0; left: 0; z-index: 10000; width: 100%; min-height: 100vh; height: 100vh; max-height: 100vh; visibility: hidden; opacity: 0; overflow-y: scroll; background-repeat: no-repeat; background-size: cover; background-position: center; } 
      .modal_overlayer:before { content: ""; position: fixed; top: 0; left: 0; width: 100%; height: 100%; background:  #FFF; opacity: 1;  }
      .modal_overlayer.image:before { content: ""; position: fixed; top: 0; left: 0; width: 100%; height: 100%; background:  var(--corporativo1); opacity: 0.75;  }
      .modal_overlayer.open { visibility: visible; opacity: 1; }
      .modal_cont {   margin: 80px auto; }
      .close_modal { padding: 20px; box-sizing: border-box; line-height: 40px; font-size: 40px;   position: absolute; right: 0; top: 0; }
      .close_modal:hover, .close_modal:focus { opacity: 0.5; }  

      div#notificacion_flotante { position: fixed; bottom: 00px; z-index: 9999; left: 0; width: 100%; }
      .alerta { background: #444; color: #fff; position: relative; padding: 20px; text-align: center; font-size: 22px;     box-sizing: border-box;     width: 100%;    font-weight: bold; }
      .alerta-ok { background: #009713; }
      .alerta-error { background: #970000; }
      .alerta i { position: absolute; left: 30px; font-size: 90px; width: 115px; bottom: 5px; background: #444; border-radius: 50%; height: 115px; line-height: 115px; }
      .alerta-ok i { background: #009713; }
      .alerta-error i { background: #970000; }


      /*CARDS*/
      .card { border-radius: 5px; background: #fff; padding: 30px; -webkit-box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.12); -moz-box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.12); box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.12); overflow: auto; }
      .card.border { border-left: 5px solid var(--corporativo2); }
      .card.border.state_0 { border-left-color: #fa7605; }
      .card.border.state_1 { border-left-color: #00b08b; }
      .card.border.state_2 { border-left-color: #0073b0; }
      .card.border.state_3 { border-left-color: #39b000; }
      .label { background: var(--corporativo2); font-weight: bold; color: #fff; padding: 5px 15px; font-size: 14px; vertical-align: middle; border-radius: 20px; }
      .label.uppercase { text-transform: uppercase; }
      h3 .label { font-size: 18px; vertical-align: bottom; line-height: 22px; }
      .label.state_0 { background: #fa7605; }
      .label.state_1 { background: #00b08b; }
      .label.state_2 { background: #0073b0; }
      .label.state_3 { background: #39b000; }
      .float_number { font-size: 48px; text-align: center; line-height: 35px; height: 70px; width: 70px; background: #0073b0; color: #fff; padding: 20px; border-radius: 50%; vertical-align: middle; position: absolute; left: 0; top: 0; box-sizing: border-box; }



      .image_page img { width: 100%; }
      .image_page.max25vh { max-height: 25vh; } 

      .title_top_offset { margin-bottom: 45px; margin-top: -85px; color: #fff; }
      .title_deco_sep { width: 40px; height: 4px; background: #000; }
      .title_deco_sep.primary { background: var(--corporativo1); }


      .toggle, .toggle * { -webkit-transition: all 0.4s linear; -o-transition: all 0.4s linear; transition: all 0.4s linear; }
      .toggle { background: var(--corporativo1); cursor: pointer; color: #fff; display: block; padding: 5px 10px; border-radius: 5px; overflow: auto; margin-bottom: 10px; }
      .toggle:hover { background: var(--corporativo1alt); }
      .toggle .toggle-title { position: relative; display: block; margin-bottom: 0px; }
      .toggle .toggle-title i { -webkit-transform: rotate(90deg);     /* Chrome and other webkit browsers */ -moz-transform: rotate(90deg);        /* FF */ -o-transform: rotate(90deg);          /* Opera */ -ms-transform: rotate(90deg);         /* IE9 */ transform: rotate(90deg);             /* W3C compliant browsers */ }
      .toggle.show .toggle-title i { -webkit-transform: rotate(270deg);     /* Chrome and other webkit browsers */ -moz-transform: rotate(270deg);        /* FF */ -o-transform: rotate(270deg);          /* Opera */ -ms-transform: rotate(270deg);         /* IE9 */ transform: rotate(270deg);             /* W3C compliant browsers */ }
      .toggle-inner { background: #fff; color: initial; padding: 15px 15px 0 15px; margin-top: 10px; overflow: auto; border-radius: 3px; margin-bottom: 5px; }
      
      
      .card-post h4 a:hover, .card-post h4 a:focus { text-decoration: none; color: var(--corporativo1); }
      .image_round { border-radius: 5px; }
      
      .card-product, .card-product * { -webkit-transition: all 0.15s linear; -o-transition: all 0.15s linear; transition: all 0.15s linear; }
      .card-product { cursor: pointer; border-radius: 5px; background: #fff; -webkit-box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.0); -moz-box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.0); box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.0); overflow: auto; }
      .card-product:hover { -webkit-box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.12); -moz-box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.12); box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.12); }
      .price_product_list { background: #ffffff; border-radius: 16px; display: block; max-width: 76px; text-align: center; padding: 3px 12px; margin: 0 auto; -webkit-transform: translateY(-15px); transform: translateY(-15px); font-weight: bold; color: var(--corporativo2); }
      .price_product { font-size: 20px; font-weight: bold; padding: 6px 20px; color: #fff; background: var(--corporativo1); border-radius: 25px; }
      .list_dotted { padding: 10px; border-bottom: 2px dotted var(--corporativo2); }
      .card-product a { display: block; line-height: 1; overflow: hidden; }
      .card-product h4 a:hover, .card-product h4 a:focus { text-decoration: none; color: var(--corporativo1); }

      
      .show_float_right, .show_float_right * { -webkit-transition: all 0.2s linear; -o-transition: all 0.2s linear; transition: all 0.2s linear;   }
      .show_float_right {     position: fixed;       text-align: right;  top: 20vh;    right: -50px;    max-width: 600px; width: 40%; }
      .scroll .show_float_right {   right: -650px;  opacity: 0;   }

      .show_float_left, .show_float_left * { -webkit-transition: all 0.2s linear; -o-transition: all 0.2s linear; transition: all 0.2s linear;   }
      .show_float_left {     position: fixed;    top: 24vh;    left: -50px;    max-width: 600px; width: 40%;   }
      .scroll .show_float_left {
             left: -650px;  opacity: 0;
      }

      .title_step { margin-left: 60px; margin-bottom: 30px;  }



      .shake.show { animation: shake 0.82s cubic-bezier(.36, .07, .19, .97) both; transform: translate3d(0, 0, 0); backface-visibility: hidden; perspective: 1000px; }
      @keyframes shake {
            10%, 90% { transform: translate3d(-1px, 0, 0); }
            20%, 80% { transform: translate3d(2px, 0, 0); }
            30%, 50%, 70% { transform: translate3d(-4px, 0, 0); }
            40%, 60% { transform: translate3d(4px, 0, 0); }
      }


      .boton_top, .boton_top:hover, .boton_top:focus {  
            background: linear-gradient(270deg, var(--corporativo2), var(--corporativo2), var(--corporativo1), var(--corporativo2));
            background-size: 400% 400%;
            -webkit-animation: AnimationName 25s ease infinite;
            -moz-animation: AnimationName 25s ease infinite;
            -o-animation: AnimationName 25s ease infinite;
            animation: AnimationName 25s ease infinite;
      }

      .boton_top:hover, .boton_top:focus {
            text-decoration: none;
            opacity: 0.90;
      }
      @-webkit-keyframes AnimationName {
            0% { background-position: 0% 50% }
            50% { background-position: 100% 50% }
            100% { background-position: 0% 50% }
      }
      @-moz-keyframes AnimationName {
            0% { background-position: 0% 50% }
            50% { background-position: 100% 50% }
            100% { background-position: 0% 50% }
      }
      @-o-keyframes AnimationName {
            0% { background-position: 0% 50% }
            50% { background-position: 100% 50% }
            100% { background-position: 0% 50% }
      }
      @keyframes AnimationName {
            0% { background-position: 0% 50% }
            50% { background-position: 100% 50% }
            100% { background-position: 0% 50% }
      }
      /*fin Estilo de botones*/





      @media screen and (max-width:1600px) { }
      @media screen and (max-width:1330px) { }
      @media screen and (max-width:1200px) { }
      @media screen and (max-width:1030px) {
            header.transparent_header { }
            header.opacity_header { background: RGBA(255, 255, 255, 1); }
            nav { position: fixed; right: -260px; top: 0; background: #FFF; width: 240px; padding: 20px; height: 100%; padding-top: 80px; box-sizing: border-box; z-index: 999; }
            nav.panel_nav { background: #000; }
            nav:after { content: ''; position: fixed; background: RGBA(0, 0, 0, 0.8); left: 0; top: 0; height: 100vh; display: block; z-index: 998; width: calc(100%); opacity: 0; visibility: hidden; }
            nav.opened { right: 0px; margin: 0; }
            nav.opened:after { width: calc(100% - 240px); visibility: visible; opacity: 1; }
            .trigger_menu { display: block; }
            .trigger_menu.panel_trigger:focus { background: var(--corporativo1); }
            header #logo, header.scroll #logo { padding: 2px; }
            .icon_login { max-width: 60px; margin-bottom: 5px; }
            .btn.headercall { width: 100%; margin: 0; padding: 10px 5px; margin-bottom: 5px; }
            .btn.headercall_panel { width: 100%; text-align: center; margin: 0; margin-bottom: 10px; padding: 10px 5px; }
            .btn.headercall_panel.notification_btn { width: 45px; line-height: 45px; padding: 0; position: fixed; top: 8px; right: 60px; }
            .item_service.full { max-height: 600px; min-height: 400px; height: 60vh; } 
            .alerta { padding: 10px; font-size: 16px; }
            .alerta i { left: 2%; font-size: 50px; width: 60px; bottom: 5px; height: 60px; line-height: 60px; } 
            .title_top_offset { margin-bottom: 10px; margin-top: 0px; color: initial; }
            .show_float_left { max-width: 200px; top: 80vh; }
            .show_float_right { max-width: 200px; top: 84vh; }
            .title_step { margin-left: 00px; margin-top: 50px; margin-bottom: 20px; }

      }
      @media screen and (max-width:760px) {  } 
      @media screen and (max-width:480px) { 
            .show_float_left  { max-width: 200px; top: 62vh;  }
            .show_float_right { max-width: 200px; top: 64vh;  }
       }  
      @media screen and (max-width:410px) {  }
      @media screen and (max-width:340px) {  } 