        *, *::before, *::after {
          box-sizing: border-box;
        }

        @font-face {
          font-family: "bootstrap-icons";
          src: url("/pl/bootstrap-icons/fonts/bootstrap-icons.woff2?dd67030699838ea613ee6dbda90effa6") format("woff2");
          font-display: swap;
        }

        .bi::before {
          display: inline-block;
          font-family: "bootstrap-icons" !important;
          font-style: normal;
          font-weight: normal !important;
          font-variant: normal;
          text-transform: none;
          line-height: 1;
          vertical-align: -.125em;
          -webkit-font-smoothing: antialiased;
          -moz-osx-font-smoothing: grayscale;
        }

        .bi-shield-fill-check::before { content: "\f531"; }
        .bi-chevron-right::before { content: "\f285"; }
        .bi-phone::before { content: "\f4e7"; }
        .bi-envelope::before { content: "\f32f"; }
        .bi-geo-alt::before { content: "\f3e8"; }
        .bi-file-text-fill::before { content: "\f3b8"; }
        .bi-globe::before { content: "\f3ee"; }
        .bi-facebook::before { content: "\f344"; }
        .bi-instagram::before { content: "\f437"; }
        .bi-linkedin::before { content: "\f472"; }
        .bi-tiktok::before { content: "\f6cc"; }
        .bi-youtube::before { content: "\f62b"; }

        .sr-only {
          position: absolute;
          width: 1px;
          height: 1px;
          padding: 0;
          margin: -1px;
          overflow: hidden;
          clip: rect(0, 0, 0, 0);
          white-space: nowrap;
          border: 0;
        }

        .container {
          width: 100%;
          padding-right: 0.75rem;
          padding-left: 0.75rem;
          margin-right: auto;
          margin-left: auto;
        }

        @media (min-width: 576px) { .container { max-width: 540px; } }
        @media (min-width: 768px) { .container { max-width: 720px; } }
        @media (min-width: 992px) { .container { max-width: 960px; } }
        @media (min-width: 1200px) { .container { max-width: 1140px; } }
        @media (min-width: 1400px) { .container { max-width: 1320px; } }

        .footer-tier-1 {
          display: grid;
          grid-template-columns: 1fr;
          gap: 2.5rem;
          margin-bottom: 2.5rem;
        }

        @media (min-width: 768px) {
          .footer-tier-1 { grid-template-columns: repeat(2, 1fr); }
        }

        @media (min-width: 1024px) {
          .footer-tier-1 {
            grid-template-columns: 1.2fr 1fr 1fr;
            gap: 4rem;
          }
        }

        .footer-divider {
          border: 0;
          height: 1px;
          background: rgba(255, 255, 255, 0.05);
          margin: 0 0 2.5rem 0;
          width: 100%;
        }

        .footer-tier-2 {
          display: grid;
          grid-template-columns: 1fr;
          gap: 2.5rem;
          margin-bottom: 1rem;
        }

        @media (min-width: 1024px) {
          .footer-tier-2 {
            grid-template-columns: 3fr 1fr;
            gap: 3rem;
          }
        }

        .footer-nav-wrapper {
          display: grid;
          grid-template-columns: repeat(2, 1fr);
          gap: 1.5rem 1rem;
        }

        @media (min-width: 768px) {
          .footer-nav-wrapper {
            grid-template-columns: repeat(4, 1fr);
            gap: 2rem;
          }
        }

        .reviews-grid {
          display: grid;
          grid-template-columns: 1fr 1fr;
          gap: 0.6rem;
        }

        .d-flex { display: flex !important; }
        .d-block { display: block !important; }
        .d-none { display: none !important; }
        .align-items-center { align-items: center !important; }
        .align-items-start { align-items: flex-start !important; }
        .justify-content-between { justify-content: space-between !important; }

        @media (min-width: 768px) {
          .text-md-start { text-align: left !important; }
          .text-md-end { text-align: right !important; }
          .justify-content-md-end { justify-content: flex-end !important; }
          .d-md-inline { display: inline !important; }
        }

        .mb-0 { margin-bottom: 0 !important; }
        .mb-1 { margin-bottom: 0.25rem !important; }
        .mb-2 { margin-bottom: 0.5rem !important; }
        .mb-3 { margin-bottom: 1rem !important; }
        .mb-4 { margin-bottom: 1.5rem !important; }
        .me-1 { margin-right: 0.25rem !important; }
        .me-2 { margin-right: 0.5rem !important; }
        .mt-1 { margin-top: 0.25rem !important; }
        .mt-2 { margin-top: 0.5rem !important; }
        .mt-3 { margin-top: 1rem !important; }
        .mt-4 { margin-top: 1.5rem !important; }
        .mx-1 { margin-right: 0.25rem !important; margin-left: 0.25rem !important; }
        .w-100 { width: 100% !important; }
        .list-unstyled { padding-left: 0; list-style: none; margin-top: 0; }

        .btn {
          display: inline-block;
          font-weight: 400;
          line-height: 1.5;
          color: #212529;
          text-align: center;
          text-decoration: none;
          vertical-align: middle;
          cursor: pointer;
          background-color: transparent;
          border: 1px solid transparent;
          padding: .375rem .75rem;
          font-size: 1rem;
          border-radius: .375rem;
          transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;
        }

        footer {
          background-color: #182132;
          color: #d8d8d8;
          overflow: hidden;
          line-height: 1.5;
          font-size: 13px;
        }

        .footer-wave svg {
          display: block;
          width: 100%;
          height: 70px;
          fill: #353e4f;
          transform: translateY(1px);
        }

        .footer-content {
          padding-top: 2rem;
          padding-bottom: 2rem;
        }

        .footer-brand {
          display: inline-flex;
          align-items: center;
          text-decoration: none;
          margin-bottom: 1rem;
        }

        .footer-brand img {
          height: 35px;
          width: auto;
          display: block;
        }

        .brand-description {
          color: rgba(216, 216, 216, 0.75);
          font-size: 0.85rem;
          line-height: 1.6;
          margin-top: -4px;
        }

        .text-highlight {
          color: #fff;
          font-weight: 500;
        }

        .krs-check-link {
          color: rgba(216, 216, 216, 0.8);
          text-decoration: none;
          font-weight: 400;
          font-size: 12px;
          display: inline-flex;
          align-items: center;
          transition: all 0.2s ease;
          background-color: rgba(255, 255, 255, 0.05);
          padding: 11px;
          border-radius: 4px;
          justify-content: center;
        }

        .krs-check-link:hover {
          color: #359aea;
          background-color: rgba(53, 154, 234, 0.1);
          border-color: rgba(53, 154, 234, 0.3);
        }

        .award-badge {
          display: inline-flex;
          flex-direction: column;
          align-items: center;
          padding: 10px 14px;
          border-radius: 6px;
          transition: all 0.3s ease;
          text-decoration: none;
          gap: 8px;
          border: 1px solid transparent;
        }

        .award-badge:hover {
          background: linear-gradient(145deg, rgba(255,255,255,0.04) 0%, rgba(212,175,55,0.12) 100%);
          box-shadow: 0 4px 12px rgba(0,0,0,0.1);
        }

        .award-logos {
          display: flex;
          gap: 10px;
          justify-content: space-evenly;
          align-items: center;
          flex-direction: row;
          width: 100%;
        }

        .award-logos { container-type: inline-size; }

        /* 4 medale: domyślnie siatka 2x2 obok logo, w szerokiej kolumnie jeden rząd */
        .award-medals {
          display: grid;
          grid-template-columns: repeat(2, auto);
          gap: 6px 10px;
          justify-content: center;
          align-items: center;
        }

        .award-img {
          display: block;
          height: 44px;
          width: auto;
          filter: drop-shadow(0px 2px 3px rgba(0,0,0,0.3));
        }

        .award-logos-my {
          height: 90px;
          width: auto;
          flex-shrink: 0;
        }

        @container (min-width: 390px) {
          .award-medals { grid-template-columns: repeat(4, auto); }
          .award-img { height: 50px; }
          .award-logos-my { height: 70px; }
        }

        .award-text {
          display: flex;
          flex-direction: column;
          justify-content: center;
          line-height: 1.2;
          text-align: center;
        }

        .award-title {
          color: #e5c158;
          font-weight: 600;
          font-size: 0.8rem;
          letter-spacing: 0.5px;
        }

        .award-subtitle {
          color: rgba(216, 216, 216, 0.8);
          font-size: 0.65rem;
          text-transform: uppercase;
          letter-spacing: 0.5px;
          margin-top: 3px;
        }

        .footer-heading {
          color: #fff;
          font-weight: 600;
          font-size: 13px;
          margin-bottom: 1rem;
          margin-top: 0;
          text-transform: uppercase;
          letter-spacing: 0.5px;
        }

        .footer-links li {
          margin-bottom: 0.4rem;
        }

        .footer-links a {
          color: rgba(216, 216, 216, 0.7);
          text-decoration: none;
          transition: all 0.2s ease;
          display: flex;
          align-items: center;
          gap: 6px;
        }

        .footer-links a:hover {
          color: #359aea;
          transform: translateX(3px);
        }

        /* "Zobacz tez" - linki tematyczne dla konkretnej strony (POWIAZANE nizej). Te same
           .footer-heading/.footer-links, tylko ulozone w jednym wierszu. */
        .footer-related {
          border-top: 1px solid rgba(255, 255, 255, 0.05);
          padding-top: 1.5rem;
          margin-top: 1.5rem;
        }
        .footer-related .footer-heading { margin-bottom: 0.75rem; }
        .footer-related .footer-links { display: flex; flex-wrap: wrap; gap: 0.4rem 1.75rem; }
        .footer-related .footer-links li { margin-bottom: 0; }

        .footer-links .bi-chevron-right {
          font-size: 0.7rem;
          color: rgba(53, 154, 234, 0.6);
        }

        .contact-info, .company-details {
          color: rgba(216, 216, 216, 0.7);
          font-style: normal;
          font-size: 0.85rem;
          margin-bottom: 0;
        }

        .contact-info a {
          color: rgba(216, 216, 216, 0.9);
          text-decoration: none;
          transition: color 0.2s ease;
        }

        .contact-info a:hover { color: #359aea; }
        .contact-info i { color: #359aea; font-size: 1rem; width: 20px; text-align: center; }

        .company-details-compact {
          font-size: 0.8rem;
          color: rgba(216, 216, 216, 0.6);
          line-height: 1.4;
          border-radius: 6px;
          margin-top: 14px;
          display: flex;
          flex-direction: column;
          gap: 9px;
        }

        .data-label {
          color: rgba(216, 216, 216, 0.9);
          font-weight: 500;
        }

        .btn-outline-primary {
          padding: 10px 14px;
          border-radius: 4px;
          font-size: 0.8rem;
          font-weight: 400;
          transition: all 0.2s ease-in-out;
          display: inline-flex;
          align-items: center;
          justify-content: center;
          background-color: rgba(255, 255, 255, 0.05);
          color: rgba(216, 216, 216, 0.8) !important;
        }

        .btn-outline-primary:hover {
          background-color: #359aea !important;
          border-color: #359aea !important;
          box-shadow: 0 2px 5px rgba(0,0,0,0.2);
        }

        .blog-posts li {
          margin-bottom: 0.8rem;
        }

        .blog-posts a {
          color: rgba(216, 216, 216, 0.85);
          text-decoration: none;
          font-size: 0.85rem;
          display: flex;
          align-items: flex-start;
          gap: 8px;
          transition: color 0.2s ease;
        }

        .blog-posts a:hover { color: #359aea; }
        .blog-posts i { color: #e74c3c; margin-top: 4px; font-size: 0.9rem; }
        
        .blog-posts .post-date {
          font-size: 0.7rem;
          color: rgba(216, 216, 216, 0.75);
          margin-left: 22px;
          display: block;
        }

        .text-muted { --bs-text-opacity: 1; color: #828f9e !important; }

        .compact-rating {
          background: rgba(255, 255, 255, 0.03);
          padding: 8px 10px;
          border-radius: 6px;
          display: flex;
          align-items: center;
          justify-content: space-between;
          text-decoration: none;
          transition: all 0.2s ease;
        }

        .compact-rating:hover {
          background: rgba(255, 255, 255, 0.07);
          transform: translateY(-2px);
          border-color: rgba(255, 255, 255, 0.1);
        }

        .cr-left { display: flex; flex-direction: column; }
        .cr-platform { color: #fff; font-size: 0.75rem; font-weight: 600; line-height: 1.2; }
        .cr-count { color: rgba(216, 216, 216, 0.75); font-size: 0.65rem; }
        .cr-right { text-align: right; }
        .cr-stars { color: #f39c12; font-size: 0.75rem; letter-spacing: 1px; line-height: 1;}
        .cr-score { color: #fff; font-size: 0.75rem; font-weight: 700; margin-left: 2px; }

        .footer-bottom {
          background-color: #141b29;
          padding: 1.25rem 0;
          font-size: 0.8rem;
          border-top: 1px solid rgba(255, 255, 255, 0.03);
        }

        .legal-links a {
          color: rgba(216, 216, 216, 0.75);
          text-decoration: none;
          margin-right: 15px;
          transition: color 0.2s ease;
        }

        .legal-links a:hover { color: #359aea; }

        .bottom-socials a {
          color: rgba(216, 216, 216, 0.75);
          font-size: 1.1rem;
          margin-left: 12px;
          transition: all 0.2s ease;
        }

        .bottom-socials a:hover { color: #359aea; transform: scale(1.1); }
        .payment-icons img { height: 13px; margin-left: 10px; opacity: 0.6; }

        @media (max-width: 767.98px) {
          .footer-content { padding-top: 1.5rem; }
          .bottom-bar-flex { flex-direction: column; text-align: center; gap: 15px; }
          .legal-links { margin-bottom: 5px; }
          .legal-links a { display: inline-block; margin: 3px 6px; font-size: 0.75rem; }
          .bottom-socials { order: -1; margin-bottom: 10px; }
          .bottom-socials a { margin: 0 10px; }
          .payment-icons { justify-content: center; margin-top: 10px; width: 100%; }
        }

        .company-details a[href^="tel"], .company-details a[href^="sms"] {
          color: inherit !important;
          text-decoration: none !important;
        }

        .compan {
          display: flex;
        }

        .data-label {
          color: rgba(216, 216, 216, 0.9);
          font-weight: 500;
          width: 60px;
        }
