/* JEL Studio — final responsive hardening. Loaded after all page packages. */
html,body{max-width:100%}
.jghf-header,.jghf-footer,.jel-page,.jel-commercial-main,.jcl-body main{max-width:100%}
.jel-page iframe,.jel-commercial-main iframe,.jcl-body iframe{max-width:100%}

/* Compact and refine the animated JEL footer signature. */
.jghf-footer-signature{
  min-height:0!important;
  padding:clamp(24px,2.4vw,38px) 16px clamp(18px,1.8vw,28px)!important;
  overflow:hidden;
  --jghf-glow-x:50%;
  --jghf-glow-y:58%;
}
.jghf-footer-signature::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  background:radial-gradient(circle 250px at var(--jghf-glow-x) var(--jghf-glow-y),rgba(182,255,53,.14),rgba(182,255,53,.045) 42%,transparent 72%);
  opacity:.68;
  transition:opacity .35s ease;
}
.jghf-footer-signature:hover::after{opacity:1}
.jghf-footer-signature__word{
  position:relative;
  z-index:1;
  width:min(100%,1000px)!important;
  font-size:clamp(130px,20vw,360px)!important;
  line-height:.7!important;
  letter-spacing:-.085em!important;
  transform-origin:50% 80%;
}
.jghf-footer-signature__word span{
  will-change:transform,filter;
  transition:transform .34s cubic-bezier(.2,.8,.2,1),filter .3s ease,opacity .3s ease!important;
}
.jghf-footer-signature__word span:hover{
  filter:drop-shadow(0 0 10px rgba(255,255,255,.32)) drop-shadow(0 0 26px rgba(182,255,53,.28));
}
.jghf-footer-signature>p{
  z-index:1;
  margin-top:clamp(14px,1.6vw,24px)!important;
  font-size:clamp(11px,.92vw,15px)!important;
  letter-spacing:.15em!important;
}
.jghf-footer-signature.jghf-signature-enhanced .jghf-footer-signature__word{
  opacity:0;
  transform:translate3d(0,26px,0) scale(.975);
  filter:blur(5px) drop-shadow(0 0 0 rgba(182,255,53,0));
  transition:opacity .72s ease,transform .92s cubic-bezier(.16,1,.3,1),filter .82s ease;
}
.jghf-footer-signature.jghf-signature-enhanced>p{
  opacity:0;
  transform:translateY(12px);
  transition:opacity .58s ease .22s,transform .72s cubic-bezier(.16,1,.3,1) .22s;
}
.jghf-footer-signature.jghf-signature-enhanced.is-inview .jghf-footer-signature__word{
  opacity:1;
  transform:translate3d(0,0,0) scale(1);
  filter:drop-shadow(0 0 28px rgba(182,255,53,.12));
}
.jghf-footer-signature.jghf-signature-enhanced.is-inview>p{opacity:1;transform:translateY(0)}

/* Full-width, more readable global footer. The original package caps its
   content at 1320px, which leaves oversized side gutters on wide screens. */
.jghf-footer .jghf-shell{
  width:calc(100% - clamp(32px,4vw,72px));
  max-width:none;
}
.jghf-footer__wordmark{font-size:clamp(54px,5.4vw,84px)!important}
.jghf-footer__brand p{
  max-width:520px!important;
  font-size:clamp(16px,1.05vw,19px)!important;
  line-height:1.62!important;
}
.jghf-footer__column h2{font-size:clamp(12px,.78vw,14px)!important}
.jghf-footer__column a,
.jghf-footer__column>span{
  font-size:clamp(15px,.94vw,17px)!important;
  line-height:1.48!important;
}
.jghf-footer__contacts .jghf-footer__phone{font-size:clamp(18px,1.16vw,21px)!important}
.jghf-footer__legal{font-size:clamp(11px,.72vw,13px)!important}

/* Slightly larger and more legible global header without allowing the desktop
   navigation to wrap at the 1180px menu breakpoint. */
@media(min-width:1181px){
  :root{--jghf-header-height:92px!important}
  .jghf-header.jel-header{padding:12px 0!important}
  .jghf-header.jel-header.is-sticky,
  .jghf-header.jel-header.jghf-is-scrolled{padding:9px 0!important}
  .jghf-header .jghf-header__bar{
    width:min(1500px,calc(100vw - 48px))!important;
    min-height:68px!important;
  }
  .jghf-header .jghf-logo{
    min-width:118px!important;
    padding-inline:26px!important;
    font-size:30px!important;
  }
  .jghf-header .jghf-nav{gap:2px!important;padding-inline:9px!important}
  .jghf-header .jghf-nav__item>a,
  .jghf-header .jghf-nav__link{
    min-height:52px!important;
    padding-inline:12px!important;
    font-size:16px!important;
  }
  .jghf-header .jghf-header__cta{
    min-width:202px!important;
    padding-inline:26px!important;
    font-size:15px!important;
  }
  .jghf-header .jghf-mega{top:calc(var(--jghf-admin-offset) + 96px)!important}
}

@media(min-width:761px) and (max-width:1180px){
  :root{--jghf-header-height:88px!important}
  .jghf-header .jghf-header__bar{min-height:66px!important}
  .jghf-header .jghf-logo{min-width:104px!important;font-size:29px!important}
  .jghf-header .jghf-menu-toggle b{font-size:11px!important}
  .jghf-header .jghf-header__cta{min-width:178px!important;font-size:14px!important}
}

@media(max-width:1180px){
  .jghf-header__bar{max-width:calc(100vw - 16px)}
  .jghf-menu-toggle{min-width:44px;min-height:44px;touch-action:manipulation}
  .jghf-header__cta{white-space:normal;text-align:center}
}

@media(max-width:820px){
  :where(.jel-page-hero,.jel-case-hero,.jhero,.jcl-hero,.jcl-article-hero,.jtb-article-hero,.jls-wp-legal,.jls-wp-system,.jel-vr-hero) h1{
    max-width:100%;
    font-size:clamp(36px,9.8vw,52px)!important;
    line-height:1.02!important;
    overflow-wrap:anywhere;
    word-break:normal;
    hyphens:auto;
    text-wrap:pretty;
  }
  :where(.jbody-content,.jcl-article,.jtb-article-content,.jls-wp-legal,.jls-wp-system) h2{
    max-width:100%;
    font-size:clamp(30px,8vw,44px)!important;
    overflow-wrap:anywhere;
    hyphens:auto;
    text-wrap:pretty;
  }
  input:not([type="checkbox"]):not([type="radio"]),select,textarea{font-size:16px!important}
  .jel-actions>a,.jel-actions>button,.jcl-cta,.jls-wp-button{max-width:100%;white-space:normal;text-align:center}
  .jcl-hero,.jcl-article-hero{padding-top:104px;padding-bottom:58px}
  .jcl-cover{margin-top:44px}
  .jcl-card>div{padding:26px}
  .jls-wp-legal,.jls-wp-system{width:calc(100% - 24px);padding:22px}
  .jghf-footer-signature{padding:24px 14px 20px!important}
  .jghf-footer-signature__word{width:100%!important;font-size:clamp(92px,27vw,180px)!important;line-height:.72!important}
  .jghf-footer-signature>p{margin-top:14px!important;font-size:10px!important;letter-spacing:.12em!important}
  .jghf-mobile-panel{
    inset-inline:0!important;
    width:auto!important;
    max-width:none!important;
    padding-bottom:max(18px,env(safe-area-inset-bottom));
  }
}

@media(max-width:520px){
  :where(.jel-page-hero,.jel-case-hero,.jhero,.jcl-hero,.jcl-article-hero,.jtb-article-hero,.jls-wp-legal,.jls-wp-system,.jel-vr-hero) h1{
    font-size:clamp(34px,10.8vw,44px)!important;
  }
  .jel-logo-marquee__head h2{font-size:clamp(34px,10.8vw,46px)!important;line-height:1!important}
  .jghf-header__bar{grid-template-columns:minmax(76px,90px) minmax(0,1fr) max-content}
  .jghf-logo{min-width:76px;padding-inline:13px}
  .jghf-header__cta{min-width:98px;max-width:106px;padding-inline:8px;font-size:9px}
  .jghf-header__actions{min-width:0;max-width:100%;justify-content:flex-end}
  .jghf-menu-toggle{justify-self:end;margin-right:2px;padding-inline:8px}
  .jcl-wrap{width:min(calc(100% - 24px),1500px)}
  .jcl-card>div{padding:22px}
  .jcl-card img,.jcl-card:first-child img{height:auto;min-height:220px;max-height:320px}
  .jls-wp-cookie{bottom:max(10px,env(safe-area-inset-bottom));width:calc(100vw - 20px);padding:16px}
  .jghf-footer-signature{padding-top:20px!important}
  .jghf-footer-signature__word{font-size:clamp(86px,29vw,140px)!important}
}

@media(max-width:380px){
  :where(.jel-page-hero,.jel-case-hero,.jhero,.jcl-hero,.jcl-article-hero,.jtb-article-hero,.jls-wp-legal,.jls-wp-system,.jel-vr-hero) h1{font-size:34px!important}
  .jghf-header__cta{min-width:96px;max-width:96px;font-size:8.5px}
}

@media(prefers-reduced-motion:reduce){
  .jel-logo-marquee__track,.jel-vr-hero__led-track{animation:none!important}
  .jghf-footer-signature__word,
  .jghf-footer-signature__word span,
  .jghf-footer-signature>p{opacity:1!important;transform:none!important;filter:none!important;transition:none!important}
  .jghf-footer-signature::after{display:none}
}
