/* Biblioteca de componentes de noviembre de 2026 (petición del 9/11/2026). GENERADO por
 * datos/diseno-2026-11/biblioteca.py: no se edita a mano. Cada línea es copia literal del prototipo indicado
 * (GuiaFinal.html o PortadaFinal.html), con el prefijo ivg- en clases, variables y animaciones, @container → @media
 * y cqi → vw. Las líneas que no salen del prototipo van al final, en «Fuera del prototipo», con su motivo. */

/* ===== Tokens: colores, fuentes, escala compacta (--k .9), mar, salvia, terracota y sus fondos ===== */
/* GuiaFinal.html:10 */ :root{
/* GuiaFinal.html:11 */   --ivg-ink:#1C1A17; --ivg-gold:#C8A96E; --ivg-card:#FFFDF8; --ivg-hair:#E3DCCD; --ivg-paper:#FAF7F0; --ivg-tinte:#F2EDE3;
/* GuiaFinal.html:12 */   --ivg-label:#82632F; --ivg-text:#4A453D; --ivg-muted:#8A8275; --ivg-rojo:#9B4A32;
/* GuiaFinal.html:13 */   --ivg-f-d:"Fraunces",Georgia,"Times New Roman",serif; --ivg-f-b:"Plus Jakarta Sans",system-ui,-apple-system,sans-serif;
/* GuiaFinal.html:14 */   --ivg-k:1; /* escala general, la cambia el selector */
/* GuiaFinal.html:15 */   color-scheme:light;
/* GuiaFinal.html:16 */ }
/* GuiaFinal.html:450 */ :root{--ivg-k:.9}
/* GuiaFinal.html:673 */ :root{--ivg-mar:#3E6B7A;--ivg-salvia:#7C8B6A;--ivg-terra:#B4533A;--ivg-arena:#E7D3A8;--ivg-mar-t:#E3ECEE;--ivg-salvia-t:#ECEFE6;--ivg-terra-t:#F5E4DE;--ivg-ocre-t:#F4EBD8}

/* ===== Piezas comunes: tipografía (.m), etiqueta (.m-lbl), foto, marco fino, mat, círculo de icono, subtítulo, flecha ===== */
/* GuiaFinal.html:58 */ .ivg-m{font-family:var(--ivg-f-b);color:var(--ivg-text);font-size:calc(15px*var(--ivg-k))}
/* GuiaFinal.html:59 */ .ivg-m h1,.ivg-m h2,.ivg-m h3,.ivg-m h4{font-family:var(--ivg-f-d);font-weight:500;color:var(--ivg-ink);margin:0;text-wrap:balance}
/* GuiaFinal.html:61 */ .ivg-m-lbl{font:600 calc(11px*var(--ivg-k))/1.3 var(--ivg-f-b);letter-spacing:.14em;text-transform:uppercase;color:var(--ivg-label)}
/* GuiaFinal.html:62 */ .ivg-m-lbl.ivg-r{color:var(--ivg-rojo)}
/* GuiaFinal.html:66 */ .ivg-foto{position:relative;overflow:hidden;background:#cfc6b4}
/* GuiaFinal.html:67 */ .ivg-foto img{width:100%;height:100%;object-fit:cover}
/* GuiaFinal.html:68 */ .ivg-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--ivg-gold);margin-right:6px;vertical-align:1px;box-shadow:0 0 0 3px rgba(200,169,110,.25)}
/* GuiaFinal.html:69 */ .ivg-star{width:14px;height:14px;color:var(--ivg-gold);flex:none}
/* GuiaFinal.html:423 */ .ivg-flecha{width:16px;height:16px}
/* GuiaFinal.html:457 */ .ivg-foto.ivg-fino::before{content:"";position:absolute;inset:7px;border:1px solid rgba(250,247,240,.6);z-index:1;pointer-events:none}
/* GuiaFinal.html:458 */ .ivg-mat{background:var(--ivg-card);padding:8px;border:1px solid var(--ivg-hair);box-shadow:0 18px 30px -24px rgba(28,26,23,.5)}
/* GuiaFinal.html:674 */ .ivg-m p{margin:0}
/* GuiaFinal.html:675 */ .ivg-lede{font-size:calc(15px*var(--ivg-k));color:var(--ivg-text);max-width:62ch;margin-top:10px}
/* GuiaFinal.html:676 */ .ivg-subt{font-family:var(--ivg-f-d);font-style:italic;color:var(--ivg-text);font-size:calc(17px*var(--ivg-k));margin-top:2px}
/* GuiaFinal.html:677 */ .ivg-circ-i{width:38px;height:38px;border-radius:50%;background:var(--ivg-tinte);display:grid;place-items:center;flex:none;box-shadow:inset 0 0 0 1px rgba(200,169,110,.55)}
/* GuiaFinal.html:678 */ .ivg-circ-i svg{width:18px;height:18px;color:var(--ivg-rojo)}
/* GuiaFinal.html:679 */ .ivg-color .ivg-circ-i.ivg-c-mar{background:var(--ivg-mar-t)}.ivg-color .ivg-circ-i.ivg-c-mar svg{color:var(--ivg-mar)}
/* GuiaFinal.html:680 */ .ivg-color .ivg-circ-i.ivg-c-salvia{background:var(--ivg-salvia-t)}.ivg-color .ivg-circ-i.ivg-c-salvia svg{color:var(--ivg-salvia)}
/* GuiaFinal.html:681 */ .ivg-color .ivg-circ-i.ivg-c-terra{background:var(--ivg-terra-t)}.ivg-color .ivg-circ-i.ivg-c-terra svg{color:var(--ivg-terra)}

/* ===== Enlace con subrayado (.m-mas) ===== */
/* PortadaFinal.html:60 */ .ivg-m-mas{font:700 calc(11.5px*var(--ivg-k))/1 var(--ivg-f-b);letter-spacing:.14em;text-transform:uppercase;color:var(--ivg-ink);text-decoration:none;border-bottom:1px solid var(--ivg-gold);padding-bottom:6px;white-space:nowrap}

/* ===== Cabecera de sección (.sh), variante A aprobada (estrella y trazo; sin número ni banda de foto) ===== */
/* GuiaFinal.html:684 */ .ivg-sh{display:grid;gap:6px}
/* GuiaFinal.html:685 */ .ivg-sh h2{font-size:calc(32px*var(--ivg-k));line-height:1.1}
/* GuiaFinal.html:686 */ .ivg-sh .ivg-sep{display:flex;align-items:center;gap:10px;margin-bottom:8px}
/* GuiaFinal.html:687 */ .ivg-sh .ivg-sep svg{width:14px;height:14px;color:var(--ivg-gold)}
/* GuiaFinal.html:688 */ .ivg-sh .ivg-sep i{display:block;width:48px;height:1px;background:var(--ivg-gold);opacity:.7}
/* GuiaFinal.html:689 */ .ivg-sh .ivg-top{display:flex;align-items:center;gap:10px}
/* GuiaFinal.html:690 */ .ivg-shB .ivg-num{width:34px;height:34px;border-radius:50%;background:var(--ivg-ink);color:var(--ivg-gold);display:grid;place-items:center;font:500 15px/1 var(--ivg-f-d);box-shadow:0 0 0 2px var(--ivg-paper),0 0 0 3px var(--ivg-gold);flex:none}
/* GuiaFinal.html:691 */ .ivg-shC{grid-template-columns:auto 1fr;column-gap:16px;align-items:center}
/* GuiaFinal.html:692 */ .ivg-shC .ivg-banda-f{grid-column:1/-1;height:120px;margin-bottom:18px;position:relative}
/* GuiaFinal.html:693 */ .ivg-shC .ivg-banda-f .ivg-cont{position:absolute;right:10px;bottom:8px;font:600 10px/1 var(--ivg-f-b);letter-spacing:.14em;color:#fff;background:rgba(28,26,23,.55);padding:6px 8px;text-transform:uppercase}
/* GuiaFinal.html:694 */ .ivg-shC .ivg-circ-i{width:52px;height:52px;grid-row:2/5}
/* GuiaFinal.html:695 */ .ivg-shC .ivg-circ-i svg{width:22px;height:22px}
/* GuiaFinal.html:696 */ .ivg-de{font:600 11px/1 var(--ivg-f-b);letter-spacing:.14em;color:var(--ivg-muted);text-transform:uppercase}
/* GuiaFinal.html:697 */ @media (max-width:600px){.ivg-sh h2{font-size:calc(25px*var(--ivg-k))}.ivg-shC .ivg-banda-f{height:90px}}
/* GuiaFinal.html:901 */ .ivg-sh .ivg-banda-f{display:none;height:110px;margin-bottom:16px;position:relative}
/* GuiaFinal.html:902 */ .ivg-sh .ivg-num,.ivg-sh .ivg-circ-i,.ivg-sh .ivg-de{display:none}
/* GuiaFinal.html:908 */ .ivg-sh .ivg-top .ivg-m-lbl{flex:1}
/* GuiaFinal.html:909 */ @media (max-width:600px){.ivg-sh .ivg-banda-f{height:84px}}

/* ===== Índice (.ixE móvil / .ix-pc ordenador) con el botón .ver-todo ===== */
/* GuiaFinal.html:700 */ .ivg-ix-h{font:700 11px/1 var(--ivg-f-b);letter-spacing:.16em;text-transform:uppercase;color:var(--ivg-label);margin-bottom:12px}
/* GuiaFinal.html:921 */ .ivg-ver-todo{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;margin-top:4px;padding:12px;background:var(--ivg-card);border:1px solid var(--ivg-hair);font:700 11px/1 var(--ivg-f-b);letter-spacing:.14em;text-transform:uppercase;color:var(--ivg-ink);cursor:pointer}
/* GuiaFinal.html:922 */ .ivg-ver-todo svg{width:12px;height:12px;transition:transform .3s}
/* GuiaFinal.html:923 */ .ivg-abierto + .ivg-ver-todo svg{transform:rotate(180deg)}
/* GuiaFinal.html:1075 */ .ivg-ixE{display:grid}
/* GuiaFinal.html:1076 */ .ivg-ixE a{display:grid;grid-template-columns:28px 1fr auto;gap:12px;align-items:center;min-height:44px;padding:4px 0;border-bottom:1px solid var(--ivg-hair);text-decoration:none;color:var(--ivg-ink);font-size:14.5px;line-height:1.25}
/* GuiaFinal.html:1077 */ .ivg-ixE .ivg-circ-i{width:28px;height:28px}.ivg-ixE .ivg-circ-i svg{width:14px;height:14px}
/* GuiaFinal.html:1078 */ .ivg-ixE .ivg-n{font:500 13px/1 var(--ivg-f-d);color:var(--ivg-gold)}
/* GuiaFinal.html:1079 */ .ivg-ixE .ivg-oculto{display:none}
/* GuiaFinal.html:1080 */ .ivg-ixE.ivg-abierto .ivg-oculto{display:grid}
/* GuiaFinal.html:1222 */ .ivg-ix-pc{display:none}
/* GuiaFinal.html:1223 */ @media (min-width:761px){.ivg-ix-pc{display:grid;grid-template-columns:1fr 1fr;column-gap:36px}.ivg-ix-pc a{display:grid}.ivg-ix-mv{display:none}.ivg-ixE.ivg-ix-pc .ivg-oculto{display:grid}}

/* ===== Rótulos (.rot) ===== */
/* GuiaFinal.html:1088 */ .ivg-rot{display:flex;align-items:center;gap:10px;margin:0 0 12px}
/* GuiaFinal.html:1089 */ .ivg-rot b{font:700 11px/1 var(--ivg-f-b);letter-spacing:.16em;text-transform:uppercase;color:var(--ivg-label)}
/* GuiaFinal.html:1090 */ .ivg-rot i{flex:1;height:1px;background:var(--ivg-hair)}
/* GuiaFinal.html:1091 */ .ivg-rot svg{width:15px;height:15px;color:var(--ivg-terra)}
/* GuiaFinal.html:1092 */ .ivg-rot small{font-size:12px;color:var(--ivg-muted)}

/* ===== Platos deslizables (.platos2 con .desliza-wrap, .cnt y .progreso) ===== */
/* GuiaFinal.html:597 */ .ivg-desliza-wrap{position:relative}
/* GuiaFinal.html:598 */ .ivg-desliza-aviso{position:absolute;right:0;top:-34px;display:none;align-items:center;gap:6px;font:700 10.5px/1 var(--ivg-f-b);letter-spacing:.16em;text-transform:uppercase;color:var(--ivg-gold)}
/* GuiaFinal.html:599 */ .ivg-desliza-aviso svg{width:14px;height:14px;animation:ivg-empuja 1.6s ease-in-out infinite}
/* GuiaFinal.html:600 */ .ivg-desliza-wrap.ivg-tocado .ivg-desliza-aviso svg{animation:none}
/* GuiaFinal.html:601 */ @keyframes ivg-empuja{0%,100%{transform:translateX(0)}50%{transform:translateX(5px)}}
/* GuiaFinal.html:602 */ @media (prefers-reduced-motion:reduce){.ivg-desliza-aviso svg{animation:none}}
/* GuiaFinal.html:603 */ .ivg-progreso{display:block;height:2px;background:rgba(200,169,110,.25);margin-top:6px;position:relative;overflow:hidden}
/* GuiaFinal.html:604 */ .ivg-progreso i{position:absolute;left:0;top:0;bottom:0;width:30%;background:var(--ivg-gold);transition:transform .1s linear}
/* GuiaFinal.html:605 */ .ivg-desliza-wrap::after{content:"";position:absolute;right:-16px;top:0;bottom:12px;width:44px;background:linear-gradient(90deg,rgba(28,26,23,0),rgba(28,26,23,.85));pointer-events:none;display:none;transition:opacity .2s}
/* GuiaFinal.html:606 */ .ivg-desliza-wrap.ivg-fin::after{opacity:0}
/* GuiaFinal.html:607 */ @media (max-width:760px){
/* GuiaFinal.html:608 */   .ivg-desliza-aviso,.ivg-progreso{display:flex}
/* GuiaFinal.html:609 */   .ivg-progreso{display:block}
/* GuiaFinal.html:610 */   .ivg-desliza-wrap::after{display:block}
/* GuiaFinal.html:611 */   .ivg-iC2 .ivg-m-hd .ivg-m-mas{display:none}
/* GuiaFinal.html:612 */ }
/* GuiaFinal.html:926 */ .ivg-platos2{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;background:var(--ivg-tinte);padding:18px 20px}
/* GuiaFinal.html:927 */ .ivg-platos2 > div{display:grid;gap:4px;align-content:start}
/* GuiaFinal.html:928 */ .ivg-platos2 b{font:500 calc(20px*var(--ivg-k))/1.15 var(--ivg-f-d);color:var(--ivg-ink);display:block;margin:6px 0 2px}
/* GuiaFinal.html:929 */ .ivg-platos2 span.ivg-nn{width:24px;height:24px;border-radius:50%;border:1px solid var(--ivg-gold);display:grid;place-items:center;font:500 12px/1 var(--ivg-f-d);color:var(--ivg-label)}
/* GuiaFinal.html:930 */ .ivg-platos2 p{font-size:13px}
/* GuiaFinal.html:931 */ .ivg-pl-wrap{margin-bottom:22px}
/* GuiaFinal.html:932 */ .ivg-pl-wrap .ivg-desliza-aviso{display:none}
/* GuiaFinal.html:933 */ @media (max-width:760px){
/* GuiaFinal.html:934 */   .ivg-pl-wrap{position:relative}
/* GuiaFinal.html:935 */   .ivg-pl-wrap .ivg-desliza-aviso{display:flex;position:static;justify-content:space-between;margin-bottom:8px;color:var(--ivg-label)}
/* GuiaFinal.html:936 */   .ivg-platos2{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:76%;overflow-x:auto;scroll-snap-type:x mandatory;gap:0;padding:0;background:none}
/* GuiaFinal.html:937 */   .ivg-platos2 > div{scroll-snap-align:start;background:var(--ivg-tinte);padding:16px 18px;margin-right:10px;border:1px solid rgba(200,169,110,.35)}
/* GuiaFinal.html:938 */ }
/* GuiaFinal.html:939 */ .ivg-desliza-aviso .ivg-cnt{font:500 13px/1 var(--ivg-f-d);letter-spacing:0;color:var(--ivg-muted);text-transform:none}
/* GuiaFinal.html:1240 */ .ivg-scroller{scrollbar-width:none}.ivg-scroller::-webkit-scrollbar{display:none}
/* GuiaFinal.html:1241 */ .ivg-progreso{height:2px;background:rgba(130,99,47,.15);margin-top:10px;position:relative}
/* GuiaFinal.html:1243 */ .ivg-desliza-wrap::after{display:none!important}

/* ===== Pestañas (.tabsG) ===== */
/* GuiaFinal.html:735 */ .ivg-tabsG{display:flex;gap:22px;border-bottom:1px solid var(--ivg-hair);margin-bottom:14px}
/* GuiaFinal.html:736 */ .ivg-tabsG button{background:none;border:0;padding:0 0 10px;font:600 calc(11.5px*var(--ivg-k))/1 var(--ivg-f-b);letter-spacing:.14em;text-transform:uppercase;color:var(--ivg-muted);border-bottom:2px solid transparent;cursor:pointer}
/* GuiaFinal.html:737 */ .ivg-tabsG button[aria-selected="true"]{color:var(--ivg-ink);border-color:var(--ivg-gold)}
/* GuiaFinal.html:1202 */ .ivg-tabsG button small{font:500 12px var(--ivg-f-d);color:var(--ivg-gold);letter-spacing:0;margin-left:4px}

/* ===== Carta de restaurantes (.carta) ===== */
/* GuiaFinal.html:738 */ .ivg-carta{display:grid}
/* GuiaFinal.html:739 */ .ivg-carta details{border-bottom:1px solid var(--ivg-hair)}
/* GuiaFinal.html:740 */ .ivg-carta summary{list-style:none;cursor:pointer;padding:14px 0;display:grid;gap:4px}
/* GuiaFinal.html:741 */ .ivg-carta summary::-webkit-details-marker{display:none}
/* GuiaFinal.html:742 */ .ivg-carta .ivg-lin{display:flex;align-items:baseline;gap:8px}
/* GuiaFinal.html:743 */ .ivg-carta .ivg-lin b{font:500 calc(19px*var(--ivg-k))/1.2 var(--ivg-f-d);color:var(--ivg-ink)}
/* GuiaFinal.html:744 */ .ivg-carta .ivg-lin .ivg-pun{flex:1;border-bottom:1px dotted #BFB4A0;transform:translateY(-4px);min-width:20px}
/* GuiaFinal.html:745 */ .ivg-carta .ivg-lin .ivg-pr{font:500 15px/1 var(--ivg-f-d);color:var(--ivg-ink);letter-spacing:.04em}
/* GuiaFinal.html:746 */ .ivg-carta .ivg-lin .ivg-pr span{color:#D9D1C2}
/* GuiaFinal.html:747 */ .ivg-carta .ivg-sub2{font-size:13.5px;color:var(--ivg-text)}
/* GuiaFinal.html:748 */ .ivg-carta .ivg-sub2 em{font-family:var(--ivg-f-d);color:var(--ivg-ink)}
/* GuiaFinal.html:749 */ .ivg-carta .ivg-tag{font:700 9.5px/1 var(--ivg-f-b);letter-spacing:.14em;text-transform:uppercase;color:var(--ivg-label);margin-right:6px}
/* GuiaFinal.html:750 */ .ivg-carta .ivg-mas{font:700 10px/1 var(--ivg-f-b);letter-spacing:.14em;text-transform:uppercase;color:var(--ivg-muted)}
/* GuiaFinal.html:751 */ .ivg-carta details[open] .ivg-mas{display:none}
/* GuiaFinal.html:752 */ .ivg-carta .ivg-det{padding:0 0 16px;display:grid;gap:8px;font-size:13.5px;color:var(--ivg-text)}
/* GuiaFinal.html:753 */ .ivg-carta .ivg-acc2{display:flex;gap:16px}
/* GuiaFinal.html:754 */ .ivg-carta .ivg-acc2 a{font:700 10.5px/1 var(--ivg-f-b);letter-spacing:.14em;text-transform:uppercase;color:var(--ivg-ink);border-bottom:1px solid var(--ivg-gold);padding-bottom:4px;text-decoration:none}

/* ===== Tabla de transporte (.llF) ===== */
/* GuiaFinal.html:1109 */ .ivg-llF{display:grid;border-top:2px solid var(--ivg-label)}
/* GuiaFinal.html:1110 */ .ivg-llF .ivg-it{display:grid;grid-template-columns:40px minmax(0,1.1fr) minmax(0,1fr) minmax(0,1.3fr);gap:16px;align-items:center;padding:14px 4px;border-bottom:1px solid var(--ivg-hair)}
/* GuiaFinal.html:1111 */ .ivg-llF .ivg-it:nth-child(odd){background:var(--ivg-card)}
/* GuiaFinal.html:1112 */ .ivg-llF .ivg-lb{font:600 10px/1.35 var(--ivg-f-b);letter-spacing:.14em;text-transform:uppercase;color:var(--ivg-muted)}
/* GuiaFinal.html:1113 */ .ivg-llF b{font:500 20px/1.15 var(--ivg-f-d);color:var(--ivg-ink)}
/* GuiaFinal.html:1114 */ .ivg-llF p{font-size:13.5px;color:var(--ivg-text)}
/* GuiaFinal.html:1115 */ @media (max-width:760px){.ivg-llF .ivg-it{grid-template-columns:40px 1fr;row-gap:2px;align-items:start}.ivg-llF .ivg-it > :nth-child(n+3){grid-column:2}.ivg-llF .ivg-it .ivg-circ-i{grid-row:1/4}}

/* ===== Estaciones (.wE con .recom) ===== */
/* GuiaFinal.html:1049 */ .ivg-recom{margin-top:16px;display:flex;align-items:center;gap:12px;padding:14px 16px;background:var(--ivg-tinte);border:1px solid rgba(200,169,110,.45);font-size:14px;color:var(--ivg-ink)}
/* GuiaFinal.html:1050 */ .ivg-recom svg{width:16px;height:16px;color:var(--ivg-gold);flex:none}
/* GuiaFinal.html:1053 */ .ivg-wE{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border:1px solid var(--ivg-hair);background:var(--ivg-card)}
/* GuiaFinal.html:1054 */ .ivg-est4{padding:0 0 16px;display:grid;gap:10px;align-content:start;border-right:1px solid var(--ivg-hair);position:relative}
/* GuiaFinal.html:1055 */ .ivg-est4:last-child{border-right:0}
/* GuiaFinal.html:1056 */ .ivg-est4 .ivg-franja{height:6px;background:var(--ivg-fc)}
/* GuiaFinal.html:1057 */ .ivg-est4 .ivg-in4{padding:12px 16px 0;display:grid;gap:10px}
/* GuiaFinal.html:1058 */ .ivg-est4 b{font:500 22px/1 var(--ivg-f-d);color:var(--ivg-ink)}
/* GuiaFinal.html:1059 */ .ivg-est4 .ivg-meses{font:600 10px/1.2 var(--ivg-f-b);letter-spacing:.14em;color:var(--ivg-muted);text-transform:uppercase}
/* GuiaFinal.html:1060 */ .ivg-est4 .ivg-temp{font:500 30px/1 var(--ivg-f-d);color:var(--ivg-fc)}
/* GuiaFinal.html:1061 */ .ivg-est4 ul{list-style:none;margin:0;padding:0;font-size:13px;color:var(--ivg-text);display:grid;gap:7px}
/* GuiaFinal.html:1062 */ .ivg-est4 li{padding-left:14px;position:relative}
/* GuiaFinal.html:1063 */ .ivg-est4 li::before{content:"";position:absolute;left:0;top:.6em;width:6px;height:1px;background:var(--ivg-fc)}
/* GuiaFinal.html:1064 */ .ivg-est4 .ivg-rb{font:700 9.5px/1 var(--ivg-f-b);letter-spacing:.14em;text-transform:uppercase;color:var(--ivg-label);display:flex;align-items:center;gap:6px}
/* GuiaFinal.html:1065 */ .ivg-est4 .ivg-rb svg{width:12px;height:12px;color:var(--ivg-gold)}
/* GuiaFinal.html:1066 */ @media (max-width:760px){.ivg-wE{grid-template-columns:1fr 1fr}.ivg-est4:nth-child(2){border-right:0}.ivg-est4:nth-child(-n+2){border-bottom:1px solid var(--ivg-hair)}}
/* GuiaFinal.html:1067 */ @media (max-width:420px){.ivg-wE{grid-template-columns:1fr}.ivg-est4{border-right:0;border-bottom:1px solid var(--ivg-hair)}}

/* ===== Tique (.ticket) ===== */
/* GuiaFinal.html:873 */ .ivg-ticket{background:#FFFEFA;border:1px solid var(--ivg-hair);padding:18px 18px 26px;position:relative;box-shadow:0 18px 30px -24px rgba(28,26,23,.5)}
/* GuiaFinal.html:874 */ .ivg-ticket::after{content:"";position:absolute;left:-1px;right:-1px;bottom:-8px;height:10px;background:radial-gradient(circle at 6px 0,transparent 6px,#FFFEFA 6.5px) 0 0/12px 10px repeat-x}
/* GuiaFinal.html:875 */ .ivg-ticket h4{font:500 18px/1.2 var(--ivg-f-d);margin:0 0 4px;color:var(--ivg-ink);text-align:center}
/* GuiaFinal.html:876 */ .ivg-ticket .ivg-fe{font:600 10px/1 var(--ivg-f-b);letter-spacing:.14em;text-transform:uppercase;color:var(--ivg-muted);text-align:center;margin-bottom:12px}
/* GuiaFinal.html:877 */ .ivg-ticket .ivg-ln{display:grid;gap:3px;padding:10px 0;border-top:1px dashed #D3C9B6}
/* GuiaFinal.html:878 */ .ivg-ticket .ivg-r{display:flex;align-items:baseline;gap:8px;font-size:14.5px;color:var(--ivg-ink)}
/* GuiaFinal.html:879 */ .ivg-ticket .ivg-r .ivg-pun{flex:1;border-bottom:1px dotted #BFB4A0;transform:translateY(-4px)}
/* GuiaFinal.html:880 */ .ivg-ticket .ivg-r b{font:500 20px/1 var(--ivg-f-d)}
/* GuiaFinal.html:881 */ .ivg-ticket small{font-size:12px;color:var(--ivg-muted)}
/* GuiaFinal.html:882 */ .ivg-ticket .ivg-tot{border-top:2px solid var(--ivg-ink);margin-top:4px;padding-top:12px}
/* GuiaFinal.html:1224 */ .ivg-ticket-w{max-width:440px}

/* ===== Ruta (.ruta3.ruta4, con el anillo de «Estás aquí») ===== */
/* GuiaFinal.html:964 */ .ivg-tramo{display:grid;justify-items:center;text-align:center;gap:6px;padding-top:calc(13% + 10px)}
/* GuiaFinal.html:965 */ .ivg-tramo .ivg-lin{width:100%;border-top:2px dashed var(--ivg-gold);position:relative;height:0;margin:14px 0}
/* GuiaFinal.html:966 */ .ivg-tramo .ivg-ic{width:34px;height:34px;border-radius:50%;background:var(--ivg-mar-t);display:grid;place-items:center;margin-top:-31px;position:relative;box-shadow:0 0 0 4px var(--ivg-paper)}
/* GuiaFinal.html:967 */ .ivg-tramo .ivg-ic svg{width:16px;height:16px;color:var(--ivg-mar)}
/* GuiaFinal.html:968 */ .ivg-tramo small{font-size:12px;color:var(--ivg-text);line-height:1.35;max-width:16ch}
/* GuiaFinal.html:969 */ .ivg-tramo small b{display:block;font:700 9.5px/1.4 var(--ivg-f-b);letter-spacing:.14em;text-transform:uppercase;color:var(--ivg-muted)}
/* GuiaFinal.html:970 */ @media (max-width:760px){
/* GuiaFinal.html:971 */   .ivg-ruta2{grid-template-columns:1fr;gap:0;padding-left:20px;position:relative}
/* GuiaFinal.html:972 */   .ivg-ruta2::before{content:"";position:absolute;left:19px;top:20px;bottom:40px;border-left:2px dashed var(--ivg-gold)}
/* GuiaFinal.html:973 */   .ivg-st{grid-template-columns:110px 1fr;column-gap:16px;padding:0 0 4px 22px}
/* GuiaFinal.html:974 */   .ivg-st .ivg-nb{left:-1px;top:-6px;width:34px;height:34px;font-size:15px;transform:translateX(-50%)}
/* GuiaFinal.html:975 */   .ivg-st .ivg-tx{align-content:center}
/* GuiaFinal.html:976 */   .ivg-st h3{font-size:20px}
/* GuiaFinal.html:977 */   .ivg-tramo{justify-items:start;text-align:left;padding:14px 0 18px 38px;grid-template-columns:auto 1fr;column-gap:10px;align-items:center}
/* GuiaFinal.html:978 */   .ivg-tramo .ivg-lin{display:none}
/* GuiaFinal.html:979 */   .ivg-tramo .ivg-ic{margin:0}
/* GuiaFinal.html:980 */ }
/* GuiaFinal.html:1118 */ .ivg-ruta3{display:grid;grid-template-columns:1fr 160px 1fr 160px 1fr;align-items:start}
/* GuiaFinal.html:1119 */ .ivg-ruta3 .ivg-st2{display:grid;justify-items:center;text-align:center;gap:10px;text-decoration:none;position:relative}
/* GuiaFinal.html:1120 */ .ivg-ruta3 .ivg-bola{width:150px;height:150px;border-radius:50%;overflow:hidden;box-shadow:0 0 0 6px var(--ivg-paper),0 0 0 7px var(--ivg-gold),0 20px 30px -18px rgba(28,26,23,.6);position:relative}
/* GuiaFinal.html:1121 */ .ivg-ruta3 .ivg-bola img{width:100%;height:100%;object-fit:cover}
/* GuiaFinal.html:1122 */ .ivg-ruta3 .ivg-aqui .ivg-bola{box-shadow:0 0 0 6px var(--ivg-paper),0 0 0 7px var(--ivg-hair)}
/* GuiaFinal.html:1123 */ .ivg-ruta3 .ivg-nb{position:absolute;top:2px;left:calc(50% - 82px);z-index:2;width:34px;height:34px;border-radius:50%;background:var(--ivg-ink);color:var(--ivg-gold);display:grid;place-items:center;font:500 15px/1 var(--ivg-f-d);box-shadow:0 0 0 3px var(--ivg-paper)}
/* GuiaFinal.html:1124 */ .ivg-ruta3 .ivg-aqui .ivg-nb{background:var(--ivg-paper);color:var(--ivg-label);box-shadow:0 0 0 1px var(--ivg-hair),0 0 0 3px var(--ivg-paper)}
/* GuiaFinal.html:1125 */ .ivg-ruta3 h3{font-size:calc(22px*var(--ivg-k))}
/* GuiaFinal.html:1126 */ .ivg-ruta3 p{font-size:13.5px;color:var(--ivg-text);max-width:28ch}
/* GuiaFinal.html:1127 */ .ivg-ruta3 .ivg-tramo{padding-top:62px}
/* GuiaFinal.html:1128 */ .ivg-ruta3 .ivg-m-mas{margin-top:2px}
/* GuiaFinal.html:1129 */ @media (max-width:760px){
/* GuiaFinal.html:1130 */   .ivg-ruta3{grid-template-columns:1fr;position:relative;padding-left:0}
/* GuiaFinal.html:1131 */   .ivg-ruta3::before{content:"";position:absolute;left:31px;top:34px;bottom:34px;border-left:2px dashed var(--ivg-gold)}
/* GuiaFinal.html:1132 */   .ivg-ruta3 .ivg-st2{grid-template-columns:64px 1fr;justify-items:start;text-align:left;column-gap:16px;align-items:center;padding:6px 0}
/* GuiaFinal.html:1133 */   .ivg-ruta3 .ivg-bola{width:64px;height:64px;box-shadow:0 0 0 4px var(--ivg-paper),0 0 0 5px var(--ivg-gold);grid-row:1/4}
/* GuiaFinal.html:1134 */   .ivg-ruta3 .ivg-aqui .ivg-bola{box-shadow:0 0 0 4px var(--ivg-paper),0 0 0 5px var(--ivg-hair)}
/* GuiaFinal.html:1135 */   .ivg-ruta3 .ivg-nb{display:none}
/* GuiaFinal.html:1136 */   .ivg-ruta3 p{display:none}
/* GuiaFinal.html:1137 */   .ivg-ruta3 h3{font-size:19px}
/* GuiaFinal.html:1138 */   .ivg-ruta3 .ivg-m-mas{font-size:10.5px}
/* GuiaFinal.html:1139 */   .ivg-ruta3 .ivg-tramo{padding:2px 0 2px 80px;display:flex;justify-items:start;text-align:left;gap:8px;align-items:center}
/* GuiaFinal.html:1140 */   .ivg-ruta3 .ivg-tramo .ivg-lin{display:none}
/* GuiaFinal.html:1141 */   .ivg-ruta3 .ivg-tramo .ivg-ic{width:26px;height:26px;margin:0;box-shadow:none}
/* GuiaFinal.html:1142 */   .ivg-ruta3 .ivg-tramo .ivg-ic svg{width:13px;height:13px}
/* GuiaFinal.html:1143 */   .ivg-ruta3 .ivg-tramo small{max-width:none;font-size:12px}
/* GuiaFinal.html:1144 */   .ivg-ruta3 .ivg-tramo small b{display:inline;margin-right:4px}
/* GuiaFinal.html:1145 */ }
/* GuiaFinal.html:1200 */ .ivg-ruta4 .ivg-tramo .ivg-chip{display:none;align-items:center;gap:6px;font:600 10.5px/1 var(--ivg-f-b);letter-spacing:.1em;text-transform:uppercase;color:var(--ivg-mar);background:var(--ivg-mar-t);padding:6px 9px}
/* GuiaFinal.html:1203 */ @media (max-width:760px){
/* GuiaFinal.html:1204 */   .ivg-ruta4::before{top:40px;bottom:40px}
/* GuiaFinal.html:1205 */   .ivg-ruta4 .ivg-st2{padding:12px 0;row-gap:4px}
/* GuiaFinal.html:1206 */   .ivg-ruta4 .ivg-st2 .ivg-m-lbl{margin-bottom:2px}
/* GuiaFinal.html:1207 */   .ivg-ruta4 .ivg-st2 h3{margin-bottom:6px}
/* GuiaFinal.html:1208 */   .ivg-ruta4 .ivg-tramo{padding:6px 0 6px 80px}
/* GuiaFinal.html:1209 */   .ivg-ruta4 .ivg-tramo small{display:none}
/* GuiaFinal.html:1210 */   .ivg-ruta4 .ivg-tramo .ivg-chip{display:inline-flex}
/* GuiaFinal.html:1211 */   .ivg-ruta4 .ivg-tramo.ivg-vacio{display:block;height:14px;padding:0}
/* GuiaFinal.html:1212 */   .ivg-ruta4 .ivg-tramo.ivg-vacio > *{display:none}
/* GuiaFinal.html:1213 */ }
/* GuiaFinal.html:1214 */ 
/* GuiaFinal.html:1215 */ @media (max-width:760px){.ivg-ruta4 .ivg-tramo .ivg-ic{display:none!important}}
/* GuiaFinal.html:1226 */ .ivg-ruta3 .ivg-aqui .ivg-bola{overflow:visible}
/* GuiaFinal.html:1227 */ .ivg-ruta3 .ivg-aqui .ivg-bola img{border-radius:50%}
/* GuiaFinal.html:1228 */ .ivg-ruta3 .ivg-aqui .ivg-bola::after{content:"";position:absolute;inset:-6px;border-radius:50%;border:2px solid var(--ivg-gold);opacity:0}
/* GuiaFinal.html:1229 */ .ivg-ruta3 .ivg-aqui .ivg-m-lbl::before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--ivg-gold);margin-right:7px;vertical-align:1px}
/* GuiaFinal.html:1230 */ @media (prefers-reduced-motion:no-preference){
/* GuiaFinal.html:1231 */   @keyframes ivg-late{0%{transform:scale(1);opacity:.7}70%{transform:scale(1.18);opacity:0}100%{opacity:0}}
/* GuiaFinal.html:1233 */   .ivg-ruta3 .ivg-aqui .ivg-bola::after{animation:ivg-late 2.2s cubic-bezier(.2,.6,.2,1) infinite}
/* GuiaFinal.html:1235 */ }
/* GuiaFinal.html:1236 */ @media (prefers-reduced-motion:reduce){.ivg-ruta3 .ivg-aqui .ivg-bola::after{opacity:.6}}
/* GuiaFinal.html:1237 */ .ivg-ruta3 .ivg-aqui .ivg-bola{box-shadow:0 0 0 6px var(--ivg-paper),0 0 0 7px var(--ivg-gold)!important}
/* GuiaFinal.html:1238 */ @media (max-width:760px){.ivg-ruta3 .ivg-aqui .ivg-bola{box-shadow:0 0 0 4px var(--ivg-paper),0 0 0 5px var(--ivg-gold)!important}.ivg-ruta3 .ivg-aqui .ivg-bola::after{inset:-5px}}

/* ===== Mapa con lista (.mapa1 .mp .pin2 .lista-m) ===== */
/* GuiaFinal.html:1153 */ .ivg-mp{position:relative}
/* GuiaFinal.html:1154 */ .ivg-mp svg.ivg-costa2{display:block;width:100%;height:auto}
/* GuiaFinal.html:1155 */ .ivg-mp .ivg-pin2{position:absolute;transform:translate(-50%,-50%);display:flex;align-items:center;gap:6px;background:none;border:0;padding:0;cursor:pointer}
/* GuiaFinal.html:1156 */ .ivg-mp .ivg-pin2 .ivg-pt{width:26px;height:26px;border-radius:50%;background:var(--ivg-terra);color:#fff;display:grid;place-items:center;font:500 12px/1 var(--ivg-f-d);box-shadow:0 0 0 3px #fff,0 4px 10px rgba(0,0,0,.25);transition:transform .25s}
/* GuiaFinal.html:1157 */ .ivg-mp .ivg-pin2 .ivg-lbl{font:600 11px/1 var(--ivg-f-b);letter-spacing:.06em;color:var(--ivg-ink);background:rgba(255,254,250,.94);padding:5px 7px;border:1px solid var(--ivg-hair);white-space:nowrap}
/* GuiaFinal.html:1158 */ .ivg-mp .ivg-pin2.ivg-on .ivg-pt{background:var(--ivg-ink);color:var(--ivg-gold);transform:scale(1.15);box-shadow:0 0 0 3px #fff,0 0 0 5px var(--ivg-gold)}
/* GuiaFinal.html:1159 */ .ivg-mp .ivg-pin2.ivg-izq{flex-direction:row-reverse}
/* GuiaFinal.html:1160 */ .ivg-mapa1{display:grid;grid-template-columns:1.5fr 1fr;gap:26px;align-items:start}
/* GuiaFinal.html:1161 */ .ivg-mapa1 .ivg-marco-m{border:1px solid var(--ivg-hair);padding:8px;background:var(--ivg-card);box-shadow:0 22px 40px -32px rgba(28,26,23,.5)}
/* GuiaFinal.html:1162 */ .ivg-mapa1 .ivg-lista-m{display:grid}
/* GuiaFinal.html:1163 */ .ivg-mapa1 .ivg-lista-m a{display:grid;grid-template-columns:30px 72px 1fr;gap:12px;align-items:center;padding:10px 0;border-bottom:1px solid var(--ivg-hair);text-decoration:none;cursor:pointer}
/* GuiaFinal.html:1164 */ .ivg-mapa1 .ivg-lista-m .ivg-nn{width:26px;height:26px;border-radius:50%;background:var(--ivg-terra);color:#fff;display:grid;place-items:center;font:500 12px/1 var(--ivg-f-d)}
/* GuiaFinal.html:1165 */ .ivg-mapa1 .ivg-lista-m a.ivg-on .ivg-nn{background:var(--ivg-ink);color:var(--ivg-gold)}
/* GuiaFinal.html:1166 */ .ivg-mapa1 .ivg-lista-m a.ivg-on{background:linear-gradient(90deg,var(--ivg-tinte),transparent)}
/* GuiaFinal.html:1167 */ .ivg-mapa1 .ivg-lista-m .ivg-mat{padding:3px;box-shadow:none}.ivg-mapa1 .ivg-lista-m .ivg-foto{aspect-ratio:4/3}
/* GuiaFinal.html:1168 */ .ivg-mapa1 .ivg-lista-m b{font:500 16px/1.25 var(--ivg-f-d);color:var(--ivg-ink);display:block}
/* GuiaFinal.html:1169 */ .ivg-mapa1 .ivg-lista-m small{font-size:11px;color:var(--ivg-label);letter-spacing:.1em;text-transform:uppercase;font-weight:600}
/* GuiaFinal.html:1170 */ @media (max-width:760px){.ivg-mapa1{grid-template-columns:1fr}}
/* GuiaFinal.html:1198 */ @media (max-width:600px){.ivg-mp .ivg-pin2 .ivg-lbl{display:none}.ivg-mp .ivg-pin2 .ivg-pt{width:22px;height:22px;font-size:11px}}

/* ===== Temas (.temas2) ===== */
/* GuiaFinal.html:1191 */ .ivg-temas2{display:grid;grid-template-columns:repeat(4,1fr);gap:0 20px;margin-top:26px}
/* GuiaFinal.html:1192 */ .ivg-temas2 div{display:grid;align-content:start}
/* GuiaFinal.html:1193 */ .ivg-temas2 h4{display:flex;align-items:center;gap:8px;font:700 10.5px/1 var(--ivg-f-b);letter-spacing:.14em;text-transform:uppercase;color:var(--ivg-label);margin:0 0 6px;padding-bottom:8px;border-bottom:1px solid var(--ivg-ink)}
/* GuiaFinal.html:1194 */ .ivg-temas2 h4 svg{width:14px;height:14px;color:var(--ivg-rojo)}
/* GuiaFinal.html:1195 */ .ivg-temas2 a{padding:9px 0;border-bottom:1px solid var(--ivg-hair);font-size:14px;color:var(--ivg-ink);text-decoration:none}
/* GuiaFinal.html:1196 */ @media (max-width:760px){.ivg-temas2{grid-template-columns:1fr 1fr;gap:16px}}

/* ===== Barra de secciones con el botón encima (.secbar y .btB) ===== */
/* GuiaFinal.html:420 */ .ivg-btB{width:52px;height:52px;border-radius:50%;background:var(--ivg-card);display:grid;place-items:center;position:relative;border:0;box-shadow:0 10px 24px -12px rgba(28,26,23,.5);cursor:pointer;color:var(--ivg-ink)}
/* GuiaFinal.html:421 */ .ivg-btB svg.ivg-anillo{position:absolute;inset:0;width:52px;height:52px;transform:rotate(-90deg)}
/* GuiaFinal.html:721 */ .ivg-secbar{position:absolute;left:10px;right:10px;bottom:14px;background:var(--ivg-ink);color:#FAF7F0;display:flex;align-items:center;gap:12px;padding:12px 14px;box-shadow:0 12px 30px -12px rgba(0,0,0,.6)}
/* GuiaFinal.html:722 */ .ivg-secbar small{display:block;font:700 9.5px/1 var(--ivg-f-b);letter-spacing:.16em;color:var(--ivg-gold);text-transform:uppercase;margin-bottom:4px}
/* GuiaFinal.html:723 */ .ivg-secbar b{font:500 19px/1 var(--ivg-f-d)}
/* GuiaFinal.html:724 */ .ivg-secbar .ivg-sec{margin-left:auto;font:700 10.5px/1 var(--ivg-f-b);letter-spacing:.14em;text-transform:uppercase}
/* GuiaFinal.html:725 */ .ivg-secbar .ivg-up{width:34px;height:34px;border:1px solid rgba(200,169,110,.6);display:grid;place-items:center;color:var(--ivg-gold);flex:none}
/* GuiaFinal.html:726 */ .ivg-secbar .ivg-up svg{width:15px;height:15px}
/* GuiaFinal.html:727 */ .ivg-btB.ivg-flota{position:absolute;right:14px}

/* ===== Postales con marco dorado (.g2C .mc de PortadaFinal) ===== */
/* PortadaFinal.html:61 */ .ivg-flag{width:calc(30px*var(--ivg-k));height:calc(30px*var(--ivg-k));border-radius:50%;overflow:hidden;flex:none;box-shadow:0 0 0 1px var(--ivg-hair)}
/* PortadaFinal.html:62 */ .ivg-flag img{width:100%;height:100%;object-fit:cover}
/* PortadaFinal.html:63 */ .ivg-foto{position:relative;overflow:hidden;background:#cfc6b4}
/* PortadaFinal.html:64 */ .ivg-foto img{width:100%;height:100%;object-fit:cover}
/* PortadaFinal.html:456 */ .ivg-foto.ivg-fino::before{content:"";position:absolute;inset:7px;border:1px solid rgba(250,247,240,.6);z-index:1;pointer-events:none}
/* PortadaFinal.html:458 */ .ivg-desp{position:relative;isolation:isolate}
/* PortadaFinal.html:459 */ .ivg-desp::before{content:"";position:absolute;inset:14px -14px -14px 14px;background:var(--ivg-tinte);border:1px solid var(--ivg-gold);z-index:-1}
/* PortadaFinal.html:460 */ .ivg-banda .ivg-desp::before{background:var(--ivg-paper)}
/* PortadaFinal.html:518 */ .ivg-g2C{display:grid;grid-template-columns:repeat(4,1fr);gap:40px 34px;padding-right:14px}
/* PortadaFinal.html:519 */ .ivg-mc{text-decoration:none;display:grid;gap:22px}
/* PortadaFinal.html:520 */ .ivg-mc .ivg-foto{aspect-ratio:4/5}
/* PortadaFinal.html:521 */ .ivg-mc .ivg-flag{position:absolute;left:-10px;bottom:-12px;width:40px;height:40px;z-index:2;box-shadow:0 0 0 3px var(--ivg-paper),0 0 0 4px var(--ivg-gold)}
/* PortadaFinal.html:522 */ .ivg-mc .ivg-tx{display:grid;gap:5px;padding-left:4px}
/* PortadaFinal.html:523 */ .ivg-mc h3{font-size:calc(22px*var(--ivg-k))}
/* PortadaFinal.html:524 */ .ivg-mc .ivg-meta{font-size:calc(12.5px*var(--ivg-k));color:var(--ivg-muted)}
/* PortadaFinal.html:525 */ @media (max-width:760px){.ivg-g2C{grid-auto-flow:column;grid-template-columns:none;grid-auto-columns:68%;overflow-x:auto;scroll-snap-type:x mandatory;padding:6px 30px 20px 12px;margin-right:-16px;gap:30px}.ivg-mc{scroll-snap-align:start}}

/* ===== Efectos de PortadaEfectos.html: trazo del separador, aparición al bajar y hover de las postales (sin el ensanche de letra de .m-mas, PortadaEfectos.html:788 y 790: animaba letter-spacing, que no se puede hacer con transform ni opacity) ===== */
/* PortadaEfectos.html:753 */ @media (prefers-reduced-motion:no-preference){
/* PortadaEfectos.html:766 */ /* 3 separador */
/* PortadaEfectos.html:767 */ body.ivg-on .ivg-sh .ivg-sep i:last-child{transform-origin:left;transition:transform 1s cubic-bezier(.2,.6,.2,1) .1s}
/* PortadaEfectos.html:768 */ body.ivg-on .ivg-sh .ivg-sep svg{transition:transform .9s cubic-bezier(.2,.6,.2,1),opacity .6s}
/* PortadaEfectos.html:769 */ body.ivg-on .ivg-esp .ivg-sh .ivg-sep i:last-child{transform:scaleX(0)}
/* PortadaEfectos.html:770 */ body.ivg-on .ivg-esp .ivg-sh .ivg-sep svg{transform:rotate(-90deg) scale(.6);opacity:0}
/* PortadaEfectos.html:771 */ /* 4 aparición */
/* PortadaEfectos.html:772 */ body.ivg-on .ivg-ap{transition:opacity 1s cubic-bezier(.2,.6,.2,1),transform 1s cubic-bezier(.2,.6,.2,1)}
/* PortadaEfectos.html:773 */ body.ivg-on .ivg-esp .ivg-ap{opacity:0;transform:translateY(14px)}
/* PortadaEfectos.html:774 */ }
/* PortadaEfectos.html:775 */ /* 5 hover (solo con ratón) */
/* PortadaEfectos.html:776 */ @media (hover:hover) and (prefers-reduced-motion:no-preference){
/* PortadaEfectos.html:777 */ body.ivg-on .ivg-mc .ivg-desp::before{transition:transform .5s cubic-bezier(.2,.6,.2,1)}
/* PortadaEfectos.html:778 */ body.ivg-on .ivg-mc .ivg-foto img,body.ivg-on .ivg-ficha .ivg-foto img,body.ivg-on .ivg-postal .ivg-foto img,body.ivg-on .ivg-post .ivg-foto img{transition:transform 1.2s cubic-bezier(.2,.6,.2,1)}
/* PortadaEfectos.html:779 */ body.ivg-on .ivg-mc .ivg-flag{transition:transform .5s cubic-bezier(.2,.6,.2,1)}
/* PortadaEfectos.html:781 */ body.ivg-on .ivg-mc:hover .ivg-desp::before{transform:translate(6px,6px)}
/* PortadaEfectos.html:782 */ body.ivg-on :is(.ivg-mc,.ivg-ficha,.ivg-postal,.ivg-post):hover .ivg-foto img{transform:scale(1.045)}
/* PortadaEfectos.html:783 */ body.ivg-on .ivg-mc:hover .ivg-flag{transform:rotate(-8deg) scale(1.06)}
/* PortadaEfectos.html:809 */ }

/* ===== Separador de apartados B3 (SeparadorSecciones.html, petición del 12/11/2026 (5)): línea dorada que se desvanece, número grande detrás del título. Las clases .B y .B3 van en el body (como en el prototipo, en el contenedor de la guía) y .cab, .gran y .titS en la cabecera .sh numerada ===== */
/* SeparadorSecciones.html:47 */ .ivg-B .ivg-cab{padding:44px 0 26px;margin-top:10px;border-top:2px solid var(--ivg-ink);position:relative}
/* SeparadorSecciones.html:48 */ .ivg-B .ivg-gran{font:400 clamp(64px,18cqw,110px)/.8 Fraunces,serif;color:var(--ivg-gold);opacity:.55;position:absolute;right:0;top:30px}
/* SeparadorSecciones.html:49 */ .ivg-B .ivg-titS{position:relative}
/* SeparadorSecciones.html:52 */ .ivg-B3 .ivg-cab{border-top:0}.ivg-B3 .ivg-cab::before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:linear-gradient(90deg,var(--ivg-gold),rgba(200,169,110,0))}

/* ===== Fuera del prototipo (cada bloque, con su motivo; van en el informe) ===== */
/* mapa: Latido del punto del artículo en el mapa: lo pide Nacho («en cada artículo, el punto de su lugar sale marcado y latiendo») y el prototipo solo lo tiene en la ruta; se usa la misma animación «late» de GuiaFinal.html:1231 sobre .pin2.on .pt. */
@media (prefers-reduced-motion:no-preference){
  .ivg-mp .ivg-pin2.ivg-on .ivg-pt{position:relative}
  .ivg-mp .ivg-pin2.ivg-on .ivg-pt::after{content:"";position:absolute;inset:-6px;border-radius:50%;border:2px solid var(--ivg-gold);opacity:0;animation:ivg-late 2.2s cubic-bezier(.2,.6,.2,1) infinite}
}
/* secbar: En el prototipo la barra está dentro de una maqueta (position:absolute en .demo-bar); en la web va fija abajo de la pantalla, solo en el móvil, con los mismos márgenes (10 px y 14 px). */
.ivg-secbar{position:fixed;z-index:59;left:10px;right:10px;bottom:calc(14px + env(safe-area-inset-bottom,0px))}
@media (min-width:761px){.ivg-secbar{display:none}}
/* secbar: La barra es un <button> (abre la hoja del índice de siempre): se le quitan el borde, la alineación y la letra que el navegador pone a los botones. */
button.ivg-secbar{border:0;text-align:left;cursor:pointer;font:inherit;width:auto}
/* secbar: El botón «volver arriba» va encima de la barra, como en el prototipo (bottom:86px en la maqueta del móvil), mientras la barra se ve. */
@media (max-width:760px){body.ivg-on:has(.ivg-secbar:not(.ivp-oculto)) .ivpt-arriba{bottom:calc(86px + env(safe-area-inset-bottom,0px))}}
/* base: Las piezas de la web van dentro del contenedor de siempre (.iv-contenido), que da margen e interlineado a párrafos, títulos y listas, viñeta cuadrada a los <li> y border-radius:0 !important a las imágenes: dentro de los componentes se devuelven los valores del prototipo (la sangría de 22 px de las listas y el margen de 40 px tras cada <details> de los Ajustes 5, que la carta no lleva; interlineado 1,55 del body de GuiaFinal.html:18; .m p y .m h1–h4 sin margen, GuiaFinal.html:59 y 674; listas sin sangría ni viñeta y la raya de .est4 li::before, GuiaFinal.html:1061–1063; la foto redonda de «Estás aquí», GuiaFinal.html:1227). */
.ivg-m{line-height:1.55}
.iv-contenido .ivg-m ul,body.ivg-on .iv-contenido .ivg-m ul{margin:0;padding:0}
body.ivg-on .iv-contenido .ivg-carta > details + details{margin-top:0}
.iv-contenido .ivg-m li{margin:0}
.iv-contenido .ivg-m ul > li::before{content:none}
.iv-contenido .ivg-m .ivg-est4 li::before{content:"";position:absolute;left:0;top:.6em;width:6px;height:1px;background:var(--ivg-fc)}
.iv-contenido .ivg-ruta3 .ivg-aqui .ivg-bola img{border-radius:50% !important}
.iv-contenido .ivg-m p,.iv-contenido .ivg-m h2,.iv-contenido .ivg-m h3,.iv-contenido .ivg-m h4{margin:0}
.iv-contenido .ivg-sh h2{font-size:calc(32px*var(--ivg-k));line-height:1.1}
@media (max-width:600px){.iv-contenido .ivg-sh h2{font-size:calc(25px*var(--ivg-k))}}
/* guia: Columna de la guía: en el prototipo, .guia .m-in deja el contenido en 1100 px con un margen de clamp(16px,4cqi,56px) (GuiaFinal.html:1220–1221). En la web el cuerpo de la guía (.ivp-cuerpo) y su índice van sueltos dentro de la página: se les da ese mismo ancho desde 761 px (en el móvil el cuerpo ya coincide); el índice va fuera del cuerpo, así que lleva ese ancho en todos los anchos (a 375 y 390 px, 16 px a cada lado, como .guia .m-in; corregido el 12/11/2026 (5): en el móvil llegaba al borde), y al índice, en todos los anchos, el relleno de arriba de .guia .m-in (44px*k, GuiaFinal.html:1218), que lo separa de la línea del autor. */
@media (min-width:761px){
  .ivg-on .ivp-cuerpo.ivg-guia{max-width:none;padding-left:max(clamp(16px,4vw,56px),calc((100% - 1100px)/2));padding-right:max(clamp(16px,4vw,56px),calc((100% - 1100px)/2))}
  .ivg-on .ivp-cuerpo.ivg-guia .ivp-contenido{max-width:none;margin:0}
}
.ivg-on .ivg-indice{box-sizing:border-box;width:min(1100px,calc(100% - 2*clamp(16px,4vw,56px)));margin-left:auto;margin-right:auto}
body.ivg-on .ivg-indice{margin-top:calc(44px*var(--ivg-k))}
/* consejo: Caja «Nuestro consejo» (sin prototipo, bloques.css:435): en el móvil se salía 18 px a cada lado para llegar al borde con el margen antiguo de 20 px; con la escala compacta quedaba a 2 px del borde. Con el diseño nuevo, todo bloque respeta los 16 px del móvil (petición del 12/11/2026 (5)), así que va sin margen lateral. */
@media (max-width:899px){body.ivg-on .ivr-consejo-aj{margin-left:0;margin-right:0}}
/* separador: Separador B3: en el prototipo solo el título va por encima del número (.B .titS). Con un antetítulo o una entradilla largos, el número (posicionado) los taparía; la estrella, el antetítulo y la entradilla van también por encima (position:relative), para que el número nunca tape texto (petición: «el número no debe tapar ni empujar el texto»). En el móvil, sin cambio visible. */
.ivg-B .ivg-cab > :not(.ivg-gran){position:relative}
/* tabsG: Pestañas de zonas de «Dónde comerlo» (.tabsG, GuiaFinal.html:735–736): el prototipo tiene tres zonas cortas (Amalfi, Positano, Ravello). Venecia tiene cuatro y más largas, y a 375 px «San Polo y San Marco» bajaba en cuatro líneas y «Burano» se cortaba a la derecha (revisión con el interruptor encendido, 12/11/2026 (5)). Cada pestaña va en una línea y, si no caben, la fila se desliza, como los demás carruseles del prototipo; si caben, se ve igual. */
body.ivg-on .ivg-tabsG{overflow-x:auto;scrollbar-width:none}body.ivg-on .ivg-tabsG::-webkit-scrollbar{display:none}
body.ivg-on .ivg-tabsG button{flex:none;white-space:nowrap}
/* m-mas: Enlace a otra pieza dentro de una sección (.m-mas, PortadaFinal.html:60): el prototipo lo usa para rótulos cortos y lo deja en una línea (nowrap). En la web lleva el título de la pieza, y «Cómo ir del aeropuerto de Zúrich a Interlaken, y desde Ginebra» se cortaba a la derecha en el móvil (revisión del 12/11/2026 (5)). Dentro del párrafo .ivr-ver-pieza puede pasar a otra línea, con interlineado 2 para que la raya dorada de cada línea no toque la siguiente; en una línea se ve igual. */
body.ivg-on .ivr-ver-pieza .ivg-m-mas{white-space:normal;line-height:2}
/* m-mas: El prototipo quita el subrayado a .m-mas (text-decoration:none, PortadaFinal.html:60) y pone solo la raya dorada; dentro del contenido de siempre (.iv-contenido a) el subrayado de los enlaces de texto podía más y salían dos rayas (12/11/2026 (5)). */
.iv-contenido a.ivg-m-mas{text-decoration:none}
/* indice: Guía breve, dónde dormir y práctico en el ordenador (desde 1100 px) llevan el índice lateral fijo de la web (sin prototipo, ver SIN-PROTOTIPO.md); la web ya esconde ahí el índice de arriba (bloques.css:571) y se hace lo mismo con el índice nuevo, para que no salga dos veces. */
@media (min-width:1100px){body.ivg-on .iv-pieza:is(.iv-pieza-breve,.iv-pieza-dormir,.iv-pieza-practico):has(.ivp-cuerpo.con-lateral) .ivg-indice{display:none}}
/* mc: Rejilla de postales con un número de tarjetas que no llena las filas de 4 del prototipo (.g2C, PortadaFinal.html:518): la regla de la web es que nunca quede un hueco al final, así que la plantilla pone el número de columnas (5 en una fila; 6 en 3 y 3). En el móvil, el carrusel del prototipo. */
@media (min-width:761px){.ivg-g2C[style*="--ivg-cols"]{grid-template-columns:repeat(var(--ivg-cols),1fr)}}
/* sh: Lo que va bajo la cabecera de sección: en el prototipo, el componente que sigue a .sh lleva style="margin-top:22px" (GuiaFinal.html:1298, .llF, .wE y .ticket-w). En la web el contenido de la sección va en su propio contenedor (.ivr-seccion-cuerpo), al que se le da ese margen. */
body.ivg-on .iv-contenido .ivg-sh + .ivr-seccion-cuerpo{margin-top:22px}
/* base: Texto de la web después de un componente nuevo (una nota, un párrafo): el prototipo no tiene texto suelto tras los componentes; se le da el espacio entre bloques de la web (escala de 40 px en el ordenador y 32 px en el móvil de los Ajustes 5, variable --aj5-esp), el mismo que ya lleva tras sus cajas. */
body.ivg-on .iv-contenido .ivg-m + :not([class*="ivg-"]){margin-top:var(--aj5-esp,40px)}
/* escala: Escala compacta en toda la web (petición del 9/11: «La escala compacta pasa a toda la web»): los componentes nuevos ya la llevan (--k:.9, GuiaFinal.html:450); los bloques de siempre que quedan sin prototipo (fichas, zonas, calendario, preguntas, párrafos, artículos antiguos) están hechos en px fijos, así que se reducen en la misma proporción con zoom:var(--ivg-k) (letra, márgenes y rellenos a la vez, como --k en el prototipo), sin tocar su ancho. */
body.ivg-on .iv-contenido > :not([class*="ivg-"]):not(.ivr-seccion),body.ivg-on .iv-contenido .ivr-seccion-cuerpo > :not([class*="ivg-"]){zoom:var(--ivg-k)}
/* wE: Nota de fuentes bajo .recom (revisión del 12/11/2026): la franja de 12 meses de la web ya no sale con las estaciones, y su leyenda (estación meteorológica, normal y temporadas) pasa a una nota pequeña en texto corrido con la clase de las notas de fuente de la web (.ivr-franja-nota: 12,5 px, gris). El prototipo no tiene nota: se le da la separación de esas notas (14 px). */
body.ivg-on .iv-contenido .ivg-m .ivg-nota-meses{margin-top:14px;font-size:12.5px;line-height:1.5;color:var(--ivg-muted)}
/* movimiento: Regla de la petición del 9/11 (y del 12/11): las animaciones, solo con transform y opacity. «Estás aquí» (GuiaFinal.html:1232 y 1234) animaba box-shadow en el punto: se cambia por un anillo ::after detrás del punto, del mismo tamaño y color (rgba(200,169,110,.6)), que crece de 7 a 17 px (los 5 px de sombra del prototipo) y se desvanece, con el mismo ritmo (2,2 s, ease-in-out, ida y vuelta). El punto (::before, GuiaFinal.html:1229) queda igual; con reducir movimiento, el anillo no se ve, como en el prototipo. */
.ivg-ruta3 .ivg-aqui .ivg-m-lbl{position:relative;z-index:0}
.ivg-ruta3 .ivg-aqui .ivg-m-lbl::after{content:"";position:absolute;left:0;top:2.5px;width:7px;height:7px;border-radius:50%;background:rgba(200,169,110,.6);z-index:-1;opacity:0;pointer-events:none}
@media (prefers-reduced-motion:no-preference){
  @keyframes ivg-anillo{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(2.4286);opacity:0}}
  .ivg-ruta3 .ivg-aqui .ivg-m-lbl::after{animation:ivg-anillo 2.2s ease-in-out infinite}
}
/* movimiento: Barra dorada de deslizar (GuiaFinal.html:1242): animaba width; ahora la barra mide el 100 % y se encoge con transform:scaleX desde la izquierda, con la misma transición (.12s linear). Se ve igual: el script pone la escala en lugar del ancho. */
.ivg-progreso i{position:absolute;left:0;top:0;bottom:0;background:var(--ivg-gold);width:100%;transform:scaleX(0);transform-origin:0 50%;transition:transform .12s linear}
/* movimiento: Subrayado de los títulos de las postales y fichas al pasar el ratón (PortadaEfectos.html:780 y 784): animaba background-size; ahora es una raya ::after del mismo color y grosor (1,5 px) que crece con transform:scaleX, mismo tiempo (.5s). Se ve igual: el título va dentro de una rejilla, así que el navegador lo pinta como bloque y, tanto en el prototipo como aquí, la raya va bajo la última línea y a todo el ancho del título (comprobado en la postal de Venecia de la página de Italia). En la web solo hay postales .mc; .ficha y .postal se quedan en el selector como en el prototipo. */
@media (hover:hover) and (prefers-reduced-motion:no-preference){
  body.ivg-on .ivg-mc h3,body.ivg-on .ivg-ficha h3,body.ivg-on .ivg-postal h3{display:inline-block;position:relative;padding-bottom:2px}
  body.ivg-on .ivg-mc h3::after,body.ivg-on .ivg-ficha h3::after,body.ivg-on .ivg-postal h3::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1.5px;background:#C8A96E;transform:scaleX(0);transform-origin:0 50%;transition:transform .5s}
  body.ivg-on :is(.ivg-mc,.ivg-ficha,.ivg-postal):hover h3::after{transform:scaleX(1)}
}
