/* @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    */
/*****************************************/

/* =====================================================
   CTA FIVE – Link Style with › Arrow (Normal Case)
===================================================== */

.cta-five,
.cta-five:visited {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;

  color: #bf5429 !important;
  font-size: 16px !important;
  font-weight: 700;
  padding: 0 !important;

  display: inline-flex;
  align-items: center;
  gap: 10px;

  text-decoration: none;
  line-height: 1.2;
  text-transform: none;
}

/* Arrow */
.cta-five::after {
  content: "›";
  font-size: 20px;      /* size bump stays */
  font-weight: 700;    /* match text weight */
  line-height: 1;
  display: inline-block;
  transform: translateY(-3px); /* baseline alignment */
}

/* Hover / focus */
.cta-five:hover,
.cta-five:focus {
  color: #001a5c !important;
  background: transparent !important;
}
/* Sidebar menu toggle: replace + SVG with caret */
.hhs-sidebar-nav-toggle.js-sidebar-nav-toggle svg {
  display: none !important;
}

.hhs-sidebar-nav-toggle.js-sidebar-nav-toggle::after {
  content: "\f078"; /* chevron-down (Font Awesome) */
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  font-size: 16px;
  line-height: 1;
  color: #333333;
  display: inline-block;
  transition: transform .25s ease;
}

/* When expanded, rotate (optional). 
   This assumes aria-expanded toggles true/false */
.hhs-sidebar-nav-toggle.js-sidebar-nav-toggle[aria-expanded="true"]::after {
  transform: rotate(180deg);
}


/* =========================
   Newsletter Form Styling
   Add class: sr-newsletter-form
   ========================= */

.sr-newsletter-form .hs-form {
  max-width: 720px;          /* optional */
  margin: 0 auto;
}

.sr-newsletter-form .hs-form fieldset {
  max-width: 100%;
}

.sr-newsletter-form .hs-form .hs-form-field {
  margin-bottom: 18px;
}

/* Title (if your module outputs a heading above the form) */
.sr-newsletter-form h1,
.sr-newsletter-form h2,
.sr-newsletter-form h3 {
  margin: 0 0 14px;
  font-weight: 800;
  color: #001a5c;
}

/* Labels */
.sr-newsletter-form .hs-form label {
  display: block;
  margin: 0 0 8px;
  font-size: 16px;
  font-weight: 500;
  color: #111;
}

/* Required asterisk */
.sr-newsletter-form .hs-form label .hs-form-required,
.sr-newsletter-form .hs-form .hs-form-required {
  color: #d11a2a;
}

/* Inputs */
.sr-newsletter-form .hs-form input[type="text"],
.sr-newsletter-form .hs-form input[type="email"],
.sr-newsletter-form .hs-form input[type="tel"],
.sr-newsletter-form .hs-form input[type="number"],
.sr-newsletter-form .hs-form input[type="url"],
.sr-newsletter-form .hs-form input[type="password"],
.sr-newsletter-form .hs-form select,
.sr-newsletter-form .hs-form textarea {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box;

  height: 56px;              /* match screenshot */
  padding: 12px 14px;

  border: 1px solid #d6d6d6;
  border-radius: 4px;
  background: #fff;

  font-size: 16px;
  color: #111;

  outline: none;
  box-shadow: none !important;
}

.sr-newsletter-form .hs-form textarea {
  height: auto;
  min-height: 120px;
}

/* Focus */
.sr-newsletter-form .hs-form input:focus,
.sr-newsletter-form .hs-form select:focus,
.sr-newsletter-form .hs-form textarea:focus {
  border-color: #001a5c;
}

/* Help / errors */
.sr-newsletter-form .hs-error-msgs {
  margin: 8px 0 0;
  padding: 0;
  list-style: none;
}

.sr-newsletter-form .hs-error-msgs li,
.sr-newsletter-form .hs-error-msg {
  font-size: 14px;
  color: #d11a2a;
}

/* Submit button row spacing */
.sr-newsletter-form .hs-submit {
  margin-top: 18px;
}

/* Button */
.sr-newsletter-form .hs-form input[type="submit"],
.sr-newsletter-form .hs-form .hs-button,
.sr-newsletter-form .hs-form .hs-button.primary {
  width: 100% !important;
  display: block !important;

  height: 56px;
  border: 0 !important;
  border-radius: 4px;

  background: #001a5c !important;
  color: #fff !important;

  font-size: 16px;
  font-weight: 600;
  letter-spacing: 0.2px;

  cursor: pointer;
  padding: 0 18px !important;
}

.sr-newsletter-form .hs-form input[type="submit"]:hover,
.sr-newsletter-form .hs-form .hs-button:hover {
  filter: brightness(0.92);
}

/* Remove default HubSpot inline layout quirks */
.sr-newsletter-form .hs-form .input,
.sr-newsletter-form .hs-form .hs-input {
  width: 100% !important;
  float: none !important;
}




/* Versa Cards (Flexi) — add orange vertical line on the left */
.who-we-serve-cards .filter-card {
  position: relative;
}

/* The card wrapper */
.who-we-serve-cards .filter-card .c-card {
  position: relative;
  padding-left: 32px; /* space for the line + gutter */
}

/* The orange line */
.who-we-serve-cards .filter-card .c-card::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;          /* makes it full height of the card */
  width: 2px;
  background: #bf5429; /* orange */
}

/* Optional: ensure content doesn't fight the padding */
.who-we-serve-cards .filter-card .c-card-content {
  padding-left: 0; /* keep your module padding clean */
}

}

/* Accent Line – Early Stage separator */
#early-stage.accent-line {
  width: 100%;
  padding: 0;
  margin: 0;
}

/* Draw the line */
#early-stage.accent-line::before {
  content: "";
  display: block;
  height: 1.5px;
  background-color: #bf5429;

  /* control width */
  width: 95%;

  /* center it */
  margin: 0 auto;
}


.asset-management-bullets li::marker {
  color: #bf5429;
}

/* ---------------------------------------- */
/*         COUNTER DIVIDER                  */
/* ---------------------------------------- */

#counter-divider-wrap {
  width: 90%;
  margin: 0 auto;
  position: relative;
  height: 40px;
}

.counter-divider__rule {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 1.5px;
  background-color: #B5451B;
}

.counter-tick {
  position: absolute;
  bottom: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  transform: translateX(-50%);
}

.counter-tick__cap {
  width: 20px;
  height: 3px;
  background-color: #B5451B;
}

.counter-tick__stem {
  width: 1.5px;
  height: 32px;
  background-color: #B5451B;
}
/* ---------------------------------------- */
/*   Hiding col 2 w/ icon text              */
/* ---------------------------------------- */

.hide-col-2-icon .col-sm:nth-child(2) .icon-con {
  display: none;
}
/* ---------------------------------------- */
/*  Meet the team page             */
/* ---------------------------------------- */

.team .team__member-name h3.h5 {
  font-size: 20px;
  font-weight: 700;
  color: #012F6D;
  margin-bottom: 0;
}

:root {
  --yellow: #f3ad5c;
}

/* Open Position Module - Theme Override */
.open-position.text-dark,
.open-position.text-light,
.open-position {
  text-align: center !important;
}
.open-position .open-position__content {
  text-align: center !important;
}
.open-position .open-position__icon {
  margin-bottom: 10px !important;
}
.open-position .open-position__icon img {
  width: 100px !important;
}
.open-position .open-position__heading {
  margin-bottom: 16px !important;
}
.open-position .open-position__description {
  text-wrap: balance !important;
  margin-bottom: 16px !important;
}
.open-position .cta--group {
  margin-top: 32px !important;
  margin-bottom: 32px !important;
}
.open-position .open-position__contact-info {
  margin-top: 16px !important;
}
.open-position .open-position__content p a {
  text-decoration: none !important;
  border-bottom: 1px solid !important;
}
.open-position .open-position__content p a:hover {
  border-color: transparent !important;
}


/* Card Grid Service Card h4 - Scoped Override */
.card-grid h4 {
  font-family: "Open Sans", sans-serif !important;
  color: #012F6D !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  line-height: 150% !important;
  margin: 0 !important;
}

/* Apply text-wrap balance to all headers */
h1, h2, h3, h4, h5, h6 {
  text-wrap: balance;
  }

.c-acc-title {
  font-weight: bold !important;
}

/* Testimoinal Override - Scoped Override */
.testimonial .content-wrapper {
  max-width: 1000px !important; /* or whatever width matches the old theme */
  padding-left: 15px !important;
  padding-right: 15px !important;
  margin: 0 auto !important;
}
.testimonial .testimonial__content {
  max-width: 75% !important;
}

  /* =========================================
   TESTIMONIAL - Single Clean Version
   ========================================= */

/* Remove borders/lines */
.testimonial blockquote,
.testimonial .testimonial__quote,
.testimonial .testimonial__quotewrapper {
  border-left: none !important;
  background-image: none !important;
}

/* Disable theme quote marks */
.testimonial blockquote::before,
.testimonial blockquote::after {
  content: none !important;
  border: 0 !important;
}

/* Spacing */
.testimonial .testimonial__intro {
  margin-bottom: 48px;
}

.testimonial .testimonial__quotewrapper {
  position: relative;
  padding-left: 60px;
}

.testimonial .testimonial__quote blockquote {
  position: static
  margin: 0;
  padding: 0;
}

.testimonial .testimonial__quote blockquote p {
  margin: 0;
}

/* Quote marks */
.testimonial .open-quote,
.testimonial .close-quote {
  color: #bf5429 !important;
  font-family: sans-serif;
  line-height: 1;
  font-weight: 400;
  position: absolute;
}

.testimonial .open-quote {
  position: absolute;  /* add this line */
  font-size: 125px;
  left: 0;
  top: 0;
  right: 0;
}

.testimonial .close-quote {
  font-size: 125px;
  bottom: 0;
  right: 0;
}

/* Footer */
.testimonial .testimonial__footer {
  margin-top: 24px;
  padding-left: 40px;
}

.testimonial .testimonial__footer .testimonial__name,
.testimonial .testimonial__footer label {
  color: #bf5429 !important;
  text-transform: uppercase;
  font-weight: 700;
}

/* Mobile */
@media (max-width: 767px) {
  .testimonial .testimonial__quotewrapper {
    padding-left: 0;
  }
  
  .testimonial .testimonial__footer {
    padding-left: 0;
  }
  
  .testimonial .open-quote,
  .testimonial .close-quote {
    font-size: 70px;
  }
  
  .testimonial blockquote {
    padding-top: 30px;
  }
}

/* Width constraints */
.testimonial .content-wrapper {
  max-width: 1000px !important;
  padding-left: 15px !important;
  padding-right: 15px !important;
  margin: 0 auto !important;
}

.testimonial .testimonial__content {
  max-width: 75% !important;
}


/* Make dropdown wider */
.hhs-top-bar .hs-menu-wrapper.hs-menu-flow-horizontal>ul li.hs-item-has-children ul.hs-menu-children-wrapper {
  min-width: 300px !important;
  width: 300px !important;
}

/* Center align text with tighter spacing */
.hhs-top-bar .hs-menu-wrapper.hs-menu-flow-horizontal>ul li.hs-item-has-children ul.hs-menu-children-wrapper li a {
  padding: 8px 20px !important;
  text-align: center !important;
  white-space: normal !important;
  line-height: 1.4 !important;
}

/* Tighter container padding */
.hhs-top-bar .hs-menu-wrapper.hs-menu-flow-horizontal>ul li.hs-item-has-children ul.hs-menu-children-wrapper {
  padding: 5px 0 !important;
}

/* Center dropdown under parent menu item */
.hhs-top-bar .hs-menu-wrapper.hs-menu-flow-horizontal>ul li.hs-item-has-children ul.hs-menu-children-wrapper {
  left: 50% !important;
  transform: translateX(-50%) !important;
  right: auto !important;
}

/* Header line heights */
h1, h2, h3, h4, h5, h6 {
  line-height: 1.2 !important;
}

@media (max-width: 500px) {
  h1 { font-size: 2rem !important; }
  h2 { font-size: 1.75rem !important; }
  h3 { font-size: 1.5rem !important; }
  h4 { font-size: 1.25rem !important; }
  h5 { font-size: 1.1rem !important; }
  h6 { font-size: 1rem !important; }

  h1, h2, h3, h4, h5, h6 {
    word-break: normal !important;
    overflow-wrap: normal !important;
    hyphens: none !important;
  }
}

.who-we-serve-cards a {
  text-decoration: none;
  color: inherit;
  cursor: default;
  pointer-events: none;
}

/* =============================================
   TEXT-WRAP: BALANCE — Centered Headings
   Redundant coverage for all center contexts
   ============================================= */
/* Global base (already exists, kept for redundancy) */
h1, h2, h3, h4, h5, h6 {
  text-wrap: balance !important;
}
/* Inline text-align: center on the element itself */
h1[style*="text-align: center"],
h2[style*="text-align: center"],
h3[style*="text-align: center"],
h4[style*="text-align: center"],
h5[style*="text-align: center"],
h6[style*="text-align: center"],
h1[style*="text-align:center"],
h2[style*="text-align:center"],
h3[style*="text-align:center"],
h4[style*="text-align:center"],
h5[style*="text-align:center"],
h6[style*="text-align:center"] {
  text-wrap: balance !important;
}
/* Common center utility classes */
.text-center h1, .text-center h2, .text-center h3,
.text-center h4, .text-center h5, .text-center h6,
.align-center h1, .align-center h2, .align-center h3,
.align-center h4, .align-center h5, .align-center h6,
.center h1, .center h2, .center h3,
.center h4, .center h5, .center h6,
.centered h1, .centered h2, .centered h3,
.centered h4, .centered h5, .centered h6 {
  text-wrap: balance !important;
}
/* HubSpot module/section center alignment classes */
.hs-align-center h1, .hs-align-center h2, .hs-align-center h3,
.hs-align-center h4, .hs-align-center h5, .hs-align-center h6,
[class*="text-align-center"] h1, [class*="text-align-center"] h2,
[class*="text-align-center"] h3, [class*="text-align-center"] h4,
[class*="text-align-center"] h5, [class*="text-align-center"] h6 {
  text-wrap: balance !important;
}
/* Headings that are themselves centered via class */
h1.text-center, h2.text-center, h3.text-center,
h4.text-center, h5.text-center, h6.text-center,
h1.align-center, h2.align-center, h3.align-center,
h4.align-center, h5.align-center, h6.align-center,
h1.center, h2.center, h3.center,
h4.center, h5.center, h6.center {
  text-wrap: balance !important;
}
/* Wrappers with inline style text-align: center */
[style*="text-align: center"] h1,
[style*="text-align: center"] h2,
[style*="text-align: center"] h3,
[style*="text-align: center"] h4,
[style*="text-align: center"] h5,
[style*="text-align: center"] h6,
[style*="text-align:center"] h1,
[style*="text-align:center"] h2,
[style*="text-align:center"] h3,
[style*="text-align:center"] h4,
[style*="text-align:center"] h5,
[style*="text-align:center"] h6 {
  text-wrap: balance !important;
}

* {
  text-wrap: balance;
}

@media (hover: none) and (pointer: coarse) {
  .c-hover-card-container .c-hover-card-front {
    opacity: 1 !important;
    visibility: visible !important;
  }

  .c-hover-card-container .c-hover-card-back {
    opacity: 0 !important;
    visibility: hidden !important;
  }

  .c-hover-card-container:hover .c-hover-card-front {
    opacity: 1 !important;
    visibility: visible !important;
  }

  .c-hover-card-container:hover .c-hover-card-back {
    opacity: 0 !important;
    visibility: hidden !important;
  }

  .c-hover-card-container:hover .c-hover-img {
    transform: none !important;
  }
}

.resources .resources__container{display:grid;gap:48px;grid-template-columns:repeat(3,1fr);height:auto!important}
.resources .resources__title a{color:var(--primary);text-decoration:none}
.resources .resources__image{background-position:50%;background-repeat:no-repeat;background-size:cover;padding-bottom:56.66%;border-radius:2px}
.resources .resources__content{background-color:#f8ece8;display:grid;gap:48px;height:100%;padding:30px 25px;text-align:center}
.resources .resources__card:nth-child(2n) .resources__content{background:#fdf6ee}
.resources .resources__card-inner{display:flex;flex-direction:column;height:100%}
.resources .resources__meta{color:var(--tertiary);font-size:16px;margin-bottom:0;margin-top:auto}
.resources .resources__meta>span{padding:0 10px;position:relative}
.resources .resources__meta>span:not(:last-child):after{background:var(--primary);content:"";display:inline-block;height:18px;position:absolute;right:-2px;top:50%;transform:translateY(-50%);width:2px}
.resources .blog-pagination ul{margin:0;margin-top:48px;padding:0;list-style:none;align-items:center;display:flex;justify-content:center}
.resources .blog-pagination ul li a{background:0 0;border:none;color:#000;font-size:22px;font-weight:700;padding:10px;display:block}
.resources .blog-pagination ul li a.next-posts-link,.blog-pagination ul li.pager-previous a{background:var(--secondary);border-radius:50%;font-size:0;height:36px;padding:0;width:36px;background-image:url(https://44417263.fs1.hubspotusercontent-na1.net/hubfs/44417263/raw_assets/public/StableRock_July2025/images/icon.svg);background-repeat:no-repeat;background-size:14px;background-position:center;margin-right:10px}
.resources .blog-pagination ul li a.active,.blog-pagination ul li a:hover{color:var(--secondary)}
.resources .blog-pagination ul li a.next-posts-link{transform:rotate(180deg);margin-left:10px}
@media (max-width: 767px){
  .resources .resources__container {
    grid-template-columns: repeat(2, 1fr);
  } 
  .resources .resources__content {
    padding: 30px 15px;
  }
}
@media (max-width: 479px){
  .resources .resources__container {
    grid-template-columns: 1fr;
  }