/* Shared public header: homepage and all three library routes use this contract. */
.site-header{position:fixed;inset:0 0 auto;z-index:100;color:#2b2024;background:#fffdfbf5;border-bottom:1px solid #e9dfe2;backdrop-filter:blur(16px)}
.site-header .container{width:min(1240px,calc(100% - 64px));margin-inline:auto}
.site-header .nav-wrap{display:flex;align-items:center;gap:22px;min-height:78px}
.site-header .brand{display:inline-flex;align-items:center;gap:10px;font-family:"Cairo",sans-serif;font-size:.92rem;font-weight:800;flex-shrink:0;color:inherit;text-decoration:none;white-space:normal}
.site-header .brand span{max-width:155px;line-height:1.6;overflow-wrap:anywhere}.site-header .brand-mark{display:block;width:43px;height:43px;object-fit:contain;flex-shrink:0}
.site-header .main-nav{display:flex;align-items:center;justify-content:center;gap:2px;margin-inline:auto;min-width:0}
.site-header .main-nav a{position:relative;white-space:nowrap;padding:13px 11px;color:#70656a;font-family:"Tajawal",sans-serif;font-size:.88rem;font-weight:700;text-decoration:none}
.site-header .main-nav a::after{content:"";position:absolute;inset:auto 11px 5px;height:2px;background:#8a1538;transform:scaleX(0);transition:transform .2s}
.site-header .main-nav a:hover,.site-header .main-nav a.is-active,.site-header .main-nav a[aria-current]{color:#8a1538}
.site-header .main-nav a:hover::after,.site-header .main-nav a.is-active::after,.site-header .main-nav a[aria-current]::after{transform:scaleX(1)}
.site-header .nav-actions{display:flex;align-items:center;gap:14px;flex-shrink:0}.site-header .team-link{font-size:.82rem;color:#70656a;text-decoration:none}.site-header .main-nav .mobile-team-link{display:none}
.site-header .button{min-height:48px;padding:11px 21px;display:inline-flex;align-items:center;justify-content:center;gap:9px;border:1px solid transparent;border-radius:12px;font-family:"Tajawal",sans-serif;font-weight:800;line-height:1.5;text-decoration:none;box-shadow:none;white-space:normal;transition:background .2s,border-color .2s}
.site-header .button:hover{transform:none}.site-header .button.primary{background:#8a1538;color:#fff}.site-header .button.primary:hover{background:#67122d}.site-header .button.ghost{border-color:#e9dfe2;color:#8a1538;background:#fff}.site-header .button.small{min-height:40px;padding:8px 14px;font-size:.85rem;border-radius:10px}
.site-header .menu-button{display:none;place-items:center;width:42px;height:42px;border:1px solid #e9dfe2;background:#fff;border-radius:12px;color:#8a1538;cursor:pointer;padding:0;flex-shrink:0}.site-header .menu-button svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2}.site-header :focus-visible{outline:3px solid #bd6d86;outline-offset:4px}
@media(max-width:1200px){.site-header .container{width:calc(100% - 40px)}.site-header .nav-wrap{gap:16px}.site-header .main-nav a{padding-inline:8px;font-size:.83rem}.site-header .team-link{display:none}}
@media(max-width:1040px){.site-header .main-nav{display:none;position:absolute;top:100%;inset-inline:0;background:#fffdfb;border:0;border-bottom:1px solid #e9dfe2;border-radius:0;padding:14px 20px;margin:0;box-shadow:0 18px 25px #460c2015}.site-header .main-nav.is-open{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.site-header .main-nav a{padding:13px;font-size:.95rem;white-space:normal}.site-header .main-nav .mobile-team-link{display:block}.site-header .nav-actions{margin-inline-start:auto}.site-header .menu-button{display:inline-grid}}
@media(max-width:760px){.site-header .container{width:calc(100% - 32px)}.site-header .nav-wrap{min-height:70px;gap:10px}.site-header .brand{font-size:.82rem;gap:7px}.site-header .brand-mark{width:36px;height:36px}.site-header .brand span{max-width:125px}.site-header .nav-actions .button{font-size:.79rem;padding-inline:10px;min-height:40px}.site-header .nav-actions .button svg{display:none}.site-header .menu-button{width:40px;height:40px;border-radius:10px}}
@media(max-width:520px){.site-header .brand span{max-width:98px;font-size:.76rem}.site-header .nav-actions .button{font-size:.75rem;padding-inline:9px}.site-header .nav-wrap{gap:8px}}
@media(prefers-reduced-motion:reduce){.site-header *{transition-duration:.01ms!important}}
