/*
Theme Name: Precisión Total Divi Child
Theme URI: https://www.precisiontotal.com/
Description: Tema hijo para Divi con landing personalizada de Precisión Total.
Author: Precisión Total
Template: Divi
Version: 1.0.0
Text Domain: precision-total
*/

/* ==================================================
   CONTENEDOR GENERAL
================================================== */

.mod-carreras,
.zinscripciones{
    max-width:1400px;
    margin:auto;
}

/* ==================================================
   TARJETAS
================================================== */

.mod-carreras .card,
.zinscripciones .card{
    border:none;
    border-radius:20px;
    overflow:hidden;
    background:#fff;
    box-shadow:0 10px 30px rgba(0,0,0,.08);
}

/* ==================================================
   CABECERAS
================================================== */

.mod-carreras .card-header,
.zinscripciones .card-header{
    background:#fff;
    border-bottom:1px solid #e5e7eb;
    padding:30px;
}

.mod-carreras .card-header h3{
    margin:0;
    font-size:32px;
    font-weight:800;
    line-height:1.2;
    color:#0b2341;
}

.zinscripciones .card-header h2{
    margin:0;
    font-size:36px;
    font-weight:800;
    line-height:1.2;
    color:#0b2341;
}

.zinscripciones .card-header p{
    margin-top:10px;
    color:#64748b;
    font-size:16px;
}

/* ==================================================
   TABLAS DE RESULTADOS
================================================== */

.mod-carreras table{
    margin:0;
    font-size:15px;
}

.mod-carreras .table{
    margin-bottom:0;
}

.mod-carreras .table thead th{
    background:#0b2341;
    color:#fff;
    border:none;
    padding:16px 12px;
    font-size:13px;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:.5px;
    vertical-align:middle;
}

.mod-carreras .table tbody td{
    padding:16px 12px;
    vertical-align:middle;
    border-color:#eef2f7;
}

.mod-carreras .table tbody tr{
    transition:.2s ease;
}

.mod-carreras .table tbody tr:hover{
    background:#f8fafc;
}

/* ==================================================
   NOMBRE DEL COMPETIDOR
================================================== */

.nombre-corredor{
    font-weight:700;
    color:#0b2341;
    text-transform:uppercase;
}

/* ==================================================
   POSICIONES
================================================== */

.posicion-general{
    background:#f58232;
    color:#fff;
    min-width:36px;
    height:36px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border-radius:10px;
    font-weight:700;
}

.mod-carreras .badge{
    font-size:13px;
    padding:8px 10px;
    border-radius:10px;
    font-weight:700;
}

/* ==================================================
   FORMULARIOS
================================================== */

.mod-carreras .form-control,
.mod-carreras .form-select,
.zinscripciones .form-control,
.zinscripciones .form-select{
    min-height:52px;
    border-radius:12px;
    border:1px solid #dbe3ec;
    font-size:15px;
}

.mod-carreras .form-control:focus,
.mod-carreras .form-select:focus,
.zinscripciones .form-control:focus,
.zinscripciones .form-select:focus{
    border-color:#f58232;
    box-shadow:0 0 0 .20rem rgba(245,130,50,.15);
}

/* ==================================================
   RADIOS
================================================== */

.mod-carreras input[type="radio"]{
    width:20px;
    height:20px;
    cursor:pointer;
}

/* ==================================================
   BOTONES
================================================== */

.mod-carreras .btn-success,
.zinscripciones .btn-success,
.mod-carreras .boton{
    background:#f58232;
    border:1px solid #f58232;
    color:#fff;
    border-radius:12px;
    padding:12px 28px;
    font-weight:700;
    transition:.2s;
}

.mod-carreras .btn-success:hover,
.zinscripciones .btn-success:hover,
.mod-carreras .boton:hover{
    background:#e26f1c;
    border-color:#e26f1c;
    color:#fff;
}

.mod-carreras .btn-outline-secondary{
    border-radius:12px;
}

/* ==================================================
   ALERTAS
================================================== */

.mod-carreras .alert,
.zinscripciones .alert{
    border-radius:15px;
    padding:18px 25px;
    border:none;
}

.zinscripciones .alert-info{
    background:#f5f9ff;
    color:#0b2341;
}

.zinscripciones .alert-warning{
    background:#fff8e7;
    color:#8a5a00;
}

.zinscripciones .alert-success{
    background:#ecfdf3;
    color:#0f5132;
}

/* ==================================================
   INSCRIPCIONES
================================================== */

.zinscripciones .card-body{
    background:#fff;
    padding:35px;
}

.zinscripciones .card-footer{
    background:#fafafa;
    border-top:1px solid #eee;
    padding:30px;
}

.zinscripciones .botones{
    min-height:70px;
}

.zinscripciones label{
    font-weight:600;
    color:#0b2341;
}

.zinscripciones .tarjs{
    text-align:center;
    padding:15px;
    margin-bottom:20px;
    border-radius:12px;
    background:#f5f9ff;
    color:#0b2341;
}

/* ==================================================
   FILTROS
================================================== */

.filtro-carreras{
    margin-bottom:20px;
}

.filtro-carreras input{
    width:100%;
    max-width:400px;
    min-height:50px;
    border-radius:12px;
    border:1px solid #dbe3ec;
    padding:10px 15px;
}

/* ==================================================
   ENLACES
================================================== */

.mod-carreras a{
    color:#f58232;
    text-decoration:none;
    font-weight:600;
}

.mod-carreras a:hover{
    color:#d96311;
}

/* ==================================================
   RESPONSIVE
================================================== */

@media(max-width:768px){

    .mod-carreras .card-header,
    .zinscripciones .card-header{
        padding:20px;
    }

    .mod-carreras .card-header h3{
        font-size:24px;
    }

    .zinscripciones .card-header h2{
        font-size:28px;
    }

    .mod-carreras table{
        font-size:13px;
    }

    .zinscripciones .card-body{
        padding:20px;
    }

    .zinscripciones .card-footer{
        padding:20px;
    }
}



.carrera-logo {
	width: 54px;
	height: 54px;
}

.carrera-logo img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.carrera-item {
	min-height: 92px;
}

.carrera-titulo {
	color: #fff;
}

.carrera-detalles {
	color: #dbe7ff;
	font-size: 15px;
	line-height: 1.35;
}

.carrera-btn {
	background: #214f43;
	color: #fff;
	border-radius: 999px;
	font-weight: 700;
	padding: 8px 18px;
	text-decoration: none;
}

.carrera-btn:hover {
	background: #2c6b59;
	color: #fff;
}