/* Společná typografie, text a pomocné formátovací třídy. */
:root {
  --radius-sm: .5rem;
  --radius: 1rem;
  --radius-lg: 1.5rem;
  --max-width: 74rem;
}

body {
  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 1rem;
  line-height: 1.65;
}

a {
  text-underline-offset: .2em;
  text-decoration-thickness: .08em;
}

a:hover {
  text-decoration-thickness: .14em;
}

button,
input {
  font: inherit;
}

h1,
h2,
h3 {
  line-height: 1.1;
}

h1 {
  font-size: clamp(2rem, 3.4vw, 2.7rem);
  letter-spacing: -.03em;
}

h2 {
  font-size: clamp(2rem, 5vw, 3.5rem);
  letter-spacing: -.025em;
}

h3 {
  font-size: 1.35rem;
}

.skip-link {
  font-weight: 700;
}

.brand {
  font-size: 1.35rem;
  font-weight: 800;
  text-decoration: none;
}

.main-menu,
.footer-menu,
.hero-points {
  list-style: none;
}

.main-menu a {
  font-weight: 650;
  text-decoration: none;
}

.menu-toggle {
  font-weight: 700;
}

.eyebrow {
  font-size: .92rem;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.hero-lead {
  font-size: clamp(1.15rem, 2.3vw, 1.4rem);
}

.button {
  font-weight: 800;
  line-height: 1.2;
  text-decoration: none;
}

.text-link {
  font-weight: 750;
}

.hero-points li::before {
  font-weight: 900;
}

.image-placeholder {
  text-align: center;
  font-weight: 800;
}

.card-icon {
  font-weight: 900;
}

.offer-type,
.blog-meta {
  font-size: .9rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .06em;
}

.offer-price {
  font-size: 1.5rem;
  font-weight: 900;
}

.story-text p {
  font-size: 1.08rem;
}

.testimonial::before {
  font-family: Georgia, serif;
  font-size: 6rem;
  line-height: 1;
}

.testimonial figcaption {
  font-weight: 700;
}

label {
  font-weight: 800;
}

.form-note {
  font-size: .88rem;
}

summary {
  font-weight: 800;
}

.footer-bottom {
  font-size: .92rem;
}

.main-menu-module ul,
.main-menu-module .mod-menu,
.main-menu-module .mod-list {
  list-style: none;
}

.main-menu-module a {
  font-weight: 650;
  text-decoration: none;
}

@media (min-width: 62rem) {
.main-menu-module li > ul a {
  white-space: nowrap;
}

}

.osobni-menu {
  font-size: .9rem;
}

.prihl-uziv {
  white-space: nowrap;
}

.osobni-menu .mod-menu {
  list-style: none;
}

:root {
  --mezera: 150px;
}

.cervena-opacity a:hover, .cervena-opacity a:focus {
  text-decoration: underline;
}

.vel-pisma-1 {
  font-size: 2.2em;
}

.vel-pisma-2 {
  font-size: 2em;
}

.vel-pisma-3 {
  font-size: 1.8em;
}

.vel-pisma-4 {
  font-size: 1.5em;
}

.vel-pisma-5 {
  font-size: 1.2em;
}

.vel-pisma-6 {
  font-size: 1.0em;
}

.vel-pisma-7 {
  font-size: 0.8em;
}

.vycentrovat {
  text-align: center;
}

body:is(.template-prodejni, .template-dekovaci, .template-docasny-produkt, .template-landingpage) {
  font-size: 100%;
  font-family: Helvetica, Sans-Serif;
}

:is(.template-prodejni, .template-dekovaci, .template-docasny-produkt, .template-landingpage) main {
  font-size: 1.2rem;
}

:is(.template-prodejni, .template-dekovaci, .template-docasny-produkt, .template-landingpage) p {
  font-size: 1.2rem;
}

:is(.template-prodejni, .template-dekovaci, .template-docasny-produkt, .template-landingpage) .cta {
  text-align: right;
}

:is(.template-prodejni, .template-dekovaci, .template-docasny-produkt, .template-landingpage) H1 {
  line-height: 1.2;
  font-size: 2.2em;
  font-family: Itim, Helvetica, Arial, sans-serif;
}

:is(.template-prodejni, .template-dekovaci, .template-docasny-produkt, .template-landingpage) H2 {
  font-size: 2em;
  line-height: 1.2;
  text-align: center;
  font-family: Itim, Helvetica, Arial, sans-serif;
}

:is(.template-prodejni, .template-dekovaci, .template-docasny-produkt, .template-landingpage) H3 {
  font-weight: normal;
  font-size: 1.8em;
  font-family: Itim, Helvetica, Arial, sans-serif;
}

:is(.template-prodejni, .template-dekovaci, .template-docasny-produkt, .template-landingpage) H4 {
  font-size: 1.2em;
  font-family: Itim, Helvetica, Arial, sans-serif;
}

:is(.template-prodejni, .template-dekovaci, .template-docasny-produkt, .template-landingpage) H5 {
  font-size: 1.2em;
  font-family: Itim, Helvetica, Arial, sans-serif;
}

:is(.template-prodejni, .template-dekovaci, .template-docasny-produkt, .template-landingpage) .vel-pisma-1 {
  font-size: 2.2em;
}

:is(.template-prodejni, .template-dekovaci, .template-docasny-produkt, .template-landingpage) .vel-pisma-2 {
  font-size: 2em;
}

:is(.template-prodejni, .template-dekovaci, .template-docasny-produkt, .template-landingpage) .vel-pisma-3 {
  font-size: 1.8em;
}

:is(.template-prodejni, .template-dekovaci, .template-docasny-produkt, .template-landingpage) .vel-pisma-4 {
  font-size: 1.5em;
}

:is(.template-prodejni, .template-dekovaci, .template-docasny-produkt, .template-landingpage) .vel-pisma-5 {
  font-size: 1.2em;
}

:is(.template-prodejni, .template-dekovaci, .template-docasny-produkt, .template-landingpage) .vel-pisma-6 {
  font-size: 1.0em;
}

:is(.template-prodejni, .template-dekovaci, .template-docasny-produkt, .template-landingpage) .vel-pisma-7 {
  font-size: 0.8em;
}

:is(.template-prodejni, .template-dekovaci, .template-docasny-produkt, .template-landingpage) .vycentrovat {
  text-align: center;
}

:is(.template-prodejni, .template-dekovaci, .template-docasny-produkt, .template-landingpage) .tucne {
  font-weight: bold;
}

:is(.template-prodejni, .template-dekovaci, .template-docasny-produkt, .template-landingpage) a.tlacitko {
  text-align: center;
}

:is(.template-prodejni, .template-dekovaci, .template-docasny-produkt, .template-landingpage) a.tlacitko:hover, :is(.template-prodejni, .template-dekovaci, .template-docasny-produkt, .template-landingpage) .readmore a.tlacitko:focus {
  text-decoration: underline;
}

@media only screen and (max-width: 600px) {
:is(.template-prodejni, .template-dekovaci, .template-docasny-produkt, .template-landingpage) .item-image {
  text-align: center;
}

}

@media only screen and (max-width: 600px) {
:is(.template-prodejni, .template-dekovaci, .template-docasny-produkt, .template-landingpage) blockquote {
  font-style: italic;
}

}

@media only screen and (min-width: 600px) {
:is(.template-prodejni, .template-dekovaci, .template-docasny-produkt, .template-landingpage) blockquote {
  font-style: italic;
}

}

:is(.template-prodejni, .template-dekovaci, .template-docasny-produkt, .template-landingpage) #frm-showUserForm {
  text-align: center;
}

:is(.template-prodejni, .template-dekovaci, .template-docasny-produkt, .template-landingpage) .kapitalky {
  font-variant: small-caps;
}

:is(.template-prodejni, .template-dekovaci, .template-docasny-produkt, .template-landingpage) .odrazky-ukaz {
  list-style-type: "👉";
}

:is(.template-prodejni, .template-dekovaci, .template-docasny-produkt, .template-landingpage) .odrazky-souhlas {
  list-style-type: "👍";
}

:is(.template-prodejni, .template-dekovaci, .template-docasny-produkt, .template-landingpage) .countdown_obal {
  text-align: center;
}

:is(.template-prodejni, .template-dekovaci, .template-docasny-produkt, .template-landingpage) .countdown td {
  text-align: center;
  font-size: 2em;
  font-weight: bold;
}

:is(.template-prodejni, .template-dekovaci, .template-docasny-produkt, .template-landingpage) .countdown .pole .popisek {
  font-size: 0.5em;
}

:is(.template-prodejni, .template-dekovaci, .template-docasny-produkt, .template-landingpage) .countdown_nadpis {
  font-size: 1.8em;
}

:is(.template-prodejni, .template-dekovaci, .template-docasny-produkt, .template-landingpage) blockquote h3 {
  text-align: center;
}

:is(.template-prodejni, .template-dekovaci, .template-docasny-produkt, .template-landingpage) #balicky ul {
  list-style-type: none;
}

:is(.template-prodejni, .template-dekovaci, .template-docasny-produkt, .template-landingpage) #balicky a.tlacitko-sec {
  text-align: center;
  text-decoration: none;
}

:is(.template-prodejni, .template-dekovaci, .template-docasny-produkt, .template-landingpage) #balicky a.tlacitko-prim {
  text-align: center;
  text-decoration: none;
}

:is(.template-prodejni, .template-dekovaci, .template-docasny-produkt, .template-landingpage) #balicky .s-tlacitkem {
  text-align: center;
}

:is(.template-prodejni, .template-dekovaci, .template-docasny-produkt, .template-landingpage) .medailon-prodej__foto {
  text-align: center;
}

.template-prodejni h1,
.template-prodejni h2 {
  text-align: center;
}

.template-dekovaci h1,
.template-dekovaci h2 {
  text-align: center;
}

.template-docasny-produkt h1,
.template-docasny-produkt h2 {
  text-align: center;
}

.template-landingpage h1,
.template-landingpage h2 {
  text-align: center;
}

.web-content .hudebniste-blog-item__title {
  font-size: clamp(1.35rem, 2.2vw, 1.75rem);
  line-height: 1.2;
}

.web-content .com-content-article .page-header h1 {
  font-size: clamp(2rem, 3.4vw, 2.7rem);
  line-height: 1.12;
}

.nejcl {
  list-style: none;
}

/* =========================================
   PŘIHLAŠOVACÍ FORMULÁŘ JOOMLA
   ========================================= */

/* Celková šířka formuláře */
.com-users-login__form {
    max-width: 500px;
    margin-top: 2rem;
}

/* Odstranění výchozího odsazení fieldsetu */
.com-users-login__form fieldset {
    border: 0;
    padding: 0;
    margin: 0;
    min-width: 0;
}

/* Větší mezery mezi jednotlivými poli */
.com-users-login__form .control-group {
    margin-bottom: 1.5rem;
}

/* Popisky polí */
.com-users-login__form .control-label {
    margin-bottom: 0.5rem;
}

.com-users-login__form .control-label label {
    display: block;
    font-weight: 600;
}

/* Textová pole */
.com-users-login__form input[type="text"],
.com-users-login__form input[type="password"] {
    box-sizing: border-box;
    width: 100%;
    min-height: 44px;
    padding: 0.65rem 0.85rem;
    border: 1px solid;
    border-radius: 6px;
    font: inherit;
}

/* Heslo a tlačítko pro jeho zobrazení */
.com-users-login__form .input-group {
    display: flex;
    align-items: stretch;
}

.com-users-login__form .input-group input {
    flex: 1;
    min-width: 0;
}

.com-users-login__form .input-password-toggle {
    flex-shrink: 0;
    min-width: 44px;
}

/* Zaškrtávací pole Pamatuj si mě */
.com-users-login__remember {
    margin: 1.75rem 0;
}

.com-users-login__remember .form-check {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0;
}

.com-users-login__remember .form-check-input {
    position: static;
    flex-shrink: 0;
    width: 20px;
    height: 20px;
    margin: 0;
    cursor: pointer;
}

.com-users-login__remember .form-check-label {
    display: inline-block;
    margin: 0;
    padding: 0;
    cursor: pointer;
}

/* Odesílací tlačítko */
.com-users-login__submit {
    margin-top: 1.75rem;
}

.com-users-login__form .btn {
    min-height: 44px;
    padding: 0.7rem 1.4rem;
    border: 1px solid;
    border-radius: 6px;
    font: inherit;
    font-weight: 600;
    cursor: pointer;
}

/* Odkazy pod formulářem */
.com-users-login__options {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem 1.5rem;
    margin-top: 1.5rem;
}

