/* ==========================================================================
   agm-header-footer.css — the header and footer, Astra-free.

   Every number here is measured, from data/header-footer/spec.md. Where one looks
   arbitrary, that document says where it came from.

   BREAKPOINTS. The measured swap is 922 -> 923, NOT the 921 Astra's inline script uses.
   Mobile rules are max-width:922px, desktop min-width:923px, and the 1135px box starts at
   1136. The 921 that appears throughout customizer.css governs the top margin only.

   No sticky, no scroll state. spec.md §4.1: header-main-stick and friends are all false,
   and nothing with position:fixed or sticky intersects the top of the viewport after
   scrolling. .is-scrolled was dropped from the markup, the safelist and the JS.
   ========================================================================== */

:root {
	--agm-navy: #1b4e82;
	--agm-footer-bg: #141a3a;
	--agm-ink: #000000;
	--agm-hover-bg: #f9f9f9;
	--agm-box: 1135px;
}

/* --------------------------------------------------------------------------
   Header shell
   -------------------------------------------------------------------------- */

.agm-header {
	background: #ffffff;
	/* style.css L24. The shadow is the CHILD THEME's, not Astra's. */
	box-shadow: #c7c7c7 1px 1px 8px;
	/* Astra puts this on .ast-primary-header-bar, which also wraps the breadcrumb. We
	   render the breadcrumb as a sibling, so the same 10px lives on the header box.
	   Measured identical at all five viewports (Phase 4b §5.4). */
	padding-bottom: 10px;
	margin-bottom: 15px;          /* constant at every viewport and page type, §3 */
}

.agm-header__inner {
	max-width: var(--agm-box);
	margin: 0 auto;
	padding: 0 20px;              /* mobile gutter, Additional CSS 173-177 */
}

.agm-header__banner {
	position: relative;
	z-index: 99;                  /* style.css L166, stacking for the logo row */
	padding-top: 15px;            /* ast-above-header-bar, measured 15px at all 5 viewports */
}

.agm-header__logo {
	display: block;
	/* Mobile gutter is the .agm-header__inner padding alone: Astra's logo sits at x=20 at
	   375/768/922 (img 335/728/882 wide). The extra 10px made it 2.3px short. §5.4. */
	margin: 0;
}

.agm-header__logo img {
	display: block;
	width: 100%;
	height: auto;
}

.agm-header__primary {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.agm-header__primary .agm-header__inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
}

@media (min-width: 923px) {
	.agm-header {
		margin-top: 30px;         /* the 921/922 boundary; see the header note */
	}
	.agm-header__inner {
		padding: 0 15px;          /* style.css L54 */
	}
	.agm-header__logo {
		margin: 0 10px;
	}
}

@media (min-width: 1136px) {
	.agm-header__inner,
	.agm-footer__inner {
		max-width: var(--agm-box);
	}
}

/* --------------------------------------------------------------------------
   Site title and tagline — mobile primary row only

   Rendered sizes are Astra's responsive typography applied to a 32px desktop / 20px
   mobile setting; spec.md §2 measured 18.24px/22.44px at 320-414, 29.18px/35.90px at
   768-921 and 32px/39.36px at 922. Colour renders #1c1c1c, NOT the
   header-color-site-title value #0e2945 — another dead Customizer setting.
   -------------------------------------------------------------------------- */

.agm-header__title {
	display: block;
	font-weight: 400;
	color: #1c1c1c;
}

/* The span must be a block carrying the SAME line-height as the anchor. Left inline it
   kept the parent's 33.87px strut, making the name's line box 11.4px too tall.

   Georgia is set HERE rather than on .agm-header__title: the tagline renders in the body
   stack ("palatino linotype", palatino, -apple-system, ...), not in Georgia, so the block
   must not impose a family on both children. */
.agm-header__site-name {
	display: block;
	font-family: Georgia, Times, serif;
}

.agm-header__site-name,
.agm-header__site-name a {
	font-size: 18.24px;
	line-height: 22.44px;
}

/* CORRECTION to spec.md §2, which called header-color-site-title (#0e2945) a dead
   Customizer setting. It is live — the measurement that retired it read the wrapping
   span, which is #1c1c1c, and not the anchor inside it, which paints the text and is
   rgb(14,41,69) in phase4-control at every viewport. */
.agm-header__site-name a {
	color: #0e2945;
	text-decoration: none;
}

/* Astra's .site-branding padding is 1em, so it tracks the root size: 18.24px at 375 and
   768, 20px at 922. Measured branding heights 79.44 / 94.25 / 103.36. */
.agm-header__title {
	padding: 1em 0;
}

/* style.css L90. Astra's .site-description: 13.68px/20.52px at 375, 14.592/21.888 at 768,
   16/24 at 922, colour #212121. Unstyled it inherited 18.24px/33.87px — the oversized
   italic tagline in phase4b-diffs/home-375.png. §5.3. */
.agm-header__tagline {
	display: block;
	font-style: italic;
	font-size: 13.68px;
	line-height: 20.52px;
	color: #212121;
}

@media (min-width: 768px) {
	.agm-header__site-name,
	.agm-header__site-name a {
		font-size: 29.18px;
		line-height: 35.9px;
	}
	.agm-header__tagline {
		font-size: 14.592px;
		line-height: 21.888px;
	}
}

@media (min-width: 922px) {
	.agm-header__site-name,
	.agm-header__site-name a {
		font-size: 32px;
		line-height: 39.36px;
	}
	.agm-header__tagline {
		font-size: 16px;
		line-height: 24px;
	}
}

@media (min-width: 923px) {
	.agm-header__title {
		display: none;      /* not rendered on the desktop header at all */
	}
}

/* --------------------------------------------------------------------------
   Desktop navigation
   -------------------------------------------------------------------------- */

.agm-nav {
	display: none;
}

@media (min-width: 923px) {
	.agm-nav {
		display: block;
		/* Astra's nav band is a 37.14px line box holding the 30px inline-flex list on its
		   baseline: 5.0px above, 2.143px below, measured at both 923 and 1440. Padding
		   rather than line-height because the list is a flex container, so it takes the
		   band's height from the box model, not from a strut. §5.4. */
		padding: 5px 0 2.143px;
	}
}

.agm-nav__list {
	display: flex;
	margin: 0 3px 0 0;
	padding: 0;
	list-style: none;
	height: 30px;
}

/* STRUCTURAL, not class-based. The anchors inside a wp_nav_menu() are given their classes
   by WordPress and by whatever else filters nav_menu_link_attributes — Astra was adding
   `menu-link` and our `.agm-nav__link` rules matched nothing at all (Phase 4). Selecting on
   structure cannot be taken away by another component. The `.agm-nav__link` class is still
   emitted by the variant path that builds its own items, so both are covered. */
.agm-nav__list > li > a,
.agm-nav__link,
.agm-drawer__list > li > a,
.agm-drawer__link {
	font-family: Georgia, Times, serif;
	font-size: 18px;
	line-height: 20px;
	font-weight: 400;
	letter-spacing: normal;
	text-transform: none;
	color: var(--agm-ink);
	text-decoration: none;
	display: block;
	padding: 10px 10px 0 10px;
	transition: background-color 0.2s linear, color 0.2s linear;
}

.agm-nav__list > li > a:hover,
.agm-nav__link:hover {
	background-color: var(--agm-hover-bg);
}

/* Current page, measured on /gre-tutor-nyc/: #2061b1 on #ffffff, weight unchanged.
   aria-current comes from core's Walker_Nav_Menu once Astra's filter is out of the way. */
.agm-nav__list > li > a[aria-current="page"],
.agm-nav__link[aria-current="page"] {
	color: #2061b1;
	background-color: #ffffff;
}

/* --------------------------------------------------------------------------
   Call to action

   The design is Additional CSS 838-846, not the Customizer — every Customizer value for
   this button is dead (spec.md §2). Georgia is set explicitly rather than inherited
   through style.css L13's stack and then overridden, which is how it works today.
   -------------------------------------------------------------------------- */

.agm-cta {
	display: none;
	font-family: Georgia, Times, serif;
	font-size: 17px;
	line-height: 17px;
	font-weight: 700;
	color: var(--agm-navy);
	background: transparent;
	border: 2px solid var(--agm-navy);
	border-radius: 0;
	padding: 10px 20px;
	margin: 20px 9px 20px 0;
	text-decoration: none;
	transition: background-color 0.2s linear, color 0.2s linear;
}

@media (min-width: 923px) {
	.agm-cta {
		display: inline-block;
	}
}

.agm-cta:hover {
	background-color: var(--agm-navy);
	color: #ffffff;
}

/* --------------------------------------------------------------------------
   Drawer toggle and drawer
   -------------------------------------------------------------------------- */

/* Astra's toggle: 47.34px box at 375/768 and 50px at 922, from 0.75em of the root size
   around a fixed 20px icon, in the link blue — not black. The 24px SVG in a 10px box read
   as a heavier, darker hamburger than today's. Still a 44px+ tap target at every
   viewport. §5.4. */
.agm-toggle {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: none;
	border: 0;
	padding: 0.75em;
	margin: 0;
	color: #0170b9;
	cursor: pointer;
}

.agm-toggle svg {
	width: 20px;
	height: 20px;
}

@media (min-width: 923px) {
	.agm-toggle {
		display: none;
	}
}

.agm-toggle__close,
.agm-toggle[aria-expanded="true"] .agm-toggle__open {
	display: none;
}

.agm-toggle[aria-expanded="true"] .agm-toggle__close {
	display: block;
}

/* Dropdown, not flyout: it pushes the page down rather than overlaying it, matching
   Astra's data-toggle-type="dropdown" and off-canvas-move-body. */
.agm-drawer {
	background: #f7f7f7;
}

.agm-drawer.is-open {
	display: block;
}

@media (min-width: 923px) {
	.agm-drawer {
		display: none !important;
	}
}

.agm-drawer__list {
	margin: 0;
	padding: 0;
	list-style: none;
}

.agm-drawer__item + .agm-drawer__item {
	border-top: 1px solid #e5e5e5;
}

.agm-drawer__list > li > a,
.agm-drawer__link {
	color: #2061b1;
	padding: 12px 20px;
}

/* --------------------------------------------------------------------------
   Breadcrumb

   Rank Math draws the trail. None of Astra's Customizer breadcrumb values is copied here:
   spec.md §0 records that they describe an else-branch that never runs. Only the padding
   from §5b carries over.
   -------------------------------------------------------------------------- */

/* Type, which had been left to inherit. Astra: wrapper line-height 1.4 (25.536px at 375
   and 768, 28px at 922+), trail text 0.7em (12.768px / 14px) at 1.4, links #333 and the
   last crumb #000. At the inherited 18.24/20px the trail WRAPPED, adding up to 50.6px of
   header on a mobile post page — the single largest geometry error in Phase 4b. §5.2. */
.agm-breadcrumb {
	text-align: left;
	line-height: 1.4;
}

.agm-breadcrumb .rank-math-breadcrumb,
.agm-breadcrumb .rank-math-breadcrumb p {
	line-height: 1.4;
}

/* Astra's nav.rank-math-breadcrumb has a 6px left inset at all five viewports, so the
   trail starts at x=20 on mobile and x=188.5 at 1440, not at the box edge. */
.agm-breadcrumb .rank-math-breadcrumb {
	padding-left: 6px;
}

/* Astra zeroes this; we inherited the theme's 0.5em paragraph margin (9.12px at 375 and
   768, 10px at 922+). It was invisible while .agm-header had no bottom padding, because
   it collapsed straight out through the header's bottom edge — adding that padding is
   what trapped it inside. Zero it rather than subtract it from the padding. */
.agm-breadcrumb .rank-math-breadcrumb p {
	margin: 0;
}

/* Direct children of the <p> only: nesting a descendant selector here would compound
   0.7em on any crumb Rank Math wraps twice. */
.agm-breadcrumb .rank-math-breadcrumb p > a,
.agm-breadcrumb .rank-math-breadcrumb p > span {
	font-size: 0.7em;
	line-height: 1.4;
}

.agm-breadcrumb .rank-math-breadcrumb p > a,
.agm-breadcrumb .rank-math-breadcrumb p > .separator {
	color: #333333;
}

.agm-breadcrumb .rank-math-breadcrumb p > .last {
	color: #000000;
}

.agm-breadcrumb .agm-header__inner {
	padding-left: 14px;           /* Additional CSS 178-180, mobile */
	/* Astra's mobile trail runs to the viewport edge: x=14 w=361 at 375, w=754 at 768,
	   w=908 at 922. Inheriting .agm-header__inner's 20px right gutter made it 20px
	   narrower, which moved every wrap point and cost post-explanation@375 a whole extra
	   25.5px line. Desktop already matched (923: x=30 w=873; 1440: x=182.5 w=1085) and
	   the min-width:923px block below keeps its own 20px. */
	padding-right: 0;
}

@media (min-width: 923px) {
	.agm-breadcrumb .agm-header__inner {
		padding-left: 30px;       /* Additional CSS 6 */
		padding-right: 20px;      /* style.css L59 */
	}
}

/* --------------------------------------------------------------------------
   Footer
   -------------------------------------------------------------------------- */

.agm-footer {
	background: var(--agm-footer-bg);
	color: #ffffff;
}

.agm-footer__inner {
	max-width: var(--agm-box);
	margin: 0 auto;
	padding: 0 15px;              /* style.css L132, the column gutter */
}

.agm-footer__primary {
	padding: 45px 0;
	background: transparent;
	/* Astra's site-primary-footer-wrap really does carry this, and it is not cosmetic: it
	   pulls the whole below-footer band -- its border-top included -- 20px up over the
	   primary block. Sizing the band to the right NET height without it left the rule and
	   the copyright sitting 20px low. */
	margin-bottom: -20px;
}

/* Astra's columns each carry margin-bottom: 10px below 922 -- all three, so a stacked
   container is sum(columns) + 30, not + 2 gaps, and a grid row-gap would give only two.
   It still counts when they are side by side: at 768 the control's grid container is
   824.34 + 10. The step is at 922, like the type scale, not at 768 where the layout
   changes. */
.agm-footer__col {
	margin-bottom: 10px;
}

@media (min-width: 922px) {
	.agm-footer__col {
		margin-bottom: 0;
	}
}

/* Stacked, Astra's services and contact columns start 10px below their own box top; the
   bio column does not (measured at 375: bio delta +0.00, the other two +10.00). Side by
   side the tallest column governs and it makes no difference. */
.agm-footer__col--services,
.agm-footer__col--contact {
	padding-top: 10px;
}

/* Side by side, the same two columns start 10px ABOVE their own box top -- the sign
   flips. phase4-control at 1440: bio's first child is level with the column top, services'
   and contact's are at 1214.97 against a column top of 1224.97. The columns are stretched
   to the bio's height here, so pulling their content up costs no footer height; it is
   purely where the heading sits. Without it every glyph in both columns was 10px low and
   the footer read 5-8% different while every box matched. */
@media (min-width: 768px) {
	.agm-footer__col--services,
	.agm-footer__col--contact {
		padding-top: 0;
		margin-top: -10px;
	}
}

.agm-footer__primary .agm-footer__inner {
	display: grid;
	grid-template-columns: 1fr;
	gap: 0 74px;                  /* hb-inner-spacing, measured */
}

/* U1. Astra goes 3-up at 768, not 923. Column boxes in phase4-control:
   768  x = 15 / 285.7 / 556.3, w = 196.7      922  x = 15 / 337 / 659, w = 248
   923  x = 15 / 337.3 / 659.7, w = 248.3     1440  x = 167.5 / 560.5 / 953.5, w = 319
   Stacking until 923 put +566.4px of footer on every page at 768 and +695.6px at 922. */
@media (min-width: 768px) {
	.agm-footer__primary .agm-footer__inner {
		/* minmax(0, 1fr), not 1fr: a bare 1fr track cannot shrink below its content's
		   min-content width, and "registration@atlanticgmat.com" made the contact column
		   202.1px against the other two at 193.9px at 768. Astra's are 196.7px each. */
		grid-template-columns: repeat(3, minmax(0, 1fr));   /* 3-equal wins over 3-cheavy */
	}
}

/* U2. Every text run in the three primary columns computes Georgia in phase4-control;
   ours inherited the body stack. The below-footer stays on the body stack - it really is
   "palatino linotype" there on both sides. */
.agm-footer__col {
	font-family: Georgia, Times, serif;
}

.agm-footer__col p,
.agm-footer__col h2 {
	color: #ffffff;
	text-align: left;
}

/* Astra nests a SIZED SPAN inside a ROOT-SIZED paragraph, and that is load-bearing: each
   line box is the union of the paragraph's strut (18.24px / 20px) and the span's smaller
   inline box, so it comes out taller than the line-height alone. Measured in
   phase4-control: +1.01px per line in services (18.24 against 16), +2.00px per line in
   contact (18.24 against 14.6667). A paragraph sized directly loses that and the columns
   came up 22.0px and 18.0px short at 375. No magic number reproduces it; the structure
   does. Hence .agm-footer__txt in services.php and contact.php.

   The bio needs the wrapper too. Its heights matched to 0.16px without one, so it looked
   finished -- but the baseline inside the line box sat 1px high, which a height check can
   never see and the pixel diff does. All three columns are structurally Astra's now. */
.agm-footer__col--bio p,
.agm-footer__col--services p,
.agm-footer__col--contact p {
	font-size: inherit;           /* the root size, as Astra's */
}

.agm-footer__col--bio .agm-footer__txt,
.agm-footer__col--services .agm-footer__txt {
	font-size: 12pt;
}

/* The bio's span carries its OWN line-height, and that is the difference between its line
   box being exactly the paragraph's strut and being ~1px taller. Astra: paragraph 37.1429
   (20px root), span 16px/29.7143 -- measured identical at 375 and 1440. Letting the span
   inherit 37.1429 made every line the union of two 37.1429 boxes at different font sizes,
   which is taller: +10px at 1440 over ten lines, +17px at 768 over seventeen. The services
   and contact spans DO inherit their paragraph's line-height in the control, so only this
   one is overridden. */
.agm-footer__col--bio .agm-footer__txt {
	line-height: 29.7143px;
}

.agm-footer__col--contact .agm-footer__txt {
	font-size: 11pt;
}

/* Astra justifies only the first four paragraphs. "To hire..." and "We'll get back..."
   carry style="text-align: left", and justifying them stretched their first line 53px
   wider than the control's. */
.agm-footer__col--services p {
	text-align: justify;
}

.agm-footer__col--services p.agm-footer__p--left {
	text-align: left;
}

/* U3. Astra's heading block is h = 34.50 at every viewport with the glyphs at 32px, and it
   gets there the way its paragraphs do: an h2 at 25px/32.5px holding a 24pt span. Folding
   that into one element at 32px/34.5px produced the right BLOCK height but put the
   baseline 1px low -- invisible to a height check, and enough to light up every glyph edge
   in the pixel diff. So the structure is reproduced instead. */
.agm-footer__col h2 {
	font-size: 25px;
	line-height: 32.5px;
	margin: 0;
}

.agm-footer__col h2 .agm-footer__htxt {
	font-size: 24pt;
}

.agm-footer__portrait {
	display: block;
	width: 100%;
	height: auto;
}

.agm-footer__col a {
	color: #ffffff;
}

/* Astra underlines the consultation link and nothing else in the footer -- it carries
   text-decoration: underline on both the wrapping span and the anchor, while the GRE and
   Executive Assessment links above it carry none. It is also one of the two footer links
   GTM tag 30 decorates, so it is worth looking like a link. */
.agm-footer__col--services .agm-footer__p--left a {
	text-decoration: underline;
}

/* One element replaced footer-html-4 and footer-html-5, which differed only in
   line-height across disjoint device sets. That difference becomes this.

   U4/U5. The measured values, and the step is at 922 - the type scale, not the 923 layout
   breakpoint. phase4-control, about:

                     < 922            >= 922
     services p      23.712px         26px
     contact  p      29.184px         32px
     bio      p      33.8743px        37.1429px      (the root line-height, see U8)
     paragraph mb    9.12px           10px           (half the root font size)

   Ours had 25.6/27.2 for services with the step at 923, and 27.2381px flat for contact. */
.agm-footer__col--services {
	line-height: 23.712px;
}

.agm-footer__col--contact p {
	line-height: 29.184px;
}

.agm-footer__col p {
	margin-top: 0;
	margin-bottom: 9.12px;
}

.agm-footer__col p:last-child {
	margin-bottom: 0;
}

@media (min-width: 922px) {
	.agm-footer__col--services {
		line-height: 26px;
	}
	.agm-footer__col--contact p {
		line-height: 32px;
	}
	.agm-footer__col p {
		margin-bottom: 10px;
	}
}

/* U8. The bio paragraph takes the ROOT line-height, not the 16px text's own. Astra nests a
   font-size:16px span inside a root-sized <p>, so every line box is the p's strut:
   371.41px / 37.1429px = 10 lines at 1440, 338.59 / 33.8743 = 10 lines at 375. Ours was
   10 lines at 29.7143px. Same line count both sides - the 74.4px was line-height alone.

   The image <p> wrapper's 10px bottom margin and the trailing empty <p> become margins
   here rather than markup: 9.12 + 33.86 = 42.98px below 922, 10 + 37.14 = 47.14px at 922+. */
.agm-footer__col--bio p {
	line-height: 33.8743px;
	margin-bottom: 0;
}

.agm-footer__portrait {
	margin-bottom: 9.12px;
}

.agm-footer__col--bio {
	padding-bottom: 42.98px;
}

@media (min-width: 922px) {
	.agm-footer__col--bio p {
		line-height: 37.1429px;
	}
	.agm-footer__portrait {
		margin-bottom: 10px;
	}
	.agm-footer__col--bio {
		padding-bottom: 47.14px;
	}
}

/* U9. Astra's <hr> is REAL below 923 and ABSENT at and above it: both rules live in
   footer-html-4, the tablet/mobile widget, and render h = 1.00, w = full, #808080. In
   footer-html-5 - the desktop widget - there is no <hr> at all, which is why the control
   shows no rule at 1440 and ours showed one. The <p>&nbsp;</p> spacers around them become
   margins. Measured gap, "Executive Assessment" bottom to "To hire" top:

     375, 768   41.94 + 1 + 60.18 = 103.12px, rule at +41.94
     922        46.00 + 1 + 66.00 = 113.00px, rule at +46.00
     923, 1440  46.00px, no rule

   and after "We'll get back", to the end of the column:

     375, 768   41.93 + 1 + 27.36 = 70.29px
     922        46.00 + 1 + 30.00 = 77.00px
     923, 1440  46.00px, no rule  */
.agm-footer__col--services > hr {
	display: block;
	height: 1px;
	border: 0;
	background: #808080;
	margin: 41.94px 0 27.36px;
}

.agm-footer__col--services > hr:first-of-type {
	margin-bottom: 60.18px;
}

@media (min-width: 922px) {
	.agm-footer__col--services > hr {
		margin: 46px 0 30px;
	}
	.agm-footer__col--services > hr:first-of-type {
		margin-bottom: 66px;
	}
}

@media (min-width: 923px) {
	.agm-footer__col--services > hr {
		display: none;
	}
	/* the rule is gone, so its 46px lead must come from the paragraph that followed it */
	.agm-footer__col--services > hr:first-of-type + p {
		margin-top: 46px;
	}
	.agm-footer__col--services {
		padding-bottom: 36px;   /* + the last paragraph's 10px = the measured 46px */
	}
}

/* Astra's below-footer band measures 135.69px at 375 and a FIXED 121.00px at 768, 922, 923
   and 1440 -- unchanged while the copyright text inside it goes from three lines to one.
   Twenty of that is eaten by the primary wrap's margin-bottom:-20px above, so the band's
   NET contribution to footer height is 115.69px and 101.00px.

   Both halves of that are reproduced here rather than folded into one net number: the
   band is its real height and the negative margin does the overlapping, so the border and
   the copyright sit where Astra's do. Below 768 the height is content-driven and the
   padding makes up the 135.69; at 768 and up the fixed height IS the design, one number
   rather than three padding-bottoms (10 / 12.24 / 24.29) fitted to whatever the text
   happened to wrap to at each width. */
.agm-footer__below {
	box-sizing: border-box;
	padding: 20px 0 30px;
	background: var(--agm-footer-bg);
	border-top: 1px solid #ffffff;
}

@media (min-width: 768px) {
	.agm-footer__below {
		height: 121px;
		padding-bottom: 0;
	}
}

/* U6. The below-footer type steps at 922 like everything else: 9.12px / 16.9371px below,
   10px / 18.5714px at and above. Ours was 10/18.5714 everywhere, so it was oversized on
   mobile. Colour #666666 and the body font are already right on both sides. */
.agm-footer__copyright p {
	color: #666666;
	font-size: 9.12px;
	line-height: 16.9371px;
	margin: 0;
	text-align: center;
}

@media (min-width: 922px) {
	.agm-footer__copyright p {
		font-size: 10px;
		line-height: 18.5714px;
	}
}

/* U7. Astra renders Terms and Privacy as TWO centred paragraphs in the link blue, not one
   inline row of grey links. Three paragraphs of one line each: 16.94px below 922,
   18.56px at and above. */
.agm-footer__copyright a {
	color: #0170b9;
}

/* No gutter in the below-footer: Astra's copyright paragraph is the full container width
   -- 375.0 at 375 and 1135.0 at 1440, x=0 and x=152.5 -- while ours inherited the 15px
   column gutter and measured 345 and 1105. Twenty pixels of missing line box is enough to
   wrap "Atlantic" onto the next line, which is what the diff was showing. */
.agm-footer__below .agm-footer__inner {
	padding-left: 0;
	padding-right: 0;
}


/* --------------------------------------------------------------------------
   Focus — one treatment, two colours

   spec.md §8.4. Astra ships `outline: thin dotted` boilerplate whose colour is inherited
   from each link's own focus colour; two elements fail outright (the desktop footer link
   has no outline at all, the mobile one is 2.48:1 on #141a3a). So the fallback applies
   everywhere, and navy is replaced by white in the footer because #1b4e82 on #141a3a is
   1.99:1 — below the 3:1 WCAG 1.4.11 requires.
   -------------------------------------------------------------------------- */

.agm-header a:focus-visible,
.agm-header button:focus-visible,
.agm-skip:focus {
	outline: 2px solid var(--agm-navy);   /* 8.54:1 on white */
	outline-offset: 2px;
}

.agm-footer a:focus-visible {
	outline: 2px solid #ffffff;           /* 16.95:1 on #141a3a */
	outline-offset: 2px;
}

/* --------------------------------------------------------------------------
   Skip link

   Colours and z-index are WordPress core's classic .screen-reader-text:focus
   boilerplate, not an Astra design, so reproducing them needs nothing from Astra.
   -------------------------------------------------------------------------- */

.agm-skip {
	position: absolute;
	top: 0;
	left: 0;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(0 0 0 0);
	clip-path: inset(50%);
	white-space: nowrap;
}

.agm-skip:focus {
	left: 5px;
	width: auto;
	height: 48px;
	clip: auto;
	clip-path: none;
	background: #f1f1f1;
	color: #21759b;
	font-size: 17.5px;
	font-weight: 400;
	padding: 15px 23px 14px;
	text-decoration: none;
	z-index: 100000;
}

@media (prefers-reduced-motion: reduce) {
	.agm-nav__link,
	.agm-cta {
		transition: none;
	}
}
