/* ===== Pahadiroutes Mega Nav ===== */

#pr-mega-header{
  transition: background-color .25s ease, box-shadow .25s ease, backdrop-filter .25s ease;
  background: rgba(255,255,255,0.06);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  border-bottom: 1px solid rgba(255,255,255,0.12);
}
#pr-mega-header[data-scrolled="true"],
#pr-mega-header[data-panel-open="true"]{
  background: rgba(255,255,255,0.92);
  border-bottom-color: rgba(20,27,43,0.08);
  box-shadow: 0 8px 30px rgba(20,27,43,0.08);
}
#pr-mega-header .pr-brand{ color:#fff; text-shadow:0 1px 6px rgba(0,0,0,0.35); transition: color .25s ease, text-shadow .25s ease; }
#pr-mega-header[data-scrolled="true"] .pr-brand,
#pr-mega-header[data-panel-open="true"] .pr-brand{ text-shadow:none; }
#pr-mega-header[data-scrolled="true"] .pr-brand,
#pr-mega-header[data-panel-open="true"] .pr-brand{ color: var(--pr-primary-color,#005c55); }

.pr-nav-link{
  display:flex; align-items:center; gap:2px;
  font-family:'Inter',sans-serif; font-weight:600; font-size:14px;
  padding:10px 14px; border-radius:9999px; cursor:pointer;
  background:transparent; border:0;
  color:rgba(255,255,255,0.88);
  transition: color .2s ease, background-color .2s ease;
}
#pr-mega-header[data-scrolled="true"] .pr-nav-link,
#pr-mega-header[data-panel-open="true"] .pr-nav-link{ color:#141b2b; }
.pr-nav-link:hover, .pr-nav-link:focus-visible{ background: rgba(0,0,0,0.06); }
#pr-mega-header:not([data-scrolled="true"]):not([data-panel-open="true"]) .pr-nav-link:hover{ background: rgba(255,255,255,0.14); }
.pr-nav-trigger[aria-expanded="true"]{ background: rgba(0,92,85,0.1); color:#005c55 !important; }
.pr-chevron{ font-size:18px !important; transition: transform .25s ease; }
.pr-nav-trigger[aria-expanded="true"] .pr-chevron{ transform: rotate(180deg); }

.pr-icon-btn{
  display:flex; align-items:center; justify-content:center;
  width:42px; height:42px; border-radius:9999px;
  color:rgba(255,255,255,0.95); background: rgba(20,27,43,0.28); border:0; cursor:pointer;
  transition: background-color .2s ease, color .2s ease;
}
#pr-mega-header[data-scrolled="true"] .pr-icon-btn,
#pr-mega-header[data-panel-open="true"] .pr-icon-btn{ color:#141b2b; background: rgba(20,27,43,0.06); }
.pr-icon-btn:hover{ background: rgba(20,27,43,0.42); }
#pr-mega-header[data-scrolled="true"] .pr-icon-btn:hover,
#pr-mega-header[data-panel-open="true"] .pr-icon-btn:hover{ background: rgba(20,27,43,0.1); }

.pr-btn-primary{
  display:inline-flex; align-items:center; gap:6px;
  background: var(--pr-primary-color,#005c55); color:#fff;
  font-weight:700; font-size:14px; padding:10px 22px; border-radius:9999px;
  transition: opacity .2s ease, transform .2s ease;
}
.pr-btn-primary:hover{ opacity:.9; transform: translateY(-1px); }

/* ===== Desktop Mega Panel ===== */
.pr-mega-shell{
  position:absolute; top:100%; left:0; right:0;
  background:#fff;
  border-top:1px solid rgba(20,27,43,0.06);
  box-shadow: 0 30px 60px -20px rgba(20,27,43,0.25);
  opacity:0; visibility:hidden; transform: translateY(-8px);
  transition: opacity .22s ease, transform .22s ease, visibility 0s linear .22s;
  max-height: calc(100vh - 80px);
  overflow-y:auto;
}
.pr-mega-shell.pr-open{
  opacity:1; visibility:visible; transform: translateY(0);
  transition: opacity .22s ease, transform .22s ease, visibility 0s linear 0s;
}
/* Some panels carry Tailwind's `grid`/`flex` utility class alongside the
   native `hidden` attribute; those utility classes are author-origin CSS
   and win the cascade over the browser's UA-stylesheet `[hidden]{display:
   none}` rule, which would otherwise leave a "hidden" panel visible. Force
   it explicitly so panel switching never shows two panels stacked. */
.pr-panel[hidden]{ display:none !important; }
.pr-panel-heading{ font-family:'Manrope',sans-serif; font-weight:800; font-size:13px; letter-spacing:.08em; text-transform:uppercase; color:#141b2b; margin-bottom:16px; }
.pr-filter-label{ font-size:11px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:#6e7977; margin-bottom:8px; }

.pr-cat-link{
  display:flex; align-items:center; justify-content:space-between;
  padding:10px 12px; border-radius:12px; font-size:14px; font-weight:600; color:#141b2b;
  transition: background-color .15s ease, padding-left .15s ease, color .15s ease;
}
.pr-cat-link:hover{ background:#f1f3ff; padding-left:16px; color:#005c55; }
.pr-cat-link .material-symbols-outlined{ opacity:0; transition: opacity .15s ease; }
.pr-cat-link:hover .material-symbols-outlined{ opacity:1; }

.pr-chip{
  font-size:12px; font-weight:600; padding:7px 14px; border-radius:9999px;
  border:1px solid #bdc9c6; color:#3e4947; background:#fff; cursor:pointer;
  transition: background-color .15s ease, color .15s ease, border-color .15s ease;
}
.pr-chip:hover{ border-color:#005c55; color:#005c55; }
.pr-chip[aria-pressed="true"]{ background:#005c55; color:#fff; border-color:#005c55; }
.pr-chip-accent{ background:#fff7ec; border-color:#ffddb8; color:#734700; }
.pr-chip-accent:hover{ border-color:#734700; color:#734700; }

.pr-promo-card{ border-radius:20px; overflow:hidden; border:1px solid #dce2f7; box-shadow:0 8px 24px rgba(20,27,43,.06); }
.pr-promo-img{ height:110px; background-size:cover; background-position:center; position:relative; }
.pr-promo-badge{ position:absolute; top:10px; left:10px; background:rgba(0,0,0,.55); color:#fff; font-size:10px; font-weight:700; letter-spacing:.05em; text-transform:uppercase; padding:5px 10px; border-radius:9999px; backdrop-filter: blur(6px); }
.pr-link-cta{ display:inline-flex; align-items:center; gap:4px; font-size:13px; font-weight:700; color:#005c55; }
.pr-link-cta:hover{ text-decoration:underline; }

.pr-mini-trek-card{ display:flex; gap:12px; align-items:center; padding:12px; border-radius:16px; border:1px solid #dce2f7; transition: box-shadow .2s ease, transform .2s ease; }
.pr-mini-trek-card:hover{ box-shadow:0 8px 24px rgba(20,27,43,.08); transform: translateY(-2px); }
.pr-mini-trek-img{ width:64px; height:64px; border-radius:12px; background-size:cover; background-position:center; flex-shrink:0; }

.pr-expedition-card{ display:block; border-radius:20px; overflow:hidden; border:1px solid #dce2f7; transition: box-shadow .25s ease, transform .25s ease; }
.pr-expedition-card:hover{ box-shadow:0 16px 32px rgba(20,27,43,.1); transform: translateY(-3px); }
.pr-expedition-img{ height:120px; background-size:cover; background-position:center; position:relative; transition: transform .4s ease; }
.pr-expedition-card:hover .pr-expedition-img{ transform: scale(1.06); }
.pr-diff-badge{ position:absolute; top:10px; left:10px; font-size:10px; font-weight:700; padding:5px 10px; border-radius:9999px; text-transform:uppercase; letter-spacing:.04em; }
.pr-diff-hard{ background:#ffdad6; color:#93000a; }
.pr-diff-mod{ background:#fff7ec; color:#734700; }

.pr-dest-card{ display:block; border-radius:20px; overflow:hidden; border:1px solid #dce2f7; transition: box-shadow .25s ease, transform .25s ease; }
.pr-dest-card:hover{ box-shadow:0 16px 32px rgba(20,27,43,.1); transform: translateY(-3px); }
.pr-dest-img{ height:110px; background-size:cover; background-position:center; position:relative; transition: transform .4s ease; }
.pr-dest-card:hover .pr-dest-img{ transform: scale(1.06); }
.pr-dest-featured{ box-shadow:0 0 0 2px #ffb95f inset; }

.pr-guide-link{ display:flex; flex-direction:column; align-items:center; gap:8px; text-align:center; padding:20px 8px; border-radius:16px; border:1px solid #dce2f7; font-size:12px; font-weight:700; color:#141b2b; transition: background-color .15s ease, border-color .15s ease, transform .15s ease; }
.pr-guide-link .material-symbols-outlined{ font-size:26px; color:#005c55; }
.pr-guide-link:hover{ background:#f1f3ff; border-color:#005c55; transform: translateY(-2px); }

.pr-blog-row{ display:flex; gap:14px; align-items:center; padding:8px; border-radius:14px; transition: background-color .15s ease; }
.pr-blog-row:hover{ background:#f1f3ff; }
.pr-blog-thumb{ width:76px; height:76px; border-radius:12px; background-size:cover; background-position:center; flex-shrink:0; }
.pr-author-card{ display:flex; align-items:center; gap:12px; padding:14px; border-radius:16px; border:1px solid #dce2f7; }
.pr-author-card img{ width:48px; height:48px; border-radius:9999px; object-fit:cover; }

.pr-mega-footer{ background:#f1f3ff; border-top:1px solid #dce2f7; }
.pr-qa-btn{ display:inline-flex; align-items:center; gap:6px; font-size:12px; font-weight:700; padding:9px 16px; border-radius:9999px; background:#fff; border:1px solid #dce2f7; color:#141b2b; transition: border-color .15s ease, color .15s ease, background-color .15s ease; }
.pr-qa-btn:hover{ border-color:#005c55; color:#005c55; }
.pr-qa-primary{ background:#005c55; color:#fff; border-color:#005c55; }
.pr-qa-primary:hover{ opacity:.9; color:#fff; }

/* ===== Backdrop ===== */
.pr-backdrop{ position:fixed; inset:0; background:rgba(20,27,43,0.45); opacity:0; pointer-events:none; transition: opacity .25s ease; z-index:190; }
.pr-backdrop.pr-open{ opacity:1; pointer-events:auto; }

/* ===== Search Overlay ===== */
.pr-search-overlay{ position:fixed; top:0; left:0; right:0; z-index:210; display:flex; justify-content:center; padding-top:100px; opacity:0; visibility:hidden; transform: translateY(-12px); transition: opacity .25s ease, transform .25s ease, visibility 0s linear .25s; }
.pr-search-overlay.pr-open{ opacity:1; visibility:visible; transform: translateY(0); transition: opacity .25s ease, transform .25s ease, visibility 0s linear 0s; }
.pr-search-box{ width:100%; max-width:640px; margin:0 16px; background:#fff; border-radius:24px; box-shadow:0 30px 60px rgba(20,27,43,.3); padding:24px; max-height:70vh; overflow-y:auto; }
.pr-search-input{ flex:1; border:0; outline:0; font-size:18px; font-family:'Inter',sans-serif; color:#141b2b; background:transparent; }
.pr-search-results{ display:flex; flex-direction:column; gap:4px; }
.pr-search-result{ display:flex; justify-content:space-between; align-items:center; gap:12px; padding:12px 10px; border-radius:12px; transition: background-color .15s ease; }
.pr-search-result:hover{ background:#f1f3ff; }
.pr-search-empty{ padding:24px 10px; text-align:center; color:#6e7977; font-size:14px; }

/* ===== Mobile Drawer ===== */
.pr-mobile-drawer{
  position:fixed; top:0; right:0; height:100%; width:88%; max-width:380px;
  background:#fff; z-index:220; display:flex; flex-direction:column;
  transform: translateX(100%); transition: transform .3s cubic-bezier(.4,0,.2,1);
  box-shadow: -20px 0 60px rgba(20,27,43,.2);
}
.pr-mobile-drawer.pr-open{ transform: translateX(0); }
.pr-mobile-link{ padding:12px; font-weight:700; font-size:15px; color:#141b2b; border-radius:12px; }
.pr-mobile-link:hover{ background:#f1f3ff; }
.pr-mobile-sublink{ display:block; padding:10px 12px 10px 20px; font-size:14px; color:#3e4947; border-radius:10px; }
.pr-mobile-sublink:hover{ background:#f1f3ff; color:#005c55; }

.pr-accordion-btn{ width:100%; display:flex; justify-content:space-between; align-items:center; padding:12px; font-weight:700; font-size:15px; color:#141b2b; border-radius:12px; }
.pr-accordion-btn:hover{ background:#f1f3ff; }
.pr-accordion-content{ max-height:0; overflow:hidden; opacity:0; transition: max-height .3s ease, opacity .25s ease; }
.pr-accordion.pr-open .pr-accordion-content{ opacity:1; }
.pr-accordion.pr-open .pr-accordion-btn .pr-chevron{ transform: rotate(180deg); }

/* ===== Floating Mobile CTA ===== */
.pr-floating-cta{ position:fixed; bottom:16px; left:16px; right:16px; z-index:150; display:flex; gap:10px; }
.pr-floating-btn{ display:flex; align-items:center; justify-content:center; gap:8px; height:52px; border-radius:16px; font-weight:700; font-size:14px; box-shadow:0 12px 28px rgba(20,27,43,.25); }
.pr-floating-btn-whatsapp{ width:52px; flex-shrink:0; background:#22C55E; color:#fff; }
.pr-floating-btn-book{ flex:1; background:#005c55; color:#fff; }

/* ===== Focus states ===== */
.pr-nav-link:focus-visible, .pr-icon-btn:focus-visible, .pr-chip:focus-visible,
.pr-btn-primary:focus-visible, .pr-cat-link:focus-visible, .pr-mobile-link:focus-visible,
.pr-mobile-sublink:focus-visible, .pr-accordion-btn:focus-visible, .pr-qa-btn:focus-visible{
  outline:2px solid #005c55; outline-offset:2px;
}

body.pr-scroll-lock{ overflow:hidden; }

@media (max-width: 1023px){
  .pr-mega-shell{ display:none; }
}
