@media (min-width: 480px) {
    .hero h1 { font-size: 42px; }
    .service-list { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 699px) {
    .hero__actions .btn { width: 100%; }
}

@media (min-width: 700px) {
    .hero .stats { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; }
    .hero__actions { flex-direction: row; align-items: center; flex-wrap: wrap; }
    .cta-card .btn { width: auto; }
}

@media (min-width: 768px) {
    .container { width: min(1240px, calc(100% - 48px)); }
    .verticals__grid { grid-template-columns: 1fr 1fr; }
    .mini-grid {
        display: grid;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        overflow: visible;
    }
    .mini-card { flex: none; }
    .cowork__card {
        display: grid;
        grid-template-columns: 1.15fr 0.85fr;
        gap: 18px;
        align-items: center;
    }
    .cowork__card img { height: 220px; }
    .cowork__copy h3 { margin-top: 0; }
    .digital__grid { grid-template-columns: 1.1fr 0.9fr; gap: 32px; }
    .digital__visual img { height: 280px; }
    .gallery-strip__row { display: grid; grid-template-columns: repeat(5, 1fr); overflow: visible; }
    .gallery-strip__row figure { width: auto; flex: none; }
    .gallery-strip__row img { width: 100%; height: 156px; }
}

@media (min-width: 960px) {
    .hero { padding: 6px 0 12px; }
    .hero__panel {
        display: block;
        aspect-ratio: 2146 / 733;
        border-radius: 22px;
        overflow: hidden;
        box-shadow: 0 16px 36px rgba(16, 36, 61, 0.12);
    }
    .hero-media {
        position: absolute;
        inset: 0;
        height: 100%;
        aspect-ratio: auto;
        border-radius: 0;
    }
    .hero-media img { object-position: center center; }
    .hero__scrim {
        display: block;
        position: absolute;
        inset: 0;
        z-index: 1;
        pointer-events: none;
        background: linear-gradient(90deg, #fff 0%, rgba(255, 255, 255, 0.96) 24%, rgba(255, 255, 255, 0.72) 38%, rgba(255, 255, 255, 0) 54%);
    }
    .hero-slider__btn--prev { left: auto; right: 62px; }
    .hero-slider__btn--next { right: 16px; }
    .hero-slider__dots { right: 18px; bottom: 16px; }
    .hero__content {
        position: absolute;
        z-index: 2;
        top: 0;
        bottom: 0;
        left: 0;
        display: flex;
        flex-direction: column;
        justify-content: center;
        width: min(640px, 56%);
        padding: 18px 8px 16px 36px;
    }
    .hero h1 {
        max-width: 7.6em;
        font-size: 48px;
        letter-spacing: -0.05em;
        line-height: 0.98;
    }
    .hero__sub { font-size: 16px; margin-top: 8px; max-width: 420px; }
    .hero__lead { font-size: 14px; line-height: 1.55; margin-top: 8px; max-width: 430px; }
    .hero__actions {
        flex-direction: row;
        align-items: center;
        flex-wrap: nowrap;
        gap: 10px;
        width: max-content;
        max-width: 100%;
        margin-top: 14px;
    }
    .hero .btn {
        width: auto;
        flex: 0 0 auto;
        min-height: 42px;
        white-space: nowrap;
        padding: 0 16px;
        font-size: 14px;
    }
    .hero .btn--orange { box-shadow: 0 8px 18px rgba(243, 106, 22, 0.28); }
    .hero .btn--white {
        background: rgba(255, 255, 255, 0.96);
        border-color: #e3eaf1;
        box-shadow: 0 6px 16px rgba(16, 36, 61, 0.08);
    }
    .hero .btn--white .icon { color: #25d366; }
    .hero .stats {
        display: grid;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        align-items: center;
        width: 100%;
        max-width: 640px;
        gap: 2px;
        margin-top: 12px;
        padding: 8px 10px;
        border: 1px solid rgba(226, 232, 240, 0.95);
        border-radius: 20px;
        background: rgba(255, 255, 255, 0.96);
        box-shadow: 0 10px 28px rgba(16, 36, 61, 0.1);
    }
    .hero .stat { min-width: 0; gap: 6px; padding: 2px 2px; }
    .hero .stat__icon { width: 30px; height: 30px; }
    .hero .stat__icon .icon { width: 15px; height: 15px; }
    .hero .stats dt { font-size: 15px; letter-spacing: -0.03em; }
    .hero .stats dd {
        font-size: 10px;
        line-height: 1.2;
        letter-spacing: -0.02em;
        white-space: nowrap;
    }
}

@media (min-width: 960px) and (max-width: 1199px) {
    .hero__content { width: min(560px, 58%); padding: 14px 8px 12px 28px; }
    .hero h1 { max-width: none; font-size: 40px; line-height: 1; }
    .hero__sub { font-size: 15px; margin-top: 6px; }
    .hero__lead { font-size: 13px; line-height: 1.45; margin-top: 6px; max-width: 400px; }
    .hero__actions { margin-top: 10px; }
    .hero .btn { min-height: 40px; padding: 0 14px; font-size: 13px; }
    .hero .stats { max-width: none; margin-top: 10px; padding: 7px 8px; }
    .hero .stat__icon { width: 28px; height: 28px; }
    .hero .stats dt { font-size: 13px; }
    .hero .stats dd { font-size: 10px; }
}

@media (min-width: 1024px) {
    .about__grid {
        grid-template-columns: 0.9fr 1.35fr 0.78fr;
        gap: 28px;
        align-items: stretch;
        padding: 8px 0 4px;
    }
    .why__list { grid-template-columns: repeat(4, minmax(0, 1fr)); }
    .why__item + .why__item {
        border-left: 1px solid var(--line);
        padding-left: 12px;
    }
}

@media (min-width: 1024px) {
    .nav-toggle { display: none; }
    .mobile-menu { display: none !important; }
}

@media (min-width: 1200px) {
    .verticals__grid { grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 12px; }
    .vcard { min-height: 0; min-width: 0; }
    .vcard__title { font-size: 16px; }
    .vcard__lines {
        margin-left: 0;
        font-size: 12px;
        letter-spacing: -0.02em;
    }
    .vcard__media { height: 112px; }
    .band__grid {
        grid-template-columns: 1.15fr 1.15fr 0.72fr;
        gap: 18px;
        align-items: start;
    }
    .cowork__card { grid-template-columns: 1fr; }
    .cowork__card img { height: 148px; }
    .cowork__copy h3 { margin-top: 10px; font-size: 18px; }
    .mini-grid { gap: 8px; }
    .hero h1 { font-size: 52px; }
    .hero__content { width: min(680px, 54%); }
}

@media (max-width: 1023px) {
    .site-nav,
    .header-tools { display: none; }
    .nav-toggle { display: inline-flex; }
}

@media (min-width: 1024px) and (max-width: 1180px) {
    .site-nav__list { gap: 16px; }
    .nav__link { font-size: 14px; }
    .header-tools .btn { padding: 0 12px; font-size: 13px; }
}

@media (max-width: 767px) {
    .verticals { padding-top: 12px; }
    .vcard__media { height: 168px; }
    .site-header__bar,
    .nav__link { height: 64px; }
}

@media (max-width: 374px) {
    .container { width: calc(100% - 24px); }
    .hero h1 { font-size: 30px; }
    .brand__name { font-size: 15px; }
    .site-header .brand__logo { height: 46px; }
}
