/* Hotfixes for responsive layout glitches after Tilda export */

/* Project cards: ensure background images are centered on mobile/tablet */
#rec1140380691 .t-bgimg,
#rec1140380691 .t1073__bgimg,
#rec1140380691 .t1073__bgimg.t-bgimg {
  background-position: center center !important;
  background-size: cover !important;
  background-repeat: no-repeat !important;
}

/* Global: prevent background tiling when inline styles are malformed */
.t-bgimg {
  background-repeat: no-repeat !important;
}

/* If any card images use img tag instead of bg */
#rec1140380691 img.t-img {
  object-fit: cover;
  object-position: center;
}

/* Sliders / galleries (including popups): keep images centered on narrow screens */
.t-slds__bgimg {
  background-position: center center !important;
  background-size: cover !important;
}

.t-slds__wrapper {
  overflow: hidden;
}

img.t-slds__img,
.t-slds__img.t-img {
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  display: block;
  object-fit: cover;
  object-position: center;
}

/* Projects gallery (rec1140380701, T670): iPhone centering without breaking layout */
@media screen and (max-width: 480px) {
  #rec1140380701 .t-slds__container,
  #rec1140380701 .t-slds__wrapper {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box;
  }

  /* Make the image wrapper behave like a fixed viewport block */
  #rec1140380701 .t670__imgwrapper {
    position: relative !important;
    width: 100% !important;
    height: 70vh !important; /* full-screen-ish without causing double stacking */
    max-height: 680px !important;
    overflow: hidden !important;
  }

  /* Neutralize the aspect-ratio spacer */
  #rec1140380701 .t670__separator {
    padding-bottom: 0 !important;
    height: 100% !important;
  }

  /* Background-based slides: fill wrapper */
  #rec1140380701 .t-slds__bgimg {
    position: absolute !important;
    inset: 0 !important;
    background-position: center center !important;
    background-size: cover !important;
    background-repeat: no-repeat !important;
  }

  /* Img-based slides: fill wrapper */
  #rec1140380701 img.t-slds__img,
  #rec1140380701 .t-slds__img.t-img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
  }
}

/* Reviews section (rec1140380636): mobile centering */
#rec1140380636 .t-cover__carrier {
  background-position: center center !important;
  background-size: cover !important;
}

@media screen and (max-width: 480px) {
  #rec1140380636 .t-slds__main.t-container {
    max-width: 100% !important;
    padding-left: 10px !important;
    padding-right: 10px !important;
    box-sizing: border-box;
  }
  #rec1140380636 .t659__content,
  #rec1140380636 .t-slds__container,
  #rec1140380636 .t-cover__wrapper {
    width: 100% !important;
    box-sizing: border-box;
  }
  #rec1140380636 .t-slds__wrapper {
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

/* Prevent accidental horizontal scroll caused by exported Tilda blocks */
html,
body,
#allrecords {
  overflow-x: hidden;
}

/* Hero cover (rec1140380681, T1120): right text block should fit on 1280x800 */
#rec1140380681 .t1120__col-right {
  box-sizing: border-box;
  min-width: 0;
  max-width: 360px;
}

#rec1140380681 .t1120__col-right .t1120__descr {
  word-break: break-word;
}

@media screen and (max-width: 1280px) {
  #rec1140380681 .t1120__col-right {
    max-width: 300px;
  }

  #rec1140380681 .t1120__col-right .t1120__descr,
  #rec1140380681 .t1120__col-right .t-descr {
    font-size: 16px !important;
    line-height: 1.35 !important;
  }
}

@media screen and (max-width: 980px) {
  /* On tablet/mobile T1120 typically stacks columns; just ensure full width */
  #rec1140380681 .t1120__col-right {
    max-width: 100%;
  }
}

/* Projects grid (rec1322134461, T959): prevent horizontal overflow on ~1280px widths
   Make the cards wrap and reduce columns when needed. */
#rec1322134461 .t959__row {
  display: flex;
  flex-wrap: wrap;
}

#rec1322134461 .t959__card {
  box-sizing: border-box;
  flex: 0 0 25%;
  max-width: 25%;
}

@media screen and (max-width: 1280px) {
  #rec1322134461 .t959__card {
    flex-basis: 33.3333%;
    max-width: 33.3333%;
  }
}

@media screen and (max-width: 960px) {
  #rec1322134461 .t959__card {
    flex-basis: 50%;
    max-width: 50%;
  }
}

@media screen and (max-width: 640px) {
  #rec1322134461 .t959__card {
    flex-basis: 100%;
    max-width: 100%;
  }
}

/* Popup galleries (T750 + t-slds): on some widths slides render as a 2x2 grid.
   Force each slide to take full width. */
.t-popup .t-slds__item {
  width: 100% !important;
  max-width: 100% !important;
  flex: 0 0 100% !important;
  display: block !important;
  float: none !important;
}

.t-popup .t-slds__items-wrapper {
  display: flex !important;
}

/* === Responsive pass 2026-03-11 (safe overrides) === */

/* Media/content safety: never overflow viewport */
img,
video,
iframe,
svg {
  max-width: 100%;
  height: auto;
}

/* Generic long-text protection (forms, policy text, contacts) */
.t-text,
.t-descr,
.t-title,
.t-input,
.t-input-title,
.t-quiz__cover__descr,
.t-quiz__cover__title,
.t570__descr,
.t570__text {
  overflow-wrap: anywhere;
  word-break: break-word;
}

/* Header/menu stability for desktop/tablet */
#rec1140380626 .t228__maincontainer {
  max-width: 1240px;
  margin: 0 auto;
  padding-left: 16px;
  padding-right: 16px;
  box-sizing: border-box;
}

#rec1140380626 .t228__leftside,
#rec1140380626 .t228__rightside {
  min-width: 0 !important;
}

#rec1140380626 .t228__right_descr {
  text-align: right;
  line-height: 1.35;
  white-space: normal;
}

/* 360-430: mobile-first tightening */
@media screen and (max-width: 430px) {
  .t-container,
  .t-container_100,
  .t-container_flex {
    padding-left: 12px !important;
    padding-right: 12px !important;
    box-sizing: border-box;
  }

  #rec1140380626 .tmenu-mobile__container {
    min-height: 56px;
    padding: 14px 12px;
  }

  #rec1140380626 .t228,
  #rec1140380626 .t228__maincontainer {
    height: 72px !important;
  }

  #rec1140380626 .t228__leftcontainer,
  #rec1140380626 .t228__rightcontainer {
    min-width: 0;
  }

  #rec1140380681 .t1120__title {
    font-size: 32px !important;
    line-height: 1.2 !important;
  }

  #rec1140380681 .t1120__descr,
  #rec1140380681 .t1120__uptitle {
    font-size: 16px !important;
    line-height: 1.35 !important;
  }

  #rec1140380616 .t668__title {
    font-size: 18px !important;
    line-height: 1.3 !important;
  }

  #rec1156715851 .t887__wrapper {
    width: calc(100vw - 24px) !important;
    right: 12px !important;
  }
}

/* 768-1024: tablet layout balancing */
@media screen and (min-width: 768px) and (max-width: 1024px) {
  #rec1140380626 .t228__maincontainer {
    padding-left: 20px;
    padding-right: 20px;
  }

  #rec1140380681 .t1120__wrapper,
  #rec1140380681 .t-cover__carrier,
  #rec1140380681 .t-cover__filter {
    min-height: 760px !important;
  }

  #rec1140380666 .t570__contentwrapper {
    padding: 42px 28px !important;
  }
}

/* 1366 class screens */
@media screen and (min-width: 1200px) and (max-width: 1500px) {
  #rec1140380626 .t228__maincontainer {
    max-width: 1320px;
  }

  #rec1140380681 .t1120__col-right {
    max-width: 340px;
  }
}

/* 1920+ wide screens: keep readable line length */
@media screen and (min-width: 1900px) {
  .t-container,
  .t-container_100 {
    max-width: 1600px;
    margin-left: auto;
    margin-right: auto;
  }

  #rec1140380626 .t228__maincontainer {
    max-width: 1600px;
  }

  #rec1140380616 .t668__col,
  #rec1140860406 .t-col,
  #rec1140380636 .t-col {
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
    float: none;
  }
}

/* Hotfix 2026-03-11: header overflow on laptop widths */
@media screen and (max-width: 1600px) {
  #rec1140380626 .t228__right_descr {
    display: none !important;
  }
  #rec1140380626 .t228__rightcontainer,
  #rec1140380626 .t228__rightside {
    width: auto !important;
    min-width: 0 !important;
  }
}

/* Hotfix 2026-03-11: keep desktop 1920 header clean */
@media screen and (max-width: 1920px) {
  #rec1140380626 .t228__right_descr {
    display: none !important;
  }
}

/* Hotfix rollback+refine 2026-03-11: restore phone, fix desktop header and cost section */

/* Return contacts in header on desktop */
@media screen and (min-width: 1200px) {
  #rec1140380626 .t228__right_descr {
    display: block !important;
    position: static !important;
    width: auto !important;
    max-width: 240px;
    text-align: right;
    line-height: 1.3;
    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
    font-size: 14px;
  }

  #rec1140380626 .t228__rightcontainer,
  #rec1140380626 .t228__rightside {
    width: auto !important;
    min-width: 220px !important;
    max-width: 260px;
    overflow: visible !important;
  }

  #rec1140380626 .t228__maincontainer {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 16px;
  }
}

/* Keep header compact on smaller laptop widths */
@media screen and (max-width: 1366px) {
  #rec1140380626 .t228__right_descr {
    font-size: 12px !important;
    max-width: 180px;
  }
  #rec1140380626 .t228__rightcontainer,
  #rec1140380626 .t228__rightside {
    min-width: 170px !important;
    max-width: 190px;
  }
}

/* Cost cards section stability */
#rec1140380616 .t-container,
#rec1140380636 .t-container,
#rec1140860406 .t-container {
  max-width: 1240px;
  margin-left: auto;
  margin-right: auto;
}

#rec1140380616 .t668__row,
#rec1140380636 .t-row,
#rec1140860406 .t-row {
  display: flex;
  flex-wrap: wrap;
  gap: 24px;
}

#rec1140380616 .t668__col,
#rec1140380636 .t-col,
#rec1140860406 .t-col {
  min-width: 280px;
  flex: 1 1 320px;
}

/* Hotfix 2026-03-12: center align cost section block */
#rec1140380616 .t-container,
#rec1140380616 .t-section__container,
#rec1140380616 .t668__container {
  margin-left: auto !important;
  margin-right: auto !important;
}

#rec1140380616 .t668__row {
  display: flex !important;
  flex-wrap: wrap;
  justify-content: center !important;
}

#rec1140380616 .t668__col,
#rec1140380616 .t-col {
  float: none !important;
}

#rec1140380616 .t-section__title,
#rec1140380616 .t-section__descr {
  text-align: center !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Hotfix 2026-03-12: justify text (both sides) in cost section */
#rec1140380616 .t-section__descr,
#rec1140380616 .t668__descr,
#rec1140380616 .t668__text,
#rec1140380616 .t-text {
  text-align: justify !important;
  text-justify: inter-word;
  hyphens: auto;
}

/* Hotfix 2026-03-12: projects section text justify + wider description */
#rec1322134461 .t-section__descr {
  max-width: 960px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

#rec1322134461 .t-section__descr p,
#rec1322134461 .t-section__descr span {
  text-align: justify !important;
  text-justify: inter-word;
  hyphens: auto;
  line-height: 1.55;
  display: block;
}

@media screen and (max-width: 960px) {
  #rec1322134461 .t-section__descr {
    max-width: calc(100vw - 32px) !important;
  }
}

/* Hotfix 2026-03-12: popup image slider scaling */
.t-popup .t-slds__bgimg,
.t-popup .t-slds__img,
.t-popup .t-slds__bgimg-contain {
  background-size: contain !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
}

.t-popup .t-slds__main,
.t-popup .t-slds__wrapper,
.t-popup .t-slds,
.t-popup .t-slds__container {
  max-width: 100vw !important;
}

.t-popup .t-slds__bgimg {
  height: min(82vh, 980px) !important;
}

@media screen and (max-width: 960px) {
  .t-popup .t-slds__bgimg {
    height: min(72vh, 620px) !important;
  }
}

/* Keep arrows visible and prevent edge clipping */
.t-popup .t-slds__arrow_container {
  z-index: 20;
}

/* Hotfix 2026-03-12: rec1140380661 ('Почему мы вам понравимся?') align + slight right shift */
#rec1140380661 .t-section__title {
  text-align: center !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

#rec1140380661 .t502__container {
  display: flex !important;
  flex-wrap: wrap;
  justify-content: center !important;
  row-gap: 28px;
  margin-left: auto !important;
  margin-right: auto !important;
}

#rec1140380661 .t502__col {
  float: none !important;
}

/* keep the 4th card visually aligned with the row */
#rec1140380661 .t502__col:nth-child(4) {
  clear: none !important;
}

@media screen and (min-width: 1200px) {
  #rec1140380661 .t502__container {
    transform: translateX(24px);
  }
}

@media screen and (max-width: 960px) {
  #rec1140380661 .t502__container {
    transform: none;
    row-gap: 20px;
  }
}

/* Hotfix 2026-03-12: rec1322134461 center heading + description block */
#rec1322134461 .t-section__container,
#rec1322134461 .t-container {
  margin-left: auto !important;
  margin-right: auto !important;
}

#rec1322134461 .t-section__title {
  text-align: center !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

#rec1322134461 .t-section__descr {
  max-width: 960px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
}

#rec1322134461 .t-section__descr p,
#rec1322134461 .t-section__descr span {
  text-align: center !important;
  display: block;
}

/* Hotfix 2026-03-12: Desktop 1920 invisible vertical grid alignment */
@media screen and (min-width: 1600px) {
  :root {
    --desktop-grid-width: 1200px;
    --desktop-grid-gutter: 20px;
  }

  /* Unified central column for all standard Tilda containers */
  #allrecords .t-container,
  #allrecords .t-section__container,
  #allrecords .t-container_10,
  #allrecords .t-container_8 {
    width: calc(var(--desktop-grid-width) - (var(--desktop-grid-gutter) * 2)) !important;
    max-width: calc(var(--desktop-grid-width) - (var(--desktop-grid-gutter) * 2)) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box;
  }

  /* Keep rows centered to the same invisible grid */
  #allrecords .t-row {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  /* Safety: cancel previous manual horizontal shifts */
  #rec1140380661 .t502__container,
  #rec1322134461 .t-section__container,
  #rec1322134461 .t-container,
  #rec1322134461 .t-section__descr {
    transform: none !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  /* Heading centering inside the same grid */
  #rec1322134461 .t-section__title,
  #rec1140380661 .t-section__title {
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

/* Hotfix 2026-03-12: rec1140380616 FAQ in single centered column */
#rec1140380616 .t-container {
  max-width: 980px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

#rec1140380616 .t668__row {
  display: block !important;
}

#rec1140380616 .t668__col,
#rec1140380616 .t-col {
  float: none !important;
  width: 100% !important;
  max-width: 760px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  flex: none !important;
}

/* Hotfix 2026-03-12: rec1140380696 keep 4th step in one row with orange line */
@media screen and (min-width: 1200px) {
  #rec1140380696 .t-container {
    max-width: 1240px !important;
    display: flex !important;
    flex-wrap: nowrap !important;
    justify-content: space-between !important;
    align-items: flex-start !important;
  }

  #rec1140380696 .t1106__col,
  #rec1140380696 .t-col {
    float: none !important;
    width: 25% !important;
    max-width: 25% !important;
    min-width: 0 !important;
    margin-right: 0 !important;
  }
}

/* === Calculator block === */
.um-calc-section{position:relative;padding:90px 20px;overflow:hidden;background:#fff;color:#fff}
.um-calc-bg{position:absolute;inset:0;background:url('/assets/calc-bg-20260405-v2.jpg') center/cover no-repeat;filter:brightness(.55)}
.um-calc-overlay{display:none}
.um-calc-wrap{position:relative;z-index:2;max-width:none;width:100%;margin:0;display:grid;grid-template-columns:minmax(0,980px) minmax(260px,1fr);gap:28px;align-items:start}
.um-calc-card{display:grid;grid-template-columns:1fr 1fr;gap:34px;background:transparent;backdrop-filter:none;border:1px solid rgba(255,255,255,.16);border-radius:22px;padding:32px}
.um-calc-title{margin:0 0 8px;font:700 48px/1.05 'Montserrat',Arial,sans-serif}
.um-calc-subtitle{margin:0 0 20px;font-size:29px;line-height:1.15;color:#e9e9e9}
.um-calc-block-title{font:700 34px/1.15 'Montserrat',Arial,sans-serif;margin:18px 0 10px}
.um-range-label{display:block;font-size:24px;margin:12px 0 8px}
.um-calc-section input[type='range']{width:100%;accent-color:#fff;margin-bottom:6px}
.um-calc-area{margin:14px 0 10px;padding-bottom:12px;border-bottom:1px solid rgba(255,255,255,.22);font-size:26px}
.um-mt{margin-top:16px}
.um-opt{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;font-size:24px;line-height:1.25;margin:9px 0}
.um-opt input{margin-right:8px;transform:translateY(2px)}
.um-opt span{white-space:nowrap;opacity:.95}
.um-project-list{list-style:none;padding:0;margin:8px 0 18px}
.um-project-list li{font-size:29px;line-height:1.35;margin:7px 0}
.um-total{margin:8px 0 16px;padding:12px 0;border-top:1px solid rgba(255,255,255,.22);border-bottom:1px solid rgba(255,255,255,.22);font-size:35px;font-weight:600}
.um-form input,.um-form textarea{width:100%;background:transparent;border:0;border-bottom:1px solid rgba(255,255,255,.5);color:#fff;font-size:24px;padding:9px 0;margin:0 0 8px;outline:none;font-family:'Montserrat',Arial,sans-serif}
.um-form textarea{resize:vertical;min-height:72px}
.um-form input::placeholder,.um-form textarea::placeholder{color:rgba(255,255,255,.78)}
.um-calc-btn{margin-top:14px;width:100%;max-width:420px;border:0;background:#ff822e;color:#fff;border-radius:30px;padding:14px 18px;font:600 24px/1.1 'Montserrat',Arial,sans-serif;cursor:pointer;transition:.2s ease} .um-calc-btn:hover{opacity:.92} .um-calc-btn:active{transform:translateY(1px)}
.um-calc-side{background:transparent;border:1px solid rgba(255,255,255,.14);border-radius:16px;padding:22px;color:#fff}
.um-calc-side h3{margin:0 0 12px;font:700 30px/1.2 'Montserrat',Arial,sans-serif}
.um-calc-side p{margin:0 0 12px;font-size:20px;line-height:1.35;color:rgba(255,255,255,.92)}
.um-calc-side ul{margin:0 0 12px 18px;padding:0;display:grid;gap:6px}
.um-calc-side li{font-size:19px;line-height:1.3}
.um-calc-side-note{opacity:.9}


.um-icon-area{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border:1px solid rgba(255,255,255,.65);border-radius:6px;font-size:15px;line-height:1;margin-right:8px;vertical-align:middle}
.um-icon-ruble{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border:1px solid rgba(255,255,255,.65);border-radius:999px;font-size:20px;line-height:1;margin-right:10px;vertical-align:middle}
.um-opt input{appearance:none;-webkit-appearance:none;width:12px;height:12px;border:1px solid #fff;background:transparent;border-radius:1px;flex:0 0 12px}
.um-opt input:checked{background:#fff}

@media (max-width:980px){
  .um-calc-section{padding:56px 14px}
  .um-calc-wrap{grid-template-columns:1fr;gap:14px}.um-calc-card{grid-template-columns:1fr;gap:18px;padding:20px}
  .um-calc-title{font-size:34px}
  .um-calc-subtitle{font-size:22px}
  .um-calc-block-title{font-size:26px}
  .um-range-label,.um-calc-area,.um-opt{font-size:19px}
  .um-project-list li{font-size:22px}
  .um-total{font-size:28px}
  .um-form input,.um-form textarea,.um-calc-btn{font-size:18px}.um-calc-side h3{font-size:24px}.um-calc-side p,.um-calc-side li{font-size:16px}
}


/* Global font override */
html, body, #allrecords,
#allrecords .t-title,
#allrecords .t-name,
#allrecords .t-descr,
#allrecords .t-text,
#allrecords input,
#allrecords textarea,
#allrecords button,
#allrecords a {
  font-family: 'Montserrat', Arial, sans-serif !important;
}

/* Global button flash animation (like hero CTA) */
#allrecords .t-btn,
#allrecords .t-submit,
#allrecords .t-btnflex.t-btnflex_type_button{
  position:relative;
  overflow:hidden;
  isolation:isolate;
}
#allrecords .t-btn::after,
#allrecords .t-submit::after,
#allrecords .t-btnflex.t-btnflex_type_button::after{
  content:"";
  position:absolute;
  top:0;
  left:-85px;
  width:45px;
  height:100%;
  background:linear-gradient(90deg,rgba(255,255,255,.1),rgba(255,255,255,.42));
  transform:skewX(-45deg);
  animation:um-global-btn-flash 3s linear infinite;
  pointer-events:none;
  z-index:2;
}
@keyframes um-global-btn-flash{
  0%{transform:translateX(0) skewX(-45deg)}
  20%{transform:translateX(1200%) skewX(-45deg)}
  100%{transform:translateX(1200%) skewX(-45deg)}
}

/* um-popup-image-fix-20260405 */
/* Restore stable popup slider flow */
.t-popup .t-slds__items-wrapper{
  display:block !important;
}
.t-popup .t-slds__item{
  width:100% !important;
  max-width:100% !important;
  flex:none !important;
  float:left !important;
  display:block !important;
}

/* T750 popups: image visible, fit into popup, right text scrolls */
.t750 .t-popup__container{
  max-height:90vh !important;
  overflow:hidden !important;
}
.t750 .t750__container{
  max-height:90vh !important;
}
.t750 .t750__col_left,
.t750 .t750__col_right{
  max-height:86vh !important;
}
.t750 .t750__col_right{
  overflow:auto !important;
  -webkit-overflow-scrolling:touch;
}
.t750 .t-slds__wrapper{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:60vh;
}
.t750 .t-slds__img,
.t750 img.t-slds__img{
  width:100% !important;
  height:auto !important;
  max-height:82vh !important;
  object-fit:contain !important;
  object-position:center center !important;
}
.t750 .t-slds__bgimg{
  background-size:contain !important;
  background-position:center center !important;
  background-repeat:no-repeat !important;
}

/* “Наши работы” (T670): keep image inside viewport height */
#rec1140380701 .t670__imgwrapper{
  height:auto !important;
  max-height:82vh !important;
  overflow:auto !important;
}
#rec1140380701 .t-slds__img,
#rec1140380701 img.t-slds__img{
  width:100% !important;
  height:auto !important;
  max-height:82vh !important;
  object-fit:contain !important;
}
#rec1140380701 .t-slds__bgimg{
  background-size:contain !important;
  background-position:center center !important;
  background-repeat:no-repeat !important;
}

@media screen and (max-width: 980px){
  .t750 .t750__col_left,
  .t750 .t750__col_right{max-height:none !important;}
  .t750 .t750__col_right{overflow:visible !important;}
  .t750 .t-slds__img,
  .t750 img.t-slds__img,
  #rec1140380701 .t-slds__img,
  #rec1140380701 img.t-slds__img{max-height:60vh !important;}
}

/* um-mobile-popup-check-20260405 */
@media screen and (max-width: 640px){
  .t750 .t-popup__container{
    width:100vw !important;
    max-width:100vw !important;
    max-height:100vh !important;
    margin:0 !important;
    border-radius:0 !important;
  }
  .t750 .t750__container{
    display:block !important;
    max-height:100vh !important;
    overflow:auto !important;
  }
  .t750 .t750__col_left,
  .t750 .t750__col_right{
    width:100% !important;
    max-width:100% !important;
    float:none !important;
  }
  .t750 .t750__col_right{
    padding:12px 14px 16px !important;
    box-sizing:border-box;
    overflow:auto !important;
    max-height:45vh !important;
  }
  .t750 .t-slds__wrapper{min-height:40vh !important;}
  .t750 .t-slds__img,
  .t750 img.t-slds__img{
    max-height:48vh !important;
    width:100% !important;
    object-fit:contain !important;
  }

  #rec1140380701 .t-slds__container,
  #rec1140380701 .t-slds__wrapper{
    max-height:62vh !important;
    overflow:auto !important;
  }
  #rec1140380701 .t-slds__img,
  #rec1140380701 img.t-slds__img{
    max-height:60vh !important;
    object-fit:contain !important;
  }
}

/* Reviews slider (rec1140380636): tighter mobile/tablet layout without global overrides */
#rec1140380636 .t-slds__container {
  overflow: hidden !important;
}

#rec1140380636 .t659__text {
  margin-left: auto;
  margin-right: auto;
  max-width: 720px;
}

#rec1140380636 .t-slds__arrow_wrapper {
  transition: opacity .2s ease;
}

@media screen and (max-width: 1200px) {
  #rec1140380636 .t-slds__main.t-container {
    padding-left: 32px !important;
    padding-right: 32px !important;
    box-sizing: border-box !important;
  }

  #rec1140380636 .t659__text {
    max-width: 640px !important;
  }
}

@media screen and (max-width: 980px) {
  #rec1140380636 .t659__content,
  #rec1140380636 .t-slds__container,
  #rec1140380636 .t-cover__wrapper,
  #rec1140380636 .t-slds__wrapper {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  #rec1140380636 .t-slds__main.t-container {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }

  #rec1140380636 .t659__content {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  #rec1140380636 .t659__text {
    max-width: 100% !important;
    font-size: 20px !important;
    line-height: 1.5 !important;
  }

  #rec1140380636 .t-slds__arrow_wrapper-left {
    left: 4px !important;
  }

  #rec1140380636 .t-slds__arrow_wrapper-right {
    right: 4px !important;
  }
}

@media screen and (max-width: 640px) {
  #rec1140380636 .t-section__title {
    font-size: 30px !important;
    line-height: 1.18 !important;
  }

  #rec1140380636 .t-slds__main.t-container {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  #rec1140380636 .t659__text {
    font-size: 18px !important;
    line-height: 1.45 !important;
  }

  #rec1140380636 .t-slds__arrow_wrapper {
    width: 36px !important;
    height: 36px !important;
    top: auto !important;
    bottom: -18px !important;
  }

  #rec1140380636 .t-slds__arrow_wrapper-left {
    left: calc(50% - 44px) !important;
  }

  #rec1140380636 .t-slds__arrow_wrapper-right {
    right: calc(50% - 44px) !important;
  }

  #rec1140380636 .t-slds__arrow {
    width: 34px !important;
    height: 34px !important;
  }
}


/* Reviews fallback block */
.um-reviews-fallback {
  background: linear-gradient(180deg, #171717 0%, #222 100%);
  color: #fff;
  border-radius: 28px;
  padding: 56px 0;
}
.um-reviews-fallback .t-title,
.um-reviews-fallback .t-section__title {
  color: #fff !important;
}
.um-reviews-fallback__list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px;
  margin-top: 36px;
}
.um-review-card {
  background: rgba(255,255,255,0.08);
  border: 1px solid rgba(255,255,255,0.12);
  border-radius: 22px;
  padding: 24px;
  box-sizing: border-box;
}
.um-review-card__text {
  font-size: 20px;
  line-height: 1.55;
  margin-bottom: 18px;
}
.um-review-card__author {
  font-size: 18px;
  font-weight: 700;
  margin-bottom: 6px;
}
.um-review-card__meta {
  font-size: 13px;
  opacity: .8;
}
.um-reviews-fallback__actions {
  margin-top: 28px;
}
@media (max-width: 980px) {
  .um-reviews-fallback { padding: 40px 0; border-radius: 22px; }
  .um-reviews-fallback__list { grid-template-columns: 1fr; gap: 16px; }
  .um-review-card__text { font-size: 18px; }
}
@media (max-width: 640px) {
  .um-reviews-fallback { padding: 28px 0; border-radius: 18px; }
  .um-review-card { padding: 18px; }
  .um-review-card__text { font-size: 16px; }
  .um-review-card__author { font-size: 16px; }
}


/* Projects fallback block */
.um-projects-fallback__grid {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:20px;
  margin-top:40px;
}
.um-project-card {
  display:block;
  text-decoration:none;
  color:#111;
  background:#fff;
  border-radius:20px;
  overflow:hidden;
  box-shadow:0 12px 32px rgba(0,0,0,.08);
}
.um-project-card__image {
  display:block;
  padding-bottom:100%;
  background-position:center center;
  background-size:cover;
  background-repeat:no-repeat;
}
.um-project-card__title {
  display:block;
  font-size:20px;
  font-weight:700;
  padding:18px 18px 6px;
}
.um-project-card__meta {
  display:block;
  padding:0 18px 18px;
  font-size:14px;
  opacity:.7;
}
@media (max-width: 1200px) {
  .um-projects-fallback__grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media (max-width: 980px) {
  .um-projects-fallback__grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
}
@media (max-width: 640px) {
  .um-projects-fallback__grid { grid-template-columns:1fr; }
  .um-project-card__title { font-size:18px; }
}


/* Clean project popups */
.um-popup-fallback {display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,0.8fr);gap:24px;align-items:start;max-width:1180px;margin:0 auto;padding:24px;box-sizing:border-box;}
.um-popup-fallback__media {min-height:520px;border-radius:20px;background-position:center center;background-size:cover;background-repeat:no-repeat;background-color:#f1f1f1;}
.um-popup-fallback__content {padding:8px 0;}
.um-popup-fallback__title {font-size:34px;font-weight:700;line-height:1.15;margin-bottom:18px;}
.um-popup-fallback__descr {font-size:16px;line-height:1.6;}
.um-popup-fallback__actions {margin-top:24px;}
.um-popup-fallback__actions .t-btn,
.um-popup-fallback__actions .t-btnflex {display:inline-flex !important; visibility:visible !important; opacity:1 !important;}
@media (max-width: 980px) {.um-popup-fallback {grid-template-columns:1fr;padding:18px;}.um-popup-fallback__media {min-height:340px;}.um-popup-fallback__title {font-size:28px;}}
@media (max-width: 640px) {.um-popup-fallback__media {min-height:240px;}.um-popup-fallback__title {font-size:22px;}.um-popup-fallback__descr {font-size:15px;}.um-popup-fallback__actions {display:block !important; margin-top:20px !important;}.um-popup-fallback__actions .t-btn,.um-popup-fallback__actions .t-btnflex {width:100% !important; justify-content:center !important;}}
