        @font-face {
            font-family: "SF Pro Text";
            src: url("/fonts/SFProText-Regular.woff2") format("woff2");
            font-weight: 400;
            font-style: normal;
            font-display: swap;
        }
        @font-face {
            font-family: "SF Pro Text";
            src: url("/fonts/SFProText-Medium.woff2") format("woff2");
            font-weight: 510;
            font-style: normal;
            font-display: swap;
        }
        @font-face {
            font-family: "SF Pro Text";
            src: url("/fonts/SFProText-Semibold.woff2") format("woff2");
            font-weight: 590;
            font-style: normal;
            font-display: swap;
        }
        @font-face {
            font-family: "SF Pro Text";
            src: url("/fonts/SFProText-Bold.woff2") format("woff2");
            font-weight: 700;
            font-style: normal;
            font-display: swap;
        }
        :root {
            --orange: #FBA004;
            --black: #040404;
            --gray: #363636;
            --white: #FFFFFF;
            --radius-xl: 24px;
            --radius-lg: 20px;
            --radius-md: 16px;
        }
        * { box-sizing: border-box; }
        body {
            margin: 0;
            color: var(--black);
            background: #fff;
            font-family: "SF Pro Text", "SF Pro Display", -apple-system, BlinkMacSystemFont, "Segoe UI", Inter, sans-serif;
        }
        a { color: inherit; text-decoration: none; }
        .mp-wrap { max-width: 1920px; margin: 0 auto; }
        .mp-inner { max-width: 1760px; margin: 0 auto; }
        .fw-510 { font-weight: 510; }
        .fw-590 { font-weight: 590; }
        .muted-50 { opacity: .5; }
        .btn-reset { border: 0; background: transparent; }

        .mp-header {
            border-bottom: 2px solid rgba(54, 54, 54, .1);
            border-radius: 24px;
            padding: 20px 80px;
        }
        .mp-header-row {
            min-height: 100px;
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 24px;
        }
        .logo {
            display: inline-flex;
            align-items: center;
        }
        .logo img {
            width: 194px;
            height: 47px;
            object-fit: contain;
        }
        .menu-links {
            display: flex;
            gap: 40px;
            align-items: center;
            font-size: 20px;
            line-height: 24px;
            font-weight: 700;
            color: var(--black);
        }
        .menu-links a,
        .menu-links .menu-modal-trigger {
            position: relative;
            color: inherit;
            font: inherit;
            padding: 0;
            transition: color .2s ease;
        }
        .menu-links a::after,
        .menu-links .menu-modal-trigger::after {
            content: "";
            position: absolute;
            left: 0;
            right: 100%;
            bottom: -4px;
            height: 2px;
            background: var(--orange);
            transition: right .25s ease;
        }
        .menu-links a:hover,
        .menu-links .menu-modal-trigger:hover { color: var(--orange); }
        .menu-links a:hover::after,
        .menu-links .menu-modal-trigger:hover::after { right: 0; }
        .phone-link {
            display: flex;
            align-items: center;
            gap: 16px;
            font-size: 20px;
            line-height: 24px;
            font-weight: 700;
            white-space: nowrap;
        }
        .phone-icon {
            width: 24px;
            height: 24px;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            color: var(--black);
            flex: 0 0 24px;
        }
        .phone-icon svg { width: 100%; height: 100%; display: block; }
        .hero { padding: 40px 80px; }
        .hero-grid {
            display: grid;
            grid-template-columns: minmax(0, 1fr) 366px;
            gap: 32px;
            min-height: 696px;
        }
        .hero-main {
            background: var(--orange);
            border-radius: var(--radius-xl);
            padding: 40px 80px;
            display: flex;
            flex-direction: column;
            justify-content: center;
            gap: 96px;
        }
        .hero-title {
            margin: 0;
            font-size: 90px;
            line-height: 1;
            color: #fff;
            font-weight: 700;
            max-width: 980px;
            letter-spacing: -1px;
        }
        .hero-subtitle {
            margin: 0;
            color: #fff;
            font-size: 28px;
            line-height: 33px;
            font-weight: 510;
            max-width: 980px;
        }
        .hero-cta {
            width: 300px;
            height: 56px;
            border-radius: 54px;
            background: #fff;
            display: flex;
            align-items: center;
            justify-content: space-between;
            padding: 4px 4px 4px 40px;
            font-size: 24px;
            line-height: 28px;
            letter-spacing: -.32px;
            color: #363636;
            font-weight: 590;
            font-family: inherit;
            text-align: left;
            cursor: pointer;
            position: relative;
            overflow: hidden;
            transition:
                background-color .25s ease,
                color .25s ease,
                box-shadow .3s cubic-bezier(.2,.7,.2,1),
                transform .3s cubic-bezier(.2,.7,.2,1);
            will-change: transform;
        }
        .hero-cta > span { position: relative; z-index: 1; }
        .hero-cta:hover {
            background: #363636;
            color: #fff;
            box-shadow: 0 14px 34px rgba(0, 0, 0, .25);
        }
        .hero-cta:active {
            background: #2F2F2F;
            color: #fff;
            box-shadow: 0 6px 14px rgba(0, 0, 0, .3);
        }
        .hero-cta:focus-visible { outline: 3px solid rgba(255, 255, 255, .65); outline-offset: 4px; }
        .hero-cta-icon {
            width: 48px;
            height: 48px;
            border-radius: 50%;
            background: var(--orange);
            color: #fff;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            font-size: 24px;
            transition: transform .35s cubic-bezier(.2,.7,.2,1);
        }
        .hero-side {
            border-radius: var(--radius-xl);
            background: url("/images/hero-desktop.webp") center/cover no-repeat;
            min-height: 696px;
            position: relative;
            overflow: hidden;
        }
        .hero-side::after {
            content: "";
            position: absolute;
            inset: 0;
            background: linear-gradient(180deg, rgba(255,255,255,.1), rgba(0,0,0,.14));
        }

        .section { padding: 32px 80px; }
        .title-xl { margin: 0 0 12px; font-size: 64px; line-height: 76px; font-weight: 700; }
        .desc-xl { margin: 0; font-size: 28px; line-height: 28px; color: #363636; opacity: .5; font-weight: 510; }
        .service-intro {
            border-left: 3px solid var(--orange);
            padding: 0 24px;
            margin-top: 32px;
            display: grid;
            grid-template-columns: 465px minmax(0,1fr);
            gap: 40px;
        }
        .service-intro p { margin: 0; }
        .left-stack { display: flex; flex-direction: column; justify-content: space-between; gap: 40px; }
        .left-top { font-size: 20px; line-height: 24px; color: #363636; font-weight: 700; }
        .left-orange { color: var(--orange); text-transform: uppercase; letter-spacing: -.32px; font-size: 20px; line-height: 24px; font-weight: 700; }
        .left-strong { color: #363636; font-size: 20px; line-height: 24px; font-weight: 700; }
        .right-stack { display: flex; flex-direction: column; gap: 32px; }
        .sub-title { font-size: 24px; line-height: 28px; font-weight: 700; margin: 0 0 16px; }
        .bullet-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 10px; }
        .bullet-list li {
            display: flex;
            align-items: center;
            gap: 10px;
            font-size: 20px;
            line-height: 24px;
            color: #363636;
            font-weight: 510;
        }
        .dot {
            width: 24px; height: 24px; border: 2px solid var(--orange); border-radius: 50%;
            display: inline-flex; align-items: center; justify-content: center; flex: 0 0 24px;
        }
        .dot::after { content: "›"; color: var(--orange); font-size: 16px; line-height: 1; }
        .right-note { font-size: 20px; line-height: 24px; font-weight: 700; color: #363636; margin: 0; }

        .cards-row {
            display: grid;
            grid-template-columns: minmax(280px, 480px) minmax(0, 1fr);
            gap: 32px;
            align-items: start;
        }
        #services .cards-row {
            transition: grid-template-columns .45s cubic-bezier(.2,.7,.2,1);
        }
        #services .cards-row.is-expanded,
        #services .cards-row:has(.services-cards.has-expanded) {
            grid-template-columns: 1fr;
        }
        #services .cards-row.is-expanded > div:first-child,
        #services .cards-row:has(.services-cards.has-expanded) > div:first-child {
            display: none;
        }
        .services-cards {
            display: flex;
            gap: 32px;
            align-items: stretch;
        }
        .shop-card {
            flex: 336 1 0;
            min-width: 0;
            border-radius: 22px;
            padding: 8px 8px 16px;
            min-height: 611px;
            border: 2px solid transparent;
            background-color: #fff;
            transition:
                background-color .3s ease,
                border-color .3s ease,
                box-shadow .3s ease,
                transform .3s ease;
        }
        .shop-card.is-active,
        .services-cards:not(.has-expanded) .shop-card:hover {
            background-color: #FBA004;
            border-color: #FBA004;
            padding: 8px 8px 16px;
            box-shadow: 0 12px 32px rgba(251, 160, 4, .25);
        }
        .shop-card.is-active .shop-title,
        .shop-card.is-active .shop-sub,
        .shop-card.is-active .shop-card-more,
        .services-cards:not(.has-expanded) .shop-card:hover .shop-title,
        .services-cards:not(.has-expanded) .shop-card:hover .shop-sub,
        .services-cards:not(.has-expanded) .shop-card:hover .shop-card-more { color: #fff; }
        .shop-card.is-active .shop-sub,
        .services-cards:not(.has-expanded) .shop-card:hover .shop-sub { opacity: .85; }
        .shop-card.is-active .shop-card-more-icon,
        .services-cards:not(.has-expanded) .shop-card:hover .shop-card-more-icon { background: #fff; color: var(--orange); }
        .services-cards:not(.has-expanded) .shop-card:hover { transform: translateY(-4px); }
        .shop-card-toggle {
            display: flex;
            flex-direction: column;
            width: 100%;
            height: 100%;
            padding: 0;
            color: inherit;
            text-align: left;
            font: inherit;
            cursor: pointer;
        }
        .shop-card-meta { padding: 0 4px; display: flex; flex-direction: column; }
        .shop-image {
            border-radius: 16px;
            height: 470px;
            margin-bottom: 16px;
            overflow: hidden;
            position: relative;
            transition: height .45s cubic-bezier(.2,.7,.2,1);
        }
        .shop-image img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            display: block;
        }
        .shop-image .rot-slide {
            position: absolute;
            inset: 0;
            will-change: transform;
            transform: translate3d(0, 0, 0);
        }
        .shop-image.is-sliding .rot-slide {
            transition: transform .6s cubic-bezier(.2,.7,.2,1);
        }
        .shop-image.is-sliding .rot-slide.rot-out { transform: translate3d(-100%, 0, 0); }
        .shop-image.is-sliding .rot-slide.rot-in  { transform: translate3d(0, 0, 0); }
        .shop-image .rot-slide.rot-in-initial    { transform: translate3d(100%, 0, 0); }
        .services-cards:not(.has-expanded) .shop-card:hover .shop-image img {
            transform: scale(1.04);
            transition: transform .6s cubic-bezier(.2,.7,.2,1);
        }
        .shop-title { font-size: 28px; line-height: 33px; font-weight: 590; margin: 0 0 8px; }
        .shop-sub { font-size: 16px; line-height: 19px; color: #363636; opacity: .5; margin: 0; }
        .shop-card-more {
            display: none;
            margin-top: 10px;
            align-items: center;
            gap: 8px;
            font-size: 14px;
            line-height: 17px;
            font-weight: 700;
            color: var(--orange);
            transition: gap .25s ease;
        }
        .services-cards:not(.has-expanded) .shop-card:hover .shop-card-more { gap: 12px; }
        .shop-card-more-icon {
            width: 22px;
            height: 22px;
            border-radius: 50%;
            background: var(--orange);
            color: #fff;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            font-size: 12px;
        }

        .service-panel {
            flex: 656 1 0;
            min-width: 0;
            padding: 4px 0;
            display: flex;
            flex-direction: column;
            gap: 0;
            animation: panelSlide .45s cubic-bezier(.2,.7,.2,1) both;
        }
        .service-panel[hidden] { display: none; }
        @keyframes panelSlide {
            from { opacity: 0; transform: translateX(-16px); }
            to   { opacity: 1; transform: translateX(0); }
        }
        .sub-service {
            border-bottom: 1px solid rgba(54, 54, 54, .14);
        }
        .sub-service:first-child { border-top: 1px solid rgba(54, 54, 54, .14); }
        .sub-head {
            display: flex;
            flex-direction: column;
            align-items: flex-start;
            gap: 6px;
            width: 100%;
            padding: 18px 16px;
            text-align: left;
            cursor: pointer;
            transition: background-color .2s ease, padding-left .25s ease;
        }
        .sub-head:hover { background: rgba(251, 160, 4, .06); padding-left: 20px; }
        .sub-head:focus-visible { outline: 2px solid var(--orange); outline-offset: -2px; }
        .sub-head[aria-expanded="true"] { background: rgba(251, 160, 4, .08); }
        .sub-head-title {
            font-size: 20px;
            line-height: 24px;
            font-weight: 700;
            color: var(--black);
        }
        .sub-head-desc {
            font-size: 15px;
            line-height: 19px;
            color: #363636;
            opacity: .6;
            font-weight: 510;
        }
        .sub-body {
            padding: 4px 16px 20px;
            display: flex;
            flex-direction: column;
            gap: 14px;
            animation: subBodyIn .3s ease both;
        }
        .sub-body[hidden] { display: none; }
        @keyframes subBodyIn {
            from { opacity: 0; transform: translateY(-6px); }
            to   { opacity: 1; transform: translateY(0); }
        }
        .sub-list {
            list-style: none;
            margin: 0;
            padding: 0;
            display: flex;
            flex-direction: column;
            gap: 8px;
        }
        .sub-list li {
            display: flex;
            align-items: flex-start;
            gap: 10px;
            font-size: 15px;
            line-height: 20px;
            color: #363636;
            font-weight: 510;
        }
        .sub-list li .dot { margin-top: 1px; }
        .sub-list--plain li { font-weight: 700; color: var(--black); }
        .sub-text {
            margin: 0;
            font-size: 15px;
            line-height: 20px;
            color: #363636;
            font-weight: 510;
        }
        .sub-note {
            margin: 0;
            padding: 12px 14px;
            border-left: 3px solid var(--orange);
            background: rgba(251, 160, 4, .08);
            border-radius: 8px;
            font-size: 13px;
            line-height: 18px;
            color: #363636;
        }
        .sub-note strong { color: var(--orange); }
        .sub-cta {
            align-self: flex-start;
            display: inline-flex;
            align-items: center;
            gap: 10px;
            padding: 10px 18px;
            border: 0;
            border-radius: 40px;
            background: var(--orange);
            color: #fff;
            font: inherit;
            font-size: 14px;
            line-height: 17px;
            font-weight: 700;
            cursor: pointer;
            transition:
                transform .25s ease,
                box-shadow .25s ease,
                background-color .25s ease,
                gap .25s ease;
        }
        .sub-cta:hover {
            transform: translateY(-2px);
            background: #ff8c00;
            box-shadow: 0 10px 22px rgba(251, 160, 4, .45);
            gap: 14px;
        }
        .sub-cta:active { transform: translateY(0); box-shadow: 0 4px 10px rgba(251, 160, 4, .35); }
        .sub-cta:focus-visible { outline: 2px solid #fff; outline-offset: 2px; }
        .sub-cta-icon {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            width: 20px;
            height: 20px;
            border-radius: 50%;
            background: rgba(255, 255, 255, .2);
            font-size: 12px;
            line-height: 1;
        }
        .sub-cta--outline {
            background: transparent;
            color: var(--black);
            border: 1px solid rgba(54, 54, 54, .35);
        }
        .sub-cta--outline:hover {
            background: var(--black);
            color: #fff;
            border-color: var(--black);
            box-shadow: 0 10px 22px rgba(0, 0, 0, .18);
        }
        .sub-cta--outline .sub-cta-icon { background: rgba(0, 0, 0, .08); color: inherit; }
        .sub-cta--outline:hover .sub-cta-icon { background: rgba(255, 255, 255, .18); }

        .benefit-wrap {
            background: #363636;
            border-radius: var(--radius-xl);
            padding: 40px;
            color: #fff;
        }
        .benefit-grid {
            margin-top: 32px;
            display: grid;
            grid-template-columns: 1fr 604px;
            gap: 40px;
        }
        .steps-3 {
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            gap: 40px;
        }
        .step-card {
            position: relative;
            z-index: 0;
            overflow: hidden;
            background-color: #f4f4f4;
            border-radius: var(--radius-md);
            padding: 20px;
            color: #040404;
            min-height: 277px;
            display: flex;
            flex-direction: column;
            justify-content: space-between;
            gap: 12px;
        }
        .step-card > * {
            position: relative;
            z-index: 1;
        }
        .step-card::before {
            content: "";
            position: absolute;
            inset: 0;
            z-index: 0;
            background-size: cover;
            background-position: center;
            background-repeat: no-repeat;
            pointer-events: none;
        }
        .step-head {
            display: flex;
            justify-content: space-between;
            align-items: flex-start;
            gap: 24px;
            font-size: 18px;
            line-height: 21px;
            font-weight: 700;
        }
        .step-num {
            width: 48px;
            min-width: 48px;
            max-width: 48px;
            height: 48px;
            min-height: 48px;
            max-height: 48px;
            flex: 0 0 48px;
            aspect-ratio: 1 / 1;
            border-radius: 999px;
            background: var(--orange);
            color: #fff;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            font-size: 24px;
            line-height: 1;
            font-weight: 700;
        }
        .step-desc { margin: 0; color: rgba(4,4,4,.6); font-size: 18px; line-height: 21px; font-weight: 510; }
        .step-card-1::before { background-image: url("/images/bg-1.webp"); }
        .step-card-2::before { background-image: url("/images/bg-2.webp"); }
        .step-card-3::before { background-image: url("/images/bg-3.webp"); }
        .wait-card {
            position: relative;
            z-index: 0;
            overflow: hidden;
            border-radius: var(--radius-md);
            padding: 20px;
            color: #040404;
            min-height: 277px;
            display: flex;
            flex-direction: column;
            justify-content: space-between;
            gap: 24px;
            width: 100%;
            text-align: left;
            font: inherit;
            cursor: pointer;
            border: 0;
        }
        button.wait-card { background: transparent; }
        .wait-card:hover .wait-arrow { background: var(--orange); color: #fff; }
        .wait-card:focus-visible { outline: 3px solid rgba(251,160,4,.5); outline-offset: 2px; }
        .wait-card > * {
            position: relative;
            z-index: 1;
        }
        .wait-card::before {
            content: "";
            position: absolute;
            inset: 0;
            z-index: 0;
            background: url("/images/bg-4.webp") center/cover no-repeat;
            pointer-events: none;
        }
        .benefit-wrap .benefit-title-accent {
            color: var(--orange);
        }
        .wait-head { display: flex; justify-content: space-between; gap: 24px; font-size: 16px; line-height: 20px; font-weight: 700; }
        .wait-arrow {
            width: 48px;
            min-width: 48px;
            max-width: 48px;
            height: 48px;
            min-height: 48px;
            max-height: 48px;
            flex: 0 0 48px;
            aspect-ratio: 1 / 1;
            border-radius: 999px;
            background: #fff;
            color: var(--orange);
            display: inline-flex;
            align-items: center;
            justify-content: center;
            font-size: 24px;
            line-height: 1;
            font-weight: 700;
        }
        .wait-main { font-size: 16px; line-height: 20px; font-weight: 510; }
        .wait-sub { font-size: 14px; line-height: 17px; color: rgba(54,54,54,.65); font-weight: 510; }
        .benefit-note {
            margin-top: 32px;
            text-align: center;
            font-size: 22px;
            line-height: 28px;
            color: #363636;
            font-weight: 700;
        }

        .lead-title { text-align: center; }
        .lead-row { display: flex; justify-content: center; gap: 24px; margin-top: 32px; }
        .mp-input {
            width: 526px;
            height: 60px;
            border-radius: 12px;
            border: 2px solid rgba(54,54,54,.1);
            padding: 8px 28px;
            font-size: 14px;
            font-weight: 590;
            color: #363636;
            letter-spacing: -.02em;
        }
        .mp-input::placeholder { color: rgba(54,54,54,.5); }
        .lead-btn {
            width: 264px;
            height: 61px;
            border-radius: 12px;
            border: none;
            background: var(--orange);
            color: #fff;
            font-size: 24px;
            line-height: 29px;
            letter-spacing: -.32px;
            font-weight: 590;
        }

        .mp-footer {
            background: #363636;
            color: #fff;
            padding: 32px 80px;
        }
        .foot-top {
            display: grid;
            grid-template-columns: 1fr 152px;
            gap: 40px;
            align-items: start;
        }
        .foot-cols { display: flex; gap: 124px; }
        .foot-col h6 { margin: 0 0 16px; font-size: 16px; line-height: 19px; font-weight: 700; }
        .foot-col a { display: block; margin-bottom: 12px; font-size: 14px; line-height: 17px; font-weight: 510; color: #fff; }
        .foot-col .foot-link-btn {
            display: block;
            margin-bottom: 12px;
            padding: 0;
            background: transparent;
            border: 0;
            color: #fff;
            font-size: 14px;
            line-height: 17px;
            font-weight: 510;
            text-align: left;
            cursor: pointer;
        }
        .foot-col .foot-link-btn:hover,
        .foot-col a:hover { text-decoration: underline; }
        .qr-col { text-align: center; }
        .qr-col img {
            width: 128px;
            height: 128px;
            background: #363636;
            border: 1px solid rgba(255, 255, 255, .35);
            border-radius: 8px;
            padding: 6px;
        }
        .qr-col p { margin: 12px 0 0; font-size: 14px; line-height: 17px; font-weight: 510; }
        .socials {
            margin-top: 24px;
            display: flex;
            gap: 40px;
            align-items: center;
            flex-wrap: wrap;
        }
        .social-item { display: inline-flex; align-items: center; gap: 8px; font-size: 14px; line-height: 17px; font-weight: 600; }
        .social-icon {
            width: 32px; height: 32px; border-radius: 8px; background: var(--orange); color: #fff;
            display: inline-flex; align-items: center; justify-content: center;
            flex: 0 0 32px;
        }
        .social-icon svg {
            width: 24px;
            height: 24px;
            display: block;
        }
        .social-item { color: #fff; text-decoration: none; }
        .social-item:hover { color: #fff; }
        .social-item:hover .social-icon { transform: translateY(-1px); }
        .social-icon { transition: transform .2s ease; }
        .foot-line { margin: 24px 0 20px; border-top: 2px solid rgba(236,236,236,.5); }
        .policy { display: block; text-align: center; font-size: 12px; line-height: 14px; font-weight: 510; opacity: .5; color: inherit; text-decoration: none; }
        a.policy:hover { text-decoration: underline; }

        .menu-links .menu-modal-trigger {
            cursor: pointer;
            border: 0;
            padding: 0;
            margin: 0;
            background: none;
            font: inherit;
            color: inherit;
        }
        #contactsModal .modal-dialog {
            max-width: 657px;
            margin: 1.75rem auto;
        }
        #contactsModal .modal-content.contacts-content {
            border: none;
            border-radius: 20px;
            box-shadow: 0 16px 48px rgba(0, 0, 0, .12);
            background: #fff;
            overflow: hidden;
            position: relative;
        }
        #contactsModal .contacts-close {
            position: absolute;
            top: 20px;
            right: 20px;
            width: 32px;
            height: 32px;
            border-radius: 50%;
            opacity: .6;
            z-index: 2;
        }
        #contactsModal .contacts-close:hover { opacity: 1; }
        #contactsModal .contacts-inner {
            padding: 40px 40px 40px;
        }
        #contactsModal .contacts-title {
            margin: 0 0 24px;
            font-size: 24px;
            line-height: 29px;
            font-weight: 590;
            color: #040404;
            letter-spacing: -.02em;
        }
        #contactsModal .contacts-list {
            list-style: none;
            margin: 0;
            padding: 0;
            display: flex;
            flex-direction: column;
            gap: 16px;
        }
        #contactsModal .contact-row {
            display: inline-flex;
            align-items: center;
            gap: 16px;
            text-decoration: none;
            color: #363636;
            font-size: 16px;
            line-height: 19px;
            font-weight: 600;
            transition: transform .2s ease;
        }
        #contactsModal .contact-row:hover { transform: translateX(4px); color: #363636; }
        #contactsModal .contact-icon {
            width: 32px;
            height: 32px;
            flex: 0 0 32px;
            border-radius: 8px;
            background: var(--orange);
            color: #fff;
            display: inline-flex;
            align-items: center;
            justify-content: center;
        }
        #contactsModal .contact-icon svg {
            width: 24px;
            height: 24px;
            display: block;
        }
        #contactsModal .contact-label--phone {
            font-size: 18px;
            line-height: 21px;
            font-weight: 500;
        }
        #partnersModal .modal-dialog {
            max-width: 420px;
            margin: 1.75rem auto;
        }
        #partnersModal .modal-content {
            border: none;
            border-radius: 20px;
            box-shadow: 0 16px 48px rgba(0, 0, 0, .12);
            overflow: hidden;
        }
        #partnersModal .partners-inner {
            padding: 28px 32px 24px;
            background: #fff;
        }
        #partnersModal .partners-title {
            margin: 0 0 20px;
            text-align: center;
            font-size: 22px;
            line-height: 26px;
            font-weight: 700;
            color: var(--black);
        }
        #partnersModal .partners-rule {
            height: 1px;
            background: rgba(54, 54, 54, .15);
            margin: 0 -32px 20px;
        }
        #partnersModal .partners-rule--bottom {
            margin: 20px -32px 20px;
        }
        #partnersModal .partners-list {
            list-style: none;
            margin: 0;
            padding: 0;
            display: flex;
            flex-direction: column;
            gap: 20px;
        }
        #partnersModal .partner-row {
            display: flex;
            align-items: center;
            gap: 16px;
            color: inherit;
        }
        #partnersModal .partner-logo {
            width: 34px;
            height: 30px;
            flex: 0 0 34px;
            display: flex;
            align-items: center;
            justify-content: center;
        }
        #partnersModal .partner-logo svg {
            display: block;
            width: auto;
            height: 100%;
            max-width: 100%;
        }
        #partnersModal .partner-name {
            font-size: 18px;
            line-height: 21px;
            font-weight: 500;
            color: var(--black);
        }
        #partnersModal .partners-footer {
            display: flex;
            justify-content: center;
            padding-top: 4px;
        }
        #partnersModal .partners-close {
            min-width: 160px;
            padding: 12px 32px;
            border-radius: 12px;
            border: 1.5px solid var(--black);
            background: #fff;
            color: var(--black);
            font-size: 16px;
            line-height: 20px;
            font-weight: 510;
            cursor: pointer;
        }
        #partnersModal .partners-close:hover {
            background: rgba(0, 0, 0, .04);
        }
        #partnersModal.modal {
            --bs-modal-bg: transparent;
        }

        #waitInfoModal .modal-dialog {
            max-width: 720px;
            margin: 1.75rem auto;
        }
        #waitInfoModal .wait-info-content {
            position: relative;
            border: none;
            border-radius: 20px;
            box-shadow: 0 16px 48px rgba(0, 0, 0, .18);
            overflow: hidden;
        }
        #waitInfoModal .wait-info-inner {
            padding: 40px 48px 32px;
            background: #fff;
        }
        #waitInfoModal .wait-info-close {
            position: absolute;
            top: 16px;
            right: 16px;
            z-index: 2;
        }
        #waitInfoModal .wait-info-title {
            margin: 0 0 20px;
            text-align: center;
            font-size: 18px;
            line-height: 24px;
            font-weight: 700;
            color: var(--black);
            padding: 0 16px;
        }
        #waitInfoModal .wait-info-text {
            margin: 0 0 16px;
            font-size: 15px;
            line-height: 22px;
            font-weight: 510;
            color: #363636;
        }
        #waitInfoModal .wait-info-example {
            border: 1px solid rgba(54, 54, 54, .15);
            border-radius: 16px;
            padding: 24px;
            margin: 12px 0 20px;
        }
        #waitInfoModal .wait-info-example-title {
            margin: 0 0 12px;
            font-size: 15px;
            line-height: 20px;
            font-weight: 700;
            color: var(--black);
        }
        #waitInfoModal .wait-info-example-sub {
            margin: 0 0 12px;
            font-size: 15px;
            line-height: 20px;
            font-weight: 510;
            color: #363636;
        }
        #waitInfoModal .wait-info-list {
            list-style: none;
            padding: 0;
            margin: 0 0 16px;
            display: flex;
            flex-direction: column;
            gap: 8px;
        }
        #waitInfoModal .wait-info-list li {
            display: flex;
            align-items: center;
            gap: 10px;
            font-size: 15px;
            line-height: 20px;
            color: #363636;
            font-weight: 510;
        }
        #waitInfoModal .wait-info-list .dot {
            width: 20px;
            height: 20px;
            flex: 0 0 20px;
            border: 2px solid var(--orange);
            border-radius: 50%;
            display: inline-flex;
            align-items: center;
            justify-content: center;
        }
        #waitInfoModal .wait-info-list .dot::after {
            content: "›";
            color: var(--orange);
            font-size: 14px;
            line-height: 1;
        }
        #waitInfoModal .wait-info-example-strong {
            margin: 0 0 6px;
            font-size: 15px;
            line-height: 20px;
            font-weight: 700;
            color: var(--black);
        }
        #waitInfoModal .wait-info-example-note {
            margin: 0;
            font-size: 15px;
            line-height: 20px;
            font-weight: 510;
            color: #363636;
        }
        #waitInfoModal .wait-info-footer {
            display: flex;
            justify-content: center;
            margin-top: 8px;
        }
        #waitInfoModal .wait-info-cta {
            min-width: 220px;
            height: 52px;
            padding: 12px 32px;
            border-radius: 12px;
            border: none;
            background: var(--orange);
            color: #fff;
            font-size: 16px;
            line-height: 20px;
            font-weight: 590;
            font-family: inherit;
            cursor: pointer;
        }
        #waitInfoModal .wait-info-cta:hover {
            filter: brightness(1.05);
        }
        #waitInfoModal.modal {
            --bs-modal-bg: transparent;
        }

        #leadRequestModal .modal-dialog {
            max-width: 420px;
            margin: 1.75rem auto;
        }
        #leadRequestModal .lead-modal-content {
            border: none;
            border-radius: 20px;
            box-shadow: 0 16px 48px rgba(0, 0, 0, .12);
            overflow: hidden;
        }
        #leadRequestModal .lead-modal-inner {
            padding: 28px 32px 24px;
            background: #fff;
        }
        #leadRequestModal .lead-modal-title {
            margin: 0 0 8px;
            text-align: center;
            font-size: 22px;
            line-height: 26px;
            font-weight: 700;
            color: var(--black);
        }
        #leadRequestModal .lead-modal-subtitle {
            margin: 0 0 24px;
            text-align: center;
            font-size: 14px;
            line-height: 18px;
            font-weight: 510;
            color: rgba(54, 54, 54, .55);
        }
        #leadRequestModal .lead-modal-feedback {
            margin-bottom: 12px;
        }
        #leadRequestModal .lead-modal-feedback:empty {
            display: none;
        }
        #leadRequestModal .lead-modal-form {
            display: flex;
            flex-direction: column;
            gap: 12px;
        }
        #leadRequestModal .lead-modal-input {
            width: 100%;
            height: 52px;
            border-radius: 12px;
            border: 2px solid rgba(54, 54, 54, .12);
            padding: 0 16px;
            font-size: 15px;
            font-weight: 510;
            color: #363636;
            font-family: inherit;
        }
        #leadRequestModal .lead-modal-input::placeholder {
            color: rgba(54, 54, 54, .45);
        }
        #leadRequestModal .lead-modal-submit {
            margin-top: 8px;
            width: 100%;
            height: 52px;
            border: none;
            border-radius: 12px;
            background: var(--orange);
            color: #fff;
            font-size: 16px;
            line-height: 20px;
            font-weight: 590;
            font-family: inherit;
            cursor: pointer;
        }
        #leadRequestModal .lead-modal-submit:hover:not(:disabled) {
            filter: brightness(1.05);
        }
        #leadRequestModal .lead-modal-submit:disabled {
            opacity: .65;
            cursor: not-allowed;
        }
        #leadRequestModal .lead-modal-legal {
            margin: 20px 0 0;
            text-align: center;
            font-size: 11px;
            line-height: 15px;
            font-weight: 510;
            color: rgba(54, 54, 54, .5);
        }
        #leadRequestModal .lead-modal-legal a {
            color: inherit;
            text-decoration: underline;
        }
        #leadRequestModal.modal {
            --bs-modal-bg: transparent;
        }

        #leadSuccessModal .modal-dialog {
            max-width: 360px;
            margin: 1.75rem auto;
        }
        #leadSuccessModal .lead-success-content {
            border: none;
            border-radius: 20px;
            box-shadow: 0 16px 48px rgba(0, 0, 0, .12);
            overflow: hidden;
        }
        #leadSuccessModal .lead-success-inner {
            padding: 36px 28px 28px;
            background: #fff;
            text-align: center;
        }
        #leadSuccessModal .lead-success-icon {
            display: flex;
            justify-content: center;
            margin-bottom: 20px;
        }
        #leadSuccessModal .lead-success-icon svg {
            width: 72px;
            height: 72px;
            display: block;
        }
        #leadSuccessModal .lead-success-title {
            margin: 0 0 12px;
            font-size: 20px;
            line-height: 24px;
            font-weight: 700;
            color: var(--black);
        }
        #leadSuccessModal .lead-success-text {
            margin: 0 0 24px;
            font-size: 14px;
            line-height: 20px;
            font-weight: 510;
            color: rgba(54, 54, 54, .55);
        }
        #leadSuccessModal .lead-success-btn {
            min-width: 160px;
            padding: 12px 28px;
            border-radius: 12px;
            border: none;
            background: var(--orange);
            color: #fff;
            font-size: 16px;
            line-height: 20px;
            font-weight: 590;
            font-family: inherit;
            cursor: pointer;
        }
        #leadSuccessModal .lead-success-btn:hover {
            filter: brightness(1.05);
        }
        #leadSuccessModal.modal {
            --bs-modal-bg: transparent;
        }

        .privacy-main { padding: 40px 80px 80px; }
        .privacy-title {
            margin: 0 0 32px;
            font-size: 56px;
            line-height: 64px;
            font-weight: 700;
            color: var(--black);
        }
        .privacy-docs {
            list-style: none;
            margin: 0;
            padding: 0;
            border-top: 1px solid rgba(54, 54, 54, .12);
        }
        .privacy-doc {
            border-bottom: 1px solid rgba(54, 54, 54, .12);
        }
        .privacy-doc-head {
            display: block;
            width: 100%;
            max-width: 100%;
            min-width: 0;
            box-sizing: border-box;
            padding: 22px 16px;
            background: transparent;
            border: 0;
            text-align: left;
            font: inherit;
            font-size: 18px;
            line-height: 24px;
            font-weight: 700;
            color: var(--black);
            cursor: pointer;
            white-space: normal;
            word-wrap: break-word;
            overflow-wrap: break-word;
        }
        .privacy-doc-head:hover { color: var(--orange); }
        .privacy-doc-head:focus-visible {
            outline: 2px solid var(--orange);
            outline-offset: 2px;
            border-radius: 4px;
        }
        .privacy-doc-body {
            padding: 8px 16px 28px;
            font-size: 15px;
            line-height: 22px;
            font-weight: 510;
            color: #363636;
        }
        .privacy-doc-body p { margin: 0 0 12px; }
        .privacy-doc-body h3 {
            margin: 24px 0 12px;
            font-size: 18px;
            line-height: 24px;
            font-weight: 700;
            color: var(--black);
        }
        .privacy-doc-body h3:first-child { margin-top: 0; }
        .privacy-doc-body ul {
            list-style: none;
            padding: 0;
            margin: 0 0 12px;
            display: flex;
            flex-direction: column;
            gap: 6px;
        }
        .privacy-doc-body ul li {
            position: relative;
            padding-left: 18px;
        }
        .privacy-doc-body ul li::before {
            content: "";
            position: absolute;
            left: 4px;
            top: 9px;
            width: 6px;
            height: 6px;
            border-radius: 50%;
            background: var(--orange);
        }
        .privacy-back {
            display: inline-flex;
            align-items: center;
            gap: 8px;
            margin-top: 40px;
            padding: 10px 24px;
            border: 2px solid var(--orange);
            border-radius: 12px;
            color: var(--orange);
            font-size: 16px;
            line-height: 20px;
            font-weight: 590;
            text-decoration: none;
            transition: background .15s ease;
        }
        .privacy-back:hover {
            background: var(--orange);
            color: #fff;
        }
        .privacy-back-icon {
            font-size: 20px;
            line-height: 1;
            margin-right: 2px;
        }

        @media (max-width: 1500px) and (min-width: 992px) {
            .hero-title { font-size: 72px; }
            .hero-main { padding: 40px 60px; gap: 48px; }
            .hero-grid { min-height: 560px; }
            .menu-links { gap: 32px; font-size: 18px; line-height: 22px; }
            .phone-link { font-size: 18px; line-height: 22px; }
            .title-xl { font-size: 48px; line-height: 57px; }
            .desc-xl { font-size: 24px; line-height: 28px; }
            #services .title-xl { font-size: 48px; line-height: 57px; }
            #services .desc-xl { font-size: 24px; line-height: 28px; }
            #services .cards-row {
                grid-template-columns: 1fr;
                gap: 24px;
            }
            #benefits .benefit-grid {
                grid-template-columns: 1fr;
                gap: 24px;
            }
            .shop-title { font-size: 24px; line-height: 28px; }
            .shop-image { height: 380px; }
            .shop-card { min-height: 0; }
        }

        .mobile-menu-wrap { display: none; }
        .mobile-menu-btn { display: inline-flex; align-items: center; justify-content: center; width: 24px; height: 24px; border: 0; background: transparent; color: #040404; padding: 0; cursor: pointer; }
        .mobile-menu-btn .icon-close { display: none; }
        .mobile-menu-btn[aria-expanded="true"] .icon-burger { display: none; }
        .mobile-menu-btn[aria-expanded="true"] .icon-close { display: block; }
        .mobile-menu {
            position: absolute;
            top: calc(100% + 24px);
            right: 0;
            width: 261px;
            background: #ffffff;
            border-radius: 16px;
            box-shadow: 0 12px 40px rgba(0, 0, 0, .12);
            padding: 20px;
            display: flex;
            flex-direction: column;
            gap: 16px;
            z-index: 1000;
        }
        .mobile-menu[hidden] { display: none; }
        .mobile-menu-link {
            font-family: 'Manrope', system-ui, sans-serif;
            font-weight: 590;
            font-size: 16px;
            line-height: 19px;
            color: #040404;
            text-decoration: none;
            padding: 4px 0;
        }
        .mobile-menu-link:hover,
        .mobile-menu-link:focus-visible { color: var(--orange); }

        @media (max-width: 991.98px) {
            .mp-inner { max-width: 100%; }
            .mp-header, .hero, .section, .mp-footer { padding: 16px; }
            .mp-header-row { min-height: auto; position: relative; }
            .logo { font-size: 24px; }
            .logo img { width: 98px; height: 24px; }
            .menu-links, .phone-link { display: none; }
            .mobile-menu-wrap { display: block; position: static; }
            .hero-grid { grid-template-columns: 1fr; min-height: auto; }
            .hero-main {
                border-radius: var(--radius-lg);
                padding: 20px;
                gap: 24px;
                min-height: 330px;
            }
            .hero-title { font-size: 32px; line-height: 1; max-width: 321px; }
            .hero-subtitle { font-size: 18px; line-height: 21px; max-width: 321px; }
            .hero-cta {
                width: 100%;
                height: 43px;
                border-radius: 12px;
                justify-content: center;
                padding: 12px 24px;
                font-size: 16px;
                line-height: 19px;
            }
            .hero-cta-icon { display: none; }
            .hero-side {
                min-height: 0;
                aspect-ratio: 361 / 250;
                border-radius: var(--radius-lg);
                background-image: url("/images/hero-mobile.webp");
            }
            .title-xl { font-size: 24px; line-height: 29px; margin-bottom: 8px; }
            .desc-xl { font-size: 16px; line-height: 1.1; }
            .service-intro {
                margin-top: 14px;
                grid-template-columns: 1fr;
                gap: 14px;
                padding: 0 12px;
                border-left-width: 2px;
            }
            .left-stack { gap: 14px; }
            .right-stack { gap: 14px; }
            .left-top, .left-orange, .left-strong, .sub-title, .right-note { font-size: 14px; line-height: 17px; }
            .sub-title { margin-bottom: 10px; }
            .bullet-list { gap: 6px; }
            .bullet-list li { font-size: 14px; line-height: 17px; align-items: flex-start; }
            #services.section { padding-left: 10px; padding-right: 10px; }
            .cards-row { grid-template-columns: 1fr; gap: 12px; }
            .services-cards {
                display: grid;
                grid-template-columns: repeat(3, minmax(0, 1fr));
                gap: 6px;
                align-items: start;
            }
            .shop-card {
                min-width: 0;
                width: 100%;
                min-height: 0;
                border-radius: 16px;
                padding: 5px 5px 8px;
                grid-row: 1;
                flex: none;
            }
            .shop-card:nth-of-type(1) { grid-column: 1; }
            .shop-card:nth-of-type(2) { grid-column: 2; }
            .shop-card:nth-of-type(3) { grid-column: 3; }
            .services-cards.has-expanded .shop-card:not(.is-active),
            .services-cards.has-expanded .shop-card.is-active { flex: none; }
            .shop-image { height: auto; aspect-ratio: 208 / 305; border-radius: 10px; margin-bottom: 6px; transition: none; }
            .shop-title { font-size: 14px; line-height: 17px; margin-bottom: 2px; }
            .shop-sub { font-size: 10px; line-height: 12px; }
            .shop-card-more {
                display: inline-flex;
                align-items: center;
                font-size: 11px;
                line-height: 14px;
                margin-top: 6px;
                gap: 6px;
                min-width: 0;
            }
            .shop-card-more-icon {
                width: 16px;
                height: 16px;
                min-width: 16px;
                flex: 0 0 16px;
                aspect-ratio: 1 / 1;
                font-size: 10px;
            }
            .service-panel {
                grid-column: 1 / -1;
                grid-row: 2;
                flex: none;
                padding: 4px 0;
                animation-duration: .3s;
            }
            .sub-head { padding: 12px 10px; gap: 4px; }
            .sub-head:hover { padding-left: 14px; }
            .sub-head-title { font-size: 14px; line-height: 18px; }
            .sub-head-desc { font-size: 12px; line-height: 15px; }
            .sub-body { padding: 2px 10px 14px; gap: 10px; }
            .sub-list li { font-size: 12px; line-height: 15px; gap: 8px; }
            .sub-list li .dot { width: 18px; height: 18px; flex-basis: 18px; }
            .sub-list li .dot::after { font-size: 12px; }
            .sub-text { font-size: 12px; line-height: 15px; }
            .sub-note { font-size: 11px; line-height: 14px; padding: 10px 12px; }
            .sub-cta { padding: 9px 14px; font-size: 12px; line-height: 15px; }
            .benefit-wrap { border-radius: 20px; padding: 20px; }
            .benefit-grid { grid-template-columns: 1fr; gap: 16px; margin-top: 20px; }
            .steps-3 { grid-template-columns: 1fr; gap: 16px; }
            .step-card, .wait-card { min-height: 86px; border-radius: 12px; padding: 10px; }
            .step-card-1::before,
            .step-card-2::before,
            .step-card-3::before { display: none; }
            .step-card { background-color: #fff; }
            .step-head { justify-content: center; }
            .step-head span:last-child { display: none; }
            .step-desc { text-align: center; font-size: 12px; line-height: 14px; }
            .wait-card::before { display: none; }
            .wait-card,
            button.wait-card { background: var(--orange); background-color: var(--orange); min-height: 96px; color: #040404; }
            .wait-card .wait-head,
            .wait-card .wait-main { color: #040404; }
            .wait-card .wait-sub { color: #363636; }
            .wait-head, .wait-main { font-size: 12px; line-height: 14px; }
            .wait-sub { font-size: 12px; line-height: 14px; }
            .benefit-note { margin-top: 12px; font-size: 12px; line-height: 14px; text-align: center; }
            .lead-row { flex-direction: column; gap: 12px; margin-top: 20px; }
            .mp-input, .lead-btn { width: 100%; }
            .mp-input { height: 48px; }
            .lead-btn { height: 43px; font-size: 16px; line-height: 19px; }
            .foot-top { grid-template-columns: 1fr; gap: 20px; }
            .foot-cols { flex-direction: column; gap: 20px; }
            .foot-col {
                border-bottom: 2px solid rgba(255,255,255,.1);
                padding-bottom: 20px;
            }
            .socials {
                justify-content: center;
                gap: 40px;
                padding-bottom: 20px;
                border-bottom: 2px solid rgba(255,255,255,.1);
            }
            .social-item span:last-child { display: none; }
            .qr-col { display: none; }
            .foot-line { margin: 10px 0 12px; }
            .policy { font-size: 12px; line-height: 14px; }
            #waitInfoModal .modal-dialog {
                max-width: calc(100% - 16px);
                margin: 8px auto;
                max-height: calc(100dvh - 16px);
                height: calc(100dvh - 16px);
            }
            #waitInfoModal .wait-info-content {
                max-height: 100%;
                overflow: hidden;
                display: flex;
                flex-direction: column;
            }
            #waitInfoModal .wait-info-inner {
                padding: 36px 20px 24px;
                overflow-y: auto;
                -webkit-overflow-scrolling: touch;
                flex: 1 1 auto;
                min-height: 0;
            }
            #waitInfoModal .wait-info-title { font-size: 16px; line-height: 22px; padding: 0; }
            #waitInfoModal .wait-info-example { padding: 16px; }
            #waitInfoModal .wait-info-text,
            #waitInfoModal .wait-info-example-title,
            #waitInfoModal .wait-info-example-sub,
            #waitInfoModal .wait-info-list li,
            #waitInfoModal .wait-info-example-strong,
            #waitInfoModal .wait-info-example-note { font-size: 14px; line-height: 18px; }
            #waitInfoModal .wait-info-cta { width: 100%; min-width: 0; }
            .privacy-main { padding: 16px 16px 32px; }
            .privacy-title { font-size: 24px; line-height: 29px; margin-bottom: 16px; }
            .privacy-doc-head { padding: 16px 8px; font-size: 15px; line-height: 20px; }
            .privacy-doc-body { padding: 4px 8px 20px; font-size: 14px; line-height: 20px; }
            .privacy-doc-body h3 { font-size: 15px; line-height: 20px; margin: 16px 0 8px; }
            .privacy-back { margin-top: 24px; padding: 10px 20px; font-size: 14px; }
            #contactsModal .modal-dialog { max-width: calc(100% - 16px); margin: 8px auto; }
            #contactsModal .contacts-inner { padding: 28px 20px 24px; }
            #contactsModal .contacts-title { font-size: 20px; line-height: 24px; margin-bottom: 16px; }
            #contactsModal .contact-row { font-size: 15px; line-height: 18px; gap: 12px; }
            #contactsModal .contact-label--phone { font-size: 16px; line-height: 19px; }
        }
