/* =========================================================
   GLOBAL HORIZONTAL OVERFLOW FIX
========================================================= */

html,
body {
  width: 100%;
  max-width: 100%;
  overflow-x: hidden;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

img,
video,
iframe {
  max-width: 100%;
}

.container {
  width: 100%;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
}


/* Prevent decorative elements from creating page width */

.radcon-venue-v2,
.radcon-venue-section,
.radcon-places-premium,
.radcon-countdown-section {
  width: 100%;
  max-width: 100%;
  overflow: hidden;
}


/* Mobile safety */

@media (max-width: 600px) {

  .container {
    width: 100%;
    max-width: 100%;
    padding-left: 18px;
    padding-right: 18px;
  }

}
:root{
  --navy:#101b58;
  --navy-2:#17286f;
  --purple:#542275;
  --magenta:#8d2865;
  --red:#c83243;
  --gold:#e3ad45;
  --cream:#fffaf3;
  --ink:#18203a;
  --muted:#68708a;
  --line:#e8e9f2;
  --white:#ffffff;
  --shadow:0 18px 50px rgba(16,27,88,.12);
  --radius:22px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  color:var(--ink);background:#fff;line-height:1.65;
}
a{text-decoration:none;color:inherit}
img{max-width:100%;display:block}
.container{width:min(1180px,92%);margin-inline:auto}
.section{padding:96px 0}
.section-soft{background:linear-gradient(180deg,#fbf9ff 0%,#fff 100%)}
.eyebrow{
  display:inline-flex;align-items:center;gap:9px;
  font-size:.76rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;
  color:var(--magenta);margin-bottom:14px;
}
.eyebrow::before{content:"";width:28px;height:3px;border-radius:10px;background:linear-gradient(90deg,var(--navy),var(--red))}
h1,h2,h3{line-height:1.12;letter-spacing:-.035em}
h2{font-size:clamp(2rem,4vw,3.2rem);color:#a13289}
.section-heading{max-width:760px;margin-bottom:46px}
.section-heading p{color:var(--muted);margin-top:16px;font-size:1.05rem}

.site-header{
  position:fixed;z-index:1000;top:0;left:0;right:0;
  background:rgba(255,255,255,.9);backdrop-filter:blur(16px);
  border-bottom:1px solid rgba(16,27,88,.08);
}
.nav{height:78px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:flex;align-items:center;gap:12px;font-weight:900;color:var(--navy)}
.brand img{width:54px;height:54px;object-fit:cover;border-radius:50%;border:2px solid #fff;box-shadow:0 5px 18px rgba(16,27,88,.12)}
.brand span{font-size:1.02rem;line-height:1.1}
.brand small{display:block;color:var(--red);font-size:.64rem;letter-spacing:.12em;margin-top:3px}
.nav-links{display:flex;align-items:center;gap:28px;font-size:.92rem;font-weight:700;color:#363d59}
.nav-links a{position:relative}
.nav-links a::after{content:"";position:absolute;left:0;bottom:-7px;width:0;height:2px;background:linear-gradient(90deg,var(--navy),var(--red));transition:.25s}
.nav-links a:hover::after{width:100%}
.nav-cta,.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:9px;
  padding:13px 20px;border-radius:999px;font-weight:800;font-size:.9rem;
  transition:.25s;cursor:pointer;border:0;
}
.nav-cta{color:#fff;background:linear-gradient(135deg,var(--navy),var(--purple))}
.nav-cta:hover,.btn:hover{transform:translateY(-2px);box-shadow:0 12px 25px rgba(16,27,88,.18)}
.menu-btn{display:none;border:0;background:transparent;font-size:1.65rem;color:var(--navy)}

.hero{
  padding:140px 0 76px;min-height:720px;display:flex;align-items:center;
  background:
    radial-gradient(circle at 85% 22%,rgba(200,50,67,.13),transparent 24%),
    radial-gradient(circle at 15% 65%,rgba(84,34,117,.12),transparent 30%),
    linear-gradient(135deg,#fff 0%,#faf8ff 52%,#fff 100%);
  overflow:hidden;position:relative;
}
.hero::before{
  content:"";position:absolute;width:560px;height:560px;border:1px solid rgba(84,34,117,.11);
  border-radius:50%;right:-190px;top:-120px;
}
.hero-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:60px;align-items:center}
.hero h1{font-size:clamp(3rem,6vw,5.6rem);color:var(--navy);max-width:760px}
.gradient-text{background:linear-gradient(90deg,var(--navy),var(--purple),var(--red));-webkit-background-clip:text;background-clip:text;color:transparent}
.hero-lead{font-size:1.15rem;color:var(--muted);max-width:670px;margin:22px 0 30px}
.hero-actions{display:flex;flex-wrap:wrap;gap:13px}
.btn-primary{color:#fff;background:linear-gradient(135deg,var(--navy),var(--purple))}
.btn-secondary{color:var(--navy);background:#fff;border:1px solid #dfe2ef}
.event-meta{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px;align-items: center;}
.meta-pill{background:#fff;border:1px solid var(--line);padding:10px 14px;border-radius:14px;box-shadow:0 8px 24px rgba(16,27,88,.05);font-size:.86rem}
.meta-pill strong{display:block;color:var(--navy)}
.hero-logo-wrap{position:relative;display:flex;justify-content:center}
.hero-logo{
  width:min(470px,92%);aspect-ratio:1;border-radius:50%;object-fit:cover;
  box-shadow:0 28px 80px rgba(16,27,88,.2);border:10px solid #fff;
}
.hero-badge{
  position:absolute;right:2%;bottom:8%;background:#fff;padding:18px 20px;border-radius:18px;
  box-shadow:var(--shadow);max-width:210px
}
.hero-badge strong{color:var(--red);font-size:1.3rem;display:block}
.hero-badge span{font-size:.78rem;color:var(--muted)}

.stats{margin-top:-5px;position:relative;z-index:3}
.stats-grid{display:grid;grid-template-columns:repeat(5,1fr);background:#fff;border:1px solid var(--line);border-radius:24px;box-shadow:var(--shadow);overflow:hidden}
.stat{padding:28px;text-align:center;border-right:1px solid var(--line)}
.stat:last-child{border-right:0}.stat strong{display:block;font-size:1.7rem;color:var(--navy)}.stat span{font-size:.85rem;color:var(--muted)}

.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.card{
  background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:28px;
  box-shadow:0 10px 30px rgba(16,27,88,.055);transition:.25s
}
.card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}
.icon{
  width:52px;height:52px;border-radius:16px;display:grid;place-items:center;
  background:linear-gradient(135deg,#eef0ff,#fff1f3);color:var(--purple);font-size:1.35rem;margin-bottom:20px
}
.card h3{font-size:1.25rem;color:var(--navy);margin-bottom:10px}
.card p{color:var(--muted);font-size:.94rem}

.topic-cloud{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}
.topic{padding:10px 15px;border-radius:999px;background:#fff;border:1px solid #e4e5ef;color:#424a68;font-weight:700;font-size:.84rem}
.topic:nth-child(3n){border-color:#f0d5da}.topic:nth-child(3n+1){border-color:#d7dcf4}

.split{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center}
.split-media{border-radius:28px;overflow:hidden;box-shadow:var(--shadow);border:8px solid #fff}
.split-media img{width:100%;height:100%;object-fit:cover}
.check-list{display:grid;gap:13px;margin-top:24px}
.check-list li{list-style:none;display:flex;gap:12px;color:#454d69}
.check-list li::before{content:"✓";flex:0 0 25px;height:25px;border-radius:50%;display:grid;place-items:center;background:#eef0ff;color:var(--purple);font-weight:900}

.feature{background:linear-gradient(135deg,var(--navy),var(--purple) 58%,var(--red));color:#fff;border-radius:30px;padding:55px;position:relative;overflow:hidden}
.feature::after{content:"";position:absolute;width:260px;height:260px;border:1px solid rgba(255,255,255,.2);border-radius:50%;right:-80px;top:-90px}
.feature h2{color:#fff}.feature p{color:rgba(255,255,255,.78);max-width:750px;margin:16px 0 25px}
.feature .btn{background:#fff;color:var(--navy)}

.program-img{border-radius:22px;border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;padding:8px}
.program-img img{width:100%;border-radius:15px}

.timeline{display:grid;gap:16px}
.timeline-item{display:grid;grid-template-columns:150px 1fr;gap:18px;align-items:start;background:#fff;border:1px solid var(--line);border-radius:18px;padding:18px 20px}
.time{font-weight:900;color:var(--red)}.timeline-item h3{font-size:1rem;color:var(--navy)}.timeline-item p{color:var(--muted);font-size:.9rem;margin-top:5px}

.countdown{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;max-width:520px;margin-top:25px}
.count{background:#fff;border:1px solid rgba(255,255,255,.3);border-radius:16px;padding:15px;text-align:center}
.count strong{font-size:1.7rem;color:var(--navy);display:block}.count span{font-size:.72rem;text-transform:uppercase;color:var(--muted);letter-spacing:.08em}

.cta{background:var(--cream);border-block:1px solid #f0e9dd}
.cta-box{text-align:center;max-width:820px;margin:auto}
.cta-box h2{font-size:clamp(2rem,4vw,3.4rem)}
.cta-box p{color:var(--muted);margin:16px auto 26px;max-width:650px}

footer{background:#0c1444;color:#fff;padding:55px 0 25px}
.footer-grid{display:grid;grid-template-columns:1.4fr .8fr .8fr;gap:50px}
.footer-brand{display:flex;gap:13px;align-items:center;margin-bottom:16px}.footer-brand img{width:60px;height:60px;border-radius:50%}
footer p,footer li{color:rgba(255,255,255,.67);font-size:.9rem}
footer h4{margin-bottom:13px;color:#fff}
footer ul{list-style:none;display:grid;gap:8px}
.footer-bottom{margin-top:35px;padding-top:20px;border-top:1px solid rgba(255,255,255,.12);font-size:.78rem;color:rgba(255,255,255,.5);display:flex;justify-content:space-between;gap:20px}

.page-hero{padding:145px 0 70px;background:linear-gradient(135deg,#faf8ff,#fff);border-bottom:1px solid var(--line)}
.page-hero h1{font-size:clamp(2.8rem,5vw,4.7rem);color:var(--navy)}
.page-hero p{max-width:760px;color:var(--muted);margin-top:18px;font-size:1.05rem}

.mobile-menu{display:none}

@media (max-width:900px){
  .nav-links,.nav-cta{display:none}.menu-btn{display:block}
  .mobile-menu{position:absolute;top:78px;left:0;right:0;background:#fff;border-bottom:1px solid var(--line);padding:18px 4%;box-shadow:0 15px 30px rgba(16,27,88,.08)}
  .mobile-menu.open{display:grid;gap:14px}.mobile-menu a{font-weight:800;padding:9px 0}
  .hero-grid,.split{grid-template-columns:1fr}.hero{padding-top:120px}.hero-logo-wrap{order:-1}.hero-logo{width:min(380px,78vw)}
  .cards{grid-template-columns:1fr 1fr}.stats-grid{grid-template-columns:1fr 1fr}.stat:nth-child(2){border-right:0}.stat:nth-child(-n+2){border-bottom:1px solid var(--line)}
  .footer-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:600px){
  .section{padding:72px 0}.nav{height:70px}.mobile-menu{top:70px}
  .brand img{width:46px;height:46px}.brand span{font-size:.9rem}
  .hero{min-height:auto;padding:105px 0 55px}.hero h1{font-size:2.65rem}.hero-lead{font-size:1rem}
  .hero-logo{width:78vw}.hero-badge{right:0;bottom:3%;padding:13px 15px;max-width:180px}
  .cards{grid-template-columns:1fr}.stats-grid{grid-template-columns:1fr 1fr}.stat{padding:20px 10px}.stat strong{font-size:1.35rem}
  .split{gap:32px}.feature{padding:34px 25px}.timeline-item{grid-template-columns:1fr;gap:5px}
  .countdown{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr}.footer-bottom{display:block}
  .footer-bottom span{display:block;margin-top:8px}
}

.price-block{
  background:#fff;
  border:1px solid #e3e6ef;
  border-radius:22px;
  overflow:hidden;
  margin:0 auto 24px;
  box-shadow:0 16px 45px rgba(16,27,70,.08);
}
.price-title{
  padding:16px 22px;
  color:#fff;
  font-family:Manrope,sans-serif;
  font-weight:800;
  font-size:17px;
  letter-spacing:.02em;
  text-align:center;
  background:linear-gradient(100deg,#17175f,#5b2b85 55%,#d82d2d);
}
.price-table{
  width:100%;
  border-collapse:collapse;
  min-width:620px;
}
.price-table th{
  background:#fff4dc;
  color:#171c39;
  font-family:Manrope,sans-serif;
  font-size:13px;
  padding:16px 14px;
  border:1px solid #dfe2eb;
  text-align:center;
}
.price-table th span{
  font-weight:600;
  font-size:11px;
}
.price-table td{
  padding:17px 14px;
  border:1px solid #e1e4ec;
  text-align:center;
  color:#28304b;
  font-size:15px;
}
.price-table td:first-child{
  text-align:left;
  color:#182052;
}
.price-table tbody tr:hover{
  background:#faf9ff;
}
.accommodation-heading{
  display:grid;
  grid-template-columns:1fr auto;
  align-items:center;
  background:linear-gradient(100deg,#17175f,#5b2b85 55%,#d82d2d);
}
.accommodation-heading .price-title{
  background:transparent;
}
.check-times{
  color:#fff;
  padding:0 24px;
  font-size:12px;
  white-space:nowrap;
}
.check-times b:last-of-type{color:#ffe7a8}
.table-scroll{overflow-x:auto}
.accommodation-table{min-width:950px}
.registration-note{
  max-width:none;
}
@media(max-width:700px){
  .price-title{font-size:14px;padding:14px 12px}
  .accommodation-heading{grid-template-columns:1fr}
  .check-times{
    text-align:center;
    padding:0 10px 14px;
    white-space:normal;
    font-size:11px;
  }
  .price-table th,.price-table td{padding:13px 10px;font-size:13px}
}

/* Responsive Home Hero Slider */
.hero-slider{position:relative;min-height:720px;overflow:hidden;background:#07102f;color:#fff}
.slides{position:relative;min-height:720px}
.slide{position:absolute;inset:0;opacity:0;visibility:hidden;transform:scale(1.015);transition:opacity .75s ease,transform 1s ease,visibility .75s;overflow:hidden}
.slide.active{opacity:1;visibility:visible;transform:scale(1);z-index:2}
.slide-bg{position:absolute;inset:0}
.slide-bg-1{background:radial-gradient(circle at 78% 30%,rgba(189,55,107,.25),transparent 25%),radial-gradient(circle at 45% 95%,rgba(91,59,183,.3),transparent 34%),linear-gradient(120deg,#050a21,#0a1539 62%,#111a48)}
.slide-bg-2{background:linear-gradient(90deg,rgba(4,9,31,.98),rgba(7,14,44,.92) 50%,rgba(18,25,65,.72)),radial-gradient(circle at 90% 50%,#6b2a66,transparent 35%)}
.slide-bg-3{background:radial-gradient(circle at 76% 45%,rgba(227,70,79,.28),transparent 25%),radial-gradient(circle at 35% 80%,rgba(91,59,183,.3),transparent 35%),linear-gradient(125deg,#050a20,#10194a 55%,#3a123b)}
.slide-bg-4{background:radial-gradient(circle at 82% 30%,rgba(227,70,79,.28),transparent 23%),radial-gradient(circle at 35% 85%,rgba(91,59,183,.32),transparent 35%),linear-gradient(120deg,#060a20,#111a48 60%,#3a1539)}
.slide-inner{min-height:720px;display:grid;grid-template-columns:1.08fr .92fr;gap:45px;align-items:center;position:relative;z-index:3;padding-top:70px;padding-bottom:80px}
.slide-copy{max-width:760px}.slide-copy h1{font-size:clamp(3rem,5.8vw,5.7rem);margin:0;color:#fff}.slide-copy h1 span{background:linear-gradient(90deg,#fff,#c7bcff 52%,#ff9ba5);-webkit-background-clip:text;background-clip:text;color:transparent}.slide-copy .hero-lead{max-width:690px;color:#aeb8d1;font-size:17px;margin:25px 0 30px}
.slide-visual{display:flex;align-items:center;justify-content:center;min-height:500px;position:relative}.logo-visual img{width:min(450px,82%);border-radius:60%;border:8px solid rgba(255,255,255,.94);box-shadow:0 35px 100px rgba(0,0,0,.45)}
.visual-badge{position:absolute;right:0;bottom:5%;background:rgba(255,255,255,.95);color:#121a38;padding:15px 18px;border-radius:13px;box-shadow:0 20px 55px rgba(0,0,0,.3)}.visual-badge strong{display:block;color:#bd376b;font-size:17px}.visual-badge span{color:#68718b;font-size:11px}
.programme-visual{background:rgba(255,255,255,.08);padding:13px;border:1px solid rgba(255,255,255,.15);border-radius:23px;box-shadow:0 30px 80px rgba(0,0,0,.3)}.programme-visual img{max-height:550px;width:auto;max-width:100%;object-fit:contain;border-radius:14px}
.adalat-visual{flex-direction:column}.adalat-mark{width:230px;height:230px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:115px;color:#fff;background:linear-gradient(145deg,#5b3bb7,#bd376b);box-shadow:0 35px 90px rgba(91,59,183,.4)}.adalat-card{margin-top:-25px;padding:18px 25px;border:1px solid rgba(255,255,255,.18);background:rgba(8,14,42,.86);border-radius:14px;text-align:center;min-width:270px}.adalat-card strong{display:block;font-family:Manrope;letter-spacing:.08em}.adalat-card small{color:#aeb8d1}
.price-visual{position:relative}.price-orb{width:330px;height:330px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(circle at 32% 25%,rgba(255,255,255,.22),transparent 18%),linear-gradient(145deg,#17175f,#5b2b85 55%,#d82d2d);box-shadow:0 35px 100px rgba(0,0,0,.4),inset 0 0 0 1px rgba(255,255,255,.18);text-align:center}.price-orb span{font-size:22px;font-weight:800;letter-spacing:.15em}.price-orb strong{font-family:Manrope;font-size:55px;letter-spacing:-.04em}.price-orb small{margin-top:9px;font-weight:700;letter-spacing:.14em}
.mini-prices{display:flex;gap:12px;flex-wrap:wrap}.mini-prices div{padding:12px 16px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.045);border-radius:10px}.mini-prices b{display:block;font-size:19px;color:#fff}.mini-prices span{display:block;font-size:10px;color:#aeb8d1}
.slider-arrow{position:absolute;z-index:10;top:50%;transform:translateY(-50%);width:46px;height:46px;border-radius:50%;border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.07);color:#fff;font-size:34px;line-height:1;cursor:pointer;backdrop-filter:blur(10px);transition:.2s}.slider-arrow:hover{background:rgba(255,255,255,.18)}.slider-arrow.prev{left:24px}.slider-arrow.next{right:24px}
.slider-dots{position:absolute;z-index:10;bottom:30px;left:50%;transform:translateX(-50%);display:flex;gap:8px}.dot{width:30px;height:4px;border:0;border-radius:5px;background:rgba(255,255,255,.28);cursor:pointer;padding:0;transition:.3s}.dot.active{background:#fff;width:52px}
.slider-progress{position:absolute;left:0;right:0;bottom:0;height:3px;background:rgba(255,255,255,.08);z-index:10}.slider-progress span{display:block;height:100%;width:0;background:linear-gradient(90deg,#5b3bb7,#bd376b,#e3464f)}
@media(max-width:900px){.hero-slider,.slides,.slide-inner{min-height:760px}.slide-inner{grid-template-columns:1fr;padding-top:105px;padding-bottom:85px}.slide-visual{position:absolute;right:3%;bottom:55px;min-height:auto;transform:scale(.65);transform-origin:right bottom;opacity:.85}.slide-copy{position:relative;z-index:3}}
@media(max-width:600px){.hero-slider,.slides,.slide-inner{min-height:750px}.slide-inner{padding-top:95px;display:block}.slide-copy h1{font-size:2.8rem}.slide-copy .hero-lead{font-size:14px;margin:18px 0 22px}.slide-visual{right:-15px;bottom:65px;transform:scale(.48);opacity:.48}.slider-arrow{width:38px;height:38px;font-size:28px}.slider-arrow.prev{left:12px}.slider-arrow.next{right:12px}.slider-dots{bottom:20px}.dot{width:20px}.dot.active{width:35px}}
/* =========================================================
   MARATHWADA RADCON 2026
   GLOBAL PAGE BACKGROUND & SECTION COLORS
   ========================================================= */

:root {
  --page-bg: #f4f7fc;
  --section-bg: #eef3fb;
  --section-soft-bg: #f8f9fd;
  --card-bg: #ffffff;
  --navy: #101b4d;
  --purple: #5b3bb7;
  --pink: #bd376b;
  --red: #d93d48;
  --text: #202945;
  --muted: #69738c;
  --line: #dfe5f0;
}
.background-video {
  width: 100%;
  height: 100vh;
  object-fit: cover;
}


/* ---------- Entire Website ---------- */

html {
  scroll-behavior: smooth;
}

body {
  background:
    radial-gradient(
      circle at 10% 10%,
      rgba(91, 59, 183, 0.045),
      transparent 28%
    ),
    radial-gradient(
      circle at 90% 35%,
      rgba(189, 55, 107, 0.035),
      transparent 25%
    ),
    linear-gradient(
      180deg,
      #f7f9fd 0%,
      #f1f5fb 45%,
      #f8f9fc 100%
    );

  color: var(--text);
}

/* ---------- Main Page Wrapper ---------- */

main {
  background: transparent;
}

/* ---------- Normal Sections ---------- */

.section {
  position: relative;
  background: transparent;
  padding-top: 90px;
  padding-bottom: 90px;
}

/* Soft alternating background */

.section-soft {
  background:
    linear-gradient(
      135deg,
      rgba(235, 240, 250, 0.92),
      rgba(248, 249, 253, 0.96)
    );
}

/* Every second section gets a subtle variation */

.section:nth-of-type(even) {
  background:
    radial-gradient(
      circle at 85% 20%,
      rgba(91, 59, 183, 0.045),
      transparent 25%
    ),
    transparent;
}

/* ---------- Section Decorative Glow ---------- */

.section::before {
  content: "";
  position: absolute;
  width: 180px;
  height: 180px;
  top: 30px;
  right: -80px;
  border-radius: 50%;
  background: rgba(91, 59, 183, 0.035);
  filter: blur(20px);
  pointer-events: none;
}

.section::after {
  content: "";
  position: absolute;
  width: 140px;
  height: 140px;
  bottom: 20px;
  left: -70px;
  border-radius: 50%;
  background: rgba(189, 55, 107, 0.025);
  filter: blur(20px);
  pointer-events: none;
}

/* ---------- Cards ---------- */

.card,
.info-card,
.feature-card,
.program-card,
.highlight-card {
  background: rgba(255, 255, 255, 0.94);
  border: 1px solid rgba(210, 218, 233, 0.85);
  box-shadow:
    0 12px 35px rgba(23, 36, 75, 0.07),
    0 2px 8px rgba(23, 36, 75, 0.03);
  backdrop-filter: blur(8px);
}

/* ---------- Section Headings ---------- */

.section-heading {
  position: relative;
  z-index: 2;
}

.section-heading h2 {
  color: #101b4d;
}

.section-heading p {
  color: #69738c;
}

/* ---------- Eyebrow Labels ---------- */

.eyebrow,
.kicker {
  color: #5b3bb7;
}

/* ---------- Registration Area ---------- */

#registration {
  background:
    radial-gradient(
      circle at 15% 20%,
      rgba(91, 59, 183, 0.07),
      transparent 28%
    ),
    radial-gradient(
      circle at 90% 80%,
      rgba(189, 55, 107, 0.055),
      transparent 28%
    ),
    linear-gradient(
      135deg,
      #edf2fa,
      #f8f9fd
    );
}

/* ---------- Registration Tables ---------- */

.price-block {
  background: #ffffff;
  border: 1px solid #dfe5ef;
  box-shadow:
    0 18px 50px rgba(16, 27, 70, 0.08),
    0 3px 10px rgba(16, 27, 70, 0.025);
}

/* ---------- Programme Page ---------- */

.program-page,
.program-section {
  background: transparent;
}

/* Programme cards */

.program-card {
  background: #ffffff;
}

/* ---------- About Page ---------- */

.about-section {
  background: transparent;
}

/* ---------- CTA Section ---------- */

.cta,
.cta-section {
  background:
    radial-gradient(
      circle at 15% 20%,
      rgba(255, 255, 255, 0.10),
      transparent 25%
    ),
    linear-gradient(
      120deg,
      #10184d,
      #3f287c 55%,
      #8c315f
    );
  color: #ffffff;
}

/* ---------- Footer ---------- */

footer {
  background:
    linear-gradient(
      135deg,
      #080f2d 0%,
      #101947 55%,
      #24143e 100%
    );
  color: #dce3f3;
  border-top: 1px solid rgba(255, 255, 255, 0.08);
}

footer a {
  color: #dce3f3;
}

footer a:hover {
  color: #ffffff;
}

/* ---------- Navigation ---------- */

.site-header,
header {
  background: rgba(255, 255, 255, 0.92);
  backdrop-filter: blur(14px);
  border-bottom: 1px solid rgba(213, 220, 234, 0.8);
}

/* ---------- Buttons ---------- */

.btn-primary {
  background: linear-gradient(
    135deg,
    #5b3bb7,
    #bd376b
  );
  border: none;
  box-shadow:
    0 10px 25px rgba(91, 59, 183, 0.22);
}

.btn-primary:hover {
  transform: translateY(-2px);
  box-shadow:
    0 14px 32px rgba(91, 59, 183, 0.30);
}

/* ---------- Mobile ---------- */

@media (max-width: 768px) {

  body {
    background:
      linear-gradient(
        180deg,
        #f7f9fd 0%,
        #f1f5fb 100%
      );
  }

  .section {
    padding-top: 65px;
    padding-bottom: 65px;
  }

  .section::before,
  .section::after {
    opacity: 0.5;
  }

  #registration {
    background:
      linear-gradient(
        180deg,
        #edf2fa,
        #f8f9fd
      );
  }

}

/* ---------- Very Small Mobile ---------- */

@media (max-width: 480px) {

  .section {
    padding-top: 50px;
    padding-bottom: 50px;
  }

  .price-block,
  .card,
  .info-card,
  .feature-card {
    border-radius: 16px;
  }

}

/* =========================================================
   PREMIUM PLACES TO VISIT
========================================================= */

.radcon-places-premium {

  position: relative;

  padding: 110px 0;

  overflow: hidden;

  background:
    radial-gradient(
      circle at 5% 15%,
      rgba(91, 59, 183, 0.08),
      transparent 28%
    ),
    radial-gradient(
      circle at 95% 85%,
      rgba(189, 55, 107, 0.07),
      transparent 30%
    ),
    linear-gradient(
      135deg,
      #f1f4fa 0%,
      #fafbfe 50%,
      #eef2f9 100%
    );
}


/* =========================================================
   HEADING
========================================================= */

.places-premium-heading {

  max-width: 820px;

  margin: 0 auto 55px;

  text-align: center;

}

.places-premium-heading .eyebrow {

  margin-bottom: 14px;

  color: #5b3bb7;

  font-size: 11px;

  font-weight: 900;

  letter-spacing: 0.18em;

}

.places-premium-heading h2 {

  margin: 0;

  color: #101b4d;

  font-size: clamp(
    2.4rem,
    5vw,
    4rem
  );

  line-height: 1.05;

  letter-spacing: -0.03em;

}

.places-premium-heading h2 span {

  display: block;

  background:
    linear-gradient(
      90deg,
      #5b3bb7,
      #bd376b
    );

  -webkit-background-clip: text;

  background-clip: text;

  color: transparent;

}

.places-premium-heading p {

  max-width: 700px;

  margin: 22px auto 0;

  color: #69738c;

  font-size: 15px;

  line-height: 1.85;

}


/* =========================================================
   GRID
========================================================= */

/* =========================================================
   PLACES — ALL CARDS SAME SIZE
========================================================= */

.places-premium-grid {
  display: grid;

  grid-template-columns: repeat(3, 1fr);

  gap: 22px;

  width: 100%;
}


/* ALL CARDS EXACTLY SAME SIZE */

.destination-card,
.destination-featured {
  position: relative;

  width: 100%;

  height: 420px;

  min-height: 420px;

  max-height: 420px;

  overflow: hidden;

  border-radius: 22px;

  background: #11183f;

  box-sizing: border-box;

  box-shadow:
    0 18px 45px rgba(16, 27, 70, 0.12);

  transition:
    transform .35s ease,
    box-shadow .35s ease;
}


/* Remove featured special sizing */

.destination-featured {
  grid-column: auto;

  grid-row: auto;
}


/* IMAGE — SAME SIZE INSIDE EVERY CARD */

.destination-card > img {
  position: absolute;

  top: 0;
  left: 0;

  width: 100%;
  height: 100%;

  min-width: 100%;
  min-height: 100%;

  object-fit: cover;

  object-position: center;

  display: block;

  transition:
    transform .7s ease;
}


/* OVERLAY */

.destination-overlay {
  position: absolute;

  inset: 0;

  z-index: 1;

  background:
    linear-gradient(
      180deg,
      rgba(10,15,45,0.05) 20%,
      rgba(10,15,45,0.85) 100%
    );
}


/* HOVER */

.destination-card:hover {
  transform: translateY(-6px);

  box-shadow:
    0 28px 60px rgba(16,27,70,0.18);
}

.destination-card:hover > img {
  transform: scale(1.06);
}


/* NUMBER */

.destination-number {
  position: absolute;

  top: 18px;
  right: 18px;

  z-index: 3;

  width: 38px;
  height: 38px;

  display: flex;

  align-items: center;
  justify-content: center;

  border-radius: 50%;

  background:
    rgba(255,255,255,.15);

  border:
    1px solid rgba(255,255,255,.3);

  backdrop-filter: blur(8px);

  color: #fff;

  font-size: 10px;

  font-weight: 800;
}


/* CONTENT */

.destination-content {
  position: absolute;

  left: 0;
  right: 0;
  bottom: 0;

  z-index: 3;

  padding: 24px;

  box-sizing: border-box;
}


/* TAG */

.destination-tag {
  display: inline-block;

  margin-bottom: 9px;

  color:
    rgba(255,255,255,.7);

  font-size: 8px;

  font-weight: 800;

  letter-spacing: .12em;
}


/* TITLE */

.destination-content h3 {
  margin: 0;

  color: #fff;

  font-size: 25px;

  line-height: 1.15;
}


/* DESCRIPTION */

.destination-content p {
  margin: 10px 0 16px;

  color:
    rgba(255,255,255,.72);

  font-size: 11px;

  line-height: 1.6;
}


/* LINK */

.destination-content a {
  display: inline-flex;

  align-items: center;

  gap: 8px;

  color: #fff;

  text-decoration: none;

  font-size: 10px;

  font-weight: 800;
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 950px) {

  .places-premium-grid {
    grid-template-columns:
      repeat(2, 1fr);

    gap: 18px;
  }

  .destination-card,
  .destination-featured {

    height: 400px;

    min-height: 400px;

    max-height: 400px;
  }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 600px) {

  .places-premium-grid {

    grid-template-columns: 1fr;

    gap: 16px;
  }

  .destination-card,
  .destination-featured {

    width: 100%;

    height: 360px;

    min-height: 360px;

    max-height: 360px;

    border-radius: 18px;
  }

  .destination-content {

    padding: 20px;
  }

}


/* =========================================================
   DESTINATION CARD
========================================================= */

.destination-card {

  position: relative;

  overflow: hidden;

  border-radius: 24px;

  background: #101b4d;

  box-shadow:
    0 20px 50px
    rgba(16, 27, 70, 0.12);

  isolation: isolate;

  cursor: pointer;

  transition:
    transform 0.4s ease,
    box-shadow 0.4s ease;

}


/* Featured */



/* =========================================================
   IMAGE
========================================================= */

.destination-card > img {

  position: absolute;

  inset: 0;

  width: 100%;
  height: 100%;

  object-fit: cover;

  z-index: -3;

  transition:
    transform 0.8s
    cubic-bezier(
      .2,
      .8,
      .2,
      1
    );

}

.destination-card:hover > img {

  transform:
    scale(1.08);

}


/* =========================================================
   DARK OVERLAY
========================================================= */

.destination-overlay {

  position: absolute;

  inset: 0;

  z-index: -2;

  background:
    linear-gradient(
      180deg,
      rgba(8, 14, 45, 0.03) 15%,
      rgba(8, 14, 45, 0.20) 35%,
      rgba(8, 14, 45, 0.92) 100%
    );

  transition:
    background 0.4s ease;

}

.destination-card:hover
.destination-overlay {

  background:
    linear-gradient(
      180deg,
      rgba(8, 14, 45, 0.10),
      rgba(8, 14, 45, 0.96)
    );

}


/* =========================================================
   NUMBER
========================================================= */

.destination-number {

  position: absolute;

  top: 18px;
  left: 18px;

  width: 42px;
  height: 42px;

  display: flex;

  align-items: center;
  justify-content: center;

  border-radius: 12px;

  background:
    rgba(255,255,255,0.16);

  border:
    1px solid
    rgba(255,255,255,0.25);

  backdrop-filter:
    blur(12px);

  color: #ffffff;

  font-size: 11px;

  font-weight: 900;

  letter-spacing: 0.05em;

}


/* =========================================================
   CONTENT
========================================================= */

.destination-content {

  position: absolute;

  left: 0;
  right: 0;
  bottom: 0;

  padding: 25px;

  color: #ffffff;

}

.destination-tag {

  display: inline-block;

  margin-bottom: 8px;

  color: #ddd6ff;

  font-size: 9px;

  font-weight: 900;

  letter-spacing: 0.14em;

}

.destination-content h3 {

  margin: 0;

  color: #ffffff;

  font-size: 25px;

  line-height: 1.15;

}

.destination-featured
.destination-content h3 {

  font-size: 34px;

}

.destination-content p {

  max-width: 520px;

  margin: 10px 0 15px;

  color:
    rgba(255,255,255,0.76);

  font-size: 12px;

  line-height: 1.65;

}


/* =========================================================
   LOCATION LINK
========================================================= */

.destination-content a {

  display: inline-flex;

  align-items: center;

  gap: 9px;

  color: #ffffff;

  font-size: 11px;

  font-weight: 800;

  text-decoration: none;

}

.destination-content a span {

  display: inline-flex;

  align-items: center;
  justify-content: center;

  width: 25px;
  height: 25px;

  border-radius: 50%;

  background:
    rgba(255,255,255,0.16);

  transition:
    transform 0.3s ease,
    background 0.3s ease;

}

.destination-card:hover
.destination-content a span {

  transform:
    translateX(4px);

  background:
    rgba(255,255,255,0.25);

}


/* =========================================================
   CARD HOVER
========================================================= */

.destination-card:hover {

  transform:
    translateY(-7px);

  box-shadow:
    0 30px 65px
    rgba(16,27,70,0.18);

}


/* =========================================================
   FOOTER STRIP
========================================================= */

.places-premium-footer {

  max-width: 850px;

  margin: 45px auto 0;

  padding: 20px 25px;

  display: flex;

  align-items: center;

  gap: 18px;

  border-radius: 16px;

  background:
    rgba(255,255,255,0.75);

  border:
    1px solid
    rgba(91,59,183,0.12);

  box-shadow:
    0 12px 30px
    rgba(16,27,70,0.05);

}

.places-footer-icon {

  flex: 0 0 auto;

  width: 42px;
  height: 42px;

  display: flex;

  align-items: center;
  justify-content: center;

  border-radius: 12px;

  background:
    linear-gradient(
      135deg,
      #5b3bb7,
      #bd376b
    );

  color: #ffffff;

  font-size: 18px;

}

.places-premium-footer strong {

  display: block;

  color: #101b4d;

  font-size: 14px;

}

.places-premium-footer p {

  margin: 4px 0 0;

  color: #69738c;

  font-size: 12px;

}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 950px) {

  .radcon-places-premium {

    padding: 85px 0;

  }

  .places-premium-grid {

    grid-template-columns:
      repeat(2, 1fr);

    grid-template-rows:
      300px 260px 260px;

  }

  .destination-featured {

    grid-column: span 2;

    grid-row: span 1;

  }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 600px) {

  .radcon-places-premium {

    padding: 65px 0;

  }

  .places-premium-heading {

    margin-bottom: 32px;

  }

  .places-premium-heading h2 {

    font-size: 2.25rem;

  }

  .places-premium-heading h2 span {

    display: inline;

  }

  .places-premium-heading p {

    font-size: 13px;

  }

  .places-premium-grid {

    display: grid;

    grid-template-columns: 1fr;

    grid-template-rows:
      repeat(5, 290px);

    gap: 15px;

  }

  .destination-featured {

    grid-column: span 1;

    grid-row: span 1;

  }

  .destination-content {

    padding: 21px;

  }

  .destination-featured
  .destination-content h3 {

    font-size: 27px;

  }

  .destination-content h3 {

    font-size: 22px;

  }

  .destination-content p {

    font-size: 12px;

  }

  .places-premium-footer {

    align-items: flex-start;

    padding: 18px;

    margin-top: 30px;

  }

}
/* =========================================================
   RADCON COUNTDOWN SECTION
========================================================= */

.radcon-countdown-section {

  position: relative;

  padding: 90px 0;

  overflow: hidden;

  background:
    radial-gradient(
      circle at 10% 20%,
      rgba(91,59,183,0.16),
      transparent 30%
    ),
    radial-gradient(
      circle at 90% 80%,
      rgba(189,55,107,0.15),
      transparent 32%
    ),
    linear-gradient(
      135deg,
      #080e2d 0%,
      #11194a 52%,
      #32153c 100%
    );

}


/* Decorative circles */

.radcon-countdown-section::before {

  content: "";

  position: absolute;

  width: 350px;
  height: 350px;

  right: -160px;
  top: -160px;

  border-radius: 50%;

  border:
    1px solid
    rgba(255,255,255,0.08);

  box-shadow:
    0 0 0 45px
    rgba(255,255,255,0.02),
    0 0 0 90px
    rgba(255,255,255,0.015);

}

.radcon-countdown-section::after {

  content: "";

  position: absolute;

  width: 250px;
  height: 250px;

  left: -130px;
  bottom: -130px;

  border-radius: 50%;

  background:
    rgba(91,59,183,0.12);

  filter: blur(10px);

}


/* =========================================================
   MAIN BOX
========================================================= */

.countdown-box {

  position: relative;

  z-index: 2;

  max-width: 1050px;

  margin: auto;

  padding: 55px 50px;

  text-align: center;

  border-radius: 28px;

  border:
    1px solid
    rgba(255,255,255,0.12);

  background:
    rgba(255,255,255,0.055);

  backdrop-filter:
    blur(18px);

  -webkit-backdrop-filter:
    blur(18px);

  box-shadow:
    0 30px 80px
    rgba(0,0,0,0.25);

}


/* =========================================================
   HEADING
========================================================= */

.countdown-content .eyebrow {

  margin-bottom: 12px;

  color: #cfc7ff;

  font-size: 11px;

  font-weight: 900;

  letter-spacing: 0.18em;

}

.countdown-content h2 {

  margin: 0;

  color: #ffffff;

  font-size:
    clamp(2.2rem, 5vw, 4rem);

  line-height: 1.05;

  letter-spacing: -0.03em;

}

.countdown-content h2 span {

  background:
    linear-gradient(
      90deg,
      #b9a9ff,
      #ff9fb0
    );

  -webkit-background-clip: text;

  background-clip: text;

  color: transparent;

}

.countdown-content p {

  max-width: 650px;

  margin: 18px auto 0;

  color:
    rgba(255,255,255,0.68);

  font-size: 14px;

  line-height: 1.8;

}


/* =========================================================
   DATE
========================================================= */

.countdown-date {

  display: flex;

  justify-content: center;

  align-items: center;

  gap: 9px;

  margin-top: 20px;

  color: #ffffff;

  font-size: 13px;

}

.countdown-date span {

  font-weight: 900;

}

.countdown-date b {

  color: #cfc7ff;

  font-weight: 600;

}


/* =========================================================
   TIMER
========================================================= */

.countdown-timer {

  display: flex;

  align-items: center;

  justify-content: center;

  gap: 14px;

  margin: 40px auto 28px;

}

.countdown-item {

  width: 135px;

  padding: 20px 10px;

  border-radius: 18px;

  border:
    1px solid
    rgba(255,255,255,0.12);

  background:
    rgba(255,255,255,0.075);

  box-shadow:
    inset 0 1px 0
    rgba(255,255,255,0.05);

}

.countdown-item strong {

  display: block;

  color: #ffffff;

  font-size: 42px;

  font-weight: 800;

  line-height: 1;

  letter-spacing: -0.03em;

  font-variant-numeric:
    tabular-nums;

}

.countdown-item span {

  display: block;

  margin-top: 9px;

  color:
    rgba(255,255,255,0.52);

  font-size: 10px;

  font-weight: 700;

  letter-spacing: 0.1em;

  text-transform: uppercase;

}

.countdown-separator {

  color:
    rgba(255,255,255,0.35);

  font-size: 28px;

  font-weight: 700;

}


/* =========================================================
   LOCATION
========================================================= */

.countdown-location {

  display: flex;

  justify-content: center;

  align-items: center;

  gap: 8px;

  color:
    rgba(255,255,255,0.62);

  font-size: 12px;

}

.countdown-location span {

  font-size: 15px;

}


/* =========================================================
   BUTTON
========================================================= */

.countdown-action {

  margin-top: 25px;

}

.countdown-action .btn {

  min-width: 190px;

}


/* =========================================================
   EVENT LIVE STATE
========================================================= */

.countdown-live {

  color: #ffffff;

  font-size: 26px;

  font-weight: 800;

  margin: 35px 0;

}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 850px) {

  .countdown-box {

    padding: 45px 30px;

  }

  .countdown-item {

    width: 115px;

  }

  .countdown-item strong {

    font-size: 34px;

  }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 600px) {

  .radcon-countdown-section {

    padding: 65px 0;

  }

  .countdown-box {

    padding: 35px 16px;

    border-radius: 22px;

  }

  .countdown-content h2 {

    font-size: 2.2rem;

  }

  .countdown-content p {

    font-size: 13px;

  }

  .countdown-timer {

    gap: 5px;

    margin-top: 30px;

  }

  .countdown-item {

    width: 68px;

    padding: 14px 5px;

    border-radius: 12px;

  }

  .countdown-item strong {

    font-size: 25px;

  }

  .countdown-item span {

    font-size: 7px;

    margin-top: 6px;

  }

  .countdown-separator {

    font-size: 17px;

  }

  .countdown-date {

    font-size: 12px;

  }

  .countdown-location {

    font-size: 10px;

    line-height: 1.5;

  }

}


/* Very small phones */

@media (max-width: 380px) {

  .countdown-item {

    width: 60px;

  }

  .countdown-item strong {

    font-size: 22px;

  }

  .countdown-separator {

    font-size: 14px;

  }

}



/* =========================================================
   VENUE V2
========================================================= */

.radcon-venue-v2 {

  position: relative;

  padding: 110px 0;

  overflow: hidden;

  background:
    #f7f8fc;

}


/* Decorative background */

.radcon-venue-v2::before {

  content: "";

  position: absolute;

  width: 500px;
  height: 500px;

  right: -250px;
  top: -220px;

  border-radius: 50%;

  background:
    rgba(91,59,183,0.055);

}

.radcon-venue-v2::after {

  content: "";

  position: absolute;

  width: 350px;
  height: 350px;

  left: -180px;
  bottom: -180px;

  border-radius: 50%;

  background:
    rgba(189,55,107,0.045);

}


/* =========================================================
   HEADING
========================================================= */

.venue-v2-heading {

  position: relative;

  z-index: 2;

  max-width: 780px;

  margin: 0 auto 55px;

  text-align: center;

}

.venue-v2-kicker {

  display: inline-block;

  margin-bottom: 14px;

  color: #5b3bb7;

  font-size: 10px;

  font-weight: 900;

  letter-spacing: 0.2em;

}

.venue-v2-heading h2 {

  margin: 0;

  color: #101b4d;

  font-size:
    clamp(
      2.4rem,
      5vw,
      4rem
    );

  line-height: 1.05;

  letter-spacing: -0.035em;

}

.venue-v2-heading h2 span {

  display: block;

  color: #bd376b;

}

.venue-v2-heading p {

  max-width: 680px;

  margin: 20px auto 0;

  color: #707990;

  font-size: 14px;

  line-height: 1.85;

}


/* =========================================================
   MAIN CARD
========================================================= */

.venue-v2-card {

  position: relative;

  z-index: 2;

  display: grid;

  grid-template-columns:
    0.92fr
    1.08fr;

  max-width: 1160px;

  min-height: 570px;

  margin: 0 auto;

  overflow: hidden;

  border-radius: 28px;

  background:
    #11183f;

  box-shadow:
    0 35px 80px
    rgba(16,27,70,0.16);

}


/* =========================================================
   LEFT CONTENT
========================================================= */

.venue-v2-content {

  position: relative;

  display: flex;

  flex-direction: column;

  justify-content: center;

  padding: 55px;

  overflow: hidden;

}


/* subtle grid */

.venue-v2-content::before {

  content: "";

  position: absolute;

  inset: 0;

  opacity: 0.04;

  background-image:
    linear-gradient(
      rgba(255,255,255,.7) 1px,
      transparent 1px
    ),
    linear-gradient(
      90deg,
      rgba(255,255,255,.7) 1px,
      transparent 1px
    );

  background-size:
    35px 35px;

  pointer-events: none;

}


/* Gradient glow */

.venue-v2-content::after {

  content: "";

  position: absolute;

  width: 280px;
  height: 280px;

  left: -150px;
  bottom: -150px;

  border-radius: 50%;

  background:
    rgba(91,59,183,0.35);

  filter: blur(50px);

}


/* =========================================================
   TOPLINE
========================================================= */

.venue-v2-topline {

  position: relative;

  z-index: 2;

  display: flex;

  align-items: center;

  gap: 10px;

  margin-bottom: 25px;

  color:
    rgba(255,255,255,0.52);

  font-size: 9px;

  font-weight: 800;

  letter-spacing: 0.16em;

}

.venue-v2-topline i {

  width: 22px;
  height: 1px;

  background:
    rgba(255,255,255,0.25);

}


/* =========================================================
   ICON
========================================================= */

.venue-v2-icon {

  position: relative;

  z-index: 2;

  display: flex;

  align-items: center;
  justify-content: center;

  width: 48px;
  height: 48px;

  margin-bottom: 20px;

  border-radius: 14px;

  background:
    linear-gradient(
      135deg,
      #5b3bb7,
      #bd376b
    );

  color: #ffffff;

  font-size: 20px;

  box-shadow:
    0 12px 30px
    rgba(91,59,183,0.25);

}


/* =========================================================
   TITLE
========================================================= */

.venue-v2-content h3 {

  position: relative;

  z-index: 2;

  margin: 0;

  color: #ffffff;

  font-size:
    clamp(
      2.1rem,
      4vw,
      3.2rem
    );

  line-height: 1.08;

  letter-spacing: -0.035em;

}

.venue-v2-content h3 strong {

  display: block;

  background:
    linear-gradient(
      90deg,
      #bbaaff,
      #ff9eae
    );

  -webkit-background-clip: text;

  background-clip: text;

  color: transparent;

}


/* =========================================================
   ADDRESS
========================================================= */

.venue-v2-description {

  position: relative;

  z-index: 2;

  max-width: 420px;

  margin: 18px 0 27px;

  color:
    rgba(255,255,255,0.62);

  font-size: 13px;

  line-height: 1.75;

}


/* =========================================================
   DETAILS
========================================================= */

.venue-v2-details {

  position: relative;

  z-index: 2;

  display: flex;

  flex-direction: column;

  gap: 13px;

  padding: 20px 0;

  border-top:
    1px solid
    rgba(255,255,255,0.09);

  border-bottom:
    1px solid
    rgba(255,255,255,0.09);

}

.venue-v2-detail {

  display: flex;

  align-items: center;

  gap: 13px;

}

.detail-icon {

  display: flex;

  align-items: center;
  justify-content: center;

  width: 32px;
  height: 32px;

  flex: 0 0 auto;

  border-radius: 9px;

  background:
    rgba(255,255,255,0.07);

  color: #bcaeff;

  font-size: 8px;

  font-weight: 900;

}

.venue-v2-detail small {

  display: block;

  margin-bottom: 3px;

  color:
    rgba(255,255,255,0.38);

  font-size: 7px;

  font-weight: 900;

  letter-spacing: 0.13em;

}

.venue-v2-detail strong {

  display: block;

  color:
    rgba(255,255,255,0.82);

  font-size: 10px;

}


/* =========================================================
   MAP BUTTON
========================================================= */

.venue-v2-map {

  position: relative;

  z-index: 2;

  display: inline-flex;

  align-items: center;

  gap: 10px;

  width: fit-content;

  margin-top: 28px;

  padding: 12px 16px;

  border-radius: 10px;

  background:
    #ffffff;

  color: #11183f;

  font-size: 10px;

  font-weight: 900;

  text-decoration: none;

  transition:
    transform .25s ease,
    box-shadow .25s ease;

}

.venue-v2-map:hover {

  transform:
    translateY(-3px);

  box-shadow:
    0 12px 25px
    rgba(0,0,0,.2);

}

.venue-v2-map-icon {

  display: flex;

  align-items: center;
  justify-content: center;

  width: 24px;
  height: 24px;

  border-radius: 50%;

  background:
    linear-gradient(
      135deg,
      #5b3bb7,
      #bd376b
    );

  color: #ffffff;

}


/* =========================================================
   RIGHT IMAGE
========================================================= */

.venue-v2-visual {

  position: relative;

  min-height: 570px;

  overflow: hidden;

  background: #20264d;

}

.venue-v2-visual img {

  width: 100%;
  height: 100%;

  display: block;

  object-fit: cover;

  transition:
    transform .9s
    cubic-bezier(.2,.8,.2,1);

}

.venue-v2-card:hover
.venue-v2-visual img {

  transform:
    scale(1.06);

}


/* Image overlay */

.venue-v2-visual-overlay {

  position: absolute;

  inset: 0;

  background:
    linear-gradient(
      90deg,
      rgba(17,24,63,0.35),
      transparent 45%
    );

}


/* =========================================================
   FLOATING CARD
========================================================= */

.venue-v2-floating-card {

  position: absolute;

  left: 28px;
  bottom: 28px;

  min-width: 190px;

  padding: 17px 19px;

  border-radius: 15px;

  background:
    rgba(10,15,43,0.68);

  border:
    1px solid
    rgba(255,255,255,0.16);

  backdrop-filter:
    blur(15px);

  -webkit-backdrop-filter:
    blur(15px);

  color: #ffffff;

}

.floating-card-top {

  display: flex;

  align-items: center;

  gap: 7px;

  margin-bottom: 10px;

  color:
    rgba(255,255,255,0.52);

  font-size: 7px;

  font-weight: 900;

  letter-spacing: 0.14em;

}

.floating-dot {

  width: 6px;
  height: 6px;

  border-radius: 50%;

  background:
    #8ee5ba;

  box-shadow:
    0 0 0 4px
    rgba(142,229,186,.1);

}

.venue-v2-floating-card strong {

  display: block;

  font-size: 21px;

}

.venue-v2-floating-card small {

  display: block;

  margin-top: 2px;

  color:
    rgba(255,255,255,.6);

  font-size: 10px;

}


/* =========================================================
   COORDINATES
========================================================= */

.venue-v2-coordinates {

  position: absolute;

  top: 24px;
  right: 25px;

  display: flex;

  flex-direction: column;

  align-items: flex-end;

  gap: 4px;

  color:
    rgba(255,255,255,0.55);

  font-size: 7px;

  font-weight: 800;

  letter-spacing: .12em;

}


/* =========================================================
   BOTTOM STRIP
========================================================= */

.venue-v2-bottom {

  position: relative;

  z-index: 2;

  display: grid;

  grid-template-columns:
    1.1fr
    1.4fr
    auto;

  align-items: center;

  gap: 30px;

  max-width: 1160px;

  margin: 20px auto 0;

  padding: 22px 25px;

  border-radius: 17px;

  background:
    #ffffff;

  border:
    1px solid #e2e6ef;

  box-shadow:
    0 12px 35px
    rgba(16,27,70,.05);

}

.venue-v2-bottom-title {

  display: flex;

  align-items: center;

  gap: 12px;

}

.bottom-star {

  display: flex;

  align-items: center;
  justify-content: center;

  width: 37px;
  height: 37px;

  border-radius: 10px;

  background:
    rgba(91,59,183,.08);

  color: #5b3bb7;

}

.venue-v2-bottom-title small {

  display: block;

  color: #9098aa;

  font-size: 7px;

  font-weight: 900;

  letter-spacing: .14em;

}

.venue-v2-bottom-title strong {

  display: block;

  margin-top: 3px;

  color: #101b4d;

  font-size: 12px;

}

.venue-v2-bottom-text {

  color: #717a91;

  font-size: 11px;

  line-height: 1.6;

}

.venue-v2-explore {

  white-space: nowrap;

  color: #5b3bb7;

  font-size: 10px;

  font-weight: 900;

  text-decoration: none;

}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 900px) {

  .venue-v2-card {

    grid-template-columns: 1fr;

  }

  .venue-v2-content {

    order: 2;

  }

  .venue-v2-visual {

    order: 1;

    min-height: 400px;

  }

  .venue-v2-bottom {

    grid-template-columns:
      1fr 1fr;

  }

  .venue-v2-explore {

    grid-column: span 2;

  }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 600px) {

  .radcon-venue-v2 {

    padding: 70px 0;

  }

  .venue-v2-heading {

    margin-bottom: 32px;

  }

  .venue-v2-heading h2 {

    font-size: 2.25rem;

  }

  .venue-v2-heading h2 span {

    display: inline;

  }

  .venue-v2-heading p {

    font-size: 13px;

  }

  .venue-v2-card {

    border-radius: 21px;

  }

  .venue-v2-visual {

    min-height: 300px;

  }

  .venue-v2-content {

    padding: 32px 23px;

  }

  .venue-v2-content h3 {

    font-size: 2.15rem;

  }

  .venue-v2-description {

    font-size: 12px;

  }

  .venue-v2-map {

    width: 100%;

    justify-content: center;

  }

  .venue-v2-floating-card {

    left: 15px;
    bottom: 15px;

  }

  .venue-v2-coordinates {

    top: 15px;
    right: 15px;

    font-size: 6px;

  }

  .venue-v2-bottom {

    grid-template-columns: 1fr;

    gap: 16px;

    padding: 18px;

  }

  .venue-v2-explore {

    grid-column: auto;

  }

}

/* =========================================================
   RADIOLOGY ADALAT SECTION
========================================================= */

.radcon-adalat-section {

  position: relative;

  padding: 100px 0;

  overflow: hidden;

  background:
    linear-gradient(
      135deg,
      #f3f5fa 0%,
      #ffffff 50%,
      #f1f3f9 100%
    );

}


/* =========================================================
   MAIN CARD
========================================================= */

.adalat-card {

  display: grid;

  grid-template-columns:
    0.95fr
    1.05fr;

  max-width: 1180px;

  min-height: 540px;

  margin: 0 auto;

  overflow: hidden;

  border-radius: 28px;

  background: #ffffff;

  border:
    1px solid #e2e6ef;

  box-shadow:
    0 30px 75px
    rgba(16,27,70,0.12);

}


/* =========================================================
   IMAGE
========================================================= */

.adalat-image {

  position: relative;

  min-height: 540px;

  overflow: hidden;

  background:
    #10183f;

}

.adalat-image img {

  width: 100%;
  height: 100%;

  display: block;

  object-fit: cover;

  transition:
    transform 0.8s
    cubic-bezier(.2,.8,.2,1);

}




/* =========================================================
   IMAGE OVERLAY
========================================================= */

.adalat-image-overlay {

  position: absolute;

  inset: 0;

  background:
    linear-gradient(
      180deg,
      rgba(10,15,45,0.05) 25%,
      rgba(10,15,45,0.78) 100%
    );

}


/* =========================================================
   IMAGE LABEL
========================================================= */

.adalat-number {

  position: absolute;

  left: 25px;
  bottom: 25px;

  display: flex;

  align-items: center;

  gap: 10px;

  padding: 11px 15px;

  border-radius: 12px;

  color: #ffffff;

  background:
    rgba(255,255,255,0.12);

  border:
    1px solid
    rgba(255,255,255,0.20);

  backdrop-filter:
    blur(14px);

  -webkit-backdrop-filter:
    blur(14px);

  font-size: 8px;

  font-weight: 800;

  letter-spacing: 0.13em;

}

.adalat-number span {

  display: flex;

  align-items: center;
  justify-content: center;

  width: 32px;
  height: 32px;

  border-radius: 9px;

  background:
    linear-gradient(
      135deg,
      #5b3bb7,
      #bd376b
    );

  font-size: 10px;

  letter-spacing: 0;

}


/* =========================================================
   CONTENT
========================================================= */

.adalat-content {

  display: flex;

  flex-direction: column;

  justify-content: center;

  padding: 55px;

}


/* Eyebrow */

.adalat-content .eyebrow {

  margin-bottom: 13px;

  color: #5b3bb7;

  font-size: 10px;

  font-weight: 900;

  letter-spacing: 0.18em;

}


/* Heading */

.adalat-content h2 {

  margin: 0;

  color: #101b4d;

  font-size:
    clamp(
      2.4rem,
      4vw,
      3.7rem
    );

  line-height: 1;

  letter-spacing: -0.04em;

}

.adalat-content h2 span {

  display: block;

  background:
    linear-gradient(
      90deg,
      #5b3bb7,
      #bd376b
    );

  -webkit-background-clip: text;

  background-clip: text;

  color: transparent;

}


/* Intro */

.adalat-intro {

  max-width: 500px;

  margin: 20px 0 10px;

  color: #101b4d;

  font-size: 16px;

  font-weight: 700;

  line-height: 1.6;

}


/* Description */

.adalat-content > p:not(.adalat-intro) {

  max-width: 560px;

  margin: 0;

  color: #707990;

  font-size: 13px;

  line-height: 1.8;

}


/* =========================================================
   HIGHLIGHTS
========================================================= */

.adalat-highlights {

  display: grid;

  grid-template-columns:
    repeat(3, 1fr);

  gap: 10px;

  margin-top: 28px;

  padding-top: 22px;

  border-top:
    1px solid #e9ecf2;

}

.adalat-highlight {

  display: flex;

  flex-direction: column;

  gap: 9px;

}

.adalat-icon {

  display: flex;

  align-items: center;
  justify-content: center;

  width: 34px;
  height: 34px;

  border-radius: 9px;

  background:
    linear-gradient(
      135deg,
      rgba(91,59,183,0.10),
      rgba(189,55,107,0.08)
    );

  color: #5b3bb7;

  font-size: 13px;

}

.adalat-highlight strong {

  display: block;

  color: #101b4d;

  font-size: 10px;

  line-height: 1.35;

}

.adalat-highlight small {

  display: block;

  margin-top: 3px;

  color: #8991a4;

  font-size: 8px;

  line-height: 1.4;

}


/* =========================================================
   BUTTON
========================================================= */

.adalat-button {

  display: inline-flex;

  align-items: center;

  justify-content: space-between;

  gap: 18px;

  width: fit-content;

  min-width: 215px;

  margin-top: 30px;

  padding: 12px 13px 12px 17px;

  border-radius: 11px;

  background:
    linear-gradient(
      135deg,
      #5b3bb7,
      #bd376b
    );

  color: #ffffff;

  font-size: 10px;

  font-weight: 800;

  text-decoration: none;

  box-shadow:
    0 10px 25px
    rgba(91,59,183,0.22);

  transition:
    transform .25s ease,
    box-shadow .25s ease;

}

.adalat-button:hover {

  transform:
    translateY(-3px);

  box-shadow:
    0 15px 30px
    rgba(91,59,183,0.28);

}

.adalat-button span {

  display: flex;

  align-items: center;
  justify-content: center;

  width: 27px;
  height: 27px;

  border-radius: 50%;

  background:
    rgba(255,255,255,0.16);

  transition:
    transform .25s ease;

}

.adalat-button:hover span {

  transform:
    translateX(3px);

}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 900px) {

  .radcon-adalat-section {

    padding: 80px 0;

  }

  .adalat-card {

    grid-template-columns:
      1fr;

  }

  .adalat-image {

    min-height: 390px;

  }

  .adalat-content {

    padding: 40px;

  }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 600px) {

  .radcon-adalat-section {

    padding: 65px 0;

  }

  .adalat-card {

    border-radius: 20px;

  }

  .adalat-image {

    min-height: 300px;

  }

  .adalat-number {

    left: 15px;
    bottom: 15px;

  }

  .adalat-content {

    padding: 30px 22px;

  }

  .adalat-content h2 {

    font-size: 2.45rem;

  }

  .adalat-intro {

    font-size: 14px;

  }

  .adalat-content > p:not(.adalat-intro) {

    font-size: 12px;

  }

  .adalat-highlights {

    grid-template-columns: 1fr;

    gap: 15px;

  }

  .adalat-highlight {

    display: grid;

    grid-template-columns: 34px 1fr;

    align-items: center;

  }

  .adalat-button {

    width: 100%;

  }

}
.programme-slider {

  position: relative;

  width: 100%;

  min-height: 450px;

  overflow: hidden;

  border-radius: 22px;

  background: #11183f;

  box-shadow:
    0 25px 60px
    rgba(16,27,70,0.13);

}


/* Slides container */

.programme-slides {

  position: relative;

  width: 100%;

  height: 100%;

  min-height: 450px;

}


/* Individual slide */

.programme-slide {

  position: relative;

  inset: 0;

  opacity: 0;

  visibility: hidden;

  transition:
    opacity .6s ease,
    visibility .6s ease;

}

.programme-slide.active {

  opacity: 1;

  visibility: visible;

  z-index: 2;

}


/* Image */

.programme-slide img {

  display: block;

  width: 100%;

  height: 100%;

  min-height: 450px;

  object-fit: cover;

}


/* Dark gradient */

.programme-slider::after {

  content: "";

  position: absolute;

  inset: 0;

  z-index: 3;

  pointer-events: none;

  background:
    linear-gradient(
      180deg,
      rgba(10,15,45,0.02) 45%,
      rgba(10,15,45,0.55) 100%
    );

}


/* =====================================================
   ARROWS
====================================================== */

.programme-prev,
.programme-next {

  position: absolute;

  top: 50%;

  z-index: 5;

  display: flex;

  align-items: center;

  justify-content: center;

  width: 42px;

  height: 42px;

  border: 1px solid
    rgba(255,255,255,0.25);

  border-radius: 50%;

  background:
    rgba(10,15,45,0.55);

  backdrop-filter: blur(8px);

  color: #ffffff;

  font-size: 17px;

  cursor: pointer;

  transform:
    translateY(-50%);

  transition:
    all .25s ease;

}

.programme-prev {

  left: 18px;

}

.programme-next {

  right: 18px;

}

.programme-prev:hover,
.programme-next:hover {

  background:
    #ffffff;

  color:
    #11183f;

  transform:
    translateY(-50%)
    scale(1.08);

}


/* =====================================================
   DOTS
====================================================== */

.programme-dots {

  position: absolute;

  left: 50%;

  bottom: 18px;

  z-index: 6;

  display: flex;

  align-items: center;

  gap: 7px;

  transform:
    translateX(-50%);

}

.programme-dot {

  width: 7px;

  height: 7px;

  padding: 0;

  border: 0;

  border-radius: 50%;

  background:
    rgba(255,255,255,0.45);

  cursor: pointer;

  transition:
    all .3s ease;

}

.programme-dot.active {

  width: 24px;

  border-radius: 10px;

  background:
    #ffffff;

}


/* =====================================================
   MOBILE
====================================================== */

@media (max-width: 700px) {

  .programme-slider {

    min-height: 300px;

    border-radius: 18px;

  }

  .programme-slides {

    min-height: 300px;

  }

  .programme-slide img {

    min-height: 300px;

  }

  .programme-prev,
  .programme-next {

    width: 36px;

    height: 36px;

    font-size: 14px;

  }

  .programme-prev {

    left: 10px;

  }

  .programme-next {

    right: 10px;

  }

}

/*gallery*/
  /* =====================================================
       GALLERY PAGE
    ===================================================== */

    .radcon-gallery-page {

      background:
        linear-gradient(
          135deg,
          #f7f8fc 0%,
          #ffffff 50%,
          #f4f5fa 100%
        );

      min-height: 100vh;

    }


    /* =====================================================
       HERO
    ===================================================== */

    .gallery-hero {

      position: relative;

      padding: 95px 0 75px;

      overflow: hidden;

      background:
        linear-gradient(
          135deg,
          #11183f,
          #25245c
        );

      color: #ffffff;

    }

    .gallery-hero::before {

      content: "";

      position: absolute;

      width: 420px;
      height: 420px;

      right: -180px;
      top: -220px;

      border-radius: 50%;

      background:
        rgba(189,55,107,0.22);

      filter: blur(10px);

    }

    .gallery-hero::after {

      content: "";

      position: absolute;

      width: 300px;
      height: 300px;

      left: -150px;
      bottom: -180px;

      border-radius: 50%;

      background:
        rgba(91,59,183,0.30);

    }

    .gallery-hero-inner {

      position: relative;

      z-index: 2;

      max-width: 850px;

      margin: 0 auto;

      text-align: center;

    }

    .gallery-kicker {

      display: inline-block;

      margin-bottom: 15px;

      color: #bbaeff;

      font-size: 10px;

      font-weight: 900;

      letter-spacing: .2em;

    }

    .gallery-hero h1 {

      margin: 0;

      font-size:
        clamp(
          2.5rem,
          6vw,
          4.8rem
        );

      line-height: 1;

      letter-spacing: -.045em;

    }

    .gallery-hero h1 span {

      display: block;

      background:
        linear-gradient(
          90deg,
          #bbaaff,
          #ff9eae
        );

      -webkit-background-clip: text;

      background-clip: text;

      color: transparent;

    }

    .gallery-hero p {

      max-width: 650px;

      margin: 22px auto 0;

      color:
        rgba(255,255,255,.68);

      font-size: 14px;

      line-height: 1.8;

    }


    /* =====================================================
       FILTER BUTTONS
    ===================================================== */

    .gallery-filter-wrap {

      display: flex;

      justify-content: center;

      flex-wrap: wrap;

      gap: 9px;

      margin: 45px auto 45px;

    }

    .gallery-filter {

      padding: 10px 17px;

      border: 1px solid #dfe3ec;

      border-radius: 30px;

      background: #ffffff;

      color: #6d758a;

      font-size: 10px;

      font-weight: 800;

      cursor: pointer;

      transition:
        all .25s ease;

    }

    .gallery-filter:hover,
    .gallery-filter.active {

      border-color:
        #5b3bb7;

      background:
        linear-gradient(
          135deg,
          #5b3bb7,
          #bd376b
        );

      color: #ffffff;

      box-shadow:
        0 8px 20px
        rgba(91,59,183,.18);

    }


    /* =====================================================
       GALLERY GRID
    ===================================================== */

    .gallery-grid {

      display: grid;

      grid-template-columns:
        repeat(4, 1fr);

      gap: 18px;

      padding-bottom: 100px;

    }

    .gallery-item {

      position: relative;

      height: 250px;

      overflow: hidden;

      border-radius: 17px;

      background: #e9ecf3;

      cursor: pointer;

      box-shadow:
        0 12px 30px
        rgba(16,27,70,.07);

      transition:
        transform .3s ease,
        box-shadow .3s ease;

    }

    .gallery-item:nth-child(1),
    .gallery-item:nth-child(6) {

      grid-column: span 2;

      height: 310px;

    }

    .gallery-item img {

      display: block;

      width: 100%;
      height: 100%;

      object-fit: cover;

      transition:
        transform .65s
        cubic-bezier(.2,.8,.2,1);

    }

    .gallery-item:hover {

      transform:
        translateY(-5px);

      box-shadow:
        0 22px 45px
        rgba(16,27,70,.15);

    }

    .gallery-item:hover img {

      transform:
        scale(1.07);

    }


    /* =====================================================
       IMAGE OVERLAY
    ===================================================== */

    .gallery-overlay {

      position: absolute;

      inset: 0;

      display: flex;

      flex-direction: column;

      justify-content: flex-end;

      padding: 22px;

      background:
        linear-gradient(
          180deg,
          transparent 45%,
          rgba(10,15,45,.75)
        );

      opacity: 0;

      transition:
        opacity .3s ease;

    }

    .gallery-item:hover
    .gallery-overlay {

      opacity: 1;

    }

    .gallery-overlay span {

      color:
        rgba(255,255,255,.65);

      font-size: 8px;

      font-weight: 800;

      letter-spacing: .15em;

    }

    .gallery-overlay strong {

      margin-top: 4px;

      color: #ffffff;

      font-size: 16px;

    }


    /* =====================================================
       ZOOM ICON
    ===================================================== */

    .gallery-zoom {

      position: absolute;

      top: 17px;
      right: 17px;

      display: flex;

      align-items: center;
      justify-content: center;

      width: 36px;
      height: 36px;

      border-radius: 50%;

      background:
        rgba(255,255,255,.18);

      border:
        1px solid
        rgba(255,255,255,.25);

      backdrop-filter:
        blur(8px);

      color: #ffffff;

      font-size: 15px;

    }


    /* =====================================================
       LIGHTBOX
    ===================================================== */

    .gallery-lightbox {

      position: fixed;

      inset: 0;

      z-index: 9999;

      display: none;

      align-items: center;

      justify-content: center;

      padding: 25px;

      background:
        rgba(8,12,35,.94);

    }

    .gallery-lightbox.active {

      display: flex;

    }

    .gallery-lightbox img {

      max-width: 92vw;

      max-height: 88vh;

      object-fit: contain;

      border-radius: 10px;

      box-shadow:
        0 30px 80px
        rgba(0,0,0,.4);

    }

    .lightbox-close {

      position: absolute;

      top: 22px;
      right: 25px;

      width: 42px;
      height: 42px;

      border: 0;

      border-radius: 50%;

      background:
        rgba(255,255,255,.12);

      color: #ffffff;

      font-size: 22px;

      cursor: pointer;

    }


    /* =====================================================
       RESPONSIVE
    ===================================================== */

    @media (max-width: 1000px) {

      .gallery-grid {

        grid-template-columns:
          repeat(3, 1fr);

      }

    }


    @media (max-width: 700px) {

      .gallery-hero {

        padding: 70px 0 55px;

      }

      .gallery-hero h1 {

        font-size: 2.8rem;

      }

      .gallery-hero p {

        font-size: 12px;

      }

      .gallery-grid {

        grid-template-columns:
          repeat(2, 1fr);

        gap: 11px;

      }

      .gallery-item,
      .gallery-item:nth-child(1),
      .gallery-item:nth-child(6) {

        grid-column: span 1;

        height: 190px;

      }

      .gallery-overlay {

        opacity: 1;

        padding: 12px;

      }

      .gallery-overlay strong {

        font-size: 12px;

      }

    }


    @media (max-width: 420px) {

      .gallery-grid {

        grid-template-columns: 1fr;

      }

      .gallery-item,
      .gallery-item:nth-child(1),
      .gallery-item:nth-child(6) {

        height: 240px;

      }

    }


