/* Public layouts use the viewport, not a fixed desktop canvas.
   Keep mobile gutters and readable controls; do not change construction sizing. */
body.home-page,body.inner-page{--page-gutter:clamp(20px,4vw,80px);width:100%;max-width:none;margin-inline:0}
.home-page .php-header,.inner-page .php-header,
.home-page .php-footer,.inner-page .php-footer{width:100%;max-width:none;padding-inline:var(--page-gutter)}
.inner-page .page-main{width:100%;max-width:none;margin-inline:0}
.inner-page .page-masthead,.inner-page .directory-masthead,
.inner-page .contact-masthead,.inner-page .legal-masthead,
.inner-page .page-directory,.inner-page .article-layout,
.inner-page .contact-page-grid,.inner-page .legal-layout,
.inner-page .content-page,.inner-page .related-section,.inner-page .page-cta{
 width:100%;max-width:none;margin-inline:0;padding-inline:var(--page-gutter)
}
.inner-page .article-layout{grid-template-columns:minmax(0,1fr) clamp(260px,20vw,360px);column-gap:clamp(28px,4vw,80px)}
.inner-page .legal-layout{grid-template-columns:clamp(200px,18vw,280px) minmax(0,1fr);column-gap:clamp(28px,4vw,80px)}
.inner-page .contact-page-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);column-gap:clamp(28px,5vw,100px)}
.inner-page .article-content,.inner-page .contact-information,.inner-page .contact-form-panel{min-width:0}
.inner-page .article-content p,.inner-page .article-content li,
.inner-page .masthead-grid>div>p,.inner-page .directory-masthead>p,
.inner-page .contact-masthead>p,.inner-page .contact-information p,
.inner-page .directory-page-card p{font-size:clamp(16px,1.05vw,19px);line-height:1.8}
.inner-page .masthead-grid>div>p,.inner-page .directory-masthead>p,
.inner-page .contact-masthead>p{max-width:70ch}
.inner-page .article-content table{font-size:16px}
.inner-page .page-breadcrumb{font-size:13px;line-height:1.6;flex-wrap:wrap}
.inner-page .page-main .btn,.inner-page .page-main .text-link{font-size:14px;line-height:1.5}
.inner-page form input:not([type=checkbox]):not([type=hidden]),
.inner-page form select,.inner-page form textarea{font-size:16px}
.inner-page .article-content{overflow-wrap:anywhere}
@media(min-width:1760px){
 .php-header .professional-mega{left:var(--page-gutter);right:var(--page-gutter)}
}
@media(max-width:900px){
 .inner-page .article-layout,.inner-page .legal-layout,.inner-page .contact-page-grid{grid-template-columns:minmax(0,1fr);gap:32px}
 .inner-page .article-sidebar,.inner-page .legal-nav{position:static;max-height:none}
}
@media(max-width:720px){
 body.home-page,body.inner-page{--page-gutter:20px}
 .inner-page .masthead-actions{gap:18px}
 .inner-page .masthead-actions .btn{white-space:normal}
 .inner-page .article-content table{font-size:14px}
}
