/* ======================
Author's custom styles
======================*/

/* rubik-regular - latin */
@font-face {
    font-display: swap;
    font-family: 'Rubik';
    font-style: normal;
    font-weight: 400;
    src: url('../fonts/rubik-v28-latin-regular.woff2') format('woff2');
  }
  
  /* rubik-500 - latin */
  @font-face {
    font-display: swap;
    font-family: 'Rubik';
    font-style: normal;
    font-weight: 500;
    src: url('../fonts/rubik-v28-latin-500.woff2') format('woff2');
  }
  
  /* rubik-600 - latin */
  @font-face {
    font-display: swap;
    font-family: 'Rubik';
    font-style: normal;
    font-weight: 600;
    src: url('../fonts/rubik-v28-latin-600.woff2') format('woff2');
  }
  
  /* rubik-700 - latin */
  @font-face {
    font-display: swap;
    font-family: 'Rubik';
    font-style: normal;
    font-weight: 700;
    src: url('../fonts/rubik-v28-latin-700.woff2') format('woff2');
  }
  
  /* rubik-800 - latin */
  @font-face {
    font-display: swap;
    font-family: 'Rubik';
    font-style: normal;
    font-weight: 800;
    src: url('../fonts/rubik-v28-latin-800.woff2') format('woff2');
  }
  
  /* rubik-900 - latin */
  @font-face {
    font-display: swap;
    font-family: 'Rubik';
    font-style: normal;
    font-weight: 900;
    src: url('../fonts/rubik-v28-latin-900.woff2') format('woff2');
  }
  


html {
    font-family: sans-serif;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
    scroll-behavior: smooth;
}

body {
    font-size: 1.125em;
    line-height: 1.5em;
    color: #fff;
    font-family: 'Rubik','Montserrat', Arial, Verdana, sans-serif;
    background-color: #021229;
    font-weight: 300;
}

footer {
    border-top:2px solid #e19e34;
    padding: 50px 0 50px;
    color: #fff;
    min-height:148px;
}

header {
    padding-top:0px;
    box-sizing:border-box;
    padding-bottom:0px;
}

.header-container {
    padding-top:0;
    padding-bottom:0;
    padding-left:0;
    padding-right:0;
    max-width:100%;
}

a:link,
a:visited {
    text-decoration: none;
    color: #305e89;
}

a:hover,
a:active,
a:focus {
    color: #000;
}

footer a:link,
footer a:visited {
    text-decoration: none;
    color: #fff;
}

footer a:hover,
footer a:active,
footer a:focus {
    color: #fff;
    text-decoration: underline;
}

#logo {
    display: none;
}

#text-overlay {
    position:absolute; 
    top:17%; left:10%; 
    width:200px;
}

.text-shadow {
    text-shadow: 1px 1px #333;
}

h1,
.h1 {
    font-size: 1.375rem;
    line-height: 1.5rem;
    font-weight: 700;
    margin: 0 0 1rem 0;
}

h2,
.h2 {
    font-size: 1.375rem;
    line-height: 1.5rem;
    margin: 0 0 15px 0;
    font-weight: 500;
}

h3,
.h3 {
    font-size: 1.25rem;
    line-height: 1.5rem;
    margin: 0 0 15px 0;
    font-weight: 700;
}

h4,
.h4 {
    font-size: 1.25rem;
    line-height: 1.25rem;
    font-weight: 400;
}

h5,
.h5 {
    font-size: 1.0rem;
    line-height: 20px;
    margin: 3px 0 0 0;
    font-weight: 500;
}

.strong,
strong {
    font-weight: 700;
}

.greybg {
    color:#021229;
    background: #f1f1f1 url('../img/beton_bg.jpg');
}

.worldbg {
    color:#fff;
    background-color:#021229;
    background-image: url('../img/worldmap.jpg');
    background-repeat: no-repeat;
    background-size: cover;
}

.content,
.greybg,
.worldbg {
    padding-top:30px;
    padding-bottom:30px;
}

.text-yellow {
    /*color:#e69e43 !important;*/
	color:rgb(237, 237, 237) !important;
}

.text-grey {
    color:rgb(237, 237, 237);
}


.text-justify {
    text-align: justify;
}

.circlenumber { 
    display:inline-block;
    width: 100px; 
    height:100px;
    line-height: 90px;
    font-size:50px;
    border-radius: 50%; 
    text-align: center; 
    /* border:5px solid #e69e43; */
    border:5px solid #ededed;
} 

.mb2numbers {
    margin-bottom:40px;
}

.s3badge {
    height:35px;
}

.s3badge-text{
    font-size:1.5rem;
}

.s3badge2 {
    height:50px;
}

.s3badge2-text{
    font-size:1.75rem;
}

.s3subtext {
    padding-left:64px; 
    margin-top:-15px;
}



#langnav {
    position:absolute;
    top:35px;
    right:90px;
    z-index:100;
}

.langflag {
    width:32px;
    height:auto;
}


a.btn-light {
    background-color: #fff !important;
    color:#021229 !important;
    padding-top:5px;
    padding-bottom:5px;
    padding-left:40px;
    padding-right:40px;
    font-weight:600;
    border-radius: 0.75rem;
    text-decoration:none !important;
}

a.btn-white {
    background-color: #fff !important;
    color:#021229 !important;
    padding-top:5px;
    padding-bottom:5px;
    padding-left:40px;
    padding-right:40px;
    font-weight:600;
    border-radius: 1em;
    text-decoration:none !important;
}

.listing-square {
    list-style-type: square;
}


/* mobile Navigation
*****************************/

.navbar-brand {
    padding: 0;
    margin-left:0.75em;
    margin-top:5px;
    width: 100px;
    height: 75px;
    background-image: url('/img/s3-group-logo.png');
    background-repeat: no-repeat;
    background-size: contain;
}

.navbar-toggler {
    border: 1px solid #fff;
    border-radius: .25rem;
    outline: 0;
    margin-right:0.75em;
}

.navbar .navbar-toggler-icon {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(255, 255, 255, 0.5)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E");
}

.navbar .navbar-toggler-icon:hover,
.navbar .navbar-toggler-icon:focus,
.navbar .navbar-toggler-icon:active {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(255, 255, 255, 0.8)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E");
    outline: 0;
    box-shadow: none;
}

.navbar-toggler:focus {
    text-decoration: none;
    outline: 0;
    box-shadow: none;
}

.navbar-nav {
    padding-top:10px;
}

.navbar-nav .nav-link {
    padding: 5px 10px 5px 25px;
    color: #ddd;
    outline: none;
    font-size: 1.56rem;
    line-height: 1.75em;
    font-weight: bold;
    text-decoration: none;
}

.navbar-nav .nav-link:hover {
    color: #fff;
    background-color: transparent;
}

.dropdown-menu {
    padding-top:0;
    margin-top:0;
    background-color: transparent;
    border:0;
}

.dropdown-item {
    padding-left:50px;
    color:#fff !important;
    clear: both;
    font-weight: 400;
    margin-bottom:5px;
    text-decoration: none !important;
    font-size:1.125rem;
  }

  .dropdown-item:hover {
    color:#fff !important;
    background-color: transparent;
  }



/* end mobile Navigation
******************************/


@media (min-width: 576px) {

    .circlenumber { 
        width: 160px; 
        height:160px;
        line-height: 150px;
        font-size:70px;
    } 
    
    .mb2numbers {
        margin-bottom:40px;
    }
    
    .s3badge {
        height:35px;
    }
    
    .s3badge-text{
        font-size:1.5rem;
    }
    
    .s3badge2 {
        height:50px;
    }
    
    .s3badge2-text{
        font-size:1.75rem;
    }
    
    .s3subtext {
        padding-left:64px; 
        margin-top:-15px;
    }
    
    


}

@media (min-width: 768px) {

    body {
        padding-top:150px
    }

    header {
        padding-top:20px;
        position: fixed;
        top: 0;
        right: 0;
        left: 0;
        z-index: 1000;        
        height:150px;
        background-color: #04122a;
    }

    .header-container {
        padding-left: calc(var(--bs-gutter-x) * .5);
        padding-right: calc(var(--bs-gutter-x) * .5);
        max-width:960px;
    }

    .navbar-brand {
        display:none;
    }

    #logo {
        display:inline-block;
        width:170px;
        height:auto;
        margin-bottom:20px;
    }

    #langnav {
        position:absolute;
        top:0px;
        right:20px;
    }

    .langflag {
        width:24px;
    }

    .navbar {
        position:absolute;
        top:3px; right:150px;
        padding:0;
        margin:0;
    }

    .navbar-nav {
        margin: 0;
        padding-top:0;
    }

    .navbar-nav .nav-item {
        width: auto;
        text-align: center;
        margin-right:20px;
    }

    .navbar-nav .nav-item:first-child {
        text-align: left;
    }
    .navbar-nav .nav-item:last-child {
        text-align: right;
    }    

    .navbar-nav .nav-link {
        padding: 0;
        display:inline;
        color: #fff;
        outline: none;
        font-size: 1rem;
        line-height: 1.375rem;
        font-weight: 400;
        text-transform:uppercase;
    }

    .navbar-nav .nav-link:hover {
        color: #fff;
    }    

    .dropdown-menu {
        padding: 10px;
        margin-top: 0;
        background-color: #fff;
        border: 0;
        min-width:360px;
    }
  
    .dropdown-item {
        padding-left: 10px;
        clear: both;
        color:#021229 !important;
        font-weight: 400;
        margin-bottom: 5px;
        text-decoration: none !important;
        font-size: 1rem;
      }

      .dropdown-item:hover {
        color:#021229 !important;
        font-weight:bold;
      }

    .dropdown-toggle::after {
        display: none;
        margin-left: .255em;
        vertical-align: .255em;
        content: "";
        border-top: .3em solid;
        border-right: .3em solid transparent;
        border-bottom: 0;
        border-left: .3em solid transparent;
      }    

    ul.show {
        animation-name: slidenavAnimation;
        animation-duration: .5s;
        animation-iteration-count: 1;
        animation-timing-function: ease;
        animation-fill-mode: forwards;
        -webkit-animation-name: slidenavAnimation;
        -webkit-animation-duration: .5s;
        -webkit-animation-iteration-count: 1;
        -webkit-animation-timing-function: ease;
        -webkit-animation-fill-mode: forwards;
        -moz-animation-name: slidenavAnimation;
        -moz-animation-duration: .5s;
        -moz-animation-iteration-count: 1;
        -moz-animation-timing-function: ease;
        -moz-animation-fill-mode: forwards;
    }
    @keyframes slidenavAnimation {
        from {
            opacity: 0;
        }
        to {
            opacity: 1;
        }
    }
    @-webkit-keyframes slidenavAnimation {
        from {
            opacity: 0;
        }
        to {
            opacity: 1;
        }
    }

    #text-overlay {
        position:absolute; 
        top:20%; left:10%; 
        width:300px;
    }

    .text-shadow {
        text-shadow: 2px 2px #333;
    }    

    .greybg,
    .worldbg {
        padding-top:50px;
        padding-bottom:50px;
    }

    .footer-container {
        padding-left:12px;
        padding-right:12px;        
    }

    h1,
    .h1 {
        font-size: 2em;
        line-height: 1.25em;
        font-weight: 500;
        margin-bottom:1em;
    }

    h2,
    .h2 {
        font-size: 1.75em;
        line-height: 1.125em;
        font-weight: 500;
        margin-bottom:1em;
    }

    h3,
    .h3 {
        font-size: 1.5rem;
        line-height: 1.75rem;
        font-weight: 500;
    }

    p {
        font-size: 1.375rem;
        line-height: 1.25em;
        margin-bottom:1.25em;
        font-weight:300;
    }

    footer p {
        font-size: 1rem;
        line-height: 1.5em;
    }    

    .listing li {
        font-size: 1.375rem;
        line-height: 1.5em;
        font-weight:300;        
    }


    .mb2numbers {
        margin-bottom:55px;
    }

    .circlenumber { 
        width: 150px; 
        height:150px;
        line-height: 140px;
        font-size:60px;
        border-radius: 50%; 
        /*
        border:7px solid #e69e43;
        color:#e69e43;
        */
        border:7px solid #ededed;
        color:#ededed;
        font-weight:bold;
    } 

    .s3badge {
        height:35px;
    }
    
    .s3badge-text{
        font-size:1.5rem;
    }

    .s3badge2 {
        height:50px;
    }
    
    .s3badge2-text{
        font-size:1.75rem;
    }

    .s3subtext {
        padding-left:64px; 
        margin-top:-15px;
    }


    .btn-light {
        font-size: 1em;
    }

    .btn-white {
        font-size: 0.75em;
    }    

}


@media (min-width: 992px) {
    
    header {
        padding-top:20px;
    }

    .listing li {
        font-size: 1.125rem;
        line-height: 1.375em;
    }

    p {
        font-size: 1.125rem;
        line-height: 1.375em;
        margin-bottom:1.25em;
        font-weight:300;
    }    


}

@media (min-width: 1200px) {

    .header-container {
        max-width:1140px;
    }

    #text-overlay {
        position:absolute; 
        top:30%; left:15%; 
        width:400px;
    }

    h1,
    .h1 {
        font-size: 3.5em;
        line-height: 1.25em;
        font-weight: 500;
        margin-bottom:1em;
    }

    h2,
    .h2 {
        font-size: 3em;
        line-height: 1.125em;
        font-weight: 500;
        margin-bottom:1em;
    }
    h3,
    .h3 {
        font-size: 1.5rem;
        line-height: 1.75rem;
        font-weight: 500;
    }


    .mb2numbers {
        margin-bottom:75px;
    }

    .circlenumber { 
        width: 200px; 
        height:200px;
        line-height: 190px;
        font-size:80px;
        border-radius: 50%; 
        text-align: center; 
        border:7px solid #ededed;
        color:#ededed;
        font-weight:bold;
    }

    .s3badge-text{
        font-size:1.75rem;
    }

    .s3badge2 {
        height:60px;
    }
    
    .s3badge2-text{
        font-size:2rem;
    }

    .s3subtext {
        padding-left:73px; 
        margin-top:-20px;
    }


    #text-overlay {
        top:15%; left:15%; 
        width:350px;
    }

    .greybg,
    .worldbg {
        padding-top:125px;
        padding-bottom:125px;
    }    
    
}

@media (min-width: 1400px) {

    .container {
        max-width:1140px;
    }

    .greybg,
    .worldbg {
        padding-top:175px;
        padding-bottom:175px;
    }

    .s3badge2 {
        height:70px;
    }
    
    .s3badge2-text{
        font-size:2rem;
    }

    .s3subtext {
        padding-left:84px; 
        margin-top:-20px;
    }

    .mb2numbers {
        margin-bottom:100px;
    }

    .listing li {
        font-size: 1.125rem;
        line-height: 1.5em;
    }

}


@media (min-width: 1600px) {

}


@media (min-width: 1920px) {

}