

@font-face{font-family:FigtreeYY;src:url('/assets/fonts/figtree-light.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
:root{--paper:#f6f3ec;--ink:#010103;--line:rgba(1,1,3,.35);--pad:20px;--display:clamp(42px,4.78vw,72px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--paper)}body{margin:0;background:var(--paper);color:var(--ink);font-family:FigtreeYY,Arial,sans-serif;font-size:13px;font-weight:400;-webkit-font-smoothing:antialiased}body.menu-open{overflow:hidden}body.profile-dark,body.contact-dark{background:#000;color:#fff}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}img,video{display:block;width:100%;object-fit:cover}button{border:0;background:none;padding:0;cursor:pointer}
.topbar{position:absolute;z-index:40;top:0;left:0;width:100%;height:61px;padding:21px var(--pad);display:grid;grid-template-columns:1.2fr 1.55fr 1.6fr auto auto;gap:20px;text-transform:uppercase;line-height:1}.discipline,.location{text-align:left}.locale-switch{margin-right:36px}.roll-link{height:14px;overflow:hidden;display:block}.roll-link>span{display:block;transition:transform .28s cubic-bezier(.76,0,.24,1)}.roll-link:hover>span,.roll-link:focus-visible>span{transform:translateY(-100%)}.menu-button{text-align:right;text-transform:uppercase;height:14px;overflow:hidden}
.menu-panel{position:fixed;z-index:100;inset:0;background:#000;color:#fff;padding:20px;display:flex;flex-direction:column;transform:translateY(-102%);visibility:hidden;pointer-events:none;transition:transform .65s cubic-bezier(.76,0,.24,1),visibility 0s .65s;overflow:hidden}.menu-panel.is-open{transform:none;visibility:visible;pointer-events:auto;transition:transform .65s cubic-bezier(.76,0,.24,1),visibility 0s}.menu-top{position:relative;z-index:3;display:flex;justify-content:space-between;text-transform:uppercase}.menu-top button{text-transform:uppercase}.menu-logo{display:block}.menu-links{position:relative;z-index:2;margin:auto 0;display:flex;flex-direction:column;align-items:flex-start;width:48%}.menu-links a{position:relative;font-size:clamp(54px,5.7vw,88px);letter-spacing:-.045em;line-height:.98;text-transform:uppercase;transition:opacity .2s,color .2s}.menu-links:hover a:not(:hover){opacity:.25}.menu-links a:hover{font-style:italic}.menu-preview{position:absolute;z-index:1;right:20px;top:66px;bottom:66px;width:min(49vw,700px);height:auto;transform:none;overflow:hidden;opacity:0;transition:opacity .25s}.menu-preview.is-visible{opacity:1}.menu-preview img,.menu-preview video{height:100%;object-fit:cover}.menu-bottom{position:relative;z-index:2;margin-top:auto;display:grid;grid-template-columns:1.1fr .65fr .65fr .65fr .65fr;gap:18px;text-transform:uppercase;font-size:11px}
.home-hero{position:relative;height:1535px;padding:240px var(--pad) 0;overflow:hidden}.home-hero h1{margin:0;font-size:var(--display);font-weight:400;letter-spacing:-.04em;line-height:1;text-transform:uppercase;display:flex;align-items:center;column-gap:14px;row-gap:1px;flex-wrap:wrap}.home-hero h1 .hero-line{flex-basis:100%}.hero-chip{display:inline-block;width:116px;height:84px;overflow:hidden;margin:-10px 0}.hero-chip img{height:100%;object-position:50% 28%}.hero-meta{position:absolute;left:var(--pad);right:var(--pad);top:570px;display:grid;grid-template-columns:1.1fr 1fr 1fr auto;gap:20px;text-transform:uppercase;font-size:11px}.hero-meta>div:nth-child(3){text-align:center}.hero-meta>div:last-child{text-align:right}.hero-video{position:absolute;left:0;top:600px;width:100%;aspect-ratio:16/9;height:auto}
.projects-section,.about-teaser,.other-projects{padding:84px var(--pad) 120px}.projects-section{border-top:1px solid var(--line)}.projects-section h2,.about-teaser h2,.other-projects h2{margin:0 0 46px;font-size:var(--display);font-weight:400;letter-spacing:-.04em;line-height:.95}.projects-section h2 span+span,.about-teaser h2 span+span,.other-projects h2 span+span{margin-left:16px}.project-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:98px 20px;align-items:start}.project-card{display:block;overflow:hidden}.project-card .card-media{overflow:hidden}.project-card video,.project-card img{height:100%;object-fit:cover;transition:transform .75s cubic-bezier(.2,.7,.2,1)}.project-card:hover video,.project-card:hover img{transform:scale(1.025)}.card-label{height:22px;display:grid;grid-template-columns:18px 14px 1fr;align-items:start;text-transform:uppercase;font-size:11px;overflow:hidden}.card-roll{height:14px;overflow:hidden}.card-roll b{display:block;font-weight:400;white-space:nowrap;transition:transform .3s cubic-bezier(.76,0,.24,1)}.project-card:hover .card-roll b,.project-card:focus-visible .card-roll b{transform:translateY(-100%)}.projects-section .project-card:nth-child(1),.projects-section .project-card:nth-child(5){grid-column:span 2}.projects-section .project-card:nth-child(1) .card-media,.projects-section .project-card:nth-child(5) .card-media{aspect-ratio:634/339}.projects-section .project-card:nth-child(2) .card-media,.projects-section .project-card:nth-child(3) .card-media,.projects-section .project-card:nth-child(4) .card-media,.projects-section .project-card:nth-child(6) .card-media{aspect-ratio:317/220}.view-all{margin-left:auto}.double-link{margin-top:34px;display:block;width:max-content;height:14px;overflow:hidden;text-transform:uppercase}.double-link span{display:block;transition:transform .25s}.double-link:hover span{transform:translateY(-100%)}
.project-browser{position:relative}.project-preview{position:fixed;z-index:3;right:20px;top:72px;width:36vw;max-width:520px;aspect-ratio:16/10;opacity:0;pointer-events:none;overflow:hidden;transition:opacity .25s,top .18s cubic-bezier(.2,.7,.2,1)}.project-browser:hover .project-preview{opacity:1}.project-preview img,.project-preview video{height:100%}.project-rows{border-top:1px solid var(--line)}.project-row,.other-projects>a{min-height:76px;border-bottom:1px solid var(--line);display:grid;grid-template-columns:34px 34px 1fr auto;align-items:center;text-transform:uppercase}.project-row strong,.other-projects strong{font-size:clamp(21px,2.25vw,35px);font-weight:400;letter-spacing:-.025em}.project-row small,.other-projects small{font-size:11px}.project-row:hover strong,.other-projects>a:hover strong{font-style:italic}
.about-teaser{padding-top:95px;border-top:1px solid var(--line)}.about-grid{display:grid;grid-template-columns:250px 1fr 1fr;gap:6.5vw;align-items:start}.about-grid>img{width:250px;aspect-ratio:250/365;object-position:center 25%}.about-grid>div{grid-column:2/-1;display:grid;grid-template-columns:1fr 1fr;gap:4vw}.about-grid p{font-size:clamp(18px,1.65vw,25px);line-height:1.25;letter-spacing:-.02em;margin:0}.about-grid .double-link{grid-column:2;margin-left:auto}.contact-section{background:#000;color:#fff;padding:60px var(--pad) 105px}.contact-section>p{text-transform:uppercase;margin:0 0 44px}.contact-links{border-top:1px solid rgba(255,255,255,.5)}.contact-links a{display:grid;grid-template-columns:1fr auto;align-items:end;border-bottom:1px solid rgba(255,255,255,.5);padding:6px 0 10px}.contact-links a>span{font-size:var(--display);letter-spacing:-.04em;line-height:1;text-transform:uppercase}.contact-links small{font-size:11px}.contact-links a:hover>span{font-style:italic}.footer{min-height:95px;padding:22px var(--pad);display:grid;grid-template-columns:1.25fr 1fr 1fr auto;gap:20px;align-items:end;text-transform:uppercase;background:var(--paper);color:var(--ink)}.footer-legal{display:flex;gap:24px}.profile-dark .footer,.profile-footer{background:#000;color:#fff}
.projects-page{padding-top:0}.page-title{height:790px;padding:165px var(--pad) 0;display:flex;align-items:flex-start;gap:14px;overflow:hidden}.page-title h1,.page-title span{font-size:clamp(110px,15vw,225px);font-weight:400;letter-spacing:-.06em;line-height:.86;margin:0;text-transform:uppercase}.page-title span{font-size:38px;letter-spacing:-.04em;margin-top:6px}.view-switch{display:flex;gap:8px;padding:0 var(--pad) 36px;text-transform:uppercase}.view-switch button{opacity:.45;text-transform:uppercase}.view-switch button.active{opacity:1;text-decoration:underline;text-underline-offset:4px}.projects-grid-view{padding:0 var(--pad) 130px}.projects-grid-view .project-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:84px 20px}.projects-grid-view .card-media{aspect-ratio:16/10}.projects-list-view{display:none;padding:0 var(--pad) 130px}.projects-page.list-mode .projects-grid-view{display:none}.projects-page.list-mode .projects-list-view{display:block}
.project-intro{padding:190px var(--pad) 110px}.project-disciplines{text-transform:uppercase;margin-bottom:56px}.project-title{display:grid;grid-template-columns:1fr auto;align-items:end;border-bottom:1px solid var(--line);padding-bottom:16px}.project-title h1{font-size:var(--display);font-weight:400;letter-spacing:-.035em;line-height:.95;text-transform:uppercase;margin:0;max-width:80%}.project-title>span{font-size:var(--display);letter-spacing:-.03em}.project-copy{display:grid;grid-template-columns:2fr 1fr;gap:10vw;padding-top:60px}.project-copy h2{font-size:13px;font-weight:400;text-transform:uppercase;margin:0 0 22px}.project-copy p{font-size:clamp(18px,1.7vw,25px);line-height:1.32;letter-spacing:-.015em;margin:0;white-space:pre-line}.project-facts p{font-size:16px;margin:0 0 5px}.project-facts h2:not(:first-child){margin-top:48px}.media-mosaic{padding:0 var(--pad) 120px;display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.media-mosaic img,.media-mosaic video{width:100%;height:100%;min-height:400px;aspect-ratio:16/10}.media-mosaic>:nth-child(3n+1){grid-column:1/-1;aspect-ratio:16/9}.other-projects>a{grid-template-columns:34px 34px 1fr auto}.other-projects{padding-top:30px}
.profile-page{background:#000;color:#fff}.profile-hero{height:1026px;padding:275px var(--pad) 90px;position:relative;overflow:hidden}.profile-title{position:relative;z-index:2;width:46vw;max-width:620px}.profile-hero h1{font-size:clamp(46px,4.25vw,65px);font-weight:400;letter-spacing:-.04em;line-height:1;text-transform:uppercase;margin:0}.profile-hero img{position:absolute;z-index:1;top:90px;right:2vw;width:52vw;height:936px;object-fit:contain}.scroll-note{position:absolute;z-index:3;bottom:32px;left:50%;text-transform:uppercase;font-size:11px}.profile-story,.facts-section{padding:95px var(--pad)}.eyebrow{text-transform:uppercase;margin:0}.profile-story{display:grid;grid-template-columns:25% 1fr;gap:5%}.story-copy{max-width:965px}.story-copy p{font-size:clamp(18px,1.62vw,25px);line-height:1.28;letter-spacing:-.015em;margin:0 0 30px}.facts-section{display:grid;grid-template-columns:25% 1fr;gap:0}.facts-grid{border-top:1px solid rgba(255,255,255,.3)}.facts-grid article{min-height:160px;border-bottom:1px solid rgba(255,255,255,.3);display:grid;grid-template-columns:1fr 1.35fr;align-items:center}.facts-grid strong{font-size:clamp(65px,6vw,92px);font-weight:400;letter-spacing:-.05em}.facts-grid p{font-size:18px;line-height:1.35;max-width:560px}.career-section{padding:110px var(--pad) 170px;display:grid;grid-template-columns:1fr 1fr;gap:9vw;min-height:760px}.career-section h2,.highlights-section h2{font-size:clamp(54px,5.2vw,80px);font-weight:400;line-height:.95;letter-spacing:-.04em;margin:0 0 60px}.career-list{border-bottom:1px solid rgba(255,255,255,.3)}.career-row{border-top:1px solid rgba(255,255,255,.3);min-height:58px;display:grid;grid-template-columns:1fr auto;align-items:center}.career-row strong{display:block;font-size:22px;font-weight:400}.career-row small{display:block;text-transform:uppercase}.career-row>span{font-size:11px}.career-images{position:relative;height:450px}.career-images img{position:absolute;width:250px;height:318px}.career-images img:first-child{left:15%;top:0}.career-images img:last-child{right:5%;top:100px}.highlights-section{position:relative;padding:0 var(--pad) 520px;min-height:950px;overflow:hidden}.highlights-section h2{margin-bottom:26px}.highlight-list{position:relative;z-index:2}.highlight-row{display:grid;grid-template-columns:1fr 1.2fr 1fr 30px;gap:18px;min-height:24px;align-items:center;text-transform:uppercase;font-size:11px}.highlight-row strong{font-weight:400}.highlight-row em{font-style:normal;text-align:right}.highlight-row:hover{font-style:italic}.highlight-preview{position:absolute;z-index:1;left:50%;bottom:70px;width:min(510px,45vw);aspect-ratio:2.04/1;transform:translateX(-50%);overflow:hidden;transition:transform .35s cubic-bezier(.2,.7,.2,1)}.highlight-preview video{height:100%}
.contact-page{background:#000;color:#fff}.contact-hero{min-height:936px;padding:560px var(--pad) 115px}.contact-heading,.contact-detail{display:grid;grid-template-columns:58% 1fr;border-bottom:1px solid rgba(255,255,255,.3);align-items:end;padding-bottom:24px}.contact-heading h1{font-size:var(--display);font-weight:400;letter-spacing:-.04em;margin:0}.contact-heading p{font-size:22px;margin:0 0 8px}.contact-detail{padding-top:200px;text-transform:uppercase}.contact-detail>a,.contact-detail>div{font-size:22px;text-transform:none}.social-detail{padding-top:54px}.social-detail>div{display:flex;gap:32px}
.legal-page{padding:190px var(--pad) 140px}.legal-page>h1{font-size:var(--display);font-weight:400;letter-spacing:-.03em;margin:0 0 120px}.legal-copy{max-width:900px;margin-left:32%}.legal-copy h2{font-size:24px;font-weight:400;margin:50px 0 14px}.legal-copy p{font-size:17px;line-height:1.55;margin:0 0 18px;white-space:pre-line}.not-found{min-height:80vh;padding:200px 20px}.not-found h1{font-size:25vw;font-weight:400;line-height:.8;margin:0}
@media(max-width:809px){:root{--pad:12px;--display:39px}.topbar{height:52px;padding:17px var(--pad);grid-template-columns:1fr auto auto}.discipline,.location{display:none}.locale-switch{margin-right:8px;font-size:10px}.menu-links a{font-size:52px}.menu-preview{right:10px;width:45vw;height:36vh;opacity:.55}.menu-bottom{grid-template-columns:1fr 1fr}.menu-bottom span,.menu-bottom a:nth-last-child(-n+2){display:none}.home-hero{height:970px;padding-top:178px}.home-hero h1{gap:6px;line-height:.98}.hero-chip{width:62px;height:46px;margin:-5px 0}.hero-meta{top:416px;grid-template-columns:1fr auto}.hero-meta>div:nth-child(3),.hero-meta>div:last-child{display:none}.hero-video{top:450px;aspect-ratio:9/12;height:520px}.projects-section,.about-teaser,.other-projects{padding:58px var(--pad) 78px}.projects-section h2,.about-teaser h2,.other-projects h2{margin-bottom:28px}.project-grid,.projects-grid-view .project-grid{grid-template-columns:1fr 1fr;gap:50px 10px}.projects-section .project-card:nth-child(n){grid-column:auto}.projects-section .project-card:nth-child(n) .card-media,.projects-grid-view .card-media{aspect-ratio:1/1}.projects-section .project-card:nth-child(1),.projects-section .project-card:nth-child(5){grid-column:1/-1}.projects-section .project-card:nth-child(1) .card-media,.projects-section .project-card:nth-child(5) .card-media{aspect-ratio:16/10}.card-label{grid-template-columns:16px 12px 1fr;font-size:9px}.project-preview{display:none}.project-row,.other-projects>a{grid-template-columns:28px 18px 1fr;min-height:68px}.project-row strong,.other-projects strong{font-size:20px}.project-row small,.other-projects small{display:none}.about-grid{grid-template-columns:1fr;gap:28px}.about-grid>img{width:50%}.about-grid>div{grid-column:auto;display:block}.about-grid p{font-size:18px;margin-bottom:24px}.about-grid .double-link{margin-left:0}.contact-section{padding:45px var(--pad) 75px}.contact-links a>span{font-size:32px}.footer{grid-template-columns:1fr auto;font-size:10px}.footer>div:first-child,.footer-legal{display:none}.page-title{height:620px}.page-title h1{font-size:33vw}.page-title span{font-size:24px}.projects-grid-view,.projects-list-view{padding-bottom:80px}.project-intro{padding:145px var(--pad) 70px}.project-disciplines{margin-bottom:38px}.project-title h1{max-width:78%;font-size:38px}.project-title>span{font-size:34px}.project-copy{grid-template-columns:1fr;gap:55px;padding-top:38px}.project-copy p{font-size:18px}.media-mosaic{grid-template-columns:1fr;padding:0 var(--pad) 70px}.media-mosaic>:nth-child(n){grid-column:auto;min-height:260px;aspect-ratio:1/1}.media-mosaic>:first-child{aspect-ratio:16/10}.profile-hero{height:780px;padding:170px 12px 60px}.profile-hero img{top:60px;width:150%;height:720px}.profile-story,.facts-section{padding:65px var(--pad);grid-template-columns:1fr;gap:35px}.story-copy p{font-size:19px}.facts-grid article{grid-template-columns:1fr;gap:8px;padding:22px 0}.facts-grid strong{font-size:64px}.facts-grid p{font-size:16px}.career-section{grid-template-columns:1fr;padding:70px 12px 100px}.career-images{height:390px}.career-images img{width:45%;height:280px}.career-row strong{font-size:17px}.highlights-section{padding:0 12px 360px}.highlight-row{grid-template-columns:1fr 30px}.highlight-row span:nth-child(2),.highlight-row strong{display:none}.highlight-preview{width:80vw}.contact-hero{min-height:780px;padding:320px 12px 80px}.contact-heading,.contact-detail{grid-template-columns:1fr;gap:16px}.contact-detail{padding-top:100px}.social-detail{padding-top:45px}.legal-page{padding-top:145px}.legal-page>h1{margin-bottom:70px}.legal-copy{margin-left:0}.legal-copy h2{font-size:20px}.legal-copy p{font-size:15px}}
@media(max-width:809px){.menu-links{width:100%}.menu-preview{top:58px;bottom:58px;right:10px;width:46vw;height:auto;transform:none;opacity:0}.menu-preview.is-visible{opacity:1}.page-title{height:560px;padding-top:145px}.page-title h1{font-size:28vw}.profile-hero{padding-top:145px}.profile-title{width:100%;max-width:none}.profile-hero h1{font-size:39px}.profile-hero img{top:210px;right:-18%;width:105%;height:570px;transform:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.menu-panel,.double-link span,.roll-link>span,.card-roll b,.project-card video,.project-card img{transition:none}}

/* Framer-reference refinements */
.menu-panel{padding:20px 0}.menu-bar{position:relative;z-index:4;padding:0 var(--pad);display:grid;grid-template-columns:1.2fr 1.55fr 1.6fr auto auto;gap:20px;text-transform:uppercase;line-height:1}.menu-bar button{text-align:right;text-transform:uppercase}.menu-links{z-index:3;width:50%;padding:0 var(--pad);margin:auto 0}.menu-links a{font-size:clamp(46px,4.2vw,65px);line-height:1.04}.menu-links a:hover{font-style:normal;color:#777}.menu-links:hover a:not(:hover){opacity:1}.menu-preview{z-index:1;right:0;top:0;bottom:0;width:50vw;max-width:none}.menu-preview img,.menu-preview video,.menu-strips{width:100%;height:100%}.menu-strips{display:grid;grid-template-columns:repeat(8,1fr)}.menu-strips img{min-width:0;object-fit:cover}.menu-bottom{z-index:4;padding:0 var(--pad)}
.contact-section{position:relative;height:760px;padding:0;overflow:hidden}.contact-backdrop{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.contact-section:after{content:"";position:absolute;inset:0;background:rgba(0,0,0,.2)}.contact-overlay{position:relative;z-index:2;height:100%;padding:60px var(--pad) 72px;display:flex;flex-direction:column;justify-content:flex-end}.contact-overlay>p{margin:0 0 44px;text-transform:uppercase}.contact-links{width:100%}
.projects-page .page-title{height:440px;padding:285px var(--pad) 0;align-items:flex-start}.projects-page .page-title h1{font-size:42px;letter-spacing:-.04em;line-height:1}.projects-page .page-title span{font-size:18px;line-height:1;margin-top:1px}.projects-page .view-switch{justify-content:flex-end;padding-bottom:18px;font-size:10px}.projects-grid-view{padding-bottom:150px}.projects-grid-view .project-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:88px 20px}.projects-grid-view .card-media{aspect-ratio:1.36/1}.projects-grid-view .project-card:nth-child(9n+1),.projects-grid-view .project-card:nth-child(9n+5),.projects-grid-view .project-card:nth-child(9n+9){grid-column:span 2}.projects-grid-view .project-card:nth-child(9n+1) .card-media,.projects-grid-view .project-card:nth-child(9n+5) .card-media,.projects-grid-view .project-card:nth-child(9n+9) .card-media{aspect-ratio:1.7/1}.projects-list-view .project-preview{width:42vw;max-width:640px;aspect-ratio:16/9}.project-row{min-height:70px}
.project-intro{position:relative;min-height:1040px;padding:292px var(--pad) 65px}.project-disciplines{margin:0 0 7px;font-size:10px}.project-title{display:flex;align-items:baseline;justify-content:flex-start;gap:12px;border:0;padding:0}.project-title h1{font-size:42px;max-width:none}.project-title>span{font-size:17px}.project-focus{position:absolute;top:440px;left:50%;width:236px;transform:translateX(-50%)}.focus-buttons{position:absolute;left:50%;top:-48px;transform:translateX(-50%);display:flex;gap:7px}.focus-buttons button{width:38px;height:38px;border-radius:50%;background:#111;color:#fff;font-size:10px;opacity:.42;transition:opacity .2s,transform .2s}.focus-buttons button:hover,.focus-buttons button.active{opacity:1;transform:scale(1.05)}.focus-frame{height:420px;overflow:hidden}.focus-frame img{height:100%;object-fit:cover}.project-copy{grid-template-columns:minmax(0,470px) minmax(220px,1fr);gap:10vw;margin-top:500px;padding-top:0}.project-copy h2{font-size:10px;margin-bottom:10px}.project-copy p{font-size:12px;line-height:1.32}.project-facts{max-width:320px}.project-facts p{font-size:12px}.project-facts h2:not(:first-child){margin-top:28px}.media-mosaic{gap:10px;padding:0 0 130px}.media-mosaic img,.media-mosaic video{min-height:0;aspect-ratio:4/3}.media-mosaic>:nth-child(1),.media-mosaic>:nth-child(4),.media-mosaic>:nth-child(7){grid-column:1/-1;aspect-ratio:16/9}.other-projects{padding-top:70px}.other-projects .project-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.other-projects .card-media{aspect-ratio:16/10}.other-projects .project-card{grid-column:auto}.other-projects h2{margin-bottom:52px}
.contact-visual{height:56vw;max-height:720px;min-height:510px}.contact-visual img{height:100%;object-fit:cover}.contact-page .contact-hero{min-height:900px;padding:95px var(--pad) 110px}.contact-heading{grid-template-columns:55% 1fr}.contact-detail{grid-template-columns:55% 1fr;padding-top:205px}.contact-heading h1{font-size:42px}.contact-heading p,.contact-detail>a,.contact-detail>div{font-size:20px}.contact-dark .footer{background:#000;color:#fff}

@media(min-width:810px) and (max-width:1199px){:root{--pad:16px}.topbar,.menu-bar{grid-template-columns:1.15fr 1.35fr 1.4fr auto auto;gap:12px;font-size:11px}.menu-links a{font-size:5.2vw}.menu-bottom{font-size:9px}.home-hero{height:1230px;padding-top:215px}.hero-meta{top:500px}.hero-video{top:530px}.projects-grid-view .project-grid{gap:64px 14px}.projects-page .page-title{height:400px;padding-top:255px}.project-intro{padding-top:250px;min-height:1010px}.project-title h1{font-size:37px}.project-focus{top:405px}.project-copy{margin-top:490px;grid-template-columns:1.2fr .8fr;gap:7vw}.contact-section{height:620px}.contact-visual{min-height:455px}.contact-page .contact-hero{min-height:820px}.profile-title{width:43vw}.profile-hero img{width:57vw}}

@media(max-width:809px){.menu-panel{padding:16px 0}.menu-bar{padding:0 var(--pad);grid-template-columns:1fr auto}.menu-bar>span{display:none}.menu-links{width:100%;padding:0 var(--pad)}.menu-links a{font-size:45px;line-height:1.08}.menu-preview{display:none}.menu-bottom{padding:0 var(--pad)}.contact-section{height:520px}.contact-overlay{padding:42px var(--pad) 55px}.contact-links a>span{font-size:28px}.projects-page .page-title{height:330px;padding:190px var(--pad) 0}.projects-page .page-title h1{font-size:36px}.projects-page .page-title span{font-size:16px}.projects-grid-view .project-grid{grid-template-columns:1fr 1fr;gap:48px 10px}.projects-grid-view .project-card:nth-child(n){grid-column:auto}.projects-grid-view .project-card:nth-child(5n+1){grid-column:1/-1}.projects-grid-view .project-card:nth-child(n) .card-media{aspect-ratio:1/1}.projects-grid-view .project-card:nth-child(5n+1) .card-media{aspect-ratio:16/10}.project-intro{min-height:0;padding:150px var(--pad) 70px}.project-title{gap:7px}.project-title h1{font-size:34px}.project-title>span{font-size:14px;white-space:nowrap}.project-focus{position:relative;top:auto;left:auto;width:min(56vw,236px);margin:105px auto 0;transform:none}.focus-frame{height:auto;aspect-ratio:236/420}.project-copy{grid-template-columns:1fr;gap:50px;margin-top:70px}.project-copy p{font-size:15px}.project-facts p{font-size:14px}.media-mosaic{gap:6px;padding-bottom:80px}.media-mosaic>:nth-child(n){grid-column:auto;aspect-ratio:1/1}.media-mosaic>:nth-child(1),.media-mosaic>:nth-child(4),.media-mosaic>:nth-child(7){grid-column:1/-1;aspect-ratio:16/10}.other-projects .project-grid{grid-template-columns:1fr;gap:50px}.other-projects .card-media{aspect-ratio:16/10}.contact-visual{height:205px;min-height:0}.contact-page .contact-hero{min-height:720px;padding:62px var(--pad) 75px}.contact-heading,.contact-detail{grid-template-columns:1fr}.contact-heading h1{font-size:37px}.contact-heading p{font-size:18px}.contact-detail{padding-top:135px}.social-detail{padding-top:52px}}
.not-found{min-height:100vh;padding:170px var(--pad) 70px;display:flex;flex-direction:column;justify-content:space-between}.not-found>div{display:flex;justify-content:space-between;text-transform:uppercase}.not-found h1{font-size:42vw;line-height:.7;letter-spacing:-.08em;text-align:center}.not-found .double-link{margin:0}@media(max-width:809px){.not-found{padding-top:130px}.not-found h1{font-size:44vw}}

/* Interaction and scroll corrections */
.brand,.locale-switch,.menu-button{position:relative;z-index:2;pointer-events:auto}.menu-button{justify-self:end;width:max-content}.home-hero{height:600px;overflow:visible}.hero-chip{width:116px;height:52px;margin:-4px 0}.hero-chip img{object-position:50% 47%}.hero-video-stage{position:relative;height:145vh;background:#000}.hero-video-stage .hero-video{position:sticky;top:0;left:auto;width:100%;height:100vh;aspect-ratio:auto;object-fit:cover}.focus-buttons button{display:grid;place-items:center}.focus-buttons svg{width:16px;height:16px;fill:currentColor}.focus-frame video,.focus-frame img{width:100%;height:100%;object-fit:cover}.index-dark{background:#000;color:#fff}.index-page{position:relative;min-height:100vh;background:#000;color:#fff;overflow:hidden}.index-list{position:relative;z-index:2;padding:104px var(--pad) 95px;width:min(560px,48vw);display:flex;flex-direction:column;align-items:flex-start}.index-list a{display:flex;align-items:flex-start;gap:4px;font-size:17px;line-height:1.06;text-transform:uppercase;transition:opacity .2s}.index-list sup{font-size:7px;line-height:1;margin-top:1px}.index-list:hover a:not(:hover){opacity:.38}.index-preview{position:fixed;z-index:1;inset:0;opacity:0;pointer-events:none;transition:opacity .25s}.index-preview:after{content:"";position:absolute;inset:0;background:rgba(0,0,0,.36)}.index-preview.is-visible{opacity:1}.index-preview img,.index-preview video{width:100%;height:100%;object-fit:cover}.index-dark .footer{position:relative;z-index:2;background:#000;color:#fff}
@media(min-width:810px) and (max-width:1199px){.home-hero{height:530px}.hero-video-stage{height:135vh}.hero-chip{width:96px;height:43px}.index-list{padding-top:90px}}
@media(max-width:809px){.home-hero{height:450px}.hero-chip{width:62px;height:28px;margin:-2px 0}.hero-chip img{object-position:50% 47%}.hero-video-stage{height:115vh}.hero-video-stage .hero-video{height:100vh;object-position:center}.index-list{width:100%;padding:82px var(--pad) 70px}.index-list a{font-size:14px;line-height:1.12}.index-preview{opacity:.22}.index-preview.is-visible{opacity:.45}}

/* Final interaction, parallax and layout pass */
.menu-panel[hidden]{display:none!important}.menu-preview{background:#000;transition:opacity .38s cubic-bezier(.65,0,.35,1)}.menu-preview.is-switching{opacity:0}.menu-preview.is-visible:not(.is-switching)>img,.menu-preview.is-visible:not(.is-switching)>video,.menu-preview.is-visible:not(.is-switching)>.menu-strips{animation:menu-media-fade .46s ease both}@keyframes menu-media-fade{from{opacity:0}to{opacity:1}}
.hero-video-stage{height:175vh;overflow:clip}.hero-video-stage .hero-video{transform:translate3d(0,var(--parallax-y,9vh),0) scale(1.2);transform-origin:center;will-change:transform}
.contact-links a>span.contact-roll{height:.94em;overflow:hidden;display:block;font-style:normal}.contact-roll b{display:block;font-weight:400;white-space:nowrap;transition:transform .38s cubic-bezier(.76,0,.24,1)}.contact-links a:hover .contact-roll b,.contact-links a:focus-visible .contact-roll b{transform:translateY(-100%)}.contact-links a:hover>span{font-style:normal}
.project-intro{min-height:1220px;padding-top:292px}.project-disciplines{font-size:12px}.project-title h1{font-size:clamp(48px,3.15vw,64px)}.project-title>span{font-size:21px}.project-focus{top:450px;width:clamp(300px,18vw,360px)}.focus-frame{height:auto;aspect-ratio:9/16}.project-copy{grid-template-columns:minmax(0,590px) minmax(230px,1fr);gap:9vw;margin-top:670px}.project-copy h2{font-size:12px;margin-bottom:14px}.project-copy p{font-size:clamp(15px,1.05vw,18px);line-height:1.38}.project-facts{max-width:360px}.project-facts p{font-size:15px}.profile-hero img{left:50%;right:auto;width:min(58vw,760px);height:900px;transform:translateX(-50%);object-position:center top}.scroll-note{left:50%;bottom:28px;transform:translateX(-50%);padding:10px 15px;border:1px solid rgba(255,255,255,.35);border-radius:999px;background:rgba(0,0,0,.42);backdrop-filter:blur(8px);white-space:nowrap;letter-spacing:.04em}
@media(min-width:810px) and (max-width:1199px){.hero-video-stage{height:155vh}.hero-video-stage .hero-video{transform:translate3d(0,var(--parallax-y,9vh),0) scale(1.17)}.project-intro{min-height:1120px}.project-focus{top:415px;width:clamp(280px,23vw,330px)}.project-copy{margin-top:620px}.profile-hero img{width:min(64vw,700px)}}
@media(max-width:809px){.hero-video-stage{height:130vh}.hero-video-stage .hero-video{transform:translate3d(0,var(--parallax-y,9vh),0) scale(1.16)}.contact-links a>span.contact-roll{height:.98em}.project-intro{min-height:0;padding-top:150px}.project-disciplines{font-size:10px}.project-title h1{font-size:38px}.project-title>span{font-size:16px}.project-focus{top:auto;width:min(72vw,320px);margin-top:105px}.project-copy{grid-template-columns:1fr;gap:50px;margin-top:78px}.project-copy h2{font-size:11px}.project-copy p{font-size:17px}.project-facts p{font-size:15px}.profile-hero img{left:50%;right:auto;top:190px;width:110%;height:590px;transform:translateX(-50%);object-position:center top}.scroll-note{bottom:18px;padding:8px 12px;font-size:9px}}
@media(prefers-reduced-motion:reduce){.menu-preview,.menu-preview>*{animation:none!important;transition:none!important}.hero-video-stage .hero-video{transform:none}.contact-roll b{transition:none}}

/* Framer-matched home scroll and final spacing */
.brand{justify-self:start;width:max-content;max-width:max-content}.hero-video-stage{height:100vh;min-height:620px;overflow:hidden}.hero-video-stage .hero-video{position:absolute;top:-11vh;left:0;width:100%;height:122vh;transform:translate3d(0,var(--parallax-y,-11vh),0) scale(1.025);transform-origin:center;object-fit:cover;will-change:transform}.no-footer-video .contact-section{background:#000}.no-footer-video .contact-backdrop{display:none}.no-footer-video .contact-section:after{background:#000}.highlights-section{min-height:1150px;padding-bottom:720px}.highlight-preview{bottom:90px;width:min(980px,72vw);aspect-ratio:16/9}
@media(min-width:810px){.project-intro{min-height:0;padding-bottom:110px}.project-focus{position:relative;top:auto;left:auto;width:clamp(360px,25vw,500px);margin:105px auto 0;transform:none}.project-copy{margin-top:70px}}
@media(min-width:810px) and (max-width:1199px){.hero-video-stage{height:100vh;min-height:560px}.hero-video-stage .hero-video{height:122vh;top:-11vh;transform:translate3d(0,var(--parallax-y,-11vh),0) scale(1.025)}.project-focus{width:clamp(340px,38vw,430px)}.highlight-preview{width:min(860px,78vw)}}
@media(max-width:809px){.hero-video-stage{height:100svh;min-height:520px}.hero-video-stage .hero-video{position:absolute;top:-12svh;height:124svh;transform:translate3d(0,var(--parallax-y,-11vh),0) scale(1.03)}.highlights-section{min-height:980px;padding-bottom:460px}.highlight-preview{bottom:55px;width:calc(100vw - 24px);aspect-ratio:16/9}}
@media(prefers-reduced-motion:reduce){.hero-video-stage .hero-video{top:0;height:100%;transform:none}}
.menu-locale{color:inherit;text-decoration:none}
@media(max-width:809px){.menu-bar{grid-template-columns:1fr auto auto}}

/* Unified typography and footer color system */
:root{--type-headline:64px;--type-subline:20px;--type-body:18px;--type-meta:12px;--display:var(--type-headline)}
.home-hero h1,
.projects-section h2,
.about-teaser h2,
.other-projects h2,
.projects-page .page-title h1,
.project-title h1,
.profile-hero h1,
.career-section h2,
.highlights-section h2,
.contact-heading h1,
.legal-page>h1,
.contact-links a>span{font-size:var(--type-headline)}
.projects-page .page-title span,
.project-title>span,
.project-row strong,
.other-projects strong,
.contact-heading p,
.contact-detail>a,
.contact-detail>div{font-size:var(--type-subline)}
.about-grid p,
.project-copy p,
.project-facts p,
.story-copy p,
.facts-grid p,
.career-row strong,
.highlight-row,
.legal-copy p{font-size:var(--type-body)}
.project-disciplines,
.project-copy h2,
.eyebrow,
.career-row small,
.career-row>span,
.card-label,
.project-row small,
.other-projects small,
.contact-overlay>p,
.contact-links small{font-size:var(--type-meta)}
.highlight-row{min-height:42px;line-height:1.15}
.contact-backdrop{display:none}
.no-footer-video .contact-section,
body:not(.profile-dark):not(.contact-dark):not(.index-dark) .contact-section{background:var(--paper);color:var(--ink)}
.no-footer-video .contact-section:after,
body:not(.profile-dark):not(.contact-dark):not(.index-dark) .contact-section:after{background:transparent}
body:not(.profile-dark):not(.contact-dark):not(.index-dark) .contact-links,
body:not(.profile-dark):not(.contact-dark):not(.index-dark) .contact-links a{border-color:var(--line)}
.profile-dark .contact-section,
.contact-dark .contact-section,
.index-dark .contact-section{background:#000;color:#fff}
.profile-dark .contact-section:after,
.contact-dark .contact-section:after,
.index-dark .contact-section:after{background:#000}
@media(min-width:810px) and (max-width:1199px){:root{--type-headline:52px;--type-subline:18px;--type-body:17px;--type-meta:12px}.highlight-row{min-height:40px}}
@media(max-width:809px){:root{--type-headline:38px;--type-subline:18px;--type-body:17px;--type-meta:11px}.projects-page .page-title h1,.project-title h1,.profile-hero h1,.contact-heading h1{font-size:var(--type-headline)}.projects-page .page-title span,.project-title>span{font-size:var(--type-subline)}.highlight-row{min-height:38px}}

/* Shared vertical link roll */
.text-roll{height:1.12em;overflow:hidden;display:block;font-style:normal}
.text-roll>b{display:block;font:inherit;font-weight:inherit;font-style:normal;line-height:1.12;white-space:nowrap;transition:transform .38s cubic-bezier(.76,0,.24,1)}
.highlight-row:hover{font-style:normal}
.highlight-row:hover .text-roll>b,
.highlight-row:focus-visible .text-roll>b,
.footer a.text-roll:hover>b,
.footer a.text-roll:focus-visible>b,
.contact-detail a:hover.text-roll>b,
.contact-detail a:focus-visible.text-roll>b,
.social-detail a:hover.text-roll>b,
.social-detail a:focus-visible.text-roll>b{transform:translateY(-100%)}
.index-list{width:min(760px,55vw)}
.index-list a{font-size:28px;line-height:1.06}
.index-list sup{font-size:9px;margin-top:2px}
html[lang="de"] .menu-button>span+span{padding-top:5px}
@media(min-width:810px) and (max-width:1199px){.index-list{width:min(680px,60vw)}.index-list a{font-size:23px}}
@media(max-width:809px){.index-list{width:100%}.index-list a{font-size:18px;line-height:1.1}.index-list sup{font-size:8px}}
@media(prefers-reduced-motion:reduce){.text-roll>b{transition:none}}

/* Readability, UI sizing, project-list interaction and media deterrence */
:root{--type-ui:12px}
.topbar,
.menu-bar,
.menu-bottom,
.hero-meta,
.view-switch,
.footer,
.scroll-note,
.eyebrow,
.project-disciplines,
.project-copy h2,
.card-label,
.project-row small,
.other-projects small,
.contact-overlay>p,
.contact-links small{font-size:var(--type-ui)}
@media(min-width:810px){
  .about-grid{grid-template-columns:250px minmax(0,1080px);gap:5vw;justify-content:start}
  .about-grid>div{grid-column:2;grid-template-columns:repeat(2,minmax(0,510px));gap:60px;max-width:1080px}
  .about-grid p{max-width:510px;text-align:justify;text-align-last:left;hyphens:auto}
  .projects-list-view .project-preview{left:48%;right:auto;width:min(38vw,640px)}
}
.project-row:hover strong{font-style:normal}
.project-row:hover .text-roll>b,
.project-row:focus-visible .text-roll>b{transform:translateY(-100%)}
img,video{-webkit-user-drag:none;-webkit-touch-callout:none;user-select:none}
@media(max-width:809px){:root{--type-ui:10px}.about-grid p{text-align:left}.projects-page .view-switch{font-size:var(--type-ui)}}

/* Exact UI type matching, clean roll clipping and native project ratios */
.double-link{font-size:var(--type-ui);line-height:14px;height:14px;overflow:clip;clip-path:inset(0)}
.double-link>span{line-height:14px}
.double-link>span+span{padding-top:5px}
.roll-link,
.menu-button{height:14px;line-height:14px;overflow:clip;clip-path:inset(0)}
.roll-link>span{line-height:14px}
.roll-link>span+span{padding-top:5px}
.focus-frame{height:auto;aspect-ratio:9/16;background:#000}
.focus-frame video,
.focus-frame img{width:100%;height:100%;object-fit:contain}

/* One consistent, compact text size below display headlines */
:root{--type-body:16px;--type-meta:16px;--type-ui:16px;--type-secondary:12px;--roll-gap:5px}
.eyebrow,
.facts-grid p,
.career-row strong,
.career-row>span,
.highlight-row,
.topbar,
.menu-bar,
.menu-bottom,
.footer{font-size:var(--type-body)}
.career-row>span,
.highlight-row{line-height:1.15}
.career-row small{font-size:var(--type-secondary);line-height:1.2}
.projects-page .view-switch{font-size:var(--type-body);line-height:1.15}
.card-label{height:calc(var(--type-body) * 1.35);grid-template-columns:22px 18px 1fr;font-size:var(--type-body);line-height:1.15;overflow:visible}
.card-roll{height:1.15em;overflow:clip;clip-path:inset(0)}
.card-roll b{line-height:1.15}
.footer-social{white-space:nowrap}
.footer-social .text-roll{display:inline-block;vertical-align:bottom}
.double-link,
.roll-link,
.menu-button{height:calc(var(--type-ui) * 1.15);line-height:1.15}
.double-link>span,
.roll-link>span{line-height:1.15}
.double-link:hover>span,
.double-link:focus-visible>span,
.roll-link:hover>span,
.roll-link:focus-visible>span{transform:translateY(calc(-100% - var(--roll-gap)))}
.legal-address{font-style:normal}
.legal-copy ul{margin:0 0 24px;padding-left:1.25em;font-size:var(--type-body);line-height:1.55}
.legal-copy li+li{margin-top:4px}

/* Optical type matching and clean umlaut-safe roll animation */
.profile-story .eyebrow,
.profile-story .story-copy p,
.facts-section .eyebrow,
.facts-grid p{font-size:var(--type-body);font-weight:400;line-height:1.35;letter-spacing:0}
.career-row strong,
.career-row>span{font-size:var(--type-body);font-weight:400;line-height:1.2;letter-spacing:0}
.career-row small{font-size:var(--type-secondary);font-weight:400;line-height:1.2;letter-spacing:0}
.text-roll{--text-roll-gap:8px;height:1.2em;overflow:clip;clip-path:inset(0)}
.text-roll>b{line-height:1.2}
.text-roll>b+b{margin-top:var(--text-roll-gap)}
.highlight-row:hover .text-roll>b,
.highlight-row:focus-visible .text-roll>b,
.footer a.text-roll:hover>b,
.footer a.text-roll:focus-visible>b,
.contact-detail a:hover.text-roll>b,
.contact-detail a:focus-visible.text-roll>b,
.social-detail a:hover.text-roll>b,
.social-detail a:focus-visible.text-roll>b,
.project-row:hover .text-roll>b,
.project-row:focus-visible .text-roll>b{transform:translateY(calc(-100% - var(--text-roll-gap)))}
.menu-bottom{grid-template-columns:minmax(0,1.1fr) auto auto minmax(20px,1fr) auto auto;column-gap:0}
.menu-bottom>a:nth-child(2)::after{content:",\00a0"}
.menu-bottom>a:nth-child(4){grid-column:5}
.menu-bottom>a:nth-child(5){grid-column:6;margin-left:24px}
@media(max-width:809px){.menu-bottom{grid-template-columns:auto auto;justify-content:start}.menu-bottom>a:nth-child(4),.menu-bottom>a:nth-child(5){grid-column:auto;margin-left:0}}

/* Final shared size for body copy, information and small labels */
body,
.about-grid p,
.profile-story .eyebrow,
.profile-story .story-copy p,
.facts-section .eyebrow,
.facts-grid p,
.career-row strong,
.career-row>span,
.highlight-row,
.hero-meta,
.project-disciplines,
.project-copy h2,
.project-copy p,
.project-facts p,
.projects-page .view-switch,
.card-label,
.project-row small,
.other-projects small,
.contact-overlay>p,
.contact-links small,
.legal-copy h2,
.legal-copy p,
.legal-copy ul,
.topbar,
.menu-bar,
.menu-bottom,
.footer,
.double-link{font-size:var(--type-body)}
.career-row small{font-size:var(--type-secondary)}
.card-label,.card-roll,.card-roll b{line-height:1.2}
.card-label{height:calc(var(--type-body) * 1.4)}
.card-roll{height:1.2em}
.double-link>span+span,
.roll-link>span+span{padding-top:0;margin-top:var(--roll-gap)}

/* Reading copy matches buttons, header and footer exactly */
:root{--type-compact-copy:var(--type-body)}
.about-grid p,
.profile-story .eyebrow,
.profile-story .story-copy p,
.facts-section .eyebrow,
.facts-grid p,
.project-copy p,
.project-facts p,
.career-row strong,
.career-row>span,
.highlight-row{font-size:var(--type-compact-copy)!important;font-weight:400;letter-spacing:0}
.about-grid p,
.profile-story .story-copy p,
.facts-grid p,
.project-copy p,
.project-facts p{line-height:1.4}
.career-row strong,
.career-row>span,
.highlight-row{line-height:1.2}
.career-row small{font-size:12px!important;line-height:1.2}

/* Final spacing, concise hero information and equal-height project media */
.hero-meta{display:flex;justify-content:center}
.hero-meta>div{display:none!important}
.hero-meta>div:nth-child(3){display:block!important;text-align:center}
.project-copy h2,
.project-copy p,
.project-facts p{font-size:var(--type-body)!important;font-weight:400;letter-spacing:0}
.project-copy p,
.project-facts p{line-height:1.4}
.highlights-section{min-height:1350px;padding-bottom:800px}
.highlight-preview{bottom:90px}
@media(min-width:1200px){
  .project-focus{width:max-content;max-width:none}
  .focus-frame{width:auto;height:clamp(640px,44vw,900px);max-width:none}
}
@media(max-width:809px){.highlights-section{min-height:1120px;padding-bottom:560px}.highlight-preview{bottom:55px}}

/* Reliable menu footer, contact contrast and honest empty project-media slots */
.menu-bottom{
  display:flex;
  align-items:flex-end;
  width:100%;
  gap:0;
  white-space:nowrap;
}
.menu-bottom>span:first-child{margin-right:clamp(40px,10vw,200px)}
.menu-bottom>a:nth-child(2)::after{content:",\00a0"}
.menu-bottom>a:nth-child(4){margin-left:auto}
.menu-bottom>a:nth-child(5){margin-left:24px}
.menu-bottom::after{content:"©2026";margin-left:24px}
.contact-visual{position:relative;isolation:isolate}
.contact-visual::after{
  content:"";
  position:absolute;
  z-index:1;
  inset:0;
  pointer-events:none;
  background:linear-gradient(180deg,rgba(0,0,0,.30) 0%,rgba(0,0,0,.22) 55%,rgba(0,0,0,.16) 100%);
}
.media-mosaic .media-placeholder{
  width:100%;
  min-height:400px;
  aspect-ratio:4/3;
  background:#fff;
}
@media(max-width:809px){
  .menu-bottom>span,
  .menu-bottom>a:nth-child(4),
  .menu-bottom>a:nth-child(5),
  .menu-bottom::after{display:none}
  .menu-bottom>span:first-child{margin-right:0}
  .media-mosaic .media-placeholder{min-height:260px}
}

/* Match the open-menu footer to the regular site footer exactly. */
.menu-bottom{
  display:grid;
  grid-template-columns:1.25fr 1fr 1fr auto;
  gap:20px;
  align-items:end;
  white-space:normal;
}
.menu-bottom::after{content:none}
.menu-bottom-social{white-space:nowrap}
.menu-bottom-social .text-roll{display:inline-block;vertical-align:bottom}
.menu-bottom-legal{display:flex;gap:24px;white-space:nowrap}
.menu-bottom-copy{white-space:nowrap}

/* Use the same mobile rhythm as the correct grid on the projects page. */
@media(max-width:809px){
  .projects-section .project-card:nth-child(n){grid-column:auto}
  .projects-section .project-card:nth-child(n) .card-media{aspect-ratio:1/1}
  .projects-section .project-card:nth-child(5n+1){grid-column:1/-1}
  .projects-section .project-card:nth-child(5n+1) .card-media{aspect-ratio:16/10}
  .menu-bottom{grid-template-columns:1fr auto}
  .menu-bottom>span:first-child,
  .menu-bottom-legal{display:none}
}

/* Complete, readable mobile footer on pages and inside the open menu. */
@media(max-width:809px){
  .footer,
  .menu-bottom{
    grid-template-columns:minmax(0,1fr) auto;
    grid-template-rows:repeat(3,auto);
    column-gap:14px;
    row-gap:14px;
    align-items:end;
  }
  .footer{min-height:154px;padding:24px var(--pad)}
  .menu-bottom{min-height:94px}
  .footer>div:first-child,
  .menu-bottom>span:first-child{
    display:block;
    grid-column:1;
    grid-row:1;
    margin:0;
    white-space:normal;
  }
  .footer>div:last-child,
  .menu-bottom-copy{
    display:block;
    grid-column:2;
    grid-row:1;
    justify-self:end;
  }
  .footer-social,
  .menu-bottom-social{
    display:block;
    grid-column:1/-1;
    grid-row:2;
    justify-self:start;
  }
  .footer-legal,
  .menu-bottom-legal{
    display:flex;
    grid-column:1/-1;
    grid-row:3;
    gap:18px;
    justify-self:start;
    white-space:nowrap;
  }
}

/* Only the one currently hovered or focused highlight row may roll. */
.highlight-row:hover .text-roll>b,
.highlight-row:focus-visible .text-roll>b{transform:none}
.highlight-row.is-highlight-active .text-roll>b{
  transform:translateY(calc(-100% - var(--text-roll-gap)))
}

/* Mobile-only readability corrections from the final device review. */
@media(max-width:809px){
  .contact-section{height:420px}
  .contact-overlay{padding:32px var(--pad) 42px}
  .contact-overlay>p{margin-bottom:28px;font-size:13px!important}
  .contact-links a{
    grid-template-columns:minmax(0,1fr) auto;
    gap:8px;
    padding:7px 0 9px;
  }
  .contact-links a>span{
    min-width:0;
    font-size:clamp(22px,6.4vw,26px)!important;
    letter-spacing:-.03em;
  }
  .contact-links small{font-size:11px!important;white-space:nowrap}

  .career-row{
    grid-template-columns:minmax(0,1fr) auto;
    min-height:0;
    padding:14px 0;
    column-gap:12px;
    align-items:center;
  }
  .career-row>div{min-width:0}
  .career-row strong{
    white-space:normal;
    overflow-wrap:break-word;
    line-height:1.15;
  }
  .career-row small{line-height:1.15}
  .career-row>span{white-space:nowrap}

  .highlight-row{
    grid-template-columns:minmax(0,1fr) auto;
    min-height:0;
    gap:12px;
    padding:8px 0;
    align-items:start;
  }
  .highlight-row>.text-roll{
    min-width:0;
    height:auto;
    overflow:visible;
    clip-path:none;
  }
  .highlight-row>.text-roll>b{
    white-space:normal;
    line-height:1.2;
    transform:none!important;
  }
  .highlight-row>.text-roll>b+b{display:none}
  .highlight-row>em{align-self:start;white-space:nowrap}

  .menu-bottom .menu-bottom-social a,
  .menu-bottom .menu-bottom-legal a{display:inline-block}
}
