/*
 Theme Name:   Astra Child
 Theme URI:    https://studio.yurba.one
 Description:  Astra Child
 Author:       Yurba Studio
 Template:     astra
 Version:      1.0.30
*/

.sub-menu .wpml-ls-item a {
	font-size: 10px!important;
    text-transform: uppercase!important;
    font-weight: normal!important;
    color: black!important;
}

.sub-menu .wpml-ls-item {
	border-color: #f3f3f3;
}

.rtl .owl-carousel {
    direction: ltr !important;
    text-align: right !important;
}

.elementor-widget:has(.elementor-button-content-wrapper) {
    z-index: 1;
}

/* Hide breadcrumb rows across Elementor pages. */
.elementor .e-con:has(.breadcrumb_last),
.elementor .elementor-widget-text-editor:has(.breadcrumb_last) {
    display: none !important;
}

/* Keep catalog and contact-section images in their color hover state. */
.elementor img[src*="book-skyform"],
.elementor img[src*="Vel-1"] {
    filter: grayscale(0%) brightness(1) contrast(1) !important;
    transition: none !important;
}

/* Stable contact form layout across translated contact pages. */
.sf-form .elementor-form-fields-wrapper,
.sf-form .wpforms-field-container,
.sf-form.wpcf7 form {
    display: grid !important;
    grid-template-columns: repeat(1, minmax(220px, 1fr)) !important;
    gap: 16px !important;
    align-items: start !important;
    box-sizing: border-box !important;
}

.sf-form input[type="text"],
.sf-form input[type="email"],
.sf-form input[type="tel"],
.sf-form input[type="url"],
.sf-form input[type="number"],
.sf-form select,
.sf-form textarea,
.sf-form .elementor-field-textual {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}

.sf-form textarea,
.sf-form .wpforms-field-textarea,
.sf-form .elementor-field-group textarea {
    grid-column: 1 / -1 !important;
    min-height: 140px !important;
}

/* Header & Menu Solid White Background */
[data-elementor-type="twbb_header"] .elementor-element-i20pncw0,
[data-elementor-type="twbb_header"] .elementor-element-554lna8y,
[data-elementor-type="twbb_header"] .twbb_section,
.elementor-sticky--active {
    background-color: #ffffff !important;
}

@media (max-width: 1024px){
    body:has(.twbb-menu-toggle.twbb-active) {
        overflow: hidden;
    }

    .twbb-nav-menu__container {
        overflow-y: scroll !important;
        height: calc(100vh - 37.5px) !important;
        background-color: #ffffff !important;
    }

    .twbb-nav-menu--dropdown {
        border: none!important;
        padding: 24px 0;
        padding-bottom: 48px;
        background-color: #ffffff !important;
    }
}

/* Global button normalization for Elementor/TenWeb content. */
.elementor .elementor-button,
.elementor .elementor-button.elementor-size-sm,
.elementor .elementor-button.elementor-size-md,
.elementor .elementor-button.elementor-size-lg,
.elementor .elementor-widget-button .elementor-button,
.elementor .elementor-widget-twbb_form .elementor-button,
.elementor .elementor-form .elementor-button,
.elementor .elementor-button[type="submit"],
.elementor .elementor-button[type="reset"] {
    font-family: "Open Sans", sans-serif !important;
    font-size: 20px !important;
    font-weight: 300 !important;
    line-height: 24px !important;
    letter-spacing: 1.5px !important;
    text-transform: uppercase !important;
    text-decoration: none !important;
    color: #ffffff !important;
    background-color: #232323 !important;
    border: 1px solid #232323 !important;
    border-radius: 0 !important;
    padding: 14px 28px !important;
    box-shadow: none !important;
    text-shadow: none !important;
    transition: color .2s ease, background-color .2s ease, border-color .2s ease !important;
}

.elementor .elementor-button:hover,
.elementor .elementor-button:focus,
.elementor .elementor-widget-button .elementor-button:hover,
.elementor .elementor-widget-button .elementor-button:focus,
.elementor .elementor-widget-twbb_form .elementor-button:hover,
.elementor .elementor-widget-twbb_form .elementor-button:focus,
.elementor .elementor-form .elementor-button:hover,
.elementor .elementor-form .elementor-button:focus {
    color: #ffffff !important;
    background-color: #515151 !important;
    border-color: #515151 !important;
    text-decoration: none !important;
}

.elementor .elementor-button .elementor-button-text,
.elementor .elementor-button .elementor-button-content-wrapper {
    font-family: inherit !important;
    font-size: inherit !important;
    font-weight: inherit !important;
    line-height: inherit !important;
    letter-spacing: inherit !important;
    text-transform: inherit !important;
}

@media (max-width: 1024px) {
    .elementor .elementor-button,
    .elementor .elementor-button.elementor-size-sm,
    .elementor .elementor-button.elementor-size-md,
    .elementor .elementor-button.elementor-size-lg,
    .elementor .elementor-widget-button .elementor-button,
    .elementor .elementor-widget-twbb_form .elementor-button,
    .elementor .elementor-form .elementor-button {
        font-size: 18px !important;
    }
}

@media (max-width: 767px) {
    .elementor .elementor-element.elementor-element-f7197d3 .elementor-widget-image:not(.elementor-element-447e708d):not(.elementor-element-453b41e1) {
        width: 100% !important;
        max-width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    .elementor .elementor-element.elementor-element-f7197d3 .elementor-widget-image:not(.elementor-element-447e708d):not(.elementor-element-453b41e1) img,
    .elementor .twbb_portfolio_15 .elementor-widget-image:not(.elementor-element-447e708d):not(.elementor-element-453b41e1) img {
        width: revert-rule !important;
        max-width: 100% !important;
    }

    .elementor .elementor-element.elementor-element-580e0cdf {
        flex-direction: column !important;
        align-items: center !important;
        gap: 24px !important;
    }

    .elementor .elementor-element.elementor-element-3165d917 {
        width: 100% !important;
        margin-top: 0 !important;
    }

    .elementor .elementor-element.elementor-element-447e708d {
        display: block !important;
        width: 100% !important;
        height: auto !important;
        min-height: max-content !important;
        line-height: 0 !important;
    }

    .elementor .elementor-element.elementor-element-447e708d > .elementor-widget-container {
        display: block !important;
        height: auto !important;
        line-height: 0 !important;
    }

    .elementor .elementor-element.elementor-element-447e708d img {
        display: block !important;
        margin: 0 auto !important;
    }

    .elementor .e-con:has(> .e-con > .elementor-widget-image img[src*="book-skyform"]) {
        flex-direction: column !important;
        align-items: center !important;
        gap: 24px !important;
    }

    .elementor .e-con:has(> .elementor-widget-image img[src*="book-skyform"]) {
        width: 100% !important;
        margin-top: 0 !important;
    }

    .elementor .elementor-widget-image:has(img[src*="book-skyform"]) {
        display: block !important;
        width: 100% !important;
        height: auto !important;
        min-height: max-content !important;
        line-height: 0 !important;
    }

    .elementor .elementor-widget-image:has(img[src*="book-skyform"]) > .elementor-widget-container {
        display: block !important;
        height: auto !important;
        line-height: 0 !important;
    }

    .elementor .elementor-widget-image:has(img[src*="book-skyform"]) img {
        display: block !important;
        margin: 0 auto !important;
    }

    .elementor .elementor-button,
    .elementor .elementor-button.elementor-size-sm,
    .elementor .elementor-button.elementor-size-md,
    .elementor .elementor-button.elementor-size-lg,
    .elementor .elementor-widget-button .elementor-button,
    .elementor .elementor-widget-twbb_form .elementor-button,
    .elementor .elementor-form .elementor-button {
        font-size: 14px !important;
        padding: 10px 14px !important;
    }
}

/* Georgian header CTA must stay compact after global button rules. */
html[lang^="ka"] .elementor .elementor-element.elementor-element-2b6481f.elementor-widget-button .elementor-button,
html[lang^="ka"] .elementor .elementor-element.elementor-element-2b6481f.elementor-widget-button .elementor-button.elementor-size-sm,
html[lang^="ka"] .elementor .elementor-element.elementor-element-2b6481f.elementor-widget-button .elementor-button-content-wrapper,
html[lang^="ka"] .elementor .elementor-element.elementor-element-2b6481f.elementor-widget-button .elementor-button-text {
    font-size: 10px !important;
    line-height: 14px !important;
}

.elementor .elementor-element.elementor-element-471eb5e .sf-mobile-heading-line {
    display: inline;
}

.elementor .elementor-element.elementor-element-471eb5e .sf-mobile-heading-line + .sf-mobile-heading-line::before {
    content: " ";
}

@media (max-width: 767px) {
    .elementor .elementor-element.elementor-element-471eb5e .sf-mobile-heading-line {
        display: block;
    }

    .elementor .elementor-element.elementor-element-471eb5e .sf-mobile-heading-line + .sf-mobile-heading-line::before {
        content: "";
    }
}

@media (max-width: 767px) {
    .elementor .elementor-element.elementor-element-7d466f9 {
        --padding-right: 20px !important;
    }
}

/* Home portfolio/gallery CTAs keep their original outline style. */
.elementor .elementor-element.elementor-element-53ca41b7.elementor-widget-button .elementor-button,
.elementor .elementor-element.elementor-element-53ca41b7.elementor-widget-button .elementor-button.elementor-size-sm,
.elementor .elementor-element.elementor-element-2be5027.elementor-widget-button .elementor-button,
.elementor .elementor-element.elementor-element-2be5027.elementor-widget-button .elementor-button.elementor-size-sm,
.elementor .elementor-element.elementor-element-e87a59a.elementor-widget-button .elementor-button,
.elementor .elementor-element.elementor-element-e87a59a.elementor-widget-button .elementor-button.elementor-size-sm {
    background-color: #C7768700 !important;
    font-family: "Open Sans", sans-serif !important;
    font-size: 20px !important;
    font-weight: 400 !important;
    text-transform: uppercase !important;
    font-style: normal !important;
    text-decoration: none !important;
    line-height: 24px !important;
    letter-spacing: 1px !important;
    fill: #232323 !important;
    color: #232323 !important;
    transition-duration: 0.4s !important;
    border-style: solid !important;
    border-width: 2px !important;
    border-color: #232323 !important;
    border-radius: 0 !important;
    padding: 12px 24px !important;
    box-shadow: none !important;
    text-shadow: none !important;
}

.elementor .elementor-element.elementor-element-53ca41b7.elementor-widget-button .elementor-button,
.elementor .elementor-element.elementor-element-2be5027.elementor-widget-button .elementor-button,
.elementor .elementor-element.elementor-element-e87a59a.elementor-widget-button .elementor-button {
    font-weight: normal !important;
}

.elementor .elementor-element.elementor-element-53ca41b7.elementor-widget-button .elementor-button:hover,
.elementor .elementor-element.elementor-element-53ca41b7.elementor-widget-button .elementor-button:focus,
.elementor .elementor-element.elementor-element-2be5027.elementor-widget-button .elementor-button:hover,
.elementor .elementor-element.elementor-element-2be5027.elementor-widget-button .elementor-button:focus,
.elementor .elementor-element.elementor-element-e87a59a.elementor-widget-button .elementor-button:hover,
.elementor .elementor-element.elementor-element-e87a59a.elementor-widget-button .elementor-button:focus {
    background-color: #C7768700 !important;
    color: #000000 !important;
    fill: #000000 !important;
    border-color: #000000 !important;
}

.elementor .elementor-element.elementor-element-53ca41b7.elementor-widget-button .elementor-button:hover svg,
.elementor .elementor-element.elementor-element-53ca41b7.elementor-widget-button .elementor-button:focus svg,
.elementor .elementor-element.elementor-element-2be5027.elementor-widget-button .elementor-button:hover svg,
.elementor .elementor-element.elementor-element-2be5027.elementor-widget-button .elementor-button:focus svg,
.elementor .elementor-element.elementor-element-e87a59a.elementor-widget-button .elementor-button:hover svg,
.elementor .elementor-element.elementor-element-e87a59a.elementor-widget-button .elementor-button:focus svg {
    fill: #000000 !important;
}

.elementor .elementor-element.elementor-element-53ca41b7.elementor-widget-button .elementor-button-content-wrapper,
.elementor .elementor-element.elementor-element-2be5027.elementor-widget-button .elementor-button-content-wrapper,
.elementor .elementor-element.elementor-element-e87a59a.elementor-widget-button .elementor-button-content-wrapper {
    flex-direction: row-reverse !important;
}

.elementor .elementor-element.elementor-element-2be5027.elementor-widget-button .elementor-button .elementor-button-content-wrapper,
.elementor .elementor-element.elementor-element-e87a59a.elementor-widget-button .elementor-button .elementor-button-content-wrapper {
    gap: 0 !important;
}

.elementor .elementor-element.elementor-element-53ca41b7.elementor-widget-button .elementor-button-text,
.elementor .elementor-element.elementor-element-53ca41b7.elementor-widget-button .elementor-button-content-wrapper,
.elementor .elementor-element.elementor-element-53ca41b7.elementor-widget-button .elementor-button-icon,
.elementor .elementor-element.elementor-element-2be5027.elementor-widget-button .elementor-button-text,
.elementor .elementor-element.elementor-element-2be5027.elementor-widget-button .elementor-button-content-wrapper,
.elementor .elementor-element.elementor-element-2be5027.elementor-widget-button .elementor-button-icon,
.elementor .elementor-element.elementor-element-e87a59a.elementor-widget-button .elementor-button-text,
.elementor .elementor-element.elementor-element-e87a59a.elementor-widget-button .elementor-button-content-wrapper,
.elementor .elementor-element.elementor-element-e87a59a.elementor-widget-button .elementor-button-icon {
    color: #232323 !important;
    fill: #232323 !important;
    font-family: "Open Sans", sans-serif !important;
    font-size: 20px !important;
    font-weight: inherit !important;
    letter-spacing: 1px !important;
    text-transform: uppercase !important;
}

@media (max-width: 767px) {
    .elementor .elementor-element.elementor-element-53ca41b7.elementor-widget-button .elementor-button,
    .elementor .elementor-element.elementor-element-53ca41b7.elementor-widget-button .elementor-button.elementor-size-sm,
    .elementor .elementor-element.elementor-element-2be5027.elementor-widget-button .elementor-button,
    .elementor .elementor-element.elementor-element-2be5027.elementor-widget-button .elementor-button.elementor-size-sm,
    .elementor .elementor-element.elementor-element-e87a59a.elementor-widget-button .elementor-button,
    .elementor .elementor-element.elementor-element-e87a59a.elementor-widget-button .elementor-button.elementor-size-sm {
        font-size: 12px !important;
        padding: 5px 10px !important;
    }

    .elementor .elementor-element.elementor-element-53ca41b7.elementor-widget-button .elementor-button-text,
    .elementor .elementor-element.elementor-element-53ca41b7.elementor-widget-button .elementor-button-content-wrapper,
    .elementor .elementor-element.elementor-element-53ca41b7.elementor-widget-button .elementor-button-icon,
    .elementor .elementor-element.elementor-element-2be5027.elementor-widget-button .elementor-button-text,
    .elementor .elementor-element.elementor-element-2be5027.elementor-widget-button .elementor-button-content-wrapper,
    .elementor .elementor-element.elementor-element-2be5027.elementor-widget-button .elementor-button-icon,
    .elementor .elementor-element.elementor-element-e87a59a.elementor-widget-button .elementor-button-text,
    .elementor .elementor-element.elementor-element-e87a59a.elementor-widget-button .elementor-button-content-wrapper,
    .elementor .elementor-element.elementor-element-e87a59a.elementor-widget-button .elementor-button-icon {
        font-size: 12px !important;
    }
}

/* Restore original project-card "learn more" buttons. */
.elementor .elementor-element.elementor-element-f7197d3 .elementor-widget-button .elementor-button:has(.elementor-button-icon),
.elementor .elementor-element.elementor-element-f7197d3 .elementor-widget-button .elementor-button.elementor-size-sm:has(.elementor-button-icon) {
    background-color: var(--e-global-color-twbb_transparent) !important;
    font-family: "Open Sans", sans-serif !important;
    font-size: 14px !important;
    font-weight: 300 !important;
    text-transform: uppercase !important;
    font-style: normal !important;
    text-decoration: none !important;
    line-height: 20px !important;
    letter-spacing: 0.5px !important;
    fill: #232323 !important;
    color: #232323 !important;
    border-style: none !important;
    border-width: 0 !important;
    border-color: transparent !important;
    border-radius: 0 !important;
    padding: 5px 0 !important;
    box-shadow: none !important;
    text-shadow: none !important;
}

.elementor .elementor-element.elementor-element-f7197d3 .elementor-widget-button .elementor-button:has(.elementor-button-icon):hover,
.elementor .elementor-element.elementor-element-f7197d3 .elementor-widget-button .elementor-button:has(.elementor-button-icon):focus {
    background-color: var(--e-global-color-twbb_transparent) !important;
    color: #232323 !important;
    fill: #232323 !important;
    border-color: var(--e-global-color-twbb_button_hover) !important;
}

.elementor .elementor-element.elementor-element-f7197d3 .elementor-widget-button .elementor-button:has(.elementor-button-icon) .elementor-button-content-wrapper {
    flex-direction: row-reverse !important;
}

.elementor .elementor-element.elementor-element-f7197d3 .elementor-widget-button .elementor-button:has(.elementor-button-icon) .elementor-button-text,
.elementor .elementor-element.elementor-element-f7197d3 .elementor-widget-button .elementor-button:has(.elementor-button-icon) .elementor-button-content-wrapper,
.elementor .elementor-element.elementor-element-f7197d3 .elementor-widget-button .elementor-button:has(.elementor-button-icon) .elementor-button-icon {
    color: #232323 !important;
    fill: #232323 !important;
    font-family: "Open Sans", sans-serif !important;
    font-size: 14px !important;
    font-weight: 300 !important;
    line-height: 20px !important;
    letter-spacing: 0.5px !important;
    text-transform: uppercase !important;
}

@media (max-width: 767px) {
    .elementor .elementor-element.elementor-element-f7197d3 .elementor-widget-button .elementor-button:has(.elementor-button-icon),
    .elementor .elementor-element.elementor-element-f7197d3 .elementor-widget-button .elementor-button.elementor-size-sm:has(.elementor-button-icon) {
        font-size: 12px !important;
        padding: 5px 0 !important;
    }

    .elementor .elementor-element.elementor-element-f7197d3 .elementor-widget-button .elementor-button:has(.elementor-button-icon) .elementor-button-text,
    .elementor .elementor-element.elementor-element-f7197d3 .elementor-widget-button .elementor-button:has(.elementor-button-icon) .elementor-button-content-wrapper,
    .elementor .elementor-element.elementor-element-f7197d3 .elementor-widget-button .elementor-button:has(.elementor-button-icon) .elementor-button-icon {
        font-size: 12px !important;
    }
}

/* Restore the original homepage hero CTA style across translations. */
.elementor .elementor-element.elementor-element-1c66ce00.elementor-widget-button .elementor-button,
.elementor .elementor-element.elementor-element-1c66ce00.elementor-widget-button .elementor-button.elementor-size-sm {
    background-color: #C7768700 !important;
    color: #ffffff !important;
    fill: #ffffff !important;
    border: 2px solid #ffffff !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    text-shadow: none !important;
    font-family: "Open Sans", sans-serif !important;
    font-size: 16px !important;
    font-weight: 400 !important;
    line-height: 24px !important;
    letter-spacing: 1px !important;
    text-transform: uppercase !important;
    font-style: normal !important;
    text-decoration: none !important;
}

.elementor .elementor-element.elementor-element-1c66ce00.elementor-widget-button .elementor-button:hover,
.elementor .elementor-element.elementor-element-1c66ce00.elementor-widget-button .elementor-button:focus {
    background-color: #C7768700 !important;
    color: #ffffff !important;
    fill: #ffffff !important;
    border-color: #ffffff !important;
}

.elementor .elementor-element.elementor-element-1c66ce00.elementor-widget-button .elementor-button-content-wrapper {
    flex-direction: row-reverse !important;
}

.elementor .elementor-element.elementor-element-1c66ce00.elementor-widget-button .elementor-button .elementor-button-text,
.elementor .elementor-element.elementor-element-1c66ce00.elementor-widget-button .elementor-button .elementor-button-content-wrapper,
.elementor .elementor-element.elementor-element-1c66ce00.elementor-widget-button .elementor-button .elementor-button-icon {
    color: #ffffff !important;
    fill: #ffffff !important;
    font-size: 16px !important;
    font-weight: 400 !important;
    line-height: 24px !important;
    letter-spacing: 1px !important;
}

/* Compact contact buttons in header/footer. */
.elementor-element-2b6481f .elementor-button,
.elementor-element-43ee3f7 .elementor-button,
.elementor-element-6cb75a8 .elementor-button,
.elementor-element-e15521f .elementor-button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    font-size: 12px !important;
    line-height: 16px !important;
    font-weight: 300 !important;
    letter-spacing: .5px !important;
    padding: 5px 10px !important;
    min-height: 0 !important;
    height: auto !important;
    white-space: nowrap !important;
}

.elementor-element-2b6481f .elementor-button .elementor-button-text,
.elementor-element-43ee3f7 .elementor-button .elementor-button-text,
.elementor-element-6cb75a8 .elementor-button .elementor-button-text,
.elementor-element-e15521f .elementor-button .elementor-button-text,
.elementor-element-2b6481f .elementor-button .elementor-button-content-wrapper,
.elementor-element-43ee3f7 .elementor-button .elementor-button-content-wrapper,
.elementor-element-6cb75a8 .elementor-button .elementor-button-content-wrapper,
.elementor-element-e15521f .elementor-button .elementor-button-content-wrapper {
    display: inline-flex !important;
    align-items: center !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    font-size: 12px !important;
    font-weight: 300 !important;
    line-height: 16px !important;
    letter-spacing: .5px !important;
    white-space: nowrap !important;
}

.elementor-element-2b6481f .elementor-button-wrapper,
.elementor-element-43ee3f7 .elementor-button-wrapper,
.elementor-element-6cb75a8 .elementor-button-wrapper,
.elementor-element-e15521f .elementor-button-wrapper {
    display: inline-flex !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
}

@media (max-width: 767px) {
    .elementor-element-6cb75a8 .elementor-button,
    .elementor-element-2b6481f .elementor-button,
    .elementor-element-43ee3f7 .elementor-button,
    .elementor-element-e15521f .elementor-button {
        font-size: 12px !important;
        line-height: 16px !important;
        letter-spacing: .5px !important;
        padding: 5px 10px !important;
    }
}

.elementor .elementor-element.elementor-element-2b6481f.elementor-widget-button,
.elementor .elementor-element.elementor-element-43ee3f7.elementor-widget-button,
.elementor .elementor-element.elementor-element-6cb75a8.elementor-widget-button,
.elementor .elementor-element.elementor-element-e15521f.elementor-widget-button {
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
}

.elementor .elementor-element.elementor-element-2b6481f.elementor-widget-button .elementor-widget-container,
.elementor .elementor-element.elementor-element-43ee3f7.elementor-widget-button .elementor-widget-container,
.elementor .elementor-element.elementor-element-6cb75a8.elementor-widget-button .elementor-widget-container,
.elementor .elementor-element.elementor-element-e15521f.elementor-widget-button .elementor-widget-container,
.elementor .elementor-element.elementor-element-2b6481f.elementor-widget-button .elementor-button-wrapper,
.elementor .elementor-element.elementor-element-43ee3f7.elementor-widget-button .elementor-button-wrapper,
.elementor .elementor-element.elementor-element-6cb75a8.elementor-widget-button .elementor-button-wrapper,
.elementor .elementor-element.elementor-element-e15521f.elementor-widget-button .elementor-button-wrapper {
    display: inline-flex !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
}

.elementor .elementor-element.elementor-element-2b6481f.elementor-widget-button .elementor-button.elementor-size-sm,
.elementor .elementor-element.elementor-element-43ee3f7.elementor-widget-button .elementor-button.elementor-size-sm,
.elementor .elementor-element.elementor-element-6cb75a8.elementor-widget-button .elementor-button.elementor-size-sm,
.elementor .elementor-element.elementor-element-e15521f.elementor-widget-button .elementor-button.elementor-size-sm {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    height: auto !important;
    min-height: 0 !important;
    padding: 5px 10px !important;
    font-family: "Open Sans", sans-serif !important;
    font-size: 12px !important;
    font-weight: 300 !important;
    line-height: 16px !important;
    letter-spacing: .5px !important;
    white-space: nowrap !important;
}

html[lang^="ka"] .elementor .elementor-element.elementor-element-2b6481f.btn_header_top.elementor-widget-button .elementor-button.elementor-size-sm,
html[lang^="ka"] .elementor .elementor-element.elementor-element-2b6481f.btn_header_top.elementor-widget-button .elementor-button.elementor-size-sm .elementor-button-content-wrapper,
html[lang^="ka"] .elementor .elementor-element.elementor-element-2b6481f.btn_header_top.elementor-widget-button .elementor-button.elementor-size-sm .elementor-button-text {
    font-size: 10px !important;
}

.elementor .elementor-element.elementor-element-2b6481f.elementor-widget-button .elementor-button.elementor-size-sm .elementor-button-content-wrapper,
.elementor .elementor-element.elementor-element-43ee3f7.elementor-widget-button .elementor-button.elementor-size-sm .elementor-button-content-wrapper,
.elementor .elementor-element.elementor-element-6cb75a8.elementor-widget-button .elementor-button.elementor-size-sm .elementor-button-content-wrapper,
.elementor .elementor-element.elementor-element-e15521f.elementor-widget-button .elementor-button.elementor-size-sm .elementor-button-content-wrapper,
.elementor .elementor-element.elementor-element-2b6481f.elementor-widget-button .elementor-button.elementor-size-sm .elementor-button-text,
.elementor .elementor-element.elementor-element-43ee3f7.elementor-widget-button .elementor-button.elementor-size-sm .elementor-button-text,
.elementor .elementor-element.elementor-element-6cb75a8.elementor-widget-button .elementor-button.elementor-size-sm .elementor-button-text,
.elementor .elementor-element.elementor-element-e15521f.elementor-widget-button .elementor-button.elementor-size-sm .elementor-button-text {
    display: inline-flex !important;
    width: auto !important;
    font-size: 12px !important;
    font-weight: 300 !important;
    line-height: 16px !important;
    letter-spacing: .5px !important;
    white-space: nowrap !important;
}

/* Keep video hero CTA buttons as the original white outline style. */
.elementor .elementor-element.elementor-element-2dd37c7a.elementor-widget-button .elementor-button,
.elementor .elementor-element.elementor-element-2dd37c7a.elementor-widget-button .elementor-button.elementor-size-sm,
.elementor .elementor-element.elementor-element-67120b8d.elementor-widget-button .elementor-button,
.elementor .elementor-element.elementor-element-67120b8d.elementor-widget-button .elementor-button.elementor-size-sm,
.elementor .elementor-element.elementor-element-7e127f6.elementor-widget-button .elementor-button,
.elementor .elementor-element.elementor-element-7e127f6.elementor-widget-button .elementor-button.elementor-size-sm,
.elementor .elementor-element.elementor-element-66daa6f.elementor-widget-button .elementor-button,
.elementor .elementor-element.elementor-element-66daa6f.elementor-widget-button .elementor-button.elementor-size-sm,
.elementor .elementor-element.elementor-element-cc39f66e.elementor-widget-button .elementor-button,
.elementor .elementor-element.elementor-element-cc39f66e.elementor-widget-button .elementor-button.elementor-size-sm,
.elementor .elementor-element.elementor-element-9484cb9.elementor-widget-button .elementor-button,
.elementor .elementor-element.elementor-element-9484cb9.elementor-widget-button .elementor-button.elementor-size-sm,
.elementor .elementor-element.elementor-element-f16e1c4.elementor-widget-button .elementor-button,
.elementor .elementor-element.elementor-element-f16e1c4.elementor-widget-button .elementor-button.elementor-size-sm {
    background-color: #C7768700 !important;
    color: #ffffff !important;
    fill: #ffffff !important;
    border: 2px solid #ffffff !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    text-shadow: none !important;
    font-family: "Open Sans", sans-serif !important;
    font-size: 16px !important;
    font-weight: 400 !important;
    line-height: 24px !important;
    letter-spacing: 1px !important;
    text-transform: uppercase !important;
    font-style: normal !important;
    text-decoration: none !important;
}

.elementor .elementor-element.elementor-element-2dd37c7a.elementor-widget-button .elementor-button:hover,
.elementor .elementor-element.elementor-element-2dd37c7a.elementor-widget-button .elementor-button:focus,
.elementor .elementor-element.elementor-element-67120b8d.elementor-widget-button .elementor-button:hover,
.elementor .elementor-element.elementor-element-67120b8d.elementor-widget-button .elementor-button:focus,
.elementor .elementor-element.elementor-element-7e127f6.elementor-widget-button .elementor-button:hover,
.elementor .elementor-element.elementor-element-7e127f6.elementor-widget-button .elementor-button:focus,
.elementor .elementor-element.elementor-element-66daa6f.elementor-widget-button .elementor-button:hover,
.elementor .elementor-element.elementor-element-66daa6f.elementor-widget-button .elementor-button:focus,
.elementor .elementor-element.elementor-element-cc39f66e.elementor-widget-button .elementor-button:hover,
.elementor .elementor-element.elementor-element-cc39f66e.elementor-widget-button .elementor-button:focus,
.elementor .elementor-element.elementor-element-9484cb9.elementor-widget-button .elementor-button:hover,
.elementor .elementor-element.elementor-element-9484cb9.elementor-widget-button .elementor-button:focus,
.elementor .elementor-element.elementor-element-f16e1c4.elementor-widget-button .elementor-button:hover,
.elementor .elementor-element.elementor-element-f16e1c4.elementor-widget-button .elementor-button:focus {
    background-color: #C7768700 !important;
    color: #ffffff !important;
    fill: #ffffff !important;
    border-color: #ffffff !important;
}

.elementor .elementor-element.elementor-element-2dd37c7a.elementor-widget-button .elementor-button .elementor-button-text,
.elementor .elementor-element.elementor-element-2dd37c7a.elementor-widget-button .elementor-button .elementor-button-content-wrapper,
.elementor .elementor-element.elementor-element-2dd37c7a.elementor-widget-button .elementor-button .elementor-button-icon,
.elementor .elementor-element.elementor-element-67120b8d.elementor-widget-button .elementor-button .elementor-button-text,
.elementor .elementor-element.elementor-element-67120b8d.elementor-widget-button .elementor-button .elementor-button-content-wrapper,
.elementor .elementor-element.elementor-element-67120b8d.elementor-widget-button .elementor-button .elementor-button-icon,
.elementor .elementor-element.elementor-element-7e127f6.elementor-widget-button .elementor-button .elementor-button-text,
.elementor .elementor-element.elementor-element-7e127f6.elementor-widget-button .elementor-button .elementor-button-content-wrapper,
.elementor .elementor-element.elementor-element-7e127f6.elementor-widget-button .elementor-button .elementor-button-icon,
.elementor .elementor-element.elementor-element-66daa6f.elementor-widget-button .elementor-button .elementor-button-text,
.elementor .elementor-element.elementor-element-66daa6f.elementor-widget-button .elementor-button .elementor-button-content-wrapper,
.elementor .elementor-element.elementor-element-66daa6f.elementor-widget-button .elementor-button .elementor-button-icon,
.elementor .elementor-element.elementor-element-cc39f66e.elementor-widget-button .elementor-button .elementor-button-text,
.elementor .elementor-element.elementor-element-cc39f66e.elementor-widget-button .elementor-button .elementor-button-content-wrapper,
.elementor .elementor-element.elementor-element-cc39f66e.elementor-widget-button .elementor-button .elementor-button-icon,
.elementor .elementor-element.elementor-element-9484cb9.elementor-widget-button .elementor-button .elementor-button-text,
.elementor .elementor-element.elementor-element-9484cb9.elementor-widget-button .elementor-button .elementor-button-content-wrapper,
.elementor .elementor-element.elementor-element-9484cb9.elementor-widget-button .elementor-button .elementor-button-icon,
.elementor .elementor-element.elementor-element-f16e1c4.elementor-widget-button .elementor-button .elementor-button-text,
.elementor .elementor-element.elementor-element-f16e1c4.elementor-widget-button .elementor-button .elementor-button-content-wrapper,
.elementor .elementor-element.elementor-element-f16e1c4.elementor-widget-button .elementor-button .elementor-button-icon {
    color: #ffffff !important;
    fill: #ffffff !important;
    font-size: 16px !important;
    font-weight: 400 !important;
    line-height: 24px !important;
    letter-spacing: 1px !important;
}

.elementor .elementor-element.elementor-element-2dd37c7a.elementor-widget-button .elementor-button-content-wrapper,
.elementor .elementor-element.elementor-element-67120b8d.elementor-widget-button .elementor-button-content-wrapper,
.elementor .elementor-element.elementor-element-7e127f6.elementor-widget-button .elementor-button-content-wrapper,
.elementor .elementor-element.elementor-element-66daa6f.elementor-widget-button .elementor-button-content-wrapper,
.elementor .elementor-element.elementor-element-cc39f66e.elementor-widget-button .elementor-button-content-wrapper,
.elementor .elementor-element.elementor-element-9484cb9.elementor-widget-button .elementor-button-content-wrapper,
.elementor .elementor-element.elementor-element-f16e1c4.elementor-widget-button .elementor-button-content-wrapper {
    flex-direction: row-reverse !important;
}

/* Restore the original EN kinetic hero CTA style. */
body.page-id-121 .elementor .elementor-element.elementor-element-2dd37c7a.elementor-widget-button .elementor-button,
body.page-id-121 .elementor .elementor-element.elementor-element-2dd37c7a.elementor-widget-button .elementor-button.elementor-size-sm {
    background-color: #C7768700 !important;
    color: #ffffff !important;
    fill: #ffffff !important;
    border: 2px solid #ffffff !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    text-shadow: none !important;
    font-family: "Open Sans", sans-serif !important;
    font-size: 16px !important;
    font-weight: 400 !important;
    line-height: 24px !important;
    letter-spacing: 1px !important;
    text-transform: uppercase !important;
    font-style: normal !important;
    text-decoration: none !important;
}

body.page-id-121 .elementor .elementor-element.elementor-element-2dd37c7a.elementor-widget-button .elementor-button:hover,
body.page-id-121 .elementor .elementor-element.elementor-element-2dd37c7a.elementor-widget-button .elementor-button:focus {
    background-color: #C7768700 !important;
    color: #ffffff !important;
    fill: #ffffff !important;
    border-color: #ffffff !important;
}

body.page-id-121 .elementor .elementor-element.elementor-element-2dd37c7a.elementor-widget-button .elementor-button-content-wrapper {
    flex-direction: row-reverse !important;
}

body.page-id-121 .elementor .elementor-element.elementor-element-2dd37c7a.elementor-widget-button .elementor-button .elementor-button-text,
body.page-id-121 .elementor .elementor-element.elementor-element-2dd37c7a.elementor-widget-button .elementor-button .elementor-button-content-wrapper,
body.page-id-121 .elementor .elementor-element.elementor-element-2dd37c7a.elementor-widget-button .elementor-button .elementor-button-icon {
    color: #ffffff !important;
    fill: #ffffff !important;
    font-size: 16px !important;
    font-weight: 400 !important;
    line-height: 24px !important;
    letter-spacing: 1px !important;
}

/* Restore project-card CTA buttons on installation pages. */
.elementor .elementor-element.elementor-element-1cf85c02.elementor-widget-button .elementor-button,
.elementor .elementor-element.elementor-element-59ae2b20.elementor-widget-button .elementor-button,
.elementor .elementor-element.elementor-element-18b3c151.elementor-widget-button .elementor-button,
.elementor .elementor-element.elementor-element-352b2195.elementor-widget-button .elementor-button,
.elementor .elementor-element.elementor-element-19e8693.elementor-widget-button .elementor-button,
.elementor .elementor-element.elementor-element-6e3d672.elementor-widget-button .elementor-button,
.elementor .elementor-element.elementor-element-a04d4b8.elementor-widget-button .elementor-button,
.elementor .elementor-element.elementor-element-c00aada.elementor-widget-button .elementor-button,
.elementor .elementor-element.elementor-element-b6d5daf.elementor-widget-button .elementor-button,
.elementor .elementor-element.elementor-element-6b7075f.elementor-widget-button .elementor-button,
.elementor .elementor-element.elementor-element-28ecd54.elementor-widget-button .elementor-button,
.elementor .elementor-element.elementor-element-38c255b.elementor-widget-button .elementor-button,
.elementor .elementor-element.elementor-element-c7ed5db.elementor-widget-button .elementor-button,
.elementor .elementor-element.elementor-element-8a73a64.elementor-widget-button .elementor-button,
.elementor .elementor-element.elementor-element-c50aa18.elementor-widget-button .elementor-button,
.elementor .elementor-element.elementor-element-c437fea.elementor-widget-button .elementor-button,
.elementor .elementor-element.elementor-element-144fd80.elementor-widget-button .elementor-button,
.elementor .elementor-element.elementor-element-0cdf4fe.elementor-widget-button .elementor-button,
.elementor .elementor-element.elementor-element-e3dccf7.elementor-widget-button .elementor-button,
.elementor .elementor-element.elementor-element-916decf.elementor-widget-button .elementor-button,
.elementor .elementor-element.elementor-element-ded9105.elementor-widget-button .elementor-button,
.elementor .elementor-element.elementor-element-f5b7b59.elementor-widget-button .elementor-button,
.elementor .elementor-element.elementor-element-b7146a9.elementor-widget-button .elementor-button,
.elementor .elementor-element.elementor-element-1b20cf1.elementor-widget-button .elementor-button,
.elementor .elementor-element.elementor-element-63a9d19.elementor-widget-button .elementor-button,
.elementor .elementor-element.elementor-element-c926f76.elementor-widget-button .elementor-button,
.elementor .elementor-element.elementor-element-fbc4e97.elementor-widget-button .elementor-button,
.elementor .elementor-element.elementor-element-f30ff94.elementor-widget-button .elementor-button {
    background-color: #00000000 !important;
    border-style: none !important;
    box-shadow: none !important;
    text-shadow: none !important;
    padding: 5px 0 !important;
    font-family: "Open Sans", sans-serif !important;
    font-size: 14px !important;
    font-weight: 300 !important;
    line-height: 20px !important;
    letter-spacing: .5px !important;
    text-transform: uppercase !important;
    font-style: normal !important;
    text-decoration: none !important;
    color: #232323 !important;
    fill: #232323 !important;
}

.elementor .elementor-element.elementor-widget-button .elementor-button:is(
    .elementor-element-1cf85c02 *,
    .elementor-element-59ae2b20 *,
    .elementor-element-18b3c151 *,
    .elementor-element-352b2195 *,
    .elementor-element-19e8693 *,
    .elementor-element-6e3d672 *,
    .elementor-element-a04d4b8 *,
    .elementor-element-c00aada *,
    .elementor-element-b6d5daf *,
    .elementor-element-6b7075f *,
    .elementor-element-28ecd54 *,
    .elementor-element-38c255b *,
    .elementor-element-c7ed5db *,
    .elementor-element-8a73a64 *,
    .elementor-element-c50aa18 *,
    .elementor-element-c437fea *,
    .elementor-element-144fd80 *,
    .elementor-element-0cdf4fe *,
    .elementor-element-e3dccf7 *,
    .elementor-element-916decf *,
    .elementor-element-ded9105 *,
    .elementor-element-f5b7b59 *,
    .elementor-element-b7146a9 *,
    .elementor-element-1b20cf1 *,
    .elementor-element-63a9d19 *,
    .elementor-element-c926f76 *,
    .elementor-element-fbc4e97 *,
    .elementor-element-f30ff94 *
):hover,
.elementor .elementor-element.elementor-widget-button .elementor-button:is(
    .elementor-element-1cf85c02 *,
    .elementor-element-59ae2b20 *,
    .elementor-element-18b3c151 *,
    .elementor-element-352b2195 *,
    .elementor-element-19e8693 *,
    .elementor-element-6e3d672 *,
    .elementor-element-a04d4b8 *,
    .elementor-element-c00aada *,
    .elementor-element-b6d5daf *,
    .elementor-element-6b7075f *,
    .elementor-element-28ecd54 *,
    .elementor-element-38c255b *,
    .elementor-element-c7ed5db *,
    .elementor-element-8a73a64 *,
    .elementor-element-c50aa18 *,
    .elementor-element-c437fea *,
    .elementor-element-144fd80 *,
    .elementor-element-0cdf4fe *,
    .elementor-element-e3dccf7 *,
    .elementor-element-916decf *,
    .elementor-element-ded9105 *,
    .elementor-element-f5b7b59 *,
    .elementor-element-b7146a9 *,
    .elementor-element-1b20cf1 *,
    .elementor-element-63a9d19 *,
    .elementor-element-c926f76 *,
    .elementor-element-fbc4e97 *,
    .elementor-element-f30ff94 *
):focus {
    background-color: transparent !important;
    border-color: var(--e-global-color-twbb_button_hover) !important;
    color: #232323 !important;
    fill: #232323 !important;
}

.elementor .elementor-element.elementor-element-1cf85c02.elementor-widget-button .elementor-button-content-wrapper,
.elementor .elementor-element.elementor-element-59ae2b20.elementor-widget-button .elementor-button-content-wrapper,
.elementor .elementor-element.elementor-element-18b3c151.elementor-widget-button .elementor-button-content-wrapper,
.elementor .elementor-element.elementor-element-352b2195.elementor-widget-button .elementor-button-content-wrapper,
.elementor .elementor-element.elementor-element-19e8693.elementor-widget-button .elementor-button-content-wrapper,
.elementor .elementor-element.elementor-element-6e3d672.elementor-widget-button .elementor-button-content-wrapper,
.elementor .elementor-element.elementor-element-a04d4b8.elementor-widget-button .elementor-button-content-wrapper,
.elementor .elementor-element.elementor-element-c00aada.elementor-widget-button .elementor-button-content-wrapper,
.elementor .elementor-element.elementor-element-b6d5daf.elementor-widget-button .elementor-button-content-wrapper,
.elementor .elementor-element.elementor-element-6b7075f.elementor-widget-button .elementor-button-content-wrapper,
.elementor .elementor-element.elementor-element-28ecd54.elementor-widget-button .elementor-button-content-wrapper,
.elementor .elementor-element.elementor-element-38c255b.elementor-widget-button .elementor-button-content-wrapper,
.elementor .elementor-element.elementor-element-c7ed5db.elementor-widget-button .elementor-button-content-wrapper,
.elementor .elementor-element.elementor-element-8a73a64.elementor-widget-button .elementor-button-content-wrapper,
.elementor .elementor-element.elementor-element-c50aa18.elementor-widget-button .elementor-button-content-wrapper,
.elementor .elementor-element.elementor-element-c437fea.elementor-widget-button .elementor-button-content-wrapper,
.elementor .elementor-element.elementor-element-144fd80.elementor-widget-button .elementor-button-content-wrapper,
.elementor .elementor-element.elementor-element-0cdf4fe.elementor-widget-button .elementor-button-content-wrapper,
.elementor .elementor-element.elementor-element-e3dccf7.elementor-widget-button .elementor-button-content-wrapper,
.elementor .elementor-element.elementor-element-916decf.elementor-widget-button .elementor-button-content-wrapper,
.elementor .elementor-element.elementor-element-ded9105.elementor-widget-button .elementor-button-content-wrapper,
.elementor .elementor-element.elementor-element-f5b7b59.elementor-widget-button .elementor-button-content-wrapper,
.elementor .elementor-element.elementor-element-b7146a9.elementor-widget-button .elementor-button-content-wrapper,
.elementor .elementor-element.elementor-element-1b20cf1.elementor-widget-button .elementor-button-content-wrapper,
.elementor .elementor-element.elementor-element-63a9d19.elementor-widget-button .elementor-button-content-wrapper,
.elementor .elementor-element.elementor-element-c926f76.elementor-widget-button .elementor-button-content-wrapper,
.elementor .elementor-element.elementor-element-fbc4e97.elementor-widget-button .elementor-button-content-wrapper,
.elementor .elementor-element.elementor-element-f30ff94.elementor-widget-button .elementor-button-content-wrapper {
    flex-direction: row-reverse !important;
}

@media (max-width: 767px) {
    .elementor .elementor-element.elementor-widget-button .elementor-button:is(
        .elementor-element-1cf85c02 *,
        .elementor-element-59ae2b20 *,
        .elementor-element-18b3c151 *,
        .elementor-element-352b2195 *,
        .elementor-element-19e8693 *,
        .elementor-element-6e3d672 *,
        .elementor-element-a04d4b8 *,
        .elementor-element-c00aada *,
        .elementor-element-b6d5daf *,
        .elementor-element-6b7075f *,
        .elementor-element-28ecd54 *,
        .elementor-element-38c255b *,
        .elementor-element-c7ed5db *,
        .elementor-element-8a73a64 *,
        .elementor-element-c50aa18 *,
        .elementor-element-c437fea *,
        .elementor-element-144fd80 *,
        .elementor-element-0cdf4fe *,
        .elementor-element-e3dccf7 *,
        .elementor-element-916decf *,
        .elementor-element-ded9105 *,
        .elementor-element-f5b7b59 *,
        .elementor-element-b7146a9 *,
        .elementor-element-1b20cf1 *,
        .elementor-element-63a9d19 *,
        .elementor-element-c926f76 *,
        .elementor-element-fbc4e97 *,
        .elementor-element-f30ff94 *
    ) {
        font-size: 12px !important;
    }
}

/* Final guard: Georgian header CTA must stay compact. */
html[lang^="ka"] .elementor .elementor-element.elementor-element-2b6481f.elementor-widget-button .elementor-button,
html[lang^="ka"] .elementor .elementor-element.elementor-element-2b6481f.elementor-widget-button .elementor-button.elementor-size-sm,
html[lang^="ka"] .elementor .elementor-element.elementor-element-2b6481f.elementor-widget-button .elementor-button-content-wrapper,
html[lang^="ka"] .elementor .elementor-element.elementor-element-2b6481f.elementor-widget-button .elementor-button-text {
    font-size: 10px !important;
    line-height: 14px !important;
}

/* DION Logo Font and Styling */
@font-face {
    font-family: 'sf ui display-bold';
    font-style: normal;
    font-weight: bold;
    font-display: swap;
    src: url('https://fontan.tomiuk.click/wp-content/uploads/fonts/SFUIDisplay-Bold.ttf') format('truetype');
}
.dion-logo-heading, .dion-logo-heading a, .dion-logo-heading .elementor-heading-title, .dion-logo-heading .elementor-heading-title a {
    font-family: 'sf ui display-bold', Sans-serif !important;
    font-size: 30px !important;
    font-weight: bold !important;
    font-style: normal !important;
    letter-spacing: 2.5px !important;
    color: #232323 !important;
    text-decoration: none !important;
    line-height: 1 !important;
    display: inline-block !important;
    margin: 0 !important;
}
.dion-logo-heading a:hover, .dion-logo-heading .elementor-heading-title a:hover {
    color: #000000 !important;
    text-decoration: none !important;
}


/* Feature project card media & image sizing */
.sf-projects--feature .sf-project-card--feature .sf-project-card__media,
.sf-project-card--feature .sf-project-card__media {
    width: 100%;
}
.sf-projects--feature .sf-project-card--feature .sf-project-card__image,
.sf-project-card--feature .sf-project-card__image {
    display: inline-block;
    height: 600px !important;
    max-width: 100% !important;
    object-fit: cover !important;
    width: 100% !important;
}

@media (max-width: 1024px) {
    .sf-projects--feature .sf-project-card--feature .sf-project-card__image,
    .sf-project-card--feature .sf-project-card__image {
        height: 230px !important;
    }
}


/* ==========================================================================
   Typography Alignment: Projects & Concepts Pages
   Matches https://fontan.tomiuk.click/interactive-installations/
   ========================================================================== */

/* 1. Page Title (H1) */
.elementor .elementor-element.elementor-element-c89c147 .elementor-heading-title,
.elementor .elementor-element.elementor-element-4368800 .elementor-heading-title {
    color: #232323 !important;
    font-family: "Open Sans", Arial, sans-serif !important;
    font-size: 35px !important;
    font-weight: 300 !important;
    letter-spacing: 1px !important;
    line-height: 1.2 !important;
    text-transform: uppercase !important;
}

@media (max-width: 1024px) {
    .elementor .elementor-element.elementor-element-c89c147 .elementor-heading-title,
    .elementor .elementor-element.elementor-element-4368800 .elementor-heading-title {
        font-size: 30px !important;
    }
}

@media (max-width: 767px) {
    .elementor .elementor-element.elementor-element-c89c147 .elementor-heading-title,
    .elementor .elementor-element.elementor-element-4368800 .elementor-heading-title {
        font-size: 24px !important;
        font-weight: 300 !important;
        letter-spacing: 0.5px !important;
        line-height: 1.3 !important;
    }
}

/* 2. Section Heading on Projects (H2) */
.elementor .elementor-element.elementor-element-d7cc43b .elementor-heading-title {
    color: #232323 !important;
    font-family: "Open Sans", Arial, sans-serif !important;
    font-size: 35px !important;
    font-weight: 300 !important;
    letter-spacing: 0.5px !important;
    line-height: 1.2 !important;
    text-transform: uppercase !important;
}

@media (max-width: 1024px) {
    .elementor .elementor-element.elementor-element-d7cc43b .elementor-heading-title {
        font-size: 28px !important;
    }
}

@media (max-width: 767px) {
    .elementor .elementor-element.elementor-element-d7cc43b .elementor-heading-title {
        font-size: 21px !important;
        line-height: 1.3 !important;
    }
}

/* 3. Gallery Filter Tabs */
.sf-projects--gallery .eael-filter-gallery-control ul li.control {
    background: transparent !important;
    border: 1px solid #232323 !important;
    border-radius: 0 !important;
    color: #232323 !important;
    cursor: pointer !important;
    font-family: "Open Sans", Arial, sans-serif !important;
    font-size: 13px !important;
    font-weight: 400 !important;
    letter-spacing: 1px !important;
    line-height: 1 !important;
    margin: 0 5px 10px !important;
    padding: 10px 18px !important;
    text-transform: uppercase !important;
    transition: background-color .2s ease, color .2s ease !important;
}

.sf-projects--gallery .eael-filter-gallery-control ul li.control.active,
.sf-projects--gallery .eael-filter-gallery-control ul li.control:hover {
    background: #232323 !important;
    border-color: #232323 !important;
    color: #fff !important;
}

@media (max-width: 1024px) {
    .sf-projects--gallery .eael-filter-gallery-control ul li.control {
        font-size: 12px !important;
        padding: 8px 14px !important;
    }
}

@media (max-width: 767px) {
    .sf-projects--gallery .eael-filter-gallery-control ul li.control {
        font-size: 11px !important;
        margin: 4px 3px !important;
        padding: 7px 10px !important;
    }
}

/* 4. Gallery Project & Concept Card Titles */
.sf-projects--gallery .fg-item-title,
.sf-projects--gallery .fg-item-title a,
.sf-projects--gallery .sf-project-card__title,
.sf-projects--gallery .sf-project-card__title a {
    color: #232323 !important;
    font-family: "Open Sans", Arial, sans-serif !important;
    font-size: 18px !important;
    font-weight: 300 !important;
    letter-spacing: .5px !important;
    line-height: 1.35 !important;
    margin: 0 !important;
    text-decoration: none !important;
    text-transform: uppercase !important;
    transition: color .2s ease !important;
}

.sf-projects--gallery .fg-item-title a:hover,
.sf-projects--gallery .sf-project-card__title a:hover,
.sf-projects--gallery .eael-gallery-grid-item:hover .fg-item-title,
.sf-projects--gallery .eael-gallery-grid-item:hover .fg-item-title a {
    color: #000000 !important;
}

@media (max-width: 1024px) {
    .sf-projects--gallery .fg-item-title,
    .sf-projects--gallery .fg-item-title a,
    .sf-projects--gallery .sf-project-card__title,
    .sf-projects--gallery .sf-project-card__title a {
        font-size: 16px !important;
    }
}

@media (max-width: 767px) {
    .sf-projects--gallery .fg-item-title,
    .sf-projects--gallery .fg-item-title a,
    .sf-projects--gallery .sf-project-card__title,
    .sf-projects--gallery .sf-project-card__title a {
        font-size: 15px !important;
        line-height: 1.3 !important;
    }
}


/* ==========================================================================
   Typography Alignment: About Us, Blog, and Article Pages
   Matches site-wide Open Sans 300 typography standard
   ========================================================================== */

/* --- ABOUT US (UK & RU) --- */

/* Page Title (H1) */
.elementor .elementor-element.elementor-element-0b33443 .elementor-heading-title {
    color: #232323 !important;
    font-family: "Open Sans", Arial, sans-serif !important;
    font-size: 35px !important;
    font-weight: 300 !important;
    letter-spacing: 1px !important;
    line-height: 1.2 !important;
    text-transform: uppercase !important;
}

@media (max-width: 1024px) {
    .elementor .elementor-element.elementor-element-0b33443 .elementor-heading-title {
        font-size: 30px !important;
    }
}

@media (max-width: 767px) {
    .elementor .elementor-element.elementor-element-0b33443 .elementor-heading-title {
        font-size: 24px !important;
        font-weight: 300 !important;
        letter-spacing: 0.5px !important;
        line-height: 1.3 !important;
    }
}

/* About Us Section Headings (H2) */
.elementor .elementor-element.elementor-element-47f78a7 .elementor-heading-title,
.elementor .elementor-element.elementor-element-c4413d8 .elementor-heading-title,
.elementor .elementor-element.elementor-element-c69479b .elementor-heading-title,
.elementor .elementor-element.elementor-element-07c7223 .elementor-heading-title {
    color: #232323 !important;
    font-family: "Open Sans", Arial, sans-serif !important;
    font-size: 35px !important;
    font-weight: 300 !important;
    letter-spacing: 0.5px !important;
    line-height: 1.2 !important;
    text-transform: uppercase !important;
}

@media (max-width: 1024px) {
    .elementor .elementor-element.elementor-element-47f78a7 .elementor-heading-title,
    .elementor .elementor-element.elementor-element-c4413d8 .elementor-heading-title,
    .elementor .elementor-element.elementor-element-c69479b .elementor-heading-title,
    .elementor .elementor-element.elementor-element-07c7223 .elementor-heading-title {
        font-size: 28px !important;
    }
}

@media (max-width: 767px) {
    .elementor .elementor-element.elementor-element-47f78a7 .elementor-heading-title,
    .elementor .elementor-element.elementor-element-c4413d8 .elementor-heading-title,
    .elementor .elementor-element.elementor-element-c69479b .elementor-heading-title,
    .elementor .elementor-element.elementor-element-07c7223 .elementor-heading-title {
        font-size: 21px !important;
        line-height: 1.3 !important;
    }
}

/* About Us Step Headings (H3) */
.elementor .elementor-element.elementor-element-1e0bc0b .elementor-heading-title,
.elementor .elementor-element.elementor-element-06236a5 .elementor-heading-title,
.elementor .elementor-element.elementor-element-bba20ce .elementor-heading-title,
.elementor .elementor-element.elementor-element-6bb8dcd .elementor-heading-title,
.elementor .elementor-element.elementor-element-7405120 .elementor-heading-title,
.elementor .elementor-element.elementor-element-b1eb552 .elementor-heading-title {
    color: #232323 !important;
    font-family: "Open Sans", Arial, sans-serif !important;
    font-size: 24px !important;
    font-weight: 300 !important;
    letter-spacing: 0.5px !important;
    line-height: 1.2 !important;
    text-transform: uppercase !important;
}

@media (max-width: 1024px) {
    .elementor .elementor-element.elementor-element-1e0bc0b .elementor-heading-title,
    .elementor .elementor-element.elementor-element-06236a5 .elementor-heading-title,
    .elementor .elementor-element.elementor-element-bba20ce .elementor-heading-title,
    .elementor .elementor-element.elementor-element-6bb8dcd .elementor-heading-title,
    .elementor .elementor-element.elementor-element-7405120 .elementor-heading-title,
    .elementor .elementor-element.elementor-element-b1eb552 .elementor-heading-title {
        font-size: 20px !important;
    }
}

@media (max-width: 767px) {
    .elementor .elementor-element.elementor-element-1e0bc0b .elementor-heading-title,
    .elementor .elementor-element.elementor-element-06236a5 .elementor-heading-title,
    .elementor .elementor-element.elementor-element-bba20ce .elementor-heading-title,
    .elementor .elementor-element.elementor-element-6bb8dcd .elementor-heading-title,
    .elementor .elementor-element.elementor-element-7405120 .elementor-heading-title,
    .elementor .elementor-element.elementor-element-b1eb552 .elementor-heading-title {
        font-size: 17px !important;
        line-height: 1.2 !important;
    }
}

/* --- BLOG (UK & RU) --- */

/* Blog Page Title (H1) */
.elementor .elementor-element.elementor-element-c737850 .elementor-heading-title {
    color: #232323 !important;
    font-family: "Open Sans", Arial, sans-serif !important;
    font-size: 35px !important;
    font-weight: 300 !important;
    letter-spacing: 1px !important;
    line-height: 1.2 !important;
    text-transform: uppercase !important;
}

@media (max-width: 1024px) {
    .elementor .elementor-element.elementor-element-c737850 .elementor-heading-title {
        font-size: 30px !important;
    }
}

@media (max-width: 767px) {
    .elementor .elementor-element.elementor-element-c737850 .elementor-heading-title {
        font-size: 24px !important;
        font-weight: 300 !important;
        letter-spacing: 0.5px !important;
        line-height: 1.3 !important;
    }
}

/* Blog Posts Grid Cards */
.elementor-widget-tenweb-posts .elementor-post__title,
.elementor-widget-tenweb-posts .elementor-post__title a {
    color: #232323 !important;
    font-family: "Open Sans", Arial, sans-serif !important;
    font-size: 20px !important;
    font-weight: 300 !important;
    letter-spacing: 0.5px !important;
    line-height: 1.35 !important;
    text-decoration: none !important;
    text-transform: uppercase !important;
    transition: color .2s ease !important;
}

.elementor-widget-tenweb-posts .elementor-post__title a:hover {
    color: #000000 !important;
}

@media (max-width: 767px) {
    .elementor-widget-tenweb-posts .elementor-post__title,
    .elementor-widget-tenweb-posts .elementor-post__title a {
        font-size: 16px !important;
    }
}

.elementor-widget-tenweb-posts .elementor-post__excerpt,
.elementor-widget-tenweb-posts .elementor-post__excerpt p {
    color: #555555 !important;
    font-family: "Open Sans", Arial, sans-serif !important;
    font-size: 14px !important;
    font-weight: 300 !important;
    letter-spacing: 0.3px !important;
    line-height: 1.5 !important;
}

@media (max-width: 767px) {
    .elementor-widget-tenweb-posts .elementor-post__excerpt,
    .elementor-widget-tenweb-posts .elementor-post__excerpt p {
        font-size: 12px !important;
    }
}

.elementor-widget-tenweb-posts a.elementor-post__read-more {
    color: #232323 !important;
    font-family: "Open Sans", Arial, sans-serif !important;
    font-size: 13px !important;
    font-weight: 400 !important;
    letter-spacing: 0.5px !important;
    text-decoration: none !important;
    text-transform: uppercase !important;
}

.elementor-widget-tenweb-posts .elementor-post__meta-data {
    color: #888888 !important;
    font-family: "Open Sans", Arial, sans-serif !important;
    font-size: 12px !important;
    font-weight: 300 !important;
    letter-spacing: 0.5px !important;
}

/* --- ARTICLE PAGES (UK & RU) --- */

/* Article Hero Title (H1) */
.elementor .elementor-element.elementor-element-d74b0f2 .elementor-heading-title {
    color: #FFFFFF !important;
    font-family: "Open Sans", Arial, sans-serif !important;
    font-size: 35px !important;
    font-weight: 300 !important;
    letter-spacing: 1px !important;
    line-height: 1.2 !important;
    text-transform: uppercase !important;
}

@media (max-width: 1024px) {
    .elementor .elementor-element.elementor-element-d74b0f2 .elementor-heading-title {
        font-size: 30px !important;
    }
}

@media (max-width: 767px) {
    .elementor .elementor-element.elementor-element-d74b0f2 .elementor-heading-title {
        font-size: 24px !important;
        font-weight: 300 !important;
        letter-spacing: 0.5px !important;
        line-height: 1.3 !important;
    }
}

/* Article Body Content */
.elementor-widget-twbbpost-content,
.elementor-widget-twbbpost-content p,
.elementor-widget-twbbpost-content li,
.elementor-widget-twbbpost-content span {
    color: #333333 !important;
    font-family: "Open Sans", Arial, sans-serif !important;
    font-size: 16px !important;
    font-weight: 300 !important;
    letter-spacing: 0.3px !important;
    line-height: 1.65 !important;
}

@media (max-width: 767px) {
    .elementor-widget-twbbpost-content,
    .elementor-widget-twbbpost-content p,
    .elementor-widget-twbbpost-content li,
    .elementor-widget-twbbpost-content span {
        font-size: 14px !important;
        line-height: 1.6 !important;
    }
}

.elementor-widget-twbbpost-content strong,
.elementor-widget-twbbpost-content b {
    font-weight: 600 !important;
}

.elementor-widget-twbbpost-content h1 {
    color: #232323 !important;
    font-family: "Open Sans", Arial, sans-serif !important;
    font-size: 35px !important;
    font-weight: 300 !important;
    letter-spacing: 0.5px !important;
    line-height: 1.25 !important;
    margin-top: 0 !important;
    margin-bottom: 25px !important;
    text-transform: uppercase !important;
}

@media (max-width: 1024px) {
    .elementor-widget-twbbpost-content h1 {
        font-size: 28px !important;
        margin-bottom: 20px !important;
    }
}

@media (max-width: 767px) {
    .elementor-widget-twbbpost-content h1 {
        font-size: 22px !important;
        margin-bottom: 15px !important;
    }
}

.elementor-widget-twbbpost-content h2 {
    color: #232323 !important;
    font-family: "Open Sans", Arial, sans-serif !important;
    font-size: 28px !important;
    font-weight: 300 !important;
    letter-spacing: 0.5px !important;
    line-height: 1.3 !important;
    margin-top: 35px !important;
    margin-bottom: 15px !important;
    text-transform: uppercase !important;
}

@media (max-width: 767px) {
    .elementor-widget-twbbpost-content h2 {
        font-size: 20px !important;
        margin-top: 25px !important;
        margin-bottom: 10px !important;
    }
}

.elementor-widget-twbbpost-content h3 {
    color: #232323 !important;
    font-family: "Open Sans", Arial, sans-serif !important;
    font-size: 22px !important;
    font-weight: 300 !important;
    letter-spacing: 0.5px !important;
    line-height: 1.35 !important;
    margin-top: 28px !important;
    margin-bottom: 12px !important;
    text-transform: uppercase !important;
}

@media (max-width: 767px) {
    .elementor-widget-twbbpost-content h3 {
        font-size: 18px !important;
        margin-top: 20px !important;
        margin-bottom: 8px !important;
    }
}

.elementor-widget-twbbpost-content h4 {
    color: #232323 !important;
    font-family: "Open Sans", Arial, sans-serif !important;
    font-size: 18px !important;
    font-weight: 400 !important;
    letter-spacing: 0.5px !important;
    line-height: 1.35 !important;
    margin-top: 22px !important;
    margin-bottom: 10px !important;
}

.elementor-widget-twbbpost-content ul,
.elementor-widget-twbbpost-content ol {
    margin-block-end: 20px !important;
    padding-left: 20px !important;
}

.elementor-widget-twbbpost-content li {
    margin-bottom: 8px !important;
}

/* Related Posts Heading on Article */
.elementor .elementor-element.elementor-element-1a10s4d8 .elementor-heading-title {
    color: #232323 !important;
    font-family: "Open Sans", Arial, sans-serif !important;
    font-size: 35px !important;
    font-weight: 300 !important;
    letter-spacing: 0.5px !important;
    line-height: 1.2 !important;
    text-transform: uppercase !important;
}

@media (max-width: 1024px) {
    .elementor .elementor-element.elementor-element-1a10s4d8 .elementor-heading-title {
        font-size: 28px !important;
    }
}

@media (max-width: 767px) {
    .elementor .elementor-element.elementor-element-1a10s4d8 .elementor-heading-title {
        font-size: 21px !important;
        line-height: 1.3 !important;
    }
}

/* Share widget heading on Article */
.elementor .elementor-element.elementor-element-8l7vcmvg .elementor-heading-title {
    color: #232323 !important;
    font-family: "Open Sans", Arial, sans-serif !important;
    font-size: 22px !important;
    font-weight: 300 !important;
    letter-spacing: 0.5px !important;
    text-transform: uppercase !important;
}

@media (max-width: 767px) {
    .elementor .elementor-element.elementor-element-8l7vcmvg .elementor-heading-title {
        font-size: 18px !important;
    }
}


/* ==========================================================================
   Fountain Installations: Mobile Container Alignment & Overflow Fix
   UK: .elementor-element-24844c31
   RU: .elementor-element-296ec70c
   ========================================================================== */
@media (max-width: 767px) {
    .elementor .elementor-element.elementor-element-24844c31,
    .elementor .elementor-element.elementor-element-296ec70c {
        --padding-top: 20px !important;
        --padding-bottom: 20px !important;
        --padding-left: 20px !important;
        --padding-right: 20px !important;
        padding-left: 20px !important;
        padding-right: 20px !important;
        box-sizing: border-box !important;
    }

    .elementor .elementor-element.elementor-element-24844c31 > .e-con-inner,
    .elementor .elementor-element.elementor-element-296ec70c > .e-con-inner {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 auto !important;
        box-sizing: border-box !important;
    }

    .elementor .elementor-element.elementor-element-2018954d,
    .elementor .elementor-element.elementor-element-6f4bbb71 {
        width: 100% !important;
        max-width: 100% !important;
        --padding-bottom: 20px !important;
        padding-bottom: 20px !important;
        box-sizing: border-box !important;
    }

    .elementor .elementor-element.elementor-element-2672a34d,
    .elementor .elementor-element.elementor-element-2ca45b07 {
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
    }

    .elementor .elementor-element.elementor-element-2672a34d h2,
    .elementor .elementor-element.elementor-element-2ca45b07 h2 {
        overflow-wrap: break-word !important;
        word-wrap: break-word !important;
    }

    .elementor .elementor-element.elementor-element-46933ff9,
    .elementor .elementor-element.elementor-element-b4ad8b2d {
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
    }

    .elementor .elementor-element.elementor-element-46933ff9 > .elementor-widget-container,
    .elementor .elementor-element.elementor-element-b4ad8b2d > .elementor-widget-container {
        margin: 0 !important;
    }

    .elementor .elementor-element.elementor-element-46933ff9 img,
    .elementor .elementor-element.elementor-element-b4ad8b2d img {
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        display: block !important;
    }
}


/* ==========================================================================
   Project & Concept Pages: Align Video Hero Container with Header on Mobile
   Eliminates top white gap across all project/concept pages with video
   ========================================================================== */
@media (max-width: 767px) {
    .page-template-default #primary .entry-content > .elementor > .e-con:first-child:has(.elementor-widget-video),
    .single-page #primary .entry-content > .elementor > .e-con:first-child:has(.elementor-widget-video),
    .elementor-element.elementor-element-eea8e11,
    .elementor-element.elementor-element-2831860,
    .elementor-element.elementor-element-9d82d67,
    .elementor-element.elementor-element-f33cb64,
    .elementor-element.elementor-element-2fac991,
    .elementor-element.elementor-element-278f76ec {
        --margin-top: -55px !important;
        margin-top: -55px !important;
    }
}


/* ==========================================================================
   Project & Concept Single Pages: Main Title Typography Fix
   Matches site-wide Open Sans 300 typography standard
   ========================================================================== */
.elementor .elementor-element.elementor-element-128c6fd3 .elementor-heading-title,
.elementor .elementor-element.elementor-element-5a0727a .elementor-heading-title {
    color: #232323 !important;
    font-family: "Open Sans", Arial, sans-serif !important;
    font-size: 30px !important;
    font-weight: 300 !important;
    letter-spacing: 0.5px !important;
    line-height: 1.25 !important;
}

@media (max-width: 1024px) {
    .elementor .elementor-element.elementor-element-128c6fd3 .elementor-heading-title,
    .elementor .elementor-element.elementor-element-5a0727a .elementor-heading-title {
        font-size: 26px !important;
    }
}

@media (max-width: 767px) {
    .elementor .elementor-element.elementor-element-128c6fd3 .elementor-heading-title,
    .elementor .elementor-element.elementor-element-5a0727a .elementor-heading-title {
        font-size: 22px !important;
        line-height: 1.35 !important;
    }
}

/* ==========================================================================
   Fix: Single Post Pages - White Background
   ========================================================================== */
body.single-post,
body.single {
    background-color: #ffffff !important;
}

/* ==========================================================================
   Fix: Share Buttons on Post Pages - Transparent BG, Dark Icons
   Template UK: 26714, Template RU: 12543
   ========================================================================== */
.elementor-26714 .elementor-element.elementor-element-hn7h6qxp .elementor-share-btn__icon,
.elementor-12543 .elementor-element.elementor-element-hn7h6qxp .elementor-share-btn__icon {
    background-color: transparent !important;
    color: #232323 !important;
}
.elementor-26714 .elementor-element.elementor-element-hn7h6qxp .elementor-share-btn:hover .elementor-share-btn__icon,
.elementor-12543 .elementor-element.elementor-element-hn7h6qxp .elementor-share-btn:hover .elementor-share-btn__icon {
    background-color: transparent !important;
    color: #5F1928 !important;
}

/* Hide: Contact Form on Single Post Pages */
.single-post .elementor-element-3fc936e {
    display: none !important;
}

/* ==========================================================================
   Footer Social Icons: Smaller on Mobile to Fit in One Row
   Widget id: 98a2262
   ========================================================================== */
@media (max-width: 767px) {
    .elementor-element-98a2262 .elementor-social-icon {
        font-size: 12px !important;
        width: 32px !important;
        height: 32px !important;
        min-width: 32px !important;
        line-height: 32px !important;
    }
    .elementor-element-98a2262 .elementor-social-icon i,
    .elementor-element-98a2262 .elementor-social-icon svg {
        width: 16px !important;
        height: 16px !important;
    }
    .elementor-element-98a2262 .elementor-grid {
        gap: 6px !important;
        justify-content: center !important;
    }
}
