/* Capsula fixă a paginilor publice principale.
   Se încarcă după stilurile specifice fiecărei listări pentru ca meniul și
   identitatea paginii să aibă același contract la orice lățime desktop. */
@media (min-width: 992px) {
  /* Include și clasa comună în selector: homepage-desktop.css are un override
     istoric cu două clase și `!important`; fără aceeași specificitate, primul
     card pornește la y=0 și este acoperit de capsula fixă. */
  body.public-main-desktop-shell.public-desktop-surface {
    --public-desktop-shell-top: 10px;
    --public-desktop-menu-height: 62px;
    --public-desktop-context-height: 50px;
    --public-desktop-header-bottom: calc(var(--public-desktop-shell-top) + var(--public-desktop-menu-height) + var(--public-desktop-context-height));
    --public-desktop-rail-top: var(--public-desktop-header-bottom);
    --public-desktop-fixed-offset: var(--public-desktop-header-bottom);
    --public-desktop-column-top-padding: 12px;
    padding-top: var(--public-desktop-fixed-offset) !important;
  }

  /* Containerul începe direct la baza capsulei. Înainte, offsetul body-ului
     și paddingul istoric al fiecărei listări se adunau, iar railul/filtrele
     urcau 18–30px până ajungeau în poziția sticky. */
  body.public-main-desktop-shell.public-desktop-surface main.container {
    padding-top: 0 !important;
  }

  /* Feedbackul începe direct cu două carduri de conținut, deci folosește
     același ritm de 12px ca reviewurile și coloanele listărilor. */
  body.public-main-desktop-shell.public-desktop-surface.public-surface--feedback main.feedback-page-main.container {
    padding-top: var(--public-desktop-column-top-padding) !important;
  }

  /* Indexul editorial începe cu un card de introducere, nu cu un toolbar
     sticky. Păstrăm aici ritmul vizual comun de 12px sub capsula fixă. */
  body.public-main-desktop-shell.public-desktop-surface.public-surface--reviews main.editorial-review-index-shell.container {
    padding-top: var(--public-desktop-column-top-padding) !important;
  }

  /* Prima muchie vizibilă este comună ambelor coloane: railurile au deja
     12px, iar feedul Acasă și toolbarurile listărilor îl folosesc acum pe
     același, fără să mute poziția sticky a containerelor. */
  body.public-main-desktop-shell .homepage-desktop-feed-column .home-feed {
    padding-top: var(--public-desktop-column-top-padding);
  }

  /* Selectorul de ordine are deja 12px margin sub el. Când precede feedul,
     anulăm paddingul structural al feedului ca distanța față de primul card
     să fie aceeași cu distanța față de reviewul aflat deasupra. */
  body.public-main-desktop-shell .homepage-desktop-feed-column .home-feed-mode + .home-feed {
    padding-top: 0;
  }

  /* Slotul editorial este randat înaintea `.home-feed`, deci nu moștenea
     paddingul comun de mai sus: marginea lui de 6px lăsa cardul prea aproape
     de capsula fixă. Wrapperul stabilește acum muchia la exact 12px, iar
     marginea copilului este anulată ca să nu se adune ori să colapseze. */
  body.public-main-desktop-shell .homepage-desktop-feed-column .home-editorial-slot--top {
    padding-top: var(--public-desktop-column-top-padding);
  }

  body.public-main-desktop-shell .homepage-desktop-feed-column .home-editorial-slot--top .editorial-review-spotlight--home {
    margin-top: 0;
  }

  /* Feedul principal folosește scrollul documentului, pe când railul din
     dreapta se oprește prin sticky la baza capsulei. Acest strat păstrează
     aceeași limită vizuală pentru coloana din stânga: cardurile continuă să
     curgă natural, dar nu mai transpar prin meniul fix. */
  body.public-main-desktop-shell::before {
    content: "";
    position: fixed;
    z-index: 1048;
    top: 0;
    right: 0;
    left: 0;
    height: var(--public-desktop-rail-top);
    pointer-events: none;
    background: var(--listing-page-background, #f6f7fb);
  }

  body.public-main-desktop-shell .navbar-glass,
  body.public-main-desktop-shell .navbar-glass.scrolled,
  body.public-main-desktop-shell .navbar-glass.is-feed-header-hidden {
    position: fixed !important;
    z-index: 1050 !important;
    top: var(--public-desktop-shell-top) !important;
    left: 50% !important;
    width: min(1100px, calc(100% - 32px));
    min-height: var(--public-desktop-menu-height) !important;
    height: var(--public-desktop-menu-height) !important;
    border: 1px solid rgba(55, 48, 77, 0.11) !important;
    border-bottom: 0 !important;
    border-radius: 22px 22px 0 0 !important;
    background: rgba(255, 255, 255, 0.96) !important;
    box-shadow: 0 12px 32px rgba(31, 25, 65, 0.1) !important;
    transform: translate3d(-50%, 0, 0) !important;
    transition: none !important;
    will-change: auto !important;
    backdrop-filter: blur(20px) saturate(135%) !important;
    -webkit-backdrop-filter: blur(20px) saturate(135%) !important;
  }

  /* „Mai multe” este un drawer global, nu o destinație contextuală. Cât timp
     este deschis rămâne vizibil numai rândul principal al navigației; bara de
     identitate a suprafeței dispare, iar drawerul începe imediat sub navbar. */
  body.public-main-desktop-shell.more-menu-is-open::before {
    height: calc(var(--public-desktop-shell-top) + var(--public-desktop-menu-height));
  }

  body.public-main-desktop-shell.more-menu-is-open .navbar-glass,
  body.public-main-desktop-shell.more-menu-is-open .navbar-glass.scrolled,
  body.public-main-desktop-shell.more-menu-is-open .navbar-glass.is-feed-header-hidden {
    border-bottom: 1px solid rgba(55, 48, 77, 0.11) !important;
    border-radius: 22px !important;
  }

  body.public-main-desktop-shell.more-menu-is-open .public-desktop-hero {
    display: none !important;
  }

  body.public-main-desktop-shell .navbar-glass > .container {
    width: 100%;
    max-width: none !important;
    grid-template-rows: var(--public-desktop-menu-height);
    gap: 12px;
    height: var(--public-desktop-menu-height);
    padding: 0 14px !important;
  }

  body.public-main-desktop-shell .navbar-glass .brand-text,
  body.public-main-desktop-shell .navbar-glass.scrolled .brand-text {
    font-size: 1.32rem !important;
  }

  body.public-main-desktop-shell .navbar-glass .header-desktop-nav {
    padding: 3px 6px;
    border-radius: 14px;
  }

  body.public-main-desktop-shell .navbar-glass .header-desktop-nav-link {
    gap: 6px;
    min-height: 36px;
    padding: 7px 9px;
    border-radius: 10px;
    font-size: 0.78rem;
  }

  body.public-main-desktop-shell .navbar-glass #btn-dice-randomizer,
  body.public-main-desktop-shell .navbar-glass #btn-global-search,
  body.public-main-desktop-shell .navbar-glass .header-account-btn {
    width: 38px !important;
    min-width: 38px !important;
    height: 38px !important;
    min-height: 38px !important;
  }

  /* Al doilea rând este hero-ul existent, redus la o bară contextuală albă.
     Rămâne un H1 real în document, dar nu mai concurează vizual cu meniul. */
  body.public-main-desktop-shell .public-desktop-hero {
    position: fixed !important;
    z-index: 1049 !important;
    top: calc(var(--public-desktop-shell-top) + var(--public-desktop-menu-height)) !important;
    left: 50% !important;
    display: flex !important;
    width: min(1100px, calc(100% - 32px));
    min-height: var(--public-desktop-context-height) !important;
    height: var(--public-desktop-context-height) !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden;
    border: 1px solid rgba(55, 48, 77, 0.11) !important;
    border-top-color: rgba(55, 48, 77, 0.075) !important;
    border-radius: 0 0 22px 22px !important;
    background: rgba(255, 255, 255, 0.96) !important;
    box-shadow: 0 14px 32px rgba(31, 25, 65, 0.1) !important;
    transform: translate3d(-50%, 0, 0);
    transition: none !important;
    will-change: auto !important;
    backdrop-filter: blur(20px) saturate(135%);
    -webkit-backdrop-filter: blur(20px) saturate(135%);
  }

  body.public-main-desktop-shell .public-desktop-hero::before,
  body.public-main-desktop-shell .public-desktop-hero::after,
  body.public-main-desktop-shell .public-desktop-hero .home-hero-bg-picture,
  body.public-main-desktop-shell .public-desktop-hero .home-hero-overlay {
    display: none !important;
  }

  body.public-main-desktop-shell .public-desktop-hero .hero-section-wrapper {
    display: flex !important;
    align-items: center !important;
    width: 100%;
    height: 100%;
    padding: 0 !important;
    text-align: left !important;
  }

  body.public-main-desktop-shell .public-desktop-hero > .hero-section-wrapper > .container {
    display: grid !important;
    grid-template-columns: 30px max-content minmax(0, 1fr);
    grid-template-rows: var(--public-desktop-context-height);
    align-items: center !important;
    justify-content: initial !important;
    gap: 10px;
    width: 100%;
    max-width: none !important;
    min-height: var(--public-desktop-context-height) !important;
    height: var(--public-desktop-context-height) !important;
    padding: 0 16px !important;
  }

  body.public-main-desktop-shell .public-desktop-hero .public-hero-symbol-watermark {
    position: static !important;
    grid-column: 1;
    width: 30px !important;
    height: 30px !important;
    padding: 6px;
    border-radius: 10px;
    color: var(--public-surface-accent) !important;
    stroke: var(--public-surface-accent) !important;
    stroke-width: 2.15px !important;
    background: color-mix(in srgb, var(--public-surface-accent) 10%, white);
    filter: none !important;
    transform: none !important;
  }

  body.public-main-desktop-shell .public-desktop-hero .hero-large-title {
    grid-column: 2;
    overflow: hidden;
    margin: 0 !important;
    color: #211d2e !important;
    font-size: 1rem !important;
    font-weight: 780 !important;
    line-height: 1.2 !important;
    letter-spacing: -0.018em !important;
    text-overflow: ellipsis;
    white-space: nowrap;
    background: none !important;
    -webkit-background-clip: border-box !important;
    -webkit-text-fill-color: #211d2e !important;
  }

  body.public-main-desktop-shell .public-desktop-hero .listing-desktop-hero-subtitle {
    grid-column: 3;
    overflow: hidden;
    min-width: 0;
    margin: 0 0 0 2px !important;
    padding-left: 12px;
    border-left: 1px solid rgba(55, 48, 77, 0.11);
    color: #777185 !important;
    font-size: 0.72rem !important;
    font-weight: 560 !important;
    line-height: 1.25 !important;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  body.public-main-desktop-shell .sticky-filters-wrapper.event-desktop-tools {
    top: var(--public-desktop-fixed-offset) !important;
    padding-top: var(--public-desktop-column-top-padding) !important;
  }

  body.public-main-desktop-shell .homepage-desktop-rail,
  body.public-main-desktop-shell.event-listing-page .places-split-layout.events-split .calendar-column,
  body.public-main-desktop-shell.public-surface--places .places-split-layout.places-split .map-column,
  body.public-main-desktop-shell.public-surface--promotions .promotions-desktop-rail {
    top: var(--public-desktop-rail-top) !important;
    height: calc(100dvh - var(--public-desktop-rail-top)) !important;
  }

  /* În modul extins, layoutul începe deja la baza capsulei fixe. Regula
     generică de rail de mai sus nu trebuie să mai adauge încă o dată întregul
     offset al headerului: păstrăm doar ritmul de 12px sus și jos. Selectorul
     comun acoperă atât „Unde ieșim”, cât și „Shop&Life”. */
  body.public-main-desktop-shell.public-surface--places.places-desktop-map-expanded
    .places-split-layout.places-split.is-map-expanded .map-column {
    top: var(--public-desktop-column-top-padding) !important;
    height: calc(100dvh - var(--public-desktop-fixed-offset) - var(--public-desktop-column-top-padding) - var(--public-desktop-column-top-padding)) !important;
  }

  body.public-main-desktop-shell main [id] {
    scroll-margin-top: calc(var(--public-desktop-fixed-offset) + 12px);
  }
}

@media (min-width: 992px) and (max-width: 1119.98px) {
  body.public-main-desktop-shell .navbar-glass > .container {
    gap: 8px;
    padding-inline: 10px !important;
  }

  body.public-main-desktop-shell .navbar-glass .header-desktop-nav {
    gap: 3px !important;
  }

  body.public-main-desktop-shell .navbar-glass .header-desktop-nav-link {
    gap: 5px;
    padding-inline: 7px;
    font-size: 0.72rem;
  }

  body.public-main-desktop-shell .navbar-glass .header-desktop-nav-link .lucide {
    width: 15px;
    height: 15px;
    flex-basis: 15px;
  }
}
