/* Portfolio presentation: oversized editorial heroes and live typographic covers. */
.archive-page main { padding-top:0; }
.archive-page .archive-hero {
 position:relative; isolation:isolate; overflow:hidden; min-height:700px;
 padding:170px 0 42px; text-align:left; border-bottom:1px solid var(--line);
}
.archive-page .archive-hero::before {
 content:""; position:absolute; inset:0; z-index:-1; pointer-events:none;
 background:radial-gradient(ellipse at 85% 20%,var(--ambient-warm),transparent 57%),radial-gradient(ellipse at 12% 88%,var(--ambient-cool),transparent 50%);
}
.archive-page .archive-hero::after {
 content:"CCMX"; position:absolute; right:-.025em; bottom:-.17em; z-index:-1;
 font:600 clamp(150px,22vw,310px)/1 Inter,Arial,sans-serif; letter-spacing:-.07em;
 color:transparent; -webkit-text-stroke:1px var(--line); opacity:.32; pointer-events:none;
}
.archive-page .archive-hero-grid { display:grid; grid-template-columns:minmax(0,1fr) 250px; gap:58px; align-items:center; }
.archive-page .archive-hero-copy { min-width:0; }
.archive-page .archive-hero .eyebrow { color:var(--muted); margin:0 0 28px; justify-content:flex-start; }
.archive-page .archive-hero h1 {
 max-width:820px; margin:0; font:500 clamp(58px,7.6vw,112px)/.99 Inter,Arial,sans-serif;
 color:var(--text); letter-spacing:-.065em; text-transform:none; overflow-wrap:normal;
}
.archive-page .archive-hero h1 > span,.archive-page .archive-hero h1 > em { display:block; }
.archive-page .archive-hero h1 .archive-hero-accent { color:var(--orange); font-style:normal; }
.archive-page .archive-hero .archive-lede { max-width:570px; margin:28px 0 0; color:var(--muted); font-size:16px; line-height:1.8; }
.archive-page .archive-hero .hero-actions { gap:12px; margin-top:30px; }
.archive-page .archive-hero .hero-actions .btn { padding:16px 20px; font-size:11px; }
.archive-page .archive-hero .hero-actions .btn > span { margin-left:12px; }
.archive-page .archive-hero .archive-back { margin:0 0 38px; color:var(--muted); }
.archive-page .archive-hero .archive-section-link { font-size:12px; margin-top:20px; }
.archive-page .archive-hero-note {
 padding:26px; border:1px solid var(--glass-border); border-radius:22px;
 background:var(--glass); box-shadow:inset 0 1px 0 rgba(255,255,255,.15),0 24px 60px rgba(0,0,0,.07);
 -webkit-backdrop-filter:blur(24px) saturate(140%); backdrop-filter:blur(24px) saturate(140%);
 animation:archiveNoteEnter .9s cubic-bezier(.16,1,.3,1) .1s both;
}
.archive-page .archive-note-kicker,.archive-page .archive-note-foot { display:block; color:var(--muted); font-size:8px; text-transform:uppercase; letter-spacing:.12em; line-height:1.6; }
.archive-page .archive-hero-note > strong { display:block; margin:26px 0 22px; color:var(--orange); font:400 112px/.85 Inter,Arial,sans-serif; letter-spacing:-.085em; font-variant-numeric:tabular-nums; }
.archive-page .archive-hero-note p { color:var(--text); font-size:13px; line-height:1.8; margin:0 0 30px; }
.archive-page .archive-note-foot { border-top:1px solid var(--line); padding-top:16px; }
.archive-page .archive-hero-footer { display:flex; align-items:center; justify-content:space-between; gap:24px; margin-top:66px; padding-top:24px; border-top:1px solid var(--line); color:var(--muted); font-size:10px; }
.archive-page .archive-hero-footer a { display:flex; align-items:center; gap:20px; color:var(--text); }
.archive-page .archive-hero-footer a:hover { color:var(--orange); }
.archive-page #categorias,.archive-page #coleccion { scroll-margin-top:125px; }
.archive-page .archive-index { padding:64px 0 90px; }
.archive-page .archive-index-head { align-items:flex-start; gap:32px; }
.archive-page .archive-index-head h2 { font-size:clamp(28px,3vw,42px); }
.archive-page .archive-filters { max-width:570px; justify-content:flex-end; gap:4px 20px; }
.archive-page .archive-categories { grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.archive-page .archive-category-card { border-radius:20px; transition:opacity .7s,translate .65s cubic-bezier(.16,1,.3,1); }
.archive-page .archive-cover--type {
 display:flex; flex-direction:column; justify-content:space-between; aspect-ratio:1.12; min-height:280px;
 padding:26px; border:1px solid var(--glass-border); border-radius:20px; background:var(--glass);
 -webkit-backdrop-filter:blur(20px); backdrop-filter:blur(20px); box-shadow:inset 0 1px 0 rgba(255,255,255,.12);
 transition:background .35s,border-color .35s,box-shadow .35s;
}
.archive-page .archive-cover-head,.archive-page .archive-cover-foot { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.archive-page .archive-cover-head .archive-card-number { position:static; padding:0; border-radius:0; background:none; color:var(--muted); font-size:10px; font-variant-numeric:tabular-nums; letter-spacing:.08em; }
.archive-page .archive-cover-discipline { font-size:8px; letter-spacing:.1em; text-transform:uppercase; color:var(--muted); }
.archive-page .archive-cover-title { font:500 clamp(27px,2.65vw,38px)/1.1 Inter,Arial,sans-serif; letter-spacing:-.06em; color:var(--text); margin:28px 0; }
.archive-page .archive-cover-title > span { display:block; }
.archive-page .archive-cover-title > .archive-cover-subline { color:var(--muted); }
.archive-page .archive-cover-foot { color:var(--muted); font-size:9px; }
.archive-page .archive-cover-foot > span:last-child { font-size:23px; color:var(--text); transition:translate .3s,color .3s; }
.archive-page .archive-category-card:hover { translate:0 -4px; }
.archive-page .archive-category-card:hover .archive-cover--type { border-color:var(--orange); background:var(--glass-strong); box-shadow:0 18px 46px rgba(0,0,0,.08); }
.archive-page .archive-category-card:hover .archive-cover-foot > span:last-child { translate:3px -3px; color:var(--orange); }
@keyframes archiveNoteEnter { from { opacity:0; translate:0 20px; } to { opacity:1; translate:0 0; } }
@media (max-width:1000px) {
 .archive-page .archive-hero-grid { grid-template-columns:minmax(0,1fr) 210px; gap:30px; }
 .archive-page .archive-hero h1 { font-size:clamp(52px,7vw,78px); }
 .archive-page .archive-hero-note { padding:22px; }
 .archive-page .archive-hero-note > strong { font-size:96px; }
 .archive-page .archive-cover--type { padding:22px; min-height:255px; }
 .archive-page .archive-cover-title { font-size:27px; }
}
@media (max-width:900px) {
 .archive-page .archive-categories { grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
 .archive-page .archive-filters { justify-content:flex-start; max-width:none; }
}
@media (max-width:750px) {
 .archive-page .archive-hero { min-height:0; padding:132px 0 34px; }
 .archive-page .archive-hero-grid { grid-template-columns:1fr; gap:32px; }
 .archive-page .archive-hero h1 { font-size:clamp(44px,9.2vw,66px); }
 .archive-page .archive-hero .archive-back { margin-bottom:30px; }
 .archive-page .archive-hero .eyebrow { font-size:9px; margin-bottom:24px; }
 .archive-page .archive-hero .archive-lede { font-size:14px; margin-top:24px; }
 .archive-page .archive-hero-note { display:grid; grid-template-columns:82px 1fr; gap:10px 20px; align-items:center; padding:22px; }
 .archive-page .archive-note-kicker { grid-column:1/-1; }
 .archive-page .archive-hero-note > strong { font-size:74px; margin:12px 0; }
 .archive-page .archive-hero-note p { font-size:12px; margin:0; }
 .archive-page .archive-note-foot { grid-column:1/-1; margin-top:6px; }
 .archive-page .archive-hero-footer { flex-wrap:wrap; font-size:9px; margin-top:34px; gap:16px; }
 .archive-page .archive-index { padding:42px 0 60px; }
}
@media (max-width:650px) {
 .archive-page .archive-categories { grid-template-columns:1fr; gap:18px; }
 .archive-page .archive-cover--type { min-height:270px; aspect-ratio:1.3; padding:26px; }
 .archive-page .archive-cover-title { font-size:34px; margin:28px 0; }
 .archive-page .archive-hero .hero-actions { align-items:flex-start; }
 .archive-page .archive-hero .hero-actions .btn { font-size:10px; padding:15px 16px; }
}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))) {
 .archive-page .archive-hero-note,.archive-page .archive-cover--type { background:var(--panel); }
}
@media (prefers-reduced-motion:reduce) {
 .archive-page .archive-hero-note { animation:none; }
 .archive-page .archive-category-card,.archive-page .archive-cover--type,.archive-page .archive-cover-foot > span { transition:none; }
 .archive-page .archive-category-card:hover,.archive-page .archive-category-card:hover .archive-cover-foot > span:last-child { translate:none; }
}
