/*!
 * Apostolado de la Cruz · CJS — tokens de marca (adc_brand) v1.0
 * Fuente de verdad del sistema de diseño: landing, sitio público /cjs y panel.
 * Fuentes autoalojadas (SIL OFL 1.1): EB Garamond (títulos) y Source Sans 3 (texto).
 * Contrastes WCAG documentados en /home/almalinux/adc_build/reports/marca.md.
 */
@font-face{font-family:"ADC Serif";font-style:normal;font-weight:400 800;font-display:swap;src:url("../fonts/ebgaramond-latin-var.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"ADC Serif";font-style:italic;font-weight:400 800;font-display:swap;src:url("../fonts/ebgaramond-latin-var-italic.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"ADC Sans";font-style:normal;font-weight:300 800;font-display:swap;src:url("../fonts/sourcesans3-latin-var.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"ADC Sans";font-style:italic;font-weight:300 800;font-display:swap;src:url("../fonts/sourcesans3-latin-var-italic.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

:root{
  /* ---- Color: marca ---- */
  --adc-wine:#6B1D2A;            /* vino/granate: acción principal, enlaces, títulos de acento (11.45:1 sobre blanco) */
  --adc-wine-hover:#561722;      /* hover/pressed (13.62:1 con texto blanco) */
  --adc-wine-strong:#4A1220;     /* fondos oscuros (héroe, pie, sidebar) */
  --adc-wine-deep:#330C16;       /* el más oscuro: bandas de pie */
  --adc-wine-soft:#F4E9EA;       /* fondos suaves de acento */
  --adc-wine-soft-2:#EAD6D9;     /* bordes de acento, hover suave */
  --adc-gold:#B8924A;            /* dorado sobrio: SOLO decorativo (filetes, isotipo) — 2.90:1, no para texto */
  --adc-gold-text:#7A5C22;       /* dorado para texto sobre claro (5.76:1 sobre marfil) */
  --adc-gold-bright:#D9B979;     /* dorado sobre oscuro (7.98:1 sobre wine-strong) */
  --adc-gold-soft:#F6EEDC;
  --adc-ivory:#FAF6EF;           /* fondo de página cálido */
  --adc-ivory-2:#F3ECE0;         /* fondo alterno de secciones */
  --adc-paper:#FFFFFF;           /* tarjetas */
  --adc-graphite:#2A2724;        /* texto principal (13.78:1 sobre marfil) */
  --adc-olive:#556B2F;           /* acento verde olivo / éxito (5.95:1 sobre blanco) */
  --adc-olive-soft:#EEF1E4;

  /* ---- Color: roles semánticos (úsalos en lugar de los de marca) ---- */
  --adc-color-bg:var(--adc-ivory);
  --adc-color-bg-alt:var(--adc-ivory-2);
  --adc-color-surface:var(--adc-paper);
  --adc-color-primary:var(--adc-wine);
  --adc-color-primary-hover:var(--adc-wine-hover);
  --adc-color-primary-strong:var(--adc-wine-strong);
  --adc-color-on-primary:#FFFFFF;
  --adc-color-accent:var(--adc-gold);
  --adc-color-accent-text:var(--adc-gold-text);
  --adc-color-accent-on-dark:var(--adc-gold-bright);
  --adc-color-text:var(--adc-graphite);
  --adc-color-text-muted:#5C5650;   /* 6.72:1 sobre marfil */
  --adc-color-text-subtle:#6E665E;  /* 5.23:1 sobre marfil (mínimo para texto) */
  --adc-color-on-dark:#FAF6EF;      /* 13.94:1 sobre wine-strong */
  --adc-color-on-dark-muted:#E9DFD0;/* 11.39:1 */
  --adc-color-line:#E4DACB;
  --adc-color-line-strong:#CDBFAB;
  --adc-color-focus:#B8924A;
  --adc-color-success:#556B2F; --adc-color-success-soft:#EEF1E4;
  --adc-color-warning:#9A5B0B; --adc-color-warning-soft:#FBF0DD;
  --adc-color-danger:#B42318;  --adc-color-danger-soft:#FCEBE8;
  --adc-color-info:#2F5D7C;    --adc-color-info-soft:#E7EFF5;

  /* ---- Tipografía ---- */
  --adc-font-serif:"ADC Serif","EB Garamond",Garamond,"Times New Roman",Georgia,serif;
  --adc-font-sans:"ADC Sans","Source Sans 3","Segoe UI",system-ui,-apple-system,Roboto,Arial,sans-serif;
  --adc-font-heading:var(--adc-font-serif);
  --adc-font-body:var(--adc-font-sans);
  --adc-text-xs:.8125rem;   /* 13 — sólo metadatos */
  --adc-text-sm:.9375rem;   /* 15 */
  --adc-text-base:1.0625rem;/* 17 — texto (≥16 px en teléfono) */
  --adc-text-lg:1.1875rem;  /* 19 — bajadas */
  --adc-text-xl:1.5rem;     /* 24 — h3 */
  --adc-text-2xl:clamp(1.75rem,1.4rem + 1.4vw,2.375rem);   /* h2 28→38 */
  --adc-text-3xl:clamp(2.125rem,1.6rem + 2.4vw,3.25rem);   /* h1 34→52 */
  --adc-text-hero:clamp(2.5rem,1.7rem + 3.6vw,4.25rem);    /* héroe 40→68 */
  --adc-leading:1.6; --adc-leading-tight:1.15; --adc-leading-snug:1.3;
  --adc-weight-regular:400; --adc-weight-medium:500; --adc-weight-semibold:600; --adc-weight-bold:700;
  --adc-tracking-caps:.12em;  /* antetítulos en versalitas */
  --adc-measure:68ch;         /* 60–75 caracteres */

  /* ---- Espaciado (ritmo de 8 px) ---- */
  --adc-space-1:4px; --adc-space-2:8px; --adc-space-3:12px; --adc-space-4:16px; --adc-space-5:24px;
  --adc-space-6:32px; --adc-space-7:48px; --adc-space-8:64px; --adc-space-9:80px; --adc-space-10:96px; --adc-space-11:128px;
  --adc-section-y:clamp(64px,4rem + 4vw,120px);   /* 64–80 teléfono, 96–128 escritorio */
  --adc-card-pad:clamp(24px,1.2rem + .6vw,32px);
  --adc-grid-gap:clamp(20px,1rem + 1vw,32px);
  --adc-gutter:clamp(20px,3vw,40px);
  --adc-container:1200px; --adc-container-narrow:760px;

  /* ---- Formas y elevación ---- */
  --adc-radius-sm:6px; --adc-radius:10px; --adc-radius-lg:16px; --adc-radius-pill:999px;
  --adc-control-h:48px;  /* botones/inputs: dedo cómodo en teléfono */
  --adc-shadow-sm:0 1px 2px rgba(42,39,36,.06),0 1px 1px rgba(42,39,36,.04);
  --adc-shadow:0 2px 6px rgba(42,39,36,.06),0 8px 24px rgba(42,39,36,.06);
  --adc-shadow-lg:0 12px 40px rgba(51,12,22,.14);
  --adc-ring:0 0 0 3px rgba(184,146,74,.55);
  --adc-ease:cubic-bezier(.2,.7,.2,1); --adc-dur:180ms;
}

/* =====================================================================
 * Componentes .adc-* (prefijo propio: no chocan con Bootstrap/tema heredado)
 * ===================================================================== */
.adc-ui,.adc-ui *{box-sizing:border-box}
.adc-ui{font-family:var(--adc-font-body);font-size:var(--adc-text-base);line-height:var(--adc-leading);color:var(--adc-color-text);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
.adc-ui h1,.adc-ui h2,.adc-ui h3,.adc-h1,.adc-h2,.adc-h3,.adc-display{font-family:var(--adc-font-heading);font-weight:var(--adc-weight-semibold);line-height:var(--adc-leading-tight);color:var(--adc-color-text);letter-spacing:-.005em;margin:0 0 .5em}
.adc-display{font-size:var(--adc-text-hero);font-weight:var(--adc-weight-medium)}
.adc-ui h1,.adc-h1{font-size:var(--adc-text-3xl)}
.adc-ui h2,.adc-h2{font-size:var(--adc-text-2xl)}
.adc-ui h3,.adc-h3{font-size:var(--adc-text-xl);line-height:var(--adc-leading-snug)}
.adc-ui p{margin:0 0 1em;max-width:var(--adc-measure)}
.adc-ui a{color:var(--adc-color-primary);text-underline-offset:.18em;text-decoration-thickness:1px}
.adc-ui a:hover{color:var(--adc-color-primary-hover)}
.adc-ui :focus-visible{outline:none;box-shadow:var(--adc-ring);border-radius:var(--adc-radius-sm)}
.adc-eyebrow{display:inline-block;font-family:var(--adc-font-body);font-size:var(--adc-text-xs);font-weight:var(--adc-weight-semibold);letter-spacing:var(--adc-tracking-caps);text-transform:uppercase;color:var(--adc-color-accent-text);margin-bottom:var(--adc-space-3)}
.adc-lead{font-size:var(--adc-text-lg);color:var(--adc-color-text-muted);max-width:60ch}
.adc-muted{color:var(--adc-color-text-muted)}
.adc-motto{font-family:var(--adc-font-serif);font-style:italic;font-size:var(--adc-text-xl);color:var(--adc-color-primary)}
.adc-rule{display:block;width:56px;height:2px;background:var(--adc-gold);border:0;margin:var(--adc-space-5) 0}
.adc-rule--center{margin-left:auto;margin-right:auto}
.adc-container{width:100%;max-width:var(--adc-container);margin:0 auto;padding-left:var(--adc-gutter);padding-right:var(--adc-gutter)}
.adc-container--narrow{max-width:var(--adc-container-narrow)}
.adc-skip{position:absolute;left:-9999px;top:8px;z-index:1000;background:var(--adc-color-primary);color:#fff;padding:12px 16px;border-radius:var(--adc-radius)}
.adc-skip:focus{left:8px}
.adc-sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* ---- Sección ---- */
.adc-section{padding:var(--adc-section-y) 0;background:var(--adc-color-bg)}
.adc-section--alt{background:var(--adc-color-bg-alt)}
.adc-section--paper{background:var(--adc-color-surface)}
.adc-section--dark{background:var(--adc-wine-strong);color:var(--adc-color-on-dark)}
.adc-section--dark h1,.adc-section--dark h2,.adc-section--dark h3{color:#fff}
.adc-section--dark .adc-eyebrow{color:var(--adc-gold-bright)}
.adc-section--dark .adc-lead,.adc-section--dark .adc-muted{color:var(--adc-color-on-dark-muted)}
.adc-section--dark a:not(.adc-btn){color:var(--adc-gold-bright)}
.adc-section__head{max-width:720px;margin:0 0 var(--adc-space-7)}
.adc-section__head--center{margin-left:auto;margin-right:auto;text-align:center}
.adc-section__head--center p{margin-left:auto;margin-right:auto}
.adc-grid{display:grid;gap:var(--adc-grid-gap);grid-template-columns:1fr}
@media (min-width:640px){.adc-grid--2,.adc-grid--3,.adc-grid--4{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1024px){.adc-grid--3{grid-template-columns:repeat(3,1fr)}.adc-grid--4{grid-template-columns:repeat(4,1fr)}}

/* ---- Héroe ---- */
.adc-hero{position:relative;overflow:hidden;background:var(--adc-wine-strong);color:var(--adc-color-on-dark);padding:clamp(72px,5rem + 5vw,152px) 0 clamp(64px,4rem + 4vw,128px);isolation:isolate}
.adc-hero::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(1200px 520px at 85% -10%,rgba(217,185,121,.18),transparent 60%),radial-gradient(900px 600px at -10% 120%,rgba(107,29,42,.9),transparent 60%),linear-gradient(160deg,#5A1826 0%,#4A1220 55%,#330C16 100%)}
.adc-hero--photo::before{background:linear-gradient(90deg,rgba(51,12,22,.92) 0%,rgba(74,18,32,.78) 55%,rgba(74,18,32,.35) 100%)}
.adc-hero__media{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover}
.adc-hero__mark{position:absolute;right:max(-80px,-6vw);top:50%;transform:translateY(-50%);width:min(46vw,560px);opacity:.10;z-index:-1;pointer-events:none}
.adc-hero h1,.adc-hero .adc-display{color:#fff;max-width:18ch}
.adc-hero .adc-eyebrow{color:var(--adc-gold-bright)}
.adc-hero .adc-lead{color:var(--adc-color-on-dark-muted);max-width:56ch}
.adc-hero .adc-motto{color:var(--adc-gold-bright)}
.adc-hero__actions{display:flex;flex-wrap:wrap;gap:var(--adc-space-3);margin-top:var(--adc-space-6)}
.adc-hero--light{background:var(--adc-color-bg-alt);color:var(--adc-color-text)}
.adc-hero--light::before{background:radial-gradient(900px 420px at 90% 0%,rgba(184,146,74,.16),transparent 60%)}
.adc-hero--light h1,.adc-hero--light .adc-display{color:var(--adc-color-text)}
.adc-hero--light .adc-eyebrow{color:var(--adc-color-accent-text)}
.adc-hero--light .adc-lead{color:var(--adc-color-text-muted)}
.adc-hero--light .adc-hero__mark{opacity:.07}
.adc-hero--compact{padding:clamp(48px,3rem + 3vw,96px) 0}

/* ---- Botones ---- */
.adc-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5em;min-height:var(--adc-control-h);padding:0 1.4em;border:1.5px solid transparent;border-radius:var(--adc-radius);font-family:var(--adc-font-body);font-size:1rem;font-weight:var(--adc-weight-semibold);line-height:1.2;text-decoration:none!important;cursor:pointer;white-space:nowrap;transition:background var(--adc-dur) var(--adc-ease),color var(--adc-dur) var(--adc-ease),border-color var(--adc-dur) var(--adc-ease),box-shadow var(--adc-dur) var(--adc-ease),transform var(--adc-dur) var(--adc-ease)}
.adc-btn:focus-visible{outline:none;box-shadow:var(--adc-ring)}
.adc-btn:active{transform:translateY(1px)}
.adc-btn--primary{background:var(--adc-color-primary);color:#fff!important;border-color:var(--adc-color-primary)}
.adc-btn--primary:hover{background:var(--adc-color-primary-hover);border-color:var(--adc-color-primary-hover);color:#fff!important}
.adc-btn--secondary{background:transparent;color:var(--adc-color-primary)!important;border-color:var(--adc-color-primary)}
.adc-btn--secondary:hover{background:var(--adc-wine-soft)}
.adc-btn--ghost{background:transparent;color:var(--adc-color-primary)!important;border-color:transparent;padding:0 .75em}
.adc-btn--ghost:hover{background:var(--adc-wine-soft)}
.adc-btn--gold{background:var(--adc-gold-bright);color:var(--adc-wine-deep)!important;border-color:var(--adc-gold-bright)}
.adc-btn--gold:hover{background:#E6C98F;border-color:#E6C98F}
.adc-btn--light{background:#fff;color:var(--adc-wine-strong)!important;border-color:#fff}
.adc-btn--light:hover{background:var(--adc-ivory-2);border-color:var(--adc-ivory-2)}
.adc-btn--outline-light{background:transparent;color:#fff!important;border-color:rgba(250,246,239,.55)}
.adc-btn--outline-light:hover{background:rgba(250,246,239,.1);border-color:#fff}
.adc-btn--danger{background:var(--adc-color-danger);color:#fff!important;border-color:var(--adc-color-danger)}
.adc-btn--sm{min-height:38px;padding:0 1em;font-size:var(--adc-text-sm)}
.adc-btn--lg{min-height:56px;padding:0 1.8em;font-size:1.0625rem}
.adc-btn--block{display:flex;width:100%}
.adc-btn[disabled],.adc-btn.is-disabled{opacity:.5;pointer-events:none}
@media (max-width:480px){.adc-hero__actions .adc-btn{width:100%}}

/* ---- Tarjeta ---- */
.adc-card{position:relative;display:flex;flex-direction:column;background:var(--adc-color-surface);border:1px solid var(--adc-color-line);border-radius:var(--adc-radius-lg);padding:var(--adc-card-pad);box-shadow:var(--adc-shadow-sm);color:var(--adc-color-text)}
.adc-card--link{text-decoration:none!important;transition:box-shadow var(--adc-dur) var(--adc-ease),transform var(--adc-dur) var(--adc-ease),border-color var(--adc-dur) var(--adc-ease)}
.adc-card--link:hover{box-shadow:var(--adc-shadow);transform:translateY(-2px);border-color:var(--adc-color-line-strong)}
.adc-card--flat{box-shadow:none;background:transparent}
.adc-card--accent{border-top:3px solid var(--adc-gold)}
.adc-card__icon{display:inline-grid;place-items:center;width:48px;height:48px;border-radius:12px;background:var(--adc-wine-soft);color:var(--adc-color-primary);font-size:1.25rem;margin-bottom:var(--adc-space-4)}
.adc-card__title{font-family:var(--adc-font-heading);font-size:var(--adc-text-xl);font-weight:var(--adc-weight-semibold);line-height:var(--adc-leading-snug);margin:0 0 var(--adc-space-2);color:var(--adc-color-text)}
.adc-card__meta{font-size:var(--adc-text-sm);color:var(--adc-color-text-muted);margin-bottom:var(--adc-space-3)}
.adc-card__body{flex:1}
.adc-card__body p:last-child{margin-bottom:0}
.adc-card__foot{margin-top:var(--adc-space-5);padding-top:var(--adc-space-4);border-top:1px solid var(--adc-color-line);display:flex;align-items:center;justify-content:space-between;gap:var(--adc-space-3)}
.adc-card__media{margin:calc(var(--adc-card-pad) * -1) calc(var(--adc-card-pad) * -1) var(--adc-space-5);border-radius:var(--adc-radius-lg) var(--adc-radius-lg) 0 0;overflow:hidden;aspect-ratio:16/9;background:var(--adc-ivory-2)}
.adc-card__media img{width:100%;height:100%;object-fit:cover;display:block}

/* ---- Chip / píldora ---- */
.adc-chip{display:inline-flex;align-items:center;gap:.4em;min-height:28px;padding:2px 12px;border-radius:var(--adc-radius-pill);font-size:var(--adc-text-xs);font-weight:var(--adc-weight-semibold);line-height:1.3;background:var(--adc-ivory-2);color:var(--adc-color-text-muted);border:1px solid var(--adc-color-line);white-space:nowrap}
.adc-chip--wine{background:var(--adc-wine-soft);color:var(--adc-color-primary);border-color:var(--adc-wine-soft-2)}
.adc-chip--gold{background:var(--adc-gold-soft);color:var(--adc-gold-text);border-color:#EBDDBE}
.adc-chip--success{background:var(--adc-color-success-soft);color:var(--adc-color-success);border-color:#D9E0C6}
.adc-chip--warning{background:var(--adc-color-warning-soft);color:var(--adc-color-warning);border-color:#F1DDB8}
.adc-chip--danger{background:var(--adc-color-danger-soft);color:var(--adc-color-danger);border-color:#F5CFC9}
.adc-chip--info{background:var(--adc-color-info-soft);color:var(--adc-color-info);border-color:#CFDFEA}
.adc-chip--demo{background:var(--adc-gold-soft);color:var(--adc-gold-text);border:1px dashed var(--adc-gold)}
.adc-chip__dot{width:8px;height:8px;border-radius:50%;background:currentColor}

/* ---- Indicador ---- */
.adc-stat{display:flex;flex-direction:column;gap:var(--adc-space-1);background:var(--adc-color-surface);border:1px solid var(--adc-color-line);border-radius:var(--adc-radius-lg);padding:var(--adc-card-pad)}
.adc-stat__label{font-size:var(--adc-text-sm);font-weight:var(--adc-weight-semibold);color:var(--adc-color-text-muted)}
.adc-stat__value{font-family:var(--adc-font-heading);font-size:clamp(2rem,1.6rem + 1.4vw,2.75rem);font-weight:var(--adc-weight-semibold);line-height:1.05;color:var(--adc-color-primary);font-variant-numeric:lining-nums tabular-nums}
.adc-stat__hint{font-size:var(--adc-text-sm);color:var(--adc-color-text-subtle)}
.adc-stat--dark{background:rgba(250,246,239,.06);border-color:rgba(250,246,239,.16)}
.adc-stat--dark .adc-stat__value{color:var(--adc-gold-bright)}
.adc-stat--dark .adc-stat__label,.adc-stat--dark .adc-stat__hint{color:var(--adc-color-on-dark-muted)}

/* ---- Tabla ---- */
.adc-table-wrap{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--adc-color-line);border-radius:var(--adc-radius-lg);background:var(--adc-color-surface)}
.adc-table{width:100%;border-collapse:separate;border-spacing:0;font-size:var(--adc-text-sm);color:var(--adc-color-text)}
.adc-table th{background:var(--adc-ivory);font-weight:var(--adc-weight-semibold);font-size:var(--adc-text-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--adc-color-text-muted);text-align:left;padding:14px 16px;border-bottom:1px solid var(--adc-color-line);white-space:nowrap}
.adc-table td{padding:14px 16px;border-bottom:1px solid var(--adc-color-line);vertical-align:middle}
.adc-table tr:last-child td{border-bottom:0}
.adc-table tbody tr:hover td{background:#FDFBF7}
.adc-table .is-num{text-align:right;font-variant-numeric:tabular-nums}
@media (max-width:640px){
  .adc-table--stack thead{display:none}
  .adc-table--stack tr{display:block;padding:12px 16px;border-bottom:1px solid var(--adc-color-line)}
  .adc-table--stack td{display:flex;justify-content:space-between;gap:16px;padding:6px 0;border:0}
  .adc-table--stack td::before{content:attr(data-label);font-weight:600;color:var(--adc-color-text-muted)}
}

/* ---- Estado vacío ---- */
.adc-empty{display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--adc-space-3);padding:var(--adc-space-8) var(--adc-space-5);border:1px dashed var(--adc-color-line-strong);border-radius:var(--adc-radius-lg);background:var(--adc-color-surface);color:var(--adc-color-text-muted)}
.adc-empty__icon{width:64px;height:64px;display:grid;place-items:center;border-radius:50%;background:var(--adc-ivory-2);color:var(--adc-gold-text);font-size:1.5rem}
.adc-empty__icon svg{width:32px;height:32px}
.adc-empty__title{font-family:var(--adc-font-heading);font-size:var(--adc-text-xl);font-weight:var(--adc-weight-semibold);color:var(--adc-color-text);margin:0}
.adc-empty p{max-width:46ch;margin:0}

/* ---- Aviso / alerta ---- */
.adc-alert{display:flex;gap:var(--adc-space-3);padding:16px 20px;border-radius:var(--adc-radius);border:1px solid var(--adc-color-line);background:var(--adc-color-surface);font-size:var(--adc-text-sm)}
.adc-alert--info{background:var(--adc-color-info-soft);border-color:#CFDFEA;color:#23465E}
.adc-alert--success{background:var(--adc-color-success-soft);border-color:#D9E0C6;color:#3E4F22}
.adc-alert--warning{background:var(--adc-color-warning-soft);border-color:#F1DDB8;color:#6E4108}
.adc-alert--danger{background:var(--adc-color-danger-soft);border-color:#F5CFC9;color:#8A1B12}
.adc-demo-badge{display:flex;align-items:center;gap:10px;padding:10px 16px;background:var(--adc-gold-soft);border:1px dashed var(--adc-gold);border-radius:var(--adc-radius);color:var(--adc-gold-text);font-size:var(--adc-text-sm);font-weight:var(--adc-weight-semibold)}

/* ---- Formularios ---- */
.adc-field{display:flex;flex-direction:column;gap:6px;margin-bottom:var(--adc-space-5)}
.adc-label{font-weight:var(--adc-weight-semibold);font-size:var(--adc-text-sm);color:var(--adc-color-text)}
.adc-help{font-size:var(--adc-text-xs);color:var(--adc-color-text-subtle)}
.adc-input,.adc-select,.adc-textarea{width:100%;min-height:var(--adc-control-h);padding:10px 14px;border:1.5px solid var(--adc-color-line-strong);border-radius:var(--adc-radius);background:#fff;color:var(--adc-color-text);font:inherit;font-size:1rem;transition:border-color var(--adc-dur),box-shadow var(--adc-dur)}
.adc-textarea{min-height:120px;resize:vertical}
.adc-input:focus,.adc-select:focus,.adc-textarea:focus{outline:none;border-color:var(--adc-color-primary);box-shadow:0 0 0 3px rgba(107,29,42,.14)}
.adc-input[aria-invalid="true"]{border-color:var(--adc-color-danger)}
.adc-error{font-size:var(--adc-text-xs);color:var(--adc-color-danger);font-weight:600}

/* ---- Marca (logotipo en línea) ---- */
.adc-brand{display:inline-flex;align-items:center;gap:12px;text-decoration:none!important;color:inherit}
.adc-brand img,.adc-brand svg{display:block;height:44px;width:auto}
.adc-brand__text{display:flex;flex-direction:column;line-height:1.1}
.adc-brand__name{font-family:var(--adc-font-serif);font-weight:600;font-size:1.25rem;color:var(--adc-color-primary)}
.adc-brand__desc{font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;color:var(--adc-color-accent-text);font-weight:600}

/* ---- Cita / oración ---- */
.adc-quote{position:relative;margin:0;padding:var(--adc-space-6) 0 var(--adc-space-6) var(--adc-space-6);border-left:2px solid var(--adc-gold);font-family:var(--adc-font-serif);font-style:italic;font-size:var(--adc-text-xl);line-height:1.45;color:var(--adc-color-text)}
.adc-quote cite{display:block;margin-top:var(--adc-space-3);font-family:var(--adc-font-body);font-style:normal;font-size:var(--adc-text-sm);color:var(--adc-color-text-muted)}

@media (prefers-reduced-motion:reduce){.adc-btn,.adc-card--link{transition:none}.adc-card--link:hover{transform:none}}
@media print{.adc-hero{background:#fff!important;color:#000}.adc-hero::before{display:none}.adc-btn{border:1px solid #000}}
