/* SMR Recorridos · estilos de los componentes (mismo estilo del sitio) */
.smr-btn.smr-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:50px;padding:0 24px;border-radius:999px;border:0;background:#8A1538;color:#fff!important;font:700 13.5px/1 'Rubik',sans-serif;letter-spacing:.06em;text-transform:uppercase;text-decoration:none;cursor:pointer;transition:background .25s,transform .25s}
.smr-btn.smr-btn:hover{background:#6A0F2A;transform:translateY(-2px)}
.smr-btn.smr-btn--linea{background:#fff;color:#1F1B17!important;border:1.5px solid #E6DED3}
.smr-btn.smr-btn--linea:hover{background:#fff;border-color:#8A1538}
.smr-aviso{font:500 13px/1.45 'Rubik',sans-serif;color:#7a5b00;background:#FFF6D6;border:1px dashed #E2C35A;border-radius:12px;padding:10px 14px;margin:8px 0}

/* Ubicación */
.smr-geo{display:flex;flex-direction:column;gap:14px;font-family:'Rubik',sans-serif}
.smr-geo__row{display:flex;gap:16px;align-items:center}
.smr-geo__ic{flex:none;width:58px;height:58px;border-radius:29px;background:#8A1538;position:relative}
.smr-geo__ic::after{content:"";position:absolute;inset:19px;border-radius:50%;border:3px solid #fff}
.smr-geo__ic::before{content:"";position:absolute;inset:-7px;border-radius:50%;border:2px solid rgba(138,21,56,.3);animation:smrOnda 2s infinite}
.smr-geo.is-ok .smr-geo__ic{background:#0F6B5C}
.smr-geo__t{display:block;font:500 26px/1.1 'Cormorant Garamond',serif;color:#1F1B17}
.smr-geo__msg{display:block;font-size:15px;color:#6B635C;margin-top:4px}
.smr-geo__btns{display:flex;gap:10px;flex-wrap:wrap}
@keyframes smrOnda{from{transform:scale(.85);opacity:1}to{transform:scale(1.35);opacity:0}}

/* Mapa */
.smr-map{position:relative;border-radius:30px;overflow:hidden;border:1px solid #E6DED3;box-shadow:0 20px 50px rgba(31,27,23,.08)}
.smr-map__canvas{width:100%;height:clamp(420px,70vh,640px);background:#EEE9E1}
/* Columna del mapa fija al bajar (clase smr-fijo en el contenedor, escritorio y tableta) */
@media (min-width:768px){.smr-fijo{position:sticky!important;top:110px;align-self:flex-start}}
.smr-map__err{padding:40px;text-align:center;color:#6B635C}
.smr-pin{width:38px;height:38px;border-radius:19px 19px 19px 4px;transform:rotate(-45deg);border:3px solid #fff;box-shadow:0 6px 16px rgba(0,0,0,.3);display:grid;place-items:center}
.smr-pin span{transform:rotate(45deg);color:#fff;font:600 17px 'Cormorant Garamond',serif}
.smr-yo{width:22px;height:22px;border-radius:11px;background:#0F6B5C;border:4px solid #fff;box-shadow:0 0 0 10px rgba(15,107,92,.22)}
.smr-info{display:flex;flex-direction:column;gap:6px;max-width:200px;font-family:'Rubik',sans-serif}
.smr-info img{width:100%;height:100px;object-fit:cover;border-radius:10px}
.smr-info b{font:600 18px/1.15 'Cormorant Garamond',serif}
.smr-info a{color:#8A1538;font-weight:600;text-decoration:none}

/* Navegación de la ruta */
.smr-nav{display:flex;flex-direction:column;gap:10px;font-family:'Rubik',sans-serif}
.smr-nav__ruta{font:500 24px/1.1 'Cormorant Garamond',serif;color:#1F1B17;text-decoration:none}
.smr-nav__n{font-size:13px;color:#6B635C}
.smr-nav__dots{display:flex;gap:6px}
.smr-nav__dots a{flex:1;height:6px;border-radius:3px;background:#E6DED3}
.smr-nav__dots a.is-on{background:#8A1538}
.smr-nav__pn{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.smr-nav__pn a{min-height:46px;border-radius:14px;border:1.5px solid #E6DED3;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:13px;color:#1F1B17;text-decoration:none}
.smr-nav__pn a:hover{border-color:#8A1538;color:#8A1538}
.smr-nav-cards{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.smr-nav-card{position:relative;min-height:240px;border-radius:28px;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end;padding:24px;text-decoration:none;color:#1F1B17;background:#F7F3EE;transition:transform .5s,box-shadow .5s}
.smr-nav-card.is-empty{background:none;min-height:0}
.smr-nav-card.is-next{text-align:right}
.smr-nav-card__bg{position:absolute;inset:0;background-size:cover;background-position:center;transition:transform 1.2s}
.smr-nav-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,.1) 20%,rgba(255,255,255,.92) 75%,#fff)}
.smr-nav-card>span:not(.smr-nav-card__bg){position:relative;z-index:1}
.smr-nav-card__k{font:600 12.5px 'Rubik',sans-serif;letter-spacing:.2em;text-transform:uppercase;color:#8A1538}
.smr-nav-card__t{font:500 32px/1.05 'Cormorant Garamond',serif}
.smr-nav-card:hover{transform:translateY(-6px);box-shadow:0 22px 46px rgba(31,27,23,.14)}
.smr-nav-card:hover .smr-nav-card__bg{transform:scale(1.05)}

/* Narración */
.smr-narr{display:flex;align-items:center;gap:18px;background:#fff;border:1px solid #E6DED3;border-radius:28px;padding:16px 22px 16px 16px;box-shadow:0 24px 60px rgba(31,27,23,.12);font-family:'Rubik',sans-serif}
.smr-narr__play,.smr-mini button{flex:none;width:68px;height:68px;border-radius:34px;border:0;background:#8A1538;display:grid;place-items:center;cursor:pointer;transition:background .25s,transform .25s}
.smr-narr__play:hover{transform:scale(1.05)}
.smr-narr.is-on .smr-narr__play{background:#F2B705}
.smr-i-play{width:0;height:0;border-left:18px solid #fff;border-top:11px solid transparent;border-bottom:11px solid transparent;margin-left:5px}
.smr-narr.is-on .smr-i-play,.smr-mini button.is-on .smr-i-play{width:18px;height:22px;border:0;margin:0;background:linear-gradient(90deg,#1F1B17 0 6px,transparent 6px 12px,#1F1B17 12px 18px)}
.smr-narr__info{flex:1;min-width:0}
.smr-narr__t{display:flex;justify-content:space-between;gap:12px;align-items:baseline}
.smr-narr__t b{font:500 24px/1.1 'Cormorant Garamond',serif;color:#1F1B17}
.smr-narr__time{font-size:12.5px;color:#6B635C;font-variant-numeric:tabular-nums;white-space:nowrap}
.smr-narr__bar{position:relative;height:8px;border-radius:4px;background:#E6DED3;margin-top:12px;cursor:pointer}
.smr-narr__bar i{position:absolute;left:0;top:0;bottom:0;width:0;border-radius:4px;background:#8A1538}
.smr-narr__bar:focus-visible{outline:2px solid #8A1538;outline-offset:4px}
.smr-narr__speed{flex:none;min-width:52px;min-height:44px;border-radius:14px;border:1.5px solid #E6DED3;background:#fff;font-weight:700;font-size:13px;cursor:pointer}
.smr-narr__texto{margin:10px 4px 0;font-family:'Rubik',sans-serif;color:#3F3934}
.smr-narr__texto summary{cursor:pointer;font-weight:600;color:#8A1538}
.smr-mini{position:fixed;left:50%;bottom:18px;transform:translate(-50%,140%);z-index:9999;display:flex;align-items:center;gap:12px;background:#1F1B17;color:#fff;border-radius:999px;padding:8px 18px 8px 8px;box-shadow:0 14px 34px rgba(0,0,0,.3);transition:transform .45s cubic-bezier(.2,.8,.2,1);max-width:calc(100% - 32px);font-family:'Rubik',sans-serif}
.smr-mini.is-show{transform:translate(-50%,0)}
.smr-mini button{width:46px;height:46px;background:#F2B705}
.smr-mini .smr-i-play{border-left-color:#1F1B17}
.smr-mini span{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

@media (max-width:767px){
	.smr-nav-cards{grid-template-columns:1fr}
	.smr-narr{gap:12px;padding:12px}
	.smr-narr__play{width:56px;height:56px}
	.smr-narr__t b{font-size:20px}
	.smr-narr__speed{display:none}
}
@media (prefers-reduced-motion:reduce){.smr-geo__ic::before{animation:none}}