/* TimesPack public navigation — premium visual layer v1 */
.tp-zone-home .tp-public-nav{

  --nav-ink:#20162f;

  --nav-muted:#6e617f;

  --nav-purple:#5b2bbf;

  --nav-purple-deep:#4d269f;

  height:76px;

  min-height:76px;

  padding:0 clamp(20px,4vw,64px);

  background:rgba(255,255,255,.82);

  border-bottom:1px solid rgba(105,65,198,.1);

  box-shadow:0 12px 40px rgba(34,20,64,.07);

  backdrop-filter:blur(24px) saturate(170%);

  -webkit-backdrop-filter:blur(24px) saturate(170%);

}

.tp-zone-home .tp-public-nav:before{

  content:"";
position:absolute;
inset:0 0 auto;
height:2px;

  background:linear-gradient(90deg,transparent 4%,#8d68e8 32%,#3c9bf2 68%,transparent 96%);

  opacity:.75;

}

.tp-zone-home .tp-public-nav .brand{
gap:10px;
position:relative;
padding:6px 0}

.tp-zone-home .tp-public-nav .brand img{
width:142px;
filter:drop-shadow(0 5px 10px rgba(49,29,85,.08))}

.tp-zone-home .tp-public-nav .nav-brand-badge{

  display:inline-flex;
align-items:center;
height:20px;
padding:0 8px;
border:1px solid #ded2f6;
border-radius:999px;

  color:#7254aa;
background:linear-gradient(180deg,#fff,#eee7ff);
font-size:8px;
font-weight:900;
letter-spacing:.14em;

}

.tp-zone-home .tp-public-nav .nav-links{
gap:0}

.tp-zone-home .tp-public-nav .nav-section{
gap:3px}

.tp-zone-home .tp-public-nav .nav-section+.nav-section{
margin-left:15px;
padding-left:16px}

.tp-zone-home .tp-public-nav .nav-section+.nav-section:before{
top:9px;
height:24px;
background:linear-gradient(#eee8f6,#dcd1eb,#eee8f6)}

.tp-zone-home .tp-public-nav .nav-primary-links>a,
.tp-zone-home .tp-public-nav .nav-download>summary,
.tp-zone-home .tp-public-nav .nav-login-btn{

  position:relative;
min-height:42px;
padding:9px 11px;
border:1px solid transparent;
border-radius:12px;

  color:var(--nav-muted);
font-size:13.5px;
font-weight:760;
letter-spacing:-.01em;

  transition:color .2s ease,background .2s ease,border-color .2s ease,transform .2s ease;

}

.tp-zone-home .tp-public-nav .nav-primary-links>a svg,
.tp-zone-home .tp-public-nav .nav-download>summary svg,
.tp-zone-home .tp-public-nav .nav-profile-link svg{

  width:18px;
height:18px;
fill:none;
stroke:currentColor;
stroke-width:1.8;
stroke-linecap:round;
stroke-linejoin:round;

}

.tp-zone-home .tp-public-nav .nav-primary-links>a:hover,
.tp-zone-home .tp-public-nav .nav-download>summary:hover,
.tp-zone-home .tp-public-nav .nav-download[open]>summary,
.tp-zone-home .tp-public-nav .nav-login-btn:hover{

  color:var(--nav-purple-deep);
background:rgba(245,240,255,.88);
border-color:#e8def8;
transform:translateY(-1px);

}

.tp-zone-home .tp-public-nav .nav-download-menu{

  top:calc(100% + 13px);
width:228px;
padding:9px;
border:1px solid rgba(105,65,198,.15);
border-radius:18px;

  background:rgba(255,255,255,.97);
box-shadow:0 24px 60px rgba(38,19,72,.2),0 4px 12px rgba(38,19,72,.06);

  animation:tp-nav-drop .18s ease-out;

}

@keyframes tp-nav-drop{
from{
opacity:0;
transform:translate(-50%,-6px) scale(.98)}
to{
opacity:1;
transform:translate(-50%,0) scale(1)}
}

.tp-zone-home .tp-public-nav .nav-download-menu a{
min-height:58px;
padding:9px 11px;
border:1px solid transparent;
border-radius:13px}

.tp-zone-home .tp-public-nav .nav-download-menu a:hover{
border-color:#eadff9;
background:linear-gradient(135deg,#faf7ff,#f3edff)}

.tp-zone-home .tp-public-nav .nav-download-icon{
width:38px;
height:38px;
border-radius:12px;
box-shadow:0 7px 16px rgba(30,20,50,.14)}

.tp-zone-home .tp-public-nav .nav-login-btn{
color:#4c3b62;
background:transparent;
box-shadow:none}

.tp-zone-home .tp-public-nav .nav-cta{

  display:inline-flex;
align-items:center;
gap:8px;
min-height:43px;
padding:10px 17px;
border:1px solid rgba(255,255,255,.24);
border-radius:13px;

  background:linear-gradient(135deg,#7548d7 0%,#6236c1 58%,#4e2aa5 100%)!important;

  box-shadow:0 10px 24px rgba(90,49,177,.25),inset 0 1px rgba(255,255,255,.25);

}

.tp-zone-home .tp-public-nav .nav-cta svg{
width:16px;
height:16px;
fill:none;
stroke:currentColor;
stroke-width:2;
stroke-linecap:round;
stroke-linejoin:round;
transition:transform .2s ease}

.tp-zone-home .tp-public-nav .nav-cta:hover{
transform:translateY(-2px);
box-shadow:0 14px 30px rgba(90,49,177,.32),inset 0 1px rgba(255,255,255,.28)}

.tp-zone-home .tp-public-nav .nav-cta:hover svg{
transform:translateX(2px)}

.tp-zone-home .tp-public-nav .language-form{
padding:3px;
border-color:#e5dcef;
border-radius:12px;
background:rgba(247,244,251,.88)}

.tp-zone-home .tp-public-nav .language-form button{
min-width:34px;
min-height:32px;
border-radius:9px;
font-size:11px}

.tp-zone-home .tp-public-nav .language-form button.active{
background:#fff;
color:#5d35bd;
box-shadow:0 3px 10px rgba(52,31,89,.12)}

.tp-zone-home .tp-public-nav a:focus-visible,
.tp-zone-home .tp-public-nav button:focus-visible,
.tp-zone-home .tp-public-nav summary:focus-visible{
outline:3px solid rgba(105,65,198,.25);
outline-offset:2px}

.tp-zone-home .tp-public-nav .menu-toggle{
display:none;
position:relative;
width:44px;
height:44px;
padding:0;
border:1px solid #e2d7f5;
border-radius:14px;
background:linear-gradient(145deg,#fff,#f4effd);
box-shadow:0 7px 18px rgba(55,31,94,.1)}

.tp-zone-home .nav-toggle-lines{
display:grid;
gap:4px;
width:18px}

.tp-zone-home .nav-toggle-lines i{
display:block;
width:18px;
height:2px;
border-radius:2px;
background:#5f35b5;
transition:transform .22s ease,opacity .18s ease}

.tp-zone-home .menu-toggle[aria-expanded="true"] .nav-toggle-lines i:first-child{
transform:translateY(6px) rotate(45deg)}

.tp-zone-home .menu-toggle[aria-expanded="true"] .nav-toggle-lines i:nth-child(2){
opacity:0}

.tp-zone-home .menu-toggle[aria-expanded="true"] .nav-toggle-lines i:last-child{
transform:translateY(-6px) rotate(-45deg)}

.tp-zone-home.public-nav-open{
overflow:hidden}

.tp-zone-home.public-nav-open:after{
content:"";
position:fixed;
inset:66px 0 0;
z-index:900;
background:rgba(24,13,43,.22);
backdrop-filter:blur(2px);
-webkit-backdrop-filter:blur(2px)}


@media(max-width:1080px) and (min-width:861px){

  .tp-zone-home .tp-public-nav{
padding-inline:20px}

  .tp-zone-home .tp-public-nav .brand img{
width:124px}

  .tp-zone-home .tp-public-nav .nav-brand-badge{
display:none}

  .tp-zone-home .tp-public-nav .nav-section+.nav-section{
margin-left:8px;
padding-left:9px}

  .tp-zone-home .tp-public-nav .nav-primary-links>a,.tp-zone-home .tp-public-nav .nav-download>summary{
padding-inline:8px}

}

@media(max-width:860px){

  .tp-zone-home .tp-public-nav{
height:66px;
min-height:66px;
padding:9px 16px;
background:rgba(255,255,255,.94)}

  .tp-zone-home .tp-public-nav .brand img{
width:121px}

  .tp-zone-home .tp-public-nav .nav-brand-badge{
height:18px;
padding-inline:6px;
font-size:7px}

  .tp-zone-home .tp-public-nav .menu-toggle{
display:grid}

  .tp-zone-home .tp-public-nav .nav-links{

    top:74px;
left:12px;
right:12px;
max-height:calc(100vh - 92px);
overflow:auto;
gap:0;
padding:14px;

    border:1px solid rgba(105,65,198,.14);
border-radius:22px;
background:rgba(255,255,255,.98);

    box-shadow:0 28px 70px rgba(34,18,65,.24),0 6px 18px rgba(34,18,65,.08);
animation:tp-mobile-menu .2s ease-out;

  }

  @keyframes tp-mobile-menu{
from{
opacity:0;
transform:translateY(-8px) scale(.985)}
to{
opacity:1;
transform:none}
}

  .tp-zone-home .tp-public-nav .nav-section{
gap:6px}

  .tp-zone-home .tp-public-nav .nav-section+.nav-section{
margin:8px 0 0;
padding:10px 0 0;
border-top:1px solid #eee8f6}

  .tp-zone-home .tp-public-nav .nav-primary-links>a,.tp-zone-home .tp-public-nav .nav-download>summary,.tp-zone-home .tp-public-nav .nav-login-btn{
justify-content:flex-start;
width:100%;
min-height:48px;
padding:11px 13px;
background:#faf8fd;
border-color:#eee8f6}

  .tp-zone-home .tp-public-nav .nav-download-menu{
width:100%;
animation:none}

  .tp-zone-home .tp-public-nav .nav-account-links .nav-cta{
justify-content:center;
width:100%;
min-height:49px}

  .tp-zone-home .tp-public-nav .nav-utilities{
display:grid;
grid-template-columns:1fr auto;
align-items:center}

  .tp-zone-home .tp-public-nav .language-form{
width:100%;
margin:0}

  .tp-zone-home .tp-public-nav .nav-logout-form{
width:auto}

  .tp-zone-home .tp-public-nav .nav-logout-form .link{
width:auto}

}

@media(prefers-reduced-motion:reduce){
.tp-zone-home .tp-public-nav *{
animation:none!important;
transition:none!important}
}


/* TimesPack Premium Purple marketplace finish */
.tp-food-public-main{
  background:
    radial-gradient(circle at 8% 0%, rgba(117,68,220,.13), transparent 28%),
    radial-gradient(circle at 92% 8%, rgba(91,43,191,.10), transparent 24%),
    #eee7ff!important;
}
.tp-food-subnav{
  background:rgba(255,255,255,.96);
  border-bottom:1px solid rgba(91,43,191,.12);
  box-shadow:0 3px 18px rgba(50,21,111,.07);
}
.tp-food-hero{
  background:
    radial-gradient(circle at 85% 20%, rgba(154,115,239,.30), transparent 30%),
    linear-gradient(118deg,#32156f 0%,#4b1fa5 48%,#7544dc 100%);
  box-shadow:0 12px 32px rgba(50,21,111,.18);
}
.tp-food-search{
  box-shadow:0 8px 28px rgba(50,21,111,.14);
}
.tp-food-search button{
  background:linear-gradient(135deg,#5b2bbf,#7544dc);
  box-shadow:0 6px 16px rgba(91,43,191,.25);
}
.tp-food-filterbar,
.tp-food-benefits{
  border:1px solid rgba(91,43,191,.10);
  box-shadow:0 8px 24px rgba(50,21,111,.07);
}
.tp-food-dish-card,
.tp-food-restaurant-card,
.tp-food-empty{
  border:1px solid rgba(91,43,191,.08);
  box-shadow:0 8px 24px rgba(50,21,111,.07);
}
.tp-food-dish-card:hover,
.tp-food-restaurant-card:hover{
  border-color:rgba(91,43,191,.20);
  box-shadow:0 12px 30px rgba(50,21,111,.12);
  transform:translateY(-2px);
}
.tp-food-location span,
.tp-food-section-head>div>span,
.tp-food-dish-copy span,
.tp-food-meta span:first-child{
  color:#5b2bbf;
}
.tp-food-logo-placeholder{
  background:linear-gradient(135deg,#e5d9ff,#f7f4ff);
  border:1px solid rgba(91,43,191,.10);
}
