/**
 * Stylesheet for: freelance-full-stack-developer.php
 * Extracted from internal style tags
 */

/* ========================================================
               FREELANCE FULL STACK DEVELOPER - DESIGN SYSTEM
               Luxury emerald & champagne gold theme with full-stack accents
               ======================================================== */
            :root {
                --ffs-green: #082c23;
                --ffs-dark: #051f18;
                --ffs-gold: #c69c6d;
                --ffs-gold-hover: #b58957;
                --ffs-cream: #fbf9f5;
                --ffs-light: #f5eee3;
                --ffs-border: #e6ddce;
                --ffs-text: #1b2622;
                --ffs-muted: #53645f;
            }

            /* Breadcrumb override */
            ul.breadcrumb {
                column-gap: 10px;
                padding: 30px 0 10px 0;
                font-size: 13px !important;
                margin-bottom: 0;
            }

            ul.breadcrumb li a {
                color: rgba(255, 255, 255, 0.7);
                text-decoration: none;
                transition: color 0.2s ease;
            }

            ul.breadcrumb li a:hover {
                color: var(--ffs-gold);
            }

            ul.breadcrumb li span {
                color: var(--ffs-gold);
                font-weight: 600;
            }

            /* Badges & Headings */
            .ffs-badge {
                display: inline-flex;
                align-items: center;
                gap: 8px;
                color: var(--ffs-gold);
                font-size: 12px;
                font-weight: 800;
                letter-spacing: 2px;
                text-transform: uppercase;
                margin-bottom: 12px;
                background: rgba(198, 156, 109, 0.12);
                padding: 6px 18px;
                border-radius: 50px;
                border: 1px solid rgba(198, 156, 109, 0.28);
            }

            .ffs-badge-dark {
                color: var(--ffs-gold);
                background: rgba(198, 156, 109, 0.12);
                border: 1px solid rgba(198, 156, 109, 0.28);
            }

            .ffs-heading {
                font-size: 38px;
                font-weight: 800;
                color: var(--ffs-green);
                line-height: 1.25;
                letter-spacing: -0.02em;
                margin-bottom: 14px;
            }

            .ffs-heading-light {
                color: #ffffff;
            }

            .ffs-lead {
                font-size: 16px;
                line-height: 1.7;
                color: var(--ffs-muted);
                max-width: 840px;
                margin: 0 auto 36px auto;
            }

            .ffs-lead-light {
                color: #b5ccc5;
            }

            /* Action Buttons */
            .btn-ffs-gold {
                background: linear-gradient(135deg, #c69c6d 0%, #ab8254 100%);
                color: #082c23 !important;
                font-weight: 700;
                padding: 13px 30px;
                border-radius: 50px;
                text-decoration: none;
                display: inline-flex;
                align-items: center;
                gap: 10px;
                box-shadow: 0 8px 24px rgba(198, 156, 109, 0.35);
                transition: all 0.3s ease;
                font-size: 14.5px;
            }

            .btn-ffs-gold:hover {
                transform: translateY(-3px);
                box-shadow: 0 12px 30px rgba(198, 156, 109, 0.5);
                color: #082c23 !important;
            }

            .btn-ffs-outline {
                border: 1.5px solid rgba(198, 156, 109, 0.7);
                font-weight: 600;
                padding: 12px 28px;
                border-radius: 50px;
                text-decoration: none;
                display: inline-flex;
                align-items: center;
                gap: 10px;
                transition: all 0.3s ease;
                font-size: 14.5px;
            }

            .btn-ffs-outline:hover {
                background: rgba(198, 156, 109, 0.18);
                border-color: var(--ffs-gold);
                transform: translateY(-3px);
            }

            .btn-ffs-dark-outline {
                border: 1.5px solid var(--ffs-green);
                color: var(--ffs-green) !important;
                font-weight: 600;
                padding: 10px 24px;
                border-radius: 50px;
                text-decoration: none;
                display: inline-flex;
                align-items: center;
                gap: 8px;
                transition: all 0.3s ease;
                font-size: 14px;
            }

            .btn-ffs-dark-outline:hover {
                background: var(--ffs-green);
                color: #ffffff !important;
                transform: translateY(-2px);
            }

            /* ========================================================
               1. HERO SECTION & LIVE PREVIEW CARD
               ======================================================== */
            .ffs-hero-section {
                background: linear-gradient(135deg, #051f18 0%, #082c23 60%, #0c3d31 100%);
                color: #ffffff;
                padding: 55px 0 80px 0;
                position: relative;
                overflow: hidden;
            }

            .ffs-hero-section::before {
                content: '';
                position: absolute;
                top: 0;
                right: 0;
                width: 600px;
                height: 600px;
                background: radial-gradient(circle, rgba(198, 156, 109, 0.12) 0%, rgba(8, 44, 35, 0.05) 50%, transparent 70%);
                pointer-events: none;
            }

            .ffs-hero-title {
                font-size: 48px;
                font-weight: 900;
                line-height: 1.15;
                letter-spacing: -0.02em;
                margin-bottom: 12px;
                color: #ffffff;
            }

            .ffs-hero-title span {
                background: linear-gradient(135deg, #f7dfbe 0%, #c69c6d 100%);
                -webkit-background-clip: text;
                -webkit-text-fill-color: transparent;
            }

            .ffs-hero-subtitle {
                font-size: 22px;
                font-weight: 600;
                color: var(--ffs-gold);
                margin-bottom: 18px;
                line-height: 1.35;
            }

            .ffs-hero-desc {
                font-size: 16px;
                line-height: 1.75;
                color: #cfded9;
                margin-bottom: 30px;
                max-width: 650px;
            }

            .ffs-cta-group {
                display: flex;
                gap: 14px;
                flex-wrap: wrap;
                margin-bottom: 28px;
            }

            .ffs-hero-card {
                background: rgba(255, 255, 255, 0.04);
                border: 1px solid rgba(198, 156, 109, 0.35);
                border-radius: 24px;
                padding: 34px 28px;
                backdrop-filter: blur(14px);
                box-shadow: 0 25px 60px rgba(0, 0, 0, 0.35);
                position: relative;
            }

            .ffs-hero-code-header {
                display: flex;
                align-items: center;
                justify-content: space-between;
                padding-bottom: 16px;
                border-bottom: 1px solid rgba(255, 255, 255, 0.1);
                margin-bottom: 22px;
            }

            .ffs-code-dots {
                display: flex;
                gap: 6px;
            }

            .ffs-code-dot {
                width: 10px;
                height: 10px;
                border-radius: 50%;
            }

            .ffs-code-dot.red {
                background: #ff5f56;
            }

            .ffs-code-dot.yellow {
                background: #ffbd2e;
            }

            .ffs-code-dot.green {
                background: #27c93f;
            }

            .ffs-hero-metric-box {
                background: rgba(255, 255, 255, 0.03);
                border: 1px solid rgba(255, 255, 255, 0.08);
                border-radius: 14px;
                padding: 14px 18px;
                margin-bottom: 12px;
                display: flex;
                align-items: center;
                gap: 14px;
            }

            .ffs-hero-metric-icon {
                width: 40px;
                height: 40px;
                border-radius: 10px;
                background: rgba(198, 156, 109, 0.2);
                color: var(--ffs-gold);
                display: flex;
                align-items: center;
                justify-content: center;
                font-size: 18px;
                flex-shrink: 0;
            }

            .ffs-hero-metric-text strong {
                display: block;
                font-size: 14px;
                color: #ffffff;
                margin-bottom: 2px;
            }

            .ffs-hero-metric-text span {
                font-size: 12px;
                color: #9cb2ab;
            }

            .ffs-tech-pills-row {
                display: flex;
                flex-wrap: wrap;
                gap: 8px;
                margin-top: 18px;
            }

            .ffs-tech-pill-badge {
                background: rgba(198, 156, 109, 0.15);
                border: 1px solid rgba(198, 156, 109, 0.3);
                color: #f1dfca;
                padding: 6px 14px;
                border-radius: 50px;
                font-size: 11.5px;
                font-weight: 600;
            }

            /* ========================================================
               2. TRUST / QUICK STATS
               ======================================================== */
            .ffs-stats-section {
                background: #ffffff;
                padding: 45px 0;
                border-bottom: 1px solid var(--ffs-border);
                position: relative;
                margin-top: -30px;
                border-radius: 20px 20px 0 0;
                box-shadow: 0 -10px 30px rgba(0, 0, 0, 0.05);
                z-index: 10;
            }

            .ffs-stat-item {
                text-align: center;
                padding: 10px 20px;
                border-right: 1px solid #eee5d8;
            }

            .ffs-stat-item:last-child {
                border-right: none;
            }

            .ffs-stat-number {
                font-size: 40px;
                font-weight: 900;
                color: var(--ffs-green);
                line-height: 1.1;
                margin-bottom: 4px;
            }

            .ffs-stat-number span {
                color: var(--ffs-gold);
            }

            .ffs-stat-label {
                font-size: 13.5px;
                font-weight: 700;
                color: var(--ffs-muted);
                text-transform: uppercase;
                letter-spacing: 1px;
            }

            .ffs-stat-sub {
                font-size: 12px;
                color: #8c9b96;
                margin-top: 3px;
            }

            /* ========================================================
               3. ABOUT MY FULL STACK DEVELOPMENT SERVICES
               ======================================================== */
            .ffs-about-section {
                padding: 95px 0;
                background: var(--ffs-cream);
            }

            .ffs-about-box {
                background: #ffffff;
                border: 1px solid var(--ffs-border);
                border-radius: 24px;
                padding: 44px;
                box-shadow: 0 15px 35px rgba(8, 44, 35, 0.06);
                position: relative;
                overflow: hidden;
                border-left: 5px solid var(--ffs-gold);
            }

            .ffs-about-feature-item {
                display: flex;
                gap: 16px;
                margin-bottom: 24px;
            }

            .ffs-about-icon {
                width: 44px;
                height: 44px;
                border-radius: 12px;
                background: rgba(8, 44, 35, 0.08);
                color: var(--ffs-gold);
                display: flex;
                align-items: center;
                justify-content: center;
                font-size: 19px;
                flex-shrink: 0;
            }

            /* ========================================================
               COMMON CARDS STYLES ACROSS SERVICES & SECTIONS
               ======================================================== */
            .ffs-card {
                background: #ffffff;
                border: 1px solid var(--ffs-border);
                border-radius: 20px;
                padding: 30px 24px;
                height: 100%;
                display: flex;
                flex-direction: column;
                transition: all 0.35s ease;
                position: relative;
            }

            .ffs-card:hover {
                transform: translateY(-6px);
                border-color: var(--ffs-gold);
                box-shadow: 0 16px 40px rgba(8, 44, 35, 0.08);
            }

            .ffs-card-cream {
                background: var(--ffs-cream);
            }

            .ffs-card-cream:hover {
                background: #ffffff;
            }

            .ffs-card-icon-wrap {
                width: 54px;
                height: 54px;
                border-radius: 14px;
                background: var(--ffs-green);
                color: var(--ffs-gold);
                display: flex;
                align-items: center;
                justify-content: center;
                font-size: 22px;
                margin-bottom: 20px;
                transition: all 0.3s ease;
            }

            .ffs-card:hover .ffs-card-icon-wrap {
                background: linear-gradient(135deg, #c69c6d 0%, #ab8254 100%);
                color: var(--ffs-green);
                transform: scale(1.06);
            }

            .ffs-card-title {
                font-size: 19px;
                font-weight: 700;
                color: var(--ffs-green);
                margin-bottom: 10px;
                line-height: 1.3;
            }

            .ffs-card-desc {
                font-size: 13.5px;
                color: var(--ffs-muted);
                line-height: 1.65;
                margin-bottom: 0;
            }

            /* Small Feature Pill Cards */
            .ffs-pill-card {
                background: var(--ffs-cream);
                border: 1px solid var(--ffs-border);
                border-radius: 16px;
                padding: 22px 20px;
                transition: all 0.3s ease;
                height: 100%;
                display: flex;
                align-items: flex-start;
                gap: 16px;
            }

            .ffs-pill-card:hover {
                border-color: var(--ffs-gold);
                background: #ffffff;
                transform: translateY(-4px);
                box-shadow: 0 10px 24px rgba(8, 44, 35, 0.06);
            }

            .ffs-pill-icon {
                width: 44px;
                height: 44px;
                border-radius: 12px;
                background: rgba(198, 156, 109, 0.15);
                color: var(--ffs-gold);
                display: flex;
                align-items: center;
                justify-content: center;
                font-size: 19px;
                flex-shrink: 0;
                transition: all 0.3s ease;
            }

            .ffs-pill-card:hover .ffs-pill-icon {
                background: var(--ffs-green);
                color: var(--ffs-gold);
            }

            .ffs-pill-text strong {
                font-size: 16px;
                font-weight: 700;
                color: var(--ffs-green);
                margin-bottom: 4px;
                display: block;
            }

            .ffs-pill-text span {
                font-size: 13px;
                color: var(--ffs-muted);
                line-height: 1.5;
                display: block;
            }

            /* Tech Grid Items */
            .ffs-tech-item-card {
                background: #ffffff;
                border: 1px solid var(--ffs-border);
                border-radius: 16px;
                padding: 22px 18px;
                text-align: center;
                height: 100%;
                transition: all 0.3s ease;
                display: flex;
                flex-direction: column;
                align-items: center;
                justify-content: center;
            }

            .ffs-tech-item-card:hover {
                border-color: var(--ffs-gold);
                transform: translateY(-5px);
                box-shadow: 0 12px 28px rgba(8, 44, 35, 0.08);
            }

            .ffs-tech-item-icon {
                font-size: 32px;
                margin-bottom: 12px;
                color: var(--ffs-green);
                transition: all 0.3s ease;
            }

            .ffs-tech-item-card:hover .ffs-tech-item-icon {
                color: var(--ffs-gold);
                transform: scale(1.1);
            }

            .ffs-tech-item-name {
                font-size: 15px;
                font-weight: 700;
                color: var(--ffs-green);
                margin-bottom: 2px;
            }

            .ffs-tech-item-sub {
                font-size: 12px;
                color: var(--ffs-muted);
            }

            /* Dark Section Variant */
            .ffs-dark-section {
                padding: 95px 0;
                background: var(--ffs-green);
                color: #ffffff;
            }

            .ffs-dark-card {
                background: rgba(255, 255, 255, 0.04);
                border: 1px solid rgba(198, 156, 109, 0.25);
                border-radius: 18px;
                padding: 24px;
                height: 100%;
                transition: all 0.3s ease;
                display: flex;
                gap: 16px;
                align-items: flex-start;
            }

            .ffs-dark-card:hover {
                background: rgba(255, 255, 255, 0.08);
                border-color: var(--ffs-gold);
                transform: translateY(-5px);
            }

            .ffs-dark-icon {
                width: 44px;
                height: 44px;
                border-radius: 12px;
                background: rgba(198, 156, 109, 0.15);
                color: var(--ffs-gold);
                display: flex;
                align-items: center;
                justify-content: center;
                font-size: 20px;
                flex-shrink: 0;
            }

            .ffs-dark-title {
                font-size: 16.5px;
                font-weight: 700;
                color: #ffffff;
                margin-bottom: 6px;
            }

            .ffs-dark-desc {
                font-size: 13px;
                color: #b5ccc5;
                line-height: 1.6;
                margin: 0;
            }

            /* Process Cards */
            .ffs-process-card {
                background: var(--ffs-cream);
                border: 1px solid var(--ffs-border);
                border-radius: 18px;
                padding: 28px 22px;
                position: relative;
                height: 100%;
                transition: all 0.3s ease;
            }

            .ffs-process-card:hover {
                border-color: var(--ffs-gold);
                transform: translateY(-5px);
                box-shadow: 0 12px 28px rgba(8, 44, 35, 0.08);
                background: #ffffff;
            }

            .ffs-process-num {
                font-size: 32px;
                font-weight: 900;
                color: rgba(198, 156, 109, 0.3);
                position: absolute;
                top: 16px;
                right: 20px;
            }

            .ffs-process-card:hover .ffs-process-num {
                color: var(--ffs-gold);
            }

            .ffs-process-title {
                font-size: 17px;
                font-weight: 700;
                color: var(--ffs-green);
                margin-bottom: 10px;
                padding-right: 35px;
            }

            .ffs-process-desc {
                font-size: 13.5px;
                color: var(--ffs-muted);
                line-height: 1.6;
                margin-bottom: 0;
            }

            /* Portfolio Cards */
            .ffs-project-card {
                background: #ffffff;
                border: 1px solid var(--ffs-border);
                border-radius: 22px;
                overflow: hidden;
                box-shadow: 0 10px 30px rgba(8, 44, 35, 0.05);
                height: 100%;
                display: flex;
                flex-direction: column;
                transition: all 0.35s ease;
            }

            .ffs-project-card:hover {
                transform: translateY(-8px);
                border-color: var(--ffs-gold);
                box-shadow: 0 18px 45px rgba(8, 44, 35, 0.12);
            }

            .ffs-project-img {
                position: relative;
                overflow: hidden;
                height: 240px;
                background: var(--ffs-green);
            }

            .ffs-project-img img {
                width: 100%;
                height: 100%;
                object-fit: cover;
                transition: transform 0.6s ease;
            }

            .ffs-project-card:hover .ffs-project-img img {
                transform: scale(1.06);
            }

            .ffs-project-badge {
                position: absolute;
                top: 16px;
                left: 16px;
                background: var(--ffs-green);
                color: var(--ffs-gold);
                padding: 5px 14px;
                border-radius: 50px;
                font-size: 11px;
                font-weight: 700;
                text-transform: uppercase;
                letter-spacing: 1px;
                border: 1px solid rgba(198, 156, 109, 0.4);
            }

            .ffs-project-body {
                padding: 28px 24px;
                display: flex;
                flex-direction: column;
                flex-grow: 1;
            }

            .ffs-project-body h4 {
                font-size: 20px;
                font-weight: 700;
                color: var(--ffs-green);
                margin-bottom: 6px;
            }

            .ffs-project-type {
                font-size: 13px;
                font-weight: 600;
                color: var(--ffs-gold);
                margin-bottom: 12px;
                text-transform: uppercase;
                letter-spacing: 0.5px;
            }

            .ffs-project-meta-row {
                font-size: 12.5px;
                color: var(--ffs-muted);
                margin-bottom: 8px;
            }

            .ffs-project-meta-row strong {
                color: var(--ffs-green);
            }

            .ffs-project-tags {
                display: flex;
                flex-wrap: wrap;
                gap: 6px;
                margin-top: 14px;
                margin-bottom: 20px;
            }

            .ffs-project-tag {
                background: var(--ffs-cream);
                border: 1px solid var(--ffs-border);
                color: var(--ffs-text);
                font-size: 11px;
                font-weight: 600;
                padding: 4px 10px;
                border-radius: 6px;
            }

            /* Cost Cards */
            .ffs-cost-card {
                background: var(--ffs-cream);
                border: 1px solid var(--ffs-border);
                border-radius: 22px;
                padding: 34px 26px;
                height: 100%;
                display: flex;
                flex-direction: column;
                transition: all 0.35s ease;
                position: relative;
            }

            .ffs-cost-card.popular {
                border: 2px solid var(--ffs-gold);
                background: #ffffff;
                box-shadow: 0 14px 35px rgba(198, 156, 109, 0.2);
            }

            .ffs-popular-tag {
                position: absolute;
                top: -14px;
                left: 50%;
                transform: translateX(-50%);
                background: var(--ffs-gold);
                color: var(--ffs-green);
                font-size: 11px;
                font-weight: 800;
                text-transform: uppercase;
                letter-spacing: 1px;
                padding: 4px 16px;
                border-radius: 50px;
            }

            .ffs-cost-card:hover {
                transform: translateY(-8px);
                border-color: var(--ffs-gold);
                box-shadow: 0 16px 40px rgba(8, 44, 35, 0.09);
                background: #ffffff;
            }

            .ffs-cost-name {
                font-size: 20px;
                font-weight: 800;
                color: var(--ffs-green);
                margin-bottom: 8px;
            }

            .ffs-cost-sub {
                font-size: 13px;
                color: var(--ffs-muted);
                margin-bottom: 20px;
                min-height: 38px;
            }

            .ffs-cost-price {
                font-size: 32px;
                font-weight: 900;
                color: var(--ffs-green);
                margin-bottom: 22px;
                padding-bottom: 18px;
                border-bottom: 1px dashed var(--ffs-border);
            }

            .ffs-cost-price small {
                font-size: 13px;
                font-weight: 500;
                color: var(--ffs-muted);
            }

            .ffs-cost-features {
                list-style: none;
                padding: 0;
                margin: 0 0 28px 0;
                flex-grow: 1;
            }

            .ffs-cost-features li {
                font-size: 13.5px;
                color: var(--ffs-text);
                margin-bottom: 10px;
                display: flex;
                align-items: flex-start;
                gap: 10px;
            }

            .ffs-cost-features li i {
                color: var(--ffs-gold);
                font-size: 13px;
                margin-top: 3px;
            }

            /* FAQ Accordion */
            .ffs-faq-accordion .accordion-item {
                background: var(--ffs-cream);
                border: 1px solid var(--ffs-border);
                border-radius: 16px !important;
                margin-bottom: 16px;
                overflow: hidden;
            }

            .ffs-faq-accordion .accordion-button {
                background: var(--ffs-cream);
                color: var(--ffs-green);
                font-weight: 700;
                font-size: 16.5px;
                padding: 20px 24px;
                box-shadow: none;
            }

            .ffs-faq-accordion .accordion-button:not(.collapsed) {
                background: #ffffff;
                color: var(--ffs-green);
                border-bottom: 1px solid var(--ffs-border);
            }

            .ffs-faq-accordion .accordion-body {
                background: #ffffff;
                padding: 22px 24px;
                font-size: 14.5px;
                line-height: 1.7;
                color: var(--ffs-muted);
            }

            /* Final Call to Action */
            .ffs-final-cta-section {
                padding: 85px 0;
                background: linear-gradient(135deg, #ede3d4 0%, #f7f2ea 50%, #ede3d4 100%);
                border-top: 1px solid #ded2c2;
                border-bottom: 1px solid #ded2c2;
                text-align: center;
            }

            /* Responsive Adjustments */
            @media (max-width: 991px) {
                .ffs-heading {
                    font-size: 32px;
                }

                .ffs-hero-title {
                    font-size: 36px;
                }

                .ffs-hero-subtitle {
                    font-size: 19px;
                }

                .ffs-about-box {
                    padding: 30px;
                }

                .ffs-stat-item {
                    border-right: none;
                    margin-bottom: 20px;
                }
            }

            @media (max-width: 575px) {
                .ffs-heading {
                    font-size: 28px;
                }

                .ffs-hero-title {
                    font-size: 30px;
                }

                .ffs-cta-group a {
                    width: 100%;
                    justify-content: center;
                }
            }