/*
 * Plantilla CLÁSICA — institucional y formal.
 * Marfil + azul marino profundo + dorado apagado. Cormorant Garamond,
 * filetes dobles dorados, hero enmarcado, banda KPI navy con cifras serif
 * doradas, footer navy con doble filete dorado. Sobriedad de institución
 * con décadas de trayectoria.
 */

.v2s--clasica {
    --v2s-bg: #FAF8F2;
    --v2s-paper: #FFFFFF;
    --v2s-navy: #1B2951;
    --v2s-muted: #5B6472;
    --v2s-border: #D9D4C5;
    --v2s-green: var(--brand-primary, #8B7355);
    --v2s-green-hover: var(--brand-primary-hover, #6B5940);   /* dorado profundo — AA para texto sobre marfil */
    --v2s-radius: 6px;
    --v2s-radius-lg: 10px;
    --v2s-shadow: 0 2px 10px rgba(27, 41, 81, 0.05);
    --v2s-serif: var(--brand-font-display, 'Cormorant Garamond', Georgia, serif);
    /* Acento secundario (Fase BH): la fundación puede sustituir el dorado por su
       color de acento; sin él, el dorado apagado de siempre (retrocompat). */
    --v2s-accent: var(--brand-accent, #C9A96A);
    --v2s-accent-hover: var(--brand-accent-hover, #6B5940);
    --v2s-gold: var(--v2s-accent);
    --v2s-hero-overlay: linear-gradient(170deg, rgba(16, 26, 56, 0.88) 0%, rgba(27, 41, 81, 0.66) 60%, rgba(27, 41, 81, 0.5) 100%);
    --v2s-hero-em: #C9A96A;
    --v2s-ph-grad: linear-gradient(150deg, #1B2951 0%, #2A3C6B 100%);
    --v2s-ph-font: var(--v2s-serif);
}

/* Header institucional: marfil con filete dorado inferior */
.v2s--clasica .v2s__header {
    background: rgba(250, 248, 242, 0.96);
    border-bottom: 1px solid var(--v2s-gold);
}
.v2s--clasica .v2s__brand {
    font-family: var(--v2s-serif);
    font-weight: 600;
    font-size: 21px;
    letter-spacing: 0.01em;
}
.v2s--clasica .v2s__nav-link { font-weight: 500; }

/* Títulos serenos en Cormorant Garamond, itálicas doradas en em */
.v2s--clasica .v2s__h1,
.v2s--clasica .v2s__h2,
.v2s--clasica .v2s__h3 {
    font-family: var(--v2s-serif);
    font-weight: 600;
    letter-spacing: 0.01em;
}
.v2s--clasica .v2s__h1 { font-size: clamp(40px, 5.5vw, 64px); font-weight: 500; line-height: 1.08; }
.v2s--clasica .v2s__h3 { font-size: 24px; }
.v2s--clasica .v2s__h1 em,
.v2s--clasica .v2s__h2 em {
    font-style: italic;
    font-weight: 500;
    color: var(--v2s-green-hover);
}

/* Hero enmarcado: marfil con doble filete dorado arriba y abajo */
.v2s--clasica .v2s__hero {
    background:
        radial-gradient(50% 70% at 50% 0%, rgba(201, 169, 106, 0.12) 0%, transparent 65%),
        linear-gradient(180deg, var(--v2s-paper) 0%, var(--v2s-bg) 100%);
    border-top: 4px double var(--v2s-gold);
    border-bottom: 4px double var(--v2s-gold);
    padding: 104px 0 78px;
    text-align: center;
}
.v2s--clasica .v2s__hero .v2s__lead { margin-left: auto; margin-right: auto; }
.v2s--clasica .v2s__hero .v2s__cta-row { justify-content: center; }
/* Hero con imagen: la foto enmarcada por el doble filete dorado del hero. */
.v2s--clasica .v2s__hero--img {
    background-image: var(--v2s-hero-overlay), var(--v2s-hero-img);
    background-size: cover, cover;
    background-position: center, center;
    background-repeat: no-repeat, no-repeat;
}
.v2s--clasica .v2s__hero--img .v2s__h1 { color: #FFFFFF; }
.v2s--clasica .v2s__hero--img .v2s__lead { color: rgba(255, 255, 255, 0.92); }
.v2s--clasica .v2s__hero--img .v2s__eyebrow { color: var(--v2s-gold); }

/* Eyebrow en versalitas espaciadas doradas */
.v2s--clasica .v2s__eyebrow,
.v2s--clasica .v2s__item-card-eyebrow {
    color: var(--v2s-green-hover);
    letter-spacing: 0.22em;
    font-weight: 700;
}

/* Secciones alternadas: marfil / blanco con hairline dorado */
.v2s--clasica .v2s__section { padding: var(--v2s-section-pad, 76px) 0; }
.v2s--clasica .v2s__section-alt {
    background: var(--v2s-section-alt-bg, var(--v2s-paper));
    border-top: 1px solid var(--v2s-border);
    border-bottom: 1px solid var(--v2s-border);
}

/* Doble línea decorativa bajo los títulos de sección */
.v2s--clasica .v2s__section-title { position: relative; padding-bottom: 22px; }
.v2s--clasica .v2s__section-title::after {
    content: '';
    position: absolute;
    left: 50%;
    bottom: 0;
    transform: translateX(-50%);
    width: 90px;
    border-top: 4px double var(--v2s-gold);
}

/* Cards de institución: marco fino, hover sobrio sin movimiento */
.v2s--clasica .v2s__card,
.v2s--clasica .v2s__item-card {
    border-radius: 6px;
    border: 1px solid var(--v2s-border);
}
.v2s--clasica .v2s__item-card:hover {
    box-shadow: 0 8px 26px rgba(27, 41, 81, 0.12);
    transform: none;
    border-color: var(--v2s-gold);
}
.v2s--clasica .v2s__item-card-title { font-family: var(--v2s-serif); font-size: 22px; font-weight: 600; }
.v2s--clasica .v2s__item-card-cover--ph span { color: var(--v2s-gold); font-weight: 500; }

/* Banda KPI: navy solemne con cifras serif doradas */
.v2s--clasica .v2s__section--kpis {
    background: linear-gradient(180deg, #16223F 0%, #1B2951 100%);
    border-top: 4px double var(--v2s-gold);
    border-bottom: 4px double var(--v2s-gold);
    padding: 62px 0;
}
.v2s--clasica .v2s__kpi {
    background: transparent;
    border: 1px solid rgba(201, 169, 106, 0.35);
    border-radius: 6px;
}
.v2s--clasica .v2s__kpi-num {
    font-family: var(--v2s-serif);
    font-weight: 500;
    font-size: clamp(40px, 5.5vw, 58px);
    color: var(--v2s-gold);
}
.v2s--clasica .v2s__kpi-label { color: rgba(255, 255, 255, 0.85); letter-spacing: 0.08em; text-transform: uppercase; font-size: 11px; }

/* Botones navy con tipografía serif */
.v2s--clasica .v2s__btn {
    border-radius: 4px;
    font-family: var(--v2s-serif);
    font-weight: 700;
    font-size: 17px;
    letter-spacing: 0.02em;
}
.v2s--clasica .v2s__btn--primary,
.v2s--clasica .v2s__cta-header {
    /* Navy institucional por default; la marca lo sustituye si se configuró. */
    background: var(--brand-primary, var(--v2s-navy));
    color: var(--brand-on-primary, #FFFFFF);
    border-radius: 4px;
    font-family: var(--v2s-serif);
    font-weight: 700;
}
.v2s--clasica .v2s__btn--primary:hover,
.v2s--clasica .v2s__cta-header:hover { background: var(--brand-primary-hover, #101A38); color: var(--brand-on-primary, #FFFFFF); }
.v2s--clasica .v2s__btn--outline:hover { background: var(--v2s-navy); color: #FFFFFF; }

/* Date badge en navy institucional con filo dorado */
.v2s--clasica .v2s__date-badge {
    background: var(--v2s-navy);
    color: #FFFFFF;
    border-radius: 4px;
    border: 1px solid var(--v2s-gold);
}

/* Banda CTA de cierre: navy con marco dorado interior */
.v2s--clasica .v2s__band-cta {
    background:
        radial-gradient(60% 90% at 50% 0%, rgba(201, 169, 106, 0.14) 0%, transparent 60%),
        #1B2951;
    border-top: 4px double var(--v2s-gold);
}
.v2s--clasica .v2s__band-cta .v2s__btn--primary { background: var(--v2s-gold); color: var(--brand-on-accent, #1B2951); }
.v2s--clasica .v2s__band-cta .v2s__btn--primary:hover { background: var(--brand-accent-hover, #E0C68C); color: var(--brand-on-accent, #1B2951); }

/* Formularios con foco dorado sobrio */
.v2s--clasica .v2s__form-field input:focus,
.v2s--clasica .v2s__form-field textarea:focus,
.v2s--clasica .v2s__form-field select:focus {
    border-color: var(--v2s-green);
    box-shadow: 0 0 0 3px rgba(139, 115, 85, 0.15);
}

/* Footer navy solemne con doble filete dorado */
.v2s--clasica .v2s__footer {
    background: linear-gradient(180deg, #1B2951 0%, #121D3D 100%);
    border-top: 4px double var(--v2s-gold);
}
.v2s--clasica .v2s__footer-name { font-family: var(--v2s-serif); font-weight: 600; font-size: 24px; }
.v2s--clasica .v2s__footer-heading { color: var(--v2s-gold); letter-spacing: 0.18em; }
.v2s--clasica .v2s__footer-credit { border-top-color: rgba(201, 169, 106, 0.25); }
