html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video{margin:0;padding:0;border:0;font:inherit;vertical-align:baseline;}
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section{display:block;}
ol, ul{list-style:none;}
blockquote, q{quotes:none;}
blockquote:before, blockquote:after,
q:before, q:after{content:'';content:none;}
table{border-collapse:collapse;border-spacing:0;}
img.scale, img.responsive{max-width:100%;height:auto;}
.alpha{margin-left:0;}
.omega{margin-right:0;}
.beta{margin-left:0;margin-right:0;}
html{background:#f2f3f7;line-height:1.4;color:#222;font-size:1.0rem;}
body{line-height:1;}
body{font-family:arial,sans-serif;text-align:justify}
button, input, select, textarea{color:#222;}
::-moz-selection{background:#b3d4fc;text-shadow:none;}
hr{display:block;height:1px;border:0;border-top:1px solid #ccc;margin:0.1em 0;padding:0;}
audio, canvas, img, video{vertical-align:middle;}
fieldset{border:0;margin:0;padding:0;}
textarea{resize:vertical;}
input{box-shadow:none;border:1px solid #e7e8ea;-webkit-border-radius:5px;border-radius:5px;padding:10px;width:100%;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;}
select::-ms-expand{display:none;}
a{color:#306DAB;text-decoration:none;}
a:hover{color:#122439;}
p{line-height:20px;color:#444;}
b, strong{font-weight:700;}
#header{min-height:50px;margin-bottom:4px;background:#fff;background:-moz-linear-gradient(top, #fff 0, #f9f9fb 100%);background:-webkit-gradient(linear, left top, left bottom, color-stop(0, #fff), color-stop(100%, #f9f9fb));background:-webkit-linear-gradient(top, #fff 0, #f9f9fb 100%);background:-o-linear-gradient(top, #fff 0, #f9f9fb 100%);background:-ms-linear-gradient(top, #fff 0, #f9f9fb 100%);background:linear-gradient(to bottom, #fff 0, #f9f9fb 100%);}
#header .logo{float:left;height:46px;width:238px;text-indent:-9999px;display:inline-block;background:url(https://www.calcularruta.com/user-content/templates/rutas/public/images/calcularruta.png) 0 0 no-repeat;margin:2px 0;}
#header nav{text-align:center;}
#header nav ul{float:right;line-height:60px;}
#header nav ul li{display:block;float:left;}
#header nav ul a{color:#306DAB;display:block;padding:0 18px;text-transform:uppercase;}
#header nav ul a:hover{background:#f2f3f7;color:#306DAB;}
h1{color:#444;font-size:1.32rem;padding-top:3px;}
h1 span{color:#306DAB;}
h2{color:#444;font-size:1.3rem;}
h2 span{color:#306DAB;}
h3{color:#444;font-size:1.2rem;}
h4{font-weight:700;font-size:1.1rem;}
.bloque{padding:10px 10px;background:#fff;margin-bottom:10px;}
.bloque_cab{padding:4px 10px;background:#fff;}
.p25{padding-bottom:25px;}
.msg{color:#ff0000;}
.msgori{color:#ff0000;}
.msgdes{color:#ff0000;}
.titulo_form{color:#444;}
.itine{width:100%;height:252px;overflow:auto;}
.instruccionesmovil{width:100% !important;height:180px;overflow:auto;}
.pointer li{background:url(https://www.calcularruta.com/user-content/templates/rutas/public/images/pointer.gif) 0 50% no-repeat;padding-left:15px;margin-bottom:10px;}
.pointer a:hover{color:#122439;}
.masinfo p{color:#444;line-height:20px;}
.peque{color:#666;}
.gas{float:left;min-width:66px;text-align:center;vertical-align:middle;}
.gas .logo{display:block;text-indent:-9999px;height:40px;margin-bottom:10px;}
.gasolina95 .logo{background:url(https://www.calcularruta.com/user-content/templates/rutas/public/images/gasolina_r2_c1.png) 0 0 no-repeat;border-bottom:5px solid #306DAB;margin-right:1px;}
.gasolina98 .logo{background:url(https://www.calcularruta.com/user-content/templates/rutas/public/images/gasolina_r2_c3.png) 0 0 no-repeat;border-bottom:5px solid #6ab52f;margin-right:1px;}
.gasoil .logo{background:url(https://www.calcularruta.com/user-content/templates/rutas/public/images/gasolina_r3_c5.png) 0 0 no-repeat;border-bottom:5px solid #00acee;margin-right:1px;}
.gasoilplus .logo{background:url(https://www.calcularruta.com/user-content/templates/rutas/public/images/gasolina_r1_c7.png) 0 0 no-repeat;border-bottom:5px solid #fb3333;margin-right:1px;}
.precio{position:relative;color:#444;}
.precio:after{content:'€';position:absolute;bottom:-2px;right:-14px;color:#306DAB;}
.styled-select select{background:transparent;width:100%;padding:5px;line-height:1;border:0;border-radius:0;height:34px;-webkit-appearance:none;cursor:pointer;color:#666;}
.styled-select{width:100%;height:34px;overflow:hidden;border:1px solid #ccc;-webkit-border-radius:5px;border-radius:5px;}
.buscar_gaso a{margin-top:10px;font-weight:400;}
.select_provincia{margin-bottom:10px;}
.select_ciudad{margin-bottom:20px;}
.incidencias {padding-bottom:13px;}
.incidencias ul{border-top:1px solid #ddd;padding-top:10px;}
.incidencias li{color:#444;line-height:22px;border-bottom:1px solid #ddd;padding-bottom:10px;margin-bottom:10px;}
.incidencias .fecha{color:#09865F;}
.incidencias .fecha:after{color:#09865F;content:' - '}
.ad-center{margin-top:10px;margin-bottom:5px;text-align:center;}
.ad-center-mb{margin-top:10px;margin-bottom:5px;text-align:center;height:300px !important}
#advertising-top{margin:0 auto;max-width:970px;height:280px !important}
#advertising{margin:0 auto;}
.a{height:280px;min-height:280px;}
.advertising-book{width:300px !important;margin:0 auto;position: relative;display: inline-block;text-align: center;	}
.textobook{position: absolute;color:#444;font-size:0.875rem;top: 35%;left: 33%;transform: translate(-50%, -50%);}
.spacer{text-align:center;}
.botonesmovil{height:22px}
.btn{display:inline-block;padding:5px;margin-bottom:0;color:#fff;font-size:0.775rem;font-weight:bold;text-align:center;white-space:nowrap;vertical-align:middle;cursor:pointer;background-image:none;border:1px solid transparent;border-radius:3px;line-height:1;}
.btn:focus,.btn.active.focus{outline:5px auto -webkit-focus-ring-color;outline-offset:-2px;}
.btn:hover,.btn:focus{color:#333;text-decoration:none;}
.btn-default{color:#fff;background-color:#306DAB;border-color:#306DAB;}
.btn-default.focus{color:#fff;background-color:#306DAB;border-color:#306DAB;}
.btn-default:hover{color:#fff;background-color:#306DAB;border-color:#306DAB;}
.btn-default:active{color:#fff;background-color:#306DAB;border-color:#306DAB;}
.btn-default.active{background-image:none;}
.btn-default .badge{color:#fff;background-color:#333;}
.textcolor{color:#09865F;font-size:0.77rem;font-weight:bold;}
.textcolor2{color:#306DAB;font-size:0.77rem;font-weight:bold;}
.container-12{width:1170px;margin:0 auto;}
.container-12 .grid-12{width:1170px;display:inline;float:left;}
.grid-840{width:825px;float:left;color:#444;}
.grid-336{width:336px;float:right;color:#444;}
#contenedor_ruta .right{color:#306DAB;font-weight:600;}
#contenedor_ruta .right .distancia{position:relative;height:36px;line-height:20px;display:inline-block;padding-left:35px;background:url(https://www.calcularruta.com/user-content/templates/rutas/public/images/sprite.png) 0 -96px no-repeat;margin-right:20px;}
#contenedor_ruta .right .after{position:absolute;bottom:0;right:0;text-transform:uppercase;color:#999;}
#contenedor_ruta .right .distancia:after, #contenedor_ruta .right .duracion:after{position:absolute;bottom:0;right:0;text-transform:uppercase;color:#999;font-size:0.575rem;}
#contenedor_ruta .right .distancia:after{content:'distancia'}
#contenedor_ruta .right .duracion:after{content:'duracion'}
#contenedor_ruta .right .duracion{position:relative;height:36px;line-height:20px;display:inline-block;padding-left:35px;background:url(https://www.calcularruta.com/user-content/templates/rutas/public/images/sprite.png) 0 -42px no-repeat;}
#contenedor_ruta .right .inversa{position:relative;height:36px;line-height:20px;display:inline-block;padding-left:35px;background:url(https://www.calcularruta.com/user-content/templates/rutas/public/images/sprite.png) 0 -121px no-repeat;margin-right:20px;}
#contenedor_ruta .right .inversa a{color:#306DAB;text-decoration:none;}
#contenedor_ruta .right .inversa:after{position:absolute;bottom:0;right:0;text-transform:uppercase;color:#999;font-size:0.575rem;}
#contenedor_ruta .right .inversa:after{content:'inversa'}
#contenedor_ruta .grid-840 .boton{float:left;width:100px;margin-bottom:10px;}
#contenedor_ruta .datos{border:1px solid #ccc;padding:10px;line-height:20px;min-height:65px;}
#contenedor_ruta .grid-840 .datos ul{margin:0;}
#contenedor_ruta .grid-840 .datos li{padding-left:0px;color:#306DAB;}
#contenedor_ruta  form input{vertical-align:bottom;width:16px;}
#contenedor_ruta .boton{float:left;width:100px;margin-bottom:10px;}
#contenedor_ruta .boton label{text-transform:uppercase;color:#444;font-size:0.675rem;}
#contenedor_ruta .bloque_buscador{padding-bottom:25px;padding-top:5px;padding-left:0px;padding-right:0px;background:#fff;margin-bottom:0px;}
#contenedor_ruta .o, .d{margin-left:0px;float:none;}
#contenedor_ruta .o input{width:100%;margin-top:0;vertical-align:baseline;}
#contenedor_ruta .d input{width:100%;margin-top:4px;vertical-align:baseline;}
#contenedor_ruta .calc-portada input[type="submit"]{background-color:#09865F;border-radius:4px;font-weight:bold;float:left;cursor:pointer;color:#fff;width:100%;margin:0;margin-top:4px;}
#contenedor_ruta .cont_opciones{width:100%;}
#contenedor_ruta .cont_opciones .iti{width:49%;float:left;}
#contenedor_ruta .cont_opciones .gas{width:50%;float:right;text-align:left;}
.aff_hotels{font-size:0.975rem;display:flex;flex-direction:row;background-color:transparent;background:#f2f3f7;padding:0px 8px 8px 8px;width:auto;}
.b-aff-hotels--template2:first-child{margin-left:0;}
.b-aff-hotels--template2{min-height:200px;margin:8px 0px 0px 1.75%;box-sizing:border-box;float:left;overflow:hidden;position:relative;border-radius:0;border:0;padding:15px;background-color:#fff;z-index:0;}
.aff_hotel-title{padding:5px 0px 0px 2px;float:left;width:auto;max-height:30px;overflow:visible;}
.image-wrapper img{width:100%;height:100%;border:0}
.hotelImage{margin:-17px -17px 1px;overflow:hidden;width:auto;height:80%;border-top-left-radius:5px;border-top-right-radius:5px;}
.form_cal{padding:10px 0px 10px 0px;}
.sub_title{display:block;color:#444;margin-bottom:15px;}
.fila{color:#7b7a7a;height:30px;line-height:30px;padding-left:15px;}
.fila span{font-weight:600;}
.fila span:after{content:' - '}
.final{height:80px !important;line-height:80px;}
.final span{font-weight:400 !important;}
.final span:after{content:'' !important;}
.gasolinera_detail{border-bottom:1px solid #ddd;padding-bottom:20px;margin-bottom:20px;}
.gasolinera_detail .gmaps{margin-right:15px;float:left;width:160px;}
.gasolinera_detail .gmaps a{margin-top:-2px;display:block;width:100%;height:30px;line-height:30px;color:#fff;background:#306DAB;text-transform:uppercase;text-align:center;}
.gasolinera_detail ul span{color:#306DAB;}
.gasolinera_detail h4{color:#306DAB;border-bottom:1px solid #ddd;margin-bottom:20px;padding-bottom:10px;}
.gasolinera_detail .detalles{float:left;width:100%;}
.gasolinera_detail li{margin-bottom:10px;}
.gasolinera_detail .lugar{background:url(https://www.calcularruta.com/user-content/templates/rutas/public/images/date.gif) 0 50% no-repeat;padding-left:20px;}
.gasolinera_detail .price{color:#09865F}
.otras_locad{text-transform:uppercase;}
.m_5{margin-top:5px;}
.m_10{margin-top:10px;}
.m_10_2{margin-top:0px;margin-bottom:10px;}
.m_titulo{min-height:36px;}
.mb_10{margin-bottom:10px;}
.m_15{margin-top:15px;}
.m_20{margin-top:20px;}
.m_30{margin-top:30px;}
.botones{height:24px;margin-bottom:5px;}
.clearfix:before, .clearfix:after{content:" ";display:table;}
.clearfix:after{clear:both;}
.right{float:right;}
.right2{float:right;}
.right2-10{float:right;margin-left:8px}
.container_social{height:33px;}
.c_desktop{height:33px;margin:0 auto;}
.c_social{width:185px;margin:0 auto;padding-bottom:4px;}
.sprite{background-image:url(https://www.calcularruta.com/user-content/templates/rutas/public/images/social.png);background-repeat:no-repeat;display:block;}
.sprite-facebook{width:38px;height:33px;background-position:-5px -5px;}
.sprite-gplus{width:38px;height:33px;background-position:-53px -5px;}
.sprite-print{width:38px;height:33px;background-position:-101px -5px;}
.sprite-twitter{width:38px;height:33px;background-position:-149px -5px;}
.sprite-whatapp{width:38px;height:33px;background-position:-197px -5px;}
.share i{float:left;margin-left:8px;}
.share .v{float:none;}
.share .pr{margin-left:0px;}
.left{float:left;}
.leftdiv-10{float:left;margin-left:8px}
.azul{color:#306DAB;}
.two_colum{-moz-column-count:3;-moz-column-gap:30px;-webkit-column-count:3;-webkit-column-gap:30px;column-count:3;column-gap:30px;}
.ruta-seo-grid {display: block; clear: both;margin-bottom: 14px;}
.ruta-seo-card {margin-bottom: 12px;}
.ruta-seo-card h2 {margin-top: 0;}
#footer{min-height:50px;line-height:50px;background:#fff;}
#footer p{text-align:center;}
#mapa{width:100% !important;height:330px !important;display:none;}
#cmapa{height:70px;padding-top:60px;}
#cmapa button{background-color:#03875F;color:#fff;font-size:0.775rem;text-decoration:none;padding:5px;border:1px solid transparent;border-radius:3px;font-weight:bold;border-color:#03875F;}
#cmapa{margin:0;text-align:center;background:transparent url(https://www.calcularruta.com/user-content/templates/rutas/public/images/maps.jpg) no-repeat;background-size:cover;padding-top:130px;cursor:pointer;height:200px !important}
#mapa_inc{width:100% !important;height:330px !important;display:none;}
#cmapa_inc{height:70px;padding-top:60px;}
#cmapa_inc button{background-color:#09865F;color:#fff;text-decoration:none;padding:4px 8px;border-radius:4px;font-weight:bold;}
#cmapa_inc{margin:0;text-align:center;background:transparent url(https://www.calcularruta.com/user-content/templates/rutas/public/images/maps.jpg) no-repeat;background-size:cover;padding-top:130px;cursor:pointer;height:200px !important}
#mapa_gas{width:100% !important;height:330px !important;display:none;}
#cmapa_gas{height:70px;padding-top:60px;}
#cmapa_gas button{background-color:#09865F;color:#fff;text-decoration:none;padding:4px 8px;border-radius:4px;font-weight:bold;}
#cmapa_gas{margin:0;text-align:center;background:transparent url(https://www.calcularruta.com/user-content/templates/rutas/public/images/maps.jpg) no-repeat;background-size:cover;padding-top:130px;cursor:pointer;height:200px !important}
.tbl_instruction{line-height:1.2;color:#222;}
.tbl_row_instruction_ini{margin:0;padding:.3em 3px .3em 3px;vertical-align:top;}
.tbl_row_instruction{border-top:1px solid #cdcdcd;margin:0;padding:.3em 3px .3em 3px;vertical-align:top;}
.typeahead{}
ul.typeahead{width:410px;background-color:#fff;position:absolute!important;z-index:1000;border-radius:2px;border-top:1px solid #d9d9d9;box-shadow:0 2px 6px rgba(0, 0, 0, 0.3);-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;overflow:hidden}
ul.typeahead.dropdown-menu li a{padding:0 4px;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;line-height:30px;text-align:left;color:#444}
.dropdown-menu>.active>a, .dropdown-menu>.active>a:focus, .dropdown-menu>.active>a:hover{color:#306DAB}
.typeahead__container button,.typeahead__container input,.typeahead__container optgroup,.typeahead__container select,.typeahead__container textarea{font:inherit;margin:0}.typeahead__container optgroup{font-weight:700}.typeahead__container button,.typeahead__container input{overflow:visible}.typeahead__container button,.typeahead__container select{text-transform:none}.typeahead__container [type=reset],.typeahead__container [type=submit],.typeahead__container button,.typeahead__container html [type=button]{-webkit-appearance:button}.typeahead__container [type=button]::-moz-focus-inner,.typeahead__container [type=reset]::-moz-focus-inner,.typeahead__container [type=submit]::-moz-focus-inner,.typeahead__container button::-moz-focus-inner{border-style:none;padding:0}.typeahead__container [type=button]:-moz-focusring,.typeahead__container [type=reset]:-moz-focusring,.typeahead__container [type=submit]:-moz-focusring,.typeahead__container button:-moz-focusring{outline:1px dotted ButtonText}.typeahead__container fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}.typeahead__container legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}.typeahead__container textarea{overflow:auto}.typeahead__container [type=checkbox],.typeahead__container [type=radio]{box-sizing:border-box;padding:0}.typeahead__container [type=number]::-webkit-inner-spin-button,.typeahead__container [type=number]::-webkit-outer-spin-button{height:auto}.typeahead__container [type=search]{-webkit-appearance:textfield;outline-offset:-2px}.typeahead__container [type=search]::-webkit-search-cancel-button,.typeahead__container [type=search]::-webkit-search-decoration{-webkit-appearance:none}.typeahead__container::-webkit-input-placeholder{color:inherit;opacity:.54}.typeahead__container::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}.typeahead__container{position:relative;font:1rem Lato,Helvetica Neue,Arial,Helvetica,sans-serif}.typeahead__container *{box-sizing:border-box;outline:0}.typeahead__query{position:relative;z-index:2;width:100%}.typeahead__filter{position:relative}.typeahead__filter button{min-width:100%;white-space:nowrap}.typeahead__filter button:after{display:inline-block;margin-left:4px;width:0;height:0;vertical-align:-2px;content:"";border:4px solid;border-right-color:transparent;border-bottom-color:transparent;border-left-color:transparent}.typeahead__field{display:-ms-flexbox;display:flex;position:relative;width:100%}.typeahead__button button{border-top-right-radius:2px;border-bottom-right-radius:2px}.typeahead__field{color:#555}.typeahead__field .typeahead__hint,.typeahead__field [contenteditable],.typeahead__field input,.typeahead__field textarea{display:block;width:100%;line-height:1.25;min-height:calc(.5rem * 2 + 1.25rem + 2px);padding:.5rem .75rem;background:#fff;border:1px solid #ccc;border-radius:2px 0 0 2px;-webkit-appearance:none;-moz-appearance:none;appearance:none;box-sizing:border-box}.typeahead__field .typeahead__hint:active,.typeahead__field .typeahead__hint:focus,.typeahead__field [contenteditable]:active,.typeahead__field [contenteditable]:focus,.typeahead__field input:active,.typeahead__field input:focus,.typeahead__field textarea:active,.typeahead__field textarea:focus{border-color:#66afe9}.typeahead__field input[type=search],.typeahead__field input[type=search]::-webkit-search-cancel-button{-webkit-appearance:none;appearance:none}.typeahead__field input[type=search]::-ms-clear{display:none;width:0;height:0}.typeahead__container.hint .typeahead__field [contenteditable],.typeahead__container.hint .typeahead__field input,.typeahead__container.hint .typeahead__field textarea{background:transparent}.typeahead__container.hint .typeahead__query>:last-child,.typeahead__hint{background:#fff}.typeahead__container button{display:inline-block;margin-bottom:0;text-align:center;-ms-touch-action:manipulation;touch-action:manipulation;cursor:pointer;background-color:#fff;border:1px solid #ccc;line-height:1.25;padding:.5rem .75rem;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;color:#555}.typeahead__container button:focus,.typeahead__container button:hover{color:#3c3c3c;background-color:#f5f5f5;border-color:#b3b3b3}.typeahead__container button.active,.typeahead__container button:active{background-image:none}.typeahead__container button:active,.typeahead__container button:focus{border-color:#66afe9}.typeahead__container button.disabled,.typeahead__container button[disabled],.typeahead__container input.disabled,.typeahead__container input[disabled]{cursor:not-allowed;opacity:.65;box-shadow:none;background-color:#fff;border-color:#ccc}.typeahead__container .typeahead__field .typeahead__hint,.typeahead__container .typeahead__field .typeahead__label-container,.typeahead__container .typeahead__field [contenteditable],.typeahead__container .typeahead__field input,.typeahead__container .typeahead__field textarea{padding-right:32px}.typeahead__button,.typeahead__filter{z-index:1}.typeahead__button button,.typeahead__filter button{margin-left:-1px;border-bottom-left-radius:0;border-top-left-radius:0}.typeahead__button:active,.typeahead__button:active button:active,.typeahead__button:active button:focus,.typeahead__button:focus,.typeahead__button:focus button:active,.typeahead__button:focus button:focus,.typeahead__button:hover,.typeahead__button:hover button:active,.typeahead__button:hover button:focus,.typeahead__filter:active,.typeahead__filter:active button:active,.typeahead__filter:active button:focus,.typeahead__filter:focus,.typeahead__filter:focus button:active,.typeahead__filter:focus button:focus,.typeahead__filter:hover,.typeahead__filter:hover button:active,.typeahead__filter:hover button:focus{z-index:5}.typeahead__filter+.typeahead__button button{margin-left:-2px}.typeahead__container.filter .typeahead__filter{z-index:5}.typeahead__dropdown,.typeahead__list{position:absolute;left:0;z-index:4;width:100%;min-width:160px;padding:5px 0;margin:2px 0 0;list-style:none;text-align:left;background-color:#fff;border:1px solid #ccc;border-radius:2px;background-clip:padding-box}.typeahead__result.detached .typeahead__list{position:relative;z-index:6;top:auto;left:auto}.typeahead__dropdown{right:0;left:auto;z-index:5}.typeahead__list>li{position:relative;border-top:1px solid #ccc}.typeahead__list>li:first-child{border-top:none}.typeahead__dropdown .typeahead__dropdown-item[disabled]>a,.typeahead__list .typeahead__item[disabled]>a{cursor:not-allowed;color:#bababa;background-color:#fafafa}.typeahead__dropdown .typeahead__dropdown-item>a,.typeahead__list .typeahead__item>a{display:block;padding:.5rem .75rem;clear:both;color:#333;text-decoration:none}.typeahead__dropdown .typeahead__dropdown-item:not([disabled]).active>a,.typeahead__dropdown .typeahead__dropdown-item:not([disabled])>a:focus,.typeahead__dropdown .typeahead__dropdown-item:not([disabled])>a:hover,.typeahead__list .typeahead__item:not([disabled]).active>a,.typeahead__list .typeahead__item:not([disabled])>a:focus,.typeahead__list .typeahead__item:not([disabled])>a:hover{background-color:#f5f5f5;color:#3c3c3c}.typeahead__list.empty>li{padding:.5rem .75rem;color:#333}.typeahead__list>.typeahead__group{border-color:#bfdef6;font-weight:700}.typeahead__list>.typeahead__group:first-child{border-top:1px solid #bfdef6}.typeahead__list>.typeahead__group.active>a,.typeahead__list>.typeahead__group>a,.typeahead__list>.typeahead__group>a:focus,.typeahead__list>.typeahead__group>a:hover{cursor:default;color:#17639f;background:#ecf5fc;display:block;padding:.5rem .75rem;clear:both;text-decoration:none}.typeahead__list>li.typeahead__group+li.typeahead__item{border-color:#bfdef6}.typeahead__container.backdrop+.typeahead__backdrop,.typeahead__container.filter .typeahead__dropdown,.typeahead__container.hint .typeahead__hint,.typeahead__container.result .typeahead__list{display:block!important}.typeahead__container+.typeahead__backdrop,.typeahead__container .typeahead__dropdown,.typeahead__container .typeahead__hint,.typeahead__container .typeahead__list{display:none!important}.typeahead__dropdown li:last-child{margin-top:5px;padding-top:5px;border-top:1px solid #ccc}.typeahead__cancel-button{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;position:absolute;right:0;cursor:pointer;line-height:1.25;padding:.5rem .75rem;visibility:hidden}.typeahead__label .typeahead__cancel-button{visibility:visible;right:4px}.typeahead__container.cancel:not(.loading) .typeahead__cancel-button,.typeahead__label .typeahead__cancel-button{visibility:visible}.typeahead__container.cancel:not(.loading) .typeahead__cancel-button:hover,.typeahead__label .typeahead__cancel-button:hover{color:#d0021b}.typeahead__search-icon{padding:0 1.25rem;width:16px;height:16px;background:url(data:image/svg+xml;charset=utf8;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/Pgo8IS0tIEdlbmVyYXRvcjogQWRvYmUgSWxsdXN0cmF0b3IgMTguMS4xLCBTVkcgRXhwb3J0IFBsdWctSW4gLiBTVkcgVmVyc2lvbjogNi4wMCBCdWlsZCAwKSAgLS0+CjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgdmVyc2lvbj0iMS4xIiBpZD0iQ2FwYV8xIiB4PSIwcHgiIHk9IjBweCIgdmlld0JveD0iMCAwIDI1MC4zMTMgMjUwLjMxMyIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgMjUwLjMxMyAyNTAuMzEzOyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSIgd2lkdGg9IjE2cHgiIGhlaWdodD0iMTZweCI+CjxnIGlkPSJTZWFyY2giPgoJPHBhdGggc3R5bGU9ImZpbGwtcnVsZTpldmVub2RkO2NsaXAtcnVsZTpldmVub2RkOyIgZD0iTTI0NC4xODYsMjE0LjYwNGwtNTQuMzc5LTU0LjM3OGMtMC4yODktMC4yODktMC42MjgtMC40OTEtMC45My0wLjc2ICAgYzEwLjctMTYuMjMxLDE2Ljk0NS0zNS42NiwxNi45NDUtNTYuNTU0QzIwNS44MjIsNDYuMDc1LDE1OS43NDcsMCwxMDIuOTExLDBTMCw0Ni4wNzUsMCwxMDIuOTExICAgYzAsNTYuODM1LDQ2LjA3NCwxMDIuOTExLDEwMi45MSwxMDIuOTExYzIwLjg5NSwwLDQwLjMyMy02LjI0NSw1Ni41NTQtMTYuOTQ1YzAuMjY5LDAuMzAxLDAuNDcsMC42NCwwLjc1OSwwLjkyOWw1NC4zOCw1NC4zOCAgIGM4LjE2OSw4LjE2OCwyMS40MTMsOC4xNjgsMjkuNTgzLDBDMjUyLjM1NCwyMzYuMDE3LDI1Mi4zNTQsMjIyLjc3MywyNDQuMTg2LDIxNC42MDR6IE0xMDIuOTExLDE3MC4xNDYgICBjLTM3LjEzNCwwLTY3LjIzNi0zMC4xMDItNjcuMjM2LTY3LjIzNWMwLTM3LjEzNCwzMC4xMDMtNjcuMjM2LDY3LjIzNi02Ny4yMzZjMzcuMTMyLDAsNjcuMjM1LDMwLjEwMyw2Ny4yMzUsNjcuMjM2ICAgQzE3MC4xNDYsMTQwLjA0NCwxNDAuMDQzLDE3MC4xNDYsMTAyLjkxMSwxNzAuMTQ2eiIgZmlsbD0iIzU1NTU1NSIvPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+Cjwvc3ZnPgo=) no-repeat scroll 50% transparent}.typeahead__container.loading .typeahead__query:after,.typeahead__container.loading .typeahead__query:before{transition:all 0s linear,opacity .2s ease;position:absolute;z-index:3;content:"";top:50%;right:.55em;margin-top:-.675rem;width:1.35rem;height:1.35rem;box-sizing:border-box;border-radius:500rem;border-style:solid;border-width:.1em}.typeahead__container.loading .typeahead__query:before{border-color:rgba(0,0,0,.35)}.typeahead__container.loading .typeahead__query:after{animation:a .6s linear;animation-iteration-count:infinite;border-color:#fff transparent transparent;box-shadow:0 0 0 1px transparent}@keyframes a{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.typeahead__label-container{list-style:none;position:absolute;padding-top:0.375rem;padding-left:6px;width:100%;-ms-flex-wrap:wrap;flex-wrap:wrap;display:-ms-flexbox;display:flex}.typeahead__label{display:-ms-flexbox;display:flex;font-size:0.875rem;position:relative;background:#ecf5fc;border:1px solid #c2e0ff;padding-left:4px;border-radius:2px;margin-right:4px;margin-bottom:0.375rem}.typeahead__label>*{-ms-flex-item-align:center;align-self:center}.typeahead__label .typeahead__cancel-button{line-height:normal;height:auto;position:static;padding:calc(1rem * .25 - 1px) 6px calc(1rem * .25 + 1px);margin-left:4px;font-size:0.875rem;border-left:1px solid #c2e0ff}.typeahead__label .typeahead__cancel-button:hover{background-color:#d5e9f9}
.leaflet-image-layer,.leaflet-layer,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-pane,.leaflet-pane>canvas,.leaflet-pane>svg,.leaflet-tile,.leaflet-tile-container,.leaflet-zoom-box{position:absolute;left:0;top:0}.leaflet-container{overflow:hidden}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile{-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-safari .leaflet-tile{}.leaflet-safari .leaflet-tile-container{width:1600px;height:1600px;-webkit-transform-origin:0 0}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-overlay-pane svg,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer{max-width:none!important;max-height:none!important}.leaflet-container.leaflet-touch-zoom{-ms-touch-action:pan-x pan-y;touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{-ms-touch-action:pinch-zoom;touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{-ms-touch-action:none;touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:rgba(51,181,229,.4)}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{width:0;height:0;-moz-box-sizing:border-box;box-sizing:border-box;z-index:800}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{width:1px;height:1px}.lvml{display:inline-block;position:absolute}.leaflet-control{position:relative;z-index:800}.leaflet-bottom,.leaflet-top{position:absolute;z-index:1000}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{float:left;clear:both}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-tile{will-change:opacity}.leaflet-fade-anim .leaflet-popup{opacity:0;-webkit-transition:opacity .2s linear;-moz-transition:opacity .2s linear;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{-webkit-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0}.leaflet-zoom-anim .leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{-webkit-transition:-webkit-transform .25s cubic-bezier(0,0,.25,1);-moz-transition:-moz-transform .25s cubic-bezier(0,0,.25,1);transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-pan-anim .leaflet-tile,.leaflet-zoom-anim .leaflet-tile{-webkit-transition:none;-moz-transition:none;transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-control,.leaflet-popup-pane{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.leaflet-image-layer,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-pane>svg path,.leaflet-tile-container{}.leaflet-image-layer.leaflet-interactive,.leaflet-marker-icon.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive{}.leaflet-container{background:#ddd;outline:0}.leaflet-container a{color:#0078a8}.leaflet-container a.leaflet-active{outline:2px solid orange}.leaflet-zoom-box{border:2px dotted #38f;background:rgba(255,255,255,.5)}.leaflet-container{font:12px/1.5 "Helvetica Neue",Arial,Helvetica,sans-serif}.leaflet-bar{box-shadow:0 1px 5px rgba(0,0,0,.65);border-radius:4px}.leaflet-bar a,.leaflet-bar a:hover{background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;display:block;text-align:center;text-decoration:none;color:#000}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50% 50%;background-repeat:no-repeat;display:block}.leaflet-bar a:hover{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom-left-radius:4px;border-bottom-right-radius:4px;border-bottom:none}.leaflet-bar a.leaflet-disabled{cursor:default;background-color:#f4f4f4;color:#bbb}.leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-left-radius:2px;border-bottom-right-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{font:bold 18px 'Lucida Console',Monaco,monospace;text-indent:1px}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{}.leaflet-control-layers{box-shadow:0 1px 5px rgba(0,0,0,.4);background:#fff;border-radius:5px}.leaflet-touch .leaflet-control-layers-toggle{width:44px;height:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{padding:6px 10px 6px 6px;color:#333;background:#fff}.leaflet-control-layers-scrollbar{overflow-y:scroll;overflow-x:hidden;padding-right:5px}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{display:block}.leaflet-control-layers-separator{height:0;border-top:1px solid #ddd;margin:5px -10px 5px -6px}.leaflet-container .leaflet-control-attribution{background:#fff;background:rgba(255,255,255,.7);margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{padding:0 5px;color:#333}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:hover{text-decoration:underline}.leaflet-container .leaflet-control-attribution,.leaflet-container .leaflet-control-scale{}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{border:2px solid #777;border-top:none;line-height:1.1;padding:2px 5px 1px;;white-space:nowrap;overflow:hidden;-moz-box-sizing:border-box;box-sizing:border-box;background:#fff;background:rgba(255,255,255,.5)}.leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-bar,.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers{box-shadow:none}.leaflet-touch .leaflet-bar,.leaflet-touch .leaflet-control-layers{border:2px solid rgba(0,0,0,.2);background-clip:padding-box}.leaflet-popup{position:absolute;text-align:center;margin-bottom:20px}.leaflet-popup-content-wrapper{padding:1px;text-align:left;border-radius:12px}.leaflet-popup-content{margin:13px 19px;line-height:1.4}.leaflet-popup-content p{margin:18px 0}.leaflet-popup-tip-container{width:40px;height:20px;position:absolute;left:50%;margin-left:-20px;overflow:hidden}.leaflet-popup-tip{width:17px;height:17px;padding:1px;margin:-10px auto 0;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#fff;color:#333;box-shadow:0 3px 14px rgba(0,0,0,.4)}.leaflet-container a.leaflet-popup-close-button{position:absolute;top:0;right:0;padding:4px 4px 0 0;border:none;text-align:center;width:18px;height:14px;font:16px/14px Tahoma,Verdana,sans-serif;color:#c3c3c3;text-decoration:none;font-weight:700;background:0 0}.leaflet-container a.leaflet-popup-close-button:hover{color:#999}.leaflet-popup-scrolled{overflow:auto;border-bottom:1px solid #ddd;border-top:1px solid #ddd}.leaflet-oldie .leaflet-popup-content-wrapper{zoom:1}.leaflet-oldie .leaflet-popup-tip{width:24px;margin:0 auto}.leaflet-oldie .leaflet-popup-tip-container{margin-top:-1px}.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{position:absolute;padding:6px;background-color:#fff;border:1px solid #fff;border-radius:3px;color:#222;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;box-shadow:0 1px 3px rgba(0,0,0,.4)}.leaflet-tooltip.leaflet-clickable{cursor:pointer}.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before,.leaflet-tooltip-top:before{position:absolute;border:6px solid transparent;background:0 0;content:""}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{left:50%;margin-left:-6px}.leaflet-tooltip-top:before{bottom:0;margin-bottom:-12px;border-top-color:#fff}.leaflet-tooltip-bottom:before{top:0;margin-top:-12px;margin-left:-6px;border-bottom-color:#fff}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{top:50%;margin-top:-6px}.leaflet-tooltip-left:before{right:0;margin-right:-12px;border-left-color:#fff}.leaflet-tooltip-right:before{left:0;margin-left:-12px;border-right-color:#fff}#mapa{background:transparent url(https://www.calcularruta.com/user-content/templates/rutas/public/images/indicator.gif) no-repeat center center;}#mapa_inc{background:transparent url(https://www.calcularruta.com/user-content/templates/rutas/public/images/indicator.gif) no-repeat center center;}#mapa_gas{background:transparent url(https://www.calcularruta.com/user-content/templates/rutas/public/images/indicator.gif) no-repeat center center;}
.calc-portada input[type="submit"]{background:#306DAB;font-weight:bold;float:left;cursor:pointer;color:#fff;width:100px;margin:0 0 0 10px;}
.bloque_buscador{padding-bottom:25px;padding-top:2px;padding-left:10px;padding-right:0px;background:#fff;margin-bottom:2px;}
.titulo-busca{color:#444;font-size:1.1rem;}
.origen, .destino{width:44.6%;margin-left:10px;float:left;}
.origen input, .destino input{margin-top:0;}
.origen label, .destino label{display:block;}
.origen{margin-left:0;}
.subcalc{background:#FFFFFF;font-size:0.77rem;color:#666;display:block;line-height:22px;padding:7px 12px;margin-top:-30px;margin-bottom:4px;min-height:18px;}
li{margin-bottom:10px;}

/* Botón del menú móvil: oculto en escritorio */
.menu-movil-toggle{display:none;}

@media only screen and (max-width:1220px) {
.container-12{width:970px;margin:0 auto;}
.container-12 .grid-12{width:970px;display:inline;float:left;}
.grid-840{width:628px;}
.grid-336{width:336px;}
.itine{width:100%;height:220px;overflow:auto;}
.origen, .destino{width:42.5%;margin-left:10px;float:left;}
.origen input, .destino input{margin-top:0;}
.origen label, .destino label{display:block;}
}
@media only screen and (max-width:992px){
.container-12{width:750px;}
.container-12 .grid-12{width:750px;}
.container-12 .grid-12{width:750px;display:inline;float:left;}
.grid-840{width:405px;}
.grid-336{width:336px;}
.bloque_buscador{padding-bottom:25px;padding-top:5px;padding-left:17px;padding-right:17px;background:#fff;margin-bottom:5px;}
.origen, .destino{width:100%;margin-left:0px;float:left;}
ul.typeahead{width:285px}
.grid-12 .destino{margin-left:0px;margin-top:5px;}
.calc-portada input[type="submit"]{width:100%;margin:10px 0 0 0;}
.subcalc{padding:7px 20px;}
.itine{width:100%;height:300px;overflow:auto;}
#mapa{width:100% !important;max-height:250px;display:none;}
#cmapa{height:70px;padding-top:60px;}
#cmapa{padding-top:125px;height:125px !important}
#mapa_inc{width:100% !important;max-height:250px;}
#cmapa_inc{height:70px;padding-top:60px;}
#cmapa_inc button{background-color:#306DAB;color:#fff;text-decoration:none;padding:4px 8px;border-radius:4px;font-weight:bold;}
#cmapa_inc{padding-top:125px;height:125px !important}
#mapa_gas{width:100% !important;max-height:250px;}
#cmapa_gas{height:70px;padding-top:60px;}
#cmapa_gas button{background-color:#306DAB;color:#fff;text-decoration:none;padding:4px 8px;border-radius:4px;font-weight:bold;}
#cmapa_gas{padding-top:125px;height:125px !important}
#puntosnegros{display:none}
.two_colum{-moz-column-count:2;-moz-column-gap:30px;-webkit-column-count:2;-webkit-column-gap:30px;column-count:2;column-gap:30px;}
}
@media only screen and (max-width:768px){
#header .grid-12{position:relative;}
.menu-movil-toggle{
    display:block;
    position:absolute;
    top:8px;
    right:10px;
    width:42px;
    height:36px;
    padding:0;
    border:1px solid #306DAB;
    border-radius:4px;
    background:#fff;
    color:#306DAB;
    font-size:1.55rem;
    line-height:32px;
    text-align:center;
    cursor:pointer;
}
.menu-movil-toggle span{display:block;line-height:32px;}
#header nav{
    display:none;
    float:none;
    clear:both;
    width:100%;
    padding-top:4px;
}
#header nav.menu-movil-abierto{display:block;}
#header nav ul{
    float:none;
    width:100%;
    line-height:normal;
    margin:0;
    padding:0;
    border-top:1px solid #e7e8ea;
}
#header nav ul li{
    display:block;
    float:none;
    width:100%;
    margin:0;
    border-bottom:1px solid #e7e8ea;
}
#header nav ul a{
    display:block;
    padding:12px 14px;
    text-align:left;
    text-transform:uppercase;
    background:#fff;
}
#header .logo{max-width:calc(100% - 60px);}
.container-12{width:100%;}
.container-12 .grid-12{width:100%;}
.grid-336{width:100% !important;margin-bottom:5px;padding:0px;}
.grid-840{width:100% !important;padding:0px;margin-left:0px;}
.bloque_buscador{padding-bottom:0px;padding-top:5px;padding-left:17px;padding-right:17px;background:#fff;margin-bottom:0px;}
.origen, .destino{width:100%;margin-left:0px;float:left;}
.grid-12 .destino{margin-left:0px;margin-top:5px;}
.calc-portada input[type="submit"]{width:100%;margin:10px 0 0 0;}
.subcalc{padding:0px 20px;min-height:2px;}
.bloque{font-size:1.1rem;}
.botonesmovil{height:24px;margin-bottom:5px;margin-top:5px;}
.itine{width:100%;height:230px;overflow:auto;}
.instruccionesmovil{width:100% !important;height:180px;overflow:auto;}
.two_colum{-moz-column-count:1;-moz-column-gap:30px;-webkit-column-count:1;-webkit-column-gap:30px;column-count:1;column-gap:30px;}
.two_colum li{margin-bottom:18px;}
li{margin-bottom:18px;}
#contenedor_ruta .right .distancia{position:relative;height:36px;line-height:20px;display:inline-block;padding-left:30px;margin-right:0px;}
#contenedor_ruta .right .duracion{position:relative;height:36px;line-height:20px;display:inline-block;padding-left:30px;margin-right:0px;}
#contenedor_ruta .right .inversa{color:#09865F;position:relative;height:36px;margin-right:0px;}
#contenedor_ruta .cont_opciones{width:100%;}
#contenedor_ruta .cont_opciones .iti{width:100%;float:left;}
#contenedor_ruta .cont_opciones .gas{width:100%;float:left;}
#mapa{width:97% !important;max-height:236px;display:none;}
#cmapa{width:97% !important;padding-top:118px;height:118px !important}
#mapa_inc{width:100% !important;max-height:236px;}
#cmapa_inc{height:70px;padding-top:60px;}
#cmapa_inc button{background-color:#306DAB;color:#fff;text-decoration:none;padding:4px 8px;border-radius:4px;font-weight:bold;}
#cmapa_inc{padding-top:118px;height:118px !important}
#mapa_gas{width:100% !important;max-height:236px;}
#cmapa_gas{height:70px;padding-top:60px;}
#cmapa_gas button{background-color:#306DAB;color:#fff;text-decoration:none;padding:4px 8px;border-radius:4px;font-weight:bold;}
#cmapa_gas{padding-top:118px;height:118px !important}
#areasdescanso{display:none}
.leftdiv-10{float:left;margin-left:14px}
#footer{min-height:80px;}
}
@media (min-width: 769px) {
.ruta-seo-grid {display: flex;gap: 14px;align-items: stretch;margin-top: 14px;}
.ruta-seo-card {flex: 1;margin-bottom: 0;}
.ruta-seo-card h2 {font-size: 18px;line-height: 1.25;}
.ruta-seo-card p {margin-bottom: 0;}
}
@media print{*{background:transparent !important;color:#000 !important;box-shadow:none !important;text-shadow:none !important;}
pre, blockquote{border:1px solid #999;page-break-inside:avoid;}
thead{display:table-header-group;}
tr, img{page-break-inside:avoid;}
img{max-width:100% !important;}
#header{display:none;}
#mapa{width:100% !important;max-height:300px;}
#mapa_inc{width:100% !important;max-height:300px;}
#mapa_gas{width:100% !important;max-height:300px;}
.container-12{width:100%;}
.container-12 .grid-12{width:100%;}
.grid-840{width:100%;}
.titulo-busca{display:none;}
.calc-portada{display:none;}
.social{display:none;}
.subcalc{display:none;}
.grid-336{display:none;}
.botones{display:none;}
.destinos{display:none;}
#advertising-top{display:none;}
#advertising-top-mb{display:none;}
#advertising{display:none;}
.grid-840{width:100%;padding:0px;margin-left:0px;}
.itine{width:100%;height:100%}
}

/* Indicaciones plegables en móvil */
@media only screen and (max-width:768px){
    .instrucciones-cerradas{
        display:none !important;
    }

    .btn-indicaciones{
        display:block;
        width:100%;
        box-sizing:border-box;
        margin:8px 0 10px;
        padding:11px 12px;
        border:1px solid #306DAB;
        border-radius:4px;
        background:#306DAB;
        color:#fff;
        font-size:0.95rem;
        font-weight:700;
        line-height:1.2;
        text-align:center;
        cursor:pointer;
    }

    .btn-indicaciones:focus,
    .btn-indicaciones:hover{
        background:#245786;
        border-color:#245786;
        color:#fff;
    }

    #bloque-indicaciones .itine:not(.instrucciones-cerradas){
        height:230px;
        overflow:auto;
    }
}

/* Navegación rápida de la ruta en móvil */
@media only screen and (max-width:768px){
    .ruta-accesos-movil{
        display:flex;
        gap:8px;
        margin:0 10px 10px;
    }

    .ruta-accesos-movil a{
        flex:1;
        display:block;
        box-sizing:border-box;
        padding:10px 6px;
        border:1px solid #306DAB;
        border-radius:4px;
        background:#fff;
        color:#306DAB;
        font-size:0.85rem;
        font-weight:700;
        line-height:1.2;
        text-align:center;
    }

    .ruta-accesos-movil a:focus,
    .ruta-accesos-movil a:hover{
        background:#306DAB;
        color:#fff;
    }

    .volver-mapa-movil{
        margin-top:10px;
        text-align:center;
    }

    .volver-mapa-movil a{
        display:block;
        box-sizing:border-box;
        width:100%;
        padding:11px 10px;
        border:1px solid #09865F;
        border-radius:4px;
        background:#09865F;
        color:#fff;
        font-size:0.9rem;
        font-weight:700;
        line-height:1.25;
        text-align:center;
    }

    #bloque-mapa,
    #bloque-calculo,
    #bloque-indicaciones{
        scroll-margin-top:10px;
    }
}

/* Accesos rápidos principales de la ruta en móvil */
@media only screen and (max-width:768px){
    .ruta-accesos-movil{
        display:grid;
        grid-template-columns:repeat(2, minmax(0, 1fr));
        gap:8px;
        margin:0 10px 10px;
    }

    .ruta-accesos-movil a{
        display:flex;
        align-items:center;
        justify-content:center;
        min-height:42px;
        box-sizing:border-box;
        padding:8px 6px;
        border:1px solid #306DAB;
        border-radius:4px;
        background:#fff;
        color:#306DAB;
        font-size:0.82rem;
        font-weight:700;
        line-height:1.15;
        text-align:center;
    }

    .ruta-accesos-movil a:focus,
    .ruta-accesos-movil a:hover{
        background:#306DAB;
        color:#fff;
    }

    #acceso-coste-estaciones{
        border-color:#09865F;
        color:#09865F;
    }

    #acceso-coste-estaciones:focus,
    #acceso-coste-estaciones:hover{
        background:#09865F;
        color:#fff;
    }
}

/* Gasolineras + puntos de recarga por localidad */
.mapa-gas-filtros{display:flex;gap:8px;flex-wrap:wrap;margin:8px 0 10px;}
.mapa-gas-filtros button{padding:7px 10px;border:1px solid #306DAB;border-radius:4px;background:#fff;color:#306DAB;font-weight:700;cursor:pointer;}
.mapa-gas-filtros button:hover,.mapa-gas-filtros button:focus,.mapa-gas-filtros button.activo{background:#306DAB;color:#fff;}
#filtro-recarga{border-color:#09865F;color:#09865F;}
#filtro-recarga:hover,#filtro-recarga:focus,#filtro-recarga.activo{background:#09865F;color:#fff;}
.recarga_detail{border-bottom:1px solid #ddd;padding-bottom:14px;margin-bottom:14px;}
.recarga_detail:last-child{border-bottom:0;margin-bottom:0;}
.recarga_detail h4{color:#306DAB;margin-bottom:8px;}
.recarga_detail li{margin-bottom:6px;line-height:1.35;}
.icono-recarga-localidad{background:transparent;border:0;}
.icono-recarga-localidad-circulo{background:#fff;border:2px solid #09865F;border-radius:50%;width:28px;height:28px;line-height:25px;text-align:center;font-size:18px;box-shadow:0 1px 4px rgba(0,0,0,.35);}
@media only screen and (max-width:768px){
.mapa-gas-filtros{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;}
.mapa-gas-filtros button{padding:8px 4px;font-size:.78rem;}
}





/* Boceto y ajustes responsive: conservar despues de style.css */
/* Boceto V9. Una sola capa visual; estilos base conservados para mapas y otras vistas. */
:root{--cr-blue:#0065ff;--cr-navy:#080d60;--cr-text:#405276;--cr-line:#dae7f0;--cr-bg:#edf6fa}
*,*::before,*::after{box-sizing:border-box}
html{background:var(--cr-bg);font-size:16px}
body{margin:0;background:var(--cr-bg);font:14px/1.45 Arial,Helvetica,sans-serif;color:var(--cr-text);text-align:left}
button,input,select{font:inherit}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}button,summary{cursor:pointer}
a{color:var(--cr-blue)}a:hover{text-decoration:underline}button:disabled{cursor:default;opacity:.5}
:focus-visible{outline:3px solid #075bea;outline-offset:3px}
.container-12{width:calc(100% - 40px)!important;max-width:1224px;min-width:0;margin:0 auto!important}
.container-12>.grid-12{width:100%!important;float:none!important;margin:0!important;min-width:0}
#main-content{padding:8px 0 16px}#header{margin:0;background:#f9fcfe;border-bottom:1px solid #d4e1e9}
#header .grid-12{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:50px}
#header .logo{float:none;width:238px;height:46px;background-image:url('../images/calcularruta.png');background-size:contain;background-position:center;margin:0}
#header nav{margin-left:auto}#header nav ul{display:flex;float:none;margin:0;line-height:1.3;align-items:stretch}
#header nav ul li{float:none;position:relative}#header nav a,#header nav summary{display:flex;align-items:center;gap:8px;min-height:50px;padding:0 18px;font-size:12px;font-weight:bold;text-transform:uppercase;color:var(--cr-text);border-left:1px solid #edf2f6;list-style:none}
#header nav summary::-webkit-details-marker{display:none}#header nav a:hover,#header nav summary:hover{background:#edf5ff;text-decoration:none}
#header nav>ul>li:first-child>a{color:var(--cr-blue);border-bottom:2px solid var(--cr-blue)}
#header nav .cr-icon{width:24px;height:24px}#header nav .cr-fuel{color:#52607e}#header nav .cr-plug{color:#00828c}
#header nav details>ul{position:absolute;right:0;top:100%;display:block;min-width:220px;z-index:1500;background:#fff;border:1px solid var(--cr-line);box-shadow:0 4px 12px #16345a1a}
#header nav details>ul a{text-transform:none;min-height:44px}#header nav details:not([open])>ul{display:none}
.menu-movil-toggle{display:none}
h1,h2,h3{color:var(--cr-navy);font-weight:700;line-height:1.25}p{font-size:14px;line-height:1.4;color:var(--cr-text)}
.bloque,.bloque_cab{background:#fff;border:1px solid var(--cr-line);border-radius:3px;padding:12px;margin:0 0 12px;box-shadow:none}
hr{border:0;border-top:1px solid var(--cr-line);margin:8px 0}
.buscador-card{padding:0 0 8px;margin:0;border-bottom:0;border-radius:3px 3px 0 0}
.buscador-card .titulo-busca{display:flex;align-items:center;gap:10px;margin:0 0 8px;padding:6px 13px;background:#005dce;color:#fff;font-size:18px;line-height:1.3;font-weight:700;border-radius:2px 2px 0 0}
.buscador-card .titulo-busca label{display:contents}.buscador-card .titulo-busca .cr-icon{color:#fff;width:27px;height:24px}
.buscador-card hr,.calc-portada>.clearfix{display:none}
.buscador-card .calc-portada{display:grid;grid-template-columns:minmax(0,1fr) 34px minmax(0,1fr) 187px;gap:10px;padding:0 10px;align-items:center}
.buscador-card .origen,.buscador-card .destino{float:none;width:auto;min-width:0;margin:0;position:relative}
.buscador-card input[type=text]{width:100%;height:42px;border:1px solid #cfdaea;border-radius:3px;padding:10px 12px 10px 54px;font-size:14px;background:#fff;color:var(--cr-text)}
.buscador-card .origen:before,.buscador-card .destino:before{content:'';position:absolute;left:12px;top:11px;width:20px;height:20px;background:#52617f;mask:var(--icon-pin) center/contain no-repeat;-webkit-mask:var(--icon-pin) center/contain no-repeat;z-index:3;pointer-events:none}
.buscador-card .origen:after,.buscador-card .destino:after{content:'';position:absolute;left:41px;top:1px;bottom:1px;border-right:1px solid #cfdaea;pointer-events:none;z-index:3}
#intercambiar-ruta{background:transparent;border:0;color:#61708b;font-size:25px;min-height:44px;padding:0}
.cr-search{display:flex;align-items:center;justify-content:center;gap:10px;background:var(--cr-blue);color:white;border:0;border-radius:3px;min-height:42px;font-weight:700;font-size:16px}
.cr-search .cr-icon{color:white}.cr-search:hover{background:#004bd6}
.subcalc{padding:0 10px 9px;margin:0 0 10px;border:1px solid var(--cr-line);border-top:0;border-radius:0 0 3px 3px;background:#fff;font-size:12px;color:#536181;line-height:1.4}
.typeahead__container{font:inherit}.typeahead__list{z-index:2000!important;max-height:280px;overflow:auto}.typeahead__list a{white-space:normal!important}
#contenedor_ruta{display:grid;grid-template-columns:minmax(0,2.18fr) minmax(330px,1fr);grid-template-rows:auto auto 1fr auto;gap:10px;align-items:start;width:100%}
#contenedor_ruta>.clearfix{display:none}
#contenedor_ruta>.ruta-resumen{grid-column:1;grid-row:1}
#contenedor_ruta>.ruta-mapa-card{grid-column:1;grid-row:2}
#contenedor_ruta>.ruta-sidebar{grid-column:2;grid-row:1 / span 3;display:flex;flex-direction:column;gap:10px}
#contenedor_ruta>.ruta-guia{grid-column:1;grid-row:3}
#contenedor_ruta>.ruta-relacionadas{grid-column:1/-1;grid-row:4}
#contenedor_ruta>.ad-center-mb{grid-column:1/-1;grid-row:5;height:auto!important}
#contenedor_ruta>#selector{position:absolute;pointer-events:none}
#contenedor_ruta>.ruta-resumen,#contenedor_ruta>.ruta-mapa-card,#contenedor_ruta>.ruta-sidebar,#contenedor_ruta>.ruta-guia,#contenedor_ruta>.ruta-relacionadas{width:100%;min-width:0;margin:0;float:none}
#contenedor_ruta .ruta-mapa-card>.bloque,#contenedor_ruta .ruta-sidebar>.bloque{margin:0;width:100%}
#contenedor_ruta .ruta-resumen h1{display:flex;align-items:center;gap:14px;float:none;font-size:clamp(24px,2.5vw,34px);letter-spacing:-.6px;padding:0;margin:0 0 8px;width:100%;overflow-wrap:anywhere}
.ruta-resumen h1 .cr-icon{width:46px;height:42px;flex-shrink:0}
.cr-lead{font-weight:700;font-size:16px;line-height:1.4;margin-bottom:12px}
#contenedor_ruta .ruta-metricas{float:none;display:grid;grid-template-columns:1fr 1fr;gap:10px;width:100%;margin:0 0 12px}
#contenedor_ruta .ruta-metricas>span{position:relative;display:flex;flex-direction:column;justify-content:center;background:#e1f3fc;border-radius:3px;padding:8px 12px 8px 88px;min-height:68px;font-size:28px;line-height:1.15;font-weight:700;color:var(--cr-navy);width:auto;float:none;margin:0}
.ruta-metricas small{font-weight:400;font-size:14px;line-height:1.3;margin-bottom:3px;color:#304363}
.ruta-metricas .cr-icon{position:absolute;left:20px;top:16px;width:42px;height:42px}
.cr-summary-text{font-size:14px;margin:0}
#contenedor_ruta h2,#contenedor_ruta h3{display:flex;align-items:center;gap:10px;font-size:18px;font-weight:700;line-height:1.3;color:var(--cr-navy);margin:0 0 10px;padding:0 0 8px;border-bottom:1px solid var(--cr-line);background:none}
#contenedor_ruta h2 .cr-icon,#contenedor_ruta h3 .cr-icon{width:28px;height:28px;flex-shrink:0}
#contenedor_ruta h2+hr,#contenedor_ruta h3+hr{display:none}
#contenedor_ruta .ruta-mapa-card h2{border:0;padding:0;margin-bottom:12px}
#contenedor_ruta #mapa,#contenedor_ruta #cmapa{height:280px!important;min-height:280px;max-height:none!important;width:100%!important;margin:0;border-radius:0}
#contenedor_ruta #cmapa{padding:0!important;background-image:url('../images/maps.jpg');background-position:center;background-size:cover;align-content:center;text-align:center}
#cmapa button{border:0;border-radius:3px;background:var(--cr-blue);font-size:14px;padding:12px 18px;min-height:44px;color:#fff}
#contenedor_ruta .ruta-sidebar h2{font-size:17px;letter-spacing:-.25px}#contenedor_ruta .ruta-sidebar h3{font-size:15px;margin-bottom:4px;padding-bottom:0;border:0}
.ruta-sidebar .sub_title{display:block;font-size:14px;font-weight:700;margin-bottom:8px;color:var(--cr-text)}
.cr-radio-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px 8px}
#contenedor_ruta .ruta-sidebar .boton{display:flex;align-items:center;gap:7px;float:none;width:auto;min-width:0;margin:0;min-height:30px}
.ruta-sidebar .boton input[type=radio]{appearance:auto;width:20px;height:20px;min-width:20px;margin:0;padding:0;accent-color:var(--cr-blue)}
.ruta-sidebar .boton span{min-width:0}.ruta-sidebar .boton label{display:inline-block;font-size:14px;line-height:1.3;padding:6px 0;cursor:pointer}
.ruta-sidebar .m_10_2{margin:10px 0 0}.ruta-sidebar #form_opciones+.m_10_2{border-top:1px solid var(--cr-line);padding-top:8px}
.ruta-sidebar .datos{padding:12px 16px;background:#e1f3fc;border:0;border-radius:3px;font-size:14px;line-height:1.6;margin-top:10px;overflow-wrap:anywhere}
.ruta-sidebar #form_opciones+.m_10_2 .datos{background:#e7f6ed;border:1px solid #bee3d1;color:#125d2d;margin-top:4px;padding:8px 12px}
.ruta-sidebar #info,.ruta-sidebar #notificacion{color:#125d2d}.ruta-sidebar .textcolor{color:var(--cr-blue)}
.ruta-sidebar strong{color:var(--cr-navy)}.ruta-sidebar .datos strong{color:inherit}
.ruta-sidebar input[type=number],.ruta-sidebar select{border:1px solid #cbd9ea;border-radius:3px;background:#fff;color:#253451;font-size:14px;height:36px;padding:5px 9px;max-width:100%!important}
#consumo_combustible{margin:0 5px;width:76px!important}#unidad_consumo{white-space:nowrap;font-size:13px}
.ruta-sidebar .info_consumo{font-size:13px;line-height:1.45;margin:8px 0 12px}
#opciones_electrico .cr-field{display:flex;align-items:center;gap:7px;min-height:36px;margin-bottom:3px}
.cr-field label{flex:0 0 43%;min-width:0;font-size:14px}.cr-field select{flex:1;width:0}.cr-field input{min-width:0;flex:1;width:0!important}.cr-unit{font-size:13px;white-space:nowrap}
.ruta-guia p{font-size:13px;line-height:1.45;margin-bottom:5px}.cr-guide-tiles{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:5px;margin-top:12px}
.cr-guide-tile{display:flex;align-items:flex-start;flex-direction:column;border:1px solid var(--cr-line);border-radius:3px;padding:8px 5px;gap:4px;min-width:0;text-align:left;color:var(--cr-text)}
.cr-guide-tile .cr-icon{height:28px;width:28px}.cr-guide-tile strong{font-size:11px;line-height:1.15;color:var(--cr-navy);overflow-wrap:normal}.cr-guide-tile small{font-size:11px;line-height:1.2}.cr-guide-tile .cr-plug{color:#9700ef}.cr-guide-tile .cr-warning{color:#ed0922}
#contenedor_ruta .botones{display:flex;gap:6px;flex-wrap:wrap;height:auto;margin:10px 0 0}
#contenedor_ruta .botones button{float:none;margin:0;white-space:normal;background:#eef6ff;color:#0654bd;border:1px solid #d1e2f3;border-radius:3px;padding:7px 9px;font-size:12px;line-height:1.25;min-height:36px}
.ruta-relacionadas ul.rutas{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px 8px;column-count:auto;padding:0;margin:0}
.ruta-relacionadas ul.rutas li{width:auto;margin:0;padding:0;background:none;float:none;min-width:0}
.ruta-relacionadas ul.rutas a{display:block;position:relative;border:1px solid var(--cr-line);border-radius:3px;min-height:34px;padding:7px 24px 7px 36px;font-size:13px;line-height:1.3;overflow-wrap:anywhere}
.ruta-relacionadas a:before{content:'';position:absolute;top:8px;left:12px;width:18px;height:18px;background:var(--cr-blue);mask:var(--icon-pin) center/contain no-repeat;-webkit-mask:var(--icon-pin) center/contain no-repeat}.ruta-relacionadas a:after{content:'›';position:absolute;right:10px;top:3px;font-size:22px;color:#536181}
#contenedor_ruta .ruta-relacionadas h3{border:0;padding:0;margin-bottom:5px}
#footer{padding:14px 0;background:#fff;border-top:1px solid var(--cr-line);line-height:1.4}#footer p{font-size:12px;line-height:1.6}
@media(max-width:1150px){#header nav a,#header nav summary{padding:0 10px;font-size:11px}#header .logo{width:210px}.cr-guide-tiles{grid-template-columns:repeat(4,minmax(0,1fr))}#contenedor_ruta .ruta-metricas>span{padding-left:60px;font-size:25px}.ruta-metricas .cr-icon{width:32px;height:32px;left:14px;top:20px}}
@media(max-width:950px){#header .grid-12{flex-wrap:wrap;gap:0}.menu-movil-toggle{display:block;position:static;width:44px;height:44px;margin-left:auto;border:1px solid var(--cr-line);border-radius:3px;background:#fff;color:var(--cr-blue);font-size:25px}#header nav{display:none;width:100%;margin:0}#header nav.menu-movil-abierto{display:block}#header nav ul{flex-wrap:wrap}#header nav a,#header nav summary{min-height:44px}#header nav details>ul{left:0;right:auto}#contenedor_ruta{grid-template-columns:minmax(0,1.5fr) minmax(320px,1fr)}.cr-lead{font-size:14px}#contenedor_ruta .ruta-metricas>span{font-size:21px;padding-left:45px}.ruta-metricas small{font-size:12px}.ruta-metricas .cr-icon{width:26px;height:26px;left:10px}.buscador-card .calc-portada{grid-template-columns:minmax(0,1fr) 28px minmax(0,1fr) 150px;gap:6px}.cr-search{font-size:14px}.buscador-card input[type=text]{font-size:13px}}
@media(max-width:760px){.container-12{width:calc(100% - 20px)!important}#contenedor_ruta{display:flex;flex-direction:column;gap:10px}#contenedor_ruta .ruta-resumen h1{font-size:25px;letter-spacing:-.3px}.ruta-resumen h1 .cr-icon{width:32px;height:32px}.buscador-card .calc-portada{grid-template-columns:minmax(0,1fr) 40px;gap:8px}.buscador-card .origen{grid-column:1;grid-row:1}.buscador-card .destino{grid-column:1;grid-row:2}#intercambiar-ruta{grid-column:2;grid-row:1 / span 2;transform:rotate(90deg)}.cr-search{grid-column:1/-1;min-height:44px;font-size:16px}.buscador-card input[type=text]{font-size:16px;height:44px}.buscador-card .titulo-busca{font-size:16px;gap:6px}#contenedor_ruta .ruta-metricas>span{font-size:24px;padding-left:56px}.ruta-metricas .cr-icon{left:14px;width:30px;height:30px}.ruta-sidebar .boton label{padding:11px 0}.ruta-sidebar input[type=number],.ruta-sidebar select{height:44px;font-size:16px}.cr-guide-tiles{grid-template-columns:repeat(4,minmax(0,1fr))}.cr-guide-tile strong,.cr-guide-tile small{font-size:12px}.ruta-relacionadas ul.rutas{grid-template-columns:1fr}#contenedor_ruta .botones button{min-height:44px}.ruta-relacionadas ul.rutas a{min-height:44px;padding-top:12px}.ruta-relacionadas a:before{top:12px}.ruta-relacionadas a:after{top:8px}}
@media(max-width:390px){#contenedor_ruta .ruta-resumen h1{font-size:23px}#contenedor_ruta .ruta-metricas{gap:6px}#contenedor_ruta .ruta-metricas>span{padding:10px 7px;font-size:23px}.ruta-metricas .cr-icon{display:none}.ruta-metricas small{font-size:12px}.cr-guide-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.cr-radio-grid{grid-template-columns:repeat(2,minmax(0,1fr))}#contenedor_ruta .ruta-sidebar h2{font-size:16px}.cr-field label{flex-basis:42%;font-size:13px}.buscador-card .titulo-busca{font-size:15px}.buscador-card .titulo-busca .cr-icon{width:22px}.ruta-sidebar .datos{padding:10px}}

/* Iconos vectoriales locales: sin fuentes ni dependencias externas. */
:root{--icon-pin:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%230065ff%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M12%2022s8-9%208-14a8%208%200%200%200-16%200c0%205%208%2014%208%2014Z%22%20fill%3D%22%230065ff%22%20stroke%3D%22none%22%2F%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%228%22%20r%3D%223%22%20fill%3D%22white%22%20stroke%3D%22none%22%2F%3E%3C%2Fsvg%3E")}
.cr-pin{--cr-icon:var(--icon-pin)}
:root{--icon-car:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%230065ff%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22m3%2010%202-6h14l2%206v10h-3v-3H6v3H3Z%22%2F%3E%3Cpath%20d%3D%22M3%2010h18M7%2013h1m8%200h1%22%2F%3E%3C%2Fsvg%3E")}
.cr-car{--cr-icon:var(--icon-car)}
:root{--icon-road:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%230065ff%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M7%202h10l5%2020H2Z%22%20fill%3D%22%230065ff%22%20stroke%3D%22none%22%2F%3E%3Cpath%20d%3D%22M12%204v4m0%203v4m0%203v4%22%20stroke%3D%22white%22%2F%3E%3C%2Fsvg%3E")}
.cr-road{--cr-icon:var(--icon-road)}
:root{--icon-route:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%230065ff%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%225%22%20cy%3D%2218%22%20r%3D%223%22%2F%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%225%22%20r%3D%223%22%2F%3E%3Ccircle%20cx%3D%2220%22%20cy%3D%2218%22%20r%3D%223%22%2F%3E%3Cpath%20d%3D%22m6%2015%205-7m3%200%205%207%22%2F%3E%3C%2Fsvg%3E")}
.cr-route{--cr-icon:var(--icon-route)}
:root{--icon-clock:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%230065ff%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%2210%22%2F%3E%3Cpath%20d%3D%22M12%205v7l5%203%22%2F%3E%3C%2Fsvg%3E")}
.cr-clock{--cr-icon:var(--icon-clock)}
:root{--icon-gear:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%230065ff%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22m9%202-1%203-3%201-2%204%202%202-1%204%204%202%201%203h5l1-3%204-2-1-4%202-2-2-4-3-1-1-3Z%22%20fill%3D%22%230065ff%22%2F%3E%3Ccircle%20cx%3D%2211.5%22%20cy%3D%2211.5%22%20r%3D%224%22%20fill%3D%22white%22%20stroke%3D%22none%22%2F%3E%3C%2Fsvg%3E")}
.cr-gear{--cr-icon:var(--icon-gear)}
:root{--icon-info:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%230065ff%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%2211%22%20fill%3D%22%230065ff%22%20stroke%3D%22none%22%2F%3E%3Cpath%20d%3D%22M12%2010v8m0-13v1%22%20stroke%3D%22white%22%2F%3E%3C%2Fsvg%3E")}
.cr-info{--cr-icon:var(--icon-info)}
:root{--icon-fuel:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%230065ff%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M3%2022V3h11v19M1%2022h15M5%206h7v5H5zm9%207h3v6c0%203%205%203%205%200V9l-4-4m1%202v5h3%22%2F%3E%3C%2Fsvg%3E")}
.cr-fuel{--cr-icon:var(--icon-fuel)}
:root{--icon-plug:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%230065ff%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M8%202v6m8-6v6M5%208h14v5a7%207%200%200%201-14%200zm7%2012v3%22%2F%3E%3C%2Fsvg%3E")}
.cr-plug{--cr-icon:var(--icon-plug)}
:root{--icon-home:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%230065ff%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22m1%2011%2011-10%2011%2010h-4v11h-5v-7h-4v7H5V11Z%22%20fill%3D%22%230065ff%22%20stroke%3D%22none%22%2F%3E%3C%2Fsvg%3E")}
.cr-home{--cr-icon:var(--icon-home)}
:root{--icon-list:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%230065ff%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%224%22%20y%3D%222%22%20width%3D%2216%22%20height%3D%2220%22%20rx%3D%221%22%2F%3E%3Cpath%20d%3D%22M8%207h1m3%200h5M8%2012h1m3%200h5M8%2017h1m3%200h5%22%2F%3E%3C%2Fsvg%3E")}
.cr-list{--cr-icon:var(--icon-list)}
:root{--icon-camera:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%230065ff%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M3%207h5l2-3h5l2%203h4v14H3Z%22%20fill%3D%22%230065ff%22%2F%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2214%22%20r%3D%224%22%20stroke%3D%22white%22%2F%3E%3C%2Fsvg%3E")}
.cr-camera{--cr-icon:var(--icon-camera)}
:root{--icon-parking:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%230065ff%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%222%22%20y%3D%221%22%20width%3D%2220%22%20height%3D%2222%22%20rx%3D%222%22%20fill%3D%22%230065ff%22%20stroke%3D%22none%22%2F%3E%3Cpath%20d%3D%22M9%2019V5h4a4%204%200%200%201%200%208H9%22%20stroke%3D%22white%22%2F%3E%3C%2Fsvg%3E")}
.cr-parking{--cr-icon:var(--icon-parking)}
:root{--icon-warning:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%230065ff%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22m12%201%2011%2021H1Z%22%20fill%3D%22%230065ff%22%20stroke%3D%22none%22%2F%3E%3Cpath%20d%3D%22M12%207v8m0%203v1%22%20stroke%3D%22white%22%2F%3E%3C%2Fsvg%3E")}
.cr-warning{--cr-icon:var(--icon-warning)}
:root{--icon-snow:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%230065ff%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M12%201v22M2%206l20%2012M2%2018%2022%206M8%203l4%204%204-4M8%2021l4-4%204%204M2%2010l5-1-1-5m12%2016-1-5%205-1M2%2014l5%201-1%205m12-16-1%205%205%201%22%2F%3E%3C%2Fsvg%3E")}
.cr-snow{--cr-icon:var(--icon-snow)}
:root{--icon-search-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%230065ff%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2210%22%20cy%3D%2210%22%20r%3D%227%22%2F%3E%3Cpath%20d%3D%22m15%2015%207%207%22%2F%3E%3C%2Fsvg%3E")}
.cr-search-icon{--cr-icon:var(--icon-search-icon)}
 .cr-icon{display:inline-block;flex-shrink:0;width:26px;height:26px;background-image:var(--cr-icon);background-position:center;background-size:contain;background-repeat:no-repeat;vertical-align:middle}
.cr-search .cr-icon,.titulo-busca .cr-icon{filter:brightness(0) invert(1)}.cr-guide-tile .cr-plug{filter:hue-rotate(45deg)}.cr-guide-tile .cr-warning{filter:hue-rotate(135deg)}
/* Reset de las métricas del tema legado (selectores de mayor especificidad). */
#contenedor_ruta .right .distancia,#contenedor_ruta .right .duracion{display:flex;height:auto;min-height:68px;margin:0;background:#e1f3fc;padding:8px 12px 8px 88px;line-height:1.15}
#contenedor_ruta .right .distancia:after,#contenedor_ruta .right .duracion:after{content:none}
@media(max-width:1150px){#contenedor_ruta .right .distancia,#contenedor_ruta .right .duracion{padding-left:60px}}
@media(max-width:950px){#contenedor_ruta .right .distancia,#contenedor_ruta .right .duracion{padding-left:45px}}
@media(max-width:760px){#contenedor_ruta .right .distancia,#contenedor_ruta .right .duracion{padding-left:56px}}
@media(max-width:390px){#contenedor_ruta .right .distancia,#contenedor_ruta .right .duracion{padding:10px 7px}}
#contenedor_ruta .ruta-sidebar .boton label{font-size:14px;text-transform:none;color:var(--cr-text)}
#contenedor_ruta .ruta-sidebar .datos{border:0;padding:12px 16px;line-height:1.6}
#contenedor_ruta .ruta-sidebar .textcolor,#contenedor_ruta .ruta-sidebar .textcolor2{font-size:inherit}
#contenedor_ruta .ruta-sidebar #info,#contenedor_ruta .ruta-sidebar #notificacion{font-weight:400}
#contenedor_ruta .form_cal{padding:0}
@font-face{font-family:CRRoboto;src:url('../fonts/roboto-condensed-latin-400-normal.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:CRRoboto;src:url('../fonts/roboto-condensed-latin-700-normal.woff2') format('woff2');font-weight:700;font-style:normal;font-display:swap}
body{font-family:CRRoboto,'Arial Narrow',Arial,sans-serif}
button,input,select,.typeahead__container{font-family:inherit}
#contenedor_ruta .cr-guide-tile{background:#fff;font-family:inherit;white-space:normal;margin:0;float:none;border:1px solid var(--cr-line);border-radius:3px;padding:8px 5px;line-height:1.2;font-weight:400;cursor:pointer}
#contenedor_ruta .cr-guide-tile:hover:not(:disabled){background:#f4f9ff;text-decoration:none}
#contenedor_ruta .cr-guide-tile:disabled{opacity:.65}
.ruta-mapa-card>.bloque{position:relative}
#contenedor_ruta .cr-expand{position:absolute;right:24px;top:65px;width:36px;height:36px;border:1px solid #ccd7df;border-radius:3px;background:white;color:#263756;font-size:24px;line-height:1;padding:0;box-shadow:0 1px 5px #0002;z-index:1100;cursor:pointer}
#contenedor_ruta .cr-road-safety{display:inline-block;float:none;background:transparent;border:0;color:#405276;text-decoration:underline;font-size:12px;padding:5px 0;margin-top:4px;cursor:pointer;min-height:30px}
#contenedor_ruta #botonera[hidden]{display:none}
@media(max-width:760px){#contenedor_ruta .cr-expand{min-height:44px;width:44px}#contenedor_ruta .cr-road-safety{min-height:44px}}
@font-face{font-family:CRRobotoTitle;src:url('../fonts/roboto-latin-700-normal.woff2') format('woff2');font-weight:700;font-style:normal;font-display:swap}
#contenedor_ruta .ruta-resumen h1,#contenedor_ruta .ruta-metricas>span{font-family:CRRobotoTitle,Arial,sans-serif}
#contenedor_ruta .ruta-metricas small{font-family:CRRoboto,'Arial Narrow',Arial,sans-serif}
#header nav li{margin:0}
#header .logo{max-width:100%}
#main-content>.container-12>.grid-12>.grid-840{width:calc(68% - 6px)}
#main-content>.container-12>.grid-12>.grid-336{width:calc(32% - 6px)}
@media(max-width:760px){#main-content>.container-12>.grid-12>.grid-840,#main-content>.container-12>.grid-12>.grid-336{width:100%!important;float:none}}

/* Acceso a la ruta inversa junto al titulo, sin alterar las demas secciones. */
#contenedor_ruta .cr-route-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:8px}
#contenedor_ruta .cr-route-heading h1{flex:1 1 320px;width:auto;margin:0;min-width:0}
#contenedor_ruta .cr-reverse-route{display:inline-flex;align-items:center;justify-content:center;gap:7px;flex:0 0 auto;padding:9px 13px;border:1px solid #2381db;border-radius:8px;color:#176fc0;background:#fff;font-size:14px;font-weight:600;text-decoration:none;line-height:1.3}
#contenedor_ruta .cr-reverse-route:hover,#contenedor_ruta .cr-reverse-route:focus{background:#edf6ff;color:#12599a;text-decoration:none}
#contenedor_ruta .cr-reverse-route span{font-size:19px;line-height:1}
@media(max-width:760px){#contenedor_ruta .cr-route-heading{align-items:flex-start;gap:8px}#contenedor_ruta .cr-route-heading h1{flex-basis:100%}#contenedor_ruta .cr-reverse-route{min-height:40px}}

/* Contenedores publicitarios de prueba: no se carga ningún anuncio. */
#contenedor_ruta .cr-ad-slot { box-sizing:border-box; min-height:100px; width:100%; border:1px dashed #b7c8d9; border-radius:5px; background:#f5f8fb; color:#64748b; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:5px; text-align:center; padding:14px; margin:10px 0; clear:both; }
#contenedor_ruta .cr-ad-slot-label {font-size:13px;font-weight:600;}
#contenedor_ruta .cr-ad-slot-note {font-size:11px;}
#contenedor_ruta .cr-ad-slot-3 {min-height:250px;}
@media(max-width:767px) { #contenedor_ruta .cr-ad-desktop {display:none;} #contenedor_ruta .cr-ad-slot {min-height:90px;} }

/* Corrección de posiciones publicitarias en la cuadrícula de escritorio. */
@media (min-width:761px) {
 #contenedor_ruta {grid-template-rows:auto auto auto auto auto auto auto;}
 #contenedor_ruta>.ruta-resumen {grid-column:1;grid-row:1;}
 #contenedor_ruta>.cr-ad-main:has(.cr-ad-slot-1) {grid-column:1;grid-row:2;}
 #contenedor_ruta>.ruta-mapa-card {grid-column:1;grid-row:3;}
 #contenedor_ruta>.cr-ad-main:has(.cr-ad-slot-2) {grid-column:1;grid-row:4;}
 #contenedor_ruta>.ruta-guia {grid-column:1;grid-row:5;}
 #contenedor_ruta>.ruta-sidebar {grid-column:2;grid-row:1 / 6;}
 #contenedor_ruta>.ruta-relacionadas {grid-column:1/-1;grid-row:6;}
 #contenedor_ruta>.ad-center-mb {grid-column:1/-1;grid-row:7;}
 #contenedor_ruta>.cr-ad-main {width:100%;min-width:0;float:none;margin:0;}
}
@media (max-width:760px) {
 #contenedor_ruta>.cr-ad-main {width:100%;float:none;margin:0;}
}

/* Publicidad AdSense: distribución final en escritorio. */
#contenedor_ruta .cr-ad-slot:has(ins.adsbygoogle){padding:0;border:0;background:transparent;min-height:100px;display:block;overflow:hidden;}
#contenedor_ruta .cr-ad-slot-3{min-height:250px;margin-top:0;margin-bottom:12px;}
@media (min-width:761px){
 #contenedor_ruta>.ruta-guia{grid-row:4;}
 #contenedor_ruta>.cr-ad-main:has(.cr-ad-slot-2){grid-row:5;}
 #contenedor_ruta>.ruta-sidebar{grid-row:1 / 6;}
}
@media (max-width:760px){#contenedor_ruta .cr-ad-slot-3{display:none;}}

/* Adsense: mapa y controles primero; dos anuncios debajo del contenido útil. */
@media (min-width:761px){
 #contenedor_ruta{grid-template-rows:repeat(5,auto);}
 #contenedor_ruta>.ruta-resumen{grid-column:1;grid-row:1;}
 #contenedor_ruta>.ruta-mapa-card{grid-column:1;grid-row:2;}
 #contenedor_ruta>.ruta-guia{grid-column:1;grid-row:3;}
 #contenedor_ruta>.cr-ad-main:has(.cr-ad-slot-1){grid-column:1;grid-row:4;}
 #contenedor_ruta>.ruta-sidebar{grid-column:2;grid-row:1 / 5;}
 #contenedor_ruta>.ruta-relacionadas{grid-column:1 / -1;grid-row:5;}
 #contenedor_ruta>.ad-center-mb{grid-column:1 / -1;grid-row:6;}
 #contenedor_ruta .cr-ad-slot-3{margin-top:0;}
}
@media (max-width:760px){
 #contenedor_ruta>.cr-ad-main:has(.cr-ad-slot-1){order:4;}
 #contenedor_ruta>.ruta-resumen{order:0;}
 #contenedor_ruta>.ruta-mapa-card{order:1;}
 #contenedor_ruta>.ruta-sidebar{order:2;}
 #contenedor_ruta>.ruta-guia{order:3;}
 #contenedor_ruta>.ruta-relacionadas{order:5;}
 #contenedor_ruta>.ad-center-mb{order:6;}
}

/* Dos bloques manuales: banner fino tras buscador y anuncio bajo coste (escritorio). */
#contenedor_ruta>.cr-ad-top-desktop{display:none}
@media(min-width:761px){
 #contenedor_ruta{grid-template-rows:auto auto auto auto auto;align-items:start}
 #contenedor_ruta>.cr-ad-top-desktop{display:flex;grid-column:1/-1;grid-row:1;justify-content:center;align-items:center;min-height:90px;margin:0 0 2px;overflow:hidden}
 #contenedor_ruta>.ruta-resumen{grid-column:1;grid-row:2}
 #contenedor_ruta>.ruta-mapa-card{grid-column:1;grid-row:3}
 #contenedor_ruta>.ruta-guia{grid-column:1;grid-row:4}
 #contenedor_ruta>.ruta-sidebar{grid-column:2;grid-row:2 / 5}
 #contenedor_ruta>.ruta-relacionadas{grid-column:1/-1;grid-row:5}
 #contenedor_ruta>.ad-center-mb{grid-column:1/-1;grid-row:6}
 #contenedor_ruta .cr-ad-slot-3{margin:0;min-height:250px}
}
@media(max-width:760px){#contenedor_ruta>.cr-ad-top-desktop{display:none!important}}

/* Banner responsive bajo el buscador en móvil, antes del resumen. */
@media(max-width:760px){
 #contenedor_ruta>.ad-center-mb{order:-1!important;width:100%;margin:0 0 2px;height:auto!important;min-height:0!important;}
 #contenedor_ruta>.ad-center-mb #advertising{width:100%;max-width:100%;overflow:hidden;}
 #contenedor_ruta>.ad-center-mb ins.adsbygoogle{display:block;width:100%;}
}

/* Contener el anuncio rectangular en la anchura real del resumen movil. */
@media(max-width:760px){
 #contenedor_ruta .ruta-resumen .cr-ad-mobile-inline{display:block!important;position:relative;float:none!important;clear:both;width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box;margin:12px 0!important;overflow:hidden!important;}
 #contenedor_ruta .ruta-resumen .cr-ad-mobile-inline #advertising{display:block!important;position:relative;width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box;overflow:hidden!important;}
 #contenedor_ruta .ruta-resumen .cr-ad-mobile-inline ins.adsbygoogle{display:block!important;width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important;margin:0 auto!important;}
}
@media(min-width:761px){#contenedor_ruta .ruta-resumen .cr-ad-mobile-inline{display:none!important;}}

/* Anuncio móvil: tamaño fijo para impedir que AdSense expanda el ancho. */
@media(max-width:760px){
 #contenedor_ruta .ruta-resumen .cr-ad-mobile-inline{display:flex!important;justify-content:center!important;align-items:flex-start!important;width:100%!important;max-width:100%!important;min-width:0!important;padding:0!important;margin:12px 0!important;overflow:hidden!important;box-sizing:border-box!important;}
 #contenedor_ruta .ruta-resumen .cr-ad-mobile-inline ins.cr-ad-mobile-fixed{display:inline-block!important;flex:0 0 300px!important;width:300px!important;max-width:300px!important;min-width:300px!important;height:250px!important;margin:0!important;}
}
@media(max-width:319px){#contenedor_ruta .ruta-resumen .cr-ad-mobile-inline{display:none!important;}}

/* Accesibilidad: contraste del resumen de distancia y duracion */
#contenedor_ruta .ruta-sidebar .datos{color:#253451}
#contenedor_ruta .ruta-sidebar .datos .textcolor,#contenedor_ruta .ruta-sidebar .datos .textcolor2{color:#004a9f}

/* Portada: tarjetas SEO (antes inline en home.php) */
.seo-resumen { margin-bottom: 15px; }
.seo-grid { display: block; }
.seo-card { margin: 0 0 12px 0; }
.seo-card h3 { margin-top: 0; }
@media (min-width: 769px) {
    .seo-grid { display: flex; gap: 14px; align-items: stretch; }
    .seo-card { flex: 1; margin-bottom: 0; }
    .seo-card p { margin-bottom: 0; }
}

/* Página de ruta: estilos trasladados desde views/tomtom/ruta.php */
/* Reserva estable para avisos y anuncio de la columna derecha. */
#contenedor_ruta .cr-avisos-estables { height:120px; min-height:120px; max-height:120px; box-sizing:border-box; overflow-y:auto; overflow-x:hidden; overscroll-behavior:contain; }
#contenedor_ruta .cr-ad-sidebar-compact { width:100%; max-width:100%; height:90px; min-height:90px; box-sizing:border-box; overflow:hidden; margin:10px 0 12px; }
#contenedor_ruta .cr-ad-sidebar-responsive { width:100%; max-width:100%; height:90px; }
@media (max-width:767px) { #contenedor_ruta .cr-ad-sidebar-compact { height:90px; min-height:90px; } }
#contenedor_ruta > .cr-ad-slot-3 { width:100%; max-width:100%; box-sizing:border-box; clear:both; }
/* Dos columnas independientes: el mapa sigue al resumen sin depender de Avisos. */
@media (min-width:761px) {
  #contenedor_ruta { display:grid !important; grid-template-columns:minmax(0, 840fr) minmax(280px, 336fr) !important; grid-template-rows:90px auto auto auto !important; gap:12px; align-content:start; }
  #contenedor_ruta > .cr-left-stack { grid-column:1 !important; grid-row:2 !important; display:flex; flex-direction:column; gap:10px; min-width:0; width:100%; align-self:start; }
  #contenedor_ruta > .cr-left-stack > .ruta-resumen,
  #contenedor_ruta > .cr-left-stack > .ruta-mapa-card { width:100%; margin:0; float:none; min-width:0; }
  #contenedor_ruta > .ruta-sidebar { grid-column:2 !important; grid-row:2 !important; align-self:start; min-width:0; width:100%; float:none; margin:0; }
  #contenedor_ruta > .cr-left-stack > .ruta-guia { width:100%; margin:0; float:none; min-width:0; }
  #contenedor_ruta > .cr-ad-slot-3 { grid-column:1/-1; grid-row:3; width:100%; min-width:0; }
  #contenedor_ruta > .ruta-relacionadas { grid-column:1/-1; grid-row:4; }
}
@media (max-width:760px) {
  #contenedor_ruta { display:block; }
  #contenedor_ruta > .cr-left-stack { display:contents; }
  #contenedor_ruta .ruta-guia { margin-top:0; padding-top:0; }
  #contenedor_ruta .ruta-mapa-card .cr-guide-tiles { margin-top:12px; padding-top:12px; border-top:1px solid #e1e7ee; }
  #contenedor_ruta .cr-guide-explanation { margin-top:18px; }
}
#contenedor_ruta .ruta-mapa-card .cr-guide-tiles { display:grid; grid-template-columns:repeat(auto-fit,minmax(105px,1fr)); gap:6px; align-items:stretch; }
#contenedor_ruta .ruta-mapa-card .cr-guide-tiles > .cr-guide-tile { min-width:0; width:auto; margin:0; box-sizing:border-box; }
/* Mapa y controles comparten una sola tarjeta visual. */
#contenedor_ruta .ruta-mapa-card > .bloque { overflow:visible; }
#contenedor_ruta .ruta-mapa-card .cr-guide-tiles {
  clear:both; margin:12px 0 0; padding:12px 0 0;
  border:0; border-top:1px solid #e1e7ee;
  background:transparent; box-shadow:none; border-radius:0;
}
#contenedor_ruta .ruta-mapa-card .cr-guide-tiles > .cr-guide-tile { box-sizing:border-box; }
@media (max-width:760px) {
 #contenedor_ruta .ruta-mapa-card .cr-guide-tiles { margin-top:10px; padding-top:10px; }
}
/* Correccion de apilado movil: anular floats y anchos heredados. */
@media (max-width:760px) {
  #contenedor_ruta { display:flex !important; flex-direction:column !important; width:100% !important; min-width:0; }
  #contenedor_ruta > .cr-left-stack { display:flex !important; flex-direction:column !important; width:100% !important; min-width:0; gap:10px; }
  #contenedor_ruta > .cr-left-stack > .ruta-resumen,
  #contenedor_ruta > .cr-left-stack > .ruta-mapa-card,
  #contenedor_ruta > .cr-left-stack > .ruta-guia,
  #contenedor_ruta > .ruta-sidebar,
  #contenedor_ruta > .ruta-relacionadas { display:block; float:none !important; clear:both !important; width:100% !important; max-width:100% !important; min-width:0 !important; margin-left:0 !important; margin-right:0 !important; box-sizing:border-box; }
  #contenedor_ruta .ruta-mapa-card > .bloque { width:100%; max-width:100%; box-sizing:border-box; }
  #contenedor_ruta .ruta-mapa-card .cr-guide-tiles { width:100%; max-width:100%; box-sizing:border-box; }
  #contenedor_ruta .ruta-mapa-card .cr-guide-tiles > .cr-guide-tile { display:flex; flex-direction:column; width:auto !important; min-width:0; }
  #contenedor_ruta .ruta-guia { position:static !important; }
}
/* Mantener visible la tarjeta de estaciones sin alterar el ancho del grid. */
#contenedor_ruta .ruta-mapa-card .cr-guide-tiles > .cr-estaciones-tile { display:flex !important; visibility:visible !important; }
/* La tarjeta de puntos negros no hereda reglas antiguas del boton oculto. */
#contenedor_ruta .cr-guide-tiles .cr-puntos-negros-tile { display:flex; visibility:visible; }
/* Modal del mismo mapa Leaflet: sin nuevas peticiones de rutas. */
.cr-map-modal[hidden] { display:none !important; }
.cr-map-modal { position:fixed; inset:0; z-index:2147483000; display:flex; align-items:center; justify-content:center; padding:2.5vh 2.5vw; background:rgba(14,25,40,.76); box-sizing:border-box; }
.cr-map-dialog { width:100%; height:100%; max-height:95vh; background:#fff; border-radius:12px; display:flex; flex-direction:column; min-width:0; overflow:hidden; box-shadow:0 18px 60px rgba(0,0,0,.3); }
.cr-map-dialog-head { flex:0 0 auto; min-height:52px; padding:8px 12px 8px 18px; display:flex; justify-content:space-between; align-items:center; gap:12px; background:#fff; }
.cr-map-dialog-head strong { overflow:hidden; white-space:nowrap; text-overflow:ellipsis; font-size:15px; }
.cr-map-close { flex:0 0 auto; width:40px; height:40px; border:0; border-radius:8px; background:#f0f3f7; color:#263343; font-size:28px; line-height:1; cursor:pointer; }
.cr-map-close-mobile { display:none; }
.cr-map-close-bottom { display:none; }
.cr-map-dialog-body { flex:1 1 auto; min-height:0; position:relative; }
.cr-map-dialog-body > #mapa { width:100% !important; height:100% !important; max-height:none !important; margin:0 !important; }
body.cr-map-modal-open { overflow:hidden !important; }
@media (max-width:760px) {
 .cr-map-modal { padding:0; }
 .cr-map-dialog { border-radius:0; max-height:none; height:100%; height:100dvh; }
 .cr-map-dialog-head { padding-top:max(8px, env(safe-area-inset-top)); }
 .cr-map-dialog-body { padding-bottom:env(safe-area-inset-bottom); }
 .cr-map-close-desktop { display:none; }
 .cr-map-close-mobile { display:inline; }
 /* Control de retorno siempre visible por encima del mapa y sus controles. */
 .cr-map-modal .cr-map-dialog-head { position:absolute !important; top:0 !important; left:0 !important; right:0 !important; z-index:2147483005 !important; background:transparent !important; pointer-events:none; padding:calc(10px + env(safe-area-inset-top)) 12px 8px !important; }
 .cr-map-modal .cr-map-dialog-head strong { display:none !important; }
 .cr-map-modal .cr-map-close { display:flex !important; align-items:center; justify-content:center; pointer-events:auto; width:auto !important; min-width:100px; height:44px !important; padding:0 16px !important; margin:0 !important; background:#fff !important; color:#172b43 !important; border:1px solid #d4dbe3 !important; box-shadow:0 2px 12px rgba(0,0,0,.28) !important; border-radius:24px !important; font-size:16px !important; font-weight:600 !important; opacity:1 !important; visibility:visible !important; }
 .cr-map-modal .cr-map-dialog-body { width:100%; height:100%; }
 /* Dos controles de salida: arriba y abajo, fuera del mapa Leaflet. */
 .cr-map-modal .cr-map-dialog-head { z-index:2147483647 !important; }
 .cr-map-modal .cr-map-close-bottom { display:flex !important; position:fixed !important; bottom:calc(14px + env(safe-area-inset-bottom)) !important; left:50% !important; transform:translateX(-50%) !important; z-index:2147483647 !important; align-items:center; justify-content:center; min-width:132px; min-height:48px; padding:0 20px; border:2px solid #fff; border-radius:28px; background:#173d69; color:#fff; box-shadow:0 3px 16px rgba(0,0,0,.4); font-size:16px; font-weight:700; cursor:pointer; }


}


/* Publicidad de portada: tamaño controlado sin recortar el anuncio. */
.cr-home-ad { text-align:center; box-sizing:border-box; }
.cr-home-ad .cr-home-ad-unit { display:block; width:100%; height:250px; margin:0 auto; }
@media only screen and (max-width:768px) {
  .cr-home-ad .cr-home-ad-unit { width:320px; max-width:100%; height:100px; }
}
