/* GLOBAL STYLES
-------------------------------------------------- */
body {
  padding-bottom   : 20px;
  color            : #5a5a5a;
  background-color : #e2e2e2;
  font-size        : 12px;
}
.container {
  width : 980px !important;
}
a, a:visited {
  cursor : pointer;
  color  : #2d6ca2;
}
a.a-foot, a:visited.a-foot {
  color : #777;
}
a.btn:visited {
  color : #fff;
}
a.a-ic, a.a-ic:hover, a.a-ic:visited {
  text-decoration : none;
}
h2 {
  font-size : 28px;
}
h4 {
  margin-bottom : 3px;
}
hr {
  border-bottom : 1px dotted #ccc;
}
.content {
  background-color : #fff;
  box-shadow       : 0 0 5px #888;
  margin-bottom    : 10px;
  padding-bottom   : 10px;
}
.container h3 {
  margin-top : 10px;
  color      : #666;
}
h3.slide-title a, h3.slide-title a:visited {
  color          : #fff;
  font-size      : 24px;
  padding-bottom : 0;
}
.footer h4 {
  color       : #5A5A5A;
  font-weight : bold;
}
div.carousel-caption h5 {
  font-size : 14px;
  margin    : 10px 5px;
}
div.art-cont-m ul {
  padding-left : 30px;
}
.section-header {
  color         : #fff;
  margin-bottom : 8px;
  text-shadow   : 1px 1px 3px #555;
}
.section-nav {
  padding-top : 10px;
  text-align  : right;
  font-size   : 11px;
  color       : #efefef;
}
.section-nav a {
  color : #efefef;
}
.con-title {
  margin-bottom : 2px;
}
.enph {
  font-size    : 14px;
  font-stretch : expanded;
}
.image-hor {
  height : 150px;
  width  : 240px;
}
.image-hor-m {
  height : 140px;
  width  : 220px;
}
.image-ver {
  height : 227px;
  width  : 170px;
}
.image-ver-m {
  height : 133px;
  width  : 100px;
}
.ajax-loader {
  height     : 16px;
  width      : 16px;
  margin     : 0 10px;
  background : url(../image/ajax-loader.gif) no-repeat;
}
.steps-loader {
  height     : 16px;
  width      : 100%;
  background : url(../image/ajax-loader.gif) no-repeat 50% 50%;
  display    : none;
}
.ic-button, .ic-button-ver, .ic-button-big {
  float            : left;
  height           : 50px;
  width            : 200px;
  margin-top       : 10px;
  margin-right     : 10px;
  border           : 1px solid #dfdfdf;
  font-size        : 13px;
  padding          : 15px 1px 1px 50px;
  background-color : #f9f9f9;
  transition       : box-shadow 0.2s ease 0s;
}
.ic-button-ver, .ic-button-big {
  height              : 100px;
  width               : 90px;
  background-position : center 2px;
  padding-top         : 54px;
  padding-left        : 0;
  text-align          : center;
}
.ic-button-big {
  height : 120px;
  width  : 200px;
}
.ic-button:hover, .ic-button-ver:hover, .ic-button-big:hover {
  box-shadow : 0 0 4px #777;
}
.ic-word {
  background-image  : url(../image/icons/word.png);
  background-repeat : no-repeat;
}
.ic-powerpoint {
  background-image  : url(../image/icons/powerpoint.png);
  background-repeat : no-repeat;
}
.ic-pdf {
  background-image  : url(../image/icons/pdf.png);
  background-repeat : no-repeat;
}
.ic-upload {
  background-image    : url(../image/icons/upload.png);
  background-repeat   : no-repeat;
  background-position : 2px 3px;
}
/* HEADER CONTENT
-------------------------------------------------- */
.header {
  padding-top : 5px;
}
.main-header {
  background : white;
}
/* CUSTOMIZE THE NAVBAR
-------------------------------------------------- */
.navbar-wrapper {
  z-index           : 20;
  font-size         : 12px;
  background-image  : linear-gradient(to bottom, #fff 0%, #f8f8f8 100%);
  background-repeat : repeat-x;
}
.navbar-wrapper .navbar .container {
  width : auto;
}
.navbar-default {
  border     : 0;
  box-shadow : none;
}
.gsc-control-cse {
  background-color : transparent !important;
  border           : 0 !important;
  padding          : 0 !important;
}
.gsc-search-button {
  margin-left : 0 !important;
}
.gsc-search-button-v2 {
  box-sizing        : content-box !important;
  height            : 13px !important;
  margin-top        : 1px !important;
  padding           : 6px 15px !important;
  background-image  : linear-gradient(to bottom, #428bca 0%, #2d6ca2 100%) !important;
  background-repeat : repeat-x;
  border-color      : #2b669a !important;
  border-radius     : 3px !important;
}
.gsc-search-box {
  margin : 0 !important;
  width  : 270px !important;
}
.gsc-input-box {
  height : 30px !important;
}
.gsc-input {
  padding-right : 10px !important;
  font-size     : 13px !important;
}
.gsst_a {
  padding-top : 5px !important;
}
.gstl_50 {
  height : 26px;
}
/* SIDE MENU
-------------------------------------------------- */
.menu-left {
  padding-top : 60px;
}
.menu-left a {
  color           : #5a5a5a;
  text-decoration : none;
}
.menu-shead {
  margin-top     : 10px;
  margin-bottom  : 8px;
  padding-left   : 11px;
  color          : #428bca;
  font-weight    : bold;
  font-size      : 11px;
  text-transform : uppercase;
}
.menu-section {
  cursor             : pointer;
  margin             : 0;
  padding            : 10px;
  font-size          : 12px;
  background-color   : #e6e7e8;
  border-bottom      : 1px solid #fff;
  border-top         : 1px solid #dbd9d9;
  border-left        : 1px solid #dbd9d9;
  border-right       : 1px solid #dbd9d9;
  -webkit-transition : box-shadow .3s;
  -moz-transition    : box-shadow .3s;
  -o-transition      : box-shadow .3s;
  transition         : box-shadow .3s
}
.menu-section:hover {
  -webkit-box-shadow : inset 0 3px 5px 0 #999;
  -moz-box-shadow    : inset 0 3px 5px 0 #999;
  box-shadow         : inset 0 3px 5px 0 #999;
}
.menu-end {
  height                     : 10px;
  background                 : #e6e7e8;
  border-top                 : 1px solid #dbd9d9;
  border-bottom              : 1px solid #dbd9d9;
  border-bottom-right-radius : 10px;
  border-bottom-left-radius  : 10px;
}
/* TOOLS CONTENT
-------------------------------------------------- */
.tools {
  text-align : center;
  margin-top : 5px;
}
/* MARKETING CONTENT
-------------------------------------------------- */
.carousel-inner .item img {
  margin : auto;
}
.cont-center {
  background         : url(../image/bg_inicio.gif) repeat-x bottom;
  border-bottom      : 1px solid white;
  -webkit-box-shadow : inset 0 0 3px 0 #333;
  -moz-box-shadow    : inset 0 0 3px 0 #333;
  box-shadow         : inset 0 0 3px 0 #333;
}
.marketing {
  background : white;
}
.mk-cont-col {
  float         : left;
  margin-top    : 10px;
  margin-left   : 5px;
  width         : 95px;
  border        : 1px solid #fff;
  border-radius : 9px;
}
.mk-col-item {
  text-align         : center;
  cursor             : pointer;
  border-bottom      : 1px solid #fff;
  background         : url(../image/bg-bt.png);
  -webkit-box-shadow : inset 0 0 2px 0 #222;
  -moz-box-shadow    : inset 0 0 2px 0 #222;
  box-shadow         : inset 0 0 2px 0 #222;
  -webkit-transition : box-shadow .2s;
  -moz-transition    : box-shadow .2s;
  -o-transition      : box-shadow .2s;
  transition         : box-shadow .2s
}
.mk-col-item:hover {
  -webkit-box-shadow : inset 0 4px 10px 0 #222;
  -moz-box-shadow    : inset 0 4px 10px 0 #222;
  box-shadow         : inset 0 4px 10px 0 #222;
}
.mk-col-text {
  margin      : 0;
  color       : #fff;
  font-size   : 10px;
  font-weight : bold;
  padding     : 4px 0;
  text-shadow : 0 0 5px #555;
}
.mk-cont-left {
  float       : left;
  margin-left : 2px;
  width       : 710px;
}
.mk-cont-right {
  float       : left;
  margin-left : 10px;
  margin-top  : 8px;
}
.mk-item {
  margin-top : 8px;
}
.mk-b-item {
  margin-top : 8px;
}
.mk-img {
  width         : 100%;
  height        : 76px;
  border-radius : 5px;
}
.mk-img-b {
  height        : 288px;
  border        : 1px solid #fff;
  border-radius : 9px;
}
.mk-img-big {
  width         : 224px;
  border-radius : 5px;
}
.mk-img, .mk-img-big {
  -webkit-transition : box-shadow .2s;
  -moz-transition    : box-shadow .2s;
  -o-transition      : box-shadow .2s;
  transition         : box-shadow .2s
}
.mk-img:hover, .mk-img-big:hover {
  -webkit-box-shadow : 0 0 4px 0 #555;
  -moz-box-shadow    : 0 0 4px 0 #555;
  box-shadow         : 0 0 4px 0 #555;
}
.mk-list {
  margin-top : 12px;
}
.list-img, .listb-img {
  width              : 24.7%;
  -webkit-transition : box-shadow .2s;
  -moz-transition    : box-shadow .2s;
  -o-transition      : box-shadow .2s;
  transition         : box-shadow .2s
}
.listbm-img {
  width              : 109px;
  height             : 30px;
  -webkit-transition : box-shadow .2s;
  -moz-transition    : box-shadow .2s;
  -o-transition      : box-shadow .2s;
  transition         : box-shadow .2s
}
.list-img:hover {
  -webkit-box-shadow : 0 0 4px 0 #333;
  -moz-box-shadow    : 0 0 4px 0 #333;
  box-shadow         : 0 0 4px 0 #333;
}
.listb-img:hover, .listbm-img:hover {
  -webkit-box-shadow : 0 0 4px 0 #777;
  -moz-box-shadow    : 0 0 4px 0 #777;
  box-shadow         : 0 0 4px 0 #777;
}
.a-service {
  display             : inline-block;
  height              : 42px;
  background-repeat   : no-repeat;
  background-position : center center;
  background-size     : cover;
}
.ubicacion {
  width            : 115px;
  background-image : url('../image/bans/inicial-02.jpg');
}
.ubicacion:hover {
  background-image : url('../image/bans/apretado-02.jpg');
}
.sistema {
  width            : 160px;
  background-image : url('../image/bans/inicial-03.jpg');
}
.sistema:hover {
  background-image : url('../image/bans/apretado-03.jpg');
}
.sistema:hover {
  background-image : url('../image/bans/apretado-03.jpg');
}
.consulta {
  width            : 194px;
  background-image : url('../image/bans/inicial-04.jpg');
}
.consulta:hover {
  background-image : url('../image/bans/apretado-04.jpg');
}
.examenes {
  width            : 229px;
  background-image : url('../image/bans/inicial-05.jpg');
}
.examenes:hover {
  background-image : url('../image/bans/apretado-05.jpg');
}
.derivaciones {
  width            : 222px;
  background-image : url('../image/bans/inicial-06.jpg');
}
.derivaciones:hover {
  background-image : url('../image/bans/apretado-06.jpg');
}

.center.new-buttons {
  display: flex;
  flex-direction: row;
  gap: 10px;
  padding: 10px;
  overflow-x: auto; /* para scroll horizontal si no caben */
  white-space: nowrap;
}

.btn-service {
  display: flex;
  align-items: center;
  gap: 8px;
  background-color: #3382c4;
  color: white;
  padding: 12px 10px;
  border: none;
  border-radius: 8px;
  font-size: 15px;
  cursor: pointer;
  transition: background-color 0.3s ease;
  width: 190px; /* fijo o variable según necesidad */
  text-align: left;
  white-space: normal; /* esto permite el salto de línea en el texto */
}

.btn-service i {
  font-size: 18px;
  flex-shrink: 0;
}

.btn-service span {
  display: inline-block;
  word-wrap: break-word;
  line-height: 1.2;
}

.btn-service:hover {
  background-color: #003f7d;
}
/* SERVICES
-------------------------------------------------- */
.services {
  padding-left      : 15px;
  padding-top       : 10px;
  border-bottom     : 1px dotted #ccc;
  background-image  : linear-gradient(to bottom, #fff 0%, #f8f8f8 100%);
  background-repeat : repeat-x;
}
.services img.main-banner {
  width : 33%;
}
.icon-rl {
  background-color    : #009bcf;
  background-repeat   : no-repeat;
  background-position : 7px 7px;
  cursor              : pointer;
  float               : left;
  padding-left        : 40px;
  padding-right       : 15px;
  padding-top         : 12px;
  font-size           : 10px;
  text-transform      : uppercase;
  color               : #fff;
  height              : 42px;
  border              : 1px solid #fff;
  border-radius       : 4px;
  box-shadow          : 0 1px 2px #999;
  -webkit-transition  : background-color .2s;
  -moz-transition     : background-color .2s;
  -o-transition       : background-color .2s;
  transition          : background-color .2s
}
/* MAIN THEMES
-------------------------------------------------- */
.main-themes {
  padding-top       : 20px;
  background-image  : linear-gradient(to bottom, #fff 0%, #f8f8f8 100%);
  background-repeat : repeat-x;
}
.mt-item-video {
  min-height : 250px;
}
.mt-item-news {
  min-height : 500px;
}
.mt-item-news h5, .mt-item-people h5 {
  margin-top : 0;
}
.mt-item-people {
  border-left  : 1px dotted #ccc;
  border-right : 1px dotted #ccc;
  min-height   : 500px;
}
.nw-front-item {
  min-height     : 120px;
  border-bottom  : 1px dotted #ccc;
  padding-bottom : 4px;
  margin-bottom  : 12px;
}
.nw-front-item-img {
  float            : left;
  height           : 100px;
  width            : 100px;
  background-color : #fff;
  border           : 1px solid #ddd;
  border-radius    : 4px;
  display          : inline-block;
  max-width        : 100%;
  padding          : 4px;
  margin-right     : 5px;
}
.nw-front-item-img img {
  height : 90px;
  width  : 90px;
}
.nw-front-item-cont {
  padding-bottom : 15px;
}
.nw-front-date {
  font-size     : 10px;
  margin-bottom : 2px;
}
.nw-front-title {
  font-size     : 14px;
  margin-bottom : 2px;
}
.nw-front-title a, .nw-front-title a:visited, .nw-front-subtitle a, .nw-front-subtitle a:visited {
  color : #2d6ca2;
}
.nw-front-subtitle {
  font-size     : 12px;
  margin-bottom : 2px;
}
/* FOOTER
-------------------------------------------------- */
.footer {
  background     : #fff url(../image/bg_menu_footer.png) no-repeat 15px 100%;
  margin-bottom  : 10px;
  padding-top    : 20px;
  padding-bottom : 10px;
  border-top     : 1px dotted #ccc;
}
.footer h3 {
  margin-top : 15px;
}
.footer h4 {
  margin : 2px 0;
}
.footer h5 {
  margin : 2px 0;
}
.col-ft-min, .col-ft-max {
  float : left;
}
.col-ft-min {
  width : 128px;
}
.col-ft-max {
  width : 170px;
}
.ft-item-right {
  border-left   : 1px solid #ccc;
  text-align    : center;
  padding-top   : 5px;
  padding-left  : 0;
  padding-right : 0;
}
.ft-item-left {
  padding-top: 20px;
  border-right : 1px solid #fff;
  height       : 125px;
}
.icon-bt {
  float               : left;
  margin-left         : 10px;
  margin-right        : 10px;
  background-image    : url("../image/icons/phone.png");
  background-repeat   : no-repeat;
  background-position : center center;
  height              : 60px;
  width               : 70px;
}
/* ERRORS
-------------------------------------------------- */
.msg-error {
  padding : 50px 50px;
  color   : #fff;
}
.msg-title {
  font-size   : 30px;
  padding     : 0;
  margin      : 0;
  text-shadow : 0 0 3px #000;
}
.msg-text {
  font-size   : 20px;
  padding     : 0;
  margin      : 0;
  text-shadow : 0 0 2px #000;
}
.msg-subtext {
  font-size   : 16px;
  padding     : 0;
  margin      : 0;
  text-shadow : 0 0 2px #000;
}
/* HACKS
-------------------------------------------------- */
.no-border {
  border : 0;
}
.no-bottom {
  border-bottom : 0;
}
.no-left {
  border-left : 0;
}
.no-right {
  border-right : 0;
}
.no-top {
  border-top : 0;
}
.round-top {
  border-top-left-radius  : 9px;
  border-top-right-radius : 9px;
}
.round-bottom {
  border-bottom-left-radius  : 9px;
  border-bottom-right-radius : 9px;
}
.pointer {
  cursor : pointer;
}
.c-hidden {
  display : none;
}
.center {
  text-align : center;
}
.swal2-popup {
  font-size : 1.2rem !important;
}
.bold {
  font-weight : bold;
}
