/* ==========================================================================
   Sección "Productos": catálogos con visor hoja por hoja (octubre 2026)
   Todo lo de esta sección usa el prefijo .mgc- para no pisar el resto del sitio.
   ========================================================================== */

.mgc-stage{background:#08111b;padding:72px 0 96px;position:relative;scroll-margin-top:72px}
.mgc-stage:after{background:linear-gradient(90deg,transparent,rgba(76,134,255,.16),transparent);content:"";height:1px;left:50%;position:absolute;top:0;transform:translate(-50%);width:min(100% - 48px,1240px)}
.mgc-heading{align-items:end;display:grid;gap:2rem 3rem;grid-template-columns:1.2fr .8fr;margin-bottom:2.2rem}
.mgc-heading .section-heading{font-size:clamp(2.1rem,3.8vw,3.7rem);line-height:1.03;max-width:15ch}
.mgc-heading .section-copy{margin:0}
.mgc-count{color:#9fc2ff;display:block;font-size:.8rem;font-weight:700;letter-spacing:.08em;margin-top:.9rem;text-transform:uppercase}

/* ---- filtros por rubro ---- */
.mgc-filters{display:flex;flex-wrap:wrap;gap:.55rem;margin:0 0 1.8rem}
.mgc-chip{-webkit-appearance:none;appearance:none;align-items:center;background:rgba(255,255,255,.03);border:1px solid rgba(180,207,239,.22);border-radius:999px;color:#d7e3f3;cursor:pointer;display:inline-flex;font:600 .86rem/1 "DM Sans",Arial,sans-serif;gap:.5rem;min-height:40px;padding:.55rem 1rem;transition:background .2s,border-color .2s,color .2s;white-space:nowrap}
.mgc-chip span{color:#8fa6c2;font-size:.74rem;font-weight:700}
.mgc-chip:hover{border-color:#6ea6ff;color:#fff}
.mgc-chip[aria-pressed="true"]{background:#1463e6;border-color:#1463e6;color:#fff}
.mgc-chip[aria-pressed="true"] span{color:#d5e4ff}
.mgc-chip:focus-visible,.mgc-btn:focus-visible,.mgc-card__cover:focus-visible,.mgc-viewer button:focus-visible,.mgc-viewer a:focus-visible{outline:3px solid #91b8ff;outline-offset:3px}

/* ---- grilla de catálogos ---- */
.mgc-grid{display:grid;gap:22px;grid-template-columns:repeat(auto-fill,minmax(226px,1fr))}
.mgc-card{background:linear-gradient(160deg,#0e1c2d,#07101a 70%);border:1px solid rgba(180,207,239,.16);border-radius:14px;display:flex;flex-direction:column;overflow:hidden;transition:border-color .25s,transform .25s,box-shadow .25s}
.mgc-card:hover{border-color:rgba(110,166,255,.55);box-shadow:0 22px 50px rgba(0,0,0,.45);transform:translateY(-4px)}
.mgc-card[hidden]{display:none}
.mgc-card__cover{-webkit-appearance:none;appearance:none;aspect-ratio:1055/1491;background:#0b1727;border:0;cursor:pointer;display:block;overflow:hidden;padding:0;position:relative;width:100%}
.mgc-card__cover img{display:block;height:100%;object-fit:cover;transition:transform .5s ease;width:100%}
.mgc-card:hover .mgc-card__cover img{transform:scale(1.035)}
.mgc-card__badge{background:rgba(3,9,16,.82);border:1px solid rgba(255,255,255,.18);border-radius:999px;color:#fff;font:700 .72rem/1 "DM Sans",Arial,sans-serif;letter-spacing:.03em;padding:.42rem .7rem;position:absolute;right:10px;top:10px}
.mgc-card__open{align-items:center;background:linear-gradient(180deg,transparent 45%,rgba(3,9,16,.86));bottom:0;color:#fff;display:flex;font:700 .92rem/1 "DM Sans",Arial,sans-serif;gap:.5rem;justify-content:center;left:0;opacity:0;padding:0 0 1.2rem;position:absolute;right:0;top:0;transition:opacity .25s;align-items:flex-end}
.mgc-card:hover .mgc-card__open,.mgc-card__cover:focus-visible .mgc-card__open{opacity:1}
.mgc-card__body{display:flex;flex:1;flex-direction:column;gap:.45rem;padding:1rem 1rem 1.05rem}
.mgc-card__rubro{color:#7fb0ff;font-size:.68rem;font-weight:800;letter-spacing:.12em;margin:0;text-transform:uppercase}
.mgc-card h3{color:#f5f8fc;font:800 1.05rem/1.2 Manrope,"DM Sans",Arial,sans-serif;margin:0}
.mgc-card__desc{color:#aab8ca;flex:1;font-size:.84rem;line-height:1.45;margin:0}
.mgc-card__meta{color:#8fa6c2;font-size:.76rem;font-weight:600;margin:0}
.mgc-card__actions{display:grid;gap:.5rem;grid-template-columns:1fr auto;margin-top:.55rem}
.mgc-btn{-webkit-appearance:none;appearance:none;align-items:center;background:transparent;border:1px solid rgba(255,255,255,.3);border-radius:8px;color:#fff!important;cursor:pointer;display:inline-flex;font:700 .84rem/1 "DM Sans",Arial,sans-serif;gap:.45rem;justify-content:center;min-height:42px;padding:.5rem .8rem;text-decoration:none!important;transition:background .2s,border-color .2s,transform .2s;white-space:nowrap}
.mgc-btn:hover{background:rgba(255,255,255,.09);border-color:#fff}
.mgc-btn--primary{background:#1463e6;border-color:#1463e6}
.mgc-btn--primary:hover{background:#0c4fc3;border-color:#0c4fc3}
.mgc-btn svg{flex:0 0 auto;height:16px;width:16px}
.mgc-more{display:flex;justify-content:center;margin:2.6rem 0 0}

/* ---- carrusel de categorías: cada tarjeta lleva a su catálogo ---- */
.mg-showcase-card{position:relative}
.mg-showcase-card__link{align-items:center;border:1px solid rgba(180,207,239,.3);border-radius:999px;color:#9fc2ff;display:inline-flex;flex:0 0 auto;height:34px;justify-content:center;margin-left:auto;transition:background .2s,border-color .2s,color .2s;width:34px}
.mg-showcase-card__link svg{height:14px;width:14px}
.mg-showcase-card__link:after{content:"";cursor:pointer;inset:0;position:absolute;z-index:1}
.mg-showcase-card:hover .mg-showcase-card__link{background:#1463e6;border-color:#1463e6;color:#fff}
.mg-showcase-card__link:focus-visible{outline:3px solid #91b8ff;outline-offset:3px}

/* ---- visor hoja por hoja ---- */
.mgc-viewer{background:#03080e;color:#f5f8fc;display:grid;font-family:"DM Sans",Arial,sans-serif;grid-template-columns:150px minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);inset:0;position:fixed;z-index:2147483000}
.mgc-viewer[hidden]{display:none}
.mgc-viewer__bar{align-items:center;background:#07111d;border-bottom:1px solid rgba(180,207,239,.16);display:flex;gap:1rem;grid-column:1/-1;justify-content:space-between;min-height:64px;padding:.6rem 1rem .6rem 1.2rem}
.mgc-viewer__title{display:flex;flex-direction:column;gap:.2rem;min-width:0}
.mgc-viewer__title strong{font:800 1.02rem/1.15 Manrope,"DM Sans",Arial,sans-serif;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mgc-viewer__title span{color:#9fb3cb;font-size:.8rem;font-weight:600}
.mgc-viewer__tools{align-items:center;display:flex;flex:0 0 auto;gap:.5rem}
.mgc-icon-btn{-webkit-appearance:none;appearance:none;align-items:center;background:transparent;border:1px solid rgba(255,255,255,.24);border-radius:8px;color:#fff;cursor:pointer;display:inline-flex;height:42px;justify-content:center;padding:0;transition:background .2s,border-color .2s;width:42px}
.mgc-icon-btn:hover{background:rgba(255,255,255,.1);border-color:#fff}
.mgc-icon-btn svg{height:18px;width:18px}
.mgc-icon-btn[aria-pressed="true"]{background:#1463e6;border-color:#1463e6}
.mgc-icon-btn[disabled]{cursor:default;opacity:.35}

.mgc-viewer__thumbs{grid-column:1;grid-row:2;background:#050d16;border-right:1px solid rgba(180,207,239,.14);display:flex;flex-direction:column;gap:10px;overflow-y:auto;padding:14px 16px;scrollbar-color:#24384f transparent;scrollbar-width:thin}
.mgc-thumb{-webkit-appearance:none;appearance:none;background:#0b1727;border:2px solid transparent;border-radius:6px;cursor:pointer;display:block;flex:0 0 auto;opacity:.62;overflow:hidden;padding:0;position:relative;transition:opacity .2s,border-color .2s}
.mgc-thumb img{aspect-ratio:1055/1491;display:block;height:auto;width:100%}
.mgc-thumb span{background:rgba(3,9,16,.82);border-radius:4px;bottom:4px;color:#fff;font-size:.66rem;font-weight:700;left:4px;padding:2px 5px;position:absolute}
.mgc-thumb:hover{opacity:1}
.mgc-thumb[aria-current="true"]{border-color:#3d86ff;opacity:1}
.mgc-thumb--pdf{align-items:center;aspect-ratio:1055/1491;background:linear-gradient(160deg,#1463e6,#0a3a8c);color:#fff;display:flex;flex-direction:column;font:800 .78rem/1.2 Manrope,Arial,sans-serif;gap:.4rem;justify-content:center;text-align:center}
.mgc-thumb--pdf svg{height:22px;width:22px}

.mgc-viewer__stage{grid-column:2;grid-row:2;align-items:center;display:flex;justify-content:center;min-height:0;min-width:0;overflow:auto;padding:18px 74px;position:relative}
.mgc-viewer__page{align-items:center;display:flex;height:100%;justify-content:center;min-width:0;width:100%}
.mgc-viewer__page img{background:#fff;border-radius:6px;box-shadow:0 18px 60px rgba(0,0,0,.6);cursor:zoom-in;display:block;height:auto;max-height:100%;max-width:100%;width:auto}
.mgc-viewer__page img.is-loading{opacity:.35}
.mgc-viewer.is-zoom .mgc-viewer__stage{align-items:flex-start}
.mgc-viewer.is-zoom .mgc-viewer__page{height:auto}
.mgc-viewer.is-zoom .mgc-viewer__page img{cursor:zoom-out;max-height:none;max-width:none;width:min(1055px,100%)}
.mgc-nav{-webkit-appearance:none;appearance:none;align-items:center;background:rgba(7,17,29,.9);border:1px solid rgba(255,255,255,.26);border-radius:50%;color:#fff;cursor:pointer;display:flex;height:52px;justify-content:center;padding:0;position:fixed;top:calc(50% + 32px);transform:translateY(-50%);transition:background .2s,border-color .2s;width:52px;z-index:2}
.mgc-nav:hover{background:#1463e6;border-color:#1463e6}
.mgc-nav[disabled]{cursor:default;opacity:.25}
.mgc-nav[disabled]:hover{background:rgba(7,17,29,.9);border-color:rgba(255,255,255,.26)}
.mgc-nav svg{height:20px;width:20px}
.mgc-nav--prev{left:164px}
.mgc-nav--next{right:14px}

.mgc-end{align-items:center;background:linear-gradient(160deg,#0e2038,#07101a);border:1px solid rgba(110,166,255,.35);border-radius:16px;display:flex;flex-direction:column;gap:1rem;max-width:520px;padding:2.4rem 2rem;text-align:center}
.mgc-end img{border-radius:6px;box-shadow:0 12px 40px rgba(0,0,0,.55);width:150px}
.mgc-end h3{color:#fff;font:800 1.5rem/1.15 Manrope,Arial,sans-serif;margin:.4rem 0 0}
.mgc-end p{color:#aab8ca;margin:0}
.mgc-end__actions{display:flex;flex-wrap:wrap;gap:.7rem;justify-content:center;margin-top:.4rem}
.mgc-end .mgc-btn{min-height:48px;padding:.7rem 1.2rem}
.mgc-hide-sm{display:inline}

@media (max-width:991.98px){
  .mgc-heading{grid-template-columns:1fr;gap:1rem}
}
@media (max-width:820px){
  .mgc-stage{padding:52px 0 72px}
  .mgc-filters{flex-wrap:nowrap;margin-inline:-18px;overflow-x:auto;padding:0 18px 6px;scrollbar-width:none}
  .mgc-filters::-webkit-scrollbar{display:none}
  .mgc-grid{gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}
  .mgc-card__body{padding:.75rem .7rem .8rem}
  .mgc-card h3{font-size:.92rem}
  .mgc-card__desc{display:none}
  .mgc-card__actions{gap:.4rem;grid-template-columns:1fr auto}
  .mgc-card__actions .mgc-btn{padding:.4rem .6rem}
  .mgc-btn{font-size:.8rem;min-height:40px}
  .mgc-card__open{display:none}

  .mgc-viewer{grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr) auto}
  .mgc-viewer__bar{gap:.5rem;min-height:56px;padding:.45rem .6rem .45rem .8rem}
  .mgc-viewer__title strong{font-size:.9rem}
  .mgc-viewer__title span{font-size:.74rem}
  .mgc-viewer__tools{gap:.35rem}
  .mgc-icon-btn{height:40px;width:40px}
  .mgc-viewer__tools .mgc-btn{min-height:40px;padding:.4rem .7rem}
  .mgc-hide-sm{display:none}
  .mgc-viewer__stage{align-items:flex-start;grid-column:1;grid-row:2;padding:10px 8px}
  .mgc-viewer__page{align-items:flex-start;height:auto}
  .mgc-viewer__page img{max-height:none;width:100%}
  .mgc-viewer.is-zoom .mgc-viewer__stage{justify-content:flex-start}
  .mgc-viewer.is-zoom .mgc-viewer__page{flex:0 0 220%;width:220%}
  .mgc-viewer.is-zoom .mgc-viewer__page img{width:100%}
  .mgc-viewer__thumbs{border-right:0;border-top:1px solid rgba(180,207,239,.14);flex-direction:row;gap:8px;grid-column:1;grid-row:3;overflow-x:auto;overflow-y:hidden;padding:8px 10px}
  .mgc-thumb{width:46px}
  .mgc-thumb span{display:none}
  .mgc-thumb--pdf{font-size:.56rem;width:46px}
  .mgc-thumb--pdf svg{height:14px;width:14px}
  .mgc-nav{background:rgba(7,17,29,.78);height:42px;top:50%;width:42px}
  .mgc-nav--prev{left:6px}
  .mgc-nav--next{right:6px}
  .mgc-end{margin:8vh auto 0;padding:1.6rem 1.1rem}
}
@media (prefers-reduced-motion:reduce){
  .mgc-card,.mgc-card__cover img,.mgc-chip,.mgc-btn{transition:none}
}
