/* TianDe Slider */
.tds {
    position: relative;
    width: 100%;
    overflow: hidden;
    container-type: inline-size;
    --tds-arrow-bg: rgba(0, 0, 0, .35);
}
.tds *, .tds *::before, .tds *::after { box-sizing: border-box; }

/* Toate slide-urile stau unul peste altul, înălțimea = cel mai înalt slide. */
.tds-track { display: grid; }
.tds-slide {
    grid-area: 1 / 1;
    position: relative;
    display: flex;
    align-items: center;
    aspect-ratio: var(--tds-ratio);
    background: var(--bg);
    opacity: 0;
    visibility: hidden;
    transition: opacity .7s ease, visibility 0s linear .7s;
}
.tds-slide.is-active {
    opacity: 1;
    visibility: visible;
    z-index: 1;
    transition: opacity .7s ease, visibility 0s;
}

/* Fundal */
.tds-media { position: absolute; inset: 0; }
.tds-bg, .tds-bg img { display: block; width: 100%; height: 100%; }
.tds .tds-bg img { object-fit: cover; object-position: center; max-width: none; }

/* Imaginea produsului: în partea opusă textului */
.tds-product {
    position: absolute;
    top: 0;
    bottom: 0;
    width: calc(100% - var(--cw));
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 3% 3%;
}
.pos-left .tds-product { right: 0; }
.pos-right .tds-product { left: 0; }
.pos-center .tds-product { display: none; }
.tds .tds-product img { width: auto; height: auto; max-width: 100%; max-height: 100%; object-fit: contain; }

/* Text */
.tds-content {
    position: relative;
    width: var(--cw);
    padding: 3% 4%;
    text-align: var(--align);
}
.pos-right .tds-content { margin-left: auto; }
.pos-center .tds-content { margin: 0 auto; }

.tds .tds-title {
    margin: 0 0 .35em;
    padding: 0;
    color: var(--title-c);
    font-size: clamp(24px, calc(var(--title-s) * 1vw / 16), calc(var(--title-s) * 1px));
    font-size: clamp(24px, calc(var(--title-s) * 1cqw / 16), calc(var(--title-s) * 1px));
    font-weight: 700;
    line-height: 1.15;
    letter-spacing: -.01em;
}
.tds .tds-text {
    color: var(--text-c);
    font-size: clamp(16px, calc(var(--text-s) * 1vw / 16), calc(var(--text-s) * 1px));
    font-size: clamp(16px, calc(var(--text-s) * 1cqw / 16), calc(var(--text-s) * 1px));
    line-height: 1.3;
}
.tds .tds-text p { margin: 0 0 .5em; color: inherit; font-size: inherit; line-height: inherit; }
.tds .tds-text p:last-child { margin-bottom: 0; }

.tds .tds-check {
    display: inline-block;
    margin: 0;
    padding: 0;
    list-style: none;
    text-align: left;
    color: var(--text-c);
    font-size: clamp(16px, calc(var(--text-s) * 1vw / 16), calc(var(--text-s) * 1px));
    font-size: clamp(16px, calc(var(--text-s) * 1cqw / 16), calc(var(--text-s) * 1px));
    line-height: 1.2;
}
.tds-text + .tds-check { margin-top: .6em; }
.tds .tds-check li {
    display: flex;
    align-items: center;
    gap: .35em;
    margin: 0 0 .18em;
    padding: 0;
    color: inherit;
    font-size: inherit;
}
.tds .tds-check li::before { content: none; }
.tds-check-icon {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.05em;
    height: 1.05em;
    border-radius: .14em;
    background: var(--check-c);
    color: #fff;
}
.tds-check-icon svg { width: 82%; height: 82%; }

.tds .tds-btn {
    display: inline-flex;
    align-items: center;
    gap: .6em;
    margin-top: clamp(16px, 2.2cqw, 36px);
    padding: .7em 1.9em;
    background: var(--btn-bg);
    color: var(--btn-c);
    border: 0;
    font-size: clamp(15px, 1.7cqw, 28px);
    font-weight: 700;
    line-height: 1.2;
    text-decoration: none;
    transition: filter .2s ease, transform .2s ease;
}
.tds .tds-btn:hover, .tds .tds-btn:focus-visible { color: var(--btn-c); filter: brightness(1.1); transform: translateY(-1px); }
.tds .tds-btn:focus-visible { outline: 3px solid var(--btn-bg); outline-offset: 3px; }
.tds-btn-pill { border-radius: 999px; }
.tds-btn-rounded { border-radius: 6px; }
.tds-btn-square { border-radius: 0; }
.tds-btn-icon { width: 1.15em; height: 1.15em; }
.tds-check + .tds-btn { display: flex; width: max-content; margin-left: auto; margin-right: auto; }

/* Săgeți și puncte */
.tds-arrow {
    position: absolute;
    top: 50%;
    z-index: 3;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 56px;
    margin-top: -28px;
    padding: 0;
    border: 0;
    background: var(--tds-arrow-bg);
    color: #fff;
    cursor: pointer;
    opacity: 0;
    transition: opacity .25s ease, background .2s ease;
}
.tds:hover .tds-arrow, .tds-arrow:focus-visible { opacity: 1; }
.tds-arrow:hover { background: rgba(0, 0, 0, .55); }
.tds-arrow svg { width: 24px; height: 24px; }
.tds-prev { left: 0; border-radius: 0 6px 6px 0; }
.tds-next { right: 0; border-radius: 6px 0 0 6px; }

.tds-dots {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 14px;
    z-index: 3;
    display: flex;
    justify-content: center;
    gap: 8px;
}
.tds .tds-dot {
    width: 10px;
    height: 10px;
    padding: 0;
    border: 2px solid #fff;
    border-radius: 50%;
    background: rgba(0, 0, 0, .25);
    box-shadow: 0 0 0 1px rgba(0, 0, 0, .15);
    cursor: pointer;
    transition: width .25s ease, background .25s ease;
}
.tds .tds-dot.is-active { width: 26px; border-radius: 6px; background: #fff; }

/* Telefon: imaginea sus, textul dedesubt */
@media (max-width: 767px) {
    .tds-slide {
        flex-direction: column;
        align-items: stretch;
        aspect-ratio: auto;
        background: var(--mbg);
    }
    .tds-media {
        position: relative;
        inset: auto;
        aspect-ratio: var(--tds-ratio-m);
        background: var(--bg);
        overflow: hidden;
    }
    .tds .tds-bg img { object-position: var(--mpos); }
    .tds-product { left: 0; right: 0; width: 100%; padding: 6%; }
    .pos-center .tds-product { display: flex; }
    .tds-content {
        flex: 1 1 auto;
        display: flex;
        align-items: center;
        justify-content: center;
        width: 100%;
        margin: 0;
        padding: 22px 18px 46px;
        text-align: center;
    }
    .tds-content-inner { width: 100%; }
    .tds .tds-btn { margin-top: 18px; }
    .tds-arrow {
        top: calc(100cqw / var(--tds-ratio-m) / 2);
        width: 36px;
        height: 46px;
        margin-top: -23px;
        opacity: 1;
    }
    .tds-arrow svg { width: 20px; height: 20px; }
}

@media (prefers-reduced-motion: reduce) {
    .tds-slide, .tds-slide.is-active, .tds .tds-btn, .tds .tds-dot { transition: none; }
}
