/* Web is the service entrance; preserve the adopted rose visual system. */
.path-lead{font-size:17px;line-height:2;margin-top:24px;max-width:780px}
.web-journey .journey-steps p{font-size:15px;line-height:1.95}
.web-journey>.wrap>.text-link{margin-top:24px}
.service-row h3 a{text-decoration:none;text-underline-offset:7px}
.service-row h3 a:hover{text-decoration:underline}
.service-web-visual img{aspect-ratio:1200/833!important;object-fit:contain!important}
.service-purpose{border-top:1px solid #c99c94;border-bottom:1px solid #d8c2bb;padding:38px 0 44px;align-self:center}
.service-purpose-number{display:block;font-family:var(--latin);font-size:clamp(44px,5vw,68px);line-height:1;color:var(--rose-ink);font-weight:300;margin-bottom:27px}
.service-purpose>p{font-family:var(--serif);font-size:clamp(27px,2.7vw,37px);line-height:1.95;margin-bottom:24px}
.service-purpose-label{font-size:13px;color:var(--rose-ink)}
.practice-entry{background:#f4ede9}
.practice-entry-grid{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:start}
.practice-entry h2{font-size:clamp(30px,3vw,42px);line-height:1.8;margin-top:24px;font-weight:400}
.practice-entry-grid>div>p:not(.eyebrow){font-size:17px;line-height:2;margin:0 0 18px}
.practice-entry .text-link{display:flex;width:fit-content;margin-top:22px;min-height:44px}
.practice-status{font-size:15px;line-height:2;border-top:1px solid var(--line);margin-top:35px;padding-top:23px;max-width:800px}
.practice-links{display:flex;gap:12px 35px;flex-wrap:wrap;margin-top:22px}.practice-links .text-link{min-height:48px}
.footer-bottom>span{font-size:13px}
@media(min-width:1101px){.main-nav{gap:clamp(13px,1.2vw,22px)}.main-nav .nav-contact{padding-inline:21px}}
@media(max-width:760px){
 .path-lead{font-size:16px}.path-lead br{display:none}
 .web-journey .journey-steps{gap:26px 20px}.web-journey .journey-steps p{font-size:14px}
 .service-purpose{padding-block:28px;display:grid;grid-template-columns:62px 1fr;gap:14px 20px}
 .service-purpose-number{font-size:43px;margin:6px 0 0}.service-purpose>p{font-size:27px;margin:0}.service-purpose-label{grid-column:2;font-size:12px}
 .practice-entry-grid{grid-template-columns:1fr;gap:25px}.practice-entry h2{font-size:30px}.practice-entry-grid>div>p:not(.eyebrow){font-size:16px}
 .practice-links{gap:12px 24px}.practice-links .text-link{font-size:14px}
 .footer-bottom>span{font-size:11px;line-height:1.8}
}
@media(max-width:1100px) and (max-height:680px){
 .js .main-nav{padding-block:8px 18px}.js .main-nav>a{min-height:44px;padding-block:7px;font-size:16px}.js .main-nav .nav-contact{margin-top:12px;min-height:46px;padding-block:8px}
}

/* Web + AI positioning: original film and typography retained. */
.web-ai-hero .hero-copy{top:7%}
.web-ai-hero .hero-eyebrow{margin-bottom:20px}
.web-ai-hero h1{line-height:1.48}
.web-ai-hero .hero-lead{margin-top:19px}
.hero-ai-link{display:block;width:fit-content;margin-top:16px;padding-block:7px;font-size:14px;text-decoration:none;border-bottom:1px solid var(--line);color:var(--ink)}
.hero-ai-link:hover{color:var(--rose-ink)}
.practice-entry-grid{grid-template-columns:minmax(280px,396px) minmax(0,1fr);gap:clamp(40px,7vw,108px);align-items:center}
.practice-portrait{margin:0}.practice-portrait img{display:block;width:100%;aspect-ratio:1;object-fit:cover}
.practice-portrait figcaption{font-size:13px;margin-top:18px;color:var(--rose-ink)}
.practice-entry h2{margin-bottom:25px}
@media(max-width:760px){.practice-entry-grid{grid-template-columns:1fr;gap:28px}.practice-portrait{max-width:396px}.web-ai-hero .hero-copy{top:auto}.web-ai-hero .hero-eyebrow{font-size:11px;letter-spacing:.04em}.web-ai-hero .hero-lead{font-size:15px}.hero-ai-link{font-size:13px;margin-top:14px}}
