/* Official Machu Picture Travel palette sampled from the supplied logo. */
:root {
  --teal:#202868; --teal-d:#19215b; --teal-dd:#141b4e; --teal-l:#33418d;
  --coral:#f7bd22; --coral-d:#e5aa12; --coral-soft:#fff6dc;
  --gold:#f7bd22; --gold-d:#906300; --price:#6d4d00;
  --ink:#20254f; --ink-2:#3b4369; --muted:#586079; --muted-l:#7a8298;
  --line:#dfe3ef; --line-2:#ebedf5; --bg-soft:#f7f8fc; --bg-soft2:#eef0f9;
  --shadow:0 18px 40px rgba(25,33,91,.13); --shadow-sm:0 8px 22px rgba(25,33,91,.09);
}
body { color:var(--ink); background:#fff; }
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible { outline:3px solid #b78000; outline-offset:2px; }
.main-nav a:hover,.main-nav a.active { color:#202868; }
.main-nav a.active::after { background:#f7bd22; }
.main-nav { gap:15px; }
.main-nav a { font-size:13px; }
.site-header { border-bottom:3px solid #f7bd22; }
.app-site .hero { background:linear-gradient(90deg,rgba(20,27,78,.86),rgba(20,27,78,.38) 62%,rgba(20,27,78,.12)),var(--hero,url('https://images.unsplash.com/photo-1526392060635-9d6019884377?auto=format&fit=crop&w=2000&q=80')) center/cover; }
.app-site .page-hero { background:linear-gradient(rgba(20,27,78,.62),rgba(20,27,78,.65)),var(--phero,url('https://images.unsplash.com/photo-1526392060635-9d6019884377?auto=format&fit=crop&w=2000&q=80')) center/cover; }
.site-footer { background:#141b4e; }
.countdown,.offer-tag,.ofr-badge,.ofr-price .old { display:none !important; }
#detail-itinerary { display:none !important; }
.footer-brand p,.footer-col a,.footer-col p { color:#d7ddf4; }
.footer-legal { margin-top:18px; padding-top:14px; border-top:1px solid rgba(255,255,255,.22); }
.footer-legal h4 { margin:0 0 8px; }
.footer-legal a { display:block; margin:7px 0; line-height:1.45; }
.footer-brand > img { width:min(100%,175px); height:auto; filter:none; background:#fff; border-radius:8px; }
.footer-brand a[href="/libro-reclamaciones.html"] img { height:auto; filter:none; border-radius:4px; }
.site-footer h4 { color:#fff; }
.about-intro .ai-logo { background-color:#fff; }
.top { background:#141b4e; border-bottom:3px solid #f7bd22; }
.top img { width:58px; height:58px; object-fit:contain; background:#fff; border-radius:6px; }
.top .top-brand { display:flex; align-items:center; gap:12px; }
.top a { color:#fff; }
.eyebrow { color:#806000; }
.hero { background:#eef0f9; border-color:#cbd2e9; }
.navlinks a { border-color:#cbd2e9; color:#202868; }
.navlinks a:hover { background:#fff6dc; }
body:not(.app-site) .card a { color:#202868; }
body:not(.app-site) .card a:hover { color:#906300; }
.esnna { background:#202868; }
.esnna a { color:#ffe285; }
.esnna .number { color:#202868; }
.btn { background:#202868; color:#fff; }
.btn:hover { background:#19215b; color:#fff; }
.btn.secondary { background:#fff6dc; color:#202868; }
.btn.btn-coral,.footer-newsletter .btn,.header-cta { background:#f7bd22; border-color:#f7bd22; color:#141b4e; }
.btn.btn-coral:hover,.footer-newsletter .btn:hover,.header-cta:hover { background:#e5aa12; color:#141b4e; }
.language-control { display:flex; justify-content:flex-end; align-items:center; gap:10px; min-height:32px; padding:3px max(16px,calc((100vw - 1240px)/2 + 24px)); background:#141b4e; color:#fff; font:600 12px/1.3 Inter,Arial,sans-serif; }
.language-control span { color:#e8eaf5; }
.language-control button { border:1px solid #7c86ba; border-radius:4px; background:transparent; color:#fff; padding:3px 8px; font:700 12px/1 Inter,Arial,sans-serif; cursor:pointer; }
.language-control button[aria-pressed="true"] { background:#f7bd22; border-color:#f7bd22; color:#141b4e; }
.language-control button:hover { border-color:#ffe17a; }
@media(max-width:1100px) {
  .site-header .main-nav { position:absolute; top:76px; left:0; right:0; background:#fff; flex-direction:column; gap:0; padding:8px 0; border-bottom:1px solid var(--line); box-shadow:var(--shadow); display:none; margin:0; z-index:70; }
  .site-header .main-nav.open { display:flex; }
  .site-header .main-nav a { padding:14px 24px; border-bottom:1px solid var(--line-2); font-size:14px; }
  .site-header .nav-toggle { display:block; }
  .site-header .header-cta { display:none; }
}
@media(max-width:600px) {
  .language-control { padding-right:14px; }
  .site-header .header-inner { height:88px; }
  .site-header .main-nav { top:88px; }
  .brand-official img { width:72px; height:72px; }
  .about-intro > div:last-child { padding:0 20px; }
}

/* One-row navigation. Its background belongs to the page underneath. */
html.mpt-locale-pending body.app-site { visibility:hidden; }
.app-site .site-header {
  position:sticky; top:0; z-index:60; isolation:isolate;
  background:transparent; border-bottom:1px solid rgba(255,255,255,.58);
  box-shadow:none; transition:background-color .25s ease,box-shadow .25s ease,border-color .25s ease;
}
.app-site .site-header::before {
  content:none; display:none;
}
.app-site .site-header.is-scrolled {
  background:transparent; border-bottom-color:#dce2f0;
  box-shadow:none; backdrop-filter:none;
}
.app-site .site-header.is-scrolled::before { opacity:0; }
.app-site .site-header .header-inner { max-width:1380px; height:86px; gap:12px; }
.app-site .brand-official img { width:62px; height:62px; object-fit:contain; padding:3px; background:#fff; border-radius:10px; box-shadow:0 5px 16px rgba(0,0,0,.19); }
.app-site .main-nav { gap:14px; margin-left:auto; }
.app-site .main-nav a { color:#fff; font-size:12.8px; white-space:nowrap; text-shadow:0 1px 7px rgba(0,0,0,.3); }
.app-site .main-nav a:hover,.app-site .main-nav a.active { color:#ffe48c; }
.app-site .main-nav a.active::after { background:#f7bd22; }
.app-site .site-header.is-scrolled .main-nav a { color:#202868; text-shadow:none; }
.app-site .site-header.is-scrolled .main-nav a:hover,.app-site .site-header.is-scrolled .main-nav a.active { color:#906300; }
.app-site .main-nav .mobile-account-link,.app-site .main-nav .mobile-reserve-link { display:none; }
.app-site .site-header .header-language { flex:none; gap:5px; min-height:0; padding:0; background:transparent; color:#fff; white-space:nowrap; }
.app-site .site-header .header-language span { color:inherit; font-size:11px; }
.app-site .site-header .header-language button { min-width:29px; padding:6px 7px; border-color:rgba(255,255,255,.7); border-radius:5px; color:#fff; }
.app-site .site-header .header-language button[aria-pressed="true"] { color:#141b4e; border-color:#f7bd22; }
.app-site .site-header.is-scrolled .header-language { color:#202868; }
.app-site .site-header.is-scrolled .header-language button { color:#202868; border-color:#8b94bd; }
.app-site .site-header.is-scrolled .header-language button[aria-pressed="true"] { color:#141b4e; border-color:#f7bd22; }
.app-site .site-header .header-account { color:#fff; border-color:rgba(255,255,255,.72); white-space:nowrap; }
.app-site .site-header .header-account:hover { color:#141b4e; background:#fff; }
.app-site .site-header.is-scrolled .header-account { color:#202868; border-color:#cbd2e9; }
.app-site .site-header.is-scrolled .header-account:hover { background:#eef0f9; }
.app-site .site-header .header-cta { margin-left:0; white-space:nowrap; }
.app-site .site-header .nav-toggle { color:#fff; }
.app-site .site-header.is-scrolled .nav-toggle { color:#202868; }
@media(max-width:1100px) {
  .app-site .site-header .main-nav { position:absolute; top:100%; left:0; right:0; display:none; margin:0; padding:8px 20px 18px; flex-direction:column; gap:0; background:#fff; border-bottom:1px solid #dfe3ef; box-shadow:0 20px 35px rgba(20,27,78,.18); z-index:70; }
  .app-site .site-header .main-nav.open { display:flex; }
  .app-site .site-header .main-nav a,.app-site .site-header.is-scrolled .main-nav a { color:#202868; font-size:14px; text-shadow:none; padding:12px 8px; border-bottom:1px solid #ebedf5; }
  .app-site .site-header .main-nav .mobile-account-link,.app-site .site-header .main-nav .mobile-reserve-link { display:block; }
  .app-site .site-header .main-nav .mobile-reserve-link { margin-top:10px; border:0; border-radius:8px; background:#f7bd22; text-align:center; font-weight:700; }
  .app-site .site-header .nav-toggle { display:block; order:2; margin-left:0; }
  .app-site .site-header .header-language { order:1; margin-left:auto; }
  .app-site .site-header .header-account,.app-site .site-header .header-cta { display:none; }
}
@media(max-width:600px) {
  .app-site .site-header .header-inner { height:76px; gap:8px; padding:0 16px; }
  .app-site .brand-official img { width:56px; height:56px; }
  .app-site .site-header .header-language span { display:none; }
  .app-site .site-header .header-language button { padding:6px; }
}
@media(prefers-reduced-motion:reduce) {
  .app-site .site-header,.app-site .site-header::before { transition:none; }
}

/* Legacy legal navigation also stays transparent. */
body:not(.app-site) .top { position:sticky; top:0; z-index:60; min-height:78px; flex-direction:row; align-items:center; background:transparent; border-bottom:1px solid rgba(255,255,255,.58); }
body:not(.app-site) .top.is-scrolled { background:transparent; color:#202868; border-bottom-color:#dce2f0; box-shadow:none; }
body:not(.app-site) .top.is-scrolled a { color:#202868; }
body:not(.app-site) .top .language-control { min-height:0; margin-left:auto; padding:0; background:transparent; }
body:not(.app-site) .top.is-scrolled .language-control,.top.is-scrolled .language-control span { color:#202868; }
body:not(.app-site) .top.is-scrolled .language-control button { color:#202868; border-color:#8b94bd; }
body:not(.app-site) .top.is-scrolled .language-control button[aria-pressed="true"] { color:#141b4e; border-color:#f7bd22; }
@media(max-width:700px) {
  body:not(.app-site) .top { gap:10px; padding:9px 14px; }
  body:not(.app-site) .top .language-control { padding:0; }
  body:not(.app-site) .top .language-control span { display:none; }
  body:not(.app-site) .top strong { font-size:14px; }
  body:not(.app-site) .top a { white-space:nowrap; }
}
@media(max-width:480px) {
  body:not(.app-site) .top-brand img { width:44px; height:44px; }
  body:not(.app-site) .top > a { font-size:0; }
  body:not(.app-site) .top > a::before { content:"←"; font-size:24px; }
}
