/* =========================
   Prices Widget - Desktop
========================= */

.prc-head {
    margin-bottom:56px;
}

.prc .betit-w,
.prc .tit-wdt {
    color:var(--background-color);
}

.prc-tabs {
    display:flex;
    align-items:flex-end;
    gap:0;
}

.prc-tab {
    min-height:64px;
    display:flex;
    align-items:center;
    gap:14px;
    padding-inline:30px;
    border-start-start-radius:22px;
    border-start-end-radius:22px;
    color:var(--background-color);
    font-size: 20px;
    font-weight: 700;
    line-height:1.4;
    text-align:start;
    transition:var(--transition);
}

.prc-tab > i,
.prc-tab > svg {
    flex:0 0 auto;
}

.prc-tab > span {
    min-width:0;
}

.prc-tab.active {
    background: color-mix(in srgb,var(--diver2) 15%,transparent);
}

.prc-tab:focus-visible {
    outline:3px solid color-mix(in srgb,var(--background-color) 58%,transparent);
    outline-offset:-3px;
}

.prc-panels {
    overflow:hidden;
    border-start-start-radius:0;
    border-start-end-radius:22px;
    border-end-start-radius:22px;
    border-end-end-radius:22px;
    background: color-mix(in srgb,var(--background-color) 15%,transparent);
}

.prc-panel {
    display:none;
}

.prc-panel.active {
    display:block;
}

.prc-empty {
    padding:28px;
    border-radius:22px;
    background:color-mix(in srgb,var(--background-color) 20%,transparent);
    color:var(--background-color);
    font-size:17px;
    font-weight:800;
    line-height:1.7;
    text-align:center;
}

.prc-row {
    min-height:76px;
    display:flex;
    align-items:center;
    gap:28px;
    padding:18px 30px;
    border-bottom: 5px solid color-mix(in srgb,var(--uicolor) 66%,transparent);
}

.prc-row:last-child {
    border-bottom:0;
}

.prc-row strong {
    flex:0 0 250px;
    min-width:0;
    color:var(--background-color);
    font-size:19px;
    font-weight:700;
    line-height:1.45;
    overflow-wrap:anywhere;
}

.prc-row p {
    flex:1;
    min-width:0;
    display:flex;
    align-items:center;
    gap:12px;
    margin:0;
    color:var(--background-color);
    font-size:17px;
    font-weight:600;
    line-height:1.6;
}

.prc-row p i {
    flex:0 0 auto;
}

.prc-row p span {
    min-width:0;
    overflow-wrap:anywhere;
}

.prc-row b {
    flex:0 0 210px;
    min-width:0;
    color:var(--background-color);
    font-family:var(--f-number);
    font-size:21px;
    font-weight:900;
    line-height:1.4;
    text-align:start;
    unicode-bidi:plaintext;
    overflow-wrap:anywhere;
}

.prc-offers {
    margin-block-start:52px;
    display:flex;
    align-items:stretch;
    gap:16px;
}

.prc-offers:empty {
    display:none;
    margin:0;
}

.prc-ofr {
    flex:1;
    min-width:0;
    min-height:160px;
    display:flex;
    align-items:stretch;
    overflow:hidden;
    border-radius:24px;
    background:var(--background-color);
    color:var(--primary-text);
}

.prc-o-txt {
    flex:1;
    min-width:0;
    display:flex;
    flex-direction:column;
    padding:24px;
}

.prc-o-txt strong {
    color:var(--uicolor);
    font-family:var(--f-number);
    font-size:48px;
    font-weight:500;
    line-height:1;
    overflow-wrap:anywhere;
}

.prc-o-txt span {
    margin-block-start:8px;
    font-size: 25px;
    font-weight: 800;
    line-height:1.4;
    overflow-wrap:anywhere;
}

.prc-o-txt em {
    margin-block-start:auto;
    color:var(--secondarytext);
    font-size:16px;
    font-style:normal;
    line-height:1.55;
    overflow-wrap:anywhere;
}

.prc-o-img {
    position:relative;
    inset-block-end:-17px;
    flex:0 0 150px;
    min-width:0;
    display:flex;
    align-items:center;
    justify-content:center;
}

.prc-o-img img {
    max-width:100%;
    height:auto;
    object-fit:contain;
}

.prc-o-img i {
    width:72px;
    height:72px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    color:var(--background-color);
    background:var(--uicolor2);
    font-size:32px;
}

.-ycw-section.-ycwt-prices {
    background: linear-gradient(180deg, var(--uicolor), var(--uicolor3));
    color:var(--background-color);
    overflow: hidden;
}

/* =========================
   English / LTR Support
========================= */

html[dir="ltr"] .prc {
    direction:ltr;
    font-family:var(--f-number);
}

html[dir="ltr"] .prc-head .tit-wdt {
    line-height:1.18;
    letter-spacing:-1px;
}

html[dir="ltr"] .prc-tab,
html[dir="ltr"] .prc-row,
html[dir="ltr"] .prc-o-txt {
    text-align:start;
}

/* =========================
   Tablet Responsive
========================= */

@media only screen and (max-width:991px) {
    .prc-head {
        margin-bottom:42px;
    }

    .prc-tabs {
        overflow-x:auto;
        overflow-y:hidden;
        scrollbar-width:none;
        overscroll-behavior-inline:contain;
        -webkit-overflow-scrolling:touch;
    }

    .prc-tabs::-webkit-scrollbar {
        display:none;
    }

    .prc-tab {
        flex:0 0 auto;
        min-width:max-content;
        min-height:58px;
        padding-inline:24px;
        font-size:18px;
        white-space:nowrap;
    }

    .prc-row {
        min-height:96px;
        display:grid;
        grid-template-columns:minmax(150px,.8fr) minmax(220px,1.4fr) minmax(145px,.7fr);
        align-items:center;
        gap:18px;
        padding:18px 24px;
    }

    .prc-row strong,
    .prc-row p,
    .prc-row b {
        min-width:0;
    }

    .prc-row strong {
        font-size:17px;
    }

    .prc-row p {
        font-size:15px;
    }

    .prc-row b {
        font-size:18px;
    }

    .prc-offers {
        display:grid;
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:14px;
        margin-block-start:38px;
    }

    .prc-ofr {
        min-height:150px;
    }

    .prc-ofr:only-child {
        grid-column:1 / -1;
        max-width:620px;
    }

    .prc-o-txt {
        padding:22px;
    }

    .prc-o-txt strong {
        font-size:42px;
    }

    .prc-o-txt span {
        font-size:18px;
    }

    .prc-o-txt em {
        font-size:14px;
    }

    .prc-o-img {
        flex-basis:120px;
    }
}

/* =========================
   Mobile App Experience
========================= */

@media only screen and (max-width:767px) {
    .prc-head {
        margin-bottom:28px;
    }

    .prc .betit-w {
        margin-bottom:10px;
        font-size:16px;
    }

    .prc-head .tit-wdt,
    html[dir="ltr"] .prc-head .tit-wdt {
        max-width:100%;
        font-size:clamp(28px,7.5vw,34px);
        line-height:1.24;
        letter-spacing:-.35px;
    }

    .prc-tabs {
        gap:8px;
        scroll-padding-inline:20px;
        scroll-snap-type:inline proximity;
        padding-bottom: 12px;
    }

    .prc-tab {
        min-height:50px;
        gap:9px;
        padding-inline:16px;
        border:1px solid color-mix(in srgb,var(--background-color) 24%,transparent);
        border-radius:16px;
        background:color-mix(in srgb,var(--background-color) 9%,transparent);
        font-size:15px;
        font-weight:700;
        scroll-snap-align:start;
    }

    .prc-tab.active {
        border-color:var(--background-color);
        background:var(--background-color);
        color:var(--uicolor);
        box-shadow:0 10px 24px -18px color-mix(in srgb,var(--primary-text) 48%,transparent);
    }

    .prc-tab:active {
        transform:scale(.98);
    }

    .prc-panels {
        margin-block-start:2px;
        overflow:visible;
        border-radius:0;
        background:transparent;
    }

    .prc-panel.active {
        display:grid;
        gap:11px;
    }

    .prc-row {
        min-height:0;
        grid-template-columns:minmax(0,1fr) minmax(110px,auto);
        gap:11px 12px;
        padding:16px;
        border:1px solid color-mix(in srgb,var(--background-color) 64%,transparent);
        border-radius:20px;
        background:var(--background-color);
        box-shadow:0 12px 28px -22px color-mix(in srgb,var(--primary-text) 42%,transparent);
    }

    .prc-row strong {
        grid-column:1;
        color:var(--primary-text);
        font-size:16px;
        font-weight:800;
        line-height:1.45;
    }

    .prc-row p {
        grid-column:1 / -1;
        align-items:flex-start;
        gap:9px;
        color:var(--secondarytext);
        font-size:14px;
        font-weight:500;
        line-height:1.65;
    }

    .prc-row p i {
        margin-block-start:.35em;
        color:var(--uicolor);
        font-size:12px;
    }

    .prc-row b {
        grid-column:2;
        grid-row:1;
        justify-self:end;
        max-width:180px;
        padding:8px 10px;
        border-radius:12px;
        background:color-mix(in srgb,var(--uicolor) 9%,var(--background-color));
        color:var(--uicolor);
        font-size:15px;
        line-height:1.35;
        text-align:center;
    }

    .prc-empty {
        padding:24px 18px;
        border:1px dashed color-mix(in srgb,var(--background-color) 52%,transparent);
        border-radius:20px;
        font-size:15px;
    }

    .prc-offers {
        display:flex;
        gap:12px;
        margin-block-start:30px;
        margin-inline:-20px;
        overflow-x:auto;
        overflow-y:hidden;
        padding:2px 20px 14px;
        scroll-padding-inline:20px;
        scroll-snap-type:inline mandatory;
        scrollbar-width:none;
        overscroll-behavior-inline:contain;
        -webkit-overflow-scrolling:touch;
    }

    .prc-offers::-webkit-scrollbar {
        display:none;
    }

    .prc-ofr,
    .prc-ofr:only-child {
        flex:0 0 min(86vw,380px);
        min-height:150px;
        max-width:none;
        border:1px solid color-mix(in srgb,var(--uicolor) 10%,var(--diver));
        border-radius:20px;
        scroll-snap-align:start;
        scroll-snap-stop:always;
        box-shadow:0 12px 28px -22px color-mix(in srgb,var(--primary-text) 38%,transparent);
    }

    .prc-o-txt {
        padding:18px;
    }

    .prc-o-txt strong {
        font-size:38px;
        font-weight:700;
        line-height:1.1;
    }

    .prc-o-txt span {
        margin-block-start:7px;
        font-size:17px;
        font-weight:700;
    }

    .prc-o-txt em {
        padding-block-start:10px;
        font-size:13px;
        line-height:1.5;
    }

    .prc-o-img {
        inset-block-end:0;
        flex-basis:110px;
        padding:10px 8px;
    }

    .prc-o-img img {
        max-height:130px;
    }

    .prc-o-img i {
        width:58px;
        height:58px;
        font-size:25px;
    }
}

/* =========================
   Small Mobile Adjustments
========================= */

@media only screen and (max-width:480px) {
    .prc-ofr,
    .prc-ofr:only-child {
        flex-basis:min(calc(100vw - 48px),360px);
    }
}

@media only screen and (max-width:390px) {
    .prc-head {
        margin-bottom:24px;
    }

    .prc-head .tit-wdt,
    html[dir="ltr"] .prc-head .tit-wdt {
        font-size:clamp(27px,8.4vw,31px);
    }

    .prc-tab {
        min-height:48px;
        padding-inline:14px;
        font-size:14px;
    }

    .prc-panel.active {
        gap:10px;
    }

    .prc-row {
        grid-template-columns:minmax(0,1fr);
        gap:9px;
        padding:15px;
        border-radius:18px;
    }

    .prc-row strong,
    .prc-row p,
    .prc-row b {
        grid-column:1;
    }

    .prc-row strong {
        font-size:15.5px;
    }

    .prc-row p {
        font-size:13.5px;
    }

    .prc-row b {
        grid-row:auto;
        justify-self:start;
        max-width:100%;
        margin-block-start:2px;
        padding:7px 10px;
        font-size:14px;
        text-align:start;
    }

    .prc-o-txt {
        padding:16px;
    }

    .prc-o-txt strong {
        font-size:34px;
    }

    .prc-o-txt span {
        font-size:16px;
    }

    .prc-o-img {
        flex-basis:92px;
        padding-inline:6px;
    }

    .prc-o-img i {
        width:52px;
        height:52px;
        font-size:22px;
    }
}

@media (prefers-reduced-motion:reduce) {
    .prc-tab {
        transition:none;
    }

    .prc-tabs,
    .prc-offers {
        scroll-behavior:auto;
    }
}