/*
 Theme Name:   GeneratePress Child
 Theme URI:    https://generatepress.com
 Description:  Default GeneratePress child theme
 Author:       Tom Usborne
 Author URI:   https://tomusborne.com
 Template:     generatepress
 Version:      0.1
*/

html,
body {overflow-x:hidden; display:initial;}
p:empty {display:none;}

h1,
h1 *,
.h1,
.h1 * {font-size: 3.815rem !important}
h2,
h2 *,
.h2,
.h2 * {font-size: 3.052rem !important; line-height:1.4 !important;}
h3,
h3 *,
.h3,
.h3 * {font-size: 2.441rem !important}
h4,
h4 *,
.h4,
.h4 *,
.h4 a {font-size: 1.953rem !important}
h5,
h5 *,
.h5,
.h5 * {font-size: 1.563rem !important}
h6,
h6 *,
.h6,
.h6 * {font-size: 1.25rem !important}

.italica,
.italica * {font-style:italic !important}

.stk-block-button > a > .stk-button__inner-text {font-weight:600}
.stk-block-button.is-style-link .stk-link.stk-button {text-decoration-color:black;}
.stk-block-button.is-style-link .stk-link.stk-button:hover {text-decoration-color:var(--accent);}
.stk-block-button.is-style-link .stk-link.stk-button .stk-button__inner-text {color:black !important}
.stk-block-button.is-style-link .stk-link.stk-button:hover .stk-button__inner-text {color:var(--accent) !important}
.stk-block-button.btn-sipka > a.stk-link.stk-button {padding:12px !important}
.stk-block-button.btn-sipka > a.stk-link.stk-button > .stk-button__inner-text {display: flex; width: 20px; aspect-ratio: 1 / 1; justify-content: center; align-items: center;}


.opacita07 {opacity:0.7}

.blok-countup.stk-block-count-up > .stk-block-count-up__text {font-size: 48px !important; font-weight: 600 !important;}
.blok-nadpis-mensi.stk-block-heading > .stk-block-heading__text {font-size: 24px !important; font-weight: 600 !important;}
.blok-citace.stk-block-blockquote .stk-block-text p {font-size: 1.5rem !important; font-style:normal !important;}
.blok-nadpis-maly.stk-block-text > p {color: var(--contrast-3) !important; font-size:14px !important; letter-spacing:0 !important; text-transform:uppercase !important;}
.blok-sloupce-header.stk-block-columns > .stk-row > .stk-block-column {align-self: stretch !important; /*background-color: var(--base-3) !important;*/ border-top-left-radius: 12px !important; border-top-right-radius: 12px !important; border-bottom-right-radius: 12px !important; border-bottom-left-radius: 12px !important; overflow: hidden !important; box-shadow: 7px 5px 30px #48497927 !important; padding-top: 3em !important; padding-right: 3em !important; padding-bottom: 3em !important; padding-left: 3em !important; --entrance-transform: translateY(100px) !important;}
.blok-sloupce-header.stk-block-columns > .stk-row > .stk-block-column .stk-block-heading {border-style: solid !important; border-color: var(--contrast-3) !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 1px !important; border-left-width: 0px !important; padding-top: 0em !important; padding-right: 0em !important; padding-bottom: 1em !important; padding-left: 0em !important;}
.blok-txt-onas.stk-block-text p:nth-of-type(even) {opacity:.5;}
.home .stk-block-columns#header::before {content:"" !important; position:absolute; top:0; right:0; bottom:0; left:0; background:white; opacity:0.8;}

.blok-skupina {flex-grow:30}
.blok-skupina .wp-block-group__inner-container {padding:0;}
.site-main .wp-block-group__inner-container {padding:0;}

#skupina-01 {z-index:1; position:relative; padding-left:0px;}
#skupina-02 {z-index:2; position:relative; padding-left:0px;}
#skupina-03 {z-index:3; position:relative; padding-left:0px; padding-bottom:0 !important}
.skupina-pro-rotaci {padding-top:10em; padding-bottom: 10em;}
.skupina-pro-rotaci .rotace {top: -1px !important; width: fit-content !important; z-index:10}
/*.skupina-pro-rotaci .rotace::before {transform: rotate(-90deg); transform-style: unset; transform-origin: bottom left; width: 330px; top: 310px; margin-bottom: 0; display: block; text-align: center; left: 34px; padding: 3px 0; position: absolute; background: rgba(0, 0, 0, .1); opacity: 1; white-space: nowrap; background: rgb(255,255,255); color: var(--accent); margin-top: 60px; transition: all 1s ease; opacity:1; font-size:12px; font-weight:600;}*/
.skupina-pro-rotaci .rotace::before {transform: rotate(90deg); transform-style: unset; transform-origin: top left; width: 330px; top: 100px; margin-bottom: 0; display: block; text-align: left; left: calc(100vw - 20px); padding: 3px 0; position: absolute; background: rgba(0, 0, 0, .1); opacity: 1; white-space: nowrap; background: rgb(255, 255, 255); color: var(--accent); margin-top: 0px; transition: all 1s ease; opacity: 1; font-size: 16px; font-weight: 600;}


.ul-cisla ul {display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%/2, max(240px, 100%/5)), 1fr)); list-style: none; margin-left: 0; grid-gap: 70px; font-size: 1rem; margin-top:3rem; margin-bottom:2rem; margin-left: 1.5em;}
.ul-cisla ul > li {padding: 1.5em; border-radius: 10px; position: relative; display: block; box-shadow: 0 0 30px rgba(0, 0, 0, 0.04); z-index: 1; padding-left: 5em; text-align: left;}
.ul-cisla ul > li::before {content: "1"; font-size: 4rem; color: white; position: absolute; font-weight: 700; left: -1.6rem; top: -2rem; /* opacity: 0.4; */ aspect-ratio: 1 / 1; display: flex; background: var(--base); line-height: 1; width: 5rem; height: 5rem; justify-content: center; align-items: center; border-radius: 0; z-index: -1; box-shadow: 0 0 30px rgba(0, 0, 0, 0.04);}
.ul-cisla ul > li:nth-of-type(2)::before {content: "2";}
.ul-cisla ul > li:nth-of-type(3)::before {content: "3";}
.ul-cisla ul > li:nth-of-type(4)::before {content: "4";}
.ul-cisla ul > li:nth-of-type(5)::before {content: "5";}
.ul-cisla ul > li:nth-of-type(6)::before {content: "6";}
.ul-cisla ul > li:nth-of-type(7)::before {content: "7";}
.ul-cisla ul > li:nth-of-type(8)::before {content: "8";}
.ul-cisla ul > li:nth-of-type(9)::before {content: "9";}
.ul-cisla ul > li > :last-child {margin-bottom:0;}
.ul-cisla ul > li > strong {font-weight: 700 !important; margin-bottom: 0.5em !important;}
.ul-cisla.tick {font-weight:400; grid-template-columns: repeat(auto-fit, minmax(min(100% / 2, max(300px, 100% / 5)), 1fr)); padding-left: 1.5em; font-size:1rem;}
.ul-cisla.tick > li::before {content: "\2713"; font-size: 2rem; width: 3rem; height: 3rem; left: -1.5rem; top: -1.5rem;}
#blok-jak-pracujeme > .stk-row {display:grid; grid-template-columns:calc(55% - 40px) calc(45% - 40px); grid-gap:80px;}
#blok-jak-pracujeme > .stk-row > :nth-child(1) {grid-area:1/1/span 1/span 1;}
#blok-jak-pracujeme > .stk-row > :nth-child(2) {grid-area:1/2/span 1/span 1;}
#blok-jak-pracujeme > .stk-row > :nth-child(3) {grid-area:2/1/span 1/span 2;}
.ul-plus ul,
.ul-sipka ul {margin-left:0; list-style:none; font-size:24px; font-weight:600; line-height:1.75}
.ul-plus ul > li,
.ul-sipka ul > li {display: flex; align-items: flex-start; padding-top: 3px; margin-bottom:1rem;}
.ul-plus ul > li:last-of-type,
.ul-sipka ul > li:last-of-type {margin-bottom:2rem;}
.ul-plus ul > li::before,
.ul-sipka ul > li::before {content: "+"; color: var(--accent); font-weight: bold; font-size: 160%; display: inline-block; margin-right: 10px; line-height: 1; margin-top: -2px;}
.ul-sipka ul > li::before {content: "\27F6"; margin-top: -6px; color: black; width: 24px; text-align: right; overflow: hidden; display: flex; justify-content: flex-end; min-width: 24px; max-width: 24px;}
.ul-sipka p,
.ul-plus p {/*opacity:.7;*/ /*font-weight:600;*/}
.ul-prazdny-ram ul {display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100% / 2, max(240px, 100% / 5)), 1fr)); list-style: none; grid-gap: 70px; font-size: 1rem; margin-top: 0rem; margin-bottom: 2rem; margin-left: 0em;}
.ul-plus ul {margin-left:0;}
.ul-plus ul li {display: flex; justify-content: flex-start; align-items: flex-start; gap:0px; line-height:1.5; flex-wrap:wrap; position:relative; padding-left: 2.5em; font-size:1rem; font-weight:400; text-align: left;}
.ul-plus ul li::before {content: "+ "; font-size: 42px; font-weight: 700; color: var(--accent); line-height: 0.7; display: inline-flex; align-items: flex-start; position: absolute; top: 4px; left: 0;}
.ul-prazdny-ram ul strong,
.ul-plus ul li strong,
.ul-cisla ul li strong {font-size: 24px; margin-bottom: 0.5rem; display: inline-block; font-weight:600; line-height:1.3; width:100%; text-align: left;}

.stk-block-columns.bile-bloky::before {background: linear-gradient(180deg, rgba(255, 255, 255, 0.6) 80%, white 80%) !important; opacity: 1 !important;}

/* */
/* */
/* REFERENCE LOGA */
[id*="wpv-view-layout-196"] {grid-template-columns: repeat(80, 1fr); grid-row-gap: 60px; display: grid; grid-column-gap: 0px; justify-items: center; align-items: center; margin-bottom:4em !important;}
[id*="wpv-view-layout-196"] > div {padding:0 2em;}
[id*="wpv-view-layout-196"] > div.normal {grid-area: auto / auto / span 1 / span 16; padding-top: 3em; margin-bottom: -3em; padding-left: 1.5em; padding-right: 1.5em;}
[id*="wpv-view-layout-196"] > div.ano-zobrazit-na-homepage {grid-area:auto/auto/span 1/span 20;}
[id*="wpv-view-layout-196"] > :nth-child(1 of .normal) {grid-column-start: 1;}
[id*="wpv-view-layout-196"] img {max-height:100px; filter: grayscale(1); transition:all .3s ease;}
[id*="wpv-view-layout-196"] img:hover {filter: grayscale(0); transition:all .3s ease;}
[id*="wpv-view-layout-196"] .normal img {max-height:50px;}
[name*="wpv-filter-196"] {margin-bottom:2em;}
.home [name*="wpv-filter-196"] {display:none}

/* */
/* */
/* REFERENCE TEXTY */
[id*="wpv-view-layout-271"] h6::before,
[id*="wpv-view-layout-337"] h6::before {content:"„"}
[id*="wpv-view-layout-271"] h6::after,
[id*="wpv-view-layout-337"] h6::after {content:"“";}
[id*="wpv-view-layout-271"] :nth-child(2 of .stk-block-text) p::before,
[id*="wpv-view-layout-337"] :nth-child(2 of .stk-block-text) p::before {content:"– "}
[id*="wpv-view-layout-271"] p,
[id*="wpv-view-layout-337"] p,
[id*="wpv-view-layout-271"] .stk-block-text,
[id*="wpv-view-layout-337"] .stk-block-text {margin-bottom:0}
[id*="wpv-view-layout-337"] {display: grid; grid-template-columns: 1fr 1fr; grid-column-gap: 90px; grid-row-gap:30px; margin-left: -250px; background: white; padding: 3em;}
[name*="wpv-filter-337"] .form-group {margin-bottom: 0em; margin-left: -250px;}
.vypis-co-delame [id*="wpv-view-layout-337"] {margin-left:0; grid-template-columns:1fr; padding:0; margin-top:2rem}
.vypis-co-delame [name*="wpv-filter-337"] .form-group {display:none;}
.vypis-co-delame [id*="wpv-view-layout-337"] > div {border:1px solid var(--contrast-3); border-radius:10px; padding:2em;}
.pagination.pagination-dots {margin-top:2em;}
.pagination.pagination-dots .wpv_page_current a,
.pagination.pagination-dots a:hover {background-color:var(--accent); border-color:var(--accent)}
#reference-text-drzak {text-align:center; margin-bottom:1em;}
#reference-text-drzak > div,
#reference-text-drzak > form {max-width: 800px; margin-left: auto; margin-right: auto; width: 80% !important; float: none !important;}
.stk-block-columns.vypis-co-delame .stk-block-heading h6 {display:flex; flex-direction:column;}
.stk-block-columns.vypis-co-delame .stk-block-heading.vypis-co-delame-polozky h6 > span {display: flex; gap: 10px; line-height: 1.3; margin-bottom: 10px;}
.stk-block-columns.vypis-co-delame .stk-block-heading.vypis-co-delame-polozky h6 > span .vypis-co-delame-znameko {color:var(--accent);}

.js-wpv-dps-spinner.cekam {display: flex; position: fixed; background: rgba(255, 255, 255, 0.95); top: 0; right: 0; bottom: 0; left: 0; justify-content: center; align-items: center; z-index: 10000000; flex-direction: column;}
.wpv-pagination-nav-links-container .page-link,
.pagination-dots .active-dot a {border-color: var(--contrast-2); background-color: white;}
.wpv-pagination-nav-links-container .page-link:hover {background-color:var(--accent) !important;}

/* */
/* */
/* PRIPADOVE STUDIE */
[id*="wpv-view-layout-251"] {display:grid; grid-template-columns:repeat(3,1fr); grid-gap:30px; /*margin-left: calc(-100vw / 2 + 100% / 2); margin-right: calc(-100vw / 2 + 100% / 2); max-width: 100vw; width: auto;*/ max-width:var(--stk-block-width-default-detected); margin:0 auto;}
.home [id*="wpv-view-layout-251"] {/*border-left:50px solid white; border-right:50px solid white;*/}
[id*="wpv-view-layout-251"] > a {grid-area:auto/auto/span 1/span 1; aspect-ratio:16/10; text-decoration:none; color:black; filter:grayscale(1); position:relative; transition:all 0.5s ease;}
[id*="wpv-view-layout-251"] > a:hover {filter:grayscale(0); transition:all 0.5s ease;}
[id*="wpv-view-layout-251"] > a::after {content:"+"; font-size:5rem; color:var(--accent); position:absolute; top:0; right:0; bottom:0; left:0; background-color:rgba(0,0,0,.7); display:flex; justify-content:center; align-items:center; opacity:0; transition:all 0.5s ease;}
[id*="wpv-view-layout-251"] > a:hover::after {opacity:1; transition:all 0.5s ease;}
[id*="wpv-view-layout-251"] > a:nth-child(2),
[id*="wpv-view-layout-251"] > a:nth-child(7n) {grid-area:auto/2/span 2/span 1; aspect-ratio:auto;}
[id*="wpv-view-layout-251"] .stk-block-heading {background-color:transparent !important; margin-bottom:-5px !important; max-width:75% !important}
[id*="wpv-view-layout-251"] .stk-block-heading .stk-block-heading__text {background: #fff/* none repeat scroll 0 0*/; /*box-decoration-break: clone;*/ display: /*inline*/ block; padding: 5px 8px 0 0;/*padding-right: 8px; padding-left:0;*/}
.filtrovani {display:flex; gap:30px; flex-wrap:wrap; margin-bottom:2em;}
.home .filtrovani {display:none;}

.single-project [rel="prev"],
.single-project [rel="next"] {font-size:1.1rem; display:flex; text-decoration:none; align-items:flex-start;}
.single-project [rel="prev"]::before,
.single-project [rel="next"]::after {content: "\27F6"; margin-top: -9px; display: inline-flex; justify-content: center; position: relative; text-decoration: none !important; margin-right: 10px; font-size:140%; text-decoration-style:none; color:black !important}
.single-project [rel="prev"]::before {transform:rotate(180deg); margin-top:0px;}
.single-project [rel="next"]::after {margin-right:0; margin-left:10px;}
.single-project.is-latest-project .entry-content > :nth-last-child(1 of .stk-block-columns) > .stk-row > :nth-child(2),
.single-project.is-oldest-project .entry-content > :nth-last-child(1 of .stk-block-columns) > .stk-row > :nth-child(1) {display:none;}

/* */
/* */
/* CF7 */
.wpcf7 input[type="text"],
.wpcf7 input[type="email"],
.wpcf7 input[type="url"],
.wpcf7 input[type="password"],
.wpcf7 input[type="search"],
.wpcf7 input[type="tel"],
.wpcf7 input[type="number"],
.wpcf7 textarea,
.wpcf7 select {color: var(--contrast); background-color: white; border-color: transparent; border-bottom: 1px solid var(--contrast-3); padding: 10px; margin-bottom: 2em; width: 100%;}
.wpcf7 input[type="text"]:focus,
.wpcf7 input[type="email"]:focus,
.wpcf7 input[type="url"]:focus,
.wpcf7 input[type="password"]:focus,
.wpcf7 input[type="search"]:focus,
.wpcf7 input[type="tel"]:focus,
.wpcf7 input[type="number"]:focus,
.wpcf7 textarea:focus {background-color:var(--base-2)}
.wpcf7-checkbox .wpcf7-list-item,
.wpcf7-acceptance .wpcf7-list-item {margin:0}
.wpcf7-checkbox .wpcf7-list-item label,
.wpcf7-acceptance .wpcf7-list-item label {display:grid; grid-template-columns:30px 1fr; grid-gap:0px; align-items:center;}
.wpcf7-checkbox .wpcf7-list-item label input,
.wpcf7-acceptance .wpcf7-list-item label input {display:block; margin:0; width:20px; height:20px;}
.wpcf7-checkbox .wpcf7-list-item label .wpcf7-list-item-label {font-size:1.1rem;}
.wpcf7 .poznamka {margin-left:30px; display: block; font-style:italic; font-size:12px;}
.wpcf7-form a {color:black;}
.wpcf7 .wpcf7-submit:disabled {opacity:0.2;}
.wpcf7-not-valid-tip {background-color: #dc3232; font-size: 1em; font-weight: normal; display: inline-block; color: white; padding: 5px 10px; margin-bottom: 1rem; margin-top: -1em; position:relative;}
.wpcf7-not-valid-tip::before {content: ""; width: 0px; height: 0px; border-style: solid; border-width: 0 15px 15px 15px; border-color: transparent transparent #dc3232 transparent; transform: rotate(0deg); position: absolute; top: -12px; left: 5px;}


/* */
/* */
/* FOOTER */
.site-footer {z-index: 10; position: relative; background: white;}
.site-footer [id*="footer-ikona-"] > .stk-row {flex-wrap: nowrap !important; flex-direction: row !important;}
.site-footer nav ul > li:nth-last-of-type(2) {margin-top:50px;}


/* */
/* */
/* CO MENINME */
.page-id-1402 [id*="wpv-view-layout-251"] {max-width:var(--stk-block-width-default-detected); margin:0 auto;}
.wp-block-navigation .wp-block-navigation-item__content.wp-block-navigation-item__content {text-decoration: underline; text-underline-offset: 5px;}
.wp-block-navigation .wp-block-navigation-item__content.wp-block-navigation-item__content:hover {text-decoration: none; color:var(--accent);}


/* */
/* */
/* O NAS */
#text-pod-logy {text-align:center; margin-top:2em;}

@media screen and (max-width:1400px) {
	.inside-header.grid-container {padding-left:2em;}
	.one-container .container,
	.site-footer {padding:0 2em;}
	.stk-block-columns#header .stk-block-heading,
	.stk-block-columns#header .stk-block-text {max-width:60% !important;}
	.stk-block-columns#header .stk-block-columns .stk-block-heading,
	.stk-block-columns#header .stk-block-columns .stk-block-text {max-width:100% !important;}
}











/*
 * ============================================================
 *  responsive-1024.css
 *  Responsivní úpravy pro olivova.hd-production.cz
 *  Breakpoint: max-width 1024px
 *
 *  Tento soubor přepisuje / doplňuje výchozí desktop CSS
 *  a zahrnuje všechny stránky:
 *    - / (homepage)
 *    - /o-nas/
 *    - /co-delame/
 *    - /co-menime/
 *    - /project/z-45-fluktuace-na-stabilni-provoz-za-6-tydnu/
 *
 *  Zdrojové CSS soubory:
 *    - generatepress/assets/css/main.min.css
 *    - generatepress_child/style.css
 *    - stackable/frontend_blocks.css
 *    - stackable/frontend_blocks_responsive.css
 * ============================================================
 */

@media screen and (max-width: 1024px) {

  /* ============================================================
     1. LAYOUT – GeneratePress kontejner a obsah
     ============================================================ */

  /* Zúžení vnitřního paddingu hlavičky a footeru */
  .inside-header.grid-container {
    padding-left: 1.5em;
    padding-right: 1.5em;
  }

  .one-container .container,
  .site-footer {
    padding-left: 1.5em;
    padding-right: 1.5em;
  }

  /* Obsah stránky – zmenšení bočního paddingu */
  .one-container .site-content {
    padding: 30px 1.5em;
  }

  /* Grid kontejner – šířka na 100 % bez pevného max-width 1200px */
  .grid-container {
    max-width: 100%;
    padding-left: 1.5em;
    padding-right: 1.5em;
  }


  /* ============================================================
     2. TYPOGRAFIE – child theme (modular scale)
     Existující hodnoty v child/style.css na @1024px jsou správné,
     tento blok je zachovává a doplňuje chybějící selektory.
     ============================================================ */

  h1,
  h1 *,
  .h1,
  .h1 * {
    font-size: 2.986rem !important;
  }

  h2,
  h2 *,
  .h2,
  .h2 * {
    font-size: 2.488rem !important;
    line-height: 1.4 !important;
  }

  h3,
  h3 *,
  .h3,
  .h3 * {
    font-size: 2.074rem !important;
  }

  h4,
  h4 *,
  .h4,
  .h4 *,
  .h4 a {
    font-size: 1.728rem !important;
  }

  h5,
  h5 *,
  .h5,
  .h5 * {
    font-size: 1.44rem !important;
  }

  h6,
  h6 *,
  .h6,
  .h6 * {
    font-size: 1.2rem !important;
  }

  /* Počítadla a menší nadpisy (custom Stackable třídy) */
  .blok-countup.stk-block-count-up > .stk-block-count-up__text {
    font-size: 36px !important;
  }

  /*.blok-nadpis-mensi.stk-block-heading > .stk-block-heading__text {
    font-size: 20px !important;
  }*/

  .blok-citace.stk-block-blockquote .stk-block-text p {
    font-size: 1.25rem !important;
  }


  /* ============================================================
     3. NAVIGACE – mobilní přepínač
     ============================================================ */

  /* Na tabletech zobrazíme mobilní toggle */
  .mobile-menu-control-wrapper {
    display: flex;
  }

  /* Skryjeme klasické horizontální menu */
  /*#site-navigation:not(.toggled) .main-nav {
    display: none;
  }*/

  /* Navigace – logo v hlavičce nesmí přetékat */
  .site-branding-container {
    max-width: calc(100% - 80px);
  }

  .site-logo img {
    max-height: 50px;
    width: auto;
  }


  /* ============================================================
     4. STACKABLE BLOKY – sloupce a řádky
     frontend_blocks_responsive.css již řeší max-width:1023px
     (Stackable používá 1023, ne 1024).
     Zde doplňujeme přechod pro 1024px a specifické layouty webu.
     ============================================================ */

  /* Obecné Stackable sloupce – přechod na 2 sloupce */
  .stk-row {
    flex-wrap: wrap;
  }

  /* Dva sloupce vedle sebe – 50 % */
  /*.stk-row > .stk-block-column {
    flex: 1 1 calc(50% - var(--stk-column-gap, 0px));
    max-width: calc(50% - var(--stk-column-gap, 0px));
  }*/

  /* Tři a více sloupců – přejde na 2 sloupce */
  .stk-row.stk-columns-3 > .stk-column,
  .stk-row.stk-columns-4 > .stk-column,
  .stk-row.stk-columns-5 > .stk-column,
  .stk-row.stk-columns-6 > .stk-column {
    flex: 1 1 calc(50% - var(--stk-column-gap, 0px) / 2);
    max-width: calc(50% - var(--stk-column-gap, 0px) / 2);
  }

  /* Kontejner padding se mírně snižuje */
  :root {
    --stk-container-padding: 24px;
    --stk-container-padding-large: 40px 48px;
    --stk-block-margin-bottom: 20px;
    --stk-column-margin: 10px;
    --stk-columns-column-gap: 20px;
  }


  /* ============================================================
     5. HOMEPAGE – hero sekce a speciální bloky
     ============================================================ */

  /* Hero sekce #header – sloupce pod sebou */
  .home .stk-block-columns#header > .stk-block-content {
    flex-direction: column;
  }

  .home .stk-block-columns#header > .stk-block-content > .stk-block-column {
    flex: 1 1 100%;
    max-width: 100%;
  }

  /* Rotační popisek – schovat na tabletech, kde by přetékal */
  /*.skupina-pro-rotaci .rotace::before {
    display: none;
  }

  .skupina-pro-rotaci {
    padding-top: 5em;
    padding-bottom: 5em;
  }*/

  /* Skupiny pro pozadí – zmenšení paddingů */
  #skupina-01,
  #skupina-02,
  #skupina-03 {
    padding-left: 0 !important;
  }


  /* ============================================================
     6. SEKCE „Jak pracujeme" (#blok-jak-pracujeme)
     V child/style.css již je @1024px definice:
       grid-template-columns: calc(85% - 40px) calc(15% - 40px)
     Přepíšeme na plný 1 sloupec, protože 15% je příliš úzké.
     ============================================================ */

  #blok-jak-pracujeme > .stk-row {
    display: flex;
    flex-direction: column;
    grid-template-columns: 1fr !important;
    gap: 40px !important;
  }

  #blok-jak-pracujeme > .stk-row > :nth-child(1),
  #blok-jak-pracujeme > .stk-row > :nth-child(2),
  #blok-jak-pracujeme > .stk-row > :nth-child(3) {
    grid-area: auto !important;
    width: 100%;
  }

  /* Ozdobný obrázek v 2. sloupci – schovat */
  #blok-jak-pracujeme > .stk-row > :nth-child(2) {
    display: none;
  }


  /* ============================================================
     7. REFERENCE – loga (wpv-view-layout-196)
     child/style.css: @1024px → .page: 4 sloupce
     Doplňujeme homepage variantu.
     ============================================================ */

 	.home [id*="wpv-view-layout-196"] {grid-template-columns: repeat(4, 1fr);}
	.home [id*="wpv-view-layout-196"] > div.ano-zobrazit-na-homepage {grid-area: auto / auto / span 1 / span 1;}



  /* ============================================================
     8. REFERENCE – texty (wpv-view-layout-337)
     Výchozí: margin-left: -250px; grid: 1fr 1fr; gap: 90px
     Na 1024px: zrušíme negativní margin, zúžíme gap
     ============================================================ */

  [id*="wpv-view-layout-337"] {
    margin-left: 0 !important;
    grid-template-columns: 1fr;
    grid-column-gap: 0;
    grid-row-gap: 30px;
    padding: 2em;
  }

  [name*="wpv-filter-337"] .form-group {
    margin-left: 0 !important;
  }

  #reference-text-drzak > div,
  #reference-text-drzak > form {
    width: 100% !important;
    max-width: 100%;
  }




  /* ============================================================
     9. PŘÍPADOVÉ STUDIE – grid (wpv-view-layout-251)
     child/style.css: @1024px → 2 sloupce ✓ (zůstává)
     Přidáváme padding a aspect-ratio korekce.
     ============================================================ */

  [id*="wpv-view-layout-251"] {
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 20px;
  }

  [id*="wpv-view-layout-251"] > a:nth-child(2),
  [id*="wpv-view-layout-251"] > a:nth-child(7n) {
    grid-area: auto !important;
    aspect-ratio: 16 / 10;
  }

  [id*="wpv-view-layout-251"] .stk-block-heading {
    max-width: 85% !important;
  }


  /* ============================================================
     10. ČÍSELNÉ LISTY (.ul-cisla)
     Výchozí: auto-fit, min 240px nebo 100%/5 → přejde na 2 sloupce
     ============================================================ */

  .ul-cisla ul {
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 40px;
  }


  /* ============================================================
     11. TABULKY POROVNÁNÍ (Interim vs Konzultant, Mediace vs Soud)
     Stackable columns na stránce co-delame – přechod na 1 sloupec
     ============================================================ */

  /* Blok-sloupce s class .blok-sloupce-header */
  .blok-sloupce-header.stk-block-columns > .stk-row > .stk-block-column {
    padding-top: 2em !important;
    padding-right: 2em !important;
    padding-bottom: 2em !important;
    padding-left: 2em !important;
  }


  /* ============================================================
     12. FORMULÁŘ CF7
     ============================================================ */

  .wpcf7 input[type="text"],
  .wpcf7 input[type="email"],
  .wpcf7 input[type="tel"],
  .wpcf7 textarea {
    font-size: 16px; /* zamezí auto-zoom na iOS */
  }


  /* ============================================================
     13. FOOTER
     ============================================================ */

  .site-footer .grid-container {
    padding-left: 1.5em;
    padding-right: 1.5em;
  }

  /* Footer Stackable sloupce – pod sebou */
  .site-footer .stk-row {
    flex-direction: column;
    gap: 30px;
  }

  .site-footer .stk-block-column {
    flex: 1 1 100% !important;
    max-width: 100% !important;
  }

  /* Footer navigace – zarovnání na střed */
  .site-footer .wp-block-navigation {
    justify-content: center;
    flex-wrap: wrap;
    gap: 10px;
  }

  .inside-site-info {
    padding: 15px 1.5em;
    flex-direction: column;
    gap: 10px;
    text-align: center;
  }


  /* ============================================================
     14. NAVIGACE V ZÁHLAVÍ – branding (gp-premium)
     ============================================================ */

  .site-header .site-branding-container {
    flex-shrink: 1;
  }

  /* Skryjeme text pod logem pokud viewport nestačí */
  .site-header .site-description {
    display: none;
  }


  /* ============================================================
     15. SINGLE PROJECT stránka
     ============================================================ */

  .single-project .stk-block-columns > .stk-block-content {
    flex-direction: column;
  }

  .single-project .stk-block-columns > .stk-block-content > .stk-block-column {
    flex: 1 1 100%;
    max-width: 100%;
  }

  /* Navigace předchozí / následující studie */
  .single-project [rel="prev"],
  .single-project [rel="next"] {
    font-size: 1rem;
  }


  /* ============================================================
     16. FILTROVANI (co-menime stránka)
     ============================================================ */

  .filtrovani {
    gap: 15px;
  }

  .filtrovani .stk-block-button {
    flex: 0 0 auto;
  }


  /* ============================================================
     17. STACKABLE – vypnutí .stk-row nowrap
     (frontend_blocks_responsive.css aktivuje nowrap od min-width:1024px,
     my ho na přesně 1024px chceme stále jako wrap)
     ============================================================ */

  .stk-row {
    flex-wrap: wrap !important;
  }

  /* Výjimka – horizontální layout bloků (feature, icon-label) */
  .stk-block-feature > * > .stk-row,
  .stk-block-icon-label .stk-row {
    flex-wrap: nowrap !important;
  }


  /* ============================================================
     18. TOOLSET VIEWS – spinner a loading
     ============================================================ */

  .js-wpv-dps-spinner.cekam {
    padding: 2em;
  }


  /* ============================================================
     19. OBRÁZKY – obecné
     ============================================================ */

  img {
    max-width: 100%;
    height: auto;
  }

  .stk-img-wrapper {
    width: 100%;
  }


  /* ============================================================
     20. GENERATEPRESS – tablet media query korekce
     GeneratePress main.min.css má breakpoint 768px pro flex-direction.
     Na 1024px doplňujeme přechody pro header.
     ============================================================ */

  /* Header – logo a navigace */
  .has-inline-mobile-toggle .inside-header {
    flex-wrap: wrap;
    gap: 15px;
  }

  /* Nav float right – na tabletu zůstane logo vlevo, toggle vpravo */
  .nav-float-right .mobile-menu-control-wrapper {
    display: flex;
    margin-left: auto;
  }

	.stk-block-columns#blok-zmena {aspect-ratio:auto !important; background-position: 35% center;}
	.single-project .entry-content > :nth-last-child(1 of .stk-block-columns) > .stk-row > :nth-child(2) .stk-block-content {align-items:flex-start !important;}
	

} /* END @media screen and (max-width: 1024px) */


/* ============================================================
   BONUS: Ladění na přechodové šířce 769–1024px
   (GeneratePress tohle jako self.contained breakpoint nemá)
   ============================================================ */



@media screen and (min-width: 769px) and (max-width: 1024px) {

  /* 3 sloupce → 2 sloupce */
  .stk-row > .stk-block-column:first-child:nth-last-child(3),
  .stk-row > .stk-block-column:nth-child(2):nth-last-child(2),
  .stk-row > .stk-block-column:nth-child(3):last-child {
    flex: 1 1 calc(50% - var(--stk-column-gap, 0px) / 2) !important;
    max-width: calc(50% - var(--stk-column-gap, 0px) / 2) !important;
  }

  /* Skryjeme GeneratePress desktop prvky */
  .hide-on-tablet {
    display: none !important;
  }

  /* Obecný padding stránky */
  .one-container .site-content {
    padding: 30px 2em;
  }
	
	.stk-block-columns#blok-cinnosti > .stk-row > :nth-child(3),
	.stk-block-columns#blok-jak-pracujeme > .stk-row > :nth-child(1),
	.stk-block-columns#blok-jak-pracujeme > .stk-row > :nth-child(3) {max-width:100% !important;}
	.site-footer .stk-block-icon-label .stk-row {flex-direction: row;}
	
	.page-id-311 .stk-block-columns#numera > .stk-row {flex-direction:column !important}
	
	.stk-block-columns#header .stk-block-heading {max-width:100% !important}
	
	.stk-block-columns.blok-sloupce-header > .stk-row {display: flex; flex-direction: column; align-items: center; justify-content: flex-start;}
	.stk-block-columns.blok-sloupce-header > .stk-row > .stk-block-column {align-self:center !important;}
	.stk-block-columns.bile-bloky::before {background: linear-gradient(180deg, rgba(255, 255, 255, 0.6) 35%, white 35%) !important;}
	.page-id-311 .stk-block-columns.bile-bloky::before {opacity: 0 !important;}
	#skupina-01, #skupina-02, #skupina-03 {padding-top: 3em; padding-bottom: 3em;}
	
	.stk-block-columns.ul-plus > .stk-row > .stk-block-column {max-width:100% !important;}
	
	/*[id*="skupina"]	:nth-child(2 of .stk-block-columns.vypis-co-delame) > .stk-row {flex-direction:row;}
	[id*="skupina"]	:nth-child(2 of .stk-block-columns.vypis-co-delame) > .stk-row > .stk-block-column {flex: initial !important; width: 100%; max-width: 100% !important; padding: 0 !important;}
	[id*="skupina"]	:nth-child(2 of .stk-block-columns.vypis-co-delame) .stk-block-heading h4 {font-size:120% !important;}
	[id*="skupina"]	:nth-child(2 of .stk-block-columns.vypis-co-delame) .stk-block-heading h6 {flex-direction:row; justify-content: space-between; font-size:100% !important; gap: 0px;}
	[id*="skupina"]	:nth-child(2 of .stk-block-columns.vypis-co-delame) .stk-block-heading h6 span {font-size: 90% !important; padding-right: 8px; border-right: 1px solid rgba(255, 255, 255, 0.4); margin-right: 10px; display: block; text-align: center; width:100%;}
	[id*="skupina"]	:nth-child(2 of .stk-block-columns.vypis-co-delame) .stk-block-column .stk-inner-blocks {justify-content: space-between; gap: 5px;}
	[id*="skupina"]	:nth-child(2 of .stk-block-columns.vypis-co-delame) :nth-child(1 of .stk-block-column) .stk-inner-blocks {background:rgba(255,255,255,.1); padding:5px 10px}*/
}















/*
 * ============================================================
 *  responsive-768.css
 *  Responsivní úpravy pro olivova.hd-production.cz
 *  Breakpoint: max-width 768px  (mobilní zařízení)
 *
 *  Tento soubor přepisuje / doplňuje výchozí desktop CSS
 *  i responsive-1024.css a zahrnuje všechny stránky:
 *    - / (homepage)
 *    - /o-nas/
 *    - /co-delame/
 *    - /co-menime/
 *    - /project/z-45-fluktuace-na-stabilni-provoz-za-6-tydnu/
 *
 *  Zdrojové CSS soubory:
 *    - generatepress/assets/css/main.min.css          (@768px nativní)
 *    - generatepress_child/style.css                  (@768px nativní)
 *    - stackable/frontend_blocks_responsive.css       (@767px nativní)
 *
 *  Poznámka: child/style.css má @768px, Stackable @767px.
 *  Tento soubor používá @768px pro konzistenci s GP child theme.
 * ============================================================
 */

@media screen and (max-width: 768px) {

  /* ============================================================
     1. LAYOUT – GeneratePress kontejner a obsah
     ============================================================ */

  /* Hlavička – zmenšení paddingu */
  .inside-header.grid-container {
    padding-left: 1em;
    padding-right: 1em;
  }

  /* Kontejner a footer – minimální boční okraje */
  .one-container .container,
  .site-footer {
    padding-left: 1em;
    padding-right: 1em;
  }

  /* Obsah stránky – bez paddingu nahoře/dole, jen boční */
  .one-container .site-content {
    padding: 0;
  }

  /* Grid kontejner */
  .grid-container {
    max-width: 100%;
    padding-left: 1em;
    padding-right: 1em;
  }

  /* Flex layout obsahu – sloupce pod sebou (GP nativní) */
  .site-content {
    flex-direction: column;
  }

  /* Sidebar – plná šířka */
  .is-left-sidebar.sidebar,
  .is-right-sidebar.sidebar {
    width: auto;
    order: initial;
  }


  /* ============================================================
     2. TYPOGRAFIE – child theme (modular scale @768px)
     ============================================================ */
  h1,
  h1 *,
  .h1,
  .h1 * {font-size: 2.027rem !important;}
  h2,
  h2 *,
  .h2,
  .h2 * {font-size: 1.802rem !important; line-height: 1.4 !important;}
  h3,
  h3 *,
  .h3,
  .h3 * {font-size: 1.602rem !important;}
  h4,
  h4 *,
  .h4,
  .h4 *,
  .h4 a {font-size: 1.424rem !important;}
  h5,
  h5 *,
  .h5,
  .h5 * {font-size: 1.266rem !important; }
  h6,
  h6 *,
  .h6,
  .h6 * {font-size: 1.125rem !important;}

  /* Custom Stackable typografické bloky */
  .blok-countup.stk-block-count-up > .stk-block-count-up__text {
    font-size: 28px !important;
  }

  .blok-nadpis-mensi.stk-block-heading > .stk-block-heading__text {
    font-size: 18px !important;
  }

  .blok-citace.stk-block-blockquote .stk-block-text p {
    font-size: 1.1rem !important;
  }

  .blok-nadpis-maly.stk-block-text > p {
    font-size: 12px !important;
  }


  /* ============================================================
     3. NAVIGACE – plně mobilní
     GeneratePress main.min.css aktivuje svůj mobilní layout na 768px,
     zde doplňujeme specifika webu.
     ============================================================ */

  /* Hlavička – sloupce pod sebou */
  .inside-header {
    flex-direction: column;
    text-align: center;
    gap: 10px;
    padding: 15px 1em;
  }

  /* Logo – vycentrovat */
  .site-branding-container {
    justify-content: center;
    max-width: 100%;
  }

  .site-logo img {
    max-height: 45px;
    width: auto;
  }

  /* Mobile toggle – zobrazit, zarovnat vpravo */
  .mobile-menu-control-wrapper {
    display: flex;
    margin-left: auto;
    margin-right: auto;
  }

  /* Skrytí desktop navigace */
  #site-navigation:not(.toggled) .main-nav {
    display: none;
  }

  /* Otevřené mobilní menu – plná šířka */
  .main-navigation.toggled .main-nav {
    width: 100%;
  }

  .main-navigation.toggled .main-nav > ul {
    padding: 0.5em 0;
  }

  .main-navigation.toggled .main-nav ul li a {
    padding-left: 1em;
    padding-right: 1em;
    line-height: 48px;
  }

  /* GP Premium – navigation branding flex */
  .has-inline-mobile-toggle .inside-header {
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
  }

  .has-inline-mobile-toggle .mobile-menu-control-wrapper {margin-left: auto; margin-right: 0;}

  .has-inline-mobile-toggle #site-navigation.toggled {
    margin-top: 0;
    width: 100%;
    flex-basis: 100%;
  }


  /* ============================================================
     4. STACKABLE BLOKY – všechny sloupce na 1 sloupec
     frontend_blocks_responsive.css řeší @767px,
     zde explicitně potvrzujeme a doplňujeme pro @768px.
     ============================================================ */

  /* CSS proměnné – zmenšení spacingu */
  :root {
    --stk-block-margin-bottom: 16px;
    --stk-column-margin: 8px;
    --stk-container-padding: 20px;
    --stk-container-padding-large: 30px 20px;
    --stk-container-padding-small: 10px 20px;
    --stk-block-background-padding: 16px;
    --stk-columns-column-gap: 0px;
    --stk-columns-row-gap: 16px;
  }

  /* Všechny Stackable sloupce – 1 sloupec */
  .stk-column {
    flex: 1 1 100% !important;
    max-width: 100% !important;
  }

  .stk-row {
    flex-wrap: wrap !important;
    flex-direction: column;
  }

  /* Výjimka – icon-label zůstává horizontálně */
  .stk-block-icon-label .stk-row {
    flex-direction: row !important;
    flex-wrap: nowrap !important;
  }

  /* Stackable block width – 100% */
  .stk-block .stk-block.aligncenter,
  .stk-block:is(.aligncenter, .alignwide, .alignfull) > .stk-content-align {
    width: 100%;
  }


  /* ============================================================
     5. HOMEPAGE – hero sekce
     ============================================================ */

  /* Hero #header – plná výška, obsah zarovnat dolů */
  .home .stk-block-columns#header {
    min-height: 80vh;
  }

  .home .stk-block-columns#header > .stk-block-content {
    flex-direction: column;
    justify-content: flex-end;
    padding-bottom: 2em;
  }

  .home .stk-block-columns#header > .stk-block-content > .stk-block-column {
    flex: 1 1 100%;
    max-width: 100%;
  }

  /* Tlačítka v hero – pod sebou */
  .home .stk-block-button-group,
  .home .stk-button-group {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
  }

  

  .skupina-pro-rotaci {
    padding-top: 3em;
    padding-bottom: 3em;
  }

  /* Skupiny zIndex – reset paddingů */
  #skupina-01,
  #skupina-02,
  #skupina-03 {
    padding-left: 0 !important;
    padding-bottom: 0 !important;
  }

  /* Statistiky na homepage (countup čísla) */
  .home .stk-block-count-up {
    text-align: center;
  }


  /* ============================================================
     6. SEKCE „Jak pracujeme" (#blok-jak-pracujeme)
     child/style.css @768px: 1 sloupec, :nth-child(2) display:none ✓
     Potvrzujeme a doplňujeme.
     ============================================================ */

  #blok-jak-pracujeme > .stk-row {
    display: flex !important;
    flex-direction: column !important;
    gap: 30px !important;
  }

  #blok-jak-pracujeme > .stk-row > :nth-child(1),
  #blok-jak-pracujeme > .stk-row > :nth-child(3) {
    grid-area: auto !important;
    width: 100%;
  }

  /* Dekorativní sloupec – schovat */
  #blok-jak-pracujeme > .stk-row > :nth-child(2) {
    display: none !important;
  }


  /* ============================================================
     7. REFERENCE – loga (wpv-view-layout-196)
     child/style.css @768px: .page → 3 sloupce ✓
     Doplňujeme homepage a ostatní varianty.
     ============================================================ */

	.home [id*="wpv-view-layout-196"] {grid-template-columns: repeat(3, 1fr) !important; grid-row-gap: 40px;}
	.home [id*="wpv-view-layout-196"] img {max-height:45px;}

  

  /* ============================================================
     8. REFERENCE – texty (wpv-view-layout-337)
     Výchozí na 1024px: 1 sloupec bez negativního marginu ✓
     Na 768px: zmenšíme padding.
     ============================================================ */

  [id*="wpv-view-layout-337"] {
    margin-left: 0 !important;
    grid-template-columns: 1fr !important;
    padding: 1.5em !important;
    grid-row-gap: 20px;
  }

  [name*="wpv-filter-337"] .form-group {
    margin-left: 0 !important;
  }


  #reference-text-drzak > div,
  #reference-text-drzak > form {
    width: 100% !important;
    max-width: 100%;
  }


  /* ============================================================
     9. PŘÍPADOVÉ STUDIE – grid (wpv-view-layout-251)
     child/style.css @768px: aspect-ratio 16/13, max-width 85%
     Potvrzujeme + doplňujeme.
     ============================================================ */

  [id*="wpv-view-layout-251"] {
    grid-template-columns: repeat(2, 1fr) !important;
    grid-gap: 15px;
  }

  [id*="wpv-view-layout-251"] > a {
    aspect-ratio: 16 / 13 !important;
  }

  
  [id*="wpv-view-layout-251"] .stk-block-heading {
    max-width: 85% !important;
  }

  /* Nadpis případové studie – menší font */
  [id*="wpv-view-layout-251"] .stk-block-heading__text {
    font-size: 1rem !important;
  }


  /* ============================================================
     10. ČÍSELNÉ LISTY (.ul-cisla)
     child/style.css @768px: 1 sloupec ✓ – potvrzujeme
     ============================================================ */

  .ul-cisla ul {
    grid-template-columns: 1fr !important;
    grid-gap: 50px;
    margin-left: 1em;
  }

  .ul-cisla ul > li {
    padding: 1.2em;
    padding-left: 4.5em;
  }

  /* Plus listy – menší font */
	.ul-plus ul,
	.ul-sipka ul {font-size: 1.1rem; line-height: 1.6;}
	.ul-plus ul {margin-bottom: 0;}
	.ul-plus ul li {font-size: 0.95rem;}
	.ul-prazdny-ram ul {grid-template-columns: 1fr !important; grid-gap: 30px;}
	.ul-plus ul > li:last-of-type, .ul-sipka ul > li:last-of-type {margin-bottom: 0rem;}


  /* ============================================================
     11. TABULKY POROVNÁNÍ (co-delame: Interim vs Konzultant,
         Change vs Project mgmt, Mediace vs Soud)
     ============================================================ */

  /* Stackable sloupce – pod sebou */
  .blok-sloupce-header.stk-block-columns > .stk-row {
    flex-direction: column;
  }

  .blok-sloupce-header.stk-block-columns > .stk-row > .stk-block-column {
    flex: 1 1 100% !important;
    max-width: 100% !important;
    padding-top: 1.5em !important;
    padding-right: 1.5em !important;
    padding-bottom: 1.5em !important;
    padding-left: 1.5em !important;
    /* Zrušíme border-radius jen na vnitřních hranách */
    border-top-left-radius: 12px !important;
    border-top-right-radius: 12px !important;
    border-bottom-right-radius: 12px !important;
    border-bottom-left-radius: 12px !important;
  }

  /* Bile-bloky gradient – upravit pro 1 sloupec */
  .stk-block-columns.bile-bloky::before {background: linear-gradient(180deg, rgba(255,255,255,0.6) 90%, white 90%) !important;}
	.page-id-311 .stk-block-columns.bile-bloky::before {opacity: 0.5 !important;}


  /* ============================================================
     12. SEKCE CO DĚLÁME – statistiky a timeline
     ============================================================ */

  /* Statistické trojice (7 z 10 / 3-12 měsíců / 3-5x) */
  /*.stk-block-columns .stk-row > .stk-block-column {
    text-align: center;
  }*/

  /* Oddělovací čáry v textu .blok-sloupce-header */
  .blok-sloupce-header.stk-block-columns > .stk-row > .stk-block-column .stk-block-heading {
    padding-bottom: 0.75em !important;
    margin-bottom: 0.75em !important;
  }


  /* ============================================================
     13. FORMULÁŘ CF7 + kontaktní sekce
     ============================================================ */

  .wpcf7 input[type="text"],
  .wpcf7 input[type="email"],
  .wpcf7 input[type="url"],
  .wpcf7 input[type="password"],
  .wpcf7 input[type="search"],
  .wpcf7 input[type="tel"],
  .wpcf7 input[type="number"],
  .wpcf7 textarea,
  .wpcf7 select {
    font-size: 16px; /* zamezí auto-zoom na iOS */
    padding: 10px 8px;
    margin-bottom: 1.5em;
  }

  .wpcf7-checkbox .wpcf7-list-item label,
  .wpcf7-acceptance .wpcf7-list-item label {
    gap: 10px;
  }

  /* Submit tlačítko – plná šířka */
  .wpcf7 input[type="submit"],
  .wpcf7 .wpcf7-submit {
    width: 100%;
  }

  /* Kontaktní sekce – telefon a email pod sebou */
  .stk-block-columns .stk-row > .stk-block-column a[href^="tel"],
  .stk-block-columns .stk-row > .stk-block-column a[href^="mailto"] {
    display: block;
    margin-bottom: 0.5em;
  }


  /* ============================================================
     14. FOOTER
     ============================================================ */

  /*.site-footer {
    padding-left: 0;
    padding-right: 0;
  }*/

  .site-footer .grid-container {
    padding-left: 1em;
    padding-right: 1em;
  }

  /* Footer sloupce – pod sebou */
  .site-footer .stk-row {
    flex-direction: column !important;
    gap: 25px;
  }

  .site-footer .stk-block-column {
    flex: 1 1 100% !important;
    max-width: 100% !important;
    text-align: center;
  }

  /* Footer navigační linky */
  .site-footer .wp-block-navigation {
    justify-content: center;
    flex-wrap: wrap;
    gap: 8px;
  }

  .site-footer .wp-block-navigation-item__content {
    padding: 4px 8px;
  }

  /* Copyright řádek */
  .inside-site-info {
    padding: 12px 1em;
    flex-direction: column;
    gap: 8px;
    text-align: center;
    font-size: 13px;
  }

  /* Footer logo */
  .site-footer img[src*="new-logo"] {
    max-width: 140px;
    margin: 0 auto;
    display: block;
  }


  /* ============================================================
     15. SINGLE PROJECT stránka
     ============================================================ */

  /* Celá stránka – 1 sloupec */
  .single-project .stk-block-columns > .stk-block-content {
    flex-direction: column;
  }

  .single-project .stk-block-columns > .stk-block-content > .stk-block-column {
    flex: 1 1 100% !important;
    max-width: 100% !important;
  }

  /* Výsledky – seznam */
  .single-project .entry-content ul {
    padding-left: 1.5em;
  }

  .single-project .entry-content ul li {
    margin-bottom: 0.75em;
    line-height: 1.5;
  }

  /* Navigace předchozí / následující studie */
  .single-project [rel="prev"],
  .single-project [rel="next"] {font-size: 0.95rem; gap: 4px;}

  /* Blok s citátem */
  .single-project blockquote,
  .single-project .stk-block-blockquote {
    padding: 15px;
    font-size: 1rem;
  }


  /* ============================================================
     16. FILTROVANI (co-menime stránka)
     ============================================================ */

  .filtrovani {
    gap: 10px;
    flex-wrap: wrap;
  }

  .filtrovani .stk-block-button {
    flex: 0 0 auto;
  }

  /* Tlačítka filtru – menší */
  .filtrovani .stk-button {
    padding: 8px 14px !important;
    font-size: 0.9rem;
  }


  /* ============================================================
     17. PAGINATION – Toolset WPV
     ============================================================ */

  .pagination.pagination-dots {
    margin-top: 1.5em;
  }

  .pagination.pagination-dots a,
  .wpv-pagination-nav-links-container .page-link {
    width: 32px;
    height: 32px;
    line-height: 32px;
    font-size: 14px;
  }


  /* ============================================================
     18. OBECNÉ UTILITY – alignments, obrázky, blockquote
     ============================================================ */

  /* Plující obrázky – zrušit float na mobilu (GP nativní) */
  .alignleft,
  .alignright {
    float: none;
    display: block;
    margin-left: auto;
    margin-right: auto;
  }

  /* Všechny obrázky – responzivní */
  img {
    max-width: 100%;
    height: auto;
  }

  .stk-img-wrapper {
    width: 100%;
  }

  /* Blockquote – zmenšit padding */
  blockquote {
    padding: 15px;
    font-size: 1rem;
  }

  /* Vstupní meta – inherit font size (GP nativní) */
  .entry-meta {
    font-size: inherit;
  }


  /* ============================================================
     19. STACKABLE – speciální bloky
     ============================================================ */

  /* Feature blok – obrázek + text pod sebou */
  .stk-block.stk-block-feature:is(.is-style-default, .is-style-horizontal)
    > .stk-container
    > .stk-inner-blocks.stk-block-content {
    flex-direction: column-reverse;
  }

  /* Card blok – omezení výšky obrázku */
  .stk-block-card__image {
    height: 200px;
  }

  /* Posts blok – 1 sloupec */
  .stk-block-posts {
    --stk-columns: 1;
  }

  /* Tabs – vertikální → horizontální na mobilu */
  .stk-block-tabs > .stk-inner-blocks {
    grid-template-columns: 1fr;
  }

  .stk-block-tabs > .stk-inner-blocks > .stk-block-tab-labels:last-child {
    grid-row: 1 / 2;
  }

  /* Separátory s vw výškou (Stackable @767px) */
  .entry-content .stk-block.stk-has-top-separator {
    padding-top: 23vw;
  }

  .entry-content .stk-block.stk-has-bottom-separator {
    padding-bottom: 23vw;
  }

  .entry-content .stk-block .stk-separator__wrapper {
    height: 23vw;
  }


  /* ============================================================
     20. HIDE/SHOW UTILITY
     ============================================================ */

  /* GeneratePress – skrytí na mobilu */
  .hide-on-mobile {
    display: none !important;
  }

  /* Stackable – skrytí na mobilu */
  .stk--hide-mobile,
  .stk--hide-mobile.stk-block {
    display: none !important;
  }

  /* Toolset – spinner */
  .js-wpv-dps-spinner.cekam {
    padding: 1.5em;
  }

  /* Přechody – vypnout na mobilu pro výkon (GP nativní) */
  a,
  body,
  button,
  input,
  select,
  textarea {
    transition: all 0s ease-in-out;
  }
	
	.stk-block-columns.bile-bloky {border-left-width:25px !important; border-right-width:25px !important}
	.stk-block-columns#blok-kdo-jsme > .stk-row {display:block;}
	.entry-content {padding-left:1em; padding-right:1em;}
	[id*="wpv-view-layout-196"] > div.normal {grid-area: auto / auto / span 1 / span 20;}
	[id*="wpv-view-layout-196"] > :nth-child(1 of .normal) {grid-column-start: 1;}
	[class*="stk-block-"].stk-entrance.stk-will-enter {transform:translate(0,0) !important; transition:none !important; opacity:1 !important}
	.stk-block-columns.ul-sipka > .stk-row,
	.stk-block-columns.ul-plus > .stk-row {display:grid;}
	.stk-block-columns.ul-sipka > .stk-row > :nth-child(1 of .stk-block-column),
	.stk-block-columns.ul-plus > .stk-row > :nth-child(1 of .stk-block-column) {order:2; margin-right: 0 !important;}
	body:not(.single-project) .stk-block-columns.ul-sipka > .stk-row > :nth-child(2 of .stk-block-column),
	body:not(.single-project) .stk-block-columns.ul-plus > .stk-row > :nth-child(2 of .stk-block-column),
	body:not(.single-project) .stk-block-columns.ul-plus > .stk-row > :nth-child(2 of .stk-block-column) .stk-img-wrapper.stk-image--shape-stretch {order:1; aspect-ratio:3/1 !important}
	.stk-block-blockquote.blok-citace {padding-left:0 !important}
	.stk-block-blockquote.blok-citace .stk-block-icon {margin-right:0}
	.stk-block-blockquote.blok-citace .stk-block-icon .stk--inner-svg {width:50px; height:50px;}
	.stk-block-blockquote.blok-citace .stk-block-icon .stk--inner-svg svg:last-child {width:100% !important; height:100% !important;}
	.stk-block-blockquote.blok-citace .stk-block-text {margin-top:1em;}
	#skupina-02, 
	#skupina-03 {padding-top: 5em !important;}
	[id*="skupina-"] > div > .stk-block-button-group,
	[id*="skupina-"] > div > .stk-block-text {margin-left:0 !important; padding-left: 0em !important; max-width: 100% !important;}
	.skupina-pro-rotaci .rotace {top: 0 !important; width: 100vw !important; position: sticky !important; z-index: 10;}
	.logged-in .skupina-pro-rotaci .rotace {top: 46px !important;}
	.skupina-pro-rotaci .rotace::before {padding: 7px 11px; transform: none; width: 100%; left: 0; top: 0; z-index: 10; transform-origin: unset; right: 0; position: relative; text-align: center; background: #333;}
	.stk-block-columns.ul-plus {padding-top:0 !important; padding-bottom: 5em !important;}
	.stk-block-columns.typicke-situace > .stk-row > :nth-child(2) {padding-top:1em !important}
	.stk-block-columns#header .stk-block-heading, .stk-block-columns#header .stk-block-text {max-width: 100% !important;}
	[id*="skupina-"] :nth-child(2 of .vypis-co-delame) .stk-block-column {padding:1.5em !important}
	.page-id-1402 .stk-block-columns#header {padding-top:0em !important; padding-left:0 !important; padding-right:0 !important; padding-bottom:3em !important}
	[id*="skupina"]	.stk-block-columns.ul-plus :nth-child(2 of .stk-block-column),
	[id*="skupina"]	.stk-block-columns.ul-plus :nth-child(3 of .stk-block-column) {max-width:25% !important; flex:initial !important}
	.page-id-1402 .stk-block-columns#header {padding-top:2em !important}
	.single-project .stk-block-columns.ul-sipka {padding-top:3em !important}
	.single-project .stk-block-columns.ul-plus {padding-bottom:3em !important}
	.single-project .ul-plus ul > li:last-of-type, 
	.single-project .ul-sipka ul > li:last-of-type {margin-bottom: 0rem;}
	.single-project .stk-block-columns#header {border: 0 !important; padding: 4em 2em !important; min-height: 0px !important;}
	.single-project .stk-block-columns#blok-zmena {border: 0 !important; min-height: 0 !important; padding: 4em 2.5em !important;}
	.single-project .stk-block-columns#blok-zmena .stk-block-heading {max-width:100% !important}
	

} /* END @media screen and (max-width: 768px) */


/* ============================================================
   BONUS: Malé mobily – max-width 600px
   (child/style.css má @600px: wpv-251 flex column, loga 2 sloupce)
   ============================================================ */

@media screen and (max-width: 600px) {
  /* Případové studie – 1 sloupec */
  [id*="wpv-view-layout-251"] { display: flex !important; flex-direction: column !important;}
  [id*="wpv-view-layout-251"] > a {aspect-ratio: 16 / 9 !important;}

  /* Reference loga – 2 sloupce */
  .home [id*="wpv-view-layout-196"] {
    grid-template-columns: repeat(2, 1fr) !important;
    grid-column-gap: 20px;
    grid-row-gap: 20px;
  }

  /* Ještě menší typografie pro 600px */
  h1, h1 * { font-size: 1.8rem !important; }
  h2, h2 * { font-size: 1.6rem !important; line-height: 1.35 !important; }
  h3, h3 * { font-size: 1.4rem !important; }

  /* Padding hlavičky */
  .inside-header.grid-container {
    padding-left: 0.75em;
    padding-right: 0.75em;
  }

  /* Navigační branding – logo + toggle na 1 řádce */
  .has-inline-mobile-toggle .inside-header {
    padding: 10px 0.75em;
  }

  /* Tlačítka – plná šířka na malých mobilech */
  .stk-block-button .stk-button {
    width: 100%;
    text-align: center;
    justify-content: center;
  }

  /* Formulář */
  .wpcf7 .wpcf7-submit {
    padding: 12px 20px;
    font-size: 1rem;
  }
	.page-id-311 [id*="wpv-view-layout-196"] > div.ano-zobrazit-na-homepage {grid-area: auto / auto / span 1 / span 26;}
}


/* ============================================================
   BONUS: Velmi malé mobily – max-width 410px
   (child/style.css má @410px: header flex-column, gap 25px)
   ============================================================ */

@media screen and (max-width: 410px) {

  /* Hlavička – logo a toggle pod sebou (GP child nativní) */
  .inside-header.grid-container {display: flex; flex-direction: column; gap: 25px; align-items: center; padding-bottom: 0; padding-top: 1.5em;}

  .has-inline-mobile-toggle .mobile-menu-control-wrapper {
    margin-right: auto;
  }

  /* Logo */
  .site-logo img {
    max-height: 38px;
  }

  /* Minimální padding */
  .inside-header.grid-container,
  .grid-container {
    padding-left: 0.5em;
    padding-right: 0.5em;
  }

  /* Reference loga – 2 sloupce tight */
  [id*="wpv-view-layout-196"] {
    grid-column-gap: 12px;
    grid-row-gap: 15px;
  }

  [id*="wpv-view-layout-196"] img {
    max-height: 30px;
  }

  /* Číselné listy – méně paddingu */
  .ul-cisla ul > li {
    padding: 1em;
    padding-left: 4em;
  }
	.page-id-311 [id*="wpv-view-layout-196"] {grid-row-gap: 30px; grid-column-gap:0;}
	[id*="wpv-view-layout-196"] > div.normal {grid-area: auto / auto / span 1 / span 40; padding-top: 2em; margin-bottom: -3em;}
	.page-id-311 [id*="wpv-view-layout-196"] img {max-height:60px;}

}

@media screen and (max-width: 500px) {
	.stk-block-blockquote > div > .stk-inner-blocks {/*flex-wrap:wrap;*/}
	.stk-block-blockquote .stk-block-icon {margin-bottom:0;}
	.stk-block-blockquote .stk-block-text {margin-top:-30px; z-index:2; margin-left:-20px;}
	.stk-block-column .stk-block-count-up .stk-block-count-up__text {font-size: 36px !important; margin-top:10px;}
	.stk-block-columns#blok-cinnosti .stk-block-column {padding:1.5em !important}
	.stk-block-columns#blok-zmena {border-left:0 !important; border-right:0 !important; aspect-ratio:16/7 !important; background-position: 25% center; padding-right: 1em !important;}
	.page-id-311 [id*="wpv-view-layout-196"] > div.ano-zobrazit-na-homepage {grid-area: auto / auto / span 1 / span 40; padding:0 1em}
	.site-footer > .stk-block-columns {padding-left:1em !important; padding-right:1em !important}
	.site-footer [id*="footer-ikona-"] > .stk-row {gap:15px !important;}
	[id*="wpv-view-layout-196"] > div.normal {grid-area: auto / auto / span 1 / span 26;}
}

@media screen and (max-width: 400px) {
    [id*="wpv-view-layout-196"],
	.page [id*="wpv-view-layout-196"],
	.page-id-311 #wpv-view-layout-196,
	/*.home [id*="wpv-view-layout-196"] {grid-template-columns: 1fr !important; grid-row-gap:30px;}*/
	.stk-block-columns#blok-zmena,
	.home .stk-block-columns#header {border-left:0 !important; border-right:0 !important}
	.stk-block-columns#blok-zmena {background-position: 35% center;}
}















