
/* MC static reliability + gallery v5 */
html,body{max-width:100%;overflow-x:hidden}

/* Contact buttons: explicit styles so they do not depend on missing CSS modules. */
.mc-contact-links{display:flex!important;flex-wrap:wrap!important;align-items:center!important;gap:10px!important;margin-top:20px!important;position:relative!important;z-index:5!important}
.mc-contact-links a{box-sizing:border-box!important;display:inline-flex!important;align-items:center!important;justify-content:flex-start!important;gap:12px!important;min-height:58px!important;width:auto!important;padding:12px 17px!important;border:0!important;border-radius:8px!important;letter-spacing:.035em!important;font-size:12px!important;font-weight:700!important;line-height:1!important;text-decoration:none!important;transition:transform .2s,box-shadow .2s!important}
.mc-contact-links a:hover{transform:translate(-3px,-3px)!important;box-shadow:5px 5px #10100fe6!important}
.mc-contact-links a.mc-max-link{color:#fff!important;background:linear-gradient(135deg,#471aff 0%,#6e1aff 100%)!important;box-shadow:inset 0 0 0 1px #ffffff33!important}
.mc-contact-links a.mc-telegram-link{color:#10100f!important;background:#e9e0d2!important}
.mc-contact-links img.mc-contact-icon{position:static!important;inset:auto!important;display:block!important;flex:0 0 auto!important;object-fit:contain!important;width:30px!important;height:30px!important;max-width:30px!important;max-height:30px!important;opacity:1!important;filter:none!important;transform:none!important}
.mc-contact-links svg.mc-contact-icon{position:static!important;display:block!important;flex:0 0 auto!important;width:29px!important;height:29px!important;max-width:29px!important;max-height:29px!important;fill:#279bd8!important;filter:none!important;transform:none!important}
.mc-contact-links b{margin-left:4px!important;font-size:20px!important;line-height:1!important}

/* Calm masonry-style case gallery. */
.mc-gallery-section{padding-top:clamp(72px,8vw,120px)!important;padding-bottom:clamp(76px,8vw,120px)!important;overflow:visible!important}
.mc-gallery-section ._heading_mlj4e_4{padding-bottom:clamp(38px,5vw,72px)!important}
.mc-gallery-section ._hint_mlj4e_4{max-width:300px!important}
.mc-gallery-grid{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;grid-auto-flow:dense!important;grid-auto-rows:8px!important;gap:14px!important;max-width:1380px!important;min-height:0!important;margin:0 auto!important;padding:0!important;align-items:start!important}
.mc-gallery-item{--mc-col-span:2;--mc-row-span:40;appearance:none!important;cursor:zoom-in!important;position:relative!important;display:block!important;width:100%!important;height:auto!important;min-height:0!important;margin:0!important;padding:0!important;border:0!important;border-radius:8px!important;background:#f4eee4!important;overflow:hidden!important;box-shadow:0 6px 20px #10100f14!important;animation:none!important;filter:none!important;transform:none!important;isolation:isolate!important;grid-column-start:auto!important;grid-column-end:span var(--mc-col-span)!important;grid-row-start:auto!important;grid-row-end:span var(--mc-row-span)!important;touch-action:manipulation!important}
.mc-gallery-item.mc-portrait{--mc-col-span:1}
.mc-gallery-item.mc-featured{--mc-col-span:3}
.mc-gallery-item:before,.mc-gallery-item:after{display:none!important;content:none!important}
.mc-gallery-item img{display:block!important;width:100%!important;height:auto!important;max-width:none!important;object-fit:contain!important;filter:none!important;transform:none!important;transition:transform .25s ease!important;box-shadow:none!important}
.mc-gallery-item:hover img{transform:scale(1.015)!important;filter:none!important}
.mc-gallery-item:focus-visible{outline:3px solid #ff4b17!important;outline-offset:4px!important}

/* Existing Helios results remain a clean grid but are clickable too. */
.mc-results-clickable ._grid_mlj4e_11{gap:18px!important}
.mc-results-clickable .mc-lightbox-item{cursor:zoom-in!important}

/* INSiTE brochures are decoration, not gallery content. */
.mc-brochure-band{color:#10100f;background:#ded6c8;min-height:clamp(420px,44vw,650px);padding:0 max(24px,7vw) clamp(70px,8vw,120px);position:relative;overflow:hidden}
.mc-brochure-band:before{content:"ПЕЧАТНЫЕ МАТЕРИАЛЫ";color:#ff4b17;letter-spacing:.06em;font-size:11px;font-weight:700;position:absolute;top:22px;left:max(24px,7vw)}
.mc-brochure-decor{max-width:980px;height:clamp(380px,39vw,560px);margin:0 auto;position:relative}
.mc-brochure-decor img{position:absolute!important;object-fit:contain!important;filter:drop-shadow(12px 15px #10100f20)!important;max-width:none!important;height:auto!important}
.mc-brochure-decor .mc-brochure-1{width:47%;left:5%;top:18%;transform:rotate(-7deg)!important}
.mc-brochure-decor .mc-brochure-3{z-index:2;width:44%;left:31%;top:24%;transform:rotate(7deg)!important}
.mc-brochure-decor .mc-brochure-2{z-index:3;width:28%;right:6%;top:18%;transform:rotate(24deg)!important}

/* Framework lightbox-independent static lightbox. */
.mc-lightbox{z-index:99999;position:fixed;inset:0;display:grid;place-items:center;background:#070706f2;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);padding:6vh 8vw}
.mc-lightbox[hidden]{display:none!important}
.mc-lightbox-stage{max-width:min(1180px,86vw);max-height:86vh;margin:0;display:flex;flex-direction:column;align-items:center}
.mc-lightbox-stage img{display:block;max-width:100%;max-height:78vh;width:auto;height:auto;object-fit:contain;border-radius:4px;box-shadow:12px 14px 0 #ff4b17}
.mc-lightbox-caption{color:#e9e0d2;width:100%;padding-top:16px;font-size:12px;letter-spacing:.03em}
.mc-lightbox-close,.mc-lightbox-prev,.mc-lightbox-next{z-index:2;position:absolute;color:#e9e0d2;background:transparent;border:0;cursor:pointer;line-height:1}
.mc-lightbox-close{top:18px;right:24px;font-size:42px}
.mc-lightbox-prev,.mc-lightbox-next{top:50%;transform:translateY(-50%);font-size:46px;padding:18px}
.mc-lightbox-prev{left:2vw}.mc-lightbox-next{right:2vw}
body.mc-lightbox-open{overflow:hidden!important}

@media (max-width:1100px){
 .mc-gallery-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:12px!important}
 .mc-gallery-item.mc-featured{--mc-col-span:2}
}
@media (max-width:780px){
 .mc-contact-links{display:grid!important;grid-template-columns:1fr!important;width:100%!important}
 .mc-contact-links a{width:100%!important}
 .mc-contact-links b{margin-left:auto!important}
 .mc-gallery-section{padding:16vw 5vw!important}
 .mc-gallery-section ._heading_mlj4e_4{padding:0 2vw 10vw!important}
 .mc-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-auto-rows:6px!important;gap:9px!important}
 .mc-gallery-item{--mc-col-span:2;border-radius:5px!important;box-shadow:0 3px 10px #10100f12!important}
 .mc-gallery-item.mc-portrait{--mc-col-span:1}
 .mc-gallery-item.mc-featured{--mc-col-span:2}
 .mc-brochure-band{min-height:330px;padding:0 5vw 48px}
 .mc-brochure-band:before{top:12px;left:7vw;font-size:9px}
 .mc-brochure-decor{height:300px}
 .mc-brochure-decor .mc-brochure-1{width:58%;left:-4%;top:21%}
 .mc-brochure-decor .mc-brochure-3{width:54%;left:27%;top:29%}
 .mc-brochure-decor .mc-brochure-2{width:34%;right:2%;top:18%;transform:rotate(22deg)!important}
 .mc-lightbox{padding:8vh 12vw}
 .mc-lightbox-stage{max-width:100%}
 .mc-lightbox-stage img{max-height:72vh;box-shadow:7px 8px 0 #ff4b17}
 .mc-lightbox-prev,.mc-lightbox-next{font-size:32px;padding:10px}
 .mc-lightbox-prev{left:0}.mc-lightbox-next{right:0}
}
@media (max-width:430px){
 .mc-gallery-grid{gap:8px!important}
 .mc-gallery-item.mc-portrait{--mc-col-span:1}
}

/* v5.1 deterministic masonry placement: avoids legacy mosaic coordinates. */
.mc-gallery-grid.mc-masonry-active{
  display:block!important;
  position:relative!important;
  height:var(--mc-grid-h)!important;
  min-height:0!important;
}
.mc-gallery-grid.mc-masonry-active .mc-gallery-item{
  position:absolute!important;
  left:var(--mc-x)!important;
  top:var(--mc-y)!important;
  width:var(--mc-w)!important;
  height:var(--mc-h)!important;
  margin:0!important;
  grid-area:auto!important;
  transform:none!important;
  transition:box-shadow .2s ease!important;
}
.mc-gallery-grid.mc-masonry-active .mc-gallery-item img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  transform:none!important;
}
.mc-gallery-grid.mc-masonry-active .mc-gallery-item:hover img{transform:scale(1.01)!important}

/* v5.2: portrait/mobile screenshots use the same masonry height rhythm as landscape cards. */
.mc-gallery-grid.mc-masonry-active .mc-gallery-item.mc-portrait{background:#ded6c8!important;box-shadow:none!important}

/* v5.3 dense masonry: CSS Grid back-fills holes instead of a skyline layout. */
.mc-gallery-grid.mc-dense-grid-active{
  display:grid!important;
  position:relative!important;
  height:auto!important;
  grid-template-columns:repeat(var(--mc-cols,5),minmax(0,1fr))!important;
  grid-auto-flow:dense!important;
  grid-auto-rows:var(--mc-row,5px)!important;
  column-gap:var(--mc-gap,12px)!important;
  row-gap:var(--mc-gap,12px)!important;
  align-items:stretch!important;
}
.mc-gallery-grid.mc-dense-grid-active .mc-gallery-item{
  position:relative!important;
  inset:auto!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  margin:0!important;
  transform:none!important;
  grid-column:auto / span var(--mc-col-span,2)!important;
  grid-row:auto / span var(--mc-row-span,20)!important;
  align-self:stretch!important;
}
.mc-gallery-grid.mc-dense-grid-active .mc-gallery-item img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  object-position:center!important;
}
.mc-gallery-grid.mc-dense-grid-active .mc-gallery-item.mc-portrait{
  background:#f4eee4!important;
  box-shadow:0 6px 20px #10100f14!important;
}
@media (max-width:780px){
  .mc-gallery-grid.mc-dense-grid-active{column-gap:8px!important;row-gap:8px!important}
}

/* v7 — case cards: typography-only editorial treatment */
#cases .case-grid{
  gap:18px!important;
}
#cases .case-link{
  min-height:540px!important;
  padding:34px!important;
  display:block!important;
  overflow:hidden!important;
  isolation:isolate!important;
}
#cases .case-link>span{
  position:absolute!important;
  top:30px!important;
  left:32px!important;
  z-index:2!important;
  margin:0!important;
  font-size:clamp(42px,3.7vw,68px)!important;
  line-height:.8!important;
  letter-spacing:-.09em!important;
  font-weight:800!important;
  color:#e9e0d2!important;
  opacity:.96!important;
}
#cases .case-link>div{
  position:absolute!important;
  inset:0!important;
  z-index:2!important;
  max-width:none!important;
  margin:0!important;
}
#cases .case-link>div>p:first-child{
  position:absolute!important;
  top:34px!important;
  right:34px!important;
  width:52%!important;
  margin:0!important;
  text-align:right!important;
  text-transform:uppercase!important;
  letter-spacing:.085em!important;
  font-size:clamp(13px,1vw,17px)!important;
  line-height:1.1!important;
  font-weight:700!important;
  color:#c8c2b7!important;
}
#cases .case-link h3{
  position:absolute!important;
  left:32px!important;
  right:28px!important;
  bottom:126px!important;
  margin:0!important;
  letter-spacing:-.085em!important;
  line-height:.82!important;
  font-weight:700!important;
  color:#e9e0d2!important;
  text-wrap:balance!important;
}
#cases .case-link:nth-child(1) h3{font-size:clamp(58px,4.3vw,84px)!important}
#cases .case-link:nth-child(2) h3{font-size:clamp(68px,5vw,98px)!important}
#cases .case-link:nth-child(3) h3{font-size:clamp(64px,4.7vw,92px)!important}
#cases .case-link>div>p:last-child{
  position:absolute!important;
  left:34px!important;
  bottom:34px!important;
  width:64%!important;
  margin:0!important;
  font-size:clamp(16px,1.25vw,20px)!important;
  line-height:1.14!important;
  font-weight:600!important;
  letter-spacing:-.025em!important;
  color:#e9e0d2!important;
}
#cases .case-link>b{
  position:absolute!important;
  right:32px!important;
  bottom:36px!important;
  z-index:3!important;
  margin:0!important;
  font-size:clamp(12px,.9vw,15px)!important;
  line-height:1!important;
  letter-spacing:.055em!important;
  font-weight:800!important;
  color:#ff4b17!important;
  white-space:nowrap!important;
}
#cases .case-link:hover h3{transform:translateX(7px)!important}
#cases .case-link h3{transition:transform .25s ease!important}

@media (max-width:1100px){
  #cases .case-link{min-height:470px!important;padding:28px!important}
  #cases .case-link>span{top:27px!important;left:28px!important;font-size:46px!important}
  #cases .case-link>div>p:first-child{top:29px!important;right:28px!important;font-size:12px!important}
  #cases .case-link h3{left:28px!important;right:24px!important;bottom:116px!important}
  #cases .case-link:nth-child(1) h3{font-size:clamp(48px,5vw,66px)!important}
  #cases .case-link:nth-child(2) h3{font-size:clamp(56px,5.7vw,76px)!important}
  #cases .case-link:nth-child(3) h3{font-size:clamp(54px,5.5vw,72px)!important}
  #cases .case-link>div>p:last-child{left:28px!important;bottom:29px!important;width:62%!important;font-size:15px!important}
  #cases .case-link>b{right:28px!important;bottom:31px!important;font-size:11px!important}
}

@media (max-width:780px){
  #cases .case-grid{gap:12px!important}
  #cases .case-link{min-height:390px!important;border-radius:13px!important}
  #cases .case-link>span{font-size:44px!important}
  #cases .case-link>div>p:first-child{width:55%!important;font-size:11px!important}
  #cases .case-link h3{bottom:112px!important}
  #cases .case-link:nth-child(1) h3,
  #cases .case-link:nth-child(2) h3,
  #cases .case-link:nth-child(3) h3{font-size:clamp(52px,15vw,72px)!important}
  #cases .case-link>div>p:last-child{width:68%!important;font-size:16px!important;line-height:1.12!important}
  #cases .case-link>b{font-size:11px!important}
}

/* v8 — lift case titles/subtitles into the upper half */
#cases .case-link h3{
  top:122px!important;
  bottom:auto!important;
}
#cases .case-link>div>p:last-child{
  top:236px!important;
  bottom:auto!important;
  width:72%!important;
}
@media (max-width:1100px){
  #cases .case-link h3{top:112px!important;bottom:auto!important}
  #cases .case-link>div>p:last-child{top:218px!important;bottom:auto!important;width:72%!important}
}
@media (max-width:780px){
  #cases .case-link h3{top:104px!important;bottom:auto!important}
  #cases .case-link>div>p:last-child{top:202px!important;bottom:auto!important;width:78%!important}
}

/* v9 - MAX button integrated into the site's black / cream / orange visual system. */
.mc-contact-links a.mc-max-link{
  color:#e9e0d2!important;
  background:#0b0b0a!important;
  border:1px solid #0b0b0a!important;
  border-radius:7px!important;
  padding:10px 16px 10px 10px!important;
  gap:13px!important;
  box-shadow:none!important;
}
.mc-contact-links a.mc-max-link img.mc-contact-icon{
  width:38px!important;
  height:38px!important;
  max-width:38px!important;
  max-height:38px!important;
  padding:8px!important;
  border-radius:5px!important;
  background:#ff4b17!important;
}
.mc-contact-links a.mc-max-link span{
  color:#e9e0d2!important;
  letter-spacing:.065em!important;
}
.mc-contact-links a.mc-max-link b{
  color:#ff4b17!important;
  margin-left:8px!important;
}
.mc-contact-links a.mc-max-link:hover{
  background:#10100f!important;
  transform:translate(-3px,-3px)!important;
  box-shadow:6px 6px 0 #e9e0d2!important;
}
.mc-contact-links a.mc-max-link:focus-visible{
  outline:2px solid #e9e0d2!important;
  outline-offset:4px!important;
}
@media (max-width:780px){
  .mc-contact-links a.mc-max-link b{margin-left:auto!important}
}

/* v10 - MAX mirrors Telegram button; MAX icon stays purple. */
.mc-contact-links a.mc-max-link{
  color:#10100f!important;
  background:#e9e0d2!important;
  border:0!important;
  border-radius:8px!important;
  min-height:58px!important;
  padding:12px 17px!important;
  gap:12px!important;
  box-shadow:none!important;
}
.mc-contact-links a.mc-max-link img.mc-contact-icon{
  position:static!important;
  width:30px!important;
  height:30px!important;
  max-width:30px!important;
  max-height:30px!important;
  padding:0!important;
  border-radius:0!important;
  background:transparent!important;
  object-fit:contain!important;
  filter:none!important;
  transform:none!important;
}
.mc-contact-links a.mc-max-link span{
  color:#10100f!important;
  letter-spacing:.035em!important;
}
.mc-contact-links a.mc-max-link b{
  color:#10100f!important;
  margin-left:4px!important;
}
.mc-contact-links a.mc-max-link:hover{
  background:#e9e0d2!important;
  transform:translate(-3px,-3px)!important;
  box-shadow:5px 5px #10100fe6!important;
}
.mc-contact-links a.mc-max-link:focus-visible{
  outline:2px solid #10100f!important;
  outline-offset:4px!important;
}
@media (max-width:780px){
  .mc-contact-links a.mc-max-link b{margin-left:auto!important}
}


/* v11 — darker MAX purple on the home CTA only. Case pages use the lighter SVG asset. */
.mc-contact-links a.mc-max-link img.mc-contact-icon{
  filter:none!important;
}


/* v12 — refine home CTA: darker MAX, smaller prompt, larger desktop buttons. */
@media (min-width:781px){
  .contact.section > div > .eyebrow{
    font-size:10.5px!important;
    letter-spacing:.045em!important;
    margin-bottom:22px!important;
  }
  .contact.section .mc-contact-links{
    gap:12px!important;
    margin-top:24px!important;
  }
  .contact.section .mc-contact-links a{
    min-height:66px!important;
    padding:15px 21px!important;
    gap:14px!important;
    font-size:13px!important;
    border-radius:9px!important;
  }
  .contact.section .mc-contact-links img.mc-contact-icon,
  .contact.section .mc-contact-links svg.mc-contact-icon{
    width:34px!important;
    height:34px!important;
    max-width:34px!important;
    max-height:34px!important;
  }
  .contact.section .mc-contact-links b{
    font-size:22px!important;
    margin-left:8px!important;
  }
}

/* PADRE: three statistics screenshots, equal and clickable. */
.mc-padre-stats-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:16px!important;
  max-width:1380px!important;
  margin:0 auto!important;
  align-items:stretch!important;
}
.mc-padre-stat{
  appearance:none!important;
  -webkit-appearance:none!important;
  display:block!important;
  width:100%!important;
  aspect-ratio:16/9!important;
  margin:0!important;
  padding:10px!important;
  border:0!important;
  border-radius:8px!important;
  background:#f5efe5!important;
  box-shadow:0 6px 20px #10100f18!important;
  overflow:hidden!important;
  cursor:zoom-in!important;
  touch-action:manipulation!important;
}
.mc-padre-stat img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  object-position:center!important;
  filter:none!important;
  transform:none!important;
  transition:transform .25s ease!important;
}
.mc-padre-stat:hover img{transform:scale(1.018)!important}
.mc-padre-stat:focus-visible{outline:3px solid #10100f!important;outline-offset:4px!important}
@media(max-width:780px){
  .mc-padre-stats-grid{grid-template-columns:1fr!important;gap:10px!important}
  .mc-padre-stat{padding:6px!important;border-radius:6px!important}
}
