/*
 * GCSoftwareColombia: la página con la misma línea visual del software odontológico.
 * Azul #3C8DBC, letra Roboto, títulos #3d4465, texto gris, fondo #fbfbfb,
 * tarjetas blancas con esquinas de 20px, botones redondeados y verde #21b731 para lo positivo.
 * Va después de style.css y gcs-extra.css: no toca la plantilla, solo la sobrescribe.
 */
:root {
  --gcs-acento: #3C8DBC;
  --gcs-acento-oscuro: #2b6f99;
  --gcs-acento-suave: #eaf3f9;
  --gcs-titulo: #3d4465;
  --gcs-texto: #3d4465;
  --gcs-suave: #6e6e6e;
  --gcs-tenue: #9aa3ae;
  --gcs-fondo: #fbfbfb;
  --gcs-borde: #eef0f4;
  --gcs-ok: #21b731;
  --gcs-radio: 20px;
  --gcs-sombra: 0 6px 24px rgba(61, 68, 101, .06);
  --gcs-sombra-alta: 0 14px 34px rgba(60, 141, 188, .16);
}

/* ---------- Base ---------- */
body { background-color: var(--gcs-fondo); color: var(--gcs-suave); }
p { color: var(--gcs-suave); }
a { color: var(--gcs-suave); }
h1, h2, h3, h4, h5, h6 { color: var(--gcs-titulo); font-weight: 600; }
.section-header h3 { font-weight: 600; letter-spacing: -.2px; }
.bg-ash-color { background-color: #f4f7fa; }
::selection { background: var(--gcs-acento); color: #fff; }

/* ---------- Botones (como en el software: píldora azul) ---------- */
.custom-btn { border-radius: 50px; border-color: var(--gcs-acento); color: var(--gcs-acento); font-weight: 500; }
.custom-btn:hover { background-color: var(--gcs-acento); border-color: var(--gcs-acento); color: #fff; box-shadow: 0 6px 16px rgba(60, 141, 188, .28); }
.blog-custom-btn { border-radius: 50px; }
.blog-custom-btn:hover { background-color: var(--gcs-acento-oscuro); }
.gcs-btn-sec { border-radius: 50px; }

/* ---------- Menú ---------- */
.axsis-main-menu-area.fixed-menu { background-color: rgba(255, 255, 255, .97); box-shadow: 0 2px 18px rgba(61, 68, 101, .08); backdrop-filter: blur(6px); }
.axsis-main-menu-area.fixed-menu .nav-menu li a { color: var(--gcs-titulo); }
@media (min-width: 992px) {
  .nav-menu li a { border-radius: 50px; }
  .axsis-main-menu-area.fixed-menu .nav-menu li a.active,
  .axsis-main-menu-area.fixed-menu .nav-menu li a:hover { background-color: var(--gcs-acento-suave); color: var(--gcs-acento); }
  .axsis-main-menu-area.fixed-menu .nav-menu li a span:after { display: none; }
}
@media (max-width: 991px) {
  .op-mobile-menu { background-color: #fff; box-shadow: 4px 0 24px rgba(61, 68, 101, .12); }
  .op-mobile-menu .nav-menu li a { color: var(--gcs-titulo); border-bottom-color: var(--gcs-borde); }
  .op-mobile-menu .nav-menu li a:hover, .op-mobile-menu .nav-menu li a.active { color: var(--gcs-acento); background-color: var(--gcs-acento-suave); }
  .op-mobile-menu .close-button { background-color: var(--gcs-acento-suave); }
  .op-mobile-menu .close-button:after, .op-mobile-menu .close-button:before { background-color: var(--gcs-acento); }
}
.axsis-main-menu-area.fixed-menu .menu-bar span { background-color: var(--gcs-acento); }

/* ---------- Portada ---------- */
.banner-section { background-image: linear-gradient(135deg, #3C8DBC 0%, #2f7fae 55%, #2b6f99 100%); }
.banner-section:after { content: ""; position: absolute; right: -180px; top: -180px; width: 520px; height: 520px; border-radius: 50%; background: rgba(255, 255, 255, .06); pointer-events: none; }
.banner-text h1 { font-weight: 600; letter-spacing: -.3px; }
.banner-text .button-store .custom-btn { border-radius: 50px; padding: 10px 24px; }
.banner-text .button-store .custom-btn.active { background-color: #fff; border-color: #fff; }
.banner-text .button-store .custom-btn.active i, .banner-text .button-store .custom-btn.active p, .banner-text .button-store .custom-btn.active p span { color: var(--gcs-acento); }
.banner-text .button-store .custom-btn:not(.active):hover { background-color: rgba(255, 255, 255, .14); }
.gcs-banner-extra i.fa-check-circle { color: #b9f5c5; }
.banner-joint-image .img1 { border-radius: var(--gcs-radio); box-shadow: 0 24px 60px rgba(17, 40, 60, .22); }

/* ---------- Tarjetas (ventajas, módulos, perfiles, pantallas) ---------- */
.feature-item, .gcs-card, .gcs-perfil { border-radius: var(--gcs-radio); border: 1px solid var(--gcs-borde); box-shadow: var(--gcs-sombra); background: #fff; transition: transform .2s, box-shadow .2s; }
.feature-item:hover, .gcs-card:hover, .gcs-perfil:hover { transform: translateY(-3px); box-shadow: var(--gcs-sombra-alta); }
.icon-box .icon, .icon-box .icon.green { background-color: var(--gcs-acento-suave); color: var(--gcs-acento); box-shadow: none; border-radius: 16px; }
.feature-item h5, .gcs-card-head h5, .gcs-perfil h5 { color: var(--gcs-titulo); font-weight: 600; }
.gcs-card-head span { border-radius: 14px; }
.gcs-card li::before { color: var(--gcs-ok); }
.gcs-perfil > span { color: var(--gcs-acento); }

.screenshot-section:after { background-color: var(--gcs-acento-suave); }
.screenshot-info-item { border-radius: 16px; border: 1px solid var(--gcs-borde); box-shadow: var(--gcs-sombra); }
.screenshot-info-item .icon { background-color: var(--gcs-acento-suave); color: var(--gcs-acento); border-radius: 14px; }
.screenshot-info-item.active { background-color: var(--gcs-acento); border-color: var(--gcs-acento); }
.screenshot-info-item.active .icon { background-color: rgba(255, 255, 255, .18); color: #fff; }
.screenshot-content .sub-title { color: var(--gcs-titulo); }
.screenshot-info-item-style2 .svg-icon svg { fill: var(--gcs-ok); }
.screenshot-image img { border-radius: var(--gcs-radio); }
.screenshot-content .custom-btn.active { background-color: var(--gcs-acento); border-color: var(--gcs-acento); box-shadow: 0 6px 16px rgba(60, 141, 188, .28); }

/* ---------- Carrusel y video ---------- */
.interface-slider-container .swiper-pagination .swiper-pagination-bullet-active,
.axsis-testimonial-container .swiper-pagination .swiper-pagination-bullet-active { background-color: var(--gcs-acento); width: 26px; border-radius: 6px; }
.interface-slider-container .swiper-slide.swiper-slide-active { box-shadow: 0 18px 44px rgba(61, 68, 101, .16); }
.video-section .overlay { background-color: rgba(43, 111, 153, .82); }
.axsis-play-btn { box-shadow: 0 0 0 10px rgba(255, 255, 255, .15); }

/* ---------- Precios ---------- */
.axsis-price-control li a { border-color: var(--gcs-borde); background: #fff; color: var(--gcs-titulo); }
.axsis-price-control li:first-child a { border-radius: 50px 0 0 50px; }
.axsis-price-control li:last-child a { border-radius: 0 50px 50px 0; }
.axsis-price-control li a.active { background-color: var(--gcs-acento); border-color: var(--gcs-acento); color: #fff; }
.axsis-pricing-item { border-radius: var(--gcs-radio); border: 1px solid var(--gcs-borde); box-shadow: var(--gcs-sombra); position: relative; transition: transform .2s, box-shadow .2s; }
.axsis-pricing-item:hover { transform: translateY(-4px); box-shadow: var(--gcs-sombra-alta); }
.axsis-pricing-item .pricing-head .category-type span { color: var(--gcs-titulo); font-weight: 600; }
.axsis-pricing-item .pricing-head .price, .axsis-pricing-item .pricing-head .price .dollar-sign { color: var(--gcs-acento); font-weight: 400; }
.axsis-pricing-item .pricing-head .price .per-time { color: var(--gcs-tenue); }
.axsis-pricing-item .pricing-head .free-trial-content { color: var(--gcs-tenue); }
.axsis-pricing-item .pricing-body .pricing-feature-list li { color: var(--gcs-suave); }
.axsis-pricing-item .pricing-body .custom-btn { background-color: var(--gcs-acento); border-color: var(--gcs-acento); border-radius: 50px; }
.axsis-pricing-item .pricing-body .hidden-charge { color: var(--gcs-tenue); letter-spacing: 1.5px; font-size: 12px; }
/* Al pasar el mouse y el plan destacado: azul oscuro del software (no negro) */
.axsis-pricing-item:hover .pricing-head .price, .axsis-pricing-item:hover .pricing-head .price .dollar-sign,
.active > .axsis-pricing-item .pricing-head .dollar-sign, .active > .axsis-pricing-item .pricing-head .price { color: var(--gcs-acento-oscuro); }
.axsis-pricing-item:hover .pricing-body .custom-btn, .axsis-pricing-item.active .pricing-body .custom-btn,
.active > .axsis-pricing-item .pricing-body .custom-btn { background-color: var(--gcs-acento-oscuro); border-color: var(--gcs-acento-oscuro); }
.active > .axsis-pricing-item { border: 2px solid var(--gcs-acento); box-shadow: var(--gcs-sombra-alta); }
.active > .axsis-pricing-item:before { content: "Más elegido"; position: absolute; top: 14px; right: 14px; background: var(--gcs-acento-suave); color: var(--gcs-acento);
  font-size: 11px; font-weight: 600; padding: 3px 10px; border-radius: 50px; letter-spacing: .3px; white-space: nowrap; }
/* Precios largos (150.000 o anuales) sin que «/mes» salte de línea */
.axsis-pricing-item .pricing-head .price { font-size: 50px; white-space: nowrap; }
.axsis-pricing-item .pricing-head .price .dollar-sign { font-size: 26px; top: 10px; left: -16px; }
.axsis-pricing-item .pricing-head .price .per-time { font-size: 15px; margin-left: -6px; }
@media (max-width: 1199px) { .axsis-pricing-item .pricing-head .price { font-size: 42px; } }
.gcs-ahorro strong { color: var(--gcs-ok); }
.category-type span { color: var(--gcs-acento); }
table.gcs-comp { border-radius: var(--gcs-radio) !important; box-shadow: var(--gcs-sombra); border: 1px solid var(--gcs-borde); }
table.gcs-comp th { background: var(--gcs-acento) !important; }
table.gcs-comp td[style*="1e9e5a"] { color: var(--gcs-ok) !important; }
#pricing .border.rounded { border-radius: 16px !important; border-color: var(--gcs-borde) !important; box-shadow: var(--gcs-sombra); }

/* ---------- Testimonios ---------- */
.axsis-testimonial-container .testimonial-body { border-radius: var(--gcs-radio); border: 1px solid var(--gcs-borde); box-shadow: var(--gcs-sombra); }
.axsis-testimonial-container .testimonial-content .designation { color: var(--gcs-tenue); }

/* ---------- Preguntas ---------- */
.faq, .faq .faq-header { border-radius: 16px; box-shadow: none; }
.faq { border: 1px solid var(--gcs-borde); box-shadow: var(--gcs-sombra); overflow: hidden; }
.faq .faq-header .btn-link { color: var(--gcs-titulo); font-weight: 500; }
.faq .faq-header .btn-link:not(.collapsed) { color: var(--gcs-acento); }
.faq .faq-header .btn-link .icon { background-color: var(--gcs-acento); border-radius: 10px; }
.faq .faq-header .btn-link.collapsed .icon { background-color: var(--gcs-acento-suave); }
.faq .faq-header .btn-link.collapsed .icon i { color: var(--gcs-acento); }

/* ---------- Blog ---------- */
.post-item { border-radius: var(--gcs-radio); overflow: hidden; border: 1px solid var(--gcs-borde); box-shadow: var(--gcs-sombra); background: #fff; transition: transform .2s, box-shadow .2s; }
.post-item:hover { transform: translateY(-3px); box-shadow: var(--gcs-sombra-alta); }
.blog-btn { color: var(--gcs-acento); }
.meta-post li .meta-content, .meta-post li .meta-link { color: var(--gcs-tenue); }
.pagination li a { border-radius: 10px; }
.pagination li:first-child a .icon, .pagination li:last-child a .icon { background-color: var(--gcs-acento-oscuro); }
.widget { border-radius: var(--gcs-radio); box-shadow: var(--gcs-sombra); border: 1px solid var(--gcs-borde); overflow: hidden; }
.widget-title { background-color: var(--gcs-acento-suave); color: var(--gcs-titulo); }
.entry-wrapper { border-radius: var(--gcs-radio); box-shadow: var(--gcs-sombra); background: #fff; }
blockquote { border-radius: 16px; }

/* ---------- Contacto ---------- */
.contact-wrapper { border-radius: var(--gcs-radio); border: 1px solid var(--gcs-borde); box-shadow: var(--gcs-sombra); }
.contact-form input, .contact-form textarea, .footer-email-form input { border-radius: 12px; border-color: #e3e7ee; box-shadow: none; color: var(--gcs-titulo); }
.contact-form input:focus, .contact-form textarea:focus, .footer-email-form input:focus { border-color: var(--gcs-acento); box-shadow: 0 0 0 3px rgba(60, 141, 188, .15); }
.contact-form button { border-radius: 50px; font-weight: 500; }
.contact-form button:hover { background-color: var(--gcs-acento-oscuro); }
.contact-form button:disabled { background-color: var(--gcs-ok); }

/* ---------- Pie ---------- */
.footer-top { background-color: #fff; border-top: 1px solid var(--gcs-borde); }
.footer-bottom { background-color: #f4f7fa; }
.footer-contact-info li, .footer-contact-info li a { color: var(--gcs-titulo); }
.footer-title { color: var(--gcs-titulo); font-weight: 600; }
.footer-widget ul li a:hover { color: var(--gcs-acento); }
.footer-email-form input { background-color: #f4f7fa; }
.footer-widget .button-store .custom-btn { border-color: var(--gcs-borde); border-radius: 14px; background: #fff; }
.footer-widget .button-store .custom-btn i { color: #e5534b; }
.footer-widget .button-store .custom-btn p, .footer-widget .button-store .custom-btn p span { color: var(--gcs-titulo); }
.footer-widget .button-store .custom-btn.active { background-color: var(--gcs-acento); border-color: var(--gcs-acento); }
.footer-widget .button-store .custom-btn.active i, .footer-widget .button-store .custom-btn.active p, .footer-widget .button-store .custom-btn.active p span { color: #fff; }
.footer-widget .button-store .custom-btn:hover { box-shadow: var(--gcs-sombra-alta); }

/* ---------- Detalles ---------- */
.to-top { background-color: var(--gcs-acento); border-radius: 50%; box-shadow: 0 6px 16px rgba(60, 141, 188, .35); }
#loading { background-color: #fff; }
.gcs-aviso { background: var(--gcs-acento-oscuro); }
.gcs-cats a.on, .gcs-cats a:hover { background: var(--gcs-acento) !important; border-color: var(--gcs-acento) !important; color: #fff !important; }
