/* @import url('http://example.com/example_style.css'); */

/***********************************************/
/* CSS @imports must be at the top of the file */
/* Add them above this section                 */
/***********************************************/

/*****************************************/
/* Start your style declarations here    */
/*****************************************/
/*** CUSTOM UPLOADED FONTS 
  * Remove the @font-face block below if you're loading Adobe Type Kit.
***/
  /*** FONTS FOR EASY COPY & PASTE 
   * 
   * Add Name of Your Fonts Here
   * 
   * ***/


@font-face {
 font-family: 'Aptos'; 
 src: url('full-link-to-font-file.eot?') format('eot'), url('full-link-to-font-file.woff') format('woff'), url('https://143550417.fs1.hubspotusercontent-eu1.net/hubfs/143550417/Brand%20Assets/Corporate%20Fonts/Aptos/aptos.ttf') format('truetype');
}
@font-face {
 font-family: 'Aptos Light'; 
 src: url('full-link-to-font-file.eot?') format('eot'), url('https://143550417.fs1.hubspotusercontent-eu1.net/hubfs/143550417/Brand%20Assets/Corporate%20Fonts/Aptos/aptos-light.ttf') format('truetype');
}
@font-face {
 font-family: 'Aptos Bold'; 
 src: url('full-link-to-font-file.eot?') format('eot'), url('full-link-to-font-file.woff') format('woff'), url('https://143550417.fs1.hubspotusercontent-eu1.net/hubfs/143550417/aptos-bold.ttf') format('truetype');
}
@font-face {
 font-family: 'Aptos Semibold'; 
 src: url('full-link-to-font-file.eot?') format('eot'), url('full-link-to-font-file.woff') format('woff'), url(https://143550417.fs1.hubspotusercontent-eu1.net/hubfs/143550417/Brand%20Assets/Corporate%20Fonts/Aptos/aptos-semibold.ttf%27) format('truetype');
}
@font-face {
 font-family: 'Baskerville; 
 src: url('full-link-to-font-file.eot?') format('eot'), url('full-link-to-font-file.woff') format('woff'), url('https://143550417.fs1.hubspotusercontent-eu1.net/hubfs/143550417/Baskervville-Regular.ttf') format('truetype');
}

/* ==========================================================================
   KUDLOW VIDEO POST - ONE-SCREEN LAYOUT  (updated 2026-09-24)
   Scoped to one post via its unique body class hs-content-id-477395549371
   (/news/dr-john-rutledge-on-kudlow-the-state-of-the-us-economy).
   No other page is affected.

   Brief: player must be reachable with NO scrolling. Title left, video right.
   .blog-header-full and .container-slim are siblings inside .post-page-full,
   so they flex side by side. The site nav lives in header.header OUTSIDE this
   block and overlays the page, hence the large padding-top for clearance.

   The big centre play button is NOT css. It is baked into the poster image
   rutledge-kudlow-poster.jpg, so it disappears by itself the moment playback
   starts. Do not add a css overlay, it would sit on top of the playing video.
   Clicking anywhere on the player toggles play, which is native <video> behaviour.

   Title line-height must stay >= the font natural line box or ascenders clip
   against the nav. Mobile needs 31px at 24px, hence 35px. Mobile padding-top
   must also clear the nav (95px) with room to spare, hence 132px not 108px.
   against the nav. Baskerville needs 47px at 36px. Do not tighten.
   Must stay ABOVE the .hs-form legend unterminated string rule to parse.
   ========================================================================== */
.hs-content-id-477395549371 .post-page-full {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 48px;
  box-sizing: border-box;
  min-height: 100vh;
  padding: 130px 56px 48px;
  background: #2d4664;
}
.hs-content-id-477395549371 .blog-header-full {
  flex: 1 1 320px;
  max-width: 36%;
  min-height: 0 !important;
  height: auto !important;
  padding: 0 !important;
  margin: 0 !important;
  background: none !important;
}
.hs-content-id-477395549371 .blog-head-overlay { display: none !important; }
.hs-content-id-477395549371 .blog-header.post-header,
.hs-content-id-477395549371 .blog-header__inner {
  width: 100% !important;
  max-width: none !important;
  padding: 0 !important;
  margin: 0 !important;
}
.hs-content-id-477395549371 .container-slim.content-area-width {
  flex: 1 1 560px;
  max-width: 60%;
  width: auto !important;
  padding: 0 !important;
  margin: 0 !important;
}
.hs-content-id-477395549371 .blog-post.row { margin: 0 !important; }
.hs-content-id-477395549371 .blog-post__body { padding: 0 !important; }
.hs-content-id-477395549371 .social-sharing-wrapper { display: none !important; }
.hs-content-id-477395549371 .blog-post__tag-link { display: none !important; }
.hs-content-id-477395549371 .blog-post__title {
  font-size: 36px !important;
  line-height: 48px !important;
  margin-bottom: 8px !important;
}
.hs-content-id-477395549371 video {
  display: block;
  width: 100% !important;
  height: auto !important;
  max-height: calc(100vh - 200px) !important;
  margin: 0 !important;
}
@media (max-width: 900px) {
  .hs-content-id-477395549371 .post-page-full {
    min-height: 0;
    padding: 132px 20px 32px;
    gap: 18px;
  }
  .hs-content-id-477395549371 .blog-header-full,
  .hs-content-id-477395549371 .container-slim.content-area-width { max-width: 100%; }
  .hs-content-id-477395549371 .blog-post__title {
    font-size: 24px !important;
    line-height: 35px !important;
  }
  .hs-content-id-477395549371 video { max-height: calc(100vh - 230px) !important; }
}

/* ==========================================================================
   ROYAL BLUE ICON ACCENTS  (added 2026-09-11)
   Decorative Font Awesome icons that were Safanad orange #e67846 become
   Royal Blue 100 #EAF0FC. Scoped to the exact module instances that were
   orange, so intentionally white / grey icons are left untouched.
   !important is required: the per-module inline <style> HubSpot emits has
   equal specificity but loads after this file.
   NOTE: #hs_cos_wrapper_module_17225114062386 .c-2 is deliberately NOT here.
   That module id is orange on /platforms + /realestate but WHITE on /business,
   and the <body> carries no page class, so CSS cannot tell them apart.
   Those 2 orange instances are set in their module settings instead.
   ========================================================================== */

#hs_cos_wrapper_module_17225325100599 .c-2 .c-icon-1 i,
#hs_cos_wrapper_module_172253251005910 .c-1 .c-icon-1 i,
#hs_cos_wrapper_module_172253251005911 .c-2 .c-icon-1 i,
#hs_cos_wrapper_module_172253251005912 .c-1 .c-icon-1 i,
#hs_cos_wrapper_module_172253251005913 .c-2 .c-icon-1 i,
#hs_cos_wrapper_module_17225119835683 .c-1 .c-icon-1 i,
#hs_cos_wrapper_module_1722511987455 .c-2 .c-icon-1 i,
#hs_cos_wrapper_module_1722505309378 .c-1 .c-icon-1 i,
#hs_cos_wrapper_module_1722505309378 .c-2 .c-icon-1 i,
#hs_cos_wrapper_module_1722505309378 .c-3 .c-icon-1 i,
#hs_cos_wrapper_module_1722505309378 .c-4 .c-icon-1 i,
#hs_cos_wrapper_module_1722506850147 .c-1 .c-icon-1 i,
#hs_cos_wrapper_module_1722506850147 .c-2 .c-icon-1 i,
#hs_cos_wrapper_module_1722518646430 .c-2 .c-icon-1 i,
#hs_cos_wrapper_module_1722518654859 .c-1 .c-icon-1 i,
#hs_cos_wrapper_module_1722518670392 .c-2 .c-icon-1 i,
#hs_cos_wrapper_module_17225256298925 .c-1 .c-icon-1 i,
#hs_cos_wrapper_module_17225256298925 .c-2 .c-icon-1 i,
#hs_cos_wrapper_module_17225256298925 .c-3 .c-icon-1 i,
#hs_cos_wrapper_module_17225256298925 .c-4 .c-icon-1 i,
#hs_cos_wrapper_module_172251671626210 .c-2 .c-icon-1 i {
  color: #EAF0FC !important;
}

/* The 2 remaining orange instances of module 17225114062386 .c-2 (/platforms and
   /realestate). Scoped by their ancestor cell class, which differs from the WHITE
   instance of the same module id on /business (cell_17225309534482-padding).
   This keeps /business untouched. */
.cell_17225114062382-padding #hs_cos_wrapper_module_17225114062386 .c-2 .c-icon-1 i {
  color: #EAF0FC !important;
}


/* Footer nav link hover. The colour field for this is not exposed in the Global
   Footer module UI or in Typography > Footer Navigation, so it is overridden here.
   The stored module value remains #e67846. Selectors copied verbatim from the
   rule HubSpot emits inline. */
.hhs-foot-base-nav .hs-menu-wrapper.hs-menu-flow-horizontal > ul li a:hover,
.hhs-foot-nav-col .hs-menu-wrapper.hs-menu-flow-horizontal>ul li.hs-item-has-children ul.hs-menu-children-wrapper li a:hover,
.hhs-foot-nav-col .hs-menu-wrapper.hs-menu-flow-horizontal > ul li a:hover {
  color: #2D5DBB !important;
}


/* /heritage compass accents: the words North / South / East / West carry an inline
   color:#e67846 in the module's rich text. They sit on the dark navy hero image next to
   WHITE companion words and #EAF0FC arrows, so Royal Blue 100 is the correct mapping here.
   Royal Blue 600 measures ~1.6:1 against that navy and would be illegible.
   The Heritage page editor's module panel would not open, so this overrides the inline
   style. THE STORED CONTENT VALUE IS STILL #e67846 - if you edit those words in the page
   editor, set the colour to #EAF0FC there and this rule can be deleted.
   Guarded by [style*=e67846] so it cannot affect the same module id on /values or /strategy. */
#hs_cos_wrapper_module_1722505309378_ h3 span[style*="e67846"] {
  color: #EAF0FC !important;
}


/* /news blog listing. The "Blog posts" module (widget_1721395341397) paints its
   READ MORE buttons from a style field (groupBackground) and its post-title hover.
   That module's Styles > Button > Background sub-panel would not render in the page
   editor, so these are overridden here. THE STORED MODULE VALUES ARE STILL #e67846 -
   fix them at Content > Blog > Configure > Blog listing pages > News & Insights >
   Blog posts > Styles > Button > Background (and > Title > Hover), then delete this block.
   Class selectors are hash-agnostic ([class*=...]) because HubSpot regenerates the
   _1hg5v_ suffix when the template is republished. */
#hs_cos_wrapper_widget_1721395341397 a[class*="_hsBlogPostButton_"] {
  background-color: #2D5DBB !important;
}
#hs_cos_wrapper_widget_1721395341397 a[class*="_hsBlogPostTitleLink_"]:hover {
  color: #2D5DBB !important;
}

/* NOTE: this block is placed HIGH in the file on purpose. Further down,
   `.hs-form legend {font-family: 'Aptos, sans-serif !important;}` has an
   unterminated string (missing closing quote after Aptos). That is a
   pre-existing bug: it makes the CSS parser discard every rule after it.
   Anything appended to the end of this file would be silently dead. */


/******  WEBSITE HEADINGS ******/
h1 {font-family: 'Baskerville', sans-serif !important;}
h2 {font-family: 'Baskerville', sans-serif !important;}
h3 {font-family: 'Baskerville', sans-serif !important;}
h4 {font-family: 'Baskerville', sans-serif !important;}
h5 {font-family: 'Baskerville', sans-serif !important;}
h6 {font-family: 'Baskerville', sans-serif !important;}

/****** PARAGRAPHS AND LISTS ******/

p {font-family: 'Aptos Light', sans-serif !important;}
li, ol {font-family: 'Aptos Light', sans-serif !important;}
blockquote {font-family: 'Baskerville', sans-serif !important;}


/******  BLOG HEADINGS ******/
h1.blog-post__title {font-family: 'Baskerville', sans-serif !important;}
.blog-post h2 {font-family: 'Baskerville', sans-serif !important;}
.blog-post h3 {font-family: 'Baskerville', sans-serif !important;}
.blog-post h4 {font-family: 'Baskerville', sans-serif !important;}
.blog-post h5 {font-family: 'FBaskerville', sans-serif !important;}
.blog-post h6 {font-family: 'Baskerville', sans-serif !important;}
.blog-header__author-avatar {background-position: 50%; background-repeat: no-repeat; background-size: cover; border-radius: 0%; box-shadow: 0 0 0px 0 rgba(0,0,0,.0); height: 120px; margin: auto; width: 120px}
/****** BLOG PARAGRAPHS AND LISTS ******/

#comments-listing .comment-body p,
.blog-post p,
.blog-post span {font-family: 'Font-Name', sans-serif !important;}
.blog-post li, .blog-post ol {font-family: 'Font-Name', sans-serif !important;}


/****** CALLS TO ACTION ******/

.cta-primary,
.cta-primary:active,
.hhs-header-menu .hs-menu-wrapper.hs-menu-flow-horizontal>ul li .mega-menu a.cta-primary,
.hhs-top-bar .hs-menu-wrapper.hs-menu-flow-horizontal>ul li .mega-menu a.cta-primary,
.hhs-alt-nav .hhs-header-menu .hs-menu-wrapper.hs-menu-flow-horizontal>ul li .mega-menu a.cta-primary 
  {font-family: 'Aptos Bold', sans-serif !important;}

.cta-secondary,
.cta-secondary:active,
.hhs-header-menu .hs-menu-wrapper.hs-menu-flow-horizontal>ul li .mega-menu a.cta-secondary,
.hhs-top-bar .hs-menu-wrapper.hs-menu-flow-horizontal>ul li .mega-menu a.cta-secondary,
.hhs-alt-nav .hhs-header-menu .hs-menu-wrapper.hs-menu-flow-horizontal>ul li .mega-menu a.cta-secondary
  {font-family: 'Aptos Bold', sans-serif !important;}

.cta-tertiary,
.cta-tertiary:active,
.hhs-header-menu .hs-menu-wrapper.hs-menu-flow-horizontal>ul li .mega-menu a.cta-tertiary,
.hhs-top-bar .hs-menu-wrapper.hs-menu-flow-horizontal>ul li .mega-menu a.cta-tertiary,
.hhs-alt-nav .hhs-header-menu .hs-menu-wrapper.hs-menu-flow-horizontal>ul li .mega-menu a.cta-tertiary
  {font-family: 'Aptos Bold', sans-serif !important;}


.cta-four,
.cta-four:active,
.hhs-header-menu .hs-menu-wrapper.hs-menu-flow-horizontal>ul li .mega-menu a.cta-four,
.hhs-top-bar .hs-menu-wrapper.hs-menu-flow-horizontal>ul li .mega-menu a.cta-four,
.hhs-alt-nav .hhs-header-menu .hs-menu-wrapper.hs-menu-flow-horizontal>ul li .mega-menu a.cta-four
  {font-family: 'Aptos Bold', sans-serif !important;}

.cta-five,
.cta-five:active,
.hhs-header-menu .hs-menu-wrapper.hs-menu-flow-horizontal>ul li .mega-menu a.cta-five,
.hhs-top-bar .hs-menu-wrapper.hs-menu-flow-horizontal>ul li .mega-menu a.cta-five,
.hhs-alt-nav .hhs-header-menu .hs-menu-wrapper.hs-menu-flow-horizontal>ul li .mega-menu a.cta-five
  {font-family: 'Aptos Bold', sans-serif !important;}


/****** FORM ELEMENTS ******/

.hs-button,
.button--primary {font-family: 'Aptos', sans-serif !important;}

.submit-alt .hs-button,
.submit-alt .button--primary {font-family: 'Aptos', sans-serif !important;}

/* INPUT TEXT FIELD */

form,
.submitted-message,
select,
.hs-input {font-family: 'Aptos', sans-serif !important;}

/* FORM LABEL */

.hs-fieldtype-checkbox > label,
.hs-form label {font-family: 'Aptos', sans-serif !important;}

/* CHECKBOX AND RADIO BUTTONS */

.hs_radio_buttons .hs-form-radio label,
.hs_single_checkbox label,
.hs-form label.hs-form-radio-display span,
.hs-fieldtype-checkbox .hs-form-checkbox label,
.hs-form-booleancheckbox label 
  {font-family: 'Aptos', sans-serif !important;}

/* HELP TEXT */

.hs-form legend {font-family: 'Aptos, sans-serif !important;}

/* GDPR TEXT */

.legal-consent-container,
.legal-consent-container p {font-family: 'Aptos', sans-serif !important;}

/* ERROR MESSAGE */

.hs-error-msgs label {font-family: 'Aptos', sans-serif !important;}


/* HEADER */

.hhs-lang-switch .lang_list_class li a,
.hhs-top-bar .hs-menu-wrapper.hs-menu-flow-horizontal>ul li a,
.hhs-header-menu .hs-menu-wrapper.hs-menu-flow-horizontal>ul li a {
  font-family: 'Font-Name', sans-serif !important;
  
}

/* FOOTER  */

.hhs-foot-rss h5, .hhs-foot-nav-col h5 {
  font-family: 'Baskerville', sans-serif !important;
}

.hhs-foot-nav-col .hs-menu-wrapper.hs-menu-flow-horizontal > ul li a {
  font-family: 'Baskerville', sans-serif !important;
}

/* rev: heritage compass accents */

/* rev: news listing buttons */