/*-------------------------------------------------------------
- Global Styles
-------------------------------------------------------------*/
body .hide{
    display: none!important;
}
body .show_all_posts{
    cursor: pointer;
    padding-bottom: 10px;
    display: block;
}
body .hidden_posts{
    display: none;
}
body .hidden_posts.show_posts{
    display: block;
}
#et_mobile_nav_menu{
    padding-top: 25px;
}
sup{
    font-size: .75em!important;
}
/*-------------------------------------------------------------
- Projects Isotope Grid
-------------------------------------------------------------*/

/* Wrapper: just a container for Isotope’s abs-pos children  */
.projects_isotope_wrapper.grid_view{
    position: relative;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 40px;
}

/* Card shell ------------------------------------------------ */
.project-card{
    background:#fff;
    border-radius:8px;
    box-shadow:0 4px 18px rgba(0,0,0,.06);
    overflow:hidden;
}
.project-card:hover{
    transform:translateY(-4px);
    box-shadow:0 8px 28px rgba(0,0,0,.12);
}
.project-card__success {
    position: absolute;
    top: 0;
    background: #f8f8f8;
    left: 0;
    padding: 0 30px;
    line-height: 3.7;
    color: white;
    font-weight: 600;
    width: 100%;
}
.project-card__success p {
    margin-bottom: 0;
    text-align: left;
    color: #30308c;
}
.project-card__inner{
    padding:70px 32px 40px;
    display:flex;
    flex-direction:column;
    height:100%;
    text-align:center;
    position: relative;
}
.project-card__inner.success {
    padding-top: 70px;
}

a.project-card__btn {
    background-image: none !important;
    background: rgb(253 253 253 / 0%);
    border: 2px solid #de031d !important;
    border-style: solid !important;
    border-radius: 5px 13px !important;
    color: #de231e !important;
    box-shadow: none !important;
    font-weight: 500 !important;
    letter-spacing: 0.5px;
    padding: 6px 11px !important;
    margin-top: 20px !important;
    font-size: .9em;
    width: auto;
    width: 85%;
    margin: auto;
    text-transform: Capitalize !important;
}

a.project-card__btn:hover {
    color: white !important;
}

/* Project Featured (homepage) */
.projects_featured_wrapper {
    display: flex;
    gap: 40px;
    margin-bottom: 40px;
}
@media only screen and (max-width:768px) {
    .projects_featured_wrapper {
        flex-direction:column;
    }
}
.project-feature {
    background: #fff;
    padding: 30px;
    flex-basis: 0;
    flex-grow: 1;
    border-radius: 6px 20px;
}
.project-feature .project-card__logo {
    text-align: center;
    margin-bottom: 20px;
}
.project-feature .project-card__image {
    max-height: 170px;
    overflow: hidden;
    margin: 10px -30px 20px;
    vertical-align: top;
    position: relative;
}

/* Badges ---------------------------------------------------- */
.project-card__badges{position:absolute;top:0;right:0;padding:12px}
.project-card__badge {width:40px;height:40px}

/* Logo ------------------------------------------------------ */
.project-card__logo img {
    max-width:140px;
    margin:0 auto 24px;
    object-fit: contain;
    width: 140px;
    height: 110px;
}

/* Industry -------------------------------------------------- */
.project-card__industry {
    margin: 5px auto;
}
.project-card__industry p {
    font-weight: 600;
    color: #30308c;
    line-height: 1.3;
}

/* Divider & category line ---------------------------------- */
.project-card__divider {
    display:block;width:50px;height:3px;
    background:#d48b00;margin:0 auto 12px;
}
.project-card__category{
    font-size:.75rem;text-transform:uppercase;
    letter-spacing:.07em;color:#6a6a6a;margin:0 0 20px;
}

/* Description ---------------------------------------------- */
.project-card__desc{
    font-size:.875rem;line-height:1.5;
    margin:0 0 auto;color:#333;
}

/* CTA button ------------------------------------------------ */
.project-card__btn{
		font-family: "Hanken Grotesk", sans-serif!important;
		position: relative;
	    border-radius: 5px 13px!important;
	    border: none;
	    color: #FFFFFF;
	    transition-property: all;
	    transition-duration: .5s;
	    text-transform: uppercase!important;
	    margin: 30px 0 0 0;
	    padding: 12px 22px!important;
	    background-position: left center!important;
	    background-image: linear-gradient(135deg, rgba(222, 3, 29, 1) 0%, rgba(242, 84, 42, 1) 100%);
	    box-shadow: inset 4px -4px 6px 0px rgb(0 0 0 / 15%), inset -4px 4px 6px 0px rgb(255 255 255 /10%), 0 4px 6px rgb(0 0 0 /30%);
	    font-size: 16px;
}
.project-card__btn:hover {
    box-shadow: inset 4px -4px 6px 0px rgb(0 0 0 / 15%), inset -4px 4px 6px 0px rgb(255 255 255 / 10%), 0 2px 3px rgb(0 0 0 / 40%);
    background-image: linear-gradient(135deg, rgb(171 0 20) 0%, rgb(209 45 0) 100%) !important;
}

a.project-card__btn:hover{
    color: white;
} 

.project_filter_button {
    display: flex;
    align-items: center;
    font-weight: 600;
    font-size: 16px;
    margin-bottom: 10px;
    text-decoration: none;
}

.project_filter_button .filter-icon {
    width: 24px;
    height: 24px;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    margin-right: 8px;
    display: inline-block;
}

/* Project-grid filter bar  */
.custom_isotope_filter .project_filter_button{
    display:inline-flex;
    align-items:center;
    gap:6px;
    padding:4px 12px;
    border:0;
    background:transparent;
    box-shadow:none;
    border-radius:0;
    color:#1a1a1a;
    font-weight:600;
    text-transform:none;
}



.custom_isotope_filter a.project_filter_button:hover {
    outline: 2px solid #312E8C;
    border-radius: 25px;
    border: unset;
}

.custom_isotope_filter .project_filter_button .filter-icon{
    width:20px;
    height:20px;
    background-size:contain;
    background-repeat:no-repeat;
    background-position:center;
}

.custom_isotope_filter .project_filter_button.is-checked{
    color: #2060d8;
    background-color: #f8f8f8;
    border-radius: 25px;
    padding-inline: 20px;
}


/* -----------------------------------------------------------
   Responsive column widths – Isotope targets .isotope-item
----------------------------------------------------------- */
.projects_isotope_wrapper.grid_view .isotope-item{
    box-sizing:border-box;
}
@media (max-width:1024px){
    .projects_isotope_wrapper.grid_view {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}
@media (max-width:599px){
    .projects_isotope_wrapper.grid_view {
        grid-template-columns: repeat(1, minmax(0, 1fr));
    }
}

/* ------------------------------------------
- Home Portfolio Grid
------------------------------------------ */
div#home-technologies-row .et_pb_blurb_7.et_pb_blurb h3.et_pb_module_header a{
    font-size: 18px!important;
    font-family: 'Open Sans', sans-serif!important;
    color: #000000!important;
    font-weight: 600!important;
    letter-spacing: -0.5px!important;
}

/*-------------------------------------------------------------
- Mobile Facet
-------------------------------------------------------------*/
.et_pb_section.et_pb_section_2.et_section_regular{
    /* z-index: 9999; */
}
body.page-id-4370 .section_has_divider .et_pb_row {
    z-index: 2;
}
.custom_isotope_filter.mobile_facet_menu{
    display: block!important;
    position: fixed;
    z-index: 9999999;
    box-shadow: 0 0 4px rgba(0,0,0,.3);
    background: #fff;
    left: 110%;
    padding-top: 65px;
    top: 0px;
    width: auto!important;
    height: 100% !important;
    transition: left .2s ease-out,top .2s ease-out,width .2s ease-out,height .2s ease-out;
}
.custom_isotope_filter.mobile_facet_menu.open{
    left:25%;
}
.custom_isotope_filter.mobile_facet_menu.closed{
    left:110%;
    transition: left .2s ease-out,top .2s ease-out,width .2s ease-out,height .2s ease-out;
}
.custom_isotope_filter.closed a.mobile_facet_side_button,
a.mobile_facet_trigger.mobile_facet_bottom_button.closed{
    display: none;
}
a.mobile_facet_bottom_button{
    z-index: 9999999;
    background: #B2482c;
    display: inline-block;
    padding: 5px 20px;
    color: #fff;
}
a.mobile_facet_side_button {
    position: absolute;
    top: 260px;
    display: inline-block;
    padding: 10px;
    left: -45px;
    background: #B2482c;
    color: #fff;
    transform: rotate(270deg);
    transform-origin: left top 0;
    font-size: 20px;
}
a.mobile_facet_bottom_button:hover,
a.mobile_facet_side_button:hover{
    color:#fff;
}

/*-------------------------------------------------------------
- Mobile Facet Media Query
-------------------------------------------------------------*/
@media only screen and (max-width: 767px) {
    a.mobile_facet_trigger.mobile_facet_bottom_button.closed{
        display: inline-block;
    }
    .filter_trigger{
        display: none;
    }
}

/*-------------------------------------------------------------
- Portfolio Page BG
-------------------------------------------------------------*/
.page-id-23 #content {
    background: #e7e9ed;
}

.projects-grid-filter-wrapper {
    height: 140px;
    margin-bottom: 20px;
    padding-top: 20px;
}
@media only screen and (max-width:768px) {
    .projects-grid-filter-wrapper {
        height: 90px;
    }
}

.custom_isotope_filter {
    float: unset;
}

/*-------------------------------------------------------------
- News List
-------------------------------------------------------------*/
.news_category p.news {
    float: right;
    background: #DD031D;
    color: #ffffff;
    text-transform: uppercase;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 1px;
    padding: 2px 10px;
    border-radius: 2px 6px;
}

.news_category p.stories {
    float: right;
    background: #770b80;
    color: #ffffff;
    text-transform: uppercase;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 1px;
    padding: 3px 10px 2px;
    border-radius: 2px 6px;
}