/* gmg-design-system */
:root{
		--gmg-navy:#1B3A5C; --gmg-navy-ink:#12283d; --gmg-blue:#4a7ab5; --gmg-gold:#128553;
		--gmg-hairline:#dbe4ee; --gmg-mist:#c9d6e5; --gmg-muted:#5a6b7d; --gmg-paper:#ffffff;
		--gmg-error:#b00020;
		--gmg-r-control:8px; --gmg-r-card:14px; --gmg-r-pill:9999px;
		--gmg-t-label:12px; --gmg-t-meta:14px; --gmg-t-body:16px; --gmg-t-cardtitle:18px;
		--gmg-t-sub:21px; --gmg-t-subsection:24px; --gmg-t-section:36px; --gmg-t-page:48px;
		--gmg-shadow:0 8px 22px -14px rgba(16,40,62,.45);
	}
	/* Brand keyline: a slim green bar caps every page top and bottom, matching the email. */
	body{border-top:4px solid #128553; border-bottom:4px solid #128553;}
	.gmg-card{background:var(--gmg-paper);border:1px solid var(--gmg-hairline);border-radius:var(--gmg-r-card);box-shadow:var(--gmg-shadow);overflow:hidden}
	.gmg-pill{border-radius:var(--gmg-r-pill)}
	.gmg-btn{border-radius:var(--gmg-r-control)}
	.gmg-cv{content-visibility:auto;contain-intrinsic-size:auto 900px}
/* gmg-aow-css */
.gmg-aow{max-width:1100px;margin:44px auto;padding:0 20px}
	.gmg-aow-h{font-size:24px;color:#1B3A5C;margin:0 0 6px;line-height:1.15;text-align:center}
	.gmg-aow-sub{margin:0 auto 22px;color:#5a6b7d;font-size:17px;max-width:60ch;text-align:center;text-wrap:balance}
	.gmg-aow-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}
	.gmg-aow-card{display:flex;flex-direction:column;gap:6px;background:#fff;border:1px solid #dbe4ee;border-left:4px solid #128553;border-radius:14px;padding:20px 22px;text-decoration:none;transition:box-shadow .15s ease,transform .15s ease,border-color .15s ease}
	.gmg-aow-card:hover{box-shadow:0 10px 26px -16px rgba(16,40,62,.5);transform:translateY(-2px);border-left-color:#1B3A5C}
	.gmg-aow-title{font-size:21px;font-weight:700;color:#1B3A5C;line-height:1.2}
	.gmg-aow-desc{font-size:15px;color:#54657a;line-height:1.5}
	.gmg-aow-go{margin-top:6px;font-size:12px;font-weight:600;color:#0F7A4B;letter-spacing:.01em}
	.gmg-site-disclaimer{max-width:1100px;margin:0 auto;padding:18px 20px 30px;text-align:center;color:#55677a;font-size:12px;line-height:1.5}
	.gmg-site-disclaimer a{color:#5a6b7d}
/* gmg-growth-css */
.gmg-ub{--gmg-navy:#1B3A5C;--gmg-gold:#128553;margin-top:34px;margin-bottom:18px !important;margin-block-end:18px !important;border:1px solid #d9e2ec;border-radius:16px;background:#fff;box-shadow:0 10px 30px -18px rgba(16,40,62,.35);overflow:hidden}
	/* The theme's own content-wrapper padding-bottom (a global default,
	applied to every page) stacks with our own margin below the CTA,
	leaving far more air than intended when the CTA is the last thing on
	the page - which it always is, since it's auto-appended. Cancel just
	that padding, only when it's actually cradling our CTA, so a page
	that ends in ordinary content elsewhere keeps its normal spacing. */
	.wp-block-group:has(> .entry-content > .gmg-ub:last-child){padding-bottom:0 !important}
	.gmg-ub-band{background:linear-gradient(135deg,#12385c,#1f4c78);border-color:transparent;color:#fff}
	.gmg-ub-inner{display:flex;gap:22px;align-items:center;flex-wrap:wrap;padding:24px 26px}
	.gmg-ub-copy{flex:1;min-width:240px}
	.gmg-ub-h{margin:0 0 10px;font-weight:700;font-size:21px;line-height:1.15;color:var(--gmg-navy)}
	.gmg-ub-band .gmg-ub-h{color:#fff}
	.gmg-ub-tag{margin:0 0 12px;font-size:15px;line-height:1.4;font-weight:600;color:var(--gmg-navy)}
	.gmg-ub-band .gmg-ub-tag{color:#fff}
	.gmg-ub-p{margin:0;font-size:15px;line-height:1.5;color:#4a5b6d}
	.gmg-ub-band .gmg-ub-p{color:#d7e4f1}
	.gmg-ub-form{display:flex;gap:8px;flex-wrap:wrap;flex:1;min-width:260px}
	.gmg-ub-email{flex:1;min-width:170px;border:1px solid #7a8b9c;border-radius:10px;padding:12px 14px;font-size:16px;background:#fff;color:#16283c}
	.gmg-ub-band .gmg-ub-email{border-color:rgba(255,255,255,.4)}
	.gmg-ub-btn{border:0;border-radius:10px;padding:12px 22px;font-size:16px;font-weight:700;background:var(--gmg-navy);color:#fff;cursor:pointer;transition:filter .15s}
	.gmg-ub-band .gmg-ub-btn{background:var(--gmg-gold);color:#ffffff}
	.gmg-ub-btn:hover{filter:brightness(1.1)}
	.gmg-ub-btn[disabled]{opacity:.6;cursor:default}
	.gmg-ub-msg{margin:0;padding:0 26px 18px;font-size:15px;color:#2e7d32;min-height:0}
	.gmg-ub-msg.err{color:#b00020}
	.gmg-ub-msg:empty{display:none}
	.gmg-ub-slidein{position:fixed;right:20px;bottom:20px;z-index:9999;width:340px;max-width:calc(100vw - 32px);background:#fff;border:1px solid #d0dce8;border-radius:16px;box-shadow:0 18px 50px -18px rgba(16,40,62,.5);padding:20px 20px 6px;transform:translateY(24px);opacity:0;transition:transform .3s ease,opacity .3s ease}
	.gmg-ub-slidein.gmg-ub-show{transform:none;opacity:1}
	.gmg-ub-slidein .gmg-ub-h{font-size:21px;margin-bottom:8px}
	.gmg-ub-slidein .gmg-ub-p{font-size:15px;margin-bottom:12px}
	.gmg-ub-slidein .gmg-ub-form{min-width:0}
	.gmg-ub-slidein .gmg-ub-email{flex:1 1 140px;min-width:140px;width:auto}
	.gmg-ub-slidein .gmg-ub-btn{width:100%;margin-top:8px}
	.gmg-ub-slidein .gmg-ub-msg{padding:8px 0 4px}
	.gmg-ub-name{flex:0 1 150px;min-width:120px;border:1px solid #7a8b9c;border-radius:10px;padding:12px 14px;font-size:16px;background:#fff;color:#16283c}
	.gmg-ub-band .gmg-ub-name{border-color:rgba(255,255,255,.4)}
	.gmg-ub-slidein .gmg-ub-name{flex:0 1 110px;min-width:90px;width:auto}
	.gmg-ub-more{flex:1;min-width:260px;display:flex;flex-direction:column;gap:10px}
	.gmg-ub-more-h{margin:0;font-size:15px;line-height:1.45;color:#4a5b6d}
	.gmg-ub-band .gmg-ub-more-h{color:#d7e4f1}
	.gmg-ub-more-row{display:flex;gap:14px;align-items:center;flex-wrap:wrap;font-size:15px;color:#16283c}
	.gmg-ub-band .gmg-ub-more-row{color:#fff}
	.gmg-ub-more-row label{display:inline-flex;gap:6px;align-items:center;cursor:pointer}
	.gmg-ub-more-l{font-weight:600}
	.gmg-ub-more-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
	.gmg-ub-in{border:1px solid #7a8b9c;border-radius:10px;padding:10px 12px;font-size:15px;background:#fff;color:#16283c;min-width:0;width:100%}
	.gmg-ub-band .gmg-ub-in{border-color:rgba(255,255,255,.4)}
	.gmg-ub-more-act{display:flex;gap:10px;align-items:center}
	.gmg-ub-skip{border:0;background:none;font-size:15px;color:#6b7c8e;cursor:pointer;text-decoration:underline;padding:6px 4px}
	.gmg-ub-band .gmg-ub-skip{color:#d7e4f1}
	.gmg-ub-slidein .gmg-ub-more-grid{grid-template-columns:1fr}
	.gmg-ub-slidein .gmg-ub-more .gmg-ub-btn{margin-top:0}
	@media(max-width:480px){.gmg-ub-more-grid{grid-template-columns:1fr}}
	.gmg-ub-close{position:absolute;top:8px;right:10px;border:0;background:none;font-size:24px;line-height:1;color:#5a6b7d;cursor:pointer}
	.gmg-ub-close:hover{color:#16283c}
	@media(max-width:600px){.gmg-ub-inner{padding:20px}.gmg-ub-h{font-size:17px}}
	.gmg-ub-slidein{box-sizing:border-box}
	@media(max-width:400px){.gmg-ub-slidein{left:8px;right:8px;width:auto;max-width:none}.gmg-ub-slidein .gmg-ub-name,.gmg-ub-slidein .gmg-ub-email{flex:1 1 100%;min-width:0;width:100%}}
	@media(prefers-reduced-motion:reduce){.gmg-ub-slidein{transition:none}}
/* gmg-photos-css */
.gmg-photos{max-width:1100px;margin:24px auto;padding:0 20px}
	.gmg-photos-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px}
	.gmg-photo{position:relative;display:block;aspect-ratio:3/2;border-radius:10px;overflow:hidden;background:#e7ecf1 center 22%/cover no-repeat;text-decoration:none;transition:transform .15s ease}
	.gmg-photo:hover{transform:translateY(-2px)}
	.gmg-photo-cap{position:absolute;left:0;right:0;bottom:0;padding:20px 10px 8px;background:linear-gradient(transparent,rgba(9,20,34,.82));color:#fff;font-size:12px;line-height:1.3;opacity:0;transition:opacity .15s ease}
	.gmg-photo:hover .gmg-photo-cap,.gmg-photo:focus .gmg-photo-cap{opacity:1}
	.gmg-photos-more{margin:18px 0 0;font-weight:600}
	.gmg-photos-more a{color:#1B3A5C}
	.gmg-circles{display:flex;justify-content:center;align-items:flex-start;gap:28px;margin:40px auto;padding:0 20px;flex-wrap:wrap;max-width:720px}
	.gmg-circ{display:block;width:150px;height:150px;border-radius:50%;overflow:hidden;flex:none;box-shadow:0 10px 24px -14px rgba(16,40,62,.45);border:2px solid #fff;outline:1px solid #e2e8f0;transition:transform .15s ease}
	.gmg-circ[hidden]{display:none}
	.gmg-circ:hover{transform:translateY(-3px)}
	.gmg-circ img{width:100%;height:100%;object-fit:cover;display:block}
	@media(max-width:480px){.gmg-circ{width:100px;height:100px}.gmg-circles{gap:18px}}
/* gmg-nav-tidy */
/* Footer text links (Privacy, Accessibility, Media Kit, disclaimer): the
	   theme never sets a decoration, so they fell back to browser underlines
	   while the header menu did not. Underline on hover only, everywhere. */
	body footer.wp-block-template-part a:where(:not(.wp-element-button)):where(:not(.gmg-footer-btn)),
	body .gmg-site-disclaimer a{ text-decoration:none; }
	body footer.wp-block-template-part a:where(:not(.wp-element-button)):where(:not(.gmg-footer-btn)):hover,
	body .gmg-site-disclaimer a:hover{ text-decoration:underline; }
	@media (min-width:600px){
	  body header .wp-block-navigation__container,
	  body header.wp-block-template-part .wp-block-navigation__container{ flex-wrap:nowrap !important; }
	  body header .wp-block-navigation-item a,
	  body header.wp-block-template-part .wp-block-navigation-item a{ white-space:nowrap; font-size:15px !important; }
	}
	/* Same weight as the footer menu; the theme left header links at 300. */
	body header .wp-block-navigation-item a,
	body header .wp-block-navigation-item__label,
	body header.wp-block-template-part .wp-block-navigation-item a,
	body header.wp-block-template-part .wp-block-navigation-item__label{ font-weight:600 !important; letter-spacing:0; }
	@media (min-width:600px) and (max-width:1000px){
	  body header .wp-block-navigation__container,
	  body header.wp-block-template-part .wp-block-navigation__container{
	    gap:14px !important;
	    justify-content:center !important;
	    overflow-x:auto;
	    scrollbar-width:none;
	  }
	  body header .wp-block-navigation__container::-webkit-scrollbar{ display:none; }
	  body header .wp-block-navigation-item{ margin:0 !important; }
	}
/* gmg-photo-polish */
.wp-block-image img,
.wp-block-image.size-large img,
.wp-block-image.size-full img,
.wp-block-gallery img,
.wp-block-gallery figure.wp-block-image img,
.entry-content > figure img,
.wp-block-post-content .wp-block-image img {
	border-radius: 14px;
	border: 1px solid #dbe4ee;
	box-shadow: 0 12px 28px -16px rgba(16,40,62,.55);
}
.wp-block-image { margin-top: 22px; margin-bottom: 22px; }
.wp-block-image img { display:block; height:auto; }
.wp-block-gallery.has-nested-images { gap: 16px; }
.wp-block-gallery.has-nested-images figure.wp-block-image { margin: 0; }
.wp-block-image figcaption,
.wp-block-gallery figcaption {
	color: #6b7a8a;
	font-size:15px;
	font-style: normal;
	margin-top: 8px;
}
/* gmg-type */
:root{ --wp--style--global--content-size:700px; }
	body{ font-size:18px !important; font-weight:400 !important; line-height:1.6 !important; letter-spacing:0; }
	h1,h2,h3{ line-height:1.15; font-weight:700 !important; letter-spacing:-0.02em !important; }
	h4,h5,h6{ font-weight:700 !important; letter-spacing:-0.01em; }
	h4,h5,h6{ line-height:1.25; }
	.wp-block-post-title{ line-height:1.1; }
	.has-small-font-size{ font-size:13.5px !important; }
	.has-medium-font-size{ font-size:15px !important; }
	.wp-block-quote p{ font-size:18px; font-style:normal; line-height:1.6; }
	.wp-site-blocks .gmg-site-disclaimer{ font-size:12px; }
