/* v2.3: scoped to lower sections; approved hero/header CSS is untouched. */
#approach{padding:125px 0 130px;grid-template-columns:1fr 2fr;gap:6%}
#approach h2{font-size:clamp(40px,5.3vw,80px);line-height:1.03;letter-spacing:-.055em;margin-bottom:40px}
.approach-side{display:flex;flex-direction:column;justify-content:space-between;gap:45px}
#approach .body-copy{font-size:17px;max-width:610px}
#services{padding:80px 0 100px;border-bottom:0}
#services .service-top{margin-bottom:52px;gap:25px}
#services .service-top h2{font-size:clamp(28px,3.1vw,48px);letter-spacing:-.05em}
.service-chapter{position:relative;display:grid;grid-template-columns:46% 54%;border-top:1px solid #bdbdbd}
.service-chapter:last-child{border-bottom:1px solid #bdbdbd}
.service-chapter h3{margin:0;grid-column:1;grid-row:1}
.service-toggle{border:0;background:transparent;text-align:left;color:#171717;cursor:pointer;display:flex;align-items:baseline;gap:20px;width:100%;padding:26px 0 28px;font-size:clamp(40px,5.44vw,83.2px);line-height:1.05;letter-spacing:-.065em;font-weight:400}
.chapter-number{font-size:10px;letter-spacing:.06em;align-self:flex-start;margin-top:14px;color:#555}
.chapter-control{position:absolute;right:0;top:35px;font:300 31px/1 Arial;color:#171717;width:34px;text-align:center;letter-spacing:0}
.service-toggle:hover{color:#d6091b}.service-toggle:hover .chapter-control{background:#fff5cf}
.is-open .chapter-control{color:#d6091b}
.chapter-panel{grid-column:2;grid-row:1;display:grid;grid-template-rows:0fr;opacity:0;visibility:hidden;transition:grid-template-rows .32s ease,opacity .24s ease,visibility .32s}
.chapter-clip{overflow:hidden;min-height:0}
.is-open .chapter-panel{grid-template-rows:1fr;opacity:1;visibility:visible}
.chapter-copy{padding:38px 60px 42px 0}
.chapter-copy p{font-size:18.5px;line-height:1.65;margin:0 0 23px;color:#555;max-width:490px}
.chapter-copy .chapter-lead{color:#171717;font-size:28px;line-height:1.35;letter-spacing:-.025em}
.chapter-copy ul{list-style:none;display:flex;flex-wrap:wrap;gap:10px 24px;padding:0;margin:30px 0 0}
.chapter-copy li{font-size:13.5px;line-height:1.7;border-bottom:1px solid #d0d0d0;padding-bottom:3px}
#process{display:block;padding:75px 0 120px;border-top:1px solid #d1d1d1;border-bottom:0}
#process>.label{margin-bottom:38px}
#process h2{margin-left:33%;font-size:clamp(36px,4.5vw,70px);max-width:750px;line-height:1.06;margin-bottom:65px}
#process .steps{display:block}
#process .steps article{display:grid;grid-template-columns:28% 32% 1fr;align-items:baseline;gap:4%;padding:29px 0 35px;border-top:1px solid #bdbdbd}
#process .steps article>.label{font-size:11px;letter-spacing:.07em;display:flex;align-items:baseline;gap:25px}
#process .steps article .step-number{font-size:clamp(44px,5vw,76px);letter-spacing:-.075em;font-weight:400;line-height:1;color:#171717}



#process .steps h3{font-size:clamp(23px,2.5vw,38px);letter-spacing:-.045em;margin:0;font-weight:500}
#process .steps p{font-size:18.5px;line-height:1.65;margin:0;max-width:380px}
.final-project{padding:90px 0 100px;border-bottom:1px solid #bdbdbd}
.final-project h2{font-weight:400;letter-spacing:-.065em;line-height:1.02;font-size:clamp(45px,8.9vw,145px);margin:0 0 55px}
.final-project h2>span{display:block}.final-project h2>span:last-child{font-size:.67em;letter-spacing:-.055em;text-align:right;margin-top:.18em}
.project-arrow{color:#f20d20}
.final-project-bottom{display:flex;justify-content:space-between;align-items:end;gap:25px}

@media(max-width:1000px){.service-chapter{grid-template-columns:43% 57%}.service-toggle{font-size:5.36vw;gap:12px}.chapter-copy{padding-right:40px}.chapter-copy .chapter-lead{font-size:25.6px}#process .steps article{grid-template-columns:27% 31% 1fr;gap:3%}#process .steps article>.label{gap:15px}}
@media(max-width:850px){#approach{grid-template-columns:28% 1fr;gap:7%;padding:85px 0}#approach h2{font-size:5.3vw}.chapter-number{display:none}#services{padding:60px 0 75px}.chapter-copy p{font-size:17.3px}.chapter-copy ul{gap:9px 16px}#process{padding:55px 0 80px}#process h2{margin-left:25%;margin-bottom:45px}#process .steps article{grid-template-columns:25% 1fr;gap:15px 5%}#process .steps p{grid-column:2}#process .steps article>.label{font-size:9px;gap:12px}#process .steps article .step-number{font-size:44px}.final-project{padding:70px 0 80px}}
@media(max-width:600px){#approach{grid-template-columns:1fr;gap:30px;padding:65px 0 70px}.approach-side{display:contents}#approach>.approach-side>.label{grid-row:1}#approach>div:last-child{grid-row:2}#approach h2{font-size:40px;margin-bottom:28px}#approach .body-copy{font-size:16px}#services .service-top{display:block;margin-bottom:30px}#services .service-top h2{font-size:31px;margin-bottom:20px}.service-chapter{display:block}.service-toggle{font-size:43.2px;padding:19px 40px 20px 0;letter-spacing:-.07em}.chapter-control{top:27px;font-size:25px}.chapter-copy{padding:2px 0 32px}.chapter-copy .chapter-lead{font-size:26.8px}.chapter-copy p{font-size:18.5px}.chapter-copy ul{margin-top:22px}#process h2{margin-left:0;font-size:38px;margin-bottom:40px}#process .steps article{grid-template-columns:1fr;padding:26px 0 30px;gap:18px}#process .steps article>.label{font-size:11px;gap:20px}#process .steps article .step-number{font-size:51px}#process .steps h3{font-size:29px}#process .steps p{grid-column:1}.final-project{padding:60px 0 65px}.final-project h2{font-size:14vw;line-height:1.05;margin-bottom:37px}.final-project h2>span:last-child{font-size:.72em;text-align:left;margin-top:.3em}.final-project-bottom{display:block}.final-project .button{gap:28px}}
@media(prefers-reduced-motion:reduce){.chapter-panel{transition:none}}



#about{padding:110px 0;grid-template-columns:1fr 2fr;gap:6%;border-bottom:1px solid #bdbdbd}
.experience-number{font-size:clamp(88px,10vw,150px);line-height:1;letter-spacing:-.07em}
.experience>p{font-size:15px;line-height:1.5;max-width:220px;margin:15px 0 35px}
.about-copy h2{font-size:clamp(38px,5vw,72px);line-height:1.05;letter-spacing:-.055em;margin:25px 0 35px}
.about-copy p{font-size:19px;line-height:1.65;max-width:650px;margin:0 0 22px;color:#555}
.about-copy .about-location{font-size:15px;margin-top:38px}
.final-project .button{font-size:17.5px;padding:23px 29px;gap:50px;min-height:70px}
@media(max-width:850px){#about{padding:80px 0;grid-template-columns:30% 1fr;gap:7%}.about-copy p{font-size:18px}}
@media(max-width:600px){#about{padding:65px 0;grid-template-columns:1fr;gap:45px}.experience{display:grid;grid-template-columns:1fr 1fr;column-gap:20px}.experience-number{font-size:90px}.experience>p{font-size:13px;margin:12px 0 0}.about-copy h2{font-size:42px}.final-project .button{font-size:16px;padding:23px 24px;gap:28px;max-width:100%}}

/* v2.4: native full-width header buttons, separate from accordion content. */
.service-chapter h3{grid-column:1/-1;grid-row:1;min-width:0}
.service-toggle{position:relative;cursor:pointer;padding-right:50px;transition:color .18s ease,background-color .18s ease}
.service-toggle:hover{background-color:#fafafa}
.service-toggle:focus-visible{outline:2px solid #f20d20;outline-offset:-2px}
.chapter-panel{grid-row:2}
.chapter-copy{padding-top:0}
.measurement-note{border-top:1px solid #bdbdbd;padding-top:65px;margin-top:55px}
.measurement-note h3{font-size:clamp(42px,5.4vw,78px);line-height:1.08;font-weight:400;letter-spacing:-.05em;max-width:1050px;margin:0 0 36px}
.measurement-note h3 em{font-family:Georgia,serif;font-weight:400;color:#f20d20}
.measurement-note p{font-size:19px;line-height:1.7;max-width:720px;margin:0 0 0 33%;color:#555}
#about{border-top:1px solid #bdbdbd}
.portrait-area{width:270px;max-width:100%;aspect-ratio:4/5}
.portrait-area img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 35%}
@media(max-width:850px){.measurement-note p{margin-left:25%}.measurement-note h3{font-size:48px}}
@media(max-width:600px){.chapter-copy{padding-top:2px}.measurement-note{padding-top:40px;margin-top:35px}.measurement-note h3{font-size:38px;margin-bottom:25px}.measurement-note p{font-size:18px;margin-left:0}.portrait-area{grid-column:2;grid-row:1/3;width:100%;max-height:190px}.experience{align-items:start}}

/* v3.0: scoped reading sizes and the owner's real portrait. */
#approach .body-copy{font-size:clamp(18px,1.4vw,20px);line-height:1.6}
.chapter-copy li{font-size:15px}
html[lang="ru"] .chapter-copy li{font-size:15px}
.portrait-area{position:relative;isolation:isolate}
.portrait-area img{object-position:center;border:0}
@media(max-width:850px){.chapter-copy p{font-size:18px}.chapter-copy .chapter-lead{font-size:25.6px}html[lang="ru"] .chapter-copy li{font-size:14px}}
@media(max-width:600px){.chapter-copy li{font-size:14px}.chapter-copy .chapter-lead{font-size:26.8px}.portrait-area{max-height:none}}

@media(max-width:600px){#approach .body-copy{font-size:17px}}

/* v3.0.1: top-aligned editorial Services rows, persistent plain-text tags. */
#services .service-chapter{grid-template-columns:30% minmax(0,1fr);gap:4%;padding:28px 48px 28px 0;align-items:start}
#services .service-chapter h3{grid-column:1;grid-row:1;margin:0;align-self:start}
#services .service-toggle{position:static;padding:0;font-size:clamp(42px,4.5vw,65px);line-height:1;letter-spacing:-.055em;color:#171717;background:none;transition:none;transform:none}
#services .service-toggle::after{content:"";position:absolute;inset:0;cursor:pointer;z-index:1}
#services .service-toggle:focus-visible{outline:0}
#services .service-toggle:focus-visible::after{outline:2px solid #171717;outline-offset:-2px}
#services .chapter-number{display:none}
#services .chapter-control{top:28px;right:0;font-size:25px;color:#171717;background:none}
#services .service-toggle:hover,#services .service-toggle:hover .chapter-control{color:#171717;background:none;transform:none}
#services .service-details{grid-column:2;grid-row:1;min-width:0;align-self:start}
#services .chapter-panel{display:none;opacity:1;visibility:visible;transition:none}
#services .is-open .chapter-panel{display:block}
#services .chapter-copy{padding:0}
#services .chapter-copy p{font-size:18px;line-height:1.55;max-width:680px;margin:0 0 18px}
#services .chapter-copy .chapter-lead{font-size:23px;line-height:1.35;color:#171717;letter-spacing:-.025em}
#services .service-tags{display:flex;flex-wrap:wrap;list-style:none;padding:0;margin:0;gap:8px 24px}
#services .service-tags li{font-size:16px;line-height:1.6;color:#666;border:0;background:none;padding:0}
html[lang="ru"] #services .service-toggle{font-size:clamp(34px,3.6vw,52px)}
@media(max-width:850px){#services .service-chapter{grid-template-columns:34% minmax(0,1fr);gap:4%;padding-right:35px}#services .service-toggle{font-size:5vw}html[lang="ru"] #services .service-toggle{font-size:3.8vw}#services .chapter-copy .chapter-lead{font-size:21px}#services .service-tags{gap:7px 18px}#services .service-tags li{font-size:15px}}
@media(max-width:600px){#services .service-chapter{display:grid;grid-template-columns:minmax(0,1fr);gap:20px;padding:24px 32px 24px 0}#services .service-details{grid-column:1;grid-row:2}#services .service-toggle{font-size:43px}html[lang="ru"] #services .service-toggle{font-size:34px}#services .chapter-control{top:24px}#services .chapter-copy .chapter-lead{font-size:22px}#services .chapter-copy p{font-size:17px}#services .service-tags li{font-size:14px}}
