:root{--gym-blue:#07549A;--gym-ocean:#087FC2;--gym-cyan:#19B5D8;--gym-night:#12304A;--gym-ice:#F2F6F8;--gym-white:#fff;--gym-text:#20344A;--gym-muted:#6D8194;--gym-border:rgba(7,84,154,.13);--gym-shadow:0 18px 50px rgba(18,48,74,.10);--gym-header-height:82px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body.gym-site{margin:0;color:var(--gym-text);background:#fff;font-family:"Inter",system-ui,-apple-system,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}body.gym-menu-open{overflow:hidden}img{max-width:100%;height:auto}a{color:var(--gym-blue)}button,input,textarea,select{font:inherit}
.gym-header{position:sticky;top:0;z-index:999;background:rgba(255,255,255,.92);border-bottom:1px solid rgba(7,84,154,.08);backdrop-filter:blur(16px)}.admin-bar .gym-header{top:32px}.gym-header-inner{width:min(1220px,calc(100% - 36px));min-height:var(--gym-header-height);margin:auto;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:26px}.custom-logo{display:block;width:auto;max-width:190px;max-height:58px;object-fit:contain}.gym-wordmark{display:flex;align-items:baseline;gap:8px;text-decoration:none;color:var(--gym-night);font-family:var(--gym-font-heading,"Manrope",system-ui,sans-serif);letter-spacing:-.04em}.gym-wordmark strong{font-size:31px;color:var(--gym-blue);font-weight:800}.gym-wordmark span{font-size:20px;font-weight:600}.gym-nav{justify-self:center}.gym-menu{display:flex;align-items:center;gap:30px;list-style:none;margin:0;padding:0}.gym-menu a{position:relative;display:block;padding:30px 0;color:var(--gym-night);text-decoration:none;font-size:14px;font-weight:600}.gym-menu a:after{content:"";position:absolute;left:0;right:100%;bottom:23px;height:2px;background:linear-gradient(90deg,var(--gym-blue),var(--gym-cyan));transition:right .2s}.gym-menu a:hover:after,.gym-menu .current-menu-item>a:after{right:0}.gym-header-actions{display:flex;align-items:center;gap:12px}.gym-lang-switcher{display:flex;gap:4px;padding:4px;border:1px solid var(--gym-border);border-radius:10px;background:#fff}.gym-lang-link{padding:5px 7px;border-radius:7px;text-decoration:none;font-size:11px;font-weight:800;color:var(--gym-muted)}.gym-lang-link.is-current{background:var(--gym-ice);color:var(--gym-blue)}.gym-header-cta{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 18px;border-radius:10px;background:linear-gradient(135deg,var(--gym-blue),#0A66C2);color:#fff;text-decoration:none;font-size:13px;font-weight:800;box-shadow:0 10px 22px rgba(7,84,154,.16)}.gym-menu-toggle{display:none;width:44px;height:44px;padding:0;border:1px solid var(--gym-border);border-radius:10px;background:#fff}.gym-menu-toggle>span{display:block;width:20px;height:2px;margin:4px auto;background:var(--gym-night);border-radius:3px}
.gym-main{min-height:45vh}.gym-main-front,.gym-elementor-fullwidth{width:100%}.gym-main .elementor{width:100%}.gym-content-wrap{width:min(1120px,calc(100% - 36px));margin:60px auto}.gym-post-card{padding:24px 0;border-bottom:1px solid var(--gym-border)}
.gym-footer{color:#d8e9f4;background:var(--gym-night)}.gym-footer-inner{width:min(1220px,calc(100% - 36px));margin:auto;padding:42px 0 32px;display:grid;grid-template-columns:1.1fr .8fr 1fr;gap:44px}.gym-footer-wordmark{font-family:var(--gym-font-heading,"Manrope",system-ui,sans-serif);font-weight:800;font-size:25px;color:#fff}.gym-footer-wordmark span{font-weight:600}.gym-footer-brand p{max-width:340px;margin:10px 0 0;font-size:13px;line-height:1.65;color:#a9c6d8}.gym-footer-menu{list-style:none;margin:0;padding:0;display:grid;gap:9px}.gym-footer-menu a{color:#d8e9f4;text-decoration:none;font-size:13px}.gym-footer-contact{display:flex;flex-direction:column;gap:7px;font-size:13px;line-height:1.5}.gym-footer-contact a{color:#fff;text-decoration:none}.gym-footer-contact span{color:#a9c6d8}.gym-footer-bottom{border-top:1px solid rgba(255,255,255,.08);padding:14px 18px;text-align:center;color:#85a9bf;font-size:11px}
.gym-preloader{position:fixed;inset:0;z-index:99999;display:grid;place-items:center;background:radial-gradient(circle at 50% 42%,#fff 0%,#f3f9fc 58%,#e9f4f9 100%);transition:opacity .45s,visibility .45s}.gym-preloader.is-hidden{opacity:0;visibility:hidden;pointer-events:none}.gym-preloader-inner{width:min(620px,calc(100% - 42px));text-align:center}.gym-preloader-track{position:relative;height:52px;margin:4px 0;border-bottom:1px solid rgba(7,84,154,.12);overflow:hidden}.gym-preloader-track svg{position:absolute;left:-140px;bottom:4px;width:108px;height:38px;fill:none;stroke:var(--gym-blue);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.gym-track-plane svg{animation:gymMove 2.1s linear infinite}.gym-track-truck svg{animation:gymMove 2.8s linear infinite .1s}.gym-track-ship svg{animation:gymMove 3.5s linear infinite .2s}@keyframes gymMove{to{left:calc(100% + 30px)}}.gym-preloader-name{margin-top:24px;font-family:var(--gym-font-heading,"Manrope",system-ui,sans-serif);font-size:31px;font-weight:800;letter-spacing:-.045em;color:var(--gym-blue)}.gym-preloader-name span{color:var(--gym-night);font-weight:600}.gym-preloader-caption{margin-top:4px;color:var(--gym-muted);font-size:12px}
@media(max-width:1024px){.gym-header-inner{grid-template-columns:auto 1fr auto;gap:14px}.gym-menu-toggle{display:block;justify-self:end;order:3}.gym-header-actions{justify-self:end}.gym-nav{position:fixed;top:var(--gym-header-height);left:0;right:0;height:calc(100dvh - var(--gym-header-height));padding:26px 24px 100px;background:rgba(255,255,255,.985);transform:translateY(-120%);opacity:0;visibility:hidden;transition:.25s;overflow:auto}.admin-bar .gym-nav{top:calc(var(--gym-header-height) + 32px)}.gym-nav.is-open{transform:translateY(0);opacity:1;visibility:visible}.gym-menu{display:block}.gym-menu a{padding:15px 0;font-size:22px;font-family:var(--gym-font-heading,"Manrope",system-ui,sans-serif);font-weight:700;border-bottom:1px solid var(--gym-border)}.gym-menu a:after{display:none}.gym-footer-inner{grid-template-columns:1fr 1fr}}
@media(max-width:782px){.admin-bar .gym-header{top:46px}.admin-bar .gym-nav{top:calc(var(--gym-header-height) + 46px)}}
@media(max-width:680px){:root{--gym-header-height:70px}.gym-header-inner{width:min(100% - 22px,1220px)}.custom-logo{max-width:150px;max-height:46px}.gym-wordmark strong{font-size:26px}.gym-wordmark span{font-size:17px}.gym-header-cta{min-height:38px;padding:0 11px;font-size:11px}.gym-lang-switcher{display:none}.gym-menu-toggle{width:40px;height:40px}.gym-footer-inner{grid-template-columns:1fr;gap:25px;padding:34px 0 28px}.gym-preloader-track{height:46px}.gym-preloader-name{font-size:27px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.gym-preloader-track svg{animation:none!important;left:50%;transform:translateX(-50%)}}

/* =========================================================
   PRELOADER GYM V0.1.6
   ========================================================= */
.gym-preloader{
  position:fixed;
  inset:0;
  z-index:999999;
  overflow:hidden;
  background:
    radial-gradient(circle at 50% 48%,rgba(25,181,216,.07),transparent 31%),
    linear-gradient(180deg,#f9fcfd 0%,#eef5f8 100%);
  opacity:1;
  visibility:visible;
  transition:opacity .42s ease,visibility .42s ease;
}
.gym-preloader.is-hidden{
  opacity:0;
  visibility:hidden;
  pointer-events:none;
}
.gym-preloader-scene{
  position:absolute;
  inset:0;
  display:none;
}
.gym-preloader--lanes .gym-preloader-scene--lanes{display:block}
.gym-preloader--logo_random .gym-preloader-scene--random{display:block}

/* Sin líneas horizontales: sólo vehículo, logo y fondo. */
.gym-preloader-lane{
  position:absolute;
  left:0;
  right:0;
  height:110px;
  pointer-events:none;
}
.gym-preloader-lane--top{
  top:10px;
}
.gym-preloader-lane--middle{
  top:calc(50% + 125px);
  transform:translateY(-50%);
}
.gym-preloader-lane--bottom{
  bottom:10px;
}
.gym-preloader-lane--random{
  top:calc(50% + 135px);
  transform:translateY(-50%);
}

.gym-preloader-brand{
  position:absolute;
  left:50%;
  transform:translateX(-50%);
  z-index:3;
  width:min(720px,88vw);
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
}
.gym-preloader-brand--center,
.gym-preloader-brand--random{
  top:50%;
  transform:translate(-50%,-50%);
}
.gym-preloader-logo{
  display:block;
  width:auto;
  height:auto;
  max-width:min(430px,58vw);
  max-height:124px;
  object-fit:contain;
  margin:0 auto 11px;
}
.gym-preloader-brand p{
  margin:0;
  color:#64798c;
  font-size:16px;
  line-height:1.45;
}
.gym-preloader-fallback-logo{
  display:flex;
  align-items:baseline;
  gap:8px;
  margin-bottom:10px;
  font-family:var(--gym-font-heading,"Manrope",system-ui,sans-serif);
}
.gym-preloader-fallback-logo strong{
  color:var(--gym-blue);
  font-size:42px;
  font-weight:800;
}
.gym-preloader-fallback-logo span{
  color:var(--gym-night);
  font-size:30px;
  font-weight:500;
}

.gym-preloader-vehicle,
.gym-preloader-random-vehicle{
  position:absolute;
  left:-240px;
  top:50%;
  transform:translateY(-50%);
  color:#0869b9;
  will-change:transform;
}
.gym-preloader-vehicle img,
.gym-preloader-random-vehicle img{
  display:block;
  width:auto;
  height:auto;
  object-fit:contain;
  filter:drop-shadow(0 8px 13px rgba(7,84,154,.08));
}
.gym-preloader-vehicle svg,
.gym-preloader-random-vehicle svg{
  display:block;
  overflow:visible;
  fill:none;
  stroke:currentColor;
  stroke-width:2.1;
  stroke-linecap:round;
  stroke-linejoin:round;
}

/* Tamaños de los tres slots. */
.gym-preloader-vehicle--air img,
.gym-preloader-vehicle--air svg,
.gym-preloader-random-vehicle[data-vehicle="air"] img,
.gym-preloader-random-vehicle[data-vehicle="air"] svg{
  max-width:145px;
  max-height:76px;
}
.gym-preloader-vehicle--truck img,
.gym-preloader-vehicle--truck svg,
.gym-preloader-random-vehicle[data-vehicle="truck"] img,
.gym-preloader-random-vehicle[data-vehicle="truck"] svg{
  max-width:132px;
  max-height:72px;
}
.gym-preloader-vehicle--ship img,
.gym-preloader-vehicle--ship svg,
.gym-preloader-random-vehicle[data-vehicle="ship"] img,
.gym-preloader-random-vehicle[data-vehicle="ship"] svg{
  max-width:145px;
  max-height:78px;
}

/* Velocidades relativas:
   avión x1.1 / camión x1.0 / barco x0.9 */
.gym-preloader-vehicle--air{
  animation:gymPreloaderTravel 3.64s linear infinite;
}
.gym-preloader-vehicle--truck{
  animation:gymPreloaderTravel 4s linear infinite;
}
.gym-preloader-vehicle--ship{
  animation:gymPreloaderTravel 4.44s linear infinite;
}
@keyframes gymPreloaderTravel{
  0%{transform:translate(-220px,-50%);opacity:0}
  5%{opacity:1}
  94%{opacity:1}
  100%{transform:translate(calc(100vw + 280px),-50%);opacity:0}
}

/* Modo B: sólo un vehículo, elegido al azar, en una única pista bajo logo/texto. */
.gym-preloader-random-vehicle{
  display:none;
}
.gym-preloader-random-vehicle.is-active{
  display:block;
  animation:gymPreloaderTravel 4s linear infinite;
}

.gym-preloader-progress{
  position:absolute;
  left:50%;
  top:calc(50% + 205px);
  transform:translateX(-50%);
  display:flex;
  align-items:center;
  justify-content:center;
  gap:11px;
}
.gym-preloader-progress span{
  width:40px;
  height:4px;
  border-radius:999px;
  background:rgba(7,84,154,.14);
}
.gym-preloader-progress .is-active{
  background:linear-gradient(90deg,var(--gym-cyan),var(--gym-blue));
  animation:gymPreloaderProgress 1.25s ease-in-out infinite;
}
@keyframes gymPreloaderProgress{
  0%,100%{transform:scaleX(.86);opacity:.68}
  50%{transform:scaleX(1.12);opacity:1}
}

@media(max-width:760px){
  .gym-preloader-lane{
    height:86px;
  }
  .gym-preloader-lane--top{top:6px}
  .gym-preloader-lane--bottom{bottom:6px}
  .gym-preloader-lane--middle{top:calc(50% + 112px)}
  .gym-preloader-lane--random{top:calc(50% + 118px)}

  .gym-preloader-logo{
    max-width:min(300px,74vw);
    max-height:90px;
  }
  .gym-preloader-brand p{
    max-width:84vw;
    font-size:14px;
  }

  .gym-preloader-vehicle--air img,
  .gym-preloader-vehicle--air svg,
  .gym-preloader-random-vehicle[data-vehicle="air"] img,
  .gym-preloader-random-vehicle[data-vehicle="air"] svg{
    max-width:105px;
    max-height:60px;
  }
  .gym-preloader-vehicle--truck img,
  .gym-preloader-vehicle--truck svg,
  .gym-preloader-random-vehicle[data-vehicle="truck"] img,
  .gym-preloader-random-vehicle[data-vehicle="truck"] svg{
    max-width:98px;
    max-height:58px;
  }
  .gym-preloader-vehicle--ship img,
  .gym-preloader-vehicle--ship svg,
  .gym-preloader-random-vehicle[data-vehicle="ship"] img,
  .gym-preloader-random-vehicle[data-vehicle="ship"] svg{
    max-width:105px;
    max-height:60px;
  }

  .gym-preloader-progress{
    top:calc(50% + 172px);
  }
}

@media(prefers-reduced-motion:reduce){
  .gym-preloader-vehicle,
  .gym-preloader-random-vehicle.is-active{
    animation-duration:8s!important;
  }
}

.gym-footer-bottom{
	display:flex;
	align-items:center;
	justify-content:center;
	gap:14px;
	flex-wrap:wrap;
}
.gym-footer-credit{
	color:#85a9bf;
}
.gym-footer-credit::before{
	content:"•";
	margin-right:14px;
	opacity:.55;
}
.gym-footer-credit a{
	color:#b9d7e8;
	text-decoration:none;
	font-weight:700;
}
.gym-footer-credit a:hover{
	color:#fff;
}
@media(max-width:560px){
	.gym-footer-credit::before{display:none}
}


/* Header logo sizing fix */
.gym-header .custom-logo-link{
  display:flex;
  align-items:center;
  line-height:0;
}
.gym-header .custom-logo-link img.custom-logo{
  height:auto!important;
  max-height:none!important;
  object-fit:contain;
}


.gym-footer-social{
  display:flex;
  gap:14px;
  margin-top:14px;
}
.gym-footer-social a{
  color:#b9d7e8;
  text-decoration:none;
  font-size:12px;
  font-weight:700;
}
.gym-footer-social a:hover{color:#fff}


/* =========================================================
   V0.2.0 — MOBILE HEADER / MODERN FOOTER
   ========================================================= */
@media(max-width:1024px){
  .gym-header{
    background:#fff!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
    box-shadow:0 8px 26px rgba(18,48,74,.08);
  }
  .gym-header-inner{position:relative;z-index:1003}
  .gym-menu-toggle{position:relative;z-index:1005;background:#fff}
  .gym-menu-toggle>span{transition:transform .22s ease,opacity .22s ease}
  .gym-menu-toggle.is-open>span:nth-child(1){transform:translateY(6px) rotate(45deg)}
  .gym-menu-toggle.is-open>span:nth-child(2){opacity:0}
  .gym-menu-toggle.is-open>span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
  .gym-nav{
    position:fixed!important;
    z-index:1001!important;
    top:var(--gym-header-height)!important;
    left:0!important;
    right:0!important;
    width:100%!important;
    height:calc(100dvh - var(--gym-header-height))!important;
    padding:34px max(24px,calc((100vw - 720px)/2)) 90px!important;
    background:#fff!important;
    box-shadow:none!important;
    transform:translateX(100%)!important;
    opacity:1!important;
    visibility:hidden!important;
    transition:transform .28s cubic-bezier(.3,.8,.3,1),visibility .28s!important;
    overflow:auto!important;
  }
  .admin-bar .gym-nav{top:calc(var(--gym-header-height) + 32px)!important;height:calc(100dvh - var(--gym-header-height) - 32px)!important}
  .gym-nav.is-open{transform:translateX(0)!important;visibility:visible!important}
  .gym-menu{display:grid!important;gap:0!important;max-width:720px;margin:0 auto!important}
  .gym-menu a{
    padding:18px 4px!important;
    color:var(--gym-night)!important;
    font-size:24px!important;
    line-height:1.2!important;
    border-bottom:1px solid rgba(7,84,154,.11)!important;
    background:#fff!important;
  }
  body.gym-menu-open::after{
    content:"";
    position:fixed;
    z-index:998;
    inset:0;
    background:rgba(18,48,74,.18);
    pointer-events:none;
  }
}
@media(max-width:782px){
  .admin-bar .gym-nav{top:calc(var(--gym-header-height) + 46px)!important;height:calc(100dvh - var(--gym-header-height) - 46px)!important}
}
@media(max-width:680px){
  .gym-header{background:#fff!important}
  .gym-header-inner{min-height:var(--gym-header-height);background:#fff}
  .gym-brand,.gym-header-actions,.gym-menu-toggle{position:relative;z-index:1004}
  .gym-nav{padding:28px 22px 80px!important}
  .gym-menu a{font-size:22px!important;padding:17px 2px!important}
}

/* Modern footer */
.gym-footer{background:linear-gradient(145deg,var(--gym-night),#0b3754);color:#d9e9f3}
.gym-footer-main{
  width:min(1220px,calc(100% - 40px));
  margin:0 auto;
  padding:54px 0 42px;
  display:grid;
  grid-template-columns:minmax(0,1.2fr) minmax(190px,.65fr) minmax(280px,.85fr);
  gap:54px;
  align-items:start;
}
.gym-footer-logo img{display:block;width:auto;height:auto;object-fit:contain}
.gym-footer-brand p{max-width:390px;margin:14px 0 0;color:#a9c6d8;font-size:13px;line-height:1.7}
.gym-footer-modes{display:flex;gap:7px;flex-wrap:wrap;margin-top:20px}
.gym-footer-modes span{padding:6px 9px;border:1px solid rgba(255,255,255,.12);border-radius:999px;color:#bcd5e3;font-size:8px;font-weight:800;letter-spacing:.12em}
.gym-footer-nav-column h3,.gym-footer-contact-column h3{margin:0 0 17px;color:#fff;font-family:var(--gym-font-heading,"Manrope",system-ui,sans-serif);font-size:15px}
.gym-footer-menu{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.gym-footer-menu a{color:#bcd1de;text-decoration:none;font-size:12px;transition:.2s}
.gym-footer-menu a:hover{color:#fff;transform:translateX(2px)}
.gym-footer-contact{display:flex;flex-direction:column;gap:8px;font-size:12px;line-height:1.55}
.gym-footer-contact a{color:#fff;text-decoration:none}.gym-footer-contact span{color:#abc5d5}
.gym-footer-social{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}
.gym-social-link{display:grid;place-items:center;width:34px;height:34px;border:1px solid rgba(255,255,255,.15);border-radius:50%;color:#d9eaf4!important;text-decoration:none!important;background:rgba(255,255,255,.035);transition:.2s}
.gym-social-link span{font-size:9px;font-weight:800;text-transform:lowercase}
.gym-social-link:hover{transform:translateY(-2px);border-color:rgba(25,181,216,.55);background:rgba(25,181,216,.11);color:#fff!important}
.gym-footer-bottom{width:min(1220px,calc(100% - 40px));margin:0 auto;padding:16px 0 19px;border-top:1px solid rgba(255,255,255,.08);display:flex;align-items:center;justify-content:space-between;gap:18px;text-align:left;color:#85a9bf;font-size:10px}
.gym-footer-legal{display:flex;align-items:center;gap:15px;flex-wrap:wrap}.gym-footer-legal a,.gym-footer-credit a{color:#aac8d9;text-decoration:none}.gym-footer-legal a:hover,.gym-footer-credit a:hover{color:#fff}
.gym-footer-credit::before{display:none!important}
@media(max-width:900px){.gym-footer-main{grid-template-columns:1fr 1fr}.gym-footer-brand{grid-column:1/-1}.gym-footer-bottom{align-items:flex-start;flex-direction:column}}
@media(max-width:560px){.gym-footer-main{width:min(100% - 28px,1220px);padding:40px 0 32px;grid-template-columns:1fr;gap:30px}.gym-footer-brand{grid-column:auto}.gym-footer-bottom{width:min(100% - 28px,1220px);padding:15px 0 18px}.gym-footer-social{gap:7px}}


/* =========================================================
   V0.2.2 — Header con aire + iconos sociales reales
   ========================================================= */
.gym-brand,
.gym-brand .custom-logo-link{
  display:flex;
  align-items:center;
}
.gym-social-link svg{
  display:block;
  width:15px;
  height:15px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.gym-social-link--facebook svg path,
.gym-social-link--youtube svg path{
  stroke:none;
}
