/* ==========================================================================
   1. DUŻE EKRANY (1441px+)
   ========================================================================== */

@media (min-width: 1441px) {
    .subpage--kontakt .sub-hero__image { width: calc(82.8px + 2rem); }
    .subpage--kontakt .sub-hero__image img { width: 82.8px; }
    .subpage--kontakt .sidebar-email-decor { display: none; }
    .contact-form-section .accent-element { left: calc(var(--decor-width) * -1); }
    .subpage--projekty .sub-hero__image { width: calc(62.8px + 2rem); }
    .subpage--projekty .sub-hero__image img { width: 62.8px; }    
    .facts__pos--1 { top: 0; }
}

@media (min-width: 1600px) {
    /*.facts__container,
    .site-banner__container {
        padding-right: var(--sb-w);
        padding-left: var(--pad-sb-x2);
        max-width: var(--max-width);
        margin: 0 auto;
    }

    .facts__label {
        left: calc(var(--pad-sb-x2) + var(--gap-floating));
    }*/
}

@media (min-width: 1920px) {
    .site-wrapper {
        margin-left: auto;
        margin-right: auto;
        max-width: none;
        position: relative;
    }
    .sidebar-blue { display: none; }
    .idx-item__inner {
        padding-right: var(--pad-sb-x2);
        padding-left: var(--pad-sb-x2);
    }
    .idx-item__inner::after {
        left: var(--pad-sb-x2);
        right: var(--pad-sb-x2);
    }
    .facts {
        padding-right: var(--pad-sb-x2);
        padding-left: var(--pad-sb-x2);
    }
    .facts__container,
    .site-banner__container {
        padding-right: 0;
        padding-left: 0;
        max-width: calc(var(--max-width) - var(--sb-w));
        margin: 0 auto;
    }
    .facts__bg .visual-media {
        aspect-ratio: 3 / 2;
    }
    .footer {
        padding-right: var(--pad-sb-x2);
    }
    .footer__container {
        max-width: calc(var(--max-width) - var(--sb-w));
    }
}

@media (min-width: 1921px) {
    .juggling-clubs { display: none; }
    .contact-form-section .accent-element { left: calc(var(--decor-width) * -3); }
    .lang-switcher-abs {
        top: 1.25rem;
        left: 1.25rem;
        width: 4.75rem;
    }
}

/* ==========================================================================
   2. LAPTOPY I MAŁE DESKTOPY (1440px - 1201px)
   ========================================================================== */

@media (max-width: 1439px) {
    .header__nav { width: 100%; }
    .nav__list { justify-content: flex-end; gap: var(--n-w); }
    .subpage--kontakt .content-list__item:last-child p { white-space: normal; }
    
    /* Facts */
    .facts__label { left: auto; right: var(--gap-floating); }
    .facts__pos--1 { top: 0; left: var(--pad-sb-x3); }
    .facts__group { left: var(--sb-w); }
    .facts__group .facts__box.facts__align-start .floating-item { display: none; }
    .facts__group .facts__box.facts__overlap-top { margin-bottom: calc(4.375rem - var(--sb-w)); }
}

@media (max-width: 1365px) {
    .logo, .hero__row-v1, .hero__row-v2 { padding-left: calc(var(--sb-w) + var(--n-w)); }
    
    /* About */
    .about__content-grid { margin-top: -1.75rem; }
    .about__portrait-wrapper .accent-element { left: var(--decor-height); }
    
    /* Facts */
    .facts__box { padding: var(--n-w); }
    .facts__group { left: var(--pad-sb-x2); }
    .facts__group .facts__box.facts__overlap-top { margin-bottom: 2.5rem; }
    .facts__pos--1 { width: 305.833px; }
    .facts__align-start { width: 297.5px; }
    .facts__overlap-top { width: 307.267px; }
    .facts__pos--4 { width: 405.983px; }
    .facts__aside-item--top, .facts__aside-item--bottom { width: 340.483px; }
    
    /* Footer & Subpages */
    .footer__extra .accent-element { left: 0; }
    .subpage--wspolpraca .sub-hero__container > .sub-hero-clown { left: calc(var(--sb-w) / 2); }
    .subpage--wspolpraca .sub-hero__container > .sub-hero-clown .accent-element { left: calc(var(--decor-width) * -1 / 3); }
}

@media (max-width: 1280px) {
    .subpage--wspolpraca .sub-hero__container > .sub-hero-clown { left: calc(var(--sb-w) * -1 / 2); height: 30vw; }
    .subpage--wspolpraca .floating-cta { position: absolute; }
    .subpage--wspolpraca .floating-cta__btn { padding: 0.625rem calc(var(--sb-w) / 2); }
    .subpage.subpage--wspolpraca .juggling-clubs { left: auto; right: -3.5rem; }
    .subpage--projekty.post-type-archive-projekty .projects-archive header {
        padding-left: calc(var(--sb-w) + var(--n-w));
        padding-right: var(--n-w);
    }
    .subpage--projekty .split-block--publications .split-block__img--clown::after {
        left: calc(var(--sb-w) * -.25);
    }
}

/* ==========================================================================
   3. GLOBALNE STYLE MOBILNE (Overlay & Toggle)
   ========================================================================== */

.nav-toggle { display: none; }

.mobile-overlay {
    display: none !important;
    position: fixed;
    top: 0; right: 0; bottom: 0; left: 0;
    width: 100vw;
    height: 100dvh;
    background-color: var(--color-blue-light);
    mix-blend-mode: luminosity;
    padding: var(--pad-sb-x2);
    z-index: 1000000;
}

.mobile-overlay.is-open {
    display: flex !important;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

body.no-scroll { overflow: hidden; }

/* ==========================================================================
   4. TABLETY LANDSCAPE (1200px)
   ========================================================================== */

@media (max-width: 1200px) {
    :root {
        --n-w: 2rem;
        --n-h: 1rem;
        --sb-w: 2rem;
        --decor-width: 4.95rem;
        --decor-height: 3.7rem;
        --space-xs: 0.5rem;
        --facts-aside-h: calc(var(--decor-width) * 2 * 1.414);
    }

    /* Menu & Navigation */
    .header .nav__list { display: none !important; }
    .nav-toggle {
        display: flex !important;
        position: fixed;
        top: .5rem; right: 0;
        z-index: 1000001;
        background: transparent;
        border: none;
        cursor: pointer;
        padding: 20px;
    }
    .hamburger, .hamburger::before, .hamburger::after {
        content: "";
        display: block;
        width: 26px; height: 2px;
        background: var(--color-black);
        transition: all 0.3s ease;
        position: relative;
    }
    .hamburger::before { top: -8px; position: absolute; left: 0; }
    .hamburger::after { bottom: -8px; position: absolute; left: 0; }
    .nav-toggle.is-active .hamburger { background: transparent; }
    .nav-toggle.is-active .hamburger::before { transform: translateY(8px) rotate(45deg); background: var(--color-black) !important; }
    .nav-toggle.is-active .hamburger::after { transform: translateY(-8px) rotate(-45deg); background: var(--color-black) !important; }

    /* Mobile Overlay Content */
    .mobile-overlay .nav__list {
        display: flex !important;
        flex-direction: column;
        justify-content: space-evenly;
        align-items: center;
        gap: 0;
        list-style: none;
        padding: 0; margin: 0;
        height: 100%;
        max-height: 700px;
    }
    .mobile-overlay .nav__item { width: 100%; display: flex; align-items: center; margin: 0; }
    .mobile-overlay .nav__link {
        font-family: var(--font-notch);
        font-weight: var(--fw-semibold);
        font-size: 2.25rem;
        color: var(--color-dark);
        text-decoration: none;
        line-height: 1.2;
        text-align: center;
    }

    /* Lang Switcher */
    .site-wrapper > .lang-switcher-abs { display: none !important; }
    .lang-switcher-abs {
        background: none;
        top: 1.25rem; left: 1.25rem;
        width: auto; aspect-ratio: auto;
        gap: 1.25rem;
    }
    .mobile-menu-lang__link.is-active::before { content: '['; }
    .mobile-menu-lang__link.is-active::after { content: ']'; }

    /* Layout & Base Elements */
    .container--padded, .subpage--projekty .projects-archive header { padding-left: var(--pad-sb-x2); padding-right: var(--sb-w); }
    .logo-img { width: 8rem; }
    .logo, .hero__row-v1, .hero__row-v2 { padding-left: var(--pad-sb-x2); }
    .header__nav { padding-right: var(--sb-w); }
    .nav__list { margin-top: 0.5rem; gap: var(--sb-w); }
    .nav__link, .type-label, .type-label p, .sidebar-blue__text { font-size: 0.725rem; }
    .section-padding, .subpage--projekty .split-block--publications, .subpage--projekty .projects-archive {
        padding-top: var(--section-pt, calc(var(--sb-w) * 2));
        padding-bottom: var(--section-pb, calc(var(--sb-w) * 2));
    }

    /* Visual Elements & Accents */
    .accent-element { height: var(--decor-height); }
    .accent-element.accent-element--2 { width: calc(var(--decor-width) * 2 + .3rem); background-size: var(--decor-width) var(--decor-height); background-repeat: space; }
    .accent-element.accent-element--3 { width: calc(var(--decor-width) * 3 + .3rem * 2); background-size: var(--decor-width) var(--decor-height); background-repeat: space; }
    .accent-element.accent-element--4 { width: calc(var(--decor-width) * 4 + .3rem * 3); background-size: var(--decor-width) var(--decor-height); background-repeat: space; }
    .juggling-clubs { scale: 0.8; bottom: calc(-2rem + var(--lift, 0px)); }
    .floating-item .floating-item__caption { width: 140%; }
    .video-player__play-button { width: calc(var(--space-m) * 1.5); height: calc(var(--space-m) * 1.5); }

    /* Hero Section */
    .hero__container { margin-top: -0.45rem; }
    .hero__row-v1 { margin-bottom: -2.4em; }
    .hero__title { line-height: 1.05; }
    .hero__lead, .type-heading-m:not(.type-heading-m--large), .type-heading-m:not(.type-heading-m--large) p { font-size: 1.125rem; line-height: 1.3; font-weight: var(--fw-regular); }
    .hero__lead { padding-top: calc(3.425vw + 2.4rem); }
    .hero__col-v1 .hero__item { aspect-ratio: 1 / 1.414; height: auto; flex: none; }
    .hero__col-v1 .accent-element { top: -1.8rem; left: -2.475rem; }
    .hero__panorama-box .accent-element, .info-stripe .accent-element { bottom: calc(var(--decor-height) * -1 / 2); }
    .info-stripe .accent-element { left: -4rem; }
    .hero__col-stack, .hero__col-v2 { height: 100%; }
    .hero__caption { display: none; }
    .hero__container .floating-item { bottom: -5.3rem; }

    /* About Section */
    .about { padding-top: var(--space-xxl); }
    .about > .accent-element:first-of-type { top: 8.1rem; }
    .collage-heading { padding: 0 var(--sb-w); }
    .about__visual-col { left: calc(var(--sb-w) / 2 + 1rem); margin-top: calc(var(--space-s) * -1); }
    .about__portrait-col { z-index: 1002; }
    .about__portrait-wrapper { height: calc(100% + (var(--sb-w) * 2)); }
    .about__portrait-wrapper .accent-element { bottom: calc(var(--decor-height) * -1 / 2); }
    .about__portrait-img { height: calc(100% - 1.75em); margin-right: -2.5%; }
    .about__content-grid { margin-top: -1.65rem; row-gap: var(--sb-w); }
    .about__bio .type-label, .about__bio .type-label p, .colophon__label { padding-bottom: var(--space-lh-p); }
    .about__bio .floating-item { display: none; }

    /* Facts Section */
    .facts__label { right: var(--sb-w); }
    .facts__pos--1 { left: var(--pad-sb-x2); }
    .facts__pos--1 .accent-element { top: -1.8rem; right: -2.475rem; left: auto; }
    .facts__pos--4 { left: var(--pad-sb-x2); }
    .facts__aside-wrapper { bottom: -.85rem; grid-template-columns: calc(var(--decor-width) * 2) 1fr; grid-template-rows: repeat(2, calc(var(--decor-width) * 2 * 1.414)); }
    .facts__aside-item--bottom .accent-element { bottom: calc(-1.8rem + .85rem); left: calc(var(--decor-width) * 1.5); }
    .facts__group { left: 0; bottom: calc(var(--facts-aside-h) - .85rem); }
    .facts__group .facts__box.facts__overlap-top { margin-bottom: 1.25rem; }
    /*.lang-pl .facts__group .facts__box.facts__overlap-top { margin-bottom: -1.25rem; }
    .lang-en .facts__group .facts__box.facts__overlap-top { margin-bottom: 2.7rem; }*/
    .facts__group .facts__box.facts__overlap-top .floating-item { display: none; }
    .facts__aside-portrait { width: calc(var(--decor-width) * 2); }
    .facts__pos--1 { width: 289.833px; }
    .facts__align-start { width: 281.5px; }
    .facts__overlap-top { width: 291.267px; }
    .facts__pos--4 { width: 389.983px; }
    .facts__aside-item--top, .facts__aside-item--bottom { width: 292.483px; }

    /* Footer & Rest */
    .footer__nav { flex-direction: column; align-content: center; gap: var(--gap-floating); }
    .footer__brand { justify-content: flex-start; }
    .footer__copyright { padding-bottom: 1.666rem; }
    .footer__extra .accent-element { width: calc(var(--decor-width) * 5 + .3rem * 4); height: var(--decor-height); background-size: var(--decor-width) var(--decor-height); background-repeat: space; left: 0; bottom: 1.925rem; }
    .site-banner { margin-top: calc(-1.775rem + (var(--sb-w) * 2)); }
    .lang-en .site-banner { margin-top: calc(var(--space-lh-p) * 3.5); }
    .colophon__logo { height: var(--space-m); }
    .colophon__media { margin-top: -2.75rem; width: 7rem; }
    .colophon__stiltwalker-lying img, .subpage--projekty .info-stripe .info-stripe__image--stiltwalker-2 { left: 2rem; height: 45rem; }
    .subpage--projekty .info-stripe .info-stripe__image--stiltwalker-2 { top: 82%; }
    .idx-list { padding-top: 0; }
    .type-heading-m--large, .type-heading-m--large p { font-size: 1.75rem; line-height: 1.3; }
    .info-stripe__image--stiltwalker { right: 3rem; }
    .video-player__media-box.decor-logo::after { display: none; }
    .video-player__label { text-align: right; }

    /* Subpages */
    .subpage .sub-hero__title .accent-element { right: auto; left: calc(100% - var(--decor-width) * 2); }
    .subpage--wspolpraca .sub-hero__title .accent-element { right: var(--sb-w); left: auto; }
    .subpage--projekty:not(.subpage--projekty__category) .info-stripe .info-stripe__container { grid-template-columns: 1.5fr 0.5fr; }
    .subpage--projekty:not(.subpage--projekty__category) .info-stripe .info-stripe__image { height: 145%; }
    .subpage--projekty .info-stripe .info-stripe__image--circus { height: 145%; }
    .subpage--projekty .sub-hero__title .accent-element { right: calc(var(--sb-w) * -1); left: auto; }
    .subpage--projekty .sub-hero__image .accent-element { display: none; }
    .subpage--projekty .split-block { padding-bottom: calc(var(--sb-w) * 2); }
    .subpage--projekty .sub-hero__title { justify-content: center; }
    .subpage--projekty .text-center { text-align: center; margin-top: calc(var(--sb-w) * 2); padding-bottom: 0px; font-size: 1.125rem; line-height: 1.3; font-weight: var(--fw-regular); text-transform: none; }
    .subpage--wspolpraca .services__title .link-clean { display: block; width: auto; }
    .subpage--wspolpraca .sub-hero__container > .sub-hero-clown { left: calc(var(--sb-w) * -1); height: 34.4vw; }
    .subpage--wspolpraca .sub-hero__container > .sub-hero-clown .accent-element { left: var(--sb-w); }
    .subpage--kontakt .sidebar-email-decor__text { right: 1.55rem; }
    .subpage--kontakt .contact-cta .contact-email-link { font-size: clamp(0, 5.875vw, 4.635rem); }
    .container--narrow { max-width: 43.5vw; }
    .subpage--projekty__category .info-stripe__content .type-heading-m { gap: 0; }
    .term-badania-wystepow-ulicznych .visual-wrapper--performances {
        background-position: 60% center;
        top: -1.25rem;
        bottom: -1.25rem;
    }
    .subpage.single-projekty .sub-hero__container { padding-top: calc(var(--space-lh-p) * 3); }
    .subpage--projekty .project-header-meta.text-center { margin-top: 0; }
}

@media (max-width: 1080px) {   
    .facts__bg .visual-media { aspect-ratio: 3 / 2; }
}

/* ==========================================================================
   5. TABLETY PORTRAIT (1023px)
   ========================================================================== */

@media (max-width: 1023px) {
    .subpage--wspolpraca .sub-hero__container > .sub-hero-clown { top: auto; }
    .subpage--wspolpraca .sub-hero__container > .sub-hero-clown .accent-element { left: calc(var(--sb-w) * -3); }
    .subpage--kontakt .sidebar-email-decor, .subpage--projekty .split-block--publications .split-block__visuals, .subpage--projekty .collage-heading__img-wrap--h { display: none; }
    .subpage--projekty .split-block--publications, .subpage--projekty .projects-archive { padding-top: calc(var(--sb-w) * 2); padding-bottom: calc(var(--sb-w) * 2); }
    .subpage--projekty .split-block--publications .split-block__grid { display: block; }
    .subpage--projekty .projects-archive .accent-element { bottom: calc(var(--decor-height) * -1.75); right: var(--decor-height); left: auto; }
    .idx-item__columns { gap: calc(var(--pad-sb-x2) * 2); }
    .subpage--projekty__category .video-player__media-box-1 + .accent-element { right: calc(var(--decor-width) * -2); }
    .subpage--projekty__category .video-player__media-box-2 .accent-element { right: calc(var(--sb-w) * -1); }
    .subpage--projekty__category .video-player__media-box-3 .accent-element { left: calc(var(--sb-w) * -1); }
    .container--medium { max-width: 100%; }
    .video-player__play-button { background: var(--color-white); mix-blend-mode: luminosity; }
    .video-player__play-button svg { fill: var(--color-red-bright); }
}

/* ==========================================================================
   6. DUŻE TELEFONY (960px)
   ========================================================================== */

@media (max-width: 960px) {
    :root {
        --sb-w: 1.25rem;
        --pad-sb-x2: 1.25rem;
    }

    /* Layout & Spacing */
    .btn { height: calc(var(--sb-w) * 2); }
    .section-padding, .subpage--projekty .split-block--publications, .subpage--projekty .projects-archive {
        padding-top: var(--section-pt, calc(var(--sb-w) * 4));
        padding-bottom: var(--section-pb, calc(var(--sb-w) * 4));
    }
    .video-player { padding-top: var(--section-pt, calc(var(--sb-w) * 4)); padding-bottom: var(--section-pb, calc(var(--sb-w) * 4 - var(--gap-floating) - .9rem)); }
    .home .video-player {
        padding-bottom: var(--section-pt, calc(var(--sb-w) * 4));
    }
    .colophon__grid { padding-top: var(--section-pt, calc(var(--sb-w) * 4)); padding-bottom: var(--section-pb, calc(var(--sb-w) * 4)); }
    .footer { padding-top: var(--section-pt, calc(var(--sb-w) * 3)); padding-bottom: var(--section-pb, calc(var(--sb-w) * 3)); }
    .footer__copyright { padding-bottom: var(--section-pb, calc(var(--sb-w) * 2)); }
    .footer__extra .accent-element { bottom: 0; }
    .sidebar-blue { display: none; }
    .juggling-clubs { left: 0; }
    .site-banner { margin-top: calc(-1.625rem + (var(--sb-w) * 4)); }

    /* Typography & Hero */
    .collage-heading { padding: 0; }
    .collage-heading .type-display, .collage-heading .type-display p, .subpage--projekty .collage-heading .type-display, .subpage--projekty .collage-heading .type-display p { font-size: clamp(0rem, 8.15vw, 6.5rem); }
    .hero__row-v1 { margin-bottom: -4.5em; }
    .hero__lead { padding-top: calc(3.425vw + 4.5rem); }
    .hero__col-v1 .accent-element { left: calc(var(--sb-w) * -1); }

    /* About Section */
    .about { padding-top: var(--space-xxl); }
    .about__container > .accent-element:first-of-type { top: calc(var(--decor-height) * -1 / 2); left: 0; }
    .about__content-grid { grid-template-columns: min-content .9fr 1.1fr; row-gap: calc(var(--space-lh-p) * 2); }
    .about__portrait-wrapper { height: calc(100% + calc(var(--sb-w) * 4)); }
    .about__portrait-wrapper .accent-element { left: var(--decor-height); }
    .about__portrait-img { margin-right: 15%; height: 100%; }
    .about__bio .floating-item { display: none; }

    /* Info Stripe & Rest */
    .info-stripe__btn { margin-top: calc(var(--sb-w) * 3); }
    .info-stripe__image--stiltwalker { right: 0; }
    .colophon__grid { grid-template-columns: 1fr 34%; }
    .colophon__media { margin-top: -1.5rem; }
    .video-player__label { text-align: left; }

    /* Facts Redesign (Mobile Table Mode) */
    .facts__bg { display: none; }
    .facts, .facts__container, .facts__stage, .facts__group, .facts__aside-wrapper { display: block; width: 100%; height: auto; position: static; margin: 0; padding: 0; }
    .facts__box, .facts__aside-item { position: static; width: 100%; background: transparent; color: inherit; padding: 0; margin: 0; border: none; }
    .facts__pos--1, .facts__align-start, .facts__overlap-top, .facts__pos--4, .facts__aside-item--top, .facts__aside-item--bottom { width: 100%; }
    .facts__box p br, .facts__aside-item p br, .facts__aside-portrait { display: none; }
    .facts__overlap-top, .facts__align-start { margin: 0; z-index: auto; }
    .facts { background: url(img/facts-bg.webp) no-repeat; background-size: auto 150%; background-position: center bottom; padding: calc(var(--sb-w) * 4) var(--sb-w); position: relative; }
    .facts__stage { padding: calc(var(--sb-w) * 2) calc(var(--sb-w) * 2) calc(var(--sb-w) * 2 - var(--space-lh-p)); position: relative; }
    .facts__stage::before { content: ''; background-color: var(--color-blue-light); mix-blend-mode: luminosity; position: absolute; top: 0; right: 0; bottom: 0; left: 0; }
    .facts__label { position: absolute; top: 1.1rem; right: auto; left: var(--sb-w); }
    .facts__box p, .facts__aside-item p { margin: 0; width: 100%; position: relative; padding: 0 0 var(--space-lh-p) calc(var(--space-s) * 2); }
    .facts__box p::before, .facts__aside-item p::before { content: ''; background: url(img/accent-bullet.svg) no-repeat; background-size: var(--space-s) var(--space-s); background-position: center center; width: var(--space-s); height: var(--space-s); position: absolute; top: 0.15em; left: 0; }
    .facts__group .facts__box.facts__overlap-top { margin-bottom: 0; }
    .facts__pos--1 .accent-element { top: calc(var(--sb-w) * -4 - calc(var(--decor-height) / 2)); right: calc(var(--sb-w) * -1); }
    .facts__aside-item--bottom .accent-element { bottom: calc(var(--sb-w) * -4 - calc(var(--decor-height) / 2)); left: calc(var(--sb-w) * -1); }

    /* Subpages */
    .subpage .sub-hero__container { padding-top: calc(var(--space-lh-p) * 2); }
    .subpage .sub-hero__title { font-size: clamp(0rem, 8.5vw, 8.5vw); }
    .subpage .type-desc, .subpage .type-desc p { font-size: clamp(0rem, 1.95vw, 1.475rem); }
    .idx-item__inner, .subpage--projekty .idx-item__inner, .subpage--projekty .projects-archive header, .subpage--projekty.post-type-archive-projekty .projects-archive header { padding-right: var(--pad-sb-x2); padding-left: var(--pad-sb-x2); }
    .idx-item__inner::after { right: var(--pad-sb-x2); left: var(--pad-sb-x2); }
    .type-heading-l, .type-heading-l p { font-size: 2.25rem; line-height: 1.2; }
    .container--narrow { max-width: 50.25vw; }
    .contact-form-section .accent-element { left: calc(var(--decor-width) * -1); }
    .subpage--wspolpraca .sub-hero__container { padding-left: 0; }
    .subpage--projekty:not(.subpage--projekty__category) .info-stripe .info-stripe__image { height: 118%; }
    .subpage--projekty .split-block { padding-bottom: calc(var(--sb-w) * 4); }
    .subpage--projekty .info-stripe .info-stripe__image--stiltwalker-2 { top: 79%; left: 0; }
    .subpage--projekty .info-stripe .info-stripe__image--circus { height: 112%; }
}

/* ==========================================================================
   7. TELEFONY LANDSCAPE (899px)
   ========================================================================== */

@media (max-width: 899px) {
    #dynamic-cta { display: none; }
    .subpage--wspolpraca .btn.mobile-only { display: inline-flex !important; padding: 0.625rem calc(var(--sb-w) / 2); text-align: center; }
    .logo { line-height: 0; }
    .footer { padding-top: var(--section-pt, calc(var(--sb-w) * 2)); padding-bottom: var(--section-pb, calc(var(--sb-w) * 2)); }
    .footer__copyright, .footer__author { max-width: 185px; line-height: 1.4; }
    .footer__author { text-align: left; }

    /* Hero Vertical Stack */
    .hero__container { display: flex; flex-direction: column; gap: calc(var(--space-lh-p) * 2); margin-top: 0; padding-top: calc(var(--space-lh-p) * 2); height: auto; max-width: 100%; }
    .hero__content, .hero__visuals { display: block; width: 100%; }
    .hero__content-grid { display: flex; flex-direction: column; gap: calc(var(--space-lh-p) * 2); }
    .hero__row-v1, .hero__row-v2 { grid-column: auto; grid-row: auto; padding: 0 var(--sb-w); margin: 0; }
    .hero__title { font-size: clamp(1.55rem, 6.15vw, 6.15vw); }
    .hero__lead { padding-top: 0; padding-bottom: .625rem !important; }
    .hero__container .floating-item { right: calc(var(--sb-w) * 5); left: auto; margin: 0; }
    .hero__visuals-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--gap-grid); padding: 0 var(--sb-w); align-items: stretch; }
    .hero__col-v1, .hero__col-stack, .hero__col-v2 { grid-column: auto; grid-row: auto; width: 100%; margin: 0; }
    .hero__col-v1, .hero__col-v2 { aspect-ratio: 3 / 4.5; height: auto; }
    .hero__col-v1 .hero__item { aspect-ratio: 3 / 4.5; }
    .hero__col-v2 .hero__img { object-position: left bottom; }
    .hero__col-stack { display: flex; flex-direction: column; gap: var(--gap-grid); height: 100%; }
    .hero__col-stack .hero__item { flex: 1; display: flex; min-height: 0; }
    .hero__col-stack .hero__img { width: 100%; height: 100%; object-fit: cover; }
    .hero__video-wrap { height: 100%; }
    .hero__panorama-box { grid-column: 1 / span 3; width: 100%; height: auto; aspect-ratio: 16 / 9; margin-top: 0; }
    .hero__panorama-box .hero__item { height: 100%; }
    .hero__panorama-box .accent-element { bottom: 50%; right: calc(var(--sb-w) * -1); }

    /* About & Spacing */
    .about > .accent-element:first-of-type { top: 6.725rem; left: 0; }
    .about__portrait-wrapper .accent-element { left: calc(var(--decor-height) * 3); }
    .collage-heading__word-overlap::after { left: calc(100% + 0.5em); }
    .about__content-grid { grid-template-columns: 0 1.2fr .8fr; margin-top: -1.55rem; }
    .about__visual-col { position: absolute; top: 70.15%; left: calc(var(--sb-w) * -2); }
    .about__visual-col .about__label { margin-left: calc(var(--sb-w) * 4.5 + var(--sb-w)); width: 7rem; }
    .about__portrait-img { margin-right: -28%; height: calc(100% - 1.75em); }
    .info-stripe__image--clown { left: -5.5%; }
    .colophon__grid { grid-template-columns: 1fr 30%; }
    .colophon__logo { height: 2rem; }

    /* Subpages */
    .subpage .desktop-only { display: none !important; }
    .subpage .mobile-only { display: block !important; }
    .subpage .sub-hero__image.mobile-only {
        display: inline-block !important;
        padding: 0;
        line-height: 1;
        position: relative;
    }
    .subpage .sub-hero__container { padding-top: calc(var(--space-lh-p) * 3); }
    .subpage .sub-hero__title { font-size: clamp(0rem, 8.15vw, 6.5rem); }
    .subpage .sub-hero__image img {
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        margin: auto;
        width: 5.75vw;
        height: auto;
    }
    .subpage:not(.subpage--kontakt) .sub-hero__description { margin-top: var(--space-m); text-align: center; }
    .subpage.subpage--media .sub-hero__description, .subpage .sub-hero__description .type-desc, .subpage .sub-hero__description .type-desc p { margin-right: auto; margin-left: auto; max-width: 26rem; }
    .subpage--media .idx-list { padding-top: 0; }
    .subpage.subpage--wspolpraca .juggling-clubs { right: auto; left: 2rem; bottom: calc(-7rem + var(--lift, 0px)); }
    .subpage--wspolpraca .services__container { max-width: 22rem; padding-top: 0; position: relative; }
    .subpage--wspolpraca .services__container::before { content: ''; background: url(img/decor-clown-04.webp) no-repeat; background-size: contain; background-position: right bottom; position: absolute; top: 0; bottom: 0; width: calc(100vw - var(--sb-w) * 2); pointer-events: none; }
    .subpage--wspolpraca .services__container::after { content: ''; position: absolute; width: 100vw; background-image: url('img/logo-accent-red.svg'); background-size: var(--decor-width) var(--decor-height); background-repeat: no-repeat; background-position: top right; height: var(--decor-height); top: calc(var(--decor-height) / -2); right: calc(var(--decor-width) * -2); z-index: var(--acc-z, 1); pointer-events: none; }
    .subpage--wspolpraca .sub-hero__container > .sub-hero-clown { display: none; }
    .subpage .sub-hero__description .type-desc, .subpage .sub-hero__description .type-desc p { text-align: center; padding-bottom: 0; font-size: 1.125rem; line-height: 1.3; font-weight: var(--fw-regular); }
    .subpage--wspolpraca .split-block--1 .split-block__grid, .subpage--wspolpraca .split-block--3 .split-block__grid { direction: rtl; }
    .subpage--wspolpraca .split-block--1 .split-block__content, .subpage--wspolpraca .split-block--1 .split-block__visuals, .subpage--wspolpraca .split-block--3 .split-block__content, .subpage--wspolpraca .split-block--3 .split-block__visuals { direction: ltr; }
    .subpage--wspolpraca .split-block--2.split-block--reverse .split-block__grid { direction: ltr; }
    .subpage--wspolpraca .split-block--1 .floating-item { display: none; }
    .subpage--projekty .split-block__grid { display: flex; flex-direction: column; gap: calc(var(--sb-w) * 4); }
    .term-badania-wystepow-ulicznych .visual-wrapper--performances {
        background-position: 65% center;
        top: -.25rem;
        bottom: -.25rem;
    }
    .split-block__grid .accent-element { display: none; }
    .container--narrow { max-width: 49.5vw; }
    .subpage--kontakt .contact-form .form-group textarea { height: calc(.935rem * 1.5 * 7.5); }
    .subpage--projekty:not(.subpage--projekty__category) .info-stripe .info-stripe__container { grid-template-columns: 1.7fr 0.3fr; }
    .subpage--projekty .info-stripe .info-stripe__image--stiltwalker-2 { top: 75%; left: 0; }

    .hero__popout-img--top { 
        display: none !important; 
    }
    .hero__popout-img--base {
        width: 100% !important;
        height: 100% !important;
        top: 0 !important;
        left: 0 !important;
        object-fit: cover;
    }
    .hero__item--popout-wrapper {
        aspect-ratio: 1 / 1.414;
        overflow: hidden;
    }
}

/* ==========================================================================
   8. TELEFONY PORTRAIT (720px)
   ========================================================================== */

@media (max-width: 720px) {
    :root { --gap-floating: 0.5rem; }
    .footer__content { grid-template-columns: .5fr 1fr .5fr; }
    .site-banner { margin-top: calc(-1.625rem + (var(--sb-w) * 4)); }
    .footer__copyright { padding-bottom: calc(var(--sb-w) * 0.83); }
    .juggling-clubs, .sidebar-blue { display: none; }

    /* Hero */
    .hero__container, .hero__content-grid { gap: var(--space-lh-p); }
    .hero__title { font-size: clamp(1.55rem, 7.85vw, 7.85vw); line-height: 1.1; }
    .hero__col-v2 { display: none; }
    .hero__visuals-grid { grid-template-columns: repeat(2, 1fr); }
    .hero__panorama-box { grid-column: 1 / span 2; aspect-ratio: 16 / 9; }
    .hero__col-v1, .hero__col-v2 { aspect-ratio: 3 / 4.5; }
    .hero__col-v1 .accent-element { top: -1rem; left: -2.29rem; }
    .hero__panorama-box .accent-element { right: -2.29rem; bottom: 41.5vw; }
    .hero__container .floating-item { right: auto; bottom: calc(-161px + 1.25rem); left: calc(50% + var(--gap-grid) / 2); }

    /* About */
    .about { padding-top: calc(130px + var(--sb-w) * 3); padding-bottom: 0; }
    .collage-heading { margin-bottom: calc(var(--sb-w) * 2.25); }
    .about > .accent-element:first-of-type { top: 9.47rem; left: var(--sb-w); }
    .collage-heading__word-overlap::after { display: none; }
    .about__content-grid { display: flex; flex-direction: column; margin-top: var(--space-m); row-gap: calc(var(--sb-w) * 2.75); }
    .about__lead { order: 1; }
    .about__bio { order: 2; }
    .about__visual-col { position: relative; order: 3; top: auto; right: auto; bottom: auto; left: auto; margin-top: 0; margin-left: 0; }
    .about__visual-col figure { width: 100%; }
    .about__visual-col .about__label { text-align: right; margin-left: auto; }
    .about__portrait-col { order: 4; margin-top: -7.75rem; height: 100%; position: relative; }
    .about__portrait-img { margin-right: 0; height: 100%; }
    .about__portrait-wrapper .accent-element { left: auto; right: calc(var(--sb-w) * -1); }

    /* Info Stripe Vertical */
    .info-stripe__container { display: flex; flex-direction: column; gap: 0; }
    .info-stripe__content {
        width: 100%;
    }
    .info-stripe__questions { width: 100%; }
    .info-stripe__content .info-stripe__q { padding-bottom: var(--space-lh-p); }
    .info-stripe__btn { margin-top: calc(var(--sb-w) * 2.75); width: 100%; }
    .info-stripe__visuals { display: flex; justify-content: center; align-items: flex-end; position: relative; height: 182vw; width: 100%; margin-top: 0; margin-bottom: -.75rem; overflow: hidden; pointer-events: none; }
    .info-stripe__image { position: relative; bottom: 0; height: 100%; width: auto; z-index: 5; }
    .subpage--projekty__category .info-stripe__visuals { overflow: visible; margin-bottom: 0; height: 100%; }
    .subpage--projekty__category .info-stripe .info-stripe__image--circus { width: 100%; height: auto; }
    .subpage--projekty__category .info-stripe .info-stripe__image--stiltwalker-2 { position: relative; margin: 0 auto -.75rem; width: 50%; height: auto; transform: none; }
    .info-stripe__image--clown { left: auto; margin-right: -10%; }
    .info-stripe__image--stiltwalker { right: auto; z-index: 4; }
    .info-stripe__visuals .accent-element { display: none; }

    /* Rest */
    .subpage--wspolpraca .services__container { max-width: 16rem; }
    .split-block__grid { display: flex; flex-direction: column; gap: calc(var(--space-lh-p) * 2.5); }
    .split-block__visuals { order: 1; }
    .split-block__content { order: 2; }
    .split-block__grid .accent-element { display: block; }
    .subpage--wspolpraca .split-block--1 .accent-element { right: calc(var(--sb-w) * -1); }
    .subpage--wspolpraca .split-block--3 .accent-element { left: auto; right: calc(var(--space-s) * 2); }
    .split-block + .split-block { padding-top: calc(var(--space-lh-p) * 4); }
    .subpage--wspolpraca .services__container::before { width: 100vw; }
    .container--narrow { max-width: 100%; }
    .contact-form-section .accent-element { display: none; }
    .subpage--kontakt .form-group:nth-of-type(2)::after { right: calc(var(--sb-w) * -1); height: 325%; }
    .subpage--kontakt .contact-cta p { padding-bottom: var(--space-lh-p); }
    .contact-form-section { padding-top: calc(var(--space-lh-p) * 4); }
    .subpage--projekty .split-block__grid { gap: var(--section-pt, calc(var(--sb-w) * 3)); }
    .subpage--projekty .projects-archive .accent-element { bottom: auto; top: calc(var(--decor-height) * -1.75); }
    .subpage--projekty .projects-archive header { margin-bottom: 0; }
    .subpage--projekty .idx-item__inner { padding-bottom: calc(var(--space-lh-p) * 3); }
    .idx-item__side { margin-top: calc(var(--space-lh-p) * .5); }
    .idx-item__columns { display: flex; flex-direction: column; align-items: flex-start; }
    .subpage--projekty:not(.subpage--projekty__category) .info-stripe .info-stripe__image { height: 100%; }
    .term-badania-wystepow-ulicznych .info-stripe__content .type-heading-m {
        position: relative;
        z-index: 1003;
    }
    .term-badania-wystepow-ulicznych .info-stripe__visuals {
        position: relative; 
        aspect-ratio: 1.5 / 1;
        margin-bottom: var(--space-lh-p);
    }
    .term-badania-wystepow-ulicznych .visual-wrapper--performances {
        background-position: 73% center;
        top: calc(var(--sb-w) * -2.5);
        right: calc(var(--sb-w) * -1);
        bottom: 0;
        left: calc(var(--sb-w) * -1);
    }
}

/* ==========================================================================
   9. BREAKPOINT: 601px - 560px
   ========================================================================== */

@media (max-width: 601px) {
    /* Footer */
    .footer__content { display: flex; flex-direction: column; gap: calc(var(--sb-w) * 2); }
    .footer__copyright, .footer__author { max-width: 100%; }
    .footer__author { padding-bottom: 0; }
    .footer__extra .accent-element { left: calc(100% + var(--sb-w)); bottom: .225rem; }

    /* Colophon & Headlines */
    .colophon__media { margin-top: -1.05rem; }
    .colophon__grid { grid-template-columns: 1fr 23%; }
    .colophon__stiltwalker-lying img { top: 100%; left: 1rem; height: auto; }
    .subpage .sub-hero__title, .subpage--projekty .collage-heading .type-display, .subpage--projekty .collage-heading .type-display p { font-size: clamp(0rem, 9.8vw, 9.8vw); }
    .subpage--kontakt .sub-hero__description { margin-top: calc(var(--space-lh-p) * 3); }
    
    /* About Collage */
    .collage-heading__row, .collage-heading__row--full, .collage-heading__row--last { display: inline; width: auto; }
    .collage-heading__img-wrap { display: inline-block; height: 0.715em; width: auto; vertical-align: middle; margin: 0 0.15em; position: relative; top: -0.07em; }
    .collage-heading__img-wrap img { height: 100%; width: auto; }

    /* Projects & Services */
    .subpage--projekty .sub-hero__title { flex-direction: column; text-align: center; }
    .subpage--projekty .sub-hero__title .accent-element { right: var(--pad-sb-x2); }
    .subpage--projekty .sub-hero__row { display: none; }
    .subpage--wspolpraca .services__container { max-width: 12rem; }
    .subpage--wspolpraca .services__title { font-size: 1.125rem; }
    .subpage--wspolpraca .services__container::before { background-position: left top; background-size: auto 84%; transform: scaleX(-1); }
    .subpage--projekty__category .video-player__media-box-1 + .accent-element, .subpage--projekty__category .video-player__media-box-3 .accent-element, .subpage--projekty .projects-archive .accent-element { display: none; }
    .subpage--projekty__category .video-player__media-box-2 .accent-element { right: calc(var(--sb-w) * -1); }
}

@media (max-width: 560px) {
    .colophon__grid { display: block; padding: calc(var(--sb-w) * 3) var(--sb-w) 0; }
    .colophon__stiltwalker-lying img { transform: none; }
    .colophon__funding { flex-direction: column; gap: calc(var(--sb-w) * 1.5); padding-bottom: calc(var(--sb-w) * 3); }
    .colophon__funding a { width: 100%; }
    .colophon__logo { max-width: 10rem; height: auto; }
    .colophon__media, .colophon__stiltwalker-slot { display: none; }
    .colophon__funding::after { content: ''; background: url(img/decor-stiltwalker-02.webp) no-repeat; background-size: auto 200%; background-position: top center; position: absolute; top: calc(var(--space-lh-p) * -1.5); right: 0; width: 50%; height: calc(100% + var(--space-lh-p) * 1.5); }
    .subpage .sub-hero__container .accent-element { display: none; }
    .subpage--kontakt .form-group:nth-of-type(2)::after { height: 258%; }
    .type-heading-m--large, .type-heading-m--large p { font-size: 1.125rem; line-height: 1.3; font-weight: var(--fw-regular); }
}

/* ==========================================================================
   10. MAŁE TELEFONY (480px - 320px)
   ========================================================================== */

@media (max-width: 480px) {
    .mobile-overlay .nav__list { width: 100%; }
    .mobile-overlay .nav__link { font-size: 1.5rem; white-space: normal; text-align: left; }
    .facts__stage { padding-right: var(--sb-w); padding-left: var(--sb-w); }
    .colophon__logo { max-width: 8rem; }
    .subpage .sub-hero__image { width: calc(8.75vw + 1rem); }
    .subpage .sub-hero__image img { width: 8.75vw; }
    .subpage--wspolpraca .services__container::after { right: calc(var(--decor-width) * -1.25); }
}

@media (max-width: 440px) {
    .collage-heading .type-display, .subpage--projekty .collage-heading .type-display, .collage-heading .type-display p, .subpage--projekty .collage-heading .type-display p { font-size: clamp(0rem, 13.5vw, 13.5vw); line-height: 1.1; display: block; letter-spacing: -0.02em; }
    .lang-en .collage-heading .type-display { font-size: clamp(0rem, 10.95vw, 10.95vw); }
    .lang-en .about__container > .accent-element:first-of-type { top: calc(var(--decor-height) * -1 / 1.5); }
    .collage-heading__inline-group, .collage-heading__word-overlap::after { display: none; }
    .subpage--wspolpraca .services__container::before { width: 128vw; }
    .term-badania-wystepow-ulicznych .info-stripe__visuals {
        aspect-ratio: 1 / 1;
    }
    .term-badania-wystepow-ulicznych .visual-wrapper--performances {
        background-position: 71% center;
    }
}

@media (max-width: 360px) {
    .colophon__funding::after { background-position: top right; }
    .subpage--wspolpraca .services__container::before {
        background-position: left top;
        background-size: auto 84%;
        transform: scaleX(-1);
        width: 130vw;
    }
}

@media (max-width: 359px) {
    .collage-heading .type-display, .subpage--projekty .collage-heading .type-display, .collage-heading .type-display p, .subpage--projekty .collage-heading .type-display p { font-size: clamp(0rem, 13.35vw, 13.5vw); }
    .lang-en .collage-heading .type-display { font-size: clamp(0rem, 10.75vw, 10.75vw); }
    .subpage--wspolpraca .services__container::before { width: 140vw; }
    .subpage--kontakt .contact-form .form-group textarea { height: calc(.935rem * 1.5 * 8.5); }
}

@media (max-width: 320px) {
    .colophon__funding::after { right: calc(var(--sb-w) * -.5); }
    .footer__extra .accent-element { display: none; }
}