/*
Theme Name: Digital Download Child
Template: digital-download
Version: 1.0
*/

.entry-content a, .entry-summary a, .page-content a, .comment-content a, .widget .textwidget a {
    color: #ff3302;
    text-decoration: underline;
}

#primary .post .entry-content ul li, #primary .post .entry-content ol li, #primary .page .entry-content ul li, #primary .page .entry-content ol li, #primary .edd-download .entry-content ul li, #primary .edd-download .entry-content ol li {
    margin: 0 0 0px;
    border-bottom: 0px;
}

.home .features .feature-link { display: block;width: fit-content;margin-top: 8px;color: #2684ff;font-weight: 500;text-decoration: none;}

.home .features .feature-link:hover {color: #126bd1;text-decoration: underline;}

/* Footer newsletter */
.footer-t .widget_blossomthemes_email_newsletter_widget
.blossomthemes-email-newsletter-wrapper {
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
    color: #ffffff !important;
    box-shadow: none !important;
}

/* Newsletter heading */
.footer-t .widget_blossomthemes_email_newsletter_widget
.text-holder h3 {
    margin: 0 0 18px;
    color: #ffffff;
    font-size: 18px;
    line-height: 1.4;
    font-weight: 600;
}

/* Newsletter form */
.footer-t .widget_blossomthemes_email_newsletter_widget form {
    display: flex;
    flex-direction: column;
    gap: 10px;
    width: 100%;
    max-width: 280px;
}

/* Email input */
.footer-t .widget_blossomthemes_email_newsletter_widget
input[type="text"] {
    width: 100%;
    height: 42px;
    margin: 0 !important;
    padding: 10px 12px !important;
    border: 1px solid #d1d5db;
    border-radius: 4px;
    background: #ffffff;
    color: #1f2937;
    font-size: 14px;
    line-height: 1.4;
    box-sizing: border-box;
}

/* Placeholder */
.footer-t .widget_blossomthemes_email_newsletter_widget
input[type="text"]::placeholder {
    color: #6b7280;
    opacity: 1;
}

/* Subscribe button */
.footer-t .widget_blossomthemes_email_newsletter_widget
input[type="submit"] {
    width: 100%;
    height: 42px;
    margin: 0 !important;
    padding: 10px 16px !important;
    border: 0;
    border-radius: 4px;
    background: #2f8de4;
    color: #ffffff;
    font-size: 14px;
    line-height: 1.4;
    font-weight: 600;
    cursor: pointer;
    box-sizing: border-box;
}

.footer-t .widget_blossomthemes_email_newsletter_widget
input[type="submit"]:hover {
    background: #1674c7;
}


/* ==================================================
   PROFESSIONAL TOOL PAGE OVERRIDES
   ================================================== */

:root {
    --wpct-blue: #2f8de4;
    --wpct-blue-dark: #176fc1;
    --wpct-navy: #07111f;
    --wpct-text: #172033;
    --wpct-muted: #667085;
    --wpct-border: #e4e9f1;
    --wpct-soft: #f4f7fb;
}

/* Hero */
.wpc-tool-hero {
    min-height: auto !important;
    padding: 64px 24px 96px !important;
}

.wpc-tool-hero h1,
.wpc-tool-hero .elementor-heading-title {
    margin: 8px auto 14px !important;
    color: #fff !important;
    font-size: clamp(36px, 4.5vw, 48px) !important;
    font-weight: 750 !important;
    line-height: 1.12 !important;
    letter-spacing: -0.025em;
}

.wpc-tool-hero p {
    max-width: 720px;
    margin: 0 auto !important;
    color: #cbd5e1 !important;
    font-size: 17px !important;
    line-height: 1.7 !important;
}

.wpc-tool-hero .elementor-icon-list-items {
    display: flex !important;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px !important;
    margin-top: 24px !important;
}

.wpc-tool-hero .elementor-icon-list-item {
    width: auto !important;
    padding: 7px 13px;
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.07);
}

.wpc-tool-hero .elementor-icon-list-text {
    color: #fff !important;
    font-size: 13px !important;
}

/* Calculator workspace */
.wpc-tool-calculator {
    width: min(1060px, calc(100% - 32px)) !important;
    margin: -55px auto 70px !important;
    padding: 30px !important;
    border-radius: 18px !important;
    box-shadow: 0 22px 55px rgba(15, 23, 42, 0.14) !important;
}

/* Remove unnecessary nested card appearance */
.wpc-tool-calculator .ftbwpsp-roi-calculator__grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 20px !important;
    margin: 0 0 24px !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.wpc-tool-calculator .ftbwpsp-roi-calculator label {
    margin-bottom: 8px !important;
    color: #344054 !important;
    font-size: 14px !important;
    font-weight: 700 !important;
}

.wpc-tool-calculator .ftbwpsp-roi-calculator input[type="number"] {
    height: 52px !important;
    padding: 0 16px !important;
    border: 1px solid #cfd8e5 !important;
    border-radius: 9px !important;
    color: var(--wpct-text) !important;
    background: #fff !important;
    font-size: 16px !important;
}

.wpc-tool-calculator .ftbwpsp-roi-calculator input[type="number"]:focus {
    border-color: var(--wpct-blue) !important;
    outline: none !important;
    box-shadow: 0 0 0 3px rgba(47, 141, 228, 0.14) !important;
}

/* Calculator buttons */
.wpc-tool-calculator .ftbwpsp-roi-calculator__actions {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 10px !important;
    margin: 0 0 24px !important;
}

.wpc-tool-calculator .ftbwpsp-btn {
    min-height: 46px !important;
    padding: 11px 18px !important;
    border: 1px solid #b9cee2 !important;
    border-radius: 8px !important;
    color: var(--wpct-blue-dark) !important;
    background: #fff !important;
    box-shadow: none !important;
    font-size: 14px !important;
    font-weight: 700 !important;
}

.wpc-tool-calculator .ftbwpsp-btn:hover {
    border-color: var(--wpct-blue) !important;
    color: var(--wpct-blue-dark) !important;
    background: #edf7ff !important;
}

.wpc-tool-calculator .ftbwpsp-btn--primary {
    flex: 1 1 260px !important;
    border-color: var(--wpct-blue) !important;
    color: #fff !important;
    background: var(--wpct-blue) !important;
    box-shadow: 0 8px 18px rgba(47, 141, 228, 0.22) !important;
}

.wpc-tool-calculator .ftbwpsp-btn--primary:hover {
    border-color: var(--wpct-blue-dark) !important;
    color: #fff !important;
    background: var(--wpct-blue-dark) !important;
}

/* Result table */
.wpc-tool-calculator .ftbwpsp-roi-calculator__table-wrap {
    margin-top: 22px !important;
    border: 1px solid var(--wpct-border) !important;
    border-radius: 10px !important;
    box-shadow: none !important;
}

.wpc-tool-calculator .ftbwpsp-roi-calculator__table th {
    padding: 13px 15px !important;
    color: #475467 !important;
    background: #f1f5f9 !important;
    font-size: 12px !important;
    letter-spacing: 0.04em;
}

.wpc-tool-calculator .ftbwpsp-roi-calculator__table td {
    padding: 14px 15px !important;
}

/* Main content sections */
.wpc-tool-section,
.wpc-tool-related {
    width: min(1120px, calc(100% - 32px)) !important;
    margin: 0 auto !important;
    padding: 64px 32px !important;
}

.wpc-tool-section h2,
.wpc-tool-related h2 {
    margin-bottom: 12px !important;
    color: var(--wpct-text) !important;
    font-size: clamp(28px, 3vw, 34px) !important;
    font-weight: 750 !important;
    letter-spacing: -0.02em;
}

.wpc-tool-section p,
.wpc-tool-related p {
    color: var(--wpct-muted) !important;
    font-size: 16px !important;
    line-height: 1.7 !important;
}

/* Formula card */
.wpc-tool-formula {
    padding: 30px !important;
    border: 1px solid #c8e1f7 !important;
    border-radius: 14px !important;
    background: linear-gradient(135deg, #eaf4ff, #f6faff) !important;
}

.wpc-tool-formula h3 {
    margin-bottom: 14px !important;
    color: var(--wpct-text) !important;
    font-size: 22px !important;
}

/* Information cards */
.wpc-tool-card {
    --width: auto !important;
    width: auto !important;
    min-width: 0 !important;
    height: auto !important;
    flex: 1 1 240px !important;
    padding: 26px !important;
    border: 1px solid var(--wpct-border) !important;
    border-radius: 13px !important;
    background: #fff !important;
    box-shadow: 0 7px 24px rgba(15, 23, 42, 0.06) !important;
}

.wpc-tool-card:hover {
    border-color: #b9d8f5 !important;
    box-shadow: 0 14px 34px rgba(15, 23, 42, 0.11) !important;
    transform: translateY(-3px);
}

.wpc-tool-card h3 {
    margin: 0 0 10px !important;
    color: var(--wpct-text) !important;
    font-size: 19px !important;
    line-height: 1.35 !important;
}

.wpc-tool-card p {
    margin: 0 !important;
    color: var(--wpct-muted) !important;
    font-size: 15px !important;
    line-height: 1.65 !important;
}

/* Related-tool links */
.wpc-tool-related .elementor-button {
    padding: 0 !important;
    border: 0 !important;
    color: var(--wpct-blue-dark) !important;
    background: transparent !important;
    box-shadow: none !important;
    font-size: 14px !important;
    font-weight: 750 !important;
}

.wpc-tool-related .elementor-button:hover {
    color: var(--wpct-blue) !important;
    background: transparent !important;
    box-shadow: none !important;
    transform: translateX(3px);
}

/* Final CTA */
.wpc-tool-cta {
    width: min(1120px, calc(100% - 32px)) !important;
    margin: 65px auto !important;
    padding: 48px !important;
    border-radius: 18px !important;
    background-color: var(--wpct-navy) !important;
    background-image:
        radial-gradient(
            circle at 90% 10%,
            rgba(47, 141, 228, 0.26),
            transparent 38%
        ) !important;
}

.wpc-tool-cta h2 {
    margin-bottom: 10px !important;
    color: #fff !important;
    font-size: 32px !important;
}

.wpc-tool-cta p {
    color: #cbd5e1 !important;
    font-size: 16px !important;
    line-height: 1.65 !important;
}

.wpc-tool-cta .elementor-button {
    min-height: 46px;
    padding: 13px 21px !important;
    border-radius: 8px !important;
    font-weight: 700 !important;
}

/* Tablet */
@media (min-width: 641px) and (max-width: 1024px) {
    .wpc-tool-card {
        --width: calc(50% - 10px) !important;
        width: calc(50% - 10px) !important;
        flex: 0 0 calc(50% - 10px) !important;
    }
}

/* Mobile */
@media (max-width: 640px) {
    .wpc-tool-hero {
        padding: 48px 18px 68px !important;
    }

    .wpc-tool-hero h1,
    .wpc-tool-hero .elementor-heading-title {
        font-size: 34px !important;
    }

    .wpc-tool-hero p {
        font-size: 15px !important;
    }

    .wpc-tool-calculator {
        width: calc(100% - 24px) !important;
        margin: -28px auto 48px !important;
        padding: 18px !important;
    }

    .wpc-tool-calculator .ftbwpsp-roi-calculator__grid {
        grid-template-columns: 1fr !important;
        gap: 15px !important;
    }

    .wpc-tool-calculator .ftbwpsp-roi-calculator__actions {
        flex-direction: column !important;
    }

    .wpc-tool-calculator .ftbwpsp-btn,
    .wpc-tool-calculator .ftbwpsp-btn--primary {
        width: 100% !important;
        flex-basis: auto !important;
    }

    .wpc-tool-section,
    .wpc-tool-related {
        width: 100% !important;
        padding: 46px 18px !important;
    }

    .wpc-tool-card {
        --width: 100% !important;
        width: 100% !important;
        flex: 0 0 100% !important;
        padding: 22px !important;
    }

    .wpc-tool-cta {
        width: calc(100% - 24px) !important;
        margin: 48px auto !important;
        padding: 32px 22px !important;
    }

    .wpc-tool-cta h2 {
        font-size: 27px !important;
    }
}



/* =====================================================
   WP CODEX PLUGINS — PLUGIN CATALOG PAGE
   Page ID: 11
   ===================================================== */

.page-id-11 {
    --wpcp-blue: #2f8de4;
    --wpcp-blue-dark: #176fc1;
    --wpcp-navy: #07111f;
    --wpcp-text: #172033;
    --wpcp-muted: #667085;
    --wpcp-border: #e4e9f1;
    --wpcp-soft: #f5f8fc;
}

/* Remove default theme elements */
.page-id-11 .entry-header,
.page-id-11 .post-views {
    display: none !important;
}

.page-id-11 #primary {
    width: 100% !important;
}

.page-id-11 .entry-content {
    margin: 0 !important;
}

.page-id-11 .text-holder {
    padding-top: 0 !important;
}

/* Shared layout */
.wpcp-plugins-wrap {
    width: min(1160px, calc(100% - 40px));
    margin-inline: auto;
}

.wpcp-eyebrow,
.wpcp-section-label {
    display: inline-block;
    margin-bottom: 14px;
    color: var(--wpcp-blue);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.12em;
    line-height: 1.4;
    text-transform: uppercase;
}

.wpcp-btn {
    display: inline-flex;
    min-height: 48px;
    align-items: center;
    justify-content: center;
    padding: 13px 23px;
    border: 1px solid transparent;
    border-radius: 9px;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.3;
    text-decoration: none !important;
    transition:
        transform 0.2s ease,
        background 0.2s ease,
        border-color 0.2s ease,
        box-shadow 0.2s ease;
}

.wpcp-btn-primary {
    border-color: var(--wpcp-blue);
    color: #fff !important;
    background: var(--wpcp-blue);
    box-shadow: 0 10px 24px rgba(47, 141, 228, 0.22);
}

.wpcp-btn-primary:hover {
    border-color: var(--wpcp-blue-dark);
    color: #fff !important;
    background: var(--wpcp-blue-dark);
    transform: translateY(-2px);
}

/* Hero */
.wpcp-plugins-hero {
    position: relative;
    left: 50%;
    overflow: hidden;
    width: 100vw;
    margin-left: -50vw;
    padding: 82px 20px 78px;
    text-align: center;
    background:
        radial-gradient(
            circle at 88% 18%,
            rgba(47, 141, 228, 0.30),
            transparent 34%
        ),
        radial-gradient(
            circle at 8% 82%,
            rgba(104, 74, 219, 0.20),
            transparent 30%
        ),
        linear-gradient(135deg, #050a14 0%, #09152a 58%, #11173e 100%);
}

.wpcp-plugins-hero .wpcp-eyebrow {
    color: #72b9f8;
}

.wpcp-plugins-hero h1 {
    max-width: 900px;
    margin: 0 auto 18px !important;
    color: #fff !important;
    font-size: clamp(36px, 5vw, 52px) !important;
    font-weight: 800;
    letter-spacing: -0.035em;
    line-height: 1.12;
}

.wpcp-plugins-hero p {
    max-width: 760px;
    margin: 0 auto !important;
    color: #cbd5e1 !important;
    font-size: 17px;
    line-height: 1.75;
}

.wpcp-hero-actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 12px;
    margin-top: 28px;
}

.wpcp-btn-secondary {
    border-color: rgba(255, 255, 255, 0.32);
    color: #fff !important;
    background: rgba(255, 255, 255, 0.06);
}

.wpcp-btn-secondary:hover {
    border-color: #fff;
    color: var(--wpcp-navy) !important;
    background: #fff;
    transform: translateY(-2px);
}

.wpcp-hero-benefits {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
    margin-top: 30px;
}

.wpcp-hero-benefits span {
    padding: 7px 13px;
    border: 1px solid rgba(255, 255, 255, 0.13);
    border-radius: 999px;
    color: #e2e8f0;
    background: rgba(255, 255, 255, 0.06);
    font-size: 13px;
    font-weight: 600;
}

/* Catalog introduction */
.wpcp-catalog-intro {
    padding: 68px 20px 32px;
    text-align: center;
}

.wpcp-catalog-intro h2,
.wpcp-section-heading h2 {
    margin: 0 0 13px !important;
    color: var(--wpcp-text) !important;
    font-size: clamp(28px, 4vw, 38px) !important;
    font-weight: 800;
    letter-spacing: -0.025em;
    line-height: 1.2;
}

.wpcp-catalog-intro p,
.wpcp-section-heading p {
    max-width: 720px;
    margin: 0 auto !important;
    color: var(--wpcp-muted) !important;
    font-size: 16px;
    line-height: 1.75;
}

/* EDD product grid */
.page-id-11 .wp-block-edd-downloads {
    display: grid !important;
    width: min(1160px, calc(100% - 40px)) !important;
    margin: 0 auto 78px !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 24px !important;
}

/* Individual product card */
.page-id-11 .edd-blocks__download {
    display: flex !important;
    overflow: hidden;
    min-width: 0;
    height: 100%;
    flex-direction: column;
    margin: 0 !important;
    padding: 0 !important;
    border: 1px solid var(--wpcp-border) !important;
    border-radius: 16px !important;
    background: #fff !important;
    box-shadow: 0 8px 28px rgba(15, 23, 42, 0.07);
    transition:
        transform 0.22s ease,
        border-color 0.22s ease,
        box-shadow 0.22s ease;
}

.page-id-11 .edd-blocks__download:hover {
    border-color: #bfdcf6 !important;
    box-shadow: 0 18px 42px rgba(15, 23, 42, 0.12);
    transform: translateY(-5px);
}

/* Product image */
.page-id-11 .edd-blocks__download-header > a:first-child {
    display: block;
    overflow: hidden;
    height: 215px;
    border-bottom: 1px solid var(--wpcp-border);
    background: #edf3f9;
}

.page-id-11 .edd-blocks__download-image {
    display: block;
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
    object-fit: cover;
    object-position: center;
    transition: transform 0.35s ease;
}

.page-id-11 .edd-blocks__download:hover .edd-blocks__download-image {
    transform: scale(1.025);
}

/* Product title */
.page-id-11 .edd-blocks__download-header h3 {
    margin: 0 !important;
    padding: 24px 24px 0 !important;
    font-size: 20px !important;
    font-weight: 800;
    line-height: 1.35;
}

.page-id-11 .edd-blocks__download-header h3 a {
    color: var(--wpcp-text) !important;
    text-decoration: none !important;
}

.page-id-11 .edd-blocks__download-header h3 a:hover {
    color: var(--wpcp-blue-dark) !important;
}

/* Description */
.page-id-11 .edd-blocks__download-content {
    display: flex;
    flex: 1;
    flex-direction: column;
    padding: 14px 24px 0 !important;
}

.page-id-11 .edd-blocks__download-content > p {
    display: -webkit-box;
    overflow: hidden;
    min-height: 104px;
    margin: 0 0 18px !important;
    color: var(--wpcp-muted) !important;
    font-size: 14px !important;
    line-height: 1.65 !important;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
}

/* Price */
.page-id-11 .edd-blocks__download-price {
    margin: auto 0 0 !important;
    padding-top: 15px;
    border-top: 1px solid #edf0f4;
}

.page-id-11 .edd-blocks__download-price .edd_price {
    color: var(--wpcp-text) !important;
    font-size: 22px !important;
    font-weight: 800;
    line-height: 1.2;
}

/* Card footer and EDD button */
.page-id-11 .edd-blocks__download-footer {
    margin-top: 0 !important;
    padding: 18px 24px 24px !important;
}

.page-id-11 .edd-blocks__buy-button,
.page-id-11 .edd_download_purchase_form,
.page-id-11 .edd_purchase_submit_wrapper {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
}

.page-id-11 .edd-blocks__download .edd-submit.button {
    display: inline-flex !important;
    width: 100% !important;
    min-height: 46px;
    align-items: center;
    justify-content: center;
    margin: 0 !important;
    padding: 12px 18px !important;
    border: 1px solid var(--wpcp-blue) !important;
    border-radius: 8px !important;
    color: #fff !important;
    background: var(--wpcp-blue) !important;
    box-shadow: none !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    text-decoration: none !important;
}

.page-id-11 .edd-blocks__download .edd-submit.button:hover {
    border-color: var(--wpcp-blue-dark) !important;
    color: #fff !important;
    background: var(--wpcp-blue-dark) !important;
}

/* Keep EDD AJAX elements contained */
.page-id-11 .edd-cart-added-alert,
.page-id-11 .edd_go_to_checkout {
    width: 100% !important;
    margin: 10px 0 0 !important;
    text-align: center;
}

/* Benefits section */
.wpcp-plugin-benefits {
    position: relative;
    left: 50%;
    width: 100vw;
    margin-left: -50vw;
    padding: 75px 20px;
    background: var(--wpcp-soft);
}

.wpcp-section-heading {
    margin-bottom: 36px;
    text-align: center;
}

.wpcp-benefit-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 20px;
}

.wpcp-benefit-card {
    padding: 27px 24px;
    border: 1px solid var(--wpcp-border);
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 7px 22px rgba(15, 23, 42, 0.05);
}

.wpcp-benefit-icon {
    display: inline-flex;
    width: 44px;
    height: 44px;
    align-items: center;
    justify-content: center;
    margin-bottom: 18px;
    border-radius: 11px;
    color: var(--wpcp-blue-dark);
    background: #eaf4ff;
    font-size: 20px;
    font-weight: 800;
}

.wpcp-benefit-card h3 {
    margin: 0 0 10px !important;
    color: var(--wpcp-text) !important;
    font-size: 18px !important;
    font-weight: 800;
    line-height: 1.35;
}

.wpcp-benefit-card p {
    margin: 0 !important;
    color: var(--wpcp-muted) !important;
    font-size: 14px;
    line-height: 1.7;
}

/* Final CTA */
.wpcp-custom-cta {
    width: min(1160px, calc(100% - 40px));
    margin: 70px auto !important;
}

.wpcp-custom-cta-inner {
    display: flex;
    overflow: hidden;
    align-items: center;
    justify-content: space-between;
    gap: 35px;
    padding: 48px;
    border-radius: 18px;
    background:
        radial-gradient(
            circle at 90% 10%,
            rgba(47, 141, 228, 0.28),
            transparent 38%
        ),
        var(--wpcp-navy);
}

.wpcp-custom-cta-content {
    max-width: 720px;
}

.wpcp-custom-cta h2 {
    margin: 0 0 10px !important;
    color: #fff !important;
    font-size: clamp(27px, 4vw, 35px) !important;
    font-weight: 800;
    letter-spacing: -0.02em;
    line-height: 1.2;
}

.wpcp-custom-cta p {
    margin: 0 !important;
    color: #cbd5e1 !important;
    font-size: 16px;
    line-height: 1.7;
}

.wpcp-custom-cta .wpcp-eyebrow {
    color: #72b9f8;
}

/* Tablet */
@media (max-width: 1024px) {
    .page-id-11 .wp-block-edd-downloads {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

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

    .wpcp-custom-cta-inner {
        padding: 40px 34px;
    }
}

/* Mobile */
@media (max-width: 640px) {
    .wpcp-plugins-wrap,
    .page-id-11 .wp-block-edd-downloads,
    .wpcp-custom-cta {
        width: calc(100% - 28px) !important;
    }

    .wpcp-plugins-hero {
        padding: 58px 14px 55px;
    }

    .wpcp-plugins-hero h1 {
        font-size: 34px !important;
    }

    .wpcp-plugins-hero p {
        font-size: 15px;
    }

    .wpcp-hero-actions {
        flex-direction: column;
    }

    .wpcp-hero-actions .wpcp-btn {
        width: 100%;
    }

    .wpcp-hero-benefits {
        gap: 8px;
    }

    .wpcp-catalog-intro {
        padding: 52px 14px 28px;
    }

    .page-id-11 .wp-block-edd-downloads {
        margin-bottom: 52px !important;
        grid-template-columns: 1fr !important;
        gap: 18px !important;
    }

    .page-id-11 .edd-blocks__download-header > a:first-child {
        height: 205px;
    }

    .wpcp-plugin-benefits {
        padding: 55px 14px;
    }

    .wpcp-benefit-grid {
        grid-template-columns: 1fr;
    }

    .wpcp-custom-cta {
        margin: 48px auto !important;
    }

    .wpcp-custom-cta-inner {
        flex-direction: column;
        align-items: flex-start;
        padding: 32px 23px;
    }

    .wpcp-custom-cta-action,
    .wpcp-custom-cta-action .wpcp-btn {
        width: 100%;
    }
}

@media (prefers-reduced-motion: reduce) {
    .page-id-11 .edd-blocks__download,
    .page-id-11 .edd-blocks__download-image,
    .wpcp-btn {
        transition: none;
    }
}


/* =====================================================
   PLUGINS PAGE — BUTTON AND SPACING FIXES
   ===================================================== */

/* Hide EDD's no-JavaScript duplicate purchase button */
.edd-js.page-id-11
.edd-blocks__download
.edd-no-js.edd-submit.button {
    display: none !important;
}

/* Keep Checkout hidden until a product is added */
.page-id-11
.edd-blocks__download
.edd_go_to_checkout.button[style*="display:none"],
.page-id-11
.edd-blocks__download
.edd_go_to_checkout.button[style*="display: none"] {
    display: none !important;
}

/* Only show the main Add to Cart button initially */
.page-id-11
.edd-blocks__download
button.edd-add-to-cart {
    display: inline-flex !important;
}

/* Remove large blank space above hero and below content */
.page-id-11 .site-content {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    margin: 0 !important;
}

.page-id-11 .site-content > .container {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

.page-id-11 .site-main,
.page-id-11 article.page,
.page-id-11 article.page .text-holder,
.page-id-11 .entry-content {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

.page-id-11 .entry-footer,
.page-id-11 .post-edit-link {
    display: none !important;
}

/* More compact hero */
.wpcp-plugins-hero {
    padding-top: 68px !important;
    padding-bottom: 62px !important;
}

/* Reduce catalog whitespace */
.wpcp-catalog-intro {
    padding-top: 52px !important;
    padding-bottom: 26px !important;
}

.page-id-11 .wp-block-edd-downloads {
    margin-bottom: 55px !important;
}

/* Reduce description height */
.page-id-11 .edd-blocks__download-content > p {
    min-height: 92px !important;
    -webkit-line-clamp: 4;
}

/* More compact product card */
.page-id-11 .edd-blocks__download-header h3 {
    padding: 20px 20px 0 !important;
}

.page-id-11 .edd-blocks__download-content {
    padding: 12px 20px 0 !important;
}

.page-id-11 .edd-blocks__download-footer {
    padding: 16px 20px 20px !important;
}

/* Reduce benefits whitespace */
.wpcp-plugin-benefits {
    padding-top: 58px !important;
    padding-bottom: 58px !important;
}

.wpcp-section-heading {
    margin-bottom: 28px !important;
}

/* Reduce space around final CTA */
.wpcp-custom-cta {
    margin-top: 48px !important;
    margin-bottom: 48px !important;
}

@media (max-width: 640px) {
    .wpcp-plugins-hero {
        padding-top: 48px !important;
        padding-bottom: 48px !important;
    }

    .wpcp-catalog-intro {
        padding-top: 42px !important;
        padding-bottom: 24px !important;
    }

    .page-id-11 .wp-block-edd-downloads {
        margin-bottom: 40px !important;
    }

    .wpcp-plugin-benefits {
        padding-top: 45px !important;
        padding-bottom: 45px !important;
    }

    .wpcp-custom-cta {
        margin-top: 36px !important;
        margin-bottom: 36px !important;
    }
}



/* =====================================================
   WP CODEX PLUGINS — CUSTOM FOOTER
   ===================================================== */

.site-footer {
    position: relative;
    color: #aeb9c5;
    background: #171e24;
}

/* Main footer area */
.site-footer .footer-t {
    padding: 64px 0 55px !important;
    background:
        radial-gradient(
            circle at 90% 10%,
            rgba(47, 141, 228, 0.08),
            transparent 30%
        ),
        #171e24;
}

.site-footer .footer-t > .container {
    width: min(1160px, calc(100% - 40px)) !important;
    max-width: 1160px !important;
    margin-inline: auto;
    padding: 0 !important;
}

/* Four-column grid */
.site-footer .wpcp-footer-grid {
    display: grid !important;
    grid-template-columns: 1.35fr 0.8fr 0.9fr 1.15fr;
    gap: 48px;
    align-items: start;
}

.site-footer .wpcp-footer-grid > .col {
    width: auto !important;
    min-width: 0;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
}

/* Remove default widget spacing */
.site-footer .widget,
.site-footer .widget:last-child {
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
}

/* Footer logo */
.site-footer .wpcp-footer-logo {
    display: inline-block;
    margin-bottom: 20px;
    text-decoration: none;
}

.site-footer .wpcp-footer-logo img {
    display: block;
    width: 220px;
    max-width: 100%;
    height: auto;
    margin: 0 !important;
}

/* Brand text */
.site-footer .wpcp-footer-brand p {
    max-width: 310px;
    margin: 0 0 16px !important;
    color: #aeb9c5 !important;
    font-size: 14px !important;
    line-height: 1.75 !important;
}

.site-footer .wpc-footer-trust {
    color: #69b5f6 !important;
    font-size: 12px !important;
    font-weight: 700;
    letter-spacing: 0.01em;
}

/* Footer headings */
.site-footer .widget-title,
.site-footer .blossomthemes-email-newsletter-wrapper h3,
.site-footer .wpcp-footer-newsletter h2,
.site-footer .wpcp-footer-newsletter h3 {
    margin: 3px 0 21px !important;
    padding: 0 !important;
    color: #fff !important;
    font-size: 16px !important;
    font-weight: 750 !important;
    letter-spacing: -0.01em;
    line-height: 1.4 !important;
    text-transform: none !important;
}

/* Small blue line under headings */
.site-footer .widget-title::after,
.site-footer .blossomthemes-email-newsletter-wrapper h3::after {
    display: block;
    width: 32px;
    height: 2px;
    margin-top: 10px;
    border-radius: 999px;
    background: #2f8de4;
    content: "";
}

/* Footer navigation */
.site-footer .wpc-footer-links {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

.site-footer .wpc-footer-links li {
    display: block !important;
    margin: 0 0 12px !important;
    padding: 0 !important;
    border: 0 !important;
    list-style: none !important;
}

.site-footer .wpc-footer-links li::before,
.site-footer .wpc-footer-links li::marker {
    display: none !important;
    content: none !important;
}

.site-footer .wpc-footer-links a {
    display: inline-block;
    position: relative;
    color: #aeb9c5 !important;
    font-size: 14px;
    line-height: 1.5;
    text-decoration: none !important;
    transition: color 0.2s ease, transform 0.2s ease;
}

.site-footer .wpc-footer-links a:hover,
.site-footer .wpc-footer-links a:focus {
    color: #69b5f6 !important;
    transform: translateX(3px);
}

/* Newsletter wrapper */
.site-footer .wpcp-footer-newsletter,
.site-footer .wpcp-footer-newsletter .widget,
.site-footer .blossomthemes-email-newsletter-wrapper,
.site-footer .blossomthemes-email-newsletter-wrapper .text-holder {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #aeb9c5 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.site-footer .blossomthemes-email-newsletter-wrapper p,
.site-footer .wpcp-footer-newsletter p {
    margin: 0 0 17px !important;
    color: #aeb9c5 !important;
    font-size: 13px !important;
    line-height: 1.7 !important;
}

.site-footer .blossomthemes-email-newsletter-wrapper form {
    display: flex;
    width: 100%;
    flex-direction: column;
    gap: 10px;
    margin: 0 !important;
}

/* Newsletter email field */
.site-footer .blossomthemes-email-newsletter-wrapper input[type="text"],
.site-footer .blossomthemes-email-newsletter-wrapper input[type="email"] {
    width: 100% !important;
    height: 47px !important;
    margin: 0 !important;
    padding: 0 14px !important;
    border: 1px solid #3b4650 !important;
    border-radius: 8px !important;
    outline: none !important;
    color: #172033 !important;
    background: #fff !important;
    box-shadow: none !important;
    font-family: inherit;
    font-size: 14px !important;
}

.site-footer .blossomthemes-email-newsletter-wrapper input[type="text"]:focus,
.site-footer .blossomthemes-email-newsletter-wrapper input[type="email"]:focus {
    border-color: #55aaf3 !important;
    box-shadow: 0 0 0 3px rgba(47, 141, 228, 0.16) !important;
}

.site-footer .blossomthemes-email-newsletter-wrapper input::placeholder {
    color: #7b8794 !important;
    opacity: 1;
}

/* Newsletter button */
.site-footer .blossomthemes-email-newsletter-wrapper input[type="submit"] {
    width: 100% !important;
    height: 47px !important;
    margin: 0 !important;
    padding: 0 18px !important;
    border: 1px solid #2f8de4 !important;
    border-radius: 8px !important;
    color: #fff !important;
    background: #2f8de4 !important;
    box-shadow: none !important;
    font-family: inherit;
    font-size: 14px !important;
    font-weight: 700 !important;
    cursor: pointer;
    transition:
        background 0.2s ease,
        border-color 0.2s ease,
        transform 0.2s ease;
}

.site-footer .blossomthemes-email-newsletter-wrapper input[type="submit"]:hover {
    border-color: #176fc1 !important;
    background: #176fc1 !important;
    transform: translateY(-1px);
}

/* Newsletter response */
.site-footer .bten-response {
    margin-top: 10px;
    color: #cbd5e1 !important;
    font-size: 13px;
}

/* Bottom footer */
.site-footer .footer-b {
    padding: 20px 0 !important;
    border-top: 1px solid rgba(255, 255, 255, 0.09);
    background: #13191e;
}

.site-footer .footer-b > .container {
    display: flex;
    width: min(1160px, calc(100% - 40px)) !important;
    max-width: 1160px !important;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    margin-inline: auto;
    padding: 0 !important;
}

.site-footer .site-info {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px 24px;
    color: #84909c;
    font-size: 13px;
}

.site-footer .copyright {
    color: #84909c !important;
    font-size: 13px !important;
}

/* Legal links */
.site-footer .wpcp-footer-legal {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 18px;
}

.site-footer .wpcp-footer-legal a {
    position: relative;
    color: #9ca7b2 !important;
    font-size: 13px;
    text-decoration: none !important;
}

.site-footer .wpcp-footer-legal a:hover {
    color: #69b5f6 !important;
}

.site-footer .wpcp-footer-legal a + a::before {
    position: absolute;
    left: -11px;
    color: #505b65;
    content: "·";
}

/* Social icons */
.site-footer .social-networks {
    display: flex;
    flex-shrink: 0;
    align-items: center;
    gap: 9px;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

.site-footer .social-networks li {
    margin: 0 !important;
    padding: 0 !important;
}

.site-footer .social-networks a {
    display: inline-flex;
    width: 34px;
    height: 34px;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(255, 255, 255, 0.11);
    border-radius: 50%;
    color: #b8c2cc !important;
    background: rgba(255, 255, 255, 0.04);
    text-decoration: none !important;
    transition:
        color 0.2s ease,
        background 0.2s ease,
        border-color 0.2s ease,
        transform 0.2s ease;
}

.site-footer .social-networks a:hover {
    border-color: #2f8de4;
    color: #fff !important;
    background: #2f8de4;
    transform: translateY(-2px);
}

/* Tablet */
@media (max-width: 960px) {
    .site-footer .wpcp-footer-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 42px 36px;
    }
}

/* Mobile */
@media (max-width: 600px) {
    .site-footer .footer-t {
        padding: 48px 0 42px !important;
    }

    .site-footer .footer-t > .container,
    .site-footer .footer-b > .container {
        width: calc(100% - 30px) !important;
    }

    .site-footer .wpcp-footer-grid {
        grid-template-columns: 1fr;
        gap: 34px;
    }

    .site-footer .wpcp-footer-brand p {
        max-width: none;
    }

    .site-footer .footer-b > .container {
        flex-direction: column;
        justify-content: center;
        gap: 16px;
        text-align: center;
    }

    .site-footer .site-info,
    .site-footer .wpcp-footer-legal,
    .site-footer .social-networks {
        justify-content: center;
    }
}

@media (prefers-reduced-motion: reduce) {
    .site-footer a,
    .site-footer input[type="submit"] {
        transition: none !important;
    }
}



/* =====================================================
   WP CODEX PLUGINS — PREMIUM BLOG ARTICLE DESIGN
   Site colours:
   Navy:  #21272c
   Blue:  #2f8be6
   Border:#dae1e7
   Soft:  #f1f5f8
   Muted: #86919d
   ===================================================== */

.single-post {
    --wpc-blog-navy: #21272c;
    --wpc-blog-navy-deep: #111820;
    --wpc-blog-blue: #2f8be6;
    --wpc-blog-blue-dark: #176fc1;
    --wpc-blog-text: #21272c;
    --wpc-blog-body: #454f59;
    --wpc-blog-muted: #86919d;
    --wpc-blog-border: #dae1e7;
    --wpc-blog-soft: #f1f5f8;
    --wpc-blog-white: #ffffff;
}

/* Page background and primary layout */
.single-post .site-content {
    padding: 58px 0 72px !important;
    background: var(--wpc-blog-soft);
}

.single-post .site-content > .container {
    display: flex;
    width: min(1180px, calc(100% - 40px));
    max-width: 1180px;
    align-items: flex-start;
    gap: 32px;
    margin-inline: auto;
}

.single-post #primary {
    width: calc(100% - 342px) !important;
    min-width: 0;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
}

.single-post #secondary {
    width: 310px !important;
    min-width: 0;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
}

/* Main article card */
.single-post #primary article.post {
    overflow: hidden;
    margin: 0 !important;
    border: 1px solid var(--wpc-blog-border);
    border-radius: 18px;
    background: var(--wpc-blog-white);
    box-shadow: 0 12px 38px rgba(33, 39, 44, 0.08);
}

.single-post #primary article.post > .text-holder {
    margin: 0 !important;
    padding: 0 !important;
}

/* Featured image */
.single-post article.post .post-thumbnail:empty {
    display: none;
}

.single-post article.post .post-thumbnail {
    overflow: hidden;
    margin: 0 !important;
    background: #e8eef4;
}

.single-post article.post .post-thumbnail img {
    display: block;
    width: 100%;
    height: auto;
    max-height: 460px;
    margin: 0 !important;
    object-fit: cover;
    object-position: center;
}

/* Premium article heading area */
.single-post article.post .entry-header {
    position: relative;
    overflow: hidden;
    margin: 0 !important;
    padding: 50px 46px 42px !important;
    background:
        radial-gradient(
            circle at 90% 12%,
            rgba(47, 139, 230, 0.28),
            transparent 36%
        ),
        radial-gradient(
            circle at 8% 90%,
            rgba(47, 139, 230, 0.12),
            transparent 30%
        ),
        linear-gradient(
            135deg,
            var(--wpc-blog-navy-deep) 0%,
            var(--wpc-blog-navy) 58%,
            #20354b 100%
        );
}

.single-post article.post .entry-header::after {
    position: absolute;
    right: -65px;
    bottom: -85px;
    width: 220px;
    height: 220px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 50%;
    content: "";
}

/* Blog H1 */
.single-post article.post .entry-header .entry-title {
    position: relative;
    z-index: 1;
    max-width: 780px;
    margin: 0 0 23px !important;
    padding: 0 !important;
    color: #fff !important;
    font-size: clamp(34px, 4.6vw, 48px) !important;
    font-weight: 800 !important;
    letter-spacing: -0.035em;
    line-height: 1.15 !important;
    text-wrap: balance;
}

/* Author, category and date */
.single-post article.post .entry-meta {
    display: flex;
    position: relative;
    z-index: 1;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px 17px;
    margin: 0 !important;
    color: #cbd5e1 !important;
    font-size: 13px !important;
    line-height: 1.5;
}

.single-post article.post .entry-meta > span {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    margin: 0 !important;
}

.single-post article.post .entry-meta a {
    color: #e5edf5 !important;
    font-weight: 600;
    text-decoration: none !important;
}

.single-post article.post .entry-meta a:hover {
    color: #69b5f6 !important;
}

.single-post article.post .entry-meta .avatar {
    width: 30px !important;
    height: 30px !important;
    margin: 0 !important;
    border: 2px solid rgba(255, 255, 255, 0.25);
    border-radius: 50%;
}

.single-post article.post .entry-meta .cat-links a {
    padding: 5px 10px;
    border: 1px solid rgba(105, 181, 246, 0.30);
    border-radius: 999px;
    color: #8fcafb !important;
    background: rgba(47, 139, 230, 0.12);
    font-size: 12px;
}

/* Article content */
.single-post article.post .entry-content {
    max-width: none;
    margin: 0 !important;
    padding: 44px 46px 50px !important;
    color: var(--wpc-blog-body);
    font-size: 17px;
    line-height: 1.82;
}

.single-post article.post .entry-content > p:first-child {
    color: #35404a;
    font-size: 19px;
    font-weight: 500;
    line-height: 1.78;
}

.single-post article.post .entry-content p {
    margin: 0 0 23px !important;
    color: var(--wpc-blog-body);
    font-size: 17px;
    line-height: 1.82;
}

/* Content links */
.single-post article.post .entry-content a:not(.wp-block-button__link) {
    color: var(--wpc-blog-blue-dark);
    font-weight: 650;
    text-decoration-line: underline;
    text-decoration-color: rgba(47, 139, 230, 0.35);
    text-decoration-thickness: 1px;
    text-underline-offset: 3px;
    transition: color 0.18s ease, text-decoration-color 0.18s ease;
}

.single-post article.post .entry-content a:not(.wp-block-button__link):hover {
    color: var(--wpc-blog-blue);
    text-decoration-color: var(--wpc-blog-blue);
}

/* H2 */
.single-post #primary article.post .entry-content h2.wp-block-heading,
.single-post #primary article.post .entry-content h2 {
    position: relative;
    margin: 52px 0 19px !important;
    padding: 0 0 13px !important;
    color: var(--wpc-blog-text) !important;
    font-size: clamp(27px, 3.2vw, 33px) !important;
    font-weight: 800 !important;
    letter-spacing: -0.025em;
    line-height: 1.25 !important;
}

.single-post #primary article.post .entry-content h2::after {
    display: block;
    width: 48px;
    height: 3px;
    margin-top: 13px;
    border-radius: 999px;
    background: var(--wpc-blog-blue);
    content: "";
}

/* First H2 needs less space */
.single-post article.post .entry-content > h2:first-of-type {
    margin-top: 42px !important;
}

/* H3 */
.single-post #primary article.post .entry-content h3.wp-block-heading,
.single-post #primary article.post .entry-content h3 {
    margin: 34px 0 13px !important;
    padding: 0 !important;
    color: #29323b !important;
    font-size: 22px !important;
    font-weight: 750 !important;
    letter-spacing: -0.015em;
    line-height: 1.35 !important;
}

/* H4 */
.single-post #primary article.post .entry-content h4 {
    margin: 28px 0 12px !important;
    color: #35404a !important;
    font-size: 18px !important;
    font-weight: 750;
    line-height: 1.4;
}

/* Lists */
.single-post #primary article.post .entry-content .wp-block-list,
.single-post #primary article.post .entry-content ul,
.single-post #primary article.post .entry-content ol {
    margin: 6px 0 27px !important;
    padding-left: 27px !important;
    color: var(--wpc-blog-body);
}

.single-post article.post .entry-content li {
    margin: 0 0 10px !important;
    padding-left: 5px;
    color: var(--wpc-blog-body);
    font-size: 16px;
    line-height: 1.72;
}

.single-post article.post .entry-content ul li::marker {
    color: var(--wpc-blog-blue) !important;
}

.single-post article.post .entry-content ol li::marker {
    color: var(--wpc-blog-blue);
    font-weight: 800;
}

/* Quick-answer and standard quotes */
.single-post article.post .entry-content .wp-block-quote {
    position: relative;
    overflow: hidden;
    margin: 32px 0 !important;
    padding: 25px 28px 25px 31px !important;
    border: 1px solid #bfdcf5 !important;
    border-left: 5px solid var(--wpc-blog-blue) !important;
    border-radius: 12px;
    background:
        linear-gradient(
            135deg,
            rgba(47, 139, 230, 0.10),
            rgba(241, 245, 248, 0.75)
        );
    box-shadow: none;
}

.single-post article.post .entry-content .wp-block-quote::before {
    position: absolute;
    top: -16px;
    right: 17px;
    color: rgba(47, 139, 230, 0.12);
    font-family: Georgia, serif;
    font-size: 100px;
    line-height: 1;
    content: "“";
}

.single-post article.post .entry-content .wp-block-quote p {
    position: relative;
    z-index: 1;
    margin: 0 !important;
    color: #2c5680 !important;
    font-size: 16px;
    line-height: 1.72;
}

.single-post article.post .entry-content .wp-block-quote strong {
    color: var(--wpc-blog-blue-dark);
}

/* Tables */
.single-post article.post .entry-content .wp-block-table {
    overflow-x: auto;
    margin: 30px 0 35px !important;
    border: 1px solid var(--wpc-blog-border);
    border-radius: 13px;
    background: #fff;
    box-shadow: 0 8px 26px rgba(33, 39, 44, 0.06);
}

.single-post article.post .entry-content .wp-block-table table {
    width: 100%;
    min-width: 680px;
    margin: 0 !important;
    border: 0 !important;
    border-collapse: collapse;
    background: #fff;
}

.single-post article.post .entry-content .wp-block-table th {
    padding: 16px 17px !important;
    border: 0 !important;
    border-right: 1px solid rgba(255, 255, 255, 0.09) !important;
    color: #fff !important;
    background: var(--wpc-blog-navy) !important;
    font-size: 13px;
    font-weight: 750;
    letter-spacing: 0.02em;
    line-height: 1.45;
    text-align: left;
}

.single-post article.post .entry-content .wp-block-table td {
    padding: 15px 17px !important;
    border: 0 !important;
    border-right: 1px solid #e6ebef !important;
    border-bottom: 1px solid #e6ebef !important;
    color: #454f59;
    font-size: 14px;
    line-height: 1.58;
    vertical-align: top;
}

.single-post article.post .entry-content .wp-block-table tbody tr:nth-child(even) td {
    background: #f7f9fb;
}

.single-post article.post .entry-content .wp-block-table tbody tr:hover td {
    background: #edf6fe;
}

.single-post article.post .entry-content .wp-block-table tr:last-child td {
    border-bottom: 0 !important;
}

.single-post article.post .entry-content .wp-block-table th:last-child,
.single-post article.post .entry-content .wp-block-table td:last-child {
    border-right: 0 !important;
}

/* Gutenberg buttons */
.single-post article.post .entry-content .wp-block-buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin: 31px 0 36px !important;
}

.single-post article.post .entry-content .wp-block-button {
    margin: 0 !important;
}

.single-post article.post .entry-content .wp-block-button__link {
    display: inline-flex;
    min-height: 48px;
    align-items: center;
    justify-content: center;
    padding: 13px 22px !important;
    border: 1px solid var(--wpc-blog-blue) !important;
    border-radius: 8px !important;
    color: #fff !important;
    background: var(--wpc-blog-blue) !important;
    box-shadow: 0 8px 20px rgba(47, 139, 230, 0.20);
    font-size: 14px !important;
    font-weight: 750 !important;
    line-height: 1.35;
    text-decoration: none !important;
    transition:
        transform 0.18s ease,
        background 0.18s ease,
        border-color 0.18s ease,
        box-shadow 0.18s ease;
}

.single-post article.post .entry-content .wp-block-button__link:hover {
    border-color: var(--wpc-blog-blue-dark) !important;
    color: #fff !important;
    background: var(--wpc-blog-blue-dark) !important;
    box-shadow: 0 11px 25px rgba(47, 139, 230, 0.25);
    transform: translateY(-2px);
}

/* Outline button */
.single-post article.post .entry-content .wp-block-button.is-style-outline .wp-block-button__link {
    color: var(--wpc-blog-blue-dark) !important;
    background: #fff !important;
    box-shadow: none;
}

.single-post article.post .entry-content .wp-block-button.is-style-outline .wp-block-button__link:hover {
    color: #fff !important;
    background: var(--wpc-blog-blue) !important;
}

/* Content images */
.single-post article.post .entry-content .wp-block-image {
    margin: 34px 0 !important;
}

.single-post article.post .entry-content .wp-block-image img {
    display: block;
    overflow: hidden;
    width: 100%;
    height: auto;
    border: 1px solid var(--wpc-blog-border);
    border-radius: 13px;
    box-shadow: 0 10px 30px rgba(33, 39, 44, 0.09);
}

.single-post article.post .entry-content figcaption {
    margin-top: 10px !important;
    color: var(--wpc-blog-muted);
    font-size: 13px;
    font-style: normal;
    line-height: 1.55;
    text-align: center;
}

/* Code blocks */
.single-post article.post .entry-content pre,
.single-post article.post .entry-content .wp-block-code {
    overflow-x: auto;
    margin: 29px 0 !important;
    padding: 23px !important;
    border: 1px solid #34424f;
    border-radius: 11px;
    color: #e4edf5;
    background: #17212b;
    font-size: 14px;
    line-height: 1.65;
}

.single-post article.post .entry-content code:not(pre code) {
    padding: 2px 6px;
    border-radius: 5px;
    color: #2c5680;
    background: #eaf4fd;
    font-size: 0.9em;
}

/* Separator */
.single-post article.post .entry-content .wp-block-separator {
    margin: 42px 0 !important;
    border: 0;
    border-top: 1px solid var(--wpc-blog-border);
}

/* Post views */
.single-post article.post .post-views {
    margin: 35px 0 0 !important;
    padding-top: 18px;
    border-top: 1px solid var(--wpc-blog-border);
    color: var(--wpc-blog-muted);
    font-size: 12px;
}

/* Entry footer/tags */
.single-post article.post .entry-footer {
    padding: 0 46px 40px;
    color: var(--wpc-blog-muted);
    background: #fff;
}

.single-post article.post .tags-links a {
    display: inline-block;
    margin: 5px 5px 0 0;
    padding: 6px 10px;
    border: 1px solid var(--wpc-blog-border);
    border-radius: 999px;
    color: #5f6b76;
    background: var(--wpc-blog-soft);
    font-size: 12px;
    text-decoration: none;
}

.single-post article.post .tags-links a:hover {
    border-color: #a9d1f3;
    color: var(--wpc-blog-blue-dark);
    background: #eaf4fd;
}

/* Previous and next navigation */
.single-post .post-navigation {
    margin: 28px 0 0 !important;
    padding: 24px;
    border: 1px solid var(--wpc-blog-border);
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 7px 22px rgba(33, 39, 44, 0.05);
}

.single-post .post-navigation .nav-links {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
}

.single-post .post-navigation a {
    color: var(--wpc-blog-text);
    font-weight: 700;
    text-decoration: none;
}

.single-post .post-navigation a:hover {
    color: var(--wpc-blog-blue);
}

/* Comments */
.single-post .comments-area {
    margin-top: 28px;
    padding: 34px;
    border: 1px solid var(--wpc-blog-border);
    border-radius: 15px;
    background: #fff;
    box-shadow: 0 7px 24px rgba(33, 39, 44, 0.05);
}

.single-post .comments-title,
.single-post .comment-reply-title {
    margin: 0 0 22px !important;
    color: var(--wpc-blog-text);
    font-size: 25px;
    font-weight: 800;
}

.single-post .comment-form label {
    display: block;
    margin-bottom: 7px;
    color: #35404a;
    font-size: 14px;
    font-weight: 700;
}

.single-post .comment-form input[type="text"],
.single-post .comment-form input[type="email"],
.single-post .comment-form input[type="url"],
.single-post .comment-form textarea {
    width: 100%;
    margin: 0;
    padding: 12px 14px;
    border: 1px solid #cbd4dc;
    border-radius: 8px;
    color: var(--wpc-blog-text);
    background: #fff;
    font-size: 15px;
}

.single-post .comment-form input:focus,
.single-post .comment-form textarea:focus {
    border-color: var(--wpc-blog-blue);
    outline: 0;
    box-shadow: 0 0 0 3px rgba(47, 139, 230, 0.13);
}

.single-post .comment-form input[type="submit"] {
    padding: 13px 23px;
    border: 1px solid var(--wpc-blog-blue);
    border-radius: 8px;
    color: #fff;
    background: var(--wpc-blog-blue);
    font-size: 14px;
    font-weight: 750;
    cursor: pointer;
}

.single-post .comment-form input[type="submit"]:hover {
    border-color: var(--wpc-blog-blue-dark);
    background: var(--wpc-blog-blue-dark);
}

/* Sidebar widgets */
.single-post #secondary .widget {
    overflow: hidden;
    margin: 0 0 22px !important;
    padding: 25px !important;
    border: 1px solid var(--wpc-blog-border);
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 7px 23px rgba(33, 39, 44, 0.055);
}

.single-post #secondary .widget-title,
.single-post #secondary .widget h2 {
    position: relative;
    margin: 0 0 20px !important;
    padding: 0 0 12px !important;
    color: var(--wpc-blog-text) !important;
    font-size: 18px !important;
    font-weight: 800;
    line-height: 1.4;
}

.single-post #secondary .widget-title::after,
.single-post #secondary .widget h2::after {
    display: block;
    width: 35px;
    height: 2px;
    margin-top: 10px;
    border-radius: 999px;
    background: var(--wpc-blog-blue);
    content: "";
}

.single-post #secondary .widget ul {
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

.single-post #secondary .widget li {
    margin: 0 !important;
    padding: 10px 0 !important;
    border-bottom: 1px solid #edf0f3;
    color: var(--wpc-blog-muted);
    font-size: 13px;
    list-style: none !important;
}

.single-post #secondary .widget li:last-child {
    border-bottom: 0;
}

.single-post #secondary .widget a {
    color: #454f59;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.5;
    text-decoration: none;
}

.single-post #secondary .widget a:hover {
    color: var(--wpc-blog-blue);
}

/* Sidebar search */
.single-post #secondary .search-form {
    display: flex;
}

.single-post #secondary .search-field {
    min-width: 0;
    height: 44px;
    flex: 1;
    padding: 0 12px;
    border: 1px solid #cbd4dc;
    border-radius: 7px 0 0 7px;
}

.single-post #secondary .search-submit {
    height: 44px;
    padding: 0 14px;
    border: 1px solid var(--wpc-blog-blue);
    border-radius: 0 7px 7px 0;
    color: #fff;
    background: var(--wpc-blog-blue);
}

/* Keep anchors visible below sticky header */
.single-post article.post .entry-content h2[id] {
    scroll-margin-top: 100px;
}

/* Tablet */
@media (max-width: 1050px) {
    .single-post .site-content > .container {
        gap: 25px;
    }

    .single-post #primary {
        width: calc(100% - 300px) !important;
    }

    .single-post #secondary {
        width: 275px !important;
    }

    .single-post article.post .entry-header {
        padding: 43px 36px 37px !important;
    }

    .single-post article.post .entry-content {
        padding: 39px 36px 44px !important;
    }
}

/* Mobile and small tablet */
@media (max-width: 820px) {
    .single-post .site-content {
        padding: 30px 0 45px !important;
    }

    .single-post .site-content > .container {
        display: block;
        width: calc(100% - 28px);
    }

    .single-post #primary,
    .single-post #secondary {
        width: 100% !important;
    }

    .single-post #secondary {
        margin-top: 30px !important;
    }

    .single-post article.post .entry-header {
        padding: 36px 26px 32px !important;
    }

    .single-post article.post .entry-header .entry-title {
        font-size: 34px !important;
    }

    .single-post article.post .entry-content {
        padding: 34px 27px 39px !important;
    }

    .single-post article.post .entry-footer {
        padding-right: 27px;
        padding-left: 27px;
    }
}

/* Small mobile */
@media (max-width: 520px) {
    .single-post article.post {
        border-radius: 13px;
    }

    .single-post article.post .entry-header {
        padding: 31px 20px 28px !important;
    }

    .single-post article.post .entry-header .entry-title {
        font-size: 30px !important;
        letter-spacing: -0.025em;
    }

    .single-post article.post .entry-meta {
        gap: 9px 12px;
    }

    .single-post article.post .entry-content {
        padding: 29px 20px 34px !important;
    }

    .single-post article.post .entry-content > p:first-child {
        font-size: 17px;
    }

    .single-post article.post .entry-content p {
        font-size: 16px;
        line-height: 1.76;
    }

    .single-post #primary article.post .entry-content h2 {
        margin-top: 42px !important;
        font-size: 26px !important;
    }

    .single-post #primary article.post .entry-content h3 {
        font-size: 20px !important;
    }

    .single-post article.post .entry-content .wp-block-quote {
        padding: 22px 20px 22px 23px !important;
    }

    .single-post article.post .entry-content .wp-block-buttons {
        flex-direction: column;
    }

    .single-post article.post .entry-content .wp-block-button,
    .single-post article.post .entry-content .wp-block-button__link {
        width: 100%;
    }

    .single-post .post-navigation .nav-links {
        grid-template-columns: 1fr;
    }

    .single-post .comments-area {
        padding: 25px 20px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .single-post a,
    .single-post button,
    .single-post input {
        transition: none !important;
    }
}


/* Remove theme gap above single posts */
.single-post .site-content {
    margin-top: 0 !important;
    padding-top: 42px !important;
}

/* Centre article when the sidebar has no widgets */
.single-post .site-content > .container:has(> #secondary:empty) {
    justify-content: center;
}

.single-post
.site-content
> .container:has(> #secondary:empty)
#primary {
    width: min(900px, 100%) !important;
    margin-right: auto !important;
    margin-left: auto !important;
}

/* Ensure empty sidebar takes no space */
.single-post #secondary:empty {
    display: none !important;
}

/* Mobile spacing */
@media (max-width: 820px) {
    .single-post .site-content {
        margin-top: 0 !important;
        padding-top: 28px !important;
    }
}


/* =====================================================
   PREMIUM "YOU MAY ALSO LIKE" RELATED POSTS
   ===================================================== */

.single-post #primary .related-posts {
    margin: 32px 0 0 !important;
    padding: 34px !important;
    border: 1px solid var(--wpc-blog-border, #dae1e7);
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 8px 28px rgba(33, 39, 44, 0.06);
}

/* Section heading */
.single-post .related-posts .section-title {
    position: relative;
    margin: 0 0 28px !important;
    padding: 0 0 15px !important;
    color: var(--wpc-blog-text, #21272c) !important;
    font-size: 28px !important;
    font-weight: 800 !important;
    letter-spacing: -0.025em;
    line-height: 1.25 !important;
}

.single-post .related-posts .section-title::before {
    display: block;
    margin-bottom: 8px;
    color: var(--wpc-blog-blue, #2f8be6);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.12em;
    line-height: 1.4;
    text-transform: uppercase;
    content: "Related Reading";
}

.single-post .related-posts .section-title::after {
    display: block;
    width: 46px;
    height: 3px;
    margin-top: 13px;
    border-radius: 999px;
    background: var(--wpc-blog-blue, #2f8be6);
    content: "";
}

/* Related posts grid */
.single-post .related-posts .post-holder {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
    margin: 0 !important;
}

/* Individual card */
.single-post .related-posts .post-holder > .col {
    display: flex !important;
    overflow: hidden;
    width: auto !important;
    min-width: 0;
    height: 100%;
    flex-direction: column;
    margin: 0 !important;
    padding: 0 !important;
    border: 1px solid var(--wpc-blog-border, #dae1e7);
    border-radius: 13px;
    background: #fff;
    box-shadow: 0 6px 20px rgba(33, 39, 44, 0.055);
    transition:
        transform 0.22s ease,
        border-color 0.22s ease,
        box-shadow 0.22s ease;
}

.single-post .related-posts .post-holder > .col:hover {
    border-color: #b7d8f4;
    box-shadow: 0 14px 34px rgba(33, 39, 44, 0.11);
    transform: translateY(-4px);
}

/* Featured image */
.single-post .related-posts .post-thumbnail {
    display: block;
    overflow: hidden;
    width: 100%;
    aspect-ratio: 16 / 10;
    margin: 0 !important;
    border-bottom: 1px solid var(--wpc-blog-border, #dae1e7);
    background: var(--wpc-blog-soft, #f1f5f8);
}

.single-post .related-posts .post-thumbnail img {
    display: block;
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
    object-fit: cover;
    object-position: center;
    transition: transform 0.35s ease;
}

.single-post
.related-posts
.post-holder
> .col:hover
.post-thumbnail img {
    transform: scale(1.045);
}

/* Related article title */
.single-post .related-posts h3.entry-title {
    margin: 0 !important;
    padding: 19px 19px 13px !important;
    font-size: 17px !important;
    font-weight: 750 !important;
    letter-spacing: -0.012em;
    line-height: 1.42 !important;
}

.single-post .related-posts h3.entry-title a {
    display: -webkit-box;
    overflow: hidden;
    color: var(--wpc-blog-text, #21272c) !important;
    text-decoration: none !important;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}

.single-post .related-posts h3.entry-title a:hover {
    color: var(--wpc-blog-blue, #2f8be6) !important;
}

/* Author and category */
.single-post .related-posts .entry-meta {
    display: -webkit-box;
    overflow: hidden;
    min-height: 60px;
    margin: auto 19px 0 !important;
    padding: 14px 0 18px !important;
    border-top: 1px solid #edf0f3;
    color: var(--wpc-blog-muted, #86919d) !important;
    font-size: 11px !important;
    line-height: 1.6 !important;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.single-post .related-posts .entry-meta img.avatar {
    width: 22px !important;
    height: 22px !important;
    margin: 0 5px 0 0 !important;
    border: 1px solid var(--wpc-blog-border, #dae1e7);
    border-radius: 50%;
    object-fit: cover;
    vertical-align: middle;
}

.single-post .related-posts .entry-meta a {
    color: #5c6975 !important;
    font-size: 11px !important;
    font-weight: 650;
    text-decoration: none !important;
}

.single-post .related-posts .entry-meta a:hover {
    color: var(--wpc-blog-blue, #2f8be6) !important;
}

/* Small arrow at the bottom of every card */
.single-post .related-posts .col::after {
    display: block;
    margin: 0 19px 18px;
    color: var(--wpc-blog-blue, #2f8be6);
    font-size: 12px;
    font-weight: 750;
    letter-spacing: 0.01em;
    content: "Read article →";
}

/* Tablet */
@media (max-width: 900px) {
    .single-post .related-posts .post-holder {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .single-post .related-posts .post-holder > .col:last-child:nth-child(odd) {
        grid-column: 1 / -1;
        max-width: calc(50% - 10px);
    }
}

/* Mobile */
@media (max-width: 600px) {
    .single-post #primary .related-posts {
        padding: 23px 20px !important;
        border-radius: 13px;
    }

    .single-post .related-posts .section-title {
        margin-bottom: 22px !important;
        font-size: 24px !important;
    }

    .single-post .related-posts .post-holder {
        grid-template-columns: 1fr;
        gap: 17px;
    }

    .single-post .related-posts .post-holder > .col:last-child:nth-child(odd) {
        grid-column: auto;
        max-width: none;
    }

    .single-post .related-posts .post-thumbnail {
        aspect-ratio: 16 / 9;
    }

    .single-post .related-posts h3.entry-title {
        font-size: 18px !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    .single-post .related-posts .col,
    .single-post .related-posts img {
        transition: none !important;
    }
}