/* TimesPack role-isolated portal shell */
.tp-zone-main{
min-height:calc(100vh - 72px)}


/* Premium public navbar: one primary CTA, quieter supporting actions. */
.tp-zone-home nav{

  position:sticky;

  top:0;

  z-index:1000;

  min-height:72px;

  isolation:isolate;

  pointer-events:auto;

  border-bottom-color:rgba(91,61,146,.1);

  box-shadow:0 8px 30px rgba(39,24,75,.06);

}


.tp-zone-home nav .brand,
.tp-zone-home nav .menu-toggle,
.tp-zone-home nav .nav-links,
.tp-zone-home nav .nav-links a,
.tp-zone-home nav .nav-links button,
.tp-zone-home nav .nav-links summary{

  pointer-events:auto;

}


.tp-zone-home .tp-zone-main{
position:relative;
z-index:0}


.tp-zone-home .brand img{
width:148px}

.tp-zone-home .nav-links{
gap:8px}

.tp-zone-home .nav-links>a{
min-height:42px}

.tp-zone-home .nav-download{

  position:relative;

  z-index:30;

}

.tp-zone-home .nav-download summary{

  display:flex;

  align-items:center;

  gap:7px;

  min-height:42px;

  padding:9px 12px;

  color:#493c62;

  font-weight:800;

  cursor:pointer;

  list-style:none;

  border-radius:11px;

  user-select:none;

}

.tp-zone-home .nav-download summary::-webkit-details-marker{
display:none}

.tp-zone-home .nav-download summary:after{

  content:"";

  width:7px;

  height:7px;

  margin:0 2px 4px 3px;

  border-right:2px solid currentColor;

  border-bottom:2px solid currentColor;

  transform:rotate(45deg);

  transition:transform .18s ease;

}

.tp-zone-home .nav-download[open] summary,
.tp-zone-home .nav-download summary:hover{

  color:#6534c4;

  background:#f5f0ff;

}

.tp-zone-home .nav-download[open] summary:after{

  margin-top:5px;

  transform:rotate(225deg);

}

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

  position:absolute;

  top:calc(100% + 9px);

  left:50%;

  width:210px;

  padding:8px;

  border:1px solid #e8def7;

  border-radius:15px;

  background:#fff;

  box-shadow:0 18px 40px rgba(44,25,80,.18);

  transform:translateX(-50%);

}

.tp-zone-home .nav-download-menu:before{

  content:"";

  position:absolute;

  top:-6px;

  left:50%;

  width:11px;

  height:11px;

  border-left:1px solid #e8def7;

  border-top:1px solid #e8def7;

  background:#fff;

  transform:translateX(-50%) rotate(45deg);

}

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

  position:relative;

  display:flex;

  align-items:center;

  gap:11px;

  min-height:52px;

  padding:8px 10px;

  color:#342a47;

  text-decoration:none;

  border-radius:11px;

}

.tp-zone-home .nav-download-menu a:hover{

  color:#5c2eba;

  background:#f7f3ff;

}

.tp-zone-home .nav-download-menu a+a{
margin-top:3px}

.tp-zone-home .nav-download-menu b,
.tp-zone-home .nav-download-menu small{
display:block}

.tp-zone-home .nav-download-menu b{
font-size:14px}

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

  margin-top:1px;

  color:#847695;

  font-size:11px;

  font-weight:700;

  letter-spacing:.06em;

}

.tp-zone-home .nav-download-icon{

  display:grid;

  place-items:center;

  flex:0 0 34px;

  width:34px;

  height:34px;

  border-radius:10px;

  color:#fff;

  font-size:14px;

  font-weight:900;

}

.tp-zone-home .nav-download-icon.android{
background:linear-gradient(135deg,#39b96b,#138d48)}

.tp-zone-home .nav-download-icon.ios{
background:linear-gradient(135deg,#4f5665,#11141b)}

.tp-zone-home .nav-merchant-link{

  padding:9px 10px;

  color:#493c62;

  font-weight:750;

  background:transparent;

}

.tp-zone-home .nav-merchant-link:hover{

  color:#6b3bd1;

  background:#f5f0ff;

}

.tp-zone-home .nav-store-icon{

  display:inline-grid;

  place-items:center;

  width:22px;

  height:22px;

  border-radius:7px;

  color:#7547d4;

  background:#efe7ff;

  font-size:16px;

  font-weight:900;

  transform:rotate(180deg);

}

.tp-zone-home .nav-login-btn{

  padding:9px 16px;

  color:#5d35bd;

  background:#fff;

  border:1px solid #d8caf7;

  border-radius:12px;

  font-weight:800;

  box-shadow:0 4px 12px rgba(73,43,139,.06);

}

.tp-zone-home .nav-login-btn:hover{

  color:#5129b0;

  background:#faf8ff;

  border-color:#bba5f2;

  transform:translateY(-1px);

  box-shadow:0 8px 18px rgba(73,43,139,.12);

}

.tp-zone-home .nav-cta{

  min-height:42px;

  padding:10px 19px;

  border-radius:12px;

  color:#fff;

  font-weight:850;

  box-shadow:0 8px 20px rgba(105,65,198,.2);

}

.tp-zone-home .language-form{

  position:relative;

  gap:0;

  padding:3px;

  border-color:#e2d9f3;

  border-radius:11px;

  background:#f7f4fb;

}

.tp-zone-home .language-form button{

  min-width:36px;

  padding:6px 8px;

  border-radius:8px;

}

.tp-zone-home .language-form button+button:before{

  content:"";

  position:absolute;

  left:50%;

  top:10px;

  bottom:10px;

  width:1px;

  background:#ddd3eb;

}

.tp-zone-home .language-form button.active+button:before,
.tp-zone-home .language-form button+button.active:before{
display:none}

.tp-zone-home .menu-toggle{

  width:42px;

  height:42px;

  padding:0;

  place-items:center;

  border:1px solid #e2d7f8;

  background:#f7f2ff;

  font-size:20px;

}


@media(max-width:860px){

  .tp-zone-main{
padding-bottom:84px}

  .tp-zone-home nav{
min-height:64px}

  .tp-zone-home .brand img{
width:120px}

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

  .tp-zone-home .nav-links{

    top:70px;

    z-index:250;

    gap:7px;

    padding:12px;

    border-radius:18px;

    box-shadow:0 20px 45px rgba(37,20,72,.18);

  }

  .tp-zone-home .nav-links>a{

    justify-content:center;

    min-height:46px;

  }

  .tp-zone-home .nav-download{
width:100%}

  .tp-zone-home .nav-download summary{

    justify-content:center;

    min-height:46px;

    border:1px solid #eee8f7;

    background:#faf8fd;

  }

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

    position:static;

    width:100%;

    margin-top:7px;

    border-radius:13px;

    box-shadow:none;

    transform:none;

  }

  .tp-zone-home .nav-download-menu:before{
display:none}

  .tp-zone-home .nav-merchant-link{

    border:1px solid #eee8f7;

    background:#faf8fd;

  }

  .tp-zone-home .nav-login-btn{
width:100%}

  .tp-zone-home .language-form{

    display:flex!important;

    width:100%;

    justify-content:center;

    margin-top:2px;

  }

  .tp-zone-home .language-form button{
flex:1;
min-height:38px}

}


/* Professional navbar v9: clear hierarchy and calmer action groups. */
.tp-zone-home .nav-links{
gap:0}

.tp-zone-home .nav-section{
display:flex;
align-items:center;
gap:4px}

.tp-zone-home .nav-section+.nav-section{
position:relative;
margin-left:13px;
padding-left:14px}

.tp-zone-home .nav-section+.nav-section:before{
content:"";
position:absolute;
left:0;
top:10px;
width:1px;
height:22px;
background:#e9e3f1}

.tp-zone-home .nav-download summary>svg,.tp-zone-home .nav-merchant-link>svg{
width:18px;
height:18px;
fill:none;
stroke:currentColor;
stroke-width:1.9;
stroke-linecap:round;
stroke-linejoin:round}

.tp-zone-home .nav-download-icon svg{
width:21px;
height:21px;
fill:currentColor}

.tp-zone-home .nav-merchant-link{
display:flex;
align-items:center;
gap:7px}

.tp-zone-home .nav-store-icon{
display:none}

.tp-zone-home .nav-login-btn{
padding:9px 12px;
color:#493c62;
background:transparent;
border:0;
border-radius:10px;
font-weight:750;
box-shadow:none}

.tp-zone-home .nav-login-btn:hover{
color:#6534c4;
background:#f5f0ff;
border-color:transparent;
transform:none;
box-shadow:none}

.tp-zone-home .nav-cta{
padding:10px 18px;
border-radius:11px}

.tp-zone-home .language-form{
padding:2px;
border:1px solid #e5def0;
border-radius:10px;
background:#f8f6fb}

.tp-zone-home .language-form button{
min-width:34px;
min-height:34px;
padding:5px 7px;
border-radius:8px}


@media(max-width:860px){

  .tp-zone-home .nav-section{
display:flex;
flex-direction:column;
width:100%;
gap:7px}

  .tp-zone-home .nav-section+.nav-section{
margin:0;
padding:7px 0 0;
border-top:1px solid #eee8f7}

  .tp-zone-home .nav-section+.nav-section:before{
display:none}

  .tp-zone-home .nav-section>a{
justify-content:center;
width:100%;
min-height:46px}

  .tp-zone-home .nav-utilities{
flex-direction:row}

}


/* 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);
}
