/* Voyages Page Styles (extracted from inline) */

.voyages-page { padding:20px; max-width:1200px; margin:0 auto; }

.hero-section { position:relative; text-align:center; margin-bottom:40px; padding:80px 20px; background:#000; color:#fff; border-radius:15px; overflow:hidden; }
.hero-carousel { position:absolute; inset:0; z-index:0; }
.hero-slide { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; opacity:0; transition:opacity 0.8s ease; }
.hero-slide.active { opacity:1; }
.hero-overlay { position:absolute; inset:0; background:linear-gradient(rgba(0,0,0,0.45), rgba(0,0,0,0.35)); z-index:1; }
.hero-section h1, .hero-section p { position:relative; z-index:2; }
.hero-section h1 { font-size:2.5rem; margin-bottom:20px; }
.hero-section p { font-size:1.2rem; line-height:1.6; }

.voyage-info { display:grid; grid-template-columns:repeat(auto-fit, minmax(250px,1fr)); gap:20px; margin:40px 0; }
.info-badge { background:#fff; padding:20px; border-radius:10px; text-align:center; box-shadow:0 4px 15px rgba(0,0,0,0.1); border:2px solid var(--primary-light); }
.info-badge i { font-size:2rem; color:var(--primary-medium); margin-bottom:10px; }
.info-badge h3 { color:var(--primary-dark); margin-bottom:10px; }

.photo-gallery { display:grid; grid-template-columns:repeat(auto-fit, minmax(300px,1fr)); gap:20px; margin:40px 0; }
.photo-gallery img { width:100%; height:250px; object-fit:cover; border-radius:10px; box-shadow:0 4px 15px rgba(0,0,0,0.1); }

.programme-section { background:#fff; padding:40px; border-radius:15px; margin:40px 0; box-shadow:0 4px 15px rgba(0,0,0,0.1); }
.programme-section h2 { color:var(--primary-dark); margin-bottom:30px; text-align:center; font-size:2rem; }

.inclusions-grid { display:grid; grid-template-columns:repeat(auto-fit, minmax(250px,1fr)); gap:20px; margin:30px 0; }
.inclusion-item { display:flex; align-items:center; gap:15px; padding:15px; background:#f8f9fa; border-radius:8px; }
.inclusion-item i { font-size:1.5rem; color:var(--primary-medium); }

.important-info { background:#e3f2fd; padding:30px; border-radius:15px; margin:40px 0; }
.important-info h3 { color:var(--primary-dark); margin-bottom:20px; text-align:center; }
.info-cards { display:grid; grid-template-columns:repeat(auto-fit, minmax(300px,1fr)); gap:20px; margin-top:20px; }
.info-card { background:#fff; padding:20px; border-radius:10px; text-align:center; box-shadow:0 2px 10px rgba(0,0,0,0.1); }
.info-card i { font-size:2rem; color:var(--primary-medium); margin-bottom:15px; }
.info-card h4 { color:var(--primary-dark); margin-bottom:10px; }

.cta-section { text-align:center; margin:40px 0; padding:40px 20px; background:#f8f9fa; border-radius:15px; }
.cta-section h3 { margin-bottom:20px; color:var(--primary-dark); }
.cta-section p { margin-bottom:30px; font-size:1.1rem; line-height:1.6; }
.cta-link { color:var(--primary-medium); text-decoration:none; font-weight:600; border-bottom:2px solid var(--primary-light); transition:all .3s ease; }
.cta-link:hover { color:var(--primary-dark); border-bottom-color:var(--primary-medium); }
.contact-btn { display:inline-block; background:linear-gradient(135deg, var(--primary-medium), var(--primary-light)); color:#fff; padding:15px 30px; border-radius:25px; text-decoration:none; font-weight:600; font-size:1.1rem; transition:all .3s ease; }
.contact-btn:hover { transform:translateY(-2px); box-shadow:0 8px 25px rgba(0,0,0,0.2); }
.contact-btn i { margin-right:10px; }

/* Carousel */
.voyage-carousel { position:relative; margin:30px 0; border-radius:12px; overflow:hidden; box-shadow:0 10px 30px rgba(0,0,0,0.15); }
.carousel-track { display:flex; width:100%; transition:transform 0.6s ease; }
.carousel-slide { min-width:100%; height:420px; }
.carousel-slide img { width:100%; height:100%; object-fit:cover; display:block; }
.carousel-btn { position:absolute; top:50%; transform:translateY(-50%); background:rgba(0,0,0,0.4); color:#fff; border:none; width:40px; height:40px; border-radius:20px; cursor:pointer; display:flex; align-items:center; justify-content:center; transition:background .2s; }
.carousel-btn:hover { background:rgba(0,0,0,0.6); }
.carousel-btn.prev { left:10px; }
.carousel-btn.next { right:10px; }

@media (max-width:768px){
	.carousel-slide { height:260px; }
}

@media (max-width:768px) { 
	.hero-section h1 { font-size:1.8rem; }
	.programme-section { padding:20px; }
	.voyages-page { padding:10px; }
}
