
/* =========================================================
   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;
    }
}
