/* =========================================================
   Milestone Institute of Paramedical Technology
   Design tokens
   Palette: Clinical Teal + Warm Coral + Ivory
   Type: Fraunces (display) + Inter (body/UI)
   Signature: "vital line" (ECG heartbeat) motif as a section divider
   ========================================================= */

@import url('https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,400;9..144,500;9..144,600;9..144,700;9..144,900&family=Inter:wght@400;500;600;700;800&display=swap');

:root{
  --teal-900:#08519C;
  --teal-800:#0A5FB3;
  --teal-700:#0D6DC9;
  --teal-600:#1C7FDE;
  --teal-500:#3B93E0;
  --coral:#E8703C;
  --coral-dark:#C85A2C;
  --ivory:#FAF6EE;
  --ivory-deep:#F3EDDF;
  --ink:#132320;
  --ink-soft:#3D5450;
  --line:#E3DCC9;
  --white:#FFFFFF;
  --success:#2E8B57;

  --font-display:'Fraunces', serif;
  --font-body:'Inter', sans-serif;

  --radius:14px;
  --shadow-sm:0 2px 10px rgba(8,81,156,0.06);
  --shadow-md:0 10px 30px rgba(8,81,156,0.10);
  --shadow-lg:0 20px 50px rgba(8,81,156,0.16);
}

*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;
  font-family:var(--font-body);
  color:var(--ink);
  background:var(--ivory);
  line-height:1.65;
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%;display:block;}
a{color:inherit;text-decoration:none;}
ul{list-style:none;margin:0;padding:0;}
button{font-family:inherit;}

.container{
  width:100%;
  max-width:1220px;
  margin:0 auto;
  padding:0 24px;
}

h1,h2,h3,h4,.font-display{
  font-family:var(--font-display);
  color:var(--teal-900);
  font-weight:700;
  line-height:1.15;
  margin:0 0 .5em;
}
h1{font-size:clamp(2.2rem,4.5vw,3.6rem); font-weight:900;}
h2{font-size:clamp(1.7rem,3vw,2.5rem);}
h3{font-size:1.35rem;}
p{margin:0 0 1em;color:var(--ink-soft);}

.eyebrow{
  display:inline-flex;
  align-items:center;
  gap:8px;
  font-family:var(--font-body);
  font-weight:700;
  font-size:.78rem;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--coral);
  margin-bottom:14px;
}
.eyebrow::before{
  content:"";
  width:26px;height:2px;background:var(--coral);display:inline-block;
}

/* ---------- Vital line signature divider ---------- */
.vital-divider{
  width:100%;
  height:34px;
  margin:0 auto;
  display:block;
}
.vital-divider path{
  fill:none;
  stroke:var(--coral);
  stroke-width:2.5;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.section-head{ text-align:center; max-width:680px; margin:0 auto 48px; }
.section-head p{margin-top:10px;}

/* ---------- Buttons ---------- */
.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:14px 28px;
  border-radius:999px;
  font-weight:700;
  font-size:.95rem;
  border:2px solid transparent;
  cursor:pointer;
  transition:.2s ease;
  white-space:nowrap;
}
.btn-primary{background:var(--coral); color:#fff;}
.btn-primary:hover{background:var(--coral-dark); transform:translateY(-2px); box-shadow:var(--shadow-md);}
.btn-outline{background:transparent; border-color:var(--teal-900); color:var(--teal-900);}
.btn-outline:hover{background:var(--teal-900); color:#fff;}
.btn-light{background:#fff; color:var(--teal-900);}
.btn-light:hover{background:var(--ivory-deep);}
.btn-sm{padding:9px 18px; font-size:.82rem;}
.btn-block{width:100%;}

/* ---------- Announcement Bar ---------- */
.announce-bar{
  background:var(--coral); color:#fff; font-size:.85rem; font-weight:600;
}
.announce-bar-inner{
  display:flex; align-items:center; justify-content:center; gap:14px;
  padding:9px 40px 9px 16px; position:relative; flex-wrap:wrap; text-align:center;
}
.announce-text{color:#fff;}
.announce-link{
  background:rgba(255,255,255,.22); padding:4px 14px; border-radius:999px; font-weight:700; font-size:.8rem;
  white-space:nowrap; flex-shrink:0;
}
.announce-link:hover{background:rgba(255,255,255,.35);}
.announce-close{
  position:absolute; right:10px; top:50%; transform:translateY(-50%);
  background:rgba(255,255,255,.18); border:none; color:#fff; width:24px; height:24px; border-radius:50%;
  display:flex; align-items:center; justify-content:center; cursor:pointer; flex-shrink:0;
}
.announce-close:hover{background:rgba(255,255,255,.32);}
@media (max-width:640px){
  .announce-bar-inner{font-size:.78rem; padding:8px 36px 8px 12px; gap:8px;}
  .announce-link{font-size:.74rem; padding:3px 10px;}
}

/* ---------- Top bar ---------- */
.topbar{
  background:var(--teal-900);
  color:#cfe4e0;
  font-size:.82rem;
}
.topbar .container{
  display:flex; align-items:center; justify-content:space-between;
  padding-top:8px; padding-bottom:8px; gap:16px; flex-wrap:wrap;
}
.topbar a{color:#cfe4e0;}
.topbar .tb-left{display:flex; gap:22px; flex-wrap:wrap;}
.topbar .tb-left span{display:inline-flex; align-items:center; gap:6px;}
.topbar .tb-social{display:flex; gap:10px;}
.topbar .tb-social a{width:26px;height:26px;border-radius:50%;background:rgba(255,255,255,.12);display:flex;align-items:center;justify-content:center;}
.topbar .tb-social a:hover{background:var(--coral);}

@media (max-width:640px){
  .topbar{font-size:.76rem;}
  .topbar .container{justify-content:center; padding-top:7px; padding-bottom:7px;}
  .topbar .tb-left{gap:14px;}
  .topbar .tb-email{display:none;}
}

/* ---------- Header / Nav ---------- */
.site-header{
  background:var(--ivory);
  position:sticky; top:0; z-index:200;
  box-shadow:0 1px 0 var(--line);
}
.navbar{
  display:flex; align-items:center; justify-content:space-between;
  padding:10px 0; gap:16px; min-height:64px;
}
.brand{display:flex; align-items:center; gap:10px; min-width:0; flex-shrink:1;}
.brand img{height:42px; width:auto; flex-shrink:0;}
.brand-text{min-width:0; max-width:300px;}
.brand-title{
  font-family:var(--font-display); font-weight:800; font-size:1.05rem; color:var(--teal-900); line-height:1.2;
  white-space:nowrap; overflow:hidden; text-overflow:ellipsis; display:block;
}
.brand-subtitle{
  font-size:.68rem; color:var(--ink-soft); letter-spacing:.05em; text-transform:uppercase; font-weight:600;
  display:block; margin-top:2px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;
}

.nav-links{display:flex; align-items:center; gap:1px; flex-wrap:nowrap;}
.nav-links a{
  padding:9px 12px; font-weight:600; font-size:.88rem; color:var(--ink); border-radius:8px; white-space:nowrap;
}
.nav-links a:hover, .nav-links a.active{color:var(--coral);}
.nav-mobile-only{display:none;}
.nav-cta{display:flex; align-items:center; gap:10px; flex-shrink:0;}
.nav-cta .btn{padding:10px 20px; font-size:.86rem;}
.nav-bell{
  position:relative; display:inline-flex; align-items:center; justify-content:center;
  width:38px; height:38px; border-radius:50%; color:var(--teal-900); flex-shrink:0;
}
.nav-bell:hover{background:var(--ivory-deep);}

.nav-toggle{
  display:none; background:none; border:none; color:var(--teal-900); cursor:pointer;
  padding:6px; align-items:center; justify-content:center;
}
.nav-toggle .icon-close{display:none;}
.nav-toggle.open .icon-menu{display:none;}
.nav-toggle.open .icon-close{display:inline-flex;}

/* "More" dropdown */
.nav-item-dropdown{position:relative;}
.nav-drop-toggle{
  display:inline-flex; align-items:center; gap:4px; background:none; border:none; cursor:pointer;
  padding:9px 12px; font-weight:600; font-size:.88rem; color:var(--ink); font-family:inherit; border-radius:8px;
  white-space:nowrap;
}
.nav-drop-toggle:hover, .nav-drop-toggle.active{color:var(--coral);}
.nav-drop-toggle .icon-inline{transition:transform .2s ease; flex-shrink:0;}
.nav-item-dropdown:hover .nav-drop-toggle .icon-inline, .nav-item-dropdown.open .nav-drop-toggle .icon-inline{transform:rotate(180deg);}

.nav-dropdown-menu{
  position:absolute; top:100%; left:0; background:#fff; border:1px solid var(--line); border-radius:12px;
  box-shadow:var(--shadow-md); padding:8px; width:220px; z-index:300;
  opacity:0; pointer-events:none; transform:translateY(8px); transition:.18s ease;
  display:flex; flex-direction:column; gap:2px;
}
.nav-item-dropdown:hover .nav-dropdown-menu, .nav-item-dropdown.open .nav-dropdown-menu{
  opacity:1; pointer-events:auto; transform:translateY(4px);
}
.nav-dropdown-menu a{display:block; padding:10px 14px; border-radius:8px; font-size:.86rem; white-space:nowrap; width:100%;}
.nav-dropdown-menu a:hover, .nav-dropdown-menu a.active{background:var(--ivory-deep); color:var(--coral);}

.icon-inline{display:inline-flex; align-items:center; justify-content:center; flex-shrink:0;}
.icon-inline svg{display:block;}

@media (max-width: 1200px){
  .nav-links a, .nav-drop-toggle{padding:9px 9px; font-size:.85rem;}
}

@media (max-width: 1080px){
  .nav-links{
    position:fixed; top:0; right:-320px; height:100vh; width:300px; background:var(--white);
    flex-direction:column; align-items:stretch; padding:90px 24px 24px; box-shadow:var(--shadow-lg);
    transition:right .3s ease; overflow-y:auto; z-index:150;
  }
  .nav-links.open{right:0;}
  .nav-links a{width:100%; padding:14px 8px; border-bottom:1px solid var(--line); font-size:.92rem;}
  .nav-mobile-only{display:flex; align-items:center;}
  .nav-desktop-only{display:none;}
  .nav-toggle{display:inline-flex;}
  .nav-cta .btn-outline{display:none;}

  /* On mobile the "More" dropdown always shows expanded inline, no hover/click needed */
  .nav-item-dropdown{width:100%;}
  .nav-drop-toggle{width:100%; justify-content:space-between; padding:14px 8px; border-bottom:1px solid var(--line); pointer-events:none; font-size:.92rem;}
  .nav-drop-toggle .icon-inline{display:none;}
  .nav-dropdown-menu{
    position:static; opacity:1; pointer-events:auto; transform:none; box-shadow:none; border:none;
    padding:0 0 0 14px; margin-top:-1px; width:100%;
  }
  .nav-dropdown-menu a{border-bottom:1px solid var(--line); border-radius:0; padding:12px 8px; white-space:normal;}
}

@media (max-width: 480px){
  .brand-text{max-width:180px;}
  .brand-title{font-size:.86rem;}
  .brand-subtitle{font-size:.6rem;}
  .brand img{height:36px;}
  .navbar{min-height:56px;}
}

/* ---------- Hero ---------- */
.hero{
  position:relative;
  background:linear-gradient(120deg, var(--teal-900) 0%, var(--teal-700) 100%);
  color:#fff;
  overflow:hidden;
  padding:90px 0 110px;
}
.hero::after{
  content:"";
  position:absolute; inset:0;
  background-image:radial-gradient(circle at 85% 20%, rgba(232,112,60,0.25), transparent 45%),
                    radial-gradient(circle at 10% 90%, rgba(59,147,224,0.35), transparent 40%);
}
.hero .container{position:relative; z-index:2; display:grid; grid-template-columns:1.1fr .9fr; gap:50px; align-items:center;}
@media (max-width:992px){ .hero .container{grid-template-columns:1fr;} }
.hero h1{color:#fff; margin-bottom:.4em;}
.hero p.lead{color:#fff; font-size:1.1rem; max-width:520px;}
.hero-stats{display:flex; gap:34px; margin-top:34px; flex-wrap:wrap;}
.hero-stats div strong{display:block; font-family:var(--font-display); font-size:2rem; color:#fff;}
.hero-stats div span{font-size:.8rem; color:#fff; text-transform:uppercase; letter-spacing:.05em;}
.hero-actions{display:flex; gap:14px; margin-top:34px; flex-wrap:wrap;}
.hero-media{position:relative;}
.hero-media img{border-radius:20px; box-shadow:var(--shadow-lg); border:6px solid rgba(255,255,255,0.15); width:100%;}
.hero-badge{
  position:absolute; bottom:-22px; left:-22px; background:#fff; color:var(--teal-900);
  padding:16px 20px; border-radius:16px; box-shadow:var(--shadow-md); display:flex; gap:12px; align-items:center;
}
.hero-badge strong{display:block; font-family:var(--font-display); font-size:1.3rem; color:var(--coral);}
.hero-badge span{font-size:.78rem; color:var(--ink-soft); white-space:nowrap;}

@media (max-width:768px){
  .hero{padding:50px 0 70px; text-align:center;}
  .hero .eyebrow{justify-content:center;}
  .hero p.lead{margin-left:auto; margin-right:auto;}
  .hero-stats{justify-content:center;}
  .hero-actions{justify-content:center;}
  .hero-media{margin-top:26px;}
  .hero-badge{position:static; margin:18px auto 0; width:max-content; max-width:100%;}
}
@media (max-width:420px){
  .hero-stats{gap:20px;}
  .hero-stats div strong{font-size:1.5rem;}
}

/* ---------- Sections ---------- */
.section{padding:90px 0;}
.section-sm{padding:60px 0;}
@media (max-width:768px){ .section{padding:56px 0;} .section-sm{padding:40px 0;} }
.bg-white{background:var(--white);}
.bg-ivory-deep{background:var(--ivory-deep);}
.bg-teal{background:var(--teal-900); color:#fff;}
.bg-teal h2, .bg-teal .eyebrow{color:#fff;}
.bg-teal p{color:#CFE4E0;}

/* ---------- Grid cards ---------- */
.grid{display:grid; gap:28px;}
.grid-2{grid-template-columns:repeat(2,1fr);}
.grid-3{grid-template-columns:repeat(3,1fr);}
.grid-4{grid-template-columns:repeat(4,1fr);}
@media (max-width:992px){ .grid-3,.grid-4{grid-template-columns:repeat(2,1fr);} }
@media (max-width:640px){ .grid-2,.grid-3,.grid-4{grid-template-columns:1fr;} }

.card{
  background:#fff; border-radius:var(--radius); box-shadow:var(--shadow-sm); overflow:hidden;
  transition:.25s ease; border:1px solid var(--line);
}
.card:hover{ transform:translateY(-6px); box-shadow:var(--shadow-md); }

/* Feature (why choose us) card */
.feature-card{padding:32px 26px;}
.feature-icon{
  width:54px; height:54px; border-radius:14px; background:var(--ivory-deep);
  display:flex; align-items:center; justify-content:center; color:var(--coral); margin-bottom:18px;
}
.feature-icon svg{width:26px; height:26px;}

/* Course card */
.course-card .thumb{height:190px; overflow:hidden; position:relative;}
.course-card .thumb img{width:100%; height:100%; object-fit:cover; transition:.4s ease;}
.course-card:hover .thumb img{transform:scale(1.08);}
.course-card .tag{
  position:absolute; top:14px; left:14px; background:var(--coral); color:#fff; font-size:.72rem;
  font-weight:700; padding:5px 12px; border-radius:999px; text-transform:uppercase; letter-spacing:.04em;
}
.course-card .body{padding:22px;}
.course-card .meta{display:flex; gap:16px; font-size:.82rem; color:var(--ink-soft); margin:12px 0; flex-wrap:wrap;}
.course-card .meta span{display:flex; align-items:center; gap:5px;}
.course-card h3{margin-bottom:8px; font-size:1.15rem;}
.course-card .body p{font-size:.92rem; margin-bottom:16px;}

/* Faculty card */
.faculty-card{text-align:center; padding:28px 20px;}
.faculty-card .photo{width:120px; height:120px; border-radius:50%; overflow:hidden; margin:0 auto 16px; border:4px solid var(--ivory-deep);}
.faculty-card .photo img{width:100%; height:100%; object-fit:cover;}
.faculty-card h3{margin-bottom:2px; font-size:1.1rem;}
.faculty-card .role{color:var(--coral); font-weight:700; font-size:.85rem; margin-bottom:6px; display:block;}
.faculty-card .qual{font-size:.82rem; color:var(--ink-soft);}

/* Partner logo */
.partner-box{
  display:flex; align-items:center; justify-content:center; padding:26px 18px; background:#fff;
  border-radius:var(--radius); border:1px solid var(--line); min-height:110px;
}
.partner-box img{max-height:56px; width:auto; filter:grayscale(1); opacity:.75; transition:.25s;}
.partner-box:hover img{filter:none; opacity:1;}

/* Gallery */
.gallery-item{border-radius:var(--radius); overflow:hidden; position:relative; cursor:pointer;}
.gallery-item img{width:100%; height:260px; object-fit:cover; transition:.4s;}
.gallery-item:hover img{transform:scale(1.06);}
.gallery-item .cap{
  position:absolute; inset:auto 0 0 0; background:linear-gradient(0deg, rgba(8,81,156,.85), transparent);
  color:#fff; padding:16px; font-weight:600; font-size:.9rem;
}

/* Stats strip */
.stats-strip{display:grid; grid-template-columns:repeat(4,1fr); gap:20px; text-align:center;}
@media (max-width:768px){ .stats-strip{grid-template-columns:repeat(2,1fr);} }
@media (max-width:420px){ .stats-strip{grid-template-columns:repeat(2,1fr); gap:14px;} .stats-strip strong{font-size:1.8rem;} }
.stats-strip strong{font-family:var(--font-display); font-size:2.4rem; display:block; color:var(--coral);}
.stats-strip span{font-size:.82rem; text-transform:uppercase; letter-spacing:.05em;}

/* Testimonial */
.testi-card{padding:30px; position:relative;}
.testi-card .quote-mark{font-family:var(--font-display); font-size:3.2rem; color:var(--coral); line-height:0.5; display:block; margin-bottom:16px;}
.testi-card .who{display:flex; align-items:center; gap:12px; margin-top:18px;}
.testi-card .who img{width:46px; height:46px; border-radius:50%; object-fit:cover;}
.testi-card .who strong{display:block; font-size:.92rem;}
.testi-card .who span{font-size:.78rem; color:var(--ink-soft);}

/* CTA band */
.cta-band{
  background:linear-gradient(120deg, var(--coral) 0%, var(--coral-dark) 100%);
  border-radius:24px; padding:56px; color:#fff; text-align:center;
}
.cta-band h2{color:#fff;}
.cta-band p{color:#FCE7DB;}
@media (max-width:640px){ .cta-band{padding:36px 22px; border-radius:18px;} }

/* ---------- Forms ---------- */
.form-group{margin-bottom:20px;}
label{display:block; font-weight:600; font-size:.88rem; margin-bottom:7px; color:var(--teal-900);}
.form-control{
  width:100%; padding:13px 16px; border:1.5px solid var(--line); border-radius:10px;
  font-family:inherit; font-size:.95rem; background:#fff; color:var(--ink); transition:.2s;
}
.form-control:focus{outline:none; border-color:var(--teal-600); box-shadow:0 0 0 4px rgba(59,147,224,.14);}
textarea.form-control{resize:vertical; min-height:120px;}
.form-card{background:#fff; border-radius:20px; padding:40px; box-shadow:var(--shadow-md); border:1px solid var(--line);}

/* Fee table */
.fee-table{width:100%; border-collapse:collapse; background:#fff; border-radius:var(--radius); overflow:hidden; box-shadow:var(--shadow-sm);}
.fee-table th,.fee-table td{padding:16px 20px; text-align:left; border-bottom:1px solid var(--line); font-size:.92rem;}
.fee-table th{background:var(--teal-900); color:#fff; font-family:var(--font-display); font-weight:600;}
.fee-table tr:last-child td{border-bottom:none;}
.fee-table tr:hover td{background:var(--ivory-deep);}

/* Breadcrumb / page header */
.page-hero{
  background:linear-gradient(120deg, var(--teal-900), var(--teal-700));
  color:#fff; padding:64px 0 46px; text-align:center;
}
.page-hero h1{color:#fff; margin-bottom:8px;}
.page-hero p{color:#fff;}
.page-hero .crumb{color:#fff; font-size:.88rem;}
.page-hero .crumb a{color:#fff; font-weight:600;}
@media (max-width:640px){ .page-hero{padding:42px 0 32px;} }

/* ---------- Footer ---------- */
.site-footer{background:var(--teal-900); color:#CFE4E0; padding-top:70px;}
.footer-grid{display:grid; grid-template-columns:1.4fr 1fr 1fr 1.2fr; gap:40px; padding-bottom:50px;}
@media (max-width:900px){ .footer-grid{grid-template-columns:1fr 1fr;} }
@media (max-width:560px){ .footer-grid{grid-template-columns:1fr;} }
.site-footer h4{color:#fff; font-family:var(--font-display); font-size:1.05rem; margin-bottom:18px;}
.site-footer .brand-title{color:#fff;}
.site-footer .brand-subtitle{color:#AFCAC5;}
.footer-links li{margin-bottom:10px;}
.footer-links a:hover{color:var(--coral);}
.footer-contact li{display:flex; gap:10px; margin-bottom:14px; font-size:.9rem; align-items:flex-start;}
.footer-social{display:flex; gap:10px; margin-top:16px;}
.footer-social a{width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,.1); display:flex; align-items:center; justify-content:center;}
.footer-social a:hover{background:var(--coral);}
.footer-bottom{
  border-top:1px solid rgba(255,255,255,.12); padding:20px 0; font-size:.82rem;
  display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:10px;
}
.footer-bottom a{font-weight:700; color:#fff;}
.footer-bottom a:hover{color:var(--coral);}

/* ---------- WhatsApp float button ---------- */
.whatsapp-float{
  position:fixed; bottom:26px; right:26px; z-index:999;
  width:60px; height:60px; border-radius:50%; background:#25D366; display:flex; align-items:center; justify-content:center;
  box-shadow:0 8px 24px rgba(37,211,102,.5); animation:wa-pulse 2.4s infinite;
}
.whatsapp-float svg{width:30px; height:30px; fill:#fff;}
@keyframes wa-pulse{
  0%{box-shadow:0 0 0 0 rgba(37,211,102,.55);}
  70%{box-shadow:0 0 0 16px rgba(37,211,102,0);}
  100%{box-shadow:0 0 0 0 rgba(37,211,102,0);}
}

/* ---------- Notice Board ---------- */
.notice-list{display:flex; flex-direction:column; gap:16px;}
.notice-item{
  display:flex; gap:20px; background:#fff; border:1px solid var(--line); border-radius:var(--radius);
  padding:20px; box-shadow:var(--shadow-sm); transition:.2s ease;
}
.notice-item:hover{box-shadow:var(--shadow-md); transform:translateY(-2px);}
.notice-date{
  flex-shrink:0; width:64px; height:64px; border-radius:14px; background:var(--ivory-deep); color:var(--teal-900);
  display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center;
}
.notice-date strong{font-family:var(--font-display); font-size:1.4rem; line-height:1;}
.notice-date span{font-size:.68rem; text-transform:uppercase; letter-spacing:.03em; margin-top:2px;}
.notice-body{flex:1; min-width:0;}
.notice-body h3{margin-bottom:6px; font-size:1.05rem;}
.notice-body p{font-size:.9rem; margin-bottom:12px;}
@media (max-width:560px){
  .notice-item{flex-direction:column; gap:12px;}
  .notice-date{flex-direction:row; width:auto; height:auto; padding:8px 14px; gap:8px; align-self:flex-start;}
}

/* Homepage notification ticker */
.ticker-wrap{
  background:var(--teal-900); color:#fff; display:flex; align-items:stretch; overflow:hidden; border-radius:var(--radius);
}
.ticker-label{
  flex-shrink:0; background:var(--coral); color:#fff; font-weight:700; font-size:.82rem; text-transform:uppercase;
  letter-spacing:.04em; padding:14px 20px; display:flex; align-items:center; gap:8px;
}
.ticker-track-outer{flex:1; overflow:hidden; position:relative; display:flex; align-items:center;}
.ticker-track{display:flex; gap:60px; white-space:nowrap; animation:ticker-scroll 22s linear infinite; width:max-content;}
.ticker-track:hover{animation-play-state:paused;}
.ticker-track a{color:#fff; font-size:.9rem; font-weight:600; display:inline-flex; align-items:center; gap:8px;}
.ticker-track a:hover{color:#FFD8C2;}
.ticker-item-date{color:#8FC2BA; font-weight:400; font-size:.8rem;}
@keyframes ticker-scroll{
  0%{transform:translateX(0);}
  100%{transform:translateX(-50%);}
}
@media (max-width:640px){
  .ticker-wrap{flex-direction:column;}
  .ticker-label{padding:10px 16px;}
}


/* ---------- Misc ---------- */
.badge-soft{background:var(--ivory-deep); color:var(--teal-700); padding:5px 14px; border-radius:999px; font-size:.78rem; font-weight:700;}
.two-col{display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:center;}
@media (max-width:900px){ .two-col{grid-template-columns:1fr; gap:30px;} }
.list-check li{display:flex; gap:12px; margin-bottom:14px; align-items:flex-start;}
.list-check svg{flex-shrink:0; width:22px; height:22px; color:var(--coral); margin-top:2px;}
.alert{padding:16px 20px; border-radius:10px; margin-bottom:20px; font-size:.92rem;}
.alert-success{background:#E4F5EA; color:#1E6B3E; border:1px solid #BFE6CC;}
.alert-error{background:#FBE8E4; color:#A8371F; border:1px solid #F3C3B7;}
.tabs{display:flex; gap:8px; border-bottom:2px solid var(--line); margin-bottom:30px; flex-wrap:wrap;}
.tabs button{background:none; border:none; padding:12px 20px; font-weight:700; color:var(--ink-soft); cursor:pointer; border-bottom:3px solid transparent; margin-bottom:-2px;}
.tabs button.active{color:var(--coral); border-color:var(--coral);}
.tab-panel{display:none;}
.tab-panel.active{display:block;}

/* reduced motion */
@media (prefers-reduced-motion: reduce){
  *{animation:none !important; transition:none !important;}
}
.nav-bell{
    position: relative;
}

.nav-bell::after{
    content: "";
    position: absolute;
    top: 7px;
    right: 7px;
    width: 9px;
    height: 9px;
    background: #ff3b30;
    border: 2px solid #fff;
    border-radius: 50%;
    animation: notificationPulse 1.5s infinite;
}

@keyframes notificationPulse{
    0%,100%{
        transform: scale(1);
        opacity: 1;
    }
    50%{
        transform: scale(1.3);
        opacity: .7;
    }
}
@media (max-width:480px){

    /* Logo */
    .brand img{
        height:36px;
    }

    /* College Name */
    .brand-text{
        max-width:none;
        flex:1;
    }

    .brand-title{
        font-size:.92rem;
        line-height:1.2;
        white-space:normal;
        overflow:visible;
        text-overflow:unset;
    }

    .brand-subtitle{
        white-space:normal;
        overflow:visible;
        text-overflow:unset;
    }

    /* Apply Button */
    .nav-cta .btn{
        padding:9px 16px;
        font-size:.82rem;
    }

    /* Menu Icon */
    .nav-toggle{
        padding:5px;
    }

    .nav-toggle svg{
        width:24px;
        height:24px;
    }

    /* Gap */
    .navbar{
        gap:12px;
    }

    .nav-cta{
        gap:8px;
    }
}