
/* =========================================================
   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(31, 77, 112, .12);
    --sp-line-strong: rgba(31, 77, 112, .20);
    --sp-text: #10283c;
    --sp-muted: #617488;
    --sp-blue: #08a9ba;
    --sp-blue-2: #1778c8;
    --sp-violet: #2d8bd5;
    --sp-pink: #00a7b8;
    --sp-shadow: 0 24px 70px rgba(33, 72, 99, .12);
}

html { background:#f5f8fb; }

body.sp-site {
    background:#f5f8fb;
    color:#10283c;
    font-family: Inter, Manrope, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

body.sp-site ::selection {
    background:rgba(8,169,186,.20);
    color:#0d2a3f;
}

/* =========================================================
   HEADER / TOPBAR / NAV
   ========================================================= */

.sp-header {
    background:#fff;
    border-bottom:1px solid #dce7ee;
    box-shadow:0 5px 24px rgba(29,66,91,.055);
}

.sp-topbar {
    background:#eef5f8;
    border-bottom:1px solid #dbe8ee;
}

.sp-topbar__item {
    color:#31516a;
    font-weight:700;
}

.sp-topbar__item:hover { color:#087f91; }
.sp-topbar__icon { color:#08a9ba; }

.sp-navbar {
    background:#fff;
}

.sp-brand__visual {
    background-image:url('../images/logo-serwisploterow-header-light.png');
}

.sp-nav > a:not(.sp-btn) {
    color:#163247;
}

.sp-nav > a:not(.sp-btn)::after {
    background:linear-gradient(90deg,#09aaba,#1979c8);
}

.sp-btn {
    border-radius:8px;
}

.sp-btn--header,
.sp-btn--primary {
    color:#fff;
    background:linear-gradient(100deg,#08adbb 0%,#0798b3 42%,#1978c8 100%);
    box-shadow:0 10px 26px rgba(14,132,167,.18);
}

.sp-btn--header:hover,
.sp-btn--primary:hover {
    box-shadow:0 14px 32px rgba(11,137,173,.24);
}

.sp-btn--secondary {
    color:#163247;
    border-color:#b8cad6;
    background:#fff;
    backdrop-filter:none;
    box-shadow:0 7px 20px rgba(34,72,98,.045);
}

.sp-btn--secondary:hover {
    color:#087f91;
    border-color:#08a9ba;
    background:#f4fbfc;
}

.sp-menu-toggle { color:#153449; }
.sp-menu-toggle__bars i { background:#153449; }

@media(max-width:1080px){
    .sp-nav {
        border-color:#d5e4eb;
        background:rgba(255,255,255,.995);
        box-shadow:0 18px 42px rgba(29,66,91,.14);
    }
}

/* =========================================================
   TYPOGRAPHY SHARED
   ========================================================= */

.sp-section-kicker,
.sp-eyebrow {
    color:#078fa1;
}

.sp-gradient-text {
    color:#0798aa;
    background:linear-gradient(90deg,#07aebb 0%,#0b9fbd 48%,#1778c8 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(3,177,193,.11),transparent 28%),
        radial-gradient(circle at 94% 76%,rgba(30,126,203,.075),transparent 25%),
        linear-gradient(112deg,#ffffff 0%,#fbfdff 50%,#eef8fb 100%);
    border-bottom:1px solid #dbe7ed;
}

.sp-hero::before {
    opacity:.48;
    background-image:
        linear-gradient(rgba(19,139,169,.055) 1px,transparent 1px),
        linear-gradient(90deg,rgba(19,139,169,.055) 1px,transparent 1px);
    mask-image:linear-gradient(to right,transparent,#000 57%,#000 100%);
}

.sp-hero__glow { opacity:.08; }
.sp-hero__glow--blue { background:#00a9ba; }
.sp-hero__glow--pink { background:#1a7fc8; }

.sp-hero h1 {
    color:#102b40;
    font-size:clamp(48px,4.2vw,72px);
}

.sp-hero__lead {
    color:#50687c;
}

.sp-hero__contact {
    color:#6b7d8d;
}

.sp-hero__contact a {
    color:#12364f;
}

.sp-hero__visual::before {
    border-color:rgba(5,169,187,.36);
    border-right-color:transparent;
    border-bottom-color:transparent;
    filter:drop-shadow(0 0 10px rgba(5,169,187,.16));
}

.sp-hero__visual-frame {
    border:1px solid rgba(31,77,112,.11);
    background:#fff;
    box-shadow:0 28px 70px rgba(29,66,91,.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,#07adbb,#1682c8,transparent);
    box-shadow:0 0 13px rgba(8,169,186,.28);
}

/* =========================================================
   HOME — TRUST
   ========================================================= */

.sp-trust {
    background:#fff;
    border-bottom:1px solid #dde8ee;
}

.sp-trust__item {
    border-color:#e0eaef !important;
}

.sp-trust__icon {
    border-color:rgba(8,169,186,.28);
    color:#0697a8;
    background:#f1fbfc;
    box-shadow:none;
}

.sp-trust__icon--pink {
    border-color:rgba(25,120,200,.22);
    color:#1878c5;
    background:#f2f8fd;
}

.sp-trust__item strong { color:#15344b; }
.sp-trust__item > div > span { color:#708297; }

/* =========================================================
   HOME — SECTION BACKGROUNDS
   ========================================================= */

.sp-needs,
.sp-brands,
.sp-parts,
.sp-plotter-buy,
.sp-process {
    background:
        radial-gradient(circle at 9% 20%,rgba(8,169,186,.045),transparent 24%),
        linear-gradient(180deg,#f4f8fb 0%,#f7fafc 100%);
    border-color:#dce7ed;
}

.sp-service,
.sp-materials,
.sp-final-cta {
    background:#fff;
    border-color:#dce7ed;
}

.sp-needs::before,
.sp-service::before {
    opacity:.16;
    background-image:
        linear-gradient(rgba(23,119,160,.055) 1px,transparent 1px),
        linear-gradient(90deg,rgba(23,119,160,.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:#102c42;
}

/* 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:#64788b;
}

/* =========================================================
   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:#d8e5ec;
    background:#fff;
    box-shadow:0 14px 34px rgba(31,68,94,.065);
}

.sp-need-card:hover,
.sp-brand-card:is(a):hover {
    border-color:rgba(8,169,186,.38);
    box-shadow:0 20px 42px rgba(31,68,94,.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:#15344a;
}

.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:#718397;
}

.sp-need-card__number,
.sp-service-card__number,
.sp-parts-step__number,
.sp-plotter-guide__number {
    color:#9eb1bf;
}

.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:#d5e3ea;
    background:#f6fafc;
    color:#607589;
}

.sp-service__panel {
    overflow:hidden;
}

.sp-service-card {
    border-color:#e0e9ee;
}

.sp-service-card:hover {
    background:#f6fbfc;
}

.sp-service-card h3 { color:#15344a; }
.sp-service-card p { color:#748699; }

.sp-service__panel-foot {
    border-color:#dde7ed;
    background:#f7fafc;
    color:#6f8397;
}

.sp-service__panel-foot a {
    color:#116f8e !important;
}

.sp-brand-card__top { color:#8a9aaa; }
.sp-brand-card__top span:first-child { color:#078fa2; }
.sp-brand-card::after {
    background:rgba(8,169,186,.05);
}
.sp-brand-card--canon,
.sp-brand-card--other {
    --brand-accent:#1882c7;
}
.sp-brand-card__link,
.sp-brand-card__button { color:#126f91 !important; }

.sp-brands__foot {
    border-color:#dbe6ec;
    background:#fff;
    color:#64788c;
}
.sp-brands__foot strong { color:#15344a; }

.sp-parts-finder__head,
.sp-parts-types__head,
.sp-materials__shop-head,
.sp-plotter-guide__top,
.sp-plotter-usecases__top {
    border-color:#dce7ed;
}

.sp-parts-finder__head > div,
.sp-materials__shop-head strong,
.sp-plotter-guide__top strong,
.sp-plotter-usecases__top strong {
    color:#17364c;
}

.sp-parts-finder__head > span,
.sp-materials__shop-head > span,
.sp-plotter-guide__top > span,
.sp-plotter-usecases__top > span {
    color:#8092a2;
}

.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:#177dc5;
    --part-accent:#177dc5;
    --material-accent:#177dc5;
    --guide-accent:#177dc5;
}

.sp-material-card:hover,
.sp-plotter-guide__step:hover {
    background:#f5fbfc;
}

.sp-materials__all {
    color:#16738d !important;
}

.sp-materials__route-line {
    background:#cbdde6;
}

.sp-materials__route-node {
    background:#fff;
    border-color:#c9dde6;
    color:#176e89;
}

.sp-plotter-guide::after,
.sp-plotter-usecases::after,
.sp-materials__shop::after {
    opacity:.16;
}

.sp-process__line {
    background:#d8e6ec;
}
.sp-process__line i {
    background:linear-gradient(90deg,#08a9ba,#1778c8);
    box-shadow:0 0 12px rgba(8,169,186,.12);
}

.sp-process-step__dot {
    border-color:#bcd4df;
    background:#fff;
}

.sp-final-cta__panel {
    background:
        radial-gradient(circle at 12% 50%,rgba(8,169,186,.055),transparent 30%),
        radial-gradient(circle at 90% 50%,rgba(25,120,200,.045),transparent 30%),
        #f8fbfc;
}

.sp-final-cta__phone span { color:#6e8293; }
.sp-final-cta__phone strong { color:#14354b; }

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

.sp-footer {
    border-top:1px solid #d8e5eb;
    background:#eef5f8;
    color:#617587;
}

.sp-footer__logo > span {
    background-image:url('../images/logo-serwisploterow-header-light.png');
}

.sp-footer__brand > p { color:#667b8d; }

.sp-footer__contact-links a {
    color:#16384f;
}

.sp-footer__nav > strong,
.sp-footer__locations > strong {
    color:#12344b;
}

.sp-footer__nav a { color:#63788a; }
.sp-footer__locations div span { color:#21445c; }
.sp-footer__locations p { color:#6c8193; }

.sp-footer__bottom {
    border-color:#d3e1e8;
    color:#738696;
}

.sp-footer__credit,
.sp-footer__network a { color:#5d7488; }
.sp-footer__network span { color:#8293a1; }

/* =========================================================
   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:#dbe7ed;
    background:
        radial-gradient(circle at 14% 26%,rgba(8,169,186,.075),transparent 29%),
        radial-gradient(circle at 88% 66%,rgba(25,120,200,.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:#102c42;
}

.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:#607588;
}

/* 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:#d7e4eb;
    background:#fff;
    box-shadow:0 16px 42px rgba(31,68,94,.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:#16364d !important;
}

.sp-service-page-hero__side li,
.sp-plotters-page-hero__steps li,
.sp-business-page-hero__panel li {
    color:#657a8d;
}

/* =========================================================
   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:#dce7ed;
    background:#fff;
}

/* 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:#123249;
}

/* 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:#65798c;
}

/* =========================================================
   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:#d9e5eb;
    background:#fff;
    box-shadow:0 12px 30px rgba(31,68,94,.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:#15354b !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:#6d8193;
}

/* 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:#d7e4eb;
    background:
        radial-gradient(circle at 10% 50%,rgba(8,169,186,.045),transparent 30%),
        #f7fbfc;
    box-shadow:0 12px 34px rgba(31,68,94,.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:#15364c;
}

/* =========================================================
   CONTACT / SERVICE FORMS
   ========================================================= */

.sp-contact-page__panel-head,
.sp-request__panel-head {
    border-color:#dce7ed;
}

.sp-contact-page__panel-head strong,
.sp-request__panel-head strong {
    color:#15364c;
}

.sp-contact-page__panel-head > span,
.sp-request__panel-head > span {
    color:#8496a6;
}

.sp-contact-page__direct,
.sp-request-contact,
.sp-request-checklist {
    border-color:#d9e5eb;
    background:#f7fafc;
}

.sp-contact-page__direct a,
.sp-request-contact a,
.sp-request__aside-call strong {
    color:#15364c !important;
}

.sp-field label {
    color:#28485f;
}

.sp-field input,
.sp-field textarea,
.sp-field select {
    border-color:#cfdde5 !important;
    background:#fff !important;
    color:#163348 !important;
    box-shadow:none !important;
}

.sp-field input::placeholder,
.sp-field textarea::placeholder {
    color:#9aabb8;
}

.sp-field input:focus,
.sp-field textarea:focus,
.sp-field select:focus {
    border-color:#08a9ba !important;
    box-shadow:0 0 0 3px rgba(8,169,186,.09) !important;
}

.sp-field--consent label {
    color:#61778a;
}

.sp-field--consent a {
    color:#087f91 !important;
}

.sp-service-form__foot {
    border-color:#dce7ed;
    background:#f7fafc;
}

.sp-service-form__foot strong { color:#25475f; }
.sp-service-form__foot span { color:#77899a; }

.sp-form-message--success {
    border-color:#bfe2d6;
    background:#f1fbf7;
    color:#23634f;
}
.sp-form-message--error {
    border-color:#ecd2d2;
    background:#fff7f7;
    color:#8b4747;
}

/* =========================================================
   KNOWLEDGE BASE / BLOG
   ========================================================= */

.sp-knowledge-hero__panel {
    background:#fff;
}

.sp-knowledge-search input {
    border-color:#ccdce4;
    background:#f8fbfc;
    color:#15364c;
}

.sp-knowledge-search button {
    background:linear-gradient(100deg,#08a9ba,#1778c8);
}

.sp-knowledge-topic--pink,
.sp-knowledge-topic--violet {
    --knowledge-accent:#177bc4;
}

/* keep image cards dark for readability over photos */
.sp-knowledge-card--visual {
    border-color:#cadbe4;
    box-shadow:0 18px 44px rgba(31,68,94,.12);
}

.sp-knowledge-card__category {
    background:linear-gradient(110deg,#079fab,#1779c5);
}

.sp-knowledge-card__number {
    background:linear-gradient(145deg,#068ea0,#1777c5);
}

.sp-knowledge-pagination a,
.sp-knowledge-pagination span {
    border-color:#d2e0e7;
    background:#fff;
    color:#5e7487 !important;
}

.sp-knowledge-pagination .current {
    background:linear-gradient(100deg,#08a9ba,#1778c8);
}

/* single article */
.sp-article-hero__category {
    background:linear-gradient(110deg,#079fab,#1779c5);
}

.sp-article__back { color:#56788f !important; }
.sp-article-hero__meta { color:#71889a; }
.sp-article-hero__phone small { color:#768d9e; }
.sp-article-hero__phone strong { color:#15364c; }

.sp-article__content {
    color:#475f73;
}

.sp-article__content strong { color:#16364c; }

.sp-article__content blockquote {
    border-color:#08a9ba;
    background:#f1fafb;
    color:#39576d;
}

.sp-article__content table {
    border-color:#d7e4ea;
    background:#fff;
}

.sp-article__content th,
.sp-article__content td {
    border-color:#dce7ed;
}

.sp-article__content th {
    color:#16364c;
    background:#f2f7f9;
}

.sp-article__endnote {
    border-color:#cce5e9;
    background:#f4fbfc;
}

.sp-article__endnote strong { color:#16364c; }
.sp-article__endnote p { color:#667b8c; }

/* 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,#08a9ba,#1778c8) border-box;
    color:#15364c !important;
    box-shadow:0 9px 22px rgba(31,68,94,.08);
}

.sp-article__content .wp-block-button.is-style-sp-primary .wp-block-button__link::after {
    color:#078fa1;
}

.sp-article__content .wp-block-button.is-style-sp-outline .wp-block-button__link {
    border-color:#c6d8e1;
    background:#f7fafc;
    color:#27485f !important;
}

/* =========================================================
   BRAND SERVICE HP / CANON
   ========================================================= */

.sp-brand-service-hero--canon {
    background:
        radial-gradient(circle at 12% 28%,rgba(8,169,186,.07),transparent 30%),
        radial-gradient(circle at 88% 67%,rgba(25,120,200,.055),transparent 31%),
        linear-gradient(112deg,#fff,#fbfdff 55%,#eef8fb);
}

.sp-brand-service-hero__badge {
    background:
        radial-gradient(circle at 82% 28%,rgba(8,169,186,.07),transparent 34%),
        #fff;
}

.sp-brand-service-hero__badge--canon {
    background:
        radial-gradient(circle at 82% 28%,rgba(25,120,200,.065),transparent 34%),
        #fff;
}

.sp-brand-service-hero__badge > span {
    color:#0f415b;
}

/* =========================================================
   LEGAL
   ========================================================= */

.sp-legal__toc {
    background:#fff;
}

.sp-legal__toc strong { color:#15364c; }
.sp-legal__toc a { color:#647b8d !important; }

.sp-legal__content section {
    border-color:#dde8ed;
}

.sp-legal__content a {
    color:#087f91 !important;
}

.sp-legal__note {
    border-color:#cce5e9;
    background:#f3fbfc;
    color:#5e7587;
}

.sp-legal__table {
    background:#fff;
}

.sp-legal__table th {
    color:#15364c;
    background:#f2f7f9;
}

.sp-legal__table th,
.sp-legal__table td {
    border-color:#dde8ed;
    color:#5f7587;
}

/* =========================================================
   MOBILE LIGHT
   ========================================================= */

@media(max-width:720px){
    .sp-hero {
        background:
            radial-gradient(circle at 90% 68%,rgba(8,169,186,.09),transparent 32%),
            linear-gradient(180deg,#fff,#f0f8fb);
    }

    .sp-topbar { background:#edf5f8; }

    .sp-brand {
        flex-basis:210px;
        height:60px;
    }

    .sp-nav {
        background:#fff;
    }

    .sp-footer__logo {
        width:240px;
    }

    .sp-article-hero__media {
        box-shadow:0 14px 34px rgba(31,68,94,.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:#08a9ba;
    box-shadow:0 0 10px rgba(8,169,186,.28);
}

.sp-site [class*="--pink"] {
    --brand-accent:#177cc5;
    --service-accent:#177cc5;
    --material-accent:#177cc5;
    --step-accent:#177cc5;
    --part-accent:#177cc5;
    --guide-accent:#177cc5;
    --business-accent:#177cc5;
    --knowledge-accent:#177cc5;
}


/* =========================================================
   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:#08788f !important;
    font-weight:800;
}

.sp-need-card__link::after {
    color:#079bac;
}

.sp-need-card h3 {
    color:#15364c !important;
}

.sp-need-card p {
    color:#667c8f !important;
}

.sp-service__phone span {
    color:#60798d !important;
}

.sp-service__phone strong {
    color:#153a52 !important;
}

.sp-service__phone:hover strong {
    color:#078ea1 !important;
}

.sp-service__panel-head {
    border-color:#dbe7ed !important;
    background:#f8fbfc !important;
}

.sp-service__panel-head > div > span:last-child {
    color:#23465e !important;
}

.sp-service__panel-code {
    color:#8396a7 !important;
}

.sp-brand-card h3 {
    color:#18394f !important;
}

.sp-brand-card p {
    color:#6a8093 !important;
}

.sp-brand-card__link {
    color:#08778f !important;
}

.sp-brand-card__link span {
    color:#079bac !important;
}

.sp-brand-card__device {
    border-color:#bcdce5 !important;
    color:#087f9a !important;
    background:#edf9fb !important;
}

.sp-brand-card__button {
    border-color:#aad7e1 !important;
    color:#0d7188 !important;
    background:#edf9fb !important;
}

.sp-brand-card__button:hover {
    border-color:#079faf !important;
    background:#e4f6f8 !important;
}

/* --- 2. Pasek "Nie wiesz, którą ścieżkę wybrać?" --- */

.sp-needs__foot {
    border:0 !important;
    background:
        linear-gradient(105deg,#d7f5f6 0%,#c8edf2 48%,#dceefa 100%) !important;
    box-shadow:0 10px 28px rgba(20,99,126,.10);
}

.sp-needs__foot p {
    color:#385d72 !important;
}

.sp-needs__foot strong {
    color:#123a50 !important;
}

.sp-needs__foot a {
    color:#0a5168 !important;
}

.sp-needs__foot a span {
    color:#078ea1 !important;
}

/* Analogiczny dolny pasek marek */
.sp-brands__foot {
    border-color:#cfe4ea !important;
    background:#f2fafb !important;
}

.sp-brands__foot p {
    color:#587386 !important;
}

.sp-brands__foot p strong {
    color:#183a50 !important;
}

.sp-brands__foot > a {
    color:#08778e !important;
}

.sp-brands__foot > a span {
    color:#079bac !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:#153b53 !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:#657d8f !important;
}

.sp-contact-page-hero__quick small {
    color:#637c8f !important;
}

.sp-contact-page__direct span {
    color:#60798d !important;
}

.sp-contact-page__direct a {
    color:#153b53 !important;
}

.sp-contact-page__location a {
    color:#08778e !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(31,68,94,.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 #d5e3ea !important;
    border-radius:16px !important;
    background:#fff !important;
    box-shadow:0 12px 32px rgba(31,68,94,.065) !important;
    transition:transform .24s ease, box-shadow .24s ease, border-color .24s ease;
}

.sp-knowledge-card--light:hover {
    transform:translateY(-4px);
    border-color:#add6e0 !important;
    box-shadow:0 18px 42px rgba(31,68,94,.095) !important;
}

.sp-knowledge-card--light .sp-knowledge-card__image {
    position:relative;
    display:block;
    height:205px;
    overflow:hidden;
    border-bottom:1px solid #dce7ed;
    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:#8aa5b5;
    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:#e7f6f8 !important;
    color:#08798f !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:#9aadb9 !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:#15364c !important;
}

.sp-knowledge-card--light p {
    margin:10px 0 0;
    min-height:58px;
    color:#687e91 !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:#08788f !important;
    font-size:11.5px;
    font-weight:800;
}

.sp-knowledge-card__more span {
    color:#079bac;
}

/* --- 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 #bfe0e7 !important;
    background:
        linear-gradient(105deg,#d7f5f6 0%,#c5edf1 52%,#d9edf9 100%) !important;
}

.sp-parts-finder__foot strong {
    color:#123a50 !important;
}

.sp-parts-finder__foot span {
    color:#4e6d80 !important;
}

.sp-parts-finder__foot .sp-btn {
    color:#fff !important;
}

/* 2. Dolny pasek sekcji części */
.sp-parts__foot {
    border-color:#c7e3e9 !important;
    background:
        linear-gradient(105deg,#e1f7f8 0%,#cdeff2 48%,#dfedf9 100%) !important;
    box-shadow:0 10px 26px rgba(20,99,126,.075);
}

.sp-parts__foot p {
    color:#496a7d !important;
}

.sp-parts__foot p strong {
    color:#123a50 !important;
}

.sp-parts__foot > a {
    color:#08758c !important;
}

.sp-parts__foot > a span {
    color:#0799aa !important;
}

/* 3. Nagłówki i teksty w blokach typów części */
.sp-parts-types__head p {
    color:#173a50 !important;
}

.sp-parts-types__head span {
    color:#60798c !important;
}

.sp-part-type h3 {
    color:#17384e !important;
}

.sp-part-type p {
    color:#687f91 !important;
}

/* 4. Ścieżka Serwis Ploterów -> MyToner */
.sp-materials__route-node {
    border-color:#bddce5 !important;
    background:#fff !important;
    color:#153b52 !important;
    box-shadow:none !important;
}

.sp-materials__route-node--service {
    box-shadow:inset 3px 0 0 #08a9ba !important;
}

.sp-materials__route-node--shop {
    box-shadow:inset -3px 0 0 #1778c8 !important;
}

.sp-materials__route-node small {
    color:#60788a !important;
}

.sp-materials__route-line {
    height:2px !important;
    background:linear-gradient(90deg,#08a9ba,#1496b5,#1778c8) !important;
    box-shadow:none !important;
}

.sp-materials__route-line::before,
.sp-materials__route-line::after {
    width:9px !important;
    height:9px !important;
    border:2px solid #fff;
    background:#08a9ba !important;
    box-shadow:0 0 0 2px rgba(8,169,186,.18) !important;
}

.sp-materials__route-line::after {
    background:#1778c8 !important;
    box-shadow:0 0 0 2px rgba(23,120,200,.16) !important;
}

.sp-materials__route-line i {
    top:-4px !important;
    width:10px !important;
    height:10px !important;
    border:2px solid #fff;
    background:#078fa1 !important;
    box-shadow:0 0 0 3px rgba(8,169,186,.16) !important;
}

.sp-materials__note {
    color:#506d80 !important;
}

/* 5. Proces: jasne karty także po najechaniu */
.sp-process-step {
    border-color:#d5e4eb !important;
    background:#fff !important;
    box-shadow:0 11px 28px rgba(31,68,94,.05);
}

.sp-process-step:hover {
    transform:translateY(-5px) !important;
    border-color:#a9d6df !important;
    background:
        linear-gradient(145deg,#f2fbfc 0%,#ffffff 65%,#f1f7fb 100%) !important;
    box-shadow:0 18px 40px rgba(31,68,94,.09) !important;
}

.sp-process-step__icon {
    border-color:#b8dce4 !important;
    color:#078fa1 !important;
    background:#edf9fa !important;
}

.sp-process-step:hover .sp-process-step__icon {
    box-shadow:0 8px 20px rgba(8,169,186,.10) !important;
}

.sp-process-step__number {
    color:#7891a3 !important;
}

.sp-process-step h3 {
    color:#15394f !important;
}

.sp-process-step p {
    color:#60798c !important;
}

/* Widoczna kropka nad kartą procesu */
.sp-process-step__dot {
    width:14px !important;
    height:14px !important;
    border:3px solid #fff !important;
    background:#08a9ba !important;
    box-shadow:
        0 0 0 2px rgba(8,169,186,.28),
        0 3px 10px rgba(8,169,186,.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:#1778c8 !important;
    box-shadow:
        0 0 0 2px rgba(23,120,200,.24),
        0 3px 10px rgba(23,120,200,.14) !important;
}

/* 6. Pasek pod procesem */
.sp-process__foot {
    border-color:#cbe4e9 !important;
    background:
        linear-gradient(105deg,#e1f7f8 0%,#d5f0f3 52%,#e2eff8 100%) !important;
}

.sp-process__foot strong {
    color:#153a50 !important;
}

.sp-process__foot span {
    color:#587487 !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:#fff !important;
}

.sp-parts-step {
    min-height:230px !important;
    border-color:#dce7ed !important;
    background:#fff !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:#b4dbe3 !important;
    background:
        linear-gradient(145deg,#effafb 0%,#ffffff 62%,#f3f8fc 100%) !important;
    box-shadow:0 14px 32px rgba(31,68,94,.075) !important;
}

.sp-parts-step__number {
    color:#7992a4 !important;
}

.sp-parts-step__icon {
    border-color:#b9dce5 !important;
    color:#078fa1 !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:#bfd9eb !important;
    color:#1779c5 !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(8,169,186,.10) !important;
}

.sp-parts-step h3 {
    color:#15394f !important;
}

.sp-parts-step p {
    color:#61798c !important;
}

/* Kafelki poniżej — typy części */
.sp-part-type {
    border-color:#dce7ed !important;
    background:#fff !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:#b8dce4 !important;
    background:
        linear-gradient(145deg,#f2fbfc 0%,#fff 68%,#f3f8fc 100%) !important;
    box-shadow:0 12px 28px rgba(31,68,94,.065) !important;
}

.sp-part-type__icon {
    border-color:#bfdee6 !important;
    color:#078fa1 !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:#bfd9eb !important;
    color:#1779c5 !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(8,169,186,.09) !important;
}

.sp-part-type h3 {
    color:#15394f !important;
}

.sp-part-type p {
    color:#657d90 !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 #d5e3ea !important;
    border-radius:15px !important;
    background:#fff !important;
    box-shadow:0 10px 28px rgba(31,68,94,.05) !important;
}

.sp-request__aside-intro h2 {
    margin:7px 0 14px !important;
    color:#15364c !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:#526f82 !important;
}

.sp-request__quick-phone span {
    font-size:10px;
}

.sp-request__quick-phone strong {
    color:#08788f !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:#b8dce5 !important;
    background:#eef9fa !important;
    color:#078fa1 !important;
}

.sp-request__aside--horizontal .sp-request-checklist strong {
    color:#15364c !important;
    font-size:12.5px !important;
}

.sp-request__aside--horizontal .sp-request-checklist p {
    margin-top:4px !important;
    color:#647c8f !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 #d5e3ea !important;
    border-radius:15px !important;
    background:#fff !important;
    box-shadow:0 10px 28px rgba(31,68,94,.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:#15364c !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:#15364c !important;
    font-size:15px !important;
}

.sp-contact-page__aside--horizontal .sp-contact-page__location p {
    margin:3px 0 4px !important;
    color:#667e91 !important;
    font-size:11.5px !important;
}

.sp-contact-page__aside--horizontal .sp-contact-page__location a {
    color:#08788f !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:#078fa1 !important;
    font-size:8.5px !important;
}

.sp-contact-page__aside--horizontal .sp-contact-page__direct a {
    color:#15364c !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:#d5e3ea !important;
    background:#fff !important;
    box-shadow:0 10px 28px rgba(31,68,94,.05) !important;
}

.sp-plotters-page-guide__panel article {
    border-color:#e0e9ee !important;
    background:#fff !important;
}

.sp-plotters-page-guide__panel article:hover {
    background:#f4fbfc !important;
}

.sp-plotters-page-guide__panel article > span {
    border-color:#b9dce5 !important;
    background:#eef9fa !important;
    color:#078fa1 !important;
}

.sp-plotters-page-guide__panel strong {
    color:#15364c !important;
    font-size:13.5px !important;
}

.sp-plotters-page-guide__panel p {
    color:#647c8f !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:#d5e3ea !important;
    background:#fff !important;
    box-shadow:0 10px 28px rgba(31,68,94,.045) !important;
}

.sp-plotters-page-info__box h3 {
    color:#15364c !important;
}

.sp-plotters-page-info__box p:last-child {
    color:#647c8f !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:#fff !important;
}

.sp-site .sp-material-card__icon {
    background:#eef9fa !important;
    border-color:#bddde6 !important;
    color:#078fa1 !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:#c6ddec !important;
    color:#1779c5 !important;
}

.sp-site .sp-material-card__content strong {
    color:#15394f !important;
}

.sp-site .sp-material-card__content > span:last-child {
    color:#667e91 !important;
}

.sp-site .sp-material-card__arrow {
    color:#1490a5 !important;
}

.sp-site .sp-materials__all {
    background:linear-gradient(90deg,#f1fbfc 0%, #f8fcff 52%, #fdf7fc 100%) !important;
    border-top:1px solid #e2edf2 !important;
}

.sp-site .sp-materials__all small {
    color:#8296a8 !important;
}

.sp-site .sp-materials__all strong {
    color:#15394f !important;
}

.sp-site .sp-materials__all-arrow {
    border-color:#c7dce8 !important;
    color:#1490a5 !important;
    background:#fff !important;
}

.sp-site .sp-materials__help {
    border-top:1px solid #e2edf2 !important;
    background:#fff !important;
}

.sp-site .sp-materials__help p {
    color:#667e91 !important;
}

.sp-site .sp-materials__help p strong {
    color:#15394f !important;
}

.sp-site .sp-materials__help a {
    color:#15394f !important;
}

.sp-site .sp-materials__help a span {
    color:#1490a5 !important;
}

/* 3) HOME — plotery: kafelki zastosowań i dolny pasek */
.sp-site .sp-usecase {
    background:#fff !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:#bddde6 !important;
    color:#078fa1 !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:#c6ddec !important;
    color:#1779c5 !important;
}

.sp-site .sp-usecase__content strong {
    color:#15394f !important;
}

.sp-site .sp-usecase__content > span:last-child {
    color:#667e91 !important;
}

.sp-site .sp-usecase__arrow {
    color:#1490a5 !important;
}

.sp-site .sp-plotter-usecases__foot {
    background:linear-gradient(90deg,#f4fbfd 0%, #fbfcff 58%, #fdf7fc 100%) !important;
    border-top:1px solid #e1ebf0 !important;
}

.sp-site .sp-plotter-usecases__foot p {
    color:#667e91 !important;
}

.sp-site .sp-plotter-usecases__foot p strong {
    color:#15394f !important;
}

.sp-site .sp-plotter-usecases__foot a {
    color:#15394f !important;
}

.sp-site .sp-plotter-usecases__foot a span {
    color:#1490a5 !important;
}

/* 4) HOME — przewodnik doboru plotera */
.sp-site .sp-plotter-guide__number {
    background:#eef7fd !important;
    border-color:#c6ddec !important;
    color:#1779c5 !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:#bedae7 !important;
    background:linear-gradient(100deg,#eef9fa 0%, #f3f8fd 54%, #f8f4fc 100%) !important;
    color:#15394f !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:#9ecfdb !important;
    background:linear-gradient(100deg,#e6f7f8 0%, #edf6fc 54%, #f6f0fb 100%) !important;
    color:#15394f !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(8,169,186,.34) !important;
    background:linear-gradient(145deg,#f3fbfc 0%, #ffffff 72%, #f6f9fd 100%) !important;
    box-shadow:0 20px 42px rgba(31,68,94,.095) !important;
}

.sp-site .sp-need-card:hover h3,
.sp-site .sp-need-card:focus-within h3 {
    color:#15364c !important;
}

.sp-site .sp-need-card:hover p,
.sp-site .sp-need-card:focus-within p {
    color:#667c8f !important;
}

.sp-site .sp-need-card:hover .sp-need-card__link,
.sp-site .sp-need-card:focus-within .sp-need-card__link {
    color:#08788f !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:#079bac !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 #dce7ed;
}

/* 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:#102f45;
    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:#637a8d;
    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 #d3e3ea;
    border-radius:20px;
    background:#fff;
    box-shadow:0 18px 50px rgba(31,68,94,.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:#acd6df;
    box-shadow:0 24px 60px rgba(31,68,94,.11);
}
.sp-featured-product__visual {
    display:grid;
    place-items:center;
    padding:34px 26px;
    background:linear-gradient(145deg,#fff 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:#e5f7f8;
    color:#087d90;
    font-size:9px;
    font-weight:900;
    letter-spacing:.12em;
}
.sp-featured-product h3 {
    margin:18px 0 0;
    color:#102f45;
    font-size:clamp(30px,2.8vw,44px);
    line-height:1;
    letter-spacing:-.04em;
}
.sp-featured-product p {
    margin:16px 0 0;
    color:#627a8d;
    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 #d4e4ea;
    border-radius:8px;
    color:#526d80;
    background:#f8fbfc;
    font-size:10px;
    font-weight:750;
}
.sp-featured-product__cta {
    display:inline-flex;
    align-items:center;
    gap:10px;
    margin-top:28px;
    color:#08798f;
    font-size:13px;
    font-weight:850;
}
.sp-shop-picks {
    overflow:hidden;
    border:1px solid #d3e3ea;
    border-radius:20px;
    background:#fff;
    box-shadow:0 14px 38px rgba(31,68,94,.06);
}
.sp-shop-picks__title {
    padding:22px 22px 16px;
    border-bottom:1px solid #e0e9ee;
}
.sp-shop-picks__title span {
    display:block;
    color:#078ea1;
    font-size:9px;
    font-weight:900;
    letter-spacing:.14em;
}
.sp-shop-picks__title strong {
    display:block;
    margin-top:5px;
    color:#15364c;
    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:#fff;
    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 #fff;
    box-shadow:0 0 0 1px #d3e1e7;
}
.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:#202b34; }
.sp-shop-pick small { display:block;color:#8395a4;font-size:9.5px; }
.sp-shop-pick strong { display:block;margin-top:3px;color:#15364c;font-size:13px; }
.sp-shop-pick > b { color:#0793a7;font-size:17px; }
.sp-shop-picks__all {
    display:flex;
    justify-content:space-between;
    align-items:center;
    min-height:62px;
    padding:14px 19px;
    color:#08778e !important;
    background:#eef9fa;
    font-size:11.5px;
    font-weight:850;
}

/* NEEDS */
.sp-needs--v25 { padding:64px 0 68px !important;background:#fff !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:#078ea1 !important;
    border-color:#c5dfe6 !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:#647b8e;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:#6c8395;font-size:10px; }
.sp-home-service__phone strong { color:#15364c;font-size:15px; }
.sp-home-service__points { display:grid;gap:0;border-top:1px solid #d4e3e9;border-bottom:1px solid #d4e3e9; }
.sp-home-service__points article { display:grid;grid-template-columns:40px minmax(0,1fr);gap:16px;padding:20px 4px;border-bottom:1px solid #dce7ec; }
.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:#fff;border:1px solid #c4dee6;color:#078ea1;font-size:9px;font-weight:900; }
.sp-home-service__points strong { color:#15364c;font-size:15px; }
.sp-home-service__points p { margin:5px 0 0;color:#687f91;font-size:12px;line-height:1.5; }

/* BRANDS */
.sp-home-brands { padding:68px 0;background:#fff; }
.sp-home-brands__grid { display:grid;grid-template-columns:1fr 1fr 1fr;border-top:1px solid #dbe7ed;border-bottom:1px solid #dbe7ed; }
.sp-home-brands__grid a { display:flex;flex-direction:column;min-height:150px;padding:24px 26px;border-right:1px solid #dbe7ed;background:#fff;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:#078ea1;font-size:10px;font-weight:900;letter-spacing:.12em; }
.sp-home-brands__grid strong { margin-top:18px;color:#15364c;font-size:20px; }
.sp-home-brands__grid b { margin-top:auto;color:#08788f;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:#647b8e;font-size:14px;line-height:1.7; }
.sp-home-parts__steps { display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #cadfe6;border-bottom:1px solid #cadfe6; }
.sp-home-parts__steps span { display:flex;flex-direction:column;gap:12px;min-height:116px;padding:22px 18px;border-right:1px solid #d8e6eb;color:#24495f;font-size:12px;font-weight:800; }
.sp-home-parts__steps span:last-child { border-right:0; }
.sp-home-parts__steps b { color:#0792a5;font-size:10px; }

/* MYTONER BANNER */
.sp-home-mytoner { padding:48px 0;background:#fff; }
.sp-home-mytoner__panel { display:grid;grid-template-columns:minmax(0,1fr) auto;gap:44px;align-items:center;padding:30px 34px;border:1px solid #cfe2e8;border-radius:18px;background:linear-gradient(105deg,#e8f8f9 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:#61798c;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 #d8e5eb; }
.sp-home-process__grid article:first-child { border-left:0; }
.sp-home-process__grid span { color:#0792a5;font-size:10px;font-weight:900; }
.sp-home-process__grid strong { display:block;margin-top:15px;color:#15364c;font-size:18px; }
.sp-home-process__grid p { margin:8px 0 0;color:#687f91;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 #dbe7ed; }
    .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 #d3e2e9;
    border-radius:19px;
    background:rgba(255,255,255,.94);
    box-shadow:0 24px 65px rgba(30,68,94,.10);
}

.sp-service-hero-flow::after {
    content:"";
    position:absolute;
    width:210px;
    height:210px;
    right:-90px;
    bottom:-110px;
    border-radius:50%;
    background:rgba(8,169,186,.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,#08a9ba,#1778c8,transparent);
    box-shadow:0 0 12px rgba(8,169,186,.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 #dde8ed;
}

.sp-service-hero-flow__head > div {
    display:flex;
    align-items:center;
    gap:10px;
}

.sp-service-hero-flow__head strong {
    color:#16364c;
    font-size:12.5px;
}

.sp-service-hero-flow__head > span:last-child {
    color:#8295a5;
    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%,#fff 78%);
    transform:translateX(4px);
}

.sp-service-hero-flow__number {
    width:36px;
    height:36px;
    display:grid;
    place-items:center;
    border:1px solid #b9dce5;
    border-radius:11px;
    background:#eff9fa;
    color:#078fa1;
    font-size:9px;
    font-weight:900;
}

.sp-service-hero-flow__steps strong {
    color:#16364c;
    font-size:13px;
}

.sp-service-hero-flow__steps p {
    margin:4px 0 0;
    color:#687f92;
    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,#e7f7f8 0%,#edf7fb 60%,#f5f8fd 100%);
}

.sp-service-hero-flow__call span {
    color:#60798c;
    font-size:10.5px;
}

.sp-service-hero-flow__call strong {
    color:#123a50;
    font-size:14px;
}

.sp-service-hero-flow__call em {
    color:#078fa1;
    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(8,169,186,.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 #d7e4ea !important;
    border-radius:18px !important;
    background:#fff !important;
    box-shadow:0 12px 32px rgba(31,68,94,.055) !important;
    --scope-accent:#08a9ba;
    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:#1778c8; }
.sp-service-scope-card--violet { --scope-accent:#6f73d8; }

.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%,#d7e4ea) !important;
    background:linear-gradient(145deg,#ffffff 0%,color-mix(in srgb,var(--scope-accent) 4%,#fff) 100%) !important;
    box-shadow:0 22px 48px rgba(31,68,94,.105) !important;
}

.sp-service-scope-card__number {
    position:absolute;
    top:18px;
    right:20px;
    color:#96a8b7 !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%,#dce7ed);
    border-radius:14px;
    color:var(--scope-accent);
    background:color-mix(in srgb,var(--scope-accent) 6%,#fff);
    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:#15364c !important;
    font-size:18px !important;
}

.sp-service-scope-card p {
    position:relative;
    z-index:1;
    margin:9px 0 0 !important;
    color:#667d8f !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:#fff !important;
    border-top:1px solid #dce7ed !important;
    border-bottom:1px solid #dce7ed !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:#153249 !important;
    font-size:clamp(38px,3.2vw,56px);
    line-height:1.04;
    letter-spacing:-.04em;
}

.sp-service-brand-routes__head > p {
    margin:0;
    color:#667c8f !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:#08a9ba;
    position:relative;
    min-height:300px;
    display:flex;
    flex-direction:column;
    overflow:hidden;
    padding:25px 25px 23px;
    border:1px solid #d7e4ea;
    border-radius:18px;
    background:#fff;
    box-shadow:0 12px 32px rgba(31,68,94,.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:#1778c8; }
.sp-service-brand-route--other { --route-accent:#6f73d8; }

.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%,#d7e4ea);
    box-shadow:0 22px 48px rgba(31,68,94,.10);
}

.sp-service-brand-route__meta {
    position:relative;
    z-index:1;
    color:#8799a8;
    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%,#d8e4ea);
    border-radius:14px;
    background:color-mix(in srgb,var(--route-accent) 5%,#fff);
}

.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:#15364c;
    font-size:19px;
}

.sp-service-brand-route > p {
    position:relative;
    z-index:1;
    margin:9px 0 0;
    color:#687f91 !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:#15364c;
    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 #d7e5eb;
    border-radius:18px;
    background:
        radial-gradient(circle at 4% 50%,rgba(8,169,186,.055),transparent 26%),
        #fff;
    box-shadow:0 12px 34px rgba(31,68,94,.055);
}

.sp-home-process__intro {
    padding-right:8px;
}

.sp-home-process__intro h2 {
    margin:7px 0 8px !important;
    color:#15364c !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:#61798c;
    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,#bfe1e7,#b9d7e8,#c9d9ee);
}

.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 #b8dce5;
    border-radius:12px;
    background:#eff9fa;
    color:#078fa1 !important;
    font-size:10px !important;
    font-weight:900;
    box-shadow:0 0 0 5px #fff;
    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:#e5f7f8;
    border-color:#93cfd9;
}

.sp-home-process--compact .sp-home-process__grid strong {
    display:block;
    margin:1px 0 5px !important;
    color:#15364c !important;
    font-size:16.5px !important;
    line-height:1.2;
}

.sp-home-process--compact .sp-home-process__grid p {
    margin:0 !important;
    color:#60788b !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 #c2dfe7;
    border-radius:999px;
    background:#eff9fa;
    color:#087f91 !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:#9fd1dc;
    background:#e5f6f8;
}

/* 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 #c2dfe7;
    border-radius:999px;
    background:#eef9fa;
    color:#087f91 !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 #c2dfe7;
    border-radius:999px;
    background:#eef9fa;
    color:#087f91 !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:#123249;
    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:#60788b;
    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 #d5e4eb;
    border-radius:16px;
    background:#d5e4eb;
    box-shadow:0 12px 30px rgba(31,68,94,.055);
}

.sp-esb-credibility__facts span {
    min-height:120px;
    display:flex;
    flex-direction:column;
    justify-content:center;
    padding:20px;
    background:#fff;
}

.sp-esb-credibility__facts strong {
    color:#087f91;
    font-size:20px;
    line-height:1.1;
}

.sp-esb-credibility__facts small {
    margin-top:6px;
    color:#667e91;
    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:#123249;
    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,#08a9ba,#1778c8,transparent) 1;
}

.sp-service-esb__text p {
    margin:0;
    color:#60788b;
    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 #dbe7ed;
    background:linear-gradient(112deg,#fff 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:#102c42;
    font-size:clamp(46px,4.3vw,70px);
    line-height:1;
    letter-spacing:-.045em;
}

.sp-contact-real-hero__lead {
    max-width:760px;
    margin:0;
    color:#5f7689;
    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 #d5e3ea;
    border-radius:16px;
    background:#dbe7ed;
    box-shadow:0 14px 36px rgba(31,68,94,.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:#fff;
}
.sp-contact-real-hero__facts strong { color:#078fa1;font-size:25px;letter-spacing:-.03em; }
.sp-contact-real-hero__facts span { color:#536f82;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:#102f46;font-size:clamp(32px,3vw,48px);line-height:1.05;letter-spacing:-.035em; }
.sp-contact-real-locations__head > p { margin:0;color:#657d90;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 #d5e3ea;border-radius:18px;background:#fff;box-shadow:0 14px 36px rgba(31,68,94,.06); }
.sp-contact-map-card__content { padding:24px 25px 21px; }
.sp-contact-map-card__label { color:#078fa1;font-size:9.5px;font-weight:900;letter-spacing:.13em; }
.sp-contact-map-card h3 { margin:9px 0 8px;color:#15364c;font-size:28px;letter-spacing:-.025em; }
.sp-contact-map-card__address { margin:0;color:#587286;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:#365d74 !important;font-size:11.5px;font-weight:700; }
.sp-contact-map-card__route { display:inline-flex;margin-top:14px;color:#08798f !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:#fff;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 #dce7ed;border-bottom:1px solid #dce7ed; }
.sp-contact-real-routes__grid > a { min-height:210px;display:flex;flex-direction:column;padding:23px 24px;border-right:1px solid #dce7ed;background:#fff;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:#079aac;font-size:9px;font-weight:900;letter-spacing:.11em; }
.sp-contact-real-routes__grid strong { margin-top:20px;color:#15364c;font-size:17px; }
.sp-contact-real-routes__grid p { margin:8px 0 0;color:#667e91;font-size:11.8px;line-height:1.58; }
.sp-contact-real-routes__grid em { margin-top:auto;padding-top:18px;color:#08798f;font-size:11.5px;font-weight:850;font-style:normal; }
.sp-contact-real-routes__grid b { display:block;margin-top:9px;color:#15364c;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:#647c8f;font-size:13px;line-height:1.7; }
.sp-contact-real-form__direct { margin-top:28px;padding-top:20px;border-top:1px solid #d8e5eb;display:grid;gap:4px; }
.sp-contact-real-form__direct span { margin-top:9px;color:#7890a2;font-size:9px;font-weight:900;letter-spacing:.1em;text-transform:uppercase; }
.sp-contact-real-form__direct a { color:#15364c !important;font-size:17px;font-weight:800; }
.sp-contact-real-form__direct p { margin:0;color:#365b72;font-size:12px; }
.sp-contact-real-form__panel { border-radius:16px !important;box-shadow:0 12px 32px rgba(31,68,94,.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:#15364c;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 #dce7ed}
}

@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 #dce7ed !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(8,169,186,.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:#cbdfe7 !important;
}

.sp-featured-product__visual {
    position:relative;
    overflow:hidden;
    padding:20px 10px !important;
    background:
        radial-gradient(circle at 50% 48%,rgba(8,169,186,.07),transparent 46%),
        linear-gradient(145deg,#fbfeff 0%,#eaf6f9 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(8,169,186,.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:#cbdfe7 !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:#1598ad;
}

.sp-shop-pick--yellow::before { background:#e8be18; }
.sp-shop-pick--magenta::before { background:#d6338b; }
.sp-shop-pick--black::before { background:#22313c; }

.sp-shop-pick:hover {
    transform:translateX(4px);
    background:#f1fafb !important;
    box-shadow:inset 0 0 0 1px rgba(8,169,186,.06);
}

.sp-shop-pick__swatch {
    width:32px !important;
    height:32px !important;
    border-width:4px !important;
    box-shadow:0 0 0 1px #cbdde5,0 5px 14px rgba(31,68,94,.08) !important;
}

.sp-shop-pick strong {
    font-size:14px !important;
}

.sp-shop-pick small {
    color:#6f8798 !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 #d5e4ea !important;
    border-radius:15px;
    background:#fff !important;
    box-shadow:0 8px 26px rgba(31,68,94,.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 #d5e4ea !important;
}

.sp-home-brand-card::before {
    content:"";
    position:absolute;
    left:0;
    top:0;
    right:0;
    height:3px;
    background:linear-gradient(90deg,#08a9ba,transparent 72%);
}

.sp-home-brand-card--canon::before {
    background:linear-gradient(90deg,#1778c8,transparent 72%);
}

.sp-home-brand-card--other::before {
    background:linear-gradient(90deg,#6e76cf,transparent 72%);
}

.sp-home-brand-card::after {
    position:absolute;
    right:18px;
    bottom:-20px;
    color:rgba(20,67,92,.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:#a9d6df !important;
    background:linear-gradient(145deg,#f4fbfc,#fff) !important;
    box-shadow:0 16px 34px rgba(31,68,94,.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(8,169,186,.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 #cfe1e8 !important;
    border-radius:14px;
    background:rgba(255,255,255,.78);
    box-shadow:0 8px 24px rgba(31,68,94,.035);
    transition:transform .23s ease,border-color .23s ease,background .23s ease;
}

.sp-home-parts__steps span:hover {
    transform:translateY(-3px);
    border-color:#a7d5df !important;
    background:#fff;
}

.sp-home-parts__steps b {
    display:grid;
    place-items:center;
    width:32px;
    height:32px;
    margin-bottom:4px;
    border:1px solid #b7dce5;
    border-radius:10px;
    background:#edf9fa;
    color:#078ea1 !important;
}

.sp-home-parts__steps strong {
    color:#15364c;
    font-size:13px;
}

.sp-home-parts__steps small {
    color:#748a9b;
    font-size:10.5px;
    font-weight:500;
}

/* 4. MyToner — inny rytm niż pozostałe sekcje */
.sp-home-mytoner {
    padding:42px 0 !important;
    background:#fff !important;
}

.sp-home-mytoner__panel {
    position:relative;
    overflow:hidden;
    padding:31px 36px 31px 42px !important;
    border:0 !important;
    border-left:5px solid #08a9ba !important;
    border-radius:0 16px 16px 0 !important;
    background:
        linear-gradient(100deg,#e6f7f8 0%,#f7fbfd 58%,#eef6fc 100%) !important;
    box-shadow:0 14px 34px rgba(31,68,94,.045) !important;
}

.sp-home-mytoner__panel::after {
    content:"MYTONER";
    position:absolute;
    right:34%;
    bottom:-20px;
    color:rgba(14,113,139,.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:#fff !important;
    border-color:#a9d7e0 !important;
    box-shadow:0 0 0 5px #f5f9fb !important;
}

.sp-home-process--compact .sp-home-process__grid::before {
    background:linear-gradient(90deg,#08a9ba,#71bdd0,#1778c8) !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:#c9dfe7 !important;
    background:
        linear-gradient(105deg,#e8f7f8 0%,#f8fbfc 64%,#edf5fb 100%) !important;
    box-shadow:0 16px 38px rgba(31,68,94,.055) !important;
}

.sp-final-cta .sp-btn--primary,
.sp-final-cta .sp-btn--primary:hover,
.sp-final-cta .sp-btn--primary:focus {
    color:#fff !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 #c9dee7;
    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:#1778c8;
    color:#fff !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:#15364c;
    font-size:11px;
}

.sp-footer__hp-partner small {
    color:#6d8395;
    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 #d5e4ea !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(20,67,92,.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(14,113,139,.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(14,113,139,.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 #dbe7ed !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:#08a9ba;
    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(31,77,112,.11);
    border-radius:16px;
    text-decoration:none !important;
    box-shadow:0 8px 22px rgba(31,68,94,.045);
    transition:transform .24s ease, box-shadow .24s ease, border-color .24s ease, filter .24s ease;
}

.sp-trust-card--mint {
    --trust-accent:#0aa5a8;
    background:linear-gradient(135deg,#eefbfa 0%,#f9fdfc 100%);
}
.sp-trust-card--blue {
    --trust-accent:#1778c8;
    background:linear-gradient(135deg,#f0f7fd 0%,#fbfdff 100%);
}
.sp-trust-card--aqua {
    --trust-accent:#0798aa;
    background:linear-gradient(135deg,#edfafa 0%,#f8fcfd 100%);
}
.sp-trust-card--lilac {
    --trust-accent:#6f79d8;
    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%,#d7e4ea);
    box-shadow:0 14px 30px rgba(31,68,94,.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%,#dce8ed);
    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:#15364c;
    font-size:13.5px;
    font-weight:800;
    line-height:1.2;
}

.sp-trust-card__copy > span {
    color:#698093;
    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 #dbe7ed !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;
    }
}
