:root {
  --ink: #11120f;
  --paper: #f1efe8;
  --paper-dark: #e5e1d7;
  --stone: #aaa79d;
  --accent: #b68d5b;
  --white: #f9f8f4;
  --line: rgba(17, 18, 15, 0.18);
  --font-sans: "DM Sans", Arial, sans-serif;
  --font-serif: "Instrument Serif", Georgia, serif;
  --pad: clamp(22px, 3.2vw, 54px);
  --ease: cubic-bezier(.22,.75,.18,1);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  background: var(--paper);
  color: var(--ink);
  font-family: var(--font-sans);
  font-weight: 400;
  overflow-x: hidden;
}
body.menu-open { overflow: hidden; }
a { color: inherit; text-decoration: none; }
button { color: inherit; font: inherit; }
img { display: block; width: 100%; }
::selection { background: var(--accent); color: var(--white); }

.container { width: 100%; padding-inline: var(--pad); }
.section-pad { padding-block: clamp(110px, 15vw, 230px); }
.grain {
  position: fixed; inset: -50%; z-index: 80; pointer-events: none; opacity: .045;
  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='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.8'/%3E%3C/svg%3E");
  animation: noise 280ms steps(2) infinite;
}
@keyframes noise { 0%{transform:translate(0,0)} 25%{transform:translate(2%,-3%)} 50%{transform:translate(-4%,2%)} 75%{transform:translate(3%,4%)} 100%{transform:translate(0,0)} }

.cursor {
  position: fixed; left: 0; top: 0; z-index: 100; width: 68px; height: 68px; border-radius: 50%;
  background: var(--paper); color: var(--ink); display: grid; place-items: center; pointer-events: none;
  transform: translate(-50%,-50%) scale(0); transition: transform .22s var(--ease), background .25s, color .25s;
  mix-blend-mode: normal;
}
.cursor.is-visible { transform: translate(-50%,-50%) scale(1); }
.cursor span { font-size: 11px; text-transform: uppercase; letter-spacing: .12em; }

.loader {
  position: fixed; inset: 0; z-index: 200; background: var(--ink); color: var(--paper);
  display: flex; align-items: flex-end; padding: var(--pad); transition: transform 1s var(--ease) .15s;
}
.loader.is-done { transform: translateY(-102%); }
.loader__brand { font-family: var(--font-serif); font-size: clamp(70px, 14vw, 220px); line-height: .7; }
.loader__line { position: absolute; left: var(--pad); right: var(--pad); bottom: 28px; height: 1px; background: rgba(255,255,255,.18); }
.loader__line span { display: block; width: 0; height: 100%; background: var(--paper); }
.loader__counter { margin-left: auto; font-size: 12px; letter-spacing: .1em; padding-bottom: 10px; }

.site-header {
  position: fixed; inset: 0 0 auto; z-index: 60; height: 92px; padding: 0 var(--pad);
  display: flex; align-items: center; justify-content: space-between; color: var(--white);
  transition: color .45s, background .45s, height .45s, transform .45s var(--ease);
}
.site-header.is-scrolled { color: var(--ink); background: rgba(241,239,232,.91); backdrop-filter: blur(14px); height: 74px; border-bottom: 1px solid var(--line); }
.site-header.is-hidden { transform: translateY(-105%); }
.brand { display: inline-flex; align-items: center; gap: 13px; z-index: 2; }
.brand__mark { font-family: var(--font-serif); font-size: 34px; line-height: .8; letter-spacing: -.03em; }
.brand__descriptor { font-size: 8px; line-height: 1.25; text-transform: uppercase; letter-spacing: .14em; opacity: .72; }
.desktop-nav { display: flex; align-items: center; gap: clamp(22px,3vw,50px); margin-left: auto; margin-right: 48px; }
.desktop-nav a { font-size: 11px; text-transform: uppercase; letter-spacing: .12em; position: relative; }
.desktop-nav a::after { content:""; position:absolute; left:0; bottom:-6px; width:100%; height:1px; background:currentColor; transform:scaleX(0); transform-origin:right; transition:transform .35s var(--ease); }
.desktop-nav a:hover::after { transform:scaleX(1); transform-origin:left; }
.menu-toggle { border:0; background:none; display:flex; align-items:center; gap:12px; padding:12px 0; cursor:pointer; text-transform:uppercase; letter-spacing:.14em; font-size:10px; z-index:72; }
.menu-toggle i { width:34px; height:1px; background:currentColor; position:relative; transition:transform .35s; }
.menu-toggle i::after { content:""; position:absolute; width:22px; height:1px; right:0; top:6px; background:currentColor; transition:transform .35s, width .35s; }
body.menu-open .menu-toggle { color: var(--paper); }
body.menu-open .menu-toggle i { transform:rotate(45deg); }
body.menu-open .menu-toggle i::after { width:34px; top:0; transform:rotate(-90deg); }

.menu-panel { position:fixed; inset:0; background:var(--ink); color:var(--paper); z-index:55; transform:translateY(-101%); transition:transform .85s var(--ease); }
.menu-panel.is-open { transform:translateY(0); }
.menu-panel__inner { height:100%; padding:120px var(--pad) 34px; display:grid; grid-template-columns:1fr 3fr; grid-template-rows:auto 1fr auto; }
.menu-panel__meta { grid-column:1; font-size:10px; letter-spacing:.12em; text-transform:uppercase; display:flex; flex-direction:column; gap:8px; color:rgba(255,255,255,.48); }
.menu-panel__nav { grid-column:2; display:flex; flex-direction:column; align-self:center; }
.menu-panel__nav a { font-family:var(--font-serif); font-size:clamp(56px,8vw,128px); line-height:.86; display:flex; align-items:flex-start; gap:18px; border-bottom:1px solid rgba(255,255,255,.14); padding:8px 0; transition:padding-left .4s var(--ease), color .3s; }
.menu-panel__nav a:hover { padding-left:30px; color:var(--accent); }
.menu-panel__nav small { font-family:var(--font-sans); font-size:9px; padding-top:12px; color:rgba(255,255,255,.42); }
.menu-panel__bottom { grid-column:1/-1; display:flex; justify-content:space-between; border-top:1px solid rgba(255,255,255,.14); padding-top:18px; font-size:10px; text-transform:uppercase; letter-spacing:.1em; }

.hero { min-height:100svh; position:relative; color:var(--white); overflow:hidden; background:#1b1b18; }
.hero__slides, .hero-slide { position:absolute; inset:0; }
.hero-slide { opacity:0; transform:scale(1.06); transition:opacity 1.1s ease, transform 1.8s var(--ease); }
.hero-slide.is-active { opacity:1; transform:scale(1); z-index:1; }
.hero-slide img { width:100%; height:100%; object-fit:cover; object-position:center; }
.hero__veil { position:absolute; inset:0; z-index:2; background:linear-gradient(90deg,rgba(0,0,0,.42) 0%,rgba(0,0,0,.12) 48%,rgba(0,0,0,.24) 100%), linear-gradient(0deg,rgba(0,0,0,.35),transparent 48%); }
.hero__topline { position:absolute; z-index:3; top:120px; left:var(--pad); right:var(--pad); display:flex; justify-content:space-between; font-size:9px; text-transform:uppercase; letter-spacing:.18em; opacity:.68; }
.hero__content { position:relative; z-index:3; min-height:100svh; display:flex; flex-direction:column; justify-content:flex-end; padding-bottom:clamp(65px,9vh,100px); }
.hero__eyebrow { display:flex; gap:22px; align-items:center; margin-bottom:20px; font-size:10px; text-transform:uppercase; letter-spacing:.16em; }
.hero__index { border:1px solid rgba(255,255,255,.5); border-radius:50%; width:31px; height:31px; display:grid; place-items:center; }
.hero__title { margin:0; font-family:var(--font-serif); font-size:clamp(88px,13.7vw,220px); font-weight:400; line-height:.68; letter-spacing:-.055em; }
.hero__title em { font-weight:400; margin-left:clamp(40px,8vw,150px); }
.hero__footer { margin-top:clamp(38px,7vh,80px); display:flex; align-items:flex-end; justify-content:space-between; }
.hero__location { display:flex; gap:clamp(35px,7vw,120px); font-size:10px; line-height:1.5; text-transform:uppercase; letter-spacing:.12em; }
.hero__location span:last-child { opacity:.58; }
.circle-link { width:112px; height:112px; position:relative; display:grid; place-items:center; }
.circle-link svg { position:absolute; inset:0; width:100%; height:100%; fill:none; stroke:currentColor; stroke-width:.7; transition:transform .6s var(--ease); }
.circle-link svg path { stroke-width:1.1; }
.circle-link span { font-size:9px; line-height:1.3; text-transform:uppercase; letter-spacing:.12em; text-align:center; }
.circle-link:hover svg { transform:rotate(45deg); }
.hero__controls { position:absolute; right:var(--pad); top:50%; z-index:4; display:grid; grid-template-columns:32px 90px 32px; align-items:center; gap:10px; transform:rotate(90deg) translateX(50%); transform-origin:right center; }
.hero-arrow { border:0; background:none; color:white; padding:5px; cursor:pointer; }
.hero__progress { height:1px; background:rgba(255,255,255,.35); overflow:hidden; }
.hero__progress span { display:block; width:100%; height:100%; background:white; transform-origin:left; animation:slideProgress 7s linear infinite; }
@keyframes slideProgress { from{transform:scaleX(0)} to{transform:scaleX(1)} }
.hero__count { position:absolute; left:50%; bottom:-28px; transform:translateX(-50%); font-size:9px; letter-spacing:.12em; white-space:nowrap; }
.scroll-cue { position:absolute; left:50%; bottom:25px; z-index:4; transform:translateX(-50%); display:flex; align-items:center; gap:13px; font-size:8px; text-transform:uppercase; letter-spacing:.15em; }
.scroll-cue i { display:block; width:32px; height:1px; background:rgba(255,255,255,.55); position:relative; overflow:hidden; }
.scroll-cue i::after { content:""; position:absolute; inset:0; background:white; animation:scrollLine 1.8s infinite var(--ease); }
@keyframes scrollLine { from{transform:translateX(-110%)} to{transform:translateX(110%)} }

.section-kicker { display:flex; align-items:center; gap:14px; font-size:9px; text-transform:uppercase; letter-spacing:.18em; }
.section-kicker span { width:27px; height:27px; display:grid; place-items:center; border:1px solid currentColor; border-radius:50%; font-size:8px; }
.section-kicker.light { color:var(--white); }
.display-title { font-family:var(--font-serif); font-weight:400; font-size:clamp(56px,8.2vw,132px); line-height:.92; letter-spacing:-.04em; margin:0; }
.display-title em { font-weight:400; color:var(--accent); }
.text-link { display:inline-flex; align-items:center; gap:35px; margin-top:40px; padding-bottom:8px; border-bottom:1px solid var(--ink); font-size:10px; text-transform:uppercase; letter-spacing:.12em; }
.text-link span { transition:transform .3s; }
.text-link:hover span { transform:translate(4px,-4px); }

.manifesto { border-bottom:1px solid var(--line); }
.manifesto__grid { display:grid; grid-template-columns:1fr 3fr; gap:30px; }
.manifesto__content { grid-column:2; }
.manifesto .display-title { max-width:1280px; }
.manifesto__body { margin-top:70px; margin-left:35%; max-width:460px; }
.manifesto__body p { font-size:clamp(16px,1.35vw,21px); line-height:1.55; margin:0; }

.section-head { display:flex; justify-content:space-between; align-items:flex-end; margin-bottom:75px; }
.section-head p { font-family:var(--font-serif); font-size:clamp(23px,2.4vw,38px); line-height:1.04; margin:0; }
.project-grid { display:grid; grid-template-columns:repeat(12,1fr); gap:clamp(28px,4.4vw,78px) 22px; }
.project-card { display:block; }
.project-card--large { grid-column:1/9; }
.project-card--portrait { grid-column:9/13; margin-top:25vh; }
.project-card--wide { grid-column:4/13; margin-top:5vh; }
.project-card__image { overflow:hidden; background:var(--paper-dark); position:relative; }
.project-card--large .project-card__image { aspect-ratio:1.5; }
.project-card--portrait .project-card__image { aspect-ratio:.75; }
.project-card--wide .project-card__image { aspect-ratio:1.75; }
.project-card__image img { width:100%; height:100%; object-fit:cover; transition:transform 1.1s var(--ease); }
.project-card:hover .project-card__image img { transform:scale(1.035); }
.project-card--portrait img { object-position:62% center; }
.project-card__meta { padding-top:17px; display:flex; justify-content:space-between; border-top:1px solid transparent; }
.project-card__meta > div:first-child { display:flex; align-items:baseline; gap:17px; }
.project-card__meta span { font-size:8px; text-transform:uppercase; letter-spacing:.14em; }
.project-card__meta h3 { font-family:var(--font-serif); font-size:clamp(25px,2.2vw,40px); font-weight:400; margin:0; }
.project-card__meta > div:last-child { display:flex; gap:30px; align-items:flex-start; padding-top:9px; }
.projects__all { display:flex; justify-content:flex-end; margin-top:85px; }
.button-line { min-width:240px; border-top:1px solid var(--ink); border-bottom:1px solid var(--ink); padding:18px 0; display:flex; justify-content:space-between; align-items:center; font-size:10px; text-transform:uppercase; letter-spacing:.13em; transition:padding .35s var(--ease); }
.button-line:hover { padding-inline:12px; }

.quote-band { background:var(--ink); color:var(--paper); overflow:hidden; padding:28px 0 24px; }
.quote-band__track { width:max-content; display:flex; align-items:center; gap:44px; animation:marquee 26s linear infinite; }
.quote-band span { font-family:var(--font-serif); font-size:clamp(46px,5.8vw,92px); font-style:italic; white-space:nowrap; }
.quote-band i { font-size:14px; color:var(--accent); font-style:normal; }
@keyframes marquee { to{transform:translateX(-50%)} }

.expertise { background:var(--paper-dark); }
.expertise__layout { display:grid; grid-template-columns:1.05fr .85fr; column-gap:clamp(30px,7vw,120px); align-items:start; }
.expertise__intro { padding-right:10%; }
.expertise__intro .section-kicker { margin-bottom:70px; }
.expertise__intro p { max-width:420px; margin:55px 0 0 20%; font-size:15px; line-height:1.65; }
.expertise__visual { margin-top:0; aspect-ratio:.88; position:relative; overflow:hidden; background:#d8d2c6; }
.expertise__visual img { position:absolute; inset:0; height:100%; object-fit:cover; opacity:0; transform:scale(1.06); transition:opacity .65s, transform 1s var(--ease); }
.expertise__visual img.is-active { opacity:1; transform:scale(1); }
.expertise__visual-label { position:absolute; left:24px; bottom:24px; z-index:2; color:white; font-family:var(--font-serif); font-size:25px; line-height:1; }
.expertise__list { grid-column:1/-1; margin-top:120px; }
.expertise-row { display:grid; grid-template-columns:70px 1fr 40px; align-items:center; border-top:1px solid var(--line); padding:25px 0; transition:padding .38s var(--ease), color .3s; }
.expertise-row:last-child { border-bottom:1px solid var(--line); }
.expertise-row span { font-size:9px; letter-spacing:.14em; }
.expertise-row strong { font-family:var(--font-serif); font-weight:400; font-size:clamp(39px,5vw,78px); line-height:1; }
.expertise-row i { font-style:normal; font-size:22px; opacity:0; transform:translate(-12px,12px); transition:.35s var(--ease); }
.expertise-row:hover { padding-left:22px; color:var(--accent); }
.expertise-row:hover i { opacity:1; transform:translate(0,0); }

.legacy { display:grid; grid-template-columns:1.15fr .85fr; min-height:900px; background:var(--ink); color:var(--paper); }
.legacy__image { overflow:hidden; }
.legacy__image img { height:100%; object-fit:cover; filter:saturate(.72); }
.legacy__content { padding:clamp(65px,8vw,135px) var(--pad); display:flex; flex-direction:column; }
.legacy__number { font-family:var(--font-serif); font-size:clamp(110px,15vw,240px); letter-spacing:-.08em; line-height:.8; margin-top:auto; color:var(--accent); }
.legacy h2 { font-family:var(--font-serif); font-size:clamp(44px,5vw,79px); line-height:.93; font-weight:400; margin:45px 0 70px; }
.legacy h2 em { font-weight:400; }
.legacy__stats { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid rgba(255,255,255,.25); padding-top:25px; }
.legacy__stats div { display:flex; align-items:flex-start; gap:14px; }
.legacy__stats strong { font-family:var(--font-serif); font-size:30px; font-weight:400; }
.legacy__stats span { font-size:8px; text-transform:uppercase; letter-spacing:.12em; line-height:1.5; opacity:.58; padding-top:5px; }

.studio__grid { display:grid; grid-template-columns:1fr 1fr; gap:8vw; }
.studio__sticky { align-self:start; position:sticky; top:130px; }
.studio__sticky .section-kicker { margin-bottom:75px; }
.studio__story { padding-top:210px; }
.studio__lead { font-family:var(--font-serif); font-size:clamp(35px,4vw,64px); line-height:1.02; margin:0 0 90px; }
.studio__columns { display:grid; grid-template-columns:1fr 1fr; gap:45px; }
.studio__columns p { font-size:14px; line-height:1.72; margin:0; }
.studio .button-line { margin-top:80px; }

.contact { min-height:100svh; position:relative; color:var(--white); overflow:hidden; }
.contact__background, .contact__background img, .contact__overlay { position:absolute; inset:0; width:100%; height:100%; }
.contact__background img { object-fit:cover; transform:scale(1.03); }
.contact__overlay { background:linear-gradient(90deg,rgba(0,0,0,.62),rgba(0,0,0,.18)),linear-gradient(0deg,rgba(0,0,0,.48),transparent); }
.contact__content { min-height:100svh; position:relative; z-index:2; padding-top:110px; padding-bottom:70px; display:flex; flex-direction:column; }
.contact__title { font-family:var(--font-serif); font-weight:400; font-size:clamp(90px,14vw,230px); line-height:.72; letter-spacing:-.055em; margin:auto 0 0; }
.contact__title em { font-weight:400; margin-left:13vw; white-space:nowrap; }
.contact__bottom { display:flex; justify-content:space-between; align-items:flex-end; margin-top:auto; padding-top:85px; }
.contact__email { font-family:var(--font-serif); font-size:clamp(28px,3vw,48px); border-bottom:1px solid rgba(255,255,255,.55); padding-bottom:8px; }
.contact__email span { display:inline-block; font-family:var(--font-sans); font-size:15px; margin-left:25px; transition:transform .3s; }
.contact__email:hover span { transform:translate(5px,-5px); }
.contact__offices { display:flex; gap:50px; }
.contact__offices div { display:flex; flex-direction:column; gap:5px; }
.contact__offices span { font-size:10px; text-transform:uppercase; letter-spacing:.13em; }
.contact__offices small { font-size:8px; opacity:.55; }

.site-footer { background:var(--ink); color:var(--paper); overflow:hidden; padding-top:80px; }
.footer__top { display:grid; grid-template-columns:1.5fr 1fr 1fr; padding-bottom:80px; }
.brand--footer .brand__mark { font-size:46px; }
.footer__links, .footer__social { display:flex; flex-direction:column; gap:13px; font-size:11px; text-transform:uppercase; letter-spacing:.1em; }
.footer__links a, .footer__social a { width:max-content; opacity:.7; transition:opacity .25s; }
.footer__links a:hover, .footer__social a:hover { opacity:1; }
.footer__legal { display:flex; justify-content:space-between; align-items:center; border-top:1px solid rgba(255,255,255,.15); padding-top:18px; padding-bottom:18px; font-size:8px; text-transform:uppercase; letter-spacing:.11em; opacity:.6; }
.footer__wordmark { font-family:var(--font-serif); font-size:46vw; letter-spacing:-.09em; line-height:.54; transform:translateX(-1.5vw); color:#1d1e1a; user-select:none; }

.reveal-up { opacity:0; transform:translateY(42px); }
body.is-ready .hero .reveal-up { animation:revealUp 1s var(--ease) forwards; }
body.is-ready .hero .reveal-up:nth-child(2) { animation-delay:.12s; }
body.is-ready .hero .reveal-up:nth-child(3) { animation-delay:.22s; }
@keyframes revealUp { to{opacity:1;transform:translateY(0)} }
.fade-in { opacity:0; transform:translateY(35px); transition:opacity .85s var(--ease), transform .85s var(--ease); }
.fade-in.in-view { opacity:1; transform:translateY(0); }
.split-text { opacity:0; transform:translateY(35px); transition:opacity 1s var(--ease), transform 1s var(--ease); }
.split-text.in-view { opacity:1; transform:translateY(0); }
.image-reveal { clip-path:inset(0 0 100% 0); transition:clip-path 1.15s var(--ease); }
.image-reveal.in-view { clip-path:inset(0 0 0 0); }

@media (max-width: 980px) {
  .desktop-nav { display:none; }
  .hero__title { font-size:clamp(82px,18vw,165px); }
  .hero__controls { display:none; }
  .manifesto__grid { grid-template-columns:1fr; }
  .manifesto__content { grid-column:1; margin-top:65px; }
  .manifesto__body { margin-left:25%; }
  .project-card--large { grid-column:1/9; }
  .project-card--portrait { grid-column:9/13; }
  .expertise__layout { grid-template-columns:1fr 1fr; }
  .legacy { grid-template-columns:1fr; }
  .legacy__image { height:70vh; }
  .legacy__content { min-height:750px; }
  .studio__grid { gap:50px; }
  .contact__title { font-size:clamp(80px,16vw,150px); }
  .contact__offices { gap:25px; }
}

@media (max-width: 720px) {
  :root { --pad:20px; }
  .cursor { display:none; }
  .site-header { height:74px; }
  .brand__mark { font-size:30px; }
  .brand__descriptor { display:none; }
  .menu-panel__inner { grid-template-columns:1fr; padding-top:100px; }
  .menu-panel__meta { grid-column:1; }
  .menu-panel__nav { grid-column:1; }
  .menu-panel__nav a { font-size:17vw; }
  .hero__topline { top:96px; }
  .hero__topline span:first-child { display:none; }
  .hero__topline { justify-content:flex-end; }
  .hero__content { padding-bottom:85px; }
  .hero__title { font-size:22vw; line-height:.76; }
  .hero__title em { margin-left:10vw; }
  .hero__footer { margin-top:48px; align-items:flex-end; }
  .hero__location { flex-direction:column; gap:7px; }
  .hero__location span:last-child { display:none; }
  .circle-link { width:88px; height:88px; }
  .scroll-cue { display:none; }
  .section-pad { padding-block:105px; }
  .display-title { font-size:16vw; }
  .manifesto__body { margin:50px 0 0; }
  .section-head { align-items:flex-start; flex-direction:column; gap:40px; }
  .project-grid { display:block; }
  .project-card { margin:0 0 65px; }
  .project-card--portrait { width:82%; margin-left:auto; }
  .project-card--wide { width:100%; }
  .project-card__meta { gap:15px; }
  .project-card__meta > div:last-child { display:none; }
  .projects__all { margin-top:0; }
  .quote-band { padding:18px 0; }
  .expertise__layout { grid-template-columns:1fr; }
  .expertise__intro p { margin:40px 0 0; }
  .expertise__visual { margin-top:70px; }
  .expertise__list { margin-top:75px; }
  .expertise-row { grid-template-columns:42px 1fr 24px; padding:21px 0; }
  .expertise-row strong { font-size:10.2vw; }
  .legacy__image { height:58vh; }
  .legacy__content { min-height:690px; }
  .legacy__stats { gap:10px; }
  .legacy__stats div { flex-direction:column; gap:2px; }
  .legacy__stats strong { font-size:26px; }
  .studio__grid { grid-template-columns:1fr; }
  .studio__sticky { position:static; }
  .studio__story { padding-top:80px; }
  .studio__columns { grid-template-columns:1fr; }
  .contact__content { padding-top:95px; }
  .contact__title { font-size:19vw; line-height:.8; }
  .contact__title em { margin-left:6vw; }
  .contact__bottom { flex-direction:column; align-items:flex-start; gap:70px; }
  .contact__email { font-size:7vw; }
  .contact__offices { width:100%; justify-content:space-between; gap:10px; }
  .footer__top { grid-template-columns:1fr 1fr; gap:60px 20px; }
  .brand--footer { grid-column:1/-1; }
  .footer__legal { align-items:flex-start; gap:10px; flex-direction:column; }
  .footer__wordmark { font-size:48vw; }
}

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