
@font-face {
    font-family: 'texgyrepagella';
    src: url('../fonts/texgyrepagella/texgyrepagella-bold.woff2') format('woff2');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'texgyrepagella';
    src: url('../fonts/texgyrepagella/texgyrepagella-bold.woff2') format('woff2');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

/*--------------------------------------------------
    00. ONH - Variables
---------------------------------------------------*/
:root {

    /* Fonts Path */
    --path-fonts: "../fonts";

    /* Brand Colors */
    --onh-gold: #c8a977;
    --onh-gold-1: #c8a977;
    --onh-gold-light: #eadeca;
    --onh-bronze: #c8a977;

    /* Text Colors */
    --onh-color-body: #1f1f1f;
    --onh-color-grey: #495057;
    --onh-color-grey-1: #484848;
    --onh-color-grey-2: #777;
    --onh-color-grey-3: #222;
    --onh-color-grey-4: #666;
    --onh-color-grey-6: #444;
    --onh-color-grey-light: #eff1f4;

    /* Cream Shades */
    --onh-cream-light: #FAF8F5;
    --onh-cream-medium: #f3ede1;

    /* Theme Variants */
    --onh-nya-dark: #CDA787;
    --onh-nya-light: #EFE3D3;

    --onh-mara-dark: #6ca6a5;
    --onh-mara-light: #d4e5e4;

    /* Base Colors */
    --white: #ffffff;

    /* Fonts */
    --font-optima: 'Optima', serif;
	--font-texgyrepagella: 'texgyrepagella', serif;
}

/* Apply globally */
body {
    font-family: var(--font-texgyrepagella);
}

h1, h2, h3, h4, h5, h6{
    letter-spacing: 0.02em;
    font-family: var(--font-texgyrepagella) !important;
	color: var(--onh-color-grey-3);
}

p{
	margin: 0 !important;
    font-family: var(--font-texgyrepagella);
	font-size: 13px;
}

.wpcf7 .wpcf7-form input[type=password], .wpcf7 .wpcf7-form input[type=email], .wpcf7 .wpcf7-form input[type=text], .wpcf7 .wpcf7-form input[type=file], .wpcf7 .wpcf7-form textarea {
    font-family: "Optima";
    font-size: 15px;
}


.onh-form input[type="password"]:focus,
.onh-form input[type="email"]:focus,
.onh-form input[type="text"]:focus,
.onh-form input[type="file"]:focus,
.onh-form input[type="radio"]:focus,
.onh-form input[type="checkbox"]:focus,
textarea:focus {
    outline: none;
}

.onh-form input[type="password"],
.onh-form input[type="email"],
.onh-form input[type="text"],
.onh-form input[type="file"],
.onh-form textarea {
    max-width: 100%;
    margin-bottom: 15px;
    padding: 10px 0;
    height: auto;
    background-color: transparent;
    -webkit-box-shadow: none;
    box-shadow: none;
    border-width: 0 0 1px;
    border-style: solid;
    display: block;
    width: 100%;
    line-height: 1.5em;
    font-family: 'Barlow', sans-serif;
    font-size: 15px;
    font-weight: 400;
    color: #666;
    background-image: none;
    border-bottom: 1px solid #ececec;
    border-color: ease-in-out .15s, box-shadow ease-in-out .15s;
}
input:focus,
textarea:focus {
    border-bottom-width: 1px;
    border-color: #aa8453;
}
input[type="submit"],
input[type="reset"],
input[type="button"],
button {
    text-shadow: none;
    -webkit-box-shadow: none;
    box-shadow: none;
    line-height: 1.75em;
    -webkit-transition: background-color .15s ease-out;
    transition: background-color .15s ease-out;
    background: transparent;
    border: 0px solid transparent;
}
input[type="submit"]:hover,
input[type="reset"]:hover,
input[type="button"]:hover,
button:hover {
    border: 0px solid transparent;
}

.wpcf7 .wpcf7-form input[type=submit] {
    font-family: "Optima";
    /* background-color: #000; */
    cursor: pointer;
}

input[type="submit"] {
    font-weight: 400;
    font-family: 'Gilda Display', serif;
    text-transform: uppercase;
    background: #aa8453;
    color: #fff;
    padding: 8px 24px;
    margin: 0;
    position: relative;
    font-size: 15px;
    letter-spacing: 3px;
}

/* .wpcf7 .wpcf7-form input[type=submit]:hover {
    background-color: #1f1f1f;
} */

.modal-header .btn-close {
	border: none;
}

.modal-header .btn-close:hover {
	background-color: transparent !important;
}

.contact-form-Modal .modal-header {
	padding: 1rem 2rem;
}


/* .cf7-btn{
    position:relative;
    display:inline-block;
    overflow:hidden;
}

.cf7-btn input{
    position:relative;
    background:#000;
    color:#fff;
    padding:12px 30px;
    cursor:pointer;
    z-index:2;
}

.cf7-btn::before{
    content:"";
    position:absolute;
    top:0;
    left:0;
    width:0%;
    height:100%;
    background:#fff;
	transition: width .45s cubic-bezier(.77,0,.18,1);
    z-index:1;
}

.cf7-btn:hover::before{
    width:100%;
}

.cf7-btn:hover input[type=submit] {
	background-color: transparent;
}

.cf7-btn:hover input{
    color:#000;
}

.cf7-btn .wpcf7-spinner {
	position: absolute;
} */

.cf7-btn{
    position: relative;
    display: inline-block;
    overflow: hidden;
    background: #000;
    border: 1px solid #000;
}

.cf7-btn::before{
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 100%;
    background: #fff;
    transition: width .45s ease;
    z-index: 1;
}

.cf7-btn:hover::before{
    width: 100%;
}

.cf7-btn input[type="submit"]{
    position: relative;
    z-index: 2;
    background: transparent !important;
    color: #fff;
    border: 0 !important;
    box-shadow: none !important;
    padding: 7px 30px;
    margin: 0;
    cursor: pointer;
    transition: color .3s ease;
}

.cf7-btn:hover input[type="submit"]{
    background: transparent !important;
    color: #000;
}

.cf7-btn .wpcf7-spinner {
	position: absolute;
}

/****================***/

/* FULL WIDTH HEADER */



.lux-header{
width:100%;
background:#000;
position:relative;
z-index:999;
}

/* INNER CONTENT */

.lux-header-inner{
width:100%;
display:flex;
align-items:center;
justify-content:space-between;
padding:22px 60px;
box-sizing:border-box;
}

/* LOGO */

.lux-logo img{
height:40px;
width: auto;
}

/* MENU */

.lux-nav ul{
display:flex;
gap:40px;
list-style:none;
margin:0;
padding:0;
}

.lux-nav a{
color:#fff;
text-decoration:none;
font-size:13px;
letter-spacing:2px;
text-transform:uppercase;
transition:.3s;
}

.lux-nav a:hover{
	/* opacity:.7; */
	color:#fff;
}

.lux-nav a{
    position:relative;
    color:#fff;
    text-decoration:none;
    font-size:13px;
    letter-spacing:2px;
    text-transform:uppercase;
}

/* underline */
.lux-nav a::after{
    content:'';
    position:absolute;
    left:0;
    bottom:-6px;
    width:100%;
    height:1px;
    background:#fff;

    transform:scaleX(0);
    transform-origin:left;
    transition:transform .35s ease;
}

/* hover animation */
.lux-nav a:hover::after{
    transform:scaleX(1);
}

/* reverse animation */
.lux-nav a:not(:hover)::after{
    transform-origin:right;
}


/* Header base */

.lux-header{
position:fixed;
top:0;
left:0;
width:100%;
background:#000;
z-index:999;
transition:transform .4s ease;
}

/* hidden state */

.lux-header.hide-header{
transform:translateY(-100%);
}

/* visible state */

.lux-header.show-header{
transform:translateY(0);
}


.hamburger{
display:none;
flex-direction:column;
cursor:pointer;
gap:6px;
}

.hamburger span{
display:block;
height:2px;
background:#fff;
transition:.4s;
}

.hamburger span:nth-child(1){
width:28px;
}

.hamburger span:nth-child(2){
width:16px;
}

.hamburger span:nth-child(3){
width:28px;
}

.hamburger.active span:nth-child(1){
transform:rotate(45deg) translate(5px,5px);
width:28px;
}

.hamburger.active span:nth-child(2){
opacity:0;
transform: scaleX(0);

}

.hamburger.active span:nth-child(3){
transform:rotate(-45deg) translate(6px,-6px);
width:28px;
}



.mobile-overlay{
position:fixed;
top:0;
left:-100%;
width:100%;
height:100vh;
background:#000;
display:flex;
align-items:center;
justify-content:center;
transition:.5s ease;
z-index:998;
}

.mobile-overlay.active{
left:0;
}

.mobile-menu{
display:flex;
flex-direction:column;
gap:30px;
text-align:center;
}

.mobile-menu  ul {
	list-style: none;
	display: flex;
    flex-direction: column;
    gap: 30px;
    list-style: none;
}

.mobile-menu a{
color:#fff;
font-size:22px;
text-decoration:none;
letter-spacing:3px;
}

@media(max-width:900px){

.lux-nav{
display:none;
}

.hamburger{
display:flex;
}

}

/* MOBILE TOGGLE */

.lux-toggle{
display:none;
font-size:28px;
color:#fff;
cursor:pointer;
}

@media(max-width:900px){

.lux-nav{
display:none;
position:absolute;
top:80px;
left:0;
width:100%;
background:#000;
}

.lux-nav ul{
flex-direction:column;
padding:30px;
gap:20px;
}

.lux-nav.active{
display:block;
}

.lux-toggle{
display:block;
}

.lux-header-inner {
	padding: 22px 20px;
}

}


/**
* Project Highlisht
*/

.onh-project-highlights{
display:grid;
gap:10px;
row-gap: 15px;
}

/* Layout 1 */

.onh-project-highlights.layout1{
grid-template-columns:repeat(12,1fr);
}

.onh-project-highlights.layout1 .project-card:nth-child(-n+3){
grid-column:span 4;
}

.onh-project-highlights.layout1 .project-card:nth-child(n+4){
grid-column:span 3;
}

/* Layout 2 */

.onh-project-highlights.layout2{
grid-template-columns:repeat(3,1fr);
}

/* image */

.project-image{
overflow:hidden;
display:block;
}

.project-image img{
width:100%;
height:auto;
transition:transform .5s ease;
}

/* hover zoom */

.project-card:hover img{
transform:scale(1.08);
}

/* title */

.project-title{
margin-top:5px;
text-align:left;
}

h5.project-title{
	font-size: 0.9rem;
	margin-bottom: 0px;
	line-height: 1.2rem;
}

.project-title a{
color:inherit;
text-decoration:none;
}

/* pagination wrapper */

.onh-swiper-pagination{
    text-align:center;
    margin-top:10px;
}

/* bullets */

.onh-swiper-pagination .swiper-pagination-bullet{
    width:8px;
    height:8px;
    background:#cfcfcf;
    opacity:1;
    margin:0 5px;
    border-radius:50%;
    transition:all .3s ease;
}

/* active bullet */

.onh-swiper-pagination .swiper-pagination-bullet-active{
    background:#000;
    transform:scale(1.1);
	 width:20px;
    border-radius:6px;
}

/* 3 column layout */

.onh-project-highlights.layout3 .project-row{
	display:flex;
	gap:10px;
	margin-bottom:0px;
}

.onh-project-highlights.layout3 .project-card{
	width:33.333%;
}

/* responsive */

@media (max-width:768px){

	.onh-project-highlights.layout3 .project-row{
		flex-direction:column;
	}

	.onh-project-highlights.layout3 .project-card{
		width:100%;
	}

	.onh-project-highlights.layout3 {
		row-gap: 0px;
	}

}

@media (max-width:767px){

	.layout3 .project-row{
    	display:contents;
	}

}

/*
* Admin customize css
**/

/* Align counters */
.counter-section .elementor-widget-counter {
    text-align: center;
    padding: 20px 30px;
}

/* Divider line between counters */
.counter-section .e-con-inner > .elementor-widget-counter {
    border-right: 1px solid #e5e5e5;
}

/* Remove last divider */
.counter-section .e-con-inner > .elementor-widget-counter:last-child {
    border-right: none;
}

/* Counter number */
.counter-section .elementor-counter-number-wrapper {
    font-size: 46px;
    font-weight: 600;
    line-height: 1;
}

/* Counter title */
.counter-section .elementor-counter-title {
    font-size: 14px;
    line-height: 1.5;
    max-width: 160px;
    margin: 8px auto 0;
}


.elementor-element.clients-slider .swiper {
    width: calc(100% - 130px);
}

.elementor-image-carousel-wrapper img{
    height:100px;
    width:auto;
    object-fit:contain;
}

/*
.clients-slider .swiper-wrapper{
    transition-timing-function: linear !important;
}*/


.btn-slide{
    position: relative;
    overflow: hidden;
    background: #000;
    color: #fff;
    border: 1px solid #000;
    transition: color .2s ease;
}

.btn-slide::before{
    content:"";
    position:absolute;
    top:0;
    left:0;
    width:0%;
    height:100%;
    background:#fff;
    transition:width .4s ease;
    z-index:0;
}

.btn-slide:hover::before{
    width:100%;
}

.btn-slide:hover a{
    color:#000;
}

.btn-slide span{
    position:relative;
    z-index:1;
}

.btn-slide-white{
    position: relative;
    overflow: hidden;
    background: #fff;
    color: #000;
    border: 1px solid #000;
    transition: color .2s ease;
}

.btn-slide-white::before{
    content:"";
    position:absolute;
    top:0;
    left:0;
    width:0%;
    height:100%;
    background:#000;
    border: 1px solid #fff;
    transition:width .4s ease;
    z-index:0;
}

.btn-slide-white:hover::before{
    width:100%;
}

.btn-slide-white:hover a{
    color:#fff !important;
}

.btn-slide-white span{
    position:relative;
    z-index:1;
}

.img-zoom{
    overflow:hidden;
}

.img-zoom img{
    transition: transform .6s ease;
}

.img-zoom:hover img{
    transform: scale(1.1);
}

.smart-header{
    transition: transform .35s ease;
}

.smart-header.hide-header{
    transform: translateY(-100%);
}


.stats-dots{
display:none;
}


@media (max-width:767px){
	
	 .stats-dots{
        display:block;
        text-align:center;
        margin-top:15px;
    }

    .stats-dots span{
        display:inline-block;
        width:8px;
        height:8px;
        background:#cfcfcf;
        border-radius:50%;
        margin:0 4px;
        cursor:pointer;
    }

    .stats-dots span.active{
        background:#555;
    }
	
	.stats-scroll{
cursor:grab;
}

.stats-scroll:active{
cursor:grabbing;
}

	.stats-scroll{
padding-left:15px;
padding-right:15px;
}


	
	.stats-scroll{
scroll-snap-type:x mandatory;
scroll-behavior:smooth;
}

    .stats-scroll{
        display:flex !important;
        flex-direction:row !important;
        flex-wrap:nowrap !important;
        justify-content:flex-start !important;
        align-items:stretch !important;
        overflow-x:auto !important;
        overflow-y:hidden !important;
        -webkit-overflow-scrolling:touch;
        scroll-snap-type:x mandatory;
        gap:0 !important;
        width:100%;
    }

    .stats-scroll > .elementor-widget-counter{
        flex:0 0 50% !important;
        min-width:50% !important;
        max-width:50% !important;
        scroll-snap-align:start;
        padding:20px 10px;
    }

    .stats-scroll::-webkit-scrollbar{
        display:none;
    }
	
	/****/
	.onh-project-slider{
overflow:hidden;
}

.onh-project-slider .e-con-inner{
display:flex;
flex-wrap:nowrap;
overflow-x:auto;
scroll-snap-type:x mandatory;
-webkit-overflow-scrolling:touch;
}

.onh-project-slider .e-con-inner > .elementor-element{
flex:0 0 100%;
max-width:100%;
scroll-snap-align:start;
}

.onh-project-slider .e-con-inner::-webkit-scrollbar{
display:none;
}

}