/* CO wireframes — responsive layouts and reference motion. */
.project-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1s var(--ease)}.project-card:hover .project-image{transform:scale(1.035)}
.project-image-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(237,237,237,.13) 18.75%,rgba(12,34,81,.1) 74.519%);pointer-events:none}
.featured .project-image-shade{background:linear-gradient(180deg,rgba(229,224,217,.19) 20.474%,rgba(11,30,53,.2) 74.655%)}
.featured .landing-placeholder .project-visual{background:rgba(196,196,196,.2)}
.about-intro{color:#6f6f6d}.about-body{color:#b8b8b6;opacity:1;filter:none}
body[data-page=home] .contact-details{color:#75a5ce}
.header{color:var(--blue-dark);height:78px;padding:10px 40px;background:rgba(247,247,245,.72);backdrop-filter:blur(30px)}
.header a[aria-current=page]{font-weight:600}
.title-word{display:inline-block;white-space:nowrap;overflow:hidden;vertical-align:bottom}.title-char{display:inline-block;transform:translateY(110%) rotate(4deg);opacity:0;transition:transform 1s var(--ease),opacity .8s;transition-delay:calc(var(--i)*.035s)}.in-view .title-char{opacity:1;transform:none}
main{overflow:clip}.hero{position:relative;padding:88px var(--pad);isolation:isolate;gap:32px;min-height:534px}
.hero-background{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.71;z-index:-2;animation:hero-image 1.8s var(--ease) both}
.hero-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,transparent 19.644%,rgba(88,88,88,.53))}
@keyframes hero-image{from{transform:scale(1.08)}to{transform:scale(1)}}
.hero-inner{position:relative}.hero-name{font-size:clamp(64px,11.667vw,168px);width:100%}.hero-char{background:linear-gradient(90deg,#ecdfd2 25%,#5192c8 99.038%);background-clip:text;-webkit-background-clip:text;color:transparent}
.hero-char{background-size:1000% 100%;background-position:calc(var(--i)*11.111%) center}
.hero-description{color:var(--blue);position:relative}.hero-role{color:var(--surface);position:relative}
.featured .project-grid{grid-template-columns:1fr}.featured .project-info h3{font-size:48px;font-weight:600;color:var(--blue)}
.project-meta>span{background:#fff;border-radius:9px;padding:0 10px}.project-meta>span:nth-last-child(2){background:none;padding:0}.project-meta>.project-link{background:var(--surface)}
.project-link{transition:color .3s,background .3s}.project-card:hover .project-link{color:white;background:var(--blue)}
.project-visual{transition:background .6s var(--ease)}.project-card:hover .project-visual{background:#d9e1e6}.project-card:hover .project-info h3{color:var(--blue)}
.project-card.is-pending .placeholder-label{font-size:16px}.is-pending{opacity:.72}
.service-visual{height:400px;position:relative;overflow:hidden;background:var(--surface)}
.service-visual img{width:100%;height:100%;object-fit:cover;transform:translateY(var(--parallax,0px)) scale(1.08);transition:transform 1.1s var(--ease)}
.service-card:hover .service-visual img{transform:translateY(var(--parallax,0px)) scale(1.13)}
.service-grid{row-gap:40px}.service-grid .service-card{gap:20px}.tags{gap:4px 20px}.service-detail>p{font-size:20px}
.about-section{gap:24px}.about-intro{font-size:64px;line-height:1.2;font-weight:700;color:var(--muted)}
.about-split{grid-template-columns:minmax(0,1fr) minmax(0,545px);gap:8px;align-items:center}.portrait{height:509px;border-radius:10px;position:relative}
.portrait img{width:100%;height:100%;object-fit:cover;transform:translateY(var(--parallax,0px)) scale(1.07)}
.portrait:hover img{transform:translateY(var(--parallax,0px)) scale(1.1)}
.about-statement{height:509px;gap:24px}.about-statement>.about-body{padding:10px;font-size:32px;line-height:1.1;font-weight:500;margin:0;color:var(--line)}
.read-char{color:var(--line);filter:none}.about-intro .read-char.is-lit{color:var(--ink)}
.contact-portrait{background:none;height:537px}.contact-portrait>img{width:100%;height:100%;object-fit:contain}
.socials{bottom:16px;left:15px}.socials img{flex:none}.socials button:first-child img{width:22.5184px;height:22.5184px}
.contact-profile{min-height:610px}.contact-details{overflow:hidden}.contact-details a{font-size:clamp(17px,1.737vw,25px)}
.contact-split{grid-template-columns:minmax(0,490fr) minmax(0,600fr);gap:clamp(40px,12.08vw,174px)}
.contact-form{min-width:0}.field input,.field select,.field textarea{border:1px solid transparent}.field input:hover,.field select:hover,.field textarea:hover{background:#f7f7f5c2}
.cta{position:relative}.form-note{font-size:13px;opacity:.7}.footer-bottom{font-size:clamp(12px,1.389vw,20px)}
.footer-name{font-size:clamp(48px,13.889vw,200px);padding:10px 0 14px;touch-action:pan-y}.footer-letter{transform-origin:center bottom}
.work-section .section-heading>p{color:var(--muted)}.work-year{margin:0}.work-section .project-meta{font-size:clamp(12px,1.15vw,17px);gap:8px}
.work-section .project-meta>span{white-space:normal;text-align:center}.work-section .project-info{gap:16px}.work-section .project-grid{row-gap:40px}
.filters button{white-space:normal}.filter-enter{animation:filter-in .65s var(--ease) both}@keyframes filter-in{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.detail-meta{margin:0}.detail-meta>div{padding:5px;background:var(--surface)}.detail-meta dd{line-height:1.1}
.case-study .section>h2{color:var(--blue)}.case-study .section>p{max-width:100%}.muted{color:var(--muted)}.small{font-size:16px;line-height:1.6}
.case-navigation{flex-direction:row;justify-content:space-between;border-top:1px solid #b8b8b650;color:var(--blue);font-size:24px;font-weight:600}
.movera-hero{height:600px;position:relative;isolation:isolate;padding:56px;overflow:hidden;background:var(--blue);color:var(--blue-light)}
.movera-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.43;transform:translateY(var(--parallax,0px)) scale(1.08);z-index:-1;transition:transform .8s var(--ease)}
.movera-hero-content{display:grid;grid-template-columns:1fr 1fr;gap:40px;height:100%;position:relative}.movera-hero-copy{display:flex;flex-direction:column;justify-content:center;gap:22px;min-width:0}
.eyebrow{font-size:20px;line-height:1.4;color:var(--blue)}.movera-hero .eyebrow{color:var(--blue-light)}
.movera-hero h2{font-size:88px;line-height:1.2;font-weight:800;color:var(--bg)}.movera-hero h3{font-size:48px;line-height:1.2;font-weight:600;color:var(--surface)}
.movera-moments{display:flex;flex-direction:column;justify-content:space-between;gap:20px}.scenario-list{display:flex;flex-direction:column;gap:16px}.scenario{padding:21px;background:#e8f1fa;color:var(--ink);display:flex;flex-direction:column;gap:12px;min-height:128px;justify-content:center}.scenario>p:last-child{font-size:32px;line-height:1.1;font-weight:500}.movera-hero .scenario .eyebrow{color:var(--blue)}
.research-panel{background:var(--blue-light);padding:24px;display:flex;flex-direction:column;gap:20px}.panel-title{font-size:24px;font-weight:700;color:var(--blue);line-height:1.2}
.research-grid{display:grid;gap:20px;min-width:0}.research-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.research-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}
.research-card{background:#fff;padding:22px;display:flex;flex-direction:column;gap:16px;min-width:0}.research-card h3{font-size:32px;line-height:1.2;font-weight:500;overflow-wrap:anywhere}.research-card>p:not(.eyebrow){color:var(--muted);line-height:1.55}.insight-strip{background:var(--blue);color:var(--blue-light);padding:18px}
.competitor .eyebrow{font-size:48px;font-weight:700;line-height:1.2}.competitor .research-card{background:#f7f7f5}.competitor h3{font-size:24px;font-weight:700}.competitor .research-card>p:last-child{font-size:17px}
.bar-chart{display:flex;flex-direction:column;gap:16px;margin:12px 0}.bar-row{display:grid;grid-template-columns:110px 1fr 42px;gap:12px;align-items:center;font-size:17px}.bar-row strong{font-weight:500;color:var(--blue)}.bar-track{height:12px;background:#e8f1fa;overflow:hidden}.bar{display:block;height:100%;width:var(--bar);background:var(--blue);transform:scaleX(0);transform-origin:left;transition:transform 1.2s var(--ease) .2s}.in-view .bar{transform:scaleX(1)}
.voc-highlight{background:#e8f1fa}.stat{font-size:64px;line-height:1.1;color:var(--blue)}.voc-highlight h3{font-size:24px}.key-finding{background:var(--blue);padding:24px;color:var(--bg);display:flex;flex-direction:column;gap:16px}.key-finding .eyebrow{color:var(--blue-light)}.key-finding>p:last-child{font-size:32px;font-weight:500;line-height:1.25}
.strategy .research-card{background:#e8f1fa}.strategy h3{font-size:32px}.strategy .research-card>p:last-child{color:var(--blue);font-size:17px}.result-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.result-stats>div{padding:24px;background:var(--blue-light);display:flex;flex-direction:column;gap:16px}.result-stats strong{font-size:48px;line-height:1.2;color:var(--blue)}.result-stats span{color:var(--muted)}
.concept-header{display:flex;justify-content:space-between;gap:20px;font-size:18px;color:var(--blue)}.concept-header>strong{font-size:24px}.landing-concept .research-card{justify-content:center;background:#f7f7f5}.landing-concept .research-card h3{font-size:48px;font-weight:600}.concept-cta{background:var(--blue);color:white;padding:16px;font-size:20px;width:max-content}.landing-concept .scenario{min-height:100px;padding:16px}.landing-concept .scenario>p:last-child{font-size:24px}.landing-concept .eyebrow{font-size:16px}.lessons .research-card{background:var(--blue-light)}.lessons h3{font-size:24px}.next-plan{background:var(--blue-dark)}.next-plan>h3{font-size:32px;font-weight:500;line-height:1.25}.validation-questions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.validation-questions>span{padding:18px;background:#e8f1fa;color:var(--blue);font-size:17px}
@media(min-width:1441px){body{max-width:none}.header{max-width:none;padding-left:max(40px,calc((100vw - 1440px)/2 + 40px));padding-right:max(40px,calc((100vw - 1440px)/2 + 40px))}}
@media(max-width:1100px){.header{padding:10px 24px}.hero{padding-top:64px;padding-bottom:64px;min-height:460px}.featured .project-info h3{font-size:38px}.service-visual{height:32vw}.about-intro{font-size:48px}.about-split{grid-template-columns:1.2fr 1fr;gap:24px}.portrait{height:440px}.about-statement{height:440px}.about-statement>.about-body{font-size:24px;line-height:1.25}.contact-split{gap:48px}.contact-portrait{height:440px}.contact-profile{min-height:0}.movera-hero{padding:32px;height:auto;min-height:540px}.movera-hero h2{font-size:64px}.movera-hero h3{font-size:34px}.movera-hero-content{gap:24px}.eyebrow{font-size:16px}.scenario>p:last-child{font-size:24px}.research-card{padding:18px}.research-card h3,.strategy h3{font-size:26px}.research-card>p{font-size:17px}.bar-row{grid-template-columns:90px 1fr 36px;gap:8px;font-size:14px}.bar-chart{gap:14px}.research-grid{gap:16px}.key-finding>p:last-child{font-size:26px}.next-plan>h3{font-size:26px}.validation-questions{gap:8px}.validation-questions>span{font-size:14px;padding:12px}}
@media(max-width:700px){.header{height:76px}.hero{padding:44px 24px;min-height:350px}.hero-inner{gap:60px}.hero-name{font-size:11.1vw}.hero-description{font-size:23px;line-height:1.3;max-width:330px}.hero-role{font-size:12px;line-height:1.6}.featured .project-info h3{font-size:30px}.featured .project-visual{height:220px}.project-meta{gap:6px}.project-meta>span{padding:2px 7px}.project-info{gap:14px}.project-visual{height:62vw}.service-visual{height:65vw;max-height:430px}.service-detail>p{font-size:16px}.service-grid{gap:44px}.service-grid .service-card{gap:16px}.tags{gap:6px 10px}.about-intro{font-size:32px;line-height:1.3}.about-split{grid-template-columns:1fr;gap:24px}.portrait{height:320px}.about-statement{height:auto;gap:28px;align-items:flex-start;text-align:left}.about-statement>.about-body{font-size:22px;line-height:1.4;padding:0}.about-statement .cta{width:100%}.contact-split{grid-template-columns:1fr;gap:36px}.contact-portrait{height:360px;max-width:360px}.contact-profile{max-width:100%}.contact-details a{font-size:21px}.contact-form .cta{justify-content:space-between}.footer-name{font-size:11.5vw}.footer-bottom{font-size:12px}.work-section .project-meta{font-size:12px}.detail-meta{gap:16px}.detail-meta dd{font-size:18px}.detail-meta dt{font-size:14px;margin-bottom:12px}.case-navigation{font-size:16px;gap:16px}.movera-hero{padding:24px;min-height:0}.movera-hero-content{grid-template-columns:1fr;gap:32px}.movera-hero h2{font-size:56px}.movera-hero h3{font-size:32px}.movera-hero-copy{gap:16px}.movera-hero-copy>p:last-child{font-size:16px}.movera-moments>.eyebrow{font-size:12px}.movera-moments{gap:16px}.scenario{min-height:96px;padding:16px;gap:8px}.scenario>p:last-child{font-size:22px}.research-grid.three,.research-grid.two{grid-template-columns:1fr}.research-panel{padding:18px;gap:18px}.research-card{padding:20px}.research-card h3,.strategy h3{font-size:26px}.panel-title{font-size:20px}.insight-strip{font-size:16px;line-height:1.5;padding:16px}.competitor{gap:12px}.competitor .research-card{gap:10px}.competitor .eyebrow{font-size:40px}.key-finding>p:last-child{font-size:24px;line-height:1.4}.small{font-size:13px}.bar-row{grid-template-columns:82px 1fr 34px;font-size:13px}.result-stats{gap:8px}.result-stats>div{padding:16px 10px;gap:10px}.result-stats strong{font-size:29px}.result-stats span{font-size:13px}.concept-header{font-size:10px;align-items:center}.concept-header>strong{font-size:20px}.landing-concept .research-card h3{font-size:32px}.validation-questions{grid-template-columns:1fr}.next-plan>h3{font-size:24px;line-height:1.4}.eyebrow{font-size:14px}.detail-body{line-height:1.35}}
@media(prefers-reduced-motion:reduce){.service-visual img,.portrait img,.movera-hero>img{transform:none!important}.bar{transform:none!important}.hero-background{transform:none}.filter-enter{animation:none}.title-char{transform:none;opacity:1}}
