@font-face{font-family:JHDM;src:url('/fonts/dm-sans-90624ee039aa/dm-sans-f6298972.woff2');font-display:swap}
@font-face{font-family:JHSpace;src:url('/fonts/space-grotesk-feef4dc31705/space-grotesk-a57c9413.woff2');font-weight:300 700;font-display:swap}
footer.jh-site-footer{box-sizing:border-box;display:block;width:100%;max-width:none;margin:0;padding:40px 0 24px!important;background:#2948ff;color:#fff;font:16px/1.6 JHDM,Arial,sans-serif;letter-spacing:normal;text-align:left;border:0;border-radius:0}
.jh-site-footer *{box-sizing:border-box}.jh-site-footer .jh-footer-wrap{display:block;width:min(1160px,calc(100% - 64px));max-width:none;margin:0 auto;padding:0}
.jh-site-footer .jh-footer-main{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,380px);gap:64px;align-items:stretch}
.jh-site-footer .jh-footer-eyebrow{margin:0 0 22px;font-size:11px;font-weight:700;letter-spacing:.15em;line-height:1.5;text-transform:uppercase;color:#fff}
.jh-site-footer .jh-footer-heading{max-width:none;margin:0 0 20px;font:650 clamp(48px,5.8vw,76px)/1 JHSpace,Arial,sans-serif;letter-spacing:-.055em;color:#fff}
.jh-site-footer .jh-footer-heading a{font:inherit;letter-spacing:inherit;display:inline-block;padding:0 0 12px;border-bottom:1px solid #ffffff80;color:#fff;text-decoration:none;transition:color .16s,border-color .16s}
.jh-site-footer .jh-footer-heading em{font-size:inherit;line-height:inherit;color:#cbff4b;font-family:Georgia,serif;font-weight:400;letter-spacing:-.055em}
.jh-site-footer .jh-footer-copy{max-width:420px;margin:0;font-size:17px;line-height:1.65;color:#f4f3ff}
.jh-site-footer .jh-footer-links{display:grid;grid-template-rows:18px minmax(0,1fr);row-gap:22px;margin:0;padding:0;align-self:stretch}
.jh-site-footer .jh-footer-links h3{margin:0;font:400 14px/18px JHDM,Arial,sans-serif;letter-spacing:-.025em;text-transform:none;color:#ffffff80;text-decoration:none}
.jh-site-footer .jh-footer-links ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(5,auto);grid-auto-flow:column;align-content:space-between;gap:4px 36px;list-style:none;margin:0;padding:0;align-items:start}
.jh-site-footer .jh-footer-links li{margin:0;padding:0;border:0}
.jh-site-footer .jh-footer-links a{display:inline-block;max-width:100%;padding:0 0 2px;border-bottom:1px solid #ffffff26;color:#fff;font:400 16px/1.4 JHDM,Arial,sans-serif;letter-spacing:-.025em;text-decoration:none;transition:color .16s,border-color .16s}
.jh-site-footer a:hover{color:#cbff4b;text-decoration:none;border-color:#cbff4b}.jh-site-footer .jh-footer-heading a:hover{color:#fff;border-color:#cbff4b;text-decoration:none}
.jh-site-footer a:focus-visible{outline:2px solid #cbff4b;outline-offset:5px}
.jh-site-footer a.saber-touch{color:#cbff4b!important}
.jh-site-footer .jh-footer-bottom{display:flex;justify-content:space-between;align-items:start;gap:20px;border-top:1px solid #ffffff55;margin:28px 0 0;padding:18px 0 0;font:400 11px/1.6 JHDM,Arial,sans-serif;color:#fff}
.jh-site-footer .jh-footer-location{text-align:right}
.jh-site-footer .jh-footer-bottom>span{color:#fff;font:inherit;letter-spacing:normal;margin:0;padding:0;text-transform:none}
.jh-site-footer .jh-footer-links,.jh-site-footer .jh-footer-links ul{font:400 16px/1.6 JHDM,Arial,sans-serif}
@media(max-width:950px){.jh-site-footer .jh-footer-main{grid-template-columns:1fr;gap:28px}.jh-site-footer .jh-footer-links{display:block}.jh-site-footer .jh-footer-links h3{margin-bottom:18px}.jh-site-footer .jh-footer-links ul{row-gap:12px}.jh-site-footer .jh-footer-copy{max-width:none}}
@media(max-width:600px){footer.jh-site-footer{padding:30px 0 22px!important}.jh-site-footer .jh-footer-wrap{width:calc(100% - 40px)}.jh-site-footer .jh-footer-heading{font-size:58px}.jh-site-footer .jh-footer-eyebrow{margin-bottom:18px}.jh-site-footer .jh-footer-copy{font-size:16px}.jh-site-footer .jh-footer-links ul{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:none;grid-auto-flow:row;gap:10px 24px}.jh-site-footer .jh-footer-links a{font-size:16px;padding:0 0 2px}.jh-site-footer .jh-footer-bottom{flex-direction:column;gap:8px;margin-top:24px;padding-top:16px}.jh-site-footer .jh-footer-location{text-align:left}}
@media(prefers-reduced-motion:reduce){.jh-site-footer a{transition:none}}
@media print{footer.jh-site-footer,.site-cursor-dot,.site-cursor-ring{display:none!important}}
.jh-site-footer .jh-footer-links a:hover{text-decoration:none;border-color:#cbff4b}
html{scrollbar-gutter:stable}
/* Shared lightsaber: the tip is the exact pointer hotspot. */
.site-cursor-dot,.site-cursor-ring{display:none!important}
.jh-saber-cursor{position:fixed;left:0;top:0;width:1px;height:1px;z-index:2147483647;pointer-events:none;opacity:0;will-change:transform}
.jh-saber-cursor.is-visible{opacity:1}.jh-saber{position:absolute;left:-3px;top:0;width:6px;height:58px;transform:rotate(-34deg);transform-origin:3px 0}
.jh-blade{position:absolute;left:1px;top:0;width:4px;height:40px;background:#fff;border-radius:3px;transform:scaleY(0);transform-origin:bottom;box-shadow:0 0 2px 1px #fff,0 0 5px 2px #2948ff,0 0 11px 3px #2948ff99;transition:transform .48s cubic-bezier(.16,.8,.3,1)}
.is-ignited .jh-blade{transform:scaleY(1);animation:jh-saber-flicker 2.3s .48s infinite}
.jh-hilt{position:absolute;left:-1px;top:41px;width:8px;height:18px;border:1px solid #11110f;border-radius:1px;background:repeating-linear-gradient(to bottom,#c9c9c9 0 3px,#343434 3px 5px);box-shadow:inset 2px 0 #ffffff80}
.jh-hilt:before{content:'';position:absolute;left:-2px;top:-3px;width:10px;height:3px;background:#11110f}.jh-hilt:after{content:'';position:absolute;right:-2px;top:5px;width:3px;height:3px;background:#cbff4b;border:1px solid #11110f}
.jh-yoda-hand{position:absolute;left:-7px;top:-3px;width:36px;height:44px;opacity:0;filter:drop-shadow(0 1px 1px #11110f55)}
.is-link .jh-saber{opacity:0}.is-link .jh-yoda-hand{opacity:1}.is-pressed .jh-yoda-hand{transform:rotate(-9deg) scale(.94);transform-origin:8px 5px}
@keyframes jh-saber-flicker{0%,100%{opacity:1;filter:brightness(1)}13%{opacity:.88;filter:brightness(1.12)}15%{opacity:1}41%{filter:brightness(.93)}43%{filter:brightness(1.16)}70%{opacity:.94}73%{opacity:1}}
@media(hover:hover) and (pointer:fine){html.custom-cursor-active body,html.custom-cursor-active body *{cursor:none!important}html.custom-cursor-active input,html.custom-cursor-active textarea,html.custom-cursor-active [contenteditable=true]{cursor:text!important}}
@media(hover:none),(pointer:coarse){.jh-saber-cursor{display:none}}
@media(prefers-reduced-motion:reduce){.jh-blade{transition:none!important;animation:none!important}.jh-yoda-hand{transform:none!important}}
@media print{.jh-saber-cursor{display:none!important}}
/* Compact cursor: 65% of the original, anchored at the pointer tip. */
.jh-saber-cursor .jh-saber{left:-1.95px;transform:rotate(-34deg) scale(.65)}
.jh-saber-cursor .jh-yoda-hand{left:-4.55px;top:-1.95px;transform:scale(.65);transform-origin:top left}
.jh-saber-cursor.is-pressed .jh-yoda-hand{transform:scale(.65) rotate(-9deg)}
@media(prefers-reduced-motion:reduce){.jh-saber-cursor .jh-yoda-hand{transform:scale(.65)!important}}
/* Cursor artwork must not inherit responsive content-image sizing. */
html body .jh-saber-cursor img.jh-yoda-hand{display:block;width:36px;min-width:36px;max-width:none;height:44px;min-height:44px;max-height:none;margin:0;padding:0;border:0;object-fit:contain;box-sizing:content-box}

/* Approved social footer: social profiles left, copyright right. */
.jh-site-footer .jh-footer-main{grid-template-columns:minmax(0,1.6fr) minmax(320px,1fr);gap:80px;align-items:start}
.jh-site-footer .jh-footer-links{display:block;padding-top:4px}.jh-site-footer .jh-footer-links h3{margin-bottom:20px}
.jh-site-footer .jh-footer-links ul{grid-template-rows:repeat(4,auto);gap:12px 28px;align-content:start}
.jh-site-footer .jh-footer-bottom{align-items:center}
.jh-site-footer .jh-footer-social{display:flex;align-items:center;gap:14px;font:500 12px/1.5 JHDM,Arial,sans-serif}
.jh-site-footer .jh-footer-icons{display:flex;align-items:center;gap:6px}
.jh-site-footer .jh-footer-icons a{display:inline-flex;width:32px;height:32px;align-items:center;justify-content:center;border:0;color:#fff;text-decoration:none}
.jh-site-footer .jh-footer-icons a:hover{color:#cbff4b}
.jh-site-footer .jh-footer-icons svg{display:block;width:18px;height:18px;flex:none}
@media(max-width:950px){.jh-site-footer .jh-footer-main{grid-template-columns:1fr;gap:32px}}
@media(max-width:600px){.jh-site-footer .jh-footer-bottom{align-items:flex-start;gap:7px}.jh-site-footer .jh-footer-links ul{grid-template-rows:repeat(4,auto);grid-auto-flow:column;gap:12px 28px}}
