/* ArtegraSoft – Bold */
@font-face {
  font-family: "Artegra Soft";
  src: url("../fonts/ArtegraSoft-Bold.woff2") format("woff2"),
       url("../fonts/ArtegraSoft-Bold.otf") format("opentype");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

/* ArtegraSoft – SemiBold (will serve as Medium) */
@font-face {
  font-family: "Artegra Soft";
  src: url("../fonts/ArtegraSoft-SemiBold.woff2") format("woff2"),
       url("../fonts/ArtegraSoft-SemiBold.otf") format("opentype");
  font-weight: 500; /* Medium weight */
  font-style: normal;
  font-display: swap;
}

/* Canela – Bold */
@font-face {
  font-family: "Canela";
  src: url("../fonts/Canela-Bold.woff2") format("woff2"),
       url("../fonts/Canela-Bold.otf") format("opentype");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

/* ====== Updated Theme tokens per client request ====== */
:root{
  --font-body: "Artegra Soft", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  --font-heading: "Canela", "Times New Roman", Times, serif;
  
  --color-primary: #1C75BC;    /* Headers / Subheaders */
  --color-accent:  #27AAE1;    /* Buttons / scroll nav */
  --color-body:    #58595B;    /* Paragraph text */
  --color-white:   #FFFFFF;    /* White headers */
}
/* Header Logo Containment Fix */

/* Ensure header has proper height constraints */
#header-content {
    min-height: 100px;
    overflow: hidden;
}

/* Keep the logo properly contained within header bounds */
#logo {
    max-height: calc(100% - 3rem); /* More padding from container edges */
    display: flex;
    align-items: center;
    top: 1.5rem; /* Add some top margin */
}

/* Ensure the logo image respects container bounds */
#logo img {
    max-height: 65px; /* Reduced from 70px to give more breathing room */
    width: auto;
    height: auto;
}

/* Responsive adjustments to maintain proper scaling */
@media (min-width: 1501px) {
    #logo img {
        max-height: 55px; /* Even smaller at very large screens */
    }
}

@media (max-width: 1500px) {
    #logo img {
        max-height: 55px;
    }
}

@media (max-width: 768px) {
    #header-content {
        min-height: 75px;
    }
    
    #logo img {
        max-height: 50px;
    }
}

@media (max-width: 640px) {
    #logo img {
        max-height: 45px;
    }
}

/* Override text color to white only for HubSpot CTA buttons */
.boxbtn.bgwhite.hs-cta-trigger-button {
    color: #ffffff !important;
}

/* Ensure the icon is also white for HubSpot buttons */
.boxbtn.bgwhite.hs-cta-trigger-button i {
    color: #ffffff !important;
}
/* More specific override for the h2 title */
.intro-title.tcenter h2.section-title-medium.upper.ttertiary {
    font-family: "Artegra Soft", Arial, Helvetica, sans-serif !important;
}

/* Override footer form fonts */
#footer-form .quick-form-intro h2 {
    font-family: "Canela", Arial, Helvetica, sans-serif !important;
}

/* Override the font-headline class specifically in footer form */
#footer-form .font-headline {
    font-family: "Canela", Arial, Helvetica, sans-serif !important;
}

/* Footer form paragraph text */
#footer-form .quick-form-intro p {
    font-family: "Artegra Soft", Arial, Helvetica, sans-serif !important;
}

/* HubSpot form labels */
#footer-form .hbspt-form label {
    font-family: "Artegra Soft", Arial, Helvetica, sans-serif !important;
}

/* HubSpot form inputs */
#footer-form .hbspt-form input {
    font-family: "Artegra Soft", Arial, Helvetica, sans-serif !important;
}

/* HubSpot submit button */
#footer-form .hbspt-form .hs-button {
    font-family: "Artegra Soft", Arial, Helvetica, sans-serif !important;
}