/* New pages reuse the existing type, colours, borders and spacious layout. */
.content-page main{display:block;color:#111}
.content-intro{max-width:1180px;margin:auto;padding:54px 30px 70px}
.breadcrumbs{font-size:14px;line-height:1.6;margin-bottom:32px}
.breadcrumbs a,.content-copy a,.related-content a,.contact-intro a:not(.quote-link){text-decoration:underline;text-underline-offset:3px}
.content-intro h1{font-size:56px;line-height:1.3;max-width:1000px;margin-bottom:30px}
.content-intro .lead{font-size:19px;line-height:1.8;max-width:860px}
.quote-link{display:inline-block;background:#643632;color:#fff;padding:19px 30px;margin-top:28px;font-size:16px}
.content-image{margin:0;border-top:1px solid #ccc;border-bottom:1px solid #ccc}
.content-image img{display:block;width:100%;height:520px;object-fit:cover}
.content-image figcaption{max-width:1120px;margin:16px auto;padding:0 30px;font-size:14px;line-height:1.6}
.content-copy{max-width:1120px;margin:auto;padding:0 30px 60px}
.content-copy section{display:grid;grid-template-columns:1fr 1.35fr;gap:70px;padding:65px 0;border-bottom:1px solid #ccc}
.content-copy h2,.related-content h2,.contact-intro h2{font-size:32px;line-height:1.4}
.content-copy p,.content-copy li,.related-content p,.contact-intro p{font-size:16px;line-height:1.8}
.content-copy p+p{margin-top:18px}.content-copy ul{padding-left:22px;margin:20px 0}.content-copy li+li{margin-top:12px}
.related-content{padding:35px 30px 60px;max-width:1120px;margin:auto}
.related-content h2{margin-bottom:20px}.related-content ul{padding-left:20px;line-height:2}.related-content p{margin-top:14px}
.contact-intro .contact-options{display:grid;grid-template-columns:1fr 1fr;gap:60px;margin-top:55px}
.contact-options h2{margin-bottom:18px}.contact-options p+p{margin-top:15px}
.context-links{background:#eeeceb;padding:30px max(30px,calc((100% - 1180px)/2));font-size:16px;line-height:1.8}
.context-links a{text-decoration:underline;text-underline-offset:3px;margin-right:24px;display:inline-block}
/* Service submenu follows the existing Projects dropdown design. */
.services-menu{position:relative}.services-menu>div{position:relative}.services-menu>div>a{display:block;padding:32px 20px}
.site-header #service-links{display:none;position:absolute;left:0;top:75px;min-width:290px;background:#fff;z-index:10;box-shadow:0 4px 12px #0002;padding:10px}
.site-header #service-links a{display:block;padding:12px;font-size:14px}
.services-menu.open #service-links{display:block}
.site-header .projects-menu #project-links{display:none}.site-header .projects-menu.open #project-links{display:block}
@media(min-width:751px){.services-menu:hover #service-links{display:block}.projects-menu:hover #project-links{display:block}}
@media(max-width:750px){
 .content-page .site-header{height:162px}
 .content-intro{padding:30px 20px 45px}.breadcrumbs{font-size:12px;margin-bottom:24px}
 .content-intro h1{font-size:32px;line-height:1.35;margin-bottom:25px;overflow-wrap:break-word}
 .content-intro .lead{font-size:16px;line-height:1.75}
 .content-image img{height:300px}.content-image figcaption{padding:0 20px;font-size:12px}
 .content-copy{padding:0 20px 20px}.content-copy section{display:block;padding:38px 0}
 .content-copy h2,.related-content h2,.contact-intro h2{font-size:26px;margin-bottom:20px}
 .content-copy p,.content-copy li,.related-content p,.contact-intro p{font-size:15px;line-height:1.75}
 .related-content{padding:30px 20px 45px}.contact-intro .contact-options{display:block;margin-top:35px}
 .contact-options section+section{margin-top:35px}.context-links{width:320px;zoom:calc(100vw / 320px);padding:25px 20px;font-size:14px}
 .services-menu>div>a{padding:15px}.site-header #service-links{position:static;min-width:0;padding:0;box-shadow:none}
 .site-header nav{max-height:calc(100dvh / (100vw / 320px));overflow-y:auto}
 .services-menu:hover #service-links{display:none}.services-menu.open #service-links{display:block}
}
