
@font-face{font-family:sans;src:url(fuentes/intertight.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}

*,*::before,*::after{box-sizing:border-box;border:0 solid}
html{font-size:clamp(5px,.66667vw,12px);background:#000;color:#fff;font-family:sans,"Helvetica Neue",Arial,sans-serif;-webkit-text-size-adjust:none;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;width:100%}
@media(max-width:649px){html{font-size:clamp(5px,2.5641vw,12px)}}
html.cine{color:#f1d58e}
body{margin:0;font-size:1.7rem;font-weight:500;line-height:1.11;letter-spacing:-.006em;background:#000;min-height:100svh;overflow-x:hidden}
@media(hover:hover) and (pointer:fine){html,body{overscroll-behavior:none}}
h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit;margin:0}
p,ul,ol,figure,dl,dd{margin:0}
ul,ol{list-style:none;padding:0}
a{color:inherit;text-decoration:none}
button,input{font:inherit;color:inherit;letter-spacing:inherit;margin:0;padding:0;background:none;border-radius:0}
button{cursor:pointer;text-align:left}
img{display:block;max-width:100%}
:focus{outline:none}
:focus-visible{outline:2px solid currentColor;outline-offset:3px;border-radius:.2rem}
[hidden]{display:none!important}
.lenis.lenis-stopped,html.lenis-stopped{overflow:hidden}
html.lenis{height:auto}
.lenis.lenis-smooth{scroll-behavior:auto!important}

.site-max{margin-left:auto;margin-right:auto;padding-left:1.4rem;padding-right:1.4rem;width:100%}
.site-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));column-gap:1.4rem}
@media(min-width:650px){.site-grid{grid-template-columns:repeat(14,minmax(0,1fr))}}
.ov-h{overflow:hidden}
.rel{position:relative}
.t-trim{display:block}
.mt-100{margin-top:10rem}


.cargador{position:fixed;inset:0;z-index:99;background:#000;display:flex;align-items:center;justify-content:center}
.mascara-t{position:fixed;inset:0;z-index:20;background:#000;visibility:hidden;opacity:0}


.cab{position:absolute;top:0;left:0;width:100%;padding-top:2rem;z-index:25;mix-blend-mode:difference;transition:opacity .25s cubic-bezier(.25,.46,.45,.94)}
.cab.oculta{opacity:0;pointer-events:none;transition-duration:.3s}
.cab-d{align-items:start}
.cab-d .c1{grid-column:span 1}.cab-d .c2{grid-column:span 2}.cab-d .c3{grid-column:span 3}
.cab .marca{padding:0;text-align:left;color:inherit}
.js-up{display:block}
.cab-lista .tit{margin-left:-1.4rem}
.cab-lista ul{display:flex;flex-direction:column;position:relative}
.cab .der{display:flex;justify-content:flex-end;text-align:right}
.cab .der .ov-h{display:block}
.cab-m{display:none}
@media(max-width:649px){
  .cab{position:fixed;top:0;padding-top:1.5rem}
  .cab-d{display:none}
  .cab-m{display:flex;align-items:center;justify-content:space-between}
  .cab-m-der{display:flex;align-items:center}
  .cab-m .coma{margin-right:.8rem}
  .cab-m-der a,.cab-m-der button{display:block}
}

.h-pill{position:relative}
.h-pill::before{content:"";position:absolute;inset:-.4rem -.8rem -.3rem;border-radius:.5rem;clip-path:inset(0 round .5rem);background-color:transparent;-webkit-backdrop-filter:blur(0);backdrop-filter:blur(0);transition:background-color .15s cubic-bezier(.25,.46,.45,.94),backdrop-filter .15s cubic-bezier(.25,.46,.45,.94);z-index:-1;pointer-events:none}
@media(hover:hover) and (pointer:fine){
  .h-pill:hover::before{background-color:rgba(255,255,255,.15);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);transition:background-color .3s cubic-bezier(.19,1,.22,1),backdrop-filter .3s cubic-bezier(.19,1,.22,1)}
}
.h-pill.is-activo::before,.h-pill:has(.is-activo)::before{background-color:rgba(255,255,255,.15);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}
.h-pill-on{display:inline-block}
.h-pill-on::before{background-color:rgba(255,255,255,.15);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);transition:none;left:0;right:0}
.h-pill-on{padding-left:.8rem;padding-right:.8rem}


#base{position:relative;z-index:1}
.vista{position:relative}
.vista.sale{position:fixed;left:0;right:0;width:100%;pointer-events:none}
.proyectos{padding-top:15rem}
@media(min-width:650px){.proyectos{padding-top:clamp(25rem,50vh,50rem)}}
.rejilla{position:relative;row-gap:7.5rem}
.obra{grid-column:span 2;cursor:pointer;transition:opacity .2s}
.obra.apaga{opacity:.2}
.obra h2{display:flex;align-items:baseline;justify-content:space-between;gap:.8rem;margin-bottom:.6rem;position:relative}
.obra .num{margin-left:auto}
@media(max-width:649px){
  .obra .num{visibility:hidden}
  .obra:not([data-i="0"]):not([data-i="1"]){display:none}
}
.marco{position:relative;width:100%;aspect-ratio:calc(1 / var(--a));background:#0c0c0c;overflow:hidden}
.marco img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity 1s ease-out;user-select:none;-webkit-user-drag:none}
.marco img.listo{opacity:1}
.marco.oculto img{visibility:hidden}
.rapido .marco img{transition-duration:.2s}


.galeria{padding-top:clamp(25rem,50vh,50rem)}
.gal-rejilla{display:grid;grid-template-columns:repeat(14,minmax(0,1fr))}
.gal-item{position:relative;grid-column:1/-1;grid-row:var(--fila);cursor:pointer;transition:opacity .2s;display:block}
@media(min-width:650px){.gal-item{grid-column:var(--ini)/span var(--tramo)}}
.gal-item::after{border:1px solid;content:"";inset:0;opacity:0;pointer-events:none;position:absolute;transition:opacity .2s cubic-bezier(.23,1,.32,1)}
.gal-item.encima::after{opacity:1}
.gal-item.encima .marco{background:transparent}
.gal-miniaturas{position:fixed;left:1.4rem;right:1.4rem;top:1.4rem;row-gap:1.4rem;pointer-events:none;z-index:2}
.gal-mini{grid-column:span 2}


.pie{position:relative;width:100%;padding-bottom:1.2rem;margin-top:15rem}
@media(min-width:650px){.pie{margin-top:35rem}}
.pie-grid{align-items:start}
@media(min-width:650px){.pie-grid{align-items:end}}
.pie-izq{display:flex;flex-direction:column;align-items:flex-start;grid-column:span 4}
.pie-fila{display:flex;align-items:baseline;gap:3rem;white-space:nowrap}
.pie-l1,.pie-l2{display:flex;flex-direction:column;align-items:flex-start;grid-column:span 3}
.pie-der{display:contents}
.pie-tal{grid-column:span 2}
.pie-bol{grid-column:span 2;order:9999;display:flex;justify-content:flex-end;text-align:right}
.pie .h-pill{display:inline-block;text-align:left}
@media(max-width:649px){
  .pie-izq,.pie-fila{display:contents}
  .pie-copy{grid-column:1/span 2;grid-row:3;margin-top:12rem}
  .pie-priv{grid-column:3/span 2;grid-row:3;margin-top:12rem;justify-self:start}
  .pie-l1{grid-column:1/span 2;grid-row:1}
  .pie-l2{grid-column:1/span 2;grid-row:2}
  .pie-der{display:flex;flex-direction:column;grid-column:3/span 2;grid-row:1}
  .pie-bol{justify-content:flex-start;order:0;grid-column:auto}
  .pie-tal{grid-column:auto}
  .pie-muestra{grid-column:1/-1;grid-row:4;margin-top:3rem;white-space:normal}
}


.conmuta{position:fixed;left:1.4rem;right:1.4rem;bottom:1.2rem;z-index:30;pointer-events:none;opacity:0;visibility:hidden}
.conmuta-fila{display:flex;align-items:flex-end;justify-content:space-between}
.conmuta-der{margin-left:auto;display:flex;align-items:center;gap:.5rem}
.barra{display:flex;align-items:center;gap:.8rem;height:2.5rem;padding:0 .5rem;border-radius:.5rem;background:rgba(44,44,47,.6);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);pointer-events:auto;transition:opacity .3s}
.barra a,.barra button{font-size:1.7rem;font-weight:500;line-height:1;padding-top:.075em;color:rgba(255,255,255,.4);transition:color .3s}
.barra a.act,.barra button.act{color:#fff}
@media(hover:hover) and (pointer:fine){.barra a:not(.act):hover,.barra button:not(.act):hover{color:rgba(255,255,255,.7)}}
#nav-vista.apagada{opacity:0;pointer-events:none}
html.cine .barra a.act,html.cine .barra button.act{color:#f1d58e}
@media(max-width:649px),(hover:none),(pointer:coarse){.conmuta{display:none}}


html.vuelo-obra .obra h2{opacity:0;transition:opacity .3s cubic-bezier(.5,0,.5,1)}
html.vuelo-obra .marco{opacity:.12;transition:opacity .75s cubic-bezier(.45,0,.55,1)}
html.vuelo-obra .gal-item{opacity:.12;transition:opacity .75s cubic-bezier(.45,0,.55,1)}
html.vuelo-obra #pie{opacity:0;transition:opacity .3s}
html.modal-abierto #base{opacity:.12;transition:opacity .75s cubic-bezier(.45,0,.55,1)}
#base{transition:opacity .5s cubic-bezier(.5,0,.5,1)}
html.sin-cuerpo,html.sin-cuerpo body{overflow:hidden}
html.sin-cuerpo{padding-right:var(--sbw,0)}


.t-h2{font-size:3.2rem;font-weight:500;letter-spacing:-.02em;line-height:.9;text-wrap:pretty}
@media(min-width:650px){.t-h2{font-size:7rem}}
.sangra{--cols:4;text-indent:calc((100% - (var(--cols) - 1) * 1.4rem) / var(--cols) * var(--sangria,0) + var(--sangria,0) * 1.4rem)}
@media(min-width:650px){.sangra{--cols:14}.sangra[style*="--cols:9"]{--cols:9}.sangra[style*="--cols:8"]{--cols:8}}
@media(max-width:649px){.sangra{--sangria:0!important}}
[data-lineas] .ln,[data-lineas-m] .ln{display:block;overflow:hidden;margin:-.1em 0;padding:.1em 0}
[data-lineas] .li,[data-lineas-m] .li{display:inline-block;will-change:transform;text-indent:0}
[data-lineas] .li-sangra{text-indent:inherit}
.acerca{padding-top:15rem}
@media(min-width:650px){.acerca{padding-top:21rem}}
.etiqueta{position:relative;margin-bottom:2rem;font-size:1.5rem}
@media(min-width:650px){.etiqueta{position:absolute;top:0;left:0;margin-bottom:0}}
.etiqueta .h-pill{display:inline-block}
.c-full{grid-column:1/-1}
.c-4{grid-column:1/-1}
@media(min-width:650px){.c-4{grid-column:span 4}}
.c-9{grid-column:1/-1;margin-top:10rem}
.c-8{grid-column:1/-1}
@media(min-width:650px){.c-9{grid-column:6/span 9;margin-top:0}.c-8{grid-column:6/span 8}}
.c-full-b{grid-column:1/-1;margin-top:10rem}
@media(min-width:650px){.c-full-b{margin-top:4rem}}
.ac-foto{display:none;position:relative;aspect-ratio:1080/1920;grid-column:span 2}
@media(min-width:650px){.ac-foto{display:block}}
.ac-foto-b{grid-column:6/span 3}
.ref-giro{position:absolute;inset:0}
.ac-enfoque{margin-top:0}
.ac-enfoque .ac-foto{grid-row:1;align-self:start}
.ac-enfoque .c-9{grid-row:1}
.ac-info{margin-top:10rem}
.info-cuerpo{grid-column:1/-1;position:relative}
@media(min-width:650px){.info-cuerpo{grid-column:6/15;display:grid;grid-template-columns:repeat(9,minmax(0,1fr));column-gap:1.4rem}.info-cuerpo .etiqueta{position:static;grid-column:span 2;margin-bottom:0}.info-cuerpo .grupos{grid-column:4/10}}
.grupos{display:flex;flex-direction:column;row-gap:.3rem}
.grupo h4{margin-left:-1.6rem}
@media(max-width:649px){.grupo{padding-left:1.6rem}}
.g-lista{position:relative}
.g-lista ul{margin-top:-.15em}
.g-it{padding:.15em 0;position:relative}
.g-it-i{cursor:pointer}
.g-inline{max-width:30rem}
.g-barra{position:absolute;z-index:-1;left:-.3rem;top:0;right:0;height:2rem;display:flex;align-items:center;justify-content:flex-end;gap:.5rem;padding:0 .6rem;background:rgba(255,255,255,.15);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-radius:.5rem;opacity:0;pointer-events:none}
.g-barra svg{width:.9rem;height:.9rem}
.g-leer{position:relative}
.g-leer h4{margin-left:-1.6rem}
.grupos-b .g-leer{cursor:pointer}
.g-et{margin-bottom:2rem}
@media(min-width:650px){.info-cuerpo .g-et{grid-column:span 2;margin-bottom:0}}
.pill-grande{display:flex;align-items:center;justify-content:space-between;text-align:left;grid-column:1/-1;margin-top:5rem;color:inherit;min-height:2.5rem}
@media(min-width:650px){.pill-grande{grid-column:9/15;margin-top:10rem}}
.pill-grande svg{width:1.2rem;height:1rem;flex:none}
a.pill-grande{width:auto}
.ico-fuera,.ico-der{overflow:hidden}
.ico-fuera{width:.9rem;height:.9rem}
.ico-fuera path,.ico-der path{transition:transform .5s cubic-bezier(.19,1,.22,1)}
.ico-fuera .i1,.ico-der .i1{transition-delay:.2s}
.ico-fuera .i2{transform:translate(-105%,105%);transition-delay:0s}
.ico-der .i2{transform:translateX(-105%);transition-delay:0s}
@media(hover:hover) and (pointer:fine){
  .h-pill:hover .ico-fuera .i1,.pill-grande:hover .ico-fuera .i1{transform:translate(105%,-105%);transition-delay:0s}
  .h-pill:hover .ico-fuera .i2,.pill-grande:hover .ico-fuera .i2{transform:translate(0,0);transition-delay:.2s}
  .h-pill:hover .ico-der .i1,.pill-grande:hover .ico-der .i1{transform:translateX(105%);transition-delay:0s}
  .h-pill:hover .ico-der .i2,.pill-grande:hover .ico-der .i2{transform:translateX(0);transition-delay:.2s}
}
.ac-boletin{margin-top:10rem}
@media(min-width:650px){.ac-boletin{margin-top:30rem}}
.ac-taller{margin-top:10rem}
@media(min-width:650px){.ac-taller{margin-top:30rem}}
.ac-taller .c-8{grid-row:1}
.ac-taller .ac-foto{grid-row:1;align-self:start}
.ac-taller .info-cuerpo{grid-column:1/-1}
@media(min-width:650px){.ac-taller .info-cuerpo{grid-column:6/15}}
.js-t-fade{will-change:opacity}

.priv-lista{margin-top:10rem}
@media(min-width:650px){.priv-lista{margin-top:20rem}}
.priv-sec{grid-column:1/-1;margin-top:5rem}
.priv-sec:first-child{margin-top:0}
@media(min-width:650px){.priv-sec{display:grid;grid-template-columns:repeat(9,minmax(0,1fr));column-gap:1.4rem;grid-column:6/15;margin-top:7.5rem}.priv-sec:first-child{margin-top:0}.priv-n{grid-column:span 2}.priv-c{grid-column:4/10}}
.priv-n{margin-bottom:2rem}
@media(min-width:650px){.priv-n{margin-bottom:0}}
.priv-c .txt{margin-top:2rem;opacity:.5;max-width:51.5rem}
.priv-c .txt p{margin:0}


.giro{position:fixed;left:0;top:0;z-index:0;pointer-events:none;perspective:130rem;will-change:transform;visibility:hidden}
.giro-in{position:absolute;inset:0;transform-style:preserve-3d;will-change:transform}
.giro img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;backface-visibility:visible}
.giro::after{content:"";position:absolute;inset:0;background:#000;opacity:var(--sombra,0);pointer-events:none}


.ov-obra{position:fixed;inset:0;z-index:50}
.ov-scroll{height:100%;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:none}
.ov-scroll::-webkit-scrollbar{display:none}
.proy{align-items:start;position:relative}
.proy-info{grid-column:span 4;align-self:start;padding-top:2rem;padding-bottom:4rem}
@media(min-width:650px){.proy-info{grid-column:span 5;position:sticky;top:0;padding-bottom:2rem}}
.proy-cab{display:flex;align-items:flex-start;justify-content:space-between;gap:2rem}
.proy-cab h1{overflow:hidden}
.proy-link{display:flex;align-items:center;gap:.4rem;color:inherit}
.proy-desc{margin-top:4.5rem;max-width:47.5rem}
.proy-ficha{margin-top:4.5rem}
.proy-ficha li{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));column-gap:2rem;padding:.15em 0;overflow:hidden}
.proy-ficha li span:nth-child(2){grid-column:span 1}
.proy-ficha li span:nth-child(3){grid-column:span 3}
.proy-medios{grid-column:span 4;display:flex;flex-direction:column;row-gap:1.5rem;padding:1.6rem 0}
@media(min-width:650px){.proy-medios{grid-column:span 9}}
.proy-medios.activo{height:100svh;overflow:clip}
.proy-med{position:relative;width:100%;aspect-ratio:calc(1 / var(--a));background:#0c0c0c;cursor:pointer;overflow:hidden}
.proy-med img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.proy-med.oculto img{visibility:hidden}
@media(max-width:649px){.proy-med{cursor:default}}
.vuela{position:fixed;z-index:70;pointer-events:none;overflow:hidden;will-change:left,top,width,height,transform}
.vuela img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}


.ov-zoom{position:fixed;inset:0;z-index:60;display:flex;align-items:center;justify-content:center}
.zoom-caja{position:relative;width:min(92vw,calc(88vh * var(--r,1.5)));aspect-ratio:var(--r,1.5)}
html.zoom-abierto .proy-med{opacity:0;transition:opacity .3s}


.ov-modal{position:fixed;inset:0;z-index:50;overflow:hidden}
.modal-in{height:100%;align-items:start;padding-top:10rem;padding-bottom:1.6rem;pointer-events:none}
@media(min-width:650px){.modal-in{padding-top:1.6rem}}
.modal-in>*{pointer-events:auto}
.modal-foto{display:none;position:relative;aspect-ratio:7/10;grid-column:span 3;overflow:hidden}
@media(min-width:650px){.modal-foto{display:block}}
.modal-foto img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.modal-txt{grid-column:1/-1}
@media(min-width:650px){.modal-txt{grid-column:7/15}}
.serv-lista{margin-top:6.5rem;display:flex;flex-direction:column;gap:.5rem}
.serv-lista li{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));column-gap:1.4rem;overflow:hidden}
@media(min-width:650px){.serv-lista li{grid-template-columns:repeat(8,minmax(0,1fr))}}
.serv-lista .sn{overflow:hidden}
.serv-lista .sx{grid-column:span 3}
.serv-lista h3{margin-left:-1.6rem}
.modal-in.bol-in{align-items:end}
.modal-txt.bol{display:flex;flex-direction:column;justify-content:space-between;height:100%;grid-column:1/-1}
@media(min-width:650px){.modal-txt.bol{grid-column:7/14;height:auto}.modal-in:has(.bol){align-items:end}.modal-in .modal-foto:has(+ .bol){grid-column:span 4}}
.bol-form{margin-top:6rem;width:100%;max-width:62.3rem}
.bol-form input{display:flex;align-items:center;width:100%;height:3rem;padding:.075em .6rem 0;border:1px solid rgba(255,255,255,.15);background:#000;border-radius:.5rem;outline:none;margin-bottom:1rem;transition:border-color .3s ease-out}
.bol-form input:focus{border-color:#fff}
.bol-form input::placeholder{color:#9ca3af;opacity:1}
.bol-btn{display:flex;width:100%;align-items:center;justify-content:space-between;height:3rem;padding:0 .6rem;background:#2c2c2f;border-radius:.5rem;color:inherit;overflow:hidden}
.bol-btn svg{width:1.2rem;height:1rem;flex:none}
.bol-btn.enviando{pointer-events:none}
.bol-btn.enviando svg{transform:translateX(105%);transition:transform .5s cubic-bezier(.19,1,.22,1)}
.bol-aviso{font-size:1.4rem;max-width:40rem;opacity:.3;margin-top:5rem}
@media(min-width:650px){.bol-aviso{margin-top:0}}
.bol-btn:hover svg .i2{transform:translateX(0)}


.cursor{position:fixed;left:0;top:0;z-index:210;pointer-events:none;mix-blend-mode:difference;color:#fff;display:none}
.cursor.on{display:block}
html.cine .cursor{mix-blend-mode:normal;color:#f1d58e}
#cursor-et{display:block;white-space:nowrap}
#cursor-et::first-letter{text-transform:uppercase}
[data-cursor]:not([data-cursor=""]){cursor:pointer}
.aviso{position:fixed;left:50%;bottom:6.4rem;transform:translateX(-50%);z-index:300;max-width:calc(100vw - 2.8rem);padding:1rem 1.4rem;border-radius:.5rem;background:rgba(44,44,47,.88);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);font-size:1.5rem;text-align:center}
@media(max-width:649px){.aviso{bottom:2.4rem;font-size:1.6rem}}


.creditos{position:fixed;inset:0;z-index:90;overflow:hidden;perspective:70rem;perspective-origin:50% 28%;pointer-events:auto;cursor:pointer;background:rgba(0,0,0,0)}
.creditos-pl{position:absolute;left:50%;bottom:0;width:70%;transform-origin:50% 100%;transform:translateX(-50%) rotateX(62deg);will-change:transform}
.creditos-tx{color:#f1d58e;font-size:5.2rem;line-height:1.15;text-align:justify;letter-spacing:-.01em;will-change:transform}
.creditos-tx p{margin-bottom:5rem}
.creditos::after{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,#000 0,rgba(0,0,0,.9) 22%,rgba(0,0,0,0) 52%);pointer-events:none}


@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{transition-duration:.001s!important;animation-duration:.001s!important}
  .marco img{opacity:1}
}
