@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;600&family=Playfair+Display:wght@500;700&display=swap');

/* ========================================================================== */
/* 1. CORE PAGE OVERRIDES (BURGUNDY, CREAM, GOLD & PLAYFAIR FONT)             */
/* ========================================================================== */

/* Nuke global headers/footers/share tools ONLY on the form page */
html:has(form[id="7338624"]) #TopHeader, 
html:has(form[id="7338624"]) .co_header, 
html:has(form[id="7338624"]) #header, 
html:has(form[id="7338624"]) #HeaderContainer, 
html:has(form[id="7338624"]) .header-wrapper, 
html:has(form[id="7338624"]) .global-header,
html:has(form[id="7338624"]) .g960.footer, 
html:has(form[id="7338624"]) .b_footer.footer_bar, 
html:has(form[id="7338624"]) .footer3, 
html:has(form[id="7338624"]) .poweredby,
html:has(form[id="7338624"]) #header_branding, 
html:has(form[id="7338624"]) .chabad_header, 
html:has(form[id="7338624"]) .page-tools__section, 
html:has(form[id="7338624"]) .page-tools__tool, 
html:has(form[id="7338624"]) .page-tools,
html:has(form[id="7338624"]) .share_tools, 
html:has(form[id="7338624"]) #share_tools, 
html:has(form[id="7338624"]) .article-tools, 
html:has(form[id="7338624"]) .print_share, 
html:has(form[id="7338624"]) .share-container, 
html:has(form[id="7338624"]) #sharebar,
html:has(form[id="7338624"]) .print_email_tools, 
html:has(form[id="7338624"]) .tools_container, 
html:has(form[id="7338624"]) .share-strip, 
html:has(form[id="7338624"]) #share-strip,
html:has(form[id="7338624"]) .addthis_toolbox, 
html:has(form[id="7338624"]) .addthis-smartlayers, 
html:has(form[id="7338624"]) #at4-share, 
html:has(form[id="7338624"]) .at4-share, 
html:has(form[id="7338624"]) .a2a_floating_style,
html:has(form[id="7338624"]) div[id^="at4-"], 
html:has(form[id="7338624"]) div[class*="addthis"], 
html:has(form[id="7338624"]) div[class*="a2a_"] {
    display: none !important; opacity: 0 !important; visibility: hidden !important;
    pointer-events: none !important; position: absolute !important; z-index: -9999 !important;
}

html:has(form[id="7338624"]) .cco_templateless_template { max-height: 0 !important; overflow: hidden !important; margin: 0 !important; padding: 0 !important; border: none !important; }

/* DEEP BURGUNDY BACKGROUND FOR FORM AREA */
html:has(form[id="7338624"]), 
html:has(form[id="7338624"]) body, 
html:has(form[id="7338624"]) #BodyContainer, 
html:has(form[id="7338624"]) #chabad_body_page, 
html:has(form[id="7338624"]) .cco_templatelates_content,
html:has(form[id="7338624"]) .master-content-wrapper, 
html:has(form[id="7338624"]) .body_wrapper, 
html:has(form[id="7338624"]) #co_body_container, 
html:has(form[id="7338624"]) #ContentBody, 
html:has(form[id="7338624"]) #cco_body, 
html:has(form[id="7338624"]) #co_content_container, 
html:has(form[id="7338624"]) .content-area-parent, 
html:has(form[id="7338624"]) article.content, 
html:has(form[id="7338624"]) #content_page { 
    background-color: #2b0813 !important; 
    margin: 0 !important; 
}

/* -------------------------------------------------------------------------- */
/* FULL-WIDTH DARK MENU BAR (No-Gap Bleed Hack)                               */
/* -------------------------------------------------------------------------- */
html:has(form[id="7338624"]),
html:has(form[id="7338624"]) body,
html:has(form[id="7338624"]) #BodyContainer,
html:has(form[id="7338624"]) #chabad_body_page { 
    overflow-x: hidden !important; 
}

html:has(form[id="7338624"]) #chabad_head { 
    background-color: #07080A !important; 
    border-bottom: none !important; 
    padding: 15px 0 !important; 
    width: 100% !important; 
    position: relative !important; 
    left: 0 !important;
    margin: 0 !important;
    transform: none !important;
    box-shadow: none !important;
    z-index: 5 !important;
    overflow: visible !important;
}

html:has(form[id="7338624"]) #chabad_head::before {
    content: "" !important;
    position: absolute !important;
    top: 0 !important;
    bottom: 0 !important;
    left: -100vw !important;
    right: -100vw !important;
    background-color: #07080A !important;
    z-index: -1 !important;
}

html:has(form[id="7338624"]) div#navigation.chabad_navigator_bar,
html:has(form[id="7338624"]) .chabad_menu_content { 
    background: transparent !important; 
    width: 100% !important; 
    max-width: 900px !important;
    margin: 0 auto !important;
}

html:has(form[id="7338624"]) ul#menu.navi { 
    display: flex !important; 
    justify-content: center !important; 
    align-items: center !important; 
    flex-wrap: wrap !important; 
    list-style: none !important; 
    padding: 5px 12px !important; 
    margin: 0 auto !important; 
}

html:has(form[id="7338624"]) ul#menu.navi li.item { 
    display: flex !important; 
    align-items: center !important; 
    float: none !important; 
    border: none !important; 
    background: transparent !important; 
    font-size: 0px !important; 
    color: transparent !important; 
}

/* MENU FONT */
html:has(form[id="7338624"]) div#navigation.chabad_navigator_bar ul#menu.navi li.item a { 
    font-family: 'Playfair Display', serif !important; 
    font-size: 26px !important; 
    letter-spacing: 0.1em !important; 
    text-transform: uppercase !important; 
    color: #d8a95c !important; 
    text-decoration: none !important; 
    padding: 8px 15px !important; 
    font-weight: 500 !important; 
    border: none !important; 
    background: transparent !important; 
    box-shadow: none !important; 
    transition: color 0.3s !important; 
}

html:has(form[id="7338624"]) div#navigation.chabad_navigator_bar ul#menu.navi li.item a:hover { 
    color: #fdfbf7 !important; 
}

/* Dividers */
html:has(form[id="7338624"]) ul#menu.navi li.item:not(:last-child)::after { 
    content: "" !important; 
    display: inline-block !important; 
    width: 1px !important; 
    height: 14px !important; 
    background-color: rgba(216, 169, 92, 0.4) !important; 
    margin: 0 20px !important; 
}

/* Layout Fixes */
html:has(form[id="7338624"]) .chabad_right_column, 
html:has(form[id="7338624"]) #chabad_right_colum { display: none !important; }

html:has(form[id="7338624"]) div#chabad_left_colum, 
html:has(form[id="7338624"]) div.chabad_left_colum, 
html:has(form[id="7338624"]) div.chabad_left_column { width: 100% !important; float: none !important; margin: 0 auto !important; padding: 0 !important; }

html:has(form[id="7338624"]) div#chabad_main_content { 
    width: 100% !important; 
    max-width: 900px !important; 
    margin: 0 auto !important; 
    border: none !important; 
    overflow: visible !important; 
    text-align: left; 
}

html:has(form[id="7338624"]) div#cco_body .content_tditle_container .overlay, 
html:has(form[id="7338624"]) div.widget_header, 
html:has(form[id="7338624"]) #border_bottom, 
html:has(form[id="7338624"]) td.chabad_logo { display: none; }

html:has(form[id="7338624"]) div#chabad_body_content { float: left; padding-bottom: 30px; width: 100%; }

/* -------------------------------------------------------------------------- */
/* FORM TITLE                                                                 */
/* -------------------------------------------------------------------------- */
html:has(form[id="7338624"]) .article-header { background: transparent !important; padding: 40px 0 20px !important; text-align: center !important; border-bottom: none !important; }
html:has(form[id="7338624"]) .article-header__title { font-family: 'Playfair Display', serif !important; color: #d8a95c !important; font-size: 24px !important; font-weight: 500 !important; letter-spacing: 0.25em !important; text-transform: uppercase !important; margin: 0 !important; line-height: 1.2 !important; }

/* Hide the old asterisk explanation text blocks */
form[id="7338624"] li#id_19, 
form[id="7338624"] li#id_26 { display: none !important; }

/* ========================================================================== */
/* 2. FORM ARCHITECTURE                                                       */
/* ========================================================================== */

form[id="7338624"] { padding: 0 !important; }
form[id="7338624"] .form-all { background: transparent !important; font-family: 'Montserrat', sans-serif !important; color: #fdfbf7 !important; max-width: 600px !important; margin: 0 auto !important; font-size: 14px !important; box-shadow: none !important; border: none !important; }
form[id="7338624"] .form-section { list-style: none !important; padding: 0 !important; margin: 0 !important; }

/* Tightened Spacing */
form[id="7338624"] .form-line { border-bottom: none !important; padding: 10px 0 !important; margin: 0 !important; }

/* Hide Red Required Asterisks */
form[id="7338624"] .form-required { display: none !important; }

/* Form Texts */
form[id="7338624"] .form-html p { font-family: 'Montserrat', sans-serif !important; font-style: italic !important; font-size: 12px !important; color: #c9b1b8 !important; text-align: center !important; letter-spacing: 0.04em !important; margin: 0 0 10px 0 !important; }
form[id="7338624"] .userform-form::after, form[id="7338624"] .form-all::after { color: #d8a95c !important; font-family: 'Montserrat', sans-serif !important; font-size: 14px !important; }

/* -------------------------------------------------------------------------- */
/* FIELD HEADERS                                                              */
/* -------------------------------------------------------------------------- */
form[id="7338624"] .form-label-left, 
form[id="7338624"] .form-label-top, 
form[id="7338624"] .form-label { 
    font-family: 'Playfair Display', serif !important; 
    font-size: 20px !important; 
    letter-spacing: 0.15em !important; 
    text-transform: uppercase !important; 
    color: #d8a95c !important; 
    display: block !important; 
    margin-bottom: 8px !important; 
    font-weight: 500 !important; 
    width: 100% !important; 
    float: none !important; 
    text-align: left !important; 
}

form[id="7338624"] .label-message { font-family: 'Montserrat', sans-serif !important; font-size: 12px !important; color: #c9b1b8 !important; letter-spacing: 0.03em !important; text-transform: none !important; font-weight: 400 !important; display: block !important; margin-bottom: 8px !important; }
form[id="7338624"] .form-sub-label { font-family: 'Montserrat', sans-serif !important; font-size: 10px !important; font-weight: 400 !important; letter-spacing: 0.08em !important; text-transform: uppercase !important; color: #c9b1b8 !important; margin-top: 6px !important; white-space: nowrap !important; }

/* Text Inputs, Dropdowns, & Spinners */
form[id="7338624"] input[type="text"], 
form[id="7338624"] input[type="email"], 
form[id="7338624"] input[type="tel"], 
form[id="7338624"] input[type="number"], 
form[id="7338624"] textarea, 
form[id="7338624"] select,
form[id="7338624"] .form-spinner-input,
form[id="7338624"] .form-spinner { 
    background: transparent !important; border: none !important; border-bottom: 1px solid #d8a95c !important; 
    border-radius: 0 !important; color: #fdfbf7 !important; font-family: 'Montserrat', sans-serif !important; 
    font-size: 16px !important; padding: 8px 0 !important; width: 100% !important; box-shadow: none !important; 
    outline: none !important; transition: border-color 0.2s !important; -webkit-appearance: none !important; appearance: none !important; 
}
form[id="7338624"] input:focus, form[id="7338624"] textarea:focus, form[id="7338624"] select:focus, form[id="7338624"] .form-spinner-input:focus { border-bottom-color: #fdfbf7 !important; }

/* Safe Dropdown Select styling */
form[id="7338624"] select {
    background: transparent !important; border: none !important; border-bottom: 1px solid #d8a95c !important; 
    border-radius: 0 !important; color: #fdfbf7 !important; font-family: 'Montserrat', sans-serif !important; 
    font-size: 16px !important; padding: 8px 0 !important; width: 100% !important; box-shadow: none !important; 
    outline: none !important; transition: border-color 0.2s !important;
}
form[id="7338624"] select option { background: #2b0813 !important; color: #fdfbf7 !important; }

/* Force Textboxes to Match Other Filled Inputs */
form[id="7338624"] textarea.form-textarea { 
    font-family: 'Montserrat', sans-serif !important; 
    font-size: 16px !important; 
    color: #fdfbf7 !important; 
    line-height: 1.5 !important; 
    resize: vertical !important; 
    height: 60px !important; 
    min-height: 60px !important;
}

form[id="7338624"] #input_21, form[id="7338624"] #input_27 { width: 100% !important; }

/* -------------------------------------------------------------------------- */
/* STYLIZED PLACEHOLDERS                                                      */
/* -------------------------------------------------------------------------- */
form[id="7338624"] input::-webkit-input-placeholder, 
form[id="7338624"] textarea::-webkit-input-placeholder,
form[id="7338624"] select::-webkit-input-placeholder { color: #c9b1b8 !important; font-family: 'Montserrat', sans-serif !important; opacity: 0.9 !important; font-size: 14px !important; font-style: normal !important; text-transform: none !important; }

form[id="7338624"] input::-moz-placeholder, 
form[id="7338624"] textarea::-moz-placeholder,
form[id="7338624"] select::-moz-placeholder { color: #c9b1b8 !important; font-family: 'Montserrat', sans-serif !important; opacity: 0.9 !important; font-size: 14px !important; font-style: normal !important; text-transform: none !important; }

form[id="7338624"] input:-ms-input-placeholder, 
form[id="7338624"] textarea:-ms-input-placeholder,
form[id="7338624"] select:-ms-input-placeholder { color: #c9b1b8 !important; font-family: 'Montserrat', sans-serif !important; opacity: 0.9 !important; font-size: 14px !important; font-style: normal !important; text-transform: none !important; }

form[id="7338624"] input::placeholder, 
form[id="7338624"] textarea::placeholder { 
    color: #c9b1b8 !important; font-family: 'Montserrat', sans-serif !important; opacity: 0.9 !important; font-size: 14px !important; font-style: normal !important; text-transform: none !important; 
}

form[id="7338624"] input[customhinted="true"], 
form[id="7338624"] textarea[customhinted="true"],
form[id="7338624"] .custom-hint-group[customhinted="true"] { 
    color: #c9b1b8 !important; 
    font-family: 'Montserrat', sans-serif !important; 
    opacity: 0.9 !important; 
    font-size: 14px !important; 
    font-style: italic !important; 
    text-transform: none !important; 
}

/* Hide ugly spinner buttons */
form[id="7338624"] .form-spinner-up, form[id="7338624"] .form-spinner-down { display: none !important; }

/* Side-by-Side fixes */
form[id="7338624"] .form-sub-label-container { display: inline-block !important; vertical-align: top !important; box-sizing: border-box !important; }
form[id="7338624"] #id_1 .form-sub-label-container { width: 48% !important; margin-right: 1% !important; }

/* Phone Number (Area Code & Number on Same Line) */
form[id="7338624"] #id_28 .dir_ltr { display: flex !important; gap: 10px !important; width: 100% !important; }
form[id="7338624"] #id_28 .form-sub-label-container { width: 100% !important; margin: 0 !important; flex: 1; }
form[id="7338624"] #id_28 .form-sub-label-container:first-child { flex: 0 0 30% !important; }

/* ========================================================================== */
/* ERROR MESSAGE CUSTOMIZATION (REFINED)                                      */
/* ========================================================================== */

/* 1. Nuke the big cream-colored row highlight (keeps it burgundy) */
html:has(form[id="7338624"]) .form-line-error,
form[id="7338624"] .form-line-error {
    background-color: transparent !important;
    background: transparent !important;
}

/* 2. Restore the small red background bubble for individual errors */
form[id="7338624"] .form-error-message { 
    background: #e15353 !important; 
    color: #ffffff !important; 
    font-family: 'Montserrat', sans-serif !important;
    font-size: 13px !important; 
    box-shadow: 0 2px 5px rgba(0,0,0,0.3) !important; 
    border-radius: 4px !important; 
    padding: 8px 10px !important; 
    display: inline-block !important;
}

/* 3. STOP text replacement */
form[id="7338624"] .form-error-message::after { 
    content: none !important; 
}

/* 4. Ensure the actual error text inside the bubble is white and visible */
form[id="7338624"] .form-error-message,
form[id="7338624"] .form-error-message * {
    color: #ffffff !important;
    font-size: 13px !important;
    opacity: 1 !important;
}

/* 5. Keep the arrow pointing to the bubble red */
form[id="7338624"] .form-error-arrow-inner { 
    border-bottom-color: #e15353 !important; 
}
form[id="7338624"] .form-error-arrow { 
    border-bottom-color: transparent !important; 
}

/* 6. Clean up the global error banner at the top/bottom */
html:has(form[id="7338624"]) #form-error, 
form[id="7338624"] #form-error {
    color: #e15353 !important;
    background: transparent !important;
    border: none !important;
    font-weight: 600 !important;
}

/* ========================================================================== */
/* 3. AD GRID & RADIO BUTTONS                                                 */
/* ========================================================================== */
form[id="7338624"] #cid_9 .form-multiple-column { columns: unset !important; display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 10px !important; margin-top: 8px !important; }
form[id="7338624"] #cid_9 .clearfix { display: none !important; width: 0 !important; height: 0 !important; }
form[id="7338624"] #cid_9 .form-multiple-column .form-radio-item { width: auto !important; max-width: none !important; min-width: 0 !important; float: none !important; }

form[id="7338624"] #cid_9 .form-radio-item {
  display: flex !important; align-items: flex-start !important; padding: 12px !important;
  border: 1px solid #d8a95c !important; margin: 0 !important; position: relative !important;
  transition: all 0.25s ease !important; cursor: pointer !important; background: #ffffff !important;
  border-radius: 4px !important;
}

form[id="7338624"] #cid_9 .form-radio-item:hover { background: #f9f1f3 !important; transform: translateY(-2px) !important; box-shadow: 0 4px 10px rgba(0,0,0,0.3) !important; }
form[id="7338624"] #cid_9 .form-radio-item:has(input:checked) { background: #f9f1f3 !important; border-color: #d8a95c !important; box-shadow: 0 4px 10px rgba(0,0,0,0.3) !important; }

form[id="7338624"] #cid_9 .form-radio {
  appearance: none !important; -webkit-appearance: none !important; margin-right: 10px !important; flex-shrink: 0 !important;
  width: 14px !important; height: 14px !important; border: 1px solid #d8a95c !important; background: #ffffff !important;
  border-radius: 0 !important; cursor: pointer !important; position: relative !important; margin-top: 2px !important;
}

form[id="7338624"] #cid_9 .form-radio:checked { background: #d8a95c !important; border-color: #d8a95c !important; }
form[id="7338624"] #cid_9 .form-radio:checked::after {
  content: '' !important; position: absolute !important; left: 3px !important; top: 1px !important; width: 4px !important; height: 7px !important;
  border: 1px solid #2b0813 !important; border-top: none !important; border-left: none !important; transform: rotate(45deg) !important;
}

form[id="7338624"] #cid_9 .form-radio-item label { cursor: pointer !important; width: 100% !important; display: block !important; }

form[id="7338624"] #cid_9 .form-radio-item label span { display: block !important; font-family: 'Montserrat', sans-serif !important; font-size: 14px !important; color: #2b0813 !important; font-weight: 600 !important; letter-spacing: 0.02em !important; line-height: 1.3 !important; transition: color 0.2s !important; }

form[id="7338624"] #cid_9 .form-radio-item label span::after {
  display: block;
  font-family: 'Montserrat', sans-serif;
  font-size: 10px;
  color: #2b0813;
  opacity: 0.7;
  letter-spacing: 0.02em;
  margin-top: 4px;
  line-height: 1.4;
  font-style: italic;
  font-weight: 400 !important;
  transition: opacity 0.2s !important;
}

form[id="7338624"] #cid_9 .form-radio-item:hover label span::after,
form[id="7338624"] #cid_9 .form-radio-item:has(input:checked) label span::after { opacity: 1 !important; }

form[id="7338624"] #cid_9 .form-radio-item:nth-child(1) label span::after { content: 'Two tables of 10 at the Gala'; }
form[id="7338624"] #cid_9 .form-radio-item:nth-child(3) label span::after { content: 'Table of 10 at the Gala'; }
form[id="7338624"] #cid_9 .form-radio-item:nth-child(5) label span::after { content: 'Table of 10 at the Gala'; }
form[id="7338624"] #cid_9 .form-radio-item:nth-child(7) label span::after { content: '2 seats at the Gala'; }
form[id="7338624"] #cid_9 .form-radio-item:nth-child(9) label span::after { content: '2 seats at the Gala'; }
form[id="7338624"] #cid_9 .form-radio-item:nth-child(11) label span::after { content: '2 seats at the Gala'; }
form[id="7338624"] #cid_9 .form-radio-item:nth-child(13) label span::after { content: '2 seats at the Gala'; }

/* ========================================================================== */
/* 4. PAYMENT, CHECKBOXES & TOTALS                                            */
/* ========================================================================== */

/* Offset Checkbox */
form[id="7338624"] .form-checkbox { appearance: none !important; -webkit-appearance: none !important; width: 14px !important; height: 14px !important; border: 1px solid #d8a95c !important; background: transparent !important; cursor: pointer !important; position: relative !important; flex-shrink: 0 !important; vertical-align: middle !important; margin-right: 8px !important; }
form[id="7338624"] .form-checkbox:checked { background: #d8a95c !important; border-color: #d8a95c !important; }
form[id="7338624"] .form-checkbox:checked::after { content: '' !important; position: absolute !important; left: 3px !important; top: 1px !important; width: 4px !important; height: 7px !important; border: 1px solid #2b0813 !important; border-top: none !important; border-left: none !important; transform: rotate(45deg) !important; }
form[id="7338624"] .form-checkbox-item { display: flex !important; align-items: center !important; padding: 4px 0 !important; }
form[id="7338624"] .form-checkbox-item label { font-family: 'Montserrat', sans-serif !important; font-size: 13px !important; color: #fdfbf7 !important; letter-spacing: 0.04em !important; font-weight: normal !important; cursor: pointer !important; }

/* Payment Radios */
form[id="7338624"] .form-payment-methods .form-radio { border-radius: 50% !important; width: 16px !important; height: 16px !important; border: 1px solid #d8a95c !important; }
form[id="7338624"] .form-payment-methods .form-radio:checked { background: #d8a95c !important; border-color: #d8a95c !important; }
form[id="7338624"] .form-payment-methods .form-radio-item { display: inline-flex !important; margin-right: 20px !important; }
form[id="7338624"] .form-payment-methods label { font-family: 'Playfair Display', serif !important; font-size: 16px !important; color: #fdfbf7 !important; font-weight: normal !important; }

/* Make Check Instructions Match Subtext */
form[id="7338624"] tr.other td { 
    font-family: 'Montserrat', sans-serif !important; 
    font-size: 12px !important; 
    color: #c9b1b8 !important; 
    letter-spacing: 0.03em !important; 
    padding-top: 8px !important; 
    line-height: 1.4 !important; 
}

/* Structure Enforcement */
form[id="7338624"] .form-payment-methods table, form[id="7338624"] .form-payment-methods tbody, form[id="7338624"] .form-payment-methods tr, form[id="7338624"] .form-payment-methods td, form[id="7338624"] .cc-field-wrapper, form[id="7338624"] .cc-field-wrapper table, form[id="7338624"] .cc-field-wrapper tbody, form[id="7338624"] .cc-field-wrapper tr, form[id="7338624"] .cc-field-wrapper td, form[id="7338624"] .js-cc-number, form[id="7338624"] .cc_ccv, form[id="7338624"] .cc_name_on_card, form[id="7338624"] .other.credit_card, form[id="7338624"] .form-address-table, form[id="7338624"] .form-address-table tbody, form[id="7338624"] .form-address-table tr, form[id="7338624"] .form-address-table td, form[id="7338624"] .form-address-line, form[id="7338624"] .billing_address, form[id="7338624"] .form-single-column { width: 100% !important; max-width: 100% !important; min-width: 0 !important; box-sizing: border-box !important; float: none !important; table-layout: fixed !important; }

/* Totals */
form[id="7338624"] #label_16 label, form[id="7338624"] #label_16 { font-family: 'Montserrat', sans-serif !important; font-size: 10px !important; letter-spacing: 0.22em !important; color: #c9b1b8 !important; text-transform: uppercase !important; font-weight: normal !important; }
form[id="7338624"] #total_amount { font-family: 'Playfair Display', serif !important; font-size: 22px !important; color: #d8a95c !important; font-weight: normal !important; letter-spacing: 0.05em !important; margin-top: 6px !important; margin-bottom: 12px !important; }

/* ========================================================================== */
/* 5. SUBMIT BUTTON OVERRIDE                                                  */
/* ========================================================================== */
form[id="7338624"] .form-buttons-wrapper { text-align: center !important; padding: 25px 0 15px !important; border-bottom: none !important; display: block !important; width: 100% !important; text-indent: 0 !important; }
form[id="7338624"] .form-submit-button {
  background: transparent !important; border: 1px solid #d8a95c !important; border-radius: 0 !important;
  color: transparent !important; font-family: 'Playfair Display', serif !important; font-size: 13px !important;
  letter-spacing: 0.32em !important; text-transform: uppercase !important; padding: 14px 45px !important;
  cursor: pointer !important; transition: background 0.35s, color 0.35s, border-color 0.35s !important;
  float: none !important; text-shadow: none !important; box-shadow: none !important; position: relative !important;
}
form[id="7338624"] .form-submit-button::after {
  content: "RESERVE" !important; color: #d8a95c !important; position: absolute !important; left: 50% !important;
  top: 50% !important; transform: translate(-50%, -50%) !important; transition: color 0.3s !important;
}
form[id="7338624"] .form-submit-button:hover { background: #d8a95c !important; border-color: #d8a95c !important; }
form[id="7338624"] .form-submit-button:hover::after { color: #2b0813 !important; }

/* ========================================================================== */
/* FIX VISA ICON OVERLAPPING CC NUMBERS                                       */
/* ========================================================================== */

/* 1. Create space for the icon inside the input */
form[id="7338624"] #input_15_cc_number {
    padding-left: 45px !important; 
    box-sizing: border-box !important;
}

/* 2. Position the icon within that new space */
form[id="7338624"] .cc-field-wrapper.icon::before,
form[id="7338624"] .cc-field-wrapper.icon .visa-icon,
form[id="7338624"] .cc-field-wrapper.icon::after {
    left: 8px !important; 
    top: 50% !important;
    transform: translateY(-50%) !important;
    position: absolute !important;
    z-index: 10 !important;
    pointer-events: none !important; 
}

/* 3. Ensure the wrapper doesn't collapse */
form[id="7338624"] .cc-field-wrapper {
    position: relative !important;
    display: block !important;
}

/* ========================================================================== */
/* HIDE THE OVERLAPPING VISA ICON ON THE LEFT                                 */
/* ========================================================================== */

/* This specifically kills the messy icon inside the credit card wrapper */
form[id="7338624"] .cc-field-wrapper.icon::before,
form[id="7338624"] .cc-field-wrapper.icon .visa-icon,
form[id="7338624"] .cc-field-wrapper.icon::after {
    display: none !important;
}

/* ========================================================================== */
/* 6. MOBILE RESPONSIVENESS (WITH YOUR FIXES)                                 */
/* ========================================================================== */
@media only screen and (max-width: 600px) {
  /* Keep Journal Ads side-by-side on mobile, scale down slightly so they fit */
  form[id="7338624"] #cid_9 .form-multiple-column { grid-template-columns: 1fr 1fr !important; gap: 5px !important; }
  form[id="7338624"] #cid_9 .form-radio-item { padding: 8px !important; }
  form[id="7338624"] #cid_9 .form-radio-item label span { font-size: 12px !important; }
  form[id="7338624"] #cid_9 .form-radio { margin-right: 6px !important; }

  /* Fix CC padding on mobile so it doesn't push the numbers off-screen */
  form[id="7338624"] #input_15_cc_number { padding-left: 32px !important; }
  form[id="7338624"] .cc-field-wrapper.icon::before,
  form[id="7338624"] .cc-field-wrapper.icon .visa-icon,
  form[id="7338624"] .cc-field-wrapper.icon::after { 
      left: 4px !important; 
      transform: translateY(-50%) scale(0.7) !important; 
  }

  form[id="7338624"] .form-sub-label-container { width: 100% !important; margin-right: 0 !important; margin-bottom: 20px !important; }
  form[id="7338624"] #id_28 .form-sub-label-container:first-child { flex: 0 0 35% !important; }
}

/* ========================================================================== */
/* 7. SUBMISSION CONFIRMATION PAGE OVERRIDES (ISOLATED)                       */
/* ========================================================================== */

/* Center and format the thank you text */
#gala-receipt-2026 {
    color: #fdfbf7 !important;
    font-family: 'Montserrat', sans-serif !important;
    text-align: center !important;
    font-size: 16px !important;
    line-height: 1.6 !important;
}

/* Nuke the ugly gray table and apply the gold border */
#gala-receipt-2026 table.response_table {
    border: 1px solid #d8a95c !important;
    background-color: transparent !important;
    width: 100% !important;
    max-width: 600px !important;
    margin: 30px auto !important;
    border-collapse: collapse !important;
}

/* Force dark burgundy background over the inline #E4E4E4 */
#gala-receipt-2026 table.response_table td {
    border: 1px solid rgba(216, 169, 92, 0.3) !important;
    padding: 12px 15px !important;
    color: #fdfbf7 !important;
    background-color: #2b0813 !important; 
    font-family: 'Montserrat', sans-serif !important;
    font-size: 14px !important;
    text-align: left !important;
}

/* Target the left column (Field Names) to be Gold and Playfair */
#gala-receipt-2026 table.response_table td:first-child {
    color: #d8a95c !important;
    font-family: 'Playfair Display', serif !important;
    font-weight: 500 !important;
    letter-spacing: 0.05em !important;
    text-transform: uppercase !important;
}

/* Isolate the Print button so it only styles if the gala receipt is present */
.js-content:has(#gala-receipt-2026) .float_left {
    color: #d8a95c !important;
    font-family: 'Montserrat', sans-serif !important;
    text-transform: uppercase !important;
    letter-spacing: 0.1em !important;
    font-size: 12px !important;
    margin-bottom: 20px !important;
    opacity: 0.8;
    transition: opacity 0.3s;
}

.js-content:has(#gala-receipt-2026) .float_left:hover {
    opacity: 1;
}
