/*********************** imports and varibles ***********************/
@import url('https://fonts.googleapis.com/css2?family=Lexend+Deca:wght@100..900&family=Manrope:wght@200..800&display=swap');


:root{
    --ff-heading: "Lexend Deca", sans-serif;
    --ff-body: "Manrope", sans-serif;
    
    --clr-logo: #101729;
    --clr-lblue: #95ACFF;
    --clr-blue: rgba(149, 172, 255, 1);
    --clr-txt: #575757;

    /* --fs-24: 1.5rem;
    --fs-32: 2rem;
    --fs-48: 3rem; */
    --fs-24: clamp(1.1rem, 1.5vw, 1.5rem);
    --fs-32: clamp(1.375rem, 1.66vw, 2rem);
    --fs-36: clamp(1.5rem, 2.08vw, 2.25rem);
    --fs-40: clamp(1.5rem, 1.875vw, 2.5rem);
    --fs-48: clamp(1.8rem, 3.25vw, 3rem);
    --fs-64: clamp(2rem, 3.35vw, 4rem);
    --fs-72: clamp(2.75rem, var(--fs-72-mid, 4.5vw), 5.5rem);

    --container-width: 1380px;
}

@media(max-width: 1400px){
    :root{
        --container-width: 1200px;
    }
}

@media(max-width: 1200px){
    :root{
        --fs-72-mid: 5.5vw;
    }
}


/*********************** normalize ***********************/

*, *::before, *::after{
    margin: 0;
    padding: 0;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    quotes: "“" "”";
}



@media(max-width: 767px){
    html{
        font-size: 0.9rem;
    }
}


body {
    font-size: 1rem;
    line-height: 1.65;
    -webkit-font-smoothing: antialiased;
    font-family: var(--ff-body);
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
    color: var(--clr-logo);
    /* background-image: url('./../img/ellipse-bg.svg'), url('./../img/noise-grid.svg');
    background-repeat: no-repeat, repeat;
    background-size: cover, auto;
    background-position: top center, top; */

    background-image: url('./../img/ellipse-bg.png'), -o-radial-gradient(rgba(240, 240, 240, 0.3) 42%, transparent 42%);

    background-image: url('./../img/ellipse-bg.png'), radial-gradient(rgba(240, 240, 240, 0.3) 42%, transparent 42%);
    background-position: top center, 0 0, 40px 50px;
    background-size: cover, 21px 25px;
}

address{
    font-style: normal;
}

input, button, textarea, select {
    font: inherit;
    color: inherit;
    border: none;
    outline: none;
    resize: none;
    background-color: transparent;
}

button{
    cursor: pointer;
}

p, h1, h2, h3, h4, h5, h6 {
    overflow-wrap: break-word;
    font: inherit;
    line-height: inherit;
}

span, a{
    display: inline-block;
}

a{
    color: inherit;
    cursor: pointer;
    text-decoration: none !important;
    -webkit-text-decoration-skip: objects;
}

svg,
picture{
    max-width: 100%;
    display: block;
}

img{
    max-width: 100%;
    display: inline-block;
}

ul[role="list"],
ol[role="list"]{
    list-style: none;
}

.d-block{
    display: block;
}

.d-inline-block{
    display: inline-block;
}

.text-center{
    text-align: center;
}

.text-left{
    text-align: left;
}

.text-right{
    text-align: right;
}

.main-container{
    width: 100%;
    max-width: var(--container-width);
    padding-left: 15px;
    padding-right: 15px;
    margin-left: auto;
    margin-right: auto;
}

.grad--txt{
    background: -o-linear-gradient(358.83deg, #5A88FE 47.32%, #FB30B6 94.22%);
    background: linear-gradient(91.17deg, #5A88FE 47.32%, #FB30B6 94.22%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}

/* -------------------------------------- */


.cta--grad{
    display: inline-block;
    font-family: var(--ff-heading);
    font-size: var(--fs--cta-grad, 1.25rem);
    font-weight: 700;
    padding: 1em 1.85em;
    line-height: 1.25;
    background: -o-linear-gradient(0.62deg, #5A88FE -49.81%, #FB30B6 138.8%);
    background: linear-gradient(89.38deg, #5A88FE -49.81%, #FB30B6 138.8%);
    color: #fff;
    border-radius: 100em;
    position: relative;
    -webkit-transition: 300ms ease;
    -o-transition: 300ms ease;
    transition: 300ms ease;
}

.cta--grad::after{
    content: '';
    background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjgiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAyOCAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTEgOEgyN00yNyA4TDIwIDFNMjcgOEwyMCAxNSIgc3Ryb2tlPSJ3aGl0ZSIgc3Ryb2tlLXdpZHRoPSIxLjUiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPgo8L3N2Zz4K");
    display: inline-block;
    background-size: contain;
    width: 1.5em;
    height: 1em;
    background-repeat: no-repeat;
    background-position: center;
    vertical-align: middle;

    position: absolute;
    top: 1.15em;
    right: 1em;
    opacity: 0;
    -webkit-transform: translateX(-100%);
        -ms-transform: translateX(-100%);
            transform: translateX(-100%);
    -webkit-transition: inherit;
    -o-transition: inherit;
    transition: inherit;
}
.cta--grad:hover{
    padding-right: 3em;
    padding-left: 1.2em;
}

.cta--grad:hover::after{
    opacity: 1;
    -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
            transform: translateX(0);
}

@media(max-width: 767px){
    .cta--grad{
        line-height: 1;
    }   
}

/* -------------------------------------- */

.cta--arw-back{
    display: inline-block;
}

.cta--arw-back svg{
    display: block;
    width: 3em;
    height: auto;
}

.cta--arw-back:hover span svg,
.cta--arw-back:focus span svg{
    -webkit-animation: ctaArwAnimBack 500ms ease forwards;
            animation: ctaArwAnimBack 500ms ease forwards;
}

@-webkit-keyframes ctaArwAnimBack {
    0% {
        -webkit-transform: translateX(0);
                transform: translateX(0);
    }
    25% {
        -webkit-transform: translateX(-100%);
                transform: translateX(-100%);
        opacity: 0;
    }
    50% {
        -webkit-transform: translateX(100%);
                transform: translateX(100%);
        opacity: 0;
    }
    100% {
        -webkit-transform: translateX(0);
                transform: translateX(0);
        opacity: 1;
    }
}

@keyframes ctaArwAnimBack {
    0% {
        -webkit-transform: translateX(0);
                transform: translateX(0);
    }
    25% {
        -webkit-transform: translateX(-100%);
                transform: translateX(-100%);
        opacity: 0;
    }
    50% {
        -webkit-transform: translateX(100%);
                transform: translateX(100%);
        opacity: 0;
    }
    100% {
        -webkit-transform: translateX(0);
                transform: translateX(0);
        opacity: 1;
    }
}

/* -------------------------------------- */

.cta--arw{
    font-size: 1.05rem;
    display: -ms-inline-grid;
    display: inline-grid;
    font-weight: 700;
    gap: 1em;
    grid-auto-flow: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding-bottom: 0.5em;
    border-bottom: 2px solid currentColor;
}

.cta--arw svg{
    width: 1.65em;
    height: auto;
    display: block;
}


.cta--arw:hover span svg,
.cta--arw:focus span svg{
    -webkit-animation: ctaArwAnim 400ms ease forwards;
            animation: ctaArwAnim 400ms ease forwards;
}

@-webkit-keyframes ctaArwAnim {
    0% {
        -webkit-transform: translateX(0);
                transform: translateX(0);
    }
    25% {
        -webkit-transform: translateX(100%);
                transform: translateX(100%);
        opacity: 0;
    }
    50% {
        -webkit-transform: translateX(-100%);
                transform: translateX(-100%);
        opacity: 0;
    }
    100% {
        -webkit-transform: translateX(0);
                transform: translateX(0);
        opacity: 1;
    }
}

@keyframes ctaArwAnim {
    0% {
        -webkit-transform: translateX(0);
                transform: translateX(0);
    }
    25% {
        -webkit-transform: translateX(100%);
                transform: translateX(100%);
        opacity: 0;
    }
    50% {
        -webkit-transform: translateX(-100%);
                transform: translateX(-100%);
        opacity: 0;
    }
    100% {
        -webkit-transform: translateX(0);
                transform: translateX(0);
        opacity: 1;
    }
}

/* -------------------------------------- */

.cta--arwTL{
    font-size: var(--fs-32);
    display: -ms-inline-grid;
    display: inline-grid;
    font-weight: 700;
    gap: 1em;
    grid-auto-flow: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    line-height: 1.2;
}

.cta--arwTL svg{
    width: 0.95em;
    height: auto;
    display: block;
}

.cta--parent:hover .cta--arwTL span svg, 
.cta--parent:focus .cta--arwTL span svg, 
.cta--arwTL:hover span svg,
.cta--arwTL:focus span svg{
    -webkit-animation: arwTLAnim 400ms ease forwards;
            animation: arwTLAnim 400ms ease forwards;
}


@-webkit-keyframes arwTLAnim {
    0% {
        -webkit-transform: translate(0);
                transform: translate(0);
    }
    25% {
        -webkit-transform: translate(100%, -100%);
                transform: translate(100%, -100%);
        opacity: 0;
    }
    30% {
        -webkit-transform: translate(-100%, 100%);
                transform: translate(-100%, 100%);
        opacity: 0;
    }
    100% {
        -webkit-transform: translate(0);
                transform: translate(0);
        opacity: 1;
    }
}


@keyframes arwTLAnim {
    0% {
        -webkit-transform: translate(0);
                transform: translate(0);
    }
    25% {
        -webkit-transform: translate(100%, -100%);
                transform: translate(100%, -100%);
        opacity: 0;
    }
    30% {
        -webkit-transform: translate(-100%, 100%);
                transform: translate(-100%, 100%);
        opacity: 0;
    }
    100% {
        -webkit-transform: translate(0);
                transform: translate(0);
        opacity: 1;
    }
}

/* -------------------------------------- */


/********************** LOADER ANIM **********************/
.broadifi__loader ~ header, 
.broadifi__loader ~ main, 
.broadifi__loader ~ footer{
    opacity: 0;
    -webkit-transform: translateY(10px);
        -ms-transform: translateY(10px);
            transform: translateY(10px);
}

.broadifi__loader{
    position: fixed;
    inset: 0;
    z-index: 111;
    display: -ms-grid;
    display: grid;
    place-items: center;
}

.broadifi__loader svg{
    display: block;
    width: 6rem;
    height: auto;
    opacity: 0;
}

/********************** BOT **********************/
.broadifi__bot{
    width: clamp(3.5rem, 5vw, 5rem);
    height: clamp(3.5rem, 5vw, 5rem);
    border-radius: 50%;
    background: linear-gradient(146.32deg, #5A88FE -35.5%, #FB30B6 110.11%);
    position: fixed;
    bottom: 3rem;
    right: 3rem;
    z-index: 1;
    display: grid;
    place-items: center;
    text-align: left;
    opacity: 0;
}

.broadifi__bot svg{
    max-width: 60%;
    height: auto;
}

.broadifi__bot ul{
    list-style: none;
    background-color: #FFF;
    list-style: none;
    font-family: var(--ff-heading);
    font-weight: 500;
    font-size: 1rem;
    width: 150px;
    position: absolute;
    top: 0;
    right: 15px;
    box-shadow: 0 0 100px 0 #00000054;
    border-radius: 0.5em;
    transform: translateY(-90%);
}
.broadifi__bot ul::after{
    content: '';
    width: 0px;
    height: 0px;
    border-style: solid;
    border-width: 0 20px 20px 0;
    border-color: transparent #FFF transparent transparent;
    transform: rotate(0deg);
    display: inline-block;
    position: absolute;
    right: 45px;
    bottom: -16px;
}

.broadifi__bot ul a{
    padding: 0.5em 1em;
    display: inline-block;
}

.broadifi__bot ul a:hover,
.broadifi__bot ul a:focus{
    background: -o-linear-gradient(358.83deg, #5A88FE 47.32%, #FB30B6 94.22%);
    background: linear-gradient(91.17deg, #5A88FE 47.32%, #FB30B6 94.22%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}

@media(max-width: 1000px){
    .broadifi__bot{
        width: 3.5rem;
        height: 3.5rem;
        right: 15px;
        bottom: 15px;
    }

    .broadifi__bot ul{
        font-size: 0.9rem;
    }
}


/******************************************/

.broadifi--section-heading{
    font-family: var(--ff-heading);
    font-size: var(--fs-48);
    font-weight: 700;
    line-height: 1.25;
    overflow: hidden;
    text-wrap: balance;
}

.broadifi--section-headingX2{
    font-family: var(--ff-heading);
    font-size: var(--fs-64);
    font-weight: 700;
    line-height: 1.15;
    overflow: hidden;
    text-wrap: balance;
}


/********************** HEADER **********************/
.broadifi__header{
    padding-top: 1.5rem;
    padding-bottom: 1.5rem;
    font-size: 1.125rem;
}

@media(max-width: 1300px){
    .broadifi__header{
        font-size: 1rem;
    }
}

.broadifi__header .broadifi--logo svg{
    width: 2.5em;
    height: auto;
}

.broadifi__header .inner-container{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 1rem;
}

.btn--menuTgl{
    width: 3rem;
    height: 3rem;
    display: none;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    border-radius: 50%;
    background: currentColor;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 0.3em;
}

.btn--menuTgl > span{
    color: #fff;
    width: 50%;
    height: 1px;
    background-color: currentColor;
    border-radius: 100em;
    transition: transform 300ms ease;
}

.broadifi--header-nav ul{
    display: -ms-grid;
    display: grid;
    grid-auto-flow: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 0.2em;
    font-weight: 700;
}

.broadifi--header-nav ul a{
    padding: 0.65em 1em;
    line-height: 1;
    border-radius: 100em;
    -webkit-transition: 400ms ease;
    -o-transition: 400ms ease;
    transition: 400ms ease;
}


.broadifi--header-nav ul a:hover,
.broadifi--header-nav ul a.focus,
.broadifi--header-nav ul a.nav-actv{
    background-color: var(--clr-logo);
    color: #fff;
}

@media(max-width: 1000px){
    .broadifi__header{
        position: relative;
        z-index: 1;
        padding-top: 1rem;
        padding-bottom: 1rem;
    }
 
    .broadifi--header-nav{
        border-radius: 1.45rem;
        overflow: hidden;
    }

    .btn--menuTgl{
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        position: relative;
        z-index: 11;
    }
    .broadifi--header-nav ul{
        font-family: var(--ff-heading);
        font-size: 1.1rem;
        font-weight: 600;
        /* display: none; */
        grid-auto-flow: row;
        position: absolute;
        top: 1rem;
        /* left: 0; */
        right: 15px;
        background-color: currentColor;
        padding-bottom: 0;
        border-bottom: none;
        -webkit-box-shadow: 0px 20px 14px 11px #dfdfdf40;
        box-shadow: 0px 20px 14px 11px #dfdfdf40;
        width: 250px;
        border-radius: 1.45rem;
        clip-path: polygon(88% 2%, 96% 2%, 96% 9%, 88% 9%);
        transition: clip-path 100ms ease-out;
        overflow: hidden;
    }
    .broadifi--header-nav ul li{
        overflow: hidden;
    }

    .broadifi--header-nav ul a{
        width: 90%;
        opacity: 0;
        transform: translateY(10px);
        color: #fff;
        border-radius: 0;
        padding: 1em 1.5em;
        border-left: 10px solid transparent;
    }
    .broadifi--header-nav ul a:hover,
    .broadifi--header-nav ul a.focus,
    .broadifi--header-nav ul a.nav-actv{
        color: var(--clr-lblue);
        background-color: transparent;
        border-left-color: currentColor;
    }
    .broadifi--header-nav.hammenu-showing .btn--menuTgl{
        background-color: #343a4d;
    } 

    .broadifi--header-nav.hammenu-showing .btn--menuTgl span{
        transform-origin: 33%;
    }

    .broadifi--header-nav.hammenu-showing .btn--menuTgl span:nth-child(2){
       display: none;
    }

    .broadifi--header-nav.hammenu-showing .btn--menuTgl span:nth-child(1){
        transform: rotate(45deg);
    }

    .broadifi--header-nav.hammenu-showing .btn--menuTgl span:nth-child(3){
        transform: rotate(-45deg);
    }

    .broadifi--header-nav.hammenu-showing ul{
        clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
    }

}


/********************** FOOTER **********************/

.broadifi__footer{
    --container-width: 1130px;
    background-color: #ffffff;
    padding-top: clamp(2rem, 7vw, 5rem);
    padding-bottom: clamp(2rem, 7vw, 5rem);
    border-top: 4px solid currentColor;
}

.broadifi__footer .inner-container > * + *{
    margin-top: 2.5rem;
}

.broadifi__footer--logo{
    font-family: var(--ff-heading);
    font-size: 1.5rem;
    font-weight: 700;
    text-align: center;
}

.broadifi__footer--logo svg{
    width: 1em;
    height: auto;
    display: inline-block;
    vertical-align: text-top;
    margin-left: 0.25em;
}

.broadifi--footer-nav ul{
    font-family: var(--ff-heading);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: space-evenly;
        -ms-flex-pack: space-evenly;
            justify-content: space-evenly;
    gap: 0.2em;
    font-size: var(--fs-24);
}

.broadifi--footer-nav ul a{
    padding-bottom: 0.2em;
    line-height: 1;
    border-bottom: 2px solid transparent;
    -webkit-transition: 400ms ease;
    -o-transition: 400ms ease;
    transition: 400ms ease;
}


.broadifi--footer-nav ul a:hover,
.broadifi--footer-nav ul a.focus,
.broadifi--footer-nav ul a.nav-actv{
    border-bottom-color: currentColor;
}


.broadifi--footer-contact{
    font-family: var(--ff-heading);
    font-weight: 400;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    gap: 1em;
}

.broadifi--footer-contact .d-grid{
    display: -ms-grid;
    display: grid;
    gap: 1em;
    grid-auto-flow: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}

.broadifi--footer-contact svg{
    width: 1.85em;
    height: auto;
    vertical-align: middle;
}

.broadifi--footer-contact a:hover{
    color: #000000
}

@media(max-width: 1000px){
    .broadifi--footer-contact{
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column;
    }
}

@media(max-width: 767px){
    .broadifi--footer-contact{
       -webkit-box-align: start;
           -ms-flex-align: start;
               align-items: flex-start;
    }
    .broadifi--footer-nav ul{
        gap: 0.5em 2em;
    }
}

/********************** HOME  **********************/


.broadifi__homeHero{
    font-size: var(--fs-72);
    --container-width: 15.694em;
    --fs--cta-grad: 0.325em;
    text-align: center;
    padding-top: 1em;
    padding-bottom: 1em;
    position: relative;
}

.broadifi__homeHero .technology-logs > span img{
    display: block;
    max-width: 1.15em;
    max-height: 1em;
    -webkit-filter: saturate(0);
            filter: saturate(0);
    -webkit-transform: rotate(var(--rotate));
        -ms-transform: rotate(var(--rotate));
            transform: rotate(var(--rotate));
    -webkit-transition: 400ms ease;
    -o-transition: 400ms ease;
    transition: 400ms ease;
}

.broadifi__homeHero .technology-logs > span:hover img{
    opacity: 1;
    -webkit-filter: saturate(1);
            filter: saturate(1);
    -webkit-transform: rotate(var(--rotate)) scale(1.15);
        -ms-transform: rotate(var(--rotate)) scale(1.15);
            transform: rotate(var(--rotate)) scale(1.15);
    -webkit-transform-origin: center;
        -ms-transform-origin: center;
            transform-origin: center;
}

.broadifi__homeHero .technology-logs > span{
    position: absolute;
}

.broadifi__homeHero .technology-logs .posLT{
    left: 10%;
     top: 0;
}

.broadifi__homeHero .technology-logs .posLC{
    left: 4%;
    top: 33%;
}

.broadifi__homeHero .technology-logs .posLB{
    left: 14%;
     top: 73%;
    --rotate: 14.84deg;
}

.broadifi__homeHero .technology-logs .posRT{
    right: 8%;
    top: 0;
    --rotate: -19.42deg;
}

.broadifi__homeHero .technology-logs .posRC{
    right: 7%;
    top: 35%;
    --rotate: -8.13deg;
}

.broadifi__homeHero .technology-logs .posRB{
    right: 12%;
    top: 80%;
    --rotate: -8.13deg;
}

.broadifi__homeHero  .doodles-svgs img{
    display: block;
    max-width: 1em;
    max-height: 0.85em;
}

.broadifi__homeHero  .doodles-svgs > span{
    position: absolute;
}

.broadifi__homeHero  .doodle-left{
    top: 59%;
    left: 24%;
}

.broadifi__homeHero  .doodle-right{
    top: 56%;
    left: 72%;
}

.broadifi__homeHero  .lines-svgs > span{
    position: absolute;
}

.broadifi__homeHero  .line-left{
    top: 8%;
    left: 22%;
}

.broadifi__homeHero  .line-right{
    top: 6%;
    left: 73%;
}

.broadifi__homeHero  .lines-svgs > span svg{
    max-width: 1em;
    height: auto;
}

.broadifi__homeHero .broadifi--hero-heading{
    font-family: var(--ff-heading);
    font-weight: 700;
    line-height: 1.25;
    overflow: hidden;
    margin-bottom: 0.5em;
    text-wrap: balance;
}

.flip-words{
    display: -ms-inline-grid;
    display: inline-grid;
    overflow: hidden;
    height: 1.25em;
    text-align: left;
}

.flip-words > *{
    -ms-grid-row: 1;
    grid-row: 1;
    -ms-grid-column: 1;
    grid-column: 1;
}

@media(max-width: 1279px){
    .broadifi__homeHero{
        --fs--cta-grad: 0.35em;
        padding-top: 2.5em;
        padding-bottom: 2.5em;
        min-height: calc(100svh - 80px);   
        display: -ms-grid;   
        display: grid;
        place-items: center;
    }
}

@media(max-width: 575px){
    .broadifi__homeHero{
        --fs--cta-grad: 1.125rem;
   
    }
    .broadifi__homeHero .line-left{
        top: 20%;
        left: 8%;
    }
    .broadifi__homeHero .line-right{
        top: 22%;
        left: 86%;
    }

    .broadifi__homeHero .technology-logs .posLC{
        left: 7%;
        top: 50%;
    }
    .broadifi__homeHero .technology-logs .posRT{
        top: 5%;
    }
    .broadifi__homeHero .technology-logs .posRC{
        right: 7%;
        top: 55%;
        opacity: 0.3;
    }
    .broadifi__homeHero .technology-logs .posLB{
        left: 15%;
        top: 82%;
    }
    .broadifi__homeHero .technology-logs .posRB{
        right: 25%;
        top: 80%;
    }
}

/* CLIENT LOGOS */
.broadifi__clientsLogo{
    --container-width: 100%;
}


.broadifi__clientsLogo-grid figure.svg-expandable{
    overflow: hidden;
}

.broadifi__clientsLogo-grid svg{
    display: block;
}

.broadifi__clientsLogo-grid:hover figure,
.broadifi__clientsLogo-grid figure{
    will-change: filter;
    -webkit-filter: saturate(0);
            filter: saturate(0);
}

.broadifi__clientsLogo-grid:hover figure{
    opacity: 0.8;
}

.broadifi__clientsLogo-grid figure:hover{
    -webkit-filter: saturate(1);
            filter: saturate(1);
    opacity: 1;
}

@media(min-width: 1280px){
    .broadifi__homeHero{
        min-height: calc(100dvh - 145px);
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
    }

    .broadifi__clientsLogo-grid{
        display: -ms-inline-grid;
        display: inline-grid;
        grid-auto-flow: column;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        gap: 1rem;
        padding: 1rem;
        border: 2px solid currentColor;
        border-radius: 6px;
        position: relative;
    }

    .broadifi__clientsLogo-grid::after{
        content: attr(data-heading);
        color: #5B5A5A;
        font-family: var(--ff-heading);
        font-size: 24px;
        font-weight: 700;
        line-height: 1;
        background-color: #fff;
        position: absolute;
        left: 50%;
        top: -0.85em;
        transform: translateX(-50%);
        padding-left: 0.5em;
        padding-right: 0.5em;
       
    }


    .broadifi__clientsLogo-grid svg{
        width: auto;
        max-width: none;
    }
    .broadifi__clientsLogo .broadifi--section-heading{
        display: none;
    }
}

@media(max-width: 1279px){
    .broadifi__clientsLogo{
        padding-bottom: 2.5rem;
    }
    .broadifi__clientsLogo-grid{
       display: -ms-grid;
       display: grid;
       -ms-grid-columns: minmax(0, 1fr) 1rem minmax(0, 1fr) 1rem minmax(0, 1fr) 1rem minmax(0, 1fr);
       grid-template-columns: repeat(4, minmax(0, 1fr));
       gap: 1rem;
       margin-top: 2rem;
    }

    .broadifi__clientsLogo-grid figure{
        padding: 1.5rem;
        background-color: #ffffff;
        background: #fff;
        -webkit-box-shadow: 0 0 30px 0 #7c7c7c21;
                box-shadow: 0 0 30px 0 #7c7c7c21;
        border-radius: 0.5rem;
    }

    .broadifi__clientsLogo-grid figure svg{
        margin: auto;
    }
}

@media(max-width: 575px){
    .broadifi__clientsLogo-grid{
       -ms-grid-columns: (minmax(0, 1fr))[2];
       grid-template-columns: repeat(2, minmax(0, 1fr));
    }

}

/********************** VALUES **********************/
.broadifi__values{
    padding-top: clamp(2.5rem, 7vw, 5rem);
    padding-bottom: clamp(2.5rem, 7vw, 5rem);
}

.broadifi__values--items{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 7rem 5%;
    position: relative;
    margin-top: 5rem;
}

.broadifi__value-item{
    -webkit-box-flex: 0;
        -ms-flex: 0 0 30%;
            flex: 0 0 30%;
    width: 30%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    text-align: center;
    gap: 1rem;
}

.broadifi__value-item h5{
    font-family: var(--ff-heading);
    font-weight: 600;
    font-size: var(--fs-24);
    line-height: 1.25;
}


.broadifi__value-item figure{
    width: 37%;
    color: #fff;
}

.broadifi__value-item figure svg{
    max-width: 100%;
    height: auto;
}

.broadifi__value-item .fig-order-btm{
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
}

.broadifi__value-item p{
    color: var(--clr-txt);
    max-width: 30ch;
}

.broadifi__value-item:nth-child(1){
    margin-top: 3%;
}

.broadifi__value-item:nth-child(3){
    margin-top: 1.5%;
}

.broadifi__values .dotted-arw{
    position: absolute;
    overflow: hidden;
    color: #000000;
}

.broadifi__values .dotted-arw svg{
    width: auto;
    height: 100%;
}

.broadifi__values .dotted-arw--1{
    top: -3%;
    left: 26%;
    width: 19%;
    height: 13%;
}

.broadifi__values .dotted-arw--2{
    top: -3%;
    left: 55%;
    width: 19%;
    height: 13%;
}

.broadifi__values .dotted-arw--3{
    top: 45%;
    left: 78%;
    width: 7%;
    height: 35%;
}

.broadifi__values .dotted-arw--4{
    top: 69%;
    left: 40%;
    width: 17%;
    height: 15%;
}

.broadifi__values .dotted-arw--5{
    top: 45%;
    left: 11%;
    width: 12%;
    height: 32%;
}

.broadifi__values--items .circle-highlther{
    position: absolute;
    top: 10%;
    left: 22px;
    z-index: -1;
    width: 1rem;
    height: 1rem;
    border-radius: 50%;
    background-color: #1f2127;
    display: none;

}

@media(max-width: 1279px){
    .broadifi__values .dotted-arw--1{
        top: -6%;
    }
    .broadifi__values .dotted-arw--2{
        top: -8%;
        left: 53%;
        -webkit-transform: rotate(7deg);
            -ms-transform: rotate(7deg);
                transform: rotate(7deg);
    }
    .broadifi__values .dotted-arw--4{
        top: 58%;
        -webkit-transform: rotate(12deg);
            -ms-transform: rotate(12deg);
                transform: rotate(12deg);
    }
    .broadifi__values .dotted-arw--3{
        top: 40%;
        left: 76%;
        -webkit-transform: rotate(19deg);
            -ms-transform: rotate(19deg);
                transform: rotate(19deg);
    }
}

@media(max-width: 767px){
    .broadifi__values .dotted-arw-svgs{
        display: none;
    }
    .broadifi__values--items{
        margin-top: 3rem;
        display: block;
    }

    .broadifi__value-item:nth-child(1),
    .broadifi__value-item:nth-child(3){
        margin-top: 0;
    }

    .broadifi__value-item{
        width: 100%;
        display: -ms-grid;
        display: grid;
        -ms-grid-columns: 4rem 1fr;
        grid-template-columns: 4rem 1fr;
        -webkit-box-align: start;
            -ms-flex-align: start;
                align-items: start;
        text-align: left;
    }

    .broadifi__value-item:not(:last-child){
        margin-bottom: 2rem;
    }

    .broadifi__value-item figure{
        width: 100%;
        -ms-grid-row: 1;
        -ms-grid-row-span: 2;
        grid-row: 1/span 2;
    }

    .broadifi__value-item p{
        max-width: none;
    }

    .broadifi__values--items .circle-highlther{
        display: block;
    }
    
    .broadifi__values--items::after{
        content: '';
        position: absolute;
        top: 1px;
        left: 2rem;
        z-index: -11;
        width: 2px;
        height: 90%;
        border-left: 1px dashed rgb(170, 170, 170);
    }

}

/********************** SERVICES **********************/
.broadifi__homeServices{
    padding-top: 2.5rem;
    padding-bottom: 2.5rem;
}

.broadifi--service-items{
    margin-top: 5rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    overflow: hidden;
    max-width: 100%;
    border: 2px solid currentColor;
    border-left: none;
    border-radius: 1rem 0 0 1rem;
}

.broadifi--service-item{
    border: 2px solid currentColor;
    border-right: none;
    border-radius: 1rem 0 0 1rem;
    margin-top: -2px;
    margin-bottom: -2px;
    padding: 1rem 6rem 2rem 1.5rem;
    background-color: #fff;
    position: relative;
    overflow: hidden;
    -webkit-transition: 800ms ease;
    -o-transition: 800ms ease;
    transition: 800ms ease;
}


.broadifi--service-heading{
    font-size: var(--fs-24);
    display: inline-block;
    padding-bottom: 0.35em;
    position: relative;
    padding-top: 2em;
}

.broadifi--service-heading::after{
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 2px;
    background-color: currentColor;
}


.broadifi--service-heading .line-svg{
    top: 0;
    left: 105%;
    position: absolute;
    width: 1.5em;
}


.broadifi--service-item h5{
    font-size: var(--fs-24);
    font-family: var(--ff-heading);
    font-weight: 700;
    line-height: 1.25;
    opacity: 0;
}

.broadifi--service-item > h5{
    white-space: nowrap;
    -webkit-transition: inherit;
    -o-transition: inherit;
    transition: inherit;
    opacity: 1;
    position: absolute;
    top: 4rem;
    left: 1.5rem;
    right: 7.5rem;
}

.broadifi--service-item p{
    margin-top: 2em;
}

.broadifi--service-item p a{
    font-weight: 700;
}


.broadifi--service-item h6{
    font-family: var(--ff-heading);
    font-size: 0.875rem;
    font-weight: 700;
    line-height: 1.25;
    margin-top: 3em;
    margin-bottom: 0.5em;
}

.broadifi--service-item figure{
    display: -ms-grid;
    display: grid;
    grid-auto-flow: column;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: start;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: end;
    gap: 0.25rem;
}

.broadifi--service-item figure img{
    max-width: 2.5rem;
}

.broadifi--service-item .gear-svg{
    position: absolute;
    bottom: 3rem;
    right: 4rem;
}

@media(min-width: 1001px){
    .broadifi--service-item p a::after{
        content: '';
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        -webkit-transform: scale(50);
            -ms-transform: scale(50);
                transform: scale(50);
    }
    
    .broadifi--service-item{
        -webkit-box-flex: 1;
            -ms-flex: 1;
                flex: 1;
        -webkit-box-flex: 0;
            -ms-flex: 0 0 45%;
                flex: 0 0 45%;
    }


    .broadifi--service-item:not(:nth-child(1)):not(:nth-child(2)){
        margin-left: -38.1%;
    }
    
    .broadifi--service-item:not(:nth-child(1)):hover,
    .broadifi--service-items:has(.broadifi--service-item:nth-child(3):hover) .broadifi--service-item:nth-child(-n+2):not(:nth-child(1)),
    .broadifi--service-items:has(.broadifi--service-item:nth-child(4):hover) .broadifi--service-item:nth-child(-n+3):not(:nth-child(1)),
    .broadifi--service-items:has(.broadifi--service-item:nth-child(5):hover) .broadifi--service-item:nth-child(-n+4):not(:nth-child(1)),
    .broadifi--service-items:has(.broadifi--service-item:nth-child(6):hover) .broadifi--service-item:nth-child(-n+5):not(:nth-child(1)),
    .broadifi--service-items:has(.broadifi--service-item:nth-child(7):hover) .broadifi--service-item:nth-child(-n+6):not(:nth-child(1)),
    .broadifi--service-items:has(.broadifi--service-item:nth-child(8):hover) .broadifi--service-item:nth-child(-n+7):not(:nth-child(1)),
    .broadifi--service-items:has(.broadifi--service-item:nth-child(9):hover) .broadifi--service-item:nth-child(-n+8):not(:nth-child(1)){
        -webkit-transform: translateX(-84.4%);
            -ms-transform: translateX(-84.4%);
                transform: translateX(-84.4%);
    }
    
    .broadifi--service-item:not(:nth-child(1)) > h5,
    .broadifi--service-items:has(.broadifi--service-item:not(:nth-child(1)):hover) .broadifi--service-item:nth-child(1) > h5{
        -webkit-transform: translateX(-46%)  translateY(var(--transform-adjust, 350%))  rotate(-90deg);
            -ms-transform: translateX(-46%)  translateY(var(--transform-adjust, 350%))  rotate(-90deg);
                transform: translateX(-46%)  translateY(var(--transform-adjust, 350%))  rotate(-90deg);
    }

    .broadifi--service-item:not(:nth-child(1)) > .broadifi--service-item-inner,
    .broadifi--service-items:has(.broadifi--service-item:not(:nth-child(1)):hover) .broadifi--service-item:nth-child(1) > *:not(h5){
        opacity: 0;
        -webkit-transform: translateX(100px);
            -ms-transform: translateX(100px);
                transform: translateX(100px);
        -webkit-transition: 100ms ease;
        -o-transition: 100ms ease;
        transition: 100ms ease;
    }



    .broadifi--service-item:not(:nth-child(1)) .gear-svg{
        -webkit-transform: translate(300%, 300%);
            -ms-transform: translate(300%, 300%);
                transform: translate(300%, 300%);
        -webkit-transition: 400ms ease-in-out;
        -o-transition: 400ms ease-in-out;
        transition: 400ms ease-in-out;
    }

    .broadifi--service-item:hover >  h5{
        -webkit-transform: translateX(0)  translateY(0)  rotate(0deg);
            -ms-transform: translateX(0)  translateY(0)  rotate(0deg);
                transform: translateX(0)  translateY(0)  rotate(0deg);
    }

    .broadifi--service-item:hover .broadifi--service-item-inner{
        opacity: 1;
        -webkit-transform: translateX(0);
            -ms-transform: translateX(0);
                transform: translateX(0);
        -webkit-transition: 1000ms ease;
        -o-transition: 1000ms ease;
        transition: 1000ms ease;
    }

    .broadifi--service-item:hover .gear-svg{
        -webkit-transform: translate(0%);
            -ms-transform: translate(0%);
                transform: translate(0%);
        -webkit-transition: 0.3s ease-in-out 250ms;
        -o-transition: 0.3s ease-in-out 250ms;
        transition: 0.3s ease-in-out 250ms;
    }
}

@media(max-width: 1400px){
    .broadifi__homeServices{
        --transform-adjust: 600%;
    }
    .broadifi--service-item{
        padding: 1.5rem;
    }
    .broadifi--service-item > h5{
        top: 3rem;
    }
}


@media(max-width: 1100px){
    .broadifi__homeServices{
        --transform-adjust: 950%;
    }

    .broadifi--service-items{
        margin-top: 2.5rem;
    }
}



@media(max-width: 1000px) and (min-width: 768px){
    .broadifi--service-heading{
        display: block;
        padding-top: 1.5em;
    }

    .broadifi--service-heading .line-svg{
        left: auto;
        right: 0;
    }

    .broadifi--service-item{
        -webkit-box-flex: 1;
            -ms-flex: 1;
                flex: 1;
        -webkit-box-flex: 0;
            -ms-flex: 0 0 100%;
                flex: 0 0 100%;
    }


    .broadifi--service-item:nth-child(3){--count: 1;}
    .broadifi--service-item:nth-child(4){--count: 2;}
    .broadifi--service-item:nth-child(5){--count: 3;}
    .broadifi--service-item:nth-child(6){--count: 4;}
    .broadifi--service-item:nth-child(7){--count: 5;}
    .broadifi--service-item:nth-child(8){--count: 6;}
    .broadifi--service-item:nth-child(9){--count: 7;}

    .broadifi--service-item > h5{
        -webkit-writing-mode: tb-rl;
            -ms-writing-mode: tb-rl;
                writing-mode: tb-rl;
        -webkit-transform: scale(-1);
            -ms-transform: scale(-1);
                transform: scale(-1);
        width: 2em;
        left: 4.5rem;
        -webkit-transform-origin: left;
            -ms-transform-origin: left;
                transform-origin: left;
    }
    
    .broadifi--service-item-inner{
        opacity: 0;
        -webkit-transform: translateX(100px);
            -ms-transform: translateX(100px);
                transform: translateX(100px);
        -webkit-transition: 100ms ease;
        -o-transition: 100ms ease;
        transition: 100ms ease;
    }

    .broadifi--service-item:not(:nth-child(1)){
        margin-left: -89%;
    }

    .broadifi--service-item:not(:nth-child(1)):hover{
        margin-left: calc(-100% + calc(var(--count, 0) * -11%));
    }

    .broadifi--service-item:hover ~ .broadifi--service-item{
        -webkit-transform: translateX(100%);
            -ms-transform: translateX(100%);
                transform: translateX(100%);
    }

    .broadifi--service-item:hover   .broadifi--service-item-inner{
        opacity: 1;
        -webkit-transform: translateX(0);
            -ms-transform: translateX(0);
                transform: translateX(0);
        -webkit-transition: 100ms ease;
        -o-transition: 100ms ease;
        transition: 100ms ease;
    }

    .broadifi--service-item:hover > h5{
        -webkit-transform: rotate(0deg);
            -ms-transform: rotate(0deg);
                transform: rotate(0deg);
        -webkit-writing-mode: unset;
            -ms-writing-mode: unset;
                writing-mode: unset;
        left: 1.5rem;
    }
}

@media(max-width: 767px){
    .broadifi__homeServices{
        padding-top: 0;
        padding-bottom: 0;
    }
    .broadifi--service-items{
        display: block;
        border: none;
        border-radius: 0;
    }

    .broadifi--service-item{
        padding: 0;
        border-radius: 1rem;
        margin-top: 0;
        margin-bottom: 0;
        border: 1px solid currentColor;
        margin-bottom: 0.5em;
        display: -ms-grid;
        display: grid;
        -ms-grid-rows: auto 0fr auto;
        grid-template-rows: auto 0fr auto;
        overflow: hidden;
        -webkit-transition:  grid-template-rows 800ms ease-in-out;
        -o-transition:  grid-template-rows 800ms ease-in-out;
        transition:  grid-template-rows 800ms ease-in-out;
        transition:  grid-template-rows 800ms ease-in-out, -ms-grid-rows 800ms ease-in-out;
    }


    .broadifi--service-item > h5{
        display: block;
        padding: 1.5rem;
        position: relative;
        z-index: 1;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        padding-right: 4.5em;
    }

    .broadifi--service-item > h5::after{
        content: '';
        background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzgiIGhlaWdodD0iMzgiIHZpZXdCb3g9IjAgMCAzOCAzOCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTM1Ljk3MDcgMTlMMTkuMDAwMSAzNS45NzA2TTE5LjAwMDEgMzUuOTcwNkwyLjAyOTU4IDE5TTE5LjAwMDEgMzUuOTcwNlYyLjAyOTQ0IiBzdHJva2U9ImJsYWNrIiBzdHJva2Utd2lkdGg9IjMiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPgo8L3N2Zz4K);
        display: inline-block;
        background-size: 1em;
        width: 4em;
        background-repeat: no-repeat;
        background-position: center;
        vertical-align: middle;
        position: absolute;
        right: 0;
        top: 0;
        bottom: 0;
    }

    
    .broadifi--service-item-inner{
        overflow: hidden;
        position: relative;
        margin-top: -70px;
        padding: 1.5rem;
        padding-top: 0;
        opacity: 0;
        -webkit-transition: opacity 800ms ease-in-out;
        -o-transition: opacity 800ms ease-in-out;
        transition: opacity 800ms ease-in-out;
    }

    .broadifi--service-item .gear-svg{
        bottom: 1rem;
        right: 1rem;
    }

    .broadifi--service-item.is-actv{
        -ms-grid-rows: auto 1fr auto;
        grid-template-rows: auto 1fr auto;
    }

    .broadifi--service-item.is-actv .broadifi--service-item-inner{
        opacity: 1;
    }

    .broadifi--service-item.is-actv > h5::after{
        -webkit-animation: ctaArwB2TR 500ms ease forwards;
                animation: ctaArwB2TR 500ms ease forwards;
    }


    @-webkit-keyframes ctaArwB2TR {
        0% {
            -webkit-transform: translateY(0);
                    transform: translateY(0);
        }
        25% {
            -webkit-transform: translateY(100%);
                    transform: translateY(100%);
            opacity: 0;
        }
        50% {
            -webkit-transform: translateY(-100%) rotate(180deg);
                    transform: translateY(-100%) rotate(180deg);
            opacity: 0;
        }
        100% {
            -webkit-transform: translateY(0) rotate(180deg);
                    transform: translateY(0) rotate(180deg);;
            opacity: 1;
        }
    }


    @keyframes ctaArwB2TR {
        0% {
            -webkit-transform: translateY(0);
                    transform: translateY(0);
        }
        25% {
            -webkit-transform: translateY(100%);
                    transform: translateY(100%);
            opacity: 0;
        }
        50% {
            -webkit-transform: translateY(-100%) rotate(180deg);
                    transform: translateY(-100%) rotate(180deg);
            opacity: 0;
        }
        100% {
            -webkit-transform: translateY(0) rotate(180deg);
                    transform: translateY(0) rotate(180deg);;
            opacity: 1;
        }
    }
}


/********************** HOME PROJECTS **********************/
.broadifi__homeProjects{
    padding-top: 2.5rem;
    padding-bottom: 2.5rem;
    position: relative;
}


.broadifi__homeProjects .broadifi--section-heading .line-right{
    margin-left: 0.5em;
    vertical-align: super;
}

.broadifi__homeProjects .broadifi--section-heading .line-right svg{
    display: block;
    width: 1em;
    height: auto;
}

.broadifi__homeProjects .svg-dotted-arw{
    position: absolute;
    left: -10%;
    right: 0;
    top: 16%;
    z-index: -1;
    bottom: 0;
}

.broadifi__homeProjects .svg-dotted-arw svg{
    max-width: 100%;
    height: auto;
}


.broadifi--project-rows{
    display: -ms-grid;
    display: grid;
    overflow: hidden;
    margin-top: 1rem;
    margin-bottom: 3rem;
}

.broadifi--project-row{
    display: -ms-grid;
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: var(--project-width, 25vw);
    gap: var(--project-gap, 2rem);;
    margin-top: 3vw;
    -webkit-animation: slide 150s linear alternate infinite;
            animation: slide 150s linear alternate infinite;
}

.broadifi--project-row.reversed{
    -webkit-transform: translateX(calc(-100% + 100vw));
        -ms-transform: translateX(calc(-100% + 100vw));
            transform: translateX(calc(-100% + 100vw));
    -webkit-animation: slide-reversed 150s linear alternate infinite;
            animation: slide-reversed 150s linear alternate infinite;
}

.broadifi--project-row:hover{
    -webkit-animation-play-state: paused;
            animation-play-state: paused;
}
.broadifi--project-row figure{
    height: var(--project-height, 15vw);
    border-radius: 1.5rem;
    overflow: hidden;
    background: rgba(217, 217, 217, 1);
}

.broadifi--project-row figure a,
.broadifi--project-row figure img{
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}



@-webkit-keyframes slide {
    100%{
        -webkit-transform: translateX(calc(-100% + 100vw));
                transform: translateX(calc(-100% + 100vw));
    }
}

@keyframes slide {
    100%{
        -webkit-transform: translateX(calc(-100% + 100vw));
                transform: translateX(calc(-100% + 100vw));
    }
}

@-webkit-keyframes slide-reversed {
    100%{
        -webkit-transform: translateX(0);
                transform: translateX(0);
    }
}

@keyframes slide-reversed {
    100%{
        -webkit-transform: translateX(0);
                transform: translateX(0);
    }
}

@media(max-width: 767px){
    .broadifi--project-rows{
        --project-gap: 1rem;
        --project-width: 45vw;
        --project-height: 30vw;
    }
}


/********************** HOME TESTIMONIALS **********************/
.broadifi__testimonials{
    padding-top: 2.5rem;
    padding-bottom: 5rem;
}

.broadifi__testimonials .inner-container{
    position: relative;
}

.broadifi__testimonials .broadifi--section-heading{
   margin-bottom: 3rem;
}

.broadifi__testimonials .swiper-container{
    max-width: 890px;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
    background-color: #fff;
    --swiper-pagination-bullet-width: 3rem;
    --swiper-pagination-bullet-height: 0.5rem;
    --swiper-pagination-bullet-border-radius: 1rem;
    --swiper-pagination-bullet-inactive-color: rgba(217, 217, 217, 1);
    --swiper-pagination-color: currentColor;
    --swiper-pagination-bullet-inactive-opacity: 1;
    background-image: url('./../img/doodles-svgs/“.svg');
    background-repeat: no-repeat;
    background-position: 2rem 2rem;
}

.broadifi__testimonials .swiper-slide{
    border-radius: 1rem;
    border: 4px solid currentColor;
    padding: 6rem 4rem;
    font-size: var(--fs-24);
    font-weight: 700;
    line-height: 2;
}


.broadifi__testimonials .swiper-pagination{
   position: static;
   margin-top: 2rem;
}

.broadifi__testimonials  .swiper-button-next,
.broadifi__testimonials  .swiper-button-prev{
    position: static;
}

.broadifi__testimonials  blockquote{
    margin-bottom: 0.5em;
}


.broadifi__testimonials footer a{
    vertical-align: sub;
    margin-left: 0.25em;
}
.broadifi__testimonials footer a img{
    width: 1.15em;
    display: block;
}

.broadifi__testimonials footer a:not(:hover) img{
    -webkit-filter: saturate(0);
    filter: saturate(0);
}

.broadifi__testimonials .doodles-svg figure{
    position: absolute;
}

.broadifi__testimonials .doodles-svg .posi-LT{
    top: 15%;
    left: 3%;
}

.broadifi__testimonials .doodles-svg .posi-LT svg{
    display: block;
    margin-left: 100px;
}

.broadifi__testimonials .doodles-svg .posi-LB svg{
    display: block;
    margin-left: 60px;
    margin-bottom: 15px;
}

.broadifi__testimonials .doodles-svg .posi-LB{
    top: 78%;
    left: 6%;
}

.broadifi__testimonials .doodles-svg .posi-RT{
    top: 25%;
    right: 3%;
}

.broadifi__testimonials .doodles-svg .posi-RT img{
    margin-left: 58px;
    margin-top: -25px;
}

.broadifi__testimonials .doodles-svg .posi-RB{
    top: 82%;
    right: 2%;
}

.broadifi__testimonials .doodles-svg .posi-RB img{
    margin-left: 53px;
    margin-top: -10px;
}

.broadifi__testimonials .lines-svg > span{
    position: absolute;
}

.broadifi__testimonials .lines-svg > span svg{
    height: auto;
}

.broadifi__testimonials .lines-svg .posiLB{
    width: 4%;
    top: 70%;
    left: 4%;
}

.broadifi__testimonials .lines-svg .posiRT{
    top: 4%;
    right: 12%;
    max-width: 4%;
}

@media(max-width: 1400px){
    .broadifi__testimonials{
        position: relative;
    }

    .broadifi__testimonials .inner-container{
        position: static;
    }

    .broadifi__testimonials .swiper-container{
        max-width: 60vw;
    }


    .broadifi__testimonials .doodles-svg .posi-RB img,
    .broadifi__testimonials .doodles-svg .posi-RT img{
        margin-top: 0;
        margin-left: 0;
    }
}

@media(max-width: 1000px){
    .broadifi__testimonials{
        padding-bottom: 2rem;
    }
    .broadifi__testimonials .doodles-svg{
        display: none;
    }

    .broadifi__testimonials .swiper-container{
        max-width: none;
        background-size: 4rem;
        background-position: 1.5rem 1.5rem;
    }

    .broadifi__testimonials .swiper-slide{
        border-width: 2px;
        padding: 3rem 2rem 2rem 2rem;
    }

    .broadifi__testimonials .lines-svg .posiRT{
        right: 4px;
        top: 16%;
    }
   
    .broadifi__testimonials .lines-svg .posiLB{
        top: 85%;
        left: 4px;
    }
}

@media(max-width: 767px){
    .broadifi__testimonials .lines-svg .posiLB,
    .broadifi__testimonials .lines-svg .posiRT{
        width: 6%;
        max-width: none;
    }
}

/********************** HOME FAQS **********************/
.broadifi__faqs{
    padding-top: 2.5rem;
    padding-bottom: clamp(2.5rem, 7vw, 5rem);
}

.broadifi__faqs .inner-container{
    position: relative;
}

.broadifi__faqs .broadifi--section-heading{
   margin-bottom: 3rem;
}

.broadifi__faqs-accordian{
    max-width: 690px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 3rem;
    text-align: left;
}

.broadifi__faqs-accordian .accordion-panel{
    border: 3px solid currentColor;
    border-radius: 1rem;
    padding: 1.5rem;
    padding-bottom: 0.75rem;
    margin-bottom: 1rem;
}

.broadifi__faqs-accordian .accordion-trigger{
    width: 100%;
    font-size: var(--fs-24);
    font-weight: 700;
    background-color: transparent;
    border: none;
    display: -ms-grid;
    display: grid;
    grid-auto-flow: column;
    gap: 1em;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding-bottom: 0.75rem;
}

.broadifi__faqs-accordian .accordion-trigger::after{
    content: '';
    display: inline-block;
    width: 0.5em;
    height: 0.5em;
    -webkit-transform: translateY(-5px) rotate(45deg);
        -ms-transform: translateY(-5px) rotate(45deg);
            transform: translateY(-5px) rotate(45deg);
    border-bottom: 2px solid currentColor;
    border-right: 2px solid currentColor;
}

.accordion-content {
    display: -ms-grid;
    display: grid;
    -ms-grid-rows: 0fr;
    grid-template-rows: 0fr;
    -webkit-transition: grid-template-rows 200ms;
    -o-transition: grid-template-rows 200ms;
    transition: grid-template-rows 200ms;
    transition: grid-template-rows 200ms, -ms-grid-rows 200ms;
}

.accordion-content[aria-hidden="false"] {
    -ms-grid-rows: 1fr;
    grid-template-rows: 1fr;
    padding-bottom: 1rem;
}

.accordion-content > div {
    overflow: hidden;
}

.accordion-trigger[aria-expanded="true"]::after {
    -webkit-transform: rotate(-135deg);
        -ms-transform: rotate(-135deg);
            transform: rotate(-135deg);
}


.broadifi__faqs .doodles-svgs > span{
    position: absolute;
}

.broadifi__faqs .doodles-svgs > span svg{
    display: block;
}

.broadifi__faqs .doodles-svgs .posiLT{
    left: 12%;
    top: 16%;
    width: 4%;
}

.broadifi__faqs .doodles-svgs .posiLC{
    width: 4%;
    left: 15%;
    top: 53%;
}

.broadifi__faqs .doodles-svgs .posiLB{
    width: 4%;
    left: 0%;
    top: 75%;
}

.broadifi__faqs .doodles-svgs .posiRT{
    width: 7%;
    right: 16%;
    top: 8%;
}

.broadifi__faqs .doodles-svgs .posiRC{
    width: 4%;
    right: 4%;
    top: 43%;
}

.broadifi__faqs .doodles-svgs .posiRB{
    right: 12%;
    top: 73%;
    width: 4%;
}

@media(max-width: 1400px){
    .broadifi__faqs{
        position: relative;
        margin-top: clamp(2.5rem, 7vw, 5rem);
    }
    .broadifi__faqs .inner-container{
        position: static;
    }
    .broadifi__faqs .doodles-svgs .posiRT{
        right: 3%;
    }
    .broadifi__faqs .doodles-svgs .posiLC{
        left: 10%;
    }
}

@media(max-width: 1279px){
    .broadifi__faqs-accordian{
        max-width: 550px;
    }
    .broadifi__faqs .doodles-svgs .posiLT{
        left: 20px;
    }
    .broadifi__faqs .doodles-svgs .posiLC{
        left: 25px;
    }
    .broadifi__faqs .doodles-svgs .posiRB{
        right: 25px;
    }
}

@media(max-width: 1000px){
    .broadifi__faqs{
        margin-top: 0;
    }
}

/* ====================================================== */

/********************** INNER HERO COMMON **********************/

.broadifi__inner-hero:not(.broadifi__inner-hero--split) .broadifi--section-content{
    margin-top: 1em;
}

.broadifi--section-content{
    max-width: var(--content-width, auto);
    font-size: var(--fs-24);
    line-height: 1.65;
    margin-left: auto;
    margin-right: auto;
}

.broadifi--section-content p strong{
    font-size: var(--fs-32);
    line-height: 1.25;
}

.broadifi__inner-hero{
    padding-top: 1rem;
    padding-bottom: clamp(2.5rem, 4vw, 4rem);
}

.broadifi__inner-hero--split .inner-container{
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: var(--cols,  1.5fr 1fr);
    grid-template-columns: var(--cols,  1.5fr 1fr);
    gap: 2rem;
}

.broadifi__inner-hero .doodles-svgs{
    display: contents;
}

.broadifi__inner-hero .inner-container{
    position: relative;
}

@media(max-width: 1000px){
    .broadifi__inner-hero--split .inner-container{
        -ms-grid-columns: 1fr;
        grid-template-columns: 1fr;
        gap: 1rem;
       justify-items: center;
       text-align: center;
       --content-width: 50ch;
    }
}

/* POSTS */

.broadifi-posts ul,
.broadifi-posts ol,
.broadifi-posts p{
    line-height: 2;
}

.broadifi-posts h1{
    font-size: var(--fs-40);
    font-family: var(--ff-heading);
    font-weight: 700;
    line-height: 1.25;
    text-wrap: balance;
}

.broadifi-posts h2{
    font-size: var(--fs-24);
    font-family: var(--ff-heading);
    font-weight: 700;
}

.broadifi-posts h3{
    font-size: 1.17rem;
    font-family: var(--ff-heading);
    font-weight: 700;
}

.broadifi-posts h4{
    font-size: 1rem;
}

.broadifi-posts h5{
    font-size: .83rem;
}

.broadifi-posts h6{
    font-size: .67em
}

.broadifi-posts ul,
.broadifi-posts ol{
    padding-left: 1em;
    line-height: inherit;
}

.broadifi-posts li + li{
    margin-top: 1em;
}

.broadifi__blog-details--content > * + *,
.broadifi-posts > * + *{
    margin-top: 1rem;
}


/********************** ABOUT HERO **********************/
.broadifi__about-hero .broadifi--section-content{
    --content-width: 34ch;
}

.broadifi__about-hero .doodles-svgs span{
    position: absolute;
} 

.broadifi__about-hero .doodles-svgs svg{
    display: block;
    max-width: 100%;
    height: auto;
}

.broadifi__about-hero .posiLT{
    top: -24%;
    left: 14%;
    width: 5%; 
}

.broadifi__about-hero .posiLC{
    top: 34%;
    left: 9%;
    max-width: 8vw;
}

.broadifi__about-hero .posiLB{
    top: 75%;
    left: 16%;
}

.broadifi__about-hero .posiRT{
    top: -10%;
    right: 3%;
}

.broadifi__about-hero .posiRC{
    top: 29%;
    right: 10%;
    max-width: 5vw;
}

.broadifi__about-hero .posiRB{
    top: 92%;
    right: 15%;
    width: 4%;
}

@media(max-width: 1000px){
    .broadifi__about-hero .posiLT{
        top: -24%;
        left: 14%;
        width: 5%; 
    }

    .broadifi__about-hero .posiLC{
        top: 34%;
        left: 0;
        max-width: 8vw;
    }

    .broadifi__about-hero .posiLB{
        top: 95%;
        left: 12%;
    }

    .broadifi__about-hero .posiRT{
        top: -15%;
        right: 3%;
    }

    .broadifi__about-hero .posiRC{
        top: 29%;
        right: 0;
        max-width: 5vw;
    }

    .broadifi__about-hero .posiRB{
        top: 92%;
        right: 15%;
        width: 4%;
    }
}



/********************** ABOUT GRID **********************/
.broadifi__about--grid{
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1.275fr 0.75rem 0.5fr 0.75rem 0.5fr;
    grid-template-columns: 1.275fr 0.5fr 0.5fr;
    gap: 0.75rem;
    padding-bottom: 4rem;
}

.broadifi__about--grid figure{
    -ms-grid-column: 1;
    grid-column: 1;
    -ms-grid-row: 1;
    -ms-grid-row-span: 2;
    grid-row: 1 / span 2;
    border-radius: 1rem;
    overflow: hidden;
}

.broadifi__about--grid figure img{
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}

.broadifi__about--grid  .stats-box{
    border: 2px solid currentColor;
    border-radius: 1rem;
    text-align: center;
    display: -ms-grid;
    display: grid;
    place-content: center;
    padding: 1rem;
}

.broadifi__about--grid  .stats-box h6{
    font-family: var(--ff-heading);
    font-size: var(--fs-48);
    line-height: 1;
}

.broadifi__about--grid  .stats-box p{
    font-size: var(--fs-24);
    font-weight: 500;
    margin-top: 0.3em;
}

@media(max-width: 767px){
    .broadifi__about--grid{
        -ms-grid-columns: (minmax(0, 1fr))[2];
        grid-template-columns: repeat(2, minmax(0, 1fr));
        padding-bottom: 2rem;
    }
    .broadifi__about--grid figure{
        grid-column: 1/-1;
    }
}

/********************** WHO WE ARE **********************/

.broadifi__whoWeAre .inner-container{
    --content-width: 57ch;
    padding-bottom: 5rem;
    position: relative;
}

.broadifi__whoWeAre .doodles-svgs span{
    position: absolute;
}

.broadifi__whoWeAre .doodles-svgs svg{
    display: block;
    max-width: 100%;
    height: auto;
}

.broadifi__whoWeAre .doodles-svgs .posiLT{
    top: 14%;
    left: 10%;
}
.broadifi__whoWeAre .doodles-svgs .posiLB{
    bottom: 6%;
    left: 0;
}
.broadifi__whoWeAre .doodles-svgs .posiRT{
    top: 0;
    right: 0;
}
.broadifi__whoWeAre .doodles-svgs .posiRB{
    bottom: 0;
    right: 0;
}

@media(max-width: 1000px){
    .broadifi__whoWeAre .doodles-svgs .posiLT{
        left: 0;
    }
    .broadifi__whoWeAre .inner-container{
        padding-bottom: 0;
    }
}

/**********************  CTA **********************/

.broadifi__heroCTA {
    margin-top:  3rem;
    margin-bottom: 2rem;
}

.broadifi__heroCTA .inner-container{
    padding: 1.5rem;
    border: 2px solid currentColor;
    border-radius: 1rem;
    overflow: hidden;
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: auto 2rem auto 2rem auto;
    grid-template-columns: auto auto auto;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    gap: 2rem;
}

.broadifi__heroCTA--content{
    font-size: 1.25rem;
    line-height: 1.5;
    text-wrap: balance;
}

.broadifi__heroCTA--btn{
    font-size: 1rem;
    padding: 2em;
    overflow: hidden;
}

.broadifi__heroCTA--btn svg{
    width: 2.5em;
    height: 2.5em;
}

.broadifi__heroCTA:hover svg{
    -webkit-animation: btnArwAnim 600ms ease-in-out forwards;
            animation: btnArwAnim 600ms ease-in-out forwards;
}

@-webkit-keyframes btnArwAnim {
    0% {
        -webkit-transform: translate(0);
                transform: translate(0);
    }
    25% {
        -webkit-transform: translate(200%, -200%);
                transform: translate(200%, -200%);
        opacity: 0;
    }
    30% {
        -webkit-transform: translate(-200%, 200%);
                transform: translate(-200%, 200%);
        opacity: 0;
    }
    100% {
        -webkit-transform: translate(0);
                transform: translate(0);
        opacity: 1;
    }
}

@keyframes btnArwAnim {
    0% {
        -webkit-transform: translate(0);
                transform: translate(0);
    }
    25% {
        -webkit-transform: translate(200%, -200%);
                transform: translate(200%, -200%);
        opacity: 0;
    }
    30% {
        -webkit-transform: translate(-200%, 200%);
                transform: translate(-200%, 200%);
        opacity: 0;
    }
    100% {
        -webkit-transform: translate(0);
                transform: translate(0);
        opacity: 1;
    }
}


@media(max-width: 1000px){
    .broadifi__heroCTA--btn{
        padding: 1em;
    }

    .broadifi__heroCTA .inner-container{
        -ms-grid-columns: auto 1rem auto;
        grid-template-columns: auto auto;
        gap: 1rem;
    }

    .broadifi__heroCTA .broadifi--section-headingX2{
        grid-column: 1/-1;
    }
}

@media(max-width: 575px){
    .broadifi__heroCTA{
        margin-top: 2rem;
    }
    .broadifi__heroCTA .inner-container{
        -ms-grid-columns: 1fr;
        grid-template-columns: 1fr;
    }
    .broadifi__heroCTA .broadifi--section-headingX2{
        grid-column: auto;
    }
    .broadifi__heroCTA--btn{
        padding: 0;
        -ms-grid-column-align: end;
            justify-self: end;
        font-size: 0.65rem;
    }
}

/********************** SERVICE HERO **********************/

.broadifi__services-hero .doodles-svgs span{
    position: absolute;
}

.broadifi__services-hero .doodles-svgs svg{
    display: block;
}

.broadifi__services-hero .posiLT1{
    top: -1.5rem;
    left: -5%;
    width: 4%;
}

.broadifi__services-hero .posiLT2{
    top: -4rem;
    left: 9%;
    width: 8%;
}

.broadifi__services-hero .posiRB1{
    bottom: -50%;
    right: 12%;
    width: 8%;
}

.broadifi__services-hero .posiRB2{
    bottom: -12%;
    right: 0;
    width: 3%;
}



/********************** SERVICE GRID **********************/
.broadifi__services{
    background-image: url('./../img/doodles-svgs/long-dotted-arw-combined.svg');
    background-repeat: repeat;
    background-size: contain;
    padding-top: 5rem;
    padding-bottom: 3rem;
}

.broadifi--service-grid--media img{
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}

.broadifi--service-grid{
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr 1rem 1.275fr;
    grid-template-columns: 1fr 1.275fr;
    gap: 1rem;
    margin-bottom: 2rem;
}

.broadifi--service-grid:nth-child(odd){
    -ms-grid-columns: 1.275fr 1fr;
    grid-template-columns: 1.275fr 1fr;
}

.broadifi--service-grid:nth-child(odd) > *{
    -ms-grid-row: 1;
    grid-row: 1;
}

.broadifi--service-grid:nth-child(odd) .broadifi--service-grid--media{
    -ms-grid-column: 2;
    grid-column: 2;
}
.broadifi--service-grid:nth-child(odd) .broadifi--service-grid--content{
    -ms-grid-column: 1;
    grid-column: 1;
}

.broadifi--service-grid:hover .broadifi--service-heading > h5{
    background: linear-gradient(91.17deg, #5A88FE 47.32%, #FB30B6 94.22%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}

.broadifi--service-grid:hover .broadifi--service-heading::after{
    background: linear-gradient(91.17deg, #5A88FE 47.32%, #FB30B6 94.22%);
}


.broadifi--service-grid--media{
    border-radius: 1rem;
    overflow: hidden;
}

.broadifi--service-grid--content{
    border: 2px solid currentColor;
    border-radius: 1rem;
    padding: 0 2rem 2rem;
    background-color: #fff;
}

.broadifi--service-grid--content h5{
    font-size: var(--fs-24);
    font-family: var(--ff-heading);
    font-weight: 700;
    line-height: 1.25;
}

.broadifi--service-grid--content > h5{
    white-space: nowrap;
    -webkit-transition: inherit;
    -o-transition: inherit;
    transition: inherit;
    opacity: 1;
    position: absolute;
    top: 4rem;
    left: 1.5rem;
    right: 7.5rem;
}

.broadifi--service-grid--content p{
    margin-top: 2em;
    max-width: 61ch;
    text-wrap: balance;
}

.broadifi--service-grid--content h6{
    font-family: var(--ff-heading);
    font-size: 0.875rem;
    font-weight: 700;
    line-height: 1.25;
    margin-top: 2em;
    margin-bottom: 0.5em;
}

.broadifi--service-grid--content figure{
    display: -ms-grid;
    display: grid;
    grid-auto-flow: column;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: start;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: end;
    gap: 0.25rem;
}

.broadifi--service-grid--content figure img{
    max-width: 2.5rem;
}

@media(max-width: 575px){
    .broadifi__services{
        padding-top: 2rem;
        padding-bottom: 2rem;
    }
    .broadifi--service-grid{
        border: 1px solid currentColor;
        border-radius: 1rem;
        padding: 1rem;
        background-color: #fff;
    }

    .broadifi--service-grid,
    .broadifi--service-grid:nth-child(odd){
        -ms-grid-columns: 1fr;
        grid-template-columns: 1fr;
        gap: 0;
    }
    
    .broadifi--service-grid:nth-child(odd) > *{
        grid-row: auto;
    }
   .broadifi--service-grid:nth-child(odd) .broadifi--service-grid--media,
   .broadifi--service-grid:nth-child(odd) .broadifi--service-grid--content{
       grid-column: auto;
   } 

   .broadifi--service-grid--content{
        padding: 0;
        border-radius: 0;
        border: none;
   }
}

/* INNER HERO IMAGE */
.broadifi__inner--hero-media .media-radius-style{
    aspect-ratio: 1/0.325;
    border-radius: 1.5rem;
    overflow: hidden;
    margin-bottom: 4rem;
}

@media(max-width: 767px){
    .broadifi__inner--hero-media .media-radius-style{
        aspect-ratio: auto;
        margin-bottom: 2rem;
    }
}

.broadifi__inner--hero-media .media-radius-style > *{
    max-width: 100%;
    max-height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    display: block;
    margin-left: auto;
    margin-right: auto;
}


/********************** BLOG CARD STYLE /**********************/
.broadifi-blog--grid{
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr 1rem 1.1fr;
    grid-template-columns: 1fr 1.1fr;
    gap: 1rem;
}

.broadifi-blog--media{
    aspect-ratio: var(--media-ratio);
}

.broadifi-blog--media img{
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    border-radius: 0.85rem;
}

.broadifi-blog--content{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 1rem;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
}


.broadifi-blog--content .blog-title{
    font-size: var(--fs-24);
    font-family: var(--ff-heading);
    font-weight: 700;
    line-height: 1.25;
    width: 100%;
    -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
    -ms-flex-item-align: start;
        align-self: flex-start;
    text-wrap: balance;
}

.broadifi-blog--content .blog-desc{
    color: rgba(75, 75, 75, 1);
    line-height: 2.5;
    width: 100%;
    -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
    -ms-flex-item-align: start;
        align-self: flex-start;
    text-wrap: balance;
}

.broadifi-blog--content time,
.broadifi-blog--content .cta--arw{
    -ms-flex-item-align: end;
        align-self: flex-end;
}

.broadifi__blogs{
    --container-width: 1180px;
    padding-top: clamp(2.5rem, 7vw, 5rem);
    padding-bottom: clamp(2.5rem, 7vw, 5rem);
}

.broadifi__blogs .inner-container > * + *{
    margin-top: 3rem;
}


.broadifi__blogs .broadifi-blog--content{
    border: 2px solid currentColor;
    padding: 1.5rem;
    border-radius: 0.85rem;
}

@media(max-width: 1279px){
    .broadifi__blogs{
        padding-top: 0;
    }
    .broadifi-blog--content .blog-desc{
        line-height: 1.65;
    }
    .broadifi__blogs .inner-container > * + *{
        margin-top: 2rem;
    }
}

@media(max-width: 575px){
    .broadifi-blog--grid{
        -ms-grid-columns: 1fr;
        grid-template-columns: 1fr;
        border: 1px solid currentColor;
        padding: 1rem;
        border-radius: 0.85rem;
    }
    .broadifi__blogs .broadifi-blog--content{
        border: none;
        padding: 0;
        border-radius: 0;
    }
}

/* BLOG DETAILS /**********************/
.broadifi__blog-details{
    padding-bottom: 3rem;
    --media-ratio: 1/0.485;
}

.broadifi__blog-details .inner-container{
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1.55fr 1.5rem 1fr;
    grid-template-columns: 1.55fr 1fr;
    gap: 1.5rem;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: start;
}

.broadifi__blog-details--content .broadifi-blog--media{
    margin-top: 1.5rem;
}

.broadifi__blog-details--content .blog--title{
    position: relative;
}

.broadifi__blog-details--content .blog--title h1{
    padding-bottom: 0.5em;
    max-width: 24ch;
}

.broadifi__blog-details--content .blog--title .posiT{
    position: absolute;
    top: -45%;
    right: 21%;
    width: 8%;
 }

.broadifi__blog-details--content .blog--title .posiB{
   position: absolute;
   bottom: 0;
   right: 0;
   width: 9%;
}

.broadifi-blog--aside{
    border: 2px solid currentColor;
    padding: 1rem;
    --media-ratio: 1/0.45;
}

.broadifi-blog--aside > * + *{
    margin-top: 3rem;
}


@media(max-width: 1000px){
    .broadifi__blog-details .inner-container{
        -ms-grid-columns: 1fr;
        grid-template-columns: 1fr;
    }
    .broadifi-blog--aside{
        display: -ms-grid;
        display: grid;
        -ms-grid-columns: minmax(0, 1fr) 1rem minmax(0, 1fr);
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 1rem;
        border: none;
        padding: 0;
    }
    .broadifi-blog--aside > * + *{
        margin-top: 0;
    }
    
    .broadifi-blog--content{
        border: 1px solid currentColor;
        padding: 1rem;
        border-radius: 0.85rem;
    }
}

@media(max-width: 575px){
    .broadifi__blog-details .msg--svg{
        display: none;
    }
    .broadifi-blog--aside{
        -ms-grid-columns: (minmax(0, 1fr))[1];
        grid-template-columns: repeat(1, minmax(0, 1fr));
    }
    .broadifi__blog-details--content .blog--title .posiT{
        top: -100%;
    }
}

/********************** OPEN SOURCE **********************/

.broadifi__openSource{
    margin-top: clamp(3rem, 7vw, 5rem);
    margin-bottom: clamp(3rem, 7vw, 5rem);
}

.broadifi__openSource--grid{
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1.1fr 3rem 1fr;
    grid-template-columns: 1.1fr 1fr;
    gap: 3rem;
    margin-top: clamp(3rem, 6vw, 4rem);
}

.broadifi__openSource--media{
    border-radius: 1.5rem;
    overflow: hidden;
}

.broadifi__openSource--media > *{
    max-width: 100%;
    max-height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    display: block;
    margin-left: auto;
    margin-right: auto;
}

.broadifi__openSource--content{
    font-size: 1.25rem;
}

.broadifi__openSource--content ul,
.broadifi__openSource--content ol{
    padding-left: 1em;
}

.broadifi__openSource--content > * + *{
    margin-top: 1rem;
}

.broadifi__openSource--content li + li{
    margin-top: 0.5em;
}

.broadifi__openSourceContributers{
    background-image: url('./../img/doodles-svgs/long-dotted-arw-2.svg');
    background-repeat: no-repeat;
    background-size: 100%;
    background-position: bottom;
    margin-top: 4rem;
    margin-bottom: 4rem;
}

.broadifi__openSourceContributers--grid{
    margin-top: 5rem;
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: minmax(0, 1fr) 2rem minmax(0, 1fr) 2rem minmax(0, 1fr) 2rem minmax(0, 1fr) 2rem minmax(0, 1fr);
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 6rem 2rem;
}

.broadifi__openSourceContributers--grid figure:nth-child(2){
    -ms-grid-column: 3;
    grid-column: 3;
}

.broadifi__openSourceContributers--grid figure:nth-child(3){
    -ms-grid-column: 5;
    grid-column: 5;
}

.broadifi__openSourceContributers--grid figure:nth-child(4){
    -ms-grid-column: 2;
    grid-column: 2;
}

.broadifi__openSourceContributers--grid figure:nth-child(5){
    -ms-grid-column: 4;
    grid-column: 4;
}

.broadifi__openSourceContributers--grid figure{
    display: -ms-grid;
    display: grid;
    justify-items: center;
}

.broadifi__openSourceContributers--grid figure > *{
    -ms-grid-row: 1;
    grid-row: 1;
    -ms-grid-column: 1;
    grid-column: 1;
}

.broadifi__openSourceContributers--grid figcaption{
    width: 92%;
    background-color: #fff;
    border-radius: 0.5rem;
    border: 2px solid #eee;
    text-align: center;
    font-size: 0.875rem;
    -ms-flex-item-align: end;
        -ms-grid-row-align: end;
        align-self: end;
    padding: 1em;
    position: relative;
    opacity: 0;
    -webkit-transition: 400ms ease;
    -o-transition: 400ms ease;
    transition: 400ms ease;
}

.broadifi__openSourceContributers--grid figcaption::before{
    content: '';
    width: 0px;
    height: 0px;
    border-style: solid;
    border-width: 0 1em 1.5em 1em;
    border-color: transparent transparent #FFF transparent;
    -webkit-transform: rotate(0deg);
        -ms-transform: rotate(0deg);
            transform: rotate(0deg);
    position: absolute;
    top: -1.5em;
    left: 0;
    right: 0;
    margin: auto;
}

.broadifi__openSourceContributers--grid figcaption h6{
    font-family: var(--ff-heading);
    color: #ffa420;
}

.broadifi__openSourceContributers--grid figcaption > * + *{
    margin-top: 0.2em;
}


.broadifi__openSourceContributers--grid figure:hover figcaption{
    opacity: 1;
    -webkit-transition: 400ms ease;
    -o-transition: 400ms ease;
    transition: 400ms ease;
}

@media(max-width: 1280px){
    .broadifi__openSourceContributers--grid{
        gap: 3rem 2rem;
    }
}

@media(max-width: 1000px) and (min-width: 576px){
    .broadifi__openSource--grid{
        -ms-grid-columns: 1fr;
        grid-template-columns: 1fr;
        gap: 1rem;
    }
    .broadifi__openSource--content{
        font-size: 1.15rem;
    }
    .broadifi__openSourceContributers{
        background-image: none;
    }
    .broadifi__openSourceContributers--grid{
        display: block;
        text-align: center;
        position: relative;
    }
    .broadifi__openSourceContributers--grid figcaption{
        position: absolute;
        left: 0;
        right: 0;
        margin-left: auto;
        margin-right: auto;
        width: 50%;
        top: -100%;
    }
    .broadifi__openSourceContributers--grid figcaption::before{
        top: auto;
        bottom: -1.5em;
        border-width: 1.5em 1em 0 1em;
        border-color: #FFF transparent transparent transparent;
        display: none;
    }
    .broadifi__openSourceContributers--grid figure{
        width: 15vw;
        height: 15vw;
        border-radius: 50%;
        display: inline-block;
    }
    .broadifi__openSourceContributers--grid figure img{
        -webkit-transition: 300ms ease-in-out;
        -o-transition: 300ms ease-in-out;
        transition: 300ms ease-in-out;
        border-radius: inherit;
        border: 3px solid #fff;
    }
    .broadifi__openSourceContributers--grid figure:not(:nth-child(1)){
        margin-left: -30px;
    }

    .broadifi__openSourceContributers--grid figure:hover{
        z-index: 1;
    }
    .broadifi__openSourceContributers--grid figure:hover img{
        -webkit-transform: scale(1.2);
            -ms-transform: scale(1.2);
                transform: scale(1.2);
    }
}


@media(max-width: 575px){
    .broadifi__openSource--grid{
        -ms-grid-columns: 1fr;
        grid-template-columns: 1fr;
        gap: 1rem;
    }
    
    .broadifi__openSourceContributers{
        background-image: none;
    }
    .broadifi__openSourceContributers .inner-container{
        position: relative;
    }

    .broadifi__openSourceContributers  .broadifi--section-heading{
        position: absolute;
        left: 50%;
        top: 50%;
        -webkit-transform: translate(-50%, -50%);
            -ms-transform: translate(-50%, -50%);
                transform: translate(-50%, -50%);
        z-index: 1;
    }

    .broadifi__openSourceContributers  .broadifi--section-heading span{
        display: block;
    }

    .broadifi__openSourceContributers--grid{
        --contributer-size: 280px;
        --contributer-offset: 20px;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
        width: var(--contributer-size);
        height: var(--contributer-size);
        border-radius: 50%;
        position: relative;
        margin-left: auto;
        margin-right: auto;
        background-color: #fff;
        
    }

    .broadifi__openSourceContributers--grid::before,
    .broadifi__openSourceContributers--grid::after{
        content: '';
        position: absolute;
        inset: 0;
        border-radius: inherit;
        border: inherit;
        border: 1px dashed #032dc4;
    }

    .broadifi__openSourceContributers--grid::before{
        --scale: scale(1);
        -webkit-animation: rotateAnim 100s infinite linear;
                animation: rotateAnim 100s infinite linear;
    }

    .broadifi__openSourceContributers--grid::after{
        --scale: scale(0.8);
        animation: rotateAnim 100s infinite linear reverse;
    }

    .broadifi__openSourceContributers--grid figure{
        display: block;
        position: absolute;
        z-index: 1;
        left: calc(-1 * var(--contributer-offset)) ;
        width: calc(var(--contributer-size)/4);
        height: calc(var(--contributer-size)/4);
        -webkit-transform: rotate(calc(calc(360deg/var(--total-contributer)) * var(--contributer)));
            -ms-transform: rotate(calc(calc(360deg/var(--total-contributer)) * var(--contributer)));
                transform: rotate(calc(calc(360deg/var(--total-contributer)) * var(--contributer)));
        -webkit-transform-origin: calc(calc(var(--contributer-size)/2) + var(--contributer-offset));
            -ms-transform-origin: calc(calc(var(--contributer-size)/2) + var(--contributer-offset));
                transform-origin: calc(calc(var(--contributer-size)/2) + var(--contributer-offset));
    }

    .broadifi__openSourceContributers--grid figure img{
        -webkit-transform: rotate(calc(calc(-360deg/var(--total-contributer)) * var(--contributer)));
            -ms-transform: rotate(calc(calc(-360deg/var(--total-contributer)) * var(--contributer)));
                transform: rotate(calc(calc(-360deg/var(--total-contributer)) * var(--contributer)));
    }

    
    .broadifi__openSourceContributers--grid figcaption{
        -webkit-transform: rotate(calc(calc(-360deg/var(--total-contributer)) * var(--contributer)));
            -ms-transform: rotate(calc(calc(-360deg/var(--total-contributer)) * var(--contributer)));
                transform: rotate(calc(calc(-360deg/var(--total-contributer)) * var(--contributer)));
        position: absolute;
        top: 0;
        left: 38%;
        width: 200%;
    }
    .broadifi__openSourceContributers--grid figcaption::before{
        display: none;
    }
} 


@-webkit-keyframes rotateAnim {
    0%{
        -webkit-transform: rotate(0) var( --scale);
                transform: rotate(0) var( --scale);
    }
    100%{
        -webkit-transform: rotate(-359deg) var( --scale);
                transform: rotate(-359deg) var( --scale);;
    }
} 


@keyframes rotateAnim {
    0%{
        -webkit-transform: rotate(0) var( --scale);
                transform: rotate(0) var( --scale);
    }
    100%{
        -webkit-transform: rotate(-359deg) var( --scale);
                transform: rotate(-359deg) var( --scale);;
    }
}


/* CAREER */
.broadifi__careers-hero{
    padding-bottom: 2rem;
}
.broadifi__careers-hero .inner-container{
    padding-bottom: 1rem;
    --cols: 1fr 1fr;
}
.broadifi__careers-hero .doodles-svgs{
    display: contents;
}
.broadifi__careers-hero .doodles-svgs span{
    position: absolute;
}

.broadifi__careers-hero .doodles-svgs .posiT{
    width: 7%;
    top: -20px;
    left: 42%;
    transform: rotate(-30deg);
}
.broadifi__careers-hero .doodles-svgs .posiC{
    width: 4%;
    top: 40%;
    left: 45%;
}
.broadifi__careers-hero .doodles-svgs .posiB{
    width: 4%;
    bottom: -5%;
    left: 36%;
}


@media(max-width: 1000px){
    .broadifi__careers-hero .doodles-svgs .posiT{
        left: 12%;
        top: 30%;
    }

    .broadifi__careers-hero .doodles-svgs .posiB{
        left: auto;
        right: 3%;
    }

    .broadifi__careers-hero .doodles-svgs .posiC{
        top: 0;
        left: 27%;
    }
}

@media(max-width: 767px){
    .broadifi__careers-hero{
        padding-bottom: 0;
    }
    .broadifi__careers-hero .inner-container{
        padding-top: 1rem;
    }
}

/* JOB OPENINGS */
.broadifi__jobOpeningss--grid{
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: auto 1rem auto;
    grid-template-columns: auto auto; 
    -webkit-box-pack: justify; 
        -ms-flex-pack: justify; 
            justify-content: space-between;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: start;
    gap: 1rem;
    padding: 1.5rem;
    border: 3px solid currentColor;
    border-radius: 0.85rem;
    margin-top: 2rem;
    position: relative;
    background-color: #fff;
}

.broadifi__jobOpeningss--grid .msg--svg{
    position: absolute;
    top: -38%;
    left: 30%;
    z-index: -1;
    width: 6%;
}

.broadifi__jobOpeningss--grid h5{
    font-family: var(--ff-heading);
    font-size: var(--fs-32);
    font-weight: 600;
}

.broadifi__jobOpeningss--grid .tags{
    -ms-grid-column: 1;
    grid-column: 1;
}

.broadifi__jobOpeningss--grid .tags span{
    font-size: 1.25rem;
    display: inline-block;
    padding: 0.4em 1em;
    border-radius: 100em;
    margin-right: 0.5em;
    border: 2px solid currentColor;
    line-height: 1;
}

.broadifi__jobOpeningss--grid .tags span img{
    width: 1em;
    height: 1em;
    vertical-align: top;
    margin-right: 0.25em;
}

.broadifi__jobOpeningss--grid .cta--arwTL{
    -ms-grid-column: 2;
    grid-column: 2;
    -ms-grid-row: 1;
    -ms-grid-row-span: 2;
    grid-row: 1/span 2;
}

@media(max-width: 1000px){
    .broadifi__jobOpeningss--grid{
        border-width: 2px;
        padding: 1rem;
    }
}

@media(max-width: 767px){
    .broadifi__jobOpeningss--grid{
        margin-top: 1rem;
    }
}

@media(max-width: 575px){
    .broadifi__jobOpeningss--grid{
        -ms-grid-columns: 1fr;
        grid-template-columns: 1fr;
        gap: 0.5rem;
    }
    .broadifi__jobOpeningss--grid .tags span{
        font-size: 0.95rem;
        border-width: 1px;
        padding: 0.5em 0.75em;
    }
    .broadifi__jobOpeningss--grid .tags,
    .broadifi__jobOpeningss--grid .cta--arwTL{
        grid-column: auto;
        grid-row: auto;
    }
    .broadifi__jobOpeningss--grid .cta--arwTL{
        -ms-grid-column-align: end;
            justify-self: end;
    }   
}


/* LIFE */
.broadifi__life{
    padding-top: clamp(2.5rem, 7vw, 5rem);
    padding-bottom: clamp(2.5rem, 7vw, 5rem);
}

.broadifi__life--grid{
    margin-top: 2.5rem;
}

.broadifi__life--grid > *{
    border: 2px solid currentColor;
    border-radius: 0.5rem;
    overflow: hidden;
}

.broadifi__life--grid article{
    font-family: var(--ff-heading);
    font-size: var(--fs-48);
    font-weight: 600;
    padding: 1.5rem;
    line-height: 1.35;
    padding-right: 1.5em;
}

.broadifi__life--grid article .posiT{
    width: 26%;
    margin-left: auto;
    display: block;
    margin-top: 10%;
}

.broadifi__life--grid article .posiB{
    width: 17%;
    margin-left: auto;
    display: block;
    margin-top: 10%;
    margin-right: auto;
}

.broadifi__life--grid article .posiC{
    width: 16%;
    margin-left: auto;
    display: block;
    margin-top: 10%;
}

.broadifi__life--grid figure img{
    width: 100%;
    height: 100%;
    -webkit-transform: scale(1.05);
        -ms-transform: scale(1.05);
            transform: scale(1.05);
    display: block;
    -o-object-fit: cover;
       object-fit: cover;
}
.broadifi__life--grid{
    display: -ms-grid;
    display: grid;
    gap: 1rem;
}

@media(max-width: 1000px){
    .broadifi__life--grid article{
        grid-column: 1/-1;
        padding: 1.5rem;
    }
    .broadifi__life--grid article .posiT,
    .broadifi__life--grid article .posiB{
        margin-top: 0px;
    }
    .broadifi__life--grid article .posiC{
        margin-top: 30px;
    }
    .broadifi__life--grid{
        margin-top: 1rem;
    }
}

@media(min-width: 767px){
    .broadifi__life--grid{
         -ms-grid-columns: (minmax(0, 1fr))[3];
         grid-template-columns: repeat(3, minmax(0, 1fr));
    }   
}

@media(min-width: 1001px){
    .broadifi__life--grid{
        display: -ms-grid;
        display: grid;
        -ms-grid-columns: minmax(0, 1fr) 1rem minmax(0, 1fr) 1rem minmax(0, 1fr) 1rem minmax(0, 1fr) 1rem minmax(0, 1fr) 1rem minmax(0, 1fr) 1rem minmax(0, 1fr) 1rem minmax(0, 1fr) 1rem minmax(0, 1fr) 1rem minmax(0, 1fr) 1rem minmax(0, 1fr) 1rem minmax(0, 1fr) 1rem minmax(0, 1fr) 1rem minmax(0, 1fr) 1rem minmax(0, 1fr) 1rem minmax(0, 1fr) 1rem minmax(0, 1fr) 1rem minmax(0, 1fr) 1rem minmax(0, 1fr) 1rem minmax(0, 1fr) 1rem minmax(0, 1fr) 1rem minmax(0, 1fr) 1rem minmax(0, 1fr) 1rem minmax(0, 1fr) 1rem minmax(0, 1fr) 1rem minmax(0, 1fr) 1rem minmax(0, 1fr) 1rem minmax(0, 1fr) 1rem minmax(0, 1fr) 1rem minmax(0, 1fr) 1rem minmax(0, 1fr) 1rem minmax(0, 1fr) 1rem minmax(0, 1fr) 1rem minmax(0, 1fr) 1rem minmax(0, 1fr) 1rem minmax(0, 1fr) 1rem minmax(0, 1fr) 1rem minmax(0, 1fr) 1rem minmax(0, 1fr) 1rem minmax(0, 1fr) 1rem minmax(0, 1fr) 1rem minmax(0, 1fr);
        grid-template-columns: repeat(42, minmax(0, 1fr));
    }   

    .broadifi__life--grid article:nth-of-type(1){
        -ms-grid-column: 1;
        -ms-grid-column-span: 14;
        grid-column: 1/span 14;
    }
    .broadifi__life--grid article:nth-of-type(2){
        grid-column: 29/-1;
        -ms-grid-row: 2;
        -ms-grid-row-span: 2;
        grid-row: 2/span 2;
    }
    .broadifi__life--grid figure:nth-of-type(1){
        -ms-grid-column-span: 11;
        grid-column: span 11;
    }
    .broadifi__life--grid figure:nth-of-type(2){
        -ms-grid-column-span: 17;
        grid-column: span 17;
    }
    .broadifi__life--grid figure:nth-of-type(3){
        -ms-grid-column-span: 9;
        grid-column: span 9;
    }
    .broadifi__life--grid figure:nth-of-type(4){
        -ms-grid-column-span: 19;
        grid-column: span 19;
    }
    .broadifi__life--grid figure:nth-of-type(5){
        -ms-grid-column: 1;
        -ms-grid-column-span: 13;
        grid-column: 1/span 13;
    }
    .broadifi__life--grid figure:nth-of-type(6){
        -ms-grid-column-span: 15;
        grid-column: span 15;
    }
}



/* JOB DETAILS */
.broadifi__jobDetails{
    padding-top: 3rem;
    padding-bottom: 3rem;
}

.broadifi__job-section--heading{
    font-size: var(--fs-32);
    margin-bottom: 0.85em;
    line-height: 1.1;
}

.broadifi__jobApplyForm .inner-container{
    border: 2px solid currentColor;
    padding: 1.5rem;
    padding-bottom: 5rem;
    border-radius: 0.5rem;
    margin-bottom: 4rem;
    overflow: hidden;
}

.broadifi__jobApplyForm .form-style{
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: minmax(0, 1fr) 1rem minmax(0, 1fr);
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
}

.broadifi__jobApplyForm .form-style .form-btn{
    -ms-flex-item-align: end;
        -ms-grid-row-align: end;
        align-self: end;
    -ms-grid-column-align: end;
        justify-self: end;
}

@media(max-width: 767px){
    .broadifi__jobDetails{
        padding-top: 2rem;
        padding-bottom: 2rem;
    }
    .broadifi__jobApplyForm .inner-container{
        margin-bottom: 2rem;
        border: none;
        padding: 0;
    }
    .broadifi__jobApplyForm .form-style{
        -ms-grid-columns: (minmax(0, 1fr))[1];
        grid-template-columns: repeat(1, minmax(0, 1fr));
    }
}

@media(max-width: 575px){
    .broadifi__jobApplyForm .form-style .form-btn{
        width: 100%;
        margin-top: 1em;
    }
}

/* CONTACT */
.broadifi__contact-hero .broadifi--section-content{
    --content-width: 46ch;
}

.broadifi__contact-hero .posiLB.tel--svg{
    width: 4%;
}
.broadifi__contact-hero .posiRT.tel--svg{
    top: 0;
    right: 10%;
    width: 3%;
}


.tel--svg{
    -webkit-animation-name: trin;
            animation-name: trin;
    -webkit-animation-duration: 5s;
            animation-duration: 5s;
    -webkit-animation-iteration-count: infinite;
            animation-iteration-count: infinite;
    -webkit-animation-timing-function: linear;
            animation-timing-function: linear;
}

@-webkit-keyframes trin {

    from {
        -webkit-transform:rotate3d(0, 0, 1, 0deg);
                transform:rotate3d(0, 0, 1, 0deg);
    }
    20%, 32%, 44%, 56%, 68% {
        -webkit-transform: rotate3d(0, 0, 1, 0deg);
                transform: rotate3d(0, 0, 1, 0deg);
    }
    23%, 35%, 47%, 59%, 71% {
        -webkit-transform: rotate3d(0,0,1,15deg);
                transform: rotate3d(0,0,1,15deg);
    }
    26%, 38%, 50%, 62%, 74% {
        -webkit-transform: rotate3d(0,0,1,0deg);
                transform: rotate3d(0,0,1,0deg);
    }
    29%, 41%, 53%, 65%, 77% {
        -webkit-transform: rotate3d(0,0,1,-15deg);
                transform: rotate3d(0,0,1,-15deg);
    }
    80% {
        -webkit-transform:rotate3d(0, 0, 1, 0deg);
                transform:rotate3d(0, 0, 1, 0deg);
    }

}

@keyframes trin {

    from {
        -webkit-transform:rotate3d(0, 0, 1, 0deg);
                transform:rotate3d(0, 0, 1, 0deg);
    }
    20%, 32%, 44%, 56%, 68% {
        -webkit-transform: rotate3d(0, 0, 1, 0deg);
                transform: rotate3d(0, 0, 1, 0deg);
    }
    23%, 35%, 47%, 59%, 71% {
        -webkit-transform: rotate3d(0,0,1,15deg);
                transform: rotate3d(0,0,1,15deg);
    }
    26%, 38%, 50%, 62%, 74% {
        -webkit-transform: rotate3d(0,0,1,0deg);
                transform: rotate3d(0,0,1,0deg);
    }
    29%, 41%, 53%, 65%, 77% {
        -webkit-transform: rotate3d(0,0,1,-15deg);
                transform: rotate3d(0,0,1,-15deg);
    }
    80% {
        -webkit-transform:rotate3d(0, 0, 1, 0deg);
                transform:rotate3d(0, 0, 1, 0deg);
    }

}

.broadifi__contacts--heading{
    font-family: var(--ff-heading);
    font-weight: 500;
    font-size: var(--fs-32);
    margin-bottom: 0.85em;
    line-height: 1.1;
}

.broadifi__contacts--grid,
.broadifi__caseStudies--grid{
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: minmax(0, 1fr) 1rem minmax(0, 1fr);
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
    margin-bottom: 3rem;
}


.broadifi__contacts--grid > *,
.broadifi__caseStudies--grid > *{
    background-color: #fff;
    border-radius: 1rem;
    border: 2px solid currentColor;
    padding: 1.25rem;

}


.broadifi__contacts--grid > *{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
}

.broadifi__contacts .form-style{
    display: -ms-grid;
    display: grid;
    gap: 1rem;
}

.broadifi__contacts .form-style .form-btn{
   -ms-grid-column-align: end;
       justify-self: end;
}

.broadifi__contacts iframe{
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    width: 100%;
    height: 100%;
    border-radius: inherit;
    border: inherit;
    overflow: hidden;
}

@media(max-width: 1000px){
    .broadifi__contacts--grid{
        -ms-grid-columns: minmax(0, 1fr);
        grid-template-columns: repeat(1, minmax(0, 1fr));
        gap: 2rem;
    }

    .broadifi__contacts--grid > *{
        background-color: #fff;
        border-radius: 0;
        border: none;
        padding: 0;
    }

    .broadifi__contacts iframe{
        -webkit-box-flex: auto;
        -ms-flex: auto;
            flex: auto;
        height: 50vw;
    }
}

@media(max-width: 575px){
    .broadifi__contacts .form-style .form-btn{
        width: 100%;
    }
}

.broadifi__caseStudies{
    background-image: url('./../img/doodles-svgs/long-dotted-arw-combined.svg');
    background-repeat: repeat-y;
    background-size: cover;
}

.broadifi__caseStudies .cta--arwTL{
    display: -ms-grid;
    display: grid;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding-left: 2rem;
    margin-bottom: 1.5rem;
}

.broadifi__caseStudies--grid .cta--parent{
    position: relative;
}

.broadifi__caseStudies--grid .cta--parent .cta--arwTL::after{
    content: '';
    position: absolute;
    top: 0px;
    right: 0px;
    bottom: 0px;
    left: 0px;
    z-index: 1;
}
.broadifi__caseStudies .cta--arwTL svg{
    opacity: 0;
}

.broadifi__caseStudies .cta--arwTL:hover svg{
    opacity: 1;
}

.broadifi__caseStudies--heading{
    font-family: var(--ff-heading);
    font-weight: 600;
    font-size: var(--fs-32);
    line-height: 1.1;
}

.broadifi__caseStudies--media{
    border-radius: inherit;
    border: inherit;
    overflow: hidden;
    grid-column: 1/-1;
}

.broadifi__caseStudies--media img{
    -webkit-transform: scale(1.1);
        -ms-transform: scale(1.1);
            transform: scale(1.1);
}

@media(max-width: 1279px){
    .broadifi__caseStudies .cta--arwTL svg{
        opacity: 1;
    }
}

@media(max-width: 767px){
    .broadifi__caseStudies--grid > *{
        border-width: 1px;
        padding: 1rem;
    }  
    
    .broadifi__caseStudies .cta--arwTL{
        padding-left: 0;
    }
}

@media(max-width: 575px){
    .broadifi__caseStudies--grid{
        -ms-grid-columns: 1fr;
        grid-template-columns: 1fr;
    }
}

/* PROJECT DETAILS */
.broadifi__projectDetails{
    padding-top: 4rem;
    padding-bottom: 4rem;
    background-image: url('./../img/doodles-svgs/long-dotted-arw-combined.svg');
    background-repeat: no-repeat;
    background-size: 100%;
    background-position: top 15vw right;
    overflow: hidden;
}

.broadifi__projectDetails .broadifi--section-headingX2{
    position: relative;
}

.broadifi__projectDetails .broadifi--section-headingX2 .arw--left{
    position: absolute;
    top: 0;
    left: 18%;
    width: 8%;
}

.broadifi__projectDetails--media{
    max-width: 850px;
    margin-left: auto;
    margin-right: auto;
    margin-top: 3rem;
    position: relative;
}

.broadifi__projectDetails--media > img{
    border-radius: 0.5rem;
}

.broadifi__projectDetails--media .lines-svgs > span{
    position: absolute;
}

.broadifi__projectDetails--media .line-left{
    width: 7%;
    top: -70px;
    left: -70px;
}

.broadifi__projectDetails--media .line-right{
    width: 6%;
    bottom: 40%;
    right: -100px;
}

.broadifi__projectDetails--media .arw--right{
    width: 8%;
    top: -50px;
    right: -100px;
    position: absolute;
}

.broadifi__projectDetails--infoIn-grid,
.broadifi__projectDetails--infoOut-grid{
    margin-top: 2rem;
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: ;
    grid-template-columns: repeat(var(--col, 3), minmax(0, 1fr));
    gap: 1.5rem;
}

.broadifi__projectDetails--infoOut-grid{
    --col: 2;
}

.broadifi__projectDetails--infoIn-grid > div,
.broadifi__projectDetails--infoOut-grid > div{
    padding: 2rem;
    border: 2px solid currentColor;
    border-radius: 0.5rem;
    background-color: #fff;
}

.broadifi__projectDetails--infoIn-grid h5{
    font-family: var(--ff-heading);
    font-size: var(--fs-24);
    font-weight: 700;
    margin-bottom: 0.5em;
}

.broadifi__projectDetails--infoIn-grid p{
    font-size: var(--fs-36);
    line-height: 1.3;
}

.broadifi__projectDetails--infoIn-grid p a{
    font: inherit;
}


.broadifi__projectDetails--infoOut-grid h5{
    font-family: var(--ff-heading);
    font-size: var(--fs-40);
    font-weight: 700;
    margin-bottom: 0.5em;
}

.broadifi__projectDetails--infoOut-grid p{
    font-size: var(--fs-24);
}

.broadifi__projectDetails--infoOut-grid p a{
    font-weight: inherit;
}

.broadifi__projectDetails--infoOut-grid > div:nth-child(3){
    grid-column: 1/-1;
}


@media(max-width: 1279px){
    .broadifi__projectDetails{
        padding-top: 1rem;
        padding-bottom: 2.5rem;
        background-position: top 25vw right;
    }
    .broadifi__projectDetails--infoIn-grid, 
    .broadifi__projectDetails--infoOut-grid{
        gap: 1rem;
    }
    .broadifi__projectDetails--infoIn-grid > div, 
    .broadifi__projectDetails--infoOut-grid > div{
        padding: 1.5rem;
        border-width: 1px;
    }
    .broadifi__projectDetails--media .lines-svgs{
        display: none;
    }
}

@media(max-width: 575px){
    .broadifi__projectDetails--infoIn-grid, 
    .broadifi__projectDetails--infoOut-grid{
        -ms-grid-columns: 1fr;
        grid-template-columns: 1fr;
    }
}

/* TEAM */
.team-screen{
    min-height: calc(100dvh - 40px);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    
    background-image: url('./../img/doodles-svgs/team-pattern.svg');
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}

.broadifi__team-hero{
    margin-top: auto;
    margin-bottom: auto;
}

.broadifi__team figure{
    max-width: 900px;
    margin-left: auto;
    margin-right: auto;
    overflow: hidden;
    display: grid;
    align-items: end;
}

.broadifi__team figure > *{
    grid-row: 1;
    grid-column: 1;
    width: 100%;
    display: block;
}

.broadifi__team figure svg{
    height: auto;
}


@media(max-width: 767px){
    .doodles-svgs{
        display: none !important;
    }
}


