:root {
--primary: #0d6efd;
--secondary: #0dcaf0;
--dark: #0a2e5c;
--light: #f8f9fa;
--accent: #ff6b00;
}
* {
margin: 0;
padding: 0;
box-sizing: border-box;
}
body {
font-family: 'Poppins', sans-serif;
line-height: 1.6;
color: #333;
overflow-x: hidden;
background-color: #f8f9fa;
}
h1, h2, h3, h4 {
font-family: 'Playfair Display', serif;
margin-bottom: 20px;
color: var(--dark);
}
.container {
width: 100%;
max-width: 1200px;
margin: 0 auto;
padding: 0 20px;
}
.btn {
display: inline-block;
background: var(--primary);
color: white;
padding: 12px 28px;
border-radius: 50px;
text-decoration: none;
font-weight: 600;
transition: all 0.3s ease;
border: none;
cursor: pointer;
text-transform: uppercase;
font-size: 14px;
letter-spacing: 1px;
}
.btn:hover {
background: var(--dark);
transform: translateY(-3px);
box-shadow: 0 5px 15px rgba(0,0,0,0.1);
}
.btn-secondary {
background: var(--secondary);
}
.btn-accent {
background: var(--accent);
} header {
position: fixed;
top: 0;
left: 0;
width: 100%;
z-index: 1000;
background: rgba(10, 46, 92, 0.9);
padding: 15px 0;
transition: all 0.3s ease;
}
.header-inner {
display: flex;
justify-content: space-between;
align-items: center;
}
.logo {
font-family: 'Playfair Display', serif;
font-size: 28px;
font-weight: 700;
color: white;
text-decoration: none;
}
.logo span {
color: var(--secondary);
}
nav ul {
display: flex;
list-style: none;
}
nav ul li {
margin-left: 30px;
}
nav ul li a {
color: white;
text-decoration: none;
font-weight: 500;
transition: color 0.3s ease;
}
nav ul li a:hover {
color: var(--secondary);
}
.mobile-menu-btn {
display: none;
background: none;
border: none;
color: white;
font-size: 24px;
cursor: pointer;
} .hero {
height: 100vh;
background: linear-gradient(rgba(10, 46, 92, 0.7), rgba(10, 46, 92, 0.7)), url(https://d3rr2gvhjw0wwy.cloudfront.net/uploads/mandators/75054/cms/575860/2000x2000-0-70-653328a9591a49d744715b86267b7fd3.jpg) no-repeat center center/cover;
display: flex;
align-items: center;
text-align: center;
color: white;
padding-top: 80px;
}
.hero-content {
max-width: 800px;
margin: 0 auto;
}
.hero h1 {
font-size: 3.5rem;
margin-bottom: 20px;
color: white;
animation: fadeInDown 1s ease;
}
.hero p {
font-size: 1.2rem;
margin-bottom: 30px;
animation: fadeInUp 1s ease;
} .about {
padding: 100px 0;
background: white;
}
.about-content {
display: flex;
align-items: center;
gap: 50px;
}
.about-text {
flex: 1;
}
.about-image {
flex: 1;
border-radius: 10px;
overflow: hidden;
box-shadow: 0 10px 30px rgba(0,0,0,0.1);
}
.about-image img {
width: 100%;
height: auto;
display: block;
transition: transform 0.5s ease;
}
.about-image:hover img {
transform: scale(1.05);
} .tours {
padding: 100px 0;
background: var(--light);
}
.section-title {
text-align: center;
margin-bottom: 50px;
}
.section-title h2 {
font-size: 2.5rem;
position: relative;
display: inline-block;
padding-bottom: 15px;
}
.section-title h2::after {
content: '';
position: absolute;
bottom: 0;
left: 50%;
transform: translateX(-50%);
width: 80px;
height: 3px;
background: var(--secondary);
}
.tours-grid {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
gap: 30px;
} .gallery {
padding: 100px 0;
background: white;
}
.gallery-grid {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
gap: 20px;
}
.gallery-item {
height: 250px;
border-radius: 10px;
overflow: hidden;
position: relative;
}
.gallery-item img {
width: 100%;
height: 100%;
object-fit: cover;
transition: transform 0.5s ease;
}
.gallery-item:hover img {
transform: scale(1.1);
}
.gallery-overlay {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: rgba(13, 202, 240, 0.7);
display: flex;
align-items: center;
justify-content: center;
opacity: 0;
transition: opacity 0.3s ease;
}
.gallery-item:hover .gallery-overlay {
opacity: 1;
}
.gallery-overlay i {
color: white;
font-size: 2rem;
} .testimonials {
padding: 100px 0;
background: var(--light);
}
.testimonials-container {
max-width: 800px;
margin: 0 auto;
}
.testimonial {
background: white;
padding: 30px;
border-radius: 10px;
box-shadow: 0 5px 15px rgba(0,0,0,0.05);
margin-bottom: 30px;
position: relative;
}
.testimonial::before {
content: '"';
position: absolute;
top: 10px;
left: 20px;
font-size: 5rem;
color: var(--secondary);
opacity: 0.2;
font-family: serif;
}
.testimonial-content {
position: relative;
z-index: 1;
}
.testimonial-author {
display: flex;
align-items: center;
margin-top: 20px;
}
.author-image {
width: 50px;
height: 50px;
border-radius: 50%;
overflow: hidden;
margin-right: 15px;
}
.author-image img {
width: 100%;
height: 100%;
object-fit: cover;
} .contact {
padding: 100px 0;
background: white;
}
.contact-container {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
gap: 50px;
}
.contact-info {
display: flex;
flex-direction: column;
gap: 30px;
}
.contact-item {
display: flex;
align-items: flex-start;
gap: 15px;
}
.contact-icon {
width: 50px;
height: 50px;
background: var(--light);
border-radius: 50%;
display: flex;
align-items: center;
justify-content: center;
color: var(--primary);
font-size: 1.2rem;
}
.contact-form input,
.contact-form textarea,
.contact-form select {
width: 100%;
padding: 12px 15px;
margin-bottom: 20px;
border: 1px solid #ddd;
border-radius: 5px;
font-family: 'Poppins', sans-serif;
}
.contact-form textarea {
height: 150px;
resize: vertical;
} footer {
background: var(--dark);
color: white;
padding: 70px 0 20px;
}
.footer-content {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
gap: 30px;
margin-bottom: 50px;
}
.footer-column h3 {
color: white;
font-size: 1.5rem;
margin-bottom: 25px;
position: relative;
padding-bottom: 10px;
}
.footer-column h3::after {
content: '';
position: absolute;
bottom: 0;
left: 0;
width: 50px;
height: 2px;
background: var(--secondary);
}
.footer-links {
list-style: none;
}
.footer-links li {
margin-bottom: 10px;
}
.footer-links a {
color: #aaa;
text-decoration: none;
transition: color 0.3s ease;
}
.footer-links a:hover {
color: var(--secondary);
}
.social-links {
display: flex;
gap: 15px;
margin-top: 20px;
}
.social-links a {
display: inline-flex;
align-items: center;
justify-content: center;
width: 40px;
height: 40px;
background: rgba(255,255,255,0.1);
border-radius: 50%;
color: white;
transition: all 0.3s ease;
}
.social-links a:hover {
background: var(--secondary);
transform: translateY(-3px);
}
.copyright {
text-align: center;
padding-top: 20px;
border-top: 1px solid rgba(255,255,255,0.1);
color: #aaa;
font-size: 0.9rem;
} @keyframes fadeInDown {
from {
opacity: 0;
transform: translateY(-20px);
}
to {
opacity: 1;
transform: translateY(0);
}
}
@keyframes fadeInUp {
from {
opacity: 0;
transform: translateY(20px);
}
to {
opacity: 1;
transform: translateY(0);
}
} @media (max-width: 991px) {
.about-content {
flex-direction: column;
}
.hero h1 {
font-size: 2.8rem;
}
}
@media (max-width: 768px) {
.mobile-menu-btn {
display: block;
}
nav {
position: fixed;
top: 80px;
left: -100%;
width: 100%;
height: calc(100vh - 80px);
background: var(--dark);
transition: left 0.3s ease;
padding: 20px;
}
nav.active {
left: 0;
}
nav ul {
flex-direction: column;
}
nav ul li {
margin: 15px 0;
}
.hero h1 {
font-size: 2.2rem;
}
}