:root {
  --bg-dark: #0a1628;
  --bg-card: #1a2332;
  --accent: #ff6b35;
  --accent-glow: #ff8c61;
  --cyan: #00d9ff;
  --text: #e8e8e8;
  --text-dim: #8b9eb8;
  --radius: 16px;
  --shadow: 0 8px 32px rgba(0,217,255,0.15);
}
* { margin: 0; padding: 0; box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  background: var(--bg-dark);
  color: var(--text);
  line-height: 1.6;
  overflow-x: hidden;
}
.c { max-width: 1200px; margin: 0 auto; padding: 0 24px; }

/* Scroll Progress Bar */
.progress-bar {
  position: fixed;
  top: 0;
  left: 0;
  height: 3px;
  background: linear-gradient(90deg, var(--accent), var(--cyan));
  z-index: 1001;
  transition: width 0.1s ease-out;
}

/* Sticky Header */
header {
  position: sticky;
  top: 0;
  background: rgba(10,22,40,0.95);
  backdrop-filter: blur(12px);
  border-bottom: 1px solid rgba(0,217,255,0.2);
  z-index: 1000;
  padding: 16px 0;
}
.header-content { display: flex; justify-content: space-between; align-items: center; }
.logo {
  font-size: 28px;
  font-weight: 900;
  background: linear-gradient(135deg, var(--accent), var(--cyan));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  cursor: pointer;
  text-decoration: none;
}

/* Breadcrumbs */
.breadcrumbs {
  display: flex;
  gap: 8px;
  font-size: 14px;
  color: var(--text-dim);
}
.breadcrumbs a {
  color: var(--text-dim);
  text-decoration: none;
  transition: color 0.3s;
}
.breadcrumbs a:hover { color: var(--cyan); }
.breadcrumbs span { color: var(--accent); }

/* Hero with Parallax */
.hero {
  position: relative;
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  padding: 120px 0 80px;
}
.hero-bg {
  position: absolute;
  inset: 0;
  background: url('/assets/img/41bee1e5-c0c2-4d21-984b-e58b7e450084e-16582868.webp') center/cover;
  opacity: 0.3;
  transform: translateZ(0);
}
.hero-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(10,22,40,0.7) 0%, rgba(10,22,40,0.95) 100%);
}
.hero-content {
  position: relative;
  z-index: 2;
  text-align: center;
  max-width: 900px;
}
.hero-badge {
  display: inline-block;
  padding: 8px 20px;
  background: rgba(255,107,53,0.15);
  border: 1px solid var(--accent);
  border-radius: 50px;
  font-size: 14px;
  font-weight: 600;
  color: var(--accent);
  margin-bottom: 24px;
  animation: pulse 2s ease-in-out infinite;
}
@keyframes pulse {
  0%, 100% { opacity: 1; }
  50% { opacity: 0.7; }
}
.hero h1 {
  font-size: clamp(40px, 8vw, 72px);
  font-weight: 900;
  line-height: 1.1;
  margin-bottom: 24px;
  background: linear-gradient(135deg, #fff 0%, var(--cyan) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  animation: fadeInUp 1s ease-out;
}
.hero p {
  font-size: clamp(18px, 3vw, 24px);
  color: var(--text-dim);
  margin-bottom: 40px;
  animation: fadeInUp 1s ease-out 0.2s backwards;
}
.hero-cta {
  display: flex;
  gap: 16px;
  justify-content: center;
  flex-wrap: wrap;
  animation: fadeInUp 1s ease-out 0.4s backwards;
}
.btn {
  padding: 18px 40px;
  border-radius: 50px;
  font-size: 18px;
  font-weight: 700;
  text-decoration: none;
  border: none;
  cursor: pointer;
  transition: all 0.3s;
  display: inline-flex;
  align-items: center;
  gap: 8px;
}
.btn-primary {
  background: linear-gradient(135deg, var(--accent), var(--accent-glow));
  color: #fff;
  box-shadow: 0 8px 24px rgba(255,107,53,0.4);
}
.btn-primary:hover {
  transform: translateY(-3px);
  box-shadow: 0 12px 32px rgba(255,107,53,0.6);
}
.btn-secondary {
  background: transparent;
  color: var(--cyan);
  border: 2px solid var(--cyan);
}
.btn-secondary:hover {
  background: var(--cyan);
  color: var(--bg-dark);
}

@keyframes fadeInUp {
  from { opacity: 0; transform: translateY(30px); }
  to { opacity: 1; transform: translateY(0); }
}

/* Scroll indicator */
.scroll-indicator {
  position: absolute;
  bottom: 40px;
  left: 50%;
  transform: translateX(-50%);
  animation: bounce 2s ease-in-out infinite;
}
.scroll-indicator::after {
  content: '↓';
  font-size: 32px;
  color: var(--cyan);
}
@keyframes bounce {
  0%, 100% { transform: translateX(-50%) translateY(0); }
  50% { transform: translateX(-50%) translateY(10px); }
}
.topnav{display:flex;gap:22px;align-items:center}.topnav a{color:var(--text-dim);text-decoration:none;font-size:15px;font-weight:600;transition:color .3s}.topnav a:hover{color:var(--cyan)}.nav-cta{background:var(--accent);color:#fff;padding:10px 20px;border-radius:50px}.top-tel{color:var(--cyan);text-decoration:none;font-weight:700;font-size:15px;white-space:nowrap}.burger{display:none;background:none;border:none;color:var(--cyan);font-size:28px;cursor:pointer;line-height:1}.mnav{display:none;flex-direction:column;background:var(--bg-card);border-top:1px solid rgba(0,217,255,0.2);padding:8px 24px 16px}.mnav.open{display:flex}.mnav a{padding:12px 0;color:var(--text);text-decoration:none;font-weight:600;border-bottom:1px solid rgba(255,255,255,0.06)}.mnav a:last-child{border-bottom:none;color:var(--cyan)}@media(max-width:960px){.topnav,.top-tel{display:none}.burger{display:block}}
.countdown-banner{margin:28px auto 0;display:inline-flex;align-items:center;gap:12px;padding:12px 24px;background:rgba(255,107,53,0.12);border:1px solid var(--accent);border-radius:50px;flex-wrap:wrap;justify-content:center}
    .cd-dot{width:10px;height:10px;border-radius:50%;background:var(--accent);animation:pulse 1.5s infinite}
    .cd-text{font-size:15px;color:var(--text)}
    .cd-text b{color:var(--accent)}
    .cd-timer{font-family:ui-monospace,monospace;font-size:15px;font-weight:700;color:var(--cyan);background:rgba(0,217,255,0.1);padding:4px 12px;border-radius:8px}
.custom-wide{display:flex;gap:24px;align-items:center;margin-top:24px;padding:28px;background:linear-gradient(135deg,rgba(0,217,255,0.08),transparent);border:2px dashed var(--cyan);border-radius:var(--radius)}
.cw-icon{font-size:64px;flex:0 0 auto;line-height:1}
.cw-body{flex:1}
.cw-body h3{font-size:22px;font-weight:900;margin-bottom:8px;background:linear-gradient(135deg,var(--accent),var(--cyan));-webkit-background-clip:text;-webkit-text-fill-color:transparent}
.cw-body p{color:var(--text-dim);font-size:15px;line-height:1.55;margin-bottom:14px}
.cw-row{display:flex;gap:16px;align-items:center;flex-wrap:wrap}
@media(max-width:640px){.custom-wide{flex-direction:column;text-align:center;padding:22px 16px;gap:14px}.cw-icon{font-size:48px}.cw-row{justify-content:center}}
.rb-img{flex:0 0 auto;width:400px;height:267px;border-radius:16px;overflow:hidden;box-shadow:0 12px 32px rgba(0,0,0,.4)}
.rb-img img{width:100%;height:100%;object-fit:cover;display:block}
@media(max-width:640px){.rb-img{width:100%;height:auto;aspect-ratio:400/267;order:-1}}
.raft-banner{padding:24px 0}
.rb-inner{display:flex;gap:24px;align-items:center;padding:28px;background:linear-gradient(135deg,rgba(255,107,53,.08),rgba(0,217,255,.08));border:1px solid rgba(0,217,255,.25);border-radius:20px;position:relative;overflow:hidden}
.rb-inner::before{content:"";position:absolute;inset:0;background:radial-gradient(400px 200px at 0% 0%,rgba(255,107,53,.15),transparent 60%),radial-gradient(400px 200px at 100% 100%,rgba(0,217,255,.15),transparent 60%);pointer-events:none}

.rb-body{flex:1 1 auto;position:relative}
.rb-badge{display:inline-block;padding:4px 12px;background:var(--accent);color:#fff;border-radius:50px;font-size:11px;font-weight:800;letter-spacing:.5px;text-transform:uppercase;margin-bottom:10px}
.rb-body h3{font-size:22px;font-weight:900;color:#fff;margin-bottom:8px;line-height:1.25}
.rb-body p{color:var(--text-dim);font-size:15px;line-height:1.55;margin-bottom:14px}
.rb-btn{display:inline-block;padding:12px 24px;background:linear-gradient(135deg,var(--accent),var(--accent-glow));color:#fff;text-decoration:none;border-radius:50px;font-weight:800;font-size:15px;box-shadow:0 6px 20px rgba(255,107,53,.35);transition:transform .2s}
.rb-btn:hover{transform:translateY(-2px)}
@media(max-width:640px){
.rb-inner{flex-direction:column;text-align:center;padding:22px 18px;gap:16px}

.rb-body h3{font-size:19px}
.rb-body p{font-size:14px}
}
/* Stats */
.stat-card {
  padding: 32px 16px;
  background: var(--bg-card);
  border-radius: var(--radius);
  border: 1px solid rgba(0,217,255,0.2);
  transition: all 0.3s;
}
.stat-card:hover {
  transform: translateY(-8px);
  border-color: var(--cyan);
  box-shadow: var(--shadow);
}

/* Route Cards */
.route-card {
  background: var(--bg-card);
  border-radius: var(--radius);
  overflow: hidden;
  border: 1px solid rgba(255,255,255,0.1);
  transition: all 0.4s;
  cursor: pointer;
}
.route-card:hover {
  transform: translateY(-12px) rotateX(2deg);
  border-color: var(--accent);
  box-shadow: 0 20px 60px rgba(255,107,53,0.3);
}
.route-card-img {
  position: relative;
  height: 240px;
  overflow: hidden;
}
.route-card-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.6s;
}
.route-card:hover .route-card-img img {
  transform: scale(1.1);
}
.route-card-overlay {
  position: absolute;
  top: 16px;
  right: 16px;
}
.route-badge {
  padding: 6px 16px;
  background: rgba(10,22,40,0.9);
  border: 1px solid var(--cyan);
  border-radius: 50px;
  font-size: 12px;
  font-weight: 700;
  color: var(--cyan);
  text-transform: uppercase;
}
.route-card-content {
  padding: 24px;
}
.route-card-content h3 {
  font-size: 24px;
  font-weight: 800;
  margin-bottom: 12px;
  color: #fff;
}
.route-card-content p {
  color: var(--text-dim);
  font-size: 14px;
  margin-bottom: 16px;
  line-height: 1.5;
}
.route-meta {
  display: flex;
  gap: 16px;
  font-size: 13px;
  color: var(--text-dim);
  margin-bottom: 16px;
  padding-top: 16px;
  border-top: 1px solid rgba(255,255,255,0.1);
}
.route-price {
  font-size: 20px;
  font-weight: 800;
  color: var(--accent);
}
input[type="range"]::-webkit-slider-thumb {
  -webkit-appearance: none;
  appearance: none;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: var(--accent);
  cursor: pointer;
  box-shadow: 0 0 12px rgba(255,107,53,0.6);
}
input[type="range"]::-moz-range-thumb {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: var(--accent);
  cursor: pointer;
  border: none;
  box-shadow: 0 0 12px rgba(255,107,53,0.6);
}
.radio-card {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 16px;
  background: rgba(255,255,255,0.05);
  border: 2px solid rgba(255,255,255,0.1);
  border-radius: 12px;
  cursor: pointer;
  transition: all 0.3s;
  font-weight: 600;
}
.radio-card:hover {
  border-color: var(--cyan);
  background: rgba(0,217,255,0.1);
}
.radio-card input[type="radio"] {
  display: none;
}
.radio-card input[type="radio"]:checked + span {
  color: var(--accent);
}
.radio-card:has(input[type="radio"]:checked) {
  border-color: var(--accent);
  background: rgba(255,107,53,0.15);
}
/* Timeline */
.timeline {
  position: relative;
  max-width: 900px;
  margin: 0 auto;
}
.timeline::before {
  content: '';
  position: absolute;
  left: 50%;
  top: 0;
  bottom: 0;
  width: 2px;
  background: linear-gradient(180deg, var(--cyan), var(--accent));
  transform: translateX(-50%);
}
.timeline-item {
  position: relative;
  margin-bottom: 48px;
  display: flex;
  align-items: center;
}
.timeline-item:nth-child(odd) {
  flex-direction: row-reverse;
}
.timeline-marker {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  width: 20px;
  height: 20px;
  background: var(--accent);
  border: 4px solid var(--bg-dark);
  border-radius: 50%;
  z-index: 2;
  box-shadow: 0 0 20px rgba(255,107,53,0.6);
}
.timeline-content {
  width: 45%;
  background: var(--bg-card);
  padding: 24px;
  border-radius: var(--radius);
  border: 1px solid rgba(0,217,255,0.2);
  transition: all 0.3s;
}
.timeline-content:hover {
  border-color: var(--accent);
  transform: translateY(-4px);
  box-shadow: var(--shadow);
}
.timeline-time {
  font-size: 14px;
  color: var(--cyan);
  font-weight: 700;
  margin-bottom: 8px;
}
.timeline-content h3 {
  font-size: 20px;
  font-weight: 800;
  margin-bottom: 8px;
  color: #fff;
}
.timeline-content p {
  color: var(--text-dim);
  font-size: 14px;
  line-height: 1.6;
}

/* Feature Cards */
.feature-card {
  background: var(--bg-card);
  padding: 32px;
  border-radius: var(--radius);
  border: 1px solid rgba(255,255,255,0.1);
  transition: all 0.3s;
  text-align: center;
}
.feature-card:hover {
  transform: translateY(-8px);
  border-color: var(--cyan);
  box-shadow: var(--shadow);
}
.feature-icon {
  font-size: 64px;
  margin-bottom: 16px;
}
.feature-card h3 {
  font-size: 20px;
  font-weight: 800;
  margin-bottom: 12px;
  color: var(--accent);
}
.feature-card p {
  color: var(--text-dim);
  font-size: 14px;
  line-height: 1.6;
}

@media (max-width: 768px) {
  .timeline::before {
    left: 20px;
  }
  .timeline-item {
    flex-direction: row !important;
    padding-left: 60px;
  }
  .timeline-marker {
    left: 20px;
  }
  .timeline-content {
    width: 100%;
  }
}
.river-compare{width:100%;border-collapse:collapse;background:var(--bg-card);border-radius:var(--radius);overflow:hidden}
.river-compare thead{background:linear-gradient(135deg,var(--accent),var(--accent-glow))}
.river-compare th{padding:16px 12px;text-align:left;color:#fff;font-weight:700;font-size:14px;text-transform:uppercase;letter-spacing:0.5px}
.river-compare td{padding:16px 12px;border-bottom:1px solid rgba(255,255,255,0.1);color:var(--text);font-size:15px}
.river-compare tbody tr{transition:all 0.3s}
.river-compare tbody tr:hover{background:rgba(0,217,255,0.08);transform:scale(1.01)}
.river-compare tbody tr:hover td{color:var(--cyan)}
.river-compare .price{font-weight:900;color:var(--accent);font-size:18px}
.diff-easy{background:rgba(0,217,255,0.15);color:var(--cyan);padding:4px 12px;border-radius:12px;font-size:12px;font-weight:700}
.diff-medium{background:rgba(255,152,0,0.15);color:#ffb74d;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:700}
.diff-hard{background:rgba(255,107,53,0.15);color:var(--accent);padding:4px 12px;border-radius:12px;font-size:12px;font-weight:700}
.custom-row{background:linear-gradient(135deg,rgba(0,217,255,0.05),transparent);border:2px dashed var(--cyan)}
@media(max-width:768px){.river-compare{font-size:13px}.river-compare th,.river-compare td{padding:10px 8px}}
.quiz-container{max-width:700px;margin:0 auto;background:var(--bg-card);border-radius:var(--radius);padding:40px;border:2px solid rgba(0,217,255,0.2)}
.quiz-progress{height:6px;background:rgba(255,255,255,0.1);border-radius:3px;overflow:hidden;margin-bottom:40px}
.quiz-progress-fill{height:100%;background:linear-gradient(90deg,var(--accent),var(--cyan));width:25%;transition:width 0.5s ease}
.quiz-step{display:none;animation:quizFadeIn 0.5s ease}
.quiz-step.active{display:block}
.quiz-question{font-size:24px;font-weight:800;margin-bottom:24px;color:#fff;text-align:center}
.quiz-options{display:grid;gap:12px}
.quiz-option{background:rgba(255,255,255,0.05);border:2px solid rgba(255,255,255,0.1);border-radius:12px;padding:16px 20px;color:var(--text);font-size:16px;font-weight:600;cursor:pointer;transition:all 0.3s;text-align:left}
.quiz-option:hover{background:rgba(0,217,255,0.1);border-color:var(--cyan);transform:translateX(8px)}
.quiz-result{display:none;animation:quizFadeIn 0.5s ease}
.quiz-result.active{display:block}
.quiz-result-card{text-align:center}
.quiz-result-badge{display:inline-block;padding:8px 20px;background:rgba(255,107,53,0.15);border:1px solid var(--accent);border-radius:50px;font-size:14px;font-weight:700;color:var(--accent);margin-bottom:24px}
.quiz-result-river{font-size:48px;font-weight:900;margin-bottom:16px;background:linear-gradient(135deg,var(--accent),var(--cyan));-webkit-background-clip:text;-webkit-text-fill-color:transparent}
.quiz-result-desc{font-size:18px;color:var(--text-dim);margin-bottom:24px;line-height:1.6}
.quiz-result-price{font-size:36px;font-weight:900;color:var(--accent);margin-bottom:8px}
.quiz-restart{margin-top:16px;background:transparent;border:none;color:var(--cyan);font-size:14px;cursor:pointer;text-decoration:underline}
@keyframes quizFadeIn{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
.chk-col{background:var(--bg-card);border:1px solid rgba(255,255,255,0.1);border-radius:var(--radius);padding:28px;transition:all .3s}
.chk-col:hover{border-color:var(--cyan);transform:translateY(-6px);box-shadow:var(--shadow)}
.chk-col h3{font-size:20px;font-weight:800;color:var(--accent);margin-bottom:18px}
.chk-col ul{list-style:none}
.chk-col li{padding:8px 0 8px 28px;position:relative;color:var(--text);font-size:15px;border-bottom:1px solid rgba(255,255,255,0.06)}
.chk-col li:last-child{border-bottom:none}
.chk-col li::before{content:'✓';position:absolute;left:0;color:var(--cyan);font-weight:900}
.seo-text{max-width:900px;margin:0 auto;color:var(--text-dim);line-height:1.8;font-size:16px}
.seo-text h2{color:#fff;font-size:clamp(28px,4vw,40px);font-weight:900;margin-bottom:24px}
.seo-text h3{color:var(--cyan);font-size:22px;font-weight:800;margin:36px 0 12px}
.seo-text p{margin-bottom:16px}
.seo-text a{color:var(--accent);text-decoration:none;border-bottom:1px solid rgba(255,107,53,0.4)}
.seo-text a:hover{border-bottom-color:var(--accent)}
.geo-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;margin-top:24px}
.geo-card{background:var(--bg-card);border:1px solid rgba(255,255,255,0.1);border-radius:12px;padding:20px;transition:all .3s}
.geo-card:hover{border-color:var(--cyan);transform:translateY(-4px)}
.geo-card b{color:#fff;font-size:18px}
.geo-card p{font-size:14px;margin:8px 0}
.geo-card a{display:inline-block;font-size:14px;border-bottom:none}
.faq-item{background:var(--bg-card);border-radius:var(--radius);margin-bottom:16px;border:1px solid rgba(255,255,255,0.1);overflow:hidden;transition:all 0.3s}
.faq-item:hover{border-color:var(--cyan)}
.faq-q{padding:24px;cursor:pointer;font-weight:700;font-size:18px;display:flex;justify-content:space-between;align-items:center;color:#fff}
.faq-icon{font-size:24px;color:var(--accent);transition:transform 0.3s}
.faq-item.open .faq-icon{transform:rotate(45deg)}
.faq-a{max-height:0;overflow:hidden;transition:max-height 0.4s,padding 0.4s;padding:0 24px}
.faq-item.open .faq-a{max-height:500px;padding:0 24px 24px}
.faq-a p{color:var(--text-dim);line-height:1.7}
.mcta{display:none;position:fixed;bottom:0;left:0;right:0;background:var(--bg-card);border-top:2px solid var(--accent);padding:12px;gap:12px;z-index:1000;box-shadow:0 -4px 24px rgba(0,0,0,0.5)}
.mcta a{flex:1;text-align:center;padding:16px;border-radius:12px;text-decoration:none;font-weight:700;color:#fff;font-size:16px}
.mcta .call{background:var(--cyan)}
.mcta .form-btn{background:var(--accent)}
@media(max-width:768px){.mcta{display:flex}body{padding-bottom:80px}}
input:focus,textarea:focus{outline:none;border-color:var(--accent)!important;box-shadow:0 0 0 3px rgba(255,107,53,0.2)}
.anchor-bar{display:none;overflow-x:auto;gap:8px;padding:10px 16px;background:linear-gradient(90deg,rgba(255,107,53,.12),rgba(0,217,255,.12));border-top:1px solid rgba(255,255,255,.1);border-bottom:1px solid rgba(255,255,255,.1);-webkit-overflow-scrolling:touch;scrollbar-width:none}
.anchor-bar::-webkit-scrollbar{display:none}
.anchor-bar a{flex:0 0 auto;padding:9px 16px;background:rgba(10,22,40,.92);border:1px solid rgba(255,255,255,.18);border-radius:50px;color:#fff;font-size:13px;font-weight:700;text-decoration:none;white-space:nowrap;transition:all .25s;backdrop-filter:blur(6px)}
.anchor-bar a:active{background:linear-gradient(135deg,var(--accent),var(--cyan));color:#fff;border-color:transparent;transform:scale(.96)}
#toTop{position:fixed;right:28px;bottom:28px;width:52px;height:52px;border-radius:50%;background:var(--accent);color:#fff;font-size:22px;border:none;cursor:pointer;opacity:0;visibility:hidden;transform:translateY(12px);transition:all .3s;z-index:999;box-shadow:0 8px 24px rgba(255,107,53,.4)}
#toTop.show{opacity:1;visibility:visible;transform:none}
#toTop:hover{background:var(--accent-glow)}
@media(max-width:960px){.anchor-bar{display:flex}#toTop{display:none}}
@media(max-width:768px){
.c{padding:0 16px}
header{padding:10px 0!important}
.hero{padding:72px 0 56px;min-height:auto}
.hero h1{font-size:34px}
.hero p{font-size:17px}
.hero-cta{flex-direction:column;align-items:stretch}
.hero-cta .btn{width:100%;justify-content:center;padding:16px 20px;font-size:16px}
.countdown-banner{padding:10px 16px;gap:8px;margin-top:20px}
.cd-text{font-size:13px}
.cd-timer{font-size:13px;padding:4px 10px}
section{padding:56px 0!important}
section h2{font-size:26px!important;margin-bottom:12px!important}
section .c>p{margin-bottom:32px!important;font-size:16px!important}
.stat-card>div:first-child{font-size:40px!important}
.stat-card{padding:20px 12px!important}
.route-card-img{height:180px!important}
.route-card-img img{height:180px!important}
#calculator .c>div{padding:24px 16px!important}
#zayavka .c>div{padding:28px 18px!important}
.quiz-container{padding:24px 14px!important}
.quiz-question{font-size:19px!important}
.quiz-option{padding:14px 16px!important;font-size:15px!important}
.quiz-result-river{font-size:34px!important}
.quiz-result-price{font-size:28px!important}
.feature-icon{font-size:48px!important}
.feature-card{padding:24px 18px!important}
.chk-col{padding:20px!important}
.faq-q{font-size:16px!important;padding:18px!important}
.seo-text iframe{height:260px!important}
footer{padding:40px 0 16px!important}
.river-compare thead{display:none}
.river-compare,.river-compare tbody{display:block;width:100%}
.river-compare tr{display:block;background:var(--bg-card);border:1px solid rgba(255,255,255,.1);border-radius:12px;margin-bottom:14px;padding:14px}
.river-compare td{display:flex;justify-content:space-between;align-items:center;gap:12px;border:none;padding:7px 0;font-size:14px;text-align:right}
.river-compare td::before{content:attr(data-label);color:var(--text-dim);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.4px;text-align:left;flex:0 0 auto}
.river-compare td:first-child{justify-content:flex-start}
.river-compare td:first-child::before{display:none}
.river-compare td:first-child strong{font-size:18px;color:var(--cyan)}
.river-compare tr.custom-row td[colspan]{display:block;text-align:left;padding:10px 0}
}
header{transition:padding .3s}


@media(max-width:960px){header .logo{font-size:20px!important;white-space:nowrap}}
.reviews-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px;max-width:1100px;margin:0 auto;align-items:start}
.review-card{background:var(--bg-card);border:1px solid rgba(255,255,255,0.1);border-radius:var(--radius);padding:22px;transition:all 0.3s}
.review-card:hover{border-color:var(--cyan);transform:translateY(-4px);box-shadow:var(--shadow)}
.review-header{display:flex;gap:12px;align-items:center;margin-bottom:12px}
.review-avatar{width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,var(--accent),var(--accent-glow));display:flex;align-items:center;justify-content:center;font-weight:900;font-size:18px;color:#fff;flex-shrink:0}
.review-meta{flex:1}
.review-name{font-size:16px;font-weight:700;color:#fff;margin-bottom:4px}
.review-date{font-size:13px;color:var(--text-dim)}
.review-stars{font-size:16px;color:var(--accent);margin-bottom:8px;letter-spacing:2px}
.review-excerpt{color:var(--text);font-size:15px;line-height:1.55;margin-bottom:12px}
.review-expand{background:transparent;border:1px solid var(--cyan);color:var(--cyan);padding:8px 16px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all 0.3s;align-self:flex-start}
.review-expand:hover{background:var(--cyan);color:var(--bg-dark)}
.review-full{display:none;margin-top:12px;padding-top:12px;border-top:1px solid rgba(255,255,255,0.1);color:var(--text-dim);font-size:14px;line-height:1.6}
.review-card.expanded .review-full{display:block}
.review-card.expanded .review-expand{display:none}
@media(max-width:768px){.reviews-grid{grid-template-columns:1fr}.review-card{padding:20px}}
#reviews{padding:64px 0!important}@media(max-width:768px){#reviews{padding:40px 0!important}.reviews-grid{grid-template-columns:1fr}}
.pb-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;max-width:900px;margin:0 auto 32px}
.pb-item{display:flex;gap:16px;align-items:flex-start;padding:22px;background:var(--bg-card);border:1px solid rgba(255,255,255,0.1);border-radius:var(--radius);transition:all .3s}
.pb-item:hover{border-color:var(--cyan);transform:translateY(-3px)}
.pb-icon{font-size:36px;flex-shrink:0;line-height:1}
.pb-body{flex:1}
.pb-body h3{font-size:16px;font-weight:800;color:#fff;margin-bottom:6px}
.pb-body p{font-size:13px;color:var(--text-dim);line-height:1.5;margin:0}
.pb-price{font-size:20px;font-weight:900;color:var(--cyan);white-space:nowrap;flex-shrink:0}
.pb-total{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;padding:22px 28px;background:linear-gradient(135deg,rgba(255,107,53,0.15),rgba(0,217,255,0.15));border:2px solid var(--accent);border-radius:var(--radius);margin-top:8px}
.pb-total-label{font-size:18px;font-weight:800;color:#fff}
.pb-total-price{font-size:32px;font-weight:900;color:var(--accent)}
.pb-compare{display:grid;grid-template-columns:1fr 1fr;gap:24px;max-width:900px;margin:48px auto 0}
.pb-vs-them,.pb-vs-us{padding:28px;border-radius:var(--radius);position:relative}
.pb-vs-them{background:rgba(255,255,255,0.03);border:1px dashed rgba(255,255,255,0.15)}
.pb-vs-us{background:linear-gradient(135deg,rgba(255,107,53,0.1),rgba(0,217,255,0.08));border:2px solid var(--accent)}
.pb-vs-label{font-size:14px;font-weight:800;text-transform:uppercase;letter-spacing:1px;color:var(--text-dim);margin-bottom:16px}
.pb-vs-list{display:flex;flex-direction:column;gap:8px;font-size:14px;color:var(--text-dim);margin-bottom:20px}
.pb-vs-list span{padding-left:20px;position:relative}
.pb-vs-list span::before{content:"✗";position:absolute;left:0;color:rgba(255,107,53,0.6)}
.pb-vs-price{font-size:28px;font-weight:900;color:rgba(255,107,53,0.5);text-decoration:line-through}
.pb-vs-price-big{font-size:44px;font-weight:900;color:var(--accent);line-height:1;margin-bottom:8px}
.pb-vs-note{font-size:15px;color:var(--text);line-height:1.5}
@media(max-width:768px){
.pb-grid{grid-template-columns:1fr}
.pb-compare{grid-template-columns:1fr}
.pb-icon{font-size:30px}
.pb-total{flex-direction:column;text-align:center;gap:8px}
.pb-total-price{font-size:28px}
.pb-vs-price-big{font-size:36px}
}
.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;max-width:1200px;margin:0 auto}
.gallery-item{position:relative;aspect-ratio:1;overflow:hidden;border-radius:12px;cursor:pointer;background:var(--bg-card)}
.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .4s;display:block}
.gallery-item:hover img{transform:scale(1.08)}
.gallery-item::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 60%,rgba(0,0,0,.4));opacity:0;transition:opacity .3s;pointer-events:none}
.gallery-item:hover::after{opacity:1}
.lightbox{position:fixed;inset:0;background:rgba(0,0,0,.95);display:none;align-items:center;justify-content:center;z-index:9999;padding:20px}
.lightbox.open{display:flex}
.lb-content{max-width:90vw;max-height:90vh;position:relative}
.lb-content img{max-width:100%;max-height:85vh;object-fit:contain;border-radius:8px}
.lb-close,.lb-prev,.lb-next{position:absolute;background:rgba(255,255,255,.1);border:none;color:#fff;font-size:28px;width:48px;height:48px;border-radius:50%;cursor:pointer;transition:all .2s;backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center}
.lb-close:hover,.lb-prev:hover,.lb-next:hover{background:rgba(255,107,53,.8)}
.lb-close{top:20px;right:20px}
.lb-prev{left:20px;top:50%;transform:translateY(-50%)}
.lb-next{right:20px;top:50%;transform:translateY(-50%)}
.lb-counter{position:absolute;bottom:20px;left:50%;transform:translateX(-50%);background:rgba(0,0,0,.7);color:#fff;padding:8px 16px;border-radius:50px;font-size:14px;font-weight:600}
@media(max-width:768px){
.gallery-grid{grid-template-columns:repeat(2,1fr);gap:8px}
.lb-prev,.lb-next{width:40px;height:40px;font-size:24px}
.lb-prev{left:8px}
.lb-next{right:8px}
.lb-close{top:12px;right:12px;width:40px;height:40px}
}
.countdown-banner{display:inline-flex;align-items:center;gap:16px;margin:24px auto 0;padding:12px 20px;background:linear-gradient(135deg,rgba(255,107,53,.1),rgba(0,217,255,.08));border:1px solid rgba(255,107,53,.4);border-radius:16px;flex-wrap:wrap;justify-content:center}
.cd-date-block{display:flex;flex-direction:column;align-items:center;line-height:1.05}
.cd-day{font-size:22px;font-weight:900;color:var(--accent)}
.cd-year{font-size:11px;color:var(--text-dim);font-weight:700}
.cd-divider{width:1px;height:32px;background:rgba(255,255,255,.15)}
.cd-info{display:flex;flex-direction:column;gap:3px;text-align:left}
.cd-line{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--text);font-weight:600}
.cd-dot{width:8px;height:8px;border-radius:50%;background:var(--accent);animation:pulse 1.5s infinite;flex-shrink:0}
.cd-seats{font-size:13px;color:var(--text-dim)}
.cd-seats b{color:var(--accent)}
.cd-timer{font-family:ui-monospace,monospace;font-size:13px;font-weight:700;color:var(--cyan);background:rgba(0,217,255,.1);padding:6px 12px;border-radius:10px}
@media(max-width:768px){
.countdown-banner{flex-direction:row;width:auto;gap:10px;padding:10px 14px;margin-top:18px;border-radius:14px}
.cd-day{font-size:18px}
.cd-divider{height:26px}
.cd-line{font-size:12px}
.cd-seats{font-size:12px}
.cd-timer{font-size:11px;padding:5px 9px}
.cd-dot{display:inline-block}
}
html{scroll-behavior:smooth}
#routes,#calculator,#price,#reviews,#gallery,#pack,#safety,#faq,#zayavka{scroll-margin-top:90px}
@media(max-width:960px){#routes,#calculator,#price,#reviews,#gallery,#pack,#safety,#faq,#zayavka{scroll-margin-top:130px}}
details.faq-item .faq-a{max-height:none!important}details.faq-item[open] .faq-a{padding:0 24px 24px}details.faq-item summary::-webkit-details-marker{display:none}details.faq-item summary{list-style:none}details.faq-item[open] .faq-icon{transform:rotate(45deg)}
