/*
Theme Name: Stuart Osman
Template: hello-elementor
*/


/* ============================================
   RESETS
   ============================================ */

img {
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
}
.elementor video {
    -webkit-transform: translateZ(0);
    backface-visibility: hidden;
}
[data-aos] video,
[data-aos] iframe {
    will-change: transform, opacity;
}
body,
.elementor {
    margin: 0;
    padding: 0;
    border: 0;
	font-family: "Instrument Sans", sans-serif;
}

.site-header {
	display: none;
}

h1,
.text-display,
.text-h1,
.elementor h1,
.elementor h1.elementor-heading-title,
.elementor .text-display,
.elementor .text-h1 {
	font-family: "Instrument Sans", sans-serif !important;
}

h2,
.text-h2,
.elementor h2,
.elementor h2.elementor-heading-title,
.elementor .text-h2 {
	font-family: "Instrument Sans", sans-serif !important;
}

h3, h4, h5, h6,
.text-h3, .text-h4, .text-h5,
.elementor h3, .elementor h4, .elementor h5, .elementor h6,
.elementor h3.elementor-heading-title,
.elementor h4.elementor-heading-title,
.elementor h5.elementor-heading-title,
.elementor h6.elementor-heading-title {
	font-family: "Instrument Sans", sans-serif !important;
}

p,
.text-body-large,
.text-body-medium,
.text-body-small,
.elementor p,
.elementor .text-body-large,
.elementor .text-body-medium,
.elementor .text-body-small {
	font-family: "Instrument Sans", sans-serif !important;
}

.text-button,
.elementor-button,
button,
input[type="submit"],
input[type="button"],
.elementor .text-button,
.elementor .elementor-button {
	font-family: "Instrument Sans", sans-serif !important;
}

.text-eyebrow,
.text-caption,
.text-tag,
.elementor .text-eyebrow,
.elementor .text-caption,
.elementor .text-tag {
	font-family: "Instrument Sans", sans-serif !important;
}

a:hover,
a:active {
    color: inherit;
}

button:focus,
input:focus {
    outline: none !important;
}

.acf-map {
    width: 100%;
    height: 400px;
    border: #ccc solid 1px;
    margin: 20px 0;
}

.elementor-element p:last-child {
    margin-bottom: 0px;
}

body table tbody>tr:nth-child(odd)>td,
body table tbody>tr:nth-child(odd)>th,
body table tbody tr:hover>td,
body table tbody tr:hover>th {
    background-color: initial;
}

body table td,
body table th {
    border: 0;
    padding: 0;
    text-align: left;
}

.elementor-field-group .elementor-field-textual:focus {
    box-shadow: none;
}

.acf-map img {
    max-width: inherit !important;
}

a {
    cursor: pointer;
    color: inherit;
}

select {
    appearance: none;
    -webkit-appearance: none;
}

::placeholder,
::-webkit-input-placeholder,
::-moz-placeholder,
:-ms-input-placeholder,
:-moz-placeholder,
body .elementor-field-group .elementor-field-textual::placeholder {
    opacity: 1;
}

body .elementor-column-gap-default>.elementor-column>.elementor-element-populated {
    padding: 0;
}

.elementor .elementor-heading-title {
    line-height: inherit;
}

.animate-words .word {
	opacity: 0;
}
.aos-init {
	-webkit-transform-style: preserve-3d;
}


/* ============================================
   TYPOGRAPHY
   ============================================ */

:root {
    --h1-size: 7.1875rem;
    --h1-weight: 400;
    --h1-line-height: 1.2em;
    --h1-letter-spacing: -0.07188rem;
    
    --h2-size: 3rem;
    --h2-weight: 400;
    --h2-line-height: 1.125em;
    
    --h3-size: 2.25rem;
    --h3-weight: 400;
    --h3-line-height: 1.222em;
    
    --h4-size: 1.625rem;
    --h4-weight: 400;
    --h4-line-height: 1.154em;
    
    --h5-size: 1.25rem;
    --h5-weight: 600;
    --h5-line-height: 1.2em;
    --h5-letter-spacing: 0.0625rem;
    
    --h6-size: 1.13rem;
    --h6-weight: 400;
    --h6-line-height: 1.4em;
    
    --eyebrow-size: 0.75rem;
    --eyebrow-weight: 500;
    --eyebrow-line-height: 1.5em;
    --eyebrow-letter-spacing: 0.075rem;
    
    --body-lg-size: 1.125rem;
    --body-lg-weight: 400;
    --body-lg-line-height: 1.333em;
    
    --body-md-size: 1rem;
    --body-md-weight: 400;
    --body-md-line-height: 1.286em;
    
    --body-sm-size: 1rem;
    --body-sm-weight: 400;
    --body-sm-line-height: 1.286em;
    
    --button-size: 0.875rem;
    --button-weight: 500;
    --button-line-height: 1.5em;
}

@media all and (max-width:1366px) {
    :root {
        --h1-size: 7.1875rem;
        --h1-weight: 400;
        --h1-line-height: 1.2em;
        --h1-letter-spacing: -0.07188rem;
        
        --h2-size: 2.25rem;
        --h2-weight: 400;
        --h2-line-height: 1.5em;
        
        --h3-size: 2.25rem;
        --h3-weight: 400;
        --h3-line-height: 1.222em;
        
        --h4-size: 1.625rem;
        --h4-weight: 400;
        --h4-line-height: 1.154em;
        
        --h5-size: 1.25rem;
        --h5-weight: 600;
        --h5-line-height: 1.2em;
        --h5-letter-spacing: 0.0625rem;
        
        --h6-size: 1.125rem;
        --h6-weight: 700;
        --h6-line-height: 1.4em;
    }
}

.elementor .text-display-xl,
.elementor .text-stat-large {
    font-size: var(--h1-size);
    font-weight: var(--h1-weight);
    line-height: var(--h1-line-height);
    letter-spacing: var(--h1-letter-spacing);
}

.elementor .text-display {
    font-size: var(--h1-size);
    font-weight: var(--h1-weight);
    line-height: var(--h1-line-height);
    letter-spacing: var(--h1-letter-spacing);
}

.text-h1,
h1,
.elementor h1.elementor-heading-title,
.elementor .text-h1 {
    font-size: var(--h1-size);
    font-weight: var(--h1-weight);
    line-height: var(--h1-line-height);
    letter-spacing: var(--h1-letter-spacing);
}

.text-h2,
h2,
.elementor h2.elementor-heading-title,
.elementor .text-h2 {
    font-size: var(--h2-size);
    font-weight: var(--h2-weight);
    line-height: var(--h2-line-height);
}

.text-h3,
h3,
.elementor h3.elementor-heading-title,
.elementor .text-h3 {
    font-size: var(--h3-size);
    font-weight: var(--h3-weight);
    line-height: var(--h3-line-height);
}

.text-h4,
h4,
.elementor h4.elementor-heading-title,
.elementor .text-h4 {
    font-size: var(--h4-size);
    font-weight: var(--h4-weight);
    line-height: var(--h4-line-height);
}

.text-h5,
h5,
.elementor h5.elementor-heading-title,
.elementor .text-h5 {
    font-size: var(--h5-size);
    font-weight: var(--h5-weight);
    line-height: var(--h5-line-height);
    letter-spacing: var(--h5-letter-spacing);
    text-transform: uppercase;
}

h6,.text-body-large,
.elementor h6.elementor-heading-title,
.elementor .text-body-large,
.text-blog-styles > .elementor-widget-container > p:first-child {
    font-size: var(--h6-size);
    font-weight: var(--h6-weight);
    line-height: var(--h6-line-height);
}

.text-body-medium,
body,
.elementor .text-body-medium,
.elementor .elementor-widget-woocommerce-cart .woocommerce .product-name a,
.elementor .elementor-widget-n-accordion .e-n-accordion-item-title-text,
.e-n-tabs .e-n-tab-title-text {
    font-size: var(--body-md-size);
    font-weight: var(--body-md-weight);
    line-height: var(--body-md-line-height);
}

.elementor .elementor-widget-n-accordion .e-n-accordion-item-title-text,
.e-n-tabs .e-n-tab-title-text {
	font-weight: 500;
}

.text-body-small,
.elementor .text-body-small,
.elementor-widget-woocommerce-cart .woocommerce table.cart td span {
    font-size: var(--body-sm-size);
    font-weight: var(--body-sm-weight);
    line-height: var(--body-sm-line-height);
}

.text-button, .elementor-button,
.elementor .text-button,
.elementor [type=submit],
.elementor [type=button]{
    font-size: var(--button-size);
    font-weight: var(--button-weight);
    line-height: var(--button-line-height);
}

.text-caption,
.elementor .text-caption,
.text-eyebrow,
.elementor .text-eyebrow,
.text-tag,
.elementor .text-tag {
    font-size: var(--eyebrow-size);
    font-weight: var(--eyebrow-weight);
    line-height: var(--eyebrow-line-height);
    letter-spacing: var(--eyebrow-letter-spacing);
    text-transform: uppercase;
}


/* ============================================
   COLORS
   ============================================ */

:root {
    --black: #000;
    --white: #fff;
	--text-heading: #fff;
	--text-body: #fff;
	--text: #fff;
}


/* ============================================
   SPACING
   ============================================ */

:root {
    --spacing-4px-2: 2px;
    --spacing-4px-4: 4px;
    --spacing-4px-8: 8px;
    --spacing-4px-12: 12px;
    --spacing-4px-16: 16px;
    --spacing-4px-20: 20px;
    --spacing-4px-24: 24px;
    --spacing-4px-32: 32px;
    --spacing-4px-40: 40px;
    --spacing-4px-48: 48px;
    --spacing-4px-56: 56px;
    --spacing-4px-64: 64px;
    --spacing-4px-80: 80px;
    --spacing-4px-96: 96px;
    --spacing-4px-128: 128px;
    --spacing-4px-160: 160px;
    --spacing-4px-192: 192px;
    --spacing-4px-224: 224px;
    --spacing-4px-256: 256px;
    --spacing-4px-320: 320px;
    --spacing-4px-384: 384px;
    --spacing-4px-512: 512px;
    --spacing-4px-full: 999px;
}

:root {
    --base-size: 4px;
    --size-0: calc(var(--base-size) * 0);
    --size-1: calc(var(--base-size) * 1);
    --size-2: calc(var(--base-size) * 2);
    --size-3: calc(var(--base-size) * 3);
    --size-4: calc(var(--base-size) * 4);
    --size-5: calc(var(--base-size) * 5);
    --size-6: calc(var(--base-size) * 6);
    --size-7: calc(var(--base-size) * 7);
    --size-8: calc(var(--base-size) * 8);
    --size-9: calc(var(--base-size) * 9);
    --size-10: calc(var(--base-size) * 10);
    --size-11: calc(var(--base-size) * 11);
    --size-12: calc(var(--base-size) * 12);
    --size-14: calc(var(--base-size) * 14);
    --size-16: calc(var(--base-size) * 16);
    --size-20: calc(var(--base-size) * 20);
    --size-24: calc(var(--base-size) * 24);
    --size-28: calc(var(--base-size) * 28);
    --size-32: calc(var(--base-size) * 32);
    --size-36: calc(var(--base-size) * 36);
    --size-40: calc(var(--base-size) * 40);
    --size-44: calc(var(--base-size) * 44);
    --size-48: calc(var(--base-size) * 48);
    --size-52: calc(var(--base-size) * 52);
    --size-56: calc(var(--base-size) * 56);
    --size-60: calc(var(--base-size) * 60);
    --size-64: calc(var(--base-size) * 64);
    --size-72: calc(var(--base-size) * 72);
    --size-80: calc(var(--base-size) * 80);
    --size-96: calc(var(--base-size) * 96);
}

:root {
    --size-0\.5: calc(var(--base-size) * 0.5);
}


/* ============================================
   GLOBAL CONFIGURATION
   ============================================ */

:root {
    --page-width: 1536px;
    --hero-height: 900px;
    
    --section-padding-smaller: var(--size-16);
    --section-padding: var(--size-32);
    --section-padding-larger: var(--size-48);
    --section-padding-sides: 0;
    
    --cp-3xs: var(--size-1);
    --cp-2xs: var(--size-2);
    --cp-xs: var(--size-3);
    --cp-s: var(--size-4);
    --cp-m: var(--size-5);
    --cp-l: var(--size-8);
    --cp-xl: var(--size-12);
    --cp-2xl: var(--size-16);
    --cp-3xl: var(--size-24);
    --cp-4xl: var(--size-32);
    
    --cp-v-none: 0;
    --cp-v-xsm: var(--size-1);
    --cp-v-sm: var(--size-2);
    --cp-v-md: var(--size-3);
    --cp-v-lg: var(--size-6);
    --cp-v-xlg: var(--size-8);
    --cp-v-heading-padding: var(--size-16);
    
    --column-sm: var(--size-16);
    --column-md: var(--size-24);
    --column-lg: var(--size-32);
    
    --radius-xs: var(--size-0.5);
    --radius-s: var(--size-1);
    --radius-m: var(--size-2);
    --radius-l: var(--size-3);
    --radius-xl: var(--size-4);
    --radius-full: 999px;
    
    --button-height-default: 50px;
    --button-padding-default: var(--cp-m);
    --button-radius: 4px;
    
    --menu-padding-v: var(--size-8);
}

@media all and (max-width:1750px){
	:root {
		--section-padding-sides: var(--size-24);
	}
}

@media all and (max-width: 1440px) {
    :root {
        --page-width: 1024px;
        --hero-height: 700px;
        
        --section-padding-smaller: var(--size-12);
        --section-padding: var(--size-24);
        --section-padding-larger: var(--size-40);
        --section-padding-sides: var(--size-24);
        
        --cp-3xs: var(--size-0.5);
        --cp-2xs: var(--size-1);
        --cp-xs: var(--size-2);
        --cp-s: var(--size-3);
        --cp-m: var(--size-4);
        --cp-l: var(--size-5);
        --cp-xl: var(--size-8);
        --cp-2xl: var(--size-12);
        --cp-3xl: var(--size-16);
        --cp-4xl: var(--size-24);
        
        --cp-v-sm: var(--size-1);
        --cp-v-md: var(--size-2);
        --cp-v-lg: var(--size-4);
        --cp-v-xlg: var(--size-6);
        --cp-v-heading-padding: var(--size-12);
        
        --column-sm: var(--size-12);
        --column-md: var(--size-16);
        --column-lg: var(--size-24);
        
        --menu-height: var(--size-20);
    }
}

@media (max-width:1200px) {
    :root {
        --section-padding-sides:var(--size-16);
        --section-padding:var(--size-16);
    }
}

@media (max-width:900px) {
    :root {
        --section-padding-sides:var(--size-12);
    }
}

@media all and (max-width: 767px) {
    :root {
        --page-width: 375px;
        
        --section-padding-smaller: var(--size-16);
        --section-padding: var(--size-24);
        --section-padding-larger: var(--size-24);
        --section-padding-sides: var(--size-4);
        
        --cp-4xl: var(--size-20);
        
        --cp-v-xsm: var(--size-0.5);
        --cp-v-lg: var(--size-3);
        --cp-v-xlg: var(--size-4);
        --cp-v-heading-padding: var(--size-8);
        
        --column-sm: var(--size-10);
        --column-md: var(--size-12);
        --column-lg: var(--size-20);
        
        --menu-height: var(--size-14);
    }
}


/* ============================================
   UTILITIES
   ============================================ */

.section-padding-small {
    padding: var(--section-padding-smaller) var(--section-padding-sides);
}

.section-padding {
    padding: var(--section-padding) var(--section-padding-sides);
}

.section-padding-large {
    padding: var(--section-padding-larger) var(--section-padding-sides);
}

.section-padding.top {
    padding-bottom: 0;
}

.section-padding.bottom {
    padding-top: 0;
}

.section-padding.sides-only {
    padding-top: 0;
    padding-bottom: 0;
}

.drop-shadow-xs {
    box-shadow: 0px 2px 4px 0px rgba(0, 65, 87, 0.16);
}

.drop-shadow-s {
    box-shadow: 0px 2px 4px 0px rgba(0, 43, 62, 0.04), 0px 16px 32px -4px rgba(0, 43, 62, 0.10);
}

.drop-shadow-m {
    box-shadow: 0px 2px 4px 0px rgba(0, 43, 62, 0.04), 0px 24px 48px -8px rgba(0, 43, 62, 0.12);
}

.drop-shadow-l {
    box-shadow: 0px 2px 4px 0px #002b3e0a, 0px 40px 80px -16px rgba(0, 43, 62, 0.16);
}

.drop-shadow-xl {
    box-shadow: 0px 2px 4px 0px rgba(0, 43, 62, 0.04), 0px 56px 112px -20px rgba(0, 43, 62, 0.18);
}


/* ============================================
   BUTTONS
   ============================================ */

.text-button, .elementor-button,
.elementor .text-button,
.elementor [type=submit],
.elementor [type=button]{

}

.text-button, .elementor-button:hover,
.elementor .text-button:hover,
.elementor [type=submit]:hover,
.elementor [type=button]:hover {

}

.elementor-button-content-wrapper {
    align-items: center;
}

.elementor-button i {
    transform: translate(0px, 0px);
    transition: 0.3s ease;
}
.elementor-button:hover i {
    position: relative;
    transform: translate(4px, 0px);
    transition: 0.3s ease;
}




/* ============================================
   Project Listing Shortcode
   ============================================ */
.project-listing {
    display: flex;
    flex-direction: column;
    gap: var(--cp-3xl);
    width: 100%;
}
.project-row {
    display: flex;
    width: 100%;
}

.project-row--full {
    padding-left: 0;
}

.project-row--split {
    gap: 80px;
    align-items: flex-start;
}

.project-split-left,
.project-split-right {
    flex: 1;
    min-width: 0;
}


.project-card {
    display: flex;
    flex-direction: column;
    gap: 20px;
}
.project-split-left .project-card {
	padding-bottom: 128px;
}
.project-split-right .project-card {
	padding-top: 128px;
}
.project-row--left {
    justify-content: flex-start;
}
.project-row--right {
    justify-content: flex-end;
}

.project-card__media {
    display: block;
    width: 100%;
    height: 644px;
    overflow: hidden;
    position: relative;
    background: #000;
}

.project-card__video, .project-card__image {
    width: 100%;
    height: 100% !important;
    object-fit: cover;
    display: block;
}

.project-card__title {
    font-family: 'Instrument Sans', sans-serif;
    font-weight: 500;
    font-size: 12px;
    line-height: 1.5;
    letter-spacing: 1.2px;
    text-transform: uppercase;
    color: #000;
    text-decoration: none;
    display: block;
    transition: opacity 0.3s ease;
}

.project-card__title:hover {
    opacity: 0.7;
}

@media (max-width: 1200px) { 
    .project-row--split {
        gap: 40px;
    }
	.project-split-left .project-card {
		padding-bottom: 64px;
	}
	.project-split-right .project-card {
		padding-top: 64px;
	}
}

@media (max-width: 768px) {
	.project-split-left .project-card {
		padding-bottom: 0px;
	}
	.project-split-right .project-card {
		padding-top: 0px;
	}
    .project-row--split {
        flex-direction: column;
        gap: 20px;
    }
    .project-split-right {
        padding-top: 0;
    }
    
    .project-card__media {
        height: 400px;
    }
	.project-listing,
	.project-row--split {
		gap: var(--cp-xl);
	}
}



/* ============================================
   Award Carousel Shortcode
   ============================================ */
.award-carousel .slick-slide {
    margin: 0 10px;
}
.award-carousel .slick-list {
    margin: 0 -10px;
}
.award-carousel .slick-list.draggable {
    padding: 0 10px;
}
.media-wrapper {
    aspect-ratio: 1;
    background-size: cover;
    background-repeat: no-repeat;
	position: relative;
}
.award-badges {
    display: flex;
    position: absolute;
    bottom: 22px;
    left: -10px;
}
.award-badges .badge-wrapper:not(:first-child) {
    transform: translateX(-19px);
}
.nav-arrows {
	display: flex;
	font-size: 20px;
}
.nav-arrows i {
	padding: 10px;
	color: #958D85;
}
.nav-arrows i:hover {
	color: #000;
	cursor: pointer;
}
.award-item .content-wrapper > * {
    margin: 0;
}
.award-item .content-wrapper {
    margin-top: var(--cp-m);
	display: flex;
	flex-direction: column;
	gap: 12px;
}
/* Animation states */
.award-item {
    opacity: 0;
    transform: translateY(30px);
    transition: opacity 0.6s ease, transform 0.6s ease;
}
.award-item.in-view {
    opacity: 1;
    transform: translateY(0);
}

.award-badges .badge-wrapper {
    opacity: 0;
    transform: translateY(20px) translateX(0);
    transition: opacity 0.4s ease, transform 0.4s ease;
    position: relative;
    z-index: 1;
}
.award-badges .badge-wrapper:not(:first-child) {
    transform: translateY(20px) translateX(-19px);
}
.award-badges .badge-wrapper.in-view {
    opacity: 1;
    transform: translateY(0) translateX(0);
}
.award-badges .badge-wrapper.in-view:not(:first-child) {
    transform: translateY(0) translateX(-19px);
}

.award-badges .badge-wrapper:hover {
    z-index: 10;
}

.award-badge-image {
    transition: transform 0.3s cubic-bezier(0.34, 1.56, 0.64, 1), filter 0.3s ease;
    cursor: pointer;
}
.award-badge-image:hover {
    transform: scale(1.25);
    position: relative;
}

.award-badges:hover .badge-wrapper:not(:hover) .award-badge-image {
    filter: brightness(0.85);
    transform: scale(0.95);
}
.badge-wrapper a {
    display: block;
    line-height: 0;
}
.elementor-lightbox .elementor-lightbox-image, .elementor-lightbox .elementor-lightbox-image:hover {
    border: none;
    filter: none;
    opacity: 1;
    width: 100%;
}



/* ============================================
   Testimonial Carousel Shortcode
   ============================================ */
.testimonial-carousel .slick-slide {
    margin: 0 10px;
    height: auto;
}

.testimonial-carousel .slick-list {
    margin: 0 -10px;
}

.testimonial-carousel .slick-track {
    display: flex;
}

.testimonial-carousel .slick-slide > div {
    height: 100%;
}

.testimonial-card {
    padding: var(--cp-3xl);
    background: #fff;
    box-shadow: 10px 10px 10px 0 rgba(149, 141, 133, 0.10);
    height: 100%;
    display: flex;
    flex-direction: column;
}

.testimonial-card .content-wrapper {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.testimonial-card .text-eyebrow {
    color: #958D85;
    margin-top: auto;
}
header.elementor-location-header>div.elementor-element {
    width: 100% !important;
}
/* Process list
============================ */
.active_border,
.process_list .elementor-heading-title,
.process_list .elementor-image-box-content h3,
.process_list .elementor-image-box-content p,
.process_list>div.elementor-element .elementor-icon svg path,
.process_list * {
    transition: 300ms ease-in-out;
}
.active_border {
    opacity: 0;
    visibility: hidden;
}
div.process_list:hover>div.elementor-element .active_border,
div.process_list.slick-current.slick-active>div.elementor-element .active_border,
div.process_list.active>div.elementor-element .active_border {
    opacity: 1;
    visibility: visible;
}
div.process_list:hover>div.elementor-element:first-child,
div.process_list.slick-current.slick-active>div.elementor-element:first-child,
div.process_list.active>div.elementor-element:first-child {
    background-color: var(--white);
}
div.process_list>div.elementor-element:first-child {
    height: calc(100% - 76px);
}
div.process_list:hover>div.elementor-element .elementor-icon svg path,
div.process_list.slick-current.slick-active>div.elementor-element .elementor-icon svg path,
div.process_list:not(.active)>div.elementor-element .elementor-icon svg path {
    fill: #958D85;
}
div.process_list:hover>div.elementor-element .elementor-heading-title,
div.process_list:hover>div.elementor-element .elementor-image-box-content h3,
div.process_list:hover>div.elementor-element .elementor-image-box-content p,
div.process_list.slick-current.slick-active>div.elementor-element .elementor-heading-title,
div.process_list.slick-current.slick-active>div.elementor-element .elementor-image-box-content h3,
div.process_list.slick-current.slick-active>div.elementor-element .elementor-image-box-content p,
div.process_list.active>div.elementor-element .elementor-heading-title,
div.process_list.active>div.elementor-element .elementor-image-box-content h3,
div.process_list.active>div.elementor-element .elementor-image-box-content p {
    color: var(--black);
}
ul.slick-dots {
    padding: 0;
    list-style-type: none;
    display: flex;
    gap: 8px;
    align-items: center;
    justify-content: center;
    margin-top: 24px;
}
ul.slick-dots button,
ul.slick-dots button:hover { 
	padding: 0;
	width: 17px;
	height: 17px;
	border-radius: 999px;
	font-size: 0px !important;
	border-color: #000;
	background: #000;
}
ul.slick-dots li:not(.slick-active) button {
	background: #fff;
	border-color: #000;
}


/* Project filter
=========================== */
.project-filter-wrapper {
    display: flex;
    gap: 8px;
    align-items: center;
    margin-bottom: var(--cp-3xl);
}
.project-filter-wrapper button {
    border: none;
    background-color: #D5CFCD33;
    border-radius: 25px;
    padding: 8px 12px;
    transition: 300ms ease-in-out;
    color: #958D85;
}
.project-filter-wrapper button,
.filter-text-wrapper span {
    line-height: 1;
    text-transform: uppercase;
    letter-spacing: 1px;
    font-size: var(--eyebrow-size);
    font-weight: 500;
}
.filter-text-wrapper span {
    color: var(--black);
}
.project-filter-wrapper button.active {
    color: var(--black);
}
.project-info-wrapper .project-info-item,
.elementor-icon-list-items .elementor-icon-list-item .elementor-icon-list-text span.elementor-post-info__terms-list,
.filter-text-wrapper {
    display: flex;
    align-items: center;
    gap: 8px;
}
.elementor-post-info__terms-list .elementor-post-info__terms-list-item {
    background-color: #D5CFCD80;
    border-radius: 99px;
    padding: 8px 12px;
    line-height: 1;
}
.single-project .swiper-slide-inner {
    position: relative;
    height: 0;
    overflow: hidden;
    padding-bottom: 50.5%;
}
.single-project .swiper-slide-inner img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.project-info-wrapper .project-info-item {
    gap: 32px;
}
.project-info-item:not(:last-child) {
    margin-bottom: 4px;
}
.project-info-wrapper .project-info-item strong {
    width: 70px;
}
.project-info-wrapper .project-info-item strong,
.project-info-wrapper .project-info-item span {
    font-weight: 400;
    font-size: 15px;
    color: var(--black);
}
div.hide_when_empty_first_block:not(:has(.elementor-widget-image)),
div.hide_when_empty_image_block:not(:has(.elementor-widget-image)),
div.hide_when_empty_gallery:not(:has(.elementor-widget-image-carousel)) {
    display: none;
}
div.elementor-element.hide_when_empty_gallery .swiper-horizontal>.swiper-pagination-bullets {
    bottom: 0;
}
div.elementor-element.hide_when_empty_gallery .elementor-element.elementor-pagination-position-outside .swiper {
    padding-bottom: 40px;
}
.process-slider .slick-list .slick-track {
    display: flex;
    gap: 12px;
    margin-inline: -12px;
}
.process-slider .slick-list .slick-track .slick-slide {
    height: auto;
    display: flex;
    flex-direction: column;
    gap: var(--cp-l);
}
/* responsive
============================ */
@media (max-width:767px) {
    div.elementor-element.hide_when_empty_gallery .elementor-element.elementor-pagination-position-outside .swiper {
        padding-bottom: 30px;
    }
}