@media (max-width: 1199px) {
    :root { --container: min(100% - 40px, 1040px); }
    .container-wide { width: calc(100% - 32px); }
    .glass-navbar { min-height: 76px; padding: 10px 14px 10px 22px; }
    .brand { flex-basis: 195px; }
    .brand img { width: 195px; }
    .menu-toggle { display: block; margin-left: auto; }
    .site-navigation { position: fixed; top: 0; right: 0; z-index: 1001; display: flex; width: min(390px, 88vw); height: 100dvh; flex-direction: column; align-items: stretch; justify-content: flex-start; gap: 4px; padding: 118px 28px 32px; color: var(--white); background: var(--burgundy-dark); box-shadow: -24px 0 60px rgba(var(--burgundy-dark-rgb), .42); transform: translateX(105%); transition: transform .25s ease; }
    .site-navigation.open { transform: translateX(0); }
    .site-navigation a { min-height: 52px; padding: 0 10px; border-bottom: 1px solid rgba(var(--white-rgb), .12); font-size: 1.08rem; }
    .site-navigation a::after { display: none; }
    .header-actions { position: fixed; right: 28px; bottom: 34px; z-index: 1002; display: grid; width: min(334px, calc(88vw - 56px)); grid-template-columns: 1fr 1fr; transform: translateX(calc(100% + 70px)); transition: transform .25s ease; }
    body.menu-open .header-actions { transform: translateX(0); }
    body.menu-open .menu-toggle { position: fixed; top: 32px; right: 30px; z-index: 1003; }
    .hero-grid { grid-template-columns: minmax(0, 760px); }
    .home-service-grid { grid-template-columns: repeat(2, 1fr); }
    .work-grid { grid-template-columns: repeat(2, 1fr); }
    .process-grid { grid-template-columns: repeat(2, 1fr); }
    .process-grid li:nth-child(2) { border-right: 1px solid rgba(var(--white-rgb), .18); }
    .process-grid li:nth-child(n+3) { border-top: 0; }
    .stats-grid { grid-template-columns: repeat(2, 1fr); }
    .footer-grid { grid-template-columns: 1.2fr .8fr 1fr; }
    .footer-grid > :last-child { grid-column: 1 / -1; }
    .service-copy { padding: 50px; }
    .service-hero-grid, .detail-split { gap: 46px; }
    .article-layout { grid-template-columns: minmax(0,1fr) 270px; gap: 40px; }
    .feature-grid { grid-template-columns: repeat(2, 1fr); }
    .feature-grid article:nth-child(2) { border-right: 0; }
    .feature-grid article:nth-child(n+3) { border-top: 1px solid var(--line); }
    .provided-services ul { grid-template-columns: repeat(2, 1fr); }
    .provided-services li:nth-child(2) { border-right: 0; }
    .provided-services li:nth-child(n+3) { border-top: 1px solid var(--line); }
}

@media (max-width: 767px) {
    :root { --container: calc(100% - 32px); }
    body { font-size: 15px; }
    .eyebrow { font-size: .875rem; letter-spacing: .16em; }
    h1 { font-size: clamp(2.35rem, 12vw, 3.8rem); }
    h2 { font-size: clamp(1.8rem, 9vw, 2.8rem); }
    .container-wide { width: calc(100% - 20px); }
    .section-space { padding-block: 72px; }
    .section-lines::before, .section-lines::after { width: 42vw; }
    .split-heading { grid-template-columns: 1fr; gap: 16px; }
    .section-heading { margin-bottom: 38px; }
    .glass-navbar { min-height: 68px; padding: 8px 10px 8px 16px; border-radius: 18px; }
    .brand { flex-basis: 172px; }
    .brand img { width: 172px; }
    .menu-toggle { width: 48px; height: 48px; }
    body.menu-open .menu-toggle { top: 26px; right: 22px; }
    .home-hero { min-height: 760px; padding: 132px 0 82px; }
    .home-hero::before { background: linear-gradient(90deg, rgba(var(--burgundy-dark-rgb), .94), rgba(var(--burgundy-dark-rgb), .8) 68%, rgba(var(--burgundy-dark-rgb), .54)); }
    .hero-media img { object-position: 64% center; }
    .hero-grid { grid-template-columns: 1fr; }
    .hero-copy h1 { margin-bottom: 22px; }
    .hero-actions { display: grid; grid-template-columns: 1fr; }
    .hero-actions .button { width: 100%; }
    .hero-service-stack { grid-template-columns: 1fr 1fr; }
    .hero-service-card { grid-template-columns: 42px 1fr; min-height: 84px; padding: 14px; transform: none; }
    .hero-service-card:hover { transform: translateY(-2px); }
    .hero-orbit-one { right: -350px; }
    .home-service-grid { grid-template-columns: 1fr; }
    .home-service-card { min-height: 260px; }
    .work-grid, .compact-blog-grid { grid-template-columns: 1fr; }
    .home-page .works-section { overflow: hidden; }
    .home-page .works-section .work-grid {
        display: flex;
        width: 100%;
        gap: 16px;
        padding: 4px 0 20px;
        overflow-x: auto;
        overscroll-behavior-inline: contain;
        scroll-snap-type: x mandatory;
        scrollbar-width: none;
        -webkit-overflow-scrolling: touch;
    }
    .home-page .works-section .work-grid::-webkit-scrollbar { display: none; }
    .home-page .works-section .work-card {
        width: 82vw;
        max-width: 82vw;
        flex: 0 0 82vw;
        scroll-snap-align: start;
        scroll-snap-stop: always;
    }
    .process-section { padding-block: 60px; }
    .process-grid { grid-template-columns: 1fr; }
    .process-grid li { min-height: 0; padding: 20px 18px; border-right: 1px solid rgba(var(--white-rgb), .18); }
    .process-grid li:nth-child(n+2) { border-top: 0; }
    .process-grid span { font-size: 1.15rem; }
    .process-grid h3 { margin: 16px 0 6px; }
    .process-grid p { line-height: 1.55; }
    .stats-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
    .stat-card { min-height: 132px; gap: 8px; padding: 20px 16px; }
    .stat-value { font-size: clamp(2.25rem, 12vw, 3rem); }
    .stat-card > span { font-size: .88rem; }
    .about-grid, .about-story { grid-template-columns: 1fr; gap: 36px; }
    .about-monogram { max-height: 300px; }
    .inner-main { padding-top: 100px; }
    .page-intro { padding: 64px 0 58px; }
    .page-intro h1 { font-size: clamp(2.2rem, 11vw, 3.6rem); }
    .breadcrumb { margin-bottom: 30px; }
    .breadcrumb ol { justify-content: flex-start; }
    .service-panel, .service-panel.reverse { grid-template-columns: 1fr; min-height: 0; }
    .service-panel .service-copy, .service-panel.reverse .service-copy { order: 1; padding: 38px 26px 30px; }
    .service-panel .service-visual, .service-panel.reverse .service-visual { order: 2; min-height: 310px; padding: 22px; }
    .service-visual picture { min-height: 270px; }
    .service-hero, .project-hero, .reference-hero { padding: 52px 0 64px; }
    .service-hero-grid, .detail-split { grid-template-columns: 1fr; gap: 38px; }
    .service-hero-grid > div:first-child, .detail-split > div:first-child { order: 1; }
    .service-hero-grid > div:last-child, .detail-split > div:last-child { order: 2; }
    .service-body { gap: 64px; }
    .related-service-grid { grid-template-columns: 1fr; }
    .featured-post { min-height: 440px; }
    .featured-copy { padding-bottom: 44px; }
    .blog-row, .blog-row.reverse { grid-template-columns: 1fr; gap: 28px; }
    .blog-row .blog-copy, .blog-row.reverse .blog-copy { order: 1; }
    .blog-row .blog-image, .blog-row.reverse .blog-image { order: 2; }
    .article-header h1 { font-size: clamp(2.2rem, 10vw, 3.6rem); }
    .article-layout { display: flex; flex-direction: column; gap: 34px; }
    .article-toc { position: static; order: -1; width: 100%; }
    .toc-toggle { display: flex; align-items: center; justify-content: space-between; margin: 0; pointer-events: auto; cursor: pointer; }
    .article-toc nav { display: none; padding-top: 18px; }
    .article-toc nav.open { display: block; }
    .article-toc .button { display: none; }
    .feature-grid, .provided-services ul { grid-template-columns: 1fr; }
    .feature-grid article, .provided-services li { border-right: 0; border-top: 1px solid var(--line); }
    .feature-grid article:first-child, .provided-services li:first-child { border-top: 0; }
    .process-inline, .live-site-card { align-items: flex-start; flex-direction: column; padding: 28px; }
    .identity-stage, .device-stage { padding: 14px; }
    .live-preview-placeholder { grid-template-columns: 1fr; gap: 24px; padding: 28px; }
    .reference-pagination { grid-template-columns: 1fr; }
    .reference-pagination a + a { border-top: 1px solid var(--line); border-left: 0; }
    .contact-section { padding: 26px 0 36px; }
    .contact-page .breadcrumb { margin-bottom: 18px; }
    .contact-intro { margin-bottom: 26px; }
    .contact-intro h1 { margin-bottom: 14px; font-size: clamp(2.15rem, 10vw, 3rem); }
    .contact-grid { grid-template-columns: 1fr; gap: 32px; }
    .contact-info-panel, .contact-grid > section:last-child { padding: 22px; }
    .form-grid { grid-template-columns: 1fr; }
    .form-full { grid-column: auto; }
    .map-heading { align-items: flex-start; flex-direction: column; }
    .map-section { margin-top: 24px; padding: 18px; }
    .map-heading { gap: 16px; }
    .map-heading .button { width: 100%; }
    .map-frame { min-height: 280px; margin-top: 16px; }
    .map-section iframe { min-height: 280px; height: 280px; }
    .footer-cta-inner { grid-template-columns: 70px 1fr; gap: 18px; padding: 26px 22px; }
    .footer-cta-icon { width: 64px; height: 64px; font-size: 2rem; }
    .footer-cta-inner .button { grid-column: 1 / -1; width: 100%; }
    .footer-grid { grid-template-columns: 1fr; gap: 38px; }
    .footer-grid > :last-child { grid-column: auto; }
    .footer-bottom { align-items: flex-start; flex-direction: column; }
    .footer-bottom nav { justify-content: flex-start; }
    .floating-whatsapp { right: max(16px, env(safe-area-inset-right)); bottom: max(16px, env(safe-area-inset-bottom)); width: 48px; height: 48px; font-size: 1.5rem; }
    .cookie-banner { right: 10px; bottom: 10px; left: 10px; grid-template-columns: 1fr; padding: 18px; }
    .cookie-actions { grid-template-columns: 1fr; }
    .cookie-actions .button { width: 100%; }
    .cookie-preferences { grid-column: auto; }
    .cookie-preferences label { display: block; margin: 10px 0; }
    .cookie-preferences .button { width: 100%; margin: 12px 0 0; }
}

@media (min-width: 1200px) and (max-height: 820px) {
    .home-hero { padding: 112px 0 34px; }
    .hero-copy h1 { margin-bottom: 18px; font-size: clamp(3rem, 8.2vh, 4.35rem); }
    .hero-lead { margin-bottom: 24px; font-size: 1.05rem; }
    .scroll-cue { bottom: 14px; height: 42px; }
}

@media (min-width: 1200px) and (max-height: 700px) {
    .home-hero { padding-top: 104px; padding-bottom: 26px; }
    .hero-copy .eyebrow { margin-bottom: 10px; }
    .hero-copy h1 { margin-bottom: 14px; font-size: clamp(2.75rem, 7.5vh, 3.6rem); }
    .hero-lead { max-width: 620px; margin-bottom: 18px; line-height: 1.5; }
    .scroll-cue { display: none; }
}

@media (max-width: 430px) {
    .hero-service-stack { grid-template-columns: 1fr; }
    .hero-service-card { min-height: 70px; }
    .article-meta { align-items: flex-start; flex-direction: column; gap: 6px; }
}

@media (min-width: 768px) and (max-width: 1024px) {
    .service-panel { min-height: 360px; }
    .service-copy { padding: 82px 38px 38px; }
    .contact-grid { grid-template-columns: 1fr; }
}
