:root{--paper:#f2efe7;--ink:#121212;--blue:#153dce;--red:#d84028;--line:#c8c3b8;--g:clamp(22px,4vw,64px)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,"PingFang SC","Microsoft YaHei",sans-serif;-webkit-font-smoothing:antialiased}body.modal{overflow:hidden}a{color:inherit;text-decoration:none}button,input{font:inherit;color:inherit}button{border:0;background:none;cursor:pointer}img{display:block;width:100%;height:100%;object-fit:cover}svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.5}.skip{position:fixed;left:12px;top:-80px;background:#111;color:#fff;padding:12px;z-index:50}.skip:focus{top:12px}.site-head{height:86px;padding:0 var(--g);display:flex;align-items:center;justify-content:space-between;position:absolute;z-index:10;width:100%;color:#fff;mix-blend-mode:difference}.brand{display:flex;align-items:baseline;gap:12px}.brand b{font-family:"Songti SC",serif;font-size:22px;letter-spacing:.14em}.brand span{font-size:10px;letter-spacing:.22em}.site-head nav{display:flex;align-items:center;gap:38px;font-size:13px;letter-spacing:.12em}.site-head nav a,.search-open{position:relative;padding:8px 0}.site-head nav a:after,.search-open:after{content:"";position:absolute;left:0;bottom:2px;width:0;height:1px;background:currentColor;transition:.25s}.site-head nav a:hover:after,.search-open:hover:after{width:100%}.search-open{display:flex;align-items:center;gap:9px}.hero{height:max(760px,100svh);min-height:700px;position:relative;overflow:hidden;background:#d8d5ce}.hero-main{position:absolute;inset:0 11% 0 30%;overflow:hidden}.hero-main:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.06),transparent 45%,rgba(0,0,0,.18))}.hero-main img{transition:transform 1.2s cubic-bezier(.2,.75,.2,1)}.hero-main:hover img{transform:scale(1.035)}.hero-main span,.hero-card span{position:absolute;z-index:2;color:#fff;font-size:11px;letter-spacing:.13em}.hero-main span{right:22px;bottom:22px}.hero-copy{position:absolute;left:var(--g);top:19%;z-index:4;mix-blend-mode:difference;color:#fff;pointer-events:none}.hero-copy .eyebrow{font-size:11px;letter-spacing:.3em;margin:0 0 36px}.hero-copy h1{font-family:"Songti SC","STSong",serif;font-weight:400;font-size:clamp(66px,7vw,116px);line-height:1.12;letter-spacing:-.07em;margin:0}.hero-note{font-family:"Songti SC",serif;font-size:15px;line-height:1.9;margin:28px 0 34px 3px;letter-spacing:.08em}.discover{display:inline-flex;gap:45px;border-bottom:1px solid;padding:10px 0;font-size:13px;pointer-events:auto}.card-city{position:absolute;right:2.3%;top:18%;width:22%;height:29%;z-index:3;box-shadow:0 20px 70px #0004;overflow:hidden}.card-sea{position:absolute;right:7.5%;bottom:7%;width:17%;height:31%;z-index:3;box-shadow:0 20px 70px #0004;overflow:hidden}.hero-card img{transition:transform .7s}.hero-card:hover img{transform:scale(1.06)}.hero-card span{left:14px;bottom:14px}.hero-index{position:absolute;right:var(--g);bottom:28px;display:flex;align-items:center;gap:9px;font-size:10px;color:#fff;z-index:4}.hero-index i{display:block;width:70px;height:1px;background:#ffffff88}
.projects{display:grid;grid-template-columns:22% 1fr;gap:5%;padding:110px var(--g) 130px}.projects-intro{position:sticky;top:34px;height:fit-content}.kicker{font-size:9px;letter-spacing:.25em}.projects-intro h2{font-family:"Songti SC",serif;font-weight:400;font-size:clamp(60px,6vw,100px);line-height:1.05;margin:20px 0 55px;writing-mode:vertical-rl;letter-spacing:.08em}.projects-intro>p:last-child{font-family:"Songti SC",serif;font-size:13px;line-height:2;color:#555}.project-tools{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:18px;margin-bottom:34px;gap:22px}.filters{display:flex;gap:8px;flex-wrap:wrap}.filters button{padding:9px 16px;border:1px solid transparent;border-radius:99px;font-size:12px}.filters button.active{background:#111;color:#fff}.inline-search{width:210px;justify-content:space-between;border-bottom:1px solid #999;color:#666;font-size:12px}.project-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:54px 16px}.project{grid-column:span 2;opacity:0;transform:translateY(30px);animation:reveal .6s forwards}.project:nth-child(5n+1),.project:nth-child(5n+4){grid-column:span 3}.project figure{margin:0;overflow:hidden;background:#ddd;position:relative;aspect-ratio:1.48}.project.tall figure{aspect-ratio:.86}.project img{transition:transform .7s cubic-bezier(.2,.7,.2,1),filter .4s}.project a:hover img{transform:scale(1.045);filter:saturate(1.08)}.project figcaption{display:grid;grid-template-columns:1fr auto;gap:8px;margin-top:13px;align-items:end}.project h3{font-family:"Songti SC",serif;font-weight:400;font-size:clamp(20px,1.8vw,30px);margin:0}.project figcaption p{font-size:9px;color:#666;letter-spacing:.12em;margin:7px 0 0}.project figcaption>span{font-size:11px}.project[hidden]{display:none}.result-note{font-family:"Songti SC",serif;text-align:center;margin:70px 0 0;color:#777}
.statement{height:770px;position:relative;background:#0d0f10;color:#fff;overflow:hidden}.statement>img{opacity:.52;filter:saturate(.7);object-position:center}.statement:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#070808 0,rgba(7,8,8,.8) 32%,transparent 68%,#070808aa)}.statement-copy{position:absolute;z-index:2;left:var(--g);top:50%;transform:translateY(-50%);width:min(470px,43vw)}.statement-copy>p:first-child{font-size:9px;letter-spacing:.25em;margin-bottom:32px}.statement-copy h2{font-family:"Songti SC",serif;font-size:clamp(45px,4.5vw,76px);font-weight:400;line-height:1.25;margin:0 0 28px}.statement-copy h2+p{font-family:"Songti SC",serif;line-height:2;font-size:14px;color:#ddd}.statement-copy a{display:inline-flex;gap:45px;border-bottom:1px solid;padding:12px 0;margin-top:35px;font-size:13px}.vertical{position:absolute;z-index:2;right:var(--g);top:20%;writing-mode:vertical-rl;font-family:"Songti SC",serif;font-size:12px;letter-spacing:.34em;line-height:2}footer{height:130px;background:#0d0f10;color:#fff;border-top:1px solid #ffffff2b;padding:0 var(--g);display:flex;align-items:center;justify-content:space-between}footer>p{font-family:"Songti SC",serif;letter-spacing:.65em;font-size:14px}footer div{display:flex;align-items:center;gap:32px;font-size:11px}footer div a:last-child{border:1px solid #777;border-radius:50%;width:35px;height:35px;display:grid;place-items:center}
dialog{inset:0;margin:0;width:100%;height:100%;max-width:none;max-height:none;border:0;padding:0;background:#153dce;color:#fff}dialog::backdrop{background:#153dce}dialog[open]{animation:dialogIn .35s ease}.search-head{height:86px;padding:0 var(--g);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #ffffff4c;font-size:10px;letter-spacing:.25em}.search-close{font-size:38px;color:#fff;font-weight:200}.search-stage{padding:9vh var(--g)}.search-stage>label{font-family:"Songti SC",serif;font-size:clamp(52px,8vw,120px)}.search-line{display:flex;align-items:center;border-bottom:1px solid #fff;margin:35px 0 55px}.search-line input{width:100%;border:0;background:none;color:#fff;padding:18px 0;font-family:"Songti SC",serif;font-size:clamp(28px,4vw,58px);outline:0}.search-line input::placeholder{color:#ffffff77}.search-line span{font-size:30px}.search-results{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.search-result{display:grid;grid-template-columns:90px 1fr;gap:15px;align-items:center;border-top:1px solid #ffffff55;padding-top:15px}.search-result img{width:90px;height:65px}.search-result h3{font-family:"Songti SC",serif;font-size:18px;font-weight:400;margin:0 0 7px}.search-result p,.search-status{font-size:10px;color:#ffffffbb;letter-spacing:.1em}.search-status{margin-top:26px}.cursor{position:fixed;width:62px;height:62px;border-radius:50%;background:#d84028;color:#fff;display:grid;place-items:center;z-index:30;pointer-events:none;transform:translate(-50%,-50%) scale(0);transition:transform .18s}.cursor.show{transform:translate(-50%,-50%) scale(1)}.cursor span{font-size:9px;letter-spacing:.18em}@keyframes reveal{to{opacity:1;transform:none}}@keyframes dialogIn{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}
@media(max-width:900px){.hero-main{inset:0}.hero-main:after{background:linear-gradient(90deg,#0007,transparent 75%)}.card-city{right:4%;top:18%;width:27%}.card-sea{right:8%;width:23%}.projects{grid-template-columns:1fr;padding-top:80px}.projects-intro{position:static}.projects-intro h2{writing-mode:horizontal-tb;margin:15px 0 20px}.projects-intro>p:last-child br{display:none}.project-grid{margin-top:10px}.statement-copy{width:60vw}}
@media(max-width:620px){.site-head{height:70px}.brand b{font-size:18px}.brand span{font-size:8px}.site-head nav{gap:16px}.site-head nav>a{display:none}.search-open span{display:none}.hero{height:780px;min-height:680px}.hero-main{inset:0}.hero-main img{object-position:60% center}.hero-copy{top:14%;width:88%}.hero-copy h1{font-size:57px;line-height:1.17}.hero-copy .eyebrow{margin-bottom:25px}.hero-note{font-size:13px}.card-city{top:auto;bottom:8%;left:6%;right:auto;width:39%;height:23%}.card-sea{right:5%;bottom:13%;width:34%;height:27%}.hero-index{display:none}.projects{padding:65px 20px 80px}.projects-intro h2{font-size:58px}.project-tools{align-items:flex-start;flex-direction:column}.filters{gap:3px}.filters button{padding:8px 12px}.inline-search{width:100%}.project-grid{grid-template-columns:1fr 1fr;gap:35px 10px}.project,.project:nth-child(5n+1),.project:nth-child(5n+4){grid-column:span 1}.project:nth-child(3n+1){grid-column:1/-1}.project h3{font-size:19px}.statement{height:650px}.statement-copy{width:auto;right:55px}.statement-copy h2{font-size:43px}.vertical{right:16px}.statement>img{object-position:65%}.statement:after{background:#07080899}footer{height:auto;min-height:145px;padding:30px 20px;display:block}footer>p{letter-spacing:.32em;margin-bottom:28px}footer div{justify-content:space-between}.search-results{grid-template-columns:1fr}.search-stage{padding-top:7vh}.search-line{margin-bottom:30px}.search-result{grid-template-columns:70px 1fr}.search-result img{width:70px;height:52px}.cursor{display:none}}
@media(pointer:coarse){.cursor{display:none}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

/* Compact, professional studio introduction; work enters the first viewport. */
.hero{height:590px;min-height:590px;background:#e8e5dc}.hero-main{inset:0 0 0 53%}.hero-main:after{background:linear-gradient(90deg,#0003,transparent 45%)}.hero-copy{top:145px;left:var(--g);color:var(--ink);mix-blend-mode:normal;width:48%}.hero-copy h1{font-family:Arial,"PingFang SC",sans-serif;font-size:clamp(45px,4.3vw,72px);font-weight:650;line-height:1.22;letter-spacing:-.055em}.hero-copy .eyebrow{color:var(--blue);font-weight:600;margin-bottom:24px}.hero-note{font-family:Arial,"PingFang SC",sans-serif;color:#535353;font-size:14px;line-height:1.8;letter-spacing:0}.discover{font-weight:600}.card-city{width:18%;height:38%;right:4%;top:auto;bottom:-3%;box-shadow:0 16px 45px #0003}.card-sea{display:none}.hero-index{color:#222;right:auto;left:var(--g)}.hero-index i{background:#2226}.site-head{color:var(--ink);mix-blend-mode:normal}.projects{padding-top:64px}.projects-intro h2{font-family:Arial,"PingFang SC",sans-serif;font-weight:650;font-size:clamp(48px,5vw,78px);letter-spacing:-.06em;writing-mode:horizontal-tb;margin:18px 0 34px}.projects-intro{top:28px}.project h3{font-family:Arial,"PingFang SC",sans-serif;font-weight:550;letter-spacing:-.02em}.project figure,.project.tall figure{aspect-ratio:1.35}
@media(max-width:900px){.hero-main{inset:0 0 0 45%}.hero-copy{width:50%}.projects{padding-top:58px}.projects-intro h2{margin-bottom:18px}}
@media(max-width:620px){.hero{height:610px;min-height:610px}.hero-main{inset:270px 0 0 0}.hero-main img{object-position:center}.hero-copy{top:105px;width:auto;right:20px}.hero-copy h1{font-size:38px}.hero-note{font-size:12px;margin:17px 0 19px}.card-city{width:34%;height:24%;bottom:3%;right:5%}.hero-index{display:none}.projects{padding-top:46px}.projects-intro h2{font-size:47px}}

/* Screenshot-led overview header. */
body{background:#153dce}.site-head{position:absolute;top:16px;left:var(--g);width:calc(100% - var(--g)*2);height:58px;padding:0 18px 0 24px;border-radius:32px;background:#111;color:#fff;z-index:12}.site-head .brand{position:absolute;left:50%;transform:translateX(-50%)}.site-head .brand b{font-family:Arial,"PingFang SC",sans-serif;font-size:18px;letter-spacing:-.03em}.site-head .brand span{display:none}.site-head nav{width:100%;justify-content:flex-start;gap:28px}.site-head nav .search-open{margin-left:auto;background:var(--red);padding:12px 18px;border-radius:24px}.site-head nav .search-open:after{display:none}.hero{height:auto;min-height:0;margin:0;padding:88px var(--g) 24px;background:#153dce}.hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 80% 30%,#3155df 0,transparent 34%);opacity:.65;pointer-events:none}.overview-head,.overview-grid,.overview-foot{position:relative;z-index:1;background:var(--paper)}.overview-head{display:flex;align-items:baseline;justify-content:space-between;gap:30px;padding:27px 24px 18px;border-radius:26px 26px 0 0}.overview-head p{font-size:12px;letter-spacing:.2em;font-weight:700;margin:0}.overview-head h1{font-family:Arial,"PingFang SC",sans-serif;font-size:clamp(20px,2vw,31px);font-weight:600;letter-spacing:-.04em;margin:0}.overview-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;padding:0 24px 22px}.overview-card figure{height:154px;margin:0;border-radius:15px;overflow:hidden;background:#ddd}.overview-card img{transition:transform .55s cubic-bezier(.2,.7,.2,1)}.overview-card:hover img{transform:scale(1.045)}.overview-card h2{display:flex;align-items:center;justify-content:space-between;font-family:Arial,"PingFang SC",sans-serif;font-size:17px;line-height:1.3;font-weight:650;letter-spacing:-.03em;margin:15px 0 7px}.overview-card h2 span{font-size:15px;transition:transform .25s}.overview-card:hover h2 span{transform:translate(3px,-3px)}.overview-card p{font-size:12px;color:#666;margin:0}.overview-foot{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);border-radius:0 0 26px 26px;margin:0;padding:17px 24px 20px;font-size:10px;color:#666;letter-spacing:.07em}.overview-foot a{color:var(--ink);font-weight:650}.projects{background:var(--paper);padding-top:64px}.statement,footer{background:#0d0f10}
@media(max-width:900px){.site-head nav a:nth-child(2){display:none}.overview-grid{grid-template-columns:repeat(2,1fr)}.overview-card figure{height:170px}.overview-head{align-items:flex-start;flex-direction:column;gap:8px}}
@media(max-width:620px){.site-head{top:10px;left:12px;width:calc(100% - 24px);height:52px;padding:0 12px 0 16px}.site-head .brand{position:static;transform:none;margin-right:auto}.site-head nav{width:auto}.site-head nav a{display:none}.site-head nav .search-open{padding:10px;margin-left:0}.hero{padding:74px 12px 12px}.overview-head{padding:22px 17px 15px}.overview-head h1{font-size:22px;line-height:1.3}.overview-grid{grid-template-columns:1fr 1fr;gap:20px 10px;padding:0 17px 20px}.overview-card figure{height:105px;border-radius:11px}.overview-card h2{font-size:15px;margin-top:10px}.overview-card p{font-size:10px;line-height:1.5}.overview-foot{padding:15px 17px 17px}.overview-foot span:last-child{display:none}.projects{padding-top:42px}}
.hero:before{display:none}

/* Real portfolio content and contact dock. */
.overview-card{display:block;width:100%;padding:0;text-align:left;color:inherit}.overview-card figure{background:#d8d5ca}.overview-card figure img{object-position:center 18%}.overview-card:nth-child(3) figure img{object-position:center top}.projects-intro h2{font-size:clamp(45px,4.7vw,74px)}.projects-intro>p:last-child{font-family:Arial,"PingFang SC",sans-serif}.filters{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;max-width:calc(100vw - 470px)}.filters::-webkit-scrollbar{display:none}.filters button{white-space:nowrap}.project>button{display:block;width:100%;padding:0;text-align:left}.project figure,.project.tall figure{aspect-ratio:1.28}.project figure img{object-position:center 18%}.project:nth-child(3n+2) figure img{object-position:center 8%}.project figcaption{color:var(--ink)}
.statement-contact{display:inline-flex;align-items:center;gap:45px;border-bottom:1px solid #fff;color:#fff;padding:12px 0;margin-top:35px;font-size:13px}.contact-dock{position:fixed;right:18px;top:50%;transform:translateY(-50%);z-index:24}.contact-tab{width:48px;padding:15px 9px;border-radius:24px;background:var(--red);color:#fff;box-shadow:0 8px 30px #0003}.contact-tab span,.contact-tab b{display:block;writing-mode:vertical-rl;letter-spacing:.16em;font-size:11px}.contact-tab b{margin-top:6px}.contact-card{position:absolute;right:58px;top:50%;width:430px;padding:24px;border-radius:20px;background:#f7f7f2;color:#111;box-shadow:0 24px 80px #0004;opacity:0;visibility:hidden;transform:translate(15px,-50%);transition:.25s}.contact-dock.open .contact-card{opacity:1;visibility:visible;transform:translate(0,-50%)}.contact-close{position:absolute;right:14px;top:10px;font-size:25px}.contact-title small{font-size:9px;letter-spacing:.18em;color:var(--blue)}.contact-title h2{font-family:Arial,"PingFang SC",sans-serif;font-size:27px;margin:7px 0 5px}.contact-title p{font-size:12px;color:#666;margin:0}.contact-content{display:grid;grid-template-columns:170px 1fr;gap:22px;border-top:1px solid #d1cec5;margin-top:18px;padding-top:18px}.contact-content span,.contact-note b{font-size:11px}.contact-content img{width:160px;height:160px;margin-top:9px}.contact-note{background:#eceff9;padding:18px;align-self:end}.contact-note p{font-size:12px;line-height:1.9;color:#555;margin:9px 0 0}.work-dialog{width:min(1040px,92vw);height:auto;max-height:90vh;background:var(--paper);color:var(--ink);padding:0;overflow:auto}.work-dialog::backdrop{background:#0b1239dd}.work-dialog>img{width:100%;height:auto;max-height:70vh;object-fit:contain;background:#dedbd2}.work-dialog>div{padding:25px 30px 32px}.work-dialog>div>p:first-child{font-size:10px;letter-spacing:.18em;color:var(--blue)}.work-dialog h2{font-family:Arial,"PingFang SC",sans-serif;font-size:36px;margin:8px 0}.work-dialog h2+p{color:#666;font-size:14px}.work-close{position:fixed;right:calc(4vw + 12px);top:calc(5vh + 10px);z-index:2;width:42px;height:42px;border-radius:50%;background:#111;color:#fff;font-size:27px}.search-result{width:100%;padding:15px 0;text-align:left;color:#fff;background:transparent}.search-result div{text-align:left}
@media(max-width:1000px){.filters{max-width:none}.project-tools{align-items:flex-start;flex-direction:column}.inline-search{width:100%}}
@media(max-width:620px){.contact-dock{right:10px}.contact-tab{width:42px}.contact-card{position:fixed;right:-2px;top:50%;width:min(350px,calc(100vw - 28px));padding:20px}.contact-content{grid-template-columns:145px 1fr;gap:13px}.contact-content img{width:138px;height:138px}.contact-note{padding:13px}.work-dialog{width:100%;max-width:100%;max-height:92vh;margin:auto 0 0}.work-dialog>div{padding:20px}.work-dialog h2{font-size:28px}.work-close{right:12px;top:9vh}.filters{width:100%}.project-tools{gap:15px}.project figure,.project.tall figure{aspect-ratio:1.05}.overview-card:nth-child(n+3){display:block}}
html,body{overflow-x:hidden}
/* v8 — editorial portfolio covers */
.portfolio-cover{position:relative!important;display:block;aspect-ratio:4/3!important;margin:0!important;padding:42px 28px 24px!important;overflow:hidden;background:#e8e4da!important;border-radius:16px!important}.portfolio-cover .cover-kicker,.portfolio-cover .cover-category,.portfolio-cover .cover-mark{position:absolute;z-index:2;font:700 9px/1 Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase}.portfolio-cover .cover-kicker{top:18px;left:20px}.portfolio-cover .cover-category{top:18px;right:20px}.portfolio-cover .cover-mark{right:18px;bottom:14px;font-size:12px;letter-spacing:.05em}.cover-image{width:100%;height:100%;display:grid;place-items:center;overflow:hidden}.portfolio-cover img{width:100%!important;height:100%!important;object-fit:contain!important;transition:transform .5s cubic-bezier(.2,.8,.2,1);filter:drop-shadow(0 10px 14px rgba(0,0,0,.13))}.project a:hover .portfolio-cover img,.overview-card:hover .portfolio-cover img{transform:scale(1.035) rotate(-.5deg)}.theme-blue{background:#cad7ff!important;color:#123bff}.theme-red{background:#ffd3ca!important;color:#d82913}.theme-yellow{background:#f4df56!important;color:#111}.theme-ink{background:#242423!important;color:#fff}.theme-green{background:#c9e2cf!important;color:#17492b}.theme-violet{background:#d8cdfa!important;color:#4926a5}.theme-orange{background:#ffc59f!important;color:#932c12}.overview-card figure{height:auto!important}.overview-card .portfolio-cover{aspect-ratio:1.7/1!important;padding:38px 22px 18px!important}.overview-card .portfolio-cover img{object-fit:contain!important}.project>a{display:block;color:inherit;text-decoration:none}.project figure{height:auto!important}.project figcaption{padding-top:15px}.search-result{color:inherit;text-decoration:none}
.cover-copy{position:absolute;left:18px;bottom:16px;z-index:3;width:min(70%,380px);padding:12px 14px;background:#f7f3ea;color:#111;border-left:5px solid currentColor;box-shadow:0 8px 22px #0003;text-align:left}.cover-copy strong,.cover-copy small{display:block}.cover-copy strong{font-size:clamp(15px,1.35vw,23px);line-height:1.08;letter-spacing:-.035em}.cover-copy small{margin-top:5px;font:700 9px/1.3 Arial,sans-serif;color:#666;letter-spacing:.07em}.overview-card .cover-copy{left:13px;bottom:11px;padding:8px 10px}.overview-card .cover-copy strong{font-size:14px}.overview-card .cover-copy small{font-size:7px}.portfolio-cover .cover-mark{top:40px;bottom:auto}@media(max-width:700px){.cover-copy{width:75%;padding:9px 10px}.cover-copy strong{font-size:14px}.cover-copy small{font-size:8px}}
\n/* v13 mobile layout and unified contact route */
.contact-dock-link{position:fixed;right:18px;top:50%;transform:translateY(-50%);z-index:24;width:48px;padding:15px 9px;border-radius:24px;background:var(--red);color:#fff;box-shadow:0 8px 30px #0003;text-align:center}
.contact-dock-link span,.contact-dock-link b{display:block;writing-mode:vertical-rl;letter-spacing:.16em;font-size:11px}.contact-dock-link b{margin-top:6px}
@media(max-width:620px){
  .site-head{position:absolute;top:8px;left:10px;width:calc(100% - 20px);height:50px;border-radius:25px;padding:0 12px 0 16px}
  .site-head .brand b{font-size:16px;letter-spacing:0}.site-head nav{gap:0}.site-head nav .search-open{width:36px;height:36px;padding:0;display:grid;place-items:center;border-radius:50%}
  .hero{padding:68px 10px 10px}.overview-head{padding:18px 15px 13px;gap:5px}.overview-head p{font-size:8px}.overview-head h1{font-size:19px}
  .overview-grid{display:flex;overflow-x:auto;gap:10px;padding:0 15px 17px;scroll-snap-type:x mandatory;scrollbar-width:none}.overview-grid::-webkit-scrollbar{display:none}.overview-card{flex:0 0 82%;scroll-snap-align:start}.overview-card figure{aspect-ratio:1.55/1!important;height:auto!important}.overview-card h2{font-size:16px}.overview-card p{font-size:11px}
  .overview-foot{padding:13px 15px 15px;font-size:9px}.overview-foot a{margin-left:auto}
  .projects{display:block;padding:42px 14px 72px}.projects-intro{margin-bottom:28px}.projects-intro h2{font-size:40px;margin:10px 0 12px}.projects-intro>p:last-child{font-size:12px;line-height:1.7;margin:0}
  .project-tools{margin-bottom:22px}.filters{flex-wrap:nowrap;width:calc(100vw - 28px);overflow-x:auto;padding-bottom:4px}.filters button{flex:0 0 auto;padding:8px 12px}
  .project-grid{display:grid;grid-template-columns:1fr;gap:34px}.project,.project:nth-child(5n+1),.project:nth-child(5n+4),.project:nth-child(3n+1){grid-column:1/-1}.project figure,.project.tall figure{aspect-ratio:4/3!important}.project figcaption{padding-top:10px;margin-top:0}.project h3{font-size:21px}
  .portfolio-cover{padding:34px 18px 18px!important;border-radius:13px!important}.portfolio-cover .cover-kicker,.portfolio-cover .cover-category{top:14px;font-size:8px}.portfolio-cover .cover-kicker{left:14px}.portfolio-cover .cover-category{right:14px}.cover-copy{left:12px;bottom:12px;width:78%;padding:9px 10px}.cover-copy strong{font-size:15px}.cover-copy small{font-size:7px}.portfolio-cover .cover-mark{top:32px;right:13px;font-size:10px}
  .statement{height:590px}.statement-copy{left:20px;right:38px;width:auto}.statement-copy h2{font-size:36px}.statement-copy h2+p{font-size:13px;line-height:1.8}.vertical{display:none}
  footer{padding:28px 16px;min-height:158px}footer>p{font-size:12px}footer div{gap:18px;justify-content:flex-start;flex-wrap:wrap}
  .contact-dock-link{right:10px;top:auto;bottom:18px;transform:none;width:auto;padding:11px 15px;border-radius:999px;display:flex;gap:5px}.contact-dock-link span,.contact-dock-link b{writing-mode:horizontal-tb;letter-spacing:.08em}.contact-dock-link b{margin:0}
}
/* v14 — separate mobile artwork and typography zones */
@media(max-width:620px){
  .portfolio-cover{padding:34px 14px 70px!important}
  .portfolio-cover .cover-image{height:100%;border-radius:5px}
  .portfolio-cover .cover-copy{left:14px;right:14px;bottom:10px;width:auto;min-height:48px;padding:8px 10px;background:#f7f3ea;box-shadow:none;border-left-width:4px;display:flex;flex-direction:column;justify-content:center}
  .portfolio-cover .cover-copy strong{font-size:14px;line-height:1.15}
  .portfolio-cover .cover-copy small{font-size:7px;line-height:1.25;margin-top:4px}
  .overview-card .portfolio-cover{padding:34px 12px 67px!important}
  .overview-card .cover-copy{left:12px;right:12px;bottom:9px;width:auto;padding:7px 9px}
}
/* v15 — separate artwork and typography on every viewport */
.portfolio-cover{padding-bottom:82px!important}
.portfolio-cover .cover-image{height:100%;border-radius:6px}
.portfolio-cover .cover-copy{left:18px;right:18px;bottom:13px;width:auto;min-height:54px;padding:9px 12px;box-shadow:none;display:flex;flex-direction:column;justify-content:center}
.overview-card .portfolio-cover{aspect-ratio:1.52/1!important;padding-bottom:72px!important}
.overview-card .cover-copy{left:14px;right:14px;bottom:10px;width:auto;min-height:48px}
@media(max-width:620px){
  .portfolio-cover{padding-bottom:70px!important}
  .overview-card .portfolio-cover{aspect-ratio:1.55/1!important;padding-bottom:67px!important}
}
/* v16 — animated technology-line statement background */
.statement{background:#080a0d;isolation:isolate}
.statement>img{display:none}
.statement:before{content:"";position:absolute;z-index:0;inset:-18%;background:
  radial-gradient(circle at 18% 28%,#3e6cff 0 2px,transparent 3px),
  radial-gradient(circle at 71% 35%,#5a7dff 0 2px,transparent 3px),
  radial-gradient(circle at 86% 73%,#36c9ff 0 2px,transparent 3px),
  linear-gradient(118deg,transparent 0 17%,rgba(76,112,255,.36) 17.1% 17.25%,transparent 17.35% 100%),
  linear-gradient(118deg,transparent 0 29%,rgba(51,196,255,.18) 29.1% 29.2%,transparent 29.3% 100%),
  linear-gradient(28deg,transparent 0 61%,rgba(76,112,255,.28) 61.1% 61.25%,transparent 61.35% 100%),
  linear-gradient(28deg,transparent 0 76%,rgba(51,196,255,.16) 76.1% 76.2%,transparent 76.3% 100%);
  background-size:720px 480px,850px 560px,620px 430px,760px 520px,900px 620px,820px 580px,680px 460px;
  opacity:.72;animation:techDrift 18s ease-in-out infinite alternate;will-change:transform}
.statement:after{content:"";position:absolute;z-index:0;inset:0;background:
  radial-gradient(circle at 72% 42%,rgba(31,75,210,.18),transparent 32%),
  linear-gradient(90deg,#080a0d 0,rgba(8,10,13,.9) 38%,rgba(8,10,13,.35) 72%,#080a0dcc)}
.statement-copy,.statement .vertical{z-index:2}
@keyframes techDrift{from{transform:translate3d(-2%,-1%,0)}to{transform:translate3d(3%,2%,0)}}
@media(max-width:620px){.statement:before{inset:-25%;background-size:430px 310px,520px 360px,390px 280px,480px 340px,550px 390px,460px 330px,420px 300px;opacity:.62}.statement:after{background:linear-gradient(90deg,#080a0df2,rgba(8,10,13,.67))}}
@media(prefers-reduced-motion:reduce){.statement:before{animation:none}}
\n/* v17 — image-first cards and simplified search signal */
.search-signal{width:44px;height:38px!important;padding:0!important;display:grid!important;place-items:center;background:var(--red);border-radius:999px}
.search-signal i{display:block;width:8px;height:8px;border-radius:50%;background:#f4df56;box-shadow:0 0 0 5px rgba(244,223,86,.10),0 0 18px rgba(244,223,86,.7)}
.portfolio-cover{padding:42px 24px 22px!important}
.overview-card .portfolio-cover{aspect-ratio:1.7/1!important;padding:38px 20px 18px!important}
.project-tools{justify-content:flex-start}.filters{max-width:100%}
@media(max-width:620px){
 .search-signal{width:36px;height:36px!important}
 .portfolio-cover{padding:34px 14px 16px!important}
 .overview-card .portfolio-cover{aspect-ratio:1.62/1!important;padding:34px 12px 14px!important}
}

/* v18 — featured cards scroll to matching projects */
.project{scroll-margin-top:28px}
