 :root{--navy:#102b46;--navy2:#173e5f;--teal:#0d8b87;--teal-dark:#08736f;--ink:#1c2d3c;--muted:#667787;--line:#e5ebef;--soft:#f4f8fa;--white:#fff;--shadow:0 18px 50px rgba(16,43,70,.10)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:'DM Sans',sans-serif;line-height:1.65}h1,h2,h3,h4,.brand-text{font-family:Manrope,sans-serif;line-height:1.2}a{color:inherit;text-decoration:none}.container{width:min(1160px,calc(100% - 44px));margin:auto}.topbar{background:#0b2136;color:#c6d5df;font-size:11px;letter-spacing:.04em}.topbar-inner{min-height:34px;display:flex;align-items:center;justify-content:space-between}.site-header{height:auto;background:#fff;position:relative;z-index:10;border-bottom:1px solid #edf1f3}.header-inner{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:12px;min-width:245px}.brand-mark{height:48px;width:48px;border-radius:14px;background:var(--navy);color:#fff;display:grid;place-items:center;font:800 17px Manrope;position:relative}.brand-mark span{color:#5ee0c8}.brand-text{display:flex;flex-direction:column;letter-spacing:.04em}.brand-text b{font-size:10px;color:var(--teal);font-weight:800}.brand-text strong{font-size:13px;color:var(--navy);letter-spacing:.025em}.brand-text small{font:500 9px 'DM Sans';color:#82919c;letter-spacing:.08em;margin-top:3px}.main-nav{display:flex;align-items:center;gap:clamp(10px,1.55vw,24px)}.main-nav a{font-size:12px;font-weight:700;color:#526474;padding:34px 0;position:relative;white-space:nowrap}.main-nav a:hover,.main-nav a.active{color:var(--teal)}.main-nav a.active:after{content:"";position:absolute;bottom:23px;left:0;width:100%;height:2px;background:var(--teal)}.menu-toggle{display:none;background:none;border:0;padding:8px}.menu-toggle span{display:block;width:24px;height:2px;background:var(--navy);margin:5px}
.hero{height:min(660px,70vw);min-height:520px;background:var(--navy);position:relative;overflow:hidden;color:white}.hero-slides,.hero-slide{position:absolute;inset:0}.hero-slide{background-image:var(--hero-image);background-size:cover;background-position:center;opacity:0;visibility:hidden;transition:opacity .8s ease}.hero-slide.active{opacity:1;visibility:visible}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,29,49,.91) 0%,rgba(7,29,49,.76) 45%,rgba(7,29,49,.2) 100%),linear-gradient(0deg,rgba(5,22,38,.28),transparent 50%)}.hero-content{position:relative;z-index:1;padding-top:clamp(100px,13vw,180px)}.eyebrow,.section-kicker{display:inline-block;color:var(--teal);font-size:11px;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.eyebrow{color:#8be7d7;border-left:3px solid #39c4b2;padding-left:12px}.hero h1{font-size:clamp(38px,5vw,65px);letter-spacing:-.045em;max-width:760px;margin:22px 0 16px;font-weight:800}.hero h1 em{font-style:normal;color:#83e2d2}.hero-content p{font-size:16px;line-height:1.8;color:#d4e0e8;max-width:570px;margin:0 0 30px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:13px 21px;border-radius:4px;font-size:12px;font-weight:800;border:1px solid transparent;cursor:pointer;transition:.2s}.btn-primary{background:var(--teal);color:white}.btn-primary:hover{background:var(--teal-dark);transform:translateY(-2px)}.btn-outline-light{border-color:rgba(255,255,255,.55);color:#fff}.btn-outline-light:hover{background:#fff;color:var(--navy)}.btn-light{background:white;color:var(--navy)}.hero-bottom{position:absolute;z-index:2;bottom:28px;left:50%;transform:translateX(-50%);display:flex;align-items:center;justify-content:space-between}.slider-dots{display:flex;gap:8px}.dot{border:0;width:22px;height:4px;background:rgba(255,255,255,.45);padding:0;cursor:pointer}.dot.active{width:42px;background:#83e2d2}.slider-arrows{display:flex;gap:8px}.slider-arrows button{width:38px;height:38px;border:1px solid rgba(255,255,255,.45);border-radius:50%;background:transparent;color:white;font-size:18px;cursor:pointer}.slider-arrows button:hover{background:#fff;color:var(--navy)}
.quick-links{position:relative;z-index:3;margin-top:-1px;background:#fff;box-shadow:0 12px 35px rgba(16,43,70,.07)}.quick-grid{display:grid;grid-template-columns:repeat(4,1fr)}.quick-grid>a{display:flex;align-items:center;gap:13px;padding:24px 18px;border-right:1px solid var(--line)}.quick-grid>a:first-child{border-left:1px solid var(--line)}.quick-grid>a:hover{background:#f8fcfb}.quick-icon,.card-icon{display:grid;place-items:center;flex:0 0 auto;width:43px;height:43px;border-radius:12px;background:#e8f7f4;color:var(--teal);font-size:20px}.quick-grid b,.quick-grid small{display:block}.quick-grid b{font:800 13px Manrope;color:var(--navy)}.quick-grid small{font-size:10px;color:var(--muted);margin-top:3px}.quick-grid strong{margin-left:auto;color:var(--teal)}
.section{padding:88px 0}.section-soft{background:var(--soft)}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.section-image{position:relative}.section-image img{width:100%;height:430px;object-fit:cover;border-radius:5px;display:block}.image-note{position:absolute;bottom:22px;left:-18px;background:white;padding:17px 23px;box-shadow:var(--shadow);border-left:3px solid var(--teal)}.image-note b,.image-note span{display:block}.image-note b{font:800 14px Manrope;color:var(--navy)}.image-note span{font-size:10px;color:var(--muted);margin-top:3px}.section-copy h2,.section-heading h2,.narrow-copy h2,.contact-grid h2{font-size:clamp(28px,3vw,39px);letter-spacing:-.04em;color:var(--navy);margin:12px 0 18px}.section-copy p,.narrow-copy p{font-size:14px;color:var(--muted);line-height:1.9}.section-copy .lead,.lead{font-size:16px;color:#465b6d}.text-link{display:inline-flex;gap:12px;align-items:center;color:var(--teal);font-size:12px;font-weight:800;margin-top:12px}.text-link span{font-size:18px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:34px}.section-heading h2{margin-bottom:0}.cards-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.info-card{background:#fff;padding:30px 28px;border:1px solid var(--line);border-radius:5px;transition:.25s}.info-card:hover{transform:translateY(-5px);box-shadow:var(--shadow);border-color:#c8e8e2}.info-card .card-icon{margin-bottom:22px}.info-card h3{font-size:17px;color:var(--navy);margin:0 0 10px}.info-card p{font-size:13px;color:var(--muted);line-height:1.8;min-height:68px;margin:0 0 18px}.info-card a{font-size:11px;color:var(--teal);font-weight:800}.cta-band{background:linear-gradient(110deg,#0e344f,#126b6a);padding:46px 0;color:#fff}.cta-inner{display:flex;align-items:center;justify-content:space-between;gap:25px}.section-kicker.light{color:#8ce2d4}.cta-inner h2{font-size:clamp(22px,3vw,32px);max-width:650px;margin:10px 0 0;letter-spacing:-.03em}
.page-hero{padding:76px 0 82px;color:white;background:linear-gradient(110deg,rgba(9,34,55,.96),rgba(13,95,93,.84)),url('https://images.unsplash.com/photo-1576091160399-112ba8d25d1d?auto=format&fit=crop&w=1800&q=80') center/cover}.page-hero h1{font-size:clamp(38px,5vw,54px);margin:12px 0 10px;letter-spacing:-.04em}.page-hero p{margin:0;color:#d2e2e7;font-size:15px}.narrow-copy{max-width:850px}.process-list{margin:35px 0}.process-item{display:flex;gap:20px;padding:22px 0;border-bottom:1px solid var(--line)}.process-item>span{font:800 16px Manrope;color:var(--teal);padding-top:2px}.process-item h3{font-size:16px;color:var(--navy);margin:0 0 6px}.process-item p{margin:0}.verification-panel{background:var(--soft);border:1px solid var(--line);padding:25px 30px;margin:28px 0}.verification-panel h3{margin:0 0 15px;color:var(--navy)}.check-list{list-style:none;padding:0;margin:0}.check-list li{padding:7px 0 7px 27px;position:relative;color:#586a79;font-size:13px}.check-list li:before{content:"✓";position:absolute;left:0;color:var(--teal);font-weight:800}.notice-list{border-top:1px solid var(--line)}.notice-item{display:grid;grid-template-columns:85px 1fr 30px;gap:24px;align-items:center;padding:25px 10px;border-bottom:1px solid var(--line)}.notice-date{background:var(--soft);padding:12px 8px;text-align:center;border-radius:4px}.notice-date b{display:block;font:800 25px Manrope;color:var(--navy)}.notice-date span{font-size:10px;color:var(--muted)}.notice-tag{font-size:9px;text-transform:uppercase;letter-spacing:.12em;color:var(--teal);font-weight:800}.notice-item h3{font-size:17px;color:var(--navy);margin:5px 0}.notice-item p{font-size:12px;color:var(--muted);margin:0}.notice-arrow{color:var(--teal);font-size:20px}.notice-note{font-size:12px;color:#7b8994;background:#f8fafb;border-left:3px solid #d5e3e8;padding:13px 16px;margin-top:25px}
.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:75px}.contact-detail{display:flex;gap:16px;margin:25px 0}.contact-detail>span{width:42px;height:42px;border-radius:10px;background:#e8f7f4;color:var(--teal);display:grid;place-items:center;font-size:19px}.contact-detail b{font:800 13px Manrope;color:var(--navy)}.contact-detail p{font-size:12px;color:var(--muted);margin:3px 0}.contact-form-wrap{padding:32px;background:var(--soft);border:1px solid var(--line)}.contact-form-wrap h3{font-size:21px;color:var(--navy);margin:0 0 5px}.contact-form-wrap>p{font-size:12px;color:var(--muted);margin:0 0 22px}.contact-form{display:grid;gap:14px}.contact-form label{display:grid;gap:6px;font-size:11px;font-weight:800;color:#405366}.contact-form input,.contact-form select,.contact-form textarea{width:100%;border:1px solid #dce5e9;background:white;padding:12px 13px;border-radius:3px;font:13px 'DM Sans';color:var(--ink);outline:none}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:var(--teal)}.contact-form textarea{resize:vertical}
.site-footer{background:#0b2136;color:#c4d1da}.footer-main{display:grid;grid-template-columns:1.6fr 1fr 1fr 1.2fr;gap:55px;padding:60px 0}.brand-footer .brand-mark{background:#1b405c}.brand-footer .brand-text strong{color:#fff}.brand-footer .brand-text small{color:#8da3b2}.footer-about p,.footer-main>div>p{font-size:11px;line-height:1.9;color:#9fb0bc;max-width:280px;margin-top:18px}.footer-main h4{font-size:12px;color:#fff;margin:4px 0 19px}.footer-main>div:not(:first-child)>a{display:block;font-size:11px;color:#a9bac5;margin:11px 0}.footer-main a:hover{color:#8ce2d4}.footer-bottom{border-top:1px solid rgba(255,255,255,.1);font-size:10px;color:#8fa2b0}.footer-bottom .container{min-height:55px;display:flex;align-items:center;justify-content:space-between;gap:15px}
.brand-footer img{width: 80px; height: 80px; object-fit: contain;}

@media(max-width:1050px){.main-nav{gap:12px}.main-nav a{font-size:11px}.brand{min-width:215px}.brand-text strong{font-size:11px}.two-col{gap:45px}}
@media(max-width:850px){.header-inner{min-height:76px}.menu-toggle{display:block;cursor:pointer}.main-nav{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;padding:8px 22px 18px;box-shadow:0 15px 25px rgba(16,43,70,.1);align-items:stretch;flex-direction:column;gap:0}.main-nav.open{display:flex}.main-nav a{padding:12px 4px;border-bottom:1px solid var(--line)}.main-nav a.active:after{display:none}.hero{min-height:540px;height:72vw}.hero-content{padding-top:115px}.quick-grid{grid-template-columns:repeat(2,1fr)}.quick-grid>a:nth-child(3){border-left:1px solid var(--line)}.quick-grid>a{border-bottom:1px solid var(--line)}.two-col{grid-template-columns:1fr;gap:40px}.section-image img{height:380px}.cards-grid{grid-template-columns:repeat(2,1fr)}.contact-grid{grid-template-columns:1fr;gap:35px}.footer-main{grid-template-columns:repeat(2,1fr);gap:35px}}
@media(max-width:560px){.container{width:min(100% - 32px,1160px)}.topbar-inner{justify-content:center}.topbar-inner span:last-child{display:none}.brand{min-width:0}.brand-mark{width:42px;height:42px}.brand-text strong{font-size:10px}.brand-text b{font-size:9px}.hero{height:610px;min-height:0}.hero-content{padding-top:105px}.hero h1{font-size:39px}.hero-content p{font-size:14px}.hero-overlay{background:linear-gradient(90deg,rgba(7,29,49,.9),rgba(7,29,49,.54)),linear-gradient(0deg,rgba(5,22,38,.35),transparent)}.hero-bottom{bottom:20px}.quick-grid>a{padding:17px 10px;gap:9px}.quick-icon{width:36px;height:36px}.quick-grid b{font-size:11px}.quick-grid small{font-size:9px}.section{padding:62px 0}.section-image img{height:300px}.image-note{left:-5px}.section-heading{align-items:flex-start;flex-direction:column}.cards-grid{grid-template-columns:1fr}.info-card p{min-height:0}.cta-inner{align-items:flex-start;flex-direction:column}.page-hero{padding:58px 0}.notice-item{grid-template-columns:64px 1fr 16px;gap:12px;padding:19px 0}.notice-date b{font-size:21px}.notice-item h3{font-size:14px}.notice-item p{font-size:11px}.contact-form-wrap{padding:22px 18px}.footer-main{grid-template-columns:1fr 1fr;gap:28px 18px;padding:45px 0}.footer-about{grid-column:1/-1}.footer-bottom .container{padding:14px 0;align-items:flex-start;flex-direction:column;gap:4px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* ===== Official identity header additions ===== */
.topbar-inner{min-height:39px;gap:18px}
.topbar-contact,.topbar-tools{display:flex;align-items:center;gap:15px}
.topbar-contact a{color:#d4e0e8;font-size:11px;white-space:nowrap}
.topbar-contact a:hover,.sitemap-top-link:hover{color:#8ce2d4}
.topbar-tools{gap:7px}
.font-label{font-size:10px;color:#b9cbd6;margin-right:3px}
.font-control{height:23px;min-width:25px;padding:0 5px;border:1px solid #607789;border-radius:3px;background:transparent;color:#fff;font:700 11px 'DM Sans';cursor:pointer}
.font-control:hover{background:#fff;color:var(--navy)}
.font-normal{font-size:12px}
.sitemap-top-link{font-size:10px;font-weight:700;color:#d4e0e8;margin-left:8px;padding-left:14px;border-left:1px solid #536a7c}
.site-header{border-bottom:0}
.identity-row{min-height:132px;display:grid;grid-template-columns:115px 1fr 150px;align-items:center;gap:24px;padding-top:12px;padding-bottom:12px}
.identity-logo{display:flex;align-items:center;justify-content:center;height:105px}
.govt-logo img{width:120px;height:120px;object-fit:contain}
.council-logo img{width:125px;height:125px;object-fit:contain}
.council-heading{text-align:center;display:flex;flex-direction:column;align-items:center;gap:5px;color:var(--navy)}
.council-heading-hi{font-family:Manrope,'Noto Sans Devanagari',sans-serif;font-weight:800;font-size:clamp(16px,2vw,22px);color:#8b4b12}
.council-heading strong{font:800 clamp(17px,2.2vw,25px) Manrope,sans-serif;letter-spacing:.035em}
.council-heading small{font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:#748594;font-weight:700}
.nav-wrap{background:var(--navy);border-top:1px solid #e9eef1}
.nav-inner{display:flex;align-items:center;justify-content:center;min-height:51px}
.main-nav{gap:clamp(18px,2.6vw,35px)}
.main-nav a{color:#e3ebf0;padding:17px 0;font-size:12px}
.main-nav a:hover,.main-nav a.active{color:#8ce2d4}
.main-nav a.active:after{bottom:0;background:#69d5c5;height:3px}
.mobile-sitemap-link{display:none!important}
body{--accessibility-font-adjust:0px}
body.accessibility-font-up{font-size:calc(1em + 1px)}
body.accessibility-font-up p,body.accessibility-font-up li,body.accessibility-font-up label,body.accessibility-font-up .main-nav a{font-size:calc(1em + 1px)}
body.accessibility-font-up-2{font-size:calc(1em + 2px)}
body.accessibility-font-up-2 p,body.accessibility-font-up-2 li,body.accessibility-font-up-2 label,body.accessibility-font-up-2 .main-nav a{font-size:calc(1em + 2px)}
body.accessibility-font-down{font-size:calc(1em - 1px)}
body.accessibility-font-down p,body.accessibility-font-down li,body.accessibility-font-down label,body.accessibility-font-down .main-nav a{font-size:calc(1em - 1px)}
@media(max-width:850px){
 .identity-row{min-height:108px;grid-template-columns:75px 1fr 82px;gap:10px}
 .identity-logo{height:80px}.govt-logo img{width:65px;height:75px}.council-logo img{width:82px;height:82px}
 .council-heading-hi{font-size:15px}.council-heading strong{font-size:clamp(12px,2.4vw,18px)}.council-heading small{font-size:8px;letter-spacing:.12em}
 .nav-inner{justify-content:flex-end;min-height:48px}.menu-toggle span{background:#fff}
 .main-nav{top:100%;background:var(--navy);padding:8px 22px 16px}
 .main-nav a{color:#e3ebf0;border-bottom:1px solid rgba(255,255,255,.12);padding:12px 4px}
 .mobile-sitemap-link{display:block!important}
}
@media(max-width:560px){
 .topbar-inner{min-height:auto;padding-top:8px;padding-bottom:8px;align-items:flex-start;flex-direction:column;gap:7px}
 .topbar-contact{gap:10px;flex-wrap:wrap}.topbar-contact a{font-size:9px}
 .topbar-tools{align-self:flex-end}.font-label{font-size:9px}
 .identity-row{grid-template-columns:53px 1fr 58px;gap:5px;min-height:91px;padding-top:8px;padding-bottom:8px}
 .identity-logo{height:65px}.govt-logo img{width:49px;height:62px}.council-logo img{width:58px;height:58px}
 .council-heading-hi{font-size:11px}.council-heading strong{font-size:10px;letter-spacing:0}.council-heading small{font-size:7px;letter-spacing:.06em}
 .nav-inner{min-height:43px}
}
/* Homepage-only: three-column notices dashboard */
.home-dashboard {
  padding: 30px 0 42px;
  background:
    linear-gradient(135deg, rgb(17 103 104), rgb(14 54 80)),
    url('https://images.unsplash.com/photo-1538108197015-6e3c7f1f4a9a?auto=format&fit=crop&w=1800&q=80') center/cover;
}
.home-dashboard-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 34px;
  align-items: stretch;
}
.home-dashboard-card {
  background: #fff;
  min-height: 445px;
  padding: 34px 32px 28px;
  box-shadow: 5px 7px 13px rgba(0,0,0,.28);
  border: 1px solid rgba(255,255,255,.7);
}
.home-dashboard-title {
  margin: 0 0 35px;
  padding-bottom: 12px;
  position: relative;
  color: #111827;
  font: 800 19px/1.35 Georgia, serif;
  text-transform: uppercase;
  display: flex;
  align-items: center;
  gap: 9px;
}
.home-dashboard-title:after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100px;
  height: 2px;
  background: #df454b;
}
.home-dashboard-title .panel-icon {
  color: #102b46;
  font-family: Arial, sans-serif;
  font-size: 20px;
}
.home-dashboard-list {
  list-style: none;
  margin: 0;
  padding: 0;
}
.home-dashboard-list li { margin: 0 0 14px; }
.home-dashboard-list a {
  display: block;
  color: #001cff;
  text-decoration: none;
  font: 700 16px/1.85 Arial, sans-serif;
  transition: color .2s, transform .2s;
}
.home-dashboard-list a:hover {
  color: #d43d45;
  transform: translateX(3px);
}
.home-important-list a {
  color: #171717;
  line-height: 1.75;
  padding-left: 0;
}
.home-important-list a:before {
  content: "☛";
  color: #ef3f4d;
  font-size: 27px;
  line-height: 1;
  margin-right: 10px;
  vertical-align: -2px;
}
.home-dashboard-more {
  display: inline-block;
  margin-top: 12px;
  color: #0d7777;
  font-size: 12px;
  font-weight: 800;
  text-decoration: none;
}
.home-dashboard-more:hover { text-decoration: underline; }
@media(max-width: 950px) {
  .home-dashboard-grid { grid-template-columns: 1fr 1fr; gap: 22px; }
  .home-dashboard-card:last-child { grid-column: 1 / -1; min-height: auto; }
}
@media(max-width: 620px) {
  .home-dashboard { padding: 22px 0 30px; }
  .home-dashboard-grid { grid-template-columns: 1fr; gap: 18px; }
  .home-dashboard-card, .home-dashboard-card:last-child {
    grid-column: auto; min-height: auto; padding: 25px 22px;
  }
  .home-dashboard-title { margin-bottom: 24px; font-size: 17px; }
  .home-dashboard-list a { font-size: 14px; }
}

/* Registration / about / quick portal section inspired by the supplied reference */
.portal-highlights {
  position: relative;
  overflow: hidden;
  padding: 42px 0 32px;
  background:
    repeating-linear-gradient(132deg, transparent 0 42px, rgba(31,54,103,.045) 43px 45px, transparent 46px 68px),
    repeating-linear-gradient(48deg, transparent 0 52px, rgba(31,54,103,.035) 53px 55px, transparent 56px 78px),
    #fff;
}
.portal-main-grid {
  display: grid;
  grid-template-columns: 1.05fr 1.12fr 1.12fr 1.12fr;
  gap: 28px;
  align-items: start;
  min-height: 340px;
}
.portal-building {
  min-height: 320px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}
.building-ring {
  position: absolute;
  width: 128px;
  height: 128px;
  border: 16px solid rgba(82,94,160,.34);
  border-bottom-color: transparent;
  border-radius: 50%;
  top: -60px;
  left: 50%;
  transform: translateX(-50%);
}
.building-photo {
  width: min(100%, 330px);
  aspect-ratio: 1;
  border-radius: 50%;
  background:
    linear-gradient(rgba(18,47,71,.08),rgba(18,47,71,.18)),
    url('https://images.unsplash.com/photo-1562774053-701939374585?auto=format&fit=crop&w=900&q=85') center/cover;
  border: 7px solid #e4d0a7;
  box-shadow: 0 5px 18px rgba(0,0,0,.12);
  position: relative;
}
.portal-section-heading {
  display: flex;
  align-items: center;
  gap: 13px;
  margin: 10px 0 30px;
}
.portal-section-heading span {
  width: 74px;
  height: 4px;
  background: linear-gradient(90deg,#0876df 0 16%,transparent 16% 32%,#0876df 32% 100%);
  flex: 0 0 74px;
}
.portal-section-heading h2 {
  margin: 0;
  color: #092b78;
  font: 800 16px/1.3 'DM Sans',sans-serif;
  letter-spacing: .07em;
  text-transform: uppercase;
  white-space: nowrap;
}
.portal-about p {
  color: #28313a;
  font-size: 15px;
  line-height: 1.9;
  text-align: justify;
  margin: 0 0 25px;
}
.portal-learn-more {
  display: inline-block;
  padding: 12px 21px;
  border-radius: 8px;
  background: linear-gradient(100deg,#bd0872,#78145e);
  color: #fff;
  font-size: 14px;
  font-weight: 800;
  text-decoration: none;
}
.portal-learn-more:hover { color: #fff; filter: brightness(1.08); }
.portal-action-card {
  min-height: 141px;
  padding: 22px 4px;
  border-radius: 4px;
  display: flex;
  align-items: flex-start;
  gap: 20px;
  text-decoration: none;
  box-shadow: 0 8px 22px rgba(0,0,0,.08);
}
.registration-card { background: #126087; }
.renewal-card { background: #a10f32; }
.portal-action-icon {
  color: #fff;
  font: 42px/1 Arial,sans-serif;
  min-width: 52px;
  text-align: center;
}
.portal-action-copy { display: flex; flex-direction: column; gap: 18px; }
.portal-action-copy strong {
  color: #fff;
  font-size: 16px;
  line-height: 1.8;
}
.portal-action-copy em {
  color: #ffdc24;
  font-style: normal;
  font-size: 17px;
  white-space: nowrap;
}
.portal-renewal-notice {
  display: block;
  margin: 20px 0 30px;
  color: #071c9b;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.8;
  text-decoration: none;
}
.portal-payment {
  width: 255px;
  max-width: 100%;
  min-height: 116px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  background: #1264a1;
  color: #fff;
  text-decoration: none;
  font: 42px/1.1 Arial,sans-serif;
}
.portal-payment .payment-mark { font-size: 65px; line-height: 1; }
.portal-payment small { align-self: flex-end; font-size: 30px; padding-bottom: 12px; }
.portal-shortcuts {
  display: grid;
  grid-template-columns: repeat(4,1fr);
  gap: 22px;
  padding-top: 30px;
}
.portal-shortcut {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 5px;
  text-decoration: none;
  font-size: 19px;
  font-weight: 800;
}
.shortcut-symbol {
  width: 88px;
  height: 88px;
  border-radius: 50% 0 0 50%;
  display: grid;
  place-items: center;
  color: #fff;
  font: 52px/1 Arial,sans-serif;
  background: #0877ed;
  box-shadow: 13px 0 0 -4px #1a62c5;
}
.shortcut-gold .shortcut-symbol { background:#0877ed; }
.shortcut-orange .shortcut-symbol { background:#f04b22; }
.shortcut-purple .shortcut-symbol { background:#2dd8d4; }
.shortcut-blue strong { color:#f04439; }
.shortcut-gold strong { color:#e9a900; }
.shortcut-orange strong { color:#ed7000; }
.shortcut-purple strong { color:#a326a1; }
@media(max-width:1100px) {
  .portal-main-grid { grid-template-columns: 1fr 1fr; }
  .portal-building { min-height: 270px; }
  .portal-shortcuts { padding-top: 20px; }
}
@media(max-width:620px) {
  .portal-highlights { padding: 30px 0 24px; }
  .portal-main-grid { grid-template-columns: 1fr; gap: 28px; }
  .portal-building { min-height: 245px; }
  .building-photo { width: 245px; }
  .portal-section-heading { margin: 0 0 18px; }
  .portal-section-heading h2 { font-size: 14px; white-space: normal; }
  .portal-action-card { min-height: 120px; }
  .portal-shortcuts { grid-template-columns: 1fr 1fr; row-gap: 25px; }
  .portal-shortcut { font-size: 15px; }
  .shortcut-symbol { width: 70px; height: 70px; font-size: 40px; }
}


/* Homepage header: remain visible while scrolling */
.site-header {
  position: sticky;
  top: 0;
  z-index: 1000;
  background: #fff;
  box-shadow: 0 3px 14px rgba(15, 35, 65, .12);
}

/* Affiliated institute logo strip: seamless right-to-left marquee */
.affiliated-marquee {
  padding: 16px 0 30px;
  overflow: hidden;
  background: #fff;
  border-top: 1px solid #edf0f4;
}
.affiliated-marquee-heading {
  margin: 0 0 18px;
  color: #183b91;
  text-align: center;
  font: 800 22px/1.3 'Manrope', sans-serif;

}
.affiliated-marquee-window {
  width: 100%;
  overflow: hidden;
  position: relative;
}
.affiliated-marquee-track {
  display: flex;
  align-items: center;
  width: max-content;
  gap: 24px;
  animation: affiliatedScroll 32s linear infinite;
  will-change: transform;
}
.affiliated-marquee-window:hover .affiliated-marquee-track {
  animation-play-state: paused;
}
.affiliated-marquee-item {
  flex: 0 0 220px;
  height: 112px;
  padding: 8px 18px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: transparent;
}
.affiliated-marquee-item img {
  display: block;
  max-width: 100%;
  max-height: 86px;
  object-fit: contain;
}
@keyframes affiliatedScroll {
  from { transform: translateX(0); }
  to { transform: translateX(-50%); }
}
@media (prefers-reduced-motion: reduce) {
  .affiliated-marquee-track { animation: none; }
}
@media(max-width:620px) {
  .affiliated-marquee-heading { font-size: 19px; }
  .affiliated-marquee-item { flex-basis: 170px; height: 90px; }
  .affiliated-marquee-item img { max-height: 68px; }
}


/* Auto vertical ticker for Important Links, Notifications and Latest News */
.home-dashboard-card {
  position: relative;
  overflow: hidden;
}
.home-dashboard-list {
  animation: homeNoticeScroll 28s linear infinite;
  will-change: transform;
}
.home-dashboard-card:hover .home-dashboard-list {
  animation-play-state: paused;
}
@keyframes homeNoticeScroll {
  0%   { transform: translateY(0); }
  88%  { transform: translateY(-42%); }
  100% { transform: translateY(-42%); }
}
@media (prefers-reduced-motion: reduce) {
  .home-dashboard-list { animation: none; }
}
