/* GUILÁ Group · Componentes comunes (antes dentro de los códigos personalizados de Elementor). Fase 2, 6 oct. 2026. */

/* Indicador Descubre (código de Elementor 310) */

body{--gg-cue-accent:var(--gg-verde)}
body.page-id-195{--gg-cue-accent:var(--gg-apex)}  /* APEX */
body.page-id-203{--gg-cue-accent:var(--gg-verde)}  /* GMS */
body.page-id-290{--gg-cue-accent:var(--gg-verde)}  /* LGP */
body.page-id-302{--gg-cue-accent:var(--gg-minelta)}  /* MINELTA */

body.gg-cue-on .gga .hero .heroin::after{content:none!important;display:none!important}

.gg-cue{position:absolute;left:50%;bottom:clamp(36px,6vh,64px);transform:translateX(-50%);z-index:40;
  display:flex;flex-direction:column;align-items:center;color:#fff;text-decoration:none!important;
  font-family:Inter,system-ui,sans-serif;-webkit-tap-highlight-color:transparent;
  transition:opacity .6s ease,transform .6s cubic-bezier(.2,.8,.2,1)}
.gg-cue.is-away{opacity:0;transform:translate(-50%,16px);pointer-events:none}
.gg-cue__mask{display:block;overflow:hidden;text-align:center}
.gg-cue__mask>span{display:inline-block;transform:translateY(115%);animation:gg-rise 1s cubic-bezier(.2,.8,.2,1) forwards}
.gg-cue__kicker>span{font-size:11px;font-weight:500;letter-spacing:.38em;text-transform:uppercase;opacity:.6;padding-left:.38em;animation-delay:.5s}
.gg-cue__name{margin-top:8px}
.gg-cue__name>span{font-size:19px;font-weight:700;letter-spacing:.24em;text-transform:uppercase;padding-left:.24em;
  animation-delay:.65s;transition:letter-spacing .5s cubic-bezier(.2,.8,.2,1)}

.gg-cue__track{position:relative;width:1px;height:84px;margin-top:20px;background:rgba(255,255,255,.22);overflow:hidden;
  transform:scaleY(0);transform-origin:top;animation:gg-draw 1s cubic-bezier(.7,0,.2,1) 1.1s forwards}
.gg-cue__track::after{content:"";position:absolute;left:0;top:-45%;width:2px;margin-left:-.5px;height:45%;
  background:linear-gradient(to bottom,rgba(255,255,255,0),var(--gg-cue-accent));
  box-shadow:0 0 8px var(--gg-cue-accent);animation:gg-stroke 2.4s cubic-bezier(.65,0,.35,1) 2.1s infinite}

.gg-cue__ring{position:relative;width:42px;height:42px;border-radius:50%;border:1px solid rgba(255,255,255,.45);
  display:grid;place-items:center;transform:scale(0);animation:gg-pop .6s cubic-bezier(.2,.8,.2,1.4) 2s forwards;
  transition:border-color .4s ease,background .4s ease}
.gg-cue__ring::before{content:"";position:absolute;inset:-1px;border-radius:50%;border:1px solid var(--gg-cue-accent);
  opacity:0;animation:gg-pulse 2.4s ease-out 2.1s infinite}
.gg-cue__ring i{width:6px;height:6px;border-radius:50%;background:var(--gg-cue-accent);box-shadow:0 0 10px var(--gg-cue-accent);
  transition:transform .4s ease}

.gg-cue:hover .gg-cue__name>span,.gg-cue:focus-visible .gg-cue__name>span{letter-spacing:.3em}
.gg-cue:hover .gg-cue__ring,.gg-cue:focus-visible .gg-cue__ring{border-color:var(--gg-cue-accent);background:rgba(255,255,255,.06)}
.gg-cue:hover .gg-cue__ring i,.gg-cue:focus-visible .gg-cue__ring i{transform:scale(1.6)}
.gg-cue:focus-visible{outline:none}
.gg-cue:focus-visible .gg-cue__ring{outline:1px solid var(--gg-cue-accent);outline-offset:6px}

@keyframes gg-rise{to{transform:translateY(0)}}
@keyframes gg-draw{to{transform:scaleY(1)}}
@keyframes gg-pop{to{transform:scale(1)}}
@keyframes gg-stroke{0%{top:-45%}55%{top:100%}100%{top:100%}}
@keyframes gg-pulse{0%,50%{opacity:0;transform:scale(1)}56%{opacity:.9;transform:scale(1)}100%{opacity:0;transform:scale(2.1)}}

@media (max-width:600px){
  .gg-cue{bottom:28px}
  .gg-cue__name>span{font-size:15px}
  .gg-cue__track{height:52px;margin-top:14px}
  .gg-cue__ring{width:34px;height:34px}
}
@media (prefers-reduced-motion:reduce){
  .gg-cue__mask>span,.gg-cue__track,.gg-cue__ring{animation:none;transform:none}
  .gg-cue__track::after{animation:none;top:55%}
  .gg-cue__ring::before{animation:none}
}


/* WhatsApp recambios (código de Elementor 316) */

a.gg-wa{display:inline-flex!important;align-items:center;gap:10px;text-decoration:none!important}
a.gg-wa svg{width:17px;height:17px;flex:none;color:#25D366}
a.gg-wa.gg-wa-btn{background:transparent!important;border:1px solid currentColor!important;box-shadow:none!important}
a.gg-wa.gg-wa-btn.on-dark{color:#fff!important;border-color:rgba(255,255,255,.55)!important}
a.gg-wa.gg-wa-btn.on-light{color:var(--gg-azul)!important;border-color:var(--gg-azul)!important}
.gg-wa-row{display:flex;flex-wrap:wrap;gap:10px;align-items:center}


/* Menú con botones y móvil (código de Elementor 345) */

.gg-navwrap{display:flex!important;align-items:center!important;gap:6px!important;flex-wrap:nowrap}
a.gg-nb{position:relative;display:inline-flex!important;align-items:center;height:38px;padding:0 15px!important;margin:0!important;border:1px solid rgba(255,255,255,.22)!important;background:transparent!important;color:rgba(255,255,255,.85)!important;font:500 11px/1 Inter,sans-serif!important;letter-spacing:1.6px!important;text-transform:uppercase!important;text-decoration:none!important;white-space:nowrap;transition:border-color .25s,color .25s,background .25s}
a.gg-nb:before,a.gg-nb:after{content:"";position:absolute;width:7px;height:7px;border:0 solid var(--gg-azul-claro);opacity:0;transition:opacity .25s,transform .25s;pointer-events:none}
a.gg-nb:before{top:-4px;left:-4px;border-width:1px 0 0 1px;transform:translate(3px,3px)}
a.gg-nb:after{bottom:-4px;right:-4px;border-width:0 1px 1px 0;transform:translate(-3px,-3px)}
a.gg-nb:hover,a.gg-nb:focus-visible{border-color:rgba(79,163,199,.7)!important;color:#fff!important;background:rgba(79,163,199,.08)!important;outline:none}
a.gg-nb:hover:before,a.gg-nb:hover:after,a.gg-nb:focus-visible:before,a.gg-nb:focus-visible:after{opacity:1;transform:none}
a.gg-nb.gg-on{color:#fff!important;border-color:rgba(255,255,255,.45)!important}
a.gg-nb.gg-on:not(:hover){box-shadow:inset 0 -2px 0 var(--gg-azul-claro)}
a.gg-nc{display:inline-flex!important;align-items:center;gap:10px;height:38px;padding:0 18px!important;margin:0 0 0 10px!important;background:#fff!important;color:var(--gg-azul-hero)!important;border:1px solid #fff!important;border-radius:0!important;font:600 11px/1 Inter,sans-serif!important;letter-spacing:1.6px!important;text-transform:uppercase!important;text-decoration:none!important;box-shadow:none!important;transition:background .25s,border-color .25s}
a.gg-nc:hover,a.gg-nc:focus-visible{background:var(--gg-azul-claro)!important;border-color:var(--gg-azul-claro)!important;outline:none}
a.gg-nc svg{width:15px;height:15px;flex:none}
a.gg-nc .elementor-button-content-wrapper,a.gg-nc .elementor-button-text{display:contents}

.gg-burger{display:none;position:absolute;right:22px;top:50%;transform:translateY(-50%);width:46px;height:46px;padding:0;background:transparent;border:1px solid rgba(255,255,255,.4);cursor:pointer;z-index:20}
.gg-burger span{position:absolute;left:12px;right:12px;height:1.5px;background:#fff;transition:transform .3s,opacity .3s}
.gg-burger span:nth-child(1){top:16px}.gg-burger span:nth-child(2){top:22px}.gg-burger span:nth-child(3){top:28px}

.gg-mnav{position:fixed;inset:0;z-index:99999;background:var(--gg-pie);background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:40px 40px;display:flex;flex-direction:column;padding:22px 22px calc(28px + env(safe-area-inset-bottom));opacity:0;visibility:hidden;transform:translateY(-12px);transition:opacity .3s,transform .3s,visibility .3s;font-family:Inter,sans-serif;overflow-y:auto}
.gg-mnav.open{opacity:1;visibility:visible;transform:none}
.gg-mtop{display:flex;justify-content:space-between;align-items:center;min-height:46px;margin-bottom:34px}
.gg-mtop img{height:38px;width:auto;display:block}
.gg-mx{width:46px;height:46px;background:transparent;border:1px solid rgba(255,255,255,.4);color:#fff;cursor:pointer;position:relative;padding:0}
.gg-mx:before,.gg-mx:after{content:"";position:absolute;left:12px;right:12px;top:22px;height:1.5px;background:#fff}
.gg-mx:before{transform:rotate(45deg)}.gg-mx:after{transform:rotate(-45deg)}
.gg-mlab{font:500 11px "JetBrains Mono",monospace;letter-spacing:2px;color:var(--gg-azul-claro);text-transform:uppercase;margin:0 0 12px}
.gg-mlist{display:flex;flex-direction:column;gap:8px}
.gg-mlist a{display:flex;justify-content:space-between;align-items:center;height:58px;padding:0 20px;border:1px solid rgba(255,255,255,.22);color:#fff!important;font:600 14px Saira,Inter,sans-serif;letter-spacing:2px;text-transform:uppercase;text-decoration:none}
.gg-mlist a:after{content:"";width:8px;height:8px;border:solid var(--gg-azul-claro);border-width:1px 1px 0 0;transform:rotate(45deg)}
.gg-mlist a.gg-on{border-color:rgba(255,255,255,.55);box-shadow:inset 3px 0 0 var(--gg-azul-claro)}
.gg-mlist a.gg-mc{background:#fff;color:var(--gg-azul-hero)!important;border-color:#fff;margin-top:8px}
.gg-mlist a.gg-mc:after{border-color:var(--gg-azul-hero)}
.gg-mquick{margin-top:auto;padding-top:34px;display:grid;grid-template-columns:1fr 1fr;gap:8px}
.gg-mquick a{display:flex;flex-direction:column;gap:6px;padding:16px;border:1px solid rgba(255,255,255,.18);color:#fff!important;text-decoration:none;font:600 15px Inter,sans-serif}
.gg-mquick a span{font:500 10px "JetBrains Mono",monospace;letter-spacing:2px;color:rgba(191,227,244,.75);text-transform:uppercase}
.gg-mquick a svg{width:16px;height:16px;color:#25D366;vertical-align:-3px;margin-right:6px}
html.gg-lock,html.gg-lock body{overflow:hidden!important}
a.gg-lk{position:relative;display:inline-flex!important;align-items:center;justify-content:center;width:38px;height:38px;margin:0 0 0 6px!important;padding:0!important;border:1px solid rgba(255,255,255,.35)!important;color:#fff!important;background:transparent!important;text-decoration:none!important;transition:border-color .25s,background .25s}
a.gg-lk svg{width:16px;height:16px}
a.gg-lk:hover,a.gg-lk:focus-visible{border-color:var(--gg-azul-claro)!important;background:rgba(79,163,199,.12)!important;outline:none}
a.gg-lk .gg-tip{position:absolute;top:calc(100% + 10px);right:0;white-space:nowrap;padding:7px 10px;background:var(--gg-pie);border:1px solid rgba(79,163,199,.5);color:#fff;font:500 10px/1 "JetBrains Mono",monospace;letter-spacing:1.5px;text-transform:uppercase;opacity:0;transform:translateY(-4px);transition:opacity .2s,transform .2s;pointer-events:none;z-index:50}
a.gg-lk:hover .gg-tip,a.gg-lk:focus-visible .gg-tip{opacity:1;transform:none}
.gg-marea{display:flex!important;align-items:center;gap:10px;justify-content:flex-start!important;margin-top:8px;border-style:dashed!important}
.gg-marea:after{margin-left:auto}
.gg-marea svg{width:16px;height:16px;color:var(--gg-azul-claro)}
a.gg-lk .gg-dot{position:absolute;top:-4px;right:-4px;width:8px;height:8px;border-radius:50%;background:var(--gg-verde);box-shadow:0 0 0 2px var(--gg-pie)}
a.gg-lk.gg-in{border-color:rgba(107,158,31,.75)!important}
.gg-marea .gg-dot{width:8px;height:8px;border-radius:50%;background:var(--gg-verde);display:inline-block}
@media (hover:none) and (min-width:1101px){a.gg-lk{width:auto;padding:0 12px!important;gap:8px}a.gg-lk .gg-tip{position:static;opacity:1;transform:none;padding:0;border:0;background:transparent;font:500 10.5px/1 Inter,sans-serif;letter-spacing:1.5px}}

/* Cabecera compacta (menú de tres rayas) hasta 1.100 px; antes, hasta 900 px (7 oct. 2026). Alturas de los logos en guila-comun.css. */
@media(max-width:1100px){
  .gg-hidemob{display:none!important}
  .gg-burger{display:block}
  .gg-hasb{padding-right:84px!important}
  .gga .lock{gap:12px}
  .gga .lock span{height:24px}
}
@media(prefers-reduced-motion:reduce){.gg-mnav{transition:none}}


/* Heros adaptativos PC/tablet (código de Elementor 421) */

@media (min-width:901px){
body .gga .gg-cue{left:56px!important;right:auto!important;bottom:clamp(20px,3.4vh,34px)!important;transform:none!important;flex-direction:row!important;align-items:center!important;gap:14px!important}
body .gga .gg-cue.is-away{transform:translateY(16px)!important}
body .gga .gg-cue .gg-cue__ring{order:-1;width:38px;height:38px}
body .gga .gg-cue .gg-cue__track{display:none!important}
body .gga .gg-cue .gg-cue__mask{text-align:left}
body .gga .gg-cue .gg-cue__name{margin-top:0!important}


body .ggc .heroin,body .ggj .heroin{padding-top:clamp(12px,3vh,40px)!important;padding-bottom:clamp(88px,13vh,110px)!important}
body .ggc .hero h1,body .ggj .hero h1{font-size:clamp(30px,min(4.6vw,7vh),62px)!important}
body .ggc .heroin .htx,body .ggj .heroin .htx{gap:clamp(14px,2.6vh,26px)!important}
body .ggc .hero .htx p.in,body .ggj .hero .htx p.in{font-size:clamp(15px,2.2vh,19px)!important}
}

/* Servicios Home: botones de la ficha con el mismo ancho */
@media (min-width:901px){body .ggs-ctas{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}body .ggs-ctas>a{width:auto!important;justify-content:center!important;text-align:center!important;box-sizing:border-box;margin:0!important}}

/* APEX: titular del hero siempre en 2 líneas */
@media (min-width:901px){body.page-id-195 section.hero h1{font-size:clamp(28px,min(4.4vw,6vh),54px)!important;white-space:nowrap}}

/* Banner de cookies (CookieAdmin): tipografía de la web y solo la categoría que se usa (fase 2, paso 5, 6 oct. 2026) */
.cookieadmin_law_container,.cookieadmin_law_container *,.cookieadmin_cookie_modal,.cookieadmin_cookie_modal *{font-family:Inter,sans-serif!important}
.cookieadmin_types:has(#cookieadmin-functional-container),.cookieadmin_types:has(#cookieadmin-analytics-container),.cookieadmin_types:has(#cookieadmin-marketing-container),.cookieadmin_types:has(#un_c-container){display:none!important}
/* Banner de cookies: colores de la paleta oficial (fase 2, paso 5, 6 oct. 2026) */
.cookieadmin_btn{background:#fff!important;color:var(--gg-azul)!important;border:1px solid var(--gg-azul)!important}
.cookieadmin_btn.cookieadmin_accept_btn,.cookieadmin_btn.cookieadmin_save_btn{background:var(--gg-azul)!important;color:#fff!important}
.cookieadmin_btn:hover{background:var(--gg-azul-hero)!important;color:#fff!important;border-color:var(--gg-azul-hero)!important}
.cookieadmin_law_container a,.cookieadmin_cookie_modal a{color:var(--gg-verde-oscuro)!important;border-color:var(--gg-verde-oscuro)!important}
.cookieadmin_remark.cookieadmin_act{color:var(--gg-verde-oscuro)!important}

/* ==========================================================================
   HEROS · alto común de todas las páginas con hero (6 oct. 2026)
   La ventana menos la barra de WordPress; en PC, alto fijo con mínimo de 600 px.
   ========================================================================== */
body .gga .hero{min-height:calc(100vh - var(--wp-admin--admin-bar--height,0px))!important}
@media(min-width:901px){body .gga .hero{height:calc(100vh - var(--wp-admin--admin-bar--height,0px))!important;min-height:600px!important}}

/* Puntos numerados de los planos · pulso de sonar (6 oct. 2026)
   Cada pocos segundos sale de cada número un anillo fino de su color de borde, que se expande y se desvanece.
   Escalonado entre puntos; el número y su halo no cambian (consigna de los heros: no se atenúan).
   El punto seleccionado (.on) no late, salvo si es el único del plano (Trabaja con nosotros y Heritage). Sin animación si el sistema la desactiva. */
.gga .hero :is(.hs,.ghs,.cpt,.jpt)::after{content:"";position:absolute;inset:-1px;border-radius:50%;border:1.5px solid;border-color:inherit;opacity:0;pointer-events:none;animation:gg-pulso 3.2s cubic-bezier(.2,.6,.3,1) infinite}
.gga .hero :is(.hs,.ghs,.cpt,.jpt):nth-of-type(2)::after{animation-delay:.45s}
.gga .hero :is(.hs,.ghs,.cpt,.jpt):nth-of-type(3)::after{animation-delay:.9s}
.gga .hero :is(.hs,.ghs,.cpt,.jpt):nth-of-type(4)::after{animation-delay:1.35s}
.gga .hero :is(.hs,.ghs,.cpt,.jpt):nth-of-type(5)::after{animation-delay:1.8s}
.gga .hero :is(.hs,.ghs,.cpt,.jpt):nth-of-type(6)::after{animation-delay:2.25s}
.gga .hero :is(.hs,.ghs,.cpt,.jpt):nth-of-type(7)::after{animation-delay:2.7s}
.gga .hero :is(.hs,.ghs,.cpt,.jpt):nth-of-type(n+8)::after{animation-delay:3.15s}
.gga .hero :is(.hs,.ghs,.cpt,.jpt).on:not(:only-of-type)::after{animation:none;opacity:0}
@keyframes gg-pulso{0%{transform:scale(1);opacity:.75}70%{opacity:0}100%{transform:scale(2.2);opacity:0}}
@media (prefers-reduced-motion:reduce){.gga .hero :is(.hs,.ghs,.cpt,.jpt)::after{animation:none}}

/* ==========================================================================
   BOTONES · animación común al pasar el ratón o con el teclado (6 oct. 2026)
   Convención de clases (cualquier botón nuevo hereda su efecto):
   · Relleno ........ .btw (blanco) · .btg (color de la división; verde por defecto) · .pri (principal de color) · .btn (azul)
   · Contorno ....... .bto (claro, sobre fondo oscuro) · .btl (azul, sobre fondo claro)
   · Fichas del plano  :is(.hcard,.gcard,.ccard,.jcard): el principal lleva .pri; el resto es contorno
   · WhatsApp ....... .gg-wa-btn (botón) · .gg-wa / .gg-wa-txt (enlace de texto)
   · Tarjeta ........ a.card · Enlace de texto en tarjetas: .lk a · Preguntas: details>summary
   Efectos: relleno → invierte colores · contorno → se rellena · tarjeta → sube 4 px con sombra
   · enlace → subrayado que crece · WhatsApp → verde WhatsApp. Transición común de 0,25 s.
   .btg al pasar el ratón → tono oscuro de la división (--gg-div-osc, definido en la hoja de cada página;
   si no está definido, verde oscuro). Ej.: MINELTA rojo → rojo oscuro; GMS verde → verde oscuro.
   Estas reglas también anulan el rosa que el tema de WordPress pone en los <button>.
   · Formularios de Elementor (8 oct. 2026): el botón de envío (.elementor-form .elementor-button) se comporta como .btn.
   · Esquinas (8 oct. 2026): los <button> del sistema van rectos, como los enlaces; reset.css del tema les pone 3 px.
   ========================================================================== */
.gga :is(.btw,.btg,.pri,.btn,.bto,.btl,.wbtn),.gga :is(.hcard,.gcard,.ccard,.jcard) a,.gga details>summary,.gg-wa-btn,.gga .elementor-form .elementor-button{transition:background-color .25s ease,color .25s ease,border-color .25s ease,box-shadow .25s ease!important}
.gga button:is(.btw,.btg,.pri,.btn,.bto,.btl,.wbtn),.gga .elementor-form .elementor-button{border-radius:0}

/* Relleno */
.gga .btw:not(.gg-wa-btn):is(:hover,:focus-visible){background:var(--gg-azul)!important;color:#fff!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.85)!important}
.gga .btg:not(.gg-wa-btn):is(:hover,:focus-visible){background:var(--gg-div-osc,var(--gg-verde-oscuro))!important;color:#fff!important;border-color:var(--gg-div-osc,var(--gg-verde-oscuro))!important}
.gga .pri:not(.gg-wa-btn):is(:hover,:focus-visible),.gga :is(.hcard,.gcard,.ccard,.jcard) a.pri:is(:hover,:focus-visible){background:#fff!important;color:var(--gg-azul-hero)!important;border-color:#fff!important}
.gga .btn:is(:hover,:focus-visible),.gga .elementor-form .elementor-button:is(:hover,:focus-visible){background:#fff!important;color:var(--gg-azul)!important;box-shadow:inset 0 0 0 1px var(--gg-azul)!important}

/* Contorno */
.gga .bto:not(.gg-wa-btn):is(:hover,:focus-visible),.gga :is(.hcard,.gcard,.ccard,.jcard) a:not(.pri):not(.gg-wa-btn):is(:hover,:focus-visible){background:#fff!important;color:var(--gg-azul-hero)!important;border-color:#fff!important}
.gga .btl:is(:hover,:focus-visible){background:var(--gg-azul)!important;color:#fff!important;border-color:var(--gg-azul)!important}

/* Tarjetas */
.gga a.card{transition:transform .25s ease,box-shadow .25s ease!important}
.gga a.card:is(:hover,:focus-visible){transform:translateY(-4px);box-shadow:0 14px 30px rgba(14,36,64,.14)!important}

/* Enlaces de texto en tarjetas (canales de Contacto) */
.gga .lk a:not(.gg-wa-btn){background-image:linear-gradient(currentColor,currentColor);background-repeat:no-repeat;background-position:0 100%;background-size:0 1px;transition:background-size .25s ease,color .25s ease!important}
.gga .lk a:not(.gg-wa-btn):is(:hover,:focus-visible){background-size:100% 1px}

/* Preguntas frecuentes */
.gga details>summary{cursor:pointer}
.gga details>summary:is(:hover,:focus-visible){color:var(--gg-apex)!important}

/* WhatsApp (al final, para que gane a los anteriores) */
:is(.gga,.gg-mnav) :is(a,button).gg-wa-btn:is(:hover,:focus-visible){background-color:var(--gg-whatsapp)!important;border-color:var(--gg-whatsapp)!important;color:var(--gg-pie)!important;box-shadow:0 10px 24px -10px rgba(37,211,102,.6)!important}
:is(.gga,.gg-mnav) :is(a,button).gg-wa-btn:is(:hover,:focus-visible) *{color:var(--gg-pie)!important}
a.gg-wa:not(.gg-wa-btn),a.gg-wa:not(.gg-wa-btn) svg,a.gg-wa-txt{transition:color .25s ease,border-color .25s ease!important}
a.gg-wa:not(.gg-wa-btn):is(:hover,:focus-visible),a.gg-wa:not(.gg-wa-btn):is(:hover,:focus-visible) svg,a.gg-wa-txt:is(:hover,:focus-visible){color:var(--gg-whatsapp)!important;border-color:var(--gg-whatsapp)!important}

@media (prefers-reduced-motion:reduce){.gga a.card{transition:none!important}.gga a.card:is(:hover,:focus-visible){transform:none}}

/* ==========================================================================
   DESPLEGABLES · flecha propia separada del borde derecho (6 oct. 2026)
   Uso: clase .gg-sel en el <select>. Los desplegables de los formularios de Elementor (Contacto) lo usan sin clase
   (8 oct. 2026); se ocultan sus dos flechas propias (icono y ::before) para que solo quede la del componente. El selector
   repite la estructura del de Elementor (.elementor-field-group …) porque su hoja se carga después y fija padding-inline-end. Sustituye la flecha nativa del navegador, que va
   pegada al borde, por un chevrón a 18 px del borde derecho, del color del texto.
   El componente reserva el espacio derecho (44 px): la página no fija padding-right
   en el desplegable ni usa el atajo background (usa background-color).
   La transición se limita al borde, el fondo y la sombra del foco: así la flecha y el
   espacio derecho no se animan al cargar la página (reset.css anima todas las propiedades).
   ========================================================================== */
.elementor-select-wrapper .select-caret-down-wrapper,.elementor-form .elementor-select-wrapper::before{display:none!important}
.gg-sel,.elementor-form .elementor-field-group .elementor-select-wrapper select{-webkit-appearance:none;appearance:none;padding-right:44px;cursor:pointer;background-image:linear-gradient(45deg,transparent 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,transparent 50%);background-position:calc(100% - 23px) 50%,calc(100% - 18px) 50%;background-size:5px 5px;background-repeat:no-repeat;transition:border-color .25s,background-color .25s,box-shadow .25s}

/* ══════════════════════════════════════════════════════════════════════════════════════════════════════
IDIOMA · selector ES/EN y textos del CSS en inglés (bloque 12, 8 oct. 2026)
Selector (gg_nav_idioma() en guila-nav.php): en PC va encima del menú, alineado a su derecha y fuera del flujo,
para no quitar sitio a los logos (entre 1.101 y 1.125 px el hueco entre logos y menú es de 24 px). Hasta 1.100 px va junto
al botón de menú (.gg-lang-c) y como última línea del panel (.gg-mlang). La versión activa, en blanco con raya de acento.
Textos que salen del CSS (indicador «Descubre…» de las divisiones y «Ver división →»): su versión inglesa, con el mismo
selector que la regla original precedido de html[lang="en-GB"] (lo pone guila-en.php en /en/).
══════════════════════════════════════════════════════════════════════════════════════════════════════ */
.gg-navwrap{position:relative}
a.gg-lang{position:absolute;right:0;bottom:100%;margin-bottom:8px;display:inline-flex;align-items:center;gap:8px;padding:2px 0;font:500 10.5px/1 "JetBrains Mono",monospace;letter-spacing:1.6px;color:rgba(255,255,255,.55)!important;text-decoration:none!important;transition:color .25s}
a.gg-lang i{width:1px;height:9px;background:rgba(255,255,255,.3)}
a.gg-lang span{padding-bottom:3px;border-bottom:1px solid transparent;transition:color .25s,border-color .25s}
a.gg-lang span.on{color:#fff;border-bottom-color:var(--gg-azul-claro)}
a.gg-lang:is(:hover,:focus-visible) span:not(.on){color:var(--gg-azul-claro)}
a.gg-lang:focus-visible{outline:1px solid var(--gg-azul-claro);outline-offset:4px}
a.gg-lang-c{display:none!important}
@media(max-width:1100px){a.gg-lang-c{display:inline-flex!important;bottom:auto;top:50%;right:80px;margin:0;transform:translateY(-50%);height:46px;padding:0 12px;border:1px solid rgba(255,255,255,.4)}}
.gg-mlist a.gg-mlang{margin-top:8px;border-style:dashed}
html[lang="en-GB"] .gga .hero .heroin::after{content:"Discover APEX"}
html[lang="en-GB"] .gga.gms .hero .heroin::after{content:"Discover GMS"}
html[lang="en-GB"] .gga.gms.lgp .hero .heroin::after{content:"Discover GUILÁ-LGP"}
html[lang="en-GB"] .gga.gms.mlt .hero .heroin::after{content:"Discover MINELTA"}
html[lang="en-GB"] .gga.gms.rec .hero .heroin::after{content:"Discover Spare Parts"}
html[lang="en-GB"] .hubrow a.card::after{content:"View division →"}
