﻿@import url('site.css');

html {
    font-size: 14px;
}

@media (min-width: 768px) {
    html {
        font-size: 16px;
    }
}

.btn:focus, .btn:active:focus, .btn-link.nav-link:focus, .form-control:focus, .form-check-input:focus {
    box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb;
}

html {
    position: relative;
    min-height: 100%;
}

body {
    margin-bottom: 0rem;
}


<!-- NEW STYLING FROM HERE ... -->
:root {
    --primary-blue: #3b82f6; /* Medium blue */
    --light-blue: #93c5fd;
    --dark-blue: #1e40af;
    --light-orange: #fdba74;
    --orange-hover: #fb923c;
}

body {
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
    color: #333;
}



/*<!-- HERO SECTION --> ORIGINAL - OLD A*/
/* To change the height of the blue bar: padding: 4.5rem 0; */

.hero-section {
    background: linear-gradient(180deg, var(--primary-blue) 0%, var(--dark-blue) 100%);
    color: white;
    padding: 4.5rem 0;
    position: relative;
}


    .hero-section::before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><defs><pattern id="grain" width="100" height="100" patternUnits="userSpaceOnUse"><circle cx="25" cy="25" r="1" fill="rgba(255,255,255,0.1)"/><circle cx="75" cy="75" r="1" fill="rgba(255,255,255,0.1)"/><circle cx="25" cy="75" r="1" fill="rgba(255,255,255,0.05)"/><circle cx="75" cy="25" r="1" fill="rgba(255,255,255,0.05)"/></pattern></defs><rect width="100" height="100" fill="url(%23grain)"/></svg>');
        opacity: 0.3;
        pointer-events: none; /* ← ADD THIS LINE */
    }

/* Reduce hero section on ALL pages EXCEPT index page */
body:not(.index-page) .hero-section {
    padding: 1.0rem 0 !important; /* Reduce height of blue bar for all non-index pages */
}


/* EXTRA ARTICLE STYLNG HERE ... */

.article-heading {
    font-size: 36px;
    font-weight: bold;
}

.article-date {
    display: block;
    text-align: left;
}


.form-check-label {
    padding-left: 1em !important;
}

.article-meta-header {
    border-bottom: 1px solid #d1d5db; /* Thin gray line */
    padding-bottom: 0.75rem; /* Space between content and line */
    margin-bottom: 1.0rem; /* Space below the line */
}

css.article-meta-header {
    border-bottom: 1px solid #e5e7eb; /* Lighter gray */
    padding-bottom: 0.5rem;
    margin-bottom: 0.5rem;
}


/* Optional: Also reduce text sizes proportionally for better balance */
/*body:not(.index-page) .hero-section h1.display-4 {
        font-size: 2.5rem;*/ /* Slightly smaller heading */
/*margin-bottom: 1rem;*/ /* Reduced from default */
/*}

body:not(.index-page) .hero-section .fs-5 {
        font-size: 0.9rem;*/ /* Slightly smaller subtitle */
/*margin-bottom: 1rem;*/ /* Reduced spacing */
/*}*/
/* F A Q   P A G E */
/* FAQ Page Styles */
/* FAQ top section - matches hero section styling */
.faq-hero {
    background: linear-gradient(180deg, var(--primary-blue) 0%, var(--dark-blue) 100%);
    color: white;
    padding: 2rem 0; /* Bigger vertical padding */
    position: relative;
    text-align: center;
    padding: 4rem 0 6rem;
    position: relative;
}



    .faq-hero::before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><defs><pattern id="grain" width="100" height="100" patternUnits="userSpaceOnUse"><circle cx="25" cy="25" r="1" fill="rgba(255,255,255,0.1)"/><circle cx="75" cy="75" r="1" fill="rgba(255,255,255,0.1)"/><circle cx="25" cy="75" r="1" fill="rgba(255,255,255,0.05)"/><circle cx="75" cy="25" r="1" fill="rgba(255,255,255,0.05)"/></pattern></defs><rect width="100" height="100" fill="url(%23grain)"/></svg>');
        opacity: 0.3;
        z-index: 0;
    }

.faq-heading {
    font-size: .5rem; /* double previous */
    font-weight: 700;
    color: white;
    margin-bottom: 0.25rem;
    border-bottom: 5px solid var(--light-orange);
    display: inline-block;
    padding-bottom: 0.3rem;
}

.faq-subheading {
    color: white;
    margin-bottom: 2rem;
}

.faq-content-box {
    background-color: #f9fafb; /* Off-white */
    border-radius: 12px;
    max-width: 900px;
    margin: 0 auto;
    padding: 2rem 2.5rem;
    color: #333;
    text-align: left;
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.1);
}

.faq-item {
    margin-bottom: 1.75rem;
}

    .faq-item h3 {
        margin-bottom: 0.5rem;
        color: var(--dark-blue);
        font-weight: 600;
    }

    .faq-item p {
        color: #555;
        line-height: 1.5;
    }

.faq-hero .container {
    position: relative;
    z-index: 1;
}

.faq-hero h1 {
    font-size: 1.5rem;
    font-weight: 600;
    margin-bottom: 0.25rem;
    color: white; /* ✅ Ensure text is white */
}

/* FAQ Card Styling to Match HowToPDFTips */
.faq-card {
    background: #fff;
    border-radius: 1.25rem;
    box-shadow: 0 6px 24px 0 rgba(230,230,230,0.9);
    padding: 2rem 1.5rem 2.5rem 1.5rem;
    position: relative;
    margin-bottom: 2.5rem;
}

    .faq-card::after {
        content: "";
        display: block;
        position: absolute;
        left: 0;
        bottom: 0;
        width: 100%;
        height: 6px;
        background: #FDBA74;
        border-radius: 0 0 1.25rem 1.25rem;
    }

.faq-question {
    font-weight: 600;
    font-size: 1.1rem;
}

.faq-answer {
    font-size: 1rem;
    color: #334155;
}

.accordion-button:not(.collapsed) {
    color: #2563eb;
    background-color: #f1f5f9;
}


/* Orange accent for FAQ questions */
.faq-question {
    color: var(--dark-blue); /* keep question text dark for readability */
    font-weight: 600;
    position: relative;
    padding-left: 1.2rem;
    margin-bottom: 1rem;
}

    .faq-question::before {
        content: "•";
        color: var(--light-orange);
        position: absolute;
        left: 0;
        top: 0;
        font-size: 1.5rem;
        line-height: 1;
    }

/* Orange underline for the FAQ heading */
.faq-heading {
    font-size: 3rem;
    font-weight: 600;
    color: white;
    margin-bottom: 0.25rem;
    border-bottom: 4px solid var(--light-orange);
    display: inline-block;
    padding-bottom: 0.25rem;
}

/* Optional: Highlight important text in answers */
.faq-answer strong {
    color: var(--light-orange);
}

.section-subtitle {
    color: white;
    font-size: 3.2rem;
    margin-bottom: 2.5rem;
}

/* White box container for FAQ */
.faq-content-box {
    background-color: #ffffff;
    border-radius: 7px;
    padding: 2rem 2.2rem;
    max-width: 900px;
    margin: 0 auto;
    box-shadow: 0 6px 20px rgba(0,0,0,0.12);
}

/* Override Bootstrap accordion button to add orange bullet and custom styling */
.accordion-button {
    color: var(--dark-blue);
    background: transparent;
    font-weight: 600;
    font-size: 1.25rem;
    position: relative;
    padding-left: 2rem;
    border: none;
    box-shadow: none;
    transition: color 0.3s ease;
}

    .accordion-button::before {
        content: "›";
        color: var(--light-orange);
        font-size: 1.5rem;
        position: absolute;
        left: 0.7rem;
        top: 50%;
        transform: translateY(-50%);
        font-weight: bold;
    }

    .accordion-button:not(.collapsed) {
        color: var(--light-orange);
        background-color: #fef6ee;
    }

    /* Remove default accordion button arrow */
    .accordion-button::after {
        filter: invert(40%);
    }

/* Accordion body */
.accordion-body {
    font-size: 1.1rem;
    color: #444;
    padding-left: 2.5rem;
    line-height: 1.6;
}

/* Smooth transitions */
.accordion-collapse {
    transition: max-height 0.3s ease;
}

/* E N D -- F A Q   P A G E */



/* P R I C I N G - P A G E */


:root {
    --primary-blue: #3b82f6;
    --light-blue: #93c5fd;
    --dark-blue: #1e40af;
    --light-orange: #fdba74;
    --orange-hover: #fb923c;
    --success-green: #10b981;
    --light-green: #d1fae5;
}

body {
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
    color: #333;
    background: #f8fafc;
}


/* OLD 2 HERO SECTION */
/* REMOVED THIS 17 Jan 2026  */
/*.hero-section {
    background: linear-gradient(180deg, var(--primary-blue) 0%, var(--dark-blue) 100%);
    color: white;
    padding: 5rem 0;
    position: relative;
    overflow: hidden;
}

    .hero-section::before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><defs><pattern id="grain" width="100" height="100" patternUnits="userSpaceOnUse"><circle cx="25" cy="25" r="1" fill="rgba(255,255,255,0.1)"/><circle cx="75" cy="75" r="1" fill="rgba(255,255,255,0.1)"/><circle cx="25" cy="75" r="1" fill="rgba(255,255,255,0.05)"/><circle cx="75" cy="25" r="1" fill="rgba(255,255,255,0.05)"/></pattern></defs><rect width="100" height="100" fill="url(%23grain)"/></svg>');
        opacity: 0.3;
    }

.hero-content {
    position: relative;
    z-index: 2;
}
*/


.pricing-card {
    background: white;
    border-radius: 20px;
    padding: 2.5rem;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
    transition: all 0.3s ease;
    border: 1px solid #f1f5f9;
    height: 100%;
    position: relative;
    overflow: hidden;
}

    .pricing-card:hover {
        transform: translateY(-10px);
        box-shadow: 0 20px 40px rgba(0, 0, 0, 0.12);
    }

    .pricing-card.popular {
        border: 2px solid var(--primary-blue);
        transform: scale(1.05);
    }

        .pricing-card.popular::before {
            content: 'Most Popular';
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            background: var(--primary-blue);
            color: white;
            text-align: center;
            padding: 0.5rem;
            font-weight: bold;
            font-size: 0.9rem;
        }

        .pricing-card.popular .card-body {
            padding-top: 1rem;
        }

.plan-name {
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--dark-blue);
    margin-bottom: 1rem;
}

.price {
    font-size: 3rem;
    font-weight: 800;
    color: var(--primary-blue);
    margin-bottom: 0.5rem;
}

.price-small {
    font-size: 1rem;
    color: #64748b;
    font-weight: 500;
}

.annual-price {
    background: var(--light-green);
    color: var(--success-green);
    padding: 0.3rem 0.8rem;
    border-radius: 20px;
    font-size: 0.9rem;
    font-weight: 600;
    margin-top: 0.5rem;
    display: inline-block;
}

.feature-list {
    list-style: none;
    padding: 0;
    margin: 2rem 0;
}

    .feature-list li {
        padding: 0.75rem 0;
        border-bottom: 1px solid #f1f5f9;
        display: flex;
        align-items: center;
    }

        .feature-list li:last-child {
            border-bottom: none;
        }

    .feature-list i {
        color: var(--success-green);
        margin-right: 1rem;
        font-size: 1.1rem;
    }

    .feature-list .text-muted i {
        color: #cbd5e1;
    }


/*
.btn-primary {
    background-color: var(--primary-blue);
    border-color: var(--primary-blue);
    color: white;
    font-weight: bold;
    padding: 0.75rem 2rem;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease;
    border-radius: 50px;
    width: 100%;
}
*/

.btn-primary:hover {
    background-color: var(--dark-blue);
    border-color: var(--dark-blue);
    transform: translateY(-2px);
    box-shadow: 0 6px 12px rgba(0, 0, 0, 0.15);
}

.btn-outline-primary {
    border-color: var(--primary-blue);
    color: var(--primary-blue);
    font-weight: bold;
    padding: 0.75rem 2rem;
    transition: all 0.3s ease;
    border-radius: 50px;
    width: 100%;
}

    .btn-outline-primary:hover {
        background-color: var(--primary-blue);
        border-color: var(--primary-blue);
        transform: translateY(-2px);
        box-shadow: 0 6px 12px rgba(59, 130, 246, 0.15);
    }

.btn-orange {
    background-color: var(--light-orange);
    border-color: var(--light-orange);
    color: #333;
    font-weight: bold;
    padding: 0.75rem 2rem;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease;
    border-radius: 50px;
    width: 100%;
}

    .btn-orange:hover {
        background-color: var(--orange-hover);
        border-color: var(--orange-hover);
        color: #333;
        transform: translateY(-2px);
        box-shadow: 0 6px 12px rgba(0, 0, 0, 0.15);
    }



.faq-section {
    padding: 5rem 0;
    background: white;
}

.accordion-item {
    border: 1px solid #f1f5f9;
    border-radius: 10px;
    margin-bottom: 1rem;
    overflow: hidden;
}

.accordion-header button {
    background: #f8fafc;
    border: none;
    color: var(--dark-blue);
    font-weight: 600;
    padding: 1.5rem;
}

    .accordion-header button:focus {
        box-shadow: none;
        border-color: var(--primary-blue);
    }

    .accordion-header button:not(.collapsed) {
        background: var(--primary-blue);
        color: white;
    }

.accordion-body {
    padding: 1.5rem;
    color: #64748b;
}

.guarantee-banner {
    background: linear-gradient(135deg, var(--success-green) 0%, #059669 100%);
    color: white;
    padding: 2rem;
    border-radius: 15px;
    text-align: center;
    margin: 3rem 0;
}

.section-title {
    color: var(--dark-blue);
    font-weight: 700;
    margin-bottom: 1rem;
}

.section-subtitle {
    color: #64748b;
    font-size: 1.1rem;
    margin-bottom: 3rem;
}


/* IMPORTANT: Update the media query section to match the reduced size */
/*@@media (max-width: 768px) {
    .hero-section {
        padding: 1.65rem 0 !important;*/ /* 45% reduction of 3rem = 1.65rem */
/*}

    .pricing-card.popular {
        transform: none;
        margin-bottom: 2rem;
    }

    .price {
        font-size: 2.5rem;
    }
}*/

/* OLD MEDIA SECTION */
@@media (max-width: 768px) {
    .hero-section {
        padding: 3rem 0;
    }

    .pricing-card.popular {
        transform: none;
        margin-bottom: 2rem;
    }

    .price {
        font-size: 2.5rem;
    }
}

/* P R I C I N G  P A G E - E N D S  */


/* I N D E X  P A G E */

.centered-blurb {
    max-width: 800px; /* Or 600px, adjust as needed */
    width: 100%;
    padding: 1.5rem 1rem; /* Top/bottom, left/right */
    margin: 0 auto 1rem auto;
    text-align: center;
}

.process-step {
    background: #fff;
    border-radius: 1.25rem; /* 20px for modern rounded corners */
    box-shadow: 0 6px 24px 0 rgba(230, 230, 230, 0.9); /* soft off-white shadow */
    padding: 2rem 1.5rem 2.5rem 1.5rem;
    position: relative;
    min-height: 220px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    margin-bottom: 2rem;
    transition: box-shadow 0.2s;
}

    .process-step:hover {
        box-shadow: 0 12px 32px 0 rgba(253, 186, 116, 0.18); /* subtle orange shadow on hover */
    }


/* --- */

.step-item .step-number {
    width: 35px !important;
    height: 35px !important;
    background: #FDBA74;
    color: #fff;
    font-size: 1.2rem !important;
    font-weight: 700;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 1rem !important; /* This creates space to the right of the circle */
    margin-bottom: 0 !important; /* Remove bottom margin since it's horizontal layout */
    box-shadow: 0 2px 8px rgba(253, 186, 116, 0.15);
    flex-shrink: 0;
    line-height: 1;
    text-align: center;
}

.process-step .step-number {
    width: 48px;
    height: 48px;
    background: #FDBA74;
    color: #fff;
    font-size: 1.5rem;
    font-weight: 700;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1rem; /* Add this line to center the circles */
    box-shadow: 0 2px 8px rgba(253, 186, 116, 0.15);
}

.process-step::after {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 8px;
    background: #FDBA74;
    border-radius: 0 0 1.25rem 1.25rem;
}



/* 2nd part INDEX PAGE */
:root {
    --primary-blue: #3b82f6; /* Medium blue */
    --light-blue: #93c5fd;
    --dark-blue: #1e40af;
    --light-orange: #fdba74;
    --orange-hover: #fb923c;
}

body {
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
    color: #333;
}

/* OLD 3 HERO SECITON */
/*
<!-- HERO SECTION -->
.hero-section {
    background: linear-gradient(180deg, var(--primary-blue) 0%, var(--dark-blue) 100%);
    color: white;
    padding: 6rem 0;
    position: relative;
}


.hero-section::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><defs><pattern id="grain" width="100" height="100" patternUnits="userSpaceOnUse"><circle cx="25" cy="25" r="1" fill="rgba(255,255,255,0.1)"/><circle cx="75" cy="75" r="1" fill="rgba(255,255,255,0.1)"/><circle cx="25" cy="75" r="1" fill="rgba(255,255,255,0.05)"/><circle cx="75" cy="25" r="1" fill="rgba(255,255,255,0.05)"/></pattern></defs><rect width="100" height="100" fill="url(%23grain)"/></svg>');
    opacity: 0.3;
}

*/

.btn-primary {
    background-color: var(--light-orange);
    border-color: var(--light-orange);
    color: #333;
    font-weight: bold;
    padding: 0.75rem 2rem;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease;
    border-radius: 50px;
}

    .btn-primary:hover {
        background-color: var(--orange-hover);
        border-color: var(--orange-hover);
        transform: translateY(-2px);
        box-shadow: 0 6px 12px rgba(0, 0, 0, 0.15);
    }

.btn-outline-light {
    border-radius: 50px;
    padding: 0.75rem 2rem;
    font-weight: 600;
    transition: all 0.3s ease;
}

    .btn-outline-light:hover {
        transform: translateY(-2px);
        box-shadow: 0 4px 8px rgba(255, 255, 255, 0.2);
    }

.feature-card {
    background: white;
    border-radius: 15px;
    padding: 2rem;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.08);
    transition: all 0.3s ease;
    border: 1px solid #f1f5f9;
    height: 100%;
}

    .feature-card:hover {
        transform: translateY(-5px);
        box-shadow: 0 15px 30px rgba(0, 0, 0, 0.12);
    }

.feature-icon {
    background: linear-gradient(135deg, var(--light-blue), var(--primary-blue));
    color: white;
    width: 70px;
    height: 70px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 1.5rem;
    font-size: 1.8rem;
    box-shadow: 0 4px 15px rgba(59, 130, 246, 0.3);
}

.stats-section {
    background: linear-gradient(135deg, #f8fafc 0%, #e2e8f0 100%);
    padding: 4rem 0;
}

.stat-card {
    background: white;
    border-radius: 15px;
    padding: 2rem;
    text-align: center;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05);
    transition: all 0.3s ease;
    border: 1px solid #f1f5f9;
}

    .stat-card:hover {
        transform: translateY(-3px);
        box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
    }

.stat-number {
    font-size: 3rem;
    font-weight: bold;
    color: var(--primary-blue);
    margin-bottom: 0.5rem;
}

.stat-label {
    color: #64748b;
    font-weight: 500;
    text-transform: uppercase;
    font-size: 0.9rem;
    letter-spacing: 0.5px;
}

.cta-section {
    background: linear-gradient(135deg, var(--primary-blue) 0%, var(--dark-blue) 100%);
    color: white;
    padding: 5rem 0;
    position: relative;
    overflow: hidden;
}

    .cta-section::before {
        content: '';
        position: absolute;
        top: -50%;
        left: -50%;
        width: 200%;
        height: 200%;
        background: radial-gradient(circle, rgba(255,255,255,0.1) 0%, transparent 70%);
        animation: pulse 4s ease-in-out infinite;
        pointer-events: none; /* Add this line */
    }

@@keyframes pulse {
    0%, 100% {
        transform: scale(1);
        opacity: 0.5;
    }

    50% {
        transform: scale(1.05);
        opacity: 0.8;
    }
}

.section-title {
    color: var(--dark-blue);
    font-weight: 700;
    margin-bottom: 1rem;
    position: relative;
}

.section-subtitle {
    color: #64748b;
    font-size: 1.1rem;
    margin-bottom: 3rem;
}

.process-step {
    text-align: center;
    padding: 1.5rem;
    height: 250px; /* Set a fixed height */
    display: flex;
    flex-direction: column;
    justify-content: flex-start; /* Align content to top */
}

/*.step-number {
    background: var(--light-orange);
    color: #333;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    font-size: 1.2rem;
    margin: 0 auto 1rem;
    box-shadow: 0 4px 10px rgba(253, 186, 116, 0.3);
    flex-shrink: 0;*/ /* Prevent the circle from shrinking */
/*}*/

.step-arrow {
    font-size: 2rem;
    color: var(--light-blue);
    display: flex;
    align-items: center;
    justify-content: center;
    height: 250px; /* Match the height of process-step */
}

.testimonial-preview {
    background: white;
    border-radius: 15px;
    padding: 2rem;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.08);
    border-left: 4px solid var(--light-orange);
    margin-bottom: 1.5rem;
}

.rating-stars {
    color: #fbbf24;
    margin-bottom: 1rem;
}

.hero-animation {
    animation: float 6s ease-in-out infinite;
}

@@keyframes float {
    0%, 100% {
        transform: translateY(0px);
    }

    50% {
        transform: translateY(-20px);
    }
}

.quick-convert-card {
    background: white;
    border-radius: 20px;
    padding: 2.5rem;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.1);
    position: relative;
    overflow: hidden;
}

    .quick-convert-card::before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        height: 4px;
        background: linear-gradient(90deg, var(--primary-blue), var(--light-orange));
    }

.upload-zone {
    border: 2px dashed #cbd5e1;
    border-radius: 15px;
    padding: 3rem 2rem; /* Changed from 3rem 2rem - reduces height by ~16px */
    text-align: center;
    background: #f8fafc;
    transition: all 0.3s ease;
    cursor: pointer;
}

    .upload-zone:hover {
        border-color: var(--primary-blue);
        background: #f0f9ff;
    }

.upload-icon {
    font-size: 3rem;
    color: var(--primary-blue);
    margin-bottom: 0.75rem;
}

/*.row.justify-content-center.text-center.PDFToWord {
    margin-bottom: 0.75rem;
}*/

/* Or if there's existing padding you want to reduce by 15px: */
/*.upload-card {
    padding: calc(1rem - 15px);*/ /* Subtracts 15px from existing padding */
/*}*/
/* Or set it to a specific smaller value: */
.upload-card {
    padding: 0 20px; /* 10px on each side = 20px total narrower */
}

.text-center.mb-5.PDFToWord {
    margin-bottom: 0.75rem;
}

.d-flex.justify-content-center.flex-wrap.gap-3.mb-4.PDFToWord {
    margin-bottom: 4.5rem !important;
}


@@media (max-width: 768px) {
    .hero-section {
        padding: 4rem 0;
    }

    .step-arrow {
        display: none;
    }

    .stat-number {
        font-size: 2rem;
    }
}



/* I N D E X  P A G E - E N D S */


/*  H O W T O - P D F  T I P S*/


/* Article Card Styles - IMPROVED */
/*.article-card-link {
    text-decoration: none;
    color: inherit;
}

.article-card {
    background: #fff;
    border-radius: 1.25rem;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);*/ /* Softer shadow */
/*padding: 1.5rem 1.5rem 0.75rem 1.5rem !important;*/ /* Reduced bottom padding significantly */
/*position: relative;
    transition: all 0.3s ease;*/ /* Smoother transition */
/*display: flex;
    flex-direction: column;
    margin-bottom: 1.5rem;*/ /* Increased spacing between cards */
/*border: 1px solid #f1f5f9;*/ /* Subtle border */
/*height: auto !important;*/ /* Override h-100 class */
/*}

    .article-card:hover {
        box-shadow: 0 8px 30px rgba(59, 130, 246, 0.15);*/ /* Blue-tinted shadow on hover */
/*transform: translateY(-4px);*/ /* Removed scale - can be jarring */
/*}*/

/* Article title */
/*.article-card h5 {
        color: #1e293b;
        line-height: 1.4;
        margin-bottom: 1rem;
    }*/

/* Article excerpt text */
/*.article-card .text-muted {
        color: #64748b !important;
        font-size: 0.95rem;
        line-height: 1.6;
        margin-bottom: 1.25rem;*/ /* Reduced space before date - KEY CHANGE */
/* Removed flex-grow: 1 to eliminate excessive spacing */
/*}*/

/* Date styling */
/*.article-meta {
    font-size: 0.875rem;
    padding-top: 0.75rem;*/ /* Reduced from 1rem - KEY CHANGE */
/*border-top: 1px solid #f1f5f9;*/ /* Subtle separator line */
/*margin-bottom: 0 !important;*/ /* Override Bootstrap mb-2 class */
/*}

.article-date {
    color: #94a3b8 !important;
    font-style: normal;*/ /* Remove italics if you prefer */
/*}

    .article-date i {
        font-style: italic;*/ /* Keep only date text in italics */
/*color: #64748b;
    }*/

/* Title hover effect */
/*.article-card-link:hover .fw-bold {
    color: #2563eb;
    text-decoration: none;*/ /* Remove underline, looks cleaner */
/*}*/

/* Orange accent bar at bottom - KEEP OR REMOVE? */
/*.article-card::after {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 4px;*/ /* Reduced from 6px - more subtle */
/*background: linear-gradient(90deg, #FDBA74 0%, #fb923c 100%);*/ /* Gradient looks better */
/*border-radius: 0 0 1.25rem 1.25rem;
    opacity: 0.8;*/ /* Slightly transparent */
/*transition: opacity 0.3s ease;
}

.article-card:hover::after {
    opacity: 1;*/ /* Full opacity on hover */
/*}*/

/* OR if you want to REMOVE the orange bar completely, delete the ::after section above */

/* List view links */
/*.article-list-link {
    text-decoration: none;
    color: #212529;
    transition: color 0.2s;
}

    .article-list-link:hover {
        color: #2563eb;*/ /* Changed from orange to blue for consistency */
/*text-decoration: underline;
    }*/


/* Responsive adjustments */
/*@media (max-width: 768px) {
    .article-card {
        padding: 1.5rem 1.25rem;
        min-height: 200px;
        margin-bottom: 1.25rem;
    }

        .article-card .text-muted {
            margin-bottom: 1rem;
        }

    .article-meta {
        padding-top: 0.5rem;
    }
}*/

/* Remove white bar between sections */
/*section[style*="background: #fff"] {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
}*/



/*main {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}*/

/* Remove bottom margin from section heading container */
/*.text-center.mb-5 {
    margin-bottom: 0 !important;
}*/

/* Reduce section padding */
/*section.py-5 {
    padding-top: 2rem !important;
    padding-bottom: 1rem !important;
}*/



/* Remove bottom padding from PDFToWord section */
.col-lg-8.PDFToWord {
    padding: 0.5rem !important;
}

/* H O W  T O  -  P D F  T I P S - E N D S*/





/* Accordian */

.accordion-button {
    font-weight: 500;
    color: var(--dark-blue);
    background-color: white;
    border: none;
    box-shadow: none;
}

    .accordion-button:focus {
        box-shadow: 0 0 0 0.25rem rgba(59, 130, 246, 0.25);
    }

.accordion-item {
    border: 1px solid #ddd;
    border-radius: 0.5rem;
    margin-bottom: 1rem;
    overflow: hidden;
}




.btn-primary {
    background-color: var(--light-orange);
    border-color: var(--light-orange);
    color: #333;
    font-weight: bold;
    padding: 0.75rem 2rem;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease;
    border-radius: 50px;
}

    .btn-primary:hover {
        background-color: var(--orange-hover);
        border-color: var(--orange-hover);
        transform: translateY(-2px);
        box-shadow: 0 6px 12px rgba(0, 0, 0, 0.15);
    }

.btn-outline-light {
    border-radius: 50px;
    padding: 0.75rem 2rem;
    font-weight: 600;
    transition: all 0.3s ease;
}

    .btn-outline-light:hover {
        transform: translateY(-2px);
        box-shadow: 0 4px 8px rgba(255, 255, 255, 0.2);
    }

.feature-card {
    background: white;
    border-radius: 15px;
    padding: 2rem;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.08);
    transition: all 0.3s ease;
    border: 1px solid #f1f5f9;
    height: 100%;
}

    .feature-card:hover {
        transform: translateY(-5px);
        box-shadow: 0 15px 30px rgba(0, 0, 0, 0.12);
    }

.feature-icon {
    background: linear-gradient(135deg, var(--light-blue), var(--primary-blue));
    color: white;
    width: 70px;
    height: 70px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 1.5rem;
    font-size: 1.8rem;
    box-shadow: 0 4px 15px rgba(59, 130, 246, 0.3);
}

.stats-section {
    background: linear-gradient(135deg, #f8fafc 0%, #e2e8f0 100%);
    padding: 4rem 0;
}

.stat-card {
    background: white;
    border-radius: 15px;
    padding: 2rem;
    text-align: center;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05);
    transition: all 0.3s ease;
    border: 1px solid #f1f5f9;
}

    .stat-card:hover {
        transform: translateY(-3px);
        box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
    }

.stat-number {
    font-size: 3rem;
    font-weight: bold;
    color: var(--primary-blue);
    margin-bottom: 0.5rem;
}

.stat-label {
    color: #64748b;
    font-weight: 500;
    text-transform: uppercase;
    font-size: 0.9rem;
    letter-spacing: 0.5px;
}

.cta-section {
    background: linear-gradient(135deg, var(--primary-blue) 0%, var(--dark-blue) 100%);
    color: white;
    padding: 5rem 0;
    position: relative;
    overflow: hidden;
}

@@keyframes pulse {
    0%, 100% {
        transform: scale(1);
        opacity: 0.5;
    }

    50% {
        transform: scale(1.05);
        opacity: 0.8;
    }
}

.section-title {
    color: var(--dark-blue);
    font-weight: 700;
    margin-bottom: 1rem;
    position: relative;
}

.section-subtitle {
    color: #64748b;
    font-size: 1.1rem;
    margin-bottom: 3rem;
}

.process-step {
    text-align: center;
    padding: 1.5rem;
}

/*.step-number {
    background: var(--light-orange);
    color: #333;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    font-size: 1.2rem;
    margin: 0 auto 1rem;
    box-shadow: 0 4px 10px rgba(253, 186, 116, 0.3);
}*/

.step-arrow {
    font-size: 2rem;
    color: var(--light-blue);
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100px;
}

.testimonial-preview {
    background: white;
    border-radius: 15px;
    padding: 2rem;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.08);
    border-left: 4px solid var(--light-orange);
    margin-bottom: 1.5rem;
}

.rating-stars {
    color: #fbbf24;
    margin-bottom: 1rem;
}

.hero-animation {
    animation: float 6s ease-in-out infinite;
}

@@keyframes float {
    0%, 100% {
        transform: translateY(0px);
    }

    50% {
        transform: translateY(-20px);
    }
}

.quick-convert-card {
    background: white;
    border-radius: 20px;
    padding: 2.5rem;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.1);
    position: relative;
    overflow: hidden;
}

    .quick-convert-card::before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        height: 4px;
        background: linear-gradient(90deg, var(--primary-blue), var(--light-orange));
    }

.upload-zone {
    border: 2px dashed #cbd5e1;
    border-radius: 15px;
    padding: 3rem 2rem;
    text-align: center;
    background: #f8fafc;
    transition: all 0.3s ease;
    cursor: pointer;
}

    .upload-zone:hover {
        border-color: var(--primary-blue);
        background: #f0f9ff;
    }

.upload-icon {
    font-size: 3rem;
    color: var(--primary-blue);
    margin-bottom: 1rem;
}

@@media (max-width: 768px) {
    .hero-section {
        padding: 4rem 0;
    }

    .step-arrow {
        display: none;
    }

    .stat-number {
        font-size: 2rem;
    }
}

.role-badge {
    display: inline-block;
    padding: 0.25rem 0.6rem;
    border-radius: 1rem;
    font-size: 0.75rem;
    font-weight: 600;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

    /* B A D G E   H E L P E R S*/

    /* Role-specific colors */
    .role-badge.free {
        background-color: #28a745; /* Bootstrap green */
        color: #fff;
    }

    .role-badge.paid {
        background-color: #007bff; /* Bootstrap blue */
        color: #fff;
    }

    .role-badge.admin {
        background-color: #ffc107; /* Bootstrap yellow */
        color: #212529;
    }

    .role-badge.unknown {
        background-color: #6c757d; /* gray */
        color: #fff;
    }


/* Custom CSS for enhanced green styling */
.alert-success {
    --bs-alert-bg: #d1f2d1;
    --bs-alert-border-color: #8db58d;
    --bs-alert-color: #0f4f0f;
    background: linear-gradient(135deg, #d1f2d1 0%, #c8edc8 100%);
}

    .alert-success .bi {
        color: #198754;
    }

    .alert-success:hover {
        transform: translateY(-1px);
        transition: transform 0.2s ease;
    }


/*** USER LOGGED IN - STYLING ***/

/* User Menu Styling - Consistent with site theme */
.user-menu-toggle {
    background-color: rgba(255, 255, 255, 0.1) !important;
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 25px !important;
    padding: 0.5rem 1rem !important;
    color: white !important;
    transition: all 0.3s ease;
    text-decoration: none;
}

    .user-menu-toggle:hover {
        background-color: white !important; /* Change to white background */
        border-color: white; /* Keep white border */
        color: black !important; /* Change text to black */
    }

    .user-menu-toggle:focus {
        background-color: white !important; /* Change to white background */
        border-color: white; /* Keep white border */
        color: black !important; /* Change text to black */
        box-shadow: none; /* Remove focus ring */
    }

/* User icon styling */
.user-icon {
    color: rgba(255, 255, 255, 0.8);
    transition: all 0.3s ease;
}

.user-menu-toggle:hover .user-icon,
.user-menu-toggle:focus .user-icon {
    color: black !important; /* Change to black instead of orange */
    transform: scale(1.1);
}

/* Username turns black on hover */
.user-menu-toggle:hover .user-name,
.user-menu-toggle:focus .user-name {
    color: black !important; /* Change to black instead of orange */
}

/* Dropdown arrow turns black on hover */
.user-menu-toggle:hover::after,
.user-menu-toggle:focus::after {
    color: black !important; /* Change to black instead of orange */
}

/* User name styling */
.user-name {
    font-weight: 500;
    font-size: 0.9rem;
    color: inherit; /* Inherit color from parent */
}

/* Updated Role Badge Styling - Using site colors */
.role-badge {
    font-size: 0.7rem;
    font-weight: 600;
    padding: 0.2rem 0.6rem;
    border-radius: 12px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    border: 1px solid transparent;
    transition: all 0.3s ease;
}

    /* Role-specific colors using site theme */
    .role-badge.free {
        background-color: var(--primary-blue);
        color: white;
        border-color: var(--primary-blue);
    }

    .role-badge.paid {
        background-color: var(--primary-blue);
        color: white;
        border-color: var(--primary-blue);
        font-weight: 700;
    }

/* Badge stays with blue background and white text on hover */
.user-menu-toggle:hover .role-badge.paid,
.user-menu-toggle:focus .role-badge.paid {
    background-color: var(--primary-blue) !important; /* Keep blue background */
    color: white !important; /* Keep white text */
}

.role-badge.admin {
    /*background: linear-gradient(45deg, var(--light-orange), #fbbf24);*/
    color: #1f2937;
    border-color: var(--orange-hover);
    font-weight: 700;
    box-shadow: 0 2px 4px rgba(251, 191, 36, 0.3);
}

.role-badge.unknown {
    background-color: #64748b;
    color: white;
    border-color: #475569;
}

/* Dropdown menu styling */
.user-dropdown-menu {
    border: none;
    border-radius: 12px;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.15);
    padding: 0.5rem 0;
    min-width: 200px;
    margin-top: 0.5rem;
}

    .user-dropdown-menu .dropdown-item {
        padding: 0.75rem 1.25rem;
        color: #333;
        font-weight: 500;
        transition: all 0.3s ease;
        display: flex;
        align-items: center;
    }

        .user-dropdown-menu .dropdown-item:hover {
            /*background-color: var(--primary-blue);*/
            color: white;
            transform: translateX(5px);
        }

            .user-dropdown-menu .dropdown-item:hover .role-badge {
                background-color: white;
                color: var(--primary-blue);
            }

        .user-dropdown-menu .dropdown-item i {
            color: var(--primary-blue);
            width: 16px;
            transition: color 0.3s ease;
        }

        .user-dropdown-menu .dropdown-item:hover i {
            color: white;
        }

/* Active state when dropdown is open - keep default appearance */
.dropdown.show .user-menu-toggle {
    /*background-color: rgba(255, 255, 255, 0.1) !important;*/ /* Keep default background */
    border-color: rgba(255, 255, 255, 0.2); /* Keep default border */
    color: white !important; /* Keep white text */
}

.dropdown.show .user-icon {
    color: rgba(255, 255, 255, 0.8); /* Keep default icon color */
}


/* Responsive adjustments */
@media (max-width: 768px) {
    .user-menu-toggle {
        padding: 0.4rem 0.8rem !important;
    }

    .user-name {
        display: none; /* Hide name on mobile to save space */
    }

    .role-badge {
        font-size: 0.65rem;
        padding: 0.15rem 0.4rem;
    }
}

/* Animation for dropdown */
.user-dropdown-menu {
    animation: dropdownSlide 0.3s ease-out;
}

@keyframes dropdownSlide {
    from {
        opacity: 0;
        transform: translateY(-10px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}



/* PDF TO WORD - HOW TO INSTRUCTIONS - BLUE CYLINDER STYLING*/

/*.step-number {
    width: 50px;
    height: 50px;
    background: linear-gradient(135deg, #3b82f6, #1e40af);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-weight: bold;
    font-size: 1.2rem;
    margin-right: 1.5rem;
    flex-shrink: 0;
    box-shadow: 0 5px 15px rgba(59, 130, 246, 0.3);
}*/

.step-item {
    display: flex;
    align-items: flex-start;
    margin-bottom: 2rem;
    padding: 1.5rem;
    background: rgba(59, 130, 246, 0.05);
    border-radius: 15px;
    border-left: 4px solid #3b82f6;
    transition: transform 0.2s ease;
}

    .step-item:hover {
        transform: translateY(-2px);
        box-shadow: 0 5px 20px rgba(59, 130, 246, 0.1);
    }

.step-content h4 {
    color: #333;
    margin-bottom: 0.75rem;
    font-weight: 600;
}

.step-content p {
    color: #666;
    margin-bottom: 0;
    line-height: 1.6;
}

/* SPINNER */

/* Spinner Overlay */
.loading-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(255, 255, 255, 0.9);
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    z-index: 99999; /* Increase stacking */
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease;
    will-change: opacity, transform; /* ✅ Prevent flicker */
}

    .loading-overlay.show {
        opacity: 1;
        visibility: visible;
    }


.spinner {
    width: 60px;
    height: 60px;
    border: 6px solid #ccc;
    border-top: 6px solid #007bff;
    border-radius: 50%;
    animation: spin 1s linear infinite;
    margin-bottom: 15px;
    position: relative;
    top: -75px; /* ✅ Move spinner 75px higher */
}

.loading-text {
    font-size: 18px;
    font-weight: bold;
    color: #333;
    position: relative;
    top: -75px;
}

@keyframes spin {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}

/* Disable hover effects and interactions on the card when spinner is active */
body.loading-active .pricing-card,
body.loading-active .card-body {
    pointer-events: none; /* Prevent interaction */
    transition: none !important; /* Stop hover animations */
    box-shadow: none !important; /* Remove any hover shadows */
    transform: none !important; /* Remove hover scaling */
}

/* ------------------------------ */

.cta-btn {
    transition: all 0.3s ease;
    transform: translateY(0);
}

    .cta-btn:hover {
        transform: translateY(-2px);
        box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
    }

.btn-primary.cta-btn:hover {
    background-color: #2563eb;
    border-color: #2563eb;
}

.btn-outline-light.cta-btn:hover {
    background-color: rgba(255, 255, 255, 0.1);
    border-color: #ffffff;
    color: #ffffff;
}

/* New Pricing.cshtml Formatting */

.discount-badge {
    position: absolute;
    top: 105px;
    right: 15px;
    background: #fdba74;
    color: white;
    padding: 8px 12px;
    border-radius: 8px;
    font-size: 16px;
    font-weight: 700;
    box-shadow: 0 2px 8px rgba(253, 186, 116, 0.3);
}

.discount-text {
    position: absolute;
    top: 150px;
    right: 23px;
    font-size: 13px;
    color: #4a5568;
    font-weight: 500;
    text-align: center;
    line-height: 1.2;
    width: 56px;
}


/* Add this to your CSS file to center only the three specific elements */

/* Center the "Forgot password?" link */
.pricing-card .form-text {
    text-align: center;
    margin-bottom: 1rem;
}

/* Center the "Remember me" checkbox */
.pricing-card .form-check {
    display: flex;
    justify-content: center;
    margin-bottom: 1.5rem;
}

/* Center the login button */
.pricing-card form .btn-primary {
    display: block;
    margin-left: auto;
    margin-right: auto;
}

/* B L O G   A R T I C L E  S T Y L E S  */

/* HowToPDFTips FIXES */

.col-lg-5.col-md-6.HowToPDFTips {
    padding: 1rem 1rem 1rem 1rem !important;
}

.row.justify-content-center.mb-4.g-4.HowToPDFTips {
    margin-bottom: 0rem !important;
}

.col-lg-10.HowToPDFTips {
    padding: 0rem 0rem 3rem 0rem !important;
    ;
}


/* HR line */
.section-divider {
    border: none;
    border-top: 2px solid #aaa !important; /* strong dark gray */
    margin: 10px 0;
    opacity: 1 !important; /* overrides any default fading */
}

.faq-card.FAQ {
    margin-bottom: 0rem !important;
}

.article-card {
    background: #fff;
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    padding: 1.5rem;
    transition: all 0.3s ease;
    box-shadow: 0 1px 3px rgba(0,0,0,0.1);
    border-bottom-color: #FDBA74;
    border-bottom-width: 5px;
}

    .article-card:hover {
        transform: translateY(-4px);
        box-shadow: 0 12px 24px rgba(0,0,0,0.15);
        border-color: #3b82f6;
    }

.article-card-link {
    text-decoration: none;
    color: inherit;
}

.article-meta {
    font-size: 0.875rem;
}

.article-list-link {
    text-decoration: none;
    color: #1e293b;
    transition: color 0.2s ease;
}

    .article-list-link:hover {
        color: #3b82f6;
    }

    .article-list-link strong {
        display: block;
        margin-bottom: 0.25rem;
    }



/* ---- CLAUDE.AI --- Article page styling */


/* Article Page - Gray Edges with White Center */
section.py-5 {
    background: linear-gradient(to bottom, #f8f9fa 0%, #e9ecef 100%) !important;
    padding: 3rem 0 0rem 0 !important;
    position: relative;
}

    /* White content box */
    section.py-5 .container .row .col-lg-8 {
        background: #ffffff;
        border-radius: 12px;
        box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
        padding: 3rem;
        margin-bottom: 45px;
    }


    section.py-5.pricingpage {
        background: linear-gradient(to bottom, #f8f9fa 0%, #e9ecef 100%) !important;
        padding: 3rem 0 3rem 0 !important;
        position: relative;
    }


/* Article Title Styling */
.article-heading {
    font-size: 2.5rem !important;
    font-weight: 700 !important;
    color: #1e293b !important;
    margin-bottom: 1.5rem !important;
    line-height: 1.2 !important;
    text-align: center;
}

/* Article Meta Header */
.article-meta-header {
    border-bottom: 2px solid #e5e7eb;
    padding-bottom: 1.5rem;
    margin-bottom: 2.5rem;
}

    .article-meta-header .text-center {
        display: flex;
        justify-content: center;
        align-items: center;
        flex-wrap: wrap;
        gap: 1rem;
    }

.article-date {
    color: #64748b !important;
    font-size: 0.95rem;
    display: inline-flex;
    align-items: center;
    gap: 1rem;
    padding-top: 30px;
}

    .article-date i {
        color: #3b82f6;
    }

/* Article Content Styling */
.article-content {
    font-size: 1.1rem;
    line-height: 1.8;
    color: #374151;
    margin-bottom: 3rem;
}

    .article-content h2 {
        font-size: 1.8rem;
        font-weight: 600;
        color: #1e293b;
        margin-top: 2.5rem;
        margin-bottom: 1rem;
    }

    .article-content h3 {
        font-size: 1.5rem;
        font-weight: 600;
        color: #334155;
        margin-top: 2rem;
        margin-bottom: 0.75rem;
    }

    .article-content p {
        margin-bottom: 1.25rem;
    }

    .article-content ul, .article-content ol {
        margin-bottom: 1.5rem;
        padding-left: 2rem;
    }

    .article-content li {
        margin-bottom: 0.5rem;
    }

    .article-content img {
        max-width: 100%;
        height: auto;
        border-radius: 8px;
        margin: 2rem 0;
        box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
    }

    .article-content a {
        color: #3b82f6;
        text-decoration: none;
        border-bottom: 1px solid transparent;
        transition: border-color 0.3s ease;
    }

        .article-content a:hover {
            border-bottom-color: #3b82f6;
        }

    .article-content blockquote {
        border-left: 4px solid #FDBA74;
        padding-left: 1.5rem;
        margin: 2rem 0;
        font-style: italic;
        color: #64748b;
    }

    .article-content code {
        background: #f1f5f9;
        padding: 0.2rem 0.4rem;
        border-radius: 4px;
        font-size: 0.9em;
        color: #e11d48;
    }

/* Back to Blog Button Styling */
section.py-5 .text-center .btn-outline-primary {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.875rem 2rem;
    background: linear-gradient(135deg, #3b82f6 0%, #2563eb 100%);
    color: white !important;
    text-decoration: none;
    border: none;
    border-radius: 8px;
    font-weight: 600;
    font-size: 1rem;
    transition: all 0.3s ease;
    box-shadow: 0 4px 12px rgba(59, 130, 246, 0.3);
}

    section.py-5 .text-center .btn-outline-primary:hover {
        transform: translateY(-2px);
        box-shadow: 0 6px 20px rgba(59, 130, 246, 0.4);
        background: linear-gradient(135deg, #2563eb 0%, #1d4ed8 100%);
    }

    section.py-5 .text-center .btn-outline-primary i {
        transition: transform 0.3s ease;
    }

    section.py-5 .text-center .btn-outline-primary:hover i {
        transform: translateX(-4px);
    }

/* HR Styling */
section.py-5 hr {
    border-top: 2px solid #e5e7eb;
    margin: 3rem 0 2rem 0;
}

/* Responsive Design */
@media (max-width: 768px) {
    section.py-5 .container .row .col-lg-8 {
        padding: 2rem 1.5rem;
        border-radius: 8px;
    }

    .article-heading {
        font-size: 1.75rem !important;
    }

    .article-content {
        font-size: 1rem;
    }

    .article-meta-header .text-center {
        flex-direction: column;
        gap: 0.5rem;
    }
}

@media (max-width: 576px) {
    section.py-5 .container .row .col-lg-8 {
        padding: 1.5rem 1rem;
    }

    .article-heading {
        font-size: 1.5rem !important;
    }

    section.py-5 .text-center .btn-outline-primary {
        padding: 0.75rem 1.5rem;
        font-size: 0.9rem;
    }
}


/* NEW MEDIA CSS to make BOXED FULL WIDTH - PK */

@media (max-width: 991px) {
    #HowItWorks {
        padding-bottom: 2.5rem !important;
    }

    .indexstep {
        flex: 0 0 100% !important;
        max-width: 100% !important;
        margin-bottom: 2rem;
    }

        .indexstep:last-child {
            margin-bottom: 0;
        }

    .process-step {
        max-width: 400px;
        margin: 0 auto;
    }

    /* Pricing block fixes in mobile view */
    .pricing-card {
        margin-bottom: 2rem;
    }

    .col-lg-4.col-md-6 {
        margin-bottom: 2rem;
    }

        .col-lg-4.col-md-6:last-child {
            margin-bottom: 0;
        }
}

@media (max-width: 576px) {
    .btn-lg {
        font-size: 0.875rem !important;
        padding: 0.625rem 1rem !important;
    }

        .btn-lg i {
            font-size: 0.875rem;
        }
}




/* Add extra row below - why choose our PDF convertor? */
.row.g-4.feature-block {
    padding-bottom: 20px;
}

/* Add extra row below - why choose PolarPDF */
.container.whychoose {
    padding-bottom: 20px;
}

/*  Align white block in center under heading "How it works"  */
.row.align-items-center {
    justify-content: center !important;
}

.step-arrow {
    text-align: center;
}

/* Make each white box slightly wider (about 20px)  */
.col-lg-3.indexstep {
    flex: 0 0 calc(25% + 30px);
    max-width: calc(25% + 30px);
}

/* Keep arrows centered and adjusted */
.col-lg-1.indexstep {
    flex: 0 0 calc(8.333333% - 13.33px);
    max-width: calc(8.333333% - 13.33px);
}

/* Ensure mobile responsiveness is maintained */
/* Wider mobile boxes specifically for the "How It Works" section */
@media (max-width: 768px) {
    .row.align-items-center .col-lg-3 {
        padding-left: 0.5rem;
        padding-right: 0.5rem;
    }

    .process-step {
        padding: 2rem 1.5rem; /* Wider internal padding */
        width: 100%;
    }
}

@media (max-width: 576px) {
    .process-step {
        padding: 1.75rem 1.25rem; /* Still generous padding */
    }
}


/* S T R I P E - C S S */


/* Regular form inputs (like cardholder name) */
.checkout-input,
#cardholder-name.form-control {
    min-height: 50px;
    height: 50px;
    padding: 12px 14px; /* Match Stripe padding exactly */
    display: flex;
    align-items: center;
    border: 1px solid #bfc5cb;
    border-radius: 0.375rem;
    background-color: #fff;
    font-size: 1rem;
    line-height: 1.5;
    transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
    position: relative !important;
    z-index: 1 !important;
    pointer-events: auto !important;
    cursor: text !important;
}

    /* Focus state for regular inputs */
    .checkout-input:focus {
        border-color: #86b7fe;
        outline: 0;
        box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
    }

/* Stripe Elements container */
.stripe-input {
    position: relative;
    background-color: #fff;
    border: 1px solid #bfc5cb;
    border-radius: 0.375rem;
    padding: 12px 14px;
    height: 50px;
    transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

    /* Focus state for Stripe elements */
    .stripe-input.StripeElement--focus {
        border-color: #86b7fe;
        box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
    }

    /* Error state for Stripe elements */
    .stripe-input.StripeElement--invalid {
        border-color: #dc3545;
        box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.25);
    }

    /* Ensure Stripe iframes fill container */
    .stripe-input iframe {
        width: 100% !important;
        height: 100% !important;
    }

/* Remove conflicting styles */
.stripe-element {
    padding: 12px 14px;
    height: 50px;
    display: flex;
    align-items: center;
}


    .stripe-element iframe {
        height: 100% !important;
    }


/* Ensure proper z-index layering */
hr {
    position: relative;
    z-index: 0;
}


/* Make sure input is clickable */
#cardholder-name {
    position: relative;
    z-index: 1;
    cursor: text;
}


/* Remove any pointer-events blocking */
.checkout-input,
#cardholder-name {
    pointer-events: auto !important;
}


    /* override Bootstrap's default focus state and match the Stripe elements' dull blue color. */
    #cardholder-name.form-control:focus {
        border-color: #86b7fe;
        outline: 0;
        box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
    }


/* ===================================
   HERO FEATURES SECTION
   =================================== */

.hero-features-section {
    margin-top: 3rem;
    padding: 2.5rem 0;
}

.features-container {
    background: rgba(255, 255, 255, 0.05);
    backdrop-filter: blur(10px);
    border-radius: 20px;
    padding: 2.5rem 2rem;
    border: 1px solid rgba(255, 255, 255, 0.1);
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.1);
}

.features-title {
    color: #ffffff;
    font-size: 1.75rem;
    font-weight: 600;
    text-align: center;
    margin-bottom: 2rem;
}

    .features-title i {
        color: #FDBA74;
    }

.feature-card {
    background: rgba(255, 255, 255, 0.08);
    border-radius: 16px;
    padding: 1.75rem 1.25rem;
    text-align: center;
    transition: all 0.3s ease;
    border: 1px solid rgba(255, 255, 255, 0.1);
    height: 100%;
    position: relative;
    overflow: hidden;
}

    .feature-card:hover {
        background: rgba(255, 255, 255, 0.12);
        transform: translateY(-5px);
        box-shadow: 0 8px 24px rgba(0, 0, 0, 0.2);
        border-color: rgba(253, 186, 116, 0.3);
    }

.feature-card-new {
    border: 2px solid rgba(253, 186, 116, 0.4);
}

.feature-badge {
    position: absolute;
    top: 12px;
    right: 12px;
    background: linear-gradient(135deg, #FDBA74 0%, #F59E0B 100%);
    color: #1a1a1a;
    font-size: 0.65rem;
    font-weight: 700;
    padding: 0.25rem 0.6rem;
    border-radius: 12px;
    letter-spacing: 0.5px;
    box-shadow: 0 2px 8px rgba(253, 186, 116, 0.4);
}

.hero-features-section .feature-icon {
    width: 60px;
    height: 60px;
    background: linear-gradient(135deg, rgba(253, 186, 116, 0.2) 0%, rgba(253, 186, 116, 0.05) 100%);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1rem;
    transition: all 0.3s ease;
}

.hero-features-section .feature-card:hover .feature-icon {
    background: linear-gradient(135deg, rgba(253, 186, 116, 0.3) 0%, rgba(253, 186, 116, 0.1) 100%);
    transform: scale(1.1);
}

.hero-features-section .feature-icon i {
    font-size: 1.75rem;
    color: #FDBA74;
}

.feature-name {
    color: #ffffff;
    font-size: 1rem;
    font-weight: 600;
    margin-bottom: 0.5rem;
}

.feature-description {
    color: rgba(255, 255, 255, 0.7);
    font-size: 0.875rem;
    margin-bottom: 0;
    line-height: 1.4;
}

/* Responsive Adjustments */
@media (max-width: 991px) {
    .features-container {
        padding: 2rem 1.5rem;
    }

    .hero-features-section .feature-card {
        padding: 1.5rem 1rem;
    }

    .features-title {
        font-size: 1.5rem;
    }
}

@media (max-width: 767px) {
    .hero-features-section {
        margin-top: 2rem;
    }

    .features-container {
        padding: 1.5rem 1rem;
    }

    .hero-features-section .feature-card {
        padding: 1.25rem 1rem;
    }

    .hero-features-section .feature-icon {
        width: 50px;
        height: 50px;
    }

        .hero-features-section .feature-icon i {
            font-size: 1.5rem;
        }

    .feature-name {
        font-size: 0.95rem;
    }

    .feature-description {
        font-size: 0.813rem;
    }
}

@media (max-width: 575px) {
    .features-title {
        font-size: 1.25rem;
    }
}

/* Force hero buttons to be clickable - DEBUGGING */
/*.hero-section .d-flex.justify-content-center.gap-3.mb-4 {
    position: relative;
    z-index: 10;
}

.hero-section .d-flex.justify-content-center.gap-3.mb-4 a {
    position: relative;
    z-index: 10;
    pointer-events: auto !important;
}

*/


/* --  "PDF Conversions" dropdown — scoped styles  -- */

/* ── FIX 1: Remove the Bootstrap caret/triangle ──────────────────────── */
#pdfConversionsMenu > .nav-link::after {
    display: none;
}

/* ── FIX 2: Force white background — override Bootstrap CSS variables ── */
.pdf-conversions-dropdown {
    --bs-dropdown-bg: #ffffff; /* Bootstrap 5 CSS variable */
    background-color: #ffffff !important; /* fallback hard override */
    border: 1px solid rgba(0, 0, 0, 0.10);
    border-radius: 8px;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
    min-width: 220px;
    /* FIX 3: margin-top removed — padding used instead so the
           hover area is continuous (no invisible gap to fall through) */
    margin-top: 0 !important;
    padding: 8px 0;
}

    /* ── Dropdown items ───────────────────────────────────────────────────── */
    .pdf-conversions-dropdown .dropdown-item {
        color: #212529;
        font-size: 0.92rem;
        padding: 10px 18px;
        transition: background-color 0.15s ease, color 0.15s ease;
        border-radius: 0;
    }

        .pdf-conversions-dropdown .dropdown-item:hover,
        .pdf-conversions-dropdown .dropdown-item:focus {
            background-color: #fff8f0;
            color: #c97a1e;
        }

            .pdf-conversions-dropdown .dropdown-item:hover i,
            .pdf-conversions-dropdown .dropdown-item:focus i {
                color: #FDBA74 !important;
            }

/* ── Desktop: open on hover ───────────────────────────────────────────── */
@media (min-width: 992px) {

    /* FIX 3 continued: extend the <li> hover area downward with padding
           so the mouse never leaves the hoverable element while crossing
           into the dropdown panel */
    #pdfConversionsMenu {
        padding-bottom: 0;
    }

        #pdfConversionsMenu:hover > .pdf-conversions-dropdown {
            display: block;
        }

        #pdfConversionsMenu > .nav-link {
            cursor: pointer;
        }
}

/* ── Mobile: Bootstrap collapse handles everything — no changes needed ── */


/* D A S H  B O A R D */

.batch-row {
    display: flex;
    align-items: center;
    padding: 14px 16px;
    border-radius: 8px;
    background: #ffffff;
    border: 1px solid #e2e8f0;
    margin-bottom: 10px;
    transition: all 0.2s ease;
    cursor: pointer;
}

.batch-row:hover {
    box-shadow: 0 2px 8px rgba(0,0,0,0.08);
    transform: translateY(-1px);
    border-color: #cbd5e1;
}

.batch-row.completed {
    border-left: 3px solid #10b981;
    background: linear-gradient(90deg, rgba(16, 185, 129, 0.03) 0%, #ffffff 100%);
}

.batch-row.failed {
    border-left: 3px solid #ef4444;
    background: linear-gradient(90deg, rgba(239, 68, 68, 0.03) 0%, #ffffff 100%);
}

.batch-row.processing {
    border-left: 3px solid #f59e0b;
    background: linear-gradient(90deg, rgba(245, 158, 11, 0.03) 0%, #ffffff 100%);
}

.batch-row.pending {
    border-left: 3px solid #3b82f6;
    background: linear-gradient(90deg, rgba(59, 130, 246, 0.03) 0%, #ffffff 100%);
}

.file-icon {
    flex-shrink: 0;
    width: 40px;
    height: 40px;
    background: linear-gradient(135deg, #dc2626 0%, #ef4444 100%);
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 14px;
}

    .file-icon i {
        font-size: 20px;
        color: white;
    }

.file-info {
    flex: 1;
    min-width: 0;
    margin-right: 12px;
}

.file-name {
    font-size: 0.9375rem;
    font-weight: 600;
    color: #1e293b;
    margin-bottom: 4px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.file-meta {
    display: flex;
    gap: 16px;
    font-size: 0.8125rem;
    color: #64748b;
}

    .file-meta span {
        display: flex;
        align-items: center;
        gap: 4px;
    }

    .file-meta i {
        font-size: 0.75rem;
    }

.status-badge {
    flex-shrink: 0;
    padding: 6px 12px;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 6px;
    margin-right: 12px;
}

    .status-badge.completed {
        background: rgba(16, 185, 129, 0.1);
        color: #059669;
    }

    .status-badge.failed {
        background: rgba(239, 68, 68, 0.1);
        color: #dc2626;
    }

    .status-badge.processing {
        background: rgba(245, 158, 11, 0.1);
        color: #d97706;
    }

    .status-badge.pending {
        background: rgba(59, 130, 246, 0.1);
        color: #2563eb;
    }

.download-btn {
    flex-shrink: 0;
    width: 36px;
    height: 36px;
    border-radius: 6px;
    background: #10b981;
    border: none;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.2s ease;
}

    .download-btn:hover {
        background: #059669;
        transform: scale(1.05);
    }

    .download-btn i {
        color: white;
        font-size: 16px;
    }

.spinner-icon {
    animation: spin 1s linear infinite;
}

@@keyframes spin {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}

.empty-state {
    text-align: center;
    padding: 60px 20px;
}

    .empty-state i {
        font-size: 4rem;
        color: #cbd5e1;
    }

    .empty-state p {
        color: #64748b;
        margin-top: 16px;
        margin-bottom: 0;
    }

.batch-container {
    flex: 1;
    overflow-y: auto;
    overflow-x: hidden;
}

    .batch-container::-webkit-scrollbar {
        width: 6px;
    }

    .batch-container::-webkit-scrollbar-track {
        background: #f1f5f9;
        border-radius: 10px;
    }

    .batch-container::-webkit-scrollbar-thumb {
        background: #cbd5e1;
        border-radius: 10px;
    }

        .batch-container::-webkit-scrollbar-thumb:hover {
            background: #94a3b8;
        }