/* =========================================================================
   custom.css — estilos propios de Circulo Contable
   Se carga DESPUES de main.css (el CSS del template comercial, 390 KB).
   Regla: nunca editar main.css. Todo ajuste propio va aqui, asi el template
   se puede reemplazar sin perder el trabajo hecho.
   ========================================================================= */

:root {
    --cc-primario: #1a4d8f;
    --cc-acento: #f5a623;
    --cc-texto: #333333;
    --cc-borde: rgba(0, 0, 0, 0.08);
    --cc-foco: #1a4d8f;
}

/* -------------------------------------------------------------------------
   1. Accesibilidad
   El template suprime el foco del teclado en varios componentes. Esto lo
   devuelve: sin foco visible el sitio es inusable sin mouse.
   ------------------------------------------------------------------------- */

a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
[tabindex]:focus-visible {
    outline: 3px solid var(--cc-foco);
    outline-offset: 2px;
    border-radius: 2px;
}

/* Enlace para saltar al contenido, visible solo al tabular */
.cc-skip-link {
    position: absolute;
    left: -9999px;
    top: 0;
    z-index: 10000;
    padding: 12px 20px;
    background: #ffffff;
    color: var(--cc-primario);
    font-weight: 600;
    border-radius: 0 0 6px 0;
}

.cc-skip-link:focus {
    left: 0;
}

/* -------------------------------------------------------------------------
   2. Vinetas de listas
   El template aplica `ul li { list-style: none }` de forma global, por lo que
   el diseno original usaba emojis como vineta. Se reemplazan por un marcador
   CSS: mismo peso visual, sin ruido tipografico.
   ------------------------------------------------------------------------- */

.cc-lista-check li,
.cc-lista-punto li {
    position: relative;
    padding-left: 1.6em;
    text-align: left;
}

.cc-lista-check li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.45em;
    width: 0.85em;
    height: 0.5em;
    border-left: 2px solid var(--cc-acento);
    border-bottom: 2px solid var(--cc-acento);
    transform: rotate(-45deg);
}

.cc-lista-punto li::before {
    content: "";
    position: absolute;
    left: 0.15em;
    top: 0.6em;
    width: 0.45em;
    height: 0.45em;
    border-radius: 50%;
    background: var(--cc-acento);
}

/* -------------------------------------------------------------------------
   3. Formulario de contacto
   Estados de error y exito, que antes solo existian como alert() del navegador.
   ------------------------------------------------------------------------- */

.cc-campo-error {
    border: 1px solid #d93025 !important;
}

.cc-error-texto {
    display: block;
    margin-top: 6px;
    color: #d93025;
    font-size: 0.85rem;
    line-height: 1.3;
}

.cc-alerta {
    margin-top: 15px;
    padding: 12px 16px;
    border-radius: 6px;
    font-weight: 600;
    line-height: 1.4;
}

.cc-alerta-exito {
    background: #e6f4ea;
    color: #137333;
    border: 1px solid #a8dab5;
}

.cc-alerta-error {
    background: #fce8e6;
    color: #c5221f;
    border: 1px solid #f5b5b1;
}

/* Etiqueta accesible para lectores de pantalla, sin cambiar el diseno */
.cc-solo-lectores {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

/* Boton deshabilitado mientras se envia */
button[disabled],
.vl-btn5[disabled] {
    opacity: 0.6;
    cursor: not-allowed;
}

/* -------------------------------------------------------------------------
   4. Ajustes de layout
   ------------------------------------------------------------------------- */

/* Evita el salto de layout mientras cargan las imagenes con width/height */
img {
    max-width: 100%;
    height: auto;
}

/* La pagina de contacto quedo con 2 de 3 columnas al ocultar la direccion:
   se centra el bloque para que no quede el hueco a la derecha. */
.contact-inner-area .row {
    justify-content: center;
}
