/* MONTEC · Productos Digitales Premium v1.10.0 — isolated from TheGem/Elementor */
.msp-premium{--mpp-green:#036663;--mpp-dark:#073e3c;--mpp-ink:#143c39;--mpp-muted:#5c7670;--mpp-ivory:#faf9f5;--mpp-line:#dfe8e2;font-family:inherit;color:var(--mpp-ink);background:#fff;isolation:isolate;overflow:clip}
.msp-premium *, .msp-premium *::before,.msp-premium *::after{box-sizing:border-box}
.msp-premium [hidden]{display:none!important}
.msp-premium a{text-decoration:none!important}
.msp-premium button,.msp-premium input{font:inherit}
.msp-premium button{cursor:pointer}
.msp-premium img{display:block;width:100%;height:100%;object-fit:cover}
.msp-premium .mpp-shell{width:min(1320px,calc(100% - 80px));margin:auto}
.msp-premium h1,.msp-premium h2,.msp-premium h3,.msp-premium p{margin:0}
.msp-premium h1,.msp-premium h2,.msp-premium h3{color:var(--mpp-dark);font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.043em}
.msp-premium a:focus-visible,.msp-premium button:focus-visible,.msp-premium input:focus-visible{outline:3px solid #5ea9a0;outline-offset:3px}
.msp-premium .mpp-eyebrow{font-size:11px;line-height:1.5;font-weight:750;letter-spacing:.17em;text-transform:uppercase;color:var(--mpp-green)}
.msp-premium .mpp-button{display:inline-flex;justify-content:center;align-items:center;gap:16px;min-height:51px;padding:12px 22px;background:var(--mpp-green);border:1px solid var(--mpp-green);border-radius:8px;color:#fff!important;font-size:14px;line-height:1.35;font-weight:650;transition:transform .2s,background-color .2s;white-space:normal;text-align:center}
.msp-premium .mpp-button:hover{background:var(--mpp-dark);transform:translateY(-2px)}
.msp-premium .mpp-button-outline{background:transparent;color:var(--mpp-dark)!important;border-color:#94afa7}
.msp-premium .mpp-button-outline:hover{background:#edf5f1;color:var(--mpp-dark)!important}
.msp-premium .mpp-actions{display:flex;flex-wrap:wrap;gap:11px}
.msp-premium .mpp-photo-empty{width:100%;height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:flex-start;gap:13px;padding:30px;background:linear-gradient(135deg,#d5e7df,#e9f1e9 48%,#f9f6ee);color:var(--mpp-dark)}
.msp-premium .mpp-photo-empty span{font-size:10px;letter-spacing:.15em;font-weight:700}
.msp-premium .mpp-photo-empty strong{font-family:Georgia,serif;font-size:clamp(25px,3vw,43px);font-weight:400;line-height:1}
/* Hero */
.msp-premium .mpp-hero{padding:82px 0 88px;background:linear-gradient(111deg,#fbfaf6 0%,#fffdf8 57%,#ecf4ed 100%)}
.msp-premium .mpp-hero-grid{display:grid;grid-template-columns:minmax(0,.93fr) minmax(0,1.07fr);align-items:center;gap:58px}
.msp-premium .mpp-hero h1{font-size:clamp(52px,5.45vw,86px);line-height:1.04;margin:20px 0 25px}
.msp-premium .mpp-hero h1 em,.msp-premium .mpp-catalog h2 em,.msp-premium .mpp-featured h2 em{font-style:italic;color:#5a9890}
.msp-premium .mpp-lead{font-size:18px;line-height:1.65;max-width:500px;color:#46635d;margin-bottom:30px}
.msp-premium .mpp-promise{display:flex;flex-wrap:wrap;gap:8px 20px;margin-top:26px;font-size:12px;font-weight:600;color:#4f756e}
.msp-premium .mpp-hero-media{position:relative;aspect-ratio:1.32;overflow:hidden;background:#e9f1eb;border-radius:14px;box-shadow:0 25px 65px #0c403522}
.msp-premium .mpp-hero-media>img{object-position:center}
.msp-premium .mpp-media-caption{position:absolute;bottom:16px;left:16px;padding:7px 12px;border-radius:30px;color:#3e6159;background:#fffffff0;font-size:10px}
/* Spotlight */
.msp-premium .mpp-featured{padding:83px 0;background:#fff}
.msp-premium .mpp-featured-grid{display:grid;grid-template-columns:minmax(0,1.07fr) minmax(0,.93fr);gap:65px;align-items:center}
.msp-premium .mpp-featured-media{aspect-ratio:1.32;overflow:hidden;border-radius:12px;background:#e6efea}
.msp-premium .mpp-featured h2{font-size:clamp(42px,4.2vw,63px);line-height:1.08;margin:15px 0 19px}
.msp-premium .mpp-featured-desc{font-size:16px;line-height:1.66;color:var(--mpp-muted);max-width:515px}
.msp-premium .mpp-chips{display:flex;flex-wrap:wrap;gap:8px;padding:0;margin:24px 0 27px;list-style:none}
.msp-premium .mpp-chips li{padding:8px 13px;border-radius:30px;background:#eef5f1;font-size:12px;color:#48766a}
/* Catalog */
.msp-premium .mpp-catalog{padding:89px 0 95px;background:var(--mpp-ivory);scroll-margin-top:90px}
.msp-premium .mpp-catalog-head{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:56px;align-items:end;margin-bottom:36px}
.msp-premium .mpp-catalog h2{font-size:clamp(37px,4.2vw,61px);line-height:1.1;margin-top:13px}
.msp-premium .mpp-catalog-head>p{font-size:14px;line-height:1.7;color:var(--mpp-muted);max-width:435px}
.msp-premium .mpp-tools{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:26px}
.msp-premium .mpp-filters{display:flex;flex-wrap:wrap;gap:7px}
.msp-premium .mpp-filters button{padding:11px 14px;background:#fff;border:1px solid #d7e4dd;border-radius:7px;font-size:12px;color:#3d5e57;font-weight:650;transition:background-color .18s}
.msp-premium .mpp-filters button:hover,.msp-premium .mpp-filters .is-active{background:var(--mpp-green);border-color:var(--mpp-green);color:#fff}
.msp-premium .mpp-search{min-width:240px;max-width:330px;width:100%;display:flex;align-items:center;gap:9px;padding:0 12px;background:#fff;border:1px solid #d7e4dd;border-radius:7px}
.msp-premium .mpp-search svg{width:17px;height:17px;fill:none;stroke:#6e8780;stroke-width:1.8;flex:none}
.msp-premium .mpp-search input{width:100%;min-width:0;height:43px;padding:0;border:0!important;background:transparent!important;box-shadow:none!important;outline:none!important;color:var(--mpp-ink);font-size:12px}
.msp-premium .mpp-search:focus-within{outline:2px solid #559e92;outline-offset:2px}
.msp-premium .mpp-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.msp-premium .mpp-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:19px}
.msp-premium .mpp-card{display:flex;min-width:0;flex-direction:column;overflow:hidden;border:1px solid #e2eae5;background:#fff;border-radius:12px;transition:transform .22s,box-shadow .22s}
.msp-premium .mpp-card:hover{transform:translateY(-4px);box-shadow:0 17px 40px #063e3516}
.msp-premium .mpp-card-media{position:relative;aspect-ratio:1.55;background:#e3eee8;overflow:hidden}
.msp-premium .mpp-card-media img{transition:transform .3s}
.msp-premium .mpp-card:hover img{transform:scale(1.035)}
.msp-premium .mpp-card-badge{position:absolute;top:15px;left:15px;padding:7px 10px;border-radius:50px;color:#fff;background:#073e3ccf;font-size:10px}
.msp-premium .mpp-card-body{display:flex;flex-direction:column;flex:1;padding:23px}
.msp-premium .mpp-card-kicker{display:block;color:#4e8073;font-size:10px;letter-spacing:.105em;text-transform:uppercase;font-weight:700}
.msp-premium .mpp-card h3{margin:9px 0 11px;font-size:clamp(25px,2.15vw,32px);line-height:1.12}
.msp-premium .mpp-card-body>p{font-size:13px;line-height:1.7;color:var(--mpp-muted)}
.msp-premium .mpp-card-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:19px}
.msp-premium .mpp-card-tags span{border:1px solid var(--mpp-line);background:#f9fbf9;border-radius:30px;padding:6px 9px;font-size:10px;color:#5e766f}
.msp-premium .mpp-card-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:auto;padding-top:23px}
.msp-premium .mpp-card-detail{border:0;padding:0;background:transparent;color:var(--mpp-green);font-size:13px;font-weight:750}
.msp-premium .mpp-card-link{font-size:12px;color:var(--mpp-dark)!important;font-weight:750}
.msp-premium .mpp-empty{padding:28px;border:1px dashed #b8cec4;border-radius:12px;background:#fff;color:#526e64}
/* Closing CTA */
.msp-premium .mpp-bottom{padding:78px 0;background:var(--mpp-dark);color:white}
.msp-premium .mpp-bottom-grid{display:grid;grid-template-columns:1fr 1fr;gap:85px;align-items:center}
.msp-premium .mpp-bottom h2{color:#fff;font-size:clamp(36px,4.3vw,63px);line-height:1.12;margin-top:14px}
.msp-premium .mpp-bottom h2 em{color:#a7d6c8;font-style:italic}
.msp-premium .mpp-bottom .mpp-eyebrow{color:#aad3c6}
.msp-premium .mpp-bottom-grid>div>p{color:#d4e6e1;line-height:1.7;margin-bottom:24px;font-size:15px}
.msp-premium .mpp-button-light{background:#fff;color:var(--mpp-dark)!important;border-color:#fff}
.msp-premium .mpp-button-light:hover{background:#e2f0e9;color:var(--mpp-dark)!important}
.msp-premium .mpp-button-transparent{background:transparent;border-color:#8aafa5;color:#fff!important}
/* Existing modal JS contract, premium visual implementation */
.msp-premium .msp-showcase-modal{position:fixed;inset:0;z-index:999999;display:grid;place-items:center;padding:18px;opacity:0;transition:opacity .2s}
.msp-premium .msp-showcase-modal.is-open{opacity:1}
.msp-premium .msp-showcase-modal__backdrop{position:absolute;inset:0;background:#061c1bdc}
.msp-premium .msp-showcase-modal__dialog{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);width:min(1050px,100%);max-height:calc(100dvh - 36px);overflow:auto;background:#fff;border-radius:16px;box-shadow:0 30px 100px #061c1b77;outline:0}
.msp-premium .msp-showcase-modal__close{position:absolute;right:12px;top:12px;z-index:4;display:grid;place-items:center;width:42px;height:42px;border:1px solid #dce7df;background:#fff;border-radius:50%;color:var(--mpp-ink);font-size:26px}
.msp-premium .msp-showcase-modal__visual{min-height:460px;background:#e9f2ed}
.msp-premium .mpp-modal-photo{height:100%;min-height:460px}
.msp-premium .msp-showcase-modal__content{display:flex;flex-direction:column;gap:16px;padding:53px 39px 35px}
.msp-premium .msp-showcase-modal__meta{display:flex;justify-content:space-between;gap:12px;font-size:11px;color:#63857a;text-transform:uppercase;letter-spacing:.08em}
.msp-premium .msp-showcase-modal__meta em{font-style:normal;color:var(--mpp-green)}
.msp-premium .msp-showcase-modal h3{font-size:clamp(36px,4vw,57px);line-height:1.02}
.msp-premium .msp-showcase-modal__description,.msp-premium .msp-showcase-modal__audience p{font-size:14px;color:var(--mpp-muted);line-height:1.65}
.msp-premium .msp-showcase-modal__value{padding:14px 17px;border-left:3px solid var(--mpp-green);background:#eff6f1}
.msp-premium .msp-showcase-modal__value strong{font-size:17px;font-weight:500;line-height:1.5}
.msp-premium .msp-showcase-modal__value small,.msp-premium .msp-showcase-modal__audience small,.msp-premium .msp-showcase-modal__features small{display:block;color:var(--mpp-green);font-size:10px;letter-spacing:.1em;text-transform:uppercase;font-weight:750;margin-bottom:8px}
.msp-premium .msp-showcase-modal__features ul{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}
.msp-premium .msp-showcase-modal__features li{padding:8px 10px;border-radius:6px;background:#f0f5f2;font-size:12px;color:#496b5f}
.msp-premium .msp-showcase-modal__actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:auto}
html.msp-showcase-modal-open{overflow:hidden}
@media(max-width:1050px){.msp-premium .mpp-hero-grid,.msp-premium .mpp-featured-grid{gap:32px}.msp-premium .mpp-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.msp-premium .mpp-bottom-grid{gap:35px}}
@media(max-width:740px){.msp-premium .mpp-shell{width:calc(100% - 36px)}.msp-premium .mpp-hero{padding:60px 0}.msp-premium .mpp-hero-grid,.msp-premium .mpp-featured-grid,.msp-premium .mpp-catalog-head,.msp-premium .mpp-bottom-grid{grid-template-columns:1fr;gap:30px}.msp-premium .mpp-hero h1{font-size:clamp(45px,11vw,65px)}.msp-premium .mpp-lead{font-size:16px}.msp-premium .mpp-hero-media{aspect-ratio:1.4}.msp-premium .mpp-featured{padding:59px 0}.msp-premium .mpp-featured h2{font-size:42px}.msp-premium .mpp-catalog{padding:65px 0}.msp-premium .mpp-catalog h2{font-size:43px}.msp-premium .mpp-catalog-head{gap:13px}.msp-premium .mpp-tools{flex-direction:column;align-items:stretch}.msp-premium .mpp-filters{flex-wrap:nowrap;overflow-x:auto;padding:5px 0 10px}.msp-premium .mpp-filters button{flex:0 0 auto}.msp-premium .mpp-search{max-width:none}.msp-premium .mpp-grid{grid-template-columns:1fr}.msp-premium .mpp-card-media{aspect-ratio:1.55}.msp-premium .mpp-bottom{padding:66px 0}.msp-premium .msp-showcase-modal__dialog{grid-template-columns:1fr}.msp-premium .msp-showcase-modal__visual,.msp-premium .mpp-modal-photo{min-height:240px;max-height:290px}.msp-premium .msp-showcase-modal__content{padding:32px 23px}.msp-premium .msp-showcase-modal__actions .mpp-button{width:100%}}
@media(max-width:440px){.msp-premium .mpp-hero .mpp-actions .mpp-button{width:100%}.msp-premium .mpp-hero-media{aspect-ratio:1.25}.msp-premium .mpp-hero h1{font-size:43px}.msp-premium .mpp-featured .mpp-actions .mpp-button{width:100%}}
@media(prefers-reduced-motion:reduce){.msp-premium *{transition:none!important;scroll-behavior:auto!important}}
