.inner-page { --paper:#fff; --ink:#123d3d; background:white; }
.inner-preview { padding:8px 5vw; background:#123d3d; color:white; font-size:11px; letter-spacing:.04em; }
.inner-header { display:flex; align-items:center; gap:30px; padding:20px 5vw; border-bottom:1px solid #123d3d20; background:#fff; position:sticky; top:0; z-index:20; }
.inner-brand { width:160px; height:42px; margin-right:auto; flex-shrink:0; }
.inner-brand img { object-fit:contain; }
.inner-header nav { display:flex; gap:28px; font-size:14px; }
.inner-header>nav>a,.inner-header>nav>details>summary { white-space:nowrap; }
.inner-header a:hover { color:#167e83; }
.inner-header a[aria-current] { text-decoration:underline; text-underline-offset:7px; }
.page-language { font-size:13px; padding:8px; }
.inner-contact { font-size:14px; font-weight:600; }
.page-intro,.page-layout,.page-related,.page-contact { padding:72px max(7vw,calc((100vw - 1400px)/2)); }
.page-intro { padding-top:28px; border-bottom:1px solid #123d3d25; }
.breadcrumbs { display:flex; flex-wrap:wrap; gap:8px 12px; font-size:12px; color:#506c6a; margin-bottom:60px; }
.page-eyebrow { font-size:12px; font-weight:700; letter-spacing:.1em; margin-bottom:22px; }
.page-intro h1 { font-size:clamp(2.5rem,5vw,4.5rem); font-weight:600; letter-spacing:0; line-height:1.35; max-width:17em; }
.page-intro-grid { display:grid; grid-template-columns:.85fr 1.15fr; gap:7vw; margin-top:48px; }
.page-intro-grid h2 { font-size:clamp(1.5rem,2.3vw,2rem); line-height:1.6; font-weight:500; color:#167e83; letter-spacing:0; max-width:13em; }
.page-lead { font-size:17px; line-height:1.95; }
.page-lead p+p { margin-top:18px; }
.page-layout { display:grid; grid-template-columns:240px minmax(0,1fr); gap:8vw; padding-top:80px; }
.page-contents { align-self:start; position:sticky; top:124px; }
.page-contents>p { font-size:12px; font-weight:600; color:#506c6a; padding-bottom:20px; }
.page-contents nav { display:grid; }
.page-contents a { padding:12px 0; font-size:14px; line-height:1.65; border-bottom:1px solid #123d3d20; }
.page-contents a:hover { color:#167e83; }
.content-section { padding-bottom:56px; margin-bottom:48px; border-bottom:1px solid #123d3d20; scroll-margin-top:120px; }
.content-section:last-child { border-bottom:0; margin-bottom:0; padding-bottom:0; }
.content-section h2 { font-size:clamp(1.65rem,2.5vw,2.15rem); line-height:1.5; font-weight:600; letter-spacing:0; margin-bottom:28px; text-wrap:pretty; }
.content-section h3 { font-size:1.125rem; line-height:1.65; font-weight:600; margin:32px 0 12px; letter-spacing:0; }
.content-section p { font-size:1rem; line-height:2; max-width:45em; }
.content-section p+p { margin-top:20px; }
.related-work { border-left:3px solid #158589; padding-left:28px; }
.related-work article+article { margin-top:32px; padding-top:26px; border-top:1px solid #123d3d20; }
.related-work article h3 { margin:0 0 12px; }
.page-related { background:#f5f7f5; }
.page-related h2 { font-size:clamp(1.875rem,3vw,2.75rem); letter-spacing:0; font-weight:600; line-height:1.4; margin-bottom:32px; }
.page-related>div { display:grid; grid-template-columns:1fr 1fr; gap:0 48px; }
.page-related>div a { display:flex; justify-content:space-between; gap:20px; padding:22px 0; border-bottom:1px solid #123d3d40; font-size:18px; line-height:1.5; }
.page-related a:hover { color:#167e83; }
.page-contact { background:#123d3d; color:white; }
.page-contact h2 { font-size:clamp(2rem,4vw,3.5rem); line-height:1.5; font-weight:500; letter-spacing:0; }
.page-contact-links { display:flex; align-items:center; flex-wrap:wrap; gap:28px; margin-top:36px; font-size:15px; }
.page-contact-links>a:not(.pill) { border-bottom:1px solid #ffffff70; padding:10px 0; }
html:lang(en) .page-intro h1 { letter-spacing:-.03em; max-width:20ch; }
html:lang(en) .content-section p { line-height:1.85; }
@media(max-width:900px) {
 .inner-header { gap:16px; }
 .inner-header nav { gap:18px; }
 .inner-contact { display:none; }
 .page-layout { grid-template-columns:180px minmax(0,1fr); gap:40px; }
 .page-intro-grid { grid-template-columns:1fr; gap:24px; }
 .page-intro-grid h2 { max-width:25em; }
}
@media(max-width:760px) {
 .inner-header { padding:15px 6vw; flex-wrap:wrap; gap:14px; }
 .inner-brand { width:135px; height:35px; }
 .inner-header>nav { order:3; width:100%; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 18px; font-size:14px; }
 .inner-header>nav>a,.inner-header>nav>details>summary { min-height:40px; display:flex; align-items:center; }
 .page-intro,.page-layout,.page-related,.page-contact { padding:48px 6vw; }
 .page-intro { padding-top:24px; }
 .breadcrumbs { margin-bottom:38px; font-size:11px; }
 .page-intro h1 { font-size:2.25rem; line-height:1.4; }
 .page-intro-grid { margin-top:30px; }
 .page-lead { font-size:1rem; }
 .page-layout { grid-template-columns:1fr; gap:48px; }
 .page-contents { position:static; }
 .page-contents nav { border-top:1px solid #123d3d30; }
 .page-contents a { padding:11px 0; }
 .content-section { scroll-margin-top:150px; padding-bottom:40px; margin-bottom:40px; }
 .content-section h2 { font-size:1.625rem; }
 .related-work { padding-left:18px; }
 .page-related>div { grid-template-columns:1fr; }
 .page-related>div a { font-size:17px; }
 .page-contact-links { align-items:flex-start; flex-direction:column; gap:20px; }
}
