:root {
    --piar-red: var(--color-brand);
    --piar-red-dark: #d91537;
    --piar-text: #111111;
    --piar-muted: #666666;
    --piar-line: #ececec;
    --piar-line-soft: #f1f1f1;
    --piar-bg-soft: #fafafa;
    --site-container: 1280px;
    --site-gutter: 16px;
    --ds-type-h1: var(--type-display-size);
    --ds-type-h2: var(--type-h2-size);
    --ds-type-h3: var(--type-card-title-size-mobile);
    --ds-type-body: var(--type-body-size);
    --ds-type-caption: var(--type-meta-size);
    --type-hero-copy-mobile: 15px;
}

/* =========================
   BASE
========================= */

.ds-wrap {
    width: 100%;
    margin-top: 80px;
    position: relative;
    z-index: 2;
    font-family: var(--type-font-primary);
}

.ds-wrap,
.ds-wrap *,
body.post-type-archive-product #content,
body.post-type-archive-product #content *,
body.tax-product_cat #content,
body.tax-product_cat #content *,
body.tax-product_tag #content,
body.tax-product_tag #content *,
body.post-type-archive-product .woocommerce,
body.post-type-archive-product .woocommerce *,
body.tax-product_cat .woocommerce,
body.tax-product_cat .woocommerce *,
body.tax-product_tag .woocommerce,
body.tax-product_tag .woocommerce *,
body.single-product.woocommerce div.product,
body.single-product.woocommerce div.product *,
body.single-product.woocommerce .ds-single-breadcrumbs,
body.single-product.woocommerce .ds-single-breadcrumbs *,
body.single-product.woocommerce .related.products,
body.single-product.woocommerce .related.products * {
    font-family: var(--type-font-primary);
}

.ds-wrap,
.ds-wrap *,
body.post-type-archive-product #content,
body.post-type-archive-product #content *,
body.tax-product_cat #content,
body.tax-product_cat #content *,
body.tax-product_tag #content,
body.tax-product_tag #content *,
body.post-type-archive-product .woocommerce,
body.post-type-archive-product .woocommerce *,
body.tax-product_cat .woocommerce,
body.tax-product_cat .woocommerce *,
body.tax-product_tag .woocommerce,
body.tax-product_tag .woocommerce *,
body.single-product.woocommerce div.product,
body.single-product.woocommerce div.product *,
body.single-product.woocommerce .ds-single-breadcrumbs,
body.single-product.woocommerce .ds-single-breadcrumbs *,
body.single-product.woocommerce .related.products,
body.single-product.woocommerce .related.products * {
    font-family: var(--type-font-primary) !important;
}

/* =========================
   HERO
========================= */

.ds-hero {
    position: relative;
    padding: 28px 0 18px;
    background: #ffffff;
    font-family: var(--type-font-primary);
    overflow: hidden;
}

.ds-hero::before {
    display: none;
}

.ds-hero__inner {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: minmax(0, 0.98fr) minmax(420px, 1.02fr);
    gap: 34px;
    align-items: start;
}

.ds-hero__content {
    position: relative;
    width: 100%;
    max-width: 660px;
    transform: translateY(-24px);
    z-index: 2;
}

.ds-hero__label {
    display: inline-block;
    margin-bottom: var(--space-eyebrow-heading-desktop);
    font-size: var(--type-eyebrow-size);
    line-height: var(--type-eyebrow-leading);
    font-weight: var(--type-eyebrow-weight);
    letter-spacing: var(--type-eyebrow-tracking);
    text-transform: uppercase;
    color: var(--piar-red);
}

.ds-hero__title {
    margin: 0 0 18px;
    max-width: 650px;
    font-size: var(--type-display-size);
    line-height: var(--type-display-leading);
    font-weight: var(--type-display-weight);
    letter-spacing: 0;
    color: var(--piar-text);
}

.ds-hero__text {
    max-width: 650px;
    margin: 0 0 24px;
    font-size: var(--type-body-large-size);
    line-height: var(--type-body-large-leading);
    color: var(--piar-muted);
}

.ds-hero__search {
    display: block;
    width: 100%;
    max-width: 650px;
}

.ds-hero__search-field {
    position: relative;
    display: block;
    width: 100%;
}

.ds-hero__search-icon {
    position: absolute;
    top: 50%;
    left: 16px;
    width: 20px;
    height: 20px;
    fill: #9a9a9a;
    transform: translateY(-50%);
    pointer-events: none;
}

.ds-hero__search-input {
    width: 100%;
    height: 62px;
    padding: 0 158px 0 50px;
    border: 1px solid #e4e4e4;
    border-radius: 14px;
    background: #ffffff;
    font-size: 16px;
    font-family: inherit;
    color: var(--piar-text);
    box-shadow: none;
    box-sizing: border-box;
}

.ds-hero__search-input::placeholder {
    color: #9a9a9a;
}

.ds-hero__search-input:focus {
    outline: none;
    border-color: #c7c7c7;
    box-shadow: none;
}

.ds-hero__search-submit {
    position: absolute;
    top: 50%;
    right: 7px;
    width: 138px;
    height: 48px;
    border: 0;
    border-radius: 12px;
    background: var(--piar-red);
    color: #ffffff;
    font-family: inherit;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    cursor: pointer;
    transform: translateY(-50%);
    transition: background 0.25s ease;
}

.ds-hero__search-submit:hover {
    background: var(--piar-red-dark);
}

.ds-hero__search-submit svg {
    width: 18px;
    height: 18px;
    fill: #ffffff;
    display: none;
}

.ds-hero__meta {
    margin-top: 12px;
    font-size: var(--type-meta-size);
    line-height: var(--type-meta-leading);
    color: #888888;
}

.ds-hero__meta a {
    color: inherit;
    text-decoration: none;
    border-bottom: 1px solid transparent;
}

.ds-hero__meta a:hover {
    color: var(--piar-text);
    border-bottom-color: rgba(17, 17, 17, 0.2);
}

.ds-hero__benefits {
    display: flex;
    flex-wrap: nowrap;
    gap: 12px;
    max-width: 650px;
    margin-top: 16px;
}

.ds-hero-benefit {
    display: inline-grid;
    grid-template-columns: 36px minmax(0, 1fr);
    flex: 1 1 0;
    gap: 12px;
    align-items: center;
    min-height: 64px;
    padding: 0 16px;
    border-radius: 14px;
    min-width: 0;
}

.ds-hero-benefit--tasks {
    background: rgba(247, 27, 64, 0.07);
}

.ds-hero-benefit--terms {
    background: rgba(83, 92, 255, 0.08);
}

.ds-hero-benefit--time {
    background: rgba(48, 168, 118, 0.09);
}

.ds-hero-benefit__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border-radius: 0;
    background: transparent;
    flex: 0 0 36px;
}

.ds-hero-benefit__icon img {
    display: block;
    width: 30px;
    height: 30px;
    object-fit: contain;
}

.ds-hero-benefit strong {
    display: block;
    font-size: 14px;
    line-height: 1.2;
    font-weight: 700;
    color: var(--piar-text);
}

.ds-hero__visual {
    position: relative;
    min-height: 430px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    overflow: visible;
}

.ds-hero__visual::before {
    content: "";
    position: absolute;
    top: 46%;
    left: 52%;
    width: min(80%, 470px);
    height: 365px;
    border-radius: 50%;
    background:
        radial-gradient(circle at 50% 50%, rgba(247, 27, 64, 0.10) 0%, rgba(247, 27, 64, 0.045) 38%, rgba(247, 27, 64, 0) 74%);
    filter: blur(38px);
    opacity: 0.58;
    box-shadow: none;
    transform: translate(-50%, -50%);
    pointer-events: none;
}

.ds-hero__mockup-stage {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
}

.ds-hero__mockup {
    position: relative;
    z-index: 1;
    width: min(84%, 520px);
    transform: translate(12px, -20px) rotate(4deg);
    filter: drop-shadow(0 24px 28px rgba(17, 17, 17, 0.18));
}

.ds-hero__mockup img {
    display: block;
    width: 100%;
    height: auto;
}

.ds-hero-followup {
    position: relative;
    z-index: 3;
    margin-top: 8px;
    font-family: var(--type-font-primary);
}

.ds-hero-directions {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0;
    border: 1px solid #ececec;
    border-radius: 22px;
    background: #ffffff;
    box-shadow: 0 18px 46px rgba(17, 17, 17, 0.05);
    overflow: hidden;
}

.ds-hero-direction {
    display: grid;
    grid-template-columns: 68px minmax(0, 1fr);
    gap: 22px;
    align-items: center;
    min-height: 132px;
    padding: 26px 32px;
    border-left: 1px solid #eeeeee;
    background: #ffffff;
    box-shadow: none;
}

.ds-hero-direction:first-child {
    border-left: 0;
}

.ds-hero-direction__icon {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 64px;
    height: 64px;
    border-radius: 12px;
    background: rgba(247, 27, 64, 0.08);
    color: var(--piar-red);
}

.ds-hero-direction__icon img {
    display: block;
    width: 38px;
    height: 38px;
    object-fit: contain;
}

.ds-hero-direction h2 {
    margin: 0 0 10px;
    font-size: 22px;
    line-height: 1.12;
    font-weight: 800;
    color: var(--piar-text);
}

.ds-hero-direction p {
    margin: 0;
    font-size: 14px;
    line-height: 1.6;
    color: var(--piar-muted);
}


/* =========================
   SECTION HEADINGS
========================= */

.ds-block {
    margin-top: var(--space-section-before-mobile);
    position: relative;
    z-index: 0;
}

.ds-block__head {
    margin-bottom: var(--space-h2-content);
}

.ds-block__head--row {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 16px;
}

.ds-block__title {
    position: relative;
    display: inline-block;
    margin: 0;
    padding-bottom: 12px;
    font-family: var(--type-font-primary);
    font-size: var(--type-h2-size);
    line-height: var(--type-h2-leading);
    font-weight: var(--type-h2-weight);
    text-transform: uppercase;
    letter-spacing: var(--type-h2-tracking);
    color: var(--piar-text);
}

.ds-block__title::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 54px;
    height: 3px;
    background: var(--piar-red);
}

.ds-block__link {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 14px;
    font-weight: 700;
    color: rgba(17, 17, 17, 0.68);
    text-decoration: none;
    white-space: nowrap;
    transition: color 0.25s ease;
}

.ds-block__link span {
    display: inline-block;
    transition: transform 0.25s ease;
}

.ds-block__link:hover {
    color: var(--piar-text);
}

.ds-block__link span {
    color: var(--piar-red);
}

.ds-block__link:hover span {
    transform: translateX(4px);
}

/* =========================
   CATEGORIES
========================= */

.ds-categories-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
}

.ds-category {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    min-height: 188px;
    padding: 22px 20px 26px;
    border: 1px solid rgba(17, 17, 17, 0.085);
    border-radius: 18px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.98) 0%, rgba(247, 248, 250, 0.98) 100%),
        radial-gradient(circle at 18% 12%, rgba(27, 39, 64, 0.035), rgba(27, 39, 64, 0) 42%);
    text-decoration: none;
    overflow: hidden;
    box-shadow: 0 12px 30px rgba(17, 17, 17, 0.045);
    transition:
        background 0.25s ease,
        border-color 0.25s ease,
        box-shadow 0.25s ease,
        transform 0.25s ease;
}

.ds-category::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(135deg, rgba(17, 17, 17, 0.025), rgba(255, 255, 255, 0) 44%),
        linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, rgba(241, 243, 246, 0.42) 100%);
    opacity: 0.9;
    pointer-events: none;
    transition: opacity 0.25s ease;
}

.ds-category::after {
    content: "";
    position: absolute;
    right: 18px;
    bottom: 18px;
    width: 18px;
    height: 18px;
    background: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M13 5l7 7-7 7M5 12h14' stroke='%238e949e' stroke-width='2.15' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat center;
    background-size: contain;
    opacity: 0.92;
    transition:
        transform 0.28s cubic-bezier(0.22, 1, 0.36, 1),
        opacity 0.25s ease,
        filter 0.25s ease;
}

.ds-category:hover {
    transform: translateY(-3px);
    border-color: rgba(247, 27, 64, 0.13);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.98) 0%, rgba(250, 250, 251, 1) 100%),
        radial-gradient(circle at 18% 12%, rgba(17, 17, 17, 0.04), rgba(17, 17, 17, 0) 44%);
    box-shadow: 0 20px 46px rgba(17, 17, 17, 0.08);
}

.ds-category:hover::before {
    opacity: 1;
}

.ds-category:hover::after {
    transform: translateX(6px);
    opacity: 1;
    filter: brightness(0) saturate(100%) invert(18%) sepia(69%) saturate(4528%) hue-rotate(338deg) brightness(101%) contrast(95%);
}

.ds-category__media,
.ds-category__title,
.ds-category__desc {
    position: relative;
    z-index: 2;
}

.ds-category__media {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 62px;
    height: 62px;
    margin-bottom: 18px;
    border: 1px solid rgba(17, 17, 17, 0.055);
    border-radius: 16px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.94), rgba(244, 246, 249, 0.92));
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.9);
}

.ds-category__media img {
    display: block;
    max-width: calc(100% - 18px);
    max-height: calc(100% - 18px);
    width: auto;
    height: auto;
    object-fit: contain;
    opacity: 0.98;
}

.ds-category__title {
    max-width: calc(100% - 26px);
    font-size: var(--ds-type-h3);
    line-height: 1.18;
    font-weight: 800;
    letter-spacing: 0;
    color: var(--piar-text);
}

.ds-category__desc {
    max-width: calc(100% - 24px);
    margin-top: 8px;
    font-size: 14px;
    line-height: 1.5;
    font-weight: 500;
    color: #62666d;
}

.ds-categories-action {
    display: flex;
    justify-content: center;
    margin-top: 28px;
}

.ds-categories-action__button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    min-height: 44px;
    padding: 0 28px;
    border: 0;
    border-radius: 15px;
    background: var(--piar-red);
    color: #ffffff;
    font-size: 17.5px;
    line-height: 1;
    font-weight: 700;
    text-decoration: none;
    box-shadow: none;
    transition: background 0.25s ease;
}

.ds-categories-action__button span {
    display: inline-block;
}

.ds-categories-action__button:hover {
    background: var(--piar-red-dark);
    color: #ffffff;
    box-shadow: none;
}

/* =========================
   TAGS
========================= */

.ds-block--tasks {
    margin-top: 88px;
    margin-bottom: 24px;
}

.ds-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
}

.ds-tag {
    --ds-tag-accent: rgba(17, 17, 17, 0.22);
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: flex-start;
    min-height: 42px;
    padding: 0 16px 0 28px;
    border: 1px solid rgba(17, 17, 17, 0.065);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.96);
    text-decoration: none;
    font-size: 14px;
    line-height: 1;
    font-weight: 500;
    color: #444444;
    transition:
        background-color 0.22s ease,
        border-color 0.22s ease,
        color 0.22s ease;
}

.ds-tag::before {
    content: "";
    position: absolute;
    left: 14px;
    top: 50%;
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background: var(--ds-tag-accent);
    transform: translateY(-50%);
}

.ds-tag--seo {
    --ds-tag-accent: #30a876;
    border-color: rgba(48, 168, 118, 0.22);
}

.ds-tag--analytics {
    --ds-tag-accent: #2d80dc;
    border-color: rgba(45, 128, 220, 0.22);
}

.ds-tag--tech {
    --ds-tag-accent: #c88743;
    border-color: rgba(200, 135, 67, 0.22);
}

.ds-tag--payment {
    --ds-tag-accent: var(--piar-red);
    border-color: rgba(247, 27, 64, 0.2);
}

@media (hover: hover) and (pointer: fine) {
    .ds-tag--seo:hover {
        border-color: rgba(48, 168, 118, 0.34);
        background: rgba(48, 168, 118, 0.035);
        color: var(--piar-text);
    }

    .ds-tag--analytics:hover {
        border-color: rgba(45, 128, 220, 0.34);
        background: rgba(45, 128, 220, 0.035);
        color: var(--piar-text);
    }

    .ds-tag--tech:hover {
        border-color: rgba(200, 135, 67, 0.35);
        background: rgba(200, 135, 67, 0.038);
        color: var(--piar-text);
    }

    .ds-tag--payment:hover {
        border-color: rgba(247, 27, 64, 0.32);
        background: rgba(247, 27, 64, 0.032);
        color: var(--piar-text);
    }
}

/* =========================
   PRODUCT BLOCK WRAPPERS
========================= */

.ds-featured-products,
.ds-ready-products {
    overflow-x: auto;
    overflow-y: hidden;
    position: relative;
    z-index: 1;
    padding: 8px 8px 16px;
    margin: -8px -8px -16px;
    scrollbar-color: rgba(247, 27, 64, 0.48) rgba(17, 17, 17, 0.08);
    scrollbar-width: thin;
    -webkit-overflow-scrolling: touch;
}

.ds-featured-products::-webkit-scrollbar,
.ds-ready-products::-webkit-scrollbar {
    height: 6px;
}

.ds-featured-products::-webkit-scrollbar-track,
.ds-ready-products::-webkit-scrollbar-track {
    border-radius: 999px;
    background: rgba(17, 17, 17, 0.08);
}

.ds-featured-products::-webkit-scrollbar-thumb,
.ds-ready-products::-webkit-scrollbar-thumb {
    border-radius: 999px;
    background: rgba(247, 27, 64, 0.48);
}

.ds-featured-products ul.products,
.ds-ready-products ul.products {
    margin: 0 !important;
    padding-top: 10px;
    padding-bottom: 10px;
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 22px;
    width: max-content;
    min-width: 100%;
}

.ds-featured-products ul.products::before,
.ds-featured-products ul.products::after,
.ds-ready-products ul.products::before,
.ds-ready-products ul.products::after {
    display: none !important;
}

.ds-featured-products ul.products li.product,
.ds-ready-products ul.products li.product {
    flex: 0 0 292px;
    width: 292px !important;
    margin: 0 !important;
    float: none !important;
    list-style: none !important;
}

.ds-featured-products .ds-product__excerpt,
.ds-ready-products .ds-product__excerpt {
    min-height: calc(14px * 1.45 * 3);
    -webkit-line-clamp: 3;
}

.ds-featured-products .ds-product__card,
.ds-ready-products .ds-product__card {
    min-height: 398px;
}

.ds-featured-products .ds-compact-cover__label,
.ds-ready-products .ds-compact-cover__label {
    font-size: clamp(23px, 2.05vw, 29px);
    line-height: 1;
}

.ds-featured-products .ds-compact-cover__label-line,
.ds-ready-products .ds-compact-cover__label-line {
    white-space: nowrap;
    overflow-wrap: normal;
}

.ds-featured-products .ds-product__button,
.ds-ready-products .ds-product__button,
.ds-featured-products .ds-product__button:hover,
.ds-ready-products .ds-product__button:hover,
.ds-featured-products .ds-product__button:focus,
.ds-ready-products .ds-product__button:focus,
.ds-featured-products .ds-product__button:active,
.ds-ready-products .ds-product__button:active {
    background: transparent;
    box-shadow: none;
}

.ds-ready-hidden {
    display: none !important;
}

/* =========================
   PRODUCT CARD
========================= */

.ds-product {
    list-style: none;
    font-family: var(--type-font-primary);
}

.ds-product__card {
    display: flex;
    flex-direction: column;
    height: 100%;
    border: 1px solid rgba(17, 17, 17, 0.095);
    border-radius: 24px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.98) 0%, rgba(248, 248, 249, 0.96) 100%),
        #ffffff;
    box-shadow: 0 18px 60px rgba(17, 17, 17, 0.024);
    overflow: hidden;
    position: relative;
    transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease, background-color 0.25s ease;
}

.ds-product__card:hover {
    transform: translateY(-2px);
    box-shadow: 0 22px 72px rgba(17, 17, 17, 0.038);
    border-color: rgba(17, 17, 17, 0.12);
    z-index: 5;
}

.ds-product__card:active,
.ds-product__card:focus-within {
    border-color: rgba(17, 17, 17, 0.12);
}

.ds-product__image-wrap {
    position: relative;
    display: block;
    margin: 0;
    padding: 0;
    aspect-ratio: 1.46 / 1;
    border-radius: 23px 23px 0 0;
    background: #f6f6f7;
    overflow: hidden;
    text-decoration: none;
}

.ds-product__image-wrap img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    background: transparent;
    transition: transform 0.3s ease;
}

.ds-product__card:hover .ds-product__image-wrap img {
    transform: scale(1.025);
}

.ds-compact-cover {
    --cover-color-1: #4F46E5;
    --cover-color-2: #818CF8;
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    width: 100%;
    height: 100%;
    min-height: 100%;
    padding: 18px;
    overflow: hidden;
    background:
        radial-gradient(circle at 82% 22%, color-mix(in srgb, var(--cover-color-2) 46%, transparent), transparent 30%),
        radial-gradient(circle at 20% 82%, color-mix(in srgb, var(--cover-color-1) 28%, transparent), transparent 34%),
        linear-gradient(135deg, color-mix(in srgb, var(--cover-color-1) 16%, #f8fafc) 0%, color-mix(in srgb, var(--cover-color-2) 22%, #fff) 100%);
    color: #111318;
}

.ds-compact-cover__category,
.ds-compact-cover__label {
    position: relative;
    z-index: 5;
}

.ds-compact-cover__category {
    align-self: flex-start;
    max-width: 74%;
    color: var(--cover-color-1);
    font-size: 11px;
    font-weight: 800;
    line-height: 1.1;
    letter-spacing: 0.035em;
    text-transform: uppercase;
}

.ds-compact-cover__label {
    align-self: center;
    margin-top: auto;
    width: 100%;
    max-width: calc(100% - 16px);
    display: flex;
    flex-direction: column;
    align-items: center;
    overflow: hidden;
    color: #111318;
    font-size: clamp(30px, 3.1vw, 36px);
    font-weight: 800;
    line-height: 0.98;
    letter-spacing: 0;
    text-align: center;
    text-wrap: balance;
    word-break: normal;
    overflow-wrap: normal;
    hyphens: none;
}

.ds-compact-cover__label-line {
    display: block;
    max-width: 100%;
    white-space: nowrap;
}

.ds-compact-cover__icon {
    position: absolute;
    top: 42px;
    right: 24px;
    z-index: 2;
    display: grid;
    place-items: center;
    width: 62px;
    height: 62px;
    border-radius: 19px;
    background: color-mix(in srgb, var(--cover-color-1) 8%, rgba(255, 255, 255, 0.66));
    color: color-mix(in srgb, var(--cover-color-1) 62%, #111318);
    opacity: 0.5;
}

.ds-compact-cover__icon svg {
    width: 32px;
    height: 32px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.ds-compact-cover__icon img {
    display: block;
    width: 42px;
    height: 42px;
    object-fit: contain;
}

.ds-compact-cover__shape {
    position: absolute;
    z-index: 1;
    display: block;
    pointer-events: none;
}

.ds-compact-cover--pattern-1 .ds-compact-cover__shape--one,
.ds-compact-cover--pattern-4 .ds-compact-cover__shape--one {
    right: -28px;
    top: 34px;
    width: 112px;
    height: 112px;
    border-radius: 999px;
    background: color-mix(in srgb, var(--cover-color-2) 42%, transparent);
    opacity: 0.48;
}

.ds-compact-cover--pattern-2 .ds-compact-cover__shape--one,
.ds-compact-cover--pattern-5 .ds-compact-cover__shape--one {
    right: 22px;
    top: 42px;
    width: 90px;
    height: 74px;
    border-radius: 18px;
    background-image: radial-gradient(color-mix(in srgb, var(--cover-color-1) 58%, transparent) 2px, transparent 2px);
    background-size: 14px 14px;
    opacity: 0.22;
}

.ds-compact-cover--pattern-3 .ds-compact-cover__shape--one,
.ds-compact-cover--pattern-6 .ds-compact-cover__shape--one {
    inset: auto -24px 34px auto;
    width: 148px;
    height: 86px;
    border-radius: 999px;
    background: repeating-linear-gradient(135deg, color-mix(in srgb, var(--cover-color-1) 30%, transparent) 0 6px, transparent 6px 14px);
    opacity: 0.22;
}

.ds-compact-cover__shape--two {
    left: 18px;
    bottom: 20px;
    width: 44%;
    height: 8px;
    border-radius: 999px;
    background: color-mix(in srgb, var(--cover-color-1) 18%, transparent);
    opacity: 0.42;
}

.ds-compact-cover__shape--three {
    left: 18px;
    bottom: 38px;
    width: 28%;
    height: 8px;
    border-radius: 999px;
    background: color-mix(in srgb, var(--cover-color-2) 28%, transparent);
    opacity: 0.36;
}

.ds-product__badge,
.ds-product__image-wrap .onsale {
    position: absolute;
    top: 12px;
    left: 12px;
    min-height: 26px;
    max-width: calc(100% - 24px);
    padding: 0 10px;
    border: 1px solid rgba(17, 17, 17, 0.08);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.88);
    color: #3d3d3d !important;
    font-size: 11px;
    line-height: 24px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    box-shadow: 0 8px 22px rgba(17, 17, 17, 0.08);
    backdrop-filter: blur(10px);
    z-index: 2;
}

.ds-product__badge--sale,
.ds-product__image-wrap .onsale {
    border-color: rgba(247, 27, 64, 0.24);
    background: var(--piar-red);
    color: #ffffff !important;
}

.ds-product__content {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    flex: 1;
    padding: 16px 18px 17px;
    text-align: left;
}

.ds-product__category {
    margin: 0 0 6px;
    font-size: 12px;
    line-height: 1.15;
    font-weight: 700;
    letter-spacing: 0.02em;
    text-transform: uppercase;
    color: #4f46e5;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.ds-product__category--analytics {
    color: #1769e0;
}

.ds-product__category--local {
    color: #0891b2;
}

.ds-product__category--seo {
    color: #0b8f4d;
}

.ds-product__category--web-development {
    color: #4f46e5;
}

.ds-product__category--safety {
    color: #047857;
}

.ds-product__category--site-speed {
    color: #d97706;
}

.ds-product__category--ecommerce {
    color: #4f46e5;
}

.ds-product__category--marketing {
    color: #ea7a16;
}

.ds-product__category--support {
    color: #7c3aed;
}

.ds-product__category--integrations {
    color: #5b5bd6;
}

.ds-product__category--payments {
    color: #0891b2;
}

.ds-product__category--ready-solutions {
    color: #0f8f73;
}

.ds-product__category--default {
    color: #4f46e5;
}

.ds-product__title {
    display: block;
    width: 100%;
    margin: 0 0 7px;
    min-height: calc(var(--type-card-title-size) * var(--type-card-title-leading) * 2);
    font-size: var(--type-card-title-size);
    line-height: var(--type-card-title-leading);
    font-weight: var(--type-card-title-weight);
    color: #111111;
    letter-spacing: 0;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.ds-product__title a {
    display: block;
    width: 100%;
    color: inherit;
    text-decoration: none;
}

.ds-product__excerpt {
    min-height: calc(var(--type-card-text-size) * var(--type-card-text-leading) * 2);
    margin: 0 0 14px;
    font-size: var(--type-card-text-size);
    line-height: var(--type-card-text-leading);
    font-weight: var(--type-card-text-weight);
    color: rgba(17, 17, 17, 0.5);
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.ds-product__price {
    display: inline-flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 6px 8px;
    margin: 0;
    font-size: 21px;
    line-height: 1;
    font-weight: 800;
    color: #111111;
    letter-spacing: 0;
}

.ds-product__price del {
    color: #9f9f9f;
    font-size: 16px;
    font-weight: 500;
    text-decoration: line-through;
}

.ds-product__price ins {
    text-decoration: none;
    color: var(--piar-red);
    font-weight: 800;
}

.ds-product__bottom {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-top: auto;
    padding-top: 0;
    border-top: 0;
}

.ds-product__button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    width: auto;
    min-height: 24px;
    padding: 0 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: var(--piar-red);
    font-size: 13.5px;
    line-height: 1;
    font-weight: 800;
    text-decoration: none;
    white-space: nowrap;
    transition: color 0.22s ease;
    box-sizing: border-box;
}

.ds-product__button:hover {
    background: transparent;
    color: var(--piar-red-dark);
}

.ds-product__button:active,
.ds-product__button:focus {
    background: transparent;
    color: var(--piar-red-dark);
    outline: none;
}

.ds-product__button-arrow {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 16px;
    height: 16px;
    font-size: 20px;
    line-height: 1;
    font-weight: 400;
    transform: translateY(-1px);
    transition: transform 0.22s ease;
    color: var(--piar-red);
}

.ds-product__card:hover .ds-product__button-arrow,
.ds-product__button:hover .ds-product__button-arrow {
    transform: translate(5px, -1px);
}

.ds-product__button-text {
    display: inline-block;
}

/* =========================
   SHOP ARCHIVE CONTROLS
========================= */

body.woocommerce-shop .main-contain #content,
body.tax-product_cat .main-contain #content,
body.tax-product_tag .main-contain #content {
    padding-top: var(--piar-space-9);
}

body.tax-product_cat .reactheme-breadcrumbs,
body.tax-product_tag .reactheme-breadcrumbs {
    display: none;
}

body.woocommerce-shop.woocommerce .woocommerce-result-count,
body.tax-product_cat.woocommerce .woocommerce-result-count,
body.tax-product_tag.woocommerce .woocommerce-result-count {
    display: none !important;
}

body.woocommerce-shop.woocommerce .woocommerce-ordering,
body.tax-product_cat.woocommerce .woocommerce-ordering,
body.tax-product_tag.woocommerce .woocommerce-ordering {
    display: none !important;
}

.ds-archive-head {
    margin: 0 0 24px;
    padding: 0;
    font-family: var(--type-font-primary);
}

.ds-archive-title {
    position: relative;
    margin: 0;
    padding-bottom: 18px;
    font-size: var(--type-h1-size);
    line-height: var(--type-h1-leading);
    font-weight: var(--type-h1-weight);
    letter-spacing: var(--type-h1-tracking);
    color: #111111;
}

.ds-archive-title::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 78px;
    height: 4px;
    border-radius: 999px;
    background: var(--piar-red);
}

body.woocommerce-shop.woocommerce ul.products,
body.tax-product_cat.woocommerce ul.products,
body.tax-product_tag.woocommerce ul.products {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 18px !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 0 14px !important;
    clear: both;
}

body.woocommerce-shop.woocommerce ul.products::before,
body.woocommerce-shop.woocommerce ul.products::after,
body.tax-product_cat.woocommerce ul.products::before,
body.tax-product_cat.woocommerce ul.products::after,
body.tax-product_tag.woocommerce ul.products::before,
body.tax-product_tag.woocommerce ul.products::after {
    display: none !important;
}

body.woocommerce-shop.woocommerce ul.products li.product,
body.tax-product_cat.woocommerce ul.products li.product,
body.tax-product_tag.woocommerce ul.products li.product {
    float: none !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

body.page-template-template-digital-shop .main-contain > .container,
body.woocommerce-shop .main-contain > .container,
body.tax-product_cat .main-contain > .container,
body.tax-product_tag .main-contain > .container {
    width: min(var(--site-container), calc(100% - var(--site-gutter) - var(--site-gutter)));
    max-width: none;
    margin-right: auto;
    margin-left: auto;
    padding-right: 0;
    padding-left: 0;
}

body.woocommerce-shop .main-contain > .container > .row > [class*="col-"],
body.tax-product_cat .main-contain > .container > .row > [class*="col-"],
body.tax-product_tag .main-contain > .container > .row > [class*="col-"] {
    padding-right: 0;
    padding-left: 0;
}

body.woocommerce-shop .ds-product__card,
body.tax-product_cat .ds-product__card,
body.tax-product_tag .ds-product__card {
    border-radius: 20px;
    border-color: rgba(17, 17, 17, 0.09);
    background: #ffffff;
    box-shadow: 0 16px 54px rgba(17, 17, 17, 0.026);
}

body.woocommerce-shop .ds-product__card:hover,
body.tax-product_cat .ds-product__card:hover,
body.tax-product_tag .ds-product__card:hover {
    transform: translateY(-2px);
    box-shadow: 0 20px 64px rgba(17, 17, 17, 0.04);
}

body.woocommerce-shop .ds-product__image-wrap,
body.tax-product_cat .ds-product__image-wrap,
body.tax-product_tag .ds-product__image-wrap {
    aspect-ratio: 1.55 / 1;
    border-radius: 19px 19px 0 0;
}

body.woocommerce-shop .ds-product__content,
body.tax-product_cat .ds-product__content,
body.tax-product_tag .ds-product__content {
    padding: 15px 18px 17px;
}

body.woocommerce-shop .ds-product__category,
body.tax-product_cat .ds-product__category,
body.tax-product_tag .ds-product__category {
    margin-bottom: 7px;
}

body.woocommerce-shop .ds-product__title,
body.tax-product_cat .ds-product__title,
body.tax-product_tag .ds-product__title {
    margin-bottom: 8px;
    min-height: calc(20px * 1.2 * 2);
}

body.woocommerce-shop .ds-product__excerpt,
body.tax-product_cat .ds-product__excerpt,
body.tax-product_tag .ds-product__excerpt {
    margin-bottom: 12px;
}

body.woocommerce-shop .ds-product__price,
body.tax-product_cat .ds-product__price,
body.tax-product_tag .ds-product__price {
    font-size: 20px;
}

body.woocommerce-shop .ds-product__button,
body.tax-product_cat .ds-product__button,
body.tax-product_tag .ds-product__button {
    font-size: 14px;
}

body.woocommerce-shop .ds-product__bottom,
body.tax-product_cat .ds-product__bottom,
body.tax-product_tag .ds-product__bottom {
    gap: 14px;
}

@media (min-width: 768px) {
    body.woocommerce-shop .ds-compact-cover__label,
    body.tax-product_cat .ds-compact-cover__label,
    body.tax-product_tag .ds-compact-cover__label {
        font-size: 28px;
        word-break: normal;
        overflow-wrap: normal;
        hyphens: none;
    }

    body.woocommerce-shop .ds-compact-cover__icon,
    body.tax-product_cat .ds-compact-cover__icon,
    body.tax-product_tag .ds-compact-cover__icon {
        top: 68px;
    }

    body.woocommerce-shop .ds-product__excerpt,
    body.tax-product_cat .ds-product__excerpt,
    body.tax-product_tag .ds-product__excerpt {
        min-height: calc(14px * 1.45 * 3);
        -webkit-line-clamp: 3;
    }
}

.ds-archive-cats {
    clear: both;
    display: flex;
    flex-wrap: wrap;
    gap: 10px 12px;
    width: 100%;
    margin: 0 0 30px;
    padding: 0;
    overflow: visible;
    scrollbar-width: none;
}

.ds-archive-cats::-webkit-scrollbar {
    display: none;
}

.ds-archive-cat {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    padding: 0 20px;
    border: 1px solid rgba(17, 17, 17, 0.1);
    border-radius: 999px;
    background: #ffffff;
    color: rgba(17, 17, 17, 0.86);
    font-family: var(--type-font-primary);
    font-size: 14px;
    line-height: 1;
    font-weight: 700;
    text-decoration: none;
    white-space: nowrap;
    box-shadow: none;
    transition: color 0.22s ease, background 0.22s ease, border-color 0.22s ease;
}

.ds-archive-cat:hover {
    border-color: rgba(247, 27, 64, 0.25);
    color: var(--piar-red);
}

.ds-archive-cat.is-active {
    border-color: var(--piar-red);
    background: var(--piar-red);
    color: #ffffff;
    box-shadow: none;
}

body.woocommerce-shop.woocommerce nav.woocommerce-pagination {
    display: none !important;
}

.ds-catalog {
    position: relative;
    margin-bottom: 80px;
}

.ds-catalog ul.products {
    transition: opacity 0.22s ease;
}

.ds-catalog.is-replacing {
    pointer-events: none;
}

.ds-catalog__status {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 28px;
    margin: 22px 0 0;
    font-family: var(--type-font-primary);
    font-size: 14px;
    line-height: 1.4;
    font-weight: 600;
    color: rgba(17, 17, 17, 0.52);
    text-align: center;
}

.ds-catalog__status:empty {
    display: none;
}

.ds-catalog__status[data-state="loading"]::before {
    content: "";
    width: 16px;
    height: 16px;
    margin-right: 9px;
    border: 2px solid rgba(17, 17, 17, 0.12);
    border-top-color: var(--piar-red);
    border-radius: 50%;
    animation: ds-catalog-spin 0.8s linear infinite;
}

.ds-catalog__status[data-state="empty"],
.ds-catalog__status[data-state="error"] {
    min-height: 96px;
    margin: 28px 0 0;
    padding: 28px 24px;
    border: 1px solid rgba(17, 17, 17, 0.08);
    border-radius: 16px;
    background: rgba(248, 248, 249, 0.8);
    color: rgba(17, 17, 17, 0.62);
}

.ds-catalog__retry {
    margin-left: 10px;
    padding: 0;
    border: 0;
    background: transparent;
    color: var(--piar-red);
    font: inherit;
    font-weight: 800;
    cursor: pointer;
}

.ds-catalog__sentinel {
    width: 100%;
    height: 1px;
}

@keyframes ds-catalog-spin {
    to {
        transform: rotate(360deg);
    }
}

@media (max-width: 767px) {
    body.woocommerce-shop .main-contain #content,
    body.tax-product_cat .main-contain #content,
    body.tax-product_tag .main-contain #content {
        padding-top: var(--piar-space-8);
    }

    .ds-archive-head {
        margin-bottom: 22px;
    }

    .ds-archive-title {
        padding-bottom: 14px;
        font-size: var(--type-h1-size);
        line-height: var(--type-h1-leading);
    }

    .ds-archive-title::after {
        width: 64px;
        height: 3px;
    }

    body.woocommerce-shop .main-contain > .container,
    body.tax-product_cat .main-contain > .container,
    body.tax-product_tag .main-contain > .container {
        width: min(var(--site-container), calc(100% - var(--site-gutter) - var(--site-gutter)));
        max-width: none;
    }

    body.woocommerce-shop.woocommerce ul.products,
    body.tax-product_cat.woocommerce ul.products,
    body.tax-product_tag.woocommerce ul.products {
        grid-template-columns: 1fr !important;
        gap: 14px !important;
        padding-bottom: 8px !important;
    }

    body.woocommerce-shop .ds-product__card,
    body.tax-product_cat .ds-product__card,
    body.tax-product_tag .ds-product__card {
        border-radius: 16px;
        box-shadow: 0 10px 30px rgba(17, 17, 17, 0.028);
    }

    body.woocommerce-shop .ds-product__image-wrap,
    body.tax-product_cat .ds-product__image-wrap,
    body.tax-product_tag .ds-product__image-wrap {
        border-radius: 15px 15px 0 0;
        aspect-ratio: 1.65 / 1;
    }

    body.woocommerce-shop .ds-product__content,
    body.tax-product_cat .ds-product__content,
    body.tax-product_tag .ds-product__content {
        padding: 14px 16px 16px;
    }

    body.woocommerce-shop .ds-compact-cover__label,
    body.tax-product_cat .ds-compact-cover__label,
    body.tax-product_tag .ds-compact-cover__label {
        font-size: 33px;
    }

    body.woocommerce-shop .ds-product__category,
    body.tax-product_cat .ds-product__category,
    body.tax-product_tag .ds-product__category {
        margin-bottom: 6px;
        font-size: 10px;
    }

    body.woocommerce-shop .ds-product__title,
    body.tax-product_cat .ds-product__title,
    body.tax-product_tag .ds-product__title {
        min-height: calc(18px * 1.2 * 2);
        margin-bottom: 6px;
        font-size: 18px;
        line-height: 1.2;
        font-weight: 700;
    }

    body.woocommerce-shop .ds-product__excerpt,
    body.tax-product_cat .ds-product__excerpt,
    body.tax-product_tag .ds-product__excerpt {
        min-height: calc(12.5px * 1.4 * 3);
        margin-bottom: 10px;
        font-size: 12.5px;
        line-height: 1.4;
        color: rgba(17, 17, 17, 0.5);
        -webkit-line-clamp: 3;
    }

    body.woocommerce-shop .ds-product__bottom,
    body.tax-product_cat .ds-product__bottom,
    body.tax-product_tag .ds-product__bottom {
        align-items: center;
        flex-direction: row;
        gap: 12px;
    }

    body.woocommerce-shop .ds-product__price,
    body.tax-product_cat .ds-product__price,
    body.tax-product_tag .ds-product__price {
        font-size: 16px;
    }

    body.woocommerce-shop .ds-product__price del,
    body.tax-product_cat .ds-product__price del,
    body.tax-product_tag .ds-product__price del {
        font-size: 12px;
    }

    body.woocommerce-shop .ds-product__button,
    body.tax-product_cat .ds-product__button,
    body.tax-product_tag .ds-product__button {
        gap: 4px;
        font-size: 12px;
    }

    body.woocommerce-shop .ds-product__button-arrow,
    body.tax-product_cat .ds-product__button-arrow,
    body.tax-product_tag .ds-product__button-arrow {
        width: 12px;
        height: 12px;
        font-size: 16px;
    }

    .ds-archive-cats {
        display: grid;
        grid-auto-flow: column;
        grid-auto-columns: max-content;
        grid-template-rows: repeat(2, 40px);
        gap: 8px;
        width: calc(100% + 6px);
        margin-right: -6px;
        margin-bottom: 24px;
        padding: 0 6px 2px 0;
        overflow-x: auto;
        overflow-y: hidden;
        overscroll-behavior-x: contain;
        -webkit-overflow-scrolling: touch;
    }

    .ds-archive-cat {
        min-height: 40px;
        padding: 0 15px;
        font-size: 13px;
    }

    .ds-catalog {
        margin-bottom: 64px;
    }

    .ds-catalog__status[data-state="empty"],
    .ds-catalog__status[data-state="error"] {
        min-height: 92px;
        margin-top: 26px;
        padding: 26px 18px;
        border-radius: 16px;
    }
}

@media (min-width: 768px) and (max-width: 1180px) {
    body.woocommerce-shop .main-contain #content,
    body.tax-product_cat .main-contain #content,
    body.tax-product_tag .main-contain #content {
        padding-top: 28px;
    }

    body.woocommerce-shop .main-contain > .container,
    body.tax-product_cat .main-contain > .container,
    body.tax-product_tag .main-contain > .container {
        width: min(var(--site-container), calc(100% - var(--site-gutter) - var(--site-gutter)));
        max-width: none;
    }

    body.woocommerce-shop.woocommerce ul.products,
    body.tax-product_cat.woocommerce ul.products,
    body.tax-product_tag.woocommerce ul.products {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        gap: 16px !important;
    }
}

/* =========================
   SEARCH RESULTS HEAD
========================= */

.ds-search-results-head {
    padding: 10px 0 28px;
}

.ds-search-results-head__label {
    display: inline-block;
    margin-bottom: 10px;
    font-size: 12px;
    line-height: 1;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--piar-red);
}

.ds-search-results-head__title {
    margin: 0;
    font-family: var(--type-font-primary);
    font-size: 42px;
    line-height: 1;
    font-weight: 700;
    text-transform: uppercase;
    color: var(--piar-text);
}

/* =========================
   ASSIST BLOCK — DARK CTA
========================= */

.ds-assist {
    display: grid;
    grid-template-columns: minmax(0, 1.4fr) minmax(280px, 0.8fr);
    gap: 28px;
    align-items: stretch;
    padding: 38px 40px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 24px;
    box-shadow: 0 20px 60px rgba(0,0,0,0.25);
    background: radial-gradient(circle at left top, rgba(247,27,64,0.15), transparent 40%), #0f1014;
    overflow: hidden;
}

.ds-assist__content {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.ds-assist__label {
    display: inline-block;
    margin-bottom: 10px;
    font-size: 12px;
    line-height: 1;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--piar-red);
}

.ds-assist__title {
    margin: 0 0 14px;
    font-family: var(--type-font-primary);
    font-size: 42px;
    line-height: 0.98;
    font-weight: 700;
    text-transform: none;
    color: #ffffff;
}

.ds-assist__text {
    max-width: 780px;
    margin: 0;
    font-size: 16px;
    line-height: 1.75;
    color: rgba(255, 255, 255, 0.78);
}

.ds-assist__action {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: stretch;
    gap: 14px;
    padding-left: 8px;
    width: 100%;
    max-width: 420px;
}

.ds-assist__messengers {
    display: flex;
    gap: 12px;
    margin-top: 6px;
    width: 100%;
}

.ds-assist__messenger {
    flex: 1 1 0;
    min-width: 0;
    height: 52px;
    padding: 0 18px;

    display: flex;
    align-items: center;
    justify-content: center;

    text-decoration: none;
    font-size: 16px;
    font-weight: 600;
    line-height: 1;
    color: #fff;

    border-radius: 10px;
    box-sizing: border-box;
    transition: 0.25s ease;
}

.ds-assist__messenger--wa {
    background: #25D366;
}

.ds-assist__messenger--wa:hover {
    background: #1ebe5d;
}

.ds-assist__messenger--tg {
    background: #229ED9;
}

.ds-assist__messenger--tg:hover {
    background: #1a8cc3;
}

.ds-assist__note {
    font-size: 13px;
    line-height: 1.5;
    color: rgba(255, 255, 255, 0.52);
}

/* =========================
   SHOP INFO COMBINED BLOCK
========================= */

.ds-block--shop-info {
    margin-bottom: 72px;
}

.ds-shop-info {
    display: grid;
    grid-template-columns: minmax(0, 1.25fr) minmax(320px, 0.75fr);
    gap: 36px;
    align-items: start;
}

.ds-shop-info__content {
    min-width: 0;
}

.ds-shop-info__label {
    display: inline-block;
    margin-bottom: 10px;
    font-size: 12px;
    line-height: 1;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--piar-red);
}

.ds-shopInfo__title,
.ds-shop-info__title {
    margin: 0 0 18px;
    max-width: 760px;
    font-family: var(--type-font-primary);
    font-size: 42px;
    line-height: 0.98;
    font-weight: 700;
    text-transform: none;
    color: var(--piar-text);
}

.ds-shop-info__text {
    display: grid;
    gap: var(--space-paragraph-desktop);
    max-width: 760px;
}

.ds-shop-info__text p {
    margin: 0;
    font-size: 16px;
    line-height: 1.8;
    color: var(--piar-muted);
}

.ds-shop-info__text strong {
    color: var(--piar-text);
    font-weight: 700;
}

.ds-shop-info__stats {
    display: flex;
    flex-direction: column;
    gap: 14px;
    height: 100%;
}

.ds-stat-card {
    display: flex;
    flex-direction: column;
    justify-content: center;
    flex: 1;
    padding: 22px 20px;
    border: 1px solid #ececec;
    background: #ffffff;
    transition: 0.25s ease;
}

.ds-stat-card:hover {
    border-color: #e2e2e2;
    box-shadow: 0 6px 18px rgba(0,0,0,0.04);
}

.ds-stat-card__value {
    margin-bottom: 8px;
    font-family: var(--type-font-primary);
    font-size: 36px;
    line-height: 0.95;
    font-weight: 700;
    text-transform: uppercase;
    color: var(--piar-text);
}

.ds-stat-card__label {
    font-size: 14px;
    line-height: 1.5;
    color: var(--piar-muted);
}

/* =========================
   MOBILE
========================= */

@media (max-width: 767px) {
    .ds-wrap {
        margin-top: 10px;
    }

    .ds-hero {
        padding: 24px 0 20px;
    }

    .ds-hero::before {
        display: none;
    }

    .ds-hero__inner {
        display: block;
    }

    .ds-hero__content {
        max-width: 100%;
        transform: none;
    }

    .ds-hero__label {
        margin-bottom: var(--space-eyebrow-heading-mobile);
        font-size: var(--type-eyebrow-size);
        letter-spacing: var(--type-eyebrow-tracking);
    }

    .ds-hero__title {
        font-size: var(--type-display-size);
        line-height: var(--type-display-leading);
        margin-bottom: 12px;
    }

    .ds-hero__text {
        font-size: var(--type-hero-copy-mobile);
        line-height: var(--type-body-large-leading);
        margin-bottom: 16px;
    }

    .ds-hero__search-input {
        height: 56px;
        padding: 0 122px 0 46px;
        font-size: 16px;
        border-radius: 12px;
        box-shadow: none;
    }

    .ds-hero__search-submit {
        right: 6px;
        width: 108px;
        height: 42px;
        border-radius: 10px;
    }

    .ds-hero__search-submit::before {
        content: "Найти";
        font-size: 14px;
        font-weight: 700;
        white-space: nowrap;
    }

    .ds-hero__search-submit svg {
        display: none;
    }

    .ds-hero__meta {
        margin-top: 10px;
        font-size: var(--type-meta-size);
    }

    .ds-hero__benefits {
        display: flex;
        flex-wrap: nowrap;
        gap: 8px;
        margin-top: 12px;
        max-width: 100%;
        overflow-x: auto;
        overflow-y: hidden;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
    }

    .ds-hero__benefits::-webkit-scrollbar {
        display: none;
    }

    .ds-hero-benefit {
        grid-template-columns: 28px max-content;
        flex: 0 0 auto;
        gap: 8px;
        align-items: center;
        min-height: 44px;
        padding: 0 13px;
    }

    .ds-hero-benefit__icon {
        width: 28px;
        height: 28px;
        border-radius: 8px;
        flex-basis: 28px;
    }

    .ds-hero-benefit__icon img {
        width: 22px;
        height: 22px;
    }

    .ds-hero-benefit strong {
        font-size: 12px;
        white-space: nowrap;
    }

    .ds-hero__visual {
        min-height: 270px;
        margin-top: 24px;
    }

    .ds-hero__visual::before {
        top: 48%;
        left: 52%;
        width: min(86%, 300px);
        height: 230px;
        border-radius: 50%;
        filter: blur(30px);
        opacity: 0.62;
        transform: translate(-50%, -50%);
    }

    .ds-hero__mockup {
        width: min(86%, 320px);
        transform: translate(4px, -6px) rotate(4deg);
    }

    .ds-hero-followup {
        margin-top: 10px;
    }

    .ds-hero-directions {
        grid-template-columns: 1fr;
        gap: 0;
        border-radius: 18px;
    }

    .ds-hero-direction {
        grid-template-columns: 54px minmax(0, 1fr);
        gap: 16px;
        min-height: auto;
        padding: 18px;
        border-top: 1px solid #eeeeee;
        border-left: 0;
    }

    .ds-hero-direction:first-child {
        border-top: 0;
    }

    .ds-hero-direction__icon {
        width: 48px;
        height: 48px;
        border-radius: 11px;
    }

    .ds-hero-direction:nth-child(1) .ds-hero-direction__icon {
        background: #f1ecff;
    }

    .ds-hero-direction:nth-child(2) .ds-hero-direction__icon {
        background: #eaf7ee;
    }

    .ds-hero-direction:nth-child(3) .ds-hero-direction__icon {
        background: #e8f7f7;
    }

    .ds-hero-direction__icon img {
        width: 30px;
        height: 30px;
    }

    .ds-hero-direction h2 {
        font-size: 18px;
        margin-bottom: 8px;
    }

    .ds-hero-direction p {
        font-size: 13px;
    }

    .ds-block__title {
        font-size: var(--type-h2-size);
    }

    .ds-block--popular .ds-block__title {
        max-width: 220px;
    }

    .ds-block--ready .ds-block__title {
        max-width: 220px;
    }

    .ds-categories-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 12px;
    }

    .ds-category {
        min-height: 166px;
        padding: 16px 14px 22px;
        border-radius: 16px;
    }

    .ds-category::after {
        right: 14px;
        bottom: 14px;
        width: 15px;
        height: 15px;
    }

    .ds-category__media {
        width: 54px;
        height: 54px;
        margin-bottom: 12px;
        border-radius: 14px;
    }

    .ds-category__media img {
        max-width: calc(100% - 14px);
        max-height: calc(100% - 14px);
    }

    .ds-category__title {
        max-width: calc(100% - 20px);
        font-size: 16px;
        line-height: 1.16;
    }

    .ds-category__desc {
        max-width: calc(100% - 18px);
        margin-top: 6px;
        font-size: 12.5px;
        line-height: 1.42;
    }

    .ds-categories-action {
        margin-top: 20px;
    }

    .ds-categories-action__button {
        width: auto;
        min-height: 42px;
        padding: 0 36px;
        border-radius: 10px;
        font-size: 14px;
    }

    .ds-tags {
        gap: 9px;
    }

    .ds-tag {
        min-height: 40px;
        padding: 0 13px 0 25px;
        font-size: 13px;
    }

    /* Home product sliders */
    .ds-featured-products,
    .ds-ready-products {
        overflow-x: auto;
        overflow-y: hidden;
        -webkit-overflow-scrolling: touch;
        padding: 10px 8px 18px;
        margin: -10px -8px -18px;
    }

    .ds-featured-products ul.products,
    .ds-ready-products ul.products {
        display: flex !important;
        flex-wrap: nowrap !important;
        gap: 14px;
        padding-top: 8px;
        padding-bottom: 8px;
        width: auto;
        min-width: max-content;
    }

    .ds-featured-products ul.products li.product,
    .ds-ready-products ul.products li.product {
        flex: 0 0 260px;
        width: 260px !important;
    }

    /* Ready solutions — compact horizontal cards */

    .ds-ready-products ul.products {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 12px !important;
        row-gap: 12px !important;
    }

    .ds-ready-products ul.products li.product {
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    .ds-ready-products ul.products li.product .ds-product__card {
        display: grid;
        grid-template-columns: 108px minmax(0, 1fr);
        gap: 14px;
        align-items: stretch;
        padding: 0;
        border-radius: 18px;
        min-height: 116px;
        position: relative;
        box-shadow: 0 8px 26px rgba(17, 17, 17, 0.026);
    }

    .ds-ready-products ul.products li.product .ds-product__image-wrap {
        width: 108px;
        height: 100%;
        min-height: 116px;
        flex: 0 0 108px;
        aspect-ratio: auto;
        border-radius: 17px 0 0 17px;
        margin: 0;
        overflow: hidden;
        display: block;
        background: #f6f6f7;
    }

    .ds-ready-products ul.products li.product .ds-product__image-wrap img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center;
        display: block;
        border-radius: 17px 0 0 17px;
    }

    .ds-ready-products ul.products li.product .ds-product__content {
        padding: 14px 14px 14px 0;
        display: flex;
        flex-direction: column;
        min-width: 0;
        min-height: 116px;
    }

    .ds-ready-products ul.products li.product .ds-product__title {
        font-size: 17px;
        line-height: 1.18;
        font-weight: 700;
        margin: 0 38px 10px 0;
        min-height: auto;
        display: -webkit-box;
        -webkit-line-clamp: 3;
        -webkit-box-orient: vertical;
        overflow: hidden;
    }

    .ds-ready-products ul.products li.product .ds-product__excerpt {
        display: none;
    }

    .ds-ready-products ul.products li.product .ds-product__price {
        margin: 0;
        font-size: 17px;
        line-height: 1;
        font-weight: 800;
    }

    .ds-ready-products ul.products li.product .ds-product__price del {
        font-size: 13px;
    }

    .ds-ready-products ul.products li.product .ds-product__bottom {
        position: static;
        right: auto;
        bottom: auto;
        margin-top: auto;
        padding-top: 0;
        width: 100%;
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
        gap: 14px;
        border-top: 0;
    }

    /* В ready-products на mobile скрываем текст кнопки, оставляем только стрелку */
    .ds-ready-products ul.products li.product .ds-product__button {
        width: 34px;
        min-width: 34px;
        height: 34px;
        min-height: 34px;
        padding: 0;
        border-radius: 999px;
        background: rgba(247, 27, 64, 0.08);
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 0;
        line-height: 0;
        color: transparent;
        overflow: hidden;
        text-indent: -9999px;
        position: relative;
    }

    .ds-ready-products ul.products li.product:nth-child(2n) .ds-product__button {
        background: rgba(45, 128, 220, 0.09);
    }

    .ds-ready-products ul.products li.product:nth-child(3n) .ds-product__button {
        background: rgba(48, 168, 118, 0.1);
    }

    .ds-ready-products ul.products li.product:nth-child(4n) .ds-product__button {
        background: rgba(200, 135, 67, 0.1);
    }

    .ds-ready-products ul.products li.product .ds-product__button-text {
        display: none !important;
    }

    .ds-ready-products ul.products li.product .ds-product__button-arrow {
        position: absolute;
        inset: 0;
        margin: auto;
        width: 16px;
        height: 16px;
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 16px;
        line-height: 1;
        color: var(--piar-red);
        text-indent: 0;
        transform: translateX(1px);
    }

    .ds-ready-products ul.products {
        display: flex !important;
        flex-wrap: nowrap !important;
        gap: 14px !important;
        width: auto;
        min-width: max-content;
    }

    .ds-ready-products ul.products li.product {
        flex: 0 0 260px;
        width: 260px !important;
        padding: 0 !important;
    }

    .ds-ready-products ul.products li.product .ds-product__card {
        display: flex;
        flex-direction: column;
        gap: 0;
        min-height: 376px;
        padding: 0;
        border-radius: 20px;
        box-shadow: 0 18px 60px rgba(17, 17, 17, 0.024);
    }

    .ds-featured-products ul.products li.product .ds-product__card {
        min-height: 376px;
    }

    .ds-ready-products ul.products li.product .ds-product__image-wrap {
        width: 100%;
        height: auto;
        min-height: 0;
        flex: 0 0 auto;
        aspect-ratio: 1.46 / 1;
        border-radius: 19px 19px 0 0;
    }

    .ds-ready-products ul.products li.product .ds-product__image-wrap img {
        border-radius: 0;
    }

    .ds-ready-products ul.products li.product .ds-product__content {
        padding: 8px 14px 14px;
        min-height: 0;
    }

    .ds-ready-products ul.products li.product .ds-product__title {
        min-height: calc(18px * 1.2 * 3);
        margin: 0 0 7px;
        font-size: 18px;
        line-height: 1.2;
    }

    .ds-ready-products ul.products li.product .ds-product__excerpt {
        display: -webkit-box;
        min-height: calc(13px * 1.42 * 3);
        margin-bottom: 10px;
        font-size: 13px;
        line-height: 1.42;
        -webkit-line-clamp: 3;
        -webkit-box-orient: vertical;
        overflow: hidden;
    }

    .ds-featured-products ul.products li.product .ds-product__excerpt,
    .ds-ready-products ul.products li.product .ds-product__excerpt {
        min-height: calc(13px * 1.42 * 3);
        font-size: 13px;
        line-height: 1.42;
        -webkit-line-clamp: 3;
    }

    .ds-ready-products ul.products li.product .ds-product__price {
        font-size: 20px;
    }

    .ds-ready-products ul.products li.product .ds-product__bottom {
        margin-top: auto;
        padding-top: 0;
        border-top: 0;
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
    }

    .ds-ready-products ul.products li.product .ds-product__button,
    .ds-featured-products ul.products li.product .ds-product__button {
        width: auto;
        min-width: 0;
        min-height: 32px;
        height: auto;
        padding: 0;
        border-radius: 0;
        background: transparent;
        box-shadow: none;
        font-size: 13px;
        line-height: 1;
        color: var(--piar-red);
        text-indent: 0;
    }

    .ds-ready-products ul.products li.product .ds-product__button-text,
    .ds-featured-products ul.products li.product .ds-product__button-text {
        display: inline-block !important;
    }

    .ds-ready-products ul.products li.product .ds-product__button-arrow,
    .ds-featured-products ul.products li.product .ds-product__button-arrow {
        position: static;
        inset: auto;
        width: 14px;
        height: 14px;
        margin: 0;
        font-size: 18px;
        color: var(--piar-red);
        transform: translateY(-1px);
    }

    /* Общие mobile product card tweaks */
    .ds-product__card {
        border-radius: 20px;
    }

    .ds-product__image-wrap {
        margin: 0;
        border-radius: 19px 19px 0 0;
        aspect-ratio: 1.46 / 1;
    }

    .ds-product__image-wrap img {
        height: 100%;
    }

    .ds-product__content {
        padding: 8px 14px 14px;
    }

    .ds-product__title {
        font-size: var(--type-card-title-size);
        line-height: var(--type-card-title-leading);
        min-height: calc(var(--type-card-title-size) * var(--type-card-title-leading) * 3);
        margin-bottom: 7px;
        font-weight: var(--type-card-title-weight);
    }

    .ds-product__excerpt {
        min-height: calc(var(--type-card-text-size) * var(--type-card-text-leading) * 2);
        margin-bottom: 10px;
        font-size: var(--type-card-text-size);
        line-height: var(--type-card-text-leading);
        color: rgba(17, 17, 17, 0.5);
        -webkit-line-clamp: 3;
    }

    .ds-product__price {
        font-size: 20px;
    }

    .ds-product__price del {
        font-size: 14px;
    }

    .ds-search-results-head__title {
        font-size: 32px;
    }

    .ds-assist {
        grid-template-columns: 1fr;
        gap: 20px;
        padding: 46px 20px !important;
        border-radius: 20px;
        margin-top: 16px;
        margin-bottom: 16px;
    }

    .ds-assist__title {
        font-size: 32px;
        line-height: 1;
    }

    .ds-assist__text {
        font-size: 15px;
        line-height: 1.7;
    }

    .ds-assist__action {
        padding-left: 0;
        align-items: stretch;
        max-width: none;
        width: 100%;
    }

    .ds-assist__messengers {
        display: flex;
        flex-direction: column;
        width: 100%;
        gap: 12px;
        margin-top: 10px;
    }

    .ds-assist__messenger {
        width: 100%;
        min-height: 56px;
        padding: 0 18px;
        border-radius: 10px;

        display: flex;
        align-items: center;
        justify-content: center;

        font-size: 17px;
        font-weight: 600;
        line-height: 1;
        box-sizing: border-box;
    }

    .ds-shop-info {
        grid-template-columns: 1fr;
        gap: 24px;
    }

    .ds-block--shop-info {
        margin-bottom: 48px;
    }

    .ds-shop-info__title {
        font-size: 32px;
        line-height: 1;
        max-width: none;
    }

    .ds-shop-info__text {
        gap: var(--space-paragraph-mobile);
        max-width: none;
    }

    .ds-shop-info__text p {
        font-size: 15px;
        line-height: 1.75;
    }

    .ds-shop-info__stats {
        flex-direction: column;
        height: auto;
        gap: 14px;
    }

    .ds-stat-card {
        flex: unset;
        padding: 20px 18px;
    }

    .ds-stat-card__value {
        font-size: 34px;
    }
}

/* =========================
   TABLET
========================= */

@media (min-width: 768px) and (max-width: 1024px) {
    .ds-wrap {
        margin-top: 70px;
    }

    .ds-hero {
        padding: 34px 0 28px;
    }

    .ds-hero__inner {
        grid-template-columns: 1fr;
        gap: 34px;
    }

    .ds-hero__content {
        max-width: 760px;
        transform: none;
    }

    .ds-hero__title {
        font-size: var(--type-display-size);
    }

    .ds-hero__text {
        font-size: var(--type-body-large-size);
    }

    .ds-hero__visual {
        min-height: 380px;
    }

    .ds-hero__mockup {
        width: min(60%, 380px);
        transform: translate(12px, 0) rotate(4deg);
    }

    .ds-hero-directions {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .ds-hero-direction {
        grid-template-columns: 1fr;
        min-height: 172px;
        padding: 22px 20px;
    }

    .ds-hero-direction__icon {
        width: 56px;
        height: 56px;
    }

    .ds-hero-direction h2 {
        font-size: 19px;
    }

    .ds-block {
        margin-top: var(--space-section-before-tablet);
    }

    .ds-block--tasks {
        margin-top: 96px;
        margin-bottom: 24px;
    }

    .ds-block__title {
        font-size: var(--type-h2-size);
    }

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

    .ds-category {
        min-height: 184px;
        padding: 20px 18px 24px;
        border-radius: 18px;
    }

    .ds-category__media {
        width: 58px;
        height: 58px;
        margin-bottom: 16px;
    }

    .ds-category__title {
        font-size: 17px;
    }

    .ds-category__desc {
        font-size: 13.5px;
    }

    .ds-featured-products ul.products,
    .ds-ready-products ul.products {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        gap: 20px;
    }

    .ds-assist {
        grid-template-columns: 1fr;
        gap: 20px;
        padding: 30px 28px;
    }

    .ds-assist__title {
        font-size: 36px;
    }

    .ds-block--shop-info {
        margin-bottom: 64px;
    }

    .ds-shop-info {
        grid-template-columns: 1fr;
        gap: 28px;
    }

    .ds-shop-info__title {
        font-size: 36px;
        max-width: none;
    }

    .ds-shop-info__text {
        max-width: none;
    }

    .ds-shop-info__text p {
        font-size: 15px;
        line-height: 1.75;
    }

    .ds-shop-info__stats {
        flex-direction: column;
    }
}

/* =========================
   DESKTOP
========================= */

@media (min-width: 1025px) {
    .ds-hero {
        padding: 22px 0 24px;
        min-height: 500px;
    }

    .ds-hero__title {
        font-size: var(--type-display-size);
        line-height: var(--type-display-leading);
        margin-bottom: 2px;
    }

    .ds-hero__text {
        max-width: 610px;
        margin-bottom: 26px;
        font-size: var(--type-body-large-size);
    }

    .ds-block {
        margin-top: var(--space-section-before-desktop);
    }

    .ds-block--tasks {
        margin-top: 104px;
        margin-bottom: 24px;
    }

    .ds-block__title {
        font-size: var(--type-h2-size);
    }

    .ds-categories-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 22px;
    }

    .ds-category {
        min-height: 188px;
        padding: 22px 20px 26px;
        border-radius: 18px;
    }

    .ds-category__media {
        width: 62px;
        height: 62px;
        margin-bottom: 18px;
    }

    .ds-category__title {
        font-size: 18px;
    }

    .ds-category__desc {
        font-size: 14px;
    }

    .ds-featured-products ul.products,
    .ds-ready-products ul.products {
        gap: 18px;
    }

    .ds-featured-products ul.products {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    }

    .ds-ready-products ul.products {
        grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    }
}

@media (min-width: 768px) {

    .ds-hero__search-submit {
        min-width: 130px;
        padding: 0 36px;
    }

    .ds-hero__search-submit::before {
        content: "Найти услугу";
        font-size: 15px;
        font-weight: 600;
        white-space: nowrap;
    }

    .ds-hero__search-submit svg {
        display: none;
    }
}

/* =========================
   SINGLE PRODUCT SERVICE PAGE
========================= */

.single-product.woocommerce {
    --ds-single-red: #F71B40;
    --ds-single-blue: #246bff;
    --ds-single-green: #14a85a;
    --ds-single-purple: #7c4dff;
    --ds-single-ink: #111318;
    --ds-single-muted: #687082;
    --ds-single-line: rgba(17, 19, 24, 0.1);
    font-family: var(--type-font-primary);
    background: #fff;
}

.single-product.woocommerce .main-contain > .container {
    width: min(var(--site-container), calc(100% - var(--site-gutter) - var(--site-gutter)));
    max-width: none;
    margin-right: auto;
    margin-left: auto;
    padding-right: 0;
    padding-left: 0;
}

.single-product.woocommerce .main-contain > .container > .row > [class*="col-"] {
    padding-right: 0;
    padding-left: 0;
}

.single-product.woocommerce #content {
    padding-top: 32px;
    padding-bottom: 72px;
}

.single-product.woocommerce .ds-single-breadcrumbs {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    margin: 0 0 16px;
    color: #7b8494;
    font-family: var(--type-font-primary);
    font-size: 13px;
    font-weight: 600;
    line-height: 1.35;
}

.single-product.woocommerce .ds-single-breadcrumbs a {
    color: #6c7585;
    text-decoration: none;
    transition: color 0.2s ease;
}

.single-product.woocommerce .ds-single-breadcrumbs a:hover {
    color: var(--ds-single-red);
}

.single-product.woocommerce .ds-single-breadcrumbs span[aria-hidden="true"] {
    color: #a2a9b5;
}

.single-product.woocommerce .ds-single-breadcrumbs__current {
    max-width: min(520px, 100%);
    overflow: hidden;
    color: #4f5665;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.single-product.woocommerce div.product {
    display: grid;
    grid-template-columns: minmax(0, 1.48fr) minmax(390px, 0.86fr);
    gap: 16px;
    align-items: start;
}

.single-product.woocommerce div.product::before,
.single-product.woocommerce div.product::after {
    display: none;
}

.single-product.woocommerce .ds-single-visual,
.single-product.woocommerce div.product .summary.entry-summary,
.single-product.woocommerce div.product .woocommerce-tabs,
.single-product.woocommerce .related.products {
    float: none !important;
    width: 100% !important;
}

.single-product.woocommerce .ds-single-visual {
    grid-column: 1 / 2;
    grid-row: 1;
    position: relative;
    min-height: 360px;
    overflow: hidden;
    border-radius: 14px;
    background: transparent;
    box-shadow: 0 18px 44px rgba(17, 19, 24, 0.14);
}

.single-product.woocommerce .ds-service-cover {
    --cover-color-1: #4F46E5;
    --cover-color-2: #818CF8;
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    align-items: stretch;
    min-height: 360px;
    height: 100%;
    overflow: hidden;
    border-radius: inherit;
    background:
        radial-gradient(circle at 84% 24%, color-mix(in srgb, var(--cover-color-2) 28%, transparent), transparent 28%),
        radial-gradient(circle at 68% 88%, color-mix(in srgb, var(--cover-color-1) 32%, transparent), transparent 30%),
        linear-gradient(135deg, #080815 0%, #111126 48%, color-mix(in srgb, var(--cover-color-1) 52%, #16112a) 100%);
    color: #fff;
}

.single-product.woocommerce .ds-service-cover--image {
    display: block;
    min-height: 360px;
    background: #111318;
}

.single-product.woocommerce .ds-service-cover__content {
    position: relative;
    z-index: 3;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    width: min(78%, 760px);
    max-width: 760px;
    min-height: 360px;
    padding: 32px 30px;
}

.single-product.woocommerce .ds-service-cover__category {
    display: inline-flex;
    align-items: center;
    min-height: 0;
    padding: 0;
    border-radius: 0;
    background: transparent;
    color: color-mix(in srgb, var(--cover-color-2) 88%, #fff);
    font-size: 12px;
    font-weight: 800;
    line-height: 1;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.single-product.woocommerce .ds-service-cover__title {
    margin: 18px 0 14px;
    color: #fff;
    font-size: clamp(30px, 3.1vw, 44px);
    font-weight: 800;
    line-height: 1.1;
    letter-spacing: 0;
}

.single-product.woocommerce .ds-service-cover__subtitle {
    max-width: 640px;
    margin: 0;
    color: rgba(255, 255, 255, 0.88);
    font-size: 15px;
    font-weight: 500;
    line-height: 1.62;
    display: -webkit-box;
    overflow: hidden;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
}

.single-product.woocommerce .ds-service-cover__points {
    display: grid;
    gap: 9px;
    margin: 20px 0 0;
    padding: 0;
    list-style: none;
}

.single-product.woocommerce .ds-service-cover__points li {
    display: flex;
    align-items: center;
    gap: 13px;
    color: #fff;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.3;
}

.single-product.woocommerce .ds-single-visual svg,
.single-product.woocommerce .ds-single-trust svg,
.single-product.woocommerce .ds-single-payment-note svg,
.single-product.woocommerce .ds-single-specs svg {
    width: 19px;
    height: 19px;
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.single-product.woocommerce .ds-service-cover__points svg {
    padding: 5px;
    width: 26px;
    height: 26px;
    border-radius: 8px;
    background: color-mix(in srgb, var(--cover-color-1) 22%, transparent);
    color: color-mix(in srgb, var(--cover-color-2) 82%, #fff);
}

.single-product.woocommerce .ds-service-cover__visual {
    position: absolute;
    right: 26px;
    bottom: 28px;
    z-index: 2;
    width: 22% !important;
    max-width: 190px;
    margin: 0 !important;
    transform: rotate(-4deg);
    transform-origin: center bottom;
}

.single-product.woocommerce .ds-service-cover__media {
    position: absolute;
    inset: 0;
    z-index: 1;
    overflow: hidden;
    margin: 0 !important;
    border-radius: inherit;
    background: #f4f5f7;
}

.single-product.woocommerce .ds-service-cover__media::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 2;
    background:
        linear-gradient(90deg, rgba(5, 6, 12, 0.78) 0%, rgba(5, 6, 12, 0.62) 42%, rgba(5, 6, 12, 0.18) 100%),
        linear-gradient(180deg, rgba(5, 6, 12, 0.24) 0%, rgba(5, 6, 12, 0.5) 100%);
    pointer-events: none;
}

.single-product.woocommerce .ds-service-cover__image {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.single-product.woocommerce .ds-service-cover__image-heading {
    position: relative;
    z-index: 3;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    width: min(78%, 760px);
    max-width: 760px;
    min-height: 360px;
    padding: 32px 30px;
    background: transparent;
}

.single-product.woocommerce .ds-service-cover__image-title {
    margin: 18px 0 14px;
    color: #fff;
    font-size: clamp(30px, 3.1vw, 44px);
    font-weight: 800;
    line-height: 1.1;
    letter-spacing: 0;
}

.single-product.woocommerce .ds-service-cover__image-subtitle {
    display: -webkit-box;
    max-width: 640px;
    margin: 0;
    overflow: hidden;
    color: rgba(255, 255, 255, 0.88);
    font-size: 15px;
    font-weight: 500;
    line-height: 1.62;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
}

.single-product.woocommerce .ds-service-cover__visual {
    display: grid;
    place-items: center;
    aspect-ratio: 1 / 1;
    border: 1px solid rgba(255, 255, 255, 0.15);
    border-radius: 999px;
    background:
        linear-gradient(135deg, rgba(255, 255, 255, 0.22), rgba(255, 255, 255, 0.06)),
        radial-gradient(circle at 60% 40%, color-mix(in srgb, var(--cover-color-2) 46%, transparent), transparent 36%);
    box-shadow: 0 24px 64px rgba(0, 0, 0, 0.16);
    backdrop-filter: blur(6px);
    opacity: 0.82;
}

.single-product.woocommerce .ds-service-cover__icon {
    position: relative;
    z-index: 2;
    display: grid;
    place-items: center;
    width: 104px;
    height: 104px;
    border-radius: 30px;
    background: linear-gradient(135deg, var(--cover-color-1), var(--cover-color-2));
    color: #fff;
    box-shadow: 0 24px 58px color-mix(in srgb, var(--cover-color-1) 34%, transparent);
}

.single-product.woocommerce .ds-service-cover__icon svg {
    width: 50px;
    height: 50px;
}

.single-product.woocommerce .ds-service-cover__icon img {
    display: block;
    width: 56px;
    height: 56px;
    object-fit: contain;
}

.single-product.woocommerce .ds-service-cover__line,
.single-product.woocommerce .ds-service-cover__orb {
    position: absolute;
    display: block;
    pointer-events: none;
}

.single-product.woocommerce .ds-service-cover__line {
    left: 42px;
    width: 54%;
    height: 8px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.18);
}

.single-product.woocommerce .ds-service-cover__line--one {
    top: 46px;
}

.single-product.woocommerce .ds-service-cover__line--two {
    top: 70px;
    width: 38%;
}

.single-product.woocommerce .ds-service-cover__line--three {
    right: 42px;
    bottom: 48px;
    left: auto;
    width: 34%;
}

.single-product.woocommerce .ds-service-cover__orb {
    border-radius: 999px;
    filter: blur(2px);
    opacity: 0.6;
}

.single-product.woocommerce .ds-service-cover__orb--one {
    top: 24%;
    right: 18%;
    width: 18px;
    height: 18px;
    background: color-mix(in srgb, var(--cover-color-2) 70%, #fff);
}

.single-product.woocommerce .ds-service-cover__orb--two {
    right: 8%;
    bottom: 18%;
    width: 72px;
    height: 72px;
    background: color-mix(in srgb, var(--cover-color-1) 44%, transparent);
}

.single-product.woocommerce div.product .summary.entry-summary {
    grid-column: 2 / 3;
    grid-row: 1 / span 3;
    position: sticky;
    z-index: 5;
    top: 112px;
    display: flex;
    flex-direction: column;
    gap: 16px;
    margin: 0 !important;
    padding: 24px;
    border: 1px solid var(--ds-single-line);
    border-radius: 18px;
    background: rgba(255, 255, 255, 0.97);
    box-shadow: 0 16px 42px rgba(17, 19, 24, 0.065);
}

.single-product.woocommerce .ds-single-agency,
.single-product.woocommerce .ds-single-trust,
.single-product.woocommerce div.product .summary > p.price,
.single-product.woocommerce div.product .summary form.cart,
.single-product.woocommerce .ds-single-payment-note,
.single-product.woocommerce .ds-single-specs,
.single-product.woocommerce div.product .woocommerce-tabs {
    border: 1px solid var(--ds-single-line);
    border-radius: 14px;
    background: rgba(255, 255, 255, 0.96);
    box-shadow: 0 16px 38px rgba(17, 19, 24, 0.08);
}

.single-product.woocommerce .ds-single-agency {
    grid-column: 1 / 2;
    grid-row: 2;
    display: flex;
    align-items: center;
    gap: 14px;
    margin-top: 14px;
    padding: 14px 18px;
    box-shadow: 0 10px 28px rgba(17, 19, 24, 0.055);
}

.single-product.woocommerce .ds-single-agency__logo {
    display: grid;
    place-items: center;
    width: 44px;
    height: 44px;
    flex: 0 0 44px;
    border-radius: 999px;
    background: #050505;
    color: var(--ds-single-red);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: -0.04em;
}

.single-product.woocommerce .ds-single-agency__name {
    display: flex;
    align-items: center;
    gap: 8px;
    color: var(--ds-single-ink);
    font-size: 15px;
    font-weight: 800;
    line-height: 1.2;
}

.single-product.woocommerce .ds-single-agency__name svg {
    width: 18px;
    height: 18px;
    padding: 3px;
    border-radius: 999px;
    background: #19b45b;
    color: #fff;
}

.single-product.woocommerce .ds-single-agency p {
    display: block;
    margin: 0;
    color: var(--ds-single-muted);
    font-size: 14px;
    font-weight: 500;
    line-height: 1.35;
}

.single-product.woocommerce .ds-single-agency__meta {
    display: flex;
    flex-wrap: wrap;
    gap: 5px 10px;
    color: #5d6472;
    font-size: 13px;
    font-weight: 600;
    line-height: 1.3;
}

.single-product.woocommerce .ds-single-mobile-trust {
    display: none;
}

.single-product.woocommerce .ds-single-purchase-intro {
    padding-bottom: 2px;
}

.single-product.woocommerce .ds-single-purchase-intro__category {
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    padding: 6px 10px;
    border-radius: 8px;
    background: rgba(17, 19, 24, 0.045);
    color: #5f6674;
    font-size: 11px;
    font-weight: 800;
    line-height: 1;
    letter-spacing: 0.035em;
    text-transform: uppercase;
}

.single-product.woocommerce .ds-single-purchase-intro__title {
    margin: 14px 0 10px;
    color: var(--ds-single-ink);
    font-size: clamp(26px, 2.2vw, 34px);
    font-weight: 800;
    line-height: 1.1;
    letter-spacing: 0;
}

.single-product.woocommerce .ds-single-purchase-intro__text,
.single-product.woocommerce .ds-single-purchase-intro__note {
    display: -webkit-box;
    margin: 0;
    overflow: hidden;
    color: var(--ds-single-muted);
    font-family: var(--type-font-primary);
    font-size: 15px;
    font-weight: 500;
    line-height: 1.55;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
}

.single-product.woocommerce .ds-single-agency__stars,
.single-product.woocommerce .ds-single-agency__meta span:first-child {
    color: #F6B900;
    letter-spacing: 0.02em;
}

.single-product.woocommerce .ds-single-agency__meta span:nth-child(2) {
    color: #111318;
}

.single-product.woocommerce .ds-single-agency__meta span:nth-child(3) {
    color: #075cff;
}

.single-product.woocommerce .ds-single-trust {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 10px;
    padding: 16px 0;
    border-width: 1px 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

.single-product.woocommerce .ds-single-trust__item {
    display: grid;
    grid-template-columns: 30px minmax(0, 1fr);
    gap: 3px 11px;
    min-height: 0;
    padding: 0;
    border-radius: 0;
    background: transparent;
}

.single-product.woocommerce .ds-single-trust__icon {
    display: grid;
    place-items: center;
    width: 30px;
    height: 30px;
    grid-row: 1 / span 2;
    margin: 0;
    border-radius: 9px;
    background: #f0ecff;
    color: var(--ds-single-purple);
}

.single-product.woocommerce .ds-single-trust__item:nth-child(2) .ds-single-trust__icon {
    background: #eaf8ef;
    color: var(--ds-single-green);
}

.single-product.woocommerce .ds-single-trust__item:nth-child(3) .ds-single-trust__icon {
    background: #fff1df;
    color: #f28a1a;
}

.single-product.woocommerce .ds-single-trust strong {
    display: block;
    color: var(--ds-single-ink);
    font-size: 13px;
    font-weight: 800;
    line-height: 1.25;
}

.single-product.woocommerce .ds-single-trust p {
    margin: 0;
    color: var(--ds-single-muted);
    font-size: 12px;
    font-weight: 500;
    line-height: 1.45;
}

.single-product.woocommerce div.product .summary > p.price {
    position: relative;
    margin: 0 !important;
    padding: 14px 0 2px;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: var(--ds-single-ink);
    font-size: 34px;
    font-weight: 800;
    line-height: 1;
    box-shadow: none;
}

.single-product.woocommerce div.product .summary > p.price > span.price,
.single-product.woocommerce div.product .summary .woocommerce-variation-price span.price {
    color: var(--ds-single-ink);
    font-size: 34px;
    font-weight: 800;
    line-height: 1;
}

.single-product.woocommerce div.product .summary > p.price::before {
    content: "от";
    margin-right: 10px;
    color: var(--ds-single-ink);
    font-size: 18px;
    font-weight: 700;
    vertical-align: 5px;
}

.single-product.woocommerce div.product .summary > p.price::after {
    content: "Без предоплаты";
    position: absolute;
    right: 0;
    top: 14px;
    padding: 7px 10px;
    border-radius: 8px;
    background: #e9f9ee;
    color: #159246;
    font-size: 12px;
    font-weight: 800;
}

.single-product.woocommerce div.product .summary p.price ins,
.single-product.woocommerce div.product .summary span.price ins {
    color: var(--ds-single-red);
    text-decoration: none;
}

.single-product.woocommerce div.product .summary p.price del,
.single-product.woocommerce div.product .summary span.price del {
    color: rgba(17, 19, 24, 0.34);
    font-size: 20px;
    font-weight: 600;
}

.single-product.woocommerce div.product .summary .woocommerce-variation-price {
    display: none;
}

.single-product.woocommerce div.product .summary form.cart {
    margin: 0 !important;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

.single-product.woocommerce div.product .summary table.variations {
    width: 100%;
    margin: 0 0 16px !important;
    border: 0;
}

.single-product.woocommerce div.product .summary table.variations tbody,
.single-product.woocommerce div.product .summary table.variations tr,
.single-product.woocommerce div.product .summary table.variations th,
.single-product.woocommerce div.product .summary table.variations td {
    display: block;
    width: 100%;
    padding: 0 !important;
    border: 0;
    background: transparent;
}

.single-product.woocommerce div.product .summary table.variations th.label {
    margin-bottom: 9px;
}

.single-product.woocommerce div.product .summary table.variations th.label label {
    color: var(--ds-single-ink);
    font-family: var(--type-font-primary);
    font-size: 15px;
    font-weight: 600;
    line-height: 1.35;
}

.single-product.woocommerce div.product .summary table.variations select {
    width: 100%;
    min-height: 50px;
    margin: 0;
    padding: 0 42px 0 16px;
    border: 1px solid rgba(17, 19, 24, 0.14);
    border-radius: 12px;
    background-color: #fff;
    color: var(--ds-single-ink);
    font: 600 15px/1.35 var(--type-font-primary);
    outline: none;
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.single-product.woocommerce div.product .summary table.variations option,
.single-product.woocommerce div.product .summary input,
.single-product.woocommerce div.product .summary button,
.single-product.woocommerce div.product .summary textarea {
    font-family: var(--type-font-primary);
}

.single-product.woocommerce div.product .summary table.variations select:focus {
    border-color: rgba(247, 27, 64, 0.55);
    box-shadow: 0 0 0 4px rgba(247, 27, 64, 0.09);
}

.single-product.woocommerce div.product .summary table.variations .reset_variations {
    display: inline-flex;
    margin-top: 10px;
    color: var(--ds-single-muted);
    font-size: 13px;
    font-weight: 700;
}

.single-product.woocommerce div.product .summary .single_variation_wrap {
    display: grid;
    gap: 14px;
}

.single-product.woocommerce div.product .summary .woocommerce-variation-description {
    padding: 12px 14px;
    border-radius: 10px;
    background: #f8f9fb;
    color: #626977;
    font-family: var(--type-font-primary);
    font-size: 14px;
    font-weight: 400;
    line-height: 1.58;
}

.single-product.woocommerce div.product .summary .quantity {
    display: none !important;
}

.single-product.woocommerce div.product .summary .single_add_to_cart_button,
.single-product.woocommerce div.product .summary form.cart .single_add_to_cart_button,
.single-product.woocommerce div.product form.cart .button.single_add_to_cart_button {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 58px;
    margin: 0 !important;
    padding: 0 24px !important;
    border: 0 !important;
    border-radius: 8px !important;
    background: var(--ds-single-red) !important;
    color: #fff !important;
    box-shadow: 0 16px 30px rgba(247, 27, 64, 0.22);
    font: 800 16px/1 var(--type-font-primary) !important;
    text-transform: none;
    transition: transform 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
}

.single-product.woocommerce div.product .summary .single_add_to_cart_button:hover,
.single-product.woocommerce div.product .summary form.cart .single_add_to_cart_button:hover {
    transform: translateY(-1px);
    background: #e91436 !important;
    box-shadow: 0 18px 34px rgba(247, 27, 64, 0.28);
}

.single-product.woocommerce div.product .summary .single_add_to_cart_button::before,
.single-product.woocommerce div.product .summary form.cart .single_add_to_cart_button::before {
    display: none !important;
}

.single-product.woocommerce .ds-single-telegram {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    width: 100%;
    min-height: 50px;
    padding: 0 18px;
    border: 1px solid #229ED9;
    border-radius: 8px;
    background: #fff;
    color: #229ED9;
    box-shadow: none;
    outline: none;
    font-family: var(--type-font-primary);
    font-size: 14px;
    font-weight: 700;
    line-height: 1;
    text-align: center;
    transition: border-color 0.2s ease, background 0.2s ease, color 0.2s ease;
}

.single-product.woocommerce .ds-single-telegram:hover {
    border-color: #229ED9;
    background: #229ED9;
    color: #fff;
    box-shadow: none;
}

.single-product.woocommerce .ds-single-telegram:focus-visible {
    border-color: #229ED9;
    box-shadow: 0 0 0 3px rgba(34, 158, 217, 0.18);
}

.single-product.woocommerce .ds-single-telegram svg {
    width: 16px;
    height: 16px;
    color: currentColor;
    fill: currentColor;
    stroke: none;
}

.single-product.woocommerce .ds-single-mobile-actions {
    display: none;
}

.single-product.woocommerce .ds-mobile-tab-toggle {
    display: none;
}

.single-product.woocommerce .ds-mobile-tab-body {
    display: block;
}

@media (min-width: 768px) {
    .single-product.woocommerce .ds-mobile-tab-toggle {
        display: none !important;
    }

    .single-product.woocommerce .ds-mobile-tab-body {
        max-height: none !important;
        overflow: visible !important;
    }
}

.single-product.woocommerce .ds-single-description-toggle {
    display: none;
}

.single-product.woocommerce .ds-single-purchase-proof {
    display: none;
    font-family: var(--type-font-primary);
}

.single-product.woocommerce .ds-single-purchase-proof__logo {
    display: grid;
    place-items: center;
    width: 48px;
    height: 48px;
    flex: 0 0 48px;
    overflow: hidden;
    border-radius: 50%;
    background: #050506;
}

.single-product.woocommerce .ds-single-purchase-proof__logo img {
    display: block;
    width: 34px;
    height: auto;
    max-height: 18px;
    object-fit: contain;
}

.single-product.woocommerce .ds-single-purchase-proof__body {
    min-width: 0;
}

.single-product.woocommerce .ds-single-purchase-proof__body strong {
    display: block;
    color: var(--ds-single-ink);
    font-size: 15px;
    font-weight: 800;
    line-height: 1.15;
}

.single-product.woocommerce .ds-single-purchase-proof__body > span {
    display: block;
    margin-top: 3px;
    color: var(--ds-single-muted);
    font-size: 12px;
    font-weight: 600;
    line-height: 1.3;
}

.single-product.woocommerce .ds-single-purchase-proof__rating {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 5px;
    margin-top: 7px;
    color: var(--ds-single-muted);
    font-size: 12px;
    font-weight: 700;
    line-height: 1.25;
}

.single-product.woocommerce .ds-single-purchase-proof__stars {
    color: #f6b900;
    font-size: 12px;
    letter-spacing: 0.02em;
}

.single-product.woocommerce .ds-single-purchase-proof p {
    margin: 6px 0 0;
    color: var(--ds-single-ink);
    font-size: 12px;
    font-weight: 700;
    line-height: 1.3;
}

.single-product.woocommerce .ds-single-purchase-proof__text {
    flex: 0 0 100%;
    display: grid;
    gap: 9px;
    padding-top: 3px;
}

.single-product.woocommerce .ds-single-purchase-proof__text p {
    margin: 0;
    color: #6e7480;
    font-family: var(--type-font-primary);
    font-size: 14px;
    font-weight: 500;
    line-height: 1.48;
}

.single-product.woocommerce .ds-single-payment-note {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    margin: -2px 0 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    color: var(--ds-single-muted);
    font-size: 13px;
    font-weight: 600;
}

.single-product.woocommerce .ds-single-payment-note svg {
    width: 16px;
    height: 16px;
    color: #8b93a3;
}

.single-product.woocommerce .ds-single-specs {
    padding: 18px 0 0;
    border-width: 1px 0 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

@media (min-width: 1200px) {
    html:has(body.single-product.woocommerce) {
        overflow-x: hidden;
        overflow-y: auto;
    }

    body.single-product.woocommerce {
        overflow: visible;
    }

    .single-product.woocommerce div.product .summary.entry-summary {
        gap: 11px;
        padding: 20px;
    }

    .single-product.woocommerce div.product .summary.entry-summary .woocommerce-product-rating,
    .single-product.woocommerce div.product .summary.entry-summary .star-rating,
    .single-product.woocommerce div.product .summary.entry-summary .woocommerce-review-link {
        display: none !important;
    }

    .single-product.woocommerce div.product .summary.entry-summary > .ds-single-purchase-intro {
        order: 1;
    }

    .single-product.woocommerce div.product .summary.entry-summary > form.cart {
        display: contents;
    }

    .single-product.woocommerce div.product .summary.entry-summary > form.cart table.variations {
        order: 2;
        margin-bottom: 0 !important;
    }

    .single-product.woocommerce div.product .summary.entry-summary > form.cart table.variations th.label,
    .single-product.woocommerce div.product .summary.entry-summary > form.cart table.variations .reset_variations {
        display: none !important;
    }

    .single-product.woocommerce div.product .summary.entry-summary > form.cart .single_variation_wrap {
        display: contents;
    }

    .single-product.woocommerce div.product .summary.entry-summary > form.cart .single_variation {
        order: 3;
    }

    .single-product.woocommerce div.product .summary.entry-summary > form.cart .woocommerce-variation-description {
        display: block;
        overflow: visible;
        padding: 9px 12px;
        color: #626977;
        font-family: var(--type-font-primary);
        font-size: 14px;
        font-weight: 400;
        line-height: 1.58;
    }

    .single-product.woocommerce div.product .summary.entry-summary > p.price {
        order: 4;
        padding-top: 2px;
        padding-bottom: 0;
    }

    .single-product.woocommerce div.product .summary.entry-summary > p.price::before,
    .single-product.woocommerce div.product .summary.entry-summary > p.price::after {
        display: none;
    }

    .single-product.woocommerce div.product .summary.entry-summary > form.cart .woocommerce-variation-add-to-cart,
    .single-product.woocommerce div.product .summary.entry-summary > form.cart .single_add_to_cart_button {
        order: 5;
        box-shadow: none !important;
    }

    .single-product.woocommerce div.product .summary.entry-summary > form.cart .single_add_to_cart_button:hover {
        box-shadow: none !important;
    }

    .single-product.woocommerce div.product .summary.entry-summary > .ds-single-telegram {
        order: 6;
    }

    .single-product.woocommerce div.product .summary.entry-summary > .ds-single-purchase-proof {
        order: 7;
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        gap: 13px;
        padding: 8px 0 0;
        border: 0;
        border-radius: 14px;
        background: transparent;
        box-shadow: none;
    }

    .single-product.woocommerce div.product .summary.entry-summary > .ds-single-trust {
        order: 8;
        display: none;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 8px;
        padding: 2px 0 0;
        border: 0;
    }

    .single-product.woocommerce div.product .summary.entry-summary > .ds-single-trust .ds-single-trust__item {
        grid-template-columns: 18px minmax(0, 1fr);
        gap: 0 7px;
        align-items: center;
        min-height: 52px;
        padding: 8px 10px;
        border: 0;
        border-radius: 13px;
        background: rgba(247, 27, 64, 0.07);
    }

    .single-product.woocommerce div.product .summary.entry-summary > .ds-single-trust .ds-single-trust__icon {
        width: 18px;
        height: 18px;
        grid-row: auto;
        border-radius: 0;
        background: transparent;
        color: #16a34a;
    }

    .single-product.woocommerce div.product .summary.entry-summary > .ds-single-trust .ds-single-trust__item:nth-child(2) {
        background: rgba(83, 92, 255, 0.08);
    }

    .single-product.woocommerce div.product .summary.entry-summary > .ds-single-trust .ds-single-trust__item:nth-child(3) {
        background: rgba(48, 168, 118, 0.09);
    }

    .single-product.woocommerce div.product .summary.entry-summary > .ds-single-trust .ds-single-trust__icon svg {
        display: none;
    }

    .single-product.woocommerce div.product .summary.entry-summary > .ds-single-trust .ds-single-trust__icon::before {
        content: "✓";
        color: #16a34a;
        font-size: 15px;
        font-weight: 800;
        line-height: 1;
    }

    .single-product.woocommerce div.product .summary.entry-summary > .ds-single-trust p {
        display: none;
    }

    .single-product.woocommerce div.product .summary.entry-summary > .ds-single-payment-note {
        display: none;
    }

    .single-product.woocommerce div.product .summary.entry-summary > .ds-single-specs {
        display: none;
    }

    .single-product.woocommerce .related.products {
        grid-column: 1 / -1;
        width: 100%;
        margin-top: 44px;
    }

    .single-product.woocommerce .related.products ul.products {
        display: grid !important;
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
        gap: 18px !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 10px 0 14px !important;
        clear: both;
    }

    .single-product.woocommerce .related.products ul.products::before,
    .single-product.woocommerce .related.products ul.products::after {
        display: none !important;
    }

    .single-product.woocommerce .related.products ul.products li.product {
        float: none !important;
        width: 100% !important;
        min-width: 0;
        margin: 0 !important;
        padding: 0 !important;
        list-style: none !important;
    }
}

.single-product.woocommerce .ds-single-specs__row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 11px 0;
    border-bottom: 1px solid rgba(17, 19, 24, 0.07);
}

.single-product.woocommerce .ds-single-specs__row:first-child {
    padding-top: 0;
}

.single-product.woocommerce .ds-single-specs__row span {
    color: var(--ds-single-muted);
    font-size: 14px;
    font-weight: 600;
}

.single-product.woocommerce .ds-single-specs__row strong {
    color: var(--ds-single-ink);
    font-size: 14px;
    font-weight: 800;
    text-align: right;
}

.single-product.woocommerce .ds-single-specs__note {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 18px 0 0;
    padding-top: 18px;
    color: var(--ds-single-muted);
    font-size: 13px;
    font-weight: 600;
    line-height: 1.4;
}

.single-product.woocommerce .ds-single-specs__note svg {
    flex: 0 0 18px;
    color: #7f8797;
}

.single-product.woocommerce div.product .woocommerce-tabs {
    grid-column: 1 / 2;
    position: relative;
    z-index: 1;
    margin-top: -4px;
    padding: 0 24px 28px;
    box-shadow: 0 16px 38px rgba(17, 19, 24, 0.07);
}

.single-product.woocommerce div.product .woocommerce-tabs ul.tabs {
    display: flex;
    gap: clamp(18px, 2vw, 34px);
    margin: 0 0 22px !important;
    padding: 0 !important;
    border-bottom: 1px solid rgba(17, 19, 24, 0.08);
    overflow-x: auto;
    scrollbar-width: none;
}

.single-product.woocommerce div.product .woocommerce-tabs ul.tabs::-webkit-scrollbar {
    display: none;
}

.single-product.woocommerce div.product .woocommerce-tabs ul.tabs::before,
.single-product.woocommerce div.product .woocommerce-tabs ul.tabs li::before,
.single-product.woocommerce div.product .woocommerce-tabs ul.tabs li::after {
    display: none !important;
}

.single-product.woocommerce div.product .woocommerce-tabs ul.tabs li {
    flex: 0 0 auto;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
}

.single-product.woocommerce div.product .woocommerce-tabs ul.tabs li a {
    position: relative;
    display: block;
    padding: 22px 0 15px !important;
    color: #667085;
    font-size: 15px;
    font-weight: 800;
    line-height: 1.2;
}

.single-product.woocommerce div.product .woocommerce-tabs ul.tabs li.active a {
    color: var(--ds-single-ink);
}

.single-product.woocommerce div.product .woocommerce-tabs ul.tabs li.active a::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: -1px;
    height: 2px;
    border-radius: 999px;
    background: var(--ds-single-red);
}

.single-product.woocommerce div.product .woocommerce-tabs .woocommerce-Tabs-panel {
    padding: 0 !important;
    color: var(--ds-single-ink);
}

.single-product.woocommerce div.product .woocommerce-tabs .woocommerce-Tabs-panel h2 {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    margin: 30px 0 14px;
    color: var(--ds-single-ink);
    font-family: var(--type-font-primary);
    font-size: 22px;
    font-weight: 800;
    line-height: 1.3;
}

.single-product.woocommerce div.product .woocommerce-tabs .woocommerce-Tabs-panel h2:first-child,
.single-product.woocommerce div.product .woocommerce-tabs .woocommerce-Tabs-panel > h2:first-of-type {
    margin-top: 0;
}

.single-product.woocommerce div.product .woocommerce-tabs .woocommerce-Tabs-panel p {
    margin: 0 0 16px;
    color: #242833;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.7;
}

.single-product.woocommerce div.product .woocommerce-tabs .woocommerce-Tabs-panel ul,
.single-product.woocommerce div.product .woocommerce-tabs .woocommerce-Tabs-panel ol {
    margin: 0 0 18px;
    padding-left: 22px;
}

.single-product.woocommerce div.product .woocommerce-tabs .woocommerce-Tabs-panel li {
    margin: 0 0 8px;
    color: #242833;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.65;
}

.single-product.woocommerce div.product .woocommerce-tabs .woocommerce-Tabs-panel li:last-child {
    margin-bottom: 0;
}

.single-product.woocommerce div.product .woocommerce-tabs .woocommerce-Tabs-panel strong,
.single-product.woocommerce div.product .woocommerce-tabs .woocommerce-Tabs-panel b {
    color: var(--ds-single-ink);
    font-weight: 800;
}

.single-product.woocommerce div.product .woocommerce-tabs .woocommerce-Tabs-panel a {
    color: var(--piar-red);
    font-weight: 700;
    text-decoration: none;
    border-bottom: 1px solid rgba(247, 27, 64, 0.24);
    transition: border-color 0.2s ease, color 0.2s ease;
}

.single-product.woocommerce div.product .woocommerce-tabs .woocommerce-Tabs-panel a:hover {
    color: var(--piar-red-dark);
    border-bottom-color: rgba(247, 27, 64, 0.48);
}

.single-product.woocommerce div.product .woocommerce-tabs .woocommerce-Tabs-panel p:last-child {
    margin-bottom: 0;
}

.single-product.woocommerce .ds-tab-content {
    display: grid;
    gap: 18px;
}

.single-product.woocommerce .ds-tab-list,
.single-product.woocommerce .ds-tab-steps {
    display: grid;
    gap: 10px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.single-product.woocommerce .ds-tab-list li,
.single-product.woocommerce .ds-tab-steps li {
    position: relative;
    padding-left: 30px;
}

.single-product.woocommerce .ds-tab-list li::before {
    content: "✓";
    position: absolute;
    left: 0;
    top: 1px;
    display: grid;
    place-items: center;
    width: 20px;
    height: 20px;
    border-radius: 999px;
    background: rgba(247, 27, 64, 0.08);
    color: var(--ds-single-red);
    font-size: 12px;
    font-weight: 800;
}

.single-product.woocommerce .ds-tab-steps {
    counter-reset: ds-tab-steps;
}

.single-product.woocommerce .ds-tab-steps li {
    counter-increment: ds-tab-steps;
}

.single-product.woocommerce .ds-tab-steps li::before {
    content: counter(ds-tab-steps);
    position: absolute;
    left: 0;
    top: 2px;
    display: grid;
    place-items: center;
    width: 20px;
    height: 20px;
    border-radius: 999px;
    background: rgba(247, 27, 64, 0.08);
    color: var(--ds-single-red);
    font-size: 12px;
    font-weight: 800;
}

.single-product.woocommerce .ds-tab-steps strong {
    display: block;
    margin-bottom: 3px;
    color: var(--ds-single-ink);
    font-size: 15px;
    font-weight: 800;
    line-height: 1.35;
}

.single-product.woocommerce .ds-tab-steps span {
    display: block;
    color: #667085;
    font-size: 15px;
    font-weight: 500;
    line-height: 1.6;
}

.single-product.woocommerce .ds-tab-content--faq {
    gap: 14px;
}

.single-product.woocommerce .ds-faq-intro {
    margin: 0 0 22px;
    color: #667085;
}

.single-product.woocommerce .ds-faq-accordion {
    display: grid;
    gap: 0;
    border-top: 1px solid rgba(17, 19, 24, 0.08);
}

.single-product.woocommerce .ds-faq-item {
    margin: 0;
    border-bottom: 1px solid rgba(17, 19, 24, 0.08);
}

.single-product.woocommerce .ds-faq-question {
    position: relative;
    display: block;
    padding: 18px 34px 18px 0;
    color: var(--ds-single-ink);
    font-family: var(--type-font-primary);
    font-size: 16px;
    font-weight: 800;
    line-height: 1.35;
    cursor: pointer;
    list-style: none;
}

.single-product.woocommerce .ds-faq-question::-webkit-details-marker {
    display: none;
}

.single-product.woocommerce .ds-faq-question::before,
.single-product.woocommerce .ds-faq-question::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 2px;
    width: 14px;
    height: 2px;
    border-radius: 999px;
    background: var(--ds-single-red);
    transform: translateY(-50%);
    transition: transform 0.2s ease, opacity 0.2s ease;
}

.single-product.woocommerce .ds-faq-question::after {
    transform: translateY(-50%) rotate(90deg);
}

.single-product.woocommerce .ds-faq-item[open] .ds-faq-question::after {
    opacity: 0;
    transform: translateY(-50%) rotate(0deg);
}

.single-product.woocommerce .ds-faq-answer {
    padding: 0 34px 18px 0;
}

.single-product.woocommerce .ds-faq-answer p {
    margin: 0;
    color: #667085;
    font-size: 15px;
    font-weight: 500;
    line-height: 1.65;
}

.single-product.woocommerce .ds-tab-faq-item h3 {
    margin: 0 0 5px;
    color: var(--ds-single-ink);
    font-size: 15px;
    font-weight: 800;
    line-height: 1.35;
}

.single-product.woocommerce .ds-tab-faq-item p {
    margin: 0;
}

.single-product.woocommerce #reviews,
.single-product.woocommerce .woocommerce-Reviews {
    display: grid;
    gap: 24px;
    font-family: var(--type-font-primary);
}

.single-product.woocommerce #reviews #comments {
    display: grid;
    gap: 14px;
}

.single-product.woocommerce #reviews #comments h2,
.single-product.woocommerce #reviews #reply-title {
    display: block;
    margin: 0;
    color: var(--ds-single-ink);
    font-family: var(--type-font-primary);
    font-size: 20px;
    font-weight: 800;
    line-height: 1.3;
}

.single-product.woocommerce #reviews .woocommerce-noreviews {
    margin: 0;
    color: #667085;
    font-size: 15px;
    font-weight: 500;
    line-height: 1.65;
}

.single-product.woocommerce #reviews .commentlist {
    display: grid;
    gap: 14px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.single-product.woocommerce #reviews .comment_container {
    display: grid;
    gap: 10px;
    padding: 16px 0;
    border-bottom: 1px solid rgba(17, 19, 24, 0.08);
}

.single-product.woocommerce #review_form_wrapper,
.single-product.woocommerce #review_form,
.single-product.woocommerce #respond,
.single-product.woocommerce #commentform {
    width: 100%;
}

.single-product.woocommerce #review_form_wrapper {
    padding-top: 4px;
}

.single-product.woocommerce #commentform {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px 16px;
    margin: 16px 0 0;
}

.single-product.woocommerce #commentform p {
    margin: 0;
}

.single-product.woocommerce #commentform .comment-notes,
.single-product.woocommerce #commentform .comment-form-rating,
.single-product.woocommerce #commentform .comment-form-comment,
.single-product.woocommerce #commentform .comment-form-cookies-consent,
.single-product.woocommerce #commentform .form-submit,
.single-product.woocommerce #commentform .logged-in-as {
    grid-column: 1 / -1;
}

.single-product.woocommerce #commentform .comment-notes,
.single-product.woocommerce #commentform .logged-in-as {
    color: #667085;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.6;
}

.single-product.woocommerce #commentform label {
    display: block;
    margin: 0 0 7px;
    color: var(--ds-single-ink);
    font-family: var(--type-font-primary);
    font-size: 14px;
    font-weight: 700;
    line-height: 1.35;
}

.single-product.woocommerce #commentform input[type="text"],
.single-product.woocommerce #commentform input[type="email"],
.single-product.woocommerce #commentform textarea {
    width: 100%;
    margin: 0;
    border: 1px solid rgba(17, 19, 24, 0.12);
    border-radius: 12px;
    background: #fff;
    color: var(--ds-single-ink);
    font-family: var(--type-font-primary);
    font-size: 15px;
    font-weight: 500;
    line-height: 1.45;
    outline: none;
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.single-product.woocommerce #commentform input[type="text"],
.single-product.woocommerce #commentform input[type="email"] {
    min-height: 48px;
    padding: 0 14px;
}

.single-product.woocommerce #commentform textarea {
    min-height: 132px;
    max-height: 220px;
    padding: 13px 14px;
    resize: vertical;
}

.single-product.woocommerce #commentform input[type="text"]:focus,
.single-product.woocommerce #commentform input[type="email"]:focus,
.single-product.woocommerce #commentform textarea:focus {
    border-color: rgba(247, 27, 64, 0.38);
    box-shadow: 0 0 0 4px rgba(247, 27, 64, 0.08);
}

.single-product.woocommerce #commentform .comment-form-cookies-consent {
    display: flex;
    align-items: flex-start;
    gap: 9px;
    color: #667085;
    font-size: 13px;
    font-weight: 500;
    line-height: 1.45;
}

.single-product.woocommerce #commentform .comment-form-cookies-consent input {
    width: 16px;
    height: 16px;
    flex: 0 0 16px;
    margin: 2px 0 0;
    accent-color: var(--ds-single-red);
}

.single-product.woocommerce #commentform .comment-form-cookies-consent label {
    margin: 0;
    color: #667085;
    font-size: 13px;
    font-weight: 500;
    line-height: 1.45;
}

.single-product.woocommerce #commentform .comment-form-rating label {
    margin-bottom: 8px;
}

.single-product.woocommerce #review_form #respond p.stars {
    margin: 0;
    line-height: 1;
}

.single-product.woocommerce #review_form #respond p.stars a {
    color: #c7ccd5;
    border: 0;
    transition: color 0.15s ease;
}

.single-product.woocommerce #review_form #respond p.stars:hover a,
.single-product.woocommerce #review_form #respond p.stars.selected a:not(.active),
.single-product.woocommerce #review_form #respond p.stars a:hover,
.single-product.woocommerce #review_form #respond p.stars a.active,
.single-product.woocommerce #review_form #respond p.stars.selected a.active {
    color: #F6B900;
}

.single-product.woocommerce #review_form #respond p.stars a:hover ~ a,
.single-product.woocommerce #review_form #respond p.stars.selected a.active ~ a {
    color: #c7ccd5;
}

.single-product.woocommerce #review_form #respond p.stars a::before,
.single-product.woocommerce #review_form #respond p.stars a:hover::before,
.single-product.woocommerce #review_form #respond p.stars a.active::before {
    color: currentColor;
}

.single-product.woocommerce #commentform .form-submit .submit {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 48px;
    padding: 0 24px;
    border: 0;
    border-radius: 8px;
    background: var(--ds-single-red);
    color: #fff;
    font-family: var(--type-font-primary);
    font-size: 15px;
    font-weight: 800;
    line-height: 1;
    box-shadow: none;
    cursor: pointer;
    transition: background 0.2s ease, transform 0.2s ease;
}

.single-product.woocommerce #commentform .form-submit .submit:hover {
    background: #e91436;
    transform: translateY(-1px);
}

@media (max-width: 767px) {
    .single-product.woocommerce #commentform {
        grid-template-columns: 1fr;
        gap: 13px;
    }

    .single-product.woocommerce #reviews #comments h2,
    .single-product.woocommerce #reviews #reply-title {
        font-size: 18px;
    }

    .single-product.woocommerce #commentform textarea {
        min-height: 120px;
    }

    .single-product.woocommerce #commentform .form-submit .submit {
        width: 100%;
    }
}

.single-product.woocommerce .related.products {
    grid-column: 1 / 2;
    position: relative;
    z-index: 1;
    margin-top: 40px;
}

.single-product.woocommerce .related.products .ds-product__excerpt {
    min-height: calc(14px * 1.45 * 3);
    display: -webkit-box !important;
    -webkit-line-clamp: 3 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
}

@media (max-width: 1199px) {
    .single-product.woocommerce .main-contain > .container {
        width: min(var(--site-container), calc(100% - var(--site-gutter) - var(--site-gutter)));
        max-width: none;
    }

    .single-product.woocommerce #content {
        padding-top: 28px;
    }

    .single-product.woocommerce div.product {
        grid-template-columns: minmax(0, 1fr);
        gap: 18px;
    }

    .single-product.woocommerce .ds-single-visual,
    .single-product.woocommerce .ds-single-agency,
    .single-product.woocommerce div.product .summary.entry-summary {
        grid-column: 1 / -1;
        grid-row: auto;
    }

    .single-product.woocommerce div.product .summary.entry-summary {
        position: static;
        top: auto;
        padding: 24px;
    }

    .single-product.woocommerce div.product .woocommerce-tabs {
        grid-column: auto;
    }
}

@media (max-width: 767px) {
    .single-product.woocommerce .main-contain > .container {
        width: min(var(--site-container), calc(100% - var(--site-gutter) - var(--site-gutter)));
        max-width: none;
    }

    .single-product.woocommerce #content {
        padding-top: 20px;
        padding-bottom: calc(104px + env(safe-area-inset-bottom, 0px));
    }

    .single-product.woocommerce .ds-single-breadcrumbs {
        flex-wrap: nowrap;
        gap: 7px;
        max-width: 100%;
        margin-top: 5px;
        margin-bottom: 12px;
        overflow-x: auto;
        overflow-y: hidden;
        white-space: nowrap;
        -webkit-overflow-scrolling: touch;
        overscroll-behavior-x: contain;
        scrollbar-width: none;
        touch-action: pan-x;
        font-size: 12px;
        line-height: 1.4;
    }

    .single-product.woocommerce .ds-single-breadcrumbs::-webkit-scrollbar {
        display: none;
    }

    .single-product.woocommerce .ds-single-breadcrumbs > * {
        flex: 0 0 auto;
    }

    .single-product.woocommerce .ds-single-breadcrumbs a {
        position: relative;
        z-index: 2;
        display: inline-flex;
        align-items: center;
        min-height: 28px;
    }

    .single-product.woocommerce .ds-single-breadcrumbs__current {
        max-width: none;
        overflow: visible;
        text-overflow: clip;
        white-space: nowrap;
    }

    .single-product.woocommerce div.product {
        gap: 14px;
    }

    .single-product.woocommerce .ds-single-visual {
        min-height: 0;
        aspect-ratio: 4 / 3;
        border-radius: 20px;
    }

    .single-product.woocommerce .ds-service-cover {
        grid-template-columns: 1fr;
        min-height: 0;
        height: 100%;
        background:
            radial-gradient(circle at 84% 24%, color-mix(in srgb, var(--cover-color-2) 18%, transparent), transparent 30%),
            radial-gradient(circle at 68% 88%, color-mix(in srgb, var(--cover-color-1) 22%, transparent), transparent 32%),
            linear-gradient(135deg, #080815 0%, #111126 48%, color-mix(in srgb, var(--cover-color-1) 44%, #16112a) 100%);
    }

    .single-product.woocommerce .ds-service-cover__content {
        width: 100%;
        max-width: none;
        min-height: 0;
        height: 100%;
        padding: 17px 18px 18px;
        justify-content: center;
    }

    .single-product.woocommerce .ds-service-cover__category {
        min-height: 0;
        padding: 0;
        font-size: 11px;
    }

    .single-product.woocommerce .ds-service-cover__title {
        margin: 10px 0 7px;
        font-size: clamp(22px, 7vw, 28px);
        line-height: 1.12;
    }

    .single-product.woocommerce .ds-service-cover__subtitle {
        font-size: 14px;
        line-height: 1.42;
        -webkit-line-clamp: 3;
    }

    .single-product.woocommerce .ds-service-cover__points {
        gap: 5px;
        margin-top: 10px;
    }

    .single-product.woocommerce .ds-service-cover__points li {
        gap: 8px;
        font-size: 12px;
        line-height: 1.2;
    }

    .single-product.woocommerce .ds-service-cover__points svg {
        width: 19px;
        height: 19px;
        padding: 4px;
        border-radius: 7px;
    }

    .single-product.woocommerce .ds-service-cover__visual {
        right: 12px;
        bottom: 12px;
        width: 21% !important;
        max-width: 74px;
        opacity: 0.58;
        transform: rotate(-4deg);
        background:
            linear-gradient(135deg, rgba(255, 255, 255, 0.14), rgba(255, 255, 255, 0.04)),
            radial-gradient(circle at 60% 40%, color-mix(in srgb, var(--cover-color-2) 30%, transparent), transparent 40%);
        box-shadow: 0 16px 42px rgba(0, 0, 0, 0.12);
        backdrop-filter: blur(4px);
    }

    .single-product.woocommerce .ds-service-cover__icon {
        width: 66px;
        height: 66px;
        border-radius: 19px;
        box-shadow: 0 16px 38px color-mix(in srgb, var(--cover-color-1) 22%, transparent);
    }

    .single-product.woocommerce .ds-service-cover__icon svg {
        width: 31px;
        height: 31px;
    }

    .single-product.woocommerce .ds-service-cover__icon img {
        width: 36px;
        height: 36px;
    }

    .single-product.woocommerce .ds-service-cover__orb {
        filter: blur(1.5px);
        opacity: 0.4;
    }

    .single-product.woocommerce .ds-service-cover__orb--one {
        background: color-mix(in srgb, var(--cover-color-2) 48%, #fff);
    }

    .single-product.woocommerce .ds-service-cover__orb--two {
        width: 58px;
        height: 58px;
        background: color-mix(in srgb, var(--cover-color-1) 30%, transparent);
    }

    .single-product.woocommerce .ds-service-cover__media {
        position: relative;
        inset: auto;
        height: auto;
        aspect-ratio: 16 / 9;
        width: auto !important;
        max-width: none;
        transform: none;
    }

    .single-product.woocommerce .ds-single-mobile-trust {
        grid-column: 1 / -1;
        display: block;
        margin-top: -2px;
        padding: 2px 2px 0;
        border: 0;
        background: transparent;
        box-shadow: none;
        font-family: var(--type-font-primary);
    }

    .single-product.woocommerce .ds-single-mobile-trust__toggle {
        display: flex;
        align-items: center;
        gap: 10px;
        width: 100%;
        margin: 0;
        padding: 0;
        border: 0;
        background: transparent;
        color: inherit;
        font: inherit;
        text-align: left;
        cursor: pointer;
    }

    .single-product.woocommerce .ds-single-mobile-trust__logo {
        display: grid;
        place-items: center;
        width: 40px;
        height: 40px;
        flex: 0 0 40px;
        overflow: hidden;
        border-radius: 999px;
        background: #050506;
    }

    .single-product.woocommerce .ds-single-mobile-trust__logo img {
        display: block;
        width: 28px;
        height: auto;
        max-height: 15px;
        object-fit: contain;
    }

    .single-product.woocommerce .ds-single-mobile-trust__body {
        display: block;
        flex: 1 1 auto;
        min-width: 0;
    }

    .single-product.woocommerce .ds-single-mobile-trust__body strong {
        display: block;
        color: var(--ds-single-ink);
        font-size: 16px;
        font-weight: 800;
        line-height: 1.12;
    }

    .single-product.woocommerce .ds-single-mobile-trust__subtitle {
        display: block;
        margin: 1px 0 0;
        color: #667085;
        font-size: 12px;
        font-weight: 700;
        line-height: 1.18;
    }

    .single-product.woocommerce .ds-single-mobile-trust__meta {
        display: flex;
        flex-wrap: wrap;
        gap: 2px 8px;
        margin-top: 2px;
        color: #667085;
        font-size: 12px;
        font-weight: 700;
        line-height: 1.18;
    }

    .single-product.woocommerce .ds-single-mobile-trust__stars,
    .single-product.woocommerce .ds-single-mobile-trust__meta span:first-child {
        color: #F6B900;
        letter-spacing: 0.02em;
    }

    .single-product.woocommerce .ds-single-mobile-trust__meta span:nth-child(2) {
        color: #111318;
    }

    .single-product.woocommerce .ds-single-mobile-trust__arrow {
        position: relative;
        width: 22px;
        height: 22px;
        flex: 0 0 22px;
        border-radius: 999px;
        background: rgba(17, 19, 24, 0.05);
        transition: transform 0.22s ease, background 0.22s ease;
    }

    .single-product.woocommerce .ds-single-mobile-trust__arrow::before {
        content: "";
        position: absolute;
        top: 7px;
        left: 8px;
        width: 6px;
        height: 6px;
        border-right: 2px solid #667085;
        border-bottom: 2px solid #667085;
        transform: rotate(45deg);
    }

    .single-product.woocommerce .ds-single-mobile-trust--open .ds-single-mobile-trust__arrow {
        background: rgba(17, 19, 24, 0.08);
        transform: rotate(180deg);
    }

    .single-product.woocommerce .ds-single-mobile-trust__about {
        max-height: 0;
        overflow: hidden;
        transition: max-height 0.28s ease;
    }

    .single-product.woocommerce .ds-single-mobile-trust__about-inner {
        padding: 8px 0 0 50px;
    }

    .single-product.woocommerce .ds-single-mobile-trust__about p {
        margin: 0;
        color: #667085;
        font-size: 12px;
        font-weight: 600;
        line-height: 1.42;
    }

    .single-product.woocommerce .ds-service-cover__image-heading {
        padding: 20px 20px 22px;
    }

    .single-product.woocommerce .ds-service-cover__image-title {
        margin: 12px 0 10px;
        font-size: 30px;
        line-height: 1.1;
    }

    .single-product.woocommerce .ds-service-cover__image-subtitle {
        font-size: 14px;
        line-height: 1.5;
        -webkit-line-clamp: 3;
    }

    .single-product.woocommerce .ds-service-cover__icon {
        width: 66px;
        height: 66px;
        border-radius: 19px;
        box-shadow: 0 16px 38px color-mix(in srgb, var(--cover-color-1) 22%, transparent);
    }

    .single-product.woocommerce .ds-service-cover__icon svg {
        width: 31px;
        height: 31px;
    }

    .single-product.woocommerce .ds-service-cover__icon img {
        width: 36px;
        height: 36px;
    }

    .single-product.woocommerce .ds-single-agency,
    .single-product.woocommerce .ds-single-trust,
    .single-product.woocommerce div.product .summary > p.price,
    .single-product.woocommerce div.product .summary form.cart,
    .single-product.woocommerce .ds-single-payment-note,
    .single-product.woocommerce .ds-single-specs,
    .single-product.woocommerce div.product .woocommerce-tabs {
        border-radius: 20px;
    }

    .single-product.woocommerce .ds-single-agency {
        align-items: flex-start;
        flex-wrap: wrap;
        padding: 14px;
    }

    .single-product.woocommerce .ds-single-trust {
        grid-template-columns: 1fr;
        padding: 16px 0;
    }

    .single-product.woocommerce .ds-single-trust__item {
        min-height: auto;
        padding: 0;
    }

    .single-product.woocommerce div.product .summary > p.price {
        padding: 18px 0 4px;
        font-size: 34px;
    }

    .single-product.woocommerce div.product .summary > p.price::before,
    .single-product.woocommerce div.product .summary > p.price::after {
        display: none;
    }

    .single-product.woocommerce div.product .summary form.cart {
        padding: 0;
    }

    .single-product.woocommerce .ds-single-trust,
    .single-product.woocommerce .ds-single-payment-note,
    .single-product.woocommerce .ds-single-specs,
    .single-product.woocommerce .ds-single-purchase-proof {
        display: none !important;
    }

    .single-product.woocommerce div.product .summary.entry-summary {
        display: flex;
        flex-direction: column;
        gap: 10px;
        padding: 2px 0 0;
        border: 0;
        border-radius: 0;
        background: transparent;
        box-shadow: none;
    }

    .single-product.woocommerce div.product .summary.entry-summary > .ds-single-purchase-intro {
        order: 1;
        padding: 2px 0 0;
        margin-top: 2px;
        margin-bottom: -5px;
    }

    .single-product.woocommerce div.product .summary.entry-summary > .ds-single-purchase-intro--simple {
        order: 2;
    }

    .single-product.woocommerce div.product .summary.entry-summary:has(.ds-single-purchase-intro--simple) > p.price {
        order: 1;
    }

    .single-product.woocommerce div.product .summary.entry-summary:has(.ds-single-purchase-intro--variable) > form.cart {
        order: 2;
    }

    .single-product.woocommerce div.product .summary.entry-summary:has(.ds-single-purchase-intro--variable) > p.price {
        order: 4;
    }

    .single-product.woocommerce .ds-single-purchase-intro__note {
        display: block;
        overflow: visible;
        color: #667085;
        font-size: 15px;
        font-weight: 800;
        line-height: 1.25;
        -webkit-line-clamp: unset;
    }

    .single-product.woocommerce div.product .summary form.cart {
        display: flex;
        flex-direction: column;
        gap: 10px;
        padding: 0;
    }

    .single-product.woocommerce div.product .summary table.variations {
        order: 2;
        margin-top: -14px !important;
        margin-bottom: 0 !important;
    }

    .single-product.woocommerce div.product .summary table.variations th.label,
    .single-product.woocommerce div.product .summary table.variations .reset_variations {
        display: none !important;
    }

    .single-product.woocommerce div.product .summary .single_variation_wrap {
        display: flex;
        flex-direction: column;
        gap: 12px;
        order: 3;
    }

    .single-product.woocommerce div.product .summary .single_variation {
        order: 3;
    }

    .single-product.woocommerce div.product .summary .woocommerce-variation-description {
        padding: 11px 12px;
        color: #667085;
        font-size: 14px;
        line-height: 1.5;
    }

    .single-product.woocommerce div.product .summary > p.price {
        order: 2;
        padding: 2px 0 0;
        border: 0;
        border-radius: 0;
        background: transparent;
        box-shadow: none;
        font-size: 34px;
    }

    .single-product.woocommerce div.product .summary .woocommerce-variation-add-to-cart,
    .single-product.woocommerce div.product .summary .single_add_to_cart_button {
        order: 5;
    }

    .single-product.woocommerce .ds-single-telegram {
        order: 6;
    }

    .single-product.woocommerce div.product .summary .single_add_to_cart_button,
    .single-product.woocommerce div.product .summary form.cart .single_add_to_cart_button,
    .single-product.woocommerce div.product form.cart .button.single_add_to_cart_button {
        position: absolute !important;
        width: 1px !important;
        min-width: 1px !important;
        max-width: 1px !important;
        height: 1px !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        opacity: 0 !important;
        overflow: hidden !important;
        pointer-events: none !important;
    }

    .single-product.woocommerce .ds-single-telegram {
        display: none !important;
    }

    .single-product.woocommerce .ds-single-mobile-actions {
        position: fixed;
        right: 0;
        bottom: 0;
        left: 0;
        z-index: 10001;
        display: grid;
        grid-template-columns: minmax(0, 0.3fr) minmax(0, 0.7fr);
        gap: 8px;
        width: 100%;
        padding: 11px 24px calc(11px + env(safe-area-inset-bottom, 0px));
        background: #fff;
        box-shadow: 0 -8px 24px rgba(17, 19, 24, 0.1);
        opacity: 1;
        transform: translateY(0);
        pointer-events: auto;
        transition: opacity 0.22s ease, transform 0.22s ease;
    }

    .single-product.woocommerce .ds-single-mobile-actions--footer-visible {
        opacity: 0;
        transform: translateY(120%);
        pointer-events: none;
    }

    .single-product.woocommerce .ds-single-mobile-actions__telegram,
    .single-product.woocommerce .ds-single-mobile-actions__order {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        min-width: 0;
        min-height: 44px;
        height: 44px;
        margin: 0;
        padding: 0 10px;
        border-radius: 12px;
        box-shadow: 0 7px 16px rgba(17, 19, 24, 0.12);
        font-family: var(--type-font-primary);
        font-size: 14px;
        font-weight: 800;
        line-height: 1;
        text-align: center;
        text-decoration: none;
        transition: background 0.2s ease, color 0.2s ease, border-color 0.2s ease, transform 0.2s ease;
    }

    .single-product.woocommerce .ds-single-mobile-actions__telegram {
        gap: 7px;
        border: 1px solid #229ED9;
        background: #229ED9;
        color: #fff;
    }

    .single-product.woocommerce .ds-single-mobile-actions__telegram svg {
        width: 18px;
        height: 18px;
        flex: 0 0 18px;
        color: currentColor;
        fill: currentColor;
        stroke: none;
    }

    .single-product.woocommerce .ds-single-mobile-actions__order {
        border: 0;
        background: var(--ds-single-red);
        color: #fff;
        cursor: pointer;
    }

    .single-product.woocommerce .ds-single-mobile-actions__order:disabled {
        opacity: 0.55;
        cursor: not-allowed;
    }

    .single-product.woocommerce div.product .summary .single_add_to_cart_button:hover,
    .single-product.woocommerce div.product .summary form.cart .single_add_to_cart_button:hover {
        transform: none;
        box-shadow: none;
    }

    .single-product.woocommerce .related.products .ds-product__content {
        padding-top: 10px;
    }

    .single-product.woocommerce .related.products ul.products {
        grid-template-columns: minmax(0, 1fr) !important;
    }

    .single-product.woocommerce .related.products ul.products li.product {
        width: 100% !important;
        max-width: none;
    }

    .single-product.woocommerce .related.products .ds-product__title {
        margin-bottom: 5px !important;
    }

    .single-product.woocommerce .related.products .ds-product__excerpt {
        min-height: calc(13px * 1.42 * 3);
        margin-bottom: 10px;
        -webkit-line-clamp: 3 !important;
    }

    .single-product.woocommerce div.product .woocommerce-tabs {
        padding: 0 !important;
        border: 0;
        border-radius: 0;
        background: transparent;
        box-shadow: none;
        overflow-anchor: none;
    }

    .single-product.woocommerce div.product .woocommerce-tabs ul.tabs {
        display: none !important;
    }

    .single-product.woocommerce div.product .woocommerce-tabs .woocommerce-Tabs-panel {
        display: block !important;
        padding: 0 !important;
        border-bottom: 1px solid rgba(17, 19, 24, 0.08);
        overflow-anchor: none;
    }

    .single-product.woocommerce div.product .woocommerce-tabs .woocommerce-Tabs-panel.ds-single-description-panel {
        position: relative;
        padding-bottom: 18px !important;
        border-top: 0;
    }

    .single-product.woocommerce div.product .woocommerce-tabs .woocommerce-Tabs-panel:first-of-type {
        border-top: 1px solid rgba(17, 19, 24, 0.08);
    }

    .single-product.woocommerce div.product .woocommerce-tabs .woocommerce-Tabs-panel.ds-single-description-panel:first-of-type {
        border-top: 0;
    }

    .single-product.woocommerce .ds-single-description-body {
        position: relative;
        overflow: hidden;
        transition: max-height 0.32s ease;
    }

    .single-product.woocommerce .ds-single-description-panel--has-more:not(.ds-single-description-panel--open) .ds-single-description-body::after {
        content: "";
        position: absolute;
        right: 0;
        bottom: 0;
        left: 0;
        height: 92px;
        pointer-events: none;
        background: linear-gradient(180deg, rgba(255, 255, 255, 0), #fff 78%);
    }

    .single-product.woocommerce .ds-single-description-toggle {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 4px;
        width: max-content;
        max-width: 100%;
        min-height: 34px;
        margin: 12px auto 0;
        padding: 0;
        border: 0;
        background: transparent;
        color: #229ED9;
        font-family: var(--type-font-primary);
        font-size: 14px;
        font-weight: 700;
        line-height: 1.2;
        text-align: center;
    }

    .single-product.woocommerce .ds-single-description-toggle::after {
        content: "";
        width: 6px;
        height: 6px;
        margin-top: -2px;
        border-right: 1.6px solid currentColor;
        border-bottom: 1.6px solid currentColor;
        transform: rotate(45deg);
    }

    .single-product.woocommerce .ds-single-description-panel--open .ds-single-description-toggle::after {
        margin-top: 3px;
        transform: rotate(225deg);
    }

    .single-product.woocommerce .ds-mobile-tab-toggle {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 12px;
        width: 100%;
        min-height: 42px;
        padding: 10px 0;
        border: 0;
        background: transparent;
        color: #667085;
        font-family: var(--type-font-primary);
        font-size: 15px;
        font-weight: 800;
        line-height: 1.2;
        text-align: left;
    }

    .single-product.woocommerce .ds-mobile-tab-open > .ds-mobile-tab-toggle {
        color: var(--ds-single-ink);
    }

    .single-product.woocommerce .ds-mobile-tab-open > .ds-mobile-tab-toggle span:first-child {
        color: var(--ds-single-ink);
    }

    .single-product.woocommerce .ds-mobile-tab-toggle__icon {
        position: relative;
        width: 18px;
        height: 18px;
        flex: 0 0 18px;
        color: #98a2b3;
        transition: transform 0.22s ease, color 0.22s ease;
    }

    .single-product.woocommerce .ds-mobile-tab-toggle__icon::before {
        content: "";
        position: absolute;
        top: 5px;
        left: 5px;
        width: 7px;
        height: 7px;
        border-right: 2px solid currentColor;
        border-bottom: 2px solid currentColor;
        transform: rotate(45deg);
        transform-origin: center;
    }

    .single-product.woocommerce .ds-mobile-tab-open > .ds-mobile-tab-toggle .ds-mobile-tab-toggle__icon {
        color: var(--ds-single-ink);
    }

    .single-product.woocommerce .ds-mobile-tab-open > .ds-mobile-tab-toggle .ds-mobile-tab-toggle__icon {
        transform: rotate(180deg);
    }

    .single-product.woocommerce .ds-mobile-tab-body {
        max-height: 0;
        overflow: hidden;
        transition: max-height 0.28s ease;
    }

    .single-product.woocommerce .ds-mobile-tab-open > .ds-mobile-tab-body {
        padding-bottom: 14px;
    }

    .single-product.woocommerce .ds-mobile-tab-body > *:first-child {
        margin-top: 0 !important;
    }

    .single-product.woocommerce .ds-mobile-tab-body > *:last-child {
        margin-bottom: 0 !important;
    }
}

body.ds-digital-shop-checkout .woocommerce-checkout-review-order-table .cart-subtotal,
body.ds-digital-shop-checkout .wc-block-components-totals-item.wc-block-components-totals-subtotal {
    display: none !important;
}

/* PIAR shell compatibility: production Digital Shop uses a white header. */
body.page-template-template-digital-shop .piar-site-header:not(.is-scrolled) {
    background: var(--piar-color-white);
}
