/* Film Atlas concept: an alternate motion language for Max's own work. */
.atlas{--atlas-paper:#f4f2ed;--atlas-ink:#171714;--atlas-serif:Georgia,'Times New Roman',serif}
.atlas .masthead{position:fixed;top:0;left:0;transform:none;width:100%;padding:25px var(--pad);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:20px;background:transparent;border:0;backdrop-filter:none;z-index:70;color:#fff;text-shadow:0 1px 14px #0009}
.atlas .masthead .menu-toggle{display:flex;justify-self:start;align-items:center;gap:15px;min-height:44px;font:600 .76rem Arial,Helvetica,sans-serif;letter-spacing:.16em}
.atlas .masthead .menu-icon{width:25px;gap:7px}.atlas .masthead .menu-icon i{height:2px;background:currentColor;transition:transform .3s}
.atlas .masthead .menu-toggle:hover .menu-icon i:first-child{transform:translateX(5px)}
.atlas .masthead .menu-toggle:hover .menu-icon i:last-child{transform:translateX(-5px)}
.atlas .masthead .identity{font:600 .8rem Arial,Helvetica,sans-serif;letter-spacing:.3em;white-space:nowrap}
.atlas .masthead .top-nav{display:flex;justify-self:end;gap:25px;font:600 .68rem Arial,Helvetica,sans-serif;letter-spacing:.16em}
.atlas .masthead .top-nav a{color:inherit}.atlas .masthead .top-nav a:hover{opacity:.65}
.atlas.light-page .masthead,.atlas.atlas-index-page .masthead{color:var(--atlas-ink);text-shadow:none}

/* A white film index opens over any route. */
.atlas .atlas-menu{inset:0 auto 0 0;margin:0;width:min(1120px,78vw);max-width:none;height:100svh;max-height:none;padding:28px clamp(20px,4vw,62px) 60px;background:var(--atlas-paper);color:var(--atlas-ink);overflow-y:auto;overscroll-behavior:contain;animation:atlas-menu-in .65s cubic-bezier(.22,1,.36,1) both}
.atlas .atlas-menu::backdrop{background:#000b;backdrop-filter:blur(5px)}
.atlas .atlas-menu.is-closing{animation:atlas-menu-out .32s ease-in both}
.atlas .atlas-menu .menu-head{align-items:center;justify-content:flex-end;position:relative;font:600 .8rem Arial,Helvetica,sans-serif;letter-spacing:.16em}
.atlas .atlas-menu .close-menu{min-height:44px;font:600 .75rem Arial,Helvetica,sans-serif;letter-spacing:.12em}
.atlas .atlas-menu-links{display:flex;flex-direction:row;align-items:center;flex-wrap:wrap;gap:8px 27px;margin:30px 0 40px;border-block:1px solid #0002;padding:14px 0}
.atlas .atlas-menu-links a{display:inline-flex;align-items:center;min-height:44px;min-width:44px;font:600 .76rem Arial,Helvetica,sans-serif;letter-spacing:.08em;line-height:1.2;transform:none;width:auto;white-space:nowrap}
.atlas .atlas-menu-links a:hover{color:#777;transform:none}
.atlas-menu-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:45px 26px}
.atlas-menu-card{display:grid;grid-template-columns:108px 36px minmax(0,1fr);align-items:center;gap:13px;font:600 .83rem Arial,Helvetica,sans-serif;line-height:1.3}
.atlas-menu-card .atlas-menu-image{height:65px;overflow:hidden;background:#ddd}
.atlas-menu-card img{transition:transform .6s var(--ease)}.atlas-menu-card:hover img{transform:scale(1.09)}
.atlas-menu-card .atlas-menu-number{color:#777;font-size:.69rem}.atlas-menu-card strong{font-weight:600}
@keyframes atlas-menu-in{from{transform:translateX(-104%)}to{transform:translateX(0)}}
@keyframes atlas-menu-out{from{transform:translateX(0)}to{transform:translateX(-104%)}}

/* A full-screen showreel cover leads into the existing in-page player. */
.atlas.reel-home .reel-hero{position:relative;padding:0;min-height:0;overflow:visible;background:var(--atlas-paper)}
.atlas.reel-home .reel-frame{position:relative;width:100%;height:100svh;min-height:640px;margin:0;overflow:hidden;animation:none;background:#151819}
.atlas.reel-home .reel-poster,.atlas.reel-home .reel-preview{object-fit:cover;object-position:center 48%;transform:translate(var(--atlas-x,0px),var(--atlas-y,0px)) scale(1.055);transition:transform .55s ease,opacity .6s}
.atlas.reel-home .reel-vignette{background:linear-gradient(180deg,#0009,transparent 26%,#0006 67%,#000b)}
.atlas.reel-home .reel-intro{position:absolute;z-index:5;left:var(--pad);right:var(--pad);top:108px;margin:0;color:#fff;font:600 .68rem Arial,Helvetica,sans-serif;letter-spacing:.2em;pointer-events:none;text-shadow:0 1px 12px #000c}
.atlas.reel-home .reel-wordmark{position:absolute;z-index:5;top:40svh;left:4%;width:92%;transform:translateY(-50%);display:flex;justify-content:space-between;gap:.1em;text-align:center;color:#fff;font:400 clamp(48px,8.1vw,152px)/.92 var(--atlas-serif);letter-spacing:.19em;white-space:nowrap;text-shadow:0 4px 30px #0009;pointer-events:none}
.atlas.reel-home .reel-wordmark span{animation:atlas-title-in 1.2s var(--ease) both}
.atlas.reel-home .reel-wordmark span:last-child{animation-delay:.18s}
.atlas.reel-home .reel-wordmark::before{content:'CINEMATOGRAPHER  /  CREATIVE DIRECTOR';position:absolute;top:-37px;left:0;right:0;font:600 .71rem Arial,Helvetica,sans-serif;letter-spacing:.32em;text-align:center}
@keyframes atlas-title-in{from{opacity:0;filter:blur(12px);transform:translateY(20px)}to{opacity:1;filter:blur(0);transform:translateY(0)}}
.atlas.reel-home .reel-watch{top:64%;gap:11px;padding:10px;z-index:6}
.atlas.reel-home .reel-play-ring{width:108px;height:108px;background:#ffffffcf;color:#111;border:1px solid #fff;backdrop-filter:blur(7px)}
.atlas.reel-home .reel-watch:hover .reel-play-ring{transform:scale(1.12);background:#fff}
.atlas.reel-home .reel-watch-label{font:600 .74rem Arial,Helvetica,sans-serif;letter-spacing:.15em;background:#0007}
.atlas.reel-home .reel-frame-top{display:none}
.atlas.reel-home .reel-frame-bottom{left:var(--pad);right:var(--pad);bottom:114px;z-index:5;font:600 .71rem Arial,Helvetica,sans-serif;letter-spacing:.13em}
.atlas.reel-home .reel-frame-bottom button{font-size:.71rem;letter-spacing:.13em}
.atlas.reel-home .reel-sound-note{display:none}
.atlas-hero-rails,.atlas-film-rails{position:absolute;z-index:6;left:var(--pad);right:var(--pad);bottom:24px;display:grid;grid-template-columns:1fr 1fr;gap:20%;color:#fff}
.atlas-hero-rails a,.atlas-film-rails a{display:flex;flex-direction:column;gap:8px;border-top:1px solid #ffffffa8;padding-top:10px;font:600 .72rem Arial,Helvetica,sans-serif;letter-spacing:.1em;text-shadow:0 1px 12px #000b;transition:padding .3s,border-color .3s}
.atlas-hero-rails a:last-child,.atlas-film-rails a:last-child{text-align:right;align-items:flex-end}
.atlas-hero-rails a:hover,.atlas-film-rails a:hover{padding-top:16px;border-color:#fff}
.atlas-hero-rails strong,.atlas-film-rails strong{font:italic 400 clamp(15px,1.55vw,24px) var(--atlas-serif);letter-spacing:0}
.atlas.reel-home .reel-edit{margin:0;padding:85px var(--pad) 50px;background:var(--atlas-paper);color:var(--atlas-ink)}
.atlas.reel-home .reel-edit-heading{color:#333}
.atlas.reel-home .reel-strip{gap:11px}.atlas.reel-home .reel-strip button{aspect-ratio:1.7}
.atlas.reel-home .reel-strip img{opacity:.75}.atlas.reel-home .reel-strip button:hover img{opacity:1}
.atlas.reel-home .reel-bottom{margin:0;padding:0 var(--pad) 18px;background:var(--atlas-paper);color:#555}
.atlas.reel-home .reel-bottom a{color:var(--atlas-ink)}

/* A spare, staggered film archive. */
.atlas .atlas-works-page{background:var(--atlas-paper);color:var(--atlas-ink);padding-top:145px}
.atlas-index-intro{padding:20px var(--pad) 90px;border-bottom:1px solid #0002}
.atlas-index-intro p,.atlas-index-intro>div{font:600 .72rem Arial,Helvetica,sans-serif;letter-spacing:.17em}
.atlas-index-intro h1{font:400 clamp(60px,9vw,166px)/.95 var(--atlas-serif);letter-spacing:-.055em;margin:40px 0 60px}
.atlas-index-intro>div{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}
.atlas-index-intro a{border-bottom:1px solid currentColor;padding-bottom:7px}
.atlas-project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:clamp(30px,7vw,135px);row-gap:100px;padding:100px clamp(24px,9vw,170px) 150px}
.atlas-project-card:nth-child(even){transform:translateY(135px)}
.atlas-project-image{aspect-ratio:16/10;overflow:hidden;background:#ddd}
.atlas-project-image img{transition:transform 1s var(--ease),filter .7s;filter:saturate(.8)}
.atlas-project-card:hover img,.atlas-project-card:focus-visible img{transform:scale(1.075);filter:saturate(1.1)}
.atlas-project-caption{display:grid;grid-template-columns:1fr auto;gap:12px;margin-top:14px;align-items:baseline}
.atlas-project-caption span{font:600 .68rem Arial,Helvetica,sans-serif;letter-spacing:.11em;color:#666}
.atlas-project-caption span:last-child{grid-column:2;grid-row:1/3;align-self:end}
.atlas-project-caption h2{grid-column:1;font:400 clamp(23px,2.4vw,38px)/1.15 var(--atlas-serif)}
.atlas-project-card.atlas-reveal{opacity:0;translate:0 35px;transition:opacity .8s,translate .8s var(--ease)}
.atlas-project-card.atlas-reveal.is-visible{opacity:1;translate:0 0}
.atlas.atlas-index-page .contact-section{border-color:#ccc}
.atlas.atlas-index-page .footer-links{border-color:#ccc}

/* Project cover, followed by the familiar full-screen player. */
.atlas .film-page:not(.is-open) .film-screen{inset:0}
.atlas .film-page:not(.is-open) .film-toolbar{display:none}
.atlas .film-page:not(.is-open) .atlas-film-close{display:none}
.atlas .film-page.is-open .atlas-film-rails{display:none}
.atlas .film-page.is-open .atlas-film-intro{opacity:0;pointer-events:none;transition:opacity .45s ease}
.atlas .film-page .film-poster{width:100%;height:100%;object-fit:cover;filter:brightness(.7);opacity:1}
.atlas .film-page .film-screen.is-playing .film-poster{opacity:0}
.atlas-film-close{position:absolute;z-index:6;top:92px;right:clamp(18px,3vw,54px);display:flex;align-items:center;gap:12px;min-height:48px;padding:10px 18px;border:1px solid #fff;background:#f4f2ed;color:#111;font:700 .875rem Arial,Helvetica,sans-serif;letter-spacing:.08em;box-shadow:0 8px 32px #0008;transition:background .2s,transform .2s}
.atlas-film-close span:first-child{font-size:1.65rem;font-weight:400;line-height:.7}
.atlas-film-close:hover,.atlas-film-close:focus-visible{background:#fff;transform:translateY(-2px)}
.atlas .film-page:fullscreen .atlas-film-close{top:24px}
.atlas-film-intro{position:absolute;inset:0;z-index:4;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:5vw;padding:100px clamp(30px,8vw,160px) 125px;background:linear-gradient(90deg,#000b 0%,#0004 64%,#0002 100%);color:#fff}
.atlas-film-copy>span{display:block;font:600 .73rem Arial,Helvetica,sans-serif;letter-spacing:.19em;margin-bottom:29px}
.atlas-film-copy h1{max-width:900px;font:400 clamp(47px,6.2vw,108px)/.95 var(--atlas-serif);letter-spacing:-.04em;text-wrap:balance;text-shadow:0 2px 25px #0008}
.atlas-film-copy button{margin-top:35px;border-bottom:1px solid #fff;padding:8px 0;font:600 .73rem Arial,Helvetica,sans-serif;letter-spacing:.13em}
.atlas-film-enter{width:clamp(118px,12vw,178px);height:clamp(118px,12vw,178px);border-radius:50%;background:#ffffffe2;color:#151515;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;font:600 .76rem Arial,Helvetica,sans-serif;letter-spacing:.12em;transition:transform .45s var(--ease),background .3s}
.atlas-film-enter b{font-size:1.35rem;font-weight:400}
.atlas-film-enter:hover,.atlas-film-enter:focus-visible{transform:scale(1.1);background:#fff}
.atlas .film-page.is-open .film-feedback{z-index:4}
.atlas .contact-section .section-heading{margin-bottom:26px}
.atlas .contact-section .footer-links{margin-top:0}
.atlas .resume-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.8fr);align-items:center;gap:clamp(30px,7vw,110px);padding-bottom:90px}
.atlas .resume-intro h1{font:400 clamp(80px,11vw,190px)/.92 var(--atlas-serif);letter-spacing:-.055em;margin:30px 0}
.atlas .resume-intro p{font-size:clamp(1rem,1.6vw,1.35rem);line-height:1.6;color:#aaa}
.atlas .resume-portrait{margin:0;max-width:620px}
.atlas .resume-portrait img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:center top}
@media(max-width:850px){
 .atlas .resume-intro{grid-template-columns:1fr minmax(220px,.8fr);gap:28px}
 .atlas .resume-intro h1{font-size:clamp(68px,10vw,110px)}
}
@media(max-width:600px){
 .atlas-film-close{top:77px;right:16px;min-height:44px;padding:8px 13px;font-size:.8rem}
 .atlas .resume-intro{grid-template-columns:1fr;gap:30px;padding-bottom:60px}
 .atlas .resume-intro h1{font-size:clamp(70px,18vw,110px)}
 .atlas .resume-portrait{width:min(100%,420px)}
}

/* A lightweight five-panel film shutter replaces a costly WebGL route effect. */
.atlas-transition{position:fixed;inset:0;z-index:900;display:grid;grid-template-columns:repeat(5,1fr);pointer-events:none}
.atlas-transition i{display:block;background:var(--atlas-paper);transform:scaleY(1);transform-origin:bottom;transition:transform .56s cubic-bezier(.76,0,.24,1)}
.atlas-transition i:nth-child(2){transition-delay:.045s}.atlas-transition i:nth-child(3){transition-delay:.09s}.atlas-transition i:nth-child(4){transition-delay:.135s}.atlas-transition i:nth-child(5){transition-delay:.18s}
.atlas-ready .atlas-transition i{transform:scaleY(0);transform-origin:top}
.atlas-leaving .atlas-transition i{transform:scaleY(1);transform-origin:bottom}

.atlas .work-section{background:var(--atlas-paper);color:var(--atlas-ink)}
.atlas .work-section .section-heading>span{color:#565650}
.atlas .work-section .text-link{border-color:#aaa}
.atlas .work-section .film-caption{border-color:#ccc}
.atlas .work-section .film-caption>span{color:#666}
.atlas .work-section .archive{border-color:#ccc}
.atlas .work-section .archive-row{border-color:#ccc}
.atlas .work-section .archive-row:hover{background:#e9e7e0}
.atlas .stills-section{background:#e8e6e0}
.atlas .about-section{background:#111;color:#f4f2ed}

@media(max-width:850px){
 .atlas .masthead{padding:15px 20px;grid-template-columns:1fr auto;gap:8px}
 .atlas .masthead .identity{display:none}.atlas .masthead .top-nav{display:flex;gap:15px;font-size:.66rem}
 .atlas .masthead .top-nav a:nth-child(1),.atlas .masthead .top-nav a:nth-child(2),.atlas .masthead .top-nav a:nth-child(4){display:none}
 .atlas .atlas-menu{width:min(100vw,680px)}
 .atlas.reel-home .reel-wordmark{font-size:9vw;letter-spacing:.13em}
 .atlas-film-intro{padding-inline:8vw}
 .atlas-project-grid{column-gap:30px;padding-inline:5vw}
}
@media(max-width:600px){
 .atlas .masthead .menu-toggle{font-size:0;gap:0}.atlas .masthead .menu-icon{width:24px}.atlas .masthead .top-nav{font-size:.7rem}
 .atlas .atlas-menu{width:100vw;padding:20px 20px 50px}
 .atlas .atlas-menu-links{gap:14px 22px}
 .atlas-menu-grid{grid-template-columns:1fr;gap:20px}
 .atlas-menu-card{grid-template-columns:115px 32px minmax(0,1fr)}
 .atlas.reel-home .reel-hero{padding:0}
 .atlas.reel-home .reel-frame{height:100svh;min-height:590px}
 .atlas.reel-home .reel-intro{top:75px;left:20px;right:20px;font-size:.57rem;line-height:1.5}
 .atlas.reel-home .reel-wordmark{top:40svh;left:5%;width:90%;flex-direction:column;gap:14px;font-size:clamp(48px,15vw,76px);line-height:.9;letter-spacing:.16em}
 .atlas.reel-home .reel-wordmark::before{top:-42px;font-size:.59rem;letter-spacing:.22em;line-height:1.4}
 .atlas.reel-home .reel-watch{top:64%}.atlas.reel-home .reel-play-ring{width:88px;height:88px}
 .atlas.reel-home .reel-frame-bottom{left:20px;right:20px;bottom:94px;font-size:.59rem}
 .atlas.reel-home .reel-frame-bottom button{font-size:.59rem}.atlas.reel-home #reel-frame-time{font-size:.59rem}
 .atlas-hero-rails,.atlas-film-rails{left:20px;right:20px;bottom:16px;gap:18px}
 .atlas-hero-rails a,.atlas-film-rails a{font-size:.6rem;gap:7px;min-height:48px}
 .atlas-hero-rails strong,.atlas-film-rails strong{font-size:.82rem;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
 .atlas.reel-home .reel-edit{padding:58px 20px 35px}
 .atlas.reel-home .reel-strip{grid-template-columns:repeat(4,minmax(0,1fr))}
 .atlas.reel-home .reel-bottom{padding:0 20px 50px}
 .atlas .atlas-works-page{padding-top:100px}
 .atlas-index-intro{padding:20px 20px 45px}.atlas-index-intro h1{font-size:clamp(57px,15vw,84px);margin:35px 0 40px}
 .atlas-index-intro>div{font-size:.64rem;line-height:1.6}
 .atlas-project-grid{grid-template-columns:1fr;gap:0;padding:30px 20px 80px}
 .atlas-project-card,.atlas-project-card:nth-child(even){transform:none;display:grid;grid-template-columns:38% minmax(0,1fr);gap:15px;align-items:center;border-bottom:1px solid #0002;padding:23px 0}
 .atlas-project-image{aspect-ratio:16/10}.atlas-project-caption{display:block;margin:0}
 .atlas-project-caption span{font-size:.6rem}.atlas-project-caption h2{font-size:clamp(19px,5vw,25px);margin:6px 0}
 .atlas-film-intro{grid-template-columns:1fr;align-content:center;justify-items:start;gap:35px;padding:85px 26px 145px;background:linear-gradient(180deg,#0009,#0004 44%,#000b)}
 .atlas-film-copy>span{font-size:.62rem;margin-bottom:20px}
 .atlas-film-copy h1{font-size:clamp(45px,12vw,70px)}
 .atlas-film-copy button{margin-top:24px;font-size:.68rem}
 .atlas-film-enter{width:108px;height:108px;justify-self:center;font-size:.67rem}
 .atlas .film-page:not(.is-open) .film-screen{inset:0}
}
@media(max-height:650px) and (max-width:600px){
 .atlas.reel-home .reel-wordmark{top:35svh;font-size:12vw}
 .atlas.reel-home .reel-watch{top:61%}
 .atlas-film-copy h1{font-size:10vw}
 .atlas-film-intro{gap:12px;padding-bottom:105px}
 .atlas-film-enter{width:83px;height:83px;gap:4px}
}
@media(prefers-reduced-motion:reduce){
 .atlas-transition{display:none}
 .atlas.reel-home .reel-wordmark span{animation:none}
 .atlas.reel-home .reel-poster,.atlas.reel-home .reel-preview{transform:none;transition:none}
 .atlas-project-card.atlas-reveal{opacity:1;translate:none;transition:none}
 .atlas .atlas-menu,.atlas .atlas-menu.is-closing{animation:none}
}

/* One film library on the homepage, organized by the kind of work. */
.atlas-film-hub{scroll-margin-top:0;background:var(--atlas-paper);color:var(--atlas-ink);padding:22px var(--pad) 90px}
.atlas-hub-head{border-bottom:1px solid #16161630;padding-bottom:20px}
.atlas-kicker,.atlas-hub-head>p,.atlas-hub-filters button,.atlas-hub-search input,.atlas-no-results{font:600 .76rem Arial,Helvetica,sans-serif;letter-spacing:.12em}
.atlas-kicker{display:block}
.atlas-hub-head>p{letter-spacing:.03em;font-size:.93rem;margin-top:24px;color:#555}
.atlas-hub-tools{display:flex;justify-content:space-between;align-items:end;gap:20px;flex-wrap:wrap;margin-top:22px}
.atlas-hub-filters{display:flex;gap:25px;flex-wrap:wrap}
.atlas-hub-filters button{border-bottom:1px solid transparent;padding:11px 0;white-space:nowrap;color:#676761;transition:color .2s,border-color .2s}
.atlas-hub-filters button[aria-pressed=true],.atlas-hub-filters button:hover{border-color:#1b1b18;color:#1b1b18}
.atlas-hub-filters span{font-size:.67rem;margin-left:5px}
.atlas-hub-search{display:block;border-bottom:1px solid #777;min-width:min(260px,100%)}
.atlas-hub-search input{width:100%;height:40px;border:0;border-radius:0;outline:0;background:transparent;color:var(--atlas-ink)}
.atlas-hub-search input:focus-visible{outline:2px solid #333;outline-offset:4px}
.atlas-film-hub .atlas-project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding:22px 0 0;margin-inline:calc(-1 * var(--pad))}
.atlas-film-hub .atlas-project-card{position:relative;display:block;min-width:0;overflow:hidden;background:#171714}
.atlas-film-hub .atlas-project-card[hidden]{display:none!important}
.atlas-film-hub .atlas-project-card:nth-child(even){transform:none}
.atlas-film-hub .atlas-project-image,.atlas-film-hub .atlas-project-card:first-child .atlas-project-image,.atlas-film-hub .atlas-project-card:nth-child(2) .atlas-project-image{aspect-ratio:16/9}
.atlas-film-hub .atlas-project-image img{filter:none;transform:scale(var(--poster-crop,1))}
.atlas-film-hub .atlas-project-card:hover img,.atlas-film-hub .atlas-project-card:focus-visible img{filter:brightness(.82);transform:scale(var(--poster-crop-hover,1.025))}
.atlas [data-project="google-cloud-sweden"]{--poster-crop:1.7;--poster-crop-hover:1.74}
.atlas [data-project="everything-is-watching"]{--poster-crop:1.36;--poster-crop-hover:1.39}
.atlas [data-project="stormy"]{--poster-crop:1.36;--poster-crop-hover:1.39}
.atlas [data-project="drift"]{--poster-crop:1.21;--poster-crop-hover:1.24}
.atlas-film-hub .atlas-project-caption{position:absolute;inset:auto 0 0;display:grid;grid-template-columns:1fr auto;gap:7px 20px;align-items:end;margin:0;padding:56px clamp(18px,2.4vw,42px) clamp(18px,2vw,32px);color:#fff;background:linear-gradient(transparent,#000b);text-shadow:0 1px 10px #000b}
.atlas-film-hub .atlas-project-caption h3{grid-column:1;grid-row:1;font:500 clamp(18px,2vw,32px)/1.07 Arial,Helvetica,sans-serif;letter-spacing:-.035em;text-transform:uppercase;max-width:22ch}
.atlas-film-hub .atlas-project-caption span{grid-column:1;grid-row:2;color:#fff;font-size:.63rem}
.atlas-film-hub .atlas-project-caption .atlas-project-action{grid-column:2;grid-row:1/3;align-self:end;white-space:nowrap;text-align:right;font-size:.6rem}
.atlas-project-image{position:relative}
.atlas-card-count{position:absolute;top:14px;left:14px;padding:9px 11px;background:#f4f2eded;color:#171714!important;font:700 .72rem Arial,Helvetica,sans-serif!important;letter-spacing:.11em}
.atlas-menu-card small{display:block;margin-top:5px;color:#666;font-size:.64rem;letter-spacing:.1em}
.atlas-no-results{margin:55px 0;color:#555}
.atlas .atlas-stills-label{font:600 .76rem Arial,Helvetica,sans-serif;letter-spacing:.12em;margin:0 0 60px}

/* Every multi-film project exposes its chapters before playback and again below it. */
.atlas-chapter-rail{position:absolute;z-index:7;left:var(--pad);right:var(--pad);bottom:110px;color:#fff}
.atlas-chapter-label{display:block;font:700 .7rem Arial,Helvetica,sans-serif;letter-spacing:.18em;margin-bottom:12px;text-shadow:0 1px 8px #000}
.atlas-chapter-track{display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#fff8 #0005;padding-bottom:8px}
.atlas-chapter-chip{scroll-snap-align:start;display:flex;flex:0 0 204px;align-items:center;gap:10px;min-height:66px;background:#f4f2edec;color:#171714;text-align:left;overflow:hidden;transition:background .2s}
.atlas-chapter-chip:hover,.atlas-chapter-chip:focus-visible{background:#fff}
.atlas-chapter-chip img{width:74px;height:66px;object-fit:cover;flex:none}
.atlas-chapter-chip span{min-width:0;display:block;padding-right:7px}.atlas-chapter-chip small,.atlas-chapter-card small{display:block;font:600 .62rem Arial,Helvetica,sans-serif;letter-spacing:.12em;color:#666;margin-bottom:6px}
.atlas-chapter-chip strong{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;font:600 .78rem/1.16 Arial,Helvetica,sans-serif}
.atlas-chapter-chip b{display:none}
.atlas .film-page.is-open .atlas-chapter-rail{display:none}
.atlas-project-chapters,.atlas-project-notes,.atlas-project-frames{padding:110px var(--pad);color:var(--atlas-ink);background:var(--atlas-paper)}
.atlas-project-chapters{border-bottom:1px solid #0002}
.atlas-detail-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;flex-wrap:wrap;border-top:1px solid #1115;padding-top:23px;margin-bottom:50px}
.atlas-detail-heading>span,.atlas-detail-heading>a,.atlas-detail-heading>p,.atlas-project-copy h3{font:600 .75rem Arial,Helvetica,sans-serif;letter-spacing:.12em}
.atlas-detail-heading h2{font:400 clamp(48px,6vw,100px)/.95 var(--atlas-serif);letter-spacing:-.05em}
.atlas-detail-heading h2 small{font:.75rem Arial,Helvetica,sans-serif;letter-spacing:0;vertical-align:top}
.atlas-detail-heading>a{text-decoration:underline;text-underline-offset:7px}
.atlas-chapter-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:45px 20px}
.atlas-chapter-card{text-align:left;display:block;align-self:start;min-width:0;color:var(--atlas-ink)}
.atlas-chapter-card img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;transition:filter .25s,transform .5s var(--ease)}
.atlas-chapter-card:hover img,.atlas-chapter-card:focus-visible img{filter:brightness(.8)}
.atlas-chapter-card span{display:block;margin-top:15px}.atlas-chapter-card strong{display:block;font:400 clamp(24px,2.5vw,38px)/1.1 var(--atlas-serif)}
.atlas-chapter-card>b{display:block;margin-top:9px;font:600 .72rem Arial,Helvetica,sans-serif;letter-spacing:.12em}
.atlas-project-notes{background:#171714;color:#f4f2ed;display:grid;grid-template-columns:1fr 1fr;gap:7vw}
.atlas-project-notes.is-summary{grid-template-columns:1fr}
.atlas-project-notes .atlas-detail-heading{display:block;border-color:#fff5;margin:0}.atlas-project-notes .atlas-detail-heading h2{margin:40px 0 65px}
.atlas-project-copy{border-top:1px solid #fff5;padding-top:23px}.atlas-project-copy h3{margin-bottom:30px}
.atlas-project-copy .project-copy{margin:0;max-width:760px;font-size:1rem;line-height:1.75;color:#deded9}
.atlas-project-copy .project-copy p{margin-bottom:24px}
.atlas-project-frames .photo-grid{padding:0;columns:3;column-gap:16px}
.atlas-project-frames .photo-grid figure{margin-bottom:16px}
.atlas-project-frames .photo-grid img{width:100%;height:auto}
.atlas.watch-page .contact-section{background:#171714;color:#f4f2ed}
.atlas.atlas-header-light .masthead{color:var(--atlas-ink);text-shadow:none;background:var(--atlas-paper);transition:background .25s,color .25s}

@media(max-width:850px){
 .atlas .masthead{grid-template-columns:1fr auto 1fr}
 .atlas .masthead .identity{display:block;font-size:.68rem;letter-spacing:.21em}
 .atlas .masthead .top-nav{display:none}
 .atlas-film-hub{padding:22px 25px 80px}
 .atlas-film-hub .atlas-project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .atlas-chapter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .atlas-project-notes{grid-template-columns:1fr;gap:55px}
 .atlas-project-frames .photo-grid{columns:2}
}
@media(max-width:600px){
 .atlas .masthead .identity{font-size:.65rem;letter-spacing:.2em}
 .atlas .masthead .menu-toggle{min-width:44px}
 .atlas-film-hub{padding:20px 20px 70px}
 .atlas-hub-head>p{font-size:.875rem;line-height:1.45}
 .atlas-hub-tools{margin-top:20px;gap:18px}.atlas-hub-filters{gap:9px 19px}
 .atlas-hub-filters button{font-size:.66rem;letter-spacing:.06em}
 .atlas-hub-search{width:100%}
 .atlas .atlas-stills-label{margin-bottom:35px}
 .atlas-film-hub .atlas-project-grid{grid-template-columns:1fr;gap:5px;padding-top:20px}
 .atlas-film-hub .atlas-project-image,.atlas-film-hub .atlas-project-card:first-child .atlas-project-image,.atlas-film-hub .atlas-project-card:nth-child(2) .atlas-project-image{aspect-ratio:16/10}
 .atlas-film-hub .atlas-project-caption{padding:42px 20px 20px}
 .atlas-film-hub .atlas-project-caption h3{font-size:clamp(18px,5vw,26px)}
 .atlas-film-hub .atlas-project-caption .atlas-project-action{display:none}
 .atlas-card-count{top:5px;left:5px;padding:5px;font-size:.54rem!important}
 .atlas-chapter-rail{left:20px;right:20px;bottom:88px}
 .atlas-chapter-chip{flex-basis:175px;min-height:60px}.atlas-chapter-chip img{width:62px;height:60px}
 .atlas-chapter-chip strong{font-size:.7rem}
 .atlas-collection-page .atlas-film-intro{padding-bottom:215px}
 .atlas-project-chapters,.atlas-project-notes,.atlas-project-frames{padding:65px 20px}
 .atlas-detail-heading{margin-bottom:30px}.atlas-detail-heading h2{font-size:clamp(46px,12vw,70px)}
 .atlas-chapter-grid{grid-template-columns:1fr 1fr;gap:28px 12px}
 .atlas-chapter-card strong{font-size:1.1rem}
 .atlas-project-notes{gap:35px}.atlas-project-notes .atlas-detail-heading h2{margin:25px 0}
 .atlas-project-copy .project-copy{font-size:.95rem}
 .atlas-project-frames .photo-grid{columns:1}
}

/* About reads like an editorial continuation of the film pages. */
.about-hero{min-height:100svh;padding:115px var(--pad) 28px;background:#090909;color:#f4f2ed}
.about-hero-top,.about-hero-bottom,.about-role,.about-story-link,.about-hero-portrait figcaption,.about-section-marker,.about-roster dt,.about-recognition h3{font:600 .76rem Arial,Helvetica,sans-serif;letter-spacing:.14em}
.about-hero-top,.about-hero-bottom{display:flex;justify-content:space-between;gap:20px;line-height:1.5}
.about-hero-top{border-top:1px solid #fff6;padding-top:15px}
.about-hero-bottom{border-top:1px solid #fff6;padding-top:15px;justify-content:flex-end}
.about-hero-grid{min-height:calc(100svh - 245px);display:grid;grid-template-columns:minmax(0,1.1fr) minmax(350px,.82fr);align-items:center;gap:clamp(30px,7vw,140px);padding:36px 0}
.about-hero-copy{min-width:0}
.about-role{display:block;color:#b5b3ad}
.about-hero-statement{max-width:730px;font:400 clamp(29px,3.1vw,55px)/1.16 var(--atlas-serif);letter-spacing:-.035em;text-wrap:balance;margin-top:38px}
.about-story-link{display:inline-flex;gap:42px;align-items:center;border-bottom:1px solid #fff8;padding:16px 0;margin-top:50px}
.about-story-link span{font-size:1.1rem}
.about-hero-portrait{height:min(72svh,850px);margin:0;min-width:0}
.about-hero-portrait img{height:100%;width:100%;object-fit:cover;object-position:center 28%}
.about-story,.about-experience,.about-future,.about-recognition{display:grid;grid-template-columns:minmax(180px,22%) minmax(0,1fr);gap:clamp(30px,6vw,110px);padding:115px var(--pad) 135px}
.about-section-marker{position:sticky;top:120px;align-self:start;display:flex;flex-direction:column;gap:13px;line-height:1.45}
.about-section-marker span:nth-child(2){color:#777770}
.about-story,.about-recognition{background:var(--atlas-paper);color:var(--atlas-ink)}
.about-story-content h2,.about-experience-content h2,.about-future-content h2,.about-recognition-content h2{font:400 clamp(54px,5.7vw,112px)/.98 var(--atlas-serif);letter-spacing:-.055em;max-width:1150px;text-wrap:balance}
.about-story-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 55px;margin-top:80px}
.about-story-columns p,.about-future-content p{font-size:clamp(1.05rem,1.45vw,1.35rem);line-height:1.65;max-width:670px}
.about-story-columns p:first-child{grid-column:1/-1;max-width:900px;font-size:clamp(1.25rem,1.8vw,1.75rem);line-height:1.5}
.about-experience{background:#e6e4dd;color:var(--atlas-ink)}
.about-roster{margin:85px 0 0}
.about-roster>div{display:grid;grid-template-columns:minmax(145px,24%) minmax(0,1fr);gap:25px;border-top:1px solid #17171455;padding:25px 0 36px}
.about-roster dt{padding-top:4px;text-transform:uppercase}
.about-roster dd{margin:0;font:400 clamp(1.1rem,1.6vw,1.55rem)/1.58 var(--atlas-serif)}
.about-future{background:#171714;color:#f4f2ed}
.about-future .about-section-marker span:nth-child(2){color:#a5a49d}
.about-page .contact-section{padding-top:55px}
.about-page .footer-links{margin-top:0}
.about-future-content>div{display:grid;grid-template-columns:1.5fr .65fr;gap:50px;margin-top:75px}
.about-recognition{border-bottom:1px solid #17171433}
.about-recognition-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:38px;margin-top:80px}
.about-recognition-grid section{border-top:1px solid #17171477;padding-top:22px}
.about-recognition h3{text-transform:uppercase;margin-bottom:28px}
.about-recognition ul{padding:0;margin:0;list-style:none}
.about-recognition li{font-size:1rem;line-height:1.55;margin-bottom:16px}
@media(max-width:900px){
 .about-hero-grid{grid-template-columns:minmax(0,1fr) minmax(265px,.82fr);gap:30px}
 .about-story,.about-experience,.about-future,.about-recognition{grid-template-columns:1fr;gap:45px;padding-block:85px}
 .about-section-marker{position:static;flex-direction:row;justify-content:space-between}
}
@media(max-width:650px){
 .about-hero{padding:95px 20px 24px}
 .about-hero-top,.about-hero-bottom{font-size:.62rem}
 .about-hero-top span:last-child{display:none}
 .about-hero-grid{min-height:0;grid-template-columns:1fr;gap:50px;padding:42px 0 45px}
 .about-role{font-size:.67rem;line-height:1.5}
 .about-hero-statement{font-size:clamp(29px,8vw,42px);margin-top:28px}
 .about-story-link{margin-top:34px;font-size:.68rem}
 .about-hero-portrait{height:auto;width:min(100%,480px)}
 .about-hero-portrait img{height:auto;aspect-ratio:4/5}
 .about-story,.about-experience,.about-future,.about-recognition{padding:72px 20px 85px;gap:35px}
 .about-section-marker{font-size:.65rem;gap:15px}
 .about-section-marker span:nth-child(2){text-align:right}
 .about-story-content h2,.about-experience-content h2,.about-future-content h2,.about-recognition-content h2{font-size:clamp(48px,12vw,78px)}
 .about-story-columns,.about-future-content>div{grid-template-columns:1fr;gap:25px;margin-top:45px}
 .about-story-columns p:first-child{grid-column:auto}
 .about-roster{margin-top:48px}
 .about-roster>div{grid-template-columns:1fr;gap:12px;padding:18px 0 26px}
 .about-recognition-grid{grid-template-columns:1fr;gap:30px;margin-top:48px}
}

/* SAFU: YouTube films on project pages */
.film-page-static .youtube-frame{position:absolute;inset:0;width:100%;height:100%;border:0;z-index:30;background:#000}
.film-page-static .is-youtube-playing .atlas-film-intro,.film-page-static .is-youtube-playing .atlas-film-rails{visibility:hidden}
.film-page-static button.atlas-film-enter{cursor:pointer}

/* SAFU: logo intro on the home page hero (static/intro.js) */
.safu-intro{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:6}
.reel-frame .reel-watch,.reel-frame .reel-frame-top,.reel-frame .reel-frame-bottom,.reel-frame .atlas-hero-rails{transition:opacity .6s ease}
/* Logo stays in the hero: the watch button moves below it */
.reel-frame.intro-stay .reel-watch{top:auto;bottom:clamp(64px,12%,140px);transform:translateX(-50%)}
@media (max-width:700px){.reel-frame.intro-stay .reel-watch{bottom:72px}}

/* SAFU: contact page, particle sea + lens flare (static/contact.js) */
.contact-stage{position:relative;height:100svh;min-height:560px;background:#050505;overflow:hidden}
.contact-stage canvas{position:absolute;inset:0;width:100%;height:100%;display:block;touch-action:pan-y;cursor:crosshair}
.contact-ui{position:absolute;inset:0;pointer-events:none;display:flex;flex-direction:column;justify-content:space-between;padding:120px var(--pad) 32px;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:var(--white)}
.contact-top,.contact-bottom{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px 28px}
.contact-top span:last-child,.contact-hint{color:var(--muted)}
.contact-bottom a,.contact-bottom button{pointer-events:auto;color:inherit;text-decoration:none;background:none;border:0;border-bottom:1px solid currentColor;padding:6px 0;font:inherit;letter-spacing:inherit;text-transform:inherit;cursor:pointer}
.contact-bottom a:focus-visible,.contact-bottom button:focus-visible{outline:1px solid var(--white);outline-offset:4px}
.contact-email{font-size:.875rem;user-select:all}
@media (max-width:700px){.contact-ui{padding-top:96px}.contact-hint{width:100%}}
.contact-toast{position:absolute;left:50%;z-index:3;margin:0;padding:10px 16px;border:1px solid var(--line);background:rgba(5,5,5,.72);color:var(--white);font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;pointer-events:none;opacity:0;transform:translate(-50%,6px);transition:opacity .3s,transform .3s}
.contact-toast.show{opacity:1;transform:translate(-50%,0)}
@media (max-width:700px){.contact-toast{white-space:normal;width:calc(100% - 40px);text-align:center}}

/* SAFU: hero frame runs edge to edge on every screen width */
.reel-hero{max-width:none}
.reel-frame{margin-inline:calc(-1 * var(--pad))}
@media (max-width:800px){.reel-frame{margin-inline:-16px}}

/* SAFU: phones show the four menu links in a second header row */
@media (max-width:700px){
  .atlas .masthead{grid-template-columns:auto 1fr;row-gap:12px;padding-top:18px;padding-bottom:12px}
  .atlas .masthead .identity{justify-self:end}
  .atlas .masthead .top-nav{display:flex!important;grid-column:1/-1;justify-self:stretch;justify-content:space-between;gap:0;font-size:.62rem;letter-spacing:.14em}
  .atlas .masthead .top-nav a{display:inline!important}
  .reel-hero{padding-top:128px}
  .contact-ui{padding-top:120px}
}
@media (max-width:700px){.atlas .reel-intro{top:112px!important}}
.film-load-status{position:absolute;left:50%;bottom:18%;z-index:31;transform:translateX(-50%);margin:0;padding:10px 16px;background:rgba(5,5,5,.72);border:1px solid var(--line);color:var(--white);font-size:.75rem;letter-spacing:.08em;pointer-events:none}

/* SAFU: quiet WATCH button (outline + blur), SVG play icon, film loader */
.atlas-film-enter{background:rgba(10,10,10,.22);color:#eeeeea;border:1px solid rgba(238,238,234,.72);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.atlas-film-enter svg{width:18px;height:18px}
.atlas-film-enter:hover,.atlas-film-enter:focus-visible{background:#eeeeea;color:#0a0a0a}
.film-page-static .film-video{opacity:0;transition:opacity .4s}
.film-page-static .film-video.is-ready{opacity:1}
.film-page-static .film-video{object-fit:contain}
.film-page-static .atlas-film-close{z-index:34;top:24px;right:var(--pad)}
.watch-page:has(.film-page-static.is-open:not(.is-player-offscreen)) .masthead{visibility:hidden}
.film-page-static .is-youtube-playing .film-poster{opacity:0}
.project-player-feedback{position:absolute;bottom:12px;left:50%;transform:translateX(-50%);z-index:33;max-width:calc(100% - 32px);width:max-content;display:flex;flex-wrap:wrap;justify-content:center;gap:12px;padding:10px 16px;background:#111e;color:#fff;font:.68rem/1.5 Arial,Helvetica,sans-serif;text-align:center;letter-spacing:.06em}
.project-player-feedback.has-message{bottom:18%}
.project-player-feedback p{flex-basis:100%}
.project-player-feedback button,.project-player-feedback a{min-height:44px;display:inline-flex;align-items:center;border-bottom:1px solid #999;padding:6px 0;color:#fff}
.project-player-feedback:not(.has-message){left:auto;right:16px;transform:none;bottom:68px}
@media(max-width:700px){.film-page-static .atlas-film-close{top:max(16px,env(safe-area-inset-top))}.project-player-feedback{font-size:.61rem}}
.film-loader{position:absolute;left:50%;top:50%;z-index:31;transform:translate(-50%,-50%);display:grid;gap:14px;justify-items:center;margin:0;color:#eeeeea;font-size:.7rem;letter-spacing:.16em;pointer-events:none}
.film-loader i{display:block;position:relative;width:120px;height:1px;overflow:hidden;background:rgba(238,238,234,.25)}
.film-loader i::after{content:"";position:absolute;inset:0;width:40%;background:#eeeeea;animation:film-load 1.1s ease-in-out infinite}
@keyframes film-load{from{transform:translateX(-100%)}to{transform:translateX(250%)}}
.film-play-sound{position:absolute;left:50%;top:50%;z-index:32;transform:translate(-50%,-50%)}
.film-play-sound:hover,.film-play-sound:focus-visible{transform:translate(-50%,-50%) scale(1.06)}

/* Reel controls stay available throughout the logo introduction. */
.atlas.reel-home .reel-frame{margin-inline:0}
.atlas.reel-home .reel-intro>p{display:block}
.reel-frame.intro-stay .reel-watch{bottom:150px}
.atlas.reel-home .reel-frame-bottom{bottom:92px;pointer-events:none}
.atlas.reel-home .reel-frame-bottom button{pointer-events:auto}
.reel-attribution{position:absolute;right:var(--pad);bottom:104px;z-index:5;max-width:50%;color:#fff;font:500 .66rem/1.5 Arial,Helvetica,sans-serif;letter-spacing:.06em;text-align:right;text-shadow:0 1px 12px #000}
.reel-player-shell{padding-top:max(16px,env(safe-area-inset-top));padding-bottom:max(12px,env(safe-area-inset-bottom))}
.reel-player-heading>div{min-width:0}
.reel-player-heading p{color:#b9b9b3;line-height:1.5}
.reel-controls button:disabled{opacity:.4;cursor:default}
.atlas-no-results button{display:inline-block;margin-left:12px;min-height:44px;padding:10px 0;border-bottom:1px solid currentColor;font:inherit;color:var(--atlas-ink)}
#lightbox-error{text-align:center;font-size:.875rem;padding:10px 16px}
#lightbox-error a{text-decoration:underline;text-underline-offset:4px}
.contact-bottom a,.contact-bottom button{min-height:44px;display:inline-flex;align-items:center}
.contact-stage{min-height:max(560px,100svh);height:auto}
.film-noscript{position:absolute;left:var(--pad);bottom:100px;z-index:8;color:#fff}
.film-noscript a{display:inline-block;padding:14px;border:1px solid currentColor}
.reel-noscript{padding:16px var(--pad);color:var(--atlas-ink);font-size:.875rem}
#lightbox-close{min-width:44px;min-height:44px}
@media(max-width:700px){
 html{scroll-padding-top:124px}
 .atlas .masthead{row-gap:0;padding-top:14px;padding-bottom:8px}
 .atlas .masthead .top-nav a{display:inline-flex!important;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:6px}
 .atlas.reel-home .reel-intro{top:132px!important}
 .atlas-hub-filters button{min-height:44px}
 .atlas-hub-search input{font-size:16px}
 .about-hero{padding-top:144px}
 .contact-ui{padding-top:140px;padding-bottom:max(24px,env(safe-area-inset-bottom))}
 .atlas .atlas-menu-links a{min-height:44px;display:inline-flex;align-items:center}
 .atlas-project-caption h3{overflow-wrap:anywhere}
}
@media(max-width:700px){
 .reel-frame.intro-stay .reel-watch{bottom:132px}
 .atlas.reel-home .reel-frame-bottom{bottom:78px}
 .reel-attribution{bottom:86px;right:20px;font-size:.58rem;max-width:48%}
 .atlas.reel-home .reel-frame-bottom button{font-size:.6rem}
 .reel-player-heading p{font-size:.64rem}
 #reel-close{gap:8px;flex-shrink:0}
}

/* Match the approved Work crops in the compact project index. */
.atlas-menu-card img{transform:scale(var(--poster-crop,1))}
.atlas-menu-card:hover img,.atlas-menu-card:focus-visible img{transform:scale(var(--poster-crop-hover,1.025))}
#project-info-title{scroll-margin-top:54px}
#lightbox.is-single .lightbox-stage{justify-content:center}
#lightbox.is-single .lightbox-stage img{width:100%}
.atlas.watch-page.atlas-header-solid:not(.atlas-header-light) .masthead{background:#090909}
