/* Approved home: restrained readability increase, same palette and composition. */
.project-title h2,.v3 .project-title h2{font-size:clamp(36px,4.15vw,63px)}
.project-copy>p,.approach .section-intro,.v3 .approach .section-heading .section-intro,.team-heading>p,.reviews-intro{font-size:19px}
.steps p{font-size:18px}.contact-intro>p:not(.eyebrow){font-size:19px}.service.active .service-detail{font-size:18px}.service-detail a{font-size:16px}
/* Compact expertise disclosure, preserving the approved navigation. */



/* Service pages extend the approved Matière theme. */
.inner-page header{--nav-opacity:1;opacity:1}.inner-page .brand{width:145px;top:14px}.inner-page main{padding-top:70px}.inner-page .section{padding:85px 5.5%}.inner-page .service-intro{padding-top:38px;padding-bottom:56px}
.breadcrumb{display:flex;flex-wrap:wrap;gap:12px;color:var(--muted);font-size:14px;line-height:1.5;margin-bottom:66px}.breadcrumb a:hover{text-decoration:underline}.service-intro h1.eyebrow{font-size:15px;line-height:1.5;letter-spacing:.12em;font-weight:500;margin-bottom:26px}
.service-statement{font-size:clamp(40px,5.3vw,80px);font-weight:400;line-height:1.08;max-width:1200px;letter-spacing:-.045em;text-wrap:pretty}.service-lead{display:grid;grid-template-columns:1.6fr 1fr;align-items:end;gap:8%;margin:34px 0 0 24%}.service-lead>p{font-size:20px;line-height:1.75;color:var(--muted);max-width:690px}.service-lead .button{justify-self:end;white-space:nowrap;font-size:16px}
.service-image{margin:0 3%;}.service-image img{display:block;width:100%;height:min(64vw,650px);object-fit:cover;border-radius:28px}.service-image figcaption{font-size:12px;color:var(--muted);padding:10px 2.5%}
.service-body{display:grid;grid-template-columns:1fr 2.1fr;gap:9%}.service-sidebar{align-self:start;position:sticky;top:120px}.service-sidebar>p:not(.eyebrow){font-size:20px;line-height:1.5;margin-top:25px;color:var(--muted)}.service-sidebar>a{display:inline-block;margin-top:30px;font-size:16px;border-bottom:1px solid var(--muted);padding-bottom:5px}.service-articles article{position:relative;border-top:1px solid var(--line);padding:35px 0 52px}.article-number{font-size:14px;color:var(--muted);display:block;margin-bottom:20px}.service-articles h2{font-size:clamp(30px,3vw,44px);line-height:1.13;margin-bottom:25px;text-wrap:pretty}.service-articles p{font-size:19px;line-height:1.8;color:var(--muted);max-width:780px}.service-articles p+p{margin-top:18px}.service-articles article:last-child{padding-bottom:0}
.service-faq{background:#fff;display:grid;grid-template-columns:1fr 1.2fr;gap:8%;}.service-faq h2,.related-services h2,.contact-preparation h2{font-size:clamp(33px,3.6vw,54px);line-height:1.15;margin-top:24px}.faq-list details{border-top:1px solid var(--line);padding:24px 0}.faq-list details:last-child{border-bottom:1px solid var(--line)}.faq-list summary{font-size:21px;font-weight:500;line-height:1.4;cursor:pointer;padding-right:20px}.faq-list p{font-size:18px;color:var(--muted);line-height:1.8;margin-top:20px}
.related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:38px}.related-grid>a,.related-grid>article{display:block;border:1px solid var(--line);border-radius:24px;padding:30px;transition:background .2s}.related-grid>a:hover{background:#fff}.related-grid span,.related-grid h3{font-size:25px;line-height:1.2;letter-spacing:-.03em}.related-grid p{font-size:18px;line-height:1.65;color:var(--muted);margin-top:20px}
.inner-page .service-cta{border-top:1px solid var(--line);text-align:center;padding-top:80px;padding-bottom:100px}.service-cta h2{font-size:clamp(36px,4.5vw,66px);line-height:1.1;max-width:960px;margin:auto}.service-cta p{font-size:20px;color:var(--muted);line-height:1.7;max-width:610px;margin:28px auto}.service-cta .button{font-size:16px}.cta-phone{display:block;font-size:18px;margin-top:20px}
.contact-breadcrumb{padding:38px 5.5% 0}.contact-breadcrumb .breadcrumb{margin-bottom:0}.inner-page .contact{padding-top:50px}.contact-intro h1{font-size:clamp(37px,4vw,60px);line-height:1.14;font-weight:500;margin:28px 0;text-wrap:pretty}.contact-intro .contact-email{font-size:20px;margin-top:15px;overflow-wrap:anywhere}.contact-preparation{background:white}.contact-preparation .preparation-note{font-size:18px;color:var(--muted);max-width:800px;margin-top:35px}.inner-page .form-help,.inner-page .field{font-size:16px}.inner-page .choice{font-size:16px}.inner-page .form-navigation .button{font-size:14px}
@media(max-width:1050px){.service-lead{margin-left:15%;display:block}.service-lead .button{margin-top:25px}.service-body{gap:6%;grid-template-columns:1fr 2fr}.related-grid>a,.related-grid>article{padding:24px}.service-faq{gap:5%}}
@media(max-width:700px){.project-title h2,.v3 .project-title h2{font-size:38px}.project-copy>p,.approach .section-intro,.v3 .approach .section-heading .section-intro,.team-heading>p,.reviews-intro,.steps p,.contact-intro>p:not(.eyebrow){font-size:18px}.service.active .service-detail{font-size:17px}.inner-page .brand{width:115px;top:12px}.inner-page main{padding-top:88px}.inner-page .section{padding:56px 6%}.inner-page .service-intro{padding-top:28px;padding-bottom:34px}.breadcrumb{margin-bottom:40px;font-size:14px}.service-intro h1.eyebrow{font-size:14px}.service-statement{font-size:clamp(35px,8.7vw,52px);line-height:1.12}.service-lead{margin:25px 0 0}.service-lead>p{font-size:18px}.service-lead .button{font-size:15px;white-space:normal}.service-image{margin:0 4%}.service-image img{height:360px;border-radius:22px}.service-image figcaption{line-height:1.6}.service-body{display:block}.service-sidebar{position:static;margin-bottom:38px}.service-sidebar>p:not(.eyebrow){font-size:18px}.service-sidebar>a{margin-top:20px}.service-articles article{padding:25px 0 36px}.service-articles h2{font-size:31px}.service-articles p{font-size:18px}.service-faq{display:block}.faq-list{margin-top:35px}.faq-list summary{font-size:20px}.related-grid{grid-template-columns:1fr;gap:12px}.related-grid>a,.related-grid>article{padding:25px}.related-grid p{margin-top:12px}.service-cta p{font-size:18px}.inner-page .service-cta{padding:55px 6% 65px}.contact-breadcrumb{padding:28px 6% 0}.inner-page .contact{padding-top:30px}.inner-page .form-navigation{gap:10px}.inner-page .form-navigation .button{gap:8px;padding:12px 16px}.inner-page .contact-email{font-size:18px}}
@media(prefers-reduced-motion:reduce){.related-grid>a{transition:none}}
