/* STUDIO MINIMAL — shared theme. Change these tokens to update every page. */
:root{--background:#fff;--text:#171917;--muted:#6d726e;--line:#e3e6e2;--soft:#f3f5f2;--accent:#315a47;--font:Arial,Helvetica,sans-serif;--page-width:1480px;--gutter:54px;--grid-gap:28px;--image-ratio:1.6}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--background);color:var(--text);font-family:var(--font);font-size:14px;line-height:1.6;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}img{display:block;max-width:100%;height:auto}h1,h2,p{margin:0}h1,h2{font-weight:400}a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:5px}::selection{background:#dbe8df}[hidden]{display:none!important}.wrap{width:calc(100% - var(--gutter)*2);max-width:var(--page-width);margin-inline:auto}.site-header{display:flex;align-items:flex-start;justify-content:space-between;gap:30px;padding:43px 0 37px}.identity{display:flex;flex-direction:column;align-items:flex-start}.name{font-size:29px;letter-spacing:-1.3px;line-height:1.1}.role{font-size:11px;color:var(--muted);margin-top:9px;letter-spacing:.1px}.site-header nav{display:flex;gap:30px;padding-top:4px;font-size:12px}.site-header nav a{padding:4px 0;position:relative}.site-header nav a[aria-current]:after{content:'';position:absolute;height:1px;background:var(--text);left:0;right:0;bottom:0}.site-header nav a:hover{color:var(--accent)}.menu-toggle{display:none}.site-main{min-height:60vh}.work-filters{display:flex;align-items:center;gap:31px;flex-wrap:wrap;padding:23px 0 25px;border-top:1px solid var(--line);font-size:12px}.work-filters a{color:var(--muted);position:relative;padding:4px 0}.work-filters a[aria-current]{color:var(--text)}.work-filters a[aria-current]:after{content:'';position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--text)}.work-filters a:hover{color:var(--accent)}.index-summary{display:flex;justify-content:space-between;gap:20px;font-size:10px;color:var(--muted);padding:0 0 20px}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:39px var(--grid-gap)}.project-card{display:block;min-width:0}.project-image{position:relative;aspect-ratio:var(--image-ratio);background:var(--soft);overflow:hidden}.project-image>img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.project-card:hover .project-image>img{transform:scale(1.025)}.image-corner{position:absolute;right:13px;bottom:11px;display:flex;align-items:center;justify-content:center;width:30px;height:30px;background:var(--background);font-size:19px;opacity:0;transform:translateY(5px);transition:opacity .2s,transform .2s}.project-card:hover .image-corner,.project-card:focus-visible .image-corner{opacity:1;transform:none}.project-caption{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding-top:11px}.project-caption h2{font-size:12px;line-height:1.45;letter-spacing:-.1px}.project-caption>span{font-size:10px;color:var(--muted);white-space:nowrap}.project-card:hover h2{color:var(--accent)}.image-placeholder{height:100%;display:flex;align-items:center;justify-content:center;font-size:35px;color:var(--muted)}.load-more-row{display:flex;justify-content:center;padding-top:56px}.load-more{border:1px solid var(--line);background:var(--background);padding:13px 24px;font-size:12px;cursor:pointer;display:flex;gap:32px;align-items:center}.load-more:hover{border-color:var(--text)}.load-more span{font-size:20px;line-height:1}.site-footer{display:flex;justify-content:space-between;gap:22px;flex-wrap:wrap;border-top:1px solid var(--line);margin-top:92px;padding:24px 0 35px;font-size:10px;color:var(--muted)}.site-footer a:hover{color:var(--text)}.page-heading{border-top:1px solid var(--line);padding:43px 0 33px;display:flex;justify-content:space-between;align-items:baseline;gap:24px}.page-heading h1{font-size:32px;letter-spacing:-1px}.quiet-link{font-size:11px;color:var(--muted)}.quiet-link:hover{color:var(--text)}.category-filters{display:flex;gap:23px;flex-wrap:wrap;margin-bottom:34px;font-size:11px}.category-filters a{color:var(--muted);padding:3px 0}.category-filters a[aria-current]{color:var(--text);border-bottom:1px solid var(--text)}.category-filters a:hover{color:var(--accent)}.section-label{font-size:14px;margin:56px 0 23px;letter-spacing:-.2px}.category-grid .project-image{aspect-ratio:1.8}.pagination{display:flex;justify-content:center;gap:9px;margin-top:55px;font-size:11px}.pagination a,.pagination span{padding:6px 12px;border:1px solid var(--line)}.pagination span[aria-current]{background:var(--text);color:var(--background);border-color:var(--text)}.pagination a:hover{border-color:var(--text)}.project-heading{border-top:1px solid var(--line);padding:29px 0 33px}.project-heading>div{margin-top:28px;display:flex;justify-content:space-between;gap:25px;align-items:baseline}.project-heading h1{font-size:31px;letter-spacing:-.9px;line-height:1.2;max-width:1000px}.project-heading p{font-size:11px;color:var(--muted);white-space:nowrap}.film{position:relative;width:100%;aspect-ratio:16/9;background:#101211}.film iframe,.film video{position:absolute;width:100%;height:100%;inset:0;border:0}.project-still{background:var(--soft)}.project-still img{width:100%;max-height:740px;object-fit:contain}.project-description{display:grid;grid-template-columns:1fr 2fr;gap:50px;max-width:1160px;padding:42px 0 40px}.project-description>h2{font-size:11px;color:var(--muted);padding-top:3px}.prose{font-size:14px;line-height:1.9;max-width:780px}.prose p{margin-bottom:20px}.prose p:last-child{margin-bottom:0}.prose a{border-bottom:1px solid var(--line)}.prose a:hover{color:var(--accent);border-color:var(--accent)}.project-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--grid-gap);margin-top:20px;align-items:start}.project-gallery>a{display:block;position:relative}.project-gallery>a:first-child{grid-column:1/-1}.project-gallery img{width:100%;height:auto;max-height:880px;object-fit:contain;background:var(--soft)}.enlarge{position:absolute;right:13px;bottom:13px;font-size:10px;background:var(--background);padding:6px 11px;opacity:0;transition:opacity .2s}.project-gallery a:hover .enlarge,.project-gallery a:focus-visible .enlarge{opacity:1}.related{margin-top:60px;padding-top:1px;border-top:1px solid var(--line)}.related .section-label{margin-top:24px}.text-page{border-top:1px solid var(--line);padding:48px 0 35px;display:grid;grid-template-columns:1fr 2fr;gap:60px}.text-page>h1{font-size:32px;line-height:1.15;letter-spacing:-.8px}.contact-body{display:flex;flex-direction:column;align-items:flex-start;gap:20px}.contact-body .email{font-size:clamp(22px,2.4vw,35px);letter-spacing:-.9px;line-height:1.3}.contact-body .email:hover,.contact-body .phone:hover{color:var(--accent)}.contact-body .phone{font-size:16px}.contact-body p{color:var(--muted);font-size:13px}.contact-body .contact-role{font-size:11px;padding-top:25px}.skip-link{position:fixed;top:-100px;left:15px;z-index:100;padding:10px 20px;background:var(--text);color:var(--background)}.skip-link:focus{top:15px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.lightbox{border:0;padding:55px 20px 20px;background:#161917;color:#fff;max-width:96vw;max-height:96vh;width:max-content}.lightbox::backdrop{background:#000d}.lightbox img{max-width:90vw;max-height:78vh;object-fit:contain;margin:auto}.lightbox p{font-size:11px;text-align:center;padding-top:12px;color:#c8ccc8}.lightbox-close{position:absolute;right:19px;top:13px;color:#fff;background:transparent;border:0;font-size:12px;cursor:pointer}.lightbox-close span{font-size:20px;margin-left:10px}.no-scroll{overflow:hidden}
@media(min-width:1800px){:root{--gutter:70px;--grid-gap:34px}.site-header{padding-top:55px}}
@media(max-width:1150px){:root{--gutter:35px;--grid-gap:23px}.project-caption{display:block}.project-caption>span{display:block;margin-top:4px}.project-heading h1{font-size:28px}}
@media(max-width:800px){:root{--gutter:24px;--grid-gap:22px}.site-header{padding:30px 0}.name{font-size:27px}.role{font-size:10px;margin-top:8px}.site-header nav{gap:23px;font-size:12px}.work-filters{gap:24px;padding-block:20px;font-size:11px}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:30px}.index-summary{font-size:9px;padding-bottom:18px}.index-summary>span:last-child{display:none}.image-corner{opacity:1;transform:none;width:25px;height:25px;font-size:17px;bottom:9px;right:9px}.project-caption h2{font-size:12px}.project-caption>span{font-size:10px}.site-footer{margin-top:65px;font-size:10px;display:grid;grid-template-columns:1fr 1fr;row-gap:14px}.site-footer>span:nth-child(2){text-align:right}.site-footer>.back-top{text-align:right}.project-heading>div{display:block}.project-heading h1{font-size:27px;max-width:650px}.project-heading p{margin-top:10px}.project-description{gap:30px;grid-template-columns:1fr 2.4fr;padding-top:30px}.prose{font-size:13px;line-height:1.9}.text-page{grid-template-columns:1fr 2.2fr;gap:35px;padding-top:35px}.text-page>h1{font-size:28px}.category-filters{gap:19px;font-size:11px}.section-label{margin-top:40px}.enlarge{opacity:1;font-size:9px;bottom:8px;right:8px}.related{margin-top:42px}.load-more-row{padding-top:40px}}
@media(max-width:560px){:root{--gutter:20px;--grid-gap:18px}.site-header{padding:25px 0 27px;position:relative;z-index:10;align-items:center}.name{font-size:26px}.role{font-size:9px;margin-top:7px}.menu-toggle{display:flex;gap:12px;align-items:center;font-size:11px;border:0;background:transparent;padding:12px 0 12px 12px;cursor:pointer}.menu-mark{width:18px;display:flex;flex-direction:column;gap:5px}.menu-mark i{height:1px;background:var(--text);display:block}.site-header nav{display:none;position:absolute;top:100%;left:-20px;right:-20px;background:var(--background);border-bottom:1px solid var(--line);box-shadow:0 14px 20px #00000008;padding:16px 20px 25px;flex-direction:column;gap:10px}.site-header nav.is-open{display:flex}.site-header nav a{padding:9px 0}.site-header nav a[aria-current]:after{display:none}.site-header nav a[aria-current]{color:var(--accent)}.work-filters{column-gap:22px;row-gap:7px;padding:16px 0 20px;font-size:11px}.work-filters a{padding:6px 0}.project-grid{grid-template-columns:1fr;row-gap:29px}.project-caption{display:flex;gap:15px;padding-top:10px}.project-caption h2{font-size:12px}.project-caption>span{font-size:9px;margin:0}.project-image{aspect-ratio:1.6}.page-heading{padding:29px 0 27px}.page-heading h1{font-size:28px}.quiet-link{font-size:10px}.category-filters{column-gap:21px;row-gap:9px;margin-bottom:26px}.category-filters a{padding:5px 0}.category-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 16px}.category-grid .project-caption{display:block}.category-grid .project-caption h2{font-size:11px}.category-grid .project-caption>span{margin-top:4px}.project-heading{padding-top:22px}.project-heading>div{margin-top:23px}.project-heading h1{font-size:25px;letter-spacing:-.6px}.project-description{display:block;padding:28px 0 22px}.project-description>h2{margin-bottom:20px}.project-gallery{grid-template-columns:1fr;gap:18px}.project-gallery>a:first-child{grid-column:auto}.text-page{display:block;padding-top:32px}.text-page>h1{font-size:28px;margin-bottom:31px}.contact-body .email{font-size:clamp(23px,6.3vw,31px);letter-spacing:-.7px}.contact-body .phone{font-size:15px}.related .project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 15px}.related .project-caption{display:block}.related .project-caption h2{font-size:11px}.related .project-caption>span{margin-top:3px}.related .project-card:last-child{display:none}.site-footer{font-size:9px;column-gap:10px;padding-bottom:26px}.pagination{margin-top:35px}.load-more{font-size:11px;padding:12px 22px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

/* Version 004: slightly stronger shared typography and reliable video posters. */
:root{--weight-heading:600;--weight-label:600}
.name,h1,h2{font-weight:var(--weight-heading)}
.site-header nav,.work-filters,.category-filters,.project-caption h2,.load-more,.section-label{font-weight:var(--weight-label)}
.role,.index-summary,.project-caption>span,.site-footer{color:#5c625e}
.video-preview{position:relative;overflow:hidden}
.video-play{display:block;position:absolute;inset:0;border:0;padding:0;background:#101211;color:white;cursor:pointer;width:100%;height:100%;text-align:center}
.video-play>img{width:100%;height:100%;object-fit:contain}
.video-shade{position:absolute;inset:0;background:linear-gradient(transparent 35%,#0005)}
.video-play-label{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:flex;align-items:center;gap:14px;background:#ffffffed;color:#171917;padding:17px 24px;font-size:14px;font-weight:600;white-space:nowrap}
.play-triangle{width:0;height:0;border-top:8px solid transparent;border-bottom:8px solid transparent;border-left:12px solid currentColor}
.video-play:hover .video-play-label{background:#fff}
.video-play:focus-visible{outline:3px solid white;outline-offset:-7px}
.video-preview.is-playing .video-play{display:none}
@media(max-width:560px){.video-play-label{font-size:12px;padding:13px 18px;gap:10px}.play-triangle{border-top-width:6px;border-bottom-width:6px;border-left-width:9px}}
.additional-video-title{font-size:16px;font-weight:600;margin:36px 0 16px}
.video-status{font-size:12px;color:var(--muted);margin-top:13px}

/* Version 005: CV-matched header pink. Header remains on a white background. */
:root{--header-accent:#d8267d}
.site-header .name{color:var(--header-accent)}
.site-header nav a[aria-current],.site-header nav a:hover{color:var(--header-accent)}
.site-header nav a[aria-current]:after{background:var(--header-accent)}
.site-header .menu-mark i{background:var(--header-accent)}
.site-header .menu-toggle[aria-expanded="true"]{color:var(--header-accent)}

/* Version 006: oversized home masthead; compact masthead on inner pages. */
.site-header .name{font-family:Arial,Helvetica,sans-serif;text-transform:uppercase;font-weight:900;font-size:38px;letter-spacing:-1.9px;line-height:.95}
.site-header .role{font-size:10px;letter-spacing:.1px;margin-top:12px}
.page-home .site-header{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;padding-top:39px;padding-bottom:34px;position:relative;row-gap:24px}
.page-home .site-header .identity{grid-column:1/-1;grid-row:2;display:block;min-width:0}
.page-home .site-header .name{display:block;white-space:nowrap;font-size:clamp(64px,14.4vw,225px);letter-spacing:-.065em;line-height:.84}
.page-home .site-header .role{display:block;margin-top:25px;font-size:12px;letter-spacing:.2px}
.page-home .site-header nav{grid-column:2;grid-row:1;padding-top:0;justify-content:flex-end}
.page-home .work-filters{padding-top:20px}
.page-text .text-page{grid-template-columns:1fr 2.5fr;gap:70px}
.page-text .text-page>.prose{max-width:none}
.profile-lead{font-size:23px;line-height:1.45;letter-spacing:-.45px;font-weight:500;max-width:800px}
.about-profile>p:not(.profile-lead){max-width:760px}
.cv-download{display:inline-flex;align-items:center;justify-content:space-between;gap:55px;padding:13px 19px;border:1px solid var(--line)!important;margin:9px 0 0;font-size:12px;font-weight:600}
.cv-download span{color:var(--muted);font-size:10px}
.cv-download:hover{border-color:var(--header-accent)!important;color:var(--header-accent)!important}
.cv-section{margin-top:58px}
.cv-section>h2{font-size:20px;font-weight:600;letter-spacing:-.4px;margin:0 0 24px}
.cv-credits{border-top:1px solid var(--line)}
.cv-credit{display:flex;justify-content:space-between;gap:25px;padding:19px 0;border-bottom:1px solid var(--line)}
.cv-credit h3{font-size:14px;line-height:1.4;font-weight:600;letter-spacing:-.1px;margin:0 0 5px}
.cv-credit h3 a{border:0}
.cv-credit h3 a:hover{color:var(--header-accent)}
.cv-credit p{font-size:11px;line-height:1.65;color:var(--muted);margin:0}
.cv-credit>span{font-size:11px;white-space:nowrap;color:var(--muted);padding-top:2px}
.prose .cv-note{font-size:11px;color:var(--muted);line-height:1.7;margin-top:18px}
.commercial-credits{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 34px;border-top:1px solid var(--line);padding-top:24px}
.commercial-credits h3{font-size:13px;line-height:1.4;font-weight:600;margin:0 0 9px}
.commercial-credits p{font-size:12px;line-height:1.8;color:var(--muted);margin:0}
.about-contact{border-top:1px solid var(--line);margin-top:45px;padding-top:22px;font-size:12px}
.about-contact p{margin:0 0 9px}
.about-contact a{border:0;color:var(--header-accent)}
@media(max-width:1150px){.page-home .site-header .name{font-size:14.2vw}.page-text .text-page{grid-template-columns:1fr 3fr;gap:40px}}
@media(max-width:800px){.site-header .name{font-size:31px;letter-spacing:-1.5px}.site-header .role{font-size:9px;margin-top:10px}.page-home .site-header{padding-top:27px;row-gap:27px}.page-home .site-header .name{font-size:14vw}.page-home .site-header .role{font-size:10px;margin-top:20px}.profile-lead{font-size:21px}.page-text .text-page{grid-template-columns:1fr 4fr;gap:30px}.commercial-credits{gap:25px}.cv-section{margin-top:45px}}
@media(max-width:560px){.site-header .name{font-size:28px;letter-spacing:-1.4px}.site-header .role{font-size:8px;max-width:230px}.page-home .site-header{display:flex;flex-direction:column;align-items:stretch;padding-top:25px;padding-bottom:25px;gap:27px}.page-home .site-header .identity{order:2}.page-home .site-header .name{font-size:13.8vw;letter-spacing:-.065em;white-space:nowrap}.page-home .site-header .role{font-size:9px;max-width:none;margin-top:15px}.page-home .site-header .menu-toggle{display:flex;align-self:flex-end;order:1;padding-block:8px}.page-home .site-header nav{top:58px;z-index:2}.page-text .text-page{display:block}.profile-lead{font-size:20px;line-height:1.5}.cv-section>h2{font-size:19px}.cv-credit{gap:15px;padding-block:17px}.cv-credit h3{font-size:13px}.cv-credit p,.cv-credit>span{font-size:10px}.commercial-credits{grid-template-columns:1fr;gap:25px}.commercial-credits h3{font-size:13px}.commercial-credits p{font-size:12px}.cv-section{margin-top:40px}}

.cv-icon{display:inline-block;width:12px;height:12px;vertical-align:-1px;margin-left:3px}

/* Version 007: reduced masthead and stronger role subtitle. */
.page-home .site-header .name{font-size:clamp(20px,4.32vw,67.5px);letter-spacing:-.045em;line-height:1}
.site-header .role,.page-home .site-header .role{font-weight:700;color:var(--text);font-size:12px;margin-top:14px;max-width:none}
@media(max-width:560px){.page-home .site-header .name{font-size:4.14vw}.site-header .role,.page-home .site-header .role{font-size:10px;line-height:1.5;margin-top:10px}}
