:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--green-50:#eef7f1;--green-100:#d3ebdc;--green-200:#a5d7bb;--green-300:#6fbb95;--green-400:#3d9a70;--green-500:#16653b;--green-600:#125532;--green-700:#0e4429;--green-800:#0a3220;--green-900:#072317;--gold-50:#fdf8e9;--gold-100:#f9edc6;--gold-200:#f2dc93;--gold-300:#e5c65c;--gold-400:#c9a227;--gold-500:#a8851c;--gold-600:#866a16;--sand-50:#fdfcf9;--sand-100:#f7f5ef;--sand-200:#efece2;--sand-300:#e2ddcf;--ink-400:#8d8878;--ink-500:#6b6759;--ink-600:#4a4740;--ink-700:#2f2d28;--ink-800:#1d1c19;--ink-900:#121210;--primary:var(--green-500);--primary-hover:var(--green-600);--primary-soft:var(--green-50);--accent:var(--gold-400);--accent-hover:var(--gold-500);--accent-soft:var(--gold-50);--bg:var(--sand-50);--bg-alt:var(--sand-100);--surface:#fff;--surface-raised:#fff;--border:var(--sand-300);--border-soft:var(--sand-200);--text:var(--ink-800);--text-muted:var(--ink-500);--text-subtle:var(--ink-400);--text-inverse:#fff;--focus-ring:0 0 0 3px color-mix(in srgb, var(--primary) 35%, transparent);--shadow-xs:0 1px 2px #1212100a;--shadow-sm:0 1px 2px #1212100d, 0 2px 6px #1212100a;--shadow-md:0 2px 4px #1212100d, 0 8px 20px #12121012;--shadow-lg:0 4px 8px #1212100d, 0 18px 40px #1212101a;--shadow-xl:0 8px 16px #1212100f, 0 32px 68px #12121024;--shadow-brand:0 6px 24px color-mix(in srgb, var(--primary) 28%, transparent);--shadow-accent:0 6px 24px color-mix(in srgb, var(--accent) 34%, transparent);--r-xs:6px;--r-sm:10px;--r-md:16px;--r-lg:24px;--r-xl:32px;--r-full:999px;--text-xs:clamp(.72rem, .7rem + .1vw, .78rem);--text-sm:clamp(.82rem, .79rem + .14vw, .9rem);--text-base:clamp(.95rem, .91rem + .18vw, 1.05rem);--text-lg:clamp(1.06rem, 1rem + .3vw, 1.22rem);--text-xl:clamp(1.22rem, 1.12rem + .48vw, 1.5rem);--text-2xl:clamp(1.45rem, 1.28rem + .84vw, 2.05rem);--text-3xl:clamp(1.8rem, 1.48rem + 1.55vw, 2.9rem);--text-4xl:clamp(2.3rem, 1.7rem + 2.9vw, 4.3rem);--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:2.5rem;--space-8:3rem;--space-9:4rem;--space-10:5rem;--section-y:clamp(4.5rem, 3rem + 6vw, 8rem);--font-display:"Fraunces", "Merriweather", Georgia, serif;--font-body:"Plus Jakarta Sans", "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-urdu:"Noto Nastaliq Urdu", "Jameel Noori Nastaleeq", serif;--ease-out:cubic-bezier(.22, 1, .36, 1);--ease-spring:cubic-bezier(.34, 1.4, .44, 1);--t-fast:.16s;--t-base:.28s;--t-slow:.52s;--header-h:76px;--content-max:1200px}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}:root[data-theme=dark],:root:not([data-theme=light]){--dark-bg:#0d1512;--dark-bg-alt:#111c17;--dark-surface:#16221c;--dark-border:#24352c}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--primary:var(--green-300);--primary-hover:var(--green-200);--primary-soft:#12241a;--accent:var(--gold-300);--accent-hover:var(--gold-200);--accent-soft:#241f10;--bg:var(--dark-bg);--bg-alt:var(--dark-bg-alt);--surface:var(--dark-surface);--surface-raised:#1b2a22;--border:var(--dark-border);--border-soft:#1d2c24;--text:#eaf1ec;--text-muted:#a8b8ae;--text-subtle:#7d8d83;--shadow-xs:0 1px 2px #0000004d;--shadow-sm:0 1px 2px #00000059, 0 2px 6px #0000004d;--shadow-md:0 2px 4px #00000059, 0 8px 20px #0006;--shadow-lg:0 4px 8px #00000059, 0 18px 40px #00000080;--shadow-xl:0 8px 16px #0006, 0 32px 68px #0009}}:root[data-theme=dark]{--primary:var(--green-300);--primary-hover:var(--green-200);--primary-soft:#12241a;--accent:var(--gold-300);--accent-hover:var(--gold-200);--accent-soft:#241f10;--bg:var(--dark-bg);--bg-alt:var(--dark-bg-alt);--surface:var(--dark-surface);--surface-raised:#1b2a22;--border:var(--dark-border);--border-soft:#1d2c24;--text:#eaf1ec;--text-muted:#a8b8ae;--text-subtle:#7d8d83;--shadow-xs:0 1px 2px #0000004d;--shadow-sm:0 1px 2px #00000059, 0 2px 6px #0000004d;--shadow-md:0 2px 4px #00000059, 0 8px 20px #0006;--shadow-lg:0 4px 8px #00000059, 0 18px 40px #00000080;--shadow-xl:0 8px 16px #0006, 0 32px 68px #0009}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + 16px);-webkit-text-size-adjust:100%}body{font-family:var(--font-body);font-size:var(--text-base);color:var(--text);background-color:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-synthesis-weight:none;transition:background-color var(--t-base) var(--ease-out), color var(--t-base) var(--ease-out);line-height:1.65;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);letter-spacing:-.02em;text-wrap:balance;color:var(--text);font-weight:600;line-height:1.15}p{text-wrap:pretty}a{color:inherit;transition:color var(--t-fast) var(--ease-out);text-decoration:none}img{max-width:100%;height:auto;display:block}ul{list-style:none}button{font-family:inherit;font-size:inherit;cursor:pointer;color:inherit;background:0 0;border:none}input,select,textarea{font-family:inherit;font-size:inherit;color:inherit}:focus-visible{outline:2px solid var(--primary);outline-offset:3px;border-radius:var(--r-xs)}::selection{background:color-mix(in srgb, var(--accent) 40%, transparent);color:var(--ink-900)}.container{width:100%;max-width:var(--content-max);margin-inline:auto;padding-inline:clamp(1rem,.5rem + 2.5vw,2rem)}.section{padding-block:var(--section-y)}.section--alt{background:var(--bg-alt)}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:2000;background:var(--primary);color:var(--text-inverse);border-radius:var(--r-sm);font-weight:600;font-size:var(--text-sm);transition:transform var(--t-base) var(--ease-out);padding:12px 20px;position:fixed;top:8px;left:8px;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}.section-head{max-width:46rem;margin-bottom:clamp(2.5rem,2rem + 2vw,4rem)}.section-head--center{text-align:center;margin-inline:auto}.section-label{font-size:var(--text-xs);letter-spacing:.14em;text-transform:uppercase;color:var(--primary);background:var(--primary-soft);border:1px solid color-mix(in srgb, var(--primary) 18%, transparent);border-radius:var(--r-full);margin-bottom:var(--space-4);align-items:center;gap:8px;padding:6px 14px;font-weight:700;display:inline-flex}.section-label:before{content:"";background:var(--accent);border-radius:50%;width:5px;height:5px}.section-title{font-size:var(--text-3xl);margin-bottom:var(--space-4)}.title-accent{color:var(--primary);background-image:linear-gradient(to top, color-mix(in srgb, var(--accent) 42%, transparent) .3em, transparent .3em);padding-inline:.06em}.section-desc{font-size:var(--text-lg);color:var(--text-muted);max-width:40rem;line-height:1.7}.section-head--center .section-desc{margin-inline:auto}.btn{font-size:var(--text-sm);letter-spacing:.01em;border-radius:var(--r-full);transition:transform var(--t-fast) var(--ease-out), box-shadow var(--t-fast) var(--ease-out), background-color var(--t-fast) var(--ease-out), border-color var(--t-fast) var(--ease-out), color var(--t-fast) var(--ease-out);white-space:nowrap;justify-content:center;align-items:center;gap:10px;padding:13px 26px;font-weight:600;display:inline-flex}.btn:active{transform:translateY(1px)scale(.99)}.btn .icon{transition:transform var(--t-base) var(--ease-spring)}.btn:hover .icon{transform:translate(3px)}.btn--primary{background:var(--primary);color:var(--text-inverse);box-shadow:var(--shadow-sm)}.btn--primary:hover{background:var(--primary-hover);color:var(--text-inverse);box-shadow:var(--shadow-brand);transform:translateY(-2px)}.btn--accent{background:var(--accent);color:var(--ink-900);box-shadow:var(--shadow-sm)}.btn--accent:hover{background:var(--accent-hover);color:var(--ink-900);box-shadow:var(--shadow-accent);transform:translateY(-2px)}.btn--ghost{background:color-mix(in srgb, var(--surface) 12%, transparent);color:var(--text-inverse);-webkit-backdrop-filter:blur(10px);border:1px solid #ffffff47}.btn--ghost:hover{color:var(--text-inverse);background:#fff3;border-color:#ffffff73;transform:translateY(-2px)}.btn--outline{border:1.5px solid var(--border);color:var(--text);background:var(--surface)}.btn--outline:hover{border-color:var(--primary);color:var(--primary);box-shadow:var(--shadow-sm);transform:translateY(-2px)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);transition:transform var(--t-base) var(--ease-out), box-shadow var(--t-base) var(--ease-out), border-color var(--t-base) var(--ease-out)}.card--interactive:hover{box-shadow:var(--shadow-lg);border-color:color-mix(in srgb, var(--primary) 24%, transparent);transform:translateY(-4px)}[data-reveal]{opacity:0;transition:opacity var(--t-slow) var(--ease-out), transform var(--t-slow) var(--ease-out);transition-delay:calc(var(--i,0) * 70ms);transform:translateY(24px)}[data-reveal=shown]{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}[data-reveal]{opacity:1;transform:none}}.crest__ring-outer{fill:none;stroke:var(--accent);stroke-width:2px}.crest__disc{fill:var(--primary)}.crest__ring-inner{fill:none;stroke:color-mix(in srgb, var(--accent) 55%, transparent);stroke-width:1px}.crest__mark{fill:var(--accent)}.crest__book{fill:none;stroke:var(--accent);stroke-width:2.4px;stroke-linejoin:round}.crest__spine,.crest__sheaf{fill:none;stroke:var(--accent);stroke-width:2.4px;stroke-linecap:round}.navbar{z-index:1000;height:var(--header-h);transition:background-color var(--t-base) var(--ease-out), box-shadow var(--t-base) var(--ease-out), border-color var(--t-base) var(--ease-out);border-bottom:1px solid #0000;align-items:center;display:flex;position:fixed;inset:0 0 auto}.navbar--scrolled,.navbar--open{background:color-mix(in srgb, var(--bg) 82%, transparent);-webkit-backdrop-filter:blur(16px)saturate(180%);border-bottom-color:var(--border-soft);box-shadow:var(--shadow-sm)}.navbar__inner{justify-content:space-between;align-items:center;gap:var(--space-5);width:100%;display:flex}.navbar__brand{z-index:10;flex-shrink:0;align-items:center;gap:12px;display:flex}.navbar__crest{transition:transform var(--t-base) var(--ease-spring);flex-shrink:0}.navbar__brand:hover .navbar__crest{transform:rotate(-8deg)scale(1.06)}.navbar__brand-text{flex-direction:column;line-height:1.2;display:flex}.navbar__school-name{font-family:var(--font-display);font-size:var(--text-base);letter-spacing:-.02em;color:#fff;transition:color var(--t-base) var(--ease-out);font-weight:600}.navbar__location{letter-spacing:.16em;text-transform:uppercase;color:#ffffffa8;transition:color var(--t-base) var(--ease-out);font-size:.66rem;font-weight:600}.navbar--scrolled .navbar__school-name,.navbar--open .navbar__school-name{color:var(--text)}.navbar--scrolled .navbar__location,.navbar--open .navbar__location{color:var(--text-subtle)}.navbar__nav{align-items:center;gap:var(--space-5);margin-left:auto;display:flex}.navbar__links{align-items:center;gap:4px;display:flex}.navbar__link{font-size:var(--text-sm);border-radius:var(--r-full);color:#ffffffe0;transition:color var(--t-fast) var(--ease-out), background-color var(--t-fast) var(--ease-out);padding:8px 13px;font-weight:500;display:block;position:relative}.navbar--scrolled .navbar__link,.navbar--open .navbar__link{color:var(--text-muted)}.navbar__link:hover{color:#fff;background:#ffffff24}.navbar--scrolled .navbar__link:hover,.navbar--open .navbar__link:hover{background:var(--primary-soft);color:var(--primary)}.navbar__link--active:after{content:"";background:var(--accent);border-radius:50%;width:5px;height:5px;position:absolute;bottom:1px;left:50%;translate:-50%}.navbar--scrolled .navbar__link--active,.navbar--open .navbar__link--active{color:var(--primary);font-weight:600}.navbar__cta{font-size:var(--text-sm);color:var(--ink-900);background:var(--accent);border-radius:var(--r-full);white-space:nowrap;transition:transform var(--t-fast) var(--ease-out), box-shadow var(--t-fast) var(--ease-out), background-color var(--t-fast) var(--ease-out);align-items:center;gap:7px;padding:9px 18px;font-weight:600;display:inline-flex}.navbar__cta:hover{background:var(--accent-hover);color:var(--ink-900);box-shadow:var(--shadow-accent);transform:translateY(-1px)}.navbar__cta .icon{transition:transform var(--t-base) var(--ease-spring)}.navbar__cta:hover .icon{transform:translate(3px)}.navbar__actions{z-index:10;align-items:center;gap:10px;display:flex}.navbar__hamburger{border-radius:var(--r-sm);color:#fff;width:40px;height:40px;transition:background-color var(--t-fast) var(--ease-out);justify-content:center;align-items:center;display:none}.navbar--scrolled .navbar__hamburger,.navbar--open .navbar__hamburger{color:var(--text)}.navbar__hamburger:hover{background:color-mix(in srgb, currentColor 12%, transparent)}.theme-toggle{border-radius:var(--r-full);align-items:center;padding:4px;display:flex}.theme-toggle__track{border-radius:var(--r-full);color:#fff;width:60px;height:30px;transition:background-color var(--t-base) var(--ease-out), border-color var(--t-base) var(--ease-out), color var(--t-base) var(--ease-out);background:#ffffff29;border:1px solid #ffffff40;justify-content:space-between;align-items:center;gap:4px;padding:0 7px;display:flex;position:relative}.navbar--scrolled .theme-toggle__track,.navbar--open .theme-toggle__track{background:var(--bg-alt);border-color:var(--border);color:var(--text-muted)}.theme-toggle__thumb{background:var(--accent);width:22px;height:22px;box-shadow:var(--shadow-sm);transition:translate var(--t-base) var(--ease-spring);border-radius:50%;position:absolute;top:3px;left:3px}:root[data-theme=dark] .theme-toggle__thumb{translate:30px}.theme-toggle__sun,.theme-toggle__moon{z-index:1;transition:opacity var(--t-base) var(--ease-out);position:relative}.theme-toggle__sun{color:var(--ink-900)}:root[data-theme=dark] .theme-toggle__sun{color:inherit;opacity:.55}:root[data-theme=dark] .theme-toggle__moon{color:var(--ink-900)}:root:not([data-theme=dark]) .theme-toggle__moon{opacity:.55}.hero{isolation:isolate;align-items:center;min-height:100svh;display:flex;position:relative;overflow:hidden}.hero__bg{z-index:-2;position:absolute;inset:0}.hero__bg-img{object-fit:cover;object-position:center 35%;width:100%;height:100%}.hero__scrim{background:linear-gradient(120deg, color-mix(in srgb, var(--green-800) 92%, transparent) 0%, color-mix(in srgb, var(--green-700) 72%, transparent) 45%, color-mix(in srgb, var(--ink-900) 62%, transparent) 100%), linear-gradient(to top, #072317bf 0%, transparent 55%);position:absolute;inset:0}.hero__glow{aspect-ratio:1;background:radial-gradient(circle, color-mix(in srgb, var(--gold-300) 26%, transparent) 0%, transparent 68%);filter:blur(20px);pointer-events:none;border-radius:50%;width:min(700px,70vw);position:absolute;top:-18%;right:-12%}.hero__content{z-index:1;padding-block:calc(var(--header-h) + 3rem) 4rem;max-width:52rem;position:relative}.hero__badge{font-size:var(--text-xs);letter-spacing:.05em;color:#ffffffeb;border-radius:var(--r-full);margin-bottom:var(--space-5);-webkit-backdrop-filter:blur(8px);animation:fade-up .7s var(--ease-out) both;background:#ffffff1f;border:1px solid #ffffff38;align-items:center;gap:8px;padding:7px 16px;font-weight:600;display:inline-flex}.hero__badge .icon{color:var(--accent)}.hero__title{font-size:var(--text-4xl);color:#fff;letter-spacing:-.035em;margin-bottom:var(--space-5);animation:fade-up .7s 90ms var(--ease-out) both;line-height:1.05}.hero__title-line{display:block}.hero__title em{color:var(--gold-300);font-style:italic}.hero__subtitle{font-size:var(--text-lg);color:#ffffffd1;max-width:36rem;margin-bottom:var(--space-7);animation:fade-up .7s .18s var(--ease-out) both;line-height:1.7}.hero__actions{gap:var(--space-3);margin-bottom:var(--space-9);animation:fade-up .7s .27s var(--ease-out) both;flex-wrap:wrap;display:flex}.hero__stats{gap:var(--space-4);padding-top:var(--space-6);animation:fade-up .7s .36s var(--ease-out) both;border-top:1px solid #ffffff2e;grid-template-columns:repeat(4,1fr);display:grid}.hero__stat-value{font-family:var(--font-display);font-size:var(--text-2xl);color:#fff;letter-spacing:-.03em;align-items:baseline;margin:0;font-weight:600;display:flex}.hero__stat-suffix{color:var(--gold-300)}.hero__stat-label{font-size:var(--text-xs);color:#ffffff9e;order:2;font-weight:500}.hero__stat{flex-direction:column;display:flex}.hero__scroll{z-index:1;letter-spacing:.22em;text-transform:uppercase;color:#ffffff8c;transition:color var(--t-fast) var(--ease-out);flex-direction:column;align-items:center;gap:6px;font-size:.64rem;font-weight:600;display:flex;position:absolute;bottom:26px;left:50%;translate:-50%}.hero__scroll:hover{color:#fff}.hero__scroll .icon{animation:bob 2.4s var(--ease-out) infinite}@keyframes bob{0%,to{opacity:.55;transform:translateY(0)}50%{opacity:1;transform:translateY(6px)}}@keyframes fade-up{0%{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}.page-header{isolation:isolate;background:linear-gradient(140deg, var(--green-700), var(--green-900) 70%);padding-block:calc(var(--header-h) + 3.5rem) 3.5rem;position:relative;overflow:hidden}.page-header__glow{aspect-ratio:1;background:radial-gradient(circle, color-mix(in srgb, var(--gold-300) 22%, transparent) 0%, transparent 68%);pointer-events:none;z-index:-1;border-radius:50%;width:min(560px,60vw);position:absolute;top:-55%;right:-8%}.page-header__inner{max-width:52rem;position:relative}.breadcrumb{font-size:var(--text-xs);color:#ffffff8c;margin-bottom:var(--space-4);align-items:center;gap:7px;font-weight:500;display:flex}.breadcrumb a:hover{color:var(--gold-300)}.breadcrumb span{color:var(--gold-300);font-weight:600}.page-header__label{font-size:var(--text-xs);letter-spacing:.14em;text-transform:uppercase;color:var(--gold-300);border-radius:var(--r-full);margin-bottom:var(--space-4);background:#ffffff1a;border:1px solid #ffffff2e;align-items:center;gap:8px;padding:6px 14px;font-weight:700;display:inline-flex}.page-header__title{font-size:var(--text-3xl);color:#fff;letter-spacing:-.03em;margin-bottom:var(--space-3)}.page-header__title em{color:var(--gold-300);font-style:italic}.page-header__desc{font-size:var(--text-lg);color:#ffffffbf;max-width:40rem;line-height:1.7}.section-cta{margin-top:var(--space-7);justify-content:center;display:flex}.about__more{margin-top:var(--space-5)}.stat-band{gap:var(--space-4);padding:var(--space-6);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);margin-bottom:var(--space-7);grid-template-columns:repeat(4,1fr);display:grid}.stat-band__item{text-align:center;flex-direction:column;display:flex}.stat-band__value{font-family:var(--font-display);font-size:var(--text-3xl);color:var(--primary);letter-spacing:-.03em;order:-1;font-weight:600;line-height:1.1}.stat-band__value span{color:var(--accent)}.stat-band__label{font-size:var(--text-xs);color:var(--text-muted);font-weight:500}.value-grid{gap:var(--space-5);grid-template-columns:repeat(auto-fit,minmax(min(17rem,100%),1fr));display:grid}.value-card{padding:var(--space-5)}.value-card__icon{border-radius:var(--r-md);background:var(--primary-soft);width:46px;height:46px;color:var(--primary);margin-bottom:var(--space-4);place-items:center;display:grid}.value-card__title{font-size:var(--text-lg);margin-bottom:6px}.value-card__text{font-size:var(--text-sm);color:var(--text-muted);line-height:1.7}.cta-band{background:linear-gradient(130deg, var(--green-600), var(--green-800));padding-block:var(--space-8)}.cta-band__inner{justify-content:space-between;align-items:center;gap:var(--space-5);flex-wrap:wrap;display:flex}.cta-band__title{font-size:var(--text-2xl);color:#fff;margin-bottom:6px}.cta-band__text{font-size:var(--text-base);color:#ffffffb8;max-width:34rem}.notfound{min-height:70svh;padding-block:calc(var(--header-h) + 3rem) var(--space-9);text-align:center;place-items:center;display:grid}.notfound__inner{max-width:34rem}.notfound__code{font-family:var(--font-display);color:var(--primary-soft);margin-bottom:var(--space-3);font-size:clamp(4rem,2rem + 12vw,7rem);font-weight:700;line-height:1;display:block}:root[data-theme=dark] .notfound__code{color:var(--green-800)}.notfound__title{font-size:var(--text-2xl);margin-bottom:var(--space-3)}.notfound__text{font-size:var(--text-base);color:var(--text-muted);margin-bottom:var(--space-6)}.notfound__actions{gap:var(--space-3);flex-wrap:wrap;justify-content:center;display:flex}.about__grid{grid-template-columns:.95fr 1.05fr;align-items:center;gap:clamp(2.5rem,1.5rem + 4vw,5rem);display:grid}.about__media{isolation:isolate;position:relative}.about__image-frame{border-radius:var(--r-xl);box-shadow:var(--shadow-xl);position:relative;overflow:hidden}.about__media:after{content:"";border:2px solid var(--accent);border-radius:var(--r-xl);z-index:-1;position:absolute;inset:22px -22px -22px 22px}.about__image{aspect-ratio:4/3;object-fit:cover;width:100%;transition:transform var(--t-slow) var(--ease-out)}.about__image-frame:hover .about__image{transform:scale(1.04)}.about__badge{background:var(--primary);color:var(--text-inverse);border-radius:var(--r-md);box-shadow:var(--shadow-lg);flex-direction:column;gap:2px;max-width:13rem;padding:16px 22px;display:flex;position:absolute;bottom:-1.75rem;right:clamp(-1rem,-2vw,0rem)}.about__badge-value{font-family:var(--font-display);font-size:var(--text-2xl);color:var(--gold-200);font-weight:600;line-height:1}.about__badge-label{font-size:var(--text-xs);color:#ffffffd1;line-height:1.4}.about__text{font-size:var(--text-base);color:var(--text-muted);margin-bottom:var(--space-4);line-height:1.8}.about__pillars{gap:var(--space-4);margin-top:var(--space-6);display:grid}.about__pillar{background:var(--bg-alt);border:1px solid var(--border-soft);border-radius:var(--r-md);transition:border-color var(--t-base) var(--ease-out), transform var(--t-base) var(--ease-out);align-items:flex-start;gap:14px;padding:18px;display:flex}.about__pillar:hover{border-color:color-mix(in srgb, var(--primary) 30%, transparent);transform:translate(4px)}.about__pillar-icon{border-radius:var(--r-sm);background:var(--primary);width:40px;height:40px;color:var(--text-inverse);flex-shrink:0;place-items:center;display:grid}.about__pillar strong{font-size:var(--text-base);color:var(--text);margin-bottom:2px;font-weight:700;display:block}.about__pillar p{font-size:var(--text-sm);color:var(--text-muted);line-height:1.6}.programs__grid,.faculty__grid,.gallery__facilities{gap:var(--space-5);grid-template-columns:repeat(auto-fit,minmax(min(19rem,100%),1fr));display:grid}.programs__card{padding:var(--space-6) var(--space-5) var(--space-5);position:relative;overflow:hidden}.programs__card:before{content:"";background:linear-gradient(90deg, var(--primary), var(--accent));transform-origin:0;height:3px;transition:scale var(--t-base) var(--ease-out);position:absolute;inset:0 0 auto;scale:0 1}.programs__card:hover:before{scale:1}.programs__step{top:var(--space-5);right:var(--space-5);font-family:var(--font-display);font-size:var(--text-2xl);color:var(--border);transition:color var(--t-base) var(--ease-out);font-weight:600;line-height:1;position:absolute}.programs__card:hover .programs__step{color:color-mix(in srgb, var(--accent) 50%, transparent)}.programs__icon{border-radius:var(--r-md);background:var(--primary-soft);width:52px;height:52px;color:var(--primary);margin-bottom:var(--space-5);transition:background-color var(--t-base) var(--ease-out), color var(--t-base) var(--ease-out), transform var(--t-base) var(--ease-spring);place-items:center;display:grid}.programs__card:hover .programs__icon{background:var(--primary);color:var(--text-inverse);transform:translateY(-2px)rotate(-5deg)}.programs__level{font-size:var(--text-xl);margin-bottom:4px}.programs__ages{font-size:var(--text-xs);letter-spacing:.1em;text-transform:uppercase;color:var(--accent-hover);margin-bottom:var(--space-3);font-weight:700;display:inline-block}.programs__desc{font-size:var(--text-sm);color:var(--text-muted);line-height:1.7}.faculty__card{padding:var(--space-5);flex-direction:column;display:flex}.faculty__head{margin-bottom:var(--space-4);align-items:center;gap:14px;display:flex}.faculty__avatar{border-radius:var(--r-md);width:54px;height:54px;font-family:var(--font-body);font-size:var(--text-base);letter-spacing:.04em;color:var(--text-inverse);box-shadow:var(--shadow-sm);transition:transform var(--t-base) var(--ease-spring);flex-shrink:0;place-items:center;font-weight:700;display:grid}.faculty__card:hover .faculty__avatar{transform:scale(1.06)rotate(-4deg)}.faculty__avatar{overflow:hidden}.faculty__avatar img{object-fit:cover;object-position:center 30%;width:100%;height:100%}.faculty__avatar[data-tone=green]{background:linear-gradient(135deg,#16653b,#2d8b57)}.faculty__avatar[data-tone=gold]{background:linear-gradient(135deg,#a8851c,#d4b04a)}.faculty__avatar[data-tone=blue]{background:linear-gradient(135deg,#2f5d8a,#5183b5)}.faculty__avatar[data-tone=plum]{background:linear-gradient(135deg,#5f4478,#8768a4)}.faculty__avatar[data-tone=clay]{background:linear-gradient(135deg,#a5503f,#c9776a)}.faculty__avatar[data-tone=teal]{background:linear-gradient(135deg,#1f6f68,#45988f)}.faculty__name{font-size:var(--text-lg);margin-bottom:1px}.faculty__role{font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--text-subtle);font-weight:600}.faculty__subject{font-size:var(--text-xs);color:var(--primary);background:var(--primary-soft);border-radius:var(--r-full);margin-bottom:var(--space-3);align-self:flex-start;align-items:center;gap:6px;padding:5px 12px;font-weight:600;display:inline-flex}.faculty__desc{font-size:var(--text-sm);color:var(--text-muted);line-height:1.7}.faculty__link{padding-top:var(--space-4);font-size:var(--text-sm);color:var(--primary);align-self:flex-start;align-items:center;gap:6px;margin-top:auto;font-weight:600;display:inline-flex}.faculty__link .icon{transition:transform var(--t-base) var(--ease-spring)}.faculty__link:hover{color:var(--primary-hover)}.faculty__link:hover .icon{transform:translate(3px)}.profile{gap:var(--space-5);grid-template-columns:minmax(0,20rem) minmax(0,1fr);align-items:start;display:grid}.profile+.profile{margin-top:var(--space-8);padding-top:var(--space-8);border-top:1px solid var(--border)}.profile__aside{top:calc(var(--header-h) + 1.5rem);padding:var(--space-6) var(--space-5);text-align:center;border-top:3px solid var(--primary);position:sticky}.profile__portrait{width:140px;height:140px;margin:0 auto var(--space-4);background:var(--primary);border:3px solid var(--surface);box-shadow:0 0 0 3px var(--accent), var(--shadow-md);border-radius:50%;place-items:center;display:grid;overflow:hidden}.profile__portrait[data-tone=green]{background:linear-gradient(135deg,#16653b,#2d8b57)}.profile__portrait[data-tone=gold]{background:linear-gradient(135deg,#a8851c,#d4b04a)}.profile__portrait[data-tone=blue]{background:linear-gradient(135deg,#2f5d8a,#5183b5)}.profile__portrait[data-tone=plum]{background:linear-gradient(135deg,#5f4478,#8768a4)}.profile__portrait[data-tone=clay]{background:linear-gradient(135deg,#a5503f,#c9776a)}.profile__portrait[data-tone=teal]{background:linear-gradient(135deg,#1f6f68,#45988f)}.profile__image{object-fit:cover;object-position:center 30%;width:100%;height:100%}.profile__monogram{font-family:var(--font-display);letter-spacing:.02em;color:var(--gold-200);font-size:2.1rem;font-weight:600}.profile__name{font-size:var(--text-xl);color:var(--primary);margin-bottom:3px}.profile__role{font-size:var(--text-sm);color:var(--accent-hover);margin-bottom:var(--space-5);font-weight:600}.profile__highlights{padding-block:var(--space-4);border-block:1px solid var(--border-soft);margin-bottom:var(--space-4);gap:8px;display:grid}.profile__highlights li{font-size:var(--text-sm);color:var(--text-muted);text-align:left;align-items:center;gap:10px;display:flex}.profile__highlights .icon{color:var(--accent-hover);flex-shrink:0}.profile__highlights strong{color:var(--text)}.profile__quote{font-family:var(--font-display);font-size:var(--text-sm);color:var(--text-muted);text-align:left;padding-left:var(--space-6);font-style:italic;line-height:1.65;position:relative}.profile__quote-mark{color:color-mix(in srgb, var(--accent) 55%, transparent);position:absolute;top:-2px;left:0}.profile__details{gap:var(--space-5);grid-template-columns:repeat(auto-fit,minmax(min(18rem,100%),1fr));display:grid}.profile__block{padding:var(--space-5)}.profile__block-title{font-size:var(--text-lg);margin-bottom:var(--space-4);align-items:center;gap:10px;display:flex}.profile__block-icon{border-radius:var(--r-sm);background:var(--accent-soft);width:34px;height:34px;color:var(--accent-hover);flex-shrink:0;place-items:center;display:grid}.profile__list{gap:10px;display:grid}.profile__list li{font-size:var(--text-sm);color:var(--text-muted);align-items:flex-start;gap:10px;line-height:1.6;display:flex}.profile__list .icon{color:var(--primary);flex-shrink:0;margin-top:3px}.headmaster__trainings{margin-top:var(--space-5);padding:var(--space-6);background:var(--bg-alt);border:1px solid var(--border);border-radius:var(--r-lg)}.headmaster__trainings .headmaster__tags li{background:var(--surface)}.headmaster__trainings-title{text-align:center;font-size:var(--text-xl);margin-bottom:var(--space-5)}.headmaster__tags{flex-wrap:wrap;justify-content:center;gap:9px;display:flex}.headmaster__tags li{font-size:var(--text-xs);color:var(--text-muted);background:var(--bg-alt);border:1px solid var(--border-soft);border-radius:var(--r-full);transition:background-color var(--t-fast) var(--ease-out), color var(--t-fast) var(--ease-out), border-color var(--t-fast) var(--ease-out), transform var(--t-fast) var(--ease-out);padding:7px 15px;font-weight:500}.headmaster__tags li:hover{background:var(--primary);color:var(--text-inverse);border-color:var(--primary);transform:translateY(-2px)}.gallery__facility{padding:var(--space-5)}.gallery__facility-icon{border-radius:var(--r-md);background:var(--accent-soft);width:46px;height:46px;color:var(--accent-hover);margin-bottom:var(--space-4);transition:background-color var(--t-base) var(--ease-out), color var(--t-base) var(--ease-out);place-items:center;display:grid}.gallery__facility:hover .gallery__facility-icon{background:var(--accent);color:var(--ink-900)}.gallery__facility-title{font-size:var(--text-lg);margin-bottom:6px}.gallery__facility-desc{font-size:var(--text-sm);color:var(--text-muted);line-height:1.7}.gallery__divider{margin-top:clamp(3.5rem,2.5rem + 4vw,6rem)}.gallery__grid{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(min(18rem,100%),1fr));display:grid}.gallery__item{border-radius:var(--r-lg);width:100%;box-shadow:var(--shadow-sm);transition:transform var(--t-base) var(--ease-out), box-shadow var(--t-base) var(--ease-out);padding:0;display:block;position:relative;overflow:hidden}.gallery__item:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px)}.gallery__photo{aspect-ratio:4/3;object-fit:cover;background:var(--bg-alt);width:100%;transition:transform var(--t-slow) var(--ease-out)}.gallery__item:hover .gallery__photo{transform:scale(1.07)}.gallery__overlay{opacity:0;transition:opacity var(--t-base) var(--ease-out);background:linear-gradient(#0000 45%,#072317d9 100%);justify-content:space-between;align-items:flex-end;gap:12px;padding:18px;display:flex;position:absolute;inset:0}.gallery__item:hover .gallery__overlay,.gallery__item:focus-visible .gallery__overlay{opacity:1}.gallery__caption{font-size:var(--text-sm);color:#fff;text-align:left;font-weight:600}.gallery__zoom{color:#fff;-webkit-backdrop-filter:blur(6px);background:#ffffff38;border:1px solid #ffffff59;border-radius:50%;flex-shrink:0;place-items:center;width:32px;height:32px;display:grid}.lightbox{z-index:1500;justify-content:center;align-items:center;gap:var(--space-4);-webkit-backdrop-filter:blur(8px);animation:fade-in var(--t-base) var(--ease-out);background:#070c09eb;padding:clamp(1rem,4vw,3rem);display:flex;position:fixed;inset:0}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.lightbox__figure{align-items:center;gap:var(--space-3);max-width:min(1000px,100%);max-height:100%;animation:zoom-in var(--t-base) var(--ease-out);flex-direction:column;display:flex}@keyframes zoom-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:none}}.lightbox__image{object-fit:contain;border-radius:var(--r-md);width:auto;max-width:100%;max-height:78vh;box-shadow:var(--shadow-xl)}.lightbox__caption{font-size:var(--text-sm);color:#fff;align-items:center;gap:12px;font-weight:600;display:flex}.lightbox__counter{color:#ffffff8c;font-weight:400}.lightbox__close,.lightbox__nav{color:#fff;width:44px;height:44px;transition:background-color var(--t-fast) var(--ease-out), transform var(--t-fast) var(--ease-out);background:#ffffff1f;border:1px solid #ffffff38;border-radius:50%;flex-shrink:0;place-items:center;display:grid}.lightbox__close:hover,.lightbox__nav:hover{background:#ffffff42;transform:scale(1.06)}.lightbox__close{position:absolute;top:clamp(1rem,3vw,2rem);right:clamp(1rem,3vw,2rem)}.contact__grid{grid-template-columns:1fr 1fr;align-items:start;gap:clamp(2.5rem,1.5rem + 4vw,5rem);display:grid}.contact__intro{margin-bottom:var(--space-6)}.contact__details{gap:var(--space-4);display:grid}.contact__detail{align-items:flex-start;gap:14px;display:flex}.contact__detail-icon{border-radius:var(--r-md);background:var(--surface);border:1px solid var(--border-soft);width:42px;height:42px;color:var(--primary);box-shadow:var(--shadow-xs);flex-shrink:0;place-items:center;display:grid}.contact__detail strong{font-size:var(--text-sm);color:var(--text);margin-bottom:1px;font-weight:700;display:block}.contact__detail p{font-size:var(--text-sm);color:var(--text-muted);line-height:1.6}.contact__link{color:var(--primary);text-underline-offset:3px;text-decoration:underline;text-decoration-thickness:1px;-webkit-text-decoration-color:color-mix(in srgb, var(--primary) 40%, transparent);text-decoration-color:color-mix(in srgb, var(--primary) 40%, transparent)}.contact__link:hover{color:var(--primary-hover);text-decoration-color:currentColor}.contact__pending{color:var(--text-subtle);font-style:italic}.contact__form-card{box-shadow:var(--shadow-md);padding:clamp(1.5rem,1rem + 2vw,2.5rem)}.contact__form-title{font-size:var(--text-xl);margin-bottom:var(--space-5)}.contact__form{gap:var(--space-4);display:grid}.field label{font-size:var(--text-sm);color:var(--text);margin-bottom:6px;font-weight:600;display:block}.field input,.field select,.field textarea{width:100%;font-size:var(--text-sm);background:var(--bg);border:1.5px solid var(--border);border-radius:var(--r-sm);transition:border-color var(--t-fast) var(--ease-out), box-shadow var(--t-fast) var(--ease-out);padding:12px 15px}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--primary);box-shadow:var(--focus-ring);outline:none}.field input::placeholder,.field textarea::placeholder{color:var(--text-subtle)}.field textarea{resize:vertical;min-height:110px}.field select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%236b6759' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;padding-right:40px}.field .is-invalid{border-color:#c0392b}.field .is-invalid:focus{box-shadow:0 0 0 3px #c0392b2e}.field__error{font-size:var(--text-xs);color:#c0392b;margin-top:5px;display:block}:root[data-theme=dark] .field__error,:root[data-theme=dark] .field .is-invalid{color:#ff8a7a;border-color:#ff8a7a}.contact__submit{justify-self:start}.contact__success{text-align:center;align-items:center;gap:var(--space-3);padding-block:var(--space-6);flex-direction:column;display:flex}.contact__success-icon{background:var(--primary-soft);width:62px;height:62px;color:var(--primary);margin-bottom:var(--space-2);animation:pop .48s var(--ease-spring) both;border-radius:50%;place-items:center;display:grid}@keyframes pop{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:none}}.contact__success h3{font-size:var(--text-xl)}.contact__success p{font-size:var(--text-sm);color:var(--text-muted);max-width:24rem;margin-bottom:var(--space-3)}.contact__map{border-radius:var(--r-lg);border:1px solid var(--border-soft);box-shadow:var(--shadow-md);margin-top:clamp(3rem,2rem + 3vw,4.5rem);overflow:hidden}.footer{background:var(--green-900);color:#ffffff9e;padding-top:var(--space-9)}.footer__grid{gap:var(--space-6);padding-bottom:var(--space-8);grid-template-columns:1.7fr 1fr 1fr 1.2fr;display:grid}.footer__logo{margin-bottom:var(--space-4);align-items:center;gap:12px;display:inline-flex}.footer__logo-text{font-family:var(--font-display);font-size:var(--text-base);color:#fff;flex-direction:column;font-weight:600;line-height:1.25;display:flex}.footer__logo-text span{font-family:var(--font-body);letter-spacing:.16em;text-transform:uppercase;color:var(--gold-300);font-size:.66rem;font-weight:600}.footer__tagline{font-size:var(--text-sm);color:#ffffff85;max-width:24rem;margin-bottom:var(--space-4);line-height:1.75}.footer__urdu{font-family:var(--font-urdu);color:#ffffff6b;font-size:1.05rem;line-height:2.4}.footer__heading{font-family:var(--font-body);font-size:var(--text-xs);letter-spacing:.16em;text-transform:uppercase;color:#fff;margin-bottom:var(--space-4);font-weight:700}.footer__link{font-size:var(--text-sm);color:#ffffff8c;transition:color var(--t-fast) var(--ease-out), transform var(--t-fast) var(--ease-out);padding-block:5px;display:inline-block}.footer__link:hover{color:var(--gold-300);transform:translate(4px)}.footer__contact{gap:11px;display:grid}.footer__contact li{font-size:var(--text-sm);color:#ffffff8c;align-items:flex-start;gap:10px;line-height:1.5;display:flex}.footer__contact .icon{color:var(--gold-300);flex-shrink:0;margin-top:2px}.footer__bottom{justify-content:space-between;align-items:center;gap:var(--space-4);padding-block:var(--space-5);border-top:1px solid #ffffff1a;flex-wrap:wrap;display:flex}.footer__bottom p{font-size:var(--text-xs);color:#fff6}.footer__top{font-size:var(--text-xs);color:#ffffff9e;align-items:center;gap:7px;font-weight:600;display:inline-flex}.footer__top:hover{color:var(--gold-300)}.footer__top-icon{transition:transform var(--t-base) var(--ease-spring);rotate:-90deg}.footer__top:hover .footer__top-icon{transform:translateY(-3px)}@media (width<=1024px){.about__grid,.contact__grid{grid-template-columns:1fr}.about__media{max-width:34rem}.about__media:after{inset:16px -16px -16px 16px}.profile{grid-template-columns:1fr}.profile__aside{max-width:34rem;margin-inline:auto;position:static}.footer__grid{gap:var(--space-6) var(--space-5);grid-template-columns:1fr 1fr}.stat-band{gap:var(--space-5) var(--space-4);grid-template-columns:repeat(2,1fr)}}@media (width<=900px){.navbar__nav{inset:var(--header-h) 0 auto 0;align-items:stretch;gap:var(--space-3);padding:var(--space-5);background:var(--bg);border-bottom:1px solid var(--border);box-shadow:var(--shadow-lg);opacity:0;visibility:hidden;transition:translate var(--t-base) var(--ease-out), opacity var(--t-base) var(--ease-out), visibility var(--t-base) var(--ease-out);max-height:calc(100svh - var(--header-h));flex-direction:column;position:fixed;overflow-y:auto;translate:0 -12px}.navbar--open .navbar__nav{opacity:1;visibility:visible;translate:0}.navbar__links{flex-direction:column;align-items:stretch;gap:2px}.navbar__link,.navbar--scrolled .navbar__link{font-size:var(--text-base);border-radius:var(--r-sm);color:var(--text);padding:12px 14px}.navbar__link--active:after{inset:50% 14px auto auto;translate:0 -50%}.navbar__cta{justify-content:center;padding:13px 20px}.navbar__hamburger{display:flex}.hero__stats{gap:var(--space-5) var(--space-4);grid-template-columns:repeat(2,1fr)}}@media (width<=640px){:root{--header-h:66px}.hero__actions{flex-direction:column;align-items:stretch}.hero__scroll,.about__media:after{display:none}.about__badge{margin-top:var(--space-4);flex-direction:row;align-items:center;gap:12px;max-width:none;position:static}.profile__details{grid-template-columns:1fr}.lightbox__nav{position:absolute;bottom:clamp(1rem,4vw,2rem)}.lightbox__nav--prev{left:25%}.lightbox__nav--next{right:25%}.footer__grid{grid-template-columns:1fr}.footer__bottom{text-align:center;flex-direction:column}.cta-band__inner{flex-direction:column;align-items:flex-start}}.spinner{border:2px solid color-mix(in srgb, var(--primary) 25%, transparent);border-top-color:var(--primary);border-radius:50%;flex-shrink:0;width:18px;height:18px;animation:.7s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.login{min-height:100svh;padding:var(--space-5);background:radial-gradient(ellipse at top, color-mix(in srgb, var(--green-500) 12%, transparent), transparent 60%), var(--bg-alt);place-items:center;display:grid}.login__card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);width:100%;max-width:26rem;box-shadow:var(--shadow-lg);text-align:center;padding:clamp(1.75rem,1rem + 3vw,2.75rem)}.login__brand{margin-bottom:var(--space-6);text-align:left;align-items:center;gap:12px;display:inline-flex}.login__brand span{flex-direction:column;line-height:1.25;display:flex}.login__brand strong{font-family:var(--font-display);font-size:var(--text-base);color:var(--text);font-weight:600}.login__brand em{letter-spacing:.16em;text-transform:uppercase;color:var(--text-subtle);font-size:.66rem;font-style:normal;font-weight:600}.login__title{font-size:var(--text-2xl);margin-bottom:6px}.login__subtitle{font-size:var(--text-sm);color:var(--text-muted);margin-bottom:var(--space-6)}.login__form{gap:var(--space-4);text-align:left;display:grid}.login__submit{width:100%;margin-top:var(--space-2);justify-content:center}.login__working{margin-top:var(--space-3);font-size:var(--text-xs);color:var(--text-subtle)}.login__error{text-align:left;font-size:var(--text-sm);color:#a5291b;border-radius:var(--r-sm);margin-bottom:var(--space-4);background:#fdeceb;border:1px solid #f3c3bd;align-items:flex-start;gap:9px;padding:11px 14px;display:flex}.login__error .icon{flex-shrink:0;margin-top:2px}:root[data-theme=dark] .login__error{color:#ffb4a8;background:#3a1b16;border-color:#6b2f26}.login__back{margin-top:var(--space-5);font-size:var(--text-sm);color:var(--text-muted);display:inline-block}.login__back:hover{color:var(--primary)}.admin{background:var(--bg-alt);min-height:100svh}.admin-loading{align-content:center;place-items:center;gap:var(--space-3);min-height:100svh;color:var(--text-muted);font-size:var(--text-sm);display:grid}.admin__bar{z-index:100;background:var(--surface);border-bottom:1px solid var(--border);box-shadow:var(--shadow-xs);position:sticky;top:0}.admin__bar-inner{align-items:center;gap:var(--space-5);max-width:76rem;height:60px;margin-inline:auto;padding:0 clamp(1rem,.5rem + 2vw,2rem);display:flex}.admin__brand{font-family:var(--font-display);font-size:var(--text-base);color:var(--text);flex-shrink:0;align-items:center;gap:10px;font-weight:600;display:flex}.admin__nav{gap:4px;margin-right:auto;display:flex}.admin__nav-link{font-size:var(--text-sm);color:var(--text-muted);border-radius:var(--r-full);padding:7px 13px;font-weight:500}.admin__nav-link:hover{background:var(--bg-alt);color:var(--text)}.admin__nav-link.active{background:var(--primary-soft);color:var(--primary);font-weight:600}.admin__user{align-items:center;gap:var(--space-3);flex-shrink:0;display:flex}.admin__user-name{font-size:var(--text-sm);color:var(--text);font-weight:600}.admin__signout{font-size:var(--text-sm);color:var(--text-muted);border:1px solid var(--border);border-radius:var(--r-full);transition:color var(--t-fast) var(--ease-out), border-color var(--t-fast) var(--ease-out);align-items:center;gap:6px;padding:7px 13px;font-weight:600;display:inline-flex}.admin__signout:hover{color:#c0392b;border-color:#c0392b}.admin__page{max-width:76rem;padding:var(--space-7) clamp(1rem, .5rem + 2vw, 2rem) var(--space-9);margin-inline:auto}.admin__crumbs{font-size:var(--text-xs);color:var(--text-subtle);margin-bottom:var(--space-4);align-items:center;gap:7px;font-weight:500;display:flex}.admin__crumbs a:hover{color:var(--primary)}.admin__crumbs span{color:var(--text);font-weight:600}.admin__page-head{justify-content:space-between;align-items:flex-end;gap:var(--space-4);margin-bottom:var(--space-6);flex-wrap:wrap;display:flex}.admin__page-head h1{font-size:var(--text-2xl);margin-bottom:4px}.admin__page-head p{font-size:var(--text-sm);color:var(--text-muted)}.admin__total{flex-direction:column;align-items:flex-end;line-height:1.1;display:flex}.admin__total strong{font-family:var(--font-display);font-size:var(--text-2xl);color:var(--primary)}.admin__total span{font-size:var(--text-xs);color:var(--text-subtle)}.admin__error,.admin__flash{font-size:var(--text-sm);border-radius:var(--r-sm);margin-bottom:var(--space-5);align-items:center;gap:9px;padding:12px 15px;display:flex}.admin__error{color:#a5291b;background:#fdeceb;border:1px solid #f3c3bd}.admin__flash{color:var(--green-600);background:var(--primary-soft);border:1px solid color-mix(in srgb, var(--primary) 25%, transparent)}:root[data-theme=dark] .admin__error{color:#ffb4a8;background:#3a1b16;border-color:#6b2f26}:root[data-theme=dark] .admin__flash{color:var(--green-200)}.admin__loading-inline{font-size:var(--text-sm);color:var(--text-muted);padding:var(--space-6) 0;align-items:center;gap:10px;display:flex}.admin__empty{justify-items:center;gap:var(--space-2);text-align:center;padding:var(--space-9) var(--space-5);background:var(--surface);border:1px dashed var(--border);border-radius:var(--r-lg);color:var(--text-muted);display:grid}.admin__empty .icon{color:var(--text-subtle)}.admin__empty h2{font-size:var(--text-lg);color:var(--text)}.admin__empty p{font-size:var(--text-sm);margin-bottom:var(--space-3)}.admin__toggle{font-size:var(--text-sm);color:var(--text-muted);margin-bottom:var(--space-4);cursor:pointer;align-items:center;gap:8px;display:inline-flex}.class-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(min(17rem,100%),1fr));display:grid}.class-card{padding:var(--space-5);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);box-shadow:var(--shadow-xs);transition:transform var(--t-fast) var(--ease-out), box-shadow var(--t-fast) var(--ease-out), border-color var(--t-fast) var(--ease-out);align-items:center;gap:14px;display:flex}.class-card:hover{box-shadow:var(--shadow-md);border-color:color-mix(in srgb, var(--primary) 35%, transparent);transform:translateY(-2px)}.class-card__icon{border-radius:var(--r-sm);background:var(--primary-soft);width:44px;height:44px;color:var(--primary);flex-shrink:0;place-items:center;display:grid}.class-card__body{flex-direction:column;margin-right:auto;display:flex}.class-card__body strong{font-family:var(--font-display);font-size:var(--text-lg);color:var(--text)}.class-card__body span{font-size:var(--text-sm);color:var(--text-muted)}.class-card__go{color:var(--text-subtle);transition:transform var(--t-base) var(--ease-spring)}.class-card:hover .class-card__go{color:var(--primary);transform:translate(3px)}.table-wrap{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);box-shadow:var(--shadow-xs);overflow-x:auto}.roster{border-collapse:collapse;width:100%;font-size:var(--text-sm)}.roster th{text-align:left;font-family:var(--font-body);font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--text-subtle);border-bottom:1px solid var(--border);white-space:nowrap;padding:13px 16px;font-weight:700}.roster td{border-bottom:1px solid var(--border-soft);color:var(--text-muted);vertical-align:top;padding:13px 16px}.roster tbody tr:last-child td{border-bottom:none}.roster tbody tr:hover{background:var(--bg-alt)}.roster td strong{color:var(--text);font-weight:600;display:block}.roster__row--withdrawn{opacity:.55}.roster__tag{letter-spacing:.08em;text-transform:uppercase;color:var(--text-subtle);background:var(--bg-alt);border:1px solid var(--border);border-radius:var(--r-full);margin-top:3px;padding:2px 8px;font-size:.66rem;font-weight:700;display:inline-block}.roster__notes{font-size:var(--text-xs);color:var(--text-subtle);margin-top:3px;font-style:italic;display:block}.roster__actions{white-space:nowrap;text-align:right}.roster__btn{font-size:var(--text-xs);color:var(--primary);border-radius:var(--r-full);transition:background-color var(--t-fast) var(--ease-out);padding:6px 11px;font-weight:600}.roster__btn:hover{background:var(--primary-soft)}.roster__btn--danger{color:#c0392b}.roster__btn--danger:hover{background:#fdeceb}:root[data-theme=dark] .roster__btn--danger{color:#ff8a7a}:root[data-theme=dark] .roster__btn--danger:hover{background:#3a1b16}.student-form{background:var(--surface);border:1px solid var(--border);border-left:3px solid var(--primary);border-radius:var(--r-md);box-shadow:var(--shadow-md);padding:var(--space-5);margin-bottom:var(--space-5);animation:form-in var(--t-base) var(--ease-out)}@keyframes form-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}.student-form__head{justify-content:space-between;align-items:center;gap:var(--space-4);margin-bottom:var(--space-5);display:flex}.student-form__head h2{font-size:var(--text-lg)}.student-form__close{border-radius:var(--r-sm);width:32px;height:32px;color:var(--text-subtle);place-items:center;display:grid}.student-form__close:hover{background:var(--bg-alt);color:var(--text)}.student-form__grid{gap:var(--space-4);margin-bottom:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(min(15rem,100%),1fr));display:grid}.student-form__actions{gap:var(--space-3);margin-top:var(--space-5);flex-wrap:wrap;display:flex}@media (width<=760px){.admin__bar-inner{gap:var(--space-3);flex-wrap:wrap;height:auto;padding-block:10px}.admin__nav{order:3;width:100%}.admin__user{margin-left:auto}.admin__user-name{display:none}.table-wrap{box-shadow:none;background:0 0;border:none}.roster thead{display:none}.roster,.roster tbody,.roster tr,.roster td{width:100%;display:block}.roster tr{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);box-shadow:var(--shadow-xs);margin-bottom:var(--space-3);padding:var(--space-2) 0}.roster td{gap:var(--space-4);text-align:right;border-bottom:none;justify-content:space-between;align-items:baseline;padding:7px 15px;display:flex}.roster td:before{content:attr(data-label);font-size:var(--text-xs);letter-spacing:.05em;text-transform:uppercase;color:var(--text-subtle);text-align:left;flex-shrink:0;font-weight:700}.roster td strong{text-align:right}.roster__actions{justify-content:flex-end;gap:var(--space-2);padding-top:var(--space-3);margin-top:var(--space-2);border-top:1px solid var(--border-soft)}.roster__actions:before{display:none}}
