body{font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;color:#4E1B2A;background:#FFFFFF}
.topbar{background:var(--theme-deep);color:#FFFFFF}
.main-nav{background:linear-gradient(90deg,var(--primary),var(--theme-deep));box-shadow:0 3px 20px rgba(0,0,0,.15)}
.brand-logo{width:48px;height:48px;object-fit:contain;background:#FFFFFF;border-radius:50%;padding:3px}
.brand-mark{width:46px;height:46px;border-radius:50%;background:#FFFFFF;color:var(--primary);display:grid;place-items:center;font-weight:800}
.navbar-brand small{font-size:.72rem;letter-spacing:1px;color:#F3EDEE}
.nav-link{font-weight:600;margin-left:5px}
.hero{background:radial-gradient(circle at 80% 20%,rgba(255,255,255,.15),transparent 30%),linear-gradient(120deg,var(--primary),var(--theme-deep));color:#FFFFFF;position:relative;overflow:hidden}
.hero:after{content:"";position:absolute;right:-80px;bottom:-180px;width:420px;height:420px;border:70px solid rgba(255,255,255,.04);border-radius:50%}
.min-vh-50{min-height:520px}
.hero-kicker,.section-heading span,.page-header span{font-size:.78rem;letter-spacing:2px;font-weight:700;color:var(--secondary)}
.hero h1{font-size:clamp(2.4rem,5vw,4.6rem);font-weight:800;line-height:1.04;max-width:850px}
.hero-panel{background:rgba(255,255,255,.1);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.18);border-radius:24px;padding:32px}
.hero-icon{font-size:4rem;color:var(--secondary)}
.quick-services{margin-top:-42px;position:relative;z-index:5}
.quick-card{background:#FFFFFF;border-radius:16px;padding:24px;box-shadow:0 15px 40px rgba(34,30,30,.12);display:flex;flex-direction:column;min-height:145px}
.quick-card i{font-size:2rem;color:var(--primary);margin-bottom:10px}.quick-card span{color:#C2526E;font-size:.9rem}
.section-space{padding:90px 0}.section-soft{background:#FBF7F8}.section-heading h2{font-weight:800}
.news-card{border:1px solid #EEEEEE;border-radius:18px;overflow:hidden;background:#FFFFFF;box-shadow:0 7px 30px rgba(0,0,0,.05)}
.news-card img,.image-placeholder{height:230px;width:100%;object-fit:cover}.image-placeholder{display:grid;place-items:center;background:var(--theme-soft);font-size:3rem;color:var(--primary)}
.news-card a{color:var(--primary);text-decoration:none;font-weight:700}
.program-row{display:flex;gap:18px;padding:18px 0;border-bottom:1px solid #DDDDDD}.program-icon{width:56px;height:56px;border-radius:14px;background:var(--primary);color:#FFFFFF;display:grid;place-items:center;font-size:1.5rem;flex:0 0 auto}
.announcement-box{background:var(--primary);color:#FFFFFF;border-radius:22px;padding:28px}.announcement-item{border-bottom:1px solid rgba(255,255,255,.18);padding:15px 0;display:flex;flex-direction:column}
.page-header{background:linear-gradient(120deg,var(--primary),var(--theme-deep));color:#FFFFFF}.page-header h1{font-weight:800}
.content-card{background:#FFFFFF;border:1px solid #EEEEEE;box-shadow:0 8px 30px rgba(0,0,0,.05);border-radius:18px;padding:32px}
.staff-card{border:1px solid #EEEEEE;border-radius:16px;overflow:hidden;background:#FFFFFF}.staff-card img,.staff-placeholder{width:100%;height:280px;object-fit:cover}.staff-placeholder{background:var(--theme-soft);display:grid;place-items:center;font-size:4rem;color:var(--primary)}
.article-img{max-height:540px;object-fit:cover}.empty-box{border:1px dashed #CCCCCC;padding:40px;text-align:center;border-radius:15px}
.footer{background:var(--theme-deeper);color:#FFFFFF}.footer a{display:block;color:#E6B8C3;text-decoration:none;margin:7px 0}.footer-bottom{background:var(--theme-deeper);color:#DDA0AF}

/* ===== Medical Blue Identity ===== */
:root{
  --medical-blue:var(--primary);
  --medical-cyan:var(--secondary);
  --medical-navy:var(--theme-deep);
  --medical-sky:var(--theme-soft);
  --medical-mint:#F0E4E7;
  --medical-text:#4A1827;
}
body{color:var(--medical-text);background:#FFFFFF}
.topbar{background:var(--medical-navy)}
.main-nav{background:linear-gradient(90deg,var(--medical-blue),var(--theme-deep))}
.navbar-brand small{color:#F1E6E9}
.brand-mark{color:var(--medical-blue)}
.nav-link{color:rgba(255,255,255,.92)!important}
.nav-link:hover{color:#FFFFFF!important}

.hero-slider-wrap{background:var(--medical-navy)}
.hero-slide{
  position:relative;
  min-height:610px;
  background-size:cover;
  background-position:center;
  color:#FFFFFF;
  overflow:hidden;
}
.hero-slide-medical{
  background:
    radial-gradient(circle at 78% 22%,rgba(228,92,126,.28),transparent 23%),
    radial-gradient(circle at 90% 72%,rgba(255,255,255,.10),transparent 24%),
    linear-gradient(120deg,var(--theme-deep) 0%,var(--primary) 58%,var(--secondary) 100%);
}
.hero-slide-content{min-height:610px;display:flex;align-items:center;position:relative;z-index:2}
.hero-slide h1{font-size:clamp(2.7rem,5vw,5.1rem);font-weight:800;line-height:1.03;max-width:930px;margin:14px 0 20px}
.hero-slide .lead{font-size:1.12rem;line-height:1.75;max-width:760px;color:#F3E9EB;margin-bottom:30px}
.hero-kicker{color:#DD9EAE}
.btn-medical-light{background:#FFFFFF;color:var(--medical-blue);border:0;font-weight:700;padding:.85rem 1.3rem;border-radius:12px}
.btn-medical-light:hover{background:var(--theme-soft);color:var(--theme-deep)}
.medical-pattern{position:absolute;right:8%;bottom:-35px;font-size:15rem;color:rgba(255,255,255,.055);z-index:1}
.carousel-indicators [data-bs-target]{width:28px;height:4px;border:0;border-radius:10px}
.carousel-control-prev,.carousel-control-next{width:7%}

.quick-card i,.news-card a{color:var(--medical-blue)}
.quick-card{border-top:4px solid var(--medical-cyan)}
.program-icon{background:linear-gradient(145deg,var(--medical-blue),var(--medical-cyan))}
.announcement-box{background:linear-gradient(145deg,var(--medical-blue),#8E173B)}
.section-soft{background:#FAF7F8}
.page-header{background:linear-gradient(115deg,var(--medical-navy),var(--medical-blue),#8E173B)}
.page-header span,.section-heading span{color:#D83A61}
.footer{background:var(--medical-navy)}
.footer-bottom{background:var(--theme-deeper)}
.image-placeholder,.staff-placeholder{background:var(--medical-sky);color:var(--medical-blue)}

/* ===== Professional Frontend v4 ===== */
a{transition:.2s}
.announcement-ticker{
  background:#FCF9FA;
  border-bottom:1px solid #EFE1E5;
  min-height:44px;
  display:flex;
  align-items:center;
  overflow:hidden;
}
.ticker-inner{display:flex;align-items:stretch;overflow:hidden;padding:0}
.ticker-label{
  flex:0 0 auto;
  background:linear-gradient(90deg,var(--primary),#8E173B);
  color:#FFFFFF;
  display:flex;
  align-items:center;
  gap:8px;
  padding:0 18px;
  font-size:.8rem;
  font-weight:800;
  letter-spacing:.3px;
  position:relative;
  z-index:2;
}
.ticker-viewport{overflow:hidden;flex:1;display:flex;align-items:center}
.ticker-track{
  display:flex;
  align-items:center;
  width:max-content;
  white-space:nowrap;
  animation:tickerScroll 32s linear infinite;
}
.ticker-track:hover{animation-play-state:paused}
.ticker-item{display:inline-flex;align-items:center;padding:0 22px;font-size:.86rem;color:#602235;font-weight:600}
.ticker-item i{color:var(--secondary);font-size:1.2rem}
@keyframes tickerScroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}

.hero-slider-wrap{box-shadow:0 20px 50px rgba(112,18,46,.08)}
.quick-services{margin-top:-52px}
.quick-card{border-top:0;position:relative;overflow:hidden}
.quick-card:before{content:"";position:absolute;left:0;top:0;width:5px;height:100%;background:linear-gradient(var(--primary),var(--secondary))}
.quick-card:hover{transform:translateY(-4px);box-shadow:0 20px 45px rgba(109,25,50,.14)}
.section-heading span{font-weight:800}
.section-heading h2{color:#4F1426}
.news-card{border:1px solid #EEE6E8;transition:.2s}
.news-card:hover{transform:translateY(-4px);box-shadow:0 18px 45px rgba(106,31,53,.10)}
.news-card h5{font-weight:750;color:#501728;line-height:1.45}
.news-date{color:#C2536F}
.content-card{border-color:#EFE6E8;box-shadow:0 10px 35px rgba(106,31,53,.055)}

.page-header{
  position:relative;
  overflow:hidden;
  border-bottom:4px solid var(--secondary);
}
.page-header:after{
  content:"";
  position:absolute;
  width:280px;height:280px;
  border:52px solid rgba(255,255,255,.045);
  border-radius:50%;
  right:5%;top:-130px;
}
.page-header .container{position:relative;z-index:2}
.breadcrumb-lite{display:flex;align-items:center;gap:8px;font-size:.8rem;color:#EDDDE1;margin-top:13px}
.breadcrumb-lite a{color:#FFFFFF;text-decoration:none}.breadcrumb-lite i{font-size:.65rem}

.public-sidebar{position:sticky;top:138px}
.sidebar-widget{
  background:#FFFFFF;
  border:1px solid #EEE6E8;
  border-radius:18px;
  padding:22px;
  margin-bottom:20px;
  box-shadow:0 8px 28px rgba(100,28,50,.045);
}
.sidebar-widget-title span{font-size:.64rem;letter-spacing:1.3px;font-weight:800;color:#95183E}
.sidebar-widget-title h5{font-weight:800;color:#501728;margin:4px 0 15px}
.latest-news-item{
  display:flex;
  gap:12px;
  padding:13px 0;
  border-bottom:1px solid #F3EFF0;
  color:#501728;
  text-decoration:none;
}
.latest-news-item:last-child{border-bottom:0;padding-bottom:0}
.latest-news-item:first-child{padding-top:0}
.latest-news-item img,.latest-news-placeholder{
  width:78px;height:62px;border-radius:10px;object-fit:cover;flex:0 0 auto
}
.latest-news-placeholder{display:grid;place-items:center;background:var(--theme-soft);color:var(--primary);font-size:1.3rem}
.latest-news-item small{display:block;color:#C9657E;font-size:.68rem;margin-bottom:3px}
.latest-news-item strong{display:block;font-size:.81rem;line-height:1.35}
.latest-news-item:hover strong{color:var(--primary)}
.sidebar-empty{font-size:.84rem;color:#C75F79}
.sidebar-quick>a{
  display:grid;
  grid-template-columns:34px 1fr 18px;
  align-items:center;
  gap:10px;
  padding:11px 0;
  border-bottom:1px solid #F3EFF0;
  text-decoration:none;
  color:#652437;
  font-size:.86rem;
  font-weight:650;
}
.sidebar-quick>a:last-child{border-bottom:0}
.sidebar-quick>a>i:first-child{
  width:34px;height:34px;border-radius:9px;background:var(--theme-soft);color:var(--primary);display:grid;place-items:center
}
.sidebar-quick>a>i:last-child{font-size:.72rem;color:#CE7289}
.medical-info-card{
  background:linear-gradient(145deg,var(--theme-deep),var(--primary) 68%,#8E173B);
  color:#FFFFFF;
  border:0;
}
.medical-info-card>i{font-size:2.6rem;color:#EA839D}
.medical-info-card h5{font-weight:800;margin:12px 0 8px}
.medical-info-card p{color:#EFE0E4;font-size:.84rem;margin:0;line-height:1.65}

.program-detail-card{display:flex;gap:18px;align-items:flex-start}
.program-detail-icon{width:58px;height:58px;border-radius:15px;background:linear-gradient(145deg,var(--primary),var(--secondary));color:#FFFFFF;display:grid;place-items:center;font-size:1.4rem;flex:0 0 auto}
.program-detail-card h4{font-weight:800;color:#501728}
.program-meta{display:flex;gap:8px;flex-wrap:wrap;margin:8px 0 10px}
.program-meta span{font-size:.74rem;background:var(--theme-soft);color:var(--primary);padding:5px 9px;border-radius:20px;font-weight:700}
.article-meta{color:#C45772;font-size:.82rem;margin-bottom:17px}
.doc-title{display:flex;align-items:center;gap:10px}.doc-title i{color:var(--primary);font-size:1.2rem}

.footer{
  background:linear-gradient(135deg,var(--theme-deeper),var(--theme-deep) 58%,var(--theme-deep));
  color:#FFFFFF !important;
  border-top:5px solid var(--secondary);
}
.footer *{color:inherit}
.footer h5,.footer h6,.footer strong{color:#FFFFFF !important}
.footer small,.footer-text,.footer-contact span{color:#EACED5 !important}
.footer-title{font-size:.78rem;letter-spacing:1.2px;text-transform:uppercase;font-weight:800;margin-bottom:16px}
.footer a{color:#EEDEE2 !important;text-decoration:none;margin:8px 0}
.footer a:hover{color:#FFFFFF !important;transform:translateX(2px)}
.footer-logo{width:58px;height:58px;object-fit:contain;background:#FFFFFF;border-radius:14px;padding:5px}
.footer-logo-placeholder{width:58px;height:58px;border-radius:14px;background:#FFFFFF;color:var(--primary)!important;display:grid;place-items:center;font-size:1.5rem}
.footer-contact div{display:flex;align-items:center;gap:9px;margin:7px 0}.footer-contact i{color:#E56C8A!important}
.social-links{display:flex;gap:9px}.social-links a{width:38px;height:38px;border-radius:10px;background:rgba(255,255,255,.1);display:grid;place-items:center;margin:0!important}
.social-links a:hover{background:var(--secondary);transform:translateY(-2px)}
.footer-bottom{background:var(--theme-deeper) !important;color:#DCC1C8 !important;border-top:1px solid rgba(255,255,255,.08);font-size:.78rem}
.footer-bottom *{color:#DCC1C8 !important}

@media(max-width:991px){
  .public-sidebar{position:static}
  .ticker-label span{display:none}
  .ticker-label{padding:0 12px}
}


/* Running text visibility fix */
.announcement-ticker{
  position:relative;
  z-index:15;
  display:flex !important;
  background:#F9F5F6 !important;
  border-top:1px solid #EFE2E5;
  border-bottom:1px solid #EBDBDF;
}
.ticker-viewport{min-width:0}
.ticker-track{animation-duration:36s}


/* Contact & homepage professional sections */
.section-kicker{
  display:inline-block;
  font-size:.68rem;
  letter-spacing:1.5px;
  font-weight:800;
  color:#95183E;
  margin-bottom:10px;
}
.home-section-title{
  font-size:clamp(2rem,3.2vw,3.15rem);
  line-height:1.12;
  font-weight:800;
  color:#501728;
  margin-bottom:18px;
}
.home-section-desc{font-size:1rem;line-height:1.8;color:#BD4261}
.home-profile-section{background:#FFFFFF}
.profile-visual-card{
  min-height:390px;
  position:relative;
  border-radius:28px;
  background:
    radial-gradient(circle at 72% 20%,rgba(232,112,142,.35),transparent 23%),
    linear-gradient(145deg,var(--theme-deep),var(--primary) 62%,var(--secondary));
  overflow:hidden;
  padding:40px;
  box-shadow:0 25px 60px rgba(116,20,49,.18)
}
.profile-visual-card:after{
  content:"";
  position:absolute;
  width:260px;height:260px;
  border:46px solid rgba(255,255,255,.055);
  border-radius:50%;
  right:-65px;bottom:-70px
}
.profile-visual-main{position:relative;z-index:2;color:#FFFFFF;display:flex;flex-direction:column;align-items:flex-start}
.profile-visual-main>i{font-size:5rem;color:#DEA0B0;margin-bottom:44px}
.profile-visual-main span{font-size:.72rem;letter-spacing:1.6px;color:#EECED6;font-weight:800}
.profile-visual-main strong{font-size:2rem;margin-top:6px}
.profile-mini-card{
  position:absolute;
  z-index:3;
  left:36px;bottom:30px;
  background:#FFFFFF;
  border-radius:16px;
  box-shadow:0 12px 35px rgba(0,0,0,.12);
  padding:14px 18px;
  display:flex;align-items:center;gap:12px
}
.profile-mini-card i{font-size:1.7rem;color:var(--primary)}
.profile-mini-card strong{display:block;color:#501728;font-size:.85rem}
.profile-mini-card small{display:block;color:#C45672;font-size:.7rem}
.profile-points{margin:20px 0}
.profile-points>div{display:flex;align-items:flex-start;gap:10px;margin:11px 0;color:#802D46;font-weight:600;font-size:.9rem}
.profile-points i{color:var(--secondary);font-size:1.15rem;margin-top:1px}

.home-stats-section{
  background:linear-gradient(180deg,#FFFFFF 0,#FFFFFF 50%,#FAF7F8 50%,#FAF7F8 100%);
  padding:10px 0 55px
}
.stats-panel{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  background:#FFFFFF;
  border:1px solid #EEE5E7;
  border-radius:22px;
  box-shadow:0 18px 45px rgba(112,34,57,.09);
  overflow:hidden
}
.stat-box{padding:28px;text-align:center;border-right:1px solid #EFE9EA}
.stat-box:last-child{border-right:0}
.stat-box i{display:block;font-size:1.8rem;color:var(--secondary);margin-bottom:8px}
.stat-box strong{display:block;font-size:2rem;color:var(--primary);line-height:1.1}
.stat-box span{display:block;color:#BE4664;font-size:.8rem;margin-top:5px}

.contact-cta-card{
  background:linear-gradient(120deg,var(--theme-deep),var(--primary) 62%,#8E173B);
  border-radius:24px;
  padding:36px 40px;
  color:#FFFFFF;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:30px;
  box-shadow:0 22px 50px rgba(151,25,63,.16)
}
.contact-cta-card span{font-size:.68rem;letter-spacing:1.5px;color:#DEA1B0;font-weight:800}
.contact-cta-card h3{font-size:1.8rem;font-weight:800;margin:6px 0 8px}
.contact-cta-card p{margin:0;color:#EDDEE2;max-width:720px}

.contact-header .page-header-lead{max-width:760px;color:#EEE0E3;margin:12px 0 0}
.contact-main-card,.contact-side-card{
  background:#FFFFFF;border:1px solid #EEE5E7;border-radius:20px;padding:30px;
  box-shadow:0 10px 35px rgba(106,31,53,.055);height:100%
}
.contact-main-card h2{font-weight:800;color:#501728;font-size:2rem}
.contact-intro{color:#BE4563;line-height:1.75;margin-bottom:25px}
.contact-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.contact-info-item{display:flex;gap:12px;align-items:flex-start;background:#FCF9F9;border:1px solid #F0E7E9;border-radius:14px;padding:16px}
.contact-info-icon{width:40px;height:40px;border-radius:11px;background:var(--theme-soft);color:var(--primary);display:grid;place-items:center;flex:0 0 auto}
.contact-info-item small{display:block;color:#C65B76;font-size:.69rem;text-transform:uppercase;letter-spacing:.5px}
.contact-info-item strong{display:block;color:#652437;font-size:.86rem;margin-top:3px;line-height:1.5}
.btn-contact-wa{margin-top:22px;background:#A31A43;color:#FFFFFF;border:0;border-radius:11px;padding:.75rem 1rem;font-weight:700}
.btn-contact-wa:hover{background:#841637;color:#FFFFFF}
.contact-side-card{background:linear-gradient(180deg,#FCFAFA,#F9F4F5)}
.contact-side-icon{width:62px;height:62px;border-radius:18px;background:linear-gradient(145deg,var(--primary),var(--secondary));color:#FFFFFF;display:grid;place-items:center;font-size:1.7rem;margin-bottom:20px}
.contact-side-card h4{font-weight:800;color:#501728}
.contact-side-card p{color:#BE4563;line-height:1.7}
.contact-links a{display:grid;grid-template-columns:34px 1fr 18px;gap:10px;align-items:center;padding:12px 0;border-bottom:1px solid #EDE3E6;color:#762940;text-decoration:none;font-size:.85rem;font-weight:650}
.contact-links a:last-child{border-bottom:0}
.contact-links a>i:first-child{width:34px;height:34px;border-radius:9px;background:var(--theme-soft);color:var(--primary);display:grid;place-items:center}
.contact-links a>i:last-child{font-size:.72rem;color:#CC6C84}
.contact-map{border-radius:20px;overflow:hidden;border:1px solid #EEE5E7;box-shadow:0 10px 35px rgba(106,31,53,.05)}
.contact-map iframe{width:100%;height:390px;border:0;display:block}

@media(max-width:991px){
  .stats-panel{grid-template-columns:repeat(2,1fr)}
  .stat-box:nth-child(2){border-right:0}
  .stat-box:nth-child(-n+2){border-bottom:1px solid #EFE9EA}
  .contact-cta-card{align-items:flex-start;flex-direction:column}
}
@media(max-width:600px){
  .stats-panel{grid-template-columns:1fr}
  .stat-box{border-right:0;border-bottom:1px solid #EFE9EA!important}
  .stat-box:last-child{border-bottom:0!important}
  .contact-info-grid{grid-template-columns:1fr}
  .profile-visual-card{min-height:330px;padding:28px}
  .contact-cta-card{padding:28px 24px}
}


/* Information Hub sections */
.public-information-hub{
  background:
    radial-gradient(circle at 8% 15%,rgba(171,28,71,.055),transparent 20%),
    #FBF7F8;
}
.public-information-hub .section-heading{max-width:700px}
.public-information-hub .section-heading p{color:#BF4966;line-height:1.7}
.info-hub-card{
  background:#FFFFFF;
  border:1px solid #EDE4E6;
  border-radius:20px;
  padding:24px;
  box-shadow:0 12px 36px rgba(104,30,52,.055);
  transition:.2s
}
.info-hub-card:hover{transform:translateY(-3px);box-shadow:0 20px 45px rgba(104,30,52,.09)}
.hub-card-head{display:flex;align-items:center;gap:13px;margin-bottom:20px}
.hub-icon{
  width:48px;height:48px;border-radius:14px;
  background:linear-gradient(145deg,var(--theme-soft),#F0E4E7);
  color:var(--primary);display:grid;place-items:center;font-size:1.35rem
}
.hub-card-head span{display:block;font-size:.6rem;letter-spacing:1.2px;font-weight:800;color:#95183E}
.hub-card-head h4{font-size:1.15rem;font-weight:800;color:#501829;margin:3px 0 0}

.useful-link-list a{
  display:grid;grid-template-columns:38px 1fr 18px;gap:10px;align-items:center;
  padding:10px 0;border-bottom:1px solid #F2EFF0;color:#70273D;text-decoration:none;
  font-size:.84rem;font-weight:700
}
.useful-link-list a:last-child{border-bottom:0}
.useful-link-icon{width:36px;height:36px;border-radius:10px;background:#F9F3F5;color:var(--primary);display:grid;place-items:center}
.useful-link-list a>i:last-child{font-size:.72rem;color:#CD7087}
.useful-link-list a:hover span{color:var(--primary)}

.multimedia-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.multimedia-item{position:relative;height:125px;border-radius:12px;overflow:hidden;background:var(--theme-soft)}
.multimedia-item img{width:100%;height:100%;object-fit:cover;transition:.3s}
.multimedia-item:hover img{transform:scale(1.06)}
.multimedia-placeholder{height:100%;display:grid;place-items:center;color:var(--primary);font-size:1.5rem}
.multimedia-overlay{
  position:absolute;inset:auto 0 0 0;
  background:linear-gradient(transparent,rgba(55,9,23,.82));
  color:#FFFFFF;padding:30px 9px 8px;
  display:flex;align-items:center;gap:6px;font-size:.66rem;font-weight:700
}
.multimedia-overlay span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

.public-doc-list{display:flex;flex-direction:column}
.public-doc-item{
  display:grid;grid-template-columns:42px 1fr 28px;gap:10px;align-items:center;
  padding:10px 0;border-bottom:1px solid #F2EFF0
}
.public-doc-item:last-child{border-bottom:0}
.public-doc-icon{width:40px;height:40px;border-radius:10px;background:var(--theme-soft);color:var(--primary);display:grid;place-items:center}
.public-doc-item small{display:block;font-size:.62rem;color:#C8647D;text-transform:uppercase;letter-spacing:.4px}
.public-doc-item strong{display:block;font-size:.78rem;line-height:1.35;color:#70273D}
.public-doc-item>a{width:28px;height:28px;border-radius:8px;background:#F8F4F5;color:var(--primary);display:grid;place-items:center;text-decoration:none;font-size:.75rem}
.hub-more-link{
  display:inline-flex;align-items:center;gap:7px;margin-top:17px;
  color:var(--primary);text-decoration:none;font-size:.8rem;font-weight:800
}
.hub-more-link:hover{color:#8E173B}
.empty-hub{padding:20px 0;color:#C9647D;font-size:.8rem}


/* Flat public portal sections v4.5 */
.flat-public-section{
  position:relative;
  border-top:1px solid #E9E0E2;
  border-bottom:1px solid #EDE6E8;
  overflow:hidden;
}
.docs-public-section,.links-public-section{background:#FFFFFF}
.multimedia-public-section{background:#F7F4F5}
.flat-public-section:before{
  content:"";
  position:absolute;top:-6px;left:50%;
  width:11px;height:11px;border:1px solid #D2ADB6;background:#FFFFFF;border-radius:50%;
  transform:translateX(-50%);
  box-shadow:0 0 0 3px rgba(255,255,255,.8)
}
.flat-section-title-row{
  display:grid;
  grid-template-columns:1fr auto 1fr;
  align-items:center;
  gap:20px;
  margin-bottom:24px
}
.flat-section-title-row>a{
  justify-self:end;
  font-size:.72rem;
  color:var(--primary);
  font-weight:800;
  text-decoration:none
}
.flat-section-title-row>a:hover{color:var(--primary)}
.flat-section-badge{
  justify-self:center;
  background:linear-gradient(135deg,var(--primary),var(--primary));
  color:#FFFFFF;
  border-radius:7px;
  padding:7px 13px;
  font-size:.78rem;
  line-height:1;
  font-weight:800;
  box-shadow:0 4px 10px rgba(110,18,46,.16)
}
.flat-slider-shell{position:relative;padding:0 34px}
.flat-scroll-track{
  display:flex;
  gap:14px;
  overflow-x:auto;
  scroll-snap-type:x mandatory;
  scrollbar-width:none;
  padding:2px 0 10px;
}
.flat-scroll-track::-webkit-scrollbar{display:none}
.flat-nav{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  width:29px;height:29px;
  border:0;border-radius:50%;
  background:#D9BEC4;
  color:#FFFFFF;
  display:grid;place-items:center;
  z-index:5;
  transition:.2s
}
.flat-nav:hover{background:var(--primary)}
.flat-nav-left{left:0}.flat-nav-right{right:0}
.flat-section-indicator{
  width:12px;height:4px;border-radius:5px;
  background:var(--primary);margin:10px auto 0
}
.flat-empty{padding:35px 15px;color:#C45973;font-size:.85rem}

/* Documents */
.document-preview-track{min-height:315px}
.document-preview-item{
  flex:0 0 245px;
  scroll-snap-align:start;
  border:1px solid #E3CFD4;
  border-radius:8px;
  background:#FFFFFF;
  overflow:hidden;
}
.document-paper{
  width:100%;
  height:220px;
  padding:15px 18px 10px;
  position:relative;
  background:#FFFFFF;
  color:#4E1B2A;
  text-align:center;
  border-bottom:1px solid #ECE6E7
}
.paper-emblem{font-size:1.1rem;color:var(--primary);margin-bottom:2px}
.document-paper>small{display:block;font-size:.38rem;letter-spacing:.4px}
.document-paper>strong{display:block;font-size:.43rem;margin:2px 0 8px}
.paper-lines{padding:0 8px}
.paper-lines i{
  display:block;height:2px;background:#DCC5CB;margin:5px 0;border-radius:3px
}
.paper-lines i:nth-child(2n){width:92%}.paper-lines i:nth-child(3n){width:82%}
.paper-type{
  position:absolute;bottom:8px;left:16px;right:16px;
  font-size:.46rem;color:var(--primary);font-weight:800;text-transform:uppercase
}
.document-preview-info{padding:10px 11px 11px}
.document-preview-info>small{display:block;font-size:.52rem;color:var(--primary);font-weight:800;text-transform:uppercase}
.document-preview-info h6{
  font-size:.72rem;line-height:1.35;color:#571F30;font-weight:800;
  margin:4px 0 8px;min-height:30px
}
.document-actions{display:flex;gap:6px}
.document-actions a{
  flex:1;border:1px solid #D2ADB6;border-radius:5px;
  padding:5px 6px;text-align:center;
  font-size:.58rem;font-weight:800;color:var(--primary);text-decoration:none
}
.document-actions a:hover{background:var(--primary);color:#FFFFFF}

/* Multimedia */
.multimedia-flat-track{min-height:245px}
.multimedia-flat-item{
  flex:0 0 300px;scroll-snap-align:start;
  background:#FFFFFF;border:1px solid #E3CFD4;border-radius:8px;overflow:hidden
}
.multimedia-flat-image{height:165px;position:relative;background:#F0EAEC;overflow:hidden}
.multimedia-flat-image img{width:100%;height:100%;object-fit:cover;transition:.3s}
.multimedia-flat-item:hover img{transform:scale(1.04)}
.multimedia-flat-placeholder{height:100%;display:grid;place-items:center;color:var(--primary);font-size:2rem}
.media-chip{
  position:absolute;top:8px;left:8px;
  background:var(--primary);color:#FFFFFF;border-radius:5px;
  padding:4px 7px;font-size:.52rem;font-weight:800
}
.multimedia-flat-info{padding:10px 12px}
.multimedia-flat-info h6{font-size:.76rem;color:var(--primary);font-weight:750;line-height:1.35;margin:0 0 5px}
.multimedia-flat-info p{
  color:#C45772;font-size:.58rem;line-height:1.45;margin:0;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis
}

/* Important links */
.important-links-track{
  justify-content:flex-start;
  min-height:120px;
  align-items:center;
  gap:65px;
  padding-left:40px;padding-right:40px
}
.important-link-item{
  flex:0 0 135px;
  scroll-snap-align:start;
  text-decoration:none;
  text-align:center;
  color:#571F30
}
.important-link-logo{
  width:64px;height:64px;
  margin:0 auto 9px;
  border-radius:50%;
  border:1px solid #E5DCDE;
  background:#FFFFFF;
  display:grid;place-items:center;
  font-size:2rem;color:var(--primary);
  transition:.2s
}
.important-link-item strong{font-size:.68rem;line-height:1.3}
.important-link-item:hover .important-link-logo{
  transform:translateY(-3px);
  box-shadow:0 8px 20px rgba(110,18,46,.12)
}

@media(min-width:1200px){
  .flat-public-section .container{max-width:1120px}
}
@media(max-width:767px){
  .flat-section-title-row{grid-template-columns:1fr auto;gap:10px}
  .flat-section-title-row>div:first-child{display:none}
  .flat-section-title-row>a{font-size:.62rem}
  .flat-section-badge{justify-self:start}
  .flat-slider-shell{padding:0 28px}
  .document-preview-item{flex-basis:210px}
  .multimedia-flat-item{flex-basis:255px}
  .important-links-track{gap:25px;padding-left:15px;padding-right:15px}
}


/* Medical Blue Gradient Theme v4.6 */
:root{
  --medical-blue:var(--primary);
  --medical-blue-deep:var(--theme-deep);
  --medical-blue-dark:#480C1E;
  --medical-cyan:var(--secondary);
  --medical-sky:#DE4C70;
  --medical-soft:var(--theme-soft);
  --medical-pale:#FAF7F8;
}

/* Main public template */
body{
  background:#FFFFFF;
  color:#652437;
}
.topbar{
  background:linear-gradient(90deg,#480C1E 0%,var(--theme-deep) 45%,var(--primary) 100%) !important;
  color:#F1E6E9 !important;
  border-bottom:1px solid rgba(255,255,255,.08);
}
.main-nav{
  background:linear-gradient(100deg,var(--theme-deep) 0%,var(--primary) 58%,var(--primary) 100%) !important;
  box-shadow:0 8px 24px rgba(72,12,30,.13);
}
.main-nav .nav-link{color:rgba(255,255,255,.88)!important}
.main-nav .nav-link:hover,.main-nav .nav-link:focus{color:#FFFFFF!important}
.brand-mark{
  background:linear-gradient(145deg,#FFFFFF,#F1E6E9)!important;
  color:var(--primary)!important;
}

/* Running text */
.announcement-ticker{
  background:linear-gradient(90deg,var(--theme-soft),#FDFAFB,var(--theme-soft))!important;
  border-color:#ECD1D8!important;
}
.ticker-label{
  background:linear-gradient(135deg,var(--theme-deep),var(--primary))!important;
  color:#FFFFFF!important;
}
.ticker-item{color:#772A41!important}

/* Section labels: BLUE, not green/teal */
.flat-section-badge{
  background:linear-gradient(135deg,var(--theme-deep) 0%,var(--primary) 70%,var(--primary) 100%)!important;
  color:#FFFFFF!important;
  box-shadow:0 5px 13px rgba(151,25,63,.20)!important;
}
.flat-section-title-row>a{
  color:var(--primary)!important;
}
.flat-section-title-row>a:hover{color:var(--theme-deep)!important}
.flat-section-indicator{
  background:linear-gradient(90deg,var(--primary),var(--secondary))!important;
}
.flat-nav{
  background:linear-gradient(145deg,#E5BFC9,#D98B9E)!important;
}
.flat-nav:hover{
  background:linear-gradient(145deg,var(--primary),var(--secondary))!important;
}
.flat-public-section:before{
  border-color:#DA93A5!important;
}
.docs-public-section,.links-public-section{
  background:linear-gradient(180deg,#FFFFFF 0%,#FEFCFD 100%)!important;
}
.multimedia-public-section{
  background:
    radial-gradient(circle at 12% 15%,rgba(171,28,71,.055),transparent 25%),
    linear-gradient(180deg,#FAF5F6 0%,#F7F0F2 100%)!important;
}

/* Document section */
.document-preview-item{
  border-color:#E8D1D7!important;
}
.paper-emblem,
.paper-type,
.document-preview-info>small{
  color:var(--primary)!important;
}
.document-actions a{
  border-color:#DAAFBA!important;
  color:var(--primary)!important;
}
.document-actions a:hover{
  background:linear-gradient(135deg,var(--theme-deep),var(--primary))!important;
  color:#FFFFFF!important;
}

/* Multimedia */
.media-chip{
  background:linear-gradient(135deg,var(--theme-deep),var(--primary))!important;
}
.multimedia-flat-item{
  border-color:#E8D1D7!important;
}
.multimedia-flat-placeholder{color:var(--primary)!important}

/* Links */
.important-link-logo{
  border-color:#E9D4D9!important;
  color:var(--primary)!important;
  background:linear-gradient(145deg,#FFFFFF,#FAF5F6)!important;
}
.important-link-item:hover .important-link-logo{
  box-shadow:0 8px 22px rgba(151,25,63,.14)!important;
}

/* Homepage sections */
.home-profile-section{
  background:
    radial-gradient(circle at 90% 20%,rgba(171,28,71,.04),transparent 22%),
    linear-gradient(180deg,#FFFFFF,#FCFAFA)!important;
}
.profile-visual-card{
  background:
    radial-gradient(circle at 72% 20%,rgba(231,110,140,.28),transparent 24%),
    linear-gradient(145deg,#480C1E 0%,var(--theme-deep) 32%,var(--primary) 70%,var(--secondary) 100%)!important;
}
.stats-panel{
  border-color:#EBDDE1!important;
}
.stat-box i{color:var(--secondary)!important}
.stat-box strong{color:var(--primary)!important}

/* CTA Hubungi Kami */
.contact-cta-card{
  background:
    radial-gradient(circle at 92% 20%,rgba(232,112,142,.20),transparent 24%),
    linear-gradient(120deg,#480C1E 0%,var(--theme-deep) 30%,var(--primary) 72%,var(--primary) 100%)!important;
  box-shadow:0 22px 50px rgba(90,15,37,.18)!important;
}

/* Public page header */
.page-header{
  background:
    radial-gradient(circle at 85% 30%,rgba(229,98,131,.18),transparent 25%),
    linear-gradient(115deg,#480C1E 0%,var(--theme-deep) 42%,var(--primary) 100%)!important;
}

/* Buttons and small labels */
.btn-primary{
  background:linear-gradient(135deg,var(--theme-deep),var(--primary))!important;
  border-color:var(--primary)!important;
}
.btn-primary:hover{
  background:linear-gradient(135deg,#480C1E,var(--primary))!important;
}
.section-kicker,.eyebrow{
  color:var(--primary)!important;
}

/* Footer: deeper medical gradient */
.footer{
  background:
    radial-gradient(circle at 90% 10%,rgba(171,28,71,.16),transparent 25%),
    linear-gradient(135deg,#400A1A 0%,var(--theme-deep) 50%,var(--theme-deep) 100%)!important;
}
.footer-bottom{
  background:linear-gradient(90deg,#320815,#450B1C)!important;
}


/* Slider-all + larger labels + taller header v4.7 */

/* Header before running text: slightly taller */
.topbar .container{
  min-height:38px;
  align-items:center;
}
.main-nav .container{
  min-height:82px;
}
.main-nav .navbar-brand{
  padding-top:10px;
  padding-bottom:10px;
}
.brand-logo{
  max-height:58px!important;
}
.main-nav .navbar-brand strong{
  font-size:1.02rem;
  letter-spacing:.3px;
}
.main-nav .navbar-brand small{font-size:.69rem}
.main-nav .nav-link{
  padding-top:1.15rem!important;
  padding-bottom:1.15rem!important;
}

/* Larger section labels */
.section-heading>span,
.section-kicker{
  display:inline-block;
  background:linear-gradient(135deg,var(--theme-deep),var(--primary));
  color:#FFFFFF!important;
  padding:7px 13px;
  border-radius:7px;
  font-size:.78rem!important;
  font-weight:800;
  letter-spacing:1px;
  box-shadow:0 4px 12px rgba(151,25,63,.15);
  margin-bottom:10px;
}
.flat-section-badge{
  padding:9px 16px!important;
  font-size:.9rem!important;
  border-radius:8px!important;
}
.announcement-box>h4{
  display:inline-flex;
  align-items:center;
  gap:7px;
  background:linear-gradient(135deg,var(--theme-deep),var(--primary));
  color:#FFFFFF!important;
  padding:9px 14px;
  border-radius:8px;
  font-size:.9rem!important;
  box-shadow:0 4px 12px rgba(151,25,63,.14);
}

/* Generic horizontal slider */
.home-slider-shell{
  position:relative;
  padding:0 38px;
}
.home-scroll-track{
  display:flex;
  overflow-x:auto;
  gap:18px;
  scroll-snap-type:x mandatory;
  scrollbar-width:none;
  scroll-behavior:smooth;
}
.home-scroll-track::-webkit-scrollbar{display:none}
.home-slider-nav{
  position:absolute;
  z-index:8;
  top:50%;
  transform:translateY(-50%);
  width:31px;height:31px;
  border:0;border-radius:50%;
  display:grid;place-items:center;
  color:#FFFFFF;
  background:linear-gradient(145deg,#DAA7B4,#D5718A);
  box-shadow:0 4px 12px rgba(151,25,63,.10);
}
.home-slider-nav:hover{background:linear-gradient(145deg,var(--theme-deep),var(--primary))}
.home-slider-nav.left{left:0}
.home-slider-nav.right{right:0}

.quick-track{gap:14px}
.quick-slide-item{flex:0 0 calc(25% - 11px);scroll-snap-align:start}
.news-slide-item{flex:0 0 calc(33.333% - 12px);scroll-snap-align:start}
.news-slide-item .news-card{width:100%}
.program-slider-track{gap:12px}
.program-slide-item{flex:0 0 100%;scroll-snap-align:start}
.program-slide-item .program-row{height:100%}
.announcement-slider-track{gap:10px}
.announcement-slide-item{flex:0 0 100%;scroll-snap-align:start}
.announcement-slider-shell{padding:0 34px}
.profile-slider-track{gap:30px;align-items:center}
.profile-slide-item{flex:0 0 calc(50% - 15px);scroll-snap-align:start}
.stats-panel{
  display:flex!important;
  overflow-x:auto!important;
  gap:0!important;
  scroll-snap-type:x mandatory;
}
.stats-panel .stat-box{
  flex:0 0 25%;
  scroll-snap-align:start;
}

/* Existing flat sliders: larger navigation and labels */
.flat-nav{
  width:32px!important;
  height:32px!important;
}
.flat-section-title-row{margin-bottom:28px!important}

@media(max-width:991px){
  .main-nav .container{min-height:72px}
  .quick-slide-item{flex-basis:calc(50% - 8px)}
  .news-slide-item{flex-basis:calc(50% - 9px)}
  .profile-slide-item{flex-basis:82%}
  .stats-panel .stat-box{flex-basis:50%}
}
@media(max-width:575px){
  .topbar .container{min-height:34px}
  .main-nav .container{min-height:66px}
  .home-slider-shell{padding:0 30px}
  .quick-slide-item{flex-basis:88%}
  .news-slide-item{flex-basis:88%}
  .profile-slide-item{flex-basis:92%}
  .stats-panel .stat-box{flex-basis:88%}
  .flat-section-badge{font-size:.8rem!important;padding:8px 12px!important}
}


/* Dynamic theme + mobile optimization v4.8 */

/* Dynamic frontend theme */
.topbar{
  background:linear-gradient(90deg,var(--theme-deeper),var(--theme-deep),var(--primary))!important;
}
.main-nav{
  background:linear-gradient(100deg,var(--theme-deep) 0%,var(--primary) 62%,var(--secondary) 100%)!important;
}
.brand-mark{color:var(--primary)!important}
.announcement-ticker{
  background:linear-gradient(90deg,var(--theme-soft),#FFFFFF,var(--theme-soft-2))!important;
  border-color:var(--theme-border)!important;
}
.ticker-label,
.section-heading>span,
.section-kicker,
.announcement-box>h4,
.flat-section-badge,
.media-chip{
  background:linear-gradient(135deg,var(--theme-deep),var(--primary),var(--secondary))!important;
}
.flat-section-title-row>a,
.paper-emblem,
.paper-type,
.document-preview-info>small,
.document-actions a,
.multimedia-flat-placeholder,
.important-link-logo,
.stat-box strong{
  color:var(--primary)!important;
}
.flat-section-indicator{
  background:linear-gradient(90deg,var(--primary),var(--secondary))!important;
}
.flat-nav,
.home-slider-nav{
  background:linear-gradient(145deg,var(--theme-border),color-mix(in srgb,var(--secondary) 55%,#FFFFFF 45%))!important;
}
.flat-nav:hover,
.home-slider-nav:hover,
.document-actions a:hover,
.btn-primary{
  background:linear-gradient(135deg,var(--theme-deep),var(--primary),var(--secondary))!important;
}
.btn-primary{border-color:var(--primary)!important}
.important-link-logo{
  border-color:var(--theme-border)!important;
  background:linear-gradient(145deg,#FFFFFF,var(--theme-soft))!important;
}
.profile-visual-card,
.contact-cta-card,
.page-header{
  background:
    radial-gradient(circle at 88% 18%,color-mix(in srgb,var(--secondary) 22%,transparent),transparent 25%),
    linear-gradient(125deg,var(--theme-deeper),var(--theme-deep) 38%,var(--primary) 72%,var(--secondary) 100%)!important;
}
.footer{
  background:
    radial-gradient(circle at 90% 10%,color-mix(in srgb,var(--secondary) 16%,transparent),transparent 25%),
    linear-gradient(135deg,var(--theme-deeper),var(--theme-deep) 52%,var(--primary))!important;
}
.footer-bottom{background:var(--theme-deeper)!important}
.section-kicker,.eyebrow{color:#FFFFFF!important}

/* Mobile-first polish */
html,body{max-width:100%;overflow-x:hidden}
img{max-width:100%}

@media(max-width:991.98px){
  .topbar .container{
    min-height:34px!important;
    gap:10px;
    font-size:.72rem;
  }
  .topbar .container span:last-child{
    max-width:55%;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    text-align:right;
  }

  .main-nav{
    position:sticky;
    top:0;
  }
  .main-nav .container{min-height:72px!important}
  .navbar-toggler{
    border:1px solid rgba(255,255,255,.32)!important;
    padding:.35rem .5rem!important;
    box-shadow:none!important;
  }
  .navbar-collapse{
    margin:10px -12px -8px;
    padding:10px 14px 16px;
    background:linear-gradient(180deg,color-mix(in srgb,var(--theme-deep) 96%,transparent),var(--theme-deep));
    border-radius:0 0 14px 14px;
  }
  .main-nav .nav-link{
    padding:.72rem .35rem!important;
    border-bottom:1px solid rgba(255,255,255,.08);
  }
  .main-nav .dropdown-menu{
    border:0;
    border-radius:10px;
    margin:4px 0 8px;
  }

  .hero-slide{min-height:480px!important}
  .hero-slide-content{min-height:480px!important}
  .hero-slide h1{
    font-size:clamp(2rem,6vw,3.2rem)!important;
    max-width:760px;
  }
  .hero-slide .lead{font-size:1rem!important;max-width:680px}
  .medical-pattern{opacity:.12!important}

  .announcement-ticker{height:auto!important}
  .ticker-inner{min-height:42px}
  .ticker-label{
    align-self:stretch;
    display:flex;
    align-items:center;
    padding:0 11px!important;
  }
  .ticker-label span{font-size:.67rem}
  .ticker-item{font-size:.76rem}

  .section-space,
  .section-soft .container,
  .home-profile-section,
  .flat-public-section,
  .home-contact-cta{
    padding-top:42px!important;
    padding-bottom:42px!important;
  }

  .section-heading h2{font-size:1.65rem}
  .home-section-title{font-size:2.05rem!important}
  .home-section-desc{font-size:.92rem}

  .news-card img,.news-card .image-placeholder{height:210px!important}
  .news-card .p-4{padding:1rem!important}
  .news-card h5{font-size:1rem}
  .news-card p{
    display:-webkit-box;
    -webkit-line-clamp:3;
    -webkit-box-orient:vertical;
    overflow:hidden;
  }

  .document-preview-item{flex-basis:220px!important}
  .multimedia-flat-item{flex-basis:275px!important}
  .important-link-item{flex-basis:120px!important}

  .contact-cta-card{
    padding:28px!important;
    border-radius:18px!important;
  }
  .contact-cta-card h3{font-size:1.45rem!important}

  .footer .container{padding-top:38px!important;padding-bottom:28px!important}
}

@media(max-width:575.98px){
  .topbar .container{
    min-height:30px!important;
    font-size:.63rem;
  }
  .topbar .container span:first-child{
    max-width:48%;
    overflow:hidden;
    white-space:nowrap;
    text-overflow:ellipsis;
  }

  .main-nav .container{min-height:66px!important}
  .brand-logo{max-height:46px!important}
  .brand-mark{width:42px!important;height:42px!important}
  .navbar-brand strong{font-size:.78rem!important}
  .navbar-brand small{font-size:.58rem!important}

  .hero-slide,.hero-slide-content{min-height:410px!important}
  .hero-slide{background-position:center!important}
  .hero-slide-content{padding-top:48px!important;padding-bottom:55px!important}
  .hero-kicker{
    font-size:.58rem!important;
    letter-spacing:.9px!important;
  }
  .hero-slide h1{
    font-size:2rem!important;
    line-height:1.12!important;
    margin-top:10px!important;
  }
  .hero-slide .lead{
    font-size:.88rem!important;
    line-height:1.55!important;
    margin-bottom:20px!important;
  }
  .hero-slide .btn{
    font-size:.8rem!important;
    padding:.65rem .9rem!important;
  }
  .carousel-control-prev,.carousel-control-next{
    width:10%!important;
  }

  .ticker-inner{padding-left:0!important}
  .ticker-label{
    min-width:auto!important;
    padding:0 9px!important;
  }
  .ticker-label span{display:none}
  .ticker-label i{font-size:.9rem}
  .ticker-track{animation-duration:28s!important}

  .quick-services{margin-top:-18px!important}
  .quick-card{min-height:116px!important;padding:16px!important}

  .section-heading>span,
  .section-kicker{
    font-size:.68rem!important;
    padding:7px 10px!important;
  }
  .flat-section-badge{
    font-size:.76rem!important;
    padding:8px 11px!important;
  }
  .section-heading h2{font-size:1.45rem!important}
  .home-section-title{font-size:1.72rem!important}

  .home-slider-shell{padding:0 27px!important}
  .home-slider-nav,.flat-nav{
    width:28px!important;height:28px!important;
    font-size:.72rem;
  }

  .quick-slide-item{flex-basis:90%!important}
  .news-slide-item{flex-basis:91%!important}
  .program-slide-item{flex-basis:94%!important}
  .announcement-slide-item{flex-basis:94%!important}
  .profile-slide-item{flex-basis:93%!important}
  .stats-panel .stat-box{flex-basis:88%!important}

  .profile-visual-card{min-height:300px!important;padding:24px!important}
  .profile-visual-main>i{font-size:3.6rem!important;margin-bottom:38px!important}
  .profile-visual-main strong{font-size:1.45rem!important}
  .profile-mini-card{left:22px!important;bottom:20px!important}

  .flat-section-title-row{
    grid-template-columns:1fr auto!important;
    gap:8px!important;
  }
  .flat-section-title-row>div:first-child{display:none!important}
  .flat-section-title-row>a{
    justify-self:end!important;
    font-size:.58rem!important;
    white-space:nowrap;
  }
  .flat-slider-shell{padding:0 25px!important}

  .document-preview-item{flex-basis:205px!important}
  .document-paper{height:190px!important}
  .multimedia-flat-item{flex-basis:245px!important}
  .multimedia-flat-image{height:145px!important}
  .important-links-track{
    gap:20px!important;
    padding-left:8px!important;
    padding-right:8px!important;
  }
  .important-link-item{flex-basis:105px!important}
  .important-link-logo{
    width:55px!important;height:55px!important;
    font-size:1.55rem!important;
  }

  .contact-cta-card{
    padding:24px 20px!important;
    gap:20px!important;
  }
  .contact-cta-card h3{font-size:1.3rem!important}
  .contact-cta-card p{font-size:.82rem!important}
  .contact-cta-card .btn{font-size:.8rem}

  .footer{font-size:.82rem}
  .footer .row{--bs-gutter-y:2rem}
  .footer h5{font-size:1rem}
  .footer-title{margin-top:4px}
  .footer-bottom .container{
    text-align:center;
    font-size:.67rem;
  }
}


/* News social share v4.9 */
.share-news-bar{
  margin:18px 0 24px;
  padding:13px 14px;
  border-top:1px solid var(--theme-border);
  border-bottom:1px solid var(--theme-border);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
}
.share-label{
  display:flex;
  align-items:center;
  gap:7px;
  color:#AA3C57;
  font-size:.76rem;
  font-weight:800;
}
.share-label i{color:var(--primary)}
.share-buttons{
  display:flex;
  align-items:center;
  gap:7px;
  flex-wrap:wrap;
}
.share-btn{
  width:35px;
  height:35px;
  border-radius:50%;
  border:1px solid var(--theme-border);
  background:#FFFFFF;
  color:var(--primary);
  display:grid;
  place-items:center;
  text-decoration:none;
  font-size:.9rem;
  transition:.18s ease;
  cursor:pointer;
}
.share-btn:hover{
  transform:translateY(-2px);
  color:#FFFFFF;
  border-color:transparent;
}
.share-btn.whatsapp:hover{background:#D32550}
.share-btn.facebook:hover{background:#DD2D59}
.share-btn.twitter:hover{background:#111111}
.share-btn.telegram:hover{background:#D82350}
.share-btn.copy-link:hover,
.share-btn.copy-link.copied{
  background:linear-gradient(135deg,var(--theme-deep),var(--primary));
  color:#FFFFFF;
}

@media(max-width:575.98px){
  .share-news-bar{
    align-items:flex-start;
    flex-direction:column;
    padding-left:0;
    padding-right:0;
  }
  .share-btn{
    width:34px;
    height:34px;
  }
}


/* Green Theme + announcement/sidebar fixes v5.0 */
:root{
  --green-primary:#7B1634;
  --green-secondary:#BD4261;
  --green-deep:#540E23;
  --green-deeper:#3A0A18;
  --green-soft:#F6EFF1;
  --green-pale:#FBF8F9;
}

/* Base green identity */
body{color:#551E2E}
.section-soft{background:#F8F4F5!important}
.quick-card i,
.news-card a,
.program-icon,
.latest-news-item:hover strong{
  color:var(--primary)!important;
}
.program-icon{color:#FFFFFF!important}
.image-placeholder,
.latest-news-placeholder,
.sidebar-quick>a>i:first-child{
  background:var(--theme-soft)!important;
  color:var(--primary)!important;
}
.footer a{color:#E7DCDF!important}
.breadcrumb-lite{color:#ECE2E4!important}

/* Homepage announcement readability */
.announcement-box{
  background:linear-gradient(145deg,var(--theme-deep),var(--primary),var(--secondary))!important;
  color:#FFFFFF!important;
}
.announcement-box h4,
.announcement-box .announcement-item,
.announcement-box .announcement-item small,
.announcement-box .announcement-item b,
.announcement-box .announcement-item strong{
  color:#FFFFFF!important;
}
.announcement-box .announcement-item small{opacity:.84}
.announcement-box .announcement-item{
  border-bottom-color:rgba(255,255,255,.24)!important;
}

/* Right sidebar announcements */
.sidebar-announcement-widget{
  border-color:var(--theme-border)!important;
  overflow:hidden;
}
.sidebar-announcement-widget .sidebar-widget-title span{
  display:inline-block;
  padding:6px 10px;
  border-radius:7px;
  background:linear-gradient(135deg,var(--theme-deep),var(--primary));
  color:#FFFFFF!important;
  letter-spacing:1px;
}
.sidebar-announcement-widget .sidebar-widget-title h5{
  color:#531D2D!important;
  margin-top:9px;
}
.sidebar-announcement-list{
  display:flex;
  flex-direction:column;
}
.sidebar-announcement-item{
  padding:13px 0;
  border-bottom:1px solid #EDE7E9;
}
.sidebar-announcement-item:last-child{
  border-bottom:0;
  padding-bottom:0;
}
.sidebar-announcement-date{
  color:var(--primary)!important;
  font-size:.69rem;
  font-weight:800;
  display:flex;
  align-items:center;
  gap:6px;
  margin-bottom:5px;
}
.sidebar-announcement-item strong{
  display:block;
  color:#4E1C2B!important;
  font-size:.84rem;
  line-height:1.42;
}
.sidebar-announcement-item p{
  color:#6F8378!important;
  font-size:.75rem;
  line-height:1.5;
  margin:5px 0 0;
}

/* News share is deliberately after article content */
.public-content .share-news-bar{
  margin-top:32px!important;
  margin-bottom:0!important;
  background:linear-gradient(180deg,#FFFFFF,var(--theme-soft));
  border:1px solid var(--theme-border)!important;
  border-radius:12px;
  padding:13px 14px!important;
}

/* Green detail/card accents */
.sidebar-widget-title span{color:var(--primary)!important}
.sidebar-widget-title h5{color:#531D2D!important}
.latest-news-item{color:#551E2E!important}
.sidebar-quick>a{color:#551E2E!important}
.medical-info-card{
  background:linear-gradient(145deg,var(--theme-deeper),var(--theme-deep),var(--primary),var(--secondary))!important;
}
.medical-info-card>i{color:#E8BFC9!important}
.medical-info-card p{color:#F0E6E9!important}

@media(max-width:575.98px){
  .sidebar-announcement-item strong{font-size:.81rem}
  .sidebar-announcement-item p{font-size:.73rem}
}


/* COMPLETE DYNAMIC THEME OVERRIDE v5.1 */
/* This block intentionally sits last so the selected theme wins over all legacy colors. */

a{accent-color:var(--primary)}

.topbar,
.main-nav,
.footer,
.footer-bottom,
.page-header,
.profile-visual-card,
.contact-cta-card,
.medical-info-card{
  border-color:color-mix(in srgb,var(--primary) 18%,transparent)!important;
}

.topbar{
  background:linear-gradient(90deg,var(--theme-deeper),var(--theme-deep),var(--primary))!important;
}
.main-nav{
  background:linear-gradient(105deg,var(--theme-deeper) 0%,var(--theme-deep) 35%,var(--primary) 72%,var(--secondary) 100%)!important;
}
.hero-slide-medical{
  background:
    radial-gradient(circle at 84% 28%,color-mix(in srgb,var(--secondary) 23%,transparent),transparent 28%),
    linear-gradient(125deg,var(--theme-deeper) 0%,var(--theme-deep) 42%,var(--primary) 78%,var(--secondary) 100%)!important;
}
.hero-kicker,
.section-heading>span,
.section-kicker,
.flat-section-badge,
.ticker-label,
.announcement-box>h4,
.media-chip{
  background:linear-gradient(135deg,var(--theme-deep),var(--primary),var(--secondary))!important;
  color:#FFFFFF!important;
  border-color:transparent!important;
}
.quick-card i,
.news-card a,
.news-card small,
.program-icon,
.section-heading h2,
.home-section-title,
.flat-section-title-row>a,
.document-preview-info>small,
.paper-emblem,
.paper-type,
.important-link-logo,
.sidebar-widget-title span,
.sidebar-announcement-date,
.share-label i{
  color:var(--primary)!important;
}
.quick-card:hover,
.news-card:hover,
.program-row:hover,
.document-preview-item:hover,
.multimedia-flat-item:hover,
.important-link-item:hover .important-link-logo{
  border-color:var(--theme-border)!important;
  box-shadow:0 12px 28px color-mix(in srgb,var(--primary) 13%,transparent)!important;
}
.program-icon,
.btn-primary,
.btn-medical,
.document-actions a:hover,
.flat-nav:hover,
.home-slider-nav:hover,
.share-btn.copy-link:hover,
.share-btn.copy-link.copied{
  background:linear-gradient(135deg,var(--theme-deep),var(--primary),var(--secondary))!important;
  border-color:var(--primary)!important;
  color:#FFFFFF!important;
}
.flat-nav,
.home-slider-nav{
  background:linear-gradient(145deg,var(--theme-border),color-mix(in srgb,var(--secondary) 52%,#FFFFFF 48%))!important;
  color:#FFFFFF!important;
}
.flat-section-indicator,
.carousel-indicators .active{
  background:linear-gradient(90deg,var(--primary),var(--secondary))!important;
}
.announcement-ticker{
  background:linear-gradient(90deg,var(--theme-soft),#FFFFFF,var(--theme-soft-2))!important;
  border-color:var(--theme-border)!important;
}
.docs-public-section,
.links-public-section,
.home-profile-section{
  background:linear-gradient(180deg,#FFFFFF,var(--theme-soft))!important;
}
.multimedia-public-section,
.section-soft{
  background:
    radial-gradient(circle at 14% 20%,color-mix(in srgb,var(--secondary) 7%,transparent),transparent 26%),
    linear-gradient(180deg,var(--theme-soft),var(--theme-soft-2))!important;
}
.document-preview-item,
.multimedia-flat-item,
.important-link-logo,
.sidebar-widget,
.news-card,
.program-row,
.stats-panel{
  border-color:var(--theme-border)!important;
}
.document-actions a{
  color:var(--primary)!important;
  border-color:var(--theme-border)!important;
}
.important-link-logo,
.image-placeholder,
.latest-news-placeholder,
.sidebar-quick>a>i:first-child{
  background:linear-gradient(145deg,#FFFFFF,var(--theme-soft))!important;
  color:var(--primary)!important;
}
.stat-box i,
.stat-box strong{
  color:var(--primary)!important;
}
.sidebar-announcement-widget .sidebar-widget-title span{
  background:linear-gradient(135deg,var(--theme-deep),var(--primary),var(--secondary))!important;
  color:#FFFFFF!important;
}
.sidebar-announcement-widget .sidebar-widget-title h5,
.sidebar-announcement-item strong,
.sidebar-quick>a,
.latest-news-item{
  color:color-mix(in srgb,var(--primary) 55%,#3B1520 45%)!important;
}
.page-header{
  background:
    radial-gradient(circle at 86% 24%,color-mix(in srgb,var(--secondary) 20%,transparent),transparent 27%),
    linear-gradient(115deg,var(--theme-deeper),var(--theme-deep) 42%,var(--primary) 78%,var(--secondary))!important;
}
.profile-visual-card,
.contact-cta-card,
.medical-info-card{
  background:
    radial-gradient(circle at 88% 18%,color-mix(in srgb,var(--secondary) 21%,transparent),transparent 25%),
    linear-gradient(125deg,var(--theme-deeper),var(--theme-deep) 38%,var(--primary) 75%,var(--secondary))!important;
}
.footer{
  background:
    radial-gradient(circle at 90% 10%,color-mix(in srgb,var(--secondary) 17%,transparent),transparent 25%),
    linear-gradient(135deg,var(--theme-deeper),var(--theme-deep) 55%,var(--primary))!important;
}
.footer-bottom{
  background:var(--theme-deeper)!important;
}
.footer a:hover{
  color:color-mix(in srgb,var(--secondary) 70%,#FFFFFF 30%)!important;
}
.form-control:focus,
.form-select:focus{
  border-color:var(--primary)!important;
  box-shadow:0 0 0 .2rem color-mix(in srgb,var(--primary) 16%,transparent)!important;
}


/* Header-card spacing + multimedia video v5.2 */
/* Cards after hero no longer overlap/cut into the banner. */
.quick-services{
  margin-top:0!important;
  padding-top:28px!important;
  padding-bottom:22px!important;
  position:relative;
  z-index:3;
  overflow:visible!important;
}
.hero-slider-wrap{
  overflow:visible!important;
}
.quick-services .home-slider-shell{
  padding-top:8px;
  padding-bottom:12px;
}
.quick-card{
  margin-top:0!important;
  box-shadow:0 10px 28px color-mix(in srgb,var(--primary) 10%,rgba(0,0,0,.08))!important;
}

/* Embedded videos inside gallery slider */
.multimedia-flat-image iframe,
.multimedia-flat-image video{
  width:100%;
  height:100%;
  min-height:170px;
  display:block;
  border:0;
  object-fit:cover;
  background:#111111;
}
.multimedia-flat-image{
  overflow:hidden;
}
@media(max-width:575.98px){
  .quick-services{
    margin-top:0!important;
    padding-top:18px!important;
  }
  .multimedia-flat-image iframe,
  .multimedia-flat-image video{
    min-height:145px;
  }
}


/* v5.3 visual cleanup */

/* Hero/banner eyebrow: no colored box behind text */
.hero-kicker{
  display:inline-block!important;
  background:transparent!important;
  color:#FFFFFF!important;
  padding:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  border:0!important;
  font-size:.78rem!important;
  font-weight:800!important;
  letter-spacing:2px!important;
  text-shadow:0 1px 2px rgba(0,0,0,.18);
}

/* Quick service cards: give true breathing room so first/last cards are never clipped */
.quick-services{
  overflow:visible!important;
}
.quick-services .container{
  overflow:visible!important;
}
.quick-services .home-slider-shell{
  padding:10px 34px 14px!important;
  overflow:visible!important;
}
.quick-services .home-scroll-track{
  overflow-x:auto!important;
  overflow-y:visible!important;
  padding:4px 10px 18px!important;
  margin:0!important;
  scroll-padding-inline:10px;
}
.quick-services .quick-slide-item{
  padding:0!important;
  box-sizing:border-box;
}
.quick-services .quick-card{
  width:100%!important;
  min-height:145px!important;
  overflow:visible!important;
  border:1px solid var(--theme-border)!important;
  border-left:5px solid var(--primary)!important;
  border-radius:18px!important;
  box-shadow:0 9px 24px color-mix(in srgb,var(--primary) 10%,rgba(0,0,0,.06))!important;
}
.quick-services .home-slider-nav.left{left:0!important}
.quick-services .home-slider-nav.right{right:0!important}

/* Remove all remaining legacy-blue visual accents in frontend */
.hero-kicker,
.navbar-brand small,
.hero-icon,
.page-header span{
  color:#FFFFFF!important;
}
.quick-card i,
.news-card a,
.news-card small,
.program-row i,
.section-heading h2,
.home-section-title,
.flat-section-title-row>a,
.document-preview-info>small,
.paper-emblem,
.paper-type,
.important-link-logo,
.sidebar-widget-title span,
.sidebar-announcement-date,
.share-label i,
.latest-news-item i,
.sidebar-quick>a>i:first-child,
.contact-info-icon,
.contact-row i,
.profile-feature i,
.stat-box i,
.stat-box strong{
  color:var(--primary)!important;
}

/* Common blue Bootstrap utility remnants */
.text-primary{
  color:var(--primary)!important;
}
.bg-primary,
.badge.bg-primary,
.text-bg-primary{
  background-color:var(--primary)!important;
  color:#FFFFFF!important;
}
.border-primary{
  border-color:var(--primary)!important;
}
.btn-outline-primary{
  color:var(--primary)!important;
  border-color:var(--primary)!important;
}
.btn-outline-primary:hover{
  color:#FFFFFF!important;
  background:linear-gradient(135deg,var(--theme-deep),var(--primary))!important;
  border-color:var(--primary)!important;
}

/* Force section labels to selected theme, but NOT hero kicker */
.section-heading>span,
.section-kicker,
.flat-section-badge,
.ticker-label,
.announcement-box>h4,
.media-chip{
  background:linear-gradient(135deg,var(--theme-deep),var(--primary),var(--secondary))!important;
  color:#FFFFFF!important;
}

/* Mobile spacing for the quick slider */
@media(max-width:991.98px){
  .quick-services .home-slider-shell{
    padding-left:30px!important;
    padding-right:30px!important;
  }
  .quick-services .home-scroll-track{
    padding-left:8px!important;
    padding-right:8px!important;
  }
}
@media(max-width:575.98px){
  .quick-services .home-slider-shell{
    padding-left:27px!important;
    padding-right:27px!important;
  }
  .quick-services .home-scroll-track{
    padding-left:8px!important;
    padding-right:8px!important;
  }
  .quick-services .quick-card{
    min-height:128px!important;
  }
  .hero-kicker{
    font-size:.63rem!important;
    letter-spacing:1.35px!important;
    line-height:1.45!important;
  }
}


/* Dynamic quick cards v5.4 */
.quick-card-link{
  text-decoration:none!important;
  color:inherit!important;
  position:relative;
  cursor:pointer;
  transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;
}
.quick-card-link:hover{
  transform:translateY(-4px);
}
.quick-card-link b{
  color:color-mix(in srgb,var(--primary) 64%,#431825 36%)!important;
}
.quick-card-link span{
  color:#7B8A82!important;
}
.quick-card-more{
  margin-top:auto;
  padding-top:14px;
  display:flex;
  align-items:center;
  gap:6px;
  color:var(--primary)!important;
  font-size:.7rem;
  font-weight:800;
}
.quick-card-more i{
  margin:0!important;
  font-size:.72rem!important;
}
.quick-detail-icon{
  width:62px;height:62px;
  display:grid;place-items:center;
  border-radius:16px;
  margin-bottom:22px;
  background:linear-gradient(135deg,var(--theme-soft),var(--theme-soft-2));
  color:var(--primary);
  font-size:1.8rem;
}


/* Category cards + transparent larger logo v5.5 */
.brand-logo{
  width:auto!important;
  height:auto!important;
  max-width:78px!important;
  max-height:70px!important;
  object-fit:contain!important;
  background:transparent!important;
  border-radius:0!important;
  padding:0!important;
  box-shadow:none!important;
}
.main-nav .navbar-brand{
  gap:13px!important;
}
.news-category-link{
  display:inline-flex;
  align-items:center;
  gap:5px;
  margin-bottom:7px;
  padding:4px 8px;
  border-radius:6px;
  background:var(--theme-soft);
  color:var(--primary)!important;
  font-size:.66rem;
  font-weight:800!important;
  text-decoration:none!important;
}
@media(max-width:575.98px){
  .brand-logo{
    max-width:62px!important;
    max-height:56px!important;
  }
}


/* Dynamic navigation + aligned news cards v5.6 */

/* Footer logo must not create a white disc/card behind uploaded transparent logo. */
.footer-logo{
  width:auto!important;
  height:auto!important;
  max-width:82px!important;
  max-height:78px!important;
  object-fit:contain!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  padding:0!important;
  box-shadow:none!important;
}
.footer-brand{
  align-items:center!important;
}
.footer-logo-placeholder{
  background:transparent!important;
  color:#FFFFFF!important;
  border:1px solid rgba(255,255,255,.18);
}

/* Homepage news slider: every item has identical visual height. */
.news-slider-track{
  align-items:stretch!important;
}
.news-slide-item{
  display:flex!important;
  align-self:stretch!important;
}
.news-slide-item .news-card{
  display:flex!important;
  flex-direction:column!important;
  width:100%!important;
  height:100%!important;
  min-height:570px!important;
}
.news-slide-item .news-card img,
.news-slide-item .news-card .image-placeholder{
  height:230px!important;
  flex:0 0 230px!important;
}
.news-slide-item .news-card .p-4{
  display:flex!important;
  flex-direction:column!important;
  flex:1 1 auto!important;
  padding:22px!important;
}
.news-slide-item .news-card h5{
  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
  min-height:4.35em;
  line-height:1.45;
}
.news-slide-item .news-card p{
  display:-webkit-box!important;
  -webkit-line-clamp:5!important;
  -webkit-box-orient:vertical!important;
  overflow:hidden!important;
  min-height:7.2em;
  line-height:1.45;
  margin-bottom:16px;
}
.news-slide-item .news-card .p-4 > a{
  margin-top:auto!important;
}

@media(max-width:991.98px){
  .news-slide-item .news-card{
    min-height:535px!important;
  }
}
@media(max-width:575.98px){
  .footer-logo{
    max-width:68px!important;
    max-height:64px!important;
  }
  .news-slide-item .news-card{
    min-height:510px!important;
  }
  .news-slide-item .news-card img,
  .news-slide-item .news-card .image-placeholder{
    height:205px!important;
    flex-basis:205px!important;
  }
}


/* Alumni public + nav cleanup v5.8 */
.main-nav .navbar-nav{gap:2px!important;flex-wrap:nowrap}
.main-nav .nav-link{white-space:nowrap!important;margin-left:0!important;padding-left:.65rem!important;padding-right:.65rem!important}
.main-nav .dropdown-menu{min-width:220px;border:0;border-radius:12px;box-shadow:0 12px 34px rgba(0,0,0,.14);padding:8px}
.main-nav .dropdown-item{border-radius:8px;padding:.58rem .72rem;font-size:.84rem}
.main-nav .dropdown-item:hover{background:var(--theme-soft);color:var(--primary)}
.alumni-form-section{padding:60px 0;background:linear-gradient(180deg,var(--theme-soft),#FFFFFF)}
.alumni-form-card{background:#FFFFFF;border:1px solid var(--theme-border);border-radius:22px;padding:34px;box-shadow:0 16px 48px color-mix(in srgb,var(--primary) 8%,transparent)}
.alumni-form-intro{display:flex;gap:15px;align-items:center;padding-bottom:22px;margin-bottom:24px;border-bottom:1px solid var(--theme-border)}
.alumni-form-intro>i{width:56px;height:56px;border-radius:14px;display:grid;place-items:center;background:var(--theme-soft);color:var(--primary);font-size:1.5rem}
.alumni-form-intro h3{margin:0 0 4px;font-weight:800}.alumni-form-intro p{margin:0;color:#748278}
.form-section-label{font-size:.72rem;font-weight:800;letter-spacing:1.2px;color:var(--primary);padding-bottom:8px;border-bottom:1px solid var(--theme-border)}
.consent-box{background:var(--theme-soft);border-radius:12px;padding:14px 14px 14px 40px}
.alumni-success-card{max-width:680px;margin:auto;text-align:center;padding:50px 30px;border:1px solid var(--theme-border);border-radius:22px;background:#FFFFFF}
.alumni-success-card>i{font-size:4rem;color:var(--primary)}
.alumni-success-card h2{font-weight:800;margin-top:14px}
@media(max-width:1199.98px){.main-nav .nav-link{font-size:.82rem!important;padding-left:.45rem!important;padding-right:.45rem!important}}
@media(max-width:991.98px){.main-nav .navbar-nav{align-items:stretch!important}.main-nav .nav-link{font-size:.9rem!important}.alumni-form-card{padding:24px}}


/* Homepage news action + hero no-blue v5.9 */
.section-heading-with-action{
  display:flex!important;
  align-items:flex-end!important;
  justify-content:space-between!important;
  gap:18px!important;
  margin-bottom:26px!important;
}
.section-heading-with-action h2{
  margin-bottom:0!important;
}
.section-all-link{
  display:inline-flex!important;
  align-items:center!important;
  gap:7px!important;
  color:var(--primary)!important;
  text-decoration:none!important;
  font-size:.78rem!important;
  font-weight:800!important;
  white-space:nowrap!important;
  padding-bottom:4px;
}
.section-all-link i{
  color:var(--primary)!important;
  font-size:.8rem!important;
}
.section-all-link:hover{
  color:var(--theme-deep)!important;
}
.section-all-link:hover i{
  transform:translateX(2px);
}

/* Hero/banner: all textual/icon accents follow selected theme, no legacy blue */
.hero-slide,
.hero-slide-medical{
  color:#FFFFFF!important;
}
.hero-slide h1,
.hero-slide .lead,
.hero-slide-content,
.hero-slide-content h1,
.hero-slide-content p{
  color:#FFFFFF!important;
}
.hero-kicker{
  color:#FFFFFF!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
.medical-pattern,
.medical-pattern i{
  color:color-mix(in srgb,var(--secondary) 50%,#FFFFFF 50%)!important;
}
.hero-icon,
.hero-slide i:not(.btn i),
.hero-slide-medical i:not(.btn i){
  color:color-mix(in srgb,var(--secondary) 58%,#FFFFFF 42%)!important;
}
.btn-medical-light{
  background:#FFFFFF!important;
  color:var(--primary)!important;
  border-color:#FFFFFF!important;
}
.btn-medical-light i{
  color:var(--primary)!important;
}
.btn-medical-light:hover{
  background:var(--theme-soft)!important;
  color:var(--theme-deep)!important;
}
.btn-medical-light:hover i{
  color:var(--theme-deep)!important;
}
.carousel-indicators [data-bs-target]{
  background-color:rgba(255,255,255,.48)!important;
}
.carousel-indicators .active{
  background:var(--secondary)!important;
}
.carousel-control-prev-icon,
.carousel-control-next-icon{
  filter:none!important;
}
.hero-slider-wrap .carousel-control-prev,
.hero-slider-wrap .carousel-control-next{
  color:#FFFFFF!important;
}

/* Remove any old medical-blue variable impact from hero/banner-specific selectors */
.hero-slider-wrap .text-primary,
.hero-slider-wrap .text-info,
.hero-slider-wrap .text-secondary{
  color:#FFFFFF!important;
}

/* Generic icon theme reinforcement for visible homepage sections */
.quick-card i,
.news-card i,
.program-icon i,
.announcement-box i,
.flat-public-section i,
.home-profile-section i,
.home-stats-section i,
.home-contact-cta i{
  color:var(--primary)!important;
}
.program-icon i,
.announcement-box h4 i,
.media-chip i,
.flat-section-badge i,
.section-heading>span i,
.section-kicker i{
  color:#FFFFFF!important;
}

@media(max-width:575.98px){
  .section-heading-with-action{
    align-items:flex-start!important;
    flex-direction:column!important;
    gap:10px!important;
  }
  .section-all-link{
    font-size:.72rem!important;
  }
}


/* Satisfaction survey popup v6.0 */
body.survey-open{overflow:hidden}
.survey-modal-backdrop{
  position:fixed;
  inset:0;
  z-index:9999;
  display:grid;
  place-items:center;
  padding:20px;
  background:rgba(24,8,13,.54);
  backdrop-filter:blur(5px);
  opacity:0;
  visibility:hidden;
  transition:.22s ease;
}
.survey-modal-backdrop.show{
  opacity:1;
  visibility:visible;
}
.survey-modal-card{
  position:relative;
  width:min(470px,100%);
  padding:32px;
  border-radius:22px;
  background:#FFFFFF;
  border:1px solid var(--theme-border);
  box-shadow:0 24px 70px rgba(0,0,0,.22);
  text-align:center;
  transform:translateY(15px) scale(.98);
  transition:.22s ease;
}
.survey-modal-backdrop.show .survey-modal-card{
  transform:translateY(0) scale(1);
}
.survey-close{
  position:absolute;
  right:14px;
  top:14px;
  width:34px;
  height:34px;
  border:0;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:var(--theme-soft);
  color:var(--primary);
}
.survey-icon{
  width:64px;
  height:64px;
  margin:0 auto 12px;
  border-radius:18px;
  display:grid;
  place-items:center;
  font-size:1.7rem;
  color:#FFFFFF;
  background:linear-gradient(135deg,var(--theme-deep),var(--primary),var(--secondary));
}
.survey-eyebrow{
  display:block;
  color:var(--primary);
  font-size:.66rem;
  font-weight:800;
  letter-spacing:1.5px;
  margin-bottom:6px;
}
.survey-modal-card h4{
  font-weight:800;
  color:color-mix(in srgb,var(--primary) 52%,#431724 48%);
  margin-bottom:8px;
}
.survey-modal-card>p{
  color:#748278;
  font-size:.88rem;
  line-height:1.55;
}
.survey-stars{
  display:flex;
  justify-content:center;
  gap:8px;
  margin:22px 0 7px;
}
.survey-star{
  border:0;
  background:transparent;
  padding:2px;
  font-size:2rem;
  line-height:1;
  color:#D8DED9;
  transition:.15s ease;
}
.survey-star.selected,
.survey-star.hovered{
  color:#DD2E5A;
  transform:scale(1.08);
}
.survey-rating-text{
  min-height:21px;
  color:#7B877F;
  font-size:.77rem;
  font-weight:700;
  margin-bottom:16px;
}
.survey-comment{
  resize:none;
  margin-bottom:14px;
}
.survey-later{
  border:0;
  background:transparent;
  color:#88938C;
  margin-top:12px;
  font-size:.76rem;
}
.survey-later:hover{color:var(--primary)}
.survey-toast{
  position:fixed;
  right:24px;
  bottom:24px;
  z-index:10000;
  display:flex;
  align-items:center;
  gap:9px;
  padding:13px 16px;
  border-radius:12px;
  background:var(--theme-deep);
  color:#FFFFFF;
  box-shadow:0 12px 35px rgba(0,0,0,.18);
  opacity:0;
  transform:translateY(15px);
  pointer-events:none;
  transition:.2s ease;
}
.survey-toast.show{
  opacity:1;
  transform:translateY(0);
}
@media(max-width:575.98px){
  .survey-modal-card{padding:28px 20px}
  .survey-stars{gap:5px}
  .survey-star{font-size:1.75rem}
  .survey-toast{left:16px;right:16px;bottom:16px;justify-content:center}
}


/* General service satisfaction survey v6.1 */
.service-survey-card{
  width:min(610px,100%)!important;
  max-height:min(88vh,760px);
  display:flex;
  flex-direction:column;
}
.service-survey-scroll{
  overflow-y:auto;
  padding-right:4px;
  margin-top:2px;
}
.survey-field-label{
  display:block;
  text-align:left;
  font-size:.75rem;
  font-weight:800;
  color:color-mix(in srgb,var(--primary) 55%,#541D2E 45%);
  margin-bottom:6px;
}
.survey-field-label span{
  color:#8A958F;
  font-weight:600;
}
.service-aspect-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px 12px;
  text-align:left;
  margin-top:16px;
}
.service-aspect-grid>div{
  padding:10px;
  border:1px solid var(--theme-border);
  border-radius:10px;
  background:var(--theme-soft);
}
.service-aspect-grid label{
  display:block;
  min-height:34px;
  margin-bottom:6px;
  color:#55655B;
  font-size:.7rem;
  font-weight:700;
  line-height:1.35;
}
.service-aspect-grid .form-select{
  background-color:#FFFFFF;
}
@media(max-width:575.98px){
  .service-survey-card{
    max-height:92vh;
  }
  .service-aspect-grid{
    grid-template-columns:1fr;
  }
}


/* Agenda sidebar widget v6.2 */
.sidebar-agenda-widget{
  border-color:var(--theme-border)!important;
}
.sidebar-agenda-widget .sidebar-widget-title span{
  display:inline-block;
  padding:6px 10px;
  border-radius:7px;
  background:linear-gradient(135deg,var(--theme-deep),var(--primary),var(--secondary));
  color:#FFFFFF!important;
  letter-spacing:1px;
}
.sidebar-agenda-list{
  display:flex;
  flex-direction:column;
}
.sidebar-agenda-item{
  display:flex;
  gap:11px;
  align-items:flex-start;
  padding:12px 0;
  border-bottom:1px solid var(--theme-border);
}
.sidebar-agenda-item:last-child{
  border-bottom:0;
  padding-bottom:0;
}
.agenda-date-box{
  flex:0 0 48px;
  width:48px;
  height:53px;
  border-radius:10px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  background:linear-gradient(145deg,var(--theme-soft),var(--theme-soft-2));
  border:1px solid var(--theme-border);
}
.agenda-date-box strong{
  color:var(--primary)!important;
  font-size:1.05rem;
  line-height:1;
}
.agenda-date-box span{
  margin-top:3px;
  color:#738078;
  font-size:.58rem;
  font-weight:800;
  letter-spacing:.7px;
}
.agenda-content{
  min-width:0;
  flex:1;
}
.agenda-content>strong{
  display:block;
  color:color-mix(in srgb,var(--primary) 55%,#461826 45%)!important;
  font-size:.82rem;
  line-height:1.4;
  margin-bottom:5px;
}
.agenda-content small{
  display:block;
  color:#748178;
  font-size:.68rem;
  line-height:1.5;
}
.agenda-content small i{
  color:var(--primary)!important;
  margin-right:3px;
}


/* Agenda visibility + survey icon v6.3 */
.public-sidebar .sidebar-agenda-widget{
  order:-10;
  position:relative;
  overflow:hidden;
  border:1px solid var(--theme-border)!important;
  background:
    linear-gradient(180deg,
      color-mix(in srgb,var(--primary) 4%,#FFFFFF 96%) 0%,
      #FFFFFF 38%)!important;
  box-shadow:0 10px 28px color-mix(in srgb,var(--primary) 7%,transparent)!important;
}
.public-sidebar .sidebar-agenda-widget::before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:0;
  height:4px;
  background:linear-gradient(90deg,var(--theme-deep),var(--primary),var(--secondary));
}
.sidebar-agenda-widget .sidebar-widget-title{
  margin-bottom:8px!important;
}
.sidebar-agenda-widget .sidebar-widget-title h5{
  margin-top:8px!important;
  font-weight:800!important;
  color:color-mix(in srgb,var(--primary) 54%,#461826 46%)!important;
}
.sidebar-agenda-widget .sidebar-empty{
  padding:16px 12px!important;
  border-radius:10px;
  background:var(--theme-soft);
  color:#718078!important;
  text-align:center;
  font-size:.76rem;
}

/* Premium survey identity icon */
.survey-icon-premium{
  position:relative!important;
  width:78px!important;
  height:78px!important;
  margin:0 auto 13px!important;
  display:grid!important;
  place-items:center!important;
  overflow:visible!important;
  border-radius:24px!important;
  background:
    radial-gradient(circle at 28% 22%,rgba(255,255,255,.30),transparent 28%),
    linear-gradient(145deg,var(--theme-deep),var(--primary),var(--secondary))!important;
  box-shadow:
    0 12px 28px color-mix(in srgb,var(--primary) 24%,transparent),
    inset 0 1px 0 rgba(255,255,255,.25)!important;
}
.survey-icon-premium::after{
  content:"";
  position:absolute;
  inset:7px;
  border:1px solid rgba(255,255,255,.22);
  border-radius:18px;
  pointer-events:none;
}
.survey-icon-main{
  position:relative;
  z-index:2;
  width:48px;
  height:48px;
  display:grid;
  place-items:center;
  color:#FFFFFF;
  font-size:2rem;
}
.survey-icon-main>i{
  color:#FFFFFF!important;
  filter:drop-shadow(0 2px 4px rgba(0,0,0,.12));
}
.survey-heart{
  position:absolute;
  right:-2px;
  bottom:0;
  width:21px;
  height:21px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#FFFFFF;
  box-shadow:0 3px 9px rgba(0,0,0,.15);
}
.survey-heart i{
  color:var(--primary)!important;
  font-size:.72rem!important;
}
.survey-icon-orbit{
  position:absolute;
  inset:0;
  z-index:3;
  pointer-events:none;
}
.survey-mini-star{
  position:absolute;
  width:20px;
  height:20px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#FFFFFF;
  box-shadow:0 3px 10px rgba(0,0,0,.14);
}
.survey-mini-star i{
  color:#DD2E5A!important;
  font-size:.56rem!important;
}
.survey-mini-star.s1{left:-7px;top:11px;transform:rotate(-8deg)}
.survey-mini-star.s2{right:-6px;top:8px;transform:rotate(9deg)}
.survey-mini-star.s3{right:4px;bottom:-7px;transform:rotate(4deg)}


/* Homepage Agenda + News Archive v6.4 */
.home-news-agenda-section{
  background:
    radial-gradient(circle at 92% 8%,color-mix(in srgb,var(--secondary) 8%,transparent),transparent 22%),
    #FFFFFF;
}
.home-news-heading{
  margin-bottom:24px!important;
}
.home-news-heading>div>p{
  max-width:690px;
  margin:7px 0 0;
  color:#738077;
  font-size:.87rem;
  line-height:1.65;
}
.all-news-button{
  display:inline-flex!important;
  align-items:center!important;
  gap:12px!important;
  padding:11px 12px 11px 18px!important;
  border-radius:13px!important;
  background:var(--theme-soft)!important;
  border:1px solid var(--theme-border)!important;
  color:var(--primary)!important;
  text-decoration:none!important;
  font-size:.78rem!important;
  font-weight:800!important;
  box-shadow:0 6px 18px color-mix(in srgb,var(--primary) 5%,transparent);
}
.all-news-button i{
  width:30px;
  height:30px;
  display:grid;
  place-items:center;
  border-radius:9px;
  background:linear-gradient(135deg,var(--theme-deep),var(--primary));
  color:#FFFFFF!important;
  transition:.2s ease;
}
.all-news-button:hover{
  background:#FFFFFF!important;
  transform:translateY(-2px);
  box-shadow:0 10px 24px color-mix(in srgb,var(--primary) 10%,transparent);
}
.all-news-button:hover i{
  transform:rotate(8deg);
}
.home-news-image-wrap{
  position:relative;
  overflow:hidden;
}
.home-news-category{
  position:absolute;
  left:14px;
  bottom:14px;
  display:inline-flex;
  align-items:center;
  padding:6px 10px;
  border-radius:9px;
  background:rgba(255,255,255,.94);
  color:var(--primary);
  font-size:.64rem;
  font-weight:800;
  box-shadow:0 5px 15px rgba(0,0,0,.10);
}
.home-news-date{
  display:flex;
  align-items:center;
  gap:5px;
  color:#829087!important;
  font-size:.72rem;
}
.home-news-date i{color:var(--primary)!important}
.home-news-read{
  margin-top:auto;
}

/* Homepage agenda panel */
.home-agenda-panel{
  height:100%;
  min-height:100%;
  overflow:hidden;
  border:1px solid var(--theme-border);
  border-radius:22px;
  background:#FFFFFF;
  box-shadow:0 12px 38px color-mix(in srgb,var(--primary) 8%,transparent);
  position:relative;
}
.home-agenda-panel::before{
  content:"";
  display:block;
  height:5px;
  background:linear-gradient(90deg,var(--theme-deep),var(--primary),var(--secondary));
}
.home-agenda-head{
  display:flex;
  align-items:center;
  gap:12px;
  padding:21px 20px 16px;
  border-bottom:1px solid var(--theme-border);
  background:linear-gradient(145deg,var(--theme-soft),#FFFFFF);
}
.home-agenda-icon{
  width:45px;
  height:45px;
  flex:0 0 45px;
  display:grid;
  place-items:center;
  border-radius:13px;
  background:linear-gradient(145deg,var(--theme-deep),var(--primary),var(--secondary));
  color:#FFFFFF;
  font-size:1.18rem;
  box-shadow:0 7px 18px color-mix(in srgb,var(--primary) 18%,transparent);
}
.home-agenda-head span{
  display:block;
  font-size:.61rem;
  letter-spacing:1.3px;
  font-weight:850;
  color:var(--primary);
}
.home-agenda-head h4{
  margin:2px 0 0;
  font-size:1rem;
  font-weight:850;
  color:color-mix(in srgb,var(--primary) 52%,#471927 48%);
}
.home-agenda-list{
  padding:7px 18px 10px;
}
.home-agenda-item{
  display:flex;
  gap:11px;
  padding:14px 0;
  border-bottom:1px solid var(--theme-border);
}
.home-agenda-item:last-child{border-bottom:0}
.home-agenda-date{
  width:47px;
  height:52px;
  flex:0 0 47px;
  border-radius:11px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  background:var(--theme-soft);
  border:1px solid var(--theme-border);
}
.home-agenda-date strong{
  color:var(--primary);
  font-size:1.05rem;
  line-height:1;
}
.home-agenda-date span{
  margin-top:3px;
  color:#79867E;
  font-size:.56rem;
  font-weight:850;
  letter-spacing:.7px;
}
.home-agenda-info{
  min-width:0;
  flex:1;
}
.home-agenda-info>strong{
  display:block;
  margin-bottom:5px;
  font-size:.78rem;
  line-height:1.38;
  color:#581F30;
}
.home-agenda-info small{
  display:block;
  color:#7A887F;
  font-size:.64rem;
  line-height:1.5;
}
.home-agenda-info small i{
  color:var(--primary)!important;
  width:15px;
  display:inline-block;
}
.home-agenda-empty{
  min-height:230px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  padding:24px 15px;
  color:#77867D;
}
.home-agenda-empty>i{
  width:54px;
  height:54px;
  display:grid;
  place-items:center;
  margin-bottom:12px;
  border-radius:16px;
  background:var(--theme-soft);
  color:var(--primary)!important;
  font-size:1.45rem;
}
.home-agenda-empty strong{
  color:#6B253A;
  font-size:.81rem;
}
.home-agenda-empty span{
  max-width:190px;
  margin-top:5px;
  font-size:.68rem;
  line-height:1.5;
}
.home-agenda-foot{
  display:flex;
  gap:7px;
  align-items:flex-start;
  margin-top:auto;
  padding:12px 18px;
  border-top:1px solid var(--theme-border);
  background:var(--theme-soft);
  color:#78867D;
  font-size:.62rem;
}
.home-agenda-foot i{
  color:var(--primary)!important;
  margin-top:1px;
}

/* News archive page */
.news-archive-header .news-archive-intro{
  max-width:720px;
  margin:10px 0 0;
  color:rgba(255,255,255,.82);
  font-size:.9rem;
  line-height:1.65;
}
.news-archive-toolbar{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:18px;
  margin-bottom:24px;
  padding-bottom:15px;
  border-bottom:1px solid var(--theme-border);
}
.news-archive-kicker{
  display:block;
  color:var(--primary);
  font-size:.63rem;
  letter-spacing:1.35px;
  font-weight:850;
}
.news-archive-toolbar h3{
  margin:4px 0 2px;
  color:#541E2E;
  font-size:1.45rem;
  font-weight:850;
}
.news-archive-toolbar small{
  color:#89958E;
  font-size:.73rem;
}
.news-back-all{
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:9px 12px;
  border-radius:10px;
  background:var(--theme-soft);
  border:1px solid var(--theme-border);
  color:var(--primary);
  text-decoration:none;
  font-size:.72rem;
  font-weight:800;
}
.news-archive-card{
  display:flex;
  flex-direction:column;
  overflow:hidden;
  border:1px solid var(--theme-border);
  border-radius:18px;
  background:#FFFFFF;
  box-shadow:0 8px 28px color-mix(in srgb,var(--primary) 5%,transparent);
  transition:.2s ease;
}
.news-archive-card:hover{
  transform:translateY(-4px);
  box-shadow:0 16px 38px color-mix(in srgb,var(--primary) 10%,transparent);
}
.news-archive-image{
  position:relative;
  display:block;
  height:230px;
  overflow:hidden;
}
.news-archive-image img,
.news-archive-image .image-placeholder{
  width:100%;
  height:100%;
  object-fit:cover;
  transition:.35s ease;
}
.news-archive-card:hover .news-archive-image img{
  transform:scale(1.035);
}
.news-archive-category{
  position:absolute;
  left:15px;
  bottom:14px;
  padding:6px 10px;
  border-radius:8px;
  background:rgba(255,255,255,.95);
  color:var(--primary);
  font-size:.62rem;
  font-weight:850;
  box-shadow:0 5px 15px rgba(0,0,0,.11);
}
.news-archive-body{
  display:flex;
  flex-direction:column;
  flex:1;
  padding:21px;
}
.news-archive-meta{
  margin-bottom:8px;
}
.news-archive-meta span{
  display:inline-flex;
  align-items:center;
  gap:5px;
  color:#849189;
  font-size:.69rem;
}
.news-archive-meta i{color:var(--primary)!important}
.news-archive-body h4{
  margin:0 0 9px;
  font-size:1rem;
  font-weight:850;
  line-height:1.45;
}
.news-archive-body h4 a{
  color:#541D2E;
  text-decoration:none;
}
.news-archive-body p{
  margin-bottom:17px;
  color:#758179;
  font-size:.78rem;
  line-height:1.6;
}
.news-archive-read{
  display:inline-flex;
  align-items:center;
  gap:7px;
  margin-top:auto;
  color:var(--primary);
  text-decoration:none;
  font-size:.74rem;
  font-weight:850;
}
.news-archive-read i{
  transition:.2s ease;
}
.news-archive-read:hover i{transform:translateX(3px)}
.news-archive-empty{
  padding:55px 20px;
  border:1px dashed var(--theme-border);
  border-radius:18px;
  text-align:center;
  background:var(--theme-soft);
}
.news-archive-empty i{
  display:block;
  margin-bottom:10px;
  color:var(--primary)!important;
  font-size:2.3rem;
}
.news-archive-empty h5{
  font-weight:800;
  color:#6B253A;
}

/* Public pagination */
.public-pagination-wrap{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:18px;
  margin-top:34px;
  padding-top:20px;
  border-top:1px solid var(--theme-border);
}
.public-pagination-info{
  color:#859087;
  font-size:.73rem;
}
.public-pagination-info strong{color:var(--primary)}
.public-pagination{
  display:flex;
  align-items:center;
  gap:6px;
  list-style:none;
  padding:0;
  margin:0;
}
.public-pagination li a,
.public-pagination li span{
  min-width:36px;
  height:36px;
  padding:0 10px;
  display:grid;
  place-items:center;
  border-radius:10px;
  border:1px solid var(--theme-border);
  background:#FFFFFF;
  color:#647269;
  text-decoration:none;
  font-size:.73rem;
  font-weight:800;
}
.public-pagination li a:hover{
  border-color:var(--primary);
  color:var(--primary);
  background:var(--theme-soft);
}
.public-pagination li.active a{
  border-color:var(--primary);
  background:linear-gradient(135deg,var(--theme-deep),var(--primary));
  color:#FFFFFF;
}
.public-pagination li.disabled span{
  opacity:.45;
}
.public-pagination li.ellipsis span{
  border:0;
  background:transparent;
}

@media(max-width:991.98px){
  .home-agenda-panel{margin-top:5px}
}
@media(max-width:767.98px){
  .home-news-heading{
    align-items:flex-start!important;
    flex-direction:column!important;
  }
  .all-news-button{
    align-self:flex-start;
  }
  .public-pagination-wrap{
    align-items:flex-start;
    flex-direction:column;
  }
  .public-pagination{
    flex-wrap:wrap;
  }
}


/* Paging + survey trigger visibility v6.5 */
.public-pagination-wrap{
  margin-top:38px!important;
  padding:18px 20px!important;
  border:1px solid var(--theme-border)!important;
  border-radius:16px!important;
  background:linear-gradient(145deg,var(--theme-soft),#FFFFFF)!important;
}
.public-pagination-info{
  font-size:.76rem!important;
  font-weight:650;
}
.public-pagination li.disabled span{
  background:#F7F8F7!important;
  color:#A8B0AA!important;
}


/* Compact homepage agenda card v6.6 */
.home-news-agenda-section .row{
  align-items:flex-start!important;
}
.home-news-agenda-section .col-xl-3,
.home-news-agenda-section .col-lg-4{
  align-self:flex-start!important;
}
.home-agenda-panel{
  height:auto!important;
  min-height:0!important;
  align-self:flex-start!important;
}
.home-agenda-list{
  padding-bottom:8px!important;
}
.home-agenda-empty{
  min-height:150px!important;
  padding:22px 14px!important;
}
.home-agenda-empty>i{
  width:48px!important;
  height:48px!important;
  margin-bottom:10px!important;
  font-size:1.25rem!important;
}
.home-agenda-empty strong{
  font-size:.78rem!important;
}
.home-agenda-empty span{
  max-width:210px!important;
  font-size:.66rem!important;
}
.home-agenda-foot{
  margin-top:0!important;
}


/* Latest sidebar + multi news gallery v6.7 */
.home-latest-news-widget{
  overflow:hidden;
  margin-bottom:18px;
  border:1px solid var(--theme-border);
  border-radius:20px;
  background:#FFFFFF;
  box-shadow:0 10px 30px color-mix(in srgb,var(--primary) 7%,transparent);
}
.home-latest-news-widget::before{
  content:"";
  display:block;
  height:4px;
  background:linear-gradient(90deg,var(--theme-deep),var(--primary),var(--secondary));
}
.home-side-widget-head{
  display:flex;
  align-items:center;
  gap:11px;
  padding:17px 17px 13px;
  border-bottom:1px solid var(--theme-border);
  background:linear-gradient(145deg,var(--theme-soft),#FFFFFF);
}
.home-side-widget-icon{
  width:40px;height:40px;flex:0 0 40px;
  display:grid;place-items:center;
  border-radius:12px;
  background:linear-gradient(145deg,var(--theme-deep),var(--primary));
  color:#FFFFFF;font-size:1rem;
}
.home-side-widget-head span{
  display:block;color:var(--primary);font-size:.58rem;font-weight:850;letter-spacing:1.2px;
}
.home-side-widget-head h4{
  margin:2px 0 0;color:#581F30;font-size:.94rem;font-weight:850;
}
.home-side-news-list{padding:5px 16px}
.home-side-news-item{
  display:flex;
  align-items:flex-start;
  gap:10px;
  padding:11px 0;
  border-bottom:1px solid var(--theme-border);
  text-decoration:none;
}
.home-side-news-item:last-child{border-bottom:0}
.home-side-news-item img,.home-side-news-placeholder{
  width:62px;height:50px;flex:0 0 62px;
  border-radius:9px;object-fit:cover;
}
.home-side-news-placeholder{
  display:grid;place-items:center;background:var(--theme-soft);color:var(--primary);
}
.home-side-news-item small{
  display:block;margin-bottom:3px;color:#88958D;font-size:.61rem;
}
.home-side-news-item small i{color:var(--primary)!important;margin-right:4px}
.home-side-news-item strong{
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
  color:#612235;font-size:.72rem;line-height:1.35;
}
.home-side-news-item:hover strong{color:var(--primary)}
.home-side-widget-link{
  display:flex;justify-content:space-between;align-items:center;
  padding:11px 16px;border-top:1px solid var(--theme-border);
  background:var(--theme-soft);color:var(--primary);text-decoration:none;
  font-size:.67rem;font-weight:800;
}
.home-side-empty{padding:16px 0;color:#87938C;font-size:.72rem}

/* Multiple images on news detail */
.article-gallery-section{
  margin:30px 0 8px;
  padding-top:24px;
  border-top:1px solid var(--theme-border);
}
.article-gallery-heading span{
  display:block;color:var(--primary);font-size:.62rem;font-weight:850;letter-spacing:1.2px;
}
.article-gallery-heading span i{margin-right:5px}
.article-gallery-heading h5{
  margin:4px 0 14px;color:#5B2032;font-weight:850;
}
.article-gallery-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
.article-gallery-item{
  height:210px;position:relative;overflow:hidden;
  border-radius:14px;background:var(--theme-soft);
}
.article-gallery-item img{
  width:100%;height:100%;object-fit:cover;transition:.3s ease;
}
.article-gallery-item>span{
  position:absolute;right:10px;bottom:10px;
  width:33px;height:33px;display:grid;place-items:center;
  border-radius:10px;background:rgba(255,255,255,.93);
  color:var(--primary);opacity:0;transform:translateY(4px);transition:.2s ease;
}
.article-gallery-item:hover img{transform:scale(1.035)}
.article-gallery-item:hover>span{opacity:1;transform:none}
@media(max-width:575.98px){
  .article-gallery-grid{grid-template-columns:1fr}
  .article-gallery-item{height:220px}
}


/* Header language + floating WhatsApp v6.8 */
.topbar .container{align-items:center}
.topbar-right-tools{
  display:flex;
  align-items:center;
  gap:16px;
}
.language-picker{position:relative}
.language-picker-btn{
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:5px 10px;
  border:1px solid rgba(255,255,255,.25);
  border-radius:9px;
  background:rgba(255,255,255,.10);
  color:#FFFFFF;
  font-size:.7rem;
  font-weight:750;
  line-height:1;
}
.language-picker-btn:hover,
.language-picker-btn:focus{
  background:rgba(255,255,255,.18);
  color:#FFFFFF;
}
.language-picker-btn i{font-size:.85rem}
.language-menu{
  min-width:190px;
  margin-top:8px!important;
  padding:7px;
  border:1px solid var(--theme-border);
  border-radius:12px;
  box-shadow:0 14px 35px rgba(57,20,31,.14);
}
.language-menu .dropdown-item{
  display:flex;
  align-items:center;
  gap:9px;
  padding:8px 9px;
  border-radius:8px;
  color:#6D263B;
  font-size:.72rem;
  font-weight:700;
}
.language-menu .dropdown-item:hover{
  background:var(--theme-soft);
  color:var(--primary);
}
.language-code{
  width:28px;
  height:24px;
  display:grid;
  place-items:center;
  border-radius:7px;
  background:var(--theme-soft);
  border:1px solid var(--theme-border);
  color:var(--primary);
  font-size:.6rem;
  font-weight:900;
}
.google-translate-engine{
  position:fixed!important;
  width:1px!important;height:1px!important;
  left:-9999px!important;bottom:-9999px!important;
  overflow:hidden!important;
}
body>.skiptranslate{display:none!important}
body{top:0!important}

.floating-whatsapp{
  position:fixed;
  right:22px;
  bottom:22px;
  z-index:1035;
  display:flex;
  align-items:center;
  gap:9px;
  padding:8px 12px 8px 8px;
  border-radius:999px;
  background:#FFFFFF;
  border:1px solid color-mix(in srgb,#D32550 35%,#FFFFFF 65%);
  box-shadow:0 10px 32px rgba(76,24,40,.18);
  text-decoration:none!important;
  transition:transform .2s ease,box-shadow .2s ease;
}
.floating-whatsapp:hover{
  transform:translateY(-3px);
  box-shadow:0 14px 38px rgba(76,24,40,.24);
}
.floating-wa-icon{
  position:relative;
  z-index:2;
  width:45px;height:45px;
  display:grid;place-items:center;
  border-radius:50%;
  background:#D32550;
  color:#FFFFFF;
  font-size:1.35rem;
}
.floating-wa-icon i{color:#FFFFFF!important}
.floating-wa-pulse{
  position:absolute;
  left:8px;
  top:8px;
  width:45px;height:45px;
  border-radius:50%;
  background:#D32550;
  opacity:.20;
  animation:floatingWaPulse 2s infinite;
}
.floating-wa-label{
  display:flex;
  flex-direction:column;
  padding-right:3px;
  line-height:1.15;
}
.floating-wa-label strong{
  color:#551E2E;
  font-size:.69rem;
  font-weight:850;
}
.floating-wa-label small{
  margin-top:3px;
  color:#A9254D;
  font-size:.61rem;
  font-weight:750;
}
@keyframes floatingWaPulse{
  0%{transform:scale(1);opacity:.25}
  70%,100%{transform:scale(1.55);opacity:0}
}
@media(max-width:767.98px){
  .topbar-tagline{display:none}
  .topbar-right-tools{gap:6px}
  .language-picker-btn span{max-width:92px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .floating-whatsapp{
    right:14px;bottom:14px;
    padding:7px;
  }
  .floating-wa-label{display:none}
  .floating-wa-icon,.floating-wa-pulse{
    width:46px;height:46px;
  }
  .floating-wa-pulse{left:7px;top:7px}
}


/* Language dropdown guaranteed visible v6.9 */
.language-picker{
  position:relative!important;
  z-index:1100;
}
.language-picker-btn{
  cursor:pointer;
}
.language-chevron{
  margin-left:2px;
  font-size:.58rem!important;
  transition:transform .2s ease;
}
.language-picker.open .language-chevron{
  transform:rotate(180deg);
}
.language-menu-custom{
  position:absolute;
  top:calc(100% + 9px);
  right:0;
  z-index:1200;
  width:230px;
  display:none;
  padding:7px;
  border:1px solid var(--theme-border);
  border-radius:14px;
  background:#FFFFFF;
  box-shadow:0 16px 40px rgba(57,20,31,.18);
}
.language-picker.open .language-menu-custom{
  display:block!important;
  animation:languageMenuIn .16s ease-out;
}
.language-menu-custom::before{
  content:"";
  position:absolute;
  right:18px;
  top:-6px;
  width:11px;
  height:11px;
  transform:rotate(45deg);
  background:#FFFFFF;
  border-left:1px solid var(--theme-border);
  border-top:1px solid var(--theme-border);
}
.language-menu-custom .language-option{
  width:100%;
  display:grid;
  grid-template-columns:34px 1fr 22px;
  align-items:center;
  gap:9px;
  padding:9px;
  border:0;
  border-radius:9px;
  background:transparent;
  color:#6E273C;
  text-align:left;
  cursor:pointer;
}
.language-menu-custom .language-option:hover,
.language-menu-custom .language-option.active{
  background:var(--theme-soft);
}
.language-menu-custom .language-option>span:nth-child(2){
  display:flex;
  flex-direction:column;
}
.language-menu-custom .language-option strong{
  color:#622235;
  font-size:.72rem;
  line-height:1.2;
}
.language-menu-custom .language-option small{
  margin-top:2px;
  color:#8A958E;
  font-size:.58rem;
}
.language-menu-custom .language-option.active strong,
.language-menu-custom .language-option.active .language-check{
  color:var(--primary);
}
.language-check{
  visibility:hidden;
  color:var(--primary);
  font-size:.9rem;
}
.language-option.active .language-check{
  visibility:visible;
}
@keyframes languageMenuIn{
  from{opacity:0;transform:translateY(-5px)}
  to{opacity:1;transform:translateY(0)}
}
@media(max-width:575.98px){
  .language-menu-custom{
    position:fixed;
    top:48px;
    right:10px;
    width:min(230px,calc(100vw - 20px));
  }
}


/* WhatsApp always-visible fix v7.0 */
.floating-whatsapp{
  z-index:9998!important;
  visibility:visible!important;
  opacity:1!important;
  display:flex!important;
}
.floating-whatsapp.wa-unconfigured{
  filter:grayscale(.2);
}
.floating-whatsapp.wa-unconfigured .floating-wa-icon{
  background:#D32550!important;
}
.floating-whatsapp.wa-unconfigured .floating-wa-label small{
  color:#7C8981!important;
}


/* Quick category cards aligned + green gradient v7.1 */
.quick-services .quick-track{
  align-items:stretch!important;
}
.quick-services .quick-slide-item{
  display:flex!important;
  height:auto!important;
}
.quick-services .quick-card{
  width:100%!important;
  min-height:220px!important;
  height:100%!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:flex-start!important;
  padding:28px 28px 24px!important;
  border:1px solid color-mix(in srgb,var(--secondary) 48%,#FFFFFF 52%)!important;
  border-left:0!important;
  border-radius:20px!important;
  background:
    radial-gradient(circle at 92% 8%,rgba(255,255,255,.18),transparent 34%),
    linear-gradient(145deg,
      var(--theme-deep) 0%,
      var(--primary) 54%,
      var(--secondary) 100%)!important;
  box-shadow:0 12px 28px color-mix(in srgb,var(--primary) 18%,transparent)!important;
  color:#FFFFFF!important;
  overflow:hidden!important;
  position:relative!important;
}
.quick-services .quick-card::before{
  content:"";
  position:absolute;
  left:0;
  top:0;
  bottom:0;
  width:7px;
  background:rgba(255,255,255,.24);
}
.quick-services .quick-card::after{
  content:"";
  position:absolute;
  width:110px;
  height:110px;
  right:-42px;
  bottom:-52px;
  border-radius:50%;
  background:rgba(255,255,255,.08);
}
.quick-services .quick-card>i{
  flex:0 0 auto!important;
  margin:0 0 22px!important;
  color:#FFFFFF!important;
  font-size:2rem!important;
  line-height:1!important;
}
.quick-services .quick-card>b{
  display:block!important;
  min-height:29px!important;
  margin:0 0 5px!important;
  color:#FFFFFF!important;
  font-size:1.03rem!important;
  font-weight:850!important;
  line-height:1.35!important;
}
.quick-services .quick-card>span{
  display:-webkit-box!important;
  min-height:48px!important;
  margin:0 0 18px!important;
  overflow:hidden!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:2!important;
  color:rgba(255,255,255,.84)!important;
  font-size:.82rem!important;
  line-height:1.55!important;
}
.quick-services .quick-card-more{
  display:inline-flex!important;
  align-items:center!important;
  gap:7px!important;
  margin-top:auto!important;
  color:#FFFFFF!important;
  font-size:.69rem!important;
  font-weight:850!important;
}
.quick-services .quick-card-more i{
  color:#FFFFFF!important;
  transition:transform .2s ease;
}
.quick-services .quick-card:hover{
  transform:translateY(-5px)!important;
  box-shadow:0 17px 34px color-mix(in srgb,var(--primary) 25%,transparent)!important;
}
.quick-services .quick-card:hover .quick-card-more i{
  transform:translateX(4px);
}
.quick-services .home-slider-nav{
  background:linear-gradient(145deg,var(--primary),var(--secondary))!important;
  color:#FFFFFF!important;
  border-color:transparent!important;
}
.quick-services .home-slider-nav i{
  color:#FFFFFF!important;
}
@media(max-width:767.98px){
  .quick-services .quick-card{
    min-height:205px!important;
    padding:24px 22px 21px!important;
  }
}


/* Quick category cards soft white-green gradient v7.2 */
.quick-services .quick-card{
  background:
    radial-gradient(circle at 92% 8%,color-mix(in srgb,var(--secondary) 10%,transparent),transparent 34%),
    linear-gradient(145deg,
      #FFFFFF 0%,
      color-mix(in srgb,var(--primary) 5%,#FFFFFF 95%) 52%,
      color-mix(in srgb,var(--secondary) 14%,#FFFFFF 86%) 100%)!important;
  border:1px solid color-mix(in srgb,var(--primary) 20%,#FFFFFF 80%)!important;
  box-shadow:0 12px 28px color-mix(in srgb,var(--primary) 9%,transparent)!important;
  color:#581F30!important;
}
.quick-services .quick-card::before{
  width:6px!important;
  background:linear-gradient(180deg,var(--theme-deep),var(--primary),var(--secondary))!important;
}
.quick-services .quick-card::after{
  background:color-mix(in srgb,var(--secondary) 9%,transparent)!important;
}
.quick-services .quick-card>i{
  color:var(--primary)!important;
}
.quick-services .quick-card>b{
  color:color-mix(in srgb,var(--primary) 58%,#521D2D 42%)!important;
}
.quick-services .quick-card>span{
  color:#7A887F!important;
}
.quick-services .quick-card-more{
  color:var(--primary)!important;
}
.quick-services .quick-card-more i{
  color:var(--primary)!important;
}
.quick-services .quick-card:hover{
  background:
    radial-gradient(circle at 92% 8%,color-mix(in srgb,var(--secondary) 15%,transparent),transparent 34%),
    linear-gradient(145deg,
      #FFFFFF 0%,
      color-mix(in srgb,var(--primary) 8%,#FFFFFF 92%) 52%,
      color-mix(in srgb,var(--secondary) 19%,#FFFFFF 81%) 100%)!important;
  box-shadow:0 17px 34px color-mix(in srgb,var(--primary) 14%,transparent)!important;
}


/* Stronger soft green cards + latest news carousel v7.3 */
.quick-services .quick-card{
  background:
    radial-gradient(circle at 90% 9%,
      color-mix(in srgb,var(--secondary) 22%,transparent),
      transparent 37%),
    linear-gradient(145deg,
      #FFFFFF 0%,
      color-mix(in srgb,var(--primary) 9%,#FFFFFF 91%) 47%,
      color-mix(in srgb,var(--secondary) 27%,#FFFFFF 73%) 100%)!important;
  border:1px solid color-mix(in srgb,var(--primary) 29%,#FFFFFF 71%)!important;
  box-shadow:
    0 12px 30px color-mix(in srgb,var(--primary) 12%,transparent),
    inset 0 1px 0 rgba(255,255,255,.9)!important;
}
.quick-services .quick-card::before{
  width:7px!important;
  background:linear-gradient(180deg,
    var(--theme-deep),
    var(--primary) 55%,
    var(--secondary))!important;
}
.quick-services .quick-card::after{
  width:125px!important;
  height:125px!important;
  right:-48px!important;
  bottom:-58px!important;
  background:color-mix(in srgb,var(--secondary) 15%,transparent)!important;
}
.quick-services .quick-card>i{
  width:48px!important;
  height:48px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:14px!important;
  background:linear-gradient(145deg,
    color-mix(in srgb,var(--primary) 12%,#FFFFFF 88%),
    color-mix(in srgb,var(--secondary) 30%,#FFFFFF 70%))!important;
  border:1px solid color-mix(in srgb,var(--primary) 18%,#FFFFFF 82%)!important;
  color:var(--primary)!important;
  box-shadow:0 7px 16px color-mix(in srgb,var(--primary) 9%,transparent)!important;
}
.quick-services .quick-card>b{
  color:color-mix(in srgb,var(--primary) 70%,#451826 30%)!important;
}
.quick-services .quick-card-more{
  padding:7px 10px!important;
  border-radius:9px!important;
  background:color-mix(in srgb,var(--primary) 9%,#FFFFFF 91%)!important;
  border:1px solid color-mix(in srgb,var(--primary) 15%,#FFFFFF 85%)!important;
}
.quick-services .quick-card:hover{
  background:
    radial-gradient(circle at 90% 9%,
      color-mix(in srgb,var(--secondary) 28%,transparent),
      transparent 37%),
    linear-gradient(145deg,
      #FFFFFF 0%,
      color-mix(in srgb,var(--primary) 12%,#FFFFFF 88%) 47%,
      color-mix(in srgb,var(--secondary) 32%,#FFFFFF 68%) 100%)!important;
}

/* Homepage right-sidebar latest news carousel */
.home-side-news-carousel{
  padding:0;
}
.home-side-news-carousel .carousel-inner{
  border-bottom:1px solid var(--theme-border);
}
.home-side-news-slide{
  display:block;
  color:inherit;
  text-decoration:none;
}
.home-side-news-image{
  position:relative;
  height:175px;
  overflow:hidden;
  background:var(--theme-soft);
}
.home-side-news-image img,
.home-side-news-image .home-side-news-placeholder{
  width:100%;
  height:100%;
  object-fit:cover;
}
.home-side-news-image img{
  transition:transform .35s ease;
}
.home-side-news-slide:hover .home-side-news-image img{
  transform:scale(1.04);
}
.home-side-news-placeholder{
  display:grid!important;
  place-items:center!important;
  color:var(--primary);
  font-size:2rem;
}
.home-side-news-category{
  position:absolute;
  left:13px;
  bottom:12px;
  padding:5px 8px;
  border-radius:8px;
  background:rgba(255,255,255,.94);
  color:var(--primary);
  font-size:.57rem;
  font-weight:850;
  box-shadow:0 4px 12px rgba(0,0,0,.10);
}
.home-side-news-caption{
  min-height:136px;
  display:flex;
  flex-direction:column;
  padding:15px 16px 13px;
}
.home-side-news-caption small{
  display:flex;
  align-items:center;
  gap:5px;
  margin-bottom:7px;
  color:#87938C;
  font-size:.62rem;
}
.home-side-news-caption small i{
  color:var(--primary)!important;
}
.home-side-news-caption strong{
  display:-webkit-box;
  overflow:hidden;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:3;
  color:#5D2032;
  font-size:.78rem;
  line-height:1.45;
  font-weight:850;
}
.home-side-news-caption>span{
  display:inline-flex;
  align-items:center;
  gap:6px;
  margin-top:auto;
  padding-top:10px;
  color:var(--primary);
  font-size:.64rem;
  font-weight:800;
}
.home-side-news-caption>span i{
  transition:transform .2s ease;
}
.home-side-news-slide:hover .home-side-news-caption>span i{
  transform:translateX(3px);
}
.home-side-news-controls{
  display:grid;
  grid-template-columns:34px 1fr 34px;
  align-items:center;
  gap:9px;
  padding:10px 13px;
  background:linear-gradient(145deg,var(--theme-soft),#FFFFFF);
}
.home-side-carousel-btn{
  width:32px;
  height:32px;
  display:grid;
  place-items:center;
  border:1px solid var(--theme-border);
  border-radius:9px;
  background:#FFFFFF;
  color:var(--primary);
}
.home-side-carousel-btn:hover{
  background:var(--primary);
  border-color:var(--primary);
  color:#FFFFFF;
}
.home-side-carousel-btn:hover i{
  color:#FFFFFF!important;
}
.home-side-carousel-dots{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:5px;
}
.home-side-carousel-dots button{
  width:7px;
  height:7px;
  padding:0;
  border:0;
  border-radius:50%;
  background:color-mix(in srgb,var(--primary) 20%,#DEC9CE 80%);
  transition:.2s ease;
}
.home-side-carousel-dots button.active{
  width:20px;
  border-radius:999px;
  background:linear-gradient(90deg,var(--primary),var(--secondary));
}


/* Professional compact category cards + Faculty in Numbers v7.4 */
.quick-services{
  padding:22px 0!important;
}
.quick-services .compact-slider{
  padding:0 36px!important;
}
.quick-services .quick-track{
  gap:14px!important;
}
.quick-services .quick-slide-item{
  flex:0 0 248px!important;
  width:248px!important;
}
.quick-services .quick-card{
  min-height:154px!important;
  height:154px!important;
  padding:19px 18px 17px!important;
  border-radius:16px!important;
  background:
    linear-gradient(135deg,#FFFFFF 0%,
      color-mix(in srgb,var(--primary) 7%,#FFFFFF 93%) 64%,
      color-mix(in srgb,var(--secondary) 18%,#FFFFFF 82%) 100%)!important;
  border:1px solid color-mix(in srgb,var(--primary) 20%,#FFFFFF 80%)!important;
  box-shadow:0 8px 22px color-mix(in srgb,var(--primary) 8%,transparent)!important;
}
.quick-services .quick-card::before{
  left:0!important;
  top:17px!important;
  bottom:17px!important;
  width:4px!important;
  border-radius:0 7px 7px 0!important;
}
.quick-services .quick-card::after{
  width:82px!important;
  height:82px!important;
  right:-36px!important;
  bottom:-42px!important;
}
.quick-services .quick-card>i{
  width:38px!important;
  height:38px!important;
  margin:0 0 12px!important;
  border-radius:11px!important;
  font-size:1.15rem!important;
  box-shadow:none!important;
}
.quick-services .quick-card>b{
  min-height:auto!important;
  margin-bottom:3px!important;
  font-size:.91rem!important;
  line-height:1.25!important;
}
.quick-services .quick-card>span{
  min-height:auto!important;
  margin:0 0 9px!important;
  font-size:.70rem!important;
  line-height:1.4!important;
  -webkit-line-clamp:1!important;
}
.quick-services .quick-card-more{
  padding:0!important;
  border:0!important;
  background:transparent!important;
  font-size:.62rem!important;
}
.quick-services .quick-card:hover{
  transform:translateY(-3px)!important;
  border-color:color-mix(in srgb,var(--primary) 32%,#FFFFFF 68%)!important;
  box-shadow:0 12px 25px color-mix(in srgb,var(--primary) 12%,transparent)!important;
}
.quick-services .home-slider-nav{
  width:32px!important;
  height:32px!important;
  box-shadow:0 6px 15px color-mix(in srgb,var(--primary) 13%,transparent)!important;
}

.faculty-numbers-section{
  position:relative;
  padding:72px 0;
  overflow:hidden;
  background:
    radial-gradient(circle at 10% 18%,color-mix(in srgb,var(--secondary) 12%,transparent),transparent 28%),
    linear-gradient(180deg,#FFFFFF 0%,color-mix(in srgb,var(--primary) 4%,#FFFFFF 96%) 100%);
  border-top:1px solid color-mix(in srgb,var(--primary) 10%,#FFFFFF 90%);
  border-bottom:1px solid color-mix(in srgb,var(--primary) 10%,#FFFFFF 90%);
}
.faculty-numbers-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:25px;
  margin-bottom:30px;
}
.faculty-numbers-kicker{
  display:inline-flex;
  margin-bottom:8px;
  color:var(--primary);
  font-size:.69rem;
  font-weight:850;
  letter-spacing:.12em;
}
.faculty-numbers-head h2{
  margin:0 0 8px;
  color:#471927;
  font-weight:850;
  font-size:clamp(1.7rem,2.8vw,2.35rem);
}
.faculty-numbers-head p{
  max-width:720px;
  margin:0;
  color:#77847D;
}
.faculty-data-year{
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:9px 12px;
  border:1px solid var(--theme-border);
  border-radius:10px;
  background:#FFFFFF;
  color:var(--primary);
  font-size:.72rem;
  font-weight:800;
}
.faculty-numbers-layout{
  display:grid;
  grid-template-columns:minmax(0,1.03fr) minmax(360px,.97fr);
  gap:22px;
}
.faculty-number-cards{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:13px;
}
.faculty-number-card{
  min-height:118px;
  display:flex;
  align-items:center;
  gap:15px;
  padding:20px;
  border:1px solid color-mix(in srgb,var(--primary) 16%,#FFFFFF 84%);
  border-radius:17px;
  background:rgba(255,255,255,.92);
  box-shadow:0 9px 24px color-mix(in srgb,var(--primary) 7%,transparent);
}
.faculty-program-card{
  grid-column:1/-1;
  min-height:94px;
}
.faculty-number-icon{
  width:48px;
  height:48px;
  flex:0 0 48px;
  display:grid;
  place-items:center;
  border-radius:14px;
  background:linear-gradient(145deg,
    color-mix(in srgb,var(--primary) 9%,#FFFFFF 91%),
    color-mix(in srgb,var(--secondary) 24%,#FFFFFF 76%));
  color:var(--primary);
  font-size:1.16rem;
}
.faculty-number-card strong{
  display:block;
  color:#441825;
  font-size:1.62rem;
  line-height:1;
  font-weight:900;
}
.faculty-number-card div>span{
  display:block;
  margin-top:6px;
  color:#79867E;
  font-size:.73rem;
  font-weight:700;
}
.faculty-ratio-panel{
  padding:24px;
  border:1px solid color-mix(in srgb,var(--primary) 20%,#FFFFFF 80%);
  border-radius:20px;
  background:
    linear-gradient(145deg,#FFFFFF 0%,
      color-mix(in srgb,var(--primary) 6%,#FFFFFF 94%) 100%);
  box-shadow:0 12px 30px color-mix(in srgb,var(--primary) 9%,transparent);
}
.faculty-ratio-title{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:15px;
  margin-bottom:29px;
}
.faculty-ratio-title span{
  color:var(--primary);
  font-size:.62rem;
  font-weight:850;
  letter-spacing:.11em;
}
.faculty-ratio-title h4{
  margin:4px 0 0;
  color:#511C2C;
  font-size:1.08rem;
  font-weight:850;
}
.faculty-ratio-badge{
  min-width:92px;
  padding:10px 12px;
  border-radius:12px;
  text-align:center;
  background:linear-gradient(145deg,var(--theme-deep),var(--primary));
  color:#FFFFFF;
}
.faculty-ratio-badge small{
  display:block;
  color:rgba(255,255,255,.72);
  font-size:.56rem;
  text-transform:uppercase;
}
.faculty-ratio-badge strong{
  display:block;
  margin-top:2px;
  font-size:1.04rem;
}
.faculty-ratio-chart{
  display:flex;
  flex-direction:column;
  gap:21px;
  padding:5px 0 22px;
}
.ratio-row-label{
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin-bottom:7px;
  color:#6E7C74;
  font-size:.69rem;
}
.ratio-row-label strong{
  color:#5D2032;
  font-size:.75rem;
}
.ratio-track{
  width:100%;
  height:12px;
  overflow:hidden;
  border-radius:999px;
  background:color-mix(in srgb,var(--primary) 8%,#F2EFF0 92%);
}
.ratio-bar{
  display:block;
  min-width:4px;
  height:100%;
  border-radius:999px;
  transition:width .8s ease;
}
.ratio-bar.lecturer{
  background:linear-gradient(90deg,var(--theme-deep),var(--primary));
}
.ratio-bar.student{
  background:linear-gradient(90deg,var(--primary),var(--secondary));
}
.faculty-ratio-note{
  display:flex;
  align-items:flex-start;
  gap:9px;
  padding:12px 13px;
  border-radius:11px;
  background:color-mix(in srgb,var(--primary) 6%,#FFFFFF 94%);
  color:#6C7B72;
  font-size:.66rem;
  line-height:1.5;
}
.faculty-ratio-note i{
  margin-top:1px;
  color:var(--primary);
}
.faculty-numbers-empty{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:14px;
  min-height:170px;
  padding:28px;
  border:1px dashed var(--theme-border);
  border-radius:18px;
  background:#FFFFFF;
  color:#748178;
}
.faculty-numbers-empty>i{
  color:var(--primary);
  font-size:1.8rem;
}
.faculty-numbers-empty strong,
.faculty-numbers-empty span{
  display:block;
}
.faculty-numbers-empty strong{
  color:#652337;
}
.faculty-numbers-empty span{
  margin-top:3px;
  font-size:.76rem;
}
@media(max-width:991.98px){
  .faculty-numbers-layout{grid-template-columns:1fr;}
}
@media(max-width:575.98px){
  .quick-services .quick-slide-item{flex-basis:218px!important;width:218px!important;}
  .quick-services .quick-card{height:148px!important;min-height:148px!important;}
  .faculty-numbers-section{padding:48px 0;}
  .faculty-numbers-head{align-items:flex-start;flex-direction:column;}
  .faculty-number-cards{grid-template-columns:1fr;}
  .faculty-program-card{grid-column:auto;}
  .faculty-number-card{min-height:94px;}
}


/* v7.5 — Full-width professional category cards */
.quick-services{
  padding:26px 0 30px!important;
}
.quick-services .home-slider-shell.compact-slider{
  padding:0!important;
}
.quick-services .quick-track{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:16px!important;
  width:100%!important;
  overflow:visible!important;
  scroll-snap-type:none!important;
  padding:0!important;
}
.quick-services .quick-slide-item{
  width:auto!important;
  min-width:0!important;
  max-width:none!important;
  flex:initial!important;
  display:block!important;
}
.quick-services .quick-card{
  width:100%!important;
  height:142px!important;
  min-height:142px!important;
  display:grid!important;
  grid-template-columns:48px minmax(0,1fr)!important;
  grid-template-rows:auto auto 1fr!important;
  column-gap:14px!important;
  align-items:start!important;
  padding:19px 19px 17px!important;
  border-radius:16px!important;
  background:
    linear-gradient(135deg,
      #FFFFFF 0%,
      color-mix(in srgb,var(--primary) 6%,#FFFFFF 94%) 58%,
      color-mix(in srgb,var(--secondary) 17%,#FFFFFF 83%) 100%)!important;
  border:1px solid color-mix(in srgb,var(--primary) 18%,#FFFFFF 82%)!important;
  border-left:1px solid color-mix(in srgb,var(--primary) 18%,#FFFFFF 82%)!important;
  box-shadow:0 8px 20px color-mix(in srgb,var(--primary) 7%,transparent)!important;
  overflow:hidden!important;
}
.quick-services .quick-card::before{
  content:""!important;
  position:absolute!important;
  left:0!important;
  top:0!important;
  bottom:0!important;
  width:4px!important;
  border-radius:16px 0 0 16px!important;
  background:linear-gradient(180deg,var(--theme-deep),var(--primary),var(--secondary))!important;
}
.quick-services .quick-card::after{
  width:90px!important;
  height:90px!important;
  right:-40px!important;
  bottom:-46px!important;
  background:color-mix(in srgb,var(--secondary) 10%,transparent)!important;
}
.quick-services .quick-card>i{
  grid-column:1!important;
  grid-row:1 / span 2!important;
  width:46px!important;
  height:46px!important;
  margin:0!important;
  display:grid!important;
  place-items:center!important;
  border-radius:13px!important;
  background:
    linear-gradient(145deg,
      color-mix(in srgb,var(--primary) 10%,#FFFFFF 90%),
      color-mix(in srgb,var(--secondary) 25%,#FFFFFF 75%))!important;
  border:1px solid color-mix(in srgb,var(--primary) 14%,#FFFFFF 86%)!important;
  color:var(--primary)!important;
  font-size:1.18rem!important;
  box-shadow:none!important;
}
.quick-services .quick-card>b{
  grid-column:2!important;
  grid-row:1!important;
  min-height:0!important;
  margin:2px 0 3px!important;
  color:#541D2E!important;
  font-size:.92rem!important;
  line-height:1.25!important;
  font-weight:850!important;
}
.quick-services .quick-card>span{
  grid-column:2!important;
  grid-row:2!important;
  min-height:0!important;
  margin:0!important;
  display:-webkit-box!important;
  overflow:hidden!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:2!important;
  color:#77867D!important;
  font-size:.69rem!important;
  line-height:1.45!important;
}
.quick-services .quick-card-more{
  grid-column:1 / -1!important;
  grid-row:3!important;
  align-self:end!important;
  justify-self:start!important;
  margin-top:11px!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  color:var(--primary)!important;
  font-size:.63rem!important;
  font-weight:850!important;
}
.quick-services .quick-card-more i{
  color:var(--primary)!important;
}
.quick-services .quick-card:hover{
  transform:translateY(-3px)!important;
  border-color:color-mix(in srgb,var(--primary) 28%,#FFFFFF 72%)!important;
  box-shadow:0 12px 26px color-mix(in srgb,var(--primary) 11%,transparent)!important;
}
.quick-services .home-slider-nav{
  display:none!important;
}

@media (max-width:1199.98px){
  .quick-services .quick-track{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}
@media (max-width:575.98px){
  .quick-services .quick-track{
    grid-template-columns:1fr!important;
    gap:12px!important;
  }
  .quick-services .quick-card{
    height:132px!important;
    min-height:132px!important;
    padding:17px 17px 15px!important;
  }
}


/* v7.6 — Restore first green-gradient card style, aligned only */
.quick-services{
  padding:28px 0!important;
}
.quick-services .home-slider-shell.compact-slider{
  padding:0!important;
}
.quick-services .quick-track{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:16px!important;
  width:100%!important;
  overflow:visible!important;
  padding:0!important;
}
.quick-services .quick-slide-item{
  width:auto!important;
  min-width:0!important;
  max-width:none!important;
  flex:initial!important;
  display:flex!important;
}
.quick-services .quick-card{
  width:100%!important;
  min-height:205px!important;
  height:205px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:flex-start!important;
  padding:25px 24px 22px!important;
  border-radius:19px!important;
  position:relative!important;
  overflow:hidden!important;

  background:
    radial-gradient(circle at 92% 8%,rgba(255,255,255,.18),transparent 34%),
    linear-gradient(145deg,
      var(--theme-deep) 0%,
      var(--primary) 54%,
      var(--secondary) 100%)!important;

  border:1px solid color-mix(in srgb,var(--secondary) 45%,#FFFFFF 55%)!important;
  box-shadow:0 12px 28px color-mix(in srgb,var(--primary) 18%,transparent)!important;
  color:#FFFFFF!important;
}
.quick-services .quick-card::before{
  content:""!important;
  position:absolute!important;
  left:0!important;
  top:0!important;
  bottom:0!important;
  width:6px!important;
  border-radius:19px 0 0 19px!important;
  background:rgba(255,255,255,.22)!important;
}
.quick-services .quick-card::after{
  content:""!important;
  position:absolute!important;
  width:105px!important;
  height:105px!important;
  right:-42px!important;
  bottom:-50px!important;
  border-radius:50%!important;
  background:rgba(255,255,255,.08)!important;
}
.quick-services .quick-card>i{
  width:auto!important;
  height:auto!important;
  display:block!important;
  margin:0 0 20px!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:#FFFFFF!important;
  font-size:1.85rem!important;
  line-height:1!important;
}
.quick-services .quick-card>b{
  display:block!important;
  min-height:26px!important;
  margin:0 0 6px!important;
  color:#FFFFFF!important;
  font-size:1rem!important;
  font-weight:850!important;
  line-height:1.3!important;
}
.quick-services .quick-card>span{
  display:-webkit-box!important;
  min-height:44px!important;
  margin:0 0 15px!important;
  overflow:hidden!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:2!important;
  color:rgba(255,255,255,.83)!important;
  font-size:.76rem!important;
  line-height:1.5!important;
}
.quick-services .quick-card-more{
  display:inline-flex!important;
  align-items:center!important;
  gap:7px!important;
  margin-top:auto!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  color:#FFFFFF!important;
  font-size:.67rem!important;
  font-weight:850!important;
}
.quick-services .quick-card-more i{
  color:#FFFFFF!important;
  transition:transform .2s ease!important;
}
.quick-services .quick-card:hover{
  transform:translateY(-4px)!important;
  border-color:rgba(255,255,255,.38)!important;
  box-shadow:0 16px 34px color-mix(in srgb,var(--primary) 24%,transparent)!important;
}
.quick-services .quick-card:hover .quick-card-more i{
  transform:translateX(4px)!important;
}
.quick-services .home-slider-nav{
  display:none!important;
}

@media(max-width:1199.98px){
  .quick-services .quick-track{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}
@media(max-width:575.98px){
  .quick-services .quick-track{
    grid-template-columns:1fr!important;
    gap:12px!important;
  }
  .quick-services .quick-card{
    min-height:190px!important;
    height:190px!important;
    padding:23px 22px 20px!important;
  }
}


/* v7.7 — Clean professional cards, no gradient */
.quick-services{
  background:#FFFFFF!important;
}
.quick-services .quick-card{
  min-height:188px!important;
  height:188px!important;
  padding:23px 22px 20px!important;
  border-radius:16px!important;
  background:#FFFFFF!important;
  border:1px solid color-mix(in srgb,var(--primary) 18%,#ECE7E8 82%)!important;
  box-shadow:0 7px 20px rgba(59,21,32,.07)!important;
  color:#461826!important;
}
.quick-services .quick-card::before{
  left:0!important;
  top:0!important;
  bottom:auto!important;
  width:100%!important;
  height:4px!important;
  border-radius:16px 16px 0 0!important;
  background:var(--primary)!important;
}
.quick-services .quick-card::after{
  display:none!important;
}
.quick-services .quick-card>i{
  width:43px!important;
  height:43px!important;
  display:grid!important;
  place-items:center!important;
  margin:0 0 17px!important;
  border-radius:11px!important;
  background:color-mix(in srgb,var(--primary) 9%,#FFFFFF 91%)!important;
  border:1px solid color-mix(in srgb,var(--primary) 12%,#FFFFFF 88%)!important;
  color:var(--primary)!important;
  font-size:1.25rem!important;
}
.quick-services .quick-card>b{
  min-height:25px!important;
  margin-bottom:4px!important;
  color:#4A1A28!important;
  font-size:.96rem!important;
}
.quick-services .quick-card>span{
  min-height:40px!important;
  margin-bottom:12px!important;
  color:#7A877F!important;
  font-size:.73rem!important;
  line-height:1.45!important;
}
.quick-services .quick-card-more{
  color:var(--primary)!important;
  font-size:.65rem!important;
}
.quick-services .quick-card-more i{
  color:var(--primary)!important;
}
.quick-services .quick-card:hover{
  transform:translateY(-4px)!important;
  background:#FFFFFF!important;
  border-color:color-mix(in srgb,var(--primary) 34%,#ECE7E8 66%)!important;
  box-shadow:0 13px 28px rgba(59,21,32,.11)!important;
}
@media(max-width:575.98px){
  .quick-services .quick-card{
    min-height:178px!important;
    height:178px!important;
  }
}


/* v7.8 — section divider, public document UI, restrained frontend motion */
.quick-section-divider-wrap{
  padding-top:2px;
  padding-bottom:2px;
}
.quick-section-divider{
  display:grid;
  grid-template-columns:1fr 28px 1fr;
  align-items:center;
  gap:12px;
  max-width:100%;
}
.quick-section-divider span{
  height:1px;
  background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--primary) 20%,#E6DFE1 80%));
}
.quick-section-divider span:last-child{
  background:linear-gradient(90deg,color-mix(in srgb,var(--primary) 20%,#E6DFE1 80%),transparent);
}
.quick-section-divider i{
  width:28px;
  height:28px;
  display:grid;
  place-items:center;
  border:1px solid color-mix(in srgb,var(--primary) 16%,#FFFFFF 84%);
  border-radius:50%;
  background:#FFFFFF;
  color:var(--primary);
  font-size:.66rem;
}

.reveal-up,
.reveal-section{
  opacity:0;
  transform:translateY(18px);
  transition:
    opacity .62s cubic-bezier(.2,.7,.2,1),
    transform .62s cubic-bezier(.2,.7,.2,1);
  transition-delay:var(--reveal-delay,0ms);
}
.reveal-section{
  transform:translateY(12px);
}
.reveal-up.is-visible,
.reveal-section.is-visible{
  opacity:1;
  transform:none;
}
@media(prefers-reduced-motion:reduce){
  .reveal-up,.reveal-section{
    opacity:1!important;
    transform:none!important;
    transition:none!important;
  }
}

.document-public-toolbar{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:18px;
  margin-bottom:18px;
  padding:18px 20px;
  border:1px solid color-mix(in srgb,var(--primary) 12%,#EBE6E7 88%);
  border-radius:15px;
  background:#FFFFFF;
}
.document-toolbar-kicker{
  display:block;
  margin-bottom:3px;
  color:var(--primary);
  font-size:.61rem;
  font-weight:850;
  letter-spacing:.11em;
}
.document-public-toolbar h4{
  margin:0 0 4px;
  color:#541D2E;
  font-size:1.05rem;
  font-weight:850;
}
.document-public-toolbar p{
  margin:0;
  color:#7C8981;
  font-size:.71rem;
}
.document-category-filter{
  display:flex;
  align-items:center;
  gap:7px;
  min-width:225px;
}
.document-category-filter .form-select{
  border-color:color-mix(in srgb,var(--primary) 16%,#E8E2E3 84%);
  color:#526158;
  font-size:.7rem;
}
.document-filter-reset{
  width:31px;
  height:31px;
  flex:0 0 31px;
  display:grid;
  place-items:center;
  border:1px solid var(--theme-border);
  border-radius:8px;
  color:var(--primary);
}
.document-public-list{
  display:flex;
  flex-direction:column;
  gap:10px;
}
.document-public-row{
  display:grid;
  grid-template-columns:48px minmax(0,1fr) auto;
  align-items:center;
  gap:14px;
  padding:16px 17px;
  border:1px solid color-mix(in srgb,var(--primary) 11%,#EDE8E9 89%);
  border-radius:14px;
  background:#FFFFFF;
  box-shadow:0 5px 15px rgba(59,21,32,.045);
  transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease;
}
.document-public-row:hover{
  transform:translateY(-2px);
  border-color:color-mix(in srgb,var(--primary) 25%,#EDE8E9 75%);
  box-shadow:0 9px 22px rgba(59,21,32,.075);
}
.document-public-icon{
  width:46px;
  height:46px;
  display:grid;
  place-items:center;
  border-radius:12px;
  background:color-mix(in srgb,var(--primary) 8%,#FFFFFF 92%);
  color:var(--primary);
  font-size:1.1rem;
}
.document-public-copy>span{
  display:block;
  margin-bottom:3px;
  color:var(--primary);
  font-size:.58rem;
  font-weight:850;
  text-transform:uppercase;
  letter-spacing:.05em;
}
.document-public-copy h5{
  margin:0 0 5px;
  color:#5A2031;
  font-size:.83rem;
  line-height:1.4;
  font-weight:800;
}
.document-public-copy small{
  display:flex;
  align-items:center;
  gap:5px;
  color:#929D96;
  font-size:.61rem;
}
.document-public-action a{
  min-width:76px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  padding:8px 10px;
  border:1px solid color-mix(in srgb,var(--primary) 17%,#FFFFFF 83%);
  border-radius:9px;
  background:color-mix(in srgb,var(--primary) 6%,#FFFFFF 94%);
  color:var(--primary);
  font-size:.63rem;
  font-weight:800;
}
.document-public-action a:hover{
  background:var(--primary);
  border-color:var(--primary);
  color:#FFFFFF;
}
.document-public-action a:hover i{color:#FFFFFF!important;}
.document-public-empty{
  min-height:130px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:7px;
  border:1px dashed var(--theme-border);
  border-radius:14px;
  color:#849188;
  background:#FFFFFF;
}
.document-public-empty i{
  color:var(--primary);
  font-size:1.5rem;
}
@media(max-width:767.98px){
  .document-public-toolbar{align-items:stretch;flex-direction:column;}
  .document-category-filter{min-width:0;width:100%;}
  .document-category-filter .form-select{flex:1;}
}
@media(max-width:575.98px){
  .document-public-row{
    grid-template-columns:42px minmax(0,1fr);
  }
  .document-public-action{
    grid-column:1/-1;
  }
  .document-public-action a{width:100%;}
}

/* v7.9 Alumni CAPTCHA */
.alumni-captcha-box{display:flex;align-items:center;gap:12px;padding:15px 16px;border:1px solid var(--theme-border);border-radius:13px;background:color-mix(in srgb,var(--primary) 4%,#FFFFFF 96%)}
.alumni-captcha-icon{width:42px;height:42px;flex:0 0 42px;display:grid;place-items:center;border-radius:11px;background:#FFFFFF;color:var(--primary);font-size:1.1rem;border:1px solid var(--theme-border)}
.alumni-captcha-copy{flex:1}.alumni-captcha-copy strong,.alumni-captcha-copy span{display:block}.alumni-captcha-copy strong{font-size:.78rem;color:#5A2031}.alumni-captcha-copy span{font-size:.65rem;color:#859087;margin-top:2px}
.alumni-captcha-question{padding:8px 12px;border-radius:9px;background:var(--primary);color:#FFFFFF;font-weight:850;letter-spacing:.04em}.alumni-captcha-equals{font-weight:800;color:#728077}.alumni-captcha-input{width:76px!important;text-align:center;font-weight:800}
@media(max-width:575.98px){.alumni-captcha-box{flex-wrap:wrap}.alumni-captcha-copy{flex-basis:calc(100% - 58px)}}


/* v8.1 — dynamic identity in frontend header */
.main-nav .navbar-brand .brand-copy{
  min-width:0;
  max-width:390px;
  line-height:1.08;
}
.main-nav .navbar-brand .brand-copy strong{
  display:block;
  max-width:100%;
  color:#FFFFFF;
  font-size:.82rem;
  font-weight:850;
  line-height:1.18;
  letter-spacing:.025em;
  white-space:normal;
}
.main-nav .navbar-brand .brand-copy small{
  margin-top:4px;
  color:rgba(255,255,255,.74);
  font-size:.59rem;
  font-weight:700;
  letter-spacing:.08em;
}
@media(max-width:991.98px){
  .main-nav .navbar-brand .brand-copy{max-width:245px}
  .main-nav .navbar-brand .brand-copy strong{font-size:.72rem}
}
@media(max-width:575.98px){
  .main-nav .navbar-brand{max-width:80%}
  .main-nav .navbar-brand .brand-copy{max-width:210px}
  .main-nav .navbar-brand .brand-copy strong{font-size:.65rem}
  .main-nav .navbar-brand .brand-copy small{font-size:.52rem}
}


/* v8.2 — functional gallery preview + all gallery page */
.multimedia-preview-btn{
  margin-top:10px;
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:7px 10px;
  border:1px solid color-mix(in srgb,var(--primary) 20%,#E8E2E3 80%);
  border-radius:8px;
  background:#FFFFFF;
  color:var(--primary);
  font-size:.63rem;
  font-weight:850;
  cursor:pointer;
}
.multimedia-preview-btn:hover{
  background:var(--primary);
  border-color:var(--primary);
  color:#FFFFFF;
}
.public-gallery-preview-modal .modal-content{
  border:0;
  border-radius:18px;
  overflow:hidden;
  box-shadow:0 24px 65px rgba(47,16,25,.2);
}
.public-gallery-preview-modal .modal-header{
  padding:17px 20px;
  border-bottom:1px solid #F1EDEE;
}
.public-gallery-preview-modal .modal-header small{
  display:block;
  margin-bottom:2px;
  color:var(--primary);
  font-size:.61rem;
  font-weight:850;
  letter-spacing:.1em;
}
.public-gallery-preview-modal .modal-title{
  color:#561E2F;
  font-size:1rem;
  font-weight:850;
}
.public-gallery-modal-media{
  overflow:hidden;
  border-radius:13px;
  background:#F7F4F5;
}
.public-gallery-modal-media img{
  display:block;
  width:100%;
  max-height:65vh;
  object-fit:contain;
}
.public-gallery-modal-media video{
  display:block;
  width:100%;
  max-height:65vh;
  background:#111111;
}
.public-gallery-modal-media iframe{border:0}
.public-gallery-modal-empty{
  min-height:300px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:8px;
  color:#89958E;
}
.public-gallery-modal-empty i{font-size:2rem;color:var(--primary)}
.public-gallery-modal-caption{
  margin:14px 0 0;
  padding:12px 14px;
  border-radius:10px;
  background:#F8F6F7;
  color:#68756D;
  font-size:.75rem;
  line-height:1.55;
}

.public-gallery-page{background:#FFFFFF}
.public-gallery-toolbar{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:18px;
  margin-bottom:24px;
}
.public-gallery-toolbar>div:first-child>span{
  display:block;
  margin-bottom:3px;
  color:var(--primary);
  font-size:.61rem;
  font-weight:850;
  letter-spacing:.1em;
}
.public-gallery-toolbar h4{margin:0 0 5px;color:#541D2E;font-size:1.1rem;font-weight:850}
.public-gallery-toolbar p{margin:0;color:#7E8A82;font-size:.73rem}
.public-gallery-filter{display:flex;gap:7px;flex-wrap:wrap}
.public-gallery-filter a{
  padding:7px 11px;
  border:1px solid var(--theme-border);
  border-radius:8px;
  color:#68766D;
  background:#FFFFFF;
  font-size:.66rem;
  font-weight:800;
}
.public-gallery-filter a.active,.public-gallery-filter a:hover{background:var(--primary);border-color:var(--primary);color:#FFFFFF}
.public-gallery-card{
  height:100%;
  overflow:hidden;
  border:1px solid color-mix(in srgb,var(--primary) 11%,#EDE8E9 89%);
  border-radius:14px;
  background:#FFFFFF;
  box-shadow:0 7px 18px rgba(59,21,32,.05);
  transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;
}
.public-gallery-card:hover{transform:translateY(-3px);box-shadow:0 12px 25px rgba(59,21,32,.09);border-color:color-mix(in srgb,var(--primary) 25%,#EDE8E9 75%)}
.public-gallery-thumb{height:190px;position:relative;overflow:hidden;background:#F6F3F4}
.public-gallery-thumb img,.public-gallery-thumb video{width:100%;height:100%;object-fit:cover;display:block}
.public-gallery-video-poster,.public-gallery-placeholder{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;background:color-mix(in srgb,var(--primary) 7%,#F7F5F5 93%);color:var(--primary)}
.public-gallery-video-poster i{font-size:2.3rem}.public-gallery-video-poster span{font-size:.68rem;font-weight:800}
.public-gallery-placeholder i{font-size:2rem}
.public-gallery-type{position:absolute;left:10px;top:10px;display:inline-flex;align-items:center;gap:4px;padding:5px 7px;border-radius:7px;background:rgba(255,255,255,.93);color:var(--primary);font-size:.58rem;font-weight:850}
.public-gallery-info{padding:15px}
.public-gallery-info h5{margin:0 0 6px;color:#5A2031;font-size:.82rem;font-weight:850;line-height:1.4}
.public-gallery-info p{min-height:34px;margin:0 0 12px;color:#849087;font-size:.68rem;line-height:1.5}
.public-gallery-preview-btn{width:100%;display:flex;justify-content:center;align-items:center;gap:6px;padding:8px 10px;border:1px solid color-mix(in srgb,var(--primary) 18%,#FFFFFF 82%);border-radius:8px;background:color-mix(in srgb,var(--primary) 5%,#FFFFFF 95%);color:var(--primary);font-size:.65rem;font-weight:850}
.public-gallery-preview-btn:hover{background:var(--primary);border-color:var(--primary);color:#FFFFFF}
.public-gallery-empty{min-height:180px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;border:1px dashed var(--theme-border);border-radius:14px;color:#869189}
.public-gallery-empty i{font-size:1.8rem;color:var(--primary)}
@media(max-width:767.98px){.public-gallery-toolbar{align-items:stretch;flex-direction:column}}

/* v8.3 — gallery thumbnails/paging + public course schedule */
.public-gallery-video-poster.has-thumbnail{position:relative;overflow:hidden}
.public-gallery-video-poster.has-thumbnail img{width:100%;height:100%;object-fit:cover;display:block}
.gallery-play-overlay{position:absolute;inset:0;display:grid;place-items:center;background:rgba(40,14,22,.18)}
.gallery-play-overlay i{width:48px;height:48px;display:grid;place-items:center;border-radius:50%;background:rgba(255,255,255,.94);color:var(--primary);font-size:1.35rem;box-shadow:0 6px 18px rgba(0,0,0,.15)}
.public-gallery-preview-btn{width:auto!important;min-width:108px!important;display:inline-flex!important}
.gallery-pagination-summary{text-align:center;margin-top:30px;color:#87928B;font-size:.68rem}

.course-schedule-public{background:#FFFFFF}
.schedule-public-summary{display:flex;align-items:center;gap:16px;padding:19px 21px;margin-bottom:18px;border:1px solid var(--theme-border);border-radius:15px;background:color-mix(in srgb,var(--primary) 5%,#FFFFFF 95%)}
.schedule-summary-icon{width:50px;height:50px;flex:0 0 50px;display:grid;place-items:center;border-radius:13px;background:var(--primary);color:#FFFFFF;font-size:1.25rem}
.schedule-public-summary span{display:block;color:var(--primary);font-size:.6rem;font-weight:850;letter-spacing:.1em}.schedule-public-summary h4{margin:2px 0 4px;color:#591F30;font-size:1rem;font-weight:850}.schedule-public-summary p{margin:0;color:#7F8B83;font-size:.7rem}
.schedule-public-filter{display:grid;grid-template-columns:1fr 1fr .75fr auto;align-items:end;gap:10px;padding:16px 17px;margin-bottom:18px;border:1px solid #ECE7E8;border-radius:14px;background:#FFFFFF;box-shadow:0 5px 16px rgba(59,21,32,.045)}
.schedule-public-filter label{display:block;margin-bottom:5px;color:#5F6D64;font-size:.65rem;font-weight:800}.schedule-public-filter .form-select{font-size:.72rem}
.schedule-public-table-card{overflow:hidden;border:1px solid #EBE5E7;border-radius:15px;background:#FFFFFF;box-shadow:0 8px 24px rgba(59,21,32,.055)}
.schedule-public-table-head{display:flex;align-items:end;justify-content:space-between;gap:12px;padding:17px 19px;border-bottom:1px solid #F1EDEE}.schedule-public-table-head span{display:block;color:var(--primary);font-size:.59rem;font-weight:850;letter-spacing:.1em}.schedule-public-table-head h4{margin:2px 0 0;color:#5B2032;font-size:.96rem;font-weight:850}.schedule-public-table-head>small{color:#8A958E;font-size:.65rem}
.schedule-public-table{margin:0}.schedule-public-table thead th{padding:11px 14px;background:#F9F7F8;color:#647168;font-size:.62rem;text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid #ECE7E8}.schedule-public-table td{padding:13px 14px;color:#56645B;font-size:.72rem;vertical-align:middle}.schedule-public-table td>strong,.schedule-public-table td>small{display:block}.schedule-public-table td>strong{color:#5A2031;font-size:.76rem}.schedule-public-table td>small{margin-top:3px;color:#8A968E;font-size:.62rem}.schedule-time strong,.schedule-time span{display:block}.schedule-time strong{color:var(--primary);font-size:.74rem}.schedule-time span{margin-top:3px;color:#7E8A82;font-size:.63rem}.schedule-room{display:inline-flex;padding:5px 8px;border-radius:7px;background:var(--theme-soft);color:var(--primary);font-size:.64rem;font-weight:800}
.schedule-empty{min-height:130px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;color:#87938B}.schedule-empty i{font-size:1.55rem;color:var(--primary)}
.schedule-pagination{padding:15px;border-top:1px solid #F1EDEE}
@media(max-width:991.98px){.schedule-public-filter{grid-template-columns:1fr 1fr}.schedule-public-filter .btn{width:100%}}
@media(max-width:575.98px){.schedule-public-filter{grid-template-columns:1fr}.schedule-public-summary{align-items:flex-start}.schedule-public-table-head{align-items:flex-start;flex-direction:column}}


/* v8.5 — document filters/actions/paging and explicit schedule paging */
.document-public-actions{
  display:flex!important;
  align-items:center;
  justify-content:flex-end;
  gap:6px;
  flex-wrap:wrap;
}
.document-public-actions a{
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  gap:5px;
  min-width:78px;
  padding:7px 9px!important;
  border-radius:8px!important;
  font-size:.62rem!important;
  font-weight:850!important;
  text-decoration:none!important;
}
.document-view-btn{
  border:1px solid var(--theme-border)!important;
  background:#FFFFFF!important;
  color:var(--primary)!important;
}
.document-view-btn:hover{
  background:var(--theme-soft)!important;
}
.document-download-btn{
  border:1px solid var(--primary)!important;
  background:var(--primary)!important;
  color:#FFFFFF!important;
}
.document-download-btn:hover{filter:brightness(.94)}
.document-no-file{font-size:.64rem;color:#96A099}
.document-page-summary,.schedule-page-summary{
  margin-top:20px;
  text-align:center;
  color:#87928B;
  font-size:.67rem;
}
.document-pagination{margin-top:12px}
.document-pagination .page-link,.schedule-pagination .page-link{
  color:var(--primary);
  border-color:#E9E3E4;
  font-size:.69rem;
  min-width:34px;
  text-align:center;
}
.document-pagination .page-item.active .page-link,
.schedule-pagination .page-item.active .page-link{
  background:var(--primary);
  border-color:var(--primary);
  color:#FFFFFF;
}
@media(max-width:767.98px){
  .document-public-row{align-items:flex-start}
  .document-public-actions{width:100%;justify-content:flex-start;margin-top:9px}
}


/* v8.6 — image-only hero banners */
.hero-slide-image-only{
  min-height:0!important;
  height:auto!important;
  background:none!important;
  padding:0!important;
  position:relative;
}
.hero-slide-image-only::before,
.hero-slide-image-only::after{
  display:none!important;
  content:none!important;
}
.hero-banner-full{
  display:block;
  width:100%;
  height:auto;
  max-height:none;
  object-fit:contain;
  background:#FFFFFF;
}
.hero-slide-image-only .hero-slide-content,
.hero-slide-image-only .medical-pattern{
  display:none!important;
}
@media(min-width:1200px){
  .hero-banner-full{width:100%;height:auto}
}
@media(max-width:767.98px){
  .hero-slide-image-only{min-height:0!important}
  .hero-banner-full{width:100%;height:auto;object-fit:contain}
}


/* v8.7 — sharper, cleaner SimpleCMS-style hero slider */
.hero-slide{
  min-height:520px;
  background-position:center center!important;
  background-size:cover!important;
  background-repeat:no-repeat!important;
  filter:none!important;
  isolation:isolate;
}
.hero-slide[style*="background-image"]{
  /* Override the old heavy green gradient. Keep the original photo crisp. */
  background-blend-mode:normal!important;
}
.hero-slide::before{
  content:""!important;
  display:block!important;
  position:absolute!important;
  inset:0!important;
  z-index:0!important;
  pointer-events:none!important;
  background:linear-gradient(
    90deg,
    rgba(54,9,22,.68) 0%,
    rgba(54,9,22,.48) 34%,
    rgba(54,9,22,.16) 61%,
    rgba(54,9,22,.03) 100%
  )!important;
}
.hero-slide::after{
  content:""!important;
  display:block!important;
  position:absolute!important;
  inset:auto 0 0!important;
  height:26%!important;
  z-index:0!important;
  pointer-events:none!important;
  background:linear-gradient(0deg,rgba(45,8,19,.16),transparent)!important;
}
.hero-slide-content{
  position:relative!important;
  z-index:2!important;
  min-height:520px!important;
  display:flex!important;
  align-items:center!important;
}
.hero-slide-content .row{margin:0!important}
.hero-slide-content .col-xl-8{
  max-width:720px!important;
}
.hero-kicker{
  display:inline-flex!important;
  align-items:center!important;
  width:auto!important;
  margin-bottom:13px!important;
  padding:6px 10px!important;
  border:1px solid rgba(255,255,255,.28)!important;
  border-radius:999px!important;
  background:rgba(56,9,23,.24)!important;
  backdrop-filter:blur(3px);
  color:#FFFFFF!important;
  font-size:.66rem!important;
  font-weight:800!important;
  letter-spacing:.09em!important;
}
.hero-slide h1{
  max-width:690px!important;
  margin:0 0 14px!important;
  color:#FFFFFF!important;
  font-size:clamp(2.15rem,4vw,4rem)!important;
  line-height:1.02!important;
  letter-spacing:-.035em!important;
  font-weight:850!important;
  text-shadow:0 2px 14px rgba(0,0,0,.16)!important;
}
.hero-slide .lead{
  max-width:620px!important;
  margin-bottom:23px!important;
  color:rgba(255,255,255,.94)!important;
  font-size:clamp(.88rem,1.15vw,1.05rem)!important;
  line-height:1.6!important;
  text-shadow:0 1px 8px rgba(0,0,0,.16)!important;
}
.hero-slide .btn-medical-light{
  padding:11px 18px!important;
  border:1px solid rgba(255,255,255,.88)!important;
  border-radius:9px!important;
  box-shadow:0 6px 18px rgba(0,0,0,.10)!important;
}
.medical-pattern{display:none!important}

/* Avoid the soft/washed-out look caused by old pseudo overlays. */
#heroCarousel .carousel-item,
#heroCarousel .hero-slide{
  opacity:1!important;
}
#heroCarousel .carousel-control-prev,
#heroCarousel .carousel-control-next{
  width:52px!important;
  opacity:.88!important;
}
#heroCarousel .carousel-control-prev-icon,
#heroCarousel .carousel-control-next-icon{
  width:36px!important;
  height:36px!important;
  padding:9px!important;
  border-radius:50%!important;
  background-size:46%!important;
  background-color:rgba(52,9,22,.42)!important;
  backdrop-filter:blur(3px);
}
#heroCarousel .carousel-indicators{
  bottom:15px!important;
  z-index:4!important;
}
#heroCarousel .carousel-indicators [data-bs-target]{
  width:7px!important;
  height:7px!important;
  margin:0 4px!important;
  border:0!important;
  border-radius:50%!important;
  background:#FFFFFF!important;
  opacity:.48!important;
}
#heroCarousel .carousel-indicators .active{
  width:22px!important;
  border-radius:999px!important;
  opacity:1!important;
}

/* Image-only banners remain completely clean and unfiltered. */
.hero-slide-image-only::before,
.hero-slide-image-only::after{display:none!important}
.hero-slide-image-only .hero-banner-full{
  filter:none!important;
  opacity:1!important;
}

@media(max-width:991.98px){
  .hero-slide,.hero-slide-content{min-height:440px!important}
  .hero-slide-content .col-xl-8{max-width:610px!important}
}
@media(max-width:575.98px){
  .hero-slide,.hero-slide-content{min-height:390px!important}
  .hero-slide::before{
    background:linear-gradient(90deg,rgba(54,9,22,.69),rgba(54,9,22,.28))!important;
  }
  .hero-slide h1{font-size:2.05rem!important}
  .hero-kicker{font-size:.56rem!important}
}


/* v8.8 — plain clean hero, no green overlay */
.hero-slide::before,
.hero-slide::after{
  display:none!important;
  content:none!important;
  background:none!important;
}
.hero-slide{
  filter:none!important;
  opacity:1!important;
  background-blend-mode:normal!important;
}
.hero-slide-content{
  background:transparent!important;
}
.hero-slide h1,
.hero-slide .lead,
.hero-kicker{
  text-shadow:0 2px 10px rgba(0,0,0,.24)!important;
}
.hero-kicker{
  background:rgba(0,0,0,.18)!important;
  border-color:rgba(255,255,255,.28)!important;
}
.hero-slide .btn-medical-light{
  background:#FFFFFF!important;
  color:var(--primary)!important;
  border-color:#FFFFFF!important;
}
.medical-pattern{display:none!important}


/* v8.9 — pure image slider: no overlay, no title/tagline/button */
#fkHeroSlider .hero-slide-image-only{
  display:block!important;
  position:relative!important;
  width:100%!important;
  min-height:0!important;
  height:auto!important;
  padding:0!important;
  margin:0!important;
  background:none!important;
  background-image:none!important;
  background-color:transparent!important;
  background-blend-mode:normal!important;
  filter:none!important;
  opacity:1!important;
}
#fkHeroSlider .hero-slide-image-only::before,
#fkHeroSlider .hero-slide-image-only::after{
  content:none!important;
  display:none!important;
  background:none!important;
}
#fkHeroSlider .hero-slide-image-only .hero-banner-full{
  display:block!important;
  width:100%!important;
  height:auto!important;
  max-height:none!important;
  margin:0!important;
  padding:0!important;
  object-fit:contain!important;
  object-position:center!important;
  filter:none!important;
  opacity:1!important;
  mix-blend-mode:normal!important;
  transform:none!important;
}
#fkHeroSlider .hero-slide-image-only .hero-slide-content,
#fkHeroSlider .hero-slide-image-only .hero-kicker,
#fkHeroSlider .hero-slide-image-only h1,
#fkHeroSlider .hero-slide-image-only .lead,
#fkHeroSlider .hero-slide-image-only .btn,
#fkHeroSlider .hero-slide-image-only .medical-pattern{
  display:none!important;
}


/* v9.0 — fixed proportional pure-image hero slider */
#fkHeroSlider,
#fkHeroSlider .carousel-inner,
#fkHeroSlider .carousel-item{
  width:100%!important;
  overflow:hidden!important;
}

/* Desktop */
#fkHeroSlider .hero-slide-image-only{
  position:relative!important;
  display:block!important;
  width:100%!important;
  height:430px!important;
  min-height:430px!important;
  max-height:430px!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  background:#F7F4F5!important;
  filter:none!important;
  opacity:1!important;
}

#fkHeroSlider .hero-slide-image-only::before,
#fkHeroSlider .hero-slide-image-only::after{
  content:none!important;
  display:none!important;
}

#fkHeroSlider .hero-slide-image-only .hero-banner-full{
  position:absolute!important;
  inset:0!important;
  display:block!important;
  width:100%!important;
  height:100%!important;
  min-height:100%!important;
  max-height:100%!important;
  margin:0!important;
  padding:0!important;
  object-fit:cover!important;
  object-position:center center!important;
  filter:none!important;
  opacity:1!important;
  transform:none!important;
}

/* Make controls compact and unobtrusive */
#fkHeroSlider .carousel-control-prev,
#fkHeroSlider .carousel-control-next{
  width:54px!important;
  opacity:.78!important;
}

#fkHeroSlider .carousel-control-prev-icon,
#fkHeroSlider .carousel-control-next-icon{
  width:34px!important;
  height:34px!important;
  border-radius:50%!important;
  background-color:rgba(0,0,0,.22)!important;
  background-size:45%!important;
}

#fkHeroSlider .carousel-indicators{
  bottom:10px!important;
  margin-bottom:0!important;
}

#fkHeroSlider .carousel-indicators [data-bs-target]{
  width:7px!important;
  height:7px!important;
  border-radius:50%!important;
  border:0!important;
  margin:0 4px!important;
  background:#FFFFFF!important;
  opacity:.55!important;
}

#fkHeroSlider .carousel-indicators .active{
  width:20px!important;
  border-radius:20px!important;
  opacity:1!important;
}

/* Tablet */
@media (max-width:991.98px){
  #fkHeroSlider .hero-slide-image-only{
    height:330px!important;
    min-height:330px!important;
    max-height:330px!important;
  }
}

/* Mobile */
@media (max-width:575.98px){
  #fkHeroSlider .hero-slide-image-only{
    height:220px!important;
    min-height:220px!important;
    max-height:220px!important;
  }

  #fkHeroSlider .carousel-control-prev,
  #fkHeroSlider .carousel-control-next{
    width:38px!important;
  }

  #fkHeroSlider .carousel-control-prev-icon,
  #fkHeroSlider .carousel-control-next-icon{
    width:28px!important;
    height:28px!important;
  }
}


/* v9.1 — compact left overlay: subtitle + button only */
#fkHeroSlider .hero-slide-image-only .hero-mini-overlay{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  gap:12px!important;
  position:absolute!important;
  left:clamp(28px,5vw,78px)!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  z-index:5!important;
  width:min(390px,38vw)!important;
  padding:18px 20px!important;
  border:1px solid rgba(255,255,255,.18)!important;
  border-radius:12px!important;
  background:rgba(30,10,16,.34)!important;
  -webkit-backdrop-filter:blur(4px)!important;
  backdrop-filter:blur(4px)!important;
  box-shadow:0 8px 26px rgba(0,0,0,.12)!important;
}
#fkHeroSlider .hero-slide-image-only .hero-mini-text{
  display:block!important;
  margin:0!important;
  color:#FFFFFF!important;
  font-size:clamp(.9rem,1.15vw,1.08rem)!important;
  line-height:1.55!important;
  font-weight:600!important;
  letter-spacing:.005em!important;
  text-shadow:0 1px 4px rgba(0,0,0,.28)!important;
}
#fkHeroSlider .hero-slide-image-only .hero-mini-button{
  display:inline-flex!important;
  align-items:center!important;
  gap:9px!important;
  min-height:40px!important;
  padding:9px 15px!important;
  border:1px solid rgba(255,255,255,.92)!important;
  border-radius:8px!important;
  background:rgba(255,255,255,.96)!important;
  color:var(--primary)!important;
  font-size:.88rem!important;
  font-weight:750!important;
  line-height:1!important;
  text-decoration:none!important;
  box-shadow:0 4px 14px rgba(0,0,0,.10)!important;
}
#fkHeroSlider .hero-slide-image-only .hero-mini-button:hover{
  background:#FFFFFF!important;
  transform:translateY(-1px)!important;
}
@media(max-width:767.98px){
  #fkHeroSlider .hero-slide-image-only .hero-mini-overlay{
    left:18px!important;
    width:min(300px,72vw)!important;
    padding:13px 14px!important;
    gap:9px!important;
    border-radius:9px!important;
    background:rgba(30,10,16,.30)!important;
  }
  #fkHeroSlider .hero-slide-image-only .hero-mini-text{
    font-size:.78rem!important;
    line-height:1.45!important;
  }
  #fkHeroSlider .hero-slide-image-only .hero-mini-button{
    min-height:34px!important;
    padding:7px 11px!important;
    font-size:.76rem!important;
  }
}


/* v9.2 — overlay card includes title; banner image no longer cropped */
#fkHeroSlider .hero-slide-image-only{
  height:430px!important;
  min-height:430px!important;
  max-height:430px!important;
  background:#F2EEEF!important;
}

/* Show the whole uploaded banner instead of cropping it with object-fit: cover */
#fkHeroSlider .hero-slide-image-only .hero-banner-full{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  object-position:center center!important;
  background:#F2EEEF!important;
}

/* Overlay card */
#fkHeroSlider .hero-slide-image-only .hero-mini-overlay{
  width:min(410px,39vw)!important;
  padding:17px 19px!important;
  gap:8px!important;
  background:rgba(31,11,17,.46)!important;
  border:1px solid rgba(255,255,255,.18)!important;
  border-radius:12px!important;
  -webkit-backdrop-filter:blur(5px)!important;
  backdrop-filter:blur(5px)!important;
}

#fkHeroSlider .hero-slide-image-only .hero-mini-title{
  display:block!important;
  margin:0!important;
  color:#FFFFFF!important;
  font-size:clamp(1.05rem,1.55vw,1.42rem)!important;
  line-height:1.2!important;
  font-weight:800!important;
  letter-spacing:-.015em!important;
  text-shadow:0 1px 5px rgba(0,0,0,.24)!important;
}

#fkHeroSlider .hero-slide-image-only .hero-mini-text{
  font-size:clamp(.78rem,.95vw,.92rem)!important;
  line-height:1.45!important;
  font-weight:500!important;
  color:rgba(255,255,255,.93)!important;
}

#fkHeroSlider .hero-slide-image-only .hero-mini-button{
  margin-top:3px!important;
}

@media(max-width:991.98px){
  #fkHeroSlider .hero-slide-image-only{
    height:330px!important;
    min-height:330px!important;
    max-height:330px!important;
  }
}

@media(max-width:575.98px){
  #fkHeroSlider .hero-slide-image-only{
    height:220px!important;
    min-height:220px!important;
    max-height:220px!important;
  }

  #fkHeroSlider .hero-slide-image-only .hero-mini-overlay{
    left:14px!important;
    width:min(285px,74vw)!important;
    padding:11px 12px!important;
    gap:6px!important;
  }

  #fkHeroSlider .hero-slide-image-only .hero-mini-title{
    font-size:.93rem!important;
  }

  #fkHeroSlider .hero-slide-image-only .hero-mini-text{
    font-size:.70rem!important;
  }
}


/* v9.3 — full-width banner + green gradient overlay card */
#fkHeroSlider{
  width:100%!important;
  background:transparent!important;
}
#fkHeroSlider .carousel-inner,
#fkHeroSlider .carousel-item{
  width:100%!important;
  background:transparent!important;
}

/* Restore a wide/full hero presentation.
   cover intentionally fills the complete slider width. */
#fkHeroSlider .hero-slide-image-only{
  width:100%!important;
  height:430px!important;
  min-height:430px!important;
  max-height:430px!important;
  overflow:hidden!important;
  background:transparent!important;
}
#fkHeroSlider .hero-slide-image-only .hero-banner-full{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:cover!important;
  object-position:center center!important;
  background:transparent!important;
}

/* Green gradient card — only the card is overlaid, not the whole photo */
#fkHeroSlider .hero-slide-image-only .hero-mini-overlay{
  left:clamp(42px,6vw,105px)!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  width:min(470px,42vw)!important;
  padding:24px 25px 22px!important;
  gap:10px!important;
  border:1px solid rgba(255,255,255,.20)!important;
  border-radius:14px!important;
  background:linear-gradient(
    135deg,
    rgba(75,12,31,.91) 0%,
    rgba(121,20,50,.84) 58%,
    rgba(170,47,78,.73) 100%
  )!important;
  -webkit-backdrop-filter:blur(4px)!important;
  backdrop-filter:blur(4px)!important;
  box-shadow:0 14px 36px rgba(61,10,25,.20)!important;
}

#fkHeroSlider .hero-slide-image-only .hero-mini-title{
  color:#FFFFFF!important;
  font-size:clamp(1.28rem,1.8vw,1.72rem)!important;
  line-height:1.18!important;
  font-weight:800!important;
  text-shadow:none!important;
}
#fkHeroSlider .hero-slide-image-only .hero-mini-text{
  color:rgba(255,255,255,.92)!important;
  font-size:clamp(.82rem,1vw,.96rem)!important;
  line-height:1.5!important;
  font-weight:500!important;
  text-shadow:none!important;
}
#fkHeroSlider .hero-slide-image-only .hero-mini-button{
  margin-top:5px!important;
  min-height:40px!important;
  padding:9px 15px!important;
  background:#FFFFFF!important;
  color:#6B112C!important;
  border-color:#FFFFFF!important;
  border-radius:8px!important;
  box-shadow:0 5px 14px rgba(0,0,0,.10)!important;
}

/* Keep navigation inside the actual banner area */
#fkHeroSlider .carousel-control-prev,
#fkHeroSlider .carousel-control-next{
  z-index:7!important;
}

/* Tablet */
@media(max-width:991.98px){
  #fkHeroSlider .hero-slide-image-only{
    height:350px!important;
    min-height:350px!important;
    max-height:350px!important;
  }
  #fkHeroSlider .hero-slide-image-only .hero-mini-overlay{
    left:42px!important;
    width:min(410px,48vw)!important;
    padding:19px 20px!important;
  }
}

/* Mobile */
@media(max-width:575.98px){
  #fkHeroSlider .hero-slide-image-only{
    height:240px!important;
    min-height:240px!important;
    max-height:240px!important;
  }
  #fkHeroSlider .hero-slide-image-only .hero-banner-full{
    object-position:center center!important;
  }
  #fkHeroSlider .hero-slide-image-only .hero-mini-overlay{
    left:16px!important;
    width:min(285px,76vw)!important;
    padding:12px 13px!important;
    gap:6px!important;
    border-radius:10px!important;
  }
  #fkHeroSlider .hero-slide-image-only .hero-mini-title{
    font-size:.96rem!important;
  }
  #fkHeroSlider .hero-slide-image-only .hero-mini-text{
    font-size:.70rem!important;
    line-height:1.35!important;
  }
  #fkHeroSlider .hero-slide-image-only .hero-mini-button{
    min-height:32px!important;
    padding:6px 10px!important;
    font-size:.72rem!important;
  }
}


/* v9.4 — refined compact glass overlay */
#fkHeroSlider .hero-slide-image-only{
  height:430px!important;
  min-height:430px!important;
  max-height:430px!important;
}

#fkHeroSlider .hero-slide-image-only .hero-banner-full{
  object-fit:cover!important;
  object-position:center 52%!important;
}

/* Smaller, cleaner overlay that does not dominate the photo */
#fkHeroSlider .hero-slide-image-only .hero-mini-overlay{
  left:clamp(34px,5vw,82px)!important;
  top:auto!important;
  bottom:54px!important;
  transform:none!important;

  width:min(410px,36vw)!important;
  padding:18px 19px 17px!important;
  gap:8px!important;

  border:1px solid rgba(255,255,255,.20)!important;
  border-radius:14px!important;

  background:
    linear-gradient(
      120deg,
      rgba(71,11,29,.82) 0%,
      rgba(104,17,43,.70) 58%,
      rgba(144,24,60,.54) 100%
    )!important;

  -webkit-backdrop-filter:blur(7px) saturate(120%)!important;
  backdrop-filter:blur(7px) saturate(120%)!important;
  box-shadow:0 12px 28px rgba(0,0,0,.16)!important;
}

/* subtle accent */
#fkHeroSlider .hero-slide-image-only .hero-mini-overlay::before{
  content:""!important;
  display:block!important;
  position:absolute!important;
  left:0!important;
  top:17px!important;
  bottom:17px!important;
  width:3px!important;
  border-radius:0 6px 6px 0!important;
  background:rgba(255,255,255,.82)!important;
}

#fkHeroSlider .hero-slide-image-only .hero-mini-title{
  margin:0!important;
  color:#FFFFFF!important;
  font-size:clamp(1.12rem,1.52vw,1.48rem)!important;
  line-height:1.18!important;
  font-weight:800!important;
  letter-spacing:-.018em!important;
  text-shadow:0 1px 3px rgba(0,0,0,.10)!important;
}

#fkHeroSlider .hero-slide-image-only .hero-mini-text{
  margin:0!important;
  color:rgba(255,255,255,.88)!important;
  font-size:clamp(.77rem,.90vw,.89rem)!important;
  line-height:1.45!important;
  font-weight:450!important;
  text-shadow:none!important;
}

/* Compact premium-looking CTA */
#fkHeroSlider .hero-slide-image-only .hero-mini-button{
  margin-top:5px!important;
  min-height:36px!important;
  padding:8px 13px!important;
  border:1px solid rgba(255,255,255,.88)!important;
  border-radius:8px!important;
  background:rgba(255,255,255,.95)!important;
  color:#6B112C!important;
  font-size:.82rem!important;
  font-weight:750!important;
  box-shadow:none!important;
  transition:transform .18s ease, background .18s ease!important;
}

@media (hover:hover){
  #fkHeroSlider .hero-slide-image-only .hero-mini-button:hover{
    background:#FFFFFF!important;
    transform:translateY(-1px)!important;
  }
}

/* Softer controls */
#fkHeroSlider .carousel-control-prev,
#fkHeroSlider .carousel-control-next{
  width:46px!important;
  opacity:.68!important;
}

#fkHeroSlider .carousel-control-prev-icon,
#fkHeroSlider .carousel-control-next-icon{
  width:30px!important;
  height:30px!important;
  background-color:rgba(0,0,0,.16)!important;
}

#fkHeroSlider .carousel-indicators{
  bottom:12px!important;
}

#fkHeroSlider .carousel-indicators [data-bs-target]{
  width:6px!important;
  height:6px!important;
  margin:0 4px!important;
  opacity:.55!important;
}
#fkHeroSlider .carousel-indicators .active{
  width:18px!important;
  opacity:.95!important;
}

/* Tablet */
@media(max-width:991.98px){
  #fkHeroSlider .hero-slide-image-only{
    height:350px!important;
    min-height:350px!important;
    max-height:350px!important;
  }

  #fkHeroSlider .hero-slide-image-only .hero-mini-overlay{
    left:32px!important;
    bottom:40px!important;
    width:min(360px,46vw)!important;
    padding:16px 17px!important;
  }
}

/* Mobile */
@media(max-width:575.98px){
  #fkHeroSlider .hero-slide-image-only{
    height:245px!important;
    min-height:245px!important;
    max-height:245px!important;
  }

  #fkHeroSlider .hero-slide-image-only .hero-banner-full{
    object-position:center center!important;
  }

  #fkHeroSlider .hero-slide-image-only .hero-mini-overlay{
    left:14px!important;
    bottom:28px!important;
    width:min(280px,78vw)!important;
    padding:11px 12px!important;
    gap:5px!important;
    border-radius:10px!important;
    -webkit-backdrop-filter:blur(5px)!important;
    backdrop-filter:blur(5px)!important;
  }

  #fkHeroSlider .hero-slide-image-only .hero-mini-overlay::before{
    top:10px!important;
    bottom:10px!important;
    width:2px!important;
  }

  #fkHeroSlider .hero-slide-image-only .hero-mini-title{
    font-size:.92rem!important;
    line-height:1.2!important;
  }

  #fkHeroSlider .hero-slide-image-only .hero-mini-text{
    font-size:.68rem!important;
    line-height:1.35!important;
  }

  #fkHeroSlider .hero-slide-image-only .hero-mini-button{
    min-height:30px!important;
    padding:6px 9px!important;
    font-size:.69rem!important;
  }
}


/* v9.5 — premium FKIK hero inspired by the approved visual direction */
#fkHeroSlider .hero-slide-image-only{
  height:470px!important;
  min-height:470px!important;
  max-height:470px!important;
  background:#3A0A18!important;
}
#fkHeroSlider .hero-slide-image-only .hero-banner-full{
  object-fit:cover!important;
  object-position:center center!important;
}

/* subtle left-side tonal support, not a full-photo overlay */
#fkHeroSlider .hero-slide-image-only::before{
  content:""!important;
  display:block!important;
  position:absolute!important;
  inset:0!important;
  z-index:2!important;
  pointer-events:none!important;
  background:linear-gradient(
    90deg,
    rgba(43,7,18,.35) 0%,
    rgba(43,7,18,.12) 30%,
    rgba(43,7,18,0) 55%
  )!important;
}

#fkHeroSlider .hero-premium-panel{
  position:absolute!important;
  z-index:5!important;
  left:clamp(42px,4.7vw,78px)!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  width:min(500px,42vw)!important;
  padding:25px 27px 24px!important;
  border:1px solid rgba(255,255,255,.15)!important;
  border-radius:16px!important;
  background:linear-gradient(
    145deg,
    rgba(58,9,24,.91) 0%,
    rgba(72,12,30,.84) 55%,
    rgba(95,16,40,.70) 100%
  )!important;
  -webkit-backdrop-filter:blur(9px) saturate(115%)!important;
  backdrop-filter:blur(9px) saturate(115%)!important;
  box-shadow:0 18px 45px rgba(0,0,0,.20)!important;
}

#fkHeroSlider .hero-premium-line{
  display:block!important;
  width:54px!important;
  height:3px!important;
  margin:0 0 14px!important;
  border-radius:999px!important;
  background:linear-gradient(90deg,#DD315C,#C75E78)!important;
}

#fkHeroSlider .hero-premium-title{
  max-width:440px!important;
  color:#FFFFFF!important;
  font-size:clamp(1.55rem,2.25vw,2.25rem)!important;
  line-height:1.12!important;
  font-weight:850!important;
  letter-spacing:-.035em!important;
}
#fkHeroSlider .hero-premium-text{
  max-width:430px!important;
  margin-top:12px!important;
  color:rgba(255,255,255,.89)!important;
  font-size:clamp(.82rem,.95vw,.94rem)!important;
  line-height:1.55!important;
  font-weight:450!important;
}

#fkHeroSlider .hero-premium-features{
  display:grid!important;
  grid-template-columns:repeat(3,1fr)!important;
  margin:18px 0 17px!important;
  padding:15px 0 0!important;
  border-top:1px solid rgba(255,255,255,.15)!important;
}
#fkHeroSlider .hero-premium-features>div{
  display:grid!important;
  grid-template-columns:auto 1fr!important;
  align-items:center!important;
  gap:8px!important;
  min-width:0!important;
  padding:0 11px!important;
  border-right:1px solid rgba(255,255,255,.13)!important;
}
#fkHeroSlider .hero-premium-features>div:first-child{padding-left:0!important}
#fkHeroSlider .hero-premium-features>div:last-child{
  padding-right:0!important;
  border-right:0!important;
}
#fkHeroSlider .hero-premium-features i{
  color:#DD315C!important;
  font-size:1.25rem!important;
}
#fkHeroSlider .hero-premium-features span{
  color:rgba(255,255,255,.86)!important;
  font-size:.66rem!important;
  line-height:1.25!important;
  font-weight:600!important;
}

#fkHeroSlider .hero-premium-button{
  display:inline-flex!important;
  align-items:center!important;
  gap:13px!important;
  min-height:40px!important;
  padding:8px 10px 8px 16px!important;
  border-radius:999px!important;
  background:linear-gradient(90deg,#D8325B,#C8617B)!important;
  color:#3A0A18!important;
  text-decoration:none!important;
  font-size:.82rem!important;
  font-weight:800!important;
  box-shadow:0 7px 18px rgba(0,0,0,.13)!important;
}
#fkHeroSlider .hero-premium-button i{
  display:grid!important;
  place-items:center!important;
  width:27px!important;
  height:27px!important;
  border-radius:50%!important;
  background:#FFFFFF!important;
  color:#6B112C!important;
}

/* refined carousel controls */
#fkHeroSlider .carousel-control-prev,
#fkHeroSlider .carousel-control-next{
  z-index:8!important;
  width:48px!important;
  opacity:.78!important;
}
#fkHeroSlider .carousel-control-prev-icon,
#fkHeroSlider .carousel-control-next-icon{
  width:34px!important;
  height:34px!important;
  border:1px solid rgba(255,255,255,.55)!important;
  background-color:rgba(0,0,0,.30)!important;
}
#fkHeroSlider .carousel-indicators{z-index:8!important}

/* hide obsolete v9.4 overlay if cached markup ever exists */
#fkHeroSlider .hero-mini-overlay{display:none!important}

@media(max-width:991.98px){
  #fkHeroSlider .hero-slide-image-only{
    height:390px!important;
    min-height:390px!important;
    max-height:390px!important;
  }
  #fkHeroSlider .hero-premium-panel{
    left:32px!important;
    width:min(455px,50vw)!important;
    padding:20px 21px!important;
  }
  #fkHeroSlider .hero-premium-features span{font-size:.59rem!important}
}

@media(max-width:575.98px){
  #fkHeroSlider .hero-slide-image-only{
    height:300px!important;
    min-height:300px!important;
    max-height:300px!important;
  }
  #fkHeroSlider .hero-slide-image-only::before{
    background:linear-gradient(90deg,rgba(43,7,18,.38),rgba(43,7,18,.04))!important;
  }
  #fkHeroSlider .hero-premium-panel{
    left:14px!important;
    width:min(285px,78vw)!important;
    padding:13px 14px!important;
    border-radius:12px!important;
  }
  #fkHeroSlider .hero-premium-line{
    width:38px!important;height:2px!important;margin-bottom:8px!important;
  }
  #fkHeroSlider .hero-premium-title{
    font-size:1.03rem!important;line-height:1.16!important;
  }
  #fkHeroSlider .hero-premium-text{
    margin-top:7px!important;font-size:.67rem!important;line-height:1.35!important;
  }
  #fkHeroSlider .hero-premium-features{
    margin:10px 0!important;padding-top:9px!important;
  }
  #fkHeroSlider .hero-premium-features>div{
    grid-template-columns:1fr!important;
    gap:2px!important;padding:0 6px!important;
  }
  #fkHeroSlider .hero-premium-features i{font-size:.9rem!important}
  #fkHeroSlider .hero-premium-features span{font-size:.49rem!important}
  #fkHeroSlider .hero-premium-button{
    min-height:31px!important;padding:5px 7px 5px 11px!important;font-size:.66rem!important;
  }
  #fkHeroSlider .hero-premium-button i{width:21px!important;height:21px!important}
}


/* v9.6 — shift hero content slightly left and lower */
#fkHeroSlider .hero-premium-panel{
  left:clamp(24px,3.2vw,52px)!important;
  top:54%!important;
  bottom:auto!important;
  transform:translateY(-50%)!important;
}

@media(max-width:991.98px){
  #fkHeroSlider .hero-premium-panel{
    left:24px!important;
    top:54%!important;
  }
}

@media(max-width:575.98px){
  #fkHeroSlider .hero-premium-panel{
    left:10px!important;
    top:55%!important;
  }
}


/* v9.7 — lighter green header only */
.site-topbar{
  background:linear-gradient(90deg,#6B122D 0%,#87193A 55%,#962648 100%)!important;
}

.site-navbar,
.navbar-medical{
  background:linear-gradient(
    100deg,
    #6B122D 0%,
    #801736 48%,
    #A8324F 100%
  )!important;
}

/* Keep text/logo readable on the lighter header */
.site-navbar .navbar-brand,
.site-navbar .nav-link,
.navbar-medical .navbar-brand,
.navbar-medical .nav-link{
  color:#FFFFFF!important;
}

.site-navbar .nav-link:hover,
.site-navbar .nav-link:focus,
.site-navbar .nav-link.active,
.navbar-medical .nav-link:hover,
.navbar-medical .nav-link:focus,
.navbar-medical .nav-link.active{
  color:#F2E6E9!important;
}

/* Dropdown stays clean and bright */
.site-navbar .dropdown-menu,
.navbar-medical .dropdown-menu{
  background:#FFFFFF!important;
  border-color:rgba(106,17,44,.12)!important;
}
.site-navbar .dropdown-item,
.navbar-medical .dropdown-item{
  color:#4B1B29!important;
}
.site-navbar .dropdown-item:hover,
.navbar-medical .dropdown-item:hover{
  background:#F6EFF1!important;
  color:#72122F!important;
}


/* v9.8 — ACTUAL public header selectors: brighter green */
.topbar{
  background:linear-gradient(90deg,#841637 0%,#962144 55%,#AA3552 100%)!important;
  color:#FFFFFF!important;
  border-bottom:1px solid rgba(255,255,255,.14)!important;
}
.main-nav{
  background:linear-gradient(105deg,#781432 0%,#8B1B3D 38%,#A3274C 72%,#BB4260 100%)!important;
  box-shadow:0 6px 20px rgba(88,14,36,.15)!important;
}
.main-nav .nav-link,
.main-nav .navbar-brand strong{
  color:#FFFFFF!important;
}
.main-nav .navbar-brand small{
  color:rgba(255,255,255,.86)!important;
}
.main-nav .nav-link:hover,
.main-nav .nav-link:focus,
.main-nav .nav-link.active{
  color:#F3E8EB!important;
}


/* v9.9 — header: bright left, slightly darker right */
.topbar{
  background:linear-gradient(
    90deg,
    #841637 0%,
    #921D40 42%,
    #791634 72%,
    #66112A 100%
  )!important;
}
.main-nav{
  background:linear-gradient(
    105deg,
    #8F2142 0%,
    #9F274B 38%,
    #871C3C 70%,
    #6B122D 100%
  )!important;
}


/* v10.0 — balanced header: left slightly darker, right darker */
.topbar{
  background:linear-gradient(
    90deg,
    #6F122E 0%,
    #8A1A3C 38%,
    #7C1735 70%,
    #66112A 100%
  )!important;
}
.main-nav{
  background:linear-gradient(
    105deg,
    #7C1937 0%,
    #962446 38%,
    #851C3B 70%,
    #6B122D 100%
  )!important;
}


/* v10.1 — left side darker, center remains fresh green */
.topbar{
  background:linear-gradient(
    90deg,
    #500D21 0%,
    #6B122D 24%,
    #861B3B 52%,
    #791734 74%,
    #5F1028 100%
  )!important;
}
.main-nav{
  background:linear-gradient(
    105deg,
    #530E23 0%,
    #6C122D 25%,
    #8B2040 52%,
    #7D1A38 74%,
    #5F1028 100%
  )!important;
}


/* v10.3 — compact news typography + flag language selector */
.news-slide-item .news-card h5{
  font-size:.92rem!important;
  line-height:1.38!important;
  min-height:4.14em!important;
}
.news-slide-item .news-card p{
  font-size:.79rem!important;
  line-height:1.55!important;
  min-height:6.2em!important;
}
.news-slide-item .news-card .p-4{
  padding:19px!important;
}

/* Header language trigger uses a flag instead of a long text label. */
.language-picker-btn{
  min-width:44px!important;
  padding-left:9px!important;
  padding-right:8px!important;
  justify-content:center!important;
  gap:5px!important;
}
.language-flag{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:25px;
  min-width:25px;
  font-size:1.18rem;
  line-height:1;
  font-family:"Segoe UI Emoji","Apple Color Emoji","Noto Color Emoji",sans-serif;
}
.active-language-flag{
  width:24px;
  min-width:24px;
  font-size:1.12rem;
}
.language-menu-custom .language-flag{
  margin-right:3px;
}


/* v10.4 — reliable CSS flags; no dependency on emoji fonts */
.language-flag{
  position:relative;
  display:inline-block!important;
  width:27px!important;
  min-width:27px!important;
  height:18px!important;
  flex:0 0 27px!important;
  overflow:hidden;
  border-radius:3px;
  border:1px solid rgba(255,255,255,.55);
  box-shadow:0 1px 4px rgba(0,0,0,.18);
  vertical-align:middle;
  font-size:0!important;
}
.flag-id{
  background:linear-gradient(to bottom,#E31D4E 0 50%,#FFFFFF 50% 100%)!important;
}
/* Compact UK flag approximation built entirely with CSS */
.flag-en{
  background:
    linear-gradient(33deg,transparent 43%,#FFFFFF 43% 48%,#CA194E 48% 52%,#FFFFFF 52% 57%,transparent 57%),
    linear-gradient(-33deg,transparent 43%,#FFFFFF 43% 48%,#CA194E 48% 52%,#FFFFFF 52% 57%,transparent 57%),
    linear-gradient(to right,transparent 39%,#FFFFFF 39% 45%,#CA194E 45% 55%,#FFFFFF 55% 61%,transparent 61%),
    linear-gradient(to bottom,transparent 34%,#FFFFFF 34% 42%,#CA194E 42% 58%,#FFFFFF 58% 66%,transparent 66%),
    #8B2141!important;
}
.language-menu-custom .language-flag{
  border-color:#E6D5D9;
  box-shadow:0 1px 3px rgba(0,0,0,.10);
}
.language-picker-btn .active-language-flag{
  margin:0!important;
}


/* v10.5 — label before language flag */
.language-picker-btn{
  min-width:auto!important;
  padding-left:10px!important;
  padding-right:9px!important;
  gap:7px!important;
}
.language-picker-label{
  display:inline-block;
  color:#FFFFFF;
  font-size:.68rem;
  font-weight:700;
  white-space:nowrap;
  letter-spacing:.01em;
}
@media(max-width:575.98px){
  .language-picker-label{
    font-size:.62rem;
  }
}


/* v10.7 — homepage cards and news action refinements */

/* Cards directly below hero: stronger green gradient, still clean/readable */
.quick-services .quick-card{
  background:
    radial-gradient(circle at 92% 10%,
      rgba(255,255,255,.22),
      transparent 34%),
    linear-gradient(145deg,
      color-mix(in srgb,var(--primary) 84%,#FFFFFF 16%) 0%,
      color-mix(in srgb,var(--primary) 70%,var(--secondary) 30%) 58%,
      color-mix(in srgb,var(--secondary) 82%,#FFFFFF 18%) 100%)!important;
  border-color:color-mix(in srgb,var(--primary) 58%,transparent)!important;
  color:#FFFFFF!important;
}
.quick-services .quick-card h5,
.quick-services .quick-card p,
.quick-services .quick-card small{
  color:#FFFFFF!important;
}
.quick-services .quick-card i{
  color:#FFFFFF!important;
}
.quick-services .quick-card .quick-link,
.quick-services .quick-card a{
  color:#FFFFFF!important;
}

/* Lift "Lihat Informasi" so it never sits too close to/clips at card bottom */
.quick-services .quick-card{
  padding-bottom:20px!important;
}
.quick-services .quick-card > a:last-child,
.quick-services .quick-card .quick-link{
  position:relative;
  bottom:auto!important;
  margin-top:10px!important;
  margin-bottom:4px!important;
  transform:translateY(-3px);
}

/* "Lihat Semua Berita": no box, theme-green text, right aligned */
.all-news-button{
  padding:4px 0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:var(--primary)!important;
  font-size:.78rem!important;
  font-weight:850!important;
}
.all-news-button i{
  width:auto!important;
  height:auto!important;
  display:inline-block!important;
  border-radius:0!important;
  background:transparent!important;
  color:var(--primary)!important;
  font-size:.9rem!important;
}
.all-news-button:hover{
  background:transparent!important;
  box-shadow:none!important;
  transform:none!important;
  color:var(--theme-deep)!important;
}
.all-news-button:hover i{
  color:var(--theme-deep)!important;
  transform:translateX(3px)!important;
}

/* Keep the news action on the right on desktop AND mobile. */
.home-news-heading{
  width:100%!important;
}
.home-news-heading .all-news-button{
  margin-left:auto!important;
  align-self:flex-end!important;
}
@media(max-width:991.98px){
  .home-news-heading{
    display:flex!important;
    flex-direction:row!important;
    align-items:flex-end!important;
    justify-content:space-between!important;
    gap:12px!important;
  }
  .home-news-heading>div{
    min-width:0;
    flex:1 1 auto;
  }
  .home-news-heading .all-news-button{
    flex:0 0 auto;
    margin-left:auto!important;
    align-self:flex-end!important;
    text-align:right!important;
  }
}
@media(max-width:575.98px){
  .quick-services .quick-card{
    padding-bottom:18px!important;
  }
  .quick-services .quick-card > a:last-child,
  .quick-services .quick-card .quick-link{
    margin-top:8px!important;
    margin-bottom:5px!important;
    transform:translateY(-5px);
  }
  .home-news-heading{
    flex-direction:row!important;
    align-items:flex-end!important;
  }
  .home-news-heading>div>p{
    display:none;
  }
  .home-news-heading .all-news-button{
    margin-left:auto!important;
    padding-bottom:3px!important;
    white-space:nowrap;
    font-size:.72rem!important;
  }
}


/* v10.8 — restore contrast on green quick-service cards */
.quick-services .quick-card > i{
  background:rgba(255,255,255,.14)!important;
  border:1px solid rgba(255,255,255,.28)!important;
  color:#FFFFFF!important;
  box-shadow:none!important;
}
.quick-services .quick-card > b{
  color:#FFFFFF!important;
}
.quick-services .quick-card > span{
  color:rgba(255,255,255,.88)!important;
}
.quick-services .quick-card .quick-card-more,
.quick-services .quick-card .quick-card-more i{
  color:#FFFFFF!important;
}
.quick-services .quick-card .quick-card-more{
  margin-top:auto!important;
  margin-bottom:5px!important;
  transform:translateY(-4px)!important;
}

/* Mobile: keep content safely inside the card */
@media(max-width:575.98px){
  .quick-services .quick-card > i{
    background:rgba(255,255,255,.15)!important;
    color:#FFFFFF!important;
  }
  .quick-services .quick-card > b{
    color:#FFFFFF!important;
  }
  .quick-services .quick-card > span{
    color:rgba(255,255,255,.88)!important;
  }
  .quick-services .quick-card .quick-card-more{
    color:#FFFFFF!important;
    margin-bottom:8px!important;
    transform:translateY(-6px)!important;
  }
  .quick-services .quick-card .quick-card-more i{
    color:#FFFFFF!important;
  }
}


/* v10.9 — keep quick cards green on hover + solid green all-news button */
.quick-services .quick-card:hover{
  background:
    radial-gradient(circle at 92% 10%,
      rgba(255,255,255,.27),
      transparent 34%),
    linear-gradient(145deg,
      color-mix(in srgb,var(--primary) 88%,#FFFFFF 12%) 0%,
      color-mix(in srgb,var(--primary) 74%,var(--secondary) 26%) 58%,
      color-mix(in srgb,var(--secondary) 86%,#FFFFFF 14%) 100%)!important;
  border-color:rgba(255,255,255,.34)!important;
  box-shadow:0 16px 32px color-mix(in srgb,var(--primary) 24%,transparent)!important;
  color:#FFFFFF!important;
}
.quick-services .quick-card:hover > i{
  background:rgba(255,255,255,.20)!important;
  border-color:rgba(255,255,255,.34)!important;
  color:#FFFFFF!important;
}
.quick-services .quick-card:hover > b{
  color:#FFFFFF!important;
}
.quick-services .quick-card:hover > span{
  color:rgba(255,255,255,.91)!important;
}
.quick-services .quick-card:hover .quick-card-more,
.quick-services .quick-card:hover .quick-card-more i{
  color:#FFFFFF!important;
}

/* Restore a compact solid-green action button for all news. */
.all-news-button{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  padding:9px 14px!important;
  border:1px solid var(--primary)!important;
  border-radius:10px!important;
  background:linear-gradient(135deg,var(--theme-deep),var(--primary))!important;
  color:#FFFFFF!important;
  box-shadow:0 6px 16px color-mix(in srgb,var(--primary) 18%,transparent)!important;
  font-size:.75rem!important;
  font-weight:800!important;
  text-decoration:none!important;
}
.all-news-button i{
  width:auto!important;
  height:auto!important;
  display:inline-block!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:#FFFFFF!important;
  font-size:.85rem!important;
}
.all-news-button:hover{
  background:linear-gradient(135deg,var(--primary),var(--secondary))!important;
  border-color:var(--primary)!important;
  color:#FFFFFF!important;
  box-shadow:0 9px 20px color-mix(in srgb,var(--primary) 25%,transparent)!important;
  transform:translateY(-1px)!important;
}
.all-news-button:hover i{
  color:#FFFFFF!important;
  transform:translateX(3px)!important;
}
@media(max-width:575.98px){
  .home-news-heading .all-news-button{
    margin-left:auto!important;
    align-self:flex-end!important;
    padding:8px 11px!important;
    color:#FFFFFF!important;
    font-size:.68rem!important;
  }
  .home-news-heading .all-news-button i{
    color:#FFFFFF!important;
  }
}


/* v11.0 — brighter all-news button + force white text against legacy link rules */
a.all-news-button,
a.all-news-button:link,
a.all-news-button:visited,
a.all-news-button:active,
a.all-news-button:focus{
  background:linear-gradient(135deg,#A8274E 0%,#BD395A 100%)!important;
  border-color:#BD395A!important;
  color:#FFFFFF!important;
  text-decoration:none!important;
}
a.all-news-button span,
a.all-news-button i,
a.all-news-button:link span,
a.all-news-button:visited span,
a.all-news-button:focus span,
a.all-news-button:active span{
  color:#FFFFFF!important;
}
a.all-news-button:hover{
  background:linear-gradient(135deg,#B93153 0%,#CB4A6A 100%)!important;
  border-color:#CB4A6A!important;
  color:#FFFFFF!important;
}
a.all-news-button:hover span,
a.all-news-button:hover i{
  color:#FFFFFF!important;
}


/* v11.8 — Berita Fakultas: 6-column cards (2 per row) + tighter read-more spacing */
@media(min-width:992px){
  .home-news-track .news-slide-item{
    flex:0 0 calc(50% - 9px)!important;
  }
}

/* Remove artificial tall-card spacing that pushed the CTA to the bottom. */
.home-news-track .news-slide-item .news-card{
  min-height:0!important;
  height:auto!important;
}
.home-news-track .news-slide-item .news-card .p-4{
  flex:1 1 auto!important;
}
.home-news-track .news-slide-item .news-card p{
  min-height:0!important;
  margin-bottom:0!important;
  -webkit-line-clamp:4!important;
}
.home-news-track .news-slide-item .news-card .home-news-read,
.home-news-track .news-slide-item .news-card .p-4 > a{
  margin-top:12px!important;
  align-self:flex-start!important;
}

/* Keep cards balanced and compact on tablet/mobile too. */
@media(max-width:991.98px){
  .home-news-track .news-slide-item .news-card{
    min-height:0!important;
  }
  .home-news-track .news-slide-item .news-card .home-news-read{
    margin-top:10px!important;
  }
}




/* v12.0 — restore balanced homepage news + sidebar, keep 6 latest news in slider */
.home-news-main-column,
.home-latest-column{
  display:block!important;
}

.home-news-shell{
  overflow:hidden!important;
}

.home-news-track{
  display:flex!important;
  gap:16px!important;
  overflow-x:auto!important;
  scroll-snap-type:x mandatory!important;
  scroll-behavior:smooth!important;
  scrollbar-width:none!important;
  padding-bottom:2px!important;
}
.home-news-track::-webkit-scrollbar{
  display:none!important;
}

@media(min-width:1200px){
  .home-news-track .news-slide-item{
    flex:0 0 calc((100% - 32px)/3)!important;
    width:calc((100% - 32px)/3)!important;
    min-width:calc((100% - 32px)/3)!important;
    scroll-snap-align:start!important;
  }
}

@media(min-width:992px) and (max-width:1199.98px){
  .home-news-track .news-slide-item{
    flex:0 0 calc((100% - 16px)/2)!important;
    width:calc((100% - 16px)/2)!important;
    min-width:calc((100% - 16px)/2)!important;
    scroll-snap-align:start!important;
  }
}

@media(min-width:576px) and (max-width:991.98px){
  .home-news-track .news-slide-item{
    flex:0 0 calc((100% - 16px)/2)!important;
    width:calc((100% - 16px)/2)!important;
    min-width:calc((100% - 16px)/2)!important;
    scroll-snap-align:start!important;
  }
}

@media(max-width:575.98px){
  .home-news-track .news-slide-item{
    flex:0 0 88%!important;
    width:88%!important;
    min-width:88%!important;
    scroll-snap-align:start!important;
  }
}

/* Compact cards without shrinking them excessively */
.home-news-track .news-card{
  height:100%!important;
  min-height:0!important;
}
.home-news-track .home-news-image-wrap{
  height:210px!important;
}
.home-news-track .news-card .p-4{
  padding:18px!important;
}
.home-news-track .news-card h5{
  font-size:.96rem!important;
  line-height:1.42!important;
  min-height:4.1em!important;
}
.home-news-track .news-card p{
  font-size:.82rem!important;
  line-height:1.56!important;
  min-height:0!important;
  margin-bottom:0!important;
  display:-webkit-box!important;
  -webkit-line-clamp:4!important;
  -webkit-box-orient:vertical!important;
  overflow:hidden!important;
}
.home-news-track .home-news-read{
  margin-top:12px!important;
  font-size:.82rem!important;
}

/* Restore slider arrows and sidebar widget */
.home-news-shell > .home-slider-nav{
  display:flex!important;
}
.home-latest-column .home-latest-news-widget{
  display:block!important;
}

@media(max-width:991.98px){
  .home-latest-column{
    margin-top:20px!important;
  }
  .home-news-track .home-news-image-wrap{
    height:190px!important;
  }
}

@media(max-width:575.98px){
  .home-news-track .home-news-image-wrap{
    height:200px!important;
  }
  .home-news-track .news-card .p-4{
    padding:16px!important;
  }
}


/* v12.1 — restore premium public-document card/thumbnail */
.document-preview-track{
  min-height:350px!important;
  gap:16px!important;
}
.document-preview-item{
  flex:0 0 260px!important;
  border:1px solid color-mix(in srgb,var(--primary) 18%,#EDE9EA 82%)!important;
  border-radius:16px!important;
  background:#FFFFFF!important;
  overflow:hidden!important;
  box-shadow:0 8px 22px rgba(67,23,36,.07)!important;
  transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease!important;
}
.document-preview-item:hover{
  transform:translateY(-4px)!important;
  border-color:color-mix(in srgb,var(--primary) 36%,#E7E1E2 64%)!important;
  box-shadow:0 15px 32px rgba(67,23,36,.13)!important;
}

.document-card-cover{
  position:relative!important;
  height:225px!important;
  padding:18px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:space-between!important;
  color:#FFFFFF!important;
  overflow:hidden!important;
  background:
    radial-gradient(circle at 88% 12%,rgba(255,255,255,.20),transparent 28%),
    linear-gradient(145deg,var(--theme-deep) 0%,var(--primary) 58%,var(--secondary) 100%)!important;
}
.document-card-cover::before{
  content:""!important;
  position:absolute!important;
  width:150px!important;
  height:150px!important;
  right:-58px!important;
  bottom:-72px!important;
  border:1px solid rgba(255,255,255,.16)!important;
  border-radius:50%!important;
}
.document-card-cover::after{
  content:""!important;
  position:absolute!important;
  width:92px!important;
  height:92px!important;
  right:-18px!important;
  bottom:-38px!important;
  border:1px solid rgba(255,255,255,.12)!important;
  border-radius:50%!important;
}
.document-cover-top,
.document-cover-body,
.document-cover-footer{
  position:relative!important;
  z-index:2!important;
}
.document-cover-top{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
}
.document-cover-icon{
  width:42px!important;
  height:42px!important;
  border-radius:12px!important;
  display:grid!important;
  place-items:center!important;
  background:rgba(255,255,255,.16)!important;
  border:1px solid rgba(255,255,255,.26)!important;
  color:#FFFFFF!important;
  font-size:1.2rem!important;
}
.document-cover-badge{
  max-width:145px!important;
  padding:6px 9px!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.94)!important;
  color:var(--theme-deep)!important;
  font-size:.56rem!important;
  line-height:1.15!important;
  font-weight:850!important;
  text-transform:uppercase!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.document-cover-body small{
  display:block!important;
  margin-bottom:7px!important;
  color:rgba(255,255,255,.78)!important;
  font-size:.55rem!important;
  font-weight:800!important;
  letter-spacing:.14em!important;
}
.document-cover-body strong{
  display:-webkit-box!important;
  -webkit-line-clamp:3!important;
  -webkit-box-orient:vertical!important;
  overflow:hidden!important;
  margin-bottom:8px!important;
  color:#FFFFFF!important;
  font-size:.88rem!important;
  line-height:1.35!important;
  font-weight:850!important;
}
.document-cover-body span{
  display:block!important;
  color:rgba(255,255,255,.82)!important;
  font-size:.58rem!important;
  line-height:1.45!important;
}
.document-cover-footer{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  color:rgba(255,255,255,.84)!important;
  font-size:.56rem!important;
  font-weight:750!important;
}
.document-cover-footer>i{
  color:#FFFFFF!important;
  font-size:1.28rem!important;
}
.document-preview-info{
  padding:14px 14px 15px!important;
  background:#FFFFFF!important;
}
.document-preview-info>small{
  margin-bottom:4px!important;
  font-size:.58rem!important;
  font-weight:850!important;
}
.document-preview-info h6{
  min-height:38px!important;
  margin:4px 0 10px!important;
  color:#4C1B2A!important;
  font-size:.78rem!important;
  line-height:1.42!important;
  font-weight:850!important;
  display:-webkit-box!important;
  -webkit-line-clamp:2!important;
  -webkit-box-orient:vertical!important;
  overflow:hidden!important;
}
.document-actions{
  display:flex!important;
  gap:8px!important;
}
.document-actions a{
  min-height:32px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:5px!important;
  border-radius:8px!important;
  font-size:.62rem!important;
  font-weight:850!important;
}
.document-actions a:first-child{
  background:var(--theme-soft)!important;
}
.document-actions a:hover{
  background:linear-gradient(135deg,var(--theme-deep),var(--primary))!important;
  color:#FFFFFF!important;
}

@media(max-width:575.98px){
  .document-preview-item{
    flex-basis:235px!important;
  }
  .document-card-cover{
    height:205px!important;
    padding:15px!important;
  }
}


/* v12.2 — prevent right-most public document card from being clipped */
.flat-slider-shell{
  position:relative!important;
  overflow:visible!important;
}

.document-preview-track{
  box-sizing:border-box!important;
  width:100%!important;
  max-width:100%!important;
  overflow-x:auto!important;
  overflow-y:visible!important;
  padding-left:4px!important;
  padding-right:22px!important;
  scroll-padding-left:4px!important;
  scroll-padding-right:22px!important;
}

.document-preview-track .document-preview-item{
  flex-shrink:0!important;
}

@media(min-width:992px){
  .document-preview-track{
    padding-right:28px!important;
  }
}

@media(max-width:575.98px){
  .document-preview-track{
    padding-left:2px!important;
    padding-right:18px!important;
  }
}


/* v12.3 — public documents: full cards only, no clipped card at right */
.document-preview-track{
  gap:16px!important;
  padding-left:2px!important;
  padding-right:2px!important;
  scroll-padding-left:2px!important;
  scroll-padding-right:2px!important;
}

@media(min-width:1200px){
  .document-preview-track .document-preview-item{
    flex:0 0 calc((100% - 32px)/3)!important;
    width:calc((100% - 32px)/3)!important;
    min-width:calc((100% - 32px)/3)!important;
    max-width:calc((100% - 32px)/3)!important;
  }
}

@media(min-width:768px) and (max-width:1199.98px){
  .document-preview-track .document-preview-item{
    flex:0 0 calc((100% - 16px)/2)!important;
    width:calc((100% - 16px)/2)!important;
    min-width:calc((100% - 16px)/2)!important;
    max-width:calc((100% - 16px)/2)!important;
  }
}

@media(max-width:767.98px){
  .document-preview-track .document-preview-item{
    flex:0 0 100%!important;
    width:100%!important;
    min-width:100%!important;
    max-width:100%!important;
  }
}

/* Force cover icons to remain visible over green background */
.document-card-cover .document-cover-icon,
.document-card-cover .document-cover-icon i,
.document-card-cover .document-cover-footer,
.document-card-cover .document-cover-footer i,
.document-card-cover .document-cover-footer span,
.document-card-cover .document-cover-footer span i{
  color:#FFFFFF!important;
}

.document-card-cover .document-cover-icon i{
  display:inline-block!important;
  opacity:1!important;
  visibility:visible!important;
  font-size:1.35rem!important;
  line-height:1!important;
}

.document-card-cover .document-cover-footer>i{
  display:inline-block!important;
  opacity:1!important;
  visibility:visible!important;
  font-size:1.4rem!important;
}






/* v12.6 — secondary news aligned with main news, 3 cards per row + subtle animation */
.home-news-mini-grid{
  width:100%;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  margin-top:18px;
  align-items:stretch;
}

.home-news-mini-item{
  position:relative;
  min-width:0;
  min-height:150px;
  display:flex;
  flex-direction:column;
  overflow:hidden;
  border:1px solid var(--theme-border);
  border-radius:15px;
  background:#FFFFFF;
  color:inherit;
  text-decoration:none;
  box-shadow:0 5px 16px rgba(65,23,36,.055);
  transition:
    transform .28s ease,
    box-shadow .28s ease,
    border-color .28s ease;
}

.home-news-mini-item::after{
  content:"";
  position:absolute;
  inset:auto -32px -48px auto;
  width:105px;
  height:105px;
  border-radius:50%;
  background:color-mix(in srgb,var(--primary) 7%,transparent);
  transition:transform .35s ease,opacity .35s ease;
  pointer-events:none;
}

.home-news-mini-item:hover{
  transform:translateY(-5px);
  border-color:color-mix(in srgb,var(--primary) 34%,#E7E1E2 66%);
  box-shadow:0 14px 28px rgba(65,23,36,.12);
}

.home-news-mini-item:hover::after{
  transform:scale(1.18);
  opacity:.9;
}

.home-news-mini-thumb{
  width:100%;
  height:135px;
  min-width:0;
  overflow:hidden;
  border-radius:0;
  background:var(--theme-soft);
}

.home-news-mini-thumb img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  transition:transform .45s ease,filter .45s ease;
}

.home-news-mini-item:hover .home-news-mini-thumb img{
  transform:scale(1.055);
  filter:saturate(1.04);
}

.home-news-mini-placeholder{
  width:100%;
  height:100%;
  display:grid;
  place-items:center;
  color:var(--primary);
  font-size:1.45rem;
}

.home-news-mini-copy{
  position:relative;
  z-index:1;
  min-width:0;
  display:flex;
  flex:1;
  flex-direction:column;
  padding:13px 14px 14px;
}

.home-news-mini-copy small{
  display:flex;
  align-items:center;
  gap:5px;
  margin-bottom:7px;
  color:var(--primary);
  font-size:.62rem;
  font-weight:750;
}

.home-news-mini-copy strong{
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
  color:#571E2F;
  font-size:.80rem;
  line-height:1.42;
  font-weight:850;
}

.home-news-mini-copy span{
  display:inline-flex;
  align-items:center;
  gap:5px;
  margin-top:auto;
  padding-top:10px;
  color:var(--primary);
  font-size:.63rem;
  font-weight:850;
}

.home-news-mini-copy span i{
  transition:transform .25s ease;
}

.home-news-mini-item:hover .home-news-mini-copy span i{
  transform:translateX(4px);
}

/* entrance animation */
@keyframes miniNewsFadeUp{
  from{
    opacity:0;
    transform:translateY(16px);
  }
  to{
    opacity:1;
    transform:translateY(0);
  }
}

.mini-news-reveal{
  opacity:0;
  animation:miniNewsFadeUp .55s ease forwards;
}

.home-news-mini-grid .mini-news-reveal:nth-child(1){animation-delay:.04s}
.home-news-mini-grid .mini-news-reveal:nth-child(2){animation-delay:.10s}
.home-news-mini-grid .mini-news-reveal:nth-child(3){animation-delay:.16s}
.home-news-mini-grid .mini-news-reveal:nth-child(4){animation-delay:.22s}
.home-news-mini-grid .mini-news-reveal:nth-child(5){animation-delay:.28s}
.home-news-mini-grid .mini-news-reveal:nth-child(6){animation-delay:.34s}

@media(prefers-reduced-motion:reduce){
  .mini-news-reveal{
    opacity:1!important;
    animation:none!important;
  }
  .home-news-mini-item,
  .home-news-mini-thumb img,
  .home-news-mini-copy span i{
    transition:none!important;
  }
}

@media(min-width:768px) and (max-width:1199.98px){
  .home-news-mini-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .home-news-mini-thumb{
    height:150px;
  }
}

@media(max-width:767.98px){
  .home-news-mini-grid{
    grid-template-columns:1fr;
    gap:12px;
  }
  .home-news-mini-thumb{
    height:190px;
  }
}

@media(max-width:575.98px){
  .home-news-mini-grid{
    margin-top:14px;
  }
  .home-news-mini-thumb{
    height:165px;
  }
  .home-news-mini-copy{
    padding:12px 13px 13px;
  }
  .home-news-mini-copy strong{
    font-size:.77rem;
  }
}


/* v12.7 — align lower news cards exactly with main news track */
@media(min-width:1200px){
  .home-news-mini-grid{
    width:calc(100% - 68px)!important;
    margin-left:34px!important;
    margin-right:34px!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:16px!important;
  }
}

@media(min-width:992px) and (max-width:1199.98px){
  .home-news-mini-grid{
    width:calc(100% - 56px)!important;
    margin-left:28px!important;
    margin-right:28px!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}

@media(max-width:991.98px){
  .home-news-mini-grid{
    width:100%!important;
    margin-left:0!important;
    margin-right:0!important;
  }
}

/* Keep all lower cards visually balanced */
.home-news-mini-item{
  height:100%!important;
}
.home-news-mini-copy strong{
  min-height:2.85em!important;
}
.home-news-mini-copy span{
  margin-top:auto!important;
}

/* divider between Berita/Agenda and Program Studi */
.section-transition-divider{
  width:min(1120px,calc(100% - 32px));
  margin:6px auto 8px;
  display:grid;
  grid-template-columns:1fr auto 1fr;
  align-items:center;
  gap:12px;
}
.section-transition-divider span{
  display:block;
  height:1px;
  background:linear-gradient(
    90deg,
    transparent 0%,
    color-mix(in srgb,var(--primary) 28%,transparent) 22%,
    color-mix(in srgb,var(--primary) 52%,transparent) 100%
  );
}
.section-transition-divider span:last-child{
  transform:scaleX(-1);
}
.section-transition-divider i{
  width:30px;
  height:30px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:linear-gradient(135deg,var(--theme-deep),var(--primary),var(--secondary));
  color:#FFFFFF!important;
  font-size:.72rem;
  box-shadow:0 6px 16px color-mix(in srgb,var(--primary) 18%,transparent);
}

@media(max-width:575.98px){
  .section-transition-divider{
    width:calc(100% - 24px);
    gap:8px;
    margin-top:2px;
  }
  .section-transition-divider i{
    width:26px;
    height:26px;
    font-size:.62rem;
  }
}


/* v12.8 — clearer green divider before news + boxed news section */
.pre-news-divider{
  margin-top:8px!important;
  margin-bottom:16px!important;
}
.pre-news-divider span{
  height:2px!important;
  background:linear-gradient(
    90deg,
    transparent 0%,
    color-mix(in srgb,var(--primary) 42%,transparent) 18%,
    color-mix(in srgb,var(--primary) 78%,transparent) 100%
  )!important;
}
.pre-news-divider i{
  width:38px!important;
  height:38px!important;
  background:linear-gradient(135deg,var(--theme-deep),var(--primary),var(--secondary))!important;
  color:#FFFFFF!important;
  border:3px solid #FFFFFF!important;
  box-shadow:0 7px 18px color-mix(in srgb,var(--primary) 24%,transparent)!important;
  font-size:.92rem!important;
}

.home-news-agenda-section{
  padding-top:18px!important;
}

.home-news-section-box{
  width:min(1180px,calc(100% - 24px));
  margin:0 auto;
  padding:28px 26px 26px;
  border:1px solid color-mix(in srgb,var(--primary) 20%,#EDE8E9 80%);
  border-radius:22px;
  background:
    radial-gradient(circle at 95% 4%, color-mix(in srgb,var(--primary) 7%,transparent), transparent 26%),
    linear-gradient(180deg,#FFFFFF 0%,#FDFCFC 100%);
  box-shadow:
    0 14px 34px rgba(72,22,37,.07),
    inset 0 1px 0 rgba(255,255,255,.85);
}

.home-news-section-box > .container{
  padding-left:0!important;
  padding-right:0!important;
}

.home-news-section-box .section-heading{
  margin-bottom:20px!important;
}

.home-news-section-box .home-news-shell,
.home-news-section-box .home-latest-news-widget,
.home-news-section-box .home-agenda-panel{
  position:relative;
  z-index:1;
}

@media(max-width:991.98px){
  .home-news-section-box{
    width:calc(100% - 20px);
    padding:22px 18px 20px;
    border-radius:18px;
  }
}

@media(max-width:575.98px){
  .pre-news-divider{
    margin-bottom:12px!important;
  }
  .pre-news-divider i{
    width:32px!important;
    height:32px!important;
    font-size:.78rem!important;
  }
  .home-news-section-box{
    width:calc(100% - 14px);
    padding:17px 12px 16px;
    border-radius:16px;
  }
}


/* v12.9 — widen the complete Berita Fakultas box */
.home-news-section-box{
  width:min(1380px,calc(100% - 32px))!important;
  max-width:1380px!important;
  padding-left:30px!important;
  padding-right:30px!important;
}

@media(min-width:1440px){
  .home-news-section-box{
    width:min(1460px,calc(100% - 40px))!important;
    max-width:1460px!important;
  }
}

@media(min-width:992px) and (max-width:1199.98px){
  .home-news-section-box{
    width:calc(100% - 24px)!important;
    padding-left:22px!important;
    padding-right:22px!important;
  }
}

@media(max-width:991.98px){
  .home-news-section-box{
    width:calc(100% - 18px)!important;
    padding-left:16px!important;
    padding-right:16px!important;
  }
}

@media(max-width:575.98px){
  .home-news-section-box{
    width:calc(100% - 10px)!important;
    padding-left:10px!important;
    padding-right:10px!important;
  }
}


/* v13.0 — restore floating accessibility widget */
.accessibility-widget{
  position:fixed!important;
  left:18px!important;
  bottom:78px!important;
  z-index:9998!important;
  font-size:1rem!important;
}
.accessibility-toggle{
  width:50px!important;
  height:50px!important;
  display:grid!important;
  place-items:center!important;
  border:0!important;
  border-radius:50%!important;
  background:linear-gradient(135deg,var(--theme-deep),var(--primary),var(--secondary))!important;
  color:#FFFFFF!important;
  box-shadow:0 10px 24px rgba(86,15,36,.26)!important;
  cursor:pointer!important;
}
.accessibility-toggle i{
  color:#FFFFFF!important;
  font-size:1.48rem!important;
}
.accessibility-panel{
  position:absolute!important;
  left:0!important;
  bottom:60px!important;
  width:278px!important;
  padding:14px!important;
  border:1px solid var(--theme-border)!important;
  border-radius:16px!important;
  background:#FFFFFF!important;
  box-shadow:0 16px 36px rgba(62,22,34,.18)!important;
  opacity:0!important;
  visibility:hidden!important;
  transform:translateY(8px)!important;
  transition:.2s ease!important;
}
.accessibility-widget.open .accessibility-panel{
  opacity:1!important;
  visibility:visible!important;
  transform:translateY(0)!important;
}
.accessibility-head{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  margin-bottom:12px!important;
}
.accessibility-head small{
  display:block!important;
  color:var(--primary)!important;
  font-size:.58rem!important;
  font-weight:850!important;
  letter-spacing:.08em!important;
}
.accessibility-head strong{
  display:block!important;
  color:#4C1B2A!important;
  font-size:.82rem!important;
}
.accessibility-close{
  width:30px!important;
  height:30px!important;
  display:grid!important;
  place-items:center!important;
  border:1px solid #EAE5E6!important;
  border-radius:8px!important;
  background:#FFFFFF!important;
  color:#6F8076!important;
}
.accessibility-actions{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:8px!important;
}
.accessibility-actions button{
  min-height:66px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:6px!important;
  padding:8px!important;
  border:1px solid var(--theme-border)!important;
  border-radius:11px!important;
  background:var(--theme-soft)!important;
  color:#652337!important;
  font-size:.62rem!important;
  font-weight:800!important;
}
.accessibility-actions button:hover{
  border-color:var(--primary)!important;
  background:#FFFFFF!important;
  color:var(--primary)!important;
}
.accessibility-actions button i{
  color:var(--primary)!important;
  font-size:1rem!important;
}

body{
  font-size:calc(1rem * var(--access-font-scale,1));
}
body.access-readable-font,
body.access-readable-font *{
  font-family:Arial,Helvetica,sans-serif!important;
}
body.access-grayscale{
  filter:grayscale(1);
}
body.access-high-contrast{
  background:#000000!important;
  color:#FFFFFF!important;
}
body.access-high-contrast main,
body.access-high-contrast section,
body.access-high-contrast .card,
body.access-high-contrast .admin-card{
  background:#000000!important;
  color:#FFFFFF!important;
}

/* Divider and label for previous-news block */
.previous-news-divider{
  width:calc(100% - 68px);
  margin:20px 34px 14px;
  display:grid;
  grid-template-columns:1fr auto 1fr;
  align-items:center;
  gap:12px;
}
.previous-news-divider>span{
  height:2px;
  border-radius:999px;
  background:linear-gradient(
    90deg,
    transparent 0%,
    color-mix(in srgb,var(--primary) 34%,transparent) 18%,
    color-mix(in srgb,var(--primary) 72%,transparent) 100%
  );
}
.previous-news-divider>span:last-child{
  transform:scaleX(-1);
}
.previous-news-label{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:8px 14px;
  border:1px solid color-mix(in srgb,var(--primary) 22%,#EBE6E7 78%);
  border-radius:999px;
  background:linear-gradient(135deg,#FBF9F9,#F6F0F2);
  color:var(--primary);
  box-shadow:0 5px 14px rgba(79,24,40,.07);
}
.previous-news-label i{
  color:var(--primary)!important;
  font-size:.8rem;
}
.previous-news-label strong{
  font-size:.68rem;
  font-weight:850;
  letter-spacing:.02em;
}

@media(max-width:991.98px){
  .previous-news-divider{
    width:100%;
    margin-left:0;
    margin-right:0;
  }
}
@media(max-width:575.98px){
  .accessibility-widget{
    left:12px!important;
    bottom:72px!important;
  }
  .accessibility-toggle{
    width:46px!important;
    height:46px!important;
  }
  .accessibility-panel{
    width:min(274px,calc(100vw - 24px))!important;
  }
  .previous-news-divider{
    gap:8px;
    margin-top:16px;
  }
  .previous-news-label{
    padding:7px 11px;
  }
  .previous-news-label strong{
    font-size:.62rem;
  }
}


/* v13.1 — YouTube sidebar widget */
.home-youtube-widget{
  margin-top:18px;
  overflow:hidden;
  border:1px solid color-mix(in srgb,var(--primary) 18%,#EDE7E9 82%);
  border-radius:16px;
  background:#FFFFFF;
  box-shadow:0 8px 22px rgba(65,23,36,.06);
}
.home-youtube-head{
  display:flex;
  align-items:center;
  gap:10px;
  padding:13px 14px;
  border-bottom:1px solid #F1EEEF;
  background:linear-gradient(135deg,#FBF9F9,#F6F0F2);
}
.home-youtube-icon{
  width:38px;
  height:38px;
  display:grid;
  place-items:center;
  flex:0 0 38px;
  border-radius:11px;
  background:#E11C4D;
  color:#FFFFFF;
  box-shadow:0 5px 12px rgba(225,28,77,.18);
}
.home-youtube-icon i{
  color:#FFFFFF!important;
  font-size:1.15rem;
}
.home-youtube-head span{
  display:block;
  color:var(--primary);
  font-size:.52rem;
  font-weight:850;
  letter-spacing:.08em;
}
.home-youtube-head h4{
  margin:1px 0 0;
  color:#4C1B2A;
  font-size:.88rem;
  font-weight:850;
}
.home-youtube-video{
  position:relative;
  width:100%;
  aspect-ratio:16/9;
  background:#101010;
}
.home-youtube-video iframe{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  border:0;
}
.home-youtube-caption{
  padding:11px 13px 12px;
}
.home-youtube-caption strong{
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
  color:#511C2C;
  font-size:.72rem;
  line-height:1.4;
  font-weight:850;
}
.home-youtube-caption span{
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
  margin-top:5px;
  color:#728078;
  font-size:.6rem;
  line-height:1.45;
}
.home-youtube-controls{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:8px 12px 10px;
  border-top:1px solid #F1EEEF;
}
.home-youtube-controls button{
  width:29px;
  height:29px;
  display:grid;
  place-items:center;
  border:1px solid var(--theme-border);
  border-radius:50%;
  background:#FFFFFF;
  color:var(--primary);
}
.home-youtube-controls span{
  display:inline-flex;
  align-items:center;
  gap:5px;
  color:#E11C4D;
  font-size:.58rem;
  font-weight:850;
}
.home-youtube-controls span i{
  color:#E11C4D!important;
}
.home-youtube-empty{
  padding:24px 15px;
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
}
.home-youtube-empty>i{
  margin-bottom:8px;
  color:#E11C4D!important;
  font-size:1.7rem;
}
.home-youtube-empty strong{
  color:#642337;
  font-size:.72rem;
}
.home-youtube-empty span{
  margin-top:4px;
  color:#7B8981;
  font-size:.6rem;
  line-height:1.45;
}

/* labeled separator after Berita: Visi Misi dan Program Studi */
.section-labeled-divider{
  width:min(1380px,calc(100% - 32px));
  margin:10px auto 12px;
  display:grid;
  grid-template-columns:1fr auto 1fr;
  align-items:center;
  gap:16px;
}
.section-labeled-divider>span{
  height:2px;
  border-radius:999px;
  background:linear-gradient(
    90deg,
    transparent 0%,
    color-mix(in srgb,var(--primary) 44%,transparent) 18%,
    color-mix(in srgb,var(--primary) 82%,transparent) 100%
  );
}
.section-labeled-divider>span:last-child{
  transform:scaleX(-1);
}
.section-labeled-divider-title{
  display:flex;
  align-items:center;
  gap:10px;
  padding:9px 16px 9px 10px;
  border:1px solid color-mix(in srgb,var(--primary) 24%,#EBE5E7 76%);
  border-radius:999px;
  background:linear-gradient(135deg,#FFFFFF,#F6EFF1);
  box-shadow:0 6px 16px rgba(78,24,40,.08);
}
.section-labeled-divider-title>i{
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:linear-gradient(135deg,var(--theme-deep),var(--primary));
  color:#FFFFFF!important;
  font-size:.84rem;
}
.section-labeled-divider-title small{
  display:block;
  color:var(--primary);
  font-size:.5rem;
  font-weight:850;
  letter-spacing:.08em;
}
.section-labeled-divider-title strong{
  display:block;
  margin-top:1px;
  color:#541E2E;
  font-size:.72rem;
  font-weight:850;
}

@media(max-width:575.98px){
  .section-labeled-divider{
    width:calc(100% - 20px);
    gap:8px;
  }
  .section-labeled-divider-title{
    padding:7px 10px 7px 7px;
  }
  .section-labeled-divider-title>i{
    width:30px;
    height:30px;
    font-size:.72rem;
  }
  .section-labeled-divider-title strong{
    font-size:.62rem;
  }
  .section-labeled-divider-title small{
    font-size:.45rem;
  }
}


/* v13.2 — prominent Visi, Misi and Program Studi showcase */
.academic-showcase-section{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 8% 12%,rgba(178,54,85,.10),transparent 27%),
    radial-gradient(circle at 94% 88%,rgba(107,18,45,.08),transparent 24%),
    linear-gradient(180deg,#FAF7F8 0%,#F6EFF1 100%)!important;
}
.academic-showcase{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:20px;
}
.academic-vision-card,
.academic-mission-card,
.academic-program-card,
.academic-announcement-card{
  position:relative;
  overflow:hidden;
  border:1px solid rgba(107,18,45,.14);
  border-radius:22px;
  background:#FFFFFF;
  box-shadow:0 14px 34px rgba(75,18,35,.07);
}
.academic-vision-card,
.academic-mission-card{
  padding:24px;
}
.academic-vision-card{
  background:
    radial-gradient(circle at 100% 0%,rgba(186,61,92,.13),transparent 36%),
    #FFFFFF;
}
.academic-mission-card{
  background:linear-gradient(145deg,#66112A 0%,#821737 55%,#A72B50 100%);
  color:#FFFFFF;
}
.academic-card-head{
  display:flex;
  align-items:center;
  gap:12px;
  margin-bottom:17px;
}
.academic-card-icon{
  width:48px;
  height:48px;
  flex:0 0 48px;
  display:grid;
  place-items:center;
  border-radius:15px;
  background:linear-gradient(135deg,var(--theme-deep),var(--primary),var(--secondary));
  color:#FFFFFF;
  box-shadow:0 7px 16px rgba(110,19,46,.18);
}
.academic-card-icon i{color:#FFFFFF!important;font-size:1.15rem}
.academic-card-head small{
  display:block;
  color:var(--primary);
  font-size:.56rem;
  font-weight:900;
  letter-spacing:.09em;
}
.academic-card-head h3{
  margin:2px 0 0;
  color:#501C2C;
  font-size:1.3rem;
  font-weight:900;
}
.academic-vision-card>p{
  margin:0;
  color:#7D2C44;
  font-size:.88rem;
  line-height:1.8;
}
.academic-vision-card>a{
  display:inline-flex;
  align-items:center;
  gap:6px;
  margin-top:17px;
  color:var(--primary);
  font-size:.72rem;
  font-weight:850;
  text-decoration:none;
}
.academic-mission-card .academic-card-icon{
  background:rgba(255,255,255,.16);
  border:1px solid rgba(255,255,255,.22);
  box-shadow:none;
}
.academic-mission-card .academic-card-head small,
.academic-mission-card .academic-card-head h3{color:#FFFFFF}
.academic-mission-list{
  display:grid;
  gap:9px;
}
.academic-mission-list>div{
  display:grid;
  grid-template-columns:32px 1fr;
  align-items:start;
  gap:10px;
  padding:8px 10px;
  border:1px solid rgba(255,255,255,.13);
  border-radius:11px;
  background:rgba(255,255,255,.07);
}
.academic-mission-list b{
  display:grid;
  place-items:center;
  width:29px;
  height:29px;
  border-radius:9px;
  background:#FFFFFF;
  color:var(--primary);
  font-size:.61rem;
}
.academic-mission-list span{
  color:rgba(255,255,255,.93);
  font-size:.67rem;
  line-height:1.5;
}
.academic-program-card{
  grid-column:1/2;
  padding:22px 24px 24px;
}
.academic-program-head{
  margin-bottom:13px;
}
.academic-program-count{
  margin-left:auto;
  padding:6px 10px;
  border-radius:999px;
  background:var(--theme-soft);
  color:var(--primary);
  font-size:.59rem;
  font-weight:850;
}
.academic-program-slider{
  margin-top:4px;
}
.academic-program-item{
  min-height:145px;
  display:flex;
  align-items:flex-start;
  gap:15px;
  padding:18px;
  border:1px solid #EAE5E6;
  border-radius:16px;
  background:linear-gradient(145deg,#FDFCFC,#F7F3F4);
}
.academic-program-copy>span{
  color:var(--primary);
  font-size:.55rem;
  font-weight:850;
  text-transform:uppercase;
  letter-spacing:.05em;
}
.academic-program-copy h5{
  margin:4px 0 5px;
  color:#511C2C;
  font-size:.92rem;
  font-weight:900;
}
.academic-program-copy small{
  color:#AA3C57;
  font-size:.62rem;
}
.academic-program-copy p{
  margin:8px 0 0;
  color:#9B3654;
  font-size:.66rem;
  line-height:1.5;
}
.academic-announcement-card{
  grid-column:2/3;
  padding:22px 24px 24px;
  background:linear-gradient(145deg,#621029,#801636 55%,#AD3150);
}
.academic-announcement-head{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin-bottom:17px;
  padding:8px 12px;
  border-radius:10px;
  background:rgba(255,255,255,.13);
  color:#FFFFFF;
  font-size:.75rem;
  font-weight:850;
}
.academic-announcement-head i{color:#FFFFFF!important}
.academic-announcement-item{
  min-height:120px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:18px 46px;
}
.academic-announcement-item small{
  color:rgba(255,255,255,.72);
  font-size:.6rem;
}
.academic-announcement-item b{
  margin-top:7px;
  color:#FFFFFF;
  font-size:.85rem;
  line-height:1.5;
}
.academic-announcement-empty{
  min-height:120px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  color:rgba(255,255,255,.72);
  font-size:.7rem;
}
.academic-announcement-empty i{color:rgba(255,255,255,.72)!important}

@media(max-width:991.98px){
  .academic-showcase{grid-template-columns:1fr}
  .academic-program-card,.academic-announcement-card{grid-column:1}
}
@media(max-width:575.98px){
  .academic-showcase{gap:14px}
  .academic-vision-card,.academic-mission-card,.academic-program-card,.academic-announcement-card{
    padding:17px;
    border-radius:17px;
  }
  .academic-card-icon{width:42px;height:42px;flex-basis:42px}
  .academic-card-head h3{font-size:1.08rem}
  .academic-vision-card>p{font-size:.78rem;line-height:1.7}
  .academic-mission-list>div{grid-template-columns:28px 1fr}
  .academic-mission-list span{font-size:.62rem}
}


/* v13.3 — richer green-white gradient academic cards */
.academic-vision-card{
  background:
    radial-gradient(circle at 88% 8%,rgba(190,63,95,.20),transparent 30%),
    linear-gradient(145deg,#FFFFFF 0%,#FAF6F7 52%,#F2EAEC 100%)!important;
  border-color:rgba(127,24,55,.20)!important;
}
.academic-mission-card{
  background:
    radial-gradient(circle at 90% 10%,rgba(255,255,255,.14),transparent 28%),
    linear-gradient(145deg,#5F0F27 0%,#801535 48%,#BB4260 100%)!important;
}
.academic-program-card{
  background:
    radial-gradient(circle at 6% 0%,rgba(177,53,84,.13),transparent 27%),
    linear-gradient(150deg,#FFFFFF 0%,#FBF8F9 48%,#F4EDEF 100%)!important;
  border-color:rgba(127,24,55,.18)!important;
}
.academic-announcement-card{
  background:
    radial-gradient(circle at 94% 8%,rgba(255,255,255,.14),transparent 26%),
    linear-gradient(145deg,#621029 0%,#8A1B3C 56%,#BE4765 100%)!important;
}
.academic-vision-card::after,
.academic-program-card::after{
  content:"";
  position:absolute;
  width:170px;
  height:170px;
  right:-70px;
  bottom:-85px;
  border-radius:50%;
  background:rgba(168,39,78,.055);
  pointer-events:none;
}
.academic-vision-card,
.academic-mission-card,
.academic-program-card,
.academic-announcement-card{
  transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease;
}
.academic-vision-card:hover,
.academic-mission-card:hover,
.academic-program-card:hover,
.academic-announcement-card:hover{
  transform:translateY(-4px);
  box-shadow:0 18px 38px rgba(84,17,37,.12);
}
.academic-program-item{
  background:
    linear-gradient(145deg,#FFFFFF 0%,#F8F5F6 55%,#F2E9EB 100%)!important;
  border-color:rgba(127,24,55,.16)!important;
  box-shadow:0 7px 17px rgba(84,21,40,.045);
}
.academic-program-item:hover{
  border-color:rgba(127,24,55,.34)!important;
  box-shadow:0 11px 24px rgba(84,21,40,.08);
}
.academic-mission-list>div{
  background:linear-gradient(90deg,rgba(255,255,255,.13),rgba(255,255,255,.065))!important;
}
.academic-mission-list>div:hover{
  background:rgba(255,255,255,.16)!important;
}

/* strengthen YouTube widget visibility */
.home-youtube-widget{
  border-color:rgba(107,18,45,.22)!important;
  box-shadow:0 10px 25px rgba(65,23,36,.085)!important;
}
.home-youtube-head{
  background:linear-gradient(135deg,#FFFFFF 0%,#F6F0F2 100%)!important;
}
.home-youtube-video{
  min-height:150px;
}


/* v13.4 — right-side academic cards use green-white gradients too */
.academic-mission-card{
  background:
    radial-gradient(circle at 92% 8%,rgba(181,51,83,.18),transparent 31%),
    linear-gradient(145deg,#FFFFFF 0%,#F9F6F7 48%,#EEE3E6 100%)!important;
  border-color:rgba(127,24,55,.20)!important;
  color:#692539!important;
}
.academic-mission-card .academic-card-icon{
  background:linear-gradient(135deg,var(--theme-deep),var(--primary),var(--secondary))!important;
  border:0!important;
  box-shadow:0 7px 16px rgba(110,19,46,.18)!important;
}
.academic-mission-card .academic-card-head small{
  color:var(--primary)!important;
}
.academic-mission-card .academic-card-head h3{
  color:#501C2C!important;
}
.academic-mission-list>div{
  border-color:rgba(127,24,55,.12)!important;
  background:linear-gradient(90deg,#FFFFFF 0%,#F6EFF1 100%)!important;
}
.academic-mission-list>div:hover{
  background:linear-gradient(90deg,#FBF9F9 0%,#F0E7E9 100%)!important;
  border-color:rgba(127,24,55,.25)!important;
}
.academic-mission-list span{
  color:#822E47!important;
}
.academic-mission-list b{
  background:linear-gradient(135deg,var(--theme-deep),var(--primary))!important;
  color:#FFFFFF!important;
}

.academic-announcement-card{
  background:
    radial-gradient(circle at 92% 8%,rgba(184,54,86,.18),transparent 30%),
    linear-gradient(145deg,#FFFFFF 0%,#F8F5F6 50%,#EEE3E6 100%)!important;
  border-color:rgba(127,24,55,.20)!important;
}
.academic-announcement-head{
  background:linear-gradient(135deg,var(--theme-deep),var(--primary),var(--secondary))!important;
  color:#FFFFFF!important;
  box-shadow:0 6px 14px rgba(107,18,45,.16);
}
.academic-announcement-item small{
  color:var(--primary)!important;
  font-weight:750!important;
}
.academic-announcement-item b{
  color:#561E2F!important;
}
.academic-announcement-empty{
  color:#698077!important;
}
.academic-announcement-empty i{
  color:var(--primary)!important;
}


/* v13.5 — vision displayed as a stronger quote */
.academic-vision-quote{
  position:relative;
  margin-top:6px;
  padding:18px 20px 18px 24px;
  overflow:hidden;
  border-left:4px solid var(--primary);
  border-radius:0 15px 15px 0;
  background:linear-gradient(135deg,rgba(255,255,255,.88),rgba(240,229,231,.78));
}
.academic-vision-quote>i{
  position:absolute;
  top:4px;
  right:13px;
  color:color-mix(in srgb,var(--primary) 16%,transparent)!important;
  font-size:4.1rem;
  line-height:1;
  pointer-events:none;
}
.academic-vision-quote blockquote{
  position:relative;
  z-index:1;
  margin:0;
  color:#501C2C;
  font-size:1.02rem;
  line-height:1.72;
  font-weight:800;
  letter-spacing:-.01em;
}
.academic-vision-card>a{
  margin-top:16px!important;
}

@media(max-width:575.98px){
  .academic-vision-quote{
    padding:15px 16px 15px 18px;
  }
  .academic-vision-quote>i{
    font-size:3.4rem;
  }
  .academic-vision-quote blockquote{
    font-size:.88rem;
    line-height:1.65;
  }
}


/* v13.6 — centered, elegant vision quote typography */
.academic-vision-quote{
  padding:24px 34px 22px!important;
  border-left:0!important;
  border-top:3px solid var(--primary)!important;
  border-radius:16px!important;
  text-align:center!important;
}
.academic-vision-quote::before{
  content:"";
  position:absolute;
  top:-3px;
  left:50%;
  width:78px;
  height:3px;
  transform:translateX(-50%);
  border-radius:999px;
  background:linear-gradient(90deg,var(--theme-deep),var(--secondary));
}
.academic-vision-quote>i{
  top:3px!important;
  left:50%!important;
  right:auto!important;
  transform:translateX(-50%)!important;
  font-size:3.5rem!important;
  color:color-mix(in srgb,var(--primary) 10%,transparent)!important;
}
.academic-vision-quote blockquote{
  max-width:760px;
  margin:10px auto 0!important;
  text-align:center!important;
  color:#401623!important;
  font-family:Georgia,"Times New Roman",serif!important;
  font-size:1.08rem!important;
  line-height:1.72!important;
  font-weight:700!important;
  letter-spacing:.005em!important;
}
.academic-vision-quote blockquote::first-letter{
  font-size:1.22em;
  color:var(--primary);
}
.academic-vision-card>a{
  display:flex!important;
  width:max-content;
  margin:17px auto 0!important;
}

@media(max-width:575.98px){
  .academic-vision-quote{
    padding:20px 18px 18px!important;
  }
  .academic-vision-quote blockquote{
    font-size:.93rem!important;
    line-height:1.68!important;
  }
}


/* v13.7 — refine Visi typography and enlarge Misi text */
.academic-vision-quote blockquote{
  font-size:.96rem!important;
  line-height:1.72!important;
  font-weight:600!important;
  font-style:italic!important;
  letter-spacing:.002em!important;
}
.academic-vision-quote blockquote::first-letter{
  font-size:1.12em!important;
}

.academic-mission-list span{
  font-size:.73rem!important;
  line-height:1.58!important;
  font-weight:600!important;
}
.academic-mission-list b{
  font-size:.65rem!important;
}

@media(max-width:575.98px){
  .academic-vision-quote blockquote{
    font-size:.86rem!important;
    line-height:1.66!important;
  }
  .academic-mission-list span{
    font-size:.68rem!important;
    line-height:1.55!important;
  }
}


/* v13.8 — Visi card dark green gradient with bright white quote */
.academic-vision-card{
  background:
    radial-gradient(circle at 90% 8%,rgba(225,110,139,.18),transparent 31%),
    radial-gradient(circle at 8% 92%,rgba(255,255,255,.08),transparent 28%),
    linear-gradient(145deg,#3A0A18 0%,#580E24 48%,#7E1534 100%)!important;
  border-color:rgba(255,255,255,.13)!important;
  box-shadow:0 15px 34px rgba(52,8,21,.17)!important;
}
.academic-vision-card::after{
  background:rgba(255,255,255,.055)!important;
}
.academic-vision-card .academic-card-icon{
  background:rgba(255,255,255,.14)!important;
  color:#FFFFFF!important;
  border:1px solid rgba(255,255,255,.25)!important;
  box-shadow:0 8px 18px rgba(0,0,0,.10)!important;
}
.academic-vision-card .academic-card-head small{
  color:#EECFD7!important;
}
.academic-vision-card .academic-card-head h3{
  color:#FFFFFF!important;
}
.academic-vision-quote{
  background:
    linear-gradient(135deg,rgba(255,255,255,.13),rgba(255,255,255,.065))!important;
  border-top-color:#D899A9!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.09)!important;
}
.academic-vision-quote::before{
  background:linear-gradient(90deg,#E8BFC9,#FFFFFF,#DB8399)!important;
}
.academic-vision-quote>i{
  color:rgba(255,255,255,.11)!important;
}
.academic-vision-quote blockquote{
  color:#FFFFFF!important;
  text-shadow:0 1px 2px rgba(0,0,0,.16);
}
.academic-vision-quote blockquote::first-letter{
  color:#EFE0E4!important;
}
.academic-vision-card>a{
  color:#FFFFFF!important;
  font-weight:700!important;
}
.academic-vision-card>a:hover{
  color:#EFE1E5!important;
}


/* v13.9 — cleaner Vision card: no quote mark, lighter inner panel */
.academic-vision-card{
  background:
    radial-gradient(circle at 88% 10%,rgba(210,90,120,.14),transparent 28%),
    linear-gradient(145deg,#3C0A19 0%,#540E23 52%,#6C122C 100%)!important;
  border:1px solid rgba(255,255,255,.12)!important;
  box-shadow:0 14px 32px rgba(45,7,19,.14)!important;
}
.academic-vision-quote{
  margin-top:8px!important;
  padding:18px 22px!important;
  background:rgba(255,255,255,.055)!important;
  border:1px solid rgba(255,255,255,.10)!important;
  border-top:0!important;
  border-radius:14px!important;
  box-shadow:none!important;
  backdrop-filter:blur(2px);
}
.academic-vision-quote::before{
  content:none!important;
}
.academic-vision-quote>i{
  display:none!important;
}
.academic-vision-quote blockquote{
  margin:0 auto!important;
  max-width:760px;
  color:#FCFAFA!important;
  font-family:Georgia,"Times New Roman",serif!important;
  font-size:.94rem!important;
  line-height:1.7!important;
  font-weight:600!important;
  font-style:italic!important;
  text-align:center!important;
  text-shadow:none!important;
}
.academic-vision-quote blockquote::first-letter{
  color:inherit!important;
  font-size:inherit!important;
}
.academic-vision-card .academic-card-head{
  margin-bottom:4px!important;
}
.academic-vision-card>a{
  margin-top:14px!important;
  opacity:.94;
}
.academic-vision-card>a:hover{
  opacity:1;
}

@media(max-width:575.98px){
  .academic-vision-quote{
    padding:16px 16px!important;
  }
  .academic-vision-quote blockquote{
    font-size:.85rem!important;
    line-height:1.65!important;
  }
}


/* v14.0 — Visi moved directly below the academic divider */
.vision-highlight-wrap{
  padding:18px 0 4px;
  background:linear-gradient(180deg,#FFFFFF 0%,#FAF8F8 100%);
}
.vision-highlight{
  position:relative;
  overflow:hidden;
  max-width:1100px;
  margin:0 auto;
  padding:22px 34px 20px;
  text-align:center;
  border:1px solid rgba(125,20,52,.18);
  border-radius:18px;
  background:
    radial-gradient(circle at 12% 0%,rgba(190,62,94,.16),transparent 29%),
    radial-gradient(circle at 92% 100%,rgba(110,18,46,.10),transparent 30%),
    linear-gradient(135deg,#FFFFFF 0%,#F8F3F4 56%,#F0E7E9 100%);
  box-shadow:0 12px 28px rgba(86,18,38,.08);
}
.vision-highlight::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  border-radius:inherit;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.65);
  animation:visionGlow 2.4s ease-in-out infinite;
}
.vision-highlight-kicker{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  margin-bottom:8px;
  color:var(--primary);
  font-size:.69rem;
  font-weight:800;
  letter-spacing:.14em;
}
.vision-live-dot{
  width:8px;
  height:8px;
  border-radius:50%;
  background:var(--primary);
  box-shadow:0 0 0 0 rgba(127,24,55,.38);
  animation:visionDotPulse 1.45s ease-out infinite;
}
.vision-highlight p{
  position:relative;
  z-index:1;
  max-width:940px;
  margin:0 auto;
  color:#461725;
  font-family:Georgia,"Times New Roman",serif;
  font-size:1.03rem;
  line-height:1.7;
  font-weight:700;
  font-style:italic;
  animation:visionTextBlink 3.4s ease-in-out infinite;
}
.vision-highlight a{
  position:relative;
  z-index:1;
  display:inline-flex;
  align-items:center;
  gap:7px;
  margin-top:10px;
  color:var(--primary);
  font-size:.78rem;
  font-weight:800;
  text-decoration:none;
}
.vision-highlight a:hover{gap:10px;color:var(--theme-deep);}

/* Academic cards below now focus on Misi, Program Studi, and Pengumuman */
.academic-showcase{
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
}
.academic-mission-card{
  grid-column:span 1;
}

@keyframes visionDotPulse{
  0%{box-shadow:0 0 0 0 rgba(127,24,55,.38);opacity:1}
  65%{box-shadow:0 0 0 8px rgba(127,24,55,0);opacity:.82}
  100%{box-shadow:0 0 0 0 rgba(127,24,55,0);opacity:1}
}
@keyframes visionGlow{
  0%,100%{opacity:.35}
  50%{opacity:1}
}
@keyframes visionTextBlink{
  0%,100%{opacity:1;transform:scale(1)}
  50%{opacity:.72;transform:scale(.998)}
}

@media(max-width:991.98px){
  .vision-highlight-wrap{padding:14px 12px 2px;}
  .vision-highlight{padding:20px 22px;}
}
@media(max-width:575.98px){
  .vision-highlight{padding:18px 16px;border-radius:15px;}
  .vision-highlight p{font-size:.9rem;line-height:1.65;}
}
@media(prefers-reduced-motion:reduce){
  .vision-highlight::before,
  .vision-live-dot,
  .vision-highlight p{animation:none!important;}
}


/* v14.1 — tidy remaining 3 academic cards with no empty visual space */
.academic-showcase{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:20px!important;
  align-items:stretch!important;
}

/* Misi spans full width so the 3-card layout stays balanced */
.academic-mission-card{
  grid-column:1 / -1!important;
  min-height:auto!important;
}

/* Program Studi + Pengumuman sit evenly below */
.academic-program-card,
.academic-announcement-card{
  grid-column:auto!important;
  height:100%!important;
  min-height:100%!important;
}

/* Make Misi content compact and balanced across the full row */
.academic-mission-list{
  display:grid!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:10px!important;
}
.academic-mission-list>div{
  height:100%!important;
  align-items:flex-start!important;
}

/* Keep lower two cards visually equal */
.academic-program-card,
.academic-announcement-card{
  display:flex!important;
  flex-direction:column!important;
}
.academic-program-slider,
.announcement-slider-shell{
  flex:1 1 auto!important;
}
.academic-program-card .home-slider-shell,
.academic-announcement-card .home-slider-shell{
  min-height:0!important;
}

/* Avoid oversized blank areas when only a few announcements/programs exist */
.academic-program-card,
.academic-announcement-card{
  padding-bottom:20px!important;
}
.academic-announcement-empty,
.academic-program-empty{
  min-height:140px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}

@media(max-width:1199.98px){
  .academic-mission-list{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .academic-mission-list>div:last-child{
    grid-column:1 / -1;
  }
}

@media(max-width:991.98px){
  .academic-showcase{
    grid-template-columns:1fr!important;
  }
  .academic-mission-card,
  .academic-program-card,
  .academic-announcement-card{
    grid-column:1!important;
  }
  .academic-mission-list{
    grid-template-columns:1fr!important;
  }
  .academic-mission-list>div:last-child{
    grid-column:auto;
  }
}


/* v14.2 — Visi dark green gradient + animated Misi workflow */

/* Visi highlight becomes a stronger dark green focal card */
.vision-highlight{
  background:
    radial-gradient(circle at 12% 0%,rgba(230,118,146,.16),transparent 30%),
    radial-gradient(circle at 92% 100%,rgba(255,255,255,.06),transparent 28%),
    linear-gradient(135deg,#3A0A18 0%,#530D22 48%,#731330 100%)!important;
  border:1px solid rgba(255,255,255,.14)!important;
  box-shadow:0 16px 34px rgba(57,9,23,.17)!important;
}
.vision-highlight::before{
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.06)!important;
}
.vision-highlight-kicker{
  color:#EED0D7!important;
}
.vision-live-dot{
  background:#E9C0CA!important;
  box-shadow:0 0 0 0 rgba(233,192,202,.42)!important;
}
.vision-highlight p{
  color:#FFFFFF!important;
  text-shadow:0 1px 2px rgba(0,0,0,.14);
}
.vision-highlight a{
  color:#EFE1E5!important;
}
.vision-highlight a:hover{
  color:#FFFFFF!important;
}

/* Mission workflow */
.academic-mission-card{
  position:relative;
  overflow:hidden;
}
.academic-mission-workflow{
  position:relative;
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:16px;
  margin-top:18px;
  padding:10px 2px 2px;
}
.mission-flow-line{
  position:absolute;
  left:8%;
  right:8%;
  top:34px;
  height:3px;
  border-radius:999px;
  background:linear-gradient(90deg,#E7D0D6,#B53F5D,#E7D0D6);
  overflow:hidden;
}
.mission-flow-line::after{
  content:"";
  position:absolute;
  top:0;
  bottom:0;
  width:22%;
  left:-22%;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.95),transparent);
  animation:missionFlowSweep 3.1s linear infinite;
}
.mission-flow-step{
  position:relative;
  z-index:1;
  text-align:center;
  animation:missionStepFloat 3.6s ease-in-out infinite;
}
.mission-flow-step:nth-child(3){animation-delay:.18s}
.mission-flow-step:nth-child(4){animation-delay:.36s}
.mission-flow-step:nth-child(5){animation-delay:.54s}
.mission-flow-step:nth-child(6){animation-delay:.72s}
.mission-flow-node{
  width:54px;
  height:54px;
  margin:0 auto 12px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:linear-gradient(145deg,#611028,#961D41);
  border:4px solid #F7F1F3;
  box-shadow:0 7px 16px rgba(105,17,43,.17),0 0 0 1px rgba(126,21,52,.13);
}
.mission-flow-node span{
  color:#FFFFFF;
  font-size:.76rem;
  font-weight:900;
  letter-spacing:.03em;
}
.mission-flow-content{
  height:100%;
  padding:14px 13px 15px;
  border:1px solid rgba(127,24,55,.13);
  border-radius:14px;
  background:linear-gradient(145deg,#FFFFFF 0%,#F7F2F3 100%);
  box-shadow:0 8px 18px rgba(87,22,41,.05);
  transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;
}
.mission-flow-step:hover .mission-flow-content{
  transform:translateY(-4px);
  border-color:rgba(127,24,55,.30);
  box-shadow:0 12px 24px rgba(87,22,41,.09);
}
.mission-flow-content strong{
  display:block;
  margin-bottom:7px;
  color:#4B1A29;
  font-size:.78rem;
  line-height:1.35;
  font-weight:800;
}
.mission-flow-content p{
  margin:0;
  color:#923350;
  font-size:.69rem;
  line-height:1.55;
  font-weight:550;
}

@keyframes missionFlowSweep{
  0%{left:-22%}
  100%{left:100%}
}
@keyframes missionStepFloat{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-3px)}
}

@media(max-width:1199.98px){
  .academic-mission-workflow{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .mission-flow-line{
    display:none;
  }
  .mission-flow-step:last-child{
    grid-column:1 / -1;
    max-width:50%;
    width:100%;
    justify-self:center;
  }
}
@media(max-width:767.98px){
  .academic-mission-workflow{
    grid-template-columns:1fr;
    gap:13px;
  }
  .mission-flow-step{
    display:grid;
    grid-template-columns:54px minmax(0,1fr);
    gap:12px;
    align-items:center;
    text-align:left;
  }
  .mission-flow-step:last-child{
    grid-column:auto;
    max-width:none;
  }
  .mission-flow-node{
    margin:0;
  }
  .mission-flow-content{
    padding:13px 14px;
  }
}
@media(prefers-reduced-motion:reduce){
  .mission-flow-line::after,
  .mission-flow-step{
    animation:none!important;
  }
}


/* v14.3 — richer Visi gradient + stronger animated workflow arrows */

/* Visi: make the card more visually rich, not flat */
.vision-highlight{
  background:
    radial-gradient(circle at 18% 18%,rgba(219,153,169,.22),transparent 24%),
    radial-gradient(circle at 82% 24%,rgba(255,255,255,.10),transparent 23%),
    radial-gradient(circle at 70% 100%,rgba(186,66,96,.18),transparent 32%),
    linear-gradient(135deg,#330815 0%,#4D0C20 35%,#6A112C 68%,#92183D 100%)!important;
  border:1px solid rgba(255,255,255,.16)!important;
  box-shadow:
    0 18px 38px rgba(57,9,23,.20),
    inset 0 1px 0 rgba(255,255,255,.08)!important;
}
.vision-highlight::after{
  content:"";
  position:absolute;
  width:220px;
  height:220px;
  right:-80px;
  top:-90px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.08);
  box-shadow:
    0 0 0 28px rgba(255,255,255,.025),
    0 0 0 58px rgba(255,255,255,.018);
  pointer-events:none;
}
.vision-highlight-kicker{
  padding:6px 12px;
  border-radius:999px;
  background:rgba(255,255,255,.10);
  border:1px solid rgba(255,255,255,.13);
  backdrop-filter:blur(4px);
}
.vision-highlight p{
  max-width:900px!important;
  font-size:1.02rem!important;
  line-height:1.72!important;
  letter-spacing:.01em;
}
.vision-highlight a{
  margin-top:12px!important;
  padding:7px 14px;
  border-radius:999px;
  background:rgba(255,255,255,.10);
  border:1px solid rgba(255,255,255,.12);
}

/* Workflow line is more visible */
.mission-flow-line{
  top:35px!important;
  height:4px!important;
  left:7%!important;
  right:7%!important;
  background:linear-gradient(90deg,#EADEE1 0%,#C14E6B 25%,#93183D 50%,#C14E6B 75%,#EADEE1 100%)!important;
  box-shadow:0 2px 8px rgba(127,24,55,.13);
}
.mission-flow-line::after{
  width:18%!important;
  left:-18%!important;
  background:linear-gradient(90deg,transparent,#FFFFFF,transparent)!important;
  animation:missionFlowSweep 2.25s linear infinite!important;
}

/* Add visible animated arrows between each workflow step */
.mission-flow-step:not(:last-child)::after{
  content:"\2192";
  position:absolute;
  top:20px;
  right:-17px;
  z-index:4;
  width:28px;
  height:28px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  color:#FFFFFF;
  background:linear-gradient(135deg,#6B112C,#A7254C);
  border:3px solid #F6F0F2;
  box-shadow:0 6px 14px rgba(113,18,47,.18);
  font-size:1rem;
  font-weight:900;
  line-height:1;
  animation:missionArrowMove 1.45s ease-in-out infinite;
}
.mission-flow-step:nth-child(3)::after{animation-delay:.12s}
.mission-flow-step:nth-child(4)::after{animation-delay:.24s}
.mission-flow-step:nth-child(5)::after{animation-delay:.36s}

.mission-flow-node{
  position:relative;
  overflow:visible;
  animation:missionNodePulse 2.1s ease-in-out infinite;
}
.mission-flow-step:nth-child(3) .mission-flow-node{animation-delay:.18s}
.mission-flow-step:nth-child(4) .mission-flow-node{animation-delay:.36s}
.mission-flow-step:nth-child(5) .mission-flow-node{animation-delay:.54s}
.mission-flow-step:nth-child(6) .mission-flow-node{animation-delay:.72s}

.mission-flow-node::after{
  content:"";
  position:absolute;
  inset:-7px;
  border-radius:50%;
  border:1px solid rgba(150,28,65,.20);
  animation:missionRingPulse 2.1s ease-out infinite;
}

@keyframes missionArrowMove{
  0%,100%{transform:translateX(-2px) scale(1);opacity:.88}
  50%{transform:translateX(5px) scale(1.08);opacity:1}
}
@keyframes missionNodePulse{
  0%,100%{transform:scale(1)}
  50%{transform:scale(1.055)}
}
@keyframes missionRingPulse{
  0%{transform:scale(.86);opacity:.55}
  70%{transform:scale(1.18);opacity:0}
  100%{transform:scale(1.18);opacity:0}
}

@media(max-width:1199.98px){
  .mission-flow-step:not(:last-child)::after{
    display:none!important;
  }
}

@media(prefers-reduced-motion:reduce){
  .mission-flow-step:not(:last-child)::after,
  .mission-flow-node,
  .mission-flow-node::after{
    animation:none!important;
  }
}


/* v14.4 — outer presentation box for Visi, Misi, Program Studi */
.academic-section-box-wrap{
  width:min(1460px,calc(100% - 32px));
  margin:28px auto 34px;
}
.academic-section-box{
  position:relative;
  overflow:hidden;
  border:1px solid rgba(119,19,49,.16);
  border-radius:24px;
  background:
    radial-gradient(circle at 3% 3%,rgba(178,52,83,.08),transparent 22%),
    radial-gradient(circle at 98% 98%,rgba(139,25,59,.065),transparent 24%),
    linear-gradient(145deg,#FFFFFF 0%,#FDFCFC 48%,#F7F3F4 100%);
  box-shadow:0 16px 38px rgba(76,16,34,.075);
}
.academic-section-box::before{
  content:"";
  position:absolute;
  z-index:2;
  left:0;right:0;top:0;height:4px;
  background:linear-gradient(90deg,#520D22,#8F173B,#C7617A,#8F173B,#520D22);
}
.academic-section-box .news-to-program-divider{
  margin-top:0!important;
  padding:25px 28px 4px!important;
}
.academic-section-box .vision-highlight-wrap{
  background:transparent!important;
  padding-top:15px!important;
}
.academic-section-box .academic-showcase-section{
  background:transparent!important;
}
.academic-section-box .academic-showcase-section>.container{
  padding-top:24px!important;
  padding-bottom:34px!important;
}
@media(max-width:767.98px){
  .academic-section-box-wrap{
    width:calc(100% - 20px);
    margin:20px auto 26px;
  }
  .academic-section-box{border-radius:18px;}
  .academic-section-box .news-to-program-divider{
    padding:20px 14px 2px!important;
  }
}


/* v14.5 — brighter Visi + auto-wrapping Misi workflow */

/* Slightly brighter green gradient for Visi */
.vision-highlight{
  background:
    radial-gradient(circle at 16% 14%,rgba(226,172,186,.24),transparent 26%),
    radial-gradient(circle at 82% 18%,rgba(255,255,255,.12),transparent 24%),
    radial-gradient(circle at 72% 100%,rgba(211,91,121,.20),transparent 32%),
    linear-gradient(135deg,#530D22 0%,#6C112C 38%,#8F173B 70%,#AA284F 100%)!important;
  box-shadow:
    0 18px 38px rgba(86,14,36,.16),
    inset 0 1px 0 rgba(255,255,255,.10)!important;
}

/* Workflow can accommodate more than five items automatically */
.academic-mission-workflow{
  grid-template-columns:repeat(auto-fit,minmax(180px,1fr))!important;
  gap:18px 16px!important;
}
.mission-flow-step:last-child{
  max-width:none!important;
  width:auto!important;
  grid-column:auto!important;
}

/* Connector line is decorative for one-row desktop layouts;
   each item keeps its animated arrow, and wrapping stays clean. */
@media(min-width:1200px){
  .academic-mission-workflow{
    grid-template-columns:repeat(auto-fit,minmax(180px,1fr))!important;
  }
}
@media(max-width:1199.98px){
  .academic-mission-workflow{
    grid-template-columns:repeat(auto-fit,minmax(220px,1fr))!important;
  }
  .mission-flow-step:last-child{
    grid-column:auto!important;
    max-width:none!important;
  }
}
@media(max-width:767.98px){
  .academic-mission-workflow{
    grid-template-columns:1fr!important;
  }
}


/* v14.6 — dynamic CMS-driven mission workflow */
.mission-flow-step{
  animation-delay:var(--mission-delay,0s)!important;
}
.mission-flow-step::after,
.mission-flow-step .mission-flow-node,
.mission-flow-step .mission-flow-node::after{
  animation-delay:var(--mission-delay,0s)!important;
}
.academic-mission-empty{
  grid-column:1 / -1;
  min-height:130px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:8px;
  border:1px dashed rgba(127,24,55,.22);
  border-radius:14px;
  background:rgba(255,255,255,.62);
  color:#AB3C58;
}
.academic-mission-empty i{font-size:1.7rem;color:var(--primary);}


/* v14.7 — Visi: stronger visible gradient + slow horizontal text movement */
.vision-highlight{
  background:
    radial-gradient(circle at 8% 10%,rgba(232,189,200,.28),transparent 24%),
    radial-gradient(circle at 88% 18%,rgba(255,255,255,.16),transparent 25%),
    radial-gradient(circle at 72% 105%,rgba(225,95,127,.24),transparent 34%),
    linear-gradient(120deg,#520D22 0%,#6B112C 27%,#91183C 55%,#B83153 78%,#6C112C 100%)!important;
  background-size:160% 160%!important;
  animation:visionGradientFlow 10s ease-in-out infinite!important;
  box-shadow:
    0 18px 38px rgba(84,14,35,.17),
    inset 0 1px 0 rgba(255,255,255,.13)!important;
}

/* remove old blinking/pulsing effect from the Vision text */
.vision-highlight p{
  animation:visionTextDrift 9s ease-in-out infinite!important;
  opacity:1!important;
  will-change:transform;
}

/* keep the text fully readable while it moves gently */
@keyframes visionTextDrift{
  0%,100%{transform:translateX(-12px);opacity:1}
  50%{transform:translateX(12px);opacity:1}
}
@keyframes visionGradientFlow{
  0%,100%{background-position:0% 50%}
  50%{background-position:100% 50%}
}

@media(max-width:767.98px){
  .vision-highlight p{
    animation:visionTextDriftMobile 9s ease-in-out infinite!important;
  }
  @keyframes visionTextDriftMobile{
    0%,100%{transform:translateX(-4px);opacity:1}
    50%{transform:translateX(4px);opacity:1}
  }
}

@media(prefers-reduced-motion:reduce){
  .vision-highlight,
  .vision-highlight p{
    animation:none!important;
    transform:none!important;
  }
}


/* v14.8 — Vision text typewriter animation, character by character */
.vision-highlight p.vision-typing-text{
  animation:none!important;
  transform:none!important;
  opacity:1!important;
  min-height:3.4em;
  position:relative;
}
.vision-highlight p.vision-typing-text.is-typing::after{
  content:"";
  display:inline-block;
  width:2px;
  height:1.05em;
  margin-left:4px;
  vertical-align:-0.12em;
  background:rgba(255,255,255,.92);
  animation:visionCaretBlink .8s steps(1,end) infinite;
}
.vision-highlight p.vision-typing-text.typing-done::after{
  content:"";
}
@keyframes visionCaretBlink{
  0%,48%{opacity:1}
  49%,100%{opacity:0}
}
@media(prefers-reduced-motion:reduce){
  .vision-highlight p.vision-typing-text::after{
    display:none!important;
  }
}


/* v14.9 — typewriter starts only when Visi is actually visible */
.vision-highlight{
  overflow:hidden;
}
.vision-highlight p.vision-typing-text{
  animation:none!important;
  transform:none!important;
  opacity:1!important;
  min-height:3.6em;
  max-width:100%!important;
  white-space:normal;
}
.vision-highlight p.vision-typing-text.is-typing::after{
  content:"";
  display:inline-block;
  width:2px;
  height:1em;
  margin-left:4px;
  vertical-align:-0.1em;
  background:#FFFFFF;
  animation:visionCaretBlink .72s steps(1,end) infinite;
  box-shadow:0 0 5px rgba(255,255,255,.35);
}


/* v15.0 — medical visual ambience for the Visi card */
.vision-highlight{isolation:isolate;}
.vision-highlight > *:not(.vision-medical-bg){position:relative;z-index:3;}
.vision-medical-bg{
  position:absolute;
  inset:0;
  z-index:1;
  overflow:hidden;
  pointer-events:none;
}
.vision-medical-bg::before{
  content:"";
  position:absolute;
  width:250px;
  height:250px;
  left:-65px;
  bottom:-120px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.10);
  box-shadow:0 0 0 34px rgba(255,255,255,.025),0 0 0 68px rgba(255,255,255,.018);
}
.vision-medical-bg .med-ico{
  position:absolute;
  color:rgba(255,255,255,.085);
  filter:drop-shadow(0 4px 12px rgba(0,0,0,.05));
  animation:visionMedicalFloat 7s ease-in-out infinite;
}
.vision-medical-bg .med-ico-1{right:7%;top:15%;font-size:4.8rem;transform:rotate(-8deg);}
.vision-medical-bg .med-ico-2{right:24%;bottom:9%;font-size:3.2rem;animation-delay:1.1s;}
.vision-medical-bg .med-ico-3{left:5%;top:18%;font-size:3.5rem;animation-delay:2.1s;}
.vision-medical-bg .med-ico-4{left:34%;bottom:7%;font-size:2.7rem;transform:rotate(18deg);animation-delay:3s;}
.vision-ecg-line{
  position:absolute;
  left:4%;
  right:4%;
  top:53%;
  height:2px;
  opacity:.18;
  background:linear-gradient(90deg,
    transparent 0 4%,
    rgba(255,255,255,.7) 4% 18%,
    transparent 18% 20%,
    rgba(255,255,255,.95) 20% 21%,
    transparent 21% 23%,
    rgba(255,255,255,.95) 23% 24%,
    transparent 24% 27%,
    rgba(255,255,255,.7) 27% 44%,
    transparent 44% 100%);
  animation:visionEcgMove 8s linear infinite;
}
@keyframes visionMedicalFloat{
  0%,100%{translate:0 0}
  50%{translate:0 -8px}
}
@keyframes visionEcgMove{
  0%{transform:translateX(-4%);opacity:.10}
  50%{transform:translateX(4%);opacity:.24}
  100%{transform:translateX(-4%);opacity:.10}
}

/* Survey popup restored to clean version without top logo/illustration */
.service-survey-card .survey-icon,
.service-survey-card .survey-icon-premium{
  display:none!important;
}
.service-survey-card .survey-eyebrow{
  margin-top:0!important;
}

@media(max-width:767.98px){
  .vision-medical-bg .med-ico-1{font-size:3.7rem;right:4%}
  .vision-medical-bg .med-ico-2{font-size:2.4rem;right:15%}
  .vision-medical-bg .med-ico-3{font-size:2.5rem;left:3%}
  .vision-medical-bg .med-ico-4{font-size:2rem;left:30%}
}
@media(prefers-reduced-motion:reduce){
  .vision-medical-bg .med-ico,.vision-ecg-line{animation:none!important;}
}


/* v15.1 — sharpen and clarify medical background on Visi card */
.vision-medical-bg .med-ico{
  color:rgba(255,255,255,.145)!important;
  filter:
    drop-shadow(0 3px 7px rgba(0,0,0,.10))
    drop-shadow(0 0 8px rgba(238,222,226,.08))!important;
}
.vision-medical-bg .med-ico-1{
  color:rgba(243,232,235,.17)!important;
}
.vision-medical-bg .med-ico-2,
.vision-medical-bg .med-ico-3{
  color:rgba(255,255,255,.135)!important;
}
.vision-medical-bg .med-ico-4{
  color:rgba(244,235,237,.15)!important;
}
.vision-ecg-line{
  opacity:.34!important;
  height:2px!important;
  filter:drop-shadow(0 0 3px rgba(243,233,235,.20));
}
.vision-medical-bg::before{
  border-color:rgba(255,255,255,.16)!important;
  box-shadow:
    0 0 0 34px rgba(255,255,255,.045),
    0 0 0 68px rgba(255,255,255,.028)!important;
}

/* retain text contrast while making background details more visible */
.vision-highlight{
  background:
    radial-gradient(circle at 8% 10%,rgba(232,189,200,.23),transparent 24%),
    radial-gradient(circle at 88% 18%,rgba(255,255,255,.13),transparent 25%),
    radial-gradient(circle at 72% 105%,rgba(225,95,127,.20),transparent 34%),
    linear-gradient(120deg,#4D0C20 0%,#65102A 27%,#861638 55%,#AA2E4D 78%,#641029 100%)!important;
}


/* v15.2 — Visi card white-to-green gradient */
.vision-highlight{
  background:
    radial-gradient(circle at 88% 18%,rgba(145,24,60,.12),transparent 27%),
    radial-gradient(circle at 8% 92%,rgba(190,71,101,.10),transparent 30%),
    linear-gradient(118deg,#FFFFFF 0%,#FBF8F9 24%,#F4EBED 50%,#E6CDD3 73%,#D6899C 100%)!important;
  border:1px solid rgba(126,20,52,.18)!important;
  box-shadow:
    0 18px 38px rgba(101,16,42,.12),
    inset 0 1px 0 rgba(255,255,255,.88)!important;
  color:#4C1626!important;
}

/* Text must remain readable over the light card */
.vision-highlight p,
.vision-highlight p.vision-typing-text{
  color:#4C1727!important;
  text-shadow:none!important;
}
.vision-highlight .vision-highlight-kicker{
  color:#6B112C!important;
  background:rgba(255,255,255,.64)!important;
  border-color:rgba(123,20,51,.15)!important;
}
.vision-highlight a{
  color:#6A112C!important;
  background:rgba(255,255,255,.62)!important;
  border-color:rgba(117,19,48,.15)!important;
}
.vision-highlight a:hover{
  background:#FFFFFF!important;
  color:#550E23!important;
}
.vision-live-dot{
  background:#A51B44!important;
  box-shadow:0 0 0 5px rgba(165,27,68,.12)!important;
}

/* Medical decoration becomes green on the light background */
.vision-medical-bg .med-ico{
  color:rgba(105,17,43,.15)!important;
  filter:drop-shadow(0 3px 6px rgba(96,16,40,.07))!important;
}
.vision-medical-bg .med-ico-1{color:rgba(107,17,44,.19)!important;}
.vision-medical-bg .med-ico-2,
.vision-medical-bg .med-ico-3{color:rgba(118,19,49,.15)!important;}
.vision-medical-bg .med-ico-4{color:rgba(138,22,57,.17)!important;}
.vision-medical-bg::before{
  border-color:rgba(115,19,48,.12)!important;
  box-shadow:
    0 0 0 34px rgba(137,22,57,.035),
    0 0 0 68px rgba(137,22,57,.022)!important;
}
.vision-ecg-line{
  opacity:.30!important;
  filter:drop-shadow(0 0 2px rgba(108,17,44,.14))!important;
  background:linear-gradient(90deg,
    transparent 0 4%,
    rgba(110,18,46,.72) 4% 18%,
    transparent 18% 20%,
    rgba(102,17,42,.92) 20% 21%,
    transparent 21% 23%,
    rgba(102,17,42,.92) 23% 24%,
    transparent 24% 27%,
    rgba(110,18,46,.72) 27% 44%,
    transparent 44% 100%)!important;
}

/* Typewriter caret follows the new light theme */
.vision-highlight p.vision-typing-text.is-typing::after{
  background:#6A112C!important;
  box-shadow:0 0 4px rgba(106,17,44,.18)!important;
}


/* v15.3 — compact, modern About Faculty section */
.home-profile-section.home-profile-compact{
  padding:34px 0 38px!important;
  background:
    radial-gradient(circle at 8% 30%,rgba(160,33,71,.055),transparent 24%),
    linear-gradient(180deg,#FFFFFF 0%,#FBF9F9 100%);
}
.profile-modern-card{
  display:grid;
  grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);
  min-height:350px;
  overflow:hidden;
  border:1px solid rgba(118,19,49,.13);
  border-radius:24px;
  background:#FFFFFF;
  box-shadow:0 16px 38px rgba(91,15,38,.075);
}
.profile-modern-visual{
  position:relative;
  min-height:350px;
  padding:38px;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  background:
    radial-gradient(circle at 90% 85%,rgba(205,79,110,.38),transparent 32%),
    radial-gradient(circle at 20% 12%,rgba(187,66,96,.16),transparent 25%),
    linear-gradient(135deg,#4D0C20 0%,#69112B 54%,#90183C 100%);
  color:#FFFFFF;
}
.profile-modern-visual::before{
  content:"";
  position:absolute;
  width:260px;height:260px;
  right:-72px;bottom:-115px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.10);
  box-shadow:0 0 0 38px rgba(255,255,255,.035),0 0 0 78px rgba(255,255,255,.022);
}
.profile-medical-watermark{
  position:absolute;
  inset:0;
  pointer-events:none;
}
.profile-medical-watermark i{
  position:absolute;
  left:44px;
  top:38px;
  font-size:4.5rem;
  color:rgba(230,111,141,.25);
}
.profile-medical-watermark span{
  position:absolute;
  left:30px;right:30px;top:39%;
  height:2px;
  opacity:.20;
  background:linear-gradient(90deg,transparent 0 7%,#FFFFFF 7% 24%,transparent 24% 27%,#FFFFFF 27% 29%,transparent 29% 32%,#FFFFFF 32% 34%,transparent 34% 38%,#FFFFFF 38% 54%,transparent 54% 100%);
}
.profile-visual-copy{position:relative;z-index:2;margin-bottom:24px;}
.profile-visual-copy small{
  display:block;
  margin-bottom:8px;
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.16em;
  color:rgba(255,255,255,.78);
}
.profile-visual-copy strong{
  display:block;
  font-size:clamp(1.7rem,2.2vw,2.45rem);
  line-height:1.08;
}
.profile-visual-copy p{
  margin:9px 0 0;
  font-size:.88rem;
  color:rgba(255,255,255,.72);
}
.profile-focus-pill{
  position:relative;z-index:2;
  width:max-content;
  max-width:100%;
  display:flex;align-items:center;gap:11px;
  padding:11px 15px;
  border:1px solid rgba(255,255,255,.22);
  border-radius:14px;
  background:rgba(255,255,255,.94);
  color:#4B1727;
  box-shadow:0 10px 24px rgba(56,9,23,.12);
}
.profile-focus-pill>i{font-size:1.55rem;color:#821536;}
.profile-focus-pill strong,.profile-focus-pill small{display:block;}
.profile-focus-pill strong{font-size:.86rem;}
.profile-focus-pill small{margin-top:2px;font-size:.69rem;color:#71887E;}

.profile-modern-content{
  padding:34px 40px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.profile-modern-content .section-kicker{
  align-self:flex-start;
  margin-bottom:12px;
  padding:6px 12px;
  font-size:.7rem;
}
.profile-modern-content .home-section-title{
  max-width:760px;
  margin:0 0 12px!important;
  font-size:clamp(1.85rem,2.8vw,3rem)!important;
  line-height:1.08!important;
}
.profile-modern-content .home-section-desc{
  max-width:780px;
  margin:0 0 18px!important;
  font-size:.96rem!important;
  line-height:1.65!important;
}
.profile-points.profile-points-compact{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:9px;
  margin:0 0 18px;
}
.profile-points.profile-points-compact>div{
  display:flex;
  align-items:flex-start;
  gap:7px;
  padding:10px 11px;
  border:1px solid rgba(124,20,51,.10);
  border-radius:11px;
  background:#FAF8F8;
  font-size:.78rem;
  line-height:1.35;
}
.profile-points.profile-points-compact i{
  flex:0 0 auto;
  margin-top:1px;
  color:#90173B;
  font-size:1rem;
}
.profile-modern-link{
  align-self:flex-start;
  display:inline-flex;
  align-items:center;
  gap:9px;
  padding:9px 14px;
  border-radius:10px;
  background:linear-gradient(135deg,#5C0F26,#9C1B42);
  color:#FFFFFF!important;
  font-size:.86rem;
  font-weight:700;
  text-decoration:none;
  box-shadow:0 8px 18px rgba(107,17,44,.13);
}
.profile-modern-link:hover{transform:translateY(-1px);box-shadow:0 11px 22px rgba(107,17,44,.18);}

@media(max-width:991.98px){
  .profile-modern-card{grid-template-columns:1fr;}
  .profile-modern-visual{min-height:270px;padding:30px;}
  .profile-modern-content{padding:30px;}
}
@media(max-width:767.98px){
  .home-profile-section.home-profile-compact{padding:24px 0 28px!important;}
  .profile-modern-card{border-radius:18px;}
  .profile-modern-visual{min-height:240px;padding:24px;}
  .profile-modern-content{padding:24px 20px;}
  .profile-points.profile-points-compact{grid-template-columns:1fr;}
  .profile-modern-content .home-section-title{font-size:1.8rem!important;}
}


/* v15.4 — subtle animations for compact About Faculty section */
.profile-modern-card{
  animation:profileCardEnter .75s ease-out both;
}
.profile-modern-visual::after{
  content:"";
  position:absolute;
  top:-45%;
  left:-35%;
  width:32%;
  height:190%;
  transform:rotate(18deg);
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.10),transparent);
  animation:profileSoftSweep 7s ease-in-out infinite;
  pointer-events:none;
}
.profile-medical-watermark i{
  animation:profileHeartFloat 3.2s ease-in-out infinite;
}
.profile-medical-watermark span{
  background-size:125% 100%;
  animation:profileEcgDrift 5.5s linear infinite;
}
.profile-focus-pill{
  animation:profilePillFloat 4s ease-in-out infinite;
}
.profile-points.profile-points-compact>div{
  transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease,background .25s ease;
}
.profile-points.profile-points-compact>div:hover{
  transform:translateY(-3px);
  border-color:rgba(124,20,51,.20);
  background:#FFFFFF;
  box-shadow:0 8px 18px rgba(100,16,41,.08);
}
.profile-points.profile-points-compact>div i{
  transition:transform .25s ease;
}
.profile-points.profile-points-compact>div:hover i{
  transform:scale(1.12) rotate(-5deg);
}
.profile-modern-link{
  transition:transform .25s ease,box-shadow .25s ease;
}
.profile-modern-link i{
  transition:transform .25s ease;
}
.profile-modern-link:hover i{
  transform:translateX(4px);
}

@keyframes profileCardEnter{
  from{opacity:0;transform:translateY(16px)}
  to{opacity:1;transform:translateY(0)}
}
@keyframes profileSoftSweep{
  0%,18%{left:-38%;opacity:0}
  35%{opacity:1}
  58%,100%{left:118%;opacity:0}
}
@keyframes profileHeartFloat{
  0%,100%{transform:translateY(0) scale(1)}
  50%{transform:translateY(-5px) scale(1.045)}
}
@keyframes profileEcgDrift{
  0%{transform:translateX(-3%);opacity:.14}
  50%{transform:translateX(3%);opacity:.24}
  100%{transform:translateX(-3%);opacity:.14}
}
@keyframes profilePillFloat{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-4px)}
}
@media(prefers-reduced-motion:reduce){
  .profile-modern-card,
  .profile-modern-visual::after,
  .profile-medical-watermark i,
  .profile-medical-watermark span,
  .profile-focus-pill{
    animation:none!important;
  }
  .profile-points.profile-points-compact>div:hover,
  .profile-modern-link:hover{
    transform:none!important;
  }
}


/* V27 Fakultas Hukum — strict FK layout, red-only palette */
:root{
  --fh-red-950:#3B0616;
  --fh-red-900:#50081E;
  --fh-red-800:#670B29;
  --fh-red-700:#7E1035;
  --fh-red-600:#95153F;
  --fh-red-500:#B31D4F;
  --fh-red-400:#D02D63;
  --fh-red-300:#E97999;
  --fh-red-200:#F2B8C9;
  --fh-red-100:#F8DDE5;
  --fh-red-50:#FFF5F8;

  --medical-blue:var(--fh-red-600)!important;
  --medical-blue-dark:var(--fh-red-900)!important;
  --medical-cyan:var(--fh-red-500)!important;
  --medical-green:var(--fh-red-600)!important;
  --medical-green-dark:var(--fh-red-800)!important;
  --primary:var(--fh-red-600)!important;
  --primary-dark:var(--fh-red-900)!important;
  --secondary:var(--fh-red-400)!important;
}

/* Exact original FK header/nav layout retained; colors only overridden */
.topbar,
.main-header,
.main-nav,
.navbar,
.site-header,
.header-main{
  background:linear-gradient(90deg,var(--fh-red-900),var(--fh-red-500))!important;
}
.topbar *,
.main-header *,
.main-nav *,
.navbar *,
.site-header *,
.header-main *{
  color:#fff!important;
}

/* announcement label */
.announcement-label,
.ticker-label,
.announcement-ticker .label{
  background:var(--fh-red-500)!important;
  color:#fff!important;
}

/* buttons/badges/icons */
.btn-success,.btn-primary,.bg-success,
.badge-success,.text-bg-success{
  background:var(--fh-red-600)!important;
  border-color:var(--fh-red-600)!important;
  color:#fff!important;
}
.text-success{color:var(--fh-red-600)!important}
.border-success{border-color:var(--fh-red-600)!important}

/* footer */
footer,.footer,.site-footer{
  background:var(--fh-red-950)!important;
}
footer *, .footer *, .site-footer *{
  color:#fff!important;
}
footer p,.footer p,.site-footer p,
footer small,.footer small,.site-footer small{
  color:rgba(255,255,255,.78)!important;
}


/* V28 FIX FRONTEND DROPDOWN & SUB-SUBMENU */
.main-nav .dropdown-menu,
.navbar .dropdown-menu,
.site-header .dropdown-menu,
.header-main .dropdown-menu{
  background:#FFFFFF !important;
  border:1px solid #E8D7DE !important;
  border-radius:12px !important;
  box-shadow:0 18px 42px rgba(80,8,30,.18) !important;
  padding:8px !important;
  z-index:9999 !important;
}
.main-nav .dropdown-menu *,
.navbar .dropdown-menu *,
.site-header .dropdown-menu *,
.header-main .dropdown-menu *{
  color:#3A2430 !important;
  text-shadow:none !important;
}
.main-nav .dropdown-menu .dropdown-item,
.navbar .dropdown-menu .dropdown-item,
.site-header .dropdown-menu .dropdown-item,
.header-main .dropdown-menu .dropdown-item{
  color:#3A2430 !important;
  background:transparent !important;
  border-radius:8px !important;
  padding:10px 12px !important;
  font-weight:600 !important;
  white-space:nowrap !important;
}
.main-nav .dropdown-menu .dropdown-item:hover,
.main-nav .dropdown-menu .dropdown-item:focus,
.navbar .dropdown-menu .dropdown-item:hover,
.navbar .dropdown-menu .dropdown-item:focus,
.site-header .dropdown-menu .dropdown-item:hover,
.header-main .dropdown-menu .dropdown-item:hover{
  background:#FBE7EE !important;
  color:#B31D4F !important;
}
.main-nav .dropdown-menu .dropdown-item:hover *,
.navbar .dropdown-menu .dropdown-item:hover *,
.site-header .dropdown-menu .dropdown-item:hover *,
.header-main .dropdown-menu .dropdown-item:hover *{
  color:#B31D4F !important;
}
.main-nav .dropdown-submenu,
.navbar .dropdown-submenu,
.site-header .dropdown-submenu,
.header-main .dropdown-submenu{
  position:relative !important;
}
.main-nav .dropdown-submenu > .dropdown-menu,
.navbar .dropdown-submenu > .dropdown-menu,
.site-header .dropdown-submenu > .dropdown-menu,
.header-main .dropdown-submenu > .dropdown-menu{
  top:-8px !important;
  left:calc(100% + 8px) !important;
  margin:0 !important;
  min-width:230px !important;
  background:#FFFFFF !important;
  border:1px solid #E8D7DE !important;
  z-index:10000 !important;
}
@media (min-width:992px){
  .main-nav .dropdown-submenu:hover > .dropdown-menu,
  .navbar .dropdown-submenu:hover > .dropdown-menu,
  .site-header .dropdown-submenu:hover > .dropdown-menu,
  .header-main .dropdown-submenu:hover > .dropdown-menu{
    display:block !important;
  }
}
@media (max-width:991px){
  .main-nav .dropdown-submenu > .dropdown-menu,
  .navbar .dropdown-submenu > .dropdown-menu{
    position:static !important;
    margin-left:12px !important;
    border-left:3px solid #E9B6C7 !important;
    min-width:unset !important;
  }
}


/* =========================================================
   V30 — Fakultas Hukum visual identity
   Replace medical visuals with law/justice imagery
   ========================================================= */

/* Public faculty profile / about visual */
.home-profile-section .profile-side,
.home-profile-section .profile-visual,
.home-profile-section .profile-left,
.home-profile-section .faculty-profile-visual,
.profile-visual-card,
.faculty-profile-visual{
    position:relative !important;
    background:
      linear-gradient(135deg,rgba(74,7,26,.88),rgba(179,29,79,.72)),
      url('../img/fh_law_visual.png') center/cover no-repeat !important;
    color:#fff !important;
}
.home-profile-section .profile-side:before,
.home-profile-section .profile-visual:before,
.home-profile-section .profile-left:before,
.home-profile-section .faculty-profile-visual:before,
.profile-visual-card:before,
.faculty-profile-visual:before{
    content:"" !important;
    position:absolute !important;
    inset:0 !important;
    background:linear-gradient(180deg,rgba(59,6,22,.08),rgba(59,6,22,.30)) !important;
    pointer-events:none !important;
}
.home-profile-section .profile-side > *,
.home-profile-section .profile-visual > *,
.home-profile-section .profile-left > *,
.home-profile-section .faculty-profile-visual > *,
.profile-visual-card > *,
.faculty-profile-visual > *{
    position:relative !important;
    z-index:2 !important;
}

/* Ensure any remaining medical icon placeholders display law-like icon color */
.home-profile-section .bi-bank2,
.profile-visual-card .bi-bank2,
.faculty-profile-visual .bi-bank2{
    color:#fff !important;
}

/* Login: use law image for left/visual panel without changing original CMS layout */
.fh-law-login .login-visual,
.fh-law-login .auth-visual,
.fh-law-login .login-side,
.fh-law-login .auth-side,
.fh-law-login .login-left,
.fh-law-login .login-brand-panel,
.fh-law-login .login-illustration{
    position:relative !important;
    background:
      linear-gradient(135deg,rgba(59,6,22,.88),rgba(179,29,79,.72)),
      url('../img/fh_law_visual.png') center/cover no-repeat !important;
    color:#fff !important;
}
.fh-law-login .login-visual *,
.fh-law-login .auth-visual *,
.fh-law-login .login-side *,
.fh-law-login .auth-side *,
.fh-law-login .login-left *,
.fh-law-login .login-brand-panel *,
.fh-law-login .login-illustration *{
    color:#fff !important;
}

/* If login is one-card layout, add legal background to the whole stage softly */
.fh-law-login{
    background:
      radial-gradient(circle at 10% 20%,rgba(215,45,99,.08),transparent 32%),
      #fff !important;
}

/* Replace old heart visual blocks with bank/scales-like styling */
[class*="medical-icon"],
[class*="heart-icon"],
.medical-symbol,
.heart-symbol{
    background:#fff !important;
    color:#B31D4F !important;
    border-color:#F2B8C9 !important;
}


/* V31 — Timbangan Keadilan */
.fh-law-scales-icon{
  width:88px!important;
  height:88px!important;
  object-fit:contain!important;
  display:block!important;
  margin-bottom:20px!important;
  filter:drop-shadow(0 8px 18px rgba(59,6,22,.18))!important;
}
.fh-law-scales-login{
  width:90px!important;
  height:90px!important;
  object-fit:contain!important;
  display:block!important;
  margin:0 auto 20px!important;
  filter:drop-shadow(0 8px 18px rgba(0,0,0,.16))!important;
}

/* Card hukum dengan ikon timbangan */
.home-profile-section .profile-feature-card,
.home-profile-section .profile-highlight-card,
.home-profile-section .faculty-highlight-card{
  position:relative!important;
  background:#fff!important;
}
.home-profile-section .profile-feature-card:before,
.home-profile-section .profile-highlight-card:before,
.home-profile-section .faculty-highlight-card:before{
  content:""!important;
  display:inline-block!important;
  width:30px!important;
  height:30px!important;
  margin-right:10px!important;
  vertical-align:middle!important;
  background:url('../img/fh_scales.svg') center/contain no-repeat!important;
}


/* =========================================================
   V32 — Perbaikan posisi & clipping ikon Timbangan Keadilan
   ========================================================= */

/* PANEL BESAR TENTANG FAKULTAS:
   jangan terlalu menempel kiri, beri ruang aman */
.home-profile-section .profile-side .fh-law-scales-icon,
.home-profile-section .profile-visual .fh-law-scales-icon,
.home-profile-section .profile-left .fh-law-scales-icon,
.home-profile-section .faculty-profile-visual .fh-law-scales-icon,
.profile-visual-card .fh-law-scales-icon,
.faculty-profile-visual .fh-law-scales-icon{
    width:84px !important;
    height:84px !important;
    margin-left:36px !important;
    margin-right:0 !important;
    margin-top:14px !important;
    margin-bottom:22px !important;
    padding:0 !important;
    object-fit:contain !important;
    object-position:center !important;
    overflow:visible !important;
}

/* Pastikan wrapper visual tidak memotong icon */
.home-profile-section .profile-side,
.home-profile-section .profile-visual,
.home-profile-section .profile-left,
.home-profile-section .faculty-profile-visual,
.profile-visual-card,
.faculty-profile-visual{
    overflow:hidden !important;
}

/* CARD PROGRAM STUDI / CARD KECIL:
   beri ruang di dalam kotak merah agar kaki timbangan tidak ketutup */
.programs-panel .program-icon,
.program-card .program-icon,
.program-row .program-icon,
.academic-program-icon,
.study-program-icon,
.program-icon-box{
    width:64px !important;
    height:64px !important;
    min-width:64px !important;
    min-height:64px !important;
    padding:9px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    overflow:visible !important;
    border-radius:14px !important;
    box-sizing:border-box !important;
}

/* SVG timbangan di card */
.programs-panel .fh-law-scales-icon,
.program-card .fh-law-scales-icon,
.program-row .fh-law-scales-icon,
.academic-program-icon .fh-law-scales-icon,
.study-program-icon .fh-law-scales-icon,
.program-icon-box .fh-law-scales-icon{
    width:44px !important;
    height:44px !important;
    margin:0 !important;
    padding:2px !important;
    object-fit:contain !important;
    object-position:center !important;
    display:block !important;
    overflow:visible !important;
    filter:none !important;
}

/* Bila template masih menggunakan img langsung di dalam ikon program */
.programs-panel .program-icon img,
.program-card .program-icon img,
.program-row .program-icon img,
.academic-program-icon img,
.study-program-icon img,
.program-icon-box img{
    max-width:44px !important;
    max-height:44px !important;
    width:44px !important;
    height:44px !important;
    margin:0 auto !important;
    padding:2px !important;
    object-fit:contain !important;
    object-position:center !important;
}

/* Hindari bagian bawah ikon tertutup card/body berikutnya */
.programs-panel .program-card,
.program-card,
.program-row{
    overflow:visible !important;
}
.program-card-header,
.program-card-top,
.program-row-top{
    overflow:visible !important;
    padding-bottom:6px !important;
}

/* Khusus card merah pembungkus SVG */
.programs-panel [class*="icon"],
.program-card [class*="icon"]{
    background-clip:padding-box !important;
}

/* Login tetap proporsional */
.fh-law-scales-login{
    width:82px !important;
    height:82px !important;
    padding:4px !important;
    object-fit:contain !important;
}


/* =========================================================
   V33 — Fine tuning posisi Timbangan Keadilan
   ========================================================= */

/* PANEL BESAR:
   geser lebih ke kanan agar tidak menempel kiri */
.home-profile-section .profile-side .fh-law-scales-icon,
.home-profile-section .profile-visual .fh-law-scales-icon,
.home-profile-section .profile-left .fh-law-scales-icon,
.home-profile-section .faculty-profile-visual .fh-law-scales-icon,
.profile-visual-card .fh-law-scales-icon,
.faculty-profile-visual .fh-law-scales-icon{
    width:82px !important;
    height:82px !important;
    margin-left:72px !important;
    margin-top:20px !important;
    margin-bottom:24px !important;
    padding:0 !important;
    display:block !important;
    object-fit:contain !important;
    object-position:center !important;
}

/* CARD PROGRAM STUDI:
   wrapper dibuat benar-benar center */
.programs-panel .program-icon,
.program-card .program-icon,
.program-row .program-icon,
.academic-program-icon,
.study-program-icon,
.program-icon-box{
    width:64px !important;
    height:64px !important;
    min-width:64px !important;
    min-height:64px !important;
    padding:7px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    overflow:hidden !important;
    border-radius:14px !important;
    box-sizing:border-box !important;
}

/* SVG pada card:
   sedikit dinaikkan agar kaki timbangan tidak terlalu bawah */
.programs-panel .fh-law-scales-icon,
.program-card .fh-law-scales-icon,
.program-row .fh-law-scales-icon,
.academic-program-icon .fh-law-scales-icon,
.study-program-icon .fh-law-scales-icon,
.program-icon-box .fh-law-scales-icon,
.programs-panel .program-icon img,
.program-card .program-icon img,
.program-row .program-icon img,
.academic-program-icon img,
.study-program-icon img,
.program-icon-box img{
    width:42px !important;
    height:42px !important;
    max-width:42px !important;
    max-height:42px !important;
    margin:0 auto !important;
    padding:0 !important;
    display:block !important;
    object-fit:contain !important;
    object-position:center !important;
    transform:translateY(-3px) !important;
    filter:none !important;
}

/* Jika ikon berada langsung di kotak merah */
.program-card [class*="icon"] img,
.program-row [class*="icon"] img,
.programs-panel [class*="icon"] img{
    vertical-align:middle !important;
}

/* Jaga card tidak memotong isi */
.program-card,
.program-row,
.program-card-header,
.program-card-top{
    overflow:visible !important;
}


/* =========================================================
   V34 — Exact selector fix berdasarkan HTML CMS FK asli
   ========================================================= */

/* PANEL BESAR TENTANG FAKULTAS
   Elemen sebenarnya: .profile-medical-watermark .fh-law-scales-icon */
.profile-modern-visual .profile-medical-watermark{
    position:absolute !important;
    inset:0 !important;
    pointer-events:none !important;
}

.profile-modern-visual .profile-medical-watermark .fh-law-scales-icon{
    position:absolute !important;
    left:74px !important;
    top:34px !important;
    width:82px !important;
    height:82px !important;
    margin:0 !important;
    padding:0 !important;
    display:block !important;
    object-fit:contain !important;
    object-position:center !important;
    transform:none !important;
    filter:drop-shadow(0 7px 16px rgba(52,5,20,.16)) !important;
}

/* Tablet/mobile supaya tetap proporsional */
@media(max-width:991px){
    .profile-modern-visual .profile-medical-watermark .fh-law-scales-icon{
        left:54px !important;
        top:30px !important;
        width:76px !important;
        height:76px !important;
    }
}
@media(max-width:575px){
    .profile-modern-visual .profile-medical-watermark .fh-law-scales-icon{
        left:38px !important;
        top:26px !important;
        width:68px !important;
        height:68px !important;
    }
}

/* CARD PROGRAM STUDI
   Elemen sebenarnya: .academic-program-item .program-icon */
.academic-program-item .program-icon{
    width:56px !important;
    height:56px !important;
    min-width:56px !important;
    min-height:56px !important;
    flex:0 0 56px !important;
    display:grid !important;
    place-items:center !important;
    padding:7px !important;
    border-radius:14px !important;
    overflow:hidden !important;
    box-sizing:border-box !important;
}

/* SVG dibuat lebih kecil dan benar-benar di tengah.
   Sedikit dinaikkan supaya kaki timbangan tidak turun keluar kotak. */
.academic-program-item .program-icon .fh-law-scales-icon{
    position:static !important;
    width:40px !important;
    height:40px !important;
    max-width:40px !important;
    max-height:40px !important;
    margin:0 !important;
    padding:0 !important;
    display:block !important;
    object-fit:contain !important;
    object-position:center !important;
    transform:translateY(-2px) !important;
    filter:none !important;
}

/* Hindari warisan rule generik yang membuat gambar terlalu besar */
.academic-program-item .program-icon img{
    width:40px !important;
    height:40px !important;
    max-width:40px !important;
    max-height:40px !important;
    margin:0 !important;
    padding:0 !important;
    object-fit:contain !important;
    object-position:center !important;
}

/* Pastikan baris card sejajar secara vertikal */
.academic-program-item{
    align-items:center !important;
}


/* =========================================================
   V35 — Language dropdown readability + darker service cards
   ========================================================= */

/* =========================
   LANGUAGE DROPDOWN
   ========================= */
.language-dropdown,
.language-menu,
.lang-dropdown,
.lang-menu,
.topbar .dropdown-menu,
.site-topbar .dropdown-menu{
    background:#FFFFFF !important;
    border:1px solid #E8D7DE !important;
    box-shadow:0 16px 34px rgba(80,8,30,.18) !important;
}

/* Semua teks di dropdown bahasa dibuat gelap */
.language-dropdown *,
.language-menu *,
.lang-dropdown *,
.lang-menu *,
.topbar .dropdown-menu *,
.site-topbar .dropdown-menu *{
    color:#38232E !important;
    text-shadow:none !important;
}

/* Item bahasa */
.language-dropdown .dropdown-item,
.language-menu .dropdown-item,
.lang-dropdown .dropdown-item,
.lang-menu .dropdown-item,
.topbar .dropdown-menu .dropdown-item,
.site-topbar .dropdown-menu .dropdown-item{
    color:#38232E !important;
    background:transparent !important;
    border-radius:10px !important;
    padding:10px 12px !important;
}

/* Bahasa aktif */
.language-dropdown .dropdown-item.active,
.language-dropdown .dropdown-item:active,
.language-menu .dropdown-item.active,
.lang-dropdown .dropdown-item.active,
.topbar .dropdown-menu .dropdown-item.active,
.site-topbar .dropdown-menu .dropdown-item.active{
    background:#F9E9EF !important;
    color:#8F1644 !important;
}

/* Judul bahasa */
.language-dropdown strong,
.language-menu strong,
.lang-dropdown strong,
.lang-menu strong,
.topbar .dropdown-menu strong,
.site-topbar .dropdown-menu strong{
    color:#2F1E26 !important;
    font-weight:800 !important;
}

/* Label kecil "Bahasa utama" */
.language-dropdown small,
.language-menu small,
.lang-dropdown small,
.lang-menu small,
.topbar .dropdown-menu small,
.site-topbar .dropdown-menu small{
    color:#8A727C !important;
    font-weight:500 !important;
}

/* Hover */
.language-dropdown .dropdown-item:hover,
.language-menu .dropdown-item:hover,
.lang-dropdown .dropdown-item:hover,
.lang-menu .dropdown-item:hover,
.topbar .dropdown-menu .dropdown-item:hover,
.site-topbar .dropdown-menu .dropdown-item:hover{
    background:#FFF3F6 !important;
    color:#8F1644 !important;
}

/* Flag tetap natural */
.language-dropdown img,
.language-menu img,
.lang-dropdown img,
.lang-menu img,
.topbar .dropdown-menu img,
.site-topbar .dropdown-menu img{
    opacity:1 !important;
    filter:none !important;
}

/* =========================
   SERVICE CARDS
   ========================= */

/* Target card layanan FK */
.home-quick-card,
.quick-service-card,
.quick-services .quick-card,
.service-card,
.home-service-card{
    background:
        radial-gradient(circle at 100% 0%,rgba(255,255,255,.08),transparent 34%),
        linear-gradient(135deg,#6B0C2D 0%,#8F1644 48%,#C12A5A 100%) !important;
    border:1px solid rgba(255,255,255,.10) !important;
    box-shadow:0 12px 28px rgba(78,7,29,.16) !important;
}

/* Jika card memakai pseudo-element/top accent */
.home-quick-card:before,
.quick-service-card:before,
.quick-services .quick-card:before,
.service-card:before,
.home-service-card:before{
    background:linear-gradient(90deg,#52071E,#C12A5A) !important;
}

/* Tulisan putih terang */
.home-quick-card *,
.quick-service-card *,
.quick-services .quick-card *,
.service-card *,
.home-service-card *{
    color:#FFFFFF !important;
}

/* Deskripsi sedikit lebih lembut */
.home-quick-card p,
.quick-service-card p,
.quick-services .quick-card span,
.service-card p,
.home-service-card p{
    color:rgba(255,255,255,.86) !important;
}

/* Ikon card */
.home-quick-card .icon,
.quick-service-card .icon,
.quick-services .quick-card > i,
.service-card .icon,
.home-service-card .icon{
    background:rgba(255,255,255,.10) !important;
    border:1px solid rgba(255,255,255,.24) !important;
    color:#FFFFFF !important;
    box-shadow:inset 0 0 0 1px rgba(255,255,255,.03) !important;
}

/* Hover dibuat lebih hidup tapi tetap gelap */
.home-quick-card:hover,
.quick-service-card:hover,
.quick-services .quick-card:hover,
.service-card:hover,
.home-service-card:hover{
    background:
        radial-gradient(circle at 100% 0%,rgba(255,255,255,.11),transparent 34%),
        linear-gradient(135deg,#570820 0%,#7E1037 48%,#B52252 100%) !important;
    transform:translateY(-3px) !important;
    box-shadow:0 18px 36px rgba(78,7,29,.22) !important;
}

/* Tombol/link bawah card */
.home-quick-card a,
.quick-service-card a,
.quick-services .quick-card a,
.service-card a,
.home-service-card a{
    color:#FFFFFF !important;
    font-weight:800 !important;
}

/* =========================
   Exact FK homepage service card selectors
   ========================= */
.quick-news-card{
    background:
        radial-gradient(circle at 100% 0%,rgba(255,255,255,.08),transparent 36%),
        linear-gradient(135deg,#6B0C2D 0%,#8F1644 52%,#C12A5A 100%) !important;
    border-color:rgba(255,255,255,.10) !important;
}
.quick-news-card *{
    color:#fff !important;
}
.quick-news-card p,
.quick-news-card span{
    color:rgba(255,255,255,.86) !important;
}
.quick-news-card .quick-icon{
    background:rgba(255,255,255,.10) !important;
    border:1px solid rgba(255,255,255,.24) !important;
}
.quick-news-card:hover{
    background:
        radial-gradient(circle at 100% 0%,rgba(255,255,255,.10),transparent 36%),
        linear-gradient(135deg,#560820 0%,#7D1036 52%,#B42352 100%) !important;
}


/* =========================================================
   V36 — Exact language text + law scales watermark cards
   ========================================================= */

/* Language dropdown: override inherited white text from header/nav */
.language-switcher .language-dropdown-menu,
.language-selector .dropdown-menu,
.lang-selector .dropdown-menu,
.lang-switcher .dropdown-menu,
.header-language .dropdown-menu{
    background:#fff !important;
}

.language-switcher .language-dropdown-menu .language-name,
.language-switcher .language-dropdown-menu .lang-name,
.language-switcher .language-dropdown-menu .dropdown-item,
.language-selector .dropdown-menu .dropdown-item,
.lang-selector .dropdown-menu .dropdown-item,
.lang-switcher .dropdown-menu .dropdown-item,
.header-language .dropdown-menu .dropdown-item{
    color:#571329 !important;
    -webkit-text-fill-color:#571329 !important;
    opacity:1 !important;
    text-shadow:none !important;
}

.language-switcher .language-dropdown-menu .language-meta,
.language-switcher .language-dropdown-menu .lang-subtitle,
.language-switcher .language-dropdown-menu small,
.language-selector .dropdown-menu small,
.lang-selector .dropdown-menu small,
.lang-switcher .dropdown-menu small,
.header-language .dropdown-menu small{
    color:#8d6572 !important;
    -webkit-text-fill-color:#8d6572 !important;
    opacity:1 !important;
}

/* Extra exact-safe override: only inside a white dropdown menu in top header */
.fk-topbar .dropdown-menu a,
.fk-topbar .dropdown-menu span,
.fk-topbar .dropdown-menu strong,
.fk-topbar .dropdown-menu div,
.site-header .dropdown-menu a,
.site-header .dropdown-menu span,
.site-header .dropdown-menu strong,
.site-header .dropdown-menu div{
    color:#571329 !important;
    -webkit-text-fill-color:#571329 !important;
}
.fk-topbar .dropdown-menu small,
.site-header .dropdown-menu small{
    color:#8d6572 !important;
    -webkit-text-fill-color:#8d6572 !important;
}

/* Service cards: richer maroon gradient */
.quick-news-card{
    position:relative !important;
    isolation:isolate !important;
    overflow:hidden !important;
    background:linear-gradient(135deg,#5b0924 0%,#861039 45%,#c32358 100%) !important;
    border:1px solid rgba(112,8,42,.25) !important;
    box-shadow:0 15px 32px rgba(78,7,29,.16) !important;
}

/* Soft light layer */
.quick-news-card::before{
    content:"" !important;
    position:absolute !important;
    inset:0 !important;
    z-index:-2 !important;
    background:
      radial-gradient(circle at 18% 8%,rgba(255,255,255,.13),transparent 31%),
      linear-gradient(115deg,rgba(255,255,255,.035),transparent 45%) !important;
    pointer-events:none !important;
}

/* Scales-of-justice watermark built with existing SVG asset, not a new image */
.quick-news-card::after{
    content:"" !important;
    position:absolute !important;
    right:-18px !important;
    bottom:-25px !important;
    width:155px !important;
    height:155px !important;
    z-index:-1 !important;
    background-image:url("/static/img/fh_scales.svg") !important;
    background-repeat:no-repeat !important;
    background-position:center !important;
    background-size:contain !important;
    opacity:.075 !important;
    filter:brightness(0) invert(1) !important;
    transform:rotate(-7deg) !important;
    pointer-events:none !important;
}

.quick-news-card:hover{
    background:linear-gradient(135deg,#4c071d 0%,#781033 45%,#ad1e4d 100%) !important;
}
.quick-news-card:hover::after{
    opacity:.11 !important;
}

/* Preserve foreground content */
.quick-news-card > *{
    position:relative !important;
    z-index:1 !important;
}


/* =========================================================
   V37 — EXACT FIX
   1) language-menu-custom text
   2) quick-card quick-card-link gradient + scales watermark
   ========================================================= */

/* ---------- PILIH BAHASA ---------- */
.language-menu-custom{
    background:#FFFFFF !important;
    border:1px solid #E6CED7 !important;
}

.language-menu-custom .language-option{
    color:#4B1B2B !important;
    background:transparent !important;
}

.language-menu-custom .language-option > span:nth-child(2){
    color:#4B1B2B !important;
}

.language-menu-custom .language-option strong{
    color:#4B1B2B !important;
    -webkit-text-fill-color:#4B1B2B !important;
    opacity:1 !important;
    visibility:visible !important;
    font-weight:800 !important;
}

.language-menu-custom .language-option small{
    color:#8A6A75 !important;
    -webkit-text-fill-color:#8A6A75 !important;
    opacity:1 !important;
    visibility:visible !important;
    font-weight:500 !important;
}

.language-menu-custom .language-option.active{
    background:#F9EAF0 !important;
}

.language-menu-custom .language-option.active strong{
    color:#8F1644 !important;
    -webkit-text-fill-color:#8F1644 !important;
}

.language-menu-custom .language-option:hover{
    background:#FFF3F6 !important;
}

.language-menu-custom .language-option:hover strong{
    color:#8F1644 !important;
    -webkit-text-fill-color:#8F1644 !important;
}

.language-menu-custom .language-check{
    color:#B31D4F !important;
}

/* ---------- 4 CARD DI BAWAH BANNER ---------- */
.quick-services .quick-card.quick-card-link{
    position:relative !important;
    isolation:isolate !important;
    overflow:hidden !important;
    background:
        linear-gradient(135deg,#57081F 0%,#7F1037 43%,#BE2455 100%) !important;
    border:1px solid rgba(88,6,30,.26) !important;
    box-shadow:0 14px 30px rgba(68,7,26,.17) !important;
}

/* Soft lighting supaya tidak polos */
.quick-services .quick-card.quick-card-link::before{
    content:"" !important;
    position:absolute !important;
    inset:0 !important;
    z-index:-2 !important;
    background:
        radial-gradient(circle at 12% 12%,rgba(255,255,255,.14),transparent 28%),
        radial-gradient(circle at 88% 105%,rgba(255,255,255,.075),transparent 36%),
        linear-gradient(120deg,rgba(255,255,255,.035),transparent 55%) !important;
    pointer-events:none !important;
}

/* Bayangan timbangan keadilan */
.quick-services .quick-card.quick-card-link::after{
    content:"" !important;
    position:absolute !important;
    right:-20px !important;
    bottom:-28px !important;
    width:162px !important;
    height:162px !important;
    z-index:-1 !important;
    background:url("/static/img/fh_scales_white.svg") center/contain no-repeat !important;
    opacity:.085 !important;
    transform:rotate(-8deg) !important;
    pointer-events:none !important;
}

/* Semua isi card tetap di depan */
.quick-services .quick-card.quick-card-link > *{
    position:relative !important;
    z-index:1 !important;
}

/* Ikon atas dibuat elegan */
.quick-services .quick-card.quick-card-link > i:first-child{
    width:56px !important;
    height:56px !important;
    display:grid !important;
    place-items:center !important;
    border-radius:14px !important;
    background:rgba(255,255,255,.105) !important;
    border:1px solid rgba(255,255,255,.22) !important;
    color:#FFFFFF !important;
    font-size:1.55rem !important;
    margin-bottom:17px !important;
}

/* Text card */
.quick-services .quick-card.quick-card-link b{
    color:#FFFFFF !important;
    font-weight:850 !important;
}

.quick-services .quick-card.quick-card-link > span{
    color:rgba(255,255,255,.86) !important;
}

.quick-services .quick-card.quick-card-link .quick-card-more,
.quick-services .quick-card.quick-card-link .quick-card-more i{
    color:#FFFFFF !important;
}

/* Hover lebih dalam */
.quick-services .quick-card.quick-card-link:hover{
    background:
        linear-gradient(135deg,#470619 0%,#700D30 43%,#A81D4A 100%) !important;
    transform:translateY(-3px) !important;
    box-shadow:0 19px 38px rgba(68,7,26,.23) !important;
}

.quick-services .quick-card.quick-card-link:hover::after{
    opacity:.12 !important;
}


/* =========================================================
   V38 — Professional quick service cards
   Fokus: spacing, alignment, CTA tidak turun keluar card
   ========================================================= */

.quick-services{
    display:grid !important;
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    gap:20px !important;
    align-items:stretch !important;
}

.quick-services .quick-card.quick-card-link{
    min-height:248px !important;
    height:248px !important;
    padding:26px 28px 24px !important;
    border-radius:18px !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:flex-start !important;
    justify-content:flex-start !important;
    position:relative !important;
    overflow:hidden !important;

    background:
      radial-gradient(circle at 86% 115%,rgba(255,255,255,.09),transparent 36%),
      linear-gradient(135deg,#4F071D 0%,#74102F 47%,#B62150 100%) !important;

    border:1px solid rgba(91,8,34,.22) !important;
    box-shadow:
      0 16px 34px rgba(63,6,24,.14),
      inset 0 1px 0 rgba(255,255,255,.05) !important;

    transition:transform .22s ease,box-shadow .22s ease,background .22s ease !important;
}

/* Accent top line */
.quick-services .quick-card.quick-card-link .quick-card-accent,
.quick-services .quick-card.quick-card-link::before{
    content:"" !important;
    position:absolute !important;
    left:0 !important;
    top:0 !important;
    width:100% !important;
    height:5px !important;
    background:linear-gradient(90deg,#6A0D2B,#D32D63) !important;
    z-index:2 !important;
    opacity:1 !important;
    pointer-events:none !important;
}

/* Timbangan sebagai watermark halus, tidak mengganggu teks */
.quick-services .quick-card.quick-card-link::after{
    content:"" !important;
    position:absolute !important;
    right:-8px !important;
    bottom:-18px !important;
    width:128px !important;
    height:128px !important;
    background:url("/static/img/fh_scales_white.svg") center/contain no-repeat !important;
    opacity:.055 !important;
    transform:rotate(-5deg) !important;
    z-index:0 !important;
    pointer-events:none !important;
}

/* Semua konten selalu di atas watermark */
.quick-services .quick-card.quick-card-link > *{
    position:relative !important;
    z-index:1 !important;
}

/* Icon box */
.quick-services .quick-card.quick-card-link > i:first-child{
    width:58px !important;
    height:58px !important;
    min-width:58px !important;
    min-height:58px !important;
    display:grid !important;
    place-items:center !important;
    border-radius:14px !important;
    margin:4px 0 20px 0 !important;
    padding:0 !important;
    background:linear-gradient(145deg,rgba(255,255,255,.13),rgba(255,255,255,.07)) !important;
    border:1px solid rgba(255,255,255,.24) !important;
    color:#fff !important;
    font-size:1.55rem !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.09) !important;
}

/* Title */
.quick-services .quick-card.quick-card-link b{
    display:block !important;
    margin:0 0 8px 0 !important;
    padding:0 !important;
    color:#fff !important;
    font-size:1.12rem !important;
    line-height:1.3 !important;
    font-weight:800 !important;
    letter-spacing:-.01em !important;
}

/* Description */
.quick-services .quick-card.quick-card-link > span:not(.quick-card-more){
    display:block !important;
    margin:0 !important;
    padding:0 !important;
    color:rgba(255,255,255,.82) !important;
    font-size:.88rem !important;
    line-height:1.55 !important;
    max-width:90% !important;
}

/* CTA SELALU di dalam bagian bawah card */
.quick-services .quick-card.quick-card-link .quick-card-more{
    margin-top:auto !important;
    padding-top:20px !important;
    width:100% !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-end !important;
    gap:9px !important;
    color:#fff !important;
    font-size:.82rem !important;
    line-height:1 !important;
    font-weight:800 !important;
    text-decoration:none !important;
    white-space:nowrap !important;
}

.quick-services .quick-card.quick-card-link .quick-card-more i{
    color:#fff !important;
    font-size:.95rem !important;
    transition:transform .18s ease !important;
}

/* Hover profesional */
.quick-services .quick-card.quick-card-link:hover{
    transform:translateY(-5px) !important;
    background:
      radial-gradient(circle at 86% 115%,rgba(255,255,255,.11),transparent 36%),
      linear-gradient(135deg,#430618 0%,#650C2A 47%,#A31B48 100%) !important;
    box-shadow:
      0 22px 42px rgba(63,6,24,.21),
      inset 0 1px 0 rgba(255,255,255,.06) !important;
}

.quick-services .quick-card.quick-card-link:hover .quick-card-more i{
    transform:translateX(4px) !important;
}

.quick-services .quick-card.quick-card-link:hover::after{
    opacity:.075 !important;
}

/* Responsive */
@media(max-width:1199px){
    .quick-services{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    }
}

@media(max-width:767px){
    .quick-services{
        grid-template-columns:1fr !important;
        gap:16px !important;
    }

    .quick-services .quick-card.quick-card-link{
        height:auto !important;
        min-height:220px !important;
    }
}


/* =========================================================
   V39 — RESTORE FK QUICK CARD LAYOUT
   Memperbaiki card v38 yang menyempit akibat bentrok CSS lama.
   ========================================================= */

/* Wrapper mengikuti lebar penuh CMS FK */
.quick-services{
    width:100% !important;
    max-width:none !important;
    display:grid !important;
    grid-template-columns:repeat(4, minmax(0, 1fr)) !important;
    gap:22px !important;
    align-items:stretch !important;
    justify-content:stretch !important;
    overflow:visible !important;
}

/* Matikan aturan legacy yang memberi width/flex basis sempit */
.quick-services > .quick-card,
.quick-services > .quick-card.quick-card-link{
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;
    flex:none !important;
    flex-basis:auto !important;

    min-height:238px !important;
    height:238px !important;

    display:flex !important;
    flex-direction:column !important;
    align-items:flex-start !important;
    justify-content:flex-start !important;

    padding:24px 26px 22px !important;
    box-sizing:border-box !important;
    overflow:hidden !important;
    border-radius:18px !important;

    background:
        radial-gradient(circle at 92% 110%,rgba(255,255,255,.085),transparent 36%),
        linear-gradient(135deg,#57081F 0%,#7A1034 47%,#B82251 100%) !important;

    border:1px solid rgba(95,8,34,.22) !important;
    box-shadow:0 14px 30px rgba(69,6,25,.14) !important;
}

/* Garis aksen tipis bagian atas */
.quick-services > .quick-card.quick-card-link::before{
    content:"" !important;
    position:absolute !important;
    left:0 !important;
    top:0 !important;
    width:100% !important;
    height:4px !important;
    background:linear-gradient(90deg,#6B0C2D,#D02D63) !important;
    opacity:1 !important;
    z-index:2 !important;
}

/* Watermark timbangan halus */
.quick-services > .quick-card.quick-card-link::after{
    content:"" !important;
    position:absolute !important;
    right:-4px !important;
    bottom:-18px !important;
    width:120px !important;
    height:120px !important;
    background:url("/static/img/fh_scales_white.svg") center/contain no-repeat !important;
    opacity:.055 !important;
    transform:rotate(-5deg) !important;
    z-index:0 !important;
    pointer-events:none !important;
}

/* Foreground */
.quick-services > .quick-card.quick-card-link > *{
    position:relative !important;
    z-index:1 !important;
}

/* Ikon */
.quick-services > .quick-card.quick-card-link > i:first-child{
    width:56px !important;
    height:56px !important;
    min-width:56px !important;
    min-height:56px !important;
    display:grid !important;
    place-items:center !important;
    margin:2px 0 18px 0 !important;
    padding:0 !important;
    border-radius:14px !important;
    background:rgba(255,255,255,.105) !important;
    border:1px solid rgba(255,255,255,.22) !important;
    color:#fff !important;
    font-size:1.45rem !important;
}

/* Judul */
.quick-services > .quick-card.quick-card-link > b{
    display:block !important;
    width:100% !important;
    margin:0 0 7px 0 !important;
    padding:0 !important;
    color:#fff !important;
    font-size:1.05rem !important;
    line-height:1.3 !important;
    font-weight:800 !important;
    white-space:normal !important;
    word-break:normal !important;
    overflow-wrap:normal !important;
}

/* Deskripsi */
.quick-services > .quick-card.quick-card-link > span:not(.quick-card-more){
    display:block !important;
    width:100% !important;
    max-width:88% !important;
    margin:0 !important;
    padding:0 !important;
    color:rgba(255,255,255,.84) !important;
    font-size:.84rem !important;
    line-height:1.5 !important;
    white-space:normal !important;
    word-break:normal !important;
    overflow-wrap:normal !important;
}

/* CTA tetap di dalam card */
.quick-services > .quick-card.quick-card-link > .quick-card-more{
    margin-top:auto !important;
    padding-top:16px !important;
    width:100% !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-end !important;
    gap:8px !important;

    color:#fff !important;
    font-size:.80rem !important;
    line-height:1 !important;
    font-weight:800 !important;
    white-space:nowrap !important;

    position:relative !important;
    right:auto !important;
    bottom:auto !important;
    left:auto !important;
    top:auto !important;
    transform:none !important;
}

/* Jika legacy CSS meng-absolutkan CTA */
.quick-services > .quick-card.quick-card-link .quick-card-more{
    position:relative !important;
}

/* Hover */
.quick-services > .quick-card.quick-card-link:hover{
    transform:translateY(-4px) !important;
    background:
        radial-gradient(circle at 92% 110%,rgba(255,255,255,.10),transparent 36%),
        linear-gradient(135deg,#480619 0%,#690D2D 47%,#A41B48 100%) !important;
    box-shadow:0 20px 38px rgba(69,6,25,.20) !important;
}

/* Responsive */
@media(max-width:1199px){
    .quick-services{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    }
}
@media(max-width:767px){
    .quick-services{
        grid-template-columns:1fr !important;
        gap:16px !important;
    }
    .quick-services > .quick-card.quick-card-link{
        height:auto !important;
        min-height:220px !important;
    }
}


/* =========================================================
   V40 — HARD RESET QUICK CARDS TO ORIGINAL FK WIDTHS
   ========================================================= */

/* Reset the wrapper and any carousel/flex constraints */
.home-quick-section .quick-services,
.quick-section .quick-services,
section .quick-services,
.quick-services{
    width:100% !important;
    max-width:1320px !important;
    margin-left:auto !important;
    margin-right:auto !important;

    display:grid !important;
    grid-template-columns:repeat(4, minmax(240px, 1fr)) !important;
    gap:22px !important;

    align-items:stretch !important;
    justify-items:stretch !important;
    justify-content:stretch !important;

    overflow:visible !important;
    flex:none !important;
    flex-wrap:initial !important;
}

/* Reset every card from any old width/flex/grid rule */
.quick-services > a.quick-card.quick-card-link,
.quick-services > .quick-card.quick-card-link{
    width:auto !important;
    min-width:240px !important;
    max-width:none !important;

    flex:initial !important;
    flex-grow:0 !important;
    flex-shrink:0 !important;
    flex-basis:auto !important;

    grid-column:auto !important;
    grid-row:auto !important;

    box-sizing:border-box !important;
    min-height:228px !important;
    height:228px !important;

    display:flex !important;
    flex-direction:column !important;
    align-items:flex-start !important;
    justify-content:flex-start !important;

    padding:24px 26px 22px !important;
    border-radius:18px !important;
    overflow:hidden !important;

    background:
      radial-gradient(circle at 90% 112%,rgba(255,255,255,.08),transparent 35%),
      linear-gradient(135deg,#56081F 0%,#7A1035 48%,#B52251 100%) !important;

    border:1px solid rgba(92,8,34,.22) !important;
    box-shadow:0 14px 30px rgba(67,7,25,.13) !important;
    position:relative !important;
}

/* Top accent */
.quick-services > a.quick-card.quick-card-link::before,
.quick-services > .quick-card.quick-card-link::before{
    content:"" !important;
    position:absolute !important;
    inset:0 0 auto 0 !important;
    height:4px !important;
    background:linear-gradient(90deg,#650B28,#D02D63) !important;
    z-index:2 !important;
}

/* Subtle justice scales watermark */
.quick-services > a.quick-card.quick-card-link::after,
.quick-services > .quick-card.quick-card-link::after{
    content:"" !important;
    position:absolute !important;
    width:112px !important;
    height:112px !important;
    right:-8px !important;
    bottom:-14px !important;
    background:url("/static/img/fh_scales_white.svg") center/contain no-repeat !important;
    opacity:.05 !important;
    z-index:0 !important;
    pointer-events:none !important;
}

/* Content stays readable */
.quick-services > a.quick-card.quick-card-link > *,
.quick-services > .quick-card.quick-card-link > *{
    position:relative !important;
    z-index:1 !important;
}

/* Icon */
.quick-services > a.quick-card.quick-card-link > i:first-child,
.quick-services > .quick-card.quick-card-link > i:first-child{
    width:54px !important;
    height:54px !important;
    min-width:54px !important;
    min-height:54px !important;
    display:grid !important;
    place-items:center !important;
    margin:2px 0 18px 0 !important;
    padding:0 !important;
    border-radius:14px !important;
    background:rgba(255,255,255,.10) !important;
    border:1px solid rgba(255,255,255,.22) !important;
    color:#fff !important;
    font-size:1.35rem !important;
}

/* Title */
.quick-services > a.quick-card.quick-card-link > b,
.quick-services > .quick-card.quick-card-link > b{
    display:block !important;
    width:100% !important;
    margin:0 0 7px 0 !important;
    padding:0 !important;
    color:#fff !important;
    font-size:1.05rem !important;
    line-height:1.3 !important;
    font-weight:800 !important;

    white-space:normal !important;
    word-break:keep-all !important;
    overflow-wrap:normal !important;
}

/* Description */
.quick-services > a.quick-card.quick-card-link > span:not(.quick-card-more),
.quick-services > .quick-card.quick-card-link > span:not(.quick-card-more){
    display:block !important;
    width:100% !important;
    max-width:none !important;
    margin:0 !important;
    padding:0 !important;
    color:rgba(255,255,255,.82) !important;
    font-size:.84rem !important;
    line-height:1.5 !important;

    white-space:normal !important;
    word-break:normal !important;
    overflow-wrap:normal !important;
}

/* CTA pinned inside bottom-right */
.quick-services > a.quick-card.quick-card-link > .quick-card-more,
.quick-services > .quick-card.quick-card-link > .quick-card-more{
    margin-top:auto !important;
    width:100% !important;
    padding:14px 0 0 0 !important;

    display:flex !important;
    align-items:center !important;
    justify-content:flex-end !important;
    gap:8px !important;

    color:#fff !important;
    font-size:.78rem !important;
    font-weight:800 !important;
    line-height:1 !important;
    white-space:nowrap !important;

    position:relative !important;
    inset:auto !important;
    transform:none !important;
    grid-column:auto !important;
    grid-row:auto !important;
}

/* Explicitly neutralize all legacy quick-card-more transforms/margins */
.quick-services .quick-card-more{
    margin-bottom:0 !important;
    transform:none !important;
}

/* Hover */
.quick-services > a.quick-card.quick-card-link:hover,
.quick-services > .quick-card.quick-card-link:hover{
    transform:translateY(-4px) !important;
    background:
      radial-gradient(circle at 90% 112%,rgba(255,255,255,.10),transparent 35%),
      linear-gradient(135deg,#460619 0%,#690D2D 48%,#A21A47 100%) !important;
    box-shadow:0 20px 38px rgba(67,7,25,.19) !important;
}

/* Responsiveness */
@media(max-width:1199px){
    .quick-services{
        grid-template-columns:repeat(2, minmax(280px, 1fr)) !important;
    }
}
@media(max-width:767px){
    .quick-services{
        grid-template-columns:1fr !important;
    }
    .quick-services > a.quick-card.quick-card-link,
    .quick-services > .quick-card.quick-card-link{
        min-width:0 !important;
        height:auto !important;
        min-height:210px !important;
    }
}

.quick-services-wrap,
.quick-services-container,
.home-quick-section .container,
.quick-section .container{
    width:100% !important;
    max-width:1320px !important;
}


/* =========================================================
   V41 — EXACT QUICK TRACK FIX
   Struktur asli:
   .quick-services
     .container
       .home-slider-shell.compact-slider
         .home-scroll-track.quick-track
           .quick-slide-item
             .quick-card.quick-card-link
   ========================================================= */

/* Section kembali normal, bukan grid */
.quick-services{
    display:block !important;
    width:100% !important;
    max-width:none !important;
    overflow:visible !important;
}

/* Container mengikuti lebar CMS FK */
.quick-services > .container{
    width:100% !important;
    max-width:1320px !important;
    margin:0 auto !important;
    padding-left:16px !important;
    padding-right:16px !important;
}

/* Slider shell tetap menjadi pembungkus */
.quick-services .home-slider-shell.compact-slider{
    position:relative !important;
    width:100% !important;
    max-width:none !important;
    overflow:visible !important;
}

/* INI WRAPPER SEBENARNYA UNTUK 4 CARD */
.quick-services .home-scroll-track.quick-track{
    width:100% !important;
    max-width:none !important;

    display:grid !important;
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    gap:20px !important;

    overflow:visible !important;
    overflow-x:visible !important;
    scroll-snap-type:none !important;

    padding:4px 0 10px !important;
    margin:0 !important;

    transform:none !important;
}

/* INI ITEM YANG SEBELUMNYA MEMAKSA CARD JADI KURUS */
.quick-services .quick-track > .quick-slide-item{
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;

    flex:initial !important;
    flex-basis:auto !important;
    flex-grow:0 !important;
    flex-shrink:0 !important;

    display:block !important;
    scroll-snap-align:none !important;
    margin:0 !important;
    padding:0 !important;
}

/* Card */
.quick-services .quick-track > .quick-slide-item > .quick-card.quick-card-link{
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;

    height:232px !important;
    min-height:232px !important;

    display:flex !important;
    flex-direction:column !important;
    align-items:flex-start !important;

    padding:24px 25px 21px !important;
    margin:0 !important;
    box-sizing:border-box !important;

    position:relative !important;
    overflow:hidden !important;
    border-radius:17px !important;

    background:
      radial-gradient(circle at 92% 112%,rgba(255,255,255,.08),transparent 36%),
      linear-gradient(135deg,#52071E 0%,#771033 48%,#B52150 100%) !important;

    border:1px solid rgba(91,7,33,.20) !important;
    box-shadow:0 14px 30px rgba(69,7,26,.13) !important;
}

/* top accent */
.quick-services .quick-track .quick-card.quick-card-link::before{
    content:"" !important;
    position:absolute !important;
    left:0 !important;
    right:0 !important;
    top:0 !important;
    height:4px !important;
    background:linear-gradient(90deg,#650B28,#D02D63) !important;
    z-index:2 !important;
}

/* watermark timbangan */
.quick-services .quick-track .quick-card.quick-card-link::after{
    content:"" !important;
    position:absolute !important;
    right:-6px !important;
    bottom:-14px !important;
    width:112px !important;
    height:112px !important;
    background:url("/static/img/fh_scales_white.svg") center/contain no-repeat !important;
    opacity:.05 !important;
    transform:rotate(-5deg) !important;
    z-index:0 !important;
    pointer-events:none !important;
}

/* foreground */
.quick-services .quick-track .quick-card.quick-card-link > *{
    position:relative !important;
    z-index:1 !important;
}

/* icon */
.quick-services .quick-track .quick-card.quick-card-link > i:first-child{
    width:54px !important;
    height:54px !important;
    min-width:54px !important;
    min-height:54px !important;
    display:grid !important;
    place-items:center !important;

    margin:2px 0 18px !important;
    padding:0 !important;

    background:rgba(255,255,255,.10) !important;
    border:1px solid rgba(255,255,255,.22) !important;
    border-radius:13px !important;

    color:#fff !important;
    font-size:1.35rem !important;
}

/* title */
.quick-services .quick-track .quick-card.quick-card-link > b{
    display:block !important;
    width:100% !important;
    margin:0 0 7px !important;
    padding:0 !important;

    color:#fff !important;
    font-size:1.05rem !important;
    line-height:1.28 !important;
    font-weight:800 !important;

    white-space:normal !important;
    word-break:normal !important;
    overflow-wrap:normal !important;
}

/* description */
.quick-services .quick-track .quick-card.quick-card-link > span:not(.quick-card-more){
    display:block !important;
    width:100% !important;
    max-width:90% !important;

    margin:0 !important;
    padding:0 !important;

    color:rgba(255,255,255,.84) !important;
    font-size:.82rem !important;
    line-height:1.5 !important;

    white-space:normal !important;
    word-break:normal !important;
    overflow-wrap:normal !important;
}

/* CTA */
.quick-services .quick-track .quick-card.quick-card-link > .quick-card-more{
    margin-top:auto !important;
    margin-bottom:0 !important;
    padding:13px 0 0 !important;

    width:100% !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-end !important;
    gap:7px !important;

    position:relative !important;
    inset:auto !important;
    transform:none !important;

    color:#fff !important;
    font-size:.76rem !important;
    line-height:1 !important;
    font-weight:800 !important;
    white-space:nowrap !important;
}

/* arrows: keep FK look, place at outside edges */
.quick-services .home-slider-shell.compact-slider > .home-slider-nav.left{
    left:-18px !important;
}
.quick-services .home-slider-shell.compact-slider > .home-slider-nav.right{
    right:-18px !important;
}

/* hover */
.quick-services .quick-track .quick-card.quick-card-link:hover{
    transform:translateY(-4px) !important;
    background:
      radial-gradient(circle at 92% 112%,rgba(255,255,255,.10),transparent 36%),
      linear-gradient(135deg,#450619 0%,#670C2C 48%,#9F1945 100%) !important;
    box-shadow:0 20px 38px rgba(69,7,26,.19) !important;
}

/* responsive */
@media(max-width:1199px){
    .quick-services .home-scroll-track.quick-track{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    }
}
@media(max-width:767px){
    .quick-services .home-scroll-track.quick-track{
        grid-template-columns:1fr !important;
        gap:16px !important;
    }

    .quick-services .quick-track > .quick-slide-item > .quick-card.quick-card-link{
        height:auto !important;
        min-height:215px !important;
    }

    .quick-services .home-slider-nav{
        display:none !important;
    }
}


/* =========================================================
   V42 — scales icon + 3-column news layout
   ========================================================= */
.quick-services .quick-card-scales-icon{
    width:34px !important;
    height:34px !important;
    object-fit:contain !important;
    display:block !important;
    margin:0 !important;
    filter:none !important;
}

/* If img is direct card child, give same professional icon container */
.quick-services .quick-card.quick-card-link > .quick-card-scales-icon{
    width:54px !important;
    height:54px !important;
    box-sizing:border-box !important;
    padding:11px !important;
    margin:2px 0 18px !important;
    border-radius:13px !important;
    background:rgba(255,255,255,.10) !important;
    border:1px solid rgba(255,255,255,.22) !important;
}

/* Berita utama: 3 kolom seperti CMS FK */
.news-grid-v42{
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:22px !important;
    align-items:stretch !important;
}
.news-grid-v42 > *{
    min-width:0 !important;
}
.previous-news-divider{
    display:flex;
    align-items:center;
    gap:12px;
    margin:28px 0 24px;
}
.previous-news-divider::before,
.previous-news-divider::after{
    content:"";
    height:1px;
    background:#DDB6C5;
    flex:1;
}
.previous-news-label{
    display:inline-flex;
    align-items:center;
    gap:7px;
    padding:9px 16px;
    border:1px solid #DDB6C5;
    border-radius:999px;
    background:#fff;
    color:#8F1644;
    font-size:.78rem;
    font-weight:800;
    white-space:nowrap;
}
@media(max-width:991px){
    .news-grid-v42{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
}
@media(max-width:640px){
    .news-grid-v42{grid-template-columns:1fr !important;}
}


/* V42 exact news wrappers */
.home-news-main-column .home-news-track.news-grid-v42{
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:18px !important;
    width:100% !important;
    overflow:visible !important;
    scroll-snap-type:none !important;
    padding:4px 0 8px !important;
}
.home-news-main-column .home-news-track.news-grid-v42 > .news-slide-item{
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;
    flex:none !important;
    scroll-snap-align:none !important;
}
.home-news-main-column .home-news-track.news-grid-v42 .home-news-card{
    width:100% !important;
    height:100% !important;
}
.previous-news-grid-v42{
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:18px !important;
}
.previous-news-grid-v42 .home-news-mini-item{
    width:100% !important;
    min-width:0 !important;
}
@media(max-width:991px){
    .home-news-main-column .home-news-track.news-grid-v42,
    .previous-news-grid-v42{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    }
}
@media(max-width:640px){
    .home-news-main-column .home-news-track.news-grid-v42,
    .previous-news-grid-v42{
        grid-template-columns:1fr !important;
    }
}

/* Hide slider arrows for fixed 3-column news row; previous news is below */
.home-news-main-column .home-news-shell > .home-slider-nav{
    display:none !important;
}

/* V43 — YouTube sidebar card */
.youtube-channel-card{
  position:relative; overflow:hidden;
  padding:28px 28px 26px !important;
  border:0 !important; border-radius:22px !important;
  background:linear-gradient(145deg,#5A071F 0%,#8B123D 54%,#C32659 100%) !important;
  color:#fff !important;
  box-shadow:0 16px 34px rgba(91,8,34,.17);
}
.youtube-channel-card::after{
  content:"\F62B"; font-family:"bootstrap-icons";
  position:absolute; right:-18px; bottom:-30px;
  font-size:8rem; line-height:1; color:rgba(255,255,255,.055);
  transform:rotate(-8deg); pointer-events:none;
}
.youtube-channel-icon{
  width:58px;height:58px;border-radius:16px;
  display:grid;place-items:center;margin-bottom:22px;
  background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.22);
  font-size:1.8rem;color:#fff;
}
.youtube-channel-kicker{display:block;font-size:.70rem;font-weight:800;letter-spacing:.13em;color:rgba(255,255,255,.72);margin-bottom:6px}
.youtube-channel-card h5{color:#fff!important;font-size:1.25rem!important;font-weight:800!important;margin:0 0 9px!important}
.youtube-channel-card p{color:rgba(255,255,255,.83)!important;font-size:.88rem!important;line-height:1.65!important;margin:0 0 20px!important}
.youtube-channel-btn{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 14px;border-radius:11px;background:#fff;color:#8B123D!important;text-decoration:none!important;font-size:.78rem;font-weight:800}
.youtube-channel-btn:hover{background:#FFF3F7;color:#68102F!important}
.youtube-channel-btn.disabled{opacity:.75;cursor:default}

/* V44 — compact YouTube thumbnail sidebar */
.youtube-thumb-card{
  padding:0 !important; overflow:hidden;
  border:1px solid #E9C7D3 !important;
  border-radius:20px !important; background:#fff !important;
  box-shadow:0 13px 30px rgba(91,8,34,.10);
}
.youtube-thumb-link{display:block;color:inherit!important;text-decoration:none!important}
.youtube-thumb-visual{
  position:relative; min-height:205px; overflow:hidden;
  background:
    radial-gradient(circle at 88% 92%,rgba(255,255,255,.11) 0 18%,transparent 18.5%),
    linear-gradient(135deg,#56071E 0%,#8E123E 58%,#C32659 100%);
}
.youtube-thumb-watermark{
  position:absolute;right:20px;top:20px;font-size:4.8rem;
  color:rgba(255,255,255,.075);line-height:1
}
.youtube-play{
  position:absolute;left:50%;top:47%;transform:translate(-50%,-50%);
  width:66px;height:66px;border-radius:50%;display:grid;place-items:center;
  background:#fff;color:#B31349;font-size:2.15rem;
  box-shadow:0 12px 30px rgba(35,0,12,.25);
  transition:.2s ease
}
.youtube-play i{margin-left:4px}
.youtube-thumb-link:hover .youtube-play{transform:translate(-50%,-50%) scale(1.07)}
.youtube-thumb-brand{position:absolute;left:22px;bottom:18px;color:#fff}
.youtube-thumb-brand span{display:block;font-size:.63rem;font-weight:800;letter-spacing:.16em;opacity:.78;margin-bottom:4px}
.youtube-thumb-brand strong{display:block;font-size:.96rem;line-height:1.3;font-weight:800}
.youtube-thumb-caption{
  min-height:55px;padding:14px 17px;display:flex;align-items:center;justify-content:space-between;gap:10px;
  color:#7E1238;background:#fff;font-size:.82rem;font-weight:800
}
.youtube-thumb-caption span{display:flex;align-items:center;gap:8px}
.youtube-thumb-caption .bi-youtube{font-size:1.05rem;color:#C21E50}
.youtube-thumb-placeholder{cursor:default}

/* V45 — compact YouTube sidebar card */
.youtube-thumb-card{
  max-width:100% !important;
  border-radius:16px !important;
}
.youtube-thumb-visual{
  min-height:132px !important;
}
.youtube-play{
  width:48px !important;
  height:48px !important;
  font-size:1.55rem !important;
  top:43% !important;
}
.youtube-thumb-watermark{
  right:14px !important;
  top:12px !important;
  font-size:3.5rem !important;
}
.youtube-thumb-brand{
  left:16px !important;
  bottom:12px !important;
}
.youtube-thumb-brand span{
  font-size:.55rem !important;
  margin-bottom:2px !important;
}
.youtube-thumb-brand strong{
  font-size:.78rem !important;
  line-height:1.2 !important;
}
.youtube-thumb-caption{
  min-height:44px !important;
  padding:10px 14px !important;
  font-size:.74rem !important;
}

/* V46 — balanced YouTube thumbnail height */
.youtube-thumb-visual{
  min-height:165px !important;
}
.youtube-play{
  width:54px !important;
  height:54px !important;
  font-size:1.75rem !important;
  top:44% !important;
}
.youtube-thumb-brand{
  left:18px !important;
  bottom:14px !important;
}
.youtube-thumb-brand strong{
  font-size:.84rem !important;
}
.youtube-thumb-caption{
  min-height:46px !important;
  padding:11px 15px !important;
}
