/* Tablet: 750–1100px */
@media (max-width: 1100px) {
  :root {
    --sg-pad: 40px;
    --sg-header-h: 80px;
  }
  .sg-hero {
    display: flex;
    flex-direction: column;
    gap: 48px;
    padding-top: 32px;
    padding-bottom: 48px;
  }
  .sg-hero__title { font-size: 36px; max-width: 100%; }
  .sg-hero__accent { display: none; }
  .sg-hero__visual-wrap { order: -1; }
  .sg-hero__bottom { flex-direction: column; align-items: flex-start; gap: 32px; margin-top: 0; }
  .sg-hero__visual-wrap { justify-content: stretch; }
  .sg-hero__visual { max-width: 100%; margin-left: 0; }
  .sg-hero__intro { justify-content: flex-start; padding-top: 32px; padding-bottom: 48px; }
  .sg-hero__intro p { font-size: 28px; width: 100%; max-width: 100%; }
  .sg-cases__row,
  .sg-cases__row--rev { grid-template-columns: 1fr; }
  .sg-cases__card-img--lg { min-height: 0; aspect-ratio: 755 / 500; }
  .sg-popup__panel { max-width: 100%; }
  .sg-popup.is-team .sg-popup__dialog { max-width: 100%; }
  .sg-popup__dialog { max-height: calc(100vh - 32px); }
  .sg-popup__body { font-size: 20px; }
  .sg-page--legal .sg-legal { gap: 32px; }
  .sg-legal__title { font-size: 28px; }
  .sg-case-intro__client { font-size: 32px; margin-bottom: 32px; }
  .sg-case-intro__title { font-size: 28px; }
  .sg-case-hero { aspect-ratio: auto; max-height: none; min-height: 320px; }
  .sg-services__grid,
  .sg-cases__row,
  .sg-cases__row--rev,
  .sg-why__grid,
  .sg-newsletter__grid,
  .sg-contact__grid,
  .sg-reviews__grid,
  .sg-contractors__grid,
  .sg-awards__grid,
  .sg-service-detail__intro,
  .sg-service-detail__grid {
    grid-template-columns: 1fr;
  }
  .sg-contractors__text { min-height: 0; font-size: 20px; }
  .sg-reviews__quote { font-size: 20px; }
  .sg-newsletter > .sg-inner { gap: 32px; }
  .sg-newsletter__aside { gap: 24px; }
  .sg-service-detail { padding-top: 48px; padding-bottom: 48px; }
  .sg-service-detail__intro { margin-bottom: 32px; }
  .sg-service-item__title { font-size: 28px; }
  .sg-service-detail__title { font-size: 28px; }
  .sg-service-detail__lead { font-size: 20px; }
  .sg-service-detail__body { font-size: 20px; }
  .sg-service-detail__cta .sg-btn { width: auto; }
  .sg-brief { padding-top: 48px; padding-bottom: 64px; }
  .sg-brief__lead { font-size: 20px; margin-bottom: 40px; }
  .sg-case-intro { grid-template-columns: 1fr; }
  .sg-awards__spacer { display: none; }
  .sg-reviews__photo,
  .sg-contractors__visual {
    width: 100%;
    height: auto;
    min-height: 280px;
    aspect-ratio: 1;
  }
  .sg-services:not(.sg-services--page) .sg-services__preview {
    position: static;
    aspect-ratio: 541 / 300;
    max-height: none;
    height: auto;
    min-height: 0;
  }
  .page-home .sg-services__preview { aspect-ratio: 16 / 10; max-height: 320px; }
  .sg-services__grid { min-height: 0; }
  .page-services .sg-services__preview { min-height: 0; height: auto; }
  .page-services .sg-services__grid { min-height: 0; }
  .sg-footer__top { align-items: flex-start; flex-direction: column; }
  .sg-footer--docs .sg-footer__bottom {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
  }
  .sg-cases__tabs { justify-content: flex-start; }
  .sg-cases__tab { min-width: auto; }
  .sg-clients__accent { display: none; }
  .sg-clients__text-wrap { min-height: 0; }
  .sg-clients__logos { grid-template-columns: repeat(2, 1fr); }
  .sg-services__grid { grid-template-columns: 1fr; }
  .sg-why__grid { grid-template-columns: 1fr; }
  .sg-team__grid { grid-template-columns: repeat(2, 1fr); row-gap: 32px; }
  .sg-why__list { gap: 32px; }
  .sg-case-concept { row-gap: 32px; }
  .sg-footer__top { flex-direction: column; align-items: flex-start; }
  .sg-footer--dark:not(.sg-footer--docs) .sg-footer__bottom {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px 32px;
    align-items: start;
  }
  .sg-footer--dark:not(.sg-footer--docs) .sg-footer__credit {
    justify-self: end;
  }
  .sg-footer__tagline { font-size: 20px; max-width: 100%; }
  .sg-footer__nav-mobile { display: flex; }
  .sg-contact__left { min-height: auto; }
  .sg-contact__grid { gap: 40px; }
  .sg-contact__legal { padding-top: 32px; }
  .sg-awards__grid {
    display: flex;
    flex-direction: column;
    align-items: stretch;
  }
  .sg-legal__body { font-size: 18px; }
  .sg-case-gallery__grid { grid-template-columns: 1fr; }
  .sg-case-gallery__item--col-left,
  .sg-case-gallery__item--col-right,
  .sg-case-gallery__item--col-full { grid-column: 1; }
  .sg-footer__docs-row { grid-template-columns: 1fr; }
  .sg-footer__docs-email { font-size: 18px; }
  .sg-cases__head-row { flex-direction: column; align-items: stretch; }
  .sg-cases__tabs {
    flex-wrap: nowrap;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin;
    padding-bottom: 8px;
    margin-left: calc(-1 * var(--sg-pad));
    margin-right: calc(-1 * var(--sg-pad));
    padding-left: var(--sg-pad);
    padding-right: var(--sg-pad);
  }
  .sg-cases__tab {
    flex-shrink: 0;
    white-space: nowrap;
    font-size: 14px;
    padding: 0 12px;
    min-width: 0;
  }
  .sg-header__burger { display: flex; }
  .page-home .sg-header__burger,
  .page-documents .sg-header__burger,
  .page-offer .sg-header__burger,
  .page-default .sg-header__burger,
  .page-privacy .sg-header__burger,
  .page-brief .sg-header__burger,
  .page-error .sg-header__burger { display: flex !important; }
  .page-home .sg-header__cta-desktop,
  .page-documents .sg-header__cta-desktop,
  .page-offer .sg-header__cta-desktop,
  .page-default .sg-header__cta-desktop,
  .page-privacy .sg-header__cta-desktop,
  .page-brief .sg-header__cta-desktop,
  .page-error .sg-header__cta-desktop { display: none !important; }
  .sg-header__nav {
    position: fixed;
    inset: var(--sg-header-h) 0 0 0;
    background: #fff;
    flex-direction: column;
    align-items: stretch;
    padding: 32px var(--sg-pad);
    gap: 24px;
    margin-left: 0;
    transform: translateX(100%);
    transition: transform 0.25s;
    z-index: 99;
  }
  .sg-header__nav.is-open { transform: translateX(0); }
  .sg-header__cta { justify-content: center; }
  .sg-clients__text { margin-left: 0; max-width: none; }
  .sg-clients__text-wrap { min-height: 0; }
  .sg-services__preview { order: -1; }
  .page-home .sg-services__preview { max-height: none; height: auto; }
  .sg-case-lead {
    margin-left: 0;
    max-width: none;
    padding-bottom: 48px;
    font-size: 28px;
    letter-spacing: -0.308px;
  }
  .sg-reviews__grid,
  .sg-contractors__grid {
    display: flex;
    flex-direction: column;
    gap: var(--sg-gap);
  }
  .sg-reviews__photo { order: -1; }
  .sg-case-intro:not(:has(.sg-case-intro__right)) {
    grid-template-columns: 1fr;
    max-width: none;
  }
  .sg-case-gallery { padding-bottom: 48px; }
  .sg-case-nav { padding-bottom: 48px; }
  .sg-why__grid {
    display: flex;
    flex-direction: column;
    gap: var(--sg-gap);
  }
  .sg-why__visual { order: -1; }
  .sg-cases--archive .sg-cases__head-row { align-items: flex-start; }
}

/* Mobile: <750px */
@media (max-width: 749px) {
  :root { --sg-pad: 20px; }
  .sg-header__logo { width: 160px; }
  .sg-hero { gap: 32px; padding-top: 24px; padding-bottom: 40px; }
  .sg-hero__title { font-size: 28px; letter-spacing: -0.56px; }
  .sg-hero__bottom { gap: 24px; }
  .sg-hero__intro { padding-top: 24px; padding-bottom: 40px; }
  .sg-hero__intro p { font-size: 22px; letter-spacing: -0.242px; width: 100%; max-width: 100%; }
  .sg-popup { padding: 12px; align-items: flex-end; }
  .sg-popup__panel {
    flex-direction: column-reverse;
    align-items: stretch;
    gap: 12px;
    width: 100%;
    max-height: 92vh;
  }
  .sg-popup__close {
    align-self: flex-end;
    background: var(--sg-popup-team-bg);
  }
  .sg-popup.is-review .sg-popup__close { background: #1f1f1f; }
  .sg-popup__dialog {
    padding: 32px 20px 24px;
    gap: 32px;
    border-radius: 8px 8px 0 0;
    max-height: none;
    flex: 1 1 auto;
    overflow-y: auto;
  }
  .sg-popup.is-team .sg-popup__dialog { border-radius: 8px 8px 0 0; }
  .sg-popup__head { max-width: none; }
  .sg-popup__body { font-size: 18px; }
  .sg-popup__title { font-size: 16px; }
  .sg-page--legal .sg-legal { gap: 24px; padding-top: 40px; padding-bottom: 40px; }
  .sg-legal__title { font-size: 24px; }
  .page-brief .sg-brief { gap: 32px; }
  .sg-legal__body { font-size: 16px; line-height: 1.4; }
  .sg-case-intro { padding-top: 40px; padding-bottom: 40px; }
  .sg-case-intro__client { font-size: 28px; margin-bottom: 32px; }
  .sg-case-intro:not(:has(.sg-case-intro__right)) .sg-case-intro__client { margin-bottom: 24px; }
  .sg-case-intro__title { font-size: 24px; }
  .sg-case-intro__right { font-size: 18px; }
  .sg-case-hero { min-height: 220px; }
  .sg-case-concept__title { font-size: 28px; }
  .sg-case-concept__text { font-size: 18px; }
  .sg-contact__brand-foot-tagline { font-size: 20px; }
  .sg-footer__docs-email { font-size: 18px; }
  .sg-service-item__title,
  .sg-clients__text,
  .sg-award__title,
  .sg-why__title,
  .sg-newsletter__title,
  .sg-contact__title,
  .sg-footer__tagline { font-size: 24px; }
  .sg-footer__tagline-mark::before {
    width: min(187px, calc(100% + 16px));
    height: 36px;
  }
  .sg-team__grid { grid-template-columns: 1fr; }
  .sg-clients__accent { display: none; }
  .sg-clients__logos { grid-template-columns: 1fr; }
  .sg-form-row { grid-template-columns: 1fr; }
  .sg-footer__top { flex-direction: column; }
  .sg-footer--dark:not(.sg-footer--docs) .sg-footer__bottom {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
  }
  .sg-footer--dark:not(.sg-footer--docs) .sg-footer__credit { justify-self: auto; }
  .sg-footer__bottom--docs { grid-template-columns: 1fr; }
  .sg-cases__head-row { flex-direction: column; align-items: flex-start; }
  .sg-cases__tab.is-active::after { bottom: -9px; }
  .sg-cases > .sg-inner { gap: 24px; }
  .sg-cases .sg-sec-head { gap: 24px; }
  .sg-cases__grid { gap: 32px; }
  .sg-services:not(.sg-services--page) > .sg-inner { gap: 16px; }
  .sg-awards > .sg-inner { gap: 16px; }
  .sg-brief { padding-top: 40px; padding-bottom: 64px; }
  .sg-brief__lead { font-size: 18px; margin-bottom: 32px; }
  .sg-brief__actions { flex-direction: column; }
  .sg-brief__actions .sg-btn { width: 100%; }
  .sg-error__code { font-size: 72px; }
  .sg-error__title { font-size: 24px; }
  .sg-error__actions { flex-direction: column; }
  .sg-error__actions .sg-btn { width: 100%; }
  .sg-cookie__inner { gap: 16px; }
  .sg-btn { width: 100%; justify-content: center; }
  .sg-contact__form button[type="submit"] { width: auto; align-self: flex-start; }
  .sg-reviews__card .sg-btn,
  .sg-reviews__nav-btn,
  .sg-contractors__nav-btn,
  .sg-popup__close,
  .sg-cookie__btn,
  .sg-cases__more .sg-btn,
  .sg-case-nav a { width: auto; }
  .sg-contact--dark .sg-contact__grid { gap: 32px; }
  .sg-contact--dark .sg-contact__form { gap: 32px; }
  .sg-contact--dark .sg-contact__socials {
    flex-direction: column;
    align-items: stretch;
  }
  .sg-contact--dark .sg-contact__socials .sg-btn { width: 100%; }
  .sg-contact--dark .sg-contact__ceo .sg-contact__sub { font-size: 16px; }
  .sg-services,
  .sg-clients,
  .sg-cases,
  .sg-awards,
  .sg-reviews,
  .sg-why,
  .sg-team,
  .sg-contractors,
  .sg-newsletter,
  .sg-contact,
  .sg-footer--dark { padding-top: 40px; padding-bottom: 40px; }
  .sg-cases__card-title { font-size: 20px; }
  .sg-cases__card-img--lg { min-height: 0; }
  .sg-award__sub,
  .sg-why__desc,
  .sg-newsletter__text { font-size: 16px; }
  .sg-label { font-size: 14px; }
  .sg-case-gallery__grid { grid-template-columns: 1fr; }
  .sg-case-gallery__item--col-left,
  .sg-case-gallery__item--col-right,
  .sg-case-gallery__item--col-full { grid-column: 1; }
  .sg-footer__docs-row { grid-template-columns: 1fr; text-align: left; }
  .sg-footer__docs-career-wrap { justify-self: start; }
  .sg-footer__docs-mail { justify-self: start; }
  .sg-footer__bottom--docs {
    grid-template-columns: 1fr;
    gap: 16px;
  }
  .sg-contact__left { gap: 32px; }
  .sg-contact--documents .sg-contact__left { gap: 0; }
  .sg-contact--documents .sg-contact__socials { flex-direction: column; }
  .sg-contact--documents .sg-contact__socials .sg-btn { width: 100%; }
  .sg-case-intro,
  .sg-case-concept { grid-template-columns: 1fr; }
  .sg-case-gallery__item--lg { grid-column: span 1; }
  .sg-service-detail { padding-top: 40px; padding-bottom: 40px; }
  .sg-service-detail__intro { margin-bottom: 24px; }
  .sg-service-detail__title { font-size: 24px; }
  .sg-service-detail__lead { font-size: 18px; }
  .sg-service-detail__body { font-size: 18px; }
  .sg-service-detail__visual { aspect-ratio: 16 / 10; }
  .sg-service-detail__cta { flex-direction: column; }
  .sg-service-features li { font-size: 16px; }
  .sg-service-item__title { font-size: 24px; letter-spacing: -0.48px; }
  .sg-service-item__desc { font-size: 16px; }
  .sg-service-item { gap: 20px; padding-bottom: 32px; }
  .sg-service-cases > .sg-inner { gap: 32px; }
  .page-services .sg-services--page > .sg-inner { gap: 16px; }
  .sg-contractors__text { font-size: 18px; padding: 24px; min-height: 0; }
  .sg-contractors__visual { width: 100%; height: auto; aspect-ratio: 1; }
  .sg-contractors__person { padding: 24px; }
  .sg-contractors__person-name { font-size: 20px; }
  .sg-contractors__person-role { font-size: 16px; }
  .sg-contractors__foot { flex-direction: column; align-items: stretch; }
  .sg-contractors__avatars {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin;
    padding-bottom: 4px;
  }
  .sg-contractors__nav { justify-content: flex-end; }
  .sg-cookie__inner { padding-top: 16px; padding-bottom: 16px; }
  .sg-reviews__quote { font-size: 18px; }
  .sg-reviews__card { min-height: 0; padding: 24px; }
  .sg-award__title { font-size: 24px; }
  .sg-why__title { font-size: 24px; }
  .sg-team__name { font-size: 20px; }
  .sg-team__row2 { margin-top: 0; }
  .sg-why__item { gap: 20px; padding-bottom: 32px; }
  .sg-clients > .sg-inner,
  .sg-reviews > .sg-inner,
  .sg-why > .sg-inner,
  .sg-team > .sg-inner,
  .sg-contractors > .sg-inner {
    gap: 32px;
  }
  .sg-case-lead {
    font-size: 22px;
    letter-spacing: -0.242px;
    padding-bottom: 40px;
  }
  .sg-case-related > .sg-inner { gap: 32px; }
  .sg-case-nav { padding-bottom: 40px; gap: 16px; }
  .page-cases .sg-cases--archive { padding-top: 24px; }
  .page-service .sg-service-detail { padding-top: 24px; }
  .page-services .sg-services--page { padding-top: 24px; }
  .sg-case-gallery { padding-bottom: 40px; }
  .sg-case-nav a,
  .sg-case-nav__all { font-size: 16px; }
  .sg-awards__list { gap: 32px; }
  .sg-award { gap: 20px; padding-bottom: 32px; }
  .sg-breadcrumbs { padding-top: 16px; }
  .sg-breadcrumbs__list { font-size: 12px; }
  .sg-reviews__grid { gap: 32px; }
  .sg-reviews__photo { order: -1; }
  .sg-contractors__grid { gap: 32px; }
  .sg-why__grid { gap: 32px; }
  .sg-page-hero__title { font-size: 28px; }
  .sg-page-hero__lead { font-size: 18px; max-width: none; margin-left: 0; }
  .sg-case-nav {
    grid-template-columns: 1fr;
    text-align: center;
  }
  .sg-case-nav__side--end { text-align: center; }
  .sg-newsletter > .sg-inner { gap: 32px; }
  .sg-newsletter__aside { gap: 24px; }
  .sg-cookie__inner { flex-direction: column; align-items: stretch; }
  .sg-cookie__btn { width: 100%; justify-content: center; }
}
