/* v33: approachable people, precise language, rooted in Utsunomiya. */
.v33 .hero-place{display:inline-flex;gap:.45em;align-items:center;flex-wrap:wrap}
.v33 .works-section .section-heading h2{font-size:clamp(3rem,6.6vw,7.6rem);line-height:1.15}
.v33 #about{align-items:center;gap:6%;background:#fff}
.v33 #about .philosophy-label{width:auto;align-self:stretch}
.v33-team-figure{margin:24px 0 0;position:relative;background:#eef2e9;overflow:hidden}
.v33-team-figure img{width:100%;height:auto;object-fit:contain}
.v33-team-figure figcaption{padding:0 18px 15px;font-size:12px;color:#46513e;line-height:1.6}
.v33 .philosophy-content h2{font-size:clamp(2.8rem,5.5vw,6.8rem);line-height:1.2;letter-spacing:-.065em}
.v33 .philosophy-content .overline{font-size:14px;line-height:1.7;color:#47513e;letter-spacing:.04em;margin-bottom:22px}
.v33 .philosophy-content>p:not(.overline){color:#50594c}
.v33-meeting-options{display:flex;flex-wrap:wrap;gap:9px;margin:25px 0 30px}
.v33-meeting-options span{font-size:14px;line-height:1.6;background:#edf2e7;border:1px solid #d2dcc7;padding:7px 12px;color:#293229;font-weight:600}
.v33-team-about{display:grid;grid-template-columns:1.1fr 1fr;gap:7%;align-items:center;margin:0 0 70px}
.v33-team-about .v33-team-figure{margin:0}
.v33-team-about h2{font-size:clamp(2.8rem,5vw,6rem);line-height:1.18;letter-spacing:-.065em;margin:20px 0 28px}
.v33-team-about p:not(.v33-eyebrow){font-size:16px;line-height:1.95;margin-top:18px}
.v33-eyebrow{font-size:14px;line-height:1.7;color:#516040}
.v33 .contact-aside .v33-team-figure{margin:0 0 28px;max-width:440px}
.v33 .contact-aside h2{font-size:clamp(1.5rem,2vw,2.2rem);line-height:1.5}
.v33 .form-field label span{color:#526b21}
.v33 #approach-heading{font-size:clamp(15px,1.3vw,22px);letter-spacing:.01em}
.v33-work-screen{display:block;width:100%;background:#eef2e9;color:#20251e;box-shadow:0 20px 60px #0002;transform:rotate(-3deg);border:1px solid #5d6d46;text-decoration:none}
.v33-work-screen>span{display:block;padding:18px 24px;font-size:14px;font-weight:650}
.v33-work-screen>span:last-child{background:#c9ff3b}
.v33-work-screen img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;object-position:top}
.v33-review-board{width:100%;padding:clamp(25px,4vw,58px);background:#f1f4ed;color:#21271f;box-shadow:0 20px 60px #0002;transform:rotate(2deg)}
.v33-board-label{font-size:14px;display:inline-block;border-bottom:3px solid #a5d526;padding-bottom:7px}
.v33-review-board h4{font-size:clamp(1.7rem,2.8vw,3.5rem);line-height:1.3;margin:27px 0}
.v33-review-board ul{padding:0;margin:0;list-style:none}
.v33-review-board li{padding:18px 0;border-top:1px solid #d0d9c8;display:grid;grid-template-columns:5em 1fr;gap:12px;align-items:baseline}
.v33-review-board li span{font-size:13px;color:#536048}
.v33-review-board li strong{font-size:16px;line-height:1.6}
.v33-review-board p{font-size:14px;line-height:1.7;margin-top:25px;color:#4c5942}
.v33-web-faq{margin-top:40px}
.v33-web-faq h3{font-size:21px;margin-bottom:20px;line-height:1.6}
.v33-web-faq details{border-top:1px solid #d8ded3;padding:20px 0}
.v33-web-faq summary{cursor:pointer;font-size:16px;line-height:1.7;font-weight:650}
.v33-web-faq details p{margin:14px 0 0;font-size:16px;line-height:1.9}
.v33-web-faq>.text-link{margin-top:24px}
.v33 .v32-service-next>a>span:nth-last-of-type(1){padding-right:24px;line-height:1.7}
.v33 .v32-service-main-visual img,.v33 .v32-proof-band img{height:auto;aspect-ratio:3/2;object-fit:contain}
@media(max-width:700px){
 .v33 .hero-3d h1{font-size:clamp(2.5rem,10.2vw,4.5rem);line-height:1.14}
 .v33 .hero-3d .hero-place{font-size:12px;gap:.25em;letter-spacing:0;margin-bottom:18px;padding:8px 10px}
 .v33 .hero-3d .hero-scene{flex-basis:210px}
 .v33 .works-section .section-heading h2{font-size:clamp(2.6rem,10.3vw,4.6rem)}
 .v33 #about{display:flex;flex-direction:column;gap:30px}
 .v33 #about .philosophy-label,.v33 #about .philosophy-content{width:100%}
 .v33 .philosophy-content h2{font-size:clamp(2.8rem,11vw,4.6rem)}
 .v33-team-about{grid-template-columns:1fr;gap:30px;margin-bottom:45px}
 .v33 .page-intro .balanced-heading{display:block}
 .v33 #contact h2{font-size:clamp(2rem,8.4vw,3.5rem);line-height:1.4}
 .v33-review-board{padding:27px 23px}
 .v33-review-board li{grid-template-columns:1fr;gap:5px;padding:14px 0}
 .v33-review-board li strong{font-size:15px}
 .v33 .approach-sub{display:none}
 .v33 .v32-service-main-visual{padding:90px 13% 55px}
}
@media(prefers-reduced-motion:reduce){.v33 .page-intro,.v33 .page-title,.v33 .page-intro>*{animation:none!important;opacity:1!important;transform:none!important}}
