:root {
  --paper: #eee9df;
  --paper-deep: #e3ddd2;
  --ink: #19191c;
  --muted: #6d6a69;
  --line: rgba(25, 25, 28, .22);
  --rose: #a95e66;
  --rose-deep: #743d49;
  --ochre: #c59654;
  --night: #171719;
  --night-soft: #242225;
  --white: #f8f4ec;
  --serif: "Iowan Old Style", "Baskerville", "Noto Serif TC", "Songti TC", serif;
  --sans: "Avenir Next", "Helvetica Neue", "PingFang TC", "Microsoft JhengHei", sans-serif;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--ink); background: var(--paper); font-family: var(--sans); line-height: 1.65; }
a { color: inherit; }
button { font: inherit; }
.film-grain { position: fixed; inset: 0; z-index: 20; pointer-events: none; opacity: .13; mix-blend-mode: multiply; background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.88' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.22'/%3E%3C/svg%3E"); }

.slate-header { position: sticky; top: 0; z-index: 10; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 2rem; min-height: 72px; padding: 0 5vw; background: rgba(238, 233, 223, .92); border-bottom: 1px solid var(--line); backdrop-filter: blur(12px); }
.slate-wordmark { text-decoration: none; font-family: var(--serif); font-size: 1.42rem; font-style: italic; letter-spacing: -.04em; }
.slate-wordmark span { margin-left: .2rem; color: var(--rose); font-family: var(--sans); font-size: .56rem; font-style: normal; letter-spacing: .08em; }
.slate-header nav { display: flex; gap: 1.6rem; font-size: .67rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.slate-header nav a { position: relative; text-decoration: none; color: var(--muted); }
.slate-header nav a::after { position: absolute; right: 0; bottom: -.48rem; left: 0; height: 1px; background: var(--rose); content: ""; transform: scaleX(0); transform-origin: left; transition: transform .25s ease; }
.slate-header nav a:hover::after, .slate-header nav a.is-active::after { transform: scaleX(1); }
.slate-header nav a.is-active { color: var(--ink); }
.market-note { justify-self: end; color: var(--muted); font-size: .61rem; letter-spacing: .16em; }

.slate-hero { position: relative; display: grid; grid-template-columns: 1fr; min-height: min(760px, calc(100vh - 72px)); padding: clamp(6rem, 13vw, 12rem) 9vw 7rem; overflow: hidden; background: linear-gradient(115deg, var(--paper) 0%, #e8e1d5 58%, #d4a3a0 58.2%, #a95e66 100%); }
.slate-hero::before { position: absolute; top: 12%; right: 16%; width: 35vw; height: 18vw; min-height: 140px; background: repeating-linear-gradient(0deg, transparent 0 11px, rgba(25,25,28,.11) 12px 13px); opacity: .28; content: ""; transform: rotate(-12deg); }
.slate-hero::after { position: absolute; right: -4vw; bottom: -8vw; width: 40vw; height: 31vw; border: 1px solid rgba(248,244,236,.56); border-radius: 50%; content: ""; transform: rotate(-18deg); }
.hero-index { position: absolute; top: 2rem; left: 5vw; color: var(--muted); font-size: .62rem; font-weight: 700; letter-spacing: .18em; line-height: 1.9; }
.hero-index span { color: var(--rose); }
.hero-copy, .hero-side { position: relative; z-index: 1; }
.eyebrow { margin: 0 0 1.2rem; color: var(--rose-deep); font-size: .66rem; font-weight: 800; letter-spacing: .2em; text-transform: uppercase; }
.hero-copy h1 { max-width: 720px; margin: 0; color: var(--ink); font-family: var(--serif); font-size: clamp(4.8rem, 12vw, 11.5rem); font-weight: 400; letter-spacing: -.09em; line-height: .78; }
.hero-copy h1 em { display: block; margin-left: 10vw; color: var(--rose-deep); font-size: .56em; letter-spacing: -.07em; }
.hero-lede { display: grid; gap: 1rem; max-width: 760px; margin: 3.5rem 0 0 16vw; color: var(--ink); font-family: var(--serif); font-size: clamp(1rem, 1.6vw, 1.35rem); line-height: 1.9; }
.hero-lede__en, .intro-copy__en, .copy-en { display: block; color: #5f595b; font-family: var(--sans); font-size: .75em; letter-spacing: .015em; line-height: 1.75; }
.hero-side { align-self: end; justify-self: end; max-width: 290px; margin-bottom: 2rem; color: var(--white); font-family: var(--serif); font-size: .95rem; line-height: 1.8; }
.hero-side__label, .hero-side__foot { color: var(--white); font-family: var(--sans); font-size: .59rem; font-weight: 700; letter-spacing: .16em; }
.hero-side__label { margin: 0 0 1rem; }
.hero-side__foot { margin: 1.5rem 0 0; opacity: .74; }
.hero-rule { display: flex; align-items: center; gap: .5rem; margin-top: 1.6rem; }
.hero-rule span:first-child { width: 74px; height: 1px; background: var(--white); }
.hero-rule span:last-child { width: 7px; height: 7px; border: 1px solid var(--white); border-radius: 50%; }
.down-cue { position: absolute; bottom: 2.2rem; left: 9vw; display: flex; align-items: center; gap: .8rem; color: var(--ink); font-size: .61rem; font-weight: 800; letter-spacing: .16em; text-decoration: none; }
.down-cue i { display: inline-block; width: 42px; height: 1px; background: currentColor; transition: width .2s ease; }
.down-cue:hover i { width: 72px; }

.slate-intro { display: grid; grid-template-columns: .7fr 1.6fr .7fr; gap: 2rem; align-items: center; padding: clamp(4rem, 8vw, 8rem) 12vw; border-bottom: 1px solid var(--line); }
.intro-number, .intro-caption { color: var(--rose); font-size: .62rem; font-weight: 800; letter-spacing: .15em; }
.intro-caption { justify-self: end; max-width: 125px; text-align: right; line-height: 1.7; }
.intro-copy { display: grid; gap: 1rem; margin: 0; font-family: var(--serif); font-size: clamp(1.2rem, 2.3vw, 2rem); line-height: 1.55; }

.projects-section, .media-section { padding: clamp(5rem, 10vw, 9rem) 7vw; }
.section-head { display: flex; justify-content: space-between; align-items: end; gap: 2rem; margin-bottom: 3rem; }
.section-head h2 { margin: 0; font-family: var(--serif); font-size: clamp(2.6rem, 5vw, 5.5rem); font-weight: 400; letter-spacing: -.07em; line-height: .95; }
.section-head h2 em { margin-left: .35em; color: var(--rose); font-size: .46em; letter-spacing: -.03em; }
.section-note { display: grid; gap: .55rem; margin: 0; color: var(--muted); font-size: .72rem; line-height: 1.8; text-align: right; }
.section-note__en { display: block; color: inherit; font-size: .92em; }
.filter-row { display: flex; flex-wrap: wrap; gap: .5rem; margin-bottom: 2.2rem; border-top: 1px solid var(--line); padding-top: 1rem; }
.filter-button { border: 0; border-bottom: 1px solid transparent; padding: .4rem .65rem; color: var(--muted); background: transparent; cursor: pointer; font-size: .64rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; transition: color .2s ease, border-color .2s ease; }
.filter-button span { margin-left: .3rem; color: var(--rose); }
.filter-button:hover, .filter-button.is-active { border-bottom-color: var(--rose); color: var(--ink); }
.project-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.1rem; }
.project-card { position: relative; display: flex; min-width: 0; flex-direction: column; min-height: 690px; padding: 1rem; overflow: hidden; border: 1px solid var(--line); background: rgba(248,244,236,.45); transition: transform .3s ease, box-shadow .3s ease; }
.project-card--wide { grid-column: span 2; display: grid; grid-template-columns: minmax(250px, .72fr) 1fr 105px; gap: 1.2rem; min-height: 415px; }
.project-card:hover { box-shadow: 12px 12px 0 rgba(169,94,102,.16); transform: translateY(-5px); }
.card-top { display: flex; justify-content: space-between; gap: 1rem; color: var(--muted); font-size: .57rem; font-weight: 800; letter-spacing: .14em; }
.card-top span:last-child { color: var(--rose-deep); text-align: right; }
.card-art { position: relative; display: flex; min-height: 330px; flex-direction: column; justify-content: space-between; margin-top: .8rem; padding: 1.35rem; overflow: hidden; color: var(--white); }
.project-card--wide .card-art { min-height: 340px; margin-top: 0; }
.card-art::before { position: absolute; inset: 14% -12% -12% 25%; border: 1px solid rgba(248,244,236,.42); border-radius: 50%; content: ""; transform: rotate(-28deg); }
.card-art::after { position: absolute; right: -14%; bottom: 12%; width: 80%; height: 1px; background: rgba(248,244,236,.58); content: ""; transform: rotate(-22deg); }
.card-art__image { position: absolute; inset: 0; z-index: 0; width: 100%; height: 100%; object-fit: cover; opacity: .92; }
.art-poster { background: #101014; }
.art-poster::after { right: 0; bottom: 0; width: 100%; height: 46%; background: linear-gradient(0deg, rgba(10,10,12,.72), transparent); transform: none; }
.art-mask { background: linear-gradient(145deg, #1c2928 0%, #2b4742 38%, #9a4d5b 100%); }
.art-coffee { background: linear-gradient(145deg, #542c2c, #b16755 55%, #e4c291); }
.art-family { color: var(--ink); background: linear-gradient(145deg, #c8b68f, #f0d4b4 56%, #a3626d); }
.art-couch { background: linear-gradient(145deg, #293c5d, #a97572 52%, #ddc69d); }
.art-organs { background: linear-gradient(145deg, #160f15, #4b2235 50%, #bd6a5f); }
.art-word { position: relative; z-index: 1; font-family: var(--serif); font-size: clamp(2.8rem, 6vw, 6.2rem); letter-spacing: -.12em; line-height: .85; }
.art-note { position: relative; z-index: 1; font-size: .59rem; font-weight: 800; letter-spacing: .15em; line-height: 1.7; }
.card-art b { position: absolute; right: 1rem; bottom: .5rem; color: rgba(248,244,236,.33); font-family: var(--serif); font-size: 8rem; font-weight: 400; line-height: .8; }
.card-body { display: flex; min-width: 0; flex: 1; flex-direction: column; padding: 1.2rem .2rem .3rem; }
.card-title-row { display: flex; justify-content: space-between; gap: 1rem; align-items: start; }
.card-title-row h3 { margin: 0; font-family: var(--serif); font-size: clamp(1.6rem, 2.7vw, 2.65rem); font-weight: 400; letter-spacing: -.07em; line-height: 1; }
.card-title-row p { margin: .1rem 0 0; color: var(--rose-deep); font-size: .58rem; font-weight: 800; letter-spacing: .1em; line-height: 1.5; text-align: right; }
.card-logline { display: grid; gap: .7rem; margin: 1.3rem 0 0; color: #444044; font-family: var(--serif); font-size: .95rem; line-height: 1.8; }
.card-logline .copy-en { font-size: .77em; }
.tag-row { display: flex; flex-wrap: wrap; gap: .35rem; margin-top: auto; padding-top: 1.5rem; }
.tag-row span { border: 1px solid var(--line); padding: .18rem .42rem; color: var(--muted); font-size: .56rem; letter-spacing: .04em; }
.card-footer, .media-actions { display: flex; align-items: center; justify-content: space-between; gap: .7rem; margin-top: 1.2rem; padding-top: .8rem; border-top: 1px solid var(--line); }
.resource-link { color: var(--rose-deep); font-size: .66rem; font-weight: 800; letter-spacing: .08em; text-decoration: none; white-space: nowrap; }
.resource-link span { display: inline-block; margin-left: .3rem; transition: transform .2s ease; }
.resource-link:hover span { transform: translate(3px, -3px); }
.card-actions { display: flex; gap: .25rem; }
.card-actions button, .media-actions button { border: 0; padding: .22rem .35rem; color: var(--muted); background: transparent; cursor: pointer; font-size: .58rem; letter-spacing: .05em; }
.card-actions button:hover, .media-actions button:hover { color: var(--rose-deep); }
.qr-dock { display: flex; flex-direction: column; align-items: center; gap: .4rem; }
.qr-dock span { color: var(--muted); font-size: .5rem; font-weight: 800; letter-spacing: .13em; writing-mode: vertical-rl; }
.qr-dock img { width: 88px; height: 88px; padding: 5px; border: 1px solid var(--line); background: var(--white); image-rendering: pixelated; }
.project-card:not(.project-card--wide) .qr-dock { position: absolute; right: 1rem; bottom: 1rem; }
.project-card:not(.project-card--wide) .card-body { padding-right: 6.8rem; }

.media-section { position: relative; color: var(--white); background: var(--night); }
.media-section::before { position: absolute; top: 12%; right: 7%; width: 30vw; height: 30vw; border: 1px solid rgba(248,244,236,.12); border-radius: 50%; content: ""; }
.section-head--light { position: relative; z-index: 1; }
.section-head--light .eyebrow, .section-head--light h2 em { color: #d58b8c; }
.section-head--light .section-note { color: rgba(248,244,236,.6); }
.media-grid { position: relative; z-index: 1; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
.media-card { position: relative; display: grid; grid-template-columns: 1fr 110px; gap: 1.1rem; min-width: 0; padding: 1rem; border: 1px solid rgba(248,244,236,.24); background: rgba(255,255,255,.035); }
.media-card--video { grid-column: span 2; grid-template-columns: minmax(230px, .8fr) 1fr 110px; }
.media-head { grid-column: 1 / -1; display: flex; justify-content: space-between; color: rgba(248,244,236,.56); font-size: .57rem; font-weight: 800; letter-spacing: .14em; }
.media-screen { position: relative; min-height: 210px; overflow: hidden; background: #050506; }
.media-screen video { display: block; width: 100%; height: 100%; min-height: 210px; object-fit: cover; opacity: .9; }
.media-screen::before { position: absolute; inset: 0; z-index: 1; pointer-events: none; background: linear-gradient(110deg, rgba(25,25,28,.55), transparent 60%); content: ""; }
.play-label { position: absolute; bottom: 1rem; left: 1rem; z-index: 2; border: 1px solid rgba(248,244,236,.7); padding: .3rem .5rem; color: var(--white); font-size: .58rem; font-weight: 800; letter-spacing: .12em; }
.media-copy { align-self: end; min-width: 0; }
.media-copy h3 { margin: 0; font-family: var(--serif); font-size: clamp(1.35rem, 2vw, 2rem); font-weight: 400; letter-spacing: -.06em; line-height: 1.1; }
.media-copy p { margin: .35rem 0 0; color: rgba(248,244,236,.62); font-size: .75rem; }
.media-kicker { color: #d58b8c !important; font-size: .58rem !important; font-weight: 800; letter-spacing: .14em; }
.media-actions { justify-content: flex-start; flex-wrap: wrap; border-top-color: rgba(248,244,236,.2); }
.media-actions .resource-link, .media-actions button { color: #e2aaa4; }
.media-card .qr-dock { align-self: end; }
.media-card .qr-dock img { border-color: rgba(248,244,236,.35); }
.dm-cover { display: flex; min-height: 210px; flex-direction: column; justify-content: space-between; padding: 1.2rem; color: var(--white); font-family: var(--serif); }
.dm-cover--zh { background: radial-gradient(circle at 65% 26%, #d69a8e, transparent 20%), linear-gradient(140deg, #382d37, #8b5d61 58%, #dfb693); }
.dm-cover--en { background: radial-gradient(circle at 30% 36%, #e0b76b, transparent 20%), linear-gradient(140deg, #132a32, #47646a 55%, #c58371); }
.dm-cover--image { padding: 0; overflow: hidden; background: #1d1c20; }
.dm-cover--image img { display: block; width: 100%; height: 100%; min-height: 210px; object-fit: cover; object-position: center; }
.dm-cover span { font-size: .7rem; letter-spacing: .14em; }
.dm-cover b { font-size: clamp(2.1rem, 4vw, 4.4rem); font-weight: 400; letter-spacing: -.1em; line-height: .82; }
.dm-cover small { font-family: var(--sans); font-size: .56rem; letter-spacing: .1em; }
.resume-section { position: relative; overflow: hidden; padding: clamp(5rem, 10vw, 9rem) 7vw; color: var(--white); background: #1b1a1d; }
.resume-section::before { position: absolute; top: -22%; right: 11%; width: 1px; height: 155%; background: rgba(213,139,140,.48); content: ""; transform: rotate(21deg); }
.resume-section::after { position: absolute; right: -8%; bottom: -35%; width: 38vw; height: 38vw; border: 1px solid rgba(213,139,140,.2); border-radius: 50%; content: ""; }
.resume-section__head, .resume-grid { position: relative; z-index: 1; max-width: 1380px; margin-right: auto; margin-left: auto; }
.resume-section__head { display: flex; align-items: end; justify-content: space-between; gap: 2rem; margin-bottom: 3rem; }
.resume-section__head h2 { margin: 0; color: var(--white); font-family: var(--serif); font-size: clamp(2.6rem, 5vw, 5.5rem); font-weight: 400; letter-spacing: -.08em; line-height: .92; }
.resume-section__head h2 em { display: block; margin-top: .45rem; color: #d58b8c; font-size: .45em; letter-spacing: -.02em; }
.resume-section .eyebrow { color: #d58b8c; }
.resume-section__actions { display: flex; flex-wrap: wrap; align-items: center; justify-content: end; gap: .45rem; }
.resume-locale, .resume-download { min-height: 38px; border: 1px solid rgba(248,244,236,.3); padding: .55rem .7rem; color: rgba(248,244,236,.7); background: transparent; cursor: pointer; font-size: .61rem; font-weight: 800; letter-spacing: .08em; text-decoration: none; }
.resume-locale:hover, .resume-locale.is-active, .resume-download:hover { border-color: #d58b8c; color: #1b1a1d; background: #d58b8c; }
.resume-grid { display: grid; grid-template-columns: minmax(0, 1.12fr) minmax(18rem, .88fr); gap: clamp(2rem, 6vw, 6rem); align-items: start; }
.resume-visual { margin: 0; padding: .75rem; border: 1px solid rgba(248,244,236,.2); background: rgba(255,255,255,.05); box-shadow: 12px 12px 0 rgba(0,0,0,.18); }
.resume-visual img { display: block; width: 100%; height: auto; border: 1px solid rgba(248,244,236,.14); }
.resume-visual figcaption { display: flex; justify-content: space-between; gap: 1rem; padding: .7rem .15rem 0; color: rgba(248,244,236,.56); font-size: .54rem; font-weight: 800; letter-spacing: .12em; }
.resume-copy { min-width: 0; }
.resume-panel[hidden] { display: none; }
.resume-panel__label { margin: 0 0 1rem; color: #d58b8c; font-size: .72rem; font-weight: 800; letter-spacing: .2em; }
.resume-panel > p:not(.resume-panel__label) { margin: 0 0 1.1rem; color: rgba(248,244,236,.74); font-family: var(--serif); font-size: clamp(.9rem, 1.3vw, 1.05rem); line-height: 1.85; }
.resume-panel h3 { margin: 2rem 0 .75rem; padding-bottom: .5rem; border-bottom: 1px solid rgba(248,244,236,.22); color: var(--white); font-family: var(--serif); font-size: 1.35rem; font-weight: 400; }
.resume-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .55rem 1.5rem; margin: 0; padding: 0; list-style: none; color: rgba(248,244,236,.7); font-size: .72rem; line-height: 1.5; }
.resume-list li::before { margin-right: .45rem; color: #d58b8c; content: "—"; }
.resume-timeline { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); border-bottom: 1px solid rgba(248,244,236,.25); }
.resume-timeline div { min-height: 92px; padding: .6rem .6rem .8rem 0; border-right: 1px solid rgba(248,244,236,.18); }
.resume-timeline div:last-child { border-right: 0; }
.resume-timeline b, .resume-timeline span { display: block; }
.resume-timeline b { color: #d58b8c; font-size: .58rem; letter-spacing: .05em; }
.resume-timeline span { margin-top: .45rem; color: rgba(248,244,236,.68); font-size: .62rem; line-height: 1.45; }

.slate-footer { display: flex; justify-content: space-between; gap: 2rem; padding: 4rem 7vw 5rem; color: var(--ink); background: var(--paper); }
.slate-footer p { margin: .4rem 0 0; color: var(--muted); font-family: var(--serif); font-size: .9rem; }
.footer-meta { display: flex; flex-direction: column; align-items: end; gap: .5rem; color: var(--muted); font-size: .6rem; font-weight: 800; letter-spacing: .12em; text-align: right; }
.footer-meta a { color: var(--rose-deep); text-decoration: none; }
.toast { position: fixed; right: 1.5rem; bottom: 1.5rem; z-index: 30; max-width: 260px; padding: .7rem 1rem; color: var(--white); background: var(--rose-deep); box-shadow: 5px 5px 0 rgba(25,25,28,.18); font-size: .72rem; opacity: 0; pointer-events: none; transform: translateY(8px); transition: opacity .2s ease, transform .2s ease; }
.toast.is-visible { opacity: 1; transform: translateY(0); }
[data-project].is-hidden { display: none; }

@media (max-width: 900px) {
  .slate-header { grid-template-columns: 1fr auto; }
  .slate-header nav { display: none; }
  .market-note { grid-column: 1 / -1; grid-row: 2; justify-self: start; margin: -1.2rem 0 1rem; }
  .slate-header { padding-top: 1.1rem; }
  .slate-hero { grid-template-columns: 1fr; min-height: 680px; padding-top: 8rem; }
  .hero-side { justify-self: start; max-width: 270px; margin-top: 4rem; }
  .hero-copy h1 { font-size: clamp(4rem, 15vw, 8rem); }
  .slate-intro { grid-template-columns: 1fr; gap: 1rem; padding-right: 10vw; padding-left: 10vw; }
  .intro-caption { justify-self: start; text-align: left; }
  .project-card--wide { display: flex; min-height: 700px; }
  .project-card--wide .card-art { min-height: 330px; }
  .project-card--wide .qr-dock { position: absolute; right: 1rem; bottom: 1rem; }
  .project-card--wide .card-body { padding-right: 6.8rem; }
  .media-card--video { display: flex; flex-direction: column; }
  .media-card--video .media-head { order: 0; }
  .media-card--video .media-screen { order: 1; }
  .media-card--video .media-copy { order: 2; }
  .media-card--video .qr-dock { position: static; align-self: flex-end; flex-direction: row; gap: .6rem; margin-top: .75rem; }
  .media-card--video .qr-dock span { writing-mode: horizontal-tb; }
  .media-card--video .media-copy { padding-right: 0; }
  .resume-section__head { display: block; }
  .resume-section__actions { justify-content: start; margin-top: 1.5rem; }
  .resume-grid { grid-template-columns: 1fr; }
}

@media (max-width: 620px) {
  .slate-header { min-height: 64px; padding-right: 1.2rem; padding-left: 1.2rem; }
  .slate-hero { min-height: 660px; padding: 7rem 1.3rem 5.5rem; }
  .hero-index { left: 1.3rem; }
  .hero-lede { margin-left: 8vw; }
  .down-cue { left: 1.3rem; }
  .projects-section, .media-section { padding-right: 1.2rem; padding-left: 1.2rem; }
  .section-head { display: block; }
  .section-note { margin-top: 1.3rem; text-align: left; }
  .project-grid, .media-grid { grid-template-columns: 1fr; }
  .project-card, .project-card--wide, .media-card, .media-card--video { grid-column: auto; }
  .project-card { min-height: 680px; }
  .project-card--wide { min-height: 700px; }
  .card-art, .project-card--wide .card-art { min-height: 310px; }
  .media-card { grid-template-columns: 1fr 90px; }
  .media-card--video { display: flex; }
  .media-screen, .media-screen video { min-height: 190px; }
  .media-copy { padding-right: 0 !important; }
  .media-card--video .qr-dock { margin-top: .75rem; }
  .slate-footer { display: block; padding-right: 1.2rem; padding-left: 1.2rem; }
  .footer-meta { align-items: start; margin-top: 2rem; text-align: left; }
  .resume-section { padding-right: 1.2rem; padding-left: 1.2rem; }
  .resume-section__actions { display: grid; grid-template-columns: 1fr 1fr; }
  .resume-locale, .resume-download { width: 100%; text-align: center; }
  .resume-download { grid-column: 1 / -1; }
  .resume-visual { padding: .45rem; }
  .resume-visual figcaption { display: grid; gap: .3rem; font-size: .49rem; }
  .resume-list { grid-template-columns: 1fr; }
  .resume-timeline { grid-template-columns: 1fr 1fr; }
  .resume-timeline div:nth-child(2n) { border-right: 0; }
}

@media (prefers-reduced-motion: reduce) { *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; } }
