
    :root {
        --black: #111111;
        --dark: #191919;
        --gray: #6d6d6d;
        --light: #f4f4f2;
        --white: #ffffff;

        /* LOOPSTORE */
        --accent: #FFDD00;

        --border: #ddddda;
        --max-width: 1440px;
    }

    * {
        margin: 0;
        padding: 0;
        box-sizing: border-box;
    }

    html {
        scroll-behavior: smooth;
    }

    body {
        font-family: Arial, Helvetica, sans-serif;
        color: var(--black);
        background: var(--white);
        line-height: 1.3;
    }

    a {
        color: inherit;
        text-decoration: none;
    }

    /* =========================
       NAVIGATION
    ========================== */

    nav {
        position: absolute;
        z-index: 10;
        top: 0;
        left: 0;
        width: 100%;
        padding: 28px 5%;
        display: flex;
        justify-content: space-between;
        align-items: center;
        color: white;
    }

    .logo {
        font-size: 24px;
        font-weight: 700;
        letter-spacing: 1px;
    }

    .nav-links {
        display: flex;
        gap: 32px;
        align-items: center;
        font-size: 14px;
    }

    .nav-cta {
        background: var(--accent);
        color: var(--black);
        border: none;
        padding: 12px 20px;
        border-radius: 100px;
        font-weight: 600;
        transition: 0.25s ease;
    }

    .nav-cta:hover {
        transform: translateY(-2px);
    }

    /* =========================
       HERO
    ========================== */

    .hero {
        min-height: 100vh;
        position: relative;
        display: flex;
        align-items: center;
        overflow: hidden;
        color: white;

        background:
        linear-gradient(
            180deg,
            rgba(0,0,0,.62) 0%,
            rgba(0,0,0,.34) 48%,
            rgba(0,0,0,.48) 100%
        ),
        url("../images/d40b415a3d699ba0.png");

        background-size: cover;
        background-position: center;
    }

    .hero-content {
        width: 100%;
        max-width: var(--max-width);
        margin: auto;
        padding: 125px 5% 55px;
    }

    .eyebrow {
        font-size: 13px;
        text-transform: uppercase;
        letter-spacing: 1.5px;
        opacity: .9;
        margin-bottom: 22px;
    }

    .hero .eyebrow {
        color: var(--accent);
    }

    .hero h1 {
        max-width: 760px;
        font-size: clamp(54px, 5.5vw, 86px);
        line-height: .98;
        letter-spacing: -3px;
        font-weight: 500;
        margin-bottom: 30px;
    }

    .hero-bottom {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        gap: 28px;
    }

    .hero-description {
        max-width: 520px;
        font-size: 19px;
        line-height: 1.45;
        color: rgba(255,255,255,.85);
    }

    .button {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        padding: 17px 26px;
        border-radius: 100px;
        background: var(--accent);
        color: var(--black);
        font-size: 15px;
        font-weight: 700;
        transition: .25s ease;
        white-space: nowrap;
    }

    .button:hover {
        transform: translateY(-2px);
    }

    /* =========================
       INTRO
    ========================== */

    .intro {
        padding: 85px 5% 105px;
        max-width: var(--max-width);
        margin: auto;
    }

    .intro-grid {
        display: grid;
        grid-template-columns: .9fr 1.4fr;
        gap: 90px;
    }

    .section-label {
        font-size: 13px;
        text-transform: uppercase;
        letter-spacing: 1.2px;
        color: var(--gray);
    }

    .intro .section-label {
        color: #d6b900;
        font-weight: 700;
        padding-top: 24px;
        border-top: 1px solid var(--accent);
        max-width: 430px;
    }

    .intro h2,
    .section-title {
        font-size: clamp(38px, 4vw, 64px);
        line-height: 1;
        letter-spacing: -3px;
        font-weight: 500;
    }

    .intro-text {
        margin-top: 28px;
        max-width: 620px;
        font-size: 18px;
        line-height: 1.5;
        color: var(--gray);
    }

    /* =========================
       BIG STATEMENT
    ========================== */

    .statement {
        position: relative;
        color: white;
        padding: 160px 5%;
        min-height: 78vh;
        display: flex;
        align-items: flex-end;
        background:
            linear-gradient(90deg, rgba(0,0,0,.82) 0%, rgba(0,0,0,.58) 46%, rgba(0,0,0,.16) 100%),
            linear-gradient(180deg, rgba(0,0,0,.08) 35%, rgba(0,0,0,.48) 100%),
            url("../images/2481fe18e53f1535.jpg");
        background-size: cover;
        background-position: center;
    }

    .statement-inner {
        position: relative;
        z-index: 1;
        width: 100%;
        max-width: var(--max-width);
        margin: auto;
    }

    .statement h2 {
        max-width: 1100px;
        font-size: clamp(50px, 7vw, 105px);
        line-height: .95;
        letter-spacing: -4px;
        font-weight: 500;
    }

    .statement h2 span {
        color: var(--accent);
    }

    .statement p {
        margin-top: 50px;
        max-width: 540px;
        color: #bdbdbd;
        font-size: 20px;
        line-height: 1.5;
    }

    /* =========================
       BENEFITS / UNDER ONE ROOF
    ========================== */

    .benefits {
        padding: 150px 5%;
        background: var(--light);
    }

    .benefits-inner {
        max-width: var(--max-width);
        margin: auto;
    }

    .benefits-header {
        display: grid;
        grid-template-columns: .72fr 1.28fr;
        gap: 80px;
        align-items: end;
        margin-bottom: 75px;
    }

    .benefits-header h2 {
        font-size: clamp(48px, 6vw, 88px);
        line-height: .96;
        letter-spacing: -3.5px;
        font-weight: 500;
        max-width: 850px;
    }

    .benefits-lead {
        margin-top: 28px;
        max-width: 700px;
        color: var(--gray);
        font-size: 20px;
        line-height: 1.5;
    }

    .benefit-layout {
        display: grid;
        grid-template-columns: .82fr 1.7fr;
        gap: 2px;
    }

    .benefit-highlight {
        min-height: 500px;
        background: var(--accent);
        padding: 42px;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
    }

    .benefit-highlight .mini {
        font-size: 13px;
        font-weight: 700;
        text-transform: uppercase;
        letter-spacing: 1.3px;
    }

    .benefit-highlight h3 {
        font-size: clamp(38px, 4vw, 62px);
        line-height: .98;
        letter-spacing: -2.5px;
        font-weight: 500;
    }

    .benefit-grid {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 2px;
    }

    .benefit {
        min-height: 249px;
        padding: 32px 34px;
        background: var(--white);
        display: flex;
        flex-direction: column;
        margin: 0;
        border: none;
    }

    .benefit-number {
        font-size: 13px;
        color: #a3a3a0;
        font-weight: 700;
        margin-bottom: auto;
    }

    .benefit h3 {
        font-size: 30px;
        line-height: 1.05;
        letter-spacing: -1.2px;
        font-weight: 500;
        margin-bottom: 14px;
    }

    .benefit p {
        max-width: 360px;
        color: var(--gray);
        font-size: 15px;
        line-height: 1.5;
    }

    /* =========================
       IMAGE STATEMENT
    ========================== */

    .image-statement {
        min-height: 85vh;
        position: relative;
        display: flex;
        align-items: flex-end;
        padding: 80px 5%;

        background:
        linear-gradient(
            90deg,
            rgba(0,0,0,.72) 0%,
            rgba(0,0,0,.38) 48%,
            rgba(0,0,0,.08) 100%
        ),
        url("../images/8859f3363cdbbc13.jpg");

        background-size: cover;
        background-position: center;
        color: white;
    }

    .image-statement-content {
        max-width: var(--max-width);
        width: 100%;
        margin: auto;
    }

    .image-statement h2 {
        max-width: 950px;
        font-size: clamp(48px, 6vw, 95px);
        line-height: .98;
        letter-spacing: -4px;
        font-weight: 500;
    }

    /* =========================
       PROCESS
    ========================== */

    .process {
        padding: 160px 5%;
        background: var(--light);
    }

    .process-inner {
        max-width: var(--max-width);
        margin: auto;
    }

    .process-header {
        display: grid;
        grid-template-columns: 1fr 1.5fr;
        gap: 80px;
        margin-bottom: 100px;
    }

    .process-description {
        max-width: 550px;
        font-size: 20px;
        color: var(--gray);
        margin-top: 25px;
    }

    .process-steps {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        border-top: 1px solid #cfcfca;
    }

    .step {
        padding: 35px 25px 0 0;
        min-height: 260px;
        border-right: 1px solid #cfcfca;
        margin-right: 25px;
    }

    .step:last-child {
        border-right: none;
    }

    .step-number {
        font-size: 14px;
        color: var(--accent);
        font-weight: 700;
        margin-bottom: 70px;
    }

    .step h3 {
        font-size: 26px;
        font-weight: 500;
        margin-bottom: 15px;
    }

    .step p {
        color: var(--gray);
        font-size: 15px;
        max-width: 220px;
    }

    /* =========================
       ONE SYSTEM
    ========================== */

    .one-system {
        padding: 160px 5%;
        max-width: var(--max-width);
        margin: auto;
    }

    .one-system-grid {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 80px;
        align-items: center;
    }

    .system-visual {
        aspect-ratio: 1 / 1;
        background: #f4f4f2;
        position: relative;
        overflow: hidden;
        border: 1px solid var(--border);
        border-radius: 28px;
    }

    .system-visual::before {
        content: "PLATFORMA WCS";
        position: absolute;
        top: 34px;
        left: 36px;
        font-size: 12px;
        font-weight: 700;
        letter-spacing: 1.4px;
        color: #7b7b76;
        z-index: 10;
    }

    .system-center {
        position: absolute;
        width: 250px;
        height: 250px;
        border-radius: 50%;
        background: var(--accent);
        color: var(--black);
        left: 50%;
        top: 46%;
        transform: translate(-50%, -50%);
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        text-align: center;
        z-index: 8;
        box-shadow: 0 22px 60px rgba(0,0,0,.12);
    }

    .system-center small {
        font-size: 12px;
        text-transform: uppercase;
        letter-spacing: 1.3px;
        margin-bottom: 9px;
        font-weight: 700;
    }

    .system-center strong {
        font-size: 28px;
        line-height: 1.05;
        letter-spacing: -1px;
        font-weight: 600;
    }

    .system-node {
        position: absolute;
        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        text-align: center;
        font-size: 13px;
        line-height: 1.15;
        font-weight: 600;
        padding: 16px;
        z-index: 3;
        border: 1px solid rgba(17,17,17,.08);
    }

    .node-1 {
        width: 190px;
        height: 190px;
        left: 8%;
        top: 20%;
        background: #242424;
        color: white;
    }

    .node-2 {
        width: 170px;
        height: 170px;
        right: 7%;
        top: 18%;
        background: #ffffff;
        color: var(--black);
    }

    .node-3 {
        width: 185px;
        height: 185px;
        left: 14%;
        bottom: 9%;
        background: #d9d9d4;
        color: var(--black);
    }

    .node-4 {
        width: 210px;
        height: 210px;
        right: 8%;
        bottom: 7%;
        background: #111111;
        color: white;
    }

    .node-5 {
        width: 128px;
        height: 128px;
        right: 3%;
        top: 43%;
        background: #ffffff;
        color: var(--black);
        z-index: 5;
    }

    .node-6 {
        width: 116px;
        height: 116px;
        left: 5%;
        top: 51%;
        background: #ffffff;
        color: var(--black);
        z-index: 5;
    }

    .system-content p {
        max-width: 540px;
        margin-top: 35px;
        color: var(--gray);
        font-size: 20px;
        line-height: 1.5;
    }

    /* =========================
       TECHNOLOGY
    ========================== */

    .technology {
        padding: 150px 5%;
        background: var(--black);
        color: white;
    }

    .technology-inner {
        max-width: var(--max-width);
        margin: auto;
    }

    .technology-header {
        display: flex;
        justify-content: space-between;
        align-items: flex-end;
        gap: 40px;
        margin-bottom: 90px;
    }

    .technology p {
        max-width: 430px;
        color: #aaaaaa;
        font-size: 18px;
        line-height: 1.5;
    }

    .technology-grid {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 2px;
    }

    .technology-card {
        min-height: 360px;
        padding: 35px;
        background: #202020;
        display: flex;
        flex-direction: column;
        justify-content: flex-end;
        transition: .3s ease;
    }

    .technology-card:hover {
        background: var(--accent);
        color: var(--black);
    }

    .technology-card span {
        color: var(--accent);
        font-size: 13px;
        font-weight: 700;
        margin-bottom: 18px;
    }

    .technology-card:hover span {
        color: var(--black);
    }

    .technology-card h3 {
        font-size: 34px;
        font-weight: 500;
        letter-spacing: -1px;
    }

    /* =========================
       FINAL CTA
    ========================== */

    .final-cta {
        padding: 180px 5%;
        text-align: center;
        background: #FFDD00;
        color: #111111;
    }

    .final-cta h2 {
        max-width: 1000px;
        margin: auto;
        font-size: clamp(50px, 7vw, 105px);
        line-height: .95;
        letter-spacing: -4px;
        font-weight: 500;
    }

    .final-cta p {
        max-width: 500px;
        margin: 35px auto 45px;
        color: #333333;
        font-size: 19px;
        line-height: 1.5;
    }

    .final-cta .button {
        background: #111111;
        color: #ffffff;
    }

    /* =========================
       FOOTER
    ========================== */

    footer {
        padding: 50px 5%;
        background: var(--black);
        color: white;
        display: flex;
        justify-content: space-between;
        font-size: 14px;
    }

    /* =========================
       RESPONSIVE
    ========================== */

    @media (max-width: 900px) {

        nav {
            padding: 22px 6%;
        }

        .nav-links a:not(.nav-cta) {
            display: none;
        }

        .hero h1 {
            letter-spacing: -2px;
        }

        .hero-bottom {
            flex-direction: column;
            align-items: flex-start;
        }

        .intro,
        .statement,
        .benefits,
        .process,
        .one-system,
        .technology,
        .final-cta {
            padding-top: 100px;
            padding-bottom: 100px;
        }

        .intro-grid,
        .process-header,
        .one-system-grid {
            grid-template-columns: 1fr;
            gap: 40px;
        }

        .benefit-grid,
        .technology-grid {
            grid-template-columns: 1fr;
        }

        .benefits-header,
        .benefit-layout {
            grid-template-columns: 1fr;
            gap: 35px;
        }

        .benefit-highlight {
            min-height: 360px;
        }

        .benefit {
            min-height: 220px;
        }

        .benefit {
            margin-right: 0;
        }

        .benefit-number {
            margin-bottom: 45px;
        }

        .process-steps {
            grid-template-columns: 1fr 1fr;
        }

        .step {
            min-height: 220px;
        }

        .technology-header {
            flex-direction: column;
            align-items: flex-start;
        }

        footer {
            flex-direction: column;
            gap: 20px;
        }
    }

    @media (max-width: 600px) {

        .hero {
            min-height: 90vh;
        }

        .hero-content {
            padding-bottom: 45px;
        }

        .process-steps {
            grid-template-columns: 1fr;
        }

        .step {
            border-right: none;
            border-bottom: 1px solid #cfcfca;
            margin-right: 0;
            padding-bottom: 35px;
        }

        .step-number {
            margin-bottom: 40px;
        }

        .image-statement {
            min-height: 70vh;
        }

        .system-center {
            width: 180px;
            height: 180px;
        }

        .system-center strong {
            font-size: 22px;
        }

        .system-node {
            font-size: 10px;
            padding: 10px;
        }

        .node-1 { width: 130px; height: 130px; }
        .node-2 { width: 120px; height: 120px; }
        .node-3 { width: 125px; height: 125px; }
        .node-4 { width: 140px; height: 140px; }
        .node-5 { width: 90px; height: 90px; }
        .node-6 { width: 85px; height: 85px; }
    }


    .logo {
        display: inline-flex;
        align-items: center;
        width: 190px;
        line-height: 0;
    }

    .brand-logo {
        display: block;
        width: 100%;
        height: auto;
        object-fit: contain;
    }

    nav .brand-logo {
        filter: drop-shadow(0 1px 5px rgba(255,255,255,.28))
                drop-shadow(0 2px 5px rgba(0,0,0,.18));
    }

    .footer-brand {
        width: 210px;
        line-height: 0;
    }

    footer {
        background: var(--light);
        color: var(--black);
        align-items: center;
    }

    @media (max-width: 600px) {
        .logo { width: 155px; }
        .footer-brand { width: 180px; }
    }


    /* ===== V10: Wszystko pod jednym dachem ===== */
    .benefits {
        background: var(--light);
    }

    .benefit-grid {
        gap: 18px;
        border-top: none;
        align-items: stretch;
    }

    .benefit {
        margin-right: 0;
        padding: 0;
        border: 1px solid #e1e1dc;
        border-radius: 24px;
        overflow: hidden;
        background: #fff;
        min-height: 340px;
        display: flex;
        flex-direction: column;
        transition: transform .3s ease, box-shadow .3s ease;
    }

    .benefit:hover {
        transform: translateY(-5px);
        box-shadow: 0 18px 45px rgba(0,0,0,.08);
    }

    .benefit-number {
        width: 52px;
        height: 34px;
        border-radius: 100px;
        background: var(--accent);
        color: var(--black);
        display: inline-flex;
        align-items: center;
        justify-content: center;
        margin: 24px 24px 55px;
        font-size: 13px;
    }

    .benefit h3 {
        padding: 0 24px;
        margin-bottom: 12px;
        font-size: 29px;
    }

    .benefit p {
        padding: 0 24px 28px;
        max-width: none;
        margin-top: auto;
    }

    /* If the section contains the special yellow lead tile, preserve it as the anchor. */
    .benefit.lead-benefit,
    .benefit:first-child:has(.lead-copy) {
        background: var(--accent);
        color: var(--black);
        border-color: var(--accent);
    }

    .benefit.lead-benefit p,
    .benefit:first-child:has(.lead-copy) p {
        color: rgba(17,17,17,.72);
    }

    @media (max-width: 900px) {
        .benefit-grid { gap: 14px; }
        .benefit { min-height: 280px; }
    }
    @media (min-width: 1100px) {
        .benefits .benefit-grid {
            grid-template-columns: repeat(4, 1fr);
        }
    }


    /* ===== V12: visual capability cards ===== */
    .benefits .benefit-grid {
        display: grid;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 18px;
        border-top: 0;
        margin-top: 48px;
    }

    .cap-card {
        background: #fff;
        border: 1px solid #e2e2dd;
        border-radius: 24px;
        overflow: hidden;
        min-width: 0;
        transition: transform .3s ease, box-shadow .3s ease;
    }

    .cap-card:hover {
        transform: translateY(-5px);
        box-shadow: 0 18px 45px rgba(0,0,0,.08);
    }

    .cap-image {
        height: 180px;
        position: relative;
        overflow: hidden;
        border-radius: 23px 23px 18px 18px;
        background: #ddd;
    }

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

    .cap-number {
        position: absolute;
        top: 16px;
        left: 16px;
        min-width: 48px;
        height: 34px;
        padding: 0 14px;
        border-radius: 999px;
        background: var(--accent);
        color: var(--black);
        display: inline-flex;
        align-items: center;
        justify-content: center;
        font-size: 12px;
        font-weight: 700;
    }

    .cap-body {
        padding: 20px 20px 18px;
    }

    .cap-body h3 {
        font-size: 24px;
        line-height: 1.08;
        letter-spacing: -.7px;
        margin: 0 0 16px;
    }

    .cap-bottom {
        display: flex;
        gap: 14px;
        align-items: flex-end;
    }

    .cap-bottom p {
        color: var(--gray);
        font-size: 14px;
        line-height: 1.5;
        margin: 0;
        flex: 1;
    }

    .cap-arrow {
        width: 38px;
        height: 38px;
        flex: 0 0 38px;
        border-radius: 50%;
        border: 1px solid #deded8;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        font-size: 20px;
        color: var(--black);
    }

    @media (max-width: 1050px) {
        .benefits .benefit-grid {
            grid-template-columns: repeat(2, minmax(0, 1fr));
        }
    }

    @media (max-width: 600px) {
        .benefits .benefit-grid {
            grid-template-columns: 1fr;
        }
        .cap-image { height: 210px; }
    }


    /* ===== V13: 2x2 square capability cards ===== */
    .benefits .benefit-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 22px;
        max-width: 980px;
        margin-left: auto;
        margin-right: auto;
    }

    .cap-card {
        min-height: 360px;
        aspect-ratio: 1.08 / 1;
        border-radius: 28px;
        position: relative;
        display: flex;
        flex-direction: column;
        background: #fff;
    }

    .cap-image {
        height: 52%;
        min-height: 180px;
        border-radius: 27px 27px 22px 22px;
    }

    .cap-body {
        padding: 22px 24px 24px;
        flex: 1;
        display: flex;
        flex-direction: column;
    }

    .cap-body h3 {
        font-size: 27px;
        margin-bottom: 12px;
    }

    .cap-bottom {
        margin-top: auto;
    }

    .cap-number {
        top: 18px;
        left: 18px;
    }

    /* Round the yellow "Od pierwszej koncepcji..." tile if it exists elsewhere on the page */
    .lead-benefit,
    .yellow-lead,
    .concept-card {
        border-radius: 28px !important;
        overflow: hidden;
    }

    @media (max-width: 760px) {
        .benefits .benefit-grid {
            grid-template-columns: 1fr;
            max-width: 520px;
        }
        .cap-card {
            aspect-ratio: auto;
            min-height: 420px;
        }
    }


    /* ===== V14: compact 2x2 cards with generated imagery ===== */
    .benefits .benefit-grid {
        max-width: 900px;
        gap: 16px;
    }

    .cap-card {
        min-height: 0;
        aspect-ratio: auto;
        border-radius: 24px;
    }

    .cap-image {
        height: 168px;
        min-height: 168px;
        border-radius: 23px 23px 18px 18px;
    }

    .cap-body {
        padding: 14px 18px 16px;
        min-height: 138px;
    }

    .cap-body h3 {
        font-size: 23px;
        line-height: 1.05;
        margin: 0 0 7px;
    }

    .cap-bottom {
        gap: 10px;
        align-items: flex-end;
    }

    .cap-bottom p {
        font-size: 13px;
        line-height: 1.38;
    }

    .cap-arrow {
        width: 34px;
        height: 34px;
        flex-basis: 34px;
        font-size: 18px;
    }

    .cap-number {
        top: 13px;
        left: 13px;
        min-width: 44px;
        height: 30px;
        padding: 0 12px;
    }

    /* Yellow concept tile: same visual height/radius language as the compact cards. */
    .yellow-box {
        border-radius: 24px !important;
        min-height: 322px !important;
        height: auto !important;
        overflow: hidden;
    }

    @media (max-width: 760px) {
        .cap-card { min-height: 0; }
        .cap-image { height: 180px; min-height: 180px; }
        .yellow-box { min-height: 0 !important; }
    }


/* ===== V15 FINAL OVERRIDE — compact cards, 2x2 ===== */

.benefit-layout{
    display:grid !important;
    grid-template-columns:minmax(250px,.72fr) minmax(0,2fr) !important;
    gap:18px !important;
    align-items:start !important;
}

/* Yellow card — same height and corner radius as one white card */
.benefit-highlight{
    min-height:292px !important;
    height:292px !important;
    border-radius:24px !important;
    overflow:hidden !important;
    padding:26px !important;
    display:flex !important;
    flex-direction:column !important;
    justify-content:space-between !important;
    box-sizing:border-box !important;
}

.benefit-highlight h3{
    margin:0 !important;
    font-size:34px !important;
    line-height:1.04 !important;
    letter-spacing:-1.4px !important;
}

.benefit-highlight .mini{
    margin:0 !important;
}

/* Four cards, exactly 2 x 2 */
.benefits .benefit-grid{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:16px !important;
    max-width:none !important;
    width:100% !important;
    margin:0 !important;
}

/* Compact card */
.benefits .cap-card{
    min-height:292px !important;
    height:292px !important;
    aspect-ratio:auto !important;
    border-radius:24px !important;
    overflow:hidden !important;
    display:flex !important;
    flex-direction:column !important;
    background:#fff !important;
}

/* Image sits directly above the copy */
.benefits .cap-image{
    height:154px !important;
    min-height:154px !important;
    flex:0 0 154px !important;
    margin:0 !important;
    border-radius:23px 23px 17px 17px !important;
    overflow:hidden !important;
}

.benefits .cap-image img{
    width:100% !important;
    height:100% !important;
    display:block !important;
    object-fit:cover !important;
}

/* Much smaller image-to-text spacing */
.benefits .cap-body{
    padding:10px 16px 13px !important;
    min-height:0 !important;
    flex:1 !important;
    display:flex !important;
    flex-direction:column !important;
}

.benefits .cap-body h3{
    margin:0 0 5px !important;
    padding:0 !important;
    font-size:21px !important;
    line-height:1.05 !important;
    letter-spacing:-.55px !important;
}

.benefits .cap-bottom{
    margin-top:0 !important;
    gap:8px !important;
    align-items:flex-end !important;
    flex:1 !important;
}

.benefits .cap-bottom p{
    margin:0 !important;
    padding:0 !important;
    font-size:12.5px !important;
    line-height:1.32 !important;
}

.benefits .cap-arrow{
    width:31px !important;
    height:31px !important;
    flex:0 0 31px !important;
    font-size:16px !important;
}

.benefits .cap-number{
    top:12px !important;
    left:12px !important;
    min-width:42px !important;
    height:29px !important;
    padding:0 11px !important;
}

/* Responsive */
@media(max-width:1000px){
    .benefit-layout{
        grid-template-columns:1fr !important;
    }
    .benefit-highlight{
        width:100% !important;
        height:auto !important;
        min-height:220px !important;
    }
}

@media(max-width:700px){
    .benefits .benefit-grid{
        grid-template-columns:1fr !important;
    }
    .benefits .cap-card{
        height:auto !important;
        min-height:280px !important;
    }
}


/* ===== V16 — EXACT "Wszystko pod jednym dachem" MOCKUP LAYOUT ===== */
.roof-section{
    padding:110px 4% !important;
    background:#f5f5f3 !important;
}
.roof-layout{
    max-width:1420px;
    margin:0 auto;
    display:grid;
    grid-template-columns:440px minmax(0,1fr);
    gap:26px;
    align-items:stretch;
}
.roof-left{
    display:grid;
    grid-template-rows:1fr 390px;
    gap:22px;
}
.roof-intro{
    padding:24px 0 0;
}
.roof-intro .eyebrow{
    font-size:12px;
    letter-spacing:3.2px;
    color:#747474;
    margin-bottom:28px;
}
.roof-intro h2{
    margin:0;
    font-size:58px;
    line-height:1.03;
    letter-spacing:-2.8px;
    font-weight:650;
}
.roof-intro p{
    margin:30px 0 0;
    color:#737373;
    font-size:21px;
    line-height:1.42;
}
.roof-yellow-card{
    background:#ffdd00;
    border-radius:24px;
    padding:28px 30px 28px;
    display:flex;
    flex-direction:column;
    box-sizing:border-box;
    min-height:390px;
}
.roof-yellow-number{
    font-size:18px;
    font-weight:700;
    margin-bottom:14px;
}
.roof-yellow-card h3{
    margin:0;
    font-size:36px;
    line-height:1.04;
    letter-spacing:-1.4px;
    font-weight:650;
}
.roof-yellow-bottom{
    margin-top:auto;
    display:flex;
    gap:18px;
    align-items:flex-end;
}
.roof-yellow-bottom p{
    margin:0;
    max-width:310px;
    font-size:15px;
    line-height:1.48;
}
.roof-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    grid-template-rows:repeat(2,390px);
    gap:22px;
}
.roof-card{
    background:#fff;
    border-radius:24px;
    overflow:hidden;
    display:flex;
    flex-direction:column;
    min-width:0;
    box-shadow:0 12px 35px rgba(0,0,0,.025);
}
.roof-photo{
    position:relative;
    height:255px;
    flex:0 0 255px;
    overflow:hidden;
    border-radius:24px 24px 18px 18px;
}
.roof-photo img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}
.roof-badge{
    position:absolute;
    top:20px;
    left:20px;
    min-width:72px;
    height:50px;
    padding:0 18px;
    box-sizing:border-box;
    border-radius:999px;
    background:#ffdd00;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:18px;
    font-weight:700;
}
.roof-copy{
    padding:17px 24px 20px;
    display:flex;
    flex-direction:column;
    flex:1;
}
.roof-copy h3{
    margin:0 0 7px;
    font-size:25px;
    line-height:1.05;
    letter-spacing:-.8px;
}
.roof-card-bottom{
    display:flex;
    gap:14px;
    align-items:flex-end;
    margin-top:auto;
}
.roof-card-bottom p{
    margin:0;
    color:#666;
    font-size:15px;
    line-height:1.35;
    max-width:330px;
}
.roof-arrow{
    width:52px;
    height:52px;
    flex:0 0 52px;
    border:1px solid #cfcfcb;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:31px;
    line-height:1;
    color:#111;
}
.roof-yellow-card .roof-arrow{
    border-color:rgba(17,17,17,.3);
}
@media(max-width:1150px){
    .roof-layout{grid-template-columns:1fr;}
    .roof-left{grid-template-columns:1fr 1fr;grid-template-rows:auto;}
    .roof-grid{grid-template-rows:repeat(2,360px);}
    .roof-yellow-card{min-height:360px;}
}
@media(max-width:760px){
    .roof-section{padding:70px 5% !important;}
    .roof-left{grid-template-columns:1fr;}
    .roof-intro h2{font-size:44px;}
    .roof-intro p{font-size:18px;}
    .roof-grid{grid-template-columns:1fr;grid-template-rows:none;}
    .roof-card{min-height:360px;}
    .roof-photo{height:220px;flex-basis:220px;}
    .roof-yellow-card{min-height:350px;}
}


/* ===== V19 — yellow final CTA ===== */
.yellow-cta{
    background:#ffdd00 !important;
    color:#111 !important;
}
.yellow-cta h2,
.yellow-cta h3,
.yellow-cta p,
.yellow-cta .eyebrow{
    color:#111 !important;
}
.yellow-cta .btn,
.yellow-cta .cta-button,
.yellow-cta a[class*="btn"]{
    background:#111 !important;
    color:#fff !important;
    border-color:#111 !important;
}


/* ===== V21 — final transparent LoopStore logos ===== */
.logo{
    width:190px !important;
    display:inline-flex !important;
    align-items:center !important;
    line-height:0 !important;
}
.header-logo-img{
    display:block !important;
    width:100% !important;
    height:auto !important;
    object-fit:contain !important;
    filter:none !important;
    background:transparent !important;
}
.footer-brand{
    width:140px !important; /* approx. 2/3 smaller than previous footer logo */
    line-height:0 !important;
}
.footer-logo-img{
    display:block !important;
    width:100% !important;
    height:auto !important;
    object-fit:contain !important;
    filter:none !important;
    background:transparent !important;
}
@media(max-width:600px){
    .logo{width:155px !important;}
    .footer-brand{width:120px !important;}
}


/* V23 — WCS: obecna wizualizacja + komunikat + screen platformy */
.one-system-v23{max-width:1500px!important;padding:150px 4%!important}
.wcs-v23-grid{display:grid;grid-template-columns:minmax(300px,.9fr) minmax(280px,.72fr) minmax(500px,1.55fr);gap:22px;align-items:stretch}
.wcs-v23-old,.wcs-v23-copy,.wcs-v23-screen{min-height:500px;border-radius:28px;overflow:hidden}
.wcs-v23-old .system-visual{width:100%;height:100%;min-height:500px;aspect-ratio:auto}
.wcs-v23-copy{background:#ffdd00;padding:42px 34px;display:flex;flex-direction:column;justify-content:center}
.wcs-v23-copy .section-label{color:#111!important}
.wcs-v23-copy .section-title{font-size:40px;line-height:1.04;margin-bottom:25px}
.wcs-v23-copy p{color:#222;font-size:16px;line-height:1.55}
.wcs-v23-screen{margin:0;background:#f4f4f2;display:flex;flex-direction:column}
.wcs-v23-screen img{width:100%;height:100%;flex:1;min-height:0;object-fit:cover;display:block}
.wcs-v23-screen figcaption{padding:13px 18px;background:#f4f4f2;color:#666;font-size:12px}
@media(max-width:1200px){.wcs-v23-grid{grid-template-columns:1fr 1fr}.wcs-v23-screen{grid-column:1/-1;min-height:520px}}
@media(max-width:760px){.wcs-v23-grid{grid-template-columns:1fr}.wcs-v23-screen{grid-column:auto;min-height:340px}.wcs-v23-old,.wcs-v23-copy{min-height:360px}}


/* V24 — show full WCS screenshot, including left menu */
.wcs-v23-screen{
    background:#f4f4f2 !important;
}
.wcs-v23-screen img{
    width:100% !important;
    height:auto !important;
    flex:none !important;
    object-fit:contain !important;
    object-position:center center !important;
    display:block !important;
}
.wcs-v23-screen{
    justify-content:center !important;
}


/* V25 — WCS: only message + real platform screen */
.wcs-v23-old{
    display:none !important;
}
.wcs-v23-grid{
    grid-template-columns:minmax(300px,.62fr) minmax(620px,1.6fr) !important;
    gap:22px !important;
}
.wcs-v23-copy{
    min-height:500px !important;
}
.wcs-v23-screen{
    min-height:500px !important;
}
.wcs-v23-screen img{
    width:100% !important;
    height:auto !important;
    object-fit:contain !important;
    object-position:center center !important;
}
@media(max-width:1000px){
    .wcs-v23-grid{
        grid-template-columns:1fr !important;
    }
    .wcs-v23-copy{
        min-height:330px !important;
    }
    .wcs-v23-screen{
        min-height:0 !important;
    }
}


/* v32: SHIMA — identical gallery outer sizing and positioning to Panasonic */
section.project#shima > .visual.project-gallery.shima-four-photos {box-sizing:border-box!important;position:relative!important;width:calc(100% - 6vw)!important;max-width:1800px!important;margin:40px auto 65px!important;padding:0!important;display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:18px!important;height:auto!important;transform:none!important;left:auto!important;right:auto!important;}
section.project#shima > .visual.project-gallery.shima-four-photos > .shima-featured {width:100%!important;max-width:none!important;min-width:0!important;margin:0!important;}
section.project#shima > .visual.project-gallery.shima-four-photos > .shima-featured img {display:block!important;width:100%!important;height:auto!important;object-fit:contain!important;border-radius:16px!important;}

/* v34: SHIMA bottom images same height, 1/3 and 2/3; crop only portrait */
#shima .shima-bottom {display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,2fr)!important;gap:16px!important;align-items:stretch!important;}
#shima .shima-bottom > .gallery-slot {height:clamp(220px, 29vw, 430px)!important;min-height:0!important;overflow:hidden!important;border-radius:16px!important;background:transparent!important;}
#shima .shima-bottom > .gallery-slot img {display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;object-position:center center!important;border-radius:16px!important;}
#shima .shima-bottom > .gallery-slot:nth-child(2) img {object-fit:contain!important;}
@media(max-width:650px){#shima .shima-bottom {grid-template-columns:1fr!important;}#shima .shima-bottom > .gallery-slot {height:auto!important;}#shima .shima-bottom > .gallery-slot img {height:auto!important;object-fit:contain!important;}}

/* v41 — wizualnie wydzielona sekcja procesu */
section.process.process-cards{background:#f0f0ed!important;border-top:1px solid #deded9;border-bottom:1px solid #deded9;padding-top:92px;padding-bottom:100px}
section.process.process-cards .process-card{background:#fff}
section.process.process-cards .process-card-featured{background:#ffdd00}
@media(max-width:700px){section.process.process-cards{padding-top:64px;padding-bottom:70px}}

.project{padding:120px 0;background:#fff}.dark{background:var(--b);color:#fff}.ph{display:grid;grid-template-columns:.72fr 1.28fr;gap:80px;margin-bottom:65px}.idx{font-size:14px;color:var(--g)}.project h2{font-size:clamp(48px,6vw,92px);line-height:.93;letter-spacing:-3px;margin:0 0 30px;font-weight:500}.copy{font-size:19px;line-height:1.5;color:var(--g);max-width:700px;margin:0}.dark .copy,.dark .idx{color:#bdbdbd}.visual{height:min(66vw,790px);min-height:520px;background:#dededb;display:grid;place-items:center;color:#777;font-size:13px;letter-spacing:.12em}.dark .visual{background:#252525}.stats{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #d3d3d0;margin-top:58px}.dark .stats{border-color:#363636}.stat{padding:35px 25px 0 0}.stat strong{display:block;font-size:clamp(36px,4vw,62px);letter-spacing:-3px;font-weight:500}.stat span{display:block;margin-top:8px;color:var(--g);font-size:14px}.dark .stat span{color:#bdbdbd}.case-statement{background:var(--y);padding:105px 0}.case-statement h2{font-size:clamp(48px,6.6vw,102px);line-height:.93;letter-spacing:-3px;font-weight:500;margin:0;max-width:1200px}.case-statement p{font-size:20px;line-height:1.5;max-width:620px;margin:45px 0 0}.more{padding:120px 0}.more h2{font-size:clamp(48px,6vw,86px);line-height:.95;letter-spacing:-3px;font-weight:500;margin:0 0 65px}.grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.card{background:#fff}.card-img{height:430px;background:#dededb;display:grid;place-items:center;color:#888;font-size:12px}.card-body{padding:32px 34px 38px}.card small,.card p{color:var(--g)}.card h3{font-size:32px;letter-spacing:-.035em;margin:13px 0 10px;font-weight:500}.process{background:#fff;padding:120px 0}.pt{display:grid;grid-template-columns:1fr 1fr;gap:60px;margin-bottom:65px}.process h2{font-size:clamp(48px,6vw,88px);line-height:.94;letter-spacing:-3px;font-weight:500;margin:0}.process p{font-size:19px;line-height:1.5;color:var(--g);max-width:580px}.steps{display:grid;grid-template-columns:repeat(7,1fr);border-top:1px solid #ccc}.step{padding:26px 12px 0 0;font-size:14px}.step b{display:block;color:#aaa;margin-bottom:16px;font-weight:500}.case-end{background:var(--y);padding:110px 0}.case-end h2{font-size:clamp(52px,7vw,110px);line-height:.91;letter-spacing:-3px;font-weight:500;margin:0;max-width:1100px}.case-end a{display:inline-block;background:var(--b);color:#fff;padding:18px 24px;margin-top:48px;font-size:14px}
.c{width:min(calc(100% - 96px),1440px);margin:auto}.ph{display:grid;grid-template-columns:.72fr 1.28fr;gap:80px;margin-bottom:65px}.idx{font-size:14px;color:#777}.copy{font-size:19px;line-height:1.5;color:#666;max-width:700px}.dark .copy,.dark .idx{color:#bbb}.grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.card{background:white}.card-img{height:430px;background:#dededb;display:grid;place-items:center;color:#888}.card-body{padding:32px}.card h3{font-size:32px}.pt{display:grid;grid-template-columns:1fr 1fr;gap:60px;margin-bottom:65px}.steps{display:grid;grid-template-columns:repeat(7,1fr);border-top:1px solid #ccc}.step{padding:26px 12px 0 0;font-size:14px}.step b{display:block;color:#aaa;margin-bottom:16px}@media(max-width:900px){.c{width:calc(100% - 40px)}.ph,.pt{grid-template-columns:1fr}.grid{grid-template-columns:1fr}.steps{grid-template-columns:1fr 1fr}}

/* Realizacje: explicit color contrast by section. No changes to original v25 nav */
section.project:not(.dark), section.more, section.process {background-color:#fff!important;color:#171717!important}
section.project:not(.dark) h2,section.project:not(.dark) .stat strong,section.more h2,section.more h3,section.process h2,section.process h3 {color:#171717!important}
section.project:not(.dark) .copy,section.project:not(.dark) .idx,section.project:not(.dark) .stat span,section.more p,section.more small,section.more .eye,section.process p {color:#4a4a4a!important}
section.project.dark {background-color:#171717!important;color:#fff!important}
section.project.dark h2,section.project.dark .stat strong {color:#fff!important}
section.project.dark .copy,section.project.dark .idx,section.project.dark .stat span {color:#e0e0e0!important}
section.case-statement,section.case-end {background:#ffdd00!important;color:#151515!important}
section.case-statement h2,section.case-statement p,section.case-end h2 {color:#151515!important}
section.hero h1,section.hero .eyebrow,section.hero .hero-description {color:#fff!important}
section.project .visual {position:relative;overflow:hidden}
section.project.dark .visual img {display:block;width:100%;height:100%;object-fit:cover}
section.project.dark .visual .photo-credit {position:absolute;bottom:0;left:0;right:0;background:rgba(0,0,0,.78);color:#fff;padding:12px 18px;font-size:12px;line-height:1.4;letter-spacing:normal}


/* Three photos per realization; original image aspect ratios retained. */
section.project .project-gallery {display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:16px!important;overflow:visible!important;align-items:start!important;height:auto!important;min-height:0!important;background:transparent!important;}
section.project .project-gallery .gallery-slot {display:flex;align-items:center;justify-content:center;min-width:0;min-height:230px;background:#eaeaea;border:1px solid rgba(120,120,120,.2);overflow:hidden;}
section.project .project-gallery .gallery-slot img {display:block!important;width:100%!important;height:auto!important;max-height:none!important;object-fit:contain!important;aspect-ratio:auto!important;position:static!important;transform:none!important;}
section.project .project-gallery .gallery-placeholder {min-height:230px;width:100%;display:flex;align-items:center;justify-content:center;text-align:center;color:#555!important;font-size:14px;letter-spacing:0;}
section.project.dark .project-gallery .gallery-slot {background:#292929;}
section.project.dark .project-gallery .gallery-placeholder {color:#ccc!important;}
@media(max-width:850px){section.project .project-gallery{grid-template-columns:1fr!important;}section.project .project-gallery .gallery-slot{min-height:170px;}}


/* Panasonic: two photographs in their entirety, 1/3 + 2/3 */
.project-gallery.panasonic-two-photos {display:grid !important;grid-template-columns:minmax(0,1fr) minmax(0,2fr) !important;align-items:center !important;gap:18px !important;}
.panasonic-two-photos .gallery-slot {min-width:0 !important;min-height:0 !important;height:auto !important;aspect-ratio:auto !important;overflow:visible !important;display:flex !important;align-items:center !important;justify-content:center !important;background:transparent !important;}
.panasonic-two-photos .gallery-slot img {width:100% !important;height:auto !important;max-height:none !important;object-fit:contain !important;object-position:center !important;display:block !important;aspect-ratio:auto !important;}
@media(max-width:700px){.project-gallery.panasonic-two-photos{grid-template-columns:1fr !important;}}


/* Panasonic full-bleed gallery — outside content column, no cropping */
section.project.dark > .panasonic-two-photos {
 box-sizing:border-box !important; position:relative !important;
 width:calc(100% - 6vw) !important; max-width:1800px !important;
 margin:40px auto 65px !important; padding:0 !important;
 display:grid !important; grid-template-columns:minmax(0,1fr) minmax(0,2fr) !important;
 align-items:center !important; gap:18px !important;
 overflow:visible !important;
}
section.project.dark > .panasonic-two-photos .gallery-slot {
 display:flex !important; width:100% !important; height:auto !important;
 min-height:0 !important; max-height:none !important; aspect-ratio:auto !important;
 align-items:center !important; justify-content:center !important; overflow:visible !important;
}
section.project.dark > .panasonic-two-photos .gallery-slot img {
 display:block !important; width:100% !important; height:auto !important;
 max-height:none !important; object-fit:contain !important; object-position:center !important;
 aspect-ratio:auto !important;
}
@media(max-width:700px) {
 section.project.dark > .panasonic-two-photos {width:calc(100% - 32px) !important;grid-template-columns:1fr !important;gap:20px !important;}
}


/* Panasonic: one panoramic hero, three equal-sized lower frames */
section.project.dark > .panasonic-four-photos {
 box-sizing:border-box!important;position:relative!important;width:calc(100% - 6vw)!important;
 max-width:1800px!important;margin:40px auto 65px!important;padding:0!important;
 display:flex!important;flex-direction:column!important;gap:18px!important;
}
.panasonic-four-photos .panasonic-featured {display:block!important;width:100%!important;height:auto!important;min-height:0!important;aspect-ratio:auto!important;overflow:visible!important;background:transparent!important;}
.panasonic-four-photos .panasonic-featured img {display:block!important;width:100%!important;height:auto!important;object-fit:contain!important;max-height:none!important;aspect-ratio:auto!important;}
.panasonic-four-photos .panasonic-thumbnails {display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:18px!important;align-items:stretch!important;}
.panasonic-four-photos .panasonic-thumbnails .gallery-slot {box-sizing:border-box!important;display:flex!important;align-items:center!important;justify-content:center!important;min-width:0!important;width:100%!important;aspect-ratio:4/3!important;height:auto!important;min-height:0!important;overflow:hidden!important;background:#252525!important;}
.panasonic-four-photos .panasonic-thumbnails .gallery-slot img {display:block!important;width:100%!important;height:100%!important;max-height:100%!important;object-fit:contain!important;object-position:center!important;aspect-ratio:auto!important;}
.panasonic-four-photos .panasonic-placeholder {border:1px dashed #666!important;color:#999!important;font-size:14px!important;text-align:center!important;}
@media(max-width:700px){section.project.dark > .panasonic-four-photos {width:calc(100% - 32px)!important;gap:12px!important;} .panasonic-four-photos .panasonic-thumbnails {gap:8px!important;} .panasonic-four-photos .panasonic-placeholder {font-size:11px!important;}}


/* TM Technologie: panoramiczny kadr nad trzema fotografiami, jak Panasonic */
.tm-gallery {grid-column:1 / -1; width:100%; max-width:none; margin:24px 0 46px; display:block;}
.tm-gallery .tm-featured {min-height:270px;display:flex;align-items:center;justify-content:center; background:#252525; color:#aaa; border:1px dashed #777; font-size:16px; text-align:center;}
.tm-gallery .panasonic-thumbnails {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:18px;align-items:start;}
.tm-gallery .panasonic-small {height:auto !important;min-height:0 !important; background:transparent !important;}
.tm-gallery .panasonic-small img {display:block;width:100%;height:auto !important;max-height:none !important;object-fit:contain !important;}
@media(max-width:700px){.tm-gallery .panasonic-thumbnails{grid-template-columns:1fr;}}

.tm-featured{height:auto!important;min-height:0!important;aspect-ratio:auto!important;overflow:visible!important;display:block!important;background:transparent!important}.tm-featured img{display:block!important;width:100%!important;height:auto!important;max-height:none!important;object-fit:contain!important;object-position:center!important}

/* Spójne narożniki wszystkich zdjęć, bez ramek i bez kadrowania */
.project-gallery .gallery-slot, .project-gallery .gallery-slot img,
.project-gallery img, .project-gallery .gallery-placeholder { border-radius: 16px !important; }
.project-gallery .gallery-slot { border: 0 !important; outline: 0 !important; box-shadow: none !important; overflow: hidden !important; background: transparent !important; padding: 0 !important; }
.project-gallery .gallery-slot img, .project-gallery img { display: block !important; max-width: 100% !important; height: auto !important; object-fit: contain !important; border: 0 !important; outline: 0 !important; box-shadow: none !important; }
.project-gallery .gallery-placeholder { border: 0 !important; }


/* TM gallery: same width as the Panasonic / Automatyzacja dopasowana do produkcji gallery */
section.more .tm-gallery {position:relative!important;left:50%!important;transform:translateX(-50%)!important;width:94vw!important;max-width:1800px!important;margin:40px 0 65px!important;box-sizing:border-box!important;}
section.more .tm-gallery .tm-featured,section.more .tm-gallery .tm-featured img {width:100%!important;max-width:100%!important;height:auto!important;object-fit:contain!important;border:0!important;border-radius:16px!important;box-shadow:none!important;background:transparent!important;}
@media(max-width:700px){section.more .tm-gallery{width:calc(100vw - 32px)!important;}}

/* v24 — centrowanie galerii TM w siatce bez przesunięcia */
section.more .grid > .tm-gallery, section.more .tm-gallery {grid-column:1 / -1 !important; justify-self:center !important; position:relative !important; left:auto !important; right:auto !important; transform:none !important; width:min(94vw,1800px) !important; max-width:100% !important; margin:40px auto 65px !important; box-sizing:border-box !important;}
@media(max-width:700px){section.more .tm-gallery{width:100% !important;margin:24px auto 40px !important;}}


/* v25: TM gallery uses EXACT Panasonic geometry, without parent grid constraints */
section.more > .tm-gallery.panasonic-four-photos {
 box-sizing:border-box!important;position:relative!important;left:auto!important;right:auto!important;
 transform:none!important;width:calc(100% - 6vw)!important;max-width:1800px!important;
 margin:40px auto 65px!important;padding:0!important;display:flex!important;
 flex-direction:column!important;gap:18px!important;grid-column:auto!important;
}
section.more > .tm-gallery .tm-featured {display:block!important;width:100%!important;min-height:0!important;height:auto!important;}
section.more > .tm-gallery .tm-featured img {width:100%!important;height:auto!important;object-fit:contain!important;}
section.more > .tm-gallery .panasonic-thumbnails {width:100%!important;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:18px!important;}
@media(max-width:700px){section.more > .tm-gallery.panasonic-four-photos {width:calc(100% - 32px)!important;gap:12px!important;}section.more > .tm-gallery .panasonic-thumbnails{gap:8px!important;}}


/* Panasonic: zdjęcia w dolnym rzędzie, pionowe zdjęcie kadrowane tylko w ramach kafelka */
section.project.dark .panasonic-thumbnails .gallery-slot {overflow:hidden;border-radius:16px;}
section.project.dark .panasonic-thumbnails .gallery-slot img {display:block;width:100%;height:100%;object-fit:contain;border-radius:16px;}
section.project.dark .panasonic-thumbnails .gallery-slot:last-child img {object-fit:cover;object-position:center center;}


/* v28 — TM gallery identical geometry to Panasonic; outside content .c */
section.project:not(.dark) > .panasonic-four-photos {
  box-sizing:border-box!important; width:calc(100% - 6vw)!important;
  max-width:1800px!important; margin:40px auto 65px!important;
  padding:0!important; position:relative!important; left:auto!important;
  right:auto!important; transform:none!important; display:flex!important;
  flex-direction:column!important; gap:18px!important; grid-column:auto!important;
}
section.project:not(.dark) > .panasonic-four-photos .panasonic-featured {
  display:block!important; width:100%!important; height:auto!important;
  min-height:0!important; border:0!important; box-shadow:none!important;
  background:transparent!important; overflow:hidden!important; border-radius:16px!important;
}
section.project:not(.dark) > .panasonic-four-photos .panasonic-featured img {
  display:block!important; width:100%!important; height:auto!important;
  max-height:none!important; object-fit:contain!important; border-radius:16px!important;
}
section.project:not(.dark) > .panasonic-four-photos .panasonic-thumbnails {
  width:100%!important; display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:18px!important; margin-top:0!important;
}
@media(max-width:700px){section.project:not(.dark) > .panasonic-four-photos{width:calc(100% - 32px)!important;gap:12px!important;}section.project:not(.dark) > .panasonic-four-photos .panasonic-thumbnails{gap:8px!important;}}


/* SHIMA — galeria o szerokości Panasonic, panorama + 1/3 i 2/3 */
section.project#shima > .c > .visual.shima-four-photos {display:grid!important;grid-template-columns:minmax(0,1fr)!important;width:100%!important;max-width:none!important;margin-left:auto!important;margin-right:auto!important;gap:16px!important;height:auto!important;}
#shima .shima-featured {width:100%!important;max-width:100%!important;height:auto!important;aspect-ratio:auto!important;overflow:hidden;border-radius:16px;}
#shima .shima-featured img {display:block;width:100%;height:auto;object-fit:contain;border-radius:16px;}
#shima .shima-bottom {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:16px;width:100%;}
#shima .shima-bottom .gallery-slot {min-width:0;min-height:230px;border-radius:16px;overflow:hidden;}
#shima .shima-bottom .gallery-placeholder {height:100%;min-height:230px;display:flex;align-items:center;justify-content:center;border-radius:16px;}
@media(max-width:650px){#shima .shima-bottom{grid-template-columns:1fr;}}

/* v31: SHIMA gallery uses the same full-width layout as Panasonic/TM */
section.project#shima > .visual.shima-four-photos {width:calc(100% - 32px)!important;max-width:none!important;margin:0 auto!important;display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:12px!important;height:auto!important;}
section.project#shima .shima-featured {width:100%!important;height:auto!important;aspect-ratio:auto!important;min-height:0!important;overflow:hidden!important;border:0!important;background:transparent!important;border-radius:16px!important;}
section.project#shima .shima-featured img {display:block!important;width:100%!important;height:auto!important;object-fit:contain!important;border-radius:16px!important;}
section.project#shima .shima-thumbnails {display:grid!important;grid-template-columns:1fr 2fr!important;gap:8px!important;width:100%!important;}
section.project#shima .shima-thumbnails .gallery-slot {min-width:0!important;border-radius:16px!important;overflow:hidden!important;}
@media(max-width:650px){section.project#shima .shima-thumbnails{grid-template-columns:1fr!important;}}


/* v35: panorama + 3 row images, matched to Panasonic / TM */
#shima .shima-bottom {grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:18px!important;align-items:stretch!important;}
#shima .shima-bottom > .gallery-slot {height:clamp(220px,25vw,390px)!important;border-radius:16px!important;overflow:hidden!important;}
#shima .shima-bottom > .gallery-slot img {width:100%!important;height:100%!important;object-fit:cover!important;object-position:center center!important;}
#shima .shima-bottom > .gallery-slot:first-child img {object-position:center 9%!important;}
#shima .shima-bottom > .gallery-slot:nth-child(2) img {object-fit:cover!important;}
@media(max-width:650px){#shima .shima-bottom{grid-template-columns:1fr!important;}#shima .shima-bottom > .gallery-slot{height:260px!important;}#shima .shima-bottom > .gallery-slot img{height:100%!important;object-fit:cover!important;}}


/* Wspolny rytm naglowkow i galerii wszystkich realizacji */
section.project {padding-top:76px!important;padding-bottom:76px!important;}
section.project .c > .ph {gap:clamp(24px,3vw,48px)!important;margin-bottom:22px!important;align-items:start!important;}
section.project .ph h2 {font-size:clamp(38px,4.4vw,68px)!important;line-height:1.04!important;letter-spacing:-.035em!important;margin-bottom:18px!important;}
section.project .ph .copy {margin-top:0!important;margin-bottom:0!important;line-height:1.55!important;}
section.project .c > .stats {margin-top:24px!important;margin-bottom:0!important;}
section.project > .visual.project-gallery {margin-top:24px!important;margin-bottom:32px!important;}
section.project#shima > .visual.shima-four-photos {margin-top:24px!important;margin-bottom:32px!important;}
section.project.dark > .panasonic-four-photos,
section.project:not(.dark) > .panasonic-four-photos {margin-top:24px!important;margin-bottom:32px!important;}
@media(max-width:760px){
 section.project {padding-top:52px!important;padding-bottom:52px!important;}
 section.project .c > .ph {gap:14px!important;margin-bottom:16px!important;}
 section.project .ph h2 {font-size:clamp(34px,8vw,52px)!important;margin-bottom:14px!important;}
 section.project > .visual.project-gallery,
 section.project#shima > .visual.shima-four-photos,
 section.project.dark > .panasonic-four-photos,
 section.project:not(.dark) > .panasonic-four-photos {margin-top:18px!important;margin-bottom:20px!important;}
}

section.project > .c > .ph{align-items:start!important;}section.project > .c > .stats{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:16px!important;margin-top:24px!important;padding-top:22px!important;border-top:1px solid rgba(140,140,140,.4)!important;}section.project > .c > .stats .stat strong{font-variant-numeric:tabular-nums;}section.project > .c > .stats .stat span{display:block;}@media(max-width:700px){section.project > .c > .stats{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:20px 12px!important;}}

/* v38: nagłówek po lewej, kompaktowe parametry po prawej */
section.project > .c > .ph {display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr)!important;column-gap:clamp(28px,4vw,75px)!important;row-gap:12px!important;align-items:center!important;margin-bottom:30px!important;}
section.project > .c > .ph > .idx {grid-column:1/-1!important;margin:0 0 3px!important;}
section.project > .c > .ph > div:not(.idx):not(.stats) {grid-column:1!important;min-width:0;}
section.project > .c > .ph h2 {font-size:clamp(32px,3.25vw,54px)!important;line-height:1.03!important;letter-spacing:-1.6px!important;margin:0 0 15px!important;}
section.project > .c > .ph .copy {font-size:clamp(15px,1.1vw,18px)!important;line-height:1.48!important;}
section.project > .c > .ph > .stats {grid-column:2!important;grid-row:2!important;display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:12px!important;border-top:0!important;border-left:1px solid rgba(140,140,140,.4)!important;margin:0!important;padding:4px 0 4px 26px!important;align-items:start!important;}
section.project > .c > .ph .stat {padding:0!important;min-width:0!important;}
section.project > .c > .ph .stat strong {font-size:clamp(25px,2.3vw,39px)!important;letter-spacing:-1.2px!important;line-height:1.05!important;white-space:nowrap!important;}
section.project > .c > .ph .stat span {font-size:12px!important;line-height:1.35!important;margin-top:7px!important;}
@media(max-width:900px){section.project > .c > .ph{grid-template-columns:1fr!important;gap:14px!important;}section.project > .c > .ph > .stats{grid-column:1!important;grid-row:auto!important;border-left:0!important;border-top:1px solid rgba(140,140,140,.4)!important;padding:17px 0 0!important;}section.project > .c > .ph > div:not(.idx):not(.stats){grid-column:1!important;}}
@media(max-width:480px){section.project > .c > .ph > .stats{grid-template-columns:repeat(2,minmax(0,1fr))!important;row-gap:18px!important;}}


/* Realizacje v39 — karty etapów */
.process.process-cards { padding: 86px 5% 96px; }
.process-cards .pt { margin-bottom: 32px; }
.process-cards .process-card-grid { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px; }
.process-cards .process-card { background:#e9e9e6; border-radius:12px; min-height:170px; padding:22px; display:flex; flex-direction:column; justify-content:space-between; color:#151515; }
.process-cards .process-card-featured { background:#ffdd00; }
.process-cards .process-card-number { display:block;font-size:clamp(36px,4vw,60px);font-weight:700;letter-spacing:-.06em;line-height:1; }
.process-cards .process-card-title { display:block;font-size:17px;line-height:1.25;font-weight:500; }
@media(max-width:850px){.process-cards .process-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.process.process-cards{padding:65px 5%}}
@media(max-width:440px){.process-cards .process-card{min-height:135px;padding:16px}.process-cards .process-card-title{font-size:15px}}

/* v40 — nagłówek w skali sekcji realizacji i siedem pionowych kafelków */
.process.process-cards .pt h2{font-size:clamp(38px,4.5vw,64px);line-height:1.02;letter-spacing:-.045em;font-weight:500}
.process.process-cards .pt{align-items:start;gap:36px;margin-bottom:28px}
.process.process-cards .process-card-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:10px}
.process.process-cards .process-card{min-width:0;min-height:205px;padding:17px 12px;border-radius:12px}
.process.process-cards .process-card-number{font-size:clamp(32px,3vw,48px)}
.process.process-cards .process-card-title{font-size:clamp(12px,1.12vw,15px);overflow-wrap:anywhere}
@media(max-width:900px){.process.process-cards .process-card-grid{overflow-x:auto;grid-template-columns:repeat(7,minmax(125px,1fr));padding-bottom:8px}.process.process-cards .pt{grid-template-columns:1fr;gap:12px}}
@media(max-width:440px){.process.process-cards .process-card{min-height:175px;padding:14px 11px}}


/* Source: loopstore-home-v39.html — shared navigation, logos, social icons, footer and contact CTAs */
nav {
        position: absolute;
        z-index: 10;
        top: 0;
        left: 0;
        width: 100%;
        padding: 28px 5%;
        display: flex;
        justify-content: space-between;
        align-items: center;
        color: white;
    }
.logo {
        font-size: 24px;
        font-weight: 700;
        letter-spacing: 1px;
    }
.nav-links {
        display: flex;
        gap: 32px;
        align-items: center;
        font-size: 14px;
    }
.nav-cta {
        background: var(--accent);
        color: var(--black);
        border: none;
        padding: 12px 20px;
        border-radius: 100px;
        font-weight: 600;
        transition: 0.25s ease;
    }
.nav-cta:hover {
        transform: translateY(-2px);
    }
.button {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        padding: 17px 26px;
        border-radius: 100px;
        background: var(--accent);
        color: var(--black);
        font-size: 15px;
        font-weight: 700;
        transition: .25s ease;
        white-space: nowrap;
    }
.button:hover {
        transform: translateY(-2px);
    }
.final-cta .button {
        background: #111111;
        color: #ffffff;
    }
footer {
        padding: 50px 5%;
        background: var(--black);
        color: white;
        display: flex;
        justify-content: space-between;
        font-size: 14px;
    }
@media  (max-width: 900px) {nav {
            padding: 22px 6%;
        }.nav-links a:not(.nav-cta) {
            display: none;
        }footer {
            flex-direction: column;
            gap: 20px;
        }}
.logo {
        display: inline-flex;
        align-items: center;
        width: 190px;
        line-height: 0;
    }
nav .brand-logo {
        filter: drop-shadow(0 1px 5px rgba(255,255,255,.28))
                drop-shadow(0 2px 5px rgba(0,0,0,.18));
    }
.footer-brand {
        width: 210px;
        line-height: 0;
    }
footer {
        background: var(--light);
        color: var(--black);
        align-items: center;
    }
@media  (max-width: 600px) {.logo { width: 155px; }.footer-brand { width: 180px; }}
.logo{
    width:190px !important;
    display:inline-flex !important;
    align-items:center !important;
    line-height:0 !important;
}
.header-logo-img{
    display:block !important;
    width:100% !important;
    height:auto !important;
    object-fit:contain !important;
    filter:none !important;
    background:transparent !important;
}
.footer-brand{
    width:140px !important; 
    line-height:0 !important;
}
.footer-logo-img{
    display:block !important;
    width:100% !important;
    height:auto !important;
    object-fit:contain !important;
    filter:none !important;
    background:transparent !important;
}
@media (max-width:600px){.logo{width:155px !important;}.footer-brand{width:120px !important;}}

.language-switch {display:inline-flex;align-items:center;padding:3px;border:1px solid rgba(255,255,255,.45);border-radius:100px;gap:2px;flex-shrink:0;}
.language-switch a {padding:7px 10px;border-radius:100px;font-size:12px;font-weight:700;line-height:1;transition:background .2s,color .2s;}
.language-switch a[aria-current="page"] {background:var(--accent);color:var(--black);}
.language-switch a:hover {background:white;color:var(--black);}
.footer-meta {display:flex;align-items:center;gap:24px;flex-wrap:wrap;}
.footer-copyright {white-space:nowrap;font-size:13px;}
.footer-social {display:flex;align-items:center;gap:10px;}
.social-link {display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border:1px solid currentColor;border-radius:50%;}
.social-link svg {width:18px;height:18px;fill:currentColor;}
.social-link[href]:hover {background:var(--accent);color:var(--black);border-color:var(--accent);}
nav a:focus-visible,footer a:focus-visible {outline:2px solid var(--accent);outline-offset:4px;}
@media (max-width:1000px) {nav {gap:18px;flex-wrap:wrap;} .nav-links {gap:18px;flex-wrap:wrap;justify-content:flex-end;} footer {gap:24px;flex-wrap:wrap;}}
@media (max-width:600px) {nav {padding:20px 5%;} .nav-links {width:100%;justify-content:flex-start;gap:12px 16px;font-size:13px;} .nav-cta {padding:10px 14px;} .language-switch a {padding:7px 8px;} .hero-content {padding-top:210px;} .footer-meta {gap:18px;}}


.nav-social {display:flex;align-items:center;gap:8px;flex-shrink:0;}
.nav-social .social-link {width:34px;height:34px;color:inherit;}
.nav-social .social-link svg {width:16px;height:16px;}
.nav-social .social-link[href]:hover {background:var(--accent);color:var(--black);border-color:var(--accent);}


.social-link,
.nav-social .social-link {
    appearance:none;display:inline-flex;align-items:center;justify-content:center;
    width:42px;height:42px;padding:0;border:1px solid var(--accent);
    border-radius:12px;background:var(--accent);color:var(--black);
    cursor:pointer;box-shadow:0 2px 5px rgba(0,0,0,.12);
    transition:background .2s,transform .2s,box-shadow .2s;
}
.social-link:hover,
.nav-social .social-link:hover {background:#ffe84d;border-color:#ffe84d;transform:translateY(-2px);box-shadow:0 4px 9px rgba(0,0,0,.2);}
.social-link:active,
.nav-social .social-link:active {transform:translateY(0);box-shadow:none;}
.social-link:focus-visible {outline:2px solid currentColor;outline-offset:4px;}
.social-link svg,
.nav-social .social-link svg {width:19px;height:19px;fill:currentColor;}

a.button[href*="kontakt"],a.button[href*="contact"],a.button[href*="mailto:"],a.button.cta-contact, .contact-cta .button {border-radius:100px!important;padding:17px 26px!important;background:var(--accent)!important;color:var(--black)!important;font-size:15px!important;font-weight:700!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;text-decoration:none!important;}