/* Color 1: #00D1E8;
 * Color 2: #000; */
:root {
    /* Warm Neutrals */
    --cream: #FFF8E7;
    --ivory: #FAF3E0;
    --beige: #F5E1DA;
    --warm-gray: #D9D9D9;
    /* Sweet Accents */
    --soft-pink: #F9C5D1;
    --peach: #FFD6A5;
    --mint: #C7F9CC;
    --lavender: #E6E6FA;
    /* Delicious Darks */
    --deep-brown: #5D3A00;
    --charcoal: #333333;
    --espresso: #3E2723;
    /* Highlights */
    --caramel: #FFC107;
    --honey: #FFB74D;
    --strawberry: #FF6B6B;
    --go-up-bg: #FFC107;
    --go-up-bg-dark: #333333;
    --go-up-icon: #fff;
    --go-up-icon-dark: #FFC107;
}

body {
    background: var(--cream);
    color: var(--espresso);
    font-size: 16px;
    line-height: 1.6;
}

h1, h2, h3, h4, h5, h6 {
    color: var(--deep-brown);
    font-weight: 700;
}

p, .contact-details p, .menu-items li, .delivery-list li, .directions-list li {
    color: var(--charcoal);
    font-weight: 500;
}

/* Links with proper contrast */
a {
    color: #0066cc;
    text-decoration: underline;
}

a:hover {
    color: #004499;
    text-decoration: none;
}

/* Section backgrounds with better contrast */
.overview,
.featured-work,
.hours-location,
.latest-posts,
.pricing-table,
.stats,
.features {
    background: var(--ivory);
    color: var(--charcoal);
}

/* Card elements */
.card,
.card-body,
.hours-info,
.location-info,
.value-item,
.mission-card,
.vision-card {
    background: white;
    color: var(--charcoal);
    border: 1px solid #e9ecef;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}

/* Form elements with better visibility */
.form-control {
    border: 2px solid #ced4da;
    background: white;
    color: var(--charcoal);
}

.form-control:focus {
    border-color: var(--caramel);
    box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.25);
}

/* Button accessibility */
.btn-order, .btn-submit, .btn-checkout, .btn-map, .quick-btn {
    background: linear-gradient(135deg, var(--caramel) 0%, var(--honey) 100%);
    color: var(--charcoal);
    border: 2px solid var(--caramel);
    font-weight: 600;
}

.btn-order:hover, .btn-submit:hover, .btn-checkout:hover, .btn-map:hover, .quick-btn:hover {
    background: linear-gradient(135deg, var(--honey) 0%, var(--caramel) 100%);
    color: var(--deep-brown);
    transform: translateY(-2px);
    box-shadow: 0 4px 8px rgba(0,0,0,0.15);
}

/* Status indicators for color blind users */
.status-pending {
    background: #fff3cd;
    color: #856404;
    border: 2px solid #856404;
    font-weight: bold;
}

.status-confirmed {
    background: #d4edda;
    color: #155724;
    border: 2px solid #155724;
    font-weight: bold;
}

.status-completed {
    background: #d1ecf1;
    color: #0c5460;
    border: 2px solid #0c5460;
    font-weight: bold;
}

/* Improved table readability */
.table {
    background: white;
    color: var(--charcoal);
}

.table thead th {
    background: var(--deep-brown);
    color: white;
    border-color: var(--charcoal);
}

.table tbody tr:hover {
    background: var(--ivory);
}

/* Alert improvements */
.alert {
    border-width: 2px;
    font-weight: 500;
}

.alert-success {
    background: #d4edda;
    color: #155724;
    border-color: #155724;
}

.alert-warning {
    background: #fff3cd;
    color: #856404;
    border-color: #856404;
}

.alert-danger {
    background: #f8d7da;
    color: #721c24;
    border-color: #721c24;
}

.alert-info {
    background: #d1ecf1;
    color: #0c5460;
    border-color: #0c5460;
}

/* Buttons and CTAs */
.btn-order, .btn-submit, .btn-checkout, .btn-map, .quick-btn {
    background: linear-gradient(135deg, var(--caramel) 0%, var(--honey) 100%);
    color: var(--charcoal);
    border: none;
    padding: 12px 25px;
    border-radius: 25px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.3s ease;
    margin-top: 15px;
}

.btn-order:hover, .btn-submit:hover, .btn-checkout:hover, .btn-map:hover, .quick-btn:hover {
    background: linear-gradient(135deg, var(--honey) 0%, var(--caramel) 100%);
    color: var(--deep-brown);
}

/* Section backgrounds */
.page-header {
    background: linear-gradient(135deg, var(--peach) 0%, var(--beige) 100%);
    color: var(--deep-brown);
}

.order-categories, .hours-location-content, .directions-section, .contact-info-section, .contact-forms-section, .faq-section, .about-story, .mission-vision, .our-values, .our-specialties, .team-section, .footer, .copyright {
    background: var(--ivory);
}

.category-card, .order-form, .order-summary, .contact-card, .contact-form-container, .specialty-section, .team-member, .quick-contact-item {
    background: var(--warm-gray);
    color: var(--deep-brown);
}

/* Features and icons */
.features i, .contact-icon, .experience-badge, .mission-card i, .vision-card i, .value-item i, .team-member img {
    background: var(--soft-pink);
    color: var(--deep-brown);
}

.value-item {
    background: var(--mint);
    color: var(--deep-brown);
}

.founder-quote, .faq-item {
    background: var(--lavender);
    color: var(--deep-brown);
}

/* Navbar */
.navbar {
    background: var(--beige);
}
.navbar-brand span {
    color: var(--deep-brown);
    font-weight: bold;
}
.navbar-nav .nav-link {
    color: var(--espresso);
}
.navbar-nav .active>.nav-link {
    color: var(--caramel);
}

/* Upper Bar */
.upper-bar {
    background: var(--peach);
    color: var(--deep-brown);
}
.upper-bar .get-quote {
    background: var(--strawberry);
    color: #fff;
    border-radius: 20px;
    padding: 5px 15px;
    font-weight: 600;
}
.upper-bar .get-quote:hover {
    background: var(--caramel);
    color: var(--deep-brown);
}

/* Footer */
.footer {
    background: var(--beige);
    color: var(--deep-brown);
}
.footer a {
    color: var(--strawberry);
}
.footer a:hover {
    color: var(--caramel);
}

/* Copyright */
.copyright {
    background: var(--warm-gray);
    color: var(--deep-brown);
}

/* Dark Mode Styles */
body.dark-mode {
    background: #181818 !important;
    color: var(--cream);
}

body.dark-mode h1, body.dark-mode h2, body.dark-mode h3, body.dark-mode h4, body.dark-mode h5, body.dark-mode h6 {
    color: #ffd700 !important;
}

body.dark-mode .page-header,
body.dark-mode .order-categories,
body.dark-mode .hours-location-content,
body.dark-mode .directions-section,
body.dark-mode .contact-info-section,
body.dark-mode .contact-forms-section,
body.dark-mode .faq-section,
body.dark-mode .about-story,
body.dark-mode .mission-vision,
body.dark-mode .our-values,
body.dark-mode .our-specialties,
body.dark-mode .team-section,
body.dark-mode .footer,
body.dark-mode .copyright {
    background: #222 !important;
    color: var(--cream) !important;
}

body.dark-mode .category-card,
body.dark-mode .order-form,
body.dark-mode .order-summary,
body.dark-mode .contact-card,
body.dark-mode .contact-form-container,
body.dark-mode .specialty-section,
body.dark-mode .team-member,
body.dark-mode .quick-contact-item {
    background: #232323 !important;
    color: var(--cream) !important;
}

body.dark-mode .btn-order, body.dark-mode .btn-submit, body.dark-mode .btn-checkout, body.dark-mode .btn-map, body.dark-mode .quick-btn {
    background: linear-gradient(135deg, #ff7043 0%, #ffd54f 100%) !important;
    color: #181818 !important;
    border: 2px solid #ffd54f !important;
}

body.dark-mode .btn-order:hover, body.dark-mode .btn-submit:hover, body.dark-mode .btn-checkout:hover, body.dark-mode .btn-map:hover, body.dark-mode .quick-btn:hover {
    background: linear-gradient(135deg, #ffd54f 0%, #ff7043 100%) !important;
    color: #181818 !important;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(255, 213, 79, 0.4);
}

body.dark-mode .navbar {
    background: #181818 !important;
}
body.dark-mode .navbar-brand span {
    color: var(--caramel) !important;
}
body.dark-mode .navbar-nav .nav-link {
    color: var(--cream) !important;
}
body.dark-mode .navbar-nav .active>.nav-link {
    color: var(--caramel) !important;
}
body.dark-mode .upper-bar {
    background: #232323 !important;
    color: var(--caramel) !important;
}
body.dark-mode .upper-bar .get-quote {
    background: var(--caramel) !important;
    color: #232323 !important;
}
body.dark-mode .footer {
    background: #181818 !important;
    color: var(--caramel) !important;
}
body.dark-mode .footer a {
    color: var(--caramel) !important;
}
body.dark-mode .footer a:hover {
    color: var(--strawberry) !important;
}
body.dark-mode .copyright {
    background: #232323 !important;
    color: var(--caramel) !important;
}

/* Go Up Button Styles */
.go-up-btn {
    position: fixed;
    right: 20px;
    bottom: 30px;
    z-index: 9999;
    background: var(--go-up-bg);
    color: var(--go-up-icon);
    border: none;
    border-radius: 50%;
    width: 48px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 2rem;
    box-shadow: 0 4px 12px rgba(0,0,0,0.15);
    cursor: pointer;
    transition: background 0.3s, color 0.3s, box-shadow 0.3s;
    opacity: 0.85;
}
.go-up-btn:hover {
    background: var(--strawberry);
    color: #fff;
    opacity: 1;
}
body.dark-mode .go-up-btn {
    background: var(--go-up-bg-dark);
    color: var(--go-up-icon-dark);
    box-shadow: 0 4px 12px rgba(255,193,7,0.15);
}
body.dark-mode .go-up-btn:hover {
    background: var(--caramel);
    color: #232323;
}

/* Modern dark mode toggle icon */
.dark-mode-toggle {
    background: none;
    border: none;
    font-size: 2rem;
    cursor: pointer;
    margin-left: 10px;
    transition: color 0.3s;
    color: var(--deep-brown);
    outline: none;
}
body.dark-mode .dark-mode-toggle {
    color: var(--caramel);
}

/* Enhanced existing styles */
.text-primary {
    color: #ECA86B !important;
}

/* Star Upper Bar */

.upper-bar{
    background-color: #333333;
    color: #fff;
    font-family: sans-serif;
}

.upper-bar .info{
    margin: 15px 0;
}

@media (max-width:576px){
    .upper-bar .info:first-child{
        margin-bottom: 0;
    }
}

.upper-bar span{
    color: #bfc6c9;
}

.upper-bar .get-quote{
    display: inline-block;
    border: 1px solid #ddd;
    padding: 1px 10px;
    margin-left: 20px;
}

.upper-bar i{
    padding-right: 5px;
}

.t-l{
    padding-top: 2px;
}

/* End Upper Bar */

/* Start Navbar */

.navbar-brand span{
    font-weight: lighter;
    font-size: 30px;
}

.navbar-brand span:last-child{
    color: var(--soft-pink);
    font-family: 'Pacifico', cursive;
}

.navbar-brand span:first-child{
    font-family: 'Pacifico', cursive;
}

.navbar-nav .nav-link{
    font-size: 15px;
    text-transform: uppercase;
    margin-left: 18px;
    color: #000 !important;
    font-weight: bold;
    word-spacing: 2px;
    letter-spacing: 1px;
}

.navbar-nav .active>.nav-link{
    color: var(--strawberry) !important;
}


/* End Navbar */

/* Start Slider */

.slider{
    background-color: #DDD;
}

.slider .carousel-inner{
    display: flex;
    align-items: center;
    justify-content: left;
}

@media(max-width: 768px){
    .slider .carousel-inner{
        justify-content: center;
    }
}

/* Improved text visibility and contrast */
.slider .carousel-inner h1{
    position: absolute;
    color: #fff;
    z-index: 3;
    font-size: 70px;
    max-width: 800px;
    line-height: 1.4;
    left: 100px;
    font-weight: 700;
    text-shadow: 3px 3px 6px rgba(0,0,0,0.8);
}

@media(max-width: 768px){
    .slider .carousel-inner h1{
        left: auto;
        max-width: 100%;
        font-size: 61px;
        text-align: center;
        font-weight: 700;
    }
}

@media (max-width: 576px){
    .slider .carousel-inner h1{
        font-size: 45px;
        font-weight: 700;
    }
}

.slider .carousel-inner h1 span{
    background-color: #ECA86B;
    display: inline-block;
    padding: 5px 15px;
    border-radius: 5px;
    box-shadow: 0 4px 8px rgba(0,0,0,0.3);
}

.slider .carousel-inner .overlay{
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    background-color: rgba(0, 0, 0, 0.7);
    z-index: 2;
}

.slider .carousel-item{
    -webkit-background-size: cover;
    -o-background-size: cover;
    -moz-background-size: cover;
    background-size: cover;
}

.slider .carousel-one{
    background-image: url('../img/1.jpg');
}

.slider .carousel-two{
    background-image: url('../img/2.jpeg');
}

.slider .carousel-three{
    background-image: url('../img/3.jpeg');
}

.slider .carousel-indicators li{
    cursor: pointer;
    border-radius: 12px;
    width: 12px;
    height: 12px;
}

/* End Slider */

/* Start Features */

.features{
    padding: 50px 0;
}

.features i{
    background-color: #ECA86B;
    color: #fff;
    padding: 15px;
    margin-bottom: 10px;
}

.features h3{
    font-weight: bold;
    font-size: 22px;
    color: #2c3e50;
}

.features p{
    font-weight: 500;
    letter-spacing: 1px;
    color: #495057;
    font-size: 16px;
}

/* End Features */

/* Start Overview */

.overview{
    padding: 100px 0;
    background-color: #f0f5f7;
}

.overview h2{
    font-size: 50px;
    font-weight: bold;
    text-transform: uppercase;
    margin-bottom: 30px;
}

@media (max-width: 992px){
    .overview h2{
    font-size: 30px;
    margin-bottom: 15px;
    }
}

.overview p{
    line-height: 2;
    font-size: 17px;
    width: 80%;
    margin: 0 auto 15px;
    color: #495057;
    font-weight: 500;
}

@media (max-width: 992px){
    .overview p{
    width: 80%;
    }
}

.overview h4{
    letter-spacing: 2px;
    font-weight: 500;
    margin-bottom: 40px;
    color: #2c3e50;
}

.overview button{
    background-color: #ECA86B;
    color: #fff;
    padding: 10px 30px;
    font-size: 20px;
    font-weight: bold;
    border: 1px solid #ECA86B;
    cursor: pointer;
}

/* End Overview */

/* Start Featured Work */

.featured-work{
    padding: 100px 0;
}

.featured-work h2{
    font-size: 50px;
    font-weight: bold;
    margin-bottom: 20px;
}

@media (max-width: 992px){
    .featured-work h2{
        font-size: 30px;
    }
}

.featured-work p{
    line-height: 1.6;
    font-size: 17px;
    width: 80%;
    margin: 0 auto 15px;
    color: #6a6a6a;
}

.featured-work ul li{
    color: #ECA86B;
    border: 2px solid #FFEBCD;
    padding: 10px 20px;
    margin-left: 10px;
    margin-bottom: 10px;
    -webkit-transition: all .3s ease-in-out;
    -o-transition: all .3s ease-in-out;
    -moz-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
}

.featured-work ul{
    margin-top: 40px;
}

.featured-work ul li.active,
.featured-work ul li:hover{
    background-color: #ECA86B;
    color: #fff;
    border: 2px solid #ECA86B;
}

.featured-work ul li:hover{
    cursor: pointer;
}

.featured-work .shuffle-images{
    margin-top: 50px;
}

.featured-work .shuffle-images .row{
    margin: 0;
}

.featured-work .shuffle-images .row .col-md{
    padding: 0;
    -webkit-transition: all .5s ease-in-out;
    -o-transition: all .5s ease-in-out;
    -moz-transition: all .5s ease-in-out;
    transition: all .5s ease-in-out;
}

.featured-work .row img{
    width: 100%;
}

/* End Featured Work */

/* Start Hours & Location */

.hours-location{
    padding: 100px 0;
    background-color: #f9f9f9;
}

.hours-location h2{
    font-size: 50px;
    font-weight: bold;
    margin-bottom: 20px;
}

@media (max-width: 992px){
    .hours-location h2{
        font-size: 30px;
    }
}

.hours-location .section-post{
    line-height: 1.6;
    font-size: 17px;
    width: 80%;
    margin: 0 auto 45px;
    color: #6a6a6a;
}

.hours-location .hours-info,
.hours-location .location-info{
    background: #fff;
    padding: 30px;
    border-radius: 10px;
    box-shadow: 0 5px 15px rgba(0,0,0,0.1);
    margin-bottom: 30px;
}

.hours-location h3{
    color: #ECA86B;
    font-weight: bold;
    margin-bottom: 20px;
}

.hours-location ul li{
    padding: 8px 0;
    border-bottom: 1px solid #eee;
}

.hours-location ul li:last-child{
    border-bottom: none;
}

.hours-location address{
    line-height: 1.8;
    color: #6a6a6a;
}

/* End Hours & Location */

/* Start Contact Section */

.contact-section{
    padding: 100px 0;
    background-color: #f0f5f7;
}

.contact-section h2{
    font-size: 40px;
    font-weight: bold;
    margin-bottom: 20px;
    color: #333;
}

.contact-section p{
    color: #6a6a6a;
    font-size: 16px;
    margin-bottom: 40px;
}

.contact-info{
    margin-top: 30px;
}

.contact-item{
    display: flex;
    align-items: flex-start;
    margin-bottom: 30px;
}

.contact-item i{
    background-color: #ECA86B;
    color: #fff;
    padding: 15px;
    border-radius: 50%;
    margin-right: 20px;
    min-width: 50px;
    text-align: center;
}

.contact-item h4{
    color: #333;
    font-weight: bold;
    margin-bottom: 10px;
}

.contact-item p{
    color: #6a6a6a;
    margin: 0;
}

.contact-form{
    background: #fff;
    padding: 30px;
    border-radius: 10px;
    box-shadow: 0 5px 15px rgba(0,0,0,0.1);
}

.contact-form h3{
    color: #333;
    font-weight: bold;
    margin-bottom: 30px;
}

.contact-form input,
.contact-form textarea{
    width: 100%;
    padding: 12px 15px;
    margin-bottom: 20px;
    border: 1px solid #ddd;
    border-radius: 5px;
    font-size: 14px;
}

.contact-form button{
    background-color: #ECA86B;
    color: #fff;
    padding: 12px 30px;
    border: none;
    border-radius: 5px;
    font-weight: bold;
    cursor: pointer;
    width: 100%;
}

.contact-form button:hover{
    background-color: #d4956a;
}

/* End Contact Section */

/* Start Latest Posts */

.latest-posts{
    padding: 0 0 100px;
}

.latest-posts h2{
    font-size: 50px;
    font-weight: bold;
    margin-bottom: 20px;
}

@media (max-width: 992px){
    .latest-posts h2{
        font-size: 30px;
    }
}

.latest-posts .section-post{
    line-height: 1.6;
    font-size: 17px;
    width: 80%;
    margin: 0 auto 45px;
    color: #6a6a6a;
}

@media (max-width: 992px){
    .latest-posts .card{
        margin-bottom: 10px;
    }
}

.latest-posts .card .card-title{
    font-size: 20px;
    line-height: 1.5;
    color: #333333;
    font-weight: bold;
    letter-spacing: 1px;
}

.latest-posts .card .card-text{
    line-height: 1.5;
    font-weight: lighter;
    color: #6a6a6a;
    margin-bottom: 10px;
}

.latest-posts .card .card-link{
    color: #ECA86B;
    font-weight: bold;
}

/* End Latest-posts */

/* Start Testimonials */

.testimonials{
    -webkit-background-size: cover;
    -o-background-size: cover;
    -moz-background-size: cover;
    background-size: cover;
    background-image: url("../img/t1.jpeg");
    position: relative;
}

.testimonials .overlay{
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    background-color: rgba(0, 0, 0, 0.6);
    z-index: 2;
}

.testimonials .carousel-inner{
    position: relative;
    z-index: 3;
}

.testimonials .carousel-indicators li{
    cursor: pointer;
    border-radius: 12px;
    width: 12px;
    height: 12px;
}

.carousel-item img{
    border-radius: 106px;
    border: 2px solid white;
    background: #fff;
}

.testimonials .carousel-caption{
    top: 50%;
    margin-top: -154px;
}


.testimonials .carousel-caption img{
    margin-bottom: 20px;
}

.testimonials .carousel-caption h3{
    margin-bottom: 5px;
}

.testimonials .carousel-caption h3 + span{
    font-size: 20px;
    display: inline-block;
    margin-bottom: 30px;
}

.carousel-control-prev, .carousel-control-next{
    z-index: 4;
}

/* Carousel section height fix */
.testimonials .carousel-inner,
.testimonials .carousel-item {
    min-height: 340px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.testimonials .carousel-caption {
    min-height: 220px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

/* End Testimonials */

/* Start Pricing Table */

.pricing-table{
    background-color: #f0f5f7;
    padding: 100px 0 100px;
}

@media (max-width: 992px){
    .pricing-table .card{
        margin-bottom: 10px;
    }
}

.pricing-table h2{
    font-size: 50px;
    font-weight: bold;
    margin-bottom: 20px;
}

@media (max-width: 992px){
    .pricing-table h2{
        font-size: 35px;
    }
}

.pricing-table .section-post{
    line-height: 1.6;
    font-size: 17px;
    width: 80%;
    margin: 0 auto 85px;
    color: #6a6a6a;
}

@media (max-width: 992px){
    .pricing-table .section-post{
        width: 100%;
        margin-bottom: 40px;
    }
}

.pricing-table .card-body{
    padding: 0;
}


.pricing-table .card .card-title{
    font-size: 25px;
    line-height: 1.5;
    color: #333333;
    font-weight: bold;
    letter-spacing: 1px;
    margin-top: 40px;
}

.pricing-table .card .card-text{
    line-height: 1.5;
    font-weight: bold;
    color: #6a6a6a;
    margin-bottom: 10px;
    margin: 30px 0 10px;
    background-color: #f0f5f7;
    padding: 10px;
    font-size: 30px;
}

.pricing-table .card .card-text span{
    font-size: 14px;
    text-transform: uppercase;
}

.pricing-table .list-group-item{
    border: none;
}

.pricing-table .card .card-link{
    background-color: #ECA86B;
    font-weight: bold;
    display: inline-block;
    padding: 10px 15px;
    margin-top: 15px;
    margin-bottom: 30px;
    color: #fff;
    font-size: 17px;
    text-transform: uppercase;
}

.pricing-table .card .weddings{
    position: relative;
    top: -20px;
}

.pricing-table .card .weddings .card-text{
    background-color: #ECA86B;
    color: #fff;
}

.pricing-table .card .weddings .card-link{
    background-color: #333333;
}

/* Popular Selections cards uniform height */
.pricing-table .row {
    display: flex;
    flex-wrap: wrap;
}
.pricing-table .card {
    display: flex;
    flex-direction: column;
    height: 100%;
    min-height: 420px;
    margin-bottom: 24px;
}
.pricing-table .card-body {
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.pricing-table .card .list-group {
    margin-bottom: 16px;
}

/* End Pricing Table */

/* Start Choose us */

.choose-us img{
    max-width: 100%;
}

.choose-us .info{
    padding: 0;
}

/* Fix contrast for the right column in choose-us (light mode) */
.choose-us .info:last-child{
    background-color: #f7f3ee; /* light neutral to match theme */
    color: #333333; /* ensure readable text */
    padding-top: 30px;
    padding-bottom: 30px;
}

.choose-us h1{
    margin: 40px;
}

.choose-us p{
    margin: 40px;
    line-height: 2;
    font-size: 18px;
}

.choose-us .read-more{
    display: inline-block;
    padding: 8px 20px;
    margin: 0 0 0 40px;
    background: #ECA86B;
    text-decoration: none;
    color: #fff;
    font-size: 17px;
    font-weight: bold;
    text-transform: uppercase;
}

@media (max-width: 992px){
    .choose-us .read-more{
        margin-bottom: 25px;
    }
}

/* End Choose Us */

/* Start Stats */

.stats{
    padding: 100px 0;
    color: #333333;
}

.stats .number{
    display: block;
    font-size: 50px;
    font-weight: bold;
}

.stats p{
    color: #ECA86B;
    font-size: 20px;
    text-transform: uppercase;
    margin: 0;
}

/* End Stats */

/* Start Contact Us */

.contact-us{
    padding: 80px 0;
    background-color: #ECA86B;
    color: #fff;
    font-size: 22px;
}

.contact-us p{
    margin: 0;
}

@media (max-width: 768px){
    .contact-us p{
        margin-bottom: 30px;
    }
}

.contact-us a{
    color: #fff;
    text-decoration: none;
    border: 2px solid #fff;
    padding: 6px 15px 8px;
    text-transform: uppercase;
    font-weight: bold;
}

/* End Contact Us */

/* Start Footer */

.footer{
    padding: 100px 0;
}

.footer .site-info h2{
    font-size: 45px;
    margin-bottom: 30px;
}

.footer .site-info span{
    font-weight: lighter;
}

.footer .site-info h2 span:last-child{
    color: #ECA86B;
    font-family: 'Pacifico', cursive;
}

.footer .site-info h2 span:first-child{
    font-family: 'Pacifico', cursive;
}

.footer .site-info p{
    line-height: 1.8;
    color: #727272;
}

.footer .site-info a{
    color: #333333;
    font-weight: bold;
    font-size: 18px;
    text-decoration: none;
}

.footer .site-info a:before{
    font-family: FontAwesome; 
    content: "\f138";
    display: inline-block;
    margin-right: 5px;
}

.footer .helpful-links h3,
.footer .contact h3{
    font-weight: bold;
    color: #333333;
    margin-bottom: 60px;
}

.footer .helpful-links ul li:before{
    font-family: FontAwesome;
    content: "\f054";
    margin-right: 5px;
    color: #333333;
    font-size: 12px;
    position: relative;
    top: -1px;
}

.footer .contact ul li{
    margin-bottom: 25px;
}

.footer .contact a{
    color: #ECA86B;
    text-decoration: none;
}

@media (max-width: 992px){
    .footer .helpful-links h3,
    .footer .contact h3{
        margin-bottom: 30px;
        margin-top: 30px;
    }
    .footer .contact ul li{
        margin-bottom: 5px;
    }
}

/* End Footer */

/* Start Copyright */

.copyright{
    border-top: 1px solid #c0c0c0;
    padding: 20px;
}

.copyright ul{
    margin: 0;
}
.copyright ul li{
    display: inline-block;
    margin-left: 20px;
    font-size: 17px;
}

.copyright ul li a{
    color: #777;
}

/* End Copyright */

/* Order page product grid (horizontal cards) */
.order-categories .container-fluid{
    padding: 0 2rem;
    max-width: 100%;
}
.product-row{
  display: flex !important;
  flex-wrap: nowrap; /* horizontal scrolling container */
  gap: 1rem;
  align-items: stretch;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  scroll-behavior: smooth;
  padding-bottom: 8px;
  padding-top: 10px;
}

/* card sizing and spacing improvements */
.product-card{
    flex: 0 0 260px; /* fixed card width for consistent layout */
    max-width: 260px;
    min-width: 220px;
    margin: 0.25rem 0.5rem;
}
.product-card .card-body{
    padding: 0.9rem;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.product-card .card-img-top{
    height: 150px;
    object-fit: cover;
    border-top-left-radius: .25rem;
    border-top-right-radius: .25rem;
}

.product-card .card-title{
    font-size: 1rem;
    margin-bottom: 0.35rem;
}
.product-card .card-text{
    font-size: 0.88rem;
    color: #666;
    margin-bottom: 0.6rem;
}

.product-card .price{
    font-weight: 700;
    color: var(--deep-brown);
    margin-right: 0.5rem;
}

.product-card .add-to-cart{
    margin-left: auto;
    background: linear-gradient(135deg, var(--caramel) 0%, var(--honey) 100%);
    border: none;
    color: #fff;
}

/* make sure price and button align at bottom */
.product-card .d-flex.justify-content-between.align-items-center{
    margin-top: 8px;
}

/* responsive adjustments */
@media (max-width: 1200px){
    .product-card{ flex: 0 0 220px; max-width:220px; }
    .product-card .card-img-top{ height:140px; }
}
@media (max-width: 768px){
    .product-card{ flex: 0 0 46%; max-width:46%; }
    .product-card .card-img-top{ height:160px; }
}
@media (max-width: 480px){
    .product-card{ flex: 0 0 80%; max-width:80%; }
    .product-card .card-img-top{ height:200px; }
}

/* scroll buttons adjusted position */
.scroll-container{ position: relative; display: flex; align-items: center; }
.scroll-btn{
  background: rgba(0,0,0,0.65);
  color: #fff;
  border: none;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  z-index: 5;
  transition: transform .18s ease, background .18s ease;
}
.scroll-btn.prev{ margin-right: 0.5rem; }
.scroll-btn.next{ margin-left: 0.5rem; }

/* hide extra small text beside category titles */
.category-title small{ display: none; }

/* add some spacing between categories */
.category-section{ padding: 1.2rem 0 1.8rem; border-bottom: 1px solid rgba(0,0,0,0.03); }

/* Override: hide visual price labels across the site (prices kept in data attributes for internal use only) */
.price{ display: none !important; }

/* Pricing cards: consistent sizing and layout */
.pricing-table .card{ min-height: 400px; display: flex; flex-direction: column; border-radius: 12px; overflow: hidden; }
.pricing-table .card-body{ flex: 1; display:flex; flex-direction: column; padding: 20px; }
.pricing-table .list-group{ margin-top: 10px; }
.pricing-table .card .card-link{ margin-top: auto; align-self: flex-start; }

/* Ensure category cards and product cards adapt to dark mode */
body.dark-mode .card,
body.dark-mode .product-card,
body.dark-mode .product-card .card-body,
body.dark-mode .pricing-table .card,
body.dark-mode .pricing-table .card-body,
body.dark-mode .pricing-table .list-group-item,
body.dark-mode .pricing-table .card-link,
body.dark-mode .pricing-table .card-title,
body.dark-mode .pricing-table .card-subtitle,
body.dark-mode .pricing-table .card-text {
    background: #232323 !important;
    color: #f5f5f5 !important;
    border-color: #333 !important;
}

/* Dark mode: ensure product images keep contrast */
body.dark-mode .product-card .card-img-top{ filter: brightness(0.95) contrast(1.02); }

/* Make choose-us readable in dark mode */
body.dark-mode .choose-us .info:last-child{
    background: transparent !important;
    color: var(--cream) !important;
}

/* Fix variable typo that broke hover color earlier */
.btn-order:hover, .btn-submit:hover, .btn-checkout:hover, .btn-map:hover, .quick-btn:hover {
    background: linear-gradient(135deg, var(--honey) 0%, var(--caramel) 100%);
    color: var(--deep-brown);
}

/* Ensure scroll buttons contrast in dark mode */
body.dark-mode .scroll-btn{ background: rgba(255,255,255,0.08); color: var(--cream); }

/* Fix dark mode text and card backgrounds for all major sections */
body.dark-mode {
    background: #181818 !important;
    color: #f5f5f5 !important;
}
body.dark-mode h1, body.dark-mode h2, body.dark-mode h3, body.dark-mode h4, body.dark-mode h5, body.dark-mode h6 {
    color: #ffd700 !important;
}
body.dark-mode p, body.dark-mode .card-text, body.dark-mode .section-post, body.dark-mode .faq-item, body.dark-mode .contact-section p, body.dark-mode .choose-us p, body.dark-mode .overview p, body.dark-mode .features p, body.dark-mode .list-group-item {
    color: #e0e0e0 !important;
}

/* All major cards and sections */
body.dark-mode .card,
body.dark-mode .card-body,
body.dark-mode .faq-item,
body.dark-mode .mission-card,
body.dark-mode .vision-card,
body.dark-mode .specialty-section,
body.dark-mode .founder-quote,
body.dark-mode .hours-section,
body.dark-mode .location-section,
body.dark-mode .delivery-zones,
body.dark-mode .map-section,
body.dark-mode .directions-section,
body.dark-mode .order-summary,
body.dark-mode .order-form,
body.dark-mode .category-card,
body.dark-mode .contact-card,
body.dark-mode .contact-form-container,
body.dark-mode .quick-contact-item,
body.dark-mode .team-member {
    background: #232323 !important;
    color: #f5f5f5 !important;
    border-color: #333 !important;
    box-shadow: none !important;
}

/* Section backgrounds for homepage and all pages */
body.dark-mode .overview,
body.dark-mode .features,
body.dark-mode .pricing-table,
body.dark-mode .choose-us,
body.dark-mode .stats,
body.dark-mode .contact-section,
body.dark-mode .page-header,
body.dark-mode .order-categories,
body.dark-mode .hours-location-content,
body.dark-mode .directions-section,
body.dark-mode .contact-info-section,
body.dark-mode .contact-forms-section,
body.dark-mode .faq-section,
body.dark-mode .about-story,
body.dark-mode .mission-vision,
body.dark-mode .our-values,
body.dark-mode .our-specialties,
body.dark-mode .team-section,
body.dark-mode .footer,
body.dark-mode .copyright {
    background: #232323 !important;
    color: #f5f5f5 !important;
}

/* Fix dark mode for map section */
body.dark-mode .map-section {
    background: #232323 !important;
    color: #f5f5f5 !important;
}
body.dark-mode .map-content {
    background: #232323 !important;
    color: #f5f5f5 !important;
}

/* Fix dark mode for delivery zones */
body.dark-mode .delivery-zones {
    background: #232323 !important;
    color: #f5f5f5 !important;
}

/* Fix dark mode for directions section */
body.dark-mode .directions-section {
    background: #232323 !important;
    color: #f5f5f5 !important;
}
body.dark-mode .directions-list li {
    color: #e0e0e0 !important;
}

/* Fix dark mode for hours and location cards */
body.dark-mode .hours-section,
body.dark-mode .location-section {
    background: #232323 !important;
    color: #f5f5f5 !important;
}
body.dark-mode .address-card {
    background: #232323 !important;
    color: #f5f5f5 !important;
}

/* Fix dark mode for mission, vision, specialties, and founder quote */
body.dark-mode .mission-card,
body.dark-mode .vision-card,
body.dark-mode .specialty-section,
body.dark-mode .founder-quote {
    background: #232323 !important;
    color: #f5f5f5 !important;
}

/* Fix dark mode for FAQ cards */
body.dark-mode .faq-item {
    background: #232323 !important;
    color: #f5f5f5 !important;
}

/* Fix dark mode for quick contact cards */
body.dark-mode .quick-contact-item {
    background: #232323 !important;
    color: #f5f5f5 !important;
}

/* Fix dark mode for team member cards */
body.dark-mode .team-member {
    background: #232323 !important;
    color: #f5f5f5 !important;
}

/* Fix dark mode for order summary and form */
body.dark-mode .order-summary,
body.dark-mode .order-form {
    background: #232323 !important;
    color: #f5f5f5 !important;
}

/* Fix dark mode for category cards */
body.dark-mode .category-card {
    background: #232323 !important;
    color: #f5f5f5 !important;
}

/* Fix dark mode for contact cards and forms */
body.dark-mode .contact-card,
body.dark-mode .contact-form-container {
    background: #232323 !important;
    color: #f5f5f5 !important;
}

/* Fix dark mode for all list items */
body.dark-mode li {
    color: #e0e0e0 !important;
}

/* Dark mode support for food catering sections and images */
body.dark-mode .food-catering-section {
    background: #232323 !important;
    color: #f5f5f5 !important;
}
body.dark-mode .food-catering-section h2,
body.dark-mode .food-catering-section h4 {
    color: #ffd700 !important;
}
body.dark-mode .food-catering-section p {
    color: #e0e0e0 !important;
}
body.dark-mode .food-catering-section .btn-order {
    background: linear-gradient(135deg, #ff7043 0%, #ffd54f 100%) !important;
    color: #181818 !important;
    border: 2px solid #ffd54f !important;
}
body.dark-mode .food-catering-section .btn-order:hover {
    background: linear-gradient(135deg, #ffd54f 0%, #ff7043 100%) !important;
    color: #181818 !important;
}
body.dark-mode .food-catering-section .catering-img {
    box-shadow: 0 4px 16px rgba(0,0,0,0.7) !important;
    border: 2px solid #333 !important;
}