/* 
Theme Name:		 Hello Elementor - Child
Theme URI:		 http://childtheme-generator.com/
Description:	 Hello Elementor Child
Author:			 the WordPress team
Author URI:		 https://elementor.com/hello-theme/
Template:		 hello-elementor
Version:		 1.0.0
Text Domain:	 hello-elementor-child
*/

/* General CSS */
.fw-box-sizing, 
.fw-box-sizing *{-webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; outline: none;}
.fw-clearfix:before, .fw-clearfix:after{content: ""; display: table;}
.fw-clearfix::after{clear: both;}
.fw-packages-add-ons-wrap .added_to_cart.wc-forward{display: none !important;}
.fw-link-disabled{pointer-events: none !important;}
.fw-add-ons-qty-wrap .quantity{border: 1px solid #999; border-radius: 50px; display: inline-block; padding: 5px 15px; line-height: normal;}
.fw-add-ons-qty-wrap .quantity button{border: none !important; background: none !important; padding: 3px !important; color: #c36 !important;}
.fw-add-ons-qty-wrap .quantity input{border: none !important; text-align: center; padding: 0; width: 15px; outline: none !important;}
.fw-loader{display: inline-block; border: 4px solid #f4e9f2; border-radius: 50%; border-top: 4px solid #8a1a75; width: 12px; height: 12px; -webkit-animation: fw-spin 2s linear infinite; animation: fw-spin 2s linear infinite; margin-left: 5px;}
.fw-packages-step-col .fw-right-arrow svg path{fill: #ffffff;}
span.fw-right-arrow{display: inline-block; vertical-align: middle;}
span.fw-right-arrow svg{width: 13px; height: 13px; line-height: 13px;}

/* Chrome, Safari, Edge, Opera */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button{-webkit-appearance: none; margin: 0;}

/* Firefox */
input[type=number]{-moz-appearance: textfield;}

/* Safari */
@-webkit-keyframes fw-spin {
	0% { -webkit-transform: rotate(0deg); }
	100% { -webkit-transform: rotate(360deg); }
}

@keyframes fw-spin {
	0% { transform: rotate(0deg); }
	100% { transform: rotate(360deg); }
}

/* Packages Shortcode CSS */
.fw-packages-steps-inr{display: flex; align-items: center; justify-content: space-between; background-color: #f7eff5; border-radius: 10px; padding: 15px 20px;}
.fw-packages-step-img-wrap{font-size: 0;}
.fw-packages-step-no{background-color: #acacac; width: 30px; height: 30px; display: inline-block; line-height: 29px; text-align: center; border-radius: 50%; color: #fff;}
.fw-packages-step-text{margin-left: 8px; font-size: 15px; font-weight: 600;}
.fw-package-continue-btn{display: inline-block; font-size: 14px; background-color: #8a1a75; color: #fff !important; padding: 10px 25px; line-height: normal; border-radius: 20px; text-decoration: none;}
.fw-package-continue-btn span{padding-left: 15px;}

.fw-packages-list-wrap{margin-top: 40px; line-height: normal;}
.fw-packages-ttl{font-size: 24px; border-bottom: 1px solid #8a1a75; display: inline-block; margin-bottom: 25px; padding-bottom: 10px;}
.fw-packages-desc{font-size: 16px; font-weight: 600; color: #8a1a75; margin-bottom: 8px;}
.fw-packages-cont{margin-bottom: 70px;}
.fw-packages-grid-wrap{margin-top: 50px; display: flex; gap: 20px;}
.fw-packages-grid{position: relative; border: 2px solid #8a1a75; padding: 25px; border-radius: 50px 50px 0 0;flex-basis: 33.33%;}
.fw-packages-grid.fw-product-active{background-color: #f4e9f2; color: #8a1a75 !important;}
.fw-packages-grid .fw-added-to-cart,
.fw-package-add-to-cart-btn{display: flex; align-items: center; gap: 10px; min-width: 140px; justify-content: center; background-color: #fff; color: #8a1a75; padding: 10px 15px; border-radius: 50px; text-decoration: none; position: absolute; top: -20px; left: 50%; transform: translateX(-50%); border: 2px solid #8a1a75; font-weight: 600;}
.fw-product-active.fw-packages-grid .fw-added-to-cart{background-color: #8A1A75; color: #fff;}
.fw-package-title{font-size: 25px; color: #000000; text-align: center; margin: 20px 0; font-weight: 600;}
.fw-product-active .fw-package-title{color: #8a1a75;}
.fw-package-price{text-align: center; position: absolute; bottom: 25px; left: 0; right: 0; cursor: pointer;}
.fw-package-price span{background-color: #ededed; padding: 10px 50px; display: inline-block; border-radius: 50px; font-size: 25px; color: #8a1a75; font-weight: 600; border: 2px solid #8a1a75;}
.fw-product-active .fw-package-price span{background-color: #8a1a75; color: #ffffff;}
/*.fw-product-active .fw_add_to_cart{display: none;}*/
.fw-packages-cont ul li{position: relative; margin-bottom: 10px; padding-left: 30px; list-style: none;}
.fw-packages-cont ul li:last-child{margin-bottom: 0;}
.fw-packages-cont ul li:before{content: ""; position: absolute; top: 5px; left: 0; background-image: url('assets/images/bullet-icon-black.svg'); width: 16px; height: 16px; background-size: contain; background-repeat: no-repeat;}
.fw-product-active .fw-packages-cont ul li:before{background-image: url('assets/images/bullet-icon.svg');}
.fw-packages-grid-inr a .fw-cart-icon,
.fw-packages-grid-inr a .fw-cart-icon svg,
.fw-packages-grid-inr a .fw-cart-added-icon,
.fw-packages-grid-inr a .fw-cart-added-icon svg{width: 22px; height: 22px; line-height: 22px;}

/* Add-Ons Shortcode CSS */
.fw-add-ons-wrap{margin-top: 40px;}
.fw-add-ons-grid-wrap{margin-top: 40px; display: flex; height: 100%; flex-wrap: wrap;}
.fw-add-ons-grid{flex-basis: 50%;}
.fw-add-ons-grid-inr{position: relative; display: flex; min-height: 370px; margin: 15px 10px; border: 2px solid #8a1a75; padding: 10px;}
.fw-add-ons-grid-left{flex-basis: 50%;}
img.fw-add-ons-img{height: 100%;}
.fw-add-ons-grid-right{flex-basis: 50%; padding-left: 15px;}
.fw-add-ons-top-cnt{display: flex;}
.fw-add-ons-title{flex-basis: 60%; color: #000; font-size: 18px; font-weight: bold;}
.fw-add-ons-price{flex-basis: 40%; font-size: 22px; color: #8a1a75;}
.fw-add-ons-desc{margin-top: 15px;}
.fw-add-ons-btn-wrap{position: absolute; right: 10px; bottom: 10px; display: flex; align-items: center; gap: 15px; justify-content: flex-end;}
.fw-add-ons-add-to-cart-btn,
.fw-remove-from-cart{color: #8a1a75 !important; border: 2px solid #8a1a75; border-radius: 50px; padding: 8px 20px; display: flex; align-items: center; justify-content: center; text-decoration: none; font-weight: bold;}
.fw-checkout-btn-wrap{text-align: center; margin-top: 30px;}
.fw-checkout-btn{display: inline-block; color: #8a1a75 !important; border: 2px solid #8a1a75; border-radius: 50px; padding: 10px 20px; line-height: normal; text-decoration: none;}
.fw-add-ons-grid-inr a span.fw-cart-icon,
.fw-add-ons-grid-inr a span.fw-cart-icon svg{width: 20px; height: 20px; line-height: 20px; padding-left: 4px;}

/* Checkout Page CSS */
a.fw-back-btn{display: inline-block; font-size: 14px; background-color: #8a1a75; color: #fff !important; padding: 10px 25px; line-height: normal; border-radius: 20px; text-decoration: none;}
.fw-step-complete .fw-packages-step-no{background-color: #000000;}
.fw-step-active .fw-packages-step-no{background-color: #8a1a75;}
.fw-step-complete .fw-packages-step-text{color: #000000;}
.fw-step-active .fw-packages-step-text{color: #8a1a75;}
.fw-personal-details-list-wrap{margin-top: 30px;}
.fw-personal-details-list{background-color: #e7e7e7; padding: 30px; margin-bottom: 20px; border-radius: 10px; text-align: center;}
.fw-personal-details-list.fw-detail-active{background-color: #f7eff5;}
.fw-personal-details-sub-ttl{color: #8a1a75; font-size: 15px; font-weight: bold;}
.fw-personal-details-ttl{font-size: 24px; font-weight: bold; color: #000; margin-top: 10px;}
.fw-personal-details{margin-top: 20px;}
.fw-choose-personal-detail-btn{display: inline-block; line-height: normal; border: 2px solid #8a1a75; padding: 8px 20px; border-radius: 50px; color: #8a1a75; font-weight: bold; cursor: pointer;}
.fw-personal-details-inr{display: flex; gap: 15px; align-items: flex-start;}
.fw-personal-details-left{flex-basis: 70%;}
.fw-personal-details-right{flex-basis: 30%; background-color: #f7eff5; padding: 25px 10px; margin-top: 30px; border-radius: 10px; line-height: normal;}
.fw-order-info-ttl{font-size: 20px; font-weight: bold; line-height: normal;}
.fw-form-row-3{display: flex; clear: both;}
.fw-form-col3{display: inline-block; width: 32.9%;}

.fw-order-item{display: flex; gap: 10px; background-color: #dcbad5; padding: 10px; margin-top: 10px; border-radius: 10px; min-height: 60px;}
.fw-order-item-left{flex-basis: 40%;}
.fw-order-item-img{height: 100% !important;}
.fw-order-item-right{position: relative; flex-basis: 100%;}
.fw-order-item-left + .fw-order-item-right{flex-basis: 60%;}
.fw-order-item-name{font-weight: bold; line-height: normal; margin-bottom: 40px;}
.fw-order-sub-total-wrap{border-bottom: 1px solid #999999; padding-bottom: 5px; margin-top: 15px; display: flex; justify-content: space-between; font-size: 14px; font-weight: bold;}
.fw-coupon-item{display: flex; justify-content: space-between; font-size: 14px; margin-top: 10px; font-weight: bold;}
.fw-order-total-wrap{margin: 15px 0 30px 0; display: flex; justify-content: space-between; font-size: 17px; font-weight: bold;}
.fw-order-item-pq-wrap{display: flex; position: absolute; bottom: 10px; width: 100%;}
.fw-order-item-price,
.fw-order-item-qty{flex-basis: 50%;}
.woocommerce form.checkout_coupon{display: flex !important; padding: 3px; justify-content: space-between; align-items: center;}
.woocommerce form.checkout_coupon p.form-row{padding: 0; width: auto; float: none; margin: 0 0 0 auto;}
.woocommerce form.checkout_coupon p.form-row:first-child{margin: 0;}
.woocommerce form.checkout_coupon input#coupon_code{border: 0; background-color: transparent; height: auto; line-height: 22px;}
.woocommerce form.checkout_coupon button.button{background-color: #8a1a75; color: #ffffff;}
.fw-proceed-to-payment-wrap{text-align: center; margin-top: 20px; display: inline-block; width: 100%;}
a.fw-proceed-to-payment-btn{display: inline-block; background-color: #8a1a75; color: #ffffff !important; padding: 10px; border-radius: 5px; text-decoration: none !important; font-size: 14px; width: 80%;}
.fw-field-heading-ttl{font-size: 20px; font-weight: 700; text-align: left; margin: 15px 0 !important; display: inline-block; width: 100%;}
.thwcfd-field-wrapper label{text-align: left; font-weight: bold;}
.fw-form-field{border-color: #8a1a75;}
.fw-select2 + .select2-container .select2-selection--single{height: 32px;}
.fw-select2 + .select2-container--default .select2-selection--single{border-color: #8a1a75;}
.fw-select2 + .select2-container--default .select2-selection--single .select2-selection__rendered{line-height: 32px;}
.thwcfd-field-paragraph{text-align: left;}

.fw-checkout-page .fw-personal-details-left{flex-basis: 80%;}
.fw-order-payment-wrap{margin-top: 30px;}
.fw-checkout-page .fw-personal-details-right{display: none;}
.fw-checkout-ttl{font-size: 25px; font-weight: bold; margin-bottom: 15px;}
.fw-checkour-desc{font-size: 13px;}
.woocommerce-checkout #payment{margin-top: 25px; background: transparent;}
ul.wc_payment_methods.payment_methods.methods{border: 1px solid #8a1a75 !important; border-radius: 5px;}
.woocommerce form .form-row.place-order{margin-top: 30px; padding: 0 !important;}
.woocommerce #payment #place_order,
.woocommerce-page #payment #place_order{float: none; width: 100%; padding: 15px; line-height: normal; background-color: #8a1a75;}
.woocommerce-NoticeGroup.woocommerce-NoticeGroup-checkout{margin-top: 30px;}

#gifting_date_field .woocommerce-input-wrapper{width: 100%; display: inline-block; text-align: left;}
#gifting_date_field .woocommerce-input-wrapper #gifting_date{width: 47%;}
#gift_message_field .description{display: inline-block; width: 100%; text-align: left; margin-bottom: 8px;}
#gift_message_field #gift_message{width: 100%; resize: none !important;}
.fw-woocommerce-noticegroup .woocommerce-error{border-radius: 10px;}
.fw-woocommerce-noticegroup .woocommerce-error li{margin-bottom: 7px;}
.woocommerce form .form-row.woocommerce-invalid input.input-text{border-color: #a00 !important;}

.place-order button#place_order{position: relative;}
.place-order button#place_order:before{content: ""; position: absolute; background-image: url('assets/images/lock-icon.svg'); width: 20px; height: 20px; background-size: contain; background-repeat: no-repeat; left: 42%;}

/* Responsive CSS */
@media only screen and (max-width: 767px) {

	/* Step Progress */
	.fw-packages-steps-inr{flex-direction: column; gap: 10px; align-items: flex-start;}

	/* Packages & Add-Ons CSS */
	.fw-packages-grid-wrap,
	.fw-add-ons-grid-wrap{flex-direction: column;}
	.fw-packages-grid,
	.fw-add-ons-grid{margin-bottom: 30px;}
	.fw-packages-grid:last-child,
	.fw-add-ons-grid:last-child{margin-bottom: 0;}
	.fw-add-ons-grid-inr{flex-direction: column;}
	.fw-add-ons-grid-right{padding-left: 0; padding-top: 15px;}
	.fw-add-ons-btn-wrap{position: relative; padding-top: 15px; right: unset; justify-content: flex-start;}

	/* Checkout Page CSS */
	.fw-personal-details-inr{flex-direction: column;}
	.woocommerce form .form-row-first,
	.woocommerce form .form-row-last,
	.woocommerce-page form .form-row-first,
	.woocommerce-page form .form-row-last{width: 100%;}
	.fw-form-row-3{flex-direction: column;}
	.fw-form-col3{width: 100%;}
	.place-order button#place_order::before{left: 28%;}
	.fw-checkout-page .fw-personal-details-left{flex-basis: 100%;}
	.fw-personal-details-right{flex-basis: 100%;}
}