
:root {    
    --color-cta: #f7e32f; /* CTA */
    --color-cta-hover: #e6d21e;

    --fw-light: 300;
    /* ! Nové barvy */
    --highlight: #3e4f64;
    --highlight-hover: #3e4f64;
    --highlight2: #d29504;
    --color-fg-1: #3e4f64;
    --color-fg-2: #000000;
    --color-fg-3: #ffffff;
    --color-bg-1: #3e4f64;
    --color-bg-2: #e3e8ee;
    --color-bg-3: #ffffff;
}
html {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-smoothing: antialiased;
  
  font-size: 18px;
  line-height: 1.4;
  /* font-family: "Figtree", sans-serif; */
  font-family: "Red Hat Display", sans-serif;
  font-optical-sizing: auto;
  font-weight: normal;
  font-style: normal;
  color: var(--color-fg-2);
  background-color: var(--color-bg-3);
}
body {
    /* line-height: 1.5em; */
    position: relative;
}
/******************************************************************************/

/* h1, .h1, h2, .h2, h3, .h3, h4, .h4 { font-family: "STIX Two Text", serif; } */
h1, .h1 { font-size: 44px; font-weight: 900; line-height: 1.25; margin-top: 1em; margin-bottom: .75em; text-wrap: balance; color: inherit;}
h2, .h2 { font-size: 28px; font-weight: 700; line-height: 1.25; margin: 0; margin-top: 1em; margin-bottom: .5em; text-wrap: balance; color: inherit;}
h3, .h3 { font-size: 20px; font-weight: 700; line-height: 1.25; margin: 0; margin-top: .5em; margin-bottom: .5em; text-wrap: balance; color: inherit; }
h4, .h4 { font-size: 16px; font-weight: normal; line-height: 1.25; margin: 0; text-wrap: balance; color: inherit; }

.h1, .h2, .h3, .h4 { display: block; }

h1 strong, .h1 strong,
h2 strong, .h2 strong,
h3 strong, .h3 strong {
    font-weight: 900;
}

table {	border-collapse: collapse; }
p { margin: 0; }
a { color: inherit; }
a:hover { text-decoration: none; }
img { border: 0; margin: 0; padding: 0; vertical-align: bottom; }


ul {
    padding-left: 1em;
    margin: 1em 0;
}
ul li::marker {
    color: var(--color-fg-1);
    font-size: .6em;
}
input, textarea, select { font-family: inherit; font-size: 1rem; }

hr {opacity: .15;height: 1px;background: currentColor;border: none;margin: 1em 0;}

@media (max-width: 600px) {
    /* h1, .h1 { font-size: 32px; margin-top: .5em; margin-bottom: .5em;} */
    /* h2, .h2 { font-size: 22px; margin-top: .5em; margin-bottom: .5em; } */
    /* h3, .h3 { font-size: 18px; margin: 0; } */
    /* h4, .h4 { font-size: 16px; margin: 0; } */
}

/******************************************************************************/

.velka-pismena { text-transform: uppercase; }

/******************************************************************************/

/* .zvyrazneni { color: #00a1e2; } */
.zvyrazneni { color: var(--color-fg-1); }
.zvyrazneni-seda { color: #666; }
.zvyrazneni-zluta { color: #d39603; }

/******************************************************************************/

.text-tentky { font-weight: 300; }

/******************************************************************************/
/* tabulka */

.table {}
.table tr th { line-height: 1.5; }
.table tr th, .table tr td { padding: 0px 15px 0px 0; }
.table tr th, .table thead tr td, .table tr.th td { background: var(--highlight); background: #ccc; color: #111; font-weight: normal; }

/******************************************************************************/
.text-max4 { width: 100% !important;height: auto !important;}
.text-max4 tr { height: auto !important;}
.text-max4 td { width: 100% !important;height: auto !important;columns: 230px;column-gap: 1em;}
/******************************************************************************/

.content-table { width: 100% !important;height: auto !important;}
.content-table tr {display: grid;grid-template-columns: repeat(auto-fill, minmax(440px, 1fr));gap: 1em;height: auto !important;}
.content-table td {/* font-size:14px; */display: block;width: 100% !important;height: auto !important;}
.content-table img {max-width: 100%;object-fit: contain;height: auto;}
@media (max-width: 600px) {
    .content-table tr {grid-template-columns: 1fr;}
}
/******************************************************************************/

.content-table-reverse { width: 100% !important;height: auto !important;}
.content-table-reverse tr {display: grid;grid-template-columns: 1fr 1fr;/* grid-template-columns: repeat(auto-fill, minmax(440px, 1fr)); */gap: 1em;height: auto !important;}
.content-table-reverse td {/* font-size:14px; */display: block;width: 100% !important;height: auto !important;}
.content-table-reverse img {max-width: 100%;object-fit: contain;height: auto;}
@media (max-width: 900px) {
    .content-table-reverse tr {grid-template-columns: 1fr;}
    .content-table-reverse td:first-child {order: 2;}
}
@media (max-width: 600px) {
    .content-table-reverse tr {grid-template-columns: 1fr;}
}

/******************************************************************************/

.content-table-4 { width: 100% !important;height: auto !important;}
.content-table-4 tr {display: grid;grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));gap: 1em;height: auto !important;}
.content-table-4 td {/* font-size:14px; */display: block;width: 100% !important;height: auto !important;}
.content-table-4 img {max-width: 100%;object-fit: contain;height: auto;}
@media (max-width: 600px) {
    .content-table-4 tr {grid-template-columns: 1fr;}
}

/******************************************************************************/
.machine-table {font-size: 14px;line-height: 1.5em;width: 100%;}
.machine-table td {position: relative;}
.machine-table td::after {position: absolute;bottom: 0;width: 95%;}
.machine-table td:first-child {text-align: right;padding: .25em calc(2em + 8px) .25em 1em;width: 50%;}
.machine-table td:last-child {color: var(--color-fg-1);}
.machine-table td::after {border-bottom: 1px solid currentColor;content: "";display: block;opacity: .2;}
.machine-table td:first-child::after {margin-left: -1em;margin-right: -2em;}
.machine-table tr:first-child td::before {border-bottom: 1px solid currentColor;content: "";display: block;opacity: .2;width: 95%;position: absolute;top: 0;left: 0;}
@media (max-width: 600px) {
    .machine-table {font-size: 15px;}
}

/******************************************************************************/
/* tlačítka */

.button {
    --color-1: var(--__btn-bg, var(--color-bg-1));
    --color-2: var(--__btn-fg, var(--color-fg-3));
    position: relative;
    display: inline-block;
    text-decoration: none;
    text-align: center;
    isolation: isolate;
    padding: 11px 32px;
    color: var(--color-2);
    appearance: none;
    border: none;
    background: var(--color-1);
    cursor: pointer;
    font-size: 18px;
    line-height: 1;
    min-width: min(100%, 200px);
    transition: .2s background, .2s color;
    box-sizing: border-box;
    font-family: inherit;
    font-weight: 600;
    border-radius: 3rem;
}
.button:hover {
    --color-1: #000;
    --color-2: #fff;
}
.button.button--outline {
    --color-1: var(--__btn-bg, var(--color-bg-1));
    --color-2: var(--__btn-fg, #fff);
    border: 1px solid currentColor;
    background: transparent;
    background: var(--color-2);
    color: var(--color-1);
}
.button.button--outline:hover {
    --color-1: var(--__btn-bg-hover, #000);
    --color-2: var(--__btn-fg-hover, transparent);
}

.button.button--light {
    --color-1: var(--color-bg-3);
    --color-2: var(--color-fg-1);
}


.button-black { background: #000; color: #fff; }
.button-black:hover { background: #111; }
.button-white { background: #fff; color: #222; }
.button-white:hover { background: #eee; }
.button-yellow { background: var(--yellow); color: #222; }
.button-yellow:hover { background: var(--yellow-hover); }
.button-cta { background: var(--color-cta); }
.button-cta:hover { background: var(--color-cta-hover); }

.button-float-right {float: right;}

/******************************************************************************/
/* tabulka - ceník */

.table-price-list { max-width: 500px; width: 100% !important; }
.table-price-list tr th { background: #777; color: #fff; font-size: small; padding: 0 15px; }
.table-price-list tr th:first-child { text-align: left; }
.table-price-list tr td { padding: 0px 15px; vertical-align: top; }
.table-price-list tr td:first-child { }
.table-price-list tr td:last-child { text-align: right; white-space: nowrap; }
.table-price-list tr:nth-child(even) td { background: #efefef; }
.table-price-list tr:nth-child(odd) td {}

/******************************************************************************/
/* tabulka - o nás */

.table-about-us { width: 100%; }
.table-about-us tr td { padding: 10px 15px; vertical-align: top; width: 100%; }
.table-about-us tr td:first-child { border-right: 1px solid #ddd; width: 25%; }
.table-about-us tr:nth-child(even) td { background: #eee; }
.table-about-us tr:nth-child(odd) td {}

/******************************************************************************/
/* tabulka - otvírací doba */

.table-opening-hours {}
.table-opening-hours tr td { padding: 0 15px; }
.table-opening-hours tr:nth-child(even) td { background: #eee; }
.table-opening-hours tr:nth-child(odd) td {}

/******************************************************************************/
/* tabulka - adresa */

.table-address { width: 100% !important; }
.table-address tr td { overflow: hidden; position: relative; vertical-align: top; }
.table-address iframe { height: 210px; width: 99.99%; }

/******************************************************************************/
/* tabulka - kontakty */

.table-contacts { width: 100% !important; }
.table-contacts tr td { padding: 0 15px 45px 0; vertical-align: top; width: 33.33% !important; }

/******************************************************************************/

.table-block-gray, .table-block-blue {
    --space-inline: 3rem;
    --space-block: 2rem;
    width: calc(100% + var(--space-inline, 0) * 2) !important;
    max-width: calc(100vw + var(--space-inline, 0));
}
.table-block-gray td, .table-block-blue td {
    background: var(--background, transparent);
    color: var(--color, inherit);
    padding-top: var(--space-block, 0);
    padding-bottom: var(--space-block, 0);
    padding-left: var(--space-inline, 0);
    padding-right: var(--space-inline, 0);
    transform: translateX(calc(-1 * var(--space-inline, 0)));
}
.table-block-gray {
    --background: #e9e9e9;
    --color: #182744;
}
.table-block-blue {
    --background: #02428a;
    --color: #ffffff;
}

/*
title {
    font-size: 22px;
    text-transform: uppercase;
    color: #000000;
    font-weight: 700;
    font-family: "STIX Two Text";
}
*/

@media (max-width: 850px) {
    h1, .h1 { font-size: 32px; }
    h2, .h2 { font-size: 24px; }
    h3, .h3 { font-size: 20px; }
    h4, .h4 { font-size: 16px; }
}
@media (max-width: 550px) {
    h1, .h1 { font-size: 28px; }
    h2, .h2 { font-size: 22px; }
    h3, .h3 { font-size: 18px; }
    h4, .h4 { font-size: 16px; }
}