/*
Theme Name: Astra Child
Theme URI: https://wpastra.com/
Template: astra
Author: Brainstorm Force
Author URI: https://wpastra.com/about/?utm_source=theme_preview&utm_medium=author_link&utm_campaign=astra_theme
Description: The Astra WordPress theme is lightning-fast and highly customizable. It has over 1 million downloads and the only theme in the world with 5,700+ five-star reviews! It’s ideal for professional web designers, solopreneurs, small businesses, eCommerce, membership sites and any type of website. It offers special features and templates so it works perfectly with all page builders like Spectra, Elementor, Beaver Builder, etc. Fast performance, clean code, mobile-first design and schema markup are all built-in, making the theme exceptionally SEO-friendly. It’s fully compatible with WooCommerce, SureCart and other eCommerce plugins and comes with lots of store-friendly features and templates. Astra also provides expert support for free users. A dedicated team of fully trained WordPress experts are on hand to help with every aspect of the theme. Try the live demo of Astra: https://zipwp.org/themes/astra/
Tags: custom-menu,custom-logo,entertainment,one-column,two-columns,left-sidebar,e-commerce,right-sidebar,custom-colors,editor-style,featured-images,full-width-template,microformats,post-formats,rtl-language-support,theme-options,threaded-comments,translation-ready,blog
Version: 1.0.1749374362
Updated: 2025-06-08 09:19:22

*/
.body{
    min-width:756px !important;
}

.site-header{
	z-index:999;
}

/* Reduce spacing between menu items */
.ast-header-break-point .main-header-menu > li {
  margin: 0 10px;
}

/* Make header tighter */
.ast-primary-header-bar {
  padding: 10px 0;
}

/* Adjust logo + title spacing */
.ast-site-identity {
  display: flex;
  align-items: center;
}

.ast-site-identity img {
  margin-right: 10px;
  max-height: 40px;
  background-color: transparent;
}


/* ........................ */

.arc-container {
  display: flex;
	max-width:80%;
	margin:auto;
  justify-content: space-evenly;
  align-items: flex-end;
  flex-wrap: nowrapwrap;
  padding: 40px 20px;
}

.arc-card {
  width: 160px;
  max-width: 25vw;
  text-align: center;
  transition: transform 0.3s ease;
}

.arc-card img {
  width: 100%;
  height: 200px;
  object-fit: cover;
  border-radius: 20px;
  display: block;
  transform-origin: center;
}

.arc-card-title {
  margin-top: 10px;
  font-weight: 600;
  font-size: 1rem;
}

.arc-card-more {
  font-size: 0.85rem;
  color: #666;
}

.arc-card:nth-child(1) {
  transform: translateY(30px) rotate(-8deg);
}
.arc-card:nth-child(2) {
  transform: translateY(0px) rotate(-4deg);
}
.arc-card:nth-child(3) {
  transform: translateY(0px) rotate(4deg);
}
.arc-card:nth-child(4) {
  transform: translateY(30px) rotate(8deg);
}

@media (max-width: 768px) {
  .arc-container {
    justify-content: space-around;
    gap: 5vw;
  }
  .arc-card {
    width: 40%;
    max-width: 160px;
  }
}
/* ....................................... */

/* ===== TREK CAROUSEL WHEEL SLIDER ===== */

.trek-carousel-container {
    margin: 0 auto;
    padding: 40px 20px;
}

.trek-carousel-header {
    text-align: center;
    margin-bottom: 30px;
}

.carousel-subtitle {
    font-size: 18px;
    color: #666;
    opacity: 0.9;
    margin: 0 0 10px 0;
    font-weight: 300;
    letter-spacing: 1px;
}

.carousel-title {
    font-family: 'Poppins' !important;
    font-size: 48px !important;
    color: rgb(8, 62, 58) !important;
    margin: 0;
    font-weight: 700 !important;
}

.trek-carousel-wrapper {
    position: relative;
    height: 500px;
    overflow: hidden;
}

.trek-carousel {
    position: relative;
    width: 100%;
    height: 100%;
}

.trek-card {
    position: absolute;
    width: 440px;
    height: 500px;
    left: 50%;
    top: 50%;
    transform-origin: center center;
    transform-style: preserve-3d;
    transition: all 0.6s cubic-bezier(0.4, 0.0, 0.2, 1);
    cursor: pointer;
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.2);
}
@media (max-width:1025px){
	.trek-card {
    width: 330px;
    height: 400px;
}
	.trek-card-content {
	top:230px !important;

}
	/* Card positions */
.trek-card.left {
    transform: translate(-50%, -50%) translateX(-200px) rotateY(45deg) scale(0.86)!important;

}

.trek-card.center {
    transform: translate(-50%, -50%) translateX(0) rotateY(0deg) scale(1);
}

.trek-card.right {
    transform: translate(-50%, -50%) translateX(200px) rotateY(-45deg) scale(0.86)!important;

}

.trek-card.hidden-left {
    transform: translate(-50%, -50%) translateX(-350px) rotateY(60deg) scale(0.7) !important;

}

.trek-card.hidden-right {
    transform: translate(-50%, -50%) translateX(350px) rotateY(-60deg) scale(0.7) !important;

}
	.trek-title {
    font-size: 18px !important;
    font-weight: 400 !important;
    color: #ffffff !important;
}
}
.trek-card-image {
    width: 100%;
    height: 100%;
    position: relative;
    background:black);
    overflow: hidden;
}

.trek-card-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
}

.trek-card-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(to bottom, rgba(0,0,0,0.1) 0%, rgba(0,0,0,0.3) 100%);
}

.trek-card-content {
	position:absolute;
	top:350px;
	width:100%;
    padding: 20px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    box-sizing: border-box;
	text-align:center;
}

/* Title - Fixed height with text overflow handling */
.trek-title {
    font-size: 24px !important;
    font-weight: 600 !important;
    color: #ffffff !important;
}



/* Action buttons - Fixed at bottom */
.trek-actions {
    display: flex;
    gap: 20px;
    justify-content: center;
    margin-top: auto;
}

.btn-know-more,
.btn-send-query {
    display: inline-block;
    padding: 12px 16px;
    background: linear-gradient(45deg, #128874, #074953);
    color: white;
    text-decoration: none;
    border-radius: 15px;
    font-weight: 500;
    font-size: 14px;
    transition: all 0.3s ease;
    box-shadow: 0 2px 8px rgba(81, 112, 225, 0.281);
    border: none;
    cursor: pointer;
    text-align: center;
    min-width: 80px;
    white-space: nowrap;
}

.btn-know-more:hover,
.btn-send-query:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(102, 126, 234, 0.6);
    color: white;
    text-decoration: none;
}

/* Card positions */
.trek-card.left {
    transform: translate(-50%, -50%) translateX(-340px) rotateY(45deg) scale(0.86);
    z-index: 1;
    opacity: 0.6;
}

.trek-card.center {
    transform: translate(-50%, -50%) translateX(0) rotateY(0deg) scale(1);
    z-index: 3;
    opacity: 1;
}

.trek-card.right {
    transform: translate(-50%, -50%) translateX(340px) rotateY(-45deg) scale(0.86);
    z-index: 1;
    opacity: 0.6;
}

.trek-card.hidden-left {
    transform: translate(-50%, -50%) translateX(-480px) rotateY(60deg) scale(0.7);
    z-index: 0;
    opacity: 0.3;
}

.trek-card.hidden-right {
    transform: translate(-50%, -50%) translateX(480px) rotateY(-60deg) scale(0.7);
    z-index: 0;
    opacity: 0.3;
}

/* Navigation */
.carousel-nav {
	
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    color: #333;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    transition: all 0.3s ease;
    z-index: 10;
}

.carousel-nav.prev-btn {
    left: 20px;
}

.carousel-nav.next-btn {
    right: 20px;
}

.carousel-nav:hover {
    background: rgba(0, 0, 0, 0.2);
    transform: translateY(-50%) translateY(-2px);
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.2);
}

.carousel-nav:active {
    transform: translateY(-50%) translateY(0);
}


/* Carousel footer */
.carousel-footer {
    text-align: center;
    margin-top: 30px;
}

.btn-view-all {
    display: inline-block;
    padding: 12px 30px;
    background: linear-gradient(45deg, #667eea, #764ba2);
    color: white;
    text-decoration: none;
    border-radius: 25px;
    font-weight: 500;
    transition: all 0.3s ease;
    box-shadow: 0 4px 15px rgba(102, 126, 234, 0.4);
}

.btn-view-all:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(102, 126, 234, 0.6);
    color: white;
    text-decoration: none;
}

/* Responsive design */
@media (max-width: 768px) {
    .trek-card {
        width: 240px;
        height: 320px;
    }

    .trek-card-content {
        /* height: 200px !important; */
    }

    .trek-title {
        font-size: 14px !important;
        margin-bottom: 10px ;
    }

    .trek-content-grid {
        gap: 6px 8px;
        margin-bottom: 12px;
    }

    .trek-difficulty,
    .trek-duration,
    .trek-altitude,
    .trek-price {
        font-size: 11px;
        min-height: 18px;
    }

    .btn-know-more,
    .btn-send-query {
        padding: 6px 10px;
        font-size: 10px;
        min-width: 70px;
    }

/* Card positions */
	/* Card positions */
.trek-card.left {
    transform: translate(-50%, -50%) translateX(-150px) rotateY(45deg) scale(0.86)!important;

}

.trek-card.center {
    transform: translate(-50%, -50%) translateX(0) rotateY(0deg) scale(1);
}

.trek-card.right {
    transform: translate(-50%, -50%) translateX(150px) rotateY(-45deg) scale(0.86)!important;

}

.trek-card.hidden-left {
    transform: translate(-50%, -50%) translateX(-250px) rotateY(60deg) scale(0.7) !important;

}

.trek-card.hidden-right {
    transform: translate(-50%, -50%) translateX(250px) rotateY(-60deg) scale(0.7) !important;

}

.trek-card-content {
	top:200px !important;
}

    .carousel-subtitle {
        font-family: 'Rochester, sans-serif';
        font-size: 40px !important;
		margin-bottom:10px !important;
        color:rgb(15, 106, 98);
        font-weight: 400;
    }

    .carousel-nav {
        width: 20px!important;
        height: 20px!important;
        font-size: 16px;
    }

    .trek-carousel-wrapper {
        height: 420px;
    }
}

@media (max-width: 480px) {
    .trek-card {
        width: 220px !important;
        height: 300px !important;
    }

	.trek-card-content {
	top:180px !important;
}
    .trek-card-content {
        padding: 14px;
    }

    .trek-title {
        font-size: 12px !important;
    }

    .trek-content-grid {
        gap: 5px 6px;
        margin-bottom: 10px;
    }

    .trek-difficulty,
    .trek-duration,
    .trek-altitude,
    .trek-price {
        font-size: 10px;
        min-height: 16px;
    }

    .btn-know-more,
    .btn-send-query {
        padding: 5px 8px;
        font-size: 9px;
        min-width: 60px;
    }

	/* Card positions */
.trek-card.left {
    transform: translate(-50%, -50%) translateX(-150px) rotateY(45deg) scale(0.86)!important;

}

.trek-card.center {
    transform: translate(-50%, -50%) translateX(0) rotateY(0deg) scale(1);
}

.trek-card.right {
    transform: translate(-50%, -50%) translateX(150px) rotateY(-45deg) scale(0.86)!important;

}

.trek-card.hidden-left {
    transform: translate(-50%, -50%) translateX(-250px) rotateY(60deg) scale(0.7) !important;

}

.trek-card.hidden-right {
    transform: translate(-50%, -50%) translateX(250px) rotateY(-60deg) scale(0.7) !important;

    .trek-carousel-wrapper {
        height: 380px;
    }

    .trek-carousel-container {
        padding: 20px 10px;
    }

    .carousel-nav {
        width: 35px;
        height: 35px;
        font-size: 14px;
    }

    .carousel-nav.prev-btn {
        left: 10px;
    }

    .carousel-nav.next-btn {
        right: 10px;
    }
}

/* Dark theme compatibility */
@media (prefers-color-scheme: dark) {
    .carousel-subtitle {
        color: #ccc;
    }
    
    .carousel-title {
        color: #fff;
    }
    
    .carousel-nav {
        background: rgba(255, 255, 255, 0.1);
        color: #fff;
    }
    
    .carousel-nav:hover {
        background: rgba(255, 255, 255, 0.2);
    }
    
    .play-pause-btn {
        background: rgba(255, 255, 255, 0.1);
        color: #fff;
    }
    
    .play-pause-btn:hover {
        background: rgba(255, 255, 255, 0.2);
    }
    
    .auto-slide-indicator {
        color: rgba(255, 255, 255, 0.6);
    }
    
    .dot {
        background: rgba(255, 255, 255, 0.3);
    }
    
    .dot:hover {
        background: rgba(255, 255, 255, 0.5);
    }
}

/* ..............................................................*/
.step-circle {
  width: 80px;
  height: 80px;
  border-radius: 50%;
  background: #fff;
  border: 2px solid #ddd;
  margin: 0 auto 10px auto;
}
.blur-text{
	opacity:0.4;
}




/*...............................................*/
/* --- Single Trek Template Styles --- */

/* Ensure the main content area has no top margin from the theme */
.trek-template {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* 1. Banner Section */
.trek-banner {
    height: 650px;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    color: #fff;
}

/* Add a dark overlay for better text readability */
.trek-banner-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.3);
    z-index: 1;
}

.trek-title {
    font-size: 5rem; /* 80px */
    font-weight: 800;
    color: #ffffff;
    text-align: center;
    text-shadow: 2px 2px 10px rgba(0, 0, 0, 0.5);
    z-index: 2;
    padding: 0 20px;
    text-transform: uppercase;
    letter-spacing: 2px;
}

/* Main content container for sections below banner */
.trek-content-container {
    max-width: 1100px;
    margin-left: auto;
    margin-right: auto;
    padding: 0 20px;
    /* This negative margin pulls the spec block up over the banner */
    margin-top: -120px;
    position: relative;
    z-index: 10;
}

/* 2. Specification Block */
.trek-spec-block {
    background-color: #ffffff;
    border-radius: 20px;
    padding: 30px 40px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
    display: flex;
    align-items: center;
    gap: 40px;
    border: 1px solid #e2e8f0;
}

/* Left side of the spec block */
.trek-booking-info {
    flex-shrink: 0;
    text-align: center;
}

.price-label {
    margin: 0;
    font-size: 1rem; /* 16px */
    color: #4a5568;
}

.trek-price {
    font-size: 2.25rem; /* 36px */
    font-weight: 700;
    color: #2d3748;
    margin: 5px 0 20px 0;
    line-height: 1;
}

.plan-trek-button {
    display: inline-block;
    background-color: #2dd4bf; /* Teal color from screenshot */
    color: #ffffff;
    padding: 15px 40px;
    border-radius: 12px;
    text-decoration: none;
    font-weight: 600;
    font-size: 1.125rem; /* 18px */
    transition: background-color 0.3s ease, transform 0.2s ease;
}

.plan-trek-button:hover {
    background-color: #14b8a6;
    transform: translateY(-2px);
}

/* Right side of the spec block */
.trek-details-grid {
    flex-grow: 1;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}

.spec-item {
    display: flex;
    align-items: center;
    gap: 12px;
}

.spec-icon {
    width: 28px;
    height: 28px;
    background-color: #0d9488; /* Darker teal */
    border-radius: 50%;
    flex-shrink: 0;
}

.spec-text {
    font-size: 0.95rem; /* 15px */
    color: #1a202c;
}

.spec-text strong {
    color: #2d3748;
}

/* 3. Overview Section */
.trek-overview-section {
    margin-top: 60px;
    background-color: #ffffff;
    border-radius: 20px;
    padding: 40px;
    border: 1px solid #e2e8f0;
}

.section-title {
    font-size: 2rem; /* 32px */
    font-weight: 700;
    color: #1a202c;
    margin-top: 0;
    margin-bottom: 20px;
    padding-bottom: 10px;
    border-bottom: 2px solid #e2e8f0;
}

.overview-content p {
    font-size: 1.1rem; /* 17.6px */
    line-height: 1.8;
    color: #4a5568;
    margin-bottom: 1.5em;
}

.overview-content p:last-child {
    margin-bottom: 0;
}


/* --- Responsive Design --- */

/* For Tablets */
@media (max-width: 992px) {
    .trek-title {
        font-size: 4rem; /* 64px */
    }

    .trek-spec-block {
        flex-direction: column;
        align-items: stretch;
        padding: 30px;
    }

    .trek-booking-info {
        display: flex;
        justify-content: space-between;
        align-items: center;
        margin-bottom: 20px;
        padding-bottom: 20px;
        border-bottom: 1px solid #e2e8f0;
    }

    .trek-price {
        margin: 0;
    }
    
    .trek-details-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

/* For Mobile Phones */
@media (max-width: 767px) {
    .trek-banner {
        height: 450px;
    }

    .trek-title {
        font-size: 2.5rem; /* 40px */
    }

    .trek-content-container {
        margin-top: -80px;
        padding: 0 15px;
    }

    .trek-booking-info {
        flex-direction: column;
        gap: 15px;
    }

    .trek-details-grid {
        grid-template-columns: 1fr;
        gap: 15px;
    }

    .spec-item {
        padding: 10px;
        background-color: #f8fafc;
        border-radius: 8px;
    }

    .trek-overview-section {
        padding: 25px;
        margin-top: 40px;
    }
}

.trek-card-container-custom {
    font-family: sans-serif;
    position: relative;
    width: 100%;
    max-width: 280px; /* Max width for the card on small screens */
    margin: 40px auto; /* Centering the card */
    height: 420px;
}

/* The background decorative cards */
.trek-card-bg-custom {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: 24px;
    z-index: 1;
    transition: transform 0.3s ease-in-out;
}

.bg-1-custom {
    background-color: #68A090; /* Lighter teal */
    transform: rotate(-10deg) scale(0.95);
}

.bg-2-custom {
    background-color: #3B7B6F; /* Mid teal */
    transform: rotate(10deg) scale(0.95);
}

/* The main content card that sits on top */
.trek-card-content-custom {
    position: relative;
    z-index: 2;
    width: 100%;
    height: 100%;
    background-color: #1E4D43; /* Dark green from image */
    border-radius: 24px;
    color: white;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.2);
    transition: transform 0.3s ease-in-out;
}

.trek-card-container-custom:hover .trek-card-content-custom {
    transform: translateY(-10px);
}

.trek-card-container-custom:hover .bg-1-custom {
    transform: rotate(-15deg) scale(1);
}

.trek-card-container-custom:hover .bg-2-custom {
    transform: rotate(15deg) scale(1);
}

/* The image area at the top of the card */
.trek-card-image-custom {
    height: 60%;
    width: 100%;
    background-size: cover;
    background-position: center;
    border-top-left-radius: 24px;
    border-top-right-radius: 24px;
}

/* Container for the text and buttons */
.trek-card-info-custom {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 15px;
}

/* The name of the trek */
.trek-card-name-custom {
    margin: 0;
    font-size: 1.5rem;
    font-weight: bold;
    text-align: center;
    flex-grow: 1;
    display: flex;
    align-items: center;
}

/* Container for the action buttons */
.trek-card-actions-custom {
    display: flex;
    justify-content: space-around;
    width: 100%;
    padding-top: 10px;
}

/* Styling for the buttons */
.trek-card-btn-custom {
    color: white;
    text-decoration: none;
    font-size: 0.8rem;
    font-weight: 600;
    padding: 8px 12px;
    border: 1px solid white;
    border-radius: 12px;
    transition: background-color 0.2s ease, color 0.2s ease;
}

.trek-card-btn-custom:hover {
    background-color: white;
    color: #1E4D43;
}

	
	
	
	