.elementor-24456 .elementor-element.elementor-element-cad3c63{--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;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--border-radius:8px 8px 8px 8px;box-shadow:0px 0px 30px -5px rgba(0, 0, 0, 0.06);--padding-top:0px;--padding-bottom:50px;--padding-left:55px;--padding-right:55px;}.elementor-24456 .elementor-element.elementor-element-cad3c63:not(.elementor-motion-effects-element-type-background), .elementor-24456 .elementor-element.elementor-element-cad3c63 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-e6285ec );}.elementor-24456 .elementor-element.elementor-element-cad3c63.e-con{--align-self:flex-start;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );color:var( --e-global-color-primary );}.elementor-24456 .elementor-element.elementor-element-96ac1b1{width:auto;max-width:auto;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:45px 0px 010px 10px;text-align:start;}.elementor-24456 .elementor-element.elementor-element-96ac1b1.elementor-element{--align-self:flex-start;}.elementor-24456 .elementor-element.elementor-element-96ac1b1 .elementor-heading-title{font-family:"DM Sans", Sans-serif;font-size:33px;font-weight:700;line-height:1.3em;letter-spacing:-1px;word-spacing:5px;color:var( --e-global-color-fe2f735 );}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-24456 .elementor-element.elementor-element-3edfb4f{padding:0px 5px 35px 12px;border-radius:5px 5px 5px 5px;text-align:start;font-family:"Inter", Sans-serif;font-size:18px;font-weight:500;line-height:1.5em;letter-spacing:0.2px;color:var( --e-global-color-b27c690 );}.elementor-24456 .elementor-element.elementor-element-3edfb4f p{margin-block-end:0px;}.elementor-widget-form .elementor-field-group > label, .elementor-widget-form .elementor-field-subgroup label{color:var( --e-global-color-text );}.elementor-widget-form .elementor-field-group > label{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-field-type-html{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-field-group .elementor-field{color:var( --e-global-color-text );}.elementor-widget-form .elementor-field-group .elementor-field, .elementor-widget-form .elementor-field-subgroup label{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-button{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-form .e-form__buttons__wrapper__button-next{background-color:var( --e-global-color-accent );}.elementor-widget-form .elementor-button[type="submit"]{background-color:var( --e-global-color-accent );}.elementor-widget-form .e-form__buttons__wrapper__button-previous{background-color:var( --e-global-color-accent );}.elementor-widget-form .elementor-message{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .e-form__indicators__indicator, .elementor-widget-form .e-form__indicators__indicator__label{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-form{--e-form-steps-indicator-inactive-primary-color:var( --e-global-color-text );--e-form-steps-indicator-active-primary-color:var( --e-global-color-accent );--e-form-steps-indicator-completed-primary-color:var( --e-global-color-accent );--e-form-steps-indicator-progress-color:var( --e-global-color-accent );--e-form-steps-indicator-progress-background-color:var( --e-global-color-text );--e-form-steps-indicator-progress-meter-color:var( --e-global-color-text );}.elementor-widget-form .e-form__indicators__indicator__progress__meter{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-24456 .elementor-element.elementor-element-afbf811{padding:0px 0px 0px 0px;--e-form-steps-indicators-spacing:20px;--e-form-steps-indicator-padding:30px;--e-form-steps-indicator-inactive-primary-color:var( --e-global-color-secondary );--e-form-steps-indicator-inactive-secondary-color:#ffffff;--e-form-steps-indicator-active-primary-color:var( --e-global-color-text );--e-form-steps-indicator-active-secondary-color:#ffffff;--e-form-steps-indicator-completed-secondary-color:#ffffff;--e-form-steps-divider-width:1px;--e-form-steps-divider-gap:10px;}.elementor-24456 .elementor-element.elementor-element-afbf811 .elementor-field-group{padding-right:calc( 30px/2 );padding-left:calc( 30px/2 );margin-bottom:30px;}.elementor-24456 .elementor-element.elementor-element-afbf811 .elementor-form-fields-wrapper{margin-left:calc( -30px/2 );margin-right:calc( -30px/2 );margin-bottom:-30px;}.elementor-24456 .elementor-element.elementor-element-afbf811 .elementor-field-group.recaptcha_v3-bottomleft, .elementor-24456 .elementor-element.elementor-element-afbf811 .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}.elementor-24456 .elementor-element.elementor-element-afbf811 .elementor-field-group > label, .elementor-24456 .elementor-element.elementor-element-afbf811 .elementor-field-subgroup label{color:#030202;}.elementor-24456 .elementor-element.elementor-element-afbf811 .elementor-field-group > label{font-family:"Inter", Sans-serif;font-size:18px;font-weight:500;}.elementor-24456 .elementor-element.elementor-element-afbf811 .elementor-field-type-html{padding-bottom:0px;color:var( --e-global-color-secondary );font-family:"Inter", Sans-serif;font-size:15px;font-weight:400;}.elementor-24456 .elementor-element.elementor-element-afbf811 .elementor-field-group .elementor-field{color:var( --e-global-color-secondary );}.elementor-24456 .elementor-element.elementor-element-afbf811 .elementor-field-group .elementor-field, .elementor-24456 .elementor-element.elementor-element-afbf811 .elementor-field-subgroup label{font-family:"Inter", Sans-serif;font-size:16px;font-weight:400;}.elementor-24456 .elementor-element.elementor-element-afbf811 .elementor-field-group .elementor-field:not(.elementor-select-wrapper){background-color:var( --e-global-color-e6285ec );border-color:#E0E0E0;border-width:0px 0px 01px 0px;border-radius:3px 3px 3px 3px;}.elementor-24456 .elementor-element.elementor-element-afbf811 .elementor-field-group .elementor-select-wrapper select{background-color:var( --e-global-color-e6285ec );border-color:#E0E0E0;border-width:0px 0px 01px 0px;border-radius:3px 3px 3px 3px;}.elementor-24456 .elementor-element.elementor-element-afbf811 .elementor-field-group .elementor-select-wrapper::before{color:#E0E0E0;}.elementor-24456 .elementor-element.elementor-element-afbf811 .elementor-button{font-family:"Inter", Sans-serif;font-size:18px;font-weight:500;border-style:none;border-radius:1px 1px 1px 1px;padding:8px 30px 8px 30px;}.elementor-24456 .elementor-element.elementor-element-afbf811 .e-form__buttons__wrapper__button-next{background-color:var( --e-global-color-bcdb9ab );color:#ffffff;}.elementor-24456 .elementor-element.elementor-element-afbf811 .elementor-button[type="submit"]{background-color:var( --e-global-color-bcdb9ab );color:#ffffff;}.elementor-24456 .elementor-element.elementor-element-afbf811 .elementor-button[type="submit"] svg *{fill:#ffffff;}.elementor-24456 .elementor-element.elementor-element-afbf811 .e-form__buttons__wrapper__button-previous{color:#ffffff;}.elementor-24456 .elementor-element.elementor-element-afbf811 .e-form__buttons__wrapper__button-next:hover{background-color:var( --e-global-color-e9540c7 );color:#ffffff;}.elementor-24456 .elementor-element.elementor-element-afbf811 .elementor-button[type="submit"]:hover{background-color:var( --e-global-color-e9540c7 );color:#ffffff;}.elementor-24456 .elementor-element.elementor-element-afbf811 .elementor-button[type="submit"]:hover svg *{fill:#ffffff;}.elementor-24456 .elementor-element.elementor-element-afbf811 .e-form__buttons__wrapper__button-previous:hover{color:#ffffff;}#elementor-popup-modal-24456{background-color:rgba(0,0,0,.8);justify-content:center;align-items:center;pointer-events:all;}#elementor-popup-modal-24456 .dialog-message{width:620px;height:auto;}#elementor-popup-modal-24456 .dialog-close-button{display:flex;}#elementor-popup-modal-24456 .dialog-widget-content{box-shadow:2px 8px 23px 3px rgba(0,0,0,0.2);}@media(max-width:1024px) and (min-width:768px){.elementor-24456 .elementor-element.elementor-element-cad3c63{--width:100%;}}@media(max-width:1024px){.elementor-24456 .elementor-element.elementor-element-cad3c63{--justify-content:flex-start;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );}.elementor-widget-form .elementor-field-group > label{font-size:var( --e-global-typography-text-font-size );}.elementor-widget-form .elementor-field-type-html{font-size:var( --e-global-typography-text-font-size );}.elementor-widget-form .elementor-field-group .elementor-field, .elementor-widget-form .elementor-field-subgroup label{font-size:var( --e-global-typography-text-font-size );}.elementor-widget-form .elementor-message{font-size:var( --e-global-typography-text-font-size );}}@media(max-width:767px){.elementor-24456 .elementor-element.elementor-element-cad3c63{--padding-top:10px;--padding-bottom:10px;--padding-left:10px;--padding-right:10px;}.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-24456 .elementor-element.elementor-element-96ac1b1{padding:10px 0px 10px 10px;}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );}.elementor-24456 .elementor-element.elementor-element-3edfb4f{font-size:18px;}.elementor-widget-form .elementor-field-group > label{font-size:var( --e-global-typography-text-font-size );}.elementor-widget-form .elementor-field-type-html{font-size:var( --e-global-typography-text-font-size );}.elementor-widget-form .elementor-field-group .elementor-field, .elementor-widget-form .elementor-field-subgroup label{font-size:var( --e-global-typography-text-font-size );}.elementor-widget-form .elementor-message{font-size:var( --e-global-typography-text-font-size );}}/* Start custom CSS for container, class: .elementor-element-cad3c63 *//* ==========================================================================
   1. 表单提交反馈消息样式（极简高级感：无框、一行字、微小、拉开字距）
   ========================================================================== */
.free_quote .elementor-message {
  margin-top: 25px !important;
  padding: 0 !important;              /* 彻底去掉内边距 */
  border: none !important;            /* 彻底去掉边框 */
  background: transparent !important; /* 彻底去掉背景色 */
  box-shadow: none !important;        /* 彻底去掉阴影 */
  
  font-size: 16px !important;         /* 缩小字号，精致感来源于微小 */
  line-height: 1.4 !important;
  font-weight: 500 !important;
  letter-spacing: 0.04em !important;   /* 稍微拉开字距 */
  text-align: left !important;        /* 保持靠左对齐，不突兀 */
}

/* 成功提示（高级哑光墨绿） */
.free_quote .elementor-message-success {
  color: #3B6B52 !important; 
}

/* 错误提示（高级暗低调红） */
.free_quote .elementor-message-danger,
.free_quote .elementor-message-error {
  color: #A3483B !important;
}

/* 验证提示（优雅卡其/琥珀金） */
.free_quote .elementor-message-invalid {
  color: #9C7839 !important;
}

/* 提示框图标间距 */
.free_quote .elementor-message:before {
  margin-right: 6px !important;
}


/* 2. 占位符样式（统一15px/16px炭灰，兼容各主流浏览器内核，确保绝对清晰不发虚）
   =============================== */
.free_quote .elementor-field-textual::placeholder,
.free_quote input::placeholder,
.free_quote textarea::placeholder,
.free_quote select::placeholder {
    color: #555555 !important;       /* 高级炭灰色 */
    font-size: 16px !important;       /* 确保字号清晰可读 */
    font-weight: 400 !important;      /* 微加粗 */
    opacity: 1 !important;
}

/* 兼容 Webkit 内核 */
.free_quote .elementor-field-textual::-webkit-input-placeholder,
.free_quote input::-webkit-input-placeholder,
.free_quote textarea::-webkit-input-placeholder {
    color: #555555 !important;
    font-size: 16px !important;
    font-weight: 400 !important;
    opacity: 1 !important;
}


/* ==========================================================================
   3. 终极按钮样式（精准衔接网页 Logo 与图标的极简深金，Hover 丝滑变浅米白）
   ========================================================================== */
.free_quote .elementor-button {
    background: linear-gradient(135deg, #C2A26B 0%, #B39158 50%, #997943 100%) !important;
    color: #FFFFFF !important; 
    font-weight: 600 !important;
    letter-spacing: 0.8px !important;
    text-transform: uppercase; 
    border: none !important;
    border-radius: 4px !important; 
    box-shadow: 0 4px 15px rgba(179, 145, 88, 0.15) !important;
    transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.free_quote .elementor-button:hover {
    background: #F8F6F0 !important; 
    color: #997943 !important;     
    box-shadow: 0 8px 25px rgba(153, 121, 67, 0.12) !important;
    transform: translateY(-2px);   
}


/* ==========================================================================
   4. 表单内部间距与尺寸优化 */
.free_quote input.elementor-field-textual {
    padding-top: 12px !important;
    padding-bottom: 12px !important;
    height: auto !important; 
}

.free_quote .elementor-field-group {
    margin-bottom: 22px !important;
}

.free_quote textarea.elementor-field-textual {
    min-height: 120px !important;    
    padding: 16px 18px !important;   
    line-height: 1.6 !important;     
}


/* ==========================================================================
   5. 终极极简微调版：1px精细虚线框 + 原生文件名完美承接
   ========================================================================== */

/* 上传字段父包裹容器 */
.free_quote .elementor-field-type-upload,
.free_quote .elementor-field-type-file {
    position: relative !important;
    display: block !important;
    margin-bottom: 25px !important;   
}

/* 1. 核心框体：改为 1px 极致纤细虚线，极简高级 */
.free_quote input[type="file"] {
    display: block !important;
    border: 1px dashed #D2D2D6 !important;   /* 1px 极细优雅虚线 */
    background: #FAFAFB !important;          /* 极淡的工业微白底色 */
    border-radius: 4px !important;            /* 更克制的微小圆角 */
    height: 90px !important;                  
    width: 100% !important;
    cursor: pointer !important;
    box-sizing: border-box !important;
    transition: border-color 0.25s ease !important;
    
    /* 核心排版：给顶部留出空间让位给第一行伪元素提示语，把原生的文件名（No file chosen）平滑挤到第二行显示 */
    padding-left: 58px !important;
    padding-top: 48px !important; 
    font-size: 15px !important;
    color: #555555 !important;               /* 真实文件名或默认提示均呈现克制的哑光灰 */
    font-weight: 400 !important;
}

/* 隐形抹除浏览器底层自带的“Choose Files”生硬按钮 */
.free_quote input[type="file"]::-webkit-file-upload-button { opacity: 0 !important; width: 0 !important; padding: 0 !important; margin: 0 !important; }
.free_quote input[type="file"]::file-.elementor-24456 .elementor-element.elementor-element-cad3c63-button { opacity: 0 !important; width: 0 !important; padding: 0 !important; margin: 0 !important; }

/* 鼠标悬停交互：线条变为品牌深金，底色优雅地泛出淡淡的微金（极其高级、克制） */
.free_quote input[type="file"]:hover {
    border-color: #B39158 !important;        /* 虚线精准变为网页深金 */
    background-color: rgba(179, 145, 88, 0.03) !important; /* 注入 3% 透明度的品牌金，极其柔和 */
}

/* 2. 第一行核心提示语：保持静止不变，不制造冗余视觉干扰 */
.free_quote .elementor-field-type-upload::after,
.free_quote .elementor-field-type-file::after {
    content: "Attach Files (Optional)" !important; 
    position: absolute !important;
    left: 75px !important;                    
    top: 24px !important;                     /* 稳稳固定在前半腹 */
    pointer-events: none !important;          
    font-family: inherit !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    color: #333333 !important;                
}

/* 3. 左侧纯单层经典图标：始终保持图二的原版极简形状，绝不生成多余绿勾 */
.free_quote .elementor-field-type-upload::before,
.free_quote .elementor-field-type-file::before {
    content: "↑" !important;                   
    position: absolute !important;
    left: 35px !important;                    
    top: 50% !important;
    transform: translateY(-50%) !important;   
    pointer-events: none !important;
    
    /* 图二标准线性紧凑小框 */
    font-size: 16px !important;
    font-weight: bold !important;
    color: #4A4A4A !important;
    border: 1.5px solid #555555 !important;   /* 边缘同步变细，更显精致 */
    border-radius: 4px !important;
    width: 24px !important;
    height: 24px !important;
    line-height: 21px !important;             
    text-align: center !important;
    background-color: transparent !important;
}



/* 1. 当带有 free_quote 类的表单处于提交等待时，让它的按钮进入加载状态 */
.free_quote .elementor-field-type-submit .elementor-button.elementor-form-waiting {
    position: relative;
    color: transparent !important; /* 隐藏原本的 Submit 文字，防止重叠 */
    background-color: #666666 !important; /* 强制按钮变成深灰色，增强“不可点击”的视觉感 */
    pointer-events: none; /* 彻底锁死按钮，防止疯狂重复点击 */
}

/* 2. 用伪元素在这个按钮正中间画一个高级的旋转圈圈 */
.free_quote .elementor-field-type-submit .elementor-button.elementor-form-waiting::after {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    width: 20px;
    height: 20px;
    margin-left: -10px;
    margin-top: -10px;
    border: 2px solid rgba(255, 255, 255, 0.3); /* 圈圈的浅色底轨 */
    border-radius: 50%;
    border-top-color: #ffffff; /* 正在旋转的那条亮线颜色（纯白） */
    animation: ele-form-spin 0.8s linear infinite; /* 旋转速度 */
}

/* 3. 旋转动画的底层逻辑 */
@keyframes ele-form-spin {
    to { transform: rotate(360deg); }
}/* End custom CSS */