.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item{color:var( --e-global-color-text );fill:var( --e-global-color-text );}.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:hover,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:focus{color:var( --e-global-color-accent );fill:var( --e-global-color-accent );}.elementor-widget-nav-menu .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:before,
					.elementor-widget-nav-menu .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:after{background-color:var( --e-global-color-accent );}.elementor-widget-nav-menu .e--pointer-framed .elementor-item:before,
					.elementor-widget-nav-menu .e--pointer-framed .elementor-item:after{border-color:var( --e-global-color-accent );}.elementor-widget-nav-menu{--e-nav-menu-divider-color:var( --e-global-color-text );}.elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item, .elementor-widget-nav-menu .elementor-nav-menu--dropdown  .elementor-sub-item{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-28879 .elementor-element.elementor-element-4d2b1bad .elementor-menu-toggle{margin-right:auto;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}/* Start custom CSS *//* Site-wide rules the V4 style inputs can't reach (fonts, the Pro Nav Menu's inner markup, loop offsets, search toggle).
   Lives in the Pursuit Header part's Custom CSS (loads on every page). Applied by `python3 site_css.py`. */
@import url('https://fonts.googleapis.com/css2?family=League+Gothic&family=Figtree:wght@400;500;600;700&display=swap');
body { background-color: #FFFFFF; color: #111111; font-family: "Figtree", "Proxima Nova", "Helvetica Neue", Arial, sans-serif; -webkit-font-smoothing: antialiased; }
h1, h2, h3, h4 { text-wrap: balance; }
.elementor .e-heading-base a.e-default-a, .elementor .e-heading-base .e-heading-link-base, .elementor .e-paragraph-base a.e-default-a { font: inherit; color: inherit; }   /* linked headings keep their display font (beats the kit's `a` default) */
a { text-decoration: none; }

/* Loop offsets: the hero shows the newest post; the grids fetch the same ordering and hide what the blocks above already show. */
.pm-skip1 > .e-con:nth-child(-n+1), .pm-skip4 > .e-con:nth-child(-n+4), .pm-skip7 > .e-con:nth-child(-n+7) { display: none !important; }

/* Cards: hover */
.pm-card { transition: opacity 0.15s; }
.pm-card:hover { opacity: 0.86; }
.pm-pid { display: none !important; }

/* Header search: icon toggles the field (snippet.js adds/removes .is-open) */
.pm-search .pm-search-input { display: none; position: absolute; top: calc(100% + 10px); left: 0; z-index: 60; width: 260px; }
.pm-search.is-open .pm-search-input { display: block; }
.pm-search input { width: 100%; height: 40px; padding: 0 12px; font: 15px "Figtree", sans-serif; color: #111; background: #fff; border: 1px solid #111; border-radius: 3px; outline: none; }
.pm-search input::placeholder { color: #8A8A8A; }

/* Hamburger: Elementor Pro Nav Menu in "dropdown" layout. Toggle = bars icon; panel drops below the header, full width. */
.pm-menu .elementor-menu-toggle { background: transparent; color: #111; border: 0; padding: 4px; font-size: 26px; --nav-menu-icon-size: 26px; }
.pm-menu .elementor-menu-toggle:hover, .pm-menu .elementor-menu-toggle.elementor-active { color: #F03C38; }
.pm-menu, .pm-menu .elementor-widget-nav-menu, .pm-menu .elementor-widget-container, .pm-menu nav { position: static !important; }
.pm-menu .elementor-nav-menu--dropdown.elementor-nav-menu__container { position: absolute !important; top: 100% !important; left: 0 !important; right: 0 !important; width: 100% !important; max-width: none !important; margin: 0 !important; z-index: 70; background: #111; border-top: 1px solid #333; box-shadow: 0 24px 40px rgba(0, 0, 0, .35); }
.pm-menu .elementor-nav-menu--dropdown { background: #111; }
.pm-menu .elementor-nav-menu--dropdown .elementor-nav-menu { max-width: 1200px; margin: 0 auto; padding: 12px 24px 20px; display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 0 24px; }
.pm-menu .elementor-nav-menu--dropdown li { border: 0; }
.pm-menu .elementor-nav-menu--dropdown li > a, .pm-menu .elementor-nav-menu--dropdown li > .elementor-item { font-family: "League Gothic", sans-serif; font-size: 26px; letter-spacing: 0.02em; text-transform: uppercase; color: #fff !important; padding: 10px 0 4px !important; background: transparent !important; border-bottom: 1px solid #333; }
.pm-menu .elementor-nav-menu--dropdown .sub-menu { display: block !important; position: static !important; width: auto !important; box-shadow: none; background: transparent !important; }
.pm-menu .elementor-nav-menu--dropdown .sub-menu li > a { font-family: "Figtree", sans-serif; font-size: 15px; font-weight: 500; letter-spacing: 0; text-transform: none; color: #C9C9C9 !important; padding: 6px 0 !important; border-bottom: 0; }
.pm-menu .elementor-nav-menu--dropdown .sub-menu li > a:hover { color: #fff !important; }
.pm-menu .elementor-nav-menu--dropdown li > a:hover { color: #F03C38 !important; }
.pm-menu .elementor-nav-menu--dropdown .sub-arrow { display: none; }

/* Section nav bar (black band): scrolls sideways on small screens instead of wrapping */
@media (max-width: 767px) { .pm-nav { justify-content: flex-start !important; overflow-x: auto; -webkit-overflow-scrolling: touch; scrollbar-width: none; } .pm-nav::-webkit-scrollbar { display: none; } }

/* Footer newsletter form */
.pm-form input::placeholder { color: #6E6E6E; opacity: 1; }

/* Single post body (theme-post-content inside .pm-content) */
.pm-content { font-family: "Figtree", sans-serif; font-size: 18px; line-height: 1.65; color: #111; }
.pm-content p, .pm-content ul, .pm-content ol, .pm-content blockquote, .pm-content figure, .pm-content table { margin: 0 0 1.4em; }
.pm-content h2, .pm-content h3, .pm-content h4 { font-family: "League Gothic", sans-serif; font-weight: 400; line-height: 1.02; color: #111; margin: 1.6em 0 0.5em; }
.pm-content h2 { font-size: 40px; } .pm-content h3 { font-size: 32px; } .pm-content h4 { font-size: 26px; }
.pm-content a { color: #F03C38; text-decoration: underline; text-underline-offset: 2px; }
.pm-content a:hover { color: #C92622; }
.pm-content img { max-width: 100%; height: auto; }
.pm-content figure img, .pm-content .wp-caption img { display: block; }
.pm-content figcaption, .pm-content .wp-caption-text { font-size: 14px; color: #6E6E6E; margin-top: 8px; }
.pm-content blockquote { border-left: 4px solid #F03C38; padding: 4px 0 4px 22px; font-size: 20px; line-height: 1.5; color: #333; }
.pm-content ul, .pm-content ol { padding-left: 1.4em; }
.pm-content li { margin-bottom: 0.4em; }
.pm-content hr, .pm-content .wp-block-separator { border: 0; border-top: 1px solid #E4E4E4; margin: 2em 0; }
.pm-content iframe, .pm-content video, .pm-content audio { max-width: 100%; }
.pm-content .wp-block-embed__wrapper iframe, .pm-content .wp-block-embed iframe { width: 100%; aspect-ratio: 16 / 9; height: auto; }
.pm-content .alignleft { float: left; margin: 6px 24px 12px 0; max-width: 50%; }
.pm-content .alignright { float: right; margin: 6px 0 12px 24px; max-width: 50%; }
.pm-content .aligncenter { display: block; margin-left: auto; margin-right: auto; }
.pm-content::after { content: ""; display: table; clear: both; }
.pm-content table { width: 100%; border-collapse: collapse; font-size: 16px; }
.pm-content td, .pm-content th { border: 1px solid #E4E4E4; padding: 8px 10px; text-align: left; }

/* Archive pagination: Elementor renders prev/next as <a class="e-pagination-prev-base [e--disabled]">; a disabled side is hidden */
.e-pagination-base a { text-decoration: none; }
.e-pagination-base .e--disabled, .e-pagination-base [aria-disabled="true"] { display: none; }

/* In-article newsletter box (injected by snippet.js into .pm-content) */
.pm-signup { background: #F4F3F1; border-top: 4px solid #F03C38; padding: 30px 32px 24px; margin: 40px 0; clear: both; font-family: "Figtree", sans-serif; }
.pm-signup-title { font-family: "League Gothic", sans-serif; font-size: 40px; line-height: 1; color: #111; margin: 0 0 8px !important; }
.pm-signup-title em { font-style: italic; color: #F03C38; }
.pm-signup-text { font-size: 16px; line-height: 1.5; color: #333; margin: 0 0 18px !important; }
.pm-signup-form { display: flex; gap: 10px; align-items: stretch; margin: 0; position: relative; }
.pm-signup-email { flex: 1 1 auto; min-width: 0; height: 48px; padding: 0 14px; font: 16px "Figtree", sans-serif; color: #111; background: #fff; border: 1px solid #CFCFCF; border-radius: 3px; outline: none; }
.pm-signup-email:focus { border-color: #111; }
.pm-signup-btn { flex: 0 0 auto; height: 48px; padding: 0 26px; border: 0; border-radius: 3px; background: #F03C38; color: #fff; font: 600 16px "Figtree", sans-serif; letter-spacing: 0.02em; text-transform: uppercase; cursor: pointer; }
.pm-signup-btn:hover { background: #C92622; }
.pm-signup-btn:disabled { opacity: 0.6; cursor: default; }
.pm-signup-msg { font-size: 14px; margin: 10px 0 0 !important; min-height: 0; color: #333; }
.pm-signup-msg:empty { display: none; }
.pm-signup-msg.is-error { color: #C92622; }
.pm-signup-msg.is-success { color: #111; font-weight: 600; }
.pm-signup-foot { font-size: 13px; margin: 14px 0 0 !important; }
.pm-signup-foot a { color: #6E6E6E; text-decoration: underline; }
@media (max-width: 600px) { .pm-signup { padding: 24px 20px 20px; } .pm-signup-form { flex-direction: column; } .pm-signup-title { font-size: 34px; } }
.pm-signup-msg.is-captcha { color: #111; font-weight: 600; }
.pm-signup-msg a, .pm-form .message-error a { color: #F03C38; text-decoration: underline; font-weight: 700; }

/* Category archives: sub-category links beside the title (filled by snippet.js) */
.pm-subnav:empty { display: none !important; }
.pm-subnav a { font-family: "Figtree", sans-serif; font-size: 14px; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; color: #6E6E6E; padding: 4px 0; border-bottom: 2px solid transparent; white-space: nowrap; }
.pm-subnav a:hover { color: #111; }
.pm-subnav a.is-active { color: #111; border-bottom-color: #F03C38; }
.pm-subnav a.pm-subnav-all { color: #F03C38; }
.pm-archive-title .pm-archive-sep { color: #BDBDBD; font-weight: 400; margin: 0 2px; }
.pm-archive-title .pm-archive-current { color: #F03C38; }

/* Article standfirst: the opening deck (snippet.js tags the first short H3/H4 or paragraph with .pm-deck) */
.pm-content .pm-deck { font-family: "Figtree", sans-serif !important; font-weight: 500; font-size: 23px; line-height: 1.45; color: #111; text-align: left !important; margin: 0 0 36px !important; padding: 4px 0 4px 24px; border-left: 4px solid #F03C38; text-wrap: pretty; }
.pm-content .pm-deck em, .pm-content .pm-deck i { font-style: italic; color: #F03C38; }
@media (max-width: 767px) { .pm-content .pm-deck { font-size: 19px; padding-left: 18px; } }

/* Split post header: the deck moved under the title (no rule there), share button hover */
.pm-deck-slot .pm-deck { font-family: "Figtree", sans-serif !important; font-size: 24px; line-height: 1.4; font-weight: 400; color: #555; text-align: left !important; border-left: 0; padding: 0; margin: 0 !important; text-wrap: pretty; }
.pm-deck-slot .pm-deck em, .pm-deck-slot .pm-deck i { color: #F03C38; }
@media (max-width: 767px) { .pm-deck-slot .pm-deck { font-size: 19px; } }
.pm-share:hover span { color: #F03C38; }

/* Inline links inside paragraph widgets (static pages): red + underline; a paragraph that is itself a link keeps its own style */
.elementor .e-paragraph-base a:not(.e-default-a) { color: #F03C38; text-decoration: underline; text-underline-offset: 2px; }
.elementor .e-paragraph-base a:not(.e-default-a):hover { color: #C92622; }/* End custom CSS */