
:root{
  --blue:#1f45a8; --blue2:#173472; --blue3:#3866db; --cyan:#12bdf0;
  --navy:#071126; --text:#172033; --muted:#5d6a82; --line:#e1e8f4;
  --soft:#eef6ff; --soft2:#f7fbff; --white:#fff;
  --shadow:0 24px 70px rgba(17,31,67,.13); --radius:28px; --wrap:1220px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Arial,"Noto Sans",sans-serif;
  color:var(--text);background:#fff;line-height:1.62;text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;
}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
a:hover{color:var(--blue)}
p{margin:0 0 1rem}
.si-wrap{max-width:var(--wrap);margin:auto;padding:0 22px}
.si-topline{background:linear-gradient(90deg,var(--blue2),#1f45a8);color:#eaf1ff;font-size:.88rem}
.si-topline__inner{min-height:28px;display:flex;align-items:center;justify-content:space-between;gap:18px}
.si-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.94);backdrop-filter:blur(18px);border-bottom:1px solid rgba(225,232,244,.9)}
.si-header__inner{min-height:82px;display:flex;align-items:center;gap:22px}
.si-logo{flex:0 0 auto;display:flex;align-items:center}
.si-logo img{width:auto;height:54px;max-width:300px;object-fit:contain}
.si-nav{margin-left:auto;display:flex;align-items:center;justify-content:flex-end;gap:21px;flex-wrap:nowrap;white-space:nowrap}
.si-nav__link{display:inline-flex;align-items:center;justify-content:center;color:#101827;font-weight:850;font-size:.96rem;min-height:42px;padding:0;border-radius:999px}
.si-nav__link:hover{color:var(--blue);text-decoration:none}
.si-nav__cta{min-height:48px;padding:0 20px;color:#fff!important;background:linear-gradient(135deg,var(--blue),#3866db);box-shadow:0 18px 36px rgba(31,69,168,.23)}
.si-nav__cta:hover{color:#fff!important;transform:translateY(-2px);box-shadow:0 24px 48px rgba(31,69,168,.30)}
.si-menu-button{display:none;width:44px;height:44px;border:1px solid var(--line);border-radius:14px;background:#fff;padding:10px}
.si-menu-button span{display:block;height:2px;background:var(--navy);margin:5px 0;border-radius:3px}
.si-hero{position:relative;overflow:hidden;background:radial-gradient(circle at 82% 18%,#cfeeff 0,#f5f9ff 34%,#fff 72%);padding:76px 0 70px}
.si-hero:before{content:"";position:absolute;right:-160px;bottom:-220px;width:520px;height:520px;border-radius:50%;background:rgba(31,69,168,.11);filter:blur(18px)}
.si-hero__grid{position:relative;display:grid;grid-template-columns:1fr .95fr;align-items:center;gap:58px}
.si-eyebrow{margin:0 0 12px;color:var(--blue);font-weight:950;text-transform:uppercase;letter-spacing:.11em;font-size:.8rem}
.si-hero h1,.si-page-hero h1{margin:0 0 22px;color:#070d1d;font-size:clamp(2.55rem,4.75vw,4.85rem);line-height:1.03;letter-spacing:-.055em;max-width:760px}
.si-lead{font-size:clamp(1.08rem,1.45vw,1.32rem);color:#43516a;max-width:680px;line-height:1.65}
.si-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:30px 0 22px}
.si-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:0 24px;border-radius:999px;border:0;background:linear-gradient(135deg,var(--blue),#3866db);color:#fff!important;font-weight:900;box-shadow:0 18px 36px rgba(31,69,168,.24);cursor:pointer;transition:.2s ease;text-decoration:none!important}
.si-btn:hover{transform:translateY(-2px);color:#fff!important;box-shadow:0 24px 48px rgba(31,69,168,.30)}
.si-btn--light{background:#fff;color:var(--blue)!important;border:1px solid #dbe4ff;box-shadow:none}
.si-proof{display:flex;gap:10px;flex-wrap:wrap}
.si-proof span{padding:9px 13px;border:1px solid #dbe4f5;border-radius:999px;background:rgba(255,255,255,.76);font-weight:800;color:#334155;font-size:.93rem}
.si-visual{position:relative}
.si-visual img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:34px;border:14px solid #fff;box-shadow:var(--shadow)}
.si-badge{position:absolute;left:-26px;bottom:-28px;width:min(330px,82%);background:#fff;border:1px solid var(--line);border-radius:24px;padding:20px 22px;box-shadow:var(--shadow);color:#344155;font-weight:800}
.si-section{padding:78px 0}
.si-section--soft{background:linear-gradient(#fff,#f7faff)}
.si-page-hero{background:radial-gradient(circle at 80% 20%,#dff2ff,#f8fbff 48%,#fff);padding:72px 0}
.si-section-title{max-width:760px;margin:0 auto 34px;text-align:center}
.si-section-title h2,.si-prose h2{margin:0 0 16px;color:var(--navy);font-size:clamp(2rem,3.05vw,3.1rem);line-height:1.08;letter-spacing:-.04em}
.si-section-title p{color:var(--muted);font-size:1.08rem}
.si-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.si-card{background:#fff;border:1px solid var(--line);border-radius:24px;padding:28px;box-shadow:0 16px 42px rgba(17,31,67,.07);transition:.2s ease}
.si-card:hover{transform:translateY(-4px);box-shadow:0 26px 60px rgba(17,31,67,.13)}
.si-card h3{margin:0 0 10px;color:var(--navy);font-size:1.24rem;line-height:1.18;letter-spacing:-.02em}
.si-card p{margin:0;color:var(--muted)}
.si-card a{display:inline-flex;margin-top:18px;color:var(--blue);font-weight:900}
.si-content{display:grid;gap:24px}
.si-prose{max-width:980px;margin:auto;padding:30px;border-radius:32px;background:#fff;border:1px solid var(--line);box-shadow:0 18px 45px rgba(17,31,67,.08)}
.si-prose p,.si-prose li{color:#43516a;font-size:1.04rem;line-height:1.68;margin:0 0 1rem}
.si-prose h3{margin:26px 0 12px;color:var(--navy);font-size:1.45rem;letter-spacing:-.025em}
.si-prose .si-highlight,.si-text-pill{margin:18px 0;padding:22px 25px;border-radius:28px;background:linear-gradient(135deg,#f5faff,#fff);border:1px solid #dbe7f6;color:#23334f;font-size:1.15rem;font-weight:760;text-align:left}
.si-pill-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:20px}
.si-pill-list p{margin:0;padding:18px 20px;border-radius:999px;background:#f8fbff;border:1px solid #e0e9f6;color:#2c3e5d;font-weight:820;text-align:center}
.si-split{display:grid;grid-template-columns:.92fr 1.08fr;gap:54px;align-items:center}
.si-image-card{border-radius:34px;overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow);background:#fff}
.si-image-card img{width:100%;aspect-ratio:4/3;object-fit:cover;transition:.3s ease}
.si-image-card:hover img{transform:scale(1.035)}
.si-review-banner{display:block;width:100%;max-width:1120px;margin:0 auto 26px;border-radius:30px;box-shadow:var(--shadow)}
.si-reviews{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.si-review{background:#fff;border:1px solid var(--line);border-radius:26px;padding:26px;box-shadow:0 16px 42px rgba(17,31,67,.07)}
.si-review__platform{color:var(--blue);font-weight:950;text-transform:uppercase;letter-spacing:.12em;font-size:.78rem}
.si-review h3{margin:9px 0 8px;color:var(--navy);font-size:1.45rem}
.si-stars{display:inline-flex;color:#ffb400;font-size:1.7rem;letter-spacing:2px;filter:drop-shadow(0 2px 2px rgba(110,68,0,.15))}
.si-stars--google .last{position:relative;color:#d5dbe5}
.si-stars--google .last::before{content:"★";position:absolute;left:0;top:0;width:80%;overflow:hidden;color:#ffb400}
.si-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.si-gallery-item{display:block;width:100%;padding:0;overflow:hidden;border:1px solid var(--line);border-radius:22px;background:#fff;cursor:pointer;box-shadow:0 16px 42px rgba(17,31,67,.08)}
.si-gallery-item img{width:100%;height:220px;object-fit:cover;transition:.3s ease}
.si-gallery-item:hover img{transform:scale(1.045)}
.si-form{display:grid;gap:14px}
.si-form input,.si-form textarea,.si-form select{width:100%;border:1px solid #d9e0ec;border-radius:16px;padding:14px 15px;font:inherit;background:#fbfcff;color:#111827}
.si-form textarea{min-height:130px;resize:vertical}
.si-lightbox{position:fixed;inset:0;z-index:9999;display:none;align-items:center;justify-content:center;padding:26px;background:rgba(7,17,38,.86);backdrop-filter:blur(10px)}
.si-lightbox.is-open{display:flex}
.si-lightbox__panel{position:relative;width:min(1180px,100%);max-height:92vh;display:grid;gap:14px}
.si-lightbox__image{display:block;max-width:100%;max-height:82vh;margin:auto;border-radius:22px;box-shadow:0 30px 90px rgba(0,0,0,.45);background:#fff}
.si-lightbox__caption{color:#eaf6ff;text-align:center;font-weight:800}
.si-lightbox__close,.si-lightbox__prev,.si-lightbox__next{position:absolute;border:0;cursor:pointer;color:#fff;background:rgba(255,255,255,.14);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.22);box-shadow:0 16px 42px rgba(0,0,0,.22)}
.si-lightbox__close{top:-8px;right:-8px;width:48px;height:48px;border-radius:999px;font-size:30px}
.si-lightbox__prev,.si-lightbox__next{top:50%;transform:translateY(-50%);width:54px;height:70px;border-radius:20px;font-size:42px}
.si-lightbox__prev{left:-18px}
.si-lightbox__next{right:-18px}
.si-footer{padding:48px 0;background:linear-gradient(145deg,#071126,#132d70);color:#fff}
.si-footer__grid{display:grid;grid-template-columns:1.2fr .7fr .7fr;gap:28px}
.si-footer p{color:#c9d4ef}
.si-footer a{color:#fff;font-weight:800}
.si-footer__logo{width:260px;max-height:70px;object-fit:contain;margin-bottom:14px}
.reveal{opacity:0;transform:translateY(16px);transition:.55s ease}
.reveal.is-visible{opacity:1;transform:none}
@media (max-width:1180px){.si-nav{gap:12px}.si-nav__link{font-size:.9rem}.si-logo img{height:48px;max-width:245px}}
@media (max-width:980px){
  .si-menu-button{display:block;margin-left:auto}.si-header__inner{min-height:68px}
  .si-nav{position:absolute;left:22px;right:22px;top:calc(100% + 10px);display:none;padding:16px;border-radius:24px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);white-space:normal;grid-template-columns:1fr 1fr}
  body.menu-open .si-nav{display:grid}.si-nav__link{justify-content:center;padding:12px}
  .si-hero__grid,.si-split{grid-template-columns:1fr}.si-grid{grid-template-columns:repeat(2,1fr)}.si-gallery{grid-template-columns:repeat(3,1fr)}
}
@media (max-width:760px){
  .si-wrap{padding:0 18px}.si-topline{font-size:.72rem}.si-topline__inner{min-height:24px;justify-content:center;text-align:center;white-space:nowrap;overflow:hidden}.si-topline__inner span:last-child{display:none}
  .si-logo img{height:34px;max-width:205px}.si-hero{padding:46px 0 44px}.si-hero h1,.si-page-hero h1{font-size:clamp(2.1rem,10.5vw,3.35rem)}.si-lead{font-size:1.05rem}
  .si-actions{display:grid}.si-btn{width:100%}.si-visual img{border-width:9px;border-radius:26px}.si-badge{position:static;width:auto;margin-top:14px}
  .si-section{padding:54px 0}.si-grid,.si-gallery,.si-reviews,.si-footer__grid,.si-pill-list{grid-template-columns:1fr}body.menu-open .si-nav{grid-template-columns:1fr}
  .si-prose{padding:24px}.si-gallery-item img{height:auto}.si-lightbox{padding:14px}.si-lightbox__prev,.si-lightbox__next{width:44px;height:58px;font-size:34px}.si-lightbox__prev{left:2px}.si-lightbox__next{right:2px}.si-lightbox__close{right:4px;top:4px}
}


/* v13 layout and image fixes */
:root{--wrap:1480px}
.si-wrap{max-width:var(--wrap);padding-left:28px;padding-right:28px}
.si-header__inner{
  min-height:76px;
  gap:18px;
}
.si-logo img{
  height:48px;
  max-width:285px;
}
.si-nav{
  flex:1 1 auto;
  min-width:0;
  gap:13px;
  justify-content:flex-end;
}
.si-nav__link{
  font-size:.88rem;
  min-height:40px;
  letter-spacing:-.015em;
}
.si-nav__cta{
  min-height:46px;
  padding:0 16px;
  flex:0 0 auto;
}
@media (max-width:1360px){
  .si-logo img{height:44px;max-width:245px}
  .si-nav{gap:9px}
  .si-nav__link{font-size:.82rem}
  .si-nav__cta{padding:0 13px}
}
@media (max-width:1120px){
  .si-menu-button{display:block;margin-left:auto}
  .si-nav{
    position:absolute;
    left:22px;
    right:22px;
    top:calc(100% + 10px);
    display:none;
    padding:16px;
    border-radius:24px;
    background:#fff;
    border:1px solid var(--line);
    box-shadow:var(--shadow);
    white-space:normal;
    grid-template-columns:1fr 1fr;
  }
  body.menu-open .si-nav{display:grid}
  .si-nav__link{font-size:.95rem;justify-content:center;padding:12px}
}

/* Do not crop generated graphic banners */
img[src*="/images/generated/"]{
  object-fit:contain!important;
}
.si-image-card:has(img[src*="/images/generated/"]){
  padding:0;
  background:#fff;
}
.si-image-card:has(img[src*="/images/generated/"]) img{
  aspect-ratio:auto!important;
  height:auto!important;
  max-height:none!important;
  object-fit:contain!important;
}

/* Dotace generated banner should not be cropped inside content cards */
.si-prose img[src*="dotace"],
.si-image-card img[src*="dotace-na-zatepleni-modern"]{
  width:100%!important;
  height:auto!important;
  aspect-ratio:auto!important;
  object-fit:contain!important;
  border-radius:24px;
}

/* Contact generated banner: show full image on desktop too */
.si-image-card img[src*="strikana-izolace-kontakt-modern"]{
  width:100%!important;
  height:auto!important;
  aspect-ratio:auto!important;
  object-fit:contain!important;
}

/* Cleaner subpage hero */
.si-page-hero{
  padding:54px 0 52px;
}
.si-page-hero h1{
  max-width:920px;
  font-size:clamp(2.25rem,4vw,4.1rem);
}
.si-page-hero .si-lead{
  max-width:780px;
  font-size:1.14rem;
}

/* Better content blocks */
.si-prose{
  max-width:1060px;
}
.si-prose p{
  color:#364966;
}
.si-prose p:empty{display:none}
.si-section{
  overflow:hidden;
}

/* Avoid horizontal scroll from buttons/images */
body{overflow-x:hidden}
.si-btn{white-space:normal;text-align:center}
@media (max-width:760px){
  .si-wrap{padding-left:18px;padding-right:18px}
  .si-logo img{height:36px;max-width:215px}
  .si-header__inner{min-height:64px}
}


/* ===== v14 HYBRID: PUR pěna visual direction + Superizolace content ===== */
:root{
  --hy-blue:#2454ca;
  --hy-blue2:#183988;
  --hy-sky:#dff3ff;
  --hy-cyan:#18bdf2;
  --hy-ink:#071126;
  --hy-text:#1b2840;
  --hy-muted:#59677d;
  --hy-line:#dfe8f6;
  --hy-bg:#f6fbff;
  --hy-shadow:0 24px 74px rgba(11,31,70,.13);
}
body{
  background:
    radial-gradient(circle at 82% 8%, rgba(24,189,242,.12), transparent 30%),
    linear-gradient(180deg,#fff 0%,#f7fbff 52%,#fff 100%)!important;
  color:var(--hy-text)!important;
}
.hy-wrap{width:min(1260px,calc(100% - 44px));margin-inline:auto}
.si-topline{
  background:#1e3f91!important;
  font-size:14px!important;
}
.si-topline__inner{
  min-height:28px!important;
}
.si-header{
  background:rgba(255,255,255,.96)!important;
  backdrop-filter:blur(16px)!important;
  border-bottom:1px solid rgba(223,232,246,.95)!important;
}
.si-header__inner{
  min-height:78px!important;
  max-width:1260px!important;
  padding:0 22px!important;
  margin:auto!important;
}
.si-logo img{
  height:54px!important;
  max-width:285px!important;
}
.si-nav{
  gap:15px!important;
  flex-wrap:nowrap!important;
}
.si-nav__link{
  font-size:14px!important;
  font-weight:850!important;
  min-height:38px!important;
  color:#101827!important;
}
.si-nav__cta{
  min-height:46px!important;
  padding:0 18px!important;
  border-radius:999px!important;
  background:linear-gradient(135deg,var(--hy-blue),#3b68dc)!important;
  color:#fff!important;
  box-shadow:0 16px 34px rgba(36,84,202,.24)!important;
}
@media(max-width:1180px){
  .si-menu-button{display:block!important;margin-left:auto!important}
  .si-nav{
    position:absolute!important;left:22px!important;right:22px!important;top:calc(100% + 10px)!important;
    display:none!important;grid-template-columns:1fr 1fr!important;background:#fff!important;padding:16px!important;border-radius:24px!important;
    box-shadow:var(--hy-shadow)!important;border:1px solid var(--hy-line)!important;white-space:normal!important;
  }
  body.menu-open .si-nav{display:grid!important}
  .si-nav__link{justify-content:center!important;font-size:15px!important;padding:12px!important}
}
.hy-hero{
  position:relative;
  overflow:hidden;
  padding:78px 0 70px;
  background:
    radial-gradient(circle at 82% 22%,#cdeeff 0%,#eef8ff 36%,#fff 72%);
}
.hy-hero::after{
  content:"";position:absolute;right:-180px;bottom:-260px;width:560px;height:560px;border-radius:50%;
  background:rgba(36,84,202,.10);filter:blur(18px);
}
.hy-hero__grid{
  position:relative;z-index:1;display:grid;grid-template-columns:1fr .95fr;gap:56px;align-items:center;
}
.hy-eyebrow{
  margin:0 0 13px;color:var(--hy-blue);font-size:13px;font-weight:950;letter-spacing:.14em;text-transform:uppercase;
}
.hy-hero h1{
  margin:0;color:var(--hy-ink);font-size:clamp(44px,6vw,82px);line-height:1.01;letter-spacing:-.06em;max-width:760px;
}
.hy-lead{
  margin:24px 0 0;max-width:720px;color:#42536d;font-size:clamp(19px,1.75vw,25px);line-height:1.62;
}
.hy-actions{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin-top:30px}
.hy-actions--center{justify-content:center}
.hy-btn{
  display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 24px;border-radius:999px;border:0;
  background:linear-gradient(135deg,var(--hy-blue),#3d6ee2);color:#fff!important;font-weight:900;text-decoration:none!important;
  box-shadow:0 18px 40px rgba(36,84,202,.24);transition:.22s ease;cursor:pointer;
}
.hy-btn:hover{transform:translateY(-2px);box-shadow:0 24px 54px rgba(36,84,202,.33);color:#fff!important}
.hy-btn--light{background:#fff;color:var(--hy-blue)!important;border:1px solid var(--hy-line);box-shadow:0 10px 30px rgba(11,31,70,.07)}
.hy-pills{display:flex;gap:10px;flex-wrap:wrap;margin-top:26px}
.hy-pills span{
  padding:10px 15px;border-radius:999px;background:rgba(255,255,255,.82);border:1px solid var(--hy-line);font-weight:850;color:#2e3e59;
}
.hy-hero__visual{position:relative}
.hy-hero__visual img{
  width:100%;aspect-ratio:4/3;object-fit:cover;border:14px solid #fff;border-radius:34px;box-shadow:var(--hy-shadow);
}
.hy-floating-card{
  position:absolute;left:-22px;bottom:-24px;width:min(340px,86%);padding:20px 22px;border-radius:24px;background:#fff;
  border:1px solid var(--hy-line);box-shadow:var(--hy-shadow);
}
.hy-floating-card strong{display:block;color:var(--hy-ink);font-size:18px}
.hy-floating-card span{display:block;color:var(--hy-muted);margin-top:5px}
.hy-section{padding:76px 0}
.hy-section--blue{
  background:linear-gradient(135deg,#f3fbff,#ffffff);
  border-top:1px solid rgba(223,232,246,.8);
  border-bottom:1px solid rgba(223,232,246,.8);
}
.hy-section--form{background:linear-gradient(180deg,#fff,#eef8ff)}
.hy-section-title{text-align:center;max-width:760px;margin:0 auto 34px}
.hy-section-title h2{
  margin:0;color:var(--hy-ink);font-size:clamp(32px,3.6vw,54px);line-height:1.06;letter-spacing:-.045em;
}
.hy-section-title p{color:var(--hy-muted);font-size:18px;line-height:1.6}
.hy-grid{display:grid;gap:20px}
.hy-grid--services{grid-template-columns:repeat(3,minmax(0,1fr))}
.hy-card{
  position:relative;overflow:hidden;padding:28px;border-radius:26px;background:#fff;border:1px solid var(--hy-line);
  box-shadow:0 16px 44px rgba(11,31,70,.08);transition:.24s ease;min-height:232px;
}
.hy-card:hover{transform:translateY(-5px);box-shadow:0 28px 70px rgba(11,31,70,.15)}
.hy-card::after{
  content:"";position:absolute;right:-42px;top:-42px;width:130px;height:130px;border-radius:50%;
  background:radial-gradient(circle,rgba(24,189,242,.15),transparent 66%);
}
.hy-card__num{display:inline-flex;margin-bottom:18px;color:var(--hy-blue);font-weight:950;letter-spacing:.12em;font-size:13px}
.hy-card h3{margin:0 0 12px;color:var(--hy-ink);font-size:24px;line-height:1.15;letter-spacing:-.03em}
.hy-card p{margin:0;color:var(--hy-muted);line-height:1.62}
.hy-card a{display:inline-flex;margin-top:18px;color:var(--hy-blue);font-weight:900}
.hy-split{display:grid;grid-template-columns:.95fr 1.05fr;gap:54px;align-items:center}
.hy-panel{
  background:#fff;border:1px solid var(--hy-line);border-radius:32px;padding:34px;box-shadow:0 18px 50px rgba(11,31,70,.08);
}
.hy-panel h2{margin:0 0 18px;color:var(--hy-ink);font-size:clamp(30px,3.2vw,50px);line-height:1.08;letter-spacing:-.045em}
.hy-panel p{color:#40516c;font-size:18px;line-height:1.66}
.hy-benefits{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin-top:22px}
.hy-benefits span{
  padding:15px 17px;border-radius:999px;background:#f7fbff;border:1px solid var(--hy-line);font-weight:850;color:#263957;text-align:center;
}
.hy-image-stack img,.hy-review-box img{
  width:100%;height:auto;object-fit:contain;border-radius:30px;box-shadow:var(--hy-shadow);border:1px solid var(--hy-line);background:#fff;
}
.hy-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:28px}
.hy-photo{display:block;overflow:hidden;border-radius:26px;box-shadow:0 18px 50px rgba(11,31,70,.11);border:1px solid var(--hy-line)}
.hy-photo img{width:100%;height:260px;object-fit:cover;transition:.3s ease}
.hy-photo:hover img{transform:scale(1.04)}
.hy-review-box{margin-top:30px;text-align:center}
.hy-review-box img{max-width:1080px;margin:auto}
.hy-form{
  display:grid;gap:14px;background:#fff;border:1px solid var(--hy-line);border-radius:32px;padding:32px;box-shadow:0 18px 50px rgba(11,31,70,.08);
}
.hy-form input,.hy-form textarea{width:100%;border:1px solid #dce5f2;border-radius:18px;background:#fbfdff;padding:15px 16px;font:inherit}
.hy-form textarea{min-height:130px}
@media(max-width:1000px){
  .hy-hero__grid,.hy-split{grid-template-columns:1fr}
  .hy-grid--services{grid-template-columns:repeat(2,minmax(0,1fr))}
  .hy-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
  .hy-wrap{width:min(100% - 30px,1260px)}
  .hy-hero{padding:46px 0}
  .hy-hero h1{font-size:clamp(36px,11vw,56px)}
  .hy-lead{font-size:18px}
  .hy-actions{display:grid}
  .hy-btn{width:100%}
  .hy-hero__visual img{border-width:9px;border-radius:26px}
  .hy-floating-card{position:static;width:auto;margin-top:14px}
  .hy-section{padding:52px 0}
  .hy-grid--services,.hy-photo-grid,.hy-benefits{grid-template-columns:1fr}
  .hy-panel,.hy-form{padding:24px}
  .hy-photo img{height:auto}
}


/* v15 footer logo fix - readable brand on dark background */
.si-footer__logo{
  display:none!important;
}
.si-footer__brand{
  display:inline-flex;
  align-items:center;
  gap:12px;
  margin:0 0 16px;
  color:#ffffff;
  font-size:34px;
  line-height:1;
  font-weight:950;
  letter-spacing:-.045em;
  text-shadow:0 8px 24px rgba(0,0,0,.28);
}
.si-footer__icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:44px;
  height:44px;
  border-radius:14px;
  color:#ffffff;
  background:linear-gradient(135deg,#ffaf1b,#18bdf2);
  box-shadow:0 14px 34px rgba(0,0,0,.25);
  font-size:25px;
  font-weight:900;
}
@media(max-width:760px){
  .si-footer__brand{
    font-size:29px;
  }
  .si-footer__icon{
    width:40px;
    height:40px;
    font-size:23px;
  }
}


/* v16 homepage information section */
.si-topline__inner span:first-child{
  font-weight:700;
}
.hy-section--info{
  background:
    radial-gradient(circle at 12% 0%, rgba(24,189,242,.10), transparent 30%),
    linear-gradient(180deg,#ffffff 0%,#f4fbff 100%);
  border-top:1px solid rgba(223,232,246,.8);
  border-bottom:1px solid rgba(223,232,246,.8);
}
.hy-info-layout{
  display:grid;
  grid-template-columns:1.15fr .85fr;
  gap:24px;
  align-items:stretch;
}
.hy-info-main,
.hy-info-tech{
  position:relative;
  overflow:hidden;
  background:#fff;
  border:1px solid var(--hy-line);
  border-radius:34px;
  padding:34px;
  box-shadow:0 18px 52px rgba(11,31,70,.08);
}
.hy-info-main::after,
.hy-info-tech::after{
  content:"";
  position:absolute;
  right:-60px;
  top:-60px;
  width:170px;
  height:170px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(24,189,242,.16),transparent 66%);
}
.hy-info-main h2{
  margin:0 0 20px;
  color:var(--hy-ink);
  font-size:clamp(31px,3.2vw,50px);
  line-height:1.08;
  letter-spacing:-.045em;
}
.hy-info-main p,
.hy-info-tech p{
  position:relative;
  z-index:1;
  color:#40516c;
  font-size:18px;
  line-height:1.68;
}
.hy-info-tech h3{
  position:relative;
  z-index:1;
  margin:0 0 16px;
  color:var(--hy-ink);
  font-size:28px;
  letter-spacing:-.035em;
}
.hy-info-tech ul{
  position:relative;
  z-index:1;
  display:grid;
  gap:10px;
  margin:20px 0 0;
  padding:0;
  list-style:none;
}
.hy-info-tech li{
  padding:13px 15px;
  border-radius:18px;
  background:#f7fbff;
  border:1px solid var(--hy-line);
  color:#2d3d58;
  font-weight:800;
}
.hy-benefit-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
  margin-top:22px;
}
.hy-benefit-grid div{
  background:#fff;
  border:1px solid var(--hy-line);
  border-radius:24px;
  padding:20px;
  box-shadow:0 14px 38px rgba(11,31,70,.07);
}
.hy-benefit-grid strong{
  display:block;
  color:var(--hy-blue);
  font-size:17px;
  margin-bottom:8px;
}
.hy-benefit-grid span{
  display:block;
  color:#40516c;
  line-height:1.55;
}
@media(max-width:980px){
  .hy-info-layout{grid-template-columns:1fr}
  .hy-benefit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
  .hy-info-main,.hy-info-tech{padding:24px;border-radius:26px}
  .hy-benefit-grid{grid-template-columns:1fr}
  .si-topline__inner span:first-child{
    white-space:normal;
    line-height:1.25;
    padding:4px 0;
  }
}


/* v17 trust / certificates / why choose us */
.hy-section--trust{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 10% 0%, rgba(255,176,24,.12), transparent 28%),
    radial-gradient(circle at 92% 12%, rgba(24,189,242,.14), transparent 30%),
    linear-gradient(180deg,#ffffff 0%,#f6fbff 100%);
  border-top:1px solid rgba(223,232,246,.9);
  border-bottom:1px solid rgba(223,232,246,.9);
}
.hy-trust-head{
  max-width:980px;
  margin:0 auto 28px;
  text-align:center;
}
.hy-trust-head h2{
  margin:0 0 16px;
  color:var(--hy-ink);
  font-size:clamp(30px,3.4vw,52px);
  line-height:1.08;
  letter-spacing:-.045em;
}
.hy-trust-head p{
  max-width:780px;
  margin:0 auto;
  color:#40516c;
  font-size:18px;
  line-height:1.62;
}
.hy-trust-layout{
  display:grid;
  grid-template-columns:.95fr 1.05fr;
  gap:24px;
  align-items:stretch;
}
.hy-why-card{
  background:#fff;
  border:1px solid var(--hy-line);
  border-radius:34px;
  padding:32px;
  box-shadow:0 18px 52px rgba(11,31,70,.08);
}
.hy-why-card h3{
  margin:0 0 14px;
  color:var(--hy-ink);
  font-size:clamp(25px,2.4vw,36px);
  line-height:1.12;
  letter-spacing:-.04em;
}
.hy-why-card p{
  color:#40516c;
  font-size:17px;
  line-height:1.62;
}
.hy-checks{
  display:grid;
  gap:12px;
  margin-top:20px;
}
.hy-checks span{
  position:relative;
  display:block;
  padding:15px 16px 15px 46px;
  border-radius:18px;
  background:#f7fbff;
  border:1px solid var(--hy-line);
  color:#273955;
  font-weight:820;
  line-height:1.45;
}
.hy-checks span::before{
  content:"✓";
  position:absolute;
  left:16px;
  top:13px;
  width:22px;
  height:22px;
  display:grid;
  place-items:center;
  border-radius:999px;
  color:#fff;
  background:linear-gradient(135deg,var(--hy-blue),var(--hy-cyan));
  font-size:14px;
  font-weight:950;
}
.hy-trust-gallery{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:15px;
}
.hy-trust-img{
  display:block;
  width:100%;
  padding:0;
  border:1px solid var(--hy-line);
  border-radius:24px;
  overflow:hidden;
  background:#fff;
  cursor:pointer;
  box-shadow:0 16px 44px rgba(11,31,70,.08);
}
.hy-trust-img img{
  width:100%;
  height:220px;
  object-fit:contain;
  padding:12px;
  background:#fff;
  transition:.25s ease;
}
.hy-trust-img:hover img{
  transform:scale(1.025);
}
.hy-trust-placeholder{
  grid-column:1/-1;
  padding:34px;
  border-radius:24px;
  background:#fff;
  border:1px solid var(--hy-line);
  color:#40516c;
  text-align:center;
  font-weight:800;
}
.hy-slogan{
  margin:24px auto 0;
  max-width:980px;
  padding:22px 26px;
  border-radius:28px;
  text-align:center;
  color:#10213b;
  background:#fff;
  border:1px solid var(--hy-line);
  box-shadow:0 14px 40px rgba(11,31,70,.07);
  font-size:clamp(20px,2vw,28px);
  line-height:1.35;
  font-weight:820;
}
.hy-slogan strong{
  color:var(--hy-blue);
}
@media(max-width:980px){
  .hy-trust-layout{grid-template-columns:1fr}
}
@media(max-width:760px){
  .hy-trust-gallery{grid-template-columns:1fr}
  .hy-why-card{padding:24px}
  .hy-trust-img img{height:auto;max-height:260px}
}


/* v18 mobile menu button visibility fix */
.si-menu-button{
  flex:0 0 auto!important;
}
@media(max-width:1180px){
  .si-header__inner{
    justify-content:space-between!important;
    gap:12px!important;
  }
  .si-menu-button{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    flex-direction:column!important;
    gap:6px!important;
    width:58px!important;
    height:58px!important;
    min-width:58px!important;
    border:2px solid rgba(31,69,168,.22)!important;
    border-radius:20px!important;
    background:linear-gradient(180deg,#ffffff,#eef7ff)!important;
    box-shadow:0 12px 30px rgba(11,31,70,.12)!important;
    padding:0!important;
    opacity:1!important;
    visibility:visible!important;
  }
  .si-menu-button span{
    display:block!important;
    width:28px!important;
    height:3px!important;
    margin:0!important;
    border-radius:999px!important;
    background:#071126!important;
    opacity:1!important;
  }
}
@media(max-width:760px){
  .si-header__inner{
    min-height:78px!important;
    padding-left:14px!important;
    padding-right:14px!important;
  }
  .si-logo img{
    height:46px!important;
    max-width:calc(100vw - 110px)!important;
  }
  .si-menu-button{
    width:56px!important;
    height:56px!important;
    min-width:56px!important;
    border-radius:19px!important;
  }
}
@media(max-width:420px){
  .si-logo img{
    height:42px!important;
    max-width:calc(100vw - 105px)!important;
  }
  .si-menu-button{
    width:54px!important;
    height:54px!important;
    min-width:54px!important;
  }
}


/* v19 desktop header + nicer menu typography */
.si-header__inner{
  max-width:1500px!important;
  min-height:74px!important;
  gap:20px!important;
  padding-left:24px!important;
  padding-right:24px!important;
}
.si-logo{
  flex:0 0 auto!important;
  min-width:0!important;
}
.si-logo img{
  height:46px!important;
  max-width:268px!important;
  width:auto!important;
  object-fit:contain!important;
}
.si-nav{
  flex:1 1 auto!important;
  min-width:0!important;
  display:flex!important;
  justify-content:flex-end!important;
  align-items:center!important;
  gap:16px!important;
  white-space:nowrap!important;
}
.si-nav__link{
  font-family:Inter, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif!important;
  font-size:14px!important;
  font-weight:720!important;
  line-height:1!important;
  letter-spacing:-.01em!important;
  color:#182235!important;
  min-height:38px!important;
  padding:0!important;
  text-shadow:none!important;
  -webkit-font-smoothing:antialiased!important;
  text-rendering:geometricPrecision!important;
}
.si-nav__link:hover{
  color:#2454ca!important;
}
.si-nav__cta{
  min-height:44px!important;
  padding:0 18px!important;
  font-size:14px!important;
  font-weight:780!important;
  letter-spacing:-.015em!important;
  color:#fff!important;
}

/* keep top line readable but not huge */
.si-topline{
  font-size:13px!important;
}
.si-topline__inner{
  min-height:27px!important;
}

/* narrower desktops: compact but still nice */
@media(max-width:1420px){
  .si-header__inner{
    max-width:1320px!important;
    gap:14px!important;
  }
  .si-logo img{
    height:42px!important;
    max-width:228px!important;
  }
  .si-nav{
    gap:11px!important;
  }
  .si-nav__link{
    font-size:13.2px!important;
    font-weight:700!important;
  }
  .si-nav__cta{
    padding:0 14px!important;
    font-size:13.2px!important;
  }
}

/* Switch to hamburger earlier so menu never overlaps logo */
@media(max-width:1240px){
  .si-header__inner{
    justify-content:space-between!important;
  }
  .si-menu-button{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    flex-direction:column!important;
    gap:6px!important;
    width:56px!important;
    height:56px!important;
    min-width:56px!important;
    border:2px solid rgba(31,69,168,.22)!important;
    border-radius:19px!important;
    background:linear-gradient(180deg,#ffffff,#eef7ff)!important;
    box-shadow:0 12px 30px rgba(11,31,70,.12)!important;
    padding:0!important;
    opacity:1!important;
    visibility:visible!important;
    margin-left:auto!important;
  }
  .si-menu-button span{
    display:block!important;
    width:28px!important;
    height:3px!important;
    margin:0!important;
    border-radius:999px!important;
    background:#071126!important;
    opacity:1!important;
  }
  .si-nav{
    position:absolute!important;
    left:22px!important;
    right:22px!important;
    top:calc(100% + 10px)!important;
    display:none!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
    padding:16px!important;
    border-radius:24px!important;
    background:#fff!important;
    border:1px solid #e1e8f4!important;
    box-shadow:0 24px 74px rgba(11,31,70,.13)!important;
    white-space:normal!important;
  }
  body.menu-open .si-nav{
    display:grid!important;
  }
  .si-nav__link{
    justify-content:center!important;
    min-height:46px!important;
    padding:0 12px!important;
    font-size:15px!important;
    font-weight:760!important;
    border-radius:16px!important;
    background:#f7fbff!important;
  }
  .si-nav__cta{
    background:linear-gradient(135deg,#2454ca,#3d6ee2)!important;
    border-radius:16px!important;
  }
}

@media(max-width:760px){
  .si-header__inner{
    min-height:76px!important;
    padding-left:14px!important;
    padding-right:14px!important;
  }
  .si-logo img{
    height:45px!important;
    max-width:calc(100vw - 110px)!important;
  }
  .si-menu-button{
    width:56px!important;
    height:56px!important;
    min-width:56px!important;
  }
  body.menu-open .si-nav{
    grid-template-columns:1fr!important;
  }
}
@media(max-width:420px){
  .si-logo img{
    height:41px!important;
    max-width:calc(100vw - 105px)!important;
  }
}


/* v20 dotace redesign */
.grant-hero{
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:26px;
  align-items:center;
  padding:34px;
  border-radius:36px;
  background:
    radial-gradient(circle at 10% 0%, rgba(36,84,202,.08), transparent 28%),
    radial-gradient(circle at 100% 10%, rgba(52,204,255,.12), transparent 34%),
    #fff;
  border:1px solid var(--si-line);
  box-shadow:0 18px 52px rgba(11,31,70,.08);
}
.grant-kicker{
  margin:0 0 12px;
  color:var(--si-blue);
  font-size:13px;
  font-weight:850;
  letter-spacing:.18em;
  text-transform:uppercase;
}
.grant-hero__content h2{
  margin:0 0 16px;
  color:var(--si-ink);
  font-size:clamp(28px,3vw,48px);
  line-height:1.08;
  letter-spacing:-.045em;
}
.grant-hero__content p{
  margin:0;
  color:#40516c;
  font-size:18px;
  line-height:1.62;
}
.grant-pill-row{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:20px;
}
.grant-pill{
  display:inline-flex;
  align-items:center;
  min-height:44px;
  padding:0 18px;
  border-radius:999px;
  background:#f3f8ff;
  border:1px solid var(--si-line);
  color:#203453;
  font-weight:800;
}
.grant-hero__visual img{
  width:100%;
  border-radius:30px;
  display:block;
  box-shadow:0 16px 46px rgba(11,31,70,.10);
}

.grant-grid{
  display:grid;
  grid-template-columns:1.2fr .8fr;
  gap:24px;
  margin-top:24px;
}
.grant-card,.grant-advisor,.grant-program{
  background:#fff;
  border:1px solid var(--si-line);
  border-radius:34px;
  box-shadow:0 18px 48px rgba(11,31,70,.07);
}
.grant-card{
  padding:30px;
}
.grant-card h3,.grant-advisor h3,.grant-program h3{
  margin:0 0 16px;
  color:var(--si-ink);
  font-size:clamp(24px,2.2vw,34px);
  line-height:1.14;
  letter-spacing:-.03em;
}
.grant-list{
  display:grid;
  gap:12px;
}
.grant-item{
  display:grid;
  grid-template-columns:120px 1fr;
  gap:14px;
  align-items:start;
  padding:15px 16px;
  border-radius:22px;
  background:#f7fbff;
  border:1px solid var(--si-line);
}
.grant-item strong{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
  padding:0 14px;
  border-radius:999px;
  background:linear-gradient(135deg,var(--si-blue),var(--si-cyan));
  color:#fff;
  font-size:15px;
  font-weight:850;
}
.grant-item span{
  color:#334766;
  line-height:1.62;
  font-size:16px;
}
.grant-advisor{
  padding:30px;
  background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%);
}
.grant-advisor p{
  color:#40516c;
  font-size:17px;
  line-height:1.62;
}
.grant-programs{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:24px;
  margin-top:24px;
}
.grant-program{
  padding:30px;
}
.grant-program--accent{
  background:
    radial-gradient(circle at 100% 0%, rgba(36,84,202,.07), transparent 34%),
    linear-gradient(180deg,#ffffff 0%,#f5f9ff 100%);
}
.grant-bullets{
  display:grid;
  gap:12px;
}
.grant-bullets span{
  position:relative;
  display:block;
  padding:14px 16px 14px 46px;
  border-radius:20px;
  background:#f7fbff;
  border:1px solid var(--si-line);
  color:#334766;
  line-height:1.6;
  font-size:16px;
}
.grant-bullets span::before{
  content:"✓";
  position:absolute;
  left:16px;
  top:14px;
  width:20px;
  height:20px;
  border-radius:999px;
  display:grid;
  place-items:center;
  background:linear-gradient(135deg,var(--si-blue),var(--si-cyan));
  color:#fff;
  font-size:12px;
  font-weight:900;
}
.grant-link{
  display:inline-flex;
  align-items:center;
  gap:10px;
  margin-top:18px;
  color:var(--si-blue);
  font-weight:800;
  text-decoration:none;
}
.grant-link::after{
  content:"→";
  font-size:18px;
}
@media(max-width:980px){
  .grant-hero,
  .grant-grid,
  .grant-programs{
    grid-template-columns:1fr;
  }
}
@media(max-width:640px){
  .grant-hero,.grant-card,.grant-advisor,.grant-program{
    padding:22px;
    border-radius:28px;
  }
  .grant-item{
    grid-template-columns:1fr;
  }
  .grant-item strong{
    justify-self:start;
  }
}


/* v21 dotace text and spacing tightening */
.grant-hero{
  padding:28px!important;
  gap:22px!important;
}
.grant-hero__content h2{
  max-width:720px;
}
.grant-hero__content p{
  line-height:1.48!important;
  margin-bottom:0!important;
}
.grant-grid,
.grant-programs{
  gap:18px!important;
  margin-top:18px!important;
}
.grant-card,
.grant-advisor,
.grant-program{
  padding:26px!important;
}
.grant-card h3,
.grant-advisor h3,
.grant-program h3{
  margin-bottom:12px!important;
  line-height:1.08!important;
}
.grant-list{
  gap:10px!important;
}
.grant-item{
  padding:13px 15px!important;
  border-radius:18px!important;
  gap:12px!important;
}
.grant-item span{
  line-height:1.45!important;
}
.grant-bullets{
  gap:10px!important;
}
.grant-bullets span{
  padding-top:12px!important;
  padding-bottom:12px!important;
  line-height:1.45!important;
}
.grant-advisor p{
  line-height:1.48!important;
}
.grant-kicker{
  margin-bottom:9px!important;
}
@media(max-width:640px){
  .grant-hero,
  .grant-card,
  .grant-advisor,
  .grant-program{
    padding:20px!important;
  }
}


/* v22 PUR pěna / vata comparison banner */
.hy-section--comparison{
  background:
    radial-gradient(circle at 10% 0%, rgba(24,189,242,.12), transparent 30%),
    linear-gradient(180deg,#ffffff 0%,#f3f9ff 100%);
  border-top:1px solid rgba(223,232,246,.9);
  border-bottom:1px solid rgba(223,232,246,.9);
}
.hy-comparison{
  display:grid;
  grid-template-columns:.82fr 1.18fr;
  gap:28px;
  align-items:center;
}
.hy-comparison__text{
  background:#fff;
  border:1px solid var(--hy-line);
  border-radius:34px;
  padding:34px;
  box-shadow:0 18px 52px rgba(11,31,70,.08);
}
.hy-comparison__text h2{
  margin:0 0 16px;
  color:var(--hy-ink);
  font-size:clamp(30px,3.3vw,52px);
  line-height:1.06;
  letter-spacing:-.045em;
}
.hy-comparison__text p{
  color:#40516c;
  font-size:18px;
  line-height:1.62;
}
.hy-comparison__image{
  border-radius:34px;
  overflow:hidden;
  background:#fff;
  border:1px solid var(--hy-line);
  box-shadow:0 22px 64px rgba(11,31,70,.13);
}
.hy-comparison__image img,
.hy-comparison-page-image img{
  width:100%;
  height:auto;
  display:block;
  object-fit:contain;
}
.hy-comparison-page-image{
  margin:0 0 26px;
  border-radius:30px;
  overflow:hidden;
  border:1px solid var(--hy-line);
  box-shadow:0 18px 52px rgba(11,31,70,.10);
  background:#fff;
}
@media(max-width:980px){
  .hy-comparison{
    grid-template-columns:1fr;
  }
}
@media(max-width:760px){
  .hy-comparison__text{
    padding:24px;
    border-radius:26px;
  }
  .hy-comparison__image{
    border-radius:24px;
  }
}


/* v24 comparison text blocks below existing banner */
.compare-clean-intro,
.compare-clean-section{
  margin:0 0 24px;
  padding:28px;
  border-radius:32px;
  background:#fff;
  border:1px solid var(--hy-line);
  box-shadow:0 18px 52px rgba(11,31,70,.07);
}
.compare-clean-intro{
  background:
    radial-gradient(circle at 100% 0%, rgba(24,189,242,.12), transparent 34%),
    linear-gradient(180deg,#ffffff,#f7fbff);
}
.compare-clean-kicker{
  margin:0 0 10px;
  color:var(--hy-blue);
  font-size:13px;
  font-weight:900;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.compare-clean-intro h2,
.compare-clean-heading h3,
.compare-clean-split h3{
  margin:0 0 14px;
  color:var(--hy-ink);
  font-size:clamp(26px,2.8vw,42px);
  line-height:1.08;
  letter-spacing:-.04em;
}
.compare-clean-intro p,
.compare-clean-heading p,
.compare-clean-section p{
  color:#40516c;
  font-size:17px;
  line-height:1.58;
}
.compare-clean-stats,
.compare-clean-values,
.compare-clean-notes,
.compare-clean-split,
.compare-clean-cards{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
  margin-top:18px;
}
.compare-clean-stat,
.compare-clean-value,
.compare-clean-notes > div,
.compare-clean-split > div,
.compare-clean-cards > div{
  padding:22px;
  border-radius:26px;
  border:1px solid var(--hy-line);
  background:linear-gradient(180deg,#fff,#f8fbff);
}
.compare-clean-stat--blue,
.compare-clean-value--foam{
  background:
    radial-gradient(circle at 100% 0%, rgba(24,189,242,.13), transparent 34%),
    linear-gradient(180deg,#fff,#f2f9ff);
}
.compare-clean-stat span{
  color:var(--hy-blue);
  font-size:13px;
  font-weight:900;
  letter-spacing:.13em;
  text-transform:uppercase;
}
.compare-clean-stat strong{
  display:block;
  margin:8px 0 12px;
  color:var(--hy-ink);
  font-size:44px;
  line-height:1;
  letter-spacing:-.05em;
}
.compare-clean-stat small{
  display:block;
  color:#2c4c78;
  font-weight:750;
  line-height:1.45;
}
.compare-clean-value p{
  margin:0 0 14px;
  color:var(--hy-blue);
  font-size:13px;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.compare-clean-value div{
  display:grid;
  grid-template-columns:1fr auto;
  align-items:center;
  gap:12px;
  padding:13px 14px;
  border-radius:18px;
  background:#fff;
  border:1px solid #e5edf8;
  margin-bottom:10px;
}
.compare-clean-value div span{
  color:#314764;
  font-weight:700;
  line-height:1.35;
}
.compare-clean-value div strong{
  min-width:78px;
  text-align:center;
  padding:9px 12px;
  border-radius:999px;
  background:linear-gradient(135deg,var(--hy-blue),#3c6ee1);
  color:#fff;
}
.compare-clean-notes h4,
.compare-clean-cards h4{
  margin:0 0 10px;
  color:var(--hy-ink);
  font-size:22px;
  letter-spacing:-.03em;
}
.compare-clean-u{
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:12px;
  margin-top:18px;
}
.compare-clean-u div{
  padding:18px 12px;
  border-radius:22px;
  background:#f7fbff;
  border:1px solid var(--hy-line);
  text-align:center;
}
.compare-clean-u span{
  display:block;
  color:var(--hy-blue);
  font-weight:900;
  margin-bottom:8px;
}
.compare-clean-u strong{
  display:block;
  color:var(--hy-ink);
  font-size:26px;
  letter-spacing:-.04em;
}
.compare-clean-warning{
  margin:16px 0 0;
  padding:16px 18px;
  border-radius:20px;
  background:#eef6ff;
  color:#244067!important;
  font-weight:850;
}
.compare-clean-section--formula{
  background:
    radial-gradient(circle at 100% 0%, rgba(24,189,242,.14), transparent 34%),
    linear-gradient(180deg,#fff,#f5faff);
}
.compare-clean-formula{
  margin-top:18px;
  padding:24px;
  border-radius:28px;
  background:linear-gradient(135deg,var(--hy-blue),#3c6ee1);
  color:#fff;
  text-align:center;
}
.compare-clean-formula span{
  display:block;
  opacity:.88;
  font-weight:750;
}
.compare-clean-formula strong{
  display:block;
  margin:8px 0 4px;
  font-size:42px;
  line-height:1;
}
.compare-clean-formula small{
  color:#dce8ff;
}
@media(max-width:900px){
  .compare-clean-stats,
  .compare-clean-values,
  .compare-clean-notes,
  .compare-clean-split,
  .compare-clean-cards{
    grid-template-columns:1fr;
  }
  .compare-clean-u{
    grid-template-columns:repeat(3,1fr);
  }
}
@media(max-width:620px){
  .compare-clean-intro,
  .compare-clean-section{
    padding:22px;
    border-radius:26px;
  }
  .compare-clean-u{
    grid-template-columns:1fr 1fr;
  }
  .compare-clean-value div{
    grid-template-columns:1fr;
  }
  .compare-clean-value div strong{
    justify-self:start;
  }
}


/* v25 comparison table at the beginning + no crop */
.compare-table-first{
  margin:0 0 26px;
  padding:22px;
  border-radius:30px;
  background:
    radial-gradient(circle at 100% 0%, rgba(24,189,242,.10), transparent 34%),
    #ffffff;
  border:1px solid var(--hy-line);
  box-shadow:0 18px 52px rgba(11,31,70,.08);
}
.compare-table-first__label{
  display:flex;
  justify-content:space-between;
  gap:14px;
  align-items:center;
  margin-bottom:16px;
  flex-wrap:wrap;
}
.compare-table-first__label span{
  display:inline-flex;
  align-items:center;
  min-height:36px;
  padding:0 14px;
  border-radius:999px;
  color:#fff;
  background:linear-gradient(135deg,var(--hy-blue),#3c6ee1);
  font-weight:850;
  letter-spacing:.08em;
  text-transform:uppercase;
  font-size:13px;
}
.compare-table-first__label strong{
  color:var(--hy-ink);
  font-size:20px;
  letter-spacing:-.025em;
}
.compare-table-first img{
  width:100%!important;
  height:auto!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:center!important;
  border-radius:22px;
  display:block;
  background:#fff;
  border:1px solid #e4edf8;
}

/* Override any generic cropping for comparison/table images */
.si-prose .compare-table-first img,
article .compare-table-first img,
img[src*="Srovnani"],
img[src*="srovnani"],
img[src*="pur-pena-vata"]{
  height:auto!important;
  max-height:none!important;
  object-fit:contain!important;
  aspect-ratio:auto!important;
}
@media(max-width:640px){
  .compare-table-first{
    padding:16px;
    border-radius:24px;
  }
  .compare-table-first__label strong{
    font-size:17px;
  }
}


/* v26 O nas layout improvement */
.si-about-wrap{display:grid;gap:28px}
.si-about-hero{display:grid;grid-template-columns:1.08fr .92fr;gap:28px;align-items:stretch}
.si-about-hero__content,.si-about-panel,.si-about-copy-card,.si-cities,.si-about-cta,.si-about-hero__media{background:#fff;border:1px solid var(--si-line,#d8e4f1);border-radius:34px;box-shadow:0 18px 60px rgba(11,31,70,.08)}
.si-about-hero__content{padding:34px 36px}
.si-about-hero__media{overflow:hidden}
.si-about-hero__media img{width:100%;height:100%;min-height:340px;object-fit:cover;display:block}
.si-about-panels{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.si-about-panel{padding:24px 28px}
.si-about-panel h3{margin:0 0 10px;font-size:1.1rem}
.si-about-panel p{margin:0 0 8px;line-height:1.65}
.si-about-panel a{word-break:break-word}
.si-about-content{display:grid;gap:22px}
.si-about-copy-card{padding:26px 30px}
.si-about-copy-card p{margin:0 0 14px}
.si-about-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.si-fact-pill{padding:20px 22px;border-radius:24px;background:linear-gradient(180deg,#f7fbff 0%,#eef5fd 100%);border:1px solid #d9e8f7;font-weight:700;color:#16345f;line-height:1.55}
.si-cities{padding:0;overflow:hidden}
.si-cities summary{cursor:pointer;list-style:none;padding:22px 28px;font-size:1.08rem;font-weight:850;color:#0a2149;display:flex;align-items:center;justify-content:space-between;gap:14px}
.si-cities summary::-webkit-details-marker{display:none}
.si-cities summary::after{content:'+';display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:999px;background:linear-gradient(135deg,var(--si-blue,#2b57d8),#2eb4f4);color:#fff;font-size:22px;font-weight:700;flex:0 0 auto}
.si-cities[open] summary::after{content:'–'}
.si-cities__body{padding:0 28px 24px}
.si-cities__body p{margin:0;color:#395577;line-height:1.8}
.si-about-cta{display:grid;grid-template-columns:1fr .95fr;gap:24px;align-items:center;padding:30px}
.si-about-cta .si-prose{padding:0;max-width:none}
.si-about-cta .si-image-card{margin:0}
.si-about-cta .si-image-card img{width:100%;height:auto;display:block;border-radius:24px}
@media (max-width: 1100px){
  .si-about-hero,.si-about-cta{grid-template-columns:1fr}
  .si-about-panels,.si-about-facts{grid-template-columns:1fr}
}
@media (max-width: 700px){
  .si-about-hero__content,.si-about-panel,.si-about-copy-card{padding:22px}
  .si-cities summary{padding:18px 20px}
  .si-cities__body{padding:0 20px 20px}
  .si-about-cta{padding:22px}
  .si-about-hero__media img{min-height:240px}
}


/* v27 stronger blue forms, better mobile visibility */
.si-form,.hy-form{
  background:linear-gradient(180deg,#ffffff 0%,#f5f9ff 100%);
  border-color:#cddcf2;
}
.si-form input,.si-form textarea,.si-form select,
.hy-form input,.hy-form textarea{
  width:100%;
  border:1.5px solid #b7cbed;
  border-radius:18px;
  padding:15px 18px;
  font:inherit;
  color:#153157;
  background:linear-gradient(180deg,#ffffff 0%,#eff5ff 100%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.96),0 8px 22px rgba(39,95,198,.08);
  transition:border-color .2s ease, box-shadow .2s ease, background .2s ease, transform .2s ease;
}
.si-form input::placeholder,.si-form textarea::placeholder,.si-form select::placeholder,
.hy-form input::placeholder,.hy-form textarea::placeholder{
  color:#5d7192;
  opacity:1;
}
.si-form input:focus,.si-form textarea:focus,.si-form select:focus,
.hy-form input:focus,.hy-form textarea:focus{
  outline:none;
  border-color:#3567e6;
  background:#ffffff;
  box-shadow:0 0 0 4px rgba(53,103,230,.14),0 14px 34px rgba(38,84,182,.16);
}
.si-form button.si-btn,.hy-form button.hy-btn{
  box-shadow:0 20px 44px rgba(37,86,204,.24);
}
@media (max-width:700px){
  .si-form,.hy-form{
    padding:20px;
    border-radius:28px;
    box-shadow:0 16px 44px rgba(23,55,112,.10);
  }
  .si-form input,.si-form textarea,.si-form select,
  .hy-form input,.hy-form textarea{
    padding:16px 18px;
    border-radius:20px;
    font-size:17px;
    background:linear-gradient(180deg,#ffffff 0%,#ecf4ff 100%);
  }
  .si-form textarea,.hy-form textarea{min-height:150px}
}


/* v28 stronger overall form frame */
.si-form,
.hy-form{
  position:relative;
  border:2px solid #b8cef3!important;
  outline:1px solid rgba(36,84,202,.10);
  background:
    radial-gradient(circle at 100% 0%, rgba(24,189,242,.10), transparent 32%),
    linear-gradient(180deg,#ffffff 0%,#eef6ff 100%)!important;
  box-shadow:
    0 24px 70px rgba(24,66,150,.15),
    inset 0 0 0 8px rgba(255,255,255,.62)!important;
}
.si-form::before,
.hy-form::before{
  content:"";
  position:absolute;
  inset:-2px;
  z-index:-1;
  border-radius:inherit;
  background:linear-gradient(135deg,rgba(36,84,202,.28),rgba(24,189,242,.20),rgba(255,255,255,0));
}

/* v28 contact page graphic layout */
.si-contact-section{
  padding-top:54px;
}
.contact-grid{
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:24px;
  align-items:stretch;
}
.contact-main,
.contact-image-card,
.contact-box,
.contact-billing,
.service-area{
  background:#fff;
  border:1px solid var(--hy-line, #dfe8f6);
  border-radius:34px;
  box-shadow:0 18px 52px rgba(11,31,70,.08);
}
.contact-main{
  padding:34px;
  background:
    radial-gradient(circle at 100% 0%, rgba(24,189,242,.12), transparent 34%),
    linear-gradient(180deg,#ffffff 0%,#f5faff 100%);
}
.contact-kicker{
  margin:0 0 10px;
  color:var(--hy-blue,#2454ca);
  font-size:13px;
  font-weight:900;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.contact-main h2,
.service-area h2{
  margin:0 0 18px;
  color:var(--hy-ink,#071126);
  font-size:clamp(30px,3vw,48px);
  line-height:1.08;
  letter-spacing:-.045em;
}
.contact-hours{
  display:inline-flex;
  align-items:center;
  gap:12px;
  margin:6px 0 22px;
  padding:12px 16px;
  border-radius:999px;
  background:linear-gradient(135deg,var(--hy-blue,#2454ca),#3c6ee1);
  color:#fff;
  font-weight:850;
}
.contact-hours span{
  opacity:.85;
}
.contact-people{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px;
}
.contact-people article{
  padding:20px;
  border-radius:24px;
  background:#fff;
  border:1px solid #dce7f7;
}
.contact-people h3,
.contact-box h3,
.contact-billing h3{
  margin:0 0 10px;
  color:var(--hy-ink,#071126);
  font-size:24px;
  letter-spacing:-.03em;
}
.contact-people p,
.contact-box p,
.contact-billing p{
  margin:0 0 7px;
  color:#40516c;
  line-height:1.58;
}
.contact-people a,
.contact-box a,
.contact-billing a{
  color:var(--hy-blue,#2454ca);
  font-weight:800;
}
.contact-image-card{
  overflow:hidden;
  padding:12px;
}
.contact-image-card img{
  width:100%;
  height:100%;
  min-height:360px;
  object-fit:contain;
  border-radius:26px;
  background:#fff;
}
.contact-boxes{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
  margin-top:22px;
}
.contact-box{
  padding:24px;
}
.contact-billing{
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:18px;
  align-items:center;
  padding:28px;
  margin-top:22px;
  background:
    radial-gradient(circle at 100% 0%, rgba(24,189,242,.10), transparent 34%),
    #fff;
}
.billing-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.billing-grid span{
  display:block;
  padding:15px;
  border-radius:18px;
  background:#f7fbff;
  border:1px solid #dce7f7;
  color:#334766;
}
.service-area{
  padding:30px;
  margin-top:22px;
}
.region-pills{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin:18px 0 22px;
}
.region-pills span{
  display:inline-flex;
  align-items:center;
  min-height:38px;
  padding:0 14px;
  border-radius:999px;
  background:#f7fbff;
  border:1px solid #dce7f7;
  color:#29405f;
  font-weight:780;
}
.contact-cities{
  margin-top:10px;
}
.city-cloud{
  display:flex;
  flex-wrap:wrap;
  gap:9px;
  padding:0 28px 24px;
}
.city-cloud span{
  display:inline-flex;
  padding:8px 12px;
  border-radius:999px;
  background:#f7fbff;
  border:1px solid #dce7f7;
  color:#40516c;
  font-size:14px;
  font-weight:650;
}
.form-intro{
  color:#40516c;
  margin-top:-8px;
}
@media(max-width:1050px){
  .contact-grid,
  .contact-billing{
    grid-template-columns:1fr;
  }
  .contact-boxes{
    grid-template-columns:1fr;
  }
  .billing-grid{
    grid-template-columns:1fr;
  }
}
@media(max-width:720px){
  .contact-main,
  .contact-box,
  .contact-billing,
  .service-area{
    padding:22px;
    border-radius:26px;
  }
  .contact-people{
    grid-template-columns:1fr;
  }
  .contact-image-card img{
    min-height:auto;
  }
  .city-cloud{
    padding:0 20px 20px;
  }
}


/* v29 homepage why choose our foam section */
.hy-section--why-foam{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 8% 0%, rgba(24,189,242,.13), transparent 32%),
    radial-gradient(circle at 92% 8%, rgba(36,84,202,.12), transparent 34%),
    linear-gradient(180deg,#ffffff 0%,#f4faff 100%);
  border-top:1px solid rgba(223,232,246,.92);
  border-bottom:1px solid rgba(223,232,246,.92);
}
.why-foam-claim{
  max-width:1050px;
  margin:0 auto 28px;
  padding:30px 34px;
  text-align:center;
  border-radius:34px;
  background:#fff;
  border:1px solid var(--hy-line,#dfe8f6);
  box-shadow:0 18px 52px rgba(11,31,70,.08);
}
.why-foam-claim h2{
  margin:0;
  color:var(--hy-ink,#071126);
  font-size:clamp(30px,3.25vw,52px);
  line-height:1.08;
  letter-spacing:-.045em;
}
.why-foam-layout{
  display:grid;
  grid-template-columns:1.15fr .85fr;
  gap:24px;
  align-items:stretch;
}
.why-foam-main,
.why-foam-side{
  background:#fff;
  border:1px solid var(--hy-line,#dfe8f6);
  border-radius:34px;
  box-shadow:0 18px 52px rgba(11,31,70,.08);
}
.why-foam-main{
  padding:34px;
}
.why-foam-main h3{
  margin:0 0 14px;
  color:var(--hy-ink,#071126);
  font-size:clamp(28px,3vw,44px);
  line-height:1.08;
  letter-spacing:-.04em;
}
.why-foam-main p{
  color:#40516c;
  font-size:18px;
  line-height:1.62;
}
.why-foam-checks{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
  margin-top:22px;
}
.why-foam-checks div{
  position:relative;
  min-height:128px;
  padding:20px 20px 18px 64px;
  border-radius:24px;
  background:linear-gradient(180deg,#f7fbff 0%,#eef6ff 100%);
  border:1px solid #dce8f8;
}
.why-foam-checks span{
  position:absolute;
  left:20px;
  top:22px;
  width:32px;
  height:32px;
  display:grid;
  place-items:center;
  border-radius:999px;
  color:#fff;
  background:linear-gradient(135deg,var(--hy-blue,#2454ca),var(--hy-cyan,#18bdf2));
  font-weight:950;
  box-shadow:0 10px 22px rgba(36,84,202,.22);
}
.why-foam-checks strong{
  display:block;
  color:#13233d;
  font-size:18px;
  line-height:1.25;
  margin-bottom:8px;
}
.why-foam-checks small{
  display:block;
  color:#50627f;
  font-size:15px;
  line-height:1.45;
}
.why-foam-side{
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:18px;
  padding:30px;
  background:
    radial-gradient(circle at 100% 0%, rgba(24,189,242,.16), transparent 36%),
    linear-gradient(180deg,#fff,#f4f9ff);
}
.why-foam-badge{
  padding:30px;
  border-radius:30px;
  background:linear-gradient(135deg,var(--hy-blue,#2454ca),#173472);
  color:#fff;
  box-shadow:0 20px 52px rgba(36,84,202,.26);
}
.why-foam-badge strong{
  display:block;
  font-size:clamp(28px,3.2vw,46px);
  line-height:1;
  letter-spacing:-.05em;
}
.why-foam-badge span{
  display:block;
  margin-top:12px;
  color:#dceaff;
  font-weight:700;
  line-height:1.45;
}
.why-foam-mini{
  display:grid;
  gap:10px;
}
.why-foam-mini span{
  display:block;
  padding:14px 16px;
  border-radius:999px;
  background:#fff;
  border:1px solid #dce8f8;
  color:#29405f;
  font-weight:800;
  text-align:center;
}
.why-foam-slogan{
  margin:24px auto 0;
  max-width:1050px;
  padding:22px 26px;
  border-radius:28px;
  text-align:center;
  color:#10213b;
  background:#fff;
  border:1px solid var(--hy-line,#dfe8f6);
  box-shadow:0 14px 40px rgba(11,31,70,.07);
  font-size:clamp(20px,2vw,28px);
  line-height:1.35;
  font-weight:820;
}
.why-foam-slogan strong{
  color:var(--hy-blue,#2454ca);
}
@media(max-width:980px){
  .why-foam-layout,
  .why-foam-checks{
    grid-template-columns:1fr;
  }
}
@media(max-width:720px){
  .why-foam-claim,
  .why-foam-main,
  .why-foam-side{
    padding:22px;
    border-radius:26px;
  }
  .why-foam-checks div{
    min-height:auto;
    padding:18px 18px 18px 58px;
  }
  .why-foam-checks span{
    left:18px;
    top:18px;
  }
}


/* v30 WILLPUR technical sheets */
.willpur-downloads{
  margin-top:22px;
  padding:24px;
  border-radius:28px;
  background:
    radial-gradient(circle at 100% 0%, rgba(24,189,242,.12), transparent 34%),
    linear-gradient(180deg,#ffffff 0%,#f4f9ff 100%);
  border:1px solid var(--hy-line,#dfe8f6);
  box-shadow:0 16px 44px rgba(11,31,70,.08);
}
.willpur-downloads__head h3{
  margin:0 0 8px;
  color:var(--hy-ink,#071126);
  font-size:clamp(24px,2.2vw,34px);
  line-height:1.1;
  letter-spacing:-.035em;
}
.willpur-downloads__head p{
  margin:0;
  color:#40516c;
  line-height:1.55;
}
.willpur-downloads__grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
  margin-top:18px;
}
.willpur-download{
  display:flex;
  align-items:center;
  gap:14px;
  padding:16px;
  border-radius:22px;
  background:#fff;
  border:1px solid #dce8f8;
  color:#13233d;
  text-decoration:none!important;
  box-shadow:0 10px 26px rgba(11,31,70,.06);
  transition:.2s ease;
}
.willpur-download:hover{
  transform:translateY(-2px);
  border-color:#b8cef3;
  box-shadow:0 18px 44px rgba(36,84,202,.14);
}
.willpur-download__icon{
  flex:0 0 auto;
  width:52px;
  height:52px;
  display:grid;
  place-items:center;
  border-radius:16px;
  background:linear-gradient(135deg,var(--hy-blue,#2454ca),#3c6ee1);
  color:#fff;
  font-weight:950;
  font-size:14px;
  letter-spacing:.04em;
}
.willpur-download strong{
  display:block;
  color:#13233d;
  font-size:16px;
  line-height:1.25;
}
.willpur-download small{
  display:block;
  margin-top:4px;
  color:var(--hy-blue,#2454ca);
  font-weight:800;
}
@media(max-width:760px){
  .willpur-downloads{
    padding:20px;
    border-radius:24px;
  }
  .willpur-downloads__grid{
    grid-template-columns:1fr;
  }
}


/* v31 fixes from review document */

/* 1) O nás: do not crop right image too aggressively */
.si-about-hero__media{
  display:flex;
  align-items:center;
  justify-content:center;
  padding:14px;
  background:
    radial-gradient(circle at 100% 0%, rgba(24,189,242,.10), transparent 34%),
    #ffffff;
}
.si-about-hero__media img{
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  max-height:440px!important;
  object-fit:contain!important;
  object-position:center!important;
  border-radius:24px;
}

/* O nás: make the long middle area more graphic */
.si-about-panel{
  position:relative;
  overflow:hidden;
}
.si-about-panel::after{
  content:"";
  position:absolute;
  right:-42px;
  top:-42px;
  width:128px;
  height:128px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(24,189,242,.14),transparent 68%);
}
.si-about-panel--cert{
  background:linear-gradient(180deg,#ffffff,#f4f9ff);
}
.si-about-panel--reviews{
  background:linear-gradient(180deg,#ffffff,#f8fbff);
}
.si-about-copy-card{
  position:relative;
  overflow:hidden;
  border-left:5px solid var(--hy-blue,#2454ca);
  background:
    radial-gradient(circle at 100% 0%, rgba(24,189,242,.10), transparent 34%),
    #ffffff;
}
.si-about-copy-card::before{
  content:"Odborná aplikace PUR pěny";
  display:inline-flex;
  margin:0 0 14px;
  padding:8px 13px;
  border-radius:999px;
  background:#eef6ff;
  color:var(--hy-blue,#2454ca);
  font-size:13px;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.si-about-service-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
}
.si-about-service-grid article{
  padding:22px;
  border-radius:26px;
  background:linear-gradient(180deg,#ffffff,#f7fbff);
  border:1px solid var(--hy-line,#dfe8f6);
  box-shadow:0 14px 38px rgba(11,31,70,.07);
}
.si-about-service-grid span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:46px;
  min-height:38px;
  margin-bottom:12px;
  padding:0 12px;
  border-radius:999px;
  color:#fff;
  background:linear-gradient(135deg,var(--hy-blue,#2454ca),var(--hy-cyan,#18bdf2));
  font-weight:950;
}
.si-about-service-grid strong{
  display:block;
  margin-bottom:8px;
  color:var(--hy-ink,#071126);
  font-size:20px;
  letter-spacing:-.03em;
}
.si-about-service-grid p{
  margin:0;
  color:#40516c;
  line-height:1.55;
}

/* 2) Homepage service cards: remove 01, 02 numbering */
.hy-card__num{
  display:none!important;
}

/* 3) Global article style: less heavy, cleaner and more readable */
.si-page-hero{
  padding:48px 0 44px!important;
  background:
    radial-gradient(circle at 84% 14%, rgba(24,189,242,.14), transparent 34%),
    linear-gradient(180deg,#f8fbff 0%,#eef7ff 100%)!important;
}
.si-page-hero h1{
  font-size:clamp(2.25rem,4vw,4.15rem)!important;
  line-height:1.04!important;
  letter-spacing:-.045em!important;
}
.si-content > .si-prose,
.si-wrap.si-content > .si-prose{
  max-width:1080px!important;
  border-top:5px solid rgba(36,84,202,.82);
}
.si-prose h2{
  font-size:clamp(1.7rem,2.4vw,2.65rem)!important;
  line-height:1.12!important;
  letter-spacing:-.035em!important;
}
.si-prose h3{
  font-size:clamp(1.25rem,1.7vw,1.7rem)!important;
}
.si-prose p{
  line-height:1.68!important;
}
.si-prose p:first-child:has(+ h2){
  display:none;
}

/* Prevent very large final h2 blocks from looking like broken article layouts */
.si-prose h2:not(:first-child){
  margin-top:28px!important;
}

/* 4) Buttons: hover must never hide text */
.hy-btn,
.hy-btn:visited,
.si-btn,
.si-btn:visited,
.si-nav__cta,
.si-nav__cta:visited{
  color:#fff!important;
}
.hy-btn:hover,
.si-btn:hover,
.si-nav__cta:hover{
  color:#fff!important;
}
.hy-btn--light,
.hy-btn--light:visited{
  color:var(--hy-blue,#2454ca)!important;
  background:#fff!important;
}
.hy-btn--light:hover,
.hy-btn--light:focus{
  color:var(--hy-blue,#2454ca)!important;
  background:#eef6ff!important;
  border-color:#bdd2f7!important;
}
.hy-actions .hy-btn--light:hover,
.hy-actions .hy-btn--light:focus{
  color:var(--hy-blue,#2454ca)!important;
}
a.si-btn:not(.si-btn--light):hover,
button.si-btn:hover{
  color:#fff!important;
}

/* better card hover readability generally */
.si-card:hover,
.hy-card:hover{
  color:inherit!important;
}
.si-card:hover h3,
.hy-card:hover h3{
  color:var(--hy-ink,#071126)!important;
}
.si-card:hover p,
.hy-card:hover p{
  color:#40516c!important;
}

/* Responsive refinements */
@media(max-width:980px){
  .si-about-service-grid{
    grid-template-columns:1fr;
  }
}
@media(max-width:760px){
  .si-page-hero{
    padding:38px 0 34px!important;
  }
  .si-page-hero h1{
    font-size:clamp(2.05rem,10vw,3.2rem)!important;
  }
  .si-about-hero__media img{
    max-height:none!important;
  }
}


/* v32 nicer top line and Google 4.7 visual star adjustment */
.si-topline{
  background:
    linear-gradient(90deg,#183472 0%,#2454ca 52%,#18bdf2 100%)!important;
  color:#ffffff!important;
  font-size:13px!important;
  border-bottom:1px solid rgba(255,255,255,.18);
}
.si-topline__inner{
  min-height:32px!important;
  gap:14px!important;
}
.si-topline__inner span{
  display:inline-flex;
  align-items:center;
  line-height:1.2;
  font-weight:760;
  letter-spacing:-.01em;
  white-space:nowrap;
}
.si-topline__inner span:first-child{
  position:relative;
  padding-left:30px;
}
.si-topline__inner span:first-child::before{
  content:"✓";
  position:absolute;
  left:0;
  top:50%;
  transform:translateY(-50%);
  width:22px;
  height:22px;
  display:grid;
  place-items:center;
  border-radius:999px;
  color:#173472;
  background:#ffffff;
  font-size:14px;
  font-weight:950;
  box-shadow:0 6px 14px rgba(0,0,0,.14);
}
.si-topline__inner span:last-child{
  padding:5px 12px;
  border-radius:999px;
  background:rgba(255,255,255,.14);
  border:1px solid rgba(255,255,255,.18);
}

/* Google rating: last star filled to approx. 80 % */
.si-stars--google .last::before{
  width:80%!important;
}

@media(max-width:760px){
  .si-topline{
    font-size:12.5px!important;
  }
  .si-topline__inner{
    min-height:auto!important;
    padding-top:7px!important;
    padding-bottom:7px!important;
    flex-direction:column;
    justify-content:center!important;
    gap:6px!important;
    text-align:center;
  }
  .si-topline__inner span{
    white-space:normal;
    justify-content:center;
  }
  .si-topline__inner span:first-child{
    padding-left:28px;
  }
  .si-topline__inner span:last-child{
    display:none;
  }
}


/* v33 – stronger framing for banners/cards/panels */
:root{
  --si-strong-frame-color: rgba(67, 112, 228, .24);
  --si-strong-frame-shadow:
    0 0 0 2px rgba(67,112,228,.16),
    0 18px 46px rgba(11,31,70,.10),
    inset 0 1px 0 rgba(255,255,255,.82);
}

/* main white banners / callout areas */
.si-review-banner,
.si-image-card,
.hy-why-card,
.si-about-copy-card,
.si-cities,
.si-about-cta,
.si-about-hero__media,
.si-page-hero__media,
.compare-clean-section,
.compare-clean-formula,
.compare-clean-intro,
.compare-clean-u,
.compare-clean-value,
.compare-clean-stat,
.compare-clean-heading,
.compare-clean-notes > *,
.compare-clean-cards > *,
.compare-clean-stats > *,
.compare-clean-values > *,
[class*="banner-card"],
[class*="hero-card"],
[class*="info-card"],
[class*="compare-card"]{
  border:2px solid var(--si-strong-frame-color)!important;
  box-shadow:var(--si-strong-frame-shadow)!important;
}

/* larger section wrappers */
.si-section > .container > .si-panel,
.si-section > .container > .si-card,
.si-section > .container > .si-box,
.si-section > .container > .si-bubble{
  border:2px solid var(--si-strong-frame-color)!important;
  box-shadow:var(--si-strong-frame-shadow)!important;
}

/* image / banner modules */
.si-review-banner img,
.si-image-card img,
.compare-clean-section img{
  filter:saturate(1.02) contrast(1.02);
}

/* mobile – keep visible but not too heavy */
@media (max-width:760px){
  .si-review-banner,
  .si-image-card,
  .hy-why-card,
  .si-about-copy-card,
  .si-cities,
  .si-about-cta,
  .si-about-hero__media,
  .si-page-hero__media,
  .compare-clean-section,
  .compare-clean-formula,
  .compare-clean-intro,
  .compare-clean-u,
  .compare-clean-value,
  .compare-clean-stat,
  .compare-clean-heading,
  .compare-clean-notes > *,
  .compare-clean-cards > *,
  .compare-clean-stats > *,
  .compare-clean-values > *{
    border-width:1.5px!important;
    box-shadow:
      0 0 0 1.5px rgba(67,112,228,.16),
      0 14px 28px rgba(11,31,70,.08),
      inset 0 1px 0 rgba(255,255,255,.84)!important;
  }
}


/* v34 stronger shadow depth around banners and cards */
:root{
  --si-deep-banner-shadow:
    0 0 0 2px rgba(67,112,228,.18),
    0 24px 72px rgba(11,31,70,.16),
    0 8px 24px rgba(36,84,202,.10),
    inset 0 1px 0 rgba(255,255,255,.88);
  --si-deep-image-shadow:
    0 0 0 2px rgba(67,112,228,.16),
    0 30px 90px rgba(11,31,70,.20),
    0 10px 28px rgba(36,84,202,.12);
}

/* hlavní bannery / bílé grafické bloky */
.si-review-banner,
.si-image-card,
.hy-panel,
.hy-card,
.hy-floating-card,
.hy-review-box img,
.hy-form,
.si-form,
.hy-why-card,
.why-foam-claim,
.why-foam-main,
.why-foam-side,
.why-foam-slogan,
.hy-info-main,
.hy-info-tech,
.hy-benefit-grid div,
.hy-comparison__text,
.hy-comparison__image,
.willpur-downloads,
.contact-main,
.contact-image-card,
.contact-box,
.contact-billing,
.service-area,
.grant-hero,
.grant-card,
.grant-advisor,
.grant-program,
.compare-table-first,
.compare-clean-intro,
.compare-clean-section,
.si-about-hero__content,
.si-about-hero__media,
.si-about-panel,
.si-about-copy-card,
.si-about-service-grid article,
.si-cities,
.si-about-cta{
  box-shadow:var(--si-deep-banner-shadow)!important;
}

/* obrazové bannery a velké vizuály */
.hy-hero__visual img,
.si-visual img,
.hy-comparison__image,
.hy-comparison-page-image,
.si-review-banner,
.contact-image-card,
.grant-hero__visual img,
.why-foam-badge{
  box-shadow:var(--si-deep-image-shadow)!important;
}

/* jemný hover efekt u karet */
.hy-card:hover,
.si-card:hover,
.willpur-download:hover,
.why-foam-checks div:hover,
.hy-benefit-grid div:hover{
  transform:translateY(-3px);
  box-shadow:
    0 0 0 2px rgba(67,112,228,.22),
    0 30px 84px rgba(11,31,70,.18),
    0 10px 30px rgba(36,84,202,.13)!important;
}

@media(max-width:760px){
  .si-review-banner,
  .si-image-card,
  .hy-panel,
  .hy-card,
  .hy-form,
  .si-form,
  .hy-why-card,
  .why-foam-claim,
  .why-foam-main,
  .why-foam-side,
  .hy-info-main,
  .hy-info-tech,
  .contact-main,
  .contact-image-card,
  .contact-box,
  .contact-billing,
  .service-area,
  .grant-hero,
  .grant-card,
  .grant-advisor,
  .grant-program,
  .compare-table-first,
  .compare-clean-intro,
  .compare-clean-section{
    box-shadow:
      0 0 0 1.5px rgba(67,112,228,.16),
      0 18px 44px rgba(11,31,70,.13),
      0 6px 18px rgba(36,84,202,.08)!important;
  }
}


/* v35 removed blue SUPERIZOLACE badge; refine remaining mini pills */
.why-foam-side{
  justify-content:center!important;
}
.why-foam-side .why-foam-mini{
  gap:12px!important;
}
.why-foam-side .why-foam-mini span{
  min-height:52px;
  display:flex!important;
  align-items:center;
  justify-content:center;
  box-shadow:0 12px 28px rgba(11,31,70,.08);
}




/* v37 - remove custom cookie bar + professional article/page header style */

/* Modern page heading banner on all article/subpages */
.si-page-hero{
  position:relative!important;
  padding:72px 0 52px!important;
  background:
    radial-gradient(circle at 16% 0%, rgba(24,189,242,.13), transparent 34%),
    radial-gradient(circle at 86% 18%, rgba(36,84,202,.14), transparent 38%),
    linear-gradient(180deg,#f8fbff 0%,#eef7ff 100%)!important;
  border-bottom:1px solid rgba(211,226,244,.85);
  overflow:hidden;
}

.si-page-hero::before{
  content:"";
  position:absolute;
  inset:auto -8% -52px -8%;
  height:120px;
  background:linear-gradient(180deg,rgba(255,255,255,0),rgba(255,255,255,.75));
  pointer-events:none;
}

.si-page-hero .si-wrap{
  position:relative;
  display:flex;
  justify-content:center;
}

.si-page-hero h1{
  width:min(980px,100%)!important;
  margin:0 auto!important;
  padding:30px 38px!important;
  text-align:center!important;
  color:#071126!important;
  font-size:clamp(2.2rem,4vw,4.25rem)!important;
  line-height:1.05!important;
  letter-spacing:-.055em!important;
  border-radius:34px;
  background:
    radial-gradient(circle at 100% 0%, rgba(24,189,242,.10), transparent 36%),
    #ffffff;
  border:2px solid rgba(67,112,228,.18);
  box-shadow:
    0 0 0 2px rgba(67,112,228,.08),
    0 24px 72px rgba(11,31,70,.13),
    inset 0 1px 0 rgba(255,255,255,.9);
}

.si-page-hero h1::before{
  content:"SUPERIZOLACE S.R.O.";
  display:block;
  margin:0 0 12px;
  color:#2454ca;
  font-size:13px;
  line-height:1;
  font-weight:950;
  letter-spacing:.18em;
  text-transform:uppercase;
}


.si-content{
  margin-top:-18px;
}

.si-content > .si-prose,
.si-wrap.si-content > .si-prose{
  max-width:1120px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding:40px!important;
  border-radius:34px!important;
  background:#ffffff!important;
  border:2px solid rgba(67,112,228,.18)!important;
  box-shadow:
    0 0 0 2px rgba(67,112,228,.07),
    0 24px 72px rgba(11,31,70,.11)!important;
}

.si-prose h2{
  text-align:left;
  max-width:900px;
  color:#071126!important;
  font-size:clamp(1.75rem,2.8vw,3.2rem)!important;
  line-height:1.08!important;
  letter-spacing:-.045em!important;
  margin-top:32px!important;
  margin-bottom:16px!important;
}

.si-prose h2:first-child{
  margin-top:0!important;
}

.si-prose h3{
  color:#071126!important;
  font-size:clamp(1.25rem,1.9vw,2rem)!important;
  letter-spacing:-.03em!important;
}

.si-prose p{
  color:#203b60!important;
  font-size:18px;
  line-height:1.68!important;
}

/* Remove clipped/excerpt-looking duplicated first paragraph before H2 */
.si-prose > p:first-child:has(+ h2){
  display:none!important;
}

/* Give important highlight boxes a better look */
.si-highlight,
.si-prose .si-highlight{
  border:1.5px solid rgba(67,112,228,.22)!important;
  background:
    radial-gradient(circle at 100% 0%, rgba(24,189,242,.12), transparent 34%),
    linear-gradient(180deg,#ffffff,#f4f9ff)!important;
  box-shadow:
    0 14px 36px rgba(11,31,70,.08),
    inset 0 1px 0 rgba(255,255,255,.8)!important;
}

/* Prevent page title being hidden under sticky header on anchors */
main{
  scroll-margin-top:110px;
}

@media(max-width:760px){
  .si-page-hero{
    padding:42px 0 34px!important;
  }
  .si-page-hero h1{
    padding:22px 20px!important;
    border-radius:26px;
    font-size:clamp(2rem,9vw,3.2rem)!important;
  }
  .si-page-hero h1::before{
    font-size:11px;
    letter-spacing:.14em;
  }
  .si-content > .si-prose,
  .si-wrap.si-content > .si-prose{
    padding:24px!important;
    border-radius:26px!important;
  }
  .si-prose p{
    font-size:16.5px;
  }
}



/* v40 clean static package marker */
html{
  scroll-behavior:smooth;
}






/* v44 centered cookie modal */
.si-cookie-consent,
.si-cookie-consent *{
  display:none!important;
}
.si-cookie-modal[hidden]{
  display:none!important;
}
.si-cookie-modal{
  position:fixed;
  inset:0;
  z-index:2147483000;
  display:grid;
  place-items:center;
  padding:22px;
}
.si-cookie-modal__backdrop{
  position:absolute;
  inset:0;
  background:rgba(248,251,255,.78);
  backdrop-filter:blur(2px);
}
.si-cookie-modal__box{
  position:relative;
  width:min(720px,100%);
  display:grid;
  gap:16px;
  padding:26px;
  border-radius:26px;
  background:#ffffff;
  border:1px solid rgba(25,52,98,.12);
  box-shadow:
    0 34px 90px rgba(8,25,58,.18),
    0 0 0 1px rgba(255,255,255,.72) inset;
}
.si-cookie-modal__text{
  display:grid;
  gap:8px;
  color:#2f3f56;
}
.si-cookie-modal__text strong{
  color:#071126;
  font-size:22px;
  letter-spacing:-.025em;
}
.si-cookie-modal__text span{
  font-size:15.5px;
  line-height:1.55;
}
.si-cookie-modal__settings{
  display:grid;
  gap:10px;
}
.si-cookie-modal__settings[hidden]{
  display:none!important;
}
.si-cookie-option{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:14px 16px;
  border-radius:18px;
  background:#f7fbff;
  border:1px solid #dce8f8;
}
.si-cookie-option strong{
  display:block;
  color:#071126;
  margin-bottom:4px;
}
.si-cookie-option span{
  display:block;
  color:#53657e;
  font-size:13.5px;
  line-height:1.42;
}
.si-cookie-option em{
  flex:0 0 auto;
  color:#2454ca;
  font-style:normal;
  font-weight:850;
  font-size:13px;
}
.si-cookie-option input{
  width:22px;
  height:22px;
  accent-color:#2454ca;
}
.si-cookie-modal__actions,
.si-cookie-modal__settings-actions{
  display:flex;
  justify-content:flex-end;
  gap:10px;
  flex-wrap:wrap;
}
.si-cookie-modal__btn{
  min-height:46px;
  padding:0 22px;
  border:0;
  border-radius:999px;
  background:linear-gradient(135deg,#2454ca,#3c6ee1);
  color:#fff!important;
  font-weight:850;
  cursor:pointer;
  box-shadow:0 14px 30px rgba(36,84,202,.22);
}
.si-cookie-modal__btn--settings,
.si-cookie-modal__btn--light{
  background:#fff!important;
  color:#2454ca!important;
  border:1px solid #cbdaf5!important;
  box-shadow:none!important;
}
.si-cookie-modal__btn--settings{
  opacity:.92;
}
.si-cookie-modal__btn:hover{
  transform:translateY(-1px);
}
html.si-cookie-open{
  overflow:hidden;
}
@media(max-width:760px){
  .si-cookie-modal{
    align-items:end;
    padding:12px;
  }
  .si-cookie-modal__box{
    padding:18px;
    border-radius:22px;
  }
  .si-cookie-modal__actions,
  .si-cookie-modal__settings-actions{
    display:grid;
    grid-template-columns:1fr;
  }
  .si-cookie-modal__btn{
    width:100%;
  }
}


/* v46 reference, footer and speed visual cleanup */

/* Reference page: less oversized and less scattered */
.reviews-compact-links{
  padding-top:18px!important;
  padding-bottom:58px!important;
}
.reviews-compact-links__inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:22px;
  padding:24px 28px;
  border-radius:30px;
  background:#fff;
  border:2px solid rgba(67,112,228,.16);
  box-shadow:0 18px 48px rgba(11,31,70,.10);
}
.reviews-compact-links__inner h2{
  margin:0;
  color:#071126;
  font-size:clamp(26px,2.5vw,40px);
  line-height:1.08;
  letter-spacing:-.04em;
}
.reviews-compact-links__actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}

/* The large review graphic should breathe less and not dominate the whole page */
.reference-superizolace .si-review-banner,
body .si-review-banner{
  max-width:1120px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
.si-review-banner img{
  max-height:620px!important;
  object-fit:contain!important;
}

/* Page hero subtitle / intro on article pages tighter */
.si-page-hero{
  padding-top:52px!important;
  padding-bottom:38px!important;
}
.si-page-hero h1{
  max-width:860px!important;
  padding-top:24px!important;
  padding-bottom:24px!important;
  font-size:clamp(2rem,3.3vw,3.6rem)!important;
}
.si-page-hero .si-wrap > p,
.si-page-hero p{
  max-width:520px;
  font-size:18px!important;
  line-height:1.5!important;
}

/* Footer compact */
.si-footer--compact,
footer.si-footer--compact{
  padding-top:44px!important;
  padding-bottom:44px!important;
}
.si-footer--compact .si-wrap,
footer.si-footer--compact .si-wrap{
  display:grid!important;
  grid-template-columns:1.4fr .8fr .8fr!important;
  gap:34px!important;
  align-items:start!important;
}
.si-footer--compact p,
.si-footer--compact a,
footer.si-footer--compact p,
footer.si-footer--compact a{
  font-size:16px!important;
  line-height:1.55!important;
}
.si-footer--compact h3,
footer.si-footer--compact h3{
  margin-top:0!important;
  margin-bottom:14px!important;
  font-size:20px!important;
}
.si-footer--compact .si-footer__logo,
footer.si-footer--compact .si-footer__logo{
  max-width:260px!important;
  margin-bottom:16px!important;
}

/* Reduce some heavy transitions/shadows on hover for smoother loading/scrolling */
.hy-card,
.si-card,
.willpur-download,
.why-foam-checks div,
.hy-benefit-grid div{
  will-change:auto!important;
}
.hy-card:hover,
.si-card:hover,
.willpur-download:hover,
.why-foam-checks div:hover,
.hy-benefit-grid div:hover{
  transform:translateY(-1px)!important;
}

/* Images: avoid layout jumps */
img{
  max-width:100%;
}

/* Better responsive handling */
@media(max-width:980px){
  .reviews-compact-links__inner{
    display:grid;
  }
  .si-footer--compact .si-wrap,
  footer.si-footer--compact .si-wrap{
    grid-template-columns:1fr!important;
    gap:22px!important;
  }
}
@media(max-width:760px){
  .reviews-compact-links{
    padding-bottom:38px!important;
  }
  .reviews-compact-links__inner{
    padding:20px;
    border-radius:24px;
  }
  .reviews-compact-links__actions{
    display:grid;
    grid-template-columns:1fr;
  }
  .reviews-compact-links__actions .si-btn{
    width:100%;
    text-align:center;
  }
  .si-review-banner img{
    max-height:none!important;
  }
  .si-page-hero{
    padding-top:36px!important;
    padding-bottom:30px!important;
  }
}


/* v48 gallery split into 3 pages */
.si-gallery-pagination{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin:0 0 20px;
  padding:16px 18px;
  border-radius:24px;
  background:#fff;
  border:1.5px solid rgba(67,112,228,.18);
  box-shadow:0 14px 34px rgba(11,31,70,.08);
}
.si-gallery + .si-gallery-pagination{
  margin:22px 0 0;
}
.si-gallery-pagination__info{
  color:#344a68;
  font-weight:750;
}
.si-gallery-pagination__links{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}
.si-gallery-pagination__link{
  min-width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:#f7fbff;
  border:1px solid #dce8f8;
  color:#2454ca;
  font-weight:900;
  text-decoration:none!important;
}
.si-gallery-pagination__link.is-active{
  background:linear-gradient(135deg,#2454ca,#3c6ee1);
  color:#fff;
  border-color:transparent;
  box-shadow:0 12px 24px rgba(36,84,202,.22);
}
@media(max-width:760px){
  .si-gallery-pagination{
    display:grid;
    text-align:center;
  }
  .si-gallery-pagination__links{
    justify-content:center;
  }
}


/* v50 - efekty zpět + lehce prémiovější hloubka */
:root{
  --si-premium-shadow:
    0 0 0 2px rgba(67,112,228,.15),
    0 28px 78px rgba(11,31,70,.16),
    0 10px 26px rgba(36,84,202,.10),
    inset 0 1px 0 rgba(255,255,255,.88);
  --si-premium-shadow-strong:
    0 0 0 2px rgba(67,112,228,.20),
    0 36px 96px rgba(11,31,70,.20),
    0 12px 32px rgba(36,84,202,.14),
    inset 0 1px 0 rgba(255,255,255,.9);
}

/* vrácené výraznější stíny a 3D pocit */
.si-review-banner,
.si-image-card,
.hy-panel,
.hy-card,
.hy-floating-card,
.hy-review-box img,
.hy-form,
.si-form,
.hy-why-card,
.why-foam-claim,
.why-foam-main,
.why-foam-side,
.why-foam-slogan,
.hy-info-main,
.hy-info-tech,
.hy-benefit-grid div,
.hy-comparison__text,
.hy-comparison__image,
.willpur-downloads,
.contact-main,
.contact-image-card,
.contact-box,
.contact-billing,
.service-area,
.grant-hero,
.grant-card,
.grant-advisor,
.grant-program,
.compare-table-first,
.compare-clean-intro,
.compare-clean-section,
.si-about-hero__content,
.si-about-hero__media,
.si-about-panel,
.si-about-copy-card,
.si-about-service-grid article,
.si-cities,
.si-about-cta,
.reviews-compact-links__inner{
  box-shadow:var(--si-premium-shadow)!important;
}

/* důležité vizuály ještě výrazněji */
.hy-hero__visual img,
.hy-comparison__image,
.hy-comparison-page-image,
.si-review-banner,
.contact-image-card,
.grant-hero__visual img,
.why-foam-badge,
.compare-table-first img{
  box-shadow:var(--si-premium-shadow-strong)!important;
}

/* jemný světelný efekt na hlavních bílých kartách */
.hy-card,
.si-card,
.hy-panel,
.hy-why-card,
.why-foam-main,
.why-foam-side,
.contact-main,
.grant-card,
.compare-clean-section,
.si-about-copy-card{
  position:relative;
  overflow:hidden;
}
.hy-card::before,
.si-card::before,
.hy-panel::before,
.hy-why-card::before,
.why-foam-main::before,
.why-foam-side::before,
.contact-main::before,
.grant-card::before,
.compare-clean-section::before,
.si-about-copy-card::before{
  content:"";
  position:absolute;
  left:-30%;
  top:-65%;
  width:70%;
  height:150%;
  background:linear-gradient(110deg,transparent,rgba(255,255,255,.34),transparent);
  transform:rotate(12deg);
  pointer-events:none;
  opacity:.65;
}

/* pěknější hover, ale pořád rozumný */
.hy-card:hover,
.si-card:hover,
.willpur-download:hover,
.why-foam-checks div:hover,
.hy-benefit-grid div:hover,
.contact-box:hover,
.grant-card:hover,
.compare-clean-section:hover,
.si-about-service-grid article:hover{
  transform:translateY(-5px)!important;
  box-shadow:
    0 0 0 2px rgba(67,112,228,.23),
    0 38px 98px rgba(11,31,70,.20),
    0 14px 34px rgba(36,84,202,.15)!important;
}

/* vrácení jemného blur u cookie okna, ale ne extrémně */
.si-cookie-modal__backdrop{
  background:rgba(248,251,255,.70)!important;
  backdrop-filter:blur(5px)!important;
}
.si-cookie-modal__box{
  box-shadow:
    0 38px 100px rgba(8,25,58,.22),
    0 0 0 1px rgba(255,255,255,.8) inset!important;
}

/* více efektu v horním hero */
.hy-hero::after{
  content:"";
  position:absolute;
  right:-120px;
  top:70px;
  width:320px;
  height:320px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(24,189,242,.18),transparent 68%);
  pointer-events:none;
}
.si-page-hero h1{
  box-shadow:
    0 0 0 2px rgba(67,112,228,.10),
    0 30px 86px rgba(11,31,70,.16),
    inset 0 1px 0 rgba(255,255,255,.9)!important;
}

/* obrázky v galerii živější */
.si-gallery-item{
  box-shadow:
    0 0 0 1.5px rgba(67,112,228,.12),
    0 18px 46px rgba(11,31,70,.13)!important;
  transition:transform .24s ease, box-shadow .24s ease!important;
}
.si-gallery-item:hover{
  transform:translateY(-4px)!important;
  box-shadow:
    0 0 0 2px rgba(67,112,228,.20),
    0 30px 74px rgba(11,31,70,.18)!important;
}

/* mobil: efekty zachovat, ale trochu zjemnit kvůli scrollu */
@media(max-width:760px){
  .si-review-banner,
  .si-image-card,
  .hy-panel,
  .hy-card,
  .hy-form,
  .si-form,
  .hy-why-card,
  .why-foam-claim,
  .why-foam-main,
  .why-foam-side,
  .hy-info-main,
  .hy-info-tech,
  .contact-main,
  .contact-image-card,
  .contact-box,
  .contact-billing,
  .service-area,
  .grant-hero,
  .grant-card,
  .grant-advisor,
  .grant-program,
  .compare-table-first,
  .compare-clean-intro,
  .compare-clean-section{
    box-shadow:
      0 0 0 1.5px rgba(67,112,228,.15),
      0 20px 54px rgba(11,31,70,.15)!important;
  }
  .hy-card:hover,
  .si-card:hover,
  .willpur-download:hover,
  .why-foam-checks div:hover,
  .hy-benefit-grid div:hover,
  .contact-box:hover,
  .grant-card:hover,
  .compare-clean-section:hover{
    transform:none!important;
  }
}

/* v51 article hero images under page headings */
.article-hero-image-section{padding-top:26px!important;padding-bottom:10px!important}
.article-hero-image{margin:0 auto;width:min(1060px,100%);border-radius:34px;overflow:hidden;background:#fff;border:2px solid rgba(67,112,228,.18);box-shadow:0 0 0 2px rgba(67,112,228,.10),0 30px 86px rgba(11,31,70,.16),inset 0 1px 0 rgba(255,255,255,.88)}
.article-hero-image img{width:100%;height:auto;max-height:520px;object-fit:cover;object-position:center;display:block}
@media(max-width:760px){.article-hero-image-section{padding-top:18px!important}.article-hero-image{border-radius:24px}.article-hero-image img{max-height:none}}


/* v52 docx requested cleanup */

/* remove repeated SUPERIZOLACE S.R.O. label from all article/page headings */
.si-page-hero h1::before{
  display:none!important;
  content:none!important;
}

/* smoother menu text rendering */
.si-nav__link,
.si-topline,
.si-topline__inner span,
.si-menu-button,
.si-logo{
  -webkit-font-smoothing:antialiased!important;
  -moz-osx-font-smoothing:grayscale!important;
  text-rendering:geometricPrecision!important;
}

/* less oversized global spacing */
.si-section{
  padding-top:54px!important;
  padding-bottom:54px!important;
}
.hy-section{
  padding-top:62px!important;
  padding-bottom:62px!important;
}
.si-page-hero{
  padding-top:46px!important;
  padding-bottom:34px!important;
}
.si-page-hero h1{
  font-size:clamp(2rem,3.45vw,3.75rem)!important;
  padding:24px 30px!important;
}
.si-content > .si-prose,
.si-wrap.si-content > .si-prose{
  padding:32px!important;
}

/* reference banner fixes */
.si-review-banner,
.review-banner-link{
  display:block;
  max-width:1040px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  position:relative;
  z-index:1;
}
.review-banner-link img{
  display:block;
  width:100%;
}
.reviews-compact-links{
  display:none!important;
}

/* fix image/banner overlap generally */
.article-hero-image-section{
  clear:both;
  position:relative;
  z-index:1;
}
.article-hero-image{
  margin-bottom:18px!important;
}
.article-hero-image img{
  object-position:center!important;
}

/* empty right banner issue in why foam section: make it one strong full-width block */
.why-foam-layout{
  grid-template-columns:1fr!important;
}
.why-foam-side{
  display:none!important;
}
.why-foam-main{
  max-width:1120px;
  margin:0 auto;
}
.why-foam-checks{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
}
.why-foam-checks div{
  min-height:150px;
}

/* less empty space under left banner / visual blocks */
.hy-hero,
.si-hero{
  padding-bottom:52px!important;
}
.hy-floating-card{
  bottom:-10px!important;
}

/* forms: nicer select */
.si-form select,
.hy-form select{
  width:100%;
  border:1.5px solid #b7cbed;
  border-radius:18px;
  padding:15px 18px;
  font:inherit;
  color:#153157;
  background:linear-gradient(180deg,#ffffff 0%,#eff5ff 100%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.96),0 8px 22px rgba(39,95,198,.08);
}
.si-form select:focus,
.hy-form select:focus{
  outline:none;
  border-color:#3567e6;
  box-shadow:0 0 0 4px rgba(53,103,230,.14),0 14px 34px rgba(38,84,182,.16);
}

/* lightbox: remove weird frame shadow */
.si-lightbox__panel,
.si-lightbox__image{
  box-shadow:none!important;
}
.si-lightbox__image{
  border-radius:18px!important;
  border:0!important;
}
.si-lightbox__caption{
  box-shadow:0 14px 34px rgba(11,31,70,.16)!important;
}

/* footer less high */
.si-footer,
footer{
  padding-top:34px!important;
  padding-bottom:34px!important;
}
.si-footer .si-wrap,
footer .si-wrap{
  gap:24px!important;
}
.si-footer p,
.si-footer a,
footer p,
footer a{
  line-height:1.48!important;
}

/* contact/banner overlap safety */
.contact-grid,
.contact-main,
.contact-image-card,
.contact-billing,
.service-area{
  position:relative;
  z-index:1;
}
.contact-image-card img{
  object-fit:contain!important;
}

/* remove final crooked image style if it exists as a single article hero at end */
.si-prose + .article-hero-image-section{
  display:none!important;
}

@media(max-width:1100px){
  .why-foam-checks{
    grid-template-columns:1fr 1fr!important;
  }
}
@media(max-width:760px){
  .si-section,
  .hy-section{
    padding-top:38px!important;
    padding-bottom:38px!important;
  }
  .si-page-hero h1{
    font-size:clamp(1.85rem,8.5vw,3rem)!important;
    padding:20px!important;
  }
  .si-content > .si-prose,
  .si-wrap.si-content > .si-prose{
    padding:22px!important;
  }
  .why-foam-checks{
    grid-template-columns:1fr!important;
  }
}


/* v53 - less empty space in homepage text/technical card section */

/* Fill left homepage info column so it does not end with a large blank area */
.home-info-fill{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin-top:26px;
}
.home-info-fill__item{
  padding:16px 15px;
  border-radius:22px;
  background:
    radial-gradient(circle at 100% 0%, rgba(24,189,242,.11), transparent 38%),
    linear-gradient(180deg,#ffffff,#f4f9ff);
  border:1.5px solid rgba(67,112,228,.18);
  box-shadow:0 14px 34px rgba(11,31,70,.08);
}
.home-info-fill__item strong{
  display:block;
  color:#071126;
  font-size:16px;
  line-height:1.15;
  margin-bottom:6px;
  letter-spacing:-.02em;
}
.home-info-fill__item span{
  display:block;
  color:#3e526f;
  font-size:14px;
  line-height:1.42;
}

/* Make the two-column main-info area more compact and visually balanced */
.hy-info,
.hy-info-grid,
.hy-info__grid,
.hy-info-wrap,
.hy-info-main,
.hy-info-tech{
  align-items:start!important;
}
.hy-info-main,
.hy-info-tech{
  min-height:0!important;
}
.hy-info-main{
  padding-bottom:30px!important;
}
.hy-info-main p{
  margin-bottom:18px!important;
}
.hy-info-tech{
  padding-bottom:28px!important;
}
.hy-info-tech .willpur-downloads,
.willpur-downloads{
  margin-top:22px!important;
}

/* If any old/min-height from previous layout made columns too high, neutralize it. */
.hy-info-main,
.hy-info-tech,
.why-foam-main,
.contact-main,
.si-prose{
  height:auto!important;
}

/* Reduce excessive vertical whitespace inside homepage content cards */
.hy-section .hy-panel,
.hy-section .hy-card,
.si-section .si-card,
.si-section .si-prose{
  margin-top:0!important;
}
.hy-benefit-grid{
  margin-top:24px!important;
}

/* More balanced technical-list card */
.willpur-downloads{
  display:grid!important;
  gap:16px!important;
}
.willpur-download{
  align-items:center!important;
  min-height:96px!important;
}

/* Make the heading in that text block slightly less tall */
.hy-info-main h2,
.hy-info-main h3{
  font-size:clamp(2rem,3vw,3.55rem)!important;
  line-height:1.06!important;
  margin-bottom:20px!important;
}

/* Avoid giant blank space if text column is shorter than right technical card */
@media(min-width:980px){
  .hy-info-grid,
  .hy-info__grid{
    grid-template-columns:minmax(0,1.18fr) minmax(360px,.82fr)!important;
  }
}

@media(max-width:980px){
  .home-info-fill{
    grid-template-columns:1fr;
  }
}
@media(max-width:760px){
  .home-info-fill{
    margin-top:20px;
  }
  .home-info-fill__item{
    padding:14px;
    border-radius:18px;
  }
}


/* v53b direct fix for homepage empty left content */
.home-info-fill{
  width:100%;
  clear:both;
}
.home-info-fill + *{
  margin-top:18px!important;
}


/* v54 lightbox: remove thin blue frame and use cleaner image-focused effect */
.si-lightbox__panel{
  border:0!important;
  outline:none!important;
  background:transparent!important;
  box-shadow:none!important;
  border-radius:0!important;
}
.si-lightbox__image{
  border:0!important;
  outline:none!important;
  border-radius:22px!important;
  box-shadow:0 30px 90px rgba(0,0,0,.42), 0 0 0 1px rgba(255,255,255,.06)!important;
}
.si-lightbox__caption{
  display:inline-block;
  margin:0 auto;
  padding:8px 16px;
  border-radius:999px;
  background:rgba(10,19,43,.34);
  backdrop-filter:blur(10px);
  box-shadow:0 12px 32px rgba(0,0,0,.18)!important;
}


/* v55 - more premium graphic treatment for article headings and buttons */
.si-page-hero{
  padding:78px 0 60px!important;
  background:
    radial-gradient(circle at 12% 2%, rgba(24,189,242,.16), transparent 34%),
    radial-gradient(circle at 88% 16%, rgba(36,84,202,.17), transparent 38%),
    linear-gradient(180deg,#f7fbff 0%,#edf7ff 100%)!important;
}

.si-page-hero .si-wrap::before{
  content:"";
  position:absolute;
  top:14px;
  left:50%;
  transform:translateX(-50%);
  width:min(760px,84%);
  height:86px;
  border-radius:999px;
  background:radial-gradient(circle, rgba(63,131,255,.16) 0%, rgba(63,131,255,.04) 55%, rgba(63,131,255,0) 78%);
  filter:blur(10px);
  pointer-events:none;
}

.si-page-hero h1{
  position:relative;
  overflow:hidden;
  padding:34px 42px 42px!important;
  border-radius:36px;
  background:
    radial-gradient(circle at 100% 0%, rgba(24,189,242,.12), transparent 34%),
    linear-gradient(180deg, rgba(255,255,255,.98), rgba(249,252,255,.98));
  border:1px solid rgba(90,132,235,.32);
  box-shadow:
    0 20px 70px rgba(11,31,70,.14),
    0 0 0 4px rgba(112,150,241,.08),
    inset 0 1px 0 rgba(255,255,255,.98),
    inset 0 -20px 36px rgba(64,121,240,.035)!important;
}

.si-page-hero h1::before{
  margin:0 0 14px;
}

.si-page-hero h1::after{
  content:"";
  position:absolute;
  left:50%;
  bottom:16px;
  transform:translateX(-50%);
  width:124px;
  height:6px;
  border-radius:999px;
  background:linear-gradient(90deg, rgba(36,84,202,.15) 0%, #3567df 18%, #20b8ff 82%, rgba(32,184,255,.15) 100%);
  box-shadow:0 6px 20px rgba(43,104,231,.25);
}

.si-page-hero h1 > span,
.si-page-hero h1 strong{position:relative;z-index:1}

/* Primary buttons across the site: richer, more dimensional look */
.si-btn:not(.si-btn--light),
.si-nav__cta,
.hy-btn:not(.hy-btn--light),
button.si-btn:not(.si-btn--light),
a.si-btn:not(.si-btn--light){
  position:relative;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.18)!important;
  background:linear-gradient(135deg,#2454ca 0%, #3f70ef 54%, #20b8ff 100%)!important;
  box-shadow:
    0 18px 42px rgba(36,84,202,.30),
    inset 0 1px 0 rgba(255,255,255,.36),
    inset 0 -12px 18px rgba(8,21,58,.10)!important;
}

.si-btn:not(.si-btn--light)::before,
.si-nav__cta::before,
.hy-btn:not(.hy-btn--light)::before{
  content:"";
  position:absolute;
  inset:1px 1px auto 1px;
  height:48%;
  border-radius:inherit;
  background:linear-gradient(180deg, rgba(255,255,255,.28), rgba(255,255,255,0));
  pointer-events:none;
}

.si-btn:not(.si-btn--light)::after,
.si-nav__cta::after,
.hy-btn:not(.hy-btn--light)::after{
  content:"";
  position:absolute;
  top:-30%;
  left:-18%;
  width:46%;
  height:180%;
  transform:rotate(20deg);
  background:linear-gradient(90deg, rgba(255,255,255,0), rgba(255,255,255,.18), rgba(255,255,255,0));
  transition:transform .45s ease,left .45s ease;
  pointer-events:none;
}

.si-btn:not(.si-btn--light):hover::after,
.si-nav__cta:hover::after,
.hy-btn:not(.hy-btn--light):hover::after{
  left:72%;
}

.si-btn:not(.si-btn--light):hover,
.si-nav__cta:hover,
.hy-btn:not(.hy-btn--light):hover{
  transform:translateY(-3px);
  box-shadow:
    0 24px 54px rgba(36,84,202,.36),
    inset 0 1px 0 rgba(255,255,255,.4),
    inset 0 -12px 18px rgba(8,21,58,.12)!important;
}

/* Light buttons a bit less plain too */
.si-btn--light,
.hy-btn--light{
  background:linear-gradient(180deg,#ffffff 0%, #f5f9ff 100%)!important;
  border:1px solid rgba(138,166,236,.38)!important;
  box-shadow:0 12px 30px rgba(11,31,70,.08), inset 0 1px 0 rgba(255,255,255,.92)!important;
}

@media (max-width: 768px){
  .si-page-hero{padding:56px 0 42px!important}
  .si-page-hero h1{padding:26px 22px 34px!important;border-radius:28px}
  .si-page-hero h1::after{width:94px;height:5px;bottom:12px}
}


/* v57 richer PUR calculation form fields */
.form-extra-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
  margin:14px 0;
}
.form-extra-field{
  display:grid;
  gap:7px;
}
.form-extra-field span{
  color:#17345d;
  font-weight:850;
  font-size:14px;
}
.form-extra-field input,
.form-extra-field select{
  width:100%;
  min-height:52px;
  border:1.5px solid #b7cbed;
  border-radius:18px;
  padding:0 16px;
  font:inherit;
  color:#153157;
  background:
    linear-gradient(180deg,#ffffff 0%,#f3f8ff 100%);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.96),
    0 8px 22px rgba(39,95,198,.08);
}
.form-extra-field input:focus,
.form-extra-field select:focus{
  outline:none;
  border-color:#3567e6;
  box-shadow:
    0 0 0 4px rgba(53,103,230,.14),
    0 14px 34px rgba(38,84,182,.16);
}
@media(max-width:760px){
  .form-extra-grid{
    grid-template-columns:1fr;
  }
}


/* v58 reference mobile hero fix - applied on uploaded v57 base */
.si-page-hero .hy-floating-card,
.si-page-hero .si-badge,
.si-page-hero .info-badge,
.si-page-hero .floating-card,
.page-hero .hy-floating-card,
.page-hero .si-badge,
.page-hero .info-badge,
.page-hero .floating-card{
  display:none!important;
}

@media(max-width:760px){
  .si-page-hero,
  .page-hero{
    padding:42px 0 36px!important;
    overflow:hidden!important;
  }

  .si-page-hero .si-wrap,
  .si-page-hero .hy-wrap,
  .page-hero .si-wrap,
  .page-hero .hy-wrap{
    position:relative!important;
    display:block!important;
  }

  .si-page-hero h1,
  .page-hero h1{
    font-size:clamp(34px,10vw,48px)!important;
    line-height:1.05!important;
    letter-spacing:-.05em!important;
    max-width:100%!important;
    margin:0 0 16px!important;
    position:relative!important;
    z-index:2!important;
  }

  .si-page-hero .si-lead,
  .si-page-hero .hy-lead,
  .page-hero .si-lead,
  .page-hero .hy-lead,
  .page-hero .lead{
    font-size:18px!important;
    line-height:1.55!important;
    max-width:100%!important;
    position:relative!important;
    z-index:2!important;
  }

  .si-page-hero::before,
  .si-page-hero::after,
  .page-hero::before,
  .page-hero::after,
  .hy-hero::before,
  .hy-hero::after{
    display:none!important;
  }

  body .si-page-hero .si-hero__grid,
  body .si-page-hero .hy-hero__grid,
  body .si-page-hero .hero-grid,
  body .page-hero .si-hero__grid,
  body .page-hero .hy-hero__grid,
  body .page-hero .hero-grid{
    display:block!important;
  }

  .si-review-banner,
  .hy-review-box img,
  .review-banner{
    border-radius:24px!important;
    width:100%!important;
    height:auto!important;
    object-fit:contain!important;
    margin-top:0!important;
  }

  .si-reviews,
  .review-grid{
    grid-template-columns:1fr!important;
  }

  .si-review,
  .hy-review-box,
  .hy-panel,
  .review-card{
    border-radius:24px!important;
  }
}


/* v74 cumulative + expert cache fix + stronger srovnani padding */
#certifikace{scroll-margin-top:110px!important}

/* cumulative homepage ordering / width fixes */
.hy-benefit-grid--top{
  width:min(1260px, calc(100vw - 44px))!important;
  max-width:1260px!important;
  margin:24px auto 18px!important;
  padding:0!important;
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:16px!important;
  box-sizing:border-box!important;
}
.hy-section--why-foam-top{
  padding-top:18px!important;
  padding-bottom:28px!important;
  background:
    radial-gradient(circle at 15% 0%, rgba(24,189,242,.10), transparent 30%),
    linear-gradient(180deg,#ffffff 0%,#f6fbff 100%)!important;
}
.hy-section--why-foam-top .hy-wrap{
  width:min(1260px, calc(100vw - 44px))!important;
  max-width:1260px!important;
  padding-left:0!important;
  padding-right:0!important;
}
.hy-section--why-foam-top .why-foam-layout{grid-template-columns:1fr!important}
.hy-section--why-foam-top .why-foam-side{display:none!important}
.hy-section--why-foam-top .why-foam-main{width:100%!important;max-width:100%!important;margin:0!important}
.hy-section--why-foam-top .why-foam-checks{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:16px!important;
}
.hy-hero .home-info-fill,
.home-info-fill{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:16px!important;
  width:min(1260px, calc(100vw - 44px))!important;
  max-width:1260px!important;
  margin:24px auto 0!important;
  padding:0!important;
  box-sizing:border-box!important;
  left:auto!important;
  right:auto!important;
  transform:none!important;
  position:relative!important;
  z-index:3!important;
}
.hy-section--info .hy-benefit-grid:not(.hy-benefit-grid--top){display:none!important}

/* Expert as clean JPG card; also neutralize old transparent path if cached */
.hy-info-main{
  position:relative!important;
  overflow:hidden!important;
  min-height:780px!important;
  padding-bottom:330px!important;
}
.hy-info-expert-visible{
  position:absolute!important;
  right:34px!important;
  bottom:26px!important;
  width:285px!important;
  max-width:42%!important;
  z-index:4!important;
  pointer-events:none!important;
}
.hy-info-expert-visible img{
  display:block!important;
  width:100%!important;
  height:auto!important;
  background:#fff!important;
  border-radius:28px!important;
  border:1px solid rgba(36,84,202,.12)!important;
  box-shadow:0 24px 60px rgba(11,31,70,.16)!important;
  filter:none!important;
}

/* Srovnání PUR pěna vs vata: stronger inner spacing for expanded cards/banners */
.srovnani-page .srovnani-card,
.srovnani-page .comparison-card,
.srovnani-page .compare-card,
.srovnani-page .compare-panel,
.srovnani-page .comparison-panel,
.srovnani-page .accordion-content,
.srovnani-page .accordion-panel,
.srovnani-page details,
.srovnani-page summary,
.srovnani-page .banner,
.srovnani-page .info-banner,
.srovnani-page .si-prose,
.srovnani-page .hy-panel,
.srovnani-page .hy-card,
.srovnani-page article,
.srovnani-page section .hy-wrap > div{
  padding-left:max(34px, 2.6vw)!important;
  padding-right:max(34px, 2.6vw)!important;
}

.srovnani-page .srovnani-card > *,
.srovnani-page .comparison-card > *,
.srovnani-page .compare-card > *,
.srovnani-page .compare-panel > *,
.srovnani-page .comparison-panel > *,
.srovnani-page .accordion-content > *,
.srovnani-page .accordion-panel > *,
.srovnani-page details > *,
.srovnani-page .banner > *,
.srovnani-page .info-banner > *,
.srovnani-page .hy-panel > *{
  max-width:100%!important;
}

/* Kontakt hero cleanup */
.si-contact-hero{
  position:relative!important;
  overflow:hidden!important;
  padding:64px 0 58px!important;
  background:
    radial-gradient(circle at 18% 0%, rgba(24,189,242,.18), transparent 34%),
    radial-gradient(circle at 84% 10%, rgba(36,84,202,.18), transparent 32%),
    linear-gradient(135deg,#f6fcff 0%,#eaf7ff 100%)!important;
  border-bottom:1px solid rgba(36,84,202,.12)!important;
}
.si-contact-hero::before{
  content:""!important;
  position:absolute!important;
  left:50%!important;
  top:50%!important;
  width:min(760px,86vw)!important;
  height:150px!important;
  transform:translate(-50%,-50%)!important;
  border-radius:42px!important;
  background:rgba(255,255,255,.62)!important;
  border:1px solid rgba(36,84,202,.16)!important;
  box-shadow:0 24px 80px rgba(36,84,202,.12)!important;
  backdrop-filter:blur(18px)!important;
}
.si-contact-hero::after{
  content:""!important;
  position:absolute!important;
  left:50%!important;
  bottom:46px!important;
  width:150px!important;
  height:7px!important;
  transform:translateX(-50%)!important;
  border-radius:999px!important;
  background:linear-gradient(90deg,#2454ca,#18bdf2)!important;
  box-shadow:0 8px 22px rgba(36,84,202,.25)!important;
}
.si-contact-hero .si-wrap{
  position:relative!important;
  z-index:2!important;
  display:block!important;
  max-width:980px!important;
  text-align:center!important;
}
.si-contact-hero .si-eyebrow{
  display:block!important;
  margin:0 auto 18px!important;
  color:#2454ca!important;
  text-align:center!important;
  max-width:none!important;
  white-space:normal!important;
}
.si-contact-hero h1{
  margin:0 auto 18px!important;
  max-width:none!important;
  color:#071126!important;
  text-align:center!important;
  font-size:clamp(42px,4.8vw,72px)!important;
  line-height:1.03!important;
  letter-spacing:-.055em!important;
  position:relative!important;
  z-index:2!important;
}
.si-contact-hero .si-lead{
  display:block!important;
  margin:0 auto!important;
  max-width:700px!important;
  color:#40516c!important;
  text-align:center!important;
  font-size:20px!important;
  line-height:1.55!important;
  position:relative!important;
  z-index:2!important;
}

@media(max-width:1100px){
  .hy-section--why-foam-top .why-foam-checks{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .hy-info-main{min-height:0!important;padding-bottom:34px!important}
  .hy-info-expert-visible{
    position:relative!important;
    right:auto!important;
    bottom:auto!important;
    width:230px!important;
    max-width:70%!important;
    margin:28px auto 0!important;
  }
}
@media(max-width:980px){
  .hy-benefit-grid--top,
  .hy-section--why-foam-top .hy-wrap,
  .hy-hero .home-info-fill,
  .home-info-fill{
    width:min(100% - 36px, 760px)!important;
  }
  .hy-benefit-grid--top,
  .hy-hero .home-info-fill,
  .home-info-fill{grid-template-columns:1fr!important}
}
@media(max-width:760px){
  #certifikace{scroll-margin-top:90px!important}
  .hy-benefit-grid--top,
  .hy-section--why-foam-top .hy-wrap,
  .hy-hero .home-info-fill,
  .home-info-fill{
    width:min(100% - 30px, 760px)!important;
    gap:12px!important;
  }
  .hy-section--why-foam-top .why-foam-checks{grid-template-columns:1fr!important}
  .hy-info-expert-visible{width:190px!important}
  .srovnani-page .srovnani-card,
  .srovnani-page .comparison-card,
  .srovnani-page .compare-card,
  .srovnani-page .compare-panel,
  .srovnani-page .comparison-panel,
  .srovnani-page .accordion-content,
  .srovnani-page .accordion-panel,
  .srovnani-page details,
  .srovnani-page summary,
  .srovnani-page .banner,
  .srovnani-page .info-banner,
  .srovnani-page .si-prose,
  .srovnani-page .hy-panel,
  .srovnani-page .hy-card,
  .srovnani-page article,
  .srovnani-page section .hy-wrap > div{
    padding-left:22px!important;
    padding-right:22px!important;
  }
  .si-contact-hero{padding:42px 0 38px!important}
  .si-contact-hero::before{
    width:calc(100% - 32px)!important;
    height:calc(100% - 34px)!important;
    border-radius:28px!important;
  }
  .si-contact-hero::after{bottom:30px!important;width:112px!important}
  .si-contact-hero .si-eyebrow{
    font-size:20px!important;
    line-height:1.45!important;
    letter-spacing:.14em!important;
    margin-bottom:18px!important;
  }
  .si-contact-hero h1{
    font-size:clamp(34px,10vw,48px)!important;
    line-height:1.05!important;
    margin-bottom:14px!important;
  }
  .si-contact-hero .si-lead{
    font-size:17px!important;
    line-height:1.52!important;
    max-width:100%!important;
  }
}


/* v75 final transparent expert image */
.hy-info-expert-visible img{
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  filter:drop-shadow(0 24px 34px rgba(11,31,70,.22))!important;
}
.hy-info-expert-visible{
  width:300px!important;
  max-width:44%!important;
  right:30px!important;
  bottom:22px!important;
}
@media(max-width:1100px){
  .hy-info-expert-visible{
    width:235px!important;
    max-width:72%!important;
  }
}
@media(max-width:760px){
  .hy-info-expert-visible{
    width:195px!important;
  }
}

/* v76 - srovnani page: add missing left/right padding inside bordered section headings only */
.srovnani-page .compare-clean-heading{
  padding:22px 26px!important;
  box-sizing:border-box!important;
  border-radius:2px!important;
}

@media(max-width:760px){
  .srovnani-page .compare-clean-heading{
    padding:18px 20px!important;
  }
}

/* v78 - reference page hero layout fix: keep eyebrow/title/lead stacked, not scattered in one row */
.si-reference-hero .si-wrap{
  display:block!important;
  text-align:center!important;
}
.si-reference-hero .si-eyebrow{
  display:block!important;
  max-width:100%!important;
  margin:0 auto 16px!important;
  text-align:center!important;
}
.si-reference-hero h1{
  margin:0 auto 18px!important;
}
.si-reference-hero .si-lead{
  display:block!important;
  max-width:620px!important;
  margin:0 auto!important;
  text-align:center!important;
}

@media(max-width:760px){
  .si-reference-hero .si-eyebrow{
    margin-bottom:14px!important;
  }
  .si-reference-hero h1{
    margin-bottom:16px!important;
  }
}

/* v80 dotace – stronger contrast for left labels in grant conditions */
.grant-item strong{
  color:#173b78!important;
  background:linear-gradient(135deg,#e8f2ff 0%,#cfe1ff 100%)!important;
  border:1px solid #b9cdf3!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.78), 0 6px 18px rgba(31,69,168,.08)!important;
}

/* v81 article images – put selected photos directly under headings/intro text */
.si-prose .si-article-image-grid{
  margin:22px 0 30px!important;
  grid-template-columns:minmax(0,1fr)!important;
  max-width:900px!important;
}
.si-prose .si-article-image-grid .si-image-card{
  margin:0!important;
  overflow:hidden!important;
  border-radius:28px!important;
  background:#fff!important;
}
.si-prose .si-article-image-grid img{
  width:100%!important;
  height:auto!important;
  display:block!important;
  max-height:430px!important;
  object-fit:cover!important;
  border-radius:24px!important;
}
.si-prose .si-contact-image-under-heading{
  max-width:940px!important;
  margin-top:18px!important;
}
.si-prose .si-contact-image-under-heading img,
.si-prose .si-contact-image-under-heading .si-image-card img{
  max-height:none!important;
  object-fit:contain!important;
  border-radius:24px!important;
}
.si-split--text-only{
  grid-template-columns:minmax(0,860px)!important;
  justify-content:center!important;
}
.si-split--text-only .si-prose{
  max-width:860px!important;
}
@media(max-width:760px){
  .si-prose .si-article-image-grid{
    margin:18px 0 24px!important;
  }
  .si-prose .si-article-image-grid .si-image-card{
    border-radius:22px!important;
  }
  .si-prose .si-article-image-grid img{
    max-height:320px!important;
    border-radius:18px!important;
  }
}


/* v82 article images – keep one image under heading and weave the rest between paragraphs */
.si-prose .si-image-card.si-article-inline-image{
  max-width:820px!important;
  margin:30px 0 30px!important;
  border-radius:28px!important;
  overflow:hidden!important;
}
.si-prose .si-image-card.si-article-inline-image img{
  width:100%!important;
  max-height:420px!important;
  object-fit:cover!important;
  border-radius:24px!important;
}
.si-prose > .si-article-topic-under-heading{
  margin-top:0!important;
  margin-bottom:30px!important;
}
.si-prose h2 + .si-contact-image-under-heading{
  margin-top:18px!important;
  margin-bottom:22px!important;
}
@media(max-width:760px){
  .si-prose .si-image-card.si-article-inline-image{
    margin:22px 0 24px!important;
    border-radius:22px!important;
  }
  .si-prose .si-image-card.si-article-inline-image img{
    max-height:320px!important;
    border-radius:18px!important;
  }
}

/* v83 article images – center images that were placed under headings and between paragraphs */
.si-prose .si-article-image-grid,
.si-prose .si-contact-image-under-heading{
  margin-left:auto!important;
  margin-right:auto!important;
  justify-items:center!important;
}

.si-prose .si-article-image-grid .si-image-card,
.si-prose .si-image-card.si-article-inline-image{
  margin-left:auto!important;
  margin-right:auto!important;
}

.si-prose .si-article-image-grid .si-image-card{
  width:100%!important;
  max-width:820px!important;
}

/* v84 dotace – stronger contrast for checklist icons in grant program boxes */
.grant-bullets span::before{
  background:linear-gradient(135deg,#dcebff 0%,#bdd7ff 100%)!important;
  color:#173b78!important;
  border:1px solid #b7cdf5!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.85), 0 6px 16px rgba(31,69,168,.10)!important;
}

/* v85 mobile safeguard – show content even if reveal animation is not triggered on mobile */
@media(max-width:768px){
  .reveal{
    opacity:1!important;
    transform:none!important;
  }
}

/* v87 mobile content width – use more screen space on article pages */
@media(max-width:760px){
  body .si-wrap{
    padding-left:10px!important;
    padding-right:10px!important;
  }

  body .si-section,
  body .hy-section{
    padding-left:0!important;
    padding-right:0!important;
  }

  body .si-content > .si-prose,
  body .si-wrap.si-content > .si-prose,
  body .si-section .si-prose{
    width:100%!important;
    max-width:100%!important;
    padding-left:15px!important;
    padding-right:15px!important;
    border-radius:22px!important;
  }

  body .si-prose .si-article-image-grid,
  body .si-prose .si-contact-image-under-heading,
  body .si-prose .si-image-card.si-article-inline-image{
    width:100%!important;
    max-width:100%!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  body .si-prose .si-article-image-grid .si-image-card,
  body .si-prose .si-image-card.si-article-inline-image,
  body .si-image-card{
    width:100%!important;
    max-width:100%!important;
  }

  body .si-prose .si-article-image-grid img,
  body .si-prose .si-image-card.si-article-inline-image img,
  body .si-image-card img{
    width:100%!important;
    max-width:100%!important;
  }
}

/* v88 benefits page – graphical benefit cards and bullets */
.si-benefits-page{
  max-width:1080px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

.si-benefits-hero-card{
  display:grid!important;
  grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr)!important;
  gap:24px!important;
  align-items:center!important;
  margin:0 0 30px!important;
  padding:24px!important;
  border:2px solid rgba(67,112,228,.18)!important;
  border-radius:34px!important;
  background:
    radial-gradient(circle at 100% 0%, rgba(18,189,240,.16), transparent 36%),
    linear-gradient(135deg,#ffffff 0%,#f7fbff 100%)!important;
  box-shadow:0 22px 60px rgba(11,31,70,.10)!important;
}

.si-benefits-main-image{
  margin:0!important;
  max-width:100%!important;
}

.si-benefits-main-image .si-image-card{
  max-width:100%!important;
  border-radius:28px!important;
  overflow:hidden!important;
}

.si-benefits-main-image img{
  width:100%!important;
  max-height:360px!important;
  object-fit:cover!important;
  border-radius:24px!important;
}

.si-benefits-intro-text h2{
  margin:0 0 14px!important;
  color:#071126!important;
  font-size:clamp(28px,3vw,44px)!important;
  line-height:1.06!important;
  letter-spacing:-.045em!important;
}

.si-benefits-intro-text p{
  color:#334766!important;
  font-size:18px!important;
  line-height:1.62!important;
}

.si-benefits-kicker{
  margin:0 0 10px!important;
  color:#1f45a8!important;
  font-weight:950!important;
  text-transform:uppercase!important;
  letter-spacing:.14em!important;
  font-size:13px!important;
}

.si-benefits-mini-points{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:10px!important;
  margin-top:18px!important;
}

.si-benefits-mini-points span{
  display:inline-flex!important;
  align-items:center!important;
  gap:8px!important;
  padding:9px 13px!important;
  border-radius:999px!important;
  background:#fff!important;
  border:1px solid #dbe8ff!important;
  color:#173b78!important;
  font-weight:850!important;
  box-shadow:0 10px 24px rgba(31,69,168,.08)!important;
}

.si-benefits-mini-points span::before{
  content:"✓";
  display:inline-grid;
  place-items:center;
  width:18px;
  height:18px;
  border-radius:999px;
  background:linear-gradient(135deg,#3866db,#12bdf0);
  color:#fff;
  font-size:11px;
  font-weight:950;
}

.si-benefits-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:18px!important;
  margin:28px 0!important;
}

.si-benefit-card{
  position:relative!important;
  overflow:hidden!important;
  padding:24px!important;
  border-radius:28px!important;
  background:
    radial-gradient(circle at 100% 0%, rgba(18,189,240,.10), transparent 34%),
    linear-gradient(180deg,#ffffff 0%,#f8fbff 100%)!important;
  border:2px solid rgba(67,112,228,.16)!important;
  box-shadow:0 18px 46px rgba(11,31,70,.09)!important;
}

.si-benefit-card__head{
  display:flex!important;
  gap:14px!important;
  align-items:center!important;
  margin-bottom:14px!important;
}

.si-benefit-number{
  flex:0 0 auto!important;
  width:46px!important;
  height:46px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:16px!important;
  background:linear-gradient(135deg,#1f45a8,#12bdf0)!important;
  color:#fff!important;
  font-weight:950!important;
  font-size:20px!important;
  box-shadow:0 14px 28px rgba(31,69,168,.22)!important;
}

.si-benefit-card h3{
  margin:0!important;
  color:#071126!important;
  font-size:clamp(22px,2vw,30px)!important;
  line-height:1.08!important;
  letter-spacing:-.035em!important;
}

.si-benefit-card p{
  margin:0 0 14px!important;
  color:#334766!important;
  font-size:17px!important;
  line-height:1.58!important;
}

.si-benefit-card ul{
  list-style:none!important;
  padding:0!important;
  margin:0!important;
  display:grid!important;
  gap:9px!important;
}

.si-benefit-card li{
  position:relative!important;
  padding-left:30px!important;
  color:#233653!important;
  font-size:16px!important;
  line-height:1.5!important;
}

.si-benefit-card li::before{
  content:"";
  position:absolute;
  left:0;
  top:.35em;
  width:18px;
  height:18px;
  border-radius:999px;
  background:linear-gradient(135deg,#dcebff 0%,#bdd7ff 100%);
  border:1px solid #b7cdf5;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.86);
}

.si-benefit-card li::after{
  content:"✓";
  position:absolute;
  left:4px;
  top:.15em;
  color:#173b78;
  font-size:12px;
  font-weight:950;
}

.si-benefits-cert{
  display:grid!important;
  grid-template-columns:220px 1fr!important;
  gap:18px!important;
  align-items:center!important;
  margin:30px 0!important;
  padding:22px 24px!important;
  border-radius:28px!important;
  background:linear-gradient(135deg,#eef6ff 0%,#ffffff 100%)!important;
  border:2px solid rgba(67,112,228,.16)!important;
  box-shadow:0 18px 46px rgba(11,31,70,.08)!important;
}

.si-benefits-cert strong{
  color:#173b78!important;
  font-size:22px!important;
  line-height:1.15!important;
}

.si-benefits-cert span{
  color:#334766!important;
  font-size:17px!important;
  line-height:1.6!important;
}

.si-benefits-cta{
  display:flex!important;
  justify-content:space-between!important;
  align-items:center!important;
  gap:20px!important;
  margin:34px 0 20px!important;
  padding:26px!important;
  border-radius:32px!important;
  background:
    radial-gradient(circle at 100% 20%, rgba(18,189,240,.16), transparent 36%),
    linear-gradient(135deg,#ffffff 0%,#f6fbff 100%)!important;
  border:2px solid rgba(67,112,228,.18)!important;
  box-shadow:0 22px 56px rgba(11,31,70,.10)!important;
}

.si-benefits-cta h2{
  margin:0 0 10px!important;
  color:#071126!important;
  font-size:clamp(28px,2.8vw,42px)!important;
  line-height:1.08!important;
  letter-spacing:-.04em!important;
}

.si-benefits-cta p:not(.si-benefits-kicker){
  margin:0!important;
  color:#334766!important;
  font-size:17px!important;
}

.si-benefits-contact-image{
  margin-top:20px!important;
}

@media(max-width:900px){
  .si-benefits-hero-card,
  .si-benefits-grid{
    grid-template-columns:1fr!important;
  }
  .si-benefits-cert{
    grid-template-columns:1fr!important;
  }
}

@media(max-width:760px){
  .si-benefits-page{
    max-width:100%!important;
  }
  .si-benefits-hero-card{
    padding:14px!important;
    border-radius:24px!important;
    gap:16px!important;
    margin-bottom:22px!important;
  }
  .si-benefits-main-image img{
    max-height:280px!important;
    border-radius:18px!important;
  }
  .si-benefits-intro-text h2,
  .si-benefits-cta h2{
    font-size:30px!important;
  }
  .si-benefits-intro-text p,
  .si-benefit-card p,
  .si-benefits-cert span{
    font-size:16px!important;
    line-height:1.55!important;
  }
  .si-benefits-mini-points{
    gap:8px!important;
  }
  .si-benefits-mini-points span{
    padding:8px 11px!important;
    font-size:14px!important;
  }
  .si-benefits-grid{
    gap:14px!important;
    margin:22px 0!important;
  }
  .si-benefit-card{
    padding:18px!important;
    border-radius:22px!important;
  }
  .si-benefit-number{
    width:40px!important;
    height:40px!important;
    border-radius:14px!important;
    font-size:18px!important;
  }
  .si-benefit-card h3{
    font-size:24px!important;
  }
  .si-benefit-card li{
    font-size:15.5px!important;
  }
  .si-benefits-cert,
  .si-benefits-cta{
    padding:18px!important;
    border-radius:24px!important;
  }
  .si-benefits-cta{
    display:grid!important;
  }
  .si-benefits-cta .si-btn{
    width:100%!important;
  }
}

/* v91 top navigation – video link instead of old certifications menu item */
.si-nav__link--video{
  padding:0 12px!important;
  border:1px solid rgba(67,112,228,.18)!important;
  background:linear-gradient(135deg,rgba(31,69,168,.08),rgba(18,189,240,.10))!important;
  color:#1f45a8!important;
  box-shadow:0 10px 24px rgba(31,69,168,.08)!important;
}

.si-nav__link--video::before{
  content:"▶";
  display:inline-grid;
  place-items:center;
  width:20px;
  height:20px;
  margin-right:6px;
  border-radius:999px;
  background:linear-gradient(135deg,#1f45a8,#12bdf0);
  color:#fff;
  font-size:10px;
  line-height:1;
  box-shadow:0 8px 16px rgba(31,69,168,.18);
}

.si-nav__link--video:hover{
  color:#173472!important;
  transform:translateY(-1px);
}

@media(max-width:980px){
  .si-nav__link--video{
    justify-content:flex-start!important;
    width:100%!important;
  }
}

/* v93 video page – restore and style embedded videos from the old website */
.si-video-page{
  max-width:1100px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

.si-video-intro{
  margin:0 0 28px!important;
  padding:28px!important;
  border-radius:34px!important;
  background:
    radial-gradient(circle at 100% 0%, rgba(18,189,240,.16), transparent 36%),
    linear-gradient(135deg,#ffffff 0%,#f7fbff 100%)!important;
  border:2px solid rgba(67,112,228,.18)!important;
  box-shadow:0 22px 60px rgba(11,31,70,.10)!important;
}

.si-video-kicker{
  margin:0 0 10px!important;
  color:#1f45a8!important;
  font-weight:950!important;
  text-transform:uppercase!important;
  letter-spacing:.14em!important;
  font-size:13px!important;
}

.si-video-intro h2,
.si-video-cta h2{
  margin:0 0 12px!important;
  color:#071126!important;
  font-size:clamp(30px,3.2vw,48px)!important;
  line-height:1.06!important;
  letter-spacing:-.045em!important;
}

.si-video-intro p:not(.si-video-kicker),
.si-video-copy p,
.si-video-card__body p,
.si-video-cta p:not(.si-video-kicker){
  margin:0!important;
  color:#334766!important;
  font-size:17px!important;
  line-height:1.62!important;
}

.si-video-feature{
  display:grid!important;
  grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr)!important;
  gap:24px!important;
  align-items:center!important;
  margin:0 0 24px!important;
  padding:20px!important;
  border-radius:34px!important;
  background:#fff!important;
  border:2px solid rgba(67,112,228,.16)!important;
  box-shadow:0 20px 54px rgba(11,31,70,.10)!important;
}

.si-video-copy h3,
.si-video-card__body h3{
  margin:0 0 10px!important;
  color:#071126!important;
  font-size:clamp(24px,2.3vw,34px)!important;
  line-height:1.08!important;
  letter-spacing:-.035em!important;
}

.si-video-frame{
  position:relative!important;
  overflow:hidden!important;
  border-radius:28px!important;
  background:#071126!important;
  border:1px solid rgba(67,112,228,.18)!important;
  box-shadow:0 18px 44px rgba(11,31,70,.16)!important;
}

.si-video-frame--youtube{
  aspect-ratio:16/9!important;
}

.si-video-frame iframe,
.si-video-frame video{
  display:block!important;
  width:100%!important;
  height:100%!important;
  border:0!important;
}

.si-video-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:22px!important;
  margin:24px 0 30px!important;
}

.si-video-card{
  overflow:hidden!important;
  padding:18px!important;
  border-radius:32px!important;
  background:
    radial-gradient(circle at 100% 0%, rgba(18,189,240,.10), transparent 34%),
    linear-gradient(180deg,#ffffff 0%,#f8fbff 100%)!important;
  border:2px solid rgba(67,112,228,.16)!important;
  box-shadow:0 18px 46px rgba(11,31,70,.09)!important;
}

.si-video-frame--portrait{
  width:min(100%,360px)!important;
  aspect-ratio:9/16!important;
  margin:0 auto 18px!important;
}

.si-video-card__body{
  text-align:center!important;
}

.si-video-cta{
  display:flex!important;
  justify-content:space-between!important;
  align-items:center!important;
  gap:20px!important;
  margin:34px 0 0!important;
  padding:26px!important;
  border-radius:32px!important;
  background:
    radial-gradient(circle at 100% 20%, rgba(18,189,240,.16), transparent 36%),
    linear-gradient(135deg,#ffffff 0%,#f6fbff 100%)!important;
  border:2px solid rgba(67,112,228,.18)!important;
  box-shadow:0 22px 56px rgba(11,31,70,.10)!important;
}

@media(max-width:900px){
  .si-video-feature,
  .si-video-grid{
    grid-template-columns:1fr!important;
  }
}

@media(max-width:760px){
  .si-video-intro,
  .si-video-feature,
  .si-video-card,
  .si-video-cta{
    padding:14px!important;
    border-radius:24px!important;
  }
  .si-video-frame{
    border-radius:20px!important;
  }
  .si-video-intro h2,
  .si-video-cta h2{
    font-size:30px!important;
  }
  .si-video-intro p:not(.si-video-kicker),
  .si-video-copy p,
  .si-video-card__body p,
  .si-video-cta p:not(.si-video-kicker){
    font-size:16px!important;
    line-height:1.55!important;
  }
  .si-video-cta{
    display:grid!important;
  }
  .si-video-cta .si-btn{
    width:100%!important;
  }
}

/* v94 video page only – premium motion/effects */
.si-video-page-shell{
  position:relative!important;
  overflow:hidden!important;
  background:
    radial-gradient(circle at 12% 10%, rgba(18,189,240,.16), transparent 28%),
    radial-gradient(circle at 88% 18%, rgba(31,69,168,.12), transparent 30%),
    linear-gradient(180deg,#ffffff 0%,#f3fbff 48%,#ffffff 100%)!important;
}

.si-video-page-shell::before,
.si-video-page-shell::after{
  content:"";
  position:absolute;
  pointer-events:none;
  z-index:0;
  border-radius:999px;
  filter:blur(10px);
}

.si-video-page-shell::before{
  width:360px;
  height:360px;
  left:-180px;
  top:260px;
  background:radial-gradient(circle,rgba(18,189,240,.20),transparent 68%);
  animation:si-video-float-soft 12s ease-in-out infinite;
}

.si-video-page-shell::after{
  width:430px;
  height:430px;
  right:-230px;
  top:720px;
  background:radial-gradient(circle,rgba(31,69,168,.16),transparent 70%);
  animation:si-video-float-soft 14s ease-in-out infinite reverse;
}

.si-video-page-shell > section,
.si-video-page-shell .si-wrap,
.si-video-page-shell .si-video-page{
  position:relative!important;
  z-index:1!important;
}

.si-video-page-shell .si-page-hero h1{
  text-shadow:0 14px 34px rgba(11,31,70,.13)!important;
}

.si-video-page-shell .article-hero-image{
  position:relative!important;
  isolation:isolate!important;
}

.si-video-page-shell .article-hero-image::before{
  content:"";
  position:absolute;
  inset:-18px;
  z-index:-1;
  border-radius:36px;
  background:
    linear-gradient(135deg,rgba(31,69,168,.32),rgba(18,189,240,.28),rgba(255,255,255,.0));
  filter:blur(18px);
  opacity:.72;
}

.si-video-page-shell .article-hero-image img{
  box-shadow:
    0 28px 70px rgba(11,31,70,.18),
    0 0 0 1px rgba(255,255,255,.84) inset!important;
  transition:transform .35s ease, filter .35s ease!important;
}

.si-video-page-shell .article-hero-image:hover img{
  transform:translateY(-3px) scale(1.012)!important;
  filter:saturate(1.06) contrast(1.03)!important;
}

.si-video-intro{
  position:relative!important;
  overflow:hidden!important;
}

.si-video-intro::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(110deg,transparent 0%,rgba(255,255,255,.70) 38%,transparent 58%);
  transform:translateX(-120%);
  animation:si-video-shine 6.5s ease-in-out infinite;
  pointer-events:none;
}

.si-video-kicker{
  display:inline-flex!important;
  align-items:center!important;
  gap:8px!important;
}

.si-video-kicker::before{
  content:"";
  width:9px;
  height:9px;
  border-radius:999px;
  background:#12bdf0;
  box-shadow:0 0 0 7px rgba(18,189,240,.13), 0 0 22px rgba(18,189,240,.58);
}

.si-video-feature,
.si-video-card,
.si-video-cta{
  position:relative!important;
  isolation:isolate!important;
  transform:translateZ(0)!important;
  transition:transform .28s ease, box-shadow .28s ease, border-color .28s ease!important;
}

.si-video-feature::before,
.si-video-card::before,
.si-video-cta::before{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  padding:1px;
  background:linear-gradient(135deg,rgba(31,69,168,.34),rgba(18,189,240,.34),rgba(255,255,255,.0));
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);
  -webkit-mask-composite:xor;
  mask-composite:exclude;
  pointer-events:none;
  opacity:.75;
}

.si-video-feature:hover,
.si-video-card:hover,
.si-video-cta:hover{
  transform:translateY(-5px)!important;
  border-color:rgba(67,112,228,.28)!important;
  box-shadow:0 30px 78px rgba(11,31,70,.15)!important;
}

.si-video-frame{
  isolation:isolate!important;
}

.si-video-frame::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:2;
  pointer-events:none;
  background:
    radial-gradient(circle at 18% 16%,rgba(255,255,255,.24),transparent 30%),
    linear-gradient(135deg,rgba(255,255,255,.10),transparent 45%);
  opacity:.78;
  transition:opacity .25s ease!important;
}

.si-video-frame::after{
  content:"▶";
  position:absolute;
  z-index:3;
  left:18px;
  top:18px;
  width:44px;
  height:44px;
  display:grid;
  place-items:center;
  border-radius:999px;
  color:#fff;
  font-size:15px;
  text-indent:2px;
  background:linear-gradient(135deg,#1f45a8,#12bdf0);
  box-shadow:0 14px 32px rgba(31,69,168,.28);
  opacity:.92;
  pointer-events:none;
  transition:transform .25s ease, opacity .25s ease!important;
}

.si-video-feature:hover .si-video-frame::after,
.si-video-card:hover .si-video-frame::after{
  transform:scale(1.08)!important;
  opacity:1!important;
}

.si-video-frame iframe,
.si-video-frame video{
  transform:scale(1.001)!important;
  transition:transform .35s ease, filter .35s ease!important;
}

.si-video-feature:hover .si-video-frame iframe,
.si-video-card:hover .si-video-frame video{
  transform:scale(1.018)!important;
  filter:saturate(1.08) contrast(1.04)!important;
}

.si-video-card__body h3,
.si-video-copy h3{
  position:relative!important;
  display:inline-block!important;
}

.si-video-card__body h3::after,
.si-video-copy h3::after{
  content:"";
  display:block;
  width:56px;
  height:4px;
  margin-top:10px;
  border-radius:999px;
  background:linear-gradient(90deg,#1f45a8,#12bdf0);
  box-shadow:0 8px 18px rgba(18,189,240,.24);
}

.si-video-card__body h3::after{
  margin-left:auto;
  margin-right:auto;
}

.si-video-cta .si-btn{
  position:relative!important;
  overflow:hidden!important;
}

.si-video-cta .si-btn::after{
  content:"";
  position:absolute;
  inset:-40% -70%;
  background:linear-gradient(110deg,transparent 35%,rgba(255,255,255,.32) 50%,transparent 65%);
  transform:translateX(-70%) rotate(10deg);
  animation:si-video-button-glow 4.8s ease-in-out infinite;
  pointer-events:none;
}

@keyframes si-video-float-soft{
  0%,100%{transform:translate3d(0,0,0) scale(1);}
  50%{transform:translate3d(22px,28px,0) scale(1.06);}
}

@keyframes si-video-shine{
  0%,62%{transform:translateX(-125%);}
  82%,100%{transform:translateX(125%);}
}

@keyframes si-video-button-glow{
  0%,58%{transform:translateX(-70%) rotate(10deg);}
  78%,100%{transform:translateX(70%) rotate(10deg);}
}

@media(max-width:760px){
  .si-video-page-shell::before,
  .si-video-page-shell::after{
    opacity:.62;
  }

  .si-video-frame::after{
    width:38px;
    height:38px;
    left:12px;
    top:12px;
    font-size:13px;
  }

  .si-video-feature:hover,
  .si-video-card:hover,
  .si-video-cta:hover{
    transform:none!important;
  }
}

@media(prefers-reduced-motion:reduce){
  .si-video-page-shell::before,
  .si-video-page-shell::after,
  .si-video-intro::before,
  .si-video-cta .si-btn::after{
    animation:none!important;
  }
  .si-video-feature,
  .si-video-card,
  .si-video-cta,
  .si-video-frame iframe,
  .si-video-frame video{
    transition:none!important;
  }
}

/* v90 article reveal safety: article text/images must never stay invisible until the first wheel scroll */
.si-content .reveal,
.si-split--text-only .reveal{
  opacity:1!important;
  transform:none!important;
}


/* v95 – compact article spacing + lower footer */
main > .si-page-hero.si-section{
  padding-top:30px!important;
  padding-bottom:24px!important;
}
.si-page-hero h1{
  max-width:820px!important;
  padding:18px 30px!important;
  border-radius:28px!important;
}
.si-page-hero + .si-section{
  padding-top:26px!important;
}
.si-page-hero + .si-section .si-content,
.si-page-hero + .si-section > .si-wrap.si-content{
  margin-top:0!important;
}
.si-content > .si-prose,
.si-wrap.si-content > .si-prose{
  padding-top:34px!important;
  padding-bottom:34px!important;
}
.si-footer,
footer.si-footer,
.si-footer--compact,
footer.si-footer--compact{
  padding-top:26px!important;
  padding-bottom:26px!important;
}
.si-footer--compact .si-wrap,
footer.si-footer--compact .si-wrap,
.si-footer__grid{
  gap:20px!important;
}
.si-footer--compact p,
.si-footer--compact a,
footer.si-footer--compact p,
footer.si-footer--compact a{
  font-size:15.5px!important;
  line-height:1.42!important;
}
.si-footer--compact h3,
footer.si-footer--compact h3{
  margin-bottom:8px!important;
  font-size:18px!important;
}
@media(max-width:760px){
  main > .si-page-hero.si-section{
    padding-top:24px!important;
    padding-bottom:18px!important;
  }
  .si-page-hero h1{
    padding:16px 18px!important;
    border-radius:22px!important;
  }
  .si-page-hero + .si-section{
    padding-top:20px!important;
  }
  .si-footer,
  footer.si-footer,
  .si-footer--compact,
  footer.si-footer--compact{
    padding-top:24px!important;
    padding-bottom:24px!important;
  }
}

/* v97 – redesigned article/page heading banners */
main > .si-page-hero.si-section{
  position:relative!important;
  padding-top:34px!important;
  padding-bottom:26px!important;
  background:
    radial-gradient(circle at 9% 24%, rgba(122,214,245,.28) 0, rgba(122,214,245,.10) 20%, transparent 42%),
    radial-gradient(circle at 90% 16%, rgba(109,137,229,.18) 0, rgba(109,137,229,.08) 24%, transparent 46%),
    linear-gradient(90deg, #d9edf8 0%, #ecf5fb 48%, #dee6f6 100%)!important;
  border-top:1px solid rgba(255,255,255,.55);
  border-bottom:1px solid rgba(193,211,235,.75);
  overflow:hidden!important;
  isolation:isolate;
}
main > .si-page-hero.si-section::before{
  content:"";
  position:absolute;
  left:-110px;
  top:30px;
  width:250px;
  height:250px;
  border-radius:50%;
  background:radial-gradient(circle, rgba(255,255,255,.78) 0%, rgba(255,255,255,.16) 52%, transparent 72%);
  filter:blur(8px);
  pointer-events:none;
}
main > .si-page-hero.si-section::after{
  content:"";
  position:absolute;
  right:-90px;
  top:-20px;
  width:320px;
  height:320px;
  border-radius:50%;
  background:radial-gradient(circle, rgba(181,204,255,.34) 0%, rgba(181,204,255,.10) 46%, transparent 72%);
  filter:blur(10px);
  pointer-events:none;
}

.si-page-hero .si-wrap{
  position:relative!important;
  z-index:1;
  display:flex!important;
  justify-content:center;
}

.si-page-hero h1{
  position:relative!important;
  width:min(1030px,100%)!important;
  margin:0 auto!important;
  padding:30px 46px 28px!important;
  border-radius:34px!important;
  text-align:center!important;
  color:#061230!important;
  font-size:clamp(2.2rem,3.75vw,4.2rem)!important;
  line-height:1.03!important;
  letter-spacing:-.055em!important;
  background:
    linear-gradient(135deg, rgba(255,255,255,.97) 0%, rgba(249,252,255,.97) 42%, rgba(231,244,251,.94) 100%)!important;
  border:1.5px solid rgba(171,193,235,.72)!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.96),
    inset 0 -1px 0 rgba(193,225,245,.45),
    0 18px 54px rgba(16,39,84,.11),
    0 0 0 3px rgba(183,209,243,.26)!important;
  overflow:hidden;
}

.si-page-hero h1::after{
  content:"";
  display:block;
  width:158px;
  max-width:42%;
  height:7px;
  margin:14px auto 0;
  border-radius:999px;
  background:linear-gradient(90deg, rgba(108,134,224,.18) 0%, #6688ee 24%, #22bdf1 76%, rgba(139,230,255,.38) 100%);
  box-shadow:0 0 18px rgba(34,189,241,.18);
}

.si-page-hero h1 > span,
.si-page-hero h1 strong{
  color:inherit;
}

@media(max-width:760px){
  main > .si-page-hero.si-section{
    padding-top:20px!important;
    padding-bottom:16px!important;
  }
  main > .si-page-hero.si-section::before{
    left:-120px;
    top:6px;
    width:210px;
    height:210px;
    filter:blur(6px);
  }
  main > .si-page-hero.si-section::after{
    right:-120px;
    top:-50px;
    width:240px;
    height:240px;
    filter:blur(8px);
  }
  .si-page-hero h1{
    padding:20px 18px 18px!important;
    border-radius:24px!important;
    font-size:clamp(2rem,9.6vw,3rem)!important;
  }
  .si-page-hero h1::after{
    width:112px;
    height:6px;
    margin-top:10px;
  }
}

/* v98 – premium typography for article heading banners, remove the underline */
main > .si-page-hero.si-section{
  padding-top:32px!important;
  padding-bottom:24px!important;
  background:
    radial-gradient(circle at 10% 22%, rgba(163,223,248,.30) 0, rgba(163,223,248,.12) 20%, transparent 42%),
    radial-gradient(circle at 88% 14%, rgba(124,149,232,.22) 0, rgba(124,149,232,.08) 24%, transparent 44%),
    linear-gradient(90deg, #dbeef8 0%, #ebf5fb 50%, #dfe8f7 100%)!important;
}

.si-page-hero h1{
  width:min(1040px,100%)!important;
  max-width:1040px!important;
  padding:32px 48px 30px!important;
  border-radius:38px!important;
  font-size:clamp(2.05rem,3.55vw,4.05rem)!important;
  line-height:1.02!important;
  letter-spacing:-.062em!important;
  font-weight:900!important;
  text-wrap:balance;
  background:
    radial-gradient(circle at 50% -15%, rgba(255,255,255,.98) 0%, rgba(255,255,255,.72) 26%, transparent 48%),
    linear-gradient(180deg, rgba(255,255,255,.98) 0%, rgba(248,251,255,.97) 48%, rgba(239,247,252,.96) 100%)!important;
  border:1px solid rgba(179,200,232,.92)!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.98),
    inset 0 -1px 0 rgba(203,226,245,.42),
    0 20px 60px rgba(14,36,82,.10),
    0 0 0 3px rgba(187,211,243,.24)!important;
  text-shadow:
    0 1px 0 rgba(255,255,255,.65),
    0 10px 28px rgba(27,83,182,.10)!important;
}

.si-page-hero h1::after{
  content:none!important;
  display:none!important;
}

@media(max-width:900px){
  .si-page-hero h1{
    font-size:clamp(2rem,6vw,3.5rem)!important;
    padding:26px 24px 24px!important;
  }
}

@media(max-width:760px){
  main > .si-page-hero.si-section{
    padding-top:18px!important;
    padding-bottom:14px!important;
  }
  .si-page-hero h1{
    padding:18px 16px 17px!important;
    border-radius:24px!important;
    font-size:clamp(1.8rem,9vw,2.8rem)!important;
    line-height:1.03!important;
  }
}


/* v99 – richer hero-heading typography with better font and subtle premium effect */
main > .si-page-hero.si-section{
  padding-top:30px!important;
  padding-bottom:22px!important;
  background:
    radial-gradient(circle at 10% 22%, rgba(160,224,248,.34) 0, rgba(160,224,248,.13) 20%, transparent 42%),
    radial-gradient(circle at 89% 14%, rgba(122,150,233,.24) 0, rgba(122,150,233,.10) 24%, transparent 44%),
    linear-gradient(90deg, #dceef8 0%, #edf5fb 48%, #dfe8f7 100%)!important;
}

.si-page-hero h1{
  position:relative!important;
  isolation:isolate;
  width:min(1120px,100%)!important;
  max-width:1120px!important;
  margin:0 auto!important;
  padding:34px 54px!important;
  border-radius:40px!important;
  font-family:"Plus Jakarta Sans", Inter, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif!important;
  font-weight:800!important;
  font-size:clamp(1.95rem,3.25vw,3.95rem)!important;
  line-height:.98!important;
  letter-spacing:-.068em!important;
  text-wrap:balance;
  color:#06173d!important;
  background:
    linear-gradient(180deg, rgba(255,255,255,.98) 0%, rgba(249,252,255,.975) 52%, rgba(239,246,252,.96) 100%)!important;
  border:1px solid rgba(177,199,233,.9)!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.98),
    inset 0 -1px 0 rgba(199,223,244,.42),
    0 22px 60px rgba(15,38,86,.10),
    0 0 0 3px rgba(188,212,242,.22)!important;
  text-shadow:
    0 1px 0 rgba(255,255,255,.66),
    0 10px 24px rgba(37,92,191,.10),
    0 0 1px rgba(7,24,60,.16)!important;
  -webkit-font-smoothing:antialiased!important;
  -moz-osx-font-smoothing:grayscale!important;
  text-rendering:optimizeLegibility!important;
}

.si-page-hero h1::before{
  content:""!important;
  display:block!important;
  position:absolute;
  left:14%;
  right:14%;
  top:18%;
  height:46%;
  border-radius:999px;
  background:radial-gradient(ellipse at center, rgba(193,238,255,.34) 0%, rgba(193,238,255,.16) 40%, rgba(193,238,255,0) 74%);
  filter:blur(12px);
  z-index:-1;
  pointer-events:none;
}

.si-page-hero h1::after{
  content:none!important;
  display:none!important;
}

@media(max-width:980px){
  .si-page-hero h1{
    width:min(1000px,100%)!important;
    padding:28px 28px!important;
    font-size:clamp(1.85rem,5.3vw,3.35rem)!important;
    line-height:1.01!important;
  }
}

@media(max-width:760px){
  main > .si-page-hero.si-section{
    padding-top:18px!important;
    padding-bottom:14px!important;
  }
  .si-page-hero h1{
    padding:18px 16px!important;
    border-radius:24px!important;
    font-size:clamp(1.68rem,8.9vw,2.55rem)!important;
    line-height:1.02!important;
    letter-spacing:-.06em!important;
  }
  .si-page-hero h1::before{
    left:8%;
    right:8%;
    top:14%;
    height:40%;
    filter:blur(10px);
  }
}


/* v101 – heading banner typography redo: nicer font, softer effect, less harsh look */
.si-page-hero h1{
  font-family:"Sora", Inter, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif!important;
  font-weight:700!important;
  font-size:clamp(1.95rem,3.05vw,3.55rem)!important;
  line-height:1.06!important;
  letter-spacing:-.052em!important;
  max-width:980px!important;
  width:min(980px,100%)!important;
  padding:32px 42px!important;
  border-radius:38px!important;
  color:#07163c!important;
  background:
    linear-gradient(180deg, rgba(255,255,255,.985) 0%, rgba(249,252,255,.975) 58%, rgba(240,247,252,.965) 100%)!important;
  border:1px solid rgba(178,200,232,.88)!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.98),
    inset 0 -1px 0 rgba(198,222,244,.34),
    0 16px 42px rgba(16,39,84,.09),
    0 0 0 2px rgba(189,213,243,.20)!important;
  text-shadow:
    0 1px 0 rgba(255,255,255,.72),
    0 6px 16px rgba(37,92,191,.08)!important;
  text-rendering:optimizeLegibility!important;
  -webkit-font-smoothing:antialiased!important;
  -moz-osx-font-smoothing:grayscale!important;
  text-wrap:balance;
}

.si-page-hero h1::before{
  content:""!important;
  position:absolute;
  inset:14% 12% auto 12%;
  height:44%;
  border-radius:999px;
  background:radial-gradient(ellipse at center, rgba(200,241,255,.28) 0%, rgba(200,241,255,.12) 42%, rgba(200,241,255,0) 74%);
  filter:blur(10px);
  z-index:-1;
}

.si-page-hero h1::after{
  content:none!important;
  display:none!important;
}

@media(max-width:980px){
  .si-page-hero h1{
    max-width:920px!important;
    width:min(920px,100%)!important;
    font-size:clamp(1.8rem,5vw,3rem)!important;
    padding:26px 24px!important;
  }
}

@media(max-width:760px){
  .si-page-hero h1{
    font-size:clamp(1.58rem,8vw,2.35rem)!important;
    line-height:1.08!important;
    letter-spacing:-.045em!important;
    padding:18px 16px!important;
    border-radius:24px!important;
  }
  .si-page-hero h1::before{
    inset:12% 8% auto 8%;
    height:40%;
    filter:blur(8px);
  }
}


/* v105 – mobile menu usability + visible submit buttons */
@media(max-width:1240px){
  .si-header{
    z-index:999!important;
  }
  .si-nav{
    align-content:start!important;
  }
  body.menu-open .si-nav{
    display:grid!important;
    max-height:calc(100dvh - 98px)!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
    -webkit-overflow-scrolling:touch!important;
    padding-bottom:max(18px, env(safe-area-inset-bottom))!important;
  }
  .si-nav__cta{
    order:-20!important;
    grid-column:1 / -1!important;
    min-height:54px!important;
    font-size:16px!important;
    font-weight:850!important;
  }
}

@media(max-width:760px){
  .si-nav{
    left:14px!important;
    right:14px!important;
    top:calc(100% + 6px)!important;
    gap:9px!important;
    padding:12px!important;
    border-radius:22px!important;
  }
  body.menu-open .si-nav{
    grid-template-columns:1fr!important;
    max-height:calc(100dvh - 88px)!important;
  }
  .si-nav__link{
    min-height:44px!important;
    padding:0 12px!important;
    justify-content:center!important;
  }
  .si-nav__cta{
    min-height:54px!important;
  }
}

.form-submit-btn{
  width:100%!important;
  margin-top:4px!important;
  border:0!important;
  cursor:pointer!important;
  text-align:center!important;
}
.hy-form .form-submit-btn,
.si-form .form-submit-btn{
  min-height:58px!important;
  font-size:17px!important;
  font-weight:850!important;
}
@media(max-width:760px){
  .hy-form,
  .si-form{
    padding-bottom:26px!important;
  }
  .form-submit-btn{
    margin-top:8px!important;
  }
}

/* v106 – Safari/mobile reference hero fix: stack title elements, no clipped H1 card */
.si-reference-hero .si-wrap{
  display:block!important;
  text-align:center!important;
}
.si-reference-hero .si-eyebrow,
.si-reference-hero .si-lead{
  display:block!important;
  width:100%!important;
  max-width:680px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  text-align:center!important;
}
.si-reference-hero h1{
  display:block!important;
  width:100%!important;
  max-width:980px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  box-sizing:border-box!important;
}

@media(max-width:980px){
  .si-reference-hero .si-wrap{
    display:block!important;
    text-align:center!important;
  }
  .si-reference-hero .si-eyebrow{
    margin:0 auto 12px!important;
    font-size:clamp(1rem,4.4vw,1.35rem)!important;
    line-height:1.25!important;
    letter-spacing:.13em!important;
  }
  .si-reference-hero h1{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin:0 auto 12px!important;
    padding:20px 18px!important;
    font-size:clamp(1.85rem,8.4vw,2.75rem)!important;
    line-height:1.08!important;
    letter-spacing:-.045em!important;
    border-radius:26px!important;
    overflow:visible!important;
  }
  .si-reference-hero .si-lead{
    max-width:560px!important;
    margin:0 auto!important;
    font-size:clamp(1.02rem,4.5vw,1.25rem)!important;
    line-height:1.45!important;
  }
}

@media(max-width:520px){
  .si-reference-hero{
    padding-top:22px!important;
    padding-bottom:22px!important;
  }
  .si-reference-hero .si-wrap{
    padding-left:16px!important;
    padding-right:16px!important;
  }
  .si-reference-hero .si-eyebrow{
    margin-bottom:10px!important;
    font-size:1rem!important;
    letter-spacing:.12em!important;
  }
  .si-reference-hero h1{
    padding:16px 14px!important;
    font-size:clamp(1.7rem,7.5vw,2.2rem)!important;
    line-height:1.1!important;
    border-radius:22px!important;
  }
  .si-reference-hero .si-lead{
    font-size:1.02rem!important;
  }
}


/* Long-form informational content blocks */
.info-depth{
  margin:34px 0 0!important;
  padding:34px!important;
  border-radius:30px!important;
  background:linear-gradient(180deg,#ffffff 0%,#f7fbff 100%)!important;
  border:1px solid rgba(190,211,238,.78)!important;
  box-shadow:0 18px 52px rgba(11,31,70,.08)!important;
}
.info-depth__eyebrow{
  margin:0 0 10px!important;
  color:#2454ca!important;
  font-weight:850!important;
  letter-spacing:.14em!important;
  text-transform:uppercase!important;
  font-size:13px!important;
}
.info-depth h2{
  margin:0 0 18px!important;
  color:#071126!important;
  font-size:clamp(1.85rem,2.7vw,2.8rem)!important;
  line-height:1.08!important;
  letter-spacing:-.04em!important;
}
.info-depth h3{
  margin:0 0 10px!important;
  color:#071126!important;
  font-size:1.22rem!important;
  line-height:1.25!important;
  letter-spacing:-.02em!important;
}
.info-depth p{
  color:#42516a!important;
  font-size:18px!important;
  line-height:1.72!important;
  margin:0 0 16px!important;
}
.info-depth__grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:18px!important;
  margin:22px 0!important;
}
.info-depth__card{
  padding:22px!important;
  border-radius:24px!important;
  background:#fff!important;
  border:1px solid rgba(205,221,242,.88)!important;
  box-shadow:0 12px 34px rgba(11,31,70,.06)!important;
}
.info-depth__card p{font-size:16.5px!important;line-height:1.62!important;margin:0!important}
.info-depth__links{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:10px!important;
  margin-top:18px!important;
}
.info-depth__links a{
  display:inline-flex!important;
  align-items:center!important;
  border-radius:999px!important;
  padding:10px 14px!important;
  background:#eef6ff!important;
  color:#173472!important;
  font-weight:800!important;
  border:1px solid rgba(67,112,228,.14)!important;
}
.info-depth__faq{
  margin-top:24px!important;
  display:grid!important;
  gap:12px!important;
}
.info-depth__faq details{
  border:1px solid rgba(205,221,242,.88)!important;
  background:#fff!important;
  border-radius:20px!important;
  padding:15px 18px!important;
}
.info-depth__faq summary{
  cursor:pointer!important;
  color:#071126!important;
  font-weight:850!important;
  font-size:17px!important;
}
.info-depth__faq details p{
  margin:10px 0 0!important;
  font-size:16.5px!important;
}
@media(max-width:760px){
  .info-depth{padding:22px!important;border-radius:24px!important;margin-top:24px!important}
  .info-depth__grid{grid-template-columns:1fr!important;gap:12px!important}
  .info-depth p{font-size:16.5px!important;line-height:1.68!important}
  .info-depth__card{padding:18px!important;border-radius:20px!important}
  .info-depth__links a{width:100%;justify-content:center!important}
}


/* v112 – mobile menu priority: Cenová kalkulace first, Reference second */
@media(max-width:1240px){
  .si-nav__cta[href="/#kalkulace"],
  .si-nav__cta[href*="#kalkulace"]{
    order:-100!important;
  }

  .si-nav__link[href="/reference-superizolace/"]{
    order:-90!important;
  }
}

@media(max-width:760px){
  body.menu-open .si-nav{
    max-height:calc(100vh - 104px)!important;
    overflow-y:auto!important;
    -webkit-overflow-scrolling:touch!important;
    padding-bottom:calc(18px + env(safe-area-inset-bottom, 0px))!important;
  }

  .si-nav__cta[href="/#kalkulace"],
  .si-nav__cta[href*="#kalkulace"]{
    order:-100!important;
  }

  .si-nav__link[href="/reference-superizolace/"]{
    order:-90!important;
  }
}


/* v119 – visible success message after submitted forms */
.form-success-message{
  margin-top:18px!important;
  padding:18px 20px!important;
  border-radius:22px!important;
  border:1px solid rgba(26,151,89,.22)!important;
  background:linear-gradient(135deg, rgba(232,255,244,.98), rgba(244,252,255,.98))!important;
  color:#0f3d2a!important;
  box-shadow:0 14px 34px rgba(16,84,48,.10)!important;
}

.form-success-message strong{
  display:block!important;
  margin-bottom:5px!important;
  font-size:18px!important;
  line-height:1.25!important;
  color:#0b2f21!important;
}

.form-success-message span{
  display:block!important;
  font-size:15.5px!important;
  line-height:1.55!important;
}

.form-success-message a{
  color:#1f45a8!important;
  font-weight:800!important;
  text-decoration:none!important;
}

.form-success-message[hidden]{
  display:none!important;
}

@media(max-width:760px){
  .form-success-message{
    margin-top:14px!important;
    padding:16px!important;
    border-radius:18px!important;
  }
  .form-success-message strong{
    font-size:17px!important;
  }
}


/* v120 – submitted-form message must stay directly under the submit button inside the form */
.hy-form > .form-success-message,
.si-form > .form-success-message{
  width:100%!important;
  grid-column:1 / -1!important;
}


/* v121 – iPhone/Safari anchor scroll fix for price form */
#kalkulace{
  scroll-margin-top:110px!important;
}

@media(max-width:760px){
  #kalkulace{
    scroll-margin-top:96px!important;
  }
}


/* v122 – návrat na starší písmo nadpisů bannerů: Plus Jakarta Sans */
.si-page-hero h1{
  font-family:"Plus Jakarta Sans", Inter, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif!important;
  font-weight:800!important;
  font-size:clamp(1.95rem,3.25vw,3.8rem)!important;
  line-height:1.03!important;
  letter-spacing:-.058em!important;
  text-rendering:optimizeLegibility!important;
  -webkit-font-smoothing:antialiased!important;
  -moz-osx-font-smoothing:grayscale!important;
}

@media(max-width:760px){
  .si-page-hero h1{
    font-size:clamp(1.68rem,8.8vw,2.55rem)!important;
    line-height:1.06!important;
    letter-spacing:-.052em!important;
  }
}


/* v123 – oprava rozhozených horních bannerů po změně písma */
.si-page-hero .si-wrap,
.si-page-hero .hy-wrap,
.si-contact-hero .si-wrap,
.si-contact-hero .hy-wrap,
.si-reference-hero .si-wrap,
.si-reference-hero .hy-wrap{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:14px!important;
  text-align:center!important;
}

.si-page-hero .si-kicker,
.si-page-hero .hy-eyebrow,
.si-page-hero .si-lead,
.si-page-hero .hy-lead,
.si-page-hero > .si-wrap > p,
.si-page-hero > .hy-wrap > p{
  width:100%!important;
  max-width:760px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  text-align:center!important;
}

.si-page-hero h1{
  margin-left:auto!important;
  margin-right:auto!important;
  text-align:center!important;
}

/* desktop header: logo nesmí lézt mimo obrazovku */
.si-header__inner{
  width:100%!important;
  padding-left:32px!important;
  padding-right:32px!important;
}

.si-logo{
  overflow:visible!important;
}

.si-logo img{
  max-width:min(300px,28vw)!important;
}

@media(max-width:1240px){
  .si-page-hero .si-wrap,
  .si-page-hero .hy-wrap,
  .si-contact-hero .si-wrap,
  .si-contact-hero .hy-wrap,
  .si-reference-hero .si-wrap,
  .si-reference-hero .hy-wrap{
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    text-align:center!important;
  }
}

@media(max-width:760px){
  .si-header__inner{
    padding-left:16px!important;
    padding-right:16px!important;
  }

  .si-logo img{
    max-width:calc(100vw - 112px)!important;
  }

  .si-page-hero .si-wrap,
  .si-page-hero .hy-wrap,
  .si-contact-hero .si-wrap,
  .si-contact-hero .hy-wrap,
  .si-reference-hero .si-wrap,
  .si-reference-hero .hy-wrap{
    gap:10px!important;
  }

  .si-page-hero .si-kicker,
  .si-page-hero .hy-eyebrow{
    font-size:14px!important;
    line-height:1.25!important;
    letter-spacing:.16em!important;
  }

  .si-page-hero .si-lead,
  .si-page-hero .hy-lead,
  .si-page-hero > .si-wrap > p,
  .si-page-hero > .hy-wrap > p{
    max-width:100%!important;
    font-size:17px!important;
    line-height:1.45!important;
  }
}


/* v124 – oprava hlavičky: logo nesmí překrývat menu */
@media(min-width:1241px){
  .si-header__inner{
    display:grid!important;
    grid-template-columns:minmax(270px,320px) minmax(0,1fr)!important;
    align-items:center!important;
    column-gap:22px!important;
    width:100%!important;
    max-width:1500px!important;
    margin-left:auto!important;
    margin-right:auto!important;
    padding-left:24px!important;
    padding-right:24px!important;
  }

  .si-logo{
    width:100%!important;
    max-width:320px!important;
    min-width:0!important;
    overflow:hidden!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    flex:initial!important;
  }

  .si-logo img{
    display:block!important;
    width:100%!important;
    max-width:320px!important;
    height:auto!important;
    max-height:52px!important;
    object-fit:contain!important;
    object-position:left center!important;
  }

  .si-nav{
    min-width:0!important;
    width:100%!important;
    flex:initial!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:clamp(8px,.75vw,15px)!important;
    white-space:nowrap!important;
    overflow:visible!important;
  }

  .si-nav__link{
    font-size:clamp(12.5px,.76vw,14px)!important;
  }

  .si-nav__cta{
    padding-left:18px!important;
    padding-right:18px!important;
  }
}

@media(min-width:1241px) and (max-width:1380px){
  .si-header__inner{
    grid-template-columns:minmax(230px,270px) minmax(0,1fr)!important;
    column-gap:14px!important;
  }

  .si-logo{
    max-width:270px!important;
  }

  .si-logo img{
    max-width:270px!important;
    max-height:46px!important;
  }

  .si-nav{
    gap:8px!important;
  }

  .si-nav__link{
    font-size:12.4px!important;
  }

  .si-nav__cta{
    padding-left:14px!important;
    padding-right:14px!important;
  }
}


/* v126 – homepage Czech Republic service-area badge in hero */
.hy-hero-service-area{
  display:inline-flex!important;
  align-items:center!important;
  max-width:760px!important;
  margin:18px 0 0!important;
  padding:13px 18px!important;
  border-radius:999px!important;
  background:linear-gradient(135deg, rgba(255,255,255,.92), rgba(235,248,255,.94))!important;
  border:1px solid rgba(67,112,228,.22)!important;
  box-shadow:
    0 14px 34px rgba(11,31,70,.09),
    inset 0 1px 0 rgba(255,255,255,.95)!important;
  color:#24324c!important;
  font-size:16.5px!important;
  line-height:1.45!important;
  font-weight:650!important;
}

.hy-hero-service-area::before{
  content:"";
  flex:0 0 auto;
  width:12px;
  height:12px;
  margin-right:10px;
  border-radius:999px;
  background:linear-gradient(135deg,#2454ca,#20b8ff);
  box-shadow:0 0 0 6px rgba(32,184,255,.12);
}

.hy-hero-service-area strong{
  color:#1f45a8!important;
  font-weight:900!important;
}

@media(max-width:760px){
  .hy-hero-service-area{
    display:flex!important;
    width:100%!important;
    max-width:100%!important;
    margin-top:14px!important;
    padding:13px 15px!important;
    border-radius:22px!important;
    font-size:15.5px!important;
    line-height:1.48!important;
  }
}


/* v129 – required fields note and safer form UX */
.form-required-note{
  margin:0 0 4px!important;
  color:#5d6a82!important;
  font-size:14.5px!important;
  line-height:1.45!important;
}

.hy-form input:focus:invalid,
.hy-form select:focus:invalid,
.si-form input:focus:invalid,
.si-form select:focus:invalid{
  border-color:#d94b4b!important;
  box-shadow:0 0 0 4px rgba(217,75,75,.10)!important;
}


/* v130 – cookie choices: Přijmout vše / Pouze nezbytné / Nastavení cookies */
.si-cookie-modal__box{
  width:min(760px,100%)!important;
}

.si-cookie-modal__actions{
  justify-content:flex-end!important;
  align-items:center!important;
}

.si-cookie-modal__btn--save{
  background:linear-gradient(135deg,#2454ca,#3c6ee1)!important;
  color:#fff!important;
}

.si-cookie-modal__btn--light{
  background:#fff!important;
  color:#2454ca!important;
  border:1px solid #cbdaf5!important;
  box-shadow:none!important;
}

.si-cookie-modal__btn--settings{
  background:linear-gradient(180deg,#f7fbff,#eef6ff)!important;
  color:#173472!important;
  border:1px solid #cbdaf5!important;
  box-shadow:none!important;
}

@media(max-width:760px){
  .si-cookie-modal__actions,
  .si-cookie-modal__settings-actions{
    display:grid!important;
    grid-template-columns:1fr!important;
    width:100%!important;
  }

  .si-cookie-modal__actions .si-cookie-modal__btn:first-child{
    order:-3;
  }

  .si-cookie-modal__actions .si-cookie-modal__btn--light{
    order:-2;
  }

  .si-cookie-modal__actions .si-cookie-modal__btn--settings{
    order:-1;
  }
}


/* v131 – add Reject all button inside cookie settings */
.si-cookie-modal__settings-actions{
  align-items:center!important;
}

@media(min-width:761px){
  .si-cookie-modal__settings-actions{
    justify-content:flex-end!important;
  }
}


/* v132 – mobile cookie settings scroll fix */
.si-cookie-modal{
  overflow-y:auto!important;
  -webkit-overflow-scrolling:touch!important;
  overscroll-behavior:contain!important;
}

.si-cookie-modal__box{
  max-height:calc(100vh - 44px)!important;
  max-height:calc(100dvh - 44px)!important;
  overflow-y:auto!important;
  -webkit-overflow-scrolling:touch!important;
  overscroll-behavior:contain!important;
}

@media(max-width:760px){
  .si-cookie-modal{
    display:block!important;
    padding:12px!important;
    overflow-y:auto!important;
    -webkit-overflow-scrolling:touch!important;
  }

  .si-cookie-modal__backdrop{
    position:fixed!important;
  }

  .si-cookie-modal__box{
    width:100%!important;
    max-height:calc(100vh - 24px)!important;
    max-height:calc(100dvh - 24px)!important;
    margin:0 auto!important;
    overflow-y:auto!important;
    -webkit-overflow-scrolling:touch!important;
    padding-bottom:calc(18px + env(safe-area-inset-bottom, 0px))!important;
  }

  .si-cookie-modal__settings{
    max-height:none!important;
    overflow:visible!important;
  }

  .si-cookie-option{
    align-items:flex-start!important;
  }
}


/* v133 – mobile homepage hero fix: floating calculation card must not break layout */
@media(max-width:760px){
  .home .hy-hero__visual{
    overflow:hidden!important;
    border-radius:28px!important;
  }

  .home .hy-hero__visual img{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    height:auto!important;
    border-radius:28px!important;
  }

  .home .hy-floating-card{
    position:static!important;
    width:100%!important;
    max-width:100%!important;
    margin:12px 0 0!important;
    padding:16px 18px!important;
    border-radius:22px!important;
    transform:none!important;
    left:auto!important;
    right:auto!important;
    bottom:auto!important;
    box-shadow:0 12px 28px rgba(11,31,70,.10)!important;
    background:rgba(255,255,255,.94)!important;
  }

  .home .hy-floating-card::before,
  .home .hy-floating-card::after{
    display:none!important;
    content:none!important;
  }

  .home .hy-floating-card strong{
    font-size:22px!important;
    line-height:1.15!important;
  }

  .home .hy-floating-card span{
    font-size:15.5px!important;
    line-height:1.45!important;
  }
}

@media(max-width:430px){
  .home .hy-floating-card{
    display:none!important;
  }
}


/* v135 – instant form jump + more visible submit confirmation */
#kalkulace{
  scroll-margin-top:96px!important;
}

.form-success-overlay[hidden]{
  display:none!important;
}

.form-success-overlay{
  position:fixed!important;
  inset:0!important;
  z-index:2147483200!important;
  display:grid!important;
  place-items:center!important;
  padding:18px!important;
}

.form-success-overlay__backdrop{
  position:absolute!important;
  inset:0!important;
  background:rgba(8,20,48,.42)!important;
  backdrop-filter:blur(5px)!important;
}

.form-success-overlay__box{
  position:relative!important;
  width:min(520px,100%)!important;
  padding:30px 28px 26px!important;
  border-radius:30px!important;
  background:
    radial-gradient(circle at 20% 0%, rgba(217,255,237,.9), transparent 42%),
    linear-gradient(180deg,#ffffff,#f3fff8)!important;
  border:1px solid rgba(26,151,89,.24)!important;
  box-shadow:
    0 30px 90px rgba(8,20,48,.28),
    inset 0 1px 0 rgba(255,255,255,.96)!important;
  text-align:center!important;
  color:#0b2f21!important;
}

.form-success-overlay__icon{
  width:64px!important;
  height:64px!important;
  margin:0 auto 14px!important;
  border-radius:999px!important;
  display:grid!important;
  place-items:center!important;
  background:linear-gradient(135deg,#12b76a,#27d18a)!important;
  color:#fff!important;
  font-size:38px!important;
  line-height:1!important;
  font-weight:900!important;
  box-shadow:0 14px 34px rgba(18,183,106,.28)!important;
}

.form-success-overlay__box strong{
  display:block!important;
  margin:0 0 10px!important;
  color:#071126!important;
  font-size:clamp(25px,4vw,34px)!important;
  line-height:1.08!important;
  letter-spacing:-.04em!important;
}

.form-success-overlay__box p{
  margin:0 auto 18px!important;
  max-width:430px!important;
  color:#2f485d!important;
  font-size:17px!important;
  line-height:1.55!important;
}

.form-success-overlay__box a{
  color:#1f45a8!important;
  font-weight:900!important;
  text-decoration:none!important;
}

.form-success-overlay__button{
  min-height:48px!important;
  padding:0 26px!important;
  border:0!important;
  border-radius:999px!important;
  background:linear-gradient(135deg,#2454ca,#20b8ff)!important;
  color:#fff!important;
  font-weight:900!important;
  font-size:16px!important;
  cursor:pointer!important;
  box-shadow:0 16px 34px rgba(36,84,202,.24)!important;
}

.form-success-overlay__close{
  position:absolute!important;
  top:12px!important;
  right:14px!important;
  width:38px!important;
  height:38px!important;
  border:0!important;
  border-radius:999px!important;
  background:#eef5ff!important;
  color:#173472!important;
  font-size:26px!important;
  line-height:1!important;
  cursor:pointer!important;
}

html.si-form-success-open{
  overflow:hidden!important;
}

@media(max-width:760px){
  #kalkulace{
    scroll-margin-top:86px!important;
  }

  .form-success-overlay{
    padding:14px!important;
  }

  .form-success-overlay__box{
    padding:28px 20px 22px!important;
    border-radius:26px!important;
  }

  .form-success-overlay__box p{
    font-size:16px!important;
  }

  .form-success-overlay__button{
    width:100%!important;
  }
}


/* v140 – cenova-kalkulace page: form directly under hero, no comparison banner */
.cenova-form-top{
  padding-top:28px!important;
  padding-bottom:34px!important;
}

.cenova-form-top + .si-section{
  padding-top:26px!important;
}

@media(max-width:760px){
  .cenova-form-top{
    padding-top:18px!important;
    padding-bottom:24px!important;
  }
}


/* v141 – vrácení prémiovější hloubky, stínování a jemného glow efektu */
.si-page-hero h1,
.hy-section .why-foam-claim,
.why-foam-claim,
.si-card,
.si-prose,
.contact-main,
.contact-image-card,
.contact-box,
.contact-billing,
.si-image-card,
.article-hero-image,
.info-depth,
.why-foam-main,
.why-foam-side,
.hy-benefit-grid--top > div,
.si-review-banner,
.gallery-intro,
.cenova-form-top .contact-main,
.cenova-form-top .contact-image-card,
.cenova-form-top .contact-box{
  box-shadow:
    0 0 0 1px rgba(67,112,228,.10),
    0 22px 58px rgba(11,31,70,.13),
    0 8px 22px rgba(36,84,202,.08)!important;
}

.si-page-hero h1,
.why-foam-claim,
.si-card,
.si-prose,
.contact-main,
.contact-image-card,
.contact-box,
.contact-billing,
.si-image-card,
.article-hero-image,
.info-depth,
.why-foam-main,
.why-foam-side,
.cenova-form-top .contact-main,
.cenova-form-top .contact-image-card{
  border-color:rgba(67,112,228,.20)!important;
}

.si-page-hero h1{
  background:
    radial-gradient(circle at 8% 0%, rgba(32,184,255,.12), transparent 32%),
    radial-gradient(circle at 96% 4%, rgba(36,84,202,.10), transparent 36%),
    linear-gradient(180deg,#ffffff 0%,#f8fbff 100%)!important;
  box-shadow:
    0 0 0 2px rgba(67,112,228,.08),
    0 26px 76px rgba(11,31,70,.15),
    0 10px 24px rgba(36,84,202,.10),
    inset 0 1px 0 rgba(255,255,255,.96)!important;
}

.article-hero-image,
.si-image-card{
  background:
    radial-gradient(circle at 12% 0%, rgba(32,184,255,.09), transparent 34%),
    linear-gradient(180deg,#ffffff,#f8fbff)!important;
  border:1px solid rgba(67,112,228,.20)!important;
  box-shadow:
    0 0 0 2px rgba(67,112,228,.055),
    0 24px 70px rgba(11,31,70,.14),
    0 8px 22px rgba(36,84,202,.09)!important;
}

.article-hero-image img,
.si-image-card img{
  box-shadow:
    0 16px 42px rgba(11,31,70,.13),
    0 0 0 1px rgba(67,112,228,.12)!important;
}

.hy-benefit-grid--top > div,
.why-foam-checks > div,
.info-depth__card{
  background:
    radial-gradient(circle at 12% 0%, rgba(32,184,255,.08), transparent 34%),
    linear-gradient(180deg,#ffffff,#f4f9ff)!important;
  border:1px solid rgba(67,112,228,.17)!important;
  box-shadow:
    0 15px 38px rgba(11,31,70,.095),
    inset 0 1px 0 rgba(255,255,255,.95)!important;
}

.hy-benefit-grid--top > div:hover,
.why-foam-checks > div:hover,
.info-depth__card:hover,
.si-image-card:hover,
.article-hero-image:hover{
  transform:translateY(-2px)!important;
  box-shadow:
    0 0 0 1px rgba(67,112,228,.12),
    0 28px 76px rgba(11,31,70,.16),
    0 12px 28px rgba(36,84,202,.11)!important;
}

.si-content,
.si-section{
  position:relative;
}

.si-section::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 6% 8%, rgba(32,184,255,.055), transparent 28%),
    radial-gradient(circle at 92% 4%, rgba(36,84,202,.045), transparent 30%);
  opacity:.75;
}

.si-section > *{
  position:relative;
}

@media(max-width:760px){
  .si-page-hero h1,
  .si-card,
  .si-prose,
  .contact-main,
  .contact-image-card,
  .contact-box,
  .si-image-card,
  .article-hero-image,
  .info-depth,
  .hy-benefit-grid--top > div{
    box-shadow:
      0 0 0 1px rgba(67,112,228,.09),
      0 16px 42px rgba(11,31,70,.105),
      0 6px 16px rgba(36,84,202,.07)!important;
  }

  .hy-benefit-grid--top > div:hover,
  .why-foam-checks > div:hover,
  .info-depth__card:hover,
  .si-image-card:hover,
  .article-hero-image:hover{
    transform:none!important;
  }
}


/* v142 – success popup also available on /cenova-kalkulace/ */
.form-success-overlay.is-visible{
  display:grid!important;
}


/* v144 – homepage trust proof: customer rating + certificate */
.home-trust-proof{
  padding-top:34px!important;
  padding-bottom:44px!important;
}

.home-trust-proof .hy-section-title{
  max-width:880px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  text-align:center!important;
}

.home-trust-proof__grid{
  display:grid!important;
  grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr)!important;
  gap:22px!important;
  align-items:stretch!important;
  margin-top:26px!important;
}

.home-trust-proof__card{
  margin:0!important;
  min-height:100%!important;
  padding:24px!important;
  border-radius:32px!important;
  background:
    radial-gradient(circle at 12% 0%, rgba(32,184,255,.10), transparent 34%),
    linear-gradient(180deg,#ffffff,#f6fbff)!important;
  border:1px solid rgba(67,112,228,.20)!important;
  box-shadow:
    0 0 0 2px rgba(67,112,228,.055),
    0 24px 70px rgba(11,31,70,.14),
    0 8px 22px rgba(36,84,202,.09)!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  overflow:hidden!important;
}

.home-trust-proof__card img{
  display:block!important;
  width:auto!important;
  max-width:100%!important;
  height:auto!important;
  object-fit:contain!important;
  border-radius:22px!important;
  box-shadow:
    0 18px 44px rgba(11,31,70,.13),
    0 0 0 1px rgba(67,112,228,.12)!important;
}

.home-trust-proof__card--rating img{
  max-height:330px!important;
  border-radius:28px!important;
}

.home-trust-proof__card--certificate img{
  width:100%!important;
  max-height:330px!important;
}

.home-trust-proof__card figcaption{
  margin-top:18px!important;
  display:grid!important;
  gap:5px!important;
}

.home-trust-proof__card figcaption strong{
  color:#071126!important;
  font-size:21px!important;
  line-height:1.2!important;
  letter-spacing:-.03em!important;
}

.home-trust-proof__card figcaption span{
  color:#526179!important;
  font-size:15.5px!important;
  line-height:1.45!important;
}

@media(max-width:860px){
  .home-trust-proof__grid{
    grid-template-columns:1fr!important;
  }
}

@media(max-width:760px){
  .home-trust-proof{
    padding-top:24px!important;
    padding-bottom:34px!important;
  }

  .home-trust-proof__card{
    padding:18px!important;
    border-radius:26px!important;
  }

  .home-trust-proof__card--rating img{
    max-height:280px!important;
  }

  .home-trust-proof__card--certificate img{
    max-height:260px!important;
  }

  .home-trust-proof__card figcaption strong{
    font-size:19px!important;
  }
}


/* v149 – mobile hamburger menu order */
@media(max-width:1240px){
  .si-nav{
    display:flex!important;
    flex-direction:column!important;
  }

  .si-nav .si-nav__mobile-order-home{
    order:1!important;
  }

  .si-nav .si-nav__mobile-order-price{
    order:2!important;
  }

  .si-nav .si-nav__mobile-order-reference{
    order:3!important;
  }

  .si-nav .si-nav__mobile-order-video{
    order:4!important;
  }

  .si-nav .si-nav__mobile-order-about{
    order:5!important;
  }

  .si-nav .si-nav__mobile-order-dotace{
    order:6!important;
  }

  .si-nav .si-nav__cta.si-nav__mobile-order-price{
    order:0!important;
  }
}


/* v152 – mobile menu visibility + scroll fix
   v149 řazení menu nesmí vynutit zobrazení menu při načtení stránky. */
@media(max-width:1240px){
  body:not(.menu-open) .si-nav{
    display:none!important;
  }

  body.menu-open .si-nav{
    display:flex!important;
    flex-direction:column!important;
    overflow-y:auto!important;
    -webkit-overflow-scrolling:touch!important;
    overscroll-behavior:contain!important;
    max-height:calc(100vh - 96px)!important;
    max-height:calc(100dvh - 96px)!important;
    padding-bottom:calc(22px + env(safe-area-inset-bottom, 0px))!important;
  }

  body.menu-open{
    overflow:hidden!important;
  }

  body.menu-open .si-header{
    z-index:2147481000!important;
  }

  body.menu-open .si-nav .si-nav__link{
    flex:0 0 auto!important;
  }
}

@media(max-width:760px){
  body.menu-open .si-nav{
    max-height:calc(100vh - 92px)!important;
    max-height:calc(100dvh - 92px)!important;
  }
}


/* v153 – robustní mobilní menu: samostatný fixní scrollovací panel */
@media(max-width:1240px){
  body:not(.menu-open) .si-nav{
    display:none!important;
    pointer-events:none!important;
  }

  body.menu-open .si-nav{
    position:fixed!important;
    left:14px!important;
    right:14px!important;
    top:86px!important;
    bottom:calc(12px + env(safe-area-inset-bottom, 0px))!important;
    height:auto!important;
    max-height:none!important;
    width:auto!important;
    margin:0!important;
    padding:16px!important;
    display:flex!important;
    flex-direction:column!important;
    flex-wrap:nowrap!important;
    align-items:stretch!important;
    justify-content:flex-start!important;
    gap:12px!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    -webkit-overflow-scrolling:touch!important;
    overscroll-behavior:contain!important;
    touch-action:pan-y!important;
    z-index:2147483002!important;
    background:rgba(255,255,255,.98)!important;
    border:1px solid rgba(67,112,228,.18)!important;
    border-radius:26px!important;
    box-shadow:0 28px 90px rgba(11,31,70,.24)!important;
    white-space:normal!important;
    grid-template-columns:none!important;
  }

  body.menu-open .si-nav::after{
    content:"";
    display:block;
    flex:0 0 12px;
  }

  body.menu-open .si-nav .si-nav__link{
    width:100%!important;
    min-height:58px!important;
    padding:13px 18px!important;
    display:flex!important;
    flex:0 0 auto!important;
    align-items:center!important;
    justify-content:center!important;
    text-align:center!important;
    border-radius:22px!important;
    background:linear-gradient(180deg,#f8fbff,#f1f7ff)!important;
    box-shadow:none!important;
  }

  body.menu-open .si-nav .si-nav__cta{
    min-height:64px!important;
    color:#fff!important;
    background:linear-gradient(135deg,#3866db,#20b8ff)!important;
    box-shadow:0 18px 42px rgba(36,84,202,.28)!important;
  }

  /* výchozí položky až za prioritními odkazy */
  body.menu-open .si-nav .si-nav__link{
    order:20!important;
  }

  body.menu-open .si-nav .si-nav__mobile-order-home{
    order:1!important;
  }

  body.menu-open .si-nav .si-nav__mobile-order-price{
    order:2!important;
  }

  body.menu-open .si-nav .si-nav__mobile-order-reference{
    order:3!important;
  }

  body.menu-open .si-nav .si-nav__mobile-order-video{
    order:4!important;
  }

  body.menu-open .si-nav .si-nav__mobile-order-about{
    order:5!important;
  }

  body.menu-open .si-nav .si-nav__mobile-order-dotace{
    order:6!important;
  }

  body.menu-open .si-nav .si-nav__cta.si-nav__mobile-order-price{
    order:2!important;
  }

  body.menu-open{
    overflow:hidden!important;
  }
}

@media(max-width:760px){
  body.menu-open .si-nav{
    top:86px!important;
    left:14px!important;
    right:14px!important;
    bottom:calc(12px + env(safe-area-inset-bottom, 0px))!important;
  }
}

@media(max-width:420px){
  body.menu-open .si-nav{
    top:82px!important;
    left:12px!important;
    right:12px!important;
    padding:14px!important;
    gap:11px!important;
  }

  body.menu-open .si-nav .si-nav__link{
    min-height:56px!important;
  }
}


/* v154 – independent mobile overlay menu */
.si-mobile-menu-overlay[hidden]{
  display:none!important;
}

.si-mobile-menu-overlay{
  position:fixed!important;
  inset:0!important;
  z-index:2147483600!important;
  display:block!important;
}

.si-mobile-menu-overlay__backdrop{
  position:absolute!important;
  inset:0!important;
  background:rgba(8,20,48,.22)!important;
  backdrop-filter:blur(3px)!important;
}

.si-mobile-menu-overlay__panel{
  position:absolute!important;
  left:14px!important;
  right:14px!important;
  top:88px!important;
  bottom:calc(12px + env(safe-area-inset-bottom, 0px))!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  -webkit-overflow-scrolling:touch!important;
  overscroll-behavior:contain!important;
  touch-action:pan-y!important;
  padding:18px 16px 22px!important;
  border-radius:28px!important;
  background:rgba(255,255,255,.985)!important;
  border:1px solid rgba(67,112,228,.18)!important;
  box-shadow:0 30px 90px rgba(11,31,70,.28)!important;
}

.si-mobile-menu-overlay__close{
  position:sticky!important;
  top:0!important;
  z-index:2!important;
  margin-left:auto!important;
  margin-bottom:12px!important;
  width:44px!important;
  height:44px!important;
  display:grid!important;
  place-items:center!important;
  border:0!important;
  border-radius:999px!important;
  background:#eef5ff!important;
  color:#071126!important;
  font-size:32px!important;
  line-height:1!important;
  font-weight:800!important;
  box-shadow:0 10px 24px rgba(11,31,70,.10)!important;
}

.si-mobile-menu-overlay__links{
  display:flex!important;
  flex-direction:column!important;
  gap:12px!important;
  align-items:stretch!important;
}

.si-mobile-menu-overlay__link{
  width:100%!important;
  min-height:58px!important;
  padding:13px 18px!important;
  display:flex!important;
  flex:0 0 auto!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  border-radius:22px!important;
  background:linear-gradient(180deg,#f8fbff,#f1f7ff)!important;
  border:1px solid rgba(67,112,228,.08)!important;
  color:#142033!important;
  font-size:clamp(19px,5.4vw,24px)!important;
  line-height:1.15!important;
  font-weight:900!important;
  text-decoration:none!important;
  box-shadow:none!important;
}

.si-mobile-menu-overlay__link.si-nav__cta,
.si-mobile-menu-overlay__link.si-nav__mobile-order-price.si-nav__cta{
  min-height:66px!important;
  color:#fff!important;
  background:linear-gradient(135deg,#3866db,#20b8ff)!important;
  box-shadow:0 18px 42px rgba(36,84,202,.28)!important;
}

.si-mobile-menu-overlay__link{
  order:20!important;
}

.si-mobile-menu-overlay__link.si-nav__mobile-order-home{
  order:1!important;
}

.si-mobile-menu-overlay__link.si-nav__mobile-order-price{
  order:2!important;
}

.si-mobile-menu-overlay__link.si-nav__mobile-order-reference{
  order:3!important;
}

.si-mobile-menu-overlay__link.si-nav__mobile-order-video{
  order:4!important;
}

.si-mobile-menu-overlay__link.si-nav__mobile-order-about{
  order:5!important;
}

.si-mobile-menu-overlay__link.si-nav__mobile-order-dotace{
  order:6!important;
}

html.si-mobile-menu-open,
body.si-mobile-menu-open{
  overflow:hidden!important;
}

@media(min-width:1241px){
  .si-mobile-menu-overlay{
    display:none!important;
  }
}

@media(max-width:420px){
  .si-mobile-menu-overlay__panel{
    top:84px!important;
    left:12px!important;
    right:12px!important;
    padding:14px!important;
    gap:11px!important;
  }

  .si-mobile-menu-overlay__link{
    min-height:56px!important;
  }
}


/* v156 – delší SEO názvy v horním menu */
@media(min-width:1241px){
  .si-header__inner{
    gap:14px!important;
  }

  .si-nav{
    gap:12px!important;
  }

  .si-nav__link{
    font-size:14.5px!important;
    letter-spacing:-.025em!important;
    white-space:nowrap!important;
  }

  .si-nav__cta{
    padding-left:20px!important;
    padding-right:20px!important;
  }
}

@media(min-width:1241px) and (max-width:1500px){
  .si-nav{
    gap:10px!important;
  }

  .si-nav__link{
    font-size:13.8px!important;
  }

  .si-logo img{
    max-width:285px!important;
  }

  .si-nav__cta{
    padding-left:17px!important;
    padding-right:17px!important;
  }
}


/* v157 – desktop header fix: logo must not overlap navigation */
@media(min-width:1241px){
  .si-header__inner{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:18px!important;
    min-width:0!important;
  }

  .si-logo{
    flex:0 1 auto!important;
    min-width:0!important;
    max-width:300px!important;
  }

  .si-logo img{
    width:auto!important;
    max-width:300px!important;
    height:auto!important;
    display:block!important;
  }

  .si-nav{
    flex:1 1 auto!important;
    min-width:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:12px!important;
    white-space:nowrap!important;
  }

  .si-nav__link{
    flex:0 0 auto!important;
    font-size:14.2px!important;
    letter-spacing:-.03em!important;
    padding-left:0!important;
    padding-right:0!important;
  }

  .si-nav__cta{
    padding-left:18px!important;
    padding-right:18px!important;
  }
}

@media(min-width:1241px) and (max-width:1700px){
  .si-logo{
    max-width:270px!important;
  }

  .si-logo img{
    max-width:270px!important;
  }

  .si-nav{
    gap:10px!important;
  }

  .si-nav__link{
    font-size:13.5px!important;
  }

  .si-nav__cta{
    padding-left:16px!important;
    padding-right:16px!important;
  }
}

@media(min-width:1241px) and (max-width:1500px){
  .si-logo{
    max-width:235px!important;
  }

  .si-logo img{
    max-width:235px!important;
  }

  .si-nav{
    gap:8px!important;
  }

  .si-nav__link{
    font-size:12.8px!important;
  }

  .si-nav__cta{
    padding-left:14px!important;
    padding-right:14px!important;
  }
}
