/*
 * Data Recovery - warstwa wspolna calego klastra
 *
 * Wyniesione z bloku Gutenberga wszystkich 10 stron tresciowych (byla identyczna bajtowo) dnia 14.08.2026.
 * Tresc bajtowo taka sama jak inline, ktory zastepuje - jedyne zmiany
 * opisane sa w naglowku pliku. Kolejnosc ladowania pilnuje
 * includes/core/dr-cluster-assets.php.
 */

    /* Data Recovery design refinement — Fixfactor Design System v4.2. */
    #ff-dr {
        --surface: #ffffff;
        --surface-alt: #f8fafb;
        --surface-fill: #f3f4f6;
        --content: #000000;
        --content-body: #1a1a1a;
        --content-strong: #101010;
        --content-secondary: #505050;
        --action: #007a92;
        --action-hover: #005f73;
        --accent: #00aac4;
        --accent-line: #3bb8cc;
        --accent-art: #006e82;
        --accent-warm: #ffd100;
        --accent-warm-hover: #e6bc00;
        --accent-warm-text: #996f00;
        --border-neutral: #d1d5db;
        --border-subtle: rgba(0, 170, 196, .15);
        --border-interactive: rgba(0, 170, 196, .4);
        --border-active: #00aac4;
    }

    #ff-dr .fixfactor-hero {
        min-height: 500px;
        padding: 2.5rem 0;
        background: var(--surface);
    }

    #ff-dr .fixfactor-hero::before { display: none; }

    #ff-dr .fixfactor-hero-wrapper {
        min-height: 450px;
        gap: clamp(2rem, 4vw, 4.5rem);
    }

    #ff-dr .fixfactor-hero-flex-container {
        width: min(1320px, calc(100% - 4rem));
        min-height: 450px;
        margin: 0 auto;
        display: grid;
        grid-template-columns: minmax(0, 1fr) minmax(320px, .78fr);
        gap: clamp(2rem, 4vw, 4.5rem);
        align-items: center;
    }

    /* Device pages use a real two-column grid, so the image cannot overlap copy. */
    #ff-dr:not(.ff-dr3-hub) .fixfactor-hero-wrapper {
        width: min(1320px, calc(100% - 4rem));
        min-height: 450px;
        margin: 0 auto;
        display: grid;
        grid-template-columns: minmax(0, 640px) minmax(320px, 1fr);
        gap: clamp(2.5rem, 6vw, 7rem);
        align-items: center;
    }

    #ff-dr:not(.ff-dr3-hub) .fixfactor-hero-content {
        grid-column: 1;
        grid-row: 1;
        width: 100%;
        max-width: 640px;
    }

    #ff-dr:not(.ff-dr3-hub) .fixfactor-hero-image {
        position: relative;
        top: auto;
        right: auto;
        grid-column: 2;
        grid-row: 1;
        justify-self: end;
        transform: none;
    }

    #ff-dr .fixfactor-hero-content {
        width: min(52%, 640px);
        max-width: 640px;
    }

    #ff-dr .fixfactor-hero-flex-container > .fixfactor-hero-content {
        width: 100%;
        max-width: 640px;
    }

    #ff-dr section.fixfactor-hero h1,
    #ff-dr section.fixfactor-hero h1.entry-title,
    #ff-dr .fixfactor-hero h1,
    #ff-dr .fixfactor-hero .fixfactor-hero-content h1 {
        max-width: 16ch;
        margin: 0 0 1.5rem;
        color: var(--content);
        font-size: clamp(2rem, 5vw, 3.5rem);
        font-weight: 800 ;
        letter-spacing: -.03em;
        line-height: 1.12;
    }

    #ff-dr .fixfactor-hero h1 .fixfactor-gradient {
        display: inline;
        color: var(--action);
        font-weight: inherit;
    }

    #ff-dr .fixfactor-hero p {
        max-width: 51ch;
        color: var(--content-body);
        font-size: 1.08rem;
        line-height: 1.65;
    }

    #ff-dr .fixfactor-hero-buttons {
        margin: 1.75rem 0 2rem;
    }

    #ff-dr .fixfactor-hero .fixfactor-button.fixfactor-button-primary {
        border-color: var(--action);
        background: var(--action);
        color: #ffffff;
        box-shadow: none;
    }

    #ff-dr .fixfactor-hero .fixfactor-button.fixfactor-button-primary:hover {
        border-color: var(--action);
        background: var(--action);
    }

    #ff-dr .fixfactor-hero-image {
        top: 50%;
        right: max(var(--section-padding-x), calc((100vw - 1320px) / 2));
        /* One optical artboard keeps differently shaped device images in balance. */
        width: min(32vw, 380px);
        height: 340px;
        overflow: visible;
        transform: translateY(-50%);
        clip-path: none;
        border: 0;
        border-radius: 0;
        background: transparent;
        box-shadow: none;
    }

    #ff-dr .fixfactor-hero-image img {
        width: 100%;
        height: 100%;
        object-fit: contain;
        object-position: center;
    }

    #ff-dr .fixfactor-hero-image-container {
        width: 360px;
        max-width: 100%;
        min-height: 0;
        height: 340px;
        justify-self: center;
        overflow: visible;
        border: 0;
        border-radius: 0;
        clip-path: none;
        background: transparent;
        box-shadow: none;
    }

    #ff-dr .fixfactor-hero-image-container img {
        width: 100%;
        height: 340px;
        display: block;
        object-fit: contain;
        object-position: center;
    }

    #ff-dr.ff-dr3-hub .fixfactor-hero {
        min-height: 540px;
        padding: 2rem 0;
    }

    #ff-dr.ff-dr3-hub .fixfactor-hero-wrapper { min-height: 500px; }

    #ff-dr.ff-dr3-hub .fixfactor-hero-content {
        width: min(44%, 560px);
        max-width: 560px;
    }

    #ff-dr.ff-dr3-hub section.fixfactor-hero h1,
    #ff-dr.ff-dr3-hub section.fixfactor-hero h1.entry-title,
    #ff-dr.ff-dr3-hub .fixfactor-hero h1,
    #ff-dr.ff-dr3-hub .fixfactor-hero .fixfactor-hero-content h1 {
        max-width: 13ch;
        font-size: clamp(2rem, 5vw, 3.5rem);
        font-weight: 800;
        letter-spacing: -.045em;
        line-height: 1.02;
    }

    #ff-dr.ff-dr3-hub .fixfactor-hero-image {
        top: 0;
        right: var(--section-padding-x);
        width: calc(53% - var(--section-padding-x));
        height: 100%;
        overflow: hidden;
        transform: none;
        clip-path: url(#ff-dr-hero-clip);
        border-radius: 12px;
        background: var(--surface-alt);
    }

    #ff-dr.ff-dr3-hub .fixfactor-hero-image img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    #ff-dr .fixfactor-hero-features {
        display: flex;
        flex-wrap: wrap;
        gap: .75rem 1.25rem;
        margin-top: 1.5rem;
    }

    #ff-dr .fixfactor-hero-feature {
        display: flex;
        gap: .55rem;
        align-items: center;
        color: var(--content-body);
        font-size: .9rem;
    }

    #ff-dr .fixfactor-hero-feature-icon {
        width: .65rem;
        height: .65rem;
        border-radius: 50%;
        background: var(--accent-warm);
    }

    #ff-dr .fixfactor-hero-feature-icon i { display: none; }

    #ff-dr .fixfactor-hero-ratings { margin-top: 0; }

    #ff-dr .fixfactor-services { background: var(--surface-alt); }

    #ff-dr .fixfactor-services .fixfactor-section-header {
        max-width: 1320px;
        margin-bottom: 2.25rem;
        text-align: left;
    }

    #ff-dr .fixfactor-services .fixfactor-section-header h2 {
        max-width: 16ch;
        padding: 0;
        color: var(--content);
        font-size: clamp(2rem, 5vw, 2.75rem);
        font-weight: 800;
        letter-spacing: -.04em;
        line-height: 1.05;
    }

    #ff-dr .fixfactor-services .fixfactor-section-header h2::after { content: none; /* v4.2: marker-underline retired */ }

    #ff-dr .fixfactor-services .fixfactor-section-header p {
        max-width: 60ch;
        margin: 1rem 0 0;
        color: var(--content-body);
        font-size: 1.05rem;
    }

    #ff-dr .fixfactor-services-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 0;
        margin: 0;
        border-top: 1px solid var(--border-interactive);
        border-bottom: 1px solid var(--border-interactive);
    }

    #ff-dr .fixfactor-service-card {
        display: grid;
        grid-template-columns: 112px minmax(0, 1fr);
        min-height: 154px;
        height: auto;
        border: 0;
        border-bottom: 1px solid var(--border-subtle);
        border-radius: 0;
        background: transparent;
        box-shadow: none;
        transition: border-color .25s ease, background-color .25s ease;
    }

    #ff-dr .fixfactor-service-card:nth-child(odd) { border-right: 1px solid var(--border-subtle); }
    #ff-dr .fixfactor-service-card:hover { border-color: var(--border-active); background: var(--surface); }

    #ff-dr .fixfactor-service-image {
        width: 112px;
        height: 100%;
        min-height: 152px;
        padding: 1rem;
        background: transparent;
    }

    #ff-dr .fixfactor-service-image img {
        width: 82px;
        height: 82px;
        object-fit: contain;
    }

    #ff-dr .fixfactor-service-content {
        justify-content: center;
        height: auto;
        min-height: 0;
        padding: 1.25rem 1.75rem 1.25rem .75rem;
    }

    #ff-dr .fixfactor-service-title {
        color: var(--action);
        font-size: 1.15rem;
        font-weight: 750;
    }

    #ff-dr .fixfactor-service-text {
        min-height: 0;
        max-height: none;
        margin: 0;
        color: var(--content-body);
        font-size: .94rem;
    }

    /* The hub retains its familiar service grid; specialist pages use the compact rail above. */
    #ff-dr.ff-dr3-hub .fixfactor-services .fixfactor-section-header {
        max-width: 760px;
        margin: 0 auto 3rem;
        text-align: center;
    }

    #ff-dr.ff-dr3-hub .fixfactor-services .fixfactor-section-header h2 { max-width: none; }
    #ff-dr.ff-dr3-hub .fixfactor-services .fixfactor-section-header p { margin-inline: auto; }

    #ff-dr.ff-dr3-hub .fixfactor-services-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 1.25rem;
        border: 0;
    }

    #ff-dr.ff-dr3-hub .fixfactor-service-card {
        display: flex;
        min-height: 355px;
        height: 355px;
        border: 1px solid var(--border-interactive);
        border-radius: 12px;
        background: var(--surface);
    }

    #ff-dr.ff-dr3-hub .fixfactor-service-card:nth-child(odd) { border-right: 1px solid var(--border-subtle); }
    #ff-dr.ff-dr3-hub .fixfactor-service-card:hover { border-color: var(--border-active); }

    #ff-dr.ff-dr3-hub .fixfactor-service-image {
        width: 100%;
        height: 190px;
        min-height: 190px;
        padding: 1.5rem;
        background: var(--surface-alt);
    }

    #ff-dr.ff-dr3-hub .fixfactor-service-image img {
        width: 118px;
        height: 118px;
    }

    #ff-dr.ff-dr3-hub .fixfactor-service-content {
        display: flex;
        justify-content: flex-start;
        min-height: 165px;
        padding: 1.35rem 1.5rem 1.5rem;
    }

    #ff-dr.ff-dr3-hub .fixfactor-service-title { color: var(--content-strong); }

    #ff-dr .ff-dr3-safety,
    #ff-dr .ff-dr3-process {
        color: var(--content-body);
        font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Inter", sans-serif;
    }

    #ff-dr .ff-dr3-inner {
        width: min(1320px, calc(100% - 4rem));
        margin: 0 auto;
    }

    #ff-dr .ff-dr3-safety {
        padding: clamp(4.5rem, 8vw, 7rem) 0;
        background: #fffdf3;
        border-top: 6px solid var(--accent-warm);
        border-bottom: 1px solid var(--accent-warm);
    }

    #ff-dr .ff-dr3-safety__layout {
        display: grid;
        grid-template-columns: minmax(260px, .72fr) minmax(0, 1.55fr);
        gap: clamp(3rem, 7vw, 7rem);
        align-items: center;
    }

    #ff-dr .ff-dr3-safety h2,
    #ff-dr .ff-dr3-process h2 {
        margin: 0;
        color: var(--accent-warm-text);
        font-size: clamp(2rem, 5vw, 2.75rem);
        font-weight: 800;
        letter-spacing: -.04em;
        line-height: 1.05;
    }

    #ff-dr .ff-dr3-safety__intro p,
    #ff-dr .ff-dr3-process__head p {
        max-width: 42ch;
        margin: 1.15rem 0 0;
        color: var(--content-body);
        font-size: 1.05rem;
        line-height: 1.65;
    }

    #ff-dr .ff-dr3-safety__rail {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 2rem;
        margin: 0;
        padding: 0;
        list-style: none;
        counter-reset: ff-dr3-safety;
    }

    #ff-dr .ff-dr3-safety__rail li {
        position: relative;
        min-width: 0;
        padding-top: 3.15rem;
        counter-increment: ff-dr3-safety;
    }

    #ff-dr .ff-dr3-safety__rail li::before {
        content: "0" counter(ff-dr3-safety);
        position: absolute;
        top: 0;
        left: 0;
        color: var(--content);
        font-size: .95rem;
        font-weight: 800;
    }

    #ff-dr .ff-dr3-safety__rail li::after {
        content: "";
        position: absolute;
        top: 1.65rem;
        left: 0;
        width: calc(100% + 2rem);
        height: 2px;
        background: var(--accent-warm);
    }

    #ff-dr .ff-dr3-safety__rail li:last-child::after { width: 100%; }

    #ff-dr .ff-dr3-safety__rail strong {
        display: block;
        margin-bottom: .55rem;
        color: var(--content-strong);
        font-size: 1.08rem;
        line-height: 1.3;
    }

    #ff-dr .ff-dr3-safety__rail span {
        display: block;
        color: var(--content-body);
        font-size: .94rem;
        line-height: 1.55;
    }

    #ff-dr .ff-dr3-process {
        padding: clamp(4.5rem, 8vw, 7rem) 0;
        background: var(--surface-alt);
    }

    #ff-dr .ff-dr3-process__head {
        display: grid;
        grid-template-columns: minmax(260px, .72fr) minmax(0, 1.55fr);
        gap: clamp(3rem, 7vw, 7rem);
        align-items: end;
        margin-bottom: 3.25rem;
    }

    #ff-dr .ff-dr3-process__steps {
        display: grid;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 0;
        margin: 0;
        padding: 0;
        border-top: 1px solid var(--border-interactive);
        border-bottom: 1px solid var(--border-subtle);
        list-style: none;
        counter-reset: ff-dr3-process;
    }

    #ff-dr .ff-dr3-process__steps li {
        position: relative;
        min-height: 225px;
        padding: 2rem 1.5rem;
        border-right: 1px solid var(--border-subtle);
        counter-increment: ff-dr3-process;
    }

    #ff-dr .ff-dr3-process__steps li:last-child { border-right: 0; }

    #ff-dr .ff-dr3-process__steps li::before {
        content: counter(ff-dr3-process);
        display: flex;
        width: 2.75rem;
        height: 2.75rem;
        margin-bottom: 1.5rem;
        align-items: center;
        justify-content: center;
        border: 2px solid var(--accent);
        border-radius: 50%;
        color: var(--action);
        font-size: 1.1rem;
        font-weight: 800;
    }

    #ff-dr .ff-dr3-process__steps strong {
        display: block;
        margin-bottom: .6rem;
        color: var(--action);
        font-size: 1.05rem;
        line-height: 1.3;
    }

    #ff-dr .ff-dr3-process__steps span {
        color: var(--content-body);
        font-size: .92rem;
        line-height: 1.55;
    }

    #ff-dr .ff-dr3-process__price {
        display: block;
        margin: -.15rem 0 .35rem;
        color: var(--action);
        font-size: clamp(2.35rem, 4vw, 3.7rem);
        font-weight: 900;
        letter-spacing: -.04em;
        line-height: 1;
    }

    #ff-dr .ff-dr3-process__policy {
        margin: 1.5rem 0 0;
        color: var(--content-body);
        font-size: .95rem;
        line-height: 1.6;
    }

    #ff-dr .ff-dr3-process__policy a { color: var(--action); font-weight: 750; }

    #ff-dr .ff-dr3-safety :focus-visible,
    #ff-dr .ff-dr3-process :focus-visible { outline: 3px solid var(--accent); outline-offset: 2px; }

    /* Related service links are a compact navigation grid, not a second conversion panel. */
    #ff-dr .ff-dr2-related { padding: clamp(4rem, 7vw, 6rem) 0; background: var(--surface); }
    #ff-dr .ff-dr2__inner { width: min(1120px, calc(100% - 4rem)); margin: 0 auto; }
    #ff-dr .ff-dr2-related__head { max-width: 46rem; margin: 0 auto 2.25rem; text-align: center; }
    #ff-dr .ff-dr2-related__head p { max-width: 60ch; margin: 1rem auto 0; color: var(--content-body); font-size: 1rem; line-height: 1.65; }
    #ff-dr .ff-dr2-related__head a,
    #ff-dr .ff-dr2-maintained a { color: var(--action); font-weight: 700; }
    #ff-dr .ff-dr2-related__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1rem; }
    #ff-dr .ff-dr2-related__link { display: block; min-height: 100%; padding: 1.25rem; border: 1px solid var(--border-subtle); border-radius: 12px; background: var(--surface-alt); color: inherit; text-decoration: none; transition: border-color .2s ease; }
    #ff-dr .ff-dr2-related__link:hover { border-color: var(--border-active, var(--accent)); }
    #ff-dr .ff-dr2-related__link:focus-visible { outline: 3px solid var(--accent-warm); outline-offset: 3px; }
    #ff-dr .ff-dr2-related__link strong { display: block; margin-bottom: .4rem; color: var(--content-strong); font-size: 1rem; }
    #ff-dr .ff-dr2-related__link span { display: block; color: var(--content-body); font-size: .92rem; line-height: 1.55; }
    #ff-dr .ff-dr2-maintained { margin: 1.5rem 0 0; color: var(--content-secondary); font-size: .86rem; line-height: 1.55; text-align: center; }

    /* The hub's failure map is editorial and factual, without decorative repair icons. */
    #ff-dr.ff-dr3-hub .fixfactor-scenarios { padding: clamp(4.5rem, 8vw, 6.5rem) 0; background: var(--surface-alt); }
    #ff-dr.ff-dr3-hub .fixfactor-scenarios::before,
    #ff-dr.ff-dr3-hub .fixfactor-scenarios::after { display: none; }
    #ff-dr.ff-dr3-hub .fixfactor-scenarios-cards { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; max-width: 1120px; margin: 2.5rem auto 0; }
    #ff-dr.ff-dr3-hub .fixfactor-scenario-row { display: contents; }
    #ff-dr.ff-dr3-hub .fixfactor-scenario-card { min-height: 168px; padding: 1.5rem; border: 1px solid var(--border-interactive); border-radius: 12px; background: var(--surface); box-shadow: none; }
    #ff-dr.ff-dr3-hub .fixfactor-scenario-icon { display: none; }
    #ff-dr.ff-dr3-hub .fixfactor-scenario-content { padding: 0; }
    #ff-dr.ff-dr3-hub .fixfactor-scenario-title { color: var(--content-strong); font-size: 1.15rem; font-weight: 750; }
    #ff-dr.ff-dr3-hub .fixfactor-scenario-description { margin: .65rem 0 0; color: var(--content-body); }

    /* Specialist copy and gallery form one evidence-led hub section. */
    #ff-dr.ff-dr3-hub .ff-dr3-proof { padding: clamp(4.5rem, 8vw, 6.5rem) 0; background: var(--surface); }
    #ff-dr.ff-dr3-hub .ff-dr3-proof::before,
    #ff-dr.ff-dr3-hub .ff-dr3-proof::after { display: none; }
    #ff-dr.ff-dr3-hub .ff-dr3-proof .fixfactor-specialist-content { max-width: 780px; padding: 0; }
    #ff-dr.ff-dr3-hub .ff-dr3-proof .fixfactor-specialist-content p { color: var(--content-body); text-align: left; }
    #ff-dr.ff-dr3-hub .ff-dr3-proof .fixfactor-specialist-content h3 { color: var(--content-strong); text-align: left; }
    #ff-dr.ff-dr3-hub .ff-dr3-proof .ff-dr3-proof__gallery-head { max-width: 780px; margin: 3.5rem auto 0; }
    #ff-dr.ff-dr3-hub .ff-dr3-proof .ff-dr3-proof__gallery-head h3 { margin: 0; color: var(--content); font-size: clamp(1.5rem, 2.5vw, 2rem); font-weight: 800; letter-spacing: -.03em; }
    #ff-dr.ff-dr3-hub .ff-dr3-proof .ff-dr3-proof__gallery-head p { margin: .65rem 0 0; color: var(--content-body); }
    #ff-dr.ff-dr3-hub .ff-dr3-proof .fixfactor-gallery-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1rem; margin: 1.5rem auto 0; }
    #ff-dr.ff-dr3-hub .ff-dr3-proof .fixfactor-gallery-item { height: 190px; border-radius: 12px; box-shadow: none; }

    /* One heading language across the hub and specialist recovery pages. */
    #ff-dr h2 {
        color: var(--content) !important;
        font-size: clamp(2rem, 5vw, 2.75rem) ;
        font-weight: 800 ;
        letter-spacing: -.03em ;
        line-height: 1.08 ;
        text-decoration: none !important;
    }

    /* Centring moved off the blanket h2 selector onto the wrappers that want
       it. As a blanket !important it also centred headings in components built
       left-aligned, and no specificity could undo it. Same wrappers, same
       result on every page in the cluster, without the trap.
       Verified across all ten cluster pages: the only headings whose alignment
       changes are the two components that are built left-aligned. */
    #ff-dr .fixfactor-section-header h2,
    #ff-dr .ff-dr2-related__head h2,
    #ff-dr .fixfactor-specialist-content h2 {
        text-align: center;
    }

    #ff-dr h2::before,
    #ff-dr h2::after { content: none; /* v4.2: marker-underline retired */ }

    #ff-dr .fixfactor-section-header {
        max-width: 46rem !important;
        margin-right: auto !important;
        margin-left: auto !important;
        text-align: center !important;
    }

    #ff-dr .fixfactor-section-header h2,
    #ff-dr .ff-dr2-related__head h2 {
        max-width: 22ch !important;
        margin-right: auto !important;
        margin-left: auto !important;
        /* One H2 scale for the cluster. The page layers still carry
           var(--text-4xl) / var(--font-bold) and a pair of mobile overrides
           that dropped section headings to 21.6px - below the 2rem floor the
           type scale sets. Same specificity, later sheet, so this wins. */
        font-size: clamp(2rem, 5vw, 2.75rem);
        font-weight: 800;
        letter-spacing: -.03em;
        line-height: 1.08;
    }

    /* Two section headings on the hub sit outside .fixfactor-section-header
       and kept the page-layer scale: 36px/700 on desktop, 21.6px/700 on
       mobile - the second one below the 2rem floor. Only the type is set
       here; their width and alignment stay as their own sections want them. */
    #ff-dr .fixfactor-reviews-header h2,
    #ff-dr .fixfactor-specialist-content h2 {
        font-size: clamp(2rem, 5vw, 2.75rem);
        font-weight: 800;
        letter-spacing: -.03em;
        line-height: 1.08;
    }

    #ff-dr .fixfactor-section-header p,
    #ff-dr .ff-dr2-related__head p{
        margin-right: auto !important;
        margin-left: auto !important;
        text-align: center !important;
    }

    #ff-dr .ff-dr2-related__head{ text-align: center; }

    /* These two asymmetric sections keep a deliberate editorial alignment. */
    #ff-dr .ff-dr3-safety h2,
    #ff-dr .ff-dr3-process h2 {
        max-width: 12ch !important;
        margin: 0 !important;
        text-align: left !important;
    }

    #ff-dr .ff-dr3-safety__intro p,
    #ff-dr .ff-dr3-process__head p {
        margin-right: 0 !important;
        margin-left: 0 !important;
        text-align: left !important;
    }

    @media (max-width: 992px) {
        #ff-dr .fixfactor-hero { min-height: auto; padding: 4rem 0; }
        #ff-dr .fixfactor-hero-wrapper { min-height: 0; }
        #ff-dr:not(.ff-dr3-hub) .fixfactor-hero-wrapper { width: min(100% - 2.5rem, 680px); min-height: 0; display: block; text-align: center; }
        #ff-dr .fixfactor-hero-content { width: 100%; max-width: 680px; }
        #ff-dr.ff-dr3-hub .fixfactor-hero-content { width: 100%; max-width: 680px; }
        #ff-dr section.fixfactor-hero h1 { max-width: 14ch; margin-inline: auto; font-size: clamp(2.5rem, 7vw, 3.5rem); }
        #ff-dr.ff-dr3-hub section.fixfactor-hero h1,
        #ff-dr.ff-dr3-hub section.fixfactor-hero h1.entry-title,
        #ff-dr.ff-dr3-hub .fixfactor-hero h1,
        #ff-dr.ff-dr3-hub .fixfactor-hero .fixfactor-hero-content h1 {
            max-width: 14ch;
            margin-inline: auto;
            font-size: clamp(2.5rem, 7vw, 3.5rem);
            line-height: 1.08;
        }
        #ff-dr .fixfactor-hero-flex-container { width: min(100% - 2.5rem, 680px); min-height: 0; display: block; text-align: center; }
        #ff-dr .fixfactor-hero-flex-container .fixfactor-hero-content { width: 100%; max-width: 100%; }
        #ff-dr .fixfactor-hero-image,
        #ff-dr .fixfactor-hero-image-container { display: none; }
        #ff-dr .fixfactor-hero-features { justify-content: center; }
        #ff-dr .ff-dr3-safety__layout,
        #ff-dr .ff-dr3-process__head { grid-template-columns: 1fr; gap: 2rem; }
        #ff-dr.ff-dr3-hub .fixfactor-services-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
        #ff-dr.ff-dr3-hub .fixfactor-scenarios-cards { grid-template-columns: 1fr; }
        #ff-dr.ff-dr3-hub .ff-dr3-proof .fixfactor-gallery-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
        #ff-dr .ff-dr2-related__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    }

    @media (max-width: 768px) {
        #ff-dr .fixfactor-hero { padding: 3.25rem 0 2.75rem; }
        #ff-dr .fixfactor-hero-wrapper { padding: 0 1.25rem; }
        #ff-dr section.fixfactor-hero .fixfactor-hero-content { padding: 0; }
        #ff-dr section.fixfactor-hero h1 { margin-bottom: 1.25rem; font-size: clamp(2.3rem, 11vw, 3.15rem); line-height: 1.04; }
        #ff-dr section.fixfactor-hero p { max-width: 36ch; margin-inline: auto; font-size: 1rem; line-height: 1.6; }
        #ff-dr section.fixfactor-hero .fixfactor-hero-buttons { margin: 1.5rem 0 1.75rem; }
        #ff-dr section.fixfactor-hero .fixfactor-button { flex: 0 1 auto; min-width: min(100%, 260px); min-height: 48px; padding: .8rem 1.25rem; font-size: .95rem; }
        #ff-dr section.fixfactor-hero .fixfactor-hero-ratings { margin-top: 0; }
        #ff-dr .fixfactor-services-grid { grid-template-columns: 1fr; }
        #ff-dr .fixfactor-service-card:nth-child(odd) { border-right: 0; }
        #ff-dr .fixfactor-service-card { grid-template-columns: 92px minmax(0, 1fr); min-height: 132px; }
        #ff-dr .fixfactor-service-image { width: 92px; min-height: 130px; }
        #ff-dr .fixfactor-service-image img { width: 66px; height: 66px; }
        #ff-dr .fixfactor-service-content { padding: 1rem 1rem 1rem .4rem; }
        #ff-dr.ff-dr3-hub .fixfactor-services-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .8rem; }
        #ff-dr.ff-dr3-hub .fixfactor-service-card { min-height: 285px; height: auto; }
        #ff-dr.ff-dr3-hub .fixfactor-service-image { width: 100%; height: 135px; min-height: 135px; padding: 1rem; }
        #ff-dr.ff-dr3-hub .fixfactor-service-image img { width: 76px; height: 76px; }
        #ff-dr.ff-dr3-hub .fixfactor-service-content { min-height: 150px; padding: 1rem; }
        #ff-dr.ff-dr3-hub .fixfactor-service-title { font-size: 1rem; }
        #ff-dr.ff-dr3-hub .fixfactor-service-text { font-size: .84rem; line-height: 1.5; }
        #ff-dr .ff-dr3-inner { width: min(100% - 2.5rem, 1320px); }
        #ff-dr .ff-dr3-safety,
        #ff-dr .ff-dr3-process { padding: 4rem 0; }
        #ff-dr .ff-dr3-safety__rail { grid-template-columns: 1fr; gap: 1.5rem; }
        #ff-dr .ff-dr3-safety__rail li { padding: 0 0 0 3.5rem; min-height: 4.5rem; }
        #ff-dr .ff-dr3-safety__rail li::before { top: 0; }
        #ff-dr .ff-dr3-safety__rail li::after { top: 1.75rem; left: .7rem; width: 2px; height: calc(100% + 1.5rem); background: linear-gradient(180deg, var(--accent-line) 0 45%, var(--accent-warm) 45% 49%, var(--accent-line) 49% 100%); }
        #ff-dr .ff-dr3-safety__rail li:last-child::after { height: 100%; }
        #ff-dr .ff-dr3-process__steps { grid-template-columns: 1fr; }
        #ff-dr .ff-dr3-process__steps li { min-height: 0; padding: 1.5rem 1rem 1.5rem 4.8rem; border-right: 0; border-bottom: 1px solid var(--border-subtle); }
        #ff-dr .ff-dr3-process__steps li:last-child { border-bottom: 0; }
        #ff-dr .ff-dr3-process__steps li::before { position: absolute; top: 1.5rem; left: 1rem; margin: 0; }
        #ff-dr .ff-dr3-process__price { font-size: 2.35rem; }
    }

    @media (prefers-reduced-motion: reduce) {
        #ff-dr .ff-dr3-safety *,
        #ff-dr .ff-dr3-process * { animation: none; transition: none; }
    }

    @media (max-width: 480px) {
        #ff-dr.ff-dr3-hub .fixfactor-services-grid { grid-template-columns: 1fr; }
        #ff-dr.ff-dr3-hub .fixfactor-service-card { min-height: 0; }
        #ff-dr .ff-dr2__inner { width: min(100% - 2rem, 1120px); }
        #ff-dr .ff-dr2-related__grid { grid-template-columns: 1fr; }
    }
