/* Шейпы и бенто на страницах услуг — navy / cream / gold */

.svc-split {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr);
  gap: 28px 40px;
  align-items: center;
  margin: 8px 0 8px;
}

.svc-split-flip {
  grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr);
}
.svc-split-flip .svc-split-media { order: 2; }
.svc-split-flip .svc-split-copy { order: 1; }

.svc-split-media {
  position: relative;
  min-height: 320px;
  padding: 18px 10px 24px;
}

.svc-blob {
  position: absolute;
  inset: 24px 28px 12px 8px;
  border-radius: 36px;
  background: linear-gradient(160deg, #161D2C 0%, #0F1522 100%);
  box-shadow:
    0 28px 50px -24px rgba(8, 12, 22, .45),
    inset 0 0 0 1px rgba(226, 207, 166, .12);
  transform: rotate(-2deg);
}

.svc-blob-alt {
  inset: 16px 8px 20px 28px;
  transform: rotate(2deg);
  background: linear-gradient(160deg, #1B2436, #121929);
}

.svc-ring {
  position: absolute;
  width: min(78%, 280px);
  aspect-ratio: 1;
  left: 50%;
  top: 46%;
  translate: -50% -50%;
  border-radius: 50%;
  border: 1.5px dashed rgba(226, 207, 166, .45);
  pointer-events: none;
  z-index: 1;
  animation: svc-ring-spin 28s linear infinite;
}

@keyframes svc-ring-spin {
  to { transform: rotate(360deg); }
}

.svc-shot {
  position: absolute;
  z-index: 2;
  margin: 0;
  border-radius: 28px;
  overflow: hidden;
  box-shadow: 0 22px 40px -18px rgba(8, 12, 22, .5);
}

.svc-shot img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.svc-shot-main {
  left: 12%;
  top: 10%;
  width: 62%;
  height: 78%;
  border-radius: 32px;
}

.svc-shot-float {
  right: 4%;
  bottom: 6%;
  width: 42%;
  height: 46%;
  border-radius: 22px;
  transform: rotate(4deg);
  z-index: 3;
  border: 3px solid #fff;
}

.svc-shot-chip {
  left: 6%;
  bottom: 10%;
  width: 34%;
  height: 28%;
  border-radius: 18px;
  transform: rotate(-5deg);
  z-index: 4;
  border: 3px solid #fff;
}

/* Одно 3D-фото вместо коллажа */
.svc-split-media-solo {
  overflow: visible;
}
.svc-split-media-solo .svc-ring { display: none; }
.svc-shot-solo {
  left: 2%;
  top: 4%;
  width: 96%;
  height: 92%;
  border-radius: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
  transform: none;
  overflow: visible;
}
.svc-shot-solo img {
  object-fit: contain;
  filter: drop-shadow(0 18px 32px rgba(0, 8, 40, .4));
}

/* Блок «Для кого»: крупнее фото и шейп */
.svc-split-who {
  grid-template-columns: minmax(0, 1.25fr) minmax(0, .75fr);
  gap: 20px 28px;
}
.svc-split-who .svc-split-media {
  min-height: 420px;
  overflow: visible;
}
.svc-split-who .svc-blob {
  inset: 10px 8px 8px 0;
}
.svc-shot-lg {
  left: -4%;
  top: -4%;
  width: 118%;
  height: 114%;
  z-index: 5;
  overflow: visible !important;
}
.band > .wrap:has(.svc-split-who) {
  overflow: visible !important;
}

/* Блок «Коротко по отзывам»: фото + вопросы */
.svc-split:has(.svc-split-media-tall),
.svc-split-flip:has(.svc-split-media-tall) {
  grid-template-columns: minmax(0, 1.2fr) minmax(0, .8fr);
  gap: 24px 32px;
  align-items: stretch;
}
/* Фото слева (крупнее), вопросы справа */
.svc-split-flip:has(.svc-split-media-tall) > .svc-split-media-tall { order: 1; }
.svc-split-flip:has(.svc-split-media-tall) > .svc-panel { order: 2; }

.svc-split:has(.svc-split-media-tall) > .svc-panel,
.svc-split-flip:has(.svc-split-media-tall) > .svc-panel {
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  box-sizing: border-box;
}

.svc-split-media-tall {
  position: relative;
  overflow: visible;
  min-height: 100%;
  height: 100%;
  align-self: stretch;
}
.svc-split-media-tall .svc-blob {
  display: block;
  inset: 18px 14px 18px 8px;
}
.svc-shot-tall {
  left: 50%;
  top: 50%;
  width: 108%;
  height: 118%;
  translate: -50% -50%;
  z-index: 3;
}
.svc-shot-tall img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.svc-shot-compact {
  left: 50%;
  top: 50%;
  width: 88%;
  height: 96%;
  translate: -50% -50%;
  z-index: 6;
  overflow: visible !important;
}
#process > .wrap {
  overflow: visible !important;
}
#process .svc-duo,
#process .svc-split-media {
  overflow: visible;
  z-index: 2;
}
#process .svc-shot-compact {
  z-index: 8;
}
#process .svc-blob {
  display: block;
  z-index: 1;
  inset: 18px 14px 18px 8px;
  border-radius: 36px;
  transform: rotate(-2deg);
}
#process .svc-split-media-tall {
  overflow: visible;
}
#process .svc-panel {
  height: 100%;
}

@media (min-width: 901px) {
  #process .svc-blob {
    inset: 12px 8px 12px 0;
    transform: rotate(-2deg);
  }
}

/* Без внешнего светлого шейпа — ширина как у соседних блоков (.band даёт боковые поля) */
.band.band-bare > .wrap:not(.contact) {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  padding: 12px 0 !important;
  overflow: visible !important;
  width: 100%;
  max-width: 1200px;
  margin-inline: auto;
  box-sizing: border-box;
}
.band.band-bare > .wrap:not(.contact)::before {
  display: none !important;
}

/* Фулфилмент «От коробки до склада»: фото слева поверх шейпа, чуть за края */
#sostav > .wrap {
  overflow: visible !important;
}
#sostav .svc-split {
  overflow: visible;
  align-items: center;
}
#sostav .svc-split-media,
#sostav .svc-split-media-tall {
  overflow: visible !important;
  min-height: 360px;
}
#sostav .svc-blob {
  inset: 28px 20px 24px 8px;
  transform: rotate(-2deg);
  box-shadow: inset 0 0 0 1px rgba(226, 207, 166, .12) !important;
}
#sostav .svc-shot-sostav {
  left: 50% !important;
  top: 50% !important;
  width: 108% !important;
  height: 108% !important;
  max-width: none;
  translate: -50% -50% !important;
  z-index: 3;
  overflow: visible !important;
  box-shadow: none !important;
  filter: none !important;
}
#sostav .svc-shot-sostav img {
  object-fit: contain;
  object-position: center;
  filter: none !important;
  box-shadow: none !important;
}

@media (min-width: 901px) {
  .svc-split:has(.svc-split-media-tall),
  .svc-split-flip:has(.svc-split-media-tall) {
    grid-template-columns: minmax(0, 1.25fr) minmax(0, .75fr);
    min-height: 520px;
  }
  .svc-split-media-tall {
    min-height: 520px;
  }
  .svc-split-media-tall .svc-blob {
    inset: 12px 8px 12px 0;
  }
  .svc-shot-tall {
    width: 122%;
    height: 132%;
  }
  .svc-split:has(.svc-split-media-tall) > .svc-panel,
  .svc-split-flip:has(.svc-split-media-tall) > .svc-panel {
    align-self: stretch;
  }

  .svc-split-media:has(.svc-shot-pop) {
    overflow: visible;
  }
  .svc-shot-pop {
    width: 52%;
    height: 58%;
    right: -6%;
    bottom: -8%;
    z-index: 5;
  }

  #sostav .svc-split:has(.svc-split-media-tall) {
    grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr);
    min-height: 480px;
  }
  #sostav .svc-split-media-tall {
    min-height: 480px;
  }
  #sostav .svc-blob {
    inset: 18px 12px 16px 0;
  }
  #sostav .svc-shot-sostav {
    width: 112% !important;
    height: 112% !important;
  }
}

.svc-split-copy .kicker { margin-bottom: 8px; }
.svc-split-copy h2 {
  margin: 0 0 12px;
  font-size: clamp(26px, 3vw, 34px);
  letter-spacing: -.02em;
  line-height: 1.15;
}
.svc-split-copy > p {
  margin: 0 0 14px;
  color: var(--muted, #5F6370);
  font-size: 16px;
  line-height: 1.55;
  max-width: 44ch;
}
.svc-split-copy ul {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 10px;
}
.svc-split-copy li {
  position: relative;
  padding: 12px 14px 12px 42px;
  border-radius: 16px;
  background: rgba(18, 25, 41, .04);
  color: var(--muted, #5F6370);
  font-size: 14px;
  line-height: 1.45;
}
.svc-split-copy li b {
  position: absolute;
  left: 12px;
  top: 12px;
  color: #A8874F;
  font-size: 13px;
  font-weight: 700;
}

/* Бенто-карточки поверх существующих сеток */
.svc-bento {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 16px;
}

.svc-bento .who,
.svc-bento .tile,
.svc-card {
  position: relative;
  grid-column: span 2;
  border-radius: 28px !important;
  padding: 22px 22px 24px !important;
  border: 0 !important;
  overflow: hidden;
  min-height: 180px;
}

.svc-bento .who::before,
.svc-bento .tile::before,
.svc-card::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(120% 80% at 100% 0%, rgba(168, 135, 79, .12), transparent 50%);
  opacity: .9;
}

.svc-tone-cream { background: #F3EEE4 !important; }
.svc-tone-sand { background: #EFE6D8 !important; }
.svc-tone-mist { background: #E8EDF3 !important; }
.svc-tone-navy {
  background: linear-gradient(160deg, #171D2C, #101622) !important;
  color: #F4EFE6 !important;
}
.svc-tone-navy h3,
.svc-tone-navy b { color: #fff !important; }
.svc-tone-navy p { color: rgba(244, 239, 230, .72) !important; }
.svc-tone-navy .ic-pad {
  background: rgba(226, 207, 166, .16) !important;
  color: #E2CFA6 !important;
}

.svc-bento .tile:nth-child(1),
.svc-bento .who:nth-child(1) { grid-column: span 2; }
.svc-bento .tile:nth-child(2),
.svc-bento .who:nth-child(2) { grid-column: span 2; }
.svc-bento .tile:nth-child(3),
.svc-bento .who:nth-child(3) { grid-column: span 2; }
.svc-bento .tile:nth-child(4) { grid-column: span 3; }
.svc-bento .tile:nth-child(5) { grid-column: span 3; }
.svc-bento .tile:nth-child(6) { grid-column: span 2; }
.svc-bento.svc-bento-3 .tile:nth-child(n),
.svc-bento.svc-bento-3 .who:nth-child(n) { grid-column: span 2; }
.svc-bento.svc-bento-6 .tile:nth-child(4),
.svc-bento.svc-bento-6 .tile:nth-child(5),
.svc-bento.svc-bento-6 .tile:nth-child(6) { grid-column: span 2; }

.svc-card-media {
  margin: -6px -6px 14px;
  border-radius: 20px;
  overflow: hidden;
  aspect-ratio: 16 / 10;
  background: #121929;
}
.svc-card-media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.svc-card-media-navy {
  margin: -22px -22px 14px;
  border-radius: 28px 28px 0 0;
  border: 0;
  outline: none;
  box-shadow: none;
  background: transparent;
  overflow: hidden;
}
.svc-card-wide.svc-tone-navy {
  border: 0 !important;
  box-shadow: none !important;
  outline: none;
}
.svc-card-media-navy img {
  object-fit: contain;
  object-position: center;
  filter: none;
}

.svc-card-wide { grid-column: span 4 !important; }
.svc-card-tall { grid-column: span 2 !important; min-height: 280px; }

.svc-card-photo {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 46%;
  height: 78%;
  border-radius: 24px 0 28px 0;
  overflow: hidden;
  box-shadow: -12px 0 28px rgba(8, 12, 22, .18);
}
.svc-card-photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.svc-card-has-photo {
  padding-right: 48% !important;
}

/* PNG просто поверх — размер шейпа не меняем */
.band > .wrap:has(.svc-card-deco) {
  overflow: visible !important;
}
.svc-bento:has(.svc-card-deco) {
  overflow: visible;
}
.svc-bento .tile.svc-card-deco {
  overflow: visible !important;
  z-index: 2;
}
.svc-card-photo-bare {
  position: absolute;
  right: -8%;
  top: -28%;
  bottom: auto;
  left: auto;
  width: 54%;
  height: auto;
  aspect-ratio: 1;
  max-height: 120%;
  border-radius: 0;
  overflow: visible;
  box-shadow: none;
  background: transparent;
  pointer-events: none;
  z-index: 3;
}
.svc-card-photo-bare img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: top right;
  filter: drop-shadow(0 10px 18px rgba(8, 12, 22, .18));
  animation: svc-photo-float 5.5s ease-in-out infinite;
}
.svc-card-photo-left {
  right: auto;
  left: -10%;
  top: -26%;
}
.svc-card-photo-left img {
  object-position: top left;
  animation-delay: -1.2s;
}
.svc-bento .tile:nth-child(3) .svc-card-photo-bare img { animation-delay: -.6s; }
.svc-bento .tile:nth-child(6) .svc-card-photo-bare {
  width: 62%;
  top: -30%;
  right: -10%;
}
.svc-bento .tile:nth-child(6) .svc-card-photo-bare img { animation-delay: -2s; }
.svc-card-photo-bottom {
  top: auto;
  right: 50%;
  bottom: 0;
  width: 72%;
  aspect-ratio: 683 / 1024;
  max-height: none;
  transform: translateX(50%);
}
.svc-card-photo-bottom img {
  object-position: bottom center;
}

@keyframes svc-photo-float {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-7px); }
}
@keyframes svc-photo-float-zoom {
  0%, 100% { transform: scale(var(--svc-shot-zoom, 1)) translateY(0); }
  50% { transform: scale(var(--svc-shot-zoom, 1)) translateY(-7px); }
}
#sostav .svc-shot-sostav img,
.band.band-bare .svc-shot-tall img {
  animation: svc-photo-float 6s ease-in-out infinite;
}
.band.band-bare .svc-shot-tall img {
  animation-delay: -1.5s;
}
/* FAQ «Коротко по складу»: фото чуть выше */
.band.alt.band-bare .svc-shot-tall {
  top: 46%;
}

/* Корзины «5 артикулов»: одно 3D-фото, без тени под шейпом */
#test .svc-shot-tall img {
  filter: none;
  object-fit: contain;
  object-position: center;
}
#test .svc-blob {
  box-shadow: none;
}
@media (min-width: 901px) {
  #test .svc-split:has(.svc-split-media-tall) {
    grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
    align-items: center;
  }
  #test .svc-split-media-tall {
    min-height: 480px;
  }
  #test .svc-shot-tall {
    width: 118%;
    height: 118%;
    top: 50%;
  }
}

/* Корзины «Что нужно»: компактные летающие иконки WB / Ozon
   !important — иначе .band > .wrap > * { position:relative } из look.css ломает absolute */
#need > .wrap {
  position: relative;
  overflow: visible !important;
}
#need .svc-mp-float {
  position: absolute !important;
  display: block !important;
  z-index: 8;
  width: 56px !important;
  height: 56px !important;
  max-width: 56px !important;
  border-radius: 16px;
  overflow: hidden;
  background: #fff;
  box-shadow:
    0 14px 28px -10px rgba(16, 24, 64, .4),
    0 0 0 1px rgba(14, 21, 37, .08);
  pointer-events: none;
  animation: svc-mp-fly 5.2s ease-in-out infinite;
}
#need .svc-mp-float img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  object-fit: cover;
}
#need .svc-mp-wb {
  left: -18px;
  top: 38%;
}
#need .svc-mp-ozon {
  right: -18px;
  top: 58%;
  animation-delay: -2.4s;
  animation-duration: 5.8s;
}
@keyframes svc-mp-fly {
  0%, 100% { transform: translate3d(0, 0, 0) rotate(-6deg); }
  50% { transform: translate3d(0, -10px, 0) rotate(6deg); }
}
@media (max-width: 900px) {
  #need .svc-mp-float { width: 48px !important; height: 48px !important; max-width: 48px !important; border-radius: 14px; }
  #need .svc-mp-wb { left: -8px; top: 34%; }
  #need .svc-mp-ozon { right: -8px; top: 60%; }
}
@media (max-width: 560px) {
  #need .svc-mp-float { width: 40px !important; height: 40px !important; max-width: 40px !important; border-radius: 12px; }
  #need .svc-mp-wb { left: -4px; top: 32%; }
  #need .svc-mp-ozon { right: -4px; top: 62%; }
}
@media (prefers-reduced-motion: reduce) {
  #need .svc-mp-float { animation: none !important; }
}

/* Шаги как мягкие шейпы с номерами */
.svc-steps {
  display: grid;
  gap: 12px;
  margin-top: 8px;
}
.svc-step {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 16px;
  align-items: start;
  padding: 18px 20px;
  border-radius: 22px;
  background: #F3EEE4;
  box-shadow: inset 0 0 0 1px rgba(18, 25, 41, .04);
}
.svc-step b {
  font-family: "Unbounded", "Onest", system-ui, sans-serif;
  font-size: 28px;
  font-weight: 600;
  color: #A8874F;
  line-height: 1;
  letter-spacing: -.03em;
  min-width: 2ch;
}
.svc-step h3 {
  margin: 0 0 4px;
  font-size: 17px;
  font-weight: 600;
  color: var(--dark, #121929);
}
.svc-step p {
  margin: 0;
  color: var(--muted, #5F6370);
  font-size: 14px;
  line-height: 1.45;
}

.svc-panel {
  border-radius: 32px;
  padding: 28px 28px 30px;
  background: #F3EEE4;
  box-shadow: inset 0 0 0 1px rgba(18, 25, 41, .04);
}
.svc-panel-dark {
  background: linear-gradient(160deg, #171D2C, #101622);
  color: #F4EFE6;
}
.svc-panel-dark h2,
.svc-panel-dark .kicker { color: #E2CFA6; }
.svc-panel-dark p { color: rgba(244, 239, 230, .74); }
.svc-panel-dark .ask details {
  border-bottom-color: rgba(244, 239, 230, .14) !important;
}
.svc-panel-dark .ask summary { color: #fff !important; }
.svc-panel-dark .ask details p { color: rgba(244, 239, 230, .72) !important; }

.svc-duo {
  display: grid;
  grid-template-columns: 1.1fr .9fr;
  gap: 16px;
  align-items: stretch;
}
.svc-duo .svc-panel { margin: 0; }

.band > .wrap .svc-bento .who,
.band > .wrap .svc-bento .tile,
.band > .wrap .svc-card,
.band > .wrap .svc-step,
.band > .wrap .svc-panel {
  background-clip: padding-box;
}

@media (max-width: 900px) {
  .svc-split-who {
    grid-template-columns: 1fr;
  }
  .svc-split-who .svc-split-media {
    min-height: 240px;
    aspect-ratio: 16 / 11;
  }
  .svc-split-who .svc-blob {
    inset: 12px 12px 10px 12px;
  }
  .svc-shot-lg {
    left: 50%;
    top: 50%;
    width: 112%;
    height: 112%;
    translate: -50% -50%;
  }
  .svc-split,
  .svc-split-flip,
  .svc-duo {
    grid-template-columns: 1fr;
  }
  .svc-split-flip .svc-split-media,
  .svc-split-flip .svc-split-copy {
    order: initial;
  }
  /* Мобилка: горизонтальный шейп сверху, вопросы снизу */
  .svc-split:has(.svc-split-media-tall),
  .svc-split-flip:has(.svc-split-media-tall) {
    grid-template-columns: 1fr;
    gap: 16px;
    min-height: 0;
  }
  .svc-split:has(.svc-split-media-tall) > .svc-split-media-tall,
  .svc-split-flip:has(.svc-split-media-tall) > .svc-split-media-tall {
    order: 1;
  }
  .svc-split:has(.svc-split-media-tall) > .svc-panel,
  .svc-split-flip:has(.svc-split-media-tall) > .svc-panel {
    order: 2;
    height: auto;
  }
  .svc-split-media { min-height: 280px; }
  .svc-split-media-tall {
    min-height: 220px;
    height: auto;
    aspect-ratio: 16 / 10;
    overflow: visible;
  }
  .svc-split-media-tall .svc-blob {
    inset: 12px 0 10px;
    border-radius: 28px;
    transform: none;
  }
  .svc-shot-tall {
    left: 50%;
    top: 50%;
    width: 94%;
    height: 108%;
    translate: -50% -50%;
  }
  .svc-split-media-tall {
    overflow: hidden;
  }
  /* «От коробки до склада»: не шире wrap, без вылезания за экран */
  #sostav > .wrap {
    overflow-x: clip !important;
    overflow-y: visible !important;
  }
  #sostav .svc-split,
  #sostav .svc-split-media,
  #sostav .svc-split-media-tall,
  #sostav .svc-split-copy {
    min-width: 0;
    max-width: 100%;
    width: 100%;
    box-sizing: border-box;
  }
  #sostav .svc-split-media-tall {
    min-height: 260px;
    margin-bottom: 12px;
    overflow: hidden !important;
  }
  #sostav .svc-blob {
    inset: 12px 0 10px !important;
    transform: none !important;
    box-shadow: inset 0 0 0 1px rgba(226, 207, 166, .12) !important;
  }
  #sostav .svc-shot-sostav {
    width: 100% !important;
    height: 100% !important;
  }

  /* Фото поверх шейпа: сверху/снизу можно выходить; боковой скролл режет секция */
  #sostav,
  .band.band-bare {
    overflow-x: clip;
    overflow-y: visible;
  }
  .band.band-bare .svc-split:has(.svc-split-media-tall),
  .band.band-bare .svc-split-flip:has(.svc-split-media-tall) {
    overflow: visible;
    width: 100%;
    margin-inline: 0;
    justify-items: stretch;
  }
  .band.band-bare .svc-split:has(.svc-split-media-tall) .svc-split-media-tall,
  .band.band-bare .svc-split-flip:has(.svc-split-media-tall) .svc-split-media-tall {
    padding: 18px 0 22px;
    min-height: 280px;
    aspect-ratio: 16 / 12;
    margin: 0 0 18px;
    overflow: visible !important;
    justify-self: stretch;
    width: 100%;
    max-width: 100%;
  }
  .band.band-bare .svc-split:has(.svc-split-media-tall) .svc-blob,
  .band.band-bare .svc-split-flip:has(.svc-split-media-tall) .svc-blob {
    inset: 18px 4px 20px !important;
    border-radius: 28px;
    transform: none !important;
    box-shadow: none !important;
    z-index: 1;
  }
  .band.band-bare .svc-split:has(.svc-split-media-tall) .svc-shot-tall,
  .band.band-bare .svc-split-flip:has(.svc-split-media-tall) .svc-shot-tall {
    left: 50% !important;
    top: 50% !important;
    right: auto !important;
    bottom: auto !important;
    width: 108% !important;
    height: 128% !important;
    max-width: none;
    translate: -50% -50% !important;
    z-index: 3;
    overflow: visible !important;
  }
  .band.alt.band-bare .svc-split-flip:has(.svc-split-media-tall) .svc-shot-tall {
    top: 48% !important;
  }
  .band.band-bare .svc-panel {
    border-radius: 28px;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    margin-inline: 0;
    justify-self: stretch;
    box-sizing: border-box;
    overflow-x: clip;
  }
  .band.band-bare .ask,
  .band.band-bare .ask details {
    max-width: 100%;
    min-width: 0;
    box-sizing: border-box;
  }
  .band.band-bare .ask summary,
  .band.band-bare .ask details p {
    overflow-wrap: anywhere;
    word-break: break-word;
    max-width: 100%;
  }
  .band.band-bare .svc-shot-tall img {
    --svc-shot-zoom: 1.04;
    object-fit: contain;
    object-position: center center;
    transform-origin: center center;
    animation: svc-photo-float-zoom 6s ease-in-out infinite;
    animation-delay: -1.5s;
  }
  /* Тест: фото сверху текста, компактнее по бокам */
  #test {
    overflow-x: clip;
    overflow-y: visible;
  }
  #test .svc-split:has(.svc-split-media-tall) > .svc-split-media-tall {
    order: 1;
    overflow: visible !important;
    max-width: 100%;
  }
  #test .svc-split:has(.svc-split-media-tall) > .svc-panel {
    order: 2;
    max-width: 100%;
  }
  #test .svc-shot-tall {
    width: 104% !important;
    height: 108% !important;
  }
  #test .svc-shot-tall img {
    --svc-shot-zoom: 1;
    filter: none !important;
    animation: svc-photo-float 6s ease-in-out infinite;
    animation-delay: -1.5s;
  }
  #test .svc-blob {
    box-shadow: none !important;
  }
  /* Мобилка: «От заявки до оплаты» — шейп ровный, фото −30% */
  #process {
    overflow-x: clip;
  }
  #process > .wrap {
    width: 100%;
    max-width: 1200px;
    box-sizing: border-box;
  }
  #process .svc-duo {
    gap: 14px;
    width: 100%;
    grid-template-columns: 1fr;
  }
  #process .svc-panel,
  #process .svc-split-media,
  #process .svc-split-media-tall {
    width: 100% !important;
    max-width: 100%;
    box-sizing: border-box;
  }
  #process .svc-split-media,
  #process .svc-split-media-tall {
    position: relative;
    min-height: 280px;
    aspect-ratio: 1 / 1;
    padding: 0 !important;
    margin: 0 0 24px;
    overflow: visible !important;
  }
  /* Шейп повыше, по центру; фото поверх и за края */
  #process .svc-blob {
    display: block !important;
    top: 16% !important;
    right: 0 !important;
    bottom: 16% !important;
    left: 0 !important;
    width: auto !important;
    height: auto !important;
    border-radius: 28px !important;
    transform: none !important;
    z-index: 1;
  }
  #process .svc-shot,
  #process .svc-shot-compact,
  #process .svc-shot-tall,
  #process .svc-shot-solo {
    left: 50% !important;
    top: 50% !important;
    right: auto !important;
    bottom: auto !important;
    width: 118% !important;
    height: 118% !important;
    max-width: none;
    translate: -50% -50% !important;
    z-index: 3;
    overflow: visible !important;
  }
  #process .svc-shot-compact img,
  #process .svc-shot-solo img {
    object-fit: contain;
    object-position: center;
    overflow: visible;
  }
  .band.band-bare > .wrap:not(.contact) {
    padding: 8px 0 !important;
  }
  .svc-bento { grid-template-columns: 1fr 1fr; }
  .svc-bento .who,
  .svc-bento .tile,
  .svc-bento .tile:nth-child(n),
  .svc-bento .who:nth-child(n),
  .svc-card-wide,
  .svc-card-tall {
    grid-column: span 1 !important;
  }
  .svc-card-has-photo {
    padding-right: 22px !important;
    min-height: 220px;
  }
  .svc-card-photo {
    width: 40%;
    height: 55%;
    border-radius: 18px 0 22px 0;
  }
  .svc-card-photo-bare {
    right: -6%;
    top: -22%;
    width: 48%;
  }
  .svc-bento .tile:nth-child(6) .svc-card-photo-bare {
    width: 56%;
    top: -24%;
    right: -8%;
  }
  .svc-card-photo-left {
    right: auto;
    left: -8%;
    top: -20%;
  }
  .svc-card-photo-bottom {
    top: auto;
    right: 50%;
    bottom: 0;
    width: 64%;
    transform: translateX(50%);
  }
}

@media (max-width: 560px) {
  .svc-bento { grid-template-columns: 1fr; }
  .svc-split-media { min-height: 240px; padding-inline: 0; }
  .svc-split-media-tall {
    min-height: 200px;
    aspect-ratio: 16 / 11;
    overflow: hidden;
  }
  .svc-split-media-tall .svc-blob {
    inset: 10px 0 8px;
  }
  .svc-shot-tall {
    left: 50%;
    top: 50%;
    width: 92%;
    height: 108%;
    translate: -50% -50%;
  }
  .band.band-bare .svc-split:has(.svc-split-media-tall) .svc-split-media-tall,
  .band.band-bare .svc-split-flip:has(.svc-split-media-tall) .svc-split-media-tall {
    min-height: 268px;
    aspect-ratio: 16 / 13;
    margin: 0 0 20px;
    padding: 20px 0 24px;
    overflow: visible !important;
  }
  .band.band-bare .svc-split:has(.svc-split-media-tall) .svc-blob,
  .band.band-bare .svc-split-flip:has(.svc-split-media-tall) .svc-blob {
    inset: 16px 4px 18px !important;
    box-shadow: none !important;
  }
  .band.band-bare .svc-split:has(.svc-split-media-tall) .svc-shot-tall,
  .band.band-bare .svc-split-flip:has(.svc-split-media-tall) .svc-shot-tall {
    left: 50% !important;
    top: 50% !important;
    width: 110% !important;
    height: 132% !important;
    z-index: 3;
    overflow: visible !important;
  }
  .band.alt.band-bare .svc-split-flip:has(.svc-split-media-tall) .svc-shot-tall {
    top: 47% !important;
  }
  .band.band-bare .svc-shot-tall img {
    --svc-shot-zoom: 1.05;
  }
  #test .svc-shot-tall {
    width: 106% !important;
    height: 110% !important;
  }
  #test .svc-shot-tall img {
    --svc-shot-zoom: 1;
  }
  .svc-shot-lg {
    left: 50% !important;
    top: 50% !important;
    width: 104% !important;
    height: 104% !important;
    translate: -50% -50% !important;
  }
  #process .svc-split-media,
  #process .svc-split-media-tall {
    min-height: 270px;
    aspect-ratio: 1 / 1.02;
    padding: 0 !important;
    margin: 0 0 28px;
    overflow: visible !important;
  }
  #process .svc-blob {
    display: block !important;
    top: 14% !important;
    right: 0 !important;
    bottom: 14% !important;
    left: 0 !important;
    width: auto !important;
    height: auto !important;
    border-radius: 24px !important;
    transform: none !important;
    z-index: 1;
  }
  #process .svc-shot,
  #process .svc-shot-compact,
  #process .svc-shot-tall,
  #process .svc-shot-solo {
    left: 50% !important;
    top: 50% !important;
    width: 124% !important;
    height: 124% !important;
    max-width: none;
    translate: -50% -50% !important;
    z-index: 3;
    overflow: visible !important;
  }
  .svc-shot-lg {
    left: 50%;
    top: 50%;
    width: 102%;
    height: 102%;
    translate: -50% -50%;
  }
  .svc-split-who .svc-split-media {
    min-height: 230px;
    width: 100%;
  }
  .svc-split-who .svc-blob {
    inset: 10px 4px 8px 4px;
  }
  .svc-blob { border-radius: 28px; }
  .svc-shot-main { left: 8%; width: 66%; }
  .svc-panel { padding: 22px 18px; border-radius: 24px; }
  .band.band-bare .svc-panel .ask details {
    margin-inline: 0;
  }
  .svc-card-has-photo { padding-right: 22px !important; }
  .svc-card-photo:not(.svc-card-photo-bare) { display: none; }
  .svc-bento .tile.svc-card-deco {
    overflow: visible !important;
    min-height: 200px;
  }
  .svc-bento .tile.svc-tone-navy.svc-card-deco {
    min-height: 340px;
    padding-bottom: 200px !important;
  }
  .svc-card-photo-bare {
    display: block;
    right: -4%;
    top: -16%;
    width: 46%;
  }
  .svc-bento .tile:nth-child(6) .svc-card-photo-bare {
    width: 54%;
    top: -18%;
    right: -6%;
  }
  .svc-card-photo-left {
    right: auto;
    left: -6%;
    top: -14%;
  }
  .svc-card-photo-bottom {
    top: auto;
    right: 50%;
    bottom: 0;
    width: 58%;
    transform: translateX(50%);
  }
}

@media (prefers-reduced-motion: reduce) {
  .svc-ring { animation: none; }
  .svc-card-photo-bare img,
  #sostav .svc-shot-sostav img,
  .band.band-bare .svc-shot-tall img {
    animation: none;
  }
}
