/* Final editorial rhythm and progressive enhancement. */
/* Integral review 2026-10-01: offer first, compact process, complete cases dialogs. */
html[data-page=casos] #video-modal,html[data-page=casos] #lightbox{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;background:#000f;z-index:10000}
html[data-page=casos] #video-modal.on,html[data-page=casos] #lightbox.on{opacity:1;pointer-events:auto}
html[data-page=casos] .vm-bg{position:absolute;inset:0;background:#000e}
html[data-page=casos] .vm-box{position:relative;z-index:1;width:min(880px,92vw);background:#000;border-radius:4px}
html[data-page=casos] .vm-ratio{position:relative;width:100%;padding-top:56.25%}
html[data-page=casos] .vm-ratio iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
html[data-page=casos] #lb-img-wrap{position:relative;display:flex;align-items:center;justify-content:center}
html[data-page=casos] #lightbox-img{width:auto;height:auto;object-fit:contain;opacity:1;transform:none}
html[data-page=casos] #lightbox-close,html[data-page=casos] #lightbox-prev,html[data-page=casos] #lightbox-next,html[data-page=casos] #lightbox-counter{position:absolute}
html[data-page=casos] #lightbox-prev{left:16px}html[data-page=casos] #lightbox-next{right:16px}
html[data-page=casos] #lightbox-counter{left:50%;transform:translateX(-50%);text-transform:none}
[hidden]{display:none!important}
:root{--az:#0000ff;--az2:#1a1aff;--s5:#999;--s6:#aaa;--ff:'Plus Jakarta Sans','Helvetica Neue',sans-serif;--fd:var(--ff);--fi:var(--ff);--fm:var(--ff)}
:root[data-theme=light]{--s5:#5e5e5e;--s6:#505050}
.mm-fallback-nav{display:flex;gap:18px;flex-wrap:wrap;padding:100px 24px 16px;font-size:13px;background:var(--b)}
.mm-ready .mm-fallback-nav{display:none}
html:not(.mm-ready) .suites-tabs,html:not(.mm-ready) .mm-service-detail,html:not(.mm-ready) .ham,html:not(.mm-ready) #theme-btn,html:not(.mm-ready) #btt,html:not(.mm-ready) .v37-replay,html:not(.mm-ready) .v40-pause{display:none!important}
html:not(.mm-ready) .suite-panel--hidden{display:block!important}
html:not(.mm-ready) .faq-a{max-height:none!important;opacity:1!important;padding-bottom:20px!important}
html:not(.mm-ready) .faq-plus,html:not(.mm-ready) .port-filters,html:not(.mm-ready) .port-sticky-bar,html:not(.mm-ready) .filter-bar,html:not(.mm-ready) [data-expand]{display:none!important}
html:not(.mm-ready) .mm-collapsible>*{display:block!important}
.mm-ready .suite-panel[hidden]{display:none!important}
.suites-tabs{max-width:820px;margin-inline:auto}
.mm-scope-note{max-width:760px;margin:22px auto 36px;color:var(--s6);font-size:14px;text-align:center;line-height:1.7}
.mm-service-detail{display:inline-flex;align-items:center;min-height:44px;margin-top:24px;border-bottom:1px solid var(--br3);font-size:13px;font-weight:600}
.svc-card{display:flex;flex-direction:column;align-items:flex-start;cursor:default!important;box-shadow:none!important}
.svc-card .mm-service-detail{margin-top:auto;padding-top:22px}
.svc-card .svc-tags{margin-bottom:12px}.svc-title{line-height:1.25}
#servicios h2{max-width:900px;font-size:clamp(32px,4.2vw,64px);line-height:1.1;letter-spacing:-.05em}
.suites-intro{grid-template-columns:1fr!important;max-width:900px}
.faq-item.open .faq-a{max-height:none!important}
.proceso-step{align-content:start;display:flex!important;flex-direction:column;justify-content:flex-start}
.proceso-step:disabled{opacity:1;cursor:default}
.mm-selection img[src*="mm_web_port_03"]{object-position:50% 35%}
.mm-selection img[src*="mm_web_port_07"]{object-position:50% 35%}
@media(min-width:1101px){.svc-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
.proceso-step{text-align:left;display:block;width:100%;line-height:1.6}.proceso-step>span{display:block}.proceso-ico{display:none!important}.proceso-title{font-size:19px;margin:20px 0 10px}.proceso-desc{font-size:14px}.proceso-step-expand-ico{position:absolute}
#proceso h2{font-size:clamp(30px,3.8vw,52px)}
.mm-proof-grid h3{font-size:24px}.mm-proof-grid p{color:var(--s6);line-height:1.7}
#cine-selection-1{grid-template-columns:repeat(3,minmax(0,1fr))}
.session-play{opacity:1!important;width:44px;height:44px;background:#0009!important;border:1px solid #ffffff70;border-radius:50%}
.session-card:focus-visible .session-play,.session-card:hover .session-play{background:#0000ff!important}
.session-waveform{display:none!important}
.mm-project-grid{gap:0;border-top:1px solid var(--br3)}
.mm-project-grid article{padding:28px 30px 28px 0;border:0;border-bottom:1px solid var(--br3);border-radius:0;background:transparent}
.mm-project-grid article+article{padding-left:30px;border-left:1px solid var(--br3)}
.mm-project-grid h3{margin:20px 0 14px}.mm-project-grid p{font-size:15px;flex:1}
.mm-project-link{font-size:13px;font-weight:600;min-height:44px;display:flex;align-items:center;margin-top:20px;text-decoration:underline;text-underline-offset:5px}
.faq-layout,.faq-grid{grid-template-columns:1fr!important;max-width:900px}
.faq-wrap{max-width:900px;margin-inline:auto}.faq-q{font-size:16px;gap:18px;text-align:left}.faq-q span:first-child{flex:1}.faq-a p{max-width:72ch}.faq-a[hidden]{display:none!important}
.cta-inner{grid-template-columns:1fr!important;max-width:980px}.cta-left{max-width:850px}.cta-contact-items{display:flex;flex-wrap:wrap;gap:26px 48px;margin-block:30px!important}.cta-contact-item{margin:0!important}
.mm-deferred-image,.case-thumb{position:relative}.mm-play-label{position:absolute;bottom:16px;left:16px;display:inline-flex;align-items:center;gap:8px;padding:8px 12px;background:#000c;color:#fff;font-size:12px;line-height:1.5;border:1px solid #ffffff50;border-radius:4px}
.mm-selection article{padding:0 0 16px;border-radius:8px}.mm-deferred-image{border-radius:8px 8px 0 0}.mm-work-link{color:var(--s6)!important}.mm-filter-status{font-size:13px;color:var(--s6);padding:18px 24px 0}
.mm-no-js{display:none}.mm-image-fallback{background:var(--s2);min-height:100px}.mm-image-failed{font:14px/1.6 var(--ff);color:var(--w)}
#lightbox-counter{color:#ddd;font-size:13px;max-width:80%;text-align:center;line-height:1.6}#lightbox-error{color:#fff;text-align:center;position:absolute;bottom:100px;left:10%;right:10%}
#lightbox-counter{white-space:normal!important}
@media(max-width:700px){#lightbox-counter{bottom:76px;max-width:calc(100% - 40px);width:max-content;padding:6px 10px;background:#000b}}
#lightbox-img{touch-action:pan-x pan-y;transition:none!important}#vm-direct{margin:16px auto 0;display:flex;width:max-content;background:#151515;color:#fff;border:1px solid #555}
.svc-modal-close,.vm-close{min-width:44px;min-height:44px;font-size:26px}.svc-modal-title{line-height:1.2}.svc-modal-feat{line-height:1.6}.svc-modal-inner{max-height:90svh;overflow-y:auto}.svc-modal-sec-title{font-size:13px;font-weight:600}
.case-preview{display:block}.case-thumb .mm-play-label{bottom:14px}.case-cta{min-height:44px}.case-contact{font-size:12px}
.nav-cta{font-size:12px}.drawer a{color:var(--w)!important}.drawer-close{margin-left:auto}
.cta-contact-items{flex-direction:row!important}
.footer-logo{color:var(--w);font-size:26px;letter-spacing:-.055em;font-weight:800;text-transform:none}
.footer-logo .mm-ast,.footer-logo .mm-ast use{color:#0000ff!important;fill:#0000ff!important}
.footer-logo-img~span{display:inline!important}
.mm-selection .photo-strip-item{display:block;width:100%!important;height:auto!important;aspect-ratio:auto;flex:none;border:0}
img[src*="mm_web_port_03"],img[src*="mm_web_port_07"]{object-position:50% 35%}
html[data-page=casos] .cta-title{font-size:clamp(32px,4.2vw,60px);letter-spacing:-.05em;line-height:1.15}
html[data-page=casos] .cta-title em{color:var(--w)}
html[data-page=casos] .cta-subtitle{font-size:16px;line-height:1.7;color:var(--s6)}
html[data-page=casos] .cta-btns .btn,html[data-page=casos] .cta-btns .cta-wa{min-height:48px;border-radius:999px;font-size:13px;font-weight:600;letter-spacing:0;text-transform:none}
html[data-page=casos] .cta-wa,html[data-page=casos] .cta-wa:hover{background:#0000ff!important;border-color:#0000ff!important;box-shadow:none}
html[data-page=casos] .cta-section{padding-block:88px}
@media(max-width:1000px){#cine-selection-1{grid-template-columns:repeat(3,minmax(0,1fr))}.mm-project-grid{grid-template-columns:1fr}.mm-project-grid article,.mm-project-grid article+article{padding:24px 0;border-left:0}.mm-project-grid h3{font-size:25px;margin-top:12px}.mm-project-grid p{max-width:58ch}.mm-project-link{margin-top:10px}}
@media(max-width:700px){#cine-selection-1{grid-template-columns:1fr}.mm-scope-note{text-align:left;font-size:13px}.suites-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.suite-tab{font-size:13px;white-space:normal;padding:12px}.mm-proof-grid h3{font-size:23px}.mm-project-heading{margin-bottom:28px}.mm-project-grid article{padding:22px 0}.mm-project-grid p{font-size:14px}.faq-q{font-size:15px}.cta-contact-items{gap:18px 32px}.cta-contact-val{font-size:14px}.proceso-step{padding:22px!important}.proceso-grid{gap:12px}#contacto h2{font-size:clamp(30px,9vw,42px)}.nav-cta{font-size:11px;min-height:44px}.svc-modal-inner{padding:28px 20px}.svc-modal-title{font-size:30px!important}.svc-modal-body{grid-template-columns:1fr;gap:26px}.svc-modal-footer{flex-wrap:wrap}.mm-selection article{border-radius:8px}.mm-play-label{bottom:12px;left:12px}}
/* A quieter hierarchy for supporting information keeps the image sections prominent. */
.v38-photo img{aspect-ratio:var(--photo-ratio)!important}
.mm-own-work{display:grid;grid-template-columns:minmax(0,450px) minmax(0,1fr);gap:32px;align-items:center;margin-top:36px;padding-top:32px;border-top:1px solid var(--br3)}
.mm-own-mark{display:flex;align-items:center;justify-content:center;gap:14px;min-height:220px;background:#080808;color:#f2f0ec}
.mm-own-mark svg{width:52px;height:52px;fill:#0000ff;flex:none}
.mm-own-mark>span{font-size:36px;font-weight:800;letter-spacing:-.04em;line-height:1}
.mm-own-label{font-size:11px!important;letter-spacing:.08em;text-transform:uppercase;color:var(--s6);margin-bottom:12px}
.mm-own-work h3{font-size:24px;line-height:1.3;letter-spacing:-.04em;margin-bottom:12px}
.mm-own-work p{font-size:14px;line-height:1.7;color:var(--s6);max-width:56ch}
.mm-own-web{display:block}.mm-own-web img{display:block;width:100%;height:auto;aspect-ratio:8/5}
.mm-project-link+.mm-project-link{margin-top:0}
#servicios .suites-intro{margin-bottom:36px;gap:0;max-width:900px}
#servicios h2{font-size:clamp(32px,3.8vw,54px);max-width:21ch}
#servicios .body-lg{max-width:64ch;line-height:1.65}
#servicios .suites-tabs{margin-inline:0}
#servicios .mm-scope-note{margin:18px 0 30px;text-align:left;max-width:76ch;font-size:13px}
#proceso h2{font-size:clamp(29px,3.2vw,46px);text-transform:none;line-height:1.18;letter-spacing:-.045em}
#testimonios h2{font-size:clamp(29px,3.2vw,46px);text-transform:none;line-height:1.18;letter-spacing:-.045em;max-width:26ch}
#faq h2{font-size:clamp(29px,3.2vw,46px);text-transform:none;line-height:1.18;letter-spacing:-.045em}
.proceso-detail-wrap.open{max-height:none;overflow:visible}
.proceso-detail-wrap{transition:none}
.proceso-detail-col-title{font-size:12px;letter-spacing:.04em;line-height:1.6}
.proceso-detail-duration{font-size:12px;line-height:1.6;letter-spacing:0;text-transform:none}
html[data-page=casos] .casos-hero-title{font-size:clamp(36px,5.5vw,80px);line-height:1.08;letter-spacing:-.055em;max-width:18ch}
html[data-page=casos] .casos-hero-accent{font-size:clamp(20px,2.4vw,30px);line-height:1.4;margin-top:16px}
html[data-page=casos] .casos-hero{padding-bottom:48px}
html[data-page=casos] .filter-bar{padding-inline:0}
html[data-page=casos] .filter-inner{max-width:1320px;margin-inline:auto;padding-inline:clamp(20px,4vw,52px);gap:8px}
html[data-page=casos] .filter-btn{min-height:44px;text-transform:none;font-size:13px;letter-spacing:0;border-radius:4px;transition:border-color 180ms var(--mm-ease),transform 180ms var(--mm-ease)}
html[data-page=casos] .filter-btn:not(.on):hover{color:var(--w)}
html[data-page=casos] .cases-section{padding-top:24px}
@media(max-width:700px){
 .mm-own-work{grid-template-columns:1fr;gap:22px;margin-top:24px;padding-top:24px}
 .mm-own-mark{min-height:180px}.mm-own-mark>span{font-size:30px}.mm-own-mark svg{width:44px;height:44px}
 #servicios .suites-intro{margin-bottom:28px}
 #servicios h2{font-size:32px}
 #servicios .mm-scope-note{margin-bottom:24px}
 .proceso-grid{gap:0}
 .proceso-step{display:grid!important;grid-template-columns:30px 1fr;gap:6px 12px;padding:22px 36px 22px 0!important;border-radius:0!important;border:0!important;border-top:1px solid var(--br3)!important;background:transparent!important;box-shadow:none!important}
 .proceso-connector{display:none!important}
 .proceso-step>span{grid-column:2}
 .proceso-step>.proceso-step-num{grid-column:1;grid-row:1;padding-top:4px}
 .proceso-title{font-size:19px;margin:0;line-height:1.4}
 .proceso-desc{font-size:14px;line-height:1.65}
 .proceso-step-expand-ico{top:22px;right:0;bottom:auto}
 .proceso-step.expanded{background:transparent!important;box-shadow:none!important}
 .proceso-step.expanded .proceso-title{color:var(--az-text)}
 .proceso-detail-wrap.open{margin:0 0 22px}
 .proceso-detail-inner{padding:22px 20px}
 html[data-page=casos] .filter-inner{padding-inline:20px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.session-play,.mm-play-label,.svc-card,.suite-panel,.case-card,.proceso-detail-inner{transition:none!important;animation:none!important}}
