/* =========================================================
   FILE: style_custom.css
   VERSION: v2.0.0
   UPDATED: 2026-02-05 America/Mexico_City
   AUTHOR: Steve
   CHANGE: Limpieza: elimina duplicados ui/fonts/calendar; deja legacy útil + badges pastel + utilidades
   ========================================================= */

/* Menú (legacy) */
.menu-item-active{border-right:solid 2px green}
.menu-item-active .menu-titulo{background-color:#fff}
.menu-item-background{background-color:#fff}

/* Estado respuestas */
.correcta{color:green;font-weight:400}
.incorrecta{color:red;font-weight:400}

/* Selector/lista (legacy) */
.form_list_container{
  width:100%;
  height:250px;
  max-height:240px;
  overflow:auto;
  border-radius:5px;
  border:solid 1px #ccc;
}
.form_list_container a{
  border-bottom:dashed .04rem #ccc;
  background-color:#fff;
  display:block;
  font-weight:600;
  color:#999;
  cursor:pointer;
  padding:.6rem;
  margin:0;
}
.form_list_container a:hover{background-color:rgb(210,229,246)}


#ciudades_list{
  height:150px;
  overflow-x:hidden;
  overflow-y:auto;
  border:solid 1px #ccc;
}

/* Horarios (legacy) */
.hour_box{
  width:13px;
  height:21px;
  border:solid .05rem #ccc;
  margin-left:1px;
  padding:1px;
  padding-top:5px;
  font-size:7px;
  color:#ccc;
  text-align:center;
  border-radius:2px;
}
.hour_box_selected{background-color:#566985;color:#fff}

/* Tabla compacta (legacy) */
.table-custom-sm td{
  padding:.4rem;
  margin:0;
  text-align:center;
  font-size:10px;
  border:dashed .025rem #ddd;
}
.table-custom-sm th{
  padding:.25rem;
  text-align:center;
  font-size:11px;
}

/* Helpers */
.border-b{border-bottom:1px solid #c9c9c9 !important}
.b-right{border-right:1px solid #c9c9c9}
.bgWhite{background:#fff}
.p20{padding:20px}

.pull-left,.left{float:left}
.pull-right,.right{float:left}


/* Breadcrumb (legacy) */
.breadcrumb{
  background:none;
  padding:0;
  margin:0;
}

/* Parallax (legacy) */
.parallax-window{background-size:80%}

/* Responsive tables (legacy) */
@media screen and (max-width:600px){
  table{width:100%}
  thead{display:none}
  tr:nth-of-type(2n){background-color:inherit}
  tr td:first-child{
    font-weight:400;
    font-size:1.3em;
  }
  tbody td{
    display:block;
    text-align:center;
  }
  tbody td:before{
    content:attr(data-th);
    display:block;
    text-align:center;
  }
}

/* Print grid (legacy) */
@media print{
  .col-print-1{flex:0 0 8.33333%;max-width:8.33333%}
  .col-print-2{flex:0 0 16.66667%;max-width:16.66667%}
  .col-print-3{flex:0 0 25%;max-width:25%}
  .col-print-4{flex:0 0 33.33333%;max-width:33.33333%}
  .col-print-5{flex:0 0 41.66667%;max-width:41.66667%}
  .col-print-6{flex:0 0 50%;max-width:50%}
  .col-print-7{flex:0 0 58.33333%;max-width:58.33333%}
  .col-print-8{flex:0 0 66.66667%;max-width:66.66667%}
  .col-print-9{flex:0 0 75%;max-width:75%}
  .col-print-10{flex:0 0 83.33333%;max-width:83.33333%}
  .col-print-11{flex:0 0 91.66667%;max-width:91.66667%}
  .col-print-12{flex:0 0 100%;max-width:100%}
}

/* Formato (legacy) — OJO: wrap-form estaba en rojo; lo neutralizo */
.wrap-form{
  margin-top:5%;
  background:transparent;
  height:auto;
  padding:30px;
}

.formato{
  background-color:#fff;
  border:1px solid #f7f7f7;
  border-radius:20px;
  box-shadow:0 4px 8px rgba(0,0,0,.08);
  display:flex;
  position:relative;
  width:100%;
  height:75px;
  margin-left:0;
}


.btn-continue{
  width:70% !important;
  height:51px !important;
  font-size:1.8em !important;
  border-radius:20px !important;
}

.formato-responsive{
  background-color:#fff !important;
  border:1px solid #f7f7f7;
  border-radius:20px;
  box-shadow:0 4px 8px rgba(0,0,0,.08);
  display:flex;
  position:relative;
  width:100%;
  height:265px;
  margin-left:0;
  border-bottom:3px solid #007bff;
}

.btn-responsive{
  width:100% !important;
  height:35px !important;
  font-size:1.8em !important;
  border-radius:20px !important;
}

/* Box (legacy) */
.box{
  border-left:12px solid #e5e7f2;
  box-shadow:0 0 5px rgba(0,0,0,.6);
}

.hr_color_secondary{
  width:100% !important;
  height:2px !important;
  background:#fe625f !important;
}

/* Fondo helper */
.bg{
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  z-index:1;
  background-size:cover;
  background-attachment:scroll;
  background-position:center;
  background-repeat:repeat;
  background-origin:content-box;
}

/* No-list */
.no_list{list-style:none !important}

/* Badges pastel (se queda aquí si se usa en muchas páginas legacy) */
.badge,
.ui-badge,
.badge-primary,
.badge-secondary,
.badge-success,
.badge-warning,
.badge-danger,
.badge-info,
.badge-light,
.badge-dark,
.badge.bg-primary,
.badge.bg-secondary,
.badge.bg-success,
.badge.bg-warning,
.badge.bg-danger,
.badge.bg-info,
.badge.bg-light,
.badge.bg-dark{
  font-size:10.5px !important;
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:5px 10px !important;
  font-weight:700 !important;
  line-height:.9 !important;
  border:.5px solid transparent !important;
  letter-spacing:-.01em;
  text-transform:none !important;
  white-space:nowrap;
  border-radius:7px;
}

.badge *,.ui-badge *{color:inherit !important}

.badge-primary,.badge.bg-primary{
  background:rgba(59,130,246,.14) !important;
  border-color:rgba(59,130,246,.28) !important;
  color:rgba(29,78,216,.92) !important;
}
.badge-secondary,.badge.bg-secondary{
  background:rgba(255,145,0,.14) !important;
  border-color:rgba(255,145,0,.28) !important;
  color:var(--c-orange, #fe625f) !important;
}
.badge-success,.badge.bg-success{
  background:rgba(16,185,129,.14) !important;
  border-color:rgba(16,185,129,.28) !important;
  color:rgba(6,95,70,.92) !important;
}
.badge-warning,.badge.bg-warning{
  background:rgba(245,158,11,.16) !important;
  border-color:rgba(245,158,11,.30) !important;
  color:rgba(146,64,14,.92) !important;
}
.badge-danger,.badge.bg-danger{
  background:rgba(239,68,68,.14) !important;
  border-color:rgba(239,68,68,.28) !important;
  color:rgba(153,27,27,.92) !important;
}
.badge-info,.badge.bg-info{
  background:rgba(6,182,212,.14) !important;
  border-color:rgba(6,182,212,.28) !important;
  color:rgba(14,116,144,.92) !important;
}
.badge-light,.badge.bg-light{
  background:rgba(17,24,39,.06) !important;
  border-color:rgba(17,24,39,.10) !important;
  color:rgba(17,24,39,.82) !important;
}
.badge-dark,.badge.bg-dark{
  background:rgba(17,24,39,.10) !important;
  border-color:rgba(17,24,39,.22) !important;
  color:rgba(17,24,39,.92) !important;
}
.badge-outline{
  background:transparent !important;
  border-color:rgba(17,24,39,.16) !important;
  color:rgba(17,24,39,.75) !important;
}
.badge-soft{
  background:rgba(17,24,39,.06) !important;
  border-color:rgba(17,24,39,.10) !important;
  color:rgba(17,24,39,.78) !important;
}
.badge-lg{padding:8px 14px !important;font-size:12px !important}
.badge-sm{padding:5px 10px !important;font-size:10px !important}

.badge-dot::before{
  content:"";
  width:7px;
  height:7px;
  display:inline-block;
  background:currentColor;
  opacity:.65;
}

/* =========================================================
   Legacy Font Reduce 10%
   ========================================================= */
.hour_box{
  font-size:6.3px;
}

.table-custom-sm td{
  font-size:9px;
}

.table-custom-sm th{
  font-size:9.9px;
}


.btn-continue,
.btn-responsive{
  font-size:1.62em !important;
}

.btn-xxs{
  font-size:.54rem !important;
}

.btn-xs{
  font-size:.621rem !important;
}

.btn-sm{
  font-size:.666rem !important;
}

.btn-md{
  font-size:.711rem !important;
}

.btn-lg{
  font-size:1.01rem !important;
}

.btn-xl{
  font-size:.828rem !important;
}

.btn-normalize-xs .btn{
  font-size:.585em !important;
}

.btn-normalize .btn{
  font-size:.81em !important;
}

.dropdown-sm ul li a{
  font-size:11.7px !important;
}
/* ================================================================
   pages.css — Unified CSS for Ceneval help & content pages
   ================================================================ */

/* ── Shared: Help page components (ha-*) ── */
.ha-pill{display:inline-flex;align-items:center;gap:.45rem;padding:.5rem 1rem;border-radius:999px;background:rgba(242,140,40,.12);border:1px solid rgba(242,140,40,.28);font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#f28c28}
.ha-title{font-size:clamp(1.8rem,3vw,2.6rem);font-weight:800;letter-spacing:-.035em;line-height:1.15;color:#0f172a;margin:.9rem 0 1rem}
.ha-lead{font-size:1.02rem;color:#475569;line-height:1.75;max-width:700px;margin-bottom:2rem}
.ha-section-title{font-size:clamp(1.3rem,2vw,1.6rem);font-weight:800;color:#0f172a;letter-spacing:-.02em;margin-bottom:1.2rem;display:flex;align-items:center;gap:.5rem}
.ha-cards{display:grid;gap:1.5rem}
.ha-card{padding:1.8rem;border-radius:18px;background:#fff;border:1px solid rgba(0,0,0,.06);box-shadow:0 8px 30px rgba(16,24,40,.05);transition:box-shadow .3s,transform .3s}
.ha-card:hover{box-shadow:0 16px 44px rgba(16,24,40,.09);transform:translateY(-2px)}
.ha-card-icon{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:20px;margin-bottom:.8rem}
.ha-card-icon.blue{background:rgba(62,81,122,.12);color:#3E517A}
.ha-card-icon.orange{background:rgba(242,140,40,.14);color:#f28c28}
.ha-card-icon.green{background:rgba(16,185,129,.12);color:#10b981}
.ha-card-icon.purple{background:rgba(139,92,246,.12);color:#8b5cf6}
.ha-card-icon.rose{background:rgba(244,63,94,.12);color:#f43f5e}
.ha-card-icon.cyan{background:rgba(6,182,212,.12);color:#06b6d4}
.ha-card-icon.teal{background:rgba(20,184,166,.12);color:#14b8a6}
.ha-card h2{font-size:1.05rem;font-weight:800;color:#0f172a;margin-bottom:.4rem}
.ha-card p{font-size:.88rem;color:#64748b;line-height:1.65;margin-bottom:.5rem}
.ha-card ul{list-style:none;padding:0;margin:.5rem 0 0}
.ha-card ul li{display:flex;align-items:flex-start;gap:.5rem;padding:.25rem 0;font-size:.85rem;color:#334155;font-weight:500}
.ha-card ul li i{color:#10b981;font-size:.82rem;margin-top:.18rem;flex-shrink:0}
.ha-link{font-size:.85rem;font-weight:700;color:#f28c28;text-decoration:none;display:inline-flex;align-items:center;gap:.3rem}
.ha-link:hover{color:#dd7b1f}
.ha-faq-section{margin-top:3rem}
.ha-faq-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}
.ha-faq-item{padding:1.3rem 1.4rem;border-radius:14px;background:#f8fafc;border:1px solid rgba(0,0,0,.05);transition:box-shadow .3s}
.ha-faq-item:hover{box-shadow:0 8px 24px rgba(16,24,40,.06)}
.ha-faq-item strong{display:block;font-size:.88rem;color:#0f172a;margin-bottom:.3rem;line-height:1.4}
.ha-faq-item span{font-size:.82rem;color:#64748b;line-height:1.55}
.ha-cta{text-align:center;padding:3rem 2rem;border-radius:22px;background:linear-gradient(135deg,#3E517A 0%,#2c3a5a 100%);color:#fff;margin:3rem 0 1rem;box-shadow:0 20px 50px rgba(62,81,122,.18)}
.ha-cta h2{font-size:clamp(1.3rem,2vw,1.7rem);font-weight:800;margin-bottom:.6rem}
.ha-cta p{font-size:.95rem;opacity:.85;max-width:480px;margin:0 auto 1.4rem;line-height:1.65}
.ha-cta .d-flex{justify-content:center}
.ha-table{border-radius:16px;border:1px solid rgba(0,0,0,.06);overflow:hidden;margin:1.5rem 0}
.ha-table table{width:100%;margin:0;border:none}
.ha-table thead{background:rgba(0,0,0,.03)}
.ha-table th,.ha-table td{padding:.75rem 1rem;font-size:.85rem;border-bottom:1px solid rgba(0,0,0,.06)}
.ha-table th{font-weight:700;color:#0f172a}
.ha-table td{color:#475569}
.ha-table tr:last-child td{border-bottom:none}

/* ── Sidebar menu (ay-*) ── */
.ay-sidebar{position:sticky;top:1.5rem}

/* CTA card */
.ay-menu-cta{padding:1.4rem 1.5rem;border-radius:18px;background:linear-gradient(135deg,#3E517A 0%,#2c3a5a 100%);color:#fff;box-shadow:0 12px 32px rgba(62,81,122,.15);text-align:center;margin-bottom:1.2rem;position:relative;overflow:hidden}
.ay-menu-cta::before{content:'';position:absolute;top:-40%;right:-30%;width:120px;height:120px;border-radius:50%;background:rgba(255,255,255,.06)}
.ay-menu-cta::after{content:'';position:absolute;bottom:-30%;left:-20%;width:80px;height:80px;border-radius:50%;background:rgba(255,255,255,.04)}
.ay-menu-cta h4{font-size:.92rem;font-weight:800;margin-bottom:.35rem;color:#fff;position:relative}
.ay-menu-cta p{font-size:.76rem;opacity:.75;line-height:1.5;margin-bottom:.8rem;color:#fff;position:relative}
.ay-menu-cta-btn{width:100%;border-radius:999px!important;font-weight:700!important;font-size:.78rem!important;padding:.55rem 1rem!important;position:relative}

/* Nav container */
.ay-menu{border-radius:18px;background:#fff;border:1px solid rgba(0,0,0,.06);box-shadow:0 8px 32px rgba(16,24,40,.05);padding:.8rem 0;margin-bottom:1.2rem;list-style:none}

/* Section titles */
.ay-menu-title{display:block;font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:#94a3b8;padding:.6rem 1.4rem .4rem;margin:0}

/* Links */
.ay-menu a{display:flex;align-items:center;gap:.55rem;padding:.5rem 1.2rem .5rem 1.3rem;font-size:.8rem;font-weight:600;color:#475569;text-decoration:none;transition:all .2s ease;border-left:3px solid transparent;list-style:none;line-height:1.35}
.ay-menu a:hover{background:rgba(242,140,40,.05);color:#f28c28;text-decoration:none;border-left-color:rgba(242,140,40,.3)}
.ay-menu a.active{background:rgba(242,140,40,.07);color:#f28c28;border-left-color:#f28c28;font-weight:700}
.ay-menu a i{font-size:.88rem;width:1rem;text-align:center;flex-shrink:0;opacity:.7}
.ay-menu a:hover i,.ay-menu a.active i{opacity:1}
.ay-menu a span{flex:1}

/* Divider */
.ay-menu-divider{height:1px;background:rgba(0,0,0,.05);margin:.5rem 1.2rem}

/* Phone card */
.ay-menu-phone{display:flex;align-items:center;gap:.7rem;padding:1rem 1.3rem;border-radius:14px;border:1px solid rgba(0,0,0,.06);background:#fff;box-shadow:0 4px 14px rgba(16,24,40,.04);margin-bottom:.8rem;transition:box-shadow .2s}
.ay-menu-phone:hover{box-shadow:0 8px 24px rgba(16,24,40,.07)}
.ay-menu-phone i{font-size:1.2rem;color:#10b981;flex-shrink:0}
.ay-menu-phone div{font-size:.76rem;color:#64748b;line-height:1.4}
.ay-menu-phone strong{display:block;font-size:.86rem;color:#0f172a}
.ay-menu-phone strong a{color:#0f172a;text-decoration:none}
.ay-menu-phone strong a:hover{color:#f28c28}

/* WhatsApp button */
.ay-menu-wa{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.7rem 1rem;border-radius:12px;background:#25d366;color:#fff;font-size:.8rem;font-weight:700;text-decoration:none;transition:all .2s;box-shadow:0 4px 14px rgba(37,211,102,.2)}
.ay-menu-wa:hover{background:#20bd5a;box-shadow:0 8px 24px rgba(37,211,102,.3);color:#fff;text-decoration:none;transform:translateY(-1px)}
.ay-menu-wa i{font-size:1.1rem}

/* ── Guias page (g-*) ── */
.g-hero{display:grid;grid-template-columns:1fr 1fr;gap:3.5rem;align-items:center;padding:3.5rem 0 3rem}
.g-hero-pill{display:inline-flex;align-items:center;gap:.45rem;padding:.5rem 1rem;border-radius:999px;background:rgba(242,140,40,.12);border:1px solid rgba(242,140,40,.28);font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#f28c28}
.g-hero-title{font-size:clamp(2.2rem,3.5vw,3.2rem);font-weight:800;letter-spacing:-.035em;line-height:1.12;color:#0f172a;margin:.9rem 0 1rem}
.g-hero-lead{font-size:1.05rem;color:#475569;line-height:1.75;max-width:540px}
.g-hero-actions{display:flex;flex-wrap:wrap;gap:.85rem;margin-top:1.6rem}
.g-hero-img{width:100%;border-radius:22px;box-shadow:0 24px 64px rgba(16,24,40,.12);aspect-ratio:4/3;object-fit:cover}
.g-hero-trust{display:flex;flex-wrap:wrap;gap:1.5rem;margin-top:1.8rem;align-items:center}
.g-hero-trust-item{display:flex;align-items:center;gap:.5rem;font-size:.82rem;color:#64748b;font-weight:600}
.g-hero-trust-item i{font-size:1rem;color:#f28c28}
.g-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;padding:2.5rem 0}
.g-metric{text-align:center;padding:2rem 1rem;border-radius:18px;background:#fff;border:1px solid rgba(0,0,0,.06);box-shadow:0 8px 30px rgba(16,24,40,.05)}
.g-metric .n{font-size:2.2rem;font-weight:900;color:#0f172a;letter-spacing:-.03em}
.g-metric .l{font-size:.82rem;color:#6b7280;margin-top:.4rem;font-weight:600}
.g-section{padding:4rem 0}
.g-section-label{display:inline-flex;align-items:center;gap:.4rem;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#f28c28;margin-bottom:.6rem}
.g-section-title{font-size:clamp(1.6rem,2.5vw,2.2rem);font-weight:800;color:#0f172a;letter-spacing:-.03em;line-height:1.2;margin-bottom:.6rem}
.g-section-desc{font-size:1rem;color:#64748b;line-height:1.7;max-width:640px}
.g-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:2.5rem}
.g-step{padding:2rem 1.6rem;border-radius:20px;background:#fff;border:1px solid rgba(0,0,0,.06);box-shadow:0 12px 40px rgba(16,24,40,.06);transition:box-shadow .3s,transform .3s}
.g-step:hover{box-shadow:0 20px 50px rgba(16,24,40,.1);transform:translateY(-4px)}
.g-step-icon{width:48px;height:48px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:22px;margin-bottom:1rem}
.g-step-icon.blue{background:rgba(62,81,122,.12);color:#3E517A}
.g-step-icon.orange{background:rgba(242,140,40,.14);color:#f28c28}
.g-step-icon.green{background:rgba(16,185,129,.12);color:#10b981}
.g-step-icon.purple{background:rgba(139,92,246,.12);color:#8b5cf6}
.g-step-icon.rose{background:rgba(244,63,94,.12);color:#f43f5e}
.g-step-icon.cyan{background:rgba(6,182,212,.12);color:#06b6d4}
.g-step-icon.teal{background:rgba(20,184,166,.12);color:#14b8a6}
.g-step-num{font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em;color:#94a3b8;margin-bottom:.5rem}
.g-step h3{font-size:1.1rem;font-weight:800;color:#0f172a;margin-bottom:.5rem}
.g-step p{font-size:.9rem;color:#64748b;line-height:1.65}
.g-step-list{list-style:none;padding:0;margin:.8rem 0 0}
.g-step-list li{display:flex;align-items:flex-start;gap:.5rem;padding:.35rem 0;font-size:.85rem;color:#334155;font-weight:500}
.g-step-list li i{color:#10b981;font-size:.85rem;margin-top:.15rem;flex-shrink:0}
.g-docs{display:grid;grid-template-columns:repeat(4,1fr);gap:1.2rem;margin-top:2rem}
.g-doc{text-align:center;padding:1.5rem 1rem;border-radius:16px;background:#fff;border:1px solid rgba(0,0,0,.06);box-shadow:0 8px 24px rgba(16,24,40,.05);transition:transform .3s}
.g-doc:hover{transform:translateY(-3px)}
.g-doc img{width:64px;height:64px;object-fit:contain;margin-bottom:.8rem;border-radius:8px}
.g-doc span{display:block;font-size:.82rem;font-weight:700;color:#0f172a}
.g-doc small{font-size:.72rem;color:#94a3b8;margin-top:.25rem;display:block}
.g-timeline{position:relative;padding-left:2.5rem;margin-top:2rem}
.g-timeline::before{content:'';position:absolute;left:.85rem;top:0;bottom:0;width:2px;background:linear-gradient(180deg,#f28c28 0%,rgba(242,140,40,.15) 100%);border-radius:2px}
.g-tl-item{position:relative;padding:1.2rem 0 1.8rem}
.g-tl-dot{position:absolute;left:-1.65rem;top:1.45rem;width:12px;height:12px;border-radius:50%;background:#f28c28;border:3px solid #fff;box-shadow:0 0 0 3px rgba(242,140,40,.2)}
.g-tl-item h4{font-size:1rem;font-weight:800;color:#0f172a;margin-bottom:.3rem}
.g-tl-item p{font-size:.88rem;color:#64748b;line-height:1.65;margin:0}
.g-cta{text-align:center;padding:4rem 2rem;border-radius:24px;background:linear-gradient(135deg,#3E517A 0%,#2c3a5a 100%);color:#fff;margin:2rem 0;box-shadow:0 24px 64px rgba(62,81,122,.2)}
.g-cta h2{font-size:clamp(1.6rem,2.5vw,2.2rem);font-weight:800;margin-bottom:.8rem;letter-spacing:-.02em}
.g-cta p{font-size:1.05rem;opacity:.85;max-width:540px;margin:0 auto 1.8rem;line-height:1.7}
.g-cta .btn-plan{font-size:1rem;padding:.85rem 2.2rem}
.g-tips{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem;margin-top:2rem}
.g-tip{display:flex;gap:1rem;padding:1.5rem;border-radius:16px;background:#fff;border:1px solid rgba(0,0,0,.06);box-shadow:0 6px 20px rgba(16,24,40,.04)}
.g-tip-icon{flex-shrink:0;width:42px;height:42px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:18px;background:rgba(242,140,40,.12);color:#f28c28}
.g-tip h4{font-size:.95rem;font-weight:800;color:#0f172a;margin-bottom:.3rem}
.g-tip p{font-size:.85rem;color:#64748b;line-height:1.6;margin:0}
.g-faq-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-top:2rem}
.g-faq-item{padding:1.4rem 1.6rem;border-radius:16px;background:#fff;border:1px solid rgba(0,0,0,.06);box-shadow:0 4px 16px rgba(16,24,40,.04);transition:box-shadow .3s}
.g-faq-item:hover{box-shadow:0 12px 32px rgba(16,24,40,.08)}
.g-faq-item strong{display:block;font-size:.92rem;color:#0f172a;margin-bottom:.4rem;line-height:1.4}
.g-faq-item span{font-size:.85rem;color:#64748b;line-height:1.6}
.g-areas{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;margin-top:2rem}
.g-area{padding:1.4rem;border-radius:16px;background:#fff;border:1px solid rgba(0,0,0,.06);box-shadow:0 6px 20px rgba(16,24,40,.04);text-align:center;transition:transform .3s}
.g-area:hover{transform:translateY(-3px)}
.g-area i{font-size:1.8rem;margin-bottom:.6rem;display:block}
.g-area h4{font-size:.9rem;font-weight:800;color:#0f172a;margin-bottom:.3rem}
.g-area p{font-size:.78rem;color:#64748b;line-height:1.5;margin:0}
.g-links{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-top:2rem}
.g-link-card{display:flex;align-items:center;gap:.8rem;padding:1.2rem 1.3rem;border-radius:14px;background:#fff;border:1px solid rgba(0,0,0,.06);box-shadow:0 4px 16px rgba(16,24,40,.04);transition:box-shadow .3s,transform .3s;text-decoration:none;color:#0f172a}
.g-link-card:hover{box-shadow:0 12px 36px rgba(16,24,40,.1);transform:translateY(-2px);color:#0f172a;text-decoration:none}
.g-link-card i{font-size:1.3rem;color:#f28c28;flex-shrink:0}
.g-link-card span{font-weight:700;font-size:.85rem}

/* ── SEO pages (sp-*) ── */
.sp-hero{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center;padding:3rem 0 2.5rem}
.sp-pill{display:inline-flex;align-items:center;gap:.45rem;padding:.5rem 1rem;border-radius:999px;background:rgba(242,140,40,.12);border:1px solid rgba(242,140,40,.28);font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#f28c28}
.sp-title{font-size:clamp(2rem,3vw,2.8rem);font-weight:800;letter-spacing:-.035em;line-height:1.15;color:#0f172a;margin:.9rem 0 1rem}
.sp-lead{font-size:1.02rem;color:#475569;line-height:1.75;max-width:540px}
.sp-actions{display:flex;flex-wrap:wrap;gap:.85rem;margin-top:1.6rem}
.sp-trust{display:flex;flex-wrap:wrap;gap:1.5rem;margin-top:1.5rem;align-items:center}
.sp-trust-item{display:flex;align-items:center;gap:.5rem;font-size:.82rem;color:#64748b;font-weight:600}
.sp-trust-item i{font-size:1rem;color:#f28c28}
.sp-hero-img{width:100%;border-radius:22px;box-shadow:0 24px 64px rgba(16,24,40,.12);aspect-ratio:4/3;object-fit:cover}
.sp-section{padding:4rem 0}
.sp-section-label{display:inline-flex;align-items:center;gap:.4rem;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#f28c28;margin-bottom:.6rem}
.sp-section-title{font-size:clamp(1.5rem,2.5vw,2rem);font-weight:800;color:#0f172a;letter-spacing:-.03em;line-height:1.2;margin-bottom:.6rem}
.sp-section-desc{font-size:1rem;color:#64748b;line-height:1.7;max-width:640px}
.sp-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;margin-top:2.5rem}
.sp-card{padding:2rem 1.6rem;border-radius:20px;background:#fff;border:1px solid rgba(0,0,0,.06);box-shadow:0 12px 40px rgba(16,24,40,.06);transition:box-shadow .3s,transform .3s}
.sp-card:hover{box-shadow:0 20px 50px rgba(16,24,40,.1);transform:translateY(-4px)}
.sp-card-icon{width:48px;height:48px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:22px;margin-bottom:1rem}
.sp-card-icon.blue{background:rgba(62,81,122,.12);color:#3E517A}
.sp-card-icon.orange{background:rgba(242,140,40,.14);color:#f28c28}
.sp-card-icon.green{background:rgba(16,185,129,.12);color:#10b981}
.sp-card-icon.purple{background:rgba(139,92,246,.12);color:#8b5cf6}
.sp-card-icon.rose{background:rgba(244,63,94,.12);color:#f43f5e}
.sp-card-num{font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em;color:#94a3b8;margin-bottom:.5rem}
.sp-card h3{font-size:1.08rem;font-weight:800;color:#0f172a;margin-bottom:.5rem}
.sp-card p{font-size:.88rem;color:#64748b;line-height:1.65;margin:0}
.sp-faq-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-top:2rem}
.sp-faq-item{padding:1.4rem 1.6rem;border-radius:16px;background:#fff;border:1px solid rgba(0,0,0,.06);box-shadow:0 4px 16px rgba(16,24,40,.04);transition:box-shadow .3s}
.sp-faq-item:hover{box-shadow:0 12px 32px rgba(16,24,40,.08)}
.sp-faq-item strong{display:block;font-size:.92rem;color:#0f172a;margin-bottom:.4rem;line-height:1.4}
.sp-faq-item span{font-size:.85rem;color:#64748b;line-height:1.6}
.sp-cta{text-align:center;padding:3.5rem 2rem;border-radius:24px;background:linear-gradient(135deg,#3E517A 0%,#2c3a5a 100%);color:#fff;margin:2rem 0;box-shadow:0 24px 64px rgba(62,81,122,.2)}
.sp-cta h2{font-size:clamp(1.4rem,2.5vw,2rem);font-weight:800;margin-bottom:.8rem;letter-spacing:-.02em}
.sp-cta p{font-size:1rem;opacity:.85;max-width:500px;margin:0 auto 1.5rem;line-height:1.7}
.sp-links{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-top:2rem}
.sp-link-card{display:flex;align-items:center;gap:.8rem;padding:1.2rem 1.3rem;border-radius:14px;background:#fff;border:1px solid rgba(0,0,0,.06);box-shadow:0 4px 16px rgba(16,24,40,.04);transition:box-shadow .3s,transform .3s;text-decoration:none;color:#0f172a}
.sp-link-card:hover{box-shadow:0 12px 36px rgba(16,24,40,.1);transform:translateY(-2px);color:#0f172a;text-decoration:none}
.sp-link-card i{font-size:1.3rem;color:#f28c28;flex-shrink:0}
.sp-link-card span{font-weight:700;font-size:.85rem}

/* ── Que es prepa en un examen (qp-*) ── */
.qp-hero{display:grid;grid-template-columns:1fr 1fr;gap:3.5rem;align-items:center;padding:3.5rem 0 3rem}
.qp-pill{display:inline-flex;align-items:center;gap:.45rem;padding:.5rem 1rem;border-radius:999px;background:rgba(242,140,40,.12);border:1px solid rgba(242,140,40,.28);font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#f28c28}
.qp-title{font-size:clamp(2.2rem,3.5vw,3.2rem);font-weight:800;letter-spacing:-.035em;line-height:1.12;color:#0f172a;margin:.9rem 0 1rem}
.qp-lead{font-size:1.05rem;color:#475569;line-height:1.75;max-width:540px}
.qp-actions{display:flex;flex-wrap:wrap;gap:.85rem;margin-top:1.6rem}
.qp-hero-img{width:100%;border-radius:22px;box-shadow:0 24px 64px rgba(16,24,40,.12);aspect-ratio:4/3;object-fit:cover}
.qp-trust{display:flex;flex-wrap:wrap;gap:1.5rem;margin-top:1.5rem;align-items:center}
.qp-trust-item{display:flex;align-items:center;gap:.5rem;font-size:.82rem;color:#64748b;font-weight:600}
.qp-trust-item i{font-size:1rem;color:#f28c28}
.qp-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;padding:2.5rem 0}
.qp-metric{text-align:center;padding:2rem 1rem;border-radius:18px;background:#fff;border:1px solid rgba(0,0,0,.06);box-shadow:0 8px 30px rgba(16,24,40,.05)}
.qp-metric .n{font-size:2.2rem;font-weight:900;color:#0f172a;letter-spacing:-.03em}
.qp-metric .l{font-size:.82rem;color:#6b7280;margin-top:.4rem;font-weight:600}
.qp-section{padding:4rem 0}
.qp-section-label{display:inline-flex;align-items:center;gap:.4rem;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#f28c28;margin-bottom:.6rem}
.qp-section-title{font-size:clamp(1.6rem,2.5vw,2.2rem);font-weight:800;color:#0f172a;letter-spacing:-.03em;line-height:1.2;margin-bottom:.6rem}
.qp-section-desc{font-size:1rem;color:#64748b;line-height:1.7;max-width:640px}
.qp-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:2.5rem}
.qp-step{padding:2rem 1.6rem;border-radius:20px;background:#fff;border:1px solid rgba(0,0,0,.06);box-shadow:0 12px 40px rgba(16,24,40,.06);transition:box-shadow .3s,transform .3s;text-align:center}
.qp-step:hover{box-shadow:0 20px 50px rgba(16,24,40,.1);transform:translateY(-4px)}
.qp-step-icon{width:56px;height:56px;border-radius:16px;display:flex;align-items:center;justify-content:center;font-size:24px;margin:0 auto 1rem}
.qp-step-icon.orange{background:rgba(242,140,40,.14);color:#f28c28}
.qp-step-icon.blue{background:rgba(62,81,122,.12);color:#3E517A}
.qp-step-icon.green{background:rgba(16,185,129,.12);color:#10b981}
.qp-step-num{font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em;color:#94a3b8;margin-bottom:.5rem}
.qp-step h3{font-size:1.1rem;font-weight:800;color:#0f172a;margin-bottom:.5rem}
.qp-step p{font-size:.88rem;color:#64748b;line-height:1.65;margin:0}
.qp-time-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem;margin-top:2.5rem}
.qp-time-card{padding:2rem 1.8rem;border-radius:20px;border:1px solid rgba(0,0,0,.06);box-shadow:0 12px 40px rgba(16,24,40,.06);background:#fff;transition:box-shadow .3s,transform .3s}
.qp-time-card:hover{box-shadow:0 20px 50px rgba(16,24,40,.1);transform:translateY(-4px)}
.qp-time-card .badge-time{display:inline-flex;padding:.4rem .8rem;border-radius:999px;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;margin-bottom:.8rem}
.qp-time-card .badge-time.fast{background:rgba(244,63,94,.1);color:#f43f5e}
.qp-time-card .badge-time.standard{background:rgba(62,81,122,.1);color:#3E517A}
.qp-time-card h3{font-size:1.2rem;font-weight:800;color:#0f172a;margin-bottom:.5rem}
.qp-time-card p{font-size:.9rem;color:#64748b;line-height:1.65}
.qp-time-card a{font-weight:700;font-size:.88rem}
.qp-faq-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-top:2rem}
.qp-faq-item{padding:1.4rem 1.6rem;border-radius:16px;background:#fff;border:1px solid rgba(0,0,0,.06);box-shadow:0 4px 16px rgba(16,24,40,.04);transition:box-shadow .3s}
.qp-faq-item:hover{box-shadow:0 12px 32px rgba(16,24,40,.08)}
.qp-faq-item strong{display:block;font-size:.92rem;color:#0f172a;margin-bottom:.4rem;line-height:1.4}
.qp-faq-item span{font-size:.85rem;color:#64748b;line-height:1.6}
.qp-cta{text-align:center;padding:4rem 2rem;border-radius:24px;background:linear-gradient(135deg,#3E517A 0%,#2c3a5a 100%);color:#fff;margin:2rem 0;box-shadow:0 24px 64px rgba(62,81,122,.2)}
.qp-cta h2{font-size:clamp(1.6rem,2.5vw,2.2rem);font-weight:800;margin-bottom:.8rem;letter-spacing:-.02em}
.qp-cta p{font-size:1.05rem;opacity:.85;max-width:540px;margin:0 auto 1.8rem;line-height:1.7}
.qp-links{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-top:2rem}
.qp-link-card{display:flex;align-items:center;gap:.8rem;padding:1.2rem 1.3rem;border-radius:14px;background:#fff;border:1px solid rgba(0,0,0,.06);box-shadow:0 4px 16px rgba(16,24,40,.04);transition:box-shadow .3s,transform .3s;text-decoration:none;color:#0f172a}
.qp-link-card:hover{box-shadow:0 12px 36px rgba(16,24,40,.1);transform:translateY(-2px);color:#0f172a;text-decoration:none}
.qp-link-card i{font-size:1.3rem;color:#f28c28;flex-shrink:0}
.qp-link-card span{font-weight:700;font-size:.85rem}

/* ── Ayuda / Help page (ay-*) ── */
.ay-hero{display:grid;grid-template-columns:1fr 1fr;gap:3.5rem;align-items:center;padding:3.5rem 0 3rem}
.ay-pill{display:inline-flex;align-items:center;gap:.45rem;padding:.5rem 1rem;border-radius:999px;background:rgba(242,140,40,.12);border:1px solid rgba(242,140,40,.28);font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#f28c28}
.ay-title{font-size:clamp(2.2rem,3.5vw,3.2rem);font-weight:800;letter-spacing:-.035em;line-height:1.12;color:#0f172a;margin:.9rem 0 1rem}
.ay-lead{font-size:1.05rem;color:#475569;line-height:1.75;max-width:540px}
.ay-actions{display:flex;flex-wrap:wrap;gap:.85rem;margin-top:1.6rem}
.ay-hero-img{width:100%;border-radius:22px;box-shadow:0 24px 64px rgba(16,24,40,.12);aspect-ratio:4/3;object-fit:cover}
.ay-trust{display:flex;flex-wrap:wrap;gap:1.5rem;margin-top:1.5rem;align-items:center}
.ay-trust-item{display:flex;align-items:center;gap:.5rem;font-size:.82rem;color:#64748b;font-weight:600}
.ay-trust-item i{font-size:1rem;color:#f28c28}
.ay-section{padding:4rem 0}
.ay-section-label{display:inline-flex;align-items:center;gap:.4rem;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#f28c28;margin-bottom:.6rem}
.ay-section-title{font-size:clamp(1.6rem,2.5vw,2.2rem);font-weight:800;color:#0f172a;letter-spacing:-.03em;line-height:1.2;margin-bottom:.6rem}
.ay-section-desc{font-size:1rem;color:#64748b;line-height:1.7;max-width:640px}
.ay-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem;margin-top:2.5rem}
.ay-card{padding:2rem 1.6rem;border-radius:20px;background:#fff;border:1px solid rgba(0,0,0,.06);box-shadow:0 12px 40px rgba(16,24,40,.06);transition:box-shadow .3s,transform .3s}
.ay-card:hover{box-shadow:0 20px 50px rgba(16,24,40,.1);transform:translateY(-4px)}
.ay-card-icon{width:48px;height:48px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:22px;margin-bottom:1rem}
.ay-card-icon.blue{background:rgba(62,81,122,.12);color:#3E517A}
.ay-card-icon.orange{background:rgba(242,140,40,.14);color:#f28c28}
.ay-card-icon.green{background:rgba(16,185,129,.12);color:#10b981}
.ay-card-icon.purple{background:rgba(139,92,246,.12);color:#8b5cf6}
.ay-card h3{font-size:1.08rem;font-weight:800;color:#0f172a;margin-bottom:.5rem}
.ay-card p{font-size:.88rem;color:#64748b;line-height:1.65;margin:0}
.ay-card ul{list-style:none;padding:0;margin:.8rem 0 0}
.ay-card ul li{display:flex;align-items:flex-start;gap:.5rem;padding:.3rem 0;font-size:.85rem;color:#334155;font-weight:500}
.ay-card ul li i{color:#10b981;font-size:.85rem;margin-top:.15rem;flex-shrink:0}
.ay-plan{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-top:2rem}
.ay-plan-card{padding:2rem 1.8rem;border-radius:20px;border:1px solid rgba(0,0,0,.06);box-shadow:0 12px 40px rgba(16,24,40,.06);position:relative;overflow:hidden}
.ay-plan-card.featured{background:linear-gradient(135deg,#3E517A 0%,#2c3a5a 100%);color:#fff;border:none;box-shadow:0 24px 64px rgba(62,81,122,.2)}
.ay-plan-card.featured .ay-plan-desc{color:rgba(255,255,255,.75)}
.ay-plan-card.featured .ay-plan-price{color:#fff}
.ay-plan-card.light{background:#fff}
.ay-plan-badge{display:inline-block;padding:.3rem .7rem;border-radius:999px;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;margin-bottom:.8rem}
.ay-plan-badge.pop{background:rgba(242,140,40,.2);color:#f28c28}
.ay-plan-badge.alt{background:rgba(62,81,122,.12);color:#3E517A}
.ay-plan-name{font-size:1.2rem;font-weight:800;margin-bottom:.3rem}
.ay-plan-price{font-size:2rem;font-weight:900;letter-spacing:-.03em;color:#0f172a;margin:.5rem 0}
.ay-plan-desc{font-size:.85rem;color:#64748b;line-height:1.6;margin-bottom:1rem}
.ay-plan-list{list-style:none;padding:0;margin:0 0 1.2rem}
.ay-plan-list li{display:flex;align-items:flex-start;gap:.5rem;padding:.3rem 0;font-size:.83rem;font-weight:500}
.ay-plan-list li i{flex-shrink:0;margin-top:.15rem}
.ay-pay-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.2rem;margin-top:2rem}
.ay-pay{text-align:center;padding:1.5rem 1rem;border-radius:16px;background:#fff;border:1px solid rgba(0,0,0,.06);box-shadow:0 8px 24px rgba(16,24,40,.05);transition:transform .3s}
.ay-pay:hover{transform:translateY(-3px)}
.ay-pay i{font-size:1.8rem;color:#f28c28;margin-bottom:.6rem;display:block}
.ay-pay h4{font-size:.88rem;font-weight:800;color:#0f172a;margin-bottom:.3rem}
.ay-pay p{font-size:.78rem;color:#64748b;line-height:1.5;margin:0}
.ay-faq-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-top:2rem}
.ay-faq-item{padding:1.4rem 1.6rem;border-radius:16px;background:#fff;border:1px solid rgba(0,0,0,.06);box-shadow:0 4px 16px rgba(16,24,40,.04);transition:box-shadow .3s}
.ay-faq-item:hover{box-shadow:0 12px 32px rgba(16,24,40,.08)}
.ay-faq-item strong{display:block;font-size:.92rem;color:#0f172a;margin-bottom:.4rem;line-height:1.4}
.ay-faq-item span{font-size:.85rem;color:#64748b;line-height:1.6}
.ay-cta{text-align:center;padding:4rem 2rem;border-radius:24px;background:linear-gradient(135deg,#3E517A 0%,#2c3a5a 100%);color:#fff;margin:2rem 0;box-shadow:0 24px 64px rgba(62,81,122,.2)}
.ay-cta h2{font-size:clamp(1.6rem,2.5vw,2.2rem);font-weight:800;margin-bottom:.8rem;letter-spacing:-.02em}
.ay-cta p{font-size:1.05rem;opacity:.85;max-width:540px;margin:0 auto 1.8rem;line-height:1.7}
.ay-links{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-top:2rem}
.ay-link-card{display:flex;align-items:center;gap:.8rem;padding:1.2rem 1.3rem;border-radius:14px;background:#fff;border:1px solid rgba(0,0,0,.06);box-shadow:0 4px 16px rgba(16,24,40,.04);transition:box-shadow .3s,transform .3s;text-decoration:none;color:#0f172a}
.ay-link-card:hover{box-shadow:0 12px 36px rgba(16,24,40,.1);transform:translateY(-2px);color:#0f172a;text-decoration:none}
.ay-link-card i{font-size:1.3rem;color:#f28c28;flex-shrink:0}
.ay-link-card span{font-weight:700;font-size:.85rem}
.ay-table{border-radius:16px;border:1px solid rgba(0,0,0,.06);overflow:hidden;margin-top:1.5rem}
.ay-table table{width:100%;margin:0;border:none}
.ay-table thead{background:rgba(0,0,0,.03)}
.ay-table th,.ay-table td{padding:.85rem 1.2rem;font-size:.88rem;border-bottom:1px solid rgba(0,0,0,.06)}
.ay-table th{font-weight:700;color:#0f172a}
.ay-table td{color:#475569}
.ay-table tr:last-child td{border-bottom:none}

/* ── Calendario page (cal-*) ── */
.cal-hero{padding:2.5rem 0 1.5rem}
.cal-hero-pill{display:inline-flex;align-items:center;gap:.45rem;padding:.5rem 1rem;border-radius:999px;background:rgba(242,140,40,.12);border:1px solid rgba(242,140,40,.28);font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#f28c28}
.cal-hero-title{font-size:clamp(2rem,3.5vw,3rem);font-weight:800;letter-spacing:-.035em;line-height:1.12;color:#0f172a;margin:.8rem 0 .5rem}
.cal-hero-year{font-size:clamp(3rem,5vw,4.5rem);font-weight:900;letter-spacing:-.04em;background:linear-gradient(135deg,#3E517A,#f28c28);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:1rem}
.cal-hero-lead{font-size:1rem;color:#64748b;line-height:1.7;max-width:600px;margin-bottom:1.5rem}
.cal-hero-links{display:flex;flex-wrap:wrap;gap:.6rem}
.cal-hero-links a{font-size:.82rem;font-weight:700;color:#3E517A;text-decoration:underline;text-underline-offset:3px}
.cal-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;margin:2rem 0}
.cal-metric{text-align:center;padding:1.5rem 1rem;border-radius:16px;background:#fff;border:1px solid rgba(0,0,0,.06);box-shadow:0 6px 20px rgba(16,24,40,.04)}
.cal-metric .n{font-size:1.6rem;font-weight:900;color:#0f172a;letter-spacing:-.02em}
.cal-metric .l{font-size:.78rem;color:#6b7280;margin-top:.3rem;font-weight:600}
.cal-exam{border-radius:18px;border:1px solid rgba(0,0,0,.06);padding:1.5rem 1.8rem;margin-bottom:1rem;transition:box-shadow .3s,transform .3s}
.cal-exam:hover{box-shadow:0 16px 44px rgba(16,24,40,.08);transform:translateY(-2px)}
.cal-exam.open{background:#fff;box-shadow:0 12px 36px rgba(16,24,40,.06);border-left:4px solid #10b981}
.cal-exam.closed{background:#f8fafc;border-left:4px solid #94a3b8}
.cal-exam-header{display:flex;align-items:center;gap:.8rem;margin-bottom:.8rem;flex-wrap:wrap}
.cal-badge{display:inline-flex;align-items:center;gap:.3rem;padding:.3rem .7rem;border-radius:999px;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em}
.cal-badge.open{background:rgba(16,185,129,.12);color:#10b981}
.cal-badge.closed{background:rgba(148,163,184,.15);color:#94a3b8}
.cal-exam-period{font-size:.78rem;color:#94a3b8;font-weight:600}
.cal-exam-date{font-size:1.15rem;font-weight:800;color:#0f172a;margin-bottom:.3rem}
.cal-exam-name{font-size:.9rem;font-weight:700;color:#334155;margin-bottom:.5rem}
.cal-exam-meta{display:flex;flex-wrap:wrap;gap:1.2rem;font-size:.8rem;color:#64748b;margin:.6rem 0}
.cal-exam-meta span{display:flex;align-items:center;gap:.3rem}
.cal-exam-meta i{font-size:.85rem;color:#f28c28}
.cal-req{border-radius:18px;background:#fff;border:1px solid rgba(0,0,0,.06);box-shadow:0 8px 28px rgba(16,24,40,.05);padding:1.8rem;margin-top:2rem}
.cal-req h3{font-size:1.1rem;font-weight:800;color:#0f172a;margin-bottom:1rem;display:flex;align-items:center;gap:.5rem}
.cal-req h3 i{color:#f28c28}
.cal-req-group{margin-bottom:1rem}
.cal-req-group h4{font-size:.85rem;font-weight:700;color:#334155;margin-bottom:.4rem;display:flex;align-items:center;gap:.4rem}
.cal-req-group h4 i{color:#10b981;font-size:.8rem}
.cal-req-group ul{list-style:none;padding:0;margin:0}
.cal-req-group ul li{display:flex;align-items:flex-start;gap:.4rem;padding:.2rem 0;font-size:.82rem;color:#64748b}
.cal-req-group ul li i{color:#3E517A;font-size:.75rem;margin-top:.2rem;flex-shrink:0}
.cal-cta{text-align:center;padding:3rem 2rem;border-radius:22px;background:linear-gradient(135deg,#3E517A 0%,#2c3a5a 100%);color:#fff;margin:2.5rem 0 1rem;box-shadow:0 20px 50px rgba(62,81,122,.18)}
.cal-cta h2{font-size:clamp(1.3rem,2vw,1.7rem);font-weight:800;margin-bottom:.6rem}
.cal-cta p{font-size:.95rem;opacity:.85;max-width:480px;margin:0 auto 1.4rem;line-height:1.65}

/* ── Responsive ── */
@media(max-width:991.98px){
  /* ha */
  .ha-faq-grid{grid-template-columns:1fr}
  /* g */
  .g-hero{grid-template-columns:1fr;text-align:center}
  .g-hero-lead{margin-left:auto;margin-right:auto}
  .g-hero-actions{justify-content:center}
  .g-hero-trust{justify-content:center}
  .g-hero-img{max-width:480px;margin:0 auto}
  .g-steps{grid-template-columns:1fr}
  .g-docs{grid-template-columns:repeat(2,1fr)}
  .g-metrics{grid-template-columns:repeat(2,1fr)}
  .g-faq-grid{grid-template-columns:1fr}
  .g-tips{grid-template-columns:1fr}
  .g-areas{grid-template-columns:repeat(2,1fr)}
  .g-links{grid-template-columns:repeat(2,1fr)}
  .g-section-desc{margin-left:auto;margin-right:auto}
  /* sp */
  .sp-hero{grid-template-columns:1fr;text-align:center}
  .sp-lead{margin-left:auto;margin-right:auto}
  .sp-actions{justify-content:center}
  .sp-trust{justify-content:center}
  .sp-hero-img{max-width:480px;margin:0 auto}
  .sp-cards{grid-template-columns:1fr}
  .sp-faq-grid{grid-template-columns:1fr}
  .sp-links{grid-template-columns:repeat(2,1fr)}
  .sp-section-desc{margin-left:auto;margin-right:auto}
  /* qp */
  .qp-hero{grid-template-columns:1fr;text-align:center}
  .qp-lead{margin-left:auto;margin-right:auto}
  .qp-actions{justify-content:center}
  .qp-trust{justify-content:center}
  .qp-hero-img{max-width:480px;margin:0 auto}
  .qp-steps{grid-template-columns:1fr}
  .qp-time-cards{grid-template-columns:1fr}
  .qp-faq-grid{grid-template-columns:1fr}
  .qp-links{grid-template-columns:repeat(2,1fr)}
  .qp-section-desc{margin-left:auto;margin-right:auto}
  /* ay */
  .ay-hero{grid-template-columns:1fr;text-align:center}
  .ay-lead{margin-left:auto;margin-right:auto}
  .ay-actions{justify-content:center}
  .ay-trust{justify-content:center}
  .ay-hero-img{max-width:480px;margin:0 auto}
  .ay-cards{grid-template-columns:1fr}
  .ay-plan{grid-template-columns:1fr}
  .ay-pay-grid{grid-template-columns:repeat(2,1fr)}
  .ay-faq-grid{grid-template-columns:1fr}
  .ay-links{grid-template-columns:repeat(2,1fr)}
  .ay-section-desc{margin-left:auto;margin-right:auto}
}

@media(max-width:767.98px){
  /* cal */
  .cal-metrics{grid-template-columns:1fr}
  .cal-hero-year{font-size:2.5rem}
}

@media(max-width:575.98px){
  /* g */
  .g-docs{grid-template-columns:1fr 1fr}
  .g-metrics{grid-template-columns:1fr 1fr}
  .g-areas{grid-template-columns:1fr}
  .g-links{grid-template-columns:1fr}
  .g-hero{padding:2rem 0}
  .g-section{padding:2.5rem 0}
  /* sp */
  .sp-links{grid-template-columns:1fr}
  .sp-hero{padding:2rem 0}
  .sp-section{padding:2.5rem 0}
  /* qp */
  .qp-metrics{grid-template-columns:1fr}
  .qp-links{grid-template-columns:1fr}
  .qp-hero{padding:2rem 0}
  .qp-section{padding:2.5rem 0}
  /* ay */
  .ay-pay-grid{grid-template-columns:1fr 1fr}
  .ay-links{grid-template-columns:1fr}
  .ay-hero{padding:2rem 0}
  .ay-section{padding:2.5rem 0}
}
.social_icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.75rem;
  margin: 0.75rem;
  min-width: 50px;
  min-height: 50px;
  border: solid 0.5px #e0e0e0;
  border-radius: 12px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
  transition: all 0.3s ease;
  filter: grayscale(100%) opacity(0.5);
  cursor: pointer;
}

.social_icon:hover {
  filter: grayscale(0%) opacity(1);
  transform: translateY(-4px);
  box-shadow: 0 6px 16px rgba(0, 0, 0, 0.12);
}

/* Alternative for font icons */
.social_icon {
  color: #b0b0b0;
  /* ...rest same as above, remove filter lines */
}

.social_icon:hover {
  color: var(--icon-color, #333);
  /* ...rest same as above, remove filter lines */
}
