.elementor-19861 .elementor-element.elementor-element-a4a523d{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-19861 .elementor-element.elementor-element-9a51eb3{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-19861 .elementor-element.elementor-element-9a51eb3:not(.elementor-motion-effects-element-type-background), .elementor-19861 .elementor-element.elementor-element-9a51eb3 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F8F8F8;}.elementor-19861 .elementor-element.elementor-element-9a51eb3.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-19861 .elementor-element.elementor-element-c1883b3 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-19861 .elementor-element.elementor-element-f51cdd9{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-19861 .elementor-element.elementor-element-59e1ee3 > .elementor-widget-container{margin:0px 0px -30px 0px;padding:0px 0px 0px 0px;}.elementor-19861 .elementor-element.elementor-element-78877ca > .elementor-widget-container{margin:3em 0em 3em 0em;}.elementor-19861 .elementor-element.elementor-element-196afa4 > .elementor-widget-container{margin:0px 0px -30px 0px;padding:0px 0px 0px 0px;}.elementor-19861 .elementor-element.elementor-element-b129705 > .elementor-widget-container{margin:3em 0em 3em 0em;}.elementor-19861 .elementor-element.elementor-element-c2d8c4f > .elementor-widget-container{margin:0px 0px -30px 0px;padding:0px 0px 0px 0px;}.elementor-19861 .elementor-element.elementor-element-09b8f35 > .elementor-widget-container{margin:19px 0px 0px 0px;}.elementor-19861 .elementor-element.elementor-element-ef4fb78 > .elementor-widget-container{margin:0px 0px -30px 0px;padding:0px 0px 0px 0px;}.elementor-19861 .elementor-element.elementor-element-6a5d2f2 > .elementor-widget-container{margin:0px 0px -30px 0px;padding:0px 0px 0px 0px;}.elementor-19861 .elementor-element.elementor-element-2f28bec > .elementor-widget-container{margin:3em 0em 10em 0em;border-radius:20px 20px 20px 20px;}.elementor-19861 .elementor-element.elementor-element-2f28bec .elementor-button{font-family:"Century Gothic", Sans-serif;font-weight:600;}.elementor-19861 .elementor-element.elementor-element-e97d4a4{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-19861 .elementor-element.elementor-element-e97d4a4:not(.elementor-motion-effects-element-type-background), .elementor-19861 .elementor-element.elementor-element-e97d4a4 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F8F8F8;}.elementor-19861 .elementor-element.elementor-element-cd02c41 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}body.elementor-page-19861:not(.elementor-motion-effects-element-type-background), body.elementor-page-19861 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}@media(max-width:767px){.elementor-19861 .elementor-element.elementor-element-f51cdd9{--padding-top:0%;--padding-bottom:0%;--padding-left:0%;--padding-right:0%;}.elementor-19861 .elementor-element.elementor-element-2f28bec .elementor-button{font-size:1.2em;}}/* Start custom CSS *//*--*/
/*PAGE MAIN LAYOUT*/
/*--*/

.site-content,
.ast-container,
.elementor-element-a4a523d {
    padding: 0 !important;
    margin: 0 !important;
    max-width: none !important;
    width: 100% !important;
}

.e-con-inner{
    margin-left: 0 !important;
    margin-right: 0 !important;
}

#main-parent-container {
    display: flex;
    flex-wrap: nowrap;
    flex-direction: initial !important;
}

#child-container-left,
#child-container-right {
    flex: 1;
    min-width: 1;
}

/* Single shared declaration for both containers */
#child-container-right .e-con-inner,
#child-container-left .e-con-inner {
    display: flex !important;
    flex-direction: initial !important;
    background-color: #F5F5F5;
}

#child-container-center {
    flex: 0 0 1200px;
    max-width: 1200px;
    background-color: white;
    padding-top: 1em;
}

/*Make gutters disappear on mobile*/
@media (max-width: 800px) {
    #child-container-center {
        flex: none;
        max-width: 100%;
        flex-wrap: wrap;
        padding-left: 5%;
        padding-right: 5%;
        width: max-content;
    }
    #child-container-left,
    #child-container-right{
        display: none;
    }
}

/*--*/
/*DOWNLOAD RFP TEMPLATE*/
/*--*/

#child-container-left > .elementor-element.elementor-element-c1883b3.elementor-widget.elementor-widget-html {
    position: static !important; /* or try removing position altogether */
}

#child-container-left > .elementor-element.elementor-element-c1883b3.elementor-widget.elementor-widget-html > .elementor-widget-container {
    position: static !important; /* or try removing position altogether */
}

#download-rfp-template {
    display: block;
    position: -webkit-sticky !important;
    position: sticky !important;
    position: sticky;
    top: 130px;
    max-height: calc(100vh - 160px);
    overflow-y: auto;
    padding: 1em;
    border-radius: 5px;
    z-index: 10; /* High enough to stay above other elements */
    margin-left: 1em;
    margin-right: 1em;
    max-width: calc(100% - 2em) !important;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    transition: height 0.3s ease, opacity 0.3s ease, padding 0.3s ease;
    background-color: white; /* Ensure background is visible */
}

#download-rfp-template.minimized {
    height: 40px;
    width: 40px; /* Set explicit width */
    opacity: 1;
    overflow: hidden;
    padding: 10px; /* Add some padding to prevent button from touching edges */
    max-width: 40px !important;
    margin-left: auto; /* Align to the right */
    position: sticky; /* Maintain stickiness when minimized */
}

#download-rfp-template.minimized h3,
#download-rfp-template.minimized p {
    visibility: hidden;
}

/* Ensure the toggle button remains visible */
#download-rfp-template.minimized .toggle-button {
    visibility: visible;/
    display: flex;
}

@media (min-width: 1800px) {
    #download-rfp-template {
        display: block;
        flex-basis: auto;
        max-width: none;
        padding: 1.5em;
        background-color: white;
        width: calc(100% + 25%);
    }
    #child-container-left .e-con-inner {
        margin-left: 5%;
        margin-right: 5%;
    }
}

/* TOGGLE BUTTON */
.toggle-button {
    position: absolute;
    top: 10px;
    right: 10px;
    cursor: pointer;
    width: 20px;
    height: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: transform 0.3s ease;
}

.toggle-button .line {
    position: absolute;
    width: 100%;
    height: 2px;
    background-color: black;
    transform-origin: center;
    transition: transform 0.3s ease;
}

/* Create the "X" by rotating the lines */
.toggle-button:not(.minimized) .line:first-child {
    transform: rotate(45deg);
}

.toggle-button:not(.minimized) .line:last-child {
    transform: rotate(-45deg);
}

/* Create the horizontal line when minimized */
.toggle-button.minimized .line:first-child,
.toggle-button.minimized .line:last-child {
    transform: rotate(0deg);
}

/* Adjust toggle button position when minimized */
#download-rfp-template.minimized .toggle-button {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    right: auto;
}


/*--*/
/*TABLE OF CONTENTS*/
/*--*/

#table-of-contents {
    display: none;
    position: sticky;
    top: 130px;
    max-height: calc(100vh - 160px);
    overflow-y: auto;
    padding: 1em;
    border-radius: 5px;
    /*border: 1px black solid;*/
    z-index: 1;
    margin-left: 1em;
    margin-right: 1em;
    max-width: calc(100% - 2em) !important;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}

/*Table of contents disappears on mobile*/
@media (min-width: 1600px) {
    #table-of-contents {
        display: block;
        flex-basis: auto;
        max-width: none;
        padding: 10px;
        background-color: white;
        width: calc(100% + 25%);
    }
    #child-container-right .e-con-inner {
        margin-left: 5%;
        margin-right: 5%;
    }
}


#table-of-contents ul {
    list-style-type: none;
    padding-left: 0;
    margin-left: 0;
}

#table-of-contents li {
    margin-bottom: 0.5em;
    padding-right: 1em;
}

.back-to-articles-divider {
    width: 3em;
    margin: 0 0 1em 1em !important;
    background-color: black !important;
}

#back-to-articles-link {
    margin-top: 2em !important;
    text-align: center !important;
    margin-left: 1em;
}

.back-to-articles-arrow {
    vertical-align: middle; 
    margin-left: 5px;
    stroke: none; /* This controls the color of the arrow stroke (lines) */
    stroke-width: 10px !important;
    fill: none; /* Ensures the inside of the arrow isn't filled */
    color: black !important;
    transition: transform 0.3s ease;
}

#back-to-articles-link:hover .back-to-articles-arrow {
    transform: scale(1.2);
    color: #0000FF !important;
}

.toc-link::before {
    content: '•';
    color: transparent;
    font-size: 1em;
    margin-right: 0.5em;
    vertical-align: middle;
    display: inline-block;
    font-weight: 400;
}

.toc-link.active::before {
    color: red;
    font-weight: 800;
}

.toc-link.active {
    text-decoration: underline; /* Underline the active link */
}

.toc-link {
    display: block;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    /* The rest of your .toc-link styles */
}/* End custom CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'Century Gothic';
	font-style: normal;
	font-weight: 400;
	font-display: auto;
	src: url('/wp-content/uploads/2022/03/CenturyGothic.ttf') format('truetype');
}
@font-face {
	font-family: 'Century Gothic';
	font-style: normal;
	font-weight: 700;
	font-display: auto;
	src: url('/wp-content/uploads/2022/03/gothicb.ttf') format('truetype');
}
/* End Custom Fonts CSS */