/* Shared header: scoped to avoid affecting admin and footer navigation. */
.site-header{position:relative;z-index:30;background:#fff;box-shadow:0 8px 28px #12045207;padding-bottom:15px}
.site-header .header-main{display:flex;align-items:center;gap:30px;padding:24px 0}
.site-header .header-brand{display:flex;gap:14px;align-items:center;flex-shrink:0;color:#120452;text-decoration:none}
.header-emblem{width:58px;height:58px;position:relative;display:grid;place-items:center;background:linear-gradient(140deg,#30157a,#120452);border-radius:18px 18px 18px 4px;font-family:Georgia,serif;font-size:23px;color:white;letter-spacing:-2px;box-shadow:0 5px 15px #12045218}
.header-emblem i{position:absolute;right:-5px;top:-5px;display:grid;place-items:center;background:#f6336f;color:#fff;border:3px solid white;font-size:15px;width:25px;height:25px;line-height:1;border-radius:50%;font-style:normal;letter-spacing:0}
.header-wordmark{font-family:Manrope,sans-serif;font-size:27px;font-weight:800;letter-spacing:-.045em;line-height:1.2}
.header-wordmark small{display:block;font-family:'DM Sans',sans-serif;font-size:8px;letter-spacing:.2em;font-weight:500;color:#85718d;margin-top:9px}
.header-qualification{margin-left:auto;border-left:1px solid #e9e0ed;padding:5px 0 5px 25px;display:flex;flex-direction:column;gap:7px}
.header-qualification>span{font-size:8px;letter-spacing:.14em;color:#a183a5;font-weight:600}
.header-qualification strong{font-size:11px;color:#5d4c70;font-weight:500;line-height:1.5}
.header-qualification i{font-style:normal;color:#f6336f;padding:0 6px}
.site-header .header-book{display:flex;align-items:center;justify-content:space-between;gap:23px;border:1px solid #f6336f;background:#f6336f;color:white;border-radius:50px;padding:8px 8px 8px 22px;font-size:12px;font-weight:600;white-space:nowrap;box-shadow:0 5px 18px #f6336f18;transition:background .2s,box-shadow .2s}
.site-header .header-book svg{width:34px;height:34px;padding:10px;fill:none;stroke:currentColor;stroke-width:1.8;background:#ffffff22;border-radius:50%}
.site-header .header-book:hover{background:#120452;border-color:#120452;box-shadow:0 5px 18px #12045218}
.site-header .header-nav-shell{border:1px solid #ece6f1;border-radius:10px;background:#f9f7fc;padding:0 12px}
.site-header #navigation{display:flex;justify-content:space-between;align-items:stretch;gap:3px;width:100%;padding:5px 0;margin:0;border:0;font-size:12px;font-weight:500}
.site-header #navigation>a,.site-header #navigation summary{display:flex;align-items:center;gap:8px;padding:11px 12px;line-height:1.5;border-radius:6px;white-space:nowrap;transition:background .2s,color .2s}
.site-header #navigation>a:hover,.site-header #navigation summary:hover{background:white;color:#f6336f}
.site-header #navigation>a[aria-current],.site-header #navigation .active-group>summary{background:#120452;color:white;box-shadow:0 3px 8px #12045212}
.site-header #navigation summary{list-style:none}.site-header #navigation summary::-webkit-details-marker{display:none}.site-header #navigation summary:after{content:none}
.site-header #navigation summary svg{width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:1.7;transition:transform .2s}
.site-header #navigation details{position:relative}.site-header #navigation details[open]>summary{background:white;color:#f6336f}
.site-header #navigation details[open]>summary svg{transform:rotate(180deg)}
.site-header #navigation .dropdown{position:absolute;top:calc(100% + 10px);left:0;width:300px;padding:10px;background:white;border:1px solid #e8dfee;border-top:3px solid #f6336f;border-radius:12px;box-shadow:0 18px 45px #12045220;max-height:min(65vh,520px);overflow-y:auto;z-index:40}
.site-header #navigation details:nth-last-of-type(-n+2) .dropdown{left:auto;right:0}
.dropdown-label{display:block;padding:12px 13px 16px;font-size:17px;font-weight:600;color:#120452;border-bottom:1px solid #f0eaf3;margin-bottom:7px}
.dropdown-label small{display:block;margin-top:5px;font-size:8px;letter-spacing:.15em;color:#ad8faa;font-weight:500}
.site-header #navigation .dropdown a{display:flex;align-items:center;justify-content:space-between;gap:15px;white-space:normal;line-height:1.5;font-size:12px;font-weight:400;padding:10px 13px;border-radius:5px;color:#635271}
.site-header #navigation .dropdown a span{color:#c3b1cb;flex-shrink:0}.site-header #navigation .dropdown a:hover,.site-header #navigation .dropdown a[aria-current]{background:#f6f0f9;color:#b31753}
.site-header #menu-toggle{display:none;align-items:center;justify-content:center;background:#f8f4fc;border:1px solid #e9dfee;border-radius:12px;width:44px;height:44px;padding:0;flex-shrink:0;margin:0}
.menu-lines,.menu-lines:before,.menu-lines:after{display:block;width:18px;height:2px;background:#120452;position:relative;transition:transform .2s}
.menu-lines:before,.menu-lines:after{content:'';position:absolute;left:0}.menu-lines:before{top:-6px}.menu-lines:after{top:6px;width:12px}
#menu-toggle[aria-expanded=true] .menu-lines{background:transparent}#menu-toggle[aria-expanded=true] .menu-lines:before{top:0;transform:rotate(45deg)}#menu-toggle[aria-expanded=true] .menu-lines:after{top:0;width:18px;transform:rotate(-45deg)}
.site-header a:focus-visible,.site-header summary:focus-visible,.site-header button:focus-visible{outline:2px solid #f6336f;outline-offset:3px}
@media(max-width:1200px){.header-qualification{padding-left:18px}.header-qualification strong{font-size:10px}.header-qualification>span{font-size:7px}.site-header .header-main{gap:22px}.site-header #navigation>a,.site-header #navigation summary{font-size:11px;padding:11px 8px;gap:5px}.header-wordmark{font-size:25px}}
@media(max-width:1000px){.header-qualification{display:none}.site-header .header-book{margin-left:auto}.site-header #navigation>a,.site-header #navigation summary{font-size:10px;padding:11px 7px;gap:4px}.site-header #navigation summary svg{width:10px}.site-header .header-nav-shell{padding:0 6px}}
@media(max-width:850px){.site-header{padding-bottom:0}.site-header .header-main{padding:19px 0;gap:18px}.site-header #menu-toggle{display:flex}.site-header .header-nav-shell{border:0;padding:0;background:white;border-radius:0}.site-header #navigation{display:none;font-size:13px;padding:0 0 20px;flex-direction:column;gap:4px;max-height:calc(100dvh - 160px);overflow-y:auto}.site-header #navigation.open{display:flex}.site-header #navigation>a,.site-header #navigation summary{font-size:13px;justify-content:space-between;padding:13px 16px;border-radius:7px}.site-header #navigation details{width:100%}.site-header #navigation summary{background:#faf8fc}.site-header #navigation summary svg{width:14px;height:14px}.site-header #navigation .dropdown{position:static;width:auto;max-height:none;overflow:visible;box-shadow:none;border:0;border-left:2px solid #f6336f;border-radius:0;margin:8px 12px 12px;padding:0 5px}.site-header #navigation .dropdown a{padding:12px 13px}.dropdown-label{font-size:15px;padding:10px 13px}.dropdown-label small{font-size:7px}.header-emblem{width:50px;height:50px;font-size:21px;border-radius:15px 15px 15px 4px}.header-wordmark{font-size:24px}.header-wordmark small{font-size:7px}}
@media(max-width:600px){.site-header .header-main{gap:10px;flex-wrap:wrap;padding:16px 0 13px}.site-header .header-brand{gap:11px;margin-right:auto}.header-emblem{width:43px;height:43px;font-size:18px;border-radius:13px 13px 13px 4px}.header-emblem i{width:20px;height:20px;font-size:12px;right:-4px;top:-4px}.header-wordmark{font-size:22px}.header-wordmark small{font-size:6px;letter-spacing:.15em;margin-top:6px}.site-header #menu-toggle{width:40px;height:40px;margin-left:0}.site-header .header-book{order:3;flex-basis:100%;margin:5px 0 0;font-size:11px;padding:6px 8px 6px 17px;background:#f9f3f8;color:#9f184b;border-color:#f5d9e5;box-shadow:none;border-radius:8px;justify-content:space-between}.site-header .header-book svg{width:25px;height:25px;padding:6px;background:#f6336f;color:white;border-radius:50%}.site-header .header-book:hover{color:white}.site-header #navigation{max-height:calc(100dvh - 190px)}.site-header #navigation>a,.site-header #navigation summary{font-size:12px}}
@media(prefers-reduced-motion:reduce){.site-header *{transition:none!important}}
