/* private-sacred-valley-day-tour.css · CSS de la página private-sacred-valley-day-tour.html (7 idiomas) · generado por build_page_css.py desde: tour-detail.css */
/* tour-detail.css — páginas de reserva de cada tour (Classic · Maras & Moray · Privado) */
.detail-top{padding:28px 24px 10px;}
.detail-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:20px;}
.detail-head h1{font-size:clamp(30px,4vw,48px);font-weight:800;letter-spacing:-.025em;line-height:1.05;color:var(--dark);max-width:760px;}
.dh-meta{display:flex;align-items:center;flex-wrap:wrap;gap:8px 10px;margin-top:12px;font-size:14px;color:var(--text-light);}
.dh-meta b{color:var(--dark);}
.dh-price{text-align:right;flex-shrink:0;}
.dh-price small{display:block;font-size:12px;color:var(--text-light);font-weight:600;}
.dh-price b{font-size:34px;font-weight:800;letter-spacing:-.02em;color:var(--dark);}
/* galería */
.detail-gallery{display:grid;grid-template-columns:2fr 1fr 1fr;grid-template-rows:210px 210px;gap:10px;border-radius:var(--radius);overflow:hidden;}
.detail-gallery .gallery-item{height:100%;}
.detail-gallery .dg-main{grid-row:span 2;}
.dg-more{position:absolute;inset:0;z-index:1;display:flex;align-items:center;justify-content:center;background:rgba(30,35,31,.55);color:#fff;font-family:var(--font);font-weight:700;font-size:16px;}
/* cuerpo con tarjeta lateral */
.detail-body{padding-top:30px;}
.detail-main{min-width:0;}
.detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:44px;max-width:var(--max-w);margin:0 auto;align-items:start;}
.dt-h2{font-size:clamp(24px,2.6vw,30px);font-weight:800;letter-spacing:-.02em;color:var(--dark);margin:48px 0 16px;}
.dt-sub{color:var(--text-light);font-size:15px;margin:-6px 0 22px;}
.dt-lead{font-size:17.5px;line-height:1.65;color:var(--text);margin:28px 0 0;}
.facts-grid{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;}
.fg-item{display:flex;gap:10px;align-items:center;padding:16px;border-right:1px solid var(--border);border-bottom:1px solid var(--border);}
.fg-item:nth-child(4n){border-right:none;}
.fg-item:nth-last-child(-n+4){border-bottom:none;}
.fg-ic{width:38px;height:38px;border-radius:50%;background:var(--primary-soft);color:var(--primary-ink);display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.fg-item small{display:block;font-size:11.5px;color:var(--text-light);font-weight:600;}
.fg-item b{display:block;font-size:14.5px;color:var(--dark);line-height:1.3;}
.highlight-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;}
.hl-img{border-radius:12px;overflow:hidden;aspect-ratio:4/3;background:#dfe6da;margin-bottom:10px;}
.hl-img img{width:100%;height:100%;object-fit:cover;display:block;}
.hl-card p{font-size:14.5px;color:var(--text-light);line-height:1.5;}
.hl-card span{display:inline-block;margin-top:6px;font-size:11.5px;font-weight:800;letter-spacing:.8px;text-transform:uppercase;color:var(--primary-ink);}
/* línea de tiempo con foto por parada (sobre .itin-steps de la madre) */
.tl-photo{max-width:none;gap:26px;}
.tl-photo .itin-step{align-items:flex-start;}
.tl-photo .itin-body{flex:1;}
.tl-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px;}
.tl-chips span{display:inline-flex;align-items:center;gap:5px;font-size:12.5px;font-weight:700;color:var(--dark);background:var(--bg);border:1px solid var(--border);padding:4px 10px;border-radius:20px;}
.tl-img{width:210px;flex-shrink:0;border-radius:12px;overflow:hidden;aspect-ratio:4/3;position:relative;background:#dfe6da;margin:0;}
.tl-img img{width:100%;height:100%;object-fit:cover;display:block;}
.tl-img figcaption{position:absolute;left:8px;bottom:8px;right:8px;background:rgba(30,35,31,.72);color:#fff;font-size:11.5px;font-weight:600;padding:4px 8px;border-radius:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.dt-note{display:flex;gap:10px;align-items:flex-start;margin-top:16px;}
.dt-note svg{flex-shrink:0;margin-top:2px;}
.dt-lunch{grid-template-columns:repeat(4,1fr);gap:12px;}
.dt-lunch .lunch-card{padding:16px 14px;}
.dt-lunch .btn-sm{font-size:13px;padding:8px 10px;}
.olla-band{display:flex;align-items:center;gap:14px;margin-top:16px;background:var(--primary-soft);border:1px solid #D5E7C8;border-radius:var(--radius);padding:16px 18px;color:var(--primary-ink);}
.olla-band p{flex:1;font-size:15px;color:var(--text);}
.olla-band svg{flex-shrink:0;}
.process-cols{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.pc-card{border:1px solid var(--border);border-radius:var(--radius);padding:22px;}
.pc-card h3{font-size:17px;font-weight:800;color:var(--dark);margin-bottom:14px;}
.pc-steps{list-style:none;counter-reset:pc;display:flex;flex-direction:column;gap:12px;}
.pc-steps li{counter-increment:pc;display:flex;gap:12px;align-items:flex-start;font-size:14.5px;color:var(--text);line-height:1.45;}
.pc-steps li::before{content:counter(pc);width:26px;height:26px;border-radius:50%;background:var(--primary-ink);color:#fff;font-weight:700;font-size:13px;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.flex-band{margin-top:48px;background:var(--primary-ink);border-radius:20px;padding:32px 30px;color:#fff;}
.flex-band h2{font-size:clamp(26px,3vw,34px);font-weight:800;letter-spacing:-.02em;margin-bottom:18px;}
.fb-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;}
.fb-item{background:rgba(0,0,0,.14);border:1px solid rgba(255,255,255,.22);border-radius:14px;padding:18px;}
.fb-item h3{font-size:19px;font-weight:800;margin-bottom:6px;}
.fb-item p{font-size:15px;font-weight:600;line-height:1.5;color:#fff;}
.fb-link{display:inline-block;margin-top:18px;background:#fff;color:var(--primary-ink);font-weight:800;font-size:14.5px;padding:10px 18px;border-radius:30px;text-decoration:none;}
.contact-channels{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;}
.cc-card{display:flex;flex-direction:column;gap:4px;border:1px solid var(--border);border-radius:var(--radius);padding:16px;text-decoration:none;color:var(--primary-ink);}
.cc-card b{color:var(--dark);font-size:15px;margin-top:6px;}
.cc-card span{font-size:13.5px;color:var(--text-light);line-height:1.4;word-break:break-word;}
a.cc-card:hover{border-color:var(--primary-ink);}
/* tarjeta de reserva pegajosa */
.book-aside{position:sticky;top:96px;}
.ba-card{background:#fff;border:1px solid var(--border);border-radius:18px;padding:22px;box-shadow:0 20px 50px rgba(30,35,31,.1);}
.ba-from{font-size:12px;color:var(--text-light);font-weight:600;}
.ba-price{font-size:36px;font-weight:800;letter-spacing:-.02em;color:var(--dark);display:flex;align-items:baseline;gap:6px;margin-bottom:14px;}
.ba-price .stars{font-size:16px;margin-left:auto;}
.ba-price em{font-style:normal;font-size:15px;font-weight:700;color:var(--dark);}
.ba-end{display:grid;grid-template-columns:1fr 1fr;gap:6px;background:var(--bg);border:1px solid var(--border);border-radius:12px;padding:5px;margin-bottom:10px;}
.ba-end button{font-family:var(--font);border:none;background:transparent;border-radius:9px;padding:9px 6px;font-size:13px;font-weight:700;color:var(--text-light);cursor:pointer;line-height:1.2;min-height:44px;}
.ba-end button small{display:block;font-size:11px;font-weight:600;margin-top:2px;}
.ba-end button.on{background:#fff;color:var(--dark);box-shadow:0 2px 8px rgba(30,35,31,.12);}
.ba-end button.on small{color:var(--primary-ink);}
.ba-endnote{font-size:12.5px;color:var(--text-light);line-height:1.45;margin-bottom:12px;}
.ba-endnote a{color:var(--primary-ink);font-weight:700;}
.ba-opts{display:flex;flex-direction:column;gap:8px;margin-bottom:14px;}
.ba-opt{display:flex;justify-content:space-between;gap:10px;align-items:center;border:1.5px solid var(--border);border-radius:10px;padding:11px 13px;font-size:14px;color:var(--text);text-decoration:none;transition:border-color .2s,background .2s;}
.ba-opt b{color:var(--dark);}
.ba-opt:hover,.ba-opt.on{border-color:var(--primary-ink);background:var(--primary-soft);}
.ba-book{display:block;text-align:center;background:var(--primary-ink);color:#fff;font-weight:800;font-size:16px;padding:15px;border-radius:12px;text-decoration:none;transition:background .2s;}
.ba-book:hover{background:var(--primary-dark);}
.ba-wa{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:10px;background:#fff;border:1.5px solid var(--green-dark);color:#15803D;font-weight:700;font-size:15px;padding:13px;border-radius:12px;text-decoration:none;}
.ba-wa:hover{background:#F0FDF4;}
.ba-notes{list-style:none;margin-top:14px;display:flex;flex-direction:column;gap:6px;}
.ba-notes li{font-size:13px;color:var(--text-light);padding-left:20px;position:relative;}
.ba-notes li::before{content:'✓';position:absolute;left:0;color:var(--primary-ink);font-weight:800;}
#also .net-card.txt{min-height:0;}
@media(max-width:1000px){
  .detail-layout{grid-template-columns:1fr;}
  .book-aside{position:static;max-width:520px;}
  .dt-lunch{grid-template-columns:1fr 1fr;}
  .facts-grid{grid-template-columns:1fr 1fr;}
  .fg-item:nth-child(4n){border-right:1px solid var(--border);}
  .fg-item:nth-child(2n){border-right:none;}
  .fg-item:nth-last-child(-n+4){border-bottom:1px solid var(--border);}
  .fg-item:nth-last-child(-n+2){border-bottom:none;}
  .contact-channels{grid-template-columns:1fr 1fr;}
}
@media(max-width:700px){
  .detail-head{flex-direction:column;align-items:flex-start;}
  .dh-price{text-align:left;}
  .detail-gallery{grid-template-columns:none;grid-template-rows:none;grid-auto-flow:column;grid-auto-columns:88%;overflow-x:auto;scroll-snap-type:x mandatory;border-radius:0;}
  .detail-gallery .gallery-item{aspect-ratio:4/3;scroll-snap-align:start;border-radius:12px;}
  .detail-gallery .dg-main{grid-row:auto;}
  .highlight-cards{grid-template-columns:1fr;}
  .tl-photo .itin-step{flex-wrap:wrap;}
  .tl-img{width:100%;margin-left:60px;max-width:calc(100% - 60px);}
  .process-cols,.fb-grid{grid-template-columns:1fr;}
  .olla-band{flex-wrap:wrap;}
}
@media(max-width:600px){
  .dt-lunch,.contact-channels{grid-template-columns:1fr;}
}
/* privado: tablas, rutas y tarjeta de cotización (bloque 2) */
.dt-table{margin:0;}
.dt-table .price-table{min-width:520px;}
.dt-small{font-size:13.5px;color:var(--text-light);margin-top:10px;}
.route-cards{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.route-card{border:1px solid var(--border);border-radius:var(--radius);padding:22px;display:flex;flex-direction:column;gap:6px;}
.route-card h3{font-size:19px;font-weight:800;color:var(--dark);}
.route-card p{font-size:14.5px;color:var(--text-light);line-height:1.55;flex:1;}
.rc-tag{align-self:flex-start;font-size:11.5px;font-weight:800;letter-spacing:.6px;text-transform:uppercase;color:var(--primary-ink);background:var(--primary-soft);padding:4px 10px;border-radius:20px;}
div.ba-opt{cursor:default;}
div.ba-opt:hover{border-color:var(--border);background:transparent;}
.ba-alt{border-color:var(--border);color:var(--dark);}
.ba-alt:hover{background:var(--bg);}
@media(max-width:700px){
  .route-cards{grid-template-columns:1fr;}
}
/* refinamiento: proceso de reserva resumido (dueña: how-to-book) */
.book-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;}
.book-strip span{display:flex;gap:10px;align-items:flex-start;background:var(--bg);border:1px solid var(--border);border-radius:12px;padding:14px;font-size:14px;line-height:1.4;color:var(--text);}
.book-strip b{width:24px;height:24px;border-radius:50%;background:var(--primary-ink);color:#fff;font-size:12.5px;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
@media(max-width:700px){
  .book-strip{grid-template-columns:1fr 1fr;}
}
.olla-band .btn-sm{white-space:normal;text-align:center;}
.olla-band p a{color:var(--primary-ink);font-weight:700;}
.fit-duo{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:6px 0 30px;}
.fit-card{background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:18px 20px;min-width:0;}
.fit-card h3{font-size:16px;font-weight:800;color:var(--dark);margin-bottom:12px;}
.fit-card.alt{background:var(--bg);}
.check-list.no li::before{content:'↺';color:var(--text-light);}
@media(max-width:640px){.fit-duo{grid-template-columns:1fr;}}
/* tres latidos suaves al llegar a la caja desde la barra fija */
@keyframes baBeat{0%{box-shadow:0 0 0 0 rgba(100,163,62,0)}35%{box-shadow:0 0 0 6px rgba(100,163,62,.14)}70%{box-shadow:0 0 0 9px rgba(100,163,62,0)}100%{box-shadow:0 0 0 0 rgba(100,163,62,0)}}
.ba-card.ba-beat{animation:baBeat 1.6s cubic-bezier(.45,0,.55,1) 3;}
@media(prefers-reduced-motion:reduce){.ba-card.ba-beat{animation-duration:2s;animation-iteration-count:1;}}
/* en las fichas la caja de reserva ya muestra la valoración: la tarjeta flotante se ocultaba debajo de la caja */
body:has(#book) .trust-fab{display:none;}

/* ===== Auditoría 27-10-2026 · franja de primera pantalla en fichas (prefijo dh-quick) ===== */
.dh-quick{display:flex;align-items:center;justify-content:space-between;gap:14px 20px;flex-wrap:wrap;background:var(--primary-soft);border:1px solid #CFE4C0;border-radius:16px;padding:12px 16px;margin:-6px 0 16px;}
.dh-quick ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px 22px;align-items:center;}
.dh-quick li{font-size:14px;color:var(--text);line-height:1.35;}
.dh-quick li small{display:block;font-size:11px;font-weight:800;letter-spacing:.8px;text-transform:uppercase;color:var(--primary-ink);}
.dh-quick li b{font-size:16px;color:var(--dark);}
.dh-quick .dq-lic{font-weight:700;color:var(--primary-ink);}
.dh-quick .btn-primary{white-space:nowrap;min-height:46px;}
@media(max-width:760px){.dh-quick{padding:10px 12px;margin:-4px 0 12px;}.dh-quick ul{gap:4px 14px;}.dh-quick li{font-size:13px;}.dh-quick .btn-primary{width:100%;justify-content:center;}}
.dh-quick .dq-inc{max-width:520px;}
@media(max-width:760px){.dh-quick .btn-primary{white-space:normal;text-align:center;line-height:1.25;}.rs-strip .btn-primary{white-space:normal;}}

/* ===== Caja de reserva v2 (28-10-2026 · variante 2a: interruptor) · prefijo bx- ===== */
.bx{padding:22px;border-radius:20px;}
.bx-handle,.bx-mini,.bx-x{display:none;}
.bx-top{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;}
.bx-top small{display:block;font-size:13px;color:var(--text-light);}
.bx-from{display:block;font-size:34px;font-weight:800;color:var(--dark);line-height:1.1;}
.bx-rate{text-align:right;}
.bx-rate span{font-size:22px;font-weight:800;color:var(--dark);}
.bx-rate i{font-style:normal;color:var(--primary);}
.bx-rate small{display:block;font-size:12px;color:var(--text-light);}
.bx-lbl{margin:18px 0 8px;font-size:11.5px;font-weight:800;letter-spacing:1px;text-transform:uppercase;color:var(--text-light);}
.bx-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;}
.bx-l{font:inherit;text-align:left;cursor:pointer;background:#fff;border:1.5px solid var(--border);border-radius:14px;padding:10px 12px;display:flex;flex-direction:column;gap:2px;min-height:86px;color:var(--dark);}
.bx-l b{font-size:16px;color:var(--dark);}
.bx-l small{font-size:11.5px;color:var(--text-light);line-height:1.3;}
.bx-l strong{margin-top:auto;font-size:16px;color:var(--dark);}
.bx-l:hover{border-color:var(--primary);}
.bx-l:focus-visible,.bx-sw:has(.bx-tg:focus-visible),.bx-book:focus-visible{outline:3px solid #9CD27A;outline-offset:2px;}
.bx-l.on{border-color:var(--primary-ink);background:var(--primary-soft);box-shadow:0 0 0 1px var(--primary-ink) inset;}
.bx-l.on b{color:var(--primary-ink);}
.bx-sw{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:10px 0 0;border:1.5px dashed var(--border);border-radius:14px;padding:10px 12px;cursor:pointer;position:relative;}
.bx-sw b{display:block;font-size:14.5px;color:var(--dark);}
.bx-sw small{display:block;font-size:12px;color:var(--text-light);line-height:1.35;}
.bx-sw input{position:absolute;opacity:0;width:1px;height:1px;}
.bx-sw i{flex:0 0 46px;height:26px;border-radius:20px;background:#C9D3C3;position:relative;transition:background .2s;}
.bx-sw i::after{content:'';position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.25);transition:transform .2s;}
.bx-sw input:checked+i{background:var(--primary-ink);}
.bx-sw input:checked+i::after{transform:translateX(20px);}
.bx[data-end="olla"] .bx-sw{border-style:solid;border-color:var(--primary-ink);background:var(--primary-soft);}
.bx-sum{margin:10px 0 0;font-size:13px;font-weight:700;color:var(--dark);}
.bx-route{margin:4px 0 0;font-size:12.5px;color:var(--text-light);line-height:1.45;}
.bx-route a{color:var(--primary-ink);font-weight:700;}
.bx-total{display:flex;justify-content:space-between;align-items:baseline;border-top:1px solid var(--border);margin-top:12px;padding-top:12px;}
.bx-total span{font-size:15px;color:var(--text);}
.bx-total b{font-size:28px;font-weight:800;color:var(--dark);}
.bx-book{display:flex;justify-content:center;align-items:center;gap:6px;margin-top:10px;background:var(--primary-ink);color:#fff;font-weight:800;font-size:17px;border-radius:30px;min-height:54px;text-decoration:none;}
.bx-book:hover{background:var(--primary-dark);color:#fff;}
.bx-note{font-size:12.5px;color:var(--text-light);margin:10px 0 0;line-height:1.45;}
.bx-foot{display:flex;justify-content:space-between;align-items:center;gap:10px;border-top:1px solid var(--border);margin-top:12px;padding-top:10px;font-size:12.5px;color:var(--text);}
.bx-foot a{color:var(--primary-ink);font-weight:800;text-decoration:none;white-space:nowrap;}
.bx-veil{position:fixed;inset:0;background:rgba(15,20,16,.45);z-index:1090;}
@media(max-width:900px){
 .book-aside .bx{position:fixed;left:0;right:0;bottom:0;z-index:1080;border-radius:20px 20px 0 0;box-shadow:0 -8px 30px rgba(0,0,0,.18);margin:0;max-height:88vh;overflow:auto;padding:12px 16px calc(14px + env(safe-area-inset-bottom,0px));}
 .bx-handle{display:block;width:40px;height:4px;border-radius:4px;background:#CBD3C6;margin:0 auto 8px;}
 .bx-mini{display:flex;width:100%;justify-content:space-between;align-items:center;gap:8px;font:inherit;background:none;border:0;padding:0;cursor:pointer;text-align:left;}
 .bx-mini-t{font-size:12.5px;color:var(--text-light);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
 .bx-chg{flex-shrink:0;font-style:normal;font-size:12.5px;font-weight:800;color:var(--primary-ink);background:var(--primary-soft);border-radius:20px;padding:6px 10px;}
 .bx:not(.open)>.bx-top,.bx:not(.open)>.bx-lbl,.bx:not(.open)>.bx-grid,.bx:not(.open)>.bx-sw,.bx:not(.open)>.bx-sum,.bx:not(.open)>.bx-route,.bx:not(.open)>.bx-note,.bx:not(.open)>.bx-foot{display:none;}
 .bx:not(.open)>.bx-total{border:0;margin:4px 0 0;padding:0;}
 .bx:not(.open)>.bx-total b{font-size:24px;}
 .bx.open>.bx-mini{display:none;}
 .bx.open>.bx-x{display:flex;position:absolute;top:8px;right:10px;width:40px;height:40px;align-items:center;justify-content:center;border:0;background:#F1F4EE;border-radius:50%;font-size:22px;line-height:1;color:var(--dark);cursor:pointer;}
 body:has(.bx) .sticky-book-bar{display:none !important;}
 body:has(.bx) .detail-layout{padding-bottom:150px;}
}
.bx-tg{position:absolute;opacity:0;width:1px;height:1px;}

@media(max-width:900px){.book-aside .bx.open{z-index:1100;}}
@media(max-width:900px){
 body:has(.bx) .whatsapp-fab{bottom:162px;}
 body:has(.bx.open) .whatsapp-fab,body:has(.bx.open) .trust-fab{opacity:0;pointer-events:none;}
}
@media(max-width:900px){.bx.open>.bx-top{padding-right:46px;margin-top:4px;}}
.bx-route:empty{display:none;}

/* un solo contorno: sin línea interior en la selección ni anillo exterior de foco (28-10-2026) */
.bx-l.on,.lxa-r.on{box-shadow:none !important;border-width:2px;}
.bx-l.on{padding:9.5px 11.5px;}
.lxa-r.on{padding:9.5px 13.5px 9.5px 9.5px;}
.bx-l:focus-visible,.lxa-r:focus-visible,.bx-sw:has(.bx-tg:focus-visible),.bx-book:focus-visible{outline:none !important;}
.bx-l:focus-visible,.lxa-r:focus-visible,.bx-sw:has(.bx-tg:focus-visible){border-color:var(--primary-dark);border-style:solid;}
.bx-book:focus-visible{background:var(--primary-dark);}
