.fullWrap {min-height:calc(100vh - 158px); }
:root {--bg:#f6f9ff; --card:#ffffff; --muted:#4d4d4d; --accent-start:#13b3ff; --accent-end:#6b5cff; --border:#e6e6e6; }
body {margin:0; min-height:100vh; background:  linear-gradient(287.92deg, #FFFFFF 41.55%, #EEF3FF 99.07%); color:#111827; }
.stepper {display:flex; justify-content:center; gap:40px; align-items:center; margin-bottom:30px; padding:20px 0 10px 0; max-width: 600px; margin: auto; }
.stepper .step {text-align:center; position:relative; }
.stepper .step .circle {height:48px; width:48px; border-radius:50%; display:inline-flex; align-items:center; justify-content:center; font-weight:700; margin-bottom:8px; box-shadow:0 6px 18px rgba(106,90,205,0.08); border:2px solid #e6e6e6; background:#fff; }
.stepper .step.active .circle,.stepper .step.filled .circle {background: linear-gradient(90deg,var(--accent-start),var(--accent-end)); color:#fff; border:none; }
.stepper .step p {font-size:13px; color:var(--muted); margin:0; }
.stepper .step.active p {color:var(--accent-start); font-weight:600; }
.container-full {max-width:1600px; margin:40px auto; padding:0 20px; display:grid; grid-template-columns: 1fr 500px; gap:30px; align-items:start; }
.card {background:var(--card); border:1px solid rgba(0,0,0,0.2); border-radius:10px; padding:28px; box-shadow:0 2px 0 rgba(0,0,0,0.02); }
.card-title {font-size:28px; margin:0 0 8px 0; font-weight:500; }
.sub {color:var(--muted); margin-bottom:18px; font-size: 14px; }
.row {display:flex; gap:20px; align-items:flex-start; flex-wrap:wrap; }
.col {flex:1; min-width:240px; }
.field {display:flex; flex-direction:column; gap:6px; margin-bottom:18px; }
label {font-weight:500; color:#222; font-size:15px; }
.input {background:#f3f4f6; border-radius:8px; padding:6px 14px; border:1px solid #e9e9e9; display:flex; gap:10px; align-items:center; box-sizing:border-box; }
.input input {border:none; background:transparent; font-size:16px; font-family: "Montserrat", sans-serif; font-weight:500; outline:none; width:100%; }

.booking-summary {min-height:240px; display:flex; flex-direction:column; color:var(--muted); padding:25px; }
.booking-summary h4 {margin:0 0 12px 0; font-size:16px; padding:0; }
#summaryContent {min-height:200px; display:flex; margin:0; }
#summaryContent .emptyresult {min-height: 200px; display: flex; flex:1; margin: 0; align-items: center; justify-content: center; }
.bs-empty {text-align:center; padding:20px; border-radius:8px; border:1px dashed #f0f0f0; background:transparent; color:var(--muted); }
.flex-btns {display:flex; gap:15px; margin:15px 0}
.justify-content-flex-end {justify-content:flex-end; }
.justify-content-space-between {justify-content:space-between; }
.justify-center{justify-content:center}
.btn-default.btn-o{background:transparent; border:1px solid #ccc; color:#222}
.btn-default.btn-o:hover{border:1px solid #000; color:#000}
.mb20{margin-bottom:20px;}
.mb30{margin-bottom:30px;}
.mb40{margin-bottom:40px;}
.mb50{margin-bottom:50px;}
.mt20{margin-top:20px;}
.mt30{margin-top:30px;}
.mt40{margin-top:40px;}
.mt50{margin-top:50px;}
.fullWrap.thanks{align-items:center; display:flex; justify-content:center}
.thank-you-wrap{display:flex; align-items:center; flex-direction:column;gap:20px}
.home-icon1{vertical-align: middle;display: inline-block;margin: 0 10px 0 0;}
.font18{font-size:18px !important;}
.font20{font-size:20px !important;}
.text-red{color:red}
.flexone{flex:1}
.table1.table-sm{font-size:14px;}
.table1{width:100%; border-top:1px solid rgba(0,0,0,0.2);border-left:1px solid rgba(0,0,0,0.2);}
.table1 tr td{padding:8px; background:#fff; margin:0;border-right:1px solid rgba(0,0,0,0.2);border-bottom:1px solid rgba(0,0,0,0.2); text-align:left;}
.table1 tr th{padding:8px; background:#f9f9f9; margin:0;border-right:1px solid rgba(0,0,0,0.2);border-bottom:1px solid rgba(0,0,0,0.2);text-align:left; font-weight:600}
.table1 tr td strong{font-weight:600}
    
.reviewBooking{display: flex;flex-direction: column;align-items: flex-start;padding: 20px;gap: 20px;background: rgba(0, 128, 255, 0.05);}
.reviewBooking .txt1{font-size:14px; color:rgba(0,0,0,.55);}
.reviewBooking .txt2{font-size:16px; color:#000; font-weight:500}
.reviewBooking small{font-size:14px; color:rgba(0,0,0,.70);}

.reviewTotal{display:flex; justify-content:space-between; border-top:1px solid #ccc; padding-top:20px; margin-top:20px;}

ul.style1 {padding: 0; margin: 0 0 15px 0; list-style-type: none; }
ul.style1 li {padding: 0 0 9px 31px; position: relative; margin: 0; }
ul.style1 li:before {content: ""; width: 24px; height: 24px; background: url(../images/icon-arrow.png) 0 0 no-repeat; padding: 0; margin-left: 0; display: inline-block; position: absolute; left: 0; top: 6px; background-size: 18px; }

.contBoxFlex {display:flex; flex-wrap:wrap; text-align:center }
.contBoxFlex .contact-box {flex:1; padding: 35px 35px 35px 35px; background: linear-gradient(90deg, #09B5FF 0%, #505DFF 63.69%);margin:15px; border-radius:20px;}
.contact-box .contact-icon img {width: 64px; height: 64px; max-width: unset; margin-bottom: 20px; }
.content-text .title {font-size: 26px; color:#fff; line-height: 38px; margin: 0 0 10px; }
.contact-box .content-text .services-txt {margin: 0; color: #fff; font-weight: 400; }
.contact-box .content-text a { color: #fff; }
	
	/* RESPONSIVE */
    @media (max-width:980px){
      .container-full{grid-template-columns:1fr;}
    }

    @media (max-width:600px){
		.card{padding:16px;}
		.field{gap:0}
		.row{gap:0}
		.card-title{font-size:24px}
		.stepper {overflow-x:auto; padding:10px 8px; margin: 0 15px; gap:18px; justify-content:flex-start; }
	
		.stepper .step .circle {height:40px; width:40px; font-size:14px; margin-bottom:4px; }
		.stepper .step p {font-size:11px; line-height:1.1; }
		.contBoxFlex .contact-box{padding:20px;}
		.content-text .title {font-size: 21px;}
		.contact-box .contact-icon img {width: 44px;height: 44px;margin-bottom: 0;}
    }
	
/* room booking start*/
   
   .room-booking {display:flex; gap:20px; align-items:flex-start; padding-bottom: 20px; border-bottom: 1px solid #d6d6d6; width: 100%; }
	.room-img {position: relative; width: 240px; }
	.badge {position: absolute; top: 10px; left: 10px; background: #6CB36F; color: #fff; padding: 5px 12px; font-size: 12px; border-radius: 30px; font-weight: 600; }
	.room-img img {width: 100%; border-radius: 15px; display: block; }
	.room-content {flex: 1; }
	.room-header {display: flex; justify-content: space-between; align-items: center; margin-bottom: 15px;}
	.price {font-size: 18px; font-weight: 600; background: linear-gradient(230deg, #1e5bff , #00b4ff ); -webkit-background-clip: text; -webkit-text-fill-color: transparent; }
	.room-desc {font-size: 12px; color: #222;
	 /*margin: 8px 0 10px; */
	 margin-bottom: 15px;
	 font-weight: 400; }
	 .select-room{margin-bottom: 15px;}
	 input.checkbox{height: 22px;width: 22px;}
	.number-of-room {display: flex; gap: 25px; flex-wrap: wrap; align-items: center; }
	.number-of-room-check{display: flex; gap: 10px; flex-wrap: wrap; align-items: center;}
	.number-of-room label {font-size: 14px; font-weight: 500; color: #000; }
	.room-booking select {background:#fff; border-radius:8px; padding:9px 20px; border:1px solid #ccc; display:flex; gap:10px; align-items:center; box-sizing:border-box; }
	.room-details-bar {background: #F2F2F2; padding: 8px 15px; border-radius: 10px; display: flex; gap: 50px; flex-wrap: wrap; align-items: center; margin-top: 10px; }
	.room-detail-text {font-size: 14px; font-weight: ; }
	.no-of-room-detail {display: flex; gap: 25px}
	.checkin-label {display: flex; gap: 10px; padding-left: 30px; position: relative; padding-bottom: 20px;flex:1; }
	.checkin-label  img {height: auto; max-width: 100%; position: absolute; left: 0; }
	.checkin-date span {font-size: 14px; font-weight: 500; color: #00000060; }
	.checkin-date p {color: #000; margin: 0; padding-top: 5px; }

.right_button{text-align: right;}

	@media(max-width:768px) {
		.room-booking {flex-direction:column; }
		.room-img {width:100%; }
		.room-content {width: 100%; }
	}
	@media(max-width:638px) {
		.room-details-bar {flex-direction: column; align-items: flex-start; gap: 10px; }
		.no-of-room-detail {gap: 10px; }
		.number-of-room {gap: 10px; }
		
	}

/*END room booking */