html,body{height:100%;overflow:hidden}.arc-home>.shell{height:100svh;display:flex;flex-direction:column}.site-header{flex:none}#home-view{flex:1;min-height:0}.arc-hero{height:100%;max-height:none;min-height:0}.arc-image{width:clamp(100px,12vw,175px);height:clamp(130px,15vw,210px)}.arc-1{top:52%}.arc-2{top:28%}.arc-3{top:9%}.arc-4{top:1%}.arc-5{top:2%}.arc-6{top:14%}.arc-7{top:36%}.arc-8{top:65%}.arc-9{top:85%}.arc-10{top:95%}.arc-copy{padding-top:0;position:absolute;top:41%;left:50%;transform:translateX(-50%);margin:0}.arc-copy h1{font-size:clamp(26px,3vw,39px);margin:10px 0}.arc-copy h1 em{font-size:clamp(27px,3.3vw,43px)}.arc-copy p{margin:12px 0 6px}.arc-strengths{top:auto;bottom:7%}.arc-scroll{bottom:1%;font-size:10px;letter-spacing:1px}.arc-actions{margin-top:12px}.detail-mode .edition{visibility:hidden}[hidden]{display:none!important}.project-view,.works-view{flex:1;min-height:0;display:flex;flex-direction:column;padding-bottom:15px}.viewer-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;min-height:60px;flex:none;font-size:11px;border-bottom:1px solid #eee}.viewer-heading h2{font-size:19px;font-weight:500;margin:0;text-align:center}.viewer-heading h2:focus{outline:none}.slide-content{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;padding:15px 0}.slide-content>img{width:100%;height:100%;object-fit:contain}.slide-controls{display:flex;align-items:center;justify-content:center;gap:35px;flex:none;padding:12px 0}.slide-controls button{border:1px solid #ddd;background:white;padding:11px 20px;border-radius:25px;cursor:pointer;font-size:12px}.slide-controls button:disabled{opacity:.3;cursor:default}.slide-controls span{font-size:12px;min-width:55px;text-align:center}.slide-caption{display:flex;justify-content:center;gap:20px;flex-wrap:wrap;font-size:11px;color:#787e72;line-height:1.8;min-height:22px}.slide-caption a{color:#2d3927;border-bottom:1px solid}.text-slide{max-width:800px;padding:30px;background:#f8f9f5;border-radius:20px}.text-slide h2{font-size:26px;line-height:1.5;font-weight:500}.text-slide h3{font-size:16px}.text-slide p,.text-slide li{font-size:14px;line-height:2;color:#656c5f}.text-slide .meta{font-size:11px;color:#7d8478}.text-slide .tags{display:flex;gap:10px;font-size:11px;color:#69735f;flex-wrap:wrap}.text-slide .notice{font-size:11px;line-height:1.8;color:#7f8178;margin-top:18px}.work-menu{flex:1;min-height:0;display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:1fr 1fr;gap:20px;padding:25px 0}.work-menu a{min-height:0;display:flex;flex-direction:column;gap:10px;font-size:13px}.work-menu img{width:100%;height:calc(100% - 30px);object-fit:contain;border-radius:15px;background:#f5f5f1}.work-menu span{flex:none}
@media(max-height:800px) and (min-width:681px){.site-header{height:65px!important}.arc-image{width:140px;height:165px}.arc-copy{top:38%}.arc-copy h1{font-size:29px}.arc-copy h1 em{font-size:32px}.arc-copy p{font-size:11px}.arc-copy .kicker{font-size:8px}.arc-actions .button{padding:11px 20px}.arc-strengths{bottom:6%}.arc-strengths strong{font-size:15px;margin-bottom:6px}}
@media(max-width:680px){.arc-home .site-header{height:68px}.arc-image{width:78px;height:98px}.arc-1{top:37%;left:0}.arc-2{top:17%}.arc-3{top:4%}.arc-4{top:0}.arc-5{top:4%}.arc-6{top:17%}.arc-7{top:39%}.arc-copy{top:34%;width:87%}.arc-copy h1{font-size:27px;margin:11px 0}.arc-copy h1 em{font-size:24px}.arc-copy p{font-size:10px;line-height:1.85;margin-top:15px}.arc-phone{font-size:11px}.arc-strengths{bottom:8%;left:0;right:0}.arc-strengths strong{font-size:13px;margin-bottom:7px}.arc-strengths span{font-size:8px}.arc-scroll{bottom:3%}.viewer-heading{gap:8px;font-size:10px;min-height:60px}.viewer-heading h2{font-size:15px}.viewer-heading>a{white-space:nowrap}.slide-controls{gap:12px}.slide-controls button{padding:10px 13px;font-size:11px}.slide-caption{font-size:10px;gap:10px}.text-slide{padding:18px}.text-slide h2{font-size:20px;margin:5px 0 15px}.text-slide p,.text-slide li{font-size:12px;line-height:1.8}.text-slide .notice{font-size:10px}.work-menu{grid-template-columns:1fr 1fr;grid-template-rows:repeat(3,1fr);gap:18px 14px;padding:20px 0}.work-menu a{font-size:11px}.text-slide .tags{gap:6px;font-size:10px}}
@media(max-height:680px) and (max-width:680px){.arc-image{width:62px;height:78px}.arc-copy{top:27%}.arc-copy h1{font-size:24px}.arc-copy h1 em{font-size:22px}.arc-copy p{margin-top:10px}.arc-strengths{bottom:5%}.arc-copy .kicker{font-size:7px}.arc-actions .button{padding:10px 15px}.arc-scroll{display:none}}
/* Maixi portfolio: native vertical scrolling through the complete image sequence. */
.project-view.is-continuous{padding-bottom:8px}
.project-view.is-continuous .slide-content{display:block;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;touch-action:pan-y;scrollbar-width:thin;scrollbar-color:#ccd3c6 transparent;padding:24px 8px 24px 0;scroll-behavior:smooth;outline-offset:-3px}
.project-view.is-continuous .portfolio-page{margin:0 0 24px;width:100%}
.project-view.is-continuous .portfolio-page:last-child{margin-bottom:0}
.project-view.is-continuous .portfolio-page img{display:block;width:100%;height:auto;object-fit:contain;background:#fafafa;aspect-ratio:1500/844}
.project-view.is-continuous .portfolio-page figcaption{font-size:10px;line-height:1.8;color:#91988b;padding:10px 2px 0}
.project-view.is-continuous .slide-controls{display:none}
.project-view.is-continuous .slide-caption{flex:none;min-height:35px;padding:9px 0 0;align-items:center;border-top:1px solid #f0f1ed;font-size:11px;gap:24px}
@media(max-width:680px){.project-view.is-continuous .slide-content{padding-top:15px;padding-right:4px}.project-view.is-continuous .portfolio-page{margin-bottom:18px}.project-view.is-continuous .slide-caption{gap:16px;font-size:10px}.project-view.is-continuous .portfolio-page figcaption{font-size:9px;padding-top:7px}}
@media(prefers-reduced-motion:reduce){.project-view.is-continuous .slide-content{scroll-behavior:auto}}
/* Consistent continuous reading for every project, including mixed text and images. */
.project-view.is-continuous .portfolio-page img{aspect-ratio:auto;width:100%;height:auto}
.project-view.is-continuous .portfolio-page-label{font-size:10px;line-height:1.8;color:#91988b;margin:0;padding:10px 2px 0}
.project-view.is-continuous .portfolio-text-page{padding:14px 0}
.project-view.is-continuous .portfolio-text-page .text-slide{max-width:900px;width:100%;margin:0 auto;padding:35px 40px}
.project-view.is-continuous .portfolio-attachment{display:inline-block;font-size:11px;color:#637056;border-bottom:1px solid;margin:8px 2px 0;padding-bottom:3px}
.project-view.is-continuous .slide-caption{flex-wrap:wrap}
@media(max-width:680px){.project-view.is-continuous .portfolio-text-page .text-slide{padding:23px 20px}.project-view.is-continuous .portfolio-page-label{font-size:9px}.project-view.is-continuous .portfolio-text-page{padding:5px 0}}
