.portfolio-page .header{position:relative;color:var(--black);border-color:var(--line)}.portfolio-page .brand img{filter:none}.portfolio-page .menu-toggle{color:inherit}.portfolio-opening{padding-top:65px;padding-bottom:60px}.portfolio-opening h1{font-size:clamp(60px,7.7vw,125px);line-height:1.04}.portfolio-opening h1 em{color:#756b4a}.portfolio-intro{display:flex;align-items:center;justify-content:space-between;gap:60px;margin-top:45px}.portfolio-intro p{max-width:640px;color:#505049}.portfolio-intro .opening-plus{color:var(--yellow);width:70px;height:70px}.portfolio-work{padding:0 var(--pad) 100px}.portfolio-mosaic{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-rows:95px;gap:20px}.project-tile{position:relative;display:block;width:100%;height:100%;padding:0;border:0;overflow:hidden;background:#25251f;color:#fff;text-align:left;isolation:isolate}.project-tile>img{transition:transform 1s cubic-bezier(.2,.7,.2,1),filter .7s ease;transform:scale(1.005)}.tile-tech{grid-column:1/9;grid-row:1/5}.tile-park{grid-column:9/13;grid-row:1/5}.tile-ciita{grid-column:1/8;grid-row:5/9}.tile-coordenada{grid-column:8/13;grid-row:5/10}.tile-sm{grid-column:1/5;grid-row:9/12}.tile-carboneria{grid-column:5/8;grid-row:9/12}.tile-alizo{grid-column:8/13;grid-row:10/12}.tile-vertyka{grid-column:1/6;grid-row:12/16}.tile-mdll{grid-column:6/13;grid-row:12/16}.tile-odore{grid-column:1/9;grid-row:16/19}.tile-amb{grid-column:9/13;grid-row:16/19}.tile-wash{position:absolute;inset:0;background:linear-gradient(0deg,#000b,transparent 85%);opacity:0;transition:opacity .5s ease}.tile-caption{position:absolute;bottom:30px;left:30px;right:30px;display:flex;flex-direction:column;gap:12px;transform:translateY(12px);opacity:0;transition:opacity .45s,transform .6s cubic-bezier(.2,.7,.2,1)}.tile-type{font-size:11px;letter-spacing:.07em;color:#e5e2d7}.tile-title{font-family:var(--serif);font-size:clamp(27px,3vw,47px);line-height:1.08;letter-spacing:-.04em}.featured .tile-title{font-size:clamp(34px,4.2vw,66px)}.tile-gallery{font-size:12px;display:flex;gap:16px;align-items:center;margin-top:7px;color:var(--yellow)}.tile-plus{position:absolute;right:23px;top:23px;color:var(--yellow);width:30px;height:30px}.featured .tile-plus{width:45px;height:45px}.project-tile:focus-visible .tile-caption,.project-tile.is-revealed .tile-caption{opacity:1;transform:none}.project-tile:focus-visible .tile-wash,.project-tile.is-revealed .tile-wash{opacity:1}.project-tile.is-revealed>img{transform:scale(1.045)}.touch-guide{display:none}.project-dialog{width:min(1400px,calc(100vw - 60px));max-width:none;max-height:92svh;border:0;padding:0;color:#fff;background:var(--black);overscroll-behavior:contain}.project-dialog::backdrop{background:#000d;backdrop-filter:blur(5px)}.project-dialog[open]{animation:dialog-enter .35s ease}.project-dialog.is-closing{animation:dialog-exit .2s ease forwards}.gallery-header{display:flex;align-items:center;justify-content:space-between;padding:22px 30px;border-bottom:1px solid #ffffff25;position:sticky;top:0;background:var(--black);z-index:4}.gallery-brand{font-size:12px;display:flex;gap:15px;align-items:center}.gallery-brand .plus{color:var(--yellow)}.gallery-close{color:#fff;background:none;border:0;padding:8px 0 8px 16px;display:flex;align-items:center;gap:18px;font-size:12px}.gallery-close .plus{--plus-angle:45deg}.gallery-layout{display:grid;grid-template-columns:1.65fr 1fr;gap:0}.gallery-visual{padding:25px;min-width:0;align-self:start;position:sticky;top:80px}.gallery-stage{position:relative;height:56svh;min-height:320px;background:#080906;display:flex;align-items:center;justify-content:center;touch-action:pan-y}.gallery-stage>img{object-fit:contain;width:100%;height:100%}.photo-prev,.photo-next{position:absolute;bottom:20px;background:#11120fd9;border:1px solid #ffffff70;color:#fff;width:44px;height:44px;font-size:23px;line-height:1}.photo-prev{left:20px}.photo-next{right:20px}.photo-prev:disabled,.photo-next:disabled{opacity:.25;cursor:default}.photo-count{position:absolute;bottom:23px;left:50%;transform:translateX(-50%);font-size:12px;color:white;background:#11120fba;padding:10px 15px}.gallery-thumbnails{display:flex;gap:10px;overflow-x:auto;padding:18px 0 3px}.gallery-thumbnails button{flex-shrink:0;width:80px;height:60px;background:none;border:1px solid transparent;padding:3px;opacity:.55;transition:opacity .3s,border-color .3s}.gallery-thumbnails button[aria-pressed=true]{opacity:1;border-color:var(--yellow)}.gallery-info{padding:40px 32px 45px 15px}.gallery-info>p:first-child{color:var(--yellow);font-size:12px;margin-bottom:20px}.gallery-info h2{font-size:clamp(35px,3.4vw,55px);line-height:1.1;margin-bottom:30px}.gallery-facts{margin:0 0 28px;border-top:1px solid #ffffff30;padding-top:15px;display:grid;grid-template-columns:1fr 1.7fr;gap:11px 16px;font-size:12px;line-height:1.6}.gallery-facts dt{color:#8f9387}.gallery-facts dd{margin:0;color:#d4d6cb}.gallery-info #gallery-description{font-size:15px;line-height:1.8;color:#c0c3b7}.gallery-credits h3{font-size:13px;color:var(--yellow);font-weight:400;margin:30px 0 15px}.gallery-credits ul{list-style:none;padding:0;margin:0}.gallery-credits li{font-size:12px;line-height:1.6;color:#a8ad9d;border-top:1px solid #ffffff20;padding:10px 0}.gallery-open{overflow:hidden}@media(hover:hover) and (pointer:fine){.project-tile:hover>img{transform:scale(1.055)}.project-tile:hover .tile-caption{opacity:1;transform:none}.project-tile:hover .tile-wash{opacity:1}.project-tile:hover .tile-plus{transform:rotate(12deg) scale(1.05)}}@keyframes dialog-enter{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}@keyframes dialog-exit{to{opacity:0;transform:translateY(10px)}}@media(max-width:1100px){.portfolio-mosaic{grid-auto-rows:75px;gap:15px}.tile-caption{left:20px;right:20px;bottom:20px}.tile-title{font-size:30px}.featured .tile-title{font-size:42px}.gallery-layout{grid-template-columns:1.3fr 1fr}.gallery-stage{height:50svh;min-height:250px}.gallery-visual{padding:20px}.gallery-info{padding:30px 22px 35px 10px}}@media(hover:none),(pointer:coarse){.touch-guide{display:block;font-size:12px;line-height:1.6;color:#77766c;margin-bottom:24px}}@media(max-width:760px){.portfolio-page .header nav{color:white}.portfolio-opening{padding-top:45px;padding-bottom:40px}.portfolio-opening h1{font-size:clamp(47px,11vw,72px)}.portfolio-intro{gap:25px;align-items:flex-start;margin-top:30px}.portfolio-intro p{font-size:15px}.portfolio-intro .opening-plus{width:35px;height:35px}.portfolio-work{padding:0 16px 60px}.portfolio-mosaic{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:90px;gap:12px}.project-tile{grid-column:auto;grid-row:auto}.tile-tech{grid-column:1/3;grid-row:1/4}.tile-ciita{grid-column:1/3;grid-row:4/7}.tile-coordenada{grid-column:1/3;grid-row:7/11}.tile-park{grid-column:1;grid-row:11/14}.tile-sm{grid-column:2;grid-row:11/14}.tile-carboneria{grid-column:1/3;grid-row:14/17}.tile-alizo{grid-column:1/3;grid-row:17/19}.tile-vertyka{grid-column:1;grid-row:19/22}.tile-mdll{grid-column:2;grid-row:19/22}.tile-odore{grid-column:1/3;grid-row:22/25}.tile-amb{grid-column:1/3;grid-row:25/27}.tile-caption{left:17px;right:17px;bottom:20px;gap:9px}.tile-title{font-size:28px}.featured .tile-title{font-size:39px}.tile-plus,.featured .tile-plus{width:24px;height:24px;right:18px;top:18px}.tile-type{font-size:10px}.tile-gallery{font-size:11px}.project-dialog{width:100vw;height:100svh;max-height:100svh;margin:0;max-width:none}.gallery-header{padding:14px 20px}.gallery-layout{grid-template-columns:1fr}.gallery-visual{padding:16px;position:static}.gallery-stage{height:43svh;min-height:240px}.gallery-thumbnails{padding:14px 0 0}.gallery-thumbnails button{width:70px;height:52px}.gallery-info{padding:20px 24px 45px}.gallery-info h2{font-size:42px}.photo-prev,.photo-next{bottom:12px;width:40px;height:40px}.photo-prev{left:12px}.photo-next{right:12px}.photo-count{bottom:15px}.touch-guide{margin-left:8px;margin-right:8px}.gallery-close{min-height:44px}.gallery-facts{font-size:13px}}@media(prefers-reduced-motion:reduce){.project-tile>img,.tile-caption,.tile-wash,.gallery-thumbnails button{transition:none}.project-dialog[open],.project-dialog.is-closing{animation:none}}
