#cookie-notice{position:fixed;min-width:100%;height:auto;z-index:100000;font-size:13px;letter-spacing:0;line-height:20px;left:0;text-align:center;font-weight:400;font-family:-apple-system,BlinkMacSystemFont,Arial,Roboto,"Helvetica Neue",sans-serif}#cookie-notice,#cookie-notice *{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}#cookie-notice.cn-animated{-webkit-animation-duration:.5s!important;animation-duration:.5s!important;-webkit-animation-fill-mode:both;animation-fill-mode:both}#cookie-notice.cn-animated.cn-effect-none{-webkit-animation-duration:1ms!important;animation-duration:1ms!important}#cookie-notice .cookie-notice-container{display:block}#cookie-notice.cookie-notice-hidden .cookie-notice-container{display:none}#cookie-notice .cookie-revoke-container{display:block}#cookie-notice.cookie-revoke-hidden .cookie-revoke-container{display:none}.cn-position-top{top:0}.cn-position-bottom{bottom:0}.cookie-notice-container{padding:15px 30px;text-align:center;width:100%;z-index:2}.cookie-revoke-container{padding:15px 30px;width:100%;z-index:1}.cn-close-icon{position:absolute;right:15px;top:50%;margin:-10px 0 0 0;width:15px;height:15px;opacity:.5;padding:10px;border:none;outline:0;background:0 0;box-shadow:none;cursor:pointer}.cn-close-icon:focus,.cn-close-icon:focus-visible{outline:2px solid currentColor;outline-offset:3px}.cn-close-icon:hover{opacity:1}.cn-close-icon:after,.cn-close-icon:before{position:absolute;content:' ';height:15px;width:2px;top:3px;background-color:grey}.cn-close-icon:before{transform:rotate(45deg)}.cn-close-icon:after{transform:rotate(-45deg)}#cookie-notice .cn-revoke-cookie{margin:0}#cookie-notice .cn-button{margin:0 0 0 10px;display:inline-block}#cookie-notice .cn-button:not(.cn-button-custom){font-family:-apple-system,BlinkMacSystemFont,Arial,Roboto,"Helvetica Neue",sans-serif;font-weight:400;font-size:13px;letter-spacing:.25px;line-height:20px;margin:0 0 0 10px;text-align:center;text-transform:none;display:inline-block;cursor:pointer;touch-action:manipulation;white-space:nowrap;outline:0;box-shadow:none;text-shadow:none;border:none;-webkit-border-radius:2rem;-moz-border-radius:2rem;border-radius:2rem;text-decoration:none;padding:8.5px 10px;line-height:1;color:inherit}.cn-text-container{margin:0 0 6px 0}.cn-buttons-container,.cn-text-container{display:inline-block}.cn-compliance-warning{display:block;color:#f5a623!important;font-size:12px;line-height:18px;margin:4px 0 8px 0}.cn-compliance-warning .cn-warning-icon{color:#f5a623!important;margin-right:4px}.cn-compliance-warning strong{color:#f5a623!important}.cn-compliance-warning a{color:#f5a623!important;text-decoration:underline}.cn-compliance-warning a:hover{color:#ffb84d!important}#cookie-notice.cookie-notice-visible.cn-effect-none,#cookie-notice.cookie-revoke-visible.cn-effect-none{-webkit-animation-name:fadeIn;animation-name:fadeIn}#cookie-notice.cn-effect-none{-webkit-animation-name:fadeOut;animation-name:fadeOut}#cookie-notice.cookie-notice-visible.cn-effect-fade,#cookie-notice.cookie-revoke-visible.cn-effect-fade{-webkit-animation-name:fadeIn;animation-name:fadeIn}#cookie-notice.cn-effect-fade{-webkit-animation-name:fadeOut;animation-name:fadeOut}#cookie-notice.cookie-notice-visible.cn-effect-slide,#cookie-notice.cookie-revoke-visible.cn-effect-slide{-webkit-animation-name:slideInUp;animation-name:slideInUp}#cookie-notice.cn-effect-slide{-webkit-animation-name:slideOutDown;animation-name:slideOutDown}#cookie-notice.cookie-notice-visible.cn-position-top.cn-effect-slide,#cookie-notice.cookie-revoke-visible.cn-position-top.cn-effect-slide{-webkit-animation-name:slideInDown;animation-name:slideInDown}#cookie-notice.cn-position-top.cn-effect-slide{-webkit-animation-name:slideOutUp;animation-name:slideOutUp}@-webkit-keyframes fadeIn{from{opacity:0}to{opacity:1}}@keyframes fadeIn{from{opacity:0}to{opacity:1}}@-webkit-keyframes fadeOut{from{opacity:1}to{opacity:0}}@keyframes fadeOut{from{opacity:1}to{opacity:0}}@-webkit-keyframes slideInUp{from{-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0);visibility:visible}to{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}}@keyframes slideInUp{from{-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0);visibility:visible}to{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}}@-webkit-keyframes slideOutDown{from{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}to{visibility:hidden;-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}}@keyframes slideOutDown{from{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}to{visibility:hidden;-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}}@-webkit-keyframes slideInDown{from{-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0);visibility:visible}to{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}}@keyframes slideInDown{from{-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0);visibility:visible}to{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}}@-webkit-keyframes slideOutUp{from{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}to{visibility:hidden;-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)}}@keyframes slideOutUp{from{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}to{visibility:hidden;-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)}}@media all and (max-width:900px){.cookie-notice-container #cn-notice-text{display:block}.cookie-notice-container #cn-notice-buttons{display:block}#cookie-notice .cn-button{margin:0 5px 5px 5px}}@media all and (max-width:480px){.cookie-notice-container,.cookie-revoke-container{padding:15px 25px}}:root { --wp--preset--font-family--exo2: var(--wp--preset--font-family--exo-2); } *, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; } .ipma-eyebrow {
font-family: var(--wp--preset--font-family--exo-2);
font-weight: 600;
font-size: 12px;
text-transform: uppercase;
letter-spacing: 0.18em;
color: var(--wp--preset--color--ipma-red);
display: block;
margin-bottom: 8px;
} .ipma-hero .ipma-eyebrow {
color: rgba(255, 255, 255, 0.92);
} .ipma-chev {
font-family: var(--wp--preset--font-family--exo-2);
font-weight: 800;
color: var(--wp--preset--color--ipma-red);
margin-left: 6px;
} .wp-block-site-logo img { display: block; } .ipma-site-header {
position: sticky;
top: 0;
z-index: 100;
background: #ffffff;
border-bottom: 1px solid #CCCCCC;
}
.ipma-header-row {
display: flex;
align-items: center;
min-height: 72px;
gap: 32px;
padding-left: var(--wp--preset--spacing--7) !important; padding-right: var(--wp--preset--spacing--7) !important;
} .wp-block-navigation a {
font-family: var(--wp--preset--font-family--exo-2) !important;
font-weight: 500;
font-size: 14px;
color: #333333;
text-decoration: none;
border-bottom: 2px solid transparent;
padding-bottom: 2px;
transition: color 120ms ease, border-color 120ms ease;
white-space: nowrap;
}
.wp-block-navigation a:hover,
.wp-block-navigation a:focus,
.wp-block-navigation .current-menu-item > a {
color: #000000;
border-bottom-color: #E30613;
} .ipma-header-row > .wp-block-navigation {
flex: 1 1 0;
min-width: 0;
overflow: hidden;
} .ipma-header-row > .wp-block-navigation .wp-block-navigation__container {
flex-wrap: nowrap;
overflow: hidden;
} .wp-block-navigation .ipma-nav-cta a,
.ipma-header-row .ipma-nav-cta a {
background: #E30613;
color: #ffffff !important;
border: none;
border-bottom: none !important;
border-radius: 4px;
padding: 8px 16px;
font-weight: 600;
white-space: nowrap;
transition: background 120ms ease;
}
.wp-block-navigation .ipma-nav-cta a:hover,
.ipma-header-row .ipma-nav-cta a:hover { background: #B8040F; } .ipma-header-row > .wp-block-group:last-child {
flex-shrink: 0;
display: flex;
align-items: center;
gap: var(--wp--preset--spacing--5);
min-height: unset;
} .wp-block-navigation,
.wp-block-navigation__container {
overflow: visible !important;
}
.wp-block-navigation__container {
display: flex;
align-items: center;
list-style: none;
margin: 0;
padding: 0;
gap: var(--wp--preset--spacing--6);
}
.wp-block-navigation-item {
position: relative;
list-style: none;
} .wp-block-navigation__submenu-icon {
display: none;
} .wp-block-navigation-item > .wp-block-navigation__submenu-container {
display: none !important;
position: absolute;
top: 100%;
left: 0;
min-width: 220px;
background: #ffffff;
border: 1px solid #CCCCCC;
border-radius: 4px;
box-shadow: 0 8px 24px rgba(0,0,0,0.10);
padding: 8px 0;
padding-top: 16px; z-index: 200;
list-style: none;
margin: 0;
flex-direction: column;
gap: 0;
} .wp-block-navigation-item:hover > .wp-block-navigation__submenu-container,
.wp-block-navigation-item:focus-within > .wp-block-navigation__submenu-container {
display: flex !important;
} .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
display: block;
padding: 9px 20px;
font-size: 13px;
white-space: nowrap;
border-bottom: none !important;
}
.wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover {
background: #F5F5F5;
color: #E30613 !important;
} .ipma-hero {
min-height: 560px;
} .ipma-hero .wp-block-cover__inner-container {
width: 100%;
max-width: 1200px;
margin-left: auto;
margin-right: auto;
padding-left: var(--wp--preset--spacing--7); padding-right: var(--wp--preset--spacing--7);
display: flex;
flex-direction: column;
align-items: flex-start;
text-align: left;
} .ipma-hero h1,
.ipma-hero .wp-block-cover__inner-container > p:not(.ipma-eyebrow) {
max-width: 580px;
} .ipma-cert-card {
border: 1px solid #CCCCCC;
border-radius: 4px;
padding: 28px 24px;
background: #ffffff;
transition: border-color 160ms ease, box-shadow 160ms ease;
}
.ipma-cert-card:hover {
border-color: #000000;
box-shadow: 0 8px 24px rgba(0,0,0,0.08);
}
.ipma-cert-card .ipma-level-letter {
font-family: var(--wp--preset--font-family--exo-2);
font-weight: 800;
font-size: 52px;
color: var(--wp--preset--color--ipma-red);
line-height: 1;
letter-spacing: -0.02em;
display: block;
margin-bottom: 12px;
} .ipma-cta-strip {
background: #000000;
color: #ffffff;
}
.ipma-cta-strip h2,
.ipma-cta-strip p {
color: #ffffff;
} .ipma-site-footer {
background: #000000;
color: rgba(255,255,255,0.8);
}
.ipma-site-footer a {
color: rgba(255,255,255,0.75);
text-decoration: none;
border-bottom: 1px solid transparent;
transition: color 120ms ease, border-color 120ms ease;
}
.ipma-site-footer a:hover {
color: #ffffff;
border-bottom-color: #E30613;
}
.ipma-site-footer .ipma-footer-heading {
font-family: var(--wp--preset--font-family--exo-2);
font-weight: 600;
font-size: 11px;
text-transform: uppercase;
letter-spacing: 0.14em;
color: #ffffff;
margin-bottom: 12px;
}
.ipma-site-footer .wp-block-site-logo img {
filter: invert(1) brightness(10);
}
.ipma-site-footer .wp-block-separator {
border-color: rgba(255,255,255,0.12) !important;
}  .service-page-hero {
background: var(--wp--preset--color--ipma-red);
color: #ffffff;
padding: var(--wp--preset--spacing--9) var(--wp--preset--spacing--5);
}
.service-page-hero h1 {
font-family: var(--wp--preset--font-family--exo-2);
font-size: clamp(36px, 5vw, 64px);
font-weight: 800;
line-height: 1.05;
letter-spacing: -0.015em;
color: #ffffff;
margin-bottom: var(--wp--preset--spacing--5);
}
.service-page-hero p,
.service-page-hero > .wp-block-group > p {
font-size: 18px;
line-height: 1.55;
color: rgba(255,255,255,0.92);
max-width: 640px;
margin-bottom: var(--wp--preset--spacing--6);
}
.service-page-hero .wp-block-button__link {
background: #ffffff !important;
color: var(--wp--preset--color--ipma-red) !important;
font-family: var(--wp--preset--font-family--exo-2);
font-weight: 600;
}
.service-page-hero .wp-block-button__link:hover {
background: #000000 !important;
color: #ffffff !important;
} .service-content-section {
padding: var(--wp--preset--spacing--8) var(--wp--preset--spacing--5);
max-width: var(--wp--style--global--wide-size, 1200px);
margin-left: auto;
margin-right: auto;
}
.service-content-section h2 {
font-family: var(--wp--preset--font-family--exo-2);
font-size: var(--wp--preset--font-size--h2);
font-weight: 600;
margin-bottom: var(--wp--preset--spacing--5);
}
.service-content-section p {
font-size: 18px;
line-height: 1.6;
color: #333333;
max-width: 720px;
} .service-cards-section {
padding: var(--wp--preset--spacing--7) var(--wp--preset--spacing--5);
max-width: var(--wp--style--global--wide-size, 1200px);
margin-left: auto;
margin-right: auto;
}
.service-cards-section .wp-block-columns {
gap: var(--wp--preset--spacing--5);
}
.service-cards-section .ipma-cert-card h3 {
font-family: var(--wp--preset--font-family--exo-2);
font-size: var(--wp--preset--font-size--h4);
font-weight: 700;
margin-bottom: var(--wp--preset--spacing--4);
color: #000000;
}
.service-cards-section .ipma-cert-card p {
font-size: 15px;
line-height: 1.6;
color: #444444;
margin-bottom: var(--wp--preset--spacing--4);
}
.service-cards-section .ipma-cert-card a {
font-family: var(--wp--preset--font-family--exo-2);
font-weight: 600;
font-size: 13px;
color: var(--wp--preset--color--ipma-red);
text-decoration: none;
}
.service-cards-section .ipma-cert-card a:hover {
text-decoration: underline;
} .entry-content .alignfull,
.wp-block-post-content .alignfull {
width: 100vw;
max-width: 100vw;
margin-left: calc(50% - 50vw);
margin-right: calc(50% - 50vw);
}
.entry-content .alignwide,
.wp-block-post-content .alignwide {
max-width: 1200px;
margin-left: auto;
margin-right: auto;
} .wp-block-post-content > * + * { margin-top: var(--wp--preset--spacing--5); }
.wp-block-post-featured-image img {
border-radius: 4px;
width: 100%;
height: auto;
object-fit: cover;
}
.ipma-post-meta {
font-family: var(--wp--preset--font-family--exo-2);
font-size: 12px;
font-weight: 600;
text-transform: uppercase;
letter-spacing: 0.14em;
color: #666666;
}
.ipma-post-meta a { color: #E30613; } .wp-block-post {
border: 1px solid #CCCCCC;
border-radius: 4px;
overflow: hidden;
transition: border-color 160ms ease, box-shadow 160ms ease;
background: #ffffff;
}
.wp-block-post:hover {
border-color: #000000;
box-shadow: 0 2px 8px rgba(0,0,0,0.08);
}
.wp-block-post .wp-block-post-title a {
font-family: var(--wp--preset--font-family--exo-2);
font-weight: 600;
color: #000000;
text-decoration: none;
}
.wp-block-post .wp-block-post-title a:hover { color: #E30613; } .wp-block-pullquote {
border-left: 3px solid #E30613 !important;
border-top: none !important;
border-bottom: none !important;
text-align: left;
padding: 12px 24px;
}
.wp-block-pullquote cite {
font-family: var(--wp--preset--font-family--exo-2);
font-style: normal;
font-size: 11px;
letter-spacing: 0.14em;
text-transform: uppercase;
color: #666666;
} .wp-block-button.is-style-outline .wp-block-button__link {
background: transparent !important;
color: #000000 !important;
border: 1.5px solid #000000 !important;
}
.wp-block-button.is-style-outline .wp-block-button__link:hover {
background: #000000 !important;
color: #ffffff !important;
} .wp-block-cover .wp-block-button.is-style-outline .wp-block-button__link,
.ipma-cta-strip .wp-block-button.is-style-outline .wp-block-button__link {
color: #ffffff !important;
border-color: rgba(255,255,255,0.6) !important;
}
.wp-block-cover .wp-block-button.is-style-outline .wp-block-button__link:hover,
.ipma-cta-strip .wp-block-button.is-style-outline .wp-block-button__link:hover {
background: rgba(255,255,255,0.12) !important;
border-color: #ffffff !important;
} .ipma-hero .wp-block-button:not(.is-style-outline) .wp-block-button__link {
background: #ffffff !important;
color: #E30613 !important;
}
.ipma-hero .wp-block-button:not(.is-style-outline) .wp-block-button__link:hover {
background: #000000 !important;
color: #ffffff !important;
} :focus-visible {
outline: 2px solid #E30613;
outline-offset: 2px;
} .skip-link {
position: absolute;
top: -40px;
left: 8px;
background: #E30613;
color: #ffffff;
font-family: var(--wp--preset--font-family--exo-2);
font-weight: 600;
font-size: 14px;
padding: 8px 16px;
border-radius: 4px;
z-index: 999;
transition: top 100ms;
}
.skip-link:focus { top: 8px; } .ipma-404-number {
font-family: var(--wp--preset--font-family--exo-2);
font-weight: 800;
font-size: clamp(120px, 20vw, 240px);
color: #E30613;
line-height: 1;
letter-spacing: -0.04em;
} .ipma-badge {
display: inline-block;
font-family: var(--wp--preset--font-family--exo-2);
font-size: 12px;
font-weight: 600;
padding: 5px 14px;
border: 1.5px solid #CCCCCC;
border-radius: 100px;
color: #333333;
white-space: nowrap;
margin: 0;
}
.ipma-badge--yes {
border-color: #000000;
color: #000000;
}
.ipma-badge--no {
border-color: #CCCCCC;
color: #999999;
} .ipma-news-section:has(.wp-block-query-no-results:only-child) {
display: none;
} @media (max-width: 768px) {
.ipma-site-header .wp-block-group {
flex-wrap: wrap;
min-height: 56px;
padding-top: 12px;
padding-bottom: 12px;
}
.ipma-hero { min-height: 400px; }
}