/* ==========================================================================
   Theme: Tapan Classic — the original tapangovtiti.com design (theme 6)
   Tricolour strip · dark top bar · notices ticker above a white header ·
   light split hero with "India" in tricolour · framed key-numbers card ·
   pill section tags with an amber last word · navy footer
   ========================================================================== */
:root {
  --t-font-head: 'Poppins', 'Hind', system-ui, sans-serif;
  --t-font-body: 'Hind', system-ui, sans-serif;
  --t-font-brand: 'Fraunces', Georgia, serif;
  --t-head-weight: 700;
  --t-head-spacing: -0.01em;
  --t-radius: 12px;
  --t-radius-lg: 18px;
  --t-radius-btn: 18px;
  --t-bg: #f8faff;
  --t-soft: #f8faff;
  --t-surface: #ffffff;
  --t-border: #e2e8f7;
  --t-heading: #0d1f3c;
  --t-text: #4a5878;
  --t-muted: #64748b;
  --t-shadow: 0 2px 20px rgba(15,76,117,.08);
  --t-shadow-lg: 0 18px 50px rgba(13,31,60,.14);
  --t-topbar-bg: #0d1f35;
  --t-topbar-text: rgba(255,255,255,.82);
  --t-header-bg: rgba(255,255,255,.98);
  --t-header-text: var(--t-primary);
  --t-footer-bg: #0d1f3c;
  --t-footer-head: var(--t-accent);
  --t-footer-text: rgba(255,255,255,.72);
  --t-header-h: 76px;
  --t-p2: color-mix(in srgb, var(--t-primary) 70%, #0a3557);
  --t-grad-primary: linear-gradient(135deg, var(--t-primary), color-mix(in srgb, var(--t-primary) 70%, var(--t-accent)));
}
body { background: var(--t-bg); }
h1, h2, h3, h4 { font-family: var(--t-font-head); }

/* Tricolour strip + top bar */
.tricolor { height: 5px; }
.topbar { font-size: 12.5px; }
.topbar .tool-btn { border-radius: 6px; }

/* Notices ticker — dark gradient band with an arrow-shaped label */
.ticker { background: linear-gradient(90deg, #0a3557 0%, var(--t-primary) 40%, #0e5f94 100%); color: #fff; border: 0; font-size: 13.5px; }
.ticker__wrap { min-height: 40px; gap: 0; }
.ticker.ticker--above .ticker__wrap, .ticker .ticker__wrap { padding-left: 0; }
.ticker__label { align-self: stretch; border-radius: 0; padding: 0 30px 0 16px; margin-right: 10px; background: linear-gradient(135deg, var(--t-accent) 0%, #c4306e 100%); color: #fff; letter-spacing: .12em; font-size: 11px;
  clip-path: polygon(0 0, calc(100% - 12px) 0, 100% 50%, calc(100% - 12px) 100%, 0 100%); }
.ticker__item { color: #fff; font-weight: 600; }
.ticker__item::after { content: '✦'; color: var(--t-accent); font-size: 11px; }
.ticker__item:hover { color: var(--t-highlight); }
.ticker__all { color: var(--t-highlight); }
.ticker__track { mask-image: linear-gradient(90deg, transparent, #000 2%, #000 94%, transparent); }

/* Header */
.site-header { background: var(--t-header-bg); box-shadow: var(--t-shadow); border-bottom: 0; }
.brand__logo { border-radius: 12px; }
.brand__mono { background: linear-gradient(135deg, var(--t-primary), var(--t-accent)); color: #fff; }
.brand__name { font-family: var(--t-font-brand); font-size: 1.05rem; color: var(--t-primary); }
.brand__tag { color: var(--t-muted); }
.menu__link { font-size: 13.5px; font-weight: 600; color: var(--t-primary); border-radius: 8px; }
.menu__link:hover, .menu__item.is-open > .menu__link { background: color-mix(in srgb, var(--t-primary) 6%, #fff); color: var(--t-primary); }
.menu__item.is-active > .menu__link { color: var(--t-primary); box-shadow: inset 0 -2px 0 var(--t-accent); border-radius: 0; }
.submenu { border-radius: 12px; border-top: 3px solid var(--t-accent); }

/* Buttons — navy gradient pills and outline pills */
.btn { border-radius: var(--t-radius-btn); font-weight: 700; }
.btn--primary { background: var(--t-grad-primary); color: #fff; border-color: transparent; box-shadow: 0 4px 15px color-mix(in srgb, var(--t-primary) 30%, transparent); }
.btn--primary:hover { filter: brightness(1.08); color: #fff; transform: translateY(-1px); }
.btn--accent { background: linear-gradient(135deg, var(--t-accent), #ff8f00); color: #fff; border-color: transparent; box-shadow: 0 4px 15px color-mix(in srgb, var(--t-accent) 32%, transparent); }
.btn--outline { border: 2px solid var(--t-primary); color: var(--t-primary); background: #fff; }
.btn--outline:hover { background: var(--t-primary); color: #fff; }

/* Hero — light with soft blobs, eyebrow pill, framed numbers card */
.hero--split { background: #fff; padding: clamp(56px, 8vw, 104px) 0; overflow: hidden; border-bottom: 1px solid var(--t-border); }
.hero--split .hero__bg { background:
  radial-gradient(ellipse 700px 700px at calc(100% + 60px) -80px, color-mix(in srgb, var(--t-accent) 9%, transparent) 0%, color-mix(in srgb, var(--t-primary) 5%, transparent) 50%, transparent 70%),
  radial-gradient(ellipse 400px 400px at -40px calc(100% + 60px), color-mix(in srgb, var(--t-primary) 7%, transparent) 0%, transparent 65%); }
@media (min-width: 961px) { .hero--split .hero__grid { grid-template-columns: 1.15fr .85fr; } }
.hero--split .hero__badge { background: linear-gradient(90deg, color-mix(in srgb, var(--t-primary) 8%, transparent), color-mix(in srgb, var(--t-accent) 8%, transparent)); border: 1px solid color-mix(in srgb, var(--t-primary) 15%, transparent); color: var(--t-primary); font-size: 11px; letter-spacing: 1px; text-transform: uppercase; padding: 6px 16px; }
.hero--split .hero__badge .dot { display: none; }
.hero--split .hero__title { font-size: clamp(2rem, 4.5vw, 3.4rem); color: var(--t-heading); font-weight: 700; line-height: 1.1; margin-top: 18px; }
.hero--split .hero__title em { display: block; color: var(--t-heading); }
.hero--split .hero__text { font-size: 1.08rem; color: var(--t-text); }
.hero--split .btn--accent { background: var(--t-grad-primary); box-shadow: 0 4px 15px color-mix(in srgb, var(--t-primary) 30%, transparent); }
.hero--split .btn--ghost { background: #fff; color: var(--t-heading); border: 2px solid var(--t-border); }
.hero--split .btn--ghost:hover { border-color: var(--t-primary); color: var(--t-primary); background: #fff; }
.hero__chips { gap: 8px; margin-top: 30px; }
.hero__chips li { background: #f8faff; border: 1px solid var(--t-border); border-radius: 999px; padding: 6px 14px; font-size: 12.5px; font-weight: 600; color: var(--t-text); }
.hero__chips i { display: none; }
.hero--split .hero__stats { background: #fff; border: 0; border-radius: 4px; box-shadow: 0 0 0 26px var(--t-border), var(--t-shadow-lg); margin: 26px; }
.hero--split .hero__stats .stat { padding: 30px 16px; text-align: center; border-color: var(--t-border); }
.hero--split .hero__stats .stat__num { font-family: var(--t-font-brand); color: var(--t-primary); font-weight: 700; }
.hero--split .hero__stats .stat__label { text-transform: none; letter-spacing: 0; font-size: 12.5px; color: var(--t-text); }
.hero__stats[data-badge]::before { top: -42px; right: -38px; background: linear-gradient(135deg, var(--t-accent), #ff8f00); color: #fff; }
.hero--split .hero__figure { border-radius: var(--t-radius-lg); box-shadow: 0 0 0 14px var(--t-border), var(--t-shadow-lg); }
@media (max-width: 600px) { .hero--split .hero__badge { font-size: 10px; letter-spacing: .5px; border-radius: 12px; } }
@media (max-width: 960px) { .hero--split .hero__stats { margin: 22px 18px 18px; box-shadow: 0 0 0 18px var(--t-border), var(--t-shadow-lg); } .hero__stats[data-badge]::before { top: -30px; right: -22px; } }

/* Section heads — pill tag + Poppins title with the last word in amber */
.section { background: var(--t-bg); }
.section--alt { background: #fff; }
.sec-head__eyebrow { background: linear-gradient(90deg, color-mix(in srgb, var(--t-primary) 8%, transparent), color-mix(in srgb, var(--t-accent) 6%, transparent)); border: 1px solid color-mix(in srgb, var(--t-primary) 12%, transparent); color: var(--t-primary); padding: 5px 14px; border-radius: 999px; font-size: 11px; letter-spacing: 1.5px; }
.sec-head__title { font-size: clamp(1.7rem, 3.4vw, 2.5rem); color: var(--t-heading); font-weight: 700; }
.accent-word { color: var(--t-accent); }

/* Cards */
.card, .notice-card, .course-card, .message-card, .story-card, .event-item, .qlink { border-color: var(--t-border); box-shadow: var(--t-shadow); }
.notice-card { border-radius: var(--t-radius-lg); }
.nb__tab.is-active { color: var(--t-primary); box-shadow: inset 0 -2px 0 var(--t-primary); }
.course-card { border-radius: var(--t-radius-lg); overflow: hidden; }
.course-card:hover { transform: translateY(-4px); box-shadow: var(--t-shadow-lg); }
.course-card__media { background: var(--t-grad-primary); }
.course-card__link { color: var(--t-accent); }
.message-card { border-radius: var(--t-radius-lg); border-top: 3px solid var(--t-accent); }
.message-card + .message-card { border-top-color: var(--t-primary); }
.message-card__photo { border-radius: 12px; background: linear-gradient(135deg, var(--t-accent), #e08a00); color: #fff; }
.checklist i { color: var(--t-accent); }

/* "Why choose us" style band for key numbers */
.stats-band { background: linear-gradient(135deg, #0a3557 0%, var(--t-primary) 100%); padding: clamp(56px, 7vw, 84px) 0; }
.stats-band__grid { gap: 18px; }
.stats-band .stat { background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.1); border-radius: var(--t-radius-lg); padding: 28px 16px; text-align: center; transition: transform .2s, background .2s; }
.stats-band .stat:hover { transform: translateY(-4px); background: rgba(255,255,255,.1); }
.stats-band .stat__num { color: var(--t-accent); font-family: var(--t-font-brand); }

/* Placement partners — white marquee cards */
.recruiters { background: var(--t-bg); }
.logo-chip { border-radius: 0; margin-right: 0; border-width: 0 1px 0 0; height: 120px; min-width: 210px; box-shadow: none; }
.logo-marquee { border-top: 1px solid var(--t-border); border-bottom: 1px solid var(--t-border); background: #fff; }

/* Admission CTA — white with a soft radial glow, centred */
.cta-band { background: #fff; color: var(--t-heading); text-align: center; border-top: 1px solid var(--t-border); }
.cta-band::after { left: 50%; top: 50%; right: auto; width: 640px; height: 420px; transform: translate(-50%, -50%); background: radial-gradient(ellipse, color-mix(in srgb, var(--t-accent) 9%, transparent) 0%, color-mix(in srgb, var(--t-primary) 5%, transparent) 50%, transparent 70%); }
.cta-band__inner { flex-direction: column; justify-content: center; }
.cta-band__title { color: var(--t-heading); }
.cta-band__text { color: var(--t-text); margin: 0 auto; }
.cta-band__actions { justify-content: center; }
.cta-band .btn--light { background: var(--t-grad-primary); color: #fff; border-color: transparent; }
.cta-band .btn--ghost { background: #fff; color: var(--t-heading); border: 2px solid var(--t-border); }
.cta-band .btn--ghost:hover { border-color: var(--t-primary); color: var(--t-primary); }

/* Inner pages — navy band, centred title, amber breadcrumb */
.page-hero { background: linear-gradient(135deg, var(--t-primary) 0%, color-mix(in srgb, var(--t-primary) 70%, var(--t-accent)) 100%); }
.page-hero__inner { padding-top: 48px; padding-bottom: 48px; }
.page-hero__title { font-weight: 700; }
.page-hero .breadcrumb a { color: var(--t-accent); }

/* Footer */
.site-footer__h { font-size: 12px; letter-spacing: 1.5px; color: var(--t-accent); }
.footer-brand, .site-footer__col--brand .brand__name { font-family: var(--t-font-brand); color: #fff; }
.site-footer__bottom { background: rgba(0,0,0,.18); border-top: 0; }
.site-footer .btn--accent { border-radius: 8px; }
