/* Orekonect mobile homepage � one coherent app layout. */
@media (max-width: 767px) {
  :root { --app-green:#0b6b3a; --app-deep:#074a28; --app-orange:#FF7000; --app-ink:#13251b; --app-muted:#6b7d72; --app-line:#e2ebe4; --app-bg:#f4f7f4; --app-card:#fff; }
  body.homepage { overflow-x:hidden; padding:0 0 calc(98px + env(safe-area-inset-bottom)); background:var(--app-bg); color:var(--app-ink); font-family:'Poppins',system-ui,sans-serif; }
  body.homepage > .site-header, body.homepage > .hero-premium, body.homepage > .restaurants-section, body.homepage > .home-service-preview, body.homepage > .how-section, body.homepage > .cta-section, body.homepage > .site-footer { display:none !important; }
  .homepage-newview-mobile { display:block; min-height:100vh; background:linear-gradient(#f8fbf8 0,#f4f7f4 46%,#f8faf8 100%); }
  .newview-topbar { position:sticky; top:0; z-index:30; display:flex; min-height:66px; align-items:center; justify-content:space-between; padding:12px 18px 10px; background:rgba(244,247,244,.96); border-bottom:1px solid rgba(226,235,228,.7); }
  .newview-brand,.newview-top-actions { display:flex; align-items:center; }.newview-brand { gap:9px; }.newview-logo { display:grid; width:30px; height:30px; place-items:center; border-radius:10px; background:var(--app-green); color:#fff; font-size:15px; font-weight:800; }.newview-brandname { color:var(--app-green); font-size:17px; font-weight:700; letter-spacing:-.4px; }.newview-brandname b { color:var(--app-orange); }.newview-top-actions { gap:9px; }
  .newview-icon-btn { position:relative; display:grid; width:38px; height:38px; place-items:center; border:1px solid var(--app-line); border-radius:13px; background:#fff; color:var(--app-ink); box-shadow:0 5px 13px rgba(11,60,35,.06); }.newview-icon-btn:active { transform:scale(.94); }.newview-icon-btn svg { width:18px; height:18px; fill:currentColor; }.newview-notification-btn i { position:absolute; top:8px; right:9px; width:7px; height:7px; border:2px solid #fff; border-radius:50%; background:var(--app-orange); }
  .newview-cart-count,.newview-dock-cart-count { position:absolute; display:grid; min-width:17px; height:17px; place-items:center; padding:0 4px; border:2px solid #fff; border-radius:99px; background:var(--app-orange); color:#fff; font-size:8px; font-style:normal; font-weight:800; line-height:1; }.newview-cart-count { top:-5px; right:-5px; }.newview-dock-cart-count { top:-7px; right:4px; }.newview-cart-count[hidden],.newview-dock-cart-count[hidden] { display:none; }
  .newview-content { padding:0 18px 23px; }.newview-hero { position:relative; overflow:hidden; padding:20px 18px 18px; border-radius:26px; background:linear-gradient(135deg,var(--app-green),var(--app-deep)); color:#fff; box-shadow:0 12px 25px rgba(6,73,39,.15); }.newview-hero::after { position:absolute; top:-105px; right:-100px; width:210px; height:210px; border-radius:50%; background:rgba(255,112,0,.23); content:''; filter:blur(8px); }.newview-hero-context { position:relative; z-index:1; display:flex; align-items:center; gap:8px; }.newview-eyebrow { margin:0; color:rgba(255,255,255,.72); font-size:9.5px; font-weight:700; letter-spacing:.15em; text-transform:uppercase; }.newview-location { padding:4px 7px; border:1px solid rgba(255,255,255,.16); border-radius:99px; background:rgba(255,255,255,.1); color:rgba(255,255,255,.9); font-size:9px; font-weight:600; line-height:1.2; }.newview-location svg { display:none !important; }
  .newview-hero h1 { position:relative; z-index:1; margin:11px 0 0; color:#fff; font-family:'Poppins',system-ui,sans-serif; font-size:clamp(28px,8vw,31px); line-height:1.11; letter-spacing:-.75px; }.newview-hero h1 span { color:#FF7000; }.newview-sub { position:relative; z-index:1; max-width:270px; margin:8px 0 0; color:rgba(255,255,255,.8); font-size:11.5px; line-height:1.5; }
  .newview-searchbar { position:relative; z-index:1; display:flex; min-height:49px; align-items:center; gap:8px; margin-top:16px; padding:5px 5px 5px 11px; border-radius:15px; background:#fff; }.newview-searchbar svg { width:17px; height:17px; flex:none; fill:var(--app-muted); }.newview-searchbar input { min-width:0; flex:1; border:0; outline:0; background:transparent; color:var(--app-ink); font:inherit; font-size:11.5px; }.newview-searchbar input::placeholder { color:#9aa8a0; }.newview-searchbar button { min-height:38px; padding:9px 13px; border:0; border-radius:11px; background:var(--app-orange); color:#fff; font:inherit; font-size:11px; font-weight:700; }
  .newview-chips { position:relative; z-index:1; display:flex; gap:7px; margin-top:12px; overflow-x:auto; scrollbar-width:none; }.newview-chips::-webkit-scrollbar,.newview-rail::-webkit-scrollbar { display:none; }.newview-chips a { flex:none; padding:6px 12px; border:1px solid rgba(255,255,255,.25); border-radius:99px; color:#fff; background:rgba(255,255,255,.1); font-size:10.5px; font-weight:600; }.newview-chips a.is-active { border-color:#fff; background:#fff; color:var(--app-green); }
  .newview-tiles { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin-top:25px; }.newview-tiles::before { grid-column:1/-1; margin-bottom:1px; color:#173326; content:'Explore Orekonect'; font-size:16px; font-weight:800; letter-spacing:-.45px; }.newview-tile { position:relative; display:flex; min-width:0; min-height:133px; flex-direction:column; overflow:hidden; padding:14px; border:1px solid var(--app-line); border-radius:20px; background:#fff; box-shadow:0 8px 20px rgba(11,60,35,.06); }.newview-tile::before { position:absolute; top:0; left:0; width:100%; height:3px; background:var(--app-orange); content:''; }.newview-tile--property::before { background:var(--app-green); }.newview-tile--market::before { background:#FF7000; }.newview-tile--more::before { background:#2487d6; }.newview-tile-icon { display:grid; width:37px; height:37px; place-items:center; margin-bottom:auto; border-radius:12px; background:#fff0e7; }.newview-tile--property .newview-tile-icon { background:#e6f3eb; }.newview-tile--market .newview-tile-icon { background:#fff6dc; }.newview-tile--more .newview-tile-icon { background:#e7f3ff; }.newview-tile-icon svg { width:19px; height:19px; fill:none; stroke:#FF7000; stroke-width:1.9; stroke-linecap:round; stroke-linejoin:round; }.newview-tile--property svg { stroke:var(--app-green); }.newview-tile--market svg { stroke:#FF7000; }.newview-tile--more svg { stroke:#197dcc; }.newview-tile b { overflow:hidden; margin-top:11px; font-size:13.5px; text-overflow:ellipsis; white-space:nowrap; }.newview-tile small { overflow:hidden; color:var(--app-muted); font-size:10px; text-overflow:ellipsis; white-space:nowrap; }.newview-tile:active { transform:scale(.98); }
  .newview-block { position:relative; margin-top:31px; padding-top:16px; }.newview-block::before { position:absolute; top:0; left:0; width:40px; height:3px; border-radius:99px; background:var(--app-orange); content:''; }#newview-properties::before { background:var(--app-green); }#newview-marketplace::before { background:#FF7000; }.newview-block-head { display:flex; align-items:baseline; justify-content:space-between; margin-bottom:5px; }.newview-block-head h2 { margin:0; color:#173326; font-family:'Poppins',system-ui,sans-serif; font-size:17px; letter-spacing:-.45px; }.newview-block-head h2::after { display:block; margin-top:2px; color:#78877f; font-size:10px; font-weight:500; letter-spacing:0; }#newview-food h2::after { content:'Fresh food from local kitchens'; }#newview-properties h2::after { content:'Homes and land in your area'; }#newview-marketplace h2::after { content:'Unique finds from local sellers'; }.newview-block-head a { color:var(--app-orange); font-size:11px; font-weight:700; }.newview-rail { display:flex; gap:13px; margin-right:-18px; padding:11px 18px 8px 1px; overflow-x:auto; scrollbar-width:none; }.newview-restaurant-card { flex:0 0 188px; }.newview-restaurant-image { position:relative; height:122px; overflow:hidden; border-radius:19px; background:#dce8df; box-shadow:0 9px 20px rgba(11,60,35,.1); }.newview-restaurant-image img { width:100%; height:100%; object-fit:cover; }.newview-restaurant-image::after { position:absolute; inset:48% 0 0; background:linear-gradient(transparent,rgba(4,37,20,.35)); content:''; }.newview-restaurant-image span { position:absolute; z-index:1; bottom:8px; left:8px; padding:4px 7px; border-radius:99px; background:rgba(255,255,255,.92); color:var(--app-ink); font-size:9px; font-weight:700; }.newview-restaurant-card h3 { overflow:hidden; margin:9px 2px 0; color:#203326; font-size:12.5px; text-overflow:ellipsis; white-space:nowrap; }.newview-restaurant-card p { display:-webkit-box; overflow:hidden; margin:3px 2px 0; color:var(--app-muted); font-size:10px; line-height:1.35; -webkit-box-orient:vertical; -webkit-line-clamp:2; }
  .newview-property-card { position:relative; overflow:hidden; border:1px solid var(--app-line); border-radius:22px; background:#fff; box-shadow:0 11px 26px rgba(11,60,35,.08); }.newview-property-card>img { width:100%; height:168px; object-fit:cover; }.newview-property-card>div { padding:14px; }.newview-property-card small { display:inline-flex; padding:4px 7px; border-radius:99px; background:#eaf6ee; color:#08703b; font-size:9px; font-weight:700; text-transform:uppercase; }.newview-property-card h3 { overflow:hidden; margin:7px 0 0; color:#142c1e; font-size:14.5px; text-overflow:ellipsis; white-space:nowrap; }.newview-property-card p { margin:3px 0 0; color:var(--app-muted); font-size:10.5px; }.newview-property-card>div>div { display:flex; align-items:center; gap:5px; margin-top:12px; padding-top:10px; border-top:1px solid #ebf0ec; }.newview-property-card b { color:var(--app-green); font-size:17px; }.newview-property-card span { color:var(--app-muted); font-size:10px; }.newview-property-card a { margin-left:auto; padding:7px 11px; border-radius:10px; background:var(--app-green); color:#fff; font-size:10.5px; font-weight:700; }
  .newview-product-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin-top:12px; }.newview-product-card { position:relative; min-width:0; overflow:hidden; padding:9px; border:1px solid var(--app-line); border-radius:18px; background:#fff; box-shadow:0 8px 19px rgba(11,60,35,.06); }.newview-product-card>a { display:block; }.newview-product-card img { width:100%; height:102px; border-radius:13px; background:#f1f5f1; object-fit:cover; }.newview-product-card b,.newview-product-card strong { display:block; overflow:hidden; margin:8px 2px 0; color:#26352b; font-size:11px; text-overflow:ellipsis; white-space:nowrap; }.newview-product-card strong { margin-top:3px; color:#FF7000; font-size:12.5px; }.newview-save-button { position:absolute; z-index:4; display:grid; width:32px; height:32px; place-items:center; border:1px solid rgba(255,255,255,.8); border-radius:11px; background:rgba(255,255,255,.94); color:#31513d; box-shadow:0 5px 12px rgba(5,47,25,.14); font-size:19px; line-height:1; }.newview-save-button--property { top:11px; right:11px; }.newview-save-button--product { top:15px; right:15px; }.newview-save-button.is-saved { background:var(--app-orange); color:#fff; }.newview-save-button:active { transform:scale(.9); }.newview-empty { display:flex; min-height:110px; flex-direction:column; justify-content:center; padding:16px; border:1px dashed #cbd8cf; border-radius:17px; background:#fff; color:var(--app-muted); font-size:11px; }.newview-empty--rail { flex:1; margin-right:18px; }
  .newview-foot { margin:23px 0 6px; color:var(--app-muted); text-align:center; font-size:10px; }.newview-action-toast { position:fixed; bottom:calc(96px + env(safe-area-inset-bottom)); left:50%; z-index:140; padding:10px 14px; border-radius:13px; background:rgba(15,38,25,.94); box-shadow:0 12px 25px rgba(4,34,17,.2); color:#fff; font-size:11px; font-weight:600; opacity:0; pointer-events:none; transform:translate(-50%,12px); transition:.2s; }.newview-action-toast.is-visible { opacity:1; transform:translate(-50%,0); }
  .homepage-mobile-tabs { position:fixed; right:12px; bottom:calc(12px + env(safe-area-inset-bottom)); left:12px; z-index:100; display:flex; height:68px; align-items:center; justify-content:space-around; padding:0 5px; border:1px solid #dbe7df; border-radius:24px; background:rgba(255,255,255,.96); box-shadow:0 14px 34px rgba(7,40,24,.2); }.homepage-mobile-tab { position:relative; display:flex; min-width:44px; flex-direction:column; align-items:center; gap:4px; color:#728178; font-size:9px; font-weight:600; }.homepage-mobile-tab svg { width:20px; height:20px; fill:none; stroke:currentColor; stroke-width:1.9; stroke-linecap:round; stroke-linejoin:round; }.homepage-mobile-tab.is-active { color:var(--app-green); }.homepage-mobile-tab.is-active::before { position:absolute; top:-9px; width:20px; height:3px; border-radius:99px; background:var(--app-green); content:''; }.homepage-mobile-tab--center { width:54px; min-width:54px; height:54px; justify-content:center; margin-top:-25px; border:4px solid var(--app-bg); border-radius:18px; background:var(--app-orange); color:#fff; box-shadow:0 9px 19px rgba(255,112,0,.32); }.homepage-mobile-tab--center::before { display:none; }.homepage-mobile-tab--center svg { width:22px; height:22px; stroke:#fff; }.homepage-mobile-tab:active { transform:scale(.94); }
}
@media (min-width:768px) { .homepage-newview-mobile,.homepage-mobile-tabs { display:none; } }
@media (max-width:359px) { .newview-topbar { padding-right:14px; padding-left:14px; }.newview-content { padding-right:13px; padding-left:13px; }.newview-hero { padding:18px 16px 16px; }.newview-hero h1 { font-size:27px; }.newview-tiles { gap:9px; }.newview-tile { min-height:124px; padding:12px; }.newview-tile b { font-size:12px; }.newview-restaurant-card { flex-basis:170px; }.homepage-mobile-tabs { right:8px; left:8px; }.homepage-mobile-tab { min-width:40px; font-size:8px; } }

@media (max-width:767px) {
  :root { --app-green:#075b3e; --app-deep:#003c2b; --app-orange:#FF7000; --app-bg:#f5faf8; }
  .newview-topbar { min-height:72px; padding:14px 18px 12px; background:var(--app-deep); border-bottom:0; }
  .newview-logo { width:38px; height:38px; border:3px solid var(--app-orange); border-radius:50%; background:#fff; color:var(--app-green); font-size:17px; }
  .newview-brandname { color:#fff; font-size:20px; }
  .newview-icon-btn { width:43px; height:43px; border-color:rgba(255,255,255,.1); border-radius:15px; background:rgba(255,255,255,.09); color:#fff; box-shadow:none; }
  .newview-hero { padding:17px 18px 18px; border-radius:0 0 26px 26px; background:linear-gradient(135deg,var(--app-green),var(--app-deep)); }
  .newview-eyebrow,.newview-hero h1,.newview-sub { display:none; }
  .newview-location { padding:8px 12px; border-radius:99px; background:rgba(255,255,255,.1); font-size:12px; }
  .newview-location::before { content:'\1F4CD'; margin-right:5px; }
  .newview-searchbar { display:flex; min-height:56px; align-items:center; gap:10px; margin:22px 0 0; padding:6px 7px 6px 16px; border:1px solid #edf2ef; border-radius:28px; background:#fff; box-shadow:0 8px 20px rgba(14,64,43,.1); }
  .newview-searchbar>svg { width:22px; height:22px; flex:none; fill:none; stroke:var(--app-green); stroke-width:2; stroke-linecap:round; }
  .newview-searchbar input { min-width:0; flex:1; border:0; outline:0; background:transparent; font:inherit; font-size:13px; }
  .newview-searchbar button { display:grid; width:40px; height:40px; place-items:center; border-radius:50%; background:#eaf4ef; color:var(--app-green); }
  .newview-searchbar button svg { width:20px; height:20px; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; }
  .newview-chips { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; margin-top:20px; overflow:visible; }
  .newview-chips a { display:flex; min-height:68px; align-items:flex-end; justify-content:center; padding:10px 3px; border:0; border-radius:18px; background:#e7f3ee; color:var(--app-green); font-size:11px; text-align:center; }
  .newview-chips a::before { content:'◈'; position:absolute; margin-top:-30px; font-size:24px; }
  .newview-chips a:nth-child(2)::before { content:'🍴'; }
  .newview-chips a:nth-child(3)::before { content:'⌂'; }
  .newview-chips a:nth-child(4)::before { content:'▣'; }
  .newview-chips a.is-active { background:linear-gradient(145deg,#FF7000,#FF7000); color:#153a2c; box-shadow:0 8px 15px rgba(255,112,0,.2); }
  .newview-tiles { margin-top:28px; }
  .newview-tiles::before { content:'Explore Orekonect'; font-size:21px; }
  .newview-block-head h2 { font-size:20px; }
  .newview-restaurant-card { flex-basis:240px; }
  .newview-restaurant-image { height:145px; border-radius:20px; }
  .homepage-mobile-tabs { height:76px; border-radius:38px; background:rgba(255,255,255,.97); }
  .homepage-mobile-tab--center { width:62px; min-width:62px; height:62px; border-radius:50%; background:var(--app-orange); }
}
/* Homepage navigation refinement — one clear app-level service switcher. */
@media (max-width: 767px) {
  .homepage-newview-mobile .newview-topbar {
    min-height: 68px;
    padding: max(11px, env(safe-area-inset-top)) 16px 10px;
    background: linear-gradient(118deg, #063c2c, #075a3d 65%, #0a6644);
    box-shadow: 0 3px 13px rgba(4, 47, 31, .12);
  }
  .homepage-newview-mobile .newview-brand { gap: 8px; }
  .homepage-newview-mobile .newview-logo {
    width: 34px;
    height: 34px;
    border: 0;
    border-radius: 12px;
    background: transparent;
    box-shadow: none;
    color: transparent;
    font-size: 13px;
  }
  .homepage-newview-mobile .newview-brandname { font-size: 18px; letter-spacing: -.055em; }
  .homepage-newview-mobile .newview-icon-btn {
    width: 39px;
    height: 39px;
    border: 1px solid rgba(255,255,255,.13);
    border-radius: 13px;
    background: rgba(255,255,255,.10);
  }
  .homepage-newview-mobile .newview-icon-btn svg { width: 17px; height: 17px; }
  .homepage-newview-mobile .newview-hero { padding: 13px 16px 16px; border-radius: 0 0 24px 24px; box-shadow: none; }
  .homepage-newview-mobile .newview-hero-context { min-height: 29px; }
  .homepage-newview-mobile .newview-location { display:inline-flex; align-items:center; min-height:30px; padding:6px 10px; border-color:rgba(255,255,255,.16); background:rgba(255,255,255,.08); color:rgba(255,255,255,.88); font-size:10px; }
  .homepage-newview-mobile .newview-location::before { content:''; width:6px; height:6px; margin-right:6px; border-radius:50%; background:#f8b42e; }

  /* The chip bar duplicated service navigation, so the service row below is the single source of navigation. */
  .homepage-newview-mobile .newview-discovery { display:none; }
  .homepage-newview-mobile .newview-tiles {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 8px;
    margin-top: 16px;
    padding: 0;
  }
  .homepage-newview-mobile .newview-tiles::before { display:none; }
  .homepage-newview-mobile .newview-tile {
    min-height: 87px;
    align-items: center;
    justify-content: flex-start;
    padding: 10px 4px 8px;
    border: 1px solid #e1ebe4;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 6px 14px rgba(7, 54, 33, .045);
    text-align: center;
  }
  .homepage-newview-mobile .newview-tile::before { display:none; }
  .homepage-newview-mobile .newview-tile-icon {
    width: 35px;
    height: 35px;
    margin: 0 0 7px;
    border-radius: 12px;
    background: #fff2df;
  }
  .homepage-newview-mobile .newview-tile--property .newview-tile-icon { background:#e7f3eb; }
  .homepage-newview-mobile .newview-tile--market .newview-tile-icon { background:#fff5db; }
  .homepage-newview-mobile .newview-tile--more .newview-tile-icon { background:#e8f2ed; }
  .homepage-newview-mobile .newview-tile-icon svg { width:18px; height:18px; }
  .homepage-newview-mobile .newview-tile b {
    width:100%;
    margin:0;
    color:#173326;
    font-size:9.5px;
    line-height:1.15;
    letter-spacing:-.025em;
    white-space:normal;
  }
  .homepage-newview-mobile .newview-tile small { display:none; }
  .homepage-newview-mobile .newview-tile:active { transform:scale(.965); background:#f7fbf8; }
  .homepage-newview-mobile .newview-tile--food { border-color:#f3dfca; background:#fffdf9; }
  .homepage-newview-mobile .newview-tile--property { border-color:#dcebe0; }
  .homepage-newview-mobile .newview-tile--market { border-color:#f1e7c9; }

  .homepage-newview-mobile .newview-block { margin-top:26px; padding-top:13px; }
  .homepage-newview-mobile .newview-block::before { width:28px; height:2px; }
  .homepage-newview-mobile .newview-block-head { margin-bottom:3px; }
  .homepage-newview-mobile .newview-block-head h2 { font-size:18px; }
  .homepage-newview-mobile .newview-block-head h2::after { margin-top:1px; font-size:9px; }
  .homepage-newview-mobile .newview-block-head a { font-size:10px; }
}

/* Guest and member account access in the mobile app header. */
@media (max-width: 767px) {
  .homepage-newview-mobile .newview-top-actions { gap: 6px; }
  .homepage-newview-mobile .newview-account-link { min-height:38px; display:inline-flex; align-items:center; justify-content:center; gap:5px; border-radius:12px; font-size:10px; font-weight:800; line-height:1; text-decoration:none; white-space:nowrap; }
  .homepage-newview-mobile .newview-account-link--login { padding:0 8px; color:rgba(255,255,255,.9); }
  .homepage-newview-mobile .newview-account-link--signup { padding:0 10px; background:#FF7000; color:#173528; box-shadow:0 5px 12px rgba(0,0,0,.12); }
  .homepage-newview-mobile .newview-account-link--signed-in { padding:0 9px; border:1px solid rgba(255,255,255,.14); background:rgba(255,255,255,.10); color:#fff; }
  .homepage-newview-mobile .newview-account-link--signed-in svg { width:16px; height:16px; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }
  .homepage-newview-mobile .newview-account-link:active { transform:scale(.96); }
}
@media (max-width: 359px) {
  .homepage-newview-mobile .newview-topbar { padding-right:10px; padding-left:10px; }
  .homepage-newview-mobile .newview-brandname { font-size:16px; }
  .homepage-newview-mobile .newview-account-link--login { padding:0 5px; }
  .homepage-newview-mobile .newview-account-link--signup { padding:0 8px; }
}

/* Final mobile app bar: calm surface, clear brand anchor, and balanced account actions. */
@media (max-width: 767px) {
  .homepage-newview-mobile .newview-topbar {
    min-height: 66px;
    padding: max(10px, env(safe-area-inset-top)) 15px 10px;
    border-bottom: 1px solid #e4ece6;
    background: rgba(255,255,255,.97);
    box-shadow: 0 2px 11px rgba(7, 55, 34, .055);
    backdrop-filter: blur(18px);
  }
  .homepage-newview-mobile .newview-brand { min-width: 0; gap: 8px; }
  .homepage-newview-mobile .newview-logo {
    width: 32px;
    height: 32px;
    border-radius: 11px;
    box-shadow: inset 0 0 0 6px #fff, 0 3px 8px rgba(5, 67, 42, .08);
  }
  .homepage-newview-mobile .newview-brandname { color: #123d2c; font-size: 18px; }
  .homepage-newview-mobile .newview-brandname b { color: #FF7000; }
  .homepage-newview-mobile .newview-top-actions { flex: none; gap: 5px; }
  .homepage-newview-mobile .newview-icon-btn {
    width: 36px;
    height: 36px;
    border-color: #e0eae3;
    border-radius: 11px;
    background: #f7faf8;
    color: #0b4a36;
  }
  .homepage-newview-mobile .newview-cart-count { top: -5px; right: -4px; }
  .homepage-newview-mobile .newview-account-link { min-height: 36px; border-radius: 11px; font-size: 9.5px; }
  .homepage-newview-mobile .newview-account-link--login { padding: 0 7px; color: #0b4a36; }
  .homepage-newview-mobile .newview-account-link--signup { padding: 0 10px; background: #0b4a36; color: #fff; box-shadow: 0 5px 12px rgba(7, 70, 48, .15); }
  .homepage-newview-mobile .newview-account-link--signed-in { padding: 0 9px; border-color: #dce9e1; background: #f1f7f3; color: #0b4a36; }
  .homepage-newview-mobile .newview-account-link--signed-in svg { width: 15px; height: 15px; }
}
@media (max-width: 359px) {
  .homepage-newview-mobile .newview-topbar { padding-right: 9px; padding-left: 9px; }
  .homepage-newview-mobile .newview-logo { width: 30px; height: 30px; }
  .homepage-newview-mobile .newview-brandname { font-size: 16px; }
  .homepage-newview-mobile .newview-account-link--login { display:none; }
  .homepage-newview-mobile .newview-account-link--signup { padding:0 9px; }
}

@media (max-width:767px) { .homepage-newview-mobile .newview-logo { overflow:hidden; padding:0; background:none; box-shadow:none; } .homepage-newview-mobile .newview-logo img { display:block; width:100%; height:100%; object-fit:contain; } }


/* Only the uploaded Orekonect mark may render in the mobile brand slot. */
@media (max-width:767px) {
  .homepage-newview-mobile .newview-logo {
    background:transparent !important;
    background-image:none !important;
    box-shadow:none !important;
    border:0 !important;
    color:transparent !important;
  }
  .homepage-newview-mobile .newview-logo::before,
  .homepage-newview-mobile .newview-logo::after { content:none !important; display:none !important; }
  .homepage-newview-mobile .newview-logo img { position:relative; z-index:1; background:transparent; }
}
/* Final mobile brand lockup: exact logo orange and a tight icon-to-wordmark relationship. */
@media (max-width:767px) {
  .homepage-newview-mobile .newview-brand { gap:4px !important; }
  .homepage-newview-mobile .newview-brandname b { color:#FF7000 !important; }
  .homepage-newview-mobile .newview-logo { flex:0 0 32px; }
  .homepage-newview-mobile .newview-logo img { transform:scale(1.1); transform-origin:center; }
}
/* Header icon and uploaded logo visibility repair. */
@media (max-width:767px) {
  .homepage-newview-mobile .newview-icon-btn,
  .homepage-newview-mobile .newview-cart-btn { color:#0b4a36 !important; }
  .homepage-newview-mobile .newview-cart-btn svg { display:block !important; fill:currentColor !important; stroke:none !important; opacity:1 !important; visibility:visible !important; }
  .homepage-newview-mobile .newview-logo img {
    display:block !important;
    width:100% !important;
    height:100% !important;
    max-width:none !important;
    opacity:1 !important;
    visibility:visible !important;
    object-fit:contain !important;
  }
}
/* Index header uses live server authentication state, matching every shared app header. */
@media (max-width: 767px) {
  .homepage-newview-mobile .newview-guest-actions { display:contents; }
  .homepage-newview-mobile .newview-guest-actions[hidden],
  .homepage-newview-mobile [data-index-account][hidden] { display:none !important; }
}

@media (max-width: 767px) {
  .homepage-mobile-tabs.app-tabbar {
    right:12px;
    bottom:calc(12px + env(safe-area-inset-bottom));
    left:12px;
    z-index:1000;
    height:76px;
    padding:0 5px;
    border:1px solid #dbe7df;
    border-radius:38px;
    background:rgba(255,255,255,.97);
    box-shadow:0 14px 34px rgba(7,40,24,.2);
    backdrop-filter:blur(14px);
  }
  .homepage-mobile-tabs.app-tabbar .homepage-mobile-tab {
    min-width:44px;
    height:auto;
    justify-content:center;
    gap:4px;
    font-size:9px;
    font-weight:600;
  }
  .homepage-mobile-tabs.app-tabbar .homepage-mobile-tab--center {
    position:relative !important;
    display:grid !important;
    grid-template-rows:44px 10px;
    width:58px !important;
    min-width:58px !important;
    height:74px !important;
    margin-top:-25px !important;
    align-content:start !important;
    justify-items:center !important;
    row-gap:8px;
    overflow:visible !important;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
  }
  .homepage-mobile-tabs.app-tabbar .homepage-mobile-tab--center .sabo-market-icon {
    display:grid;
    flex:none;
    width:44px;
    height:44px;
    place-items:center;
    border:3px solid var(--app-bg);
    border-radius:50%;
    background:var(--app-orange);
    box-shadow:0 9px 19px rgba(255,112,0,.32);
  }
  .homepage-mobile-tabs.app-tabbar .homepage-mobile-tab--center .sabo-market-icon svg {
    width:18px;
    height:18px;
    stroke:#fff;
  }
  .homepage-mobile-tabs.app-tabbar .homepage-mobile-tab--center .sabo-market-label {
    display:block;
    position:static;
    width:max-content;
    margin:0;
    transform:none;
    color:#728178;
    font-size:9px;
    font-weight:600;
    line-height:1;
    text-align:center;
    white-space:nowrap;
  }
}

/* The Index app header receives the same live account state as shared page headers. */
@media (max-width: 767px) {
  .homepage-newview-mobile .newview-guest-actions { display:contents; }
  .homepage-newview-mobile .newview-guest-actions[hidden],
  .homepage-newview-mobile [data-index-account][hidden] { display:none !important; }
}
