
:root{--ink:#101611;--paper:#f5f1e8;--green:#173d2b;--lime:#d8ff56;--muted:#677069;--line:#d8ddd8}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,sans-serif;background:var(--paper);color:var(--ink);line-height:1.55}.header{position:fixed;z-index:50;top:0;left:0;right:0;display:flex;justify-content:space-between;align-items:center;padding:18px 5vw;background:rgba(12,18,14,.9);color:#fff}.brand{color:#fff;text-decoration:none;font-weight:900}.brand span{color:var(--lime)}.header nav{display:flex;gap:18px;align-items:center}.header nav a{color:#fff;text-decoration:none}.pill{border:1px solid var(--lime);border-radius:999px;padding:8px 13px}.menu{display:none}.hero{position:relative;min-height:94vh;display:flex;align-items:flex-end;color:#fff;background:#1e3025}.hero-image,.hero-shade{position:absolute;inset:0}.hero-image{background-size:cover;background-position:center}.hero-shade{background:linear-gradient(180deg,rgba(5,10,7,.1),rgba(5,10,7,.82))}.hero-content{position:relative;z-index:2;max-width:1000px;padding:145px 7vw 75px}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:.78rem;font-weight:900;color:var(--lime)}.dark{color:var(--green)}h1{font-size:clamp(3rem,7vw,6.5rem);line-height:.95;margin:.2em 0}h2{font-size:clamp(2rem,4vw,4rem);line-height:1.03;margin:.2em 0 .5em}.hero-text{font-size:1.18rem;max-width:700px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.button{display:inline-block;border:0;border-radius:999px;padding:14px 20px;font-weight:900;text-decoration:none;cursor:pointer}.primary{background:var(--lime);color:var(--ink)}.secondary{border:1px solid #fff;color:#fff}.section{padding:88px 7vw}.intro{display:grid;grid-template-columns:1.1fr 1fr;gap:9vw}.notice{background:#fff;border-left:4px solid var(--green);padding:15px}.heading{display:flex;justify-content:space-between;gap:40px;align-items:end;margin-bottom:30px}.heading>p{max-width:520px;color:var(--muted)}.gallery{position:relative;min-height:470px;border-radius:28px;overflow:hidden;background:#dce3dd}.gallery img{width:100%;height:100%;min-height:470px;object-fit:cover;display:block}.gallery-empty{display:grid;place-items:center;min-height:470px;padding:30px}.gallery-controls{position:absolute;left:20px;right:20px;bottom:20px;display:flex;justify-content:space-between}.gallery button{width:46px;height:46px;border:0;border-radius:50%;font-size:1.2rem}.count{background:#000b;color:#fff;padding:8px 12px;border-radius:999px}.split{display:grid;grid-template-columns:1.25fr .75fr;gap:6vw;align-items:center}.split.reverse{grid-template-columns:.75fr 1.25fr}.split.reverse .gallery{order:2}.ticks{list-style:none;padding:0}.ticks li{padding:10px 0;border-bottom:1px solid var(--line)}.ticks li:before{content:'✓ ';font-weight:900;color:var(--green)}.location{background:var(--green);color:#fff;display:grid;grid-template-columns:1fr 1fr;gap:7vw}.route-card{position:relative;min-height:410px;background:#f3eee3;color:var(--ink);border-radius:28px}.city{position:absolute;font-weight:900;background:#fff;padding:9px 13px;border-radius:999px}.medellin{top:45px;left:50%;transform:translateX(-50%)}.pereira{top:50%;left:18%;background:var(--lime)}.bogota{top:50%;right:12%}.cali{bottom:60px;left:50%}.line{position:absolute;background:#79917f}.vertical{width:2px;top:80px;bottom:90px;left:50%}.horizontal{height:2px;left:25%;right:18%;top:53%}.route-card p{position:absolute;left:25px;right:25px;bottom:12px;text-align:center}.prices{background:#fff}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.card{border:1px solid var(--line);border-radius:24px;padding:26px;background:var(--paper)}.price{font-size:1.25rem;font-weight:900;color:var(--green)}.not-included{margin-top:30px;padding:24px;border:1px solid var(--line);border-radius:22px}.faq{max-width:900px}.faq-item{border-top:1px solid var(--line)}.faq-question{width:100%;padding:22px 0;display:flex;justify-content:space-between;background:none;border:0;font-weight:900;text-align:left}.faq-answer{display:none;padding:0 0 22px;color:var(--muted)}.faq-item.open .faq-answer{display:block}.contact{background:#0e1711;color:#fff;display:grid;grid-template-columns:.8fr 1.2fr;gap:8vw}.contact form{background:#fff;color:var(--ink);padding:28px;border-radius:26px}.row{display:grid;grid-template-columns:1fr 1fr;gap:14px}label{display:block;font-weight:800;margin-bottom:14px}input,select,textarea{width:100%;margin-top:6px;padding:13px;border:1px solid var(--line);border-radius:12px}.check{display:flex;gap:9px}.check input{width:auto}.small{font-size:.85rem;color:var(--muted)}footer{display:grid;grid-template-columns:1fr 1fr;gap:30px;padding:42px 7vw;background:#090f0b;color:#dce5de}@media(max-width:920px){.header nav{display:none;position:absolute;top:68px;left:0;right:0;flex-direction:column;background:#0c120e;padding:20px}.header nav.open{display:flex}.menu{display:block}.intro,.split,.split.reverse,.location,.contact{grid-template-columns:1fr}.split.reverse .gallery{order:0}.cards{grid-template-columns:1fr}.heading{display:block}.row{grid-template-columns:1fr}}

.map-card{
  margin:0;
  padding:16px;
  background:#fff;
  border-radius:28px;
  box-shadow:0 18px 50px rgba(0,0,0,.16);
}
.map-card img{
  display:block;
  width:100%;
  height:auto;
  border-radius:18px;
}
.map-card figcaption{
  padding:10px 8px 2px;
  color:#667068;
  font-size:.84rem;
  text-align:center;
}

.audience{background:#eef2ea}
.audience-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.audience-card{background:white;border:1px solid var(--line);border-radius:22px;padding:24px}
.audience-card h3{margin-top:0;font-size:1.25rem}
.schedule{background:var(--paper)}
.schedule-list{max-width:960px;margin:0 auto}
.schedule-item{display:grid;grid-template-columns:150px 1fr;gap:25px;padding:24px 0;border-top:1px solid var(--line)}
.schedule-time{font-weight:900;color:var(--green);font-size:1.05rem}
.schedule-item h3{margin:0 0 6px;font-size:1.25rem}
.schedule-item p{margin:0;color:var(--muted)}
.map-card{margin:0;padding:14px;background:white;border-radius:28px;box-shadow:0 18px 50px rgba(0,0,0,.16)}
.map-card img{display:block;width:100%;height:auto;border-radius:18px}
.map-card figcaption{padding:10px 8px 2px;color:#667068;font-size:.84rem;text-align:center}
@media(max-width:920px){
  .audience-grid{grid-template-columns:1fr 1fr}
  .schedule-item{grid-template-columns:1fr;gap:8px}
}
@media(max-width:600px){
  .audience-grid{grid-template-columns:1fr}
}
