@font-face {
font-family: 'Satoshi';
src: url('../fonts/Satoshi-Light.woff2') format('woff2');
font-weight: 300;
font-style: normal;
}

@font-face {
font-family: 'Satoshi';
src: url('../fonts/Satoshi-Regular.woff2') format('woff2');
font-weight: 400;
font-style: normal;
}

@font-face {
font-family: 'Satoshi';
src: url('../fonts/Satoshi-Medium.woff2') format('woff2');
font-weight: 500;
font-style: normal;
}

@font-face {
font-family: 'TheSeasons';
src: url('../fonts/theseasons-reg.woff2') format('woff2');
font-weight: 400;
font-style: normal;
}

@font-face {
font-family: 'TheSeasons';
src: url('../fonts/theseasons-bd.woff2') format('woff2');
font-weight: 700;
font-style: normal;
}
h1 {
font-family: 'TheSeasons', serif;
font-weight: 700;
line-height:75px;
margin-bottom: 30px;
}

body {
font-family: 'Satoshi';
}
h1, h2, h3, h4, h5, h6 {
font-family: 'TheSeasons', serif;
}
.new-hed-font{
font-family: 'Playfair Display', serif;
}
a.main-btn-soa-btn {
background: #b6ada2;
padding: 10px 35px;
text-decoration: none;
font-size: clamp(14px, 1.2vw, 18px);
color: #fff;
font-weight: 500;
font-family: 'Satoshi';
text-transform: uppercase;
letter-spacing: 1px;
}
.soa-header {
z-index: 100;
position: absolute;
width: 100%;
padding: 10px 0px;
background: linear-gradient(to right, rgba(255, 255, 255, 0.35), rgba(255, 255, 255, 0.15));
backdrop-filter: blur(4px);
}
.soa-header.fixed-header {
position: fixed;
top: 0;
left: 0;
background: #ffffff;
box-shadow: 0 4px 15px rgba(0,0,0,0.08);
}
section.adventure-sec {
width: 100%;
position: relative;
padding: 70px 0px;
}
.soa-hero-sec:before {
width: 100%;
height: 100%;
top: 0;
left: 0;
content: "";
position: absolute;
background: #453f3a63;
}
.hero-middle-content-box {
width:70%;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
}
.hero-middle-content-box h4 img {
width: 30px;
margin-right: 5px;
}
.hero-middle-content-box h4 {
text-transform: uppercase;
font-size: 15px;
width: 45%;
margin: 0 auto 40px;
letter-spacing: 1px;
background: linear-gradient(to right, rgb(152 152 152 / 35%), rgba(255, 255, 255, 0.15));
backdrop-filter: blur(4px);
padding: 10px 25px;
border-radius: 4px;
color: #fff;
display: inline-block;
border: 1px solid #fff;
font-family: 'Satoshi';
font-weight: 500;
}
a.main-btn-soa-btn:hover {
background: #827460;
}
.hero-middle-content-box h1 {
font-size: clamp(32px, 6vw, 66px);
line-height: clamp(40px, 6.5vw, 70px);
color: #fff;
font-weight: 600;
letter-spacing: 1px;
margin-bottom: 20px;
}
.hero-middle-content-box h5 {
font-size: clamp(17px, 3vw, 21px);
color: #fff;
margin-bottom: 48px;
font-family: 'Satoshi';
font-weight: 300;
}
.common-heading-soa h5 {
font-size: 15px;
text-transform: uppercase;
letter-spacing: 2px;
color: #453f3a;
font-family: 'Satoshi';
}
.common-heading-soa h2 {
font-size: clamp(26px, 5vw, 50px);
line-height: clamp(32px, 5.5vw, 55px);
font-weight: 600;
letter-spacing: 1px;
margin: 20px 0px;
}
.coom-btn-box-hed {
margin-top: 35px;
}
.common-heading-soa {
width: 70%;
margin: 0 auto;
}
section.safari-tours-sec {
width: 100%;
position: relative;
padding: 70px 0px;
background: #e9e8e6;
}
.same-desig-ponts-box {
display: flex;
flex-wrap: wrap;
gap: 20px;
margin: 25px 0px;
}
.same-desig-ponts-box p {
flex: 0 0 calc(50% - 10px);
border: 1px solid #e6e6e699;
padding: 13px;
margin: 0px;
}
@media (max-width: 767px) {
.same-desig-ponts-box p {
flex: 0 0 100%;
}
.same-desig-activi-box .activities-box{
flex: 0 0 100%;
}
}
.same-desig-activi-box{
display: flex;
flex-wrap: wrap;
gap: 20px;
margin: 25px 0px;
}
.same-desig-activi-box .activities-box{
flex: 0 0 calc(50% - 10px);
border: 1px solid #e6e6e699;
padding: 13px;
margin: 0px;
}
.activities-box h5 {
font-size: 17px !important;
}
.landing-filter-box {
width: 100%;
position: sticky;
top: 75px;
}
.fiter-left-sidebar{
margin-bottom:30px;
}
.form-check-input:checked {
background-color: #453f3a;
border-color: #453f3a;
}
.safari-card {
cursor: pointer;
border: none;
overflow: hidden;
transition: 0.3s ease;
box-shadow: 0 5px 15px rgba(0,0,0,0.08);
}
.safari-card:hover {
transform: translateY(-5px);
}
.safari-card img {
height: 250px;
object-fit: cover;
}
.modal-right h3 {
font-size: 25px;
}
.price-tag {
position: absolute;
top: 15px;
right: 15px;
background: #fff;
padding: 5px 12px;
font-weight: 600;
font-size: 12px;
}
.card-body h3 {
color: #453f3a;
font-size: clamp(18px, 2.5vw, 24px);
}
.card-body {
flex: 1 1 auto;
padding: 30px 20px;
}
ul.safari-card-box-list {
width: 100%;
position: relative;
display: flex;
padding: 0px;
list-style: none;
gap: 30px;
}
ul.safari-card-box-list li i {
color: #453f3a;
}
.safari-tours-all-pack {
width: 100%;
position: relative;
margin-top: 50px;
}


/* =============================
MODAL DESIGN
============================= */
@media (min-width: 1800px) {
.modal-xl {
    max-width: 1200px; 
}
}
h3.expore-tttt-soa {
width: 100%;
position: relative;
font-size: 13px;
text-transform: uppercase;
border: 1px solid #e8e9ea;
padding: 10px 20px;
letter-spacing: 2px;
}
h3.mb-0.itinerary-title {
font-size: clamp(14px, 2vw, 18px);
font-family: 'Satoshi';
width: 80%;
}
.accordion-body ul {
margin: 0px;
padding: 10px 0px 10px 15px;
}
.modal-xl {
    max-width: 1100px;
}
.nav-tabs .nav-link {
color: #453f3a;
border: 1px solid #e8e9ea !important;
border-radius:0px;
}
.modal-left {
background: #f8f8f8;
padding: 30px;
}
.modal-right {
background:#453f3a;
color: #fff;
padding: 40px;
}
.modal-right input,
.modal-right select {
margin-bottom: 15px;
}
.nav-tabs .nav-link.active {
background:#453f3a;
color: #fff;
}
.accordion-button:not(.collapsed) {
background-color: #f6f6f6;
color: #453f3a;
}
.tab-content {
border: 1px solid #e8e9ea;
padding: 20px;
margin-top: 10px;
max-height: 500px;
overflow-y: scroll !important;
}
.accordion {
border-radius: 0px !important;
}
.accordion-button:focus {
z-index: 3;
outline: 0;
box-shadow:none;
}
.btn-close-white {
filter: brightness(1) invert(1) !important;
z-index: 1000 !important;
}

/*main-form css Start */


section.safari-booking-sec {
width: 100%;
position: relative;
padding: 70px 0px;
}
.safari-form-box {
background: #fff;
padding: 30px;
border-radius: 12px;
max-width: 850px;
margin: 50px auto 0px;
box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
}
.safari-form-box textarea.form-control {
    height: 100px !important;
}
.safari-form-box label {
font-weight: 500;
font-size: 14px;
}
.safari-form-box .form-control,
.form-select {
height: 44px;
font-size: 14px;
}
.safari-form-box .option-group input {
display: none;
}
.safari-form-box .option-group label {
border: 1px solid #ddd;
padding: 6px 12px;
border-radius: 6px;
font-size: 12px;
margin: 4px;
cursor: pointer;
display: inline-block;
}
.safari-form-box .option-group input:checked+label {
background: #453f3a;
color: #fff;
border-color: #453f3a;
}
.safari-form-box .traveller-box input {
width: 60px;
text-align: center;
}
.safari-form-box .submit-btn {
background: #453f3a;
color: #fff;
border: none;
width: 100%;
height: 48px;
font-weight: 500;
font-family: 'Satoshi';
text-transform: uppercase;
letter-spacing: 1px;
font-size: clamp(13px, 2vw, 15px); 
}
.flatpickr-day.today {
border: none !important;
background: none !important;
color: #000;
font-weight: 500;
}
ul.tittle_arrow {
width: 85%;
display:none;
padding: 0;
justify-content: space-between;
list-style: none;
margin: 0 auto;
margin-top: -30px;
}
.special-four {
  font-family: 'Playfair Display', serif;
}

/*form css end*/

.safari-tabs-section {
background: #f5f5f5;
padding: 60px 0;
}

/* LEFT IMAGE */
.image-box {
position: relative;
height: 100%;
overflow: hidden;
}
.image-box img {
width: 100%;
height: 100%;
object-fit: cover;
transition: opacity 0.5s ease;
}
.image-overlay {
position: absolute;
bottom: 40px;
left: 40px;
color: #fff;
z-index:10;
}
.badge-label {
background: #453f3a;
padding: 6px 14px;
font-size: 13px;
display: inline-block;
margin-bottom: 15px;
}
.image-overlay h3 {
font-size: 28px;
font-weight: 600;
max-width: 300px;
}
.tabs-wrapper {
display: flex;
flex-direction: column;
gap: 25px;
}
.tab-item {
display: flex;
align-items: flex-start;
gap: 20px;
padding: 25px;
background: #fff;
border: 1px solid #eee;
transition: all 0.3s ease;
cursor: pointer;
}
.tab-item.active {
border: 1px solid #453f3a;
background: #fdfdfd;
}
.tab-item .number {
font-size: 20px;
font-weight: 300;
color: #aca8a5;
min-width: 40px;
border-right: 1px solid #ddd;
padding-right: 15px;
}
.tab-item h5 {
font-size: 18px;
margin-bottom: 8px;
font-weight: 600;
}
.tab-item p {
font-size: 14px;
color: #666;
margin: 0;
}
.tab-tatata-soa {
margin-top: 60px;
}

.image-box::before {
content: "";
position: absolute;
left: 0;
bottom: 0;
width: 100%;
height:25%;
background: linear-gradient(
to top,
#242424 0%,
rgba(36, 36, 36, 0) 100%
);
z-index: 1;
}
section.tab-tailor-sec {
width: 100%;
position: relative;
padding-bottom: 70px;
}

.testimonial-card {
background: #f7f7f7;
padding: 20px;
border: 1px solid #e8e9ea;
}
.testimonial-tittle {
display: flex;
gap: 10px;
align-items: center;
}
.testimonial-tittle h2 {
background: #d6cfc4;
font-size: 18px;
font-weight:500;
width: 40px;
height: 40px;
border-radius: 50%;
display: flex;
justify-content: center;
align-items: center;
}
.outher-desc h3 {
font-size: 15px;
padding: 0px;
margin: 0px;
}
.outher-desc p {
font-size: 12px;
margin: 0px;
padding: 0px;
}
ul.testimonial-rating {
width: 100%;
position: relative;
display: flex;
list-style: none;
padding: 0px;
margin: 10px 0px;
gap:5px;
}
ul.testimonial-rating li i{
color:#facc15;
font-size:12px;
}
.testimonial-read-more a {
color: #453f3a;
}
.testimonial-read-more p{
padding:0px;
margin:0px;
}
.testimonial-read-more a:hover {
color: #827460;
}
.soa-testimonial-box {
margin-top: 60px;
}
section.testimonial-sec {
width: 100%;
position: relative;
padding-bottom: 70px;
}
.trusted-card-box img {
max-width: 60px;
}
.trusted-card-box ul {
text-align: center;
justify-content: center;
}
.trusted-card-box h3 {
font-size: 17px;
font-weight: 900;
letter-spacing: 1px;
padding: 0px;
margin: 0px;
}
.trusted-card-box a {
font-size: 15px;
color: #453f3a;
text-decoration: none;
}
.trusted-card-box a:hover {
text-decoration: underline;
}
.main-trusted-box {
margin-top: 40px;
}
section.trusted-sec {
width: 100%;
position: relative;
padding-bottom: 70px;
}
section.why-us-sec {
width: 100%;
position: relative;
padding: 70px 0px;
background: #e9e8e6;
}
.why-us-card-soa {
width: 100%;
position: relative;
border: 1px solid #d6dce2;
padding: 20px;
}
.why-us-card-soa i {
background: #d6cfc4;
padding: 20px;
width: 30px;
height: 30px;
display: flex;
justify-content: center;
align-items: center;
border-radius: 50%;
margin-bottom: 20px;
}
.why-us-card-soa:hover {
background: #fff;
transition: 1.5s;
cursor: pointer;
}
.why-us-main-box {
margin-top: 60px;
}
.faq-main-land-box {
width: 80%;
margin: 60px auto 0px;
}
.faq-main-land-box .accordion-header button {
    margin-bottom: 0;
    font-size: 20px;
    font-family: 'Satoshi';
}

/*Gallery css*/

/* Default (Mobile First) - 2 Columns */
.gallery-box-landing .gallery{
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 15px;
  padding: 20px;
}

.gallery-box-landing .gallery img{
  width: 100%;
  height: auto; /* Mobile auto height */
  object-fit: cover;
  border-radius: 8px;
  transition: 0.3s;
}

/* Desktop - 3 Columns */
@media (min-width: 992px){
  .gallery-box-landing .gallery{
    grid-template-columns: repeat(3, 1fr);
  }

  .gallery-box-landing .gallery img{
    height: 250px; /* Fixed height only for desktop */
  }
}


.gallery-box-landing .lightbox{
display:none;
position:fixed;
top:0;
left:0;
width:100%;
height:100%;
background:rgba(0,0,0,0.9);
justify-content:center;
align-items:center;
z-index:999;
}
.gallery-box-landing .lightbox-img{
max-width:80%;
max-height:80%;
border-radius:10px;
}
.gallery-box-landing .lightbox .close{
position:absolute;
top:20px;
right:30px;
font-size:40px;
color:white;
cursor:pointer;
}
.gallery-box-landing .lightbox .prev, .next{
position:absolute;
top:50%;
transform:translateY(-50%);
background:none;
border:none;
font-size:30px;
color:white;
cursor:pointer;
padding:10px;
}
.gallery-box-landing .lightbox .prev{ left:30px; }
.next{ right:30px; }
@media(max-width:768px){
.lightbox-img{
max-width:95%;
}
}
section.gallery-sec {
width: 100%;
position: relative;
padding: 70px 0px;
}
.botttom-cont-btn {
margin-top: 60px;
}
section.faq-sec {
width: 100%;
position: relative;
padding-bottom: 60px;
}
.expi-card-para {
width: 100%;
position: relative;
padding-top: 20px;
}
.expi-card-para h2 {
font-size: 23px;
}
.expi-card-pico {
width: 100%;
position: relative;
overflow: hidden;
cursor: pointer;
}
.expi-card-pico:hover img {
transform: scale(1.1);
transition: 1s;
}
.safari-expi-mian-box {
margin-top: 60px;
}
section.safari-expi-sec {
width: 100%;
position: relative;
padding-bottom: 70px;
}
.why-us-card-soa h3 {
font-size: 20px;
}
.common-heading-soa a.trip-cllco {
color: #453f3a;
}
.common-heading-soa a.trip-cllco:hover{
 text-decoration:none;
 transition:1s;
}
button.hidehsow-btnfil {
width: 100%;
position: relative;
text-align: left;
padding: 14px 10px;
border: 1px solid #cdcdcd;
margin-bottom: 20px;
background: #f6f6f68f;
color: #453f3a !important;
display: none;
}
.accordion-button {
font-family: 'Satoshi';
}
.owl-dots {
display: flex;
text-align: center;
margin-top: 10px;
justify-content: center;
}
.owl-dot.active {
background: #000 !important;
}
.owl-dot {
width: 8px;
height: 8px;
margin: 5px;
background: #999 !important;
border-radius: 50%;
display: flex;
cursor: pointer;
}
.owl-carousel {
width: auto !important;
}
button.muttitootle-btn {
    width: 75%;
    background: #453f3a;
    padding: 10px 35px;
    text-decoration: none;
    font-size: clamp(14px, 1.2vw, 18px);
    color: #fff;
    font-weight: 500;
    font-family: 'Satoshi';
    text-transform: uppercase;
    letter-spacing: 1px;
    position: fixed;
    bottom: 30px;  
    left: 50%;
    transform: translateX(-50%);
    margin: 0;
    display: none;
    z-index: 9999;
    border:1px solid #453f3a;
}
.main-awd-soa {
    padding: 0px 100px;
}
.bvgfasfsvs_sgfas {
width: 100%;
position: relative;
padding-bottom: 60px;
}
#second-hidebox,
#initial-hidebox {
    display: flex;
    flex-direction: column;
}
.tab-content {
flex: 1;
overflow-y: auto;
}
#second-hidebox,
#initial-hidebox {
    max-height: 665px;  
}

.error-message {
    color: #dc3545;
    font-size: 14px;
    margin-top: 5px;
}

.input-error {
    border: 1px solid #dc3545 !important;
}

.radio-error {
    border: 1px solid #dc3545;
    padding: 10px;
    border-radius: 6px;
}

.iti.iti--allow-dropdown.iti--separate-dial-code.iti--show-flags {
    width: 100% !important;
}
#popupForm {
    max-height: 85vh;   /* adjust if needed */
    overflow-y: auto;
    padding-right: 10px;
}