/* 
    Fonts: Use var(--primary-font) & var(--secondary-font)
    Color: Use var(--primary-color) & var(--primary-color-hover) & var(--secondary-color)
*/

:root {
    --initial-font-size: 18px;
    --space-between-elements: 100px;
    --element-spacing: calc(var(--space-between-elements) / 2) 0;
}
/* @import url('../css/fontface/proxima-secondary-fontface.css'); */
* {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

html {
    height: 100%;
}
body,
html {
    width: 100%;
}


body {
    font-family: var(--secondary-font);
    color: var(--text-color);
    background-color: #fff;
    font-weight: 400;
    font-size: var(--initial-font-size);
    line-height: 1.5;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: var(--primary-font);
    font-weight: 400;
    color: var(--primary-color) !important;
    margin: 0 0 15px;
    line-height: 1.16;
    letter-spacing: -0.36px;
}

h1 {
    font-size: 48px;
}

h2 {
    font-size: 36px;
}

h3,
h4 {
    font-size: 24px;
}
/* h3{
    font-family: 'Proxima Nova' !important;
} */

.container {
    position: relative;
    max-width: 1230px;
    width: 100%;
    margin: 0 auto;
    padding: 0 15px;
}

/* SPACING BETWEEN ELEMENTS | PADDING/MARGIN */

.padding,
.search .content-wrapper,
.article-content {
    padding: var(--element-spacing);
}

.margin {
    margin: var(--element-spacing);
}

/* PADDING OVERWRITES */
html, body {
    font-family: var(--primary-font);
}
.p-0 {
    padding: 0;
}

.pt-0 {
    padding-top: 0;
}

.pr-0 {
    padding-right: 0;
}

.pb-0 {
    padding-bottom: 0;
}

.pl-0 {
    padding-left: 0;
}

/* .pt-x2 {
    padding-top: calc(var(--space-between-elements) * 2);
} */

.pb-x2 {
    padding-bottom: calc(var(--space-between-elements) * 2);
}

/* END SPACING BETWEEN ELEMENTS */

.article-content {
    padding-top: 0;
    position: relative;
}

.flex {
    display: flex;
    align-items: center;
}

.flex-space-between {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.btn {
    display: inline-block;
    background-color: var(--primary-color);
    color: #fff;
    padding: 10px 25px;
    text-decoration: none;
    text-align: center;
    text-decoration: none;
    font-family: var(--primary-font);
}

.btn-alt {
    color: #FFFF
    background-color: transparent;
    border: 2px solid #ffff;
}
.top-btn.btn-alt {
    font-family: var(--primary-font);
    font-size: 18px !important;
    text-transform: uppercase !important;
    color: #fff !important;

    background-color: transparent !important;
    border: 2px solid #fff !important;

    padding: 10px 25px !important;
    display: inline-block !important;

    letter-spacing: 0 !important;
}

.btn-disabled {
    color: #d8d8d8;
    /* background-color: #536688; */
    border: none;
}

.btn:hover {
    background-color: #AD102A !important;
}

.btn-alt:hover {
    background-color: #EDECE2 !important;
    color: #000000 !important;
    font-weight: 400;
    border: 2px solid var(--primary-color) !important;
    text-decoration: none;

    /* background-color: var(--secondary-color); */
}

/* Dropdown container background */
#nav-main-1 .menu-items .child-dropdown {
    background-color: #ffffff !important;
}

/* Links inside dropdown */
#nav-main-1 .menu-items .child-dropdown li a {
    color: #000000 !important;
    text-decoration: none !important;
    font-weight: 600;
}

/* Hover state on dropdown items */
#nav-main-1 .menu-items .child-dropdown li a:hover {
    color: #000000 !important;
    text-decoration: none !important;
    background-color: #f5f5f5; /* optional subtle hover */
}

/* REMOVE underline rule you currently have */
#nav-main-1 .menu-items .child-dropdown li a:hover {
    text-decoration: none !important;
}

.header.pos-fixed {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    z-index: 1000;
}

.logged-in .header.pos-fixed {
    top: 46px;
}

.primary-color {
    color: var(--primary-color);
}

.secondary-color {
    color: var(--secondary-color);
}

.primary-font {
    font-family: var(--primary-font);
}

.secondary-font {
    font-family: var(--secondary-font);
}

/* BreadCrumbs */
.breadcrumb {
    list-style: none;
    list-style-position: inside;
    display: flex;
    font-size: 15px;
}

.breadcrumb .seperator {
    margin: 0 5px;
}

.breadcrumb li a {
    color: var(--primary-color);
}

/* Search Results Page */
.search .container > h2 {
    margin-bottom: 0;
}

.search .container > p {
    font-size: 14px;
    font-style: italic;
}

.search .container .tease {
    padding: 25px 0;
}

.search .container .tease .read-more {
    color: var(--primary-color);
}

.search .pagination {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.search .pagination ul {
    list-style: none;
    display: flex;
    gap: 15px;
    font-size: 14px;
}

/* Form CSS Overwrites */
.request-info {
    /* border: 1px solid #707070; */
    padding: 30px 20px !important;
}

.request-info .form-header {
    font-family: var(--primary-font) !important;
    font-size: 20px !important;
}

.request-info .disclaimer {
    font-size: 12px !important;
    line-height: 18px !important;
    margin-top: 40px !important;
}

#eddyform .form-button {
    font-size: 32px !important;
    margin-top: 16px !important;
    font-weight: 500 !important;
}

#eddyform div.error {
    top: 5px !important;
}

#eddyform .error-message {
    right: -5px !important;
    width: calc(100% + 9px) !important;
}

#eddyform #rn-error {
    color: var(--secondary-color);
    text-align: left;
    margin-top: 25px;
}

#eddyform input::placeholder {
    color: #000;
}

#eddyform {
    .radio-group {
        .radio {
            gap: 5px;
            input {
                height: 11px;
                width: 11px;
            }
        }
    }
}
.aos-with-thumbnails-block h2{
    text-align: center !important;
}
.aos-thumbnails .aos-thumbnail-container,p {
    text-align: left !important;
    align-items: flex-start !important;
}

.aos-thumbnail-container h3,a {
    text-transform: uppercase !important;
}

.call-to-action-container .call-to-action-box .btn {
    display: block !important;      
    margin-top: 30px !important;    
    width: fit-content;             
    text-align: center;  
    text-transform: uppercase;          
}
.call-to-action-container .call-to-action-box h2 {
max-width: 356px;
    width: 100%;
}

.request-info .form-header {
    text-align: center !important;
}
section.hero-section.aos-b .hero-text {
    max-width: 612px;
    width: 100%;
}
.title-text_block.padding.pt-x2 {
    padding: 25px 10px ; 
}
section.hero-section {
    margin-bottom: 60px;
}
.accordion-with-tabs.padding {
  padding-top: 40px !important;
  padding-bottom: 40px !important;
  /* padding-left: 70px; */
}

/* If you want EVEN LESS space when they are stacked */
.accordion-with-tabs.padding + .accordion-with-tabs.padding {
  padding-top: 20px !important;
}

/* 2) Make each accordion-item a single bordered box */
.accordion-with-tabs .accordion-item {
  border: 1px solid #DADFE1 !important;
  margin-bottom: 24px; /* spacing between items */
  background: #fff;
}

/* 3) Header: remove border so it doesn't create seam */
.accordion-with-tabs .accordion-header {
  border: 0 !important;               
  border-bottom: 0 !important;
  margin: 0 !important;
  padding: 18px 20px !important;
  background-color: #CCC9B8;
}

/* 4) Body: remove border + remove padding (you wanted no padding here) */
.accordion-with-tabs .accordion-body {
  border: 0 !important;               
  margin: 0 !important;
  padding: 0 !important;
  background: #fff !important;
}

/* 5) Tabs bar = FULL WIDTH red */
.accordion-with-tabs .tabs {
  margin: 0 !important;
}

.accordion-with-tabs .tab-headers {
  background: var(--primary-color) !important; /* #A6192E */
  display: flex !important;
  gap: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* remove the HR gap completely */
.accordion-with-tabs .tabs hr,
.accordion-with-tabs hr {
  display: none !important;
}

/* 6) Tabs = all same style (no “active” visual difference) */
.accordion-with-tabs .tab-header,
.accordion-with-tabs .tab-header.active {
  background: var(--primary-color) !important;
  color: #fff !important;
  border: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
  margin: 0 !important;
  padding: 16px 28px !important;
  font-weight: 700 !important;
  text-transform: uppercase;
}

/* 7) Padding ONLY inside tab content area */
.accordion-with-tabs .tab-bodies {
  padding: 20px !important; /* adjust to match Figma */
  margin: 0 !important;
}

.accordion-with-tabs .tab-body {
  padding: 0 !important; /* keep content clean */
}
.why-save-block.padding
{
    background-color: #EDECE2;
}
#nav-main-1 .menu-items li:last-child:hover a {
  text-decoration: underline;
  text-decoration-color: white;
}

.hero-section.Afford-ability .hero-text h1{
    padding: 28.5px 156px 28.5px 70px !important;
}
.hero-section.Afford-ability .hero-text{
    width: 612px;

}
#nav-main-1 .menu-items > li.menu-item-has-children > span > a::after {
    content: "";
    display: inline-block;
    width: 14px;
    height: 14px;
    margin-left: 12px;
    margin-top: 2px;
    border-right: 1.5px solid #fff;
    border-bottom: 1.5px solid #fff;
    transform: rotate(45deg);
}
#nav-main-1 .menu-items li a.flex-space-between::after {

        margin-bottom: 14px;
    vertical-align: middle;
}

/* Remove space between stacked title-text blocks */
.title-text_block + .title-text_block {
    padding-top: 0 !important;
    margin-top: 0 !important;
}
.why-save-block.padding.why-b h2 {
    font-size: 22px;
    font-weight: 600;
    text-transform: uppercase;
}

@media screen and (max-width: 999px) {
    :root {
        --initial-font-size: 18px;
        --space-between-elements: 50px;
    }
       .aos-with-thumbnails-block h2 {
        text-align: left !important;
    }

#eddyform .form-button {
    font-size: 16px !important;
}
.dis-sec .block-title{
    margin: 0 0 35px 10px;
}
/* .call-to-action-container .call-to-action-box > h2 {
    margin: 0 0 35px 10px;
} */
.call-to-action-container .call-to-action-box .btn {
    /* margin-left: auto !important; */
    margin-right: auto !important;
    font-size: 24px !important;
    font-weight: 600 !important;
}
.aos-thumbnail-container h3 {
    font-size: 22px !important;
    font-weight: 600 !important;
}
.aos-thumbnail-container a {
    font-size: 22px !important;
    font-weight: 600 !important;
}
.accordion-with-tabs .tab-header, .accordion-with-tabs .tab-header{
    text-align: justify;
}
.accordion-with-tabs .tab-headers {
    flex-direction: column;
}
.accordion-with-tabs.padding + .accordion-with-tabs.padding {
    padding-top: 0px !important;
}   
.hero-section.Afford-ability .hero-text h1 {
     padding: 54px 25px !important;
}
.hero-section.Afford-ability .hero-text {
    width: 100%;
}
.title-text_block.padding.fin-aid h2 {
    max-width: 224px;
}
section.hero-section.Afford-ability ~ .title-text_block h2 {
    max-width: 244px;
}
.why-save-block.padding.why-b p {
    text-align: center !important;
}
.why-save-block.padding.why-b .container h2 {
    text-align: center;
}
.footer-copyright .container {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    font-size: 15px;
}
}
.accordion-with-tabs .tab-headers .tab-header {
  pointer-events: none;
  cursor: default;
}

.accordion-with-tabs .tab-headers .tab-header:first-child {
  pointer-events: auto;
  cursor: pointer;
}