.portfolio-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:64px 32px}.portfolio-cover{display:block;position:relative;background:#e6e5df;aspect-ratio:16/11;overflow:hidden;border-radius:3px}.portfolio-cover img{display:block;width:100%;height:100%;object-fit:contain;transition:transform .5s ease}.portfolio-cover:hover img{transform:scale(1.025)}.portfolio-cover>span{position:absolute;right:18px;bottom:18px;background:var(--paper);color:var(--ink);width:42px;height:42px;display:grid;place-items:center;border-radius:50%;font-size:24px}.portfolio-caption{padding-top:23px}.portfolio-caption .eyebrow{margin-bottom:12px;font-size:10px}.portfolio-caption h3,.portfolio-caption h2{font-size:32px;margin-bottom:10px}.portfolio-caption h3 a,.portfolio-caption h2 a{text-decoration:none}.portfolio-caption p:last-child{font-size:16px;line-height:1.6;color:var(--muted);max-width:550px;margin:0}.portfolio-featured{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.portfolio-featured .portfolio-cover{aspect-ratio:4/3}.portfolio-featured .portfolio-caption h3,.portfolio-caption h2{font-size:26px}.portfolio-featured .portfolio-caption p:last-child{font-size:15px}.portfolio-note{margin-top:64px;padding:28px 0;border-top:1px solid var(--line);max-width:850px;color:var(--muted);font-size:15px}.portfolio-note p{margin:0}.portfolio-index{padding-top:0}.portfolio-case-hero{display:block;width:100%;max-height:760px;object-fit:contain;background:#eae8e1}.portfolio-case .case-grid{display:grid;grid-template-columns:1fr 2fr;gap:60px}.portfolio-case figure{margin:0}.portfolio-case figcaption{font-size:13px;color:var(--muted);margin-top:14px}.portfolio-case section{scroll-margin-top:110px}.portfolio-case .case-grid .prose{max-width:800px}.portfolio-case img{display:block}.portfolio-case .case-grid h2{font-size:clamp(30px,3.6vw,48px)}
@media(max-width:900px){.portfolio-featured{grid-template-columns:1fr 1fr}.portfolio-featured .portfolio-card:last-child{grid-column:1/-1;max-width:calc(50% - 14px)}.portfolio-case .case-grid{gap:30px}}
@media(max-width:600px){.portfolio-grid,.portfolio-featured{grid-template-columns:1fr;gap:42px}.portfolio-featured .portfolio-card:last-child{grid-column:auto;max-width:none}.portfolio-caption h3,.portfolio-caption h2{font-size:28px}.portfolio-case .case-grid{grid-template-columns:1fr;gap:10px}.portfolio-cover{aspect-ratio:4/3}.portfolio-note{margin-top:42px}}
@media(prefers-reduced-motion:reduce){.portfolio-cover img{transition:none}}

.portfolio-cover.cover-contain img{object-fit:contain;padding:24px}.portfolio-cover.cover-contain{background:#e9e8e2}

/* Ritmo de galería: apertura visual, piezas en pareja y lectura al lado. */
.portfolio-intro{display:grid;grid-template-columns:1.15fr 1fr;gap:14px 90px;padding-block:70px 54px;align-items:end}.portfolio-intro>.eyebrow{grid-column:1/-1;margin-bottom:8px}.portfolio-intro h1{font-size:clamp(45px,5.2vw,72px);margin:0}.portfolio-intro .lead{font-size:20px;margin:0;max-width:520px;line-height:1.65}
.portfolio-tools{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:0 0 36px}.portfolio-tools[hidden],.portfolio-card[hidden]{display:none}.portfolio-filters{display:flex;flex-wrap:wrap;gap:8px}.portfolio-filters button{border:1px solid var(--line);background:transparent;color:var(--ink);border-radius:30px;padding:10px 17px;min-height:44px;line-height:1.4;font-size:13px}.portfolio-filters button[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:var(--paper)}.portfolio-filters button:hover{border-color:var(--ink)}.portfolio-filters button span{margin-left:7px;opacity:.7}.portfolio-count{font-size:12px;color:var(--muted);margin:0;white-space:nowrap}
.portfolio-editorial{grid-template-columns:repeat(12,minmax(0,1fr));gap:80px 40px}.portfolio-editorial-card{grid-column:span 6;min-width:0}.portfolio-editorial-card .portfolio-cover{aspect-ratio:16/10}.portfolio-editorial-card .portfolio-caption p:last-child{max-width:470px}.portfolio-editorial-card.is-feature{grid-column:1/-1;display:grid;grid-template-columns:1.55fr 1fr;align-items:center;gap:70px}.portfolio-editorial-card.is-feature .portfolio-cover{aspect-ratio:16/9}.portfolio-editorial-card.is-feature .portfolio-caption{padding:35px 0}.portfolio-editorial-card.is-feature h3,.portfolio-editorial-card.is-feature h2{font-size:clamp(34px,3.6vw,52px);margin-block:18px}.portfolio-editorial-card.is-feature .portfolio-caption>p:last-of-type{font-size:19px;line-height:1.7;max-width:410px}.portfolio-number{display:block;font-size:10px;letter-spacing:.13em;color:var(--muted);margin-bottom:42px}.portfolio-read{display:inline-block;margin-top:25px;font-size:13px;text-underline-offset:6px}.portfolio-editorial-card.is-feature:nth-child(4){grid-template-columns:1fr 1.55fr}.portfolio-editorial-card.is-feature:nth-child(4) .portfolio-cover{grid-column:2;grid-row:1}.portfolio-editorial-card.is-feature:nth-child(4) .portfolio-caption{grid-column:1;grid-row:1}.portfolio-research-pair{height:100%;width:100%;display:grid;grid-template-columns:1fr 1fr;gap:22px;padding:32px;align-items:center;background:#e3e8e1}.portfolio-cover .portfolio-research-pair img{padding:0;object-fit:contain;max-height:440px;filter:drop-shadow(0 8px 12px #172c2515)}
.portfolio-modal-open{overflow:hidden}.portfolio-viewer{width:calc(100vw - 48px);height:calc(100dvh - 48px);max-width:1600px;max-height:none;padding:0;border:1px solid #526159;border-radius:3px;background:#f6f4ef;color:var(--ink);overflow:hidden}.portfolio-viewer[open]{display:flex;flex-direction:column}.portfolio-viewer::backdrop{background:#101b17ed}.portfolio-viewer button{font:inherit;color:inherit;background:transparent;border:1px solid var(--line);padding:9px 16px;border-radius:3px;min-height:44px;cursor:pointer;font-size:13px}.portfolio-viewer-top{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 22px;border-bottom:1px solid var(--line);flex-shrink:0}.portfolio-viewer-top p{font-size:12px;margin:0}.portfolio-viewer-stage{display:grid;place-items:center;min-height:0;flex:1;padding:24px;overflow:auto;background:#e8e8e1}.portfolio-viewer-stage img{width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain;display:block;min-height:0}.portfolio-viewer-bottom{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:24px;padding:17px 22px;flex-shrink:0}.portfolio-viewer-bottom p{font-size:13px;line-height:1.5;margin:0}.portfolio-viewer-bottom>a{font-size:12px;white-space:nowrap}.portfolio-viewer-controls{display:flex;gap:8px}.portfolio-viewer-controls button{font-size:20px;width:46px;line-height:1}.portfolio-viewer [hidden]{display:none}
@media(max-width:1000px){.portfolio-intro{gap:20px 40px}.portfolio-editorial-card.is-feature,.portfolio-editorial-card.is-feature:nth-child(4){gap:35px;grid-template-columns:1.4fr 1fr}.portfolio-editorial-card.is-feature:nth-child(4){grid-template-columns:1fr 1.4fr}.portfolio-editorial-card.is-feature .portfolio-caption>p:last-of-type{font-size:17px}.portfolio-number{margin-bottom:24px}.portfolio-research-pair{gap:12px;padding:18px}}
@media(max-width:760px){.portfolio-intro{grid-template-columns:1fr;padding-block:45px 35px;gap:22px}.portfolio-intro>.eyebrow{margin:0}.portfolio-intro .lead{font-size:18px;max-width:600px}.portfolio-tools{display:block}.portfolio-count{margin-top:14px}.portfolio-editorial{gap:54px 24px}.portfolio-editorial-card.is-feature,.portfolio-editorial-card.is-feature:nth-child(4){display:block}.portfolio-editorial-card.is-feature .portfolio-cover{aspect-ratio:1.4}.portfolio-editorial-card.is-feature .portfolio-caption{padding:23px 0 0}.portfolio-editorial-card.is-feature h3,.portfolio-editorial-card.is-feature h2{font-size:34px;margin-block:12px}.portfolio-editorial-card.is-feature .portfolio-caption>p:last-of-type{font-size:16px;max-width:600px}.portfolio-number{margin-bottom:17px}.portfolio-read{margin-top:17px}.portfolio-viewer-bottom{gap:14px;grid-template-columns:1fr auto}.portfolio-viewer-bottom p{grid-column:1/-1}.portfolio-viewer-stage{padding:14px}}
@media(max-width:520px){.portfolio-editorial{grid-template-columns:1fr;gap:44px}.portfolio-editorial-card{grid-column:auto}.portfolio-editorial-card .portfolio-cover{aspect-ratio:1.3}.portfolio-editorial-card.is-feature .portfolio-cover{aspect-ratio:16/9}.portfolio-caption .eyebrow{font-size:10px}.portfolio-filters{gap:7px}.portfolio-filters button{padding:9px 13px;font-size:12px}.portfolio-viewer{width:100%;height:100dvh;max-width:none;margin:0;border:0;border-radius:0}.portfolio-viewer-top{padding:12px 16px}.portfolio-viewer-bottom{padding:13px 16px}.portfolio-viewer-bottom p{font-size:12px}.portfolio-viewer-stage{padding:10px}}

.portfolio-editorial-card.is-feature:nth-child(4) .portfolio-cover{aspect-ratio:4/3}
