@import url("https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=Plus+Jakarta+Sans:wght@500;600;700;800&display=swap");

:root{
  --ink-black:#171715;--ink-soft:#22211E;--warm-cream:#F2ECE2;--soft-cream:#FAF8F3;--surface-white:#FAF8F3;
  --muted-taupe:#6D675F;--border-sand:#DAD1C4;
  --primary-periwinkle:#6B5CE7;--primary-deep:#5949D1;
  --lavender-soft:#E8E3FF;--lavender-mid:#CFC5F7;--mint-fresh:#DCE9E0;--peach-warm:#E8E3FF;--sky-tint:#E8E3FF;
  --success:#4D8263;--warning:#B8863B;--error:#B4524F;
  --bg-page:var(--warm-cream);--bg-section:var(--soft-cream);--bg-section-tint:var(--lavender-soft);
  --surface-card:var(--surface-white);--surface-inverse:var(--ink-black);
  --text-strong:#1B1A18;--text-body:#1B1A18;--text-muted:var(--muted-taupe);
  --text-on-dark:#F7F2E9;--text-on-dark-muted:#D6CFC2;--text-on-dark-faint:#A49D8F;
  --text-on-primary:#FFFFFF;--text-link:var(--primary-deep);
  --border-subtle:var(--border-sand);--border-strong:#C9BEAD;--border-on-dark:rgba(247,242,233,0.12);
  --accent-primary:var(--primary-periwinkle);--accent-primary-strong:var(--primary-deep);
  --accent-mint:var(--mint-fresh);--accent-peach:var(--peach-warm);--accent-sky:var(--sky-tint);--accent-lavender:var(--lavender-soft);
  --focus-ring:rgba(107,92,231,0.2);
  --shadow-sm:0 4px 12px rgba(23,23,21,0.05);--shadow-md:0 12px 32px rgba(23,23,21,0.07);
  --shadow-lg:0 24px 64px rgba(23,23,21,0.10);--shadow-purple-glow:0 14px 40px rgba(107,92,231,0.18);
  --shadow-peach-glow:0 14px 38px rgba(107,92,231,0.14);--shadow-card:0 12px 32px rgba(89,73,209,0.07);
  --shadow-focus:0 0 0 4px rgba(107,92,231,0.18);
  --ease-soft:cubic-bezier(0.22,0.61,0.36,1);--dur-button:180ms;--dur-card:220ms;--dur-reveal:400ms;--float-duration:6s;
  --font-headline:"Plus Jakarta Sans","Manrope",system-ui,-apple-system,sans-serif;
  --font-body:"Manrope",system-ui,-apple-system,"Segoe UI",sans-serif;
  --weight-regular:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--weight-extrabold:800;
  --radius-sm:8px;--radius-md:14px;--radius-lg:18px;--radius-xl:24px;--radius-round:999px;
  --radius-2xl:20px;--radius-3xl:24px;--sky-cool:var(--sky-tint);--success-deep:#3E6B51;
  --space-xs:8px;--space-sm:16px;--space-md:24px;--space-lg:40px;--space-xl:64px;--space-2xl:96px;
  --container-max:1200px;--container-gutter:24px;
  --kd-btn-radius:13px;--kd-card-radius:18px;
}

body.mw-site,body.mw-site *{box-sizing:border-box;}
body.mw-site{font-family:var(--font-body);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;color:var(--text-body);background:var(--warm-cream);position:relative;}
html{scroll-behavior:smooth;}
html,body.mw-site{overflow-x:clip;max-width:100%;}
body.mw-site ::selection{background:var(--lavender-mid);color:var(--ink-black);}
body.mw-site a{text-decoration:none;}
body.mw-site button{font-family:inherit;}
.mw-front .site-content .ast-container,.mw-front .ast-container{max-width:100%!important;padding:0!important;}
.mw-front #primary,.mw-front #main{margin:0!important;padding:0!important;}
.mw-front .entry-content{margin:0!important;}
.mw-front .site-content{padding:0!important;}

.mw-h1{font-family:var(--font-headline);font-weight:800;font-size:60px;line-height:1.06;letter-spacing:-0.02em;color:var(--text-strong);}
.mw-h2{font-family:var(--font-headline);font-weight:700;font-size:42px;line-height:1.12;letter-spacing:-0.02em;color:var(--text-strong);}
.mw-h3{font-family:var(--font-headline);font-weight:700;font-size:25px;line-height:1.25;color:var(--text-strong);}
.mw-micro{font-family:var(--font-body);font-weight:600;font-size:12px;line-height:1.5;letter-spacing:0.08em;text-transform:uppercase;color:var(--text-muted);}

.mw-btn{display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-headline);font-weight:600;line-height:1;border-radius:var(--kd-btn-radius);border:1px solid transparent;cursor:pointer;white-space:nowrap;transition:transform var(--dur-button) var(--ease-soft),box-shadow var(--dur-button) var(--ease-soft),background var(--dur-button) var(--ease-soft);}
.mw-btn:hover{transform:translateY(-2px);}
.mw-btn-sm{font-size:14px;padding:10px 16px;gap:8px;min-height:44px;}
.mw-btn-md{font-size:15.5px;padding:14px 24px;gap:10px;min-height:48px;}
.mw-btn-lg{font-size:17px;padding:16px 32px;gap:12px;min-height:52px;}
.mw-btn-primary{background:var(--primary-periwinkle);color:#fff;box-shadow:var(--shadow-sm);}
.mw-btn-primary:hover{background:var(--primary-deep);box-shadow:var(--shadow-purple-glow);}
.mw-btn-secondary{background:var(--surface-white);color:var(--text-strong);border:1px solid var(--border-sand);box-shadow:var(--shadow-sm);}
.mw-btn-secondary:hover{box-shadow:var(--shadow-md);}
.mw-btn-ghost{background:transparent;color:var(--primary-deep);}
.mw-btn-ghost:hover{background:var(--lavender-soft);}
.mw-btn-peach{background:var(--lavender-soft);color:var(--text-strong);box-shadow:var(--shadow-sm);}
.mw-btn-peach:hover{box-shadow:var(--shadow-purple-glow);}

.mw-badge{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-body);font-weight:600;font-size:13.5px;line-height:1;padding:7px 15px;border-radius:var(--radius-round);white-space:nowrap;}
.mw-badge-lavender{background:var(--lavender-soft);color:var(--primary-deep);}
.mw-badge-periwinkle{background:var(--primary-periwinkle);color:#fff;}
.mw-badge-mint{background:var(--mint-fresh);color:#3E6B51;}
.mw-badge-peach{background:var(--lavender-soft);color:var(--primary-deep);}
.mw-badge-sky{background:var(--lavender-soft);color:var(--primary-deep);}
.mw-badge-neutral{background:var(--soft-cream);color:var(--muted-taupe);}
.mw-tag{display:inline-flex;align-items:center;font-family:var(--font-body);font-weight:600;font-size:12px;letter-spacing:0.04em;text-transform:uppercase;line-height:1;padding:6px 10px;border-radius:var(--radius-sm);background:var(--surface-white);color:var(--muted-taupe);border:1px solid var(--border-sand);}

.mw-card-hover{transition:transform 220ms var(--ease-soft),box-shadow 220ms var(--ease-soft),opacity 560ms var(--ease-soft);}
@keyframes mwFloat{0%,100%{transform:translateY(0);}50%{transform:translateY(-14px);}}
@keyframes mwFloatBadge{0%,100%{transform:translateY(0) rotate(var(--rot,0deg));}50%{transform:translateY(-9px) rotate(var(--rot,0deg));}}
.mw-reveal{opacity:0;transform:translateY(24px);transition:opacity 520ms var(--ease-soft),transform 520ms var(--ease-soft);will-change:opacity,transform;}
.mw-reveal.is-visible{opacity:1;transform:none;}

#mw-glow{position:fixed;left:0;top:0;width:100%;height:var(--mw-hdr-h,76px);overflow:hidden;z-index:9990;pointer-events:none;opacity:0;background:radial-gradient(340px circle at var(--mx,50%) var(--my,38px),rgba(107,92,231,0.16),rgba(107,92,231,0) 70%);transition:opacity 300ms var(--ease-soft);}
.mw-stickybar{position:fixed;left:50%;bottom:22px;transform:translate(-50%,130%);z-index:60;transition:transform 420ms var(--ease-soft),opacity 320ms var(--ease-soft);opacity:0;max-width:calc(100vw - 24px);}
.mw-stickybar.is-on{transform:translate(-50%,0);opacity:1;}
.mw-stickybar>div{border-radius:16px!important;border:1px solid var(--border-on-dark);}
.mw-link-underline{position:relative;}
.mw-link-underline::after{content:"";position:absolute;left:12px;right:12px;bottom:4px;height:2px;background:var(--primary-periwinkle);border-radius:2px;transform:scaleX(0);transform-origin:left;transition:transform 200ms var(--ease-soft);}
.mw-link-underline:hover::after{transform:scaleX(1);}
.mw-mobile-menu,.mw-mobile-toggle{display:none;}

@media (max-width:940px){
  .mw-desktop-nav{display:none!important;}
  .mw-mobile-toggle{display:inline-flex!important;}
  .mw-hero-grid,.mw-about-grid,.mw-contact-grid,.mw-ba-grid,.mw-helper-grid{grid-template-columns:1fr!important;gap:40px!important;}
  .mw-hero-art{height:380px!important;margin-top:8px;}
  .mw-portfolio-grid,.mw-pricing-grid,.mw-maint-grid,.mw-services-grid,.mw-trust-grid{grid-template-columns:1fr 1fr!important;}
  .mw-process-grid{grid-template-columns:1fr 1fr!important;}
  .mw-h1{font-size:42px!important;}
  .mw-h2{font-size:32px!important;}
  .mw-sec{padding:64px 0!important;}
}
@media (max-width:600px){
  .mw-portfolio-grid,.mw-pricing-grid,.mw-maint-grid,.mw-services-grid,.mw-trust-grid,.mw-process-grid{grid-template-columns:1fr!important;}
  .mw-h1{font-size:34px!important;}
  .mw-form-row{grid-template-columns:1fr!important;}
}
@media (prefers-reduced-motion:reduce){
  .mw-hero-art>div,[class*="mwFloat"]{animation:none!important;}
  .mw-reveal{opacity:1!important;transform:none!important;transition:none!important;}
  #mw-glow{display:none;}
  *{scroll-behavior:auto!important;}
}

body.mw-site .mw-pf-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-purple-glow);}
body.mw-site .mw-pf-card:hover .mw-pf-zoom{transform:scale(1.04);}
body.mw-site .mw-svc-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-card);}
body.mw-site .mw-price-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-card);}
body.mw-site .mw-maint-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-card);}
body.mw-site .mw-filter{border:1px solid var(--border-sand);background:var(--surface-white);color:var(--text-body);box-shadow:var(--shadow-sm);transition:all 200ms var(--ease-soft);}
body.mw-site .mw-filter.is-on{border-color:var(--primary-periwinkle);background:var(--primary-periwinkle);color:#fff;box-shadow:var(--shadow-purple-glow);}
body.mw-site #mw-header.is-scrolled{background:rgba(23,23,21,0.86)!important;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--border-on-dark)!important;}

body.mw-site .elementor-element-80c6d6c,
body.mw-site .elementor-element-8e3c7a5,
body.mw-site .elementor-element-ef18aff,
body.mw-site .elementor-element-5d4d557,
body.mw-site .elementor-element-ffa7945,
body.mw-site .elementor-element-85f5eb0,
body.mw-site .elementor-element-37d9029,
body.mw-site .elementor-element-9d1428a,
body.mw-site .elementor-element-e782697,
body.mw-site .elementor-element-0b76ab3,
body.mw-site .elementor-element-6b8e6ec,
body.mw-site .cw-card{transition:transform 220ms var(--ease-soft),box-shadow 220ms var(--ease-soft);}
body.mw-site .elementor-element-80c6d6c:hover,
body.mw-site .elementor-element-8e3c7a5:hover,
body.mw-site .elementor-element-ef18aff:hover,
body.mw-site .elementor-element-5d4d557:hover,
body.mw-site .elementor-element-ffa7945:hover,
body.mw-site .elementor-element-85f5eb0:hover,
body.mw-site .elementor-element-9d1428a:hover,
body.mw-site .elementor-element-e782697:hover,
body.mw-site .elementor-element-6b8e6ec:hover{box-shadow:var(--shadow-card)!important;transform:translateY(-4px);}
body.mw-site .elementor-element-37d9029:hover,
body.mw-site .elementor-element-0b76ab3:hover{transform:translateY(-4px);}
body.mw-site .cw-card:hover{box-shadow:var(--shadow-purple-glow)!important;transform:translateY(-4px)!important;}

/* ==========================================================
   KD — Warm Dark Premium :: rytmus, typografie, motiv
   ========================================================== */
.elementor-102>.e-con,.elementor-102>.elementor-element{--kd-max:1200px;}
.elementor-102 .e-con-inner{max-width:1200px!important;}
.elementor-102 h2.elementor-heading-title{font-size:clamp(30px,3.4vw,44px)!important;line-height:1.12!important;letter-spacing:-0.022em;color:var(--text-strong);}
.elementor-102 p.elementor-heading-title{color:var(--muted-taupe)!important;font-size:17px!important;line-height:1.62;}
.elementor-102 .elementor-widget-text-editor h3{font-family:var(--font-headline);font-size:24px;letter-spacing:-0.012em;line-height:1.28;}
.elementor-102 .elementor-widget-text-editor p{font-size:16px;line-height:1.62;}
.elementor-102 .elementor-button,.elementor-102 .e-button-base{border-radius:var(--kd-btn-radius)!important;min-height:48px;font-weight:600!important;font-size:15.5px!important;}
header.elementor-158 .elementor-button{border-radius:var(--kd-btn-radius)!important;}

#portfolio,#services,#pricing,#maintenance,#faq,
section#trust{padding-top:56px!important;padding-bottom:0!important;}
section#finalcta{padding-top:104px!important;padding-bottom:56px!important;}
section#contact{padding-top:56px!important;padding-bottom:88px!important;}
@media (max-width:1024px){
  section#finalcta{padding-top:76px!important;padding-bottom:44px!important;}
  section#contact{padding-top:44px!important;padding-bottom:64px!important;}
  section#trust{padding-top:44px!important;}
}
@media (max-width:640px){
  section#finalcta{padding-top:58px!important;padding-bottom:34px!important;}
  section#contact{padding-top:34px!important;padding-bottom:52px!important;}
  section#trust{padding-top:34px!important;}
}

/* --- eyebrow štítky --- */
.elementor-element-0148de1 .elementor-heading-title,
.elementor-element-c75a2c2 .elementor-heading-title,
.elementor-element-d70f510 .elementor-heading-title,
.elementor-element-bd04d81 .elementor-heading-title,
.elementor-element-9615240 .elementor-heading-title,
#hero .e-820210b-fd0c19e,#finalcta .e-2a416bf-b00a384,#contact .e-9807466-8e70ae6{color:var(--lavender-mid)!important;font-size:13px!important;font-weight:700!important;letter-spacing:0.1em!important;text-transform:uppercase;display:inline-flex;align-items:center;}
/* --- motiv dvou bratrů: dvě fialové tečky --- */
.elementor-element-0148de1 .elementor-heading-title::before,
.elementor-element-c75a2c2 .elementor-heading-title::before,
.elementor-element-d70f510 .elementor-heading-title::before,
.elementor-element-bd04d81 .elementor-heading-title::before,
.elementor-element-9615240 .elementor-heading-title::before,
#process .e-7c996f1-78b9478::before,#about .e-684dc72-d164364::before,#beforeafter .e-4c4703f-9eedf3f::before,
#hero .e-820210b-fd0c19e::before,#finalcta .e-2a416bf-b00a384::before,#contact .e-9807466-8e70ae6::before{
  content:"";flex:0 0 auto;display:inline-block;width:6px;height:6px;border-radius:2px;
  background:var(--primary-periwinkle);box-shadow:10px 0 0 0 var(--primary-periwinkle);margin-right:20px;}
#hero .e-820210b-fd0c19e::before,#finalcta .e-2a416bf-b00a384::before,#contact .e-9807466-8e70ae6::before{background:var(--lavender-mid);box-shadow:10px 0 0 0 rgba(207,197,247,0.55);}

/* ==========================================================
   HEADER + HERO (tmavé, vizuálně spojené)
   ========================================================== */
header.elementor-158 .e-con.e-parent{background:var(--ink-black)!important;border-bottom:0!important;}
header.elementor-158 .elementor-nav-menu--main .elementor-item{font-size:16px!important;font-weight:600!important;padding-top:10px;padding-bottom:10px;}
header.elementor-158 .elementor-nav-menu--dropdown{background:var(--ink-soft)!important;border:1px solid var(--border-on-dark);border-radius:16px;overflow:hidden;box-shadow:0 24px 60px rgba(0,0,0,0.45);}
header.elementor-158 .elementor-nav-menu--dropdown a{color:var(--text-on-dark)!important;}
header.elementor-158 .elementor-nav-menu--dropdown a:hover,
header.elementor-158 .elementor-nav-menu--dropdown a.elementor-item-active{background:rgba(107,92,231,0.16)!important;color:#fff!important;}
header.elementor-158 .elementor-menu-toggle{color:var(--text-on-dark)!important;background:rgba(247,242,233,0.06)!important;border-radius:11px;padding:9px;}
header.elementor-158 .elementor-element-3ea6800 .elementor-button{background:var(--primary-periwinkle)!important;color:#fff!important;font-size:15.5px!important;font-weight:600!important;min-height:48px;padding:13px 24px!important;box-shadow:0 10px 26px rgba(107,92,231,0.32);}
header.elementor-158 .elementor-element-3ea6800 .elementor-button:hover{background:var(--primary-deep)!important;}
header.elementor-158 .elementor-element-ec70af4 .elementor-heading-title{color:var(--text-on-dark)!important;font-size:23px!important;}
header.elementor-158 .elementor-element-e9994c6{background:var(--primary-periwinkle)!important;}

section#hero{background:var(--ink-black)!important;position:relative;overflow:hidden;padding-top:80px!important;padding-bottom:104px!important;}
section#hero::before{content:"";position:absolute;top:-30%;right:-8%;width:64%;height:135%;background:radial-gradient(closest-side,rgba(107,92,231,0.18),rgba(107,92,231,0) 72%);pointer-events:none;z-index:0;}
section#hero>.e-con{position:relative;z-index:1;}
#hero .e-a1b2c3d-9f8e7d6{align-items:center;gap:52px!important;}
#hero .e-f7ce9d6-7bc1d21{max-width:600px;}
#hero h1.e-37a7dee-d8ad88a{color:var(--text-on-dark)!important;font-size:clamp(38px,4.8vw,66px)!important;line-height:1.04!important;letter-spacing:-0.028em!important;max-width:13ch;}
#hero h2.e-d68380e-4e5de55{color:var(--lavender-soft)!important;font-size:clamp(38px,4.8vw,66px)!important;line-height:1.04!important;letter-spacing:-0.028em!important;}
#hero .e-e04e7c5-f96b059{gap:4px!important;margin-top:24px;margin-bottom:26px;}
#hero p.e-8ccea98-e2c49db{color:var(--text-on-dark-muted)!important;font-size:17.5px!important;line-height:1.65!important;max-width:50ch;}
#hero .e-85a676d-bbd2327{gap:14px!important;margin-top:34px;flex-wrap:wrap;}
#hero a.e-8b2a076-112106e{background:var(--primary-periwinkle)!important;color:#fff!important;font-size:16px!important;font-weight:600!important;padding:15px 30px!important;min-height:50px;border-radius:var(--kd-btn-radius)!important;box-shadow:0 14px 32px rgba(107,92,231,0.34);transition:background var(--dur-button) var(--ease-soft),transform var(--dur-button) var(--ease-soft);}
#hero a.e-8b2a076-112106e:hover{background:var(--primary-deep)!important;transform:translateY(-2px);}
#hero a.e-b79c9cf-bb007a8{background:transparent!important;color:var(--text-on-dark)!important;border:1px solid rgba(247,242,233,0.4)!important;font-size:16px!important;font-weight:600!important;padding:15px 26px!important;min-height:50px;border-radius:var(--kd-btn-radius)!important;transition:background var(--dur-button) var(--ease-soft),border-color var(--dur-button) var(--ease-soft),transform var(--dur-button) var(--ease-soft);}
#hero a.e-b79c9cf-bb007a8:hover{border-color:var(--text-on-dark)!important;background:rgba(247,242,233,0.07)!important;transform:translateY(-2px);}
#hero .e-960d36f-030c273{margin-top:30px;gap:9px 26px!important;flex-wrap:wrap;}
#hero .e-960d36f-030c273 span{color:var(--text-on-dark-faint)!important;font-size:14px!important;font-weight:600!important;display:inline-flex;align-items:center;}
#hero .e-960d36f-030c273 span::before{content:"";flex:0 0 auto;display:inline-block;width:5px;height:5px;border-radius:999px;background:var(--primary-periwinkle);margin-right:9px;}
/* jediný hero vizuál — kódovaný mwm blok, zvětšený, s fialovou září */
#hero .e-9ec5cfc-7de6e85{position:relative;flex:1 1 auto;min-width:0;}
#hero-art{display:none!important;}
#hero .elementor-element-95c99ea{position:relative;z-index:1;width:100%!important;}
#hero .elementor-element-95c99ea::before{content:"";position:absolute;inset:-10% -12%;background:radial-gradient(closest-side,rgba(107,92,231,0.30),rgba(107,92,231,0) 74%);z-index:0;pointer-events:none;}
#hero .elementor-element-95c99ea .mwm-scope{position:relative;z-index:1;}
@media (min-width:1200px){#hero .e-9ec5cfc-7de6e85{transform:scale(1.1) translateX(14px);transform-origin:center left;}}
@media (min-width:1025px) and (max-width:1199px){#hero .e-9ec5cfc-7de6e85{transform:scale(1.03);}}
@media (max-width:1024px){
  section#hero{padding-top:52px!important;padding-bottom:60px!important;}
  #hero .e-a1b2c3d-9f8e7d6{flex-direction:column!important;gap:36px!important;}
  #hero .e-f7ce9d6-7bc1d21{max-width:100%;}
  #hero .e-9ec5cfc-7de6e85{width:100%;}
}
@media (max-width:640px){
  section#hero{padding-top:36px!important;padding-bottom:40px!important;}
  #hero .e-e04e7c5-f96b059{margin-top:18px;margin-bottom:18px;}
  #hero .e-85a676d-bbd2327{margin-top:24px;}
  #hero .e-85a676d-bbd2327 a{flex:1 1 100%;}
  #hero .e-960d36f-030c273{margin-top:20px;gap:8px 18px!important;}
  #hero .elementor-element-95c99ea::before{inset:-6% -4%;}
}

/* ==========================================================
   VÝHODY — jeden světlý pás s oddělovači
   ========================================================== */
section#trust{background:var(--warm-cream)!important;}
#trust .e-677e0ec-3dcd1a2{flex-direction:row!important;flex-wrap:nowrap!important;gap:0!important;background:var(--soft-cream);border:1px solid var(--border-sand);border-radius:var(--kd-card-radius);box-shadow:0 18px 44px rgba(23,23,21,0.05);padding:8px 4px;}
#trust .e-677e0ec-3dcd1a2>.e-con{flex:1 1 0;min-width:0;padding:26px 28px!important;border-left:1px solid #E7DFD2;gap:14px!important;}
#trust .e-677e0ec-3dcd1a2>.e-con:first-child{border-left:0;}
#trust h2.e-heading-base{font-size:18px!important;line-height:1.32!important;color:var(--text-strong)!important;letter-spacing:-0.012em;font-weight:700!important;}
#trust p.e-paragraph-base{font-size:15px!important;color:var(--muted-taupe)!important;line-height:1.55!important;}
#trust .elementor-icon{color:var(--primary-periwinkle)!important;}
#trust .elementor-icon svg{fill:var(--primary-periwinkle)!important;}
#trust .elementor-icon svg path{stroke:var(--primary-periwinkle);}
@media (max-width:1024px){
  #trust .e-677e0ec-3dcd1a2{flex-wrap:wrap!important;}
  #trust .e-677e0ec-3dcd1a2>.e-con{flex:1 1 calc(50% - 1px);border-left:0;border-top:1px solid #E7DFD2;padding:22px 24px!important;}
  #trust .e-677e0ec-3dcd1a2>.e-con:nth-child(1),#trust .e-677e0ec-3dcd1a2>.e-con:nth-child(2){border-top:0;}
  #trust .e-677e0ec-3dcd1a2>.e-con:nth-child(even){border-left:1px solid #E7DFD2;}
}
@media (max-width:560px){
  #trust .e-677e0ec-3dcd1a2>.e-con{flex:1 1 100%;border-left:0!important;border-top:1px solid #E7DFD2;padding:20px 22px!important;}
  #trust .e-677e0ec-3dcd1a2>.e-con:nth-child(2){border-top:1px solid #E7DFD2;}
}
/* ==========================================================
   UKÁZKY PRÁCE — editoriální rozložení
   ========================================================== */
#portfolio{background:var(--warm-cream)!important;}
#portfolio .e-con-inner>.e-con:first-child{margin-bottom:34px;}
#portfolio .e-n-tabs-heading{gap:10px!important;margin-bottom:32px;flex-wrap:wrap;}
#portfolio .e-n-tab-title{background:var(--soft-cream)!important;border:1px solid var(--border-sand)!important;border-radius:12px!important;color:#4A453D!important;font-weight:600!important;font-size:15px!important;padding:11px 19px!important;min-height:44px;transition:all 180ms var(--ease-soft);}
#portfolio .e-n-tab-title:hover{border-color:var(--primary-periwinkle)!important;color:var(--primary-deep)!important;}
#portfolio .e-n-tab-title[aria-selected="true"]{background:var(--primary-periwinkle)!important;border-color:var(--primary-periwinkle)!important;color:#fff!important;box-shadow:0 10px 24px rgba(107,92,231,0.26);}
#portfolio .e-n-tab-title[aria-selected="true"] .e-n-tab-title-text{color:#fff!important;}
#portfolio .e-n-tabs-content>.e-con{padding:0!important;}

.elementor-element-912882f{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:stretch;}
.elementor-element-912882f>.elementor-widget{width:100%!important;max-width:none!important;margin:0!important;}
.elementor-element-912882f .cw-scope{height:100%;}
.elementor-element-912882f .cw-scope .cw-card{max-width:none!important;width:100%;height:100%;border:1px solid var(--border-sand)!important;border-radius:var(--kd-card-radius)!important;box-shadow:var(--shadow-sm)!important;}
.elementor-element-ba20e7e{grid-column:1/-1;}

/* hlavní projekt — velká dvousloupcová karta */
.cw-chalupa-scope .cw-card{display:grid!important;grid-template-columns:1.3fr 1fr;align-items:stretch;}
.cw-chalupa-scope .cw-card-top{border-bottom:0!important;border-right:1px solid var(--border-sand);padding:32px!important;display:flex;align-items:center;background:var(--warm-cream)!important;}
.cw-chalupa-scope .cw-card-pad{padding:44px 42px!important;gap:14px!important;justify-content:center;}
.cw-chalupa-scope .cw-title{font-size:clamp(26px,2.5vw,34px)!important;line-height:1.15!important;letter-spacing:-0.02em!important;}
.cw-chalupa-scope .cw-link{font-size:15.5px!important;margin-top:14px!important;}
.cw-chalupa-scope .cw-tag{font-size:12.5px!important;}

/* menší projekty — větší náhledy */
.cw-scope .cw-title{font-size:22px;letter-spacing:-0.015em;}
.cw-scope .cw-card-pad{padding:24px 24px 26px;gap:11px;}
.cw-scope .cw-card-top{padding:18px 18px 18px!important;background:var(--warm-cream)!important;}
.cw-scope .cw-link{font-size:14.5px;color:var(--primary-deep)!important;}
.cw-scope .cw-tag{background:var(--soft-cream)!important;border-color:var(--border-sand)!important;}
.cw-scope .cw-live,.cw-scope .cw-live-dot{color:var(--success)!important;}
.cw-scope .cw-live-dot{background:var(--success)!important;}
.cw-scope .cw-badge{background:var(--lavender-soft)!important;color:var(--primary-deep)!important;}
.cw-scope .cw-btn{border-radius:var(--kd-btn-radius)!important;min-height:48px;font-size:15.5px!important;font-weight:600!important;}
.cw-scope .cw-dialog{border-radius:var(--kd-card-radius)!important;}
@media (max-width:1024px){
  .elementor-element-912882f{grid-template-columns:1fr 1fr;gap:20px;}
}
@media (max-width:760px){
  .elementor-element-912882f{grid-template-columns:1fr;gap:18px;}
  .cw-chalupa-scope .cw-card{grid-template-columns:1fr!important;}
  .cw-chalupa-scope .cw-card-top{border-right:0;border-bottom:1px solid var(--border-sand)!important;padding:18px!important;}
  .cw-chalupa-scope .cw-card-pad{padding:26px 24px!important;}
}

/* ==========================================================
   SLUŽBY — asymetrické bento
   ========================================================== */
#services{background:var(--soft-cream)!important;}
#services .e-con-inner>.e-con:first-child{margin-bottom:36px;}
.elementor-element-99912f7{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr));gap:22px;}
.elementor-element-99912f7>.e-con{width:100%!important;max-width:none!important;margin:0!important;}
.elementor-element-80c6d6c,.elementor-element-8e3c7a5{grid-column:span 3;padding:38px!important;border-radius:20px!important;gap:18px!important;}
.elementor-element-ef18aff,.elementor-element-5d4d557,.elementor-element-ffa7945{grid-column:span 2;padding:30px!important;border-radius:var(--kd-card-radius)!important;gap:14px!important;}
.elementor-element-80c6d6c h3,.elementor-element-8e3c7a5 h3{font-size:26px!important;}
.elementor-element-80c6d6c p,.elementor-element-8e3c7a5 p{font-size:16.5px!important;}
#services .elementor-element-99912f7>.e-con{background:var(--warm-cream)!important;border-color:var(--border-sand)!important;}
#services .elementor-icon{color:var(--primary-periwinkle)!important;}
#services .elementor-icon svg{fill:var(--primary-periwinkle)!important;}
#services .elementor-element-0318cba,#services .elementor-element-89fc207,
#services .elementor-element-6946890,#services .elementor-element-d1c20d7,#services .elementor-element-707da06{background:var(--lavender-soft)!important;border-radius:13px!important;}
/* jedna hlavní služba tmavě */
.elementor-element-80c6d6c{background:var(--ink-soft)!important;border-color:rgba(247,242,233,0.08)!important;}
.elementor-element-80c6d6c h3{color:var(--text-on-dark)!important;}
.elementor-element-80c6d6c p{color:var(--text-on-dark-muted)!important;}
.elementor-element-80c6d6c .elementor-element-0318cba{background:rgba(107,92,231,0.2)!important;}
.elementor-element-80c6d6c .elementor-icon,.elementor-element-80c6d6c .elementor-icon svg{color:var(--lavender-mid)!important;fill:var(--lavender-mid)!important;}
@media (max-width:1024px){
  .elementor-element-99912f7{grid-template-columns:1fr 1fr;gap:18px;}
  .elementor-element-80c6d6c,.elementor-element-8e3c7a5{grid-column:span 2;padding:30px!important;}
  .elementor-element-ef18aff,.elementor-element-5d4d557,.elementor-element-ffa7945{grid-column:span 1;padding:26px!important;}
}
@media (max-width:640px){
  .elementor-element-99912f7{grid-template-columns:1fr;gap:16px;}
  .elementor-element-80c6d6c,.elementor-element-8e3c7a5,.elementor-element-ef18aff,.elementor-element-5d4d557,.elementor-element-ffa7945{grid-column:span 1;padding:26px!important;}
  .elementor-element-80c6d6c h3,.elementor-element-8e3c7a5 h3{font-size:23px!important;}
}

/* ==========================================================
   CENÍK
   ========================================================== */
#pricing{background:var(--warm-cream)!important;}
#pricing .e-con-inner>.e-con:first-child{margin-bottom:38px;}
.elementor-element-9d72ec0{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:stretch;}
.elementor-element-9d72ec0>.e-con{width:100%!important;max-width:none!important;margin:0!important;height:100%;display:flex;flex-direction:column;padding:34px 30px!important;border-radius:20px!important;}
.elementor-element-85f5eb0,.elementor-element-9d1428a{background:var(--soft-cream)!important;border:1px solid var(--border-sand)!important;}
.elementor-element-37d9029{background:var(--ink-soft)!important;border:1.5px solid var(--primary-periwinkle)!important;box-shadow:0 0 0 5px rgba(107,92,231,0.10),0 26px 56px rgba(107,92,231,0.16)!important;}
#pricing .elementor-widget-text-editor h3{font-size:27px!important;margin-bottom:8px;}
#pricing .elementor-widget-text-editor p{font-size:15.5px;}
#pricing .elementor-element-9d72ec0 .elementor-widget-icon-list{flex:1 1 auto;}
#pricing .elementor-icon-list-items{display:flex;flex-direction:column;gap:11px;}
#pricing .elementor-icon-list-item{align-items:flex-start;}
#pricing .elementor-icon-list-text{font-size:15.5px!important;line-height:1.5;}
#pricing .elementor-icon-list-icon svg{fill:var(--success)!important;width:17px;height:17px;}
#pricing .elementor-icon-list-icon i{color:var(--success)!important;}
#pricing .elementor-element-9d72ec0 .elementor-widget-button{margin-top:auto;padding-top:24px;}
#pricing .elementor-element-9d72ec0 .elementor-button{width:100%;min-height:50px;font-size:15.5px!important;}
/* doporučený tmavý balíček */
.elementor-element-37d9029 h3{color:var(--text-on-dark)!important;}
.elementor-element-37d9029 p{color:var(--text-on-dark-muted)!important;}
.elementor-element-37d9029 .elementor-icon-list-text{color:var(--text-on-dark-muted)!important;}
.elementor-element-37d9029 .elementor-icon-list-icon svg{fill:#7FB394!important;}
.elementor-element-37d9029 .elementor-button{background:var(--primary-periwinkle)!important;color:#fff!important;box-shadow:0 14px 32px rgba(107,92,231,0.34);}
.elementor-element-37d9029 .elementor-button:hover{background:var(--primary-deep)!important;}
.elementor-element-1bd549c>p:first-child span{background:var(--primary-periwinkle)!important;color:#fff!important;}
/* individuální řešení — zjednodušený pás */
.elementor-element-975dcda{background:var(--soft-cream)!important;border:1px solid var(--border-sand)!important;border-radius:var(--kd-card-radius)!important;box-shadow:none!important;padding:30px 34px!important;margin-top:24px!important;}
.elementor-element-975dcda h3{font-size:22px!important;}
.elementor-element-975dcda h3 span{color:var(--primary-deep)!important;}
.elementor-element-975dcda p{color:var(--muted-taupe)!important;font-size:15.5px!important;}
.elementor-element-975dcda .elementor-button{background:var(--primary-periwinkle)!important;color:#fff!important;min-height:48px;white-space:nowrap;}
.elementor-element-975dcda .elementor-button:hover{background:var(--primary-deep)!important;}
.elementor-element-2fac579 p{color:var(--muted-taupe)!important;font-size:14.5px!important;}
@media (max-width:1024px){
  .elementor-element-9d72ec0{grid-template-columns:1fr;gap:18px;}
  .elementor-element-975dcda{flex-direction:column!important;align-items:flex-start!important;padding:26px!important;}
}
@media (max-width:640px){
  .elementor-element-9d72ec0>.e-con{padding:28px 24px!important;}
  #pricing .elementor-widget-text-editor h3{font-size:24px!important;}
  .elementor-element-975dcda .elementor-button{width:100%;}
}
/* ==========================================================
   CENOVÁ KALKULAČKA — široký prémiový panel
   (třídy používané JS zůstávají nedotčené)
   ========================================================== */
section#helper{background:var(--warm-cream)!important;padding-top:0!important;}
#helper .e-2c14744-49a6339{max-width:1200px;}
#helper .e-4d19a5d-036d1c1{background:var(--lavender-soft)!important;border:1px solid #CFC5F7!important;border-radius:22px!important;padding:44px 46px!important;box-shadow:0 20px 52px rgba(107,92,231,0.12)!important;width:100%;max-width:none!important;}
#helper .e-f22aa22-7bb1d64{margin-bottom:22px;}
#helper .e-b832cb7-701e65a{background:var(--primary-periwinkle)!important;border-radius:13px!important;}
#helper .e-b832cb7-701e65a .elementor-icon,#helper .e-b832cb7-701e65a .elementor-icon svg{color:#fff!important;fill:#fff!important;}
#helper h2.e-5826fb9-13d19bb{font-size:27px!important;letter-spacing:-0.018em!important;line-height:1.2!important;color:var(--text-strong)!important;}
#helper p.e-0560a1b-157dfa3{font-size:16.5px!important;color:#4E4A43!important;line-height:1.55!important;}
#helper span.e-631c2e3-7ced00b{background:var(--primary-periwinkle)!important;color:#fff!important;font-size:13px!important;font-weight:700!important;letter-spacing:0.04em;padding:8px 15px!important;border-radius:999px!important;}
#helper .e-acb3430-07be28c{background:rgba(107,92,231,0.18)!important;border-radius:999px!important;height:6px!important;margin:20px 0 26px!important;}
#helper .e-66a2bc7-9cbfdba{background:var(--primary-periwinkle)!important;border-radius:999px!important;height:6px!important;}
#helper h3.e-4d5e8bf-36c6cbe{font-size:25px!important;letter-spacing:-0.018em!important;color:var(--text-strong)!important;margin-bottom:20px!important;}
#helper .e-8cf8bc2-512a973{gap:12px!important;}
#helper .e-8cf8bc2-512a973>.e-con{background:var(--soft-cream)!important;border:1px solid #D7CFF0!important;border-radius:14px!important;padding:19px 22px!important;min-height:60px;}
#helper .e-8cf8bc2-512a973>.e-con p{font-size:16.5px!important;font-weight:600!important;color:var(--text-strong)!important;}
#helper .e-8cf8bc2-512a973 .elementor-icon,#helper .e-8cf8bc2-512a973 .elementor-icon svg{color:var(--primary-periwinkle)!important;fill:var(--primary-periwinkle)!important;}
#helper .mw-q-opt:hover{border-color:var(--primary-periwinkle)!important;box-shadow:0 8px 20px rgba(107,92,231,0.18)!important;}
#helper .e-mwr10-r1{background:var(--soft-cream)!important;border:1px solid #D7CFF0!important;border-radius:16px!important;padding:30px 32px!important;gap:10px!important;}
#helper p.e-mwr11-r1{color:var(--primary-deep)!important;font-size:13px!important;font-weight:700!important;letter-spacing:0.1em;text-transform:uppercase;}
#helper h3.e-mwr12-r1{font-size:26px!important;letter-spacing:-0.018em!important;line-height:1.22!important;color:var(--text-strong)!important;}
#helper p.e-mwr13-r1{font-size:16.5px!important;line-height:1.6!important;color:#4E4A43!important;}
#helper .e-mwr14-r1{gap:16px!important;align-items:center;margin-top:8px;flex-wrap:wrap;}
#helper a.e-mwr15-112106e{background:var(--primary-periwinkle)!important;color:#fff!important;font-size:16px!important;font-weight:600!important;min-height:50px;padding:15px 28px!important;border-radius:var(--kd-btn-radius)!important;box-shadow:0 14px 32px rgba(107,92,231,0.3);}
#helper a.e-mwr15-112106e:hover{background:var(--primary-deep)!important;}
#helper p.e-mwr16-r1{color:var(--primary-deep)!important;font-weight:600!important;font-size:15.5px!important;text-decoration:underline;text-underline-offset:3px;}
@media (max-width:1024px){#helper .e-4d19a5d-036d1c1{padding:34px 30px!important;}}
@media (max-width:640px){
  #helper .e-4d19a5d-036d1c1{padding:26px 22px!important;border-radius:18px!important;}
  #helper h2.e-5826fb9-13d19bb{font-size:23px!important;}
  #helper h3.e-4d5e8bf-36c6cbe{font-size:21px!important;}
  #helper h3.e-mwr12-r1{font-size:22px!important;}
  #helper .e-mwr10-r1{padding:24px 22px!important;}
  #helper a.e-mwr15-112106e{width:100%;}
}

/* ==========================================================
   PROCES — 4 kroky se spojovací linkou
   ========================================================== */
section#process{background:var(--soft-cream)!important;}
#process .e-7d4fcdd-7760633{margin-bottom:44px;}
#process h2.e-b8ab6fb-0aaaa82{font-size:clamp(30px,3.4vw,44px)!important;line-height:1.12!important;letter-spacing:-0.022em!important;color:var(--text-strong)!important;}
#process .e-ba34fcd-b8637e2{position:relative;gap:26px!important;align-items:flex-start;}
#process .e-ba34fcd-b8637e2::before{content:"";position:absolute;top:29px;left:8%;right:8%;height:1px;background:linear-gradient(90deg,transparent,var(--border-sand) 12%,var(--border-sand) 88%,transparent);z-index:0;}
#process .e-ba34fcd-b8637e2>.e-con{position:relative;z-index:1;flex:1 1 0;min-width:0;gap:14px!important;}
#process .e-63bfc8f-0c90dfe,#process .e-9511b6d-343b329,#process .e-4b37c73-b5b9ec9,#process .e-7f077cd-5b72000{background:var(--lavender-soft)!important;border:1px solid #D7CFF0!important;border-radius:14px!important;width:58px!important;height:58px!important;min-height:58px!important;flex:0 0 auto;align-items:center;justify-content:center;box-shadow:0 0 0 8px var(--soft-cream);}
#process .e-592380f-576ead7,#process .e-7ca3970-f8a5781,#process .e-20baa58-5f8d91c,#process .e-bbc2f21-a4f8acb{color:var(--primary-deep)!important;font-size:24px!important;font-weight:800!important;line-height:1!important;}
#process h3.e-heading-base{font-size:22px!important;letter-spacing:-0.015em;color:var(--text-strong)!important;line-height:1.28!important;}
#process p.e-paragraph-base{color:var(--muted-taupe)!important;font-size:16px!important;line-height:1.6!important;}
@media (max-width:1024px){
  #process .e-ba34fcd-b8637e2{flex-wrap:wrap!important;}
  #process .e-ba34fcd-b8637e2::before{display:none;}
  #process .e-ba34fcd-b8637e2>.e-con{flex:1 1 calc(50% - 13px);}
}
@media (max-width:640px){
  #process .e-ba34fcd-b8637e2{flex-direction:column!important;gap:0!important;}
  #process .e-ba34fcd-b8637e2::before{display:block;top:12px;bottom:40px;left:29px;right:auto;width:1px;height:auto;background:linear-gradient(180deg,var(--border-sand),var(--border-sand) 90%,transparent);}
  #process .e-ba34fcd-b8637e2>.e-con{flex:1 1 100%;flex-direction:row!important;align-items:flex-start;gap:18px!important;padding-bottom:26px;}
  #process .e-ba34fcd-b8637e2>.e-con>*:not(:first-child){margin-left:0;}
}

/* ==========================================================
   PÉČE PO SPUŠTĚNÍ
   ========================================================== */
#maintenance{background:var(--warm-cream)!important;}
#maintenance .e-con-inner>.e-con:first-child{margin-bottom:34px;}
.elementor-element-fd3d77c{background:var(--soft-cream)!important;border:1px solid var(--border-sand)!important;border-radius:var(--kd-card-radius)!important;padding:28px 32px!important;position:relative;overflow:hidden;}
.elementor-element-fd3d77c::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--border-strong);}
.elementor-element-f528661{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:stretch;margin-top:22px;}
.elementor-element-f528661>.e-con{width:100%!important;max-width:none!important;margin:0!important;height:100%;display:flex;flex-direction:column;padding:32px 28px!important;border-radius:20px!important;position:relative;overflow:hidden;background:var(--soft-cream)!important;border:1px solid var(--border-sand)!important;}
.elementor-element-f528661>.e-con::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--border-strong);}
.elementor-element-0b76ab3{border:1.5px solid var(--primary-periwinkle)!important;box-shadow:0 0 0 5px rgba(107,92,231,0.09),0 22px 48px rgba(107,92,231,0.13)!important;}
.elementor-element-0b76ab3::before{background:var(--primary-periwinkle)!important;}
.elementor-element-02905f1>p:first-child span{background:var(--primary-periwinkle)!important;color:#fff!important;}
#maintenance .elementor-widget-text-editor h3{font-size:23px!important;}
#maintenance .elementor-icon-list-items{display:flex;flex-direction:column;gap:11px;}
#maintenance .elementor-icon-list-text{font-size:15.5px!important;line-height:1.5;}
#maintenance .elementor-icon-list-icon svg{fill:var(--success)!important;width:17px;height:17px;}
#maintenance .elementor-icon-list-icon i{color:var(--success)!important;}
.elementor-element-8d73110 p{color:var(--muted-taupe)!important;font-size:14.5px!important;}
@media (max-width:1024px){
  .elementor-element-f528661{grid-template-columns:1fr;gap:18px;}
}
@media (max-width:640px){
  .elementor-element-f528661>.e-con,.elementor-element-fd3d77c{padding:26px 22px!important;}
}
/* ==========================================================
   POROVNÁNÍ STARÉHO A NOVÉHO WEBU
   ========================================================== */
@media (max-width:640px){
}

/* ==========================================================
   O NÁS — dvousloupcová kompozice + brandový vizuál
   ========================================================== */
section#about{background:var(--warm-cream)!important;}
#about .e-3592c83-526c1de{align-items:center;gap:56px!important;}
#about .e-767b246-ac21eaa{flex:0 0 42%;max-width:42%;position:relative;background:linear-gradient(158deg,var(--soft-cream) 0%,var(--lavender-soft) 100%)!important;border:1px solid var(--border-sand);border-radius:22px;padding:52px 40px!important;min-height:400px;justify-content:center;align-items:center;gap:26px!important;box-shadow:0 22px 56px rgba(23,23,21,0.07);overflow:hidden;}
#about .e-767b246-ac21eaa::before{content:"";position:absolute;top:-30%;right:-25%;width:75%;height:80%;background:radial-gradient(closest-side,rgba(107,92,231,0.16),transparent 72%);pointer-events:none;}
#about .e-767b246-ac21eaa::after{content:"Kubis Brothers";position:relative;font-family:var(--font-headline);font-weight:700;font-size:14px;letter-spacing:0.16em;text-transform:uppercase;color:var(--primary-deep);}
#about .e-4b36236-6ab2942{position:relative;flex-direction:row!important;gap:20px!important;align-items:center;justify-content:center;}
#about .e-bfb6779-962f039,#about .e-ef3dfe6-a215c97{width:96px!important;height:96px!important;min-height:96px!important;flex:0 0 auto;background:var(--soft-cream)!important;border:1px solid #D7CFF0!important;border-radius:24px!important;align-items:center;justify-content:center;box-shadow:0 12px 30px rgba(107,92,231,0.14);}
#about .e-ef3dfe6-a215c97{background:var(--primary-periwinkle)!important;border-color:var(--primary-periwinkle)!important;}
#about .e-bfb6779-962f039 .elementor-icon,#about .e-bfb6779-962f039 .elementor-icon svg{color:var(--primary-deep)!important;fill:var(--primary-deep)!important;font-size:38px!important;width:38px;height:38px;}
#about .e-ef3dfe6-a215c97 .elementor-icon,#about .e-ef3dfe6-a215c97 .elementor-icon svg{color:#fff!important;fill:#fff!important;font-size:38px!important;width:38px;height:38px;}
#about .e-8981b4b-300eea9{position:relative;}
#about span.e-742e982-528e177{color:var(--muted-taupe)!important;font-size:15px!important;font-weight:600!important;background:var(--soft-cream);border:1px solid var(--border-sand);border-radius:999px;padding:9px 18px!important;display:inline-flex;align-items:center;}
#about span.e-742e982-528e177::before{content:"";display:inline-block;width:6px;height:6px;border-radius:999px;background:var(--success);margin-right:9px;}
#about .e-1a33d4b-d000507{flex:1 1 auto;min-width:0;}
#about h2.e-7fa71a1-d6b243f{font-size:clamp(30px,3.4vw,44px)!important;line-height:1.12!important;letter-spacing:-0.022em!important;color:var(--text-strong)!important;margin-top:16px;}
#about p.e-2780214-bbe3b7f{line-height:1.68!important;font-size:17px!important;color:var(--muted-taupe)!important;margin-top:16px;}
#about .e-38811c3-7c06944{margin-top:30px;gap:22px!important;}
#about .e-38811c3-7c06944>.e-con{gap:16px!important;align-items:flex-start;}
#about .e-e232f73-b9e3562,#about .e-493bd07-1c4e6d6,#about .e-1cafae3-405751d{background:var(--lavender-soft)!important;border-radius:12px!important;width:46px!important;height:46px!important;min-height:46px!important;flex:0 0 auto;align-items:center;justify-content:center;}
#about .e-38811c3-7c06944 .elementor-icon,#about .e-38811c3-7c06944 .elementor-icon svg{color:var(--primary-deep)!important;fill:var(--primary-deep)!important;}
#about h2.e-heading-base:not(.e-7fa71a1-d6b243f){font-size:19px!important;font-weight:700!important;color:var(--text-strong)!important;line-height:1.3!important;}
#about .e-38811c3-7c06944 p.e-paragraph-base{font-size:15.5px!important;color:var(--muted-taupe)!important;line-height:1.55!important;}
@media (max-width:1024px){
  #about .e-3592c83-526c1de{flex-direction:column!important;gap:36px!important;}
  #about .e-767b246-ac21eaa{flex:1 1 100%;max-width:100%;width:100%;min-height:320px;padding:44px 30px!important;}
}
@media (max-width:640px){
  #about .e-767b246-ac21eaa{min-height:270px;padding:36px 22px!important;border-radius:18px;}
  #about .e-bfb6779-962f039,#about .e-ef3dfe6-a215c97{width:76px!important;height:76px!important;min-height:76px!important;border-radius:20px!important;}
}

/* ==========================================================
   FAQ (accordion — JS třídy zachovány)
   ========================================================== */
#faq{background:var(--soft-cream)!important;}
#faq .e-con-inner>.e-con:first-child{margin-bottom:32px;}
.elementor-element-ba4885d{gap:14px!important;max-width:900px;}
.elementor-element-ba4885d>.e-con{background:var(--warm-cream)!important;border:1px solid var(--border-sand)!important;border-radius:var(--kd-card-radius)!important;padding:24px 28px!important;transition:border-color 200ms var(--ease-soft),box-shadow 200ms var(--ease-soft),background 200ms var(--ease-soft);}
.elementor-element-ba4885d>.e-con:hover{border-color:#C6B9EC!important;box-shadow:0 10px 26px rgba(107,92,231,0.08);}
.elementor-element-ba4885d>.e-con:focus-within{border-color:var(--primary-periwinkle)!important;box-shadow:0 0 0 3px rgba(107,92,231,0.16);}
.elementor-element-ba4885d .mw-faq-q{font-family:var(--font-headline)!important;font-size:18.5px!important;font-weight:700!important;line-height:1.4!important;color:var(--text-strong)!important;padding-right:40px!important;letter-spacing:-0.01em;}
.elementor-element-ba4885d .mw-faq-q:hover{color:var(--primary-deep)!important;}
.elementor-element-ba4885d .mw-faq-q::after{border-right-color:var(--primary-periwinkle)!important;border-bottom-color:var(--primary-periwinkle)!important;right:6px!important;}
.elementor-element-ba4885d .mw-faq-a>p{padding-top:14px!important;font-size:16px!important;line-height:1.66!important;color:var(--muted-taupe)!important;margin-bottom:0;}
.elementor-element-ba4885d .mw-faq-open{border-color:#C6B9EC!important;background:var(--warm-cream)!important;}
@media (max-width:640px){
  .elementor-element-ba4885d>.e-con{padding:20px 20px!important;}
  .elementor-element-ba4885d .mw-faq-q{font-size:17px!important;}
}
/* ==========================================================
   TMAVÉ ZAKONČENÍ — CTA + KONTAKT + FOOTER jako jeden celek
   ========================================================== */
section#finalcta,section#contact{background:var(--ink-black)!important;border:0!important;}
section#finalcta{position:relative;overflow:hidden;}
section#finalcta::before{content:"";position:absolute;left:50%;top:-34%;transform:translateX(-50%);width:820px;max-width:130%;height:600px;background:radial-gradient(closest-side,rgba(107,92,231,0.22),rgba(107,92,231,0) 72%);pointer-events:none;z-index:0;}
section#finalcta>.e-con{position:relative;z-index:1;}
#finalcta .e-4a7c702-3416615{max-width:820px;}
#finalcta h2.e-5f07a6e-fd270df{color:var(--text-on-dark)!important;font-size:clamp(32px,4.2vw,54px)!important;line-height:1.07!important;letter-spacing:-0.025em!important;}
#finalcta h2.e-44d7447-92de81e{color:var(--lavender-soft)!important;font-size:clamp(32px,4.2vw,54px)!important;line-height:1.07!important;letter-spacing:-0.025em!important;}
#finalcta p.e-00cee50-214a8d7{color:var(--text-on-dark-muted)!important;font-size:17.5px!important;line-height:1.65!important;max-width:60ch;margin-top:18px;}
#finalcta .e-2ab3f53-1179975{gap:14px!important;margin-top:32px;flex-wrap:wrap;}
#finalcta a.e-00e36ac-75ab370{background:var(--primary-periwinkle)!important;color:#fff!important;font-size:16px!important;font-weight:600!important;padding:15px 30px!important;min-height:50px;border-radius:var(--kd-btn-radius)!important;box-shadow:0 14px 32px rgba(107,92,231,0.34);transition:background var(--dur-button) var(--ease-soft),transform var(--dur-button) var(--ease-soft);}
#finalcta a.e-00e36ac-75ab370:hover{background:var(--primary-deep)!important;transform:translateY(-2px);}
#finalcta a.e-932d0d1-94cb5ef{background:transparent!important;color:var(--text-on-dark)!important;border:1px solid rgba(247,242,233,0.4)!important;font-size:16px!important;font-weight:600!important;padding:15px 26px!important;min-height:50px;border-radius:var(--kd-btn-radius)!important;transition:background var(--dur-button) var(--ease-soft),border-color var(--dur-button) var(--ease-soft),transform var(--dur-button) var(--ease-soft);}
#finalcta a.e-932d0d1-94cb5ef:hover{border-color:var(--text-on-dark)!important;background:rgba(247,242,233,0.07)!important;transform:translateY(-2px);}

#contact .e-4a909a2-b755166{gap:52px!important;align-items:flex-start;}
#contact .e-785b54c-5c8f80a{flex:1 1 42%;min-width:0;}
#contact h2.e-2a0f5d8-c6997af{color:var(--text-on-dark)!important;font-size:clamp(28px,3.2vw,40px)!important;line-height:1.14!important;letter-spacing:-0.022em!important;margin-top:14px;}
#contact p.e-d5136b2-220b739{color:var(--text-on-dark-muted)!important;font-size:17px!important;line-height:1.65!important;margin-top:14px;}
#contact .e-f1c2a7b-849570c{margin-top:30px;gap:16px!important;}
#contact .e-722d0e0-8cc5c1c,#contact .e-e1c6494-0840d3b{background:var(--ink-soft)!important;border:1px solid var(--border-on-dark)!important;border-radius:14px!important;padding:16px 18px!important;gap:14px!important;align-items:center;}
#contact .e-313c859-8b0434c,#contact .e-1bd8310-d549797{background:rgba(107,92,231,0.2)!important;border-radius:11px!important;width:44px!important;height:44px!important;min-height:44px!important;flex:0 0 auto;align-items:center;justify-content:center;}
#contact .elementor-icon,#contact .elementor-icon svg{color:var(--lavender-mid)!important;fill:var(--lavender-mid)!important;}
#contact p.e-0afb579-179192e,#contact p.e-725d819-b404fb0{color:#8F887C!important;font-size:12.5px!important;letter-spacing:0.08em;text-transform:uppercase;font-weight:700!important;}
#contact p.e-b0bd7ee-e14f98f,#contact p.e-dd8afbe-5f4c93c{color:var(--text-on-dark)!important;font-size:17px!important;font-weight:600!important;}
#contact .e-c8765d8-3d95ac3{margin-top:26px;gap:10px 22px!important;flex-wrap:wrap;}
#contact .e-c8765d8-3d95ac3 span{color:var(--text-on-dark-faint)!important;font-size:14px!important;font-weight:500!important;display:inline-flex;align-items:center;}
#contact .e-c8765d8-3d95ac3 span::before{content:"";flex:0 0 auto;display:inline-block;width:5px;height:5px;border-radius:999px;background:var(--success);margin-right:8px;}
/* formulář — světlá krémová karta */
#contact .e-0475cdd-9032389{flex:1 1 52%;min-width:0;background:var(--soft-cream)!important;border:1px solid var(--border-sand);border-radius:22px;padding:36px 34px!important;box-shadow:0 26px 64px rgba(0,0,0,0.35);}
#contact .elementor-field-group{margin-bottom:4px;}
#contact .elementor-field-label{color:var(--text-strong)!important;font-size:14.5px!important;font-weight:600!important;margin-bottom:7px!important;}
#contact .elementor-field-textual{background:var(--warm-cream)!important;border:1px solid var(--border-sand)!important;color:var(--text-strong)!important;border-radius:12px!important;min-height:48px;font-size:15.5px!important;padding:12px 15px!important;transition:border-color 180ms var(--ease-soft),box-shadow 180ms var(--ease-soft);}
#contact textarea.elementor-field-textual{min-height:126px;}
#contact .elementor-field-textual:focus{border-color:var(--primary-periwinkle)!important;box-shadow:0 0 0 3px rgba(107,92,231,0.18)!important;outline:none;background:#FFFDFA!important;}
#contact .elementor-field-textual::placeholder{color:#948D82!important;}
#contact .elementor-field-type-acceptance label{color:var(--muted-taupe)!important;font-size:13.5px!important;line-height:1.5;}
#contact .elementor-field-type-acceptance a{color:var(--primary-deep)!important;text-decoration:underline;text-underline-offset:2px;}
#contact .elementor-acceptance-field{accent-color:var(--primary-periwinkle);width:17px;height:17px;margin-top:2px;}
#contact .e-form__buttons{margin-top:8px;}
#contact .e-form__buttons .elementor-button{background:var(--primary-periwinkle)!important;color:#fff!important;font-size:16px!important;font-weight:600!important;min-height:52px;border-radius:var(--kd-btn-radius)!important;box-shadow:0 14px 32px rgba(107,92,231,0.28);transition:background 180ms var(--ease-soft),transform 180ms var(--ease-soft);}
#contact .e-form__buttons .elementor-button:hover{background:var(--primary-deep)!important;transform:translateY(-2px);}
#contact .elementor-message{font-size:15px;}
#contact .elementor-message-success{color:var(--success)!important;}
@media (max-width:1024px){
  #contact .e-4a909a2-b755166{flex-direction:column!important;gap:34px!important;}
  #contact .e-785b54c-5c8f80a,#contact .e-0475cdd-9032389{flex:1 1 100%;width:100%;}
}
@media (max-width:640px){
  #contact .e-0475cdd-9032389{padding:24px 20px!important;border-radius:18px;}
  #finalcta .e-2ab3f53-1179975 a{flex:1 1 100%;}
}

/* ---------- FOOTER ---------- */
footer.elementor-159 > .e-con.e-parent{background:var(--ink-black)!important;border-top:1px solid rgba(247,242,233,0.08);}
footer.elementor-159 .elementor-heading-title{color:var(--text-on-dark)!important;}
footer.elementor-159 .elementor-element-d97b5f1 .elementor-heading-title{font-size:21px!important;font-weight:800!important;}
footer.elementor-159 .elementor-element-9c2c834{background:var(--primary-periwinkle)!important;}
footer.elementor-159 .elementor-element-4aa16ca .elementor-heading-title{color:#B3AC9F!important;font-size:15px!important;font-weight:500!important;line-height:1.62!important;}
footer.elementor-159 .elementor-element-d636446 .elementor-heading-title,
footer.elementor-159 .elementor-element-0fc1e45 .elementor-heading-title,
footer.elementor-159 .elementor-element-a55f63c .elementor-heading-title{color:#8F887C!important;font-size:12.5px!important;letter-spacing:0.1em!important;font-weight:700!important;}
footer.elementor-159 .elementor-widget-text-editor,footer.elementor-159 .elementor-widget-text-editor p{color:#B3AC9F!important;font-size:14.5px!important;line-height:1.75!important;}
footer.elementor-159 .elementor-button{background:transparent!important;color:#C6BFB2!important;padding:5px 0!important;min-height:0!important;font-size:15px!important;font-weight:500!important;box-shadow:none!important;justify-content:flex-start;border-radius:0!important;transition:color 160ms var(--ease-soft);}
footer.elementor-159 .elementor-button:hover{color:var(--lavender-mid)!important;background:transparent!important;transform:none;}
footer.elementor-159 .elementor-divider-separator{border-color:rgba(247,242,233,0.1)!important;}
footer.elementor-159 .elementor-element-c5dca7c .elementor-heading-title{color:#8F887C!important;font-size:13.5px!important;font-weight:500!important;}
body.mw-site footer a:hover{color:var(--lavender-mid)!important;}

/* ---------- drobnosti ---------- */
#mwCookieBar{border-radius:16px!important;background:var(--ink-soft)!important;border:1px solid var(--border-on-dark)!important;color:var(--text-on-dark)!important;}
#mwCookieBar p{color:var(--text-on-dark-muted)!important;}
#mwCookieOk{background:var(--primary-periwinkle)!important;color:#fff!important;border-radius:11px!important;border:0!important;min-height:44px;font-weight:600;}
#mwCookieBar a{color:var(--lavender-mid)!important;}
#ast-scroll-top{background-color:var(--primary-periwinkle)!important;border-radius:12px!important;color:#fff!important;}
.mw-stickybar .mw-btn-primary{background:var(--primary-periwinkle)!important;}
.mw-stickybar .mw-btn-primary:hover{background:var(--primary-deep)!important;}
/* ==========================================================
   KD :: KOREKCE — štítky, čipy, šířka hero textu
   ========================================================== */
/* štítky na tmavém pozadí: žádné světlé pilulky */
#hero .e-820210b-fd0c19e,#finalcta .e-2a416bf-b00a384,#contact .e-9807466-8e70ae6{
  background:rgba(247,242,233,0.05)!important;border:1px solid rgba(247,242,233,0.16)!important;
  color:#D3CBF3!important;border-radius:999px!important;padding:8px 16px!important;}
/* štítky na světlém pozadí: jednotná lehče fialová pilulka */
.elementor-element-0148de1 .elementor-heading-title,
.elementor-element-c75a2c2 .elementor-heading-title,
.elementor-element-d70f510 .elementor-heading-title,
.elementor-element-bd04d81 .elementor-heading-title,
.elementor-element-9615240 .elementor-heading-title,
/* techné čipy pod tlačítky v hero */
#hero .e-960d36f-030c273 span{background:rgba(247,242,233,0.05)!important;border:1px solid rgba(247,242,233,0.14)!important;color:#C4BCAE!important;border-radius:999px!important;padding:7px 15px!important;}
#hero .e-960d36f-030c273 span::before{background:var(--lavender-mid)!important;}
/* hero text — širší sloupec, čistnější zalomení */
#hero .e-a1b2c3d-9f8e7d6{align-items:center;gap:44px!important;}
#hero .e-f7ce9d6-7bc1d21{flex:1 1 640px!important;max-width:680px!important;min-width:0;}
#hero h1.e-37a7dee-d8ad88a{font-size:clamp(38px,4.3vw,60px)!important;max-width:11.5ch;}
#hero h2.e-d68380e-4e5de55{font-size:clamp(38px,4.3vw,60px)!important;max-width:14ch;}
#hero .e-9ec5cfc-7de6e85{flex:1 1 480px!important;}
@media (min-width:1200px){#hero .e-9ec5cfc-7de6e85{transform:scale(1.06) translateX(10px);}}
@media (max-width:1024px){#hero .e-f7ce9d6-7bc1d21{flex:1 1 auto!important;max-width:100%!important;}#hero h1.e-37a7dee-d8ad88a,#hero h2.e-d68380e-4e5de55{max-width:100%;}}
/* KD :: hero flex — držet dva sloupce až do 1024px */
@media (min-width:1025px){
  #hero .e-a1b2c3d-9f8e7d6{flex-direction:row!important;flex-wrap:nowrap!important;align-items:center;gap:40px!important;}
  #hero .e-f7ce9d6-7bc1d21{flex:1 1 54%!important;max-width:660px!important;min-width:0;}
  #hero .e-9ec5cfc-7de6e85{flex:1 1 46%!important;min-width:0;}
}
@media (min-width:1200px){#hero .e-9ec5cfc-7de6e85{transform:scale(1.08) translateX(12px);}}
@media (min-width:1025px) and (max-width:1199px){#hero .e-9ec5cfc-7de6e85{transform:none;}}
/* ==========================================================
   KD :: KOREKCE 2
   ========================================================== */
/* služby — tmavá karta musí přebít obecné pravidlo */
#services .elementor-element-99912f7>.elementor-element-80c6d6c{background:var(--ink-soft)!important;border-color:rgba(247,242,233,0.09)!important;}
#services .elementor-element-99912f7>.elementor-element-80c6d6c h3{color:var(--text-on-dark)!important;}
#services .elementor-element-99912f7>.elementor-element-80c6d6c p{color:var(--text-on-dark-muted)!important;}
#services .elementor-element-99912f7>.elementor-element-80c6d6c .elementor-element-0318cba{background:rgba(107,92,231,0.22)!important;}
#services .elementor-element-99912f7>.elementor-element-80c6d6c .elementor-icon,
#services .elementor-element-99912f7>.elementor-element-80c6d6c .elementor-icon svg{color:var(--lavender-mid)!important;fill:var(--lavender-mid)!important;}

/* hlavní projekt — popis + štítky v kartě */
.cw-chalupa-scope .kd-card-blurb{margin:10px 0 4px;font-size:16.5px;line-height:1.62;color:#4E4A43;max-width:46ch;}
.cw-chalupa-scope .kd-card-chips{display:flex;flex-wrap:wrap;gap:8px;margin:6px 0 2px;}
.cw-chalupa-scope .kd-card-chips .cw-chip{font-weight:600;font-size:13px;padding:6px 13px;border-radius:999px;background:var(--warm-cream);border:1px solid var(--border-sand);color:#4E4A43;}
.cw-chalupa-scope .cw-card-pad{justify-content:center;gap:10px!important;}
@media (max-width:760px){.cw-chalupa-scope .kd-card-blurb{font-size:15.5px;}}

/* závěrečná CTA — dva nadpisy jako jeden blok */
#finalcta h2.e-5f07a6e-fd270df{margin-bottom:0!important;}
#finalcta h2.e-44d7447-92de81e{margin-top:0!important;}
#finalcta .e-4a7c702-3416615{gap:0!important;align-items:center;text-align:center;}
#finalcta .e-4a7c702-3416615>span{margin-bottom:22px;}
#finalcta p.e-00cee50-214a8d7{margin-top:20px;text-align:center;}

/* O nás — vnitřní rámeček pryč, symboly volně na ploše */
#about .e-4b36236-6ab2942{background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important;min-height:0!important;}

/* FAQ — sekce světlejší než karty */
#faq,#faq>.e-con-inner{background:var(--soft-cream)!important;}
.elementor-element-ba4885d{margin-left:auto;margin-right:auto;}

/* Footer — sevřenější */
footer.elementor-159 > .e-con.e-parent{padding-top:64px!important;padding-bottom:34px!important;}
footer.elementor-159 .elementor-element-6545b78{gap:44px!important;}
footer.elementor-159 .elementor-element-ad4ad7f{gap:44px!important;}
footer.elementor-159 .elementor-element-3a2760a,
footer.elementor-159 .elementor-element-b188e82,
footer.elementor-159 .elementor-element-6480589{gap:6px!important;}
footer.elementor-159 .elementor-element-819645c{margin-top:26px!important;margin-bottom:14px!important;}
footer.elementor-159 .elementor-element-6480589{padding-top:26px!important;}
@media (max-width:640px){footer.elementor-159 > .e-con.e-parent{padding-top:44px!important;padding-bottom:26px!important;}}

/* kalkulačka — zbytečná mezera nad progress barem */
#helper .e-f22aa22-7bb1d64{margin-bottom:14px!important;gap:14px!important;}
#helper .e-acb3430-07be28c{margin:14px 0 24px!important;}
/* KD :: ceník — cena a doplnkův údaj na jednom řádku, bez sirotků */

/* ==========================================================
   KD :: sticky CTA + drobné mobilní korekce
   ========================================================== */
.kd-sticky-inner{display:flex;align-items:center;gap:14px;background:var(--ink-soft);border-radius:16px;padding:10px 12px 10px 20px;box-shadow:0 18px 40px -12px rgba(0,0,0,0.55);max-width:100%;}
.kd-sticky-text{font-family:var(--font-body);font-weight:600;font-size:15px;color:var(--text-on-dark);white-space:nowrap;}
.mw-stickybar{max-width:calc(100vw - 20px);}
.mw-stickybar>div{border-radius:16px!important;border:1px solid var(--border-on-dark);}
@media (max-width:560px){
  .mw-stickybar{left:10px;right:10px;bottom:12px;transform:translateY(130%);width:auto;max-width:none;}
  .mw-stickybar.is-on{transform:translateY(0);}
  .kd-sticky-inner{width:100%;justify-content:space-between;gap:10px;padding:9px 9px 9px 16px;}
  .kd-sticky-text{font-size:14px;white-space:normal;line-height:1.25;}
  .kd-sticky-inner .mw-btn-md{font-size:14px;padding:11px 16px;min-height:44px;flex:0 0 auto;}
}
@media (max-width:380px){.kd-sticky-text{display:none;}.kd-sticky-inner{justify-content:center;padding:8px;}.kd-sticky-inner .mw-btn-md{width:100%;}}

/* mobil: nic nesmí přetékat */
@media (max-width:1024px){
  .elementor-102 .e-con,.elementor-102 .e-con-inner{min-width:0;}
  #process .e-ba34fcd-b8637e2>.e-con>*{min-width:0;max-width:100%;}
  #process p.e-paragraph-base,#process h3.e-heading-base{overflow-wrap:anywhere;}
}
@media (max-width:400px){
  #hero h1.e-37a7dee-d8ad88a,#hero h2.e-d68380e-4e5de55{font-size:34px!important;}
  #finalcta h2.e-5f07a6e-fd270df,#finalcta h2.e-44d7447-92de81e{font-size:30px!important;}
  .elementor-102 h2.elementor-heading-title{font-size:27px!important;}
  #trust h2.e-heading-base{font-size:17px!important;}
}
/* mobil: formulář přes celou bezpečnou šířku */
@media (max-width:640px){
  #contact .e-0475cdd-9032389{padding:22px 18px!important;}
  #contact .elementor-field-group{width:100%!important;flex-basis:100%!important;max-width:100%!important;}
}
/* tablet: nav se přepíná do dropdownu do 1024px */
@media (max-width:1024px){
  header.elementor-158 .elementor-nav-menu--main{display:none!important;}
  header.elementor-158 .elementor-menu-toggle{display:flex!important;}
}
/* KD :: dotykové cíle min. 44 px */
.cw-scope .cw-close{width:44px!important;height:44px!important;}
footer.elementor-159 .elementor-button{min-height:44px!important;padding:10px 0!important;align-items:center;}
@media (min-width:1025px){footer.elementor-159 .elementor-button{min-height:34px!important;padding:5px 0!important;}}
/* KD :: footer — čtyři sloupce v jedné řadě */
footer.elementor-159 .elementor-element-6545b78{align-items:flex-start;gap:56px!important;}
footer.elementor-159 .elementor-element-8aa433d{flex:0 0 280px;width:280px!important;}
footer.elementor-159 .elementor-element-ad4ad7f{flex:1 1 auto;display:grid!important;grid-template-columns:1fr 1fr 1.35fr;gap:40px!important;align-items:start;padding:0!important;}
footer.elementor-159 .elementor-element-3a2760a,
footer.elementor-159 .elementor-element-b188e82,
footer.elementor-159 .elementor-element-6480589{width:100%!important;max-width:none!important;padding:0!important;margin:0!important;gap:4px!important;}
footer.elementor-159 .elementor-element-6480589{padding-top:0!important;}
footer.elementor-159 .elementor-element-d636446,
footer.elementor-159 .elementor-element-0fc1e45,
footer.elementor-159 .elementor-element-a55f63c{margin-bottom:8px;}
footer.elementor-159 .elementor-element-f13f5eb p{margin:0;}
@media (max-width:1024px){
  footer.elementor-159 .elementor-element-6545b78{flex-direction:column!important;gap:38px!important;}
  footer.elementor-159 .elementor-element-8aa433d{flex:1 1 100%;width:100%!important;}
  footer.elementor-159 .elementor-element-ad4ad7f{grid-template-columns:1fr 1fr;gap:32px!important;}
}
@media (max-width:560px){
  footer.elementor-159 .elementor-element-ad4ad7f{grid-template-columns:1fr;gap:28px!important;}
}
header.elementor-158 .elementor-menu-toggle{min-width:46px;min-height:46px;}
/* ==========================================================================
   KD SYSTEM v2 — systemova vrstva (prepisuje drivejsi ad-hoc pravidla)
   1 kontejnery  2 tlacitka  3 stitky  4 rytmus sekci  5 karty
   ========================================================================== */
:root{
  --kd-container:1200px;--kd-gutter:24px;
  --kd-sec-y:96px;--kd-sec-y-tab:68px;--kd-sec-y-mob:52px;
  --kd-card-r:18px;--kd-btn-r:13px;
  --kd-gap:24px;--kd-gap-mob:16px;
  --kd-btn-h:50px;--kd-btn-h-sm:44px;
}

/* ---------- 1) KONTEJNERY: jedna sirka a jedny okraje pro vsechny sekce ---------- */
.elementor-102>.e-con,.elementor-102>section.e-con{padding-left:var(--kd-gutter)!important;padding-right:var(--kd-gutter)!important;}
.elementor-102>.e-con>.e-con,
.elementor-102>.e-con>.e-con-inner,
.elementor-102>.e-con>.e-con>.e-con-inner{width:100%!important;max-width:var(--kd-container)!important;margin-left:auto!important;margin-right:auto!important;padding-left:0!important;padding-right:0!important;}
.elementor-102 .e-con,.elementor-102 .e-con-inner{min-width:0;}
header.elementor-158 .e-con-inner,footer.elementor-159 .e-con-inner{max-width:var(--kd-container)!important;margin-inline:auto!important;}
header.elementor-158>.e-con,footer.elementor-159>.e-con{padding-left:var(--kd-gutter)!important;padding-right:var(--kd-gutter)!important;}
header.elementor-158 .elementor-element-b16c2f9,footer.elementor-159 .elementor-element-2a89c93{padding-left:0!important;padding-right:0!important;}

/* ---------- 2) TLACITKA: jeden system, opticke centrovani ---------- */
.elementor-102 .elementor-button,
.elementor-102 .e-button-base,
header.elementor-158 .elementor-button,
footer.elementor-159 .elementor-button,
.cw-btn,.kd-pf-btn,.mw-btn,.kd-opt{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  gap:8px;text-align:center;line-height:1.2!important;
  font-family:var(--font-headline);font-weight:600!important;
  border-radius:var(--kd-btn-r)!important;
  text-decoration:none!important;
  transition:background 180ms var(--ease-soft),color 180ms var(--ease-soft),
             border-color 180ms var(--ease-soft),box-shadow 180ms var(--ease-soft),transform 180ms var(--ease-soft);
}
.elementor-102 .elementor-button-content-wrapper,
header.elementor-158 .elementor-button-content-wrapper,
footer.elementor-159 .elementor-button-content-wrapper{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:8px;line-height:1.2;}
.elementor-102 .elementor-button-text,
header.elementor-158 .elementor-button-text,
footer.elementor-159 .elementor-button-text{line-height:1.2!important;display:inline-block;}
.elementor-102 .elementor-button-icon,
header.elementor-158 .elementor-button-icon{display:inline-flex;align-items:center;justify-content:center;}
/* velikosti */
.elementor-102 .elementor-button,.elementor-102 .e-button-base,
header.elementor-158 .elementor-element-3ea6800 .elementor-button{
  min-height:var(--kd-btn-h)!important;padding:0 26px!important;font-size:16px!important;}
#pricing .elementor-element-9d72ec0 .elementor-button,
#pricing .elementor-element-975dcda .elementor-button,
#maintenance .elementor-button{min-height:var(--kd-btn-h)!important;font-size:15.5px!important;padding:0 22px!important;}
#contact .e-form__buttons .elementor-button{min-height:54px!important;font-size:16px!important;padding:0 26px!important;width:100%;}
.cw-btn{min-height:var(--kd-btn-h)!important;padding:0 24px!important;font-size:15.5px!important;}
/* focus stav pro cely web */
.elementor-102 .elementor-button:focus-visible,.elementor-102 .e-button-base:focus-visible,
header.elementor-158 .elementor-button:focus-visible,footer.elementor-159 .elementor-button:focus-visible,
.cw-btn:focus-visible,.kd-pf-btn:focus-visible,.kd-opt:focus-visible,
.elementor-102 .elementor-field-textual:focus-visible{outline:2px solid var(--primary-periwinkle);outline-offset:3px;}
.elementor-102 .elementor-button:active,.elementor-102 .e-button-base:active,
header.elementor-158 .elementor-button:active,.cw-btn:active,.kd-pf-btn:active{transform:translateY(0)!important;}
/* footer jsou textove odkazy, ne tlacitka */
footer.elementor-159 .elementor-button{justify-content:flex-start!important;padding:0!important;min-height:var(--kd-btn-h-sm)!important;font-size:15px!important;font-weight:500!important;}

/* ---------- 3) STITKY NAD SEKCEMI: jedna pilulka, zadne vnorene vrstvy ---------- */
.elementor-element-119c802,.elementor-element-c91b9c9,.elementor-element-9d18da9,
.elementor-element-7ab7944,.elementor-element-5ad13ab{
  background:transparent!important;padding:0!important;border-radius:0!important;border:0!important;box-shadow:none!important;width:auto!important;}
.elementor-element-0148de1 .elementor-heading-title,
.elementor-element-c75a2c2 .elementor-heading-title,
.elementor-element-d70f510 .elementor-heading-title,
.elementor-element-bd04d81 .elementor-heading-title,
.elementor-element-9615240 .elementor-heading-title,
#process .e-7c996f1-78b9478,#about .e-684dc72-d164364,#beforeafter .e-4c4703f-9eedf3f,
#hero .e-820210b-fd0c19e,#finalcta .e-2a416bf-b00a384,#contact .e-9807466-8e70ae6{
  display:inline-flex!important;align-items:center;gap:0;min-height:34px;padding:8px 16px!important;
  border-radius:999px!important;font-size:12.5px!important;font-weight:700!important;letter-spacing:0.1em!important;
  text-transform:uppercase;line-height:1!important;width:auto!important;}

/* ---------- 4) RYTMUS SEKCI ---------- */
.elementor-102 .kd-sec-head,
#portfolio .e-con-inner>.e-con:first-child,
#services .e-con-inner>.e-con:first-child,
#pricing .e-con-inner>.e-con:first-child,
#maintenance .e-con-inner>.e-con:first-child,
#faq .e-con-inner>.e-con:first-child{gap:14px!important;margin-bottom:40px!important;}
@media (max-width:1024px){
  .elementor-102 .kd-sec-head,#portfolio .e-con-inner>.e-con:first-child,#services .e-con-inner>.e-con:first-child,
  #pricing .e-con-inner>.e-con:first-child,#maintenance .e-con-inner>.e-con:first-child,#faq .e-con-inner>.e-con:first-child,
}

/* ---------- 5) KARTY: stejne vysky v rade ---------- */
.kd-pf-grid,.elementor-element-99912f7,.elementor-element-9d72ec0,.elementor-element-f528661{align-items:stretch!important;}
.elementor-element-99912f7>.e-con,.elementor-element-9d72ec0>.e-con,.elementor-element-f528661>.e-con{height:100%;}
/* ==========================================================================
   KD SYSTEM v2 — sekce
   ========================================================================== */

/* ---------- HEADER ---------- */
header.elementor-158 .elementor-element-b16c2f9>.e-con-inner{align-items:center!important;padding-top:16px!important;padding-bottom:16px!important;gap:28px!important;}
header.elementor-158 .elementor-element-bbc6785{padding:0!important;align-items:baseline!important;height:auto!important;width:auto!important;flex:0 0 auto;}
header.elementor-158 .elementor-element-ec70af4 .elementor-heading-title{font-size:23px!important;line-height:1.1!important;display:block;}
header.elementor-158 .elementor-element-e9994c6{margin:0 0 3px 0!important;width:8px!important;min-height:8px!important;height:8px!important;border-radius:999px!important;}
header.elementor-158 .elementor-element-f7940a7{flex:1 1 auto;display:flex!important;justify-content:center;}
header.elementor-158 .elementor-nav-menu--main{display:flex;align-items:center;}
header.elementor-158 .elementor-nav-menu--main .elementor-item{display:inline-flex!important;align-items:center;justify-content:center;min-height:44px;padding:0 18px!important;line-height:1.2!important;font-size:16px!important;}
header.elementor-158 .elementor-element-3ea6800{flex:0 0 auto;}
header.elementor-158 .elementor-element-3ea6800 .elementor-button-wrapper{display:flex;align-items:center;justify-content:flex-end;}
header.elementor-158 .elementor-element-3ea6800 .elementor-button{background:var(--primary-periwinkle)!important;color:#fff!important;box-shadow:0 10px 26px rgba(107,92,231,0.30);}
header.elementor-158 .elementor-element-3ea6800 .elementor-button:hover{background:var(--primary-deep)!important;transform:translateY(-1px);}
header.elementor-158 .elementor-menu-toggle{min-width:46px;min-height:46px;border-radius:12px;align-items:center;justify-content:center;}
@media (max-width:1024px){
  header.elementor-158 .elementor-element-b16c2f9>.e-con-inner{gap:14px!important;padding-top:12px!important;padding-bottom:12px!important;}
  header.elementor-158 .elementor-element-f7940a7{flex:0 0 auto;justify-content:flex-end;margin-left:auto;}
  header.elementor-158 .elementor-element-3ea6800 .elementor-button{padding:0 20px!important;font-size:15px!important;min-height:46px!important;}
}
@media (max-width:420px){
  header.elementor-158 .elementor-element-ec70af4 .elementor-heading-title{font-size:19px!important;}
  header.elementor-158 .elementor-element-3ea6800 .elementor-button{padding:0 15px!important;font-size:14px!important;min-height:44px!important;}
  header.elementor-158 .elementor-element-bbc6785{width:auto!important;}
}

/* ---------- VYHODY (trust) ---------- */
section#trust>.e-con{padding-left:0!important;padding-right:0!important;}
#trust .e-677e0ec-3dcd1a2{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:0!important;
  background:var(--soft-cream);border:1px solid var(--border-sand);border-radius:var(--kd-card-r);
  box-shadow:0 18px 44px rgba(23,23,21,0.05);padding:0!important;overflow:hidden;align-items:stretch!important;}
#trust .e-677e0ec-3dcd1a2>.e-con{
  display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:flex-start!important;
  gap:16px!important;padding:30px 26px!important;margin:0!important;width:auto!important;height:100%;
  border-left:1px solid #E7DFD2;border-top:0;}
#trust .e-677e0ec-3dcd1a2>.e-con:first-child{border-left:0;}
#trust .e-677e0ec-3dcd1a2>.e-con>*{padding:0!important;margin:0!important;}
#trust .e-677e0ec-3dcd1a2>.e-con>*:first-child{
  flex:0 0 auto;width:44px!important;height:44px!important;min-height:44px!important;
  display:flex!important;align-items:center!important;justify-content:center!important;
  background:var(--lavender-soft);border-radius:12px;}
#trust .e-677e0ec-3dcd1a2>.e-con>*:last-child{flex:1 1 auto;min-width:0;display:flex!important;flex-direction:column!important;justify-content:center!important;gap:5px!important;}
#trust .elementor-widget-icon,#trust .elementor-icon-wrapper{margin:0!important;padding:0!important;line-height:0;}
#trust .elementor-icon{display:flex!important;align-items:center;justify-content:center;padding:0!important;color:var(--primary-deep)!important;}
#trust .elementor-icon svg{width:21px;height:21px;fill:var(--primary-deep)!important;}
#trust h2.e-heading-base{font-size:17px!important;line-height:1.3!important;font-weight:700!important;color:var(--text-strong)!important;letter-spacing:-0.01em;margin:0!important;}
#trust p.e-paragraph-base{font-size:14.5px!important;line-height:1.5!important;color:var(--muted-taupe)!important;margin:0!important;}
@media (max-width:1024px){
  #trust .e-677e0ec-3dcd1a2{grid-template-columns:repeat(2,minmax(0,1fr));}
  #trust .e-677e0ec-3dcd1a2>.e-con{padding:24px 22px!important;border-top:1px solid #E7DFD2;}
  #trust .e-677e0ec-3dcd1a2>.e-con:nth-child(1),#trust .e-677e0ec-3dcd1a2>.e-con:nth-child(2){border-top:0;}
  #trust .e-677e0ec-3dcd1a2>.e-con:nth-child(odd){border-left:0;}
}
@media (max-width:560px){
  #trust .e-677e0ec-3dcd1a2{grid-template-columns:1fr;}
  #trust .e-677e0ec-3dcd1a2>.e-con{border-left:0!important;border-top:1px solid #E7DFD2;padding:20px!important;}
  #trust .e-677e0ec-3dcd1a2>.e-con:nth-child(2){border-top:1px solid #E7DFD2;}
}

/* ---------- PORTFOLIO: jednotny grid + filtr ---------- */
#kd-portfolio-filter{display:flex;flex-direction:column;gap:0;width:100%;}
.kd-pf-filter{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 28px;}
.kd-pf-btn{
  min-height:var(--kd-btn-h-sm);padding:0 18px;font-size:15px;font-weight:600;
  background:var(--soft-cream);color:#4A453D;border:1px solid var(--border-sand);
  border-radius:12px;cursor:pointer;font-family:var(--font-headline);
  -webkit-appearance:none;appearance:none;}
.kd-pf-btn:hover{border-color:var(--primary-periwinkle);color:var(--primary-deep);}
.kd-pf-btn.is-active{background:var(--primary-periwinkle);border-color:var(--primary-periwinkle);color:#fff;box-shadow:0 10px 24px rgba(107,92,231,0.26);}
.kd-pf-empty{margin:0 0 28px;padding:26px 22px;text-align:center;
  background:var(--soft-cream);border:1px dashed var(--border-sand);border-radius:var(--kd-card-r);
  color:var(--muted-taupe);font-size:16px;font-weight:600;}
.kd-pf-empty[hidden]{display:none!important;}

#kd-portfolio-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--kd-gap)!important;
  align-items:stretch!important;width:100%;padding:0!important;}
#kd-portfolio-grid>.elementor-widget{width:100%!important;max-width:none!important;margin:0!important;}
#kd-portfolio-grid>.elementor-widget[hidden]{display:none!important;}
#kd-portfolio-grid .elementor-widget-container,#kd-portfolio-grid .cw-scope{height:100%;}
#kd-portfolio-grid .cw-card{
  max-width:none!important;width:100%!important;height:100%!important;display:flex!important;flex-direction:column!important;
  border:1px solid var(--border-sand)!important;border-radius:var(--kd-card-r)!important;
  box-shadow:var(--shadow-sm)!important;background:var(--soft-cream)!important;overflow:hidden;}
#kd-portfolio-grid .cw-card-top{
  padding:18px!important;background:var(--warm-cream)!important;border-bottom:1px solid var(--border-sand)!important;
  border-right:0!important;flex:0 0 auto;}
#kd-portfolio-grid .cw-zoom{width:100%;}
#kd-portfolio-grid .cw-browser{width:100%;}
/* jednotny pomer stran nahledu ve vsech kartach */
#kd-portfolio-grid .cw-card-top .cw-browser>div:last-child,
#kd-portfolio-grid .cw-chalupa-card-shot,
#kd-portfolio-grid .cw-cafe-card-shot,
#kd-portfolio-grid .cw-garden-card-shot,
#kd-portfolio-grid .cw-nymburk-card-shot{aspect-ratio:16/10!important;overflow:hidden;background:var(--soft-cream);}
#kd-portfolio-grid .cw-card-top img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:top center!important;display:block;}
#kd-portfolio-grid .cw-card-pad{padding:22px 22px 24px!important;display:flex!important;flex-direction:column!important;gap:10px!important;flex:1 1 auto;}
#kd-portfolio-grid .cw-title{font-size:20px!important;line-height:1.28!important;letter-spacing:-0.015em!important;margin:0!important;}
#kd-portfolio-grid .kd-card-blurb{margin:0;font-size:15px;line-height:1.55;color:var(--muted-taupe);}
#kd-portfolio-grid .kd-card-chips{display:flex;flex-wrap:wrap;gap:7px;margin:2px 0 0;}
#kd-portfolio-grid .kd-card-chips .cw-chip{font-weight:600;font-size:12.5px;padding:5px 11px;border-radius:999px;background:var(--warm-cream);border:1px solid var(--border-sand);color:#4E4A43;}
#kd-portfolio-grid .cw-link{margin-top:auto!important;padding-top:6px;font-size:14.5px!important;color:var(--primary-deep)!important;}
#kd-portfolio-grid .cw-tag{background:var(--warm-cream)!important;border-color:var(--border-sand)!important;}
#kd-portfolio-grid .cw-card:hover{transform:translateY(-4px)!important;box-shadow:var(--shadow-purple-glow)!important;}
#kd-portfolio-grid .cw-card:hover .cw-zoom{transform:scale(1.03);}
@media (max-width:1024px){#kd-portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (max-width:680px){#kd-portfolio-grid{grid-template-columns:1fr;gap:var(--kd-gap-mob)!important;}
  .kd-pf-filter{gap:8px;margin-bottom:22px;}
  .kd-pf-btn{font-size:14px;padding:0 14px;}
}
/* ---------- CENIK: jednotny cenovy blok, zarovnane rady ---------- */
#pricing .elementor-element-9d72ec0{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--kd-gap)!important;}
#pricing .elementor-element-9d72ec0>.e-con{
  display:flex!important;flex-direction:column!important;height:100%;margin:0!important;width:100%!important;max-width:none!important;
  padding:32px 28px!important;border-radius:20px!important;gap:0!important;}
#pricing .elementor-element-9d72ec0>.e-con>.elementor-widget-text-editor{flex:0 0 auto;}
#pricing .elementor-element-9d72ec0>.e-con>.elementor-widget-icon-list{flex:1 1 auto;padding-top:22px;margin-top:22px;border-top:1px solid var(--border-sand);}
#pricing .elementor-element-37d9029>.elementor-widget-icon-list{border-top-color:rgba(247,242,233,0.14)!important;}
#pricing .elementor-element-9d72ec0>.e-con>.elementor-widget-button{flex:0 0 auto;margin-top:24px;}
#pricing .elementor-element-9d72ec0 .elementor-button{width:100%;}
#pricing .elementor-widget-text-editor h3{font-size:25px!important;margin:0 0 8px!important;line-height:1.2!important;}
#pricing .elementor-widget-text-editor>p{font-size:15px!important;line-height:1.55!important;margin:0 0 18px!important;min-height:46px;}
#pricing .elementor-element-1bd549c>p:first-child{min-height:0;margin:0 0 12px!important;}
.kd-price{display:flex;flex-direction:column;align-items:flex-start;gap:4px;margin:0;}
.kd-price-label{display:inline-flex;align-items:center;min-height:24px;padding:4px 10px;border-radius:999px;
  background:var(--lavender-soft);color:var(--primary-deep);font-family:var(--font-body);
  font-size:11.5px;font-weight:700;letter-spacing:0.07em;text-transform:uppercase;line-height:1;margin-bottom:6px;}
.kd-price-now{font-family:var(--font-headline);font-weight:800;font-size:clamp(32px,2.7vw,40px);
  line-height:1.05;letter-spacing:-0.025em;color:var(--text-strong);}
.kd-price-was{font-family:var(--font-body);font-size:14px;font-weight:600;color:var(--muted-taupe);}
.kd-price-was s{text-decoration:line-through;text-decoration-thickness:1.5px;opacity:.9;}
.elementor-element-37d9029 .kd-price-label{background:rgba(107,92,231,0.24);color:#D6CEF9;}
.elementor-element-37d9029 .kd-price-now{color:var(--text-on-dark)!important;}
.elementor-element-37d9029 .kd-price-was{color:#A49D8F!important;}
@media (max-width:1024px){
  #pricing .elementor-element-9d72ec0{grid-template-columns:1fr;}
  #pricing .elementor-widget-text-editor>p{min-height:0;}
}
@media (max-width:640px){#pricing .elementor-element-9d72ec0>.e-con{padding:26px 22px!important;}}
/* individualni reseni */
.elementor-element-975dcda{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:24px!important;
  background:var(--soft-cream)!important;border:1px solid var(--border-sand)!important;border-radius:var(--kd-card-r)!important;
  box-shadow:none!important;padding:26px 30px!important;margin-top:24px!important;}
.elementor-element-975dcda h3{font-size:21px!important;margin:0 0 6px!important;}
.elementor-element-975dcda p{margin:0!important;}
.elementor-element-975dcda .elementor-widget-button{flex:0 0 auto;}
@media (max-width:900px){.elementor-element-975dcda{flex-direction:column!important;align-items:flex-start!important;}
  .elementor-element-975dcda .elementor-widget-button,.elementor-element-975dcda .elementor-button{width:100%;}}

/* ---------- HOSTING A SPRAVA: jedno pozadi, zadne vnorene vrstvy ---------- */
#maintenance{background:var(--warm-cream)!important;}
#maintenance .e-con-inner>.e-con,#maintenance .e-con-inner>.elementor-widget{background:transparent!important;}
.elementor-element-fd3d77c{
  background:var(--soft-cream)!important;border:1px solid var(--border-sand)!important;border-radius:var(--kd-card-r)!important;
  padding:26px 30px!important;box-shadow:none!important;position:relative;overflow:hidden;margin:0 0 24px!important;}
.elementor-element-fd3d77c::before{content:"";position:absolute;inset:0 auto 0 0;width:4px;height:100%;background:var(--border-strong);}
.elementor-element-fd3d77c h3{font-size:21px!important;margin:0 0 6px!important;}
.elementor-element-fd3d77c p{margin:0!important;font-size:15px!important;line-height:1.6!important;color:var(--muted-taupe)!important;}
.elementor-element-f528661{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--kd-gap)!important;margin:0!important;align-items:stretch!important;}
.elementor-element-f528661>.e-con{
  display:flex!important;flex-direction:column!important;height:100%;width:100%!important;max-width:none!important;margin:0!important;
  padding:30px 26px!important;border-radius:20px!important;position:relative;overflow:hidden;gap:0!important;
  background:var(--soft-cream)!important;border:1px solid var(--border-sand)!important;box-shadow:none!important;}
.elementor-element-f528661>.e-con::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--border-strong);}
.elementor-element-0b76ab3{border-color:var(--primary-periwinkle)!important;box-shadow:0 0 0 4px rgba(107,92,231,0.10)!important;}
.elementor-element-0b76ab3::before{background:var(--primary-periwinkle)!important;}
.elementor-element-f528661>.e-con>.elementor-widget-text-editor{flex:0 0 auto;}
.elementor-element-f528661>.e-con>.elementor-widget-icon-list{flex:1 1 auto;padding-top:20px;margin-top:20px;border-top:1px solid var(--border-sand);}
#maintenance .elementor-widget-text-editor h3{font-size:22px!important;margin:0 0 4px!important;}
#maintenance .elementor-icon-list-items{display:flex;flex-direction:column;gap:10px;}
#maintenance .elementor-icon-list-item{align-items:flex-start;}
#maintenance .elementor-icon-list-text{font-size:15px!important;line-height:1.5;color:var(--text-body)!important;}
#maintenance .elementor-icon-list-icon{margin-top:2px;}
#maintenance .elementor-icon-list-icon svg{fill:var(--success)!important;width:16px;height:16px;}
.elementor-element-8d73110{margin-top:22px!important;}
.elementor-element-8d73110 p{color:var(--muted-taupe)!important;font-size:14.5px!important;text-align:center;margin:0!important;}
@media (max-width:1024px){.elementor-element-f528661{grid-template-columns:1fr;}}
@media (max-width:640px){
  .elementor-element-f528661>.e-con,.elementor-element-fd3d77c{padding:24px 20px!important;}
}
/* ---------- VYBER BALICKU (helper) ---------- */
section#helper{background:var(--warm-cream)!important;padding-top:0!important;padding-bottom:var(--kd-sec-y)!important;}
#helper .e-4d19a5d-036d1c1{
  background:var(--soft-cream)!important;border:1px solid var(--border-sand)!important;border-radius:22px!important;
  padding:0!important;box-shadow:0 18px 44px rgba(23,23,21,0.06)!important;width:100%!important;max-width:none!important;
  gap:0!important;overflow:hidden;}
/* hlavicka panelu */
#helper .e-f22aa22-7bb1d64{
  display:flex!important;flex-direction:row!important;align-items:center!important;gap:16px!important;
  margin:0!important;padding:26px 32px!important;background:var(--lavender-soft);border-bottom:1px solid #D7CFF0;}
#helper .e-bed2ebf-6cfd649{display:flex!important;flex-direction:row!important;align-items:center!important;gap:16px!important;flex:1 1 auto;min-width:0;padding:0!important;}
#helper .e-b832cb7-701e65a{flex:0 0 auto;width:46px!important;height:46px!important;min-height:46px!important;
  background:var(--primary-periwinkle)!important;border-radius:13px!important;
  display:flex!important;align-items:center!important;justify-content:center!important;padding:0!important;}
#helper .e-b832cb7-701e65a .elementor-widget-icon,#helper .e-b832cb7-701e65a .elementor-icon-wrapper{margin:0!important;padding:0!important;line-height:0;}
#helper .e-b832cb7-701e65a .elementor-icon{display:flex!important;align-items:center;justify-content:center;padding:0!important;}
#helper .e-b832cb7-701e65a .elementor-icon svg{width:22px;height:22px;fill:#fff!important;}
#helper .e-af1e84a-eae4ffa{display:flex!important;flex-direction:column!important;gap:3px!important;padding:0!important;min-width:0;}
#helper h2.e-5826fb9-13d19bb{font-size:23px!important;line-height:1.22!important;letter-spacing:-0.018em!important;color:var(--text-strong)!important;margin:0!important;}
#helper p.e-0560a1b-157dfa3{font-size:15.5px!important;color:var(--muted-taupe)!important;line-height:1.5!important;margin:0!important;}
#helper span.e-631c2e3-7ced00b{flex:0 0 auto;display:inline-flex!important;align-items:center;justify-content:center;
  background:var(--primary-periwinkle)!important;color:#fff!important;font-size:12.5px!important;font-weight:700!important;
  letter-spacing:0.05em;padding:0 14px!important;min-height:32px;border-radius:999px!important;line-height:1!important;white-space:nowrap;}
/* progress */
#helper .e-acb3430-07be28c{margin:0!important;background:#E7E1F5!important;border-radius:0!important;height:4px!important;padding:0!important;}
#helper .e-66a2bc7-9cbfdba{background:var(--primary-periwinkle)!important;border-radius:0!important;height:4px!important;width:33%;}
/* telo */
#helper h3.e-4d5e8bf-36c6cbe{font-size:22px!important;letter-spacing:-0.015em!important;color:var(--text-strong)!important;
  margin:0!important;padding:30px 32px 18px!important;line-height:1.3!important;}
#helper .e-8cf8bc2-512a973{gap:10px!important;padding:0 32px 30px!important;margin:0!important;}
#helper .e-8cf8bc2-512a973>.e-con{
  display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:space-between!important;gap:14px!important;
  background:var(--warm-cream)!important;border:1px solid var(--border-sand)!important;border-radius:14px!important;
  padding:0 20px!important;min-height:60px!important;cursor:pointer;width:100%!important;max-width:none!important;margin:0!important;
  transition:border-color 180ms var(--ease-soft),background 180ms var(--ease-soft),box-shadow 180ms var(--ease-soft),transform 180ms var(--ease-soft);}
#helper .e-8cf8bc2-512a973>.e-con p{font-size:16px!important;font-weight:600!important;color:var(--text-strong)!important;margin:0!important;line-height:1.35!important;}
#helper .e-8cf8bc2-512a973>.e-con .elementor-widget-icon,#helper .e-8cf8bc2-512a973>.e-con .elementor-icon-wrapper{margin:0!important;padding:0!important;line-height:0;}
#helper .e-8cf8bc2-512a973>.e-con .elementor-icon{display:flex!important;align-items:center;justify-content:center;padding:0!important;
  width:30px;height:30px;border-radius:999px;background:var(--lavender-soft);
  transition:background 180ms var(--ease-soft),transform 180ms var(--ease-soft);}
#helper .e-8cf8bc2-512a973>.e-con .elementor-icon svg{width:15px;height:15px;fill:var(--primary-deep)!important;}
#helper .e-8cf8bc2-512a973>.e-con:hover,#helper .e-8cf8bc2-512a973>.e-con:focus-visible{
  border-color:var(--primary-periwinkle)!important;background:var(--soft-cream)!important;
  box-shadow:0 8px 20px rgba(107,92,231,0.14)!important;transform:translateX(3px);}
#helper .e-8cf8bc2-512a973>.e-con:hover .elementor-icon{background:var(--primary-periwinkle);transform:translateX(2px);}
#helper .e-8cf8bc2-512a973>.e-con:hover .elementor-icon svg{fill:#fff!important;}
#helper .e-8cf8bc2-512a973>.e-con:focus-visible{outline:2px solid var(--primary-periwinkle);outline-offset:3px;}
#helper .e-8cf8bc2-512a973>.e-con.kd-picked{
  border-color:var(--primary-periwinkle)!important;background:var(--lavender-soft)!important;box-shadow:0 0 0 3px rgba(107,92,231,0.18)!important;}
#helper .e-8cf8bc2-512a973>.e-con.kd-picked .elementor-icon{background:var(--primary-periwinkle);}
#helper .e-8cf8bc2-512a973>.e-con.kd-picked .elementor-icon svg{fill:#fff!important;}
/* vysledek */
#helper .e-mwr10-r1{background:var(--lavender-soft)!important;border:0!important;border-top:1px solid #D7CFF0!important;
  border-radius:0!important;padding:28px 32px 30px!important;gap:8px!important;margin:0!important;}
#helper p.e-mwr11-r1{color:var(--primary-deep)!important;font-size:12.5px!important;font-weight:700!important;letter-spacing:0.1em;text-transform:uppercase;margin:0!important;}
#helper h3.e-mwr12-r1{font-size:24px!important;letter-spacing:-0.018em!important;line-height:1.25!important;color:var(--text-strong)!important;margin:2px 0 0!important;padding:0!important;}
#helper p.e-mwr13-r1{font-size:16px!important;line-height:1.6!important;color:#4E4A43!important;margin:4px 0 0!important;max-width:62ch;}
#helper .e-mwr14-r1{display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;gap:12px!important;align-items:center!important;margin-top:18px!important;}
#helper a.e-mwr15-112106e{background:var(--primary-periwinkle)!important;color:#fff!important;font-size:16px!important;font-weight:600!important;
  min-height:var(--kd-btn-h)!important;padding:0 26px!important;border-radius:var(--kd-btn-r)!important;box-shadow:0 12px 28px rgba(107,92,231,0.28);}
#helper a.e-mwr15-112106e:hover{background:var(--primary-deep)!important;transform:translateY(-2px);}
#helper a.kd-helper-consult{display:inline-flex;align-items:center;justify-content:center;min-height:var(--kd-btn-h);padding:0 24px;
  border-radius:var(--kd-btn-r);border:1px solid var(--primary-periwinkle);color:var(--primary-deep);
  font-family:var(--font-headline);font-weight:600;font-size:16px;background:transparent;line-height:1.2;
  transition:background 180ms var(--ease-soft),transform 180ms var(--ease-soft);}
#helper a.kd-helper-consult:hover{background:rgba(107,92,231,0.10);transform:translateY(-2px);}
#helper p.e-mwr16-r1{color:var(--primary-deep)!important;font-weight:600!important;font-size:15px!important;
  text-decoration:underline;text-underline-offset:3px;cursor:pointer;margin:0!important;
  display:inline-flex;align-items:center;min-height:var(--kd-btn-h-sm);padding:0 4px;}
@media (max-width:640px){
  #helper .e-f22aa22-7bb1d64{flex-direction:column!important;align-items:flex-start!important;gap:12px!important;padding:22px 20px!important;}
  #helper h3.e-4d5e8bf-36c6cbe{padding:24px 20px 14px!important;font-size:20px!important;}
  #helper .e-8cf8bc2-512a973{padding:0 20px 24px!important;}
  #helper .e-8cf8bc2-512a973>.e-con{padding:14px 16px!important;min-height:auto!important;}
  #helper .e-mwr10-r1{padding:24px 20px!important;}
  #helper h3.e-mwr12-r1{font-size:21px!important;}
  #helper .e-mwr14-r1 a{width:100%;}
}
/* ---------- KD v2: zrusit drivejsi "dominantni" kartu, vsechny stejne ---------- */
#kd-portfolio-grid>.elementor-element-ba20e7e{grid-column:auto!important;}
#kd-portfolio-grid .cw-chalupa-scope .cw-card{display:flex!important;grid-template-columns:none!important;flex-direction:column!important;}
#kd-portfolio-grid .cw-chalupa-scope .cw-card-top{border-right:0!important;border-bottom:1px solid var(--border-sand)!important;padding:18px!important;display:block!important;background:var(--warm-cream)!important;}
#kd-portfolio-grid .cw-chalupa-scope .cw-card-pad{padding:22px 22px 24px!important;justify-content:flex-start!important;gap:10px!important;}
#kd-portfolio-grid .cw-chalupa-scope .cw-title{font-size:20px!important;}
#kd-portfolio-grid .cw-chalupa-scope .kd-card-blurb{font-size:15px!important;line-height:1.55!important;color:var(--muted-taupe)!important;max-width:none!important;margin:0!important;}
#kd-portfolio-grid .cw-chalupa-scope .cw-link{font-size:14.5px!important;margin-top:auto!important;}
/* hlavicka karty: pevny pomer stran pro vsechny nahledy */
#kd-portfolio-grid .cw-card-top>.cw-zoom>.cw-browser{display:flex;flex-direction:column;}
#kd-portfolio-grid .cw-card-top .cw-bar{flex:0 0 auto;}
#kd-portfolio-grid .cw-card-top .cw-browser>*:not(.cw-bar){flex:1 1 auto;aspect-ratio:16/10;overflow:hidden;}
#kd-portfolio-grid .cw-row{min-height:26px;}
/* ---------- KD v2: stejne vysky napric radami ---------- */
#kd-portfolio-grid,
#pricing .elementor-element-9d72ec0,
.elementor-element-f528661{grid-auto-rows:1fr!important;}
#kd-portfolio-grid>.elementor-widget,
#pricing .elementor-element-9d72ec0>.e-con,
.elementor-element-f528661>.e-con{min-height:0;}

/* ---------- SLUZBY: bento pod novym kontejnerem ---------- */
#services .elementor-element-99912f7{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr));gap:var(--kd-gap)!important;align-items:stretch!important;}
#services .elementor-element-99912f7>.e-con{
  display:flex!important;flex-direction:column!important;gap:16px!important;height:100%;margin:0!important;
  width:100%!important;max-width:none!important;
  background:var(--warm-cream)!important;border:1px solid var(--border-sand)!important;}
.elementor-element-80c6d6c,.elementor-element-8e3c7a5{grid-column:span 3;padding:34px!important;border-radius:20px!important;}
.elementor-element-ef18aff,.elementor-element-5d4d557,.elementor-element-ffa7945{grid-column:span 2;padding:28px!important;border-radius:var(--kd-card-r)!important;}
#services .elementor-element-99912f7>.e-con>.e-con:first-child{
  flex:0 0 auto;width:48px!important;height:48px!important;min-height:48px!important;padding:0!important;
  display:flex!important;align-items:center!important;justify-content:center!important;
  background:var(--lavender-soft)!important;border-radius:13px!important;}
#services .elementor-widget-icon,#services .elementor-icon-wrapper{margin:0!important;padding:0!important;line-height:0;}
#services .elementor-icon{display:flex!important;align-items:center;justify-content:center;padding:0!important;}
#services .elementor-icon svg{width:22px;height:22px;fill:var(--primary-deep)!important;}
#services .elementor-widget-text-editor h3{font-size:21px!important;margin:0 0 8px!important;line-height:1.28!important;}
#services .elementor-widget-text-editor p{margin:0!important;font-size:15.5px!important;line-height:1.6!important;color:var(--muted-taupe)!important;}
.elementor-element-80c6d6c h3,.elementor-element-8e3c7a5 h3{font-size:24px!important;}
.elementor-element-80c6d6c p,.elementor-element-8e3c7a5 p{font-size:16px!important;}
#services .elementor-element-99912f7>.elementor-element-80c6d6c{background:var(--ink-soft)!important;border-color:rgba(247,242,233,0.09)!important;}
#services .elementor-element-99912f7>.elementor-element-80c6d6c h3{color:var(--text-on-dark)!important;}
#services .elementor-element-99912f7>.elementor-element-80c6d6c p{color:var(--text-on-dark-muted)!important;}
#services .elementor-element-99912f7>.elementor-element-80c6d6c>.e-con:first-child{background:rgba(107,92,231,0.22)!important;}
#services .elementor-element-99912f7>.elementor-element-80c6d6c .elementor-icon svg{fill:var(--lavender-mid)!important;}
@media (max-width:1024px){
  #services .elementor-element-99912f7{grid-template-columns:repeat(2,minmax(0,1fr));}
  .elementor-element-80c6d6c,.elementor-element-8e3c7a5{grid-column:span 2;padding:28px!important;}
  .elementor-element-ef18aff,.elementor-element-5d4d557,.elementor-element-ffa7945{grid-column:span 1;padding:24px!important;}
}
@media (max-width:640px){
  #services .elementor-element-99912f7{grid-template-columns:1fr;gap:var(--kd-gap-mob)!important;}
  .elementor-element-80c6d6c,.elementor-element-8e3c7a5,.elementor-element-ef18aff,.elementor-element-5d4d557,.elementor-element-ffa7945{grid-column:span 1;padding:24px!important;}
  .elementor-element-80c6d6c h3,.elementor-element-8e3c7a5 h3{font-size:21px!important;}
}

/* ---------- PROCES ---------- */
#process .e-ba34fcd-b8637e2{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--kd-gap)!important;position:relative;align-items:start!important;}
#process .e-ba34fcd-b8637e2::before{content:"";position:absolute;top:29px;left:12%;right:12%;height:1px;
  background:linear-gradient(90deg,transparent,var(--border-sand) 10%,var(--border-sand) 90%,transparent);z-index:0;}
#process .e-ba34fcd-b8637e2>.e-con{position:relative;z-index:1;display:flex!important;flex-direction:column!important;gap:14px!important;min-width:0;width:100%!important;max-width:none!important;margin:0!important;}
#process .e-63bfc8f-0c90dfe,#process .e-9511b6d-343b329,#process .e-4b37c73-b5b9ec9,#process .e-7f077cd-5b72000{
  width:58px!important;height:58px!important;min-height:58px!important;flex:0 0 auto;padding:0!important;
  display:flex!important;align-items:center!important;justify-content:center!important;
  background:var(--lavender-soft)!important;border:1px solid #D7CFF0!important;border-radius:14px!important;
  box-shadow:0 0 0 8px var(--soft-cream);}
#process .e-592380f-576ead7,#process .e-7ca3970-f8a5781,#process .e-20baa58-5f8d91c,#process .e-bbc2f21-a4f8acb{
  color:var(--primary-deep)!important;font-size:23px!important;font-weight:800!important;line-height:1!important;margin:0!important;}
#process h3.e-heading-base{font-size:20px!important;margin:0!important;line-height:1.3!important;}
#process p.e-paragraph-base{font-size:15.5px!important;line-height:1.6!important;margin:0!important;}
@media (max-width:1024px){
  #process .e-ba34fcd-b8637e2{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:32px!important;}
  #process .e-ba34fcd-b8637e2::before{display:none;}
}
@media (max-width:600px){
  #process .e-ba34fcd-b8637e2{grid-template-columns:1fr;row-gap:0!important;}
  #process .e-ba34fcd-b8637e2::before{display:block;top:14px;bottom:46px;left:28px;right:auto;width:1px;height:auto;
    background:linear-gradient(180deg,var(--border-sand),var(--border-sand) 92%,transparent);}
  #process .e-ba34fcd-b8637e2>.e-con{display:grid!important;grid-template-columns:58px 1fr;column-gap:18px!important;row-gap:4px!important;padding-bottom:26px;}
  #process .e-ba34fcd-b8637e2>.e-con>*:first-child{grid-row:1/span 2;}
  #process .e-ba34fcd-b8637e2>.e-con>h3{align-self:center;}
}

/* ---------- FAQ / O NAS / POROVNANI: sjednocene odsazeni ---------- */
#about .e-3592c83-526c1de{gap:52px!important;align-items:center!important;}
#faq .elementor-element-ba4885d{max-width:900px;margin-inline:auto;}
/* KD v2 :: drobne korekce po testu */
.kd-pf-btn.is-active:hover,.kd-pf-btn.is-active:focus{background:var(--primary-deep)!important;color:#fff!important;border-color:var(--primary-deep)!important;}
/* logo lockup — tecka vzdy vedle nazvu */
header.elementor-158 .elementor-element-bbc6785{flex-direction:row!important;align-items:baseline!important;gap:6px!important;}
header.elementor-158 .elementor-element-e9994c6{width:8px!important;height:8px!important;min-height:8px!important;
  border-radius:999px!important;margin:0 0 3px 0!important;flex:0 0 auto;}
/* prazdny stav zabere plnou sirku gridu */
.kd-pf-empty{grid-column:1/-1;}
/* KD v2 :: cenik — spravna velikost popisu (oprava po testu) */
#pricing .elementor-element-9d72ec0 .elementor-widget-text-editor h3{font-size:25px!important;margin:0 0 8px!important;line-height:1.2!important;}
#pricing .elementor-element-9d72ec0 .elementor-widget-text-editor p{font-size:15px!important;line-height:1.55!important;margin:0 0 18px!important;font-family:var(--font-body)!important;font-weight:400!important;letter-spacing:normal!important;}
#pricing .elementor-element-9d72ec0 .elementor-widget-text-editor p span{font-size:inherit!important;}
#pricing .elementor-element-1bd549c .elementor-widget-container>p:first-child{margin:0 0 12px!important;}
#pricing .elementor-element-1bd549c .elementor-widget-container>p:first-child span{font-size:12px!important;font-weight:700!important;padding:5px 12px!important;border-radius:999px!important;}
#pricing .kd-price-now{font-size:clamp(32px,2.7vw,40px)!important;}
/* jednotna vyska popisu, aby ceny byly v jedne linii */
@media (min-width:1025px){#pricing .elementor-element-9d72ec0 .elementor-widget-text-editor p{min-height:48px;}}
/* filtrovaci chipy — sjednoceni s ostatnimi ovladacimi prvky */
.kd-pf-btn{font-size:15.5px!important;min-height:46px!important;}
/* KD v2 :: cenik — rezervovane misto pro stitek, aby nadpisy/ceny/seznamy sedely v jedne linii */
@media (min-width:1025px){
  #pricing .elementor-element-85f5eb0 .elementor-widget-text-editor .elementor-widget-container::before,
  #pricing .elementor-element-9d1428a .elementor-widget-text-editor .elementor-widget-container::before{
    content:"";display:block;height:48px;margin-bottom:12px;}
}
/* KD v2 :: hosting — neutralni akcent + zarovnani karet pece */
.elementor-element-fd3d77c::before{background:var(--primary-periwinkle)!important;opacity:.55;}
.elementor-element-f528661>.e-con::before{background:#DDD5C6!important;}
@media (min-width:1025px){
  .elementor-element-e782697 .elementor-widget-text-editor .elementor-widget-container::before,
  .elementor-element-6b8e6ec .elementor-widget-text-editor .elementor-widget-container::before{
    content:"";display:block;height:40px;margin-bottom:10px;}
}
.elementor-element-02905f1 .elementor-widget-container>p:first-child{margin:0 0 10px!important;}
#maintenance .elementor-widget-text-editor p{font-family:var(--font-body)!important;}
#maintenance .elementor-widget-text-editor p:nth-of-type(1) span{font-size:11px!important;}
/* KD v2 :: posledni srovnani */
#trust .e-677e0ec-3dcd1a2{grid-auto-rows:1fr;}
/* mobilni dropdown nesmi presahnout viewport */
header.elementor-158 .elementor-nav-menu--dropdown,
header.elementor-158 .elementor-nav-menu__container.elementor-nav-menu--dropdown{max-width:100vw!important;box-sizing:border-box;}
header.elementor-158 .elementor-nav-menu--dropdown .elementor-nav-menu{max-width:100%;}
/* KD v2 :: portfolio — 4 projekty = vyvazena mrizka 2x2 (zadny osamely radek) */
#kd-portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
@media (max-width:680px){#kd-portfolio-grid{grid-template-columns:1fr!important;}}
/* KD v2 :: FAQ — cela polozka je ovladaci prvek */
.elementor-element-ba4885d>.e-con{cursor:pointer;}
.elementor-element-ba4885d .mw-faq-q{outline-offset:4px;}
.elementor-element-ba4885d .mw-faq-q:focus-visible{outline:2px solid var(--primary-periwinkle);}
.elementor-element-ba4885d>.e-con:has(.mw-faq-q:focus-visible){border-color:var(--primary-periwinkle)!important;box-shadow:0 0 0 3px rgba(107,92,231,0.16)!important;}
/* ==========================================================================
   KD v2 :: FAQ — nativni <details> (bez JS, plne pristupne)
   ========================================================================== */
.elementor-element-ba4885d>.e-con{padding:0!important;overflow:hidden;}
.kd-faq{width:100%;}
.kd-faq>.kd-faq-q{
  list-style:none;cursor:pointer;position:relative;
  display:flex;align-items:center;min-height:64px;
  padding:18px 56px 18px 28px;margin:0;
  font-family:var(--font-headline);font-size:18px;font-weight:700;line-height:1.4;
  letter-spacing:-0.01em;color:var(--text-strong);
  transition:color 160ms var(--ease-soft);}
.kd-faq>.kd-faq-q::-webkit-details-marker{display:none;}
.kd-faq>.kd-faq-q::marker{content:"";}
.kd-faq>.kd-faq-q::after{
  content:"";position:absolute;right:26px;top:50%;width:10px;height:10px;
  border-right:2.5px solid var(--primary-periwinkle);border-bottom:2.5px solid var(--primary-periwinkle);
  transform:translateY(-70%) rotate(45deg);transition:transform 220ms var(--ease-soft);}
.kd-faq[open]>.kd-faq-q::after{transform:translateY(-30%) rotate(225deg);}
.kd-faq>.kd-faq-q:hover{color:var(--primary-deep);}
.kd-faq>.kd-faq-q:focus-visible{outline:2px solid var(--primary-periwinkle);outline-offset:-3px;border-radius:var(--kd-card-r);}
.kd-faq-body{padding:0 56px 22px 28px;}
.kd-faq-body .kd-faq-a{margin:0 0 10px;font-size:16px;line-height:1.66;color:var(--muted-taupe);}
.kd-faq-body .kd-faq-a:last-child{margin-bottom:0;}
.elementor-element-ba4885d>.e-con:has(.kd-faq[open]){border-color:#C6B9EC!important;}
@media (max-width:640px){
  .kd-faq>.kd-faq-q{font-size:16.5px;padding:16px 48px 16px 20px;min-height:60px;}
  .kd-faq-body{padding:0 48px 18px 20px;}
  .kd-faq-body .kd-faq-a{font-size:15.5px;}
}
/* ==========================================================================
   KD v2 :: portfolio filtr bez JS (radio + :has) — spolehlive jako <details>
   ========================================================================== */
.kd-pf-radio{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none;}
.kd-pf-filter{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 28px;}
label.kd-pf-btn{
  display:inline-flex;align-items:center;justify-content:center;
  min-height:46px;padding:0 18px;font-size:15.5px;font-weight:600;
  font-family:var(--font-headline);line-height:1.2;
  background:var(--soft-cream);color:#4A453D;border:1px solid var(--border-sand);
  border-radius:12px;cursor:pointer;user-select:none;
  transition:background 180ms var(--ease-soft),color 180ms var(--ease-soft),border-color 180ms var(--ease-soft),box-shadow 180ms var(--ease-soft);}
label.kd-pf-btn:hover{border-color:var(--primary-periwinkle);color:var(--primary-deep);}
.kd-pf-radio:checked + label.kd-pf-btn{
  background:var(--primary-periwinkle);border-color:var(--primary-periwinkle);color:#fff;
  box-shadow:0 10px 24px rgba(107,92,231,0.26);}
.kd-pf-radio:focus-visible + label.kd-pf-btn{outline:2px solid var(--primary-periwinkle);outline-offset:3px;}
.kd-pf-empty{display:none;margin:0 0 28px;padding:26px 22px;text-align:center;
  background:var(--soft-cream);border:1px dashed var(--border-sand);border-radius:var(--kd-card-r);
  color:var(--muted-taupe);font-size:16px;font-weight:600;}

/* filtrovani: skryt karty, ktere neodpovidaji zvolene kategorii */
#kd-portfolio-filter:has(#kdpf-ubytovani:checked) ~ #kd-portfolio-grid > .kd-pf-item:not(.kd-cat-ubytovani),
#kd-portfolio-filter:has(#kdpf-gastro:checked)    ~ #kd-portfolio-grid > .kd-pf-item:not(.kd-cat-gastro),
#kd-portfolio-filter:has(#kdpf-zahrady:checked)   ~ #kd-portfolio-grid > .kd-pf-item:not(.kd-cat-zahrady),
#kd-portfolio-filter:has(#kdpf-portfolio:checked) ~ #kd-portfolio-grid > .kd-pf-item:not(.kd-cat-portfolio),
#kd-portfolio-filter:has(#kdpf-sluzby:checked)    ~ #kd-portfolio-grid > .kd-pf-item{display:none!important;}
/* prazdny stav pouze u kategorie bez ukazky */
#kd-portfolio-filter:has(#kdpf-sluzby:checked) .kd-pf-empty{display:block;}
/* jedina karta zabere prirozenou sirku sloupce, mrizka se nerozbije */
#kd-portfolio-grid{grid-auto-rows:auto!important;}
#kd-portfolio-grid>.kd-pf-item{height:100%;}
@media (max-width:680px){.kd-pf-filter{gap:8px;margin-bottom:22px;}label.kd-pf-btn{font-size:14.5px;padding:0 14px;min-height:44px;}}
/* KD v2 :: aktivni stav filtru — nezavisly na sourozenecke strukture */
.kd-pf-filter:has(#kdpf-all:checked) label[for="kdpf-all"],
.kd-pf-filter:has(#kdpf-ubytovani:checked) label[for="kdpf-ubytovani"],
.kd-pf-filter:has(#kdpf-gastro:checked) label[for="kdpf-gastro"],
.kd-pf-filter:has(#kdpf-zahrady:checked) label[for="kdpf-zahrady"],
.kd-pf-filter:has(#kdpf-portfolio:checked) label[for="kdpf-portfolio"],
.kd-pf-filter:has(#kdpf-sluzby:checked) label[for="kdpf-sluzby"]{
  background:var(--primary-periwinkle)!important;border-color:var(--primary-periwinkle)!important;color:#fff!important;
  box-shadow:0 10px 24px rgba(107,92,231,0.26);}
/* KD v2 :: portfolio — stejne vysky karet i po filtrovani */
#kd-portfolio-grid{grid-auto-rows:1fr!important;align-items:stretch!important;}
#kd-portfolio-grid>.kd-pf-item{height:100%;min-height:0;}
#kd-portfolio-grid>.kd-pf-item>.elementor-widget-container,
#kd-portfolio-grid>.kd-pf-item .cw-scope{height:100%;}
/* ==========================================================================
   KD v3 :: 1) JEDEN SYSTEM HLAVICEK SEKCI
   ========================================================================== */
:root{
  --kd-h2:clamp(32px,3.6vw,48px);
  --kd-h2-lh:1.08;
  --kd-lead:17px;
  --kd-lead-max:660px;
  --kd-head-gap:14px;      /* stitek -> nadpis -> popis */
  --kd-head-mb:44px;       /* hlavicka -> obsah sekce */
  --kd-sec-pad:96px;
  --kd-sec-pad-tab:76px;
  --kd-sec-pad-mob:60px;
}

/* --- stitek: jeden vzhled pro celou stranku --- */
.elementor-element-0148de1 .elementor-heading-title,
.elementor-element-c75a2c2 .elementor-heading-title,
.elementor-element-d70f510 .elementor-heading-title,
.elementor-element-bd04d81 .elementor-heading-title,
.elementor-element-9615240 .elementor-heading-title,
#process .e-7c996f1-78b9478,
#about .e-684dc72-d164364{
  display:inline-flex!important;align-items:center;justify-content:center;
  min-height:32px!important;padding:7px 15px!important;
  border-radius:999px!important;background:var(--lavender-soft)!important;
  color:var(--primary-deep)!important;
  font-family:var(--font-body)!important;font-size:12.5px!important;font-weight:700!important;
  letter-spacing:0.1em!important;line-height:1!important;text-transform:uppercase;
  width:auto!important;max-width:max-content;}
#hero .e-820210b-fd0c19e,#finalcta .e-2a416bf-b00a384,#contact .e-9807466-8e70ae6{
  min-height:32px!important;padding:7px 15px!important;font-size:12.5px!important;}

/* --- H2: jedna velikost, vaha a line-height --- */
.elementor-102 h2.elementor-heading-title,
#process h2.e-b8ab6fb-0aaaa82,
#about h2.e-7fa71a1-d6b243f,
#faq h2.elementor-heading-title,
.kd-midcta-title h2{
  font-family:var(--font-headline)!important;
  font-size:var(--kd-h2)!important;line-height:var(--kd-h2-lh)!important;
  font-weight:700!important;letter-spacing:-0.025em!important;
  color:var(--text-strong)!important;margin:0!important;max-width:22ch;}
#finalcta h2.e-5f07a6e-fd270df,#finalcta h2.e-44d7447-92de81e{
  font-size:var(--kd-h2)!important;line-height:var(--kd-h2-lh)!important;letter-spacing:-0.025em!important;max-width:none;}
#contact h2.e-2a0f5d8-c6997af{font-size:clamp(28px,3vw,40px)!important;line-height:1.12!important;max-width:20ch;}

/* --- popis pod nadpisem --- */
.elementor-102 p.elementor-heading-title,
#about p.e-2780214-bbe3b7f,
.kd-midcta-lead p{
  font-size:var(--kd-lead)!important;line-height:1.6!important;
  color:var(--muted-taupe)!important;margin:0!important;max-width:var(--kd-lead-max);}

/* --- hlavicka jako blok: stejne mezery vsude --- */
#portfolio .e-con-inner>.e-con:first-child,
#services .e-con-inner>.e-con:first-child,
#pricing  .e-con-inner>.e-con:first-child,
#maintenance .e-con-inner>.e-con:first-child,
#faq .e-con-inner>.e-con:first-child,
#process .e-7d4fcdd-7760633{
  display:flex!important;flex-direction:column!important;
  gap:var(--kd-head-gap)!important;margin:0 0 var(--kd-head-mb)!important;
  align-items:flex-start!important;text-align:left!important;width:100%!important;max-width:none!important;}

/* --- zarovnani podle sekce --- */
#pricing .e-con-inner>.e-con:first-child,
#faq .e-con-inner>.e-con:first-child{align-items:center!important;text-align:center!important;}
#pricing .e-con-inner>.e-con:first-child h2,#faq .e-con-inner>.e-con:first-child h2{max-width:24ch;margin-inline:auto!important;}
#pricing .e-con-inner>.e-con:first-child p{margin-inline:auto!important;}
#finalcta .e-4a7c702-3416615{align-items:center!important;text-align:center!important;}

/* nadpis Hostingu nesmi byt v uzkem sloupci */
#maintenance .e-con-inner>.e-con:first-child h2{max-width:24ch!important;}
#maintenance .e-con-inner>.e-con:first-child p{max-width:var(--kd-lead-max)!important;}

@media (max-width:1024px){
  :root{--kd-head-mb:34px;}
}
@media (max-width:640px){
  :root{--kd-h2:clamp(28px,7.4vw,36px);--kd-lead:16px;--kd-head-gap:12px;--kd-head-mb:28px;}
  .elementor-102 h2.elementor-heading-title,#process h2.e-b8ab6fb-0aaaa82,#about h2.e-7fa71a1-d6b243f{max-width:100%;}
}

/* ==========================================================================
   KD v3 :: 2) JEDNOTNE VERTIKALNI ROZESTUPY
   ========================================================================== */
#portfolio,#services,#pricing,#maintenance,#faq,
section#helper,section#process,section#about,#midcta{
  padding-top:var(--kd-sec-pad)!important;padding-bottom:var(--kd-sec-pad)!important;}
section#trust{padding-top:60px!important;padding-bottom:0!important;}
section#helper{padding-top:0!important;}          /* navazuje na cenik */
#midcta{padding-top:56px!important;padding-bottom:56px!important;}
section#finalcta{padding-top:var(--kd-sec-pad)!important;padding-bottom:56px!important;}
section#contact{padding-top:56px!important;padding-bottom:88px!important;}
@media (max-width:1024px){
  #portfolio,#services,#pricing,#maintenance,#faq,section#process,section#about{
    padding-top:var(--kd-sec-pad-tab)!important;padding-bottom:var(--kd-sec-pad-tab)!important;}
  section#helper{padding-bottom:var(--kd-sec-pad-tab)!important;}
  #midcta{padding-top:48px!important;padding-bottom:48px!important;}
  section#finalcta{padding-top:var(--kd-sec-pad-tab)!important;padding-bottom:44px!important;}
  section#contact{padding-top:44px!important;padding-bottom:64px!important;}
  section#trust{padding-top:48px!important;}
}
@media (max-width:640px){
  #portfolio,#services,#pricing,#maintenance,#faq,section#process,section#about{
    padding-top:var(--kd-sec-pad-mob)!important;padding-bottom:var(--kd-sec-pad-mob)!important;}
  section#helper{padding-bottom:var(--kd-sec-pad-mob)!important;}
  #midcta{padding-top:40px!important;padding-bottom:40px!important;}
  section#finalcta{padding-top:var(--kd-sec-pad-mob)!important;padding-bottom:34px!important;}
  section#contact{padding-top:34px!important;padding-bottom:52px!important;}
  section#trust{padding-top:36px!important;}
}
/* ==========================================================================
   KD v3 :: 7) PRUBEZNE CTA mezi sluzbami a cenikem
   ========================================================================== */
#midcta{background:var(--warm-cream)!important;}
#midcta>.e-con-inner{
  display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:space-between!important;
  gap:28px!important;background:var(--soft-cream);border:1px solid var(--border-sand);
  border-radius:20px;padding:30px 34px!important;box-shadow:0 12px 32px rgba(23,23,21,0.05);}
#midcta .kd-midcta-text{flex:1 1 auto;min-width:0;padding:0!important;gap:8px!important;}
#midcta .kd-midcta-title .elementor-heading-title{
  font-family:var(--font-headline)!important;font-size:clamp(22px,2.1vw,28px)!important;
  line-height:1.2!important;font-weight:700!important;letter-spacing:-0.02em!important;
  color:var(--text-strong)!important;margin:0!important;max-width:none;}
#midcta .kd-midcta-lead .elementor-heading-title{
  font-size:16.5px!important;line-height:1.55!important;color:#565049!important;margin:0!important;max-width:58ch;}
#midcta .kd-midcta-btn{flex:0 0 auto;}
#midcta .elementor-button{
  background:var(--primary-periwinkle)!important;color:#fff!important;
  min-height:var(--kd-btn-h)!important;padding:0 26px!important;font-size:16px!important;
  white-space:nowrap;box-shadow:0 12px 28px rgba(107,92,231,0.26);}
#midcta .elementor-button:hover{background:var(--primary-deep)!important;transform:translateY(-2px);}
@media (max-width:900px){
  #midcta>.e-con-inner{flex-direction:column!important;align-items:flex-start!important;gap:20px!important;padding:26px!important;}
  #midcta .kd-midcta-btn,#midcta .elementor-button{width:100%;}
}

/* ==========================================================================
   KD v3 :: 4) O NAS — kompaktnejsi, vizual nedominuje
   ========================================================================== */
#about .e-3592c83-526c1de{align-items:center!important;gap:56px!important;}
#about .e-767b246-ac21eaa{
  flex:0 0 34%!important;max-width:360px!important;min-height:0!important;
  aspect-ratio:4/5;padding:36px 28px!important;border-radius:20px!important;
  gap:20px!important;justify-content:center!important;
  box-shadow:0 14px 34px rgba(23,23,21,0.06)!important;}
#about .e-bfb6779-962f039,#about .e-ef3dfe6-a215c97{
  width:78px!important;height:78px!important;min-height:78px!important;border-radius:20px!important;}
#about .e-bfb6779-962f039 .elementor-icon svg,#about .e-ef3dfe6-a215c97 .elementor-icon svg{width:32px;height:32px;}
#about .e-767b246-ac21eaa::after{font-size:13px!important;letter-spacing:0.14em!important;}
#about span.e-742e982-528e177{font-size:14px!important;padding:8px 15px!important;}
#about .e-1a33d4b-d000507{flex:1 1 auto;min-width:0;align-items:flex-start!important;text-align:left!important;gap:var(--kd-head-gap)!important;}
#about h2.e-7fa71a1-d6b243f{margin:0!important;max-width:22ch;}
#about p.e-2780214-bbe3b7f{margin:0!important;max-width:60ch!important;}
/* odrazky: jednotne rozestupy a ikony */
#about .e-38811c3-7c06944{margin-top:26px!important;gap:18px!important;width:100%;}
#about .e-38811c3-7c06944>.e-con{gap:14px!important;align-items:flex-start!important;padding:0!important;}
#about .e-e232f73-b9e3562,#about .e-493bd07-1c4e6d6,#about .e-1cafae3-405751d{
  width:40px!important;height:40px!important;min-height:40px!important;flex:0 0 auto;
  border-radius:11px!important;background:var(--lavender-soft)!important;
  display:flex!important;align-items:center!important;justify-content:center!important;padding:0!important;}
#about .e-38811c3-7c06944 .elementor-icon svg{width:19px;height:19px;fill:var(--primary-deep)!important;}
#about .e-cbefde8-57b1f61,#about .e-f582269-27ce187,#about .e-30b0ac0-6fb23d9{gap:3px!important;padding:0!important;min-width:0;}
#about h2.e-heading-base:not(.e-7fa71a1-d6b243f){font-size:18px!important;font-weight:700!important;line-height:1.35!important;margin:0!important;}
#about .e-38811c3-7c06944 p.e-paragraph-base{font-size:15.5px!important;line-height:1.55!important;color:var(--muted-taupe)!important;margin:0!important;}
@media (max-width:1024px){
  #about .e-3592c83-526c1de{flex-direction:column!important;align-items:flex-start!important;gap:34px!important;}
  #about .e-767b246-ac21eaa{flex:0 0 auto!important;width:100%!important;max-width:100%!important;aspect-ratio:auto;min-height:260px!important;}
}
@media (max-width:640px){
  #about .e-767b246-ac21eaa{min-height:230px!important;padding:30px 22px!important;}
  #about .e-bfb6779-962f039,#about .e-ef3dfe6-a215c97{width:66px!important;height:66px!important;min-height:66px!important;}
}
/* ==========================================================================
   KD v3 :: 5) CITELNOST — zadny text pod 15 px, tmavsi seda
   ========================================================================== */
:root{--muted-taupe:#5E584F;--text-on-dark-muted:#DCD5C8;--text-on-dark-faint:#B3AB9C;}

/* karty portfolia */
#kd-portfolio-grid .kd-card-blurb{font-size:15.5px!important;line-height:1.6!important;color:#575148!important;}
#kd-portfolio-grid .kd-card-chips .cw-chip{font-size:13px!important;color:#4A453D!important;}
#kd-portfolio-grid .cw-tag{font-size:12.5px!important;color:#5E584F!important;}
#kd-portfolio-grid .cw-link{font-size:15px!important;}
#kd-portfolio-grid .cw-live{font-size:13.5px!important;}

/* sluzby */
#services .elementor-widget-text-editor p{font-size:16px!important;color:#575148!important;}

/* cenik */
#pricing .elementor-element-9d72ec0 .elementor-widget-text-editor p{font-size:15.5px!important;color:#575148!important;}
#pricing .elementor-icon-list-text{font-size:15.5px!important;color:#3F3A33!important;}
.kd-price-was{font-size:15px!important;color:#6B6459!important;}
.kd-price-was s{text-decoration-thickness:1.5px;opacity:1;}
.kd-price-label{font-size:12px!important;}
.elementor-element-37d9029 .elementor-icon-list-text{color:#E4DDD0!important;}
.elementor-element-37d9029 .kd-price-was{color:#BDB5A6!important;}
/* poznamka pod cenikem musi byt videt */
.elementor-element-2fac579 p{font-size:15.5px!important;color:#575148!important;line-height:1.6!important;}
.elementor-element-975dcda p{font-size:16px!important;color:#575148!important;}

/* poradce balicku */
#helper p.e-0560a1b-157dfa3{font-size:16px!important;color:#4E4A43!important;}
#helper .e-8cf8bc2-512a973>.e-con p{font-size:16.5px!important;}
#helper p.e-mwr13-r1{font-size:16.5px!important;color:#443F38!important;}

/* proces */
#process p.e-paragraph-base{font-size:16px!important;color:#575148!important;}

/* hosting a sprava */
.elementor-element-fd3d77c p{font-size:15.5px!important;color:#575148!important;}
#maintenance .elementor-icon-list-text{font-size:15.5px!important;color:#3F3A33!important;}
#maintenance .elementor-widget-text-editor p{font-size:15.5px!important;color:#575148!important;}
.elementor-element-8d73110 p{font-size:15.5px!important;color:#575148!important;line-height:1.6!important;}

/* FAQ */
.kd-faq-body .kd-faq-a{font-size:16px!important;color:#575148!important;}

/* tmava cast — dostatecny kontrast */
#hero p.e-8ccea98-e2c49db,#finalcta p.e-00cee50-214a8d7,#contact p.e-d5136b2-220b739{color:#DCD5C8!important;}
#hero .e-960d36f-030c273 span,#contact .e-c8765d8-3d95ac3 span{color:#CFC7B8!important;font-size:14.5px!important;}
#contact p.e-0afb579-179192e,#contact p.e-725d819-b404fb0{color:#A79F91!important;font-size:13px!important;}
#contact .elementor-field-type-acceptance label{font-size:14px!important;color:#575148!important;}
footer.elementor-159 .elementor-element-4aa16ca .elementor-heading-title{color:#BFB8AB!important;font-size:15.5px!important;}
footer.elementor-159 .elementor-widget-text-editor,footer.elementor-159 .elementor-widget-text-editor p{color:#BFB8AB!important;font-size:15px!important;}
footer.elementor-159 .elementor-element-c5dca7c .elementor-heading-title{color:#A79F91!important;font-size:14px!important;}
footer.elementor-159 .elementor-button{font-size:15.5px!important;color:#CFC7B8!important;}
footer.elementor-159 .elementor-element-d636446 .elementor-heading-title,
footer.elementor-159 .elementor-element-0fc1e45 .elementor-heading-title,
footer.elementor-159 .elementor-element-a55f63c .elementor-heading-title{color:#A79F91!important;font-size:13px!important;}

/* vyhody pod hero */
#trust p.e-paragraph-base{font-size:15px!important;color:#575148!important;}
#trust h2.e-heading-base{font-size:17.5px!important;}

/* ==========================================================================
   KD v3 :: 6) TLACITKA — jedna vyska, jedno centrovani, jeden radius
   ========================================================================== */
.elementor-102 .elementor-button,
.elementor-102 .e-button-base,
header.elementor-158 .elementor-element-3ea6800 .elementor-button,
#midcta .elementor-button,
.cw-btn{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  min-height:50px!important;height:auto;padding:0 26px!important;
  font-family:var(--font-headline)!important;font-size:16px!important;font-weight:600!important;
  line-height:1.2!important;border-radius:13px!important;text-align:center;box-sizing:border-box;}
.elementor-102 .elementor-button-content-wrapper,
header.elementor-158 .elementor-button-content-wrapper,
#midcta .elementor-button-content-wrapper{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  gap:8px;line-height:1.2!important;}
.elementor-102 .elementor-button-text,header.elementor-158 .elementor-button-text{line-height:1.2!important;}
/* hero — obe tlacitka presne stejne */
#hero a.e-8b2a076-112106e,#hero a.e-b79c9cf-bb007a8{
  min-height:52px!important;padding:0 28px!important;font-size:16px!important;border-radius:13px!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;line-height:1.2!important;}
#finalcta a.e-00e36ac-75ab370,#finalcta a.e-932d0d1-94cb5ef{
  min-height:52px!important;padding:0 28px!important;font-size:16px!important;border-radius:13px!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;line-height:1.2!important;}
/* cenove karty — stejna sirka i vyska */
#pricing .elementor-element-9d72ec0 .elementor-button{width:100%;min-height:50px!important;font-size:15.5px!important;padding:0 20px!important;}
#pricing .elementor-element-975dcda .elementor-button{min-height:50px!important;font-size:15.5px!important;}
#contact .e-form__buttons .elementor-button{min-height:54px!important;font-size:16px!important;width:100%;}
/* focus jednotne */
.elementor-102 .elementor-button:focus-visible,.elementor-102 .e-button-base:focus-visible,
header.elementor-158 .elementor-button:focus-visible,#midcta .elementor-button:focus-visible,
label.kd-pf-btn:focus-within,.cw-btn:focus-visible{outline:2px solid var(--primary-periwinkle);outline-offset:3px;}
/* footer zustava textovy odkaz */
footer.elementor-159 .elementor-button{min-height:44px!important;padding:0!important;border-radius:0!important;justify-content:flex-start!important;font-weight:500!important;}
@media (max-width:640px){
  #hero .e-85a676d-bbd2327 a,#finalcta .e-2ab3f53-1179975 a{width:100%;}
  .elementor-102 .elementor-button{white-space:normal;}
}

/* ============================================================
   KD FIX 2026-08-11
   ============================================================ */

/* --- 1) CENIK: prostredni (tmavy) balicek - citelny svetly text --- */
#pricing .elementor-element-37d9029 .elementor-widget-text-editor p,
#pricing .elementor-element-37d9029 p{color:#E8E2D6!important;}
#pricing .elementor-element-37d9029 .elementor-icon-list-text{color:#F7F2E9!important;}
#pricing .elementor-element-37d9029 .kd-price-was{color:#C9C2B3!important;}
#pricing .elementor-element-37d9029 .kd-price-was s{color:inherit!important;}
#pricing .elementor-element-37d9029 h3{color:#F7F2E9!important;}

/* --- 2) MODAL UKAZEK: zamek scrollovani pozadi --- */
html{scrollbar-gutter:stable;}
html.kd-modal-open{overflow:hidden!important;}
html.kd-modal-open body{overflow:hidden!important;width:100%;}
.cw-overlay{overscroll-behavior:contain;}
.cw-dialog{overscroll-behavior:contain;}
.cw-scroller{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;}

/* --- 3) BROWSER BAR bez URL: tri tecky drz vlevo --- */
.cw-scope .cw-bar{gap:7px;}
.cw-scope .cw-bar .cw-dot:last-of-type{margin-right:auto;}

/* --- 4) NAHLED CELEHO WEBU: nez se obrazek nacte, nema byt prazdno --- */
.cw-scope .cw-scroller{position:relative;background:var(--soft-cream);}
.cw-scope .cw-scroller img{background:var(--soft-cream);}

/* === KD FOOTER GLOW FIX 2026-08-11 ===
   Glow ma byt videt v cele plose footeru vcetne sloupce Firemni udaje.
   Vnorene kontejnery a widgety musi byt pruhledne, jinak prekryji .kd-glow::after. */
footer.elementor-159 .e-con.e-child,
footer.elementor-159 .e-con-inner,
footer.elementor-159 .elementor-widget,
footer.elementor-159 .elementor-widget-container,
footer.elementor-159 .elementor-widget-text-editor,
footer.elementor-159 .elementor-widget-text-editor p,
footer.elementor-159 .elementor-widget-heading,
footer.elementor-159 .elementor-heading-title,
footer.elementor-159 .elementor-button-wrapper{background-color:transparent!important;}
footer.elementor-159 .elementor-element-9c2c834{background-color:var(--primary-periwinkle)!important;}
footer.elementor-159 > .kd-glow{--kdg-size:900px!important;}
footer.elementor-159 > .kd-glow::after{z-index:0!important;}
footer.elementor-159 > .kd-glow > .elementor-element{position:relative;z-index:1;}

/* Sloupec Firemni udaje ma v HTML tridu e-parent misto e-child.
   Pojistka, aby na nem nikdy nesedelo neprusvitne pozadi ani ramecek. */
footer.elementor-159 .elementor-element-6480589{background-color:transparent!important;border-top:0!important;padding-top:0!important;padding-bottom:0!important;}
footer.elementor-159 .e-con.e-parent:not(:first-child){background-color:transparent!important;border-top:0!important;}


/* === KD FIXES 2026-08-11 B === */
/* 1) Header se schova pri scrollu dolu (desktop, tablet i mobil) */
header.elementor-158 > .e-con.e-parent.kd-autohide{transition:transform 280ms cubic-bezier(.22,.61,.36,1);will-change:transform;}
header.elementor-158 > .e-con.e-parent.kd-hdr-off{transform:translateY(-102%);}
@media (prefers-reduced-motion:reduce){header.elementor-158 > .e-con.e-parent.kd-autohide{transition:none;}}
/* 2) Before/after: obe fotky zarovnat na stred */
.mwba-layer img{object-position:center center!important;}
@media(max-width:767px){.mwba-layer img{object-position:center center!important;}}

/* ============================================================
   KD MOTION SYSTEM v1 2026-08-13
   Hero je zamerne vynechane pro budouci scroll video.
   ============================================================ */
@media (prefers-reduced-motion:no-preference){
  body.mw-front.kd-motion-ready .kd-motion-item{
    opacity:0;
    transform:translate3d(var(--kd-enter-x,0),var(--kd-enter-y,34px),0) scale(var(--kd-enter-scale,.985));
    transition:
      opacity 680ms cubic-bezier(.22,.61,.36,1) var(--kd-enter-delay,0ms),
      transform 900ms cubic-bezier(.16,1,.3,1) var(--kd-enter-delay,0ms);
    will-change:transform,opacity;
  }
  body.mw-front.kd-motion-ready .kd-motion-item.is-visible{
    opacity:1;
    transform:translate3d(0,0,0) scale(1);
    will-change:auto;
  }

  body.mw-front .kd-motion-card{
    position:relative;
    transform-style:preserve-3d;
    transform-origin:center center;
    transition:
      transform 430ms cubic-bezier(.16,1,.3,1),
      box-shadow 430ms cubic-bezier(.16,1,.3,1),
      border-color 260ms ease;
    will-change:transform;
    backface-visibility:hidden;
  }
  body.mw-front .kd-motion-card:hover{
    transform:translate3d(0,-10px,0) scale(1.014) rotate(var(--kd-hover-rotate,0deg));
    box-shadow:0 28px 64px rgba(27,26,24,.14),0 0 0 1px rgba(108,92,231,.22)!important;
    border-color:rgba(108,92,231,.24)!important;
    z-index:3;
  }
  body.mw-front #services .kd-motion-card:nth-child(2n):hover,
  body.mw-front #process .kd-motion-card:nth-child(2n):hover{
    --kd-hover-rotate:.45deg;
  }
  body.mw-front #services .kd-motion-card:nth-child(2n+1):hover,
  body.mw-front #process .kd-motion-card:nth-child(2n+1):hover{
    --kd-hover-rotate:-.45deg;
  }

  body.mw-front .kd-motion-button{
    position:relative;
    transform:translate3d(0,0,0);
    transition:
      transform 320ms cubic-bezier(.16,1,.3,1),
      box-shadow 320ms cubic-bezier(.16,1,.3,1),
      background-color 220ms ease!important;
    will-change:transform;
  }
  body.mw-front .kd-motion-button:hover{
    transform:translate3d(0,-4px,0) scale(1.025);
    box-shadow:0 18px 38px rgba(89,73,209,.24)!important;
  }
  body.mw-front .kd-motion-button:active{
    transform:translate3d(0,-1px,0) scale(.985)!important;
    transition-duration:110ms!important;
  }

  body.mw-front #faq .kd-motion-card:hover{
    transform:translate3d(8px,0,0) scale(1.006);
    box-shadow:0 18px 42px rgba(27,26,24,.10),0 0 0 1px rgba(108,92,231,.20)!important;
  }
  body.mw-front #helper .kd-motion-card:hover{
    transform:translate3d(7px,-3px,0) scale(1.008);
  }

  body.mw-front .kd-parallax{
    transform:translate3d(0,var(--kd-parallax-y,0px),0);
    transition:transform 160ms linear;
    will-change:transform;
  }
  body.mw-front #portfolio .cw-card-top{
    transition:transform 700ms cubic-bezier(.16,1,.3,1);
  }
  body.mw-front #portfolio .cw-card:hover .cw-card-top{
    transform:translate3d(0,-5px,0) scale(1.025);
  }
  body.mw-front #beforeafter .mwba-wrap{
    transition:transform 700ms cubic-bezier(.16,1,.3,1),box-shadow 500ms ease;
  }
  body.mw-front #beforeafter .mwba-wrap:hover{
    box-shadow:0 34px 86px rgba(27,26,24,.16);
  }

  body.mw-front .kd-motion-heading{
    transform-origin:left center;
  }
  body.mw-front .kd-motion-section.is-section-visible > *{
    --kd-section-live:1;
  }
}

@media (max-width:767px) and (prefers-reduced-motion:no-preference){
  body.mw-front.kd-motion-ready .kd-motion-item{
    --kd-enter-x:0px!important;
    --kd-enter-y:24px!important;
    --kd-enter-scale:.992!important;
    transition-duration:560ms,700ms;
  }
  body.mw-front .kd-motion-card:hover,
  body.mw-front #faq .kd-motion-card:hover,
  body.mw-front #helper .kd-motion-card:hover{
    transform:translate3d(0,-4px,0) scale(1.006);
  }
  body.mw-front .kd-parallax{transform:none!important;}
}

@media (prefers-reduced-motion:reduce){
  body.mw-front .kd-motion-item,
  body.mw-front .kd-motion-card,
  body.mw-front .kd-motion-button,
  body.mw-front .kd-parallax{
    opacity:1!important;
    transform:none!important;
    transition:none!important;
    animation:none!important;
  }
}


/* ============================================================
   KD SHOWCASE HERO v3 2026-08-13
   Jedno lehke celoobrazovkove platno z realnych webu.
   ============================================================ */
body.mw-front .elementor-location-header{
  position:absolute!important;
  inset:0 0 auto 0!important;
  z-index:120!important;
  width:100%!important;
}
body.mw-front #hero.kd-showcase-hero{
  width:100%!important;
  max-width:none!important;
  height:560svh!important;
  min-height:3400px!important;
  margin:0!important;
  padding:0!important;
  overflow:visible!important;
  isolation:isolate;
  justify-content:flex-start!important;
  align-items:stretch!important;
  background:#151514!important;
}
body.mw-front #hero.kd-showcase-hero > [data-id="a1b2c3d"]{
  position:sticky!important;
  top:0;
  width:100%!important;
  max-width:none!important;
  height:100svh!important;
  min-height:620px!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  isolation:isolate;
}
body.admin-bar.mw-front #hero.kd-showcase-hero > [data-id="a1b2c3d"]{
  top:32px;
  height:calc(100svh - 32px)!important;
}
body.mw-front #hero.kd-showcase-hero > [data-id="a1b2c3d"] > [data-id="f7ce9d6"],
body.mw-front #hero.kd-showcase-hero > [data-id="a1b2c3d"] > [data-id="9ec5cfc"]{
  position:absolute!important;
  inset:0!important;
  width:1px!important;
  height:1px!important;
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
  overflow:hidden!important;
}

body.mw-front .kd-v3-story{
  position:absolute;
  inset:0;
  z-index:20;
  overflow:hidden;
  color:#F7F2E9;
  background:#151514;
}
body.mw-front .kd-v3-scenes,
body.mw-front .kd-v3-scene{
  position:absolute;
  inset:0;
}
body.mw-front .kd-v3-scene{
  overflow:hidden;
  opacity:var(--kd-v3-scene-0,0);
  transform:translate3d(0,var(--kd-v3-scene-shift-0,0px),0) scale(var(--kd-v3-scene-scale-0,1));
  transform-origin:center center;
  will-change:transform,opacity;
  background:#151514;
}
body.mw-front .kd-v3-scene[data-scene="1"]{
  opacity:var(--kd-v3-scene-1,0);
  transform:translate3d(0,var(--kd-v3-scene-shift-1,0px),0) scale(var(--kd-v3-scene-scale-1,1.025));
  background:#F2ECE2;
}
body.mw-front .kd-v3-scene[data-scene="2"]{
  opacity:var(--kd-v3-scene-2,0);
  transform:translate3d(0,var(--kd-v3-scene-shift-2,0px),0) scale(var(--kd-v3-scene-scale-2,1.025));
  background:#F2ECE2;
}
body.mw-front .kd-v3-scene[data-scene="3"]{
  opacity:var(--kd-v3-scene-3,0);
  transform:translate3d(0,var(--kd-v3-scene-shift-3,0px),0) scale(var(--kd-v3-scene-scale-3,1.025));
  background:#F2ECE2;
}
body.mw-front .kd-v3-scene[data-scene="4"]{
  opacity:var(--kd-v3-scene-4,0);
  transform:translate3d(0,var(--kd-v3-scene-shift-4,0px),0) scale(var(--kd-v3-scene-scale-4,1.025));
  background:#151514;
}

body.mw-front .kd-v3-page-shot{
  display:block;
  width:100%;
  max-width:none;
  height:auto;
  min-height:100%;
  transform:translate3d(0,var(--kd-v3-page-y,0px),0);
  will-change:transform;
  user-select:none;
}
body.mw-front .kd-v3-scene[data-scene="1"] .kd-v3-page-shot{--kd-v3-page-y:var(--kd-v3-page-y-1,0px);}
body.mw-front .kd-v3-scene[data-scene="2"] .kd-v3-page-shot{--kd-v3-page-y:var(--kd-v3-page-y-2,0px);}
body.mw-front .kd-v3-scene[data-scene="3"] .kd-v3-page-shot{--kd-v3-page-y:var(--kd-v3-page-y-3,0px);}

body.mw-front .kd-v3-scene[data-scene="1"]::after,
body.mw-front .kd-v3-scene[data-scene="2"]::after,
body.mw-front .kd-v3-scene[data-scene="3"]::after,
body.mw-front .kd-v3-scene[data-scene="4"]::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  mix-blend-mode:soft-light;
}
body.mw-front .kd-v3-scene[data-scene="1"]::after{background:#E96F65;opacity:.22;}
body.mw-front .kd-v3-scene[data-scene="2"]::after{background:#58B58B;opacity:.20;}
body.mw-front .kd-v3-scene[data-scene="3"]::after{background:#5B8DEF;opacity:.22;}
body.mw-front .kd-v3-scene[data-scene="4"]::after{background:#6C5CE7;opacity:.15;}

body.mw-front .kd-v3-paper{
  position:absolute;
  inset:0;
  transform:translate3d(0,var(--kd-v3-paper-y,30px),0) scale(var(--kd-v3-paper-scale,.88));
  transform-origin:center center;
  background:#F2ECE2;
}
body.mw-front .kd-v3-wire-nav{
  position:absolute;
  top:7%;
  left:5%;
  right:5%;
  height:2px;
  background:rgba(27,26,24,.16);
}
body.mw-front .kd-v3-wire-nav::before,
body.mw-front .kd-v3-wire-nav::after{
  content:"";
  position:absolute;
  top:-11px;
  height:24px;
  border-radius:999px;
  background:rgba(27,26,24,.13);
}
body.mw-front .kd-v3-wire-nav::before{left:0;width:138px;}
body.mw-front .kd-v3-wire-nav::after{right:0;width:min(42vw,520px);}
body.mw-front .kd-v3-wire-copy{
  position:absolute;
  left:6%;
  top:23%;
  width:min(44vw,650px);
}
body.mw-front .kd-v3-wire-copy i,
body.mw-front .kd-v3-wire-copy b{
  display:block;
  border-radius:12px;
  background:rgba(27,26,24,.13);
}
body.mw-front .kd-v3-wire-copy i:nth-child(1){width:74%;height:clamp(40px,5.5vw,80px);}
body.mw-front .kd-v3-wire-copy i:nth-child(2){width:91%;height:clamp(40px,5.5vw,80px);margin-top:14px;}
body.mw-front .kd-v3-wire-copy i:nth-child(3){width:57%;height:18px;margin-top:42px;}
body.mw-front .kd-v3-wire-copy i:nth-child(4){width:69%;height:18px;margin-top:12px;}
body.mw-front .kd-v3-wire-copy b{
  width:176px;
  height:56px;
  margin-top:38px;
  background:rgba(242,166,90,.40);
}
body.mw-front .kd-v3-wire-visual{
  position:absolute;
  right:4.5%;
  top:18%;
  width:44%;
  height:66%;
}
body.mw-front .kd-v3-wire-visual span{
  position:absolute;
  display:block;
  border:1px solid rgba(27,26,24,.18);
  border-radius:24px;
  background:rgba(247,242,233,.70);
}
body.mw-front .kd-v3-wire-visual span:nth-child(1){inset:0 3% 18% 0;}
body.mw-front .kd-v3-wire-visual span:nth-child(2){right:0;bottom:0;width:44%;height:38%;transform:rotate(2deg);}
body.mw-front .kd-v3-wire-visual span:nth-child(3){left:-6%;bottom:3%;width:31%;height:32%;transform:rotate(-2deg);}

body.mw-front .kd-v3-brand-collage{
  position:absolute;
  inset:0;
  overflow:hidden;
  background:
    radial-gradient(circle at 72% 42%,rgba(108,92,231,.26),transparent 36%),
    #151514;
}
body.mw-front .kd-v3-browser,
body.mw-front .kd-v3-phone{
  position:absolute;
  overflow:hidden;
  border:1px solid rgba(247,242,233,.25);
  background:#F7F2E9;
  box-shadow:0 28px 70px rgba(0,0,0,.24);
}
body.mw-front .kd-v3-browser{padding-top:30px;border-radius:24px;}
body.mw-front .kd-v3-browser::before{
  content:"";
  position:absolute;
  top:0;
  left:0;
  right:0;
  height:30px;
  border-bottom:1px solid rgba(27,26,24,.12);
  background:
    radial-gradient(circle at 18px 15px,rgba(27,26,24,.26) 0 4px,transparent 5px),
    radial-gradient(circle at 34px 15px,rgba(27,26,24,.17) 0 4px,transparent 5px),
    radial-gradient(circle at 50px 15px,rgba(27,26,24,.32) 0 4px,transparent 5px),
    #F2ECE2;
}
body.mw-front .kd-v3-browser img,
body.mw-front .kd-v3-phone img{display:block;width:100%;height:auto;}
body.mw-front .kd-v3-browser-main{right:3%;top:9%;width:57%;transform:rotate(1deg);}
body.mw-front .kd-v3-browser-secondary{left:28%;bottom:-7%;width:45%;transform:rotate(-1.3deg);}
body.mw-front .kd-v3-phone{
  right:5%;
  bottom:-4%;
  width:16%;
  padding:8px;
  border-radius:28px;
  transform:rotate(2deg);
}
body.mw-front .kd-v3-phone img{border-radius:20px;}

body.mw-front .kd-v3-scrim{
  position:absolute;
  inset:0;
  z-index:5;
  pointer-events:none;
  background:
    linear-gradient(90deg,rgba(21,21,20,.98) 0%,rgba(21,21,20,.93) 31%,rgba(21,21,20,.62) 49%,rgba(21,21,20,.13) 73%,rgba(21,21,20,.23) 100%),
    linear-gradient(180deg,rgba(21,21,20,.10),rgba(21,21,20,.30));
}
body.mw-front .kd-v3-copy{
  position:absolute;
  z-index:6;
  left:clamp(28px,5.5vw,92px);
  top:50%;
  width:min(760px,62vw);
  transform:translate3d(var(--kd-v3-copy-drift,0px),-50%,0);
  will-change:transform;
}
body.mw-front .kd-v3-phase-stack{position:relative;min-height:clamp(300px,41vh,390px);}
body.mw-front .kd-v3-phase{
  --kd-v3-color:#F2A65A;
  position:absolute;
  inset:0 auto auto 0;
  width:100%;
  opacity:var(--kd-v3-phase-0,0);
  transform:translate3d(var(--kd-v3-phase-x-0,0px),var(--kd-v3-phase-y-0,0px),0) scale(var(--kd-v3-phase-scale-0,1));
  transform-origin:left center;
  will-change:transform,opacity;
}
body.mw-front .kd-v3-phase[data-phase="1"]{--kd-v3-color:#E96F65;opacity:var(--kd-v3-phase-1,0);transform:translate3d(var(--kd-v3-phase-x-1,0px),var(--kd-v3-phase-y-1,42px),0) scale(var(--kd-v3-phase-scale-1,.98));}
body.mw-front .kd-v3-phase[data-phase="2"]{--kd-v3-color:#58B58B;opacity:var(--kd-v3-phase-2,0);transform:translate3d(var(--kd-v3-phase-x-2,0px),var(--kd-v3-phase-y-2,42px),0) scale(var(--kd-v3-phase-scale-2,.98));}
body.mw-front .kd-v3-phase[data-phase="3"]{--kd-v3-color:#5B8DEF;opacity:var(--kd-v3-phase-3,0);transform:translate3d(var(--kd-v3-phase-x-3,0px),var(--kd-v3-phase-y-3,42px),0) scale(var(--kd-v3-phase-scale-3,.98));}
body.mw-front .kd-v3-phase[data-phase="4"]{--kd-v3-color:#6C5CE7;opacity:var(--kd-v3-phase-4,0);transform:translate3d(var(--kd-v3-phase-x-4,0px),var(--kd-v3-phase-y-4,42px),0) scale(var(--kd-v3-phase-scale-4,.98));}
body.mw-front .kd-v3-heading{
  max-width:760px;
  margin:0;
  color:#F7F2E9;
  font-family:"Plus Jakarta Sans",sans-serif;
  font-size:clamp(46px,5.2vw,76px);
  font-weight:700;
  line-height:1.02;
  letter-spacing:-.045em;
  text-wrap:balance;
}
body.mw-front .kd-v3-heading span{color:var(--kd-v3-color);}
body.mw-front .kd-v3-phase p{
  max-width:610px;
  margin:28px 0 0;
  color:rgba(247,242,233,.84);
  font-family:"Manrope",sans-serif;
  font-size:clamp(17px,1.45vw,20px);
  line-height:1.62;
}
body.mw-front .kd-v3-actions{
  display:flex;
  flex-wrap:wrap;
  gap:14px;
  margin-top:26px;
  opacity:var(--kd-v3-actions-opacity,.84);
  transform:translate3d(0,var(--kd-v3-actions-y,8px),0);
  will-change:transform,opacity;
}
body.mw-front .kd-v3-actions a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:54px;
  padding:0 27px;
  border:1px solid rgba(247,242,233,.44);
  border-radius:14px;
  color:#F7F2E9;
  font-family:"Manrope",sans-serif;
  font-size:16px;
  font-weight:700;
  text-decoration:none;
  transition:transform 240ms cubic-bezier(.16,1,.3,1),background-color 220ms ease,border-color 220ms ease;
}
body.mw-front .kd-v3-actions a:first-child{border-color:#6C5CE7;background:#6C5CE7;}
body.mw-front .kd-v3-actions a:hover{transform:translate3d(0,-4px,0);border-color:#F7F2E9;}
body.mw-front .kd-v3-actions a:first-child:hover{background:#5949D1;}

body.kd-showcase-hero-active #mw-sticky{
  opacity:0!important;
  pointer-events:none!important;
  transform:translate3d(0,120%,0)!important;
}

@media (max-width:1024px){
  body.mw-front #hero.kd-showcase-hero{height:520svh!important;min-height:3100px!important;}
  body.mw-front .kd-v3-copy{left:clamp(28px,5vw,52px);width:min(680px,78vw);}
  body.mw-front .kd-v3-heading{font-size:clamp(44px,6.7vw,68px);}
  body.mw-front .kd-v3-scrim{
    background:
      linear-gradient(90deg,rgba(21,21,20,.98) 0%,rgba(21,21,20,.91) 43%,rgba(21,21,20,.43) 73%,rgba(21,21,20,.18) 100%),
      linear-gradient(180deg,rgba(21,21,20,.14),rgba(21,21,20,.38));
  }
  body.mw-front .kd-v3-browser-main{right:-6%;width:70%;}
  body.mw-front .kd-v3-browser-secondary{left:21%;width:56%;}
  body.mw-front .kd-v3-phone{right:2%;width:21%;}
}
@media (max-width:782px){
  body.admin-bar.mw-front #hero.kd-showcase-hero > [data-id="a1b2c3d"]{
    top:46px;
    height:calc(100svh - 46px)!important;
  }
}
@media (max-width:600px){
  body.admin-bar.mw-front #wpadminbar{top:-46px!important;}
}
@media (max-width:767px){
  body.mw-front #hero.kd-showcase-hero{height:500svh!important;min-height:2900px!important;}
  body.mw-front #hero.kd-showcase-hero > [data-id="a1b2c3d"]{min-height:600px!important;}
  body.mw-front .kd-v3-page-shot{width:158%;margin-left:-29%;}
  body.mw-front .kd-v3-scrim{
    background:
      linear-gradient(180deg,rgba(21,21,20,.98) 0%,rgba(21,21,20,.93) 48%,rgba(21,21,20,.62) 72%,rgba(21,21,20,.28) 100%),
      linear-gradient(90deg,rgba(21,21,20,.32),rgba(21,21,20,.08));
  }
  body.mw-front .kd-v3-copy{left:24px;right:24px;top:45%;width:auto;}
  body.mw-front .kd-v3-phase-stack{min-height:390px;}
  body.mw-front .kd-v3-heading{max-width:100%;font-size:clamp(38px,10.8vw,54px);line-height:1.03;letter-spacing:-.04em;text-wrap:pretty;}
  body.mw-front .kd-v3-phase p{max-width:96%;margin-top:22px;font-size:16.5px;line-height:1.55;}
  body.mw-front .kd-v3-actions{gap:10px;margin-top:18px;}
  body.mw-front .kd-v3-actions a{min-height:50px;padding:0 19px;border-radius:12px;font-size:15px;}
  body.mw-front .kd-v3-wire-copy{left:8%;top:17%;width:73%;}
  body.mw-front .kd-v3-wire-visual{right:7%;top:53%;width:74%;height:37%;}
  body.mw-front .kd-v3-browser-main{right:-18%;top:13%;width:112%;}
  body.mw-front .kd-v3-browser-secondary{left:-24%;bottom:-3%;width:94%;}
  body.mw-front .kd-v3-phone{right:-2%;bottom:-2%;width:35%;}
}
@media (prefers-reduced-motion:reduce){
  body.mw-front #hero.kd-showcase-hero{height:auto!important;min-height:0!important;overflow:hidden!important;}
  body.mw-front #hero.kd-showcase-hero > [data-id="a1b2c3d"]{position:relative!important;top:auto!important;height:auto!important;}
  body.mw-front .kd-v3-story{display:none!important;}
}
