.rambla-regular {
    font-family: "Rambla", sans-serif;
    font-weight: 400;
    font-style: normal;
}

.rambla-bold {
    font-family: "Rambla", sans-serif;
    font-weight: 700;
    font-style: normal;
}
.menu-button {
    display: none !important;
}
.rambla-regular-italic {
    font-family: "Rambla", sans-serif;
    font-weight: 400;
    font-style: italic;
}

.rambla-bold-italic {
    font-family: "Rambla", sans-serif;
    font-weight: 700;
    font-style: italic;
}
.button {
    text-decoration: none;
    background-color: #273F4F;
    width: min-content !important;
    border-radius: 10px;
    font-size: 1.5em;
    color: white;
    border: 4px solid black;
    text-align: center;
    display: inline-block !important;
    padding: 0.25em 0.75em; /* Only enough padding for visual shape */
    margin: 0; /* Prevent accidental extra spacing */
    line-height: 1; /* No weird spacing vertically */
    cursor: pointer;
    text-align: center;
    margin: 0 auto;
}
.centered-text{
    text-align:center
}
.button:hover {
    color: black;
    background-color: #EFEEEA;
}
.sticky {
    position: fixed;
    width: 100%;
    z-index: 99;
}
main{padding-bottom:0px;}
html {
    font-size: 14px;
    overflow-x: hidden;
    font-family: Tahoma, sans-serif;
}
.navi-bar {
    padding-left: 10%;
    padding-top: 15px;
    padding-bottom: 20px;
    background-color: #273F4F;
    mask-image: linear-gradient(#273F4F 85%, transparent);
    color: white;
}
    .navi-bar p {
        font-size:1.2em;
        display: inline;
        color: white;
    }
.justify-end {
    margin-top: 26px;
    display: inline;
    float:inline-end;
    font-size:1.5em;
    margin-right: 10%;
}
.company-navi {
    color: white;
    text-decoration: none;
    font-size: 3.5em;
    display: inline;
    padding:0px;
    margin:0px;
}
.text-center{
    text-align:center;
}
    .company-navi:hover {
        color: white;
        text-decoration: none;
    }
.navi-links {
    display:inline;
    display: inline;
    font-size: 1.7em;
    margin-left: 2%;
}
.nav-link {
    display: inline;
    color: white;
    font-size: 1em;
    transition: 0.3s;
}
.nav-link:hover {
    color: #EFEEEA;
    font-size: 1.1em;
    text-decoration: underline;
}
.footer {
    background-color: #273F4F;
    color: white;
}
.footer a{
    color: white;
}
    .footer div a {
        color: white;
    }
    .footer a:hover {
        color: #FE7743;
    }
    .footer div a:hover {
        color: #4879C7;
    }
.container{
}
.btn:focus, .btn:active:focus, .btn-link.nav-link:focus, .form-control:focus, .form-check-input:focus {
  box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb;
}

html {
  position: relative;
  min-height: 100%;
}

body {
  margin-bottom: 60px;
}

img {
    width: 100%;
}
.image-container {
    position: relative;
    text-align: center;
    color: white;
    background-color: #273F4F;
}
    .image-container img {
        object-fit: cover;
        height: 720px;
        -webkit-filter: blur(3px);
        -moz-filter: blur(3px);
        -o-filter: blur(3px);
        -ms-filter: blur(3px);
        filter: blur(3px);
    }
.image-container-solutions {
    position: relative;
    text-align: center;
    color: white;
    background-color: #4A4C52;
}
    .image-container-solutions img {
        object-fit: cover;
        height: 440px;
        -webkit-filter: blur(3px);
        -moz-filter: blur(3px);
        -o-filter: blur(3px);
        -ms-filter: blur(3px);
        filter: blur(3px);
    }

.header {
    position: absolute;
    top: 30%;
    left: 15%;
}



.about-us-container {
    color: white;
    padding: 80px 10% 80px 10%;
    background-color: #273F4F;
    text-align:center;
}
    .about-us-container div h2 {
        font-size: 3.2em;
    }
    .about-us-container div p {
        font-size: 1.3em;
        width:70%;
        margin-left:auto;
        margin-right:auto;
    }

    .company-policy {
        font-size: 3.2em;
    }
.recent-projects{
    margin: 60px 10% 60px 10%; 
}
.recent-projects h2 {
    margin-bottom: 30px;
}
.split-horizontal img {
    margin-top: auto;
    max-width: 90%;
    height: 400px;
    padding-right: 0px;
    box-shadow: black 0px 2px 12px;
}

.split-horizontal {
    display: grid;
    grid-template-columns: 65% 30%;
    margin-bottom: 5em;
}
.indent-text{
    margin-left: 10px;
}
.split-horizontal-reverse img {
    margin-top: auto;
    margin-left: auto;
    max-width: 90%;
    height: 400px;
    object-fit: cover;
    box-shadow: black 0px 2px 8px !important;
    padding-right:0px !important;
}
.split-horizontal-reverse {
    display: grid;
    grid-template-columns: 30% 65%;
    padding-bottom: 5em;
}
footer{
    overflow-x:hidden;
}
.split-horizontal-reverse :first-child {
    padding-right: 10%
}
.project-goals {
    box-shadow: 0px 0px 10px #4A4C52 !important;
    background-color: #4A4C52;
}
.project-goals h2{
    color: white;
    font-weight:bold;
    font-size: 3em;
}
.goals-image {
    margin: 0px 1% 0px 1%;
    object-fit: cover;
    height: 40em;
    width: 98%;
    border-radius: 30px;
}
.quality-work-grid {
    display: grid;
    justify-content: center;
    grid-template-columns: 30% 30% 30%;
    column-gap: 2%;
    row-gap: 80px;
    transition-duration: 0.3s;
    padding-bottom: 80px;
    margin-top: 60px;
}
.quality-work-block {
    justify-content: center;
    text-align: center;
    transition-duration: 0.3s;
}
.quality-work-block img {
    justify-content: center;
    text-align: center;
    transition-duration: 0.3s;
}
.quality-work-block:hover {
    justify-content: center;
    text-align: center;
    transition-duration: 0.3s;
}

.quality-work-block img{
    height:310px;
    width:100%;
}
    .quality-work-block p {
        margin: 0px;
        background-color: #EFEEEA;
        border-radius: 0px 0px 10px 10px;
        font-size: 2em;
    }
.quality-work-block img{
    object-fit: cover;
    border-radius: 10px 10px 0px 0px;
}

.portfolio-container h1{
    margin-left: 16%;
    width: 84%;
}
.projects-grid{
    margin-top: 40px;
    display:grid;
    grid-template-columns: 30% 30%;
    grid-column-gap: 5%;
    row-gap: 50px;
    object-position:center;
    justify-content:center;
    text-align:center;
}

.project-block img{
    height:360px;
    width:100%;
    object-fit: cover;
    transition-duration: 0.3s;
}
.project-block  {
    transition-duration: 0.3s;
}
.project-block:hover img {
    height: 380px;
    width: 100%;
    object-fit: cover;
}
.hover-project:hover {
    border: 2px solid #4879C7;
    border-radius: 0px 0px 10px 10px;
}


.project-block h3 {
    margin-top: 25%;
}

.unhyper {
    color: black;
    text-decoration:none;
}
.project-page-container {
    width: 90%;
    margin: 0px 5% 60px 5%;
}

.project-page-header {
    text-align: center;
    margin-top:2px;
    padding: 50px 0px 50px 0px;
    background-color: #273F4F;
    color: white;
    margin-bottom: 40px;
}
.centered{
    display:grid;
    justify-content:center;
    width:100%
}
.project-images {
    width: 1108px;
    display: grid;
    grid-template-columns: 350px 450px 300px;
    column-gap: 2px;
    padding: 2px 2px 2px 2px;
    background-color: #273F4F;
}
.project-images-second {
    width: 1108px;
    display: grid;
    grid-template-columns: 450px 300px 350px;
    column-gap: 2px;
    background-color: #273F4F;
    padding: 0px 2px 2px 2px;
    justify-content: center;
}
.project-image {
    object-fit: cover;
    width: 100%;
    height: 350px;
    border: 2px solid dashed #D1C4B5;
}
.display-inline{
    display:inline-block;
}

.project-page-description{
    width: 80%;
    margin: 0px 10% 0px 10%
}

.service-grid-one {
    display: grid;
    grid-template-columns: 15% 15% 15%;
    column-gap: 3%;
    justify-content: center;
    text-align: center;
}
.service-grid-two {
    display: grid;
    grid-template-columns: 15% 15%;
    column-gap: 0px;
    column-gap: 3%;
    justify-content: center;
    text-align: center;
}
.service-grid-one div i {
    font-size: 3em;
    margin-bottom: 5px;
}
.service-grid-two div i {
    font-size: 3em;
    margin-bottom:5px;
}
.split-solutions img {
    margin-top: auto;
    margin-left: auto;
    max-width: 100%;
    height: 900px;
    object-fit:cover;
}
.split-solutions {
    display: grid;
    grid-template-columns: 35% 65%;
    place-items:center;
}
    .split-solutions div {
        padding-bottom: 5em;
        padding-top: 5em;
        margin-left: 4%;
        justify-content: center;
        color: #EFEEEA;
    }
    .split-solutions div h3{
        font-size:2.5em;
    }
    .split-solutions :first-child {
        padding-right: 10%
    }
.header-name {
    font-size: 7em;
    text-align: start;
    font-weight: bold;
}

@media (max-width: 1250px) {
    body {
        overflow-x: hidden;
    }

    .company-navi {
        font-size: 2.5em;
    }

    .nav-link {
        font-size: 1em;
    }

    .justify-end {
        margin-top: 0px;
        float: inherit;
        font-size: 1em;
        display: block;
    }

    .header {
        left: 10%;
    }

        .header h1 {
            font-size: 6em;
        }

        .header p {
            text-align: left;
        }

    .about-us-container {
        padding: 0px;
    }

        .about-us-container div h2 {
            margin: 0px;
            font-size: 3em;
            margin-bottom: 30px;
            display: block;
        }

        .about-us-container div {
            width: 100%;
            text-align: center;
            display: grid;
            grid-template-columns: 60%;
            justify-content: center;
        }

            .about-us-container div p {
                width: 100%;
            }

    .recent-projects {
        margin: 0%;
    }

    .split-horizontal {
        margin-left: 1%;
        margin-right: 1%;
        display: inherit;
        margin-bottom: 40px;
    }

        .split-horizontal img {
            max-width: 100%;
            margin-bottom: 40px;
        }

        .split-horizontal div {
            margin-left: 1%;
            margin-right: 1%;
            padding: 0%;
        }

            .split-horizontal div p {
                font-size: 1.2em;
            }

    .split-horizontal-reverse {
        display: inherit;
        margin-bottom: 40px;
        background-color: #273F4F;
        padding: 20px 0px 0px;
    }

        .split-horizontal-reverse img {
            max-width: 100%;
        }

        .split-horizontal-reverse div {
            margin-left: 1%;
            margin-right: 1%;
            padding: 0px;
        }

            .split-horizontal-reverse div h3 {
                color: white;
            }

            .split-horizontal-reverse div p {
                font-size: 1.2em;
                color: white;
            }

    .split-solutions {
        display: inherit;
    }

        .split-solutions img {
            display: none;
            max-height: 0px;
        }

    .quality-work-grid {
        margin-left: 5%;
        grid-template-columns: 90%;
    }

    .quality-work-block p {
        line-height: 80px;
    }

    .projects-grid {
        grid-template-columns: 75%;
    }

    .service-grid-one {
        grid-template-columns: 60%;
        grid-row-gap: 30px;
    }

    .service-grid-two {
        grid-template-columns: 60%;
        grid-row-gap: 30px;
        margin-bottom: 80px;
    }

    .project-images {
        width: 100%;
        display: grid;
        grid-template-columns: 100%;
        padding-left: 2px;
        justify-content: center;
    }

    .project-image {
        margin-bottom: 2px;
    }

    .centered {
        display: inherit;
    }

    .project-images-second {
        width: 100%;
        display: grid;
        grid-template-columns: 100%;
        padding-left: 2px;
        justify-content: center;
    }
    .menu-button {
        display: inline-block !important;
        font-size:3em !important;
        cursor: pointer;
    }
    .mobile-menu {
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-color: rgba(39, 63, 79, 0.95); /* dark overlay */
        color: white;
        display: none; /* hidden by default */
        flex-direction: column;
        justify-content: flex-start;
        align-items: center;
        padding-top: 60px;
        z-index: 9999;
    }
        .mobile-menu.open {
            display: flex;
        }
        .mobile-menu p {
            position: absolute;
            top: 20px;
            right: 25px;
            font-size: 28px;
            cursor: pointer;
            margin: 0;
        }
        .mobile-menu a {
            color: white;
            text-decoration: none;
            font-size: 30px;
            margin: 20px 0;
        }
        .mobile-menu a:hover {
            color: white;
            text-decoration: none;
            font-size: 40px;
            margin: 20px 0;
        }
    .hidden-mobile{
        display:none;
    }
    .project-page-header{
        padding-top:110px;
    }
    .recent-projects H2{
        margin-left:20px;
        margin-top:20px;
    }
    .split-horizontal-reverse div{
        margin-left:10px;
    }
}

.project-images-second{
    margin-bottom: 20px;
}

@media (max-width: 450px) {

}