:root{
  --cinema-night:#03101f;
  --cinema-navy:#071c37;
  --cinema-blue:#0b3769;
  --cinema-gold:#d8aa55;
  --cinema-gold-soft:#f4dca8;
  --cinema-glow:rgba(216,170,85,.28);
  --cinema-line:rgba(255,255,255,.12);
  --cinema-shadow:0 28px 80px rgba(3,16,31,.18);
}

html{background:var(--cinema-night)}
body{background:linear-gradient(180deg,#f6f8fb 0%,#eef3f8 45%,#f7f9fc 100%);text-rendering:optimizeLegibility}
body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:9999;box-shadow:inset 0 0 120px rgba(2,10,22,.055)}

.topbar{background:#020a14!important;border-bottom:1px solid rgba(244,220,168,.1)}
header{background:rgba(3,16,31,.88)!important;border-bottom:1px solid rgba(244,220,168,.13)!important;box-shadow:0 14px 45px rgba(2,10,22,.16);backdrop-filter:blur(20px) saturate(135%)!important}
header .brand,header .brand-copy strong,header .back,header .links a{color:#f7f9fc!important}
header .brand-copy small{color:#9eafc3!important}
header .menu{color:var(--cinema-gold-soft)!important}
header .brand-logo-frame{border:1px solid rgba(244,220,168,.28);background:#041326;box-shadow:0 0 0 5px rgba(216,170,85,.06),0 12px 34px rgba(0,0,0,.35)}
header .nav-cta{box-shadow:0 0 0 1px rgba(255,255,255,.08),0 12px 34px rgba(216,170,85,.25)}

.hero,.hub-hero,.directory-hero,.uni-hero{
  position:relative;isolation:isolate;overflow:hidden;
  background:
    radial-gradient(circle at 12% 25%,rgba(216,170,85,.24),transparent 25%),
    radial-gradient(circle at 80% 10%,rgba(38,112,181,.25),transparent 30%),
    linear-gradient(125deg,#020b16 0%,#061a33 46%,#0a3563 100%)!important;
  box-shadow:inset 0 -1px rgba(255,255,255,.08),0 24px 70px rgba(3,16,31,.16)
}
.hero:before,.hub-hero:before,.directory-hero:before,.uni-hero:before{
  content:"";position:absolute;z-index:-2;inset:-35%;pointer-events:none;opacity:.65;
  background:
    linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);
  background-size:72px 72px;transform:perspective(700px) rotateX(58deg) translateY(10%);transform-origin:center;
  -webkit-mask-image:radial-gradient(ellipse at center,#000 15%,transparent 70%);mask-image:radial-gradient(ellipse at center,#000 15%,transparent 70%)
}
.hero:after,.hub-hero:after,.directory-hero:after,.uni-hero:after{
  content:"";position:absolute;z-index:-1;width:42vw;height:42vw;min-width:340px;min-height:340px;left:-16vw;bottom:-30vw;border-radius:50%;
  border:1px solid rgba(244,220,168,.18);box-shadow:0 0 100px var(--cinema-glow),inset 0 0 80px rgba(216,170,85,.06);pointer-events:none
}
.hero h1,.hub-hero h1,.directory-hero h1,.uni-hero h1{text-shadow:0 7px 32px rgba(0,0,0,.32)}
.hero p,.hub-hero p,.directory-hero p,.uni-hero p{color:#d3deeb!important}
.eyebrow,.kicker,.city-chip{color:var(--cinema-gold-soft)!important}

.primary,.nav-cta{
  position:relative;overflow:hidden;background:linear-gradient(135deg,#f6dfa9 0%,#d5a44d 56%,#bd8431 100%)!important;color:#122137!important;
  border:1px solid rgba(255,255,255,.24)!important;box-shadow:0 14px 36px rgba(184,128,43,.24);transition:transform .28s ease,box-shadow .28s ease,filter .28s ease
}
.primary:before,.nav-cta:before{content:"";position:absolute;inset:-1px auto -1px -55%;width:38%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.72),transparent);transform:skewX(-18deg);transition:left .55s ease}
.primary:hover:before,.nav-cta:hover:before{left:125%}
.primary:hover,.nav-cta:hover{transform:translateY(-2px);box-shadow:0 18px 42px rgba(184,128,43,.36);filter:saturate(1.08)}
.secondary{background:rgba(255,255,255,.055)!important;border-color:rgba(255,255,255,.24)!important;backdrop-filter:blur(12px);transition:.28s ease}
.secondary:hover{background:rgba(255,255,255,.12)!important;border-color:rgba(244,220,168,.55)!important;transform:translateY(-2px)}

.journey-card,.point,.social-contact__link{
  background:linear-gradient(145deg,rgba(255,255,255,.1),rgba(255,255,255,.045))!important;
  border-color:rgba(244,220,168,.16)!important;box-shadow:0 30px 90px rgba(0,0,0,.28)!important;backdrop-filter:blur(18px)
}
.journey-card:before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:linear-gradient(135deg,rgba(255,255,255,.13),transparent 24%,transparent 70%,rgba(216,170,85,.09))}

.country,.service,.guide-card,.card,.snapshot,.article>section,.uni-card,.side-card,.related-grid a,.contact-box,.cta-box,.fee-pending{
  border-color:rgba(7,28,55,.1)!important;box-shadow:0 18px 55px rgba(3,16,31,.075);transition:transform .32s ease,box-shadow .32s ease,border-color .32s ease;background-color:rgba(255,255,255,.92)
}
.country:hover,.service:hover,.guide-card:hover,.card:hover,.uni-card:hover,.related-grid a:hover{
  transform:translateY(-7px);border-color:rgba(216,170,85,.58)!important;box-shadow:0 28px 75px rgba(3,16,31,.15),0 0 0 1px rgba(216,170,85,.09)
}
.country.featured{background:linear-gradient(145deg,#06172f,#0a315d)!important;border-color:rgba(244,220,168,.18)!important;box-shadow:0 24px 65px rgba(3,16,31,.26)}
.services,.faq{background:linear-gradient(180deg,#fbfcfe,#f3f6fa)!important}
.knowledge,.benefits,.related,.more,.directory{background:radial-gradient(circle at 12% 15%,rgba(216,170,85,.09),transparent 25%),linear-gradient(180deg,#eef3f8,#f7f9fc)!important}
.why,.path,.social-contact{position:relative;overflow:hidden;background:radial-gradient(circle at 82% 15%,rgba(30,104,170,.28),transparent 29%),linear-gradient(125deg,#020b16,#071d39 55%,#0a315d)!important}
.why:before,.path:before,.social-contact:before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(115deg,transparent 0 66%,rgba(216,170,85,.075) 66% 66.2%,transparent 66.2%)}
.contact-box,.cta-box{background:radial-gradient(circle at 10% 0,rgba(216,170,85,.13),transparent 27%),linear-gradient(135deg,#fff,#edf3f9)!important;border-radius:30px!important}
.article>section,.tuition-section{position:relative;overflow:hidden}
.article>section:before,.tuition-section:before{content:"";position:absolute;right:0;top:0;width:74px;height:3px;background:linear-gradient(90deg,var(--cinema-gold),transparent)}
.fees-table thead th{background:linear-gradient(135deg,#031225,#0a315d)!important}
.fees-table td strong{color:#87601f!important}

.section-head h2,.intro h2,.head h2,.article h2,.more h2,.related h2,.hub-intro h2{letter-spacing:-.02em}
.social-contact__icon{box-shadow:0 10px 26px rgba(216,170,85,.25)}
footer{position:relative;background:linear-gradient(135deg,#010812,#04162b)!important;border-top:1px solid rgba(244,220,168,.12)}

.cinematic-ready .cinematic-reveal{opacity:0;transform:translateY(26px);transition:opacity .72s cubic-bezier(.2,.75,.25,1),transform .72s cubic-bezier(.2,.75,.25,1);transition-delay:var(--reveal-delay,0ms)}
.cinematic-ready .cinematic-reveal.is-visible{opacity:1;transform:none}
header.is-scrolled{background:rgba(2,11,22,.96)!important;box-shadow:0 18px 55px rgba(0,0,0,.25)}

@media(max-width:920px){
  header .links{background:rgba(3,16,31,.98)!important;border:1px solid rgba(244,220,168,.15);box-shadow:0 25px 70px rgba(0,0,0,.38)!important}
  .hero:after,.hub-hero:after,.directory-hero:after,.uni-hero:after{left:-220px;bottom:-240px}
}
@media(max-width:620px){
  body:before{box-shadow:inset 0 0 55px rgba(2,10,22,.04)}
  .hero,.hub-hero,.directory-hero,.uni-hero{background:radial-gradient(circle at 5% 15%,rgba(216,170,85,.2),transparent 28%),linear-gradient(145deg,#020b16,#071f3e 64%,#0a315d)!important}
  .hero:before,.hub-hero:before,.directory-hero:before,.uni-hero:before{background-size:48px 48px;opacity:.45}
  .country:hover,.service:hover,.guide-card:hover,.card:hover,.uni-card:hover,.related-grid a:hover{transform:none}
}
@media(prefers-reduced-motion:reduce){
  .cinematic-ready .cinematic-reveal{opacity:1;transform:none;transition:none}.primary:before,.nav-cta:before{display:none}
}
