.elementor-35 .elementor-element.elementor-element-9afea69{--display:flex;}.elementor-35 .elementor-element.elementor-element-3efbf69{--display:flex;--margin-top:-68px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-35 .elementor-element.elementor-element-a8fd1d2{--display:flex;}.elementor-35 .elementor-element.elementor-element-da7d394{--display:flex;}.elementor-35 .elementor-element.elementor-element-368b0d5{--display:flex;}.elementor-35 .elementor-element.elementor-element-c2f7e2e.elementor-element{--align-self:center;}.elementor-35 .elementor-element.elementor-element-c349a1e{--display:flex;--min-height:1265px;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-35 .elementor-element.elementor-element-1dd59f8{--display:flex;--flex-direction:column-reverse;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-35 .elementor-element.elementor-element-1dd59f8.e-con{--align-self:center;--flex-grow:0;--flex-shrink:0;}.elementor-35 .elementor-element.elementor-element-06aad75.elementor-element{--align-self:center;}.elementor-35 .elementor-element.elementor-element-43cbf12{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-35 .elementor-element.elementor-element-43cbf12:not(.elementor-motion-effects-element-type-background), .elementor-35 .elementor-element.elementor-element-43cbf12 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://cheesesteakcompany.com/wp-content/uploads/2025/05/cathering-tray-1-683x1024.png");background-position:top center;background-repeat:no-repeat;}@media(min-width:768px){.elementor-35 .elementor-element.elementor-element-1dd59f8{--width:43%;}.elementor-35 .elementor-element.elementor-element-43cbf12{--width:100%;}}/* Start custom CSS for shortcode, class: .elementor-element-06aad75 *//* ==========================================================================
   Custom Formidable Forms Styling - Inspired by Restaurant Menu Example
   ========================================================================== */

/* --- Variables (Adjust colors and spacing as needed) --- */
:root {
    /* Color Palette - Inspired by the menu */
    --ff-primary-color: #AF0C0C; /* Dark Red (active button) */
    --ff-primary-hover-color: #A22020; /* Slightly Lighter Red (hover button) */
    --ff-text-on-primary: #fff; /* White text on red */
    --ff-text-color: #282828; /* Dark Gray/Black (menu text) */
    --ff-label-color: #282828; /* Dark Gray/Black (for labels) */
    --ff-description-color: #555; /* Medium Gray (menu description) */
    --ff-input-border-color: #DBDBDB; /* Light Gray (borders) */
    --ff-input-border-focus-color: #A22020; /* Use hover red for focus border */
    --ff-error-bg-color: #f8d7da; /* Keep original error bg */
    --ff-error-border-color: #f5c6cb; /* Keep original error border */
    --ff-error-text-color: #721c24; /* Keep original error text */
    --ff-error-field-border-color: #dc3545; /* Keep original invalid field border */

    /* Spacing & Borders */
    --ff-input-padding-vertical: 0.8rem;   /* Adjusted padding */
    --ff-input-padding-horizontal: 1rem;
    --ff-input-border-radius: 5px;         /* Rounded corners like menu */
    --ff-field-margin-bottom: 1.2rem;      /* Space between fields */

    /* Typography */
    --ff-font-family: sans-serif; /* Using the simpler font from example */
    /* OR keep the original system font stack if preferred: */
    /* --ff-font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif; */
    --ff-base-font-size: 16px;
    --ff-label-font-weight: bold;          /* Bold labels like menu item names */
    --ff-button-font-weight: bold;         /* Bold button text */
    --ff-button-letter-spacing: 1px;      /* Letter spacing like menu buttons */
}

/* --- General Form & Field Container --- */
.frm_forms { /* Target all formidable forms, or use #frm_form_YOUR_ID_container for specific form */
    font-family: var(--ff-font-family);
    font-size: var(--ff-base-font-size);
    color: var(--ff-text-color); /* Set base text color */
}

.frm_forms .frm_form_field {
    margin-bottom: var(--ff-field-margin-bottom); /* Space below each field */
}

/* --- Labels --- */
.frm_forms .frm_primary_label {
    display: block; /* Ensure label is on its own line */
    margin-bottom: 0.5rem; /* Space between label and input */
    color: var(--ff-label-color);
    font-weight: var(--ff-label-font-weight);
    font-size: 1em; /* Make label standard size */
    padding: 0; /* Reset any default padding */
    text-decoration: none; /* Ensure no accidental underlines */
}

.frm_forms .frm_required {
    /* Style the required indicator if desired (e.g., color) */
     color: var(--ff-primary-color); /* Make required star red */
     margin-left: 2px;
}

/* --- Input Fields (Text, Email, Number, Select, Textarea etc.) --- */
.frm_forms .frm_form_field input[type=text],
.frm_forms .frm_form_field input[type=email],
.frm_forms .frm_form_field input[type=password],
.frm_forms .frm_form_field input[type=number],
.frm_forms .frm_form_field input[type=tel],
.frm_forms .frm_form_field input[type=url],
.frm_forms .frm_form_field input[type=search],
.frm_forms .frm_form_field input[type=date],
.frm_forms .frm_form_field input[type=time],
.frm_forms .frm_form_field select,
.frm_forms .frm_form_field textarea {
    display: block;
    width: 100%;
    padding: var(--ff-input-padding-vertical) var(--ff-input-padding-horizontal);
    font-size: var(--ff-base-font-size);
    font-family: inherit; /* Inherit from form */
    line-height: 1.5;
    color: var(--ff-text-color);
    background-color: #fff;
    background-clip: padding-box;
    border: 1px solid var(--ff-input-border-color);
    border-radius: var(--ff-input-border-radius);
    transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
    box-shadow: none; /* Remove default shadows if any */
    box-sizing: border-box; /* Include padding/border in element's total width/height */
}

/* --- Focus State --- */
.frm_forms .frm_form_field input[type=text]:focus,
.frm_forms .frm_form_field input[type=email]:focus,
.frm_forms .frm_form_field input[type=password]:focus,
.frm_forms .frm_form_field input[type=number]:focus,
.frm_forms .frm_form_field input[type=tel]:focus,
.frm_forms .frm_form_field input[type=url]:focus,
.frm_forms .frm_form_field input[type=search]:focus,
.frm_forms .frm_form_field input[type=date]:focus,
.frm_forms .frm_form_field input[type=time]:focus,
.frm_forms .frm_form_field select:focus,
.frm_forms .frm_form_field textarea:focus {
    border-color: var(--ff-input-border-focus-color);
    outline: 0;
    /* Subtle focus ring matching the theme color */
    box-shadow: 0 0 0 0.2rem rgba(175, 12, 12, 0.25); /* Faded red shadow */
}

/* --- Select Dropdown Specifics --- */
.frm_forms .frm_form_field select {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    /* Custom arrow using background SVG - updated fill color */
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 6 10' xmlns='http://www.w3.org/2000/svg' role='presentation'%3E%3Cg fill='%23282828' fill-rule='nonzero'%3E%3Cpath d='M0 7l3 3 3-3zM0 3l3-3 3 3z'%3E%3C/path%3E%3C/g%3E%3C/svg%3E"); /* Changed fill to #282828 */
    background-repeat: no-repeat;
    background-position: right var(--ff-input-padding-horizontal) center;
    background-size: 10px 10px; /* Size of the arrow */
    padding-right: calc(var(--ff-input-padding-horizontal) * 2 + 10px); /* Make space for arrow */
}
/* IE11 Fix for select arrow */
.frm_forms .frm_form_field select::-ms-expand {
    display: none;
}


/* --- Textarea Specifics --- */
.frm_forms .frm_form_field textarea {
    min-height: 100px; /* Example height */
    line-height: 1.6;
}

/* --- Submit Button --- */
.frm_forms .frm_submit button[type=submit],
.frm_forms .frm_submit input[type=submit] {
    display: inline-block; /* Or 'block' for full width */
    padding: var(--ff-input-padding-vertical) var(--ff-input-padding-horizontal);
    font-size: 1.1rem; /* Slightly larger button text */
    font-weight: var(--ff-button-font-weight);
    letter-spacing: var(--ff-button-letter-spacing);
    line-height: 1.5;
    color: var(--ff-text-on-primary);
    background-color: var(--ff-primary-color);
    border: 1px solid var(--ff-primary-color);
    border-radius: var(--ff-input-border-radius);
    cursor: pointer;
    text-align: center;
    vertical-align: middle;
    text-decoration: none;
    transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
    -webkit-appearance: button; /* Fix iOS appearance */
    margin: 0; /* Reset margin */
    box-shadow: 0px 2px 5px -2px #888; /* Subtle bottom shadow like menu */
}

/* --- Submit Button Hover/Focus --- */
.frm_forms .frm_submit button[type=submit]:hover,
.frm_forms .frm_submit input[type=submit]:hover {
    background-color: var(--ff-primary-hover-color);
    border-color: var(--ff-primary-hover-color);
    color: var(--ff-text-on-primary);
    text-decoration: none;
    box-shadow: 0px 3px 7px -2px #666; /* Slightly stronger shadow on hover */
}

.frm_forms .frm_submit button[type=submit]:focus,
.frm_forms .frm_submit input[type=submit]:focus {
    outline: 0;
    background-color: var(--ff-primary-hover-color); /* Use hover color for focus */
    border-color: var(--ff-primary-hover-color);
    color: var(--ff-text-on-primary);
    /* Focus ring matching the theme */
    box-shadow: 0 0 0 0.2rem rgba(175, 12, 12, 0.5), 0px 3px 7px -2px #666;
}


/* --- Field Descriptions (Helper Text) --- */
.frm_forms .frm_description {
    font-size: 0.9em; /* Match menu description size */
    color: var(--ff-description-color); /* Match menu description color */
    margin-top: 0.4rem;
    margin-bottom: 0;
    padding: 0; /* Reset padding */
    line-height: 1.4; /* Improve readability */
}

/* --- Validation Errors --- */
.frm_forms .frm_error_style { /* General error message container */
    margin-top: 1rem;
    padding: 0.75rem 1.25rem;
    background-color: var(--ff-error-bg-color);
    border: 1px solid var(--ff-error-border-color);
    color: var(--ff-error-text-color);
    border-radius: var(--ff-input-border-radius); /* Use variable for radius */
}

.frm_forms .frm_error { /* Individual field error message */
    display: block;
    font-size: 0.875em;
    color: var(--ff-error-field-border-color); /* Use the same red as the border */
    margin-top: 0.25rem;
    font-weight: bold;
}

.frm_forms .frm_form_field.frm_blank_field input,
.frm_forms .frm_form_field.frm_blank_field select,
.frm_forms .frm_form_field.frm_blank_field textarea
/*.frm_forms .frm_form_field.frm_invalid_field input, etc. */
{
    border-color: var(--ff-error-field-border-color) !important; /* Highlight invalid fields */
    /* Optional: Add a subtle red background or shadow on error fields */
    /* background-color: #fffafa; */
}


/* ========================================================================== *//* End custom CSS */