:root {
  --wc26-primary: #0A1F44;
  --wc26-secondary: #F4B400;
  --wc26-accent: #00AEEF;
  --wc26-radius: 1rem;
  --wc26-shadow: 0 20px 50px rgba(10, 31, 68, 0.08);
}

html { scroll-behavior: smooth; }
body {
  font-family: 'Open Sans', sans-serif;
  color: #0f172a;
  background: #f8fafc;
}

h1,h2,h3,h4,h5,h6,
.font-heading {
  font-family: 'Inter', sans-serif;
}

.wc26-card,
.wc26-panel,
.wc26-hero-card {
  border-radius: var(--wc26-radius);
  box-shadow: var(--wc26-shadow);
  transition: transform .6s ease, box-shadow .6s ease, border-color .6s ease;
}

.wc26-card:hover,
.wc26-panel:hover,
.wc26-hero-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 28px 70px rgba(10, 31, 68, 0.14);
}

.wc26-empty-image {
  background: linear-gradient(135deg, rgba(10,31,68,.06), rgba(0,174,239,.12));
  min-height: 240px;
}

.wc26-prose p {
  margin: 0 0 1rem;
  line-height: 1.8;
}

.wc26-badge {
  display: inline-flex;
  align-items: center;
  gap: .45rem;
  border-radius: 9999px;
  padding: .45rem .8rem;
  font-size: .82rem;
  font-weight: 700;
}

.wc26-ad-slot iframe,
.wc26-ad-slot ins,
.wc26-ad-slot img {
  max-width: 100%;
}

.wc26-filter-sticky {
  position: sticky;
  top: 76px;
  z-index: 30;
}

.wc26-map {
  min-height: 420px;
  border-radius: 1rem;
  overflow: hidden;
}

.wc26-map iframe,
.wc26-map #wc26-city-map {
  width: 100%;
  height: 100%;
  min-height: 420px;
  border: 0;
}

.wc26-guide-grid > * {
  height: 100%;
}

.wc26-mobile-sticky-ad {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 50;
  background: rgba(255,255,255,.98);
  box-shadow: 0 -8px 30px rgba(15,23,42,.12);
}

@media (max-width: 767px) {
  .wc26-mobile-scroll {
    overflow-x: auto;
    padding-bottom: .5rem;
    -webkit-overflow-scrolling: touch;
  }

  .wc26-filter-sticky {
    top: 64px;
  }

  body.has-mobile-ad {
    padding-bottom: 90px;
  }
}
