/*
 * Pratibha Global School, Indore: a friendly school look built from the PGS logo
 * (deep blue #1868A8, sky blue #48A8E0, orange #F07820). Rounded "Baloo 2" headings, softer corners,
 * and one colour per learning stage. Layout comes from assets/css/theme.css.
 * Contrast checked (WCAG AA): link 6.8:1, white on blue buttons 5.9:1, dark ink on the orange
 * apply button 6.5:1, white stage icons 4.7–5.9:1, dark-mode link 9.7:1.
 * Font: Baloo 2 by EkType, SIL Open Font License 1.1 (fonts/OFL-Baloo2.txt).
 */
@font-face { font-family: 'Baloo 2'; font-style: normal; font-weight: 600; font-display: swap; src: url(fonts/baloo-2-latin-600-normal.woff2) format('woff2'); }
@font-face { font-family: 'Baloo 2'; font-style: normal; font-weight: 700; font-display: swap; src: url(fonts/baloo-2-latin-700-normal.woff2) format('woff2'); }
@font-face { font-family: 'Baloo 2'; font-style: normal; font-weight: 800; font-display: swap; src: url(fonts/baloo-2-latin-800-normal.woff2) format('woff2'); }

:root, [data-bs-theme], .zone-dark { --font-display: 'Baloo 2', 'Inter', system-ui, sans-serif; }
:root {
    --radius: 20px;
    --stage-1: #B65A0E;
    --stage-2: #2E7D4F;
    --stage-3: #1868A8;
    --stage-4: #7B4BC4;
    --zone-rgb: 9, 38, 72;
    --zone-panel-rgb: 14, 52, 94;
    --zone-accent-rgb: 72, 168, 224;
    --zone-top: #0B3560;
    --announce-from: #0E4A82;
    --announce-to: #0B3560;
    --footer-bg: #082440;
}
:root, [data-bs-theme="light"] {
    --bg: #F6F9FC;
    --bg-alt: #EAF3FB;
    --surface-2: #F0F6FC;
    --text: #172A3F;
    --text-strong: #0B1B2E;
    --muted: #4A5B70;
    --link: #14599A;
    --accent: #1F7BC7;
    --btn-blue: #1868A8;
    --btn-blue-hover: #125489;
    --coral: #F07820;
    --coral-hover: #F58C3E;
    --coral-ink: #1F1003;
    --tint: rgba(31, 123, 199, .09);
    --tint-strong: rgba(31, 123, 199, .16);
    --tint-border: rgba(31, 123, 199, .32);
    --initials-bg: linear-gradient(135deg, #D7EBFA, #EEF6FD);
    --initials-text: #14599A;
    --chart-bar: #1F7BC7;
}
[data-bs-theme="dark"], .zone-dark {
    --bg: #0B1626;
    --bg-alt: #0E1B2E;
    --surface: #12233A;
    --surface-2: #182C47;
    --line: rgba(220, 236, 255, .10);
    --line-strong: rgba(220, 236, 255, .18);
    --text: #E6EEF8;
    --text-strong: #FFFFFF;
    --muted: #A9BBD0;
    --link: #8CC8F2;
    --accent: #48A8E0;
    --btn-blue: #1868A8;
    --btn-blue-hover: #1F7BC7;
    --tint: rgba(72, 168, 224, .14);
    --tint-strong: rgba(72, 168, 224, .24);
    --tint-border: rgba(72, 168, 224, .40);
    --glass: rgba(11, 22, 38, .76);
    --glass-strong: rgba(18, 35, 58, .97);
    --initials-bg: linear-gradient(135deg, #1F4C7A, #12233A);
    --initials-text: #8CC8F2;
    --field-bg: rgba(11, 22, 38, .6);
    --chart-bar: #48A8E0;
}

/* School touches: rounder buttons and cards, a gentle wave under the hero, playful heading weight */
.btn { border-radius: 999px; }
.custom-card, .update-col, .enquiry-panel, .college-filters { border-radius: 24px; }
.section-title, .hero-title, .dept-hero-title, .page-header h1 { font-weight: 800; letter-spacing: -0.01em; }
.hero-title { line-height: 1.02; }
.school-hero { position: relative;
    background: radial-gradient(520px 420px at 88% 18%, rgba(240, 120, 32, .38), transparent 70%),
                radial-gradient(560px 460px at 72% 92%, rgba(72, 168, 224, .40), transparent 70%),
                radial-gradient(300px 260px at 52% 40%, rgba(123, 75, 196, .22), transparent 70%), #0B3560; }
.school-hero::after { content: ''; position: absolute; left: 0; right: 0; bottom: -1px; height: 40px; background: var(--bg-alt);
    -webkit-mask: radial-gradient(60px 36px at 50% 100%, #000 98%, transparent) 0 0 / 120px 40px repeat-x;
            mask: radial-gradient(60px 36px at 50% 100%, #000 98%, transparent) 0 0 / 120px 40px repeat-x; }
.school-hero-crest { position: absolute; right: max(4vw, calc((100vw - 1320px) / 2)); top: 50%; transform: translateY(-50%); width: 360px; height: 360px; border-radius: 50%;
    background: radial-gradient(circle at 35% 30%, #FFFFFF, #EAF3FB); display: grid; place-items: center; box-shadow: 0 30px 80px -20px rgba(0, 0, 0, .45), 0 0 0 14px rgba(255, 255, 255, .08); }
.school-hero-crest img { width: 78%; height: auto; }
@media (max-width: 1199.98px) { .school-hero-crest { width: 280px; height: 280px; } }
@media (max-width: 991.98px) { .school-hero-crest { display: none; } }
