body { overflow-x: clip; background: var(--pmsl-white); color: var(--pmsl-text); font-family: var(--font-body); font-size: 14px; line-height: 1.65; -webkit-font-smoothing: antialiased; }
body.menu-open { overflow: hidden; }
h1, h2, h3, h4, h5, h6 { font-family: var(--font-heading); font-weight: 700; letter-spacing: -.025em; line-height: 1.12; }
a { color: inherit; text-decoration: none; }
.wp-site-blocks, main { margin: 0; }
main > * { margin-block-start: 0; margin-block-end: 0; }
.wp-block-columns, .wp-block-group, .wp-block-image, .wp-block-buttons, .wp-block-list { margin-block-start: 0; margin-block-end: 0; }
.wp-block-column { min-width: 0; }
.pmsl-container, .pmsl-wide { width: min(calc(100% - 80px), var(--container)); max-width: var(--container) !important; margin-inline: auto; }
.skip-link { position: fixed; left: 20px; top: -100px; z-index: 9999; padding: 10px 16px; background: #fff; color: var(--pmsl-blue); }
.skip-link:focus { top: 12px; }
:focus-visible { outline: 3px solid #f5a400; outline-offset: 3px; }
.pmsl-eyebrow, .eyebrow { color: var(--pmsl-blue-bright); font-size: 14px; font-weight: 700; letter-spacing: .01em; text-transform: uppercase; }
.button { display: inline-flex; min-height: 46px; align-items: center; justify-content: center; gap: 12px; padding: 12px 22px; border: 1px solid transparent; border-radius: 3px; font-size: 14px; font-weight: 700; line-height: 1; transition: background-color .2s ease, color .2s ease, border-color .2s ease, transform .2s ease; }
.button:hover { transform: translateY(-1px); }
.button--primary { background: var(--pmsl-blue-bright); color: #fff; }
.button--primary:hover { background: var(--pmsl-blue-dark); }
.button--outline { border-color: var(--pmsl-blue-bright); background: #fff; color: var(--pmsl-blue-bright); }
.pmsl-button .wp-block-button__link { display: inline-flex; min-height: 48px; align-items: center; justify-content: center; gap: 14px; padding: 13px 24px; border: 1px solid transparent; border-radius: 3px; background: transparent; color: inherit; font-size: 14px; font-weight: 700; line-height: 1; transition: background-color .2s ease, color .2s ease, border-color .2s ease, transform .2s ease; }
.pmsl-button .wp-block-button__link:hover { transform: translateY(-1px); }
.pmsl-button--primary .wp-block-button__link { border-color: var(--pmsl-blue-bright); background: var(--pmsl-blue-bright); color: #fff; }
.pmsl-button--primary .wp-block-button__link:hover { background: var(--pmsl-blue-dark); }
.pmsl-button--outline .wp-block-button__link { border-color: var(--pmsl-blue-bright); background: #fff; color: var(--pmsl-blue-bright); }
.pmsl-button--white .wp-block-button__link { min-width: 190px; border-color: #fff; background: #fff; color: var(--pmsl-blue-bright); }
.content-page { min-height: 60vh; padding-block: 80px; }
.content-page h1 { margin-bottom: 24px; font-size: clamp(36px, 5vw, 60px); }
