@import url('https://fonts.googleapis.com/css2?family=Oswald:wght@400;500;600;700&family=Poppins:wght@300;400;500;600;700&display=swap');

:root{
  --marfil:#EDE6D6; --marfil-2:#E3DAC6; --blanco:#FBF8F1;
  --verde:#2C4A3C; --lima:#8CC63F; --verde-d:#1E3428; --verde-x:#16281F;
  --cafe:#8A5A34; --ocre:#A9702E; --ocre-c:#DAAC77; --cafe-d:#4A3120;
  --negro:#1A1815; --gris:#68635A; --linea:#DAD0BB;
}
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{font-family:'Poppins',sans-serif;background:var(--marfil);color:var(--negro);line-height:1.65;-webkit-font-smoothing:antialiased;}
a{text-decoration:none;color:inherit;}
img{max-width:100%;display:block;}
.wrap{max-width:1080px;margin:0 auto;padding:0 24px;}

/* ============ HEADER ============ */
header{position:sticky;top:0;z-index:100;background:var(--verde);color:var(--marfil);box-shadow:0 2px 20px rgba(26,24,21,.15);}
.nav{display:flex;align-items:center;justify-content:space-between;gap:16px;max-width:1080px;margin:0 auto;padding:12px 24px;}
.logo{text-decoration:none;color:inherit;display:flex;align-items:center;gap:10px;cursor:pointer;}
.logo img, .logo svg{width:44px;height:44px;flex-shrink:0;}
.logo-txt b{font-family:'Oswald';font-size:22px;letter-spacing:1px;text-transform:uppercase;display:block;line-height:1;color:#EDE6D6;}
.logo-txt b span{color:#8CC63F;}
.logo-txt small{font-size:9px;letter-spacing:2px;text-transform:uppercase;color:var(--ocre);font-weight:600;}
.menu{display:flex;gap:4px;align-items:center;}
.menu a, .drop a{text-decoration:none;}
.menu > a, .drop a{color:inherit;}
.menu button, .menu > a{background:none;border:none;color:rgba(237,230,214,.78);font-family:'Poppins';font-size:13px;font-weight:500;padding:8px 13px;border-radius:6px;cursor:pointer;transition:all .16s;}
.menu button:hover, .menu > a:hover{color:var(--marfil);background:rgba(255,255,255,.06);}
.menu button.on, .menu > a.on{color:var(--ocre);font-weight:600;}
.wa-btn{background:var(--ocre);color:#fff!important;font-weight:600!important;font-size:12.5px!important;padding:9px 17px!important;border-radius:6px;white-space:nowrap;}
.wa-btn:hover{background:#96631f;}
.burger{display:none;background:none;border:none;color:var(--marfil);font-size:24px;cursor:pointer;padding:4px 8px;}

/* ============ PAGE SYSTEM ============ */
.page{display:none;animation:fade .35s ease;}
.page.active{display:block;}
@keyframes fade{from{opacity:0;transform:translateY(8px);}to{opacity:1;transform:none;}}

/* ============ HERO ============ */
.hero{background:var(--verde);color:var(--marfil);padding:70px 0 0;position:relative;overflow:hidden;}
.art{position:absolute;inset:0;z-index:0;pointer-events:none;}
.art svg{width:100%;height:100%;display:block;}
.rueda{transform-box:fill-box;transform-origin:center;animation:gira 120s linear infinite;}
.rueda.b{animation-direction:reverse;animation-duration:150s;}
@keyframes gira{from{transform:rotate(0)}to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.rueda{animation:none;}}
.art svg{width:100%;height:100%;display:block;}
.hero-in{position:relative;z-index:2;}
.eyebrow{font-size:11px;letter-spacing:4px;text-transform:uppercase;color:var(--ocre);font-weight:600;}
.hero h1{font-family:'Oswald';font-size:clamp(38px,6.5vw,64px);line-height:.98;text-transform:uppercase;letter-spacing:.5px;margin:14px 0;max-width:640px;}
.hero h1 em{font-style:normal;color:var(--ocre);}
.hero p.lead{font-size:17px;color:rgba(237,230,214,.78);max-width:500px;font-weight:300;}
.cta-row{display:flex;gap:12px;margin-top:28px;flex-wrap:wrap;}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:13px 24px;border-radius:7px;font-weight:600;font-size:14px;line-height:1.2;cursor:pointer;border:none;font-family:'Poppins';text-decoration:none;text-align:center;transition:all .16s;}
.btn-p{background:var(--ocre);color:#fff;}
.btn-p:hover{background:#96631f;transform:translateY(-1px);}
.btn-o{border:1.5px solid rgba(237,230,214,.35);color:var(--marfil);background:none;}
.btn-o:hover{border-color:var(--marfil);}
.lema{margin-top:30px;font-family:'Oswald';font-size:15px;color:var(--ocre);letter-spacing:2.5px;text-transform:uppercase;}
/* Firma: silueta del Chicamocha */
.ridge{margin-top:44px;line-height:0;}
.ridge svg{width:100%;height:auto;display:block;}

/* ============ SECCIONES ============ */
.sec{padding:64px 0;}
.sec.tint{background:var(--blanco);}
.sec.dark{background:var(--verde-d);color:var(--marfil);}
.sec-head{margin-bottom:32px;}
.sec-head.center{text-align:center;}
.sec-head .eyebrow{color:var(--cafe);}
.sec.dark .sec-head .eyebrow{color:var(--ocre);}
.sec-head h2{font-family:'Oswald';font-size:clamp(26px,4vw,36px);color:var(--verde);text-transform:uppercase;letter-spacing:.5px;margin:6px 0;}
.sec.dark .sec-head h2{color:var(--marfil);}
.sec-head p{color:var(--gris);font-size:14.5px;max-width:560px;}
.sec-head.center p{margin:0 auto;}
.sec.dark .sec-head p{color:rgba(237,230,214,.7);}

/* PUERTAS */
.puertas{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;}
.puerta{background:var(--blanco);border:1px solid var(--linea);border-radius:12px;padding:26px 20px;cursor:pointer;transition:all .18s;border-top:3px solid var(--verde);}
.puerta:nth-child(2){border-top-color:var(--ocre);}
.puerta:nth-child(3){border-top-color:var(--cafe);}
.puerta:nth-child(4){border-top-color:var(--verde);}
.puerta:hover{transform:translateY(-4px);box-shadow:0 14px 30px rgba(74,49,32,.12);}
.puerta .ic{width:40px;height:40px;margin-bottom:14px;color:var(--verde);}
.puerta:nth-child(2) .ic{color:var(--ocre);}
.puerta h3{font-family:'Oswald';font-size:18px;margin-bottom:5px;letter-spacing:.3px;}
.puerta p{font-size:12.5px;color:var(--gris);line-height:1.5;min-height:36px;}
.puerta .go{font-size:12.5px;font-weight:600;color:var(--cafe);margin-top:12px;}

/* CIFRAS */
.cifras{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:8px;}
.cifra{background:var(--verde-x);border-radius:12px;padding:22px;text-align:center;}
.cifra b{font-family:'Oswald';font-size:40px;color:var(--ocre);display:block;line-height:1;}
.cifra span{font-size:12px;color:rgba(237,230,214,.7);letter-spacing:.4px;}

/* SERVICIOS */
.servicios{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;}
.serv{background:var(--blanco);border:1px solid var(--linea);border-radius:12px;padding:22px;}
.serv .ic{width:32px;height:32px;color:var(--cafe);margin-bottom:12px;}
.serv h4{font-family:'Oswald';font-size:17px;margin-bottom:5px;}
.serv p{font-size:12.5px;color:var(--gris);line-height:1.55;}
.serv .free{display:inline-block;background:var(--ocre);color:#fff;font-size:10px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;padding:3px 9px;border-radius:20px;margin-top:9px;}

/* PROSA */
.prosa{max-width:680px;}
.prosa p{margin-bottom:16px;font-size:15px;color:#33302b;}
.prosa p.big{font-size:18px;color:var(--negro);}
.prosa strong{color:var(--verde);font-weight:600;}

/* CATALOGO */
.cat-frame{background:var(--blanco);border:1px solid var(--linea);border-radius:14px;overflow:hidden;min-height:400px;}
.cat-tools{padding:18px;border-bottom:1px solid var(--linea);display:flex;gap:10px;flex-wrap:wrap;align-items:center;}
.buscar{flex:1;min-width:200px;position:relative;}
.buscar input{width:100%;border:1.5px solid var(--linea);border-radius:8px;padding:11px 14px 11px 38px;font-family:'Poppins';font-size:14px;background:var(--marfil);outline:none;}
.buscar input:focus{border-color:var(--cafe);}
.buscar svg{position:absolute;left:12px;top:50%;transform:translateY(-50%);width:16px;height:16px;color:var(--gris);}
.chips{display:flex;gap:6px;overflow-x:auto;padding:0 18px 14px;}
.chip{flex:0 0 auto;border:1.5px solid var(--linea);background:var(--blanco);color:var(--negro);padding:7px 14px;border-radius:6px;font-size:12px;font-weight:600;cursor:pointer;white-space:nowrap;font-family:'Poppins';transition:all .15s;}
.chip.on{background:var(--verde);color:var(--marfil);border-color:var(--verde);}
.grid-p{display:grid;grid-template-columns:repeat(auto-fill,minmax(215px,1fr));gap:14px;padding:18px;}
.card{background:var(--blanco);border:1px solid var(--linea);border-radius:10px;overflow:hidden;display:flex;flex-direction:column;transition:all .16s;}
.card:hover{transform:translateY(-3px);box-shadow:0 10px 24px rgba(74,49,32,.12);}
.cimg{aspect-ratio:4/3;display:flex;align-items:center;justify-content:center;font-size:44px;position:relative;background:var(--marfil-2);overflow:hidden;cursor:pointer;}
.cimg img{width:100%;height:100%;object-fit:contain;transition:transform .3s;}
.card:hover .cimg img{transform:scale(1.04);}
.cimg .cat{position:absolute;top:8px;left:8px;font-size:9.5px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:#fff;padding:3px 9px;border-radius:20px;line-height:1.4;}
.card{cursor:pointer;}
.card:hover{border-color:var(--ocre);box-shadow:0 8px 24px rgba(74,49,32,.12);transform:translateY(-2px);}
.cver{font-size:11px;color:var(--cafe);font-weight:600;margin-top:6px;}
.det-mini .dm.on{border-color:var(--cafe);}
/* ===== FICHA DE UNA BICI ===== */
.det{background:var(--blanco);border:1px solid var(--linea);border-radius:16px;overflow:hidden;box-shadow:0 12px 34px rgba(74,49,32,.10);}
.det{max-width:760px;margin:0 auto;}
.det-img{background:var(--marfil-2);aspect-ratio:4/3;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;}
.det-mini{display:flex;gap:6px;padding:6px;background:var(--marfil-2);}
.det-mini .dm{flex:1;aspect-ratio:4/3;border-radius:6px;overflow:hidden;cursor:pointer;border:2px solid transparent;transition:all .15s;background:var(--blanco);}
.det-mini .dm img{width:100%;height:100%;object-fit:cover;display:block;}
.det-mini .dm.on{border-color:var(--ocre);}
.det-mini .dm:hover{border-color:var(--cafe);}
.det-img img{width:100%;height:100%;object-fit:contain;}
.det-b{padding:26px 28px;}
.det-b .marca{font-size:10px;letter-spacing:2px;text-transform:uppercase;color:var(--gris);font-weight:700;}
.det-b h3{font-family:'Oswald';font-size:clamp(22px,4vw,30px);color:var(--verde);text-transform:uppercase;line-height:1.05;margin:4px 0 12px;}
.det-esp{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px;}
.det-esp div{background:var(--marfil-2);border:1px solid var(--linea);border-radius:8px;padding:8px 12px;min-width:88px;}
.det-esp b{display:block;font-size:8.5px;letter-spacing:1.2px;text-transform:uppercase;color:var(--gris);font-weight:700;}
.det-esp span{display:block;font-family:'Oswald';font-size:14.5px;color:var(--verde);margin-top:1px;}
.det-b p.dsc{font-size:13.5px;color:#4a453d;line-height:1.65;margin-bottom:16px;}
.det-gar{background:#F3E7D6;border-left:3px solid var(--ocre);border-radius:0 8px 8px 0;padding:11px 15px;font-size:12.5px;color:#5a4a33;line-height:1.55;margin-bottom:16px;}
.det-gar b{color:var(--cafe);}
.det-f{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;border-top:1px solid var(--linea);padding-top:16px;}
.det-p{font-family:'Oswald';font-size:30px;color:var(--cafe);line-height:1;}
.det-p small{display:block;font-family:'Poppins';font-size:10px;color:var(--lima);letter-spacing:1px;text-transform:uppercase;font-weight:700;margin-top:3px;}
.det-acc{display:flex;gap:8px;flex-wrap:wrap;}
@media(max-width:760px){.det-f{flex-direction:column;align-items:stretch;}.det-acc .btn{flex:1;}}
.cbadge{position:absolute;top:9px;left:9px;background:var(--verde);color:var(--marfil);font-size:9px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;padding:4px 8px;border-radius:5px;z-index:2;}
.cout{position:absolute;inset:0;background:rgba(26,24,21,.62);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;letter-spacing:1px;font-size:13px;z-index:3;}
.cb{padding:13px 14px 15px;display:flex;flex-direction:column;flex:1;}
.cmarca{font-size:9.5px;letter-spacing:1px;text-transform:uppercase;color:var(--ocre);font-weight:700;}
.cn{font-weight:600;font-size:13.5px;line-height:1.3;margin:2px 0 4px;}
.cd{font-size:11.5px;color:var(--gris);line-height:1.5;margin-bottom:11px;flex:1;}
.cf{display:flex;align-items:center;justify-content:space-between;gap:8px;}
.price{font-family:'Oswald';font-size:19px;color:var(--cafe);}
.buy{background:var(--ocre);color:#fff;font-size:11.5px;font-weight:600;padding:9px 12px;border-radius:6px;white-space:nowrap;}
.buy.dis{background:var(--linea);color:var(--gris);pointer-events:none;}
.estado{grid-column:1/-1;text-align:center;padding:50px 20px;color:var(--gris);font-size:14px;}
.cnt{padding:0 18px 6px;font-size:11.5px;color:var(--gris);}

/* GANCHO */
.gancho{background:var(--verde);color:var(--marfil);border-radius:14px;padding:36px;text-align:center;margin-top:32px;}
.gancho h3{font-family:'Oswald';font-size:24px;letter-spacing:.5px;}
.gancho p{font-size:14px;color:rgba(237,230,214,.75);margin:8px auto 20px;max-width:440px;}

/* EVENTO */
.evento{background:linear-gradient(135deg,var(--cafe-d),var(--cafe));color:#fff;border-radius:16px;padding:38px;position:relative;overflow:hidden;}
.evento .k{font-size:11px;letter-spacing:3px;text-transform:uppercase;opacity:.75;}
.evento h3{font-family:'Oswald';font-size:clamp(28px,4vw,42px);text-transform:uppercase;margin:6px 0 12px;letter-spacing:.5px;}
.evento p{font-size:14.5px;opacity:.9;max-width:520px;margin-bottom:20px;}
.ev-stats{display:flex;gap:26px;margin:22px 0;flex-wrap:wrap;}
.ev-stats div b{font-family:'Oswald';font-size:24px;display:block;line-height:1;}
.ev-stats div span{font-size:11px;opacity:.75;letter-spacing:.5px;}
.btn-w{background:#fff;color:var(--cafe-d);}

/* DATOS CONTACTO */
.datos{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px;}
.dato{background:var(--blanco);border:1px solid var(--linea);border-radius:12px;padding:22px;}
.dato .ic{width:26px;height:26px;color:var(--ocre);margin-bottom:10px;}
.dato h4{font-family:'Oswald';font-size:15px;margin-bottom:4px;}
.dato p{font-size:13px;color:var(--gris);line-height:1.55;}
.dato a{color:var(--cafe);font-weight:600;}

/* LISTA */
.lista{list-style:none;}
.lista li{padding:11px 0 11px 28px;position:relative;font-size:14.5px;border-bottom:1px solid var(--linea);}
.lista li:last-child{border-bottom:none;}
.lista li::before{content:'';position:absolute;left:2px;top:19px;width:8px;height:8px;background:var(--ocre);border-radius:50%;}
.lista li b{color:var(--verde);}

/* FOOTER */
footer{background:var(--verde-x);color:rgba(237,230,214,.78);padding:48px 0 24px;}
.f-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:32px;}
footer h5{color:var(--ocre);font-family:'Oswald';font-size:12px;letter-spacing:2px;text-transform:uppercase;margin-bottom:12px;}
footer button.flink{display:block;background:none;border:none;color:rgba(237,230,214,.78);font-family:'Poppins';font-size:13px;padding:4px 0;cursor:pointer;text-align:left;}
footer button.flink:hover{color:var(--ocre);}
footer .about b{font-family:'Oswald';color:var(--marfil);font-size:18px;letter-spacing:.8px;}
footer .about b span{color:var(--ocre);}
footer .about p{font-size:12.5px;margin-top:10px;max-width:280px;line-height:1.6;}
.copy{text-align:center;border-top:1px solid rgba(237,230,214,.1);margin-top:32px;padding-top:20px;font-size:11px;letter-spacing:1px;}
.copy b{color:var(--ocre);}



/* ===== EQUIPOS (chips de nombres) ===== */
.eq-card{background:var(--blanco);border:1px solid var(--linea);border-radius:14px;padding:24px;margin-bottom:14px;border-top:3px solid var(--verde);}
.eq-card.oc{border-top-color:var(--ocre);}
.eq-card.cf{border-top-color:var(--cafe);}
.eq-card h3{font-family:'Oswald';font-size:20px;color:var(--verde);letter-spacing:.3px;}
.eq-card.oc h3{color:var(--ocre);} .eq-card.cf h3{color:var(--cafe);}
.eq-card .fn{font-size:12.5px;color:var(--gris);margin:3px 0 14px;}
.chips-n{display:flex;flex-wrap:wrap;gap:7px;}
.chip-n{background:var(--marfil-2);border:1px solid var(--linea);border-radius:20px;padding:6px 14px;font-size:12.5px;font-weight:500;color:#33302b;}
.eq-mas{margin-top:16px;background:none;border:none;color:var(--cafe);font-family:'Poppins';font-weight:600;font-size:12.5px;cursor:pointer;padding:0;}
.eq-mas:hover{text-decoration:underline;}
.persona{background:var(--blanco);border:1px solid var(--linea);border-radius:12px;padding:20px;display:flex;gap:14px;align-items:flex-start;}
.persona .av{width:52px;height:52px;border-radius:50%;background:var(--marfil-2);display:flex;align-items:center;justify-content:center;font-size:22px;flex-shrink:0;border:1px solid var(--linea);}
.persona h4{font-family:'Oswald';font-size:16.5px;margin-bottom:3px;}
.persona p{font-size:12.5px;color:var(--gris);line-height:1.55;}
.persona .rol{display:inline-block;font-size:10px;font-weight:700;letter-spacing:.7px;text-transform:uppercase;color:var(--ocre);margin-bottom:5px;}
.grid-per{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;}


/* ===== MENÚ DE CATEGORÍAS (2 niveles) ===== */
.menu{display:flex;align-items:center;gap:2px;}
.cat{position:relative;}
.cat > .cbtn{display:flex;align-items:center;gap:5px;text-decoration:none;background:none;border:none;color:rgba(237,230,214,.78);font-family:'Poppins';font-size:13px;font-weight:500;padding:8px 13px;border-radius:6px;cursor:pointer;transition:all .16s;}
.cat > .cbtn:hover{color:var(--marfil);background:rgba(255,255,255,.06);}
.cat.open > .cbtn, .cat > .cbtn.on{color:var(--ocre-c);font-weight:600;}
.cat > .cbtn::after{content:'';width:5px;height:5px;border-right:1.6px solid currentColor;border-bottom:1.6px solid currentColor;transform:rotate(45deg) translateY(-2px);opacity:.6;transition:transform .18s;}
.cat:hover > .cbtn::after,.cat.open > .cbtn::after{transform:rotate(-135deg) translateY(-1px);}
.drop{position:absolute;top:100%;left:0;min-width:230px;background:var(--blanco);border:1px solid var(--linea);border-radius:12px;box-shadow:0 14px 38px rgba(74,49,32,.16);padding:8px;opacity:0;visibility:hidden;transform:translateY(-6px);transition:all .16s;z-index:60;}
.cat:hover .drop,.cat.open .drop{opacity:1;visibility:visible;transform:translateY(4px);}
.drop .dh{font-size:9.5px;letter-spacing:1.6px;text-transform:uppercase;color:var(--gris);font-weight:700;padding:8px 12px 6px;}
.drop button, .drop a{display:block;width:100%;text-align:left;background:none;border:none;font-family:'Poppins';font-size:13.5px;font-weight:500;color:var(--negro);padding:9px 12px;border-radius:8px;cursor:pointer;transition:all .12s;}
.drop button:hover, .drop a:hover{background:var(--marfil-2);color:var(--cafe);padding-left:16px;}
.drop button b, .drop a b{display:block;font-weight:600;font-size:13.5px;}
.drop button span, .drop a span{display:block;font-size:11px;color:var(--gris);font-weight:400;margin-top:1px;}
.drop .sep{height:1px;background:var(--linea);margin:6px 10px;}
.cat.ec .drop button:hover, .drop a:hover{color:var(--cafe);}
.cat.pa .drop button:hover, .drop a:hover{color:#5f8f2a;}
@media(max-width:900px){
  .drop{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;border:none;background:none;padding:0 0 0 10px;min-width:0;}
  .cat{width:100%;}
  .cat > .cbtn{width:100%;justify-content:space-between;}
  .cat > .cbtn::after{display:none;}
  .drop .dh{padding:6px 10px 2px;color:var(--ocre-c);}
  .drop button, .drop a{padding:8px 10px;color:var(--marfil);}
  .drop button:hover, .drop a:hover{background:rgba(237,230,214,.1);color:var(--ocre-c);padding-left:14px;}
  .drop button b, .drop a b{color:var(--marfil);}
  .drop button span, .drop a span{color:rgba(237,230,214,.65);}
  .menu{flex-direction:column;align-items:stretch;gap:0;}
}

/* ===== TABLA DE SERVICIOS POR COMPONENTE ===== */
.tsv{width:100%;border-collapse:collapse;background:var(--blanco);border:1px solid var(--linea);border-radius:12px;overflow:hidden;font-size:13.5px;}
.tsv th{background:var(--verde);color:var(--marfil);font-family:'Oswald';font-weight:400;text-align:left;padding:11px 16px;font-size:12.5px;text-transform:uppercase;letter-spacing:.6px;}
.tsv th:last-child{text-align:right;}
.tsv td{padding:11px 16px;border-bottom:1px solid #EFE8D8;vertical-align:top;}
.tsv tr:last-child td{border-bottom:none;}
.tsv td:last-child{text-align:right;font-family:'Oswald';font-size:15.5px;color:var(--cafe);white-space:nowrap;}
.tsv .gr td{background:var(--marfil-2);font-family:'Oswald';font-size:12.5px;color:var(--verde);text-transform:uppercase;letter-spacing:1.2px;padding:9px 16px;}
.tsv small{display:block;font-size:11.5px;color:var(--gris);margin-top:2px;line-height:1.45;}
@media(max-width:560px){.tsv td,.tsv th{padding:9px 11px;font-size:12.5px;}.tsv td:last-child{font-size:14px;}}
/* ===== ESCALERA DE SERVICIOS ===== */
.esc{background:var(--blanco);border:1px solid var(--linea);border-radius:14px;padding:26px 28px;}
.esc-r{margin-bottom:16px;}
.esc-r:last-child{margin-bottom:0;}
.esc-t{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:6px;}
.esc-t h4{font-family:'Oswald';font-size:16px;color:var(--verde);letter-spacing:.3px;}
.esc-t .pr{font-family:'Oswald';font-size:17px;color:var(--cafe);white-space:nowrap;}
.esc-bar{height:26px;background:var(--marfil-2);border-radius:6px;overflow:hidden;}
.esc-bar i{display:block;height:100%;border-radius:6px;transition:width .7s cubic-bezier(.2,.7,.3,1);}
.esc-r p{font-size:11.5px;color:var(--gris);margin-top:5px;line-height:1.5;}
.esc-note{font-size:11.5px;color:var(--gris);margin-top:18px;padding-top:14px;border-top:1px dashed var(--linea);line-height:1.6;}
/* ===== CADENA DEL CAFÉ ===== */
.cadena{display:flex;align-items:stretch;gap:0;margin-top:8px;flex-wrap:wrap;}
.cad{flex:1;min-width:120px;text-align:center;padding:18px 10px;position:relative;}
.cad:not(:last-child)::after{content:'';position:absolute;right:-6px;top:50%;width:11px;height:11px;border-right:2px solid var(--ocre);border-top:2px solid var(--ocre);transform:translateY(-50%) rotate(45deg);opacity:.6;}
.cad .ico{font-size:26px;}
.cad b{display:block;font-family:'Oswald';font-size:14px;color:var(--ocre);margin-top:8px;letter-spacing:.3px;}
.cad span{display:block;font-size:11px;color:rgba(237,230,214,.78);margin-top:3px;line-height:1.45;}
@media(max-width:700px){.cad{min-width:44%;}.cad::after{display:none !important;}}

/* ===== CADENA LOGÍSTICA DE LA BICI ===== */
.log{counter-reset:l;margin-top:6px;}
.log-i{display:flex;gap:14px;padding:12px 0;border-bottom:1px dashed rgba(237,230,214,.2);align-items:flex-start;}
.log-i:last-child{border-bottom:none;}
.log-i .b{counter-increment:l;flex-shrink:0;width:26px;height:26px;border-radius:50%;background:var(--ocre);color:#16281F;font-family:'Oswald';font-size:13px;display:flex;align-items:center;justify-content:center;}
.log-i .b::before{content:counter(l);}
.log-i h5{font-family:'Oswald';font-size:14.5px;color:var(--marfil);letter-spacing:.3px;}
.log-i p{font-size:12.5px;color:rgba(237,230,214,.78);line-height:1.55;margin-top:2px;}

/* ===== CONTRASTE: ocre claro sobre fondos oscuros (AA ≥4.5) ===== */
.sec.dark .eyebrow, .hero .eyebrow, .franja .k, .franja.inv .k{color:var(--ocre-c) !important;}
.sec.dark .sec-head .eyebrow{color:var(--ocre-c) !important;}
.kit-li span{color:var(--ocre-c) !important;}
.log-i h5 b, .sec.dark b[style*="--ocre"]{color:var(--ocre-c) !important;}
.cad b{color:var(--ocre-c) !important;}
.perfil text[fill="#A9702E"]{fill:#DAAC77 !important;}
/* sello sobre ocre: texto oscuro en vez de blanco (4.10 → 8.9) */
.cimg .cat{color:#fff;}
.cimg .cat[style*="--ocre"]{background:#8A5A34 !important;color:#fff !important;}
/* ===== FRANJA PARCEROS ===== */
.franja{background:var(--verde-x);border-radius:16px;padding:30px 34px;margin-top:44px;display:flex;align-items:center;gap:28px;color:var(--marfil);position:relative;overflow:hidden;}
.franja::before{content:'';position:absolute;right:-40px;top:-40px;width:180px;height:180px;border-radius:50%;background:rgba(140,198,63,.07);}
.franja .fx{flex:1;position:relative;z-index:1;}
.franja .k{font-size:10.5px;letter-spacing:3px;text-transform:uppercase;color:#8CC63F;font-weight:700;}
.franja h3{font-family:'Oswald';font-size:25px;text-transform:uppercase;letter-spacing:.5px;margin:7px 0 8px;color:var(--marfil);}
.franja p{font-size:13.5px;color:rgba(237,230,214,.75);line-height:1.6;max-width:460px;}
.franja .fb{display:flex;gap:10px;flex-wrap:wrap;position:relative;z-index:1;flex-shrink:0;}
.franja .btn-lima{background:#8CC63F;color:#16281F;}
.franja.inv{background:var(--cafe-d);}
.franja.inv::before{background:rgba(169,112,46,.10);}
.franja.inv .k{color:var(--ocre);}
.franja.inv .btn-tierra{background:var(--ocre);color:#2A1B0F;}
.franja.inv .btn-tierra:hover{background:#c08238;}
.franja .btn-lima:hover{background:#9ed44f;}
@media(max-width:820px){.franja{flex-direction:column;align-items:flex-start;padding:26px 22px;gap:18px;}.franja .fb{width:100%;}.franja .fb .btn{flex:1;}}
/* ===== OPCIONES DE RUTA ===== */
.ops{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.op{background:var(--blanco);border:1px solid var(--linea);border-radius:14px;overflow:hidden;display:flex;flex-direction:column;}
.op.dos{border:2px solid var(--ocre);}
.op-h{padding:18px 22px;background:var(--verde);color:var(--marfil);}
.op.dos .op-h{background:var(--ocre);}
.op-h .tag{font-size:10px;letter-spacing:1.5px;text-transform:uppercase;font-weight:700;opacity:.85;}
.op-h h3{font-family:'Oswald';font-size:21px;letter-spacing:.4px;margin-top:3px;}
.op-h .sub{font-size:12px;opacity:.85;margin-top:2px;}
.op-b{padding:20px 22px;flex:1;}
.op-n{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:14px;}
.op-n div{background:var(--marfil-2);border-radius:9px;padding:11px;text-align:center;}
.op-n b{font-family:'Oswald';font-size:20px;color:var(--cafe);display:block;line-height:1;}
.op-n span{font-size:10.5px;color:var(--gris);letter-spacing:.3px;}
.op-b ul{list-style:none;}
.op-b li{font-size:12.5px;color:var(--gris);padding:5px 0 5px 16px;position:relative;line-height:1.5;}
.op-b li::before{content:'›';position:absolute;left:2px;color:var(--ocre);font-weight:700;}
.op-b .quien{margin-top:12px;padding-top:12px;border-top:1px solid var(--linea);font-size:12.5px;}
.op-b .quien b{color:var(--verde);}
.op.dos .op-b .quien b{color:var(--ocre);}
@media(max-width:760px){.ops{grid-template-columns:1fr;}}
/* ===== FICHA TÉCNICA SIFÓN ===== */
.ficha{width:100%;border-collapse:collapse;background:var(--blanco);border:1px solid var(--linea);border-radius:12px;overflow:hidden;font-size:13.5px;}
.ficha th{background:var(--verde);color:var(--marfil);font-family:'Oswald';font-weight:400;letter-spacing:.5px;text-align:left;padding:11px 16px;font-size:13px;text-transform:uppercase;}
.ficha td{padding:11px 16px;border-bottom:1px solid #EFE8D8;vertical-align:top;}
.ficha tr:last-child td{border-bottom:none;}
.ficha td:first-child{font-weight:600;color:var(--verde);width:42%;}
.ficha .dato{font-family:'Oswald';font-size:16px;color:var(--cafe);}
.ficha .pc{color:var(--gris);font-style:italic;font-size:12.5px;}
.perfil{background:var(--verde-x);border-radius:14px;padding:22px;margin-top:16px;}
.perfil svg{width:100%;height:auto;display:block;}
.aviso{background:#F3E7D6;border-left:4px solid var(--ocre);border-radius:8px;padding:14px 18px;font-size:13px;color:#5a4a33;margin:18px 0;line-height:1.6;}
.aviso b{color:var(--cafe);}
.regla{display:flex;gap:12px;align-items:flex-start;background:var(--blanco);border:1px solid var(--linea);border-left:3px solid var(--ocre);border-radius:10px;padding:14px 16px;margin-bottom:9px;}
.regla .n{font-family:'Oswald';font-size:20px;color:var(--ocre);line-height:1;flex-shrink:0;}
.regla h5{font-family:'Oswald';font-size:15px;margin-bottom:3px;color:var(--verde);}
.regla p{font-size:12.5px;color:var(--gris);line-height:1.55;}
.kit-li{display:flex;justify-content:space-between;gap:14px;padding:11px 0;border-bottom:1px dashed rgba(237,230,214,.18);font-size:13.5px;}
.kit-li:last-child{border-bottom:none;}
.kit-li span{color:var(--ocre);font-weight:600;white-space:nowrap;}
@media(max-width:560px){.ficha td:first-child{width:50%;}.ficha,.ficha td{font-size:12.5px;}}

@media(max-width:900px){
  .puertas{grid-template-columns:repeat(2,1fr);}
  .f-grid{grid-template-columns:1fr;}
}
@media(max-width:760px){
  .menu{display:none;position:absolute;top:100%;left:0;right:0;background:var(--verde-d);flex-direction:column;padding:12px;gap:2px;max-height:calc(100vh - 64px);overflow-y:auto;}
  .menu.open{display:flex;}
  .menu button, .menu > a{width:100%;text-align:left;padding:12px 14px;}
  .burger{display:block;}
  .hero{padding-top:48px;}
  .wrap{padding:0 18px;}
  .sec{padding:44px 0;}
  .sec-head{margin-bottom:22px;}
  .cifras{grid-template-columns:1fr;}
  .grid-p{grid-template-columns:repeat(2,1fr);gap:10px;padding:14px;}
  .cimg{height:110px;font-size:34px;}
  .evento{padding:22px;}
  .gancho{padding:22px;}
  .det-b{padding:20px 18px;}
  .det-f{margin-top:2px;}
}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;}}
/* ===== SERVICIOS CLICABLES: el recuadro entero es el botón ===== */
a.esc-r{display:block;text-decoration:none;color:inherit;border-radius:10px;padding:10px;margin:-10px -10px 6px;transition:background .15s, transform .15s;position:relative;}
a.esc-r:hover{background:var(--marfil-2);transform:translateX(3px);}
a.esc-r::after{content:'💬';position:absolute;right:10px;top:10px;opacity:0;transition:opacity .15s;font-size:15px;}
a.esc-r:hover::after{opacity:1;}
.tsv tr.clic{cursor:pointer;transition:background .15s;}
.tsv tr.clic:hover{background:var(--marfil-2);}
.tsv tr.clic:hover td:first-child{color:var(--cafe);}
.tsv tr.clic td:last-child{position:relative;}
.tsv tr.clic:hover td:last-child::after{content:' 💬';font-size:12px;}

/* ===== Logo real ===== */
.logo img{display:block;flex-shrink:0;object-fit:contain;}
@media(max-width:520px){.logo img{width:36px;height:36px;}}
