/* =========================================================
   TERMOPEN.CZ
   Kompletní frontend CSS
   ========================================================= */


/* =========================================================
   RESET
   ========================================================= */

*,
*::before,
*::after {
    box-sizing: border-box;
}

html {
    margin: 0;
    padding: 0;
    font-size: 16px;
}

body {
    margin: 0;
    padding: 0;

    background: #e9e9e9;
    color: #222;

    font-family:
        Arial,
        Helvetica,
        sans-serif;

    font-size: 15px;
    line-height: 1.55;
}

img {
    max-width: 100%;
    height: auto;
}

a {
    color: inherit;
}

button,
summary {
    font-family: inherit;
}


/* =========================================================
   HLAVNÍ KONTEJNER
   ========================================================= */

.container {
    width: 100%;
    max-width: 1100px;

    margin-left: auto;
    margin-right: auto;

    padding-left: 20px;
    padding-right: 20px;
}


/* =========================================================
   CELÝ WEB
   ========================================================= */

.site {
    width: 100%;
    min-height: 100vh;
}


/* =========================================================
   HEADER
   ========================================================= */

.site-header {
    width: 100%;
    background: #fff;
}

.header-inner {
    min-height: 120px;

    display: flex;
    align-items: center;
}

.logo {
    display: inline-block;

    text-decoration: none;
    line-height: 0;
}

.logo img {
    display: block;

    width: auto;
    max-width: 70%;
    height: auto;
}


/* =========================================================
   HLAVNÍ ČERNÉ MENU
   ========================================================= */

.main-navigation {
    position: relative;
    z-index: 1000;

    width: 100%;

    background: #000;
    color: #fff;
}

.navigation-inner {
    position: relative;

    display: flex;
    align-items: stretch;

    padding: 0.5em;

    min-height: 44px;
}


/* =========================================================
   DESKTOP MENU
   ========================================================= */

.desktop-navigation {
    display: flex;

    align-items: stretch;

    width: 100%;

    margin: 0;
    padding: 0;

    list-style: none;
}

.desktop-navigation > li {
    position: relative;

    margin: 0;
    padding: 0;
}


/* =========================================================
   HLAVNÍ ODKAZY
   ========================================================= */

.desktop-navigation > li > a,
.desktop-navigation > li > details > summary {
    display: flex;

    align-items: center;

    min-height: 44px;

    padding: 0 17px;

    color: #fff;
    background: #000;

    font-size: 14px;
    font-weight: normal;

    text-decoration: none;

    white-space: nowrap;

    cursor: pointer;
}

.desktop-navigation > li:hover > a,
.desktop-navigation > li:hover > details > summary,
.desktop-navigation > li > a:hover,
.desktop-navigation > li > details > summary:hover {
    background: #333;
    color: #fff;
}


/* =========================================================
   DETAILS
   ========================================================= */

.desktop-navigation details {
    position: relative;

    margin: 0;
    padding: 0;
}

.desktop-navigation summary {
    list-style: none;
}

.desktop-navigation summary::-webkit-details-marker {
    display: none;
}

.desktop-navigation summary::marker {
    display: none;
}


/* =========================================================
   ŠIPKA MENU
   ========================================================= */

.menu-arrow {
    display: inline-block;

    margin-left: 8px;

    font-size: 17px;
    line-height: 1;

    transition: transform 0.15s ease;
}

.desktop-navigation > li > details > summary .menu-arrow {
    transform: rotate(90deg);
}


/* =========================================================
   DESKTOP DROPDOWN
   ========================================================= */

@media (min-width: 769px) {

    .desktop-navigation details > .submenu {
        position: absolute;

        top: 100%;
        left: 0;

        z-index: 2000;

        display: none;

        min-width: 230px;

        margin: 0;
        padding: 0;

        background: #111;

        border: 1px solid #333;

        list-style: none;

        box-shadow:
            0 4px 10px rgba(0, 0, 0, 0.25);
    }

    .desktop-navigation li:hover > details > .submenu,
    .desktop-navigation li:focus-within > details > .submenu {
        display: block;
    }

    .desktop-navigation .submenu > li {
        position: relative;

        display: block;

        width: 100%;

        margin: 0;
        padding: 0;
    }

    .desktop-navigation .submenu > li > a,
    .desktop-navigation .submenu > li > details > summary {
        display: flex;

        align-items: center;

        width: 100%;

        min-height: 40px;

        padding: 9px 14px;

        color: #fff;
        background: #111;

        font-size: 14px;

        text-decoration: none;

        white-space: nowrap;

        cursor: pointer;
    }

    .desktop-navigation .submenu > li > a:hover,
    .desktop-navigation .submenu > li:hover > details > summary {
        background: #333;
        color: #fff;
    }


    /* =====================================================
       DALŠÍ ÚROVEŇ MENU
       ===================================================== */

    .desktop-navigation .submenu li > details > .submenu {
        position: absolute;

        top: 0;
        left: 100%;

        z-index: 2100;

        display: none;

        min-width: 230px;

        margin: 0;
        padding: 0;

        background: #111;

        border: 1px solid #333;

        list-style: none;

        box-shadow:
            0 4px 10px rgba(0, 0, 0, 0.25);
    }

    .desktop-navigation .submenu li:hover > details > .submenu,
    .desktop-navigation .submenu li:focus-within > details > .submenu {
        display: block;
    }

    .desktop-navigation .submenu .menu-arrow {
        margin-left: auto;

        transform: rotate(0deg);
    }


    /* =====================================================
       NADPIS RODIČOVSKÉ POLOŽKY
       ===================================================== */

    .desktop-navigation .submenu-heading {
        display: block;
    }

    .desktop-navigation .submenu-heading a {
        display: block;

        padding: 9px 14px;

        color: #fff;
        background: #111;

        text-decoration: none;
    }

    .desktop-navigation .submenu-heading a:hover {
        background: #333;
    }

}


/* =========================================================
   JAZYKOVÝ DROPDOWN
   ========================================================= */

.language-switcher {
    position: relative;
}

.language-switcher details {
    position: relative;
}

.language-switcher summary {
    color: #fff;
}

.language-current {
    display: inline-flex;

    align-items: center;

    gap: 7px;

    color: #fff;
}

.language-current img {
    width: 22px;

    height: auto;

    display: block;
}


/* =========================================================
   JAZYK – OTEVŘENÝ DROPDOWN
   ========================================================= */

.language-dropdown {
    position: absolute;

    top: 100%;
    right: 0;

    z-index: 9999;

    min-width: 170px;

    margin: 8px 0 0 0;
    padding: 6px 0;

    background: #fff;

    border: 1px solid #ccc;

    box-shadow:
        0 5px 18px rgba(0, 0, 0, 0.20);

    list-style: none;
}

.language-dropdown li {
    margin: 0;
    padding: 0;

    list-style: none;
}

.language-dropdown a {
    display: flex;

    align-items: center;

    gap: 10px;

    padding: 9px 14px;

    color: #222 !important;
    background: #fff;

    font-size: 14px;

    text-decoration: none;

    white-space: nowrap;
}

.language-dropdown a:hover {
    background: #eeeeee;

    color: #000 !important;
}

.language-dropdown img {
    width: 24px;

    height: auto;

    display: block;

    flex-shrink: 0;
}


/* =========================================================
   POSLEDNÍ AKTUALIZACE
   ========================================================= */

.desktop-navigation .last-update {
    display: flex;

    align-items: center;

    margin-left: auto;

    padding: 0 17px;

    color: #ccc;

    font-size: 12px;

    white-space: nowrap;
}

.desktop-navigation .last-update strong {
    margin-left: 5px;

    color: #fff;

    font-weight: normal;
}


/* =========================================================
   MOBILNÍ MENU
   ========================================================= */

.mobile-menu {
    display: none;

    width: 100%;
}

.mobile-menu-button {
    display: flex;

    align-items: center;

    gap: 10px;

    width: 100%;

    min-height: 44px;

    padding: 10px 15px;

    color: #fff;
    background: #000;

    cursor: pointer;

    list-style: none;

    user-select: none;
}

.mobile-menu-button::-webkit-details-marker {
    display: none;
}

.mobile-menu-button::marker {
    display: none;
}


/* =========================================================
   HAMBURGER
   ========================================================= */

.hamburger {
    display: flex;

    flex-direction: column;

    justify-content: center;

    gap: 4px;

    width: 22px;
}

.hamburger span {
    display: block;

    width: 22px;
    height: 2px;

    background: #fff;
}


/* =========================================================
   MOBILNÍ NAVIGACE
   ========================================================= */

.mobile-navigation {
    display: block;

    margin: 0;
    padding: 0;

    background: #000;

    list-style: none;
}

.mobile-navigation li {
    position: relative;

    margin: 0;
    padding: 0;

    list-style: none;
}

.mobile-navigation > li > a,
.mobile-navigation > li > details > summary {
    display: flex;

    align-items: center;

    width: 100%;

    min-height: 44px;

    padding: 10px 15px;

    color: #fff;
    background: #000;

    border-top: 1px solid #222;

    text-decoration: none;

    cursor: pointer;
}

.mobile-navigation > li > a:hover,
.mobile-navigation > li > details > summary:hover {
    background: #333;
}

.mobile-navigation summary {
    list-style: none;
}

.mobile-navigation summary::-webkit-details-marker {
    display: none;
}

.mobile-navigation summary::marker {
    display: none;
}

.mobile-navigation .menu-arrow {
    margin-left: auto;

    transition: transform 0.15s ease;
}

.mobile-navigation details[open] > summary .menu-arrow {
    transform: rotate(90deg);
}

.mobile-navigation .submenu {
    display: block;

    margin: 0;
    padding: 0 0 0 15px;

    background: #111;

    list-style: none;
}

.mobile-navigation .submenu .submenu {
    padding-left: 15px;

    background: #181818;
}

.mobile-navigation .submenu > li > a,
.mobile-navigation .submenu > li > details > summary {
    display: flex;

    align-items: center;

    width: 100%;

    min-height: 42px;

    padding: 9px 15px;

    color: #fff;

    border-top: 1px solid #292929;

    text-decoration: none;
}

.mobile-navigation .submenu > li > a:hover,
.mobile-navigation .submenu > li > details > summary:hover {
    background: #333;
}


/* =========================================================
   MOBILNÍ JAZYKOVÝ PŘEPÍNAČ
   ========================================================= */

.mobile-language-switcher {
    margin-top: 10px;
}

.mobile-language-switcher summary {
    cursor: pointer;

    list-style: none;

    color: #fff;
}

.mobile-language-switcher summary::-webkit-details-marker {
    display: none;
}

.mobile-language-switcher summary::marker {
    display: none;
}

.mobile-language-list {
    list-style: none;

    margin: 8px 0 0 0;
    padding: 0;

    background: #111;
}

.mobile-language-list li {
    list-style: none;
}

.mobile-language-list a {
    display: flex;

    align-items: center;

    gap: 10px;

    padding: 7px 0;

    color: #fff;

    text-decoration: none;
}

.mobile-language-list a:hover {
    color: #fff;

    background: #333;
}

.mobile-language-list img {
    width: 24px;

    height: auto;

    display: block;

    flex-shrink: 0;
}


/* =========================================================
   HLAVNÍ OBSAH
   ========================================================= */

.content-bar {
    width: 100%;

    background: #e9e9e9;

    padding: 25px 0 30px;
}

.content {
    background: #fff;

    padding-top: 30px;
    padding-bottom: 40px;

    min-height: 500px;
}

.content article {
    width: 100%;
}


/* =========================================================
   NADPIS
   ========================================================= */

.content-header {
    margin: 0 0 25px;
    padding: 0;
}

.content-header h1 {
    margin: 0;

    color: #222;

    font-size: 28px;
    font-weight: normal;

    margin: 1em;

    line-height: 1.3;
}


/* =========================================================
   ÚVODNÍ BLOK
   ========================================================= */

.company-intro {
    display: grid;

    grid-template-columns:
        300px
        minmax(0, 1fr);

    gap: 35px;

    align-items: start;

    width: 100%;
}

.company-intro-image {
    width: 100%;
}

.company-intro-image img {
    display: block;

    width: 100%;
    height: auto;
}

.company-intro-text {
    min-width: 0;
}

.company-intro-text p {
    margin: 0 0 18px;

    line-height: 1.6;
}

.company-intro-text p:last-child {
    margin-bottom: 0;
}


/* =========================================================
   ODDĚLOVACÍ ČÁRA
   ========================================================= */

.content-separator {
    display: block;

    width: 100%;
    height: 1px;

    margin: 30px 0;

    padding: 0;

    border: 0;

    background: #d4d4d4;
}


/* =========================================================
   INFORMACE + QR
   ========================================================= */

.company-information {
    display: grid;

    grid-template-columns:
        minmax(0, 1fr)
        190px;

    gap: 40px;

    align-items: start;

    width: 100%;
}

.company-information-text {
    min-width: 0;
}

.company-info-row {
    display: grid;

    grid-template-columns:
        155px
        minmax(0, 1fr);

    gap: 10px;

    margin: 0 0 8px;

    line-height: 1.5;
}

.company-info-row strong {
    font-weight: bold;
}


/* =========================================================
   QR KÓD
   ========================================================= */

.company-information-qr {
    display: flex;

    flex-direction: column;

    justify-content: flex-start;
    align-items: center;

    width: 100%;

    text-align: center;
}

.company-information-qr img {
    display: block;

    width: 170px;
    max-width: 100%;

    height: auto;

    margin: 0 auto;
}


/* =========================================================
   POPISEK QR KÓDU
   ========================================================= */

.qr-caption {
    display: block;

    width: 100%;

    margin: 6px 0 0;

    padding: 0;

    color: #777;

    font-size: 11px;

    line-height: 1.3;

    text-align: center;
}


/* =========================================================
   KONTAKT
   ========================================================= */

.contact-section {
    width: 100%;
}

.contact-section h2 {
    margin: 0 0 15px;

    color: #222;

    font-size: 20px;
    font-weight: normal;

    line-height: 1.3;
}

.contact-information {
    margin: 0;
}

.contact-information p {
    margin: 0 0 8px;

    line-height: 1.5;
}

.contact-information p:last-child {
    margin-bottom: 0;
}

.contact-information a {
    color: inherit;

    text-decoration: none;
}

.contact-information a:hover {
    text-decoration: underline;
}


/* =========================================================
   FOOTER
   ========================================================= */

.site-footer {
    width: 100%;

    background: #222;

    color: #ccc;
}

.footer-inner {
    display: flex;

    align-items: center;

    min-height: 60px;
}

.footer-copy {
    width: 100%;

    font-size: 12px;

    line-height: 1.5;
}

.footer-copy a {
    color: #fff;

    text-decoration: none;
}

.footer-copy a:hover {
    text-decoration: underline;
}


/* =========================================================
   PRODUKTOVÉ STRÁNKY
   ========================================================= */

.product-content {
    width: 100%;

    font-size: 16px;
    line-height: 1.7;
}


/* =========================================================
   HLAVNÍ OBRÁZEK PRODUKTU VLEVO
   ========================================================= */

.product-image-left {
    float: left;

    width: 300px;
    max-width: 45%;

    height: auto;

    margin: 0 30px 20px 0;

    display: block;
}


/* =========================================================
   VYČIŠTĚNÍ FLOATU
   ========================================================= */

.product-image-clear {
    clear: both;
}


/* =========================================================
   PRODUKTOVÁ TABULKA
   ========================================================= */

.product-table-wrapper {
    width: 100%;

    margin: 30px 0 15px;

    overflow-x: auto;

    -webkit-overflow-scrolling: touch;
}

.product-table {
    width: max-content;
    max-width: 100%;

    margin: 20px auto;

    min-width: 49%;

    border-collapse: collapse;

    border: 1px solid #999;

    background: #fff;

    text-align: center;
}

.product-table thead th {
    padding: 10px 12px;

    border: 1px solid #999;

    background: #f2f2f2;

    color: #222;

    font-weight: 700;

    text-align: center;

    vertical-align: middle;

    white-space: nowrap;
}

.product-table tbody td {
    padding: 9px 12px;

    border: 1px solid #999;

    text-align: center;

    vertical-align: middle;

    white-space: nowrap;
}

.product-table tbody tr:nth-child(even) {
    background: #f8f8f8;
}

.product-table tbody tr:hover {
    background: #eeeeee;
}


/* =========================================================
   POZNÁMKA POD TABULKOU
   ========================================================= */

.table-note {
    margin: 10px 0 30px;

    color: #666;

    font-size: 14px;

    line-height: 1.5;

    text-align: center;
}


/* =========================================================
   CHYBOVÁ HLÁŠKA
   ========================================================= */

.alert {
    padding: 15px 18px;

    margin-top: 20px;

    border: 1px solid #cc0000;

    background: #fff0f0;

    color: #990000;
}


/* =========================================================
   PRODUKTOVÉ NÁVODY
   ========================================================= */

.product-instructions {
    width: 100%;

    margin-top: 40px;
}


/* =========================================================
   NADPISY NÁVODŮ
   ========================================================= */

.product-instructions h2 {
    margin: 35px 0 20px;

    color: #222;

    font-size: 22px;

    font-weight: normal;

    line-height: 1.35;
}

.product-instructions h2:first-child {
    margin-top: 0;
}

.product-instructions h3 {
    margin: 0 0 15px;

    color: #222;

    font-size: 18px;

    font-weight: bold;

    line-height: 1.4;
}


/* =========================================================
   VIDEO
   ========================================================= */

.product-video-section {
    width: 100%;

    clear: both;

    margin-top: 35px;
}

.product-video-section h2 {
    margin: 0 0 20px;

    color: #222;

    font-size: 22px;

    font-weight: normal;

    line-height: 1.35;
}

.product-video {
    width: 100%;

    max-width: 800px;

    margin: 0 auto 35px;
}

.product-video video {
    display: block;

    width: 100%;

    height: auto;

    background: #000;
}


/* =========================================================
   ANIMACE PRODUKTU
   ========================================================= */

.product-animation {
    display: block;

    width: 100%;

    margin: 35px auto;

    padding: 0;

    clear: both;

    text-align: center;
}

.product-animation img {
    display: block;

    width: auto;

    max-width: 100%;

    height: auto;

    margin: 0 auto;
}

.product-animation .media-caption {
    display: block;

    width: 100%;

    margin: 10px 0 0;

    padding: 0;

    color: #666;

    font-size: 14px;

    line-height: 1.5;

    text-align: center;
}


/* =========================================================
   NÁVOD – OBRÁZEK VLEVO + TEXT VPRAVO
   ========================================================= */

.product-detail-layout {
    display: grid;

    grid-template-columns:
        minmax(280px, 45%)
        minmax(0, 1fr);

    gap: 35px;

    align-items: start;

    width: 100%;

    margin-top: 25px;

    clear: both;
}


/* =========================================================
   OBRÁZEK NÁVODU
   ========================================================= */

.product-detail-image {
    width: 100%;

    min-width: 0;
}

.product-detail-image img {
    display: block;

    width: 70%;

    max-width: 100%;

    height: auto;

    margin: 0;
}


/* =========================================================
   KOMINICKÉ KARTÁČE – DVĚ TABULKY VEDLE SEBE
   ========================================================= */

.product-tables-side-by-side {
    display: flex;

    flex-direction: row;

    align-items: flex-start;

    justify-content: center;

    gap: 24px;

    width: 100%;

    margin: 20px 0;

    overflow-x: auto;

    -webkit-overflow-scrolling: touch;
}

.product-table-half {
    flex: 0 0 auto;

    width: auto;

    min-width: 0;
}

.product-table-half .product-table {
    width: max-content;

    min-width: 0;

    margin: 0;
}


/* =========================================================
   OBRÁZEK VLEVO + TEXT VPRAVO
   ========================================================= */

.product-image-left {
    float: left;

    margin: 0 2em 2em 0;

    max-width: 45%;

    height: auto;
}

.product-image-clear {
    clear: both;
}


/* =========================================================
   TEXT NÁVODU
   ========================================================= */

.product-detail-text {
    width: 100%;

    min-width: 0;
}

.product-detail-text ol {
    margin: 0;

    padding-left: 25px;
}

.product-detail-text li {
    margin-bottom: 12px;

    line-height: 1.6;
}

.product-detail-text li:last-child {
    margin-bottom: 0;
}

.product-detail-text p {
    margin: 0 0 18px;

    line-height: 1.7;
}

.product-detail-text p:last-child {
    margin-bottom: 0;
}


/* =========================================================
   UNIVERZÁLNÍ OBRÁZKOVÝ MODAL
   ========================================================= */

/*
   Každý obrázek, který má být možné otevřít v modalu,
   dostane třídu:

   class="modal-image"

   Lze kombinovat s jinými třídami:

   class="product-image-left modal-image"

   class="product-detail-image modal-image"

   class="nejaka-jina-trida modal-image"
*/


.modal-image {
    cursor: zoom-in;
}


/* =========================================================
   MODAL – POZADÍ
   ========================================================= */

.image-modal {
    display: none;

    position: fixed;

    inset: 0;

    z-index: 99999;

    align-items: center;
    justify-content: center;

    padding: 30px;

    background: rgba(0, 0, 0, 0.78);

    box-sizing: border-box;
}


/* =========================================================
   MODAL – OTEVŘENÝ
   ========================================================= */

.image-modal.is-open {
    display: flex;
}


/* =========================================================
   MODAL – OBSAH
   ========================================================= */

.image-modal-content {
    position: relative;

    display: flex;

    align-items: center;
    justify-content: center;

    max-width: 95vw;
    max-height: 92vh;

    padding: 15px;

    background: #fff;

    border-radius: 4px;

    box-shadow:
        0 10px 40px rgba(0, 0, 0, 0.45);

    box-sizing: border-box;
}


/* =========================================================
   MODAL – OBRÁZEK
   ========================================================= */

.image-modal-content img {
    display: block;

    width: auto;

    height: auto;

    max-width: calc(95vw - 30px);

    max-height: calc(92vh - 30px);

    object-fit: contain;
}


/* =========================================================
   MODAL – ZAVÍRACÍ TLAČÍTKO
   ========================================================= */

.image-modal-close {
    position: absolute;

    top: -15px;
    right: -15px;

    z-index: 2;

    display: flex;

    align-items: center;
    justify-content: center;

    width: 35px;
    height: 35px;

    margin: 0;
    padding: 0;

    border: none;

    border-radius: 50%;

    background: #fff;

    color: #222;

    font-size: 26px;

    line-height: 1;

    text-align: center;

    cursor: pointer;

    box-shadow:
        0 2px 8px rgba(0, 0, 0, 0.3);
}

.image-modal-close:hover {
    background: #eeeeee;
}


/* =========================================================
   MODAL – POPISEK
   ========================================================= */

.image-modal-caption {
    display: block;

    margin: 10px 0 0;

    padding: 0;

    color: #555;

    font-size: 13px;

    line-height: 1.4;

    text-align: center;
}


/* =========================================================
   MOBIL – PRODUKT
   ========================================================= */

@media (max-width: 768px) {

    .product-tables-side-by-side {
        flex-direction: column;

        gap: 20px;

        overflow-x: visible;
    }

    .product-table-half {
        width: 100%;

        min-width: 0;
    }

    .product-table-half .product-table {
        width: max-content;

        max-width: 100%;
    }

    .product-image-left {
        float: none;

        display: block;

        max-width: 100%;

        margin: 0 auto 20px;
    }


    /* =====================================================
       MODAL – TABLET / MOBIL
       ===================================================== */

    .image-modal {
        padding: 15px;
    }

    .image-modal-content {
        max-width: 100%;

        max-height: 90vh;

        padding: 10px;
    }

    .image-modal-content img {
        max-width: calc(100vw - 30px);

        max-height: calc(90vh - 20px);
    }

    .image-modal-close {
        top: -10px;

        right: -10px;
    }

}
.centered-image {display: block;
                        width: 80%;
                        max-width: 80%;
                        height: auto;
                        margin: 0 auto;}

/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 768px) {

    .container {
        padding-left: 15px;

        padding-right: 15px;
    }

    .header-inner {
        min-height: 95px;
    }

    .desktop-navigation {
        display: none;
    }

    .mobile-menu {
        display: block;
    }

    .content-bar {
        padding-top: 15px;

        padding-bottom: 15px;
    }

    .content {
        padding-top: 25px;

        padding-bottom: 30px;
    }

    .company-intro {
        grid-template-columns:
            240px
            minmax(0, 1fr);

        gap: 25px;
    }

    .company-information {
        grid-template-columns:
            minmax(0, 1fr)
            150px;

        gap: 25px;
    }

    .company-information-qr {
        align-items: center;
    }

    .company-information-qr img {
        width: 140px;
    }

    .company-info-row {
        grid-template-columns:
            135px
            minmax(0, 1fr);
    }

}


/* =========================================================
   MOBIL – PRODUKT
   ========================================================= */

@media (max-width: 700px) {

    .product-image-left {
        float: none;

        width: 100%;

        max-width: 400px;

        margin: 0 auto 25px;
    }

    .product-content {
        font-size: 15px;
    }

    .product-table {
        min-width: 0;

        width: max-content;

        max-width: none;
    }

    .product-table-wrapper {
        overflow-x: auto;

        -webkit-overflow-scrolling: touch;
    }

    .product-video-section {
        margin-top: 30px;
    }

    .product-video-section h2 {
        font-size: 20px;
    }

    .product-video {
        margin-bottom: 30px;
    }

    .product-animation {
        width: 100%;

        margin: 25px auto 30px;

        text-align: center;
    }

    .product-animation img {
        width: auto;

        max-width: 100%;

        margin: 0 auto;
    }

    .product-animation .media-caption {
        width: 100%;

        margin-top: 10px;

        text-align: center;
    }

    .product-instructions {
        margin-top: 30px;
    }

    .product-instructions h2 {
        margin-top: 30px;

        margin-bottom: 18px;

        font-size: 20px;
    }

    .product-instructions h3 {
        font-size: 17px;
    }

    .product-detail-layout {
        display: flex;

        flex-direction: column;

        gap: 25px;

        width: 100%;
    }

    .product-detail-image {
        width: 100%;
    }

    .product-detail-image img {
        display: block;

        width: 100%;

        max-width: 500px;

        margin: 0 auto;
    }

    .product-detail-text {
        width: 100%;
    }

}


/* =========================================================
   MOBIL – HEADER / OBSAH
   ========================================================= */

@media (max-width: 600px) {

    .header-inner {
        min-height: 80px;
    }

    .logo img {
        max-height: 65px;

        width: auto;
    }

    .content-header {
        margin-bottom: 20px;
    }

    .content-header h1 {
        font-size: 24px;

        margin: 1em;
    }

    .company-intro {
        display: flex;

        flex-direction: column;

        gap: 20px;
    }

    .company-intro-image {
        width: 100%;
    }

    .company-intro-image img {
        width: 100%;
    }

    .company-information {
        display: flex;

        flex-direction: column;

        gap: 25px;
    }

    .company-information-qr {
        display: flex;

        flex-direction: column;

        align-items: center;

        justify-content: flex-start;

        width: 100%;

        text-align: center;
    }

    .company-information-qr img {
        width: 150px;

        margin: 0 auto;
    }

    .qr-caption {
        margin-top: 6px;

        width: 100%;

        text-align: center;
    }

    .company-info-row {
        grid-template-columns:
            115px
            minmax(0, 1fr);

        gap: 8px;

        font-size: 14px;
    }

    .footer-inner {
        min-height: 55px;
    }

    .footer-copy {
        font-size: 11px;
    }

}


/* =========================================================
   MALÝ MOBIL
   ========================================================= */

@media (max-width: 400px) {

    .container {
        padding-left: 12px;

        padding-right: 12px;
    }

    .content {
        padding-left: 12px;

        padding-right: 12px;
    }

    .company-info-row {
        display: block;

        margin-bottom: 12px;
    }

    .company-info-row strong {
        display: block;

        margin-bottom: 2px;
    }

    .company-information-qr img {
        width: 140px;
    }

    .qr-caption {
        font-size: 10px;

        margin-top: 5px;
    }

}