/* Global navigation: one DOM/tree across desktop, tablet and mobile. */
:root { --jn-navy:#17245e; --jn-pink:#d92668; --jn-text:#53617b; --jn-line:#edf0f5; --header-h:88px; }
body { padding-top:var(--header-h); }
.jn-header, .jn-footer { color:var(--jn-navy); font-family:Poppins,Arial,sans-serif; line-height:1.5; }
.jn-header *, .jn-footer * { box-sizing:border-box; }
.jn-header [hidden], .jn-footer [hidden] { display:none!important; }
.jn-header { position:fixed; inset:0 0 auto; z-index:950; background:#fffdfcf7; box-shadow:0 2px 14px #17245e08; }
.jn-inner { max-width:1440px; margin:auto; padding:12px 36px; display:flex; align-items:center; gap:32px; min-height:88px; }
.jn-header .jn-logo { display:flex; flex-shrink:0; }
.jn-header .jn-logo img { width:110px; height:60px; object-fit:contain; }
.jn-nav { flex:1; display:flex; align-items:center; justify-content:space-between; gap:24px; min-width:0; }
.jn-primary { padding:0; margin:0; display:flex; align-items:center; justify-content:center; gap:clamp(10px,1.4vw,24px); list-style:none; min-width:0; }
.jn-header :is(.jn-parent,.jn-top-link) { display:inline-flex; gap:8px; justify-content:center; align-items:center; white-space:nowrap; min-height:48px; padding:12px 9px; font:600 13px Poppins,Arial,sans-serif; color:var(--jn-navy); border:0; border-radius:12px; background:transparent; text-decoration:none; cursor:pointer; }
.jn-header :is(.jn-parent,.jn-top-link)>i { display:none; }
.jn-header :is(.jn-parent[aria-expanded=true],.jn-current>.jn-parent,.jn-current>.jn-top-link) { background:#fff0f5; color:var(--jn-pink); }
.jn-header :is(.jn-parent,.jn-top-link):hover { background:#fff3f7; color:var(--jn-pink); }
.jn-chevron { display:inline-block; width:7px; height:7px; margin:-3px 2px 0 3px; border-right:1.7px solid currentColor; border-bottom:1.7px solid currentColor; transform:rotate(45deg); flex-shrink:0; transition:transform .2s ease; }
.jn-parent[aria-expanded=true] .jn-chevron { transform:rotate(225deg); }
.jn-header .jn-cta { display:inline-flex; justify-content:center; align-items:center; gap:14px; background:var(--jn-pink); border:1px solid var(--jn-pink); border-radius:999px; padding:12px 24px; min-height:48px; color:#fff; font-size:12px; font-weight:600; text-decoration:none; text-align:center; }
.jn-main-cta { flex-shrink:0; white-space:nowrap; }
.jn-header :is(a,button):focus-visible, .jn-footer :is(a,button):focus-visible { outline:3px solid #143b8f; outline-offset:4px; }
.jn-header .jn-toggle, .jn-drawer-top, .jn-mobile-support { display:none; }
.jn-header .jn-panel { position:absolute; top:100%; left:50%; transform:translateX(-50%); width:min(1420px,calc(100vw - 48px)); padding:24px; background:#fffdfc; border-radius:0 0 24px 24px; box-shadow:0 16px 40px #17245e20; max-height:calc(100dvh - var(--header-h) - 24px); overflow:auto; }
.jn-panel-grid { display:grid; grid-template-columns:1fr 1.12fr 1.05fr 1.05fr; gap:20px; }
.jn-group { padding:6px 18px 6px 0; min-width:0; border-right:1px solid var(--jn-line); }
.jn-header .jn-group h2 { display:flex; align-items:center; gap:12px; font-size:14px; font-weight:600; margin:0 0 18px; line-height:1.4; color:var(--jn-navy); letter-spacing:0; }
.jn-group h2 i { font-size:25px; color:var(--jn-pink); }
.jn-group:nth-child(2) h2 i { color:#d48e0c; }
.jn-group-links { display:grid; gap:8px; }
.jn-header .jn-entry { display:flex; align-items:center; gap:12px; color:var(--jn-navy); text-decoration:none; border-radius:14px; padding:8px 5px; min-height:54px; }
.jn-entry:hover { background:#fff3f7; }
.jn-entry img { width:62px; height:52px; object-fit:cover; border-radius:10px; flex-shrink:0; }
.jn-entry>i { font-size:24px; width:38px; text-align:center; color:#8764ba; flex-shrink:0; }
.jn-entry-copy { flex:1; min-width:0; }
.jn-header .jn-entry strong { font-size:12px; font-weight:600; display:block; line-height:1.4; }
.jn-header .jn-description { display:block; color:var(--jn-text); font-size:11px; margin-top:4px; line-height:1.5; }
.jn-entry-arrow { display:inline-block; width:7px; height:7px; margin:0 5px 0 4px; border-right:1.7px solid currentColor; border-top:1.7px solid currentColor; transform:rotate(45deg); flex-shrink:0; transition:translate .2s ease; }
.jn-entry:hover .jn-entry-arrow { translate:3px 0; }
.jn-action-arrow { position:relative; display:inline-block; width:16px; height:12px; flex-shrink:0; }
.jn-action-arrow::before { content:""; position:absolute; left:0; right:1px; top:5px; height:1.7px; background:currentColor; border-radius:2px; }
.jn-action-arrow::after { content:""; position:absolute; right:1px; top:2px; width:7px; height:7px; border-top:1.7px solid currentColor; border-right:1.7px solid currentColor; transform:rotate(45deg); }
.jn-header .jn-type-featured { background:#f9f7f9; padding:0; overflow:hidden; align-items:stretch; }
.jn-type-featured img { width:46%; height:160px; border-radius:14px 0 0 14px; }
.jn-type-featured .jn-entry-copy { align-self:center; padding:12px 0; }
.jn-type-featured .jn-entry-arrow { align-self:flex-end; margin:0 14px 16px 4px; }
.jn-header .jn-type-cta { background:#f8f5fb; padding:14px; margin-top:12px; }
.jn-guide { padding:16px; background:#fff5f8; border-radius:20px; min-width:0; }
.jn-guide>img { width:100%; height:156px; object-fit:contain; border-radius:14px; display:block; margin-bottom:12px; }
.jn-header .jn-guide h2 { font-size:21px; line-height:1.2; margin:0 0 12px; color:var(--jn-navy); letter-spacing:-.02em; }
.jn-header .jn-guide p { font-size:12px; line-height:1.5; margin:0 0 18px; color:var(--jn-text); }
.jn-guide .jn-cta { font-size:11px; padding:12px; width:100%; }
.jn-badge { display:inline-block; background:var(--jn-pink); color:#fff; border-radius:999px; padding:3px 8px; font-size:9px; margin-top:4px; }
.jn-header :is(.jn-panel-business,.jn-panel-lumi) { width:min(960px,calc(100vw - 48px)); }
.jn-panel-business .jn-panel-grid, .jn-panel-lumi .jn-panel-grid { grid-template-columns:1fr 1.2fr; }
.jn-panel-business .jn-guide { background:#f6f8fc; }
.jn-panel-business .jn-guide>img { height:130px; object-fit:cover; }
.jn-panel-business .jn-guide { position:relative; overflow:hidden; padding-right:44%; min-height:370px; }
.jn-panel-business .jn-guide>img { position:absolute; inset:0 0 0 auto; width:40%; height:100%; border-radius:0; margin:0; }
.jn-panel-business .jn-business-proof { grid-template-columns:1fr; }
.jn-business-proof { display:grid; grid-template-columns:1fr 1fr; gap:8px; font-size:11px; padding:0; margin:16px 0; list-style:none; color:var(--jn-navy); }
.jn-business-proof li::before { content:'✓ '; color:#5c58b4; }
.jn-panel-business .jn-group, .jn-panel-lumi .jn-group { border:0; }
.jn-panel-business .jn-entry, .jn-panel-lumi .jn-entry { padding:12px 8px; }
.jn-header .jn-backdrop { position:fixed; inset:var(--header-h) 0 0; background:#17245e28; z-index:-1; }
.jn-skip { position:fixed; left:20px; top:-80px; z-index:99999; padding:14px; background:white; color:#143b8f; border-radius:10px; }
.jn-skip:focus { top:12px; }
.jn-footer { background:#fffdfc; border-top:1px solid var(--jn-line); padding:48px 0 26px; }
.jn-footer-inner { max-width:1320px; margin:auto; padding:0 36px; }
.jn-footer-brand { display:flex; align-items:center; gap:28px; margin-bottom:32px; }
.jn-footer-brand img { width:125px; height:70px; object-fit:contain; }
.jn-footer-brand p { font-size:13px; color:var(--jn-text); margin:0; }
.jn-footer-columns { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:28px; }
.jn-footer .jn-footer-column h2 { font:600 15px Poppins,Arial,sans-serif; color:var(--jn-navy); margin:0 0 20px; letter-spacing:0; }
.jn-footer-column ul { list-style:none; padding:0; margin:0; display:grid; gap:12px; }
.jn-footer .jn-footer-link { display:inline-flex; text-decoration:none; align-items:center; gap:8px; font-size:12px; color:var(--jn-text); min-height:28px; }
.jn-footer-link strong { font-weight:400; }
.jn-footer-link .jn-entry-arrow { display:none; }
.jn-footer-link:hover { color:var(--jn-pink); text-decoration:underline; }
.jn-footer-bottom { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:20px; margin-top:34px; padding-top:24px; border-top:1px solid var(--jn-line); }
.jn-footer-bottom p { margin:0; font-size:11px; color:var(--jn-text); }
.jn-footer .footer-region { margin:0; }
.jn-footer .region-change-btn { color:var(--jn-navy); border-color:#dbe1eb; min-height:44px; }
.jn-footer .jn-footer-wa { font-size:12px; color:var(--jn-pink); text-decoration:none; min-height:44px; display:inline-flex; align-items:center; gap:8px; }
.jn-locked { overflow:hidden!important; }
@media(min-width:1100px) and (max-width:1199px) {
  .jn-inner { padding-inline:22px; gap:20px; }
  .jn-nav { gap:16px; }
  .jn-primary { gap:3px; }
  .jn-header :is(.jn-parent,.jn-top-link) { font-size:12px; padding-inline:7px; }
  .jn-header .jn-cta { padding-inline:18px; }
  .jn-header .jn-logo img { width:94px; }
}
.jn-header.jn-compact .jn-inner { min-height:80px; padding:10px 24px; justify-content:space-between; }
.jn-header.jn-compact .jn-logo img { width:102px; height:60px; }
.jn-header.jn-compact .jn-toggle { display:grid; place-items:center; border:0; background:#fff3f7; color:var(--jn-navy); border-radius:12px; width:48px; height:48px; font-size:25px; cursor:pointer; }
.jn-header.jn-compact .jn-nav { position:fixed; inset:0 0 0 auto; width:min(420px,92vw); height:100dvh; background:#fffdfc; display:none; flex-direction:column; gap:0; padding:0 20px max(16px,env(safe-area-inset-bottom)); box-shadow:-8px 0 40px #17245e24; }
.jn-header.jn-compact .jn-nav.jn-drawer-open { display:flex; }
.jn-header.jn-compact .jn-drawer-top { display:flex; align-items:center; justify-content:space-between; width:100%; padding:16px 0; flex-shrink:0; }
.jn-header.jn-compact .jn-drawer-top img { width:105px; height:60px; object-fit:contain; }
.jn-header.jn-compact .jn-close { width:44px; height:44px; border:0; border-radius:50%; background:#f5f5fa; color:var(--jn-navy); font-size:30px; cursor:pointer; }
.jn-header.jn-compact .jn-primary { flex:1; min-height:0; width:100%; display:block; overflow-y:auto; overscroll-behavior:contain; margin:0 0 12px; padding:0 4px; }
.jn-header.jn-compact .jn-root { width:100%; }
.jn-header.jn-compact :is(.jn-parent,.jn-top-link) { width:100%; justify-content:flex-start; font-size:13px; white-space:normal; min-height:52px; padding:13px 12px; }
.jn-header.jn-compact :is(.jn-parent,.jn-top-link)>i { display:block; width:24px; flex-shrink:0; text-align:center; font-size:21px; color:#9261b6; margin-right:8px; }
.jn-header.jn-compact .jn-chevron { margin-left:auto; }
.jn-header.jn-compact .jn-panel { position:static; width:100%; transform:none; max-height:none; overflow:visible; padding:8px 0 18px 12px; box-shadow:none; background:#faf8fb; border-radius:12px; margin-bottom:8px; }
.jn-header.jn-compact .jn-panel-grid { display:block; }
.jn-header.jn-compact .jn-group { border:0; padding:10px 12px; }
.jn-header.jn-compact .jn-group h2 { font-size:11px; color:var(--jn-text); margin:0 0 6px; }
.jn-header.jn-compact .jn-group h2 i { display:none; }
.jn-header.jn-compact .jn-entry { padding:12px 4px; min-height:48px; }
.jn-header.jn-compact .jn-entry img, .jn-header.jn-compact .jn-entry .jn-description, .jn-header.jn-compact .jn-entry>i { display:none; }
.jn-header.jn-compact .jn-entry strong { font-size:12px; }
.jn-header.jn-compact .jn-type-featured { background:transparent; }
.jn-header.jn-compact .jn-type-featured .jn-entry-copy { padding:0; }
.jn-header.jn-compact .jn-type-featured .jn-entry-arrow { align-self:center; margin:0 5px 0 4px; }
.jn-header.jn-compact .jn-type-cta { margin:4px 0 0; padding:12px; }
.jn-header.jn-compact .jn-guide { background:transparent; padding:12px 16px; min-height:0; }
.jn-header.jn-compact .jn-guide img,.jn-header.jn-compact .jn-guide h2,.jn-header.jn-compact .jn-guide p,.jn-header.jn-compact .jn-business-proof { display:none; }
.jn-header.jn-compact .jn-guide .jn-cta { background:white; border-color:#e7dce5; color:var(--jn-pink); font-size:12px; }
.jn-header.jn-compact .jn-main-cta { width:100%; flex-shrink:0; white-space:normal; min-height:48px; }
.jn-header.jn-compact .jn-mobile-support { display:block; width:100%; padding-top:12px; flex-shrink:0; }
.jn-header.jn-compact .jn-mobile-support>a { display:flex; align-items:center; gap:12px; padding:14px; border-radius:14px; background:#f7f8fb; font-size:12px; color:var(--jn-navy); text-decoration:none; min-height:60px; }
.jn-header.jn-compact .jn-mobile-support i { font-size:22px; color:var(--jn-pink); }
.jn-header.jn-compact .jn-mobile-support strong,.jn-header.jn-compact .jn-mobile-support small { display:block; }
.jn-header.jn-compact .jn-mobile-support small { font-size:10px; color:var(--jn-text); margin-top:3px; }
.jn-header.jn-compact .jn-mobile-support>a>span:last-child { margin-left:auto; }
.jn-header.jn-compact .jn-backdrop { inset:0; background:#17245e55; }
@media(max-width:1099px) {
  .jn-footer-columns { grid-template-columns:repeat(2,minmax(0,1fr)); gap:32px; }
  .jn-footer .jn-footer-link { min-height:44px; }
  .jn-footer-column ul { gap:0; }
}
@media(max-width:767px) {
  .jn-inner { padding-inline:20px; min-height:76px; }
  .jn-header .jn-logo img { width:100px; height:54px; }
  .jn-footer-inner { padding-inline:22px; }
  .jn-footer-brand { flex-direction:column; align-items:flex-start; gap:12px; }
  .jn-footer-columns { grid-template-columns:1fr 1fr; gap:26px 20px; }
  .jn-footer .jn-footer-column h2 { font-size:14px; margin-bottom:12px; }
  .jn-footer-bottom { align-items:flex-start; flex-direction:column; gap:14px; }
}
@media(max-width:390.98px) {
  .jn-header .jn-nav { padding-inline:16px; }
  .jn-header .jn-primary { padding-inline:0; }
  .jn-header .jn-parent, .jn-header .jn-top-link { font-size:12px; padding-inline:10px; }
  .jn-header .jn-entry strong { font-size:12px; }
  .jn-footer-columns { grid-template-columns:1fr; }
}
@media(prefers-reduced-motion:reduce) { .jn-header * { transition:none!important; scroll-behavior:auto!important; } }

.jn-preview{max-width:1200px;margin:60px auto;padding:40px;min-height:200px;color:var(--jn-navy)}

body.is-service-split{padding-top:var(--header-h)}

@media(prefers-reduced-motion:reduce){.jn-entry:hover .jn-entry-arrow{translate:none}}
