/* Authorized DesignMe interaction port. SOURCE: /insights header CSS.
   450/380ms height reveal; +/-48px switching; -8px entry/exit.
   JVDS navigation content is retained. */
.header{--jvds-mega-height:0px;--jvds-mega-duration:450ms;--jvds-mega-ease:cubic-bezier(.22,1,.36,1);--jvds-mega-fold-ease:cubic-bezier(.65,0,.35,1)}
.header .jvds-mega-plate,.header .jvds-megamenu{position:fixed;top:var(--jvds-mega-top,80px);left:var(--jvds-mega-left,24px);width:var(--jvds-mega-width,calc(100vw - 48px));height:var(--jvds-mega-height);margin:0;line-height:normal;text-align:left;white-space:normal;visibility:hidden;transition:height var(--jvds-mega-duration) var(--jvds-mega-fold-ease),visibility 0s linear var(--jvds-mega-duration)}
.header[data-mega-open] .jvds-mega-plate,.header[data-mega-open] .jvds-megamenu{transition-timing-function:var(--jvds-mega-ease),linear}
.header .jvds-mega-plate{background:#fff;border:1px solid rgba(3,17,28,.1);border-top:0;box-shadow:0 8px 24px rgba(3,17,28,.08);pointer-events:none;z-index:110}
.header[data-mega-open] .jvds-mega-plate{visibility:visible;transition-delay:0s,0s}
.header .jvds-megamenu{z-index:111;overflow:hidden;pointer-events:none}
.header .jvds-megamenu[hidden]{display:none!important}
.header .jvds-megamenu.is-active{visibility:visible;pointer-events:auto;transition-delay:0s,0s}
.header .jvds-megamenu-panel{padding:0;background:transparent;color:#11151a;border-radius:0;box-shadow:none;opacity:0;transform:translate3d(var(--jvds-mega-x,0px),var(--jvds-mega-y,0px),0);transition:opacity .2s ease,transform var(--jvds-mega-duration) var(--jvds-mega-ease)}
.header .jvds-megamenu.is-active .jvds-megamenu-panel{opacity:1;transform:none;transition:opacity .3s ease 60ms,transform var(--jvds-mega-duration) var(--jvds-mega-ease)}
.header .jvds-megamenu.no-anim .jvds-megamenu-panel{transition:none}
.header .jvds-megamenu-heading{margin:0;padding:14px 28px;border-bottom:1px solid rgba(3,17,28,.1);color:#697078;font-size:12px;line-height:18px;font-weight:400;letter-spacing:.06em}
.header .jvds-megamenu-cover{display:none}
.header .jvds-megamenu-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 20px;padding:12px 16px 20px}
.header .jvds-menu-card{position:relative;isolation:isolate;display:flex;align-items:center;gap:14px;min-width:0;min-height:88px;padding:12px 16px;border-radius:2px;background:transparent;color:#11151a;text-decoration:none;text-align:left;line-height:normal}
.header .jvds-menu-card::before{content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit;background:rgba(3,17,28,.0275);transform:scaleX(0);transform-origin:100%;transition:transform .28s var(--jvds-mega-ease)}
.header .jvds-menu-card:is(:hover,:focus-visible)::before{transform:scaleX(1);transform-origin:0}
.header .jvds-menu-card.is-current::before{background:rgba(3,17,28,.05);transform:none;transition:none}
.header .jvds-menu-card:hover,.header .jvds-menu-card:focus-visible{color:#11151a;background:transparent;outline:none}
.header .jvds-menu-card:focus-visible{box-shadow:inset 0 0 0 2px #98ad20}
.header .jvds-menu-copy{display:flex;flex-direction:column;align-items:flex-start;min-width:0;gap:6px}
.header .jvds-menu-upload{display:block;flex:0 0 44px;width:44px;height:44px}
.header .jvds-menu-upload img{width:100%;height:100%;object-fit:contain}
.header .jvds-menu-upload .img2{display:none}
.header .jvds-menu-card:is(:hover,:focus-visible,.is-current) .jvds-menu-upload .img1{display:none}
.header .jvds-menu-card:is(:hover,:focus-visible,.is-current) .jvds-menu-upload .img2{display:block}
.header .jvds-menu-title{font-size:16px;font-weight:500;line-height:1.4;color:#11151a}
.header .jvds-menu-description{font-size:12px;font-weight:400;line-height:1.65;color:#697078}
.header .jvds-mega-overlay{position:fixed;inset:var(--jvds-mega-top,80px) 0 0;z-index:100;background:#03111c40;opacity:0;pointer-events:none;transition:opacity .35s}
.header[data-mega-open] .jvds-mega-overlay{opacity:1;pointer-events:auto}
.header .jvds-nav-pill{display:none}
.header button.v1{font:inherit;color:inherit;background:none;border:0;cursor:pointer;text-align:inherit}
/* Restore the original JVDS capsule. Hover and current-page colors share
   exactly the same surface, so their size and rounding cannot drift. */
.header .nav>li.on>.v1{background:transparent}
.header .nav>li>.v1::before{content:"";position:absolute;z-index:-1;top:50%;left:50%;width:calc(100% + 28px);height:44px;border-radius:999px;background-color:#e0f94c;opacity:0;transform:translate(-50%,-50%);transition:opacity .65s cubic-bezier(.2,.65,.3,1),background-color .16s ease;pointer-events:none}
.header .nav>li.on>.v1::before{background-color:rgba(3,17,28,.05);opacity:1}
.header .nav>li>.v1:is(:hover,:focus-visible)::before{background-color:#e0f94c;opacity:1}
.header .nav .service-sub-icon{position:relative;display:inline-block;width:10px;height:10px;flex-shrink:0;border:0;transform:none;-webkit-transform:none;transition:transform .25s var(--jvds-mega-ease)}
.header .service-sub-icon::before,.header .service-sub-icon::after{content:"";position:absolute;inset:50% 0 auto;height:1.4px;background:currentColor;transform:translateY(-50%)}
.header .service-sub-icon::after{transform:translateY(-50%) rotate(90deg)}
.header .nav .service-sub-toggle[aria-expanded=true] .service-sub-icon{transform:rotate(45deg);-webkit-transform:rotate(45deg)}
@media(min-width:801px){
 .header .jvds-megamenu-content.has-cover{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);align-items:stretch;gap:8px;padding:8px}
 .header .jvds-megamenu-content.has-cover>.jvds-megamenu-grid{padding:0}
 .header .jvds-megamenu-content.has-cover>.jvds-megamenu-grid>.jvds-menu-card{min-height:0}
 /* Keep 8px above and below the cover, including when translated text wraps.
    The 284px desktop baseline prevents narrow columns from shrinking the image. */
 .header .jvds-megamenu-cover{position:relative;display:block;align-self:stretch;min-width:0;min-height:284px;width:100%;overflow:hidden;border-radius:2px;background:#f4f5f6}
 .header .jvds-megamenu-cover img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:center}
 .header .hdr{position:relative;height:100%}
 .header .nav{display:inline-flex;align-items:center;gap:24px;height:100%}
 .header .nav>li{margin:0;line-height:normal}
 .header .nav>li>.v1{position:relative;z-index:1;display:inline-flex;align-items:center;justify-content:center;gap:8px;height:44px;line-height:44px;padding:0 14px;border-radius:0;font-size:14px;font-weight:500;color:#11151a;vertical-align:middle}
 .header .nav>li>.v1::before{width:100%}
 .header .nav>li>.v1:focus-visible{color:#000;outline:2px solid #98ad20;outline-offset:2px}
 /* Hero headers use white tabs until the solid header takes over on scroll.
    Keep dark text on the green hover/focus capsule and on mobile's white menu. */
 body:is(.page-index,.page-news-detail) .header:not(.fixed):not(.hd-bg) .nav>li>.v1:not(:hover):not(:focus-visible){color:#fff}
 .header[data-mega-open]{background:#fff!important;border-bottom:1px solid rgba(3,17,28,.1)!important}
}
@media(max-width:800px){
 .header .jvds-mega-plate,.header .jvds-mega-overlay,.header .jvds-nav-pill{display:none}
 .header .jvds-megamenu{position:static;width:100%;height:auto;max-height:0;opacity:0;visibility:hidden;overflow:hidden;transition:max-height .35s var(--jvds-mega-ease),opacity .2s ease,visibility 0s linear .35s}
 .header .is-sub-open>.jvds-megamenu{max-height:650px;opacity:1;visibility:visible;pointer-events:auto;transition-delay:0s}
 .header .jvds-megamenu-panel{margin:6px 0;padding:8px 0;background:transparent;opacity:1;transform:none;transition:none;border-radius:2px}
 .header .jvds-megamenu-heading{display:none}
 .header .jvds-megamenu-grid{grid-template-columns:1fr;gap:8px;padding:0}
 .header .jvds-menu-card{min-height:0;padding:0;gap:12px 16px;opacity:0;transform:translateY(28px);transition:opacity .56s cubic-bezier(.4,0,1,1),transform .56s cubic-bezier(.4,0,1,1);transition-delay:0s}
 /* Match the main mobile navigation: first item at 100ms, then every 80ms. */
 .jvds-mobile-nav-open .header .is-sub-open>.jvds-megamenu .jvds-menu-card{opacity:1;transform:translateY(0);transition-duration:.68s;transition-timing-function:cubic-bezier(.22,1,.36,1);transition-delay:calc(.1s + var(--jvds-menu-order,0)*.08s)}
 .header .jvds-megamenu .jvds-menu-card::before{background:transparent}
 .header .jvds-menu-icon,.header .jvds-menu-upload{width:36px;height:36px;flex-basis:36px}
 .header .jvds-menu-title{font-size:15px}
 .header .jvds-menu-description{display:none}
 .header .nav button.service-sub-toggle{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:0;font-size:24px;font-weight:600;line-height:48px}
 .header .nav .service-sub-icon{width:12px;height:12px;transition-duration:.36s}
 .header .nav .has-service-sub.is-sub-open .service-sub-icon{transform:rotate(45deg);-webkit-transform:rotate(45deg)}
}
@media(prefers-reduced-motion:reduce){.header .jvds-mega-plate,.header .jvds-megamenu,.header .jvds-megamenu-panel,.header .jvds-nav-pill,.header .service-sub-icon,.header .jvds-mega-overlay{transition:none}.header .jvds-megamenu-panel{transform:none}.header .jvds-menu-card::before,.header .nav>li>.v1::before{transition:none}}
@media(max-width:800px) and (prefers-reduced-motion:reduce){.header .jvds-menu-card,.jvds-mobile-nav-open .header .is-sub-open>.jvds-megamenu .jvds-menu-card{transition:none;transform:none}}
