@font-face {
	font-family:'Trojan Pro';
    src:url('../Assets/Fonts/TrajanPro3Regular.woff2') format('woff2'),
         url('./Assets/Fonts/TrajanPro3Regular.woff2') format('woff');
    font-weight:normal;
	font-style:normal;
}
@font-face {
	font-family:'PTSans';
    src:url('../Assets/Fonts/PTSans-Caption.woff') format('woff2'),
         url('../Assets/Fonts/PTSans-Caption.woff2') format('woff');
    font-weight:normal;
	font-style:normal;
}
html, body {
	margin:0;
	padding:0;
	font-family:'PTSans',sans-serif;
	color:#fff;
	background-color:#000;
	overflow-x:hidden;
    width: 100%;
    height: 100%;   
}
.hero {
	position:relative;
	height:100vh;
	background:linear-gradient(rgba(0,0,0,0.5),rgba(0,0,0,0.5)),url('../Assets/Main/Background.jpg') no-repeat center center/cover;
	display:flex;
	justify-content:center;
	align-items:center;
	text-align:center;
	flex-direction:column;
}
.hero-content {
	z-index:2;
	display:flex;
	flex-direction:column;
    align-items:center;
}
.hero::before {
	content:'';
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	background:rgba(0,0,0,0.5);
	z-index:1;
}
h1 {
	font-size:3rem;
    font-weight:bold;
	margin:0;
	line-height:1.5;
}
.highlight {
	font-size:7rem;
	font-family:'Trojan Pro',sans-serif;
	margin:50px;
	color:#095f06;
	font-weight:bold;
	text-shadow:0 0 20px rgba(5, 48, 4, 0.9),0 0 60px rgb(5, 54, 4);
}
.contact-info {
    display: flex;
    gap: 20px;
    font-family: 'PTSans', sans-serif;
    color: #fff;
    margin-bottom: 15px;
}

.contact-item {
    display: flex;
    align-items: center;
    gap: 10px;
    text-decoration: none;
    color: inherit;
    font-weight: bold;
    transition: opacity 0.3s ease;
    font-size: 1.3rem;
}

.contact-item:hover {
    opacity: 0.8;
}

.contact-item .icon {
    width: 32px;
    height: 32px;
    color: #fff;
    display: block;
}
.typing-text {
	margin-top:50px;
	font-family:'PTSans',sans-serif;
	font-size:1.2rem;
	font-weight:700;
	color:#f6dba2;
	height:1.5em;
	overflow:hidden;
	white-space:nowrap;
	display:inline-block;
	border-right:2px solid #f6dba2;
	animation:fadeIn 0.5s ease-in-out,blink-cursor 0.7s steps(2,start) infinite;
    text-shadow: 0 0 10px rgba(246, 219, 162, 0.5);
}

.country-text{
    font-family: 'PTSans', sans-serif;
    font-weight: 900;
    color: #fff;
    text-shadow: 0 0 10px rgba(255, 255, 255, 0.5);
}
.offer-text {
    margin-top: 25px;
    margin-bottom: 50px;
    font-size: 1.6rem;
    font-family: 'PTSans', sans-serif;
    font-weight: 900;
    color: #f6dba2;
    height: 1.5em;
    text-shadow: 0 0 10px rgba(246, 219, 162, 0.5);
}
.cta-button {
	margin-top:10px;
    padding:20px 50px;
	font-family:'PTSans',sans-serif;
	font-size:1.2rem;
	font-weight:bold;
	color:#fff;
	background:#095f06;
	border:none;
	border-radius:30px;
	cursor:pointer;
	transition:all 0.3s ease;
	box-shadow:0 0 40px rgba(9,95,6,0.9),0 0 60px rgba(9,95,6,1);
}
.cta-button:hover {
	background:#fff;
	color:#095f06;
	outline:#095f06 2px solid;
}
.scroll-indicator {
	position:absolute;
	bottom:20px;
	left:50%;
	transform:translateX(-50%);
	font-size:2rem;
	animation:bounce 2s infinite;
	cursor:pointer;
}
@media (max-width:1200px) {
	h1 {
	font-size:2.5rem;
}
.highlight {
	font-size:5rem;
    margin:30px;
}
.typing-text {
	font-size:1rem;
}
.offer-text {
    font-size: 1.6rem;
    width: 600px;
}
.cta-button {
	padding:15px 40px;
    font-size:1rem;
}
.cta-button:hover {
	background:#095f06;
	color:#fff;
}
.contact-info {
	gap:15px;
	font-size:1.1rem;
}
.contact-item .icon {
	width:30px;
	height:30px;
}
}@media (max-width:768px) {
	h1 {
	font-size:rem;
    line-height:1.3;
}
.highlight {
	font-size:3.5rem;
}
.typing-text {
	font-size:0.8rem;
}
.offer-text {
    font-size: 1.2rem;
}
.cta-button {
	padding:10px 30px;
    font-size:0.9rem;
}
.cta-button:hover {
	background:#095f06;
	color:#fff;
}
.contact-info {
	gap:15px;
	font-size:0.7rem;
}
.contact-item {
    padding-top: 20px;
    font-size: 0.9rem;
}
.contact-item .icon {
	width:26px;
	height:26px;
}
}@media (max-width:600px) {
	.hero {
	padding:10px;
}
h1 {
	font-size:1.5rem;
}
.highlight {
	font-size:2.5rem;
}
.cta-button {
	padding:8px 20px;
    font-size:0.8rem;
}
.offer-text {
    width: 300px;
    font-size: 0.8rem;
}
.scroll-indicator {
	font-size:1.5rem;
}
.cta-button:hover {
	background:#095f06;
	color:#fff;
}
.contact-info {
	gap:15px;
	font-size:0.7rem;
}
.contact-item {
    padding-top: 20px;
    font-size: 0.8rem;
}
.contact-item .icon {
	width:20px;
	height:20px;
}
}@media (max-height:450px) {
	.scroll-indicator {
	display:none;
}
}.stats {
	padding:20px 20px;
	background-color:#f2f2f2;
	color:#333;
	text-align:center;
}
.stats-container {
	display:flex;
	justify-content:space-between;
	align-items:center;
	flex-wrap:wrap;
	max-width:1200px;
	margin:0 auto;
}
.stat-item {
	flex:1 1 calc(20% - 20px);
	margin:10px;
	background:#fff;
	border-radius:10px;
	padding:20px;
	box-shadow:0 4px 8px rgba(0,0,0,0.1);
	transition:transform 0.3s ease,box-shadow 0.3s ease;
}
.stat-item:hover {
	transform:scale(1.1);
  box-shadow:0 8px 16px rgba(0,0,0,0.2);
}
.stat-item img {
	max-width:75px;
	margin-bottom:15px;
}
.stat-item h2 {
	font-size:2rem;
	font-family:'PTSans',sans-serif;
	color:#000;
	margin:10px 0;
}
.stat-item p {
	font-size:1.5rem;
	font-weight:bold;
	font-family:'PTSans',sans-serif;
	color:#095f06;
}
@media (max-width:1200px) {
	.stats-container {
	flex-wrap:wrap;
}
.stat-item {
	flex:1 1 calc(45% - 20px);
}
.stat-item:hover {
	transform:none;
    box-shadow:0 4px 8px rgba(0,0,0,0.1);
}
}@media (max-width:768px) {
	.stat-item {
	flex:1 1 calc(100% - 20px);
}
.stat-item:hover {
	transform:none;
    box-shadow:0 4px 8px rgba(0,0,0,0.1);
}
}@media (max-width:480px) {
	.stat-item:hover {
	transform:none;
    box-shadow:0 4px 8px rgba(0,0,0,0.1);
}
}.features {
	padding:40px 20px;
	background-color:#ffffff;
	text-align:center;
	color:#333;
}
.features h2 {
	font-size:2rem;
	color:#095f06;
	margin-bottom:20px;
}
.feature-list {
	list-style:none;
	padding:0;
	margin:0 auto;
	max-width:900px;
	text-align:left;
}
.feature-list li {
	font-size:1.4rem;
	line-height:1.8;
	margin-bottom:10px;
}
.feature-list li strong {
	color:#000;
}
@media (max-width:1200px) {
	.features h2 {
	font-size:1.8rem;
}
.feature-list li {
	font-size:1.3rem;
}
}@media (max-width:768px) {
	.features h2 {
	font-size:1.5rem;
}
.feature-list li {
	font-size:1.2rem;
    line-height:1.6;
}
}@media (max-width:480px) {
	.features h2 {
	font-size:1.3rem;
}
.feature-list li {
	font-size:1.1rem;
    line-height:1.5;
}
}
.why-us,.services {
	padding:20px 20px;
	padding-bottom:60px;
	text-align:center;
	background-color:#f2f2f2;
}
.why-us h2,.services h2 {
	font-size:2.5rem;
	color:#095f06;
	margin-top:40px;
	margin-bottom:100px;
}
.card-container {
	display:flex;
	flex-wrap:wrap;
	justify-content:center;
	gap:20px;
}
.card {
	position:relative;
	width:380px;
    height:400px;
	background-size:cover;
	background-position:center;
	border-radius:10px;
	overflow:hidden;
	box-shadow:0 4px 8px rgba(0,0,0,0.1);
	transition:transform 0.3s ease,box-shadow 0.3s ease;
}
.card:hover {
	transform:scale(1.05);
    box-shadow:0 8px 16px rgba(0,0,0,0.2);
}
.card::before {
	content:"";
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	background:rgba(0,0,0,0.6);
    z-index:1;
}
.card-overlay {
	position:absolute;
	top:50%;
    left:50%;
	transform:translate(-50%,-50%);
	display:flex;
	flex-direction:column;
	align-items:center;
	text-align:center;
	width:80%;
	padding:20px;
	color:#fff;
	z-index:2;
	transition:transform 0.3s ease;
}
.card:hover .card-overlay {
	transform:translate(-50%,-55%);
}
.card-overlay h3 {
	font-size:1.5rem;
	margin-bottom:15px;
}
.card-overlay p {
	font-size:0.9rem;
	margin-bottom:20px;
	line-height:1.4;
}
.card-button {
	display:block;
	position:absolute;
    bottom:20px;
    left:50%;
    transform:translate(-50%,40px);
    padding:10px 30px;
	font-size:1rem;
	color:#fff;
	background:#095f06;
	border:none;
	border-radius:30px;
	cursor:pointer;
	opacity:0;
	transition:opacity 0.4s ease,transform 0.4s ease,background 0.3s ease;
}
.card:hover .card-button {
	opacity:1;
	transform:translate(50%,40);
}
.card-button:hover {
	background:#fff;
	color:#095f06;
}
@media (max-width:1200px) {
	.card-container {
	gap:15px;
    align-items:center;
}
.card:hover {
	transform:none;
    box-shadow:0 4px 8px rgba(0,0,0,0.1);
}
.card-button {
	opacity:1;
    transform:translate(-50%,40px);
}
.why-us h2 {
	font-size:2.2rem;
}
.card-overlay h3 {
	font-size:1.2rem;
}
.card-overlay p {
	font-size:1rem;
}
.card-button:hover {
	background:#095f06;
	color:#fff;
}
}@media (max-width:768px) {
	.card {
	width:335px;
    height:350px;
}
.card:hover {
	transform:none;
    box-shadow:0 4px 8px rgba(0,0,0,0.1);
}
.card-button {
	opacity:1;
    transform:translate(-50%,40px);
}
.card-container {
	flex-direction:column;
    align-items:center;
}
.why-us h2 {
	font-size:2rem;
}
.card-overlay h3 {
	font-size:1rem;
}
.card-overlay p {
	font-size:0.95rem;
}
.card-button:hover {
	background:#095f06;
	color:#fff;
}
}@media (max-width:480px) {
	.card:hover {
	transform:none;
    box-shadow:0 4px 8px rgba(0,0,0,0.1);
}
.card-button {
	opacity:1;
    transform:translate(-50%,40px);
}
.card-container {
	flex-direction:column;
    align-items:center;
}
.why-us h2 {
	font-size:1.6rem;
}
.card-overlay h3 {
	font-size:1.2rem;
}
.card-overlay p {
	font-size:0.9rem;
}
.card-button:hover {
	background:#095f06;
	color:#fff;
}
}.destinations,.bus-tours {
	padding:50px 20px;
	background:#fff;
	text-align:center;
}
.destinations-header h2 {
	font-size:2.5rem;
	color:#095f06;
	margin-bottom:10px;
}
.bus-tours-header h2 {
	font-size:2.5rem;
	color:#095f06;
	margin-bottom:50px;
}
.destinations-header p {
	font-size:1.2rem;
	color:#555;
	margin-bottom:30px;
}
.destinations-grid {
	display:grid;
	gap:20px;
	margin:10px auto;
	justify-content:center;
	margin-bottom:5px;
}
.destination-card {
	background:#fff;
	box-shadow:0 4px 8px rgba(0,0,0,0.3);
	border-radius:10px;
	overflow:hidden;
	display:flex;
	flex-direction:column;
	text-align:center;
	transition:transform 0.3s ease;
}
.destination-card img {
	width:100%;
	height:200px;
	object-fit:cover;
}
.destination-card h3 {
	font-size:1.4rem;
	color:#095f06;
	margin:15px 5px 5px;
}
.destination-card p {
	font-size:1.3rem;
	font-weight:bold;
	color:#333;
	margin:0 15px 20px;
}
.destination-card button {
	margin:auto 15px 20px;
	padding:10px 20px;
	font-size:1rem;
	font-weight:bold;
	color:#fff;
	background:#095f06;
	border:none;
	border-radius:25px;
	cursor:pointer;
	transition:background 0.3s ease;
}
.destination-card button:hover {
	background:#fff;
	color:#095f06;
	outline:#095f06 2px solid;
}
.destination-card:hover {
	transform:scale(1.05);
}
@media (min-width:1200px) {
	.destinations-grid {
	grid-template-columns:repeat(4,1fr);
}
}@media (min-width:769px) and (max-width:1200px) {
	.destinations-grid {
	grid-template-columns:repeat(3,1fr);
}
.destination-card:hover {
	transform:none;
}
.destination-card button:hover {
	background:#095f06;
	color:#fff;
}
}@media (max-width:768px) and (min-width:481px) {
	.destinations-grid {
	grid-template-columns:repeat(2,1fr);
}
.destination-card:hover {
	transform:none;
}
.destination-card button:hover {
	background:#095f06;
	color:#fff;
}
}@media (max-width:480px) {
	.destinations-grid {
	grid-template-columns:1fr;
}
.destination-card:hover {
	transform:none;
}
.destination-card button:hover {
	background:#095f06;
	color:#fff;
}
}.partners-section {
	padding:50px 20px;
	background:#fff;
	text-align:center;
}
.partners-section h2 {
	font-size:2.5rem;
	color:#095f06;
	margin-bottom:10px;
}
h2.subtitle {
	color:#000;
}
.slider {
	height:250px;
	margin:auto;
	position:relative;
	width:90%;
	display:grid;
	place-items:center;
	overflow:hidden;
}
.slider-track {
	display:flex;
	width:calc(250px * 30);
	animation:scroll 40s linear infinite;
}
.slider-track:hover {
	animation-play-state:paused;
}
.slide {
	height:100px;
	width:200px;
	display:flex;
	align-items:center;
	padding:15px;
	perspective:100px;
}
.slide img {
	width:100%;
	transition:1s;
	border-radius:10px;
	object-fit:fit;
}
.slider img:hover {
	transform:translateZ(20px);
}
.slider::after
.slider::before {
	background:linear-gradient(to right,rgba(255,255,255,1) 0%,rgba(255,255,255,0) 100%);
	content:'';
	height:100%;
	position:absolute;
	width:15%;
	z-index:2;
}
.slider::before {
	left:0;
	top:0;
}
.slider::after {
	right:0;
	top:0;
	transform:rotateZ(180deg);
}
.gallery-section {
	padding:20px;
	background-color:#f9f9f9;
	display:flex;
	justify-content:center;
	align-items:center;
}
.title {
	font-size:2.5rem;
	color:#095f06;
	margin-bottom:10px;
}
.gallery {
	display:grid;
	grid-template-columns:repeat(4,1fr);
    gap:20px;
	margin:20px auto;
	max-width:1200px;
}
.gallery-image {
	width:100%;
    height:250px;
	object-fit:cover;
    border-radius:8px;
	cursor:pointer;
	transition:transform 0.3s ease,box-shadow 0.3s ease;
}
.gallery-image:hover {
	transform:scale(1.05);
	box-shadow:0 4px 15px rgba(0,0,0,0.3);
}
@media (max-width:1199px) {
	.gallery {
	grid-template-columns:repeat(3,1fr);
}
}@media (max-width:992px) {
	.gallery {
	grid-template-columns:repeat(2,1fr);
}
}@media (max-width:768px) {
	.gallery {
	grid-template-columns:1fr;
}
}
.lightbox {
	position:fixed;
	top:0;
	left:0;
	width:100%;
	height:100%;
	background:rgba(0,0,0,0.8);
	display:flex;
	justify-content:center;
	align-items:center;
	visibility:hidden;
	opacity:0;
	transition:visibility 0.3s,opacity 0.3s;
	z-index:1000;
}
.lightbox img {
	max-width:90%;
	max-height:80%;
	border-radius:10px;
	box-shadow:0 4px 10px rgba(0,0,0,0.5);
}
.lightbox.visible {
	visibility:visible;
	opacity:1;
}
.lightbox button {
	background:none;
	border:none;
	color:white;
	font-size:2rem;
	position:absolute;
	cursor:pointer;
}
#close-lightbox {
	top:10px;
	right:20px;
}
.arrow {
	top:50%;
	transform:translateY(-50%);
	font-size:2.5rem;
	user-select:none;
}
.left-arrow {
	left:20px;
}
.right-arrow {
	right:20px;
}
#close-lightbox:hover,#prev-image:hover,#next-image:hover {
	background:rgba(0,0,0,0.2);
	border-radius:10%;
}
.form-section {
	display:flex;
	justify-content:center;
	align-items:center;
	min-height:100vh;
	background:linear-gradient(rgba(0,0,0,0.8),rgba(0,0,0,0.8)),url('../Assets/Main/Background.jpg') no-repeat center center/cover;
}
.form-container {
	padding:20px;
	border-radius:10px;
	max-width:500px;
	width:100%;
	text-align:center;
}
.form-container h1 {
	font-size:2rem;
	margin-bottom:50px;
	color:#fff;
}
.form-container form {
	display:flex;
	flex-direction:column;
}
.form-container label {
	font-weight:bold;
	margin-bottom:5px;
	text-align:left;
}
.input-name,.input-phone,.input-country,.input-comments {
	padding:10px;
	margin-top:5px;
	border:1px solid #ccc;
	border-radius:5px;
	font-family:'PTSans',sans-serif;
	font-size:14px;
	height:25px;
	width:auto;
	margin-bottom:10px;
}
.input-country {
	height:50px;
}
.form-container textarea {
	resize:none;
	height:80px;
}
.form-container button {
	background:#095f06;
	color:#fff;
	padding:10px 15px;
	border:none;
	border-radius:5px;
	font-size:16px;
	cursor:pointer;
	transition:background 0.3s ease;
}
.form-container button:hover {
	background:#fff;
	color:#095f06;
	outline:#095f06 2px solid;
}
@media (max-width:1200px) {
	.form-container button:hover {
	background:#095f06;
	color:#fff;
}
}
.input-error {
	border:2px solid red;
}
.input-default {
	border:1px solid #ccc;
}
.error {
	color:red;
	font-size:16px;
	display:none;
	margin-bottom:10px;
	text-align:left;
	height:20px;
}
.disclaimer {
	font-size:12px;
	color:#fff;
	margin-top:10px;
}
.footer {
	display:flex;
	justify-content:space-between;
	align-items:stretch;
	background-color:#292929;
	color:#fff;
	width:100%;
	height:600px;
    padding:0;
}
.footer-content {
	display:flex;
	width:100%;
}
.footer-contacts,.footer-map {
	flex:1;
    width:50%;
    box-sizing:border-box;
}
.footer-contacts {
	display:flex;
	flex-direction:column;
	justify-content:center;
    align-items:left;
    text-align:left;
	padding: 50px;
}
.footer-contacts h2 {
	margin-bottom:25px;
    font-size:2rem;
	text-align:left;
}
.contacts {
	margin-bottom:100px;
}
.wt-title {
	padding-top:15px;
}
.footer-contacts p {
	margin:5px 0;
	line-height:1.6;
	font-size:1.2rem;
}
.footer-contacts h1 {
    padding-top: 20px;
    font-size: 0.8rem;
    color: #555;
}
.footer-contacts a {
	color:#fff;
	text-decoration:none;
	font-weight:bold;
    transition: opacity 0.3s ease;
}
.footer-contacts a:hover {
    opacity: 0.8;
}
.footer-map {
	padding:0%;
	height:auto;
	background-color:#222;
	overflow:hidden;
}
@media (max-width:768px) {
	.footer-content {
	    flex-direction:column;
        height:800px;
}
.footer-contacts,.footer-map {
	width:100%;
	background-color:#222;
}
.footer-contacts {
	order:2;
}
.footer-map {
	order:1;
        min-height:400px;
}
}
@keyframes fadeIn {
	from {
	opacity:0;
}
to {
	opacity:1;
}
}
@keyframes blink-cursor {
	50% {
	border-color:transparent;
}
}
@keyframes bounce {
	0%,100% {
	transform:translateX(-50%) translateY(0);
}
50% {
	transform:translateX(-50%) translateY(-10px);
}
}
@keyframes scroll {
	0% {
	transform:translateX(0);
}
100% {
	transform:translateX(calc(-250px * 15));
}
}
