/*
Theme Name: BrightHub Child
Theme URI: http://brighthub.casethemes.net
Author: Case-Themes
Author URI: https://casethemes.net/
Description: BrightHub is a sleek WordPress theme crafted for SaaS and tech startups. It comes with beautifully designed homepage layouts, versatile inner pages, and feature-focused sections to showcase your product, pricing, and customer success stories. Fully responsive and easily customizable, BrightHub ensures your site looks stunning on any device. Launch your next SaaS project with BrightHub and have all the essentials you need in one powerful theme.
Version: 1.0.6
License: ThemeForest
License URI: https://themeforest.net/licenses
Template: brighthub
Text Domain: brighthub-child
Tags: saas, startup, business, consulting, consultant, agency, company, advertising, corporate, finance, financial, multipurpose, accountant, marketing, software, modern
Requires at least: 5.8 or Higher
Requires PHP: 7.4 or Higher
Tested up to: 6.4.1


/* ==========================================================================
   Header: TranslatePress language switcher (navbar)
   ========================================================================== */

/* Inter, self-hosted (Latin subset, WOFF2). Declared after the parent theme's 855 KB TTF rule
   for the same family, so that file is never downloaded; replaces the Google Fonts requests. */
@font-face {
    font-family: "Inter";
    src: url("assets/fonts/inter-var-latin.woff2") format("woff2");
    font-weight: 100 900;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Inter";
    src: url("assets/fonts/inter-var-latin-italic.woff2") format("woff2");
    font-weight: 100 900;
    font-style: italic;
    font-display: swap;
}

.trp-floating-switcher.trp-language-switcher {
    display: none !important;
}

/* Sitto header bar: tighter vertical rhythm */
#pxl-header-elementor .elementor-18146 .elementor-element-4f0ca8e.e-con {
    padding-top: 12px !important;
}

#pxl-header-elementor .elementor-18146 .elementor-element-2cccb73.e-con {
    padding-top: 8px !important;
    padding-bottom: 8px !important;
    padding-left: 4px !important;
    padding-right: 10px !important;
}

#pxl-header-elementor .elementor-18146 .elementor-element-headact.e-con {
    --padding-top: 0px;
    --padding-bottom: 0px;
    --padding-left: 0px;
    --padding-right: 0px;
    padding: 0 !important;
    align-self: center !important;
    flex: 0 0 auto;
    width: auto;
}

#pxl-header-elementor .sitto-header__actions.e-con {
    flex: 0 0 auto;
    width: auto;
}

#pxl-header-elementor .elementor-element-headlang .trp-elementor-language-switcher,
#pxl-header-elementor .elementor-element-headlang .trp-shortcode-switcher__wrapper {
    position: relative;
    overflow: visible;
}

#pxl-header-elementor .elementor-element-headlang .trp-shortcode-switcher {
    position: relative !important;
    inset: auto !important;
    transform: none !important;
    margin: 0 !important;
    width: auto;
    max-width: none;
    overflow: visible !important;
    padding: 0 !important;
    box-shadow: none;
}

#pxl-header-elementor .elementor-element-headlang .trp-shortcode-overlay {
    position: relative !important;
    left: auto !important;
    top: auto !important;
    z-index: 20;
}

/* Trigger: flag only — compact pill, 2px inset, rounded flag */
#pxl-header-elementor .elementor-element-headlang .trp-current-language-item__wrapper {
    justify-content: center !important;
    padding-right: 0 !important;
    height: 100%;
    align-items: center;
    overflow: hidden;
    border-radius: 4px;
}

#pxl-header-elementor .elementor-element-headlang .trp-shortcode-arrow {
    display: none !important;
}

#pxl-header-elementor .elementor-element-headlang .trp-current-language-item__wrapper .trp-language-item__current .trp-language-item-name {
    display: none !important;
}

#pxl-header-elementor .elementor-element-headlang .trp-current-language-item__wrapper .trp-language-item__current {
    pointer-events: auto !important;
    cursor: pointer;
    box-sizing: border-box;
    height: 100%;
    min-height: 0 !important;
    padding: 0 !important;
    border-radius: 4px !important;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

#pxl-header-elementor .elementor-element-headlang .trp-shortcode-overlay.trp-shortcode-switcher {
    box-sizing: border-box;
    height: 26px;
    min-height: 26px;
    width: auto;
    padding: 2px !important;
    border-radius: 5px !important;
    box-shadow: 0 1px 10px rgba(255, 255, 255, 0.09);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

#pxl-header-elementor .elementor-element-headlang .trp-shortcode-overlay.trp-shortcode-switcher.is-open {
    overflow: visible;
}

#pxl-header-elementor .elementor-element-headlang .trp-current-language-item__wrapper .trp-flag-image {
    height: 22px !important;
    width: auto !important;
    border-radius: 0 !important;
    display: block;
}

/* Dropdown: match header nav sub-menu */
#pxl-header-elementor .elementor-element-headlang .trp-switcher-dropdown-list {
    position: absolute;
    top: 100%;
    right: 0;
    left: auto;
    margin-top: 9px;
    width: max-content;
    min-width: 0;
    max-width: none;
    align-items: flex-start;
    background: #ffffff !important;
    border-radius: 5px !important;
    overflow: hidden;
    box-shadow: none;
    padding: 0 !important;
    z-index: 30;
}

#pxl-header-elementor .elementor-element-headlang .trp-switcher-dropdown-list[hidden] {
    display: none !important;
}

#pxl-header-elementor .elementor-element-headlang .trp-shortcode-overlay.is-open .trp-switcher-dropdown-list {
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.12) !important;
    padding: 5px 0 !important;
}

#pxl-header-elementor .elementor-element-headlang .trp-switcher-dropdown-list::before {
    content: '';
    position: absolute;
    top: -10px;
    left: 0;
    right: 0;
    height: 10px;
    background: transparent;
    display: block;
}

#pxl-header-elementor .elementor-element-headlang .trp-switcher-dropdown-list .trp-language-item {
    width: auto;
    max-width: none;
    align-self: flex-start;
    padding: 4px 9px;
    color: #181D27 !important;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.3;
    border-radius: 0;
    min-height: 0;
    white-space: nowrap;
}

#pxl-header-elementor .elementor-element-headlang .trp-switcher-dropdown-list .trp-language-item-name {
    color: inherit;
    font-size: inherit;
    font-weight: inherit;
}

#pxl-header-elementor .elementor-element-headlang .trp-switcher-dropdown-list .trp-language-item:hover {
    background: rgba(20, 56, 82, 0.06) !important;
}

#pxl-header-elementor .sitto-header__actions .pxl-button {
    flex: 0 0 auto;
}

/* Header nav: current page uses theme sliding pill (.pxl-menu__divider) — black text like :hover */
#pxl-header-elementor .elementor-element-529c5ba .pxl-menu.divider-move--style-3 .pxl-menu__primary > li.pxl-shape-active > a,
#pxl-header-elementor .elementor-element-529c5ba .pxl-menu.divider-move--style-3 .pxl-menu__primary > li.pxl-shape-active > a > i,
#pxl-header-elementor .elementor-element-529c5ba .pxl-menu.divider-move--style-3 .pxl-menu__primary > li.current-menu-item:hover > a,
#pxl-header-elementor .elementor-element-529c5ba .pxl-menu.divider-move--style-3 .pxl-menu__primary > li.current-menu-item:hover > a > i,
#pxl-header-elementor .elementor-element-529c5ba .pxl-menu.divider-move--style-3 .pxl-menu__primary > li.current-menu-ancestor.pxl-shape-active > a,
#pxl-header-elementor .elementor-element-529c5ba .pxl-menu.divider-move--style-3 .pxl-menu__primary > li.current-menu-ancestor.pxl-shape-active > a > i {
    color: #181D27 !important;
}

#pxl-header-elementor .elementor-element-529c5ba .pxl-menu.divider-move--style-3 .pxl-menu__primary > li.pxl-shape-active > a {
    position: relative;
    z-index: 1;
}

/* Header nav: the sliding hover pill (40px) sits in a 44px menu row; centre it vertically. */
#pxl-header-elementor .pxl-menu.divider-move--style-3 .pxl-menu__divider {
    margin-top: calc((44px - 40px) / 2);
}

/* Polylang header language toggle (DE | EN pill switch) */
#pxl-header-elementor .elementor-element-headlang .sitto-lang-toggle {
    position: relative;
    z-index: 25;
    display: inline-flex;
}

#pxl-header-elementor .elementor-element-headlang .sitto-lang-toggle__track {
    position: relative;
    display: inline-grid;
    grid-template-columns: 1fr 1fr;
    align-items: center;
    box-sizing: border-box;
    min-width: 88px;
    padding: 3px;
    border: 1px solid #E9EAEB;
    border-radius: 999px;
    background: #ffffff;
}

#pxl-header-elementor .elementor-element-headlang .sitto-lang-toggle__thumb {
    position: absolute;
    top: 3px;
    left: 3px;
    width: calc(50% - 3px);
    height: calc(100% - 6px);
    border-radius: 999px;
    background: #FFC20F;
    transition: transform 0.22s ease;
    pointer-events: none;
    z-index: 0;
}

#pxl-header-elementor .elementor-element-headlang .sitto-lang-toggle.is-en .sitto-lang-toggle__thumb {
    transform: translateX(100%);
}

#pxl-header-elementor .elementor-element-headlang .sitto-lang-toggle__option {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 40px;
    padding: 5px 10px;
    margin: 0;
    border: 0;
    border-radius: 999px;
    background: transparent;
    color: #181D27;
    font-family: inherit;
    font-size: 13px;
    font-weight: 600;
    line-height: 1.2;
    letter-spacing: 0.02em;
    text-decoration: none;
    text-transform: uppercase;
    cursor: pointer;
    transition: color 0.22s ease;
}

#pxl-header-elementor .elementor-element-headlang .sitto-lang-toggle__option.is-active {
    color: #181D27;
}

#pxl-header-elementor .elementor-element-headlang .sitto-lang-toggle__option:not(.is-active):hover {
    color: #181D27;
}

/* Header hover animations ---------------------------------------------- */

/* "Get In Touch": yellow fill rises, button lifts, arrow slides in. */
#pxl-header-elementor .sitto-header__actions .pxl-button a.btn {
    transition:
        transform 0.35s cubic-bezier(0.22, 1, 0.36, 1),
        box-shadow 0.35s ease;
}

#pxl-header-elementor .sitto-header__actions .pxl-button a.btn::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 0;
    border-radius: inherit;
    background: #FFC20F;
    transform: translateY(102%);
    transition: transform 0.45s cubic-bezier(0.22, 1, 0.36, 1);
}

#pxl-header-elementor .sitto-header__actions .pxl-button a.btn .btn-text {
    position: relative;
    z-index: 2;
    display: inline-block;
    transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1);
}

/* Arrow is positioned out of flow so the button never changes width. */
#pxl-header-elementor .sitto-header__actions .pxl-button a.btn .btn-text::after {
    content: "\2192";
    position: absolute;
    top: 50%;
    right: -22px;
    opacity: 0;
    transform: translate(-6px, -50%);
    transition: opacity 0.25s ease, transform 0.35s cubic-bezier(0.22, 1, 0.36, 1);
}

#pxl-header-elementor .sitto-header__actions .pxl-button a.btn:hover,
#pxl-header-elementor .sitto-header__actions .pxl-button a.btn:focus-visible {
    transform: translateY(-2px);
    box-shadow: 0 4px 10px -6px rgba(255, 186, 8, 0.8);
}

#pxl-header-elementor .sitto-header__actions .pxl-button a.btn:hover::after,
#pxl-header-elementor .sitto-header__actions .pxl-button a.btn:focus-visible::after {
    transform: translateY(0);
}

#pxl-header-elementor .sitto-header__actions .pxl-button a.btn:hover .btn-text,
#pxl-header-elementor .sitto-header__actions .pxl-button a.btn:focus-visible .btn-text {
    transform: translateX(-10px);
}

#pxl-header-elementor .sitto-header__actions .pxl-button a.btn:hover .btn-text::after,
#pxl-header-elementor .sitto-header__actions .pxl-button a.btn:focus-visible .btn-text::after {
    opacity: 1;
    transform: translate(0, -50%);
}

#pxl-header-elementor .sitto-header__actions .pxl-button a.btn:active {
    transform: translateY(0) scale(0.97);
    transition-duration: 0.12s;
}

/* DE | EN toggle: springy thumb, soft glow, and the thumb previews the target language. */
#pxl-header-elementor .elementor-element-headlang .sitto-lang-toggle__track {
    transition: box-shadow 0.3s ease, border-color 0.3s ease;
}

#pxl-header-elementor .elementor-element-headlang .sitto-lang-toggle__track:hover {
    border-color: #FFC20F;
    box-shadow: 0 6px 16px -6px rgba(255, 194, 15, 0.6);
}

#pxl-header-elementor .elementor-element-headlang .sitto-lang-toggle__thumb {
    transition: transform 0.4s cubic-bezier(0.34, 1.56, 0.64, 1);
}

#pxl-header-elementor .elementor-element-headlang .sitto-lang-toggle__option {
    transition: color 0.25s ease, transform 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
}

#pxl-header-elementor .elementor-element-headlang .sitto-lang-toggle__option:not(.is-active):hover {
    transform: scale(1.08);
}

#pxl-header-elementor .elementor-element-headlang .sitto-lang-toggle.is-en .sitto-lang-toggle__track:has(.sitto-lang-toggle__option[lang="de"]:hover) .sitto-lang-toggle__thumb {
    transform: translateX(0);
}

#pxl-header-elementor .elementor-element-headlang .sitto-lang-toggle:not(.is-en) .sitto-lang-toggle__track:has(.sitto-lang-toggle__option[lang="en"]:hover) .sitto-lang-toggle__thumb {
    transform: translateX(100%);
}

#pxl-header-elementor .elementor-element-headlang .sitto-lang-toggle__track:has(.sitto-lang-toggle__option:not(.is-active):hover) .sitto-lang-toggle__option.is-active {
    color: #181D27;
}

@media (prefers-reduced-motion: reduce) {
    #pxl-header-elementor .sitto-header__actions .pxl-button a.btn,
    #pxl-header-elementor .sitto-header__actions .pxl-button a.btn::after,
    #pxl-header-elementor .sitto-header__actions .pxl-button a.btn .btn-text,
    #pxl-header-elementor .sitto-header__actions .pxl-button a.btn .btn-text::after,
    #pxl-header-elementor .elementor-element-headlang .sitto-lang-toggle__thumb,
    #pxl-header-elementor .elementor-element-headlang .sitto-lang-toggle__option {
        transition: none !important;
        transform: none !important;
    }
}

@media (max-width: 767px) {
    #pxl-header-elementor .sitto-header__actions.e-con {
        flex-wrap: wrap;
        justify-content: flex-end;
    }
}

/* ==========================================================================
   Navigation Arrow Fix:
   Only display dropdown arrow for menu items that have child menus.
   ========================================================================== */
.pxl-menu .pxl-menu__primary li:not(.menu-item-has-children) > a > i,
.pxl-menu .pxl-menu__primary li:not(.menu-item-has-children) > a > .caseicon-angle-arrow-down,
.pxl-menu .pxl-menu__primary li:not(.menu-item-has-children) > a i[class*="caseicon-"],
.pxl-menu .pxl-menu__primary .sub-menu li:not(.menu-item-has-children) > a > i,
.pxl-menu .pxl-menu__primary .sub-menu li:not(.menu-item-has-children) > a > .caseicon-angle-arrow-down,
.pxl-menu .pxl-menu__primary .sub-menu li:not(.menu-item-has-children) > a i[class*="caseicon-"],
.pxl-header-nav li:not(.menu-item-has-children) > a > i,
.pxl-header-nav li:not(.menu-item-has-children) > a > .caseicon-angle-arrow-down {
    display: none !important;
}

/* Ensure arrow down only displays for parent items that have children */
.pxl-menu .pxl-menu__primary > li.menu-item-has-children > a > i,
.pxl-menu .pxl-menu__primary > li.menu-item-has-children > a > .caseicon-angle-arrow-down,
.pxl-header-nav > ul > li.menu-item-has-children > a > i,
.pxl-header-nav > ul > li.menu-item-has-children > a > .caseicon-angle-arrow-down {
    display: inline-flex !important;
}

/* Sub-menu items that have nested grandchildren */
.pxl-menu .pxl-menu__primary .sub-menu li.menu-item-has-children > a > i,
.pxl-menu .pxl-menu__primary .sub-menu li.menu-item-has-children > a > .caseicon-angle-arrow-down,
.pxl-header-nav .sub-menu li.menu-item-has-children > a > i,
.pxl-header-nav .sub-menu li.menu-item-has-children > a > .caseicon-angle-arrow-down {
    display: inline-flex !important;
}

/* ==========================================================================
   Dropdown Submenu Position & Rounded Styling (Matching Navbar):
   ========================================================================== */
.pxl-menu .pxl-menu__primary .sub-menu,
.pxl-menu .pxl-menu__primary .children,
.pxl-header-nav .sub-menu,
.pxl-header-nav .children {
    border-radius: 24px !important;
    overflow: hidden;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.12) !important;
    padding: 14px 0 !important;
}

/* Position top level submenu lower down below navbar */
.pxl-menu .pxl-menu__primary > li > .sub-menu,
.pxl-menu .pxl-menu__primary > li > .children,
.pxl-header-nav > ul > li > .sub-menu,
.pxl-header-nav > ul > li > .children {
    margin-top: 35px;
    border-radius: 24px !important;
}

.pxl-menu .pxl-menu__primary > li:hover > .sub-menu,
.pxl-menu .pxl-menu__primary > li:hover > .children,
.pxl-header-nav > ul > li:hover > .sub-menu,
.pxl-header-nav > ul > li:hover > .children {
    margin-top: 18px !important;
}

/* Invisible hover bridge to prevent menu closing when moving cursor across the gap */
.pxl-menu .pxl-menu__primary > li > .sub-menu::before,
.pxl-menu .pxl-menu__primary > li > .children::before,
.pxl-header-nav > ul > li > .sub-menu::before,
.pxl-header-nav > ul > li > .children::before {
    content: '';
    position: absolute;
    top: -20px;
    left: 0;
    right: 0;
    height: 20px;
    background: transparent;
    display: block;
}

/* Nested submenus (grandchildren) */
.pxl-menu .pxl-menu__primary .sub-menu .sub-menu,
.pxl-menu .pxl-menu__primary .children .children,
.pxl-header-nav .sub-menu .sub-menu,
.pxl-header-nav .children .children {
    border-radius: 20px !important;
}

.pxl-menu .pxl-menu__primary .sub-menu li:hover > .sub-menu,
.pxl-menu .pxl-menu__primary .children li:hover > .children {
    margin-top: -14px !important;
}

/* A submenu that holds a nested submenu must not clip it (the nested one opens to the right) */
.pxl-menu .pxl-menu__primary .sub-menu:has(.sub-menu),
.pxl-menu .pxl-menu__primary .children:has(.children) {
    overflow: visible !important;
}

/* ==========================================================================
   Sitto Homepage (ID 18143) Hero Section Styles:
   ========================================================================== */

/* Badge Pill */
.sitto-hero-badge {
    background-color: #ffffff !important;
    border: 1px solid #E9EAEB !important;
    border-radius: 50px !important;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.04) !important;
    padding: 8px 22px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    max-width: fit-content !important;
    margin: 0 auto 28px auto !important;
}

/* Left-aligned variant: add the CSS class "sitto-hero-badge--left" next to "sitto-hero-badge" in Elementor. */
.sitto-hero-badge.sitto-hero-badge--left {
    margin-left: 0 !important;
    margin-right: auto !important;
}

.sitto-hero-badge .sitto-badge-dot {
    color: #FFC20F;
    font-size: 11px;
    margin-right: 8px;
    display: inline-block;
    line-height: 1;
}

.sitto-hero-badge .pxl-heading__title {
    font-size: 14px !important;
    font-weight: 500 !important;
    color: #181D27 !important;
    letter-spacing: -0.1px !important;
    margin: 0 !important;
}

/* Hero Title & Highlight Box */
.sitto-hero-title {
    text-align: center !important;
}

.sitto-hero-title .pxl-heading__title {
    font-size: 64px !important;
    font-weight: 700 !important;
    line-height: 1.16 !important;
    letter-spacing: -1.5px !important;
    color: #181D27 !important;
    margin: 0 !important;
}

.sitto-hero-title .pxl-heading__highlight,
.pxl-heading .pxl-heading__highlight {
    background-color: #FFC20F !important;
    color: #181D27 !important;
    padding: 2px 10px !important;
    border-radius: 6px !important;
    display: inline-block !important;
    line-height: 1.12 !important;
    box-decoration-break: clone;
    -webkit-box-decoration-break: clone;
    vertical-align: baseline;
}

.sitto-hero-title .pxl-heading__highlight .pxl-heading__highlight-text {
    color: #181D27 !important;
}

/* Hero Description */
.sitto-hero-description {
    font-size: 18px !important;
    line-height: 1.62 !important;
    color: #535862 !important;
    max-width: 780px !important;
    margin: 0 auto !important;
    text-align: center !important;
}

/* Hero Buttons */
.sitto-hero-buttons-row {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 18px !important;
    margin-top: 34px !important;
}

.sitto-btn-demo a.btn,
.sitto-btn-demo .btn {
    background-color: #FFC20F !important;
    color: #181D27 !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    border-radius: 50px !important;
    padding: 14px 34px !important;
    border: none !important;
    box-shadow: 0 4px 14px rgba(255, 186, 8, 0.25) !important;
    transition: all 0.3s ease !important;
}

.sitto-btn-demo a.btn:hover,
.sitto-btn-demo .btn:hover {
    background-color: #f0ae04 !important;
    color: #181D27 !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 6px 20px rgba(255, 186, 8, 0.35) !important;
}

.sitto-btn-video a.btn,
.sitto-btn-video .btn {
    background-color: transparent !important;
    color: #181D27 !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    border-radius: 50px !important;
    padding: 14px 24px !important;
    border: none !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 10px !important;
    transition: all 0.3s ease !important;
}

.sitto-btn-video a.btn:hover,
.sitto-btn-video .btn:hover {
    color: #181D27 !important;
    background-color: rgba(0, 0, 0, 0.04) !important;
}

/* Feature Checkmarks List */
.sitto-hero-features-list {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 28px;
    margin: 10px 0 0 0;
    padding: 0;
    list-style: none;
}

.sitto-feature-item {
    font-size: 15px;
    font-weight: 500;
    color: #535862;
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.sitto-check-icon {
    color: #181D27;
    font-weight: 700;
    font-size: 15px;
    display: inline-block;
}

/* Responsive adjustments */
@media (max-width: 991px) {
    .sitto-hero-title .pxl-heading__title {
        font-size: 46px !important;
        letter-spacing: -1px !important;
    }
    .sitto-hero-description {
        font-size: 16px !important;
    }
}

@media (max-width: 767px) {
    .sitto-hero-title .pxl-heading__title {
        font-size: 32px !important;
        letter-spacing: -0.5px !important;
    }
    .sitto-hero-buttons-row {
        flex-direction: column !important;
        gap: 12px !important;
    }
    .sitto-hero-features-list {
        flex-direction: column;
        gap: 12px;
    }
}

/* Sitto Video (Case Image duplicate with play overlay) */
.sitto-video .pxl-image__item {
    position: relative;
    display: inline-block;
    max-width: 100%;
}

.sitto-video--3d .pxl-image__item {
    perspective: 1140px;
}

.sitto-video__preview {
    position: relative;
    display: block;
    max-width: 100%;
    transform-style: preserve-3d;
}

.sitto-video .pxl-image__item img {
    display: block;
    max-width: 100%;
    height: auto;
}

.sitto-video__play {
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    right: auto !important;
    bottom: auto !important;
    transform: translate(-50%, -50%) !important;
    z-index: 20;
    border: 4px solid #ffffff;
    border-radius: 50%;
    width: 72px;
    height: 72px;
    padding: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #FFC20F;
    box-shadow: 0 10px 30px rgba(24, 29, 39, 0.18);
    cursor: pointer;
    transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.sitto-video__play svg {
    width: 28px;
    height: 28px;
    margin-left: 3px;
    fill: #181D27;
}

.sitto-video__play:hover {
    transform: translate(-50%, -50%) scale(1.06) !important;
    box-shadow: 0 12px 34px rgba(24, 29, 39, 0.24);
}

.sitto-video__media {
    position: absolute;
    inset: 0;
    z-index: 4;
    overflow: hidden;
    opacity: 0;
    pointer-events: none;
    background: #181D27;
}

.sitto-video.is-playing .sitto-video__media {
    opacity: 1;
    pointer-events: auto;
}

.sitto-video.is-playing .sitto-video__play {
    display: none;
}

.sitto-video.is-playing .sitto-video__preview {
    visibility: hidden;
}

.sitto-video__media iframe,
.sitto-video__media video {
    width: 100%;
    height: 100%;
    border: 0;
    object-fit: cover;
}

/* Sitto capability cards */
.sitto-caps {
    --sitto-cap-ink: #181D27;
    --sitto-cap-muted: #535862;
    --sitto-cap-line: #E9EAEB;
    --sitto-cap-accent: #FFF4D4;
    --sitto-cap-accent-deep: #FFC20F;
    --sitto-cap-cream: #FFF4D4;
    width: 100%;
}

.sitto-caps__head {
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(280px, 0.85fr);
    column-gap: 56px;
    row-gap: 16px;
    align-items: end;
    margin-bottom: 28px;
}

.sitto-caps__badge {
    grid-column: 1;
    grid-row: 1;
}

.sitto-caps__title {
    grid-column: 1;
    grid-row: 2;
}

.sitto-caps__desc {
    grid-column: 2;
    grid-row: 1 / span 2;
    align-self: end;
}

.sitto-caps__badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin: 0 0 18px;
    padding: 7px 14px 7px 12px;
    border: 1px solid #E9EAEB;
    border-radius: 999px;
    background: #fff;
    color: var(--sitto-cap-ink);
    font-family: Inter, sans-serif;
    font-size: 14px;
    font-weight: 500;
    line-height: 1;
    letter-spacing: -0.1px;
    width: fit-content;
}

.sitto-caps__dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #FFC20F;
    box-shadow: 0 0 0 3px rgba(255, 186, 8, 0.18);
}

.sitto-caps__title {
    margin: 0;
    max-width: 640px;
    color: var(--sitto-cap-ink);
    font-family: Inter, sans-serif;
    font-size: clamp(32px, 3.1vw, 44px);
    font-weight: 700;
    line-height: 1.15;
    letter-spacing: -0.03em;
}

.sitto-caps__desc {
    margin: 0 0 6px;
    color: var(--sitto-cap-muted);
    font-family: Inter, sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.55;
    letter-spacing: -0.2px;
}

.sitto-caps__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
}

.sitto-caps__card {
    --mx: 50%;
    --my: 0%;
    position: relative;
    display: flex;
    flex-direction: column;
    min-height: 100%;
    padding: 26px 24px 22px;
    border: 1px solid var(--sitto-cap-line);
    border-radius: 22px;
    background: #fff;
    overflow: hidden;
    opacity: 0;
    transform: translateY(18px);
    transition: opacity 0.55s ease, transform 0.55s cubic-bezier(0.2, 0.7, 0.2, 1), border-color 0.28s ease, box-shadow 0.35s ease;
    transition-delay: var(--d, 0ms);
    cursor: default;
    outline: none;
}

.sitto-caps.is-ready .sitto-caps__card.is-in {
    opacity: 1;
    transform: translateY(0);
}

.sitto-caps.is-ready .sitto-caps__card.is-in:hover,
.sitto-caps.is-ready .sitto-caps__card.is-in:focus-visible {
    transform: translateY(-8px);
    border-color: var(--sitto-cap-accent-deep);
    box-shadow: 0 18px 40px rgba(231, 212, 138, 0.28);
    transition-delay: 0s;
}

.sitto-caps__card.is-featured {
    border-color: var(--sitto-cap-accent-deep);
    box-shadow: 0 0 0 1px rgba(231, 212, 138, 0.35);
}

.sitto-caps__glow {
    position: absolute;
    inset: 0;
    background: radial-gradient(220px circle at var(--mx) var(--my), rgba(255, 233, 168, 0.55), transparent 68%);
    opacity: 0;
    transition: opacity 0.35s ease;
    pointer-events: none;
}

.sitto-caps__card:hover .sitto-caps__glow,
.sitto-caps__card:focus-visible .sitto-caps__glow {
    opacity: 1;
}

.sitto-caps__icon {
    position: relative;
    z-index: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    border-radius: 14px;
    background: var(--sitto-cap-cream);
    color: var(--sitto-cap-ink);
    transition: transform 0.35s ease, background-color 0.35s ease;
}

.sitto-caps__icon svg {
    width: 22px;
    height: 22px;
}

.sitto-caps__card:hover .sitto-caps__icon,
.sitto-caps__card:focus-visible .sitto-caps__icon {
    transform: scale(1.08) rotate(-6deg);
    background: var(--sitto-cap-accent);
}

.sitto-caps__card-title,
.sitto-caps__card-desc,
.sitto-caps__tags {
    position: relative;
    z-index: 1;
}

.sitto-caps__card-title {
    margin: 18px 0 8px;
    color: var(--sitto-cap-ink);
    font-family: Inter, sans-serif;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.3;
    letter-spacing: -0.02em;
}

.sitto-caps__card-desc {
    margin: 0;
    color: #535862;
    font-family: Inter, sans-serif;
    font-size: 15px;
    font-weight: 400;
    line-height: 1.55;
    letter-spacing: -0.15px;
}

.sitto-caps__tags {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 18px 0 0;
    padding: 0;
    list-style: none;
}

.sitto-caps__tag {
    padding: 6px 12px;
    border-radius: 999px;
    background: var(--sitto-cap-cream);
    color: #181D27;
    font-family: Inter, sans-serif;
    font-size: 13px;
    font-weight: 500;
    line-height: 1.2;
    letter-spacing: -0.1px;
    transition: transform 0.3s ease, background-color 0.3s ease;
}

.sitto-caps__card:hover .sitto-caps__tag,
.sitto-caps__card:focus-visible .sitto-caps__tag {
    background: var(--sitto-cap-accent);
    transform: translateY(-2px);
}

.sitto-caps__card:hover .sitto-caps__tag:nth-child(2),
.sitto-caps__card:focus-visible .sitto-caps__tag:nth-child(2) {
    transition-delay: 40ms;
}

.sitto-caps__card:hover .sitto-caps__tag:nth-child(3),
.sitto-caps__card:focus-visible .sitto-caps__tag:nth-child(3) {
    transition-delay: 80ms;
}

@media (max-width: 1024px) {
    .sitto-caps__head {
        grid-template-columns: 1fr;
        row-gap: 16px;
    }

    .sitto-caps__badge,
    .sitto-caps__title,
    .sitto-caps__desc {
        grid-column: 1;
        grid-row: auto;
    }

    .sitto-caps__desc {
        margin-bottom: 0;
    }

    .sitto-caps__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 767px) {
    .sitto-caps__title {
        font-size: 30px;
    }

    .sitto-caps__grid {
        grid-template-columns: 1fr;
    }
}

@media (prefers-reduced-motion: reduce) {
    .sitto-caps__card,
    .sitto-caps__icon,
    .sitto-caps__tag,
    .sitto-caps__glow {
        transition: none;
        animation: none;
    }

    .sitto-caps__card {
        opacity: 1;
        transform: none;
    }
}

/* Capability cards hover (grid style): grey card that widens in its row, like Verity "Built for Precision" */
.sitto-caps:not(.sitto-caps--vertical):not(.sitto-caps--plain):not(.sitto-caps--numbered) {
    --sitto-cap-hover-bg: var(--e-global-color-sittowarm, #F8F7F4);
    --sitto-cap-hover-line: #D5D7DA;
    --sitto-cap-cream: var(--e-global-color-sittowarm, #F8F7F4);
}

.sitto-caps:not(.sitto-caps--vertical):not(.sitto-caps--plain):not(.sitto-caps--numbered) .sitto-caps__card.is-featured {
    border-color: var(--sitto-cap-line);
    box-shadow: none;
}

.sitto-caps:not(.sitto-caps--vertical):not(.sitto-caps--plain):not(.sitto-caps--numbered) .sitto-caps__card {
    transition: opacity 0.55s ease, transform 0.55s cubic-bezier(0.2, 0.7, 0.2, 1), border-color 0.3s ease, background-color 0.3s ease, flex-grow 0.45s cubic-bezier(0.455, 0.03, 0.515, 0.955);
    transition-delay: var(--d, 0ms), var(--d, 0ms), 0s, 0s, 0s;
}

.sitto-caps:not(.sitto-caps--vertical):not(.sitto-caps--plain):not(.sitto-caps--numbered).is-ready .sitto-caps__card.is-in:hover,
.sitto-caps:not(.sitto-caps--vertical):not(.sitto-caps--plain):not(.sitto-caps--numbered).is-ready .sitto-caps__card.is-in:focus-visible {
    transform: none;
    background-color: var(--sitto-cap-hover-bg);
    border-color: var(--sitto-cap-hover-line);
    box-shadow: none;
}

.sitto-caps:not(.sitto-caps--vertical):not(.sitto-caps--plain):not(.sitto-caps--numbered) .sitto-caps__glow {
    display: none;
}

.sitto-caps:not(.sitto-caps--vertical):not(.sitto-caps--plain):not(.sitto-caps--numbered) .sitto-caps__card:is(:hover, :focus-visible) :is(.sitto-caps__icon, .sitto-caps__tag) {
    transform: none;
    background: #fff;
}

@media (min-width: 1025px) {
    .sitto-caps:not(.sitto-caps--vertical):not(.sitto-caps--plain):not(.sitto-caps--numbered) .sitto-caps__grid {
        display: flex;
        flex-wrap: wrap;
    }

    .sitto-caps:not(.sitto-caps--vertical):not(.sitto-caps--plain):not(.sitto-caps--numbered) .sitto-caps__card {
        flex: 1 1 25%;
        max-width: calc((100% - 36px) / 3 * 1.25);
        min-height: var(--sitto-caps-min-h, 0);
    }

    .sitto-caps:not(.sitto-caps--vertical):not(.sitto-caps--plain):not(.sitto-caps--numbered) .sitto-caps__card:is(:hover, :focus-visible, .is-grow) {
        flex-grow: 2.2;
    }

    .sitto-caps__grid.is-measuring .sitto-caps__card {
        transition: none !important;
    }
}

/* Sitto industry illustrations */
.sitto-ind {
    --sitto-ind-ink: #181D27;
    --sitto-ind-muted: #535862;
    width: 100%;
}

.sitto-ind__head {
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(260px, 0.85fr);
    column-gap: 48px;
    row-gap: 16px;
    align-items: end;
    margin-bottom: 36px;
}

.sitto-ind__badge {
    grid-column: 1;
    grid-row: 1;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    width: fit-content;
    margin: 0 0 16px;
    padding: 7px 14px 7px 12px;
    border: 1px solid #E9EAEB;
    border-radius: 999px;
    background: #fff;
    color: var(--sitto-ind-ink);
    font-family: Inter, sans-serif;
    font-size: 14px;
    font-weight: 500;
    line-height: 1;
}

.sitto-ind__dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #FFC20F;
    box-shadow: 0 0 0 3px rgba(255, 186, 8, 0.18);
}

.sitto-ind__title {
    grid-column: 1;
    grid-row: 2;
    margin: 0;
    max-width: 560px;
    color: var(--sitto-ind-ink);
    font-family: Inter, sans-serif;
    font-size: clamp(32px, 3vw, 44px);
    font-weight: 700;
    line-height: 1.15;
    letter-spacing: -0.03em;
}

.sitto-ind__desc {
    grid-column: 2;
    grid-row: 1 / span 2;
    align-self: end;
    margin: 0 0 4px;
    color: var(--sitto-ind-muted);
    font-family: Inter, sans-serif;
    font-size: 16px;
    line-height: 1.55;
    letter-spacing: -0.2px;
}

.sitto-ind__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 42px 36px;
}

.sitto-ind__stage {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 250px;
    margin-bottom: 18px;
    padding: 28px 24px;
    border-radius: 18px;
    background: #F5F6F8;
    overflow: hidden;
    transition: transform 0.35s ease;
}

.sitto-ind__item:hover .sitto-ind__stage {
    transform: translateY(-4px);
}

.sitto-ind__sheet,
.sitto-ind__card-ui {
    width: min(100%, 320px);
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 16px 40px rgba(24, 29, 39, 0.08);
}

.sitto-ind__sheet {
    padding: 16px 16px 12px;
}

.sitto-ind__float {
    transition: transform 0.4s ease;
}

.sitto-ind__item:hover .sitto-ind__float {
    transform: translateY(-6px);
}

.sitto-ind__sheet-head,
.sitto-ind__line,
.sitto-ind__total,
.sitto-ind__slot {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.sitto-ind__sheet-head {
    margin-bottom: 10px;
    color: #181D27;
    font-family: Inter, sans-serif;
    font-size: 13px;
    font-weight: 600;
}

.sitto-ind__sheet-head em,
.sitto-ind__table {
    font-style: normal;
    font-weight: 600;
}

.sitto-ind__sheet-head em {
    color: #717680;
    font-weight: 500;
}

.sitto-ind__sheet-head em.is-paid {
    padding: 3px 8px;
    border-radius: 999px;
    background: #FFF4D4;
    color: #181D27;
}

.sitto-ind__table::before {
    content: "";
    display: inline-block;
    width: 8px;
    height: 8px;
    margin-right: 8px;
    border-radius: 50%;
    background: #FFC20F;
}

.sitto-ind__line,
.sitto-ind__slot {
    padding: 8px 0;
    border-top: 1px solid #E9EAEB;
    color: #535862;
    font-family: Inter, sans-serif;
    font-size: 13px;
}

.sitto-ind__line b,
.sitto-ind__slot b,
.sitto-ind__total strong {
    color: #181D27;
    font-weight: 600;
}

.sitto-ind__total {
    margin-top: 4px;
    padding-top: 10px;
    border-top: 1px dashed #E9EAEB;
    color: #717680;
    font-family: Inter, sans-serif;
    font-size: 13px;
}

.sitto-ind__total strong {
    font-size: 16px;
}

.sitto-ind__pill {
    position: absolute;
    right: 28px;
    bottom: 22px;
    padding: 6px 12px;
    border-radius: 999px;
    background: #FFF4D4;
    color: #181D27;
    font-family: Inter, sans-serif;
    font-size: 12px;
    font-weight: 600;
    box-shadow: 0 8px 18px rgba(24, 29, 39, 0.08);
}

.sitto-ind__card-ui--grad {
    position: absolute;
    top: 36px;
    left: 18%;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    width: min(68%, 280px);
    height: 118px;
    padding: 16px 18px;
    background: #FFF4D4;
    color: #181D27;
    font-family: Inter, sans-serif;
    font-size: 13px;
    font-weight: 600;
}

.sitto-ind__dots {
    display: inline-flex;
    gap: 0;
}

.sitto-ind__dots i {
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background: #D5D7DA;
}

.sitto-ind__dots i + i {
    margin-left: -6px;
    background: #FFC20F;
}

.sitto-ind__card-ui--sheet {
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    gap: 4px;
    width: min(72%, 260px);
    margin: 62px 0 0 18%;
    padding: 16px 18px;
    color: #181D27;
    font-family: Inter, sans-serif;
}

.sitto-ind__card-ui--sheet strong {
    font-size: 16px;
}

.sitto-ind__card-ui--sheet span {
    color: #717680;
    font-size: 13px;
}

.sitto-ind__card-ui--sheet b {
    margin-top: 6px;
    font-size: 18px;
    font-weight: 600;
}

.sitto-ind__slot time {
    min-width: 48px;
    padding: 3px 0;
    border-radius: 999px;
    color: #181D27;
    font-weight: 600;
}

.sitto-ind__chart {
    display: block;
    width: calc(100% + 32px);
    height: 64px;
    margin: 8px -16px -12px;
}

.sitto-ind__item-title {
    margin: 0 0 8px;
    color: var(--sitto-ind-ink);
    font-family: Inter, sans-serif;
    font-size: 20px;
    font-weight: 700;
    letter-spacing: -0.02em;
}

.sitto-ind__item-desc {
    margin: 0;
    max-width: 540px;
    color: #535862;
    font-family: Inter, sans-serif;
    font-size: 15px;
    line-height: 1.55;
}

.sitto-ind__suit {
    margin: 16px 0 8px;
    color: #717680;
    font-family: Inter, sans-serif;
    font-size: 13px;
}

.sitto-ind__tags {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.sitto-ind__tags li {
    padding: 6px 12px;
    border-radius: 999px;
    background: #FFF4D4;
    color: #181D27;
    font-family: Inter, sans-serif;
    font-size: 13px;
    font-weight: 500;
    transition: background-color 0.25s ease, transform 0.25s ease;
}

.sitto-ind__item:hover .sitto-ind__tags li {
    background: #FFF4D4;
}

@media (max-width: 1024px) {
    .sitto-ind__head,
    .sitto-ind__grid {
        grid-template-columns: 1fr;
    }

    .sitto-ind__badge,
    .sitto-ind__title,
    .sitto-ind__desc {
        grid-column: 1;
        grid-row: auto;
    }
}

@media (prefers-reduced-motion: reduce) {
    .sitto-ind__stage,
    .sitto-ind__float,
    .sitto-ind__tags li {
        transition: none;
    }
}

.pxl-step__style-s2:has(.pxl-step__suit) {
    flex-wrap: wrap;
}

.pxl-step__style-s2:has(.pxl-step__suit) .pxl-step__number {
    flex: 0 0 48px;
}

.pxl-step__style-s2:has(.pxl-step__suit) .pxl-step__content {
    flex: 1 1 0;
    width: auto;
    min-width: 0;
}

.pxl-step__style-s2 .pxl-step__suit {
    flex: 0 0 100%;
    width: 100%;
    margin-top: 4px;
}

.pxl-step__suit-label {
    margin: 0 0 8px;
    color: #535862;
    font-family: Inter, sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 135%;
    letter-spacing: -0.32px;
}

.pxl-step__chips {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.pxl-step__chips li {
    padding: 6px 12px;
    border-radius: 999px;
    background: #FFFFFF;
    color: #535862;
    font-family: Inter, sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 135%;
    letter-spacing: -0.32px;
}

.sitto-industry-art .pxl-image img,
.sitto-industry-art img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 14px;
}

/* === Sitto industry stacked art ===
   Layered CSS/SVG scenes inside .sitto-industry-art only. */

.sitto-industry-art.e-con {
    overflow: visible;
}

.sitto-industry-art > .elementor-widget-html,
.sitto-industry-art .elementor-widget-container {
    width: 100%;
    max-width: 100%;
    margin: 0;
}

.sitto-industry-art .sia-fit {
    container-type: inline-size;
    width: 100%;
}

.sitto-industry-art .sia,
.sitto-industry-art .sia * {
    box-sizing: border-box;
}

.sitto-industry-art .sia {
    position: relative;
    width: 100%;
    aspect-ratio: 437 / 246;
    overflow: visible;
    border-radius: 14px;
    background: #f4f7fb;
    color: #181D27;
    font-family: Inter, sans-serif;
    font-size: 11px;
    font-variant-numeric: tabular-nums;
    line-height: 1.2;
    user-select: none;
}

@supports (font-size: 1cqi) {
    .sitto-industry-art .sia {
        font-size: 2.48cqi;
    }
}

.sitto-industry-art .sia svg {
    display: block;
    flex: none;
}

.sitto-industry-art .sia-order,
.sitto-industry-art .sia-pos,
.sitto-industry-art .sia-tix,
.sitto-industry-art .sia-tray,
.sitto-industry-art .sia-dress,
.sitto-industry-art .sia-hoop,
.sitto-industry-art .sia-inv,
.sitto-industry-art .sia-mirror,
.sitto-industry-art .sia-tools,
.sitto-industry-art .sia-bottles,
.sitto-industry-art .sia-book,
.sitto-industry-art .sia-appt,
.sitto-industry-art .sia-bill,
.sitto-industry-art .sia-tile {
    position: absolute;
    transform-origin: center center;
}

.sitto-industry-art .sia-order,
.sitto-industry-art .sia-pos__screen,
.sitto-industry-art .sia-inv,
.sitto-industry-art .sia-book,
.sitto-industry-art .sia-appt,
.sitto-industry-art .sia-bill,
.sitto-industry-art .sia-tile,
.sitto-industry-art .sia-tray,
.sitto-industry-art .sia-hoop {
    background: #fff;
    box-shadow: 0 14px 28px rgba(24, 29, 39, 0.1);
}

/* Food */
.sitto-industry-art .sia-order {
    left: 0;
    top: 8%;
    z-index: 1;
    width: 48%;
    padding: 0.7em 0.7em 0.55em;
    border-radius: 1.15em;
    transform: rotate(-6deg);
}

.sitto-industry-art .sia-order__head,
.sitto-industry-art .sia-row,
.sitto-industry-art .sia-total,
.sitto-industry-art .sia-pos__head,
.sitto-industry-art .sia-pos__row,
.sitto-industry-art .sia-pos__sum,
.sitto-industry-art .sia-send,
.sitto-industry-art .sia-tix__row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.4em;
}

.sitto-industry-art .sia-order__title,
.sitto-industry-art .sia-pill,
.sitto-industry-art .sia-pos__title {
    display: inline-flex;
    align-items: center;
    gap: 0.35em;
    font-weight: 650;
    font-size: 0.95em;
}

.sitto-industry-art .sia-order__title svg,
.sitto-industry-art .sia-pill svg,
.sitto-industry-art .sia-pos__title svg,
.sitto-industry-art .sia-send svg {
    width: 1.05em;
    height: 1.05em;
}

.sitto-industry-art .sia-pill,
.sitto-industry-art .sia-pos__title span,
.sitto-industry-art .sia-row__name small,
.sitto-industry-art .sia-pos__meta small,
.sitto-industry-art .sia-pos__sum span {
    color: #717680;
    font-weight: 500;
    font-size: 0.78em;
}

.sitto-industry-art .sia-row {
    margin-top: 0.38em;
    padding-top: 0.38em;
    border-top: 1px solid #E9EAEB;
}

.sitto-industry-art .sia-thumb {
    display: grid;
    flex: none;
    place-items: center;
    width: 2.15em;
    height: 2.15em;
    border-radius: 50%;
    background: #fff7ee;
}

.sitto-industry-art .sia-thumb svg {
    width: 1.45em;
    height: 1.45em;
}

.sitto-industry-art .sia-row__name,
.sitto-industry-art .sia-pos__meta {
    display: flex;
    flex: 1;
    flex-direction: column;
    min-width: 0;
    line-height: 1.15;
}

.sitto-industry-art .sia-row__name b,
.sitto-industry-art .sia-pos__meta b,
.sitto-industry-art .sia-row__price,
.sitto-industry-art .sia-pos__price {
    font-weight: 650;
    font-size: 0.88em;
}

.sitto-industry-art .sia-total {
    margin-top: 0.45em;
    padding: 0.42em 0.65em;
    border-radius: 0.7em;
    background: #f4e3a6;
    font-weight: 650;
}

.sitto-industry-art .sia-pos {
    left: 46%;
    top: 2%;
    z-index: 3;
    width: 34%;
    padding: 0.5em 0.42em 0.55em;
    border-radius: 1.35em;
    background: #2b2d31;
    box-shadow: 0 18px 32px rgba(24, 29, 39, 0.18);
    transform: rotate(3.5deg);
}

.sitto-industry-art .sia-pos__screen {
    padding: 0.5em 0.48em 0.45em;
    border-radius: 0.95em;
}

.sitto-industry-art .sia-pos__head {
    margin-bottom: 0.25em;
}

.sitto-industry-art .sia-dots {
    display: inline-flex;
    gap: 0.16em;
}

.sitto-industry-art .sia-dots i {
    width: 0.22em;
    height: 0.22em;
    border-radius: 50%;
    background: #c5c8ce;
}

.sitto-industry-art .sia-pos__row {
    margin-top: 0.28em;
    padding: 0.22em 0.28em;
    border-radius: 0.6em;
    background: #f5f6f8;
}

.sitto-industry-art .sia-pos__sum {
    margin-top: 0.18em;
    padding: 0 0.2em;
    font-size: 0.78em;
}

.sitto-industry-art .sia-pos__sum.is-total {
    margin-top: 0.15em;
    padding-top: 0.28em;
    border-top: 1px solid #f0f1f3;
    font-size: 0.86em;
}

.sitto-industry-art .sia-pos__sum.is-total span,
.sitto-industry-art .sia-pos__sum.is-total b {
    color: #181D27;
    font-weight: 700;
}

.sitto-industry-art .sia-send {
    justify-content: center;
    margin-top: 0.4em;
    padding: 0.42em 0.4em;
    border-radius: 0.55em;
    background: #f4e3a6;
    font-weight: 700;
    font-size: 0.78em;
}

.sitto-industry-art .sia-pos__bar {
    width: 28%;
    height: 0.22em;
    margin: 0.4em auto 0;
    border-radius: 99px;
    background: #4a4d52;
}

.sitto-industry-art .sia-tix {
    left: 78%;
    top: 11%;
    z-index: 4;
    width: 21%;
    padding: 1.15em 0.55em 0.85em;
    background: #f4e3a4;
    filter: drop-shadow(0 12px 14px rgba(36, 32, 18, 0.14));
    clip-path: polygon(0 8%, 62% 8%, 62% 0, 100% 0, 100% 88%, 92% 100%, 84% 88%, 76% 100%, 68% 88%, 60% 100%, 52% 88%, 44% 100%, 36% 88%, 28% 100%, 20% 88%, 12% 100%, 4% 88%, 0 100%);
    text-align: center;
    transform: rotate(7deg);
}

.sitto-industry-art .sia-tix__mark {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.12em;
    font-weight: 800;
    letter-spacing: 0.08em;
    font-size: 0.68em;
}

.sitto-industry-art .sia-tix__mark svg {
    width: 1.5em;
    height: 1.5em;
}

.sitto-industry-art .sia-tix__mark span {
    font-weight: 700;
    letter-spacing: 0.14em;
}

.sitto-industry-art .sia-tix__rule,
.sitto-industry-art .sia-tix__dots {
    margin: 0.4em 0.15em;
    border-top: 1px solid rgba(40, 32, 10, 0.18);
}

.sitto-industry-art .sia-tix__dots {
    border-top-style: dotted;
}

.sitto-industry-art .sia-tix__row {
    padding: 0.12em 0.15em;
    font-size: 0.62em;
    font-weight: 800;
    letter-spacing: 0.04em;
}

.sitto-industry-art .sia-tix__thanks {
    font-size: 0.58em;
    font-weight: 800;
    letter-spacing: 0.06em;
}

/* Retail */
.sitto-industry-art .sia-tray {
    left: 2%;
    top: 8%;
    z-index: 1;
    width: 42%;
    padding: 0.7em 0.7em 0.55em;
    border-radius: 1.2em;
    transform: rotate(-7deg);
}

.sitto-industry-art .sia-polo {
    width: 100%;
    height: auto;
}

.sitto-industry-art .sia-tag {
    position: absolute;
    display: inline-flex;
    align-items: center;
    gap: 0.25em;
    padding: 0.32em 0.45em;
    border-radius: 0.45em;
    font-weight: 800;
    font-size: 0.78em;
    box-shadow: 0 8px 14px rgba(24, 29, 39, 0.1);
}

.sitto-industry-art .sia-tag svg {
    width: 0.95em;
    height: 0.95em;
}

.sitto-industry-art .sia-tag--pink {
    left: 4%;
    bottom: 16%;
    background: #f4b7c6;
    color: #fff;
    transform: rotate(-12deg);
}

.sitto-industry-art .sia-tag--cream {
    top: 22%;
    right: -6%;
    background: #f7f1e6;
    color: #181D27;
    transform: rotate(8deg);
}

.sitto-industry-art .sia-tag--gold {
    right: -8%;
    bottom: 8%;
    background: #f6e3a2;
    color: #181D27;
    transform: rotate(10deg);
}

.sitto-industry-art .sia-sizes {
    display: flex;
    gap: 0.28em;
    margin-top: 0.35em;
}

.sitto-industry-art .sia-sizes span {
    min-width: 1.35em;
    padding: 0.16em 0.28em;
    border-radius: 999px;
    background: #f4f5f7;
    color: #717680;
    font-size: 0.68em;
    font-weight: 700;
    text-align: center;
}

.sitto-industry-art .sia-sizes .is-on {
    background: #181D27;
    color: #fff;
}

.sitto-industry-art .sia-dress {
    left: 34%;
    top: 0;
    z-index: 2;
    width: 24%;
    transform: rotate(4deg);
}

.sitto-industry-art .sia-dress > svg {
    width: 100%;
    height: auto;
}

.sitto-industry-art .sia-swatches {
    position: absolute;
    left: 8%;
    bottom: 8%;
    display: flex;
}

.sitto-industry-art .sia-swatches i {
    width: 0.7em;
    height: 0.7em;
    margin-left: -0.15em;
    border: 1.5px solid #fff;
    border-radius: 50%;
}

.sitto-industry-art .sia-swatches i:first-child {
    margin-left: 0;
    background: #f7f4ef;
}

.sitto-industry-art .sia-swatches i:last-child {
    background: #f3c9d2;
}

.sitto-industry-art .sia-hoop {
    right: 3%;
    top: 6%;
    z-index: 2;
    width: 22%;
    height: 38%;
    border-radius: 1em;
    transform: rotate(8deg);
}

.sitto-industry-art .sia-hoop__pod {
    position: absolute;
    left: 18%;
    bottom: 18%;
    width: 64%;
    height: 28%;
    border-radius: 50%;
    background: #f6f1e8;
}

.sitto-industry-art .sia-hoop__ring {
    position: absolute;
    left: 22%;
    top: 12%;
    width: 56%;
    height: auto;
}

.sitto-industry-art .sia-inv {
    left: 16%;
    bottom: 4%;
    z-index: 5;
    width: 80%;
    padding: 0.55em 0.7em 0.45em;
    border-radius: 1em;
    transform: rotate(-2deg);
}

.sitto-industry-art .sia-inv__head {
    display: inline-flex;
    align-items: center;
    gap: 0.3em;
    margin-bottom: 0.25em;
    padding: 0.22em 0.5em;
    border-radius: 999px;
    background: #f6e7b0;
    font-size: 0.66em;
    font-weight: 800;
    letter-spacing: 0.08em;
}

.sitto-industry-art .sia-inv__head svg,
.sitto-industry-art .sia-inv__row svg {
    width: 1em;
    height: 1em;
}

.sitto-industry-art .sia-inv__row {
    display: grid;
    grid-template-columns: 1.15em minmax(0, 1fr) auto auto;
    gap: 0.4em;
    align-items: center;
    padding: 0.32em 0;
    border-top: 1px solid #E9EAEB;
    font-size: 0.78em;
}

.sitto-industry-art .sia-inv__row b {
    display: block;
    font-weight: 700;
}

.sitto-industry-art .sia-inv__row small {
    color: #717680;
    font-size: 0.86em;
}

.sitto-industry-art .sia-stock {
    font-size: 0.78em;
    font-weight: 800;
    letter-spacing: 0.02em;
}

.sitto-industry-art .sia-stock::before {
    content: "";
    display: inline-block;
    width: 0.45em;
    height: 0.45em;
    margin-right: 0.28em;
    border-radius: 50%;
    background: #3caa55;
}

.sitto-industry-art .sia-stock.is-ok {
    color: #2f8a45;
}

.sitto-industry-art .sia-stock.is-low {
    color: #b8860b;
}

.sitto-industry-art .sia-stock.is-low::before {
    background: #e2a31a;
}

/* Beauty */
.sitto-industry-art .sia-mirror {
    left: 1%;
    top: 6%;
    z-index: 1;
    width: 34%;
    transform: rotate(-7deg);
    filter: drop-shadow(0 12px 16px rgba(24, 29, 39, 0.1));
}

.sitto-industry-art .sia-mirror svg {
    width: 100%;
    height: auto;
}

.sitto-industry-art .sia-tools {
    left: 8%;
    bottom: 7%;
    z-index: 3;
    display: flex;
    gap: 0.4em;
    align-items: flex-end;
}

.sitto-industry-art .sia-tool {
    padding: 0.35em;
    border-radius: 0.7em;
    background: #fff;
    box-shadow: 0 8px 16px rgba(24, 29, 39, 0.1);
}

.sitto-industry-art .sia-tool svg {
    width: 4.4em;
    height: auto;
}

.sitto-industry-art .sia-tool--comb {
    transform: rotate(-14deg);
}

.sitto-industry-art .sia-tool--cut {
    transform: rotate(8deg);
}

.sitto-industry-art .sia-bottles {
    left: 30%;
    top: 22%;
    z-index: 2;
    display: flex;
    gap: 0.35em;
    align-items: flex-end;
    transform: rotate(-3deg);
}

.sitto-industry-art .sia-bottle {
    position: relative;
    width: 1.7em;
    height: 4.3em;
    border-radius: 0.7em 0.7em 0.55em 0.55em;
    background: #f6f1ea;
    box-shadow: 0 10px 16px rgba(24, 29, 39, 0.08);
}

.sitto-industry-art .sia-bottle--pink {
    height: 4.8em;
    background: #f6d5de;
}

.sitto-industry-art .sia-bottle__pump {
    position: absolute;
    top: -0.85em;
    left: 50%;
    width: 0.55em;
    height: 0.85em;
    border-radius: 0.2em 0.2em 0 0;
    background: #f3f1ee;
    transform: translateX(-50%);
}

.sitto-industry-art .sia-bottle__cap {
    position: absolute;
    top: -0.35em;
    left: 50%;
    width: 0.7em;
    height: 0.35em;
    border-radius: 0.15em;
    background: #fff;
    transform: translateX(-50%);
}

.sitto-industry-art .sia-book {
    right: 2%;
    top: 5%;
    z-index: 4;
    width: 50%;
    padding: 0.7em 0.65em 0.6em;
    border-radius: 1.15em;
    transform: rotate(4deg);
}

.sitto-industry-art .sia-book__head {
    display: flex;
    align-items: center;
    gap: 0.4em;
    margin-bottom: 0.35em;
    font-weight: 750;
    font-size: 0.9em;
}

.sitto-industry-art .sia-calico {
    display: grid;
    grid-template-columns: repeat(4, 0.28em);
    gap: 0.14em;
    width: 1.7em;
    height: 1.55em;
    padding: 0.32em 0.22em 0.18em;
    border-radius: 0.35em;
    background: #f6e7b0;
}

.sitto-industry-art .sia-calico i {
    width: 0.28em;
    height: 0.28em;
    border-radius: 50%;
    background: #181D27;
    opacity: 0.75;
}

.sitto-industry-art .sia-slot {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    gap: 0.4em;
    align-items: center;
    margin-top: 0.32em;
    padding: 0.38em 0.45em;
    border-radius: 0.7em;
    background: #f5f6f8;
    font-size: 0.8em;
}

.sitto-industry-art .sia-slot.is-now {
    background: #f8efc4;
}

.sitto-industry-art .sia-slot time,
.sitto-industry-art .sia-slot b {
    font-weight: 750;
}

.sitto-industry-art .sia-slot b {
    color: #3c4048;
    font-weight: 600;
}

.sitto-industry-art .sia-check {
    display: grid;
    place-items: center;
    width: 1.15em;
    height: 1.15em;
    border-radius: 50%;
    background: #181D27;
    color: #fff;
    font-size: 0.75em;
    font-weight: 800;
}

/* Services */
.sitto-industry-art .sia-appt {
    left: 1%;
    top: 8%;
    z-index: 1;
    width: 50%;
    padding: 0.65em 0.65em 0.5em;
    border-radius: 1.1em;
    transform: rotate(-6deg);
}

.sitto-industry-art .sia-appt__head,
.sitto-industry-art .sia-bill__head,
.sitto-industry-art .sia-line {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.4em;
}

.sitto-industry-art .sia-appt__head {
    justify-content: flex-start;
    margin-bottom: 0.3em;
    font-weight: 750;
}

.sitto-industry-art .sia-appt__head small,
.sitto-industry-art .sia-line span,
.sitto-industry-art .sia-bill__note {
    color: #717680;
    font-weight: 500;
}

.sitto-industry-art .sia-appt .sia-slot {
    grid-template-columns: 3.2em minmax(0, 1fr);
}

.sitto-industry-art .sia-bill {
    left: 28%;
    top: 22%;
    z-index: 3;
    width: 48%;
    padding: 0.65em 0.7em 0.55em;
    border-radius: 1.1em;
    transform: rotate(4deg);
}

.sitto-industry-art .sia-bill__head strong {
    font-size: 0.92em;
}

.sitto-industry-art .sia-paid {
    padding: 0.16em 0.45em;
    border-radius: 999px;
    background: #e7f6e4;
    color: #2f7d3a;
    font-size: 0.68em;
    font-weight: 800;
    letter-spacing: 0.04em;
}

.sitto-industry-art .sia-line {
    margin-top: 0.32em;
    padding-top: 0.32em;
    border-top: 1px solid #E9EAEB;
    font-size: 0.82em;
}

.sitto-industry-art .sia-line b,
.sitto-industry-art .sia-bill__total b {
    font-weight: 750;
}

.sitto-industry-art .sia-bill__total {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 0.4em;
    padding-top: 0.35em;
    border-top: 1px dashed #E9EAEB;
    font-weight: 650;
}

.sitto-industry-art .sia-bill__note {
    display: flex;
    align-items: center;
    gap: 0.3em;
    margin-top: 0.35em;
    font-size: 0.74em;
}

.sitto-industry-art .sia-bill__note i {
    display: grid;
    place-items: center;
    width: 1.05em;
    height: 1.05em;
    border-radius: 50%;
    background: #e7f6e4;
    color: #2f7d3a;
    font-style: normal;
    font-weight: 800;
}

.sitto-industry-art .sia-tile {
    z-index: 4;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.25em;
    width: 18%;
    height: 32%;
    border-radius: 0.9em;
    font-size: 0.68em;
    font-weight: 750;
}

.sitto-industry-art .sia-tile svg {
    width: 1.7em;
    height: 1.7em;
}

.sitto-industry-art .sia-tile--repair {
    right: 2%;
    top: 5%;
    background: #f8efc8;
    transform: rotate(8deg);
}

.sitto-industry-art .sia-tile--visit {
    right: 4%;
    bottom: 8%;
    transform: rotate(-8deg);
}

/* SITTO - CTA Button (standalone) */
.sitto-cta-btn {
    width: 100%;
}

.sitto-cta-btn .sitto-cta__btn {
    width: auto;
    max-width: 100%;
}

@media (max-width: 767px) {
    .sitto-cta-btn .sitto-cta__btn {
        width: auto;
    }
}

/* SITTO - CTA Section */
.sitto-cta {
    width: 100%;
}

.sitto-cta__inner {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 24px 32px;
    background-color: #EAF3FF;
    border-radius: 40px;
    padding: 36px 40px;
}

.sitto-cta__body {
    flex: 1 1 280px;
    min-width: 0;
    max-width: 720px;
}

.sitto-cta__title {
    margin: 0 0 10px;
    color: #181D27;
    font-family: Inter, sans-serif;
    font-size: clamp(22px, 2.2vw, 28px);
    font-weight: 600;
    line-height: 1.25;
    letter-spacing: -0.02em;
}

.sitto-cta__desc {
    margin: 0;
    color: #535862;
    font-family: Inter, sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.45;
    letter-spacing: -0.01em;
}

.sitto-cta__action {
    flex: 0 0 auto;
}

.sitto-cta__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 14px 26px;
    border-radius: 999px;
    background-color: #0070D6;
    color: #fff;
    font-family: Inter, sans-serif;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.2;
    text-decoration: none;
    transition: background-color 0.2s ease, color 0.2s ease, transform 0.2s ease;
}

.sitto-cta__btn:hover {
    transform: translateY(-1px);
}

.sitto-cta__btn:hover .sitto-cta__btn-icon svg {
    color: inherit;
}

.sitto-cta__btn-icon {
    display: inline-flex;
    line-height: 0;
}

@media (max-width: 767px) {
    .sitto-cta__inner {
        padding: 28px 24px;
        border-radius: 28px;
    }

    .sitto-cta__action {
        width: 100%;
    }

    .sitto-cta__action .sitto-cta__btn {
        width: 100%;
    }
}

/* Sitto footer (pxl-template 18274) */
#pxl-footer-elementor .sitto-footer.elementor-element-35fc277 {
    position: relative;
    overflow: hidden;
}

#pxl-footer-elementor .sitto-footer.elementor-element-35fc277 > .pxl-container-overlay__item {
    z-index: 0;
    pointer-events: none;
}

#pxl-footer-elementor .sitto-footer.elementor-element-35fc277 > .e-con-inner {
    position: relative;
    z-index: 1;
}

.sitto-footer__main.e-con {
    justify-content: flex-start !important;
    align-items: stretch !important;
    gap: 40px;
}

.sitto-footer__top.e-con {
    justify-content: flex-start !important;
    align-items: flex-start !important;
    --column-gap: 50px;
    --row-gap: 50px;
    gap: 50px;
    width: 100%;
}

.sitto-footer__brand-head.e-con {
    flex: 0 0 480px;
    max-width: 480px;
    min-width: 0;
}

.sitto-footer__top > .sitto-footer__links.e-con {
    flex: 1 1 0;
    min-width: 0;
    width: auto !important;
    max-width: none;
    align-self: flex-start;
}

.sitto-footer__links.e-con {
    justify-content: flex-start !important;
    align-items: flex-start !important;
    flex-wrap: nowrap !important;
    --column-gap: 50px;
    --row-gap: 50px;
    gap: 50px;
}

.sitto-footer__brand-extra.e-con {
    width: 100%;
    max-width: 480px;
}

#pxl-footer-elementor .container {
    max-width: none;
    padding-left: 0;
    padding-right: 0;
}

#pxl-footer-elementor .row {
    margin-left: 0;
    margin-right: 0;
}

#pxl-footer-elementor .col-12 {
    padding-left: 0;
    padding-right: 0;
}

.sitto-footer .sitto-footer__brand-head .pxl-heading__title,
.sitto-footer .sitto-footer__brand .pxl-heading__title {
    margin: 0;
    color: #181D27;
    font-family: Inter, sans-serif;
    font-size: clamp(28px, 3vw, 40px);
    font-weight: 600;
    line-height: 1.15;
    letter-spacing: -0.03em;
    max-width: 22em;
}

.sitto-footer__contacts {
    margin-top: 4px;
}

.sitto-footer__contacts .pxl-contact-info {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    position: relative;
    padding: 0;
}

.sitto-footer__contacts .pxl-contact-info .pxl-item--icon {
    flex: 0 0 40px;
    width: 40px;
    height: 40px;
    margin: 0;
    border-radius: 999px;
    background: #F5F6F8;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #535862;
    font-size: 18px;
}

.sitto-footer__contacts .pxl-contact-info .pxl-item--icon i {
    display: block;
    line-height: 1;
    font-size: 18px;
}

.sitto-footer__contacts .pxl-contact-info .pxl-item--icon::before {
    display: none;
}

.sitto-footer__contacts .pxl-contact-info .pxl-item--meta {
    flex: 1;
    min-width: 0;
}

.sitto-footer__contacts .pxl-contact-info .pxl-item--title {
    margin: 0 0 4px;
    color: #181D27;
    font-family: Inter, sans-serif;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.35;
}

.sitto-footer__contacts .pxl-contact-info .pxl-item--subtitle {
    color: #535862;
    font-family: Inter, sans-serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.45;
}

.sitto-footer__prod-stack .sitto-link:not(.sitto-link--cols-2) {
    min-width: 0;
    flex: 1 1 140px;
    max-width: 200px;
}

.sitto-footer__links .sitto-link__list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.sitto-footer__links .sitto-link__item {
    margin: 0;
    padding: 0;
    list-style: none;
}

.sitto-footer__links .sitto-link--cols-2 {
    width: 100%;
    max-width: 100%;
}

.sitto-footer__links .sitto-link--cols-2 .sitto-link__list {
    display: grid;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 32px;
    row-gap: 8px;
}

.sitto-footer__links .sitto-link--cols-2.sitto-link--col-width-fixed .sitto-link__list {
    grid-template-columns: repeat(2, minmax(0, var(--sitto-link-col-max, 200px)));
}

.sitto-footer__links .sitto-link--cols-2.sitto-link--text-nowrap .sitto-link__list {
    grid-template-columns: repeat(2, max-content);
}

.sitto-footer__links .sitto-link--cols-2.sitto-link--text-nowrap .sitto-link__item a,
.sitto-footer__links .sitto-link--cols-2.sitto-link--text-nowrap .sitto-link__item > span {
    white-space: nowrap;
}

.sitto-link--fill-col.sitto-link--cols-2 .sitto-link__list {
    grid-auto-flow: column;
    grid-template-rows: repeat(3, auto);
}

.sitto-link__item a,
.sitto-link__item > span {
    overflow-wrap: anywhere;
    word-break: break-word;
}

/* Sitto List (Elementor widget) */
.sitto-list {
    display: flex;
    flex-direction: column;
    gap: 8px;
    list-style: none;
    margin: 0;
    padding: 0;
}

.sitto-list__item {
    margin: 0;
    padding: 0;
    flex: 0 1 auto;
    max-width: 100%;
}

.sitto-list__row {
    display: flex;
    align-items: center;
    gap: 8px;
    text-decoration: none;
    color: inherit;
}

.sitto-list__row--icon-right {
    flex-direction: row-reverse;
    justify-content: flex-end;
}

a.sitto-list__row:hover,
a.sitto-list__row:focus-visible {
    text-decoration: none;
}

.sitto-list__icon {
    flex-shrink: 0;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #F5F6F8;
    overflow: hidden;
}

.sitto-list__icon img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.sitto-list__text {
    flex: 1;
    min-width: 0;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.3;
}

.sitto-list--stacked .sitto-list__text {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.sitto-list--stacked .sitto-list__item-title {
    display: block;
    color: #181D27;
    font-size: 15px;
    font-weight: 600;
    line-height: 1.35;
    letter-spacing: -0.02em;
}

.sitto-list--stacked .sitto-list__item-desc {
    display: block;
    color: #535862;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.45;
    letter-spacing: -0.01em;
}

.sitto-list--stacked .sitto-list__item {
    padding: 16px 0;
}

.sitto-list--stacked .sitto-list__item:first-child {
    padding-top: 0;
}

.sitto-list--stacked .sitto-list__item + .sitto-list__item {
    border-top: 1px solid #E9EAEB;
}

.sitto-list--stacked .sitto-list__row {
    align-items: flex-start;
}

.sitto-list--stacked .sitto-list__icon {
    margin-top: 2px;
}

/* Transaction Fees — Payment processing card (page 18376) */
.elementor-element.sitto-payment-card {
    background-color: #FFFFFF;
    border: 1px solid #E9EAEB;
    border-radius: 24px;
}

.elementor-element.sitto-payment-card .sitto-payment-card__eyebrow {
    margin: 0 0 12px;
    color: #717680;
    font-family: Inter, sans-serif;
    font-size: 12px;
    font-weight: 600;
    line-height: 1.2;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.elementor-element.sitto-payment-card .sitto-payment-card__rate {
    margin: 0 0 20px;
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 8px 10px;
    color: #181D27;
    font-family: Inter, sans-serif;
    line-height: 1.1;
    letter-spacing: -0.03em;
}

.elementor-element.sitto-payment-card .sitto-payment-card__rate-from {
    font-size: 22px;
    font-weight: 500;
    color: #535862;
    letter-spacing: -0.02em;
}

.elementor-element.sitto-payment-card .sitto-payment-card__rate-value {
    font-size: clamp(36px, 4vw, 48px);
    font-weight: 600;
    color: #181D27;
}

.elementor-element.sitto-payment-card .sitto-payment-card__subtitle {
    margin: 0 0 8px;
    padding-bottom: 0;
    color: #181D27;
    font-family: Inter, sans-serif;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.35;
    letter-spacing: -0.02em;
}

.elementor-element.sitto-payment-card .sitto-list--stacked {
    gap: 0;
}

.elementor-element.sitto-payment-card .sitto-list--stacked .sitto-list__icon {
    background-color: #FFF4D4;
    border-radius: 50%;
}

.sitto-link--text-nowrap .sitto-link__item a,
.sitto-link--text-nowrap .sitto-link__item > span {
    overflow-wrap: normal;
    word-break: normal;
}

.sitto-footer__links .sitto-link--cols-2 .sitto-link__item {
    break-inside: avoid;
    min-width: 0;
}

.sitto-footer__links .sitto-link--cols-2 .sitto-link__item a,
.sitto-footer__links .sitto-link--cols-2 .sitto-link__item > span {
    display: block;
    max-width: 100%;
}

.sitto-footer__prod-stack {
    flex: 0 0 auto;
}

.sitto-footer__prod-stack:has(.sitto-footer__biz-col) {
    flex: 1 1 320px;
    width: auto !important;
    max-width: none;
    min-width: 0;
}

.sitto-footer__links .sitto-link__title {
    margin-bottom: 16px;
    color: #181D27;
    font-size: 16px;
    font-weight: 600;
    transition: color 0.2s ease;
}

.sitto-footer__links .sitto-link__item a {
    color: #535862;
    font-size: 14px;
    line-height: 1.35;
    letter-spacing: -0.02em;
    transition: color 0.2s ease;
}

.sitto-footer__links .sitto-link__item a:hover,
.sitto-footer__links .sitto-link__item a:focus-visible {
    color: #FFC20F;
}

.sitto-footer__links .elementor-element.sitto-footer__biz-col {
    flex: 1 1 280px;
    min-width: 0;
    width: 100%;
    max-width: 100%;
}

.sitto-footer__links .elementor-element.sitto-footer__biz-col .sitto-link {
    width: 100%;
    max-width: 100%;
    flex: 1 1 auto;
}

.sitto-footer__links .elementor-element.sitto-footer__company-col {
    flex: 0 0 auto;
    min-width: 0;
    max-width: 420px;
    width: auto;
}

.sitto-footer__links .elementor-element.sitto-footer__company-col .sitto-link {
    max-width: 420px;
}

.sitto-footer__links .elementor-element.sitto-footer__company-col .sitto-link {
    max-width: 420px;
}

/* Sitto Link: manual columns ("Start a new column here") and group headings */
.sitto-link__cols {
    display: flex;
    align-items: flex-start;
    gap: 32px;
}

.sitto-link__cols > .sitto-link__list {
    flex: 1 1 0;
    min-width: 0;
}

.sitto-link__group {
    margin: 0;
    padding: 0;
    list-style: none;
    color: #FFC20F;
    font-size: 15px;
    font-weight: 600;
    line-height: 1.35;
    letter-spacing: -0.02em;
}

.sitto-link__group a {
    color: inherit;
}

.sitto-link__list .sitto-link__item + .sitto-link__group {
    margin-top: 20px;
}

/* Footer: "Point of Sale For" (two grouped columns) next to Company in one row */
.sitto-footer__links .sitto-link__item > span {
    color: #535862;
    font-size: 14px;
    line-height: 1.35;
    letter-spacing: -0.02em;
}

.sitto-footer__links .sitto-link__item a,
.sitto-footer__links .sitto-link__item > span {
    overflow-wrap: break-word;
    word-break: normal;
}

@media (min-width: 1025px) {
    .sitto-footer__prod-stack:has(.sitto-footer__pos-col) {
        flex: 1 1 auto;
        flex-wrap: nowrap !important;
        gap: 40px;
        min-width: 0;
    }

    .sitto-footer__links .elementor-element.sitto-footer__pos-col {
        flex: 1 1 auto;
        min-width: 0;
    }

    .sitto-footer__links .elementor-element.sitto-footer__company-col {
        flex: 0 1 200px;
        min-width: 0;
    }

    .sitto-footer__links.e-con {
        gap: 40px;
    }
}

.sitto-footer__links .elementor-element.sitto-footer__pos-col .sitto-link {
    width: 100%;
}

@media (max-width: 575px) {
    .sitto-link__cols {
        flex-direction: column;
        gap: 20px;
    }
}

@media (max-width: 767px) {
    .sitto-footer__prod-stack:has(.sitto-footer__pos-col) {
        flex-direction: column !important;
        flex-wrap: nowrap !important;
    }
}

.sitto-footer .pxl-icons.style-1 {
    gap: 10px;
}

.sitto-footer .pxl-icons.style-1 a {
    width: 40px;
    height: 40px;
    border: 1px solid #E9EAEB;
    border-radius: 999px;
    background: #fff;
}

.sitto-footer__bar.e-con {
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center;
    text-align: center;
    gap: 12px;
    width: 100%;
}

.sitto-footer__bar.e-con > .elementor-widget {
    width: 100%;
    max-width: 100%;
}

.sitto-footer__bar .sitto-footer-bar__copy {
    margin: 0;
    width: 100%;
    text-align: center;
    color: #717680;
    font-size: 14px;
    line-height: 1.5;
}

.sitto-link-h {
    width: 100%;
    display: flex;
    justify-content: center;
}

.sitto-link-h__list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 8px 12px;
}

.sitto-link-h__list > li {
    margin: 0;
    padding: 0;
    list-style: none;
}

.sitto-link-h__item a {
    color: #717680;
    font-size: 13px;
    line-height: 1.45;
    text-decoration: none;
    transition: color 0.2s ease;
}

.sitto-link-h__item a:hover,
.sitto-link-h__item a:focus-visible {
    color: #FFC20F;
}

.sitto-link-h__sep {
    color: #D5D7DA;
    user-select: none;
    font-size: 13px;
    line-height: 1;
}

.sitto-link-h__select-wrap {
    display: none !important;
    width: 100%;
    max-width: 480px;
    margin: 0 auto;
}

.sitto-link-h__select {
    width: 100%;
    appearance: none;
    -webkit-appearance: none;
    border: 1px solid #D5D7DA;
    border-radius: 10px;
    background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M6 9l6 6 6-6' stroke='%23535862' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat right 14px center;
    padding: 12px 40px 12px 14px;
    color: #181D27;
    font-family: Inter, sans-serif;
    font-size: 14px;
    line-height: 1.3;
}

.sitto-link-h__select:focus-visible {
    outline: 2px solid #FFC20F;
    outline-offset: 2px;
}

.sitto-footer .screen-reader-text {
    border: 0;
    clip: rect(1px, 1px, 1px, 1px);
    clip-path: inset(50%);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
    word-wrap: normal !important;
}

@media (max-width: 1024px) {
    .sitto-footer__brand-head.e-con {
        flex: 1 1 100%;
        max-width: none;
    }

    .sitto-footer__top > .sitto-footer__links.e-con {
        flex: 1 1 100%;
    }

    .sitto-footer__links.e-con {
        flex-wrap: wrap !important;
    }

    .sitto-footer__brand-extra.e-con {
        max-width: none;
    }

    .sitto-footer__prod-stack {
        width: 100% !important;
        flex-direction: row;
        flex-wrap: wrap;
        gap: 28px 24px;
    }

    .sitto-footer__prod-stack .sitto-link {
        flex: 1 1 200px;
        max-width: none;
    }

    .sitto-footer__links .elementor-element.sitto-footer__biz-col,
    .sitto-footer__links .elementor-element.sitto-footer__company-col {
        flex: 1 1 100%;
        max-width: none;
    }

    .sitto-footer__links .elementor-element.sitto-footer__company-col .sitto-link,
    .sitto-footer__links .elementor-element.sitto-footer__company-col .sitto-link--cols-2 .sitto-link__list {
        max-width: none;
    }

    .sitto-footer__links .elementor-element.sitto-footer__company-col .sitto-link--cols-2 .sitto-link__list {
        grid-auto-flow: row;
        grid-template-rows: none;
        grid-template-columns: 1fr;
    }
}

@media (max-width: 767px) {
    .sitto-footer__links,
    .sitto-footer__links.e-con {
        display: flex;
        flex-direction: column;
        gap: 0 !important;
        --column-gap: 0;
        --row-gap: 0;
    }

    .sitto-footer__links > .e-con {
        gap: 0 !important;
        width: 100% !important;
        flex: 0 0 auto !important;
        min-height: 0;
        margin: 0;
        padding: 0;
    }

    .sitto-footer__prod-stack:has(.sitto-footer__biz-col) {
        flex: 0 0 auto;
        min-height: 0;
        width: 100% !important;
    }

    .sitto-footer__links .sitto-link {
        flex: 1 1 auto;
        max-width: none;
        width: 100%;
        border-top: 1px solid #E9EAEB;
        padding: 16px 0;
    }

    .sitto-footer__links .sitto-link:last-child {
        border-bottom: 1px solid #E9EAEB;
    }

    .sitto-footer__links .sitto-link__title {
        margin: 0;
        padding: 0 28px 0 0;
        position: relative;
        cursor: pointer;
        user-select: none;
    }

    .sitto-footer__prod-stack {
        flex-direction: column;
        gap: 0 !important;
        width: 100% !important;
        max-width: none !important;
    }

    .sitto-footer__prod-stack > .elementor-widget,
    .sitto-footer__prod-stack .elementor-widget-container,
    .sitto-footer__prod-stack .sitto-link:not(.sitto-link--cols-2) {
        width: 100% !important;
        max-width: none !important;
        flex: 0 0 auto;
        box-sizing: border-box;
    }

    .sitto-footer__links .elementor-element.sitto-footer__company-col,
    .sitto-footer__links .elementor-element.sitto-footer__biz-col {
        width: 100% !important;
        max-width: none !important;
    }

    .sitto-footer__links .sitto-link__title::after {
        content: "";
        position: absolute;
        right: 2px;
        top: 50%;
        width: 10px;
        height: 10px;
        border-right: 2px solid #181D27;
        border-bottom: 2px solid #181D27;
        transform: translateY(-70%) rotate(45deg);
        transition: transform 0.32s cubic-bezier(0.4, 0, 0.2, 1);
    }

    .sitto-footer__links .sitto-link.is-open .sitto-link__title::after {
        transform: translateY(-30%) rotate(225deg);
    }

    .sitto-footer__links .sitto-link__list {
        margin-top: 0;
        will-change: max-height, opacity;
    }

    .sitto-footer__links .sitto-link.is-open .sitto-link__list {
        margin-top: 12px;
    }

    .sitto-footer__links .sitto-link--cols-2.is-open .sitto-link__list {
        grid-template-columns: 1fr;
    }

    .sitto-footer__links .sitto-link--cols-2 .sitto-link__item a {
        white-space: normal;
    }

    .sitto-footer__bar.e-con {
        gap: 16px;
    }

    .sitto-link-h__list--desktop {
        display: none !important;
    }

    .sitto-link-h__select-wrap {
        display: block;
    }
}

/* Sitto Form Builder (Elementor widget)
 * Button-ish classes are doubled to beat the theme's global button:not(.btn) rule. */
.sitto-form-builder {
    display: flex;
    flex-direction: column;
    gap: 20px;
    max-width: 640px;
}

.sitto-form-builder__fields {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.sitto-form-builder__label {
    display: block;
    margin-bottom: 6px;
    font-size: 14px;
    font-weight: 500;
    color: #181d27;
}

.sitto-form-builder__required {
    color: #d92d20;
    margin-left: 2px;
}

.sitto-form-builder__input,
.sitto-form-builder__textarea,
.sitto-form-builder__select.sitto-form-builder__select {
    box-sizing: border-box;
    width: 100%;
    padding: 12px 14px;
    border: 1px solid #d5d7da;
    border-radius: 8px;
    background: #ffffff;
    color: #181d27;
    font: inherit;
    line-height: 1.4;
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.sitto-form-builder__input:focus,
.sitto-form-builder__textarea:focus,
.sitto-form-builder__select.sitto-form-builder__select:focus {
    outline: none;
    border-color: #181d27;
    box-shadow: 0 0 0 3px rgba(24, 29, 39, 0.08);
}

.sitto-form-builder__textarea {
    min-height: 120px;
    resize: vertical;
}

.sitto-form-builder__checkbox {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    font-size: 14px;
    line-height: 1.45;
    cursor: pointer;
}

.sitto-form-builder__input--checkbox {
    width: auto;
    margin-top: 3px;
    padding: 0;
}

.sitto-form-builder__field.has-error .sitto-form-builder__input,
.sitto-form-builder__field.has-error .sitto-form-builder__textarea,
.sitto-form-builder__field.has-error .sitto-form-builder__select.sitto-form-builder__select {
    border-color: #d92d20;
}

.sitto-form-builder__field-error {
    margin: 6px 0 0;
    font-size: 13px;
    color: #d92d20;
}

.sitto-form-builder__submit.sitto-form-builder__submit {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    padding: 10px 22px;
    border: 0;
    border-radius: 999px;
    background: #181d27;
    color: #ffffff;
    font: inherit;
    font-weight: 600;
    cursor: pointer;
    transition: opacity 0.15s ease;
}

.sitto-form-builder__submit.sitto-form-builder__submit:disabled {
    opacity: 0.65;
    cursor: wait;
}

.sitto-form-builder__message {
    padding: 12px 14px;
    border-radius: 8px;
    font-size: 14px;
    line-height: 1.45;
}

.sitto-form-builder__message--success {
    background: #ecfdf3;
    color: #067647;
    border: 1px solid #abefc6;
}

.sitto-form-builder__message--error {
    background: #fef3f2;
    color: #b42318;
    border: 1px solid #fecdca;
}

.sitto-form-builder__hp {
    position: absolute;
    left: -9999px;
    width: 1px;
    height: 1px;
    overflow: hidden;
}

.sitto-form-builder__placeholder {
    padding: 12px;
    border: 1px dashed #d5d7da;
    border-radius: 8px;
    color: #717680;
    font-size: 14px;
}

/* Sitto Form Builder — grouped drill-down dropdown */
.sitto-form-builder__select--native {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    border: 0 !important;
    opacity: 0;
    pointer-events: none;
}

.sitto-form-builder__dd {
    position: relative;
}

.sitto-form-builder__dd-trigger.sitto-form-builder__dd-trigger {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    text-align: left;
    cursor: pointer;
}

.sitto-form-builder__dd.is-open .sitto-form-builder__dd-trigger.sitto-form-builder__dd-trigger {
    border-color: #181d27;
    box-shadow: 0 0 0 3px rgba(24, 29, 39, 0.08);
}

.sitto-form-builder__dd-value {
    display: flex;
    align-items: baseline;
    gap: 8px;
    min-width: 0;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.sitto-form-builder__dd.is-empty .sitto-form-builder__dd-value {
    color: #717680;
}

.sitto-form-builder__dd-value-group {
    flex-shrink: 0;
    font-size: 12px;
    color: #717680;
}

.sitto-form-builder__dd-value-group::after {
    content: "›";
    margin-left: 8px;
}

.sitto-form-builder__dd-caret {
    display: inline-flex;
    flex-shrink: 0;
    color: #717680;
    transform: rotate(90deg);
    transition: transform 0.2s ease;
}

.sitto-form-builder__dd.is-open .sitto-form-builder__dd-caret {
    transform: rotate(-90deg);
}

.sitto-form-builder__field.has-error .sitto-form-builder__dd-trigger.sitto-form-builder__dd-trigger {
    border-color: #d92d20;
}

.sitto-form-builder__dd-panel {
    position: absolute;
    top: calc(100% + 6px);
    left: 0;
    right: 0;
    z-index: 50;
    overflow: hidden;
    border: 1px solid #e9eaeb;
    border-radius: 12px;
    background: #ffffff;
    box-shadow: 0 12px 32px -4px rgba(10, 13, 18, 0.12), 0 4px 8px -2px rgba(10, 13, 18, 0.06);
    animation: sitto-fb-dd-in 0.16s ease;
}

.sitto-form-builder__dd-panel[hidden] {
    display: none;
}

@keyframes sitto-fb-dd-in {
    from {
        opacity: 0;
        transform: translateY(-4px);
    }
}

.sitto-form-builder__dd-search {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 14px;
    border-bottom: 1px solid #E9EAEB;
    color: #717680;
}

.sitto-form-builder__dd-search input {
    flex: 1;
    min-width: 0;
    padding: 4px 0;
    border: 0;
    outline: none;
    background: transparent;
    color: #181d27;
    font: inherit;
    font-size: 15px;
    box-shadow: none;
}

.sitto-form-builder__dd-viewport {
    overflow: hidden;
    transition: height 0.25s ease;
}

.sitto-form-builder__dd-viewport[hidden] {
    display: none;
}

.sitto-form-builder__dd-track {
    display: flex;
    align-items: flex-start;
    width: 200%;
    transition: transform 0.25s ease;
}

.sitto-form-builder__dd.is-drilled .sitto-form-builder__dd-track {
    transform: translateX(-50%);
}

.sitto-form-builder__dd.no-anim .sitto-form-builder__dd-track,
.sitto-form-builder__dd.no-anim .sitto-form-builder__dd-viewport {
    transition: none;
}

.sitto-form-builder__dd-pane {
    box-sizing: border-box;
    width: 50%;
    margin: 0;
    padding: 6px;
    list-style: none;
}

ul.sitto-form-builder__dd-pane,
.sitto-form-builder__dd-list,
.sitto-form-builder__dd-results {
    max-height: 300px;
    overflow-y: auto;
    overscroll-behavior: contain;
}

.sitto-form-builder__dd-list,
.sitto-form-builder__dd-results {
    margin: 0;
    padding: 0;
    list-style: none;
}

.sitto-form-builder__dd-results {
    padding: 6px;
}

.sitto-form-builder__dd-results[hidden] {
    display: none;
}

.sitto-form-builder__dd-pane li,
.sitto-form-builder__dd-results li {
    margin: 0;
    padding: 0;
}

.sitto-form-builder__dd-group.sitto-form-builder__dd-group,
.sitto-form-builder__dd-option.sitto-form-builder__dd-option,
.sitto-form-builder__dd-back.sitto-form-builder__dd-back {
    display: flex;
    align-items: center;
    gap: 10px;
    width: 100%;
    min-height: 42px;
    padding: 8px 10px;
    border: 0;
    border-radius: 8px;
    background: transparent;
    color: #181d27;
    font: inherit;
    font-size: 15px;
    line-height: 1.3;
    text-align: left;
    cursor: pointer;
    transition: background-color 0.12s ease;
}

.sitto-form-builder__dd-group.sitto-form-builder__dd-group:hover,
.sitto-form-builder__dd-group.sitto-form-builder__dd-group:focus-visible,
.sitto-form-builder__dd-option.sitto-form-builder__dd-option:hover,
.sitto-form-builder__dd-option.sitto-form-builder__dd-option:focus-visible,
.sitto-form-builder__dd-back.sitto-form-builder__dd-back:hover,
.sitto-form-builder__dd-back.sitto-form-builder__dd-back:focus-visible {
    outline: none;
    background: #F5F6F8;
}

.sitto-form-builder__dd-group-label,
.sitto-form-builder__dd-option-label {
    flex: 1;
    min-width: 0;
}

.sitto-form-builder__dd-group.sitto-form-builder__dd-group {
    font-weight: 500;
}

.sitto-form-builder__dd-group.sitto-form-builder__dd-group.is-active .sitto-form-builder__dd-group-label::after {
    content: "";
    display: inline-block;
    width: 6px;
    height: 6px;
    margin-left: 8px;
    border-radius: 50%;
    background: #181d27;
    vertical-align: middle;
}

.sitto-form-builder__dd-group-count {
    min-width: 22px;
    padding: 1px 7px;
    border-radius: 999px;
    background: #F5F6F8;
    color: #535862;
    font-size: 12px;
    text-align: center;
}

.sitto-form-builder__dd-group-arrow {
    display: inline-flex;
    color: #a4a7ae;
}

.sitto-form-builder__dd-back.sitto-form-builder__dd-back {
    margin-bottom: 4px;
    border-bottom: 1px solid #E9EAEB;
    border-radius: 8px 8px 0 0;
    color: #535862;
    font-size: 13px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.sitto-form-builder__dd-pane--child {
    padding: 6px;
}

.sitto-form-builder__dd-back.sitto-form-builder__dd-back svg {
    transform: rotate(180deg);
}

.sitto-form-builder__dd-option-group {
    flex-shrink: 0;
    font-size: 12px;
    color: #717680;
}

.sitto-form-builder__dd-check {
    display: inline-flex;
    flex-shrink: 0;
    visibility: hidden;
    color: #181d27;
}

.sitto-form-builder__dd-option.sitto-form-builder__dd-option.is-selected {
    font-weight: 600;
}

.sitto-form-builder__dd-option.sitto-form-builder__dd-option.is-selected .sitto-form-builder__dd-check {
    visibility: visible;
}

.sitto-form-builder__dd-empty {
    padding: 16px 10px;
    color: #717680;
    font-size: 14px;
    text-align: center;
}

@media (prefers-reduced-motion: reduce) {
    .sitto-form-builder__dd-track,
    .sitto-form-builder__dd-viewport,
    .sitto-form-builder__dd-caret,
    .sitto-form-builder__dd-panel {
        transition: none;
        animation: none;
    }
}

/* Sitto Form Builder — content blocks & inline submit */
.sitto-form-builder__html {
    font-size: 14px;
    line-height: 1.6;
    color: #717680;
}

.sitto-form-builder__html > :first-child {
    margin-top: 0;
}

.sitto-form-builder__html > :last-child {
    margin-bottom: 0;
}

.sitto-form-builder__html a {
    color: #181d27;
    text-decoration: underline;
    text-underline-offset: 2px;
}

.sitto-form-builder__actions--inline {
    margin: 4px 0;
}

.sitto-form-builder__submit-icon {
    display: inline-flex;
    margin-left: 10px;
}

.sitto-form-builder__submit-text:not([hidden]) {
    display: inline-flex;
    align-items: center;
}

/* Sitto - Form widget options */
.sitto-form-builder__submit.sitto-form-builder__submit {
    width: var(--sitto-fb-btn-width, auto);
}

.sitto-form-builder__submit-icon {
    transition: transform 0.2s ease;
}

.elementor-widget-sitto_form_builder:not(.sitto-fb-labels-yes) .sitto-form-builder__label {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

.elementor-widget-sitto_form_builder:not(.sitto-fb-required-yes) .sitto-form-builder__required {
    display: none;
}

/* Sitto Form Builder — two-column rows, prefix, button note */
.sitto-form-builder__fields {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.sitto-form-builder__fields > * {
    grid-column: 1 / -1;
    min-width: 0;
}

.sitto-form-builder__fields > .sitto-form-builder__field--half {
    grid-column: auto;
}

@media (max-width: 575px) {
    .sitto-form-builder__fields > .sitto-form-builder__field--half {
        grid-column: 1 / -1;
    }
}

.sitto-form-builder__input-group {
    position: relative;
}

.sitto-form-builder__prefix {
    position: absolute;
    top: 1px;
    bottom: 1px;
    left: 1px;
    z-index: 1;
    display: flex;
    align-items: center;
    padding: 0 14px;
    border-right: 1px solid rgba(24, 29, 39, 0.12);
    color: #181d27;
    font-weight: 500;
    pointer-events: none;
}

.sitto-form-builder__actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px 24px;
}

.sitto-form-builder__submit-note {
    margin: 0;
    font-size: 15px;
    line-height: 1.4;
    color: #717680;
}

/* Sitto Form Builder — link next to the button, note box, confirmation panel */
.sitto-form-builder__link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding-bottom: 4px;
    border-bottom: 2px solid #ffc20f;
    color: #181d27;
    font-weight: 600;
    text-decoration: none;
}

.sitto-form-builder__link-icon {
    display: inline-flex;
    transition: transform 0.2s ease;
}

.sitto-form-builder__link:hover .sitto-form-builder__link-icon {
    transform: translateX(3px);
}

.sitto-form-builder__callout {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin: 0;
    padding: 16px 20px;
    border: 1px solid #fde7a6;
    border-radius: 12px;
    background: #fff8e1;
    color: #181d27;
    font-size: 15px;
    line-height: 1.55;
}

.sitto-form-builder__callout-icon {
    display: inline-flex;
    flex-shrink: 0;
    margin-top: 1px;
}

.sitto-form-builder.is-sent > :not(.sitto-form-builder__done) {
    display: none;
}

.sitto-form-builder__done {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
    outline: none;
}

.sitto-form-builder__done[hidden] {
    display: none;
}

.sitto-form-builder__done-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background: #ffc20f;
    color: #181d27;
}

.sitto-form-builder__done-title {
    margin: 4px 0 0;
    color: #181d27;
    font-size: 22px;
    font-weight: 600;
    line-height: 1.3;
}

.sitto-form-builder__done-text {
    margin: 0;
    color: #535862;
}

.sitto-form-builder__reset.sitto-form-builder__reset {
    margin-top: 8px;
    padding: 10px 22px;
    border: 1px solid #d5d7da;
    border-radius: 999px;
    background: transparent;
    color: #181d27;
    font: inherit;
    font-weight: 600;
    cursor: pointer;
}

/* Sitto - Spec Table (structure only; colors, sizes and spacing are widget controls) */
.sitto-spec {
    margin: 0;
    padding: 0;
}

.sitto-spec__row {
    display: grid;
    grid-template-columns: var(--sitto-spec-label-w, 45%) minmax(0, 1fr);
    align-items: center;
    border-bottom: 1px solid #e9eaeb;
    transition: background-color 0.2s ease;
}

.sitto-spec__label,
.sitto-spec__value {
    margin: 0;
    padding: 0;
}

/* Neutralise the theme's global dl/dt/dd styles; the widget's Typography
   controls (higher specificity) still override these. */
.sitto-spec .sitto-spec__label {
    text-transform: none;
    letter-spacing: normal;
}

@media (max-width: 767px) {
    .sitto-spec-stack-yes .sitto-spec__row {
        grid-template-columns: minmax(0, 1fr);
        row-gap: 2px;
    }
}

/* ==========================================================================
   Link hover colour: one source of truth.
   Plain links follow Theme Options → Link Colors (--link-color-hover, set to
   Sitto yellow #FFC20F). The components below ship their own purple hover
   (theme --secondary-color); they are pointed at the same variable so every
   link turns yellow on hover and the colour is changed in one place.
   ========================================================================== */

/* "Back to …" links (Shop/Cart breadcrumb, blog post) */
.pxl-ptit__breadcrumb a,
.pxl-blog-overview a {
    transition: color 0.25s ease;
}

.pxl-ptit__breadcrumb a svg,
.pxl-ptit__breadcrumb a svg path,
.pxl-blog-overview a svg path {
    transition: stroke 0.25s ease, transform 0.3s ease;
}

.pxl-ptit__breadcrumb a:hover svg {
    transform: translateX(-5px);
}

/* Text colour */
.pxl-ptit__breadcrumb a:hover,
.pxl-ptit__breadcrumb a:focus-visible,
.pxl-blog-overview a:hover,
.pxl-blog-overview a:focus-visible,
.pxl-link__default .pxl-link__wrap .pxl-link__item a:hover,
.pxl-link__default .pxl-link__wrap .pxl-link__item a:focus-visible,
.pxl-post__item-gts:hover,
.pxl-post__item-gts:focus-visible,
.pxl-navigation__col a:hover,
.pxl-navigation__col a:focus-visible,
.pxl-posts__style-1 .pxl-posts__item-cnt .pxl-posts__item-tit a:hover,
.pxl-posts__style-1 .pxl-posts__item-cnt .pxl-posts__item-tit a:focus-visible {
    color: var(--link-color-hover, #FFC20F);
}

/* Arrow icons next to those links */
.pxl-ptit__breadcrumb a:hover svg path,
.pxl-ptit__breadcrumb a:focus-visible svg path,
.pxl-blog-overview a:hover svg path,
.pxl-blog-overview a:focus-visible svg path,
.pxl-post__item-gts:hover path,
.pxl-post__item-gts:focus-visible path,
.pxl-navigation__col a:hover svg path,
.pxl-navigation__col a:focus-visible svg path {
    stroke: var(--link-color-hover, #FFC20F);
}

/* ==========================================================================
   Product pages and shared components: replace the theme's purple accent
   (--secondary-color) in hover / selected states with the link colour.
   ========================================================================== */

/* Product gallery: selected thumbnail frame */
.single-product.woocommerce .pxl-content-area div.product .woocommerce-product-gallery .flex-control-nav li.flex-active:before,
.single-product.woocommerce .pxl-content-area div.product .woocommerce-product-gallery .flex-control-nav li.active:before {
    border-color: var(--link-color-hover, #FFC20F);
}

/* Variation swatch: selected ring */
.single-product.woocommerce .pxl-content-area div.product .summary.entry-summary form.cart .variations tr td .color-variable-items-wrapper li.selected {
    box-shadow: 0 0 0 1px var(--link-color-hover, #FFC20F);
}

/* Attribute / grouped product links: normal link colour, yellow on hover */
.single-product.woocommerce .pxl-content-area div.product .woocommerce-product-attributes td a,
.single-product.woocommerce .pxl-content-area div.product .shop_attributes td a,
.single-product.woocommerce .pxl-content-area div.product .woocommerce-grouped-product-list td a,
.single-product.woocommerce .pxl-content-area div.product .group_table td a {
    color: var(--link-color, #181d27);
}

.single-product.woocommerce .pxl-content-area div.product .woocommerce-product-attributes td a:hover,
.single-product.woocommerce .pxl-content-area div.product .shop_attributes td a:hover,
.single-product.woocommerce .pxl-content-area div.product .woocommerce-grouped-product-list td a:hover,
.single-product.woocommerce .pxl-content-area div.product .group_table td a:hover,
.single-product.woocommerce .pxl-content-area div.product .woocommerce-grouped-product-list .woocommerce-grouped-product-list-item__label a:hover,
.single-product.woocommerce .pxl-content-area div.product .group_table .woocommerce-grouped-product-list-item__label a:hover,
.single-product.woocommerce .pxl-content-area div.product .summary.entry-summary .breadcrumb .woocommerce-breadcrumb a:hover {
    color: var(--link-color-hover, #FFC20F);
}

.single-product.woocommerce .pxl-content-area div.product .woocommerce-product-attributes td .price,
.single-product.woocommerce .pxl-content-area div.product .shop_attributes td .price,
.single-product.woocommerce .pxl-content-area div.product .woocommerce-grouped-product-list td .price,
.single-product.woocommerce .pxl-content-area div.product .group_table td .price {
    color: var(--primary-color, #181d27);
}

/* Wishlist popup "add" button */
body .woosw-popup-content-mid .woosw-item--add a:hover {
    background-color: var(--link-color-hover, #FFC20F) !important;
    color: #181d27 !important;
}

/* Comments: cancel-reply button */
.pxl-comments .pxl-comments__reply-cancel:hover {
    border-color: var(--link-color-hover, #FFC20F);
}

.pxl-comments .pxl-comments__reply-cancel:hover svg {
    fill: var(--link-color-hover, #FFC20F);
}

/* Social icon buttons: yellow fill, dark icon for contrast */
.pxl-icons__style-1 .pxl-icons__item:hover {
    border-color: var(--link-color-hover, #FFC20F);
    background-color: var(--link-color-hover, #FFC20F);
}

.pxl-icons__style-1 .pxl-icons__item:hover i {
    color: #181d27;
}

.pxl-icons__style-1 .pxl-icons__item:hover svg,
.pxl-icons__style-1 .pxl-icons__item:hover path {
    fill: #181d27;
}

/* Blog / listing hovers */
.pxl-posts__pagination .page-numbers:hover {
    border-color: var(--link-color-hover, #FFC20F);
}

.pxl-posts__pagination .page-numbers:hover svg path,
.pxl-nav__style-1 .pxl-nav__item:hover svg path,
.pxl-grid__inner + .pxl-grid__loadmore .pxl-button__more:hover svg path,
.pxl-navigation__next a:hover svg path {
    stroke: var(--link-color-hover, #FFC20F);
}

.pxl-nav__style-1 .pxl-nav__item:hover {
    border-color: var(--link-color-hover, #FFC20F);
}

.pxl-posts__recent .pxl-posts__item:hover .pxl-posts__item-title,
.pxl-posts__style-1 .pxl-posts__item-cnt .pxl-pmeta__cat a:hover,
.pxl-navigation__next a:hover,
.pxl-grid__inner + .pxl-grid__loadmore .pxl-button__more:hover,
.widget_calendar .calendar_wrap table tr td a:hover {
    color: var(--link-color-hover, #FFC20F);
}

.pxl-user-account a:hover {
    color: var(--link-color-hover, #FFC20F) !important;
}

/* Terms & Conditions page: anchor offset + table of contents list */
.elementor-element[id^="s-"]{scroll-margin-top:120px}
.sitto-tc-toc{list-style:none;margin:8px 0 0;padding:0 0 0 6px;border-left:2px solid #F5F6F8;display:flex;flex-direction:column;gap:2px}
.sitto-tc-toc a{display:block;padding:7px 12px;border-radius:10px;line-height:1.4}
.sitto-tc-toc a:hover{background:#FFF4D4}
html{scroll-behavior:smooth}
.sitto-tc-sidebar{position:sticky;top:120px;align-self:flex-start}
@media (max-width:1024px){.sitto-tc-sidebar{position:static}}
.sitto-tc-toc a{transition:background .2s,color .2s,font-weight .2s}
.sitto-tc-toc a.is-active{background:#FFF4D4;color:#181D27;font-weight:600}

/* Header cart (theme widget pxl_icon_cart_popup ships without frontend CSS) */
.sitto-header__actions .elementor-widget-pxl_icon_cart_popup{width:auto;flex:0 0 auto}
.pxl-icon-cart-popup{display:inline-flex;align-items:center;gap:6px;cursor:pointer;line-height:1}
.pxl-icon-cart-popup__icon{display:inline-flex;align-items:center;font-size:22px}
.pxl-icon-cart-popup__content{display:inline-flex;align-items:center;gap:6px}
.pxl-icon-cart-popup__number-separator{display:none}
.pxl-icon-cart-popup__number-text{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:#FFC20F;color:#181D27;font-size:12px;font-weight:600}

/* Sticky section title with stacking cards beneath it (class "sitto-sticky-title" on the title container,
   "sitto-stack-cards" on the cards wrapper). On tablet/mobile the title scrolls normally and the cards stack near the top. */
/* No z-index on the title: the cards must slide over it as they leave the stack. */
@media (max-width: 1024px) {
    .sitto-sticky-title.pxl-sticky-inner-container { position: static !important; }
    .sitto-stack-cards .pxl-sticky-inner-container { top: 90px !important; }
}

/* The grey backdrop covers the sticky title as well as the stacking cards: it sits on the wrapper around both. */
.e-con:has(> .sitto-stack-cards) { background-color: var(--e-global-color-sittowarm, #F8F7F4); }
.sitto-stack-cards.custom-bg-our-story { background: transparent !important; }

/* Pinned title shows the title only: the sub-title badge sits above the viewport (negative sticky top) and the
   description fades out. The space it occupies is kept, so the layout does not jump. */
.sitto-sticky-title .elementor-widget-pxl_text_editor { transition: opacity .25s ease; }
.sitto-sticky-title.is-stuck .elementor-widget-pxl_text_editor { opacity: 0; pointer-events: none; }
@media (max-width: 1024px) {
    .sitto-sticky-title.is-stuck .elementor-widget-pxl_text_editor { opacity: 1; pointer-events: auto; }
}

/* Capability cards: header layout 2 (centered: badge, heading, description).
   Child rules use :where() so these are only defaults: the widget's spacing controls always win. */
.sitto-caps__head--center {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    row-gap: 0;
    margin-bottom: 48px;
}
:where(.sitto-caps__head--center) .sitto-caps__badge { margin: 0 0 18px; }
:where(.sitto-caps__head--center) .sitto-caps__title { max-width: 760px; margin: 0 auto; }
:where(.sitto-caps__head--center) .sitto-caps__desc { max-width: 720px; margin: 18px auto 0; }

/* Capability cards: library / uploaded icons follow the same size as the preset SVGs. */
.sitto-caps__icon i { font-size: 22px; line-height: 1; }
.sitto-caps__icon .e-font-icon-svg { fill: currentColor; }

/* Highlight as coloured text instead of the yellow box: add the CSS class "sitto-hl-text" to a heading widget.
   The colour follows the widget's Highlight Text > Color setting (falls back to Sitto yellow). */
.sitto-hl-text .pxl-heading .pxl-heading__highlight {
    background: none !important;
    padding: 0 !important;
    border-radius: 0 !important;
    display: inline !important;
    color: var(--sitto-hl-color, #FFC20F) !important;
}

/* Dark callout card (Page 18828 "Test Before Going Live"): shrink-wrap the badge pill inside the centered column. */
.sitto-dark-callout .sitto-dark-callout__badge {
    width: fit-content !important;
    max-width: fit-content !important;
    align-self: center !important;
    flex: 0 0 auto !important;
}

/* Sitto capability cards: vertical layout (heading left, stacked horizontal cards right) */
.sitto-caps--vertical {
    display: grid;
    grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
    column-gap: 72px;
    align-items: start;
}

.sitto-caps--vertical .sitto-caps__head {
    display: block;
    margin-bottom: 0;
}

.sitto-caps--vertical .sitto-caps__title {
    max-width: 520px;
    margin-bottom: 20px;
}

.sitto-caps--vertical .sitto-caps__desc {
    max-width: 520px;
}

.sitto-caps--vertical .sitto-caps__grid {
    grid-template-columns: 1fr;
}

.sitto-caps--vertical .sitto-caps__card {
    display: grid;
    grid-template-columns: 56px minmax(0, 1fr);
    column-gap: 24px;
    align-content: start;
    padding: 32px 36px;
    border-radius: 28px;
}

.sitto-caps--vertical .sitto-caps__icon {
    grid-column: 1;
    grid-row: 1 / span 3;
    width: 56px;
    height: 56px;
}

.sitto-caps--vertical .sitto-caps__card-title,
.sitto-caps--vertical .sitto-caps__card-desc,
.sitto-caps--vertical .sitto-caps__tags {
    grid-column: 2;
}

.sitto-caps--vertical .sitto-caps__card-title {
    margin: 4px 0 8px;
}

.sitto-caps--vertical .sitto-caps__card-desc {
    white-space: pre-line;
}

@media (max-width: 1024px) {
    .sitto-caps--vertical {
        grid-template-columns: 1fr;
        row-gap: 36px;
    }
}

@media (max-width: 767px) {
    .sitto-caps--vertical .sitto-caps__card {
        grid-template-columns: 44px minmax(0, 1fr);
        column-gap: 16px;
        padding: 22px 20px;
    }

    .sitto-caps--vertical .sitto-caps__icon {
        width: 44px;
        height: 44px;
    }
}

/* Capability cards: heading on the right, grey panel, solid icons, featured card in vertical layout */
.sitto-caps--head-right .sitto-caps__head {
    grid-column: 2;
    grid-row: 1;
}

.sitto-caps--head-right .sitto-caps__grid {
    grid-column: 1;
    grid-row: 1;
}

.sitto-caps--panel .sitto-caps__grid {
    gap: 16px;
    padding: 32px;
    border: 1px solid #E9EAEB;
    border-radius: 40px;
    background: #F5F6F8;
}

.sitto-caps--vertical .sitto-caps__icon--solid {
    background: #FFC20F;
    color: #181D27;
}

.sitto-caps--vertical .sitto-caps__icon--check {
    border-radius: 50%;
}

.sitto-caps--vertical .sitto-caps__icon--solid svg {
    width: 22px;
    height: 22px;
}

.sitto-caps--vertical .sitto-caps__card:hover .sitto-caps__icon--solid,
.sitto-caps--vertical .sitto-caps__card:focus-visible .sitto-caps__icon--solid {
    background: #FFC20F;
}

.sitto-caps--panel .sitto-caps__card {
    padding: 26px 30px;
    border-radius: 24px;
}

.sitto-caps--vertical .sitto-caps__card.is-featured {
    background: #FFF4D4;
    border-color: #FFC20F;
    box-shadow: none;
}

@media (max-width: 1024px) {
    .sitto-caps--head-right .sitto-caps__head,
    .sitto-caps--head-right .sitto-caps__grid {
        grid-column: 1;
        grid-row: auto;
    }
}

@media (max-width: 767px) {
    .sitto-caps--panel .sitto-caps__grid {
        padding: 16px;
        border-radius: 28px;
    }
}

.sitto-caps--head-right.sitto-caps--vertical {
    grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.9fr);
}

.sitto-caps--vertical .sitto-caps__card .sitto-caps__card-title {
    font-size: 18px;
}

@media (max-width: 1024px) {
    .sitto-caps--head-right.sitto-caps--vertical {
        grid-template-columns: 1fr;
    }
}

.sitto-dark-callout.sitto-dark-callout--left .sitto-dark-callout__badge {
    align-self: flex-start !important;
}

/* Capability cards (vertical layout): heading area stays in view while the cards scroll. */
@media (min-width: 1025px) {
    .sitto-caps--vertical .sitto-caps__head {
        position: sticky;
        top: 120px;
        align-self: start;
    }
}

/* Capability cards (horizontal layout): center the cards when a row is not full (1 or 2 cards). */
.sitto-caps:not(.sitto-caps--vertical) .sitto-caps__grid {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

.sitto-caps:not(.sitto-caps--vertical) .sitto-caps__card {
    flex: 0 0 calc((100% - 2 * var(--sitto-caps-gap, 18px)) / 3);
    max-width: calc((100% - 2 * var(--sitto-caps-gap, 18px)) / 3);
    min-height: auto;
}

@media (max-width: 1024px) {
    .sitto-caps:not(.sitto-caps--vertical) .sitto-caps__card {
        flex-basis: calc((100% - var(--sitto-caps-gap, 18px)) / 2);
        max-width: calc((100% - var(--sitto-caps-gap, 18px)) / 2);
    }
}

@media (max-width: 767px) {
    .sitto-caps:not(.sitto-caps--vertical) .sitto-caps__card {
        flex-basis: 100%;
        max-width: 100%;
    }
}

/* Scroll-driven text reveal (add class "sitto-text-reveal" to a Text Editor widget; JS in assets/js/sitto-text-reveal.js) */
.sitto-text-reveal.is-split .sitto-text-reveal__word {
    display: inline-block;
    white-space: nowrap;
}

.sitto-text-reveal.is-split .sitto-text-reveal__char {
    opacity: 0.5;
    will-change: opacity;
}

/* Capability cards: plain style (no border/background, no hover lift) */
.sitto-caps--plain .sitto-caps__grid {
    --sitto-caps-gap: 40px;
    gap: 40px;
}

.sitto-caps--plain .sitto-caps__card {
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

.sitto-caps--plain .sitto-caps__glow {
    display: none;
}

.sitto-caps.is-ready.sitto-caps--plain .sitto-caps__card.is-in:hover,
.sitto-caps.is-ready.sitto-caps--plain .sitto-caps__card.is-in:focus-visible {
    transform: none;
    border-color: transparent;
    box-shadow: none;
}

.sitto-caps--plain .sitto-caps__card:hover .sitto-caps__icon,
.sitto-caps--plain .sitto-caps__card:focus-visible .sitto-caps__icon {
    transform: none;
}

.sitto-caps--plain .sitto-caps__card-desc {
    white-space: pre-line;
}

/* Text reveal paragraph is centered */
.sitto-text-reveal {
    margin-left: auto;
    margin-right: auto;
    text-align: center;
}

/* Restaurant service tabs: keep SVG icons at a uniform size */
.sitto-service-tabs .pxl-tabs__item-icon img,
.sitto-service-tabs .pxl-tabs__item-icon svg {
    width: 24px;
    height: 24px;
    object-fit: contain;
}

.sitto-tab-icon img,
.sitto-tab-icon svg {
    width: 28px;
    height: 28px;
    object-fit: contain;
}

/* Icon box carousel (layout 2): product cover image, eyebrow, badge, arrows top right, bullets bottom center */
.pxl-icon-box-carousel--layout-2 .pxl-icon-box__item-cover {
    position: relative;
    z-index: 2;
    width: 100%;
    aspect-ratio: 4 / 3;
    overflow: hidden;
    border-radius: 16px;
    background: rgba(255, 255, 255, 0.06);
}

.pxl-icon-box-carousel--layout-2 .pxl-icon-box__item-cover img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.pxl-icon-box-carousel--layout-2 .pxl-icon-box__item-eyebrow {
    margin-top: 20px;
    padding: 0 8px;
    color: #FFC20F;
    font-family: Inter, sans-serif;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.pxl-icon-box-carousel--layout-2 .pxl-icon-box__item-eyebrow + .pxl-icon-box__item-title {
    margin-top: 8px;
}

.pxl-icon-box-carousel--layout-2 .pxl-icon-box__item-badge {
    position: relative;
    z-index: 2;
    width: 100%;
    margin-top: 24px;
    padding: 0 8px 8px;
}

.pxl-icon-box-carousel--layout-2 .pxl-icon-box__item-badge span {
    display: inline-block;
    padding: 6px 14px;
    border-radius: 999px;
    background: #FFF4D4;
    color: #181D27;
    font-family: Inter, sans-serif;
    font-size: 13px;
    font-weight: 600;
    line-height: 1.2;
}

.pxl-icon-box-carousel--arrows-top-right {
    position: relative;
    padding-top: 64px;
}

.pxl-icon-box-carousel--arrows-top-right .pxl-swiper__nav {
    position: absolute;
    top: 0;
    right: 0;
    float: none;
    margin: 0;
}

.pxl-icon-box-carousel--bullets-center .pxl-swiper-dots {
    position: static;
    display: flex;
    justify-content: center;
    width: 100%;
    margin-top: 32px;
    text-align: center;
}

/* Vertical tabs, light mode (POS Solutions by Business Type): tab list on the left, content card on the right */
.sitto-vertical-tabs .pxl-tabs--layout-4.pxl-tabs--style-2 .pxl-tabs__inner {
    gap: 48px;
}

.sitto-vertical-tabs .pxl-tabs--layout-4.pxl-tabs--style-2 .pxl-tabs__list {
    gap: 22px;
}

@media screen and (min-width: 768px) {
    .sitto-vertical-tabs .pxl-tabs--layout-4.pxl-tabs--style-2 .pxl-tabs__list {
        top: 120px;
        max-width: 28%;
        flex: 0 0 28%;
    }

    .sitto-vertical-tabs .pxl-tabs--layout-4.pxl-tabs--style-2 .pxl-tabs__content {
        max-width: 68%;
        flex: 1 1 68%;
    }
}

.sitto-vertical-tabs .pxl-tabs--layout-4.pxl-tabs--style-2 .pxl-tabs__list-item {
    position: relative;
    padding-left: 22px;
    background: none;
    -webkit-background-clip: border-box;
    background-clip: border-box;
    -webkit-text-fill-color: currentColor;
    color: #717680;
    font-family: Inter, sans-serif;
    font-size: 30px;
    font-weight: 600;
    letter-spacing: -1px;
    cursor: pointer;
}

.sitto-vertical-tabs .pxl-tabs--layout-4.pxl-tabs--style-2 .pxl-tabs__list-item::before {
    content: '';
    position: absolute;
    left: 0;
    top: 50%;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: #FFC20F;
    transform: translateY(-50%) scale(0);
    transition: transform 0.3s ease;
}

.sitto-vertical-tabs .pxl-tabs--layout-4.pxl-tabs--style-2 .pxl-tabs__list-item.active,
.sitto-vertical-tabs .pxl-tabs--layout-4.pxl-tabs--style-2 .pxl-tabs__list-item:hover {
    background: none;
    -webkit-text-fill-color: currentColor;
    color: #181D27;
}

.sitto-vertical-tabs .pxl-tabs--layout-4.pxl-tabs--style-2 .pxl-tabs__list-item.active::before {
    transform: translateY(-50%) scale(1);
}

@media screen and (max-width: 1200px) {
    .sitto-vertical-tabs .pxl-tabs--layout-4.pxl-tabs--style-2 .pxl-tabs__list-item {
        font-size: 22px;
    }
}

/* Capability cards: numbered step style (01 / 02 / 03) */
.sitto-caps--numbered .sitto-caps__card {
    padding: 36px 36px 32px;
    border-radius: 28px;
}

.sitto-caps--numbered .sitto-caps__num {
    position: relative;
    z-index: 1;
    margin-bottom: 24px;
    padding-bottom: 20px;
    border-bottom: 1px solid var(--sitto-cap-line);
    color: #181D27;
    font-family: Inter, sans-serif;
    font-size: 52px;
    font-weight: 400;
    line-height: 1;
    letter-spacing: -0.03em;
}

.sitto-caps--numbered .sitto-caps__card-title {
    margin-top: 0;
}

.sitto-caps--numbered .sitto-caps__card-desc {
    white-space: pre-line;
}

/* Capability cards without their own header (the section title is a Sitto heading widget above) */
.sitto-caps--no-head.sitto-caps--vertical { display: block; }
.sitto-caps--no-head .sitto-caps__grid { margin-top: 0; }

/* Section heading beside capability cards (two columns, stacks on mobile) */
.e-con.sitto-caps-row { --flex-direction: row; flex-direction: row; align-items: flex-start; gap: 72px; }
.e-con.sitto-caps-row > .sitto-caps-row__head { flex: 0 0 38%; width: 38%; max-width: 38%; }
.e-con.sitto-caps-row > .elementor-widget { flex: 1 1 0; min-width: 0; width: auto; }
@media (max-width: 1024px) {
    .e-con.sitto-caps-row { --flex-direction: column; flex-direction: column; gap: 32px; }
    .e-con.sitto-caps-row > .sitto-caps-row__head,
    .e-con.sitto-caps-row > .elementor-widget { flex: 1 1 auto; width: 100%; max-width: 100%; }
    .e-con.sitto-caps-row > .sitto-caps-row__head { order: -1; }
}

/* Footer desktop: brand column 30%, the link columns take the rest (minus the gap) */
@media (min-width: 1025px) {
    .sitto-footer__main.e-con > .sitto-footer__brand.e-con {
        flex: 0 0 30%;
        max-width: 30%;
    }
    .sitto-footer__main.e-con > .sitto-footer__links.e-con {
        flex: 1 1 0;
        width: auto !important;
        min-width: 0;
    }
}

/* Footer logo: actually use the widget's logo height (the SVG's width/height attributes cap it otherwise) */
.sitto-footer__brand .elementor-widget-pxl_logo img {
    height: 52px;
    width: auto;
    max-width: none;
}
@media (max-width: 767px) {
    .sitto-footer__brand .elementor-widget-pxl_logo img { height: 44px; }
}

/* Footer accordion with manual columns: the open state spacing sits on the column wrapper */
@media (max-width: 767px) {
    .sitto-footer__links .sitto-link--manual-cols.is-open .sitto-link__cols { margin-top: 12px; }
    .sitto-footer__links .sitto-link--manual-cols .sitto-link__cols > .sitto-link__list { margin-top: 0; }
}
