*{
  box-sizing:border-box;
  margin:0;
  padding:0;
}
html{scroll-behavior:smooth}
body{
  font-family:'Inter',sans-serif;
  background:#0b0d12;
  color:#f5f7fb;
  line-height:1.6;
}
a{text-decoration:none;color:inherit}
img{max-width:100%}
.container{width:min(1180px,92%);margin:auto}
.site-header{
  position:fixed;
  inset:0 0 auto 0;
  z-index:50;
  background:rgba(11,13,18,.78);
  backdrop-filter:blur(14px);
  border-bottom:1px solid rgba(255,255,255,.07);
}
.nav-wrap{height:72px;display:flex;align-items:center;justify-content:space-between}
.logo{font-size:1.35rem;font-weight:800;letter-spacing:.5px}
.logo span{color:#58d8ff}
.nav{display:flex;gap:28px}
.nav a{font-size:.95rem;color:#d5dae3;transition:.2s}
.nav a:hover{color:white}
.menu-toggle{display:none;background:none;border:0;color:white;font-size:1.6rem}
.hero{
  min-height:100vh;
  display:flex;
  align-items:center;
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 75% 30%, rgba(44,180,255,.35), transparent 30%),
    radial-gradient(circle at 20% 70%, rgba(104,62,255,.22), transparent 32%),
    linear-gradient(135deg,#0b0d12 30%,#111827 100%);
}
.hero:after{
  content:"";
  position:absolute;
  width:620px;height:620px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:50%;
  right:-150px;top:80px;
  box-shadow:0 0 100px rgba(88,216,255,.1) inset;
}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(11,13,18,.92),rgba(11,13,18,.35))}
.hero-content{position:relative;z-index:2;padding-top:70px}
.eyebrow,.section-kicker{
  display:inline-block;
  font-size:.76rem;
  letter-spacing:2px;
  font-weight:700;
  color:#58d8ff;
  margin-bottom:16px;
}
.hero h1{
  font-size:clamp(2.8rem,6vw,6.2rem);
  line-height:.98;
  max-width:980px;
  letter-spacing:-3px;
}
.hero h1 span{color:#58d8ff}
.hero p{max-width:650px;margin-top:26px;color:#bac2d0;font-size:1.1rem}
.hero-actions{display:flex;gap:14px;margin-top:34px}
.btn{padding:14px 22px;border-radius:12px;font-weight:700;display:inline-block}
.btn-primary{background:#58d8ff;color:#061018}
.btn-secondary{border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.04)}
.section{padding:105px 0}
.section-alt{background:#0f131b}
.section-heading{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:30px;
  margin-bottom:46px;
}
.section-heading h2,.about-copy h2,.contact-card h2{font-size:clamp(2rem,4vw,3.5rem);line-height:1.05}
.section-heading p{max-width:520px;color:#aab3c2}
.centered{display:block;text-align:center;max-width:720px;margin:0 auto 46px}
.centered p{margin:14px auto 0}
.tour-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.tour-card{
  overflow:hidden;
  border-radius:20px;
  background:#131824;
  border:1px solid rgba(255,255,255,.08);
  transition:.25s;
}
.tour-card:hover{transform:translateY(-6px);border-color:rgba(88,216,255,.35)}
.tour-cover{
  height:230px;
  position:relative;
  background:
    linear-gradient(135deg, rgba(29,78,216,.7), rgba(88,216,255,.2)),
    radial-gradient(circle at 75% 25%, rgba(255,255,255,.25), transparent 20%),
    #172033;
}
.tour-cover:after{
  content:"360°";
  position:absolute;
  right:18px;bottom:14px;
  background:rgba(0,0,0,.55);
  border:1px solid rgba(255,255,255,.15);
  padding:6px 10px;border-radius:999px;font-weight:700;font-size:.8rem;
}
.tour-body{padding:22px}
.tour-meta{font-size:.82rem;color:#58d8ff;margin-bottom:8px}
.tour-body h3{font-size:1.35rem;margin-bottom:8px}
.tour-body p{color:#aab3c2;font-size:.95rem;min-height:52px}
.tour-link{
  margin-top:18px;
  display:inline-flex;
  align-items:center;
  gap:8px;
  font-weight:700;
  color:#58d8ff;
}
.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.service-card{
  padding:28px;
  border-radius:18px;
  background:#141923;
  border:1px solid rgba(255,255,255,.07);
}
.service-icon{
  width:54px;height:54px;border-radius:14px;
  display:grid;place-items:center;
  background:rgba(88,216,255,.11);
  color:#58d8ff;font-weight:800;margin-bottom:20px;
}
.service-card h3{margin-bottom:10px}
.service-card p{color:#aab3c2;font-size:.94rem}
.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}
.about-visual{
  min-height:430px;
  position:relative;
  border-radius:28px;
  overflow:hidden;
  background:linear-gradient(145deg,#101827,#0b0d12);
  border:1px solid rgba(255,255,255,.08);
}
.orb{position:absolute;border-radius:50%;filter:blur(1px)}
.orb-1{width:280px;height:280px;background:rgba(88,216,255,.22);right:30px;top:40px}
.orb-2{width:200px;height:200px;background:rgba(100,75,255,.24);left:35px;bottom:30px}
.about-card{
  position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
  width:240px;height:240px;border-radius:50%;
  display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;
  border:1px solid rgba(255,255,255,.16);
  background:rgba(9,13,20,.7);
  backdrop-filter:blur(10px);
}
.about-card span{font-size:3.2rem;font-weight:800;color:#58d8ff}
.about-card strong{max-width:160px}
.about-copy p{color:#aab3c2;margin-top:18px}
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:28px}
.stats div{padding:18px;border-radius:14px;background:#121722;border:1px solid rgba(255,255,255,.06)}
.stats strong{display:block;font-size:1.35rem;color:#58d8ff}
.stats span{font-size:.78rem;color:#aab3c2}
.contact-section{padding-top:30px}
.contact-card{
  padding:46px;
  display:grid;grid-template-columns:1.2fr .8fr;gap:40px;
  border-radius:24px;
  background:linear-gradient(135deg,#172033,#0f141d);
  border:1px solid rgba(255,255,255,.08)
}
.contact-card p{color:#aab3c2;margin-top:12px}
.contact-links{display:flex;flex-direction:column;gap:12px;justify-content:center}
.contact-links a{
  padding:14px 16px;border-radius:12px;
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.08)
}
footer{padding:30px 0;border-top:1px solid rgba(255,255,255,.07)}
.footer-wrap{display:flex;justify-content:space-between;align-items:center;color:#7f899a;font-size:.9rem}

@media (max-width: 900px){
  .tour-grid{grid-template-columns:repeat(2,1fr)}
  .service-grid{grid-template-columns:repeat(2,1fr)}
  .about-grid{grid-template-columns:1fr}
  .contact-card{grid-template-columns:1fr}
}
@media (max-width: 700px){
  .menu-toggle{display:block;cursor:pointer}
  .nav{
    display:none;
    position:absolute;
    top:72px;left:0;right:0;
    flex-direction:column;
    padding:20px 4%;
    background:#0b0d12;
    border-bottom:1px solid rgba(255,255,255,.08);
  }
  .nav.open{display:flex}
  .hero h1{letter-spacing:-2px}
  .hero-actions{flex-direction:column;align-items:flex-start}
  .section-heading{display:block}
  .section-heading p{margin-top:14px}
  .tour-grid,.service-grid{grid-template-columns:1fr}
  .stats{grid-template-columns:1fr}
  .about-visual{min-height:340px}
  .contact-card{padding:28px}
  .footer-wrap{flex-direction:column;gap:12px;text-align:center}
}

.tour-card.clickable { cursor: pointer; }
.tour-link.disabled { color: #7f899a; cursor: default; }

.tour-card-link {
  display: block;
  color: inherit;
  text-decoration: none;
  height: 100%;
}
.tour-card-link:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 4px;
  border-radius: 20px;
}
