:root{--bj-yellow:#f5c400;--bj-yellow-dark:#dcae00;--bj-text:#222;--bj-border:#e7e7e4;--bj-container:1180px}*{box-sizing:border-box}html,body{margin:0;padding:0;width:100%;min-height:100%;font-family:Arial,Helvetica,sans-serif;color:var(--bj-text);background:#fff}body{overflow-x:hidden}.bj-page{width:100%}.bj-header{width:100%;background:#fff;border-bottom:1px solid #eee}.bj-header-inner{width:calc(100% - 40px);max-width:var(--bj-container);min-height:118px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:35px;padding:18px 0}.bj-brand{flex:0 0 auto;min-width:250px}.bj-brand img{display:block;width:250px;max-width:100%;height:auto}.bj-header-tools{width:440px;max-width:100%;display:flex;flex-direction:column;align-items:flex-end}.bj-top-links{width:100%;margin-bottom:7px;text-align:right;color:#888;font-size:11px}.bj-top-links a{color:#666;text-decoration:none}.bj-top-links a:hover{color:#000}.bj-top-links span{margin:0 8px;color:#ddd}.bj-search-form{width:100%;margin:0}.bj-search{height:40px;display:flex;border:1px solid #ddd;border-radius:8px;overflow:hidden;background:#fff}.bj-search:focus-within{border-color:var(--bj-yellow-dark);box-shadow:0 0 0 3px rgba(245,196,0,.14)}.bj-search input{flex:1;min-width:0;border:0;outline:0;padding:0 14px;font-size:13px}.bj-search button{flex:0 0 46px;border:0;background:var(--bj-yellow);color:#111;font-size:21px;font-weight:bold;cursor:pointer}.bj-search button:hover{background:var(--bj-yellow-dark)}.bj-header-meta{width:100%;margin-top:10px;display:flex;align-items:center;justify-content:flex-end;gap:13px}.bj-hours{white-space:nowrap;color:#666;font-size:11px}.bj-hours strong{color:#222;margin-right:4px}.bj-social{display:flex;align-items:center}.bj-nav-wrapper{width:100%;background:#fff;padding:12px 0 14px}.bj-nav{width:calc(100% - 40px);max-width:var(--bj-container);margin:auto;position:relative;z-index:9999}.bj-nav .container{width:100%;margin:0;padding:0}.bj-nav ul{display:flex;width:100%;gap:8px;margin:0;padding:0;list-style:none}.bj-nav ul li{position:relative;flex:1 1 0;min-width:0;margin:0;padding:0}.bj-nav ul li>a{position:relative;display:flex;align-items:center;justify-content:center;min-height:46px;width:100%;padding:0 10px;border-radius:8px;color:#fff;text-align:center;text-decoration:none;font-size:13px;font-weight:700;letter-spacing:.25px;text-transform:uppercase;box-shadow:0 3px 8px rgba(0,0,0,.12);transition:.2s}.bj-nav ul li>a:after{content:"";position:absolute;left:50%;bottom:7px;width:0;height:2px;background:#fff;transform:translateX(-50%);transition:.2s}.bj-nav ul li>a:hover:after,.bj-nav ul li.active>a:after{width:45%}.bj-nav ul li>a:hover{transform:translateY(-2px);box-shadow:0 7px 14px rgba(0,0,0,.18);filter:brightness(1.06)}.bj-nav ul li.active>a{box-shadow:0 6px 13px rgba(0,0,0,.2),inset 0 -3px rgba(255,255,255,.32)}.menu-home{background:#dcae00}.menu-category{background:#c90d36}.menu-promo{background:#13853a}.menu-directory{background:#ef5b08}.menu-article{background:#0878bd}.bj-nav .sub{position:absolute;top:calc(100% + 7px);left:0;width:230px;margin:0;padding:6px;background:#fff;border:1px solid #e6e6e6;border-radius:9px;box-shadow:0 18px 35px rgba(0,0,0,.18);opacity:0;visibility:hidden;transform:translateY(7px);transition:.18s}.bj-nav li.has-sub:hover>.sub,.bj-nav li.on>.sub{opacity:1;visibility:visible;transform:translateY(0)}.bj-nav .sub table{position:relative;z-index:2;width:100%;border-collapse:collapse}.bj-nav .sub td{border:0!important}.bj-nav .sub tr+tr td{border-top:1px solid #eee!important}.bj-nav .sub .mainmenu,.bj-nav .sub .mainmenu2{display:block;width:100%;padding:10px 12px;color:#444;background:#fff;font-size:12px;font-weight:600;line-height:17px;text-align:left;cursor:pointer}.bj-nav .sub .mainmenu:hover,.bj-nav .sub .mainmenu2:hover{background:#fff8d9;color:#8d7100;padding-left:17px}.main-content{width:100%;max-width:var(--bj-container);margin:0 auto;padding:0;border-collapse:collapse}.main-content>tbody>tr>td{vertical-align:top}.bj-footer{width:100%;margin-top:45px;background:#fafaf8}.bj-footer-accent{width:100%;height:5px;background:var(--bj-yellow)}.bj-footer-main{width:calc(100% - 40px);max-width:var(--bj-container);margin:auto;padding:38px 0 34px}.bj-footer-brand{text-align:center;padding-bottom:30px}.bj-footer-logo{display:block;width:220px;max-width:100%;height:auto;margin:0 auto 13px}.bj-footer-hours{display:flex;justify-content:center;gap:9px;color:#777;font-size:11px}.bj-footer-hours strong{color:#333}.bj-footer-social{margin-top:16px;display:flex;justify-content:center;flex-wrap:wrap;gap:8px}.bj-social-item{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;background:#fff;border:1px solid #e5e5e1;transition:.2s}.bj-social-item:hover{transform:translateY(-3px);border-color:#d7bd36;box-shadow:0 5px 12px rgba(0,0,0,.09)}.bj-social-item img{display:block;max-width:22px;max-height:22px;width:auto;height:auto}.bj-footer-grid{display:grid;grid-template-columns:1.05fr .7fr 1.35fr;gap:38px;border-top:1px solid var(--bj-border);padding-top:30px}.bj-footer-column{min-width:0}.bj-footer-column h3{margin:0 0 16px;color:#333;font-size:14px;text-transform:uppercase;letter-spacing:.6px}.bj-footer-column h3:after{content:"";display:block;width:28px;height:3px;margin-top:7px;background:var(--bj-yellow)}.bj-footer-directory-list{display:grid;grid-template-columns:1fr 1fr;gap:8px 18px}.bj-footer-directory-list a,.bj-footer-menu>a{display:block;color:#6d6d6d;font-size:12px;line-height:18px;text-decoration:none;transition:.2s}.bj-footer-directory-list a:hover,.bj-footer-menu>a:hover{color:#8d7100;padding-left:4px}.bj-footer-menu>a{margin-bottom:8px}.bj-footer-subheading{margin-top:22px!important}.bj-instagram-box{width:100%;min-height:250px;overflow:hidden;background:#fff;border:1px solid #e5e5e1;border-radius:8px}.bj-instagram-box iframe{display:block;width:100%!important;height:250px;min-height:250px;border:0!important}.bj-instagram-caption{padding-top:8px;color:#888;font-size:11px}.bj-footer-bottom{width:100%;border-top:1px solid var(--bj-border);background:#f3f3f0}.bj-footer-bottom-inner{width:calc(100% - 40px);max-width:var(--bj-container);min-height:58px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 0;color:#888;font-size:11px;line-height:18px}.bj-address{text-align:right}.bj-address span{margin:0 8px;color:#ccc}@media screen and (max-width:900px){.bj-header-inner{width:calc(100% - 30px);gap:20px}.bj-brand{min-width:210px}.bj-brand img{width:210px}.bj-header-tools{width:390px}.bj-nav{width:calc(100% - 30px)}.bj-footer-main,.bj-footer-bottom-inner,.main-content{width:calc(100% - 30px)}.bj-footer-grid{grid-template-columns:1fr 1fr}.bj-footer-grid>.bj-footer-column:last-child{grid-column:1/-1}}@media screen and (max-width:700px){.bj-header-inner{width:calc(100% - 24px);padding:15px 0 18px;display:block}.bj-brand{min-width:0}.bj-brand img{width:190px;margin:auto}.bj-header-tools{width:100%;margin-top:14px}.bj-top-links{text-align:center}.bj-header-meta{justify-content:center}.bj-hours{display:none}.bj-nav-wrapper{padding:8px 0 10px}.bj-nav{width:calc(100% - 16px)}.bj-nav ul{gap:4px}.bj-nav ul li>a{min-height:42px;padding:0 4px;border-radius:6px;font-size:10px;letter-spacing:0}.bj-nav .sub{width:205px}.main-content{width:100%}.bj-footer{margin-top:30px}.bj-footer-main{width:calc(100% - 24px);padding:30px 0 25px}.bj-footer-grid{display:block}.bj-footer-column{padding-bottom:28px}.bj-footer-directory-list{grid-template-columns:1fr 1fr}.bj-footer-bottom-inner{width:calc(100% - 24px);display:block;text-align:center;padding:15px 0}.bj-address{margin-top:5px;text-align:center}}@media screen and (max-width:420px){.bj-brand img{width:170px}.bj-nav ul{gap:3px}.bj-nav ul li>a{min-height:40px;font-size:9px;padding:0 2px}.bj-footer-directory-list{grid-template-columns:1fr}.bj-footer-hours{display:block;line-height:20px}}

/* =========================================================
   MOBILE V4.1 - FINAL OVERRIDE
   ========================================================= */
@media screen and (max-width:700px){

    .bj-header-inner{
        width:100%;
        padding:14px 12px 16px;
    }

    .bj-brand img{
        width:175px;
        max-width:75vw;
    }

    .bj-header-tools{
        width:100%;
        max-width:none;
    }

    .bj-search{
        height:42px;
        border-radius:9px;
    }

    /* Mobile menu: swipe horizontally instead of squeezing 5 buttons */
    .bj-nav-wrapper{
        padding:7px 0 9px;
        overflow:hidden;
    }

    .bj-nav{
        width:100%;
        max-width:none;
        padding:0 8px;
        overflow:hidden;
    }

    .bj-nav .container{
        width:100%;
        overflow:hidden;
    }

    .bj-nav ul{
        width:max-content;
        min-width:100%;
        display:flex;
        gap:7px;
        overflow-x:auto;
        overflow-y:hidden;
        padding:0 1px 4px;
        scroll-snap-type:x proximity;
        -webkit-overflow-scrolling:touch;
        scrollbar-width:none;
    }

    .bj-nav ul::-webkit-scrollbar{
        display:none;
    }

    .bj-nav ul li{
        flex:0 0 108px;
        width:108px;
        min-width:108px;
        scroll-snap-align:start;
    }

    .bj-nav ul li>a{
        min-height:42px;
        width:108px;
        padding:0 7px;
        border-radius:7px;
        font-size:10px;
        line-height:1.1;
        white-space:nowrap;
        box-shadow:0 2px 6px rgba(0,0,0,.12);
    }

    .bj-nav ul li>a:after{
        display:none;
    }

    /* Main legacy table can no longer force desktop width */
    table.main-content{
        width:100% !important;
        max-width:100% !important;
        min-width:0 !important;
        table-layout:auto !important;
        margin:0 !important;
    }

    table.main-content > tbody,
    table.main-content > tbody > tr,
    table.main-content > tbody > tr > td{
        width:100% !important;
        max-width:100% !important;
        min-width:0 !important;
    }

    table.main-content > tbody > tr > td{
        padding-left:0 !important;
        padding-right:0 !important;
    }

    /* Homepage */
    .bj-home{
        width:100% !important;
        max-width:100% !important;
        min-width:0 !important;
        overflow:hidden;
    }

    .bj-container{
        width:calc(100% - 24px) !important;
        max-width:none !important;
        min-width:0 !important;
        margin-left:auto !important;
        margin-right:auto !important;
    }

    .bj-hero,
    .bj-hero-inner{
        width:100% !important;
        max-width:100% !important;
        min-width:0 !important;
    }

    .bj-hero img{
        max-width:100% !important;
        height:auto !important;
    }

    .bj-quick-grid{
        width:100% !important;
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    }

    .bj-quick-card{
        min-width:0 !important;
        overflow:hidden;
    }

    .bj-promo-grid,
    .bj-event-grid{
        width:100% !important;
        grid-template-columns:1fr !important;
    }

    .bj-promo-card,
    .bj-event-card{
        width:100% !important;
        min-width:0 !important;
    }

    .bj-promo-image,
    .bj-event-image,
    .bj-promo-image img,
    .bj-event-image img{
        width:100% !important;
        max-width:100% !important;
    }

    .bj-directory-grid,
    .bj-article-grid{
        width:100% !important;
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    }

    .bj-directory-card,
    .bj-article-card{
        min-width:0 !important;
        max-width:100% !important;
    }

    .bj-directory-card img,
    .bj-article-card img{
        max-width:100% !important;
    }

    /* Footer */
    .bj-footer-main,
    .bj-footer-bottom-inner{
        width:calc(100% - 24px) !important;
        max-width:none !important;
        min-width:0 !important;
    }

    .bj-footer-column{
        min-width:0 !important;
        max-width:100%;
        overflow:hidden;
    }

    .bj-instagram-box,
    .bj-instagram-box iframe{
        width:100% !important;
        max-width:100% !important;
    }
}

@media screen and (max-width:380px){
    .bj-nav ul li,
    .bj-nav ul li>a{
        width:100px;
        min-width:100px;
        flex-basis:100px;
    }

    .bj-nav ul{
        gap:6px;
    }

    .bj-container{
        width:calc(100% - 18px) !important;
    }

    .bj-directory-grid,
    .bj-article-grid{
        gap:9px !important;
    }
}
