   :root {
            --primary-color: #d4a574;
            --secondary-color: #8b6f47;
            --accent-color: #f4e4d1;
            --text-dark: #2c2c2c;
            --text-light: #6c757d;
            --white: #ffffff;
            --light-bg: #faf9f7;
            --success-color: #28a745;
            --danger-color: #dc3545;
        }

        * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
        }

        body {
            font-family: 'Inter', sans-serif;
            line-height: 1.6;
            color: var(--text-dark);
            background: linear-gradient(135deg, var(--light-bg) 0%, #fff 100%);
            padding-top: 80px; /* Account for fixed navbar */
        }

        .font-display {
            font-family: 'Playfair Display', serif;
        }

        /* Override existing navbar styles */
        .navbar {
            background: rgba(255, 255, 255, 0.95) !important;
            backdrop-filter: blur(10px);
            box-shadow: 0 2px 20px rgba(0, 0, 0, 0.08) !important;
            padding: 1rem 0 !important;
            transition: all 0.3s ease;
            position: fixed !important;
            top: 0 !important;
            width: 100% !important;
            z-index: 1030 !important;
        }

        .navbar-brand {
            font-family: 'Playfair Display', serif !important;
            font-weight: 700 !important;
            font-size: 2rem !important;
            color: var(--primary-color) !important;
            text-decoration: none !important;
        }

        .nav-link {
            font-weight: 500 !important;
            color: var(--text-dark) !important;
            margin: 0 0.5rem !important;
            position: relative !important;
            transition: color 0.3s ease !important;
        }

        .nav-link:hover {
            color: var(--primary-color) !important;
        }

        .nav-link::after {
            content: '';
            position: absolute;
            width: 0;
            height: 2px;
            bottom: -5px;
            left: 50%;
            background-color: var(--primary-color);
            transition: all 0.3s ease;
            transform: translateX(-50%);
        }

        .nav-link:hover::after {
            width: 100%;
        }

        /* Hero Section */
        .hero {
            min-height: 90vh;
            display: flex;
            align-items: center;
            background: linear-gradient(135deg, var(--accent-color) 0%, var(--light-bg) 100%);
            position: relative;
            overflow: hidden;
            margin-bottom: 0;
        }

        .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 1000 1000"><defs><radialGradient id="a" cx="50%" cy="50%" r="50%"><stop offset="0%" stop-color="%23d4a574" stop-opacity="0.1"/><stop offset="100%" stop-color="%23d4a574" stop-opacity="0"/></radialGradient></defs><circle cx="200" cy="200" r="100" fill="url(%23a)"/><circle cx="800" cy="300" r="150" fill="url(%23a)"/><circle cx="400" cy="700" r="120" fill="url(%23a)"/></svg>');
            pointer-events: none;
        }

        .hero-content {
            position: relative;
            z-index: 2;
        }

        .hero h1 {
            font-size: 4rem;
            font-weight: 700;
            color: var(--text-dark);
            margin-bottom: 1.5rem;
            line-height: 1.2;
            text-shadow: 0 2px 4px rgba(0,0,0,0.1);
        }

        .hero .lead {
            font-size: 1.25rem;
            color: var(--text-light);
            margin-bottom: 2rem;
            font-weight: 400;
        }

        /* Recipe Card */
        .recipe-showcase {
            background: var(--white);
            border-radius: 24px;
            box-shadow: 0 20px 60px rgba(0, 0, 0, 0.15);
            overflow: hidden;
            transition: transform 0.4s ease, box-shadow 0.4s ease;
            border: 1px solid rgba(212, 165, 116, 0.2);
        }

        .recipe-showcase:hover {
            transform: translateY(-10px) scale(1.02);
            box-shadow: 0 30px 80px rgba(0, 0, 0, 0.2);
        }

        .recipe-image {
            height: 280px;
            background: linear-gradient(135deg, var(--primary-color), var(--secondary-color));
            display: flex;
            align-items: center;
            justify-content: center;
            position: relative;
            overflow: hidden;
        }

        .recipe-image::before {
            content: '';
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            bottom: 0;
            background: radial-gradient(circle at center, rgba(255,255,255,0.1) 0%, transparent 70%);
        }

        .recipe-image i {
            font-size: 4rem;
            color: var(--white);
            animation: pulse 2s infinite;
        }

        @keyframes pulse {
            0%, 100% { transform: scale(1); }
            50% { transform: scale(1.1); }
        }

        .recipe-content {
            padding: 2.5rem;
        }

        .recipe-title {
            font-size: 2rem;
            font-weight: 700;
            color: var(--text-dark);
            margin-bottom: 1rem;
            line-height: 1.3;
        }

        .recipe-description {
            color: var(--text-light);
            margin-bottom: 1.5rem;
            line-height: 1.7;
            font-size: 1rem;
        }

        .recipe-meta {
            display: flex;
            gap: 1rem;
            margin-bottom: 1.5rem;
            flex-wrap: wrap;
        }

        .meta-item {
            display: flex;
            align-items: center;
            gap: 0.5rem;
            padding: 0.5rem 1rem;
            background: var(--light-bg);
            border-radius: 20px;
            font-size: 0.9rem;
            color: var(--text-dark);
        }

        .meta-item i {
            color: var(--primary-color);
        }

        .ingredients-list {
            background: linear-gradient(135deg, var(--light-bg), #f8f8f8);
            border-radius: 16px;
            padding: 2rem;
            margin-bottom: 2rem;
            border: 1px solid rgba(212, 165, 116, 0.2);
        }

        .ingredients-title {
            font-weight: 700;
            color: var(--text-dark);
            margin-bottom: 1.5rem;
            display: flex;
            align-items: center;
            gap: 0.75rem;
            font-size: 1.1rem;
        }

        .ingredients-title i {
            color: var(--primary-color);
            font-size: 1.2rem;
        }

        .ingredient-item {
            display: flex;
            align-items: center;
            padding: 0.75rem 1rem;
            margin: 0.5rem 0;
            background: var(--white);
            border-radius: 12px;
            border: 2px solid transparent;
            cursor: pointer;
            transition: all 0.3s ease;
            font-size: 0.95rem;
            font-weight: 500;
            box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
        }

        .ingredient-item:hover {
            background: var(--primary-color);
            color: var(--white);
            transform: translateX(8px) scale(1.02);
            border-color: var(--secondary-color);
            box-shadow: 0 4px 16px rgba(212, 165, 116, 0.3);
        }

        .ingredient-item::before {
            content: '•';
            margin-right: 0.5rem;
            color: var(--primary-color);
            font-weight: bold;
            transition: color 0.3s ease;
        }

        .ingredient-item:hover::before {
            color: var(--white);
        }

        .ingredient-note {
            margin-top: 1rem;
            font-size: 0.85rem;
            color: var(--text-light);
            font-style: italic;
            text-align: center;
        }

        /* Buttons */
        .btn-primary {
            background: linear-gradient(135deg, var(--primary-color), var(--secondary-color)) !important;
            border: none !important;
            padding: 1rem 2.5rem !important;
            border-radius: 50px !important;
            font-weight: 600 !important;
            font-size: 1rem !important;
            transition: all 0.3s ease !important;
            text-transform: uppercase !important;
            letter-spacing: 0.5px !important;
            position: relative !important;
            overflow: hidden !important;
        }

        .btn-primary::before {
            content: '';
            position: absolute;
            top: 0;
            left: -100%;
            width: 100%;
            height: 100%;
            background: linear-gradient(90deg, transparent, rgba(255,255,255,0.2), transparent);
            transition: left 0.5s ease;
        }

        .btn-primary:hover::before {
            left: 100%;
        }

        .btn-primary:hover {
            transform: translateY(-3px) !important;
            box-shadow: 0 10px 25px rgba(212, 165, 116, 0.4) !important;
        }

        .btn-outline-primary {
            color: var(--primary-color) !important;
            border: 2px solid var(--primary-color) !important;
            padding: 1rem 2.5rem !important;
            border-radius: 50px !important;
            font-weight: 600 !important;
            font-size: 1rem !important;
            transition: all 0.3s ease !important;
            text-transform: uppercase !important;
            letter-spacing: 0.5px !important;
            background: transparent !important;
        }

        .btn-outline-primary:hover {
            background: var(--primary-color) !important;
            color: var(--white) !important;
            transform: translateY(-3px) !important;
            box-shadow: 0 10px 25px rgba(212, 165, 116, 0.4) !important;
        }

        /* Quick Actions */
        .quick-actions {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
            gap: 2rem;
            margin: 4rem 0;
        }

        .quick-action {
            background: var(--white);
            padding: 2.5rem 2rem;
            border-radius: 20px;
            text-align: center;
            text-decoration: none;
            color: var(--text-dark);
            box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
            transition: all 0.4s ease;
            border: 2px solid transparent;
            position: relative;
            overflow: hidden;
        }

        .quick-action::before {
            content: '';
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            bottom: 0;
            background: linear-gradient(135deg, var(--primary-color), var(--secondary-color));
            opacity: 0;
            transition: opacity 0.3s ease;
        }

        .quick-action:hover::before {
            opacity: 0.05;
        }

        .quick-action:hover {
            transform: translateY(-8px) scale(1.02);
            box-shadow: 0 20px 50px rgba(0, 0, 0, 0.2);
            color: var(--primary-color);
            text-decoration: none;
            border-color: var(--primary-color);
        }

        .quick-action i {
            font-size: 3rem;
            color: var(--primary-color);
            margin-bottom: 1.5rem;
            transition: transform 0.3s ease;
            position: relative;
            z-index: 1;
        }

        .quick-action:hover i {
            transform: scale(1.1) rotate(5deg);
        }

        .quick-action h5 {
            font-weight: 700;
            margin-bottom: 0.75rem;
            font-size: 1.2rem;
            position: relative;
            z-index: 1;
        }

        .quick-action p {
            color: var(--text-light);
            font-size: 0.95rem;
            margin: 0;
            position: relative;
            z-index: 1;
        }

        /* Loading states */
        .loading {
            display: inline-block;
            width: 20px;
            height: 20px;
            border: 3px solid rgba(212, 165, 116, 0.3);
            border-radius: 50%;
            border-top-color: var(--primary-color);
            animation: spin 1s ease-in-out infinite;
        }

        @keyframes spin {
            to { transform: rotate(360deg); }
        }

        /* Responsive Improvements */
        @media (max-width: 768px) {
            body {
                padding-top: 70px;
            }
            
            .hero {
                min-height: 100vh;
                padding: 2rem 0;
            }
            
            .hero h1 {
                font-size: 2.5rem;
            }
            
            .navbar-brand {
                font-size: 1.5rem !important;
            }
            
            .recipe-content {
                padding: 2rem;
            }
            
            .quick-actions {
                grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
                gap: 1.5rem;
                margin: 2rem 0;
            }
            
            .quick-action {
                padding: 2rem 1.5rem;
            }
        }

        @media (max-width: 576px) {
            .hero h1 {
                font-size: 2rem;
            }
            
            .recipe-title {
                font-size: 1.5rem;
            }
            
            .btn-primary, .btn-outline-primary {
                padding: 0.75rem 1.5rem !important;
                font-size: 0.9rem !important;
            }
            
            .d-flex.gap-3 {
                flex-direction: column;
                gap: 1rem !important;
            }
        }

        /* Enhance existing styles */
        .container {
            max-width: 1200px;
        }

        /* Fix footer spacing */
       
         /* Footer */
        .footer {
            background: var(--text-dark);
            color: var(--white);
            padding: 3rem 0 1rem;
            margin-top: 5rem;
        }

        .footer h5 {
            color: var(--primary-color);
            margin-bottom: 1rem;
        }

        .footer a {
            color: rgba(255, 255, 255, 0.7);
            text-decoration: none;
            transition: color 0.3s ease;
        }

        .footer a:hover {
            color: var(--primary-color);
        }

        /* Modern Amy's Bakery Styles */

:root {
    --primary-color: #d4a574;
    --primary-dark: #b8956a;
    --primary-light: #e8d5b7;
    --secondary-color: #8b4513;
    --accent-color: #ffc0cb;
    --accent-dark: #ff69b4;
    --text-primary: #2c2c2c;
    --text-secondary: #666;
    --text-light: #999;
    --background-light: #fefefe;
    --background-cream: #faf9f7;
    --border-light: #e8e8e8;
    --shadow-soft: 0 4px 20px rgba(0, 0, 0, 0.08);
    --shadow-medium: 0 8px 30px rgba(0, 0, 0, 0.12);
    --shadow-strong: 0 16px 40px rgba(0, 0, 0, 0.16);
    --border-radius: 12px;
    --border-radius-lg: 20px;
    --transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

* {
    box-sizing: border-box;
}

body {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    line-height: 1.6;
    color: var(--text-primary);
    background: linear-gradient(135deg, var(--background-cream) 0%, var(--background-light) 100%);
    margin: 0;
    padding: 0;
    font-size: 16px;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.font-display {
    font-family: 'Playfair Display', Georgia, serif;
    font-weight: 600;
    line-height: 1.2;
}

/* Typography */
h1, h2, h3, h4, h5, h6 {
    margin: 0 0 1rem 0;
    font-weight: 600;
    line-height: 1.3;
    color: var(--text-primary);
}

h1 { font-size: 2.5rem; }
h2 { font-size: 2rem; }
h3 { font-size: 1.75rem; }
h4 { font-size: 1.5rem; }
h5 { font-size: 1.25rem; }
h6 { font-size: 1.1rem; }

p {
    margin: 0 0 1rem 0;
    color: var(--text-secondary);
}

.lead {
    font-size: 1.25rem;
    font-weight: 300;
    color: var(--text-secondary);
    margin-bottom: 2rem;
}

/* Layout */
.container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 1.5rem;
}

.row {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -15px;
}

.col-lg-6, .col-md-6, .col-sm-12 {
    padding: 0 15px;
}

.col-lg-6 { flex: 0 0 50%; max-width: 50%; }
.col-md-6 { flex: 0 0 50%; max-width: 50%; }
.col-sm-12 { flex: 0 0 100%; max-width: 100%; }

@media (max-width: 768px) {
    .col-lg-6, .col-md-6 { flex: 0 0 100%; max-width: 100%; }
}

/* Modern Card Layouts */
.modern-card {
    background: var(--background-light);
    border-radius: var(--border-radius-lg);
    box-shadow: var(--shadow-soft);
    border: 1px solid var(--border-light);
    transition: var(--transition);
    overflow: hidden;
}

.modern-card:hover {
    box-shadow: var(--shadow-medium);
    transform: translateY(-2px);
}

.modern-card-header {
    padding: 2rem 2rem 1rem 2rem;
    border-bottom: 1px solid var(--border-light);
    background: linear-gradient(135deg, var(--background-light) 0%, var(--background-cream) 100%);
}

.modern-card-body {
    padding: 2rem;
}

/* Recipe Page Styles */
.recipe-hero {
    background: linear-gradient(135deg, var(--primary-light) 0%, var(--background-light) 100%);
    padding: 4rem 0 2rem 0;
    margin-top: 70px;
}

.recipe-header {
    text-align: center;
    margin-bottom: 3rem;
}

.recipe-title {
    font-size: 3rem;
    color: var(--primary-color);
    margin-bottom: 1rem;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.recipe-meta {
    display: flex;
    justify-content: center;
    gap: 2rem;
    margin: 2rem 0;
    flex-wrap: wrap;
}

.meta-badge {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    background: var(--primary-color);
    color: white;
    padding: 0.5rem 1rem;
    border-radius: 25px;
    font-size: 0.9rem;
    font-weight: 500;
    box-shadow: var(--shadow-soft);
    transition: var(--transition);
}

.meta-badge:hover {
    background: var(--primary-dark);
    transform: translateY(-1px);
}

.meta-badge i {
    font-size: 1rem;
}

/* Recipe Content */
.recipe-content {
    background: var(--background-light);
    border-radius: var(--border-radius-lg);
    box-shadow: var(--shadow-soft);
    margin: 2rem 0;
    overflow: hidden;
}

.recipe-section {
    padding: 2rem;
    border-bottom: 1px solid var(--border-light);
}

.recipe-section:last-child {
    border-bottom: none;
}

.section-title {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin-bottom: 1.5rem;
    font-size: 1.5rem;
    color: var(--primary-color);
}

.section-title i {
    color: var(--accent-color);
    font-size: 1.2rem;
}

/* Ingredients List */
.ingredients-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 1rem;
    margin-top: 1rem;
}

.ingredient-card {
    background: var(--background-cream);
    border: 1px solid var(--border-light);
    border-radius: var(--border-radius);
    padding: 1rem;
    transition: var(--transition);
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 1rem;
}

.ingredient-card:hover {
    background: var(--primary-light);
    transform: translateY(-2px);
    box-shadow: var(--shadow-soft);
}

.ingredient-icon {
    width: 40px;
    height: 40px;
    background: var(--primary-color);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 1.1rem;
    flex-shrink: 0;
}

.ingredient-details {
    flex: 1;
}

.ingredient-amount {
    font-weight: 600;
    color: var(--text-primary);
    margin-bottom: 0.25rem;
}

.ingredient-name {
    color: var(--text-secondary);
    font-size: 0.9rem;
}

/* Instructions */
.instructions-list {
    counter-reset: step-counter;
}

.instruction-step {
    counter-increment: step-counter;
    background: var(--background-cream);
    border-radius: var(--border-radius);
    padding: 1.5rem;
    margin-bottom: 1rem;
    border-left: 4px solid var(--primary-color);
    position: relative;
    transition: var(--transition);
}

.instruction-step:hover {
    background: var(--background-light);
    box-shadow: var(--shadow-soft);
}

.instruction-step::before {
    content: counter(step-counter);
    position: absolute;
    left: -12px;
    top: 1rem;
    background: var(--primary-color);
    color: white;
    width: 24px;
    height: 24px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.8rem;
    font-weight: 600;
}

/* Recipe Lists (Quick & Favorites pages) */
.recipe-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    gap: 2rem;
    margin-top: 2rem;
}

.recipe-card {
    background: var(--background-light);
    border-radius: var(--border-radius-lg);
    box-shadow: var(--shadow-soft);
    border: 1px solid var(--border-light);
    transition: var(--transition);
    overflow: hidden;
    text-decoration: none;
    color: inherit;
}

.recipe-card:hover {
    box-shadow: var(--shadow-medium);
    transform: translateY(-4px);
    text-decoration: none;
    color: inherit;
}

.recipe-card-image {
    height: 200px;
    background: linear-gradient(135deg, var(--primary-light) 0%, var(--accent-color) 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 3rem;
    position: relative;
    overflow: hidden;
}

.recipe-card-image::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="20" cy="20" r="1" fill="rgba(255,255,255,0.1)"/><circle cx="80" cy="40" r="1" fill="rgba(255,255,255,0.1)"/><circle cx="40" cy="80" r="1" fill="rgba(255,255,255,0.1)"/></pattern></defs><rect width="100" height="100" fill="url(%23grain)"/></svg>');
    opacity: 0.3;
}

.recipe-card-content {
    padding: 1.5rem;
}

.recipe-card-title {
    font-size: 1.25rem;
    font-weight: 600;
    margin-bottom: 0.5rem;
    color: var(--text-primary);
    line-height: 1.3;
}

.recipe-card-meta {
    display: flex;
    gap: 1rem;
    margin-top: 1rem;
    flex-wrap: wrap;
}

.recipe-badge {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    background: var(--primary-light);
    color: var(--primary-dark);
    padding: 0.25rem 0.75rem;
    border-radius: 15px;
    font-size: 0.8rem;
    font-weight: 500;
}

.recipe-badge i {
    font-size: 0.7rem;
}

/* Page Headers */
.page-hero {
    background: linear-gradient(135deg, var(--primary-color) 0%, var(--accent-color) 100%);
    padding: 6rem 0 4rem 0;
    margin-top: 70px;
    color: white;
    text-align: center;
    position: relative;
    overflow: hidden;
}

.page-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="dots" width="20" height="20" patternUnits="userSpaceOnUse"><circle cx="10" cy="10" r="1" fill="rgba(255,255,255,0.1)"/></pattern></defs><rect width="100" height="100" fill="url(%23dots)"/></svg>');
    opacity: 0.3;
}

.page-hero-content {
    position: relative;
    z-index: 1;
}

.page-title {
    font-size: 3.5rem;
    margin-bottom: 1rem;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
}

.page-subtitle {
    font-size: 1.25rem;
    opacity: 0.9;
    font-weight: 300;
    max-width: 600px;
    margin: 0 auto;
}

/* Buttons */
.btn {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 1.5rem;
    border-radius: var(--border-radius);
    font-weight: 500;
    text-decoration: none;
    border: none;
    cursor: pointer;
    transition: var(--transition);
    font-size: 1rem;
    line-height: 1;
}

.btn-primary {
    background: var(--primary-color);
    color: white;
    box-shadow: var(--shadow-soft);
}

.btn-primary:hover {
    background: var(--primary-dark);
    transform: translateY(-2px);
    box-shadow: var(--shadow-medium);
    color: white;
    text-decoration: none;
}

.btn-outline-primary {
    background: transparent;
    color: var(--primary-color);
    border: 2px solid var(--primary-color);
}

.btn-outline-primary:hover {
    background: var(--primary-color);
    color: white;
    text-decoration: none;
}

.btn-calendar {
    background: var(--accent-color);
    color: white;
}

.btn-calendar:hover {
    background: var(--accent-dark);
    color: white;
    text-decoration: none;
}

/* Utility Classes */
.d-flex { display: flex; }
.gap-3 { gap: 1rem; }
.flex-wrap { flex-wrap: wrap; }
.justify-content-center { justify-content: center; }
.align-items-center { align-items: center; }
.text-center { text-align: center; }
.mb-2 { margin-bottom: 0.5rem; }
.mb-3 { margin-bottom: 1rem; }
.mb-4 { margin-bottom: 1.5rem; }
.mt-4 { margin-top: 1.5rem; }
.me-2 { margin-right: 0.5rem; }

/* Navbar Enhancements */
.navbar {
    background: rgba(255, 255, 255, 0.95) !important;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    box-shadow: var(--shadow-soft);
    transition: var(--transition);
}

.navbar-brand {
    font-family: 'Playfair Display', serif !important;
    font-weight: 700 !important;
    font-size: 1.8rem !important;
    color: var(--primary-color) !important;
}

/* Loading Animation */
.loading {
    display: inline-block;
    width: 16px;
    height: 16px;
    border: 2px solid rgba(255, 255, 255, 0.3);
    border-radius: 50%;
    border-top-color: white;
    animation: spin 1s ease-in-out infinite;
}

@keyframes spin {
    to { transform: rotate(360deg); }
}

/* Responsive Design */
@media (max-width: 768px) {
    .container { padding: 0 1rem; }
    
    .recipe-title { font-size: 2rem; }
    .page-title { font-size: 2.5rem; }
    
    .recipe-meta, .recipe-card-meta {
        justify-content: center;
    }
    
    .recipe-grid {
        grid-template-columns: 1fr;
        gap: 1.5rem;
    }
    
    .ingredients-grid {
        grid-template-columns: 1fr;
    }
    
    .recipe-section {
        padding: 1.5rem;
    }
    
    h1 { font-size: 2rem; }
    h2 { font-size: 1.75rem; }
    h3 { font-size: 1.5rem; }
}

@media (max-width: 480px) {
    .page-hero {
        padding: 4rem 0 2rem 0;
    }
    
    .page-title {
        font-size: 2rem;
    }
    
    .recipe-title {
        font-size: 1.75rem;
    }
    
    .btn {
        padding: 0.6rem 1.2rem;
        font-size: 0.9rem;
    }
}

/* Print Styles */
@media print {
    .navbar, .page-hero, .btn, .recipe-card:hover {
        display: none !important;
    }
    
    .recipe-content {
        box-shadow: none;
        border: 1px solid #ddd;
    }
    
    .recipe-section {
        break-inside: avoid;
    }
}

/* Custom Scrollbar */
::-webkit-scrollbar {
    width: 8px;
}

::-webkit-scrollbar-track {
    background: var(--background-light);
}

::-webkit-scrollbar-thumb {
    background: var(--primary-light);
    border-radius: 4px;
}

::-webkit-scrollbar-thumb:hover {
    background: var(--primary-color);
}


  
        
        .dropdown-menu {
            background: rgba(255, 255, 255, 0.95);
            backdrop-filter: blur(10px);
            border: none;
            border-radius: 15px;
            box-shadow: 0 10px 30px rgba(0,0,0,0.2);
            margin-top: 0.5rem;
        }
        
        .dropdown-item {
          
            font-size: 1.1rem;
            color: #333;
            padding: 0.75rem 1.5rem;
            transition: all 0.3s ease;
        }
        
        .dropdown-item:hover {
            background: linear-gradient(45deg, #ffc0cb, #ffb6c1);
            color: #fff;
            transform: translateX(5px);
        }
        
        .search-container {
            position: relative;
            margin-left: 1rem;
        }
        
        .search-input {
            background: rgba(255, 255, 255, 0.9);
            border: none;
            border-radius: 25px;
            padding: 0.5rem 1rem 0.5rem 2.5rem;
            width: 250px;
            font-family: 'Indie Flower', cursive;
            transition: all 0.3s ease;
        }
        
        .search-input:focus {
            outline: none;
            box-shadow: 0 0 20px rgba(255, 192, 203, 0.6);
            background: rgba(255, 255, 255, 1);
            width: 300px;
        }
        
        .search-icon {
            position: absolute;
            left: 12px;
            top: 50%;
            transform: translateY(-50%);
            color: #666;
            z-index: 10;
        }
        
        .navbar-toggler {
            border: 2px solid #fff;
            color: #fff;
        }
        
        .navbar-toggler:focus {
            box-shadow: 0 0 0 0.25rem rgba(255, 255, 255, 0.25);
        }
        
        .navbar-toggler-icon {
            background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 1%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='m4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
        }
        
        .guestaurant-link {
            font-family: 'Pacifico', cursive !important;
            color: #ff69b4 !important;
        }
        
        .guestaurant-link:hover {
            color: #ff1493 !important;
        }
        
        .chef-area {
            font-size: 0.9rem;
            opacity: 0.8;
        }
        
        /* Mobile responsiveness */
        @media (max-width: 991.98px) {
            .navbar-brand {
                font-size: 2rem;
            }
            
            .search-container {
                margin: 1rem 0 0 0;
                width: 100%;
            }
            
            .search-input {
                width: 100%;
            }
            
            .search-input:focus {
                width: 100%;
            }
        }