@import url('https://fonts.googleapis.com/css2?family=Bodoni+Moda:ital,wght@0,400;0,500;1,400&family=Noto+Serif+SC:wght@400;500&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=Noto+Sans+SC:wght@400;500;600;700&display=swap');

:root{--bg:#11120f;--ink:#eeece2;--muted:#a09f93;--gold:#c4b777;--line:#34352d}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--bg);color:var(--ink);font-family:'DM Sans',Arial,'PingFang SC',sans-serif;font-size:14px}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}header{height:88px;display:flex;align-items:center;justify-content:space-between;padding:0 4%;border-bottom:1px solid var(--line);background:var(--bg)}.wordmark{font-size:19px;letter-spacing:2px}.wordmark span{font-size:11px;margin-left:15px;color:var(--muted);letter-spacing:3px}nav{display:flex;gap:30px;font-size:12px}nav a:hover{color:var(--gold)}#language{background:none;border:1px solid var(--line);padding:9px 13px;font-size:11px}.hero{height:calc(100svh - 88px);min-height:630px;max-height:1000px;position:relative;overflow:hidden}.hero>img{width:100%;height:100%;object-fit:cover;object-position:center 46%;filter:brightness(.65)}.shade{position:absolute;inset:0;background:linear-gradient(180deg,#0003,transparent 30%,#000b)}.hero-top{position:absolute;top:30px;left:4%;right:4%;display:flex;justify-content:space-between;font-size:10px;letter-spacing:2px}.hero-title{position:absolute;left:7%;right:7%;bottom:46px}.hero-title>p{font-size:13px;letter-spacing:1px}h1{font-family:'Cormorant Garamond',Georgia,serif;font-weight:400;font-size:clamp(100px,13.5vw,205px);line-height:.83;letter-spacing:-6px;margin:28px 0 48px}h1 em{color:#e2d5a2;font-weight:400}.hero-bottom{display:flex;justify-content:space-between;font-size:11px;letter-spacing:1px}.hero-bottom a{border-bottom:1px solid #aaa;padding-bottom:8px}.section{padding:95px 6%}.section-top{display:flex;justify-content:space-between;padding-bottom:23px;border-bottom:1px solid var(--line);color:var(--muted);font-size:11px}.eyebrow{font-size:10px;letter-spacing:2px;color:var(--gold)}.heading-row{display:flex;align-items:center;justify-content:space-between;gap:30px;margin:38px 0 44px}h2{font-family:'Cormorant Garamond',Georgia,'Songti SC',serif;font-size:clamp(40px,5vw,72px);font-weight:400;line-height:1.05;letter-spacing:-1.5px;margin:0}.filters{display:flex;flex-wrap:wrap;gap:7px}.filters button{background:transparent;border:1px solid var(--line);border-radius:22px;padding:9px 15px;color:var(--muted);font-size:11px}.filters .active,.filters button:hover{background:var(--ink);color:var(--bg);border-color:var(--ink)}.projects{display:grid;grid-template-columns:1fr 1fr;gap:48px 28px}.project{border:0;background:none;text-align:left;padding:0}.project:first-child{grid-column:1 / -1}.project .image{aspect-ratio:1.8;overflow:hidden;position:relative;background:#20211e}.project:first-child .image{aspect-ratio:2.35}.project img{width:100%;height:100%;object-fit:cover;transition:transform .7s,filter .7s}.project:hover img{transform:scale(1.035);filter:brightness(1.12)}.project .image:after{content:'VIEW PROJECT ↗';position:absolute;bottom:18px;right:20px;background:#111a;padding:10px;font-size:9px;letter-spacing:2px}.project .meta{display:flex;justify-content:space-between;gap:15px;margin-top:16px}.project h3{font-family:'Cormorant Garamond',Georgia,'Songti SC',serif;font-size:30px;font-weight:400;margin:0 0 7px}.project p{margin:0;font-size:10px;color:var(--muted);letter-spacing:.7px}.project .number{color:var(--gold);font-size:10px;padding-top:8px}.interlude{padding:100px 15%;text-align:center;background:linear-gradient(#1119,#111c),url('assets/film-11.webp') center 55%/cover}.interlude p{font:italic 46px/1.2 'Cormorant Garamond',Georgia,'Songti SC',serif}.interlude span{font-size:10px;letter-spacing:3px;color:var(--gold)}.intro{max-width:390px;font-size:13px;line-height:1.8;color:var(--muted)}.gallery{display:grid;grid-template-columns:1fr 1fr;gap:32px}.gallery button{border:0;background:none;padding:0;text-align:left}.gallery img{width:100%;aspect-ratio:1.78;object-fit:cover}.gallery span{display:block;margin-top:14px;font-size:12px}.about{display:grid;grid-template-columns:.85fr 1.15fr;gap:10%;background:#191a16;align-items:center}.portrait img{width:100%;height:560px;object-fit:cover}.portrait>span{display:block;margin-top:16px;font-size:10px;letter-spacing:2px;color:var(--muted)}.about h2{margin:30px 0}.about p{line-height:1.9;color:var(--muted);max-width:530px}.recognition{border-top:1px solid var(--line);margin-top:30px;padding-top:24px}.recognition p{font-size:11px;margin:12px 0}.contact{text-align:center;padding-top:130px;padding-bottom:120px}.contact h2{font-size:clamp(52px,7.8vw,110px);margin:35px 0}.contact em{color:var(--gold);font-weight:400}.email{font-size:clamp(17px,2.5vw,30px);border-bottom:1px solid var(--gold);padding-bottom:8px}.contact p{color:var(--muted);margin-top:28px}footer{border-top:1px solid var(--line);padding:30px 4%;display:flex;justify-content:space-between;font-size:9px;letter-spacing:1px;color:var(--muted)}dialog{width:min(1100px,94vw);max-height:92svh;border:1px solid var(--line);background:#181915;color:var(--ink);padding:52px 34px 35px}dialog::backdrop{background:#000d;backdrop-filter:blur(8px)}.close{position:absolute;right:20px;top:16px;border:0;background:none;font-size:11px;letter-spacing:1px}#detail-body>img{width:100%;height:auto}#detail-body h2{margin:24px 0 16px}#detail-body p{color:var(--muted);line-height:1.8;max-width:780px}#detail-body .credits{font-size:11px;color:var(--gold)}body:has(dialog[open]){overflow:hidden}button:focus-visible,a:focus-visible{outline:2px solid var(--gold);outline-offset:5px}@media(max-width:760px){header{height:74px}.wordmark{font-size:15px}.wordmark span{display:none}nav{gap:14px;font-size:10px}nav a[href="#practice"]{display:none}.hero{height:80svh;min-height:570px}.hero-top{font-size:8px}.hero-top span:last-child{display:none}h1{letter-spacing:-4px}.hero-bottom{gap:25px;line-height:1.8;font-size:9px}.section{padding:65px 6%}.section-top{gap:20px;font-size:9px}.heading-row{display:block;margin:28px 0}.filters{margin-top:24px}.filters button{font-size:10px;padding:8px 12px}.projects{grid-template-columns:1fr;gap:30px}.project:first-child{grid-column:auto}.project:first-child .image{aspect-ratio:1.8}.project h3{font-size:28px}.interlude{padding:65px 10%}.interlude p{font-size:33px}.gallery{grid-template-columns:1fr;gap:28px}.about{grid-template-columns:1fr;gap:40px}.portrait img{height:400px;object-position:center 35%}.contact{padding-top:80px;padding-bottom:80px}footer{gap:20px;line-height:1.8}footer>span:nth-child(2){display:none}dialog{padding:48px 18px 24px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Blue visual direction and contemporary typography */

:root{--bg:#091320;--ink:#edf5ff;--muted:#9aaec6;--gold:#82b9ff;--line:#253b54}
body{font-family:'Manrope','Noto Sans SC','PingFang SC',sans-serif}
.hero>img{filter:brightness(.58) saturate(.7)}
.shade{background:linear-gradient(180deg,#081b3c66,transparent 30%,#05162de6)}
h1,h2,.project h3,.interlude p{font-family:'Manrope','Noto Sans SC','PingFang SC',sans-serif}
h1{font-weight:600;font-size:clamp(88px,12vw,180px);letter-spacing:-7px;line-height:.98}
h1 em{font-style:normal;color:#97c5ff;font-weight:500}
h2{font-weight:500;font-size:clamp(36px,4.2vw,62px);line-height:1.16;letter-spacing:-2px}
.project h3{font-size:25px;font-weight:500;letter-spacing:-.7px}
.project .image{background:#10233a}.project .image:after{background:#071b35c9}
.filters .active,.filters button:hover{background:#82b9ff;color:#08172a;border-color:#82b9ff}
.interlude{background:linear-gradient(#071a32c9,#071a32e6),url('assets/film-11.webp') center 55%/cover}
.interlude p{font-size:35px;line-height:1.5;letter-spacing:-1px;font-style:normal;font-weight:400}
.about{background:#101f32}
.contact h2{font-size:clamp(43px,6.6vw,96px);line-height:1.2}
.contact em{font-style:normal;font-weight:500}
dialog{background:#0e2035;border-color:#314c6d}
.wordmark{font-weight:700;letter-spacing:1.5px}
@media(max-width:760px){h1{letter-spacing:-4px}h2{letter-spacing:-1px}.project h3{font-size:24px}.interlude p{font-size:27px}}
/* Ocean atmosphere: light, depth and literary typography */
:root{--bg:#061724;--ink:#e6f1ed;--muted:#9cbac5;--gold:#9edbd9;--line:#8ac5cf30}
body{background:radial-gradient(ellipse at 100% 28%,#15637a30,transparent 50%),radial-gradient(ellipse at 0 68%,#1a6c7a25,transparent 45%),#061724;font-family:'Manrope','Noto Sans SC',sans-serif}
h1,h2,.project h3,.interlude p{font-family:'Bodoni Moda','Noto Serif SC','Songti SC',Georgia,serif}
h1{font-size:clamp(100px,14vw,210px);font-weight:400;line-height:.9;letter-spacing:-5px}
h1 em{font-family:'Bodoni Moda',Georgia,serif;font-style:italic;font-weight:400;color:#c1e6e0}
h2{font-weight:400;font-size:clamp(40px,5vw,74px);line-height:1.2;letter-spacing:-1px}
.project h3{font-size:31px;font-weight:400;letter-spacing:0}
header{background:linear-gradient(110deg,#071725,#123544);border-bottom:1px solid #a5e1dd24}
.hero .shade{background:radial-gradient(ellipse at 80% 0,#5fcece24,transparent 55%),linear-gradient(180deg,#03273433,transparent 35%,#061724e8)}
.hero:after{content:'';position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(112deg,transparent 0 10%,#cffbff06 12%,transparent 15% 22%);mix-blend-mode:screen}
.hero-title,.hero-top{z-index:1}
#work,#practice,.contact{position:relative;isolation:isolate;overflow:hidden}
#work{background:radial-gradient(ellipse at 95% 12%,#397b8b26,transparent 47%),linear-gradient(165deg,#102e3c80,transparent 60%)}
#work:before,#practice:before,.contact:before{content:'';position:absolute;width:1100px;height:720px;border:1px solid #a2e8e512;border-radius:48% 52% 60% 40%;top:80px;right:-650px;transform:rotate(-28deg);box-shadow:0 0 0 45px #91d9e706,0 0 0 100px #91d9e706,0 0 0 170px #91d9e705,0 0 0 250px #91d9e704;z-index:-1;pointer-events:none}
.project .image{border:1px solid #b4e9e21c;box-shadow:0 18px 42px #0004}
.project .image:after{background:#082a3c99;backdrop-filter:blur(14px);border:1px solid #d0f4ec2b}
.filters button{background:#a1dde707;backdrop-filter:blur(12px)}.filters .active,.filters button:hover{background:#b3ded9;color:#07303c;border-color:#b3ded9}
.interlude{position:relative;border-top:1px solid #b9e9e326;border-bottom:1px solid #b9e9e326;background:radial-gradient(ellipse at 15% 10%,#67b7bc40,transparent 65%),linear-gradient(120deg,#082e43b5,#032a39d9),url('assets/film-11.webp') center 55%/cover;box-shadow:inset 0 30px 70px #03162255}
.interlude p{font-size:43px;line-height:1.5;font-weight:400;font-style:italic;letter-spacing:0}
#practice{background:radial-gradient(ellipse at 0 50%,#2b7d8b21,transparent 65%)}
#practice:before{right:auto;left:-800px;top:250px;transform:rotate(24deg)}
.gallery button{padding:14px 14px 22px;border:1px solid #afe2dd20;background:linear-gradient(140deg,#72aeb710,#0b243c50);box-shadow:0 16px 45px #0002}.gallery span{margin:18px 4px 0}
.about{background:radial-gradient(ellipse at 5% 0,#5a9eac33,transparent 65%),linear-gradient(120deg,#143645,#0a2435 70%);border-block:1px solid #9dd8df22;position:relative}
.portrait{padding:13px 13px 18px;background:#b9e3dd08;border:1px solid #b2e9e32b;transform:rotate(-1.5deg);box-shadow:0 22px 60px #0004}
.portrait img{height:520px}.portrait>span{margin-left:5px}
.contact{background:radial-gradient(ellipse at 50% 115%,#418d9b50,transparent 65%),linear-gradient(180deg,#061724,#0b2b3d)}
.contact:before{top:170px;right:-300px;transform:rotate(-12deg);width:1400px;height:800px}
.contact h2{font-size:clamp(50px,7.6vw,112px);line-height:1.2;font-weight:400}.contact em{font-style:italic;font-weight:400;color:#b4dfda}
.email{font-family:'Manrope',sans-serif;font-size:clamp(17px,2.2vw,27px)}
dialog{background:radial-gradient(ellipse at 100% 0,#24596c70,transparent 70%),#09202f;border-color:#a1dfdf38;box-shadow:0 30px 100px #0008}
footer{background:#04121e}
@media(max-width:760px){h1{letter-spacing:-3px}h2{font-size:40px;letter-spacing:0}.project h3{font-size:29px}.interlude p{font-size:30px}.portrait img{height:390px}.gallery{gap:22px}.contact h2{font-size:49px}}
/* Engraved tidal contours and guided browsing */
#work:after,#practice:after,.contact:after,.about:after{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:url('assets/ocean-pattern.svg') center top/720px auto;opacity:.52;mask-image:linear-gradient(90deg,#0008,transparent 38%,#000)}
.about{isolation:isolate}.about:after{opacity:.3}.contact:after{opacity:.65;mask-image:radial-gradient(ellipse at center,transparent 10%,#000 85%)}
.section-top{background:#06172477;padding-top:12px;backdrop-filter:blur(8px)}
.project{transition:transform .45s}.project:hover{transform:translateY(-5px)}
.project .image:after{content:'EXPLORE THE STORY ↗';transform:translateY(8px);opacity:0;transition:opacity .35s,transform .35s}.project:hover .image:after,.project:focus-visible .image:after{opacity:1;transform:translateY(0)}
.project .image:before{content:'↗';position:absolute;z-index:1;right:20px;top:20px;width:38px;height:38px;display:grid;place-items:center;border-radius:50%;border:1px solid #fff7;background:#09243855;backdrop-filter:blur(8px);transition:background .3s,transform .3s}.project:hover .image:before{background:#a9dbd9;color:#082234;transform:rotate(45deg)}
.project .number{border-bottom:1px solid #93c8ce55;padding-bottom:5px}
.reveal{opacity:0;transform:translateY(26px);transition:opacity .8s,transform .8s}.reveal.visible{opacity:1;transform:none}
.hero-bottom a:after{content:'↓';display:inline-block;margin-left:14px;animation:drift 2s ease-in-out infinite}@keyframes drift{50%{transform:translateY(6px)}}
.scroll-progress{position:fixed;left:0;top:0;height:2px;background:#b2e9e5;z-index:20;width:0;box-shadow:0 0 15px #8bdadf}
dialog{width:min(1200px,96vw);padding:0;scroll-behavior:smooth;max-height:94svh;border:1px solid #99d5d944}
dialog[open]{animation:detailIn .4s ease-out}@keyframes detailIn{from{opacity:0;transform:translateY(30px) scale(.98)}to{opacity:1;transform:none}}
.close{position:sticky;float:right;right:18px;top:18px;z-index:4;border:1px solid #e1f9ed66;border-radius:25px;background:#052331bd;backdrop-filter:blur(15px);padding:12px 18px;margin:18px 18px -60px 0}
.detail-hero{position:relative}.detail-hero>img{width:100%;display:block;max-height:640px;object-fit:cover}.detail-hero:after{content:'';position:absolute;inset:40% 0 0;background:linear-gradient(transparent,#09202f)}
.detail-heading{padding:15px 6% 40px;position:relative;background:url('assets/ocean-pattern.svg') right center/600px auto}
#detail-body .detail-heading h2{font-size:clamp(40px,6vw,76px);margin:14px 0 20px}.detail-heading .eyebrow{display:block;margin-top:15px}
.detail-description{display:grid;grid-template-columns:1fr 2fr;gap:35px;padding-top:25px;border-top:1px solid var(--line)}
#detail-body .detail-description p{margin:0;max-width:660px;font-size:14px}.detail-description .credits{line-height:2.2}
.still-gallery{padding:0 6% 35px;display:grid;grid-template-columns:1fr 1fr;gap:20px}.still-gallery button{padding:0;border:0;background:#061724;overflow:hidden;position:relative}.still-gallery button img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .7s}.still-gallery button:hover img{transform:scale(1.035)}.still-gallery button:nth-child(3n+1){grid-column:1/-1}.still-gallery button:after{content:'⤢';position:absolute;right:14px;bottom:10px;font-size:24px;text-shadow:0 1px 5px #000}
.detail-nav{padding:28px 6%;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;background:#031725}.detail-nav button,.image-nav button{background:none;border:1px solid #a5dfd350;padding:12px 18px}.detail-nav button:hover,.image-nav button:hover{background:#98cfcf22}
.lightbox-image{display:block;width:100%;max-height:77svh;object-fit:contain;background:#03111d}.image-nav{padding:25px;display:flex;align-items:center;justify-content:space-between}.image-nav span{font-size:11px;color:var(--muted)}
.gallery button:hover{border-color:#b2e9e399}.gallery img{transition:filter .4s}.gallery button:hover img{filter:brightness(1.1)}
@media(max-width:760px){.project .image:after{opacity:1;transform:none;font-size:8px;padding:8px}.detail-description{grid-template-columns:1fr;gap:15px}.still-gallery{gap:12px;grid-template-columns:1fr}.still-gallery button:nth-child(n){grid-column:auto}.detail-nav{gap:15px}.detail-nav button{font-size:11px}.image-nav{padding:20px 12px}.image-nav button{font-size:11px}.reveal{transform:translateY(15px)}}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none}.hero-bottom a:after,dialog[open]{animation:none}}

/* A continuous passage from films into commissioned image-making. */
.interlude{border:0;box-shadow:none;padding:115px 8% 110px;text-align:left;isolation:isolate;overflow:hidden;background:radial-gradient(ellipse at 80% 45%,#32818b25,transparent 60%),linear-gradient(180deg,#06172400,#10334566 50%,#06172400);position:relative}
.interlude:before{content:'';position:absolute;inset:-100px 0;z-index:-1;background:linear-gradient(90deg,#061724 4%,#06172466 55%,#06172455),url('assets/still-22-7.webp') right 54%/70% auto no-repeat;opacity:.4;mask-image:linear-gradient(180deg,transparent,#000 35%,#000 65%,transparent)}
.interlude:after{content:'';position:absolute;inset:0;z-index:-1;background:url('assets/ocean-pattern.svg') center/900px auto;opacity:.18;mask-image:linear-gradient(180deg,transparent,#000 45%,transparent)}
.interlude-inner{max-width:1100px;margin:auto}.interlude p{font-family:'Bodoni Moda','Noto Serif SC','Songti SC',serif;font-style:normal;font-size:clamp(34px,4.8vw,70px);line-height:1.6;letter-spacing:1px;margin:24px 0 22px;font-weight:400}
.interlude .eyebrow{font-size:10px;letter-spacing:3px;color:var(--muted)}.interlude-link{font-size:11px;letter-spacing:1px;display:inline-block;padding-bottom:9px;border-bottom:1px solid #9cd2d64d;color:#bed9dd;transition:color .3s,border-color .3s}.interlude-link:hover{color:#fff;border-color:#d2f4f1}
#work{padding-bottom:35px}#practice{padding-top:35px}
@media(max-width:760px){.interlude{padding:80px 6%}.interlude p{font-size:34px;letter-spacing:0}.interlude:before{background-size:110% auto;opacity:.3}.interlude .eyebrow{font-size:8px;letter-spacing:2px}}

.interlude:before{background:linear-gradient(90deg,#06172488,#06172422 70%),url('assets/ocean-1.webp') center 40%/cover no-repeat;opacity:.85;mask-image:linear-gradient(180deg,transparent,#000 28%,#000 72%,transparent)}
@media(max-width:760px){.interlude:before{background-size:cover;opacity:.75}}
/* Continuous hero-to-about shoreline: no horizontal seam. */
.hero{background:#061724}
.hero .shade{background:radial-gradient(ellipse at 80% 0,#5fcece24,transparent 55%),linear-gradient(180deg,#03273422 0%,transparent 25%,#06172455 60%,#061724d9 85%,#061724 100%)}
.hero:after{mask-image:linear-gradient(180deg,#000 55%,transparent 100%)}
.about{border:0;background:radial-gradient(ellipse at 5% 55%,#5a9eac20,transparent 65%),linear-gradient(180deg,#061724 0%,#0c2533 42%,#0a2230 78%,#061724 100%);padding-top:85px;padding-bottom:110px}
.about:after{mask-image:linear-gradient(180deg,transparent,#000 30%,#000 65%,transparent)}
#work{background:radial-gradient(ellipse at 95% 25%,#397b8b20,transparent 47%),linear-gradient(180deg,#061724,transparent 55%)}
#work:before{mask-image:linear-gradient(180deg,transparent,#000 25%)}
#work:after{mask-image:linear-gradient(180deg,transparent,#000 180px)}
@media(max-width:760px){.about{padding-top:55px;padding-bottom:75px}}

.brand-section{grid-column:1/-1;margin-top:35px;padding-top:45px;border-top:1px solid #b2e9e329}
.brand-intro{display:grid;grid-template-columns:1fr 2fr;align-items:start;gap:12px 35px;margin-bottom:32px}
.brand-intro .eyebrow{padding-top:10px}.brand-intro h3{font-family:'Bodoni Moda','Noto Serif SC','Songti SC',serif;font-size:34px;font-weight:400;line-height:1.4;margin:0}.brand-intro p{grid-column:2;margin:0;font-size:12px}
.brand-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-top:1px solid #b2e9e318;border-left:1px solid #b2e9e318;background:#06172455;backdrop-filter:blur(8px)}
.brand-cell{height:105px;padding:24px 18px;display:flex;align-items:center;justify-content:center;border-right:1px solid #b2e9e318;border-bottom:1px solid #b2e9e318;transition:background .3s}
.brand-cell:hover{background:#a1d9dc0f}.brand-cell img{display:block;width:auto;height:auto;max-width:100%;max-height:57px;object-fit:contain;transition:transform .3s}.brand-cell:hover img{transform:scale(1.06)}
@media(max-width:1000px){.brand-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:760px){.brand-section{margin-top:0;padding-top:30px}.brand-intro{display:block}.brand-intro h3{font-size:28px;margin:14px 0}.brand-intro p{font-size:11px}.brand-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.brand-cell{height:90px;padding:18px 13px}.brand-cell img{max-height:48px}}
/* Curated partner wall: restrained hierarchy and staggered reveals. */
.brand-section{margin-top:8px;padding-top:54px;border-top:1px solid #b2e9e326;position:relative}
.brand-intro{grid-template-columns:1fr 2.3fr;gap:12px 40px;margin-bottom:40px}
.brand-intro h3{font-size:clamp(30px,3.5vw,48px);letter-spacing:-.5px}.brand-intro p{color:#96b3be;font-size:12px;line-height:1.9}
.brand-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:0 26px;border:0;background:none;backdrop-filter:none}
.brand-cell{height:116px;padding:28px 17px;border:0;border-bottom:1px solid #a3d6da1c;position:relative;opacity:0;transform:translateY(15px);transition:opacity .7s ease,transform .7s ease,background .35s}
.brand-cell:before{content:'';position:absolute;bottom:-1px;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,#9ddad8,transparent);transform:scaleX(0);transition:transform .5s;opacity:.65}
.brand-cell:hover{background:radial-gradient(ellipse,#7ac6d80d,transparent 75%)}.brand-cell:hover:before{transform:scaleX(1)}
.brand-cell img{max-width:100%;max-height:43px;opacity:.67;filter:grayscale(1);transition:opacity .4s,filter .4s,transform .5s;object-fit:contain}
.brand-cell:hover img{opacity:1;filter:grayscale(0);transform:translateY(-3px) scale(1.04)}
.brand-cell:nth-child(-n+6){height:140px;padding:32px 14px}.brand-cell:nth-child(-n+6) img{max-height:53px;opacity:.9}
.brand-cell.logo-visible{opacity:1;transform:translateY(0)}
.brand-footnote{display:flex;justify-content:space-between;align-items:center;margin-top:25px;color:#829faa;font-size:9px;letter-spacing:1.7px}.brand-footnote a{color:#b9dadc;padding:8px 0;letter-spacing:1px;transition:color .3s}.brand-footnote a:hover{color:#fff}
@media(max-width:1000px){.brand-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:0 20px}.brand-cell:nth-child(-n+6){height:116px;padding:28px 17px}.brand-cell:nth-child(-n+6) img{max-height:43px}}
@media(max-width:760px){.brand-section{padding-top:34px}.brand-intro{margin-bottom:24px}.brand-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:0 13px}.brand-cell,.brand-cell:nth-child(-n+6){height:96px;padding:24px 12px}.brand-cell img,.brand-cell:nth-child(-n+6) img{max-height:37px}.brand-footnote{font-size:8px;letter-spacing:.7px;gap:20px}.brand-cell img{opacity:.85;filter:none}}
@media(prefers-reduced-motion:reduce){.brand-cell{opacity:1;transform:none}}

/* Equal optical footprint, including the first row. */
.brand-cell,.brand-cell:nth-child(-n+6){height:116px;padding:18px 8px}
.brand-cell img,.brand-cell:nth-child(-n+6) img{width:100%;height:auto;max-width:240px;max-height:none;opacity:.8}
@media(max-width:760px){.brand-cell,.brand-cell:nth-child(-n+6){height:90px;padding:14px 2px}.brand-cell img,.brand-cell:nth-child(-n+6) img{width:100%;max-height:none;opacity:.85}}
/* Hard bounds prevent every logo, including tall marks, from overflowing. */
.brand-grid{align-items:stretch}
.brand-cell,.brand-cell:nth-child(-n+6){height:112px;min-height:112px;min-width:0;overflow:hidden;padding:20px 12px;display:flex;align-items:center;justify-content:center}
.brand-grid .brand-cell img,.brand-grid .brand-cell:nth-child(-n+6) img{display:block;position:static;width:100%;height:72px;max-width:190px;max-height:72px;min-width:0;object-fit:contain;flex:0 1 auto;transform:none;opacity:.85}
.brand-grid .brand-cell:hover img{transform:scale(1.025)}
@media(max-width:760px){.brand-cell,.brand-cell:nth-child(-n+6){height:88px;min-height:88px;padding:12px 5px}.brand-grid .brand-cell img,.brand-grid .brand-cell:nth-child(-n+6) img{width:100%;height:60px;max-width:150px;max-height:60px}}

/* Commercial contact sheet: even rows, open originals on selection. */
.still-gallery.commercial-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;padding-bottom:40px}
.still-gallery.commercial-grid button,.still-gallery.commercial-grid button:nth-child(n){grid-column:auto;aspect-ratio:4/3;min-width:0;height:auto;border:1px solid #aedbda20;background:#061724;overflow:hidden}
.still-gallery.commercial-grid button img{width:100%;height:100%;object-fit:contain;display:block}
.still-gallery.commercial-grid button:after{font-size:19px;right:10px;bottom:7px;opacity:.7}
@media(max-width:760px){.still-gallery.commercial-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.still-gallery.commercial-grid button,.still-gallery.commercial-grid button:nth-child(n){grid-column:auto;aspect-ratio:4/3}}

.portrait img{display:block;width:100%;height:auto;aspect-ratio:2/3;object-fit:contain;object-position:center;background:#102431}
@media(max-width:760px){.portrait{max-width:430px;width:100%;margin-inline:auto}.portrait img{height:auto;aspect-ratio:2/3;object-position:center}}

.trailer-section{padding:65px 4% 15px;background:radial-gradient(ellipse at top right,#24566b55,transparent 70%),#04131f}
.trailer-label{display:flex;justify-content:space-between;gap:18px;margin-bottom:16px;font-size:10px;letter-spacing:1.5px;color:#a5cdd1}
.project-trailer{display:block;width:100%;height:auto;aspect-ratio:16/9;background:#000;object-fit:contain;border:1px solid #98d5d733}
@media(max-width:760px){.trailer-section{padding:70px 3% 12px}.trailer-label{font-size:9px;letter-spacing:.5px}}

/* Trim the supplied screenshot rims in presentation, preserving source files. */
img[src*="fake-monk-"]{clip-path:inset(1%);transform:scale(1.025)}
.still-gallery button img[src*="fake-monk-"]{transform:scale(1.025)}
.still-gallery button:hover img[src*="fake-monk-"]{transform:scale(1.045)}
#detail-body>img.lightbox-image[src*="fake-monk-"]{clip-path:inset(1%);transform:none}

/* Trim thin screenshot borders without changing the original stills. */
.still-gallery button:has(img[src*="redemption-new-"]){background:transparent}
.still-gallery button img[src*="redemption-new-"]{clip-path:inset(.6%);transform:scale(1.014)}
.still-gallery button:hover img[src*="redemption-new-"]{transform:scale(1.035)}
#detail-body>img.lightbox-image[src*="redemption-new-"]{clip-path:inset(.6%);background:transparent}

.still-gallery.personal-grid button{aspect-ratio:3/4;background:rgba(0,0,0,.15)}
.still-gallery.personal-grid button img{width:100%;height:100%;object-fit:contain}
.gallery [data-gallery="201"] img{object-position:center 55%}

.personal-entry{display:block;width:100%;padding:0;border:0;background:transparent;color:inherit;text-align:left;cursor:pointer}.personal-preview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;overflow:hidden}.personal-preview img{width:100%;height:clamp(220px,35vw,480px);object-fit:cover;transition:transform .7s ease}.personal-entry:hover img{transform:scale(1.025)}.personal-entry>span{display:block;padding:24px 0;font-size:12px;letter-spacing:.15em;border-bottom:1px solid rgba(175,218,226,.25)}@media(max-width:600px){.personal-preview{gap:8px}.personal-preview img{height:220px}.personal-entry>span{font-size:10px;letter-spacing:.08em}}

/* Compact navigation and comfortable phone typography */
#menu-toggle{display:none}
@media(max-width:760px){
header{height:auto;min-height:72px;display:grid;grid-template-columns:1fr auto auto;gap:12px;padding:14px 6%;position:relative;z-index:5}
.wordmark{white-space:nowrap;font-size:16px;letter-spacing:1.5px}
#language{grid-column:2;grid-row:1;white-space:nowrap;min-height:40px;min-width:48px;padding:8px 10px}
#menu-toggle{display:block;grid-column:3;grid-row:1;border:1px solid var(--line);background:transparent;width:42px;height:40px;font-size:20px;line-height:1}
header nav{display:none;grid-column:1/-1;width:100%;padding:12px 0 4px;gap:0;border-top:1px solid var(--line);font-size:14px}
header.menu-open nav{display:grid;grid-template-columns:1fr 1fr;gap:4px 20px}
header nav a,header nav a[href="#practice"]{display:block;white-space:nowrap;padding:12px 0;line-height:1.4}
.hero{height:calc(100svh - 72px);min-height:620px;max-height:850px}
.hero-top{top:26px;left:6%;right:6%;font-size:9px;letter-spacing:1.5px}
.hero-title{left:8%;right:8%;bottom:38px}
.hero-title>p{font-size:12px;line-height:1.9;letter-spacing:.3px;max-width:260px;margin:0 0 26px}
h1{font-size:clamp(72px,20vw,136px);line-height:1.02;letter-spacing:-3px;margin:0 0 34px}
.hero-bottom{display:flex;flex-direction:column;align-items:flex-start;gap:22px;font-size:10px;line-height:1.8;letter-spacing:.5px}
.hero-bottom>span{max-width:100%;font-size:10px}
.hero-bottom a{white-space:nowrap;font-size:10px;letter-spacing:1px;padding-bottom:10px}
.section-top{flex-direction:column;gap:12px;line-height:1.6}.about p,.intro{font-size:14px;line-height:1.95}.about h2{font-size:38px;line-height:1.35}.filters{gap:9px}.filters button{padding:10px 13px}.project .meta{gap:12px}.project h3{line-height:1.3}.detail-heading h2{overflow-wrap:anywhere}footer{flex-wrap:wrap}
}
@media(prefers-reduced-motion:reduce){header nav{transition:none}}
