body {
  background-color: ;
  color: #333333;
}
.webpage-block .jumbotron h1, h1 {
  color: ;
  font-family: Archivo;
  font-size: 80px;
}
.webpage-block .jumbotron h2, h2 {
  color: ;
  font-family: Archivo;
  font-size: 48px;
}
.webpage-block .jumbotron h3, h3 {
  color: ;
  font-family: Archivo;
  font-size: 32px;
}
.webpage-block .jumbotron h4, h4 {
  color: ;
  font-family: Archivo;
  font-size: 18px;
}
.webpage-block .jumbotron h5, h5 {
  color: ;
  font-family: Archivo;
  font-size: 14px;
}
.webpage-block .jumbotron h6, h6 {
  color: ;
  font-family: Archivo;
  font-size: 12px;
}
.webpage-block .jumbotron p, p, .content-block div, .panel div, li {
  color: ;
  font-family: Archivo;
  font-size: 18px;
}
.jumbotron blockquote, blockquote {
  color: ;
  font-family: Archivo;
  font-size: 18px;
}
.jumbotron .lead, .content-block .lead, .lead {
  color: ;
  font-family: Archivo;
  font-size: 21px;
}
@media (max-width: 767px) {
  .webpage-block .jumbotron h1, h1 {
    font-size: 50px;
  }
  .webpage-block .jumbotron h2, h2 {
    font-size: 38px;
  }
  .webpage-block .jumbotron h3, h3 {
    font-size: 26px;
  }
  .webpage-block .jumbotron h4, h4 {
    font-size: 18px;
  }
  .webpage-block .jumbotron h5, h5 {
    font-size: 14px;
  }
  .webpage-block .jumbotron h6, h6 {
    font-size: 12px;
  }
  .webpage-block .jumbotron p, p {
    font-size: 18px;
  }
  .webpage-block .jumbotron blockquote, blockquote {
    font-size: 18px;
  }
  .webpage-block .jumbotron .lead, .lead {
    font-size: 20px;
  }
}
.webpage-background a {
  color: #c46332;
}
.webpage-block a {
  color: #c46332;
}
.webpage-contact a {
  color: #c46332;
}
.webpage-about a {
  color: #c46332;
}
.webpage-footer {
  background-color: #00577a !important;
  color: #ffffff !important;
}
.webpage-footer a{
  color: #ffffff !important;
}
.webpage-footer .site-footer-simple {
  background-color: #00577a !important;
  color: #ffffff !important;
}

.webpage-footer p {
  color: #ffffff !important;
}
.webpage-footer .site-footer-simple a,
.webpage-footer .site-footer-simple a:hover {
  background-color: #00577a !important;
  color: #ffffff !important;
}
.webpage-header .navbar {
  background-color: ffffff;
  color: #333333;
}
.webpage-header .navbar a,
.webpage-header .navbar a:hover {
  color: #333333 !important;
}
.webpage-header.navbar-fixed-top {
  background-color: ;
}
.webpage-group .webpage-hero > div > div {
  padding-top: 20px;
}
.webpage-header.navbar-fixed-top.hero-behind.transparent {
  background-color: transparent;
}
.webpage-header.hero-behind.transparent .navbar {
  background-color: transparent;
}
body.hero-behind .webpage-group .webpage-hero > div {
  margin-top: 0 !important;
}
.webpage-footer .site-footer-columns .site-footer-upper,
.webpage-footer .site-footer-layers {
  background-color: #00577a !important;
  color: #ffffff !important;
}
.webpage-footer .site-footer-columns .site-footer-upper a,
.webpage-footer .site-footer-columns .site-footer-upper a:hover,
.webpage-footer .site-footer-layers a,
.webpage-footer .site-footer-layers a:hover {
  color: #ffffff !important;
}

/* =====================================
   LB UNIVERSAL BUTTON — LOCABLE MATCH
   ===================================== */

.lb-auto-btn{
  display:inline-block;
  padding:10px 16px;

  background:#c46332;
  color:#fff !important;

  border-radius:4px;
  font-weight:600;

  text-decoration:none !important;
  border:1px solid transparent;
}

.lb-auto-btn:hover{
  background:#a65128;
}




/* =========================
   Lanesboro Utility: Vertical Center Content Blocks
   Usage: Add class "lb-vertical-center" to a content block/group
   Desktop: Vertically centers image + text columns
   Mobile: Falls back to normal stacked layout
   ========================= */

/* Desktop / tablet */
@media (min-width: 768px){

  /* Target Locable / Bootstrap row inside the block */
  .lb-vertical-center .row{
    display:flex !important;
    align-items:center !important;
  }

  /* Ensure columns behave nicely inside flex */
  .lb-vertical-center .row > [class*="col"]{
    display:flex;
    flex-direction:column;
    justify-content:center;
  }

}

/* Mobile — return to normal stacking */
@media (max-width: 767px){

  .lb-vertical-center .row{
    display:block !important;
  }

  .lb-vertical-center .row > [class*="col"]{
    display:block;
  }

}



/* === Lanesboro Utility: White Links → Orange Hover (#c46332) === */

a.lb-link-white{
  color:#ffffff !important;
  transition: color .2s ease;
}

a.lb-link-white:hover{
  color:#c46332 !important;
}

/* Layout container */
.lacc-cta-bar{
  display: flex !important;
  justify-content: center;
  align-items: center;
  gap: 56px;                 /* “healthy spacing” */
  padding: 8px 24px;
  flex-wrap: nowrap;         /* keep all 3 on one row (desktop) */
  text-align: center;
}

/* If the editor wraps each link in <p>, kill the spacing + layout impact */
.lacc-cta-bar p{
  margin: 0 !important;
}

/* Optional: if <p> wrappers are causing line breaks, this makes them “not exist” for layout */
.lacc-cta-bar p{
  display: contents;
}

/* Links */
.lacc-cta-bar a{
  color: #fff !important;              /* override sitewide orange */
  text-decoration: none !important;
  font-size: 22px;
  font-weight: 500;
  white-space: nowrap;                 /* prevents weird wrapping inside a CTA */
}

/* Bold the key words */
.lacc-cta-bar a strong{
  font-weight: 700;
  color: #fff !important;
}

/* Hover */
.lacc-cta-bar a:hover{
  text-decoration: underline;
}

/* Stack CTA bar whenever hamburger menu is active */
@media (max-width: 991px){

  .lacc-cta-bar{
    flex-direction: column !important;
    gap: 18px;
    padding: 16px 16px;
    align-items: center;
  }

  .lacc-cta-bar .lacc-cta{
    font-size: 18px;
    line-height: 1.3;
    white-space: normal; /* allow wrapping */
    text-align: center;
  }

}

/* Hover color for CTA links */
.lacc-cta-bar a:hover{
  color: #c46332 !important;
  text-decoration: underline;
}

/* Ensure bolded words change color too */
.lacc-cta-bar a:hover strong{
  color: #c46332 !important;
}

/* The big padding is on the block wrapper, not the CTA bar */
.webpage-block.b-p-h-xl:has(.lacc-cta-bar){
  padding-top: 14px !important;
  padding-bottom: 14px !important;
  /* optional: keep or tweak side padding */
  padding-left: 15px !important;
  padding-right: 15px !important;
}

@media (max-width: 767px){
  .webpage-block.b-p-h-xl:has(.lacc-cta-bar){
    padding-top: 4px !important;
    padding-bottom: 4px !important;
  }

 .lacc-cta-bar a{
    font-size: 17px;
    line-height: 1.25;
  }

  .lacc-cta-bar{
    padding: 4px 0 !important;
    gap: 12px;
  }
}


/* Increase spacing between top-level nav items (desktop only) */
@media (min-width: 992px) {

  /* Space BETWEEN nav items */
  .webpage-header .navbar-nav > li {
    margin-right: 12px;   /* adjust 10–18px as needed */
  }

  /* Remove extra space after last item */
  .webpage-header .navbar-nav > li:last-child {
    margin-right: 0;
  }

  /* Space INSIDE nav links (clickable area) */
  .webpage-header .navbar-nav > li > a {
    padding-left: 16px;
    padding-right: 16px;
  }

}



/* Tight hero icon spacing */
.hero-icon-logo {
  text-align: center;
  margin-top: 0;
  margin-bottom: 0.75rem; /* tighten gap to headline */
}

.hero-icon-logo img {
  max-width: 85px;  /* slightly smaller = less visual float */
  height: auto;
  display: inline-block;
}

/* Remove top margin from first heading under hero icon */
.hero-icon-logo + h1,
.hero-icon-logo + h2 {
  margin-top: 0 !important;
}



/* Add vertical breathing room to nav header */
.webpage-header .navbar {
  padding-top: 8px;
  padding-bottom: 8px;
}






body {font-size: 18px;}
.vcard-social {background: #fff; width: 100%; padding: 0 5%;}
.vcard-phone a, .header-social a, .navbar-nav .navbar-text, .vcard-email a {color: #00577a;}
.vcard-phone a, .header-social a, .navbar-nav .navbar-text, .navbar-nav .navbar-text a, .social-icon svg {color: #00577a !important;} 
.webpage-footer .site-footer-columns .footer-social .social-icon svg {color: #fff !important;} 
.hero-behind {z-index: 9;}  


/*ensures logo is visible with behind setting*/
.hero-behind .navbar li a {color: #fff!important;}
.hero-behind .webpage-header .navbar-default {border-color: transparent;}
.dropdown-menu, .hero-behind.webpage-header .navbar-default .dropdown ul {background: #fff;}


/* Dropdown background: semi-opaque white with blur */
.dropdown-menu,
.hero-behind.webpage-header .navbar-default .dropdown ul {
  background: rgba(255, 255, 255, 1); /* more opaque white */
  backdrop-filter: blur(12px); /* increase blur if needed */
  -webkit-backdrop-filter: blur(12px);
  border: none;
  box-shadow: none;
}



/* Dropdown link base style */
.webpage-header .navbar .dropdown li a {
  color: #333333 !important; /* blue text */
  border-bottom: 1px solid #333333;
  padding: 10px 15px;
  display: block;
  background: transparent !important;
  transition: color 0.3s ease, background-color 0.3s ease;
}


/* Hover effect: blue background and white text */
.webpage-header .navbar .dropdown li a:hover {
  background-color: #00577a !important;
  color: #ffffff !important;
}

/* Main navbar links (outside of dropdown) */
.webpage-header .navbar li a {
  font-size: 20px;
  text-transform: none;
  font-weight: 700;
  letter-spacing: 0.01em;
}

/*Sets Hero font color site-wide*/
.webpage-hero .jumbotron h1, .webpage-hero .jumbotron h2, .webpage-hero .jumbotron h3, .webpage-hero .jumbotron h4, .webpage-hero .jumbotron h5, .webpage-hero .jumbotron h6, .webpage-hero .jumbotron p, .webpage-hero .jumbotron div, .webpage-hero .jumbotron ol, .webpage-hero .jumbotron ul, .webpage-hero .jumbotron li {color: #fff;}



/*Sets height for all columns*/
.webpage-call-to-action .panel img {
    object-fit: cover;
    max-height: 210px;
    width: 100%; 
box-shadow: none;}

.logos .webpage-call-to-action .panel {
    display: flex;
    align-items: center;  /* Vertically center */
    justify-content: center;  /* Optional: horizontally center */
    height: 200px;  /* Or whatever height makes sense for your layout */
}

.logos .webpage-call-to-action .panel img {
    object-fit: contain;
    max-height: 200px;
    width: auto; 
box-shadow: none;
border-radius: 0%;}


/*.col-sm-6 .webpage-call-to-action .panel img targets 2 column */
/*.col-sm-4 .webpage-call-to-action .panel img targets 3 column */
/*.col-sm-3 .webpage-call-to-action .panel img targets 4 column */

/*Adjust menu font size for small laptops */
@media (min-width: 1025px) and (max-width: 1199px) {
.webpage-header .navbar li a {font-size: 90%; }
}

@media (min-width: 769px) {

/*Hero Styling w custom class "welcome"*/
.welcome .btn {margin-top: 12px; text-align: center; vertical-align: middle; font-size: 30px;}
.welcome .jumbotron .container  {margin-top: 280px;} 

/*Applies to all heroes*/
.webpage-group .webpage-block .webpage-hero  .btn {margin-top: 12px; text-align: center; vertical-align: middle; font-size: 30px;}
.webpage-group .webpage-block .webpage-hero  .jumbotron .container  {margin-top: 200px;} 

}


/* Removes top margin in mobile hero */
.welcome .jumbotron .container {margin-top: 0;}

/*removes top margin for all heroes*/ 
.webpage-group .webpage-block .webpage-hero {margin-top: 0;}
.hero-behind .dropdown-menu, .hero-behind.webpage-header .navbar-default ul {background: #444;}


/*Buttons*/
.webpage-block .btn {background: #c46332; color: #fff; border: 1px solid #c46332;-webkit-transition: all .5s ease;
     -moz-transition: all .5s ease;
       -o-transition: all .5s ease;
      -ms-transition: all .5s ease;
          transition: all .5s ease;
text-shadow: none;}
.webpage-block .btn:hover {background: #00577a; color: #fff;border: 1px solid #00577a;}

/*Resource button styling*/
.btn-primary, .btn.btn-default.btn-clear-search {background: #c46332; color: #fff; border: 1px solid #c46332; }
.btn-primary:hover, .btn.btn-default.btn-clear-search:hover {background: #00577a; color: #fff;border: 1px solid #00577a;}

/* Softer, modern hero text shadow */
.webpage-group .webpage-block .webpage-hero {
  text-shadow: 0 2px 6px rgba(0,0,0,0.35);
}

.nav.navbar .navbar-toggle .icon-bar {background-color: #333!important;}


/* =========================================
   LANESBORO TYPOGRAPHY SYSTEM
   Archivo Body + Archivo Black Headers
   FINAL PRODUCTION VERSION
   ========================================= */


/* =========================================
   GOOGLE FONT VARIABLES
   ========================================= */

:root{
  --font-body: "Archivo", -apple-system, BlinkMacSystemFont,
               "Segoe UI", Roboto, Helvetica, Arial, sans-serif;

  --font-headline: "Archivo Black", "Archivo",
                   -apple-system, BlinkMacSystemFont,
                   "Segoe UI", Roboto, Helvetica, Arial, sans-serif;

  --body-line: 1.6;
  --heading-line: 1.12;

  --heading-tight: -0.01em;
  --heading-tighter: -0.02em;
}


/* =========================================
   BODY TYPOGRAPHY
   ========================================= */

html, body{
  font-family: var(--font-body) !important;
  font-weight: 400;
  line-height: var(--body-line);
}


/* =========================================
   BASE TEXT ELEMENTS
   ========================================= */

p, li, blockquote, dd, dt,
.text, .wysiwyg, .content, .rich-text{
  font-family: var(--font-body) !important;
  font-weight: 400;
  line-height: var(--body-line);
}


/* =========================================
   HEADER SYSTEM — STRUCTURAL WEIGHT
   (NO RELIANCE ON <strong>)
   ========================================= */

h1, h2{
  font-family: var(--font-headline) !important;
  letter-spacing: var(--heading-tighter);
  line-height: var(--heading-line);
}

h3, h4, h5, h6{
  font-family: var(--font-body) !important;
  letter-spacing: var(--heading-tight);
  line-height: var(--heading-line);
}


/* =========================================
   WEIGHT LADDER (CRITICAL FOR CONSISTENCY)
   ========================================= */

h1{ font-weight: 900 !important; }
h2{ font-weight: 900 !important; }

h3{ font-weight: 700 !important; }   /* FIXES “WHY VISIT” */
h4{ font-weight: 600 !important; }
h5{ font-weight: 600 !important; }
h6{ font-weight: 500 !important; }


/* =========================================
   LOCABLE HEADER OVERRIDE SAFETY
   ========================================= */

.webpage-block h1,
.webpage-block h2{
  font-family: var(--font-headline) !important;
}

.webpage-block h3,
.webpage-group h3{
  font-weight: 700 !important;
}


/* =========================================
   HERO / JUMBOTRON HEADERS
   ========================================= */

.jumbotron h1,
.webpage-hero h1{
  font-family: var(--font-headline) !important;
  font-weight: 900 !important;
  letter-spacing: var(--heading-tighter);
}

.jumbotron h2,
.webpage-hero h2{
  font-family: var(--font-headline) !important;
  font-weight: 900 !important;
}


/* =========================================
   ICON HEADING NORMALIZATION
   Prevents fake bold differences
   ========================================= */

h1 i, h1 svg,
h2 i, h2 svg,
h3 i, h3 svg,
h4 i, h4 svg{
  font-weight: inherit;
}

h1 span, h2 span, h3 span{
  font-weight: inherit;
}


/* =========================================
   REMOVE CMS BOLD INTERFERENCE
   ========================================= */

h1 strong,
h2 strong,
h3 strong{
  font-weight: inherit;
}


/* =========================================
   BUTTON / CTA TYPOGRAPHY
   ========================================= */

button,
.btn,
a.btn,
a.button,
input[type="submit"]{
  font-family: var(--font-body) !important;
  font-weight: 600 !important;
  letter-spacing: 0.01em;
}


/* =========================================
   MICRO POLISH — SPACING (VERY SAFE)
   ========================================= */

h1, h2, h3, h4{
  margin-top: 0;
}

h3{
  margin-bottom: 0.5em;
}

p{
  margin-bottom: 1em;
}


/* =========================================
   SMALL UI TEXT
   ========================================= */

small,
.meta,
.caption,
figcaption{
  font-family: var(--font-body) !important;
  font-weight: 400;
}

/* =========================================
   HERO IMAGE OVERLAY — ALL DEVICES
   ========================================= */

/* Ensure the hero has a positioning context */
.webpage-hero .jumbotron{
  position: relative;
}

/* The overlay */
.webpage-hero .jumbotron:before{
  content:"";
  position:absolute;
  inset:0;
  background: rgba(0,0,0,0.3); /* adjust darkness here */
  z-index:0;
  pointer-events:none;
}

/* Keep hero text above the overlay */
.webpage-hero .jumbotron .container{
  position: relative;
  z-index:1;
}


/* =========================================================
   NAV STABILITY RULES
   Phones + Tablets (<=1024px): hamburger + stacked dropdowns
   Desktop (>=1025px): regular nav + wide flyout dropdowns
   ========================================================= */

/* Phones + tablets: collapsed nav behaves like a full-width panel */
@media (max-width: 1024px){

  /* Keep hamburger visible (don’t hide it anywhere) */
  .webpage-header .navbar-toggle{
    display: block !important;
  }

  /* Make the collapse panel full width when opened */
  .webpage-header .navbar-collapse{
    width: 100% !important;
    max-width: 100% !important;
  }

  /* Remove desktop dropdown width constraints in collapsed mode */
  .webpage-header .nav .dropdown-menu{
    min-width: 0 !important;
    max-width: 100% !important;
  }

  /* Stack open dropdowns inside the collapse panel */
  .webpage-header .navbar-nav .open .dropdown-menu{
    position: static !important;
    float: none !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    box-shadow: none !important;
    border: 0 !important;
  }
}

/* Desktop: keep wide flyout dropdown */
@media (min-width: 1025px){
  .webpage-header .nav .dropdown-menu{
    min-width: 360px;
  }
}



/* =========================================================
   HOMEPAGE HERO — MOBILE HEIGHT + TRUE VERTICAL CENTERING
   Overrides Locable inline height and centers hero text
   ========================================================= */

@media (max-width: 767px){

  body.hero-below .webpage-hero .jumbotron.below{
    height: 60vh !important;
    min-height: 60vh !important;

    display: flex;
    align-items: center;
  }

  /* Remove Locable's pixel-based vertical offset */
  body.hero-below .webpage-hero .jumbotron .container{
    margin-top: 0 !important;
    width: 100%;
  }

}

/* =========================================================
   MOBILE HERO H1: Auto-shrink slightly when words are long
   Goal: keep the “50px look” when it fits, scale down when it doesn’t
   ========================================================= */
@media (max-width: 767px){
  .webpage-hero .jumbotron h1,
  .webpage-hero h1{
    font-size: clamp(34px, 10.5vw, 50px) !important;
    line-height: 1.02 !important;
    letter-spacing: -0.01em !important;
    word-break: normal;
    overflow-wrap: normal;
  }
}
