/* 0.1.28 – nezávislé hodiny, nabídka a cílené opravy mobilu/tabletu. */
body .ccm-page header .cp-header-hours { min-width: 0; }
body .ccm-page header .cp-hours-pair { display: block; line-height: 1.45; white-space: nowrap; }
body .ccm-page header .cp-hours-separator { display: none; }
body .ccm-page header .header-top-left { gap: 18px; }
body .ccm-page .cp-hours-contact .cp-hours-cafe-title { margin-top: 24px; }
body .ccm-page .cp-hours-contact table { width: 100%; border-collapse: collapse; }
body .ccm-page .cp-hours-contact th, body .ccm-page .cp-hours-contact td { padding: 11px 13px; border: 1px solid #fff; text-align: left; vertical-align: top; }
body .ccm-page .cp-hours-contact th { width: 42%; background: #f4ede2; }
body .ccm-page .cp-hours-contact td { background: #faf5eb; }
body .ccm-page.page-nabidka .cp-subpage-main .cp-offer-cards { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 32px; }
body .ccm-page.page-nabidka .cp-subpage-main .cp-offer-cards--christmas .box-block:first-child .title { font-size: 32px; white-space: nowrap; }
body .ccm-page.page-nabidka .cp-offer-cards .text1 { text-wrap: balance; }
/* Původní mapa je obrázek uvnitř odkazu, nikoli picture. Vyplní proto celou sekci. */
body .ccm-page.page-template-home .page-content .map .map-image,
body .ccm-page.page-template-home .page-content .map .map-image .ccm-area,
body .ccm-page.page-template-home .page-content .map .map-image .ccm-block,
body .ccm-page.page-template-home .page-content .map .map-image .ccm-block-content,
body .ccm-page.page-template-home .page-content .map .map-image p,
body .ccm-page.page-template-home .page-content .map .map-image a { display: block; height: 100%; width: 100%; margin: 0; }
body .ccm-page.page-template-home .page-content .map .map-image img { display: block; width: 100%; height: 100%; max-width: none; object-fit: cover; object-position: center; }
body .ccm-page.page-template-home .page-content .map .map-content { pointer-events: none; }
body .ccm-page.page-template-home .references .references-content .cp-production-gallery:not([data-count="8"]) { grid-template-columns: repeat(3,minmax(0,1fr)); grid-template-rows: none; grid-template-areas: none; grid-auto-rows: auto; }
body .ccm-page.page-template-home .references .references-content .cp-production-gallery:not([data-count="8"]) figure { grid-area: auto; aspect-ratio: 4/3; }
@media (max-width: 1200px) {
 body .ccm-page header .header-top.header-top-left { padding-top: 12px; padding-bottom: 12px; gap: 6px; }
}
@media (min-width: 601px) and (max-width: 1200px) {
 body .ccm-page.page-template-home .page-content .hero { height: auto; min-height: 0; padding: 24px 0 42px; }
 body .ccm-page.page-template-home .page-content .hero .container { height: auto; }
 body .ccm-page.page-template-home .page-content .hero .container .inner { display: grid; grid-template-columns: minmax(0,.46fr) minmax(0,.54fr); gap: 20px; height: auto; align-items: center; }
 body .ccm-page.page-template-home .page-content .hero .container .inner .hero-content { width: auto; height: auto; min-width: 0; padding: 0; }
 body .ccm-page.page-template-home .page-content .hero .container .inner .hero-slider { width: 100%; height: clamp(250px,34vw,410px); margin: 0; min-width: 0; }
 body .ccm-page.page-template-home .page-content .hero .container .inner .hero-content .hero-text .hero-title * { font-size: clamp(32px,4vw,46px); text-align: left; }
 body .ccm-page.page-template-home .page-content .hero .hero-link { display: flex; justify-content: flex-start; margin-top: 24px; }
 body .ccm-page.page-template-home .page-content .map { height: clamp(380px,50vw,480px); overflow: hidden; }
 body .ccm-page.page-template-home .page-content .map .map-content { padding-top: 24px; }
}
@media (max-width: 900px) {
 body .ccm-page.page-nabidka .cp-subpage-main .cp-offer-cards { grid-template-columns: repeat(2,minmax(0,1fr)); }
 body .ccm-page.page-template-home .references .references-content .cp-production-gallery:not([data-count="8"]) { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 767px) {
 body .ccm-page.page-kontakt .svopa-contact-left .sc-social { margin-top: 26px; padding-bottom: 32px; }
 body .ccm-page.page-kontakt .svopa-contact-left .sc-social a { width: 48px; height: 48px; }
 body .ccm-page.page-kontakt .cp-consent-map { margin-top: 8px; margin-bottom: 32px; }
 body .ccm-page.page-kontakt .cta-zaver-wrapper { margin-top: 32px; margin-bottom: 0; }
 body .ccm-page.page-kontakt .cta-zaver-wrapper .cta-zaver-heading { font-size: 28px; line-height: 1.3; margin-bottom: 28px; }
 body .ccm-page.page-kontakt .cta-zaver-wrapper .cta-zaver-btn { padding: 12px 22px; max-width: 100%; white-space: normal; }
 body .ccm-page.page-kontakt .cp-subpage { padding-bottom: 56px; }
}
@media (max-width: 600px) {
 body .ccm-page.page-template-home .page-content .hero .container,
 body .ccm-page.page-template-home .page-content .hero .container .inner,
 body .ccm-page.page-template-home .page-content .hero .container .inner .hero-content { height: auto; }
 body .ccm-page.page-template-home .page-content .hero .hero-link { display: flex; justify-content: center; }
 body .ccm-page.page-template-home .page-content .hero .container .inner .hero-slider { flex: none; margin: 28px auto 0; }
}
@media (max-width: 500px) {
 body .ccm-page.page-nabidka .cp-subpage-main .cp-offer-cards { grid-template-columns: minmax(0,1fr); }
 body .ccm-page.page-template-home .references .references-content .cp-production-gallery:not([data-count="8"]) { grid-template-columns: minmax(0,1fr); }
}
