/* ==========================================================================
   Bariloche Experience — estilos especificos de Detalle de Excursion
   Carga despues de be-style.css
   ========================================================================== */

.top-bar{background:var(--be-verde-oscuro); color:rgba(255,255,255,.8);}
.top-bar a{color:rgba(255,255,255,.8);}
.top-bar a:hover{color:var(--be-verde);}

/* ===== NAVBAR (solido siempre en esta pagina interna) ===== */
#mainNav{
  position:sticky; top:0; left:0; right:0; z-index:1000;
  padding:12px 0; background:#fff;
  box-shadow:0 4px 24px rgba(0,0,0,.06);
}
#mainNav .container{max-width:1500px; padding-left:2rem; padding-right:2rem;}
#mainNav .nav-link{font-weight:500; font-size:.78rem; text-transform:uppercase; color:var(--be-verde-oscuro); margin:0 10px; white-space:nowrap;}
#mainNav .nav-link:hover{color:var(--be-lago);}
.cart-icon-nav{color:var(--be-verde-oscuro); margin-right:.5rem; position:relative;}

/* ===== BREADCRUMB ===== */
.breadcrumb-bar{background:var(--be-hueso); padding:14px 0; font-size:.85rem;}
.breadcrumb-bar a{color:#6b6a63; text-decoration:none;}
.breadcrumb-bar a:hover{color:var(--be-verde-oscuro);}
.breadcrumb-bar .current{color:var(--be-verde-oscuro); font-weight:600;}

/* ===== HERO CHICO (sin foto, solo titulo) ===== */
.hero-sm{
  padding:2.2rem 0 1.6rem;
  background:#fff;
}

/* ===== GALERIA ===== */
.gallery-main{border-radius:8px; overflow:hidden; height:440px; position:relative; cursor:pointer;}
.gallery-main img{width:100%; height:100%; object-fit:cover;}
.gallery-thumb{border-radius:6px; overflow:hidden; height:210px; cursor:pointer; position:relative;}
.gallery-thumb img{width:100%; height:100%; object-fit:cover; transition:.3s ease;}
.gallery-thumb:hover img{transform:scale(1.06);}
.zoom-hint{
  position:absolute; top:14px; right:14px; width:34px; height:34px; border-radius:50%;
  background:rgba(0,0,0,.45); color:#fff; display:flex; align-items:center; justify-content:center;
  opacity:0; transition:.25s ease;
}
.gallery-main:hover .zoom-hint, .gallery-thumb:hover .zoom-hint{opacity:1;}
#photoModal .modal-content{background:transparent; border:none;}
#photoModal img{width:100%; border-radius:8px;}
#photoModal .btn-close{filter:invert(1); position:absolute; top:-40px; right:0; opacity:1;}
#photoModal .photo-nav{
  position:absolute; top:50%; transform:translateY(-50%); width:44px; height:44px; border-radius:50%;
  background:rgba(0,0,0,.5); color:#fff; display:flex; align-items:center; justify-content:center;
  border:none; font-size:1.3rem; z-index:2;
}
#photoModal .photo-nav:hover{background:rgba(0,0,0,.75);}
#photoModal .photo-nav.prev{left:-16px;}
#photoModal .photo-nav.next{right:-16px;}
#photoModal .photo-counter{
  position:absolute; bottom:-36px; left:50%; transform:translateX(-50%);
  color:#fff; font-size:.85rem; background:rgba(0,0,0,.5); padding:.25rem .75rem; border-radius:20px;
}
@media(max-width:576px){
  #photoModal .photo-nav.prev{left:6px;}
  #photoModal .photo-nav.next{right:6px;}
}

/* ===== INFO RAPIDA ===== */
.quick-fact{border-right:1px solid #eeece5; padding:0 1.2rem;}
.quick-fact:last-child{border-right:none;}
.quick-fact i{color:var(--be-verde-oscuro); font-size:1.3rem;}
.quick-fact .label{font-size:.72rem; text-transform:uppercase; letter-spacing:.06em; color:#8a8578;}
.quick-fact .value{font-weight:700; font-size:.95rem;}

/* ===== TABS DE CONTENIDO ===== */
.detail-tabs .nav-link{
  color:#8a8578; font-weight:600; border:none; border-bottom:2px solid transparent;
  padding:.8rem 0; margin-right:2rem; border-radius:0;
}
.detail-tabs .nav-link.active{color:var(--be-verde-oscuro); border-bottom-color:var(--be-verde);}
.include-list li{padding:.4rem 0; display:flex; gap:.6rem; align-items:flex-start;}
.include-list.yes i{color:#4a9d5f;}
.include-list.no i{color:#c95b5b;}

.accordion-item{border:1px solid #eeece5; border-radius:6px !important; margin-bottom:.7rem; overflow:hidden;}
.accordion-button{font-weight:600; font-family:'Poppins',sans-serif; background:#fff;}
.accordion-button:not(.collapsed){background:var(--be-hueso); color:var(--be-verde-oscuro); box-shadow:none;}
.accordion-button:focus{box-shadow:none;}

/* ===== BOOKING CARD (sticky) ===== */
.booking-card{
  background:#fff; border:1px solid #eeece5; border-radius:8px;
  box-shadow:0 20px 50px rgba(0,0,0,.08); padding:1.8rem; position:sticky; top:100px;
}
.booking-card .price-tag{font-family:'Poppins',sans-serif; font-weight:700; font-size:2rem; color:var(--be-verde-oscuro);}
.booking-card .price-old{font-size:1rem; color:#a8a49a; text-decoration:line-through; font-weight:400;}

.date-list{max-height:280px; overflow-y:auto; padding-right:.3rem;}
.date-option{
  display:flex; justify-content:space-between; align-items:center;
  border:1.5px solid #eeece5; border-radius:6px; padding:.7rem .9rem; margin-bottom:.55rem;
  cursor:pointer; transition:.2s ease;
}
.date-option:hover{border-color:var(--be-verde);}
.date-option.selected{border-color:var(--be-verde-oscuro); background:var(--be-hueso);}
.date-option.agotado{opacity:.5; cursor:not-allowed; background:#fafaf8;}
.date-option .d-day{font-weight:700; font-size:.92rem;}
.date-option .d-sub{font-size:.75rem; color:#8a8578;}
.date-option .cupos-badge{
  font-size:.7rem; font-weight:700; padding:.25rem .55rem; border-radius:20px;
}
.cupos-badge.ok{background:rgba(74,157,95,.12); color:#3f8a52;}
.cupos-badge.bajo{background:rgba(214,158,46,.15); color:#b07d1f;}
.cupos-badge.agotado{background:#eeece5; color:#8a8578;}

/* ===== CALENDARIO ===== */
.calendar-card{border:1px solid #eeece5; border-radius:8px; padding:1rem;}
.calendar-header{display:flex; align-items:center; justify-content:space-between; margin-bottom:.8rem;}
.calendar-header span{font-weight:600; font-size:.95rem; text-transform:capitalize;}
.calendar-header button{
  width:30px; height:30px; border:1px solid #eeece5; background:#fff; border-radius:50%;
  display:flex; align-items:center; justify-content:center; color:var(--be-verde-oscuro); transition:.2s ease;
}
.calendar-header button:hover{background:var(--be-hueso);}
.calendar-header button:disabled{opacity:.3; cursor:not-allowed;}
.calendar-weekdays{display:grid; grid-template-columns:repeat(7,1fr); text-align:center; font-size:.72rem; color:#a8a49a; font-weight:700; margin-bottom:.3rem;}
.calendar-grid{display:grid; grid-template-columns:repeat(7,1fr); gap:4px;}
.cal-day{
  aspect-ratio:1; display:flex; flex-direction:column; align-items:center; justify-content:center;
  border-radius:6px; font-size:.82rem; font-weight:600; cursor:default; color:#c9c6bb; position:relative;
}
.cal-day.empty{visibility:hidden;}
.cal-day.disponible{color:var(--be-negro); cursor:pointer; background:var(--be-hueso);}
.cal-day.disponible:hover{background:rgba(188,215,67,.35);}
.cal-day.bajo-cupo{color:var(--be-negro); cursor:pointer; background:rgba(214,158,46,.14);}
.cal-day.bajo-cupo:hover{background:rgba(214,158,46,.28);}
.cal-day.selected{background:var(--be-verde-oscuro) !important; color:#fff !important;}
.cal-day .dot-mini{width:4px; height:4px; border-radius:50%; margin-top:2px;}
.cal-day.disponible .dot-mini{background:#4a9d5f;}
.cal-day.bajo-cupo .dot-mini{background:#b07d1f;}
.cal-day.selected .dot-mini{background:#fff;}
.calendar-legend{display:flex; gap:1rem; flex-wrap:wrap; margin-top:.8rem; font-size:.72rem; color:#8a8578;}
.calendar-legend .dot{display:inline-block; width:8px; height:8px; border-radius:50%; margin-right:4px;}
.calendar-legend .dot.ok{background:#4a9d5f;}
.calendar-legend .dot.bajo{background:#b07d1f;}
.calendar-legend .dot.agotado{background:#d8d5cb;}

.date-summary{background:var(--be-hueso); border-radius:6px; padding:1rem;}
.date-summary .cupos-badge{font-size:.7rem; font-weight:700; padding:.25rem .6rem; border-radius:20px; background:rgba(74,157,95,.15); color:#3f8a52;}

.qty-stepper{display:flex; align-items:center; border:1.5px solid #eeece5; border-radius:6px; overflow:hidden; width:fit-content;}
.qty-stepper button{
  width:36px; height:36px; border:none; background:var(--be-hueso); color:var(--be-verde-oscuro);
  font-weight:700; font-size:1.1rem;
}
.qty-stepper input{width:44px; text-align:center; border:none; font-weight:700; font-family:'Poppins',sans-serif;}
.qty-stepper input:focus{outline:none;}

/* ===== RESENAS / RELACIONADOS (reuso de estilos del home) ===== */
.testi-card{background:#fff; border-radius:6px; padding:1.6rem; height:100%; box-shadow:0 8px 30px rgba(0,0,0,.04); border:1px solid #f2f1eb;}
.testi-card .stars{color:var(--be-verde); letter-spacing:2px;}
.tour-card{background:#fff; border-radius:6px; overflow:hidden; box-shadow:0 8px 30px rgba(0,0,0,.05); transition:.3s ease; height:100%;}
.tour-card:hover{transform:translateY(-6px); box-shadow:0 20px 40px rgba(0,0,0,.12);}
.tour-card .img-wrap{height:180px; overflow:hidden; position:relative;}
.tour-card .img-wrap img{width:100%; height:100%; object-fit:cover; transition:.5s ease;}
.tour-card:hover .img-wrap img{transform:scale(1.08);}
.tour-card .price{font-family:'Poppins',sans-serif; font-weight:600; font-size:1.15rem; color:var(--be-verde-oscuro);}
.tour-card .meta{font-size:.8rem; color:#8a8578;}
.tour-card .badge-cat{
  position:absolute; top:14px; left:14px;
  background:rgba(255,255,255,.92); color:var(--be-verde-oscuro);
  font-size:.7rem; font-weight:700; letter-spacing:.04em; text-transform:uppercase;
  padding:.35rem .7rem; border-radius:2px;
}
.stretched-link-text{color:inherit; text-decoration:none;}
.stretched-link-text:hover{color:var(--be-verde-oscuro);}

/* ===== PILLS DE CATEGORIA (listado de excursiones) ===== */
.nav-pills-be .nav-link{
  color:var(--be-negro); font-weight:600; border-radius:5px; padding:.6rem 1.3rem; margin-right:.5rem;
}
.nav-pills-be .nav-link.active{background:var(--be-verde); color:#fff;}

.section-pad{padding:80px 0;}
@media(max-width:768px){.section-pad{padding:50px 0;} .booking-card{position:relative; top:0; margin-top:2rem;}}
