/* TramiPago · consolidado sin imports encadenados. */
/* TramiPago · sistema visual unificado */
:root {
  --ui-border: #111827;
  --ui-green: #1f9d55;
  --ui-green-dark: #167b43;
  --ui-blue: #1769aa;
  --ui-cyan: #bfeef8;
  --ui-yellow: #f4c430;
  --ui-radius: 10px;
  --ui-border-width: 2px;
  --ui-shadow: 0 5px 14px rgba(15, 32, 52, .10);
  --ui-shadow-hover: 0 8px 20px rgba(31, 157, 85, .18);
  --home-tile-size: clamp(160px, 16.5vw, 205px);
}

.sr-only {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

.site-header { border-bottom: 1px solid #d7e0e8; box-shadow: 0 2px 10px rgba(15, 32, 52, .05); }
.main-nav { gap: 7px; }
.main-nav a,.main-nav button,.button { min-height:42px;border:var(--ui-border-width) solid var(--ui-border);border-radius:var(--ui-radius);box-shadow:0 2px 0 rgba(17,24,39,.08);font-weight:750;text-transform:none;transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease,background .15s ease; }
.main-nav a,.main-nav button { display:inline-flex;align-items:center;justify-content:center;width:108px;min-width:108px;height:36px;min-height:36px;padding:4px 8px;border:3px solid #050505;border-radius:8px;box-shadow:0 4px 8px rgba(0,0,0,.36);text-decoration:none;cursor:pointer;font:inherit;font-size:.84rem;line-height:1.05;flex:0 0 108px; }
.main-nav a:hover,.main-nav a:focus-visible,.main-nav button:hover,.main-nav button:focus-visible,.button:hover,.button:focus-visible { border-color:var(--ui-green);box-shadow:0 0 0 2px rgba(31,157,85,.22),0 5px 10px rgba(0,0,0,.34);outline:none;transform:translateY(-1px); }
.main-nav a.nav-home,.main-nav a.nav-tracking,.main-nav button.nav-whatsapp { border:3px solid #050505;border-radius:8px; }
.main-nav a.nav-home { color:#082a45;background:var(--ui-cyan); }
.main-nav a.nav-tracking { color:#fff;background:var(--ui-blue); }
.main-nav button.nav-whatsapp { color:#fff;background:var(--ui-green); }
.main-nav button.nav-whatsapp:hover,.main-nav button.nav-whatsapp:focus-visible { border-color:#64dc93;background:var(--ui-green-dark); }
.button-whatsapp,.button-primary { color:#fff;background:var(--ui-green); }
.button-primary:hover,.button-primary:focus-visible { background:var(--ui-green-dark); }
.button-secondary { color:#17324a;background:#fff; }

.home-hero-clean { padding:22px 0 8px;border-bottom:0; }
.home-hero-clean .home-hero-inner { display:block;text-align:center; }
.home-hero-clean .home-hero-copy h1 { max-width:none;margin:0;font-size:clamp(1.9rem,3.8vw,2.7rem); }
.home-catalog { padding:12px 0 38px;background:#fff; }
.home-featured-row,.home-family-row { display:grid;justify-content:center;gap:18px; }
.home-featured-row { grid-template-columns:var(--home-tile-size);margin-bottom:18px; }
.home-family-row { grid-template-columns:repeat(4,var(--home-tile-size)); }
.home-section-title { margin:4px 0 14px;text-align:center;font-size:1.15rem; }
.home-tile { position:relative;display:block;width:var(--home-tile-size);aspect-ratio:1/1;padding:0;overflow:hidden;border:var(--ui-border-width) solid var(--ui-border);border-radius:var(--ui-radius);background:#fff;box-shadow:var(--ui-shadow);cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease; }
.home-tile:hover,.home-tile:focus-visible { border-color:var(--ui-green);box-shadow:0 0 0 3px rgba(31,157,85,.22),var(--ui-shadow-hover);outline:none;transform:translateY(-2px); }
.home-tile:active { transform:translateY(0); }
.home-tile-media,.home-primary-logo { display:block!important;width:100%!important;height:100%!important;overflow:hidden;border-radius:0!important;background-size:cover!important;background-position:center!important; }
.home-tile-featured .home-primary-logo { background-size:106% 106%!important;background-repeat:no-repeat!important; }
.home-tile-media img { display:block;width:100%;height:100%;object-fit:cover;transform:scale(1.06);transform-origin:center; }

.family-heading,.family-service-card,.panel { border-radius:12px; }
.family-heading { border:1px solid #cbd6df; }
.family-heading img { border:var(--ui-border-width) solid var(--ui-border);border-radius:var(--ui-radius); }
.family-service-card { border:1px solid #cbd6df;box-shadow:0 5px 16px rgba(15,32,52,.06); }
.process-container { max-width:980px; }
.process-content { max-width:900px;margin:0 auto; }
.process-top { align-items:center; }
.process-title p:last-child { max-width:720px; }
.form-control,.form-select,.form-check,.choice-option,.eligibility-question { border-radius:9px; }
.form-control,.form-select { border:1px solid #aebdca; }
.form-control:focus,.form-select:focus { border-color:var(--ui-green);box-shadow:0 0 0 3px rgba(31,157,85,.13);outline:none; }
.choice-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px; }
.choice-field { border:0;padding:0;margin:0; }
.choice-field legend { margin-bottom:8px;color:var(--navy);font-weight:700; }
.choice-option { display:flex;align-items:center;gap:10px;min-height:58px;padding:12px;border:var(--ui-border-width) solid #b9c6d1;background:#fff;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease; }
.choice-option:hover,.choice-option:focus-within { border-color:var(--ui-green);box-shadow:0 0 0 2px rgba(31,157,85,.12); }
.choice-option:has(input:checked) { border-color:var(--ui-green);background:#effaf4;box-shadow:0 0 0 2px rgba(31,157,85,.14); }
.choice-option input { width:18px;height:18px;flex:0 0 auto;accent-color:var(--ui-green); }
.choice-option span { display:grid;gap:2px; }
.choice-option small { color:#64788a; }
.eligibility-list { display:grid;gap:14px;margin-top:20px; }
.eligibility-question { margin:0;padding:15px;border:1px solid #cbd6df;background:#f9fbfd; }
.eligibility-question legend { padding:0 6px;color:#103b68;font-weight:750; }
.eligibility-options { display:grid;grid-template-columns:repeat(2,minmax(100px,150px));gap:10px;margin-top:8px; }
.compact-choice { min-height:48px; }
.privacy-help { display:block;margin-top:6px; }
.privacy-help a { color:#125f92; }
.payment-file { margin-top:18px; }
.notice-danger { color:#7b1f18;background:#fff1ef;border-color:#dc8b82; }
.ineligible-panel { max-width:720px;margin:0 auto;padding:34px 28px;text-align:center;border:2px solid #b42318;background:#fff7f6; }
.ineligible-icon { display:block;width:auto;height:auto;margin:0 auto 12px;color:inherit;background:transparent;font-size:4rem;line-height:1; }
.ineligible-panel p { max-width:580px;margin:0 auto 18px;color:#63312d; }
.status-badge { border:1px solid #9cb8cd; }
.needs-info-box { margin:18px 0;padding:16px;border:1px solid #d7b743;border-radius:10px;background:#fff8d8; }
.confirmation-actions { justify-content:center; }
.admin-toolbar { display:grid;grid-template-columns:minmax(150px,1fr) minmax(180px,1.2fr) auto;gap:12px;align-items:end;margin-bottom:18px; }
.admin-toolbar h2 { margin-bottom:0; }
.admin-file-box,.requested-fields-box { margin-bottom:18px;padding:15px;background:#f7fbfe;border:1px solid #d8e2ea;border-radius:10px; }
.requested-fields-box { margin-top:18px; }
.requested-fields-box legend { padding:0 6px;color:#103b68;font-weight:700; }
.requested-fields-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px; }
.requested-field { padding:9px; }
.requested-field .form-check-label { font-size:.88rem; }
.file-admin-link { display:inline-block;color:#087af0;font-weight:700;overflow-wrap:anywhere; }
.admin-data-section { margin-top:26px; }
.config-main-grid { display:grid;grid-template-columns:2fr 1fr;gap:12px;margin-top:14px; }
.config-option-card { display:grid;gap:10px;padding:12px;background:#fff;border:1px solid #d8e2ea;border-radius:9px; }
.admin-backup-tools { display:grid;gap:10px;margin-bottom:18px; }
.admin-backup-tools>div { display:flex;flex-wrap:wrap;gap:8px; }
.legal-links { display:flex;flex-wrap:wrap;gap:12px; }
.legal-links a { color:inherit; }
.site-footer .legal-links a { font-weight:500!important; }
.whatsapp-float { display:none!important; }

#data-form .form-grid:has(input[name="adultEligibility"]) { grid-template-columns:repeat(4,minmax(0,1fr))!important; }
#data-form .form-grid:has(input[name="adultEligibility"])>.field { grid-column:span 2; }
#data-form .form-grid:has(input[name="adultEligibility"])>.field.field-full { grid-column:1/-1; }
#data-form .form-grid:has(input[name="adultEligibility"])>.field:has(input[name="adultEligibility"]),#data-form .form-grid:has(input[name="adultEligibility"])>.field:has(input[name="argentineDniEligibility"]),#data-form .form-grid:has(input[name="adultEligibility"])>.field:has(input[name="dniFile"]) { grid-column:span 2; }
#data-form .form-grid:has(input[name="adultEligibility"])>.field:has(input[name="locality"]),#data-form .form-grid:has(input[name="adultEligibility"])>.field:has(input[name="district"]) { grid-column:span 1; }
.field:has(input[type="file"])>small:not(.existing-file):not(.existing-file-note) { display:inline;margin-top:4px;margin-right:8px; }
.field:has(input[type="file"])>.upload-optimizer-note { display:inline!important;margin-left:0!important; }
.existing-file,.existing-file-note { display:block!important; }

@media(max-width:980px){:root{--home-tile-size:clamp(155px,24vw,190px)}.home-family-row{grid-template-columns:repeat(2,var(--home-tile-size))}.admin-toolbar{grid-template-columns:1fr}}
@media(max-width:760px){.header-inner{flex-wrap:wrap;gap:10px;padding:10px 0}.main-nav{width:100%;order:3;gap:6px}.main-nav a,.main-nav button{width:auto;min-width:0;height:34px;min-height:34px;padding:4px 6px;border-width:3px;font-size:.78rem;flex:1 1 0}.choice-grid,.service-summary{grid-template-columns:1fr}.requested-fields-grid,.config-main-grid{grid-template-columns:1fr}#data-form .form-grid:has(input[name="adultEligibility"]){grid-template-columns:1fr!important}#data-form .form-grid:has(input[name="adultEligibility"])>.field,#data-form .form-grid:has(input[name="adultEligibility"])>.field.field-full,#data-form .form-grid:has(input[name="adultEligibility"])>.field:has(input[name="adultEligibility"]),#data-form .form-grid:has(input[name="adultEligibility"])>.field:has(input[name="argentineDniEligibility"]),#data-form .form-grid:has(input[name="adultEligibility"])>.field:has(input[name="dniFile"]),#data-form .form-grid:has(input[name="adultEligibility"])>.field:has(input[name="locality"]),#data-form .form-grid:has(input[name="adultEligibility"])>.field:has(input[name="district"]){grid-column:1/-1}}
@media(max-width:520px){:root{--home-tile-size:min(42vw,155px)}.container{width:min(100% - 24px,1120px)}.home-catalog{padding-top:8px}.home-family-row{gap:12px}.home-featured-row{margin-bottom:14px}.eligibility-options{grid-template-columns:1fr 1fr}.process-top{align-items:stretch;flex-direction:column}.step-actions{position:static;margin:20px 0 0;padding:14px 0 0;border-radius:0;background:transparent}}
@media(max-width:340px){.home-family-row{grid-template-columns:var(--home-tile-size)}}

.site-main { background:radial-gradient(circle at 88% 10%,rgba(41,182,246,.10),transparent 24%),linear-gradient(180deg,#e7f2f8 0%,#f2f7fa 54%,#eaf3f8 100%); }
.tracking-page { padding:26px 0 52px;background:transparent; }
.family-page { padding-top:26px; }
.process-shell { padding-top:22px; }
.site-main .section-heading h1,.site-main .family-heading h1,.site-main .process-title h1 { max-width:none;margin-bottom:6px;font-size:clamp(1.65rem,2.8vw,2.2rem);line-height:1.08;letter-spacing:-.025em; }
.tracking-page .section-heading { align-items:center;margin-bottom:16px; }
.tracking-page .section-heading p { margin:0;font-size:.95rem; }
@media(max-width:680px){.tracking-page{padding:20px 0 40px}.family-page,.process-shell{padding-top:18px}.site-main .section-heading h1,.site-main .family-heading h1,.site-main .process-title h1{font-size:clamp(1.5rem,7vw,1.85rem)}}


/* Ajuste visual: títulos blancos de las tarjetas del inicio más livianos. */
.catalog-card-title {
  font-size: .8125rem !important;
  font-weight: 600 !important;
  line-height: 1.18 !important;
  letter-spacing: .005em;
}

/*
  Directiva visual permanente de TramiPago:
  - Los encabezados de familias y trámites se centran como bloque.
  - Los títulos de secciones se centran sobre su grupo de tarjetas.
  - Las filas de tarjetas se centran dentro del contenido.
  - Los textos de las tarjetas conservan su alineación izquierda.
  - Los campos y etiquetas de formularios conservan alineación izquierda por legibilidad.
*/

/* Encabezados generales de familias. */
.family-page .family-heading {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 138px !important;
  padding: 22px 150px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
}

.family-page .family-heading > div {
  width: 100% !important;
  max-width: 720px !important;
  margin: 0 auto !important;
  text-align: center !important;
}

.family-page .family-heading .eyebrow,
.family-page .family-heading h1,
.family-page .family-heading p {
  max-width: none !important;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
}

.family-page .family-heading img {
  position: absolute !important;
  left: 22px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
}

/* Filas y títulos internos de cada familia. */
.family-page .family-service-grid,
.family-page .family-service-row,
.partidas-jurisdiction-grid,
.partidas-type-grid {
  justify-content: center !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

body .arca-family-page .arca-service-group-title,
.partidas-selector-heading,
.partidas-type-heading,
.family-page .family-section-title {
  width: 100% !important;
  text-align: center !important;
}

body .arca-family-page .arca-service-group-title {
  text-align: center !important;
}

/*
  Flujo común de TODOS los trámites.
  Título, progreso y formulario usan el mismo eje y el mismo ancho útil.
  El texto conserva salto natural según el ancho disponible: no se fuerza cantidad de líneas.
*/
body .process-shell {
  padding-top: 16px !important;
  padding-bottom: 34px !important;
}

body .process-shell .process-container {
  width: min(1040px, calc(100% - 32px)) !important;
  max-width: 1040px !important;
  margin: 0 auto !important;
}

body .process-shell .process-top,
body .process-shell .stepper,
body .process-shell .process-content {
  width: 100% !important;
  max-width: 1000px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

body .process-shell .process-top {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-bottom: 10px !important;
  padding: 11px 18px !important;
  text-align: center !important;
  border-radius: 12px !important;
}

body .process-shell .process-title {
  width: 100% !important;
  max-width: none !important;
  margin: 0 auto !important;
  text-align: center !important;
}

body .process-shell .process-title .eyebrow {
  display: none !important;
}

body .site-main .process-shell .process-title h1 {
  max-width: none !important;
  margin: 0 0 4px !important;
  font-size: clamp(1.45rem, 2.15vw, 1.85rem) !important;
  line-height: 1.08 !important;
  letter-spacing: -.02em !important;
  text-align: center !important;
}

body .site-main .process-shell .process-title > p:not(.eyebrow) {
  max-width: none !important;
  margin: 0 auto !important;
  color: var(--text-muted) !important;
  font-size: clamp(.84rem, 1.05vw, .92rem) !important;
  line-height: 1.35 !important;
  text-align: center !important;
}

body .process-shell .stepper {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 8px !important;
  margin-top: 0 !important;
  margin-bottom: 12px !important;
  overflow: visible !important;
  padding-bottom: 0 !important;
}

body .process-shell .step {
  justify-content: center !important;
  min-width: 0 !important;
  padding: 8px 10px !important;
  font-size: .86rem !important;
  line-height: 1.2 !important;
  text-align: center !important;
  border-bottom-width: 2px !important;
}

body .process-shell .step-number {
  flex-basis: 27px !important;
  width: 27px !important;
  height: 27px !important;
}

body .process-shell .process-content > .panel {
  width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding: 18px 20px !important;
  border-radius: 12px !important;
}

body .process-shell .panel-header {
  margin-bottom: 10px !important;
  text-align: center !important;
}

body .process-shell .panel-header h2,
body .process-shell .panel-header h3,
body .process-shell .panel-header p {
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
}

body .process-shell .panel-header h2 {
  margin-bottom: 3px !important;
  font-size: 1.15rem !important;
  line-height: 1.2 !important;
}

body .process-shell .panel-header p {
  margin-bottom: 0 !important;
  font-size: .88rem !important;
  line-height: 1.35 !important;
}

/* El resumen repetía lo que ya explica el encabezado y alargaba todos los formularios. */
body .process-shell .service-quick-summary {
  display: none !important;
}

body .process-shell .form-grid {
  gap: 12px 14px !important;
}

body .process-shell .field {
  gap: 5px !important;
}

body .process-shell .form-control {
  min-height: 43px !important;
  padding-top: 8px !important;
  padding-bottom: 8px !important;
}

body .process-shell .form-check {
  padding: 10px 11px !important;
}

body .process-shell .step-actions {
  margin-top: 14px !important;
  margin-left: -20px !important;
  margin-right: -20px !important;
  margin-bottom: -18px !important;
  padding: 12px 20px !important;
  border-radius: 0 0 12px 12px !important;
}

/* Títulos de seguimiento y otros paneles: misma jerarquía, sin tocar campos. */
.tracking-page .panel-header,
.confirmation,
.partidas-selector-heading,
.partidas-type-heading {
  text-align: center !important;
}

.tracking-page .panel-header h2,
.tracking-page .panel-header h3,
.tracking-page .panel-header p {
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
}

/* Los títulos de tarjetas permanecen a la izquierda: patrón del Inicio. */
.catalog-card-info,
.family-service-card > div,
.family-service-card h2,
.family-service-card p {
  text-align: left !important;
}

/* Formularios: campos y etiquetas a la izquierda por legibilidad. */
.form-grid,
.field,
.field label,
.form-check,
.form-check-label,
.choice-field,
.choice-option {
  text-align: left !important;
}

@media (max-width: 760px) {
  .family-page .family-heading {
    flex-direction: column !important;
    min-height: 0 !important;
    padding: 18px 16px !important;
    gap: 12px !important;
  }

  .family-page .family-heading img {
    position: static !important;
    transform: none !important;
    margin: 0 auto !important;
  }

  .family-page .family-heading > div {
    max-width: 100% !important;
  }

  body .process-shell {
    padding-top: 12px !important;
    padding-bottom: 28px !important;
  }

  body .process-shell .process-container {
    width: min(100% - 24px, 680px) !important;
  }

  body .process-shell .process-top {
    padding: 10px 12px !important;
    margin-bottom: 8px !important;
  }

  body .site-main .process-shell .process-title h1 {
    font-size: clamp(1.28rem, 5.8vw, 1.55rem) !important;
  }

  body .site-main .process-shell .process-title > p:not(.eyebrow) {
    font-size: .82rem !important;
    line-height: 1.32 !important;
  }

  body .process-shell .stepper {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 4px !important;
    margin-bottom: 9px !important;
    overflow: visible !important;
  }

  body .process-shell .step {
    gap: 5px !important;
    padding: 7px 3px !important;
    font-size: .74rem !important;
  }

  body .process-shell .step-number {
    flex-basis: 23px !important;
    width: 23px !important;
    height: 23px !important;
    font-size: .7rem !important;
  }

  body .process-shell .process-content > .panel {
    padding: 15px 14px !important;
  }

  body .process-shell .panel-header {
    margin-bottom: 8px !important;
  }

  body .process-shell .panel-header h2 {
    font-size: 1.05rem !important;
  }

  body .process-shell .form-control {
    min-height: 44px !important;
  }

  body .process-shell .step-actions {
    margin: 14px -14px -15px !important;
    padding: 11px 14px !important;
  }
}

@media (max-width: 680px) {
  .catalog-card-title {
    font-size: .75rem !important;
  }
}

/* TramiPago · progreso por óvalos + contraste de formularios · 2026-09-15 */
body .process-shell .stepper {
  position: relative !important;
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 24px !important;
  margin: 2px auto 14px !important;
  padding: 0 !important;
  overflow: visible !important;
}

body .process-shell .step {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  min-height: 44px !important;
  padding: 8px 14px !important;
  color: #476477 !important;
  background: #edf4f8 !important;
  border: 1px solid #c5d5df !important;
  border-radius: 999px !important;
  box-shadow: 0 2px 7px rgba(8,42,71,.08) !important;
  font-weight: 750 !important;
  line-height: 1.1 !important;
}

body .process-shell .step:not(:last-child)::after {
  content: "→";
  position: absolute;
  top: 50%;
  right: -19px;
  z-index: 3;
  transform: translateY(-52%);
  color: #29B6F6;
  font-size: 1.05rem;
  font-weight: 900;
  line-height: 1;
}

body .process-shell .step-number {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex: 0 0 27px !important;
  width: 27px !important;
  height: 27px !important;
  color: #31576e !important;
  background: #ffffff !important;
  border: 1px solid #b9ccd8 !important;
  border-radius: 50% !important;
  box-shadow: none !important;
  font-size: .78rem !important;
  font-weight: 850 !important;
}

body .process-shell .step.current {
  color: #ffffff !important;
  background: #1B6FA8 !important;
  border-color: #155b8b !important;
  box-shadow: 0 4px 12px rgba(27,111,168,.22) !important;
}

body .process-shell .step.current .step-number {
  color: #0B3D66 !important;
  background: #dff4ff !important;
  border-color: #ffffff !important;
}

body .process-shell .step.done,
body .process-shell .stepper.is-complete .step {
  color: #ffffff !important;
  background: #23A85D !important;
  border-color: #178347 !important;
  box-shadow: 0 4px 12px rgba(35,168,93,.22) !important;
}

body .process-shell .step.done .step-number,
body .process-shell .stepper.is-complete .step-number {
  color: #126B3A !important;
  background: #ffffff !important;
  border-color: rgba(255,255,255,.95) !important;
}

body .process-shell .process-top {
  background: linear-gradient(180deg,#ffffff 0%,#f4faff 100%) !important;
  border: 1px solid #bfd4e2 !important;
  box-shadow: 0 4px 12px rgba(8,42,71,.07) !important;
}

body .process-shell .process-content > .panel {
  background: #f7fbfd !important;
  border: 1px solid #bfd0dc !important;
  box-shadow: 0 5px 16px rgba(8,42,71,.09) !important;
}

body .process-shell .panel-header {
  padding: 10px 14px !important;
  margin: -2px 0 13px !important;
  background: #e7f2f8 !important;
  border: 1px solid #c3d9e6 !important;
  border-radius: 9px !important;
}

body .process-shell .panel-header h2,
body .process-shell .panel-header h3 {
  color: #082A47 !important;
  font-weight: 800 !important;
}

body .process-shell .field > label,
body .process-shell .choice-field > legend {
  color: #0B3D66 !important;
  font-weight: 750 !important;
}

body .process-shell .choice-option {
  background: #ffffff !important;
  border-color: #b7cbd8 !important;
}

body .process-shell .choice-option:has(input:checked) {
  background: #effaf4 !important;
  border-color: #23A85D !important;
  box-shadow: 0 0 0 2px rgba(35,168,93,.12) !important;
}

@media (max-width: 760px) {
  body .process-shell .stepper {
    gap: 12px !important;
    margin-bottom: 11px !important;
  }

  body .process-shell .step {
    min-height: 40px !important;
    gap: 5px !important;
    padding: 7px 7px !important;
    font-size: .72rem !important;
  }

  body .process-shell .step-number {
    flex-basis: 23px !important;
    width: 23px !important;
    height: 23px !important;
    font-size: .68rem !important;
  }

  body .process-shell .step:not(:last-child)::after {
    right: -10px;
    font-size: .8rem;
  }

  body .process-shell .panel-header {
    padding: 9px 10px !important;
    margin-bottom: 11px !important;
  }
}

