@import url('https://fonts.googleapis.com/css2?family=Noto+Sans:ital,wdth,wght@0,62.5..100,100..900;1,62.5..100,100..900&display=swap');

*{
    margin:0;
    padding:0;
    box-sizing: border-box;
    --nav-prim-txt-color: rgba(238, 8, 8, 0.938); /*Red*/ 
    --bg-prim-color: #fff; /*White*/
    font-family: "Noto Sans", sans-serif;
    font-size: 14px;
}

body{
    line-height: 1.3;
    width: 100%;
    height: auto;
    overflow-x: hidden;
}

ul{
    list-style: none;
}

a{
    text-decoration: none;
}

/*App size*/
.app{
    /* width: 95%; */
    max-width: 1680px;
    margin:auto;

}

/*Nav Styles*/
header{
    height: auto;
    max-height: 250px;
}

.fixed-nav{
    height: 3em;
    width: 100%;
    background-color: #fff;
    box-shadow: 0.2em 0.4em 0.3em #e1e1e1 ;
    color: #000;
    display: flex;
    flex-direction: row;
    gap: 10%;
    text-align: center;
    justify-content: center;
    font-size: 1em;
    font-weight: 300;
    /* border-bottom-left-radius: 1.3em;
    border-bottom-right-radius: 1.3em; */
    /* position: fixed; */
}

.fixed-nav-btn{
    display:flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: 0.3em;
}

.fixed-nav-btn a{
    font-size: 1em;
    font-weight: 500;
    text-decoration: underline;
    color:rgba(187, 11, 11, 0.938);
}

.fixed-nav-btn a:hover{
    text-decoration: underline;
}

.fixed-nav-btn span{
    padding: 0.5em 0;
}

.main-nav{
    position: relative;
    margin: 0.7em 2em 0.7em 2em;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 1em;
    justify-content: space-between;
    align-items: center;
    align-content: center;
    align-items: center;
    text-align: center;
}

.logo{
    width:20%;
}

.logo img{
    width: 15em;
}

.main-menu{
    display:flex;
    flex-direction: row;
    flex-wrap: wrap;
    width: 60%;
    justify-content: space-evenly;
    align-content: center;
    /* margin-left: 11% */
    padding: 0.5em 0;
}

.main-menu .menu-item a{
    font-size: 1em;
    font-weight: bold;
    color: #3a3838;
    padding: 0.5em 0;
    text-transform: uppercase;
}

.main-menu .menu-item a:hover{
    border-bottom: solid 0.3em #000;
}

.mlink sup{
    font-size: 0.7em;
}

/*Hamburger Menu*/
.hamburger{
    display: none;
    flex-direction: column;
    cursor: pointer;
    padding: 0.5em;
}

.hamburger span{
    width: 25px;
    height: 3px;
    background-color: #3a3838;
    margin: 3px 0;
    transition: 0.3s;
}

.hamburger.active span:nth-child(1){
    transform: rotate(-45deg) translate(-5px, 6px);
}

.hamburger.active span:nth-child(2){
    opacity: 0;
}

.hamburger.active span:nth-child(3){
    transform: rotate(45deg) translate(-5px, -6px);
}

/*Hero slider section*/
.hero{
    position:relative;
    display: block;
    height: auto;
    background-color: #e1e1e1;
    color:#fff;
    /* box-shadow: 1em 0.5em 1em 1em #e1e1e1; */
}

.slider{
    position: relative;
    width: 100%;
    height: 70%;
    height: 40rem;
    /* border-bottom-left-radius: 1em;
    border-bottom-right-radius: 1em; */
    /* transition: transform 1s ease-in-out; */
}

.slider h1{
    font-size: 2em;
    position: relative;
    top: 200px;
    background-color: gray;
    width: 45%;
    max-width: 597px;
    padding: 1em 0.5em;
    border-top-right-radius: 1em;
    box-shadow: 0.1em 1em 2em 0.1em #363535;
}

.slider p{
    font-size: 1.2em;
    position: relative;
    top: 190px;
    background-color:#c50808;
    width: 45%;
    max-width: 597px;
    padding: 1em 0.83em;
    border-bottom-right-radius: 1em;
    box-shadow: 2em 2em 6em 1em #363535;
}

#slider-1{
    background-image: url(/res/imgs/slider-wireman.jpeg);
    background-position: 20% 60%;
}

#slider-2{
    background-image: url(/res/imgs/sustainable-manufactring.jpeg);
    background-position: 40% 80%;
    display:none;
}

/*Numbers block*/
.hero-summary{
    background-color: #f5f2f2;
    position: relative;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    width: 100%;
    height: auto;
    margin: 0;
    justify-content: space-evenly;
    align-items: center;
}

.hero-summary-block{
    background-color: #fff;
    padding: 2em 1em;
    border-bottom-left-radius: 1em;
    border-bottom-right-radius: 1em;
    border: #f1f1f1 solid 0.01em;
    width: 20%;
    margin: 1em;
    text-align: center;
    box-shadow: 0.2em 0.4em 0.3em #e1e1e1 ;
}

.hero-summary-block .hero-number-bold{
    font-size: 2em;
    font-weight: bolder;
    color: #3a3838;
}

.hero-summary-block .hero-number-metric{
    font-weight: bold;
    font-size: 1.2em;
    color:rgba(238, 8, 8, 0.938);
    text-transform: uppercase;
}

/*Brand Block*/
.sub-hero{
    position: relative;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    width: 100%;
    height: auto;
    margin: 1em 0;
    justify-content: space-evenly;
    align-items: center;
}

.sub-hero .sub-hero-header{
    font-size: 2em;
    color: #3a3838;
    text-transform: uppercase;
    border-bottom: 0.2em solid #363535; 
}

.sub-hero .sub-hero-body{
    font-size: 1em;
    font-weight: light;
    line-height: 2em;
    margin: 0.5em 0.2em;
    color: #3a3838;
    padding: 0.5em 0.8em;
}

.sub-hero .sub-hero-body sup{
    font-size: 0.8em;
}

.sub-hero-cta{
    font-size: 0.9em;
    font-weight: light;
    line-height: 2em;
    margin: 0.5em 0.2em;
    color: #3a3838;
    /* background-color:#363535; */
    /* color: #fff; */
    padding: 1em 1.2em;
}

.sub-hero-cta a{
    background-color: #c50808;
    padding: 1em 1.2em;
    color: #fff;
    font-weight: bolder;
    font-size: 0.9em;
    border-radius: 1.2em;
}

.sub-hero-logo-img{
    border: solid 1px #e1e1e1;
    border-radius: 0.6em;
    padding: 1em;
}

/*Footer Styling*/
footer{
    margin: 0.5em 00;
}

.fat-ftr{
    background-color: #363535;
    width: 100%;
    height: auto;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-evenly;
    align-items: center;
    padding: 1em 0;
}

.fat-ftr-links-sect{
    width: 25%;
    margin: 0.3em 0.8em;
}

.fat-ftr-links-sect .ft-link-head{
    color: #fff;
    font-weight: bolder;
    font-size: 0.9em;
    padding: 0.5em 1em;
    text-transform: uppercase;
    border-bottom: solid 0.2em; 
}

.fftr-links-list{
    padding: 0.5em 1em; 
}

.fftr-links-list li{
    color: #fff;
    line-height: 2em;
    font-size: 0.9em;
}

.fftr-links-list a{
    color: #fff;
    line-height: 2em;
    font-size: 0.9em;
}

footer .btm-ftr{
    font-size: 0.8em;
    margin: 1em 0;
    text-align: center;
    line-height: 2em;
    font-weight: 300;
}

/*Inner page layout*/
.inner-body{
    background-color: #e1e1e1;
    width: 100%;
    height: auto;
    min-height: 400px;
    box-shadow: 0.2em 0.4em 0.3em #e1e1e1 ;
}

/*Breadcrumb style*/
.bread-crumb{
    margin: 0 1em;
    padding: 1em 2em;
    font-size: 1em;
    font-weight: bolder;
}

.bread-crumb a{
    font-size: 1em;
    color: #363535;
}

.bread-crumb .seperator{
    color: #c50808;
    font-size: 1.1em;
}

.curr_page{
    font-style: italic;
    color: #363535;
}

.page-title{
    font-size: 2em;
    color: #363535;
    margin: 0em 0.7em 0em 0.7em;
    padding: 0.5em 1em;
    background-color: #fff;
    text-transform: uppercase;
}

.body-text{
    font-size: 1em;
    color: #363535;
    margin: 0 0.7em;
    padding: 0.8em 1em;
    background-color: #fff;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
}

.body-text p{
    font-size: 1em;
    font-weight: 300;
    line-height: 2em;
}

/*Careers page design*/
.job-card{
    margin: 1%;
    width: 40%;
    background-color: #f1f1f1;
    padding: 2%;
    border-radius: 1em;
    line-height: 1.5em;
    box-shadow: 0.2em 0.4em 0.3em #e1e1e1 ;
}

.job-title{
    font-size: 1.2em;
    font-weight: 500;
    border-bottom: solid 0.2em #c50808;
    margin-bottom: 0.5em;
    padding-bottom: 0.5em
}

.job-desc{
    font-weight: 200;
}

.job-desc .sub-title{
    font-weight: bold;
}

/*Responsive Design*/
@media screen and (max-width: 768px){
    .fixed-nav{
        font-size: 0.8em;
        padding: 0.5em;
        height: auto;
        min-height: 3em;
    }
    
    .fixed-nav-btn{
        flex-wrap: nowrap;
        gap: 0.5em;
        font-size: 1em;
    }
    
    .main-nav{
        margin: 0.5em 1em;
        justify-content: space-between;
    }
    
    .logo{
        width: auto;
    }
    
    .logo img{
        width: 12em;
    }
    
    .main-menu{
        display: none;
        position: absolute;
        top: 100%;
        left: 0;
        width: 100%;
        background-color: #fff;
        flex-direction: column;
        box-shadow: 0.2em 0.4em 0.3em #e1e1e1;
        z-index: 1000;
    }
    
    .main-menu.active{
        display: flex;
    }
    
    .main-menu .menu-item{
        width: 100%;
        text-align: center;
        border-bottom: 1px solid #e1e1e1;
    }
    
    .main-menu .menu-item a{
        display: block;
        padding: 1em;
    }
    
    .hamburger{
        display: flex;
    }
    
    .slider h1{
        font-size: 1.5em;
        width: 80%;
        top: 150px;
    }
    
    .slider p{
        font-size: 1em;
        width: 80%;
        top: 140px;
    }
    
    .hero-summary{
        flex-direction: column;
    }
    
    .hero-summary-block{
        width: 80%;
        margin: 0.5em;
    }
    
    .sub-hero{
        padding: 0 1em;
    }
    
    .sub-hero .sub-hero-header{
        font-size: 1.5em;
        text-align: center;
    }
    
    .sub-hero-logo-img{
        width: 100%;
        max-width: 200px;
    }
    
    .fat-ftr{
        flex-direction: column;
        text-align: center;
    }
    
    .fat-ftr-links-sect{
        width: 90%;
        margin: 0.5em;
    }
    
    .body-text{
        margin: 0 1em;
        flex-direction: column;
    }
    
    .job-card{
        width: 90%;
        margin: 1em auto;
    }
    
    .page-title{
        font-size: 1.4em;
    }
}

@media screen and (max-width: 480px){
    .slider{
        height: 30rem;
    }
    
    .slider h1{
        font-size: 1.2em;
        top: 100px;
    }
    
    .slider p{
        font-size: 0.9em;
        top: 90px;
    }
    
    .logo img{
        width: 8em;
    }
    
    .fixed-nav{
        font-size: 0.7em;
    }
}
