
/* =========================================================
   ONI SYSTEM – UNIVERZÁLNÍ DETAIL PRODUKTU
   Shoptet STEP
   Karta „O produktu“ sjednocená se stylem ONI
   ========================================================= */


/* =========================================================
   1. SKRYTÍ VÝCHOZÍCH INFORMACÍ A AKCÍ
   ========================================================= */

/* EAN */
.p-detail .descr-info tr.productEan {
    display: none !important;
}

/* Kategorie */
.p-detail .descr-info table tr:has(> td > a) {
    display: none !important;
}

/* Tisk + Zeptat se + Sdílet */
.p-detail .social-buttons-wrapper {
    display: none !important;
}


/* =========================================================
   2. ZÁLOŽKA „O PRODUKTU“
   Čistý vzhled navazující na ostatní stránky ONI
   ========================================================= */

.type-product #p-detail-tabs li[data-testid="tabDescription"] > .shp-tab-link {
    font-size: 0 !important;
}

.type-product #p-detail-tabs li[data-testid="tabDescription"] > .shp-tab-link::after {
    content: "O produktu";
    font-size: 14px;
    line-height: 1.4;
    font-weight: 700;
}

.type-product .p-detail-tabs-wrapper {
    margin-top: 34px;
}

.type-product .p-detail-tabs-wrapper .shp-tabs-holder,
.type-product .p-detail-tabs-wrapper .shp-tabs {
    margin: 0;
    background: #fff;
    border: 0;
    border-bottom: 1px solid #e5e5e5;
}

.type-product .p-detail-tabs-wrapper .shp-tab {
    margin: 0;
}

.type-product .p-detail-tabs-wrapper .shp-tab-link {
    margin: 0 24px 0 0;
    padding: 12px 2px 11px;
    color: #555;
    background: transparent;
    border: 0;
    border-bottom: 3px solid transparent;
    border-radius: 0;
    font-family: "Open Sans", Arial, sans-serif;
    font-size: 14px;
    line-height: 1.4;
    font-weight: 700;
    text-decoration: none;
}

.type-product .p-detail-tabs-wrapper .shp-tab.active .shp-tab-link {
    color: #1F1F1F;
    background: transparent;
    border: 0;
    border-bottom: 3px solid #ed1c24;
}

.type-product .p-detail-tabs-wrapper .shp-tab-link:hover,
.type-product .p-detail-tabs-wrapper .shp-tab-link:focus {
    color: #ed1c24;
    background: transparent;
}

.type-product #description {
    padding-top: 0;
}

.type-product #description .description-inner,
.type-product #description .basic-description {
    width: 100%;
    max-width: 100%;
}

/* Skrytí výchozího nadpisu Shoptetu „Detailní popis produktu“ */
.type-product #description .basic-description > h3:first-child {
    display: none;
}


/* =========================================================
   3. SPOLEČNÁ TYPOGRAFIE ONI
   H2 27 px / H3 17 px / text 14 px
   ========================================================= */

.oni-product-content,
.oni-about-product {
    box-sizing: border-box;
    width: 100%;
    max-width: 1170px;
    margin-right: auto;
    margin-left: auto;
    font-family: "Open Sans", Arial, sans-serif;
    color: #1F1F1F;
    font-size: 14px;
    line-height: 1.7;
}

.oni-about-product *,
.oni-product-content * {
    box-sizing: border-box;
}

.oni-product-content h2,
.oni-about-product h2 {
    margin: 0 0 10px;
    padding: 0;
    color: #1F1F1F;
    font-size: 27px;
    line-height: 1.2;
    font-weight: 700;
}

.oni-product-content h3,
.oni-about-product h3 {
    margin: 0 0 8px;
    padding: 0;
    color: #1F1F1F;
    font-size: 17px;
    line-height: 1.4;
    font-weight: 700;
}

.oni-product-content p,
.oni-about-product p {
    margin: 0 0 12px;
    padding: 0;
    color: #1F1F1F;
    font-size: 14px;
    line-height: 1.7;
}

.oni-product-content p:last-child,
.oni-about-product p:last-child {
    margin-bottom: 0;
}


/* =========================================================
   4. HLAVNÍ TEXTOVÁ ČÁST „O PRODUKTU“
   ========================================================= */

.oni-product-content {
    padding: 30px 0 0;
}

.oni-product-content .oni-product-section {
    margin: 0;
    padding: 26px 0;
    border-bottom: 1px solid #e8e8e8;
}

.oni-product-content .oni-product-section:first-child {
    padding-top: 0;
}

.oni-product-content .oni-product-section:last-child {
    padding-bottom: 0;
    border-bottom: 0;
}

.oni-product-content .oni-product-lead {
    margin: 0 0 12px;
    color: #ed1c24;
    font-size: 14px;
    line-height: 1.55;
    font-weight: 700;
}

.oni-product-content a {
    color: #ed1c24;
    text-decoration: underline;
    text-underline-offset: 2px;
}

.oni-product-content a:hover,
.oni-product-content a:focus {
    color: #c9151b;
    text-decoration: none;
}


/* =========================================================
   5. ROZŠÍŘENÁ KARTA „O PRODUKTU“
   Pokud je použito HTML .oni-about-product
   ========================================================= */

.oni-about-product {
    padding: 30px 0 0;
}

.oni-about-product__intro {
    display: grid;
    grid-template-columns: minmax(0, 1.55fr) minmax(280px, .75fr);
    gap: 30px;
    align-items: start;
}

.oni-about-product__content {
    min-width: 0;
}

.oni-about-product__label {
    display: inline-block;
    margin: 0 0 8px;
    color: #ed1c24;
    font-size: 13px;
    line-height: 1.4;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .04em;
}

.oni-about-product__lead {
    max-width: 780px;
    margin: 0 0 16px !important;
    color: #222 !important;
    font-size: 17px !important;
    line-height: 1.55 !important;
    font-weight: 600;
}


/* =========================================================
   6. HLAVNÍ VÝHODY
   Jemný ONI panel bez výrazného „eshopového“ vzhledu
   ========================================================= */

.oni-about-product__benefits {
    padding: 22px 24px;
    background: #f7f7f7;
    border: 1px solid #e8e8e8;
    border-top: 3px solid #ed1c24;
    border-radius: 6px;
}

.oni-about-product__benefits h3 {
    margin-bottom: 14px;
}

.oni-about-product__benefits ul {
    display: grid;
    gap: 13px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.oni-about-product__benefits li {
    position: relative;
    margin: 0;
    padding: 0 0 0 21px;
}

.oni-about-product__benefits li::before {
    content: "";
    position: absolute;
    top: 7px;
    left: 0;
    width: 7px;
    height: 7px;
    background: #ed1c24;
    border-radius: 50%;
}

.oni-about-product__benefits strong,
.oni-about-product__benefits span {
    display: block;
}

.oni-about-product__benefits strong {
    margin-bottom: 1px;
    color: #222;
    font-size: 14px;
    line-height: 1.45;
    font-weight: 700;
}

.oni-about-product__benefits span {
    color: #666;
    font-size: 14px;
    line-height: 1.5;
}


/* =========================================================
   7. RYCHLÉ PŘEHLEDOVÉ BODY
   ========================================================= */

.oni-about-product__highlights {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    margin-top: 26px;
}

.oni-about-product__highlight {
    min-width: 0;
    padding: 18px 20px;
    background: #f7f7f7;
    border-left: 3px solid #ed1c24;
}

.oni-about-product__highlight-title,
.oni-about-product__highlight-text {
    display: block;
}

.oni-about-product__highlight-title {
    margin-bottom: 3px;
    color: #222;
    font-size: 14px;
    line-height: 1.45;
    font-weight: 700;
}

.oni-about-product__highlight-text {
    color: #666;
    font-size: 14px;
    line-height: 1.5;
}


/* =========================================================
   8. OBSAH BALENÍ + SLUŽBA
   ========================================================= */

.oni-about-product__details {
    margin-top: 30px;
}

.oni-about-product__section {
    padding: 28px 0;
    border-top: 1px solid #e8e8e8;
}

.oni-about-product__section:last-child {
    padding-bottom: 0;
}

.oni-about-product__section > h2 {
    margin-bottom: 14px;
}


/* Obsah balení */
.oni-about-product__package-card {
    margin-bottom: 18px;
    padding: 17px 20px;
    background: #f7f7f7;
    border: 1px solid #e8e8e8;
    border-left: 3px solid #ed1c24;
    border-radius: 6px;
}

.oni-about-product__package-item {
    display: flex;
    flex-wrap: wrap;
    gap: 4px 14px;
    align-items: baseline;
}

.oni-about-product__package-item strong {
    color: #222;
    font-size: 14px;
    line-height: 1.5;
    font-weight: 700;
}

.oni-about-product__package-item span {
    color: #666;
    font-size: 14px;
    line-height: 1.5;
}


/* Pomoc s výběrem + CTA */
.oni-about-product__help {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 24px;
    align-items: center;
    padding: 20px 22px;
    background: #f7f7f7;
}

.oni-about-product__help h3 {
    margin-bottom: 4px;
}

.oni-about-product__help p {
    margin: 0;
}

.oni-about-product__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: flex-end;
}

.oni-about-product .oni-about-product__button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    padding: 10px 16px;
    border: 1px solid #ed1c24;
    border-radius: 3px;
    font-family: "Open Sans", Arial, sans-serif;
    font-size: 14px;
    line-height: 1.3;
    font-weight: 700;
    text-align: center;
    text-decoration: none !important;
    text-transform: uppercase;
    transition:
        background-color .2s ease,
        border-color .2s ease,
        color .2s ease;
}

.oni-about-product .oni-about-product__button--primary {
    color: #fff !important;
    background: #ed1c24;
}

.oni-about-product .oni-about-product__button--primary:hover,
.oni-about-product .oni-about-product__button--primary:focus {
    color: #fff !important;
    background: #c9151b;
    border-color: #c9151b;
}

.oni-about-product .oni-about-product__button--secondary {
    color: #ed1c24 !important;
    background: transparent;
}

.oni-about-product .oni-about-product__button--secondary:hover,
.oni-about-product .oni-about-product__button--secondary:focus {
    color: #fff !important;
    background: #ed1c24;
}


/* Služba */
.oni-about-product__service-lead {
    margin: -4px 0 16px !important;
    color: #555 !important;
    font-weight: 600;
}

.oni-about-product__service-box {
    display: grid;
    grid-template-columns: 185px minmax(0, 1fr);
    overflow: hidden;
    background: #f7f7f7;
    border: 1px solid #e5e5e5;
    border-radius: 4px;
}

.oni-about-product__service-price {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 22px;
    background: #fff;
    border-right: 1px solid #e5e5e5;
}

.oni-about-product__service-label {
    margin-bottom: 3px;
    color: #ed1c24;
    font-size: 13px;
    line-height: 1.4;
    font-weight: 700;
    text-transform: uppercase;
}

.oni-about-product__service-price strong {
    color: #1F1F1F;
    font-size: 27px;
    line-height: 1.2;
    font-weight: 700;
}

.oni-about-product__service-content {
    padding: 21px 24px;
}

.oni-about-product__service-content p {
    margin-bottom: 9px;
}

.oni-about-product__service-content strong {
    color: #222;
    font-weight: 700;
}



/* =========================================================
   9. TECHNICKÉ PARAMETRY
   Univerzální pro všechny produktové stránky ONI.
   HTML: .oni-tech-specs
   ========================================================= */

.oni-tech-specs,
.oni-tech-specs * {
    box-sizing: border-box;
}

.oni-tech-specs {
    width: 100%;
    max-width: 1170px;
    margin: 0 auto;
    padding: 30px 0 0;
    font-family: "Open Sans", Arial, sans-serif;
    color: #1F1F1F;
    font-size: 14px;
    line-height: 1.7;
}

.oni-tech-specs__header {
    width: 100%;
    max-width: none;
    margin-bottom: 24px;
}

.oni-tech-specs__label {
    display: inline-block;
    margin: 0 0 8px;
    color: #ed1c24;
    font-size: 13px;
    line-height: 1.4;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .04em;
}

.oni-tech-specs h2 {
    margin: 0 0 10px;
    padding: 0;
    color: #1F1F1F;
    font-size: 27px;
    line-height: 1.2;
    font-weight: 700;
}

.oni-tech-specs h3 {
    margin: 0;
    padding: 16px 20px;
    color: #1F1F1F;
    background: #f7f7f7;
    border-left: 3px solid #ed1c24;
    font-size: 17px;
    line-height: 1.4;
    font-weight: 700;
}

.oni-tech-specs p {
    margin: 0;
    padding: 0;
    color: #555;
    font-size: 14px;
    line-height: 1.7;
}


/* Rychlý přehled */
.oni-tech-specs__quick {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin-bottom: 28px;
    border-top: 1px solid #e5e5e5;
    border-bottom: 1px solid #e5e5e5;
}

.oni-tech-specs__quick-item {
    min-width: 0;
    padding: 18px 20px;
}

.oni-tech-specs__quick-item + .oni-tech-specs__quick-item {
    border-left: 1px solid #e5e5e5;
}

.oni-tech-specs__quick-value,
.oni-tech-specs__quick-label {
    display: block;
}

.oni-tech-specs__quick-value {
    margin-bottom: 3px;
    color: #1F1F1F;
    font-size: 17px;
    line-height: 1.35;
    font-weight: 700;
}

.oni-tech-specs__quick-label {
    color: #666;
    font-size: 13px;
    line-height: 1.5;
}


/* Skupiny parametrů */
.oni-tech-specs__groups {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
}

.oni-tech-specs__group {
    min-width: 0;
    margin: 0;
    border: 1px solid #e5e5e5;
    background: #fff;
}

.oni-tech-specs__list {
    margin: 0;
    padding: 0 24px;
    overflow-x: auto;
}

.oni-tech-specs__row {
    display: grid;
    grid-template-columns: max-content max-content;
    justify-content: space-between;
    gap: 32px;
    min-width: max-content;
    margin: 0;
    padding: 14px 8px;
    border-bottom: 1px solid #ededed;
}

.oni-tech-specs__row:last-child {
    border-bottom: 0;
}

.oni-tech-specs dt,
.oni-tech-specs dd {
    margin: 0;
    padding: 0 8px;
    white-space: nowrap;
    overflow-wrap: normal;
    word-break: normal;
}

.oni-tech-specs dt {
    color: #555;
    font-size: 14px;
    line-height: 1.55;
    font-weight: 600;
}

.oni-tech-specs dd {
    color: #222;
    font-size: 14px;
    line-height: 1.55;
    font-weight: 400;
}


/* Pokud Shoptet vytvoří vlastní záložku Parametry,
   sjednotí se její typografie s ostatními záložkami. */
.type-product #p-detail-tabs li[data-testid="tabParameters"] > .shp-tab-link,
.type-product #p-detail-tabs a[href="#parameters"] {
    font-family: "Open Sans", Arial, sans-serif;
    font-size: 14px;
    line-height: 1.4;
    font-weight: 700;
}


/* Technické parametry – tablet */
@media (max-width: 991px) {

    .oni-tech-specs__quick {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .oni-tech-specs__quick-item:nth-child(3) {
        border-left: 0;
        border-top: 1px solid #e5e5e5;
    }

    .oni-tech-specs__quick-item:nth-child(4) {
        border-top: 1px solid #e5e5e5;
    }

    .oni-tech-specs__groups {
        grid-template-columns: 1fr;
    }
}


/* =========================================================
   10. MOBIL
   ========================================================= */

@media (max-width: 767px) {

    .type-product .p-detail-tabs-wrapper {
        margin-top: 26px;
    }

    .type-product .p-detail-tabs-wrapper .shp-tab-link {
        margin-right: 18px;
        padding: 10px 2px 9px;
    }

    .oni-product-content,
    .oni-about-product {
        padding-top: 22px;
    }

    .oni-product-content h2,
    .oni-about-product h2 {
        font-size: 23px;
        line-height: 1.2;
    }

    .oni-product-content .oni-product-section {
        padding: 21px 0;
    }

    .oni-product-content .oni-product-section:first-child {
        padding-top: 0;
    }

    .oni-product-content .oni-product-lead {
        margin-bottom: 10px;
    }

    .oni-about-product__intro {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .oni-about-product__lead {
        margin-bottom: 14px !important;
        font-size: 16px !important;
    }

    .oni-about-product__benefits {
        padding: 19px 18px;
    }

    .oni-about-product__highlights {
        grid-template-columns: 1fr;
        gap: 8px;
        margin-top: 20px;
    }

    .oni-about-product__highlight {
        padding: 15px 17px;
    }

    .oni-about-product__details {
        margin-top: 22px;
    }

    .oni-about-product__section {
        padding: 22px 0;
    }

    .oni-about-product__package-card {
        padding: 15px 17px;
    }

    .oni-about-product__package-item {
        display: block;
    }

    .oni-about-product__package-item strong,
    .oni-about-product__package-item span {
        display: block;
    }

    .oni-about-product__package-item strong {
        margin-bottom: 2px;
    }

    .oni-about-product__help {
        grid-template-columns: 1fr;
        gap: 15px;
        padding: 18px;
    }

    .oni-about-product__actions {
        justify-content: stretch;
    }

    .oni-about-product .oni-about-product__button {
        width: 100%;
    }

    .oni-about-product__service-box {
        grid-template-columns: 1fr;
    }

    .oni-about-product__service-price {
        padding: 18px;
        border-right: 0;
        border-bottom: 1px solid #e5e5e5;
    }

    .oni-about-product__service-content {
        padding: 18px;
    }


    /* Technické parametry */
    .oni-tech-specs {
        padding-top: 22px;
    }

    .oni-tech-specs__header {
        margin-bottom: 20px;
    }

    .oni-tech-specs h2 {
        font-size: 23px;
        line-height: 1.2;
    }

    .oni-tech-specs__quick {
        grid-template-columns: 1fr 1fr;
        margin-bottom: 22px;
    }

    .oni-tech-specs__quick-item {
        padding: 15px 14px;
    }

    .oni-tech-specs__quick-value {
        font-size: 16px;
    }

    .oni-tech-specs__groups {
        gap: 14px;
    }

    .oni-tech-specs h3 {
        padding: 14px 16px;
    }

    .oni-tech-specs__list {
        padding: 0 14px;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }

    .oni-tech-specs__row {
        grid-template-columns: max-content max-content;
        justify-content: space-between;
        gap: 24px;
        min-width: max-content;
        padding: 12px 6px;
    }

    .oni-tech-specs dt {
        font-size: 13px;
    }

    .oni-tech-specs dd {
        font-size: 14px;
        font-weight: 600;
    }

}

/* =========================================================
   MANUÁL – UNIVERZÁLNÍ KARTA PRO PRODUKTY ONI
   Doporučený obal obsahu:
   .oni-product-manual
   ========================================================= */

.oni-product-manual,
.oni-product-manual * {
    box-sizing: border-box;
}

.oni-product-manual {
    width: 100%;
    max-width: 1170px;
    margin: 0 auto;
    padding: 30px 0 0;
    font-family: "Open Sans", Arial, sans-serif;
    color: #1F1F1F;
    font-size: 14px;
    line-height: 1.7;
}


/* Úvod karty */
.oni-product-manual__header {
    max-width: 780px;
    margin: 0 0 24px;
}

.oni-product-manual__label {
    display: inline-block;
    margin: 0 0 8px;
    color: #ed1c24;
    font-size: 13px;
    line-height: 1.4;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .04em;
}

.oni-product-manual h2 {
    margin: 0 0 10px;
    padding: 0;
    color: #1F1F1F;
    font-size: 27px;
    line-height: 1.2;
    font-weight: 700;
}

.oni-product-manual h3 {
    margin: 0 0 6px;
    padding: 0;
    color: #1F1F1F;
    font-size: 17px;
    line-height: 1.4;
    font-weight: 700;
}

.oni-product-manual p {
    margin: 0 0 12px;
    padding: 0;
    color: #555;
    font-size: 14px;
    line-height: 1.7;
}


/* Seznam dokumentů / manuálů */
.oni-product-manual__files {
    display: grid;
    gap: 12px;
    margin: 0;
    padding: 0;
}

.oni-product-manual__file {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr) auto;
    gap: 16px;
    align-items: center;
    min-width: 0;
    padding: 18px 20px;
    background: #f7f7f7;
    border-left: 3px solid #ed1c24;
}

.oni-product-manual__file-icon {
    position: relative;
    display: block;
    width: 34px;
    height: 40px;
    background: #fff;
    border: 1px solid #d9d9d9;
}

.oni-product-manual__file-icon::before {
    content: "";
    position: absolute;
    top: 7px;
    left: 7px;
    width: 18px;
    height: 2px;
    background: #ed1c24;
    box-shadow:
        0 6px 0 #d0d0d0,
        0 12px 0 #d0d0d0,
        0 18px 0 #d0d0d0;
}

.oni-product-manual__file-content {
    min-width: 0;
}

.oni-product-manual__file-title {
    display: block;
    margin: 0 0 3px;
    color: #222;
    font-size: 14px;
    line-height: 1.45;
    font-weight: 700;
}

.oni-product-manual__file-description {
    display: block;
    color: #666;
    font-size: 14px;
    line-height: 1.5;
}


/* Tlačítko pro otevření / stažení manuálu */
.oni-product-manual .oni-product-manual__button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    padding: 10px 17px;
    color: #fff !important;
    background: #ed1c24;
    border: 1px solid #ed1c24;
    border-radius: 3px;
    font-family: "Open Sans", Arial, sans-serif;
    font-size: 14px;
    line-height: 1.3;
    font-weight: 700;
    text-align: center;
    text-decoration: none !important;
    white-space: nowrap;
    transition:
        background-color .2s ease,
        border-color .2s ease;
}

.oni-product-manual .oni-product-manual__button::after {
    content: " →";
    margin-left: 7px;
}

.oni-product-manual .oni-product-manual__button:hover,
.oni-product-manual .oni-product-manual__button:focus {
    color: #fff !important;
    background: #c9151b;
    border-color: #c9151b;
}


/* Doplňující informace / podpora */
.oni-product-manual__info {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(420px, .95fr);
    gap: 0;
    align-items: stretch;
    margin-top: 28px;
    padding: 40px 46px;
    background: #f7f7f7;
    border: 0;
    border-radius: 18px;
}

.oni-product-manual__info-left {
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-width: 0;
    padding: 8px 42px 8px 0;
    border-right: 1px solid #d9d9d9;
}

.oni-product-manual__info h3 {
    margin: 0 0 18px;
    padding: 0;
    color: #1F1F1F;
    font-size: 27px;
    line-height: 1.2;
    font-weight: 700;
}

.oni-product-manual__info p {
    max-width: 620px;
    margin: 0;
    color: #1F1F1F;
    font-size: 14px;
    line-height: 1.7;
}

.oni-product-manual__info-right {
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-width: 0;
    padding-left: 42px;
}

.oni-product-manual__contact {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 20px;
    margin-bottom: 24px;
}

.oni-product-manual__phone-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    width: 52px;
    height: 52px;
    color: #1F1F1F;
    font-size: 40px;
    line-height: 1;
}

.oni-product-manual__contact-text {
    display: flex;
    flex-direction: column;
    align-items: center;
    min-width: 0;
}

.oni-product-manual .oni-product-manual__phone {
    color: #1F1F1F;
    font-size: 27px;
    line-height: 1.15;
    font-weight: 700;
    text-decoration: none;
    white-space: nowrap;
}

.oni-product-manual .oni-product-manual__email {
    margin-top: 5px;
    color: #1F1F1F;
    font-size: 14px;
    line-height: 1.4;
    font-weight: 400;
    text-decoration: none;
}

.oni-product-manual .oni-product-manual__phone:hover,
.oni-product-manual .oni-product-manual__phone:focus,
.oni-product-manual .oni-product-manual__email:hover,
.oni-product-manual .oni-product-manual__email:focus {
    color: #ed1c24;
}

.oni-product-manual .oni-product-manual__support-link {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 72px;
    padding: 16px 28px;
    color: #fff !important;
    background: #ed1c24;
    border: 1px solid #ed1c24;
    border-radius: 0;
    font-family: "Open Sans", Arial, sans-serif;
    font-size: 17px;
    line-height: 1.3;
    font-weight: 400;
    text-align: center;
    text-decoration: none !important;
    white-space: nowrap;
    transition:
        background-color .2s ease,
        border-color .2s ease;
}

.oni-product-manual .oni-product-manual__support-link::after {
    content: " →";
    margin-left: 12px;
    font-size: 22px;
    line-height: 1;
}

.oni-product-manual .oni-product-manual__support-link:hover,
.oni-product-manual .oni-product-manual__support-link:focus {
    color: #fff !important;
    background: #c9151b;
    border-color: #c9151b;
    text-decoration: none !important;
}


/* =========================================================
   MANUÁL – MOBIL
   ========================================================= */

@media (max-width: 767px) {

    .oni-product-manual {
        padding-top: 22px;
    }

    .oni-product-manual__header {
        margin-bottom: 20px;
    }

    .oni-product-manual h2 {
        font-size: 23px;
        line-height: 1.2;
    }

    .oni-product-manual__file {
        grid-template-columns: 34px minmax(0, 1fr);
        gap: 12px;
        padding: 16px;
    }

    .oni-product-manual__file-icon {
        width: 30px;
        height: 36px;
    }

    .oni-product-manual__file-icon::before {
        left: 6px;
        width: 16px;
    }

    .oni-product-manual .oni-product-manual__button {
        grid-column: 1 / -1;
        width: 100%;
        margin-top: 2px;
    }

    .oni-product-manual__info {
        grid-template-columns: 1fr;
        margin-top: 22px;
        padding: 28px 22px;
        border-radius: 14px;
    }

    .oni-product-manual__info-left {
        padding: 0 0 24px;
        border-right: 0;
        border-bottom: 1px solid #d9d9d9;
    }

    .oni-product-manual__info h3 {
        margin-bottom: 10px;
        font-size: 23px;
    }

    .oni-product-manual__info-right {
        padding: 24px 0 0;
    }

    .oni-product-manual__contact {
        gap: 12px;
        margin-bottom: 18px;
    }

    .oni-product-manual__phone-icon {
        width: 38px;
        height: 38px;
        font-size: 30px;
    }

    .oni-product-manual .oni-product-manual__phone {
        font-size: 21px;
    }

    .oni-product-manual .oni-product-manual__support-link {
        min-height: 56px;
        width: 100%;
        padding: 14px 18px;
        font-size: 14px;
        white-space: normal;
    }
}


/* =========================================================
   ONI SYSTEM – KARTA „VIDEO“
   Univerzální pro 1 až 4 videa
   ========================================================= */

.oni-product-video,
.oni-product-video * {
    box-sizing: border-box;
}

.oni-product-video {
    width: 100%;
    max-width: 1170px;
    margin: 0 auto;
    padding: 30px 0 0;
    font-family: "Open Sans", Arial, sans-serif;
    color: #1F1F1F;
    font-size: 14px;
    line-height: 1.7;
}


/* Úvod */
.oni-product-video__header {
    max-width: 780px;
    margin: 0 0 26px;
}

.oni-product-video__label {
    display: inline-block;
    margin: 0 0 8px;
    color: #ed1c24;
    font-size: 13px;
    line-height: 1.4;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .04em;
}

.oni-product-video h2 {
    margin: 0 0 10px;
    padding: 0;
    color: #1F1F1F;
    font-size: 27px;
    line-height: 1.2;
    font-weight: 700;
}

.oni-product-video h3 {
    margin: 0;
    padding: 0;
    color: #1F1F1F;
    font-size: 17px;
    line-height: 1.4;
    font-weight: 700;
}

.oni-product-video p {
    margin: 0;
    padding: 0;
    color: #555;
    font-size: 14px;
    line-height: 1.7;
}


/* =========================================================
   VIDEA – max. 4
   Desktop: 2 × 2
   Mobil: 1 pod druhým
   ========================================================= */

.oni-product-video__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
    align-items: stretch;
}

.oni-product-video__item {
    display: flex;
    flex-direction: column;
    min-width: 0;
    margin: 0;
    overflow: hidden;
    background: #fff;
    border: 1px solid #e5e5e5;
    border-radius: 4px;
}

/* Jedno video – vycentrované, nepřehnaně široké */
.oni-product-video__grid > .oni-product-video__item:only-child {
    grid-column: 1 / -1;
    width: min(100%, 850px);
    justify-self: center;
}

/* Tři videa – třetí karta vycentrovaná */
.oni-product-video__grid > .oni-product-video__item:nth-child(3):last-child {
    grid-column: 1 / -1;
    width: calc(50% - 10px);
    justify-self: center;
}


/* Přehrávač */
.oni-product-video__media {
    position: relative;
    width: 100%;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    background: #1F1F1F;
}

.oni-product-video__media::after {
    content: "";
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 2;
    height: 3px;
    background: #ed1c24;
    pointer-events: none;
}

.oni-product-video__media iframe,
.oni-product-video__media video {
    position: absolute;
    inset: 0;
    display: block;
    width: 100%;
    height: 100%;
    border: 0;
}


/* Text pod videem */
.oni-product-video__content {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    align-items: flex-start;
    min-height: 128px;
    padding: 17px 20px 19px;
    background: #fff;
}

.oni-product-video__tag {
    display: inline-block;
    margin: 0 0 6px;
    color: #ed1c24;
    font-size: 12px;
    line-height: 1.4;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .04em;
}

.oni-product-video__content h3 {
    margin-bottom: 6px;
}

.oni-product-video__content p {
    color: #666;
}


/* =========================================================
   CTA POD VIDEI
   Vizuálně sjednoceno s ostatními ONI kartami
   ========================================================= */

.oni-product-video__info {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 28px;
    align-items: center;
    margin-top: 28px;
    padding: 22px 24px;
    background: #f7f7f7;
    border-left: 3px solid #ed1c24;
}

.oni-product-video__info-content {
    min-width: 0;
}

.oni-product-video__info h3 {
    margin-bottom: 4px;
}

.oni-product-video .oni-product-video__button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    padding: 11px 20px;
    color: #fff !important;
    background: #ed1c24;
    border: 1px solid #ed1c24;
    border-radius: 3px;
    font-family: "Open Sans", Arial, sans-serif;
    font-size: 14px;
    line-height: 1.3;
    font-weight: 700;
    text-align: center;
    text-decoration: none !important;
    white-space: nowrap;
    transition:
        background-color .2s ease,
        border-color .2s ease;
}

.oni-product-video .oni-product-video__button::after {
    content: " →";
    margin-left: 8px;
}

.oni-product-video .oni-product-video__button:hover,
.oni-product-video .oni-product-video__button:focus {
    color: #fff !important;
    background: #c9151b;
    border-color: #c9151b;
}


/* Záložka Video */
.type-product #p-detail-tabs li[data-testid="tabVideo"] > .shp-tab-link,
.type-product #p-detail-tabs a[href="#video"],
.type-product #p-detail-tabs a[href*="video"] {
    font-family: "Open Sans", Arial, sans-serif;
    font-size: 14px;
    line-height: 1.4;
    font-weight: 700;
}


/* Tablet */
@media (max-width: 991px) {

    .oni-product-video__grid {
        gap: 16px;
    }

}


/* Mobil */
@media (max-width: 767px) {

    .oni-product-video {
        padding-top: 22px;
    }

    .oni-product-video__header {
        margin-bottom: 20px;
    }

    .oni-product-video h2 {
        font-size: 23px;
        line-height: 1.2;
    }

    .oni-product-video__grid {
        grid-template-columns: 1fr;
        gap: 14px;
    }

    .oni-product-video__grid > .oni-product-video__item:only-child,
    .oni-product-video__grid > .oni-product-video__item:nth-child(3):last-child {
        grid-column: auto;
        width: 100%;
        justify-self: stretch;
    }

    .oni-product-video__content {
        min-height: 0;
        padding: 15px 16px 17px;
    }

    .oni-product-video__info {
        grid-template-columns: 1fr;
        gap: 16px;
        margin-top: 22px;
        padding: 20px 18px;
    }

    .oni-product-video .oni-product-video__button {
        width: 100%;
        white-space: normal;
    }

}


/* =========================================================
   11. MOBILNÍ SJEDNOCENÍ VŠECH PRODUKTOVÝCH KARET
   ONI SYSTEM / Shoptet STEP
   Tento blok je záměrně až na konci souboru, aby měl
   přednost před výchozími mobilními styly Shoptetu.
   ========================================================= */

@media (max-width: 767px) {

    /* -----------------------------------------------------
       OBECNÁ ŠÍŘKA A ODSAZENÍ
       ----------------------------------------------------- */
    .type-product .p-detail-tabs-wrapper,
    .type-product #description,
    .type-product #parameters,
    .type-product #manual,
    .type-product #video {
        width: 100% !important;
        max-width: 100% !important;
    }

    .oni-product-content,
    .oni-about-product,
    .oni-tech-specs,
    .oni-product-manual,
    .oni-product-video {
        width: 100% !important;
        max-width: 100% !important;
        margin-right: auto !important;
        margin-left: auto !important;
        padding-right: 0 !important;
        padding-left: 0 !important;
        font-family: "Open Sans", Arial, sans-serif !important;
        font-size: 14px !important;
        line-height: 1.65 !important;
    }

    .oni-product-content *,
    .oni-about-product *,
    .oni-tech-specs *,
    .oni-product-manual *,
    .oni-product-video * {
        box-sizing: border-box !important;
    }


    /* -----------------------------------------------------
       ZÁLOŽKY PRODUKTU
       ----------------------------------------------------- */
    .type-product .p-detail-tabs-wrapper {
        margin-top: 24px !important;
        overflow: hidden;
    }

    .type-product .p-detail-tabs-wrapper .shp-tabs-holder,
    .type-product .p-detail-tabs-wrapper .shp-tabs {
        display: flex !important;
        flex-wrap: nowrap !important;
        gap: 18px !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        margin: 0 !important;
        padding: 0 0 1px !important;
        background: #fff !important;
        border: 0 !important;
        border-bottom: 1px solid #e5e5e5 !important;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: thin;
    }

    .type-product .p-detail-tabs-wrapper .shp-tab {
        flex: 0 0 auto !important;
        margin: 0 !important;
    }

    .type-product .p-detail-tabs-wrapper .shp-tab-link {
        display: block !important;
        margin: 0 !important;
        padding: 10px 1px 9px !important;
        color: #555 !important;
        background: transparent !important;
        border: 0 !important;
        border-bottom: 3px solid transparent !important;
        border-radius: 0 !important;
        font-family: "Open Sans", Arial, sans-serif !important;
        font-size: 14px !important;
        line-height: 1.4 !important;
        font-weight: 700 !important;
        white-space: nowrap !important;
        text-decoration: none !important;
    }

    .type-product .p-detail-tabs-wrapper .shp-tab.active .shp-tab-link {
        color: #1F1F1F !important;
        background: transparent !important;
        border-bottom-color: #ed1c24 !important;
    }

    .type-product #p-detail-tabs li[data-testid="tabDescription"] > .shp-tab-link {
        font-size: 0 !important;
    }

    .type-product #p-detail-tabs li[data-testid="tabDescription"] > .shp-tab-link::after {
        content: "O produktu";
        font-size: 14px !important;
        line-height: 1.4 !important;
        font-weight: 700 !important;
    }


    /* -----------------------------------------------------
       TYPOGRAFIE
       ----------------------------------------------------- */
    .oni-product-content h2,
    .oni-about-product h2,
    .oni-tech-specs h2,
    .oni-product-manual h2,
    .oni-product-video h2 {
        margin: 0 0 9px !important;
        padding: 0 !important;
        color: #1F1F1F !important;
        font-size: 27px !important;
        line-height: 1.2 !important;
        font-weight: 700 !important;
    }

    .oni-product-content h3,
    .oni-about-product h3,
    .oni-tech-specs h3,
    .oni-product-manual h3,
    .oni-product-video h3 {
        color: #1F1F1F !important;
        font-size: 17px !important;
        line-height: 1.4 !important;
        font-weight: 700 !important;
    }

    .oni-product-content p,
    .oni-about-product p,
    .oni-tech-specs p,
    .oni-product-manual p,
    .oni-product-video p {
        color: #1F1F1F !important;
        font-size: 14px !important;
        line-height: 1.65 !important;
    }


    /* -----------------------------------------------------
       O PRODUKTU
       ----------------------------------------------------- */
    .oni-about-product__intro {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 20px !important;
    }

    .oni-about-product__benefits {
        padding: 18px !important;
        background: #f7f7f7 !important;
        border: 1px solid #e8e8e8 !important;
        border-top: 3px solid #ed1c24 !important;
        border-radius: 4px !important;
    }

    .oni-about-product__highlights {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 8px !important;
        margin-top: 20px !important;
    }

    .oni-about-product__highlight {
        padding: 15px 17px !important;
        background: #f7f7f7 !important;
        border-left: 3px solid #ed1c24 !important;
    }

    .oni-about-product__service-box {
        display: grid !important;
        grid-template-columns: 1fr !important;
    }

    .oni-about-product__service-price {
        padding: 18px !important;
        border-right: 0 !important;
        border-bottom: 1px solid #e5e5e5 !important;
    }

    .oni-about-product__service-content {
        padding: 18px !important;
    }

    .oni-about-product__help {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 15px !important;
        padding: 18px !important;
    }

    .oni-about-product__actions {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 8px !important;
    }

    .oni-about-product .oni-about-product__button {
        width: 100% !important;
    }


    /* -----------------------------------------------------
       TECHNICKÉ PARAMETRY
       ----------------------------------------------------- */
    .oni-tech-specs__quick {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        margin-bottom: 22px !important;
    }

    .oni-tech-specs__quick-item {
        padding: 14px 12px !important;
    }

    .oni-tech-specs__groups {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 14px !important;
    }

    .oni-tech-specs__group {
        width: 100% !important;
        min-width: 0 !important;
    }

    .oni-tech-specs h3 {
        margin: 0 !important;
        padding: 14px 16px !important;
        background: #f7f7f7 !important;
        border-left: 3px solid #ed1c24 !important;
    }

    .oni-tech-specs__list {
        width: 100% !important;
        padding: 0 14px !important;
        overflow-x: auto !important;
        -webkit-overflow-scrolling: touch;
    }

    .oni-tech-specs__row {
        display: grid !important;
        grid-template-columns: max-content max-content !important;
        justify-content: space-between !important;
        gap: 24px !important;
        min-width: max-content !important;
        padding: 12px 6px !important;
    }

    .oni-tech-specs dt,
    .oni-tech-specs dd {
        white-space: nowrap !important;
        word-break: normal !important;
        overflow-wrap: normal !important;
    }


    /* -----------------------------------------------------
       MANUÁL
       ----------------------------------------------------- */
    .oni-product-manual__file {
        display: grid !important;
        grid-template-columns: 34px minmax(0, 1fr) !important;
        gap: 12px !important;
        padding: 16px !important;
        background: #f7f7f7 !important;
        border-left: 3px solid #ed1c24 !important;
    }

    .oni-product-manual .oni-product-manual__button {
        grid-column: 1 / -1 !important;
        width: 100% !important;
        margin-top: 2px !important;
    }

    .oni-product-manual__info {
        display: grid !important;
        grid-template-columns: 1fr !important;
        margin-top: 22px !important;
        padding: 26px 20px !important;
        background: #f7f7f7 !important;
        border-radius: 14px !important;
    }

    .oni-product-manual__info-left {
        padding: 0 0 22px !important;
        border-right: 0 !important;
        border-bottom: 1px solid #d9d9d9 !important;
    }

    .oni-product-manual__info-right {
        padding: 22px 0 0 !important;
    }

    .oni-product-manual__contact {
        justify-content: flex-start !important;
        gap: 12px !important;
        margin-bottom: 18px !important;
    }

    .oni-product-manual__contact-text {
        align-items: flex-start !important;
    }

    .oni-product-manual .oni-product-manual__phone {
        font-size: 21px !important;
        white-space: nowrap !important;
    }

    .oni-product-manual .oni-product-manual__email {
        font-size: 14px !important;
    }

    .oni-product-manual .oni-product-manual__support-link {
        width: 100% !important;
        min-height: 56px !important;
        padding: 14px 18px !important;
        font-size: 14px !important;
        white-space: normal !important;
    }


    /* -----------------------------------------------------
       VIDEO
       ----------------------------------------------------- */
    .oni-product-video__grid {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 14px !important;
    }

    .oni-product-video__grid > .oni-product-video__item,
    .oni-product-video__grid > .oni-product-video__item:only-child,
    .oni-product-video__grid > .oni-product-video__item:nth-child(3):last-child {
        grid-column: auto !important;
        width: 100% !important;
        max-width: 100% !important;
        justify-self: stretch !important;
    }

    .oni-product-video__item {
        width: 100% !important;
        min-width: 0 !important;
        overflow: hidden !important;
        background: #fff !important;
        border: 1px solid #e5e5e5 !important;
        border-radius: 4px !important;
    }

    .oni-product-video__media {
        position: relative !important;
        width: 100% !important;
        aspect-ratio: 16 / 9 !important;
        overflow: hidden !important;
        background: #1F1F1F !important;
    }

    .oni-product-video__media iframe,
    .oni-product-video__media video {
        position: absolute !important;
        inset: 0 !important;
        width: 100% !important;
        height: 100% !important;
        border: 0 !important;
    }

    .oni-product-video__content {
        min-height: 0 !important;
        padding: 15px 16px 17px !important;
        background: #fff !important;
    }

    .oni-product-video__tag {
        display: inline-block !important;
        margin-bottom: 6px !important;
        color: #ed1c24 !important;
        font-size: 12px !important;
        line-height: 1.4 !important;
        font-weight: 700 !important;
        text-transform: uppercase !important;
    }

    .oni-product-video__info {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 16px !important;
        margin-top: 22px !important;
        padding: 20px 18px !important;
        background: #f7f7f7 !important;
        border-left: 3px solid #ed1c24 !important;
    }

    .oni-product-video .oni-product-video__button {
        width: 100% !important;
        white-space: normal !important;
    }
}


/* Extra malé telefony */
@media (max-width: 480px) {

    .oni-tech-specs__quick {
        grid-template-columns: 1fr !important;
    }

    .oni-tech-specs__quick-item + .oni-tech-specs__quick-item {
        border-left: 0 !important;
        border-top: 1px solid #e5e5e5 !important;
    }

    .oni-product-manual .oni-product-manual__phone {
        font-size: 18px !important;
    }

    .oni-product-manual__contact {
        align-items: flex-start !important;
    }
}


/* =========================================================
   12. HORNÍ ČÁST DETAILU PRODUKTU
   ONI SYSTEM / Shoptet STEP
   Sjednocení s vizuálním stylem celého webu
   ========================================================= */

/* Celý horní detail */
.type-product .p-detail-inner {
    margin-bottom: 30px;
    font-family: "Open Sans", Arial, sans-serif;
    color: #222;
}

.type-product .p-detail-inner .p-info-wrapper,
.type-product .p-detail-inner .p-data-wrapper {
    font-family: "Open Sans", Arial, sans-serif;
}


/* ---------------------------------------------------------
   NÁZEV PRODUKTU
   --------------------------------------------------------- */

.type-product .p-detail-inner-header h1,
.type-product .p-info-wrapper h1 {
    margin: 0 0 20px !important;
    padding: 0 !important;
    color: #1F1F1F !important;
    font-family: "Open Sans", Arial, sans-serif !important;
    font-size: 34px !important;
    line-height: 1.2 !important;
    font-weight: 700 !important;
    letter-spacing: 0 !important;
}


/* ---------------------------------------------------------
   KRÁTKÝ POPIS
   --------------------------------------------------------- */

.type-product .p-short-description,
.type-product .p-short-description p,
.type-product .p-info-wrapper .description {
    color: #1F1F1F !important;
    font-family: "Open Sans", Arial, sans-serif !important;
    font-size: 14px !important;
    line-height: 1.7 !important;
}

.type-product .p-short-description {
    margin: 0 0 18px !important;
    max-width: 760px;
}

.type-product .p-short-description p {
    margin: 0 0 12px !important;
}

.type-product .p-short-description p:last-child {
    margin-bottom: 0 !important;
}

.type-product .p-short-description strong {
    color: #1F1F1F;
    font-weight: 700;
}


/* ---------------------------------------------------------
   DOSTUPNOST + DORUČENÍ
   --------------------------------------------------------- */

.type-product .availability-value,
.type-product .availability-label,
.type-product .availability-amount,
.type-product .delivery-time,
.type-product .delivery-time-label,
.type-product .p-info-wrapper .availability {
    font-family: "Open Sans", Arial, sans-serif !important;
    font-size: 14px !important;
    line-height: 1.5 !important;
}

.type-product .availability-value {
    font-weight: 600 !important;
}

.type-product .p-info-wrapper a[href*="moznosti-doruceni"],
.type-product .p-info-wrapper .delivery-time a,
.type-product .p-info-wrapper .availability a {
    color: #1F1F1F !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    text-decoration: underline !important;
    text-underline-offset: 3px;
}

.type-product .p-info-wrapper a[href*="moznosti-doruceni"]:hover,
.type-product .p-info-wrapper .delivery-time a:hover,
.type-product .p-info-wrapper .availability a:hover {
    color: #ed1c24 !important;
}


/* ---------------------------------------------------------
   KÓD PRODUKTU
   --------------------------------------------------------- */

.type-product .p-code {
    margin: 18px 0 0 !important;
    padding: 15px 0 !important;
    color: #666 !important;
    font-family: "Open Sans", Arial, sans-serif !important;
    font-size: 13px !important;
    line-height: 1.5 !important;
    text-align: left !important;
}

.type-product .p-code strong {
    color: #1F1F1F;
    font-weight: 700;
}


/* ---------------------------------------------------------
   NÁKUPNÍ BLOK
   --------------------------------------------------------- */

.type-product .p-to-cart-block {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: flex-end !important;
    gap: 14px 18px !important;
    margin: 0 !important;
    padding: 22px 0 12px !important;
    background: transparent !important;
}

.type-product .p-to-cart-block .quantity {
    margin: 0 !important;
}

.type-product .p-to-cart-block .quantity input,
.type-product .p-to-cart-block .quantity .increase,
.type-product .p-to-cart-block .quantity .decrease,
.type-product .quantity input,
.type-product .quantity .increase,
.type-product .quantity .decrease {
    height: 46px !important;
    min-height: 46px !important;
    border-color: #d5d5d5 !important;
    background: #fff !important;
    color: #1F1F1F !important;
    font-family: "Open Sans", Arial, sans-serif !important;
    font-size: 14px !important;
}

.type-product .quantity .increase:hover,
.type-product .quantity .decrease:hover {
    color: #ed1c24 !important;
    border-color: #ed1c24 !important;
}


/* Cena */
.type-product .p-final-price-wrapper {
    margin: 0 !important;
    padding: 0 !important;
}

.type-product .p-final-price-wrapper .price-final,
.type-product .p-final-price-wrapper .price-final strong,
.type-product .p-final-price-wrapper > strong,
.type-product .price-final {
    color: #1F1F1F !important;
    font-family: "Open Sans", Arial, sans-serif !important;
    font-size: 34px !important;
    line-height: 1.15 !important;
    font-weight: 600 !important;
    white-space: nowrap;
}


/* Tlačítko Do košíku */
.type-product .btn.btn-cart,
.type-product a.btn.btn-cart,
.type-product .btn.add-to-cart-button,
.type-product a.btn.add-to-cart-button,
.type-product .add-to-cart-button {
    min-height: 50px !important;
    padding: 13px 24px !important;
    color: #fff !important;
    background: #ed1c24 !important;
    border: 1px solid #ed1c24 !important;
    border-radius: 3px !important;
    box-shadow: none !important;
    font-family: "Open Sans", Arial, sans-serif !important;
    font-size: 14px !important;
    line-height: 1.3 !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    transition:
        background-color .2s ease,
        border-color .2s ease !important;
}

.type-product .btn.btn-cart:hover,
.type-product a.btn.btn-cart:hover,
.type-product .btn.add-to-cart-button:hover,
.type-product a.btn.add-to-cart-button:hover,
.type-product .add-to-cart-button:hover,
.type-product .btn.btn-cart:focus,
.type-product .btn.add-to-cart-button:focus {
    color: #fff !important;
    background: #c9151b !important;
    border-color: #c9151b !important;
}


/* ---------------------------------------------------------
   OBRÁZEK A MINIATURY
   Odstranění bílé mezery mezi hlavním obrázkem a náhledy
   --------------------------------------------------------- */

.type-product .p-image-wrapper {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
    border-radius: 6px;
}

.type-product .p-image-wrapper .p-image {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden;
    background: #f7f7f7;
    border-radius: 6px;
    border: 1px solid #e8e8e8;
    line-height: 0 !important;
}

.type-product .p-image-wrapper .p-image > a,
.type-product .p-image-wrapper .p-main-image {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 0 !important;
    border-radius: 6px;
}

.type-product .p-image-wrapper .p-image img,
.type-product .p-image-wrapper .p-main-image img,
.type-product .p-image img {
    display: block !important;
    width: 100%;
    max-width: 100%;
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    vertical-align: top !important;
    object-fit: cover;
}

.type-product .p-thumbnails-wrapper {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

.type-product .p-thumbnails {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

.type-product .p-thumbnails a {
    overflow: hidden;
    background: #fff !important;
    border: 1px solid #e5e5e5 !important;
}

.type-product .p-thumbnails a:hover,
.type-product .p-thumbnails a.highlighted {
    border-color: #ed1c24 !important;
}

.type-product .p-thumbnails a img {
    display: block;
    opacity: 1;
}


/* ---------------------------------------------------------
   PRAVÝ SLOUPEC – VZDUŠNĚJŠÍ ROZLOŽENÍ
   --------------------------------------------------------- */

@media (min-width: 992px) {

    .type-product .p-detail-inner .p-info-wrapper {
        padding-left: 38px !important;
    }

    .type-product .p-detail-inner .p-data-wrapper {
        max-width: 760px;
    }

}


/* =========================================================
   HORNÍ DETAIL – MOBIL
   ========================================================= */

@media (max-width: 767px) {

    .type-product .p-detail-inner {
        margin-bottom: 22px !important;
    }

    .type-product .p-detail-inner .p-info-wrapper,
    .type-product .p-detail-inner .p-data-wrapper {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding-right: 0 !important;
        padding-left: 0 !important;
    }

    .type-product .p-detail-inner-header h1,
    .type-product .p-info-wrapper h1 {
        margin-bottom: 14px !important;
        font-size: 27px !important;
        line-height: 1.25 !important;
    }

    .type-product .p-short-description,
    .type-product .p-short-description p {
        font-size: 14px !important;
        line-height: 1.65 !important;
    }

    .type-product .p-short-description {
        margin-bottom: 16px !important;
    }

    .type-product .p-code {
        margin-top: 15px !important;
        padding: 12px 0 !important;
        font-size: 13px !important;
    }

    .type-product .p-to-cart-block {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 12px !important;
        padding: 18px 0 8px !important;
    }

    .type-product .p-final-price-wrapper,
    .type-product .p-final-price-wrapper .price-final,
    .type-product .p-final-price-wrapper .price-final strong,
    .type-product .p-final-price-wrapper > strong,
    .type-product .price-final {
        width: 100% !important;
        font-size: 30px !important;
        text-align: left !important;
    }

    .type-product .p-to-cart-block .quantity {
        width: max-content !important;
        max-width: 100%;
    }

    .type-product .btn.btn-cart,
    .type-product a.btn.btn-cart,
    .type-product .btn.add-to-cart-button,
    .type-product a.btn.add-to-cart-button,
    .type-product .add-to-cart-button {
        width: 100% !important;
        min-height: 50px !important;
        padding: 13px 18px !important;
    }

    .type-product .p-image-wrapper .p-image {
        border-radius: 3px;
    }

    .type-product .p-thumbnails-wrapper {
        margin-top: 0 !important;
        padding-top: 0 !important;
    }
}


/* Extra malé telefony */
@media (max-width: 480px) {

    .type-product .p-detail-inner-header h1,
    .type-product .p-info-wrapper h1 {
        font-size: 25px !important;
    }

    .type-product .p-final-price-wrapper .price-final,
    .type-product .p-final-price-wrapper .price-final strong,
    .type-product .p-final-price-wrapper > strong,
    .type-product .price-final {
        font-size: 28px !important;
    }
}

/* =========================================================
   13. JISTÍCÍ FIX GALERIE – BEZ BÍLÉHO PRUHU
   ========================================================= */

.type-product .p-image-wrapper,
.type-product .p-image-wrapper .p-image,
.type-product .p-image-wrapper .p-image > a,
.type-product .p-image-wrapper .p-main-image {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

.type-product .p-image-wrapper .p-image,
.type-product .p-image-wrapper .p-image > a,
.type-product .p-image-wrapper .p-main-image {
    line-height: 0 !important;
}

.type-product .p-image-wrapper img {
    display: block !important;
    margin-bottom: 0 !important;
    vertical-align: top !important;
}

.type-product .p-thumbnails-wrapper,
.type-product .p-thumbnails {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

@media (max-width: 767px) {
    .type-product .p-image-wrapper,
    .type-product .p-image-wrapper .p-image,
    .type-product .p-thumbnails-wrapper,
    .type-product .p-thumbnails {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }
}


/* =========================================================
   14. TEXT „SLUŽBA JE“ V NÁKUPNÍM BLOKU
   Umístění pod množství/cenu, před spodní informace produktu
   ========================================================= */

:root:has(link[rel="canonical"][href*="/oni-gps-lokator"]) .type-product .p-to-cart-block::after,
:root:has(link[rel="canonical"][href*="/oni-dochazka"]) .type-product .p-to-cart-block::after {
    content: "Pro plné fungování produktu je nutné zakoupit měsíční službu za 242 Kč. Zahrnuje SIM kartu, datové přenosy, aktualizace map, přístup do webové i mobilní aplikace a nepřetržitou zákaznickou péči. První měsíční poplatek uhradíte nyní při nákupu. Další období Vám budou fakturována pravidelně jednou za měsíc.";

    display: flex !important;
    align-items: center !important;

    flex: 0 0 100% !important;
    width: 100% !important;
    min-height: 64px !important;

    order: 99 !important;

    margin: 4px 0 0 !important;
    padding: 18px 22px !important;

    box-sizing: border-box !important;

    background: #f7f7f7 !important;
    border: 0 !important;
    border-radius: 6px !important;
    box-shadow: none !important;

    color: #1F1F1F !important;
    font-family: "Open Sans", Arial, sans-serif !important;
    font-size: 14px !important;
    line-height: 1.5 !important;
    font-weight: 600 !important;

    text-align: left !important;
}


/* Mobil */
@media (max-width: 767px) {

    :root:has(link[rel="canonical"][href*="/oni-gps-lokator"]) .type-product .p-to-cart-block::after {
        width: 100% !important;
        min-height: 56px !important;
        margin-top: 4px !important;
        padding: 16px 18px !important;
        background: #f7f7f7 !important;
        border-radius: 12px !important;
        font-size: 14px !important;
        line-height: 1.5 !important;
        text-align: left !important;
    }
}


/* =========================================================
   15. MANUÁL – „POTŘEBUJETE PORADIT?“
   Šedý CTA blok ve stylu ONI system
   ========================================================= */

.oni-product-manual__info {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(420px, .95fr) !important;
    gap: 0 !important;
    align-items: stretch !important;

    margin-top: 28px !important;
    padding: 38px 46px !important;

    background: #f7f7f7 !important;
    border: 0 !important;
    border-radius: 18px !important;
    box-shadow: none !important;
}

.oni-product-manual__info-left {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;

    min-width: 0 !important;
    padding: 8px 42px 8px 0 !important;

    background: transparent !important;
    border-right: 1px solid #d9d9d9 !important;
}

.oni-product-manual__info h3 {
    margin: 0 0 16px !important;
    padding: 0 !important;

    color: #1F1F1F !important;
    font-family: "Open Sans", Arial, sans-serif !important;
    font-size: 27px !important;
    line-height: 1.25 !important;
    font-weight: 700 !important;
}

.oni-product-manual__info p {
    max-width: 620px !important;
    margin: 0 !important;
    padding: 0 !important;

    color: #1F1F1F !important;
    font-family: "Open Sans", Arial, sans-serif !important;
    font-size: 14px !important;
    line-height: 1.7 !important;
}


/* Mobil */
@media (max-width: 767px) {

    .oni-product-manual__info {
        grid-template-columns: 1fr !important;

        margin-top: 22px !important;
        padding: 26px 20px !important;

        background: #f7f7f7 !important;
        border-radius: 14px !important;
    }

    .oni-product-manual__info-left {
        padding: 0 0 22px !important;

        border-right: 0 !important;
        border-bottom: 1px solid #d9d9d9 !important;
    }

    .oni-product-manual__info h3 {
        margin-bottom: 10px !important;
        font-size: 23px !important;
        line-height: 1.3 !important;
    }
}



/* Jistící override – Služba je */
:root:has(link[rel="canonical"][href*="/oni-gps-lokator"]) .type-product .p-to-cart-block::after {
    background-color: #f7f7f7 !important;
}


/* =========================================================
   16. SKRYTÍ KÓDU PRODUKTU
   Shoptet STEP
   ========================================================= */

/* Skryje řádek/blok s kódem produktu v horní části detailu 
.type-product .p-basic-info-block,
.type-product .p-code {
    display: none !important;
} */

/* =========================================================
   17. KRÁTKÝ POPIS – ODRÁŽKY S ČERVENOU FAJFKOU
   Vzhled podle referenčního obrázku
   ========================================================= */

.type-product .p-short-description ul {
    margin: 14px 0 18px !important;
    padding: 0 !important;
    list-style: none !important;
}

.type-product .p-short-description ul li {
    position: relative !important;
    margin: 0 0 10px !important;
    padding: 0 0 0 30px !important;

    color: #1F1F1F !important;
    font-family: "Open Sans", Arial, sans-serif !important;
    font-size: 14px !important;
    line-height: 1.6 !important;

    list-style: none !important;
}

.type-product .p-short-description ul li:last-child {
    margin-bottom: 0 !important;
}

.type-product .p-short-description ul li::before {
    content: "✓" !important;

    position: absolute !important;
    top: -2px !important;
    left: 0 !important;

    color: #ed1c24 !important;
    font-family: Arial, sans-serif !important;
    font-size: 20px !important;
    line-height: 1.2 !important;
    font-weight: 700 !important;
}

/* Vypnutí případných výchozích značek Shoptetu */
.type-product .p-short-description ul li::marker {
    content: "" !important;
}


/* Mobil */
@media (max-width: 767px) {

    .type-product .p-short-description ul {
        margin: 12px 0 16px !important;
    }

    .type-product .p-short-description ul li {
        margin-bottom: 9px !important;
        padding-left: 28px !important;
        font-size: 14px !important;
        line-height: 1.55 !important;
    }

    .type-product .p-short-description ul li::before {
        top: -1px !important;
        font-size: 19px !important;
    }
}

/* =========================================================
   18. SKRYTÍ KATEGORIE A EAN
   Shoptet STEP – detail produktu
   FIX PRO AKTUÁLNÍ HTML STRUKTURU
   ========================================================= */

/*
   Aktuální Shoptet už tyto údaje nevkládá do .descr-info.
   Podle současného HTML jsou Kategorie + EAN uvnitř:

   .p-param-block
     > .detail-parameters-wrapper
       > table.detail-parameters.second

   Proto skryjeme celý parametrický blok. V něm jsou na této
   pozici pouze Kategorie/EAN a social-buttons-wrapper, který
   je v tomto CSS stejně záměrně skrytý.
*/
.type-product .p-param-block {
    display: none !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    min-height: 0 !important;
}

/* Jistící selektory pro případ změny obalu v Shoptetu */
.type-product .p-param-block .detail-parameters-wrapper,
.type-product .p-param-block table.detail-parameters.second,
.type-product .detail-parameters-wrapper > table.detail-parameters.second {
    display: none !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
}

/* Starší struktura Shoptetu – ponecháno jako fallback */
.type-product .descr-info,
.type-product .p-detail .descr-info,
.type-product .p-info-wrapper .descr-info {
    display: none !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
}

/* =========================================================
   ONI SYSTEM – VÝDRŽ ZAŘÍZENÍ NA JEDNO DOBITÍ
   Tabulky se zachovanými hlavičkami z Excelu
   ========================================================= */

.oni-tech-specs--battery .oni-tech-specs__groups {
    display: grid;
    grid-template-columns: 1fr;
    gap: 20px;
}

.oni-tech-specs--battery .oni-tech-specs__group {
    width: 100%;
    min-width: 0;
    overflow: hidden;
    background: #fff;
    border: 1px solid #e5e5e5;
}

.oni-tech-specs--battery .oni-tech-specs__group h3 {
    margin: 0 !important;
    padding: 16px 20px !important;
    color: #1F1F1F !important;
    background: #f7f7f7 !important;
    border-left: 3px solid #ed1c24 !important;
    font-size: 17px !important;
    line-height: 1.4 !important;
    font-weight: 700 !important;
}

.oni-tech-specs--battery .oni-tech-specs__table-wrap {
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

.oni-tech-specs--battery .oni-tech-specs__table {
    width: 100%;
    min-width: 680px;
    margin: 0;
    border: 0;
    border-collapse: collapse;
    border-spacing: 0;
    table-layout: fixed;
    font-family: "Open Sans", Arial, sans-serif;
    font-size: 14px;
    line-height: 1.55;
}

.oni-tech-specs--battery .oni-tech-specs__table th,
.oni-tech-specs--battery .oni-tech-specs__table td {
    margin: 0;
    padding: 13px 16px;
    vertical-align: middle;
    border: 0;
    border-bottom: 1px solid #ededed;
    text-align: left;
}

.oni-tech-specs--battery .oni-tech-specs__table thead th {
    color: #222;
    background: #fff;
    font-size: 13px;
    line-height: 1.45;
    font-weight: 700;
}

.oni-tech-specs--battery .oni-tech-specs__table tbody td {
    color: #555;
    font-size: 14px;
    font-weight: 400;
}

.oni-tech-specs--battery .oni-tech-specs__table th:first-child,
.oni-tech-specs--battery .oni-tech-specs__table td:first-child {
    width: 52%;
}

.oni-tech-specs--battery .oni-tech-specs__table th:not(:first-child),
.oni-tech-specs--battery .oni-tech-specs__table td:not(:first-child) {
    width: 24%;
    text-align: right;
}

.oni-tech-specs--battery .oni-tech-specs__table tbody tr:last-child td {
    border-bottom: 0;
}

.oni-tech-specs--battery .oni-tech-specs__table tbody tr:hover td {
    background: #fafafa;
}

/* Text „Použití“ zachován podle Excelu */
.oni-tech-specs--battery .oni-tech-specs__usage {
    margin: 0 !important;
    padding: 14px 20px 16px !important;
    color: #666 !important;
    background: #fafafa !important;
    border-top: 1px solid #ededed;
    font-size: 13px !important;
    line-height: 1.6 !important;
}

/* Mobil */
@media (max-width: 767px) {

    .oni-tech-specs--battery .oni-tech-specs__groups {
        gap: 14px !important;
    }

    .oni-tech-specs--battery .oni-tech-specs__group h3 {
        padding: 14px 16px !important;
    }

    .oni-tech-specs--battery .oni-tech-specs__table {
        min-width: 620px;
        font-size: 13px;
    }

    .oni-tech-specs--battery .oni-tech-specs__table th,
    .oni-tech-specs--battery .oni-tech-specs__table td {
        padding: 12px 13px;
    }

    .oni-tech-specs--battery .oni-tech-specs__table thead th {
        font-size: 12px;
    }

    .oni-tech-specs--battery .oni-tech-specs__table tbody td {
        font-size: 13px;
    }

    .oni-tech-specs--battery .oni-tech-specs__usage {
        padding: 13px 16px 15px !important;
    }
}

/* =========================================================
   ONI SYSTEM – ZVÝRAZNĚNÉ ZÁLOŽKY PRODUKTU
   Univerzální pro všechny produktové stránky
   ========================================================= */

.type-product .p-detail-tabs-wrapper .shp-tabs-holder,
.type-product .p-detail-tabs-wrapper .shp-tabs {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 10px !important;

    margin: 0 0 0px !important;
    padding: 0 !important;

    background: transparent !important;
    border: 0 !important;
}

.type-product .p-detail-tabs-wrapper .shp-tab {
    margin: 0 !important;
}

/* Výchozí karta */
.type-product .p-detail-tabs-wrapper .shp-tab-link {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    margin: 0 !important;
    padding: 12px 20px !important;

    color: #222 !important;
    background: #f5f5f5 !important;

    border: 1px solid #dedede !important;
    border-radius: 6px !important;

    font-family: "Open Sans", Arial, sans-serif !important;
    font-size: 14px !important;
    line-height: 1.4 !important;
    font-weight: 700 !important;

    text-decoration: none !important;
    white-space: nowrap !important;

    transition:
        background-color .2s ease,
        border-color .2s ease,
        color .2s ease,
        transform .2s ease,
        box-shadow .2s ease !important;
}

/* Hover */
.type-product .p-detail-tabs-wrapper .shp-tab-link:hover,
.type-product .p-detail-tabs-wrapper .shp-tab-link:focus {
    color: #ed1c24 !important;
    background: #fff !important;
    border-color: #ed1c24 !important;

    transform: translateY(-2px);
    box-shadow: 0 4px 10px rgba(0, 0, 0, .08);
}

/* Aktivní karta */
.type-product .p-detail-tabs-wrapper .shp-tab.active .shp-tab-link {
    color: #fff !important;
    background: #ed1c24 !important;

    border: 1px solid #ed1c24 !important;
    border-bottom: 1px solid #ed1c24 !important;

    box-shadow: 0 4px 12px rgba(237, 28, 36, .20);
}

/* Zachování názvu O produktu */
.type-product #p-detail-tabs li[data-testid="tabDescription"] > .shp-tab-link {
    font-size: 0 !important;
}

.type-product #p-detail-tabs li[data-testid="tabDescription"] > .shp-tab-link::after {
    content: "O produktu";
    font-size: 14px !important;
    line-height: 1.4 !important;
    font-weight: 700 !important;
}

/* Mobil – stejný kartový vzhled jako na desktopu */
@media (max-width: 767px) {

    .type-product .p-detail-tabs-wrapper {
        margin-top: 24px !important;
        overflow: visible !important;
    }

    .type-product .p-detail-tabs-wrapper .shp-tabs-holder,
    .type-product .p-detail-tabs-wrapper .shp-tabs {
        display: flex !important;
        flex-wrap: nowrap !important;
        gap: 8px !important;

        margin: 0 !important;
        padding: 2px 0 10px !important;

        overflow-x: auto !important;
        overflow-y: visible !important;

        background: transparent !important;
        border: 0 !important;

        -webkit-overflow-scrolling: touch;
        scrollbar-width: thin;
    }

    .type-product .p-detail-tabs-wrapper .shp-tab {
        flex: 0 0 auto !important;
        margin: 0 !important;
    }

    /* Výchozí karta na mobilu */
    .type-product .p-detail-tabs-wrapper .shp-tab-link {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;

        min-height: 44px !important;
        margin: 0 !important;
        padding: 10px 16px !important;

        color: #222 !important;
        background: #f5f5f5 !important;

        border: 1px solid #dedede !important;
        border-radius: 6px !important;

        font-family: "Open Sans", Arial, sans-serif !important;
        font-size: 14px !important;
        line-height: 1.4 !important;
        font-weight: 700 !important;

        white-space: nowrap !important;
        text-decoration: none !important;

        transform: none !important;
        box-shadow: none !important;
    }

    /* Aktivní karta na mobilu */
    .type-product .p-detail-tabs-wrapper .shp-tab.active .shp-tab-link {
        color: #fff !important;
        background: #ed1c24 !important;

        border: 1px solid #ed1c24 !important;
        border-bottom: 1px solid #ed1c24 !important;

        box-shadow: 0 3px 9px rgba(237, 28, 36, .18) !important;
    }

    /* Dotyk / focus – bez poskakování karty */
    .type-product .p-detail-tabs-wrapper .shp-tab-link:hover,
    .type-product .p-detail-tabs-wrapper .shp-tab-link:focus {
        transform: none !important;
    }

    .type-product .p-detail-tabs-wrapper .shp-tab:not(.active) .shp-tab-link:hover,
    .type-product .p-detail-tabs-wrapper .shp-tab:not(.active) .shp-tab-link:focus {
        color: #ed1c24 !important;
        background: #fff !important;
        border-color: #ed1c24 !important;
    }

    /* Zachování názvu O produktu */
    .type-product #p-detail-tabs li[data-testid="tabDescription"] > .shp-tab-link {
        font-size: 0 !important;
    }

    .type-product #p-detail-tabs li[data-testid="tabDescription"] > .shp-tab-link::after {
        content: "O produktu";
        font-size: 14px !important;
        line-height: 1.4 !important;
        font-weight: 700 !important;
    }
}

/* =========================================================
   19. O PRODUKTU – OBRAZOVÉ BLOKY 50 / 50
   Všechny obrázky mají jednotný poměr 4 : 3 a stejnou velikost.
   HTML: .oni-about-product__feature
   ========================================================= */

.oni-about-product__feature {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 30px;
    align-items: start;

    width: 100%;
    margin: 0;
    padding: 28px 0;
    border-bottom: 1px solid #e8e8e8;
}

.oni-about-product__feature:first-child {
    padding-top: 0;
}

.oni-about-product__feature-content {
    min-width: 0;
    align-self: start;
}

/* Výraznější první odstavec každého bloku */
.oni-about-product .oni-about-product__feature-lead {
    margin-bottom: 14px;
    color: #222;
    font-weight: 600;
}

/* Jednotný rámec všech obrázků */
.oni-about-product__feature-media {
    position: relative;
    width: 100%;
    aspect-ratio: 4 / 3;
    overflow: hidden;
    background: #f5f5f5;
    border-radius: 6px;
}

.oni-about-product__feature-media img {
    display: block;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    object-fit: cover;
    object-position: center;
}

/* Střídání kompozice na desktopu: obrázek vlevo / text vpravo */
.oni-about-product__feature--image-left .oni-about-product__feature-media {
    order: -1;
}

/* Odkazy v textu karty O produktu */
.oni-about-product a:not(.oni-about-product__button) {
    color: #ed1c24;
    text-decoration: underline;
    text-underline-offset: 2px;
}

.oni-about-product a:not(.oni-about-product__button):hover,
.oni-about-product a:not(.oni-about-product__button):focus {
    color: #c9151b;
    text-decoration: none;
}


/* Tablet */
@media (max-width: 991px) {

    .oni-about-product__feature {
        gap: 22px;
    }

}


/* Mobil – text vždy nad obrázkem */
@media (max-width: 767px) {

    .oni-about-product__feature {
        grid-template-columns: 1fr !important;
        gap: 18px !important;
        padding: 22px 0 !important;
    }

    .oni-about-product__feature:first-child {
        padding-top: 0 !important;
    }

    .oni-about-product__feature--image-left .oni-about-product__feature-media {
        order: initial !important;
    }

    .oni-about-product__feature-media {
        width: 100% !important;
        aspect-ratio: 4 / 3 !important;
    }

    .oni-about-product .oni-about-product__feature-lead {
        margin-bottom: 12px !important;
    }
}

/* =========================================================
   20. O PRODUKTU – ODSTRANĚNÍ DUPLICITNÍ LINKY
   Zruší horní linku před první sekcí „Hlavní výhody“.
   Oddělovací linka posledního obrazového bloku zůstává zachována.
   ========================================================= */

.oni-about-product__details > .oni-about-product__section:first-child {
    border-top: 0 !important;
}

/* =========================================================
   21. DALŠÍ VHODNÁ ŘEŠENÍ
   Styl podle sekce „Doporučené GPS řešení pro dopravu“
   ONI SYSTEM
   ========================================================= */

.oni-related-products,
.oni-related-products * {
    box-sizing: border-box;
}

.oni-related-products {
    width: 100%;
    max-width: 1170px;
    margin: 42px auto 0;
    padding: 24px 35px 28px;
    background: #f7f7f7;
    border: 1px solid #e8e8e8;
    border-radius: 6px;
    font-family: "Open Sans", Arial, sans-serif;
    color: #1F1F1F;
}

/* Nadpis sekce */
.oni-related-products__header {
    max-width: 100%;
    margin: 0 0 24px;
    text-align: center;
}

.oni-related-products__header h2 {
    margin: 0 0 10px;
    padding: 0;
    color: #1F1F1F;
    font-size: 27px;
    line-height: 1.2;
    font-weight: 700;
    text-align: center;
}

.oni-related-products__header p {
    max-width: 720px;
    margin: 0 auto;
    padding: 0;
    color: #555;
    font-size: 14px;
    line-height: 1.6;
    text-align: center;
}

/* Produktová mřížka */
.oni-related-products__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
    align-items: stretch;
}

/* Produktová karta */
.oni-related-card {
    display: flex;
    flex-direction: column;
    align-items: center;
    min-width: 0;
    height: 100%;
    margin: 0;
    padding: 22px 18px 18px;
    background: #fff;
    border: 1px solid #e8e8e8;
    border-radius: 6px;
    text-align: center;
}

/* Obrázek produktu */
.oni-related-card__image {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 120px;
    margin: 0 0 14px;
    padding: 0;
    background: transparent;
    overflow: hidden;
    text-decoration: none !important;
}

.oni-related-card__image img {
    display: block;
    width: auto !important;
    height: auto !important;
    max-width: 100% !important;
    max-height: 120px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    object-fit: contain;
    object-position: center;
}

/* Štítek se v tomto typu karet nezobrazuje */
.oni-related-card__label {
    display: none;
}

/* Název produktu */
.oni-related-card h3 {
    margin: 0 0 9px;
    padding: 0;
    color: #1F1F1F;
    font-size: 17px;
    line-height: 1.25;
    font-weight: 700;
    text-align: center;
    text-transform: uppercase;
}

.oni-related-card h3 a {
    color: #1F1F1F !important;
    text-decoration: none !important;
}

.oni-related-card h3 a:hover,
.oni-related-card h3 a:focus {
    color: #ed1c24 !important;
    text-decoration: none !important;
}

/* Popis */
.oni-related-card p {
    width: 100%;
    min-height: 66px;
    margin: 0 0 16px;
    padding: 0;
    color: #1F1F1F;
    font-size: 14px;
    line-height: 1.5;
    font-weight: 400;
    text-align: center;
}

/* CTA */
.oni-related-card .oni-related-card__button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 140px;
    min-height: 50px;
    margin-top: auto;
    padding: 11px 18px;
    color: #fff !important;
    background: #ED1C24 !important;
    border: 0;
    border-radius: 6px !important;
    font-family: "Open Sans", Arial, sans-serif;
    font-size: 12px;
    line-height: 1;
    font-weight: 700;
    text-align: center;
    text-decoration: none !important;
    text-transform: uppercase;
    transition: background-color .2s ease;
}

.oni-related-card .oni-related-card__button:hover,
.oni-related-card .oni-related-card__button:focus {
    color: #fff !important;
    background: #c9151c !important;
    text-decoration: none !important;
}

/* =========================================================
   TABLET
   ========================================================= */
@media (max-width: 991px) {

    .oni-related-products {
        padding: 25px 25px 30px;
    }

    .oni-related-products__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

/* =========================================================
   MOBIL
   Jedna karta na řádek ve stylu referenční sekce.
   Breakpoint 767 px odpovídá ostatním mobilním pravidlům
   produktového detailu.
   ========================================================= */
@media (max-width: 767px) {

    .oni-related-products {
        width: 100% !important;
        max-width: 100% !important;
        margin: 32px auto 0 !important;
        padding: 25px 20px 30px !important;
        background: #fafafa !important;
        border-radius: 14px !important;
        font-family: "Open Sans", Arial, sans-serif !important;
    }

    .oni-related-products__header {
        max-width: 100% !important;
        margin: 0 0 22px !important;
        padding: 0 !important;
        text-align: center !important;
    }

    .oni-related-products__header h2 {
        margin: 0 0 9px !important;
        padding: 0 !important;
        color: #1F1F1F !important;
        font-size: 27px !important;
        line-height: 1.2 !important;
        font-weight: 700 !important;
        text-align: center !important;
    }

    .oni-related-products__header p {
        max-width: 100% !important;
        margin: 0 auto !important;
        color: #555 !important;
        font-size: 14px !important;
        line-height: 1.6 !important;
        text-align: center !important;
    }

    .oni-related-products__grid {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 14px !important;
        width: 100% !important;
    }

    .oni-related-card {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        width: 100% !important;
        min-width: 0 !important;
        height: auto !important;
        margin: 0 !important;
        padding: 20px 18px 18px !important;
        background: #fff !important;
        border: 0 !important;
        border-radius: 8px !important;
        box-shadow: none !important;
        text-align: center !important;
    }

    .oni-related-card__image {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 100% !important;
        height: 115px !important;
        margin: 0 0 12px !important;
        padding: 0 !important;
        overflow: hidden !important;
        background: transparent !important;
    }

    .oni-related-card__image img {
        display: block !important;
        width: auto !important;
        height: auto !important;
        max-width: 100% !important;
        max-height: 115px !important;
        margin: 0 auto !important;
        object-fit: contain !important;
        object-position: center !important;
    }

    .oni-related-card h3 {
        margin: 0 0 8px !important;
        padding: 0 !important;
        color: #1F1F1F !important;
        font-size: 17px !important;
        line-height: 1.3 !important;
        font-weight: 700 !important;
        text-align: center !important;
        text-transform: uppercase !important;
    }

    .oni-related-card p {
        width: 100% !important;
        min-height: 0 !important;
        margin: 0 0 15px !important;
        padding: 0 !important;
        color: #1F1F1F !important;
        font-size: 14px !important;
        line-height: 1.5 !important;
        text-align: center !important;
    }

    .oni-related-card .oni-related-card__button {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: auto !important;
        min-width: 135px !important;
        min-height: 40px !important;
        margin: auto auto 0 !important;
        padding: 11px 18px !important;
        color: #fff !important;
        font-size: 12px !important;
        line-height: 1 !important;
        font-weight: 700 !important;
        text-align: center !important;
        text-decoration: none !important;
        text-transform: uppercase !important;
    }
}

/* =========================================================
   EXTRA MALÉ TELEFONY
   ========================================================= */
@media (max-width: 420px) {

    .oni-related-products {
        margin-top: 28px !important;
        padding: 22px 14px 25px !important;
        border-radius: 12px !important;
    }

    .oni-related-products__header {
        margin-bottom: 18px !important;
    }

    .oni-related-products__header h2 {
        font-size: 27px !important;
    }

    .oni-related-card {
        padding: 18px 14px 16px !important;
    }

    .oni-related-card__image {
        height: 105px !important;
        margin-bottom: 11px !important;
    }

    .oni-related-card__image img {
        max-height: 105px !important;
    }

    .oni-related-card h3 {
        font-size: 16px !important;
    }

    .oni-related-card p {
        font-size: 13px !important;
        line-height: 1.5 !important;
    }

    .oni-related-card .oni-related-card__button {
        min-width: 128px !important;
        padding: 10px 15px !important;
    }
}
/* Menší mezera před kontaktním CTA na produktové stránce.
   CTA je vložené v samostatném bloku .oni-about-product,
   proto je nutné upravit nadřazenou sekci, ne samotný box. */
.oni-about-product:has(> .oni-about-product__details > .oni-about-product__section > .oni-contact-cta) {
    margin-top: -90px !important;
    padding-top: 0 !important;
}

@media (max-width: 767px) {
    .oni-about-product:has(> .oni-about-product__details > .oni-about-product__section > .oni-contact-cta) {
        margin-top: -45px !important;
    }
}

.type-product .add-to-cart .btn-conversion {
  border-radius: 6px !important;
}

/* Mobilní cena bez DPH: stejný poměr jako na desktopu (14 / 34). */
@media (max-width: 767px) {
    .type-product .p-final-price-wrapper .price-additional {
        font-size: 12.352941px !important; /* 30 × 14 / 34 */
        line-height: 1.4 !important;
    }
}

@media (max-width: 480px) {
    .type-product .p-final-price-wrapper .price-additional {
        font-size: 11.529412px !important; /* 28 × 14 / 34 */
    }
}


/* Související produkty: stejný styl tlačítek jako na titulní stránce. */
.type-product .oni-related-card .oni-related-card__button {
    box-sizing: border-box;
    gap: 10px;
    padding: 12px 18px !important;
    border: 2px solid #ED1C24 !important;
    border-radius: 6px !important;
    background: #fff !important;
    color: #ED1C24 !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    line-height: 1.4 !important;
    text-transform: none !important;
    text-decoration: none !important;
    transition: background-color .2s, color .2s;
}

.type-product .oni-related-card .oni-related-card__button:hover {
    background: #ED1C24 !important;
    color: #fff !important;
}

.type-product .oni-related-card .oni-related-card__button:focus-visible {
    outline: 2px solid #ED1C24;
    outline-offset: 4px;
}

.type-product .oni-related-card .oni-related-card__button span {
    color: inherit !important;
}
