/* =============================================== */
/* Global Footer Standardization - P4.2           */
/* =============================================== */

/* Main footer container */
.site-footer {
    background-color: #000000 !important; /* Black background - FORCED TO OVERRIDE COMMONWEALTH THEME */
    color: #ffffff !important; /* White text for readability */
    padding: 4rem 2rem 2rem 2rem; /* Generous padding */
    position: relative;
    border-top: 1px solid #1a1a1a; /* Subtle dark border */
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
}

/* Ensure footer links have a consistent color */
.site-footer a {
    color: #d4af37; /* Dali gold for links */
    text-decoration: none;
    transition: color 0.3s ease;
}

.site-footer a:hover {
    color: #ffffff; /* White on hover */
}

/* Style the logo area in the footer */
.site-footer .footer-logo img {
    max-width: 150px; /* Adjust size as needed */
    height: auto;
}

/* Override Tailwind defaults for footer */
.site-footer .container {
    max-width: 1200px;
    margin: 0 auto;
    padding-left: 1rem;
    padding-right: 1rem;
}

/* Footer grid columns */
.site-footer .footer-grid {
    display: grid;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    gap: 2rem;
    margin-bottom: 3rem;
}

@media (min-width: 768px) {
    .site-footer .footer-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
}

/* Footer column styling */
.site-footer .footer-column h4 {
    font-size: 1.125rem;
    margin-bottom: 1rem;
    color: #d4af37; /* Dali gold */
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.site-footer .footer-column ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.site-footer .footer-column ul li {
    margin-bottom: 0.5rem;
}

/* Footer bottom section */
.site-footer .footer-bottom {
    border-top: 1px solid #333; /* Darker border for black background */
    padding-top: 2rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}

@media (min-width: 768px) {
    .site-footer .footer-bottom {
        flex-direction: row;
        justify-content: space-between;
        text-align: left;
    }
}

.site-footer .footer-bottom p {
    color: #999; /* Light gray for copyright text */
    font-size: 0.875rem;
    margin: 0;
}

.site-footer .footer-bottom-links {
    display: flex;
    gap: 1.5rem;
    margin-top: 1rem;
}

@media (min-width: 768px) {
    .site-footer .footer-bottom-links {
        margin-top: 0;
    }
}

.site-footer .footer-bottom-links a {
    color: #999; /* Light gray for bottom links */
    font-size: 0.875rem;
}

.site-footer .footer-bottom-links a:hover {
    color: #d4af37; /* Dali gold on hover */
}

/* Social icons */
.site-footer .social-icons {
    display: flex;
    gap: 1rem;
}

.site-footer .social-icons a {
    color: #d4af37; /* Dali gold for social icons */
    font-size: 1.5rem;
}

.site-footer .social-icons a:hover {
    color: #ffffff; /* White on hover */
}

/* Footer description text */
.site-footer .footer-description {
    font-size: 0.875rem;
    color: #ffffff !important; /* Force white text */
    font-style: italic;
    line-height: 1.6;
    margin-top: 1rem;
}

/* =============================================== */
/* Global Button Standardization                  */
/* =============================================== */

/* Primary button style - Dali burgundy */
.btn-primary,
button[type="submit"],
a.btn-primary,
.bg-dali-burgundy,
.bg-dali-gold {
    background-color: #5D0002 !important; /* Dark burgundy */
    color: #ffffff !important; /* White text */
    border: none;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
    font-weight: 500;
    letter-spacing: 0.05em;
    transition: all 0.3s ease;
}

.btn-primary:hover,
button[type="submit"]:hover,
a.btn-primary:hover,
.bg-dali-burgundy:hover,
.bg-dali-gold:hover {
    background-color: #7D0003 !important; /* Lighter burgundy on hover */
    color: #ffffff !important;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(93, 0, 2, 0.4);
}

/* Secondary button style - outlined burgundy */
.btn-secondary {
    background-color: transparent !important;
    color: #5D0002 !important;
    border: 2px solid #5D0002 !important;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
    font-weight: 500;
    letter-spacing: 0.05em;
    transition: all 0.3s ease;
}

.btn-secondary:hover {
    background-color: #5D0002 !important;
    color: #ffffff !important;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(93, 0, 2, 0.4);
}

/* ============================================= */
/* == FINAL FOOTER BRANDING OVERRIDES == */
/* ============================================= */

/*
  1. Set footer headings (EXPLORE, VISIT US, HOURS)
     to a brighter, more vibrant Dali Red.
*/
.site-footer h4 {
  color: #A62629;
}

/*
  2. Set all icons (contact and social)
     to the core Dali Burgundy color. The !important
     tag ensures this rule will always win.
*/
.site-footer i {
  color: #5D0002 !important;
}

/*
  3. Change all navigation and policy text links
     from the old red color to a clean white.
*/
.site-footer ul a,
.site-footer .border-t a {
  color: #FFFFFF;
}

/*
  4. Define a consistent hover effect for the new
     white links, making them turn Dali Gold.
*/
.site-footer ul a:hover,
.site-footer .border-t a:hover {
  color: #D4AF37;
}

/* ============================================= */
/* == FINAL FOOTER TEXT COLOR CORRECTION == */
/* ============================================= */

/*
  Per user instruction, this rule changes ALL footer
  link text (e.g., Menu, The Chef, Contact, Privacy Policy) 
  to a clean white color. The !important flag ensures 
  this style takes absolute priority.
*/
.site-footer a {
  color: #FFFFFF !important;
}

/*
  This rule maintains the desired hover effect,
  turning the links to the signature Dali Gold when
  the user hovers over them.
*/
.site-footer a:hover {
  color: #D4AF37 !important;
}

/* ============================================= */
/* == CHEF'S CANVAS QUOTE FOOTER HOTFIX == */
/* ============================================= */

/*
  This rule corrects a style bleed on the Chef's
  Canvas page. It specifically targets any <footer>
  element that is NOT the main site footer and
  sets its background to transparent. This fixes
  the black boxes appearing on quote signatures.
*/
footer:not(.site-footer) {
  background-color: transparent !important;
}

/* ============================================= */
/* == RED BOOK CLUB HOVER EFFECT OVERRIDE == */
/* ============================================= */

/*
  This rule specifically targets the three process cards
  on the Red Book page. On hover, it overrides the
  default gold neon border and glow, replacing it
  with a vibrant, bright red effect.
*/
.red-book-process .neon-border:hover {
  border-color: #A62629;
  box-shadow: 0 0 5px rgba(166, 38, 41, 0.6),
              0 0 10px rgba(166, 38, 41, 0.5),
              0 0 20px rgba(166, 38, 41, 0.4);
}

/* ============================================= */
/* == GLOBAL BRANDING & HOTFIX (FINAL) == */
/* ============================================= */

/*
  1. GLOBAL HOVER EFFECT:
     This rule makes the bright red neon glow the new
     default hover effect for all elements with the
     .neon-border class across the entire site.
*/
.neon-border:hover {
  border-color: #A62629;
  box-shadow: 0 0 5px rgba(166, 38, 41, 0.6),
              0 0 10px rgba(166, 38, 41, 0.5),
              0 0 20px rgba(166, 38, 41, 0.4);
}

/*
  2. CHEF'S CANVAS HOTFIX:
     This rule specifically targets the <footer> elements
     used for quote signatures within <blockquote> blocks
     on the Chef's Canvas page. It forces their background
     to be transparent, fixing the black box bug permanently.
*/
blockquote footer {
  background-color: transparent !important;
}

/* ============================================= */
/* == AUTHORITATIVE OVERRIDE & HOTFIX (FINAL) == */
/* ============================================= */

/*
  1. FINAL GLOBAL HOVER EFFECT:
     This is the authoritative rule for all neon hover
     effects. The !important declaration ensures this
     bright red glow will override ANY other existing
     hover style on ANY .neon-border element, site-wide.
*/
.neon-border:hover {
  border-color: #A62629 !important;
  box-shadow: 0 0 5px rgba(166, 38, 41, 0.6),
              0 0 10px rgba(166, 38, 41, 0.5),
              0 0 20px rgba(166, 38, 41, 0.4) !important;
}

/*
  2. FINAL CHEF'S CANVAS QUOTE FIX:
     This rule targets both the quote container (blockquote)
     and its footer. It forces their backgrounds to be
     transparent, ensuring the black box bug is
     eliminated permanently.
*/
blockquote,
blockquote footer {
  background: none !important;
  background-color: transparent !important;
}

/* ======================================================= */
/* == CHEF'S CANVAS - CORRECTED HOVER EFFECT (FAQ) == */
/* ======================================================= */

/*
  Based on forensic analysis, this rule targets the
  FAQ accordion items (.morph-card.glass) on the
  Chef's Canvas page. It applies the signature Dali Red
  glow on hover, replacing the default effect.
*/
.morph-card.glass:hover {
  border-color: #A62629 !important;
  box-shadow: 0 0 5px rgba(166, 38, 41, 0.6),
              0 0 10px rgba(166, 38, 41, 0.5),
              0 0 20px rgba(166, 38, 41, 0.4) !important;
}

/* ============================================= */
/* == CHATBOT STACKING CONTEXT HOTFIX (FINAL) == */
/* ============================================= */

/*
  This is the authoritative rule to fix the chatbot
  positioning after the HTML has been restructured.
  By placing the chatbot outside the new #page-wrapper,
  this rule can now correctly fix it to the viewport.
*/
#dali-chatbot-trigger {
  position: fixed !important;
  right: 2rem !important;
  bottom: 2rem !important;
  z-index: 9999 !important;
}

/* ======================================================= */
/* == CHEF'S CANVAS - STACKING CONTEXT DEFINITIVE FIX == */
/* ======================================================= */

/*
  This is the final, authoritative fix for the chatbot issue.
  The animation engine applies a 'transform' to the body,
  creating a stacking context that traps fixed-position elements.

  1. We remove the transform from the body ONLY on this page.
  2. We re-apply a default transform to the #page-wrapper
     to ensure page animations continue to work correctly.
  3. This frees the chatbot to be fixed to the viewport.
*/

body#chefs-canvas-page {
  transform: none !important;
  perspective: none !important;
}

body#chefs-canvas-page > #page-wrapper {
  transform: translate3d(0, 0, 0); /* Re-establishes a context for animations inside the wrapper */
}
