.elementor-14506 .elementor-element.elementor-element-607bed9{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:50px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-14506 .elementor-element.elementor-element-729711d > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-14506 .elementor-element.elementor-element-bbdb6e8{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:50px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-14506 .elementor-element.elementor-element-bd3a3d1 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:5px 5px 50px 5px;}.elementor-14506 .elementor-element.elementor-element-3f5bcb3{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:50px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-14506 .elementor-element.elementor-element-4ddddfe > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}@media(max-width:767px){.elementor-14506 .elementor-element.elementor-element-607bed9{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:50px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-14506 .elementor-element.elementor-element-729711d > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}}@media(min-width:768px){.elementor-14506 .elementor-element.elementor-element-607bed9{--content-width:1004px;}.elementor-14506 .elementor-element.elementor-element-bbdb6e8{--content-width:692px;}.elementor-14506 .elementor-element.elementor-element-3f5bcb3{--content-width:1004px;}}/* Start custom CSS for html, class: .elementor-element-729711d *//* Main Wrapper and Typography */
.elementor-14506 .elementor-element.elementor-element-729711d {
	font-family: 'Inter', sans-serif;
	font-weight: 300;
	color: #1a1a1a;
	line-height: 1.7;
	background-color: #ffffff;
}

/* Remove focus outlines */
.elementor-14506 .elementor-element.elementor-element-729711d *:focus,
.elementor-14506 .elementor-element.elementor-element-729711d button:focus,
.elementor-14506 .elementor-element.elementor-element-729711d a:focus {
	outline: none !important;
	box-shadow: none !important;
}

/* Headings */
.elementor-14506 .elementor-element.elementor-element-729711d h2,
.elementor-14506 .elementor-element.elementor-element-729711d h3,
.elementor-14506 .elementor-element.elementor-element-729711d h4 {
	font-family: 'Inter', sans-serif;
	font-weight: 700;
	color: #101010;
	line-height: 1.3;
	margin: 0 0 15px 0;
}

.elementor-14506 .elementor-element.elementor-element-729711d h2 {
	font-size: 38px;
	margin-bottom: 25px;
}

.elementor-14506 .elementor-element.elementor-element-729711d h3 {
	font-size: 26px;
	margin-top: 40px;
}

/* Paragraphs and Links */
.elementor-14506 .elementor-element.elementor-element-729711d p {
	font-size: 16px;
	margin: 0 0 20px 0;
}

.elementor-14506 .elementor-element.elementor-element-729711d p.ab-intro {
	font-size: 18px;
	line-height: 1.6;
}

.elementor-14506 .elementor-element.elementor-element-729711d a {
	color: #1a1a1a;
	text-decoration: underline;
	text-decoration-color: #eac892;
	text-decoration-thickness: 2px;
	transition: color 0.3s ease, background-color 0.3s ease;
}

.elementor-14506 .elementor-element.elementor-element-729711d a:hover {
	color: #000000;
	background-color: rgba(234, 200, 146, 0.2);
}

/* Quick Summary Card */
.elementor-14506 .elementor-element.elementor-element-729711d .ab-quick-summary {
	border-left: 4px solid #eac892;
	padding: 15px 25px;
	margin: 0 0 30px 0;
	background-color: #f9f9f9;
}

.elementor-14506 .elementor-element.elementor-element-729711d .ab-quick-summary h3 {
	font-size: 22px;
	margin: 0 0 10px 0;
	padding: 0;
	margin-top: 0;
}

.elementor-14506 .elementor-element.elementor-element-729711d .ab-quick-summary p {
	margin: 0;
	font-size: 15px;
}

/* Styled List for Upgrades */
.elementor-14506 .elementor-element.elementor-element-729711d .ab-styled-list {
	list-style: none;
	padding-left: 20px;
	margin-bottom: 20px;
}

.elementor-14506 .elementor-element.elementor-element-729711d .ab-styled-list li {
	padding-left: 25px;
	position: relative;
	margin-bottom: 12px;
}

.elementor-14506 .elementor-element.elementor-element-729711d .ab-styled-list li::before {
	content: '■';
	position: absolute;
	left: 0;
	top: -2px;
	color: #eac892;
	font-size: 18px;
}

/* Schedule Layout */
.elementor-14506 .elementor-element.elementor-element-729711d .ab-schedule {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
	gap: 30px;
	margin: 20px 0 40px 0;
}

.elementor-14506 .elementor-element.elementor-element-729711d .ab-schedule-day {
	padding: 20px;
	border: 1px solid #eee;
	border-radius: 4px;
}

.elementor-14506 .elementor-element.elementor-element-729711d .ab-schedule-day h4 {
	font-size: 18px;
	margin: 0 0 10px 0;
	border-bottom: 2px solid #eac892;
	padding-bottom: 8px;
}

.elementor-14506 .elementor-element.elementor-element-729711d .ab-schedule-day p {
	font-size: 15px;
	margin: 0;
}


/* Call To Action */
.elementor-14506 .elementor-element.elementor-element-729711d .ab-cta-text {
	text-align: center;
	font-size: 17px;
	margin: 50px 0;
	padding: 25px;
	background-color: #f9f9f9;
	border-top: 1px solid #eee;
	border-bottom: 1px solid #eee;
}

.elementor-14506 .elementor-element.elementor-element-729711d .ab-cta-text a {
	font-weight: 700;
}

/* Sources Button and Content */
.elementor-14506 .elementor-element.elementor-element-729711d .ab-sources-container {
	margin-top: 50px;
	border-top: 1px solid #f0f0f0;
	padding-top: 25px;
}

.elementor-14506 .elementor-element.elementor-element-729711d .ab-sources-button {
	font-family: 'Inter', sans-serif;
	font-weight: 700;
	font-size: 16px;
	color: #ffffff;
	background-color: #1a1a1a;
	border: none;
	padding: 12px 25px;
	border-radius: 4px;
	cursor: pointer;
	transition: background-color 0.3s ease;
	display: inline-block;
}

.elementor-14506 .elementor-element.elementor-element-729711d .ab-sources-button:hover {
	background-color: #333333;
}

.elementor-14506 .elementor-element.elementor-element-729711d .ab-sources-content {
	max-height: 0;
	overflow: hidden;
	transition: max-height 0.5s ease-out, padding-top 0.5s ease-out;
	padding-top: 0;
	border: 1px solid #eee;
	border-radius: 4px;
	margin-top: 15px;
}

.elementor-14506 .elementor-element.elementor-element-729711d .ab-sources-content.expanded {
	max-height: 500px; /* Adjust as needed */
	padding-top: 20px;
	transition: max-height 0.5s ease-in, padding-top 0.5s ease-in;
}

.elementor-14506 .elementor-element.elementor-element-729711d .ab-sources-content h4 {
	margin: 0 20px 10px 20px;
	padding: 0 0 10px 0;
	border-bottom: 1px solid #eee;
}

.elementor-14506 .elementor-element.elementor-element-729711d .ab-sources-content ul {
	margin: 0;
	padding: 0 20px 20px 40px;
	list-style-type: disc;
}

.elementor-14506 .elementor-element.elementor-element-729711d .ab-sources-content li {
	margin-bottom: 8px;
}

.elementor-14506 .elementor-element.elementor-element-729711d .ab-sources-content a {
	font-size: 15px;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-bd3a3d1 *//*
 * ===============================================
 *  Promotional Card Styles for Elementor
 *  Designed for Above + Beyond
 * ===============================================
 */

/* === Design Tokens & Base Styles === */
.elementor-14506 .elementor-element.elementor-element-bd3a3d1 {
	--ab-promo-font-7531: 'Inter', sans-serif;
	--ab-promo-accent-7531: #eac892;
	--ab-promo-text-dark-7531: #1a1a1a;
	--ab-promo-text-light-7531: #555555;
	--ab-promo-background-7531: #ffffff;
	--ab-promo-border-color-7531: #f0f0f0;
	--ab-promo-shadow-7531: 0px 8px 25px rgba(0, 0, 0, 0.07);
	--ab-promo-shadow-hover-7531: 0px 12px 35px rgba(0, 0, 0, 0.09);
}

.elementor-14506 .elementor-element.elementor-element-bd3a3d1 .ab-promo-card-wrapper-7531 {
	font-family: var(--ab-promo-font-7531);
}

/* === Main Card Link Element === */
.elementor-14506 .elementor-element.elementor-element-bd3a3d1 .ab-promo-card-7531 {
	display: block;
	background: var(--ab-promo-background-7531);
	border: 1px solid var(--ab-promo-border-color-7531);
	border-radius: 16px;
	overflow: hidden;
	text-decoration: none;
	box-shadow: var(--ab-promo-shadow-7531);
	transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.elementor-14506 .elementor-element.elementor-element-bd3a3d1 .ab-promo-card-7531:hover {
	transform: translateY(-6px);
	box-shadow: var(--ab-promo-shadow-hover-7531);
}

/* === Strict Focus State for Accessibility without Ugly Blue Outline === */
.elementor-14506 .elementor-element.elementor-element-bd3a3d1 .ab-promo-card-7531:focus-visible {
	outline: 2px solid var(--ab-promo-accent-7531);
	outline-offset: 2px;
	box-shadow: var(--ab-promo-shadow-hover-7531);
}

/* Fallback for older browsers & forced outline removal */
.elementor-14506 .elementor-element.elementor-element-bd3a3d1 .ab-promo-card-7531:focus {
	outline: none;
}
.elementor-14506 .elementor-element.elementor-element-bd3a3d1 .ab-promo-card-7531:-moz-focusring {
	outline: none;
}

/* === Card Image === */
.elementor-14506 .elementor-element.elementor-element-bd3a3d1 .ab-promo-image-7531 {
	height: 180px;
	background-size: cover;
	background-position: center;
	transition: transform 0.4s ease;
}

.elementor-14506 .elementor-element.elementor-element-bd3a3d1 .ab-promo-card-7531:hover .ab-promo-image-7531 {
	transform: scale(1.05);
}

/* === Content Section === */
.elementor-14506 .elementor-element.elementor-element-bd3a3d1 .ab-promo-content-7531 {
	padding: 25px;
}

.elementor-14506 .elementor-element.elementor-element-bd3a3d1 .ab-promo-title-7531 {
	font-weight: 700;
	font-size: 22px;
	color: var(--ab-promo-text-dark-7531);
	margin: 0;
}

.elementor-14506 .elementor-element.elementor-element-bd3a3d1 .ab-promo-subtitle-7531 {
	display: block;
	font-weight: 500;
	font-size: 14px;
	color: var(--ab-promo-text-light-7531);
	margin-top: 4px;
	margin-bottom: 20px;
}

/* === Highlights List === */
.elementor-14506 .elementor-element.elementor-element-bd3a3d1 .ab-promo-highlights-7531 {
	display: flex;
	flex-direction: column;
	gap: 12px;
	margin-bottom: 25px;
}

.elementor-14506 .elementor-element.elementor-element-bd3a3d1 .ab-promo-highlight-item-7531 {
	display: flex;
	align-items: center;
	font-size: 14px;
	font-weight: 500;
	color: var(--ab-promo-text-dark-7531);
}

.elementor-14506 .elementor-element.elementor-element-bd3a3d1 .ab-promo-highlight-item-7531 svg {
	stroke: var(--ab-promo-accent-7531);
	margin-right: 12px;
	flex-shrink: 0;
}

/* === Call-to-Action Button === */
.elementor-14506 .elementor-element.elementor-element-bd3a3d1 .ab-promo-cta-7531 {
	background: var(--ab-promo-accent-7531);
	color: var(--ab-promo-text-dark-7531);
	font-size: 16px;
	font-weight: 700;
	text-align: center;
	padding: 14px 20px;
	border-radius: 8px;
	transition: background-color 0.3s ease;
}

.elementor-14506 .elementor-element.elementor-element-bd3a3d1 .ab-promo-card-7531:hover .ab-promo-cta-7531 {
	background: #d4b481; /* A slightly darker shade for hover */
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-4ddddfe */.elementor-14506 .elementor-element.elementor-element-4ddddfe {
    --ab-primary-font-9917: 'Inter', sans-serif;
    --ab-text-color-9917: #333333;
    --ab-heading-color-9917: #101010;
    --ab-border-color-9917: #EAEAEA;
    --ab-accent-color-9917: #eac892;
    --ab-transition-timing-9917: 0.5s cubic-bezier(0.4, 0, 0.2, 1);
    --ab-transition-timing-icon-9917: 0.3s ease;
}

/* === Main Wrapper === */
.ab-faq-wrapper-9917 {
    font-family: var(--ab-primary-font-9917);
    padding-bottom: 50px;
}

/* === Main Title === */
.ab-faq-main-title-9917 {
    font-family: var(--ab-primary-font-9917);
    font-weight: 700;
    font-size: 38px;
    color: var(--ab-heading-color-9917);
    text-align: left;
    margin-bottom: 30px;
}

/* === FAQ Item Container === */
.ab-faq-container-9917 {
    width: 100%;
    max-width: 900px;
    margin: 0 auto;
}

/* === Individual FAQ Item === */
.ab-faq-item-9917 {
    border: 1px solid var(--ab-border-color-9917);
    border-radius: 12px;
    margin-bottom: 15px;
    overflow: hidden;
    transition: box-shadow 0.3s ease;
}

.ab-faq-item-9917:hover {
    border-color: #dcdcdc;
}

/* === Question Button === */
.ab-faq-question-9917 {
    font-family: var(--ab-primary-font-9917);
    font-size: 18px;
    font-weight: 500;
    color: var(--ab-heading-color-9917);
    
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    text-align: left;
    
    padding: 20px 25px;
    background-color: #FFFFFF;
    border: none;
    cursor: pointer;
    position: relative;
}

/* === Strict Focus/Tap Styling to Prevent Outlines === */
.ab-faq-question-9917:focus,
.ab-faq-question-9917:active {
    background-color: transparent !important;
    border-color: transparent !important;
    outline-style: none !important;
    outline-width: 0 !important;
    outline-offset: 0 !important;
    box-shadow: none !important;
    -webkit-tap-highlight-color: transparent !important;
}

/* === Icon Pseudo-element (+) === */
.ab-faq-question-9917::after {
    content: '+';
    font-size: 28px;
    font-weight: 300;
    color: var(--ab-text-color-9917);
    transition: transform var(--ab-transition-timing-icon-9917);
    position: absolute;
    right: 25px;
    top: 50%;
    transform: translateY(-50%) rotate(0deg);
}

.ab-faq-question-9917[aria-expanded="true"]::after {
    transform: translateY(-50%) rotate(45deg);
}

.ab-faq-question-text-9917 {
    padding-right: 40px; /* Space for the icon */
}

/* === Answer Styling === */
.ab-faq-answer-wrapper-9917 {
    max-height: 0;
    overflow: hidden;
    transition: max-height var(--ab-transition-timing-9917);
}

.ab-faq-answer-content-9917 {
    font-size: 16px;
    line-height: 1.7;
    color: var(--ab-text-color-9917);
    padding: 0 25px 25px 25px;
}

.ab-faq-answer-content-9917 p {
    margin: 0 0 1em 0;
}

.ab-faq-answer-content-9917 p:last-child {
    margin-bottom: 0;
}

.ab-faq-answer-content-9917 ul {
    padding-left: 20px;
    margin-top: 10px;
    margin-bottom: 1em;
}

.ab-faq-answer-content-9917 li {
    margin-bottom: 8px;
}

.ab-faq-answer-content-9917 strong {
    font-weight: 500;
    color: var(--ab-heading-color-9917);
}/* End custom CSS */