.elementor-234 .elementor-element.elementor-element-767e204{--display:flex;--min-height:350px;--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;--justify-content:center;--overlay-opacity:0.5;}.elementor-234 .elementor-element.elementor-element-767e204:not(.elementor-motion-effects-element-type-background), .elementor-234 .elementor-element.elementor-element-767e204 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://freemanbailbonding.com/wp-content/uploads/2026/06/CONTACT-US-banner.webp");background-position:center center;background-repeat:no-repeat;background-size:cover;}.elementor-234 .elementor-element.elementor-element-767e204::before, .elementor-234 .elementor-element.elementor-element-767e204 > .elementor-background-video-container::before, .elementor-234 .elementor-element.elementor-element-767e204 > .e-con-inner > .elementor-background-video-container::before, .elementor-234 .elementor-element.elementor-element-767e204 > .elementor-background-slideshow::before, .elementor-234 .elementor-element.elementor-element-767e204 > .e-con-inner > .elementor-background-slideshow::before, .elementor-234 .elementor-element.elementor-element-767e204 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:var( --e-global-color-secondary );--background-overlay:'';}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-234 .elementor-element.elementor-element-0464034{text-align:center;}.elementor-234 .elementor-element.elementor-element-0464034 .elementor-heading-title{font-family:"Lora", Sans-serif;font-size:60px;font-weight:600;line-height:70px;color:var( --e-global-color-57714c4 );}.elementor-widget-divider{--divider-color:var( --e-global-color-secondary );}.elementor-widget-divider .elementor-divider__text{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-divider.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-secondary );}.elementor-widget-divider.elementor-view-framed .elementor-icon, .elementor-widget-divider.elementor-view-default .elementor-icon{color:var( --e-global-color-secondary );border-color:var( --e-global-color-secondary );}.elementor-widget-divider.elementor-view-framed .elementor-icon, .elementor-widget-divider.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-secondary );}.elementor-234 .elementor-element.elementor-element-53ffba8{--divider-border-style:double;--divider-color:var( --e-global-color-accent );--divider-border-width:4px;}.elementor-234 .elementor-element.elementor-element-53ffba8 .elementor-divider-separator{width:35%;margin:0 auto;margin-center:0;}.elementor-234 .elementor-element.elementor-element-53ffba8 .elementor-divider{text-align:center;padding-block-start:2px;padding-block-end:2px;}.elementor-234 .elementor-element.elementor-element-f1a83d6{--display:flex;--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;--padding-top:70px;--padding-bottom:70px;--padding-left:0px;--padding-right:0px;}.elementor-234 .elementor-element.elementor-element-f1a83d6:not(.elementor-motion-effects-element-type-background), .elementor-234 .elementor-element.elementor-element-f1a83d6 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#12121214;}.elementor-234 .elementor-element.elementor-element-c14ee14{--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;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-234 .elementor-element.elementor-element-48e9611 .elementor-heading-title{font-family:"Lora", Sans-serif;font-size:40px;font-weight:600;line-height:50px;color:var( --e-global-color-secondary );}.elementor-234 .elementor-element.elementor-element-af13289{--divider-border-style:double;--divider-color:var( --e-global-color-accent );--divider-border-width:4px;}.elementor-234 .elementor-element.elementor-element-af13289 .elementor-divider-separator{width:40%;}.elementor-234 .elementor-element.elementor-element-af13289 .elementor-divider{padding-block-start:2px;padding-block-end:2px;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;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-234 .elementor-element.elementor-element-4242957 .elementor-heading-title{font-family:"Lora", Sans-serif;font-size:20px;font-weight:400;line-height:23px;color:var( --e-global-color-text );}.elementor-234 .elementor-element.elementor-element-7c84f12{padding:0px 50px 0px 0px;}.elementor-234 .elementor-element.elementor-element-e3e48ec .elementor-heading-title{font-family:"Lora", Sans-serif;font-size:20px;font-weight:400;line-height:23px;color:var( --e-global-color-text );}.elementor-234 .elementor-element.elementor-element-54269ab{padding:0px 50px 0px 0px;}.elementor-234 .elementor-element.elementor-element-892ee4c{--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;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-fluent-form-widget .fluentform-widget-description{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-fluent-form-widget .ff-el-progress-status{color:var( --e-global-color-primary );font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-fluent-form-widget .ff-el-progress-bar span{color:var( --e-global-color-primary );}.elementor-widget-fluent-form-widget .step-nav button{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-234 .elementor-element.elementor-element-b3ec10f .fluentform-widget-wrapper .ff-el-group .ff-btn-submit{background-color:#1a7efb !important;color:#ffffff !important;}.elementor-234 .elementor-element.elementor-element-91a355f{--display:flex;--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;--flex-wrap:wrap;--padding-top:40px;--padding-bottom:40px;--padding-left:0px;--padding-right:0px;}.elementor-234 .elementor-element.elementor-element-91a355f:not(.elementor-motion-effects-element-type-background), .elementor-234 .elementor-element.elementor-element-91a355f > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:transparent;background-image:linear-gradient(180deg, var( --e-global-color-57714c4 ) 25%, var( --e-global-color-primary ) 25%);}.elementor-234 .elementor-element.elementor-element-0ca1731{--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-widget-icon-box.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-primary );}.elementor-widget-icon-box.elementor-view-framed .elementor-icon, .elementor-widget-icon-box.elementor-view-default .elementor-icon{fill:var( --e-global-color-primary );color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-widget-icon-box .elementor-icon-box-title, .elementor-widget-icon-box .elementor-icon-box-title a{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-icon-box .elementor-icon-box-title{color:var( --e-global-color-primary );}.elementor-widget-icon-box:has(:hover) .elementor-icon-box-title,
					 .elementor-widget-icon-box:has(:focus) .elementor-icon-box-title{color:var( --e-global-color-primary );}.elementor-widget-icon-box .elementor-icon-box-description{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-234 .elementor-element.elementor-element-3f6bd27.elementor-element{--align-self:center;}.elementor-234 .elementor-element.elementor-element-3f6bd27{border-style:none;}.elementor-234 .elementor-element.elementor-element-3f6bd27 .elementor-icon-box-wrapper{gap:20px;}.elementor-234 .elementor-element.elementor-element-3f6bd27 .elementor-icon-box-title{margin-block-end:0px;color:var( --e-global-color-secondary );}.elementor-234 .elementor-element.elementor-element-3f6bd27.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-secondary );fill:var( --e-global-color-primary );color:var( --e-global-color-primary );}.elementor-234 .elementor-element.elementor-element-3f6bd27.elementor-view-framed .elementor-icon, .elementor-234 .elementor-element.elementor-element-3f6bd27.elementor-view-default .elementor-icon{fill:var( --e-global-color-secondary );color:var( --e-global-color-secondary );border-color:var( --e-global-color-secondary );}.elementor-234 .elementor-element.elementor-element-3f6bd27.elementor-view-framed .elementor-icon{background-color:var( --e-global-color-primary );}.elementor-234 .elementor-element.elementor-element-3f6bd27 .elementor-icon{font-size:30px;}.elementor-234 .elementor-element.elementor-element-3f6bd27 .elementor-icon-box-title, .elementor-234 .elementor-element.elementor-element-3f6bd27 .elementor-icon-box-title a{font-family:"Lora", Sans-serif;font-size:25px;font-weight:700;}.elementor-234 .elementor-element.elementor-element-3f6bd27:has(:hover) .elementor-icon-box-title,
					 .elementor-234 .elementor-element.elementor-element-3f6bd27:has(:focus) .elementor-icon-box-title{color:var( --e-global-color-secondary );}.elementor-234 .elementor-element.elementor-element-3f6bd27 .elementor-icon-box-description{font-family:"Lato", Sans-serif;font-size:16px;font-weight:600;color:var( --e-global-color-secondary );}.elementor-234 .elementor-element.elementor-element-53bfe9b{--divider-border-style:solid;--divider-color:var( --e-global-color-57714c4 );--divider-border-width:1px;}.elementor-234 .elementor-element.elementor-element-53bfe9b .elementor-divider-separator{width:70%;margin:0 auto;margin-center:0;}.elementor-234 .elementor-element.elementor-element-53bfe9b .elementor-divider{text-align:center;padding-block-start:2px;padding-block-end:2px;}.elementor-234 .elementor-element.elementor-element-a814270{text-align:center;font-family:"Lato", Sans-serif;font-size:17px;font-weight:500;color:var( --e-global-color-text );}.elementor-234 .elementor-element.elementor-element-7235502{--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-234 .elementor-element.elementor-element-8e68397.elementor-element{--align-self:center;}.elementor-234 .elementor-element.elementor-element-8e68397{border-style:none;}.elementor-234 .elementor-element.elementor-element-8e68397 .elementor-icon-box-wrapper{gap:20px;}.elementor-234 .elementor-element.elementor-element-8e68397 .elementor-icon-box-title{margin-block-end:0px;color:var( --e-global-color-secondary );}.elementor-234 .elementor-element.elementor-element-8e68397.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-secondary );fill:var( --e-global-color-primary );color:var( --e-global-color-primary );}.elementor-234 .elementor-element.elementor-element-8e68397.elementor-view-framed .elementor-icon, .elementor-234 .elementor-element.elementor-element-8e68397.elementor-view-default .elementor-icon{fill:var( --e-global-color-secondary );color:var( --e-global-color-secondary );border-color:var( --e-global-color-secondary );}.elementor-234 .elementor-element.elementor-element-8e68397.elementor-view-framed .elementor-icon{background-color:var( --e-global-color-primary );}.elementor-234 .elementor-element.elementor-element-8e68397 .elementor-icon{font-size:30px;}.elementor-234 .elementor-element.elementor-element-8e68397 .elementor-icon-box-title, .elementor-234 .elementor-element.elementor-element-8e68397 .elementor-icon-box-title a{font-family:"Lora", Sans-serif;font-size:25px;font-weight:700;}.elementor-234 .elementor-element.elementor-element-8e68397:has(:hover) .elementor-icon-box-title,
					 .elementor-234 .elementor-element.elementor-element-8e68397:has(:focus) .elementor-icon-box-title{color:var( --e-global-color-secondary );}.elementor-234 .elementor-element.elementor-element-8e68397 .elementor-icon-box-description{font-family:"Lato", Sans-serif;font-size:16px;font-weight:600;color:var( --e-global-color-secondary );}.elementor-234 .elementor-element.elementor-element-c71a54d{--divider-border-style:solid;--divider-color:var( --e-global-color-57714c4 );--divider-border-width:1px;}.elementor-234 .elementor-element.elementor-element-c71a54d .elementor-divider-separator{width:70%;margin:0 auto;margin-center:0;}.elementor-234 .elementor-element.elementor-element-c71a54d .elementor-divider{text-align:center;padding-block-start:2px;padding-block-end:2px;}.elementor-234 .elementor-element.elementor-element-977f0e3{text-align:center;font-family:"Lato", Sans-serif;font-size:17px;font-weight:500;}.elementor-234 .elementor-element.elementor-element-977f0e3 p{margin-block-end:0px;}.elementor-234 .elementor-element.elementor-element-0e8f8b6{--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-234 .elementor-element.elementor-element-7c112df.elementor-element{--align-self:center;}.elementor-234 .elementor-element.elementor-element-7c112df{border-style:none;}.elementor-234 .elementor-element.elementor-element-7c112df .elementor-icon-box-wrapper{gap:20px;}.elementor-234 .elementor-element.elementor-element-7c112df .elementor-icon-box-title{margin-block-end:0px;color:var( --e-global-color-secondary );}.elementor-234 .elementor-element.elementor-element-7c112df.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-secondary );fill:var( --e-global-color-primary );color:var( --e-global-color-primary );}.elementor-234 .elementor-element.elementor-element-7c112df.elementor-view-framed .elementor-icon, .elementor-234 .elementor-element.elementor-element-7c112df.elementor-view-default .elementor-icon{fill:var( --e-global-color-secondary );color:var( --e-global-color-secondary );border-color:var( --e-global-color-secondary );}.elementor-234 .elementor-element.elementor-element-7c112df.elementor-view-framed .elementor-icon{background-color:var( --e-global-color-primary );}.elementor-234 .elementor-element.elementor-element-7c112df .elementor-icon{font-size:30px;}.elementor-234 .elementor-element.elementor-element-7c112df .elementor-icon-box-title, .elementor-234 .elementor-element.elementor-element-7c112df .elementor-icon-box-title a{font-family:"Lora", Sans-serif;font-size:25px;font-weight:700;}.elementor-234 .elementor-element.elementor-element-7c112df:has(:hover) .elementor-icon-box-title,
					 .elementor-234 .elementor-element.elementor-element-7c112df:has(:focus) .elementor-icon-box-title{color:var( --e-global-color-secondary );}.elementor-234 .elementor-element.elementor-element-7c112df .elementor-icon-box-description{font-family:"Lato", Sans-serif;font-size:16px;font-weight:600;color:var( --e-global-color-secondary );}.elementor-234 .elementor-element.elementor-element-538ad05{--divider-border-style:solid;--divider-color:var( --e-global-color-57714c4 );--divider-border-width:1px;}.elementor-234 .elementor-element.elementor-element-538ad05 .elementor-divider-separator{width:70%;margin:0 auto;margin-center:0;}.elementor-234 .elementor-element.elementor-element-538ad05 .elementor-divider{text-align:center;padding-block-start:2px;padding-block-end:2px;}.elementor-234 .elementor-element.elementor-element-0b099c6{text-align:center;font-family:"Lato", Sans-serif;font-size:17px;font-weight:500;}.elementor-234 .elementor-element.elementor-element-6d5b57f{--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;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-234 .elementor-element.elementor-element-d0a8e6a iframe{height:200px;}@media(max-width:1024px){.elementor-234 .elementor-element.elementor-element-f1a83d6{--flex-direction:column;--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;--align-items:center;--padding-top:50px;--padding-bottom:50px;--padding-left:30px;--padding-right:30px;}.elementor-234 .elementor-element.elementor-element-4242957 .elementor-heading-title{font-size:25px;}.elementor-234 .elementor-element.elementor-element-e3e48ec .elementor-heading-title{font-size:25px;}.elementor-234 .elementor-element.elementor-element-3f6bd27 .elementor-icon{font-size:20px;}.elementor-234 .elementor-element.elementor-element-3f6bd27 .elementor-icon-box-title, .elementor-234 .elementor-element.elementor-element-3f6bd27 .elementor-icon-box-title a{font-size:15px;}.elementor-234 .elementor-element.elementor-element-3f6bd27 .elementor-icon-box-description{font-size:13px;}.elementor-234 .elementor-element.elementor-element-a814270{font-size:15px;}.elementor-234 .elementor-element.elementor-element-8e68397 .elementor-icon{font-size:20px;}.elementor-234 .elementor-element.elementor-element-8e68397 .elementor-icon-box-title, .elementor-234 .elementor-element.elementor-element-8e68397 .elementor-icon-box-title a{font-size:15px;}.elementor-234 .elementor-element.elementor-element-8e68397 .elementor-icon-box-description{font-size:13px;}.elementor-234 .elementor-element.elementor-element-977f0e3{font-size:15px;}.elementor-234 .elementor-element.elementor-element-7c112df .elementor-icon{font-size:20px;}.elementor-234 .elementor-element.elementor-element-7c112df .elementor-icon-box-title, .elementor-234 .elementor-element.elementor-element-7c112df .elementor-icon-box-title a{font-size:15px;}.elementor-234 .elementor-element.elementor-element-7c112df .elementor-icon-box-description{font-size:13px;}.elementor-234 .elementor-element.elementor-element-0b099c6{font-size:15px;}}@media(max-width:767px){.elementor-234 .elementor-element.elementor-element-767e204{--min-height:225px;}.elementor-234 .elementor-element.elementor-element-0464034 .elementor-heading-title{font-size:35px;}.elementor-234 .elementor-element.elementor-element-f1a83d6{--padding-top:20px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-234 .elementor-element.elementor-element-48e9611 .elementor-heading-title{font-size:30px;}.elementor-234 .elementor-element.elementor-element-4242957{text-align:start;}.elementor-234 .elementor-element.elementor-element-4242957 .elementor-heading-title{font-size:20px;}.elementor-234 .elementor-element.elementor-element-7c84f12{padding:0px 0px 0px 0px;}.elementor-234 .elementor-element.elementor-element-e3e48ec{text-align:start;}.elementor-234 .elementor-element.elementor-element-e3e48ec .elementor-heading-title{font-size:20px;}.elementor-234 .elementor-element.elementor-element-54269ab{padding:0px 0px 0px 0px;}.elementor-234 .elementor-element.elementor-element-892ee4c{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-234 .elementor-element.elementor-element-91a355f:not(.elementor-motion-effects-element-type-background), .elementor-234 .elementor-element.elementor-element-91a355f > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:transparent;background-image:linear-gradient(180deg, var( --e-global-color-57714c4 ) 0%, var( --e-global-color-primary ) 0%);}.elementor-234 .elementor-element.elementor-element-3f6bd27{padding:5px 10px 5px 10px;}.elementor-234 .elementor-element.elementor-element-3f6bd27.elementor-element{--align-self:center;}.elementor-234 .elementor-element.elementor-element-3f6bd27 .elementor-icon{font-size:15px;}.elementor-234 .elementor-element.elementor-element-3f6bd27 .elementor-icon-box-title, .elementor-234 .elementor-element.elementor-element-3f6bd27 .elementor-icon-box-title a{font-size:19px;}.elementor-234 .elementor-element.elementor-element-3f6bd27 .elementor-icon-box-description{font-size:11px;}.elementor-234 .elementor-element.elementor-element-8e68397{padding:5px 10px 5px 10px;}.elementor-234 .elementor-element.elementor-element-8e68397.elementor-element{--align-self:center;}.elementor-234 .elementor-element.elementor-element-8e68397 .elementor-icon{font-size:15px;}.elementor-234 .elementor-element.elementor-element-8e68397 .elementor-icon-box-title, .elementor-234 .elementor-element.elementor-element-8e68397 .elementor-icon-box-title a{font-size:19px;}.elementor-234 .elementor-element.elementor-element-8e68397 .elementor-icon-box-description{font-size:11px;}.elementor-234 .elementor-element.elementor-element-7c112df{padding:5px 10px 5px 10px;}.elementor-234 .elementor-element.elementor-element-7c112df.elementor-element{--align-self:center;}.elementor-234 .elementor-element.elementor-element-7c112df .elementor-icon{font-size:15px;}.elementor-234 .elementor-element.elementor-element-7c112df .elementor-icon-box-title, .elementor-234 .elementor-element.elementor-element-7c112df .elementor-icon-box-title a{font-size:19px;}.elementor-234 .elementor-element.elementor-element-7c112df .elementor-icon-box-description{font-size:11px;}.elementor-234 .elementor-element.elementor-element-d0a8e6a iframe{height:250px;}}@media(min-width:768px){.elementor-234 .elementor-element.elementor-element-c14ee14{--width:40%;}.elementor-234 .elementor-element.elementor-element-892ee4c{--width:60%;}.elementor-234 .elementor-element.elementor-element-0ca1731{--width:33.3333%;}.elementor-234 .elementor-element.elementor-element-7235502{--width:33.3333%;}.elementor-234 .elementor-element.elementor-element-0e8f8b6{--width:33.3333%;}}@media(max-width:1024px) and (min-width:768px){.elementor-234 .elementor-element.elementor-element-c14ee14{--width:100%;}.elementor-234 .elementor-element.elementor-element-892ee4c{--width:70%;}}/* Start custom CSS for fluent-form-widget, class: .elementor-element-b3ec10f *//* ============================================================
   FREEMAN BAIL BONDS — FluentForm Custom Styles
   Bold, authoritative design with a dark legal-industrial tone
   ============================================================ */

@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@700;900&family=DM+Sans:wght@300;400;500;600&display=swap');

/* ── CSS Variables ─────────────────────────────────────── */
:root {
  --ff-bg:          #1212121;
  --ff-surface:     #16161a;
  --ff-surface-2:   #1e1e24;
  --ff-border:      #2c2c36;
  --ff-border-focus:#c9a84c;
  --ff-gold:        #c9a84c;
  --ff-gold-light:  #e8c96a;
  --ff-text:        #e8e8ec;
  --ff-text-muted:  #8a8a9a;
  --ff-error:       #e05c5c;
  --ff-radius:      6px;
  --ff-radius-lg:   12px;
  --ff-transition:  0.22s ease;
  --ff-shadow:      0 4px 32px rgba(0, 0, 0, 0.5);
  --ff-shadow-gold: 0 0 0 3px rgba(201, 168, 76, 0.18);
}

/* ── Widget wrapper ────────────────────────────────────── */
.fluentform-widget-wrapper {
  font-family: 'DM Sans', sans-serif;
  background: var(--ff-bg);
  min-height: 20vh;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 10px 10px;
}

/* ── Form wrapper ──────────────────────────────────────── */
.fluentform.ff-default,
.fluentform_wrapper_3 {
  background: var(--ff-surface);
  border: 1px solid var(--ff-border);
  border-radius: var(--ff-radius-lg);
  box-shadow: var(--ff-shadow);
  padding: 0;
  max-width: 560px;
  width: 100%;
  overflow: hidden;
  position: relative;
}

/* Gold top accent bar */
.fluentform.ff-default::before {
  content: '';
  display: block;
  height: 4px;
  background: linear-gradient(90deg, var(--ff-gold), var(--ff-gold-light), var(--ff-gold));
  width: 100%;
}

/* ── Step Header / Progress ────────────────────────────── */
.ff-step-header {
  background: var(--ff-surface-2);
  padding: 20px 32px 18px;
  border-bottom: 1px solid var(--ff-border);
}

.ff-step-header.ff-step-header--progress {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.ff-el-progress-status {
  font-family: 'DM Sans', sans-serif;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--ff-gold);
}

.ff-el-progress {
  background: var(--ff-border);
  border-radius: 99px;
  height: 4px;
  overflow: hidden;
  width: 100%;
}

.ff-el-progress-bar {
  height: 100%;
  background: linear-gradient(90deg, var(--ff-gold), var(--ff-gold-light));
  border-radius: 99px;
  transition: width 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  position: relative;
}

.ff-el-progress-bar span {
  display: none;
}

/* ── Step Body ─────────────────────────────────────────── */
.ff-step-body {
  padding: 32px;
}

/* ── Groups & Labels ───────────────────────────────────── */
.ff-el-group {
  margin-bottom: 22px;
  position: relative;
}

.ff-el-group:last-child {
  margin-bottom: 0;
}

.ff-el-input--label label {
  display: block;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--ff-text-muted);
  margin-bottom: 7px;
  transition: color var(--ff-transition);
}

.ff-el-group:focus-within .ff-el-input--label label {
  color: var(--ff-gold);
}

/* Required asterisk */
.ff-el-input--label.ff-el-is-required.asterisk-right label::after {
  content: ' *';
  color: var(--ff-gold);
  font-size: 12px;
}

/* ── Name field wrapper ────────────────────────────────── */
.ff-name-field-wrapper .ff-t-container {
  display: flex;
  gap: 16px;
}

.ff-name-field-wrapper .ff-t-cell {
  flex: 1;
}

/* ── Inputs, Selects, Textareas ────────────────────────── */
.ff-el-form-control {
  width: 100%;
  background: var(--ff-bg);
  border: 1px solid var(--ff-border);
  border-radius: var(--ff-radius);
  color: var(--ff-text);
  font-family: 'DM Sans', sans-serif;
  font-size: 15px;
  font-weight: 400;
  padding: 12px 16px;
  outline: none;
  transition: border-color var(--ff-transition), box-shadow var(--ff-transition), background var(--ff-transition);
  -webkit-appearance: none;
  appearance: none;
  box-sizing: border-box;
}

.ff-el-form-control::placeholder {
  color: #46464e;
  font-size: 14px;
}

.ff-el-form-control:hover {
  border-color: #3c3c4a;
  background: #121216;
}

.ff-el-form-control:focus {
  border-color: var(--ff-gold);
  box-shadow: var(--ff-shadow-gold);
  background: #0a0a0c;
}

/* Select arrow */
select.ff-el-form-control {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%238a8a9a' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 14px center;
  padding-right: 38px;
  cursor: pointer;
}

select.ff-el-form-control option {
  background: var(--ff-surface-2);
  color: var(--ff-text);
}

/* Textarea */
textarea.ff-el-form-control {
  resize: vertical;
  min-height: 100px;
  line-height: 1.6;
}

/* ── Error states ──────────────────────────────────────── */
.ff-el-form-control.ff_has_error,
.ff-el-form-control[aria-invalid="true"] {
  border-color: var(--ff-error);
  box-shadow: 0 0 0 3px rgba(224, 92, 92, 0.12);
}

.error,
.ff-field_has_errors small {
  color: var(--ff-error);
  font-size: 11px;
  font-weight: 500;
  margin-top: 5px;
  display: block;
  letter-spacing: 0.02em;
}

/* ── Step navigation ───────────────────────────────────── */
.step-nav,
.ff_step_nav_last {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 28px;
  padding-top: 24px;
  border-top: 1px solid var(--ff-border);
}

/* ── Buttons ───────────────────────────────────────────── */
.ff-btn {
  font-family: 'DM Sans', sans-serif;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  padding: 13px 28px;
  border-radius: var(--ff-radius);
  border: none;
  cursor: pointer;
  transition: all var(--ff-transition);
  display: inline-flex;
  align-items: center;
  gap: 6px;
  line-height: 1;
}

/* Next / Previous shared base */
.ff-btn-secondary {
  background: transparent;
  border: 1px solid var(--ff-border);
  color: var(--ff-text-muted);
}

.ff-btn-secondary:hover {
  border-color: var(--ff-gold);
  color: var(--ff-gold);
}

/* Next button — gold filled */
.ff-btn-next {
  background: var(--ff-gold);
  border: 1px solid var(--ff-gold);
  color: #0e0e10;
  font-weight: 700;
  box-shadow: 0 2px 12px rgba(201, 168, 76, 0.25);
}

.ff-btn-next::after {
  content: '→';
  font-size: 14px;
  transition: transform var(--ff-transition);
}

.ff-btn-next:hover {
  background: var(--ff-gold-light);
  border-color: var(--ff-gold-light);
  box-shadow: 0 4px 20px rgba(201, 168, 76, 0.4);
  transform: translateY(-1px);
}

.ff-btn-next:hover::after {
  transform: translateX(3px);
}

/* Prev button */
.ff-btn-prev {
  background: transparent;
  border: 1px solid var(--ff-border);
  color: var(--ff-text-muted);
}

.ff-btn-prev::before {
  content: '←';
  font-size: 14px;
  transition: transform var(--ff-transition);
}

.ff-btn-prev:hover {
  border-color: var(--ff-border-focus);
  color: var(--ff-gold);
}

.ff-btn-prev:hover::before {
  transform: translateX(-3px);
}

/* Submit button */
.ff-btn-submit,
.ff_btn_style {
  background: linear-gradient(135deg, var(--ff-gold), var(--ff-gold-light));
  border: none;
  color: #0e0e10;
  font-size: 13px;
  font-weight: 800;
  padding: 15px 36px;
  border-radius: var(--ff-radius);
  cursor: pointer;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  box-shadow: 0 4px 24px rgba(201, 168, 76, 0.35);
  transition: all var(--ff-transition);
  font-family: 'DM Sans', sans-serif;
}

.ff-btn-submit:hover,
.ff_btn_style:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 32px rgba(201, 168, 76, 0.5);
  filter: brightness(1.08);
}

.ff-btn-submit[style*="visibility: hidden"],
.ff_btn_style[style*="visibility: hidden"] {
  opacity: 0;
  pointer-events: none;
}

/* ── Submit container ──────────────────────────────────── */
.ff-inner_submit_container {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-top: 28px;
  padding-top: 24px;
  border-top: 1px solid var(--ff-border);
}

.ff-inner_submit_container .ff-t-cell {
  display: flex;
  align-items: center;
}

.ff-inner_submit_container .ff-t-column-1 {
  flex: 0 0 auto;
}

.ff-inner_submit_container .ff-t-column-2 {
  flex: 1;
  justify-content: flex-end;
}

.ff_submit_btn_wrapper {
  margin: 0;
}

/* ── Screen reader title ───────────────────────────────── */
.ff_screen_reader_title {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
}

/* ── Step container ────────────────────────────────────── */
.ff-step-container {
  overflow: hidden;
}

/* ── Floating label alignment ──────────────────────────── */
.ff-el-form-top .ff-el-input--label {
  text-align: left;
}

.ff-text-left {
  text-align: left;
}

/* ── Error block ───────────────────────────────────────── */
.ff-errors-in-stack {
  margin: 0 32px 16px;
  font-size: 13px;
  color: var(--ff-error);
}

/* ── Fieldset reset ────────────────────────────────────── */
fieldset {
  border: none !important;
  margin: 0 !important;
  padding: 0 !important;
  background-color: transparent !important;
  box-shadow: none !important;
  outline: none !important;
  min-inline-size: 100%;
}

/* ── Numeric input ─────────────────────────────────────── */
.ff_numeric::-webkit-inner-spin-button,
.ff_numeric::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

.ff_numeric[type='number'] {
  -moz-appearance: textfield;
}

/* ── Autofill override ─────────────────────────────────── */
.ff-el-form-control:-webkit-autofill,
.ff-el-form-control:-webkit-autofill:hover,
.ff-el-form-control:-webkit-autofill:focus {
  -webkit-box-shadow: 0 0 0 1000px #0a0a0c inset !important;
  -webkit-text-fill-color: var(--ff-text) !important;
  border-color: var(--ff-gold) !important;
}

/* ── Step animation (slide) ────────────────────────────── */
.fluentform-step {
  animation: ff-slide-in 0.28s cubic-bezier(0.4, 0, 0.2, 1);
}

@keyframes ff-slide-in {
  from { opacity: 0; transform: translateX(18px); }
  to   { opacity: 1; transform: translateX(0); }
}

/* ── Responsive ────────────────────────────────────────── */
@media (max-width: 520px) {
  .ff-step-body {
    padding: 24px 20px;
  }

  .ff-step-header {
    padding: 16px 20px 14px;
  }

  .ff-name-field-wrapper .ff-t-container {
    flex-direction: column;
    gap: 0;
  }

  .ff-btn {
    padding: 12px 20px;
    font-size: 11px;
  }

  .ff-btn-submit,
  .ff_btn_style {
    padding: 13px 24px;
  }
}/* End custom CSS */