
/* V14 — tighter editorial rhythm, legible hierarchy, consistent image treatment */
:root{--page-max:1240px;--readable:62ch}
html{scroll-behavior:smooth}body{overflow-x:clip}main{overflow:clip}
.shell{max-width:var(--page-max)!important;width:calc(100% - 72px)!important;margin-inline:auto!important}
.header .shell{max-width:1360px!important}
.header{border-bottom:1px solid #d8d9d3}.navline{min-height:80px!important}
.navlinks{gap:clamp(14px,2vw,29px)!important}.navlinks a{font-size:11px!important;letter-spacing:.025em!important}
.nav-cta{white-space:nowrap;font-size:10px!important;padding:13px 17px!important}
.hero{padding-block:24px 0!important;min-height:0!important}.hero-copy{min-height:485px!important;padding:clamp(35px,4vw,60px)!important;justify-content:space-between!important}
.hero-copy h1{font-size:clamp(49px,5.5vw,78px)!important;max-width:650px!important;letter-spacing:-.065em!important}
.hero-copy p{font-size:15px!important;max-width:43ch!important;line-height:1.65!important}
.hero-visual{min-height:485px!important}.hero-photo{min-height:485px!important;background-position:center!important}
.proof-band{padding-block:22px!important;gap:24px!important}.proof-metric strong{font-size:clamp(28px,3vw,44px)!important}.proof-metric span{font-size:12px!important}.proof-statement{font-size:14px!important}
.v12-services{padding-block:43px 50px!important}.v12-section-top{gap:7px!important;margin-bottom:22px!important}.v12-section-top h2{font-size:clamp(30px,3vw,42px)!important}.v12-section-top p{font-size:13px!important}
.v12-service-grid{gap:14px!important}.v12-service>img{height:215px!important;object-fit:cover!important}.v12-service>div{padding:18px!important}.v12-service h3{margin:7px 0!important;font-size:26px!important}.v12-service p{margin:0 0 14px!important;min-height:0!important}.v12-service strong{line-height:1.5!important}
.v12-routine{padding-block:48px!important}.v12-routine-grid{gap:38px!important}.v12-routine h2{font-size:clamp(30px,3.2vw,45px)!important;max-width:17ch!important}.v12-routine p{font-size:14px!important;max-width:55ch!important}.v12-routine img{height:300px!important;object-fit:contain!important}
.inner-hero{padding-block:44px 26px!important}.inner-title{gap:18px!important}.inner-title h1{font-size:clamp(36px,4vw,58px)!important;line-height:1.08!important}.inner-title p{font-size:14px!important;max-width:58ch!important}
.project-gallery{padding-block:18px 45px!important}.project-card .photo{height:clamp(200px,24vw,305px)!important}
.portfolio-list{padding-block:20px 45px!important}
.process-intro{padding-block:50px 35px!important}.process-intro h1{font-size:clamp(36px,4.5vw,60px)!important;line-height:1.07!important}.process-intro p{max-width:58ch!important}.process-story{padding-block:32px 50px!important}.process-story h2{font-size:clamp(28px,3vw,42px)!important;line-height:1.12!important}
.studio{padding-block:26px!important}.studio h2{font-size:clamp(28px,3.2vw,43px)!important}.portrait-section{padding-block:28px 48px!important}.portrait-section h2{font-size:clamp(30px,3.3vw,45px)!important}.portrait-grid{gap:28px!important}.portrait-grid .profile-card>img{height:370px!important;object-fit:contain!important;background:#e4e3df!important}.profile-card figcaption{padding-top:18px!important}.profile-card p{font-size:13px!important;line-height:1.65!important}
.v13-quality{padding-block:40px 45px!important}.v13-quality h2{font-size:clamp(30px,3.3vw,45px)!important;max-width:20ch!important}.v13-quality-grid{margin-top:20px!important;gap:20px!important}.v13-quality-grid article{padding-top:15px!important}.v13-quality-grid h3{font-size:20px!important}.v13-quality-grid p{font-size:13px!important;line-height:1.65!important}
.build{padding-block:35px 45px!important}.build h2{font-size:clamp(29px,3.1vw,43px)!important}.build p{line-height:1.65!important}
.v12-case-layout{grid-template-columns:minmax(0,1.6fr) minmax(320px,.8fr)!important;min-height:0!important}.v12-stage{height:clamp(410px,43vw,590px)!important}.v12-case-copy{padding:clamp(26px,3vw,46px)!important;gap:12px!important}.v12-case-copy h1{font-size:clamp(38px,4vw,62px)!important;line-height:1.05!important}.v12-case-copy p{font-size:13px!important;line-height:1.65!important}.v12-case-kicker{font-size:15px!important}.v12-case-cta{margin-top:12px!important}.v12-filmstrip{padding:10px 22px!important;min-height:83px!important}.v12-thumb{height:58px!important;flex-basis:92px!important}.v12-case-bottom{padding-block:38px 48px!important}.v12-case-bottom h2{font-size:clamp(29px,3.2vw,43px)!important}
.closing{padding-block:36px!important}.closing h2{font-size:clamp(28px,3.3vw,44px)!important;max-width:19ch!important}.footer{padding-block:26px!important}
@media(max-width:950px){.shell{width:calc(100% - 44px)!important}.navline{min-height:72px!important}.nav-cta{display:none!important}.hero-copy,.hero-visual,.hero-photo{min-height:390px!important}.v12-case-layout{grid-template-columns:1fr!important}.v12-stage{height:clamp(340px,55vw,520px)!important}.v12-case-copy{padding:27px 30px!important}.v12-case-copy h1{font-size:45px!important}.v12-case-copy p{max-width:72ch!important}}
@media(max-width:620px){.shell{width:calc(100% - 30px)!important}.hero{padding-top:12px!important}.hero-copy{min-height:350px!important;padding:30px 22px!important}.hero-copy h1{font-size:clamp(43px,10vw,59px)!important}.hero-visual,.hero-photo{min-height:260px!important}.proof-band{gap:12px!important;padding-block:18px!important}.proof-statement{font-size:12px!important}.v12-services{padding-block:35px!important}.v12-service-grid{grid-template-columns:1fr!important;gap:10px!important}.v12-service{display:grid!important;grid-template-columns:38% 62%!important;min-height:145px!important}.v12-service>img{height:100%!important;min-height:145px!important}.v12-service>div{padding:14px!important}.v12-service h3{font-size:21px!important}.v12-service p{font-size:11px!important;margin-bottom:10px!important}.v12-service strong{font-size:9px!important}.v12-routine{padding-block:32px!important}.v12-routine-grid{gap:22px!important}.v12-routine img{height:235px!important}.inner-hero{padding-block:30px 20px!important}.portrait-grid .profile-card>img{height:320px!important}.v12-stage{height:clamp(260px,72vw,370px)!important}.v12-case-copy{padding:25px 20px!important}.v12-case-copy h1{font-size:39px!important}.v12-filmstrip{gap:8px!important;padding:9px 12px!important}.v12-thumb{height:48px!important;flex-basis:65px!important}.v12-gallery-full{font-size:9px!important;padding:10px!important}.closing{padding-block:30px!important}}
