.elementor-kit-25{--e-global-color-primary:#CCAE7D;--e-global-color-secondary:#A0854E;--e-global-color-text:#91A0BA;--e-global-color-accent:#FFCC99;--e-global-color-bs_bg:#050D18;--e-global-color-bs_panel:#041021;--e-global-color-bs_card:#081426;--e-global-color-bs_input:#152232;--e-global-color-bs_line:#1C283A;--e-global-color-bs_inputbd:#283447;--e-global-color-bs_white:#FFFFFF;--e-global-typography-primary-font-family:"Playfair Display";--e-global-typography-primary-font-size:50px;--e-global-typography-primary-font-weight:400;--e-global-typography-primary-line-height:1.5em;--e-global-typography-primary-letter-spacing:-2.5px;--e-global-typography-secondary-font-family:"Playfair Display";--e-global-typography-secondary-font-size:22px;--e-global-typography-secondary-font-weight:400;--e-global-typography-secondary-line-height:1.14em;--e-global-typography-secondary-letter-spacing:0px;--e-global-typography-text-font-family:"Hanken Grotesk";--e-global-typography-text-font-size:16px;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:1.94em;--e-global-typography-text-letter-spacing:0px;--e-global-typography-accent-font-family:"Hanken Grotesk";--e-global-typography-accent-font-size:16px;--e-global-typography-accent-font-weight:400;--e-global-typography-accent-text-transform:uppercase;--e-global-typography-accent-line-height:1.63em;--e-global-typography-accent-letter-spacing:4.32px;--e-global-typography-bs_nav-font-family:"Hanken Grotesk";--e-global-typography-bs_nav-font-size:14px;--e-global-typography-bs_nav-font-weight:400;--e-global-typography-bs_nav-text-transform:uppercase;--e-global-typography-bs_nav-line-height:1.86em;--e-global-typography-bs_nav-letter-spacing:2.1px;--e-global-typography-bs_button-font-family:"Hanken Grotesk";--e-global-typography-bs_button-font-size:12px;--e-global-typography-bs_button-font-weight:400;--e-global-typography-bs_button-text-transform:uppercase;--e-global-typography-bs_button-line-height:2.17em;--e-global-typography-bs_button-letter-spacing:1.44px;--e-global-typography-bs_quote-font-family:"Playfair Display";--e-global-typography-bs_quote-font-size:40px;--e-global-typography-bs_quote-font-weight:400;--e-global-typography-bs_quote-line-height:1.55em;--e-global-typography-bs_quote-letter-spacing:0px;--e-global-typography-bs_label-font-family:"Hanken Grotesk";--e-global-typography-bs_label-font-size:12px;--e-global-typography-bs_label-font-weight:400;--e-global-typography-bs_label-text-transform:uppercase;--e-global-typography-bs_label-line-height:1.67em;--e-global-typography-bs_label-letter-spacing:1.44px;color:#91A0BA;font-family:"Hanken Grotesk", Sans-serif;font-size:16px;font-weight:400;line-height:1.94em;letter-spacing:0px;}.elementor-kit-25 button,.elementor-kit-25 input[type="button"],.elementor-kit-25 input[type="submit"],.elementor-kit-25 .elementor-button{background-color:#A0854E;font-family:"Hanken Grotesk", Sans-serif;font-size:12px;font-weight:400;text-transform:uppercase;line-height:2.17em;letter-spacing:1.44px;color:#FFFFFF;border-style:solid;border-width:1px 1px 1px 1px;border-color:#FFCC99;border-radius:0px 0px 0px 0px;padding:12px 28px 12px 28px;}.elementor-kit-25 button:hover,.elementor-kit-25 button:focus,.elementor-kit-25 input[type="button"]:hover,.elementor-kit-25 input[type="button"]:focus,.elementor-kit-25 input[type="submit"]:hover,.elementor-kit-25 input[type="submit"]:focus,.elementor-kit-25 .elementor-button:hover,.elementor-kit-25 .elementor-button:focus{background-color:#CCAE7D;color:#050D18;}.elementor-kit-25 e-page-transition{background-color:#FFBC7D;}.elementor-kit-25 a{color:#CCAE7D;}.elementor-kit-25 a:hover{color:#FFCC99;}.elementor-kit-25 h1{color:#FFFFFF;font-family:"Playfair Display", Sans-serif;font-size:70px;font-weight:400;line-height:1.43em;letter-spacing:-3.5px;}.elementor-kit-25 h2{color:#FFFFFF;font-family:"Playfair Display", Sans-serif;font-size:50px;font-weight:400;line-height:1.5em;letter-spacing:-2.5px;}.elementor-kit-25 h3{color:#FFFFFF;font-family:"Playfair Display", Sans-serif;font-size:22px;font-weight:400;line-height:1.14em;letter-spacing:0px;}.elementor-kit-25 h4{color:#FFFFFF;font-family:"Playfair Display", Sans-serif;font-size:18px;font-weight:400;line-height:1.39em;letter-spacing:0px;}.elementor-kit-25 h5{color:#CCAE7D;font-family:"Hanken Grotesk", Sans-serif;font-size:16px;font-weight:400;text-transform:uppercase;line-height:1.63em;letter-spacing:4.32px;}.elementor-kit-25 h6{color:#A0854E;font-family:"Playfair Display", Sans-serif;font-size:24px;font-weight:400;line-height:1.2em;letter-spacing:-1.2px;}.elementor-kit-25 label{color:rgba(255,255,255,0.55);font-family:"Hanken Grotesk", Sans-serif;font-size:12px;font-weight:400;text-transform:uppercase;line-height:1.67em;letter-spacing:1.44px;}.elementor-kit-25 input:not([type="button"]):not([type="submit"]),.elementor-kit-25 textarea,.elementor-kit-25 .elementor-field-textual{color:#FFFFFF;background-color:#152232;border-radius:0px 0px 0px 0px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1320px;}.e-con{--container-max-width:1320px;}.elementor-widget:not(:last-child){--kit-widget-spacing:0px;}.elementor-element{--widgets-spacing:0px 0px;--widgets-spacing-row:0px;--widgets-spacing-column:0px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-kit-25 h1{font-size:48px;line-height:1.2em;}.elementor-kit-25 h2{font-size:40px;line-height:1.3em;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-25{font-size:15px;}.elementor-kit-25 h1{font-size:34px;line-height:1.18em;}.elementor-kit-25 h2{font-size:28px;line-height:1.25em;}.elementor-kit-25 h3{font-size:20px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS */@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;500&family=Hanken+Grotesk:wght@300;400;500;600&family=Montserrat:wght@400;500&display=swap');

/* --- základ --- */
html { scroll-behavior: smooth; }
body { background-color: #050D18; -webkit-font-smoothing: antialiased; }
* { box-sizing: border-box; }
::selection { background: #CCAE7D; color: #050D18; }

/* ostré rohy všude — brandová konstanta */
.elementor-button, .elementor-field-textual, .bs-square { border-radius: 0 !important; }

/* --- kotvy: odsazení pod sticky navigaci --- */
[id="uvod"], [id="o-nas"], [id="sluzby"], [id="jak-pracujeme"], [id="kontakt"] { scroll-margin-top: 90px; }

/* --- pojistka proti horizontálnímu přetečení --- */
body { overflow-x: hidden; }

/* ==========================================================
   Komponenty homepage.
   Píše se sem, NE do Custom CSS jednotlivých prvků — Elementor
   při importu Kitu nezpracuje zástupný token prvku a rozbije stylesheet.
   ========================================================== */

/* --- navigace --- */
.bs-navlink .elementor-heading-title { transition: color .25s ease; white-space: nowrap; }
.bs-navlink .elementor-heading-title:hover { color: #CCAE7D; }

/* --- citát --- */
.bs-quote .elementor-heading-title { max-width: 760px; margin: 0 auto; opacity: .85; }

/* --- O nás --- */
.bs-about-text { max-width: 480px; }
.bs-about-photo { position: relative; }
.bs-about-photo::after { content: ""; position: absolute; left: 40%; top: 50%; width: 70%; height: 46%;
  border: 2px solid #A0854E; pointer-events: none; z-index: 2; }

/* --- časová osa „Jak pracujeme" --- */
.bs-timeline .bs-step { position: relative; }
.bs-timeline .bs-step::before { content: ""; position: absolute; left: 50%; top: 0; transform: translateX(-50%);
  width: 23px; height: 23px; border: 1px solid #CCAE7D; border-radius: 50%; background: #050D18; z-index: 2; }
.bs-timeline .bs-step::after { content: ""; position: absolute; left: 50%; top: 23px; bottom: 0;
  transform: translateX(-50%); width: 1px; background: #CCAE7D; z-index: 1; }
.bs-timeline .bs-step:last-child::after { display: none; }
.bs-step-text { max-width: 280px; }

/* --- kontaktní formulář --- */
.bs-form .elementor-field-textual { height: 50px; padding: 0 20px; border-radius: 0; box-shadow: none; }
.bs-form textarea.elementor-field-textual { height: 130px; padding: 16px 20px; }
.bs-form .elementor-field-textual::placeholder { color: rgba(255,255,255,0.35); opacity: 1; }
.bs-form .elementor-field-textual:focus { border-color: #CCAE7D; box-shadow: none; outline: none; }
.bs-form .elementor-field-label { margin-bottom: 10px; }
.bs-form .elementor-button { border-radius: 0; transition: all .3s ease; }

/* --- tablet a mobil --- */
@media (max-width: 1024px) {
  .bs-about-photo::after { display: none; }
  .bs-timeline .bs-step::before,
  .bs-timeline .bs-step::after { left: 11px; transform: none; }
  .bs-step-text { max-width: 100%; }
}/* End custom CSS */