/* Shared marketing shell. Intentionally independent of page-level Tailwind tokens. */
.cms-nav,.cms-nav *{box-sizing:border-box}
.cms-nav{position:fixed;inset:0 0 auto;z-index:1000;height:64px;background:rgba(249,249,255,.96);border-bottom:1px solid #e3e4ea;backdrop-filter:blur(14px);color:#191c20;font-family:var(--font-inter,Inter),Arial,sans-serif;font-size:14px;line-height:1.4;text-align:left;letter-spacing:normal}
.cms-nav [hidden]{display:none!important}
.cms-nav a{text-decoration:none;color:inherit}
.cms-nav button{font:inherit;color:inherit;background:none;border:0;margin:0;cursor:pointer;text-transform:none;letter-spacing:normal}
.cms-nav a,.cms-nav button{-webkit-tap-highlight-color:transparent}
.cms-nav :is(a,button):focus-visible{outline:2px solid #005c42;outline-offset:3px;border-radius:4px}
.cms-nav svg{display:block;flex-shrink:0;width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.cms-nav__inner{height:64px;max-width:1280px;padding:0 24px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:24px}
.cms-nav__brand{display:inline-flex;align-items:center;gap:10px;min-height:44px;flex-shrink:0;font-size:20px;font-weight:650;letter-spacing:-.5px}
.cms-nav__brand img{display:block;width:32px;height:32px;max-width:none;object-fit:contain}
.cms-nav__desktop{display:flex;align-items:center;gap:8px;margin-left:auto}
.cms-nav__link{min-height:44px;padding:0 12px;display:inline-flex;align-items:center;gap:6px;border-radius:4px;font-weight:500;white-space:nowrap}
.cms-nav :is(.cms-nav__link,.cms-nav__dropdown a):hover{background:#eff0f6}
.cms-nav a[aria-current="page"]:not(.cms-nav__brand):not(.cms-nav__cta),.cms-nav [data-cms-active="true"]{color:#005c42;font-weight:650;background:#e8efec}
.cms-nav__disclosure{position:relative}
.cms-nav__disclosure button[aria-expanded="true"]{background:#eff0f6}
.cms-nav [aria-expanded="true"]>svg{transform:rotate(180deg)}
.cms-nav__dropdown{position:absolute;top:calc(100% + 10px);left:0;min-width:248px;padding:8px;background:#fff;border:1px solid #dce1de;border-radius:8px;box-shadow:0 8px 28px rgba(25,28,32,.09)}
.cms-nav__dropdown a{display:flex;align-items:center;min-height:44px;padding:10px 12px;border-radius:4px;white-space:nowrap}
.cms-nav__nami{color:#005c42!important;font-weight:650!important}
.cms-nav__dot{display:inline-block;width:6px;height:6px;background:#087354;border-radius:50%;margin-right:2px;vertical-align:middle;flex-shrink:0}
.cms-nav__launch{color:#005c42!important}
.cms-nav__actions{display:flex;align-items:center;gap:12px;flex-shrink:0}
.cms-nav .cms-nav__cta{display:inline-flex;justify-content:center;align-items:center;min-height:44px;padding:0 18px;background:#191c20;color:#fff;border:1px solid #191c20;border-radius:4px;font-weight:600;white-space:nowrap}
.cms-nav .cms-nav__cta:hover{background:#303638}
.cms-nav__toggle,.cms-nav__mobile-launch{display:none!important}
.cms-nav__skip{position:fixed;top:8px;left:12px;z-index:1005;padding:12px 16px;background:#005c42;color:#fff!important;transform:translateY(-160%);border-radius:4px}
.cms-nav__skip:focus{transform:translateY(0)}
.cms-nav__backdrop{position:fixed;inset:64px 0 auto;height:calc(100dvh - 64px);background:rgba(25,28,32,.3);z-index:1}
.cms-nav__mobile{position:fixed;inset:64px 0 auto;max-height:calc(100dvh - 64px);overflow-y:auto;overscroll-behavior:contain;z-index:2;padding:16px 24px 24px;background:#f9f9ff;border-bottom:1px solid #dce1de;box-shadow:0 12px 24px rgba(25,28,32,.07)}
.cms-nav__mobile-top{display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:14px;font-weight:650;color:#555e5a;padding-bottom:8px}
.cms-nav .cms-nav__close{display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;border-radius:4px}
.cms-nav__close svg,.cms-nav__toggle svg{width:24px;height:24px}
.cms-nav__mobile-links>a,.cms-nav__mobile-group>button{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:52px;padding:12px 8px;border-bottom:1px solid #e3e4ea!important;font-weight:550;font-size:16px}
.cms-nav__mobile-links>a>span:first-child{display:inline-flex;align-items:center;gap:8px}
.cms-nav__mobile-note{font-size:12px;font-weight:400;color:#555e5a}
.cms-nav__mobile-sub{padding:6px 0 8px 12px;border-bottom:1px solid #e3e4ea}
.cms-nav__mobile-sub a{display:flex;align-items:center;min-height:44px;padding:10px 12px;font-size:14px;border-radius:4px}
.cms-nav__mobile-sub a:hover{background:#eff0f6}
.cms-nav__mobile-actions{display:grid;gap:12px;padding-top:24px}
.cms-nav .cms-nav__mobile-signin{display:flex;align-items:center;justify-content:center;min-height:44px;border:1px solid #ccd3cf;border-radius:4px;font-weight:550}
.cms-nav__mobile-actions p{font-family:inherit;font-size:12px;line-height:1.6;color:#555e5a;margin:0;text-align:center}
@media(max-width:1099px){.cms-nav__desktop,.cms-nav__signin,.cms-nav__actions>.cms-nav__cta{display:none!important}.cms-nav__inner{gap:12px}.cms-nav__actions{gap:8px}.cms-nav .cms-nav__toggle{display:flex!important;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border:1px solid #dce1de;border-radius:4px}.cms-nav .cms-nav__mobile-launch{display:inline-flex!important;align-items:center;justify-content:center;min-height:44px;padding:0 12px;background:#e8efec;color:#005c42;font-size:13px;font-weight:600;border:1px solid #cadbd3;border-radius:4px;white-space:nowrap}}
@media(max-width:479px){.cms-nav__inner{padding:0 16px}.cms-nav__brand{gap:8px;font-size:19px}.cms-nav__brand img{width:28px;height:28px}.cms-nav__mobile{padding:12px 16px 24px}}
@media(max-width:359px){.cms-nav__brand{font-size:18px;gap:6px}.cms-nav__actions{gap:4px}.cms-nav .cms-nav__mobile-launch{padding:0 8px;font-size:12px}.cms-nav__inner{gap:8px}}
@media(prefers-reduced-motion:reduce){.cms-nav *{scroll-behavior:auto;transition:none!important}}
.cms-footer,.cms-footer *{box-sizing:border-box}
.cms-footer{background:#f3f3fa;border-top:1px solid #e3e4ea;padding:0;color:#191c20;font-family:var(--font-inter,Inter),Arial,sans-serif;font-size:14px;line-height:1.5;text-align:left}
.cms-footer__inner{max-width:1280px;padding:48px 24px;margin:0 auto;display:grid;grid-template-columns:1.2fr 1fr .75fr .9fr;gap:48px}
.cms-footer a{color:inherit;text-decoration:none}
.cms-footer a:hover{color:#005c42;text-decoration:underline;text-underline-offset:4px}
.cms-footer a:focus-visible{outline:2px solid #005c42;outline-offset:4px}
.cms-footer__brand{display:inline-flex;align-items:center;gap:10px;min-height:44px;font-size:20px;font-weight:650;letter-spacing:-.5px}
.cms-footer__brand img{width:32px;height:32px;max-width:none;display:block}
.cms-footer__identity p{font-family:inherit;font-size:14px;line-height:1.6;color:#555e5a;margin:12px 0 16px}
.cms-footer__loop{font-size:12px;color:#555e5a}
.cms-footer nav{display:flex;flex-direction:column;align-items:flex-start;gap:0}
.cms-footer h2{font-family:inherit;font-size:14px;line-height:1.5;font-weight:650;letter-spacing:normal;color:#191c20;margin:0 0 12px}
.cms-footer nav a{display:flex;align-items:center;min-height:44px;font-size:14px;font-weight:400}
.cms-footer .cms-footer__nami{color:#005c42;font-weight:600}
.cms-footer__bottom{max-width:1232px;margin:0 auto;padding:20px 0;border-top:1px solid #dfe2e6;display:flex;justify-content:space-between;gap:24px;font-size:12px;color:#555e5a}
@media(max-width:1099px){.cms-footer__inner{grid-template-columns:1fr 1fr;gap:32px}.cms-footer__bottom{margin:0 24px}}
@media(max-width:599px){.cms-footer__inner{padding:32px 16px;gap:24px;grid-template-columns:1fr 1fr}.cms-footer__identity{grid-column:1/-1}.cms-footer__inner nav:first-of-type{grid-column:1/-1}.cms-footer__bottom{margin:0 16px;flex-direction:column;gap:8px}}
/* Do not inherit legacy global footer span colors on React routes. */
.cms-footer__brand span{color:#191c20}
.cms-footer__bottom>span{color:#555e5a}
