@import url("https://fonts.googleapis.com/css2?family=Open+Sans:wght@300;400&family=Poppins:wght@300;400&display=swap");

#grad-portal-modal {
	position: fixed;
	background: #c8c8c859;
	top: 0;
	border: 0;
	left: 0;
	right: 0;
	height: 100%;
	z-index: 9999;
	display: flex;
	justify-content: center;
	align-items: center;
}
#grad-portal-modal-loader {
	position: absolute;
}
.grad-grid {
	display: grid;
}
#grad-cart-wrap * {
	transition: all 0.3s;
}
#grad-cart-body > div:first-child {
	display: block;
}
.fooevents-attendee {
	border: 1px solid #ddd;
	padding: 20px 25px;
	margin-bottom: 25px;
}
.woocommerce-billing-fields__field-wrapper {
	border: 1px solid #ddd;
	padding: 20px 25px;
	height: 205px;
}
h3.fooevents-eventname {
	font-size: 18px;
	font-weight: 700;
	line-height: 2em;
	padding: 20px 2px;
}
.grad-cart_step {
	text-align: center;
	cursor: pointer;
	border-bottom: 4px solid #e7e7e7;
	padding-bottom: 30px;
	pointer-events: none;
}
.grad-cart_step.active {
	border-color: #ee3d29;
}
.grad-cart_step:hover {
	border-color: #07b3ac;
}
.grad-cart_step_icon {
	max-width: 50%;
	width: 60px;
}
.entry-content .grad-cart_step_name {
	font-size: 16px;
	margin: 10px;
	font-weight: 300;
}
.grad-cart_content {
	min-height: 300px;
	margin-top: 30px;
}
body .grad-cart_content_title {
	line-height: 22px;
	font-size: 22px;
	text-transform: uppercase;
	font-family: "Poppins", sans-serif;
	margin-bottom: 10px;
	padding-top: 20px;
}
.grad-cart-form h4 {
	font-weight: 300;
	border-bottom: 2px solid #c7c7c75e;
	margin: 30px 0 15px 0;
	padding-bottom: 4px;
	text-transform: capitalize;
	font-family: "Poppins", sans-serif;
}
#grad-cart-wrap p,
#grad-cart-wrap li {
	margin: 4px;
	font-size: 16px;
}
.desktop .grad-cart-row {
	grid-template-columns: repeat(4, 1fr);
	gap: 30px;
}
.grad-cart-row > p {
	display: inherit;
}
.desktop #grad-student-info {
	grid-template-columns: 1fr 1fr;
}
#grad-cart-wrap select {
	background-position-y: calc(100% - 16px);
}
#grad-cart-wrap [disabled] {
	background: #f1efef5c;
}
#grad-student-guests {
	margin: 0 auto;
}
table.shop_table.woocommerce-checkout-review-order-table .grad-cart-icon {
	display: none;
}
td.product-name dl.variation {
	width: 550px;
}
.e-checkout__container {
	display: flex;
	padding: 0px;
	gap: 25px;
}

div#order_review td.product-name {
	font-size: 14px;
	gap: 10px;
}
.e-checkout__column.e-checkout__column-start {
	width: 70%;
}
.e-checkout__column.e-checkout__column-end {
	width: 32%;
}

@media only screen and (max-width: 1550px) {
	.e-checkout__column.e-checkout__column-start {
		width: 50%;
	}
	.e-checkout__column.e-checkout__column-end {
		width: 50%;
	}
}
body .grad-guest-btn {
	height: 32px;
	width: 32px;
	line-height: 32px;
	padding: 0;
	margin-left: 10px;
	font-size: 28px;
}
.desktop .grad-cart-guest-row {
	display: flex;
	gap: 11.5px;
	margin-bottom: 10px;
}
.mobile .grad-cart-guest-row > input,
.mobile .grad-cart-guest-row > select {
	width: 100%;
	margin-bottom: 10px;
}
.mobile .grad-cart-guest-row > div {
	display: grid;
	gap: 10px;
	margin-top: 10px;
}
.mobile .grad-cart-guest-row {
	margin-top: 20px;
}
.mobile .grad-cart_step_icon {
	margin-bottom: 7px;
}
.grad-cart_content .grad-0m {
	margin: 0;
}
#grad-dress-thumb {
	height: auto;
	max-height: 400px;
	margin-top: 20px;
}
#grad-frame-plans,
#grad-photo-plans {
	display: grid;
	gap: 30px;
	margin: 30px 0;
}
/*.desktop #grad-frame-plans,
.desktop #grad-photo-plans {
    grid-template-columns: repeat(4, 1fr);
}*/
.grad-photo-plan,
.grad-frame-plan {
	border: 1px solid #e1e1e14f;
	text-align: center;
	border-radius: 6px;
	padding: 20px;
}
.grad-photo-plan:hover,
.grad-frame-plan:hover {
	box-shadow: rgb(9 30 66 / 25%) 0px 8px 16px -4px,
		rgb(9 30 66 / 31%) 0px 0px 1px;
}
.grad-photo-plan > h2,
.grad-frame-plan > h2 {
	font-size: 20px;
	font-weight: 300;
	font-family: "Poppins", sans-serif;
	margin-bottom: 5px;
}
.grad-atc-compact {
	background: #07b3ac;
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	text-align: center;
	border: 1px solid #07b3ac;
	color: #fff;
	cursor: pointer;
	font-size: 16px;
	line-height: 32px;
}
.grad-qty {
	background: #fff;
	color: #07b3ac;
	cursor: default;
}
#grad-cart-body #order_review td.product-name {
	display: block;
}
#grad-cart-body .elementor-shortcode #order_review td.product-name {
	display: flex;
	gap: 6px;
}
#grad-cart-body #order_review td.product-name .variation {
	margin-left: 15px;
}
#grad-cart-body > div,
#grad-guest-limit,
.woocommerce-shipping-fields,
.grad-cart_checkout-wrap #grad-cart-next,
.grad-cart_register-wrap #grad-cart-prev,
.mobile .grad-cart_step_name {
	display: none;
}
.desktop.woocommerce-page.woocommerce-checkout form #customer_details.col2-set,
.desktop.woocommerce-page.woocommerce-checkout form #order_review_heading,
.desktop.woocommerce-page.woocommerce-checkout form #order_review {
	width: 100%;
}
.desktop #grad-cart-next,
.desktop #grad-cart-nav-next {
	float: right;
}
#grad-cart-body label {
	cursor: pointer;
}
#grad-portal_login p label {
	display: inherit;
}
.already-in-cart {
	text-align: center;
	font-weight: 700;
	color: #007700;
}
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
	font-size: 15px;
	line-height: 12px;
}
.woocommerce-js a.return-to-cart {
	background-color: #ff6600;
	color: white;
	padding: 8px 20px;
	text-decoration: none;
	border-radius: 5px;
	display: inline-block;
	width: 100%;
	text-align: center;
	display: block;
	margin: 10px 0;
}
.return-to-cart:hover {
	background-color: #005580;
}
h2.grad-toggle-title {
	cursor: pointer;
	background: #f4f4f4;
	margin-bottom: 0;
	border-bottom: 1px solid #e9e6e6;
	padding: 10px;
	font-size: 16px;
	font-weight: 300;
}
.grad-toggle:last-of-type h2.grad-toggle-title {
	border-bottom: 0;
}
.grad-toggle-content {
	padding: 20px 0;
}
.desktop .grad-toggle-content {
	display: grid;
	gap: 30px;
	grid-template-columns: 1fr 1fr;
}
.grad-toggle-atts h3 {
	font-size: 14px;
	margin-bottom: 0;
	font-family: "Poppins", sans-serif;
}
.grad-toggle-atts > div > div {
	display: grid;
	gap: 10px;
	margin-bottom: 20px;
	grid-template-columns: 1fr 3fr;
}
.mobile .grad-toggle-atts > div {
	grid-template-columns: auto;
}
.login-username,
.login-password {
	display: block;
}
.login-submit {
	text-align: right;
}
.login-username label,
.login-password label,
.login-username input,
.login-password input {
	width: 100%;
}
h2.grad-prod-title {
	font-size: 22px;
	font-family: "Poppins", sans-serif;
	text-transform: uppercase;
}
.grad-toggle-icons {
	display: grid;
	/*    grid-template-columns: 1fr 1fr 1fr 1fr;*/
	gap: 10px;
	max-width: 100%;
	margin-top: 10px;
}
#grad-cart-wrap .grad-prod-desc {
	margin: 20px 0;
}
.grad-cart-form .empty {
	border: 2px solid #ff00008a !important;
}
.grad-cart_step_icon {
	width: 120px;
}
#grad-cart-wrap .woocommerce .col2-set .col-1 {
	float: inherit;
	width: inherit;
}
.grad-btns {
	display: inline-flex;
	gap: 10px;
}
.desktop #grad-guest-section {
	display: grid;
	grid-template-columns: repeat(12, 1fr);
	margin-top: 40px;
	gap: 20px;
}
.desktop #grad-student-img,
.desktop #grad-guest-img {
	grid-column: 1/7;
}
.desktop #grad-student-booking,
.desktop #grad-guest-booking {
	grid-column: 7/13;
}
.mobile #grad-guest-section {
	margin-top: 30px;
}
.desktop #grad-student-section {
	display: grid;
	grid-template-columns: repeat(12, 1fr);
	margin-top: 50px;
	gap: 20px;
	padding-bottom: 20px;
	border-bottom: 2px solid #f5f5f5;
}
.desktop #grad-student-meta {
	display: grid;
	gap: 20px;
}
#grad-student-allergy select {
	width: 100%;
}
#grad-student-vars,
#grad-adult-vars {
	display: flex;
	gap: 10px;
}
#grad-student-wheelchair label {
	display: inherit;
}
body.journey-true .grad-cart_step {
	pointer-events: all;
}
#grad-student-pricing,
#grad-student-meta,
#grad-adult-pricing,
#grad-adult-guests {
	margin-top: 30px;
}
.grad-cart-form .grad-student-var,
.grad-cart-form .grad-adult-var {
	background: #fff;
	border: 2px solid #d3d3d3;
	border-radius: 5px;
}
.grad-cart-form .grad-student-var.active,
.grad-cart-form .grad-adult-var.active {
	border-color: #07b3ac;
	background: #07b3ac14;
	color: #03958f;
}
.desktop .grad-cart-guest-row {
	display: grid;
	gap: 10px;
	margin-bottom: 10px;
}
.desktop .grad-cart-guest-info {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 10px;
}
.desktop .grad-cart-guest-party {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 10px;
}
.desktop #grad-child-guests .grad-cart-guest-party {
	grid-template-columns: repeat(2, 1fr);
}
.mobile #grad-student-section {
	margin-top: 30px;
}
#grad-adult-guests {
	padding-bottom: 10px;
	border-bottom: 2px solid #f5f5f5;
	margin-bottom: 20px;
	text-align: center;
}
#grad-adult-guests h2 {
	font-size: 18px;
	margin-top: 20px;
}
.grad-btns {
	margin-left: -10px;
}
#grad-student-booking > h2,
#grad-guest-booking > h2 {
	margin-bottom: 20px;
	text-transform: uppercase;
	font-weight: 400;
	font-size: 20px;
}
.desktop .grad-right {
	float: right;
	display: inline-block;
	width: 120px;
}
.mobile .grad-right {
	min-width: 120px;
	margin: 0 auto;
	margin-top: 10px;
}
.grad-guest-qty-wrap {
	display: grid;
	grid-template-columns: 2fr 3fr 2fr;
	text-align: center;
	border: 2px solid #e4e4e4;
	font-size: 18px;
	font-weight: 600;
	height: 38px;
	line-height: 36px;
}
.grad-guest-dec {
	border-right: 2px solid #e4e4e4;
	cursor: pointer;
}
.grad-guest-inc {
	border-left: 2px solid #e4e4e4;
	cursor: pointer;
}
.grad-guest-qty > input {
	width: 48px;
	border: 0;
	height: 26px;
	text-align: center;
	margin-right: -10px;
	line-height: 26px;
	background: #fff;
}
.desktop .grad-ticket-type {
	grid-column: 1/3;
}
.grad-right > label {
	text-transform: capitalize;
}
#grad-cart-wrap input,
#grad-cart-wrap select {
	font-weight: 400;
}
#grad-cart_content_photography .grad-toggle,
#grad-cart_content_frames .grad-toggle {
	border-bottom: 2px solid #e7e7e7;
}
.grad-prod-title input[type="checkbox"],
.grad-prod-title input[type="radio"],
#grad-guest-booking .grad-right input[type="checkbox"] {
	margin-right: 10px;
	transform: scale(1.5);
}
.grad-frame-atc {
	margin-top: 20px;
	font-size: 18px !important;
	margin-bottom: 10px;
}
.desktop .grad-atc-compact {
	max-width: 120px;
	margin: 10px auto 0 auto;
}
.desktop #grad-cart_content_merchandise #grad-frame-plans {
	grid-template-columns: 1fr 1fr;
}
.grad-toggle-atts {
	display: table;
}
.grad-toggle-atts-inner {
	display: table-cell;
	vertical-align: middle;
}
#grad-cart_content_checkout .variation {
	display: none;
}
#grad-cart_content_checkout #order_review td.product-name {
	display: flex;
	gap: 5px;
}
.desktop .elementor-shortcode form.checkout.woocommerce-checkout {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 20px;
}
.elementor-shortcode h3#order_review_heading {
	display: none;
}
.elementor-shortcode div#order_review {
	border-width: 2px !important;
}
.grad-portal_products {
	display: grid;
}
.grad-portal_button.add_to_cart_button.ajax_add_to_cart.added {
	display: none;
}
.grad-portal_atc_btn button[disabled] {
	background: #f2731c;
	border-color: #f2731c;
	cursor: not-allowed;
}

.grad-portal_product_atc_wrap {
	margin: 0 auto;
}

.mobile .grad-portal_atc_btn {
	display: inherit;
}

.grad-portal_product_atc > div {
	width: 100%;
	margin: 10px 0;
}

.mobile .grad-portal_product_atc > div {
	/* width: 80%; */
}
.grad-portal_product_atc > div > select,
.grad-portal_product_atc > div > input {
	width: 100%;
}
.grad-portal_atc_btn input[type="number"] {
	max-width: 70px;
}
.grad-portal_atc_btn input[type="number"]::-webkit-inner-spin-button,
.grad-portal_atc_btn input[type="number"]::-webkit-outer-spin-button {
	-webkit-appearance: none;
	-moz-appearance: none;
	-moz-appearance: textfield;
	appearance: none;
	margin: 0;
}
.mobile .woocommerce-checkout-review-order-table tr {
	display: grid;
}
.mobile #grad-cart-body .elementor-shortcode #order_review td.product-name {
	display: inherit;
}
.grad-portal-notice {
	padding: 10px;
	border: 1px solid #ff8a69;
	color: #b72e07;
	background: #ff8a6940;
	text-align: center;
	display: none;
}
.grad-cart-icon {
	height: 21px;
	width: 23px;
}
.grad-portal_atc_btn
	> button
	> img:not(.grad-portal_atc_btn > button > img:first-child) {
	display: none !important;
}
.grad-portal_personal-info-elementor-widget {
	display: grid;
}
.back {
	display: none;
}
.grad-product_thumb {
	display: flex;
}
.image-container {
	position: relative;
	overflow: hidden;
	/* width: 200px;
    height: 200px;*/
}
.grad-portal_thumb-wrap.center,
.image-container.center {
	margin: 0 auto;
}
.grad-portal_thumb-wrap.right,
.image-container.right {
	margin-right: 0;
	float: right;
}
.image-container img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.image-container .back {
	display: none;
}
#ticket-purcahed-limit {
	margin-bottom: 100px;
	margin-top: 50px;
}

/*responsive*/
@media only screen and (max-width: 810px) {
	.grid-template-columns p {
		display: block;
	}
}
@media only screen and (max-width: 787px) {
	.grad-grid {
		display: block;
	}
	.grad-cart_step {
		display: none;
	}
	.grad-cart_step.active {
        border-color: #ee3d29;
        display: flex;
        padding-bottom: 0px;
    }
        div#grad-cart-header {
        position: absolute;
        top: 0;
        right: 20px;
        margin-top: 10px !important;
    }
	form.grad-cart-form .e-con-inner {
	    padding-top: 0px;
	}
	.grad-cart-navs.grad-grid.grad-container {
	    padding: 0 20px;
	}
	div#grad-cart-header #grad-cart-prev {
	    padding: 0;
	    float: right;
	    text-align: right;
	    width: 100%;
	    font-size: 15px;
	    margin-bottom: 20px;
	}
	.elementor-2023 .elementor-element.elementor-element-b12c24c button.cart-added-main,
	div#grad-cart-footer button#grad-cart-next {
	    border-radius: 8px !important;
	    padding: 15px 20px 15px 20px !important;
	}
}

/*edit order page css*/
.grad-edit-order .page {
	border: 1px solid #e8e8e8;
	padding: 20px 0px;
}
.grad-edit-order .entry-title {
	padding: 20px;
}
.grad-single-product {
	border-top: 1px solid #e8e8e8;
	padding: 20px;
}
.grad-attr-field {
	margin: 10px;
}
.grad-single-product .grad-count {
	height: 50px;
	width: 50px;
	padding: unset !important;
	text-align: center;
}
.grad-edit-order .grad-count-plus {
	margin-left: 10px;
	margin-right: 10px;
	background-color: #1bb67a !important;
	border-color: #1bb67a !important;
}
.grad-count-plus:hover {
	color: #ffffff !important;
}
.grad-single-product a {
	text-decoration: unset !important;
}
#grad-update-order {
	margin: 20px;
}
#grad-portal-popup {
	position: fixed;
	background: #fff;
	width: 700px;
	height: 300px;
	top: 30%;
	left: 30%;
	z-index: 9999;
	display: flex;
	justify-content: center;
	align-items: center;
	border-radius: 10px;
	box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16), 0 3px 6px rgba(0, 0, 0, 0.23);
}
#grad-close-popup {
	position: absolute;
	right: 20px;
	top: 20px;
	cursor: pointer;
}
#grad-portal-popup-container {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	gap: 20px;
}
#grad-portal-modal-img {
	width: 150px;
}
.elementor-widget-woocommerce-checkout-page
	.woocommerce
	.woocommerce-checkout-review-order-table
	.cart_item
	td.product-name {
	padding-right: 0px !important;
	max-width: 330px !important;
}

/**
Custom Questions
*/
.stb-questions {
	/* background: var(--sections-background-color, #fff);
	border-radius: var(--sections-border-radius, 3px);
	padding: var(--sections-padding, 16px 30px);
	margin: var(--sections-margin, 0 0 24px 0);
	border: 1px var(--sections-border-type, solid)
		var(--sections-border-color, #d5d8dc); */
	display: block;
}
.stb-section-title {
	border-bottom: 1px solid #d5d8dc;
	padding-bottom: 10px;
	margin-bottom: 20px;
}
.stb-questions-list-title {
	margin-bottom: 10px;
	font-size: 14px;
	font-weight: 700;
}

.stb-questions-list {
	margin-bottom: 15px;
}

.stb-questions-list-answer-item.checkbox input,
.stb-questions-list-answer-item.radio input {
	margin-right: 5px;
	accent-color: #ff6600;
}

.stb-questions-list-answer input[type="text"],
.stb-questions-list-answer textarea,
.stb-questions-list-answer select {
	width: 100%;
	border-color: #d5d8dc;
}
@media only screen and (max-width: 767px) {
	.e-checkout__container {
		display: block;
	}
	.e-checkout__column.e-checkout__column-start {
		width: 100%;
	}
	.e-checkout__column.e-checkout__column-end {
		width: 100%;
	}
}