.apg-photo{display:flex;align-items:center;justify-content:center;text-align:center;min-height:320px;aspect-ratio:4/5;background:repeating-linear-gradient(45deg,rgba(8,58,79,.045),rgba(8,58,79,.045) 12px,transparent 12px,transparent 24px),var(--color-ivory);border:1px dashed rgba(8,58,79,.28);font-family:var(--font-body);font-size:var(--text-body-sm);font-weight:var(--weight-bold);letter-spacing:.12em;text-transform:uppercase;color:var(--color-navy-soft);padding:var(--space-8);margin:0}
.hero--navy .apg-photo{background:repeating-linear-gradient(45deg,rgba(214,185,140,.10),rgba(214,185,140,.10) 12px,transparent 12px,transparent 24px),rgba(255,255,255,.04);border-color:rgba(214,185,140,.45);color:var(--color-champagne)}
.feature-post .apg-photo{aspect-ratio:auto;height:100%;min-height:280px}
.e-con.apg-header-bar{background:var(--color-navy)}
.e-con.apg-brand{display:flex!important;flex-direction:column;gap:2px!important;width:auto!important;flex:0 0 auto!important;padding:0!important}
.apg-header-bar .brand-mark .xpro-heading-title,.apg-header-bar .brand-mark *{font-family:var(--font-display);font-weight:800;font-size:24px;letter-spacing:.02em;color:var(--color-cream);line-height:1.1;margin:0}
.apg-header-bar .brand-tag *{font-family:var(--font-body);font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--color-champagne);margin:0}
.apg-header-bar .apg-nav{flex:1 1 auto}
.apg-header-bar .apg-nav ul li a,.apg-header-bar .apg-nav .xpro-menu-item{font-family:var(--font-body);font-size:14px;font-weight:600;letter-spacing:.04em;color:var(--color-cream);text-transform:uppercase}
.apg-header-bar .apg-nav ul li a:hover{color:var(--color-champagne)}
.apg-header-bar .apg-header-btn{flex:0 0 auto}
.apg-header-bar .apg-header-btn .xpro-button,.apg-header-bar .apg-header-btn a{background:var(--color-oxblood);color:var(--color-cream);border:1px solid var(--color-oxblood);border-radius:0;padding:14px 26px;font-family:var(--font-body);font-size:14px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;text-decoration:none;display:inline-flex;align-items:center}
.apg-header-bar .apg-header-btn a:hover{background:var(--color-oxblood-dark);border-color:var(--color-oxblood-dark);color:var(--color-cream)}
.e-con.apg-footer-grid{display:grid!important;gap:var(--space-10)!important;grid-template-columns:1fr}
@media (min-width:700px){.e-con.apg-footer-grid{grid-template-columns:1.4fr 1fr 1fr;gap:var(--space-12)!important}}
@media (min-width:1000px){.e-con.apg-footer-grid{grid-template-columns:1.6fr 1fr 1fr 1.2fr}}
.apg-footer .plain{display:block!important}
.apg-footer .brand-mark *{font-family:var(--font-display);font-weight:800;font-size:24px;color:#fff;margin:0;line-height:1.1}
.apg-footer .brand-tag *{font-family:var(--font-body);font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--color-champagne);margin:0 0 var(--space-5)}
.apg-footer h3,.apg-footer .xpro-heading-title{font-family:var(--font-body);font-size:var(--text-eyebrow);font-weight:700;letter-spacing:var(--tracking-eyebrow);text-transform:uppercase;color:var(--color-champagne);margin:0 0 var(--space-5)}
ul.footer-links{list-style:none;padding:0;margin:0;display:grid;gap:var(--space-3)}
ul.footer-links li{margin:0}
.apg-footer address{font-style:normal;line-height:2}
.apg-footer .apg-social{margin-top:var(--space-6)}
.apg-footer .apg-social a{color:var(--color-champagne)}
.e-con.footer-base{margin-top:var(--space-16);padding-top:var(--space-6)!important;border-top:1px solid rgba(214,185,140,.25);color:rgba(239,231,218,.72);gap:var(--space-4) var(--space-8)!important}
.e-con.footer-base .elementor-widget-text-editor{color:rgba(239,231,218,.72);font-size:var(--text-body-sm)}
.stat-value .elementor-heading-title a{color:var(--text-heading);text-decoration:none}
.stat-value .elementor-heading-title a:hover{color:var(--color-oxblood)}
.e-con.plain{display:block!important}
.e-con.measure{max-width:62ch}
.apg-popup .apg-form{margin-top:var(--space-6)}
.apg .elementor-widget:not(:last-child){margin-bottom:0}
.apg .elementor-widget-text-editor{margin-bottom:var(--space-5)}
.apg .elementor-widget-text-editor:last-child{margin-bottom:0}
.apg .e-con>.e-con-inner>.elementor-widget:last-child,.apg .e-con>.elementor-widget:last-child{margin-bottom:0}

/* Astra shell reset so full-bleed bands work */
body.apg #content,body.apg #content .ast-container,body.apg .site-content .ast-container{max-width:100%!important;width:100%!important;padding-left:0!important;padding-right:0!important;margin-left:0!important;margin-right:0!important}
body.apg #primary,body.apg .ast-page-builder-template .site-content>.ast-container{padding:0!important;margin:0!important}
body.apg .entry-header,body.apg .ast-single-post .entry-title{display:none}
body.apg .site-main{padding:0}
body.apg .elementor>.e-con.e-parent{--content-width:100%}

/* === Fidelity pass: match the original design system exactly === */
.e-con.card{display:flex!important;flex-direction:column;gap:0!important}
.card .elementor-widget-text-editor + .elementor-widget-text-editor{margin-top:var(--space-6)}
.card .elementor-widget-heading .elementor-heading-title{margin-bottom:var(--space-4)}
.stat strong{display:block;font-family:var(--font-display);font-weight:var(--weight-display);font-size:clamp(28px,4vw,var(--text-display-md));color:var(--text-heading);line-height:1.1;margin-bottom:var(--space-2)}
.stat strong a{color:inherit;text-decoration:none}
.stat strong a:hover{color:var(--color-oxblood)}
.stat--sm strong{font-size:clamp(20px,2.4vw,24px)}
.section--navy .stat strong{color:var(--color-white)}
svg.icon{width:28px;height:28px;stroke:var(--color-oxblood);stroke-width:1.5;fill:none;margin-bottom:var(--space-5);display:block}
.section--navy svg.icon,.apg-footer svg.icon{stroke:var(--color-champagne)}
.e-con.hero__media{position:relative;overflow:hidden}
.hero__media .elementor-widget-image img{width:100%;aspect-ratio:4/5;object-fit:cover;display:block}
.e-con.hero__media::after{content:'';position:absolute;inset:0;background:linear-gradient(to top,rgba(8,58,79,0.55),rgba(8,58,79,0));pointer-events:none}
.social{display:flex;gap:var(--space-4);margin-top:var(--space-6)}
.social a{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid rgba(214,185,140,0.4)}
.social a:hover{border-color:var(--color-champagne);background:rgba(214,185,140,0.12)}
.social svg{width:18px;height:18px;fill:var(--color-champagne)}
.feature-post .elementor-widget-image,.feature-post .elementor-widget-image img{height:100%}
.feature-post .elementor-widget-image img{width:100%;min-height:240px;object-fit:cover}
.e-con.apg-header-bar{background:var(--color-navy)!important;color:var(--text-on-navy);max-width:var(--wrap)!important;margin-inline:auto}
.apg-header-outer{background:var(--color-navy)}
.apg-header-bar .apg-nav ul{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-6);list-style:none;margin:0;padding:0;justify-content:flex-end}
.apg-header-bar .apg-nav .xpro-elementor-nav-link{display:block;padding:var(--space-2) 0;color:var(--color-ivory);font-family:var(--font-body);font-size:var(--text-body-sm);font-weight:var(--weight-medium);letter-spacing:0.04em;text-transform:uppercase;text-decoration:none;border-bottom:2px solid transparent;background:transparent}
.apg-header-bar .apg-nav .xpro-elementor-nav-link:hover,.apg-header-bar .apg-nav .current-menu-item>.xpro-elementor-nav-link{color:var(--color-champagne);border-bottom-color:var(--color-champagne)}
.apg-header-bar .apg-header-btn a{min-height:44px;padding-top:var(--space-3);padding-bottom:var(--space-3)}

/* Specificity corrections A */
body.apg ul.ticks,body.apg ul.pill-row,body.apg ul.footer-links{list-style:none;padding-left:0;margin:0}
body.apg ul.ticks{display:grid;gap:var(--space-3)}
body.apg ul.ticks li{position:relative;padding-left:var(--space-7);margin:0}
body.apg ul.ticks li::before{content:'';position:absolute;left:0;top:0.62em;width:12px;height:2px;background:var(--color-oxblood)}
body.apg .section--navy ul.ticks li::before,body.apg .hero--navy ul.ticks li::before{background:var(--color-champagne)}
body.apg ul.pill-row{display:flex;flex-wrap:wrap;gap:var(--space-3)}
body.apg ul.pill-row li{margin:0;border:1px solid var(--border-default);padding:var(--space-2) var(--space-4);font-size:var(--text-body-sm);color:var(--text-heading);background:var(--color-white)}
body.apg .section--navy ul.pill-row li{background:transparent;border-color:rgba(214,185,140,0.4);color:var(--color-ivory)}
body.apg ul.footer-links{display:grid;gap:var(--space-3)}
body.apg ul.footer-links li{margin:0}
/* Specificity corrections B */
body.apg .section--navy a,body.apg .hero--navy a,body.apg .cta-band a{color:var(--color-champagne)}
body.apg .apg-footer a{color:var(--color-ivory);text-decoration:none}
body.apg .apg-footer a:hover{color:var(--color-champagne);text-decoration:underline}
body.apg .apg-header-bar .apg-nav .xpro-elementor-nav-link{color:var(--color-ivory)}
body.apg .apg-header-bar .apg-nav .xpro-elementor-nav-link:hover,body.apg .apg-header-bar .apg-nav .current-menu-item>.xpro-elementor-nav-link{color:var(--color-champagne)}
body.apg .apg-header-bar .brand-mark *{color:var(--color-cream)}
body.apg .apg-header-bar .apg-header-btn a{color:var(--color-cream)}
body.apg .stat strong a{color:inherit;text-decoration:none}
body.apg .stat strong a:hover{color:var(--color-oxblood)}
body.apg .post-row .elementor-heading-title a{color:var(--text-heading);text-decoration:none}
body.apg .post-row .elementor-heading-title a:hover{color:var(--color-oxblood)}
body.apg .btn .elementor-button{color:var(--color-white)}
body.apg .btn--outline .elementor-button{color:var(--color-navy)}
body.apg .hero--navy .btn--outline .elementor-button,body.apg .cta-band .btn--outline .elementor-button,body.apg .section--navy .btn--outline .elementor-button{color:var(--color-champagne)}
body.apg .hero--navy .btn--outline .elementor-button:hover,body.apg .cta-band .btn--outline .elementor-button:hover,body.apg .section--navy .btn--outline .elementor-button:hover{color:var(--color-navy)}
body.apg .elementor-widget-text-editor p:last-child{margin-bottom:0}
body.apg .stat{border-top:1px solid var(--border-accent);padding-top:var(--space-5)}
body.apg .social a{text-decoration:none}
/* FAQ accordion styled to match the original details/summary design */
body.apg .faq .elementor-accordion{border-top:1px solid var(--border-default)}
body.apg .faq .elementor-accordion-item{border:0;border-bottom:1px solid var(--border-default)}
body.apg .faq .elementor-tab-title{background:transparent;padding:var(--space-6) 0;margin:0;border:0;display:flex;justify-content:space-between;align-items:center;gap:var(--space-6);font-family:var(--font-display);font-weight:var(--weight-bold);font-size:18px;line-height:1.35;cursor:pointer}
body.apg .faq .elementor-tab-title a,body.apg .faq .elementor-tab-title .elementor-accordion-title{color:var(--text-heading);text-decoration:none;font-family:var(--font-display);font-weight:var(--weight-bold);font-size:18px}
body.apg .faq .elementor-tab-title:hover a,body.apg .faq .elementor-tab-title:hover .elementor-accordion-title{color:var(--color-oxblood)}
body.apg .faq .elementor-accordion-icon{display:none}
body.apg .faq .elementor-tab-title::after{content:'+';font-family:var(--font-body);font-weight:var(--weight-regular);font-size:24px;line-height:1;color:var(--color-oxblood);flex:none}
body.apg .faq .elementor-tab-title.elementor-active::after{content:'\2013'}
body.apg .faq .elementor-tab-content{background:transparent;border:0;padding:0 0 var(--space-6);max-width:68ch}
body.apg .faq .elementor-tab-content p{margin:0}
/* Full-bleed header + footer bands, boxed inner content */
body.apg .e-con.apg-header-bar,body.apg .e-con.apg-footer{max-width:100%!important;width:100%!important;margin-left:0!important;margin-right:0!important;padding-left:0!important;padding-right:0!important;padding-top:0!important;padding-bottom:0!important}
body.apg .e-con.apg-header-bar>.e-con-inner{max-width:var(--wrap);width:100%;margin-inline:auto;padding-inline:var(--gutter);padding-block:var(--space-5);display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4) var(--space-8)}
body.apg .e-con.apg-footer>.e-con-inner{max-width:var(--wrap);width:100%;margin-inline:auto;padding-inline:var(--gutter);padding-top:var(--space-16);padding-bottom:var(--space-8);display:block}
body.apg .e-con.apg-header-bar .apg-nav{margin-left:auto}
body.apg .e-con.apg-brand{margin-right:auto}
/* Neutralise Astra article wrapper styling inside the Xpro header/footer */
body.apg .xpro-theme-builder-header .elementor,body.apg #xpro-theme-builder-footer .elementor,body.apg .xpro-theme-builder-header .ast-article-single,body.apg #xpro-theme-builder-footer .ast-article-single{max-width:100%!important;width:100%!important;padding:0!important;margin:0!important;background:transparent!important;border:0!important;box-shadow:none!important}
body.apg .xpro-theme-builder-header,body.apg .xpro-theme-builder-header-nav,body.apg #xpro-theme-builder-footer{max-width:100%;width:100%;padding:0;margin:0}
body.apg .xpro-theme-builder-header{background:var(--color-navy)}
body.apg #xpro-theme-builder-footer{background:var(--color-navy-deep)}
