/* Proyección Creativa · Espacios & Marca · v1.0 */
.em-hero{position:relative;min-height:720px;display:flex;align-items:center;overflow:hidden;background:#071a36;color:#fff}
.em-hero::before{content:"";position:absolute;inset:0;background:url('../img/espacios-marca/espacios-hero.webp') center/cover no-repeat;transform:scale(1.005)}
.em-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,20,44,.88) 0%,rgba(5,20,44,.74) 33%,rgba(5,20,44,.28) 58%,rgba(5,20,44,.04) 100%)}
.em-hero-inner{position:relative;z-index:2;width:min(calc(100% - 64px),var(--container));margin-inline:auto;padding:118px 0 108px}
.em-hero-copy{max-width:640px}
.em-hero .eyebrow{color:#c7d6ea}
.em-hero h1{margin:0;font-size:clamp(3.85rem,5.55vw,5.95rem);line-height:.96;letter-spacing:-.058em;max-width:700px}
.em-hero h1 span{color:var(--yellow)}
.em-hero-lead{max-width:590px;margin:28px 0 0;color:#d7e0ec;font-size:1.08rem;line-height:1.75}
.em-hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:36px}
.em-hero .btn-ghost{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.38);color:#fff}
.em-hero .btn-ghost:hover{background:rgba(255,255,255,.13)}
.em-hero-tag{position:absolute;z-index:2;right:32px;bottom:28px;padding:10px 15px;border-radius:999px;background:rgba(7,26,54,.76);backdrop-filter:blur(10px);font-size:.69rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#fff}

.em-intro{padding:120px 0 108px;background:#fff}
.em-intro-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:90px;align-items:start}
.em-kicker{margin:4px 0 0;color:var(--blue);font-size:.72rem;text-transform:uppercase;letter-spacing:.15em;font-weight:900}
.em-intro h2,.em-section-title{margin:0;color:var(--navy);font-size:clamp(3rem,4.65vw,4.85rem);line-height:1.01;letter-spacing:-.055em}
.em-intro-copy>p{margin:25px 0 0;color:var(--muted);line-height:1.78;max-width:790px;font-size:1.02rem}
.em-formula{display:flex;flex-wrap:wrap;align-items:center;gap:11px;margin-top:30px;font-size:.88rem;font-weight:900;color:var(--navy)}
.em-formula span{display:inline-flex;align-items:center;min-height:42px;padding:0 14px;border:1px solid var(--line);border-radius:999px;background:#fff}
.em-formula b{color:var(--yellow);font-size:1.12rem}

.em-story{padding:112px 0;background:#fff}
.em-story.soft{background:var(--soft)}
.em-story-grid{display:grid;grid-template-columns:minmax(0,.83fr) minmax(0,1.17fr);gap:86px;align-items:center}
.em-story-grid.reverse{grid-template-columns:minmax(0,1.17fr) minmax(0,.83fr)}
.em-story-grid.reverse .em-story-media{order:1}.em-story-grid.reverse .em-story-copy{order:2}
.em-story-media{margin:0;overflow:hidden;border-radius:30px;background:#dfe5ec;box-shadow:var(--shadow)}
.em-story-media img{width:100%;aspect-ratio:4/3;object-fit:cover}
.em-story-copy h2{margin:0;color:var(--navy);font-size:clamp(3rem,4.55vw,4.7rem);line-height:1;letter-spacing:-.055em}
.em-story-copy>p:not(.eyebrow){margin:24px 0 0;color:var(--muted);font-size:1rem;line-height:1.78}
.em-list{display:grid;grid-template-columns:1fr 1fr;gap:0 26px;list-style:none;padding:0;margin:30px 0 0;border-top:1px solid var(--line)}
.em-list li{padding:14px 0;border-bottom:1px solid var(--line);font-size:.87rem;color:#445064}
.em-list li::before{content:"•";color:var(--yellow);font-weight:900;margin-right:9px}
.em-story-copy .text-link{margin-top:30px}

.em-production{padding:114px 0 124px;background:#fff}
.em-production-head{display:grid;grid-template-columns:1fr .75fr;gap:70px;align-items:end;margin-bottom:44px}
.em-production-head p{margin:0;color:var(--muted);line-height:1.75}
.em-production-image{margin:0;border-radius:30px;overflow:hidden;background:#dfe5ec;box-shadow:var(--shadow)}
.em-production-image img{width:100%;aspect-ratio:16/8.3;object-fit:cover}
.em-production-cats{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:28px}
.em-production-cats article{padding:26px 0;border-top:1px solid var(--line)}
.em-production-cats h3{margin:0;color:var(--navy);font-size:1.05rem}.em-production-cats p{margin:9px 0 0;color:var(--muted);font-size:.86rem;line-height:1.65}

.em-identity{padding:108px 0;background:#f7f9fc}
.em-identity-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:90px;align-items:start}
.em-identity-copy p:last-child{margin:24px 0 0;color:var(--muted);line-height:1.78}
.em-chip-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.em-chip{min-height:82px;padding:20px;border:1px solid #e2e7ee;border-radius:18px;background:#fff;display:flex;align-items:center;gap:14px;color:var(--navy);font-weight:850;box-shadow:0 7px 22px rgba(7,26,54,.04)}
.em-chip span{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border-radius:50%;background:#fff5c2;color:#bd8700;font-size:.76rem;font-weight:900}

.em-case{padding:120px 0;background:#fff}
.em-case-head{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:42px}
.em-case-head p:last-child{max-width:350px;margin:0;color:var(--muted);font-size:.87rem;line-height:1.65}
.em-case-media{margin:0;border-radius:30px;overflow:hidden;box-shadow:var(--shadow);background:#dfe5ec}
.em-case-media img{width:100%;aspect-ratio:16/8.5;object-fit:cover}
.em-case-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:34px;margin-top:34px}
.em-case-grid article{padding-top:24px;border-top:1px solid var(--line)}
.em-case-grid span{font-size:.69rem;letter-spacing:.13em;text-transform:uppercase;font-weight:900;color:var(--blue)}
.em-case-grid h3{margin:10px 0 0;color:var(--navy);font-size:1.22rem}.em-case-grid p{margin:10px 0 0;color:var(--muted);font-size:.88rem;line-height:1.67}

.em-process{padding:100px 0;background:var(--navy);color:#fff}
.em-process-head{display:grid;grid-template-columns:.78fr 1.22fr;gap:72px;align-items:start;margin-bottom:46px}
.em-process-head .eyebrow{color:#b9c7da}.em-process-head h2{margin:0;font-size:clamp(2.8rem,4.4vw,4.35rem);line-height:1.02;letter-spacing:-.052em}
.em-process-head p:last-child{margin:3px 0 0;color:#bfcbe0;line-height:1.74;max-width:530px}
.em-process-steps{display:grid;grid-template-columns:repeat(5,1fr);list-style:none;padding:0;margin:0;border-top:1px solid rgba(255,255,255,.18)}
.em-process-steps li{padding:27px 24px 8px 0;border-right:1px solid rgba(255,255,255,.13);min-height:155px}.em-process-steps li:last-child{border-right:0;padding-right:0}.em-process-steps span{color:var(--yellow);font-size:.73rem;letter-spacing:.11em;font-weight:900}.em-process-steps strong{display:block;margin-top:24px;font-size:1rem}.em-process-steps p{margin:8px 0 0;color:#aebed3;font-size:.81rem;line-height:1.55}

.em-digital-cross{padding:112px 0;background:linear-gradient(135deg,#0a2b5e 0%,#071a36 68%);color:#fff;overflow:hidden;position:relative}
.em-digital-cross::after{content:"";position:absolute;width:430px;height:430px;border:70px solid rgba(23,103,255,.18);border-radius:50%;right:-110px;top:-125px}
.em-digital-grid{position:relative;z-index:2;display:grid;grid-template-columns:1fr auto;gap:70px;align-items:center}
.em-digital-cross .eyebrow{color:#a9bfdf}.em-digital-cross h2{margin:0;max-width:850px;font-size:clamp(3rem,4.8vw,4.9rem);line-height:1;letter-spacing:-.055em}.em-digital-cross p{margin:22px 0 0;color:#c6d3e5;line-height:1.72;max-width:760px}
.em-digital-cross .btn-ghost{background:transparent;border-color:rgba(255,255,255,.36);color:#fff;white-space:nowrap}

.em-contact{padding:116px 0;background:#fff8d9}
.em-contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:90px;align-items:start}
.em-contact h2{margin:0;color:var(--navy);font-size:clamp(3rem,4.6vw,4.8rem);line-height:1;letter-spacing:-.055em}
.em-contact-copy>p:not(.eyebrow){margin:24px 0 0;color:#5f6875;line-height:1.75;max-width:580px}
.em-contact .mini-brief{margin-top:0;padding-top:0;border-top:0}.em-contact .btn-dark{max-width:270px}.em-contact-note{margin-top:16px;color:#6f7782;font-size:.76rem;line-height:1.55}

.em-footer-current{color:var(--blue)!important;font-weight:850}

@media(max-width:1040px){.em-hero-inner{width:min(calc(100% - 44px),var(--container))}.em-hero{min-height:650px}.em-intro-grid,.em-story-grid,.em-story-grid.reverse,.em-identity-grid,.em-contact-grid{gap:55px}.em-production-head{gap:45px}.em-process-steps{grid-template-columns:repeat(5,1fr)}.em-process-steps li{padding-right:16px}}
@media(max-width:820px){.em-hero{min-height:620px;background:#071a36}.em-hero::before{background-position:66% center}.em-hero::after{background:linear-gradient(90deg,rgba(5,20,44,.94) 0%,rgba(5,20,44,.82) 52%,rgba(5,20,44,.25) 100%)}.em-hero-inner{padding:96px 0 90px}.em-hero-copy{max-width:590px}.em-hero-tag{display:none}.em-intro,.em-story,.em-production,.em-identity,.em-case,.em-contact{padding:84px 0}.em-intro-grid,.em-story-grid,.em-story-grid.reverse,.em-production-head,.em-identity-grid,.em-contact-grid,.em-process-head{grid-template-columns:1fr;gap:32px}.em-story-grid.reverse .em-story-media,.em-story-grid.reverse .em-story-copy{order:initial}.em-list{grid-template-columns:1fr 1fr}.em-production-cats{grid-template-columns:1fr}.em-production-cats article{padding:20px 0}.em-case-head{align-items:flex-start;flex-direction:column}.em-case-head p:last-child{max-width:650px}.em-case-grid{grid-template-columns:1fr 1fr}.em-process{padding:82px 0}.em-process-steps{grid-template-columns:1fr}.em-process-steps li{min-height:auto;border-right:0;border-bottom:1px solid rgba(255,255,255,.13);display:grid;grid-template-columns:52px 1fr;padding:20px 0}.em-process-steps strong{margin-top:0}.em-process-steps p{margin-top:6px}.em-digital-grid{grid-template-columns:1fr;gap:34px}.em-digital-cross{padding:88px 0}.em-contact .btn-dark{max-width:none}}
@media(max-width:560px){.em-hero-inner{width:min(calc(100% - 30px),var(--container))}.em-hero{min-height:660px}.em-hero::before{background-position:73% center}.em-hero::after{background:linear-gradient(90deg,rgba(5,20,44,.96) 0%,rgba(5,20,44,.9) 55%,rgba(5,20,44,.35) 100%)}.em-hero-inner{padding:80px 0 74px}.em-hero h1{font-size:clamp(3rem,14vw,4.35rem)}.em-hero-lead{font-size:.96rem}.em-hero-actions{flex-direction:column;align-items:stretch}.em-hero-actions .btn{width:100%}.em-intro,.em-story,.em-production,.em-identity,.em-case,.em-contact{padding:70px 0}.em-intro h2,.em-section-title,.em-story-copy h2,.em-contact h2{font-size:clamp(2.5rem,12vw,3.5rem)}.em-story-media,.em-production-image,.em-case-media{border-radius:22px}.em-list{grid-template-columns:1fr}.em-chip-grid{grid-template-columns:1fr}.em-case-grid{grid-template-columns:1fr}.em-case-grid article{padding-top:18px}.em-process-head h2,.em-digital-cross h2{font-size:clamp(2.5rem,12vw,3.55rem)}.em-formula{gap:8px}.em-formula span{font-size:.77rem}}

.main-nav .em-current{color:var(--blue)}.main-nav .em-current::after{right:0!important}


/* Espacios & Marca navigation + spacing v2 */
.em-breadcrumb{display:flex;align-items:center;gap:9px;margin:0 0 20px;color:#c7d6ea;font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.em-breadcrumb a{color:#fff}.em-breadcrumb a:hover{text-decoration:underline;text-underline-offset:4px}.em-breadcrumb span[aria-current="page"]{color:#c7d6ea}.em-breadcrumb span[aria-hidden="true"]{color:var(--yellow)}
.em-page-nav{position:sticky;top:82px;z-index:42;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);border-bottom:1px solid #e7eaf0;box-shadow:0 5px 18px rgba(7,26,54,.035)}
.em-page-nav-inner{min-height:58px;display:flex;align-items:center;gap:34px;min-width:0}
.em-page-nav-title{flex:0 0 auto;color:var(--navy);font-size:.78rem;font-weight:900;letter-spacing:.02em}
.em-page-nav-links{display:flex;align-items:center;gap:24px;min-width:0;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.em-page-nav-links::-webkit-scrollbar{display:none}
.em-page-nav-links a{position:relative;flex:0 0 auto;padding:20px 0 18px;color:#667085;font-size:.76rem;font-weight:760;white-space:nowrap}
.em-page-nav-links a::after{content:"";position:absolute;left:0;right:100%;bottom:0;height:2px;background:var(--blue);transition:right .2s ease}
.em-page-nav-links a:hover,.em-page-nav-links a.is-active{color:var(--blue)}
.em-page-nav-links a:hover::after,.em-page-nav-links a.is-active::after{right:0}
#soluciones,#branding-interiores,#promocionales,#produccion,#identidad,#proyecto-destacado,#proceso,#digital-cross,#contacto{scroll-margin-top:154px}
.em-intro{padding-top:108px}
@media(max-width:1040px){.em-page-nav-inner{gap:24px}.em-page-nav-links{gap:20px}}
@media(max-width:820px){.em-page-nav{top:76px}.em-page-nav-inner{width:100%;padding:0 22px;min-height:54px;gap:20px}.em-page-nav-title{display:none}.em-page-nav-links{gap:22px}.em-page-nav-links a{padding:18px 0 16px}#soluciones,#branding-interiores,#promocionales,#produccion,#identidad,#proyecto-destacado,#proceso,#digital-cross,#contacto{scroll-margin-top:136px}}
@media(max-width:560px){.em-page-nav-inner{padding:0 15px}.em-page-nav-links{gap:20px}.em-page-nav-links a{font-size:.73rem}}


/* Espacios & Marca · hierarchy refinements v2.1 */
.em-hero{min-height:620px}
.em-hero-inner{padding:88px 0 82px}
.em-hero h1{font-size:clamp(3.65rem,5.15vw,5.35rem);max-width:680px}
.em-hero-lead{margin-top:24px}
.em-hero-actions{margin-top:30px}
.em-intro{padding:92px 0 88px}
.em-story{padding:88px 0}
.em-story-grid{grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:68px}
.em-story-grid.reverse{grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr)}
.em-story-media{max-width:560px;width:100%;border-radius:26px}
.em-story-media img{aspect-ratio:5/4;max-height:500px;object-fit:cover}
.em-story-copy h2{font-size:clamp(3rem,4.2vw,4.55rem)}
.em-production{padding:92px 0 102px}
.em-production-head{margin-bottom:34px}
.em-production-image{border-radius:26px}
.em-production-image img{aspect-ratio:16/6.2;max-height:420px;object-fit:cover}
.em-identity{padding:88px 0}
.em-case{padding:94px 0}
.em-case-head{margin-bottom:34px}
.em-case-media{border-radius:26px}
.em-case-media img{aspect-ratio:16/6.4;max-height:460px;object-fit:cover}
.em-process{padding:86px 0}
.em-digital-cross{padding:92px 0}
.em-contact{padding:94px 0}
@media(max-width:1040px){.em-hero{min-height:590px}.em-story-grid,.em-story-grid.reverse{gap:50px}}
@media(max-width:820px){
  .em-hero{min-height:570px}.em-hero-inner{padding:74px 0 70px}.em-story{padding:76px 0}
  .em-story-media{max-width:none}.em-story-media img{max-height:none;aspect-ratio:16/10}
  .em-production-image img,.em-case-media img{max-height:none;aspect-ratio:16/9}
}
@media(max-width:560px){.em-hero{min-height:610px}.em-hero-inner{padding:68px 0 64px}.em-story,.em-production,.em-identity,.em-case,.em-contact{padding:66px 0}}

/* Espacios & Marca · Ritmo de navegación v2.2 / sitio v3.9
   Mismo criterio que Digital: contenido cerca del menú sticky y aire al final. */
#soluciones,#branding-interiores,#promocionales,#produccion,#identidad,#proyecto-destacado,#proceso,#digital-cross,#contacto{
  scroll-margin-top:142px;
}

.em-intro{padding:52px 0 110px}
.em-story{padding:48px 0 110px}
.em-production{padding:50px 0 114px}
.em-identity{padding:48px 0 108px}
.em-case{padding:50px 0 112px}
.em-process{padding:48px 0 108px}
.em-digital-cross{padding:50px 0 106px}
.em-contact{padding:50px 0 104px}

@media(max-width:1040px){
  #soluciones,#branding-interiores,#promocionales,#produccion,#identidad,#proyecto-destacado,#proceso,#digital-cross,#contacto{scroll-margin-top:140px}
  .em-intro{padding:48px 0 104px}
  .em-story{padding:46px 0 104px}
  .em-production{padding:48px 0 108px}
  .em-identity{padding:46px 0 102px}
  .em-case{padding:48px 0 106px}
  .em-process{padding:46px 0 102px}
  .em-digital-cross{padding:48px 0 100px}
  .em-contact{padding:48px 0 98px}
}

@media(max-width:820px){
  #soluciones,#branding-interiores,#promocionales,#produccion,#identidad,#proyecto-destacado,#proceso,#digital-cross,#contacto{scroll-margin-top:128px}
  .em-intro,.em-story,.em-production,.em-identity,.em-case,.em-contact{padding:36px 0 84px}
  .em-process{padding:38px 0 88px}
  .em-digital-cross{padding:40px 0 86px}
}

@media(max-width:560px){
  #soluciones,#branding-interiores,#promocionales,#produccion,#identidad,#proyecto-destacado,#proceso,#digital-cross,#contacto{scroll-margin-top:124px}
  .em-intro,.em-story,.em-production,.em-identity,.em-case,.em-contact{padding:30px 0 72px}
  .em-process{padding:32px 0 76px}
  .em-digital-cross{padding:34px 0 74px}
}
