/* =====================================================================
   UKABI · Footer global (fusion_tb_section 10 · diseño 29-09-2026)
   Elementos de Avada con clases ukft-*; piezas que añade ukabi-footer.js:
   ukftx-* (estado abierto/cerrado, copiar correo, logotipo grande,
   luz que sigue al cursor, volver arriba).
   ===================================================================== */
.fusion-tb-footer:has(.ukft){
  --ukft-dl:rgba(255,255,255,.1); --ukft-dt:rgba(255,255,255,.62); --ukft-coral:#FD495C; --ukft-mono:"Space Mono",ui-monospace,Menlo,Consolas,monospace;
  --mx:50%; --my:0%;
  position:relative; overflow:hidden; background:radial-gradient(700px 420px at var(--mx) var(--my),rgba(253,73,92,.12),transparent 60%),radial-gradient(900px 500px at 100% 0,rgba(176,75,216,.14),transparent 60%),radial-gradient(800px 500px at 0 100%,rgba(38,55,158,.35),transparent 60%),#05091F !important; color:#fff; font-family:"Montserrat",system-ui,sans-serif;
}
.fusion-tb-footer:has(.ukft)::before{ content:""; position:absolute; inset:0; background-image:radial-gradient(rgba(255,255,255,.09) 1px,transparent 1px); background-size:26px 26px; -webkit-mask:linear-gradient(180deg,#000,transparent 70%); mask:linear-gradient(180deg,#000,transparent 70%); pointer-events:none; }
.ukft.fusion-fullwidth{ position:relative; z-index:1; background:transparent !important; border:0 !important; padding-left:24px !important; padding-right:24px !important; margin:0 !important; }
.ukft > .fusion-row{ max-width:1240px !important; margin-inline:auto !important; }
.ukft .fusion-layout-column{ margin-top:0 !important; margin-bottom:0 !important; }
.ukft .fusion-column-wrapper{ padding:0 !important; margin:0 !important; }
.ukft .fusion-text p{ margin:0; }
.ukft .fusion-text,.ukft .fusion-image-element,.ukft .fusion-social-links,.ukft .fusion-button-wrapper,.ukft .fusion-menu-element-wrapper,.ukft nav.awb-menu{ margin:0 !important; }
.ukft-k p,.ukft-h p{ font:700 11px/1.3 var(--ukft-mono) !important; letter-spacing:.14em; text-transform:uppercase; }

/* 1 · marca y contacto */
.ukft-top{ padding-top:72px !important; padding-bottom:44px !important; }
.ukft-top > .fusion-row{ align-items:flex-end !important; column-gap:40px; flex-wrap:nowrap !important; padding-bottom:44px; border-bottom:1px solid var(--ukft-dl); }
.ukft-top > .fusion-row > .fusion-layout-column{ width:auto !important; max-width:none !important; flex:1 1 0 !important; }
.ukft .ukft-brand > .fusion-column-wrapper{ display:flex !important; flex-direction:column !important; align-items:flex-start !important; gap:18px !important; }
.ukft-logo img{ display:block; height:40px !important; width:auto !important; }
.ukft-tag p{ max-width:470px; font-size:15.5px !important; line-height:1.6 !important; color:var(--ukft-dt) !important; }
.ukft-soc .fusion-social-networks-wrapper{ display:flex; gap:8px; }
.ukft-soc .fusion-social-network-icon{ width:40px; height:40px; margin:0 !important; border-radius:12px; display:grid !important; place-items:center; border:1px solid var(--ukft-dl); background:rgba(255,255,255,.04); color:#fff !important; font-size:16px !important; transition:border-color .25s,background .25s,transform .25s; }
.ukft-soc .fusion-social-network-icon:hover{ border-color:var(--ukft-coral); background:rgba(253,73,92,.14); transform:translateY(-2px); }
.ukft .ukft-contact > .fusion-column-wrapper{ display:flex !important; flex-direction:row !important; flex-wrap:wrap !important; align-items:center !important; gap:14px 10px !important; padding:24px 26px !important; border-radius:22px !important; overflow:hidden; background:rgba(255,255,255,.05) !important; border:1px solid var(--ukft-dl); -webkit-backdrop-filter:blur(10px); backdrop-filter:blur(10px); }
.ukft-contact .fusion-column-wrapper > *{ flex:0 0 auto; }
.ukft-contact .ukft-phone{ flex:0 0 100%; order:2; }
.ukft-contact .ukft-hours{ flex:0 0 100%; order:5; }
.ukft-contact .ukft-mail{ order:3; }
.ukft-contact .fusion-button-wrapper,.ukft-contact > .fusion-column-wrapper > div:has(> .ukft-sup){ order:4; }
.ukftx-status{ order:1; flex:0 0 100%; }
.ukft-phone a{ font-size:clamp(28px,3vw,38px) !important; font-weight:800 !important; letter-spacing:-.03em; line-height:1.1; color:#fff !important; text-decoration:none !important; font-variant-numeric:tabular-nums; }
.ukft-phone a:hover{ color:#FFB3BC !important; }
.ukft-hours p{ font-size:12.5px !important; color:rgba(255,255,255,.5) !important; }
.ukft-mail a,.ukftx-copy{ display:inline-flex; align-items:center; gap:8px; padding:11px 16px; border-radius:12px; border:1px solid var(--ukft-dl); background:none; color:#fff !important; font:700 14px/1 "Montserrat",sans-serif; text-decoration:none !important; cursor:pointer; transition:border-color .25s,color .25s; }
.ukft-mail a:hover,.ukftx-copy:hover{ border-color:#fff; }
.ukft-mail p{ display:flex; gap:6px; }
.ukftx-copy{ padding:11px 12px; }
.ukftx-copy.done{ color:#7CF0B0 !important; border-color:#7CF0B0; }
.ukft .fusion-button.ukft-sup{ padding:12px 16px !important; border-radius:12px !important; background:var(--ukft-coral) !important; border:0 !important; box-shadow:0 14px 30px -14px rgba(253,73,92,.8); }
.ukft .fusion-button.ukft-sup .fusion-button-text{ font:700 14px/1 "Montserrat",sans-serif !important; color:#fff !important; }
.ukft .fusion-button.ukft-sup .fusion-button-text::after{ content:" →"; }
.ukft .fusion-button.ukft-sup:hover{ background:#E83248 !important; }
.ukftx-st{ display:inline-flex; align-items:center; gap:8px; font:700 11px/1 var(--ukft-mono); letter-spacing:.1em; text-transform:uppercase; color:#7CF0B0; }
.ukftx-st::before{ content:""; width:8px; height:8px; border-radius:50%; background:#2BD67B; box-shadow:0 0 0 4px rgba(43,214,123,.2); animation:ukftPulse 2s infinite; }
.ukftx-st.off{ color:#FFB3BC; }
.ukftx-st.off::before{ background:var(--ukft-coral); box-shadow:0 0 0 4px rgba(253,73,92,.2); animation:none; }
@keyframes ukftPulse{ 50%{ box-shadow:0 0 0 8px rgba(43,214,123,0); } }

/* 2 · menús */
.ukft-nav{ padding-top:0 !important; padding-bottom:0 !important; }
.ukft-nav > .fusion-row{ display:grid !important; grid-template-columns:repeat(6,minmax(0,1fr)); gap:28px; padding-block:40px 44px; border-bottom:1px solid var(--ukft-dl); }
.ukft-nav > .fusion-row::before,.ukft-nav > .fusion-row::after{ display:none !important; }
.ukft-nav > .fusion-row > .fusion-layout-column{ width:auto !important; max-width:none !important; }
.ukft-navcol .fusion-column-wrapper{ display:block !important; }
.ukft .ukft-h{ margin-bottom:16px !important; }
.ukft-menu .awb-menu__description{ display:none !important; }
.ukft-menu .awb-menu__main-li.current-menu-item > .awb-menu__main-a,.ukft-menu .awb-menu__main-li.current-menu-item > .awb-menu__main-a .menu-text{ color:#FFB3BC !important; }
.ukft-h p{ color:#FF7A89 !important; }
.ukft-menu .awb-menu__main-ul{ display:grid !important; gap:10px; align-content:start !important; height:auto !important; margin:0 !important; padding:0 !important; }
.ukft-menu .awb-menu__main-li{ margin:0 !important; padding:0 !important; }
.ukft-menu .awb-menu__main-background-default,.ukft-menu .awb-menu__main-background-active{ display:none !important; }
.ukft-menu .awb-menu__main-a{ position:relative; display:inline-flex !important; align-items:center; gap:8px; padding:0 !important; min-height:0 !important; background:none !important; font-size:14px !important; font-weight:500 !important; line-height:1.35 !important; color:rgba(255,255,255,.78) !important; text-decoration:none; transition:color .25s,transform .25s; }
.ukft-menu .awb-menu__main-a .menu-text{ font:inherit !important; color:inherit !important; text-align:left !important; }
.ukft-menu .awb-menu__main-a::after{ content:""; position:absolute; left:0; right:0; bottom:-3px; height:1px; background:var(--ukft-coral); transform:scaleX(0); transform-origin:left; transition:transform .3s; }
.ukft-menu .awb-menu__main-a:hover{ color:#fff !important; transform:translateX(3px); }
.ukft-menu .awb-menu__main-a:hover::after{ transform:none; }
.ukft-menu .current-menu-item > .awb-menu__main-a{ color:#fff !important; }
.ukft-own .awb-menu__main-a::before{ content:""; width:13px; height:12px; flex:none; background:url("/wp-content/uploads/2026/07/favicon-ukabi.png") center/contain no-repeat; }
.ukft .awb-menu__m-toggle{ display:none !important; }
/* Avada trae un color activo/hover verde por defecto en fusion_menu: se sustituye */
.ukft nav.awb-menu{ --awb-color:rgba(255,255,255,.78); --awb-active-color:#fff; --awb-active-bg:transparent; --awb-active-border-color:transparent; --awb-submenu-active-color:#fff; --awb-submenu-active-bg:transparent; }
.fusion-tb-footer .ukft nav.awb-menu .awb-menu__main-li:hover > .awb-menu__main-a,.fusion-tb-footer .ukft nav.awb-menu .awb-menu__main-li:focus-within > .awb-menu__main-a,.fusion-tb-footer .ukft nav.awb-menu .awb-menu__main-li:hover > .awb-menu__main-a .menu-text,.fusion-tb-footer .ukft nav.awb-menu .awb-menu__main-li:focus-within > .awb-menu__main-a .menu-text{ color:#fff !important; }
.fusion-tb-footer .ukft nav.awb-menu .current-menu-item > .awb-menu__main-a,.fusion-tb-footer .ukft nav.awb-menu .current-menu-item > .awb-menu__main-a .menu-text{ color:#FFB3BC !important; }
.fusion-tb-footer .ukft .ukft-soc .fusion-social-network-icon:hover,.fusion-tb-footer .ukft .ukft-soc .fusion-social-network-icon:focus{ color:#fff !important; }
.fusion-tb-footer .ukft a:focus-visible{ outline:2px solid #FF7A89; outline-offset:3px; border-radius:6px; }

/* 3 · sedes y partners */
.ukft-mid{ padding-top:0 !important; padding-bottom:0 !important; }
.ukft-mid > .fusion-row{ column-gap:40px; flex-wrap:nowrap !important; padding-block:34px; border-bottom:1px solid var(--ukft-dl); }
.ukft-sedescol{ flex:1.5 1 0 !important; width:auto !important; max-width:none !important; }
.ukft-partcol{ flex:1 1 0 !important; width:auto !important; max-width:none !important; }
.ukft .ukft-mid .fusion-column-wrapper{ display:flex !important; gap:10px !important; flex-direction:row !important; flex-wrap:wrap; align-items:center; gap:10px; }
.ukft .ukft-mid .ukft-k{ flex:0 0 100%; margin-bottom:4px !important; }
.ukft-mid .ukft-k p{ color:rgba(255,255,255,.5) !important; }
.ukft-sedes{ flex:0 0 100%; display:grid !important; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; margin:0 !important; }
.ukft-sedes::before,.ukft-sedes::after,.ukft-sedes > .fusion-clearfix{ display:none !important; }
.ukft-sedes .content-box-column{ width:auto !important; margin:0 !important; padding:0 !important; float:none !important; }
.ukft-sedes .content-box-column > .col{ height:100%; }
.ukft-sedes .content-box-wrapper,.ukft-sedes .link-area-box{ display:grid !important; gap:4px; height:100%; margin:0 !important; padding:14px 16px !important; border-radius:14px; border:1px solid var(--ukft-dl) !important; background:rgba(255,255,255,.03) !important; text-align:left !important; transition:border-color .25s,background .25s; }
.ukft-sedes .link-area-box:hover{ border-color:rgba(253,73,92,.5) !important; background:rgba(255,255,255,.06) !important; }
.ukft-sedes .heading{ margin:0 !important; padding:0 !important; }
.ukft-sedes .content-box-heading{ display:flex !important; align-items:center; gap:8px; margin:0 !important; padding:0 !important; font:700 14px/1.2 "Montserrat",sans-serif !important; color:#fff !important; text-align:left !important; }
.ukft-sedes .content-box-heading::before{ content:""; width:6px; height:6px; border-radius:50%; background:var(--ukft-coral); box-shadow:0 0 0 4px rgba(253,73,92,.18); flex:none; }
.ukft-sedes .content-container{ margin:0 !important; padding:0 !important; font:400 12px/1.2 var(--ukft-mono) !important; color:var(--ukft-dt) !important; text-align:left !important; font-variant-numeric:tabular-nums; }
.ukft-sedes .fusion-read-more,.ukft-sedes .fusion-read-more-button{ display:none !important; }
.ukft .ukft-partcol > .fusion-column-wrapper{ display:flex !important; flex-direction:column !important; align-items:flex-start !important; gap:14px !important; }
.ukft .ukft-partners{ margin:0 !important; }
.ukft-partners p{ display:flex; flex-wrap:wrap; gap:10px; }
.ukftx-chip{ display:inline-flex; align-items:center; gap:8px; padding:12px 14px; border-radius:12px; border:1px solid var(--ukft-dl); font-size:13.5px; font-weight:700; line-height:1; color:rgba(255,255,255,.85); white-space:nowrap; transition:border-color .25s; }
.ukftx-chip:hover{ border-color:rgba(255,255,255,.28); }
.ukftx-chip.gold{ border-color:rgba(255,200,120,.35); }
.ukftx-chip em{ font:700 9.5px/1 var(--ukft-mono); font-style:normal; letter-spacing:.1em; text-transform:uppercase; color:#1a1300; background:linear-gradient(135deg,#F5D08A,#C99A3F); padding:4px 6px; border-radius:5px; }
.ukft-sedes .content-box-wrapper,.ukft-sedes .link-area-box{ min-height:0; align-content:center; box-sizing:border-box; }
.ukft-sedes .content-box-wrapper > .fusion-clearfix{ display:none !important; }

/* 4 · logotipo grande y barra legal */
.ukft-bottom{ padding-top:0 !important; padding-bottom:0 !important; }
.ukft-bottom > .fusion-row{ align-items:center !important; }
.ukft-big{ flex:0 0 100% !important; width:100% !important; max-width:none !important; }
.ukft-big .fusion-column-wrapper{ display:flex !important; justify-content:center; padding-top:30px !important; line-height:.76; user-select:none; pointer-events:none; }
.ukftx-big{ display:inline-flex; align-items:flex-start; font:600 clamp(110px,24vw,340px)/1 "Montserrat Alternates","Montserrat",sans-serif; -webkit-mask-image:linear-gradient(180deg,#000 15%,transparent 88%); mask-image:linear-gradient(180deg,#000 15%,transparent 88%); }
.ukftx-big span{ display:inline-block; letter-spacing:-.04em; color:rgba(255,255,255,.2); }
/* símbolo del logo (las tres barras coral), arriba a la derecha como en el logotipo */
.ukftx-big span.sym{ width:.3em; height:.285em; margin:.1em 0 0 .06em; background:url("/wp-content/uploads/2026/07/favicon-ukabi.png") center/contain no-repeat; opacity:.55; }
.ukftx-big span:nth-child(6){ transition-delay:.32s; }
.ukftx-big.js span{ transform:translateY(40%); opacity:0; transition:transform 1.1s cubic-bezier(.2,.8,.2,1),opacity 1.1s; }
.ukftx-big.js.in span{ transform:none; opacity:1; }
.ukftx-big span:nth-child(2){ transition-delay:.06s; } .ukftx-big span:nth-child(3){ transition-delay:.12s; } .ukftx-big span:nth-child(4){ transition-delay:.18s; } .ukftx-big span:nth-child(5){ transition-delay:.24s; }
.ukft-copycol,.ukft-legalcol,.ukft-topcol{ padding-block:22px 26px !important; }
.ukft .ukft-big{ border-bottom:1px solid var(--ukft-dl); }
.ukft-copy p{ font-size:12.5px !important; color:rgba(255,255,255,.5) !important; }
.ukft-legalcol .fusion-column-wrapper{ display:flex !important; justify-content:center; }
.ukft-legal .awb-menu__main-ul{ display:flex !important; flex-direction:row !important; flex-wrap:wrap; gap:6px 20px; margin:0 !important; padding:0 !important; }
.ukft-legal .awb-menu__main-li{ margin:0 !important; }
.ukft-legal .awb-menu__main-background-default,.ukft-legal .awb-menu__main-background-active{ display:none !important; }
.ukft-legal .awb-menu__main-a{ padding:0 !important; min-height:0 !important; background:none !important; font-size:12.5px !important; font-weight:500 !important; color:rgba(255,255,255,.7) !important; }
.ukft-legal .awb-menu__main-a:hover{ color:#fff !important; }
.ukft .ukft-topcol > .fusion-column-wrapper{ display:flex !important; flex-direction:row !important; justify-content:flex-end !important; }
.ukft .ukft-topcol > .fusion-column-wrapper > *{ flex:0 0 auto !important; width:auto !important; }
.ukft .fusion-button.ukft-totop{ padding:9px 12px !important; border-radius:10px !important; background:none !important; border:1px solid var(--ukft-dl) !important; }
.ukft .fusion-button.ukft-totop .fusion-button-text{ font:700 12px/1 "Montserrat",sans-serif !important; color:#fff !important; }
.ukft .fusion-button.ukft-totop .fusion-button-text::after{ content:" ↑"; }
.ukft .fusion-button.ukft-totop:hover{ border-color:#fff !important; }

@media (max-width:1000px){
  .ukft-top > .fusion-row,.ukft-mid > .fusion-row{ flex-wrap:wrap !important; row-gap:28px; }
  .ukft-top > .fusion-row > .fusion-layout-column,.ukft-sedescol,.ukft-partcol{ flex:0 0 100% !important; }
  .ukft-nav > .fusion-row{ grid-template-columns:repeat(3,minmax(0,1fr)); }
  .ukft-sedes{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  .ukft-copycol,.ukft-legalcol,.ukft-topcol{ flex:0 0 100% !important; width:100% !important; max-width:none !important; padding-block:10px !important; }
  .ukft-copycol{ padding-top:22px !important; }
  .ukft-legalcol .fusion-column-wrapper,.ukft .ukft-topcol > .fusion-column-wrapper{ justify-content:flex-start !important; }
  .ukft-topcol{ padding-bottom:26px !important; }
}
@media (max-width:600px){
  .ukft.fusion-fullwidth{ padding-left:16px !important; padding-right:16px !important; }
  .ukft-top{ padding-top:56px !important; }
  .ukft-nav > .fusion-row{ grid-template-columns:repeat(2,minmax(0,1fr)); gap:30px 20px; }
  .ukft-contact > .fusion-column-wrapper{ padding:20px !important; }
}
@media (prefers-reduced-motion:reduce){ .ukftx-big.js span{ transform:none; opacity:1; transition:none; } .ukftx-st::before{ animation:none; } }
