/* =====================================================
   MC Certificados - Verificador publico + popup premium
   v2.36.8 - tema GM Certification (negro/gris/naranja)
   ===================================================== */
:root{
  --mc-cert-black:#000000;
  --mc-cert-gray:#616063;
  --mc-cert-gray-soft:#8a888d;
  --mc-cert-orange:#D78E2E;
  --mc-cert-orange-dark:#b97720;
  --mc-cert-text:#161616;
  --mc-cert-muted:#5f6166;
  --mc-cert-line:#dfdfdf;
  --mc-cert-soft:#f7f7f8;
  --mc-cert-soft-2:#efeff1;
  --mc-cert-success:#2d8a49;
  --mc-cert-success-soft:#e8f5eb;
  --mc-cert-danger:#b42318;
  --mc-cert-danger-soft:#fdecea;
}

.mc-cert-wrap{width:100%;max-width:640px;margin:0 auto;font-family:inherit;color:var(--mc-cert-text)}
.mc-cert-card{position:relative;overflow:hidden;background:rgba(20,20,20,.72);border:1px solid rgba(255,255,255,.12);border-radius:26px;box-shadow:0 24px 68px rgba(0,0,0,.26);padding:0;color:#fff;backdrop-filter:blur(10px)}
.mc-cert-card:before{content:"";position:absolute;left:22px;top:92px;width:72px;height:4px;border-radius:999px;background:var(--mc-cert-orange)}
.mc-cert-head{position:relative;padding:28px 28px 10px;background:transparent}
.mc-cert-kicker{display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:700;letter-spacing:.11em;text-transform:uppercase;color:rgba(255,255,255,.8);background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.10);border-radius:999px;padding:7px 12px;margin-bottom:14px}
.mc-cert-title{margin:0;font-size:clamp(27px,4vw,46px);line-height:1.05;font-weight:800;color:#fff;letter-spacing:.01em;text-transform:uppercase;font-family:inherit;max-width:520px}
.mc-cert-subtitle{margin:12px 0 0;font-size:15px;line-height:1.55;color:rgba(255,255,255,.82);max-width:520px;font-weight:400}
.mc-cert-body{padding:0 28px 24px;background:transparent}
.mc-cert-search{margin-top:14px;background:rgba(0,0,0,.14);border:1px solid rgba(255,255,255,.12);border-radius:18px;padding:18px;box-shadow:none;position:relative;z-index:2}
.mc-cert-label{display:block;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#ececec;margin-bottom:10px}
.mc-cert-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center}
.mc-cert-input{width:100%;min-width:0;height:54px;border:1px solid rgba(255,255,255,.16);border-radius:14px;background:rgba(255,255,255,.06);color:#fff;padding:0 16px;font-size:17px;font-weight:500;text-transform:uppercase;outline:none;transition:border-color .18s,box-shadow .18s,background .18s}
.mc-cert-input:focus{border-color:rgba(215,142,46,.78);background:rgba(255,255,255,.09);box-shadow:0 0 0 3px rgba(215,142,46,.18)}
.mc-cert-input::placeholder{color:rgba(255,255,255,.6);text-transform:none;font-weight:400}
.mc-cert-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-width:190px;height:54px;border:0;border-radius:14px;background:var(--mc-cert-orange);color:#111!important;text-decoration:none!important;font-size:16px;font-weight:700;cursor:pointer;box-shadow:0 12px 28px rgba(215,142,46,.20);transition:transform .15s ease,box-shadow .15s ease,filter .15s ease}
.mc-cert-btn:hover{transform:translateY(-1px);box-shadow:0 14px 30px rgba(215,142,46,.25);filter:brightness(1.02)}
.mc-cert-btn:active{transform:translateY(0)}
.mc-cert-note{margin:12px 2px 0;font-size:14px;line-height:1.5;color:rgba(255,255,255,.72)}

/* Popup */
.mc-cert-popup-overlay{position:fixed;inset:0;z-index:999999;display:flex;align-items:center;justify-content:center;padding:clamp(18px,3vw,44px);background:rgba(0,0,0,.56);backdrop-filter:none;overflow:auto}
.mc-cert-popup-shell{position:relative;width:min(1060px,94vw);max-height:92vh}
.mc-cert-popup-close{position:absolute;right:18px;top:18px;z-index:10;width:42px;height:42px;border-radius:14px;background:rgba(255,255,255,.16);color:#fff!important;text-decoration:none!important;display:flex;align-items:center;justify-content:center;font-size:28px;font-weight:700;box-shadow:none;line-height:1;border:1px solid rgba(255,255,255,.16);transition:transform .15s ease,background .15s ease}
.mc-cert-popup-close:hover{transform:translateY(-1px);background:rgba(255,255,255,.25)}
.mc-cert-result{width:100%;max-height:92vh;overflow:auto;border-radius:28px;border:1px solid rgba(0,0,0,.08);background:#fff;box-shadow:0 38px 110px rgba(0,0,0,.30);position:relative}
.mc-cert-result:before{content:"";position:absolute;left:0;right:0;top:0;height:6px;background:linear-gradient(90deg,var(--mc-cert-orange) 0%,#efb15d 40%,var(--mc-cert-gray) 100%);z-index:2}
.mc-cert-result-head{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:18px;align-items:center;padding:28px 70px 24px 30px;border-bottom:1px solid #ececec;background:linear-gradient(135deg,#222 0%,#4a4a4d 100%);color:#fff}
.mc-cert-result-icon{width:62px;height:62px;border-radius:18px;display:flex;align-items:center;justify-content:center;font-size:30px;flex-shrink:0;background:linear-gradient(135deg,#f0b04f,var(--mc-cert-orange));color:#111;box-shadow:0 12px 30px rgba(0,0,0,.22);font-weight:700}
.mc-cert-result-copy h3{margin:0 0 6px;font-size:clamp(26px,3vw,40px);line-height:1.1;color:#fff;font-weight:800;letter-spacing:-.02em}
.mc-cert-result-copy p{margin:0;font-size:15px;line-height:1.55;color:rgba(255,255,255,.82);max-width:600px;font-weight:400}
.mc-cert-result-eyebrow{display:inline-flex;margin:0 0 8px;padding:6px 10px;border-radius:999px;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.16);color:#f1f1f1;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.mc-cert-result-code{min-width:190px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);border-radius:16px;padding:13px 15px;text-align:left}
.mc-cert-result-code small{display:block;color:rgba(255,255,255,.68);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;margin-bottom:4px}
.mc-cert-result-code strong{display:block;color:#fff;font-size:18px;line-height:1.25;letter-spacing:.03em;word-break:break-word;font-weight:700}
.mc-cert-result.is-error .mc-cert-result-icon{background:var(--mc-cert-danger-soft);color:var(--mc-cert-danger)}
.mc-cert-result.is-error .mc-cert-result-head{background:linear-gradient(135deg,#3b0e0e 0%,#7c1d13 100%)}
.mc-cert-result-body{padding:28px 30px 30px;background:#f9f9fa}
.mc-cert-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;grid-auto-flow:dense;align-items:stretch}
.mc-cert-item{position:relative;padding:16px 18px 17px;border:1px solid #e6e6e8;border-radius:18px;background:#fff;box-shadow:0 8px 24px rgba(0,0,0,.04);overflow:hidden}
.mc-cert-item-medium{grid-column:span 2}
.mc-cert-item-wide{grid-column:1/-1}
.mc-cert-item-medium .mc-cert-item-value,.mc-cert-item-wide .mc-cert-item-value{max-width:100%}
.mc-cert-item:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(180deg,var(--mc-cert-orange),#efb15d);opacity:.95}
.mc-cert-item-label{display:block;font-size:11px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--mc-cert-gray);margin-bottom:8px}
.mc-cert-item-value{display:block;font-size:18px;font-weight:600;color:var(--mc-cert-text);line-height:1.38;word-break:break-word}
.mc-cert-grid .mc-cert-item:nth-child(1),.mc-cert-grid .mc-cert-item:nth-child(2),.mc-cert-grid .mc-cert-item:nth-child(3){background:linear-gradient(180deg,#fff,#fcfcfc);border-color:#e4e4e6}
.mc-cert-badge{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:7px 13px;border-radius:999px;font-size:13px;font-weight:700;letter-spacing:.01em}
.mc-ok{background:var(--mc-cert-success-soft);color:var(--mc-cert-success);border:1px solid #bddcc7}
.mc-bad{background:var(--mc-cert-danger-soft);color:var(--mc-cert-danger);border:1px solid #f0c1bc}
.mc-res-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px;justify-content:center}
.mc-cert-btn-secondary{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-width:170px;height:52px;border-radius:14px;border:1px solid #cfd1d4;background:#fff;color:var(--mc-cert-text)!important;text-decoration:none!important;font-size:16px;font-weight:600;transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease}
.mc-cert-btn-secondary:hover{transform:translateY(-1px);border-color:#acadb2;box-shadow:0 10px 24px rgba(0,0,0,.06)}
.mc-cert-foot{margin-top:18px;padding:14px 18px;border:1px dashed #d9d9de;border-radius:14px;background:#fff;font-size:13px;color:var(--mc-cert-muted);line-height:1.5;text-align:center}
.mc-cert-grid.mc-cert-grid-cols-1{grid-template-columns:1fr!important}
.mc-cert-grid.mc-cert-grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))!important}
.mc-cert-grid.mc-cert-grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))!important}

@media(max-width:900px){
  .mc-cert-popup-shell{width:94vw}
  .mc-cert-result{border-radius:22px}
  .mc-cert-result-head{grid-template-columns:auto 1fr;padding:24px 24px 22px}
  .mc-cert-result-code{grid-column:1/-1;min-width:0}
  .mc-cert-grid.mc-cert-grid-cols-2,.mc-cert-grid.mc-cert-grid-cols-3{grid-template-columns:1fr!important}
  .mc-cert-item-medium,.mc-cert-item-wide{grid-column:1/-1}
  .mc-cert-result-body{padding:22px}
  .mc-cert-popup-close{right:14px;top:14px;background:rgba(255,255,255,.16)}
}

@media(max-width:640px){
  .mc-cert-head{padding:24px 20px 10px}
  .mc-cert-body{padding:0 20px 20px}
  .mc-cert-search{padding:16px;border-radius:16px}
  .mc-cert-form{grid-template-columns:1fr}
  .mc-cert-btn,.mc-cert-btn-secondary{width:100%;min-width:0}
  .mc-cert-result-copy h3{font-size:24px}
  .mc-cert-result-copy p{font-size:14px}
  .mc-cert-result-head{gap:12px;padding:22px 18px 18px}
  .mc-cert-result-icon{width:52px;height:52px;border-radius:16px;font-size:24px}
  .mc-cert-result-body{padding:18px}
  .mc-cert-popup-overlay{padding:12px}
  .mc-cert-popup-close{width:38px;height:38px;border-radius:12px;font-size:24px}
  .mc-cert-item{padding:14px 15px}
  .mc-cert-card{border-radius:20px}
  .mc-cert-title{font-size:clamp(24px,8vw,36px)}
}

/* =====================================================
   v2.37.1 - Modal unificado de consulta
   Estructura: panel oscuro lateral + ficha blanca de datos.
   La página de inicio permanece visible debajo del popup.
   ===================================================== */
.mc-cert-popup-overlay{
  background:rgba(0,0,0,.48)!important;
  backdrop-filter:none!important;
}
.mc-cert-consulta-shell{width:min(1030px,94vw);max-height:92vh}
.mc-cert-consulta-result{
  display:grid;
  grid-template-columns:160px minmax(0,1fr);
  width:100%;
  max-height:92vh;
  overflow:auto;
  border-radius:22px;
  background:#fff;
  border:1px solid rgba(0,0,0,.08);
  box-shadow:0 34px 90px rgba(0,0,0,.34);
}
.mc-cert-consulta-result:before{display:none!important}
.mc-cert-consulta-side{
  min-height:100%;
  padding:26px 18px 24px;
  background:linear-gradient(180deg,#0b0b0b 0%,#222 100%);
  color:#fff;
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
}
.mc-cert-consulta-check{
  width:74px;
  height:74px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  margin:0 0 18px;
  background:#D78E2E;
  color:#000;
  font-size:42px;
  line-height:1;
  font-weight:500;
  box-shadow:0 12px 28px rgba(215,142,46,.24);
}
.mc-cert-consulta-verified{
  font-size:20px;
  line-height:1.08;
  font-weight:700;
  color:#fff;
  margin-bottom:10px;
}
.mc-cert-consulta-side p{
  margin:0;
  max-width:116px;
  font-size:12px;
  line-height:1.5;
  font-weight:400;
  color:rgba(255,255,255,.78);
}
.mc-cert-consulta-status-wrap{
  margin-top:auto;
  width:100%;
  padding-top:24px;
  border-top:1px solid rgba(255,255,255,.18);
}
.mc-cert-consulta-status-wrap>span{
  display:block;
  margin-bottom:8px;
  font-size:9px;
  letter-spacing:.09em;
  text-transform:uppercase;
  color:rgba(255,255,255,.62);
  font-weight:600;
}
.mc-cert-consulta-status{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:30px;
  padding:6px 12px;
  border-radius:999px;
  font-size:12px;
  font-weight:650;
  background:#fff;
}
.mc-cert-consulta-status.is-current{color:#20733c;background:#e8f5eb}
.mc-cert-consulta-status.is-expired{color:#a61b13;background:#fdecea}
.mc-cert-consulta-side-error .mc-cert-consulta-check{background:#e7e7e8;color:#9b1c14}

.mc-cert-consulta-main{
  min-width:0;
  padding:26px 28px 22px;
  background:#fff;
  color:#111;
}
.mc-cert-consulta-header{
  display:grid;
  grid-template-columns:minmax(0,1fr) 180px;
  gap:24px;
  align-items:start;
}
.mc-cert-consulta-eyebrow{
  display:block;
  margin-bottom:7px;
  color:#D78E2E;
  font-size:10px;
  line-height:1;
  letter-spacing:.16em;
  text-transform:uppercase;
  font-weight:700;
}
.mc-cert-consulta-heading h3{
  margin:0 0 5px;
  color:#080808;
  font-size:28px;
  line-height:1.12;
  font-weight:700;
  letter-spacing:-.02em;
}
.mc-cert-consulta-heading p{
  margin:0;
  color:#616063;
  font-size:12px;
  line-height:1.45;
  font-weight:400;
}
.mc-cert-consulta-code{
  padding:13px 15px;
  border:1px solid #dedee0;
  border-left:2px solid #D78E2E;
  border-radius:14px;
  background:#fafafa;
}
.mc-cert-consulta-code small,
.mc-cert-consulta-client span,
.mc-cert-consulta-primary span,
.mc-cert-consulta-mini span{
  display:block;
  margin-bottom:6px;
  color:#616063;
  font-size:9px;
  line-height:1.2;
  letter-spacing:.11em;
  text-transform:uppercase;
  font-weight:700;
}
.mc-cert-consulta-code strong{
  color:#111;
  font-size:15px;
  line-height:1.3;
  font-weight:650;
  word-break:break-word;
}
.mc-cert-consulta-divider{
  height:1px;
  background:#e9e9ea;
  margin:18px 0 16px;
}
.mc-cert-consulta-client{padding:0 0 14px}
.mc-cert-consulta-client strong{
  display:block;
  color:#070707;
  font-size:18px;
  line-height:1.32;
  font-weight:650;
}
.mc-cert-consulta-primary{
  padding:14px 16px;
  margin-bottom:14px;
  border:1px solid #e5e5e7;
  border-radius:14px;
  background:#fafafa;
}
.mc-cert-consulta-primary strong{
  display:block;
  color:#111;
  font-size:16px;
  line-height:1.4;
  font-weight:650;
}
.mc-cert-consulta-mini-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px;
}
.mc-cert-consulta-bottom-grid{
  display:grid;
  grid-template-columns:2fr 1fr 1fr;
  gap:8px;
  margin-top:8px;
}
.mc-cert-consulta-mini{
  min-width:0;
  padding:12px 13px;
  border:1px solid #e3e3e5;
  border-radius:12px;
  background:#fff;
}
.mc-cert-consulta-mini strong{
  display:block;
  color:#111;
  font-size:13px;
  line-height:1.35;
  font-weight:600;
  word-break:break-word;
}
.mc-cert-consulta-actions{
  justify-content:flex-end;
  margin-top:16px;
  padding-top:0;
}
.mc-cert-consulta-actions .mc-cert-btn,
.mc-cert-consulta-actions .mc-cert-btn-secondary{
  height:44px;
  min-width:0;
  padding:0 20px;
  border-radius:10px;
  font-size:13px;
  font-weight:650;
}
.mc-cert-consulta-actions .mc-cert-btn{
  background:#D78E2E;
  color:#fff!important;
  box-shadow:none;
}
.mc-cert-consulta-actions .mc-cert-btn:hover{background:#be7926;filter:none;box-shadow:none}
.mc-cert-consulta-actions .mc-cert-btn-secondary{
  border:1px solid #d7d7d9;
  color:#111!important;
  background:#fff;
}
.mc-cert-consulta-foot{
  margin-top:16px;
  padding:12px 0 0;
  border:0;
  border-top:1px solid #ececee;
  border-radius:0;
  color:#77777b;
  background:transparent;
  text-align:left;
  font-size:10px;
}
.mc-cert-consulta-shell>.mc-cert-popup-close{
  top:12px;
  right:12px;
  width:36px;
  height:36px;
  border-radius:10px;
  background:#f1f1f2;
  border:1px solid #dedee0;
  color:#222!important;
  font-size:23px;
  font-weight:500;
}
.mc-cert-consulta-shell>.mc-cert-popup-close:hover{background:#e7e7e8}

@media(max-width:850px){
  .mc-cert-consulta-result{grid-template-columns:130px minmax(0,1fr)}
  .mc-cert-consulta-side{padding:22px 12px 20px}
  .mc-cert-consulta-check{width:60px;height:60px;font-size:34px}
  .mc-cert-consulta-verified{font-size:17px}
  .mc-cert-consulta-main{padding:22px 20px 18px}
  .mc-cert-consulta-header{grid-template-columns:1fr 155px;gap:14px}
  .mc-cert-consulta-mini-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .mc-cert-consulta-bottom-grid{grid-template-columns:1fr 1fr}
  .mc-cert-consulta-person{grid-column:1/-1}
}

@media(max-width:620px){
  .mc-cert-popup-overlay{align-items:flex-start;padding:10px}
  .mc-cert-consulta-shell{width:100%;max-height:none}
  .mc-cert-consulta-result{display:block;max-height:none;border-radius:18px}
  .mc-cert-consulta-side{min-height:0;display:grid;grid-template-columns:auto 1fr;column-gap:14px;row-gap:3px;text-align:left;align-items:center;padding:18px 54px 18px 18px}
  .mc-cert-consulta-check{grid-row:1/3;margin:0;width:52px;height:52px;font-size:30px}
  .mc-cert-consulta-verified{margin:0;font-size:18px}
  .mc-cert-consulta-side p{max-width:none;font-size:11px}
  .mc-cert-consulta-status-wrap{grid-column:1/-1;margin:10px 0 0;padding-top:10px;text-align:left}
  .mc-cert-consulta-status-wrap>span{display:inline-block;margin:0 8px 0 0}
  .mc-cert-consulta-main{padding:18px 16px 16px}
  .mc-cert-consulta-header{grid-template-columns:1fr}
  .mc-cert-consulta-heading h3{font-size:24px}
  .mc-cert-consulta-code{padding:10px 12px}
  .mc-cert-consulta-client strong{font-size:16px}
  .mc-cert-consulta-primary strong{font-size:14px}
  .mc-cert-consulta-mini-grid,.mc-cert-consulta-bottom-grid{grid-template-columns:1fr 1fr}
  .mc-cert-consulta-person{grid-column:1/-1}
  .mc-cert-consulta-actions{justify-content:stretch}
  .mc-cert-consulta-actions .mc-cert-btn,.mc-cert-consulta-actions .mc-cert-btn-secondary{width:100%}
  .mc-cert-consulta-shell>.mc-cert-popup-close{top:12px;right:12px;background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.18);color:#fff!important}
}

@media(max-width:430px){
  .mc-cert-consulta-mini-grid,.mc-cert-consulta-bottom-grid{grid-template-columns:1fr}
  .mc-cert-consulta-person{grid-column:auto}
}

/* v2.37.2 - conservar exactamente la consulta de portada detrás del modal */
#mc-cert-consulta{scroll-margin-top:110px}
html.mc-cert-modal-open,body.mc-cert-modal-open{overflow:hidden!important}
.mc-cert-popup-overlay{background:rgba(0,0,0,.48)!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}

/* v2.37.3 - consulta fluida en la misma pagina, con fondo desenfocado */
.mc-cert-popup-overlay{
  background:rgba(0,0,0,.38)!important;
  backdrop-filter:blur(7px)!important;
  -webkit-backdrop-filter:blur(7px)!important;
}
html.mc-cert-modal-open,body.mc-cert-modal-open{overflow:hidden!important}
.mc-cert-ajax-error{
  margin:10px 0 0;
  padding:10px 12px;
  border:1px solid #e5a6a1;
  border-radius:10px;
  background:#fff4f3;
  color:#8a1f17;
  font-size:13px;
  line-height:1.45;
}
