/* =========================================================
   SERWISPLOTEROW.COM — GLOBAL / HEADER / HERO / NEEDS / SERVICE v4
   ========================================================= */

:root {
    --sp-bg: #070c0d;
    --sp-bg-deep: #04090a;
    --sp-panel: #0d1c1d;
    --sp-panel-soft: rgba(33,23,16,.82);
    --sp-line: rgba(203,178,157,.20);
    --sp-line-strong: rgba(203,178,157,.34);
    --sp-text: #f6f8fc;
    --sp-muted: #c5bbb3;
    --sp-blue: #ffe7c7;
    --sp-blue-2: #ffe7c7;
    --sp-violet: #ffe7c7;
    --sp-pink: #ff16a8;
    --sp-shell: 1440px;
    --sp-radius: 18px;
    --sp-shadow: 0 24px 80px rgba(0,0,0,.42);
}

* {
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
}

body.sp-site {
    margin: 0;
    background: var(--sp-bg);
    color: var(--sp-text);
    font-family: Inter, Manrope, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    font-size: 16px;
    line-height: 1.55;
    overflow-x: hidden;
}

body.sp-site a {
    color: inherit;
    text-decoration: none;
}

body.sp-site img {
    max-width: 100%;
    height: auto;
}

.sp-shell {
    width: min(calc(100% - 48px), var(--sp-shell));
    margin-inline: auto;
}

.sp-main {
    min-height: 60vh;
}

.sp-skip-link {
    position: fixed;
    left: 16px;
    top: -80px;
    z-index: 9999;
    padding: 10px 16px;
    border-radius: 8px;
    background: #ffffff;
    color: #000000 !important;
}

.sp-skip-link:focus {
    top: 16px;
}

/* =========================================================
   HEADER — TOPBAR
   ========================================================= */

.sp-header {
    position: relative;
    z-index: 50;
    background: rgba(13,8,5,.96);
    border-bottom: 1px solid var(--sp-line);
}

.sp-topbar {
    border-bottom: 1px solid rgba(203,178,157,.17);
    background: #071011;
}

.sp-topbar__inner,
.sp-topbar__group,
.sp-topbar__item {
    display: flex;
    align-items: center;
}

.sp-topbar__inner {
    min-height: 44px;
    justify-content: space-between;
    gap: 28px;
}

.sp-topbar__group {
    gap: 26px;
}

.sp-topbar__group--right {
    justify-content: flex-end;
}

.sp-topbar__item {
    gap: 8px;
    color: #dfdad3;
    font-size: 13px;
    font-weight: 650;
    white-space: nowrap;
}

.sp-topbar__item:hover {
    color: #ffffff;
}

.sp-topbar__icon {
    color: var(--sp-violet);
    font-size: 14px;
}

/* =========================================================
   HEADER — NAVBAR
   ========================================================= */

.sp-navbar {
    background: linear-gradient(180deg, rgba(20,13,9,.98), rgba(14,9,6,.98));
}

.sp-navbar__inner {
    min-height: 86px;
    display: flex;
    align-items: center;
    gap: 34px;
}

.sp-brand {
    position: relative;
    flex: 0 0 284px;
    height: 72px;
    overflow: hidden;
    border-radius: 8px;
}

.sp-brand__visual {
    position: absolute;
    inset: 0;
    background-image: url('../images/logo-serwisploterow-header.png');
    background-repeat: no-repeat;
    background-size: contain;
    background-position: left center;
}

.sp-nav {
    margin-left: auto;
    display: flex;
    align-items: center;
    gap: clamp(15px, 1.35vw, 27px);
}

.sp-nav > a:not(.sp-btn) {
    position: relative;
    padding: 14px 0;
    color: #e9edf4;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: -.01em;
}

.sp-nav > a:not(.sp-btn)::after {
    content: "";
    position: absolute;
    left: 0;
    right: 100%;
    bottom: 7px;
    height: 2px;
    background: linear-gradient(90deg, var(--sp-blue), var(--sp-pink));
    transition: right .2s ease;
}

.sp-nav > a:not(.sp-btn):hover::after,
.sp-nav > a:not(.sp-btn):focus-visible::after {
    right: 0;
}

.sp-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 48px;
    padding: 12px 23px;
    border: 1px solid transparent;
    border-radius: 7px;
    font-size: 14px;
    font-weight: 800;
    line-height: 1.15;
    transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease, background .2s ease;
}

.sp-btn:hover {
    transform: translateY(-1px);
}

.sp-btn--header,
.sp-btn--primary {
    color: #ffffff;
    background: linear-gradient(100deg, #ffe7c7 0%, #ffe7c7 45%, #ff18a8 100%);
    box-shadow: 0 10px 34px rgba(255,231,199,.21);
}

.sp-btn--header {
    min-height: 46px;
    padding-inline: 22px;
    white-space: nowrap;
}

.sp-btn--header:hover,
.sp-btn--primary:hover {
    box-shadow: 0 14px 40px rgba(255,24,168,.20), 0 12px 32px rgba(255,231,199,.20);
}

.sp-btn--secondary {
    color: #f8fafc;
    border-color: rgba(235,224,210,.68);
    background: rgba(23,15,10,.68);
    backdrop-filter: blur(10px);
}

.sp-btn--secondary:hover {
    border-color: var(--sp-blue);
    background: rgba(35,23,15,.75);
}

.sp-menu-toggle {
    display: none;
    margin-left: auto;
    border: 0;
    background: transparent;
    color: #ffffff;
    align-items: center;
    gap: 10px;
    cursor: pointer;
}

.sp-menu-toggle__label {
    font-size: 13px;
    font-weight: 700;
}

.sp-menu-toggle__bars {
    width: 26px;
    display: grid;
    gap: 5px;
}

.sp-menu-toggle__bars i {
    display: block;
    height: 2px;
    border-radius: 999px;
    background: #ffffff;
}

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

.sp-hero {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    min-height: 610px;
    display: flex;
    align-items: center;
    background:
        radial-gradient(circle at 70% 45%, rgba(255,231,199,.17), transparent 32%),
        radial-gradient(circle at 88% 44%, rgba(255,0,166,.14), transparent 25%),
        linear-gradient(110deg, #081112 0%, #070f10 42%, #091213 100%);
    border-bottom: 1px solid var(--sp-line-strong);
}

.sp-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -2;
    opacity: .24;
    background-image:
        linear-gradient(rgba(255,231,199,.10) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,231,199,.10) 1px, transparent 1px);
    background-size: 56px 56px;
    mask-image: linear-gradient(to right, transparent, #000000 45%, #000000 100%);
}

.sp-hero__glow {
    position: absolute;
    z-index: -1;
    width: 430px;
    height: 430px;
    border-radius: 50%;
    filter: blur(95px);
    opacity: .16;
    pointer-events: none;
}

.sp-hero__glow--blue {
    left: 42%;
    top: 4%;
    background: #ffe7c7;
}

.sp-hero__glow--pink {
    right: -6%;
    bottom: -22%;
    background: #ff008f;
}

.sp-hero__grid {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, .92fr) minmax(520px, 1.22fr);
    align-items: center;
    gap: clamp(28px, 4vw, 74px);
    padding-block: 74px 70px;
}

.sp-hero__content {
    position: relative;
    z-index: 4;
    max-width: 660px;
}

.sp-eyebrow {
    margin: 0 0 16px;
    color: #c9beb4;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .16em;
}

.sp-hero h1 {
    margin: 0;
    max-width: 720px;
    color: #ffffff;
    font-size: clamp(48px, 4.4vw, 76px);
    line-height: .98;
    letter-spacing: -.045em;
    font-weight: 820;
}

.sp-gradient-text {
    display: inline-block;
    color: #ffe7c7;
    background: linear-gradient(90deg, #ffe7c7 0%, #ffe7c7 48%, #ff22a6 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}

.sp-hero__lead {
    max-width: 590px;
    margin: 25px 0 0;
    color: #ddd7cf;
    font-size: clamp(17px, 1.25vw, 20px);
    line-height: 1.55;
}

.sp-hero__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 13px;
    margin-top: 31px;
}

.sp-hero__contact {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-top: 19px;
    color: #afa49a;
    font-size: 13px;
}

.sp-hero__contact a {
    color: #fffaf2;
    font-weight: 800;
}

.sp-hero__visual {
    position: relative;
    min-width: 0;
}

.sp-hero__visual::before {
    content: "";
    position: absolute;
    left: -6%;
    top: -18%;
    width: 76%;
    height: 132%;
    border: 2px solid rgba(255,231,199,.55);
    border-right-color: transparent;
    border-bottom-color: transparent;
    border-radius: 50%;
    transform: rotate(24deg);
    filter: drop-shadow(0 0 12px rgba(255,231,199,.62));
    pointer-events: none;
}

.sp-hero__visual-frame {
    position: relative;
    z-index: 2;
    overflow: hidden;
    border-radius: 22px 22px 10px 10px;
    box-shadow: var(--sp-shadow), 0 0 70px rgba(255,231,199,.17);
    background: #081112;
}

.sp-hero__visual-frame::after {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background:
        linear-gradient(90deg, rgba(16,11,7,.46), transparent 16%, transparent 80%, rgba(19,13,9,.48)),
        linear-gradient(180deg, rgba(16,11,7,.14), transparent 18%, transparent 82%, rgba(16,12,9,.20));
    box-shadow:
        inset 34px 0 42px -34px rgba(16,10,6,.92),
        inset -34px 0 42px -34px rgba(20,13,8,.92);
}

.sp-hero__visual-frame img {
    display: block;
    width: 100%;
    aspect-ratio: 113 / 60;
    object-fit: cover;
}

.sp-hero__visual-line {
    position: absolute;
    left: 8%;
    right: 8%;
    bottom: -1px;
    z-index: 3;
    height: 2px;
    background: linear-gradient(90deg, transparent, var(--sp-blue), var(--sp-violet), var(--sp-pink), transparent);
    box-shadow: 0 0 14px rgba(255,231,199,.6), 0 0 18px rgba(255,22,168,.5);
}

/* =========================================================
   TRUST STRIP
   ========================================================= */

.sp-trust {
    position: relative;
    z-index: 5;
    background: linear-gradient(180deg, #0b1617 0%, #091213 100%);
    border-bottom: 1px solid var(--sp-line-strong);
}

.sp-trust__grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
}

.sp-trust__item {
    min-height: 102px;
    display: flex;
    align-items: center;
    gap: 17px;
    padding: 20px 30px;
    border-right: 1px solid var(--sp-line);
}

.sp-trust__item:first-child {
    border-left: 1px solid var(--sp-line);
}

.sp-trust__icon {
    flex: 0 0 42px;
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(255,231,199,.58);
    border-radius: 12px;
    color: var(--sp-blue);
    font-size: 23px;
    box-shadow: inset 0 0 20px rgba(255,231,199,.07), 0 0 18px rgba(255,231,199,.06);
}

.sp-trust__icon--pink {
    border-color: rgba(255,24,168,.48);
    color: var(--sp-pink);
}

.sp-trust__item strong,
.sp-trust__item span {
    display: block;
}

.sp-trust__item strong {
    color: #ffffff;
    font-size: 14px;
    line-height: 1.25;
}

.sp-trust__item > div > span {
    margin-top: 4px;
    color: #aea39a;
    font-size: 12.5px;
    line-height: 1.42;
}

/* =========================================================
   NEEDS / QUICK PATHS
   ========================================================= */

.sp-needs {
    position: relative;
    overflow: hidden;
    padding: clamp(82px, 7vw, 118px) 0 clamp(86px, 7vw, 124px);
    background:
        radial-gradient(circle at 12% 20%, rgba(255,231,199,.075), transparent 25%),
        radial-gradient(circle at 90% 78%, rgba(255,18,168,.07), transparent 24%),
        linear-gradient(180deg, #070c0d 0%, #081112 100%);
    border-bottom: 1px solid var(--sp-line);
}

.sp-needs::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    opacity: .11;
    background-image:
        linear-gradient(rgba(173,137,107,.12) 1px, transparent 1px),
        linear-gradient(90deg, rgba(173,137,107,.12) 1px, transparent 1px);
    background-size: 58px 58px;
    mask-image: linear-gradient(to bottom, transparent 0%, #000000 28%, #000000 100%);
}

.sp-needs__head {
    position: relative;
    z-index: 2;
    max-width: 790px;
    margin-bottom: 44px;
}

.sp-section-kicker {
    margin: 0 0 12px;
    color: #ab9e94;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .17em;
    text-transform: uppercase;
}

.sp-needs h2 {
    margin: 0;
    color: #ffffff;
    font-size: clamp(38px, 3.3vw, 58px);
    line-height: 1.03;
    letter-spacing: -.035em;
    font-weight: 820;
}

.sp-needs__intro {
    max-width: 720px;
    margin: 18px 0 0;
    color: #c6bcb4;
    font-size: 17px;
    line-height: 1.65;
}

.sp-needs__grid {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px;
}

.sp-need-card {
    position: relative;
    min-height: 318px;
    display: flex;
    flex-direction: column;
    padding: 28px 27px 25px;
    overflow: hidden;
    border: 1px solid rgba(203,178,158,.22);
    border-radius: 16px;
    background:
        linear-gradient(145deg, rgba(35,24,17,.88), rgba(19,13,9,.94));
    box-shadow: inset 0 1px 0 rgba(255,255,255,.025);
    transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease, background .25s ease;
}

.sp-need-card::before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    height: 2px;
    opacity: .78;
    background: linear-gradient(90deg, transparent, var(--card-accent, var(--sp-blue)), transparent);
}

.sp-need-card::after {
    content: "";
    position: absolute;
    width: 190px;
    height: 190px;
    right: -105px;
    bottom: -115px;
    border-radius: 50%;
    background: var(--card-glow, rgba(255,231,199,.13));
    filter: blur(42px);
    pointer-events: none;
}

.sp-need-card--pink {
    --card-accent: var(--sp-pink);
    --card-glow: rgba(255,22,168,.14);
}

.sp-need-card--violet {
    --card-accent: #ffe7c7;
    --card-glow: rgba(255,231,199,.15);
}

.sp-need-card--cyan {
    --card-accent: #ffe7c7;
    --card-glow: rgba(255,231,199,.13);
}

.sp-need-card:hover,
.sp-need-card:focus-within {
    transform: translateY(-5px);
    border-color: rgba(255,231,199,.48);
    background: linear-gradient(145deg, rgba(43,29,21,.95), rgba(21,14,10,.97));
    box-shadow: 0 20px 52px rgba(0,0,0,.25), 0 0 28px rgba(255,231,199,.075);
}

.sp-need-card--pink:hover,
.sp-need-card--pink:focus-within {
    border-color: rgba(255,33,169,.42);
}

.sp-need-card__top {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 20px;
}

.sp-need-card__icon {
    width: 54px;
    height: 54px;
    display: grid;
    place-items: center;
    border: 1px solid color-mix(in srgb, var(--card-accent, var(--sp-blue)) 58%, transparent);
    border-radius: 14px;
    color: var(--card-accent, var(--sp-blue));
    background: rgba(19,12,8,.68);
    box-shadow: inset 0 0 24px color-mix(in srgb, var(--card-accent, var(--sp-blue)) 9%, transparent);
}

.sp-need-card__icon svg {
    width: 27px;
    height: 27px;
    stroke: currentColor;
}

.sp-need-card__number {
    color: rgba(236,230,221,.38);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .16em;
}

.sp-need-card h3 {
    margin: 27px 0 10px;
    color: #ffffff;
    font-size: 21px;
    line-height: 1.18;
    letter-spacing: -.015em;
}

.sp-need-card p {
    margin: 0;
    color: #b5aaa0;
    font-size: 14px;
    line-height: 1.58;
}

.sp-need-card__link {
    position: relative;
    z-index: 2;
    width: fit-content;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin-top: auto;
    padding-top: 26px;
    color: #fffaf4 !important;
    font-size: 13px;
    font-weight: 800;
}

.sp-need-card__link::after {
    content: "→";
    color: var(--card-accent, var(--sp-blue));
    font-size: 19px;
    line-height: 1;
    transition: transform .2s ease;
}

.sp-need-card__link:hover::after,
.sp-need-card__link:focus-visible::after {
    transform: translateX(4px);
}

.sp-needs__foot {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 26px;
    margin-top: 26px;
    padding: 18px 22px;
    border: 1px solid rgba(203,178,157,.17);
    border-radius: 13px;
    background: rgba(22,15,10,.60);
}

.sp-needs__foot p {
    margin: 0;
    color: #afa39a;
    font-size: 13px;
}

.sp-needs__foot strong {
    color: #e8edf5;
}

.sp-needs__foot a {
    flex: 0 0 auto;
    color: #ffffff !important;
    font-size: 13px;
    font-weight: 800;
}

.sp-needs__foot a span {
    color: var(--sp-blue);
}

/* =========================================================
   FOOTER — TEMPORARY
   ========================================================= */

.sp-footer {
    padding: 28px 0 36px;
    border-top: 1px solid var(--sp-line);
    background: #04090a;
    color: #9a8e85;
}

.sp-footer__inner {
    display: flex;
    justify-content: space-between;
    gap: 28px;
    font-size: 12px;
}

.sp-footer p {
    margin: 0;
}

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

@media (max-width: 1270px) {
    .sp-nav {
        gap: 14px;
    }

    .sp-nav > a:not(.sp-btn) {
        font-size: 12px;
    }

    .sp-brand {
        flex-basis: 245px;
        height: 66px;
    }

    .sp-hero__grid {
        grid-template-columns: minmax(0, .92fr) minmax(470px, 1fr);
    }

    .sp-trust__item {
        padding-inline: 20px;
    }

    .sp-needs__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 1080px) {
    .sp-topbar__hours {
        display: none;
    }

    .sp-navbar__inner {
        min-height: 76px;
    }

    .sp-menu-toggle {
        display: flex;
    }

    .sp-nav {
        position: absolute;
        left: 24px;
        right: 24px;
        top: calc(100% - 2px);
        display: none;
        flex-direction: column;
        align-items: stretch;
        gap: 0;
        padding: 14px;
        border: 1px solid var(--sp-line-strong);
        border-radius: 0 0 14px 14px;
        background: rgba(16,10,6,.99);
        box-shadow: 0 22px 46px rgba(0,0,0,.38);
    }

    .sp-nav.is-open {
        display: flex;
    }

    .sp-nav > a:not(.sp-btn) {
        padding: 12px 10px;
        font-size: 14px;
    }

    .sp-nav > a:not(.sp-btn)::after {
        display: none;
    }

    .sp-btn--header {
        margin-top: 8px;
    }

    .sp-hero {
        min-height: auto;
    }

    .sp-hero__grid {
        grid-template-columns: 1fr;
        gap: 42px;
        padding-block: 60px 58px;
    }

    .sp-hero__content {
        max-width: 780px;
    }

    .sp-hero__visual {
        width: min(100%, 780px);
        margin-inline: auto;
    }

    .sp-trust__grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .sp-trust__item:nth-child(2) {
        border-right: 1px solid var(--sp-line);
    }

    .sp-trust__item:nth-child(n+3) {
        border-top: 1px solid var(--sp-line);
    }
}

@media (max-width: 720px) {
    .sp-shell {
        width: min(calc(100% - 30px), var(--sp-shell));
    }

    .sp-topbar__inner {
        min-height: 36px;
        justify-content: center;
    }

    .sp-topbar__group {
        gap: 16px;
    }

    .sp-topbar__group--right,
    .sp-topbar__email {
        display: none;
    }

    .sp-topbar__item {
        font-size: 11px;
    }

    .sp-navbar__inner {
        min-height: 70px;
    }

    .sp-brand {
        flex-basis: 205px;
        height: 58px;
    }

    .sp-menu-toggle__label {
        display: none;
    }

    .sp-nav {
        left: 15px;
        right: 15px;
    }

    .sp-hero {
        background:
            radial-gradient(circle at 50% 60%, rgba(255,231,199,.18), transparent 38%),
            radial-gradient(circle at 88% 80%, rgba(255,0,166,.12), transparent 30%),
            #071011;
    }

    .sp-hero::before {
        opacity: .13;
        mask-image: none;
    }

    .sp-hero__grid {
        padding-block: 46px 46px;
        gap: 34px;
    }

    .sp-eyebrow {
        margin-bottom: 12px;
        font-size: 10px;
        letter-spacing: .13em;
    }

    .sp-hero h1 {
        font-size: clamp(40px, 12vw, 57px);
        line-height: 1.00;
    }

    .sp-hero__lead {
        margin-top: 19px;
        font-size: 16px;
    }

    .sp-hero__actions {
        display: grid;
        grid-template-columns: 1fr;
        margin-top: 25px;
    }

    .sp-btn {
        width: 100%;
        min-height: 50px;
    }

    .sp-hero__contact {
        flex-wrap: wrap;
        margin-top: 16px;
    }

    .sp-hero__visual::before {
        left: -12%;
        top: -20%;
        width: 90%;
        height: 140%;
    }

    .sp-hero__visual-frame {
        border-radius: 15px;
    }

    .sp-trust__grid {
        grid-template-columns: 1fr;
    }

    .sp-trust__item,
    .sp-trust__item:first-child,
    .sp-trust__item:nth-child(2) {
        min-height: 88px;
        border-left: 1px solid var(--sp-line);
        border-right: 1px solid var(--sp-line);
        border-top: 1px solid var(--sp-line);
        padding: 16px 18px;
    }

    .sp-trust__item:first-child {
        border-top: 0;
    }

    .sp-needs {
        padding: 64px 0 72px;
    }

    .sp-needs__head {
        margin-bottom: 30px;
    }

    .sp-needs__intro {
        font-size: 15px;
    }

    .sp-needs__grid {
        grid-template-columns: 1fr;
        gap: 14px;
    }

    .sp-need-card {
        min-height: 270px;
        padding: 24px 22px 22px;
    }

    .sp-needs__foot {
        align-items: flex-start;
        flex-direction: column;
        gap: 9px;
    }

    .sp-footer__inner {
        flex-direction: column;
        gap: 8px;
    }
}

@media (prefers-reduced-motion: reduce) {
    html {
        scroll-behavior: auto;
    }

    .sp-btn,
    .sp-nav > a:not(.sp-btn)::after {
        transition: none;
    }
}

/* =========================================================
   SERVICE / EXPERTISE v4
   ========================================================= */

.sp-service {
    position: relative;
    overflow: hidden;
    padding: clamp(88px, 7vw, 124px) 0 clamp(92px, 7vw, 128px);
    background:
        linear-gradient(180deg, #081112 0%, #0a1314 48%, #070c0d 100%);
    border-bottom: 1px solid var(--sp-line);
}

.sp-service::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    opacity: .13;
    background-image:
        linear-gradient(rgba(166,138,115,.09) 1px, transparent 1px),
        linear-gradient(90deg, rgba(166,138,115,.09) 1px, transparent 1px);
    background-size: 64px 64px;
    mask-image: linear-gradient(90deg, #000000 0%, #000000 58%, transparent 100%);
}

.sp-service__orb {
    position: absolute;
    width: 420px;
    height: 420px;
    border-radius: 50%;
    filter: blur(110px);
    pointer-events: none;
    opacity: .10;
}

.sp-service__orb--blue {
    left: -120px;
    top: 14%;
    background: #ffe7c7;
}

.sp-service__orb--pink {
    right: -160px;
    bottom: -130px;
    background: #ff119f;
}

.sp-service__layout {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: minmax(0, .82fr) minmax(620px, 1.18fr);
    gap: clamp(50px, 6vw, 100px);
    align-items: center;
}

.sp-service__content {
    max-width: 590px;
}

.sp-service h2 {
    margin: 0;
    color: #ffffff;
    font-size: clamp(38px, 3.1vw, 56px);
    line-height: 1.04;
    letter-spacing: -.038em;
    font-weight: 820;
}

.sp-service__lead {
    margin: 25px 0 0;
    color: #ddd7ce;
    font-size: 17px;
    line-height: 1.68;
}

.sp-service__text {
    margin: 18px 0 0;
    color: #b1a59b;
    font-size: 14px;
    line-height: 1.72;
}

.sp-service__tags {
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
    margin-top: 26px;
}

.sp-service__tags span {
    display: inline-flex;
    align-items: center;
    min-height: 33px;
    padding: 7px 12px;
    border: 1px solid rgba(196,171,150,.24);
    border-radius: 999px;
    background: rgba(25,17,11,.62);
    color: #c0b4aa;
    font-size: 12px;
    font-weight: 700;
}

.sp-service__tags span::before {
    content: "";
    width: 5px;
    height: 5px;
    margin-right: 8px;
    border-radius: 50%;
    background: var(--sp-blue);
    box-shadow: 0 0 10px rgba(255,231,199,.55);
}

.sp-service__actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 22px;
    margin-top: 32px;
}

.sp-service__phone {
    display: grid;
    gap: 2px;
    color: #aea39a !important;
    font-size: 12px;
}

.sp-service__phone strong {
    color: #f6f9ff;
    font-size: 15px;
    letter-spacing: .01em;
}

.sp-service__panel {
    position: relative;
    border: 1px solid rgba(197,170,148,.23);
    border-radius: 20px;
    overflow: hidden;
    background:
        linear-gradient(145deg, rgba(34,23,16,.94), rgba(19,13,9,.97));
    box-shadow: 0 30px 80px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.025);
}

.sp-service__panel::before {
    content: "";
    position: absolute;
    left: 12%;
    right: 12%;
    top: -1px;
    height: 2px;
    background: linear-gradient(90deg, transparent, var(--sp-blue), var(--sp-violet), var(--sp-pink), transparent);
    opacity: .88;
    box-shadow: 0 0 18px rgba(255,231,199,.34);
}

.sp-service__panel-head {
    min-height: 58px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 22px;
    padding: 0 23px;
    border-bottom: 1px solid rgba(198,172,151,.17);
    color: #ebe6e0;
    font-size: 12px;
    font-weight: 750;
}

.sp-service__panel-head > div {
    display: flex;
    align-items: center;
    gap: 9px;
}

.sp-service__status-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #ffe7c7;
    box-shadow: 0 0 11px rgba(255,231,199,.72);
}

.sp-service__panel-code {
    color: #8c7e73;
    font-size: 10px;
    letter-spacing: .14em;
}

.sp-service__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.sp-service-card {
    position: relative;
    min-height: 174px;
    display: grid;
    grid-template-columns: 50px minmax(0, 1fr);
    gap: 16px;
    align-content: center;
    padding: 25px 31px 24px 23px;
    border-bottom: 1px solid rgba(198,172,151,.14);
    border-right: 1px solid rgba(198,172,151,.14);
    transition: background .22s ease, border-color .22s ease;
    --service-accent: var(--sp-blue);
}

.sp-service-card:nth-child(2n) {
    border-right: 0;
}

.sp-service-card:nth-last-child(-n+2) {
    border-bottom: 0;
}

.sp-service-card--pink {
    --service-accent: var(--sp-pink);
}

.sp-service-card--violet {
    --service-accent: #ffe7c7;
}

.sp-service-card:hover {
    background: rgba(46,32,23,.56);
}

.sp-service-card__icon {
    width: 46px;
    height: 46px;
    display: grid;
    place-items: center;
    border: 1px solid color-mix(in srgb, var(--service-accent) 54%, transparent);
    border-radius: 13px;
    color: var(--service-accent);
    background: rgba(18,11,7,.68);
}

.sp-service-card__icon svg {
    width: 23px;
    height: 23px;
    stroke: currentColor;
}

.sp-service-card h3 {
    margin: 0;
    color: #f5f8fd;
    font-size: 15px;
    line-height: 1.28;
}

.sp-service-card p {
    margin: 7px 0 0;
    color: #a79a90;
    font-size: 12.5px;
    line-height: 1.52;
}

.sp-service-card__number {
    position: absolute;
    right: 15px;
    top: 12px;
    color: rgba(236,228,218,.25);
    font-size: 9px;
    font-weight: 800;
    letter-spacing: .14em;
}

.sp-service__panel-foot {
    min-height: 54px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding: 0 23px;
    border-top: 1px solid rgba(198,172,151,.17);
    background: rgba(16,10,6,.48);
    color: #a2958b;
    font-size: 11.5px;
}

.sp-service__panel-foot a {
    color: #fffaf2 !important;
    font-weight: 800;
}

.sp-service__panel-foot a span {
    margin-left: 7px;
    color: var(--sp-pink);
}

@media (max-width: 1270px) {
    .sp-service__layout {
        grid-template-columns: minmax(0, .78fr) minmax(560px, 1.22fr);
        gap: 44px;
    }

    .sp-service-card {
        padding-inline: 20px 28px;
    }
}

@media (max-width: 1080px) {
    .sp-service__layout {
        grid-template-columns: 1fr;
        gap: 42px;
    }

    .sp-service__content {
        max-width: 780px;
    }

    .sp-service__panel {
        max-width: 860px;
    }
}

@media (max-width: 720px) {
    .sp-service {
        padding: 68px 0 74px;
    }

    .sp-service__lead {
        margin-top: 20px;
        font-size: 15px;
    }

    .sp-service__text {
        font-size: 13.5px;
    }

    .sp-service__actions {
        align-items: stretch;
        flex-direction: column;
        gap: 14px;
    }

    .sp-service__phone {
        padding-left: 2px;
    }

    .sp-service__panel-head {
        padding-inline: 18px;
    }

    .sp-service__panel-code {
        display: none;
    }

    .sp-service__grid {
        grid-template-columns: 1fr;
    }

    .sp-service-card,
    .sp-service-card:nth-child(2n),
    .sp-service-card:nth-last-child(-n+2) {
        min-height: 150px;
        border-right: 0;
        border-bottom: 1px solid rgba(198,172,151,.14);
    }

    .sp-service-card:last-child {
        border-bottom: 0;
    }

    .sp-service__panel-foot {
        align-items: flex-start;
        flex-direction: column;
        padding-block: 15px;
        gap: 7px;
    }
}

/* =========================================================
   OBSŁUGIWANE MARKI / ŚCIEŻKI SERWISOWE
========================================================= */

.sp-brands {
    position: relative;
    overflow: hidden;
    padding: 96px 0 104px;
    border-top: 1px solid rgba(198,172,151,.12);
    background:
        linear-gradient(180deg, rgba(19,12,8,.98) 0%, rgba(21,14,9,1) 100%);
}

.sp-brands::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background-image:
        linear-gradient(rgba(155,126,102,.035) 1px, transparent 1px),
        linear-gradient(90deg, rgba(155,126,102,.035) 1px, transparent 1px);
    background-size: 72px 72px;
    mask-image: linear-gradient(to bottom, transparent, #000000 18%, #000000 82%, transparent);
}

.sp-brands__glow {
    position: absolute;
    width: 560px;
    height: 560px;
    border-radius: 50%;
    filter: blur(105px);
    opacity: .11;
    pointer-events: none;
}

.sp-brands__glow--blue {
    left: -260px;
    top: 90px;
    background: #ffe7c7;
}

.sp-brands__glow--pink {
    right: -300px;
    bottom: -170px;
    background: #ff0b9a;
}

.sp-brands .sp-shell {
    position: relative;
    z-index: 1;
}

.sp-brands__head {
    display: grid;
    grid-template-columns: minmax(0, 1.08fr) minmax(360px, .72fr);
    align-items: end;
    gap: 80px;
    margin-bottom: 42px;
}

.sp-brands__head h2 {
    max-width: 760px;
    margin: 10px 0 0;
    color: #f7f9fd;
    font-size: clamp(38px, 3.05vw, 54px);
    line-height: 1.04;
    letter-spacing: -.035em;
}

.sp-brands__head > p {
    max-width: 590px;
    margin: 0 0 4px;
    color: #b6aaa0;
    font-size: 14.5px;
    line-height: 1.72;
}

.sp-brands__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
}

.sp-brand-card {
    position: relative;
    min-height: 362px;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    padding: 25px 27px 26px;
    border: 1px solid rgba(191,166,145,.22);
    border-radius: 18px;
    background:
        linear-gradient(145deg, rgba(37,26,19,.95), rgba(22,15,10,.97));
    box-shadow: inset 0 1px 0 rgba(255,255,255,.018);
    text-decoration: none !important;
    transition: transform .22s ease, border-color .22s ease, box-shadow .22s ease;
    --brand-accent: #ffe7c7;
}

.sp-brand-card::before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    height: 1px;
    background: linear-gradient(90deg, transparent, color-mix(in srgb, var(--brand-accent) 75%, transparent), transparent);
    opacity: .9;
}

.sp-brand-card::after {
    content: "";
    position: absolute;
    width: 240px;
    height: 240px;
    right: -110px;
    bottom: -120px;
    border-radius: 50%;
    background: color-mix(in srgb, var(--brand-accent) 12%, transparent);
    filter: blur(35px);
    pointer-events: none;
}

.sp-brand-card--canon {
    --brand-accent: #ef2aa0;
}

.sp-brand-card--other {
    --brand-accent: #ffe7c7;
}

.sp-brand-card:is(a):hover {
    transform: translateY(-4px);
    border-color: color-mix(in srgb, var(--brand-accent) 47%, rgba(191,166,145,.22));
    box-shadow: 0 18px 40px rgba(0,0,0,.18);
}

.sp-brand-card__top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    color: #8a7c71;
    font-size: 9.5px;
    font-weight: 800;
    letter-spacing: .13em;
}

.sp-brand-card__top span:first-child {
    color: color-mix(in srgb, var(--brand-accent) 72%, #f7f0e7);
}

.sp-brand-card__mark {
    position: relative;
    z-index: 1;
    min-height: 104px;
    display: flex;
    align-items: center;
    margin-top: 25px;
    color: #f5f8fd;
    font-size: clamp(42px, 3.7vw, 66px);
    font-weight: 800;
    letter-spacing: -.055em;
    line-height: 1;
    text-shadow: 0 0 24px color-mix(in srgb, var(--brand-accent) 17%, transparent);
}

.sp-brand-card--canon .sp-brand-card__mark {
    font-size: clamp(34px, 3.1vw, 53px);
    letter-spacing: -.035em;
}

.sp-brand-card h3 {
    position: relative;
    z-index: 1;
    margin: 6px 0 0;
    color: #f7f9fd;
    font-size: 20px;
    line-height: 1.24;
    letter-spacing: -.018em;
}

.sp-brand-card p {
    position: relative;
    z-index: 1;
    max-width: 390px;
    margin: 10px 0 0;
    color: #afa399;
    font-size: 13px;
    line-height: 1.58;
}

.sp-brand-card__link {
    position: relative;
    z-index: 1;
    display: inline-flex;
    align-items: center;
    gap: 9px;
    margin-top: auto;
    padding-top: 28px;
    color: #fffaf4;
    font-size: 12.5px;
    font-weight: 800;
}

.sp-brand-card__link span {
    color: var(--brand-accent);
    transition: transform .2s ease;
}

.sp-brand-card:hover .sp-brand-card__link span {
    transform: translateX(4px);
}

.sp-brand-card__device {
    position: relative;
    z-index: 1;
    width: 68px;
    height: 68px;
    display: grid;
    place-items: center;
    margin-top: 29px;
    border: 1px solid color-mix(in srgb, var(--brand-accent) 46%, transparent);
    border-radius: 17px;
    color: var(--brand-accent);
    background: rgba(18,11,7,.58);
}

.sp-brand-card__device svg {
    width: 31px;
    height: 31px;
    stroke: currentColor;
}

.sp-brand-card__button {
    position: relative;
    z-index: 1;
    width: fit-content;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-top: auto;
    padding: 12px 17px;
    border: 1px solid rgba(255,231,199,.42);
    border-radius: 10px;
    color: #fffbf5 !important;
    background: rgba(202,154,115,.12);
    font-size: 12px;
    font-weight: 800;
    text-decoration: none !important;
    transition: border-color .2s ease, background .2s ease;
}

.sp-brand-card__button:hover {
    border-color: rgba(255,231,199,.7);
    background: rgba(202,154,115,.2);
}

.sp-brands__foot {
    min-height: 62px;
    display: grid;
    grid-template-columns: 28px minmax(0, 1fr) auto;
    align-items: center;
    gap: 12px;
    margin-top: 16px;
    padding: 11px 18px;
    border: 1px solid rgba(191,166,145,.17);
    border-radius: 13px;
    background: rgba(20,13,8,.58);
}

.sp-brands__foot-icon {
    width: 26px;
    height: 26px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(255,231,199,.35);
    border-radius: 50%;
    color: #ffe7c7;
    font-size: 11px;
    font-weight: 900;
}

.sp-brands__foot p {
    margin: 0;
    color: #a69a90;
    font-size: 11.8px;
    line-height: 1.45;
}

.sp-brands__foot p strong {
    color: #eaf0f8;
}

.sp-brands__foot > a {
    color: #eef4fc !important;
    font-size: 11.7px;
    font-weight: 800;
    text-decoration: none !important;
    white-space: nowrap;
}

.sp-brands__foot > a span {
    margin-left: 7px;
    color: var(--sp-pink);
}

@media (max-width: 1080px) {
    .sp-brands__head {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .sp-brands__head > p {
        max-width: 760px;
    }

    .sp-brands__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .sp-brand-card--other {
        grid-column: 1 / -1;
        min-height: 290px;
    }
}

@media (max-width: 720px) {
    .sp-brands {
        padding: 70px 0 48px;
    }

    .sp-brands__head {
        margin-bottom: 30px;
    }

    .sp-brands__head h2 {
        font-size: clamp(34px, 10vw, 44px);
    }

    .sp-brands__head > p {
        font-size: 13.5px;
    }

    .sp-brands__grid {
        grid-template-columns: 1fr;
    }

    .sp-brand-card,
    .sp-brand-card--other {
        grid-column: auto;
        min-height: 330px;
        padding: 23px 22px 24px;
    }

    .sp-brand-card__mark {
        min-height: 88px;
        font-size: 50px;
    }

    .sp-brand-card--canon .sp-brand-card__mark {
        font-size: 42px;
    }

    .sp-brands__foot {
        grid-template-columns: 28px minmax(0, 1fr);
        align-items: start;
        padding-block: 15px;
    }

    .sp-brands__foot > a {
        grid-column: 2;
        margin-top: 3px;
        white-space: normal;
    }
}


/* =========================================================
   CZĘŚCI DO PLOTERÓW
========================================================= */
.sp-parts {
    position: relative;
    overflow: hidden;
    padding: 92px 0 58px;
    border-top: 1px solid rgba(191,166,145,.18);
    background:
        radial-gradient(circle at 16% 40%, rgba(255,231,199,.075), transparent 34%),
        radial-gradient(circle at 88% 63%, rgba(236,21,164,.075), transparent 36%),
        #091314;
}

.sp-parts__glow {
    position: absolute;
    width: 430px;
    height: 430px;
    border-radius: 50%;
    filter: blur(90px);
    pointer-events: none;
    opacity: .16;
}

.sp-parts__glow--blue {
    left: -270px;
    top: 110px;
    background: #ffe7c7;
}

.sp-parts__glow--pink {
    right: -290px;
    bottom: -110px;
    background: #f018a7;
}

.sp-parts__head {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(320px, .85fr);
    gap: 70px;
    align-items: end;
    margin-bottom: 40px;
}

.sp-parts__head h2 {
    max-width: 820px;
    margin: 10px 0 0;
    color: #f7f9fd;
    font-size: clamp(38px, 3.05vw, 54px);
    line-height: 1.04;
    letter-spacing: -.035em;
}

.sp-parts__head > p {
    max-width: 610px;
    margin: 0 0 4px;
    color: #b6a99f;
    font-size: 14.5px;
    line-height: 1.72;
}

.sp-parts__layout {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(390px, .9fr);
    gap: 18px;
    align-items: stretch;
}

.sp-parts-finder,
.sp-parts-types {
    overflow: hidden;
    border: 1px solid rgba(191,166,145,.22);
    border-radius: 18px;
    background: linear-gradient(145deg, rgba(37,26,19,.95), rgba(22,15,10,.97));
    box-shadow: inset 0 1px 0 rgba(255,255,255,.018);
}

.sp-parts-finder__head,
.sp-parts-types__head {
    min-height: 58px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 0 23px;
    border-bottom: 1px solid rgba(191,166,145,.16);
}

.sp-parts-finder__head > div {
    display: flex;
    align-items: center;
    gap: 10px;
    color: #edf4fc;
    font-size: 12px;
    font-weight: 800;
}

.sp-parts-finder__head > span {
    color: #8d7f74;
    font-size: 9px;
    font-weight: 800;
    letter-spacing: .14em;
}

.sp-parts-finder__status {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #fbe3c4;
    box-shadow: 0 0 14px rgba(251,227,196,.75);
}

.sp-parts-finder__steps {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.sp-parts-step {
    position: relative;
    min-height: 248px;
    padding: 35px 26px 30px;
    border-right: 1px solid rgba(191,166,145,.15);
    --step-accent: #ffe7c7;
}

.sp-parts-step:last-child {
    border-right: 0;
}

.sp-parts-step--pink {
    --step-accent: #ed269f;
}

.sp-parts-step--violet {
    --step-accent: #ffe7c7;
}

.sp-parts-step__number {
    position: absolute;
    top: 18px;
    right: 20px;
    color: #597578;
    font-size: 9px;
    font-weight: 800;
    letter-spacing: .12em;
}

.sp-parts-step__icon {
    width: 48px;
    height: 48px;
    display: grid;
    place-items: center;
    margin-bottom: 21px;
    border: 1px solid color-mix(in srgb, var(--step-accent) 58%, transparent);
    border-radius: 13px;
    color: var(--step-accent);
    background: rgba(18,11,7,.66);
}

.sp-parts-step__icon svg {
    width: 24px;
    height: 24px;
    stroke: currentColor;
}

.sp-parts-step h3 {
    margin: 0;
    color: #f5f8fc;
    font-size: 17px;
    line-height: 1.25;
    letter-spacing: -.015em;
}

.sp-parts-step p {
    margin: 9px 0 0;
    color: #afa399;
    font-size: 12.5px;
    line-height: 1.58;
}

.sp-parts-finder__foot {
    min-height: 82px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    padding: 15px 22px;
    border-top: 1px solid rgba(191,166,145,.16);
    background: rgba(17,10,6,.46);
}

.sp-parts-finder__foot > div {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.sp-parts-finder__foot strong {
    color: #eff5fd;
    font-size: 13px;
}

.sp-parts-finder__foot span {
    color: #a5988e;
    font-size: 11.8px;
}

.sp-parts-finder__foot .sp-btn {
    flex: 0 0 auto;
    min-height: 44px;
    padding-inline: 18px;
    white-space: nowrap;
}

.sp-parts-types__head {
    justify-content: flex-start;
    min-height: 74px;
}

.sp-parts-types__head p {
    margin: 0 0 3px;
    color: #eef4fb;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .12em;
}

.sp-parts-types__head span {
    color: #9b8d82;
    font-size: 11.5px;
}

.sp-parts-types__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.sp-part-type {
    min-height: 159px;
    padding: 22px 21px 20px;
    border-right: 1px solid rgba(191,166,145,.14);
    border-bottom: 1px solid rgba(191,166,145,.14);
    --part-accent: #ffe7c7;
}

.sp-part-type:nth-child(even) {
    border-right: 0;
}

.sp-part-type:nth-last-child(-n+2) {
    border-bottom: 0;
}

.sp-part-type--pink {
    --part-accent: #ec279f;
}

.sp-part-type--violet {
    --part-accent: #ffe7c7;
}

.sp-part-type__icon {
    width: 38px;
    height: 38px;
    display: grid;
    place-items: center;
    margin-bottom: 13px;
    border: 1px solid color-mix(in srgb, var(--part-accent) 46%, transparent);
    border-radius: 10px;
    color: var(--part-accent);
    background: rgba(18,11,7,.58);
}

.sp-part-type__icon svg {
    width: 20px;
    height: 20px;
    stroke: currentColor;
}

.sp-part-type h3 {
    margin: 0;
    color: #f1f5fb;
    font-size: 15px;
    line-height: 1.25;
}

.sp-part-type p {
    margin: 6px 0 0;
    color: #a3968c;
    font-size: 11.6px;
    line-height: 1.48;
}

.sp-parts__foot {
    position: relative;
    z-index: 1;
    min-height: 62px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 28px;
    margin-top: 16px;
    padding: 12px 18px;
    border: 1px solid rgba(191,166,145,.17);
    border-radius: 13px;
    background: rgba(20,13,8,.58);
}

.sp-parts__foot p {
    margin: 0;
    color: #a69a90;
    font-size: 11.8px;
    line-height: 1.45;
}

.sp-parts__foot p strong {
    color: #eaf0f8;
}

.sp-parts__foot > a {
    flex: 0 0 auto;
    color: #eef4fc !important;
    font-size: 11.7px;
    font-weight: 800;
    text-decoration: none !important;
    white-space: nowrap;
}

.sp-parts__foot > a span {
    margin-left: 7px;
    color: var(--sp-pink);
}

@media (max-width: 1180px) {
    .sp-parts__layout {
        grid-template-columns: 1fr;
    }

    .sp-parts-types__grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .sp-part-type,
    .sp-part-type:nth-child(even),
    .sp-part-type:nth-last-child(-n+2) {
        border-right: 1px solid rgba(191,166,145,.14);
        border-bottom: 1px solid rgba(191,166,145,.14);
    }

    .sp-part-type:nth-child(3n) {
        border-right: 0;
    }

    .sp-part-type:nth-last-child(-n+3) {
        border-bottom: 0;
    }
}

@media (max-width: 900px) {
    .sp-parts__head {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .sp-parts__head > p {
        max-width: 760px;
    }

    .sp-parts-finder__steps {
        grid-template-columns: 1fr;
    }

    .sp-parts-step {
        min-height: 0;
        display: grid;
        grid-template-columns: 50px minmax(0, 1fr);
        column-gap: 17px;
        padding: 24px 54px 24px 22px;
        border-right: 0;
        border-bottom: 1px solid rgba(191,166,145,.15);
    }

    .sp-parts-step:last-child {
        border-bottom: 0;
    }

    .sp-parts-step__icon {
        grid-row: 1 / span 2;
        margin: 0;
    }

    .sp-parts-step h3 {
        align-self: end;
    }

    .sp-parts-step p {
        margin-top: 6px;
    }
}

@media (max-width: 720px) {
    .sp-parts {
        padding: 70px 0 76px;
    }

    .sp-parts__head {
        margin-bottom: 30px;
    }

    .sp-parts__head h2 {
        font-size: clamp(34px, 10vw, 44px);
    }

    .sp-parts__head > p {
        font-size: 13.5px;
    }

    .sp-parts-finder__head {
        padding-inline: 18px;
    }

    .sp-parts-finder__head > span {
        display: none;
    }

    .sp-parts-finder__foot {
        align-items: stretch;
        flex-direction: column;
        padding: 18px;
    }

    .sp-parts-finder__foot .sp-btn {
        width: 100%;
        white-space: normal;
    }

    .sp-parts-types__grid {
        grid-template-columns: 1fr;
    }

    .sp-part-type,
    .sp-part-type:nth-child(even),
    .sp-part-type:nth-child(3n),
    .sp-part-type:nth-last-child(-n+3),
    .sp-part-type:nth-last-child(-n+2) {
        min-height: 0;
        border-right: 0;
        border-bottom: 1px solid rgba(191,166,145,.14);
    }

    .sp-part-type:last-child {
        border-bottom: 0;
    }

    .sp-parts__foot {
        align-items: flex-start;
        flex-direction: column;
        gap: 10px;
        padding-block: 15px;
    }

    .sp-parts__foot > a {
        white-space: normal;
    }
}

/* =========================================================
   MOTION SYSTEM — SUBTELNY RUCH / PREMIUM TECH
   ========================================================= */

@keyframes spGlowDriftBlue {
    0%   { transform: translate3d(0, 0, 0) scale(1); opacity: .12; }
    50%  { transform: translate3d(70px, -26px, 0) scale(1.12); opacity: .20; }
    100% { transform: translate3d(18px, 36px, 0) scale(.96); opacity: .14; }
}

@keyframes spGlowDriftPink {
    0%   { transform: translate3d(0, 0, 0) scale(1); opacity: .12; }
    50%  { transform: translate3d(-72px, -36px, 0) scale(1.10); opacity: .20; }
    100% { transform: translate3d(-22px, 32px, 0) scale(.96); opacity: .14; }
}

@keyframes spIconFloat {
    0%, 100% { transform: translateY(0); }
    50%      { transform: translateY(-5px); }
}

@keyframes spStatusPulse {
    0%, 100% {
        box-shadow: 0 0 0 0 rgba(251,227,196,.08), 0 0 12px rgba(251,227,196,.58);
    }
    50% {
        box-shadow: 0 0 0 7px rgba(251,227,196,0), 0 0 20px rgba(251,227,196,.90);
    }
}

.sp-parts__glow--blue {
    animation: spGlowDriftBlue 15s ease-in-out infinite alternate;
    will-change: transform, opacity;
}

.sp-parts__glow--pink {
    animation: spGlowDriftPink 17s ease-in-out infinite alternate;
    will-change: transform, opacity;
}

.sp-parts-finder,
.sp-parts-types,
.sp-parts__foot,
.sp-parts-step,
.sp-part-type {
    transition:
        transform .32s cubic-bezier(.2,.75,.25,1),
        border-color .32s ease,
        background-color .32s ease,
        box-shadow .32s ease;
}

.sp-parts-finder:hover,
.sp-parts-types:hover {
    transform: translateY(-4px);
    border-color: rgba(255,231,199,.34);
    box-shadow: 0 22px 58px rgba(0,0,0,.24), inset 0 1px 0 rgba(255,255,255,.025);
}

.sp-parts-step:hover,
.sp-part-type:hover {
    transform: translateY(-5px);
    background: linear-gradient(145deg, rgba(45,31,22,.70), rgba(24,16,11,.82));
}

.sp-parts-step:hover .sp-parts-step__icon,
.sp-part-type:hover .sp-part-type__icon {
    transform: translateY(-3px) scale(1.06);
    box-shadow: 0 0 24px color-mix(in srgb, var(--step-accent, var(--part-accent)) 28%, transparent);
}

.sp-parts-step__icon,
.sp-part-type__icon {
    transition: transform .32s cubic-bezier(.2,.75,.25,1), box-shadow .32s ease;
}

.sp-parts-step:nth-child(1) .sp-parts-step__icon { animation: spIconFloat 5.2s ease-in-out infinite; }
.sp-parts-step:nth-child(2) .sp-parts-step__icon { animation: spIconFloat 5.8s ease-in-out .8s infinite; }
.sp-parts-step:nth-child(3) .sp-parts-step__icon { animation: spIconFloat 5.5s ease-in-out 1.5s infinite; }

.sp-part-type:nth-child(1) .sp-part-type__icon { animation: spIconFloat 5.8s ease-in-out .2s infinite; }
.sp-part-type:nth-child(2) .sp-part-type__icon { animation: spIconFloat 6.2s ease-in-out 1.1s infinite; }
.sp-part-type:nth-child(3) .sp-part-type__icon { animation: spIconFloat 5.6s ease-in-out .7s infinite; }
.sp-part-type:nth-child(4) .sp-part-type__icon { animation: spIconFloat 6.0s ease-in-out 1.6s infinite; }
.sp-part-type:nth-child(5) .sp-part-type__icon { animation: spIconFloat 5.9s ease-in-out .4s infinite; }
.sp-part-type:nth-child(6) .sp-part-type__icon { animation: spIconFloat 6.3s ease-in-out 1.3s infinite; }

.sp-parts-finder__status {
    animation: spStatusPulse 2.4s ease-out infinite;
}

/* reveal on scroll — klasa dokładana przez site.js */
.sp-reveal {
    opacity: 0;
    transform: translateY(24px);
    filter: blur(2px);
    transition:
        opacity .72s ease,
        transform .72s cubic-bezier(.2,.75,.25,1),
        filter .72s ease;
}

.sp-reveal.is-visible {
    opacity: 1;
    transform: translateY(0);
    filter: blur(0);
}

.sp-reveal[data-sp-delay="1"] { transition-delay: .08s; }
.sp-reveal[data-sp-delay="2"] { transition-delay: .16s; }
.sp-reveal[data-sp-delay="3"] { transition-delay: .24s; }
.sp-reveal[data-sp-delay="4"] { transition-delay: .32s; }
.sp-reveal[data-sp-delay="5"] { transition-delay: .40s; }
.sp-reveal[data-sp-delay="6"] { transition-delay: .48s; }

/* subtelny blik na głównych CTA w sekcji */
.sp-parts .sp-btn {
    position: relative;
    overflow: hidden;
}

.sp-parts .sp-btn::after {
    content: "";
    position: absolute;
    inset: -45% auto -45% -50%;
    width: 34%;
    transform: skewX(-22deg);
    background: linear-gradient(90deg, transparent, rgba(255,255,255,.22), transparent);
    transition: left .55s ease;
    pointer-events: none;
}

.sp-parts .sp-btn:hover::after {
    left: 125%;
}

@media (prefers-reduced-motion: reduce) {
    .sp-parts__glow,
    .sp-parts-step__icon,
    .sp-part-type__icon,
    .sp-parts-finder__status {
        animation: none !important;
    }

    .sp-reveal {
        opacity: 1 !important;
        transform: none !important;
        filter: none !important;
        transition: none !important;
    }

    .sp-parts-finder,
    .sp-parts-types,
    .sp-parts__foot,
    .sp-parts-step,
    .sp-part-type,
    .sp-parts-step__icon,
    .sp-part-type__icon {
        transition: none !important;
    }
}


/* =========================================================
   MATERIALS / MYTONER — CROSS-SITE COMMERCE HANDOFF
   ========================================================= */

.sp-materials {
    position: relative;
    overflow: hidden;
    padding: 62px 0 112px;
    border-top: 1px solid rgba(194,170,150,.16);
    background:
        linear-gradient(180deg, rgba(16,10,6,.98), rgba(15,10,7,1)),
        var(--sp-bg);
}

.sp-materials::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    opacity: .22;
    background-image:
        linear-gradient(rgba(185,152,125,.08) 1px, transparent 1px),
        linear-gradient(90deg, rgba(185,152,125,.08) 1px, transparent 1px);
    background-size: 76px 76px;
    mask-image: linear-gradient(to bottom, transparent, #000000 18%, #000000 82%, transparent);
}

.sp-materials__orb {
    position: absolute;
    width: 520px;
    height: 520px;
    border-radius: 50%;
    filter: blur(110px);
    pointer-events: none;
    opacity: .10;
}

.sp-materials__orb--blue {
    left: -250px;
    top: 4%;
    background: var(--sp-blue);
    animation: spMaterialsOrbBlue 15s ease-in-out infinite alternate;
}

.sp-materials__orb--pink {
    right: -220px;
    bottom: -110px;
    background: var(--sp-pink);
    animation: spMaterialsOrbPink 17s ease-in-out infinite alternate;
}

.sp-materials__stage {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: minmax(0, .86fr) minmax(560px, 1.14fr);
    gap: clamp(56px, 6vw, 104px);
    align-items: center;
}

.sp-materials__intro h2 {
    max-width: 720px;
    margin: 12px 0 24px;
    color: #f7f9fc;
    font-size: clamp(38px, 3.7vw, 58px);
    line-height: 1.08;
    letter-spacing: -.04em;
    text-shadow: 0 1px 0 rgba(255,255,255,.02), 0 12px 34px rgba(0,0,0,.18);
}

.sp-materials__title-accent {
    display: inline-block;
    padding-bottom: .08em;
    color: #ffe7c7;
    background: linear-gradient(90deg, #ffe7c7 0%, #ffe7c7 50%, #ff31ae 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}

.sp-materials__lead {
    max-width: 650px;
    margin: 0;
    color: #ebe5de;
    font-size: 16px;
    line-height: 1.75;
}

.sp-materials__route {
    display: grid;
    grid-template-columns: auto minmax(84px, 1fr) auto;
    align-items: center;
    gap: 16px;
    max-width: 620px;
    margin-top: 38px;
}

.sp-materials__route-node {
    min-width: 124px;
    padding: 13px 16px;
    border: 1px solid rgba(198,170,147,.25);
    border-radius: 12px;
    background: rgba(29,19,13,.78);
    color: #edf3fb;
    font-size: 11px;
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: .11em;
}

.sp-materials__route-node--service {
    box-shadow: inset 2px 0 0 rgba(255,231,199,.85);
}

.sp-materials__route-node--shop {
    box-shadow: inset -2px 0 0 rgba(255,22,168,.85);
}

.sp-materials__route-node small {
    color: var(--sp-muted);
    font-size: 8px;
    letter-spacing: .14em;
}

.sp-materials__route-line {
    position: relative;
    height: 1px;
    overflow: visible;
    background: linear-gradient(90deg, var(--sp-blue), rgba(255,231,199,.8), var(--sp-pink));
    box-shadow: 0 0 14px rgba(255,231,199,.28);
}

.sp-materials__route-line::before,
.sp-materials__route-line::after {
    content: "";
    position: absolute;
    top: 50%;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    transform: translateY(-50%);
}

.sp-materials__route-line::before {
    left: -2px;
    background: var(--sp-blue);
    box-shadow: 0 0 13px var(--sp-blue);
}

.sp-materials__route-line::after {
    right: -2px;
    background: var(--sp-pink);
    box-shadow: 0 0 13px var(--sp-pink);
}

.sp-materials__route-line i {
    position: absolute;
    top: -3px;
    left: 0;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #ffffff;
    box-shadow: 0 0 18px rgba(255,255,255,.9);
    animation: spRouteSignal 3.3s ease-in-out infinite;
}

.sp-materials__note {
    max-width: 610px;
    margin: 24px 0 0;
    color: #b1a296;
    font-size: 13px;
    line-height: 1.65;
}

.sp-materials__shop {
    position: relative;
    overflow: hidden;
    border: 1px solid rgba(197,171,150,.24);
    border-radius: 20px;
    background: linear-gradient(145deg, rgba(34,23,16,.94), rgba(20,13,9,.96));
    box-shadow: 0 30px 90px rgba(0,0,0,.30), inset 0 1px 0 rgba(255,255,255,.025);
}

.sp-materials__shop::after {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: linear-gradient(115deg, transparent 22%, rgba(255,231,199,.035) 43%, rgba(255,22,168,.035) 62%, transparent 79%);
    transform: translateX(-70%);
    animation: spShopSweep 8s ease-in-out infinite;
}

.sp-materials__shop-head {
    position: relative;
    z-index: 1;
    min-height: 58px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding: 0 22px;
    border-bottom: 1px solid rgba(197,171,150,.18);
}

.sp-materials__shop-head > div {
    display: flex;
    align-items: center;
    gap: 10px;
}

.sp-materials__shop-head strong {
    font-size: 13px;
}

.sp-materials__shop-head > span {
    color: #a49487;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .15em;
}

.sp-materials__shop-status {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--sp-blue);
    box-shadow: 0 0 14px rgba(255,231,199,.8);
    animation: spStatusPulse 2.4s ease-out infinite;
}

.sp-material-card {
    --material-accent: var(--sp-blue);
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: 64px minmax(0, 1fr) 36px;
    gap: 20px;
    align-items: center;
    min-height: 154px;
    padding: 26px 24px;
    border-bottom: 1px solid rgba(197,171,150,.16);
    transition: background .3s ease, transform .3s cubic-bezier(.2,.75,.25,1);
}

.sp-material-card--pink {
    --material-accent: var(--sp-pink);
}

.sp-material-card:hover {
    transform: translateX(7px);
    background: linear-gradient(90deg, color-mix(in srgb, var(--material-accent) 8%, transparent), transparent 72%);
}

.sp-material-card__icon {
    width: 58px;
    height: 58px;
    display: grid;
    place-items: center;
    border: 1px solid color-mix(in srgb, var(--material-accent) 70%, transparent);
    border-radius: 16px;
    color: var(--material-accent);
    background: rgba(21,14,9,.72);
    box-shadow: 0 0 24px color-mix(in srgb, var(--material-accent) 8%, transparent);
    transition: transform .3s ease, box-shadow .3s ease;
}

.sp-material-card:hover .sp-material-card__icon {
    transform: rotate(-3deg) scale(1.06);
    box-shadow: 0 0 30px color-mix(in srgb, var(--material-accent) 16%, transparent);
}

.sp-material-card__icon svg {
    width: 26px;
    height: 26px;
    stroke: currentColor;
}

.sp-material-card__content {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.sp-material-card__eyebrow {
    color: var(--material-accent);
    font-size: 9px;
    font-weight: 850;
    letter-spacing: .16em;
}

.sp-material-card__content strong {
    color: #f7f9fc;
    font-size: 19px;
    letter-spacing: -.02em;
}

.sp-material-card__content > span:last-child {
    max-width: 520px;
    color: #bfb1a6;
    font-size: 13px;
    line-height: 1.55;
}

.sp-material-card__arrow {
    color: var(--material-accent);
    font-size: 22px;
    transition: transform .3s ease;
}

.sp-material-card:hover .sp-material-card__arrow {
    transform: translateX(6px);
}

.sp-materials__all {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    min-height: 88px;
    padding: 18px 24px;
    border-bottom: 1px solid rgba(197,171,150,.16);
    background: linear-gradient(90deg, rgba(255,231,199,.055), rgba(255,231,199,.04), rgba(255,22,168,.055));
}

.sp-materials__all > span:first-child {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.sp-materials__all small {
    color: #af9b8b;
    font-size: 9px;
    font-weight: 850;
    letter-spacing: .16em;
}

.sp-materials__all strong {
    font-size: 15px;
}

.sp-materials__all-arrow {
    display: grid;
    place-items: center;
    width: 42px;
    height: 42px;
    border-radius: 50%;
    border: 1px solid rgba(235,213,183,.32);
    color: #ffffff;
    transition: transform .3s ease, border-color .3s ease;
}

.sp-materials__all:hover .sp-materials__all-arrow {
    transform: translate(3px, -3px);
    border-color: rgba(255,22,168,.52);
}

.sp-materials__help {
    position: relative;
    z-index: 2;
    min-height: 64px;
    display: grid;
    grid-template-columns: 28px minmax(0, 1fr) auto;
    align-items: center;
    gap: 12px;
    padding: 13px 20px;
}

.sp-materials__help > span {
    width: 25px;
    height: 25px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(255,231,199,.38);
    border-radius: 50%;
    color: var(--sp-blue);
    font-size: 11px;
    font-weight: 900;
}

.sp-materials__help p {
    margin: 0;
    color: #b1a397;
    font-size: 11.5px;
}

.sp-materials__help p strong {
    color: #e8edf5;
}

.sp-materials__help a {
    color: #f2f5fa;
    font-size: 11.5px;
    font-weight: 800;
    white-space: nowrap;
}

.sp-materials__help a span {
    margin-left: 8px;
    color: var(--sp-pink);
}

@keyframes spRouteSignal {
    0%   { left: 0; opacity: 0; }
    12%  { opacity: 1; }
    88%  { opacity: 1; }
    100% { left: calc(100% - 7px); opacity: 0; }
}

@keyframes spShopSweep {
    0%, 22% { transform: translateX(-80%); opacity: 0; }
    40%     { opacity: 1; }
    68%     { transform: translateX(80%); opacity: .9; }
    100%    { transform: translateX(80%); opacity: 0; }
}

@keyframes spMaterialsOrbBlue {
    from { transform: translate3d(0,0,0) scale(.95); opacity: .07; }
    to   { transform: translate3d(90px,38px,0) scale(1.08); opacity: .13; }
}

@keyframes spMaterialsOrbPink {
    from { transform: translate3d(0,0,0) scale(1.02); opacity: .08; }
    to   { transform: translate3d(-90px,-34px,0) scale(.94); opacity: .14; }
}

@media (max-width: 1120px) {
    .sp-materials__stage {
        grid-template-columns: 1fr;
    }

    .sp-materials__intro {
        max-width: 820px;
    }

    .sp-materials__route {
        max-width: 700px;
    }
}

@media (max-width: 720px) {
    .sp-materials {
        padding: 54px 0 80px;
    }

    .sp-materials__intro h2 {
        font-size: clamp(36px, 11vw, 48px);
    }

    .sp-materials__lead {
        font-size: 14px;
    }

    .sp-materials__route {
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .sp-materials__route-node {
        min-width: 0;
        width: 100%;
    }

    .sp-materials__route-line {
        width: 1px;
        height: 36px;
        justify-self: center;
        background: linear-gradient(180deg, var(--sp-blue), var(--sp-pink));
    }

    .sp-materials__route-line::before,
    .sp-materials__route-line::after {
        left: 50%;
        right: auto;
        transform: translate(-50%, 0);
    }

    .sp-materials__route-line::before { top: 0; }
    .sp-materials__route-line::after { top: auto; bottom: 0; }

    .sp-materials__route-line i { display: none; }

    .sp-material-card {
        grid-template-columns: 52px minmax(0, 1fr);
        min-height: 0;
        padding: 22px 18px;
    }

    .sp-material-card__icon {
        width: 48px;
        height: 48px;
        border-radius: 14px;
    }

    .sp-material-card__arrow {
        display: none;
    }

    .sp-materials__shop-head,
    .sp-materials__all,
    .sp-materials__help {
        padding-inline: 18px;
    }

    .sp-materials__shop-head > span {
        display: none;
    }

    .sp-materials__help {
        grid-template-columns: 28px minmax(0, 1fr);
    }

    .sp-materials__help a {
        grid-column: 2;
        justify-self: start;
    }
}

@media (prefers-reduced-motion: reduce) {
    .sp-materials__orb,
    .sp-materials__route-line i,
    .sp-materials__shop::after,
    .sp-materials__shop-status {
        animation: none !important;
    }
}


/* =========================================================
   PLOTTER BUYING / SELECTION
   ========================================================= */

.sp-plotter-buy {
    position: relative;
    overflow: hidden;
    padding: 72px 0 76px;
    border-top: 1px solid rgba(194,170,150,.16);
    background:
        radial-gradient(circle at 14% 22%, rgba(255,231,199,.07), transparent 30%),
        radial-gradient(circle at 88% 70%, rgba(255,22,168,.075), transparent 32%),
        linear-gradient(180deg, #081314 0%, #081112 100%);
}

.sp-plotter-buy::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    opacity: .17;
    background-image:
        linear-gradient(rgba(185,152,125,.08) 1px, transparent 1px),
        linear-gradient(90deg, rgba(185,152,125,.08) 1px, transparent 1px);
    background-size: 68px 68px;
    mask-image: linear-gradient(to bottom, transparent, #000000 14%, #000000 84%, transparent);
}

.sp-plotter-buy__glow {
    position: absolute;
    width: 480px;
    height: 480px;
    border-radius: 50%;
    filter: blur(115px);
    pointer-events: none;
    opacity: .09;
}

.sp-plotter-buy__glow--blue {
    left: -260px;
    bottom: -110px;
    background: var(--sp-blue);
    animation: spPlotterGlowBlue 16s ease-in-out infinite alternate;
}

.sp-plotter-buy__glow--pink {
    right: -260px;
    top: -130px;
    background: var(--sp-pink);
    animation: spPlotterGlowPink 18s ease-in-out infinite alternate;
}

.sp-plotter-buy__head {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(420px, .78fr);
    align-items: end;
    gap: clamp(44px, 7vw, 110px);
    margin-bottom: 36px;
}

.sp-plotter-buy__head h2 {
    max-width: 720px;
    margin: 10px 0 0;
    color: #f8fafc;
    font-size: clamp(42px, 4.1vw, 64px);
    line-height: 1.02;
    letter-spacing: -.045em;
}

.sp-plotter-buy__head > p {
    max-width: 620px;
    margin: 0 0 4px;
    color: #d0c7bc;
    font-size: 15px;
    line-height: 1.75;
}

.sp-plotter-buy__grid {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: minmax(0, .92fr) minmax(580px, 1.08fr);
    gap: 18px;
    align-items: stretch;
}

.sp-plotter-guide,
.sp-plotter-usecases {
    position: relative;
    overflow: hidden;
    border: 1px solid rgba(197,171,150,.23);
    border-radius: 20px;
    background: linear-gradient(145deg, rgba(34,23,16,.95), rgba(20,13,9,.96));
    box-shadow: 0 28px 80px rgba(0,0,0,.26), inset 0 1px 0 rgba(255,255,255,.024);
}

.sp-plotter-guide::after,
.sp-plotter-usecases::after {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: linear-gradient(115deg, transparent 30%, rgba(255,231,199,.026) 46%, rgba(255,22,168,.03) 61%, transparent 76%);
    transform: translateX(-85%);
    animation: spPlotterSweep 9s ease-in-out infinite;
}

.sp-plotter-guide__top,
.sp-plotter-usecases__top {
    position: relative;
    z-index: 2;
    min-height: 58px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 0 22px;
    border-bottom: 1px solid rgba(197,171,150,.17);
}

.sp-plotter-guide__top > div,
.sp-plotter-usecases__top > div {
    display: flex;
    align-items: center;
    gap: 10px;
}

.sp-plotter-guide__top strong,
.sp-plotter-usecases__top strong {
    font-size: 13px;
}

.sp-plotter-guide__top > span,
.sp-plotter-usecases__top > span {
    color: #a69688;
    font-size: 9px;
    font-weight: 850;
    letter-spacing: .16em;
}

.sp-plotter-guide__status,
.sp-plotter-usecases__status {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--sp-blue);
    box-shadow: 0 0 14px rgba(255,231,199,.78);
    animation: spStatusPulse 2.4s ease-out infinite;
}

.sp-plotter-usecases__status {
    background: var(--sp-pink);
    box-shadow: 0 0 14px rgba(255,22,168,.74);
}

.sp-plotter-guide__steps {
    position: relative;
    z-index: 2;
}

.sp-plotter-guide__step {
    display: grid;
    grid-template-columns: 54px minmax(0, 1fr);
    gap: 18px;
    min-height: 132px;
    align-items: start;
    padding: 25px 24px;
    border-bottom: 1px solid rgba(197,171,150,.15);
    transition: transform .3s cubic-bezier(.2,.75,.25,1), background .3s ease;
}

.sp-plotter-guide__step:hover {
    transform: translateX(6px);
    background: linear-gradient(90deg, rgba(255,231,199,.045), transparent 75%);
}

.sp-plotter-guide__step--pink:hover {
    background: linear-gradient(90deg, rgba(255,22,168,.045), transparent 75%);
}

.sp-plotter-guide__step--violet:hover {
    background: linear-gradient(90deg, rgba(255,231,199,.05), transparent 75%);
}

.sp-plotter-guide__number {
    width: 46px;
    height: 46px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(255,231,199,.48);
    border-radius: 14px;
    color: var(--sp-blue);
    font-size: 11px;
    font-weight: 900;
    letter-spacing: .08em;
    background: rgba(20,12,7,.72);
    box-shadow: 0 0 24px rgba(255,231,199,.06);
}

.sp-plotter-guide__step--pink .sp-plotter-guide__number {
    color: var(--sp-pink);
    border-color: rgba(255,22,168,.48);
}

.sp-plotter-guide__step--violet .sp-plotter-guide__number {
    color: var(--sp-violet);
    border-color: rgba(255,231,199,.48);
}

.sp-plotter-guide__step h3 {
    margin: 1px 0 7px;
    color: #f6f8fc;
    font-size: 18px;
    letter-spacing: -.02em;
}

.sp-plotter-guide__step p {
    max-width: 560px;
    margin: 0;
    color: #beafa3;
    font-size: 13px;
    line-height: 1.62;
}

.sp-plotter-guide__actions {
    position: relative;
    z-index: 2;
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    padding: 22px 24px 24px;
}

.sp-plotter-usecases {
    isolation: isolate;
}

.sp-plotter-usecases__scan {
    position: absolute;
    z-index: 1;
    left: 0;
    right: 0;
    top: 58px;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(255,231,199,.6), rgba(255,22,168,.62), transparent);
    box-shadow: 0 0 16px rgba(255,231,199,.28);
    animation: spPlotterScan 5.6s ease-in-out infinite;
    pointer-events: none;
}

.sp-plotter-usecases__grid {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: 1fr 1fr;
}

.sp-usecase {
    --usecase-accent: var(--sp-blue);
    position: relative;
    min-height: 186px;
    display: grid;
    grid-template-columns: 54px minmax(0, 1fr) 24px;
    gap: 16px;
    align-items: start;
    padding: 26px 22px;
    border-right: 1px solid rgba(197,171,150,.15);
    border-bottom: 1px solid rgba(197,171,150,.15);
    transition: transform .32s cubic-bezier(.2,.75,.25,1), background .32s ease;
}

.sp-usecase:nth-child(2n) {
    border-right: 0;
}

.sp-usecase:nth-child(n+3) {
    border-bottom: 0;
}

.sp-usecase--pink { --usecase-accent: var(--sp-pink); }
.sp-usecase--violet { --usecase-accent: var(--sp-violet); }
.sp-usecase--cyan { --usecase-accent: #ffe7c7; }

.sp-usecase:hover {
    transform: translateY(-5px);
    background: linear-gradient(145deg, color-mix(in srgb, var(--usecase-accent) 7%, transparent), rgba(23,15,10,.20));
}

.sp-usecase__icon {
    width: 50px;
    height: 50px;
    display: grid;
    place-items: center;
    border: 1px solid color-mix(in srgb, var(--usecase-accent) 64%, transparent);
    border-radius: 14px;
    color: var(--usecase-accent);
    background: rgba(18,11,7,.72);
    transition: transform .32s ease, box-shadow .32s ease;
}

.sp-usecase:hover .sp-usecase__icon {
    transform: translateY(-3px) scale(1.05);
    box-shadow: 0 0 26px color-mix(in srgb, var(--usecase-accent) 16%, transparent);
}

.sp-usecase__icon svg {
    width: 24px;
    height: 24px;
    stroke: currentColor;
}

.sp-usecase__content {
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.sp-usecase__content small {
    color: var(--usecase-accent);
    font-size: 9px;
    font-weight: 850;
    letter-spacing: .15em;
}

.sp-usecase__content strong {
    color: #f6f8fc;
    font-size: 17px;
    letter-spacing: -.015em;
}

.sp-usecase__content > span:last-child {
    color: #baab9f;
    font-size: 12px;
    line-height: 1.55;
}

.sp-usecase__arrow {
    align-self: center;
    color: var(--usecase-accent);
    font-size: 20px;
    transition: transform .3s ease;
}

.sp-usecase:hover .sp-usecase__arrow {
    transform: translateX(5px);
}

.sp-plotter-usecases__foot {
    position: relative;
    z-index: 2;
    min-height: 68px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 14px 20px;
    border-top: 1px solid rgba(197,171,150,.16);
    background: linear-gradient(90deg, rgba(255,231,199,.035), rgba(255,22,168,.035));
}

.sp-plotter-usecases__foot p {
    margin: 0;
    color: #b7a99d;
    font-size: 11.5px;
}

.sp-plotter-usecases__foot p strong {
    color: #eef2f8;
}

.sp-plotter-usecases__foot a {
    color: #f4f6fa;
    font-size: 11.5px;
    font-weight: 800;
    white-space: nowrap;
}

.sp-plotter-usecases__foot a span {
    margin-left: 8px;
    color: var(--sp-pink);
}

@keyframes spPlotterScan {
    0%, 12% { transform: translateY(0); opacity: 0; }
    20% { opacity: .85; }
    78% { opacity: .55; }
    90%, 100% { transform: translateY(372px); opacity: 0; }
}

@keyframes spPlotterSweep {
    0%, 20% { transform: translateX(-85%); opacity: 0; }
    42% { opacity: 1; }
    72% { transform: translateX(85%); opacity: .8; }
    100% { transform: translateX(85%); opacity: 0; }
}

@keyframes spPlotterGlowBlue {
    from { transform: translate3d(0,0,0) scale(.96); opacity: .07; }
    to { transform: translate3d(90px,-30px,0) scale(1.08); opacity: .12; }
}

@keyframes spPlotterGlowPink {
    from { transform: translate3d(0,0,0) scale(1.02); opacity: .07; }
    to { transform: translate3d(-100px,40px,0) scale(.94); opacity: .13; }
}

@media (max-width: 1120px) {
    .sp-plotter-buy__head,
    .sp-plotter-buy__grid {
        grid-template-columns: 1fr;
    }

    .sp-plotter-buy__head {
        gap: 18px;
    }

    .sp-plotter-buy__head > p {
        max-width: 760px;
    }
}

@media (max-width: 720px) {
    .sp-plotter-buy {
        padding: 70px 0 78px;
    }

    .sp-plotter-buy__head h2 {
        font-size: clamp(36px, 11vw, 48px);
    }

    .sp-plotter-buy__head > p {
        font-size: 14px;
    }

    .sp-plotter-guide__top,
    .sp-plotter-usecases__top {
        padding-inline: 18px;
    }

    .sp-plotter-guide__top > span,
    .sp-plotter-usecases__top > span {
        display: none;
    }

    .sp-plotter-guide__step {
        grid-template-columns: 48px minmax(0, 1fr);
        min-height: 0;
        padding: 22px 18px;
    }

    .sp-plotter-guide__number {
        width: 42px;
        height: 42px;
    }

    .sp-plotter-guide__actions {
        padding-inline: 18px;
    }

    .sp-plotter-guide__actions .sp-btn {
        width: 100%;
    }

    .sp-plotter-usecases__grid {
        grid-template-columns: 1fr;
    }

    .sp-usecase {
        min-height: 0;
        border-right: 0;
        border-bottom: 1px solid rgba(197,171,150,.15) !important;
    }

    .sp-usecase:last-child {
        border-bottom: 0 !important;
    }

    .sp-plotter-usecases__foot {
        align-items: flex-start;
        flex-direction: column;
        padding: 16px 18px;
    }

    .sp-plotter-usecases__scan {
        display: none;
    }
}

@media (prefers-reduced-motion: reduce) {
    .sp-plotter-buy__glow,
    .sp-plotter-guide::after,
    .sp-plotter-usecases::after,
    .sp-plotter-guide__status,
    .sp-plotter-usecases__status,
    .sp-plotter-usecases__scan {
        animation: none !important;
    }
}


/* =========================================================
   PROCESS / HOW WE WORK
   ========================================================= */

.sp-process {
    position: relative;
    overflow: hidden;
    padding: 88px 0 96px;
    border-top: 1px solid rgba(194,170,150,.16);
    background:
        radial-gradient(circle at 12% 26%, rgba(255,231,199,.065), transparent 28%),
        radial-gradient(circle at 88% 72%, rgba(255,22,168,.065), transparent 30%),
        linear-gradient(180deg, #071011 0%, #081112 100%);
}

.sp-process__glow {
    position: absolute;
    width: 440px;
    height: 440px;
    border-radius: 50%;
    filter: blur(120px);
    opacity: .08;
    pointer-events: none;
}

.sp-process__glow--blue { left: -240px; top: 10%; background: var(--sp-blue); animation: spProcessGlowBlue 15s ease-in-out infinite alternate; }
.sp-process__glow--pink { right: -230px; bottom: -90px; background: var(--sp-pink); animation: spProcessGlowPink 17s ease-in-out infinite alternate; }

.sp-process__head {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: minmax(0,1fr) minmax(420px,.78fr);
    gap: clamp(44px,7vw,110px);
    align-items: end;
    margin-bottom: 36px;
}

.sp-process__head h2 {
    max-width: 760px;
    margin: 10px 0 0;
    color: #f8fafc;
    font-size: clamp(42px,4vw,62px);
    line-height: 1.03;
    letter-spacing: -.045em;
}

.sp-process__head > p {
    max-width: 620px;
    margin: 0 0 4px;
    color: #cdc4b8;
    font-size: 15px;
    line-height: 1.75;
}

.sp-process__rail {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: repeat(5, minmax(0,1fr));
    gap: 14px;
    padding-top: 26px;
}

.sp-process__line {
    position: absolute;
    left: 9.5%;
    right: 9.5%;
    top: 10px;
    height: 2px;
    border-radius: 99px;
    overflow: hidden;
    background: rgba(181,156,136,.16);
}

.sp-process__line i {
    display: block;
    width: 100%;
    height: 100%;
    transform-origin: left center;
    transform: scaleX(0);
    background: linear-gradient(90deg,var(--sp-blue),var(--sp-violet),var(--sp-pink));
    box-shadow: 0 0 18px rgba(255,231,199,.35);
}

.sp-process__rail.is-visible .sp-process__line i {
    animation: spProcessLine 1.35s .18s cubic-bezier(.2,.75,.25,1) forwards;
}

.sp-process-step {
    --process-accent: var(--sp-blue);
    position: relative;
    min-height: 246px;
    padding: 34px 22px 24px;
    border: 1px solid rgba(197,171,150,.20);
    border-radius: 18px;
    background: linear-gradient(145deg, rgba(34,23,16,.91), rgba(20,13,9,.94));
    transition: transform .32s cubic-bezier(.2,.75,.25,1), border-color .32s ease, background .32s ease;
}

.sp-process-step--pink { --process-accent: var(--sp-pink); }
.sp-process-step--violet { --process-accent: var(--sp-violet); }
.sp-process-step--blue { --process-accent: #ffe7c7; }
.sp-process-step--cyan { --process-accent: #ffe7c7; }

.sp-process-step:hover {
    transform: translateY(-7px);
    border-color: color-mix(in srgb, var(--process-accent) 42%, transparent);
    background: linear-gradient(145deg, color-mix(in srgb,var(--process-accent) 6%, #102022), rgba(20,13,9,.95));
}

.sp-process-step__dot {
    position: absolute;
    top: -23px;
    left: 50%;
    width: 12px;
    height: 12px;
    transform: translateX(-50%);
    border: 3px solid #091213;
    border-radius: 50%;
    background: var(--process-accent);
    box-shadow: 0 0 18px color-mix(in srgb,var(--process-accent) 72%, transparent);
}

.sp-process-step__number {
    position: absolute;
    top: 16px;
    right: 18px;
    color: #8d7e72;
    font-size: 9px;
    font-weight: 900;
    letter-spacing: .14em;
}

.sp-process-step__icon {
    width: 50px;
    height: 50px;
    display: grid;
    place-items: center;
    margin-bottom: 20px;
    border: 1px solid color-mix(in srgb,var(--process-accent) 60%, transparent);
    border-radius: 14px;
    color: var(--process-accent);
    background: rgba(18,11,7,.72);
    transition: transform .32s ease, box-shadow .32s ease;
}

.sp-process-step:hover .sp-process-step__icon {
    transform: translateY(-3px) scale(1.05);
    box-shadow: 0 0 28px color-mix(in srgb,var(--process-accent) 16%, transparent);
}

.sp-process-step__icon svg { width: 24px; height: 24px; stroke: currentColor; }

.sp-process-step h3 {
    margin: 0 0 9px;
    color: #f6f8fc;
    font-size: 17px;
    letter-spacing: -.02em;
}

.sp-process-step p {
    margin: 0;
    color: #bdaea2;
    font-size: 12.5px;
    line-height: 1.65;
}

.sp-process__foot {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    margin-top: 20px;
    padding: 18px 20px;
    border: 1px solid rgba(197,171,150,.18);
    border-radius: 14px;
    background: linear-gradient(90deg,rgba(255,231,199,.035),rgba(255,231,199,.02),rgba(255,22,168,.035));
}

.sp-process__foot > div { display:flex; flex-direction:column; gap:3px; }
.sp-process__foot strong { color:#f0f4fa; font-size:13px; }
.sp-process__foot span { color:#b1a397; font-size:12px; }

@keyframes spProcessLine { to { transform: scaleX(1); } }
@keyframes spProcessGlowBlue { from { transform:translate3d(0,0,0) scale(.95); opacity:.06; } to { transform:translate3d(80px,35px,0) scale(1.06); opacity:.11; } }
@keyframes spProcessGlowPink { from { transform:translate3d(0,0,0) scale(1.02); opacity:.06; } to { transform:translate3d(-85px,-30px,0) scale(.95); opacity:.11; } }

@media (max-width: 1120px) {
    .sp-process__head { grid-template-columns:1fr; gap:18px; }
    .sp-process__head > p { max-width:760px; }
    .sp-process__rail { grid-template-columns: repeat(2,minmax(0,1fr)); gap:14px; padding-top:0; }
    .sp-process__line, .sp-process-step__dot { display:none; }
    .sp-process-step:last-child { grid-column:1/-1; min-height:220px; }
}

@media (max-width: 720px) {
    .sp-process { padding:70px 0 78px; }
    .sp-process__head h2 { font-size:clamp(36px,11vw,48px); }
    .sp-process__head > p { font-size:14px; }
    .sp-process__rail { grid-template-columns:1fr; }
    .sp-process-step, .sp-process-step:last-child { min-height:0; grid-column:auto; padding:24px 20px; }
    .sp-process__foot { align-items:flex-start; flex-direction:column; }
    .sp-process__foot .sp-btn { width:100%; }
}

@media (prefers-reduced-motion: reduce) {
    .sp-process__glow { animation:none !important; }
    .sp-process__rail.is-visible .sp-process__line i { animation:none !important; transform:scaleX(1); }
}


/* =========================================================
   FINAL CTA + FOOTER
   ========================================================= */

.sp-final-cta {
    position: relative;
    overflow: hidden;
    padding: 62px 0 66px;
    border-top: 1px solid rgba(194,170,150,.16);
    background: linear-gradient(180deg, #071011 0%, #050b0c 100%);
}

.sp-final-cta__glow {
    position: absolute;
    width: 360px;
    height: 360px;
    border-radius: 50%;
    filter: blur(110px);
    opacity: .10;
    pointer-events: none;
}

.sp-final-cta__glow--blue { left: -180px; top: -150px; background: var(--sp-blue); }
.sp-final-cta__glow--pink { right: -150px; bottom: -180px; background: var(--sp-pink); }

.sp-final-cta__panel {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: minmax(0,1fr) auto;
    align-items: center;
    gap: 42px;
    padding: 34px 38px;
    border: 1px solid rgba(197,171,150,.24);
    border-radius: 20px;
    background:
        radial-gradient(circle at 12% 50%, rgba(255,231,199,.08), transparent 30%),
        radial-gradient(circle at 88% 50%, rgba(255,22,168,.08), transparent 30%),
        linear-gradient(110deg, rgba(32,21,14,.95), rgba(21,14,10,.96));
    box-shadow: 0 24px 70px rgba(0,0,0,.28);
}

.sp-final-cta__content h2 {
    margin: 8px 0 10px;
    color: #ffffff;
    font-size: clamp(34px,3.2vw,50px);
    line-height: 1.02;
    letter-spacing: -.04em;
}

.sp-final-cta__content p:last-child {
    max-width: 720px;
    margin: 0;
    color: #d0c7bc;
    font-size: 14px;
    line-height: 1.7;
}

.sp-final-cta__actions {
    display: flex;
    align-items: center;
    gap: 18px;
}

.sp-final-cta__phone {
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 160px;
}

.sp-final-cta__phone span { color: #aa9c90; font-size: 11px; }
.sp-final-cta__phone strong { color: #f7f9fc; font-size: 17px; }
.sp-final-cta__phone:hover strong { color: var(--sp-blue); }

.sp-footer {
    border-top: 1px solid rgba(194,170,150,.18);
    background: #04090a;
}

.sp-footer__main {
    display: grid;
    grid-template-columns: minmax(300px,1.35fr) .72fr .72fr 1fr;
    gap: clamp(32px,5vw,76px);
    padding: 58px 0 48px;
}

.sp-footer__brand { max-width: 380px; }

.sp-footer__logo {
    display: block;
    width: 255px;
    height: 66px;
    margin-bottom: 18px;
}

.sp-footer__logo > span {
    display: block;
    width: 100%;
    height: 100%;
    background: url('../images/logo-serwisploterow-header.png') no-repeat left center / contain;
}

.sp-footer__brand > p {
    margin: 0;
    color: #ad9f93;
    font-size: 12.5px;
    line-height: 1.7;
}

.sp-footer__contact-links {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 20px;
    margin-top: 18px;
}

.sp-footer__contact-links a {
    color: #e8edf5;
    font-size: 12.5px;
    font-weight: 750;
}

.sp-footer__contact-links a:hover,
.sp-footer__nav a:hover,
.sp-footer__network a:hover { color: var(--sp-blue); }

.sp-footer__nav,
.sp-footer__locations {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.sp-footer__nav > strong,
.sp-footer__locations > strong {
    margin-bottom: 15px;
    color: #f1f4f9;
    font-size: 12px;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.sp-footer__nav a {
    padding: 5px 0;
    color: #b3a69b;
    font-size: 12.5px;
}

.sp-footer__locations { gap: 15px; }
.sp-footer__locations > strong { margin-bottom: 0; }
.sp-footer__locations div span { color: #eee9e3; font-size: 11.5px; font-weight: 750; }
.sp-footer__locations p { margin: 3px 0 0; color: #a6988d; font-size: 11.5px; line-height: 1.55; }

.sp-footer__bottom {
    min-height: 58px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 28px;
    border-top: 1px solid rgba(194,170,150,.14);
    color: #998a7e;
    font-size: 10.5px;
}

.sp-footer__bottom p { margin: 0; }

.sp-footer__copyright {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px 12px;
}

.sp-footer__credit {
    color: #b5a79b;
    font-size: 10.5px;
    font-weight: 750;
    letter-spacing: .02em;
    transition: color .2s ease;
}

.sp-footer__credit:hover,
.sp-footer__credit:focus-visible {
    color: var(--sp-pink);
}

.sp-footer__network {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 10px 14px;
}

.sp-footer__network span { color: #8a7b6f; }
.sp-footer__network a { color: #b2a397; font-weight: 700; }

@media (max-width: 1040px) {
    .sp-final-cta__panel { grid-template-columns: 1fr; gap: 24px; }
    .sp-final-cta__actions { justify-content: flex-start; }
    .sp-footer__main { grid-template-columns: 1.4fr 1fr 1fr; }
    .sp-footer__locations { grid-column: 1 / -1; display: grid; grid-template-columns: 1fr 1fr; }
    .sp-footer__locations > strong { grid-column: 1 / -1; }
}

@media (max-width: 720px) {
    .sp-final-cta { padding: 48px 0 52px; }
    .sp-final-cta__panel { padding: 26px 22px; }
    .sp-final-cta__actions { align-items: stretch; flex-direction: column; }
    .sp-final-cta__actions .sp-btn { width: 100%; }
    .sp-final-cta__phone { align-items: center; text-align: center; }
    .sp-footer__main { grid-template-columns: 1fr 1fr; padding: 44px 0 38px; gap: 34px 26px; }
    .sp-footer__brand { grid-column: 1 / -1; max-width: none; }
    .sp-footer__locations { grid-template-columns: 1fr; }
    .sp-footer__locations > strong { grid-column: auto; }
    .sp-footer__bottom { align-items: flex-start; flex-direction: column; padding: 18px 0; }
    .sp-footer__network { justify-content: flex-start; }
}

@media (max-width: 480px) {
    .sp-footer__main { grid-template-columns: 1fr; }
    .sp-footer__brand, .sp-footer__locations { grid-column: auto; }
}


/* =========================================================
   HOMEPAGE — CIAŚNIEJSZY RYTM PIONOWY v10.3
   Po audycie całej strony głównej.
   ========================================================= */

@media (min-width: 721px) {
    .sp-needs {
        padding: 74px 0 78px;
    }

    .sp-service {
        padding: 72px 0 78px;
    }

    .sp-brands {
        padding: 74px 0 80px;
    }

    .sp-parts {
        padding: 74px 0 52px;
    }

    .sp-materials {
        padding: 52px 0 78px;
    }

    .sp-plotter-buy {
        padding: 64px 0 70px;
    }

    .sp-process {
        padding: 72px 0 76px;
    }

    .sp-final-cta {
        padding: 48px 0 54px;
    }
}

@media (max-width: 720px) {
    .sp-needs {
        padding-top: 58px;
        padding-bottom: 62px;
    }

    .sp-service {
        padding-top: 60px;
        padding-bottom: 64px;
    }

    .sp-brands {
        padding-top: 60px;
        padding-bottom: 64px;
    }

    .sp-parts {
        padding-top: 60px;
        padding-bottom: 42px;
    }

    .sp-materials {
        padding-top: 42px;
        padding-bottom: 62px;
    }

    .sp-plotter-buy {
        padding-top: 56px;
        padding-bottom: 62px;
    }

    .sp-process {
        padding-top: 58px;
        padding-bottom: 62px;
    }

    .sp-final-cta {
        padding-top: 40px;
        padding-bottom: 44px;
    }
}


/* =========================================================
   MOBILE AUDIT v10.4 — krótszy, czytelniejszy mobile
   Desktop pozostaje bez zmian.
   ========================================================= */

@media (max-width: 720px) {

    /* Pasek zaufania — mniej wysokości bez utraty czytelności */
    .sp-trust__item {
        min-height: 88px;
        padding: 17px 20px;
    }

    .sp-trust__item strong {
        font-size: 14px;
    }

    .sp-trust__item span:not(.sp-trust__icon) {
        font-size: 11.5px;
    }

    /* Czego potrzebujesz */
    .sp-needs__head {
        margin-bottom: 30px;
    }

    .sp-needs h2 {
        font-size: clamp(38px, 10.5vw, 44px);
        line-height: 1.04;
    }

    .sp-needs__intro {
        margin-top: 14px;
        font-size: 14px;
        line-height: 1.65;
    }

    .sp-needs__grid {
        gap: 14px;
    }

    .sp-need-card {
        min-height: 0;
        padding: 21px 22px 22px;
    }

    .sp-need-card__icon {
        width: 54px;
        height: 54px;
    }

    .sp-need-card h3 {
        margin-top: 18px;
        font-size: 19px;
    }

    .sp-need-card p {
        font-size: 13px;
        line-height: 1.58;
    }

    .sp-need-card__link {
        margin-top: 18px;
        padding-top: 0;
    }

    .sp-needs__foot {
        margin-top: 16px;
        padding: 15px 17px;
    }

    /* Serwis — mniej pionu, panel bardziej zwarty */
    .sp-service__content h2,
    .sp-service h2 {
        font-size: clamp(37px, 10vw, 43px);
        line-height: 1.04;
    }

    .sp-service__lead {
        margin-top: 20px;
        font-size: 15px;
        line-height: 1.62;
    }

    .sp-service__text {
        margin-top: 15px;
        font-size: 13px;
        line-height: 1.65;
    }

    .sp-service__tags {
        margin-top: 20px;
        gap: 7px;
    }

    .sp-service__actions {
        margin-top: 24px;
        gap: 14px;
    }

    .sp-service-card {
        min-height: 138px;
        padding: 20px 18px;
    }

    /* Marki — na mobile obecne karty były za wysokie */
    .sp-brands__head {
        margin-bottom: 28px;
    }

    .sp-brands__head h2 {
        font-size: clamp(36px, 9.8vw, 42px);
        line-height: 1.04;
    }

    .sp-brands__grid {
        gap: 13px;
    }

    .sp-brand-card {
        min-height: 0;
        padding: 21px 22px 22px;
    }

    .sp-brand-card__mark {
        min-height: 68px;
        margin-top: 14px;
        font-size: 50px;
    }

    .sp-brand-card--canon .sp-brand-card__mark {
        font-size: 42px;
    }

    .sp-brand-card h3 {
        font-size: 18px;
    }

    .sp-brand-card p {
        margin-top: 8px;
        font-size: 12.5px;
    }

    .sp-brand-card__link {
        margin-top: 18px;
        padding-top: 0;
    }

    .sp-brand-card__device {
        width: 56px;
        height: 56px;
        margin-top: 16px;
    }

    .sp-brand-card__button {
        margin-top: 18px;
    }

    /* Części — kroki jako zwarte bloki zamiast bardzo wysokich kart */
    .sp-parts__head {
        margin-bottom: 28px;
    }

    .sp-parts__head h2 {
        font-size: clamp(36px, 9.8vw, 42px);
        line-height: 1.04;
    }

    .sp-parts-finder__steps {
        grid-template-columns: 1fr;
    }

    .sp-parts-step {
        min-height: 0;
        padding: 20px 20px 19px;
        border-right: 0;
        border-bottom: 1px solid rgba(191,166,145,.15);
    }

    .sp-parts-step:last-child {
        border-bottom: 0;
    }

    .sp-parts-step__icon {
        margin-bottom: 14px;
    }

    .sp-parts-finder__foot {
        padding: 16px 18px;
    }

    .sp-parts-types__grid {
        grid-template-columns: 1fr 1fr;
    }

    .sp-part-type {
        min-height: 132px;
        padding: 18px 16px;
    }

    /* MyToner */
    .sp-materials__intro h2 {
        font-size: clamp(36px, 10vw, 43px);
        line-height: 1.07;
    }

    .sp-materials__route {
        margin-top: 28px;
    }

    .sp-materials__note {
        margin-top: 18px;
    }

    .sp-materials__shop {
        margin-top: 4px;
    }

    .sp-material-card {
        padding: 19px 17px;
    }

    /* Dobór plotera */
    .sp-plotter-buy__head {
        margin-bottom: 28px;
    }

    .sp-plotter-buy__head h2 {
        font-size: clamp(37px, 10vw, 44px);
        line-height: 1.04;
    }

    .sp-plotter-guide__step {
        padding: 18px 17px;
    }

    .sp-usecase {
        padding: 18px 17px;
    }

    /* Proces — pionowa, zwarta lista zamiast pięciu dużych kart */
    .sp-process__head {
        margin-bottom: 26px;
    }

    .sp-process__head h2 {
        font-size: clamp(37px, 10vw, 44px);
        line-height: 1.04;
    }

    .sp-process__rail {
        gap: 11px;
    }

    .sp-process-step,
    .sp-process-step:last-child {
        display: grid;
        grid-template-columns: 46px minmax(0, 1fr);
        column-gap: 15px;
        row-gap: 5px;
        padding: 18px 18px;
    }

    .sp-process-step__icon {
        grid-column: 1;
        grid-row: 1 / span 2;
        width: 44px;
        height: 44px;
        margin: 0;
    }

    .sp-process-step h3 {
        grid-column: 2;
        margin: 1px 24px 0 0;
        font-size: 16px;
    }

    .sp-process-step p {
        grid-column: 2;
        font-size: 12px;
        line-height: 1.55;
    }

    .sp-process-step__number {
        top: 18px;
        right: 16px;
    }

    .sp-process__foot {
        margin-top: 14px;
        padding: 16px 17px;
    }

    /* CTA końcowe */
    .sp-final-cta__panel {
        padding: 24px 20px;
    }

    .sp-final-cta__content h2 {
        font-size: clamp(34px, 9.6vw, 40px);
        line-height: 1.04;
    }

    /* Stopka — Oferta + Firma obok siebie, lokalizacje też krócej */
    .sp-footer__main {
        grid-template-columns: 1fr 1fr;
        gap: 30px 22px;
        padding: 38px 0 32px;
    }

    .sp-footer__brand {
        grid-column: 1 / -1;
    }

    .sp-footer__logo {
        width: 225px;
        height: 58px;
    }

    .sp-footer__locations {
        grid-column: 1 / -1;
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 18px 24px;
    }

    .sp-footer__locations > strong {
        grid-column: 1 / -1;
    }

    .sp-footer__bottom {
        gap: 14px;
        padding: 16px 0 20px;
    }

    .sp-footer__network {
        gap: 8px 12px;
    }
}

@media (max-width: 480px) {
    /* Nadpisuje wcześniejszą regułę, która robiła całą stopkę w jednej kolumnie */
    .sp-footer__main {
        grid-template-columns: 1fr 1fr;
    }

    .sp-footer__brand {
        grid-column: 1 / -1;
    }

    .sp-footer__locations {
        grid-column: 1 / -1;
        grid-template-columns: 1fr 1fr;
    }

    .sp-footer__locations > strong {
        grid-column: 1 / -1;
    }
}


/* =========================================================
   MOBILE FOOTER — WYŚRODKOWANIE v10.5
   ========================================================= */

@media (max-width: 720px) {
    .sp-footer__brand {
        text-align: center;
    }

    .sp-footer__logo {
        margin-left: auto;
        margin-right: auto;
    }

    .sp-footer__brand > p {
        max-width: 310px;
        margin-left: auto;
        margin-right: auto;
    }

    .sp-footer__contact-links {
        justify-content: center;
    }

    .sp-footer__nav,
    .sp-footer__locations {
        align-items: center;
        text-align: center;
    }

    .sp-footer__nav > strong,
    .sp-footer__locations > strong {
        width: 100%;
        text-align: center;
    }

    .sp-footer__locations div {
        width: 100%;
    }

    .sp-footer__bottom {
        align-items: center;
        text-align: center;
    }

    .sp-footer__copyright {
        justify-content: center;
    }

    .sp-footer__network {
        justify-content: center;
    }
}


/* =========================================================
   ZGŁOŚ SERWIS — PAGE TEMPLATE v11
   ========================================================= */

.sp-request-hero {
    position: relative;
    overflow: hidden;
    padding: 78px 0 72px;
    border-bottom: 1px solid rgba(194,170,150,.18);
    background:
        radial-gradient(circle at 18% 20%, rgba(255,231,199,.08), transparent 30%),
        radial-gradient(circle at 88% 72%, rgba(255,22,168,.09), transparent 32%),
        linear-gradient(110deg, #081112 0%, #081112 52%, #091213 100%);
}

.sp-request-hero__glow {
    position: absolute;
    width: 430px;
    height: 430px;
    border-radius: 50%;
    filter: blur(110px);
    opacity: .09;
    pointer-events: none;
}

.sp-request-hero__glow--blue { left: -210px; top: -190px; background: var(--sp-blue); }
.sp-request-hero__glow--pink { right: -190px; bottom: -230px; background: var(--sp-pink); }

.sp-request-hero__grid {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: end;
    gap: 60px;
}

.sp-request-hero h1 {
    max-width: 820px;
    margin: 10px 0 18px;
    color: #ffffff;
    font-size: clamp(48px, 4.7vw, 76px);
    line-height: .99;
    letter-spacing: -.045em;
}

.sp-request-hero__lead {
    max-width: 740px;
    margin: 0;
    color: #cac0b8;
    font-size: 17px;
    line-height: 1.72;
}

.sp-request-contact {
    min-width: 270px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 4px;
    padding: 21px 23px;
    border: 1px solid rgba(194,170,150,.23);
    border-radius: 15px;
    background: rgba(24,16,10,.72);
}

.sp-request-contact span,
.sp-request-contact small {
    color: #aa9c91;
    font-size: 11px;
}

.sp-request-contact a {
    color: #ffffff !important;
    font-size: 22px;
    font-weight: 850;
}

.sp-request-contact a:hover {
    color: var(--sp-blue) !important;
}

.sp-request {
    position: relative;
    padding: 72px 0 82px;
    background:
        radial-gradient(circle at 6% 25%, rgba(255,231,199,.045), transparent 28%),
        radial-gradient(circle at 94% 62%, rgba(255,22,168,.045), transparent 31%),
        #070e0f;
}

.sp-request__layout {
    display: grid;
    grid-template-columns: minmax(0, 1.28fr) minmax(330px, .72fr);
    gap: 24px;
    align-items: start;
}

.sp-request__form-panel,
.sp-request__aside {
    border: 1px solid rgba(198,172,151,.21);
    border-radius: 20px;
    background: linear-gradient(145deg, rgba(34,23,16,.94), rgba(19,13,9,.97));
    box-shadow: 0 28px 80px rgba(0,0,0,.26), inset 0 1px 0 rgba(255,255,255,.02);
}

.sp-request__form-panel {
    overflow: hidden;
}

.sp-request__panel-head {
    min-height: 58px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding: 0 24px;
    border-bottom: 1px solid rgba(198,172,151,.16);
}

.sp-request__panel-head > div {
    display: flex;
    align-items: center;
    gap: 10px;
}

.sp-request__panel-head strong {
    color: #eef3fa;
    font-size: 13px;
}

.sp-request__panel-head > span {
    color: #8f8074;
    font-size: 9px;
    font-weight: 850;
    letter-spacing: .15em;
}

.sp-request__status-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--sp-blue);
    box-shadow: 0 0 14px rgba(255,231,199,.72);
}

.sp-service-form {
    padding: 26px 26px 0;
}

.sp-form-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 19px;
}

.sp-field {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.sp-field--full {
    grid-column: 1 / -1;
}

.sp-field label {
    color: #f0ece6;
    font-size: 12px;
    font-weight: 750;
}

.sp-field label > span,
.sp-field > label > span:first-of-type {
    color: var(--sp-pink);
}

.sp-field input[type="text"],
.sp-field input[type="tel"],
.sp-field input[type="email"],
.sp-field input[type="file"],
.sp-field textarea,
.sp-field select {
    width: 100%;
    border: 1px solid rgba(198,172,151,.25);
    border-radius: 10px;
    outline: 0;
    background: rgba(18,11,7,.72);
    color: #f4f7fb;
    font: inherit;
    font-size: 14px;
    transition: border-color .2s ease, box-shadow .2s ease, background .2s ease;
}

.sp-field input[type="text"],
.sp-field input[type="tel"],
.sp-field input[type="email"],
.sp-field select {
    min-height: 50px;
    padding: 0 14px;
}

.sp-field textarea {
    min-height: 142px;
    padding: 13px 14px;
    resize: vertical;
}

.sp-field input[type="file"] {
    min-height: 52px;
    padding: 11px 12px;
    color: #c9beb4;
}

.sp-field input::placeholder,
.sp-field textarea::placeholder {
    color: #8a7c70;
}

.sp-field input:focus,
.sp-field textarea:focus,
.sp-field select:focus {
    border-color: rgba(255,231,199,.58);
    background: rgba(27,17,11,.86);
    box-shadow: 0 0 0 3px rgba(255,231,199,.07);
}

.sp-field small {
    color: #9a8b7f;
    font-size: 10.5px;
}

.sp-field--consent {
    margin-top: 2px;
}

.sp-field--consent > label {
    display: flex;
    align-items: flex-start;
    gap: 11px;
    color: #b0a195;
    font-size: 11.5px;
    font-weight: 500;
    line-height: 1.55;
}

.sp-field--consent input {
    flex: 0 0 auto;
    margin-top: 3px;
    accent-color: var(--sp-blue);
}

.sp-field--consent a {
    color: #f3ece3 !important;
    text-decoration: underline;
    text-underline-offset: 2px;
}

.sp-service-form__foot {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    margin: 26px -26px 0;
    padding: 19px 26px;
    border-top: 1px solid rgba(198,172,151,.16);
    background: linear-gradient(90deg, rgba(255,231,199,.025), rgba(255,22,168,.025));
}

.sp-service-form__foot > div {
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.sp-service-form__foot strong {
    color: #f6f2ed;
    font-size: 11.5px;
}

.sp-service-form__foot span {
    color: #9f9185;
    font-size: 10.5px;
}

.sp-service-form__submit {
    border: 0;
    cursor: pointer;
    white-space: nowrap;
}

.sp-form-honeypot {
    position: absolute !important;
    left: -99999px !important;
    width: 1px;
    height: 1px;
    overflow: hidden;
}

.sp-form-message {
    margin: 22px 26px 0;
    padding: 14px 16px;
    border-radius: 11px;
    display: flex;
    flex-direction: column;
    gap: 3px;
    font-size: 12px;
}

.sp-form-message--success {
    border: 1px solid rgba(218,197,170,.30);
    background: rgba(142,103,71,.10);
    color: #f1dfc6;
}

.sp-form-message--error {
    border: 1px solid rgba(255,79,137,.30);
    background: rgba(190,31,83,.10);
    color: #ffc0d4;
}

.sp-request__aside {
    position: sticky;
    top: 24px;
    padding: 30px 28px 28px;
}

.sp-request__aside h2 {
    margin: 9px 0 26px;
    color: #f7f9fc;
    font-size: 30px;
    line-height: 1.08;
    letter-spacing: -.035em;
}

.sp-request-checklist {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
}

.sp-request-checklist li {
    display: grid;
    grid-template-columns: 40px minmax(0,1fr);
    gap: 14px;
    padding: 20px 0;
    border-top: 1px solid rgba(198,172,151,.14);
}

.sp-request-checklist li > span {
    width: 34px;
    height: 34px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(255,231,199,.33);
    border-radius: 10px;
    color: var(--sp-blue);
    background: rgba(18,11,7,.62);
    font-size: 10px;
    font-weight: 850;
}

.sp-request-checklist strong {
    color: #f0f4f9;
    font-size: 14px;
}

.sp-request-checklist p {
    margin: 5px 0 0;
    color: #ad9f94;
    font-size: 12px;
    line-height: 1.58;
}

.sp-request__aside-call {
    display: flex;
    flex-direction: column;
    gap: 4px;
    margin-top: 18px;
    padding: 17px 18px;
    border: 1px solid rgba(255,22,168,.22);
    border-radius: 12px;
    background: linear-gradient(100deg, rgba(255,231,199,.04), rgba(255,22,168,.05));
}

.sp-request__aside-call span {
    color: #a7998e;
    font-size: 10.5px;
}

.sp-request__aside-call strong {
    color: #edf2f8;
    font-size: 13px;
}

.sp-request__aside-call a {
    color: #ffffff !important;
}

@media (max-width: 960px) {
    .sp-request-hero__grid,
    .sp-request__layout {
        grid-template-columns: 1fr;
    }

    .sp-request-contact {
        min-width: 0;
        width: fit-content;
    }

    .sp-request__aside {
        position: static;
    }
}

@media (max-width: 720px) {
    .sp-request-hero {
        padding: 56px 0 52px;
    }

    .sp-request-hero h1 {
        font-size: clamp(42px, 12vw, 54px);
    }

    .sp-request-hero__lead {
        font-size: 14px;
    }

    .sp-request-contact {
        width: 100%;
    }

    .sp-request {
        padding: 46px 0 58px;
    }

    .sp-request__layout {
        gap: 16px;
    }

    .sp-request__panel-head {
        padding-inline: 18px;
    }

    .sp-request__panel-head > span {
        display: none;
    }

    .sp-service-form {
        padding: 20px 18px 0;
    }

    .sp-form-grid {
        grid-template-columns: 1fr;
        gap: 15px;
    }

    .sp-field--full {
        grid-column: auto;
    }

    .sp-service-form__foot {
        align-items: stretch;
        flex-direction: column;
        margin: 22px -18px 0;
        padding: 17px 18px;
    }

    .sp-service-form__submit {
        width: 100%;
    }

    .sp-request__aside {
        padding: 24px 21px;
    }

    .sp-request__aside h2 {
        font-size: 27px;
    }
}


/* =========================================================
   ZGŁOŚ SERWIS — DOPRACOWANIE FORMULARZA v11.1
   ========================================================= */

.sp-field--consent > label,
.sp-field--consent > label > span {
    color: #bbaea4 !important;
}

.sp-field--consent > label > span a {
    color: #f3eee7 !important;
}

.sp-field--consent > label > span a:hover,
.sp-field--consent > label > span a:focus-visible {
    color: var(--sp-blue) !important;
}

.sp-field--consent input[type="checkbox"] {
    width: 17px;
    height: 17px;
    margin-top: 2px;
    accent-color: var(--sp-pink);
}

.sp-field input[type="file"] {
    cursor: pointer;
}

.sp-field input[type="file"]::file-selector-button,
.sp-field input[type="file"]::-webkit-file-upload-button {
    margin-right: 12px;
    padding: 9px 13px;
    border: 1px solid rgba(235,213,183,.34);
    border-radius: 8px;
    background:
        linear-gradient(100deg, rgba(255,231,199,.12), rgba(255,231,199,.10), rgba(255,22,168,.12));
    color: #eef3fa;
    font: inherit;
    font-size: 12px;
    font-weight: 800;
    cursor: pointer;
}

.sp-field input[type="file"]::file-selector-button:hover {
    border-color: rgba(255,231,199,.58);
    background:
        linear-gradient(100deg, rgba(255,231,199,.18), rgba(255,231,199,.15), rgba(255,22,168,.18));
}


/* PODSTRONA SERWIS — v12 */
.sp-service-page-hero{padding:78px 0 76px;border-bottom:1px solid rgba(194,170,150,.18);background:radial-gradient(circle at 16% 25%,rgba(255,231,199,.09),transparent 30%),radial-gradient(circle at 89% 65%,rgba(255,22,168,.08),transparent 32%),linear-gradient(110deg,#081112 0%,#081112 53%,#091213 100%)}
.sp-service-page-hero__grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(310px,.62fr);gap:clamp(50px,7vw,110px);align-items:center}
.sp-service-page-hero h1{max-width:900px;margin:10px 0 20px;color:#ffffff;font-size:clamp(46px,4.5vw,72px);line-height:1.01;letter-spacing:-.045em}
.sp-service-page-hero__lead{max-width:800px;margin:0;color:#cac0b7;font-size:17px;line-height:1.72}
.sp-service-page-hero__actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.sp-service-page-hero__side{padding:24px;border:1px solid rgba(198,172,151,.22);border-radius:18px;background:linear-gradient(145deg,rgba(34,23,16,.91),rgba(20,13,9,.95))}
.sp-service-page-hero__side strong{color:#eef3fa}
.sp-service-page-hero__side ul{list-style:none;margin:12px 0 0;padding:0}
.sp-service-page-hero__side li{padding:7px 0;color:#bbaea3;font-size:13px}
.sp-service-page{padding:74px 0 78px;background:#070e0f}
.sp-service-page__head{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(340px,.7fr);gap:70px;align-items:end;margin-bottom:36px}
.sp-service-page__head h2,.sp-service-page-brands h2{margin:10px 0 0;color:#f7f9fc;font-size:clamp(38px,3.2vw,56px);line-height:1.04;letter-spacing:-.04em}
.sp-service-page__head>p,.sp-service-page-brands p{margin:0;color:#b6a99f;font-size:14px;line-height:1.72}
.sp-service-page__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}
.sp-service-page-card{--a:var(--sp-blue);min-height:220px;padding:24px;border:1px solid rgba(198,172,151,.20);border-radius:17px;background:linear-gradient(145deg,rgba(34,23,16,.91),rgba(20,13,9,.95))}
.sp-service-page-card--pink{--a:var(--sp-pink)}.sp-service-page-card--violet{--a:var(--sp-violet)}
.sp-service-page-card>span{display:grid;place-items:center;width:42px;height:42px;border:1px solid color-mix(in srgb,var(--a) 55%,transparent);border-radius:12px;color:var(--a);font-size:10px;font-weight:900}
.sp-service-page-card h3{margin:24px 0 0;color:#f4f7fb;font-size:18px}.sp-service-page-card p{margin:10px 0 0;color:#afa399;font-size:12.5px;line-height:1.62}
.sp-service-page-brands{padding:70px 0;border-top:1px solid rgba(198,172,151,.15);border-bottom:1px solid rgba(198,172,151,.15);background:#081112}
.sp-service-page-brands__grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(480px,1.2fr);gap:clamp(55px,7vw,110px);align-items:center}
.sp-service-page-brands__links{overflow:hidden;border:1px solid rgba(198,172,151,.21);border-radius:18px}
.sp-service-page-brands__links a{display:grid;grid-template-columns:100px minmax(0,1fr) 24px;gap:20px;align-items:center;min-height:84px;padding:18px 22px;border-bottom:1px solid rgba(198,172,151,.14)}
.sp-service-page-brands__links a:last-child{border-bottom:0}.sp-service-page-brands__links span{color:var(--sp-blue);font-size:11px;font-weight:900}.sp-service-page-brands__links strong{color:#f0f4f9}.sp-service-page-brands__links em{color:var(--sp-pink);font-style:normal}
.sp-service-page-cta{padding:52px 0 58px;background:#060c0d}.sp-service-page-cta__panel{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:40px;align-items:center;padding:31px 34px;border:1px solid rgba(198,172,151,.22);border-radius:19px;background:linear-gradient(110deg,rgba(32,21,14,.94),rgba(21,14,10,.96))}
.sp-service-page-cta h2{margin:8px 0;color:#ffffff;font-size:clamp(32px,2.7vw,46px);line-height:1.04}.sp-service-page-cta p:last-child{margin:0;color:#b5a79c;font-size:13px}
.sp-service-page-cta__actions{display:flex;align-items:center;gap:18px}.sp-service-page-cta__phone{display:flex;flex-direction:column}.sp-service-page-cta__phone small{color:#a7998e}.sp-service-page-cta__phone strong{color:#ffffff}
@media(max-width:980px){.sp-service-page-hero__grid,.sp-service-page__head,.sp-service-page-brands__grid,.sp-service-page-cta__panel{grid-template-columns:1fr}.sp-service-page__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.sp-service-page-hero{padding:56px 0}.sp-service-page-hero h1{font-size:clamp(40px,11vw,50px)}.sp-service-page-hero__actions{flex-direction:column}.sp-service-page-hero__actions .sp-btn{width:100%}.sp-service-page{padding:56px 0 60px}.sp-service-page__head{gap:18px}.sp-service-page__grid{grid-template-columns:1fr}.sp-service-page-card{min-height:0;padding:20px}.sp-service-page-brands{padding:56px 0}.sp-service-page-brands__links a{grid-template-columns:78px minmax(0,1fr) 20px;gap:12px;min-height:74px;padding:15px 17px}.sp-service-page-cta{padding:42px 0 48px}.sp-service-page-cta__panel{padding:24px 21px}.sp-service-page-cta__actions{flex-direction:column;align-items:stretch}.sp-service-page-cta__actions .sp-btn{width:100%}}


/* =========================================================
   PODSTRONA CZĘŚCI — v13
   ========================================================= */

.sp-parts-page-hero {
    padding: 78px 0 76px;
    border-bottom: 1px solid rgba(194,170,150,.18);
    background:
        radial-gradient(circle at 14% 28%, rgba(255,231,199,.09), transparent 30%),
        radial-gradient(circle at 90% 65%, rgba(255,22,168,.08), transparent 32%),
        linear-gradient(110deg,#081112 0%,#081112 52%,#091213 100%);
}

.sp-parts-page-hero__grid {
    display:grid;
    grid-template-columns:minmax(0,1.18fr) minmax(330px,.62fr);
    gap:clamp(50px,7vw,110px);
    align-items:center;
}

.sp-parts-page-hero h1 {
    max-width:900px;
    margin:10px 0 20px;
    color:#ffffff;
    font-size:clamp(46px,4.5vw,72px);
    line-height:1.01;
    letter-spacing:-.045em;
}

.sp-parts-page-hero__lead {
    max-width:780px;
    margin:0;
    color:#cac0b7;
    font-size:17px;
    line-height:1.72;
}

.sp-parts-page-hero__actions {
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    margin-top:28px;
}

.sp-parts-page-hero__finder {
    padding:24px;
    border:1px solid rgba(198,172,151,.22);
    border-radius:18px;
    background:linear-gradient(145deg,rgba(34,23,16,.91),rgba(20,13,9,.95));
}

.sp-parts-page-hero__finder-head {
    display:flex;
    align-items:center;
    gap:10px;
    padding-bottom:15px;
    border-bottom:1px solid rgba(198,172,151,.14);
}

.sp-parts-page-hero__finder-head strong {
    color:#eef3fa;
    font-size:13px;
}

.sp-parts-page-hero__finder ol {
    list-style:none;
    margin:0;
    padding:10px 0 0;
}

.sp-parts-page-hero__finder li {
    display:grid;
    grid-template-columns:34px minmax(0,1fr);
    gap:12px;
    align-items:center;
    padding:10px 0;
}

.sp-parts-page-hero__finder li span {
    width:30px;height:30px;
    display:grid;place-items:center;
    border:1px solid rgba(255,231,199,.34);
    border-radius:9px;
    color:var(--sp-blue);
    font-size:9px;
    font-weight:900;
}

.sp-parts-page-hero__finder li strong {
    color:#efeae3;
    font-size:12.5px;
}

.sp-parts-page {
    padding:74px 0 78px;
    background:#070e0f;
}

.sp-parts-page__head {
    display:grid;
    grid-template-columns:minmax(0,1.1fr) minmax(340px,.72fr);
    gap:70px;
    align-items:end;
    margin-bottom:36px;
}

.sp-parts-page__head h2,
.sp-parts-page-flow h2 {
    max-width:800px;
    margin:10px 0 0;
    color:#f7f9fc;
    font-size:clamp(38px,3.2vw,56px);
    line-height:1.04;
    letter-spacing:-.04em;
}

.sp-parts-page__head>p,
.sp-parts-page-flow__grid>div>p:last-child {
    margin:0;
    color:#b6a99f;
    font-size:14px;
    line-height:1.72;
}

.sp-parts-page__grid {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:15px;
}

.sp-parts-page-card {
    --parts-page-accent:var(--sp-blue);
    min-height:210px;
    padding:24px;
    border:1px solid rgba(198,172,151,.20);
    border-radius:17px;
    background:linear-gradient(145deg,rgba(34,23,16,.91),rgba(20,13,9,.95));
    transition:transform .25s ease,border-color .25s ease;
}

.sp-parts-page-card--pink { --parts-page-accent:var(--sp-pink); }
.sp-parts-page-card--violet { --parts-page-accent:var(--sp-violet); }

.sp-parts-page-card:hover {
    transform:translateY(-5px);
    border-color:color-mix(in srgb,var(--parts-page-accent) 45%,transparent);
}

.sp-parts-page-card__icon {
    width:42px;height:42px;
    display:grid;place-items:center;
    border:1px solid color-mix(in srgb,var(--parts-page-accent) 55%,transparent);
    border-radius:12px;
    color:var(--parts-page-accent);
    font-size:10px;
    font-weight:900;
}

.sp-parts-page-card h3 {
    margin:23px 0 0;
    color:#f4f7fb;
    font-size:18px;
}

.sp-parts-page-card p {
    margin:10px 0 0;
    color:#afa399;
    font-size:12.5px;
    line-height:1.62;
}

.sp-parts-page-flow {
    padding:70px 0;
    border-top:1px solid rgba(198,172,151,.15);
    border-bottom:1px solid rgba(198,172,151,.15);
    background:#081112;
}

.sp-parts-page-flow__grid {
    display:grid;
    grid-template-columns:minmax(0,.82fr) minmax(500px,1.18fr);
    gap:clamp(55px,7vw,110px);
    align-items:center;
}

.sp-parts-page-flow__steps {
    overflow:hidden;
    border:1px solid rgba(198,172,151,.21);
    border-radius:18px;
    background:linear-gradient(145deg,rgba(34,23,16,.91),rgba(20,13,9,.95));
}

.sp-parts-page-flow__steps article {
    display:grid;
    grid-template-columns:44px minmax(0,1fr);
    gap:15px;
    min-height:96px;
    padding:20px 22px;
    border-bottom:1px solid rgba(198,172,151,.14);
}

.sp-parts-page-flow__steps article:last-child { border-bottom:0; }

.sp-parts-page-flow__steps article>span {
    width:38px;height:38px;
    display:grid;place-items:center;
    border:1px solid rgba(255,231,199,.32);
    border-radius:10px;
    color:var(--sp-blue);
    font-size:10px;
    font-weight:900;
}

.sp-parts-page-flow__steps strong {
    color:#f0f4f9;
    font-size:14px;
}

.sp-parts-page-flow__steps p {
    margin:5px 0 0;
    color:#ad9f93;
    font-size:12px;
    line-height:1.58;
}

.sp-parts-page-cta {
    padding:52px 0 58px;
    background:#060c0d;
}

.sp-parts-page-cta__panel {
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:40px;
    align-items:center;
    padding:31px 34px;
    border:1px solid rgba(198,172,151,.22);
    border-radius:19px;
    background:
        radial-gradient(circle at 12% 50%,rgba(255,231,199,.06),transparent 30%),
        radial-gradient(circle at 90% 50%,rgba(255,22,168,.06),transparent 30%),
        linear-gradient(110deg,rgba(32,21,14,.94),rgba(21,14,10,.96));
}

.sp-parts-page-cta h2 {
    margin:8px 0;
    color:#ffffff;
    font-size:clamp(32px,2.7vw,46px);
    line-height:1.04;
}

.sp-parts-page-cta p:last-child {
    margin:0;
    color:#b5a79c;
    font-size:13px;
}

.sp-parts-page-cta__actions {
    display:flex;
    align-items:center;
    gap:18px;
}

.sp-parts-page-cta__phone {
    display:flex;
    flex-direction:column;
}

.sp-parts-page-cta__phone small { color:#a7998e;font-size:10px; }
.sp-parts-page-cta__phone strong { color:#ffffff;font-size:16px; }

@media(max-width:980px){
    .sp-parts-page-hero__grid,
    .sp-parts-page__head,
    .sp-parts-page-flow__grid,
    .sp-parts-page-cta__panel{grid-template-columns:1fr}
    .sp-parts-page__head{gap:18px}
    .sp-parts-page__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media(max-width:720px){
    .sp-parts-page-hero{padding:56px 0}
    .sp-parts-page-hero h1{font-size:clamp(40px,11vw,50px)}
    .sp-parts-page-hero__lead{font-size:14px}
    .sp-parts-page-hero__actions{flex-direction:column}
    .sp-parts-page-hero__actions .sp-btn{width:100%}
    .sp-parts-page{padding:56px 0 60px}
    .sp-parts-page__grid{grid-template-columns:1fr;gap:12px}
    .sp-parts-page-card{min-height:0;padding:20px}
    .sp-parts-page-flow{padding:56px 0}
    .sp-parts-page-flow__grid{gap:28px}
    .sp-parts-page-flow__steps article{padding:17px}
    .sp-parts-page-cta{padding:42px 0 48px}
    .sp-parts-page-cta__panel{padding:24px 21px}
    .sp-parts-page-cta__actions{flex-direction:column;align-items:stretch}
    .sp-parts-page-cta__actions .sp-btn{width:100%}
    .sp-parts-page-cta__phone{align-items:center}
}


/* =========================================================
   PODSTRONA PLOTTERY — v14
   ========================================================= */

.sp-plotters-page-hero {
    padding:78px 0 76px;
    border-bottom:1px solid rgba(194,170,150,.18);
    background:
        radial-gradient(circle at 14% 28%,rgba(255,231,199,.09),transparent 30%),
        radial-gradient(circle at 90% 65%,rgba(255,22,168,.08),transparent 32%),
        linear-gradient(110deg,#081112 0%,#081112 52%,#091213 100%);
}

.sp-plotters-page-hero__grid {
    display:grid;
    grid-template-columns:minmax(0,1.18fr) minmax(330px,.62fr);
    gap:clamp(50px,7vw,110px);
    align-items:center;
}

.sp-plotters-page-hero h1 {
    max-width:900px;
    margin:10px 0 20px;
    color:#ffffff;
    font-size:clamp(46px,4.5vw,72px);
    line-height:1.01;
    letter-spacing:-.045em;
}

.sp-plotters-page-hero__lead {
    max-width:800px;
    margin:0;
    color:#cac0b7;
    font-size:17px;
    line-height:1.72;
}

.sp-plotters-page-hero__actions {
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    margin-top:28px;
}

.sp-plotters-page-hero__panel {
    padding:24px;
    border:1px solid rgba(198,172,151,.22);
    border-radius:18px;
    background:linear-gradient(145deg,rgba(34,23,16,.91),rgba(20,13,9,.95));
}

.sp-plotters-page-hero__panel-head {
    display:flex;
    align-items:center;
    gap:10px;
    padding-bottom:15px;
    border-bottom:1px solid rgba(198,172,151,.14);
    color:#eef3fa;
    font-size:13px;
}

.sp-plotters-page-hero__steps article {
    display:grid;
    grid-template-columns:36px minmax(0,1fr);
    gap:12px;
    padding:15px 0;
    border-bottom:1px solid rgba(198,172,151,.12);
}

.sp-plotters-page-hero__steps article:last-child { border-bottom:0; }

.sp-plotters-page-hero__steps article>span {
    width:32px;height:32px;
    display:grid;place-items:center;
    border:1px solid rgba(255,231,199,.34);
    border-radius:9px;
    color:var(--sp-blue);
    font-size:9px;font-weight:900;
}

.sp-plotters-page-hero__steps strong { color:#edf2f8;font-size:13px; }
.sp-plotters-page-hero__steps p { margin:4px 0 0;color:#aa9d92;font-size:11.5px;line-height:1.5; }

.sp-plotters-page {
    padding:74px 0 78px;
    background:#070e0f;
}

.sp-plotters-page__head {
    display:grid;
    grid-template-columns:minmax(0,1.1fr) minmax(340px,.72fr);
    gap:70px;
    align-items:end;
    margin-bottom:36px;
}

.sp-plotters-page__head h2,
.sp-plotters-page-guide h2 {
    max-width:800px;
    margin:10px 0 0;
    color:#f7f9fc;
    font-size:clamp(38px,3.2vw,56px);
    line-height:1.04;
    letter-spacing:-.04em;
}

.sp-plotters-page__head>p,
.sp-plotters-page-guide__grid>div>p:last-child {
    margin:0;
    color:#b6a99f;
    font-size:14px;
    line-height:1.72;
}

.sp-plotters-page__grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:15px;
}

.sp-plotters-page-card {
    --plotter-accent:var(--sp-blue);
    min-height:250px;
    padding:26px;
    border:1px solid rgba(198,172,151,.20);
    border-radius:17px;
    background:linear-gradient(145deg,rgba(34,23,16,.91),rgba(20,13,9,.95));
    display:flex;
    flex-direction:column;
    transition:transform .25s ease,border-color .25s ease;
}

.sp-plotters-page-card--pink { --plotter-accent:var(--sp-pink); }
.sp-plotters-page-card--violet { --plotter-accent:var(--sp-violet); }

.sp-plotters-page-card:hover {
    transform:translateY(-5px);
    border-color:color-mix(in srgb,var(--plotter-accent) 45%,transparent);
}

.sp-plotters-page-card__tag {
    color:var(--plotter-accent);
    font-size:10px;
    font-weight:900;
    letter-spacing:.14em;
}

.sp-plotters-page-card h3 {
    margin:25px 0 0;
    color:#f4f7fb;
    font-size:23px;
    letter-spacing:-.02em;
}

.sp-plotters-page-card p {
    margin:10px 0 0;
    color:#afa399;
    font-size:13px;
    line-height:1.65;
    max-width:540px;
}

.sp-plotters-page-card a {
    margin-top:auto;
    padding-top:24px;
    color:#f4f7fb !important;
    font-size:12.5px;
    font-weight:800;
}

.sp-plotters-page-card a span {
    margin-left:8px;
    color:var(--plotter-accent);
}

.sp-plotters-page-guide {
    padding:70px 0;
    border-top:1px solid rgba(198,172,151,.15);
    border-bottom:1px solid rgba(198,172,151,.15);
    background:#081112;
}

.sp-plotters-page-guide__grid {
    display:grid;
    grid-template-columns:minmax(0,.82fr) minmax(500px,1.18fr);
    gap:clamp(55px,7vw,110px);
    align-items:center;
}

.sp-plotters-page-guide__panel {
    overflow:hidden;
    border:1px solid rgba(198,172,151,.21);
    border-radius:18px;
    background:linear-gradient(145deg,rgba(34,23,16,.91),rgba(20,13,9,.95));
}

.sp-plotters-page-guide__panel article {
    display:grid;
    grid-template-columns:44px minmax(0,1fr);
    gap:15px;
    min-height:91px;
    padding:19px 22px;
    border-bottom:1px solid rgba(198,172,151,.14);
}

.sp-plotters-page-guide__panel article:last-child { border-bottom:0; }

.sp-plotters-page-guide__panel article>span {
    width:38px;height:38px;
    display:grid;place-items:center;
    border:1px solid rgba(255,231,199,.32);
    border-radius:10px;
    color:var(--sp-blue);
    font-size:10px;
    font-weight:900;
}

.sp-plotters-page-guide__panel strong { color:#f0f4f9;font-size:14px; }
.sp-plotters-page-guide__panel p { margin:5px 0 0;color:#ad9f93;font-size:12px;line-height:1.58; }

.sp-plotters-page-info {
    padding:58px 0;
    background:#070e0f;
}

.sp-plotters-page-info__grid {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:15px;
}

.sp-plotters-page-info__box {
    min-height:210px;
    padding:26px;
    border:1px solid rgba(198,172,151,.20);
    border-radius:17px;
    background:linear-gradient(145deg,rgba(34,23,16,.91),rgba(20,13,9,.95));
}

.sp-plotters-page-info__box--pink {
    background:
        radial-gradient(circle at 88% 50%,rgba(255,22,168,.08),transparent 34%),
        linear-gradient(145deg,rgba(34,23,16,.91),rgba(20,13,9,.95));
}

.sp-plotters-page-info__box h3 {
    margin:10px 0 0;
    color:#f5f8fc;
    font-size:24px;
    line-height:1.12;
    letter-spacing:-.025em;
}

.sp-plotters-page-info__box p:last-child {
    margin:12px 0 0;
    color:#afa399;
    font-size:13px;
    line-height:1.65;
}

.sp-plotters-page-cta {
    padding:52px 0 58px;
    background:#060c0d;
}

.sp-plotters-page-cta__panel {
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:40px;
    align-items:center;
    padding:31px 34px;
    border:1px solid rgba(198,172,151,.22);
    border-radius:19px;
    background:
        radial-gradient(circle at 12% 50%,rgba(255,231,199,.06),transparent 30%),
        radial-gradient(circle at 90% 50%,rgba(255,22,168,.06),transparent 30%),
        linear-gradient(110deg,rgba(32,21,14,.94),rgba(21,14,10,.96));
}

.sp-plotters-page-cta h2 {
    margin:8px 0;
    color:#ffffff;
    font-size:clamp(32px,2.7vw,46px);
    line-height:1.04;
}

.sp-plotters-page-cta p:last-child {
    margin:0;
    color:#b5a79c;
    font-size:13px;
}

.sp-plotters-page-cta__actions {
    display:flex;
    align-items:center;
    gap:18px;
}

.sp-plotters-page-cta__phone {
    display:flex;
    flex-direction:column;
}

.sp-plotters-page-cta__phone small { color:#a7998e;font-size:10px; }
.sp-plotters-page-cta__phone strong { color:#ffffff;font-size:16px; }

@media(max-width:980px){
    .sp-plotters-page-hero__grid,
    .sp-plotters-page__head,
    .sp-plotters-page-guide__grid,
    .sp-plotters-page-cta__panel{grid-template-columns:1fr}
    .sp-plotters-page__head{gap:18px}
}

@media(max-width:720px){
    .sp-plotters-page-hero{padding:56px 0}
    .sp-plotters-page-hero h1{font-size:clamp(40px,11vw,50px)}
    .sp-plotters-page-hero__lead{font-size:14px}
    .sp-plotters-page-hero__actions{flex-direction:column}
    .sp-plotters-page-hero__actions .sp-btn{width:100%}
    .sp-plotters-page{padding:56px 0 60px}
    .sp-plotters-page__grid{grid-template-columns:1fr;gap:12px}
    .sp-plotters-page-card{min-height:0;padding:21px}
    .sp-plotters-page-guide{padding:56px 0}
    .sp-plotters-page-guide__grid{gap:28px}
    .sp-plotters-page-guide__panel article{padding:17px}
    .sp-plotters-page-info{padding:48px 0}
    .sp-plotters-page-info__grid{grid-template-columns:1fr;gap:12px}
    .sp-plotters-page-info__box{min-height:0;padding:21px}
    .sp-plotters-page-cta{padding:42px 0 48px}
    .sp-plotters-page-cta__panel{padding:24px 21px}
    .sp-plotters-page-cta__actions{flex-direction:column;align-items:stretch}
    .sp-plotters-page-cta__actions .sp-btn{width:100%}
    .sp-plotters-page-cta__phone{align-items:center}
}


/* =========================================================
   PODSTRONA O NAS — v15
   ========================================================= */

.sp-about-page-hero {
    padding:78px 0 76px;
    border-bottom:1px solid rgba(194,170,150,.18);
    background:
        radial-gradient(circle at 14% 28%,rgba(255,231,199,.09),transparent 30%),
        radial-gradient(circle at 90% 65%,rgba(255,22,168,.08),transparent 32%),
        linear-gradient(110deg,#081112 0%,#081112 52%,#091213 100%);
}

.sp-about-page-hero__grid {
    display:grid;
    grid-template-columns:minmax(0,1.14fr) minmax(360px,.66fr);
    gap:clamp(54px,7vw,110px);
    align-items:center;
}

.sp-about-page-hero h1 {
    max-width:920px;
    margin:10px 0 20px;
    color:#ffffff;
    font-size:clamp(46px,4.4vw,70px);
    line-height:1.01;
    letter-spacing:-.045em;
}

.sp-about-page-hero__lead {
    max-width:810px;
    margin:0;
    color:#cac0b7;
    font-size:17px;
    line-height:1.72;
}

.sp-about-page-hero__actions {
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    margin-top:28px;
}

.sp-about-page-hero__facts {
    display:grid;
    gap:12px;
}

.sp-about-page-hero__facts article {
    min-height:112px;
    display:grid;
    grid-template-columns:82px minmax(0,1fr);
    gap:18px;
    align-items:center;
    padding:20px 22px;
    border:1px solid rgba(198,172,151,.20);
    border-radius:15px;
    background:linear-gradient(145deg,rgba(34,23,16,.91),rgba(20,13,9,.95));
}

.sp-about-page-hero__facts span {
    color:var(--sp-blue);
    font-size:26px;
    font-weight:900;
    letter-spacing:-.03em;
}

.sp-about-page-hero__facts strong {
    color:#edf2f8;
    font-size:13px;
    line-height:1.45;
}

.sp-about-page {
    padding:74px 0 78px;
    background:#070e0f;
}

.sp-about-page__grid {
    display:grid;
    grid-template-columns:minmax(0,.86fr) minmax(500px,1.14fr);
    gap:clamp(55px,7vw,110px);
    align-items:start;
}

.sp-about-page__content h2,
.sp-about-page-network__head h2,
.sp-about-page-locations h2 {
    margin:10px 0 22px;
    color:#f7f9fc;
    font-size:clamp(38px,3.2vw,56px);
    line-height:1.04;
    letter-spacing:-.04em;
}

.sp-about-page__content > p:not(.sp-section-kicker),
.sp-about-page-locations__grid>div>p:last-child {
    margin:0 0 16px;
    color:#b6a99f;
    font-size:14px;
    line-height:1.72;
}

.sp-about-page__principles {
    overflow:hidden;
    border:1px solid rgba(198,172,151,.21);
    border-radius:18px;
    background:linear-gradient(145deg,rgba(34,23,16,.91),rgba(20,13,9,.95));
}

.sp-about-page__principles article {
    display:grid;
    grid-template-columns:44px minmax(0,1fr);
    gap:15px;
    min-height:106px;
    padding:20px 22px;
    border-bottom:1px solid rgba(198,172,151,.14);
}

.sp-about-page__principles article:last-child { border-bottom:0; }

.sp-about-page__principles article>span {
    width:38px;
    height:38px;
    display:grid;
    place-items:center;
    border:1px solid rgba(255,231,199,.32);
    border-radius:10px;
    color:var(--sp-blue);
    font-size:10px;
    font-weight:900;
}

.sp-about-page__principles strong {
    color:#f0f4f9;
    font-size:14px;
}

.sp-about-page__principles p {
    margin:5px 0 0;
    color:#ad9f93;
    font-size:12px;
    line-height:1.58;
}

.sp-about-page-network {
    padding:70px 0 74px;
    border-top:1px solid rgba(198,172,151,.15);
    border-bottom:1px solid rgba(198,172,151,.15);
    background:#081112;
}

.sp-about-page-network__head {
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(340px,.7fr);
    gap:70px;
    align-items:end;
    margin-bottom:34px;
}

.sp-about-page-network__head>p {
    margin:0;
    color:#b6a99f;
    font-size:14px;
    line-height:1.72;
}

.sp-about-page-network__grid {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:15px;
}

.sp-about-page-network__grid a {
    position:relative;
    min-height:230px;
    display:flex;
    flex-direction:column;
    padding:24px;
    border:1px solid rgba(198,172,151,.20);
    border-radius:17px;
    background:linear-gradient(145deg,rgba(34,23,16,.91),rgba(20,13,9,.95));
    transition:transform .25s ease,border-color .25s ease;
}

.sp-about-page-network__grid a:hover {
    transform:translateY(-5px);
    border-color:rgba(255,231,199,.38);
}

.sp-about-page-network__grid span {
    color:var(--sp-blue);
    font-size:10px;
    font-weight:900;
    letter-spacing:.13em;
}

.sp-about-page-network__grid strong {
    margin-top:22px;
    color:#f4f7fb;
    font-size:20px;
}

.sp-about-page-network__grid p {
    margin:10px 0 0;
    color:#afa399;
    font-size:12.5px;
    line-height:1.62;
}

.sp-about-page-network__grid em {
    margin-top:auto;
    padding-top:18px;
    color:var(--sp-pink);
    font-size:18px;
    font-style:normal;
}

.sp-about-page-locations {
    padding:64px 0 68px;
    background:#070e0f;
}

.sp-about-page-locations__grid {
    display:grid;
    grid-template-columns:minmax(0,.78fr) minmax(480px,1.22fr);
    gap:clamp(55px,7vw,100px);
    align-items:center;
}

.sp-about-page-locations__cards {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:15px;
}

.sp-about-page-locations__cards article {
    padding:24px;
    border:1px solid rgba(198,172,151,.20);
    border-radius:16px;
    background:linear-gradient(145deg,rgba(34,23,16,.91),rgba(20,13,9,.95));
}

.sp-about-page-locations__cards span {
    color:var(--sp-blue);
    font-size:9px;
    font-weight:900;
    letter-spacing:.14em;
}

.sp-about-page-locations__cards strong {
    display:block;
    margin-top:18px;
    color:#f0f4f9;
    font-size:17px;
}

.sp-about-page-locations__cards p {
    margin:5px 0 0;
    color:#ad9f93;
    font-size:12px;
}

.sp-about-page-cta {
    padding:52px 0 58px;
    background:#060c0d;
}

.sp-about-page-cta__panel {
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:40px;
    align-items:center;
    padding:31px 34px;
    border:1px solid rgba(198,172,151,.22);
    border-radius:19px;
    background:
        radial-gradient(circle at 12% 50%,rgba(255,231,199,.06),transparent 30%),
        radial-gradient(circle at 90% 50%,rgba(255,22,168,.06),transparent 30%),
        linear-gradient(110deg,rgba(32,21,14,.94),rgba(21,14,10,.96));
}

.sp-about-page-cta h2 {
    margin:8px 0;
    color:#ffffff;
    font-size:clamp(32px,2.7vw,46px);
    line-height:1.04;
}

.sp-about-page-cta p:last-child {
    margin:0;
    color:#b5a79c;
    font-size:13px;
}

.sp-about-page-cta__actions {
    display:flex;
    align-items:center;
    gap:18px;
}

.sp-about-page-cta__phone {
    display:flex;
    flex-direction:column;
}

.sp-about-page-cta__phone small { color:#a7998e;font-size:10px; }
.sp-about-page-cta__phone strong { color:#ffffff;font-size:16px; }

@media(max-width:980px){
    .sp-about-page-hero__grid,
    .sp-about-page__grid,
    .sp-about-page-network__head,
    .sp-about-page-locations__grid,
    .sp-about-page-cta__panel{grid-template-columns:1fr}
    .sp-about-page-network__head{gap:18px}
    .sp-about-page-network__grid{grid-template-columns:1fr 1fr}
}

@media(max-width:720px){
    .sp-about-page-hero{padding:56px 0}
    .sp-about-page-hero h1{font-size:clamp(40px,11vw,50px)}
    .sp-about-page-hero__lead{font-size:14px}
    .sp-about-page-hero__actions{flex-direction:column}
    .sp-about-page-hero__actions .sp-btn{width:100%}
    .sp-about-page-hero__facts article{min-height:0;padding:17px 18px}
    .sp-about-page{padding:56px 0 60px}
    .sp-about-page__grid{gap:28px}
    .sp-about-page__principles article{padding:17px}
    .sp-about-page-network{padding:56px 0}
    .sp-about-page-network__grid{grid-template-columns:1fr;gap:12px}
    .sp-about-page-network__grid a{min-height:0;padding:21px}
    .sp-about-page-locations{padding:52px 0}
    .sp-about-page-locations__cards{grid-template-columns:1fr;gap:12px}
    .sp-about-page-cta{padding:42px 0 48px}
    .sp-about-page-cta__panel{padding:24px 21px}
    .sp-about-page-cta__actions{flex-direction:column;align-items:stretch}
    .sp-about-page-cta__actions .sp-btn{width:100%}
    .sp-about-page-cta__phone{align-items:center}
}


/* =========================================================
   PODSTRONA KONTAKT — v16
   ========================================================= */

.sp-contact-page-hero {
    padding:78px 0 76px;
    border-bottom:1px solid rgba(194,170,150,.18);
    background:
        radial-gradient(circle at 14% 28%,rgba(255,231,199,.09),transparent 30%),
        radial-gradient(circle at 90% 65%,rgba(255,22,168,.08),transparent 32%),
        linear-gradient(110deg,#081112 0%,#081112 52%,#091213 100%);
}

.sp-contact-page-hero__grid {
    display:grid;
    grid-template-columns:minmax(0,1.14fr) minmax(350px,.66fr);
    gap:clamp(54px,7vw,110px);
    align-items:center;
}

.sp-contact-page-hero h1 {
    max-width:900px;
    margin:10px 0 20px;
    color:#ffffff;
    font-size:clamp(46px,4.4vw,70px);
    line-height:1.01;
    letter-spacing:-.045em;
}

.sp-contact-page-hero__lead {
    max-width:790px;
    margin:0;
    color:#cac0b7;
    font-size:17px;
    line-height:1.72;
}

.sp-contact-page-hero__actions {
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    margin-top:28px;
}

.sp-contact-page-hero__quick {
    overflow:hidden;
    border:1px solid rgba(198,172,151,.21);
    border-radius:18px;
    background:linear-gradient(145deg,rgba(34,23,16,.91),rgba(20,13,9,.95));
}

.sp-contact-page-hero__quick article {
    display:flex;
    flex-direction:column;
    gap:4px;
    padding:20px 22px;
    border-bottom:1px solid rgba(198,172,151,.14);
}

.sp-contact-page-hero__quick article:last-child { border-bottom:0; }
.sp-contact-page-hero__quick span { color:#9f9084;font-size:9px;font-weight:900;letter-spacing:.14em; }
.sp-contact-page-hero__quick a { color:#f2f6fb !important;font-size:15px;font-weight:800; }
.sp-contact-page-hero__quick a:hover { color:var(--sp-blue) !important; }

.sp-contact-page {
    padding:70px 0 78px;
    background:#070e0f;
}

.sp-contact-page__layout {
    display:grid;
    grid-template-columns:minmax(0,1.18fr) minmax(340px,.72fr);
    gap:24px;
    align-items:start;
}

.sp-contact-page__form-panel,
.sp-contact-page__aside {
    border:1px solid rgba(198,172,151,.21);
    border-radius:20px;
    background:linear-gradient(145deg,rgba(34,23,16,.94),rgba(19,13,9,.97));
    box-shadow:0 28px 80px rgba(0,0,0,.24);
}

.sp-contact-page__form-panel { overflow:hidden; }

.sp-contact-page__panel-head {
    min-height:58px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    padding:0 24px;
    border-bottom:1px solid rgba(198,172,151,.16);
}

.sp-contact-page__panel-head>div { display:flex;align-items:center;gap:10px; }
.sp-contact-page__panel-head strong { color:#eef3fa;font-size:13px; }
.sp-contact-page__panel-head>span { color:#8f8074;font-size:9px;font-weight:850;letter-spacing:.15em; }

.sp-contact-form {
    padding:26px 26px 0;
}

.sp-contact-page__aside {
    position:sticky;
    top:24px;
    padding:29px 27px 27px;
}

.sp-contact-page__aside h2 {
    margin:9px 0 24px;
    color:#f7f9fc;
    font-size:30px;
    line-height:1.08;
    letter-spacing:-.035em;
}

.sp-contact-page__location {
    padding:20px 0;
    border-top:1px solid rgba(198,172,151,.14);
}

.sp-contact-page__location span {
    color:var(--sp-blue);
    font-size:9px;
    font-weight:900;
    letter-spacing:.14em;
}

.sp-contact-page__location--pink span { color:var(--sp-pink); }

.sp-contact-page__location strong {
    display:block;
    margin-top:12px;
    color:#f0f4f9;
    font-size:17px;
}

.sp-contact-page__location p {
    margin:4px 0 10px;
    color:#b0a297;
    font-size:12.5px;
}

.sp-contact-page__location a {
    color:#f2ede7 !important;
    font-size:11.5px;
    font-weight:800;
}

.sp-contact-page__direct {
    display:grid;
    gap:4px;
    margin-top:14px;
    padding:17px 18px;
    border:1px solid rgba(198,172,151,.16);
    border-radius:12px;
    background:rgba(18,11,7,.48);
}

.sp-contact-page__direct span {
    margin-top:8px;
    color:#9a8c81;
    font-size:9px;
    font-weight:900;
    letter-spacing:.12em;
}

.sp-contact-page__direct span:first-child { margin-top:0; }
.sp-contact-page__direct a { color:#f0f4f9 !important;font-size:14px;font-weight:800; }

.sp-contact-page-service {
    padding:48px 0 56px;
    background:#060c0d;
}

.sp-contact-page-service__panel {
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:40px;
    align-items:center;
    padding:30px 33px;
    border:1px solid rgba(198,172,151,.22);
    border-radius:19px;
    background:
        radial-gradient(circle at 12% 50%,rgba(255,231,199,.06),transparent 30%),
        radial-gradient(circle at 90% 50%,rgba(255,22,168,.06),transparent 30%),
        linear-gradient(110deg,rgba(32,21,14,.94),rgba(21,14,10,.96));
}

.sp-contact-page-service h2 {
    margin:8px 0;
    color:#ffffff;
    font-size:clamp(31px,2.6vw,45px);
    line-height:1.04;
}

.sp-contact-page-service p:last-child {
    margin:0;
    color:#b5a79c;
    font-size:13px;
}

@media(max-width:980px){
    .sp-contact-page-hero__grid,
    .sp-contact-page__layout,
    .sp-contact-page-service__panel {
        grid-template-columns:1fr;
    }
    .sp-contact-page__aside { position:static; }
}

@media(max-width:720px){
    .sp-contact-page-hero { padding:56px 0; }
    .sp-contact-page-hero h1 { font-size:clamp(40px,11vw,50px); }
    .sp-contact-page-hero__lead { font-size:14px; }
    .sp-contact-page-hero__actions { flex-direction:column; }
    .sp-contact-page-hero__actions .sp-btn { width:100%; }
    .sp-contact-page { padding:48px 0 58px; }
    .sp-contact-page__layout { gap:16px; }
    .sp-contact-page__panel-head { padding-inline:18px; }
    .sp-contact-page__panel-head>span { display:none; }
    .sp-contact-form { padding:20px 18px 0; }
    .sp-contact-page__aside { padding:24px 21px; }
    .sp-contact-page-service { padding:40px 0 46px; }
    .sp-contact-page-service__panel { padding:24px 21px; }
    .sp-contact-page-service__panel .sp-btn { width:100%; }
}


/* =========================================================
   DANE KONTAKTOWE — aktualizacja v16.1
   ========================================================= */

.sp-contact-page-hero__quick small {
    color:#a8998d;
    font-size:11px;
    line-height:1.45;
}

.sp-contact-page__direct strong {
    color:#eef3fa;
    font-size:13px;
}

.sp-contact-page__direct small {
    color:#ac9e92;
    font-size:11px;
}

.sp-contact-page__direct a + a {
    margin-top:1px;
}

@media(max-width:720px){
    .sp-topbar__hours span:last-child {
        font-size:10px;
    }
}


/* =========================================================
   PODSTRONA DLA FIRM — v17
   ========================================================= */

.sp-business-page-hero {
    padding:78px 0 76px;
    border-bottom:1px solid rgba(194,170,150,.18);
    background:
        radial-gradient(circle at 14% 28%,rgba(255,231,199,.09),transparent 30%),
        radial-gradient(circle at 90% 65%,rgba(255,22,168,.08),transparent 32%),
        linear-gradient(110deg,#081112 0%,#081112 52%,#091213 100%);
}

.sp-business-page-hero__grid {
    display:grid;
    grid-template-columns:minmax(0,1.16fr) minmax(340px,.64fr);
    gap:clamp(54px,7vw,110px);
    align-items:center;
}

.sp-business-page-hero h1 {
    max-width:920px;
    margin:10px 0 20px;
    color:#ffffff;
    font-size:clamp(46px,4.4vw,70px);
    line-height:1.01;
    letter-spacing:-.045em;
}

.sp-business-page-hero__lead {
    max-width:790px;
    margin:0;
    color:#cac0b7;
    font-size:17px;
    line-height:1.72;
}

.sp-business-page-hero__actions {
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    margin-top:28px;
}

.sp-business-page-hero__panel {
    padding:24px;
    border:1px solid rgba(198,172,151,.22);
    border-radius:18px;
    background:linear-gradient(145deg,rgba(34,23,16,.91),rgba(20,13,9,.95));
}

.sp-business-page-hero__panel-head {
    display:flex;
    align-items:center;
    gap:10px;
    padding-bottom:15px;
    border-bottom:1px solid rgba(198,172,151,.14);
}

.sp-business-page-hero__panel-head strong {
    color:#eef3fa;
    font-size:13px;
}

.sp-business-page-hero__panel ul {
    list-style:none;
    margin:10px 0 0;
    padding:0;
}

.sp-business-page-hero__panel li {
    position:relative;
    padding:8px 0 8px 17px;
    color:#bbaea3;
    font-size:13px;
}

.sp-business-page-hero__panel li::before {
    content:"";
    position:absolute;
    left:0;
    top:15px;
    width:5px;
    height:5px;
    border-radius:50%;
    background:var(--sp-blue);
    box-shadow:0 0 10px rgba(255,231,199,.55);
}

.sp-business-page {
    padding:74px 0 78px;
    background:#070e0f;
}

.sp-business-page__head,
.sp-business-support__head {
    display:grid;
    grid-template-columns:minmax(0,1.1fr) minmax(340px,.72fr);
    gap:70px;
    align-items:end;
    margin-bottom:36px;
}

.sp-business-page__head h2,
.sp-business-process h2,
.sp-business-support__head h2,
.sp-business-contact h2 {
    max-width:850px;
    margin:10px 0 0;
    color:#f7f9fc;
    font-size:clamp(38px,3.2vw,56px);
    line-height:1.04;
    letter-spacing:-.04em;
}

.sp-business-page__head>p,
.sp-business-support__head>p,
.sp-business-process__grid>div>p:last-child,
.sp-business-contact__grid>div>p:last-child {
    margin:0;
    color:#b6a99f;
    font-size:14px;
    line-height:1.72;
}

.sp-business-page__grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:15px;
}

.sp-business-card {
    --business-accent:var(--sp-blue);
    min-height:230px;
    padding:25px;
    border:1px solid rgba(198,172,151,.20);
    border-radius:17px;
    background:linear-gradient(145deg,rgba(34,23,16,.91),rgba(20,13,9,.95));
    transition:transform .25s ease,border-color .25s ease;
}

.sp-business-card--pink { --business-accent:var(--sp-pink); }
.sp-business-card--violet { --business-accent:var(--sp-violet); }

.sp-business-card:hover {
    transform:translateY(-5px);
    border-color:color-mix(in srgb,var(--business-accent) 45%,transparent);
}

.sp-business-card>span {
    width:42px;
    height:42px;
    display:grid;
    place-items:center;
    border:1px solid color-mix(in srgb,var(--business-accent) 55%,transparent);
    border-radius:12px;
    color:var(--business-accent);
    font-size:10px;
    font-weight:900;
}

.sp-business-card h3 {
    margin:23px 0 0;
    color:#f4f7fb;
    font-size:20px;
}

.sp-business-card p {
    margin:10px 0 0;
    color:#afa399;
    font-size:12.5px;
    line-height:1.62;
}

.sp-business-process {
    padding:70px 0;
    border-top:1px solid rgba(198,172,151,.15);
    border-bottom:1px solid rgba(198,172,151,.15);
    background:#081112;
}

.sp-business-process__grid {
    display:grid;
    grid-template-columns:minmax(0,.82fr) minmax(500px,1.18fr);
    gap:clamp(55px,7vw,110px);
    align-items:center;
}

.sp-business-process__steps {
    overflow:hidden;
    border:1px solid rgba(198,172,151,.21);
    border-radius:18px;
    background:linear-gradient(145deg,rgba(34,23,16,.91),rgba(20,13,9,.95));
}

.sp-business-process__steps article {
    display:grid;
    grid-template-columns:44px minmax(0,1fr);
    gap:15px;
    min-height:92px;
    padding:19px 22px;
    border-bottom:1px solid rgba(198,172,151,.14);
}

.sp-business-process__steps article:last-child { border-bottom:0; }

.sp-business-process__steps article>span {
    width:38px;height:38px;
    display:grid;place-items:center;
    border:1px solid rgba(255,231,199,.32);
    border-radius:10px;
    color:var(--sp-blue);
    font-size:10px;
    font-weight:900;
}

.sp-business-process__steps strong {
    color:#f0f4f9;
    font-size:14px;
}

.sp-business-process__steps p {
    margin:5px 0 0;
    color:#ad9f93;
    font-size:12px;
    line-height:1.58;
}

.sp-business-support {
    padding:70px 0 74px;
    background:#070e0f;
}

.sp-business-support__grid {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:14px;
}

.sp-business-support__grid a {
    min-height:220px;
    display:flex;
    flex-direction:column;
    padding:23px;
    border:1px solid rgba(198,172,151,.20);
    border-radius:17px;
    background:linear-gradient(145deg,rgba(34,23,16,.91),rgba(20,13,9,.95));
    transition:transform .25s ease,border-color .25s ease;
}

.sp-business-support__grid a:hover {
    transform:translateY(-5px);
    border-color:rgba(255,231,199,.38);
}

.sp-business-support__grid span {
    color:var(--sp-blue);
    font-size:9px;
    font-weight:900;
    letter-spacing:.13em;
}

.sp-business-support__grid strong {
    margin-top:21px;
    color:#f4f7fb;
    font-size:18px;
}

.sp-business-support__grid p {
    margin:9px 0 0;
    color:#afa399;
    font-size:12px;
    line-height:1.6;
}

.sp-business-support__grid em {
    margin-top:auto;
    padding-top:16px;
    color:var(--sp-pink);
    font-size:18px;
    font-style:normal;
}

.sp-business-contact {
    padding:60px 0 66px;
    border-top:1px solid rgba(198,172,151,.15);
    background:#060c0d;
}

.sp-business-contact__grid {
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(360px,.64fr);
    gap:clamp(50px,7vw,100px);
    align-items:center;
}

.sp-business-contact__box {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:14px;
    padding:24px;
    border:1px solid rgba(198,172,151,.21);
    border-radius:18px;
    background:linear-gradient(145deg,rgba(34,23,16,.91),rgba(20,13,9,.95));
}

.sp-business-contact__box>div {
    display:flex;
    flex-direction:column;
    gap:5px;
}

.sp-business-contact__box span {
    color:#9b8c80;
    font-size:9px;
    font-weight:900;
    letter-spacing:.13em;
}

.sp-business-contact__box a:not(.sp-btn) {
    color:#f1f5fa !important;
    font-size:14px;
    font-weight:800;
}

.sp-business-contact__box .sp-btn {
    grid-column:1/-1;
    width:100%;
    margin-top:4px;
}

@media(max-width:980px){
    .sp-business-page-hero__grid,
    .sp-business-page__head,
    .sp-business-process__grid,
    .sp-business-support__head,
    .sp-business-contact__grid {
        grid-template-columns:1fr;
    }
    .sp-business-page__head,
    .sp-business-support__head { gap:18px; }
    .sp-business-support__grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

@media(max-width:720px){
    .sp-business-page-hero { padding:56px 0; }
    .sp-business-page-hero h1 { font-size:clamp(40px,11vw,50px); }
    .sp-business-page-hero__lead { font-size:14px; }
    .sp-business-page-hero__actions { flex-direction:column; }
    .sp-business-page-hero__actions .sp-btn { width:100%; }

    .sp-business-page { padding:56px 0 60px; }
    .sp-business-page__grid { grid-template-columns:1fr;gap:12px; }
    .sp-business-card { min-height:0;padding:20px; }

    .sp-business-process { padding:56px 0; }
    .sp-business-process__grid { gap:28px; }
    .sp-business-process__steps article { padding:17px; }

    .sp-business-support { padding:56px 0; }
    .sp-business-support__grid { grid-template-columns:1fr;gap:12px; }
    .sp-business-support__grid a { min-height:0;padding:21px; }

    .sp-business-contact { padding:48px 0 54px; }
    .sp-business-contact__grid { gap:28px; }
    .sp-business-contact__box { grid-template-columns:1fr; }
    .sp-business-contact__box .sp-btn { grid-column:auto; }
}


/* =========================================================
   BAZA WIEDZY + WPISY — v18
   ========================================================= */

.sp-knowledge-hero {
    padding:78px 0 76px;
    border-bottom:1px solid rgba(194,170,150,.18);
    background:
        radial-gradient(circle at 14% 28%,rgba(255,231,199,.09),transparent 30%),
        radial-gradient(circle at 90% 65%,rgba(255,22,168,.08),transparent 32%),
        linear-gradient(110deg,#081112 0%,#081112 52%,#091213 100%);
}

.sp-knowledge-hero__grid {
    display:grid;
    grid-template-columns:minmax(0,1.18fr) minmax(350px,.62fr);
    gap:clamp(54px,7vw,110px);
    align-items:center;
}

.sp-knowledge-hero h1 {
    max-width:940px;
    margin:10px 0 20px;
    color:#ffffff;
    font-size:clamp(46px,4.4vw,70px);
    line-height:1.01;
    letter-spacing:-.045em;
}

.sp-knowledge-hero__lead {
    max-width:800px;
    margin:0;
    color:#cac0b7;
    font-size:17px;
    line-height:1.72;
}

.sp-knowledge-hero__panel {
    padding:24px;
    border:1px solid rgba(198,172,151,.22);
    border-radius:18px;
    background:linear-gradient(145deg,rgba(34,23,16,.91),rgba(20,13,9,.95));
}

.sp-knowledge-hero__panel>strong {
    color:#edf2f8;
    font-size:14px;
}

.sp-knowledge-hero__panel>small {
    display:block;
    margin-top:10px;
    color:#9f9084;
    font-size:10.5px;
}

.sp-knowledge-search {
    display:flex;
    gap:8px;
    margin-top:15px;
}

.sp-knowledge-search input {
    min-width:0;
    flex:1;
    min-height:48px;
    padding:0 14px;
    border:1px solid rgba(198,172,151,.24);
    border-radius:10px;
    outline:0;
    background:rgba(18,11,7,.72);
    color:#f4f7fb;
    font:inherit;
    font-size:13px;
}

.sp-knowledge-search input:focus {
    border-color:rgba(255,231,199,.58);
    box-shadow:0 0 0 3px rgba(255,231,199,.07);
}

.sp-knowledge-search button {
    min-height:48px;
    padding:0 17px;
    border:0;
    border-radius:10px;
    background:linear-gradient(100deg,var(--sp-blue),var(--sp-violet),var(--sp-pink));
    color:#ffffff;
    font-size:12px;
    font-weight:850;
    cursor:pointer;
}

.sp-knowledge-topics {
    padding:72px 0 76px;
    background:#070e0f;
}

.sp-knowledge-topics__head {
    display:grid;
    grid-template-columns:minmax(0,1.1fr) minmax(340px,.72fr);
    gap:70px;
    align-items:end;
    margin-bottom:34px;
}

.sp-knowledge-topics__head h2,
.sp-knowledge-posts__head h2 {
    max-width:830px;
    margin:10px 0 0;
    color:#f7f9fc;
    font-size:clamp(38px,3.2vw,56px);
    line-height:1.04;
    letter-spacing:-.04em;
}

.sp-knowledge-topics__head>p {
    margin:0;
    color:#b6a99f;
    font-size:14px;
    line-height:1.72;
}

.sp-knowledge-topics__grid {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:14px;
}

.sp-knowledge-topic {
    --knowledge-accent:var(--sp-blue);
    min-height:210px;
    padding:23px;
    border:1px solid rgba(198,172,151,.20);
    border-radius:17px;
    background:linear-gradient(145deg,rgba(34,23,16,.91),rgba(20,13,9,.95));
}

.sp-knowledge-topic--pink { --knowledge-accent:var(--sp-pink); }
.sp-knowledge-topic--violet { --knowledge-accent:var(--sp-violet); }

.sp-knowledge-topic>span {
    color:var(--knowledge-accent);
    font-size:9px;
    font-weight:900;
    letter-spacing:.13em;
}

.sp-knowledge-topic h3 {
    margin:22px 0 0;
    color:#f4f7fb;
    font-size:19px;
}

.sp-knowledge-topic p {
    margin:9px 0 0;
    color:#afa399;
    font-size:12px;
    line-height:1.6;
}

.sp-knowledge-posts {
    padding:70px 0 78px;
    border-top:1px solid rgba(198,172,151,.15);
    background:#081112;
}

.sp-knowledge-posts__head {
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:30px;
    margin-bottom:34px;
}

.sp-knowledge-posts__reset {
    flex:0 0 auto;
    padding-bottom:7px;
    color:#c4b5a9 !important;
    font-size:12px;
    font-weight:800;
}

.sp-knowledge-posts__grid {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:16px;
}

.sp-knowledge-card {
    overflow:hidden;
    border:1px solid rgba(198,172,151,.20);
    border-radius:18px;
    background:linear-gradient(145deg,rgba(34,23,16,.91),rgba(20,13,9,.95));
}

.sp-knowledge-card__image {
    height:205px;
    display:block;
    overflow:hidden;
    border-bottom:1px solid rgba(198,172,151,.14);
    background:
        radial-gradient(circle at 20% 30%,rgba(255,231,199,.13),transparent 38%),
        radial-gradient(circle at 80% 70%,rgba(255,22,168,.12),transparent 40%),
        #0b1a1c;
}

.sp-knowledge-card__image img {
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .4s ease;
}

.sp-knowledge-card:hover .sp-knowledge-card__image img {
    transform:scale(1.035);
}

.sp-knowledge-card__placeholder {
    width:100%;
    height:100%;
    display:grid;
    place-items:center;
    color:rgba(255,255,255,.18);
    font-size:48px;
    font-weight:900;
}

.sp-knowledge-card__content {
    padding:21px 22px 22px;
}

.sp-knowledge-card__meta {
    display:flex;
    flex-wrap:wrap;
    gap:8px 14px;
    color:#9a8b7f;
    font-size:9.5px;
    font-weight:800;
    letter-spacing:.06em;
    text-transform:uppercase;
}

.sp-knowledge-card h3 {
    margin:15px 0 0;
    font-size:19px;
    line-height:1.2;
}

.sp-knowledge-card h3 a {
    color:#f3f6fb !important;
}

.sp-knowledge-card p {
    margin:10px 0 0;
    color:#afa399;
    font-size:12.5px;
    line-height:1.6;
}

.sp-knowledge-card__link {
    display:inline-flex;
    gap:9px;
    margin-top:20px;
    color:#edf3fa !important;
    font-size:12px;
    font-weight:850;
}

.sp-knowledge-card__link span { color:var(--sp-blue); }

.sp-knowledge-empty {
    display:grid;
    grid-template-columns:54px minmax(0,1fr);
    gap:18px;
    align-items:center;
    padding:24px;
    border:1px solid rgba(198,172,151,.19);
    border-radius:17px;
    background:rgba(24,16,10,.72);
}

.sp-knowledge-empty>span {
    width:48px;
    height:48px;
    display:grid;
    place-items:center;
    border:1px solid rgba(255,231,199,.34);
    border-radius:13px;
    color:var(--sp-blue);
    font-size:18px;
    font-weight:900;
}

.sp-knowledge-empty h3 {
    margin:0;
    color:#f0f4f9;
    font-size:18px;
}

.sp-knowledge-empty p {
    margin:5px 0 0;
    color:#ad9f93;
    font-size:12.5px;
}

.sp-knowledge-pagination {
    margin-top:28px;
}

.sp-knowledge-pagination ul {
    list-style:none;
    display:flex;
    flex-wrap:wrap;
    gap:7px;
    margin:0;
    padding:0;
}

.sp-knowledge-pagination a,
.sp-knowledge-pagination span {
    min-width:38px;
    height:38px;
    display:grid;
    place-items:center;
    padding:0 10px;
    border:1px solid rgba(198,172,151,.22);
    border-radius:9px;
    color:#cabfb5 !important;
    background:rgba(24,16,10,.68);
    font-size:11px;
    font-weight:800;
}

.sp-knowledge-pagination .current {
    border-color:transparent;
    background:linear-gradient(100deg,var(--sp-blue),var(--sp-violet),var(--sp-pink));
    color:#ffffff !important;
}

.sp-knowledge-cta {
    padding:50px 0 57px;
    background:#060c0d;
}

.sp-knowledge-cta__panel {
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:40px;
    align-items:center;
    padding:31px 34px;
    border:1px solid rgba(198,172,151,.22);
    border-radius:19px;
    background:
        radial-gradient(circle at 12% 50%,rgba(255,231,199,.06),transparent 30%),
        radial-gradient(circle at 90% 50%,rgba(255,22,168,.06),transparent 30%),
        linear-gradient(110deg,rgba(32,21,14,.94),rgba(21,14,10,.96));
}

.sp-knowledge-cta h2 {
    margin:8px 0;
    color:#ffffff;
    font-size:clamp(32px,2.7vw,46px);
    line-height:1.04;
}

.sp-knowledge-cta p:last-child {
    margin:0;
    color:#b5a79c;
    font-size:13px;
}

/* Pojedynczy artykuł */
.sp-article {
    background:#070e0f;
}

.sp-article__hero {
    padding:62px 0 58px;
    border-bottom:1px solid rgba(198,172,151,.16);
    background:
        radial-gradient(circle at 15% 30%,rgba(255,231,199,.075),transparent 30%),
        radial-gradient(circle at 88% 65%,rgba(255,22,168,.065),transparent 32%),
        #081112;
}

.sp-article__hero-inner {
    max-width:980px;
}

.sp-article__back {
    color:#b9aa9e !important;
    font-size:11px;
    font-weight:800;
}

.sp-article__meta {
    display:flex;
    flex-wrap:wrap;
    gap:10px 16px;
    margin-top:25px;
    color:#9f9084;
    font-size:10px;
    font-weight:850;
    letter-spacing:.08em;
    text-transform:uppercase;
}

.sp-article__hero h1 {
    margin:14px 0 0;
    color:#ffffff;
    font-size:clamp(44px,4.2vw,68px);
    line-height:1.03;
    letter-spacing:-.045em;
}

.sp-article__lead {
    max-width:820px;
    margin:20px 0 0;
    color:#c9beb5;
    font-size:17px;
    line-height:1.72;
}

.sp-article__featured {
    max-width:1100px;
    padding-top:40px;
}

.sp-article__featured img {
    width:100%;
    max-height:580px;
    object-fit:cover;
    border:1px solid rgba(198,172,151,.18);
    border-radius:20px;
}

.sp-article__layout {
    max-width:1100px;
    display:grid;
    grid-template-columns:minmax(0,1fr) 300px;
    gap:70px;
    align-items:start;
    padding-top:52px;
    padding-bottom:76px;
}

.sp-article__content {
    color:#c9bfb7;
    font-size:15px;
    line-height:1.82;
}

.sp-article__content h2,
.sp-article__content h3 {
    color:#f4f7fb;
    line-height:1.15;
    letter-spacing:-.025em;
}

.sp-article__content h2 {
    margin:42px 0 16px;
    font-size:30px;
}

.sp-article__content h3 {
    margin:32px 0 13px;
    font-size:22px;
}

.sp-article__content p {
    margin:0 0 18px;
}

.sp-article__content a {
    color:#ffe7c7 !important;
    text-decoration:underline;
    text-underline-offset:3px;
}

.sp-article__content ul,
.sp-article__content ol {
    margin:0 0 22px;
    padding-left:22px;
}

.sp-article__content blockquote {
    margin:28px 0;
    padding:20px 22px;
    border-left:2px solid var(--sp-blue);
    background:rgba(34,22,15,.72);
    color:#e7e2db;
}

.sp-article__aside {
    position:sticky;
    top:24px;
    padding:24px;
    border:1px solid rgba(198,172,151,.20);
    border-radius:17px;
    background:linear-gradient(145deg,rgba(34,23,16,.91),rgba(20,13,9,.95));
}

.sp-article__aside h2 {
    margin:9px 0 12px;
    color:#f4f7fb;
    font-size:25px;
    line-height:1.08;
}

.sp-article__aside>p:last-of-type {
    margin:0 0 19px;
    color:#afa195;
    font-size:12px;
    line-height:1.6;
}

.sp-article__aside .sp-btn {
    width:100%;
}

.sp-article__phone {
    display:block;
    margin-top:14px;
    color:#eaf0f8 !important;
    text-align:center;
    font-size:13px;
    font-weight:850;
}

@media(max-width:980px){
    .sp-knowledge-hero__grid,
    .sp-knowledge-topics__head,
    .sp-knowledge-cta__panel,
    .sp-article__layout {
        grid-template-columns:1fr;
    }

    .sp-knowledge-topics__head { gap:18px; }
    .sp-knowledge-topics__grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .sp-knowledge-posts__grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .sp-article__aside { position:static; }
}

@media(max-width:720px){
    .sp-knowledge-hero { padding:56px 0; }
    .sp-knowledge-hero h1 { font-size:clamp(40px,11vw,50px); }
    .sp-knowledge-hero__lead { font-size:14px; }
    .sp-knowledge-search { flex-direction:column; }
    .sp-knowledge-search button { width:100%; }

    .sp-knowledge-topics { padding:56px 0; }
    .sp-knowledge-topics__grid { grid-template-columns:1fr;gap:12px; }
    .sp-knowledge-topic { min-height:0;padding:20px; }

    .sp-knowledge-posts { padding:56px 0 60px; }
    .sp-knowledge-posts__head { align-items:flex-start;flex-direction:column;gap:12px; }
    .sp-knowledge-posts__grid { grid-template-columns:1fr;gap:13px; }
    .sp-knowledge-card__image { height:190px; }

    .sp-knowledge-cta { padding:42px 0 48px; }
    .sp-knowledge-cta__panel { padding:24px 21px; }
    .sp-knowledge-cta__panel .sp-btn { width:100%; }

    .sp-article__hero { padding:48px 0 44px; }
    .sp-article__hero h1 { font-size:clamp(38px,10.5vw,49px); }
    .sp-article__lead { font-size:14px; }
    .sp-article__featured { padding-top:24px; }
    .sp-article__featured img { border-radius:14px; }
    .sp-article__layout { gap:30px;padding-top:36px;padding-bottom:58px; }
    .sp-article__content { font-size:14px;line-height:1.75; }
}


/* =========================================================
   SERWIS MARKI: HP + CANON — v19
   ========================================================= */

.sp-brand-service-hero {
    padding:78px 0 76px;
    border-bottom:1px solid rgba(194,170,150,.18);
    background:
        radial-gradient(circle at 14% 28%,rgba(255,231,199,.09),transparent 30%),
        radial-gradient(circle at 90% 65%,rgba(255,22,168,.08),transparent 32%),
        linear-gradient(110deg,#081112 0%,#081112 52%,#091213 100%);
}

.sp-brand-service-hero--canon {
    background:
        radial-gradient(circle at 15% 28%,rgba(255,22,168,.075),transparent 30%),
        radial-gradient(circle at 88% 65%,rgba(255,231,199,.07),transparent 32%),
        linear-gradient(110deg,#081112 0%,#091112 52%,#091213 100%);
}

.sp-brand-service-hero__grid {
    display:grid;
    grid-template-columns:minmax(0,1.18fr) minmax(330px,.62fr);
    gap:clamp(54px,7vw,110px);
    align-items:center;
}

.sp-brand-service-hero h1 {
    max-width:900px;
    margin:10px 0 20px;
    color:#ffffff;
    font-size:clamp(48px,4.6vw,74px);
    line-height:1.01;
    letter-spacing:-.045em;
}

.sp-brand-service-hero__lead {
    max-width:790px;
    margin:0;
    color:#cac0b7;
    font-size:17px;
    line-height:1.72;
}

.sp-brand-service-hero__actions {
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    margin-top:28px;
}

.sp-brand-service-hero__badge {
    min-height:260px;
    display:flex;
    flex-direction:column;
    justify-content:center;
    padding:28px;
    border:1px solid rgba(198,172,151,.22);
    border-radius:19px;
    background:
        radial-gradient(circle at 80% 30%,rgba(255,231,199,.10),transparent 35%),
        linear-gradient(145deg,rgba(34,23,16,.91),rgba(20,13,9,.95));
}

.sp-brand-service-hero__badge--canon {
    background:
        radial-gradient(circle at 80% 30%,rgba(255,22,168,.10),transparent 35%),
        linear-gradient(145deg,rgba(34,23,16,.91),rgba(20,13,9,.95));
}

.sp-brand-service-hero__badge>span {
    color:#f6f9fd;
    font-size:clamp(48px,4vw,68px);
    font-weight:900;
    letter-spacing:-.05em;
}

.sp-brand-service-hero__badge--canon>span {
    font-size:clamp(38px,3.4vw,56px);
}

.sp-brand-service-hero__badge strong {
    margin-top:14px;
    color:#f0f4f9;
    font-size:15px;
}

.sp-brand-service-hero__badge p {
    margin:7px 0 0;
    color:#ad9f94;
    font-size:12.5px;
    line-height:1.6;
}

.sp-brand-service {
    padding:74px 0 78px;
    background:#070e0f;
}

.sp-brand-service__head {
    display:grid;
    grid-template-columns:minmax(0,1.08fr) minmax(340px,.72fr);
    gap:70px;
    align-items:end;
    margin-bottom:36px;
}

.sp-brand-service__head h2,
.sp-brand-service-flow h2,
.sp-brand-service-faq h2 {
    max-width:820px;
    margin:10px 0 0;
    color:#f7f9fc;
    font-size:clamp(38px,3.2vw,56px);
    line-height:1.04;
    letter-spacing:-.04em;
}

.sp-brand-service__head>p,
.sp-brand-service-flow__grid>div>p:last-child {
    margin:0;
    color:#b6a99f;
    font-size:14px;
    line-height:1.72;
}

.sp-brand-service__grid {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:15px;
}

.sp-brand-service-card {
    --brand-service-accent:var(--sp-blue);
    min-height:218px;
    padding:24px;
    border:1px solid rgba(198,172,151,.20);
    border-radius:17px;
    background:linear-gradient(145deg,rgba(34,23,16,.91),rgba(20,13,9,.95));
    transition:transform .25s ease,border-color .25s ease;
}

.sp-brand-service-card--pink { --brand-service-accent:var(--sp-pink); }
.sp-brand-service-card--violet { --brand-service-accent:var(--sp-violet); }

.sp-brand-service-card:hover {
    transform:translateY(-5px);
    border-color:color-mix(in srgb,var(--brand-service-accent) 45%,transparent);
}

.sp-brand-service-card>span {
    width:42px;height:42px;
    display:grid;place-items:center;
    border:1px solid color-mix(in srgb,var(--brand-service-accent) 55%,transparent);
    border-radius:12px;
    color:var(--brand-service-accent);
    font-size:10px;
    font-weight:900;
}

.sp-brand-service-card h3 {
    margin:23px 0 0;
    color:#f4f7fb;
    font-size:18px;
}

.sp-brand-service-card p {
    margin:10px 0 0;
    color:#afa399;
    font-size:12.5px;
    line-height:1.62;
}

.sp-brand-service-flow {
    padding:70px 0;
    border-top:1px solid rgba(198,172,151,.15);
    border-bottom:1px solid rgba(198,172,151,.15);
    background:#081112;
}

.sp-brand-service-flow__grid {
    display:grid;
    grid-template-columns:minmax(0,.82fr) minmax(500px,1.18fr);
    gap:clamp(55px,7vw,110px);
    align-items:center;
}

.sp-brand-service-flow__steps {
    overflow:hidden;
    border:1px solid rgba(198,172,151,.21);
    border-radius:18px;
    background:linear-gradient(145deg,rgba(34,23,16,.91),rgba(20,13,9,.95));
}

.sp-brand-service-flow__steps article {
    display:grid;
    grid-template-columns:44px minmax(0,1fr);
    gap:15px;
    min-height:96px;
    padding:20px 22px;
    border-bottom:1px solid rgba(198,172,151,.14);
}

.sp-brand-service-flow__steps article:last-child { border-bottom:0; }

.sp-brand-service-flow__steps article>span {
    width:38px;height:38px;
    display:grid;place-items:center;
    border:1px solid rgba(255,231,199,.32);
    border-radius:10px;
    color:var(--sp-blue);
    font-size:10px;
    font-weight:900;
}

.sp-brand-service-flow__steps strong {
    color:#f0f4f9;
    font-size:14px;
}

.sp-brand-service-flow__steps p {
    margin:5px 0 0;
    color:#ad9f93;
    font-size:12px;
    line-height:1.58;
}

.sp-brand-service-links {
    padding:58px 0;
    background:#070e0f;
}

.sp-brand-service-links__grid {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:15px;
}

.sp-brand-service-links__grid a {
    min-height:200px;
    display:flex;
    flex-direction:column;
    padding:24px;
    border:1px solid rgba(198,172,151,.20);
    border-radius:17px;
    background:linear-gradient(145deg,rgba(34,23,16,.91),rgba(20,13,9,.95));
}

.sp-brand-service-links__grid span {
    color:var(--sp-blue);
    font-size:9px;
    font-weight:900;
    letter-spacing:.13em;
}

.sp-brand-service-links__grid strong {
    margin-top:20px;
    color:#f4f7fb;
    font-size:20px;
}

.sp-brand-service-links__grid p {
    margin:9px 0 0;
    color:#afa399;
    font-size:12.5px;
    line-height:1.6;
}

.sp-brand-service-links__grid em {
    margin-top:auto;
    padding-top:16px;
    color:var(--sp-pink);
    font-style:normal;
    font-size:18px;
}

.sp-brand-service-faq {
    padding:64px 0 68px;
    border-top:1px solid rgba(198,172,151,.15);
    background:#081112;
}

.sp-brand-service-faq__grid {
    display:grid;
    grid-template-columns:minmax(0,.82fr) minmax(500px,1.18fr);
    gap:clamp(55px,7vw,100px);
    align-items:start;
}

.sp-brand-service-faq__list {
    overflow:hidden;
    border:1px solid rgba(198,172,151,.20);
    border-radius:17px;
}

.sp-brand-service-faq details {
    border-bottom:1px solid rgba(198,172,151,.14);
    background:rgba(24,16,10,.64);
}

.sp-brand-service-faq details:last-child { border-bottom:0; }

.sp-brand-service-faq summary {
    position:relative;
    cursor:pointer;
    list-style:none;
    padding:19px 48px 19px 20px;
    color:#eef3f9;
    font-size:13.5px;
    font-weight:800;
}

.sp-brand-service-faq summary::-webkit-details-marker { display:none; }

.sp-brand-service-faq summary::after {
    content:"+";
    position:absolute;
    right:20px;
    top:50%;
    transform:translateY(-50%);
    color:var(--sp-blue);
    font-size:20px;
}

.sp-brand-service-faq details[open] summary::after { content:"–"; }

.sp-brand-service-faq details p {
    margin:0;
    padding:0 20px 19px;
    color:#afa195;
    font-size:12.5px;
    line-height:1.62;
}

.sp-brand-service-cta {
    padding:50px 0 57px;
    background:#060c0d;
}

.sp-brand-service-cta__panel {
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:40px;
    align-items:center;
    padding:31px 34px;
    border:1px solid rgba(198,172,151,.22);
    border-radius:19px;
    background:
        radial-gradient(circle at 12% 50%,rgba(255,231,199,.06),transparent 30%),
        radial-gradient(circle at 90% 50%,rgba(255,22,168,.06),transparent 30%),
        linear-gradient(110deg,rgba(32,21,14,.94),rgba(21,14,10,.96));
}

.sp-brand-service-cta h2 {
    margin:8px 0;
    color:#ffffff;
    font-size:clamp(32px,2.7vw,46px);
    line-height:1.04;
}

.sp-brand-service-cta p:last-child {
    margin:0;
    color:#b5a79c;
    font-size:13px;
}

@media(max-width:980px){
    .sp-brand-service-hero__grid,
    .sp-brand-service__head,
    .sp-brand-service-flow__grid,
    .sp-brand-service-faq__grid,
    .sp-brand-service-cta__panel {
        grid-template-columns:1fr;
    }
    .sp-brand-service__head { gap:18px; }
    .sp-brand-service__grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

@media(max-width:720px){
    .sp-brand-service-hero { padding:56px 0; }
    .sp-brand-service-hero h1 { font-size:clamp(40px,11vw,50px); }
    .sp-brand-service-hero__lead { font-size:14px; }
    .sp-brand-service-hero__actions { flex-direction:column; }
    .sp-brand-service-hero__actions .sp-btn { width:100%; }
    .sp-brand-service-hero__badge { min-height:0;padding:22px; }

    .sp-brand-service { padding:56px 0 60px; }
    .sp-brand-service__grid { grid-template-columns:1fr;gap:12px; }
    .sp-brand-service-card { min-height:0;padding:20px; }

    .sp-brand-service-flow { padding:56px 0; }
    .sp-brand-service-flow__grid { gap:28px; }
    .sp-brand-service-flow__steps article { padding:17px; }

    .sp-brand-service-links { padding:48px 0; }
    .sp-brand-service-links__grid { grid-template-columns:1fr;gap:12px; }
    .sp-brand-service-links__grid a { min-height:0;padding:21px; }

    .sp-brand-service-faq { padding:54px 0; }
    .sp-brand-service-faq__grid { gap:28px; }

    .sp-brand-service-cta { padding:42px 0 48px; }
    .sp-brand-service-cta__panel { padding:24px 21px; }
    .sp-brand-service-cta__panel .sp-btn { width:100%; }
}


/* =========================================================
   DOKUMENTY PRAWNE — v20
   ========================================================= */

.sp-legal-hero {
    padding:66px 0 60px;
    border-bottom:1px solid rgba(194,170,150,.18);
    background:
        radial-gradient(circle at 14% 28%,rgba(255,231,199,.075),transparent 30%),
        radial-gradient(circle at 90% 65%,rgba(255,22,168,.065),transparent 32%),
        linear-gradient(110deg,#081112 0%,#081112 52%,#091213 100%);
}

.sp-legal-hero h1 {
    max-width:900px;
    margin:10px 0 14px;
    color:#ffffff;
    font-size:clamp(44px,4vw,64px);
    line-height:1.02;
    letter-spacing:-.045em;
}

.sp-legal-hero p {
    max-width:760px;
    margin:0;
    color:#c7bcb3;
    font-size:15px;
    line-height:1.7;
}

.sp-legal-hero span {
    display:inline-block;
    margin-top:17px;
    color:#9c8d80;
    font-size:10.5px;
    font-weight:700;
}

.sp-legal {
    padding:58px 0 76px;
    background:#070e0f;
}

.sp-legal__layout {
    display:grid;
    grid-template-columns:230px minmax(0,860px);
    gap:clamp(44px,6vw,90px);
    justify-content:center;
    align-items:start;
}

.sp-legal__toc {
    position:sticky;
    top:24px;
    display:flex;
    flex-direction:column;
    gap:3px;
    padding:19px;
    border:1px solid rgba(198,172,151,.18);
    border-radius:15px;
    background:rgba(24,16,10,.72);
}

.sp-legal__toc strong {
    margin-bottom:9px;
    color:#edf2f8;
    font-size:11px;
    text-transform:uppercase;
    letter-spacing:.09em;
}

.sp-legal__toc a {
    padding:6px 0;
    color:#ad9e92 !important;
    font-size:11.5px;
}

.sp-legal__toc a:hover {
    color:var(--sp-blue) !important;
}

.sp-legal__content {
    min-width:0;
}

.sp-legal__content section {
    scroll-margin-top:24px;
    padding:0 0 38px;
    margin:0 0 38px;
    border-bottom:1px solid rgba(198,172,151,.13);
}

.sp-legal__content section:last-child {
    margin-bottom:0;
    padding-bottom:0;
    border-bottom:0;
}

.sp-legal__content h2 {
    margin:0 0 17px;
    color:#f5f8fc;
    font-size:27px;
    line-height:1.15;
    letter-spacing:-.025em;
}

.sp-legal__content h3 {
    margin:24px 0 10px;
    color:#eef3f9;
    font-size:18px;
    line-height:1.2;
}

.sp-legal__content p,
.sp-legal__content li {
    color:#bdb0a6;
    font-size:13.5px;
    line-height:1.75;
}

.sp-legal__content p {
    margin:0 0 15px;
}

.sp-legal__content ul,
.sp-legal__content ol {
    margin:0 0 18px;
    padding-left:21px;
}

.sp-legal__content li + li {
    margin-top:7px;
}

.sp-legal__content strong {
    color:#e9eef6;
}

.sp-legal__content a {
    color:#ffe7c7 !important;
    text-decoration:underline;
    text-underline-offset:3px;
}

.sp-legal__note {
    margin:22px 0;
    padding:17px 18px;
    border:1px solid rgba(255,231,199,.20);
    border-radius:12px;
    background:linear-gradient(100deg,rgba(255,231,199,.05),rgba(255,231,199,.03));
    color:#c5b7ac;
    font-size:12.5px;
    line-height:1.65;
}

.sp-legal__table-wrap {
    margin:18px 0 20px;
    overflow-x:auto;
    border:1px solid rgba(198,172,151,.17);
    border-radius:13px;
}

.sp-legal__table {
    width:100%;
    min-width:680px;
    border-collapse:collapse;
    background:rgba(24,16,10,.54);
}

.sp-legal__table th,
.sp-legal__table td {
    padding:14px 16px;
    border-bottom:1px solid rgba(198,172,151,.12);
    text-align:left;
    vertical-align:top;
    color:#bbada2;
    font-size:12px;
    line-height:1.55;
}

.sp-legal__table th {
    color:#e9eef6;
    font-size:10.5px;
    text-transform:uppercase;
    letter-spacing:.08em;
    background:rgba(35,23,16,.76);
}

.sp-legal__table tr:last-child td {
    border-bottom:0;
}

@media(max-width:900px){
    .sp-legal__layout {
        grid-template-columns:1fr;
        gap:28px;
    }

    .sp-legal__toc {
        position:static;
        display:grid;
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .sp-legal__toc strong {
        grid-column:1/-1;
    }
}

@media(max-width:720px){
    .sp-legal-hero {
        padding:52px 0 48px;
    }

    .sp-legal-hero h1 {
        font-size:clamp(38px,10vw,48px);
    }

    .sp-legal {
        padding:42px 0 58px;
    }

    .sp-legal__toc {
        grid-template-columns:1fr 1fr;
        padding:16px;
    }

    .sp-legal__content section {
        padding-bottom:30px;
        margin-bottom:30px;
    }

    .sp-legal__content h2 {
        font-size:23px;
    }

    .sp-legal__content p,
    .sp-legal__content li {
        font-size:13px;
    }
}


/* Godziny lokalizacji — korekta v20.1 */
.sp-contact-page__location .sp-contact-page__hours {
    margin-top:-4px;
    margin-bottom:10px;
    color:#d1c9be;
    font-size:11.5px;
    font-weight:750;
}


/* =========================================================
   BLOG / BAZA WIEDZY — PREMIUM TEMPLATE v21
   ========================================================= */

/* --- Karty bazy wiedzy: obraz + treść w HTML na zdjęciu --- */
.sp-knowledge-posts__grid {
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:16px;
}

.sp-knowledge-card--visual {
    min-width:0;
    overflow:hidden;
    border:1px solid rgba(198,172,151,.20);
    border-radius:18px;
    background:#0b1a1c;
    box-shadow:0 20px 55px rgba(0,0,0,.18);
    transition:transform .28s ease,border-color .28s ease,box-shadow .28s ease;
}

.sp-knowledge-card--visual:hover {
    transform:translateY(-5px);
    border-color:rgba(255,231,199,.38);
    box-shadow:0 26px 70px rgba(0,0,0,.26);
}

.sp-knowledge-card__visual {
    position:relative;
    min-height:440px;
    display:block;
    overflow:hidden;
    background:
        radial-gradient(circle at 25% 18%,rgba(255,231,199,.10),transparent 34%),
        radial-gradient(circle at 80% 78%,rgba(255,22,168,.08),transparent 38%),
        #0b1a1c;
}

.sp-knowledge-card__visual>img {
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .45s ease;
}

.sp-knowledge-card--visual:hover .sp-knowledge-card__visual>img {
    transform:scale(1.035);
}

.sp-knowledge-card__visual .sp-knowledge-card__placeholder {
    position:absolute;
    inset:0;
    display:grid;
    place-items:center;
    color:rgba(255,255,255,.15);
    font-size:54px;
    font-weight:900;
}

.sp-knowledge-card__shade {
    position:absolute;
    inset:0;
    z-index:1;
    background:
        linear-gradient(180deg,rgba(13,8,5,.06) 0%,rgba(13,8,5,.08) 32%,rgba(13,8,5,.62) 57%,rgba(13,8,5,.96) 83%,rgba(13,8,5,.99) 100%);
}

.sp-knowledge-card__category {
    position:absolute;
    z-index:2;
    top:18px;
    left:18px;
    max-width:calc(100% - 36px);
    padding:8px 12px 7px;
    border-radius:5px;
    background:linear-gradient(110deg,#cfbba1,#d7c3a8);
    color:#ffffff;
    font-size:10px;
    font-weight:900;
    line-height:1;
    letter-spacing:.025em;
    text-transform:uppercase;
    box-shadow:0 7px 20px rgba(205,186,160,.24);
}

.sp-knowledge-card__body {
    position:absolute;
    z-index:2;
    left:18px;
    right:18px;
    bottom:20px;
    display:grid;
    grid-template-columns:52px minmax(0,1fr);
    gap:14px;
    align-items:start;
}

.sp-knowledge-card__number {
    width:50px;
    height:50px;
    display:grid;
    place-items:center;
    border-radius:7px;
    background:linear-gradient(145deg,#9c714e,#d7c3a8);
    color:#ffffff;
    font-size:22px;
    font-weight:900;
    line-height:1;
    box-shadow:0 8px 25px rgba(179,130,90,.22);
}

.sp-knowledge-card__text {
    min-width:0;
    display:block;
}

.sp-knowledge-card__text strong {
    display:block;
    color:#ffffff;
    font-size:20px;
    font-weight:850;
    line-height:1.14;
    letter-spacing:-.025em;
    text-wrap:balance;
}

.sp-knowledge-card__text small {
    display:block;
    margin-top:10px;
    color:#e7e2da;
    font-size:11.5px;
    line-height:1.55;
}

/* --- Pojedynczy artykuł --- */
.sp-article--premium {
    background:#070e0f;
}

.sp-article-hero {
    padding:58px 0 62px;
    border-bottom:1px solid rgba(198,172,151,.16);
    background:
        radial-gradient(circle at 12% 26%,rgba(255,231,199,.075),transparent 29%),
        radial-gradient(circle at 88% 68%,rgba(255,22,168,.065),transparent 32%),
        linear-gradient(115deg,#081112,#081112 55%,#091213);
}

.sp-article-hero__grid {
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(390px,.78fr);
    gap:clamp(46px,6vw,92px);
    align-items:center;
}

.sp-article__back {
    display:inline-flex;
    color:#b9aa9e !important;
    font-size:11px;
    font-weight:800;
}

.sp-article-hero__meta {
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:9px 14px;
    margin-top:26px;
    color:#a6978b;
    font-size:10px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.065em;
}

.sp-article-hero__category {
    padding:7px 10px 6px;
    border-radius:5px;
    background:linear-gradient(110deg,#cfbba1,#d7c3a8);
    color:#ffffff !important;
    font-size:9px;
    letter-spacing:.03em;
}

.sp-article-hero h1 {
    max-width:820px;
    margin:16px 0 0;
    color:#ffffff;
    font-size:clamp(45px,4vw,66px);
    line-height:1.02;
    letter-spacing:-.045em;
    text-wrap:balance;
}

.sp-article-hero__lead {
    max-width:780px;
    margin:20px 0 0;
    color:#c9beb5;
    font-size:16px;
    line-height:1.7;
}

.sp-article-hero__actions {
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:18px;
    margin-top:26px;
}

.sp-article-hero__phone {
    display:flex;
    flex-direction:column;
}

.sp-article-hero__phone small {
    color:#9e9084;
    font-size:9px;
    text-transform:uppercase;
    letter-spacing:.08em;
}

.sp-article-hero__phone strong {
    color:#f1f5fa;
    font-size:14px;
}

.sp-article-hero__media {
    position:relative;
    min-height:430px;
    overflow:hidden;
    border:1px solid rgba(198,172,151,.20);
    border-radius:20px;
    background:
        radial-gradient(circle at 20% 30%,rgba(255,231,199,.13),transparent 38%),
        radial-gradient(circle at 80% 70%,rgba(255,22,168,.12),transparent 40%),
        #0b1a1c;
    box-shadow:0 28px 80px rgba(0,0,0,.25);
}

.sp-article-hero__media::after {
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    background:linear-gradient(180deg,transparent 55%,rgba(13,8,5,.18));
}

.sp-article-hero__media img {
    width:100%;
    height:100%;
    min-height:430px;
    object-fit:cover;
    display:block;
}

.sp-article-hero__placeholder {
    min-height:430px;
    display:grid;
    place-items:center;
    color:rgba(255,255,255,.14);
    font-size:72px;
    font-weight:900;
}

.sp-article-body {
    max-width:1160px;
    display:grid;
    grid-template-columns:minmax(0,1fr) 310px;
    gap:clamp(48px,6vw,84px);
    align-items:start;
    padding-top:60px;
    padding-bottom:76px;
}

.sp-article__content {
    min-width:0;
    color:#c9bfb7;
    font-size:15.5px;
    line-height:1.82;
}

.sp-article__content>*:first-child {
    margin-top:0 !important;
}

.sp-article__content p {
    margin:0 0 19px;
}

.sp-article__content h2 {
    margin:45px 0 16px;
    color:#f4f7fb;
    font-size:31px;
    line-height:1.13;
    letter-spacing:-.032em;
}

.sp-article__content h3 {
    margin:33px 0 13px;
    color:#eff3f8;
    font-size:22px;
    line-height:1.2;
    letter-spacing:-.02em;
}

.sp-article__content h4 {
    margin:27px 0 11px;
    color:#e9eef6;
    font-size:17px;
}

.sp-article__content strong {
    color:#f6f2ed;
}

.sp-article__content a {
    color:#ffe7c7 !important;
    text-decoration:underline;
    text-underline-offset:3px;
}

.sp-article__content ul,
.sp-article__content ol {
    margin:0 0 23px;
    padding-left:23px;
}

.sp-article__content li {
    margin:7px 0;
}

.sp-article__content blockquote {
    margin:30px 0;
    padding:21px 23px;
    border-left:2px solid var(--sp-blue);
    border-radius:0 12px 12px 0;
    background:linear-gradient(100deg,rgba(255,231,199,.055),rgba(255,231,199,.025));
    color:#e7e2da;
}

.sp-article__content figure {
    margin:30px 0;
}

.sp-article__content figure img {
    width:100%;
    border-radius:15px;
    border:1px solid rgba(198,172,151,.16);
}

.sp-article__content figcaption {
    margin-top:8px;
    color:#9f9083;
    font-size:10.5px;
    text-align:center;
}

.sp-article__content .wp-block-table {
    overflow-x:auto;
}

.sp-article__content table {
    width:100%;
    border-collapse:collapse;
    margin:26px 0;
    border:1px solid rgba(198,172,151,.16);
    background:rgba(24,16,10,.55);
}

.sp-article__content th,
.sp-article__content td {
    padding:13px 14px;
    border:1px solid rgba(198,172,151,.12);
    text-align:left;
    vertical-align:top;
}

.sp-article__content th {
    color:#eef3f9;
    background:rgba(35,23,16,.72);
}

.sp-article__endnote {
    display:grid;
    grid-template-columns:42px minmax(0,1fr);
    gap:14px;
    margin-top:46px;
    padding:20px 21px;
    border:1px solid rgba(255,231,199,.18);
    border-radius:14px;
    background:linear-gradient(105deg,rgba(255,231,199,.045),rgba(255,231,199,.022));
}

.sp-article__endnote>span {
    width:38px;
    height:38px;
    display:grid;
    place-items:center;
    border:1px solid rgba(255,231,199,.30);
    border-radius:10px;
    color:var(--sp-blue);
    font-weight:900;
}

.sp-article__endnote strong {
    color:#eef3f9;
    font-size:13px;
}

.sp-article__endnote p {
    margin:5px 0 0;
    color:#afa195;
    font-size:11.5px;
    line-height:1.6;
}

.sp-article__aside {
    position:sticky;
    top:24px;
    display:grid;
    gap:14px;
}

.sp-article__aside-card,
.sp-article__aside-links {
    padding:23px;
    border:1px solid rgba(198,172,151,.20);
    border-radius:17px;
    background:linear-gradient(145deg,rgba(34,23,16,.91),rgba(20,13,9,.95));
}

.sp-article__aside-card h2 {
    margin:9px 0 12px;
    color:#f4f7fb;
    font-size:25px;
    line-height:1.08;
    letter-spacing:-.03em;
}

.sp-article__aside-card>p:last-of-type {
    margin:0 0 19px;
    color:#afa195;
    font-size:12px;
    line-height:1.62;
}

.sp-article__aside-card .sp-btn {
    width:100%;
}

.sp-article__phone {
    display:block;
    margin-top:13px;
    color:#eaf0f8 !important;
    text-align:center;
    font-size:13px;
    font-weight:850;
}

.sp-article__aside-links strong {
    display:block;
    margin-bottom:10px;
    color:#edf2f8;
    font-size:11px;
    text-transform:uppercase;
    letter-spacing:.08em;
}

.sp-article__aside-links a {
    display:flex;
    justify-content:space-between;
    gap:12px;
    padding:10px 0;
    border-top:1px solid rgba(198,172,151,.12);
    color:#c2b4a9 !important;
    font-size:11.5px;
    font-weight:750;
}

.sp-article__aside-links a span {
    color:var(--sp-blue);
}

/* --- Powiązane wpisy --- */
.sp-article-related {
    padding:62px 0 72px;
    border-top:1px solid rgba(198,172,151,.15);
    background:#081112;
}

.sp-article-related__head {
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:30px;
    margin-bottom:30px;
}

.sp-article-related__head h2 {
    margin:9px 0 0;
    color:#f5f8fc;
    font-size:clamp(32px,2.8vw,45px);
    line-height:1.06;
    letter-spacing:-.04em;
}

.sp-article-related__head>a {
    padding-bottom:6px;
    color:#c4b5a9 !important;
    font-size:11.5px;
    font-weight:800;
}

.sp-article-related__grid {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:15px;
}

.sp-article-related__card {
    overflow:hidden;
    border:1px solid rgba(198,172,151,.19);
    border-radius:16px;
    background:linear-gradient(145deg,rgba(34,23,16,.91),rgba(20,13,9,.95));
}

.sp-article-related__image {
    height:175px;
    display:block;
    overflow:hidden;
    background:#0b1a1c;
}

.sp-article-related__image img {
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .35s ease;
}

.sp-article-related__card:hover .sp-article-related__image img {
    transform:scale(1.035);
}

.sp-article-related__image>span {
    width:100%;
    height:100%;
    display:grid;
    place-items:center;
    color:rgba(255,255,255,.14);
    font-size:38px;
    font-weight:900;
}

.sp-article-related__card>div {
    padding:18px 19px 19px;
}

.sp-article-related__card>div>span {
    color:#9c8d80;
    font-size:9.5px;
    font-weight:800;
}

.sp-article-related__card h3 {
    margin:10px 0 0;
    font-size:17px;
    line-height:1.18;
}

.sp-article-related__card h3 a {
    color:#eef3f9 !important;
}

.sp-article-related__more {
    display:inline-block;
    margin-top:16px;
    color:#f7e0c2 !important;
    font-size:11px;
    font-weight:800;
}

@media(max-width:1050px){
    .sp-knowledge-card__visual { min-height:410px; }
    .sp-knowledge-card__text strong { font-size:18px; }

    .sp-article-hero__grid {
        grid-template-columns:1fr;
    }

    .sp-article-hero__media {
        min-height:360px;
    }

    .sp-article-hero__media img,
    .sp-article-hero__placeholder {
        min-height:360px;
    }

    .sp-article-body {
        grid-template-columns:1fr;
        gap:34px;
    }

    .sp-article__aside {
        position:static;
        grid-template-columns:1fr 1fr;
    }
}

@media(max-width:820px){
    .sp-knowledge-posts__grid {
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .sp-article-related__grid {
        grid-template-columns:1fr 1fr;
    }
}

@media(max-width:620px){
    .sp-knowledge-posts__grid {
        grid-template-columns:1fr;
        gap:13px;
    }

    .sp-knowledge-card__visual {
        min-height:405px;
    }

    .sp-knowledge-card__category {
        top:15px;
        left:15px;
    }

    .sp-knowledge-card__body {
        left:15px;
        right:15px;
        bottom:17px;
        grid-template-columns:47px minmax(0,1fr);
        gap:12px;
    }

    .sp-knowledge-card__number {
        width:46px;
        height:46px;
        font-size:20px;
    }

    .sp-knowledge-card__text strong {
        font-size:19px;
    }

    .sp-knowledge-card__text small {
        font-size:11px;
    }

    .sp-article-hero {
        padding:46px 0 50px;
    }

    .sp-article-hero h1 {
        font-size:clamp(38px,10.5vw,49px);
    }

    .sp-article-hero__lead {
        font-size:14px;
    }

    .sp-article-hero__actions {
        align-items:stretch;
        flex-direction:column;
    }

    .sp-article-hero__actions .sp-btn {
        width:100%;
    }

    .sp-article-hero__phone {
        align-items:center;
    }

    .sp-article-hero__media,
    .sp-article-hero__media img,
    .sp-article-hero__placeholder {
        min-height:260px;
    }

    .sp-article-hero__media {
        border-radius:15px;
    }

    .sp-article-body {
        padding-top:42px;
        padding-bottom:58px;
    }

    .sp-article__content {
        font-size:14px;
        line-height:1.75;
    }

    .sp-article__content h2 {
        margin-top:38px;
        font-size:26px;
    }

    .sp-article__content h3 {
        font-size:20px;
    }

    .sp-article__aside {
        grid-template-columns:1fr;
    }

    .sp-article-related {
        padding:50px 0 58px;
    }

    .sp-article-related__head {
        align-items:flex-start;
        flex-direction:column;
        gap:10px;
    }

    .sp-article-related__grid {
        grid-template-columns:1fr;
    }
}


/* =========================================================
   GUTENBERG — STYLE PRZYCISKÓW SERWIS PLOTERÓW v22
   W edytorze:
   1) Serwis Ploterów — CTA
   2) Serwis Ploterów — Outline
   ========================================================= */

.sp-article__content .wp-block-buttons {
    margin:24px 0 30px;
    gap:12px;
}

.sp-article__content .wp-block-button {
    margin:0;
}

/* 1. GŁÓWNY CTA — ciemny techniczny z gradientową krawędzią */
.sp-article__content .wp-block-button.is-style-sp-primary .wp-block-button__link {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:11px;
    min-height:52px;
    padding:13px 23px;

    border:1px solid transparent;
    border-radius:11px;

    background:
        linear-gradient(115deg,#0e1e20,#102022) padding-box,
        linear-gradient(90deg,#ffe7c7 0%,#ffe7c7 52%,#f0189b 100%) border-box;

    color:#f8fbff !important;
    box-shadow:
        0 10px 28px rgba(0,0,0,.25),
        0 0 20px rgba(255,231,199,.06);

    font-size:14px;
    font-weight:850;
    line-height:1.2;
    letter-spacing:-.01em;
    text-decoration:none !important;

    transition:
        transform .22s ease,
        box-shadow .22s ease,
        filter .22s ease;
}

.sp-article__content .wp-block-button.is-style-sp-primary .wp-block-button__link::after {
    content:"→";
    color:#ffe7c7;
    font-size:16px;
    line-height:1;
    transition:transform .22s ease;
}

.sp-article__content .wp-block-button.is-style-sp-primary .wp-block-button__link:hover,
.sp-article__content .wp-block-button.is-style-sp-primary .wp-block-button__link:focus {
    transform:translateY(-2px);
    color:#ffffff !important;
    filter:brightness(1.08);
    box-shadow:
        0 15px 34px rgba(0,0,0,.32),
        0 0 28px rgba(255,231,199,.10);
    text-decoration:none !important;
}

.sp-article__content .wp-block-button.is-style-sp-primary .wp-block-button__link:hover::after,
.sp-article__content .wp-block-button.is-style-sp-primary .wp-block-button__link:focus::after {
    transform:translateX(3px);
}

/* 2. OUTLINE — spokojniejszy do linków pomocniczych */
.sp-article__content .wp-block-button.is-style-sp-outline .wp-block-button__link {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    min-height:52px;
    padding:13px 23px;

    border:1px solid rgba(197,169,146,.30);
    border-radius:11px;
    background:rgba(24,16,10,.72);

    color:#f4efe7 !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.025);

    font-size:14px;
    font-weight:800;
    line-height:1.2;
    letter-spacing:-.01em;
    text-decoration:none !important;

    transition:
        transform .22s ease,
        border-color .22s ease,
        background .22s ease,
        color .22s ease;
}

.sp-article__content .wp-block-button.is-style-sp-outline .wp-block-button__link::after {
    content:"→";
    color:#ffe7c7;
    font-size:16px;
    line-height:1;
    transition:transform .22s ease,color .22s ease;
}

.sp-article__content .wp-block-button.is-style-sp-outline .wp-block-button__link:hover,
.sp-article__content .wp-block-button.is-style-sp-outline .wp-block-button__link:focus {
    transform:translateY(-2px);
    border-color:rgba(255,231,199,.48);
    background:
        linear-gradient(100deg,rgba(255,231,199,.055),rgba(255,231,199,.045));
    color:#ffffff !important;
    text-decoration:none !important;
}

.sp-article__content .wp-block-button.is-style-sp-outline .wp-block-button__link:hover::after,
.sp-article__content .wp-block-button.is-style-sp-outline .wp-block-button__link:focus::after {
    transform:translateX(3px);
    color:#ffe7c7;
}

.sp-article__content .wp-block-button.is-style-sp-primary .wp-block-button__link:focus-visible,
.sp-article__content .wp-block-button.is-style-sp-outline .wp-block-button__link:focus-visible {
    outline:2px solid rgba(255,231,199,.72);
    outline-offset:3px;
}

@media(max-width:640px){
    .sp-article__content .wp-block-buttons {
        margin:21px 0 26px;
    }

    .sp-article__content .wp-block-button.is-style-sp-primary,
    .sp-article__content .wp-block-button.is-style-sp-outline {
        width:100%;
    }

    .sp-article__content .wp-block-button.is-style-sp-primary .wp-block-button__link,
    .sp-article__content .wp-block-button.is-style-sp-outline .wp-block-button__link {
        width:100%;
        min-height:51px;
        padding:13px 18px;
        font-size:13.5px;
    }
}


/* =========================================================
   BAZA WIEDZY — uspokojenie typografii kart v22.1
   ========================================================= */

.sp-knowledge-card__body {
    grid-template-columns:48px minmax(0,1fr);
    gap:13px;
    align-items:start;
}

.sp-knowledge-card__number {
    width:48px;
    height:48px;
    border-radius:8px;
    font-size:18px;
    font-weight:800;
    letter-spacing:-.02em;
}

.sp-knowledge-card__text strong {
    display:block;
    margin:0;
    color:#f7f9fc;
    font-size:17px;
    font-weight:760;
    line-height:1.22;
    letter-spacing:-.018em;
    text-wrap:pretty;
}

.sp-knowledge-card__text small {
    display:block;
    margin-top:9px;
    color:#ddd7ce;
    font-size:11px;
    font-weight:450;
    line-height:1.55;
    letter-spacing:0;
}

.sp-knowledge-card__category {
    font-size:9px;
    font-weight:800;
    letter-spacing:.04em;
}

@media(max-width:1050px){
    .sp-knowledge-card__text strong {
        font-size:16px;
    }
}

@media(max-width:620px){
    .sp-knowledge-card__body {
        grid-template-columns:44px minmax(0,1fr);
        gap:11px;
    }

    .sp-knowledge-card__number {
        width:44px;
        height:44px;
        font-size:17px;
    }

    .sp-knowledge-card__text strong {
        font-size:16px;
        line-height:1.24;
    }

    .sp-knowledge-card__text small {
        font-size:10.8px;
        line-height:1.5;
    }
}


/* =========================================================
   BAZA WIEDZY — poprawka polskich znaków v22.2
   Używamy Segoe UI dla kart, żeby uniknąć fallbacku glyphów
   i nierównej grubości znaków ą ć ę ł ń ó ś ź ż.
   ========================================================= */

.sp-knowledge-card__visual,
.sp-knowledge-card__category,
.sp-knowledge-card__number,
.sp-knowledge-card__text,
.sp-knowledge-card__text strong,
.sp-knowledge-card__text small {
    font-family:"Segoe UI", Arial, Helvetica, sans-serif !important;
    font-synthesis:none;
}

.sp-knowledge-card__text strong {
    font-weight:700;
}

.sp-knowledge-card__text small {
    font-weight:400;
}

.sp-knowledge-card__number,
.sp-knowledge-card__category {
    font-weight:700;
}


/* v40.7 — finalne dane firmy w stopce */
.sp-footer__location-card {
    position:relative;
}
.sp-footer__registry {
    display:flex;
    flex-wrap:wrap;
    gap:6px 10px;
    margin-top:8px;
}
.sp-footer__registry > span {
    display:inline-flex;
    align-items:center;
    gap:4px;
    padding:5px 7px;
    border:1px solid rgba(177,159,144,.16);
    border-radius:8px;
    background:rgba(255,255,255,.025);
    color:#a89a8f;
    font-size:9px;
    line-height:1;
}
.sp-footer__registry b {
    color:#f2ece5;
    font-weight:800;
}
@media(max-width:700px){
    .sp-footer__registry {
        gap:6px;
    }
    .sp-footer__registry > span {
        font-size:8.5px;
    }
}


/* =========================================================
   SERWISPLOTEROW.COM — LIGHT EDITION v23
   Jasna warstwa wizualna dla nowa.mkrobocza.pl
   Treść, struktura, formularze i SEO pozostają bez zmian.
   ========================================================= */

:root {
    --sp-bg: #f5f8fb;
    --sp-bg-deep: #eef4f8;
    --sp-panel: #ffffff;
    --sp-panel-soft: rgba(255,255,255,.92);
    --sp-line: rgba(112,72,47,.12);
    --sp-line-strong: rgba(112,72,47,.20);
    --sp-text: #19393c;
    --sp-muted: #887a6f;
    --sp-blue: #ba875d;
    --sp-blue-2: #c89164;
    --sp-violet: #d5c1a6;
    --sp-pink: #b8855c;
    --sp-shadow: 0 24px 70px rgba(99,67,46,.12);
}

html { background:#f5f8fb; }

body.sp-site {
    background:#f5f8fb;
    color:#19393c;
    font-family: Inter, Manrope, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

body.sp-site ::selection {
    background:rgba(186,135,93,.20);
    color:#173b3f;
}

/* =========================================================
   HEADER / TOPBAR / NAV
   ========================================================= */

.sp-header {
    background:#ffffff;
    border-bottom:1px solid #eee9e3;
    box-shadow:0 5px 24px rgba(91,61,41,.055);
}

.sp-topbar {
    background:#eef5f8;
    border-bottom:1px solid #eee9e3;
}

.sp-topbar__item {
    color:#3c666a;
    font-weight:700;
}

.sp-topbar__item:hover { color:#488a91; }
.sp-topbar__icon { color:#ba875d; }

.sp-navbar {
    background:#ffffff;
}

.sp-brand__visual {
    background-image:url('../images/logo-serwisploterow-header-light.png');
}

.sp-nav > a:not(.sp-btn) {
    color:#204347;
}

.sp-nav > a:not(.sp-btn)::after {
    background:linear-gradient(90deg,#ba875d,#c89164);
}

.sp-btn {
    border-radius:8px;
}

.sp-btn--header,
.sp-btn--primary {
    color:#ffffff;
    background:linear-gradient(100deg,#bb885e 0%,#b3825a 42%,#c89164 100%);
    box-shadow:0 10px 26px rgba(167,121,84,.18);
}

.sp-btn--header:hover,
.sp-btn--primary:hover {
    box-shadow:0 14px 32px rgba(173,125,86,.24);
}

.sp-btn--secondary {
    color:#204347;
    border-color:#d6cec4;
    background:#ffffff;
    backdrop-filter:none;
    box-shadow:0 7px 20px rgba(98,67,47,.045);
}

.sp-btn--secondary:hover {
    color:#488a91;
    border-color:#ba875d;
    background:#f4fbfc;
}

.sp-menu-toggle { color:#1f4549; }
.sp-menu-toggle__bars i { background:#1f4549; }

@media(max-width:1080px){
    .sp-nav {
        border-color:#ebe5de;
        background:rgba(255,255,255,.995);
        box-shadow:0 18px 42px rgba(91,61,41,.14);
    }
}

/* =========================================================
   TYPOGRAPHY SHARED
   ========================================================= */

.sp-section-kicker,
.sp-eyebrow {
    color:#a17550;
}

.sp-gradient-text {
    color:#aa7b55;
    background:linear-gradient(90deg,#bb885e 0%,#bd895e 48%,#c89164 100%);
    -webkit-background-clip:text;
    background-clip:text;
    -webkit-text-fill-color:transparent;
}

/* =========================================================
   HOME — HERO
   ========================================================= */

.sp-hero {
    min-height:600px;
    background:
        radial-gradient(circle at 80% 26%,rgba(193,140,96,.11),transparent 28%),
        radial-gradient(circle at 94% 76%,rgba(203,147,102,.075),transparent 25%),
        linear-gradient(112deg,#ffffff 0%,#fbfdff 50%,#eef8fb 100%);
    border-bottom:1px solid #ede8e2;
}

.sp-hero::before {
    opacity:.48;
    background-image:
        linear-gradient(rgba(169,123,84,.055) 1px,transparent 1px),
        linear-gradient(90deg,rgba(169,123,84,.055) 1px,transparent 1px);
    mask-image:linear-gradient(to right,transparent,#000000 57%,#000000 100%);
}

.sp-hero__glow { opacity:.08; }
.sp-hero__glow--blue { background:#ba875d; }
.sp-hero__glow--pink { background:#c89164; }

.sp-hero h1 {
    color:#1a3d40;
    font-size:clamp(48px,4.2vw,72px);
}

.sp-hero__lead {
    color:#59797c;
}

.sp-hero__contact {
    color:#8d8177;
}

.sp-hero__contact a {
    color:#1e4b4f;
}

.sp-hero__visual::before {
    border-color:rgba(187,136,94,.36);
    border-right-color:transparent;
    border-bottom-color:transparent;
    filter:drop-shadow(0 0 10px rgba(187,136,94,.16));
}

.sp-hero__visual-frame {
    border:1px solid rgba(112,72,47,.11);
    background:#ffffff;
    box-shadow:0 28px 70px rgba(91,61,41,.14);
}

.sp-hero__visual-frame::after {
    background:
        linear-gradient(90deg,rgba(255,255,255,.09),transparent 18%,transparent 84%,rgba(255,255,255,.08));
    box-shadow:none;
}

.sp-hero__visual-line {
    background:linear-gradient(90deg,transparent,#bb885e,#c89164,transparent);
    box-shadow:0 0 13px rgba(186,135,93,.28);
}

/* =========================================================
   HOME — TRUST
   ========================================================= */

.sp-trust {
    background:#ffffff;
    border-bottom:1px solid #eeeae4;
}

.sp-trust__item {
    border-color:#efebe6 !important;
}

.sp-trust__icon {
    border-color:rgba(186,135,93,.28);
    color:#a87a54;
    background:#f1fbfc;
    box-shadow:none;
}

.sp-trust__icon--pink {
    border-color:rgba(200,145,100,.22);
    color:#c58f62;
    background:#f2f8fd;
}

.sp-trust__item strong { color:#20474b; }
.sp-trust__item > div > span { color:#97897e; }

/* =========================================================
   HOME — SECTION BACKGROUNDS
   ========================================================= */

.sp-needs,
.sp-brands,
.sp-parts,
.sp-plotter-buy,
.sp-process {
    background:
        radial-gradient(circle at 9% 20%,rgba(186,135,93,.045),transparent 24%),
        linear-gradient(180deg,#f4f8fb 0%,#f7fafc 100%);
    border-color:#ede9e3;
}

.sp-service,
.sp-materials,
.sp-final-cta {
    background:#ffffff;
    border-color:#ede9e3;
}

.sp-needs::before,
.sp-service::before {
    opacity:.16;
    background-image:
        linear-gradient(rgba(160,116,80,.055) 1px,transparent 1px),
        linear-gradient(90deg,rgba(160,116,80,.055) 1px,transparent 1px);
}

.sp-service__orb,
.sp-needs__glow,
.sp-brands__glow,
.sp-parts__glow,
.sp-materials__orb,
.sp-plotter-buy__glow,
.sp-process__glow,
.sp-final-cta__glow {
    opacity:.055 !important;
}

/* headings */
.sp-needs h2,
.sp-service h2,
.sp-brands h2,
.sp-parts h2,
.sp-materials h2,
.sp-plotter-buy h2,
.sp-process__head h2,
.sp-final-cta__content h2 {
    color:#1a3e42;
}

/* body copy */
.sp-needs__intro,
.sp-service__lead,
.sp-service__text,
.sp-brands__head > p,
.sp-parts__head > p,
.sp-materials__lead,
.sp-materials__note,
.sp-plotter-buy__head > p,
.sp-process__head > p,
.sp-final-cta__content p:last-child {
    color:#8b7d72;
}

/* =========================================================
   HOME — GENERIC CARDS / PANELS
   ========================================================= */

.sp-need-card,
.sp-brand-card,
.sp-parts-finder,
.sp-parts-types,
.sp-materials__shop,
.sp-plotter-guide,
.sp-plotter-usecases,
.sp-service__panel,
.sp-process-step,
.sp-final-cta__panel {
    border-color:#ece7e0;
    background:#ffffff;
    box-shadow:0 14px 34px rgba(94,63,44,.065);
}

.sp-need-card:hover,
.sp-brand-card:is(a):hover {
    border-color:rgba(186,135,93,.38);
    box-shadow:0 20px 42px rgba(94,63,44,.095);
}

.sp-need-card h3,
.sp-brand-card__mark,
.sp-parts-step h3,
.sp-part-type h3,
.sp-material-card h3,
.sp-plotter-guide__step h3,
.sp-process-step h3 {
    color:#20464a;
}

.sp-need-card p,
.sp-parts-step p,
.sp-part-type p,
.sp-material-card p,
.sp-plotter-guide__step p,
.sp-process-step p {
    color:#97897e;
}

.sp-need-card__number,
.sp-service-card__number,
.sp-parts-step__number,
.sp-plotter-guide__number {
    color:#bfb3aa;
}

.sp-need-card__icon,
.sp-service-card__icon,
.sp-parts-step__icon,
.sp-part-type__icon,
.sp-material-card__icon {
    background:#f3fafc;
}

.sp-service__tags span {
    border-color:#eae5dd;
    background:#f6fafc;
    color:#897a6e;
}

.sp-service__panel {
    overflow:hidden;
}

.sp-service-card {
    border-color:#e0e9ee;
}

.sp-service-card:hover {
    background:#f6fbfc;
}

.sp-service-card h3 { color:#20464a; }
.sp-service-card p { color:#998c81; }

.sp-service__panel-foot {
    border-color:#ede9e3;
    background:#f7fafc;
    color:#97897d;
}

.sp-service__panel-foot a {
    color:#47888e !important;
}

.sp-brand-card__top { color:#aa9f95; }
.sp-brand-card__top span:first-child { color:#a27551; }
.sp-brand-card::after {
    background:rgba(186,135,93,.05);
}
.sp-brand-card--canon,
.sp-brand-card--other {
    --brand-accent:#c79064;
}
.sp-brand-card__link,
.sp-brand-card__button { color:#488a91 !important; }

.sp-brands__foot {
    border-color:#ece8e2;
    background:#ffffff;
    color:#8c7e72;
}
.sp-brands__foot strong { color:#20464a; }

.sp-parts-finder__head,
.sp-parts-types__head,
.sp-materials__shop-head,
.sp-plotter-guide__top,
.sp-plotter-usecases__top {
    border-color:#ede9e3;
}

.sp-parts-finder__head > div,
.sp-materials__shop-head strong,
.sp-plotter-guide__top strong,
.sp-plotter-usecases__top strong {
    color:#22484c;
}

.sp-parts-finder__head > span,
.sp-materials__shop-head > span,
.sp-plotter-guide__top > span,
.sp-plotter-usecases__top > span {
    color:#a2968c;
}

.sp-parts-step,
.sp-part-type,
.sp-material-card,
.sp-plotter-guide__step {
    border-color:#e0e9ee;
}

.sp-parts-step--pink,
.sp-part-type--pink,
.sp-material-card--pink,
.sp-plotter-guide__step--pink,
.sp-plotter-guide__step--violet {
    --step-accent:#c58f62;
    --part-accent:#c58f62;
    --material-accent:#c58f62;
    --guide-accent:#c58f62;
}

.sp-material-card:hover,
.sp-plotter-guide__step:hover {
    background:#f5fbfc;
}

.sp-materials__all {
    color:#46878d !important;
}

.sp-materials__route-line {
    background:#e6dfd6;
}

.sp-materials__route-node {
    background:#ffffff;
    border-color:#e6dfd5;
    color:#448389;
}

.sp-plotter-guide::after,
.sp-plotter-usecases::after,
.sp-materials__shop::after {
    opacity:.16;
}

.sp-process__line {
    background:#ece7e0;
}
.sp-process__line i {
    background:linear-gradient(90deg,#ba875d,#c89164);
    box-shadow:0 0 12px rgba(186,135,93,.12);
}

.sp-process-step__dot {
    border-color:#dfd6ca;
    background:#ffffff;
}

.sp-final-cta__panel {
    background:
        radial-gradient(circle at 12% 50%,rgba(186,135,93,.055),transparent 30%),
        radial-gradient(circle at 90% 50%,rgba(200,145,100,.045),transparent 30%),
        #f8fbfc;
}

.sp-final-cta__phone span { color:#93867b; }
.sp-final-cta__phone strong { color:#1f474b; }

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

.sp-footer {
    border-top:1px solid #ebe6e0;
    background:#eef5f8;
    color:#87796e;
}

.sp-footer__logo > span {
    background-image:url('../images/logo-serwisploterow-header-light.png');
}

.sp-footer__brand > p { color:#8d7f74; }

.sp-footer__contact-links a {
    color:#214b4f;
}

.sp-footer__nav > strong,
.sp-footer__locations > strong {
    color:#1d474b;
}

.sp-footer__nav a { color:#8a7c71; }
.sp-footer__locations div span { color:#2d585c; }
.sp-footer__locations p { color:#93857a; }

.sp-footer__bottom {
    border-color:#e8e3db;
    color:#96897f;
}

.sp-footer__credit,
.sp-footer__network a { color:#88796c; }
.sp-footer__network span { color:#a1968d; }

/* =========================================================
   SHARED SUBPAGE HEROES
   ========================================================= */

.sp-service-page-hero,
.sp-plotters-page-hero,
.sp-parts-page-hero,
.sp-business-page-hero,
.sp-about-page-hero,
.sp-contact-page-hero,
.sp-knowledge-hero,
.sp-brand-service-hero,
.sp-request-hero,
.sp-legal-hero,
.sp-article-hero {
    border-color:#ede8e2;
    background:
        radial-gradient(circle at 14% 26%,rgba(186,135,93,.075),transparent 29%),
        radial-gradient(circle at 88% 66%,rgba(200,145,100,.06),transparent 31%),
        linear-gradient(112deg,#ffffff 0%,#fbfdff 55%,#eef8fb 100%);
}

/* subpage hero titles */
.sp-service-page-hero h1,
.sp-plotters-page-hero h1,
.sp-parts-page-hero h1,
.sp-business-page-hero h1,
.sp-about-page-hero h1,
.sp-contact-page-hero h1,
.sp-knowledge-hero h1,
.sp-brand-service-hero h1,
.sp-request-hero h1,
.sp-legal-hero h1,
.sp-article-hero h1 {
    color:#1a3e42;
}

.sp-service-page-hero__lead,
.sp-plotters-page-hero__lead,
.sp-parts-page-hero__lead,
.sp-business-page-hero__lead,
.sp-about-page-hero__lead,
.sp-contact-page-hero__lead,
.sp-knowledge-hero__lead,
.sp-brand-service-hero__lead,
.sp-request-hero__lead,
.sp-legal-hero p,
.sp-article-hero__lead {
    color:#887a6e;
}

/* hero / side panels */
.sp-service-page-hero__side,
.sp-plotters-page-hero__panel,
.sp-parts-page-hero__finder,
.sp-business-page-hero__panel,
.sp-about-page-hero__facts article,
.sp-contact-page-hero__quick,
.sp-knowledge-hero__panel,
.sp-brand-service-hero__badge,
.sp-request__form-panel,
.sp-request__aside,
.sp-article-hero__media {
    border-color:#ebe6df;
    background:#ffffff;
    box-shadow:0 16px 42px rgba(94,63,44,.075);
}

.sp-service-page-hero__side strong,
.sp-plotters-page-hero__panel-head strong,
.sp-parts-page-hero__finder-head strong,
.sp-business-page-hero__panel-head strong,
.sp-about-page-hero__facts strong,
.sp-contact-page-hero__quick a,
.sp-knowledge-hero__panel > strong,
.sp-brand-service-hero__badge strong,
.sp-request__panel-head strong {
    color:#21494d !important;
}

.sp-service-page-hero__side li,
.sp-plotters-page-hero__steps li,
.sp-business-page-hero__panel li {
    color:#8d7f73;
}

/* =========================================================
   SHARED SUBPAGE SECTIONS
   ========================================================= */

.sp-service-page,
.sp-plotters-page,
.sp-parts-page,
.sp-business-page,
.sp-about-page,
.sp-contact-page,
.sp-knowledge-topics,
.sp-knowledge-posts,
.sp-brand-service,
.sp-brand-service-links,
.sp-request,
.sp-legal,
.sp-article--premium {
    background:#f7fafc;
}

.sp-service-page-brands,
.sp-plotters-page-guide,
.sp-plotters-page-info,
.sp-parts-page-flow,
.sp-business-process,
.sp-business-support,
.sp-about-page-network,
.sp-about-page-locations,
.sp-contact-page-service,
.sp-knowledge-cta,
.sp-brand-service-flow,
.sp-brand-service-faq,
.sp-brand-service-cta,
.sp-service-page-cta,
.sp-parts-page-cta,
.sp-business-contact,
.sp-about-page-cta,
.sp-plotters-page-cta,
.sp-article-related {
    border-color:#ede9e3;
    background:#ffffff;
}

/* section headings */
.sp-service-page__head h2,
.sp-service-page-brands h2,
.sp-plotters-page__head h2,
.sp-plotters-page-guide h2,
.sp-parts-page__head h2,
.sp-parts-page-flow h2,
.sp-business-page__head h2,
.sp-business-process h2,
.sp-business-support__head h2,
.sp-business-contact h2,
.sp-about-page__content h2,
.sp-about-page-network__head h2,
.sp-about-page-locations h2,
.sp-contact-page__aside h2,
.sp-contact-page-service h2,
.sp-knowledge-topics__head h2,
.sp-knowledge-posts__head h2,
.sp-knowledge-cta h2,
.sp-brand-service__head h2,
.sp-brand-service-flow h2,
.sp-brand-service-faq h2,
.sp-service-page-cta h2,
.sp-parts-page-cta h2,
.sp-business-contact h2,
.sp-about-page-cta h2,
.sp-plotters-page-cta h2,
.sp-legal__content h2,
.sp-legal__content h3,
.sp-article__content h2,
.sp-article__content h3,
.sp-article__content h4,
.sp-article-related__head h2 {
    color:#1d4549;
}

/* generic subpage paragraph colors */
.sp-service-page__head > p,
.sp-service-page-brands p,
.sp-plotters-page__head > p,
.sp-parts-page__head > p,
.sp-business-page__head > p,
.sp-business-support__head > p,
.sp-business-process__grid > div > p:last-child,
.sp-business-contact__grid > div > p:last-child,
.sp-about-page__content > p:not(.sp-section-kicker),
.sp-about-page-network__head > p,
.sp-about-page-locations__grid > div > p:last-child,
.sp-contact-page-service p:last-child,
.sp-knowledge-topics__head > p,
.sp-brand-service__head > p,
.sp-brand-service-flow__grid > div > p:last-child,
.sp-legal__content p,
.sp-legal__content li {
    color:#8c7e73;
}

/* =========================================================
   SHARED SUBPAGE CARDS
   ========================================================= */

.sp-service-page-card,
.sp-plotters-page-card,
.sp-plotters-page-guide__panel,
.sp-plotters-page-info__box,
.sp-parts-page-card,
.sp-business-card,
.sp-business-process__steps,
.sp-business-support__grid a,
.sp-business-contact__box,
.sp-about-page__principles,
.sp-about-page-network__grid a,
.sp-about-page-locations__cards article,
.sp-contact-page__form-panel,
.sp-contact-page__aside,
.sp-knowledge-topic,
.sp-knowledge-empty,
.sp-brand-service-card,
.sp-brand-service-flow__steps,
.sp-brand-service-links__grid a,
.sp-brand-service-faq__list,
.sp-service-page-brands__links,
.sp-legal__toc,
.sp-legal__table-wrap,
.sp-article__aside-card,
.sp-article__aside-links,
.sp-article-related__card {
    border-color:#ebe6e0;
    background:#ffffff;
    box-shadow:0 12px 30px rgba(94,63,44,.055);
}

/* card titles */
.sp-service-page-card h3,
.sp-plotters-page-card h3,
.sp-parts-page-card h3,
.sp-business-card h3,
.sp-business-process__steps strong,
.sp-business-support__grid strong,
.sp-about-page__principles strong,
.sp-about-page-network__grid strong,
.sp-about-page-locations__cards strong,
.sp-contact-page__aside h2,
.sp-contact-page__location strong,
.sp-contact-page__direct strong,
.sp-knowledge-topic h3,
.sp-brand-service-card h3,
.sp-brand-service-flow__steps strong,
.sp-brand-service-links__grid strong,
.sp-brand-service-faq summary,
.sp-service-page-brands__links strong,
.sp-article__aside-card h2,
.sp-article__aside-links strong,
.sp-article-related__card h3 a {
    color:#20474b !important;
}

/* card body */
.sp-service-page-card p,
.sp-plotters-page-card p,
.sp-parts-page-card p,
.sp-business-card p,
.sp-business-process__steps p,
.sp-business-support__grid p,
.sp-about-page__principles p,
.sp-about-page-network__grid p,
.sp-about-page-locations__cards p,
.sp-contact-page__location p,
.sp-contact-page__direct small,
.sp-knowledge-topic p,
.sp-brand-service-card p,
.sp-brand-service-flow__steps p,
.sp-brand-service-links__grid p,
.sp-brand-service-faq details p,
.sp-article__aside-card > p:last-of-type {
    color:#93857a;
}

/* CTA panels */
.sp-service-page-cta__panel,
.sp-parts-page-cta__panel,
.sp-business-contact__box,
.sp-about-page-cta__panel,
.sp-plotters-page-cta__panel,
.sp-contact-page-service__panel,
.sp-knowledge-cta__panel,
.sp-brand-service-cta__panel {
    border-color:#ebe6df;
    background:
        radial-gradient(circle at 10% 50%,rgba(186,135,93,.045),transparent 30%),
        #f7fbfc;
    box-shadow:0 12px 34px rgba(94,63,44,.055);
}

.sp-service-page-cta__phone strong,
.sp-parts-page-cta__phone strong,
.sp-about-page-cta__phone strong,
.sp-plotters-page-cta__phone strong {
    color:#20484c;
}

/* =========================================================
   CONTACT / SERVICE FORMS
   ========================================================= */

.sp-contact-page__panel-head,
.sp-request__panel-head {
    border-color:#ede9e3;
}

.sp-contact-page__panel-head strong,
.sp-request__panel-head strong {
    color:#20484c;
}

.sp-contact-page__panel-head > span,
.sp-request__panel-head > span {
    color:#a69a90;
}

.sp-contact-page__direct,
.sp-request-contact,
.sp-request-checklist {
    border-color:#ebe6e0;
    background:#f7fafc;
}

.sp-contact-page__direct a,
.sp-request-contact a,
.sp-request__aside-call strong {
    color:#20484c !important;
}

.sp-field label {
    color:#335b5f;
}

.sp-field input,
.sp-field textarea,
.sp-field select {
    border-color:#e5dfd8 !important;
    background:#ffffff !important;
    color:#204448 !important;
    box-shadow:none !important;
}

.sp-field input::placeholder,
.sp-field textarea::placeholder {
    color:#b8ada4;
}

.sp-field input:focus,
.sp-field textarea:focus,
.sp-field select:focus {
    border-color:#ba875d !important;
    box-shadow:0 0 0 3px rgba(186,135,93,.09) !important;
}

.sp-field--consent label {
    color:#8a7b6f;
}

.sp-field--consent a {
    color:#488a91 !important;
}

.sp-service-form__foot {
    border-color:#ede9e3;
    background:#f7fafc;
}

.sp-service-form__foot strong { color:#315b5f; }
.sp-service-form__foot span { color:#9a8d83; }

.sp-form-message--success {
    border-color:#e2d9cd;
    background:#f1fbf7;
    color:#305e63;
}
.sp-form-message--error {
    border-color:#ecd2d2;
    background:#fff7f7;
    color:#8b4747;
}

/* =========================================================
   KNOWLEDGE BASE / BLOG
   ========================================================= */

.sp-knowledge-hero__panel {
    background:#ffffff;
}

.sp-knowledge-search input {
    border-color:#e4ded6;
    background:#f8fbfc;
    color:#20484c;
}

.sp-knowledge-search button {
    background:linear-gradient(100deg,#ba875d,#c89164);
}

.sp-knowledge-topic--pink,
.sp-knowledge-topic--violet {
    --knowledge-accent:#c48e62;
}

/* keep image cards dark for readability over photos */
.sp-knowledge-card--visual {
    border-color:#e4ddd4;
    box-shadow:0 18px 44px rgba(94,63,44,.12);
}

.sp-knowledge-card__category {
    background:linear-gradient(110deg,#ab7c56,#c58f62);
}

.sp-knowledge-card__number {
    background:linear-gradient(145deg,#a07450,#c58f62);
}

.sp-knowledge-pagination a,
.sp-knowledge-pagination span {
    border-color:#e7e2da;
    background:#ffffff;
    color:#87786c !important;
}

.sp-knowledge-pagination .current {
    background:linear-gradient(100deg,#ba875d,#c89164);
}

/* single article */
.sp-article-hero__category {
    background:linear-gradient(110deg,#ab7c56,#c58f62);
}

.sp-article__back { color:#8f7b6a !important; }
.sp-article-hero__meta { color:#9a8b7f; }
.sp-article-hero__phone small { color:#9e9084; }
.sp-article-hero__phone strong { color:#20484c; }

.sp-article__content {
    color:#507073;
}

.sp-article__content strong { color:#21484c; }

.sp-article__content blockquote {
    border-color:#ba875d;
    background:#f1fafb;
    color:#43696d;
}

.sp-article__content table {
    border-color:#eae5df;
    background:#ffffff;
}

.sp-article__content th,
.sp-article__content td {
    border-color:#ede9e3;
}

.sp-article__content th {
    color:#21484c;
    background:#f2f7f9;
}

.sp-article__endnote {
    border-color:#e9e2d8;
    background:#f4fbfc;
}

.sp-article__endnote strong { color:#21484c; }
.sp-article__endnote p { color:#8c7e73; }

/* Gutenberg buttons in articles */
.sp-article__content .wp-block-button.is-style-sp-primary .wp-block-button__link {
    background:
        linear-gradient(#ffffff,#ffffff) padding-box,
        linear-gradient(90deg,#ba875d,#c89164) border-box;
    color:#20484c !important;
    box-shadow:0 9px 22px rgba(94,63,44,.08);
}

.sp-article__content .wp-block-button.is-style-sp-primary .wp-block-button__link::after {
    color:#a17550;
}

.sp-article__content .wp-block-button.is-style-sp-outline .wp-block-button__link {
    border-color:#e1dad1;
    background:#f7fafc;
    color:#325b5f !important;
}

/* =========================================================
   BRAND SERVICE HP / CANON
   ========================================================= */

.sp-brand-service-hero--canon {
    background:
        radial-gradient(circle at 12% 28%,rgba(186,135,93,.07),transparent 30%),
        radial-gradient(circle at 88% 67%,rgba(200,145,100,.055),transparent 31%),
        linear-gradient(112deg,#ffffff,#fbfdff 55%,#eef8fb);
}

.sp-brand-service-hero__badge {
    background:
        radial-gradient(circle at 82% 28%,rgba(186,135,93,.07),transparent 34%),
        #ffffff;
}

.sp-brand-service-hero__badge--canon {
    background:
        radial-gradient(circle at 82% 28%,rgba(200,145,100,.065),transparent 34%),
        #ffffff;
}

.sp-brand-service-hero__badge > span {
    color:#1e565b;
}

/* =========================================================
   LEGAL
   ========================================================= */

.sp-legal__toc {
    background:#ffffff;
}

.sp-legal__toc strong { color:#20484c; }
.sp-legal__toc a { color:#8d7e72 !important; }

.sp-legal__content section {
    border-color:#ede9e3;
}

.sp-legal__content a {
    color:#488a91 !important;
}

.sp-legal__note {
    border-color:#e9e2d8;
    background:#f3fbfc;
    color:#87786c;
}

.sp-legal__table {
    background:#ffffff;
}

.sp-legal__table th {
    color:#20484c;
    background:#f2f7f9;
}

.sp-legal__table th,
.sp-legal__table td {
    border-color:#ede9e3;
    color:#87796d;
}

/* =========================================================
   MOBILE LIGHT
   ========================================================= */

@media(max-width:720px){
    .sp-hero {
        background:
            radial-gradient(circle at 90% 68%,rgba(186,135,93,.09),transparent 32%),
            linear-gradient(180deg,#ffffff,#f0f8fb);
    }

    .sp-topbar { background:#edf5f8; }

    .sp-brand {
        flex-basis:210px;
        height:60px;
    }

    .sp-nav {
        background:#ffffff;
    }

    .sp-footer__logo {
        width:240px;
    }

    .sp-article-hero__media {
        box-shadow:0 14px 34px rgba(94,63,44,.10);
    }
}

/* =========================================================
   FINAL NEUTRALIZATION OF DARK INLINE COLORS
   ========================================================= */

.sp-site .sp-request__status-dot,
.sp-site .sp-parts-finder__status,
.sp-site .sp-materials__shop-status,
.sp-site .sp-plotter-guide__status,
.sp-site .sp-plotter-usecases__status {
    background:#ba875d;
    box-shadow:0 0 10px rgba(186,135,93,.28);
}

.sp-site [class*="--pink"] {
    --brand-accent:#c58f62;
    --service-accent:#c58f62;
    --material-accent:#c58f62;
    --step-accent:#c58f62;
    --part-accent:#c58f62;
    --guide-accent:#c58f62;
    --business-accent:#c58f62;
    --knowledge-accent:#c58f62;
}


/* =========================================================
   LIGHT v23.1 — GLOBALNA TYPOGRAFIA Z PEŁNYMI POLSKIMI ZNAKAMI
   Segoe UI ma pełny zestaw PL i eliminuje fallback pojedynczych
   glifów (ą ć ę ł ń ó ś ź ż) do innej, cięższej czcionki.
   ========================================================= */

body.sp-site,
body.sp-site button,
body.sp-site input,
body.sp-site select,
body.sp-site textarea,
body.sp-site option {
    font-family:"Segoe UI", Arial, Helvetica, sans-serif !important;
    font-synthesis:none;
}

/* Elementy, które w motywie mają własne ustawienia typografii */
body.sp-site h1,
body.sp-site h2,
body.sp-site h3,
body.sp-site h4,
body.sp-site h5,
body.sp-site h6,
body.sp-site p,
body.sp-site a,
body.sp-site span,
body.sp-site strong,
body.sp-site small,
body.sp-site li,
body.sp-site label,
body.sp-site summary,
body.sp-site blockquote,
body.sp-site table,
body.sp-site th,
body.sp-site td,
body.sp-site .sp-btn {
    font-family:"Segoe UI", Arial, Helvetica, sans-serif !important;
    font-synthesis:none;
}

/* Bez syntetycznego pogrubiania przy nietypowych wagach 800+ */
body.sp-site strong,
body.sp-site b {
    font-synthesis:none;
}


/* =========================================================
   LIGHT v24 — KONTRAST / KOMPAKTOWE FORMULARZE / BLOG
   ========================================================= */

/* --- 1. Kontrast tekstów i linków na stronie głównej --- */

.sp-need-card__link {
    color:#48898f !important;
    font-weight:800;
}

.sp-need-card__link::after {
    color:#ac7d56;
}

.sp-need-card h3 {
    color:#20484c !important;
}

.sp-need-card p {
    color:#8f8074 !important;
}

.sp-service__phone span {
    color:#8d7d70 !important;
}

.sp-service__phone strong {
    color:#214e52 !important;
}

.sp-service__phone:hover strong {
    color:#a17550 !important;
}

.sp-service__panel-head {
    border-color:#ede8e2 !important;
    background:#f8fbfc !important;
}

.sp-service__panel-head > div > span:last-child {
    color:#2f5a5e !important;
}

.sp-service__panel-code {
    color:#a79a90 !important;
}

.sp-brand-card h3 {
    color:#234b4f !important;
}

.sp-brand-card p {
    color:#938478 !important;
}

.sp-brand-card__link {
    color:#48898f !important;
}

.sp-brand-card__link span {
    color:#ac7d56 !important;
}

.sp-brand-card__device {
    border-color:#e5dacc !important;
    color:#9a704d !important;
    background:#edf9fb !important;
}

.sp-brand-card__button {
    border-color:#e1d3c0 !important;
    color:#448288 !important;
    background:#edf9fb !important;
}

.sp-brand-card__button:hover {
    border-color:#af7f58 !important;
    background:#f8f3ec !important;
}

/* --- 2. Pasek "Nie wiesz, którą ścieżkę wybrać?" --- */

.sp-needs__foot {
    border:0 !important;
    background:
        linear-gradient(105deg,#f6eee3 0%,#f2e7d9 48%,#faf2e8 100%) !important;
    box-shadow:0 10px 28px rgba(126,74,41,.10);
}

.sp-needs__foot p {
    color:#446e72 !important;
}

.sp-needs__foot strong {
    color:#1e4b50 !important;
}

.sp-needs__foot a {
    color:#1d6168 !important;
}

.sp-needs__foot a span {
    color:#a17550 !important;
}

/* Analogiczny dolny pasek marek */
.sp-brands__foot {
    border-color:#eae3da !important;
    background:#f2fafb !important;
}

.sp-brands__foot p {
    color:#867668 !important;
}

.sp-brands__foot p strong {
    color:#234c50 !important;
}

.sp-brands__foot > a {
    color:#47888e !important;
}

.sp-brands__foot > a span {
    color:#ac7d56 !important;
}

/* --- 3. Pozostałe blade teksty i numery telefonu --- */

.sp-final-cta__phone strong,
.sp-service-page-cta__phone strong,
.sp-parts-page-cta__phone strong,
.sp-about-page-cta__phone strong,
.sp-plotters-page-cta__phone strong,
.sp-article-hero__phone strong {
    color:#214e53 !important;
}

.sp-final-cta__phone span,
.sp-service-page-cta__phone span,
.sp-parts-page-cta__phone span,
.sp-about-page-cta__phone span,
.sp-plotters-page-cta__phone span {
    color:#8f8074 !important;
}

.sp-contact-page-hero__quick small {
    color:#8f7f72 !important;
}

.sp-contact-page__direct span {
    color:#8d7d70 !important;
}

.sp-contact-page__direct a {
    color:#214e53 !important;
}

.sp-contact-page__location a {
    color:#47888e !important;
}

/* --- 4. Formularze: mniejsze, proporcjonalne do jasnego layoutu --- */

.sp-request {
    padding:54px 0 62px !important;
}

.sp-request__layout {
    grid-template-columns:minmax(0, .98fr) minmax(285px, .54fr) !important;
    max-width:1180px;
    margin-inline:auto;
    gap:18px !important;
}

.sp-request__form-panel,
.sp-request__aside,
.sp-contact-page__form-panel,
.sp-contact-page__aside {
    border-radius:15px !important;
    box-shadow:0 10px 30px rgba(94,63,44,.055) !important;
}

.sp-service-form,
.sp-contact-form {
    padding:20px 20px 0 !important;
}

.sp-form-grid {
    gap:14px !important;
}

.sp-field {
    gap:6px !important;
}

.sp-field label {
    font-size:11.5px !important;
}

.sp-field input[type="text"],
.sp-field input[type="tel"],
.sp-field input[type="email"],
.sp-field select {
    min-height:44px !important;
    padding:0 12px !important;
    font-size:13px !important;
}

.sp-field textarea {
    min-height:105px !important;
    padding:11px 12px !important;
    font-size:13px !important;
}

.sp-field input[type="file"] {
    min-height:46px !important;
    padding:8px 10px !important;
    font-size:12px !important;
}

.sp-service-form__foot {
    min-height:70px !important;
    padding:13px 20px !important;
}

.sp-service-form__submit {
    min-height:44px !important;
}

.sp-request__aside {
    padding:22px !important;
}

.sp-contact-page {
    padding:54px 0 62px !important;
}

.sp-contact-page__layout {
    grid-template-columns:minmax(0, .98fr) minmax(290px, .52fr) !important;
    max-width:1180px;
    margin-inline:auto;
    gap:18px !important;
}

.sp-contact-page__aside {
    padding:22px !important;
}

.sp-contact-page__aside h2 {
    font-size:26px !important;
    margin-bottom:18px !important;
}

/* --- 5. Baza wiedzy: lekkie, klasyczne karty zamiast ciemnych overlayów --- */

.sp-knowledge-posts__grid {
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:18px !important;
}

.sp-knowledge-card--light {
    overflow:hidden;
    border:1px solid #eae5dd !important;
    border-radius:16px !important;
    background:#ffffff !important;
    box-shadow:0 12px 32px rgba(94,63,44,.065) !important;
    transition:transform .24s ease, box-shadow .24s ease, border-color .24s ease;
}

.sp-knowledge-card--light:hover {
    transform:translateY(-4px);
    border-color:#e0d3c1 !important;
    box-shadow:0 18px 42px rgba(94,63,44,.095) !important;
}

.sp-knowledge-card--light .sp-knowledge-card__image {
    position:relative;
    display:block;
    height:205px;
    overflow:hidden;
    border-bottom:1px solid #ede9e3;
    background:#eef6f8;
}

.sp-knowledge-card--light .sp-knowledge-card__image img {
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
    transition:transform .35s ease;
}

.sp-knowledge-card--light:hover .sp-knowledge-card__image img {
    transform:scale(1.025);
}

.sp-knowledge-card--light .sp-knowledge-card__placeholder {
    width:100%;
    height:100%;
    display:grid;
    place-items:center;
    color:#b5a699;
    font-size:38px;
    font-weight:800;
}

.sp-knowledge-card--light .sp-knowledge-card__content {
    padding:20px 20px 21px;
}

.sp-knowledge-card--light .sp-knowledge-card__topline {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
}

.sp-knowledge-card--light .sp-knowledge-card__category {
    position:static !important;
    display:inline-flex;
    max-width:none;
    padding:6px 9px;
    border-radius:6px;
    background:#f8f4ee !important;
    color:#48898f !important;
    box-shadow:none !important;
    font-size:9px !important;
    font-weight:800 !important;
    letter-spacing:.05em !important;
}

.sp-knowledge-card--light .sp-knowledge-card__number {
    position:static !important;
    width:auto !important;
    height:auto !important;
    display:block !important;
    border-radius:0 !important;
    background:none !important;
    color:#b9aea5 !important;
    box-shadow:none !important;
    font-size:10px !important;
    font-weight:800 !important;
}

.sp-knowledge-card--light h3 {
    margin:16px 0 0;
    font-size:19px;
    line-height:1.2;
    letter-spacing:-.025em;
}

.sp-knowledge-card--light h3 a {
    color:#20484c !important;
}

.sp-knowledge-card--light p {
    margin:10px 0 0;
    min-height:58px;
    color:#918276 !important;
    font-size:12.5px;
    line-height:1.58;
}

.sp-knowledge-card__more {
    display:inline-flex;
    align-items:center;
    gap:8px;
    margin-top:18px;
    color:#48898f !important;
    font-size:11.5px;
    font-weight:800;
}

.sp-knowledge-card__more span {
    color:#ac7d56;
}

/* --- 6. Mobile --- */

@media(max-width:900px){
    .sp-request__layout,
    .sp-contact-page__layout {
        grid-template-columns:1fr !important;
    }

    .sp-knowledge-posts__grid {
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    }
}

@media(max-width:620px){
    .sp-needs__foot {
        align-items:flex-start !important;
        flex-direction:column !important;
        gap:8px !important;
        padding:16px 17px !important;
    }

    .sp-form-grid {
        grid-template-columns:1fr !important;
    }

    .sp-field--full {
        grid-column:auto !important;
    }

    .sp-knowledge-posts__grid {
        grid-template-columns:1fr !important;
    }

    .sp-knowledge-card--light .sp-knowledge-card__image {
        height:190px;
    }
}


/* =========================================================
   LIGHT v24.1 — CZYTELNOŚĆ POZOSTAŁYCH ELEMENTÓW
   ========================================================= */

/* 1. Pasek pod wyszukiwaniem części */
.sp-parts-finder__foot {
    border-top:1px solid #e7ddcf !important;
    background:
        linear-gradient(105deg,#f6eee3 0%,#f1e6d7 52%,#f9f1e6 100%) !important;
}

.sp-parts-finder__foot strong {
    color:#1e4b50 !important;
}

.sp-parts-finder__foot span {
    color:#806e60 !important;
}

.sp-parts-finder__foot .sp-btn {
    color:#ffffff !important;
}

/* 2. Dolny pasek sekcji części */
.sp-parts__foot {
    border-color:#e9e0d5 !important;
    background:
        linear-gradient(105deg,#f8f2ea 0%,#f2e8dc 48%,#f9f2e9 100%) !important;
    box-shadow:0 10px 26px rgba(126,74,41,.075);
}

.sp-parts__foot p {
    color:#53797d !important;
}

.sp-parts__foot p strong {
    color:#1e4b50 !important;
}

.sp-parts__foot > a {
    color:#46868c !important;
}

.sp-parts__foot > a span {
    color:#aa7b55 !important;
}

/* 3. Nagłówki i teksty w blokach typów części */
.sp-parts-types__head p {
    color:#224c50 !important;
}

.sp-parts-types__head span {
    color:#8c7c6f !important;
}

.sp-part-type h3 {
    color:#224a4e !important;
}

.sp-part-type p {
    color:#918276 !important;
}

/* 4. Ścieżka Serwis Ploterów -> MyToner */
.sp-materials__route-node {
    border-color:#e5dbcd !important;
    background:#ffffff !important;
    color:#214e52 !important;
    box-shadow:none !important;
}

.sp-materials__route-node--service {
    box-shadow:inset 3px 0 0 #ba875d !important;
}

.sp-materials__route-node--shop {
    box-shadow:inset -3px 0 0 #c89164 !important;
}

.sp-materials__route-node small {
    color:#8a7b6f !important;
}

.sp-materials__route-line {
    height:2px !important;
    background:linear-gradient(90deg,#ba875d,#b5835a,#c89164) !important;
    box-shadow:none !important;
}

.sp-materials__route-line::before,
.sp-materials__route-line::after {
    width:9px !important;
    height:9px !important;
    border:2px solid #ffffff;
    background:#ba875d !important;
    box-shadow:0 0 0 2px rgba(186,135,93,.18) !important;
}

.sp-materials__route-line::after {
    background:#c89164 !important;
    box-shadow:0 0 0 2px rgba(200,145,100,.16) !important;
}

.sp-materials__route-line i {
    top:-4px !important;
    width:10px !important;
    height:10px !important;
    border:2px solid #ffffff;
    background:#a17550 !important;
    box-shadow:0 0 0 3px rgba(186,135,93,.16) !important;
}

.sp-materials__note {
    color:#806f61 !important;
}

/* 5. Proces: jasne karty także po najechaniu */
.sp-process-step {
    border-color:#ebe5de !important;
    background:#ffffff !important;
    box-shadow:0 11px 28px rgba(94,63,44,.05);
}

.sp-process-step:hover {
    transform:translateY(-5px) !important;
    border-color:#dfd1bf !important;
    background:
        linear-gradient(145deg,#f2fbfc 0%,#ffffff 65%,#f1f7fb 100%) !important;
    box-shadow:0 18px 40px rgba(94,63,44,.09) !important;
}

.sp-process-step__icon {
    border-color:#e4d9ca !important;
    color:#a17550 !important;
    background:#edf9fa !important;
}

.sp-process-step:hover .sp-process-step__icon {
    box-shadow:0 8px 20px rgba(186,135,93,.10) !important;
}

.sp-process-step__number {
    color:#a39487 !important;
}

.sp-process-step h3 {
    color:#214b4f !important;
}

.sp-process-step p {
    color:#8c7c6f !important;
}

/* Widoczna kropka nad kartą procesu */
.sp-process-step__dot {
    width:14px !important;
    height:14px !important;
    border:3px solid #ffffff !important;
    background:#ba875d !important;
    box-shadow:
        0 0 0 2px rgba(186,135,93,.28),
        0 3px 10px rgba(186,135,93,.16) !important;
}

.sp-process-step--pink .sp-process-step__dot,
.sp-process-step--violet .sp-process-step__dot,
.sp-process-step--blue .sp-process-step__dot,
.sp-process-step--cyan .sp-process-step__dot {
    background:#c89164 !important;
    box-shadow:
        0 0 0 2px rgba(200,145,100,.24),
        0 3px 10px rgba(200,145,100,.14) !important;
}

/* 6. Pasek pod procesem */
.sp-process__foot {
    border-color:#e9e1d7 !important;
    background:
        linear-gradient(105deg,#f8f2ea 0%,#f3ebe1 52%,#f8f2eb 100%) !important;
}

.sp-process__foot strong {
    color:#214c50 !important;
}

.sp-process__foot span {
    color:#877668 !important;
}

/* Dodatkowe zabezpieczenie przed jasnymi tekstami z dark */
.sp-site .sp-parts-finder__foot *,
.sp-site .sp-parts__foot *,
.sp-site .sp-process__foot * {
    text-shadow:none !important;
}

@media(max-width:720px){
    .sp-parts-finder__foot,
    .sp-parts__foot,
    .sp-process__foot {
        align-items:flex-start !important;
        flex-direction:column !important;
        gap:10px !important;
    }

    .sp-parts-finder__foot .sp-btn {
        width:100%;
    }
}


/* =========================================================
   LIGHT v24.2 — FINDER CZĘŚCI: JASNE KARTY + HOVER
   ========================================================= */

.sp-parts-finder__steps {
    background:#ffffff !important;
}

.sp-parts-step {
    min-height:230px !important;
    border-color:#ede9e3 !important;
    background:#ffffff !important;
    transition:
        transform .24s ease,
        background .24s ease,
        border-color .24s ease,
        box-shadow .24s ease !important;
}

.sp-parts-step:hover {
    transform:translateY(-4px) !important;
    border-color:#e3d7c7 !important;
    background:
        linear-gradient(145deg,#effafb 0%,#ffffff 62%,#f3f8fc 100%) !important;
    box-shadow:0 14px 32px rgba(94,63,44,.075) !important;
}

.sp-parts-step__number {
    color:#a49588 !important;
}

.sp-parts-step__icon {
    border-color:#e5dacb !important;
    color:#a17550 !important;
    background:#eef9fa !important;
    box-shadow:none !important;
}

.sp-parts-step--pink .sp-parts-step__icon,
.sp-parts-step--violet .sp-parts-step__icon {
    border-color:#ebe0d1 !important;
    color:#c58f62 !important;
    background:#f0f7fd !important;
}

.sp-parts-step:hover .sp-parts-step__icon {
    transform:translateY(-2px) scale(1.035) !important;
    box-shadow:0 8px 20px rgba(186,135,93,.10) !important;
}

.sp-parts-step h3 {
    color:#214b4f !important;
}

.sp-parts-step p {
    color:#8c7d70 !important;
}

/* Kafelki poniżej — typy części */
.sp-part-type {
    border-color:#ede9e3 !important;
    background:#ffffff !important;
    transition:
        transform .24s ease,
        background .24s ease,
        border-color .24s ease,
        box-shadow .24s ease !important;
}

.sp-part-type:hover {
    transform:translateY(-3px) !important;
    border-color:#e4d9ca !important;
    background:
        linear-gradient(145deg,#f2fbfc 0%,#ffffff 68%,#f3f8fc 100%) !important;
    box-shadow:0 12px 28px rgba(94,63,44,.065) !important;
}

.sp-part-type__icon {
    border-color:#e6dccf !important;
    color:#a17550 !important;
    background:#eef9fa !important;
    box-shadow:none !important;
}

.sp-part-type--pink .sp-part-type__icon,
.sp-part-type--violet .sp-part-type__icon {
    border-color:#ebe0d1 !important;
    color:#c58f62 !important;
    background:#f1f7fd !important;
}

.sp-part-type:hover .sp-part-type__icon {
    transform:translateY(-2px) scale(1.035) !important;
    box-shadow:0 7px 18px rgba(186,135,93,.09) !important;
}

.sp-part-type h3 {
    color:#214b4f !important;
}

.sp-part-type p {
    color:#908174 !important;
}


/* =========================================================
   LIGHT v24.3 — FORMULARZE POZIOMO + POPRAWA CZYTELNOŚCI
   ========================================================= */

/* ---------- ZGŁOSZENIE SERWISOWE ---------- */

.sp-request__stack {
    max-width:1120px;
    margin-inline:auto;
}

.sp-request__aside--horizontal {
    position:static !important;
    display:grid !important;
    grid-template-columns:minmax(230px,.65fr) minmax(0,1.6fr);
    gap:24px !important;
    margin-bottom:18px;
    padding:22px 24px !important;
    border:1px solid #eae5dd !important;
    border-radius:15px !important;
    background:#ffffff !important;
    box-shadow:0 10px 28px rgba(94,63,44,.05) !important;
}

.sp-request__aside-intro h2 {
    margin:7px 0 14px !important;
    color:#20484c !important;
    font-size:23px !important;
    line-height:1.12 !important;
    letter-spacing:-.025em;
}

.sp-request__quick-phone {
    display:inline-flex;
    flex-direction:column;
    gap:2px;
    color:#827163 !important;
}

.sp-request__quick-phone span {
    font-size:10px;
}

.sp-request__quick-phone strong {
    color:#48898f !important;
    font-size:14px;
}

.sp-request__aside--horizontal .sp-request-checklist {
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:0;
}

.sp-request__aside--horizontal .sp-request-checklist li {
    display:grid;
    grid-template-columns:34px minmax(0,1fr);
    gap:10px;
    padding:5px 16px !important;
    border-top:0 !important;
    border-left:1px solid #e0e9ee;
}

.sp-request__aside--horizontal .sp-request-checklist li:first-child {
    border-left:0;
}

.sp-request__aside--horizontal .sp-request-checklist li > span {
    width:30px !important;
    height:30px !important;
    border-color:#e5d9ca !important;
    background:#eef9fa !important;
    color:#a17550 !important;
}

.sp-request__aside--horizontal .sp-request-checklist strong {
    color:#20484c !important;
    font-size:12.5px !important;
}

.sp-request__aside--horizontal .sp-request-checklist p {
    margin-top:4px !important;
    color:#8f8073 !important;
    font-size:11px !important;
    line-height:1.5 !important;
}

.sp-request__form-wrap {
    max-width:900px;
    margin-inline:auto;
}

.sp-request__form-wrap .sp-request__form-panel {
    width:100%;
}

.sp-request__form-wrap .sp-service-form {
    padding:18px 18px 0 !important;
}

.sp-request__form-wrap .sp-form-grid {
    gap:12px !important;
}

.sp-request__form-wrap .sp-field input[type="text"],
.sp-request__form-wrap .sp-field input[type="tel"],
.sp-request__form-wrap .sp-field input[type="email"],
.sp-request__form-wrap .sp-field select {
    min-height:41px !important;
}

.sp-request__form-wrap .sp-field textarea {
    min-height:90px !important;
}

.sp-request__form-wrap .sp-field input[type="file"] {
    min-height:42px !important;
}

.sp-request__form-wrap .sp-service-form__foot {
    min-height:60px !important;
    margin-top:14px !important;
    padding:10px 18px !important;
}

/* ---------- KONTAKT ---------- */

.sp-contact-page__stack {
    max-width:1080px;
    margin-inline:auto;
}

.sp-contact-page__aside--horizontal {
    position:static !important;
    display:block !important;
    margin-bottom:18px;
    padding:21px 22px !important;
    border:1px solid #eae5dd !important;
    border-radius:15px !important;
    background:#ffffff !important;
    box-shadow:0 10px 28px rgba(94,63,44,.05) !important;
}

.sp-contact-page__aside-head {
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:30px;
    padding-bottom:15px;
    border-bottom:1px solid #e0e9ee;
}

.sp-contact-page__aside-head h2 {
    margin:0 !important;
    color:#20484c !important;
    font-size:24px !important;
}

.sp-contact-page__contact-grid {
    display:grid;
    grid-template-columns:1fr 1fr .9fr;
    gap:0;
}

.sp-contact-page__aside--horizontal .sp-contact-page__location,
.sp-contact-page__aside--horizontal .sp-contact-page__direct {
    margin:0 !important;
    padding:16px 18px !important;
    border:0 !important;
    border-left:1px solid #e0e9ee !important;
    border-radius:0 !important;
    background:transparent !important;
}

.sp-contact-page__aside--horizontal .sp-contact-page__location:first-child {
    border-left:0 !important;
}

.sp-contact-page__aside--horizontal .sp-contact-page__location strong {
    margin-top:8px !important;
    color:#20484c !important;
    font-size:15px !important;
}

.sp-contact-page__aside--horizontal .sp-contact-page__location p {
    margin:3px 0 4px !important;
    color:#918275 !important;
    font-size:11.5px !important;
}

.sp-contact-page__aside--horizontal .sp-contact-page__location a {
    color:#48898f !important;
    font-size:10.5px !important;
}

.sp-contact-page__aside--horizontal .sp-contact-page__direct {
    display:flex !important;
    flex-direction:column;
    gap:3px !important;
}

.sp-contact-page__aside--horizontal .sp-contact-page__direct span {
    margin:5px 0 2px !important;
    color:#a17550 !important;
    font-size:8.5px !important;
}

.sp-contact-page__aside--horizontal .sp-contact-page__direct a {
    color:#20484c !important;
    font-size:12px !important;
}

.sp-contact-page__form-wrap {
    max-width:860px;
    margin-inline:auto;
}

.sp-contact-page__form-wrap .sp-contact-page__form-panel {
    width:100%;
}

.sp-contact-page__form-wrap .sp-contact-form {
    padding:18px 18px 0 !important;
}

.sp-contact-page__form-wrap .sp-form-grid {
    gap:12px !important;
}

.sp-contact-page__form-wrap .sp-field input[type="text"],
.sp-contact-page__form-wrap .sp-field input[type="tel"],
.sp-contact-page__form-wrap .sp-field input[type="email"],
.sp-contact-page__form-wrap .sp-field select {
    min-height:41px !important;
}

.sp-contact-page__form-wrap .sp-field textarea {
    min-height:88px !important;
}

.sp-contact-page__form-wrap .sp-service-form__foot {
    min-height:60px !important;
    margin-top:14px !important;
    padding:10px 18px !important;
}

/* ---------- PLOTTERY: DOBÓR KROK PO KROKU ---------- */

.sp-plotters-page-guide__panel {
    border-color:#eae5dd !important;
    background:#ffffff !important;
    box-shadow:0 10px 28px rgba(94,63,44,.05) !important;
}

.sp-plotters-page-guide__panel article {
    border-color:#e0e9ee !important;
    background:#ffffff !important;
}

.sp-plotters-page-guide__panel article:hover {
    background:#f4fbfc !important;
}

.sp-plotters-page-guide__panel article > span {
    border-color:#e5dacb !important;
    background:#eef9fa !important;
    color:#a17550 !important;
}

.sp-plotters-page-guide__panel strong {
    color:#20484c !important;
    font-size:13.5px !important;
}

.sp-plotters-page-guide__panel p {
    color:#8f8073 !important;
    font-size:11.5px !important;
}

/* także dwa boksy pod spodem */
.sp-plotters-page-info__box,
.sp-plotters-page-info__box--pink {
    border-color:#eae5dd !important;
    background:#ffffff !important;
    box-shadow:0 10px 28px rgba(94,63,44,.045) !important;
}

.sp-plotters-page-info__box h3 {
    color:#20484c !important;
}

.sp-plotters-page-info__box p:last-child {
    color:#8f8073 !important;
}

/* ---------- RESPONSIVE ---------- */

@media(max-width:900px){
    .sp-request__aside--horizontal {
        grid-template-columns:1fr !important;
    }

    .sp-request__aside--horizontal .sp-request-checklist {
        grid-template-columns:1fr !important;
    }

    .sp-request__aside--horizontal .sp-request-checklist li {
        border-left:0 !important;
        border-top:1px solid #e0e9ee !important;
        padding:12px 0 !important;
    }

    .sp-contact-page__contact-grid {
        grid-template-columns:1fr !important;
    }

    .sp-contact-page__aside--horizontal .sp-contact-page__location,
    .sp-contact-page__aside--horizontal .sp-contact-page__direct {
        border-left:0 !important;
        border-top:1px solid #e0e9ee !important;
        padding:14px 0 !important;
    }

    .sp-contact-page__aside-head {
        align-items:flex-start;
        flex-direction:column;
        gap:5px;
    }
}

/* =========================================================
   LIGHT v24.4 — HOME: części / materiały / plotery / formularze
   ========================================================= */

/* 1) HOME — sekcja części: bez pustej przestrzeni po lewej */
.sp-parts__layout {
    align-items:start !important;
}

.sp-parts-finder,
.sp-parts-types {
    height:auto !important;
}

/* 2) HOME — materiały: przywrócenie kontrastu tekstów */
.sp-site .sp-material-card {
    background:#ffffff !important;
}

.sp-site .sp-material-card__icon {
    background:#eef9fa !important;
    border-color:#e6dbcd !important;
    color:#a17550 !important;
    box-shadow:none !important;
}

.sp-site .sp-material-card--pink .sp-material-card__icon,
.sp-site .sp-material-card--violet .sp-material-card__icon,
.sp-site .sp-material-card--cyan .sp-material-card__icon {
    background:#eef7fd !important;
    border-color:#ece2d5 !important;
    color:#c58f62 !important;
}

.sp-site .sp-material-card__content strong {
    color:#214b4f !important;
}

.sp-site .sp-material-card__content > span:last-child {
    color:#918275 !important;
}

.sp-site .sp-material-card__arrow {
    color:#a57852 !important;
}

.sp-site .sp-materials__all {
    background:linear-gradient(90deg,#f1fbfc 0%, #f8fcff 52%, #fdf7fc 100%) !important;
    border-top:1px solid #f2eee8 !important;
}

.sp-site .sp-materials__all small {
    color:#a89a8f !important;
}

.sp-site .sp-materials__all strong {
    color:#214b4f !important;
}

.sp-site .sp-materials__all-arrow {
    border-color:#e8dfd4 !important;
    color:#a57852 !important;
    background:#ffffff !important;
}

.sp-site .sp-materials__help {
    border-top:1px solid #f2eee8 !important;
    background:#ffffff !important;
}

.sp-site .sp-materials__help p {
    color:#918275 !important;
}

.sp-site .sp-materials__help p strong {
    color:#214b4f !important;
}

.sp-site .sp-materials__help a {
    color:#214b4f !important;
}

.sp-site .sp-materials__help a span {
    color:#a57852 !important;
}

/* 3) HOME — plotery: kafelki zastosowań i dolny pasek */
.sp-site .sp-usecase {
    background:#ffffff !important;
}

.sp-site .sp-usecase:hover {
    background:linear-gradient(145deg,#f3fbfc 0%, #ffffff 72%, #f5f9fd 100%) !important;
}

.sp-site .sp-usecase__icon {
    background:#eef9fa !important;
    border-color:#e6dbcd !important;
    color:#a17550 !important;
    box-shadow:none !important;
}

.sp-site .sp-usecase--pink .sp-usecase__icon,
.sp-site .sp-usecase--violet .sp-usecase__icon,
.sp-site .sp-usecase--cyan .sp-usecase__icon {
    background:#eef7fd !important;
    border-color:#ece2d5 !important;
    color:#c58f62 !important;
}

.sp-site .sp-usecase__content strong {
    color:#214b4f !important;
}

.sp-site .sp-usecase__content > span:last-child {
    color:#918275 !important;
}

.sp-site .sp-usecase__arrow {
    color:#a57852 !important;
}

.sp-site .sp-plotter-usecases__foot {
    background:linear-gradient(90deg,#f4fbfd 0%, #fbfcff 58%, #fdf7fc 100%) !important;
    border-top:1px solid #f0ece7 !important;
}

.sp-site .sp-plotter-usecases__foot p {
    color:#918275 !important;
}

.sp-site .sp-plotter-usecases__foot p strong {
    color:#214b4f !important;
}

.sp-site .sp-plotter-usecases__foot a {
    color:#214b4f !important;
}

.sp-site .sp-plotter-usecases__foot a span {
    color:#a57852 !important;
}

/* 4) HOME — przewodnik doboru plotera */
.sp-site .sp-plotter-guide__number {
    background:#eef7fd !important;
    border-color:#ece2d5 !important;
    color:#c58f62 !important;
    box-shadow:none !important;
}

/* 5) Formularz zgłoszenia — przycisk wyboru pliku */
.sp-site .sp-field input[type="file"]::file-selector-button,
.sp-site .sp-field input[type="file"]::-webkit-file-upload-button {
    border-color:#e7dcce !important;
    background:linear-gradient(100deg,#eef9fa 0%, #f3f8fd 54%, #f8f4fc 100%) !important;
    color:#214b4f !important;
    box-shadow:none !important;
}

.sp-site .sp-field input[type="file"]::file-selector-button:hover,
.sp-site .sp-field input[type="file"]::-webkit-file-upload-button:hover {
    border-color:#dbcbb6 !important;
    background:linear-gradient(100deg,#f8f3ed 0%, #edf6fc 54%, #f6f0fb 100%) !important;
    color:#214b4f !important;
}

/* 6) HOME/sekcje — dodatkowe bezpieczeństwo kontrastu */
.sp-site .sp-parts-types__head p,
.sp-site .sp-parts-types__head span,
.sp-site .sp-parts-finder__head span,
.sp-site .sp-plotter-usecases__top strong,
.sp-site .sp-plotter-usecases__top > span,
.sp-site .sp-materials__shop-head strong,
.sp-site .sp-materials__shop-head > span {
    text-shadow:none !important;
}

/* =========================================================
   LIGHT v24.5 — HOME hover cards
   ========================================================= */

/* Na stronie głównej karty „Czego potrzebujesz?” nie mogą wracać do ciemnego hovera */
.sp-site .sp-need-card:hover,
.sp-site .sp-need-card:focus-within {
    border-color:rgba(186,135,93,.34) !important;
    background:linear-gradient(145deg,#f3fbfc 0%, #ffffff 72%, #f6f9fd 100%) !important;
    box-shadow:0 20px 42px rgba(94,63,44,.095) !important;
}

.sp-site .sp-need-card:hover h3,
.sp-site .sp-need-card:focus-within h3 {
    color:#20484c !important;
}

.sp-site .sp-need-card:hover p,
.sp-site .sp-need-card:focus-within p {
    color:#8f8074 !important;
}

.sp-site .sp-need-card:hover .sp-need-card__link,
.sp-site .sp-need-card:focus-within .sp-need-card__link {
    color:#48898f !important;
}

.sp-site .sp-need-card:hover .sp-need-card__link::after,
.sp-site .sp-need-card:focus-within .sp-need-card__link::after {
    color:#ac7d56 !important;
}


/* =========================================================
   LIGHT v25 — HOMEPAGE REBUILD
   mniej klocków, więcej konkretu, realne produkty wysoko
   ========================================================= */

.sp-home-products,
.sp-home-service,
.sp-home-brands,
.sp-home-parts,
.sp-home-mytoner,
.sp-home-process {
    border-bottom:1px solid #ede9e3;
}

/* PRODUCTS */
.sp-home-products {
    padding:62px 0 68px;
    background:linear-gradient(180deg,#f1f8fb 0%,#f7fbfd 100%);
}
.sp-home-products__head,
.sp-home-simple-head {
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(360px,.68fr);
    gap:56px;
    align-items:end;
    margin-bottom:30px;
}
.sp-home-products__head h2,
.sp-home-simple-head h2,
.sp-home-service h2,
.sp-home-parts h2,
.sp-home-mytoner h2,
.sp-home-process h2 {
    margin:8px 0 0;
    color:#1b4145;
    font-size:clamp(34px,3vw,48px);
    line-height:1.04;
    letter-spacing:-.04em;
}
.sp-home-products__head > p,
.sp-home-simple-head > p {
    margin:0;
    color:#8d7e72;
    font-size:14px;
    line-height:1.7;
}
.sp-home-products__layout {
    display:grid;
    grid-template-columns:minmax(0,1.48fr) minmax(360px,.72fr);
    gap:18px;
    align-items:stretch;
}
.sp-featured-product {
    display:grid;
    grid-template-columns:minmax(340px,.95fr) minmax(0,1fr);
    min-height:420px;
    overflow:hidden;
    border:1px solid #eae4dc;
    border-radius:20px;
    background:#ffffff;
    box-shadow:0 18px 50px rgba(94,63,44,.08);
    text-decoration:none !important;
    transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;
}
.sp-featured-product:hover {
    transform:translateY(-4px);
    border-color:#dfd2c0;
    box-shadow:0 24px 60px rgba(94,63,44,.11);
}
.sp-featured-product__visual {
    display:grid;
    place-items:center;
    padding:34px 26px;
    background:linear-gradient(145deg,#ffffff 0%,#eef8fa 100%);
}
.sp-featured-product__visual img {
    width:100%;
    max-width:620px;
    max-height:330px;
    object-fit:contain;
    mix-blend-mode:multiply;
}
.sp-featured-product__content {
    display:flex;
    flex-direction:column;
    justify-content:center;
    padding:42px 38px;
}
.sp-featured-product__badge {
    width:fit-content;
    padding:7px 10px;
    border-radius:999px;
    background:#f8f3ed;
    color:#488a90;
    font-size:9px;
    font-weight:900;
    letter-spacing:.12em;
}
.sp-featured-product h3 {
    margin:18px 0 0;
    color:#1b4145;
    font-size:clamp(30px,2.8vw,44px);
    line-height:1;
    letter-spacing:-.04em;
}
.sp-featured-product p {
    margin:16px 0 0;
    color:#8d7e71;
    font-size:14px;
    line-height:1.65;
}
.sp-featured-product__meta {
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin-top:20px;
}
.sp-featured-product__meta span {
    padding:7px 9px;
    border:1px solid #eae4dd;
    border-radius:8px;
    color:#807062;
    background:#f8fbfc;
    font-size:10px;
    font-weight:750;
}
.sp-featured-product__cta {
    display:inline-flex;
    align-items:center;
    gap:10px;
    margin-top:28px;
    color:#48898f;
    font-size:13px;
    font-weight:850;
}
.sp-shop-picks {
    overflow:hidden;
    border:1px solid #eae4dc;
    border-radius:20px;
    background:#ffffff;
    box-shadow:0 14px 38px rgba(94,63,44,.06);
}
.sp-shop-picks__title {
    padding:22px 22px 16px;
    border-bottom:1px solid #e0e9ee;
}
.sp-shop-picks__title span {
    display:block;
    color:#a17550;
    font-size:9px;
    font-weight:900;
    letter-spacing:.14em;
}
.sp-shop-picks__title strong {
    display:block;
    margin-top:5px;
    color:#20484c;
    font-size:16px;
}
.sp-shop-pick {
    display:grid;
    grid-template-columns:34px minmax(0,1fr) 20px;
    gap:12px;
    align-items:center;
    min-height:86px;
    padding:15px 19px;
    border-bottom:1px solid #e4ecef;
    background:#ffffff;
    text-decoration:none !important;
    transition:background .2s ease;
}
.sp-shop-pick:hover { background:#f5fbfc; }
.sp-shop-pick__swatch {
    width:28px;
    height:28px;
    border-radius:50%;
    border:5px solid #ffffff;
    box-shadow:0 0 0 1px #e7e2db;
}
.sp-shop-pick--yellow .sp-shop-pick__swatch { background:#f4cf22; }
.sp-shop-pick--magenta .sp-shop-pick__swatch { background:#db3d91; }
.sp-shop-pick--black .sp-shop-pick__swatch { background:#243334; }
.sp-shop-pick small { display:block;color:#a4988f;font-size:9.5px; }
.sp-shop-pick strong { display:block;margin-top:3px;color:#20484c;font-size:13px; }
.sp-shop-pick > b { color:#a77954;font-size:17px; }
.sp-shop-picks__all {
    display:flex;
    justify-content:space-between;
    align-items:center;
    min-height:62px;
    padding:14px 19px;
    color:#47888e !important;
    background:#eef9fa;
    font-size:11.5px;
    font-weight:850;
}

/* NEEDS */
.sp-needs--v25 { padding:64px 0 68px !important;background:#ffffff !important; }
.sp-needs__head--compact { margin-bottom:24px !important; }
.sp-needs__head--compact h2 { font-size:clamp(34px,3vw,48px) !important; }
.sp-needs__grid--compact { gap:12px !important; }
.sp-needs__grid--compact .sp-need-card {
    min-height:205px !important;
    padding:22px 22px 20px !important;
    box-shadow:none !important;
}
.sp-needs__grid--compact .sp-need-card__icon {
    width:40px !important;height:40px !important;
    font-size:10px !important;font-weight:900;color:#a17550 !important;
    border-color:#e6ddd2 !important;background:#f0fafa !important;
}
.sp-needs__grid--compact .sp-need-card h3 { margin-top:19px !important;font-size:17px !important; }
.sp-needs__grid--compact .sp-need-card p { margin-top:8px !important;font-size:12px !important;line-height:1.5 !important; }
.sp-needs__grid--compact .sp-need-card__link { margin-top:auto !important;padding-top:18px !important;font-size:11.5px !important; }

/* SERVICE */
.sp-home-service { padding:72px 0;background:linear-gradient(180deg,#f4f9fb 0%,#eef7fa 100%); }
.sp-home-service__grid { display:grid;grid-template-columns:minmax(0,.85fr) minmax(520px,1.15fr);gap:72px;align-items:center; }
.sp-home-service__copy > p:not(.sp-section-kicker) { max-width:620px;margin:18px 0 0;color:#8e7f73;font-size:14px;line-height:1.7; }
.sp-home-service__actions { display:flex;align-items:center;gap:24px;margin-top:28px; }
.sp-home-service__phone { display:flex;flex-direction:column;gap:2px; }
.sp-home-service__phone small { color:#95867a;font-size:10px; }
.sp-home-service__phone strong { color:#20484c;font-size:15px; }
.sp-home-service__points { display:grid;gap:0;border-top:1px solid #e9e4dc;border-bottom:1px solid #e9e4dc; }
.sp-home-service__points article { display:grid;grid-template-columns:40px minmax(0,1fr);gap:16px;padding:20px 4px;border-bottom:1px solid #ece8e2; }
.sp-home-service__points article:last-child { border-bottom:0; }
.sp-home-service__points article > span { display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#ffffff;border:1px solid #e6ddd2;color:#a17550;font-size:9px;font-weight:900; }
.sp-home-service__points strong { color:#20484c;font-size:15px; }
.sp-home-service__points p { margin:5px 0 0;color:#918276;font-size:12px;line-height:1.5; }

/* BRANDS */
.sp-home-brands { padding:68px 0;background:#ffffff; }
.sp-home-brands__grid { display:grid;grid-template-columns:1fr 1fr 1fr;border-top:1px solid #ede8e2;border-bottom:1px solid #ede8e2; }
.sp-home-brands__grid a { display:flex;flex-direction:column;min-height:150px;padding:24px 26px;border-right:1px solid #ede8e2;background:#ffffff;text-decoration:none !important;transition:background .2s ease; }
.sp-home-brands__grid a:last-child { border-right:0; }
.sp-home-brands__grid a:hover { background:#f4fbfc; }
.sp-home-brands__grid span { color:#a17550;font-size:10px;font-weight:900;letter-spacing:.12em; }
.sp-home-brands__grid strong { margin-top:18px;color:#20484c;font-size:20px; }
.sp-home-brands__grid b { margin-top:auto;color:#48898f;font-size:11px; }

/* PARTS */
.sp-home-parts { padding:66px 0;background:linear-gradient(180deg,#f3f9fb,#eef7fa); }
.sp-home-parts__grid { display:grid;grid-template-columns:minmax(0,1fr) minmax(480px,.9fr);gap:72px;align-items:center; }
.sp-home-parts__grid > div:first-child > p:not(.sp-section-kicker) { max-width:650px;margin:16px 0 24px;color:#8e7f73;font-size:14px;line-height:1.7; }
.sp-home-parts__steps { display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #e6dfd5;border-bottom:1px solid #e6dfd5; }
.sp-home-parts__steps span { display:flex;flex-direction:column;gap:12px;min-height:116px;padding:22px 18px;border-right:1px solid #ebe6e0;color:#305b5f;font-size:12px;font-weight:800; }
.sp-home-parts__steps span:last-child { border-right:0; }
.sp-home-parts__steps b { color:#a57852;font-size:10px; }

/* MYTONER BANNER */
.sp-home-mytoner { padding:48px 0;background:#ffffff; }
.sp-home-mytoner__panel { display:grid;grid-template-columns:minmax(0,1fr) auto;gap:44px;align-items:center;padding:30px 34px;border:1px solid #e8e2d9;border-radius:18px;background:linear-gradient(105deg,#f9f5ef 0%,#f7fbfd 58%,#eef6fc 100%); }
.sp-home-mytoner__panel h2 { font-size:clamp(28px,2.5vw,40px); }
.sp-home-mytoner__panel > div:first-child > p:last-child { max-width:720px;margin:10px 0 0;color:#8c7d70;font-size:13px;line-height:1.6; }
.sp-home-mytoner__actions { display:flex;gap:10px; }

/* PROCESS */
.sp-home-process { padding:64px 0 72px;background:#f7fafc; }
.sp-home-simple-head--center { grid-template-columns:1fr;margin-bottom:30px;text-align:center; }
.sp-home-process__grid { display:grid;grid-template-columns:repeat(3,1fr);max-width:1050px;margin:0 auto; }
.sp-home-process__grid article { padding:25px 28px;border-left:1px solid #ebe6e0; }
.sp-home-process__grid article:first-child { border-left:0; }
.sp-home-process__grid span { color:#a57852;font-size:10px;font-weight:900; }
.sp-home-process__grid strong { display:block;margin-top:15px;color:#20484c;font-size:18px; }
.sp-home-process__grid p { margin:8px 0 0;color:#918276;font-size:12px;line-height:1.55; }

@media(max-width:1050px){
    .sp-home-products__layout,
    .sp-home-service__grid,
    .sp-home-parts__grid { grid-template-columns:1fr;gap:30px; }
    .sp-featured-product { grid-template-columns:1fr 1fr; }
    .sp-home-products__head,
    .sp-home-simple-head { grid-template-columns:1fr;gap:14px; }
}

@media(max-width:760px){
    .sp-home-products { padding:48px 0 52px; }
    .sp-featured-product { grid-template-columns:1fr;min-height:0; }
    .sp-featured-product__visual { padding:24px 18px; }
    .sp-featured-product__content { padding:26px 22px 28px; }
    .sp-home-brands__grid,
    .sp-home-process__grid,
    .sp-home-parts__steps { grid-template-columns:1fr; }
    .sp-home-brands__grid a,
    .sp-home-process__grid article,
    .sp-home-parts__steps span { border-right:0;border-left:0;border-bottom:1px solid #ede8e2; }
    .sp-home-service__actions,
    .sp-home-mytoner__panel,
    .sp-home-mytoner__actions { align-items:stretch;grid-template-columns:1fr;flex-direction:column; }
    .sp-home-mytoner__panel { display:grid;padding:24px 22px; }
    .sp-home-mytoner__actions .sp-btn { width:100%; }
}

/* =========================================================
   LIGHT v26 — SERWIS PREMIUM
   ========================================================= */

/* HERO — panel procesu zamiast suchej listy */
.sp-service-premium-hero .sp-service-page-hero__grid {
    grid-template-columns:minmax(0,1.05fr) minmax(390px,.78fr) !important;
    gap:clamp(48px,6vw,92px) !important;
}

.sp-service-hero-flow {
    position:relative;
    overflow:hidden;
    border:1px solid #e9e3dc;
    border-radius:19px;
    background:rgba(255,255,255,.94);
    box-shadow:0 24px 65px rgba(94,63,43,.10);
}

.sp-service-hero-flow::after {
    content:"";
    position:absolute;
    width:210px;
    height:210px;
    right:-90px;
    bottom:-110px;
    border-radius:50%;
    background:rgba(186,135,93,.075);
    filter:blur(35px);
    pointer-events:none;
}

.sp-service-hero-flow__scan {
    position:absolute;
    z-index:3;
    left:0;
    right:0;
    top:57px;
    height:1px;
    background:linear-gradient(90deg,transparent,#ba875d,#c89164,transparent);
    box-shadow:0 0 12px rgba(186,135,93,.20);
    animation:spServiceScan 5.8s ease-in-out infinite;
    pointer-events:none;
}

.sp-service-hero-flow__head {
    min-height:58px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    padding:0 22px;
    border-bottom:1px solid #ede9e3;
}

.sp-service-hero-flow__head > div {
    display:flex;
    align-items:center;
    gap:10px;
}

.sp-service-hero-flow__head strong {
    color:#21484c;
    font-size:12.5px;
}

.sp-service-hero-flow__head > span:last-child {
    color:#a5988e;
    font-size:8.5px;
    font-weight:850;
    letter-spacing:.15em;
}

.sp-service-hero-flow__steps article {
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:42px minmax(0,1fr);
    gap:14px;
    min-height:91px;
    padding:18px 22px;
    border-bottom:1px solid #e0e9ee;
    transition:background .28s ease, transform .28s ease;
}

.sp-service-hero-flow__steps article:hover {
    background:linear-gradient(90deg,#eefafb 0%,#ffffff 78%);
    transform:translateX(4px);
}

.sp-service-hero-flow__number {
    width:36px;
    height:36px;
    display:grid;
    place-items:center;
    border:1px solid #e5dacb;
    border-radius:11px;
    background:#eff9fa;
    color:#a17550;
    font-size:9px;
    font-weight:900;
}

.sp-service-hero-flow__steps strong {
    color:#21484c;
    font-size:13px;
}

.sp-service-hero-flow__steps p {
    margin:4px 0 0;
    color:#928377;
    font-size:11.5px;
    line-height:1.55;
}

.sp-service-hero-flow__call {
    position:relative;
    z-index:2;
    min-height:62px;
    display:grid;
    grid-template-columns:minmax(0,1fr) auto 20px;
    align-items:center;
    gap:12px;
    padding:13px 22px;
    background:linear-gradient(100deg,#f8f4ee 0%,#edf7fb 60%,#f5f8fd 100%);
}

.sp-service-hero-flow__call span {
    color:#8c7c6f;
    font-size:10.5px;
}

.sp-service-hero-flow__call strong {
    color:#1e4b50;
    font-size:14px;
}

.sp-service-hero-flow__call em {
    color:#a17550;
    font-style:normal;
    transition:transform .2s ease;
}

.sp-service-hero-flow__call:hover em { transform:translateX(4px); }

@keyframes spServiceScan {
    0%,12% { transform:translateY(0); opacity:0; }
    22% { opacity:.72; }
    78% { opacity:.38; }
    92%,100% { transform:translateY(270px); opacity:0; }
}

/* ZAKRES — premium motion cards */
.sp-service-premium {
    background:
        radial-gradient(circle at 10% 20%,rgba(186,135,93,.04),transparent 25%),
        linear-gradient(180deg,#f4f8fb 0%,#f8fafc 100%) !important;
}

.sp-service-scope-grid {
    gap:16px !important;
}

.sp-service-scope-card {
    position:relative;
    overflow:hidden;
    min-height:225px !important;
    padding:25px 24px 23px !important;
    border:1px solid #eae5df !important;
    border-radius:18px !important;
    background:#ffffff !important;
    box-shadow:0 12px 32px rgba(94,63,44,.055) !important;
    --scope-accent:#ba875d;
    transition:transform .30s cubic-bezier(.2,.75,.25,1), border-color .30s ease, box-shadow .30s ease, background .30s ease !important;
}

.sp-service-scope-card--blue { --scope-accent:#c89164; }
.sp-service-scope-card--violet { --scope-accent:#d8c4a8; }

.sp-service-scope-card::before {
    content:"";
    position:absolute;
    left:0;
    right:0;
    top:0;
    height:2px;
    background:linear-gradient(90deg,transparent,var(--scope-accent),transparent);
    opacity:.72;
}

.sp-service-scope-card::after {
    content:"";
    position:absolute;
    width:150px;
    height:150px;
    right:-85px;
    bottom:-95px;
    border-radius:50%;
    background:color-mix(in srgb,var(--scope-accent) 9%,transparent);
    filter:blur(28px);
    pointer-events:none;
}

.sp-service-scope-card:hover {
    transform:translateY(-7px) !important;
    border-color:color-mix(in srgb,var(--scope-accent) 38%,#eae5df) !important;
    background:linear-gradient(145deg,#ffffff 0%,color-mix(in srgb,var(--scope-accent) 4%,#ffffff) 100%) !important;
    box-shadow:0 22px 48px rgba(94,63,44,.105) !important;
}

.sp-service-scope-card__number {
    position:absolute;
    top:18px;
    right:20px;
    color:#b7aba2 !important;
    font-size:9px !important;
    font-weight:850 !important;
    letter-spacing:.12em;
}

.sp-service-scope-card__icon {
    position:relative;
    z-index:1;
    width:50px;
    height:50px;
    display:grid;
    place-items:center;
    border:1px solid color-mix(in srgb,var(--scope-accent) 35%,#ede9e3);
    border-radius:14px;
    color:var(--scope-accent);
    background:color-mix(in srgb,var(--scope-accent) 6%,#ffffff);
    transition:transform .30s ease, box-shadow .30s ease;
}

.sp-service-scope-card__icon svg {
    width:24px;
    height:24px;
    stroke:currentColor;
}

.sp-service-scope-card:hover .sp-service-scope-card__icon {
    transform:translateY(-3px) rotate(-2deg) scale(1.05);
    box-shadow:0 10px 24px color-mix(in srgb,var(--scope-accent) 14%,transparent);
}

.sp-service-scope-card h3 {
    position:relative;
    z-index:1;
    margin:25px 0 0 !important;
    color:#20484c !important;
    font-size:18px !important;
}

.sp-service-scope-card p {
    position:relative;
    z-index:1;
    margin:9px 0 0 !important;
    color:#8f8074 !important;
    font-size:12.5px !important;
    line-height:1.62 !important;
}

/* MARKI — trzy pełne karty zamiast szkolnej listy */
.sp-service-brand-routes {
    padding:72px 0 76px !important;
    background:#ffffff !important;
    border-top:1px solid #ede9e3 !important;
    border-bottom:1px solid #ede9e3 !important;
}

.sp-service-brand-routes__head {
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(340px,.66fr);
    gap:60px;
    align-items:end;
    margin-bottom:34px;
}

.sp-service-brand-routes__head h2 {
    margin:9px 0 0;
    color:#1f4549 !important;
    font-size:clamp(38px,3.2vw,56px);
    line-height:1.04;
    letter-spacing:-.04em;
}

.sp-service-brand-routes__head > p {
    margin:0;
    color:#8f8074 !important;
    font-size:14px;
    line-height:1.72;
}

.sp-service-brand-routes__grid {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:16px;
}

.sp-service-brand-route {
    --route-accent:#ba875d;
    position:relative;
    min-height:300px;
    display:flex;
    flex-direction:column;
    overflow:hidden;
    padding:25px 25px 23px;
    border:1px solid #eae5df;
    border-radius:18px;
    background:#ffffff;
    box-shadow:0 12px 32px rgba(94,63,44,.055);
    transition:transform .30s cubic-bezier(.2,.75,.25,1), border-color .30s ease, box-shadow .30s ease;
}

.sp-service-brand-route--canon { --route-accent:#c89164; }
.sp-service-brand-route--other { --route-accent:#d8c4a8; }

.sp-service-brand-route::before {
    content:"";
    position:absolute;
    left:0;
    right:0;
    top:0;
    height:2px;
    background:linear-gradient(90deg,transparent,var(--route-accent),transparent);
}

.sp-service-brand-route::after {
    content:"";
    position:absolute;
    width:190px;
    height:190px;
    right:-95px;
    bottom:-110px;
    border-radius:50%;
    background:color-mix(in srgb,var(--route-accent) 8%,transparent);
    filter:blur(32px);
    pointer-events:none;
}

.sp-service-brand-route:hover {
    transform:translateY(-7px);
    border-color:color-mix(in srgb,var(--route-accent) 38%,#eae5df);
    box-shadow:0 22px 48px rgba(94,63,44,.10);
}

.sp-service-brand-route__meta {
    position:relative;
    z-index:1;
    color:#a89c93;
    font-size:8.5px;
    font-weight:850;
    letter-spacing:.15em;
}

.sp-service-brand-route__brand {
    position:relative;
    z-index:1;
    display:block;
    margin-top:26px;
    color:var(--route-accent);
    font-size:44px;
    line-height:.95;
    font-weight:900;
    letter-spacing:-.045em;
}

.sp-service-brand-route__brand--icon {
    width:52px;
    height:52px;
    display:grid;
    place-items:center;
    border:1px solid color-mix(in srgb,var(--route-accent) 36%,#eae5df);
    border-radius:14px;
    background:color-mix(in srgb,var(--route-accent) 5%,#ffffff);
}

.sp-service-brand-route__brand--icon svg {
    width:26px;
    height:26px;
    stroke:currentColor;
}

.sp-service-brand-route > strong {
    position:relative;
    z-index:1;
    margin-top:18px;
    color:#20484c;
    font-size:19px;
}

.sp-service-brand-route > p {
    position:relative;
    z-index:1;
    margin:9px 0 0;
    color:#918276 !important;
    font-size:12.3px;
    line-height:1.58;
}

.sp-service-brand-route__link {
    position:relative;
    z-index:1;
    display:flex;
    align-items:center;
    gap:9px;
    margin-top:auto;
    padding-top:24px;
    color:#20484c;
    font-size:11.5px;
    font-weight:800;
}

.sp-service-brand-route__link em {
    color:var(--route-accent);
    font-style:normal;
    transition:transform .2s ease;
}

.sp-service-brand-route:hover .sp-service-brand-route__link em {
    transform:translateX(5px);
}

@media(max-width:980px){
    .sp-service-premium-hero .sp-service-page-hero__grid,
    .sp-service-brand-routes__head {
        grid-template-columns:1fr !important;
    }

    .sp-service-brand-routes__grid {
        grid-template-columns:1fr 1fr;
    }

    .sp-service-brand-route--other {
        grid-column:1 / -1;
        min-height:240px;
    }
}

@media(max-width:720px){
    .sp-service-hero-flow__head { padding-inline:17px; }
    .sp-service-hero-flow__head > span:last-child { display:none; }
    .sp-service-hero-flow__steps article { padding:16px 17px; }
    .sp-service-hero-flow__call { grid-template-columns:1fr auto; padding:13px 17px; }
    .sp-service-hero-flow__call em { display:none; }

    .sp-service-scope-grid,
    .sp-service-brand-routes__grid {
        grid-template-columns:1fr !important;
    }

    .sp-service-scope-card,
    .sp-service-brand-route,
    .sp-service-brand-route--other {
        min-height:0 !important;
    }

    .sp-service-brand-route--other { grid-column:auto; }
    .sp-service-brand-routes { padding:56px 0 60px !important; }
    .sp-service-brand-routes__head { gap:16px; margin-bottom:25px; }
}

@media(prefers-reduced-motion:reduce){
    .sp-service-hero-flow__scan { animation:none !important; }
    .sp-service-scope-card,
    .sp-service-brand-route,
    .sp-service-hero-flow__steps article { transition:none !important; }
}

/* =========================================================
   LIGHT v26.1 — HOME PROCESS COMPACT
   ========================================================= */
.sp-home-process--compact {
    padding:38px 0 44px !important;
    background:linear-gradient(180deg,#f6fafc 0%,#f8fbfc 100%) !important;
}

.sp-home-process__panel {
    display:grid;
    grid-template-columns:minmax(250px,.72fr) minmax(0,1.8fr);
    gap:30px;
    align-items:center;
    max-width:1260px;
    margin:0 auto;
    padding:24px 26px;
    border:1px solid #ebe6df;
    border-radius:18px;
    background:
        radial-gradient(circle at 4% 50%,rgba(186,135,93,.055),transparent 26%),
        #ffffff;
    box-shadow:0 12px 34px rgba(94,63,44,.055);
}

.sp-home-process__intro {
    padding-right:8px;
}

.sp-home-process__intro h2 {
    margin:7px 0 8px !important;
    color:#20484c !important;
    font-size:clamp(27px,2.2vw,36px) !important;
    line-height:1.04 !important;
    letter-spacing:-.035em;
}

.sp-home-process__intro > p:last-child {
    max-width:330px;
    margin:0;
    color:#8c7d70;
    font-size:13.5px;
    line-height:1.55;
}

.sp-home-process--compact .sp-home-process__grid {
    position:relative;
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:0;
    max-width:none !important;
    margin:0 !important;
}

.sp-home-process--compact .sp-home-process__grid::before {
    content:"";
    position:absolute;
    left:8%;
    right:8%;
    top:20px;
    height:1px;
    background:linear-gradient(90deg,#e7ddcf,#e8dccc,#eee4d8);
}

.sp-home-process--compact .sp-home-process__grid article {
    position:relative;
    z-index:1;
    display:grid;
    grid-template-columns:42px minmax(0,1fr);
    gap:12px;
    align-items:start;
    min-height:0 !important;
    padding:5px 18px !important;
    border-left:1px solid #e1e9ee !important;
}

.sp-home-process--compact .sp-home-process__grid article:first-child {
    border-left:0 !important;
}

.sp-home-process--compact .sp-home-process__grid article > span {
    width:40px;
    height:40px;
    display:grid;
    place-items:center;
    border:1px solid #e5d9ca;
    border-radius:12px;
    background:#eff9fa;
    color:#a17550 !important;
    font-size:10px !important;
    font-weight:900;
    box-shadow:0 0 0 5px #ffffff;
    transition:transform .24s ease,background .24s ease,border-color .24s ease;
}

.sp-home-process--compact .sp-home-process__grid article:hover > span {
    transform:translateY(-2px);
    background:#f8f3ed;
    border-color:#d9c7af;
}

.sp-home-process--compact .sp-home-process__grid strong {
    display:block;
    margin:1px 0 5px !important;
    color:#20484c !important;
    font-size:16.5px !important;
    line-height:1.2;
}

.sp-home-process--compact .sp-home-process__grid p {
    margin:0 !important;
    color:#8b7c6f !important;
    font-size:13px !important;
    line-height:1.5 !important;
}

@media(max-width:980px){
    .sp-home-process__panel {
        grid-template-columns:1fr;
        gap:20px;
    }
    .sp-home-process__intro > p:last-child { max-width:640px; }
}

@media(max-width:720px){
    .sp-home-process--compact { padding:30px 0 34px !important; }
    .sp-home-process__panel { padding:20px 18px; }
    .sp-home-process--compact .sp-home-process__grid {
        grid-template-columns:1fr;
    }
    .sp-home-process--compact .sp-home-process__grid::before { display:none; }
    .sp-home-process--compact .sp-home-process__grid article,
    .sp-home-process--compact .sp-home-process__grid article:first-child {
        padding:12px 0 !important;
        border-left:0 !important;
        border-top:1px solid #e1e9ee !important;
    }
    .sp-home-process--compact .sp-home-process__grid article:first-child { border-top:0 !important; }
}

/* =========================================================
   LIGHT v26.2 — HP PARTNER + PROCESS WITHOUT OUTER CARD
   ========================================================= */

/* Homepage: partnership is visible but does not become another block */
.sp-home-brand-partner {
    display:inline-flex;
    width:fit-content;
    margin-top:10px;
    padding:5px 8px;
    border:1px solid #e7ddd1;
    border-radius:999px;
    background:#eff9fa;
    color:#488a91 !important;
    font-size:9px;
    font-style:normal;
    font-weight:900;
    letter-spacing:.08em;
    text-transform:uppercase;
}

.sp-home-brand-hp:hover .sp-home-brand-partner {
    border-color:#dcccb7;
    background:#f8f3ed;
}

/* Service page: explicit HP Partner Program marker */
.sp-service-brand-route__partner {
    display:inline-flex;
    width:fit-content;
    margin-top:14px;
    padding:6px 9px;
    border:1px solid #e7ddd1;
    border-radius:999px;
    background:#eef9fa;
    color:#488a91 !important;
    font-size:9px;
    font-weight:900;
    letter-spacing:.08em;
    text-transform:uppercase;
}

/* HP page hero */
.sp-brand-service-hero__badge--partner {
    position:relative;
}

.sp-hp-partner-mark {
    display:inline-flex;
    width:fit-content;
    margin:0 0 10px;
    padding:6px 9px;
    border:1px solid #e7ddd1;
    border-radius:999px;
    background:#eef9fa;
    color:#488a91 !important;
    font-size:9px;
    font-weight:900;
    letter-spacing:.09em;
}

/* Homepage process: no outer rectangle — open composition */
.sp-home-process--compact {
    padding:34px 0 38px !important;
    background:linear-gradient(180deg,#f6fafc 0%,#f8fbfc 100%) !important;
}

.sp-home-process__panel {
    max-width:1260px;
    margin:0 auto;
    padding:8px 0 !important;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
}

.sp-home-process__intro {
    padding-left:4px;
}

@media(max-width:720px){
    .sp-home-process__panel { padding:4px 0 !important; }
}

/* =========================================================
   LIGHT v26.3 — ESB SERWIS / 2001 / HP PARTNER
   ========================================================= */



.sp-esb-credibility__grid {
    display:grid;
    grid-template-columns:minmax(0,1.2fr) minmax(420px,.8fr);
    gap:60px;
    align-items:center;
}

.sp-esb-credibility__copy h2 {
    max-width:760px;
    margin:8px 0 12px;
    color:#1d4549;
    font-size:clamp(30px,2.55vw,44px);
    line-height:1.05;
    letter-spacing:-.035em;
}

.sp-esb-credibility__copy > p:last-child {
    max-width:800px;
    margin:0;
    color:#8b7c6f;
    font-size:13.5px;
    line-height:1.7;
}

.sp-esb-credibility__facts {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:1px;
    overflow:hidden;
    border:1px solid #ebe5de;
    border-radius:16px;
    background:#ebe5de;
    box-shadow:0 12px 30px rgba(94,63,44,.055);
}

.sp-esb-credibility__facts span {
    min-height:120px;
    display:flex;
    flex-direction:column;
    justify-content:center;
    padding:20px;
    background:#ffffff;
}

.sp-esb-credibility__facts strong {
    color:#488a91;
    font-size:20px;
    line-height:1.1;
}

.sp-esb-credibility__facts small {
    margin-top:6px;
    color:#918275;
    font-size:10.5px;
    line-height:1.45;
}



.sp-service-esb__grid {
    display:grid;
    grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);
    gap:70px;
    align-items:start;
}

.sp-service-esb h2 {
    max-width:620px;
    margin:8px 0 0;
    color:#1d4549;
    font-size:clamp(30px,2.4vw,42px);
    line-height:1.06;
    letter-spacing:-.035em;
}

.sp-service-esb__text {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:26px;
    padding-top:22px;
    border-top:2px solid transparent;
    border-image:linear-gradient(90deg,#ba875d,#c89164,transparent) 1;
}

.sp-service-esb__text p {
    margin:0;
    color:#8b7c6f;
    font-size:13px;
    line-height:1.72;
}

/* O nas — 4 fakty zamiast 3 */
.sp-about-page-hero__facts {
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
}

@media(max-width:960px){
    .sp-esb-credibility__grid,
    .sp-service-esb__grid {
        grid-template-columns:1fr;
        gap:28px;
    }

    .sp-esb-credibility__facts {
        max-width:720px;
    }
}

@media(max-width:620px){
    .sp-esb-credibility,
    

    .sp-esb-credibility__facts {
        grid-template-columns:1fr;
    }

    .sp-esb-credibility__facts span {
        min-height:82px;
    }

    .sp-service-esb__text {
        grid-template-columns:1fr;
        gap:14px;
    }
}

/* =========================================================
   LIGHT v27 — KONTAKT OPARTY NA REALNEJ FIRMIE
   ========================================================= */

.sp-contact-real-hero {
    padding:68px 0 62px;
    border-bottom:1px solid #ede8e2;
    background:linear-gradient(112deg,#ffffff 0%,#f8fcfd 58%,#edf8fb 100%);
}

.sp-contact-real-hero__grid {
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(330px,.55fr);
    gap:clamp(50px,7vw,100px);
    align-items:end;
}

.sp-contact-real-hero h1 {
    max-width:820px;
    margin:10px 0 17px;
    color:#1a3e42;
    font-size:clamp(46px,4.3vw,70px);
    line-height:1;
    letter-spacing:-.045em;
}

.sp-contact-real-hero__lead {
    max-width:760px;
    margin:0;
    color:#897a6e;
    font-size:16px;
    line-height:1.72;
}

.sp-contact-real-hero__actions { display:flex;flex-wrap:wrap;gap:12px;margin-top:27px; }

.sp-contact-real-hero__facts {
    display:grid;
    gap:1px;
    overflow:hidden;
    border:1px solid #eae5dd;
    border-radius:16px;
    background:#ede8e2;
    box-shadow:0 14px 36px rgba(94,63,44,.06);
}

.sp-contact-real-hero__facts div {
    display:grid;
    grid-template-columns:78px minmax(0,1fr);
    align-items:center;
    gap:18px;
    min-height:86px;
    padding:17px 20px;
    background:#ffffff;
}
.sp-contact-real-hero__facts strong { color:#a17550;font-size:25px;letter-spacing:-.03em; }
.sp-contact-real-hero__facts span { color:#827163;font-size:12.5px;line-height:1.45;font-weight:650; }

.sp-contact-real-locations { padding:66px 0 72px;background:#f4f8fb; }
.sp-contact-real-locations__head {
    display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.7fr);gap:60px;align-items:end;margin-bottom:28px;
}
.sp-contact-real-locations__head h2,
.sp-contact-real-routes__head h2,
.sp-contact-real-form__intro h2 { margin:8px 0 0;color:#1b4246;font-size:clamp(32px,3vw,48px);line-height:1.05;letter-spacing:-.035em; }
.sp-contact-real-locations__head > p { margin:0;color:#908174;font-size:13.5px;line-height:1.7; }

.sp-contact-map-grid { display:grid;grid-template-columns:1fr 1fr;gap:18px; }
.sp-contact-map-card { overflow:hidden;border:1px solid #eae5dd;border-radius:18px;background:#ffffff;box-shadow:0 14px 36px rgba(94,63,44,.06); }
.sp-contact-map-card__content { padding:24px 25px 21px; }
.sp-contact-map-card__label { color:#a17550;font-size:9.5px;font-weight:900;letter-spacing:.13em; }
.sp-contact-map-card h3 { margin:9px 0 8px;color:#20484c;font-size:28px;letter-spacing:-.025em; }
.sp-contact-map-card__address { margin:0;color:#867668;font-size:13px;line-height:1.6; }
.sp-contact-map-card__meta { display:flex;flex-wrap:wrap;gap:8px 16px;margin-top:15px;padding-top:14px;border-top:1px solid #e0e9ee; }
.sp-contact-map-card__meta span,.sp-contact-map-card__meta a { color:#426f74 !important;font-size:11.5px;font-weight:700; }
.sp-contact-map-card__route { display:inline-flex;margin-top:14px;color:#48898f !important;font-size:11.5px;font-weight:850; }
.sp-contact-map-card__map { height:260px;border-top:1px solid #e0e9ee;background:#eaf3f7; }
.sp-contact-map-card__map iframe { width:100%;height:100%;border:0;display:block;filter:saturate(.8) contrast(.96); }

.sp-contact-real-routes { padding:64px 0 68px;background:#ffffff;border-top:1px solid #e0e9ee;border-bottom:1px solid #e0e9ee; }
.sp-contact-real-routes__head { margin-bottom:24px; }
.sp-contact-real-routes__grid { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid #ede9e3;border-bottom:1px solid #ede9e3; }
.sp-contact-real-routes__grid > a { min-height:210px;display:flex;flex-direction:column;padding:23px 24px;border-right:1px solid #ede9e3;background:#ffffff;text-decoration:none !important;transition:background .22s ease,transform .22s ease; }
.sp-contact-real-routes__grid > a:last-child { border-right:0; }
.sp-contact-real-routes__grid > a:hover { background:#f3fbfc;transform:translateY(-3px); }
.sp-contact-real-routes__grid > a > span { color:#ac7d56;font-size:9px;font-weight:900;letter-spacing:.11em; }
.sp-contact-real-routes__grid strong { margin-top:20px;color:#20484c;font-size:17px; }
.sp-contact-real-routes__grid p { margin:8px 0 0;color:#918275;font-size:11.8px;line-height:1.58; }
.sp-contact-real-routes__grid em { margin-top:auto;padding-top:18px;color:#48898f;font-size:11.5px;font-weight:850;font-style:normal; }
.sp-contact-real-routes__grid b { display:block;margin-top:9px;color:#20484c;font-size:11.3px;line-height:1.45; }
.sp-contact-real-routes__toner { background:linear-gradient(145deg,#f7fbfc,#f8fbfd) !important; }

.sp-contact-real-form { padding:68px 0 76px;background:#f4f8fb; }
.sp-contact-real-form__grid { max-width:1160px;display:grid;grid-template-columns:minmax(260px,.62fr) minmax(0,1.38fr);gap:34px;align-items:start; }
.sp-contact-real-form__intro { padding:18px 8px 0 0; }
.sp-contact-real-form__intro > p:not(.sp-section-kicker) { margin:15px 0 0;color:#8f8073;font-size:13px;line-height:1.7; }
.sp-contact-real-form__direct { margin-top:28px;padding-top:20px;border-top:1px solid #ebe6e0;display:grid;gap:4px; }
.sp-contact-real-form__direct span { margin-top:9px;color:#a29387;font-size:9px;font-weight:900;letter-spacing:.1em;text-transform:uppercase; }
.sp-contact-real-form__direct a { color:#20484c !important;font-size:17px;font-weight:800; }
.sp-contact-real-form__direct p { margin:0;color:#426e72;font-size:12px; }
.sp-contact-real-form__panel { border-radius:16px !important;box-shadow:0 12px 32px rgba(94,63,44,.06) !important; }
.sp-contact-real-form__panel .sp-contact-form { padding:19px 20px 0 !important; }
.sp-contact-real-form__panel .sp-form-grid { gap:12px !important; }
.sp-contact-real-form__panel .sp-field textarea { min-height:96px !important; }
.sp-contact-real-form__panel .sp-service-form__foot { min-height:62px !important;margin-top:14px !important;padding:10px 18px !important; }

/* KaskaZaToner — ostrzeżenie również w O nas */
.sp-about-page-network__grid a b { display:block;margin-top:8px;color:#20484c;font-size:11px;line-height:1.45; }

@media(max-width:980px){
    .sp-contact-real-hero__grid,.sp-contact-real-locations__head,.sp-contact-real-form__grid{grid-template-columns:1fr;gap:28px}
    .sp-contact-map-grid{grid-template-columns:1fr}
    .sp-contact-real-routes__grid{grid-template-columns:1fr 1fr}
    .sp-contact-real-routes__grid > a:nth-child(2){border-right:0}
    .sp-contact-real-routes__grid > a:nth-child(-n+2){border-bottom:1px solid #ede9e3}
}

@media(max-width:620px){
    .sp-contact-real-hero{padding:50px 0}
    .sp-contact-real-hero h1{font-size:clamp(40px,11vw,52px)}
    .sp-contact-real-hero__facts div{min-height:70px}
    .sp-contact-real-locations,.sp-contact-real-routes,.sp-contact-real-form{padding:50px 0 56px}
    .sp-contact-map-grid{gap:14px}
    .sp-contact-map-card__map{height:220px}
    .sp-contact-real-routes__grid{grid-template-columns:1fr}
    .sp-contact-real-routes__grid > a{border-right:0;border-bottom:1px solid #ede9e3 !important;min-height:0}
    .sp-contact-real-routes__grid > a:last-child{border-bottom:0 !important}
    .sp-contact-real-form__intro{padding-right:0}
}

/* =========================================================
   LIGHT v28 — HOMEPAGE FINAL RHYTHM / PREMIUM ACCENTS
   ========================================================= */

/* 1. Produkty — większy ploter i wyraźniejsze tusze */
.sp-home-products {
    padding:58px 0 64px !important;
    background:
        radial-gradient(circle at 8% 18%,rgba(186,135,93,.055),transparent 26%),
        linear-gradient(180deg,#eef7fa 0%,#f6fafc 100%) !important;
}

.sp-home-products__layout {
    grid-template-columns:minmax(0,1.55fr) minmax(350px,.7fr) !important;
    gap:20px !important;
}

.sp-featured-product {
    min-height:438px !important;
    grid-template-columns:minmax(390px,1.08fr) minmax(0,.92fr) !important;
    border-color:#e7e0d6 !important;
}

.sp-featured-product__visual {
    position:relative;
    overflow:hidden;
    padding:20px 10px !important;
    background:
        radial-gradient(circle at 50% 48%,rgba(186,135,93,.07),transparent 46%),
        linear-gradient(145deg,#fbfeff 0%,#f9f5f0 100%) !important;
}

.sp-featured-product__visual::after {
    content:"";
    position:absolute;
    width:320px;
    height:320px;
    left:50%;
    top:50%;
    transform:translate(-50%,-50%);
    border:1px solid rgba(186,135,93,.16);
    border-radius:50%;
    pointer-events:none;
}

.sp-featured-product__visual img {
    position:relative;
    z-index:1;
    width:122% !important;
    max-width:none !important;
    max-height:385px !important;
    transform:scale(1.08);
    transition:transform .35s ease;
}

.sp-featured-product:hover .sp-featured-product__visual img {
    transform:scale(1.12) translateY(-2px);
}

.sp-shop-picks {
    border-color:#e7e0d6 !important;
}

.sp-shop-pick {
    position:relative;
    min-height:88px !important;
    padding-left:22px !important;
    transition:transform .22s ease,background .22s ease,box-shadow .22s ease !important;
}

.sp-shop-pick::before {
    content:"";
    position:absolute;
    left:0;
    top:13px;
    bottom:13px;
    width:4px;
    border-radius:0 4px 4px 0;
    opacity:.72;
    background:#ad7d56;
}

.sp-shop-pick--yellow::before { background:#e8be18; }
.sp-shop-pick--magenta::before { background:#d6338b; }
.sp-shop-pick--black::before { background:#273a3c; }

.sp-shop-pick:hover {
    transform:translateX(4px);
    background:#f1fafb !important;
    box-shadow:inset 0 0 0 1px rgba(186,135,93,.06);
}

.sp-shop-pick__swatch {
    width:32px !important;
    height:32px !important;
    border-width:4px !important;
    box-shadow:0 0 0 1px #e5ded5,0 5px 14px rgba(94,63,44,.08) !important;
}

.sp-shop-pick strong {
    font-size:14px !important;
}

.sp-shop-pick small {
    color:#98897d !important;
}

/* 2. Marki — mniej pustki, więcej charakteru bez nowych ciężkich ramek */
.sp-home-brands {
    padding:54px 0 58px !important;
}

.sp-home-brands .sp-home-simple-head {
    margin-bottom:22px !important;
}

.sp-home-brands__grid {
    border-top:0 !important;
    border-bottom:0 !important;
    gap:12px;
}

.sp-home-brands__grid .sp-home-brand-card {
    position:relative;
    min-height:134px !important;
    padding:21px 24px !important;
    overflow:hidden;
    border:1px solid #eae5dd !important;
    border-radius:15px;
    background:#ffffff !important;
    box-shadow:0 8px 26px rgba(94,63,44,.04);
    transition:transform .24s ease,border-color .24s ease,box-shadow .24s ease,background .24s ease !important;
}

.sp-home-brands__grid .sp-home-brand-card:last-child {
    border-right:1px solid #eae5dd !important;
}

.sp-home-brand-card::before {
    content:"";
    position:absolute;
    left:0;
    top:0;
    right:0;
    height:3px;
    background:linear-gradient(90deg,#ba875d,transparent 72%);
}

.sp-home-brand-card--canon::before {
    background:linear-gradient(90deg,#c89164,transparent 72%);
}

.sp-home-brand-card--other::before {
    background:linear-gradient(90deg,#cfbba1,transparent 72%);
}

.sp-home-brand-card::after {
    position:absolute;
    right:18px;
    bottom:-20px;
    color:rgba(92,57,34,.045);
    font-size:78px;
    font-weight:900;
    line-height:1;
    pointer-events:none;
}

.sp-home-brand-card--hp::after { content:"HP"; }
.sp-home-brand-card--canon::after { content:"CANON"; font-size:47px; bottom:3px; }
.sp-home-brand-card--other::after { content:"?"; font-size:96px; }

.sp-home-brand-card:hover {
    transform:translateY(-4px);
    border-color:#dfd1bf !important;
    background:linear-gradient(145deg,#f4fbfc,#ffffff) !important;
    box-shadow:0 16px 34px rgba(94,63,44,.075) !important;
}

.sp-home-brands__grid .sp-home-brand-card strong {
    margin-top:13px !important;
    font-size:18px !important;
}

.sp-home-brands__grid .sp-home-brand-card b {
    position:relative;
    z-index:1;
}

.sp-home-brand-partner {
    position:relative;
    z-index:1;
    margin-top:8px !important;
}

/* 3. Części — 3 kroki jako wyraźne, lekkie punkty */
.sp-home-parts {
    padding:56px 0 !important;
    background:
        linear-gradient(90deg,rgba(186,135,93,.035),transparent 45%),
        #eef7fa !important;
}

.sp-home-parts__grid {
    gap:58px !important;
}

.sp-home-parts__steps {
    gap:10px;
    border:0 !important;
}

.sp-home-parts__steps span {
    position:relative;
    min-height:124px !important;
    gap:7px !important;
    justify-content:center;
    padding:20px 18px !important;
    border:1px solid #e8e2d9 !important;
    border-radius:14px;
    background:rgba(255,255,255,.78);
    box-shadow:0 8px 24px rgba(94,63,44,.035);
    transition:transform .23s ease,border-color .23s ease,background .23s ease;
}

.sp-home-parts__steps span:hover {
    transform:translateY(-3px);
    border-color:#dfd1bd !important;
    background:#ffffff;
}

.sp-home-parts__steps b {
    display:grid;
    place-items:center;
    width:32px;
    height:32px;
    margin-bottom:4px;
    border:1px solid #e5d9c9;
    border-radius:10px;
    background:#edf9fa;
    color:#a17550 !important;
}

.sp-home-parts__steps strong {
    color:#20484c;
    font-size:13px;
}

.sp-home-parts__steps small {
    color:#9b8d82;
    font-size:10.5px;
    font-weight:500;
}

/* 4. MyToner — inny rytm niż pozostałe sekcje */
.sp-home-mytoner {
    padding:42px 0 !important;
    background:#ffffff !important;
}

.sp-home-mytoner__panel {
    position:relative;
    overflow:hidden;
    padding:31px 36px 31px 42px !important;
    border:0 !important;
    border-left:5px solid #ba875d !important;
    border-radius:0 16px 16px 0 !important;
    background:
        linear-gradient(100deg,#f8f3ed 0%,#f7fbfd 58%,#eef6fc 100%) !important;
    box-shadow:0 14px 34px rgba(94,63,44,.045) !important;
}

.sp-home-mytoner__panel::after {
    content:"MYTONER";
    position:absolute;
    right:34%;
    bottom:-20px;
    color:rgba(139,101,70,.045);
    font-size:72px;
    font-weight:900;
    letter-spacing:.02em;
    pointer-events:none;
}

.sp-home-mytoner__panel > * {
    position:relative;
    z-index:1;
}

/* 5. Proces — otwarty, krótki, bardziej „ścieżka” niż kolejny moduł */
.sp-home-process--compact {
    padding:30px 0 34px !important;
    background:#f5f9fb !important;
}

.sp-home-process__panel {
    grid-template-columns:minmax(235px,.62fr) minmax(0,1.9fr) !important;
    gap:26px !important;
}

.sp-home-process--compact .sp-home-process__grid article {
    padding:4px 16px !important;
}

.sp-home-process--compact .sp-home-process__grid article > span {
    background:#ffffff !important;
    border-color:#e0d2bf !important;
    box-shadow:0 0 0 5px #f5f9fb !important;
}

.sp-home-process--compact .sp-home-process__grid::before {
    background:linear-gradient(90deg,#ba875d,#d0bca2,#c89164) !important;
    opacity:.38;
}

/* 6. CTA — mocniejszy akcent, biały napis na przycisku */
.sp-final-cta {
    padding:48px 0 56px !important;
}

.sp-final-cta__panel {
    border-color:#e7dfd5 !important;
    background:
        linear-gradient(105deg,#f8f4ee 0%,#f8fbfc 64%,#edf5fb 100%) !important;
    box-shadow:0 16px 38px rgba(94,63,44,.055) !important;
}

.sp-final-cta .sp-btn--primary,
.sp-final-cta .sp-btn--primary:hover,
.sp-final-cta .sp-btn--primary:focus {
    color:#ffffff !important;
}

.sp-final-cta__phone strong {
    font-size:17px !important;
}

/* 7. Stopka — więcej realnej firmy + HP Partner od 2012 */
.sp-footer__brand > p {
    max-width:430px !important;
    line-height:1.65 !important;
}

.sp-footer__hp-partner {
    display:inline-flex;
    align-items:center;
    gap:10px;
    margin-top:17px;
    padding:8px 11px 8px 8px;
    border:1px solid #e7dfd5;
    border-radius:999px;
    background:rgba(255,255,255,.58);
}

.sp-footer__hp-mark {
    width:34px;
    height:34px;
    display:grid;
    place-items:center;
    border-radius:50%;
    background:#c89164;
    color:#ffffff !important;
    font-size:15px;
    font-weight:900;
    font-style:italic;
    letter-spacing:-.08em;
}

.sp-footer__hp-partner > span:last-child {
    display:flex;
    flex-direction:column;
    gap:1px;
}

.sp-footer__hp-partner strong {
    color:#20484c;
    font-size:11px;
}

.sp-footer__hp-partner small {
    color:#95877b;
    font-size:9px;
}

@media(max-width:1050px){
    .sp-featured-product {
        grid-template-columns:minmax(320px,1fr) minmax(0,1fr) !important;
    }
}

@media(max-width:760px){
    .sp-featured-product {
        grid-template-columns:1fr !important;
    }
    .sp-featured-product__visual img {
        width:115% !important;
        transform:scale(1.02);
    }
    .sp-home-brands__grid {
        gap:10px;
    }
    .sp-home-brands__grid .sp-home-brand-card,
    .sp-home-brands__grid .sp-home-brand-card:last-child {
        border:1px solid #eae5dd !important;
    }
    .sp-home-parts__steps {
        gap:9px;
    }
    .sp-home-parts__steps span {
        min-height:0 !important;
    }
    .sp-home-mytoner__panel {
        border-left-width:4px !important;
        border-radius:0 14px 14px 0 !important;
        padding:24px 20px !important;
    }
    .sp-home-mytoner__panel::after {
        display:none;
    }
    .sp-footer__hp-partner {
        margin-left:auto;
        margin-right:auto;
    }
}


/* =========================================================
   LIGHT v28.1 — szlify watermarków + oficjalne logo HP
   ========================================================= */

/* Marki: nazwy w tle całkowicie mieszczą się w kartach */
.sp-home-brand-card::after {
    right:22px !important;
    bottom:12px !important;
    color:rgba(92,57,34,.038) !important;
    line-height:.92 !important;
}

.sp-home-brand-card--hp::after {
    font-size:56px !important;
}

.sp-home-brand-card--canon::after {
    right:20px !important;
    bottom:17px !important;
    font-size:35px !important;
    letter-spacing:-.035em;
}

.sp-home-brand-card--other::after {
    right:28px !important;
    bottom:9px !important;
    font-size:66px !important;
}

/* MYTONER: watermark po stronie przycisków, zamiast pod nagłówkiem */
.sp-home-mytoner__panel::after {
    right:34px !important;
    bottom:-5px !important;
    font-size:58px !important;
    color:rgba(139,101,70,.042) !important;
    letter-spacing:.01em !important;
    text-align:right;
}

/* Oficjalna grafika HP z biblioteki mediów WordPressa */
.sp-footer__hp-partner--official {
    gap:12px !important;
    padding:8px 12px !important;
    border-radius:13px !important;
    background:rgba(255,255,255,.72) !important;
}

.sp-footer__hp-logo {
    display:block;
    width:auto;
    max-width:122px;
    max-height:42px;
    object-fit:contain;
}

.sp-footer__hp-partner--official > span:last-child {
    min-width:72px;
}

.sp-footer__hp-partner--official strong {
    font-size:10.5px !important;
}

.sp-footer__hp-partner--official small {
    font-size:9px !important;
}

@media(max-width:760px){
    .sp-home-brand-card::after {
        right:16px !important;
        bottom:10px !important;
    }

    .sp-home-brand-card--hp::after {
        font-size:46px !important;
    }

    .sp-home-brand-card--canon::after {
        font-size:29px !important;
        bottom:14px !important;
    }

    .sp-home-brand-card--other::after {
        font-size:54px !important;
    }

    .sp-footer__hp-logo {
        max-width:118px;
        max-height:40px;
    }
}


/* =========================================================
   LIGHT v28.2 — finalne szlify home + stopka
   ========================================================= */

/* HP w tle jak CANON — ten sam wizualny ciężar */
.sp-home-brand-card--hp::after {
    font-size:36px !important;
    right:24px !important;
    bottom:15px !important;
}

.sp-home-brand-card--canon::after {
    font-size:36px !important;
    right:20px !important;
    bottom:15px !important;
}

/* MYTONER mniejszy, niżej i dalej od przycisków */
.sp-home-mytoner__panel::after {
    right:96px !important;
    bottom:-10px !important;
    font-size:46px !important;
    color:rgba(139,101,70,.03) !important;
}

/* Stopka — płynniejszy opis firmy */
.sp-footer__brand > p {
    max-width:470px !important;
}

@media(max-width:760px){
    .sp-home-brand-card--hp::after {
        font-size:29px !important;
        right:18px !important;
        bottom:12px !important;
    }

    .sp-home-brand-card--canon::after {
        font-size:29px !important;
        right:18px !important;
        bottom:12px !important;
    }

    .sp-home-mytoner__panel::after {
        display:none !important;
    }
}


/* =========================================================
   LIGHT v28.3 — watermark MYTONER delikatniejszy
   ========================================================= */
.sp-home-mytoner__panel::after {
    right:118px !important;
    bottom:-2px !important;
    font-size:36px !important;
    letter-spacing:.06em !important;
    color:rgba(255,255,255,.55) !important;
}

@media(max-width:1024px){
    .sp-home-mytoner__panel::after {
        right:80px !important;
        font-size:30px !important;
        bottom:2px !important;
    }
}


/* =========================================================
   LIGHT v28.5 — klikalny, wolny pasek / karuzela zaufania
   ========================================================= */
.sp-trust--carousel {
    overflow:hidden !important;
    border-bottom:1px solid #ede8e2 !important;
    background:#f8fbfc !important;
}

.sp-trust-carousel {
    width:100%;
    overflow:hidden;
    padding:12px 0;
}

.sp-trust-carousel__track {
    display:flex;
    width:max-content;
    animation:spTrustMarquee 38s linear infinite;
    will-change:transform;
}

.sp-trust-carousel:hover .sp-trust-carousel__track,
.sp-trust-carousel:focus-within .sp-trust-carousel__track {
    animation-play-state:paused;
}

.sp-trust-carousel__group {
    display:flex;
    gap:12px;
    padding-left:12px;
}

.sp-trust-card {
    --trust-accent:#ba875d;
    position:relative;
    width:clamp(300px,23vw,390px);
    min-height:88px;
    display:grid;
    grid-template-columns:48px minmax(0,1fr) 22px;
    align-items:center;
    gap:14px;
    padding:15px 18px;
    overflow:hidden;
    border:1px solid rgba(112,72,47,.11);
    border-radius:16px;
    text-decoration:none !important;
    box-shadow:0 8px 22px rgba(94,63,44,.045);
    transition:transform .24s ease, box-shadow .24s ease, border-color .24s ease, filter .24s ease;
}

.sp-trust-card--mint {
    --trust-accent:#a87a54;
    background:linear-gradient(135deg,#eefbfa 0%,#f9fdfc 100%);
}
.sp-trust-card--blue {
    --trust-accent:#c89164;
    background:linear-gradient(135deg,#f0f7fd 0%,#fbfdff 100%);
}
.sp-trust-card--aqua {
    --trust-accent:#aa7b55;
    background:linear-gradient(135deg,#edfafa 0%,#f8fcfd 100%);
}
.sp-trust-card--lilac {
    --trust-accent:#d8c4a8;
    background:linear-gradient(135deg,#f4f3fd 0%,#fbfbff 100%);
}

.sp-trust-card::before {
    content:"";
    position:absolute;
    inset:0 auto 0 0;
    width:3px;
    background:var(--trust-accent);
    opacity:.72;
}

.sp-trust-card:hover,
.sp-trust-card:focus-visible {
    transform:translateY(-3px);
    border-color:color-mix(in srgb,var(--trust-accent) 38%,#eae5df);
    box-shadow:0 14px 30px rgba(94,63,44,.085);
    filter:saturate(1.04);
    outline:none;
}

.sp-trust-card__icon {
    width:46px;
    height:46px;
    display:grid;
    place-items:center;
    border:1px solid color-mix(in srgb,var(--trust-accent) 34%,#ede9e3);
    border-radius:13px;
    color:var(--trust-accent);
    background:rgba(255,255,255,.72);
    font-size:18px;
    font-weight:800;
}

.sp-trust-card__copy {
    min-width:0;
    display:flex;
    flex-direction:column;
    gap:4px;
}

.sp-trust-card__copy strong {
    color:#20484c;
    font-size:13.5px;
    font-weight:800;
    line-height:1.2;
}

.sp-trust-card__copy > span {
    color:#938478;
    font-size:11.5px;
    line-height:1.35;
}

.sp-trust-card__arrow {
    color:var(--trust-accent);
    font-size:17px;
    transition:transform .24s ease;
}

.sp-trust-card:hover .sp-trust-card__arrow,
.sp-trust-card:focus-visible .sp-trust-card__arrow {
    transform:translateX(4px);
}

@keyframes spTrustMarquee {
    from { transform:translateX(0); }
    to { transform:translateX(-50%); }
}

@media(max-width:760px){
    .sp-trust-carousel {
        overflow-x:auto;
        scrollbar-width:none;
        scroll-snap-type:x proximity;
        -webkit-overflow-scrolling:touch;
    }
    .sp-trust-carousel::-webkit-scrollbar { display:none; }
    .sp-trust-carousel__track {
        animation-duration:46s;
    }
    .sp-trust-card {
        width:82vw;
        max-width:340px;
        min-height:82px;
        grid-template-columns:44px minmax(0,1fr) 18px;
        scroll-snap-align:center;
        padding:13px 15px;
    }
    .sp-trust-card__icon {
        width:42px;
        height:42px;
    }
}

@media(prefers-reduced-motion:reduce){
    .sp-trust-carousel__track {
        animation:none !important;
    }
    .sp-trust-carousel {
        overflow-x:auto;
    }
}


/* =========================================================
   LIGHT v28.6 — MOBILE HOTFIX
   Późniejsze reguły desktopowe z !important nadpisywały
   wcześniejsze media queries i utrzymywały układ 2-kolumnowy.
   ========================================================= */

@media(max-width:760px){

    /* PRODUKTY / MYTONER — wszystko jedna kolumna */
    .sp-home-products__layout {
        grid-template-columns:1fr !important;
        gap:16px !important;
        align-items:start !important;
    }

    .sp-featured-product {
        grid-template-columns:1fr !important;
        min-height:0 !important;
        width:100% !important;
    }

    .sp-featured-product__visual {
        min-height:240px !important;
        padding:18px 12px !important;
    }

    .sp-featured-product__visual img {
        width:112% !important;
        max-width:none !important;
        max-height:250px !important;
        transform:scale(1.02) !important;
    }

    .sp-featured-product__content {
        padding:24px 20px 26px !important;
    }

    .sp-shop-picks {
        width:100% !important;
        height:auto !important;
        min-height:0 !important;
        align-self:start !important;
    }

    .sp-shop-pick {
        min-height:76px !important;
        padding-top:12px !important;
        padding-bottom:12px !important;
    }

    .sp-shop-picks__all {
        min-height:56px !important;
    }

    /* PROCES — jedna kolumna, bez ściskania tekstu po prawej */
    .sp-home-process__panel {
        grid-template-columns:1fr !important;
        gap:18px !important;
        width:100% !important;
        padding:4px 0 !important;
    }

    .sp-home-process__intro {
        width:100% !important;
        padding:0 !important;
    }

    .sp-home-process--compact .sp-home-process__grid {
        grid-template-columns:1fr !important;
        width:100% !important;
        gap:0 !important;
    }

    .sp-home-process--compact .sp-home-process__grid::before {
        display:none !important;
    }

    .sp-home-process--compact .sp-home-process__grid article,
    .sp-home-process--compact .sp-home-process__grid article:first-child {
        grid-template-columns:44px minmax(0,1fr) !important;
        width:100% !important;
        padding:14px 0 !important;
        border-left:0 !important;
        border-top:1px solid #ede8e2 !important;
    }

    .sp-home-process--compact .sp-home-process__grid article:first-child {
        border-top:0 !important;
    }

    .sp-home-process--compact .sp-home-process__grid strong {
        font-size:16px !important;
    }

    .sp-home-process--compact .sp-home-process__grid p {
        font-size:12.5px !important;
        line-height:1.55 !important;
    }
}

@media(max-width:480px){
    .sp-featured-product__visual {
        min-height:210px !important;
    }

    .sp-featured-product__visual img {
        max-height:220px !important;
    }
}


/* =========================================================
   v41.8 — telefony / globalna czytelność w jasnej turkusowej wersji
   ========================================================= */

body.sp-site a[href^="tel:"]:not(.sp-topbar__phone){
    font-weight:900;
}

body.sp-site .sp-footer__contact-links a[href^="tel:"]{
    font-size:14px;
}

body.sp-site .sp-article__phone,
body.sp-site .sp-article-hero__phone strong,
body.sp-site .sp-service__phone strong,
body.sp-site .sp-final-cta__phone strong,
body.sp-site .sp-service-page-cta__phone strong,
body.sp-site .sp-parts-page-cta__phone strong,
body.sp-site .sp-about-page-cta__phone strong,
body.sp-site .sp-plotters-page-cta__phone strong,
body.sp-site .sp-request__quick-phone strong{
    font-size:17px !important;
    font-weight:900 !important;
}


/* =========================================================
   WERSJA 2 — PREMIUM GLASS / LIGHT TECH
   Osobny design dla /wersja-2/
   ========================================================= */

.sp-v2-body {
    --v2-ink:#184145;
    --v2-text:#806e60;
    --v2-blue:#f0d9bb;
    --v2-cyan:#c89164;
    --v2-violet:#ffe7c7;
    --v2-magenta:#e743b5;
    --v2-pink:#f394cf;
    --v2-green:#c9ab92;
    --v2-line:rgba(125,86,62,.13);
    --v2-shadow:0 22px 60px rgba(112,73,49,.11);
    --v2-glass:rgba(255,255,255,.76);
    --v2-glass-strong:rgba(255,255,255,.9);
    background:#f7fbfe;
}

.sp-v2-body .sp-main { overflow:hidden; }
.spv2g { color:var(--v2-ink); background:#f7fbfe; }
.spv2g * { box-sizing:border-box; }
.spv2g a { text-decoration:none; }
.spv2g h1,.spv2g h2,.spv2g h3,.spv2g p { margin-top:0; }
.spv2g-kicker {
    margin:0 0 8px;
    color:#a07450;
    font-size:10px;
    font-weight:900;
    letter-spacing:.18em;
}
.spv2g-kicker--light { color:#ffe7c7; }

/* HEADER tylko dla Wersji 2 */
.sp-v2-body .sp-topbar {
    background:linear-gradient(90deg,#eef8fb,#f8fbff 58%,#f2f0ff);
    border-bottom:1px solid rgba(131,104,82,.08);
}
.sp-v2-body .sp-header {
    background:rgba(255,255,255,.93);
    border-bottom:1px solid rgba(125,86,62,.08);
    box-shadow:0 8px 28px rgba(106,71,49,.045);
}
.sp-v2-body .sp-navbar { background:rgba(255,255,255,.93); backdrop-filter:blur(18px); }
.sp-v2-body .sp-btn--header {
    color:#ffffff !important;
    background:linear-gradient(105deg,#ba875d 0%,#e1ccb0 55%,#e9d3b6 100%) !important;
    box-shadow:0 12px 26px rgba(222,201,173,.22) !important;
}

/* HERO */
.spv2g-hero {
    position:relative;
    padding:58px 0 24px;
    background:
        radial-gradient(circle at 76% 32%,rgba(255,231,199,.18),transparent 27%),
        radial-gradient(circle at 94% 46%,rgba(238,215,186,.17),transparent 27%),
        linear-gradient(112deg,#ffffff 0%,#fbfdff 54%,#fffbf5 100%);
    border-bottom:1px solid var(--v2-line);
}
.spv2g-hero::before {
    content:"";
    position:absolute; inset:0;
    pointer-events:none;
    opacity:.42;
    background-image:
        linear-gradient(rgba(145,111,83,.05) 1px,transparent 1px),
        linear-gradient(90deg,rgba(145,111,83,.05) 1px,transparent 1px);
    background-size:44px 44px;
    mask-image:linear-gradient(90deg,transparent 10%,#000000 52%,#000000 100%);
}
.spv2g-hero__glow { position:absolute; border-radius:50%; filter:blur(75px); pointer-events:none; }
.spv2g-hero__glow--cyan { width:330px;height:330px;right:28%;top:50px;background:rgba(255,231,199,.18); }
.spv2g-hero__glow--violet { width:360px;height:360px;right:-90px;top:90px;background:rgba(238,215,186,.18); }
.spv2g-hero__dots {
    position:absolute; right:5%; top:42px; width:190px; height:150px;
    opacity:.26;
    background-image:radial-gradient(circle,#ffe7c7 1.3px,transparent 1.5px);
    background-size:12px 12px;
    mask-image:radial-gradient(circle,#000000,transparent 72%);
}
.spv2g-hero__grid {
    position:relative; z-index:2;
    min-height:510px;
    display:grid;
    grid-template-columns:minmax(430px,.82fr) minmax(640px,1.18fr);
    gap:38px;
    align-items:center;
}
.spv2g-badge {
    width:max-content;
    display:inline-flex; align-items:center; gap:8px;
    margin-bottom:20px; padding:8px 12px;
    border:1px solid rgba(182,132,91,.2);
    border-radius:8px;
    background:rgba(255,255,255,.72);
    backdrop-filter:blur(12px);
    box-shadow:0 7px 22px rgba(118,76,49,.06);
    color:#498b92;
    font-size:9px; letter-spacing:.04em;
}
.spv2g-badge span { color:#ad7d56; }
.spv2g-hero h1 {
    margin:0;
    max-width:660px;
    color:var(--v2-ink);
    font-size:clamp(55px,4.8vw,78px);
    line-height:.92;
    letter-spacing:-.055em;
}
.spv2g-hero h1 em {
    display:inline-block;
    font-style:normal;
    background:linear-gradient(90deg,#bd895e 0%,#e5cfb3 55%,#e2cdb0 100%);
    -webkit-background-clip:text;
    background-clip:text;
    -webkit-text-fill-color:transparent;
}
.spv2g-hero__lead {
    max-width:620px;
    margin:24px 0 0;
    color:#837163;
    font-size:14px;
    line-height:1.7;
}
.spv2g-hero__actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:27px; }
.spv2g-btn {
    min-height:48px; display:inline-flex; align-items:center; justify-content:center; gap:18px;
    padding:0 21px; border-radius:8px; font-size:12px; font-weight:900;
    transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease;
}
.spv2g-btn:hover { transform:translateY(-2px); }
.spv2g-btn--gradient {
    color:#ffffff !important;
    background:linear-gradient(105deg,#bd895e 0%,#e3ceb1 58%,#e6d0b3 100%);
    box-shadow:0 13px 30px rgba(223,202,174,.22);
}
.spv2g-btn--glass {
    color:#22494d;
    border:1px solid rgba(134,107,85,.18);
    background:rgba(255,255,255,.72);
    backdrop-filter:blur(13px);
    box-shadow:0 10px 26px rgba(105,69,47,.055);
}
.spv2g-hero__phone { margin-top:18px; display:flex; gap:10px; align-items:center; color:#9f9287; font-size:10px; }
.spv2g-hero__phone a { color:#c79064; font-size:13px; font-weight:900; }
.spv2g-hero__media { position:relative; min-height:490px; }
.spv2g-hero__media img {
    position:absolute; z-index:3; right:-2%; bottom:15px;
    width:105%; max-width:none;
    filter:drop-shadow(0 32px 30px rgba(87,54,33,.16));
}
.spv2g-hero__ring {
    position:absolute; z-index:1; border-radius:50%; pointer-events:none;
    border:2px solid rgba(217,196,169,.24);
}
.spv2g-hero__ring--one { width:470px;height:470px;left:4%;top:2%; }
.spv2g-hero__ring--two { width:570px;height:570px;left:-3%;top:-8%; border-color:rgba(235,213,183,.13); }
.spv2g-hero__wave {
    position:absolute; z-index:1; right:-14%; bottom:0;
    width:85%; height:75%;
    border-radius:60% 20% 0 70%;
    background:linear-gradient(120deg,rgba(200,145,100,.08),rgba(244,221,190,.14) 44%,rgba(235,213,183,.16) 80%,rgba(255,110,190,.12));
    filter:blur(1px);
    transform:skewX(-8deg);
}

/* TRUST GLASS */
.spv2g-trust {
    position:relative; z-index:4;
    display:grid; grid-template-columns:repeat(4,1fr); gap:12px;
    margin-top:-2px; padding-bottom:16px;
}
.spv2g-trust__item {
    min-height:86px;
    display:grid; grid-template-columns:50px 1fr; gap:13px; align-items:center;
    padding:14px 17px;
    border:1px solid rgba(255,255,255,.9);
    border-radius:13px;
    background:rgba(255,255,255,.62);
    backdrop-filter:blur(16px);
    box-shadow:0 11px 30px rgba(106,71,49,.07);
    color:var(--v2-ink);
    transition:transform .25s ease,box-shadow .25s ease;
}
.spv2g-trust__item:hover { transform:translateY(-4px); box-shadow:0 18px 38px rgba(106,71,49,.11); }
.spv2g-trust__item--green { background:linear-gradient(115deg,rgba(241,255,243,.88),rgba(255,255,255,.64)); }
.spv2g-trust__item--blue { background:linear-gradient(115deg,rgba(255,250,244,.92),rgba(255,255,255,.65)); }
.spv2g-trust__item--violet { background:linear-gradient(115deg,rgba(255,251,245,.92),rgba(255,255,255,.66)); }
.spv2g-trust__item--pink { background:linear-gradient(115deg,rgba(255,239,248,.92),rgba(255,255,255,.67)); }
.spv2g-trust__icon {
    width:44px;height:44px;display:grid;place-items:center;border-radius:50%;
    border:1px solid rgba(255,255,255,.95);
    background:rgba(255,255,255,.72); font-size:20px;
    box-shadow:0 7px 20px rgba(117,88,69,.07);
}
.spv2g-trust__item--green .spv2g-trust__icon { color:#a77954; }
.spv2g-trust__item--blue .spv2g-trust__icon { color:#e4ceb2; }
.spv2g-trust__item--violet .spv2g-trust__icon { color:#f4ddbe; }
.spv2g-trust__item--pink .spv2g-trust__icon { color:#e847a8; }
.spv2g-trust__item strong { display:block; font-size:12px; }
.spv2g-trust__item small { display:block; margin-top:4px; color:#95877c; font-size:9.5px; line-height:1.45; }

/* SHOP GLASS */
.spv2g-shop { padding:34px 0 54px; background:linear-gradient(180deg,#f6fbfe,#ffffff); }
.spv2g-shop__shell {
    position:relative; overflow:hidden;
    padding:26px;
    border:1px solid rgba(154,125,102,.13);
    border-radius:18px;
    background:
        radial-gradient(circle at 84% 18%,rgba(255,231,199,.12),transparent 23%),
        linear-gradient(130deg,rgba(255,255,255,.86),rgba(240,248,255,.74));
    backdrop-filter:blur(18px);
    box-shadow:var(--v2-shadow);
}
.spv2g-shop__shell::before {
    content:"";position:absolute;inset:0;pointer-events:none;
    background:linear-gradient(115deg,rgba(255,255,255,.52),transparent 28%,transparent 72%,rgba(255,238,216,.10));
}
.spv2g-shop__head {
    position:relative;z-index:2;
    display:grid;grid-template-columns:minmax(0,1fr) auto;gap:30px;align-items:end;
    padding:0 4px 17px;
}
.spv2g-shop__head h2 { max-width:650px; margin:0; font-size:clamp(29px,2.4vw,40px); line-height:1.04; letter-spacing:-.04em; }
.spv2g-shop__head > a { color:#d3bfa5; font-size:10px; font-weight:900; }
.spv2g-shop__ghost {
    position:absolute;right:8%;top:4px;
    color:rgba(226,205,176,.07);font-size:52px;font-weight:900;font-style:italic;pointer-events:none;
}
.spv2g-shop__grid { position:relative;z-index:2; display:grid;grid-template-columns:1.08fr .92fr;gap:14px; }
.spv2g-product-card,.spv2g-inks {
    border:1px solid rgba(137,111,89,.14);
    border-radius:14px;
    background:rgba(255,255,255,.79);
    backdrop-filter:blur(16px);
    box-shadow:0 14px 36px rgba(105,71,50,.075);
}
.spv2g-product-card { display:grid;grid-template-columns:.95fr 1.05fr;min-height:285px;overflow:hidden;color:var(--v2-ink); }
.spv2g-product-card__visual { display:grid;place-items:center;padding:20px;background:linear-gradient(145deg,#f9fcfd,#f2f8fa); }
.spv2g-product-card__visual img { width:112%;max-width:430px;transition:transform .35s ease; }
.spv2g-product-card:hover img { transform:scale(1.035); }
.spv2g-product-card__copy { display:flex;flex-direction:column;padding:27px 24px; }
.spv2g-chip { width:max-content;padding:5px 8px;border-radius:999px;background:#f7f1e9;color:#966d4b;font-size:8px;font-weight:900;letter-spacing:.08em; }
.spv2g-product-card h3 { margin:14px 0 8px;font-size:30px;line-height:.98;letter-spacing:-.04em; }
.spv2g-product-card p { margin:0;color:#8b7d71;font-size:11px;line-height:1.55; }
.spv2g-product-card__meta { display:flex;gap:6px;flex-wrap:wrap;margin-top:15px; }
.spv2g-product-card__meta span { padding:5px 7px;border:1px solid #eae6e0;border-radius:6px;color:#8d7e72;font-size:8px;font-weight:800; }
.spv2g-product-card__copy > strong { margin-top:auto;color:#d8c4a8;font-size:10.5px; }
.spv2g-product-card__copy > strong b { color:#e1ccb0; }

.spv2g-inks { overflow:hidden; }
.spv2g-inks__head { display:flex;justify-content:space-between;gap:16px;align-items:center;padding:19px 20px 15px;border-bottom:1px solid #e0eaee; }
.spv2g-inks__head h3 { margin:0;font-size:15px; }
.spv2g-inks__switch { display:flex;gap:6px; }
.spv2g-inks__switch a { padding:7px 9px;border-radius:6px;background:linear-gradient(110deg,#bc885e,#e2cdb0,#e2cdb0);color:#ffffff;font-size:8px;font-weight:900; }
.spv2g-inks__switch a:last-child { background:#ffffff;color:#224a4e;border:1px solid #e7e2dc; }
.spv2g-ink { display:grid;grid-template-columns:34px 1fr 20px;gap:10px;align-items:center;min-height:62px;padding:10px 17px;border-bottom:1px solid #e1e9ed;color:var(--v2-ink);transition:background .2s ease; }
.spv2g-ink:hover { background:rgba(243,249,252,.85); }
.spv2g-ink i { width:19px;height:19px;border-radius:50%;border:3px solid #ffffff;box-shadow:0 0 0 1px #e6e1db; }
.spv2g-ink--y i { background:#ffca1a; }
.spv2g-ink--m i { background:#e72d87; }
.spv2g-ink--k i { background:#1d3436; }
.spv2g-ink small { display:block;color:#a3988f;font-size:8px; }
.spv2g-ink strong { display:block;margin-top:2px;font-size:11px; }
.spv2g-ink b { color:#b5835a;font-size:12px; }
.spv2g-inks__all { min-height:49px;display:flex;align-items:center;justify-content:space-between;padding:0 18px;color:#976d4c;background:rgba(248,243,237,.78);font-size:9px;font-weight:900; }

/* SERVICE */
.spv2g-service { padding:22px 0 22px;background:#ffffff; }
.spv2g-service__head { display:grid;grid-template-columns:minmax(0,1fr) auto;gap:40px;align-items:end;margin-bottom:14px; }
.spv2g-service__head h2 { max-width:650px;margin:0;font-size:clamp(27px,2.3vw,38px);line-height:1.05;letter-spacing:-.035em; }
.spv2g-service__head > a { color:#cfbba1;font-size:9px;font-weight:900; }
.spv2g-service__cards { display:grid;grid-template-columns:repeat(3,1fr);gap:10px; }
.spv2g-service-card {
    min-height:92px;display:grid;grid-template-columns:52px 1fr;gap:14px;align-items:center;
    padding:14px 17px;border:1px solid rgba(139,112,90,.12);border-radius:16px;
    background:rgba(255,255,255,.76);backdrop-filter:blur(14px);
    box-shadow:0 10px 28px rgba(104,70,49,.055);color:var(--v2-ink);
    transition:transform .23s ease,box-shadow .23s ease,border-color .23s ease;
}
.spv2g-service-card:hover { transform:translateY(-4px);box-shadow:0 16px 34px rgba(104,70,49,.09); }
.spv2g-service-card__icon { width:46px;height:46px;display:grid;place-items:center;border-radius:14px;border:1px solid rgba(255,255,255,.95);box-shadow:0 7px 18px rgba(104,76,58,.06); }
.spv2g-service-card__icon svg { width:22px;height:22px;stroke:currentColor;stroke-width:1.85;fill:none; }
.spv2g-service-card--violet .spv2g-service-card__icon { color:#efd8ba;background:linear-gradient(180deg,#f8f3ff,#fffaf3); }
.spv2g-service-card--blue .spv2g-service-card__icon { color:#efd8ba;background:linear-gradient(180deg,#f1f6ff,#fffaf3); }
.spv2g-service-card--cyan .spv2g-service-card__icon { color:#bd895e;background:linear-gradient(180deg,#fffbf5,#fbf5ee); }
.spv2g-service-card strong { display:block;font-size:12px; }
.spv2g-service-card small { display:block;margin-top:4px;color:#928479;font-size:9px;line-height:1.4; }
.spv2g-service__rail {
    position:relative;max-width:460px;height:26px;margin:10px auto 0;
}
.spv2g-service__rail::before {
    content:"";position:absolute;left:0;right:0;top:50%;height:4px;transform:translateY(-50%);
    border-radius:999px;background:linear-gradient(90deg,#ffe7c7 0%,#ffe7c7 50%,#cc9466 100%);
    box-shadow:0 4px 16px rgba(223,202,174,.12);
}
.spv2g-service__rail span {
    position:absolute;top:50%;width:13px;height:13px;border-radius:50%;transform:translate(-50%,-50%);
    border:3px solid #ffffff;box-shadow:0 6px 12px rgba(134,99,71,.14);
}
.spv2g-service__rail span:nth-child(1) { left:8%; background:#f4ddbe; }
.spv2g-service__rail span:nth-child(2) { left:50%; background:#ffe7c7; }
.spv2g-service__rail span:nth-child(3) { left:92%; background:#c89164; }

/* BRANDS */
.spv2g-brands { padding:16px 0 25px;background:#ffffff; }
.spv2g-brands__head { display:grid;grid-template-columns:minmax(0,1fr) 420px;gap:50px;align-items:end;margin-bottom:12px; }
.spv2g-brands__head h2 { margin:0;font-size:clamp(25px,2.2vw,35px);letter-spacing:-.035em; }
.spv2g-brands__head > p { margin:0;color:#978a7f;font-size:10px;line-height:1.55; }
.spv2g-brands__grid { display:grid;grid-template-columns:repeat(3,1fr);gap:10px; }
.spv2g-brand {
    position:relative;overflow:hidden;min-height:126px;
    display:block;
    padding:18px 18px 18px;border:1px solid rgba(139,112,90,.13);border-radius:16px;
    background:rgba(255,255,255,.75);backdrop-filter:blur(14px);
    box-shadow:0 9px 24px rgba(104,70,49,.05);color:var(--v2-ink);
    transition:transform .23s ease,border-color .23s ease,box-shadow .23s ease;
}
.spv2g-brand:hover { transform:translateY(-4px);box-shadow:0 16px 35px rgba(104,70,49,.09); }
.spv2g-brand--hp { background:linear-gradient(125deg,rgba(255,251,245,.92),rgba(255,255,255,.72)); }
.spv2g-brand--canon { background:linear-gradient(125deg,rgba(255,244,247,.92),rgba(255,255,255,.72)); }
.spv2g-brand--other { background:linear-gradient(125deg,rgba(247,244,255,.92),rgba(255,255,255,.72)); }
.spv2g-brand__logo {
    position:absolute;left:18px;top:16px;z-index:2;display:inline-flex;align-items:center;justify-content:center;
    min-width:44px;min-height:24px;padding:4px 8px;border-radius:999px;background:rgba(255,255,255,.78);
    border:1px solid rgba(230,219,205,.7);box-shadow:0 8px 18px rgba(118,82,60,.05);
}
.spv2g-brand__logo--hp img { display:block;max-width:42px;max-height:18px;object-fit:contain; }
.spv2g-brand__logo--canon { color:#d9202f;font-family:Georgia,serif;font-size:19px;font-weight:700;line-height:1; }
.spv2g-brand__logo--other { width:30px;height:30px;min-width:30px;min-height:30px;padding:0;border-radius:50%;font-size:19px;font-weight:900;color:#a09389; }
.spv2g-brand__content { position:relative;z-index:2;padding-top:38px;max-width:210px; }
.spv2g-brand strong { display:block;font-size:12.5px; }
.spv2g-brand small { display:block;margin-top:4px;color:#95877c;font-size:9px;line-height:1.4; }
.spv2g-brand b { display:block;margin-top:8px;color:#d6c2a7;font-size:9px; }
.spv2g-brand b span { color:#dec9ad; }
.spv2g-brand > i {
    position:absolute;right:18px;bottom:14px;color:rgba(116,96,82,.048);font-style:normal;font-size:44px;font-weight:900;line-height:1;
    pointer-events:none;letter-spacing:-.04em;
}
.spv2g-brand--canon > i { font-size:38px;color:rgba(224,61,107,.06); }
.spv2g-brand--other > i { font-size:42px;color:rgba(160,148,138,.06); }

/* PROCESS */
.spv2g-process { padding:10px 0 14px;background:#ffffff; }
.spv2g-process__bar {
    position:relative;overflow:hidden;
    min-height:112px;display:grid;grid-template-columns:250px 1fr;gap:26px;align-items:center;
    padding:18px 24px;border-radius:14px;
    color:#ffffff;
    background:
        radial-gradient(circle at 80% 20%,rgba(255,231,199,.25),transparent 30%),
        linear-gradient(105deg,#195359 0%,#206c74 48%,#aa7b55 100%);
    box-shadow:0 18px 42px rgba(92,52,26,.18);
}
.spv2g-process__bar::after {
    content:"";position:absolute;right:-45px;top:-110px;width:320px;height:320px;border:1px solid rgba(255,231,199,.18);border-radius:50%;
}
.spv2g-process__intro h2 { margin:0;font-size:25px;line-height:1.05;letter-spacing:-.03em; }
.spv2g-process ol { list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr); }
.spv2g-process li { position:relative;z-index:2;display:grid;grid-template-columns:46px 1fr;gap:11px;align-items:center;padding:0 17px;border-left:1px solid rgba(255,255,255,.15); }
.spv2g-process li > span { width:42px;height:42px;display:grid;place-items:center;border-radius:50%;border:1px solid rgba(255,231,199,.55);background:rgba(255,255,255,.06);font-size:12px;font-weight:900; }
.spv2g-process strong { display:block;font-size:11px; }
.spv2g-process small { display:block;margin-top:3px;color:#eee3d4;font-size:8.5px;line-height:1.45; }

/* CTA */
.spv2g-cta { padding:0 0 18px;background:#ffffff; }
.spv2g-cta__panel {
    display:grid;grid-template-columns:58px minmax(0,1fr) 210px 215px;gap:16px;align-items:center;
    padding:15px 18px;border:1px solid rgba(209,189,163,.15);border-radius:14px;
    background:
        radial-gradient(circle at 72% 50%,rgba(237,215,185,.11),transparent 22%),
        linear-gradient(105deg,#f4fbff,#f8f7ff 58%,#fdf7ff);
    box-shadow:0 11px 28px rgba(109,79,59,.06);
}
.spv2g-cta__icon { width:48px;height:48px;display:grid;place-items:center;border:1px solid #f0e3d1;border-radius:50%;color:#dfcaae;background:#ffffff;font-size:20px; }
.spv2g-cta__panel > div:nth-child(2) > span { color:#908174;font-size:9px; }
.spv2g-cta h2 { margin:2px 0 2px;font-size:20px;letter-spacing:-.025em; }
.spv2g-cta p { margin:0;color:#96897e;font-size:9px; }
.spv2g-cta__button { width:100%; }
.spv2g-cta__phone {
    min-height:52px;display:grid;grid-template-columns:36px 1fr;align-items:center;padding:7px 12px;
    border:1px solid rgba(140,114,92,.12);border-radius:9px;background:rgba(255,255,255,.78);color:var(--v2-ink);
}
.spv2g-cta__phone > span { grid-row:1/3;width:30px;height:30px;display:grid;place-items:center;border-radius:50%;border:1px solid #f0e6d8;color:#dfcaae; }
.spv2g-cta__phone strong { font-size:13px; }
.spv2g-cta__phone small { color:#9a8d82;font-size:8px; }

/* DARK FOOTER tylko na v2 */
.sp-v2-body .sp-footer {
    border-top:0 !important;
    background:
        radial-gradient(circle at 9% 10%,rgba(205,186,160,.12),transparent 22%),
        radial-gradient(circle at 87% 18%,rgba(239,216,186,.14),transparent 26%),
        linear-gradient(120deg,#123e42 0%,#103438 55%,#0d2a2d 100%) !important;
    color:#d2c8bc !important;
}
.sp-v2-body .sp-footer__logo > span {
    filter:brightness(0) invert(1) sepia(.15) saturate(3) hue-rotate(150deg);
}
.sp-v2-body .sp-footer__brand > p,
.sp-v2-body .sp-footer__nav a,
.sp-v2-body .sp-footer__locations p,
.sp-v2-body .sp-footer__bottom,
.sp-v2-body .sp-footer__credit,
.sp-v2-body .sp-footer__network a { color:#c9baae !important; }
.sp-v2-body .sp-footer__contact-links a,
.sp-v2-body .sp-footer__nav > strong,
.sp-v2-body .sp-footer__locations > strong,
.sp-v2-body .sp-footer__locations div span { color:#ffffff !important; }
.sp-v2-body .sp-footer__bottom { border-color:rgba(255,255,255,.12) !important; }
.sp-v2-body .sp-footer__hp-partner--official {
    border-color:rgba(255,255,255,.13) !important;
    background:rgba(255,255,255,.055) !important;
    backdrop-filter:blur(10px);
}
.sp-v2-body .sp-footer__hp-partner--official strong { color:#ffffff !important; }
.sp-v2-body .sp-footer__hp-partner--official small { color:#c9baae !important; }

/* RESPONSIVE */
@media(max-width:1180px){
    .spv2g-hero__grid { grid-template-columns:1fr;min-height:0; }
    .spv2g-hero__media { min-height:430px; }
    .spv2g-hero__media img { width:86%;right:2%; }
    .spv2g-shop__grid { grid-template-columns:1fr; }
    .spv2g-product-card { max-width:900px;margin:auto;width:100%; }
}
@media(max-width:900px){
    .spv2g-trust { grid-template-columns:1fr 1fr; }
    .spv2g-service__cards,.spv2g-brands__grid { grid-template-columns:1fr; }
    .spv2g-brands__head { grid-template-columns:1fr;gap:12px; }
    .spv2g-process__bar { grid-template-columns:1fr; }
    .spv2g-process ol { grid-template-columns:1fr;gap:10px; }
    .spv2g-process li { border-left:0;border-top:1px solid rgba(255,255,255,.13);padding:10px 0; }
    .spv2g-process li:first-child { border-top:0; }
    .spv2g-cta__panel { grid-template-columns:52px 1fr; }
    .spv2g-cta__button,.spv2g-cta__phone { grid-column:1/-1; }
}
@media(max-width:650px){
    .spv2g-hero { padding-top:38px; }
    .spv2g-hero h1 { font-size:clamp(46px,13vw,62px); }
    .spv2g-hero__actions { flex-direction:column;align-items:stretch; }
    .spv2g-btn { width:100%; }
    .spv2g-hero__media {
        min-height:285px;
        display:flex;
        justify-content:center;
        align-items:flex-end;
    }
    .spv2g-hero__media img {
        left:50%;
        right:auto;
        bottom:5px;
        width:104%;
        max-width:none;
        transform:translateX(-50%);
    }
    .spv2g-hero__ring--one {
        width:280px;height:280px;
        left:50%;
        transform:translateX(-50%);
    }
    .spv2g-hero__ring--two {
        width:340px;height:340px;
        left:50%;
        transform:translateX(-50%);
    }
    .spv2g-trust { grid-template-columns:1fr; }
    .spv2g-shop { padding-top:20px; }
    .spv2g-shop__shell { padding:18px 14px; }
    .spv2g-shop__head { grid-template-columns:1fr; }
    .spv2g-shop__ghost { font-size:34px;right:2%;top:18px; }
    .spv2g-product-card { grid-template-columns:1fr; }
    .spv2g-product-card__visual { min-height:220px; }
    .spv2g-product-card__visual img { width:105%; }
    .spv2g-inks__head { align-items:flex-start;flex-direction:column; }
    .spv2g-service__head { grid-template-columns:1fr;gap:8px; }
    .spv2g-process__bar { padding:18px; }
    .spv2g-cta__panel { grid-template-columns:1fr;padding:18px; }
    .spv2g-cta__icon { display:none; }
    .spv2g-cta__button,.spv2g-cta__phone { grid-column:auto; }
}


/* =========================================================
   WERSJA 2 v31.1 — jaśniejsza typografia paska procesu
   ========================================================= */
.spv2g-process__intro h2,
.spv2g-process strong {
    color:#ffffff !important;
}

.spv2g-process small {
    color:#f8f0e5 !important;
}

.spv2g-process__intro .spv2g-kicker--light {
    color:#ffe7c7 !important;
}

.spv2g-process li > span {
    color:#ffffff !important;
    border-color:rgba(255,231,199,.62) !important;
    background:rgba(255,255,255,.08) !important;
}


@media (max-width: 900px) {
    .spv2g-service__rail { max-width:320px; }
    .spv2g-brand__content { max-width:none; }
}
@media (max-width: 767px) {
    .spv2g-service__cards { grid-template-columns:1fr; }
    .spv2g-service__rail { display:none; }
    .spv2g-brand { min-height:auto; }
    .spv2g-brand__content { padding-top:42px; }
    .spv2g-brand > i { right:14px; bottom:12px; font-size:36px; }
    .spv2g-brand--canon > i { font-size:32px; }
    .spv2g-brand--other > i { font-size:36px; }
}


/* =========================================================
   WERSJA 2 v31.4 — większe przyciski Tusze / Papier
   ========================================================= */
.spv2g-inks__switch {
    gap:10px !important;
}

.spv2g-inks__switch a {
    min-width:96px !important;
    min-height:38px !important;
    padding:0 16px !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    border-radius:9px !important;
    font-size:10.5px !important;
    font-weight:900 !important;
    letter-spacing:.01em !important;
    box-shadow:0 8px 18px rgba(124,86,62,.08) !important;
}

.spv2g-inks__switch a:first-child {
    background:linear-gradient(110deg,#bb885e 0%,#e1ccb0 58%,#e2cdb0 100%) !important;
    color:#ffffff !important;
}

.spv2g-inks__switch a:last-child {
    background:rgba(255,255,255,.92) !important;
    color:#224a4e !important;
    border:1px solid #e5dfd8 !important;
}

.spv2g-inks__switch a:hover {
    transform:translateY(-1px);
    box-shadow:0 11px 24px rgba(124,86,62,.12) !important;
}

@media(max-width:650px){
    .spv2g-inks__switch {
        width:100%;
    }

    .spv2g-inks__switch a {
        flex:1 1 0;
        min-width:0 !important;
    }
}


/* =========================================================
   v32.1 — korekta nagłówka hero Wersji 2
   ========================================================= */
.spv2g-hero h1 {
    line-height:.985 !important;
    letter-spacing:-.045em !important;
    overflow:visible !important;
    padding-bottom:.045em;
}
.spv2g-hero h1 em {
    padding-bottom:.055em;
    padding-right:.06em;
}


/* v40.7 — Premium Glass footer: dane firmy */
.sp-v2-body .sp-footer__location-card {
    padding:13px 14px;
    border:1px solid rgba(255,255,255,.09);
    border-radius:13px;
    background:rgba(255,255,255,.035);
}
.sp-v2-body .sp-footer__locations {
    gap:10px;
}
.sp-v2-body .sp-footer__locations div span {
    color:#ffffff !important;
}
.sp-v2-body .sp-footer__registry > span {
    color:#c9baae !important;
    border-color:rgba(255,255,255,.10);
    background:rgba(255,255,255,.035);
}
.sp-v2-body .sp-footer__registry b {
    color:#ffffff;
}


/* v41.5 — finalny mobile audit Premium Glass */
@media(max-width:650px){
    .sp-v2-body .sp-main,
    .sp-v2-body .spv2g {
        overflow-x:hidden;
    }

    .spv2g-badge,
    .spv2g-kicker {
        max-width:100%;
    }

    .spv2g-cta__panel,
    .spv2g-shop__shell,
    .spv2g-process__bar {
        overflow:hidden;
    }

    .spv2g-brand > i {
        max-width:45%;
        overflow:hidden;
        white-space:nowrap;
    }
}


/* =========================================================
   v41.8 — NOWA.MKROBOCZA.PL / WIĘKSZE TELEFONY
   Stara turkusowa wersja — bez zmiany kolorystyki strony.
   ========================================================= */

/* Wszystkie klikalne telefony w turkusowej wersji mają większy priorytet. */
.sp-v2-body a[href^="tel:"]{
    font-weight:900;
    font-size:1.10em;
    letter-spacing:.01em;
    white-space:nowrap;
}

/* Górny pasek — dwa numery w czytelnych turkusowych pigułkach. */
.sp-v2-body .sp-topbar__group:first-child{
    gap:9px;
}
.sp-v2-body .sp-topbar__phone{
    min-height:35px;
    padding:6px 11px;
    border:1px solid rgba(186,135,93,.22);
    border-radius:999px;
    color:#214b4f !important;
    background:rgba(255,255,255,.68);
    font-size:14px !important;
    font-weight:900 !important;
    line-height:1;
    box-shadow:
        0 6px 16px rgba(99,66,45,.05),
        inset 0 1px 0 rgba(255,255,255,.80);
    transition:transform .18s ease,background .18s ease,border-color .18s ease,color .18s ease;
}
.sp-v2-body .sp-topbar__phone:hover{
    transform:translateY(-1px);
    color:#488a91 !important;
    border-color:rgba(186,135,93,.42);
    background:rgba(186,135,93,.08);
}
.sp-v2-body .sp-topbar__phone .sp-topbar__icon{
    color:#ba875d !important;
    font-size:15px !important;
}

/* Home — szybka konsultacja jako dwa wyraźne numery. */
.spv2g-hero__phone{
    gap:8px 10px;
    flex-wrap:wrap;
}
.spv2g-hero__phone a{
    display:inline-flex;
    align-items:center;
    min-height:34px;
    padding:6px 11px;
    border:1px solid rgba(186,135,93,.18);
    border-radius:999px;
    background:rgba(255,255,255,.72);
    color:#9b704e !important;
    font-size:14px !important;
    font-weight:900;
    box-shadow:0 7px 18px rgba(105,69,47,.05);
}
.spv2g-hero__phone a:hover{
    border-color:rgba(186,135,93,.38);
    background:rgba(186,135,93,.07);
}

/* Home — CTA nad stopką: dwa numery w jednej karcie. */
.spv2g-cta__phone{
    grid-template-columns:36px 1fr;
    gap:0 8px;
}
.spv2g-cta__phone > span{
    grid-row:1;
    align-self:center;
}
.spv2g-cta__phone-numbers{
    display:flex;
    flex-direction:column;
    justify-content:center;
    min-width:0;
}
.spv2g-cta__phone-numbers a{
    display:block;
    width:max-content;
    max-width:100%;
    color:#1e4a4e !important;
    line-height:1.18;
}
.spv2g-cta__phone-numbers a + a{
    margin-top:3px;
}
.spv2g-cta__phone-numbers strong{
    color:#1e4a4e !important;
    font-size:14px !important;
    font-weight:900;
}
.spv2g-cta__phone-numbers small{
    margin-top:4px;
    color:#9a8d82;
    font-size:8px;
}

/* Stopka — telefony większe i wyraźniejsze. */
.sp-v2-body .sp-footer__contact-links{
    gap:10px 13px;
}
.sp-v2-body .sp-footer__contact-links a[href^="tel:"]{
    min-height:36px;
    display:inline-flex;
    align-items:center;
    padding:7px 11px;
    border:1px solid rgba(211,191,165,.18);
    border-radius:999px;
    background:rgba(255,255,255,.055);
    color:#ffffff !important;
    font-size:14px !important;
    font-weight:900;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.06);
}

/* Numery w CTA i panelach na podstronach. */
.sp-v2-body .sp-srv2-cta__phones a,
.sp-v2-body .sp-plt2-cta__phones a,
.sp-v2-body .sp-prt2-cta__phones a,
.sp-v2-body .sp-b2b2-cta__contact a[href^="tel:"],
.sp-v2-body .sp-about2-cta__phones a,
.sp-v2-body .sp-contact2-card a[href^="tel:"],
.sp-v2-body .sp-request2-card a[href^="tel:"],
.sp-v2-body .sp-hp2-cta__phones a,
.sp-v2-body .sp-canon2-cta__phones a{
    font-size:14px !important;
    font-weight:900 !important;
}

@media(max-width:720px){
    /* Na mobile telefony pozostają widoczne, pozostałe elementy topbara są schowane. */
    .sp-v2-body .sp-topbar{
        display:block !important;
    }
    .sp-v2-body .sp-topbar__inner{
        min-height:49px;
        justify-content:center;
        padding:6px 0;
    }
    .sp-v2-body .sp-topbar__group:first-child{
        width:100%;
        justify-content:center;
        gap:7px;
        flex-wrap:nowrap;
    }
    .sp-v2-body .sp-topbar__phone{
        min-height:34px;
        padding:5px 9px;
        font-size:12.5px !important;
    }
    .sp-v2-body .sp-topbar__phone .sp-topbar__icon{
        font-size:13px !important;
    }
    .sp-v2-body .sp-topbar__email,
    .sp-v2-body .sp-topbar__group--right{
        display:none !important;
    }

    .spv2g-hero__phone{
        align-items:flex-start;
    }
    .spv2g-hero__phone > span{
        width:100%;
    }
    .spv2g-hero__phone a{
        font-size:13px !important;
    }
}


/* =========================================================
   v41.9 — email w pigułce jak telefony (nowa.mkrobocza.pl)
   ========================================================= */

/* Szybka konsultacja na home — e-mail w tej samej linii i stylistyce co telefony. */
.spv2g-hero__phone a[href^="mailto:"]{
    display:inline-flex;
    align-items:center;
    min-height:34px;
    padding:6px 11px;
    border:1px solid rgba(186,135,93,.18);
    border-radius:999px;
    background:rgba(255,255,255,.72);
    color:#9b704e !important;
    font-size:14px !important;
    font-weight:900;
    box-shadow:0 7px 18px rgba(105,69,47,.05);
}
.spv2g-hero__phone a[href^="mailto:"]:hover{
    border-color:rgba(186,135,93,.38);
    background:rgba(186,135,93,.07);
}

/* Stopka — e-mail ma wyglądać dokładnie jak telefoniczne pigułki. */
.sp-v2-body .sp-footer__contact-links a[href^="mailto:"]{
    min-height:36px;
    display:inline-flex;
    align-items:center;
    padding:7px 11px;
    border:1px solid rgba(211,191,165,.18);
    border-radius:999px;
    background:rgba(255,255,255,.055);
    color:#ffffff !important;
    font-size:14px !important;
    font-weight:900;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.06);
}

@media(max-width:720px){
    .spv2g-hero__phone a[href^="mailto:"]{
        font-size:13px !important;
    }
}


/* =========================================================
   v41.12 — BEZPIECZNA poprawka NOWA.MKROBOCZA.PL
   Tylko sekcja marek + Epson. Bez globalnych zmian kolorów i paneli.
   ========================================================= */

/* 4 marki na desktopie: HP / Canon / Epson / Inna marka */
.spv2g-brands__grid{
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
}

.spv2g-brand{
    min-width:0;
}

.spv2g-brand--epson{
    background:linear-gradient(125deg,rgba(255,251,245,.94),rgba(255,255,255,.74));
}

.spv2g-brand__logo--epson{
    color:#b8855c;
    font-family:Arial,sans-serif;
    font-size:13px;
    font-weight:900;
    letter-spacing:.01em;
}

.spv2g-brand--epson > i{
    font-size:31px;
    color:rgba(180,131,90,.055);
}

.spv2g-brand__content{
    max-width:190px;
}

@media(max-width:1180px){
    .spv2g-brands__grid{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    }
}

@media(max-width:650px){
    .spv2g-brands__grid{
        grid-template-columns:1fr !important;
    }
    .spv2g-brand__content{
        max-width:none;
    }
    .spv2g-brand--epson > i{
        font-size:28px;
    }
}


/* =========================================================
   v41.16 — HOME HERO / grafika wtopiona w tło
   Punktowa poprawka tylko dla strony głównej nowa.mkrobocza.pl.
   ========================================================= */

.spv2g-hero__media{
    isolation:isolate;
}

/* Poświata za obrazem łączy go z istniejącymi cyan/violet glow hero. */
.spv2g-hero__media::before{
    content:"";
    position:absolute;
    z-index:2;
    inset:8% -7% 5% 4%;
    border-radius:48% 42% 46% 38%;
    background:
        radial-gradient(circle at 25% 32%,rgba(201,146,100,.18),transparent 42%),
        radial-gradient(circle at 78% 48%,rgba(241,218,188,.18),transparent 48%);
    filter:blur(34px);
    pointer-events:none;
}

.spv2g-hero__image-wrap{
    position:absolute;
    z-index:3;
    right:-4%;
    bottom:10px;
    width:108%;
    overflow:hidden;
    border-radius:42px 54px 46px 62px;
    box-shadow:
        0 30px 54px rgba(87,54,33,.13),
        0 0 70px rgba(238,215,186,.08);
    -webkit-mask-image:
        radial-gradient(ellipse 99% 97% at 52% 49%,
            #000000 0%,
            #000000 80%,
            rgba(0,0,0,.96) 86%,
            rgba(0,0,0,.62) 94%,
            transparent 100%);
    mask-image:
        radial-gradient(ellipse 99% 97% at 52% 49%,
            #000000 0%,
            #000000 80%,
            rgba(0,0,0,.96) 86%,
            rgba(0,0,0,.62) 94%,
            transparent 100%);
}

/* Zdjęcie nie jest już absolutnym prostokątem — siedzi wewnątrz miękkiej maski. */
.spv2g-hero__image-wrap img{
    position:relative !important;
    inset:auto !important;
    right:auto !important;
    bottom:auto !important;
    display:block;
    width:100% !important;
    max-width:none !important;
    height:auto;
    transform:scale(1.018);
    filter:saturate(.98) contrast(1.015);
}

/* Delikatne wygaszenie lewej i dolnej krawędzi — obraz przechodzi w tło hero. */
.spv2g-hero__image-wrap::before{
    content:"";
    position:absolute;
    z-index:4;
    inset:0;
    pointer-events:none;
    background:
        linear-gradient(90deg,
            rgba(247,251,255,.30) 0%,
            rgba(247,251,255,.07) 12%,
            transparent 26%,
            transparent 88%,
            rgba(244,247,255,.08) 100%),
        linear-gradient(0deg,
            rgba(246,251,255,.18) 0%,
            transparent 15%);
}

/* Bardzo subtelny szklany refleks na górnej krawędzi. */
.spv2g-hero__image-wrap::after{
    content:"";
    position:absolute;
    z-index:5;
    left:6%;
    right:7%;
    top:0;
    height:1px;
    background:linear-gradient(90deg,transparent,rgba(255,255,255,.82),transparent);
    pointer-events:none;
}

@media(max-width:1100px){
    .spv2g-hero__image-wrap{
        right:2%;
        width:88%;
        border-radius:36px 46px 40px 50px;
    }
}

@media(max-width:650px){
    .spv2g-hero__image-wrap{
        left:50%;
        right:auto;
        bottom:4px;
        width:106%;
        transform:translateX(-50%);
        border-radius:28px 34px 30px 38px;
        -webkit-mask-image:
            radial-gradient(ellipse 100% 98% at 50% 50%,
                #000000 0%,
                #000000 84%,
                rgba(0,0,0,.84) 93%,
                transparent 100%);
        mask-image:
            radial-gradient(ellipse 100% 98% at 50% 50%,
                #000000 0%,
                #000000 84%,
                rgba(0,0,0,.84) 93%,
                transparent 100%);
    }

    .spv2g-hero__media::before{
        inset:12% -10% 3%;
        filter:blur(26px);
    }
}


/* =========================================================
   v41.17 — FINAL POLISH 01 / czytelność + nagłówek
   Bez przebudowy layoutu. Tylko kontrolowane, bezpieczne korekty.
   ========================================================= */

/* E-mail w topbarze dokładnie w tej samej rodzinie co telefony. */
.sp-v2-body .sp-topbar__email{
    min-height:35px;
    display:inline-flex;
    align-items:center;
    gap:7px;
    padding:6px 11px;
    border:1px solid rgba(186,135,93,.22);
    border-radius:999px;
    color:#214b4f !important;
    background:rgba(255,255,255,.68);
    font-size:14px !important;
    font-weight:900 !important;
    line-height:1;
    box-shadow:
        0 6px 16px rgba(99,66,45,.05),
        inset 0 1px 0 rgba(255,255,255,.80);
    transition:transform .18s ease,background .18s ease,border-color .18s ease,color .18s ease;
}
.sp-v2-body .sp-topbar__email:hover{
    transform:translateY(-1px);
    color:#488a91 !important;
    border-color:rgba(186,135,93,.42);
    background:rgba(186,135,93,.08);
}
.sp-v2-body .sp-topbar__email .sp-topbar__icon{
    color:#ba875d !important;
    font-size:14px !important;
}

/* Hero — wszystkie główne leady są trochę większe, bez zmiany H1/layoutu. */
.sp-v2-body :is(
    .spv2g-hero__lead,
    .sp-srv2-hero__copy > p,
    .sp-plt2-hero__copy > p,
    .sp-prt2-hero__copy > p,
    .sp-b2b2-hero__copy > p,
    .sp-kb2-hero__copy > p,
    .sp-about2-hero__copy > p,
    .sp-contact2-hero__copy > p,
    .sp-request2-hero__copy > p,
    .sp-hp2-hero__copy > p,
    .sp-canon2-hero__copy > p,
    .sp-epson3-lead
){
    font-size:16px !important;
    line-height:1.66 !important;
}

/* Opisy sekcji — nie mikrotekst, tylko normalna czytelna treść. */
.sp-v2-body :is(
    .sp-srv2-section-head > p,
    .sp-plt2-section-head > p,
    .sp-prt2-section-head > p,
    .sp-b2b2-section-head > p,
    .sp-kb2-section-head > p,
    .sp-about2-section-head > p,
    .sp-contact2-section-head > p,
    .sp-hp2-section-head > p,
    .sp-canon2-section-head > p,
    .sp-epson3-section-head > p
){
    font-size:12.5px !important;
    line-height:1.62 !important;
}

/* Opisy w kartach — delikatny wzrost, żeby desktop nie wyglądał jak makieta. */
.sp-v2-body :is(
    .sp-srv2-bento__card p,
    .sp-srv2-brand__copy p,
    .sp-plt2-use-card p,
    .sp-prt2-group p:not(.spv2g-kicker),
    .sp-b2b2-for-card p:not(.spv2g-kicker),
    .sp-kb2-topic p,
    .sp-kb2-card p,
    .sp-about2-scope__grid p,
    .sp-contact2-card p,
    .sp-hp2-card p,
    .sp-canon2-card p,
    .sp-epson3-card p,
    .sp-epson3-links__grid p
){
    font-size:11.25px !important;
    line-height:1.55 !important;
}

/* Kicker / mikroetykiety nadal techniczne, ale już nie mikroskopijne. */
.sp-v2-body :is(
    .spv2g-kicker,
    .sp-srv2 .spv2g-kicker,
    .sp-plt2 .spv2g-kicker,
    .sp-prt2 .spv2g-kicker,
    .sp-b2b2 .spv2g-kicker,
    .sp-kb2 .spv2g-kicker,
    .sp-about2 .spv2g-kicker,
    .sp-contact2 .spv2g-kicker,
    .sp-hp2 .spv2g-kicker,
    .sp-canon2 .spv2g-kicker,
    .sp-epson3-kicker
){
    font-size:10.5px !important;
}

/* Na mobile e-mail w topbarze nadal schowany — dwa telefony są priorytetem. */
@media(max-width:720px){
    .sp-v2-body .sp-topbar__email{
        display:none !important;
    }
}


/* =========================================================
   v41.18 — HOME HERO / minimalnie węższa grafika
   ========================================================= */
@media(min-width:1101px){
    .spv2g-hero__image-wrap{
        right:-1% !important;
        width:101% !important;
    }
    .spv2g-hero__media::before{
        inset:9% -3% 6% 8%;
    }
}

/* V3 — Technologia i kolor. Shared chrome + independent home layout. */
:root{--sp3-ink:#1f2e30;--sp3-text:#577275;--sp3-teal:#2c98a3;--sp3-line:#e5d5c0;--sp3-wash:#f7f1e8}
body.sp-site{font-family:Inter,"Segoe UI",Arial,sans-serif;color:var(--sp3-ink)}
.sp-site .sp-shell{width:min(calc(100% - 64px),1240px)}
.sp-site .sp-header{background:#ffffff;box-shadow:none;position:relative}
.sp-site .sp-topbar{background:#1f2e30!important;color:#ffffff;border:0}
.sp-site .sp-topbar__item{font-size:15px!important;color:#ffffff!important;background:none!important;border:0!important;box-shadow:none!important}
.sp-site .sp-topbar__icon{color:#e1ccb0!important}
.sp-site .sp-topbar__location{display:none}
.sp-site .sp-navbar{background:#ffffff!important;backdrop-filter:none;border-bottom:1px solid var(--sp3-line)}
.sp-site .sp-navbar__inner{min-height:100px;gap:24px}
.sp-site .sp-brand{flex:0 0 220px}
.sp-site .sp-nav{gap:22px}
.sp-site .sp-nav>a:not(.sp-btn){font-size:17px!important;color:var(--sp3-ink)}
.sp-site .sp-btn--header{background:var(--sp3-teal)!important;color:#ffffff!important;box-shadow:none!important;font-size:17px!important;padding:15px 20px!important;border-radius:8px}
.sp-site .sp-footer{background:#1f2e30!important;padding:48px 0 24px}
.sp-site .sp-footer p,.sp-site .sp-footer__nav a,.sp-site .sp-footer__contact-links a{font-size:16px!important;line-height:1.65;color:#e5dfd6}
.sp-site .sp-footer small,.sp-site .sp-footer__registry span,.sp-site .sp-footer__bottom{font-size:14px!important}
.sp-site .sp-footer__main{gap:32px}
.sp3{background:#ffffff;color:var(--sp3-ink);font-size:19px;line-height:1.6}
.sp3 *{box-sizing:border-box;min-width:0}
.sp3 a{text-decoration:none;color:inherit}
.sp3 h1,.sp3 h2,.sp3 h3,.sp3 p{margin:0}
.sp3 h1{font-size:clamp(40px,4.5vw,64px);line-height:1.06;letter-spacing:-2.3px;font-weight:700;margin-bottom:24px}
.sp3 h2{font-size:clamp(30px,3vw,42px);line-height:1.15;letter-spacing:-1.2px;font-weight:700}
.sp3 h3{font-size:25px;line-height:1.25;letter-spacing:-.5px;font-weight:650}
.sp3 p{color:var(--sp3-text)}
.sp3 .sp3-kicker{font-size:14px;line-height:1.4;font-weight:700;letter-spacing:1.6px;color:var(--sp3-teal);margin-bottom:16px}
.sp3-hero{padding:65px 0 60px;background:var(--sp3-wash)}
.sp3-hero-grid{display:grid;grid-template-columns:1fr 1.12fr;gap:48px;align-items:center}
.sp3-lead{font-size:21px;line-height:1.6;max-width:510px}
.sp3-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.sp3 .sp3-btn{display:inline-flex;align-items:center;justify-content:space-between;gap:25px;background:var(--sp3-teal);color:#ffffff;font-size:18px;font-weight:650;border-radius:8px;padding:15px 23px;min-height:54px;border:1px solid var(--sp3-teal);transition:background .15s,transform .15s}
.sp3 .sp3-btn-outline{background:transparent;color:var(--sp3-ink);border-color:#c8bdb4}
.sp3 .sp3-btn:hover{background:#206b72;color:#ffffff;transform:translateY(-2px)}
.sp3 .sp3-hero-note{font-size:16px;margin-top:25px;color:#48676a}
.sp3-hero-art{position:relative;padding:16px 0 0 16px}
.sp3-hero-art:before{content:"";position:absolute;inset:0 22px 20px 0;background:#ede7e0;border-radius:28px 28px 5px 28px}
.sp3-image{position:relative;border-radius:22px 22px 4px 22px;overflow:hidden;background:#1f2e30}
.sp3-image img{display:block;width:100%;height:auto;aspect-ratio:1.66;object-fit:cover}
.sp3-image-caption{position:relative;background:#ffffff;margin:-4px 0 0 32px;padding:19px 22px;border-radius:0 0 0 18px;border-bottom:3px solid var(--sp3-teal)}
.sp3-image-caption span{display:block;font-size:13px;font-weight:700;letter-spacing:1.5px;color:var(--sp3-teal);margin-bottom:5px}
.sp3-image-caption strong{font-size:18px}
.sp3-shop,.sp3-services,.sp3-process{padding:66px 0}
.sp3-section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:30px}
.sp3 .sp3-link{font-size:17px;font-weight:650;white-space:nowrap;color:var(--sp3-teal)}
.sp3-shop-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.sp3-feature{display:flex;flex-direction:column;background:var(--sp3-wash);border:1px solid var(--sp3-line);border-radius:20px 20px 5px 20px;overflow:hidden}
.sp3-feature-top{display:flex;justify-content:space-between;align-items:center;padding:24px 28px 0}
.sp3-tag{font-size:13px;letter-spacing:1px;font-weight:700;color:var(--sp3-teal)}
.sp3-arrow{font-size:27px}
.sp3-feature-photo{height:225px;display:flex;align-items:center;justify-content:center;padding:18px 35px}
.sp3-feature-photo img{max-height:100%;width:100%;object-fit:contain;mix-blend-mode:multiply}
.sp3-feature-copy{padding:18px 28px 28px;background:#ffffff;margin:0 12px 12px;border-radius:12px 12px 3px 12px;flex:1}
.sp3-feature-copy h3{font-size:32px;margin:7px 0 12px}
.sp3-feature-copy p{font-size:18px;margin-bottom:20px;max-width:440px}
.sp3-feature-copy strong{font-size:18px;color:var(--sp3-teal)}
.sp3-category-stack{display:grid;gap:20px;grid-template-rows:1fr 1fr}
.sp3-category{position:relative;padding:28px;border-radius:20px 20px 5px 20px;overflow:hidden;min-height:240px;display:flex;align-items:center}
.sp3-category>div:first-child{position:relative;z-index:2;width:72%}
.sp3-category h3{font-size:29px;margin-bottom:12px}
.sp3-category p{font-size:18px;margin-bottom:24px;max-width:260px}
.sp3-category strong{font-size:17px}
.sp3 .sp3-category-ink{background:#1f2e30;color:#ffffff}
.sp3 .sp3-category-ink p{color:#ebe5dd}
.sp3 .sp3-category-ink .sp3-kicker{color:#e3d1ba}
.sp3 .sp3-category-paper{background:#e3eff1;color:#1f2e30}
.sp3-cartridges{position:absolute;right:-6px;bottom:-10px;width:165px;height:185px;display:flex;align-items:flex-end;gap:8px;transform:rotate(-14deg)}
.sp3-cartridges i{display:block;width:30px;height:145px;background:linear-gradient(90deg,#9b704e,#d2bea4);border-radius:7px 7px 0 0;box-shadow:7px 0 10px #00000022;border-top:18px solid #d6d0c7}
.sp3-cartridges i:nth-child(2){background:linear-gradient(90deg,#b52270,#ef51a4);height:170px}.sp3-cartridges i:nth-child(3){background:linear-gradient(90deg,#d3a520,#ffe277);height:155px}.sp3-cartridges i:nth-child(4){background:linear-gradient(90deg,#1a2a2c,#516668);height:180px}
.sp3-roll{position:absolute;right:-26px;bottom:-55px;width:170px;height:215px;transform:rotate(-18deg);background:linear-gradient(90deg,#dbd5cd,#ffffff 38%,#f5f9fa);border-radius:50% 50% 0 0 / 18% 18% 0 0;box-shadow:-10px 15px 25px #1f2e3020}
.sp3-roll:before{content:"";position:absolute;top:0;left:0;right:0;height:58px;border-radius:50%;background:radial-gradient(ellipse,#a4978d 0 18%,#e5e1db 19% 28%,#ffffff 30% 63%,#d0c9c0 66%,#ffffff 69%)}
.sp3-roll:after{content:"";position:absolute;top:85px;left:20px;right:25px;height:90px;background:repeating-linear-gradient(0deg,transparent 0 13px,#dcd6ce 14px 15px),repeating-linear-gradient(90deg,transparent 0 20px,#e8e3dd 21px 22px);opacity:.7}
.sp3-products{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:22px}
.sp3-products a{display:flex;gap:16px;align-items:center;padding:20px;border:1px solid var(--sp3-line);border-radius:10px}
.sp3-products small{display:block;font-size:15px;color:var(--sp3-text)}
.sp3-products strong{display:block;font-size:18px;font-weight:650}
.sp3-products b{margin-left:auto;font-size:22px}
.sp3-dot{width:16px;height:45px;border-radius:4px;flex-shrink:0}.sp3-dot-yellow{background:#edca39}.sp3-dot-magenta{background:#d33383}.sp3-dot-black{background:#1f2e30}
.sp3-services{background:var(--sp3-wash)}
.sp3-service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.sp3-service{display:flex;flex-direction:column;padding:28px;border-radius:18px 18px 4px 18px;overflow:hidden}
.sp3-service-number{font-size:14px;letter-spacing:1.5px;font-weight:700}
.sp3-service h3{margin-bottom:16px;min-height:63px}
.sp3-service p{font-size:18px;margin-bottom:25px;flex:1}
.sp3-service strong{font-size:17px}
.sp3 .sp3-service-dark{background:#1f2e30;color:#ffffff}.sp3 .sp3-service-dark p{color:#e9e3da}
.sp3 .sp3-service-light{background:#ffffff;border:1px solid #e5d5c0}
.sp3 .sp3-service-teal{background:#407a80;color:#ffffff}.sp3 .sp3-service-teal p{color:#f1ece6}
.sp3-service-graphic{height:100px;position:relative;margin:15px 0 18px;overflow:hidden}
.sp3-diagnosis{background:linear-gradient(90deg,transparent 49%,#ffffff0c 50%),linear-gradient(transparent 49%,#ffffff0c 50%);background-size:20px 20px}
.sp3-diagnosis i{position:absolute;top:20px;left:60%;width:65px;height:65px;border:2px solid #d6c2a7;border-radius:50%}.sp3-diagnosis i:nth-child(2){width:34px;height:34px;top:36px;left:calc(60% + 16px);border-color:#e5dbcd}.sp3-diagnosis i:nth-child(3){width:150px;height:1px;left:25%;top:53px;border:0;background:#d6c2a7;border-radius:0}
.sp3-lines{display:flex;gap:10px;align-items:center;justify-content:center;transform:rotate(-12deg)}.sp3-lines i{width:24px;height:68px;background:#eee9e3;border-radius:4px}.sp3-lines i:nth-child(2){height:83px;background:#d5c6b2}.sp3-lines i:nth-child(3){height:96px;background:#2c98a3}.sp3-lines i:nth-child(4){height:83px;background:#d5c6b2}
.sp3-components{display:flex;align-items:center;justify-content:center;gap:10px}.sp3-components i{width:55px;height:55px;border:2px solid #ffffff7a;border-radius:8px;transform:rotate(-15deg)}.sp3-components i:nth-child(2){background:#ffffff25;transform:rotate(15deg);width:75px;height:75px}
.sp3-brands{border-bottom:1px solid var(--sp3-line);padding:28px 0}
.sp3-brand-row{display:flex;align-items:center;gap:35px;justify-content:space-between;flex-wrap:wrap}
.sp3-brand-row>span{font-size:17px;color:var(--sp3-text)}
.sp3-brand-row a{font-size:28px;font-weight:700}.sp3-brand-row a span{font-size:18px;color:var(--sp3-teal)}.sp3-brand-row .sp3-brand-other{font-size:17px;color:var(--sp3-teal)}
.sp3-process-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:60px}
.sp3-process ol{margin:0;padding:0;list-style:none}.sp3-process li{display:flex;gap:24px;padding:0 0 22px;margin-bottom:22px;border-bottom:1px solid var(--sp3-line)}.sp3-process li:last-child{margin:0;padding-bottom:0;border:0}.sp3-process li>span{font-size:18px;color:var(--sp3-teal);font-weight:650}.sp3-process h3{font-size:22px;margin-bottom:6px}.sp3-process p{font-size:18px}
.sp3-contact{padding:48px 0;background:#e3eff1}.sp3-contact-grid{display:flex;align-items:center;justify-content:space-between;gap:30px}.sp3-contact h2{margin-bottom:22px}.sp3 .sp3-phone{font-size:38px;line-height:1.2;letter-spacing:-1px;font-weight:700}.sp3-contact p:not(.sp3-kicker){font-size:18px;margin-top:10px}
.sp3 a:focus-visible{outline:3px solid #d19620;outline-offset:5px}.sp3-feature:hover,.sp3-category:hover,.sp3-service:hover,.sp3-products a:hover{box-shadow:0 10px 24px #1f2e3012}
@media(max-width:1080px){.sp-site .sp-nav{background:#ffffff!important}.sp3-hero-grid{gap:30px}.sp3-shop-grid{gap:20px}.sp3-category{padding:24px}.sp3-category h3{font-size:25px}.sp3-products{gap:12px}.sp3-products a{padding:16px;gap:10px}.sp3-products strong{font-size:16px}.sp3-products small{font-size:14px}.sp3-cartridges{right:-40px}.sp3-roll{right:-55px}.sp3-service{padding:24px}}
@media(max-width:760px){.sp-site .sp-shell{width:calc(100% - 36px)}.sp-site .sp-navbar__inner{min-height:85px}.sp-site .sp-brand{flex:0 1 195px}.sp3-hero{padding:38px 0}.sp3-hero-grid,.sp3-shop-grid,.sp3-service-grid,.sp3-process-grid{grid-template-columns:1fr}.sp3-hero-grid{gap:30px}.sp3 h1{letter-spacing:-1.5px}.sp3-lead{font-size:19px}.sp3-hero-art{max-width:620px}.sp3-shop,.sp3-services,.sp3-process{padding:42px 0}.sp3-section-head{align-items:flex-start;flex-direction:column;gap:16px}.sp3-feature-photo{height:230px}.sp3-category-stack{grid-template-columns:1fr 1fr;grid-template-rows:auto}.sp3-category{min-height:290px;padding:22px;align-items:flex-start}.sp3-category>div:first-child{width:100%}.sp3-category h3{font-size:25px}.sp3-category p{margin-bottom:18px}.sp3-cartridges{height:100px;opacity:.3}.sp3-roll{height:135px;opacity:.35}.sp3-products{grid-template-columns:1fr}.sp3-products strong{font-size:18px}.sp3-products small{font-size:15px}.sp3-service h3{min-height:0}.sp3-service-graphic{height:80px}.sp3-brand-row{gap:20px}.sp3-brand-row>span{width:100%}.sp3-process-grid{gap:30px}.sp3-contact-grid{align-items:flex-start;flex-direction:column}.sp3-contact .sp3-phone{font-size:34px}.sp-site .sp-footer__main{grid-template-columns:1fr 1fr}}
@media(max-width:430px){.sp3-category-stack{grid-template-columns:1fr}.sp3-category{min-height:230px}.sp3-category>div:first-child{width:80%}.sp3-cartridges{height:175px;opacity:1;right:-45px}.sp3-roll{height:195px;opacity:1}.sp3 .sp3-btn{padding:14px 18px;gap:15px}.sp3-image-caption{margin-left:15px;padding:16px}.sp3-image-caption strong{font-size:16px}.sp3 .sp3-kicker{font-size:13px}.sp-site .sp-footer__main{grid-template-columns:1fr}.sp3-contact p:not(.sp3-kicker){display:flex;flex-wrap:wrap;gap:7px}}
@media(prefers-reduced-motion:reduce){.sp3 .sp3-btn{transition:none}.sp3 .sp3-btn:hover{transform:none}}
/* 3.0.1 — wider composition, explicit dark-tile contrast, flat logo. */
.sp-site .sp-shell{width:min(calc(100% - 80px),1440px)}
.sp3 :is(h1,h2,h3){color:var(--sp3-ink)}
.sp3 :is(.sp3-category-ink,.sp3-service-dark,.sp3-service-teal) :is(h2,h3,strong){color:#ffffff!important}
.sp-site .sp-brand__visual{background-image:url('../images/logo-clean.svg')!important;filter:none!important;box-shadow:none!important;width:245px;height:64px;background-size:contain;background-position:left center;background-repeat:no-repeat}
.sp-site .sp-brand{flex-basis:245px}
.sp-site .sp-footer__logo>span{background-image:url('../images/logo-clean-white.svg')!important;filter:none!important;box-shadow:none!important;background-size:contain;background-position:left center;background-repeat:no-repeat;width:245px;height:64px}
.sp-site .sp-footer__logo{width:245px;height:64px;margin:0 0 20px}
.sp-site .sp-btn--header:is(:hover,:focus-visible){background:#1d6168!important;color:#ffffff!important;border-color:#1d6168!important;box-shadow:0 4px 12px #1f2e3020!important}
.sp3 .sp3-btn:is(:hover,:focus-visible){background:#1d6168;color:#ffffff;border-color:#1d6168;transform:none}
.sp-site .sp-footer{padding:0!important}
.sp-site .sp-footer__main{display:grid!important;grid-template-columns:minmax(0,1.35fr) minmax(0,.65fr) minmax(0,.85fr) minmax(0,1.15fr)!important;gap:44px!important;padding:44px 0 28px!important;align-items:start}
.sp-site .sp-footer__main>*{min-width:0;grid-column:auto!important}
.sp-site .sp-footer__nav{gap:12px}
.sp-site .sp-footer__nav>strong,.sp-site .sp-footer__locations>strong{font-size:16px;margin:0 0 16px;line-height:1.4}
.sp-site .sp-footer__locations{display:flex!important;flex-direction:column;gap:16px!important;align-items:stretch}
.sp-site .sp-footer__location-card{width:100%;padding:0!important;border:0!important;background:none!important;box-shadow:none!important;border-radius:0!important}
.sp-site .sp-footer__location-card>span{font-size:15px!important;color:#ffffff}
.sp-site .sp-footer__location-card p{margin:6px 0 0!important}
.sp-site .sp-footer__registry{display:grid;grid-template-columns:1fr!important;gap:4px;margin-top:8px}
.sp-site .sp-footer__registry>span{display:block;width:auto!important;padding:0!important;border:0!important;background:none!important;white-space:normal;font-size:14px!important;font-weight:400}
.sp-site .sp-footer__contact-links{display:flex;gap:10px;flex-wrap:wrap}
.sp-site .sp-footer__contact-links a{padding:0!important;border:0!important;background:none!important;box-shadow:none!important;font-weight:500}
.sp-site .sp-footer__bottom{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;padding:16px 0!important;margin:0!important;min-height:0;border-top:1px solid #ffffff20}
.sp-site .sp-footer__bottom p{margin:0!important;line-height:1.4}
.sp-site .sp-footer__copyright,.sp-site .sp-footer__network{display:flex;align-items:center;flex-wrap:wrap;gap:10px}
.sp-site .sp-footer__bottom a,.sp-site .sp-footer__network span{font-size:14px!important}
@media(max-width:1080px){.sp-site .sp-footer__main{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:30px!important}.sp-site .sp-footer__locations{grid-column:auto!important}.sp-site .sp-brand{flex-basis:220px}.sp-site .sp-brand__visual{width:220px}}
@media(max-width:760px){.sp-site .sp-shell{width:calc(100% - 36px)}.sp-site .sp-footer__main{padding:30px 0 24px!important}.sp-site .sp-footer__bottom{align-items:flex-start;flex-direction:column;padding:14px 0!important}.sp-site .sp-brand{flex-basis:195px}.sp-site .sp-brand__visual{width:195px;height:52px}}
@media(max-width:520px){.sp-site .sp-footer__main{grid-template-columns:1fr!important;gap:26px!important}.sp-site .sp-footer__nav{gap:10px}.sp-site .sp-footer__registry{grid-template-columns:1fr!important}}
/* 3.0.2 — editorial process cards and a distinct contact composition. */
.sp3-process{background:#ffffff;padding:70px 0 60px}
.sp3 .sp3-process-intro{font-size:19px;line-height:1.6;margin:0;max-width:400px}
.sp3 .sp3-steps-premium{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;padding:0;margin:36px 0 0;list-style:none;counter-reset:none}
.sp3 .sp3-steps-premium li{position:relative;display:flex;flex-direction:column;gap:0;margin:0;padding:28px 30px 32px;border:1px solid #e8e3dc;border-radius:22px 22px 4px 22px;background:#f6efe5;overflow:hidden;min-height:340px}
.sp3 .sp3-steps-premium li:nth-child(2){background:#e3eff1}
.sp3 .sp3-steps-premium li:nth-child(3){background:#1f2e30;border-color:#1f2e30;color:#ffffff}
.sp3-step-head{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:30px}
.sp3-step-head>span{font-size:66px!important;line-height:1!important;font-weight:300!important;letter-spacing:-4px;color:#2c98a3!important}
.sp3-step-head>b{font-size:28px;font-weight:400;color:#2c98a3;line-height:1}
.sp3 .sp3-step-label{display:block;font-size:12px;font-weight:700;letter-spacing:1.3px;color:#4d7073;margin-bottom:15px}
.sp3 .sp3-steps-premium h3{font-size:26px;line-height:1.2;letter-spacing:-.5px;margin-bottom:15px;color:#1f2e30}
.sp3 .sp3-steps-premium p{font-size:18px;line-height:1.6}
.sp3 .sp3-steps-premium li:nth-child(3) :is(h3,p){color:#ffffff!important}
.sp3 .sp3-steps-premium li:nth-child(3) :is(.sp3-step-label,.sp3-step-head>span,.sp3-step-head>b){color:#dfcbb0!important}
.sp3-contact{padding:0 0 60px;background:#ffffff}
.sp3-contact-panel{position:relative;isolation:isolate;overflow:hidden;display:grid;grid-template-columns:1.1fr 1fr;gap:65px;padding:56px 60px;background:#1f2e30;color:#ffffff;border-radius:26px 26px 5px 26px}
.sp3-contact-panel:before{content:"";position:absolute;z-index:-1;inset:auto auto -220px -220px;width:620px;height:620px;border:1px solid #366165;border-radius:50%;box-shadow:0 0 0 50px #23505440,0 0 0 100px #23505420;pointer-events:none}
.sp3 .sp3-contact-panel h2{color:#ffffff!important;font-size:clamp(34px,3.4vw,49px);line-height:1.12;margin:0 0 23px;letter-spacing:-1.6px}
.sp3 .sp3-contact-panel .sp3-kicker{color:#dfcbb0}
.sp3 .sp3-contact-copy>p:not(.sp3-kicker){font-size:19px;color:#ebe4db;line-height:1.65;margin:0 0 27px;display:block}
.sp3 .sp3-contact-panel .sp3-btn{background:#ffffff;color:#1f2e30;border-color:#ffffff;min-width:260px;justify-content:space-between}
.sp3 .sp3-contact-panel .sp3-btn:is(:hover,:focus-visible){background:#e2ceb4;color:#1f2e30;border-color:#e2ceb4}
.sp3-contact-hours{display:block;font-size:15px;color:#d7cec1;margin-top:20px}
.sp3-contact-methods{display:grid;gap:14px;align-content:center}
.sp3 .sp3-contact-card{display:flex;flex-direction:column;padding:23px 28px;border:1px solid #4f7579;border-radius:12px;background:#254c50;transition:background .15s,border-color .15s}
.sp3-contact-label{display:flex;justify-content:space-between;gap:16px;color:#e1cfb7;font-size:13px;letter-spacing:1.2px;font-weight:650}
.sp3-contact-label b{font-size:22px;line-height:1;font-weight:400}
.sp3 .sp3-contact-card>strong{display:block;font-size:clamp(27px,3vw,40px)!important;letter-spacing:-1px;line-height:1.3;color:#ffffff!important;font-weight:650;margin:7px 0}
.sp3-contact-detail{color:#dfd7cc;font-size:16px}
.sp3 .sp3-contact-card:is(:hover,:focus-visible){background:#316267;border-color:#dfcbb0}
.sp3 .sp3-contact-mail{display:grid;grid-template-columns:1fr auto;gap:3px 15px;align-items:center;padding:15px 28px;color:#ffffff}
.sp3-contact-mail>span{font-size:15px;color:#d7cec1}
.sp3-contact-mail>strong{font-size:23px;color:#ffffff!important;grid-row:2}
.sp3-contact-mail>b{grid-column:2;grid-row:1/3;font-size:27px;font-weight:400;color:#dfcbb0}
@media(max-width:1080px){.sp3-contact-panel{padding:40px;gap:35px}.sp3 .sp3-steps-premium li{padding:25px;min-height:350px}.sp3 .sp3-steps-premium h3{font-size:24px}}
@media(max-width:760px){.sp3-process{padding:42px 0}.sp3 .sp3-steps-premium{grid-template-columns:1fr;margin-top:25px;gap:16px}.sp3 .sp3-steps-premium li{min-height:0;padding:25px}.sp3-step-head{margin-bottom:22px}.sp3-step-head>span{font-size:52px!important}.sp3-contact{padding-bottom:36px}.sp3-contact-panel{grid-template-columns:1fr;padding:30px 24px;gap:32px}.sp3 .sp3-contact-panel h2{font-size:36px}.sp3 .sp3-contact-card{padding:20px}.sp3 .sp3-contact-card>strong{font-size:32px!important}.sp3 .sp3-contact-mail{padding:12px 20px}.sp3 .sp3-contact-panel .sp3-btn{min-width:0;width:100%}}
@media(prefers-reduced-motion:reduce){.sp3 .sp3-contact-card{transition:none}}
/* 3.0.3 — service illustrations animate on entry and interaction. */
.sp3 .sp3-service,.sp3 .sp3-category,.sp3 .sp3-feature,.sp3 .sp3-products a{transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s,border-color .35s}
.sp3 .sp3-service:is(:hover,:focus-visible){transform:translateY(-8px);box-shadow:0 18px 36px #1f2e3024}
.sp3 .sp3-category:is(:hover,:focus-visible),.sp3 .sp3-feature:is(:hover,:focus-visible){transform:translateY(-5px)}
.sp3-service-graphic i{transition:transform .65s cubic-bezier(.2,.7,.2,1),background .4s}
.sp3-service:is(:hover,:focus-visible) .sp3-diagnosis i:first-child{transform:scale(1.18)}
.sp3-service:is(:hover,:focus-visible) .sp3-diagnosis i:nth-child(2){transform:scale(.75)}
.sp3-service:is(:hover,:focus-visible) .sp3-diagnosis i:nth-child(3){transform:translateX(18px)}
.sp3-service:is(:hover,:focus-visible) .sp3-lines i:nth-child(odd){transform:translateY(-12px)}
.sp3-service:is(:hover,:focus-visible) .sp3-lines i:nth-child(even){transform:translateY(10px)}
.sp3-service:is(:hover,:focus-visible) .sp3-components i:first-child{transform:translateX(-10px) rotate(-30deg)}
.sp3-service:is(:hover,:focus-visible) .sp3-components i:nth-child(2){transform:rotate(0deg) scale(1.08)}
.sp3-service:is(:hover,:focus-visible) .sp3-components i:last-child{transform:translateX(10px) rotate(15deg)}
.sp3-service.sp3-entered .sp3-diagnosis i:first-child{animation:sp3-ring-entry 1.4s ease-out 1}
.sp3-service.sp3-entered .sp3-lines i{animation:sp3-bar-entry 1s ease-out 1;animation-delay:calc(var(--sp3-bar,0)*100ms)}
.sp3-lines i:nth-child(2){--sp3-bar:1}.sp3-lines i:nth-child(3){--sp3-bar:2}.sp3-lines i:nth-child(4){--sp3-bar:3}.sp3-lines i:nth-child(5){--sp3-bar:4}
.sp3-service.sp3-entered .sp3-components i{animation:sp3-component-entry 1.2s ease-out 1}
@keyframes sp3-ring-entry{0%{transform:scale(.7);opacity:.4}50%{transform:scale(1.25)}100%{transform:scale(1);opacity:1}}
@keyframes sp3-bar-entry{0%{translate:0 18px}50%{translate:0 -10px}100%{translate:0 0}}
@keyframes sp3-component-entry{0%{translate:0 15px;opacity:.5}60%{translate:0 -5px}100%{translate:0 0;opacity:1}}
@media(prefers-reduced-motion:reduce){.sp3 .sp3-service,.sp3 .sp3-category,.sp3 .sp3-feature,.sp3 .sp3-products a,.sp3-service-graphic i{transition:none!important;animation:none!important}.sp3-service-graphic i{animation:none!important;transform:none!important}.sp3 .sp3-service:is(:hover,:focus-visible),.sp3 .sp3-category:is(:hover,:focus-visible),.sp3 .sp3-feature:is(:hover,:focus-visible){transform:none}}
/* 3.0.4 — compact footer navigation and unmistakable contact items. */
.sp-site .sp-footer__main{grid-template-columns:minmax(0,1.2fr) minmax(0,.55fr) minmax(0,.8fr) minmax(0,1.5fr)!important;gap:30px!important}
.sp-site .sp-footer__nav{display:flex!important;flex-direction:column!important;gap:0!important;align-items:flex-start}
.sp-site .sp-footer__nav>a{padding:4px 0!important;margin:0!important;line-height:1.5!important;min-height:0!important}
.sp-site .sp-footer__nav>strong{margin:0 0 12px!important}
.sp-site .sp-footer__registry{display:flex!important;flex-wrap:wrap!important;gap:6px 14px!important;grid-template-columns:none!important;margin-top:12px}
.sp-site .sp-footer__registry>span,.sp-site .sp-footer__registry b{font-weight:400!important;font-size:14px!important;line-height:1.6!important;white-space:nowrap!important;color:#e5dfd6!important}
.sp-site .sp-footer__contact-links{display:grid!important;grid-template-columns:1fr!important;gap:9px!important;margin-top:20px!important;width:100%}
.sp-site .sp-footer__contact-links>a{display:flex!important;align-items:center!important;gap:13px!important;white-space:normal!important;padding:10px 13px!important;border:1px solid #ffffff26!important;border-radius:8px!important;background:#ffffff06!important;min-height:64px;line-height:1.3!important;color:#ffffff!important;transition:background .2s,border-color .2s}
.sp-site .sp-footer__contact-links>a:is(:hover,:focus-visible){background:#ffffff12!important;border-color:#dfcbb1!important}
.sp-site .sp-footer-contact-icon{display:flex;align-items:center;justify-content:center;width:34px;height:34px;flex:0 0 34px;border-radius:50%;background:#dfcbb018;color:#dfcbb0;font-size:22px}
.sp-site .sp-footer__contact-links small{display:block!important;font-size:13px!important;color:#dad1c5!important;font-weight:400!important;line-height:1.3!important;margin-bottom:5px}
.sp-site .sp-footer__contact-links strong{display:block;font-size:19px!important;font-weight:600!important;line-height:1.25!important;color:#ffffff!important;overflow-wrap:anywhere}
@media(max-width:1080px){.sp-site .sp-footer__main{grid-template-columns:1fr 1fr!important;gap:28px!important}}
@media(max-width:520px){.sp-site .sp-footer__main{grid-template-columns:1fr!important}.sp-site .sp-footer__nav>a{padding:8px 0!important}.sp-site .sp-footer__registry{gap:5px 12px!important}}
@media(prefers-reduced-motion:reduce){.sp-site .sp-footer__contact-links>a{transition:none}}
/* 3.0.5 — manufacturer navigation as clearly defined service tiles. */
.sp3-brands{padding:48px 0;background:#ffffff;border-bottom:1px solid #e5d5c0}
.sp3-brands-heading{margin-bottom:25px}
.sp3-brands-heading h2{font-size:clamp(28px,2.8vw,38px)}
.sp3 .sp3-brand-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;width:100%}
.sp3 .sp3-brand-tile{position:relative;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:16px;min-height:160px;padding:27px 25px;background:#f7f1e8;border:1px solid #e5d5c0;border-radius:14px 14px 4px 14px;overflow:hidden;transition:transform .25s,background .25s,border-color .25s,box-shadow .25s}
.sp3-brand-tile:before{content:"";position:absolute;left:0;top:25px;bottom:25px;width:3px;background:#2c98a3}
.sp3 .sp3-brand-tile .sp3-brand-word{font-size:34px!important;letter-spacing:-.7px;line-height:1.15;font-weight:700;color:#1f2e30}
.sp3 .sp3-brand-tile .sp3-brand-desc{font-size:16px!important;font-weight:400;color:#577275;line-height:1.5;padding-right:15px}
.sp3-brand-tile>b{position:absolute;right:22px;top:24px;font-size:25px;line-height:1;color:#2c98a3;font-weight:400;transition:transform .25s}
.sp3 .sp3-brand-tile.sp3-brand-other{background:#1f2e30;border-color:#1f2e30}
.sp3 .sp3-brand-other .sp3-brand-word{font-size:28px!important;color:#ffffff}
.sp3 .sp3-brand-other .sp3-brand-desc{color:#e8e0d5}
.sp3-brand-other>b{color:#dfcbb0}
.sp3 .sp3-brand-tile:is(:hover,:focus-visible){transform:translateY(-5px);border-color:#2c98a3;box-shadow:0 12px 22px #1f2e3014;background:#e3eff1}
.sp3 .sp3-brand-other:is(:hover,:focus-visible){background:#28555a;border-color:#dfcbb0}
.sp3-brand-tile:is(:hover,:focus-visible)>b{transform:translate(3px,-3px)}
@media(max-width:900px){.sp3 .sp3-brand-row{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.sp3-brands{padding:36px 0}.sp3 .sp3-brand-row{grid-template-columns:1fr;gap:12px}.sp3 .sp3-brand-tile{min-height:132px;padding:23px;gap:12px}}
@media(prefers-reduced-motion:reduce){.sp3 .sp3-brand-tile,.sp3-brand-tile>b{transition:none}.sp3 .sp3-brand-tile:is(:hover,:focus-visible),.sp3-brand-tile:is(:hover,:focus-visible)>b{transform:none}}
/* 3.0.6 — compact contact strip across the footer, not a tall stack. */
.sp-site .sp-footer__main{row-gap:20px!important;padding:32px 0 20px!important}
.sp-site .sp-footer__main>.sp-footer__contact-links{grid-column:1/-1!important;display:flex!important;flex-wrap:wrap;gap:12px!important;width:100%;margin:0!important;align-items:stretch}
.sp-site .sp-footer__contact-links>a{flex:0 1 auto;min-height:54px!important;padding:8px 14px!important;gap:10px!important}
.sp-site .sp-footer-contact-icon{width:28px;height:28px;flex-basis:28px;font-size:18px}
.sp-site .sp-footer__contact-links small{font-size:12px!important;margin-bottom:3px}
.sp-site .sp-footer__contact-links strong{font-size:16px!important;line-height:1.2!important}
.sp-site .sp-footer__logo{margin-bottom:12px}
.sp-site .sp-footer__brand>p{margin:10px 0!important}
@media(max-width:520px){.sp-site .sp-footer__main>.sp-footer__contact-links{gap:8px!important}.sp-site .sp-footer__contact-links>a{flex:1 1 210px}.sp-site .sp-footer__main{padding:26px 0 16px!important}}

/* 3.0.7 — fluid process intro, animated steps and compact contact panel. */
.sp3 .sp3-process .sp3-section-head{flex-wrap:wrap;column-gap:24px;row-gap:16px}
.sp3 .sp3-process-intro{max-width:none;flex:0 1 auto;font-size:18px;line-height:1.5}
.sp3 .sp3-steps-premium li{transition:transform .25s ease,background-color .25s ease,border-color .25s ease,box-shadow .25s ease}
.sp3 .sp3-steps-premium li:hover{transform:translateY(-6px);background:#eee8e0;border-color:#2c98a3;box-shadow:0 14px 28px #1f2e301a}
.sp3 .sp3-steps-premium li:nth-child(3):hover{background:#28555a;border-color:#dfcbb0}
.sp3-step-head>b{transition:transform .25s ease}
.sp3 .sp3-steps-premium li:hover .sp3-step-head>b{transform:translate(4px,-4px) rotate(8deg)}
.sp3-contact-panel{padding:36px 40px;gap:36px;align-items:center}
.sp3 .sp3-contact-panel h2{font-size:clamp(30px,2.7vw,38px);line-height:1.15;margin-bottom:16px}
.sp3 .sp3-contact-copy>p:not(.sp3-kicker){font-size:17px;line-height:1.5;margin-bottom:20px}
.sp3-contact-hours{font-size:14px;margin-top:14px}
.sp3-contact-methods{gap:12px}
.sp3 .sp3-contact-card{padding:16px 20px}
.sp3 .sp3-contact-card>strong{font-size:28px!important;line-height:1.2;margin-top:8px}
.sp3 .sp3-contact-label{font-size:12px;letter-spacing:1px}
.sp3 .sp3-contact-mail{padding:8px 20px;gap:3px 12px}
.sp3 .sp3-contact-mail>strong{font-size:20px!important}
.sp3 .sp3-contact-mail>span{font-size:13px}
@media(max-width:760px){.sp3-contact-panel{padding:26px 24px;gap:24px}.sp3 .sp3-contact-panel h2{font-size:32px}.sp3 .sp3-contact-card>strong{font-size:26px!important}.sp3 .sp3-process-intro{font-size:17px;flex-basis:auto}}
@media(prefers-reduced-motion:reduce){.sp3 .sp3-steps-premium li,.sp3-step-head>b{transition:none}.sp3 .sp3-steps-premium li:hover,.sp3 .sp3-steps-premium li:hover .sp3-step-head>b{transform:none}}

/* V3: shared editorial system, forms, knowledge and legal pages. */
.sp-site .sp3-subpage{--page-ink:#1f2e30;--page-teal:#2c98a3;--page-muted:#577275;color:var(--page-ink);background:#ffffff;font-size:18px;line-height:1.6;overflow:hidden}
.sp-site .sp3-subpage *{box-sizing:border-box}
.sp-site .sp3-subpage h1{font-size:clamp(38px,4.2vw,60px)!important;line-height:1.1!important;letter-spacing:-1.8px!important;color:#1f2e30!important;margin:0 0 24px}
.sp-site .sp3-subpage h2{font-size:clamp(28px,2.8vw,38px)!important;line-height:1.2!important;letter-spacing:-.8px;color:#1f2e30!important}
.sp-site .sp3-subpage h3{font-size:24px!important;line-height:1.25!important;color:#1f2e30!important;margin:0 0 12px}
.sp-site .sp3-subpage p{font-size:18px;line-height:1.65;color:#577275}
.sp-site .sp3-subpage .sp3-kicker{font-size:12px!important;line-height:1.5;color:#2c98a3;font-weight:700;letter-spacing:1.4px;margin:0 0 16px}
.sp-site .sp3-subpage .sp3-page-hero{background:#f6efe5;padding:56px 0;border-bottom:1px solid #e8e3dc}
.sp3-page-hero-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);align-items:center;gap:64px}
.sp-site .sp3-subpage .sp3-page-lead{max-width:680px;font-size:20px;margin:0 0 26px}
.sp3-page-actions{display:flex;flex-wrap:wrap;gap:12px}
.sp-site .sp3-subpage .sp3-btn{display:inline-flex;align-items:center;justify-content:space-between;gap:22px;font-size:16px!important;min-height:48px;padding:13px 20px;background:#2c98a3!important;color:#ffffff!important;border:1px solid #2c98a3;border-radius:8px;text-decoration:none;transition:background .2s,transform .2s}
.sp-site .sp3-subpage .sp3-btn-outline{background:transparent!important;color:#1f2e30!important;border-color:#d8d0c6}
.sp-site .sp3-subpage .sp3-btn:is(:hover,:focus-visible){background:#1f2e30!important;color:#ffffff!important;transform:translateY(-2px)}
.sp3-page-brief{position:relative;padding:28px;background:#1f2e30;border-radius:22px 22px 4px 22px;color:#ffffff;overflow:hidden;min-width:0}
.sp3-page-brief-top{display:flex;justify-content:space-between;gap:12px;font-size:11px;letter-spacing:1px;color:#d7cbbb}
.sp3-page-brief-top>span:last-child{font-size:24px;color:#dfcbb0}
.sp3-page-mark{display:block;font-size:clamp(28px,3.6vw,50px);font-weight:600;line-height:1.2;letter-spacing:-1px;margin:26px 0 12px;overflow-wrap:anywhere}
.sp-site .sp3-subpage .sp3-page-brief p{font-size:17px;color:#ebe4db;margin:0 0 30px}
.sp3-page-traces{height:50px;display:flex;align-items:center;gap:8px;margin:22px 0}
.sp3-page-traces i{display:block;height:36px;flex:1;background:#dfcbb0;border-radius:2px;transform:skew(-12deg);transition:transform .3s,background .3s}
.sp3-page-traces i:nth-child(2){height:24px;background:#2c98a3}.sp3-page-traces i:nth-child(3){height:46px;background:#ece5dc}.sp3-page-traces i:nth-child(4){height:32px;background:#99785d}
.sp3-page-brief:hover .sp3-page-traces i{transform:skew(-12deg) translateY(-5px);background:#ffffff}
.sp3-page-brief-bottom{display:block;border-top:1px solid #ffffff25;padding-top:16px;font-size:13px;color:#d7cbbb}
.sp3-page-section{padding:44px 0}
.sp3-page-section+.sp3-page-section{padding-top:16px}
.sp3-page-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.sp3-page-card{display:flex;flex-direction:column;padding:26px;border:1px solid #e8e3dc;background:#f6efe5;border-radius:16px 16px 4px 16px;transition:transform .25s,background .25s,border-color .25s,box-shadow .25s;min-width:0;position:relative}
.sp3-page-card:nth-child(3n+2){background:#e3eff1}
.sp3-page-card-no{display:block;font-size:38px;font-weight:300;line-height:1;color:#2c98a3;margin-bottom:24px}
.sp-site .sp3-subpage .sp3-page-card p{margin:0 0 20px;font-size:17px}
.sp3-page-card-link{margin-top:auto;font-size:16px;font-weight:600;color:#2c98a3!important;display:flex;justify-content:space-between;gap:12px;text-decoration:none;line-height:1.4}
.sp3-page-card:hover,.sp3-page-card:focus-within{transform:translateY(-5px);background:#eee8e1;border-color:#2c98a3;box-shadow:0 12px 24px #1f2e3014}
.sp3-page-card-link:after{content:"";position:absolute;inset:0;border-radius:inherit}
.sp3-page-card:focus-within{outline:2px solid #2c98a3;outline-offset:3px}
.sp3-page-band{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);gap:40px;align-items:center;background:#1f2e30;padding:36px 40px;border-radius:20px 20px 4px 20px}
.sp-site .sp3-subpage .sp3-page-band h2{color:#ffffff!important;margin:0 0 16px}
.sp-site .sp3-subpage .sp3-page-band p{color:#ebe4db;margin:0}
.sp-site .sp3-subpage .sp3-page-band .sp3-kicker{color:#dfcbb0;margin-bottom:12px}
.sp3-page-band-links{display:flex;flex-direction:column;gap:12px}
.sp-site .sp3-subpage .sp3-page-band .sp3-btn{color:#ffffff!important;border-color:#947d6a}
.sp-site .sp3-subpage .sp3-page-band .sp3-btn:is(:hover,:focus-visible){background:#2c98a3!important}
.sp3-page-product{display:grid;grid-template-columns:1fr 1.1fr;gap:44px;align-items:center;padding:30px;border:1px solid #e8e3dc;border-radius:20px;background:#ffffff}
.sp3-page-product-photo{background:#f6efe5;border-radius:12px;padding:20px;display:flex;align-items:center;justify-content:center}
.sp3-page-product-photo img{max-width:100%;height:280px;object-fit:contain;mix-blend-mode:multiply}
.sp3-page-faq{display:grid;grid-template-columns:.7fr 1.3fr;gap:44px}
.sp3-page-faq details{border-bottom:1px solid #e8e3dc;padding:18px 0}
.sp3-page-faq summary{cursor:pointer;font-size:19px;font-weight:600;color:#1f2e30}
.sp3-page-faq details[open] summary{color:#2c98a3}
.sp3-contact-direct-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.sp3-contact-direct-grid a{padding:20px 24px;border-radius:12px;border:1px solid #e8e3dc;background:#f6efe5;color:#1f2e30;text-decoration:none;transition:background .2s,transform .2s}
.sp3-contact-direct-grid span{display:block;font-size:12px;letter-spacing:1px;color:#2c98a3;margin-bottom:8px}
.sp3-contact-direct-grid strong{display:block;font-size:26px;font-weight:600;line-height:1.2;overflow-wrap:anywhere}
.sp3-contact-direct-grid a:is(:hover,:focus-visible){background:#eee8e1;transform:translateY(-3px)}
/* Forms: existing handlers, fields and nonces retained. */
.sp-site .sp3-functional :is(.sp-request2-form-section,.sp-contact2-form-section){padding:32px 0 44px;background:#ffffff}
.sp-site .sp3-functional :is(.sp-request2-form-layout,.sp-contact2-form-section__grid){display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:40px;align-items:start}
.sp-site .sp3-functional :is(.sp-request2-form-intro,.sp-contact2-form-section__intro){position:static;top:auto;padding:0;background:none;border:0;box-shadow:none;border-radius:0}
.sp-site .sp3-functional .sp-request2-form-intro:after{display:none}
.sp-site .sp3-functional :is(.sp-request2-form-card,.sp-contact2-form-panel){padding:28px;background:#f6efe5;border:1px solid #e8e3dc;box-shadow:none;border-radius:16px}
.sp-site .sp3-functional :is(.sp-request2-block,.sp-request2-part-choice,.sp-request2-consent,.sp-contact2-consent,.sp-contact2-form-section__tip,.sp-request2-form-intro__checklist,.sp-request2-contact-mini){background:#ffffff;border:1px solid #e8e3dc;border-radius:10px;padding:18px;color:#1f2e30}
.sp-site .sp3-functional :is(.sp-request2-form-card__head,.sp-contact2-form-panel__head){background:transparent;padding:0 0 20px;margin:0 0 20px;border-bottom:1px solid #e4dcd2}
.sp-site .sp3-functional :is(.sp-request2-grid,.sp-contact2-form__grid){grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.sp-site .sp3-functional :is(label,.sp-request2-block__label,.sp-request2-form-card__head strong,.sp-contact2-form-panel__head strong){font-size:16px!important;line-height:1.5!important;color:#1f2e30!important}
.sp-site .sp3-functional :is(small,.sp-request2-help,.sp-request2-consent span,.sp-contact2-consent span){font-size:14px!important;line-height:1.6!important;color:#577275!important}
.sp-site .sp3-functional :is(input,select,textarea):not([type=checkbox]):not([type=hidden]):not([type=radio]){font-size:17px!important;line-height:1.4!important;min-height:48px;width:100%;padding:12px 14px;background:#ffffff;color:#1f2e30!important;border:1px solid #d8d0c6;border-radius:7px;box-shadow:none}
.sp-site .sp3-functional textarea{min-height:150px!important}
.sp-site .sp3-functional :is(input,select,textarea):focus{outline:2px solid #2c98a3;outline-offset:2px}
.sp-site .sp3-functional :is(input[type=checkbox],input[type=radio]){accent-color:#2c98a3;min-width:18px;min-height:18px}
.sp-site .sp3-functional :is(.spv2g-btn,button[type=submit]){background:#2c98a3!important;background-image:none!important;color:#ffffff!important;font-size:16px!important;line-height:1.4!important;border:1px solid #2c98a3;border-radius:8px;padding:13px 20px;min-height:48px;box-shadow:none}
.sp-site .sp3-functional :is(.spv2g-btn,button[type=submit]):is(:hover,:focus-visible){background:#1f2e30!important;border-color:#1f2e30}
.sp-site .sp3-functional :is(.spv2g-kicker,.sp-request2-form-intro__eyebrow strong){font-size:12px!important;color:#2c98a3!important;letter-spacing:1px}
.sp-site .sp3-functional :is(.sp-request2-form-progress,.sp-request2-part-choice){background:#e3eff1!important;color:#1f2e30}
.sp-site .sp3-functional .sp-request2-form-progress span{font-size:12px!important;color:#577275!important}
.sp-site .sp3-functional .sp-request2-form-progress .is-active{color:#2c98a3!important}
.sp-site .sp3-functional .sp-request2-upload input::file-selector-button{font-size:14px;color:#ffffff;background:#2c98a3;border:0;border-radius:4px;padding:8px 12px}
/* Knowledge listing and reading pages. */
.sp-site .sp3-subpage :is(.sp-kb2-hero,.sp-legal-hero,.sp-article-hero){background:#f6efe5!important;background-image:none!important;padding:48px 0!important;border-bottom:1px solid #e8e3dc}
.sp-site .sp3-subpage :is(.sp-kb2-hero__grid,.sp-article-hero__grid){grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr)!important;gap:44px!important}
.sp-site .sp3-subpage :is(.sp-kb2-searchbox,.sp-kb2-card,.sp-article__aside-card,.sp-legal__toc){background:#f6efe5!important;background-image:none!important;border:1px solid #e8e3dc;box-shadow:none!important;border-radius:14px}
.sp-site .sp3-subpage :is(.sp-kb2-topics,.sp-kb2-posts,.sp-legal,.sp-article-related){background:#ffffff!important;padding:40px 0}
.sp-site .sp3-subpage :is(.sp-kb2-topics__grid,.sp-kb2-posts__grid,.sp-article-related__grid){grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.sp-site .sp3-subpage :is(.sp-kb2-topic,.sp-article-related__card){background:#f6efe5!important;border:1px solid #e8e3dc;border-radius:12px;padding:24px;box-shadow:none}
.sp-site .sp3-subpage :is(.sp-kb2-topic,.sp-kb2-card):is(:hover,:focus-within){background:#eee8e1!important;transform:translateY(-4px)}
.sp-site .sp3-subpage :is(.sp-kb2-card__image,.sp-article-hero__media){background:#e3eff1!important;background-image:none!important}
.sp-site .sp3-subpage .sp-kb2-card__content{padding:24px}
.sp-site .sp3-subpage :is(.sp-kb2-card__more,.sp-kb2-card__topline,.sp-kb2-topic>a,.sp-article__back,.sp-article-related__more,.sp-legal__toc a){color:#2c98a3!important;font-size:16px!important}
.sp-site .sp3-subpage :is(.sp-kb2-searchbox__top,.sp-kb2-searchbox__quick){background:transparent!important;color:#577275;font-size:13px}
.sp-site .sp3-subpage :is(.sp-kb2-badge,.sp-article-hero__meta span,.sp-kb2-hero__meta span){background:#ffffff!important;color:#2c98a3!important;font-size:13px!important;box-shadow:none}
.sp-site .sp3-subpage .sp-kb2-boundary__panel{background:#1f2e30!important;background-image:none!important;padding:32px;border-radius:16px}
.sp-site .sp3-subpage .sp-kb2-boundary__panel :is(h2,p){color:#ffffff!important}
.sp-site .sp3-subpage .sp-kb2-empty{background:#f6efe5;color:#1f2e30;padding:24px}
.sp-site .sp3-legal-page .sp-legal__layout{display:grid;grid-template-columns:250px minmax(0,1fr);gap:44px;align-items:start}
.sp-site .sp3-legal-page .sp-legal__content{max-width:900px;background:#ffffff;border:0;box-shadow:none;padding:0}
.sp-site .sp3-legal-page .sp-legal__content section{padding:24px 0;border-bottom:1px solid #e8e3dc}
.sp-site .sp3-legal-page .sp-legal__content h2{font-size:26px!important}
.sp-site .sp3-legal-page .sp-legal__content :is(p,li){font-size:18px!important;line-height:1.75}
.sp-site .sp3-legal-page .sp-legal-switcher{display:flex;flex-wrap:wrap;gap:10px}
.sp-site .sp3-legal-page .sp-legal-switcher a{background:#ffffff!important;color:#2c98a3!important;font-size:15px;padding:9px 13px;border:1px solid #d8d0c6;border-radius:6px}
.sp-site .sp3-legal-page .sp-legal-hero>div>span{font-size:14px;color:#577275}
.sp-site .sp3-article-page .sp-article-body{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:44px;padding-top:40px}
.sp-site .sp3-article-page .sp-article__content :is(p,li){font-size:19px!important;line-height:1.8}
.sp-site .sp3-article-page .sp-article__endnote{background:#e3eff1;color:#1f2e30;padding:24px}
.sp-site .sp3-article-page .sp-article__aside h2{font-size:25px!important}
.sp-site .sp3-article-page .sp-btn{background:#2c98a3!important;color:#ffffff!important;font-size:16px!important;padding:13px 20px;border-radius:8px;box-shadow:none}
.sp-site .sp3-article-page .sp-btn:is(:hover,:focus-visible){background:#1f2e30!important}
.sp-site .sp3-article-page .sp-article__aside-links{background:#ffffff;color:#1f2e30;border:1px solid #e8e3dc}
@media(max-width:1050px){.sp3-page-hero-grid{gap:32px}.sp3-page-band{gap:24px;padding:30px}.sp3-contact-direct-grid strong{font-size:23px}.sp-site .sp3-functional :is(.sp-request2-form-layout,.sp-contact2-form-section__grid){grid-template-columns:1fr;gap:24px}.sp-site .sp3-functional .sp-request2-form-intro__checklist{display:none}.sp-site .sp3-subpage :is(.sp-kb2-topics__grid,.sp-kb2-posts__grid){grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.sp3-page-hero-grid,.sp3-page-band,.sp3-page-product,.sp3-page-faq{grid-template-columns:1fr;gap:26px}.sp3-page-brief{padding:24px}.sp3-page-traces{height:35px;margin:16px 0}.sp3-page-card-grid{grid-template-columns:1fr}.sp3-contact-direct-grid{grid-template-columns:1fr;gap:10px}.sp3-contact-direct-grid a{padding:16px 20px}.sp3-contact-direct-grid strong{font-size:24px}.sp-site .sp3-subpage .sp3-page-hero{padding:36px 0}.sp-site .sp3-subpage h1{font-size:38px!important;letter-spacing:-1px!important}.sp-site .sp3-subpage .sp3-page-lead{font-size:18px}.sp3-page-section{padding:32px 0}.sp3-page-card{padding:24px}.sp3-page-card-no{margin-bottom:18px;font-size:32px}.sp3-page-band{padding:26px}.sp3-page-product{padding:22px}.sp3-page-product-photo img{height:210px}.sp-site .sp3-functional :is(.sp-request2-grid,.sp-contact2-form__grid){grid-template-columns:1fr}.sp-site .sp3-functional :is(.sp-request2-form-card,.sp-contact2-form-panel){padding:20px}.sp-site .sp3-subpage :is(.sp-kb2-hero__grid,.sp-article-hero__grid){grid-template-columns:1fr!important;gap:26px!important}.sp-site .sp3-subpage :is(.sp-kb2-topics__grid,.sp-kb2-posts__grid,.sp-article-related__grid,.sp-legal__layout,.sp-article-body){grid-template-columns:1fr!important;gap:24px!important}.sp-site .sp3-legal-page .sp-legal__toc{position:static}.sp-site .sp3-article-page .sp-article__aside{position:static}.sp3-page-actions>.sp3-btn{flex:1 1 230px}}
@media(prefers-reduced-motion:reduce){.sp-site .sp3-subpage *{transition:none!important;animation:none!important}.sp3-page-card:hover,.sp3-page-card:focus-within,.sp3-page-brief:hover .sp3-page-traces i,.sp3-contact-direct-grid a:hover,.sp-site .sp3-subpage .sp3-btn:is(:hover,:focus-visible){transform:none}}
/* Remove remaining decorative palette from legacy form and reading components. */
.sp-site .sp3-subpage{--con-blue:#2c98a3;--con-cyan:#2c98a3;--con-violet:#2c98a3;--req-blue:#2c98a3;--req-cyan:#2c98a3;--req-violet:#2c98a3;--kb-blue:#2c98a3;--kb-cyan:#2c98a3;--kb-violet:#2c98a3;--kb-pink:#2c98a3;--legal-cyan:#2c98a3;--legal-blue:#2c98a3;--legal-violet:#2c98a3}
.sp-site .sp3-subpage :is(h1,h2,h3) em{background:none!important;-webkit-text-fill-color:#2c98a3!important;color:#2c98a3!important;font-style:normal}
.sp-site .sp3-subpage :is(.sp-kb2-topic__icon,.sp-kb2-topic__number,.sp-kb2-searchbox__dot,.sp-request2-brief__dot,.sp-request2-field label>span,.sp-contact2-field label>span){color:#2c98a3!important}
.sp-site .sp3-subpage :is(.sp-kb2-searchbox__dot,.sp-request2-brief__dot){background:#2c98a3!important;box-shadow:none}
.sp-site .sp3-subpage :is(.sp-kb2-searchbox__quick b,.sp-kb2-topic__icon){background:#e3eff1!important;color:#2c98a3!important;border-color:#d8d0c6}
.sp-site .sp3-subpage :is(.sp-kb2-card,.sp-legal__toc,.sp-legal-hero,.sp-article-hero):before,.sp-site .sp3-subpage :is(.sp-kb2-card,.sp-legal__toc,.sp-legal-hero,.sp-article-hero):after{background:#2c98a3!important;background-image:none!important}
.sp-site .sp3-functional :is(.sp-request2-form-intro__checklist strong,.sp-request2-block__label strong,.sp-request2-form-progress strong,.sp-request2-contact-mini a,.sp-contact2-form-section__tip strong){font-size:16px!important;color:#1f2e30!important}
.sp-site .sp3-functional :is(.sp-request2-block__label>span,.sp-request2-form-intro__checklist>div>span){background:#e3eff1!important;color:#2c98a3!important;font-size:14px!important}
.sp-site .sp3-functional .sp-request2-form-progress .is-active span{background:#2c98a3!important;color:#ffffff!important}
.sp-site .sp3-functional .sp-request2-form-progress i{background:#d8d0c6!important}
.sp-site .sp3-functional .sp-request2-form{padding:0}
.sp-site .sp3-functional .sp-request2-upload input::file-selector-button{font-size:14px!important;background:#2c98a3!important;box-shadow:none!important}
.sp-site .sp3-subpage .sp-kb2-searchbox__note{font-size:14px!important;color:#577275!important}
.sp-site .sp3-subpage .sp-kb2-searchbox__quick{display:none}
.sp-site .sp3-subpage .sp-kb2-topics__grid{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:1050px){.sp-site .sp3-subpage .sp-kb2-topics__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.sp-site .sp3-subpage .sp-kb2-topics__grid{grid-template-columns:1fr}.sp-site .sp3-functional .sp-request2-form-progress strong{font-size:12px!important}.sp-site .sp3-functional :is(.sp-request2-form__foot,.sp-contact2-form__foot){align-items:stretch;flex-direction:column;gap:12px}}

.sp-site .sp3-functional .sp-request2-form-card:before{background:#2c98a3!important}
.sp-site .sp3-functional .sp-contact2-form-section__tip a{color:#2c98a3!important;font-size:16px!important;line-height:1.5}
.sp-site .sp3-legal-page .sp-legal-hero:after{display:none}
.sp-site .sp3-legal-page .sp-section-kicker{font-size:12px!important;color:#2c98a3!important}
.sp-site .sp3-legal-page .sp-legal__toc strong{font-size:16px!important;color:#1f2e30!important}
.sp-site .sp3-legal-page .sp-legal__toc a{font-size:16px!important;line-height:1.6!important;padding:9px 0}
.sp-site .sp3-legal-page .sp-legal-switcher a{font-size:15px!important}
.sp-site .sp3-article-page :is(.sp-article-hero__phone small,.sp-article-hero__meta span){font-size:14px!important}
.sp-site .sp3-article-page .sp-article-hero__phone strong{font-size:24px!important;color:#1f2e30!important}
.sp-site .sp3-article-page .sp-article-related__card{padding:0;overflow:hidden}
.sp-site .sp3-article-page .sp-article-related__card>div{padding:22px}
.sp-site .sp3-article-page :is(.sp-article__phone,.sp-article__aside-links a){font-size:17px!important;color:#2c98a3!important}
.sp-site .sp3-generic-content{max-width:1100px;margin-inline:auto}
.sp-site .sp3-generic-content :is(p,li){font-size:18px!important;line-height:1.75}
.sp-site .sp3-generic-content a{color:#2c98a3;text-decoration:underline;text-underline-offset:3px}
.sp-site .sp3-generic-content img{max-width:100%;height:auto}
/* 3.2.0 — glass surfaces, an editorial mosaic and separate process/shop layouts. */
.sp-site .sp3-subpage{--glass-navy:#1f2e30;--glass-teal:#2c98a3;--glass-paper:#f3eadb}
.sp-site .sp3-subpage .sp3-page-hero{position:relative;background:radial-gradient(ellipse at 90% 20%,#d0bca24d,transparent 40%),radial-gradient(ellipse at 56% 100%,#e3cba055,transparent 45%),#f6efe5;isolation:isolate}
.sp3-page-hero-grid{gap:56px}
.sp3-page-brief{isolation:isolate;background:radial-gradient(circle at 85% 15%,#ca946799,transparent 45%),radial-gradient(circle at 10% 110%,#38777d,transparent 65%),#1f2e30;box-shadow:0 24px 50px #1f2e3026;min-height:330px;border:1px solid #ffffff85;border-radius:28px 28px 8px 28px}
.sp3-page-brief:before{content:"";position:absolute;z-index:-1;width:230px;height:230px;right:-60px;top:35px;border-radius:50%;border:1px solid #ffecd355;background:#ead4b718;box-shadow:inset 0 0 50px #ead4b725;transform:rotate(-20deg)}
.sp3-page-brief-top{background:#ffffff12;border:1px solid #ffffff35;border-radius:9px;padding:11px 14px;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.sp3-page-brief .sp3-page-mark{position:relative;margin-top:32px;color:#ffffff;text-shadow:0 4px 20px #1f2e3066}
.sp3-page-traces{padding:12px 18px;height:72px;background:#ffffff0d;border:1px solid #ffffff2b;border-radius:10px;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
.sp-site .sp3-subpage .sp3-section-scope{padding:48px 0;background:#ffffff}
.sp3-section-scope .sp3-page-card-grid{grid-template-columns:repeat(12,minmax(0,1fr));gap:20px}
.sp3-section-scope .sp3-page-card{grid-column:span 4;min-height:270px}
.sp3-section-scope .sp3-page-card-grid:has(>article:nth-child(6))>article:nth-child(1){grid-column:span 6}
.sp3-section-scope .sp3-page-card-grid:has(>article:nth-child(6))>article:nth-child(2),.sp3-section-scope .sp3-page-card-grid:has(>article:nth-child(6))>article:nth-child(3){grid-column:span 3}
.sp3-card-top{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:25px}
.sp3-page-card-no{font-size:14px;font-weight:600;letter-spacing:2px;margin:0;align-self:flex-start;opacity:.75}
.sp3-card-art{position:relative;z-index:1;width:76px;height:76px;flex:0 0 76px;padding:14px;border:1px solid #ffffff75;border-radius:16px;background:#ffffff25;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);box-shadow:inset 0 1px 0 #ffffff66,0 12px 26px #1f2e301a;transition:transform .4s,background .4s}
.sp-site .sp3-subpage .sp3-page-card{isolation:isolate;overflow:hidden;border-radius:22px 22px 6px 22px;padding:28px;box-shadow:0 12px 28px #1f2e300d;transition:transform .3s,box-shadow .3s,border-color .3s}
.sp3-page-card:before{content:"";position:absolute;z-index:-1;right:-30px;top:-45px;width:180px;height:180px;background:#ffffff18;border:1px solid #ffffff35;border-radius:50%;transition:transform .5s}
.sp-site .sp3-subpage .sp3-section-scope .sp3-page-card:nth-child(6n+1){background:radial-gradient(ellipse at 92% 0%,#52808580,transparent 62%),#1f2e30;border-color:#5a7d81;color:#ffffff}
.sp-site .sp3-subpage .sp3-section-scope .sp3-page-card:nth-child(6n+2){background:radial-gradient(ellipse at 95% 0%,#c79d7a80,transparent 72%),#268c96;border-color:#af9076;color:#ffffff}
.sp-site .sp3-subpage .sp3-section-scope .sp3-page-card:nth-child(6n+3){background:radial-gradient(ellipse at 100% 0%,#e2c79a80,transparent 70%),#f3eadb;border-color:#dfceb2;color:#1f2e30}
.sp-site .sp3-subpage .sp3-section-scope .sp3-page-card:nth-child(6n+4){background:radial-gradient(ellipse at 100% 0%,#e5dcd0,transparent 75%),#edf5f6;border-color:#e2dbd1;color:#1f2e30}
.sp-site .sp3-subpage .sp3-section-scope .sp3-page-card:nth-child(6n+5){background:radial-gradient(ellipse at 100% 0%,#487d8299,transparent 70%),#224c50;border-color:#5a7d81;color:#ffffff}
.sp-site .sp3-subpage .sp3-section-scope .sp3-page-card:nth-child(6n){background:radial-gradient(ellipse at 100% 0%,#e9e0d5,transparent 75%),#e7f1eb;border-color:#dcd6ce;color:#1f2e30}
.sp-site .sp3-subpage .sp3-section-scope .sp3-page-card:nth-child(6n+1) :is(h3,p,.sp3-page-card-link,.sp3-page-card-no),.sp-site .sp3-subpage .sp3-section-scope .sp3-page-card:nth-child(6n+2) :is(h3,p,.sp3-page-card-link,.sp3-page-card-no),.sp-site .sp3-subpage .sp3-section-scope .sp3-page-card:nth-child(6n+5) :is(h3,p,.sp3-page-card-link,.sp3-page-card-no){color:#ffffff!important}
.sp-site .sp3-subpage .sp3-page-card h3{font-size:23px!important;margin-bottom:12px}
.sp-site .sp3-subpage .sp3-page-card p{font-size:17px;line-height:1.6;margin-bottom:24px}
.sp3-section-scope .sp3-page-card-grid:has(>article:nth-child(6))>article:first-child .sp3-card-art{width:100px;height:100px;flex-basis:100px;padding:20px}
.sp-site .sp3-subpage .sp3-section-scope .sp3-page-card-grid:has(>article:nth-child(6))>article:first-child h3{font-size:28px!important}
.sp-site .sp3-subpage .sp3-page-card:is(:hover,:focus-within){transform:translateY(-7px);box-shadow:0 20px 36px #1f2e3029;border-color:#cebba1}
.sp3-page-card:is(:hover,:focus-within) .sp3-card-art{transform:rotate(-6deg) translateY(-4px);background:#ffffff40}
.sp3-page-card:is(:hover,:focus-within):before{transform:scale(1.25) translate(-12px,12px)}
/* Process is a continuous rail on a luminous dark surface, not another tile grid. */
.sp-site .sp3-subpage .sp3-section-process{position:relative;background:radial-gradient(ellipse at 90% 0%,#45848a88,transparent 52%),#1f2e30;padding:42px 0;margin:12px 0 28px}
.sp-site .sp3-subpage .sp3-section-process h2{color:#ffffff!important}
.sp-site .sp3-subpage .sp3-section-process .sp3-kicker{color:#dfcbb0!important}
.sp3-section-process .sp3-page-card-grid{gap:0;border-top:1px solid #ffffff40;padding-top:26px}
.sp-site .sp3-subpage .sp3-section-process .sp3-page-card{background:transparent!important;border:0;border-radius:0;padding:0 28px;box-shadow:none;min-height:0;overflow:visible}
.sp3-section-process .sp3-page-card+article{border-left:1px solid #ffffff35!important}
.sp3-section-process .sp3-page-card:before{display:none}
.sp3-section-process .sp3-card-top{margin-bottom:16px}
.sp3-section-process .sp3-page-card-no{width:56px;height:56px;display:grid;place-items:center;align-self:auto;background:#ffffff12;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid #ffffff45;border-radius:50%;font-size:19px;color:#f0e2ce;letter-spacing:0;opacity:1;transition:background .25s,transform .25s}
.sp-site .sp3-subpage .sp3-section-process .sp3-page-card :is(h3,p,.sp3-page-card-link){color:#ffffff!important}
.sp3-section-process .sp3-page-card:hover .sp3-page-card-no{background:#2c98a3;transform:scale(1.08)}
.sp-site .sp3-subpage .sp3-section-process .sp3-page-card:is(:hover,:focus-within){transform:none;box-shadow:none}
/* Paper tint separates FAQ from services. */
.sp-site .sp3-subpage .sp3-section-faq{background:#f3eadb;padding:40px 0;margin-bottom:24px}
.sp3-section-faq .sp3-page-faq{align-items:start}
.sp3-section-faq .sp3-page-faq details{background:#ffffff66;border:1px solid #ffffffcc;border-radius:12px;padding:18px 22px;margin-bottom:10px;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);transition:background .25s,box-shadow .25s}
.sp3-section-faq .sp3-page-faq details:hover,.sp3-section-faq .sp3-page-faq details[open]{background:#ffffffe6;box-shadow:0 8px 18px #1f2e300d}
/* Shop gets product line art and its own color rhythm. */
.sp-site .sp3-subpage .sp3-section-shop{background:#ffffff;padding:42px 0}
.sp3-section-shop .sp3-page-card-no{display:none}
.sp3-section-shop .sp3-card-top{justify-content:flex-start;margin-bottom:28px}
.sp3-section-shop .sp3-card-art{width:106px;height:106px;flex-basis:106px;padding:18px}
.sp-site .sp3-subpage .sp3-section-shop .sp3-page-card:nth-child(1){background:radial-gradient(ellipse at 100% 0%,#856d5980,transparent 65%),#1f2e30;color:#ffffff;border-color:#5a7d81}
.sp-site .sp3-subpage .sp3-section-shop .sp3-page-card:nth-child(2){background:radial-gradient(ellipse at 100% 0%,#cfbba166,transparent 70%),#268c96;color:#ffffff;border-color:#af9076}
.sp-site .sp3-subpage .sp3-section-shop .sp3-page-card:nth-child(3){background:radial-gradient(ellipse at 100% 0%,#e2c79a80,transparent 70%),#f3eadb;color:#1f2e30;border-color:#dfceb2}
.sp-site .sp3-subpage .sp3-section-shop .sp3-page-card:nth-child(-n+2) :is(h3,p,.sp3-page-card-link){color:#ffffff!important}
.sp3-section-brands .sp3-page-card-no{display:none}
.sp-site .sp3-subpage .sp3-section-brands .sp3-page-card{background:#e3eff1}
.sp-site .sp3-subpage .sp3-section-brands .sp3-page-card:nth-child(2){background:#f3eadb}
.sp-site .sp3-subpage .sp3-section-brands .sp3-page-card:nth-child(3){background:#1f2e30;color:#ffffff}
.sp-site .sp3-subpage .sp3-section-brands .sp3-page-card:nth-child(3) :is(h3,p,.sp3-page-card-link){color:#ffffff!important}
@media(max-width:1050px){.sp3-section-scope .sp3-page-card-grid>article,.sp3-section-scope .sp3-page-card-grid:has(>article:nth-child(6))>article:nth-child(n){grid-column:span 6}.sp3-page-hero-grid{gap:28px}}
@media(max-width:760px){.sp3-section-scope .sp3-page-card-grid{grid-template-columns:1fr}.sp3-section-scope .sp3-page-card-grid>article,.sp3-section-scope .sp3-page-card-grid:has(>article:nth-child(6))>article:nth-child(n){grid-column:1}.sp-site .sp3-subpage .sp3-page-card{padding:24px;min-height:0}.sp3-section-process .sp3-page-card-grid{grid-template-columns:1fr;gap:24px}.sp-site .sp3-subpage .sp3-section-process .sp3-page-card{padding:0 0 24px}.sp3-section-process .sp3-page-card+article{border-left:0!important;border-top:1px solid #ffffff35;padding-top:24px!important}.sp3-page-brief{min-height:0}.sp-site .sp3-subpage :is(.sp3-section-process,.sp3-section-faq,.sp3-section-shop){padding:32px 0}.sp3-section-faq .sp3-page-faq details{padding:16px}.sp3-section-scope .sp3-page-card-grid:has(>article:nth-child(6))>article:first-child .sp3-card-art{width:76px;height:76px;flex-basis:76px;padding:14px}}
@media(prefers-reduced-motion:reduce){.sp-site .sp3-subpage *,.sp-site .sp3-subpage :before{transition:none!important;animation:none!important}.sp-site .sp3-subpage .sp3-page-card:is(:hover,:focus-within),.sp3-page-card:is(:hover,:focus-within) .sp3-card-art,.sp3-page-card:is(:hover,:focus-within):before,.sp3-section-process .sp3-page-card:hover .sp3-page-card-no{transform:none}}

/* 4.0: individual page compositions. Shared typography, different content layouts. */
.sp-site .sp3.sp3-distinct{background:#e2eef0!important;color:#1f2e30;font-size:18px;line-height:1.65;overflow:hidden}
.sp-site .sp3.sp3-distinct h1{font-size:clamp(38px,4.1vw,60px)!important;line-height:1.08!important;letter-spacing:-1.7px;color:#1f2e30!important}
.sp-site .sp3.sp3-distinct h2{font-size:clamp(28px,2.6vw,38px)!important;line-height:1.22!important;color:#1f2e30!important}
.sp-site .sp3.sp3-distinct h3{font-size:24px!important;line-height:1.25!important;color:#1f2e30!important}
.sp-site .sp3.sp3-distinct p{font-size:18px!important;line-height:1.65!important;color:#577275!important}
.sp-site .sp3.sp3-distinct small{font-size:14px!important;line-height:1.5!important}
.sp-site .sp3.sp3-distinct :is(.spv2g-kicker,[class$=badge]){font-size:12px!important;line-height:1.5;letter-spacing:1px;color:#2c98a3!important}
.sp-site .sp3.sp3-distinct h1 em{background:none!important;-webkit-text-fill-color:#2c98a3;color:#2c98a3;font-style:normal}
.sp-site .sp3.sp3-distinct :is(.spv2g-btn,.sp-epson3-btn){font-size:16px!important;line-height:1.4!important;min-height:48px;padding:13px 20px!important;border-radius:8px;background:#2c98a3!important;color:#ffffff!important;border:1px solid #2c98a3;box-shadow:none;text-shadow:none}
.sp-site .sp3.sp3-distinct :is(.spv2g-btn,.sp-epson3-btn):is(:hover,:focus-visible){background:#1f2e30!important;transform:translateY(-2px);color:#ffffff!important}
.sp-site .sp3.sp3-distinct [class*=hero__grid]{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:44px}
.sp-site .sp3.sp3-distinct [class*=hero__grid-bg]{opacity:.45;background-size:36px 36px}
.sp-site .sp3.sp3-distinct [class*=hero__orb]{opacity:.55;filter:blur(60px)}
.sp-site .sp3.sp3-distinct [class$=section-head]{gap:28px;margin-bottom:28px;align-items:end}
.sp-site .sp3.sp3-distinct [class$=section-head]>p{max-width:460px}
.sp-site .sp3.sp3-distinct [class$=hero]{padding:52px 0;background:radial-gradient(ellipse at 90% 25%,#c9a58766,transparent 45%),#edf5f6!important}
.sp-site .sp3.sp3-distinct [class*=hero__meta] span,.sp-site .sp3.sp3-distinct .sp-epson3-meta span{font-size:13px!important;line-height:1.5;padding:7px 11px;background:#ffffff70!important;backdrop-filter:blur(12px);border:1px solid #e2dbd1;color:#4b6e71}
.sp-site .sp3.sp3-distinct :is(.sp-srv2-console,.sp-prt2-finder,.sp-b2b2-console,.sp-about2-company,.sp-hp2-partner,.sp-canon2-console){border:1px solid #ffffffb0;background:#ffffff80!important;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);box-shadow:inset 0 1px 0 #ffffff,0 22px 48px #1f2e3022;border-radius:24px}
.sp-site .sp3.sp3-distinct :is([class*=scope-card],[class*=bento__card],[class*=use-card],[class*=for-card],.sp-prt2-group,.sp-srv2-brand){transition:transform .3s,box-shadow .3s,border-color .3s}
.sp-site .sp3.sp3-distinct :is([class*=scope-card],[class*=bento__card],[class*=use-card],[class*=for-card],.sp-prt2-group,.sp-srv2-brand):is(:hover,:focus-within){transform:translateY(-5px);box-shadow:0 18px 34px #1f2e3020;border-color:#c4a184}
/* SERVICE: technical illustration + asymmetric six-part service dashboard. */
.sp-site .sp3.sp3-distinct .sp-srv2-hero__visual{padding:18px 18px 0;border-radius:32px;background:radial-gradient(circle at 80% 20%,#d4c2a9,transparent 65%),#eee9e1!important}
.sp-site .sp3.sp3-distinct .sp-srv2-device img{max-height:285px;object-fit:contain;filter:none;mix-blend-mode:multiply}
.sp-site .sp3.sp3-distinct .sp-srv2-console{margin-top:-16px;position:relative}
.sp-site .sp3.sp3-distinct .sp-srv2-console__items article{padding:16px 18px}
.sp-site .sp3.sp3-distinct .sp-srv2-scope{padding:48px 0;background:#e2eef0!important}
.sp-site .sp3.sp3-distinct .sp-srv2-bento{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.sp-site .sp3.sp3-distinct .sp-srv2-bento__card{grid-column:auto;grid-row:auto;min-height:220px;padding:26px;border-radius:20px;background:#f6efe5!important}
.sp-site .sp3.sp3-distinct .sp-srv2-bento__card--feature{grid-row:span 2;background:radial-gradient(circle at 90% 0%,#93715588,transparent 65%),#1f2e30!important;display:flex;flex-direction:column;justify-content:center}
.sp-site .sp3.sp3-distinct .sp-srv2-bento__card--feature :is(h3,p,a){color:#ffffff!important}
.sp-site .sp3.sp3-distinct .sp-srv2-bento__card--feature .sp-srv2-bento__icon{width:90px;height:90px;background:#ffffff18!important;border:1px solid #ffffff60;backdrop-filter:blur(15px);color:#e8dac7}
.sp-site .sp3.sp3-distinct .sp-srv2-bento__card--feature .sp-srv2-bento__icon svg{width:44px;height:44px}
.sp-site .sp3.sp3-distinct .sp-srv2-bento__card--blue{background:#e9e3dc!important}.sp-site .sp3.sp3-distinct .sp-srv2-bento__card--violet{background:#ebe6df!important}.sp-site .sp3.sp3-distinct .sp-srv2-bento__card--cyan{background:#ebe6df!important}.sp-site .sp3.sp3-distinct .sp-srv2-bento__card--pink{background:#e8f1ee!important}.sp-site .sp3.sp3-distinct .sp-srv2-bento__card--mint{grid-column:2/4;background:#edf5f6!important;min-height:165px}
.sp-site .sp3.sp3-distinct .sp-srv2-workflow{background:#1f2e30!important;padding:36px 0;margin:12px 0 28px}
.sp-site .sp3.sp3-distinct .sp-srv2-workflow__panel{background:none!important;box-shadow:none;border:0;padding:0}
.sp-site .sp3.sp3-distinct .sp-srv2-workflow :is(h2,strong,small){color:#ffffff!important}
.sp-site .sp3.sp3-distinct .sp-srv2-workflow__steps{gap:18px}
.sp-site .sp3.sp3-distinct .sp-srv2-workflow__steps li{background:#ffffff0d!important;border:1px solid #ffffff30;padding:22px;border-radius:12px;backdrop-filter:blur(12px)}
.sp-site .sp3.sp3-distinct .sp-srv2-brands{background:#e2eef0!important;padding:40px 0}
.sp-site .sp3.sp3-distinct .sp-srv2-brands__grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.sp-site .sp3.sp3-distinct .sp-srv2-brand{min-height:0;padding:22px;display:flex;flex-direction:column;align-items:start;border-radius:16px;background:#f6efe5!important}
.sp-site .sp3.sp3-distinct .sp-srv2-brand--canon{background:#ebe6df!important}.sp-site .sp3.sp3-distinct .sp-srv2-brand--epson{background:#eae5de!important}.sp-site .sp3.sp3-distinct .sp-srv2-brand--other{background:#e9eef2!important}
.sp-site .sp3.sp3-distinct .sp-srv2-brand__logo img{width:65px;height:65px;object-fit:contain}
.sp-site .sp3.sp3-distinct .sp-srv2-brand__copy h3{font-size:22px!important}
/* PLOTTERS: product-first presentation, use cases as a compact horizontal index. */
.sp-site .sp3.sp3-distinct .sp-plt2-hero{background:radial-gradient(ellipse at 85% 15%,#2c98a3cc,transparent 55%),#1f2e30!important}
.sp-site .sp3.sp3-distinct .sp-plt2-hero__copy :is(h1,p){color:#ffffff!important}
.sp-site .sp3.sp3-distinct .sp-plt2-hero h1 em{-webkit-text-fill-color:#e7d8c5;color:#e7d8c5}
.sp-site .sp3.sp3-distinct .sp-plt2-product-glass{background:#ffffffd6!important;backdrop-filter:blur(24px);border:1px solid #ffffffd0;border-radius:24px;box-shadow:0 28px 60px #00000033;padding:24px}
.sp-site .sp3.sp3-distinct .sp-plt2-product-glass img{height:240px;object-fit:contain;mix-blend-mode:multiply}
.sp-site .sp3.sp3-distinct .sp-plt2-floating{background:#ffffff22!important;backdrop-filter:blur(18px);border:1px solid #ffffff65;box-shadow:0 10px 24px #00000022;color:#ffffff}
.sp-site .sp3.sp3-distinct .sp-plt2-floating :is(strong,small){color:#ffffff!important}
.sp-site .sp3.sp3-distinct .sp-plt2-use{padding:38px 0;background:#e2eef0!important}
.sp-site .sp3.sp3-distinct .sp-plt2-use__grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:0;border-block:1px solid #e2dbd1}
.sp-site .sp3.sp3-distinct .sp-plt2-use-card{background:none!important;border:0;border-right:1px solid #e2dbd1;border-radius:0;box-shadow:none;padding:22px;min-height:0}
.sp-site .sp3.sp3-distinct .sp-plt2-use-card:last-child{border-right:0}
.sp-site .sp3.sp3-distinct .sp-plt2-use-card h3{font-size:22px!important}.sp-site .sp3.sp3-distinct .sp-plt2-use-card p{font-size:16px!important}
.sp-site .sp3.sp3-distinct .sp-plt2-real{background:#ebe6df!important;padding:44px 0}
.sp-site .sp3.sp3-distinct .sp-plt2-real__panel{grid-template-columns:1.15fr 1fr;gap:44px;background:none!important;border:0;box-shadow:none;padding:0}
.sp-site .sp3.sp3-distinct .sp-plt2-real__visual{background:#ffffff80!important;border:1px solid #ffffff;border-radius:24px;backdrop-filter:blur(18px);min-height:310px}
.sp-site .sp3.sp3-distinct .sp-plt2-guide__panel{background:#edf5f6!important;border-radius:20px;border:1px solid #e2dbd1;padding:32px}
.sp-site .sp3.sp3-distinct .sp-plt2-myt__panel{background:#1f2e30!important;padding:36px;border-radius:20px}
.sp-site .sp3.sp3-distinct .sp-plt2-myt__panel :is(h2,p){color:#ffffff!important}
/* PARTS: a catalogue of illustrated rows, not repeated marketing tiles. */
.sp-site .sp3.sp3-distinct .sp-prt2-hero{background:radial-gradient(ellipse at 80% 20%,#c5a78e66,transparent 50%),#ebe6df!important}
.sp-site .sp3.sp3-distinct .sp-prt2-finder{background:#ffffff66!important}
.sp-site .sp3.sp3-distinct .sp-prt2-groups{background:#e2eef0!important;padding:44px 0}
.sp-site .sp3.sp3-distinct .sp-prt2-groups__layout{display:grid;grid-template-columns:1fr 1fr;gap:0 28px}
.sp-site .sp3.sp3-distinct .sp-prt2-group{grid-column:auto;grid-row:auto;min-height:0;display:grid;grid-template-columns:68px minmax(0,1fr);gap:4px 22px;padding:24px 12px;background:none!important;border:0;border-bottom:1px solid #e2dbd1;border-radius:0;box-shadow:none;align-content:start}
.sp-site .sp3.sp3-distinct .sp-prt2-group__icon{grid-column:1;grid-row:1/5;width:62px;height:62px;margin:0;background:#eae5df!important;border-radius:16px;color:#2c98a3}
.sp-site .sp3.sp3-distinct .sp-prt2-group:nth-child(2n) .sp-prt2-group__icon{background:#ebe6df!important;color:#2c98a3}
.sp-site .sp3.sp3-distinct .sp-prt2-group>:not(.sp-prt2-group__icon){grid-column:2}
.sp-site .sp3.sp3-distinct .sp-prt2-group>i{display:none}
.sp-site .sp3.sp3-distinct .sp-prt2-group>span:not(.sp-prt2-group__icon){font-size:12px;color:#2c98a3}
.sp-site .sp3.sp3-distinct .sp-prt2-group h3{margin:0 0 8px}.sp-site .sp3.sp3-distinct .sp-prt2-group p{margin:0 0 10px;font-size:17px!important}
.sp-site .sp3.sp3-distinct .sp-prt2-group__cta{font-size:16px}
.sp-site .sp3.sp3-distinct .sp-prt2-group:is(:hover,:focus-visible){background:#edf5f6!important;transform:translateX(4px);box-shadow:none}
.sp-site .sp3.sp3-distinct .sp-prt2-identify{background:#1f2e30!important;padding:36px 0}
.sp-site .sp3.sp3-distinct .sp-prt2-identify__panel{padding:0;background:none!important;border:0;box-shadow:none}
.sp-site .sp3.sp3-distinct .sp-prt2-identify :is(h2,strong,small){color:#ffffff!important}
.sp-site .sp3.sp3-distinct .sp-prt2-old{background:#ebe6df!important;padding:38px 0}
.sp-site .sp3.sp3-distinct .sp-prt2-materials__panel{background:#e4efee!important;border-radius:20px;padding:32px}
/* BUSINESS: a wide illustrated feature, operational process, then a network of links. */
.sp-site .sp3.sp3-distinct .sp-b2b2-hero{background:radial-gradient(ellipse at 80% 10%,#457c81,transparent 55%),#1f2e30!important}
.sp-site .sp3.sp3-distinct .sp-b2b2-hero__copy :is(h1,p){color:#ffffff!important}
.sp-site .sp3.sp3-distinct .sp-b2b2-hero h1 em{-webkit-text-fill-color:#e7d8c5;color:#e7d8c5}
.sp-site .sp3.sp3-distinct .sp-b2b2-console{background:#ffffffd0!important}
.sp-site .sp3.sp3-distinct .sp-b2b2-for{background:#e2eef0!important;padding:44px 0}
.sp-site .sp3.sp3-distinct .sp-b2b2-for__grid{grid-template-columns:1.3fr 1fr;gap:20px}
.sp-site .sp3.sp3-distinct .sp-b2b2-for-card{background:#f6efe5!important;border-radius:20px;padding:28px}
.sp-site .sp3.sp3-distinct .sp-b2b2-for-card--feature{grid-column:1;grid-row:span 2;background:#eae5de!important;min-height:380px}
.sp-site .sp3.sp3-distinct .sp-b2b2-for-card--pink{background:#ebe6df!important}.sp-site .sp3.sp3-distinct .sp-b2b2-for-card--violet{background:#e8f1ee!important}.sp-site .sp3.sp3-distinct .sp-b2b2-for-card--wide{grid-column:1/-1;background:#edf5f6!important;min-height:0}
.sp-site .sp3.sp3-distinct .sp-b2b2-for-card__chips span{font-size:13px;background:#ffffff80!important;border:1px solid #ffffffcc}
.sp-site .sp3.sp3-distinct .sp-b2b2-process{background:#1f2e30!important;padding:40px 0}
.sp-site .sp3.sp3-distinct .sp-b2b2-process__panel{padding:0;background:none!important;border:0;box-shadow:none;grid-template-columns:.9fr 1.1fr;gap:44px}
.sp-site .sp3.sp3-distinct .sp-b2b2-process :is(h2,p,strong,small){color:#ffffff!important}
.sp-site .sp3.sp3-distinct .sp-b2b2-process__steps li{background:#ffffff10!important;border:1px solid #ffffff30;backdrop-filter:blur(16px);padding:20px}
.sp-site .sp3.sp3-distinct .sp-b2b2-hub{background:#ebe6df!important;padding:40px 0}
/* ABOUT: magazine-style introduction and a timeline, not a service grid. */
.sp-site .sp3.sp3-distinct .sp-about2-hero{background:radial-gradient(ellipse at 85% 20%,#caac9366,transparent 50%),#edf5f6!important}
.sp-site .sp3.sp3-distinct .sp-about2-story{background:#e2eef0!important;padding:44px 0}
.sp-site .sp3.sp3-distinct .sp-about2-story__grid{grid-template-columns:1fr 1fr;gap:60px}
.sp-site .sp3.sp3-distinct .sp-about2-story__principles article{background:none!important;border:0;border-bottom:1px solid #e2dbd1;border-radius:0;box-shadow:none;padding:20px 0}
.sp-site .sp3.sp3-distinct .sp-about2-timeline{background:#1f2e30!important;padding:42px 0}
.sp-site .sp3.sp3-distinct .sp-about2-timeline__panel{background:none!important;border:0;box-shadow:none;padding:0}
.sp-site .sp3.sp3-distinct .sp-about2-timeline :is(h2,p,strong,small){color:#ffffff!important}
.sp-site .sp3.sp3-distinct .sp-about2-timeline__items article{background:#ffffff10!important;border:1px solid #ffffff35;backdrop-filter:blur(16px);border-radius:18px;padding:28px}
.sp-site .sp3.sp3-distinct .sp-about2-network{background:#ebe6df!important;padding:40px 0}
.sp-site .sp3.sp3-distinct .sp-about2-network__grid{gap:20px}
.sp-site .sp3.sp3-distinct .sp-about2-network__grid>a{background:#ffffff99!important;backdrop-filter:blur(18px);border:1px solid #ffffff;border-radius:16px;padding:26px}
.sp-site .sp3.sp3-distinct .sp-about2-details{padding:36px 0;background:#e2eef0!important}
/* BRAND PAGES: a shared reading hierarchy, three deliberately different scope layouts. */
.sp-site .sp3.sp3-distinct .sp-hp2-hero{background:radial-gradient(ellipse at 85% 0%,#2c98a399,transparent 55%),#1f2e30!important}
.sp-site .sp3.sp3-distinct .sp-hp2-hero__copy :is(h1,p){color:#ffffff!important}
.sp-site .sp3.sp3-distinct .sp-hp2-hero h1 em{-webkit-text-fill-color:#e7d8c5;color:#e7d8c5}
.sp-site .sp3.sp3-distinct .sp-hp2-partner{background:#ffffffd9!important}
.sp-site .sp3.sp3-distinct .sp-hp2-scope__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 32px}
.sp-site .sp3.sp3-distinct .sp-hp2-scope-card{grid-column:auto;grid-row:auto;min-height:0;background:none!important;border:0;border-bottom:1px solid #e2dbd1;border-radius:0;box-shadow:none;padding:24px 0;display:grid;grid-template-columns:62px minmax(0,1fr);column-gap:20px}
.sp-site .sp3.sp3-distinct .sp-hp2-scope-card__icon{grid-column:1;grid-row:1/5;margin:0;width:58px;height:58px;background:#e3eff1!important;color:#2c98a3}
.sp-site .sp3.sp3-distinct .sp-hp2-scope-card>:not(.sp-hp2-scope-card__icon){grid-column:2}
.sp-site .sp3.sp3-distinct .sp-hp2-scope-card>i{display:none}
.sp-site .sp3.sp3-distinct .sp-canon2-hero{background:radial-gradient(ellipse at 80% 10%,#e5c38988,transparent 55%),#ebe6df!important}
.sp-site .sp3.sp3-distinct .sp-canon2-scope__grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.sp-site .sp3.sp3-distinct .sp-canon2-scope-card{grid-column:auto;grid-row:auto;min-height:240px;background:#edf5f6!important;padding:26px;border-radius:20px}
.sp-site .sp3.sp3-distinct .sp-canon2-scope-card:nth-child(2n){background:#ebe6df!important}
.sp-site .sp3.sp3-distinct .sp-canon2-scope-card--feature{background:#1f2e30!important}
.sp-site .sp3.sp3-distinct .sp-canon2-scope-card--feature :is(h3,p){color:#ffffff!important}
.sp-site .sp3.sp3-distinct .sp-canon2-scope-card--feature .sp-canon2-scope-card__icon{background:#ffffff20!important;color:#e8dac7}
.sp-site .sp3.sp3-distinct .sp-epson3-hero{background:radial-gradient(ellipse at 85% 0%,#3e6e73aa,transparent 55%),#1f2e30!important}
.sp-site .sp3.sp3-distinct .sp-epson3-hero__copy :is(h1,p){color:#ffffff!important}
.sp-site .sp3.sp3-distinct .sp-epson3-hero h1 em{-webkit-text-fill-color:#ecd1a6;color:#ecd1a6}
.sp-site .sp3.sp3-distinct .sp-epson3-visual__frame{background:#ffffff88!important;border:1px solid #ffffff99;backdrop-filter:blur(20px);box-shadow:0 22px 44px #00000033}
.sp-site .sp3.sp3-distinct .sp-epson3-scope__grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.sp-site .sp3.sp3-distinct .sp-epson3-card{grid-column:auto;grid-row:auto;min-height:0;border-radius:18px;background:#edf5f6!important;padding:26px}
.sp-site .sp3.sp3-distinct .sp-epson3-card--feature{grid-column:1/-1;background:#ebe6df!important;display:grid;grid-template-columns:72px 1fr 1.3fr;gap:20px;align-items:center;padding:30px}
.sp-site .sp3.sp3-distinct .sp-epson3-card--feature h3{margin:0}.sp-site .sp3.sp3-distinct .sp-epson3-card--feature p{margin:0}.sp-site .sp3.sp3-distinct .sp-epson3-card--feature>span{display:none}
.sp-site .sp3.sp3-distinct .sp-epson3-card--wide{grid-column:span 2;background:#eae6e0!important}
.sp-site .sp3.sp3-distinct :is(.sp-hp2-symptoms,.sp-canon2-symptoms,.sp-epson3-symptoms){padding:36px 0;background:#ebe6df!important}
.sp-site .sp3.sp3-distinct :is(.sp-hp2-faq,.sp-canon2-faq,.sp-epson3-faq){background:#e2eef0!important;padding:36px 0}
.sp-site .sp3.sp3-distinct details{padding:18px 22px;background:#edf5f6!important;border:1px solid #e2dbd1;border-radius:12px;margin-bottom:12px}
.sp-site .sp3.sp3-distinct summary{font-size:18px!important;line-height:1.5!important;color:#1f2e30}
.sp-site .sp3.sp3-distinct details[open]{background:#ebe6df!important}
.sp-site .sp3.sp3-distinct [class$=cta__panel]{background:#1f2e30!important;padding:32px 36px;border:0;box-shadow:none;border-radius:22px}
.sp-site .sp3.sp3-distinct [class$=cta__panel] :is(h2,p){color:#ffffff!important}
.sp-site .sp3.sp3-distinct [class$=cta__phones] a{font-size:20px!important;color:#ffffff!important;line-height:1.5;display:block}
/* BLOG: feature story + a magazine list. Real post imagery remains prominent. */
.sp-site .sp3-subpage.sp-kb2 .sp-kb2-hero{background:radial-gradient(ellipse at 85% 0%,#c4a08266,transparent 50%),#f6efe5!important}
.sp-site .sp3-subpage.sp-kb2 .sp-kb2-searchbox{background:#ffffff90!important;backdrop-filter:blur(22px);border:1px solid #ffffff!important;box-shadow:0 20px 40px #1f2e301a!important}
.sp-site .sp3-subpage.sp-kb2 .sp-kb2-topics{padding:26px 0!important;background:#e2eef0!important}
.sp-site .sp3-subpage.sp-kb2 .sp-kb2-topics__grid{gap:0!important;border-block:1px solid #e2dbd1}
.sp-site .sp3-subpage.sp-kb2 .sp-kb2-topic{background:none!important;border:0;border-right:1px solid #e2dbd1;border-radius:0;padding:20px!important;min-height:0;box-shadow:none}
.sp-site .sp3-subpage.sp-kb2 .sp-kb2-topic:last-child{border-right:0}
.sp-site .sp3-subpage.sp-kb2 .sp-kb2-posts__grid{display:grid;grid-template-columns:1.1fr 1fr!important;gap:24px!important;align-items:start}
.sp-site .sp3-subpage.sp-kb2 .sp-kb2-card{display:grid;grid-template-columns:160px minmax(0,1fr);min-height:0;padding:0;background:#e2eef0!important;box-shadow:none!important;border:0;border-bottom:1px solid #e2dbd1;border-radius:0;overflow:visible}
.sp-site .sp3-subpage.sp-kb2 .sp-kb2-card:first-child{grid-column:1;grid-row:span 3;display:flex;background:#1f2e30!important;border-radius:20px;overflow:hidden;border:0}
.sp-site .sp3-subpage.sp-kb2 .sp-kb2-card:not(:first-child){grid-column:2}
.sp-site .sp3-subpage.sp-kb2 .sp-kb2-card:before{display:none}
.sp-site .sp3-subpage.sp-kb2 .sp-kb2-card__image{height:165px;min-height:0;border-radius:12px;overflow:hidden}
.sp-site .sp3-subpage.sp-kb2 .sp-kb2-card__image img{width:100%;height:100%;object-fit:cover}
.sp-site .sp3-subpage.sp-kb2 .sp-kb2-card:first-child .sp-kb2-card__image{height:320px;border-radius:0}
.sp-site .sp3-subpage.sp-kb2 .sp-kb2-card__content{padding:0 0 22px 20px!important}
.sp-site .sp3-subpage.sp-kb2 .sp-kb2-card:first-child .sp-kb2-card__content{padding:28px!important}
.sp-site .sp3-subpage.sp-kb2 .sp-kb2-card:first-child :is(h3,h3 a,p,.sp-kb2-card__more,.sp-kb2-card__topline){color:#ffffff!important}
.sp-site .sp3-subpage.sp-kb2 .sp-kb2-card h3{font-size:23px!important}.sp-site .sp3-subpage.sp-kb2 .sp-kb2-card:first-child h3{font-size:29px!important}
.sp-site .sp3-subpage.sp-kb2 .sp-kb2-card:hover{background:#e2eef0!important;transform:translateY(-3px)}
.sp-site .sp3-subpage.sp-kb2 .sp-kb2-card:first-child:hover{background:#224c50!important}
.sp-site .sp3-article-page .sp-article-hero{background:#1f2e30!important}
.sp-site .sp3-article-page .sp-article-hero__copy :is(h1,p,.sp-article__back){color:#ffffff!important}
.sp-site .sp3-article-page .sp-article-hero__media{border-radius:20px;overflow:hidden;background:#ffffff18!important;box-shadow:0 20px 40px #00000022}
.sp-site .sp3-article-page .sp-article-hero__media img{width:100%;height:100%;object-fit:cover}
.sp-site .sp3-article-page .sp-article__aside-card{background:#ebe6df!important}
.sp-site .sp3-article-page .sp-article__content{max-width:850px}
.sp-site .sp3-article-page .sp-article__content h2{margin-top:32px!important}
.sp-site .sp3-article-page .sp-article__content p{margin-bottom:20px!important}
.sp-site .sp3-article-page .sp-article-related{background:#edf5f6!important}
/* CONTACT & INTAKE: clear data and a focused form, separate from editorial pages. */
.sp-site .sp-contact2 .sp3-page-hero{background:radial-gradient(ellipse at 85% 10%,#e4cfa566,transparent 55%),#ebe6df!important}
.sp-site .sp-request2 .sp3-page-hero{background:radial-gradient(ellipse at 80% 0%,#c5a18388,transparent 55%),#edf5f6!important}
.sp-site .sp-contact2 .sp3-contact-direct-grid a:nth-child(1){background:#1f2e30!important;color:#ffffff}
.sp-site .sp-contact2 .sp3-contact-direct-grid a:nth-child(1) span{color:#e8dac7}
.sp-site .sp-contact2 .sp3-contact-direct-grid a:nth-child(2){background:#268c96!important;color:#ffffff}
.sp-site .sp-contact2 .sp3-contact-direct-grid a:nth-child(2) span{color:#ffffff}
.sp-site .sp-contact2 .sp3-contact-direct-grid a:nth-child(3){background:#ebe6df!important}
.sp-site .sp-request2 .sp-request2-form-intro{border-left:3px solid #2c98a3;padding-left:24px}
.sp-site .sp-contact2 .sp-contact2-form-panel{background:#ffffffb0!important;box-shadow:0 18px 40px #1f2e3014!important;border:1px solid #e2dbd1}
.sp-site .sp-request2 .sp-request2-form-card{background:#edf5f6!important;box-shadow:0 18px 40px #1f2e3014!important}
/* Home receives a stronger depth treatment without copying subpage layouts. */
.sp3-hero{background:radial-gradient(ellipse at 86% 15%,#cbac9355,transparent 45%),#edf5f6!important}
.sp3-hero-art:before{background:radial-gradient(circle at 80% 0%,#cbac93,transparent 60%),#e9e3db!important;box-shadow:0 22px 44px #1f2e301a}
.sp3 .sp3-service{box-shadow:0 16px 34px #1f2e3014}
.sp3 .sp3-service-dark{background:radial-gradient(ellipse at 90% 0%,#49808580,transparent 65%),#1f2e30!important}
.sp3 .sp3-service-teal{background:radial-gradient(ellipse at 90% 0%,#d4c1a980,transparent 65%),#268c96!important}
.sp3 .sp3-service-light{background:#ebe6df!important}
.sp3 .sp3-steps-premium li:nth-child(1){background:#ebe6df!important}.sp3 .sp3-steps-premium li:nth-child(2){background:#eae5de!important}
@media(max-width:1100px){.sp-site .sp3.sp3-distinct [class*=hero__grid]{grid-template-columns:1fr;gap:32px}.sp-site .sp3.sp3-distinct .sp-srv2-brands__grid,.sp-site .sp3.sp3-distinct .sp-plt2-use__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sp-site .sp3.sp3-distinct .sp-srv2-bento{grid-template-columns:repeat(2,minmax(0,1fr))}.sp-site .sp3.sp3-distinct .sp-srv2-bento__card--feature{grid-row:span 2}.sp-site .sp3.sp3-distinct .sp-srv2-bento__card--mint{grid-column:auto}.sp-site .sp3.sp3-distinct .sp-b2b2-process__panel,.sp-site .sp3.sp3-distinct .sp-about2-story__grid{grid-template-columns:1fr;gap:28px}.sp-site .sp3-subpage.sp-kb2 .sp-kb2-posts__grid{grid-template-columns:1fr 1fr!important}.sp-site .sp3-subpage.sp-kb2 .sp-kb2-card{grid-template-columns:1fr}.sp-site .sp3-subpage.sp-kb2 .sp-kb2-card__content{padding:18px 0!important}.sp-site .sp3-subpage.sp-kb2 .sp-kb2-card__image{height:190px}}
@media(max-width:760px){.sp-site .sp3.sp3-distinct [class$=hero]{padding:36px 0}.sp-site .sp3.sp3-distinct h1{font-size:38px!important}.sp-site .sp3.sp3-distinct :is(.sp-srv2-bento,.sp-srv2-brands__grid,.sp-plt2-use__grid,.sp-plt2-real__panel,.sp-prt2-groups__layout,.sp-b2b2-for__grid,.sp-hp2-scope__grid,.sp-canon2-scope__grid,.sp-epson3-scope__grid){grid-template-columns:1fr}.sp-site .sp3.sp3-distinct .sp-srv2-bento__card,.sp-site .sp3.sp3-distinct .sp-b2b2-for-card,.sp-site .sp3.sp3-distinct .sp-epson3-card{grid-column:auto!important;grid-row:auto!important}.sp-site .sp3.sp3-distinct .sp-plt2-use-card{border-right:0;border-bottom:1px solid #e2dbd1}.sp-site .sp3.sp3-distinct .sp-epson3-card--feature{display:block}.sp-site .sp3.sp3-distinct .sp-epson3-card--feature h3{margin:16px 0}.sp-site .sp3.sp3-distinct .sp-prt2-group{grid-template-columns:52px minmax(0,1fr);gap:4px 16px}.sp-site .sp3.sp3-distinct .sp-prt2-group__icon{width:48px;height:48px}.sp-site .sp3.sp3-distinct [class$=cta__panel]{padding:26px 24px}.sp-site .sp3-subpage.sp-kb2 .sp-kb2-posts__grid{grid-template-columns:1fr!important}.sp-site .sp3-subpage.sp-kb2 .sp-kb2-card:first-child,.sp-site .sp3-subpage.sp-kb2 .sp-kb2-card:not(:first-child){grid-column:1;grid-row:auto}.sp-site .sp3-subpage.sp-kb2 .sp-kb2-card:first-child .sp-kb2-card__image{height:240px}.sp-site .sp3.sp3-distinct [class$=section-head]{flex-direction:column;align-items:start}.sp-site .sp3.sp3-distinct .sp-plt2-floating{display:none}}
@media(prefers-reduced-motion:reduce){.sp-site .sp3.sp3-distinct *,.sp-site .sp3.sp3-distinct :before,.sp-site .sp3.sp3-distinct :after{animation:none!important;transition:none!important;transform:none!important}.sp-site .sp3-subpage.sp-kb2 .sp-kb2-card:hover{transform:none}}
.sp4-contact-address{position:relative;min-height:350px;border-radius:26px;overflow:hidden;background:radial-gradient(circle at 75% 5%,#d2bea4,transparent 60%),#1f2e30!important;border:1px solid #d9cfc3;display:grid;place-items:center;padding:26px;box-shadow:0 22px 44px #1f2e3026}
.sp4-address-lines{position:absolute;inset:-60px;background:repeating-linear-gradient(35deg,transparent 0 80px,#e3d8c93d 81px 87px,transparent 88px 120px),repeating-linear-gradient(-40deg,transparent 0 105px,#ffffff25 106px 112px,transparent 113px 140px)!important;transform:rotate(-10deg)}
.sp4-address-glass{position:relative;display:flex;flex-direction:column;padding:28px 34px;background:#ffffffd9!important;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid #ffffff;box-shadow:0 16px 36px #1f2e3030;border-radius:18px;width:100%;max-width:350px}
.sp4-address-glass>span,.sp4-intake-brief>span{font-size:12px;letter-spacing:1.3px;color:#2c98a3;margin-bottom:14px}
.sp4-address-glass>strong{font-size:30px;color:#1f2e30;line-height:1.2;margin-bottom:12px}
.sp-site .sp4-address-glass p{font-size:17px;margin:0 0 10px;color:#1f2e30}
.sp4-address-glass small{font-size:14px;color:#577275}.sp4-address-glass a{color:#2c98a3!important;font-size:16px;font-weight:600;margin-top:20px}
.sp4-intake-brief{padding:28px;background:radial-gradient(ellipse at 100% 0%,#46878d99,transparent 60%),#1f2e30!important;border-radius:24px;box-shadow:0 22px 44px #1f2e3026}
.sp4-intake-brief>span{display:block;color:#e8dac7}
.sp4-intake-brief ol{list-style:none;padding:0;margin:0;display:grid;gap:12px}
.sp4-intake-brief li{display:flex;gap:18px;align-items:center;padding:18px;background:#ffffff12!important;border:1px solid #ffffff30;border-radius:12px;backdrop-filter:blur(14px)}
.sp4-intake-brief b{font-size:26px;font-weight:300;color:#e8dac7}.sp4-intake-brief strong{display:block;color:#ffffff;font-size:20px}.sp-site .sp3-subpage .sp4-intake-brief small{display:block;color:#eae4dc!important;font-size:14px!important}

.sp-site .sp3.sp3-distinct p:not(.spv2g-kicker){font-size:18px!important;line-height:1.65!important}
.sp-site .sp3.sp3-distinct .sp-srv2-hero__visual{min-height:0;height:auto;display:flex;flex-direction:column;align-self:center;padding:18px;border-radius:28px}
.sp-site .sp3.sp3-distinct .sp-srv2-device{position:static;transform:none;width:100%;height:auto;inset:auto}
.sp-site .sp3.sp3-distinct .sp-srv2-device img{width:100%;height:280px;max-height:280px;object-fit:cover;border-radius:18px;mix-blend-mode:normal}
.sp-site .sp3.sp3-distinct .sp-srv2-console{position:relative;inset:auto;width:calc(100% - 24px);margin:-38px auto 0;min-height:0;background:#ffffffa8!important}
.sp-site .sp3-subpage.sp-kb2 .sp-kb2-topic p,.sp-site .sp3-subpage.sp-kb2 .sp-kb2-card p{font-size:17px!important;line-height:1.6!important}
.sp-site .sp3-subpage.sp-kb2 .sp-kb2-topic{border-radius:0!important;min-height:0!important}
.sp-site .sp3-subpage.sp-kb2 .sp-kb2-card:not(:first-child){border-radius:0!important;background:#e2eef0!important;border:0!important;border-bottom:1px solid #e2dbd1!important}
.sp-site .sp3-subpage.sp-kb2 .sp-kb2-searchbox{background:#ffffffa6!important}
.sp-site .sp3-subpage.sp-kb2 .sp-kb2-searchbox h2{font-size:28px!important;margin-bottom:20px!important}
.sp-site .sp3-subpage.sp-kb2 .sp-kb2-search{display:flex;align-items:stretch;gap:10px}
.sp-site .sp3-subpage.sp-kb2 .sp-kb2-search__field{flex:1;min-width:0}
.sp-site .sp3-subpage.sp-kb2 .sp-kb2-search button{flex:0 0 auto;width:auto;min-width:100px}
.screen-reader-text{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
@media(max-width:760px){.sp-site .sp3-subpage.sp-kb2 .sp-kb2-search{flex-direction:column}.sp-site .sp3.sp3-distinct .sp-srv2-device img{height:210px;max-height:210px}.sp-site .sp3.sp3-distinct .sp-srv2-console{width:100%;margin:-24px auto 0}.sp-site .sp3.sp3-distinct .sp-srv2-console__items article{padding:14px}}

.sp-site .sp3.sp3-distinct :is(.sp-plt2-hero,.sp-b2b2-hero,.sp-hp2-hero,.sp-epson3-hero) [class*=hero__meta] span,.sp-site .sp3.sp3-distinct .sp-epson3-hero .sp-epson3-meta span{background:#ffffff15!important;color:#f0eae1!important;border-color:#ffffff45}
.sp-site .sp3.sp3-distinct .sp-plt2-floating--b{top:-16px;bottom:auto;right:16px}
.sp4-device-blueprint{display:block;width:100%;height:100%;min-height:300px;color:#e8dac7}
.sp-site .sp3.sp3-distinct .sp-epson3-visual__frame{background:radial-gradient(circle at 80% 0%,#95765c,transparent 70%),#214c50!important}
.sp-site .sp3.sp3-distinct .sp-epson3-visual__veil{background:none!important}
.sp-site .sp3.sp3-distinct .sp-epson3-visual__frame>.sp4-device-blueprint{position:absolute;inset:0;width:100%;height:100%;padding:50px 24px 80px}
.sp-site .sp3.sp3-distinct .sp-canon2-console__photo{background:radial-gradient(circle at 90% 0%,#947155,transparent 65%),#214c50!important}
.sp-site .sp3.sp3-distinct .sp-canon2-console__photo .sp4-device-blueprint{height:330px}
.sp-site .sp3-subpage.sp-kb2 .sp-kb2-card__more span{color:inherit!important}
.sp-site .sp-menu-toggle{color:#1f2e30!important;min-height:44px;padding:10px;border:1px solid #e2dbd1;border-radius:8px;background:#f6efe5}
.sp-site .sp-menu-toggle__bars i{background:#1f2e30!important}

/* Explicit placement prevents legacy grid columns from widening this section. */
.sp-site .sp3.sp3-distinct .sp-b2b2-for__grid{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr)!important}
.sp-site .sp3.sp3-distinct .sp-b2b2-for-card--feature{grid-column:1!important;grid-row:1 / span 2!important}
.sp-site .sp3.sp3-distinct .sp-b2b2-for-card--pink{grid-column:2!important;grid-row:1!important}
.sp-site .sp3.sp3-distinct .sp-b2b2-for-card--violet{grid-column:2!important;grid-row:2!important}
.sp-site .sp3.sp3-distinct .sp-b2b2-for-card--wide{grid-column:1 / -1!important;grid-row:3!important}
.sp-site .sp3.sp3-distinct .sp-b2b2-for-card__layout--feature{grid-template-columns:minmax(0,1fr) minmax(160px,.8fr)!important}
@media(max-width:760px){
.sp-site .sp3.sp3-distinct .sp-b2b2-for__grid{grid-template-columns:minmax(0,1fr)!important}
.sp-site .sp3.sp3-distinct .sp-b2b2-for-card{grid-column:1!important;grid-row:auto!important}
.sp-site .sp3.sp3-distinct .sp-b2b2-for-card__layout--feature{grid-template-columns:minmax(0,1fr)!important}
}
/* 4.1: cooler surfaces, legible glass panels and unclipped catalogue. */
.sp-site{background:#eee2d1!important}
.sp-site .sp-main,.sp-site .sp3,.sp-site .sp3.sp3-distinct{background:#eee2d1!important}
.sp-site .sp-navbar{background:rgba(241,237,232,.96)!important}
.sp-site .sp-nav{gap:18px!important}.sp-site .sp-nav>a:not(.sp-btn){font-size:16px!important;white-space:nowrap}
.sp-site .sp-brand{flex:0 0 190px!important;width:190px!important}
.sp41-plotter{width:100%;margin:0;align-self:center;padding:20px;border:1px solid #ffffff80;border-radius:26px;background:linear-gradient(135deg,#e4dbd0cc,#e0eeee80);box-shadow:inset 0 1px 0 #ffffff99,0 20px 44px #1f2e3018;backdrop-filter:blur(18px);overflow:hidden}
.sp41-plotter img{display:block;width:100%;height:auto;max-height:470px;object-fit:contain;mix-blend-mode:multiply;filter:none!important;transform:none!important}
.sp41-plotter--mirror img{transform:scaleX(-1)!important}
.sp-site .sp3-image{background:#e8e1d7!important}.sp-site .sp3-image img{object-fit:contain!important;mix-blend-mode:multiply;max-height:500px!important}
.sp-site .sp3.sp3-distinct .sp-prt2-hero{background:radial-gradient(ellipse at 80% 20%,#cbab9166,transparent 55%),#efeae4!important}
.sp-site .sp3.sp3-distinct .sp-prt2-hero__orb--violet{background:#c7a88f!important}
.sp-site .sp3.sp3-distinct :is(.sp-prt2-groups,.sp-srv2-scope,.sp-srv2-brands,.sp-plt2-use,.sp-b2b2-for,.sp-hp2-scope,.sp-canon2-scope,.sp-epson3-scope){background:#eee2d1!important}
.sp-site .sp3.sp3-distinct .sp-prt2-groups__layout{grid-auto-rows:auto!important;align-items:stretch!important}
.sp-site .sp3.sp3-distinct .sp-prt2-group{height:auto!important;max-height:none!important;overflow:visible!important;grid-template-rows:auto!important;padding:28px 16px!important;min-height:230px!important;align-content:start!important}
.sp-site .sp3.sp3-distinct .sp-prt2-group__cta{position:static!important;display:block!important;height:auto!important;overflow:visible!important;margin-top:6px!important}
.sp-site .sp3.sp3-distinct .sp-prt2-group:nth-child(2n) .sp-prt2-group__icon{background:#e6ddd2!important;color:#2c98a3!important}
.sp-site .sp3.sp3-distinct .sp-prt2-identify{background:linear-gradient(125deg,#346165ed,#3b7277cf)!important}
.sp-site .sp3.sp3-distinct .sp-prt2-identify__intro{display:block!important;text-align:center!important;width:100%!important;max-width:none!important;grid-template-columns:1fr!important;margin:0 auto 26px!important}
.sp-site .sp3.sp3-distinct .sp-prt2-identify__intro h2{max-width:none!important;margin:10px auto!important}
.sp-site .sp3.sp3-distinct .sp-prt2-identify__intro p{max-width:900px!important;margin:8px auto!important;color:#edf7f8!important}
.sp-site .sp3.sp3-distinct .sp-prt2-identify__intro .spv2g-kicker{color:#f0e1cd!important}
.sp-site .sp3.sp3-distinct .sp-prt2-materials{background:#e9e2d9!important}
.sp-site .sp3.sp3-distinct .sp-prt2-materials__panel{display:grid!important;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)!important;gap:28px!important;background:linear-gradient(120deg,#e5ded5,#f0ece7)!important;min-height:340px!important}
.sp-site .sp3.sp3-distinct .sp-prt2-materials__photo{position:static!important;inset:auto!important;grid-column:2;grid-row:1;opacity:1!important;width:100%!important;height:auto!important;align-self:center}
.sp-site .sp3.sp3-distinct .sp-prt2-materials__photo img{object-fit:contain!important;width:100%!important;height:auto!important;transform:none!important;mix-blend-mode:multiply}
.sp-site .sp3.sp3-distinct .sp-prt2-materials__veil,.sp-site .sp3.sp3-distinct .sp-prt2-materials__badge{display:none!important}
.sp-site .sp3.sp3-distinct .sp-prt2-materials__content{grid-column:1;grid-row:1;width:auto!important;max-width:none!important;padding:0!important;align-self:center}
.sp-site .sp3.sp3-distinct .sp-prt2-materials__content h2{color:#1f2e30!important}.sp-site .sp3.sp3-distinct .sp-prt2-materials__content p{color:#40666a!important}
/* Dark glass keeps the depth without the solid black slab. */
.sp-site .sp3.sp3-distinct [class$=cta__panel],.sp-site .sp-kb2-boundary__panel,.sp-site .sp3-contact-band,.sp-site .sp3-cta,.sp-site .sp3-final{background:radial-gradient(ellipse at 90% 0%,#d4c3ac52,transparent 60%),linear-gradient(125deg,rgba(87,58,40,.88),rgba(117,79,55,.78))!important;border:1px solid #ffffff66!important;box-shadow:inset 0 1px 0 #ffffff40,0 16px 38px #21464a20!important;backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px)}
.sp-site .sp-kb2-boundary__panel{display:block!important;padding:28px 32px!important}
.sp-site .sp-kb2-boundary__panel h2{font-size:clamp(21px,1.65vw,26px)!important;line-height:1.35!important;color:#ffffff!important;max-width:none!important;letter-spacing:-.5px}
.sp-site .sp-kb2-boundary__panel p{color:#f5f0ea!important;max-width:none!important;font-size:17px!important}
.sp-site .sp-kb2-boundary__panel .spv2g-btn{margin-top:14px}
.sp-site .sp41-map-section{padding:40px 0;background:#e7e1d9}.sp41-map-heading{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin-bottom:22px}.sp41-map-heading h2{margin:0;font-size:30px}.sp41-map-heading p{margin:0}.sp41-map-heading a{margin-left:auto;color:#2c98a3;font-weight:700}.sp41-map{display:block;width:100%!important;height:400px!important;border:1px solid #c6b3a4;border-radius:20px;background:#efeae4}
@media(max-width:1150px){.sp-site .sp-navbar__inner{flex-wrap:wrap}.sp-site .sp-nav{gap:12px!important}.sp-site .sp-nav>a:not(.sp-btn){font-size:15px!important}}
@media(max-width:760px){.sp-site .sp3.sp3-distinct .sp-prt2-materials__panel{grid-template-columns:1fr!important}.sp-site .sp3.sp3-distinct .sp-prt2-materials__content{grid-column:1;grid-row:1}.sp-site .sp3.sp3-distinct .sp-prt2-materials__photo{grid-column:1;grid-row:2}.sp41-plotter{padding:14px}.sp-site .sp-nav{background:#eee2d1!important}.sp41-map-heading{display:block}.sp41-map-heading>*{margin-bottom:12px!important}.sp41-map{height:320px!important}.sp-site .sp3.sp3-distinct .sp-prt2-group{min-height:0!important}.sp-site .sp-kb2-boundary__panel h2{white-space:normal!important}}
.sp-site .sp3-contact-panel{background:radial-gradient(ellipse at 90% 0%,#d4c3ac52,transparent 60%),linear-gradient(125deg,#285357e0,#376f75c7)!important;border:1px solid #ffffff66!important;backdrop-filter:blur(22px);box-shadow:inset 0 1px 0 #ffffff40,0 16px 38px #21464a20!important}
.sp-site .sp3.sp3-distinct .sp-canon2-hero{background:radial-gradient(ellipse at 80% 10%,#cfbba166,transparent 55%),#ebe6df!important}
.sp-site .sp3.sp3-distinct .sp-prt2-materials__photo{display:block!important;filter:none!important;clip-path:none!important;mask:none!important;z-index:1!important}
.sp-site .sp3.sp3-distinct .sp-prt2-materials__photo img{display:block!important;filter:none!important;opacity:1!important}
.sp-site .sp3.sp3-distinct .sp-prt2-materials__photo{mix-blend-mode:multiply;background:transparent!important}
.sp-site .sp3-functional :is(.sp-request2-form-section,.sp-contact2-form-section){background:#eee2d1!important}
.sp-site .sp3-subpage .sp3-section-faq{background:#e8e1d8!important}
.sp-site .sp3-subpage :is(.sp-kb2-posts,.sp-kb2-topics,.sp-kb2-boundary){background:#eee2d1!important}

/* 4.2.1: restored colourful homepage hero, integrated with a glass caption. */
.sp-site .sp3-hero .sp3-hero-art{padding:0!important;isolation:isolate;border-radius:28px;background:linear-gradient(140deg,#144246,#1e484c);box-shadow:0 20px 44px #1b434726,inset 0 1px 0 #ffffff44;overflow:hidden}
.sp-site .sp3-hero .sp3-hero-art:before{inset:0!important;border-radius:28px!important;background:radial-gradient(ellipse at 0% 20%,#d7c3a855,transparent 65%),radial-gradient(ellipse at 100% 90%,#b89b8430,transparent 60%)!important;box-shadow:none!important;z-index:0}
.sp-site .sp3-hero .sp3-image{border-radius:28px 28px 0 0!important;background:#1f2e30!important;overflow:hidden;z-index:1}
.sp-site .sp3-hero .sp3-image img{width:100%;height:auto!important;aspect-ratio:1130/600!important;max-height:none!important;object-fit:cover!important;mix-blend-mode:normal!important;filter:none!important;mask-image:linear-gradient(to bottom,#000000 0%,#000000 84%,transparent 100%);-webkit-mask-image:linear-gradient(to bottom,#000000 0%,#000000 84%,transparent 100%)}
.sp-site .sp3-hero .sp3-image-caption{position:relative;z-index:2;margin:-22px 16px 16px!important;padding:18px 22px!important;background:#21464a99!important;border:1px solid #efe2d050!important;border-radius:14px!important;box-shadow:inset 0 1px 0 #ffffff20;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.sp-site .sp3-hero .sp3-image-caption span{color:#e8d7c1!important}.sp-site .sp3-hero .sp3-image-caption strong{color:#f1fafb!important}
@media(max-width:760px){.sp-site .sp3-hero .sp3-image-caption{margin:-12px 12px 12px!important;padding:16px!important}}

/* 4.2.2: clearer brand signature and larger product photograph. */
.sp-site .sp-navbar{background:linear-gradient(110deg,#f7fcfd 0%,#e8f5f6 65%,#ede4d9 100%)!important;border-bottom:2px solid #d0bda5!important;box-shadow:0 7px 20px #1f4d5217!important}
.sp-site .sp-navbar__inner{min-height:106px!important}
.sp-site .sp-brand{flex:0 0 280px!important;width:280px!important}
.sp-site .sp-brand__visual{width:280px!important;height:80px!important;background-size:contain!important;filter:none!important}
.sp-site .sp-footer__logo,.sp-site .sp-footer__logo>span{width:300px!important;height:85px!important;max-width:100%!important}
.sp-site .sp3-shop .sp3-feature-photo{height:360px!important;padding:6px 12px!important;overflow:hidden}
.sp-site .sp3-shop .sp3-feature-photo img{display:block;width:100%!important;max-width:none!important;height:100%!important;max-height:none!important;object-fit:contain!important;transform:scale(1.08);mix-blend-mode:multiply}
@media(max-width:1200px) and (min-width:1081px){.sp-site .sp-brand{flex-basis:245px!important;width:245px!important}.sp-site .sp-brand__visual{width:245px!important;height:72px!important}.sp-site .sp-nav{gap:10px!important}.sp-site .sp-nav>a:not(.sp-btn){font-size:14px!important}}
@media(max-width:760px){.sp-site .sp-navbar__inner{min-height:92px!important}.sp-site .sp-brand{flex-basis:250px!important;width:250px!important}.sp-site .sp-brand__visual{width:250px!important;height:74px!important}.sp-site .sp3-shop .sp3-feature-photo{height:260px!important;padding:0!important}}
@media(max-width:370px){.sp-site .sp-brand{flex-basis:220px!important;width:220px!important}.sp-site .sp-brand__visual{width:220px!important;height:68px!important}}
/* 4.2.3: dimensional teal shape behind the colourful homepage artwork. */
.sp-site .sp3-hero{overflow:hidden!important}
.sp-site .sp3-hero .sp3-hero-art{overflow:visible!important;margin:18px 12px 20px 0!important}
.sp-site .sp3-hero .sp3-hero-art:before{content:"";position:absolute;inset:28px -28px -20px 28px!important;z-index:-1!important;border-radius:42px 80px 28px 48px!important;background:linear-gradient(135deg,#d9c9b470,#bc937180 60%,#3f767b55)!important;transform:rotate(5deg) skewY(-2deg);border:1px solid #d5c2aa80;box-shadow:18px 22px 42px #3263681c,inset 0 1px 0 #fff9f080!important}
.sp-site .sp3-hero .sp3-hero-art:after{content:"";position:absolute;inset:-34px 30px -24px -38px;z-index:-2;border:1px solid #c19a7b45;border-radius:50%;background:radial-gradient(ellipse at 50% 35%,#d5c1a61f,transparent 68%);box-shadow:0 0 0 26px #bc937108;pointer-events:none}
@media(max-width:760px){.sp-site .sp3-hero .sp3-hero-art{margin:10px 8px 18px 0!important}.sp-site .sp3-hero .sp3-hero-art:before{inset:18px -14px -14px 20px!important;border-radius:30px 50px 24px 34px!important;transform:rotate(4deg)}.sp-site .sp3-hero .sp3-hero-art:after{inset:-22px 12px -18px -20px;box-shadow:0 0 0 16px #bc937108}}

/* 4.2.4: distinct cartridge cards and a fine border around the HP emblem. */
.sp-site .sp3-products a{background:linear-gradient(125deg,#f1f8fa,#f2eee9)!important;border:1px solid #c0ab9a!important;border-radius:14px!important;box-shadow:0 6px 16px #224c5012,inset 0 1px 0 #ffffffb0!important}
.sp-site .sp3-products a:nth-child(2){background:linear-gradient(125deg,#e8f4f6,#eae3d9)!important}
.sp-site .sp3-products a:nth-child(3){background:linear-gradient(125deg,#ece6dd,#dfd5c8)!important;border-color:#aa9686!important}
.sp-site .sp3-products a:is(:hover,:focus-visible){background:#e5d9ca!important;border-color:#2c98a3!important;box-shadow:0 12px 24px #224c5025!important;transform:translateY(-4px)}
.sp-site .sp-footer__hp-frame{display:block;position:relative;flex:0 0 64px;width:64px;height:40px;overflow:hidden;border:1px solid #d0c1ad6b;border-radius:7px;background:#448389}
.sp-site .sp-footer__hp-frame .sp-footer__hp-logo{position:absolute;left:-1px;top:-3px;width:72px!important;height:46px!important;max-width:none!important;max-height:none!important;padding:0!important;border:0!important;border-radius:0!important;background:none!important;object-fit:fill!important;box-shadow:none!important}

/* 4.2.5: service catalogue with real gaps and a clear contact group. */
.sp-site .sp3.sp3-distinct .sp-srv2-scope .sp-srv2-section-head{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr)!important;gap:36px!important}
.sp-site .sp3.sp3-distinct .sp-srv2-scope .sp-srv2-section-head>p{max-width:none!important;width:100%!important}
.sp-site .sp3.sp3-distinct .sp-srv2-bento{gap:22px!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;grid-auto-rows:auto!important}
.sp-site .sp3.sp3-distinct .sp-srv2-bento__card{margin:0!important;position:relative!important;top:auto!important;bottom:auto!important;transform:none!important;grid-column:auto!important;grid-row:auto!important;min-height:230px!important;overflow:hidden;box-shadow:0 9px 20px #204c5012!important;border:1px solid #c6b3a4!important}
.sp-site .sp3.sp3-distinct .sp-srv2-bento__card--feature{grid-column:1!important;grid-row:1 / span 2!important}
.sp-site .sp3.sp3-distinct .sp-srv2-bento__card--blue{background:linear-gradient(135deg,#e5dacc,#f2ece5)!important}
.sp-site .sp3.sp3-distinct .sp-srv2-bento__card--violet{background:linear-gradient(135deg,#e4dace,#f4efe9)!important}
.sp-site .sp3.sp3-distinct .sp-srv2-bento__card--cyan{background:linear-gradient(135deg,#946c4b,#2f7177)!important}
.sp-site .sp3.sp3-distinct .sp-srv2-bento__card--cyan :is(h3,p){color:#ffffff!important}
.sp-site .sp3.sp3-distinct .sp-srv2-bento__card--pink{background:linear-gradient(135deg,#dad1c5,#e0eee8)!important}
.sp-site .sp3.sp3-distinct .sp-srv2-bento__card--mint{grid-column:1 / -1!important;background:linear-gradient(110deg,#e5dcd0,#f2eee8)!important;min-height:150px!important}
.sp-site .sp3.sp3-distinct .sp-srv2-bento__card:not(.sp-srv2-bento__card--feature):after{content:"";position:absolute;right:-28px;bottom:-42px;width:150px;height:150px;border:18px solid #ffffff36;border-radius:50%;pointer-events:none}
.sp-site .sp3.sp3-distinct .sp-srv2-bento__card--violet:after{border-radius:24px!important;transform:rotate(25deg)}
.sp-site .sp3.sp3-distinct .sp-srv2-bento__card--pink:after{border-radius:15px!important;width:120px!important;height:100px!important;transform:rotate(-15deg)}
.sp-site .sp3.sp3-distinct .sp-srv2-bento__card--mint:after{width:230px!important;height:230px!important;border-width:1px!important;box-shadow:0 0 0 20px #ffffff24,0 0 0 40px #ffffff18}
.sp-site .sp3.sp3-distinct .sp-srv2-printers__grid{grid-template-columns:1fr!important;gap:24px!important}
.sp-site .sp3.sp3-distinct .sp-srv2-printers__copy h2{max-width:none!important}.sp-site .sp3.sp3-distinct .sp-srv2-printers__copy p{max-width:1050px!important}
.sp-site .sp3.sp3-distinct .sp-srv2-printers__facts{max-width:780px!important;width:100%!important}
.sp-site .sp3.sp3-distinct .sp-srv2-cta__panel{display:grid!important;grid-template-columns:minmax(0,1fr) 290px!important;gap:32px!important;align-items:center!important}
.sp-site .sp3.sp3-distinct .sp-srv2-cta__panel>div>.spv2g-btn{margin-top:18px!important}
.sp-site .sp3.sp3-distinct .sp-srv2-cta__phones{display:grid!important;gap:12px!important;width:100%!important}
.sp-site .sp3.sp3-distinct .sp-srv2-cta__phones a{display:block!important;padding:14px 20px!important;border:1px solid #fff6ea66!important;border-radius:16px!important;background:#ffffff15!important;backdrop-filter:blur(16px);text-decoration:none!important;transition:background .2s}
.sp-site .sp3.sp3-distinct .sp-srv2-cta__phones a span{display:block;font-size:13px!important;font-weight:500;color:#f0e6d9!important;margin-bottom:4px}
.sp-site .sp3.sp3-distinct .sp-srv2-cta__phones a strong{display:block;font-size:23px!important;color:#ffffff!important;white-space:nowrap}
.sp-site .sp3.sp3-distinct .sp-srv2-cta__phones a:hover{background:#ffffff30!important}
@media(max-width:760px){.sp-site .sp3.sp3-distinct .sp-srv2-scope .sp-srv2-section-head,.sp-site .sp3.sp3-distinct .sp-srv2-bento,.sp-site .sp3.sp3-distinct .sp-srv2-cta__panel{grid-template-columns:1fr!important}.sp-site .sp3.sp3-distinct .sp-srv2-bento__card{grid-column:1!important;grid-row:auto!important;min-height:0!important}.sp-site .sp3.sp3-distinct .sp-srv2-cta__actions{width:100%!important}}
/* 4.2.6: HP illustration, one teal surface without the extra pale frame. */
.sp-site .sp3.sp3-distinct .sp-hp2-hero .sp41-plotter{padding:0!important;border:0!important;border-radius:24px!important;background:linear-gradient(135deg,#e0d3c1,#c6a78e)!important;box-shadow:0 20px 42px #10313428!important;backdrop-filter:none!important}
.sp-site .sp3.sp3-distinct .sp-hp2-hero .sp41-plotter img{transform:scaleX(-1)!important;mix-blend-mode:multiply!important;max-height:none!important;width:100%!important;height:auto!important}

/* 4.2.7: legible diagnostic detail and a quiet animated print illustration. */
.sp-site .sp3.sp3-distinct .sp-srv2-bento__card--feature > i{color:#e5d5bf!important;opacity:.6!important;text-shadow:0 0 24px #e5d5bf20;pointer-events:none}
.sp-site .sp3.sp3-distinct .sp-srv2-printers__grid{grid-template-columns:minmax(0,780px) minmax(0,1fr)!important;column-gap:28px!important;align-items:center}
.sp-site .sp3.sp3-distinct .sp-srv2-printers__copy{grid-column:1/-1}
.sp427-print-art{color:#976f4e;min-width:0;max-width:360px;width:100%;justify-self:center;pointer-events:none}
.sp427-print-art svg{display:block;width:100%;height:auto;overflow:visible;filter:drop-shadow(0 10px 14px #946c4b12)}
.sp427-print-sheet{animation:sp427-feed 4s ease-in-out infinite}
.sp427-print-light{animation:sp427-light 3s ease-in-out infinite}
.sp427-print-dot{animation:sp427-orbit 6s ease-in-out infinite}
@keyframes sp427-feed{0%,100%{transform:translateY(0)}50%{transform:translateY(7px)}}
@keyframes sp427-light{0%,100%{opacity:.35}50%{opacity:1}}
@keyframes sp427-orbit{0%,100%{transform:translate(0,0)}50%{transform:translate(12px,-16px)}}
@media(max-width:1000px){.sp-site .sp3.sp3-distinct .sp-srv2-printers__grid{grid-template-columns:1fr!important}.sp427-print-art{max-width:300px}}
@media(prefers-reduced-motion:reduce){.sp427-print-sheet,.sp427-print-light,.sp427-print-dot{animation:none}}

/* 4.2.8: HP — airy product stage, compact glass service cards, varied sections. */
.sp-site .sp3.sp3-distinct.sp428-hp .sp-hp2-hero{background:linear-gradient(115deg,#ede7df 0%,#e7ded1 58%,#dfd1bf 100%)!important;padding:54px 0 46px!important;border-bottom:1px solid #c0a69180}
.sp428-hp .sp-hp2-hero__orb{display:none}
.sp428-hp .sp-hp2-hero__grid-bg{opacity:.3;background-size:64px 64px}
.sp-site .sp3.sp3-distinct.sp428-hp .sp-hp2-hero__grid{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr)!important;gap:48px!important}
.sp-site .sp3.sp3-distinct.sp428-hp .sp-hp2-hero__copy h1{color:#1b4549!important;font-size:clamp(40px,4.5vw,62px)!important;line-height:1.06!important}
.sp-site .sp3.sp3-distinct.sp428-hp .sp-hp2-hero h1 em{color:#448288!important;-webkit-text-fill-color:#448288!important}
.sp-site .sp3.sp3-distinct.sp428-hp .sp-hp2-hero__copy > p{color:#3d676b!important;font-size:19px!important;line-height:1.6!important;max-width:540px}
.sp428-hp .sp-hp2-badge{background:#ffffff65!important;border-color:#ffffffb0!important;border-radius:999px;color:#216e76;font-size:12px!important;letter-spacing:.07em;max-width:100%;width:fit-content}
.sp-site .sp3.sp3-distinct.sp428-hp .sp-hp2-hero__meta span{background:#ffffff50!important;color:#316065!important;border-color:#ffffffa0!important;font-weight:600!important;font-size:12px!important}
.sp-site .sp3.sp3-distinct.sp428-hp .sp-hp2-hero__actions .spv2g-btn--glass{background:#ffffff55!important;color:#236066!important;border:1px solid #ffffffc0!important;backdrop-filter:blur(18px);box-shadow:inset 0 1px #ffffff,0 8px 22px #366f7512}
.sp-site .sp3.sp3-distinct.sp428-hp .sp428-product{position:relative;isolation:isolate;overflow:visible!important;background:none!important;border:0!important;box-shadow:none!important;backdrop-filter:none!important;padding:0!important;margin:0!important;border-radius:0!important}
.sp428-product:before{content:"";position:absolute;z-index:-1;inset:12% 7%;border-radius:50%;border:1px solid #ffffff99;box-shadow:0 0 0 24px #ffffff16,0 0 0 48px #ffffff10;transform:rotate(-18deg);pointer-events:none;animation:sp428-halo 8s ease-in-out infinite}
.sp-site .sp3.sp3-distinct.sp428-hp .sp428-product img{display:block;width:100%!important;height:auto!important;max-height:none!important;transform:scaleX(-1)!important;mix-blend-mode:multiply!important;filter:drop-shadow(0 22px 18px #214e5220);border-radius:0!important}
.sp428-product figcaption{position:absolute;bottom:4%;right:4%;display:flex;align-items:center;gap:10px;padding:12px 18px;border:1px solid #ffffffbc;border-radius:16px;background:#ffffff60;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);box-shadow:inset 0 1px #ffffff,0 12px 24px #265e641c;color:#26646a;font-size:15px;font-weight:750}
.sp428-product figcaption small{font-size:12px;font-weight:500}
.sp-site .sp3.sp3-distinct.sp428-hp .sp-hp2-scope{padding:46px 0!important;background:radial-gradient(ellipse at 6% 65%,#d6c2a778,transparent 42%),radial-gradient(ellipse at 95% 25%,#d5c3ab78,transparent 40%),#efeae4!important}
.sp-site .sp3.sp3-distinct.sp428-hp .sp-hp2-section-head{grid-template-columns:1.4fr 1fr!important;gap:28px!important;margin-bottom:26px}
.sp428-hp .sp-hp2-section-head h2{font-size:clamp(29px,3vw,40px)!important;line-height:1.12!important}
.sp428-hp .sp-hp2-section-head>p{font-size:17px!important;color:#4b7074!important;max-width:420px}
.sp-site .sp3.sp3-distinct.sp428-hp .sp-hp2-scope__grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:18px!important}
.sp-site .sp3.sp3-distinct.sp428-hp .sp-hp2-scope-card{display:grid!important;grid-template-columns:44px minmax(0,1fr)!important;grid-template-rows:25px auto auto;gap:4px 16px;align-content:center;padding:23px!important;min-height:154px!important;border:1px solid #ffffffae!important;border-radius:22px!important;background:linear-gradient(130deg,#ffffff88,#ffffff35)!important;box-shadow:inset 0 1px 0 #ffffff,0 12px 26px #26545912!important;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);transform:none;transition:transform .25s,box-shadow .25s,border-color .25s}
.sp-site .sp3.sp3-distinct.sp428-hp .sp-hp2-scope-card:nth-child(2),.sp-site .sp3.sp3-distinct.sp428-hp .sp-hp2-scope-card:nth-child(6){background:linear-gradient(130deg,#f4e6d3a0,#ffffff45)!important}
.sp-site .sp3.sp3-distinct.sp428-hp .sp-hp2-scope-card:nth-child(4){background:linear-gradient(130deg,#d8c8b3a0,#ffffff45)!important}
.sp-site .sp3.sp3-distinct.sp428-hp .sp-hp2-scope-card:nth-child(3){background:linear-gradient(130deg,#ece3d8a0,#eef6fc45)!important}
.sp-site .sp3.sp3-distinct.sp428-hp .sp-hp2-scope-card:nth-child(5){background:linear-gradient(130deg,#d9c5aaa0,#ffffff45)!important}
.sp-site .sp3.sp3-distinct.sp428-hp .sp-hp2-scope-card__icon{grid-column:1!important;grid-row:1/4!important;width:44px!important;height:44px!important;margin:0!important;border-radius:14px!important;border:1px solid #ffffffb0!important;background:#ffffff75!important;align-self:start}
.sp-site .sp3.sp3-distinct.sp428-hp .sp-hp2-scope-card>:not(.sp-hp2-scope-card__icon){grid-column:2}
.sp428-hp .sp-hp2-scope-card>span{font-size:11px!important;margin:0!important;letter-spacing:.1em}
.sp-site .sp3.sp3-distinct.sp428-hp .sp-hp2-scope-card h3{font-size:22px!important;line-height:1.16!important;color:#204a4e!important;margin:0 0 4px!important}
.sp-site .sp3.sp3-distinct.sp428-hp .sp-hp2-scope-card p{font-size:16px!important;line-height:1.45!important;color:#446c70!important;margin:0!important}
.sp-site .sp3.sp3-distinct.sp428-hp .sp-hp2-symptoms{background:radial-gradient(ellipse at 10% 80%,#976f4f70,transparent 55%),linear-gradient(110deg,#214c50,#30666b)!important;padding:44px 0!important}
.sp428-hp .sp-hp2-symptoms__grid{grid-template-columns:.9fr 1.1fr;align-items:center;gap:48px}
.sp-site .sp3.sp3-distinct.sp428-hp .sp-hp2-symptoms :is(h2,strong){color:#f1fbfc!important}
.sp-site .sp3.sp3-distinct.sp428-hp .sp-hp2-symptoms p{color:#e9e0d5!important;font-size:17px!important}
.sp428-hp .sp-hp2-symptoms h2{font-size:clamp(30px,3vw,42px)!important;line-height:1.13!important}
.sp-site .sp3.sp3-distinct.sp428-hp .sp-hp2-symptoms__list{gap:14px}
.sp-site .sp3.sp3-distinct.sp428-hp .sp-hp2-symptoms__list article{min-height:100px!important;padding:18px!important;border:1px solid #ffffff45!important;background:linear-gradient(130deg,#ffffff18,#ffffff08)!important;border-radius:18px;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);box-shadow:inset 0 1px #ffffff30,0 10px 20px #11313414;display:flex;align-items:center;gap:14px;transition:transform .25s,background .25s}
.sp-site .sp3.sp3-distinct.sp428-hp .sp-hp2-symptoms__list span{flex-shrink:0;margin:0;background:#e5d5c022!important;border-color:#f0e4d365;color:#f3e8d9!important}
.sp428-hp .sp-hp2-symptoms__list strong{font-size:19px!important;line-height:1.35!important;max-width:215px}
.sp-site .sp3.sp3-distinct.sp428-hp .sp-hp2-faq{padding:44px 0!important;background:linear-gradient(110deg,#e9e0d5,#efebe6)!important}
.sp428-hp .sp-hp2-faq h2{font-size:34px!important;line-height:1.12!important}
.sp428-hp .sp-hp2-faq__list{background:#ffffff48!important;border:1px solid #ffffffa0;box-shadow:inset 0 1px #ffffff,0 14px 32px #2c565a10;backdrop-filter:blur(20px)}
.sp428-hp .sp-hp2-faq summary{font-size:18px!important;padding:20px 56px 20px 22px!important}
.sp428-hp .sp-hp2-faq details p{font-size:17px!important}
.sp-site .sp3.sp3-distinct.sp428-hp .sp-hp2-cta{background:radial-gradient(ellipse at 85% 35%,#bd9e855c,transparent 65%),#ded6cb!important;padding:20px 0 28px!important}
.sp-site .sp3.sp3-distinct.sp428-hp .sp-hp2-cta__panel{background:linear-gradient(120deg,#2e5b609c,#366e74b0)!important;border:1px solid #ffffff78!important;box-shadow:inset 0 1px #ffffff60,0 14px 32px #24565b22!important;backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);padding:28px!important}
.sp-site .sp3.sp3-distinct.sp428-hp .sp-hp2-cta :is(h2,p){color:#eefafb!important}
.sp428-hp .sp-hp2-cta h2{font-size:30px!important}
.sp428-hp .sp-hp2-cta__actions{flex-direction:column;align-items:stretch;gap:12px}
.sp428-hp .sp-hp2-cta__phones{display:flex;flex-direction:row;gap:10px}
.sp-site .sp3.sp3-distinct.sp428-hp .sp-hp2-cta__phones a{padding:10px 13px;background:#ffffff14;border:1px solid #ffffff40;border-radius:13px;backdrop-filter:blur(14px);color:#ffffff!important}
.sp428-hp .sp-hp2-cta__phones span{display:block;font-size:11px;font-weight:500;color:#e9e0d5}
.sp428-hp .sp-hp2-cta__phones strong{display:block;font-size:16px;color:#ffffff;white-space:nowrap}
@media(hover:hover){.sp-site .sp3.sp3-distinct.sp428-hp .sp-hp2-scope-card:hover{transform:translateY(-5px);border-color:#ffffff!important;box-shadow:inset 0 1px #ffffff,0 20px 32px #24575c24!important}.sp-site .sp3.sp3-distinct.sp428-hp .sp-hp2-symptoms__list article:hover{transform:translateY(-3px);background:#ffffff22!important}}
@keyframes sp428-halo{0%,100%{transform:rotate(-18deg) scale(1)}50%{transform:rotate(-12deg) scale(1.04)}}
@media(max-width:1100px){.sp-site .sp3.sp3-distinct.sp428-hp .sp-hp2-scope__grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.sp428-hp .sp-hp2-cta__panel{grid-template-columns:1fr!important}}
@media(max-width:760px){.sp-site .sp3.sp3-distinct.sp428-hp .sp-hp2-hero__grid,.sp-site .sp3.sp3-distinct.sp428-hp .sp-hp2-section-head{grid-template-columns:1fr!important;gap:22px!important}.sp-site .sp3.sp3-distinct.sp428-hp .sp-hp2-hero{padding:34px 0!important}.sp428-hp .sp-hp2-symptoms__grid{grid-template-columns:1fr;gap:24px}.sp-site .sp3.sp3-distinct.sp428-hp .sp-hp2-scope__grid{grid-template-columns:1fr!important}.sp-site .sp3.sp3-distinct.sp428-hp .sp-hp2-scope-card{min-height:130px!important;padding:20px!important}.sp428-product figcaption{bottom:0;right:0;font-size:13px;padding:9px 12px}.sp428-product figcaption small{font-size:11px}.sp428-hp .sp-hp2-symptoms__list{grid-template-columns:1fr!important}.sp-site .sp3.sp3-distinct.sp428-hp .sp-hp2-symptoms__list article{min-height:74px!important}.sp428-hp .sp-hp2-symptoms__list strong{max-width:none}.sp428-hp .sp-hp2-cta__phones{flex-wrap:wrap}.sp428-hp .sp-hp2-cta__phones a{flex:1}}
@media(prefers-reduced-motion:reduce){.sp428-product:before{animation:none}.sp428-hp .sp-hp2-scope-card,.sp428-hp .sp-hp2-symptoms__list article{transition:none!important;transform:none!important}}
.sp-site .sp3.sp3-distinct.sp428-hp .sp428-product{isolation:auto!important}
.sp-site .sp3.sp3-distinct.sp428-hp .sp428-product img{filter:none!important}
@media(min-width:761px) and (max-width:1000px){.sp428-hp .sp-hp2-symptoms__grid{grid-template-columns:1fr!important;gap:22px}.sp428-hp .sp-hp2-symptoms__list strong{max-width:none}}
.sp-site .sp3.sp3-distinct.sp428-hp .sp-hp2-hero__grid{z-index:auto!important}
.sp428-product:before{z-index:0;pointer-events:none}

/* 4.2.9: parts — an illustrated assembly in glass, separated catalogue cards. */
.sp-site .sp3.sp3-distinct.sp429-parts .sp-prt2-hero{background:radial-gradient(ellipse at 86% 30%,#c6a890aa,transparent 55%),linear-gradient(115deg,#efeae4,#e1d6c8)!important;padding:48px 0!important}
.sp-site .sp3.sp3-distinct.sp429-parts .sp-prt2-hero__grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:50px!important}
.sp429-parts .sp-prt2-hero h1{font-size:clamp(40px,4.3vw,62px)!important;line-height:1.08!important}
.sp429-parts .sp-prt2-hero__orb{display:none}
.sp429-stage{position:relative;min-width:0;padding:30px 24px 40px;isolation:isolate}
.sp429-stage:before{content:"";position:absolute;inset:12% 5% 8%;z-index:-1;border-radius:45%;background:#b3947a;filter:blur(30px);opacity:.48}
.sp429-engine{position:relative;border:1px solid #fff6eb90;border-radius:34px;background:radial-gradient(ellipse at 30% 18%,#e7d1b449,transparent 55%),linear-gradient(140deg,#265b60d0,#2a6268a0);box-shadow:inset 0 1px #fff8ee90,inset 0 -1px #e8d9c550,0 26px 46px #29666c30;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);transform:rotate(-3deg);overflow:hidden}
.sp429-engine:after{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent 25%,#ffffff18 26%,#ffffff05 45%,transparent 46%);pointer-events:none}
.sp429-engine svg{display:block;width:100%;height:auto;transform:rotate(3deg)}
.sp429-cover{animation:sp429-layer 6s ease-in-out infinite}
.sp429-core{animation:sp429-core 6s ease-in-out infinite}
.sp429-signal{animation:sp429-pulse 3s ease-in-out infinite}
.sp429-spec{position:absolute;z-index:2;padding:14px 20px;border:1px solid #ffffffc0;border-radius:17px;background:linear-gradient(130deg,#fffaf49e,#f8f2ea60);box-shadow:inset 0 1px #ffffff,0 12px 28px #2454591c;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);color:#24565b}
.sp429-spec small{display:block;font-size:11px;letter-spacing:.12em;color:#427e84;font-weight:800}
.sp429-spec strong{display:block;margin-top:3px;font-size:16px}
.sp429-spec--model{top:0;left:0;transform:rotate(-2deg)}
.sp429-spec--part{bottom:5px;right:0;transform:rotate(2deg)}
.sp-site .sp3.sp3-distinct.sp429-parts .sp-prt2-groups{padding:44px 0!important;border-top:1px solid #ffffff85;background:radial-gradient(ellipse at 15% 50%,#ba9c8370,transparent 40%),radial-gradient(ellipse at 88% 30%,#c7a88e4a,transparent 38%),#dfd6ca!important}
.sp429-parts .sp-prt2-section-head{gap:30px!important}
.sp429-parts .sp-prt2-section-head h2{font-size:clamp(28px,3vw,40px)!important;line-height:1.12!important}
.sp-site .sp3.sp3-distinct.sp429-parts .sp-prt2-groups__layout{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:18px!important}
.sp-site .sp3.sp3-distinct.sp429-parts .sp-prt2-group{position:relative;overflow:hidden!important;padding:24px!important;min-height:176px!important;grid-template-columns:58px minmax(0,1fr)!important;gap:5px 20px;border:1px solid #ffffff9c!important;border-radius:20px!important;background:linear-gradient(125deg,#ffffff85,#ffffff30)!important;box-shadow:inset 0 1px #ffffff,0 12px 26px #2f646917!important;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);transition:transform .25s,background .25s,box-shadow .25s}
.sp-site .sp3.sp3-distinct.sp429-parts .sp-prt2-group:nth-child(2n){background:linear-gradient(125deg,#f3eade9c,#dfd3c455)!important}
.sp-site .sp3.sp3-distinct.sp429-parts .sp-prt2-group:nth-child(4){background:linear-gradient(125deg,#ece1d3a0,#d8cbb945)!important}
.sp-site .sp3.sp3-distinct.sp429-parts .sp-prt2-group__icon{width:58px!important;height:58px!important;border:1px solid #ffffffc0!important;border-radius:18px!important;background:#ffffff65!important;box-shadow:inset 0 1px #ffffff}
.sp429-parts .sp-prt2-group h3{font-size:23px!important;line-height:1.2!important;margin:0 0 4px!important}
.sp429-parts .sp-prt2-group p{font-size:17px!important;line-height:1.5!important;margin:0!important}
.sp-site .sp3.sp3-distinct.sp429-parts .sp-prt2-group__cta{font-size:13px!important;font-weight:800;color:#28838c!important;align-self:end;margin-top:9px!important}
.sp429-parts .sp-prt2-group__cta b{display:inline-block;margin-left:8px;transition:transform .25s}
.sp-site .sp3.sp3-distinct.sp429-parts .sp-prt2-group:is(:hover,:focus-visible){background:linear-gradient(125deg,#fff9f0bd,#e5d8c69c)!important;transform:translateY(-4px)!important;box-shadow:inset 0 1px #ffffff,0 18px 30px #265d6228!important;border-color:#ffffff!important}
.sp429-parts .sp-prt2-group:hover .sp-prt2-group__cta b{transform:translateX(5px)}
.sp-site .sp3.sp3-distinct.sp429-parts .sp-prt2-materials{background:radial-gradient(ellipse at 15% 40%,#d3bfa5a0,transparent 55%),#c8b4a4!important;padding:32px 0!important;border-top:1px solid #e1d5c6}
.sp-site .sp3.sp3-distinct.sp429-parts .sp-prt2-materials__panel{background:linear-gradient(120deg,#f1ffff50,#f8f0e52e)!important;border:1px solid #fffbf59c!important;border-radius:26px!important;box-shadow:inset 0 1px #ffffff,0 18px 36px #26595e24!important;backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px)}
.sp-site .sp3.sp3-distinct.sp429-parts .spv2g-btn:is(:hover,:focus-visible){background:#23565b!important;background-image:none!important;border-color:#4c7d82!important;color:#ffffff!important;box-shadow:0 10px 24px #23565b28!important}
.sp-site .sp3.sp3-distinct.sp429-parts .sp-prt2-hero__actions .spv2g-btn--glass{background:#ffffff50!important;border:1px solid #ffffffb0!important;backdrop-filter:blur(18px);color:#265f65!important;box-shadow:inset 0 1px #ffffff}
.sp-site .sp3.sp3-distinct.sp429-parts .sp-prt2-hero__actions .spv2g-btn--glass:is(:hover,:focus-visible){background:#23565b!important;color:#ffffff!important}
.sp-site .sp3.sp3-distinct.sp429-parts a:focus-visible{outline:3px solid #24666d;outline-offset:4px}
@keyframes sp429-layer{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}
@keyframes sp429-core{0%,100%{transform:translateY(0)}50%{transform:translateY(5px)}}
@keyframes sp429-pulse{0%,100%{opacity:.4}50%{opacity:1}}
@media(max-width:900px){.sp-site .sp3.sp3-distinct.sp429-parts .sp-prt2-hero__grid{grid-template-columns:1fr!important;gap:24px!important}.sp429-stage{max-width:620px;width:100%;justify-self:center}.sp429-parts .sp-prt2-section-head{grid-template-columns:1fr!important;gap:16px!important}}
@media(max-width:760px){.sp-site .sp3.sp3-distinct.sp429-parts .sp-prt2-groups__layout{grid-template-columns:1fr!important}.sp-site .sp3.sp3-distinct.sp429-parts .sp-prt2-group{min-height:160px!important;grid-template-columns:46px minmax(0,1fr)!important;padding:20px!important;gap:5px 14px}.sp-site .sp3.sp3-distinct.sp429-parts .sp-prt2-group__icon{width:46px!important;height:46px!important}.sp429-parts .sp-prt2-group h3{font-size:21px!important}.sp429-spec{padding:10px 13px}.sp429-spec strong{font-size:14px}.sp429-stage{padding:25px 12px 30px}.sp-site .sp3.sp3-distinct.sp429-parts .sp-prt2-materials__panel{padding:24px!important}}
@media(prefers-reduced-motion:reduce){.sp429-cover,.sp429-core,.sp429-signal{animation:none}.sp429-parts .sp-prt2-group,.sp429-parts .sp-prt2-group__cta b{transition:none!important;transform:none!important}}
.sp-site .sp3.sp3-distinct.sp429-parts .sp-prt2-materials__photo{mix-blend-mode:multiply!important}
.sp-site .sp3.sp3-distinct.sp429-parts .sp-prt2-materials__photo img{mix-blend-mode:normal!important}
.sp-site .sp3.sp3-distinct.sp429-parts .sp-prt2-materials__panel{isolation:auto!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}

/* 4.2.10: precise headline breaks and a brighter decorative product halo. */
.sp-site .sp3.sp3-distinct.sp428-hp .sp-hp2-section-head>p{max-width:none!important;white-space:nowrap;font-size:clamp(14px,1.2vw,17px)!important}
.sp-site .sp3.sp3-distinct.sp429-parts .sp-prt2-hero h1{font-size:clamp(30px,4.3vw,62px)!important}
.sp4210-title-line{display:inline-block;white-space:nowrap}
.sp-site .sp3.sp3-distinct.sp428-hp .sp428-product:before{border:2px solid #f2ffffd9;background:radial-gradient(ellipse,#f1ffff24 25%,#fff9f235 65%,transparent 72%);box-shadow:0 0 0 24px #fffbf528,0 0 0 48px #fffaf21a,0 0 28px #f3ffff3b}
@media(max-width:760px){.sp-site .sp3.sp3-distinct.sp429-parts .sp-prt2-hero h1{font-size:clamp(30px,8.2vw,48px)!important}}

/* 4.2.11: established dark teal, cooler glass and compact telephone pills. */
.sp-site .sp3.sp3-distinct.sp429-parts .spv2g-btn:is(:hover,:focus-visible),.sp-site .sp3.sp3-distinct.sp429-parts .sp-prt2-hero__actions .spv2g-btn--glass:is(:hover,:focus-visible){background:#1f6a71!important;border-color:#4a8186!important;box-shadow:0 10px 24px #1f6a7128!important;color:#ffffff!important}
.sp-site .sp3.sp3-distinct.sp429-parts .sp-prt2-materials{background:radial-gradient(ellipse at 20% 35%,#dccdba80,transparent 60%),#d5cbbe!important}
.sp-site .sp3.sp3-distinct.sp429-parts .sp-prt2-materials__panel{background:linear-gradient(125deg,#f3fcff65,#f3ece235)!important;border-color:#f5ffffb0!important;box-shadow:inset 0 1px #ffffff,0 18px 36px #26595e20!important}
.sp-site .sp3.sp3-distinct.sp429-parts .sp-prt2-cta{background:radial-gradient(ellipse at 80% 50%,#c8b19e70,transparent 65%),#e5dfd6!important;padding:24px 0!important}
.sp-site .sp3.sp3-distinct.sp429-parts .sp-prt2-cta__panel{grid-template-columns:minmax(0,1fr) auto!important;background:linear-gradient(120deg,#235156bc,#39757baa)!important;border:1px solid #ffffff80!important;box-shadow:inset 0 1px #ffffff80,inset 0 -1px #ffffff20,0 18px 35px #23505422!important;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);padding:26px 30px!important}
.sp-site .sp3.sp3-distinct.sp429-parts .sp-prt2-cta__actions{display:flex;flex-direction:column;align-items:stretch;gap:10px}
.sp-site .sp3.sp3-distinct.sp429-parts .sp-prt2-cta__phones{display:flex;flex-direction:row;gap:8px}
.sp-site .sp3.sp3-distinct.sp429-parts .sp-prt2-cta__phones a{display:block;padding:9px 12px;border:1px solid #fff8ee75;border-radius:13px;background:linear-gradient(120deg,#ffffff24,#ffffff0d);box-shadow:inset 0 1px #ffffff40;backdrop-filter:blur(16px);color:#ffffff!important;transition:background .2s}
.sp429-parts .sp-prt2-cta__phones span{display:block;color:#f0e8dd;font-size:11px;font-weight:500;margin-bottom:3px}
.sp429-parts .sp-prt2-cta__phones strong{display:block;font-size:17px;color:#ffffff;white-space:nowrap;line-height:1.2}
.sp429-parts .sp-prt2-cta__phones a:hover{background:#1f6a71!important}
.sp4211-real-parts{display:block;width:100%;height:auto;animation:sp4211-float 6s ease-in-out infinite;filter:drop-shadow(0 15px 16px #10353938)}
@keyframes sp4211-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
@media(max-width:1000px){.sp-site .sp3.sp3-distinct.sp429-parts .sp-prt2-cta__panel{grid-template-columns:1fr!important}.sp429-parts .sp-prt2-cta__actions{max-width:370px}}
@media(max-width:760px){.sp-site .sp3.sp3-distinct.sp429-parts .sp-prt2-cta__panel{padding:22px!important}.sp-site .sp3.sp3-distinct.sp429-parts .sp-prt2-cta__phones{flex-wrap:wrap}.sp429-parts .sp-prt2-cta__phones a{flex:1}.sp429-parts .sp-prt2-cta__phones strong{font-size:16px}}
@media(prefers-reduced-motion:reduce){.sp4211-real-parts{animation:none}}

/* 4.2.12: compact alternating FAQ rows and a more translucent HP contact panel. */
.sp-site .sp3.sp3-distinct.sp428-hp .sp-hp2-faq__list{background:none!important;border:0!important;box-shadow:none!important;backdrop-filter:none!important;overflow:visible}
.sp-site .sp3.sp3-distinct.sp428-hp .sp-hp2-faq details{padding:0!important;margin:0 0 8px!important;border:1px solid #ffffffa0!important;border-radius:13px!important;background:#edf6fa80!important;box-shadow:inset 0 1px #ffffffbc,0 5px 12px #224a4e08;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.sp-site .sp3.sp3-distinct.sp428-hp .sp-hp2-faq details:nth-child(even){background:#dccfbd70!important;border-color:#f7f1e8b0!important}
.sp-site .sp3.sp3-distinct.sp428-hp .sp-hp2-faq summary{padding:13px 50px 13px 18px!important;line-height:1.4!important;min-height:50px;font-size:17px!important}
.sp-site .sp3.sp3-distinct.sp428-hp .sp-hp2-faq details p{padding:2px 18px 16px!important;font-size:16px!important}
.sp-site .sp3.sp3-distinct.sp428-hp .sp-hp2-faq details[open]{background:#f7f2ecc0!important}
.sp-site .sp3.sp3-distinct.sp428-hp .sp-hp2-cta{background:radial-gradient(ellipse at 15% 15%,#967f6c75,transparent 50%),radial-gradient(ellipse at 90% 80%,#b5937880,transparent 55%),#d9cfc3!important}
.sp-site .sp3.sp3-distinct.sp428-hp .sp-hp2-cta__panel{position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(115deg,#2d5b6080,#49808585)!important;border:1px solid #fff8efa0!important;box-shadow:inset 0 1px #ffffffa0,inset 0 -1px #ffffff35,0 16px 32px #24505420!important;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px)}
.sp428-hp .sp-hp2-cta__panel:before{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(120deg,#ffffff15,transparent 30%,#ffffff22 31%,#ffffff06 48%,transparent 49%);pointer-events:none}
.sp-site .sp3.sp3-distinct.sp428-hp .sp-hp2-cta__phones a{background:linear-gradient(135deg,#ffffff30,#ffffff10)!important;border-color:#fff7ed85!important;box-shadow:inset 0 1px #ffffff65;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}

/* 4.2.13: a realistic business printer replaces the simplified icon. */
.sp-site .sp3.sp3-distinct .sp427-print-art{position:relative;isolation:isolate;max-width:360px;min-height:190px;display:grid;place-items:center}
.sp427-print-art:before{content:"";position:absolute;z-index:-1;inset:18% 5% 5%;border-radius:50%;background:radial-gradient(ellipse,#d7c9b540,transparent 70%);pointer-events:none}
.sp427-print-art .sp4213-printer{display:block;width:100%;height:210px;object-fit:contain;filter:drop-shadow(0 12px 13px #26565b20);animation:sp4213-float 6s ease-in-out infinite}
.sp427-print-art:after{content:"";position:absolute;left:15%;right:15%;bottom:0;height:1px;background:linear-gradient(90deg,transparent,#b2957e75,transparent);animation:sp4213-light 6s ease-in-out infinite;pointer-events:none}
@keyframes sp4213-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}
@keyframes sp4213-light{0%,100%{opacity:.4}50%{opacity:.85}}
@media(max-width:1000px){.sp-site .sp3.sp3-distinct .sp427-print-art{max-width:300px}.sp427-print-art .sp4213-printer{height:180px}}
@media(prefers-reduced-motion:reduce){.sp427-print-art .sp4213-printer,.sp427-print-art:after{animation:none}}

/* 4.2.14: business — full-width headings, real plotter artwork and compact glass. */
.sp-site .sp3.sp3-distinct.sp4214-business .sp-b2b2-section-head{display:block!important;text-align:center;margin-bottom:24px!important}
.sp4214-business .sp-b2b2-section-head h2{max-width:none!important;font-size:clamp(28px,3vw,40px)!important;line-height:1.14!important;margin:0 auto 10px!important}
.sp4214-business .sp-b2b2-section-head>p{max-width:1000px!important;margin:0 auto!important;font-size:17px!important;line-height:1.5!important}
.sp-site .sp3.sp3-distinct.sp4214-business .sp-b2b2-for{background:radial-gradient(ellipse at 15% 40%,#c5b1a170,transparent 55%),#e8e1d7!important}
.sp-site .sp3.sp3-distinct.sp4214-business .sp-b2b2-for-card{min-height:190px!important;position:relative;overflow:hidden;padding:23px!important;border:1px solid #ffffffa0!important;background:linear-gradient(125deg,#f4ffff75,#f1eae13d)!important;box-shadow:inset 0 1px #ffffff,0 14px 28px #315f6415!important;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:22px!important}
.sp-site .sp3.sp3-distinct.sp4214-business .sp-b2b2-for-card--feature{display:block!important;height:auto!important;max-height:none!important;min-height:410px!important;background:linear-gradient(130deg,#e8dfd2,#efe9e2)!important;backdrop-filter:none!important}
.sp-site .sp3.sp3-distinct.sp4214-business .sp-b2b2-for-card--pink{background:linear-gradient(125deg,#efe2d190,#fbf5ed45)!important}
.sp-site .sp3.sp3-distinct.sp4214-business .sp-b2b2-for-card--violet{background:linear-gradient(125deg,#ded3c490,#f2ede645)!important}
.sp-site .sp3.sp3-distinct.sp4214-business .sp-b2b2-for-card--wide{min-height:0!important}
.sp4214-business .sp-b2b2-for-card__number{position:relative;z-index:2;margin-bottom:12px!important}
.sp4214-card-plotter{position:absolute;top:6px;right:0;width:72%;height:245px;object-fit:contain;mix-blend-mode:multiply;mask-image:radial-gradient(ellipse,#000000 56%,transparent 77%);-webkit-mask-image:radial-gradient(ellipse,#000000 56%,transparent 77%);pointer-events:none}
.sp-site .sp3.sp3-distinct.sp4214-business .sp-b2b2-for-card__layout--feature{display:block!important;position:relative;margin-top:164px!important;flex:0!important}
.sp4214-business .sp-b2b2-for-card--feature .sp-b2b2-for-card__copy{padding:16px;border:1px solid #ffffffa0;border-radius:16px;background:#ffffff66;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);gap:7px}
.sp4214-business .sp-b2b2-for-card h3{font-size:23px!important;line-height:1.2!important}
.sp4214-business .sp-b2b2-for-card p:not(.spv2g-kicker){font-size:17px!important;line-height:1.5!important}
.sp-site .sp3.sp3-distinct.sp4214-business .sp-b2b2-process{background:radial-gradient(ellipse at 85% 50%,#417c8260,transparent 55%),#1e494d!important;padding:36px 0!important}
.sp-site .sp3.sp3-distinct.sp4214-business .sp-b2b2-process__panel{display:block!important}
.sp-site .sp3.sp3-distinct.sp4214-business .sp-b2b2-process__intro{display:block!important;text-align:center;margin-bottom:22px!important}
.sp4214-business .sp-b2b2-process__intro h2{max-width:none!important;margin:7px auto 12px!important;font-size:clamp(28px,3vw,40px)!important;line-height:1.15!important}
.sp4214-business .sp-b2b2-process__intro>p:last-child{max-width:1050px;margin:0 auto!important;font-size:17px!important}
.sp-site .sp3.sp3-distinct.sp4214-business .sp-b2b2-process__steps{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px!important;padding:0!important;border:0!important;background:none!important}
.sp-site .sp3.sp3-distinct.sp4214-business .sp-b2b2-process__steps li{border:1px solid #ffffff50!important;border-radius:16px!important;background:linear-gradient(120deg,#ffffff1e,#ffffff08)!important;box-shadow:inset 0 1px #ffffff40;padding:17px!important;min-height:105px!important}
.sp-site .sp3.sp3-distinct.sp4214-business .sp-b2b2-hub{background:radial-gradient(ellipse at 75% 50%,#c5ad9a75,transparent 50%),#e0d7cb!important;padding:36px 0!important}
.sp4214-business .sp-b2b2-hub__layout{grid-template-columns:1fr 1fr!important;gap:18px!important}
.sp-site .sp3.sp3-distinct.sp4214-business .sp-b2b2-hub__main{position:relative;isolation:isolate;overflow:hidden;min-height:240px!important;padding:25px!important;border:1px solid #ffffffb0!important;background:linear-gradient(130deg,#fffbf580,#eee5d950)!important;box-shadow:inset 0 1px #ffffff,0 14px 28px #2c555915;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border-radius:22px}
.sp4214-business .sp-b2b2-hub__main>:not(img){position:relative;z-index:1;max-width:80%}
.sp4214-business .sp-b2b2-hub__main h3{font-size:25px!important;margin:9px 0!important}
.sp4214-business .sp-b2b2-hub__main p{font-size:17px!important;line-height:1.5!important;max-width:75%}
.sp4214-business .sp-b2b2-hub__main strong{margin-top:16px!important}
.sp4214-hub-plotter{position:absolute;right:-16px;bottom:-20px;width:60%;height:190px;object-fit:contain;opacity:.32;mix-blend-mode:multiply;mask-image:radial-gradient(ellipse,#000000 35%,transparent 75%);pointer-events:none}
.sp4214-business .sp-b2b2-hub__side{gap:10px!important}
.sp-site .sp3.sp3-distinct.sp4214-business .sp-b2b2-hub__side a{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:3px 14px!important;min-height:74px!important;padding:12px 18px!important;border:1px solid #ffffffa0!important;border-radius:16px;background:linear-gradient(120deg,#ffffff70,#edf7fa35)!important;box-shadow:inset 0 1px #ffffff;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.sp4214-business .sp-b2b2-hub__side a:nth-child(2){background:linear-gradient(120deg,#efe4d590,#f3ece350)!important}
.sp4214-business .sp-b2b2-hub__side a :is(span,strong,small){grid-column:1!important;margin:0!important}
.sp4214-business .sp-b2b2-hub__side span{font-size:10px!important;letter-spacing:.08em}
.sp4214-business .sp-b2b2-hub__side strong{font-size:18px!important;line-height:1.3}
.sp4214-business .sp-b2b2-hub__side small{font-size:14px!important}
.sp4214-business .sp-b2b2-hub__side b{grid-column:2;grid-row:1/4;align-self:center}
.sp-site .sp3.sp3-distinct.sp4214-business .sp-b2b2-cta{padding:24px 0!important;background:#e5ded4!important}
.sp-site .sp3.sp3-distinct.sp4214-business .sp-b2b2-cta__panel{background:linear-gradient(120deg,#2a5b608c,#4a7e83a0)!important;border:1px solid #ffffff90!important;box-shadow:inset 0 1px #ffffff95,0 16px 32px #25575c24!important;backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);padding:26px!important;grid-template-columns:minmax(0,1fr) auto!important}
.sp-site .sp3.sp3-distinct.sp4214-business .sp-b2b2-cta :is(h2,p){color:#f1fbff!important}
.sp4214-business .sp-b2b2-cta h2{font-size:30px!important;line-height:1.14!important}
.sp-site .sp3.sp3-distinct.sp4214-business .sp-b2b2-cta__actions{display:flex;flex-direction:column;align-items:stretch;gap:10px}
.sp-site .sp3.sp3-distinct.sp4214-business .sp-b2b2-cta__contact{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.sp-site .sp3.sp3-distinct.sp4214-business .sp-b2b2-cta__contact a{display:block;padding:9px 12px;border:1px solid #fff8ef85;border-radius:13px;background:linear-gradient(120deg,#ffffff28,#ffffff0d);box-shadow:inset 0 1px #ffffff50;backdrop-filter:blur(16px);color:#ffffff!important}
.sp4214-business .sp-b2b2-cta__contact a:last-child{grid-column:1/-1}
.sp4214-business .sp-b2b2-cta__contact span{display:block;font-size:11px;color:#f2ebe1;font-weight:500;margin-bottom:3px}
.sp4214-business .sp-b2b2-cta__contact strong{display:block;font-size:17px;line-height:1.2;color:#ffffff;white-space:nowrap}
@media(max-width:1000px){.sp4214-business .sp-b2b2-process__steps{grid-template-columns:repeat(2,minmax(0,1fr))!important}.sp-site .sp3.sp3-distinct.sp4214-business .sp-b2b2-cta__panel{grid-template-columns:1fr!important}.sp4214-business .sp-b2b2-cta__actions{max-width:370px}}
@media(max-width:760px){.sp4214-business .sp-b2b2-hub__layout{grid-template-columns:1fr!important}.sp-site .sp3.sp3-distinct.sp4214-business .sp-b2b2-for-card--feature{min-height:0!important}.sp4214-card-plotter{width:92%;height:210px}.sp-site .sp3.sp3-distinct.sp4214-business .sp-b2b2-for-card__layout--feature{margin-top:130px!important}.sp4214-business .sp-b2b2-process__steps{grid-template-columns:1fr!important}.sp-site .sp3.sp3-distinct.sp4214-business .sp-b2b2-process__steps li{min-height:85px!important}.sp4214-business .sp-b2b2-for-card__copy h3{font-size:22px!important}.sp4214-business .sp-b2b2-hub__main>:not(img){max-width:100%}.sp4214-business .sp-b2b2-cta__contact strong{font-size:16px}}

/* 4.2.15 — O nas, poradniki i kontakt: czytelne nagłówki i szklane akcenty. */
.sp-site .sp3.sp3-distinct.sp4215-about .sp-about2-timeline__head{display:block!important;text-align:center;margin-bottom:24px!important}
.sp-site .sp3.sp3-distinct.sp4215-about .sp-about2-timeline__head h2{max-width:none!important;margin:8px auto 12px!important;font-size:clamp(27px,2.7vw,38px)!important;line-height:1.2!important;text-wrap:pretty}
.sp-site .sp3.sp3-distinct.sp4215-about .sp-about2-timeline__head>p:last-child{max-width:none!important;font-size:17px!important;margin:0 auto!important}
.sp-site .sp3.sp3-distinct.sp4215-about .sp-about2-cta{background:radial-gradient(ellipse at 85% 20%,#dacab565,transparent 60%),#eee9e3!important;padding:30px 0 36px!important}
.sp-site .sp3.sp3-distinct.sp4215-about .sp-about2-cta__panel,.sp-site .sp3.sp3-subpage .sp-kb2-boundary__panel{position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(120deg,#2e5f648f,#8f6e54a3)!important;border:1px solid #fffaf4a0!important;box-shadow:inset 0 1px #ffffffb0,inset 0 -1px #ffffff30,0 16px 35px #23505428!important;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px)}
.sp-site .sp3.sp3-distinct.sp4215-about .sp-about2-cta__panel:before,.sp-site .sp3.sp3-subpage .sp-kb2-boundary__panel:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(115deg,#ffffff18,transparent 28%,#ffffff22 29%,#ffffff05 48%,transparent 49%);pointer-events:none}
.sp-site .sp3.sp3-distinct.sp4215-about .sp-about2-cta__panel :is(h2,p){color:#f4ffff!important}
.sp-site .sp3.sp3-distinct.sp4215-about .sp-about2-cta__actions{display:flex;flex-direction:column;align-items:stretch;gap:10px;min-width:330px}
.sp-site .sp3.sp3-distinct.sp4215-about .sp-about2-cta__phones{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.sp-site .sp3.sp3-distinct.sp4215-about :is(.sp-about2-cta__phones,.sp-about2-details__contact) a[href^="tel:"]{display:block;text-decoration:none;padding:9px 12px;border:1px solid #fff8ee85;border-radius:13px;background:linear-gradient(135deg,#ffffff30,#ffffff10);box-shadow:inset 0 1px #ffffff70;backdrop-filter:blur(16px);transition:background .2s,transform .2s}
.sp-site .sp3.sp3-distinct.sp4215-about .sp-about2-cta__phones a{color:#ffffff!important}
.sp-site .sp3.sp3-distinct.sp4215-about :is(.sp-about2-cta__phones,.sp-about2-details__contact) a span{display:block;font-size:11px;font-weight:500;line-height:1.3;margin-bottom:4px}
.sp-site .sp3.sp3-distinct.sp4215-about :is(.sp-about2-cta__phones,.sp-about2-details__contact) a strong{display:block;font-size:17px;line-height:1.2;white-space:nowrap}
.sp-site .sp3.sp3-distinct.sp4215-about .sp-about2-cta__phones a:is(:hover,:focus-visible){background:#1f6a7180;transform:translateY(-2px)}
.sp-site .sp3.sp3-subpage .sp-kb2-boundary{padding-bottom:40px!important;background:radial-gradient(ellipse at 90% 35%,#ded2c280,transparent 60%),#eee2d1!important}
.sp-site .sp3.sp3-subpage .sp-kb2-boundary__panel{border-radius:22px!important}
.sp-site .sp3.sp3-subpage.sp-contact2 .sp3-contact-direct-grid a[href^="mailto:"]{background:linear-gradient(120deg,#dbd1c4,#e3dacf)!important;border:1px solid #c8b5a6!important;box-shadow:inset 0 1px #ffffffa0,0 8px 20px #214c5010}
.sp-site .sp3.sp3-subpage.sp-contact2 .sp3-contact-direct-grid a[href^="mailto:"]:is(:hover,:focus-visible){background:linear-gradient(120deg,#d1c6b7,#ddd2c4)!important}
@media(max-width:1050px){.sp-site .sp3.sp3-distinct.sp4215-about .sp-about2-cta__panel{grid-template-columns:1fr!important}.sp-site .sp3.sp3-distinct.sp4215-about .sp-about2-cta__actions{min-width:0;max-width:380px}}
@media(max-width:760px){.sp-site .sp3.sp3-distinct.sp4215-about .sp-about2-cta__phones a{padding:9px 10px}.sp-site .sp3.sp3-distinct.sp4215-about .sp-about2-cta__phones a strong{font-size:16px}.sp-site .sp3.sp3-distinct.sp4215-about .sp-about2-timeline__head>p:last-child{font-size:16px!important}}

@media(max-width:760px){.sp-site .sp3.sp3-distinct.sp4215-about .sp-about2-cta__phones a strong{font-size:15px}.sp-site .sp3.sp3-distinct.sp4215-about .sp-about2-timeline__head h2{font-size:24px!important;text-wrap:balance}}
@media(max-width:360px){.sp-site .sp3.sp3-distinct.sp4215-about .sp-about2-cta__phones{grid-template-columns:1fr}}

/* 4.2.16 — statyczna drukarka jako większy element tła sekcji. */
.sp-site .sp3.sp3-distinct .sp-srv2-printers__grid{position:relative;display:block!important;min-height:345px;padding-bottom:56px}
.sp-site .sp3.sp3-distinct .sp-srv2-printers__copy{position:relative;z-index:2;margin-bottom:64px}
.sp-site .sp3.sp3-distinct .sp-srv2-printers__facts{position:relative;z-index:2;max-width:58%;background:#ffffff85;backdrop-filter:blur(12px)}
.sp-site .sp3.sp3-distinct .sp-srv2-printers .sp427-print-art{position:absolute;right:0;bottom:-12px;width:43%;max-width:560px;min-height:0;height:310px;opacity:.7;isolation:auto}
.sp-site .sp3.sp3-distinct .sp-srv2-printers .sp4213-printer{width:100%;height:100%;object-fit:contain;animation:none!important;transform:none!important;filter:drop-shadow(0 16px 20px #26565b12);mask-image:linear-gradient(to bottom,#000000 72%,#00000099 90%,transparent);-webkit-mask-image:linear-gradient(to bottom,#000000 72%,#00000099 90%,transparent)}
.sp-site .sp3.sp3-distinct .sp-srv2-printers .sp427-print-art:before,.sp-site .sp3.sp3-distinct .sp-srv2-printers .sp427-print-art:after{display:none!important;animation:none!important}
@media(max-width:1000px){.sp-site .sp3.sp3-distinct .sp-srv2-printers__grid{padding-bottom:0;min-height:0}.sp-site .sp3.sp3-distinct .sp-srv2-printers__copy{margin-bottom:24px}.sp-site .sp3.sp3-distinct .sp-srv2-printers__facts{max-width:100%}.sp-site .sp3.sp3-distinct .sp-srv2-printers .sp427-print-art{position:relative;right:auto;bottom:auto;width:100%;max-width:440px;height:270px;margin:12px auto -18px}}

/* 4.2.17 — jaśniejszy, przejrzysty panel materiałów. */
.sp-site .sp3.sp3-distinct.sp429-parts .sp-prt2-materials{background:radial-gradient(ellipse at 15% 35%,#faf5ee90,transparent 65%),#ece5db!important}
.sp-site .sp3.sp3-distinct.sp429-parts .sp-prt2-materials__panel{background:linear-gradient(125deg,#f7fcffdc,#faf5efc7)!important;border-color:#ffffff!important;box-shadow:inset 0 1px #ffffff,0 12px 28px #26595e12!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
.sp-site .sp3.sp3-distinct.sp429-parts .sp-prt2-materials__content p{color:#345b5f!important}

/* 4.2.18 — subtelna różnorodność kart podzespołów. */
.sp-site .sp3.sp3-distinct.sp429-parts .sp-prt2-group{--part-accent:#976f4e;background:linear-gradient(125deg,#f5fcffdf,#f7f2eba6)!important;border-left:3px solid var(--part-accent)!important}
.sp-site .sp3.sp3-distinct.sp429-parts .sp-prt2-group:nth-child(2){--part-accent:#a98669;background:linear-gradient(125deg,#ebdecddd,#f3ece2aa)!important}
.sp-site .sp3.sp3-distinct.sp429-parts .sp-prt2-group:nth-child(3){--part-accent:#46858b;background:linear-gradient(125deg,#d8cbb9d9,#e9dfd3b3)!important}
.sp-site .sp3.sp3-distinct.sp429-parts .sp-prt2-group:nth-child(4){--part-accent:#9b7c62;background:linear-gradient(125deg,#fffbf5df,#f3ece2aa)!important}
.sp-site .sp3.sp3-distinct.sp429-parts .sp-prt2-group:nth-child(5){--part-accent:#a38974;background:linear-gradient(125deg,#f0f5fddf,#f5efe6aa)!important}
.sp-site .sp3.sp3-distinct.sp429-parts .sp-prt2-group:nth-child(6){--part-accent:#966d4b;background:linear-gradient(125deg,#dccfbddd,#ece3d7a6)!important}
.sp-site .sp3.sp3-distinct.sp429-parts .sp-prt2-group__icon{color:var(--part-accent)!important;background:linear-gradient(135deg,#ffffffbd,#ffffff55)!important;border-color:#ffffffed!important}
.sp-site .sp3.sp3-distinct.sp429-parts .sp-prt2-group:is(:hover,:focus-visible){background:linear-gradient(125deg,#faf4eced,#e8ddcec9)!important;border-left-color:var(--part-accent)!important}

/* 4.2.19 — wyraźny nagłówek bazy wiedzy i szklane karty tematów. */
.sp-site .sp3.sp3-subpage.sp-kb2 .sp-kb2-hero{position:relative;background:radial-gradient(ellipse at 90% 15%,#b690726b,transparent 55%),linear-gradient(115deg,#214d51,#35757b)!important;border-bottom:1px solid #d7c4ab!important;padding:48px 0!important}
.sp-site .sp3.sp3-subpage.sp-kb2 .sp-kb2-hero :is(h1,h2){color:#f4fdff!important}
.sp-site .sp3.sp3-subpage.sp-kb2 .sp-kb2-hero__copy>p{color:#f3ece2!important;font-size:18px!important}
.sp-site .sp3.sp3-subpage.sp-kb2 :is(.sp-kb2-badge,.sp-kb2-hero__meta span){background:linear-gradient(135deg,#ffffff25,#ffffff0b)!important;border:1px solid #fff5e865!important;color:#fff7ec!important;box-shadow:inset 0 1px #ffffff35;backdrop-filter:blur(14px)}
.sp-site .sp3.sp3-subpage.sp-kb2 .sp-kb2-searchbox{background:linear-gradient(130deg,#ffffff26,#f4e4ce12)!important;border:1px solid #fff7ed85!important;box-shadow:inset 0 1px #ffffff88,0 22px 40px #10323530!important;border-radius:24px!important;min-height:0!important;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px)}
.sp-site .sp3.sp3-subpage.sp-kb2 .sp-kb2-searchbox__top{background:#ffffff09!important;color:#faf1e6!important;border-bottom:1px solid #ffffff30!important}
.sp-site .sp3.sp3-subpage.sp-kb2 .sp-kb2-searchbox__content{padding:28px!important}
.sp-site .sp3.sp3-subpage.sp-kb2 .sp-kb2-searchbox :is(.spv2g-kicker,.sp-kb2-searchbox__note){color:#faf0e4!important}
.sp-site .sp3.sp3-subpage.sp-kb2 .sp-kb2-search__field{background:#f6fcff!important;border-color:#fff8ef!important;box-shadow:0 4px 12px #133d4110}
.sp-site .sp3.sp3-subpage.sp-kb2 .sp-kb2-search__field input{color:#214d51!important;background:transparent!important}
.sp-site .sp3.sp3-subpage.sp-kb2 .sp-kb2-topics{background:linear-gradient(140deg,#f5f1eb,#ece5db)!important;padding:34px 0!important}
.sp-site .sp3.sp3-subpage.sp-kb2 .sp-kb2-topics__grid{gap:14px!important;border:0!important}
.sp-site .sp3.sp3-subpage.sp-kb2 .sp-kb2-topic{background:linear-gradient(135deg,#ffffffc9,#eff9fc70)!important;border:1px solid #ffffffdc!important;border-radius:18px!important;box-shadow:inset 0 1px #ffffff,0 10px 23px #305b5f0d!important;padding:20px!important}
.sp-site .sp3.sp3-subpage.sp-kb2 .sp-kb2-topic:nth-child(2n){background:linear-gradient(135deg,#f6ece0bb,#faf5ee85)!important}
.sp-site .sp3.sp3-subpage.sp-kb2 .sp-kb2-topic:is(:hover,:focus-within){background:linear-gradient(135deg,#fff9f2,#f0e5d6)!important;box-shadow:0 15px 28px #2c555920!important}
@media(max-width:760px){.sp-site .sp3.sp3-subpage.sp-kb2 .sp-kb2-hero{padding:32px 0!important}.sp-site .sp3.sp3-subpage.sp-kb2 .sp-kb2-searchbox__content{padding:22px!important}}

.sp-site .sp3.sp3-subpage.sp-kb2 .sp-kb2-hero h1{font-size:clamp(38px,3.8vw,56px)!important;line-height:1.12!important}.sp-site .sp3.sp3-subpage.sp-kb2 .sp-kb2-searchbox__top small{color:#faf1e6!important}

/* Legal documents: original text, typography and surfaces of the current theme. */
.sp-site .sp3-legal-page{background:#efeae4!important;color:#1f2e30!important}
.sp-site .sp3-legal-page .sp-legal-hero{padding:44px 0 32px!important;background:radial-gradient(ellipse at 85% 15%,#cbab9155,transparent 55%),linear-gradient(120deg,#e8e1d8,#e2eff0)!important;border-bottom:1px solid #d8cec2!important}
.sp-site .sp3-legal-page .sp-legal-hero:before,.sp-site .sp3-legal-page .sp-legal-hero:after{display:none!important}
.sp-site .sp3-legal-page h1{font-size:clamp(34px,3.5vw,52px)!important;line-height:1.12!important;letter-spacing:-1.3px!important;color:#1f2e30!important;margin:12px 0 18px!important}
.sp-site .sp3-legal-page .sp-legal-hero p{font-size:18px!important;line-height:1.65!important;color:#40666a!important;max-width:880px!important}
.sp-site .sp3-legal-page .sp-legal-hero .sp-section-kicker{font-size:13px!important;letter-spacing:1.2px!important;color:#2c98a3!important;font-weight:700!important}
.sp-site .sp3-legal-page .sp-legal-hero>div>span{display:block;color:#517477!important;font-size:14px!important;margin:14px 0 0!important}
.sp-site .sp3-legal-page .sp-legal-switcher{display:flex!important;flex-wrap:wrap!important;gap:10px!important;margin-top:24px!important}
.sp-site .sp3-legal-page .sp-legal-switcher a{display:block;padding:10px 16px!important;background:#ffffff70!important;border:1px solid #d3c8b9!important;border-radius:10px!important;color:#25565b!important;line-height:1.5!important;font-size:16px!important;backdrop-filter:blur(16px);transition:background .2s,color .2s,transform .2s}
.sp-site .sp3-legal-page .sp-legal-switcher a[aria-current=page]{background:#2c98a3!important;border-color:#2c98a3!important;color:#ffffff!important}
.sp-site .sp3-legal-page .sp-legal-switcher a:is(:hover,:focus-visible){background:#25565b!important;color:#ffffff!important;transform:translateY(-2px)}
.sp-site .sp3-legal-page .sp-legal{background:#efeae4!important;padding:36px 0 48px!important}
.sp-site .sp3-legal-page .sp-legal__layout{display:grid!important;grid-template-columns:235px minmax(0,900px)!important;justify-content:center;gap:30px!important;align-items:start!important}
.sp-site .sp3-legal-page .sp-legal__toc{position:sticky!important;top:24px!important;padding:22px!important;background:#e5dcd180!important;backdrop-filter:blur(18px);border:1px solid #d2c7b8!important;border-radius:16px!important;box-shadow:inset 0 1px 0 #ffffff90!important}
.sp-site .sp3-legal-page .sp-legal__toc:before,.sp-site .sp3-legal-page .sp-legal__toc:after{display:none!important}
.sp-site .sp3-legal-page .sp-legal__toc strong{display:block;margin-bottom:12px;color:#1f2e30!important;font-size:17px!important}
.sp-site .sp3-legal-page .sp-legal__toc a{display:block;color:#346165!important;font-size:16px!important;line-height:1.5!important;padding:8px 0!important;border-bottom:1px solid #d3c8ba60;overflow-wrap:anywhere}
.sp-site .sp3-legal-page .sp-legal__toc a:is(:hover,:focus-visible){color:#2c98a3!important;text-decoration:underline;text-underline-offset:4px}
.sp-site .sp3-legal-page .sp-legal__content{width:100%!important;max-width:900px!important;min-width:0!important;padding:8px 34px 20px!important;background:#e9f2f3!important;border:1px solid #dbd2c6!important;border-radius:18px!important;box-shadow:0 14px 30px #21464a0c!important;overflow-wrap:anywhere}
.sp-site .sp3-legal-page .sp-legal__content section{padding:24px 0!important;border-bottom:1px solid #dfd8ce!important;scroll-margin-top:28px}
.sp-site .sp3-legal-page .sp-legal__content section:last-child{border-bottom:0!important}
.sp-site .sp3-legal-page .sp-legal__content h2{font-size:clamp(23px,2vw,28px)!important;line-height:1.3!important;color:#214e52!important;margin:0 0 16px!important;letter-spacing:-.3px!important}
.sp-site .sp3-legal-page .sp-legal__content :is(p,li){color:#335659!important;font-size:18px!important;line-height:1.75!important}
.sp-site .sp3-legal-page .sp-legal__content p{margin:0 0 16px!important}
.sp-site .sp3-legal-page .sp-legal__content :is(ul,ol){padding-left:24px!important;margin:12px 0 20px!important}
.sp-site .sp3-legal-page .sp-legal__content li{margin:7px 0!important}
.sp-site .sp3-legal-page .sp-legal__content a{color:#2c98a3!important;text-decoration:underline;text-underline-offset:3px}
.sp-site .sp3-legal-page a:focus-visible{outline:3px solid #2c98a3;outline-offset:4px}
@media(max-width:900px){.sp-site .sp3-legal-page .sp-legal__layout{grid-template-columns:1fr!important;gap:24px!important}.sp-site .sp3-legal-page .sp-legal__toc{position:static!important}.sp-site .sp3-legal-page .sp-legal__toc a{display:inline-block;margin-right:20px}.sp-site .sp3-legal-page .sp-legal__content{max-width:none!important}}
@media(max-width:600px){.sp-site .sp3-legal-page .sp-legal-hero{padding:30px 0!important}.sp-site .sp3-legal-page .sp-legal__content{padding:4px 20px 14px!important}.sp-site .sp3-legal-page .sp-legal__toc{padding:18px!important}.sp-site .sp3-legal-page .sp-legal-switcher{display:grid!important;grid-template-columns:1fr!important}.sp-site .sp3-legal-page .sp-legal-switcher a{font-size:16px!important}.sp-site .sp3-legal-page .sp-legal{padding:24px 0 32px!important}}
@media(prefers-reduced-motion:reduce){.sp-site .sp3-legal-page .sp-legal-switcher a{transition:none!important;transform:none!important}}

.sp-site .sp-brand img{filter:sepia(1) saturate(1.2) hue-rotate(338deg)}

.sp-site .sp-navbar{background:linear-gradient(110deg,#fbf6ee,#f1e5d4)!important}.sp-site .sp-brand__visual{filter:sepia(1) saturate(1.5) hue-rotate(338deg)!important}.sp-site .sp3-hero{background:radial-gradient(ellipse at 86% 15%,#c89f7750,transparent 48%),#f7f0e5!important}.sp-site .sp3 .sp3-category-paper{background:linear-gradient(125deg,#ead8bd,#f4e9d9)!important}.sp-site .sp3-brands,.sp-site .sp3-process{background:#faf4eb!important}

/* 4.3.1 — jasny piasek, miedziany akcent i ciemny turkus. */
:root{--sp3-ink:#12373e;--sp3-text:#53666a;--sp3-teal:#b6602d;--sp3-wash:#faf7f0;--sp3-line:#e1d8c9}
.sp-site .sp-topbar{background:#e9e3d8!important;color:#314b50!important}.sp-site .sp-topbar__item{color:#314b50!important}.sp-site .sp-topbar__icon{color:#b6602d!important}
.sp-site .sp-navbar{background:linear-gradient(110deg,#fcfaf5,#f4ede1)!important}
.sp-site .sp3-hero{background:radial-gradient(ellipse at 86% 20%,#e3d1b850,transparent 55%),#faf6ed!important}
.sp-site .sp3-shop{background:#f1e9da!important}.sp-site .sp3-services,.sp-site .sp3-brands,.sp-site .sp3-process{background:#faf7f0!important}
.sp-site .sp3 :is(.sp3-btn:not(.sp3-btn-outline),.sp3-service-teal){background:linear-gradient(125deg,#c87638,#289da9)!important;color:#fff!important}
.sp-site .sp3 :is(.sp3-category-ink,.sp3-service-dark){background:linear-gradient(125deg,#165961,#0d434a)!important}
.sp-site .sp3 .sp3-service-light{background:linear-gradient(130deg,#ffffffb8,#eee7d8a0)!important;border:1px solid #fff!important;backdrop-filter:blur(20px)}
.sp-site .sp3 .sp3-category-paper{background:linear-gradient(130deg,#f7f0e5d9,#e8dcc6a0)!important;border:1px solid #fff!important}
.sp-site .sp3 .sp3-steps-premium li{background:linear-gradient(130deg,#ffffffbe,#ece3d1a8)!important;border:1px solid #fff!important;backdrop-filter:blur(20px)}
.sp-site .sp3 .sp3-steps-premium li:last-child{background:linear-gradient(125deg,#225d6490,#0d4a53c9)!important;color:#fff!important}.sp-site .sp3 .sp3-steps-premium li:last-child :is(h3,p){color:#fff!important}
.sp-site .sp3-contact{position:relative;background:linear-gradient(90deg,#0c424aee,#0c424a75),url('../images/hp-designjet-t250.webp') right center/auto 140% no-repeat,#0c424a!important;padding:40px 0!important}
.sp-site .sp3 .sp3-contact-panel{background:linear-gradient(120deg,#144d56b8,#2e687384)!important;border:1px solid #d9ffff60!important;border-radius:26px!important;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);box-shadow:inset 0 1px #ffffff40,0 18px 36px #05272c30!important}
.sp-site .sp3-contact-panel:before{display:none!important}.sp-site .sp3 .sp3-contact-panel .sp3-kicker{color:#eab783!important}
.sp-site .sp3 .sp3-contact-card{background:linear-gradient(125deg,#ffffff29,#ffffff0a)!important;border:1px solid #d9ffff65!important;box-shadow:inset 0 1px #ffffff40;backdrop-filter:blur(14px)}
.sp-site .sp3 .sp3-contact-panel .sp3-btn{background:linear-gradient(125deg,#c87638,#289da9)!important;color:#fff!important;border-color:#e2a06a!important}
.sp-site .sp-footer{background:#103e45!important}.sp-site .sp3 .sp3-brand-card--other{background:#164e56!important}
.sp-site .sp3 .sp3-service-dark p,.sp-site .sp3 .sp3-category-ink p{color:#d8eef0!important}
@media(max-width:760px){.sp-site .sp3-contact{background-size:auto,auto 100%!important;padding:28px 0!important}}

.sp-site .sp3-contact{background-blend-mode:normal,multiply,normal!important}.sp-site .sp3-image-caption{background:linear-gradient(120deg,#134c55ad,#376b7480)!important;border-color:#ffffff65!important;backdrop-filter:blur(18px)}.sp-site .sp3-brand-row>a:last-child{background:#164e56!important}

/* 4.3.2 — smuklejszy glass i czytelniejszy ploter w tle kontaktu. */
.sp-site .sp3-contact{background:#104a52!important;isolation:isolate;margin-bottom:18px!important;padding:32px 0!important}
.sp-site .sp3-contact:before{content:"";position:absolute;z-index:-1;inset:0 0 0 30%;background:url('../images/hp-designjet-t250.webp') right center/auto 135% no-repeat;opacity:.72;mix-blend-mode:luminosity;mask-image:linear-gradient(90deg,transparent,#000 55%);-webkit-mask-image:linear-gradient(90deg,transparent,#000 55%);pointer-events:none}
.sp-site .sp3 .sp3-contact-panel{width:min(100%,1120px)!important;margin:0 auto!important;padding:25px 30px!important;gap:32px!important;background:linear-gradient(115deg,#124d5560,#29656c35)!important;border-color:#edffff65!important;backdrop-filter:blur(5px)!important;-webkit-backdrop-filter:blur(5px)!important;box-shadow:inset 0 1px #ffffff35,0 12px 26px #06282d20!important}
.sp-site .sp3 .sp3-contact-panel h2{font-size:clamp(28px,2.5vw,34px)!important;margin-bottom:12px!important}
.sp-site .sp3 .sp3-contact-copy>p:not(.sp3-kicker){margin-bottom:14px!important}
.sp-site .sp3 .sp3-contact-card{padding:11px 15px!important;background:linear-gradient(120deg,#ffffff25,#ffffff0b)!important;backdrop-filter:blur(8px)!important}
.sp-site .sp3 .sp3-contact-card>strong{font-size:23px!important;margin-top:5px!important}
.sp-site .sp3 .sp3-contact-methods{gap:8px!important}
@media(max-width:760px){.sp-site .sp3 .sp3-contact-panel{padding:23px 20px!important;gap:20px!important}.sp-site .sp3-contact:before{left:0;background-size:auto 100%;opacity:.45}.sp-site .sp3-contact{margin-bottom:14px!important;padding:26px 0!important}}

.sp-site .sp3-contact:before{background-size:cover!important;background-position:center 45%!important;opacity:.55;mask-image:linear-gradient(90deg,transparent,#000 75%);-webkit-mask-image:linear-gradient(90deg,transparent,#000 75%)}

/* 4.3.3 — głębszy rudy wyłącznie w karcie Części. */
.sp-site .sp3 .sp3-service-teal{background:linear-gradient(125deg,#279da9,#1f7e87)!important;border-color:#be785580!important}.sp-site .sp3 .sp3-service-teal p{color:#fff1e8!important}

/* 4.3.4 — subtelna interakcja szklanych kontaktów. */
.sp-site .sp3 .sp3-contact-methods>a{transition:transform .22s ease,background .22s ease,box-shadow .22s ease,border-color .22s ease!important}
@media(hover:hover) and (pointer:fine){.sp-site .sp3 .sp3-contact-methods>a:hover{transform:translateY(-3px)!important;background:linear-gradient(125deg,#ffffff38,#ffffff18)!important;border-color:#f1ffffb0!important;box-shadow:inset 0 1px #ffffff75,0 8px 18px #062a3025!important}}
.sp-site .sp3 .sp3-contact-methods>a:focus-visible{outline:2px solid #f4c493;outline-offset:3px;background:#ffffff25!important}
.sp-site .sp3 .sp3-contact-methods>a:active{transform:translateY(-1px)}
@media(max-width:760px){.sp-site .sp3 .sp3-contact-methods{min-width:0;width:100%}.sp-site .sp3 .sp3-contact-methods>a{min-width:0;max-width:100%;box-sizing:border-box}.sp-site .sp3 .sp3-contact-mail>strong{overflow-wrap:anywhere}}
@media(prefers-reduced-motion:reduce){.sp-site .sp3 .sp3-contact-methods>a{transition:none!important;transform:none!important}}

@media(max-width:360px){.sp-site .sp-topbar__item{font-size:12px!important}.sp-site .sp3-category{overflow:hidden!important}}

/* 4.3.5 — spójne zaokrąglenia kontaktu i wyraźniejsze kolory usług. */
.sp-site .sp3 .sp3-contact-methods>a{border-radius:12px!important}
.sp-site .sp3 .sp3-service.sp3-service-teal{background:radial-gradient(ellipse at 15% 0%,#be68363d,transparent 65%),linear-gradient(135deg,#208d98,#1c6e76)!important;border-color:#bd785960!important;box-shadow:inset 0 1px #e7a47635,0 14px 30px #1d697120!important}
.sp-site .sp3 .sp3-service.sp3-service-light{background:linear-gradient(130deg,#e9dcc5,#d8c4a4)!important;border-color:#f8eedb!important;box-shadow:inset 0 1px #fff7e8a0,0 14px 30px #41747914!important}
.sp-site .sp3 .sp3-service.sp3-service-light p{color:#43565a!important}

.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-srv2-cta{position:relative;isolation:isolate;background:#104a52!important;margin-bottom:18px!important;padding:32px 0!important;overflow:hidden}
.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-srv2-cta:before{content:"";position:absolute;inset:0 0 0 30%;z-index:-1;background:url('../images/hp-designjet-t250.webp') center 45%/cover no-repeat;opacity:.55;mix-blend-mode:luminosity;mask-image:linear-gradient(90deg,transparent,#000 75%);pointer-events:none}
.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-srv2-cta__panel{position:relative;z-index:1;width:min(calc(100% - 48px),1120px)!important;margin:0 auto!important;padding:25px 30px!important;background:linear-gradient(115deg,#124d5560,#29656c35)!important;border:1px solid #edffff65!important;border-radius:22px!important;box-shadow:inset 0 1px #ffffff35,0 12px 26px #06282d20!important;backdrop-filter:blur(5px)!important}
.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-srv2-cta :is(h2,h3,p){color:#f4ffff!important}
.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-srv2-cta a[href^="tel:"]{color:#fff!important;background:linear-gradient(125deg,#ffffff25,#ffffff0b)!important;border:1px solid #edffff65!important;border-radius:12px!important;backdrop-filter:blur(8px);transition:transform .22s,background .22s,box-shadow .22s!important}
@media(hover:hover) and (pointer:fine){.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-srv2-cta a[href^="tel:"]:hover{transform:translateY(-3px);background:#ffffff30!important;box-shadow:0 8px 18px #062a3025}}
@media(max-width:760px){.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-srv2-cta{padding:26px 0!important;margin-bottom:14px!important}.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-srv2-cta:before{left:0;opacity:.4}.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-srv2-cta__panel{width:calc(100% - 32px)!important;padding:23px 20px!important;box-sizing:border-box}}

.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-plt2-cta{position:relative;isolation:isolate;background:#104a52!important;margin-bottom:18px!important;padding:32px 0!important;overflow:hidden}
.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-plt2-cta:before{content:"";position:absolute;inset:0 0 0 30%;z-index:-1;background:url('../images/hp-designjet-t250.webp') center 45%/cover no-repeat;opacity:.55;mix-blend-mode:luminosity;mask-image:linear-gradient(90deg,transparent,#000 75%);pointer-events:none}
.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-plt2-cta__panel{position:relative;z-index:1;width:min(calc(100% - 48px),1120px)!important;margin:0 auto!important;padding:25px 30px!important;background:linear-gradient(115deg,#124d5560,#29656c35)!important;border:1px solid #edffff65!important;border-radius:22px!important;box-shadow:inset 0 1px #ffffff35,0 12px 26px #06282d20!important;backdrop-filter:blur(5px)!important}
.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-plt2-cta :is(h2,h3,p){color:#f4ffff!important}
.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-plt2-cta a[href^="tel:"]{color:#fff!important;background:linear-gradient(125deg,#ffffff25,#ffffff0b)!important;border:1px solid #edffff65!important;border-radius:12px!important;backdrop-filter:blur(8px);transition:transform .22s,background .22s,box-shadow .22s!important}
@media(hover:hover) and (pointer:fine){.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-plt2-cta a[href^="tel:"]:hover{transform:translateY(-3px);background:#ffffff30!important;box-shadow:0 8px 18px #062a3025}}
@media(max-width:760px){.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-plt2-cta{padding:26px 0!important;margin-bottom:14px!important}.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-plt2-cta:before{left:0;opacity:.4}.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-plt2-cta__panel{width:calc(100% - 32px)!important;padding:23px 20px!important;box-sizing:border-box}}

.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-prt2-cta{position:relative;isolation:isolate;background:#104a52!important;margin-bottom:18px!important;padding:32px 0!important;overflow:hidden}
.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-prt2-cta:before{content:"";position:absolute;inset:0 0 0 30%;z-index:-1;background:url('../images/hp-designjet-t250.webp') center 45%/cover no-repeat;opacity:.55;mix-blend-mode:luminosity;mask-image:linear-gradient(90deg,transparent,#000 75%);pointer-events:none}
.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-prt2-cta__panel{position:relative;z-index:1;width:min(calc(100% - 48px),1120px)!important;margin:0 auto!important;padding:25px 30px!important;background:linear-gradient(115deg,#124d5560,#29656c35)!important;border:1px solid #edffff65!important;border-radius:22px!important;box-shadow:inset 0 1px #ffffff35,0 12px 26px #06282d20!important;backdrop-filter:blur(5px)!important}
.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-prt2-cta :is(h2,h3,p){color:#f4ffff!important}
.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-prt2-cta a[href^="tel:"]{color:#fff!important;background:linear-gradient(125deg,#ffffff25,#ffffff0b)!important;border:1px solid #edffff65!important;border-radius:12px!important;backdrop-filter:blur(8px);transition:transform .22s,background .22s,box-shadow .22s!important}
@media(hover:hover) and (pointer:fine){.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-prt2-cta a[href^="tel:"]:hover{transform:translateY(-3px);background:#ffffff30!important;box-shadow:0 8px 18px #062a3025}}
@media(max-width:760px){.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-prt2-cta{padding:26px 0!important;margin-bottom:14px!important}.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-prt2-cta:before{left:0;opacity:.4}.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-prt2-cta__panel{width:calc(100% - 32px)!important;padding:23px 20px!important;box-sizing:border-box}}

.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-b2b2-cta{position:relative;isolation:isolate;background:#104a52!important;margin-bottom:18px!important;padding:32px 0!important;overflow:hidden}
.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-b2b2-cta:before{content:"";position:absolute;inset:0 0 0 30%;z-index:-1;background:url('../images/hp-designjet-t250.webp') center 45%/cover no-repeat;opacity:.55;mix-blend-mode:luminosity;mask-image:linear-gradient(90deg,transparent,#000 75%);pointer-events:none}
.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-b2b2-cta__panel{position:relative;z-index:1;width:min(calc(100% - 48px),1120px)!important;margin:0 auto!important;padding:25px 30px!important;background:linear-gradient(115deg,#124d5560,#29656c35)!important;border:1px solid #edffff65!important;border-radius:22px!important;box-shadow:inset 0 1px #ffffff35,0 12px 26px #06282d20!important;backdrop-filter:blur(5px)!important}
.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-b2b2-cta :is(h2,h3,p){color:#f4ffff!important}
.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-b2b2-cta a[href^="tel:"]{color:#fff!important;background:linear-gradient(125deg,#ffffff25,#ffffff0b)!important;border:1px solid #edffff65!important;border-radius:12px!important;backdrop-filter:blur(8px);transition:transform .22s,background .22s,box-shadow .22s!important}
@media(hover:hover) and (pointer:fine){.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-b2b2-cta a[href^="tel:"]:hover{transform:translateY(-3px);background:#ffffff30!important;box-shadow:0 8px 18px #062a3025}}
@media(max-width:760px){.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-b2b2-cta{padding:26px 0!important;margin-bottom:14px!important}.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-b2b2-cta:before{left:0;opacity:.4}.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-b2b2-cta__panel{width:calc(100% - 32px)!important;padding:23px 20px!important;box-sizing:border-box}}

.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-about2-cta{position:relative;isolation:isolate;background:#104a52!important;margin-bottom:18px!important;padding:32px 0!important;overflow:hidden}
.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-about2-cta:before{content:"";position:absolute;inset:0 0 0 30%;z-index:-1;background:url('../images/hp-designjet-t250.webp') center 45%/cover no-repeat;opacity:.55;mix-blend-mode:luminosity;mask-image:linear-gradient(90deg,transparent,#000 75%);pointer-events:none}
.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-about2-cta__panel{position:relative;z-index:1;width:min(calc(100% - 48px),1120px)!important;margin:0 auto!important;padding:25px 30px!important;background:linear-gradient(115deg,#124d5560,#29656c35)!important;border:1px solid #edffff65!important;border-radius:22px!important;box-shadow:inset 0 1px #ffffff35,0 12px 26px #06282d20!important;backdrop-filter:blur(5px)!important}
.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-about2-cta :is(h2,h3,p){color:#f4ffff!important}
.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-about2-cta a[href^="tel:"]{color:#fff!important;background:linear-gradient(125deg,#ffffff25,#ffffff0b)!important;border:1px solid #edffff65!important;border-radius:12px!important;backdrop-filter:blur(8px);transition:transform .22s,background .22s,box-shadow .22s!important}
@media(hover:hover) and (pointer:fine){.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-about2-cta a[href^="tel:"]:hover{transform:translateY(-3px);background:#ffffff30!important;box-shadow:0 8px 18px #062a3025}}
@media(max-width:760px){.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-about2-cta{padding:26px 0!important;margin-bottom:14px!important}.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-about2-cta:before{left:0;opacity:.4}.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-about2-cta__panel{width:calc(100% - 32px)!important;padding:23px 20px!important;box-sizing:border-box}}

.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-hp2-cta{position:relative;isolation:isolate;background:#104a52!important;margin-bottom:18px!important;padding:32px 0!important;overflow:hidden}
.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-hp2-cta:before{content:"";position:absolute;inset:0 0 0 30%;z-index:-1;background:url('../images/hp-designjet-t250.webp') center 45%/cover no-repeat;opacity:.55;mix-blend-mode:luminosity;mask-image:linear-gradient(90deg,transparent,#000 75%);pointer-events:none}
.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-hp2-cta__panel{position:relative;z-index:1;width:min(calc(100% - 48px),1120px)!important;margin:0 auto!important;padding:25px 30px!important;background:linear-gradient(115deg,#124d5560,#29656c35)!important;border:1px solid #edffff65!important;border-radius:22px!important;box-shadow:inset 0 1px #ffffff35,0 12px 26px #06282d20!important;backdrop-filter:blur(5px)!important}
.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-hp2-cta :is(h2,h3,p){color:#f4ffff!important}
.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-hp2-cta a[href^="tel:"]{color:#fff!important;background:linear-gradient(125deg,#ffffff25,#ffffff0b)!important;border:1px solid #edffff65!important;border-radius:12px!important;backdrop-filter:blur(8px);transition:transform .22s,background .22s,box-shadow .22s!important}
@media(hover:hover) and (pointer:fine){.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-hp2-cta a[href^="tel:"]:hover{transform:translateY(-3px);background:#ffffff30!important;box-shadow:0 8px 18px #062a3025}}
@media(max-width:760px){.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-hp2-cta{padding:26px 0!important;margin-bottom:14px!important}.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-hp2-cta:before{left:0;opacity:.4}.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-hp2-cta__panel{width:calc(100% - 32px)!important;padding:23px 20px!important;box-sizing:border-box}}

.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-canon2-cta{position:relative;isolation:isolate;background:#104a52!important;margin-bottom:18px!important;padding:32px 0!important;overflow:hidden}
.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-canon2-cta:before{content:"";position:absolute;inset:0 0 0 30%;z-index:-1;background:url('../images/hp-designjet-t250.webp') center 45%/cover no-repeat;opacity:.55;mix-blend-mode:luminosity;mask-image:linear-gradient(90deg,transparent,#000 75%);pointer-events:none}
.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-canon2-cta__panel{position:relative;z-index:1;width:min(calc(100% - 48px),1120px)!important;margin:0 auto!important;padding:25px 30px!important;background:linear-gradient(115deg,#124d5560,#29656c35)!important;border:1px solid #edffff65!important;border-radius:22px!important;box-shadow:inset 0 1px #ffffff35,0 12px 26px #06282d20!important;backdrop-filter:blur(5px)!important}
.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-canon2-cta :is(h2,h3,p){color:#f4ffff!important}
.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-canon2-cta a[href^="tel:"]{color:#fff!important;background:linear-gradient(125deg,#ffffff25,#ffffff0b)!important;border:1px solid #edffff65!important;border-radius:12px!important;backdrop-filter:blur(8px);transition:transform .22s,background .22s,box-shadow .22s!important}
@media(hover:hover) and (pointer:fine){.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-canon2-cta a[href^="tel:"]:hover{transform:translateY(-3px);background:#ffffff30!important;box-shadow:0 8px 18px #062a3025}}
@media(max-width:760px){.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-canon2-cta{padding:26px 0!important;margin-bottom:14px!important}.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-canon2-cta:before{left:0;opacity:.4}.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-canon2-cta__panel{width:calc(100% - 32px)!important;padding:23px 20px!important;box-sizing:border-box}}

.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-epson3-cta{position:relative;isolation:isolate;background:#104a52!important;margin-bottom:18px!important;padding:32px 0!important;overflow:hidden}
.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-epson3-cta:before{content:"";position:absolute;inset:0 0 0 30%;z-index:-1;background:url('../images/hp-designjet-t250.webp') center 45%/cover no-repeat;opacity:.55;mix-blend-mode:luminosity;mask-image:linear-gradient(90deg,transparent,#000 75%);pointer-events:none}
.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-epson3-cta__glass{position:relative;z-index:1;width:min(calc(100% - 48px),1120px)!important;margin:0 auto!important;padding:25px 30px!important;background:linear-gradient(115deg,#124d5560,#29656c35)!important;border:1px solid #edffff65!important;border-radius:22px!important;box-shadow:inset 0 1px #ffffff35,0 12px 26px #06282d20!important;backdrop-filter:blur(5px)!important}
.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-epson3-cta :is(h2,h3,p){color:#f4ffff!important}
.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-epson3-cta a[href^="tel:"]{color:#fff!important;background:linear-gradient(125deg,#ffffff25,#ffffff0b)!important;border:1px solid #edffff65!important;border-radius:12px!important;backdrop-filter:blur(8px);transition:transform .22s,background .22s,box-shadow .22s!important}
@media(hover:hover) and (pointer:fine){.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-epson3-cta a[href^="tel:"]:hover{transform:translateY(-3px);background:#ffffff30!important;box-shadow:0 8px 18px #062a3025}}
@media(max-width:760px){.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-epson3-cta{padding:26px 0!important;margin-bottom:14px!important}.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-epson3-cta:before{left:0;opacity:.4}.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-epson3-cta__glass{width:calc(100% - 32px)!important;padding:23px 20px!important;box-sizing:border-box}}

.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-kb2-boundary{position:relative;isolation:isolate;background:#104a52!important;margin-bottom:18px!important;padding:32px 0!important;overflow:hidden}
.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-kb2-boundary:before{content:"";position:absolute;inset:0 0 0 30%;z-index:-1;background:url('../images/hp-designjet-t250.webp') center 45%/cover no-repeat;opacity:.55;mix-blend-mode:luminosity;mask-image:linear-gradient(90deg,transparent,#000 75%);pointer-events:none}
.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-kb2-boundary__panel{position:relative;z-index:1;width:min(calc(100% - 48px),1120px)!important;margin:0 auto!important;padding:25px 30px!important;background:linear-gradient(115deg,#124d5560,#29656c35)!important;border:1px solid #edffff65!important;border-radius:22px!important;box-shadow:inset 0 1px #ffffff35,0 12px 26px #06282d20!important;backdrop-filter:blur(5px)!important}
.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-kb2-boundary :is(h2,h3,p){color:#f4ffff!important}
.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-kb2-boundary a[href^="tel:"]{color:#fff!important;background:linear-gradient(125deg,#ffffff25,#ffffff0b)!important;border:1px solid #edffff65!important;border-radius:12px!important;backdrop-filter:blur(8px);transition:transform .22s,background .22s,box-shadow .22s!important}
@media(hover:hover) and (pointer:fine){.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-kb2-boundary a[href^="tel:"]:hover{transform:translateY(-3px);background:#ffffff30!important;box-shadow:0 8px 18px #062a3025}}
@media(max-width:760px){.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-kb2-boundary{padding:26px 0!important;margin-bottom:14px!important}.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-kb2-boundary:before{left:0;opacity:.4}.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-kb2-boundary__panel{width:calc(100% - 32px)!important;padding:23px 20px!important;box-sizing:border-box}}

/* Consistent rust actions, turquoise type, sand glass. */
.sp-site .sp3 :is(.spv2g-btn--gradient,.sp-epson3-btn--copper){background:linear-gradient(125deg,#c87638,#a95328)!important;color:#fff!important;border-color:#e2a06a!important}
.sp-site .sp3 :is(.spv2g-btn,.sp-epson3-btn):is(:hover,:focus-visible){background:#104a52!important;color:#fff!important;border-color:#39727a!important}
.sp-site .sp3 :is(.spv2g-kicker,.sp-epson3-kicker):not([class*="--light"]){color:#a95328!important}
.sp-site .sp3 .sp-epson3-cta__photo,.sp-site .sp3 .sp-epson3-cta__veil{display:none!important}
@media(prefers-reduced-motion:reduce){.sp-site .sp3 a[href^="tel:"]{transition:none!important;transform:none!important}}

.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 section[class$="-hero"]{background:radial-gradient(ellipse at 85% 20%,#e3d1b850,transparent 60%),#faf6ed!important}
.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 h1 :is(em,span){color:#a95328!important}
.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 :is(.spv2g-btn--gradient,.sp-epson3-btn--copper){background:linear-gradient(125deg,#c87638,#a95328)!important;color:#fff!important}
.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .spv2g-btn--glass{background:linear-gradient(125deg,#ffffff80,#eddfc85c)!important;color:#12373e!important;border-color:#fff!important;backdrop-filter:blur(14px)}
.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 :is(.spv2g-btn,.sp-epson3-btn):is(:hover,:focus-visible){background:#104a52!important;color:#fff!important;border-color:#39727a!important}
.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 h1 :is(em,span){background:none!important;-webkit-text-fill-color:#a95328!important;color:#a95328!important}
.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp3-btn:not(.sp3-btn-outline){background:linear-gradient(125deg,#c87638,#a95328)!important;color:#fff!important}
.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp3-contact-direct-grid>a:nth-child(2){background:linear-gradient(125deg,#a95328,#87391f)!important;color:#fff!important}
/* 4.3.7 — czytelny nagłówek firm i wyraźny ploter w panelu usług. */
.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-b2b2-hero h1{color:#12373e!important;-webkit-text-fill-color:#12373e!important}
.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-b2b2-hero__copy>p{color:#53666a!important}
.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-b2b2-hero__meta span{color:#314b50!important;background:#ffffff70!important;border-color:#d9cbb6!important}
.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp4214-hub-plotter{opacity:.88!important;right:-8px!important;bottom:0!important;width:57%!important;height:95%!important;mix-blend-mode:multiply;mask-image:linear-gradient(90deg,transparent,#000 24%,#000 92%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 24%,#000 92%,transparent)}
.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-b2b2-hub__main>:not(img){max-width:53%!important}
@media(max-width:760px){.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-b2b2-hub__main>:not(img){max-width:100%!important}.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp4214-hub-plotter{position:relative!important;display:block;width:100%!important;height:170px!important;right:auto!important;bottom:auto!important;margin:12px auto -12px!important;mask-image:linear-gradient(#000 85%,transparent);-webkit-mask-image:linear-gradient(#000 85%,transparent)}}
@media(min-width:761px){.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp4214-hub-plotter{width:52%!important;right:0!important;mask-image:radial-gradient(ellipse at 58% 52%,#000 45%,#0008 65%,transparent 85%);-webkit-mask-image:radial-gradient(ellipse at 58% 52%,#000 45%,#0008 65%,transparent 85%)}.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-b2b2-hub__main>:not(img){max-width:48%!important}}
/* 4.3.8 — kontrast jasnego nagłówka bazy wiedzy. */
.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-kb2-hero{background:radial-gradient(ellipse at 90% 15%,#dec9a955,transparent 60%),#f4ecde!important}
.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-kb2-hero :is(h1,h2){color:#12373e!important;-webkit-text-fill-color:#12373e!important;background:none!important}
.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-kb2-hero__copy>p{color:#43585d!important}
.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 :is(.sp-kb2-badge,.sp-kb2-hero__meta span){background:#ffffff85!important;color:#314b50!important;border-color:#d6c4a8!important}
.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-kb2-searchbox{background:linear-gradient(135deg,#e8d7bbd9,#dcc5a2b8)!important;border-color:#fff4df!important;box-shadow:inset 0 1px #ffffffa0,0 18px 35px #72563b20!important}
.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-kb2-searchbox__top :is(strong,small){color:#314b50!important}
.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-kb2-searchbox__content .spv2g-kicker{color:#98451f!important}
.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-kb2-searchbox__note{color:#43585d!important}
.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-kb2-search button{background:linear-gradient(125deg,#c87638,#a95328)!important;color:#fff!important}
.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-kb2-search button:is(:hover,:focus-visible){background:#104a52!important}
/* 4.3.9 — jasne tło treści wszystkich wpisów. */
.sp-site .sp3.sp3.sp3.sp3.sp3.sp3.sp3-article-page{background:#faf7f1!important;color:#43585d!important}
.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-article-body,.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-article__content{background:transparent!important}
.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-article__aside{background:linear-gradient(145deg,#e8dcc7,#dfccb0)!important;border:1px solid #f7eedf!important;border-radius:18px}
.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-article__aside-card{background:#fffaf2!important}
.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-article__aside-links{background:#fffdf8!important}
.sp-site .sp3.sp3.sp3.sp3.sp3.sp3 .sp-article-related{background:#f2eade!important}
