/* ---- HANDOFF (executor m7k2p, 2026-09-20 PT) — sibling owns UNIFIED left-edge CSS ----
   Do not thrash set_site_freeform_code style from this agent.
   Unpublished CDN ready (uploaded): 
     https://cdn.prod.website-files.com/5f01e7c5a0b62d50a672846a/6ab037fdfce834217f3ef644_jx-nav-centered-shell-v6.css
     md5 1040f38e90ad2b224e0c7a4ce966f6d6 — includes blog-light padding:0, category hub hero align,
     post void-kill, sticky nav. Point freeform CDN here when sibling publishes unified shell.
   Live freeform kept as cookieconsent + v4 CDN; executor only prepends <base> + link/base fix scripts.
   Blog .blog-card-link Designer binding is mode:collectionPage (publishes as # on static /blog —
   JS title→slug map compensates until Designer Current Item link works).
   Post body richtext imgs are unique; hero appears twice via featured + More card (same post).
   ---- */
/* jx-nav-lock centered-shell v6 left-edge logo-clearfix */

/* Nachtrag zum dunklen Umbau, 6. August 2026. Alles hier laesst sich als
   Webflow-Stil nicht anfassen und steht deshalb an dieser Stelle. */

.section.gray { background-color: #120A24; }
.w-input, .w-select { background-color: #120A24; color: #BCB0DE; }
.contact-icon-wrapper,
.features-number { background-color: rgba(124, 58, 237, 0.16) !important; }
.features-number { color: #B475F0 !important; }
.w-dyn-empty { background-color: rgba(124, 58, 237, 0.075); color: #8B7FB2; }
.nav-link.w--current { color: #C4B5FD; }
.nav-link:hover,
.nav-link.w--current:hover { color: #F6F3FD; }

/* ============================================================
   SITEWIDE SHELL — every page
   Shared ~1120px content column. Logo flush to LEFT edge of that
   column (no padding BEFORE the logo). Body headers share that edge.
   ============================================================ */
:root {
  --jx-shell: 1120px;
}

html, body {
  overflow-x: hidden !important;
  max-width: 100vw !important;
}
*, *::before, *::after { box-sizing: border-box; }

.navbar,
.navbar.w-nav {
  width: 100% !important;
  max-width: 100vw !important;
  box-sizing: border-box !important;
}

/* ---- Lock navbar: never invert/turn white on scroll (kills IX2 Nav Scroll) ---- */
.navbar,
.navbar.w-nav,
.navbar.in-lock {
  background-color: #07030eb8 !important;
  background-image: linear-gradient(#07030eb8, #07030eb8) !important;
  border-bottom: 1px solid rgba(167, 139, 250, 0.2) !important;
  border-color: rgba(167, 139, 250, 0.2) !important;
  -webkit-backdrop-filter: blur(14px) !important;
  backdrop-filter: blur(14px) !important;
  filter: none !important;
}
.navbar .nav-link,
.navbar .nav-link.w-dropdown-toggle,
.navbar .w-dropdown-toggle,
.navbar .dropdown-link {
  color: #F6F3FD !important;
  filter: none !important;
}
.navbar .nav-link.w--current {
  color: #C4B5FD !important;
}
.navbar .logo-brand,
.navbar .w-nav-brand img {
  filter: none !important;
  opacity: 1 !important;
}


/* Nav + main content shells: shared max-width + ALWAYS a side gutter
   (mid-widths used to hit the viewport edge with padding:0 — looks broken).
   Do NOT put background sections (e.g. .blog-index-section) here — they must
   stay full-bleed so dark body never shows as black sidebars. */
/* ONLY outer shells own gutters. Nested .blog-hero-wrap /
   .blog-prose-wrap / .blog-reading-measure must NOT pad again. */
.navbar .w-container,
.navbar .container,
.navbar .container.navbar-container,
.blog-align-shell,
.container.footer-shell,
.container.blog-align,
.section > .container,
.section > .w-container,
.short-hero > .container,
.page-tittle,
.page-tittle.left,
.jx-hero,
.jx-section,
.jx-foot,
.blog-hub-section > .blog-align-shell {
  max-width: var(--jx-shell) !important;
  width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: clamp(20px, 4vw, 40px) !important;
  padding-right: clamp(20px, 4vw, 40px) !important;
  box-sizing: border-box !important;
}

/* Kill leftover gutters before the logo */
.navbar .nav-column.left,
.navbar .w-nav-brand,
.navbar .logo-brand {
  margin-left: 0 !important;
  padding-left: 0 !important;
}

/* Homepage jx vertical rhythm keeps top/bottom padding; sides are 0 above */
.jx-hero {
  padding-top: clamp(64px, 9vw, 132px) !important;
  padding-bottom: clamp(40px, 6vw, 80px) !important;
  min-height: clamp(480px, 70vh, 720px) !important;
}
.jx-section {
  padding-top: clamp(48px, 7vw, 96px) !important;
  padding-bottom: clamp(48px, 7vw, 96px) !important;
}
.jx-foot {
  padding-top: clamp(40px, 5vw, 72px) !important;
  padding-bottom: clamp(40px, 5vw, 72px) !important;
}

.blog-reading-measure,
.blog-prose-wrap .w-richtext,
.blog-prose-wrap .rich-text-block {
  max-width: 720px !important;
  margin-left: 0 !important;
  margin-right: auto !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
.blog-index-section {
  max-width: none !important;
  width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  background-color: #ffffff !important;
  overflow-x: hidden !important;
  box-sizing: border-box !important;
}
.w-dyn-list,
.w-dyn-empty,
.blog-dyn-flush,
.blog-empty-host,
.blog-chips-row {
  margin-left: 0 !important;
  padding-left: 0 !important;
  max-width: 100% !important;
}

/* Blog images only — do NOT force height:auto on all imgs (breaks Trusted by logos) */
.blog-prose-wrap img,
.blog-reading-measure img,
.blog-hero-wrap img,
.w-dyn-item img,
.blog-article-image,
.blog-card-image,
.blog-featured-image {
  max-width: 100% !important;
  height: auto !important;
}

/* ---- Homepage Trusted by logos: restore fixed heights ---- */
.jx-marks img,
.jx-mark-26,
.jx-mark-30,
.jx-mark-32,
.jx-mark-34,
.jx-mark-40,
.jx-mark-42,
.jx-mark-58 {
  max-width: none !important;
  width: auto !important;
  display: block !important;
}
.jx-mark-26 { height: 26px !important; }
.jx-mark-30 { height: 30px !important; }
.jx-mark-32 { height: 32px !important; }
.jx-mark-34 { height: 34px !important; }
.jx-mark-40 { height: 40px !important; }
.jx-mark-42 { height: 42px !important; }
.jx-mark-58 { height: 58px !important; }

/* ---- Trusted by card: compact on large screens ---- */
.jx-section:has(.jx-marks) {
  padding-top: clamp(20px, 3vw, 40px) !important;
  padding-bottom: clamp(20px, 3vw, 40px) !important;
}
.jx-marks {
  max-width: 860px !important;
  width: 100% !important;
  padding: 16px 24px !important;
  gap: 14px 24px !important;
  grid-row-gap: 14px !important;
  grid-column-gap: 24px !important;
  border-radius: 14px !important;
  box-shadow: 0 10px 32px rgba(0,0,0,0.35), 0 0 0 1px rgba(255,255,255,0.5) !important;
}

/* ---- Blog article text contrast (light theme) ---- */
.blog-prose-wrap,
.blog-prose-wrap *,
.blog-reading-measure,
.blog-reading-measure *,
.blog-hero-wrap,
.blog-hero-wrap *,
.rich-text-block,
.rich-text-block *,
.w-richtext,
.w-richtext p,
.w-richtext h1,
.w-richtext h2,
.w-richtext h3,
.w-richtext h4,
.w-richtext h5,
.w-richtext h6,
.w-richtext li,
.w-richtext blockquote,
.w-richtext figcaption,
.blog-article-title,
.blog-index-title,
.blog-index-subtitle,
.blog-hub-heading,
.blog-card-title,
.blog-card-excerpt {
  color: #1A1A2E !important;
}
.blog-prose-wrap a,
.blog-reading-measure a,
.w-richtext a {
  color: #6C3CE1 !important;
}
.w-richtext h2,
.w-richtext h3 {
  color: #1A1A2E !important;
  opacity: 1 !important;
}
.blog-index-subtitle,
.blog-card-excerpt {
  color: #4B5563 !important;
}

/* ---- Sticky author sidebar (Blog Posts template) ---- */
.blog-body-row {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 32px;
  width: 100%;
}
.blog-author-rail {
  width: 100%;
  max-width: 320px;
}
.blog-author-card {
  background-color: #F8F5FF;
  border-radius: 16px;
  padding: 24px;
  border: 1px solid #E8E0F5;
}
.blog-author-photo {
  width: 96px !important;
  height: 96px !important;
  border-radius: 50% !important;
  object-fit: cover !important;
  display: block;
}
.blog-author-name { color: #1A1A2E !important; }
.blog-author-role { color: #6C3CE1 !important; }
.blog-author-bio { color: #4B5563 !important; }
.blog-author-link { color: #6C3CE1 !important; }

@media screen and (min-width: 992px) {
  .blog-body-row {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 280px !important;
    gap: 48px !important;
    align-items: start !important;
  }
  .blog-author-rail {
    position: sticky !important;
    top: 100px !important;
    max-width: 280px !important;
    width: 280px !important;
  }
  .blog-prose-wrap {
    min-width: 0 !important;
  }
}

@media screen and (max-width: 991px) {
  .blog-body-row {
    display: flex !important;
    flex-direction: column !important;
  }
  .blog-author-rail {
    position: static !important;
    max-width: 100% !important;
    width: 100% !important;
    order: 2;
  }
  .blog-prose-wrap {
    order: 1;
  }
}


/* Nav menu: keep compact with dropdowns (Enterprise AI + About JadenX) — desktop only */
@media screen and (min-width: 992px) {
.navbar .nav-menu {
  display: flex !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  gap: 8px !important;
  max-width: 100% !important;
}
}
.navbar .nav-link,
.navbar .w-dropdown-toggle {
  white-space: nowrap !important;
  font-size: 15px !important;
  padding-left: 10px !important;
  padding-right: 10px !important;
}

/* ---- Fix navbar dropdowns: under toggle, readable on dark panel ---- */
.navbar .w-dropdown {
  position: relative !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}
.navbar .dropdown-list,
.navbar .dropdown-list.w--open,
.navbar .w-dropdown-list,
.navbar .w-dropdown-list.w--open {
  position: absolute !important;
  top: calc(100% + 8px) !important;
  left: 0 !important;
  right: auto !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  min-width: 240px !important;
  width: max-content !important;
  max-width: min(320px, 90vw) !important;
  background: #120A24 !important;
  background-color: #120A24 !important;
  border: 1px solid rgba(167, 139, 250, 0.35) !important;
  border-radius: 10px !important;
  padding: 8px !important;
  box-shadow: 0 14px 36px rgba(0, 0, 0, 0.5) !important;
  overflow: hidden !important;
  z-index: 2000 !important;
}
.navbar .dropdown-link {
  color: #F6F3FD !important;
  background: transparent !important;
  border-radius: 6px !important;
  padding: 10px 12px !important;
  display: block !important;
  white-space: nowrap !important;
}
.navbar .dropdown-link:hover,
.navbar .dropdown-link.w--current {
  color: #FFFFFF !important;
  background-color: rgba(124, 58, 237, 0.28) !important;
}




/* ---- Dropdown toggle + chevron alignment (all viewports) ---- */
.navbar .w-dropdown-toggle {
  position: relative !important;
  display: inline-flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 6px !important;
  padding: 6px 10px !important;
  line-height: 1.4 !important;
  height: auto !important;
  min-height: 0 !important;
  box-sizing: border-box !important;
  vertical-align: middle !important;
}
.navbar .w-icon-dropdown-toggle {
  display: none !important;
  visibility: hidden !important;
  width: 0 !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  position: absolute !important;
  opacity: 0 !important;
  pointer-events: none !important;
}
.navbar .w-dropdown-toggle::after {
  content: "\25BE" !important;
  display: inline-block !important;
  font-size: 11px !important;
  line-height: 1 !important;
  font-weight: 400 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
  width: auto !important;
  height: auto !important;
  transform: none !important;
  opacity: 0.9 !important;
  flex-shrink: 0 !important;
  align-self: center !important;
  position: static !important;
}
.navbar .w-dropdown-toggle.w--open::after {
  content: "\25B4" !important;
  transform: none !important;
}
@media screen and (max-width: 991px) {
  .navbar .w-dropdown-toggle {
    width: 100% !important;
    justify-content: center !important;
    padding: 13px clamp(20px, 5vw, 72px) !important;
  }
}



/* ---- Full-bleed light surfaces (never max-width these) ---- */
.blog-index-section,
.section.blog-light,
.blog-hub-section,
.blog-light {
  max-width: none !important;
  width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}
.blog-index-section,
.section.blog-light,
.blog-light {
  background-color: #ffffff !important;
}
/* ---- Blog post layout fixes ---- */
/* Hub section: full-bleed background; inner shell carries max-width */
.blog-hub-section {
  max-width: none !important;
  width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  box-sizing: border-box !important;
}
.blog-hub-section > .blog-align-shell {
  max-width: var(--jx-shell) !important;
  width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: clamp(20px, 4vw, 40px) !important;
  padding-right: clamp(20px, 4vw, 40px) !important;
  box-sizing: border-box !important;
}
/* Nested Webflow dyn-list+items both had blog-cards-grid → 3-col inside 1/3 col */
.blog-cards-grid.w-dyn-list {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}
.blog-cards-grid.w-dyn-items {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 24px 24px !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}
.blog-cards-grid .w-dyn-item {
  min-width: 0 !important;
  width: 100% !important;
}
.blog-card-link {
  width: 100% !important;
  max-width: none !important;
}
/* Body row: stay within shell; don't shrink cards elsewhere */
.blog-body-row {
  width: 100% !important;
  max-width: none !important;
}
/* Hero sits on light article chrome — keep title/pill readable (dark) */
.blog-align-shell > .blog-hero-wrap .blog-article-title,
.blog-hero-wrap .blog-article-title {
  color: #1A1A2E !important;
}
.blog-hero-wrap .blog-category-pill {
  color: #6C3CE1 !important;
}
/* If page body is dark around the article, don't force light title into a gap */
body .blog-hero-wrap .blog-article-title {
  color: #1A1A2E !important;
}
.blog-hero-wrap .blog-featured-image {
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  display: block !important;
  border-radius: 12px !important;
  margin-top: 24px !important;
}
@media screen and (max-width: 991px) {
  .blog-cards-grid.w-dyn-items {
    grid-template-columns: 1fr !important;
  }
  .blog-hub-section > .blog-align-shell {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
}
@media screen and (min-width: 992px) and (max-width: 1100px) {
  .blog-cards-grid.w-dyn-items {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}



/* ---- Navbar: one centered shell (logo + menu + CTA), full-bleed bar bg ---- */
.navbar,
.navbar.w-nav {
  width: 100% !important;
  max-width: 100vw !important;
  box-sizing: border-box !important;
  /* bar itself is full-bleed; inner container is the centered shell */
  padding-left: 0 !important;
  padding-right: 0 !important;
  display: block !important; /* let .w-container do the row; avoids broken flex on resize */
  position: relative !important;
  z-index: 1000 !important;
}
.navbar .container.navbar-container,
.navbar .container.navbar-container.w-container {
  max-width: var(--jx-shell) !important;
  width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: clamp(20px, 4vw, 40px) !important;
  padding-right: clamp(20px, 4vw, 40px) !important;
  box-sizing: border-box !important;
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px 20px !important;
  column-gap: 20px !important;
  position: relative !important;
}
/* Webflow .w-container clearfix ::before/::after are display:table flex items;
   with column-gap they inset the logo by ~20px. Kill them on the nav shell. */
.navbar .container.navbar-container::before,
.navbar .container.navbar-container::after,
.navbar .w-container::before,
.navbar .w-container::after {
  content: none !important;
  display: none !important;
}
.navbar .w-nav-brand,
.navbar a.w-nav-brand {
  position: relative !important;
  float: none !important;
  margin: 0 !important;
  padding: 0 !important;
  padding-left: 0 !important;
  flex: 0 0 auto !important;
  order: 0 !important;
}
.navbar .w-nav-brand .logo-brand,
.navbar .logo-brand {
  margin: 0 !important;
  display: block !important;
}
@media screen and (min-width: 992px) {
.navbar .nav-menu {
  flex: 1 1 auto !important;
  display: flex !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 8px !important;
  margin-left: auto !important;
  min-width: 0 !important;
}
}
.navbar .nav-column.right {
  flex: 0 0 auto !important;
  margin-left: 0 !important;
}
.navbar .menu-button,
.navbar .w-nav-button {
  flex: 0 0 auto !important;
  margin-left: 8px !important;
}

/* Desktop+ : keep horizontal menu */
@media screen and (min-width: 992px) {
  .navbar .nav-menu {
    position: static !important;
    width: auto !important;
    height: auto !important;
    background: transparent !important;
    border: 0 !important;
    overflow: visible !important;
    display: flex !important;
  }
  .navbar .menu-button,
  .navbar .w-nav-button {
    display: none !important;
  }
}

/* Tablet/mobile: hamburger; Webflow moves open menu into .w-nav-overlay */
@media screen and (max-width: 991px) {
  .navbar,
  .navbar.w-nav {
    position: relative !important;
    overflow: visible !important;
  }
  .navbar .container.navbar-container,
  .navbar .container.navbar-container.w-container {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    max-width: var(--jx-shell) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    position: relative !important;
  }
  .navbar .w-nav-brand,
  .navbar a.w-nav-brand {
    order: 0 !important;
    margin-left: 0 !important;
    margin-right: auto !important;
    margin-inline: 0 auto !important;
    position: relative !important;
    left: auto !important;
    right: auto !important;
    transform: none !important;
    float: none !important;
    align-self: center !important;
  }
  .navbar .menu-button,
  .navbar .w-nav-button {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    order: 3 !important;
    margin-left: auto !important;
    flex: 0 0 auto !important;
  }
  .navbar .nav-column.right {
    display: none !important;
  }
  /* Closed menu (still in container): hide & out of flow */
  .navbar .nav-menu {
    position: absolute !important;
    left: 0 !important;
    top: 100% !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    height: auto !important;
    background-color: #0b0518 !important;
    border-bottom: 1px solid rgba(167, 139, 250, 0.2) !important;
    display: none !important;
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    padding: 12px clamp(20px, 4vw, 40px) 20px !important;
    z-index: 1001 !important;
    overflow: auto !important;
  }
  /* Overlay sits under the bar; height auto so top:100% on menu is not document-tall */
  .navbar .w-nav-overlay {
    position: absolute !important;
    top: 100% !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    height: auto !important;
    max-height: none !important;
    display: none !important;
    overflow: visible !important;
    z-index: 1001 !important;
  }
  .navbar:has(.w-nav-button.w--open) .w-nav-overlay,
  .navbar:has(.menu-button.w--open) .w-nav-overlay,
  .navbar.w--open .w-nav-overlay {
    display: block !important;
  }
  /* Open menu — either class or button state; inside overlay use top:0 */
  .navbar .nav-menu.w--open,
  .navbar:has(.w-nav-button.w--open) .nav-menu,
  .navbar:has(.menu-button.w--open) .nav-menu,
  .navbar .w-nav-overlay .nav-menu {
    display: flex !important;
    position: relative !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    transform: none !important;
  }
}

@media screen and (max-width: 767px) {
  .navbar .container.navbar-container,
  .navbar .container.navbar-container.w-container {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
}



/* ---- Blog post / index: kill huge void under navbar ---- */
/* Webflow stacks 112px on .blog-align-shell AND 112px on .blog-hero-wrap (~224px void) */
.blog-align-shell {
  padding-top: clamp(20px, 2.5vw, 36px) !important;
  padding-bottom: clamp(28px, 4vw, 48px) !important;
}
.blog-hero-wrap {
  padding-top: 0 !important;
  padding-bottom: 12px !important;
  margin-top: 0 !important;
}
.blog-align-shell:has(.blog-hero-wrap) {
  padding-top: clamp(16px, 2vw, 28px) !important;
}
.blog-post-info,
.blog-article-title {
  margin-top: 0 !important;
}
.blog-featured-image {
  margin-top: clamp(12px, 2vw, 24px) !important;
}
.blog-index-section > .blog-align-shell {
  padding-top: clamp(28px, 3vw, 48px) !important;
}
/* ---- Category hubs: nav must stack above hero title (not beside it) ---- */
/* .hero-section is display:flex; Categories template nests navbar inside pages-section */
.hero-section.pages-section {
  flex-direction: column !important;
  align-items: stretch !important;
  flex-wrap: nowrap !important;
  justify-content: flex-start !important;
  width: 100% !important;
}
.hero-section.pages-section > .navbar,
.hero-section.pages-section > .navbar.w-nav {
  position: sticky !important;
  top: 0 !important;
  z-index: 1000 !important;
  width: 100% !important;
  max-width: 100% !important;
  flex: 0 0 auto !important;
  align-self: stretch !important;
  order: -1 !important;
}
.hero-section.pages-section > .container,
.hero-section.pages-section > .animation-div {
  width: 100% !important;
  max-width: 100% !important;
  flex: 0 0 auto !important;
  align-self: stretch !important;
}

/* Sticky navbar sitewide — override Webflow position:absolute ≤991 */
.navbar,
.navbar.w-nav {
  position: sticky !important;
  top: 0 !important;
  z-index: 1000 !important;
}
@media screen and (max-width: 991px) {
  .navbar,
  .navbar.w-nav {
    position: sticky !important;
    top: 0 !important;
  }
}

/* ---- Category hub hero: ONE shell (.page-tittle), outer wrappers full-bleed ---- */
.pages-section,
.hero-section.pages-section,
.short-hero {
  width: 100% !important;
  max-width: none !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  box-sizing: border-box !important;
}
/* Pass-through wrapper — do NOT add shell gutters here (avoids double pad) */
.pages-section > .container,
.pages-section > .w-container,
.hero-section.pages-section > .container,
.hero-section.pages-section > .w-container {
  max-width: none !important;
  width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  box-sizing: border-box !important;
}
.short-hero > .container,
.short-hero > .w-container,
.page-tittle,
.page-tittle.left {
  max-width: var(--jx-shell) !important;
  width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: clamp(20px, 4vw, 40px) !important;
  padding-right: clamp(20px, 4vw, 40px) !important;
  box-sizing: border-box !important;
  text-align: left !important;
  align-items: flex-start !important;
  align-self: stretch !important;
}
.short-hero {
  align-items: stretch !important;
}
.section-title,
.breadcrumbs {
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  align-self: flex-start !important;
}


/* ---- Post body: kill Webflow .section 60/20/100 padding ---- */
.section.blog-light,
.section.blog-light.no-top-padding,
.blog-light,
body .section.blog-light,
body .section.blog-light.no-top-padding {
  padding: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}
.section.blog-light > .blog-align-shell {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  padding-left: clamp(20px, 4vw, 40px) !important;
  padding-right: clamp(20px, 4vw, 40px) !important;
}
.section.blog-light .blog-prose-wrap {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
.section.blog-light .blog-body-row {
  padding-top: 0 !important;
  padding-bottom: clamp(40px, 5vw, 72px) !important;
}


/* ---- Left-edge lock: prose/title/image share logo column ---- */
/* Nested children of .blog-align-shell: no extra gutters, no centering */
.blog-align-shell > .blog-hero-wrap,
.blog-hero-wrap {
  max-width: none !important;
  width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  box-sizing: border-box !important;
}
.blog-reading-measure,
.blog-prose-wrap .w-richtext,
.blog-prose-wrap .rich-text-block {
  max-width: 720px !important;
  width: 100% !important;
  margin-left: 0 !important;
  margin-right: auto !important; /* NOT centered */
  padding-left: 0 !important;
  padding-right: 0 !important;
  box-sizing: border-box !important;
}
.blog-prose-wrap {
  padding-left: 0 !important;
  padding-right: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  width: 100% !important;
  max-width: none !important; /* shell owns width */
  box-sizing: border-box !important;
}
.blog-post-info,
.blog-article-title,
.blog-featured-image,
.blog-category-pill {
  margin-left: 0 !important;
  padding-left: 0 !important;
}
.blog-featured-image {
  width: 100% !important;
  max-width: 100% !important;
  display: block !important;
}
/* Body row: prose column flush to shell left; rail on the right */
.blog-body-row {
  margin-left: 0 !important;
  padding-left: 0 !important;
  width: 100% !important;
}
@media screen and (min-width: 992px) {
  .blog-body-row {
    grid-template-columns: minmax(0, 1fr) 280px !important;
  }
  .blog-prose-wrap {
    min-width: 0 !important;
    justify-self: stretch !important;
  }
}
/* ---- Cookie consent: no forever revoke tab ---- */
.cc-revoke {
  display: none !important;
  visibility: hidden !important;
  pointer-events: none !important;
}
.cc-window {
  max-width: 100% !important;
  box-sizing: border-box !important;
}
.cc-window.cc-banner {
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
}

/* Mobile: small edge gutter so content does not touch the screen */
@media screen and (max-width: 767px) {
  .cc-window {
    padding: 14px 16px !important;
    font-size: 14px !important;
  }
  .cc-btn {
    min-height: 44px !important;
    padding: 10px 16px !important;
  }
  .blog-article-title,
  .blog-index-title {
    font-size: 32px !important;
    line-height: 1.2 !important;
    word-wrap: break-word !important;
    overflow-wrap: anywhere !important;
  }
  .w-richtext,
  .blog-prose-wrap,
  .blog-reading-measure {
    font-size: 17px !important;
    overflow-wrap: anywhere !important;
    word-break: break-word !important;
  }
}
