*,
*::before,
*::after
{
	box-sizing: border-box;
}
*
{
	margin: 0px;
	padding: 0px;
}
body{
	font-size: 1.7rem;
    line-height: 1.75;
}
i,em{
	font-family: Helvetica, Arial !important;
	font-weight: 400;
	font-style: italic;
}  
b,strong{
	font-family: Helvetica, Arial !important;
	font-weight: 600;
}
table, tbody, th{
	font-family: Helvetica, Arial !important;
}

input[type="radio"] {
  -webkit-appearance: none; /* Remove default radio button */
  -moz-appearance: none;
  appearance: none;
  width: 16px;
  height: 16px;
  border: 1px solid #999;
  border-radius: 50%;
  position: relative;
  cursor: pointer;
  transition: all 0.3s ease;
  
}
label{
	font-size: 16px !important;
	line-height: 16px !important;
    font-style: normal !important;
    font-weight: 400 !important;
    text-decoration: none !important;
    font-variant: normal !important;
    font-stretch: normal !important;
    all: unset;	
}
/* When the radio button is checked */
input[type="radio"]:checked {
  border-color: #555; /* Border color when checked */
  background-color: #555; /* Background color when checked */
}

/* Adding a dot to represent the checked state */
input[type="radio"]:checked::after {
  content: '';
  position: absolute;
  top: 0px;
  left: 0px;
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background-color: #555; /* rgb(6, 158, 27)Dot color when checked */
}

/* Optional: hover effect */
input[type="radio"]:hover {
  border-color: #000;
}
.layout{
	border: 1px solid red;
}   


/* ===========================================================sizing */
.sizing-caption{
	margin-left:20px;
	margin-right:20px;
	margin-top:0px;
	margin-bottom:0px;
	padding:0;
	font-size:10px;
}
.sizing-container {
	margin-left:20px;
	margin-right:20px;
	margin-top:0px;
	margin-bottom:0px;
	padding:0;
	display: flex;
	align-items: right;
}
.scrollbar-container {
	flex-grow:1;
	flex-shrink:1;
	margin-top: 0px;
	width: 200px;
	height: 40px;
	margin-right: 10px;
	position: relative;
}
.scrollbar-container-table {
	display: none;
	margin-top: 0px;
	width: 100%;
	height: 20px;
	margin-right: 0px;
	position: relative;
}
.scrollbar {
	width: 100%;
	height: 100%;
	padding:0 !important;
	appearance: none;
	background: #aab1a9;
	border: 1px solid #aab1a9;
	border-radius: 5px;
	outline: none;
	position: absolute;
	top: 0;
	left: 0;
}
.scrollbar-table {
	width: 100%;
	height: 100%;
	padding:0 !important;
	appearance: none;
	background: #aab1a9;
	border: 1px solid #aab1a9;
	border-radius: 5px;
	outline: none;
	position: absolute;
	top: 0;
	left: 0;
}
.scrollbar-table::-webkit-slider-thumb {
    appearance: none;
    width: 60px;
    height: 25px;
    background: url('../images/product_img/slider.png') no-repeat center, black;
	padding:0 !important;
    background-size: contain;
    cursor: pointer;
    border-radius: 5px;
}
.scrollbar-table::-moz-range-thumb {
    width: 60px;
    height: 25px;
	padding:0 !important;
    background: url('../images/product_img/slider.png') no-repeat center, black;
    background-size: contain;
    cursor: pointer;
    border-radius: 5px;
    border: none;
}
/*
.scrollbar-table::-webkit-slider-thumb {
	appearance: none;
	width: 60px;
	height: 25px;
	padding:0 !important;
	background: black;
	cursor: pointer;
	border-radius: 5px;
}
.scrollbar-table::-moz-range-thumb {
	width: 60px;
	height: 25px;
	background: black;
	padding:0 !important;
	cursor: pointer;
	border-radius: 5px;
	border: none;
}
*/
.scrollbar::-webkit-slider-thumb {
    appearance: none;
    width: 60px;
    height: 45px;
    background: url('../images/product_img/slider.png') no-repeat center, black;
	padding:0 !important;
    background-size: contain;
    cursor: pointer;
    border-radius: 5px;
}
.scrollbar::-moz-range-thumb {
    width: 60px;
    height: 45px;
	padding:0 !important;
    background: url('../images/product_img/slider.png') no-repeat center, black;
    background-size: contain;
    cursor: pointer;
    border-radius: 5px;
    border: none;
}
/*
.scrollbar::-webkit-slider-thumb {
	appearance: none;
	width: 60px;
	height: 45px;
	padding:0 !important;
	background: red;
	cursor: pointer;
	border-radius: 5px;
}
.scrollbar::-webkit-slider-thumb::before {
    content: "";
    position: absolute;
    top: 5px;
    left: 5px;
    width: 30px;
    height: 30px;
    background: url('../images/product_img/slider.png') no-repeat center;
    background-size: contain;	
}
.scrollbar::-moz-range-thumb {
	width: 60px;
	height: 45px;
	background: red;
	padding:0 !important;
	cursor: pointer;
	border-radius: 5px;
	border: none;	
}
.scrollbar::-moz-range-thumb::before {
    content: "";
    position: absolute;
    top: 5px;
    left: 5px;
    width: 30px;
    height: 30px;
    background: url('../images/product_img/slider.png') no-repeat center;
    background-size: contain;
}
*/
.textfield-type {
	margin-left: 20px; 
	margin-right: 20px; 
	width: calc(100% - 40px);
	margin-top: 0px;
	margin-bottom: 5px !important;
	padding:0 !important;
	height: 40px !important;
	line-height: 40px !important;
	padding: 0px;
	font-size: 20px !important;
	text-align: center!important;
	font-weight: 600!important;
	border: 1px solid #aab1a9;
	border-radius: 5px;
	background: #dadcd9 !important;
	color:black !important;
}
.textfield {
	margin-top: 0px;
	margin-bottom: 0px !important;
	padding:0 !important;
	width: 120px;
	height: 40px !important;
	padding: 0px;
	font-size: 20px !important;
	text-align: center!important;
	font-weight: 600!important;
	border: 1px solid #000 !important;
	background: white !important;
	color:black !important;
}
.help-container {
	position: relative;
	margin-left: 5px;
}
.help-button {
	margin-top:5px;
	width: 30px;
	height: 30px;
	background-color: black;
	color: white;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	font-size: 20px;
	font-weight: bold;
}
.help-tooltip {
	display: none;
	position: absolute;
	bottom: 100%;
	right: 0;
	background-color: black;
	color: white;
	padding: 10px;
	border-radius: 5px;
	width: 200px;
	z-index: 10;
	margin-top: 10px;
	font-size: 12px;
}
.help-container:hover .help-tooltip {
	display: block;
}
/* =========================================================service */
.service-main-page {
	display: block;
	font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
	line-height: 28px;
	color: #222;	
}
.service-detail{
	display: flex;
	justify-content: center;
	flex-direction: row;
	align-items: flex-start;
	padding-top: 32px;
	padding-left: 32px;
	padding-right: 32px;
	position: relative;         
}  
.service-chat{
	background-color: lightblue;
	display: inline-block;
	width: 350px;
	height: 90px;
	margin-left: 32px;
	position: sticky;
	bottom: 0;
}  
.service-others{
	color: #222;
	display: flex;
	justify-content: center;
	flex-direction: row;
	align-items: flex-start;
	padding-left: 32px;
	padding-right: 32px;
	position: relative;      
}
.service-others-main{
	display: block;
	width: 1302px;
	position: relative;
}  
.service-description{
	display: block;
	flex-direction: column;
	width: 840px;
	margin-right: 64px;
	order: 10;
}
.service-option{
	font-size: 16px !important;
    line-height: 20px !important;

	display: block;
	min-width: 300px;
	width: 420px;
	order: 20;
	padding-bottom: 32px;
	position: sticky;
	top: 64px;
	background-color: #CAD2C8;
}
.s-services{
	padding-top:100px;
}

@media (max-width: 700px) {
	.service-detail{
		margin-left:0px;
		margin-right:0px;
		padding-left:10px;
		padding-right:10px;
	}
	.s-services{
		margin-left:0px;
		margin-right:0px;
		padding-left:10px;
		padding-right:10px;
	}
	.after-order-container{
		margin-left:0 !important;
		margin-right:0 !important;
	}	
	.scrollbar-container-table{
		display:block;
	}
}
@media (max-width: 900px) {
	.service-detail{
		display: block;
	}
	.service-option{
		width: auto;
	}
	.service-description{
		width: auto;
		margin-right: 0px;
		position: relative;
	}
	.after-order-container{
		margin-left:0 !important;
		margin-right:0 !important;
	}
	.scrollbar-container-table{
		display:block;
	}	
}
.service-option-tab-container{
	display: flex;
	justify-content: center;
	flex-direction: row;
	align-items: flex-start;
}
.service-tab{
	display: block;        
	width: 600px; /* make biger for flex rescale */
	text-align: center;

	color: rgb(116, 118, 126);
	border-bottom-color: rgb(218, 219, 221);
	border-bottom-width: 1px;
	background-color: rgb(250, 250, 250);

	border-bottom-style: solid;
	border-left-color: rgb(218, 219, 221);
	border-left-style: solid;
	border-left-width: 1px;
	border-top-color: rgb(218, 219, 221);
	border-top-style: solid;
	border-top-width: 1px;
	cursor: pointer;
	height: 60px;
	line-height: 60px;
	flex-basis: 0%;
	flex-grow: 1;
	flex-shrink: 1;
	font-size: 16px;
	font-weight: 700;
}
.service-tab1{
	color: rgb(34, 35, 37);
	border-bottom-color: rgb(34, 35, 37);
	border-bottom-width: 3px; 
	background-color: rgb(255, 255, 255);           
}
.service-tab2{
	color: rgb(116, 118, 126);
	border-bottom-color: rgb(218, 219, 221);
	border-bottom-width: 1px;
	background-color: rgb(250, 250, 250);            
}
.service-tab3{
	color: rgb(116, 118, 126);
	border-bottom-color: rgb(218, 219, 221);
	border-bottom-width: 1px;
	background-color: rgb(250, 250, 250);

	border-right-color: rgb(218, 219, 221);
	border-right-style: solid;
	border-right-width: 1px;           
}
.service-option-detail-basic{
	display:    block;
}
.service-option-detail-standard{
	display:    none;
}
.service-option-detail-premium{
	display:    none;
}
.service-option-detail-header{
	display: flex;
	justify-content: flex-end;
	flex-direction: row;
	align-items: flex-start;
	margin: 32px 16px 0px 16px;
}
.service-option-detail-header-title{
	display: block;
	flex-shrink: 1;
	flex-grow: 1;
}
.payment-info h2 {
	text-align: center;
	color: #333;
}
.payment-info p {
	margin: 10px 0;
}
.bank-details {
	margin-top: 20px;
	line-height:22px;
	padding: 10px;
	border: 1px solid #ccc;
	border-radius: 5px;
	background-color: #fff;
}
.paypal-button {
	margin-top: 10px;
	height:50px;
	line-height:22px;
	padding: 10px;
	border: 1px solid #ccc;
	border-radius: 5px;
	background-color: #ffc360;
	cursor: pointer;
}
.bank-details strong {
	display: block;
	margin: 5px 0;
}
.service-option-detail-header-cost{
	display: block;
}
.service-option-detail-description{
	
	display: block;
	margin: 0px 16px 8px 16px;
}
.service-option-detail-feature{
	display: flex;
	justify-content: flex-start;
	flex-direction: row;
	align-items: flex-start;
	margin: 0px 16px 16px 16px;
}
.service-option-detail-feature2{
	display: flex;
	justify-content: flex-start;
	flex-direction: column;
	align-items: flex-start;
	margin: 0px 16px 16px 16px;
}
.service-option-detail-feature-item{
	margin-top:16px;
	display: block;
	padding-right: 15px;
}
.service-option-detail-continue{
	display: flex;
	justify-content: flex-end;
	flex-direction: row;
	align-items: flex-start;
	margin: 32px 16px 32px 16px;
	background-color: #222;
	height: 50px;
	line-height: 50px;
	color: #ddd;
	border-radius: 10px;
	cursor: pointer;
}.service-option-detail-continue:hover{
	background-color: #000;
	color: #fff;
}
.contactbut{
	line-height: 50px;

}
.service-option-contact{
	display: block;
	margin: 32px 16px 32px 16px;
	height: 50px;
	line-height: 50px;
	border-radius: 10px;
	cursor: pointer;
	border: 1px solid black;
	color: black;
	text-align: center;
}
/* =========================================================service description */
.service-title{
	font-size: 28px;
	font-weight: 700;
	margin-bottom: 32px;
}
.service-sub-title{
	font-size: 20px;
	font-weight: 700;
	margin-top:20px;
	margin-bottom: 20px;
}
p{
	margin-bottom: 16px;
}
.service-note{
	padding-top: 16px;
	padding-bottom: 16px;
	padding-left: 50px;
	padding-right: 50px;
	border: 1px solid lightgray;
	margin-top: 32px;
	margin-bottom: 32px;
}
.description-content{
	margin-bottom: 32px;
}
/* =========================================================Compare */
table{
	box-sizing: content-box;
	padding: 8px;
}
table, tbody, th, td {
	border-collapse: collapse;
	border: 1px solid #999;
	padding: 8px !important;
}

	
.package-row-label{
	width:25%;
}
.package-type-price{
	width:25%;
}
.table-cost{
	display:block;
	font-size: 20px;
	font-weight: 400;  
	margin-bottom: 8px;      
}
.table-package-name{
	display:block;
	font-size: 20px;
	font-weight: 900;  
	margin-bottom: 8px; 
	vertical-align: top !important;	
}
.table-package-totalprice{
	display:block;
	font-size: 18px;
	font-weight: 700;  
	margin-bottom: 8px;      
}
.table-package-desc{
	display:block;
	font-size: 16px;
	font-weight: 600; 
	line-height: 16px;
}
.table-package-detail{
	display:block;
	font-size: 12px;
	font-weight: 400;
	margin-top: 8px;    
	margin-bottom: 8px;      
	line-height: 16px;
} 
.package-select{
	text-align: center;
	display: block;
	background-color: #222;
	height: 50px;
	width: 100%;
	line-height: 50px;
	color: #ddd;
	border-radius: 10px;
	cursor: pointer;
	font-size: 16px;
	font-weight: 700; 
}
.package-select:hover{
	background-color: #000;
	color: #fff;
}
.service-table-compare{
	margin-bottom: 32px;
}
th {
	vertical-align: top !important;	
}
/* =========================================================FAQ */
.service-faq-question{
	margin-top: 16px;
	display: flex;
	justify-content: flex-end;
	flex-direction: row;
	align-items: flex-start;
}
.service-faq-ask{         
	font-weight: 600;
	text-align: left;
	flex-grow: 1;
	flex-shrink: 1;
}
.service-faq-arrow{
	font-weight: 600;
}
.service-faq-arrow .fa {
	transition: transform 0.3s ease; /* Smooth rotation */
}
.service-faq-answer{
	border-bottom: 1px solid #999;
	max-height: 0; 
	overflow: hidden; 
	transition: max-height 0.3s ease; 
} 
.answer-content {
	padding-top: 16px;
	padding-bottom: 16px;
}

/* =========================================================other services */
.services-container{
	display: flex;
	justify-content: center;
	flex-direction: row;
	align-items: top;
	gap: 16px;
	flex-wrap: wrap;
}
.services-item{
	display: block;
	width:  400px;
	height: auto;
}

.services-image{
	width: 100%;
	border-radius: 10px;
}
.services-title{
	font-weight: 600;
	line-height:20px;
}
.services-desc{
	padding-top:24px;
	font-size: 10px;
	line-height: 20px;
	font-weight: 500;
}
.services-start-cost{
	font-weight: 700;
	font-size: 18px;
	margin-top: 16px;
}
.services-photo{
	cursor: pointer;
}

/* =========================================================gallery */ 
.service-images{
	position: relative;
	display: block;
}
.service-images-label{
	font-size:10px;
	text-align:right;
	position: absolute;
	top: 0px;
	right: 8px;
	color: #CCCCCC; /* Text color */
	text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.8);
}
.service-images-button-container{
	display: inline-block;
	width: auto;
	text-align: center !important;
	position: absolute;
	top: calc(50% + 24px);
	left: 50%;
	transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
}
.service-images-button{
	font-size: 18px !important;
	text-align: center !important;
	cursor:pointer;
	width: 48px;
	height: 48px;
	background-color: white;
	color: black;
	border-radius: 24px;
	position:absolute;
	line-height: 48px;
	top:-48px;
	box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
	user-select: none;
}
.service-images-button-left{
	float: left !important;
	left:-24px;
}
.service-images-button-left:hover {
	color: #b4aa50 !important;
}
.service-images-button-right{
	float: right !important;
	right:-24px;
}
.service-images-button-right:hover {
	color: #b4aa50 !important;
}
.service-images-marker-container{
	display: inline-block;
	width: auto;
	text-align: center !important;
	margin-top: 16px !important;
	margin-bottom: 16px !important;
	color: #fff !important;
	position: absolute;
	left: 50%;
	bottom: 0;
	transform: translate(-50%, -30px);
	-ms-transform: translate(-50%, -30px);
}
.service-images-marker{
	background-color: #000;
	color: black;
	display: inline-block;
	padding-left: 8px;
	padding-right: 8px;
	text-align: center;  
	cursor:pointer; 
	height:13px;
	width:13px;
	padding:0;         
	border-radius: 50%;
	border: 1px solid #ccc !important;
	background-color: transparent !important; 
}
.service-images-marker:hover {
	color: #fff !important;
	background-color: #555 !important;
}
.w3-gray,
.w3-gray:hover {
	color: #000 !important;
	background-color: #ccc !important;
}
.mySlides {
	display:    none;
	width:  100%;
	/* padding-bottom: 42px; */
	border: 1px solid #999;
}

/* ===============================================================for the right page came in*/
.overlay {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.5);
	z-index: 999; 
	display: none; 
}
@keyframes slideIn {
	from {
		right: -100%;
	}
	to {
		right: 0;
	}
}
.top-page {
	position: fixed;
	top: 0;
	right: -480px; 
	width: 455px; 
	height: 100%;
	background: white;
	box-shadow: 0 0 20px rgba(0, 0, 0, 0.3);
	z-index: 1000;
	overflow: auto; 
	display: none; 
	animation: slideIn 0.3s forwards; 
}
body.no-scroll {
	overflow: hidden; 
}

/* ===============================================================for the right page*/
.top-page{
	display: flex;
	justify-content: flex-start;
	flex-direction: column;
	align-items: flex-start;
	font-size: 18px !important;
	line-height: 20px !important;
}
.top-page-header{
	display: flex;	
	justify-content: flex-end;
	flex-direction: row;
	align-items: center;
	height: 30px;
	padding: 24px 16px 24px 20px;    
	border-bottom: 1px solid rgb(181, 182, 186);  
	position: sticky;
	top: 0;
	z-index: 1500;
	background-color: white;
}
.top-page-header-title{
	flex-grow: 1;
	flex-shrink: 1;
	height: 30px;
	line-height: 30px;
	text-align: left;
	font-size: 16px;
	font-weight: 500;
	width:400px; /*make it overflow */
}
.top-page-header-x{
	display: block;	
	height: 30px;
	width: 30px;
	line-height: 30px;
	text-align: right;
	cursor: pointer;
}
.top-page-container{
	display: block;	
	flex-grow: 1;
	flex-shrink: 1;
	min-height: calc(100% - 130px);
	z-index: 1001;
	padding: 16px 16px 16px 16px;   
}
.top-page-container-package{
	height: auto;
	width: 100%;
	border: 2px solid black;
	border-radius: 10px;
	margin-bottom: 16px;
	padding: 16px 16px 16px 16px;   
}
.top-page-container-package-become{
	display: flex;
	justify-content: flex-end;
	flex-direction: row;
	align-items: flex-start;
	padding-top: 8px;
}
.top-page-container-package-header{
	display: flex;
	justify-content: flex-end;
	flex-direction: row;
	align-items: flex-start;
	padding-bottom: 12px;
	border-bottom: 1px solid #ccc;
	margin-bottom: 12px;
}
.top-page-container-package-header-title{
	display: block;
	flex-shrink: 1;
	flex-grow: 1;
}
.top-page-container-package-header-cost{
	display: block;
}
.top-page-container-package-check{
	display: block;
	width: 16px; 
	height: 16px; 
	transform: scale(1.25); 
	margin-right: 10px;
	margin-bottom: 10px;
}
.top-page-container-package-description{
	display: block;
}
.top-page-container-package-delevery{
	display: block;
	margin-top: 8px;
}
.top-page-quantity-container{
	display: flex;
	justify-content: flex-end;
	flex-direction: row;
	align-items: center;
	margin-top: 12px; 
	padding-top: 16px;
	padding-bottom: 0px;
	border-top: 1px solid #ccc;
	height:40px;            
}
.top-page-quantity-but{
	display: block;
	width: 36px;
	height: 36px;
	border-radius: 18px;
	border: 1px solid #ccc;
	text-align: center;
	line-height: 36px;
	flex-grow: 0;
	flex-shrink: 0;
	cursor: pointer;
}
.top-page-quantity-title{
	display: block;
	text-align: left;
	height: 28px;
	width: 400px; /* maximum */
	flex-grow: 1;
	flex-shrink: 1;
}
.after-order-container{
	display:flex;
	justify-content: center;
	flex-direction: center;
	margin-left:5%;
	margin-right:5%;
}
.after-order{
	width:1000px;
	flex-grow: 1;
	flex-shrink: 1; 
	text-align:center;
}
.top-page-quantity-amount{
	display: block;
	width: 36px;
	height: 36px;
	text-align: center;
	line-height: 36px;
	font-size: 18px;
	font-weight: 600;
	flex-grow: 0;
	flex-shrink: 0;
}

.top-page-container-option{
	height: auto;
	width: 100%;
	border: 1px solid #ccc;
	border-radius: 10px;
	margin-bottom: 16px;
	padding: 16px 16px 16px 16px;   
}     
.top-page-container-sumarry{
	height: auto;
	width: 100%;
	border: 1px solid #ccc;
	background-color: #eee;
	border-radius: 10px;
	margin-bottom: 16px;
	padding: 16px 16px 16px 16px;   
}   
.top-page-container-sumarry-header{
	border-bottom: 1px solid #aaa;
	padding-bottom: 12px;
}
.top-page-container-sumarry-header-cost{
	font-size: 22px;
	font-weight: 600;
}
.top-page-container-sumarry-item{
	padding-top: 12px;
}
.top-page-container-sumarry-item-list{
	padding-left: 24px;
}
.top-page-footer{
	display: block;
	height: 100px;
	padding: 16px 16px 16px 16px;   
	border-top: 1px solid rgb(181, 182, 186);   
	position: sticky;
	bottom: 0;
	z-index: 1500;
	background-color: white;
}
.proceed-button{
	height: 48px;
	width: 100%;
	background-color: black;
	color: white;
	cursor: pointer;
	font-size: 16px;
	line-height: 48px;
	font-weight: 600;
	text-align: center;
	border-radius: 10px;
}
.proceed-button-message{
	color: black !important;
	text-align: center;
	margin-top: 8px;  
}
.notbold{
    font-style: normal !important;
    font-weight: 400 !important;
    text-decoration: none !important;
    font-variant: normal !important;
    font-stretch: normal !important;
    all: unset;
}