/* Unfinished items in the PL/RU review. Keep Elementor content and translations. */
.ls-manrope .wd-text-block,
.ls-manrope .wd-text-block p,
.ls-manrope .wd-text-block strong,
.ls-manrope .wd-text-block b {
  font-family: Manrope, sans-serif !important;
}

/* Constrain fixed-width widgets, without hiding overflowing text. */
.elementor-2617 .elementor-element-7d2d4640 {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
}
.elementor-2617 .elementor-element-27df562f > .e-con-inner {
  column-gap: clamp(24px, 4vw, 64px) !important;
}
.elementor-2617 .elementor-element-74a746cb { flex: 1 1 64%; min-width: 0; }
.elementor-2617 .elementor-element-3ee996b2 { flex: 1 1 30%; min-width: 0; }

/* Document service cards: shared tracks align title, description and image. */
@media (min-width: 768px) {
  .elementor-2617 .elementor-element-64d4d6c4 {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    grid-template-rows: auto auto 1fr auto;
    gap: 20px 16px !important;
  }
  .elementor-2617 .elementor-element-64d4d6c4 > .e-con {
    display: grid !important;
    grid-template-rows: subgrid;
    grid-row: span 4;
    width: auto !important;
    min-width: 0 !important;
    gap: inherit !important;
  }
  .elementor-2617 .elementor-element-64d4d6c4 > .e-con > .e-con {
    width: 100% !important;
    min-width: 0 !important;
    margin-block: 0 !important;
  }
}
.elementor-2617 .elementor-element-3a1e2244 {
  flex-direction: column !important;
  gap: 24px !important;
}
.elementor-2617 .elementor-element-3a1e2244 > .e-con {
  flex: 0 0 auto !important;
  width: 100% !important;
  gap: 20px !important;
}
.elementor-2617 .elementor-element-3a1e2244 > .e-con > .e-con:last-child {
  margin-top: 0 !important;
}
/* All title/price rows use the same two columns, including mobile. */
.elementor-2617 :is(.elementor-element-1f81eb29,.elementor-element-3072275c,.elementor-element-5a2fad8a,.elementor-element-2e8de557,.elementor-element-2b26332a,.elementor-element-501fc666,.elementor-element-72b7b5d2,.elementor-element-6b68329e,.elementor-element-657fa0d0,.elementor-element-a9f0e03,.elementor-element-52b1bd2,.elementor-element-b8b2df5,.elementor-element-39656a4,.elementor-element-20718105,.elementor-element-60d8b29c) {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 38%);
  align-items: start !important;
  gap: 12px 16px !important;
  width: 100% !important;
  margin-top: 0 !important;
  margin-bottom: 12px !important;
}
.elementor-2617 :is(.elementor-element-1f81eb29,.elementor-element-3072275c,.elementor-element-5a2fad8a,.elementor-element-2e8de557,.elementor-element-2b26332a,.elementor-element-501fc666,.elementor-element-72b7b5d2,.elementor-element-6b68329e,.elementor-element-657fa0d0,.elementor-element-a9f0e03,.elementor-element-52b1bd2,.elementor-element-b8b2df5,.elementor-element-39656a4,.elementor-element-20718105,.elementor-element-60d8b29c) > .elementor-widget {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
}
.elementor-2617 :is(.elementor-element-792135b6,.elementor-element-7ef30e10,.elementor-element-7ab9f186,.elementor-element-7544a409,.elementor-element-73a53d8c,.elementor-element-363a1d8c,.elementor-element-19833f7,.elementor-element-7810c65e,.elementor-element-7f520f5a,.elementor-element-c40pric,.elementor-element-c50pric,.elementor-element-a4c9e01,.elementor-element-ls350prc,.elementor-element-7f1785d2,.elementor-element-5036257d) .wd-text-block,
.elementor-2617 :is(.elementor-element-792135b6,.elementor-element-7ef30e10,.elementor-element-7ab9f186,.elementor-element-7544a409,.elementor-element-73a53d8c,.elementor-element-363a1d8c,.elementor-element-19833f7,.elementor-element-7810c65e,.elementor-element-7f520f5a,.elementor-element-c40pric,.elementor-element-c50pric,.elementor-element-a4c9e01,.elementor-element-ls350prc,.elementor-element-7f1785d2,.elementor-element-5036257d) p {
  text-align: right !important;
  white-space: normal !important;
  line-height: 1.4 !important;
}
.elementor-2617 :is(.elementor-element-922d0bc,.elementor-element-c50desc) {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
}
/* Keep the arrow separate from the description, including longer translations. */
.elementor-2617 .e-con:has(> .icongra) {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  gap: 16px !important;
  width: 100% !important;
}
.elementor-2617 .e-con:has(> .icongra) > .elementor-widget-wd_text_block {
  flex: 1 1 auto !important;
  width: auto !important;
  min-width: 0 !important;
}
.elementor-2617 .icongra { flex: 0 0 38px !important; width: 38px !important; height: 38px !important; }

/* Hero: retain the people and card, but give text its own space. */
@media (min-width: 768px) {
  #hero32 .elementor-element-42b1c82c {
    width: 46% !important;
    max-width: 620px !important;
  }
  #hero32 .elementor-element-42b1c82c .wd-text-block {
    font-size: clamp(13px, 1.3vw, 20px) !important;
    line-height: 1.4 !important;
  }
  #hero32 .elementor-element-417624f0 {
    flex: 0 0 22% !important;
    width: 22% !important;
    min-width: 0 !important;
    align-self: flex-start !important;
    height: auto !important;
    min-height: 0 !important;
    justify-content: flex-start !important;
  }
  #hero32 .elementor-element-417624f0 > .e-con,
  #hero32 .elementor-element-4078d50,
  #hero32 .elementor-element-686e1530 {
    height: auto !important;
    min-height: 0 !important;
    flex: 0 0 auto !important;
  }
  #hero32 .elementor-element-417624f0 .e-con,
  #hero32 .elementor-element-417624f0 .elementor-widget { max-width: 100% !important; }
  #hero32 .elementor-element-686e1530 > .elementor-element-1f72a901,
  #hero32 .elementor-element-686e1530 > .elementor-element-1f72a901 > .elementor-widget-container {
    margin-top: 20px !important;
  }
  #hero32 .elementor-element-334abd23 { flex: 1 1 auto; min-width: 0; }
  #hero32 .elementor-element-284235f {
    top: auto !important;
    bottom: 0 !important;
    transform: none !important;
  }
  #hero32 .elementor-element-22e18284 .wd-text-block { font-size: clamp(12px, 1.2vw, 20px) !important; }
}

/* Facts: place the text above the portrait so it cannot cross faces. */
.elementor-2617 #pronas {
  background-size: 100% auto !important;
  background-repeat: no-repeat !important;
  background-position: center 200px !important;
}
#pronas > .e-con-inner { gap: 0 !important; }
#pronas .elementor-element-7d45afe4 {
  gap: 32px !important;
  align-items: flex-start !important;
  min-height: 190px;
}
#pronas .elementor-element-4dae8ac5 { flex: 1 1 60%; min-width: 0; }
#pronas .elementor-element-5ba11e38 { flex: 1 1 30%; min-width: 0; }
#pronas .elementor-element-6d1162fb { width: 100% !important; max-width: 700px !important; }
#pronas .elementor-element-122afc48 { margin-top: clamp(260px, 26vw, 440px) !important; }
#pronas .elementor-element-122afc48 > .e-con > .e-con {
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  gap: 24px !important;
  justify-content: space-between !important;
}
#pronas .elementor-element-64e13f9b { margin-top: 20px !important; }

/* Reviews: stars wrap under the author instead of compressing the name. */
.ls-review-card__top { flex-wrap: wrap; gap: 12px; align-items: center; }
.ls-review-card__top > :nth-child(2) { flex: 1 1 120px; min-width: 0; }
.ls-review-card__rating { flex: 0 0 auto; white-space: nowrap; }
.ls-review-card__author { overflow-wrap: anywhere; }

/* Inline and popup consultation forms. */
.elementor-2617 .elementor-element-571b7fad { justify-content: space-between !important; gap: 24px !important; }
.elementor-2617 .elementor-element-1c675355 { width: 100% !important; max-width: 100% !important; }
.elementor-2617 .elementor-element-1c675355 .wd-text-block { line-height: 1.12 !important; }
.elementor-popup-modal .dialog-close-button { top: 16px !important; right: 16px !important; inset-inline-end: 16px !important; z-index: 10; }
.elementor-popup-modal .dialog-message { max-width: 100%; }
.elementor-popup-modal .elementor-widget-wd_text_block { max-width: 100% !important; }
.elementor-popup-modal .elementor-widget-wd_text_block .wd-text-block { line-height: 1.2 !important; }
.elementor-popup-modal .elementor-field-group { min-width: 0; }

/* Footer: both contact panel and map stretch to the same row height. */
@media (min-width: 768px) {
  .elementor-location-footer .elementor-element-dc2faff > .e-con-inner { align-items: stretch !important; }
  .elementor-location-footer :is(.elementor-element-26592da,.elementor-element-965ac82) { height: auto !important; align-self: stretch !important; }
  .elementor-location-footer .elementor-element-965ac82 .elementor-widget-google_maps,
  .elementor-location-footer .elementor-element-965ac82 .elementor-widget-container,
  .elementor-location-footer .elementor-element-965ac82 .elementor-custom-embed,
  .elementor-location-footer .elementor-element-965ac82 iframe { height: 100% !important; min-height: 400px; }
}
.elementor-location-footer .elementor-element-eaf7d73 { padding: 20px 16px !important; gap: 16px !important; }
.elementor-location-footer .elementor-element-a41a829 { padding-right: 48px; }

/* Stages keep their height when the hint disappears. */
.ls-stages-swipe-hint.is-hidden { display: inline-flex !important; visibility: hidden !important; opacity: 0 !important; }
#etapinew .horizontal-scroll-section { scroll-snap-type: x proximity; }
#etapinew .scroll-track { scroll-snap-type: none !important; }
#etapinew .elementor-button { touch-action: manipulation; }

@media (max-width: 767px) {
  :root { --ls-grid-width: calc(100% - 32px); }
  .elementor-2617 > .e-con-boxed > .e-con-inner { padding-inline: 0 !important; width: calc(100% - 32px) !important; }
  .elementor-2617 .elementor-element-3a1e2244 { padding-inline: 0 !important; }
  .elementor-2617 .elementor-element-27df562f > .e-con-inner { gap: 28px !important; }
  .elementor-2617 :is(.elementor-element-74a746cb,.elementor-element-3ee996b2) { flex-basis: 100%; }
  .elementor-2617 .elementor-element-1f81eb29 { grid-template-columns: minmax(0,1fr); }
  .elementor-2617 .elementor-element-792135b6 .wd-text-block,
  .elementor-2617 .elementor-element-792135b6 p { text-align: left !important; }
  .elementor-2617 :is(.elementor-element-20718105,.elementor-element-60d8b29c) { grid-template-columns: minmax(0,1fr) minmax(0,40%); gap: 10px !important; }
  .elementor-2617 :is(.elementor-element-7f1785d2,.elementor-element-5036257d) p { font-size: 11px !important; }
  #hero32.hero { padding: 150px 16px 24px !important; overflow: hidden; }
  #hero32.hero::after { height: 120px !important; z-index: 2 !important; }
  #hero32 .elementor-element-334abd23 { width: 100% !important; }
  #hero32 .elementor-element-7b8d5f39 { display: grid !important; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 8px !important; width: 100% !important; }
  #hero32 .elementor-element-7b8d5f39 > .elementor-widget-button { width: 100% !important; max-width: 100% !important; min-width: 0 !important; }
  #hero32 .elementor-element-7b8d5f39 :is(.elementor-widget-container,.elementor-button-wrapper) { width: 100%; height: 100%; }
  #hero32 .elementor-element-7b8d5f39 .elementor-button {
    display: flex !important; align-items: center !important; justify-content: center !important;
    width: 100% !important; min-height: 48px !important; height: 100% !important;
    padding: 12px 8px !important; font-size: 11px !important; line-height: 1.3 !important;
    white-space: normal !important; box-sizing: border-box !important;
  }
  #hero32 .elementor-element-75305f9f {
    width: 100% !important; min-height: 330px !important; margin: 28px 0 0 !important;
    padding: 0 !important; position: relative !important; align-items: flex-end !important;
  }
  #hero32 .elementor-element-679ff2aa { width: 48% !important; margin: 0 !important; z-index: 3; }
  #hero32 .elementor-element-d1709c6 { padding: 12px !important; }
  #hero32 .elementor-element-56658a96 .wd-text-block { font-size: 13px !important; line-height: 1.3 !important; }
  #hero32 .elementor-element-3d6bac12 .wd-text-block { font-size: 11px !important; line-height: 1.4 !important; }
  #hero32 .elementor-element-79b110c {
    position: absolute !important; inset: var(--ls-hero-photo-top, 420px) auto auto -16px !important;
    width: 72% !important; height: auto !important; max-width: none !important;
    transform: none !important; pointer-events: none;
  }
  #hero32 .elementor-element-79b110c img { width: 100% !important; height: auto !important; }
  #hero32 .elementor-element-7aa1d2c7 { width: 100% !important; margin-top: auto !important; text-align: right; }
  #hero32 .elementor-element-7aa1d2c7 .wd-text-block { font-size: 12px !important; text-align: right !important; }
  #hero32 .elementor-element-2063af6a { gap: 12px !important; width: 100% !important; align-items: stretch !important; }
  #hero32 :is(.elementor-element-7a7095e0,.elementor-element-5bb2989e) { flex: 1 1 0 !important; min-width: 0 !important; flex-wrap: nowrap !important; flex-direction: row !important; gap: 8px !important; align-items: flex-start !important; }
  #hero32 :is(.elementor-element-39461b12,.elementor-element-2f6734bf) { flex: 0 0 40%; width: 40% !important; }
  #hero32 :is(.elementor-element-2afd1c03,.elementor-element-45089cf6) { flex: 1 1 0; width: auto !important; min-width: 0; }
  #hero32 :is(.elementor-element-5adac7fa,.elementor-element-6ec9db35) { width: 100% !important; }
  #hero32 :is(.elementor-element-30926b78,.elementor-element-396cf286) .wd-text-block { font-size: 11px !important; line-height: 1.4 !important; }
  .elementor-2617 #pronas { padding-inline: 0 !important; background-position: center var(--ls-facts-photo-top, 240px) !important; }
  #pronas .elementor-element-7d45afe4 { gap: 20px !important; flex-direction: column !important; min-height: 0; }
  #pronas :is(.elementor-element-4dae8ac5,.elementor-element-5ba11e38) { width: 100% !important; flex-basis: auto; }
  #pronas .elementor-element-122afc48 { margin-top: 330px !important; }
  #pronas .elementor-element-122afc48 > .e-con { width: 100% !important; max-width: 100% !important; flex: 0 0 100% !important; margin: 0 !important; }
  #pronas .elementor-element-122afc48 { flex-direction: column !important; gap: 12px !important; }
  #pronas .elementor-element-122afc48 > .e-con > .e-con { padding: 20px !important; }
  .elementor-2617 .elementor-element-702341d5 { top: 0 !important; right: 0 !important; left: auto !important; }
  .elementor-2617 .elementor-element-60c088ed { padding-right: 44px; }
  .elementor-2617 .elementor-element-15dd7b66 p { text-indent: 0 !important; }
  .elementor-2617 .elementor-element-2a2a5bda { margin-top: 48px !important; }
  .constalt-blog .blog-post__category { white-space: normal !important; max-width: 100% !important; overflow-wrap: anywhere; line-height: 1.3; }
  .elementor-location-footer .elementor-element-eaf7d73 { padding: 20px 16px !important; }
  .elementor-popup-modal .dialog-widget-content { max-width: calc(100vw - 24px) !important; max-height: calc(100dvh - 24px) !important; padding: 36px 12px 16px !important; }
}
/* Fixed 1200px divider rows must shrink with their service column. */
.elementor-2617 .elementor-element-3a1e2244 > .e-con > .e-con,
.elementor-2617 .elementor-element-6730a3a .e-con:has(> .elementor-widget-divider) {
  width: 100% !important; max-width: 100% !important; min-width: 0 !important;
}
.ls-review-card__top { display: flex !important; }
@media (min-width: 768px) {
  .elementor-location-header #hede1 > .e-con-inner {
    width: var(--ls-grid-width) !important; max-width: 1360px !important; margin-inline: auto !important;
  }
  #hero32.elementor-element-49a57ba8 { padding-inline: max(24px, calc((100vw - 1360px) / 2)) !important; }
}
@media (min-width: 768px) and (max-width: 1199px) {
  .elementor-location-header .constalt-header-location { max-width: 110px !important; font-size: 9px !important; }
  .elementor-location-header .elementor-element-c160a8b { gap: 6px !important; padding: 4px 6px !important; }
  .elementor-location-header .elementor-element-f9544af { padding: 10px 8px !important; }
  .ls-review-card__author { font-size: 16px; }
  .ls-review-card__date { font-size: 12px; }
  .ls-review-card__text { font-size: 14px; }
}
@media (min-width: 768px) {
  #hero32.hero::after { z-index: 2 !important; }
  #hero32 .elementor-element-2a5143dd,
  #hero32 .elementor-element-7b8d5f39 { width: min(46vw, 620px) !important; max-width: 100% !important; }
  #hero32 .elementor-element-7b8d5f39 { display: grid !important; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px !important; }
  #hero32 .elementor-element-7b8d5f39 > .elementor-widget-button { width: 100% !important; min-width: 0 !important; }
  #hero32 .elementor-element-7b8d5f39 .elementor-button { display: flex !important; width: 100% !important; min-height: 54px !important; padding: 14px 12px !important; align-items: center; justify-content: center; font-size: 13px !important; line-height: 1.3 !important; }
}
@media (max-width: 767px) {
  /* The supplied mobile photo already contains 460px of empty space at 750px width. */
  .elementor-2617 #pronas { background-position: center calc(var(--ls-facts-photo-top, 240px) - 60vw) !important; }
}
/* Consultation popup uses its dialog width, not the page's boxed viewport width. */
:is(#elementor-popup-modal-2485,#elementor-popup-modal-2493,#elementor-popup-modal-2498,#elementor-popup-modal-2502,#elementor-popup-modal-2506) .elementor-location-popup > .e-con {
  margin-top: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
}
@media (max-width: 767px) {
  .elementor-popup-modal .dialog-message { width: 100% !important; max-height: calc(100dvh - 100px) !important; overflow-y: auto; }
  :is(#elementor-popup-modal-2485,#elementor-popup-modal-2493,#elementor-popup-modal-2498,#elementor-popup-modal-2502,#elementor-popup-modal-2506) .elementor-location-popup > .e-con > .e-con-inner {
    width: 100% !important; max-width: 100% !important; padding-inline: 0 !important;
  }
}
@media (min-width: 768px) {
  .elementor-2617 .elementor-element-1c675355 .wd-text-block { font-size: clamp(28px,3.2vw,48px) !important; }
}
/* The child theme loads later and also hides this hint; retain its occupied space. */
.elementor-2617 .ls-stages-swipe-hint.is-hidden {
  display: inline-flex !important;
  visibility: hidden !important;
  opacity: 0 !important;
  animation: none !important;
}
/* The old first-child rule capped titles at 58% a second time inside the grid. */
.elementor-2617 :is(.elementor-element-64d4d6c4,.elementor-element-3a1e2244,.elementor-element-6730a3a,.elementor-element-505736b7) .e-con > .elementor-widget-wd_text_block:first-child {
  max-width: 100% !important;
}
.elementor-2617 .elementor-element-64d4d6c4 :is(.elementor-element-48ab8096,.elementor-element-30fc7830,.elementor-element-4c8f1917) .wd-text-block {
  font-size: clamp(16px,1.4vw,24px) !important;
  overflow-wrap: anywhere;
}
.elementor-2617 .headerblur > .elementor-widget-wd_text_block { min-width: 2ch !important; }
/* Preserve the existing sticky header when Elementor resets its inline position. */
body:not(.elementor-editor-active) .elementor-location-header #hede1:is(.sticky,.elementor-sticky--active):not(.elementor-sticky__spacer) {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  max-width: none !important;
  margin-block: 0 !important;
}
body:not(.elementor-editor-active) .elementor-location-header { min-height: 114px; }
body.admin-bar:not(.elementor-editor-active) .elementor-location-header #hede1:is(.sticky,.elementor-sticky--active):not(.elementor-sticky__spacer) { top: 32px !important; }
@media (max-width: 1024px) {
  body:not(.elementor-editor-active) .elementor-location-header { min-height: 110px; }
}
@media (max-width: 767px) {
  body:not(.elementor-editor-active) .elementor-location-header { min-height: 90px; }
  #hero32 .elementor-element-3cf3364c { width: auto !important; min-width: 2ch !important; }
}
@media (max-width: 782px) {
  body.admin-bar:not(.elementor-editor-active) .elementor-location-header #hede1:is(.sticky,.elementor-sticky--active):not(.elementor-sticky__spacer) { top: 46px !important; }
}

/* Figma 1440: scale with the capped content grid, not the browser width. */
@media (min-width: 768px) {
  #hero32.hero { container-type: inline-size; }
  #hero32 .elementor-element-42b1c82c { width: 52cqw !important; max-width: none !important; }
  #hero32 .elementor-element-42b1c82c .wd-text-block { font-size: clamp(13px,1.45cqw,20px) !important; }
  #hero32 :is(.elementor-element-775bf89f,.elementor-element-ed265cd) { width: 53cqw !important; max-width: 100% !important; margin-top: 12px !important; }
  #hero32 :is(.elementor-element-775bf89f,.elementor-element-ed265cd) .wd-text-block,
  #hero32 :is(.elementor-element-775bf89f,.elementor-element-ed265cd) p { font-size: clamp(40px,6.8cqw,93px) !important; line-height: 1 !important; letter-spacing: -.025em !important; }
  #hero32 .elementor-element-2a5143dd { margin-top: 24px !important; width: 49cqw !important; }
  #hero32 .elementor-element-2a5143dd :is(.wd-text-block,p) { font-size: clamp(12px,1.32cqw,18px) !important; line-height: 1.4 !important; }
  #hero32 .elementor-element-2a5143dd .elementor-widget-container { margin: 0 !important; padding: 0 !important; }
  #hero32 .elementor-element-284235f { width: 70cqw !important; max-width: none !important; left: 26cqw !important; right: auto !important; }
  #hero32 .elementor-element-284235f img { width: 100% !important; max-width: none !important; }
  #hero32 .elementor-element-417624f0 { width: 21.2cqw !important; flex: 0 0 21.2cqw !important; }
  #hero32 .elementor-element-4078d50 { width: 100% !important; }
  #hero32 .elementor-element-686e1530 { padding: 24px !important; }
  #hero32 .elementor-element-591503e6 img { width: 146px !important; max-width: 100% !important; }
  #hero32 :is(.elementor-element-1f72a901,.elementor-element-2f021353) { width: 100% !important; }
  #hero32 .elementor-element-1f72a901 :is(.wd-text-block,p) { font-size: clamp(18px,1.76cqw,24px) !important; line-height: 1.25 !important; }
  #hero32 .elementor-element-2f021353 :is(.wd-text-block,p) { font-size: clamp(12px,1.18cqw,16px) !important; line-height: 1.4 !important; }
}
/* The blog is nested in the site grid; its columns must use that available width. */
.elementor-2617 .elementor-element-64b9ea94 :is(.elementor-element-64edc6e,.elementor-widget-container,.elementor-shortcode,.constalt-blog,.blog-section__container,.blog-layout,.blog-layout__side) { min-width: 0 !important; max-width: 100% !important; }
.elementor-2617 .elementor-element-64b9ea94 .blog-section__container { width: 100% !important; margin-inline: 0 !important; }
.elementor-2617 .elementor-element-64b9ea94 .blog-post__content { min-width: 0 !important; }
.elementor-2617 .elementor-element-64b9ea94 :is(.blog-post__media,.blog-post__media--featured,.blog-post__media--compact) { width: 100% !important; max-width: 100% !important; min-width: 0 !important; }
@media (min-width: 1025px) {
  .elementor-2617 .elementor-element-64b9ea94 .blog-layout { grid-template-columns: repeat(2,minmax(0,1fr)) !important; gap: 20px !important; }
  .elementor-2617 .elementor-element-64b9ea94 .blog-post--featured { grid-template-columns: repeat(2,minmax(0,1fr)) !important; gap: 20px !important; }
  .elementor-2617 .elementor-element-64b9ea94 .blog-post--compact { grid-template-columns: minmax(0,1fr) minmax(0,24%) !important; gap: 20px !important; }
}
@media (min-width: 1025px) {
  /* The stat card is a viewport-side layer in the Figma composition. It is
     intentionally outside the capped text grid and anchored to the screen edge. */
  #hero32 .elementor-element-417624f0 {
    position: absolute !important;
    top: 105px !important;
    right: 0 !important;
    bottom: auto !important;
    width: clamp(360px, 28vw, 480px) !important;
    height: auto !important;
    max-width: none !important;
    flex: none !important;
    z-index: 5 !important;
    pointer-events: none;
    align-self: auto !important;
    justify-content: flex-start !important;
  }
  #hero32 .elementor-element-417624f0 > .e-con { width: 100% !important; height: auto !important; }
  #hero32 .elementor-element-417624f0 .elementor-widget,
  #hero32 .elementor-element-417624f0 a { pointer-events: auto; }
  #hero32 .elementor-element-4078d50 { width: 100% !important; max-width: none !important; height: auto !important; }
  #hero32 .elementor-element-686e1530 {
    width: 100% !important;
    height: auto !important;
    box-sizing: border-box !important;
    padding: 28px 32px 32px !important;
    justify-content: flex-start !important;
  }
  #hero32 .elementor-element-686e1530 > .elementor-element-1f72a901 { margin-top: 20px !important; max-width: 340px !important; }
  #hero32 .elementor-element-686e1530 > .elementor-element-1f72a901 > .elementor-widget-container { margin-top: 0 !important; }
  #hero32 .elementor-element-686e1530 > .elementor-element-2f021353 { margin-top: 24px !important; max-width: 360px !important; }
  #hero32 .elementor-element-686e1530 > .elementor-element-1f72a901 :is(.wd-text-block,p) { font-size: clamp(22px,2vw,32px) !important; line-height: 1.18 !important; }
  #hero32 .elementor-element-686e1530 > .elementor-element-2f021353 :is(.wd-text-block,p) { font-size: clamp(14px,1.2vw,18px) !important; line-height: 1.35 !important; }

  #hero32 .elementor-element-284235f { top: -135px !important; bottom: auto !important; width: 78cqw !important; }
  #hero32 .elementor-element-42b1c82c .elementor-widget-container,
  #hero32 :is(.elementor-element-775bf89f,.elementor-element-ed265cd) .elementor-widget-container { padding: 0 !important; margin: 0 !important; }
  #hero32 .elementor-element-2063af6a { margin-top: 80px !important; }
  .elementor-2617 .elementor-element-64b9ea94 :is(.blog-post--featured,.blog-post--compact,.blog-layout__side) { min-height: 0 !important; }
  .elementor-2617 .elementor-element-64b9ea94 :is(.blog-post--featured,.blog-post--compact) { padding-block: 22px 16px !important; }
  .elementor-2617 .elementor-element-64b9ea94 :is(.blog-post__media--featured,.blog-post__media--compact) { height: auto !important; aspect-ratio: 5 / 7; }
  .elementor-2617 .elementor-element-64b9ea94 .blog-post__image { width: 100% !important; height: 100% !important; object-fit: cover; }
}
@media (min-width: 768px) and (max-width: 1024px) {
  #hero32 .elementor-element-417624f0 {
    width: 24cqw !important;
    flex-basis: 24cqw !important;
    align-self: flex-start !important;
    height: auto !important;
  }
  #hero32 .elementor-element-4078d50,
  #hero32 .elementor-element-686e1530 { height: auto !important; }
  #hero32 .elementor-element-686e1530 { padding: 16px 12px !important; }
  #hero32 .elementor-element-686e1530 > .elementor-element-1f72a901,
  #hero32 .elementor-element-686e1530 > .elementor-element-1f72a901 > .elementor-widget-container { margin-top: 16px !important; }
  #hero32 .elementor-element-1f72a901 :is(.wd-text-block,p) { font-size: 16px !important; overflow-wrap: anywhere; }
}
