@font-face {
font-family: 'nh-medium'; 
src: url(/assets/fonts/NeueHaasDisplayMedium.woff2); 
}
@font-face {
font-family: 'nh-roman'; 
src: url(/assets/fonts/NeueHaasDisplayRoman.woff2); 
}
@font-face {
font-family: 'nh-thin'; 
src: url(/assets/fonts/NeueHaasDisplayXThinItalic.woff2); 
}
@font-face {
font-family: 'nh-bold'; 
src: url(/assets/fonts/NeueHaasDisplayBold.woff2); 
}
@font-face {
font-family: 'nh-bold-italic'; 
src: url(/assets/fonts/NeueHaasDisplayBoldItalic.woff2); 
}
@font-face {
font-family: 'cursiva'; 
src: url(/assets/fonts/Mightambrush.woff2); 
}

.nh-medium{
font-family: 'nh-medium'; 
}
.nh-roman{
font-family: 'nh-roman'; 
}
.nh-bold{
font-family: 'nh-bold'; 
}
.nh-bold-italic{
font-family: 'nh-bold-italic'; 
}
.cursiva{
font-family: 'cursiva'; 
}
.nh-thin-italic{
font-family: 'nh-thin';
}
body{
margin: 0px;
padding: 0px;
font-family: 'nh-roman'; 
}
p{
font-size: 1.4rem;
}
.text-right{
text-align: right;
}
.text-justify{
text-align: justify;
}
.navbar-toggler:focus {
box-shadow: none;
}
.float-button{
position: fixed;
bottom: 20px;
right: 20px;
background-color: #4cca5a;
border-radius: 50px;
padding: 15px 15px;
text-decoration: none;
z-index: 2;
}
.uppercase{
text-transform: uppercase;
}
.navbar-expand-lg .navbar-nav {
gap: 30px;
align-items: center;
}
.relative{
position: relative;
}
.black-section{
background-color: #000000;
color: #ffffff;
}
.custom-titles{
font-size: 10rem;
letter-spacing: -11px;
}
.nav-button, .nav-button:hover, .nav-button:active, .nav-button:focus{
background-color: #000000;
color: #ffffff;
border-radius: 50px;
width: 125px;
text-align: center;
font-family: 'nh-roman';
padding: 5px;
font-size: 1.3rem;
text-decoration: none;
padding: 10px 15px;
}
.main-container{
width: 95%;
margin: auto;
}
.d-block{
display: block;
}
.footer-gradient{
background: #d1d1d1;
background: linear-gradient(180deg, rgba(209, 209, 209, 1) 0%, rgba(238, 238, 238, 1) 100%);
display: flex;
flex-direction: column;
align-items: center;
padding: 0px 0px;
}
.nav-link{
color: #000000;
font-family: 'nh-medium'; 
font-size: 1.8rem;
}
.nav-brand{
display: flex;
align-items: center;
}
.nolink{
text-decoration: none;
color: inherit;
}
input:focus-visible, textarea:focus-visible, select:focus-visible {
outline: none;
}
.contact-link{
color: #000000;
font-family: 'nh-bold';  
}
/*********************************/
/*******   HOME  SECTION *********/
/*********************************/
.home-header-section{
margin-bottom: 100px;
}
.home-projects-section{
margin-bottom: 100px; 
}
.home-peaceful-places-section{
margin-bottom: 100px; 
margin-top: 20px;
}
.peaceful-text-1, .peaceful-text-2, .peaceful-text-3, .peaceful-text-2-2{
text-transform: uppercase;
position: absolute;
font-family: 'nh-bold';
color: #ffffff;
}
.peaceful-text-2{
right: 30px;
top: 40%;
display: inline-block;
width: auto;
text-align: right;
}
.peaceful-text-t1{
font-size: 7.5vw;
line-height: 10vw;
display: block;
}

.peaceful-text-t2{
font-size: 10vw;
line-height: 6vw;
display: block;
}
.peaceful-text-1{
left: 40px;
display: inline-block;
font-size: 2.5vw;
top: 40px;
line-height: 2.5vw;
}
.peaceful-text-3{
right: 40px;
display: inline-block;
font-size: 2.5vw;
bottom: 40px;
line-height: 2.5vw;
}
.home-second-nav{
display: flex;
justify-content: space-between;
align-items: center;
font-family: 'nh-roman'; 
font-size: 21px;
line-height: 22px;
margin-bottom: 10px;
}
.home-second-nav p{
max-width: 150px;
}
.home-image-grid-caption {
position: absolute;
left: 80px;
bottom: 10px;
width: 100px;
font-size: 1.4rem;
line-height: 1.5rem;
color: #ffffff;
text-transform: uppercase;
}
.home-image-grid-caption span{
font-size: 2.2rem;
font-family: 'nh-medium';
}
.home-banner {
position: relative;
width: 100%;
}

.home-banner img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
}

.home-images-grid-right-text{
font-size: 23px;
padding: 0px 10px;
}
.line{
display: block;
background-color: #000000;
width: 100px;
height: 1px;
margin-bottom: 30px;
}
.home-projects-grid-images{
display: flex;
flex-wrap: nowrap;
}
.home-projects-grid-images img{
width: 50%;
}
.home-middle-text{
font-size: 2rem;
line-height: 2.5rem;
}
.home-black-section{
padding: 100px 200px 0px 200px;
min-height: 500px;
display: flex;
align-items: center;
}
.home-we-are-image{
position: absolute;
right: 50px;
width: 450px;
top: 40px;
}
.black-section-prefooter{
background-color: #000000;
color: #ffffff;
height: 200px;
width: 100%;
display: flex;
align-items: center;
gap: 40px;
}
.home-black-section-line{
width: 75%;
height: 3px;
background: #5c5c5c;
background: linear-gradient(284deg, rgba(92, 92, 92, 1) 1%, rgba(0, 0, 0, 1) 100%);
}
.home-black-section-studio{
letter-spacing: 26px;
font-size: 2.2rem;
font-family: 'nh-medium';
}
.home-meet-light-subtitle{
font-size: 7rem;
font-family: 'nh-thin';
line-height: 4rem;
}
.home-meet-armando-image{
width: fit-content;
margin: auto;
text-align: right;
position: relative;
}
.home-meet-armando-view-more{
position: absolute;
font-size: 30px;
font-weight: bolder;
top: 43%;
left: -200px;
}
.home-meet-armando-view-more::after {
content: "";
position: absolute;
left: 0;
bottom: -2px;         
width: 200%;          
height: 2px;          
background-color: #000; 
}
.home-project-caption{
font-size: 3rem;
line-height: 3rem;
}
.meet-title{
font-size: 7rem;
letter-spacing: -10px;
line-height: 7.5rem;
}
.p-max{
font-size: 1.8rem;
}
.p-lh-max{
line-height: 2.2rem;
}
.home-form-contact-section{
border-top: solid 2px #000000;
margin-top: 80px;
padding: 100px 0px 100px 0px;
}
.input{
border: solid 1px #000000;
width: 100%;
padding: 8px 15px;
font-size: 1rem;
margin-bottom: 5px;
border-radius: 50px;
}
.label-form-contact{
font-size: 1.2rem;
font-family: 'nh-medium';
margin-bottom: 5px;
display: block;
text-transform: capitalize;
}
.home-m-a-appointment-title{
font-size: 4.5rem;
font-family: 'nh-medium';
line-height: 4.5rem;
}

/*********************************/
/*******   ABOUT SECTION *********/
/*********************************/

.about-we-do-section{
min-height: 600px;
display: flex;
align-items: center;
justify-content: center;
}
.about-indent-lines {
padding-left: 24px;  
text-indent: -110px;   
}
.about-indent-text{
font-size: 4rem;
font-family: 'nh-medium';
}

.about-indent-left-line{
position: absolute;
left: -98%;
width: 98%;
height: 3px;
background-color: #000000;
top: 3.6rem;
overflow: hidden;
}

.about-form-contact-section{
padding: 100px 0px 48px 0px;
background-color: #5a6b6d;
}
.about-input{
background-color: #5a6b6d;
border: solid 2px #ffffff;
color: #ffffff;
width: 100%;
padding: 8px 15px;
font-size: 1rem;
margin-bottom: 10px;
border-radius: 50px;
}
.about-label-form-contact{
font-size: 1.2rem;
font-family: 'nh-medium';
margin-bottom: 5px;
display: block;
color: #ffffff;
text-transform: capitalize;
}
#about-second-paragraph-section{
margin-bottom: 100px;
}
/*********************************/
/*****     PROJECT SECTION ******/
/*********************************/
.projects-row {
display: flex;
align-items: stretch;
justify-content: flex-end;
gap: 12px;
overflow-x: hidden;
}

.projects-row .project-img {
object-fit: cover;
height: 500px;
}

.projects-5050 .left-img {
flex: 0 0 50%; 
margin-left: 10px; 
}

.projects-5050 .right-img {
flex: 0 0 50%;
}


/*********************************/
/*****    ARMANDO URIBE ******/
/*********************************/
.au-light-subtitle{
font-size: 6rem;
font-family: 'nh-thin';
line-height: 4rem;
letter-spacing: -4px;
}
.armando-paragraph{
text-align: justify;
padding: 0px 80px 0px 50px;
}
.armando-second-paragraph{
text-align: justify;
padding: 0px 60px 0px 60px;  
}
.armando-header-2{
position: relative;
display: block;
margin-left: auto;
margin-right: auto;
top: -120px;
}
#armando-section-1{
z-index: 2;
}
#armando-section-2{
z-index: 2;
top: -100px;
}
.armando-second-paragraph-images{
position: relative;
top: -150px;
}
.armando-sign-image{
position: relative;
top: -150px;
}
.armando-splide-caption{
position: absolute;
bottom: 40px;
left: 20px;
font-size: 1.3rem;
}
.armando-splide-caption-title {
position: relative; 
display: inline-block;
padding-bottom: 5px; 
margin-bottom: 5px;
}
.armando-splide-caption-title::after {
content: '';
position: absolute;
left: 0;
bottom: 0;
width: 70px;         
height: 2px;         
background-color: #010101; 
}
.armando-splide-caption-subtitle{
font-size: 1rem; 
line-height: 1.2rem;
display: block;
}
.armando-form-contact-section{
padding: 100px 0px 48px 0px;
background-color: #5a6b6d;
}
#armando-social-media{
min-height: 150px;
display: flex;
align-items: center;
justify-content: center;
position: relative;
padding-bottom: 50px;
}
.armando-social-media-linea{
width: 100%;
height: 1.5px;
background-color: #000000;
position: absolute;
z-index: -1;
}
.armando-social-media{
display: flex;
align-items: center;
justify-content: center;
gap: 30px;
background-color: #ffffff;
padding: 0px 30px;
}
.armando-splide-title{
font-family: 'nh-medium';
padding-left: 100px;
padding-bottom: 30px;
font-size: 3rem;
}
#armando-splide-section{
top: -150px;
}

/*********************************/
/*****       SERVICES       ******/
/*********************************/
.discovery-title,
.imagination-title,
.construction-title{
line-height: 0px;
}
#servicesAccordion{
margin-top: 80px;
}
.accordion-left-top-line{
position: absolute;
z-index: 3;
width: 50px;
height: 1px;
background-color: #000000;
display: block;
top: 0px;
left: -50px;
}
.services-content{
padding-top: 150px;
}
.services-title{
font-family: 'nh-bold';
font-size: 3.5rem;
}
.service-title{
font-family: 'nh-bold';
font-size: 3.5rem; 
}
.service-subtitle{
font-family: 'cursiva'; 
font-size: 5rem;   
}
.service-lh-0{
line-height: 0px;
}
.service-content{
display: flex;
flex-direction: column;
justify-content: center;
min-height: 500px;
}
.service-link-more{
color: #ffffff;
}
.services-form-contact-section{
padding: 100px 0px 48px 0px;
background-color: #000000;
}
.services-input{
background-color: #000000;
border: solid 2px #ffffff;
color: #ffffff;
width: 100%;
padding: 8px 15px;
font-size: 1rem;
margin-bottom: 10px;
border-radius: 50px;
}
.services-prefooter-title{
font-size: 2.8rem;
}
#services-collapse-details{
margin: 100px auto 100px auto;
width: 60%;
}
.services-collapse-title{
font-size: 2.8rem;
line-height: 2.4rem;
}
.service-collapse-paragraph{
font-size: 1rem;
}
.services-circle-image{
margin-top: 70px;
}
.accordion-left-bullet{
position: absolute;
width: 10px;
height: 10px;
display: block;
background-color: #000000;
z-index: 3;
border-radius: 50px;
left: -5px;
top: 20px;
}

/*********************************/
/*****     CONTACT SECTION ******/
/*********************************/
.contact-view{
min-height: calc(100vh - 320px);
display: flex;
flex-direction: column;
justify-content: center;
background-color: #000000;
padding-top: 50px;
padding-bottom: 50px;
}
.contact-input {
background-color: #000000;
border: solid 2px #ffffff;
color: #ffffff;
width: 100%;
padding: 8px 15px;
font-size: 1rem;
margin-bottom: 10px;
border-radius: 50px;
}
.form-button{
border-radius: 50px;
padding: 10px 0px;
text-transform: uppercase;
font-family: 'nh-medium';
letter-spacing: 1px;
}
.form-dark-button, .form-dark-button:hover, .form-dark-button:active{
background-color: #000000!important;
color: #ffffff!important;
}
.form-light-button, .form-light-button:hover, .form-light-button:active{
background-color: #ffffff!important;
color: #000000!important;
}
.invalid-message{
color: #a40000;
text-align: right;
font-size: 15px;
font-family: 'nh-medium';
margin-bottom: 12px;
}
/*********************************/
/*****    MEDIA QUERIES ******/
/*********************************/
@media (max-width: 1399px) {
.armando-paragraph{
padding: 0px 0px 0px 0px;
}
.armando-second-paragraph {
padding: 0px 0px 0px 0px;
}
.navbar-expand-lg .navbar-nav {
gap: 0px!important;
}
}

@media (max-width: 1200px) {
    .nav-link{
    font-size: 1.5rem;
    }
    .nav-button, .nav-button:hover, .nav-button:active, .nav-button:focus{
    font-size: 1.2rem;
    }
    .nav-brand img{
    width: 300px;
    }
    .navbar-expand-lg .navbar-nav {
    gap: 0px;
    }
}

@media (max-width: 1199px) {
    .armando-paragraph p, .armando-second-paragraph p{
    font-size: 1.1rem;
    }
    .p-max {
    font-size: 1.4rem;
    }
    a.nav-link {
    font-size: 1.5rem;
    }
}

@media (max-width: 991px) {
    .home-black-section{
    flex-direction: column;
    padding: 0px 80px 0px 80px;
    min-height: 500px;
    display: flex;
    align-items: center;
    }
    .home-we-are-image{
    position: relative;
    right: 0px;
    left: 0px;
    width: 250px;
    top: 40px;
    }
    .home-black-section-studio{
    letter-spacing: 18px;
    font-size: 1.5rem;
    font-family: 'nh-medium';
    }
    .home-meet-armando-view-more{
    top: unset;
    left: 0px;
    right: 0px;
    margin: auto;
    text-align: center;
    bottom: 150px;
    color: #000000;
    border-bottom: solid 1px #000000;
    width: fit-content;
    padding: 0px 30px;
    font-size: 1.5rem;
    }
    .home-meet-armando-photo{
    width: 450px;
    }
    .home-meet-armando-view-more::after {
    display: none;
    }
    #services-collapse-details{
    margin: 100px auto 100px auto;
    width: 90%;
    }
    .armando-header-2{
    width: 80%;
    top: -50px;
    }
    #armando-section-2 {
    top: -50px;
    }
    .armando-second-paragraph-images {
    top: -70px;
    }
    .armando-sign-image {
    top: -50px;
    }
    #armando-splide-section {
    top: -50px;
    }
    .home-image-grid-caption {
    right: 40px;
    bottom: 5px;
    font-size: 1.2rem;
    line-height: 1.2rem;
    }
    .service-design-subtitle {
    right: 0px;
    }
    .service-content{
    margin-top: 150px;
    }
    .service-master-subtitle {
    top: 100px;
    }
    .tab-content{
    padding-bottom: 50px;
    }
    .navbar{
    background-color: #000000!important;
    }
    .nav-link {
    color: #ffffff!important;
    }

    .navbar-image-filter{
    filter: invert(100%);
    }
    .navbar-toggler {
    color: rgb(255 255 255);
    background-color: #ffffff00;
    border: var(--bs-border-width) solid rgb(255 255 255);
    }

    .contact-view{
    min-height: auto;
    padding-bottom: 50px;
    }

}

@media (max-width: 767px) {
    .tab-content{
    padding-bottom: 50px;
    }
    .imagination-title{
    line-height: 3rem;
    }
    .accordion-left-top-line{
    display: none;
    }
    .home-form-contact-section{
    padding: 60px 40px 48px 40px;
    }
    .about-indent-lines {
    padding-left: 0px;  
    text-indent: 0px;   
    }
    .about-we-do-section {
    padding: 0px 40px 0px 40px;
    }
    .armando-header-2 {
    width: 100%;
    top: 0px;
    margin-top: 25px;
    }
    #armando-section-2 {
    top: 0px;
    }
    .armando-second-paragraph-images {
    top: 0px;
    }
    .armando-sign-image {
    top: 0px;
    }
    #armando-splide-section {
    top: 0px;
    margin-top: 50px;
    }
    .armando-paragraph p, .armando-second-paragraph p{
    font-size: 0.8rem;
    }
    .meet-title {
    font-size: 6rem;
    letter-spacing: -10px;
    line-height: 6.5rem;
    }
    .home-meet-light-subtitle {
    font-size: 5rem;
    font-family: 'nh-thin';
    line-height: 5rem;
    }
    .home-header-section{
    margin-bottom: 50px;
    }
    .home-middle-text{
    font-size: 1.8rem;
    line-height: 2.3rem;
    }
    .services-content{
    padding-top: 150px; 
    }
    .services-list {
    gap: 0px!important;
    }
    .service-content {
    justify-content: center;
    min-height: auto;
    margin-top: 100px;
    }
    .service-paragraph {
    font-size: 1.2rem!important;
    }
}

@media (max-width: 575px) {
    .armando-paragraph p, .armando-second-paragraph p{
    font-size: 1.2rem;
    }
    .armando-paragraph{
    margin-top: 20px;
    }
    #armando-social-media {
    min-height: 250px;
    padding-bottom: 0px;
    }
    .home-image-grid-caption {
    right: 6px;
    bottom: 0px;
    font-size: 1rem;
    line-height: 1rem;
    }
    .home-image-grid-caption span {
    font-size: 1.5rem;
    }
    .home-m-a-appointment-title {
    font-size: 3rem;
    line-height: 3rem;
    padding-bottom: 10px;
    }
    .meet-title {
    font-size: 3.5rem;
    letter-spacing: -4px;
    line-height: 2rem;
    }
    .home-meet-light-subtitle {
    font-size: 4rem;
    font-family: 'nh-thin';
    line-height: 4rem;
    }
    .custom-titles {
    font-size: 5rem!important;
    letter-spacing: -6px!important;
    }
    .p-max{
    font-size: 1.2rem;
    }
    .p-lh-max{
    line-height: 1.5rem;   
    }
    p {
    font-size: 1.2rem!important;
    }
    .home-project-caption{
    font-size: 2rem;
    line-height: 2rem;
    }
    .home-middle-text{
    font-size: 1.2rem;
    line-height: 1.8rem;
    }
    .home-black-section{
    padding: 0px 40px 0px 40px;
    }
    .home-black-section-studio {
    letter-spacing: 15px;
    font-size: 1rem;
    }
    .black-section-prefooter {
    gap: 15px;
    }
    .footer-logo{
    width: 150px;
    }
    .peaceful-text-2{
    top: 35%;
    }
    .peaceful-text-1{
    left: 40px;
    font-size: 1rem;
    top: 40px;
    line-height: 1rem;
    }
    .peaceful-text-3{    
    font-size: 1rem;
    bottom: 30px;
    line-height: 1rem;
    }
    .about-we-do-section {
    min-height: 400px;
    margin-top: 50px;
    }
    #about-second-paragraph-section{
    margin-bottom: 50px;
    }
    .projects-text-details{
    font-size: 1rem!important;
    }
    .armando-splide-title{
    padding-left: 20px;
    padding-bottom: 10px;
    font-size: 2rem;
    }
    .au-light-subtitle{
    font-size: 4rem;  
    }
    .service-subtitle{    
    font-size: 5rem!important;   
    }
    .service-design-subtitle {
    right: 100px;
    }
    .service-intelligence-subtitle{
    right: 0px;
    }
}

@media (max-width: 511px) {
    .discovery-title, .imagination-title, .construction-title{
    line-height:3rem;
    }
    .service-of-the-concept-subtitle {
    top: 25px;
    }
    .service-title {    
    font-size: 3rem;
    }
    .service-subtitle {
    font-size: 4rem!important;
    }
    .service-master-subtitle {
    top: 28px;
    }
}

@media (max-width: 470px) {
    .home-meet-armando-photo{
    width: 100%;
    }
    .nav-brand img {
    width: 250px;
    }
}

@media (max-width: 441px) {
    .service-of-the-concept-subtitle {
    top: 90px;
    } 
    .service-master-subtitle {
    top: 90px;
    } 
}