@import url('https://fonts.googleapis.com/css2?family=Josefin+Sans:ital,wght@0,100..700;1,100..700&family=Noto+Sans:ital,wght@0,100..900;1,100..900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400..900;1,400..900&display=swap');
/* 1. Use a more-intuitive box-sizing model */
*, *::before, *::after {
    box-sizing: border-box;
}
/* 2. Remove default margin */
* {
    margin: 0;
    padding: 0;
        color: #fff;
}
a{text-decoration:none; }
html{
   scroll-behavior: smooth;
       color: #fff;
}
body {
   /* 3. Add accessible line-height */
    line-height: 1.5;
   /* 4. Improve text rendering */
    -webkit-font-smoothing: antialiased;
    background-color: #ffebfc;
    font-family: "Noto Sans", sans-serif;
    font-optical-sizing: auto;
}
/* 5. Improve media defaults */
img, picture, video, canvas, svg {
    display: block;
    max-width: 100%;
}
#logo{margin-bottom: 25px!important;}
/* 6. Inherit fonts for form controls */
input, button, textarea, select {
    font: inherit;
}
/* 7. Avoid text overflows */
p, h1, h2, h3, h4, h5, h6 {
    overflow-wrap: break-word;
}
/* 8. Improve line wrapping */
p {
    text-wrap: pretty;
}
h1, h2, h3, h4, h5, h6 {
    text-wrap: balance;
}
ol, ul {
    list-style: none;
}
table {
    border-collapse: collapse;
    border-spacing: 0;
}
/* 9. Create a root stacking context */
#root, #__next {
    isolation: isolate;
}
@font-face {
    font-family: 'Material Icons';
    font-style: normal;
    font-weight: 400;
    src: url(../../css/icon.woff2) format('woff2');
}
:before {
    font-family: "Material Icons";
    position: absolute;
}
.container{
    max-width: 100%;
    /*max-width: 1250px;*/
   margin: 0 auto;
}
/* TOP NAVI */
.navbar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    background-color: #ffffff;
    padding: 15px 30px;
    border-radius: 50px;
    margin: 20px auto;
    max-width: 1100px;
}
.nav-menu {
    list-style: none;
    display: flex;
    gap: 30px;
}
.nav-menu a {
    text-decoration: none;
    color: #004b4a;
    font-weight: 500;
}
.logo a {
    font-size: 24px;
    font-weight: 700;
    color: #004b4a;
    text-decoration: none;
    letter-spacing: 3px;
}
.nav-buttons {
    display: flex;
    gap: 15px;
}
.sec-menu {
    position: sticky;
    top: 10px;
    transition: all 0.4s ease;
    z-index: 2;
}
.btn {
    padding: 10px 20px;
    border-radius: 40px;
    text-decoration: none;
    font-weight: 500;
    text-align: center;
    font-size: 14px;
    transition: background-color 0.3s, color 0.3s;
}
.btn-grn {
    background-color: #ad249a;
    color: white;
}
.seller-login {
    background-color: transparent;
    border: 2px solid #000;
    color: #000;
}
/*BANNER*/
.sec-ban {
    text-align: center;
    padding: 80px 0;
}
.sec-ban .container{
    max-width: 900px;
    margin: 0 auto;
}
.sec-ban .subtitle {
    font-size: 18px;
    color: #bf76b5;
    margin-bottom: 10px;
}
.sec-ban h1 {
    font-size: 66px;
    font-weight: 800;
    line-height: 75px;
    margin-bottom: 20px;
    color: #a94b9c;
}
.sec-ban .description {
    font-size: 18px;
    line-height: 30px;
    margin-bottom: 30px;
    color: #585757;
}
.sec-ban .cta-buttons {
    display: flex;
    justify-content: center;
    gap: 20px;
}
.sec-ban .btn {
    padding: 15px 30px;
    font-size: 16px;
    display: inline-block;
}
.sec-ban .book-demo {
    border: 2px solid #000;
    color: #000;
}
.sec-ban .btn:hover {
}
.sec-ban .book-demo:hover {
}
/* Responsive Design */
@media (max-width: 768px) {
    .sec-ban h1 {
        font-size: 36px;
        line-height: 46px;
   }
    .sec-ban .description {
        font-size: 16px;
   }
    .sec-ban .btn {
        padding: 12px 25px;
        font-size: 14px;
   }
}
/*BUTTON HOVER EFFECT*/
.btn-new {
    position: relative;
    display: inline-block;
    padding: 12px 36px;
    margin: 10px;
    color: #fff;
    font-size: 1.4rem;
    letter-spacing: 2px;
    border-radius: 5px;
    outline: none;
    border: none;
    cursor: pointer;
    text-transform: uppercase;
    box-sizing: border-box;
}
.btn--hoverEffect2 {
    display: inline-block;
    z-index: 1;
    overflow: hidden;
    position: relative;
}
.btn--hoverEffect2:hover {
    color: #000;
}
.btn--hoverEffect2::before {
    content: "";
    position: absolute;
    top: -3px;
    left: -277px;
    right: 0;
    bottom: 0;
    transition: 0.5s all ease;
    box-sizing: border-box;
    border-radius: 0;
    background: #ffffff;
    opacity: 1;
    z-index: -1;
    width: 106%;
}
.btn--hoverEffect2:hover::before {
    transition: 0.5s all ease;
    left: 0px;
}
/* ABOUT */
.ab-wel {
    padding: 0px 0px 150px 0px;
}
.ab-wel .container{
    display: flex;
    flex-wrap: wrap;
    padding: 70px;
    border-radius: 20px;
    background: #1F1C2C;
    background: linear-gradient(338deg, #f4f2ff, #ffffff);
}
.ab-wel-lhs{
   position: relative;
   width: 50%;
}
.ab-wel-lhs span {
    position: absolute;
    opacity: 0.2;
}
.ab-wel-1 {
    position: absolute;
    width: 88%;
    height: 529px;
    left: 70px;
    top: -13px;
    border-radius: 15px;
}
.ab-wel-2 {
    width: 80%;
    height: 300px;
    object-fit: cover;
    z-index: 1;
    position: relative;
    margin: 47% 10% 5% 15%;
    border-width: 15px 0px 0px 15px;
    border-top-style: solid;
    border-left-style: solid;
    border-top-color: rgb(255, 255, 255);
    border-left-color: rgb(255, 255, 255);
    border-image: initial;
    border-right-style: initial;
    border-right-color: initial;
    border-bottom-style: initial;
    border-bottom-color: initial;
    border-radius: 0px 100px 15px;
}
.ab-wel-3 {
    width: 100px;
    height: 100px;
    border: 7px solid rgb(240, 168, 5);
    border-radius: 50%;
    left: -39px;
    top: -32px;
    z-index: 0;
}
.ab-wel-4 {
    width: 200px;
    height: 200px;
    border: 7px solid rgb(255 235 252);
    border-radius: 20px;
    right: 9px;
    bottom: -171px;
    opacity: 0.1;
}
.ab-wel-rhs {
    width: 50%;
    padding: 0;
}
.ab-wel-rhs p {
    font-size: 15px;
    font-weight: 400;
    line-height: 25px;
    color: #87858f;
}
.ab-wel-tit h2 {
    font-size: 48px;
    font-weight: 700;
    padding-bottom: 30px;
    color: #000;
    line-height: 50px;
}
.ab-wel-tit h2 em {
    display: block;
    color: #e5026b;
    font-weight: 700;
    font-size: 35px;
    line-height: 78px;
}
.ab-wel-tit p a {
    color: #ef8ee0;
    font-weight: 600;
    font-size: 14px;
}
.ab-wel-tit-1 {
    border-top: 1px solid #e3e3e3;
    margin-top: 25px;
    padding-top: 25px;
}
.ab-wel-tit-2 {
    float: left;
    width: 100%;
    padding-top: 30px;
}
.ab-wel-tit-2 ul li {
    float: left;
    width: 50%;
}
.ab-wel-tit-2 ul li div {
    position: relative;
}
.ab-wel-tit-2 ul li div i {
    position: absolute;
    left: 0px;
    top: 0px;
    width: 42px;
    height: 42px;
    background: #b99c9c;
    border-radius: 50%;
    color: rgb(255, 255, 255);
    text-align: center;
    padding: 9px;
    box-shadow: rgb(0 0 0 / 10%) 0px 0px 0px 8px;
    font-size: 18px;
    line-height: 25px;
    font-family: 'Material Icons';
    font-style: normal;
}
.ab-wel-tit-2 ul li div h4 {
    padding: 0px 0px 0px 60px;
    font-size: 15px;
    color: #000000;
    font-weight: 400;
}
.ab-wel-tit-2 ul li div h4 em {
    display: block;
    font-size: 16px;
   /* color: rgb(0, 0, 0);
    */
    font-weight: 600;
    padding-top: 5px;
    font-style: normal;
}
@media screen and (max-width:1250px) {
    .ab-wel-tit-2 ul li div h4 em {
        font-size: 14px;
   }
}
@media screen and (max-width:992px) {
    .ab-wel-lhs {
        margin-bottom: 50px;
   }
}
@media screen and (max-width:769px) {
    .ab-wel-tit-2 ul li {
        width: 100%;
        padding-bottom: 30px 
   }
    .ab-wel-tit-2 ul li:last-child {
        padding-bottom: 0;
   }
    .ab-wel {
   }
    .ab-wel-lhs {
        display: none;
   }
    .ab-wel-rhs {
        padding-left: 0;
        width: 100%;
   }
}
@media screen and (max-width:576px) {
    .container {
        max-width: 90%;
   }
}
@media screen and (max-width:550px) {
    .ab-wel-tit h2 {
        font-size: 34px;
        line-height: 40px;
   }
    .ab-wel-tit h2 em {
        line-height: 32px;
        font-size: 26px;
        padding-top: 10px;
   }
}
/*SERVICES*/
.tit-com{
    text-align: center;
    margin-bottom: 60px;
}
.tit-com span{
}
.tit-com h2{
    font-size: 50px;
    line-height: 70px;
    padding-bottom: 20px;
    position: relative;
    color: #a94b9c;
    font-family: "Playfair Display", serif;
}
.tit-com h2:after{
   content: '';
   position: absolute;
   width: 65px;
   height: 5px;
   background: #a94b9c;
   border-radius: 15px;
   left: 0;
   right: 0;
   margin: 0 auto;
   bottom: 8px;
}
.tit-com p{
    font-size: 16px;
    line-height: 28px;
    color: #685065;
}
.sec-ser{
    padding-bottom: 150px;
}
.slider-all{
    display: flex;
    flex-wrap: nowrap;
    gap: 40px;
}
.slider-all li{
    width: 33%;
}
.hom-quick-acc {
    position: relative;
    background-image: linear-gradient(225deg, rgb(255 255 255) 0%, rgb(244 237 255) 99%);
    border-radius: 45px;
    padding: 40px;
    text-align: center;
    box-shadow: rgba(0, 0, 0, 0.05) 0px 2px 12px -3px;
}
.hom-quick-acc h2 {
    color: rgb(0, 0, 0);
    font-size: 16px;
    font-weight: 500;
    line-height: 38px;
    padding-bottom: 30px;
    margin: 0px;
    text-transform: uppercase;
}
.hom-quick-acc h2 span {
    font-size: 38px;
    font-weight: 500;
    display: block;
    line-height: 38px;
    text-transform: capitalize;
}
.hom-quick-acc img {
    position: relative;
    width: 100%;
    margin-bottom: 30px;
}
.cta-1 {
    text-transform: uppercase;
    font-weight: 700;
    padding: 10px 60px;
    border-radius: 2px;
    text-decoration: none;
    display: inline-block;
    color: rgb(255, 255, 255);
    font-size: 13px;
    transition: all 0.5s ease 0s;
    background: rgb(0, 0, 0);
    border: 2px solid rgb(0, 0, 0);
}
.hom-quick-acc-2 {
    background-image: linear-gradient(225deg, rgb(255 254 255) 0%, rgb(255 237 237) 99%);
}
.hom-quick-acc-3 {
    background-image: linear-gradient(221deg, rgb(253, 252, 251) 0%, rgb(208 238 243) 100%);
}
.hom-quick-acc-4 {
    background-image: linear-gradient(225deg, rgb(255 255 255) 0%, rgb(225 225 225) 99%);
}
.hom-quick-acc-5 {
    background-image: linear-gradient(to top, rgb(234, 241, 184) 0%, rgb(250, 255, 218) 100%);
}
/*PRODUCTS*/
.sec-prod{
   padding-bottom: 100px;
}
.prods{
    display: flex;
    flex-wrap: nowrap;
    gap: 40px;
}
.to-ho-hotel-con {
    position: relative;
    overflow: hidden;
    border: 1px solid rgb(223, 223, 223);
    box-shadow: rgba(0, 0, 0, 0.09) 0px 4px 7px;
    margin-bottom: 30px;
    border-radius: 20px;
}
.to-ho-hotel-con-1 {
    position: relative;
}
.to-ho-hotel-con-1::before {
    content: "";
    position: absolute;
    background: linear-gradient(to top, rgba(0, 0, 0, 0.68) 15%, rgba(0, 0, 0, 0) 87%);
    top: 0px;
    bottom: 0px;
    left: 0px;
    width: 100%;
    z-index: 1;
}
.to-ho-hotel-con-1 img {
    width: 100%;
    height: 450px;
    max-width: 388px;
    object-fit: cover;
    border-radius: 5px 5px 0px 0px;
    transition: all 0.5s ease 0s;
}
.hom-pack-deta {
    position: absolute;
    left: 0px;
    right: 0px;
    bottom: 0px;
    color: rgb(255, 255, 255);
    width: 100%;
    text-align: center;
    padding: 0px 25px 30px;
    z-index: 2;
}
.hom-pack-deta h2 {
    margin: 0px 0px 20px;
    font-size: 26px;
    line-height: 34px;
}
.hom-pack-deta h4 {
    font-weight: 500;
    padding-bottom: 25px;
}
.hom-pack-deta h4 span {
    font-size: 18px;
    font-weight: 600;
    background: rgb(239, 149, 15);
    display: inline-block;
    padding: 3px 5px;
    border-radius: 5px;
}
.cta-2 {
    background: linear-gradient(39deg, #871977, #bb28a6 80%) 0% 0% / 100% 100% #ad249a;
    color: rgb(255, 255, 255);
    border: 0px solid rgb(255, 167, 120);
    padding: 12px 40px;
    font-size: 16px;
    transition: all 0.5s ease 0s;
    border-radius: 5px;
    font-weight: 500;
    text-align: center;
    display: block;
}
.fclick {
    position: absolute;
    width: 100%;
    height: 100%;
    inset: 0px;
    z-index: 3;
}
.sec-copy{
    background: hsl(0, 0%, 100%);
    padding: 10px 0px;
    width: 100%;
    position: relative;
    display: inline-block;
}
.sec-copy p{
    text-align: center;
    margin: 0px;
    font-size: 13px;
    color: #908f8f;
}
.owl-nav{
   display:none
}
.owl-dots{
   display:flex;
   justify-content:center;
   margin-top:30px
}
.owl-dots button.active{
   width:50px;
   background:#ad249a!important
}
.owl-dots button{
   width:10px;
   height:10px;
   background:#c3afc0!important;
   border-radius:50px;
   margin:0 3px;
   transition:all .4s ease
}
/*-------------------------------------------------*/
/* = BOOKING FORM 
/*-------------------------------------------------*/
.sec-appoi{
    position: relative;
    /*padding: 60px 0;*/
}
.sec-appoi:before{
    content:'';
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    bottom: 0;
    background-image: conic-gradient(from 0deg at 51% 45%, #4c624d 0%, #4c624d 10%, #4c624d 20%, #4c624d 30%, #4c624d 40%, #4c624d 50%, #4c624d 60%, #4c624d 70%,  #4c624d 80%);

}
.sec-appoi .container{
    display: grid;
    grid-template-columns: 1fr 1fr;
    position: relative;
}
.sec-appoi .lhs{
}
.sec-appoi .lhs img{
    min-height: 760px;
    object-fit: cover;
    /*border-radius: 20px 0 0 20px;*/
}
a#add-item{color:#fff!important;}
.sec-appoi .rhs{
    padding: 60px;
    /*background: #fff;*/
    border-radius: 0 20px 20px 0;
}
.sec-appoi .rhs span{
    font-size: 20px;
    text-transform: uppercase;
    font-weight: bolder;
    /*background: rgb(255 153 0);*/
    display: inline-block;
    padding: 3px 5px;
    border-radius: 5px;
    color: rgb(255, 153, 0);
    
    letter-spacing: 1px;
    /*margin-bottom: 10px;*/
}
.sec-appoi .rhs h2{
    font-size: 60px;
    line-height: 60px;
   /* color: #a94b9c;
    */
    font-family: "Playfair Display", serif;
    margin-bottom: 40px;
}
.land-3-banner-form{
    float: left;
    width: 40%;
    padding-left: 20px;
}
.land-com-form{
}
.land-com-form h2{
    font-size: 22px;
    text-align: center;
    margin-bottom: 18px;
    color: #fff;
    line-height: 22px;
}
.land-com-form form{
}
.land-com-form form ul{
}
.land-com-form form ul li{
    margin-bottom: 15px;
    position: relative;
    list-style-type: none;
}
/*.land-com-form form ul li:before{
    font-size: 18px;
    margin-top: 13px;
    margin-left: 20px;
    color: #6a717f;
    font-weight: 500;
}*/
/*.land-com-form form ul li:nth-child(1):before{
    content: "person";
}
.land-com-form form ul li:nth-child(2):before{
    content: "mail_outline";
}
.land-com-form form ul li:nth-child(3):before{
    content: "phone_iphone";
}
.land-com-form form ul li:nth-child(4):before{
    content: "date_range";
}
.land-com-form form ul li:nth-child(5):before{
    content: "people";
}*/
.land-com-form form ul li input, select{
    max-width: 100%;
    width: 185px;
    display: block;
    border: 0;
    border: 1px solid #d4d4d4;
    line-height: 24px;
    font-size: 14px;
    outline: none;
    height: 50px;
    background: #ffffff;
    padding-left: 15px;
    box-sizing: border-box;
    border-radius: 3px;
    color:#1a2a38;
}
.egp-output{
    width: 100%;
    display: block;
    border: 0;
    border: 1px solid #d4d4d4;
    line-height: 24px;
    font-size: 14px;
    outline: none;
    height: 50px;
    background: #ffffff;
    padding: 11px 5px!important;
    box-sizing: border-box;
    border-radius: 3px;
    color:#1a2a38;
    min-width: 70px !important;
}
#add-item{
    display: block;
    color: #fff;
    position: absolute;
    right: 60px;
    z-index: 1;
    cursor: pointer;
    text-align: center;
}
#summery p, #summery p strong{color: #000;}
select option{color: #000;}

.delete{
    display: block;
    width: 100%;
    color: red;
    /*border: 1px solid red;*/
    padding: 5px 10px;
    margin-top: 20px;
    border-radius: 10px;
    background: #fff;
}
.land-com-form form ul li input[type="submit"]{
    background: rgb(255 153 0) !important;
    color: #fff;
    height: 50px;
    line-height: 50px;
    text-transform: uppercase;
    font-weight: 600;
    font-size: 16px;
    text-align: center;
    border-radius: 3px;
    cursor: pointer;
    padding-left: 0;
    border: 0px;
    border-bottom: 1px solid #4c624d;
}
.land-com-form form ul li:nth-child(6):before{
    content: "send";
    margin-left: 207px;
    margin-top: 17px;
    color: #fff;
    font-size: 16px;
    opacity:0;
    -webkit-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;
}
.land-com-form form ul li:nth-child(6):hover:before{
    opacity:1;
    margin-left: 212px;
    -webkit-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;
}
.land-com-form form ul li p{
    margin-bottom: 0px;
    color: #a1aab3;
    font-size: 13px;
    text-align: center;
}
.land-com-form form ul li p a{
    color: #ffffff;
}
.land-com-form form ul li:last-child{
    margin-bottom:0px;
}
/* Responsive Design */
@media (max-width: 1260px) {
    .container {
        max-width: 90%;
   }
    .hom-quick-acc h2 span {
        font-size: 30px;
   }
}
@media screen and (max-width:992px) {
    .nav-menu, .nav-buttons{
       gap: 5px;
   }
}
@media (max-width: 768px) {
    .navbar {
        flex-direction: column;
        padding: 15px;
   }
    .nav-menu{
       display: none;
   }
    .nav-menu {
        flex-direction: column;
        gap: 20px;
   }
    .nav-buttons {
        flex-direction: column;
        gap: 10px;
       display: none;
   }
    .hom-quick-acc h2 span{
        font-size: 26px;
   }
    .sec-ser, .sec-prod, .ab-wel {
        padding-bottom: 80px;
   }
    .ab-wel .container{
       padding: 40px;
   }
    .sec-ban {
       text-align: center;
       padding: 35px 0 50px 0;
   }
}
@media (max-width: 550px) {
    .sec-appoi {
       padding: 40px 0;
   }
    .sec-appoi .container{
        grid-template-columns: 1fr;
   }
    .sec-appoi .lhs{
       display: none;
   }
    .sec-appoi .rhs{
       border-radius:20px;
       width: 100%;
        padding: 30px;
   }
    .sec-appoi .rhs h2 {
       font-size: 40px;
       line-height: 50px;
   }
}

.shipping-section {
    font-family: Arial, sans-serif;
    color: #333;
}

.shipping-options {
    display: flex;
    align-items: center;
    gap: 10px;
}

.shipping-option {
    display: flex;
    align-items: center;
    border: 1px solid #ddd;
    border-radius: 8px;
    padding: 5px;
    cursor: pointer;
    background-color: #fff;
    transition: all 0.2s ease-in-out;
}

.shipping-option input {
    display: none;
}

.shipping-option .icon {
    font-size: 18px;
    margin-right: 6px;
}

.shipping-option .label {
    font-weight: 500;
    color: #333;
}

/* When selected */
.shipping-option input:checked + .icon,
.shipping-option input:checked ~ .label {
    color: #007aff;
}

.shipping-option input:checked ~ .label {
    font-weight: bold;
}

/* Add orange border and subtle background for active state */
.shipping-option input:checked ~ .icon,
.shipping-option input:checked ~ .label,
.shipping-option input:checked ~ .icon + .label {
    color: #333;
}

.shipping-option input:checked ~ .label {
    color: #333;
}

.shipping-option input:checked ~ .icon {
    color: #007aff;
}

.shipping-option input:checked ~ .label {
    font-weight: 600;
}

.shipping-option.active,
.shipping-option input:checked + span,
.shipping-option input:checked ~ .label {
    background-color: #fff;
    border-color: #ffa500;
}

/* Hover effect */
.shipping-option:hover {
    border-color: #ffa500;
}

/* Plus button */
.add-button {
    background-color: #ffa500;
    border: none;
    color: #fff;
    font-size: 20px;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background-color 0.2s ease;
}

.add-button:hover {
    background-color: #e69500;
}

.shipping-option input[type="radio"]:checked + .icon + .label {
  font-weight: bold;
}

.shipping-option input[type="radio"]:checked ~ .icon,
.shipping-option input[type="radio"]:checked ~ .label,
.shipping-option input[type="radio"]:checked {
  border: none;
}

/* Use :has() for modern browsers */
.shipping-option:has(input[type="radio"]:checked) {
  border-color: rgb(255, 153, 0); /* Blue border when selected */
}


/* -------- Breakpoints -------- */


/* ≥1024px: tighten spacing a bit */
@media (max-width: 1024px) {
    .sec-appoi .rhs{padding: 0px!important;}
    /*.item-row{display: block!important;}*/
    .item-row .field-group:first-child select{max-width: 70px!important;}
    .item-row .field-group:last-child{display: inline-block!important;}
    .item-row .field-group:nth-child(3){display: inline-block!important;width: 80%;}
    .item-row .field-group:nth-child(3) label{display: block!important;}
    .egp-output{width: 100% !important;}
    .land-com-form form ul li input, select{width: 100%;}
}