:root{
  --green:#0e5c38;
  --green-dark:#073c27;
  --green-deep:#082a1d;
  --lime:#dbe83d;
  --gold:#b9952e;
  --cream:#f6f7f0;
  --ink:#18332a;
  --muted:#66766f;
  --border:#dfe8e2;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:'Poppins',sans-serif;
  color:var(--ink);
  background:#fff;
  overflow-x:hidden;
}
a{
  text-decoration:none
}
img{
  max-width:100%
}

.section{
  padding:50px 0
}
.section-white{
  background:#fff
}
.section-soft{
  background:
    radial-gradient(circle at top right,rgba(219,232,61,.12),transparent 30%),
    linear-gradient(180deg,#f8faf6,#eef5ef);
}
.section-heading{
  max-width:820px;
  margin:auto
}
.section-title{
  font-size:clamp(2.2rem,4vw,3rem);
  /*line-height:1.05;*/
  /*letter-spacing:-.05em;*/
  font-weight:800;
}
.eyebrow{
  display:flex;
  align-items:center;
  gap:10px;
 /* text-transform:uppercase;*/
  /*letter-spacing:.14em;*/
  font-size:1.7rem;
  font-weight:600;
  color:var(--green);
  margin-bottom:14px;
}
.eyebrow:before{
  content:"";
  width:34px;
  height:2px;
  background:var(--lime);
}
.lead-text{
  font-size:1.12rem;
  line-height:1.85;
}

.logocontrol {
	
	margin-left:auto;
	margin-right:auto;
	
}
.logocontrol1 {
	display:none !important;
}



/* NAV */
.main-nav{
  padding:18px 0;
  transition:.35s ease;
}
.main-nav.scrolled{
  padding:10px 0;
  background:rgba(255,255,255,.94);
  backdrop-filter:blur(14px);
  box-shadow:0 10px 30px rgba(6,61,39,.08);
}
.navbar-brand{
  display:flex;
  align-items:center;
  gap:11px;
  color:#fff;
}
.main-nav.scrolled .navbar-brand{color:var(--green-dark)}
.logo-mark{
  width:48px;
  height:44px;
  display:grid;
  place-items:center;
  font-weight:900;
  color:var(--lime);
  border:2px solid var(--lime);
  clip-path:polygon(50% 0,100% 78%,0 78%);
}
.brand-text{
  display:flex;
  flex-direction:column;
  line-height:1.05;
}
.brand-text strong{font-size:.94rem}
.brand-text small{
  margin-top:4px;
  font-size:.68rem;
  opacity:.65;
}
.nav-link{
  color:rgba(255,255,255,.78);
  font-size:.9rem;
  font-weight:600;
  padding:.2rem .6rem!important;
}
.main-nav.scrolled .nav-link{color:#2d463c}
.nav-link:hover,
.nav-link.active{color:var(--lime)}
.main-nav.scrolled .nav-link:hover,
.main-nav.scrolled .nav-link.active{color:var(--green)}
.btn-brand{
  background:var(--lime);
  border-color:var(--lime);
  color:#183226;
  font-weight:800;
  transition:.3s;
}
.btn-brand:hover{
  background:#eff761;
  border-color:#eff761;
  color:#183226;
  transform:translateY(-2px);
}

/* HERO */
.hero-section{
  position:relative;
  min-height:100vh;
  color:#fff;
  overflow:hidden;
  background:
    linear-gradient(120deg,rgba(4,43,28,.98),rgba(11,90,54,.96) 55%,rgba(21,114,66,.93)),
    radial-gradient(circle at 40% 15%,rgba(219,232,61,.14),transparent 30%);
}
.hero-grid{
  position:absolute;
  inset:0;
  background-image:
    linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);
  background-size:60px 60px;
  mask-image:linear-gradient(to bottom,black,transparent 85%);
}
.hero-glow{
  position:absolute;
  border-radius:50%;
  filter:blur(10px);
  border:1px solid rgba(219,232,61,.18);
}
.hero-glow-1{width:420px;height:420px;left:-180px;top:18%}
.hero-glow-2{width:280px;height:280px;right:-80px;bottom:8%}

.hero-title{
  margin:22px 0 6px;
  font-size:clamp(4rem,8vw,7.6rem);
  /*letter-spacing:-.075em;*/
  line-height:1;
  font-weight:800;
  font-size: 78px;
}
.hero-title span{color:var(--lime)}
.hero-subtitle{
  /*font-family:"DM Serif Display",serif;*/
  color:#f2e7ad;
  font-style:italic;
  font-size:clamp(2rem,4vw,3.0rem);
  line-height:1.1;
}
.hero-copy{
  max-width:700px;
  margin-top:24px;
  color:rgba(255,255,255,.72);
  font-size:1.05rem;
  line-height:1.8;
}
.info-pill{
  height:100%;
  display:flex;
  align-items:center;
  gap:12px;
  padding:10px;
  border-radius:18px;
  background:rgba(255,255,255,.07);
  border:1px solid rgba(255,255,255,.12);
  backdrop-filter:blur(8px);
}
.info-pill i{
  width:36px;
  height:36px;
  border-radius:11px;
  display:grid;
  place-items:center;
  background:rgba(219,232,61,.1);
  color:var(--lime);
}
.info-pill strong{
  display:block;
  font-size:.86rem;
}
.info-pill small{
  display:block;
  margin-top:2px;
  color:rgba(255,255,255,.5);
  font-size:.67rem;
}
.hero-card-wrap{
  position:relative;
  max-width:430px;
  margin:auto;
}
.hero-card-img{
  display:block;
  width:100%;
  border-radius:30px;
  transform:rotate(1.7deg);
  border:8px solid rgba(255,255,255,.08);
  box-shadow:0 35px 80px rgba(0,0,0,.32);
}
.float-chip{
  position:absolute;
  z-index:3;
  background:#fff;
  color:#1a422e;
  padding:12px 15px;
  border-radius:14px;
  font-size:.72rem;
  font-weight:800;
  box-shadow:0 15px 35px rgba(0,0,0,.22);
  animation:float 4s ease-in-out infinite;
}
.float-chip i{color:var(--green);margin-right:6px}
.chip-one{left:-17%;top:12%}
.chip-two{right:-18%;bottom:12%;animation-delay:1.2s}
@keyframes float{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-10px)}
}

/* CARDS */
.person-card,
.stat-card,
.detail-card{
  background:#fff;
  border:1px solid var(--border);
  border-radius:24px;
  box-shadow:0 12px 35px rgba(10,70,43,.05);
}
.person-card{
  display:flex;
  gap:15px;
  align-items:center;
  padding:22px;
  transition:.3s;
}
.person-card:hover{transform:translateY(-5px)}
.person-avatar{
  min-width:58px;
  height:58px;
  display:grid;
  place-items:center;
  border-radius:50%;
  color:var(--green);
  background:#edf5ec;
  font-weight:900;
}
.person-card h5{font-size:1rem;font-weight:800;margin:0 0 5px}
.person-card p{font-size:.75rem;color:var(--muted);margin:0}

.stat-card{
  height:100%;
  padding:30px;
  transition:.3s;
}
.stat-card:hover{
  transform:translateY(-8px);
  box-shadow:0 20px 48px rgba(10,70,43,.1);
}
.stat-icon{
  width:56px;
  height:56px;
  border-radius:17px;
  background:#eef6ec;
  color:var(--green);
  display:grid;
  place-items:center;
  font-size:1.3rem;
  margin-bottom:20px;
}
.stat-card h3{
  font-size:2rem;
  font-weight:800;
  letter-spacing:-.04em;
}
.stat-card p{
  color:var(--muted);
  font-size:.86rem;
  line-height:1.65;
  margin:0;
}

.focus-panel{
  overflow:hidden;
  border-radius:28px;
  background:var(--green);
  box-shadow:0 22px 60px rgba(6,61,39,.16);
}
.focus-intro{
  padding:40px;
  background:linear-gradient(145deg,var(--green-dark),#103e2d);
  color:#fff;
}
.focus-intro span{
  color:rgba(255,255,255,.55);
  text-transform:uppercase;
  letter-spacing:.14em;
  font-size:.72rem;
  font-weight:800;
}
.focus-intro h3{
  margin-top:12px;
  font-size:1.8rem;
  font-weight:800;
}
.focus-item{
  display:flex;
  align-items:center;
  gap:14px;
  padding:24px 28px;
  color:#fff;
  border-left:1px solid rgba(255,255,255,.08);
  border-bottom:1px solid rgba(255,255,255,.08);
  font-size:.86rem;
}
.focus-item i{
  width:22px;
  color:var(--lime);
}

/* PROGRAMME */
.programme-tabs{
  gap:5px;
}
.programme-tabs .nav-link{
  color:var(--green);
  background:#edf4eb;
  padding:14px 26px;
  border-radius:16px;
  font-weight:800;
}
.programme-tabs .nav-link small{
  display:block;
  font-size:1.5rem;
  opacity:.55;
}
.programme-tabs .nav-link.active{
  background:var(--green);
  color:#fff;
}
.agenda-card{
  border:1px solid var(--border);
  border-radius:24px;
  overflow:hidden;
  box-shadow:0 12px 35px rgba(8,62,39,.04);
}
.agenda-row{
  /*display:grid;*/
  grid-template-columns:145px 1fr;
  gap:20px;
  padding:20px 24px;
  border-bottom:1px solid #e7ede8;
}
.agenda-row:last-child{border-bottom:0}
.agenda-row > span{
  font-size:.72rem;
  text-transform:uppercase;
  letter-spacing:.09em;
  font-weight:800;
  color:var(--green);
}
.agenda-row h5{
  margin:0;
  font-size:.97rem;
  /*font-weight:800;*/
}
.agenda-row p{
  margin:5px 0 0;
  color:var(--muted);
  font-size:.79rem;
}
.agenda-row.highlight{background:#f1f5df}

.poster-box{
  display:grid;
  grid-template-columns:1.1fr 1fr;
  gap:40px;
  padding:36px;
  border-radius:28px;
  background:linear-gradient(135deg,#f7f9ef,#edf4ec);
  border:1px solid var(--border);
}
.poster-box h3{font-weight:800}
.poster-box p{
  color:var(--muted);
  font-size:.88rem;
  line-height:1.7;
}
.poster-dates{display:grid;gap:10px}
.poster-dates div{
  display:flex;
  gap:14px;
  align-items:center;
  background:#fff;
  border:1px solid var(--border);
  border-radius:15px;
  padding:14px 16px;
}
.poster-dates strong{min-width:110px;color:var(--green)}
.poster-dates span{font-size:1rem;color:var(--muted)}

/* SPONSOR */
.sponsor-section{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at top right,rgba(219,232,61,.08),transparent 25%),
    linear-gradient(145deg,#08291d,#0d5b38 55%,#124c33);
}
.sponsor-card{
  height:100%;
  padding:28px;
  border-radius:24px;
  background:rgba(255,255,255,.075);
  border:1px solid rgba(255,255,255,.13);
  color:#fff;
  backdrop-filter:blur(10px);
  transition:.3s;
}
.sponsor-card:hover{
  transform:translateY(-7px);
  background:rgba(255,255,255,.1);
}
.sponsor-card.featured{
  border-color:rgba(219,232,61,.45);
  box-shadow:inset 0 0 0 1px rgba(219,232,61,.08);
}
.tier{
  display:block;
  color:var(--lime);
  text-transform:uppercase;
  letter-spacing:.12em;
  font-size:.7rem;
  font-weight:800;
}
.sponsor-card h3{
  margin:10px 0 18px;
  font-size:1.55rem;
  font-weight:800;
}
.sponsor-card h3 small{
  font-size:.64rem;
  color:rgba(255,255,255,.5);
}
.sponsor-card ul{padding-left:18px;margin:0}
.sponsor-card li{
  margin:8px 0;
  color:rgba(255,255,255,.67);
  font-size:.78rem;
}
.small-card{
  text-align:center;
  padding:24px;
}
.small-card h3{
  margin-bottom:0;
  font-size:1.15rem;
}
.mini-card{
  display:flex;
  align-items:center;
  gap:15px;
  padding:18px;
  border-radius:18px;
  color:#fff;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.1);
}
.mini-card i{
  color:var(--lime);
  font-size:1.15rem;
}
.mini-card strong,
.mini-card span{display:block}
.mini-card strong{font-size:.82rem}
.mini-card span{
  margin-top:2px;
  color:rgba(255,255,255,.55);
  font-size:.72rem;
}

/* TABLE + DETAIL */
.table-card{
  overflow:hidden;
  border-radius:24px;
  border:1px solid var(--border);
  box-shadow:0 15px 40px rgba(9,70,42,.06);
}
.table-card table{min-width:760px}
.table-card thead th{
  background:var(--green-dark);
  color:#fff;
  padding:18px;
  border:0;
  font-size:.77rem;
}
.table-card td{
  padding:18px;
  border-color:#e8eee9;
  font-size:.84rem;
}
.table-card tbody tr:nth-child(even){background:#f8faf6}
.detail-card{
  padding:30px;
}
.detail-card h4{font-weight:800;margin-bottom:22px}
.bank-grid{
  display:grid;
  grid-template-columns:145px 1fr;
  gap:10px 20px;
  font-size:.81rem;
}
.bank-grid span{color:var(--muted)}
.bank-grid strong{font-weight:700}
.check-list{list-style:none;margin:0;padding:0}
.check-list li{
  position:relative;
  padding-left:26px;
  margin:12px 0;
  font-size:1rem;
  line-height:1.55;
}
.check-list li:before{
  content:"✓";
  position:absolute;
  left:0;
  color:var(--green);
  font-weight:900;
}

/* LAYOUT */
.layout-card{
  position:relative;
  display:block;
  overflow:hidden;
  border-radius:28px;
  padding:12px;
  background:#fff;
  box-shadow:0 20px 50px rgba(10,70,43,.12);
}
.layout-card img{
  display:block;
  width:100%;
  max-height:580px;
  object-fit:cover;
  object-position:top;
  border-radius:18px;
  transition:.5s;
}
.layout-card:hover img{transform:scale(1.02)}
.layout-overlay{
  position:absolute;
  inset:12px;
  display:flex;
  align-items:flex-end;
  justify-content:flex-end;
  padding:16px;
}
.layout-overlay span{
  background:#fff;
  color:var(--green);
  padding:11px 15px;
  border-radius:12px;
  font-size:.76rem;
  font-weight:800;
  box-shadow:0 10px 25px rgba(0,0,0,.12);
}

/* CONTACT */
.contact-section{
  background:#071f17;
  padding-bottom:35px;
}
.contact-list{
  display:flex;
  flex-direction:column;
  gap:12px;
}
.contact-list a{
  color:#fff;
  font-size:.88rem;
}
.contact-list i{
  width:25px;
  color:var(--lime);
}
.pco-card{
  padding:30px;
  border-radius:28px;
  background:#fff;
}
.pco-card h4{font-weight:800;margin-bottom:22px}
.pco-card strong,
.pco-card span,
.pco-card a{display:block}
.pco-card span{
  color:var(--muted);
  font-size:.7rem;
  margin:4px 0;
}
.pco-card a{
  color:var(--green);
  font-size:.82rem;
  font-weight:800;
}
.pco-mail{
  margin-top:20px;
  padding-top:15px;
  border-top:1px solid var(--border);
}
.footer-rule{
  margin-top:58px;
  border-color:rgba(255,255,255,.12);
}
.footer-bottom{
  display:flex;
  justify-content:space-between;
  gap:20px;
  color:rgba(255,255,255,.5);
  font-size:.72rem;
}

.back-top{
  position:fixed;
  right:24px;
  bottom:24px;
  width:46px;
  height:46px;
  border:0;
  border-radius:50%;
  background:var(--lime);
  color:#183226;
  box-shadow:0 10px 25px rgba(0,0,0,.16);
  opacity:0;
  visibility:hidden;
  transition:.3s;
  z-index:30;
}
.back-top.show{opacity:1;visibility:visible}

@media(max-width:991px){
  .main-nav{
    padding:10px 0;
    background:rgba(6,49,32,.96);
  }
  .navbar-collapse{padding:14px 0}
  .hero-section{padding-top:90px}
  .min-vh-100{min-height:auto!important}
  .hero-section .row{padding:70px 0}
  .chip-one{left:-5%}
  .chip-two{right:-5%}
  .section{padding:80px 0}
  .poster-box{grid-template-columns:1fr}
}
@media(max-width:767px){
  .hero-title{font-size:3.7rem}
  .hero-card-wrap{max-width:330px}
  .float-chip{font-size:.63rem;padding:9px 11px}
  .info-pill{padding:14px}
  .focus-intro{padding:28px}
  .focus-item{padding:18px 20px}
  .agenda-row{grid-template-columns:1fr;gap:6px;padding:18px}
  .programme-tabs{
    display:grid;
    grid-template-columns:repeat(3,1fr);
  }
  .programme-tabs .nav-link{
    width:100%;
    padding:12px 8px;
  }
  .poster-box{padding:24px}
  .poster-dates div{
    flex-direction:column;
    align-items:flex-start;
    gap:4px;
  }
  .bank-grid{grid-template-columns:1fr;gap:4px}
  .bank-grid strong{margin-bottom:8px}
  .footer-bottom{flex-direction:column;gap:6px}
}
.top-info-bar{
  /*position:fixed;*/
  top:0;
  left:0;
  right:0;
  z-index:1040;
  height:38px;
  background:#052f20;
  color:rgba(255,255,255,.82);
  font-size:.72rem
}
.top-info-bar i{
  color:var(--vsi-lime);
  margin-right:7px
}
.top-info-bar a{
  color:rgba(255,255,255,.82)
}
.main-nav{
  top:38px;
  background:rgba(255,255,255,.96)!important;
  backdrop-filter:blur(14px);
  box-shadow:0 10px 30px rgba(4,49,31,.06);
  padding:11px 0!important;
  border-bottom:1px solid rgba(7,70,43,.08)
}
.main-nav.scrolled{
  top:0!important;
  padding:8px 0!important
}
.main-nav .nav-link{
  color:#173b2b!important;
  font-size:.83rem!important;
  font-weight:700!important
}
.main-nav .nav-link:hover{
  color:var(--vsi-green)!important
}
.nav-logo{width:52px;height:52px;object-fit:contain}.nav-brand-copy{line-height:1}.nav-brand-copy strong{display:block;color:#0a4b2e;font-weight:800}.nav-brand-copy small{display:block;color:#748078;font-size:.58rem;margin-top:5px}
.hero-section{position:relative;min-height:100vh;overflow:hidden;color:#fff;background:radial-gradient(circle at 82% 14%,rgba(220,232,63,.13),transparent 23%),radial-gradient(circle at 10% 84%,rgba(72,142,89,.22),transparent 28%),linear-gradient(122deg,#032b1c 0%,#064a2e 48%,#0b6b3f 100%)!important}
.hero-container{
  z-index:3;
  padding-top:40px;
  padding-bottom:20px
}
.hero-grid{position:absolute;inset:0;opacity:.34;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:54px 54px}
.hero-glow{
  position:absolute;
  border-radius:50%;
  border:1px solid rgba(220,232,63,.15)
}
.hero-glow-1{
  width:440px;
  height:440px;
  left:-180px;
  top:19%
}
.hero-glow-2{
  width:300px;
  height:300px;
  right:-110px;
  bottom:10%
}
.hero-brand-lockup{
  display:flex;
  align-items:center;
  gap:18px;
  /*margin-bottom:24px;*/
}
.hero-logo{
  width:86px;
  height:86px;
  object-fit:contain;
  /*background:#fff;*/
  border-radius:22px;
  padding:8px;
  /*box-shadow:0 14px 35px rgba(0,0,0,.18)*/
}
.hero-badge{
  display:inline-flex;
  padding:8px 14px;
  border-radius:999px;
  background:rgba(220,232,63,.1);
  border:1px solid rgba(220,232,63,.23);
  color:#edf4b8;
  font-size:1.2rem;
  font-weight:800;
  letter-spacing:.12em;
  /*text-transform:uppercase*/
}
.hero-organizer{font-size:.72rem;color:rgba(255,255,255,.52);margin:8px 0 0}

.hero-subtitle{
  /*font-family:"DM Serif Display",serif!important;*/
  font-style:italic;
  color:#f3e7b2!important;
  font-size:clamp(2rem,3.5vw,2.5rem)!important;
  line-height:1.05
}
.hero-intro{max-width:640px;color:rgba(255,255,255,.68);font-size:.96rem;line-height:1.75;margin-top:21px}
.hero-info-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.info-pill{display:flex;gap:11px;align-items:center;padding:14px!important;border-radius:18px!important;background:rgba(255,255,255,.075)!important;border:1px solid rgba(255,255,255,.11)!important;backdrop-filter:blur(8px)}
.info-icon{flex:0 0 38px;width:38px;height:38px;display:grid;place-items:center;border-radius:12px;background:rgba(220,232,63,.11);color:var(--vsi-lime)}
.info-pill small{
  display:block!important;
  color:rgba(255,255,255,.45)!important;
  font-size:.6rem!important;
  text-transform:uppercase;
  letter-spacing:.08em;
  margin-bottom:3px
}
.info-pill strong{
  font-size:.90rem!important;
  line-height:1.3!important
}
.btn-brand{
  background:linear-gradient(135deg,#dce83f,#c8db2a)!important;
  border:none!important;
  color:#143624!important;
  font-weight:800!important;
  box-shadow:0 10px 25px rgba(188,207,44,.22)
}
.btn-brand:hover{
  transform:translateY(-2px)
}
.btn-hero-outline{
  border:1px solid rgba(255,255,255,.34);
  color:#fff;
  background:rgba(255,255,255,.04);
  font-weight:700
}
.btn-hero-outline:hover{
  background:#fff;
  color:#0c5131
}
.hero-trust{
  display:flex;
  flex-wrap:wrap;
  gap:18px;
  color:rgba(255,255,255,.56);
  font-size:.7rem;
  font-weight:600
}
.hero-trust i{
  color:var(--vsi-lime);
  margin-right:6px
}
.visual-shell{
  position:relative;
  max-width:510px;
  margin-left:auto
}
.premium-slider{
  padding:10px;
  border-radius:32px;
  background:linear-gradient(145deg,rgba(255,255,255,.17),rgba(255,255,255,.05));
  border:1px solid rgba(255,255,255,.18);
  box-shadow:0 35px 80px rgba(0,0,0,.28);
  backdrop-filter:blur(12px)
}
.premium-slider .carousel-inner{border-radius:23px;overflow:hidden}.premium-slider .carousel-item{height:500px;background:#0b4d30}.premium-slider .carousel-item img{width:100%;height:100%;object-fit:cover;display:block;transform:scale(1.02);transition:transform 5s ease}.premium-slider .carousel-item.active img{transform:scale(1.07)}
.premium-slider .carousel-indicators{bottom:18px}.premium-slider .carousel-indicators [data-bs-target]{width:7px;height:7px;border-radius:50%;border:0;margin:0 5px;opacity:.65}.premium-slider .carousel-indicators .active{width:24px;border-radius:20px;background:var(--vsi-lime);opacity:1}
.hero-slider-arrow{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.92);color:#0a5633;font-size:.8rem;box-shadow:0 8px 20px rgba(0,0,0,.16)}
.visual-badge{position:absolute;z-index:8;background:#fff;color:#173b2b;border-radius:16px;box-shadow:0 18px 40px rgba(0,0,0,.22)}
.visual-badge-top{top:28px;left:-34px;padding:12px 15px;font-size:.7rem;font-weight:800;display:flex;align-items:center;gap:8px;animation:heroFloat 4.3s ease-in-out infinite}.visual-badge-top i{color:#0d6c3d}
.visual-badge-bottom{right:-22px;bottom:40px;padding:10px 13px;display:flex;align-items:center;gap:9px;animation:heroFloat 4.3s ease-in-out infinite 1.3s}.visual-badge-bottom strong{font-size:1.3rem;color:#0a5b36}.visual-badge-bottom span{font-size:.58rem;font-weight:800;line-height:1.05;color:#6c776f}
@keyframes heroFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-9px)}}
@media(max-width:991px){.top-info-bar{display:none!important}.main-nav{top:0}.hero-container{padding-top:120px}.hero-info-grid{grid-template-columns:1fr}.visual-shell{margin:0 auto}.premium-slider .carousel-item{height:440px}}
@media(max-width:767px){.nav-logo{width:46px;height:46px}.hero-logo{width:70px;height:70px}.hero-title{font-size:3.6rem!important}.hero-subtitle{font-size:1.8rem!important}.premium-slider .carousel-item{height:350px}.visual-badge-top{left:8px}.visual-badge-bottom{right:8px}}
.text-muted{
  text-align: justify;
}



/* ===== Mobile responsive refinements ===== */
@media (max-width: 991.98px){
  html,body{width:100%;overflow-x:hidden}
  .container{max-width:100%}

  /* Navigation */
  .main-nav{padding:8px 0!important}
  .main-nav .container{padding-left:16px;padding-right:16px}
  .navbar-toggler{padding:8px 10px;border-radius:10px!important;background:#f2f6f3}
  .navbar-toggler:focus{box-shadow:0 0 0 .2rem rgba(14,92,56,.15)!important}
  .navbar-collapse{
    margin-top:8px;
    padding:10px 12px 14px;
    max-height:calc(100vh - 76px);
    overflow-y:auto;
    background:rgba(255,255,255,.99);
    border:1px solid var(--border);
    border-radius:16px;
    box-shadow:0 18px 45px rgba(4,49,31,.12);
  }
  .navbar-nav{align-items:stretch!important}
  .main-nav .nav-link{
    display:block;
    padding:10px 8px!important;
    font-size:.9rem!important;
    line-height:1.25;
    border-bottom:1px solid #edf2ee;
  }
  .navbar-nav .nav-item:last-child .nav-link{border-bottom:0}

  /* Hero */
  .hero-section{min-height:auto!important}
  .hero-container{padding-top:94px!important;padding-bottom:46px!important}
  .hero-section .row{padding:22px 0 0!important}
  .hero-brand-lockup{gap:12px}
  .hero-title{margin-top:16px}
  .visual-shell{width:100%;max-width:560px}
  .premium-slider{border-radius:24px;padding:8px}
  .premium-slider .carousel-inner{border-radius:18px}

  /* General sections */
  .section{padding:60px 0!important}
  .section-heading{max-width:100%}
  .poster-box{gap:24px}
  .table-card{overflow-x:auto;-webkit-overflow-scrolling:touch}
  .layout-card iframe{height:320px}
}

@media (max-width: 767.98px){
  body{font-size:15px}
  .container{padding-left:18px;padding-right:18px}
  .section{padding:46px 0!important}

  /* Type scales */
  .section-title{font-size:clamp(1.8rem,8vw,2.35rem);line-height:1.12}
  .eyebrow{font-size:1.25rem;line-height:1.3;gap:8px;margin-bottom:12px}
  .eyebrow:before{width:24px;flex:0 0 24px}
  .lead-text{font-size:1rem;line-height:1.7}
 /* .text-muted{text-align:left!important}*/

  /* Hero */
  .hero-container{padding-top:82px!important;padding-bottom:38px!important}
  .hero-section .row{padding-top:14px!important}
  .hero-logo{width:60px!important;height:60px!important;padding:5px}
  .hero-badge{
    max-width:100%;
    white-space:normal;
    font-size:.78rem!important;
    line-height:1.4;
    letter-spacing:.05em;
    padding:7px 11px;
  }
  .hero-title{font-size:clamp(2.65rem,14vw,3.65rem)!important;line-height:.98;margin:16px 0 10px}
  .hero-subtitle{font-size:clamp(1.45rem,7vw,1.85rem)!important;line-height:1.15}
  .hero-intro,.hero-copy{font-size:.93rem;line-height:1.65}
  .hero-info-grid{grid-template-columns:1fr!important;gap:10px}
  .info-pill{padding:12px!important;border-radius:15px!important}
  .info-pill strong{font-size:.86rem!important}
  .hero-section .d-flex.flex-wrap.gap-3.mt-4{display:grid!important;grid-template-columns:1fr;gap:10px!important}
  .hero-section .btn{width:100%;font-size:.92rem;padding:.75rem 1rem!important}
  .visual-shell{max-width:100%;margin-top:8px!important;padding:0 4px}
  .premium-slider{border-radius:20px}
  .premium-slider .carousel-item{height:300px!important}
  .visual-badge{display:none}
  .hero-slider-arrow{width:34px;height:34px}

  /* Cards */
  .person-card{padding:18px;border-radius:18px}
  .person-card img{max-width:140px;width:58%!important;height:auto}
  .stat-card,.detail-card{padding:22px;border-radius:18px}
  .stat-card h3{font-size:1.7rem}
  .focus-panel{border-radius:20px}
  .focus-intro{padding:24px!important}
  .focus-intro h3{font-size:1.45rem}
  .focus-item{padding:16px 18px!important;align-items:flex-start}

  /* Programme */
  .programme-tabs{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px!important;width:100%}
  .programme-tabs .nav-item{width:100%!important}
  .programme-tabs .nav-link{width:100%!important;min-width:0;padding:10px 5px!important;border-radius:12px;font-size:.78rem}
  .programme-tabs .nav-link small{font-size:.95rem;line-height:1.2;margin-top:3px}
  .agenda-card{border-radius:18px}
  .agenda-row{display:block!important;padding:16px!important}
  .agenda-row .row{--bs-gutter-x:0;--bs-gutter-y:12px}
  .agenda-row .row > [class*="col-"]{width:100%!important;max-width:100%;flex:0 0 100%}
  .agenda-row h5{font-size:.9rem;line-height:1.45}
  .agenda-row > span{display:block;margin-bottom:5px}
  .poster-box{padding:20px!important;border-radius:20px}
  .poster-dates div{padding:12px 14px}
  .poster-dates strong{min-width:0}

  /* Tables and detail grids */
  .table-card{border-radius:16px}
  .table-card table{min-width:680px}
  .table-card th,.table-card td{padding:13px!important;font-size:.76rem!important}
  .bank-grid{grid-template-columns:1fr!important}
  .check-list li{font-size:.92rem}

  /* Venue/contact */
  .layout-card{padding:8px;border-radius:20px}
  .layout-card iframe{height:260px}
  .layout-overlay{inset:8px;padding:10px}
  .layout-overlay span{font-size:.68rem;padding:9px 11px}
  .contact-section{text-align:left}
  .contact-list a{overflow-wrap:anywhere}
  .pco-card{padding:22px;border-radius:20px}
  #contact .col-lg-4[align="center"] img{width:min(210px,70%)!important}
  #contact .col-lg-4[align="center"] p{text-align:left}

  .footer-rule{margin-top:38px}
  .back-top{right:16px;bottom:16px;width:42px;height:42px}
}

@media (max-width: 575.98px) {

	 .logocontrol1 {
    width: 100% !important;
	display: block !important;
}
.logocontrol {
	display:none !important;
}
}

@media (max-width: 479.98px){
  .container{padding-left:14px;padding-right:14px}
  .hero-container{padding-top:0px!important}
  .hero-title{font-size:clamp(2.35rem,14vw,3.05rem)!important}
  .hero-subtitle{font-size:1.35rem!important}
  .premium-slider .carousel-item{height:250px!important}
  .programme-tabs{grid-template-columns:1fr}
  .programme-tabs .nav-link{display:flex;align-items:center;justify-content:space-between;text-align:left;padding:10px 14px!important}
  .programme-tabs .nav-link small{display:inline-block;margin:0;font-size:.8rem}
  .section-title{font-size:1.8rem}
  .eyebrow{font-size:1.1rem}
  .person-card img{width:66%!important}
  .table-card table{min-width:620px}
}


/* =========================================
   MOBILE FIX - VSI PROFILE CARDS
   Sharadchandra Pawar
   Dilip Walse-Patil
   Sambhaji Kadupatil
   ========================================= */

@media (max-width: 767px) {

    /* Profile card */
    .person-card {
        width: 100%;
        height: 100%;
        min-height: 270px;
        padding: 20px 15px;
        display: flex;
        justify-content: center;
        align-items: flex-start;
        text-align: center;
    }

    /* Inner profile container */
    .person-card > div {
        width: 100%;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: flex-start;
    }

    /* Make all 3 profile images equal */
    .person-card img {
        width: 150px !important;
        height: 150px !important;
        max-width: 150px !important;
        object-fit: contain;
        object-position: center;
        display: block;
        margin: 0 auto 15px;
    }

    /* Person name */
    .person-card h5 {
        width: 100%;
        margin: 0 0 7px;
        text-align: center;
        font-size: 1rem;
        line-height: 1.35;
        font-weight: 800;
    }

    /* Designation */
    .person-card p {
        width: 100%;
        margin: 0;
        text-align: center;
        font-size: 0.78rem;
        line-height: 1.5;
    }

    /* Remove empty Bootstrap spacer columns on mobile */
    #about .col-md-4:has(> br:only-child),
    #about .col-md-4:empty,
    #about .col-md-2:empty {
        display: none;
    }

    /* Consistent spacing between profile rows */
    #about .row.g-4.mt-4 {
        margin-top: 15px !important;
    }
}



/* ==========================================================
   CONFERENCE HEADER JPG
========================================================== */

.conference-header-banner {
  width: 100%;
  position: relative;
  overflow: hidden;
  background: #f4f5ee;
}

.conference-header-img {
  width: 100%;
  height: auto;
  display: block;
}


/* Desktop - compensate for fixed navbar */
@media (min-width: 992px) {

  .conference-header-banner {
   /* margin-top: 105px;*/
	          position: relative;
        /*min-height: 440px;*/
        display: flex;
        align-items: center;
       padding: 47px 0 0px; 
        overflow: hidden;
  }

}


/* Tablet */
@media (max-width: 991.98px) {

  .conference-header-banner {
    margin-top: 70px;
  }

  .conference-header-img {
    width: 100%;
    height: auto;
    object-fit: contain;
  }

}


/* Mobile */
@media (max-width: 767.98px) {

  .conference-header-banner {
    margin-top: 65px;
    width: 100%;
  }

  .conference-header-img {
    width: 100%;
    height: auto;
    display: block;
    object-fit: contain;
    object-position: center;
  }

}


/* Small Mobile */
@media (max-width: 480px) {

  .conference-header-banner {
    margin-top: 60px;
  }

}



/* ==========================================================
   REGISTRATION BUTTON AREA
========================================================== */

.registration-action-box {

    padding: 35px 20px;

    border-radius: 22px;

    background:
        linear-gradient(
            135deg,
            #f2f8f4,
            #ffffff
        );

    border:
        1px solid rgba(11, 107, 63, .12);

    box-shadow:
        0 12px 35px rgba(5, 66, 40, .08);
}


.registration-action-title {

    color: #063f29;

    font-weight: 800;

    margin-bottom: 8px;
}


.registration-action-text {

    color: #758179;

    font-size: 14px;

    margin-bottom: 22px;
}


.registration-buttons {

    display: flex;

    justify-content: center;

    align-items: center;

    flex-wrap: wrap;

    gap: 15px;
}


.registration-btn {

    min-width: 220px;

    display: inline-flex;

    justify-content: center;

    align-items: center;

    gap: 10px;

    padding:
        14px
        25px;

    border-radius: 50px;

    font-size: 14px;

    font-weight: 700;

    text-decoration: none;

    transition:
        all .3s ease;
}


.registration-btn i {

    font-size: 15px;
}


/* Offline */

.offline-btn {

    background: #ffffff;

    color: #0b6b3f;

    border:
        2px solid #0b6b3f;
}


.offline-btn:hover {

    background: #0b6b3f;

    color: #ffffff;

    transform: translateY(-3px);

    box-shadow:
        0 10px 25px rgba(11, 107, 63, .18);
}


/* Online */

.online-btn {

    background: #0b6b3f;

    color: #ffffff;

    border:
        2px solid #0b6b3f;
}


.online-btn:hover {

    background: #dbe83d;

    border-color: #dbe83d;

    color: #063f29;

    transform: translateY(-3px);

    box-shadow:
        0 10px 25px rgba(11, 107, 63, .18);
}


/* ==========================================================
   MOBILE
========================================================== */

@media (max-width: 767.98px) {

    .registration-action-box {

        padding:
            28px
            16px;
    }


    .registration-buttons {

        flex-direction: column;

        gap: 12px;
    }


    .registration-btn {

        width: 100%;

        min-width: 0;

        max-width: 360px;
    }


    .bank-grid {

        grid-template-columns: 1fr !important;
    }


    .bank-grid span {

        margin-top: 10px;

        font-weight: 600;

        color: #0b6b3f;
    }


    .table-responsive {

        -webkit-overflow-scrolling: touch;
    }

}



/* ==========================================================
   VISA SECTION
========================================================== */

.visa-section {
    padding: 90px 0;
    background: #f7faf8;
}

.visa-main-card,
.visa-card {
    background: #ffffff;
    border: 1px solid #e1ebe5;
    border-radius: 24px;
    box-shadow: 0 15px 45px rgba(5, 66, 40, .07);
}

.visa-main-card {
    display: flex;
    gap: 25px;
    padding: 35px;
}

.visa-main-card h3,
.visa-card h3,
.visa-documents-box h3 {
    color: #063f29;
    font-weight: 800;
}

.visa-main-card p,
.visa-card p {
    color: #6d7a72;
    line-height: 1.8;
}

.visa-icon-box,
.visa-card-icon {
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #eaf4ee;
    color: #0b6b3f;
}

.visa-icon-box {
    width: 70px;
    height: 70px;
    border-radius: 20px;
    font-size: 29px;
}

.visa-alert {
    display: flex;
    gap: 12px;
    padding: 15px 18px;
    margin-top: 20px;
    border-left: 4px solid #dbe83d;
    border-radius: 10px;
    background: #f5f9e1;
    color: #315441;
}

.visa-alert i {
    color: #0b6b3f;
    margin-top: 4px;
}

.visa-card {
    padding: 32px;
}

.visa-card-heading {
    display: flex;
    gap: 15px;
    align-items: center;
    margin-bottom: 22px;
}

.visa-card-icon {
    width: 58px;
    height: 58px;
    border-radius: 16px;
    font-size: 22px;
}

.visa-card-heading span {
    display: block;
    color: #0b6b3f;
    text-transform: uppercase;
    letter-spacing: 1.2px;
    font-size: 10px;
    font-weight: 800;
}

.visa-card-heading h3 {
    font-size: 21px;
    margin: 3px 0 0;
}

.visa-check-list {
    list-style: none;
    margin: 20px 0 25px;
    padding: 0;
}

.visa-check-list li {
    display: flex;
    gap: 11px;
    align-items: flex-start;
    padding: 8px 0;
    color: #44564c;
}

.visa-check-list i {
    width: 22px;
    height: 22px;
    border-radius: 50%;
    background: #eaf4ee;
    color: #0b6b3f;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 10px;
    margin-top: 1px;
}

.visa-deadline-box {
    display: flex;
    gap: 14px;
    align-items: center;
    padding: 15px;
    background: #f6f8f7;
    border-radius: 12px;
    margin-bottom: 20px;
}

.visa-deadline-box i {
    color: #0b6b3f;
    font-size: 20px;
}

.visa-deadline-box strong,
.visa-deadline-box span {
    display: block;
}

.visa-deadline-box span {
    color: #768078;
    font-size: 12px;
}

.approval-step {
    display: flex;
    gap: 15px;
    border-bottom: 1px solid #eef2ef;
    padding: 17px 0;
}

.approval-step:last-child {
    border-bottom: 0;
}

.step-number {
    width: 42px;
    height: 42px;
    flex: 0 0 42px;
    border-radius: 50%;
    background: #0b6b3f;
    color: #ffffff;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 11px;
    font-weight: 800;
}

.approval-step strong {
    color: #063f29;
}

.approval-step p {
    font-size: 13px;
    margin: 4px 0 0;
}

.visa-btn {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    gap: 9px;
    padding: 13px 24px;
    border-radius: 50px;
    text-decoration: none;
    font-size: 13px;
    font-weight: 800;
    transition: .3s;
}

.visa-btn-primary {
    background: #0b6b3f;
    color: #ffffff;
}

.visa-btn-primary:hover {
    background: #dbe83d;
    color: #063f29;
    transform: translateY(-2px);
}

.visa-documents-box {
    padding: 40px;
    border-radius: 25px;
    background: #063f29;
    color: #ffffff;
}

.visa-documents-box h3 {
    color: #ffffff;
    font-size: 28px;
}

.visa-documents-box p {
    color: rgba(255,255,255,.7);
    line-height: 1.7;
}

.visa-document-card {
    min-height: 165px;
    height: 100%;
    padding: 22px 15px;
    border-radius: 18px;
    background: rgba(255,255,255,.08);
    border: 1px solid rgba(255,255,255,.12);
    text-align: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 14px;
}

.visa-document-card i {
    color: #dbe83d;
    font-size: 28px;
}

.visa-document-card strong {
    font-size: 13px;
}

.visa-contact-box {
    background: #dbe83d;
    padding: 28px 32px;
    border-radius: 20px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 25px;
}

.visa-contact-box span {
    color: #0b6b3f;
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.visa-contact-box h4 {
    color: #063f29;
    font-weight: 800;
    margin: 5px 0;
}

.visa-contact-box p {
    margin: 0;
    color: #49604f;
    font-size: 13px;
}

.visa-btn-light {
    background: #ffffff;
    color: #063f29;
    white-space: nowrap;
}

.visa-btn-light:hover {
    background: #063f29;
    color: #ffffff;
}

.visa-notes {
    padding: 30px;
    border-radius: 22px;
    background: #ffffff;
    border: 1px solid #e4ebe7;
}

.visa-notes-title {
    display: flex;
    align-items: center;
    gap: 10px;
    color: #063f29;
    font-weight: 800;
    font-size: 18px;
}

.visa-notes-title i {
    color: #d2a800;
}

.visa-note-item {
    height: 100%;
    padding: 20px;
    border-radius: 15px;
    background: #f7faf8;
}

.visa-note-item span {
    color: #0b6b3f;
    font-size: 11px;
    font-weight: 800;
}

.visa-note-item p {
    color: #67756d;
    font-size: 13px;
    line-height: 1.7;
    margin: 8px 0 0;
}


/* ==========================================================
   MOBILE
========================================================== */

@media (max-width: 767.98px) {

    .visa-section {
        padding: 55px 0;
    }

    .visa-main-card {
        flex-direction: column;
        padding: 25px 20px;
    }

    .visa-card {
        padding: 24px 20px;
    }

    .visa-documents-box {
        padding: 28px 20px;
    }

    .visa-contact-box {
        flex-direction: column;
        align-items: flex-start;
        padding: 24px 20px;
    }

    .visa-contact-box .visa-btn {
        width: 100%;
    }

    .visa-btn-primary {
        width: 100%;
    }

    .visa-notes {
        padding: 22px 16px;
    }

}


/* ==========================================================
   COMING SOON SECTION
========================================================== */

.coming-soon-section {

    padding: 100px 0;

    background:
        linear-gradient(
            135deg,
            #f6faf7,
            #eef6f1
        );

    position: relative;

    overflow: hidden;
}


/* Decorative background circles */

.coming-soon-section::before {

    content: "";

    position: absolute;

    width: 350px;

    height: 350px;

    border-radius: 50%;

    background:
        rgba(11, 107, 63, .05);

    top: -150px;

    left: -130px;
}


.coming-soon-section::after {

    content: "";

    position: absolute;

    width: 300px;

    height: 300px;

    border-radius: 50%;

    border:
        40px solid rgba(219, 232, 61, .10);

    right: -120px;

    bottom: -150px;
}


/* Main Box */

.coming-soon-box {

    position: relative;

    z-index: 2;

    max-width: 850px;

    margin: 0 auto;

    padding: 60px 45px;

    text-align: center;

    background: #ffffff;

    border-radius: 30px;

    border:
        1px solid rgba(11, 107, 63, .10);

    box-shadow:
        0 20px 60px rgba(5, 66, 40, .10);
}


/* Icon */

.coming-soon-icon {

    width: 90px;

    height: 90px;

    margin:
        0
        auto
        22px;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 50%;

    background:
        linear-gradient(
            135deg,
            #0b6b3f,
            #14915a
        );

    color: #ffffff;

    font-size: 35px;

    box-shadow:
        0 12px 30px rgba(11, 107, 63, .22);
}


/* Label */

.coming-soon-label {

    display: inline-block;

    padding:
        7px
        16px;

    margin-bottom: 15px;

    border-radius: 50px;

    background: #eff6d3;

    color: #0b6b3f;

    font-size: 11px;

    font-weight: 800;

    letter-spacing: 1.5px;

    text-transform: uppercase;
}


/* Heading */

.coming-soon-box h2 {

    font-family:
        'DM Serif Display',
        serif;

    color: #063f29;

    font-size:
        clamp(
            2.3rem,
            5vw,
            4rem
        );

    line-height: 1.1;

    margin-bottom: 18px;
}


/* Description */

.coming-soon-box p {

    max-width: 620px;

    margin:
        0
        auto;

    color: #6c7971;

    font-size: 15px;

    line-height: 1.8;
}


/* Decorative Line */

.coming-soon-line {

    display: flex;

    justify-content: center;

    margin:
        28px
        0;
}


.coming-soon-line span {

    width: 70px;

    height: 4px;

    border-radius: 10px;

    background: #dbe83d;
}


/* Button */

.coming-soon-btn {

    display: inline-flex;

    align-items: center;

    justify-content: center;

    gap: 9px;

    padding:
        13px
        27px;

    border-radius: 50px;

    background: #0b6b3f;

    color: #ffffff;

    text-decoration: none;

    font-size: 13px;

    font-weight: 700;

    transition: .3s ease;
}


.coming-soon-btn:hover {

    background: #dbe83d;

    color: #063f29;

    transform:
        translateY(-3px);

    box-shadow:
        0 10px 25px rgba(11, 107, 63, .16);
}


/* ==========================================================
   MOBILE
========================================================== */

@media (max-width: 767.98px) {

    .coming-soon-section {

        padding:
            60px
            0;
    }


    .coming-soon-box {

        margin:
            0
            15px;

        padding:
            42px
            22px;

        border-radius: 22px;
    }


    .coming-soon-icon {

        width: 72px;

        height: 72px;

        font-size: 28px;

        margin-bottom: 18px;
    }


    .coming-soon-box h2 {

        font-size: 2.25rem;
    }


    .coming-soon-box p {

        font-size: 14px;

        line-height: 1.7;
    }


    .coming-soon-btn {

        width: 100%;

        max-width: 300px;
    }

}



/* ==========================================================
   CONFERENCE HIGHLIGHTS
========================================================== */

.conference-highlights-section {

    position: relative;

    padding: 95px 0;

    background:
        linear-gradient(
            135deg,
            #f8fbf9 0%,
            #eef6f1 100%
        );

    overflow: hidden;
}


/* Background decoration */

.conference-highlights-section::before {

    content: "";

    position: absolute;

    width: 420px;
    height: 420px;

    border-radius: 50%;

    background:
        rgba(11, 107, 63, .045);

    left: -210px;

    top: -160px;
}


.conference-highlights-section::after {

    content: "";

    position: absolute;

    width: 340px;
    height: 340px;

    border-radius: 50%;

    border:
        55px solid rgba(219, 232, 61, .08);

    right: -170px;

    bottom: -170px;
}


.conference-highlights-section .container {

    position: relative;

    z-index: 2;
}


/* Intro */

.highlights-intro {

    max-width: 700px;

    margin:
        15px
        auto
        0;

    color: #718078;

    font-size: 15px;

    line-height: 1.8;
}


/* Card */

.highlight-feature-card {

    position: relative;

    height: 100%;

    /*min-height: 310px;*/

    padding:
        32px
        26px;

    background: #ffffff;

    border:
        1px solid rgba(11, 107, 63, .10);

    border-radius: 24px;

    overflow: hidden;

    transition:
        transform .35s ease,
        box-shadow .35s ease,
        border-color .35s ease;

    box-shadow:
        0 12px 35px rgba(5, 66, 40, .06);
}


/* Decorative shape */

.highlight-feature-card::before {

    content: "";

    position: absolute;

    width: 120px;
    height: 120px;

    border-radius: 50%;

    background:
        rgba(219, 232, 61, .13);

    right: -50px;

    top: -50px;

    transition: .35s ease;
}


.highlight-feature-card::after {

    content: "";

    position: absolute;

    left: 0;

    bottom: 0;

    width: 0;

    height: 4px;

    background: #dbe83d;

    transition: width .35s ease;
}


/* Hover */

.highlight-feature-card:hover {

    transform:
        translateY(-8px);

    border-color:
        rgba(11, 107, 63, .22);

    box-shadow:
        0 20px 50px rgba(5, 66, 40, .12);
}


.highlight-feature-card:hover::before {

    width: 150px;

    height: 150px;
}


.highlight-feature-card:hover::after {

    width: 100%;
}


/* Icon */

.highlight-icon {

    position: relative;

    z-index: 2;

    width: 68px;

    height: 68px;

    display: flex;

    align-items: center;

    justify-content: center;

    margin-bottom: 24px;

    border-radius: 20px;

    background:
        linear-gradient(
            135deg,
            #0b6b3f,
            #14915a
        );

    color: #ffffff;

    font-size: 26px;

    box-shadow:
        0 10px 25px rgba(11, 107, 63, .18);
}


/* Heading */

.highlight-feature-card h3 {

    position: relative;

    z-index: 2;

    color: #063f29;

    font-size: 19px;

    font-weight: 800;

    line-height: 1.35;

    margin-bottom: 13px;
}


/* Description */

.highlight-feature-card p {

    position: relative;

    z-index: 2;

    color: #748078;

    font-size: 13.5px;

    line-height: 1.75;

    margin: 0;
}



/* ==========================================================
   TABLET
========================================================== */

@media (max-width: 991.98px) {

    .conference-highlights-section {

        padding:
            75px
            0;
    }


    .highlight-feature-card {

        min-height: 285px;
    }

}



/* ==========================================================
   MOBILE
========================================================== */

@media (max-width: 767.98px) {

    .conference-highlights-section {

        padding:
            55px
            0;
    }


    .conference-highlights-section .container {

        padding-left: 18px;

        padding-right: 18px;
    }


    .highlights-intro {

        font-size: 14px;

        line-height: 1.7;
    }


    .highlight-feature-card {

        min-height: 0;

        padding:
            27px
            22px;

        border-radius: 19px;
    }


    .highlight-icon {

        width: 58px;

        height: 58px;

        border-radius: 17px;

        font-size: 22px;

        margin-bottom: 18px;
    }


    .highlight-feature-card h3 {

        font-size: 18px;
    }


    .highlight-feature-card p {

        font-size: 13px;

        line-height: 1.7;
    }

}






/* ==========================================================
   SPEAKERS SECTION
========================================================== */

.speakers-section {

    position: relative;

    padding: 90px 0;

    background:
        linear-gradient(
            135deg,
            #f8fbf9 0%,
            #eef6f1 100%
        );

    overflow: hidden;
}


/* Decorative Background */

.speakers-section::before {

    content: "";

    position: absolute;

    width: 400px;
    height: 400px;

    border-radius: 50%;

    background: rgba(11, 107, 63, .04);

    left: -200px;
    top: -180px;
}


.speakers-section::after {

    content: "";

    position: absolute;

    width: 330px;
    height: 330px;

    border-radius: 50%;

    border:
        50px solid rgba(219, 232, 61, .08);

    right: -160px;
    bottom: -160px;
}


.speakers-section .container {

    position: relative;

    z-index: 2;
}


/* ==========================================================
   SECTION INTRO
========================================================== */

.speakers-intro {

    max-width: 680px;

    margin:
        15px
        auto
        0;

    color: #718078;

    font-size: 15px;

    line-height: 1.8;
}



/* ==========================================================
   CATEGORY BOX
========================================================== */

.speaker-category {

    height: 100%;

    padding: 28px;

    background: #ffffff;

    border:
        1px solid rgba(11, 107, 63, .10);

    border-radius: 28px;

    box-shadow:
        0 15px 45px rgba(5, 66, 40, .07);
}



/* ==========================================================
   CATEGORY HEADING
========================================================== */

.speaker-category-heading {

    display: flex;

    align-items: center;

    gap: 15px;

    margin-bottom: 28px;

    padding-bottom: 20px;

    border-bottom:
        1px solid #e7eee9;
}


.category-icon {

    width: 58px;

    height: 58px;

    flex: 0 0 58px;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 17px;

    background:
        linear-gradient(
            135deg,
            #0b6b3f,
            #14915a
        );

    color: #ffffff;

    font-size: 22px;

    box-shadow:
        0 9px 24px rgba(11, 107, 63, .18);
}


.speaker-category-heading span {

    display: block;

    color: #0b6b3f;

    font-size: 10px;

    font-weight: 800;

    text-transform: uppercase;

    letter-spacing: 1.5px;

    margin-bottom: 3px;
}


.speaker-category-heading h3 {

    color: #063f29;

    font-size: 23px;

    font-weight: 800;

    margin: 0;
}



/* ==========================================================
   SPEAKER CARD
========================================================== */

.speaker-card {
    height: 100%;
    overflow: hidden;
    background: #fff;
    border: 1px solid #e4ece7;
    border-radius: 20px;

    /* smoother rendering */
    transform: translateZ(0);
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;

    transition:
        box-shadow .25s ease,
        border-color .25s ease;
}


/* Card ko move mat karo */
.speaker-card:hover {
    transform: translateZ(0);

    border-color: rgba(11, 107, 63, .25);

    box-shadow:
        0 14px 32px rgba(5, 66, 40, .11);
}


/* ==========================================================
   PHOTO
========================================================== */

.speaker-photo {
    position: relative;
    width: 100%;
    height: 230px;
    overflow: hidden;
    background: #e9f0eb;
    border-radius: 19px 19px 0 0;

    transform: translateZ(0);
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
}


.speaker-photo img {
    width: 100%;
    height: 100%;
    display: block;

    object-fit: cover;
    object-position: top center;

    /* remove image zoom animation */
    transform: none !important;
    transition: none !important;

    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
}

.speaker-card:hover .speaker-photo img {
    transform: none !important;
}




/* Gradient over bottom of image */

.speaker-photo::after {

    content: "";

    position: absolute;

    inset: 0;

    background:
        linear-gradient(
            to top,
            rgba(4, 52, 33, .18),
            transparent 50%
        );

    pointer-events: none;
}



/* ==========================================================
   SPEAKER INFORMATION
========================================================== */

.speaker-info {

    padding: 19px 18px 21px;
}


.speaker-country {

    display: inline-flex;

    align-items: center;

    gap: 5px;

    margin-bottom: 8px;

    color: #0b6b3f;

    font-size: 10px;

    font-weight: 800;

    text-transform: uppercase;

    letter-spacing: .8px;
}


.speaker-country i {

    color: #a4b620;
}


.speaker-info h4 {

    color: #063f29;

    font-size: 17px;

    font-weight: 800;

    line-height: 1.3;

    margin:
        0
        0
        7px;
}


.speaker-designation {

    color: #0b6b3f;

    font-size: 12px;

    font-weight: 700;

    line-height: 1.45;

    margin-bottom: 5px;
}


.speaker-organisation {

    color: #7a867f;

    font-size: 11px;

    line-height: 1.55;

    margin: 0;
}



/* ==========================================================
   VIEW ALL BUTTON
========================================================== */

.speaker-more {

    text-align: center;

    margin-top: 27px;
}


.speaker-view-btn {

    display: inline-flex;

    align-items: center;

    justify-content: center;

    gap: 9px;

    padding:
        11px
        20px;

    border:
        1px solid #0b6b3f;

    border-radius: 50px;

    color: #0b6b3f;

    background: #ffffff;

    font-size: 12px;

    font-weight: 800;

    text-decoration: none;

    transition: .3s ease;
}


.speaker-view-btn:hover {

    background: #0b6b3f;

    color: #ffffff;

    transform: translateY(-2px);
}


.speaker-view-btn i {

    font-size: 11px;

    transition: transform .3s ease;
}


.speaker-view-btn:hover i {

    transform: translateX(3px);
}



/* ==========================================================
   INTERNATIONAL COLUMN DIFFERENT ACCENT
========================================================== */

.international-category .category-icon {

    background:
        linear-gradient(
            135deg,
            #063f29,
            #0b6b3f
        );
}



/* ==========================================================
   TABLET
========================================================== */

@media (max-width: 991.98px) {

    .speakers-section {

        padding:
            70px
            0;
    }


    .speaker-category {

        height: auto;
    }


    .speaker-photo {

        height: 260px;
    }

}



/* ==========================================================
   MOBILE
========================================================== */

@media (max-width: 767.98px) {

    .speakers-section {

        padding:
            55px
            0;
    }


    .speakers-section .container {

        padding-left: 17px;

        padding-right: 17px;
    }


    .speakers-intro {

        font-size: 14px;

        line-height: 1.7;
    }


    .speaker-category {

        padding: 19px;

        border-radius: 21px;
    }


    .speaker-category-heading {

        margin-bottom: 20px;

        padding-bottom: 17px;
    }


    .category-icon {

        width: 50px;

        height: 50px;

        flex-basis: 50px;

        font-size: 19px;

        border-radius: 14px;
    }


    .speaker-category-heading h3 {

        font-size: 20px;
    }


    /*
       Two cards per row can become too narrow
       on phones, so Bootstrap col-md-6 naturally
       switches to one card per row.
    */

    .speaker-photo {

        height: auto;

        aspect-ratio: 4 / 3;
    }


    .speaker-info {

        padding: 17px;
    }


    .speaker-info h4 {

        font-size: 17px;
    }

}



/* ==========================================================
   SMALL MOBILE
========================================================== */

@media (max-width: 420px) {

    .speaker-category {

        padding: 15px;
    }


    .speaker-photo {

        aspect-ratio: 1 / 1;
    }

}






/* ==========================================
   VSI 2027 - ACCOMMODATION
========================================== */

.vsi-accommodation-section {
    padding: 90px 0;
    background: #f5f9f6;
}

.vsi-acc-eyebrow {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    color: #0b6b3f;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 2px;
    margin-bottom: 13px;
}

.vsi-acc-eyebrow span {
    width: 26px;
    height: 2px;
    background: #b8ce32;
}

.vsi-acc-title {
    font-size: clamp(30px, 4vw, 43px);
    font-weight: 800;
    color: #063f29;
    margin-bottom: 15px;
}

.vsi-acc-title span {
    color: #0b6b3f;
}

.vsi-acc-subtitle {
    color: #738078;
    max-width: 650px;
    margin: 0 auto;
    font-size: 15px;
    line-height: 1.8;
}

.vsi-acc-hotels {
    margin-top: 32px;
}

/* HOTEL CARD */

.vsi-hotel-card {
    background: #fff;
    border-radius: 20px;
    overflow: hidden;
    border: 1px solid #e3ede6;
    height: 100%;
    display: flex;
    flex-direction: column;
    transition: box-shadow .3s ease, border-color .3s ease;
}

.vsi-hotel-card:hover {
    border-color: #c3dccb;
    box-shadow: 0 16px 38px rgba(6, 63, 41, .10);
}

/* IMAGE */

.vsi-hotel-image {
    position: relative;
    height: 220px;
    overflow: hidden;
    background: #e8f0e9;
}

.vsi-hotel-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.vsi-hotel-number {
    position: absolute;
    top: 16px;
    left: 16px;
    background: #dbe83d;
    color: #063f29;
    padding: 7px 12px;
    border-radius: 8px;
    font-size: 12px;
    font-weight: 800;
}

/* CONTENT */

.vsi-hotel-content {
    padding: 24px;
    flex: 1;
    display: flex;
    flex-direction: column;
}

.vsi-hotel-content h3 {
    color: #063f29;
    font-size: 20px;
    font-weight: 800;
    line-height: 1.4;
    margin-bottom: 17px;
    min-height: 56px;
}

.vsi-hotel-address {
    display: flex;
    align-items: flex-start;
    gap: 11px;
    min-height: 87px;
}

.vsi-hotel-address i {
    color: #0b6b3f;
    margin-top: 5px;
    font-size: 15px;
}

.vsi-hotel-address p {
    margin: 0;
    color: #718078;
    font-size: 13px;
    line-height: 1.7;
}

/* DISTANCE BOX */

.vsi-hotel-distances {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    margin: 18px 0;
}

.vsi-hotel-distances > div {
    background: #f1f7f2;
    padding: 14px 10px;
    border-radius: 12px;
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.vsi-hotel-distances i {
    color: #0b6b3f;
    font-size: 16px;
    margin-bottom: 3px;
}

.vsi-hotel-distances span {
    color: #7a877e;
    font-size: 11px;
}

.vsi-hotel-distances strong {
    color: #063f29;
    font-size: 17px;
    font-weight: 800;
}

/* PHONE */

.vsi-hotel-phone {
    color: #0b6b3f;
    font-size: 14px;
    font-weight: 750;
    text-decoration: none;
    margin-bottom: 20px;
    display: inline-flex;
    align-items: center;
    gap: 9px;
}

.vsi-hotel-phone:hover {
    color: #063f29;
}

/* HOTEL BUTTON */

.vsi-hotel-btn {
    margin-top: auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    background: #063f29;
    color: #fff;
    padding: 14px 18px;
    border-radius: 11px;
    text-decoration: none;
    font-size: 13px;
    font-weight: 750;
    transition: background .25s ease;
}

.vsi-hotel-btn:hover {
    background: #0b6b3f;
    color: #fff;
}

.vsi-hotel-btn i {
    font-size: 12px;
}

/* BOTTOM CONTACT PANEL */

.vsi-acc-contact {
    margin-top: 55px;
    background: linear-gradient(115deg, #063f29, #0b6b3f);
    border-radius: 22px;
    padding: 30px 36px;
    display: flex;
    align-items: center;
    gap: 23px;
}

.vsi-acc-contact-icon {
    width: 68px;
    height: 68px;
    flex: 0 0 68px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(255,255,255,.12);
    color: #dbe83d;
    border-radius: 18px;
    font-size: 28px;
}

.vsi-acc-contact-text {
    flex: 1;
}

.vsi-acc-contact-text span {
    color: #dbe83d;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 1.5px;
}

.vsi-acc-contact-text h3 {
    color: #fff;
    font-size: 23px;
    font-weight: 800;
    margin: 5px 0 7px;
}

.vsi-acc-contact-text p {
    color: rgba(255,255,255,.78);
    font-size: 13px;
    line-height: 1.6;
    margin: 0;
}

.vsi-acc-contact-text strong {
    color: #fff;
}

.vsi-acc-contact-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    background: #dbe83d;
    color: #063f29;
    padding: 15px 23px;
    border-radius: 11px;
    text-decoration: none;
    font-size: 14px;
    font-weight: 800;
    white-space: nowrap;
    transition: background .25s ease;
}

.vsi-acc-contact-btn:hover {
    background: #fff;
    color: #063f29;
}

/* NOTE */

.vsi-acc-note {
    text-align: center;
    font-size: 11px;
    color: #89948b;
    margin: 22px auto 0;
    line-height: 1.7;
}

.vsi-acc-note i {
    margin-right: 5px;
}

/* RESPONSIVE */

@media (max-width: 991.98px) {
    .vsi-accommodation-section {
        padding: 70px 0;
    }

    .vsi-acc-contact {
        flex-wrap: wrap;
    }
}

@media (max-width: 767.98px) {
    .vsi-accommodation-section {
        padding: 55px 0;
    }

    .vsi-hotel-image {
        height: 210px;
    }

    .vsi-hotel-content {
        padding: 21px;
    }

    .vsi-hotel-content h3 {
        min-height: 0;
        font-size: 19px;
    }

    .vsi-hotel-address {
        min-height: 0;
    }

    .vsi-acc-contact {
        padding: 27px 22px;
        flex-direction: column;
        align-items: flex-start;
        gap: 17px;
    }

    .vsi-acc-contact-icon {
        width: 55px;
        height: 55px;
        flex-basis: 55px;
        font-size: 23px;
    }

    .vsi-acc-contact-text h3 {
        font-size: 21px;
    }

    .vsi-acc-contact-btn {
        width: 100%;
    }
}



