/* ---- Homepage polish: the look of large travel sites (Airbnb, Booking, Klook).
   Same entrances and positions. Photography carries the weight; surfaces are white, flat, rounded;
   one soft shadow tier; translucency only where something sits over the film or floats. ---- */
:root{--tv-ink:#1f2420;--tv-body:#3e443f;--tv-muted:#6a706b;--tv-line:#e4e1da;--tv-soft:#f6f4ef;--tv-card:#ffffff;
  --tv-accent:#b01f2d;--tv-accent-2:#8f1824;--tv-r-card:20px;--tv-r-btn:12px;
  --tv-shadow:0 6px 16px rgba(20,24,20,.08),0 1px 2px rgba(20,24,20,.06);--tv-shadow-up:0 18px 40px -12px rgba(20,24,20,.22)}

/* Scrolled header and language pill: translucent glass like the hero shortcut pills */
html:not(.nexa-standalone) #nav.scrolled{background:rgba(20,20,18,.4);border-bottom:1px solid rgba(255,255,255,.18);-webkit-backdrop-filter:blur(16px) saturate(1.4);backdrop-filter:blur(16px) saturate(1.4)}
html:not(.nexa-standalone) #nav.scrolled .nav-links a,html:not(.nexa-standalone) #nav.scrolled .home-menu summary{color:#fff}
html:not(.nexa-standalone) #nav.scrolled .nav-links a:hover{color:rgba(255,255,255,.75)}
html:not(.nexa-standalone) #nav .nexa-language{background:rgba(20,20,18,.28);border-color:rgba(255,255,255,.42);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}

/* Hero search: the site's box becomes a light frosted panel holding a white pill search bar */
#hero .need-help{background:rgba(255,255,255,.05)!important;-webkit-backdrop-filter:blur(10px) saturate(1.3);backdrop-filter:blur(10px) saturate(1.3);border:1px solid rgba(255,255,255,.26)!important;border-radius:28px!important;box-shadow:0 30px 80px -30px rgba(0,0,0,.55)!important}
#hero .need-form{background:#fff;border-radius:999px;padding:6px 6px 6px 8px;box-shadow:var(--tv-shadow);align-items:center}
#hero .need-input-shell .need-input,#hero .need-input{background:transparent!important;border:0!important;color:var(--tv-ink)!important;caret-color:var(--tv-accent)!important;-webkit-backdrop-filter:none;backdrop-filter:none}
#hero .need-input::placeholder{color:var(--tv-muted)!important}
#hero .need-submit{border-radius:999px!important;background:var(--tv-accent)!important;min-height:46px;padding:0 22px!important;font-weight:600;transition:background .25s,transform .25s}
#hero .need-submit:hover{background:var(--tv-accent-2)!important}
#hero .hero-shortcuts a{border-radius:999px!important;background:rgba(255,255,255,.14)!important;border-color:rgba(255,255,255,.34)!important;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);font-weight:600;transition:background .3s,color .3s,transform .3s}
#hero .hero-shortcuts a:hover{background:#fff!important;color:var(--tv-ink)!important;transform:translateY(-1px)}
#hero .hero-stage-entry .journey-choice{background:rgba(255,255,255,.14)!important;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-color:rgba(255,255,255,.34)!important}
#hero .hero-stage-entry .journey-choice:hover,#hero .hero-stage-entry .journey-choice[aria-current="true"]{background:#fff!important;color:var(--tv-ink)!important}

/* Section headings: bold ink, modest size, kicker in accent */
section .section-head h2{color:var(--tv-ink);letter-spacing:-.02em}
section .section-head .kicker{color:var(--tv-accent)!important}
section .section-head p{color:var(--tv-muted)}

/* Cards: white, rounded, hairline; lift with one shadow on hover */
.action-card,.tool,.check-card,.journey-choice,.payment-card,.card-checker{background:var(--tv-card)!important;border:1px solid var(--tv-line)!important;border-radius:var(--tv-r-card)!important;box-shadow:none!important;transition:transform .45s cubic-bezier(.2,.8,.2,1),box-shadow .45s,border-color .3s!important}
.action-card:hover,.tool:hover,.check-card:hover,.journey-choice:hover{transform:translateY(-4px);box-shadow:var(--tv-shadow-up)!important;border-color:transparent!important}
.tool:hover{background:var(--tv-card)!important;color:var(--tv-ink)!important}
.tool:hover p{color:var(--tv-muted)!important}
.icon-box,.tool-icon{border-radius:14px!important;background:#fbeceb!important;color:var(--tv-accent)!important;transition:transform .45s cubic-bezier(.2,.8,.2,1),background .3s}
.action-card:hover .icon-box,.tool:hover .tool-icon{transform:scale(1.08);background:var(--tv-accent)!important;color:#fff!important}
.action-card.red,.action-card.dark{color:inherit}
.action-card .badge{border-radius:999px}
.check-item{border-radius:12px}
.check-item:hover{background:var(--tv-soft)}
.tag{border-radius:999px!important}

/* Dark surfaces keep dark glass so their text stays readable */
.emergency-card{background:rgba(255,255,255,.06)!important;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.14)!important;border-radius:var(--tv-r-card)!important;transition:transform .45s cubic-bezier(.2,.8,.2,1),background .3s!important}
.emergency-card:hover{background:rgba(255,255,255,.1)!important;transform:translateY(-3px)}
.editorial-entry-card{border-radius:28px!important;overflow:hidden;transition:transform .5s cubic-bezier(.2,.8,.2,1),box-shadow .5s!important}
.editorial-entry-card:hover{transform:translateY(-4px);box-shadow:0 30px 60px -30px rgba(0,0,0,.5)}

/* Buttons and links */
.guide-btn,.store-btn,.checklist-print-link,.cc-btn{border-radius:var(--tv-r-btn)!important}
.tab{border-radius:999px!important}

@media (prefers-reduced-motion:reduce){.action-card,.tool,.check-card{transition:none!important}}
#emergency .section-head h2{color:#fff!important}
#emergency .section-head p{color:rgba(255,255,255,.66)!important}
/* Shortcut pills: one row. On phones the row scrolls slowly on its own and can also be swiped by hand. */
#hero .hero-shortcuts.marquee{display:block!important;position:relative;overflow-x:auto;overflow-y:hidden;height:auto;min-height:52px;padding:6px 0;-webkit-overflow-scrolling:touch;scrollbar-width:none;overscroll-behavior-x:contain}
#hero .hero-shortcuts.marquee::-webkit-scrollbar{display:none}
#hero .hero-shortcuts.marquee .track{display:flex;align-items:center;gap:8px;width:max-content}
#hero .hero-shortcuts.marquee a{flex:0 0 auto;height:40px;min-height:0!important;padding:0 18px!important;line-height:1;box-sizing:border-box}

/* Hero entrance */
@media (prefers-reduced-motion:no-preference){
  #hero .hero-content>*{animation:polishRise .9s cubic-bezier(.2,.8,.2,1) both}
  #hero .hero-content>*:nth-child(2){animation-delay:.08s}#hero .hero-content>*:nth-child(3){animation-delay:.16s}
  #hero .hero-content>*:nth-child(4){animation-delay:.24s}#hero .hero-content>*:nth-child(5){animation-delay:.34s}
  #hero .hero-content>*:nth-child(n+6){animation-delay:.44s}
}
@keyframes polishRise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}

/* Restrained hero text: heading kept for screen readers, stage numbers hidden */
#hero .need-head{position:absolute;width:1px;height:1px;margin:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
#hero .hero-stage-entry .journey-choice>span{display:none}
#hero .need-help{margin-top:28px}

/* Menu and language dropdowns: same light frosted glass as the hero search panel */
#nav .home-menu>div,#nav .nexa-language-menu{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.26);-webkit-backdrop-filter:blur(10px) saturate(1.3);backdrop-filter:blur(10px) saturate(1.3);box-shadow:0 30px 80px -30px rgba(0,0,0,.55)}
#nav .home-menu>div a,#nav .nexa-language-option{color:#fff}
#nav .nexa-language-option:hover,#nav .nexa-language-option:focus-visible,#nav .nexa-language-option.active{color:#fff;background:rgba(255,255,255,.16)}
/* Below the film the page is light, so the dropdown glass gets a dark tint to keep white text readable */
html.nav-past-hero #nav .home-menu>div,html.nav-past-hero #nav .nexa-language-menu{background:rgba(20,20,18,.78);-webkit-backdrop-filter:blur(18px) saturate(1.3);backdrop-filter:blur(18px) saturate(1.3)}
