:root{--cream:#f8f0df;--paper:#fffaf1;--tomato:#a63a2b;--tomato-dark:#7f281f;--olive:#596b3d;--ink:#2c241d;--gold:#c69a5b;--muted:#6c6258}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}h1,h2,h3,h4,.brand-mark{font-family:Georgia,"Times New Roman",serif}a{color:var(--tomato)}.bella-nav{background:rgba(255,250,241,.95);backdrop-filter:blur(14px);border-bottom:1px solid rgba(44,36,29,.08)}.brand-mark{color:var(--tomato)!important;letter-spacing:.3px;font-size:1.6rem}.nav-link{color:var(--ink)!important;font-weight:600;border-radius:999px;padding-inline:.85rem!important}.nav-link:hover,.nav-link.active{color:var(--tomato)!important;background:rgba(166,58,43,.07)}.bella-btn{background:var(--tomato);border:1px solid var(--tomato);color:#fff;border-radius:999px;font-weight:700;transition:.2s ease}.bella-btn:hover{background:var(--tomato-dark);border-color:var(--tomato-dark);color:#fff;transform:translateY(-1px)}.hero-section{min-height:720px;background:url('https://images.unsplash.com/photo-1555396273-367ea4eb4db5?auto=format&fit=crop&w=1800&q=82') center/cover no-repeat}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(29,20,14,.9),rgba(29,20,14,.62),rgba(29,20,14,.25))}.hero-content{z-index:2}.min-vh-75{min-height:75vh}.eyebrow{display:inline-block;text-transform:uppercase;letter-spacing:.16em;font-size:.78rem;font-weight:800;color:#f8dfb0}.eyebrow.dark{color:var(--tomato)}.hero-copy{max-width:720px;color:rgba(255,255,255,.88)}.hero-card{background:rgba(255,250,241,.94);border:1px solid rgba(255,255,255,.4);padding:2rem;border-radius:28px;color:var(--ink)}.section-soft{background:var(--cream)}.section-heading span{color:var(--tomato);text-transform:uppercase;letter-spacing:.14em;font-size:.78rem;font-weight:800}.section-heading h2{font-size:clamp(2rem,4vw,3.2rem);margin:.35rem 0 .75rem}.section-heading p{max-width:720px;margin-inline:auto;color:var(--muted)}.dish-card,.story-card{background:#fff;border-radius:24px;overflow:hidden;box-shadow:0 12px 35px rgba(73,46,27,.08);transition:.25s ease;border:1px solid rgba(44,36,29,.06)}.dish-card:hover,.story-card:hover{transform:translateY(-6px);box-shadow:0 18px 42px rgba(73,46,27,.14)}.dish-card img,.story-media img{width:100%;height:250px;object-fit:cover;display:block}.dish-image-link{display:block;overflow:hidden}.dish-image-link img{transition:transform .35s ease}.dish-card:hover .dish-image-link img{transform:scale(1.035)}.dish-category{color:var(--olive);font-size:.8rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.dish-title-link{text-decoration:none;color:var(--ink)}.dish-title-link:hover{color:var(--tomato)}.price,.detail-price{color:var(--tomato);white-space:nowrap}.detail-price{font-size:1.7rem;font-weight:800}.text-link{color:var(--tomato);font-weight:800;text-decoration:none}.text-link:hover{text-decoration:underline}.story-media{position:relative}.story-chip{position:absolute;left:14px;top:14px;background:rgba(255,250,241,.95);padding:.35rem .65rem;border-radius:999px;font-size:.76rem;font-weight:800}.max-copy{max-width:520px}.about-section{background:#fff}.about-photo-wrap{padding:14px;border:1px solid rgba(166,58,43,.22);border-radius:32px}.about-photo{width:100%;height:520px;object-fit:cover;border-radius:22px}.cta-panel{color:#fff;border-radius:32px;background:linear-gradient(135deg,var(--olive),#344425);box-shadow:0 16px 45px rgba(52,68,37,.23)}.page-hero{min-height:330px;display:flex;align-items:center;background-position:center;background-size:cover;position:relative}.page-hero>.container{position:relative;z-index:2}.page-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(31,22,15,.85),rgba(31,22,15,.45))}.menu-hero{background-image:url('https://images.unsplash.com/photo-1473093295043-cdd812d0e601?auto=format&fit=crop&w=1800&q=80')}.about-hero{background-image:url('https://images.unsplash.com/photo-1414235077428-338989a2e8c0?auto=format&fit=crop&w=1800&q=80')}.offers-hero{background-image:url('https://images.unsplash.com/photo-1555396273-367ea4eb4db5?auto=format&fit=crop&w=1800&q=80')}.contact-hero{background-image:url('https://images.unsplash.com/photo-1517248135467-4c7edcad34c4?auto=format&fit=crop&w=1800&q=80')}.filter-panel,.contact-card{background:#fff;border:1px solid rgba(44,36,29,.08);border-radius:26px;padding:1.5rem;box-shadow:0 12px 35px rgba(73,46,27,.07)}.form-control,.form-select{border-radius:14px;border-color:#ddd0c0;padding:.75rem 1rem}.form-control:focus,.form-select:focus{border-color:rgba(166,58,43,.55);box-shadow:0 0 0 .2rem rgba(166,58,43,.12)}.empty-state{background:#fff;border:1px dashed #d8c7b3;border-radius:24px;padding:4rem 1rem}.dish-detail-image{padding:12px;border:1px solid rgba(166,58,43,.18);border-radius:32px;background:#fff}.dish-detail-image img{width:100%;height:560px;object-fit:cover;border-radius:23px}.ingredient-box{background:var(--cream);border-radius:18px;padding:1.25rem}.value-card,.stat-card,.offer-card{background:#fff;border:1px solid rgba(44,36,29,.07);border-radius:24px;padding:1.75rem;box-shadow:0 12px 30px rgba(73,46,27,.06)}.value-number{font-size:2.4rem;font-family:Georgia,serif;color:rgba(166,58,43,.28);font-weight:700}.stat-card strong{display:block;color:var(--tomato);font-family:Georgia,serif;font-size:2.3rem}.stat-card span{color:var(--muted);font-weight:700}.offer-card{position:relative;padding-top:4.4rem}.offer-badge{position:absolute;left:1.75rem;top:1.5rem;background:var(--olive);color:#fff;border-radius:999px;padding:.4rem .8rem;font-size:.76rem;font-weight:800;letter-spacing:.08em}.offer-code{display:flex;align-items:center;justify-content:space-between;gap:1rem;background:var(--cream);border:1px dashed #cbb697;border-radius:14px;padding:.8rem 1rem}.offer-code span{font-size:.78rem;color:var(--muted);text-transform:uppercase;font-weight:800}.offer-code strong{color:var(--tomato)}.contact-info{display:grid;gap:1rem}.contact-info div{background:#fff;border-left:4px solid var(--tomato);padding:1rem 1.2rem;border-radius:0 14px 14px 0}.contact-info strong,.contact-info span{display:block}.contact-info span{margin-top:.25rem;color:var(--muted)}.site-footer{background:#211a15;color:#e9ddce}.site-footer .brand-mark{color:#f2c786!important}.footer-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem 1rem}.footer-links a{color:#e9ddce;text-decoration:none}.footer-links a:hover{color:#f2c786}.breadcrumb a{text-decoration:none}.spinner-border.text-danger{color:var(--tomato)!important}@media(max-width:991.98px){.hero-section{min-height:650px}.hero-overlay{background:rgba(29,20,14,.72)}.about-photo,.dish-detail-image img{height:400px}.page-hero{min-height:280px}}@media(max-width:575.98px){.hero-section{min-height:600px}.dish-card img,.story-media img{height:220px}.about-photo,.dish-detail-image img{height:320px}.filter-panel,.contact-card{padding:1.1rem}}
.social-hero{background-image:url('https://images.unsplash.com/photo-1498579397066-22750a3cb424?auto=format&fit=crop&w=1800&q=80')}.reels-hero{background-image:url('https://images.unsplash.com/photo-1550966871-3ed3cdb5ed0c?auto=format&fit=crop&w=1800&q=80')}.social-card{background:#fff;border:1px solid rgba(44,36,29,.07);border-radius:26px;overflow:hidden;box-shadow:0 12px 32px rgba(73,46,27,.08);transition:.25s ease}.social-card:hover{transform:translateY(-5px);box-shadow:0 18px 42px rgba(73,46,27,.13)}.social-media-wrap{display:block;position:relative;overflow:hidden;background:#eee}.social-media-wrap img{width:100%;aspect-ratio:1/1;object-fit:cover;display:block;transition:transform .35s ease}.social-card:hover .social-media-wrap img{transform:scale(1.025)}.carousel-pill{position:absolute;right:14px;top:14px;background:rgba(33,26,21,.78);color:#fff;border-radius:999px;padding:.35rem .65rem;font-size:.74rem;font-weight:800}.brand-mini{font-family:Georgia,serif;color:var(--tomato)}.social-caption{min-height:3rem}.social-tag{display:inline-block;color:var(--olive);font-size:.84rem;font-weight:800;margin-right:.22rem}.social-meta,.social-detail-stats{color:var(--muted);font-size:.9rem}.btn-like{border:0;background:transparent;color:var(--ink);padding:0;font-weight:800}.btn-like:hover,.btn-like.liked{color:var(--tomato)}.btn-like.large{font-size:1rem}.post-detail-media{background:#1e1814;border-radius:30px;overflow:hidden;box-shadow:0 18px 45px rgba(44,36,29,.18)}.post-detail-media img{width:100%;height:min(72vh,760px);object-fit:cover;display:block}.social-detail-card{background:#fff;border-radius:28px;padding:2rem;border:1px solid rgba(44,36,29,.07);box-shadow:0 12px 35px rgba(73,46,27,.08);position:sticky;top:110px}.social-detail-stats{display:flex;align-items:center;gap:1.5rem;font-weight:700}.reels-section{background:linear-gradient(180deg,#f7efe1,#fffaf1)}.reels-feed{display:grid;gap:2.25rem;max-width:1000px;margin:0 auto}.reel-card{display:grid;grid-template-columns:minmax(280px,430px) 1fr;background:#fff;border-radius:30px;overflow:hidden;border:1px solid rgba(44,36,29,.07);box-shadow:0 14px 38px rgba(73,46,27,.09)}.reel-video-shell{background:#181412;min-height:560px;display:flex;align-items:center}.reel-video-shell video{width:100%;max-height:680px;background:#181412}.reel-copy{padding:2.25rem;align-self:center}.reel-copy h2{font-size:2rem;margin:.4rem 0 1rem}.admin-shell{min-height:100vh;background:#f6efe5}.admin-card{background:#fff;border:1px solid rgba(44,36,29,.08);border-radius:22px;box-shadow:0 10px 30px rgba(73,46,27,.07)}.admin-thumb{width:76px;height:76px;object-fit:cover;border-radius:14px;background:#eee}.admin-video-thumb{width:76px;height:76px;object-fit:cover;border-radius:14px;background:#211a15}@media(max-width:767.98px){.reel-card{grid-template-columns:1fr}.reel-video-shell{min-height:420px}.social-detail-card{position:static}.post-detail-media img{height:auto;aspect-ratio:1/1}.social-caption{min-height:0}}
.admin-sidebar{background:#2a211b;min-height:calc(100vh - 70px);border-right:1px solid rgba(44,36,29,.08)}.admin-nav-link{display:block;color:#e8ddd1;text-decoration:none;padding:.72rem .9rem;border-radius:12px;font-weight:700}.admin-nav-link:hover,.admin-nav-link.active{background:#fff3;color:#fff}.admin-preview{width:100%;max-height:210px;object-fit:cover;border-radius:16px;border:1px solid #eadfce}.admin-card .table{margin-bottom:0}.admin-card code{color:var(--tomato)}@media(max-width:991.98px){.admin-sidebar{min-height:auto;background:#2a211b}.admin-nav-link{padding:.55rem .7rem;font-size:.9rem}}

/* Phase 5: accessibility + performance-safe interaction polish */
.skip-link{position:fixed;left:1rem;top:-5rem;z-index:2000;background:#fff;color:var(--tomato);padding:.75rem 1rem;border-radius:12px;box-shadow:0 8px 24px #0002;font-weight:800;text-decoration:none}.skip-link:focus{top:1rem}.btn:focus-visible,.nav-link:focus-visible,a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(198,154,91,.72);outline-offset:3px}.content-visibility-auto{content-visibility:auto;contain-intrinsic-size:1px 800px}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}.dish-card:hover,.story-card:hover,.social-card:hover,.bella-btn:hover{transform:none}.dish-card:hover .dish-image-link img,.social-card:hover .social-media-wrap img{transform:none}}

/* Bootstrap + Tailwind compatibility: Tailwind's `.collapse` utility can set
   visibility: collapse on Bootstrap's responsive navbar container. Bootstrap
   controls navbar expansion with display, so keep visibility available here. */
.bella-nav .navbar-collapse,
.bella-nav .navbar-collapse.collapse,
.bella-nav .navbar-collapse.collapsing,
.bella-nav .navbar-collapse.show {
  visibility: visible !important;
}

/* Keep every desktop navigation item visible and aligned. */
@media (min-width: 992px) {
  .bella-nav .navbar-collapse {
    display: flex !important;
  }
  .bella-nav .navbar-nav {
    display: flex !important;
    visibility: visible !important;
  }
}


/* Navbar hardening: Bella Tavola now uses its own menu container instead of
   Bootstrap's `.collapse`, so Tailwind's `.collapse` utility can never hide
   page titles on the home page or any other route. */
.bella-navbar-menu{display:flex;align-items:center;margin-left:auto;visibility:visible!important}
@media(min-width:1200px){.bella-navbar-menu{display:flex!important}.bella-navbar-menu .navbar-nav{display:flex!important;visibility:visible!important;align-items:center}.bella-nav .navbar-toggler{display:none!important}.bella-navbar-menu .nav-link{font-size:.94rem;padding-inline:.68rem!important}}
@media(max-width:1199.98px){.bella-nav .navbar-toggler{display:block!important}.bella-navbar-menu{display:none;width:100%;margin-left:0;padding-top:.8rem}.bella-navbar-menu.is-open{display:block}.bella-navbar-menu .navbar-nav{align-items:stretch!important;gap:.2rem}.bella-navbar-menu .nav-link{padding:.72rem .9rem!important}.bella-navbar-menu .bella-btn{display:inline-flex;margin:.55rem .9rem .3rem}.bella-nav .container{align-items:center}}

/* Updated Kitchen Journal / blog */
.blog-hero{background-image:url('https://images.unsplash.com/photo-1414235077428-338989a2e8c0?auto=format&fit=crop&w=1800&q=82')}
.blog-filter{background:#fff;border:1px solid rgba(44,36,29,.08);border-radius:26px;padding:1.4rem;box-shadow:0 12px 35px rgba(73,46,27,.07)}
.blog-feature{background:#fff;border:1px solid rgba(44,36,29,.07);border-radius:30px;overflow:hidden;box-shadow:0 16px 42px rgba(73,46,27,.1)}
.blog-feature img{width:100%;height:100%;min-height:460px;object-fit:cover;display:block}.blog-feature-copy{padding:clamp(2rem,5vw,4rem);display:flex;flex-direction:column;justify-content:center}
.blog-card{background:#fff;border:1px solid rgba(44,36,29,.07);border-radius:24px;overflow:hidden;box-shadow:0 12px 32px rgba(73,46,27,.07);transition:.25s ease}.blog-card:hover{transform:translateY(-5px);box-shadow:0 18px 42px rgba(73,46,27,.12)}.blog-card-media{display:block;overflow:hidden}.blog-card-media img{width:100%;height:250px;object-fit:cover;display:block;transition:transform .35s ease}.blog-card:hover .blog-card-media img{transform:scale(1.035)}.blog-card h3 a{color:var(--ink);text-decoration:none}.blog-card h3 a:hover{color:var(--tomato)}.blog-kicker{text-transform:uppercase;letter-spacing:.08em;color:var(--olive);font-size:.76rem;font-weight:800}.blog-article-header{background:linear-gradient(180deg,var(--cream),var(--paper))}.blog-article-intro{max-width:900px;text-align:center}.blog-article-image{max-width:1120px;border-radius:32px;overflow:hidden;box-shadow:0 18px 48px rgba(73,46,27,.14)}.blog-article-image img{width:100%;max-height:680px;object-fit:cover;display:block}.blog-author-row{display:flex;justify-content:center;gap:.7rem;flex-wrap:wrap;color:var(--muted);font-weight:700}.blog-article-body{max-width:780px;font-family:Georgia,'Times New Roman',serif;font-size:1.18rem;line-height:1.9;color:#3b3028}.blog-article-body br+br{display:block;content:'';margin-top:1rem}
@media(max-width:991.98px){.blog-feature img{min-height:340px}.blog-feature-copy{padding:2rem}}@media(max-width:575.98px){.blog-filter{padding:1rem}.blog-card-media img{height:220px}.blog-article-body{font-size:1.08rem}}
