
/* Shared site-wide header and footer: consistent across all pages */
.header{position:sticky;top:0;background:#fff;z-index:20;box-shadow:0 4px 18px #3213420d}
.navrow{min-height:86px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.brand{display:flex;align-items:center;gap:13px}
.brand-logo{width:270px;max-width:100%;height:auto;display:block;object-fit:contain}
.navlinks{display:flex;align-items:center;gap:18px;font-weight:600;font-size:14px}
.navlinks a{position:relative;padding:9px 0;transition:color .22s ease}
.navlinks a:hover,.navlinks a:focus-visible,.navlinks a.active{color:var(--purple2)}
.navlinks a:after{content:"";position:absolute;left:0;right:100%;bottom:2px;height:3px;border-radius:9px;background:linear-gradient(90deg,var(--purple2),var(--gold));transition:right .24s ease}
.navlinks a:hover:after,.navlinks a:focus-visible:after,.navlinks a.active:after{right:0}
.navcta{border-radius:999px;padding:10px 16px;background:var(--purple);color:#fff!important}
.menu-toggle{display:none;border:0;background:var(--plight);color:var(--purple);font-size:25px;border-radius:12px;padding:5px 13px}
.header-badges{display:flex;flex-direction:column;gap:5px;align-items:flex-end;font-size:12px;font-weight:700}
.header-badges span{background:#FAF8FD;color:#421078;border-radius:30px;padding:3px 10px;line-height:1.4}
.header-badges span:first-child{background:#6520B8;color:#fff}
.footer{background:#421078;color:#fff;padding:30px 0 20px}
.footer-grid{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:25px}
.footer .brand-logo{width:220px;filter:brightness(0) invert(1)}
.footer h3{margin:0 0 10px;color:#fff}
.footer p{color:#E9DDF8;margin:5px 0}
.footer a{color:inherit}
.footer-bottom{border-top:1px solid #ffffff2c;margin-top:22px;padding-top:14px;color:#E9DDF8;font-size:13px;display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}
.footer .btn.light{background:#fff;color:var(--purple)}
@media(max-width:900px){.navlinks{gap:10px;font-size:12px}.brand-logo{width:230px}}
@media(max-width:680px){
 .navrow{min-height:74px;position:relative}
 .brand-logo{width:220px}
 .header-badges{display:none}
 .menu-toggle{display:block}
 .navlinks{display:none;position:absolute;top:74px;left:-4.35%;right:-4.35%;background:#fff;padding:14px 5% 20px;box-shadow:0 12px 18px #32134215;flex-direction:column;align-items:stretch;gap:0;font-size:15px}
 .navlinks.show{display:flex}
 .navlinks a{padding:10px 4px;border-bottom:1px solid #E9DDF8}
 .navcta{margin-top:10px;text-align:center}
 .footer-grid{grid-template-columns:1fr;gap:18px}
 .footer-bottom{display:block}
}

/* Unified responsive navigation — shared across homepage and all inner pages */
.header{position:sticky;top:0;z-index:300;isolation:isolate}
.navrow{position:relative;min-width:0}
.navlinks{flex-wrap:nowrap;align-items:center;justify-content:flex-end;margin-left:auto;min-width:0}
.nav-dropdown{position:relative;display:flex;align-items:center}
.dropdown-menu{display:none;position:absolute;top:calc(100% + 7px);left:-12px;min-width:245px;max-height:min(70vh,520px);overflow:auto;background:#fff;border:1px solid var(--line,#E9DDF8);border-radius:12px;padding:8px;box-shadow:0 16px 35px #32134220;z-index:320}
.dropdown-menu a{display:block;padding:9px 11px;border-radius:8px;font-size:14px;white-space:nowrap}
.dropdown-menu a:hover,.dropdown-menu a:focus-visible{background:var(--plight,#FAF8FD);color:var(--purple,#6520B8)}
.menu-toggle{cursor:pointer;width:44px;height:44px;min-width:44px;min-height:44px;align-items:center;justify-content:center;line-height:1;padding:0;flex:0 0 44px}
@media(min-width:1121px){
 .menu-toggle{display:none!important}
 .navlinks{display:flex!important;position:static;max-height:none;overflow:visible;background:transparent;border:0;border-radius:0;padding:0;box-shadow:none;flex-direction:row;gap:clamp(8px,.9vw,16px);font-size:clamp(12px,.92vw,14px)}
 .nav-dropdown:hover>.dropdown-menu,.nav-dropdown:focus-within>.dropdown-menu,.nav-dropdown.expanded>.dropdown-menu{display:block}
 .nav-dropdown>.dropdown-trigger{white-space:nowrap}
}
@media(max-width:1120px){
 .navrow{min-height:76px;position:relative;flex-wrap:wrap;gap:12px}
 .header-badges{display:none!important}
 .menu-toggle{display:inline-flex!important;flex:0 0 44px}
 .navlinks{display:none;position:absolute;top:calc(100% + 7px);left:0;right:0;width:auto;max-height:calc(100dvh - 105px);overflow-y:auto;overscroll-behavior:contain;background:#fff;border:1px solid #E9DDF8;border-radius:15px;padding:12px;box-shadow:0 16px 36px #25102f2e;flex-direction:column;align-items:stretch;gap:3px;z-index:340}
 .navlinks.show{display:flex!important}
 .navlinks>a,.nav-dropdown>.dropdown-trigger{display:block;width:100%;padding:11px 12px;border-bottom:1px solid #E9DDF8;font-size:15px;white-space:normal}
 .nav-dropdown{display:block;width:100%}
 @media (max-width:1120px){.nav-dropdown:hover>.dropdown-menu{display:none}}
 .dropdown-menu{display:none;position:static;max-height:none;overflow:visible;box-shadow:none;border:0;border-left:3px solid var(--purple,#6520B8);border-radius:0;margin:2px 0 8px 12px;padding:5px 8px;min-width:0;background:#FAF8FD}
 .nav-dropdown.expanded>.dropdown-menu{display:block}
 .dropdown-menu a{display:block;white-space:normal;padding:10px 12px;border-bottom:1px solid #E9DDF8}
 .navcta{width:100%;text-align:center;margin-top:7px}
}
@media(max-width:480px){
 .navrow{min-height:68px;gap:8px}
 .brand-logo{width:min(220px,62vw)}
 .navlinks{left:0;right:0;max-height:calc(100dvh - 88px);padding:10px}
}
