body.document-page .page-content>.elementor>.elementor-section:first-child,
body.document-page .page-content>.elementor-section:first-child {
  padding: 64px 0 82px;
  color: var(--ink);
  background: linear-gradient(135deg,var(--lilac),#fff 52%,var(--rose));
}
body.document-page .page-content>.elementor>.elementor-section:first-child:before,
body.document-page .page-content>.elementor>.elementor-section:first-child:after,
body.document-page .page-content>.elementor-section:first-child:before,
body.document-page .page-content>.elementor-section:first-child:after { display: none; }
body.document-page .page-content>.elementor>.elementor-section:first-child>.elementor-container,
body.document-page .page-content>.elementor-section:first-child>.elementor-container {
  display: block;
  width: min(1180px, calc(100% - 40px));
  max-width: 1180px;
  margin-inline: auto;
  padding: clamp(24px,4vw,52px);
  background: #fff;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  box-shadow: var(--shadow);
}
body.document-page .page-content>.elementor>.elementor-section:first-child h1,
body.document-page .page-content>.elementor>.elementor-section:first-child h2,
body.document-page .page-content>.elementor>.elementor-section:first-child h3,
body.document-page .page-content>.elementor-section:first-child h1,
body.document-page .page-content>.elementor-section:first-child h2,
body.document-page .page-content>.elementor-section:first-child h3 { color: var(--navy-deep); }
body.document-page .page-content>.elementor>.elementor-section:first-child .elementor-widget-text-editor,
body.document-page .page-content>.elementor-section:first-child .elementor-widget-text-editor { color: var(--ink); }
/* White document cards must override the global dark-hero typography. */
body.document-page .page-content>.elementor>.elementor-section:first-child .elementor-widget-text-editor,
body.document-page .page-content>.elementor>.elementor-section:first-child .elementor-widget-text-editor p,
body.document-page .page-content>.elementor>.elementor-section:first-child .elementor-widget-text-editor div,
body.document-page .page-content>.elementor>.elementor-section:first-child .elementor-widget-text-editor span,
body.document-page .page-content>.elementor>.elementor-section:first-child .elementor-widget-text-editor li,
body.document-page .page-content>.elementor>.elementor-section:first-child .elementor-widget-text-editor strong,
body.document-page .page-content>.elementor>.elementor-section:first-child .elementor-widget-text-editor b,
body.document-page .page-content>.elementor-section:first-child .elementor-widget-text-editor,
body.document-page .page-content>.elementor-section:first-child .elementor-widget-text-editor p,
body.document-page .page-content>.elementor-section:first-child .elementor-widget-text-editor div,
body.document-page .page-content>.elementor-section:first-child .elementor-widget-text-editor span,
body.document-page .page-content>.elementor-section:first-child .elementor-widget-text-editor li,
body.document-page .page-content>.elementor-section:first-child .elementor-widget-text-editor strong,
body.document-page .page-content>.elementor-section:first-child .elementor-widget-text-editor b{
  color:var(--ink)!important;
}
body.document-page .page-content>.elementor>.elementor-section:first-child .elementor-widget-text-editor,
body.document-page .page-content>.elementor-section:first-child .elementor-widget-text-editor{
  max-width: 980px;
  font-size:1rem;
  line-height:1.72;
  overflow-wrap:anywhere;
  word-break:normal;
}
body.document-page .page-content>.elementor>.elementor-section:first-child .elementor-widget-heading,
body.document-page .page-content>.elementor-section:first-child .elementor-widget-heading { max-width: 980px; }
body.document-page .page-content>.elementor>.elementor-section:first-child .elementor-widget-text-editor p,
body.document-page .page-content>.elementor-section:first-child .elementor-widget-text-editor p { margin: 0 0 1.15em; }
body.document-page .page-content>.elementor>.elementor-section:first-child .elementor-widget-text-editor h2,
body.document-page .page-content>.elementor-section:first-child .elementor-widget-text-editor h2 {
  margin: 2.1em 0 .7em;
  padding-left: 16px;
  border-left: 4px solid var(--red);
  font-size: clamp(1.45rem,2.4vw,2rem);
  line-height: 1.2;
}
body.document-page .page-content>.elementor>.elementor-section:first-child .elementor-widget-text-editor h3,
body.document-page .page-content>.elementor-section:first-child .elementor-widget-text-editor h3,
body.document-page .page-content>.elementor>.elementor-section:first-child .elementor-widget-text-editor h4,
body.document-page .page-content>.elementor-section:first-child .elementor-widget-text-editor h4 {
  margin: 1.7em 0 .65em;
  font-size: clamp(1.15rem,1.8vw,1.4rem);
  line-height: 1.28;
}
body.document-page .page-content>.elementor>.elementor-section:first-child .elementor-widget-text-editor ul,
body.document-page .page-content>.elementor>.elementor-section:first-child .elementor-widget-text-editor ul,
body.document-page .page-content>.elementor>.elementor-section:first-child .elementor-widget-text-editor ol,
body.document-page .page-content>.elementor-section:first-child .elementor-widget-text-editor ol { margin: .6em 0 1.4em; padding-left: 1.5em; }
body.document-page .page-content>.elementor>.elementor-section:first-child .elementor-widget-text-editor li,
body.document-page .page-content>.elementor-section:first-child .elementor-widget-text-editor li { margin: .42em 0; padding-left: .25em; }
body.document-page .page-content>.elementor>.elementor-section:first-child .elementor-widget-text-editor p:empty,
body.document-page .page-content>.elementor-section:first-child .elementor-widget-text-editor p:empty { display:none; }
@media (max-width: 700px) {
  body.document-page .page-content>.elementor>.elementor-section:first-child,
  body.document-page .page-content>.elementor-section:first-child { padding: 34px 0 50px; }
  body.document-page .page-content>.elementor>.elementor-section:first-child>.elementor-container,
  body.document-page .page-content>.elementor-section:first-child>.elementor-container { width: min(100% - 24px,1180px); padding: 24px 18px; }
}
body.document-page .page-content>.elementor>.elementor-section:first-child a:not(.elementor-button),
body.document-page .page-content>.elementor-section:first-child a:not(.elementor-button) {
  color: var(--navy)!important;
  font-weight: 700;
  text-decoration: underline;
  text-decoration-color: rgba(227,6,19,.35);
  text-underline-offset: 3px;
}
body.document-page .page-content>.elementor>.elementor-section:first-child a:not(.elementor-button):hover,
body.document-page .page-content>.elementor-section:first-child a:not(.elementor-button):hover {
  color: var(--red)!important;
  text-decoration-color: currentColor;
}
body.document-page .elementor-icon-list-item {
  padding: 13px 0;
  border-bottom: 1px solid var(--line);
  align-items: flex-start;
}
body.document-page .elementor-icon-list-item:last-child { border-bottom: 0; }
body.document-page .elementor-icon-list-icon { flex: 0 0 auto; margin-top: .2em; }
.privacy-calculator {
  width: min(1180px, calc(100% - 40px));
  margin: 42px auto 72px;
  padding: clamp(28px, 4vw, 52px);
  color: var(--ink);
  background: #fff;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  box-shadow: var(--shadow);
  overflow-wrap: anywhere;
}
.privacy-calculator h2 {
  margin: 0 0 .65em;
  color: var(--navy-deep);
  font-size: clamp(1.7rem, 3vw, 2.5rem);
  line-height: 1.16;
}
.privacy-calculator h3 {
  margin: 1.55em 0 .45em;
  color: var(--navy-deep);
  font-size: clamp(1.08rem, 1.6vw, 1.28rem);
  line-height: 1.3;
}
.privacy-calculator p {
  max-width: 980px;
  margin: 0 0 1em;
  color: var(--ink);
  font-size: 1rem;
  line-height: 1.7;
}
.privacy-calculator a {
  color: var(--navy);
  font-weight: 700;
  text-decoration: underline;
  text-decoration-color: rgba(227,6,19,.35);
  text-underline-offset: 3px;
}
.privacy-calculator a:hover { color: var(--red); text-decoration-color: currentColor; }
@media (max-width: 700px) {
  .privacy-calculator {
    width: min(100% - 24px, 1180px);
    margin: 24px auto 46px;
    padding: 26px 18px;
    border-radius: 20px;
  }
}
.ecok-hero .elementor-widget-wrap { max-width: 980px; }
.ecok-hero h1 span,.ecok-promo h2 span{color:var(--red)}
.ecok-hero h1{max-width:940px}
.ecok-hero h2{max-width:860px!important}
.ecok-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:8px}
.ecok-actions .secondary{background:#fff;color:var(--navy)!important;box-shadow:none}
.ecok-details{padding:70px 0;background:linear-gradient(145deg,var(--lilac),#fff 52%,var(--rose))}
.ecok-wrap{width:min(1180px,calc(100% - 40px));margin:0 auto}
.ecok-section-head,.ecok-presentation-head{max-width:850px}
.ecok-section-head h2,.ecok-presentation-head h2{margin-bottom:.35em}
.ecok-presentation-head p{color:var(--muted);font-size:1.08rem}
.ecok-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:26px}
.ecok-feature{position:relative;overflow:hidden;padding:26px 24px;border:1px solid var(--line);border-radius:20px;background:#fff;box-shadow:0 12px 34px rgba(32,21,86,.07)}
.ecok-feature:before{content:"";position:absolute;inset:0 0 auto;height:4px;background:linear-gradient(90deg,var(--navy),var(--red))}
.ecok-feature h3{font-size:1.25rem;margin-bottom:.45em}
.ecok-feature p{margin:0;color:var(--muted)}
.ecok-presentation{padding:76px 0;background:#fff}
.ecok-viewer{max-width:1120px;margin-top:30px}
.ecok-viewer .presentation-stage{aspect-ratio:16/9;min-height:560px;background:linear-gradient(135deg,#f4f1ff,#fff 48%,#fff1f2)}
.ecok-slide{position:relative;overflow:hidden;padding:clamp(30px,5vw,64px);grid-template-columns:.9fr 1.1fr;align-items:center;gap:clamp(28px,5vw,64px);background:radial-gradient(circle at 92% 12%,rgba(227,6,19,.13),transparent 30%),linear-gradient(135deg,#f5f2ff,#fff 56%,#fff1f2)}
.ecok-slide.is-active{display:grid}
.ecok-slide-number{position:absolute;right:28px;top:20px;color:rgba(46,32,107,.12);font-size:clamp(4rem,8vw,7rem);font-weight:900;line-height:1}
.ecok-slide-copy{position:relative;z-index:2}
.ecok-slide-copy h3{font-size:clamp(2rem,3.6vw,3.4rem);margin:.15em 0 .3em}
.ecok-slide-copy>p{color:var(--muted);font-size:1.08rem}
.ecok-slide-copy ul{display:grid;gap:10px;margin:24px 0 0;padding:0;list-style:none}
.ecok-slide-copy li{position:relative;padding:10px 12px 10px 42px;border:1px solid rgba(46,32,107,.1);border-radius:12px;background:rgba(255,255,255,.78);color:var(--navy);font-weight:750}
.ecok-slide-copy li:before{content:"✓";position:absolute;left:15px;color:var(--red);font-weight:900}
.ecok-slide-ui{position:relative;overflow:hidden;border:1px solid rgba(46,32,107,.16);border-radius:22px;background:#fff;box-shadow:0 24px 60px rgba(22,15,69,.18);transform:rotate(1deg)}
.ecok-window-bar{display:flex;align-items:center;gap:7px;min-height:48px;padding:0 16px;background:var(--navy-deep);color:#fff}
.ecok-window-bar i{width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.35)}
.ecok-window-bar i:first-child{background:var(--red)}
.ecok-window-bar span{margin-left:auto;font-size:.78rem;font-weight:850;letter-spacing:.1em}
.ecok-window-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:18px}
.ecok-window-kpis b{min-height:112px;padding:16px 13px;border-radius:14px;background:linear-gradient(145deg,#f4f2fb,#fff);color:var(--navy);font-size:.84rem;line-height:1.32}
.ecok-window-kpis small{display:block;margin-bottom:16px;color:var(--red);font-size:1.25rem}
.ecok-window-table{display:grid;gap:10px;padding:0 18px 22px}
.ecok-window-table span{display:block;height:20px;border-radius:7px;background:linear-gradient(90deg,#eceaf5 18%,#f7f6fb 18% 40%,#eceaf5 40% 63%,#f7f6fb 63%)}
.ecok-access{padding:0 0 72px;background:#fff}
.ecok-account{margin-top:22px;padding:28px;border-radius:22px;background:linear-gradient(135deg,var(--navy-deep),var(--navy));color:#fff}
.ecok-account h2{color:#fff;font-size:1.8rem}
.ecok-account p{max-width:900px;color:#eeeaff}
.ecok-account a{color:#fff;font-weight:800;text-decoration:underline;text-underline-offset:3px}
.ecok-promo{padding:70px 0;background:linear-gradient(125deg,var(--navy-deep),var(--navy) 70%,var(--violet));color:#fff}
.ecok-promo-wrap{display:grid;grid-template-columns:1.25fr .75fr;align-items:center;gap:54px;width:min(1180px,calc(100% - 40px));margin:0 auto}
.ecok-promo h2{color:#fff;max-width:760px}
.ecok-promo p{max-width:760px;color:#eeeaff}
.ecok-promo-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}
.ecok-promo-actions .secondary{background:#fff;color:var(--navy)!important;box-shadow:none}
.ecok-promo ul{display:grid;gap:10px;margin:0;padding:22px;list-style:none;border:1px solid rgba(255,255,255,.18);border-radius:22px;background:rgba(255,255,255,.08)}
.ecok-promo li{position:relative;padding:8px 8px 8px 34px;font-weight:700}
.ecok-promo li:before{content:"✓";position:absolute;left:8px;color:#fff;font-weight:900}
/* Elementor's original icon sizing lived in the old theme. Keep migrated SVGs compact. */
.elementor-widget-icon .elementor-icon-wrapper { line-height: 1; }
.elementor-widget-icon .elementor-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 72px;
  height: 72px;
  color: var(--navy);
}
.elementor-widget-icon .elementor-icon svg,
.elementor-widget-icon svg.e-font-icon-svg {
  display: block;
  width: 56px !important;
  height: 56px !important;
  max-width: 56px !important;
  max-height: 56px !important;
  fill: currentColor;
}
.elementor-icon-box-icon .elementor-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 54px;
  height: 54px;
  border-radius: 16px;
  color: var(--navy);
  background: var(--lilac);
}
.elementor-icon-box-icon .elementor-icon svg {
  width: 28px !important;
  height: 28px !important;
  max-width: 28px !important;
  max-height: 28px !important;
  fill: currentColor;
}
.elementor-toggle-title { position: relative; }
.elementor-toggle-icon {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  flex: 0 0 auto;
}
.elementor-toggle-icon svg {
  display: block;
  width: 14px !important;
  height: 14px !important;
  max-width: 14px !important;
  max-height: 14px !important;
  fill: currentColor;
}
.elementor-select-wrapper { position: relative; }
.select-caret-down-wrapper {
  position: absolute;
  right: 14px;
  top: 50%;
  z-index: 2;
  width: 14px;
  height: 14px;
  transform: translateY(-50%);
  color: var(--navy);
  pointer-events: none;
}
.select-caret-down-wrapper svg {
  display: block;
  width: 14px !important;
  height: 14px !important;
  max-width: 14px !important;
  max-height: 14px !important;
  fill: currentColor;
}
.elementor-select-wrapper select { padding-right: 42px; appearance: none; }
input:focus,select:focus,textarea:focus { outline-color: rgba(227,6,19,.16); border-color: var(--red); }
.elementor-icon-list-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  min-width: 24px;
  height: 24px;
}
.elementor-icon-list-icon svg {
  width: 18px !important;
  height: 18px !important;
  max-width: 18px !important;
  max-height: 18px !important;
}
.elementor-widget-image img[src*="Ikona_1_SVG"] {
  width: 104px;
  height: 104px;
  padding: 15px;
  object-fit: contain;
  border: 1px solid rgba(46,32,107,.12);
  border-radius: 26px;
  background: linear-gradient(145deg,#fff,var(--lilac));
  box-shadow: 0 14px 34px rgba(46,32,107,.14);
  transition: transform .25s ease,box-shadow .25s ease;
}
.elementor-widget-image img[src*="Ikona_1_SVG"]:hover {
  transform: translateY(-4px);
  box-shadow: 0 20px 42px rgba(46,32,107,.2);
}
.elementor-toggle-item > .elementor-tab-title {
  display: grid !important;
  grid-template-columns: minmax(0,1fr) 42px;
  align-items: center;
  gap: 8px;
  padding: 0;
  color: var(--navy) !important;
  cursor: pointer;
}
.elementor-toggle-item > .elementor-tab-title > .elementor-toggle-icon { display: none !important; }
.elementor-toggle-item > .elementor-tab-title > a.elementor-toggle-title {
  display: block !important;
  padding: 18px 6px 18px 20px;
  color: var(--navy) !important;
  font-weight: 750;
  line-height: 1.4;
}
.elementor-toggle-item > .elementor-tab-title > a.elementor-toggle-title:after { content: none !important; }
.elementor-toggle-item > .elementor-tab-title:after {
  content: "+" !important;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  color: #fff;
  background: var(--red);
  font-size: 1.25rem;
  font-weight: 500;
  line-height: 1;
}
.elementor-toggle-item > .elementor-tab-title[aria-expanded="true"]:after { content: "−" !important; }
.elementor-toggle-item .elementor-tab-content {
  padding: 0 20px 22px;
  color: var(--ink);
  border-top: 1px solid var(--line);
}
.elementor-toggle-item .elementor-tab-content > :first-child { margin-top: 18px; }
.process-visuals { padding: 92px 0; overflow: hidden; background: linear-gradient(135deg,#fff,var(--lilac)); }
.process-visuals .visual-wrap { width: min(1180px,calc(100% - 40px)); margin: 0 auto; display: grid; grid-template-columns: .85fr 1.15fr; gap: clamp(36px,7vw,92px); align-items: center; }
.process-visuals .visual-copy { max-width: 520px; }
.process-visuals .visual-copy .eyebrow { color: var(--red); }
.process-visuals .visual-stack { position: relative; min-height: 500px; }
.process-visuals .visual-stack img { position: absolute; width: 68%; height: 78%; object-fit: cover; border-radius: 26px; box-shadow: 0 24px 70px rgba(22,15,69,.2); transition: transform .45s ease,box-shadow .45s ease; }
.process-visuals .visual-stack img:first-child { left: 0; top: 0; }
.process-visuals .visual-stack img:last-child { right: 0; bottom: 0; width: 48%; height: 64%; border: 7px solid #fff; }
.process-visuals .visual-stack:hover img:first-child { transform: translate(-5px,-5px) rotate(-1deg); }
.process-visuals .visual-stack:hover img:last-child { transform: translate(6px,5px) rotate(1deg); box-shadow: 0 30px 80px rgba(22,15,69,.26); }
body.hero-page .page-content>.elementor>.elementor-section:first-child:before,
body.hero-page .page-content>.elementor>.elementor-section:first-child:after,
body.hero-page .page-content>.elementor-section:first-child:before,
body.hero-page .page-content>.elementor-section:first-child:after { display: none; }
body.hero-page .page-content>.elementor>.elementor-section:first-child,
body.hero-page .page-content>.elementor-section:first-child {
  background-size: 160% 160%;
  animation: hero-gradient 14s ease-in-out infinite alternate;
}
@keyframes hero-gradient {
  from { background-position: 0% 45%; }
  to { background-position: 100% 55%; }
}
@media(max-width:700px) {
  .elementor-widget-image img[src*="Ikona_1_SVG"] {
    width: 86px;
    height: 86px;
    padding: 12px;
    border-radius: 22px;
  }
  .elementor-widget-icon .elementor-icon { width: 58px; height: 58px; }
  .elementor-widget-icon .elementor-icon svg,
  .elementor-widget-icon svg.e-font-icon-svg {
    width: 44px !important;
    height: 44px !important;
    max-width: 44px !important;
    max-height: 44px !important;
  }
  .process-visuals { padding: 62px 0; }
  .process-visuals .visual-wrap { width: calc(100% - 28px); grid-template-columns: 1fr; }
  .process-visuals .visual-stack { min-height: 370px; }
  body.document-page .page-content>.elementor>.elementor-section:first-child,
  body.document-page .page-content>.elementor-section:first-child { padding: 32px 0 46px; }
  body.document-page .page-content>.elementor>.elementor-section:first-child>.elementor-container,
  body.document-page .page-content>.elementor-section:first-child>.elementor-container {
    width: calc(100% - 20px);
    padding: 22px 18px;
    border-radius: 18px;
  }
  body.document-page .elementor-icon-list-item { padding: 11px 0; }
}
@media(prefers-reduced-motion:reduce) {
  body.hero-page .page-content>.elementor>.elementor-section:first-child,
  body.hero-page .page-content>.elementor-section:first-child { animation: none; }
  .process-visuals .visual-stack img { transition: none; }
}

/* Knowledge hub and SEO articles */
.knowledge-page .knowledge-hero{padding:82px 0;background:radial-gradient(circle at 86% 15%,rgba(227,6,19,.42),transparent 24%),linear-gradient(120deg,var(--navy-deep),var(--navy) 70%,var(--violet));color:#fff}
.knowledge-page .knowledge-hero:before,.knowledge-page .knowledge-hero:after{display:none}
.knowledge-page .knowledge-hero h1,.knowledge-page .knowledge-hero h2{color:#fff}
.knowledge-page .knowledge-hero h2{max-width:850px;font-size:clamp(1.4rem,2.5vw,2.2rem)}
.knowledge-page .knowledge-hero p{max-width:780px;color:#eeeaff;font-size:1.08rem}
.knowledge-actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-top:10px}
.knowledge-actions span{font-weight:700;color:#fff}
.knowledge-list{padding:76px 0;background:linear-gradient(135deg,var(--lilac),#fff 58%,var(--rose))}
.knowledge-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;width:min(1180px,calc(100% - 40px));margin:0 auto}
.knowledge-card{display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--line);border-radius:24px;background:#fff;box-shadow:0 18px 48px rgba(32,21,86,.1);transition:transform .25s ease,box-shadow .25s ease}
.knowledge-card:hover{transform:translateY(-5px);box-shadow:0 24px 56px rgba(32,21,86,.16)}
.knowledge-image{display:block;aspect-ratio:16/10;overflow:hidden}
.knowledge-image img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}
.knowledge-card:hover .knowledge-image img{transform:scale(1.035)}
.knowledge-card-copy{display:flex;flex:1;flex-direction:column;padding:24px}
.knowledge-card h2{font-size:1.55rem;margin:.65rem 0}
.knowledge-card p{color:var(--muted)}
.knowledge-more{margin-top:auto;color:var(--red);font-weight:800}
.article-meta{display:flex;align-items:center;gap:12px;flex-wrap:wrap;color:var(--muted);font-size:.88rem;font-weight:700}
.article-meta span:before{content:"•";margin-right:12px;color:var(--red)}
.article-page{padding:56px 0 84px;background:linear-gradient(145deg,var(--lilac),#fff 34%,var(--rose))}
.article-hero{display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:42px;width:min(1180px,calc(100% - 40px));margin:0 auto 48px;padding:34px;border:1px solid var(--line);border-radius:28px;background:#fff;box-shadow:var(--shadow)}
.article-hero h1{font-size:clamp(2.3rem,4.5vw,4rem);margin:.3em 0}
.article-lead{font-size:1.12rem;color:var(--muted)}
.article-breadcrumb{color:var(--red);font-weight:800;text-transform:uppercase;letter-spacing:.08em;font-size:.78rem}
.article-hero img{width:100%;height:100%;max-height:430px;object-fit:cover;border-radius:22px}
.article-layout{width:min(880px,calc(100% - 40px));margin:0 auto}
.article-content{padding:clamp(26px,5vw,58px);border:1px solid var(--line);border-radius:28px;background:#fff;box-shadow:0 18px 54px rgba(32,21,86,.08);font-size:1.06rem}
.article-content h2{margin-top:1.35em;font-size:clamp(1.55rem,3vw,2.35rem)}
.article-content li{margin:.55em 0}
.article-faq{margin-top:44px;padding-top:28px;border-top:1px solid var(--line)}
.article-faq details{margin:12px 0;border:1px solid var(--line);border-radius:14px;background:var(--soft)}
.article-faq summary{padding:16px 18px;color:var(--navy);font-weight:800;cursor:pointer}
.article-faq details p{padding:0 18px 16px;margin:0}
.article-cta{margin:42px 0 24px;padding:28px;border-radius:20px;background:linear-gradient(135deg,var(--navy-deep),var(--navy));color:#fff}
.article-cta h2{margin-top:0;color:#fff}
.article-back{display:inline-block;margin-top:12px;font-weight:800}
@media(max-width:900px){.knowledge-grid{grid-template-columns:1fr 1fr}.article-hero{grid-template-columns:1fr}.article-hero img{max-height:360px}}
@media(max-width:900px){.ecok-grid{grid-template-columns:1fr 1fr}}
@media(max-width:900px){.ecok-promo-wrap{grid-template-columns:1fr;gap:24px}}
@media(max-width:900px){.ecok-slide.is-active{grid-template-columns:1fr}.ecok-viewer .presentation-stage{aspect-ratio:auto;min-height:860px}.ecok-slide-ui{max-width:620px}}
@media(max-width:700px){
  .ecok-actions{display:grid}
  .ecok-details{padding:42px 0}
  .ecok-wrap{width:calc(100% - 24px)}
  .ecok-grid{grid-template-columns:1fr;gap:12px}
  .ecok-feature,.ecok-account{padding:19px;border-radius:18px}
  .ecok-promo{padding:44px 0}
  .ecok-promo-wrap{width:calc(100% - 24px)}
  .ecok-promo-actions{display:grid}
  .ecok-presentation{padding:48px 0}
  .ecok-viewer{margin-top:20px;border-radius:16px}
  .ecok-viewer .presentation-stage{min-height:760px}
  .ecok-slide{padding:26px 18px;gap:22px}
  .ecok-slide-copy h3{font-size:2rem}
  .ecok-slide-copy>p{font-size:1rem}
  .ecok-slide-copy li{padding:9px 10px 9px 38px;font-size:.94rem}
  .ecok-slide-number{right:14px;top:14px}
  .ecok-window-kpis{grid-template-columns:1fr;gap:8px;padding:13px}
  .ecok-window-kpis b{min-height:auto;padding:11px 12px}
  .ecok-window-kpis small{display:inline;margin:0 8px 0 0;font-size:.9rem}
  .ecok-window-table{display:none}
  .ecok-access{padding-bottom:44px}
  .knowledge-page .knowledge-hero{padding:52px 0}
  .knowledge-page .knowledge-hero h2{font-size:1.45rem}
  .knowledge-page .knowledge-hero p{font-size:1rem}
  .knowledge-actions{align-items:flex-start;flex-direction:column;gap:10px}
  .knowledge-actions .button{width:auto}
  .knowledge-list{padding:38px 0}
  .knowledge-grid{grid-template-columns:1fr;width:calc(100% - 24px);gap:18px}
  .knowledge-card{border-radius:20px}
  .knowledge-card-copy{padding:19px}
  .knowledge-card h2{font-size:1.4rem}
  .article-page{padding:24px 0 48px}
  .article-hero{width:calc(100% - 24px);gap:20px;margin-bottom:20px;padding:18px;border-radius:20px}
  .article-hero h1{font-size:2rem}
  .article-hero img{max-height:280px;border-radius:16px}
  .article-layout{width:calc(100% - 24px)}
  .article-content{padding:20px 18px;border-radius:20px;font-size:1rem}
  .article-content ul,.article-content ol{padding-left:1.25rem}
  .article-cta{margin:30px 0 18px;padding:20px}
}

@media(min-width:1241px){
  body.document-page .page-content>.elementor>.elementor-section:first-child,
  body.document-page .page-content>.elementor-section:first-child{padding:44px 0 58px}
  body.document-page .page-content>.elementor>.elementor-section:first-child>.elementor-container,
  body.document-page .page-content>.elementor-section:first-child>.elementor-container{padding:34px}
  .process-visuals{padding:66px 0}
  .process-visuals .visual-stack{min-height:410px}
  .knowledge-page .knowledge-hero{padding:62px 0}
  .knowledge-list{padding:58px 0}
  .knowledge-card-copy{padding:20px}
  .knowledge-card h2{font-size:1.35rem}
  .article-page{padding:42px 0 62px}
  .article-hero{width:min(1260px,calc(100% - 64px));gap:30px;margin-bottom:34px;padding:26px}
  .article-hero h1{font-size:clamp(2.35rem,3.3vw,3.25rem)}
  .article-content{padding:38px;font-size:1rem}
  .calculator-shell{width:min(1280px,calc(100% - 64px));padding:40px 0 62px}
  .calculator-intro{margin-bottom:22px;padding:40px}
  .calculator-intro h1{font-size:clamp(2.5rem,3.5vw,3.7rem)}
  .calculator-card{padding:28px}
  .calculator-card h2,.result-card h2{font-size:clamp(1.4rem,1.8vw,1.85rem)}
  .result-card{padding:22px}
  .result-main strong{font-size:3.7rem}
  .ecok-details{padding:54px 0}
  .ecok-wrap{width:min(1320px,calc(100% - 64px))}
  .ecok-feature{padding:21px}
}

/* Interactive outsourcing calculator */
.calculator-page{background:linear-gradient(145deg,#f0edff,#fff 42%,#fff3f4)}
.calculator-shell{width:min(1240px,calc(100% - 40px));margin:0 auto;padding:56px 0 86px}
.calculator-intro{position:relative;overflow:hidden;margin-bottom:26px;padding:clamp(28px,5vw,58px);border-radius:30px;background:radial-gradient(circle at 88% 0,rgba(227,6,19,.48),transparent 28%),linear-gradient(125deg,var(--navy-deep),var(--navy) 68%,var(--violet));color:#fff;box-shadow:0 26px 70px rgba(22,15,69,.24)}
.calculator-intro:after{content:"";position:absolute;right:4%;bottom:-34%;width:260px;height:260px;border:44px solid rgba(255,255,255,.08);border-radius:50%}
.calculator-intro h1{position:relative;z-index:1;max-width:900px;color:#fff;font-size:clamp(2.4rem,5vw,4.8rem)}
.calculator-intro>p{position:relative;z-index:1;max-width:770px;color:#eeeaff;font-size:1.08rem}
.calculator-steps{position:relative;z-index:1;display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}
.calculator-steps span{padding:8px 13px;border:1px solid rgba(255,255,255,.22);border-radius:999px;background:rgba(255,255,255,.1);font-size:.85rem;font-weight:750;backdrop-filter:blur(8px)}
.calculator-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(310px,.65fr);gap:26px;align-items:start}
.calculator-form{display:grid;gap:22px}
.calculator-card,.result-card{border:1px solid rgba(46,32,107,.11);border-radius:24px;background:rgba(255,255,255,.96);box-shadow:0 16px 48px rgba(32,21,86,.09)}
.calculator-card{padding:clamp(22px,4vw,38px)}
.calculator-card h2,.result-card h2{font-size:clamp(1.5rem,3vw,2.2rem)}
.inputs-card>label{display:block;margin:22px 0;color:var(--navy-deep);font-weight:750}
.range-row{display:grid;grid-template-columns:minmax(0,1fr) 92px;gap:16px;align-items:center;margin-top:7px}
.range-row output{display:flex;align-items:center;justify-content:center;min-height:46px;padding:8px 12px;border:1px solid var(--line);border-radius:12px;background:var(--soft);color:var(--navy);font-weight:850;font-variant-numeric:tabular-nums}
.range-row input[type="range"]{width:100%;height:7px;accent-color:var(--red);cursor:pointer}
.compact-inputs{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:24px}
.compact-inputs label{display:grid;gap:8px;color:var(--navy-deep);font-weight:750}
.compact-inputs label span{display:flex;align-items:center;gap:9px}
.compact-inputs input{min-width:0}
.audit-card>p,.quote-card>p{color:var(--muted)}
.audit-questions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:22px}
.audit-question{display:flex;align-items:flex-start;gap:11px;padding:15px;border:1px solid var(--line);border-radius:15px;background:var(--soft);color:var(--ink);cursor:pointer;transition:.2s}
.audit-question:hover{border-color:rgba(227,6,19,.35);background:#fff}
.audit-question:has(input:checked){border-color:var(--red);background:var(--rose);box-shadow:inset 4px 0 0 var(--red)}
.audit-question input{width:20px;height:20px;margin:2px 0 0;accent-color:var(--red);flex:0 0 auto}
.quote-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:22px 0}
.quote-fields label{display:grid;gap:6px;color:var(--navy-deep);font-weight:750}
.quote-fields .quote-wide{grid-column:1/-1}
.quote-fields input,.quote-fields select,.quote-fields textarea{width:100%;min-height:48px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--ink);font:inherit;padding:11px 13px}
.quote-fields textarea{min-height:108px;resize:vertical}
.quote-fields input:focus,.quote-fields select:focus,.quote-fields textarea:focus{outline:3px solid rgba(227,6,19,.13);border-color:var(--red)}
.consent{display:flex;align-items:flex-start;gap:10px;margin:4px 0 18px;color:var(--muted)}
.consent input{width:19px;height:19px;margin-top:3px;accent-color:var(--red);flex:0 0 auto}
.form-error{padding:10px 13px;border-radius:10px;background:#fff0f1;color:#9d0009;font-weight:700}
.form-error.form-success{background:#edf8f1;color:#176538}
.calculator-results{position:sticky;top:130px;display:grid;gap:18px}
.result-card{padding:25px}
.result-main{display:grid;gap:1px;margin:14px 0 20px}
.result-main strong{color:var(--red);font-size:clamp(3rem,7vw,5rem);line-height:1;font-variant-numeric:tabular-nums}
.result-main span,.result-pair span{color:var(--muted);font-size:.88rem}
.result-pair{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.result-pair>div{display:grid;gap:2px;padding:14px;border-radius:15px;background:var(--soft)}
.result-pair strong{color:var(--navy);font-size:1.2rem;font-variant-numeric:tabular-nums}
.annual-result{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:12px;padding:14px;border-radius:15px;background:linear-gradient(135deg,var(--navy-deep),var(--navy));color:#fff}
.annual-result strong{font-size:1.3rem}
.result-note{margin:15px 0 0;color:var(--muted);font-size:.82rem;line-height:1.5}
.audit-result{display:grid;grid-template-columns:1fr auto;align-items:center;gap:16px}
.audit-result>span{font-weight:800;color:var(--navy-deep)}
.audit-result>p{grid-column:1/-1;margin:0;color:var(--muted);font-weight:700}
.score-ring{--score:100;display:grid;place-items:center;width:86px;height:86px;border-radius:50%;background:conic-gradient(var(--red) calc(var(--score)*1%),var(--lilac) 0);position:relative}
.score-ring:after{content:"";position:absolute;inset:8px;border-radius:50%;background:#fff}
.score-ring strong{position:relative;z-index:1;color:var(--navy);font-size:1.05rem}
.recommendation ul{display:grid;gap:9px;padding:0;list-style:none}
.recommendation li{position:relative;padding:10px 12px 10px 35px;border-radius:12px;background:var(--soft);color:var(--navy);font-weight:700}
.recommendation li:before{content:"✓";position:absolute;left:12px;color:var(--red);font-weight:900}
.light-print{width:100%;margin-top:10px;background:#fff;color:var(--navy)!important;border:1px solid var(--line);box-shadow:none}
.light-print:disabled{opacity:.45;cursor:not-allowed;transform:none}
.rss-link{color:#fff!important;font-weight:800;text-decoration:underline;text-underline-offset:4px}
.form-delivery-status{margin:14px 0 0;font-weight:700;line-height:1.45;color:var(--muted)}
.form-delivery-status.is-success,.form-success{color:#176c45}
.form-delivery-status.is-error{color:#b00020}
@media(max-width:960px){.calculator-grid{grid-template-columns:1fr}.calculator-results{position:static;grid-template-columns:1fr 1fr}.calculator-results .result-card:first-child,.calculator-results .recommendation{grid-column:1/-1}}
@media(max-width:700px){
  .calculator-shell{width:calc(100% - 24px);padding:24px 0 52px}
  .calculator-intro{padding:26px 20px;border-radius:22px}
  .calculator-intro h1{font-size:2.3rem}
  .calculator-steps{display:grid}
  .calculator-card,.result-card{padding:19px;border-radius:19px}
  .range-row{grid-template-columns:minmax(0,1fr) 76px;gap:10px}
  .compact-inputs,.audit-questions,.quote-fields,.calculator-results{grid-template-columns:1fr}
  .result-pair{grid-template-columns:1fr 1fr}
  .calculator-results .result-card:first-child,.calculator-results .recommendation{grid-column:auto}
  .calculator-submit{width:100%}
}
@media print{
  @page{size:A4;margin:14mm}
  .calculator-page{background:#fff!important}
  .calculator-page .site-header,.calculator-page .site-footer,.calculator-page .contact-strip,.calculator-page .cookie,.calculator-page .calculator-form,.calculator-page .calculator-steps,.calculator-page .trust-certificates,.calculator-page .iso-standards{display:none!important}
  .calculator-page main,.calculator-page .calculator-shell{display:block;width:100%;margin:0;padding:0;background:#fff}
  .calculator-page .calculator-intro{box-shadow:none;color:#000;background:#fff;padding:0 0 10mm;margin:0;border-radius:0;break-after:avoid}
  .calculator-page .calculator-intro:after{display:none}
  .calculator-page .calculator-intro .eyebrow{color:#e30613!important}
  .calculator-page .calculator-intro h1{color:#160f45!important;font-size:25pt!important;line-height:1.08!important;margin:0 0 5mm}
  .calculator-page .calculator-intro>p{color:#555368!important;font-size:11pt!important;margin:0}
  .calculator-page .calculator-grid,.calculator-page .calculator-results{display:block!important}
  .calculator-page .calculator-results{position:static!important}
  .calculator-page .result-card{display:block!important;margin:0 0 6mm;padding:7mm;border:1px solid #d9dae2;border-radius:5mm;box-shadow:none!important;break-inside:avoid;page-break-inside:avoid}
  .calculator-page .result-main strong{font-size:38pt!important}
  .calculator-page .result-pair{display:grid!important;grid-template-columns:1fr 1fr!important}
  .calculator-page .audit-result{display:grid!important;grid-template-columns:1fr auto!important}
  .calculator-page .recommendation ul{gap:3mm}
  .calculator-page .recommendation li{padding:3mm 4mm 3mm 10mm}
  .calculator-page [data-print-result]{display:none!important}
  .calculator-page a{color:inherit!important;text-decoration:none!important}
}

@media(min-width:1241px){
  .calculator-shell{width:min(1280px,calc(100% - 64px));padding:40px 0 62px}
  .calculator-intro{margin-bottom:22px;padding:40px}
  .calculator-intro h1{font-size:clamp(2.5rem,3.5vw,3.7rem)}
  .calculator-card{padding:28px}
  .calculator-card h2,.result-card h2{font-size:clamp(1.4rem,1.8vw,1.85rem)}
  .result-card{padding:22px}
  .result-main strong{font-size:3.7rem}
  .ecok-promo{padding:54px 0}
  .ecok-promo-wrap{width:min(1320px,calc(100% - 64px))}
}
