:root{
  --agp-navy:#1C2E4A;
  --agp-sage:#9BBEAB;
  --agp-coral:#E27D60;
  --agp-container: min(1200px, 92vw);
  --agp-gap: clamp(16px, 3vw, 28px);
  --agp-px: clamp(16px, 3vw, 28px);
}
.agp-btn--primary{ background:var(--agp-coral) !important; border:2px solid var(--agp-coral) !important; color:#fff !important; }
.agp-btn--primary:hover{ filter:brightness(.96); }
.agp-btn--outline{ background:transparent !important; border:2px solid var(--agp-navy) !important; color:var(--agp-navy) !important; }
.agp-card{ background:#fff; border:1px solid rgba(0,0,0,.08); border-radius:16px; padding:1rem; box-shadow:0 6px 24px rgba(0,0,0,.04); }
.agp-section{ padding: clamp(40px, 6vw, 72px) 0; }
.agp-section.sage{ background: color-mix(in srgb, var(--agp-sage) 12%, white); }
.agp-section.navy{ background: color-mix(in srgb, var(--agp-navy) 6%, white); }
.agp-section.full-bleed{ width:100vw; position:relative; left:50%; right:50%; margin-left:-50vw; margin-right:-50vw; padding-left:0; padding-right:0; }
.agp-section.full-bleed > .wp-block-group,
.agp-section.full-bleed > .wp-block-columns,
.agp-section.full-bleed > .agp-container,
.agp-section.full-bleed > .wp-block-cover__inner-container,
.agp-section.full-bleed > .wp-block-group__inner-container{ max-width:var(--agp-container); margin-inline:auto; padding-left:var(--agp-px); padding-right:var(--agp-px); }
/* Grid fix */
.wp-block-post-template.is-layout-grid{ grid-template-columns:repeat(1,minmax(0,1fr)); gap:var(--agp-gap); }
@media (min-width:700px){ .wp-block-post-template.is-layout-grid{ grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (min-width:1024px){ .wp-block-post-template.is-layout-grid{ grid-template-columns:repeat(3,minmax(0,1fr)); } }
.wp-block-post-template .agp-card{ height:100%; }
.wp-block-post-template .agp-card .wp-block-post-excerpt{ margin-bottom:0; }
.wp-site-blocks .wp-block-navigation a{ color:var(--agp-navy); font-weight:600; }
.wp-site-blocks .wp-block-site-title a{ color:var(--agp-navy) !important; font-weight:800; }
.wp-site-blocks .wp-block-template-part footer{ border-top:1px solid rgba(0,0,0,.08); color:#5d6878; font-size:.95rem; }
