.fluent_form_14 .ff-step-header{margin-bottom:64px !important;background:none !important;border:none !important;box-shadow:none !important;padding:0 !important;overflow:visible !important;height:auto !important;}
.fluent_form_14 .ff-step-titles{display:flex !important;justify-content:space-between !important;align-items:flex-start !important;position:relative !important;list-style:none !important;padding:0 8px !important;margin:0 !important;counter-reset:step-counter !important;background:none !important;border:none !important;height:auto !important;overflow:visible !important;}
.fluent_form_14 .ff-step-titles::before{content:'' !important;position:absolute !important;top:16px !important;left:15% !important;right:15% !important;height:1px !important;background:#c2c7cd !important;z-index:0 !important;border:none !important;width:auto !important;transform:none !important;}
.fluent_form_14 .ff-step-titles::after{content:none !important;display:none !important;}
.fluent_form_14 .ff-step-titles li{display:flex !important;flex-direction:column !important;align-items:center !important;gap:8px !important;position:relative !important;z-index:1 !important;opacity:1 !important;background:none !important;border:none !important;width:auto !important;height:auto !important;padding:0 !important;margin:0 !important;float:none !important;flex:none !important;}
.fluent_form_14 .ff-step-titles li::after{content:none !important;display:none !important;}
.fluent_form_14 .ff-step-titles li::before{content:counter(step-counter) !important;counter-increment:step-counter !important;display:flex !important;align-items:center !important;justify-content:center !important;width:32px !important;height:32px !important;min-width:32px !important;min-height:32px !important;max-width:32px !important;max-height:32px !important;border-radius:12px !important;font-family:'Montserrat',sans-serif !important;font-weight:600 !important;font-size:12px !important;line-height:16px !important;background:#d6d8d4 !important;color:#9a9994 !important;border:none !important;box-shadow:0 0 0 8px var(--faith-ivory,#ebe5d8) !important;position:static !important;transform:none !important;opacity:1 !important;margin:0 !important;padding:0 !important;}
.fluent_form_14 .ff-step-titles li span{font-family:'Montserrat',sans-serif !important;font-weight:600 !important;font-size:10px !important;text-transform:uppercase !important;letter-spacing:1px !important;color:#a8a7a2 !important;background:none !important;width:auto !important;height:auto !important;border-radius:0 !important;padding:0 !important;margin:0 !important;line-height:15px !important;display:block !important;border:none !important;box-shadow:none !important;}
.fluent_form_14 .ff-step-titles li.ff_active::before{background:var(--character-gold,#a29061) !important;color:#fff !important;}
.fluent_form_14 .ff-step-titles li.ff_active span{color:var(--spirit-blue,#19435d) !important;}
.fluent_form_14 .ff-step-titles li.ff_completed::before{background:var(--spirit-blue,#19435d) !important;color:#fff !important;}
.fluent_form_14 .ff-step-titles li.ff_completed span{color:var(--spirit-blue,#19435d) !important;}
.fluent_form_14 .ff-custom_html h2{font-family:'Playfair Display',serif;font-weight:700;font-size:42px;color:var(--spirit-blue,#19435d);letter-spacing:-1.2px;margin:0 0 4px 0;line-height:1.2;}
.fluent_form_14 .ff-custom_html p{font-family:'Playfair','Playfair Display',serif;font-size:18px;color:#42474d;line-height:1.625;margin:0 0 8px 0;font-style:normal;}
.fluent_form_14 .ff-custom_html h3{font-family:'Playfair','Playfair Display',serif;font-weight:400;font-size:20px;color:var(--spirit-blue,#19435d);margin:0;padding-bottom:17px;border-bottom:1px solid rgba(194,199,205,0.9);}
.fluent_form_14 [data-name="custom_html-4_7"] h2{font-family:'Playfair','Playfair Display',serif;font-weight:400;font-size:20px;letter-spacing:0;margin:0;padding-bottom:17px;border-bottom:1px solid rgba(194,199,205,0.9);}
.fluent_form_14 .ff-custom_html h4{font-family:'Montserrat',sans-serif;font-weight:600;font-size:12px;color:var(--character-gold,#a29061);text-transform:uppercase;letter-spacing:2.4px;margin:0 0 16px 0;}
.fluent_form_14 [data-name="custom_html-4_2"] h2{font-family:'Playfair','Playfair Display',serif;font-weight:400;font-size:24px;letter-spacing:0;margin:36px 0 0 0;display:flex;align-items:center;gap:16px;}
.fluent_form_14 [data-name="custom_html-4_2"] h2::after{content:'';flex:1;height:1px;background:rgba(194,199,205,0.9);}
.fluent_form_14 .fluentform-step .ff-column-container.ff_columns_total_1{background:#f7f3ea;padding:48px;margin-bottom:48px;box-shadow:0px 1px 2px rgba(0,0,0,0.05);}
.fluent_form_14 .ff-el-input--label label{font-family:'Montserrat',sans-serif !important;font-weight:400 !important;font-size:12px !important;color:#42474d !important;text-transform:uppercase;letter-spacing:0.6px;margin-bottom:4px;}
.fluent_form_14 .ff-el-is-required.asterisk-right label::after{color:var(--truth-red,#933030) !important;}
.fluent_form_14 .ff-el-form-control{font-family:'Montserrat',sans-serif !important;font-size:16px !important;color:#1c1c16 !important;background:transparent !important;border:none !important;border-bottom:1px solid #c2c7cd !important;border-radius:0 !important;padding:10px 12px 11px !important;transition:border-color 0.2s ease;}
.fluent_form_14 .ff-el-form-control:focus{border-bottom-color:var(--spirit-blue,#19435d) !important;box-shadow:none !important;outline:none !important;}
.fluent_form_14 .ff-el-form-control::placeholder{color:#c2c7cd !important;font-family:'Montserrat',sans-serif !important;}
.fluent_form_14 select.ff-el-form-control{border-bottom:1px solid #c2c7cd !important;appearance:auto;}
.fluent_form_14 .ff-el-tooltip{color:var(--character-gold,#a29061);}
.fluent_form_14 .ff-el-tooltip::after{font-size:14px !important;font-style:normal !important;font-family:'Montserrat',sans-serif !important;}
.fluent_form_14 .ff-el-tooltip::before{font-style:normal !important;}
.fluent_form_14 .ff-el-help-message{font-size:14px !important;font-style:normal !important;font-family:'Montserrat',sans-serif !important;color:#42474d;}
.fluent_form_14 .ff-el-group:has([data-name="roommate_request"]) .ff-el-help-message{font-family:'Montserrat',sans-serif !important;font-size:13px !important;font-style:italic !important;font-weight:400 !important;color:#42474d !important;line-height:1.5;}
.fluent_form_14 .ff-el-group:has(.ff_payment_item[data-payment_item="yes"]):not(.ff-payment-line-item){background:#f7f3ea;border-left:4px solid var(--character-gold,#a29061);padding:32px 32px 32px 36px;box-shadow:0px 1px 2px rgba(0,0,0,0.05);position:relative !important;display:block !important;}
.fluent_form_14 .ff-el-group:has(.ff_payment_item[data-payment_item="yes"]):not(.ff-payment-line-item) > .ff-el-input--label{display:block !important;width:auto !important;padding-right:160px;}
.fluent_form_14 .ff-el-group:has(.ff_payment_item[data-payment_item="yes"]):not(.ff-payment-line-item) .ff-el-input--label label::before{content:'Standard Pass';display:block;font-family:'Montserrat',sans-serif !important;font-weight:600 !important;font-size:12px !important;color:var(--character-gold,#a29061) !important;letter-spacing:1.2px !important;text-transform:uppercase !important;margin-bottom:4px;}
.fluent_form_14 .ff-el-group:has(.ff_payment_item[data-payment_item="yes"]):not(.ff-payment-line-item) .ff-el-input--label label{font-family:'Montserrat',sans-serif !important;font-weight:600 !important;font-size:20px !important;color:var(--spirit-blue,#19435d) !important;text-transform:none !important;letter-spacing:0 !important;line-height:1.4 !important;}
.fluent_form_14 .ff-el-group:has(.ff_payment_item[data-payment_item="yes"]):not(.ff-payment-line-item) .ff-el-input--label > label::after{content:none !important;display:none !important;}
.fluent_form_14 .ff-el-group:has(.ff_payment_item[data-payment_item="yes"]):not(.ff-payment-line-item) > .ff-el-input--content{display:block !important;position:static !important;}
.fluent_form_14 .ff-el-group:has(.ff_payment_item[data-payment_item="yes"]):not(.ff-payment-line-item) .ff_item_price_wrapper{position:absolute !important;right:32px;top:32px;display:flex;align-items:center;gap:10px;}
.fluent_form_14 .ff_product_price{font-family:'Playfair','Playfair Display',serif !important;font-size:24px !important;color:var(--spirit-blue,#19435d) !important;white-space:nowrap;}
.fluent_form_14 .ff-el-group:has(.ff_payment_item[data-payment_item="yes"]):not(.ff-payment-line-item) .ff_item_price_wrapper::after{content:'✓';display:flex;align-items:center;justify-content:center;width:48px;height:48px;min-width:48px;background:#248153;color:#fff;font-size:22px;font-weight:700;line-height:1;}
.fluent_form_14 .ff-el-group:has(.ff_payment_item[data-payment_item="yes"]):not(.ff-payment-line-item) .ff-el-help-message{margin-top:8px !important;font-size:14px !important;color:#42474d !important;}
.fluent_form_14 .ff-el-group:has(.ff-el-form-check-checkbox.ff_payment_item){background:var(--faith-ivory,#ebe5d8);border:1px solid rgba(194,199,205,0.9);padding:25px;}
.fluent_form_14 .ff-el-group:has(.ff-el-form-check-checkbox.ff_payment_item) .ff-el-input--content{display:flex !important;flex-wrap:wrap !important;align-items:center !important;gap:0 16px !important;}
.fluent_form_14 .ff-el-group:has(.ff-el-form-check-checkbox.ff_payment_item) .ff-el-input--content::before{content:'';display:flex;align-items:center;justify-content:center;width:48px;height:48px;min-width:48px;background-color:#f6e1ab;background-size:22px 22px;background-repeat:no-repeat;background-position:center;flex-shrink:0;}
.fluent_form_14 .ff-el-group:has([data-name="payment_input_single_occ"]) .ff-el-input--content::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23a29061'%3E%3Cpath d='M7 13c1.66 0 3-1.34 3-3S8.66 7 7 7s-3 1.34-3 3 1.34 3 3 3zm12-6h-8v7H3V5H1v15h2v-3h18v3h2v-9c0-2.21-1.79-4-4-4z'/%3E%3C/svg%3E");}
.fluent_form_14 .ff-el-group:has([data-name="payment_input_addl_night"]) .ff-el-input--content::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23a29061'%3E%3Cpath d='M19 3h-1V1h-2v2H8V1H6v2H5a2 2 0 00-2 2v14a2 2 0 002 2h14a2 2 0 002-2V5a2 2 0 00-2-2zm0 16H5V8h14v11zM9 10H7v2h2v-2zm4 0h-2v2h2v-2zm4 0h-2v2h2v-2z'/%3E%3C/svg%3E");}
.fluent_form_14 .ff-el-group:has(.ff-el-form-check-checkbox.ff_payment_item) .ff-el-form-check{flex:1 1 0%;min-width:0;}
.fluent_form_14 .ff-el-group:has(.ff-el-form-check-checkbox.ff_payment_item) .ff-el-form-check-label{display:flex !important;align-items:center !important;gap:16px !important;width:100%;}
.fluent_form_14 .ff-el-group:has(.ff-el-form-check-checkbox.ff_payment_item) .ff_plan_title{flex:1;font-family:'Montserrat',sans-serif;font-weight:600;font-size:16px;color:var(--spirit-blue,#19435d);}
.fluent_form_14 .ff-el-group:has(.ff-el-form-check-checkbox.ff_payment_item) .ff-el-form-check-input[type="checkbox"]{order:3;margin-left:auto;width:20px;height:20px;min-width:20px;border:1px solid #72787e;border-radius:2px;background:#fff;accent-color:var(--spirit-blue,#19435d);flex-shrink:0;}
.fluent_form_14 .ff-el-group:has(.ff-el-form-check-checkbox.ff_payment_item) .ff-el-help-message{flex:0 0 100% !important;padding-left:64px !important;margin-top:-12px !important;font-size:12px !important;color:#42474d !important;}
.fluent-address[data-name="address"] .ff-el-input--content{display:flex;flex-wrap:wrap;gap:0 32px;}
.fluent-address[data-name="address"] .ff-t-container{display:contents;}
.fluent-address[data-name="address"] .ff-t-cell{width:100% !important;flex:0 0 100% !important;}
.fluent-address[data-name="address"] .ff-t-cell:has([data-key_name="city"]){width:calc(50% - 16px) !important;flex:0 0 calc(50% - 16px) !important;}
.fluent-address[data-name="address"] .ff-t-cell:has([data-key_name="state"]){width:calc(50% - 16px) !important;flex:0 0 calc(50% - 16px) !important;}
.fluent-address[data-name="address"] .ff-t-cell:has([data-key_name="zip"]){width:calc(30% - 16px) !important;flex:0 0 calc(30% - 16px) !important;}
.fluent-address[data-name="address"] .ff-t-cell:has([data-key_name="country"]){width:calc(70% - 16px) !important;flex:0 0 calc(70% - 16px) !important;}
.ff-name-field-wrapper .ff-t-container{gap:32px;}
.fluent_form_14 .ff-btn-next{background-color:var(--spirit-blue,#19435d) !important;color:#fff !important;font-family:'Montserrat',sans-serif !important;font-weight:600 !important;font-size:14px !important;text-transform:uppercase;letter-spacing:2.8px;padding:16px 40px !important;border:none !important;border-radius:0 !important;box-shadow:0px 10px 15px -3px rgba(0,0,0,0.1),0px 4px 6px -4px rgba(0,0,0,0.1);transition:background-color 0.2s ease;margin-left:auto !important;}
.fluent_form_14 .ff-btn-next:hover{background-color:var(--character-gold,#a29061) !important;}
.fluent_form_14 .ff-btn-submit{background-color:var(--character-gold,#a29061) !important;color:#fff !important;font-family:'Montserrat',sans-serif !important;font-weight:600 !important;font-size:14px !important;text-transform:uppercase;letter-spacing:2.8px;padding:20px 90px !important;border:none !important;border-radius:0 !important;box-shadow:0px 20px 25px -5px rgba(0,0,0,0.1),0px 8px 10px -6px rgba(0,0,0,0.1);transition:background-color 0.2s ease;}
.fluent_form_14 .ff-btn-submit:hover{background-color:var(--spirit-blue,#19435d) !important;}
.fluent_form_14 .ff-btn-prev{background:transparent !important;color:var(--character-gold,#a29061) !important;font-family:'Montserrat',sans-serif !important;font-weight:400 !important;font-size:14px !important;text-transform:uppercase;letter-spacing:1.4px;border:none !important;padding:12px 32px !important;}
.fluent_form_14 .ff-btn-prev:hover{color:var(--spirit-blue,#19435d) !important;}
.fluent_form_14 .step-nav{border-top:1px solid rgba(194,199,205,0.9);padding-top:41px;margin-top:36px;display:flex;justify-content:space-between;align-items:center;}
.fluent_form_14 .ff-inner_submit_container{border-top:1px solid rgba(194,199,205,0.9) !important;padding-top:41px !important;margin-top:36px !important;display:flex !important;align-items:center !important;}
.fluent_form_14 .ff-inner_submit_container .step-nav{border-top:none !important;padding-top:0 !important;margin-top:0 !important;}
.fluent_form_14 .ff-confirm-info{background:#f7f3ea;padding:20px 28px 16px;margin-bottom:8px;}
.fluent_form_14 .ff-confirm-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px 32px;}
.fluent_form_14 .ff-confirm-item.ff-confirm-full{grid-column:1 / -1;}
.fluent_form_14 .ff-confirm-label{font-family:'Montserrat',sans-serif;font-size:10px;text-transform:uppercase;letter-spacing:0.5px;color:#42474d;margin-bottom:2px;line-height:15px;}
.fluent_form_14 .ff-confirm-value{font-family:'Montserrat',sans-serif;font-size:16px;font-weight:500;color:var(--spirit-blue,#19435d);line-height:24px;}
.fluent_form_14 .ff_payment_summary{background:#f7f3ea !important;border:1px solid rgba(194,199,205,0.1) !important;font-family:'Montserrat',sans-serif !important;overflow:hidden !important;padding:0 !important;}
.fluent_form_14 .ff_payment_summary table{width:100% !important;border-collapse:collapse !important;border:none !important;margin:0 !important;}
.fluent_form_14 .ff_payment_summary thead,.fluent_form_14 .ff_payment_summary .ff_table_head,.fluent_form_14 .ff_payment_summary thead tr,.fluent_form_14 .ff_payment_summary .ff_table_head tr{background:#e9e3d0 !important;}
.fluent_form_14 .ff_payment_summary thead th,.fluent_form_14 .ff_payment_summary thead td,.fluent_form_14 .ff_payment_summary .ff_table_head td{font-family:'Montserrat',sans-serif !important;font-weight:600 !important;font-size:10px !important;text-transform:uppercase !important;letter-spacing:1px !important;color:#42474d !important;padding:16px 24px !important;background:#e9e3d0 !important;border:none !important;}
.fluent_form_14 .ff_payment_summary tbody tr{background:#f7f3ea !important;}
.fluent_form_14 .ff_payment_summary tbody td{font-family:'Montserrat',sans-serif !important;font-weight:600 !important;font-size:16px !important;color:var(--spirit-blue,#19435d) !important;padding:20px 24px !important;text-transform:none !important;border:none !important;border-bottom:1px solid rgba(194,199,205,0.3) !important;background:#f7f3ea !important;}
.fluent_form_14 .ff_payment_summary tbody td:first-child{font-family:'Playfair','Playfair Display',serif !important;font-weight:400 !important;font-size:18px !important;line-height:1.55 !important;}
.fluent_form_14 .ff_payment_summary tfoot,.fluent_form_14 .ff_payment_summary tfoot tr,.fluent_form_14 .ff_payment_summary tr.ff_total_row,.fluent_form_14 .ff_payment_summary tr.ff_total{background:var(--spirit-blue,#19435d) !important;}
.fluent_form_14 .ff_payment_summary tfoot th,.fluent_form_14 .ff_payment_summary tfoot td,.fluent_form_14 .ff_payment_summary tr.ff_total_row th,.fluent_form_14 .ff_payment_summary tr.ff_total_row td,.fluent_form_14 .ff_payment_summary tr.ff_total th,.fluent_form_14 .ff_payment_summary tr.ff_total td{color:var(--faith-ivory,#ebe5d8) !important;font-family:'Montserrat',sans-serif !important;font-weight:600 !important;font-size:18px !important;text-transform:uppercase !important;letter-spacing:1px !important;padding:20px 24px !important;border:none !important;border-bottom:none !important;background:var(--spirit-blue,#19435d) !important;}
@media (max-width:768px){.fluent_form_14 .ff-custom_html h2{font-size:32px;}
.fluent_form_14 .fluentform-step .ff-column-container.ff_columns_total_1{padding:24px;}
.fluent_form_14 .ff-btn-submit{padding:16px 40px !important;width:100%;}
.fluent_form_14 .ff-btn-next{width:100%;}
.fluent_form_14 .step-nav{flex-direction:column-reverse;gap:16px;}
.fluent_form_14 .step-nav .ff-btn-next,.fluent_form_14 .step-nav .ff-btn-submit{width:100%;text-align:center;}
.fluent-address[data-name="address"] .ff-t-cell:has([data-key_name="city"]),.fluent-address[data-name="address"] .ff-t-cell:has([data-key_name="state"]),.fluent-address[data-name="address"] .ff-t-cell:has([data-key_name="zip"]),.fluent-address[data-name="address"] .ff-t-cell:has([data-key_name="country"]){width:100% !important;flex:0 0 100% !important;}
.fluent_form_14 .ff-confirm-grid{grid-template-columns:1fr;}
.fluent_form_14 .ff-el-group:has(.ff_payment_item[data-payment_item="yes"]):not(.ff-payment-line-item){padding:24px 24px 24px 28px !important;}
.fluent_form_14 .ff-el-group:has(.ff_payment_item[data-payment_item="yes"]):not(.ff-payment-line-item) > .ff-el-input--label{padding-right:0;}
.fluent_form_14 .ff-el-group:has(.ff_payment_item[data-payment_item="yes"]):not(.ff-payment-line-item) .ff_item_price_wrapper{position:static !important;margin-top:16px;}
}
.fluent_form_14 .ff-registrant-card .ff-column-container{background:#f7f3ea;padding:48px;margin-bottom:48px;box-shadow:0px 1px 2px rgba(0,0,0,0.05);}
.fluent_form_14 .ff-registrant-card .ff-custom_html h3:not(.ff-subsection-heading){font-family:'Playfair Display',serif;font-weight:400;font-size:26px;color:var(--spirit-blue,#19435d);margin:0;padding-bottom:17px;border-bottom:1px solid rgba(194,199,205,0.9);}
.fluent_form_14 .ff-registrant-card h3.ff-subsection-heading{font-family:'Playfair','Playfair Display',serif;font-weight:400;font-size:20px;color:var(--spirit-blue,#19435d);margin:36px 0 0 0;padding:0;border:none;display:flex;align-items:center;gap:16px;}
.fluent_form_14 .ff-registrant-card h3.ff-subsection-heading::after{content:'';flex:1;height:1px;background:rgba(194,199,205,0.9);}
.fluent_form_14 .ff-addon-card .ff-el-group{background:var(--faith-ivory,#ebe5d8);border:1px solid rgba(194,199,205,0.9);padding:25px;margin-bottom:10px;}
.fluent_form_14 .ff-addon-card .ff-el-input--content{display:flex !important;flex-wrap:wrap !important;align-items:center !important;gap:0 16px !important;}
.fluent_form_14 .ff-addon-card .ff-el-input--content::before{content:'';display:flex;align-items:center;justify-content:center;width:48px;height:48px;min-width:48px;background-color:#f6e1ab;background-size:22px 22px;background-repeat:no-repeat;background-position:center;flex-shrink:0;}
.fluent_form_14 .ff-addon-single-occ .ff-el-input--content::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23a29061'%3E%3Cpath d='M7 13c1.66 0 3-1.34 3-3S8.66 7 7 7s-3 1.34-3 3 1.34 3 3 3zm12-6h-8v7H3V5H1v15h2v-3h18v3h2v-9c0-2.21-1.79-4-4-4z'/%3E%3C/svg%3E");}
.fluent_form_14 .ff-addon-addl-night .ff-el-input--content::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23a29061'%3E%3Cpath d='M19 3h-1V1h-2v2H8V1H6v2H5a2 2 0 00-2 2v14a2 2 0 002 2h14a2 2 0 002-2V5a2 2 0 00-2-2zm0 16H5V8h14v11zM9 10H7v2h2v-2zm4 0h-2v2h2v-2zm4 0h-2v2h2v-2z'/%3E%3C/svg%3E");}
.fluent_form_14 .ff-addon-card .ff-el-form-check{flex:1 1 0%;min-width:0;}
.fluent_form_14 .ff-addon-card .ff-el-form-check-label{display:flex !important;align-items:center !important;gap:16px !important;width:100%;}
.fluent_form_14 .ff-addon-card .ff-el-form-check-label span{flex:1;font-family:'Montserrat',sans-serif;font-weight:600;font-size:16px;color:var(--spirit-blue,#19435d);}
.fluent_form_14 .ff-addon-card .ff-el-form-check-input[type="checkbox"]{order:3;margin-left:auto;width:20px;height:20px;min-width:20px;border:1px solid #72787e;border-radius:2px;background:#fff;accent-color:var(--spirit-blue,#19435d);flex-shrink:0;}
.fluent_form_14 .ff-addon-card .ff-el-help-message{flex:0 0 100% !important;padding-left:64px !important;margin-top:-12px !important;font-size:12px !important;color:#42474d !important;}
.fluent_form_14 .ff-addon-card > .ff-el-group > .ff-el-input--label{display:none !important;}
.fluent_form_14 .ff-hidden-payment{position:absolute !important;width:1px !important;height:1px !important;overflow:hidden !important;clip:rect(0,0,0,0) !important;white-space:nowrap !important;border:0 !important;padding:0 !important;margin:-1px !important;}
.fluent_form_14 .ff-el-group:has([data-name="num_registrants"]){margin-top:32px;}
.fluent_form_14 .ff-el-group:has([data-name="num_registrants"]) select{max-width:200px;}
.ff-ticket-info-card{background:#f7f3ea;border-left:4px solid var(--character-gold,#a29061);padding:32px 32px 32px 36px;box-shadow:0px 1px 2px rgba(0,0,0,0.05);position:relative;margin-top:24px;}
.ff-ticket-info-card-inner{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;}
.ff-ticket-info-content{flex:1;}
.ff-ticket-overline{display:block;font-family:'Montserrat',sans-serif;font-weight:600;font-size:12px;color:var(--character-gold,#a29061);letter-spacing:1.2px;text-transform:uppercase;margin-bottom:4px;}
.ff-ticket-title{font-family:'Montserrat',sans-serif !important;font-weight:600 !important;font-size:20px !important;color:var(--spirit-blue,#19435d) !important;text-transform:none !important;letter-spacing:0 !important;line-height:1.4 !important;margin:0 0 8px 0 !important;padding:0 !important;border:none !important;}
.ff-ticket-desc{font-family:'Montserrat',sans-serif;font-size:14px;color:#42474d;line-height:1.6;margin:0;}
.ff-ticket-price{display:flex;align-items:center;gap:10px;flex-shrink:0;}
.ff-ticket-amount{font-family:'Playfair','Playfair Display',serif;font-size:24px;color:var(--spirit-blue,#19435d);white-space:nowrap;}
@media (max-width:768px){.ff-ticket-info-card-inner{flex-direction:column;gap:16px;}
}
/* ========================================
   STEP 1 — INTRO + TICKET CARD (Figma match)
   ======================================== */

/* Centered intro paragraph */
.fluent_form_14 .ff-step1-intro-wrap {
  text-align:center;
}

.fluent_form_14 .ff-step1-intro {
  font-family:'Playfair', 'Playfair Display', serif !important;
  font-size:18px !important;
  color:#42474d !important;
  line-height:1.625 !important;
  text-align:center;
  max-width:580px;
  margin:0 auto !important;
  font-style:normal;
}

/* Ticket info card — cream card, no left border */
.fluent_form_14 .ff-ticket-info-card {
  background:#f7f3ea;
  padding:32px 36px;
  box-shadow:0px 1px 3px rgba(0,0,0,0.06);
  border:none;
  border-left:none;
  margin:32px 0 0 0;
  border-radius:0;
}

.fluent_form_14 .ff-ticket-info-card-inner {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:24px;
}

.fluent_form_14 .ff-ticket-info-content {
  flex:1;
}

.fluent_form_14 .ff-ticket-overline {
  display:block;
  font-family:'Montserrat', sans-serif;
  font-weight:600;
  font-size:11px;
  color:var(--character-gold, #a29061);
  letter-spacing:1.5px;
  text-transform:uppercase;
  margin-bottom:4px;
}

.fluent_form_14 .ff-ticket-title {
  font-family:'Montserrat', sans-serif !important;
  font-weight:600 !important;
  font-size:18px !important;
  color:var(--spirit-blue, #19435d) !important;
  text-transform:none !important;
  letter-spacing:0 !important;
  line-height:1.4 !important;
  margin:0 0 6px 0 !important;
  padding:0 !important;
  border:none !important;
}

.fluent_form_14 .ff-ticket-desc {
  font-family:'Montserrat', sans-serif;
  font-size:13px;
  color:#42474d;
  line-height:1.55;
  margin:0;
  max-width:400px;
}

.fluent_form_14 .ff-ticket-price {
  display:flex;
  align-items:center;
  flex-shrink:0;
}

.fluent_form_14 .ff-ticket-amount {
  font-family:'Playfair', 'Playfair Display', serif;
  font-size:24px;
  color:var(--character-gold, #a29061);
  white-space:nowrap;
}

.fluent_form_14 .ff-ticket-ea {
  font-family:'Montserrat', sans-serif;
  font-size:14px;
  font-weight:400;
  color:#42474d;
}

/* Number of Registrants — bold heading + dropdown right */
.fluent_form_14 .ff-num-registrants.ff-el-group {
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:center !important;
  justify-content:space-between !important;
  margin-top:32px !important;
  padding-bottom:16px !important;
  
}

.fluent_form_14 .ff-num-registrants .ff-el-input--label {
  flex:1 !important;
  margin-bottom:0 !important;
}

.fluent_form_14 .ff-num-registrants .ff-el-input--label label {
  font-family:'Montserrat', sans-serif !important;
  font-weight:600 !important;
  font-size:18px !important;
  color:var(--spirit-blue, #19435d) !important;
  text-transform:none !important;
  letter-spacing:0 !important;
  line-height:1.4 !important;
}

/* "SELECT QUANTITY" subtitle via ::after on label */
.fluent_form_14 .ff-num-registrants .ff-el-input--label label::after {
  content:'Select Quantity' !important;
  display:block !important;
  font-family:'Montserrat', sans-serif !important;
  font-weight:600 !important;
  font-size:10px !important;
  color:#42474d !important;
  text-transform:uppercase !important;
  letter-spacing:1px !important;
  margin-top:2px !important;
}

/* Remove required asterisk on this field */
.fluent_form_14 .ff-num-registrants.ff-el-is-required.asterisk-right label > span {
  display:none !important;
}

.fluent_form_14 .ff-num-registrants .ff-el-input--content {
  flex:0 0 auto !important;
  width:120px !important;
}

.fluent_form_14 .ff-num-registrants select.ff-el-form-control {
  text-align:right;
  font-size:18px !important;
  color:var(--spirit-blue, #19435d) !important;
  font-weight:500 !important;
}

@media (max-width:768px) {
  .fluent_form_14 .ff-ticket-info-card-inner {
    flex-direction:column;
    gap:16px;
    align-items:flex-start;
  }
  .fluent_form_14 .ff-num-registrants.ff-el-group {
    flex-direction:column;
    align-items:flex-start !important;
    gap:12px;
  }
  .fluent_form_14 .ff-num-registrants .ff-el-input--content {
    width:100% !important;
  }
}


/* ========================================
   STEP 3 — PAYMENT LINE ITEMS + QUANTITIES
   ======================================== */
/* Hide the payment item labels (summary table shows them instead) */
.fluent_form_14 .ff-payment-line-item {
  position:absolute !important;
  width:1px !important;
  height:1px !important;
  overflow:hidden !important;
  clip:rect(0,0,0,0) !important;
  border:0 !important;
  padding:0 !important;
  margin:-1px !important;
}

/* Hide quantity inputs (JS sets them, user doesn't need to see them) */
.fluent_form_14 .ff-payment-qty {
  position:absolute !important;
  width:1px !important;
  height:1px !important;
  overflow:hidden !important;
  clip:rect(0,0,0,0) !important;
  border:0 !important;
  padding:0 !important;
  margin:-1px !important;
}


/* ========================================
   STEP 3 — REGISTRANT SUMMARY GRID
   ======================================== */
.fluent_form_14 .ff-confirm-heading {
  font-family:'Playfair Display', serif;
  font-weight:400;
  font-size:28px;
  color:var(--character-gold, #a29061);
  margin:0 0 24px 0;
}

.fluent_form_14 .ff-registrant-summary {
  background:#f7f3ea;
  padding:32px 36px;
  margin-bottom:32px;
}

.fluent_form_14 .ff-reg-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:32px 48px;
}

.fluent_form_14 .ff-reg-block {
  padding-bottom:16px;
}

.fluent_form_14 .ff-reg-block-label {
  font-family:'Montserrat', sans-serif;
  font-weight:600;
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:1.2px;
  margin-bottom:8px;
}

.fluent_form_14 .ff-reg-label-primary {
  color:var(--character-gold, #a29061);
}

.fluent_form_14 .ff-reg-label-other {
  color:var(--character-gold, #a29061);
}

.fluent_form_14 .ff-reg-block-name {
  font-family:'Montserrat', sans-serif;
  font-size:15px;
  font-weight:500;
  color:var(--spirit-blue, #19435d);
  line-height:1.5;
}

.fluent_form_14 .ff-reg-block-line {
  font-family:'Montserrat', sans-serif;
  font-size:14px;
  color:var(--spirit-blue, #19435d);
  line-height:1.6;
}

.fluent_form_14 .ff-reg-block-line strong {
  font-weight:600;
}

.fluent_form_14 .ff-reg-prefs-label {
  font-family:'Montserrat', sans-serif;
  font-weight:600;
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:1px;
  color:#42474d;
  margin-top:12px;
  margin-bottom:4px;
}

@media (max-width:768px) {
  .fluent_form_14 .ff-reg-grid {
    grid-template-columns:1fr;
    gap:24px;
  }
}

/* Move confirm heading inside the cream card */
.fluent_form_14 .ff-confirm-section .ff-confirm-heading {
  display:none;
}

.fluent_form_14 .ff-registrant-summary .ff-confirm-heading-inner {
  font-family:'Playfair Display', serif;
  font-weight:400;
  font-style:normal;
  font-size:28px;
  color:var(--spirit-blue, #19435d);
  border:none;
  padding-bottom:0;
  margin:0 0 24px 0;
}

.fluent_form_14 .ff-registrant-summary h3 {
  border-bottom:none !important;
  padding-bottom:0 !important;
}

/* ========================================
   MOBILE FIXES — prevent horizontal overflow
   ======================================== */
@media (max-width:768px) {
  /* Contain the form and add page-level horizontal padding */
  .fluent_form_14 {
    overflow-x:hidden !important;
    max-width:100vw !important;
    padding-left:16px !important;
    padding-right:16px !important;
    box-sizing:border-box !important;
  }

  /* Step body content needs to respect the padding */
  .fluent_form_14 .fluentform-step {
    max-width:100% !important;
    box-sizing:border-box !important;
  }

  /* Payment summary table: natural reflow instead of forced min-width */
  .fluent_form_14 .ff_payment_summary {
    overflow-x:auto !important;
    -webkit-overflow-scrolling:touch;
    max-width:100% !important;
  }

  .fluent_form_14 .ff_payment_summary table {
    min-width:0 !important;
    width:100% !important;
    table-layout:auto !important;
  }

  .fluent_form_14 .ff_payment_summary thead th,
  .fluent_form_14 .ff_payment_summary thead td,
  .fluent_form_14 .ff_payment_summary .ff_table_head td {
    padding:10px 12px !important;
    font-size:9px !important;
    letter-spacing:0.5px !important;
  }

  .fluent_form_14 .ff_payment_summary tbody td {
    padding:12px !important;
    font-size:13px !important;
  }

  .fluent_form_14 .ff_payment_summary tbody td:first-child {
    font-size:14px !important;
    line-height:1.4 !important;
    word-break:break-word !important;
  }

  .fluent_form_14 .ff_payment_summary tfoot th,
  .fluent_form_14 .ff_payment_summary tfoot td,
  .fluent_form_14 .ff_payment_summary tr.ff_total_row th,
  .fluent_form_14 .ff_payment_summary tr.ff_total_row td,
  .fluent_form_14 .ff_payment_summary tr.ff_total th,
  .fluent_form_14 .ff_payment_summary tr.ff_total td {
    padding:14px 12px !important;
    font-size:14px !important;
    letter-spacing:0.5px !important;
  }

  /* Registrant summary: tighter padding */
  .fluent_form_14 .ff-registrant-summary {
    padding:24px 20px;
  }

  .fluent_form_14 .ff-registrant-summary .ff-confirm-heading-inner {
    font-size:22px;
  }

  /* Confirm section padding */
  .fluent_form_14 .ff-confirm-info {
    padding:16px 20px 12px;
  }

  /* Inner submit container */
  .fluent_form_14 .ff-inner_submit_container {
    flex-direction:column-reverse !important;
    gap:16px;
  }


  /* Registrant cards on mobile */
  .fluent_form_14 .ff-registrant-card .ff-column-container {
    padding:24px !important;
    margin-bottom:24px !important;
  }
}
