.elementor-281 .elementor-element.elementor-element-51609ff{--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 30px;--row-gap:0px;--column-gap:30px;--padding-top:0px;--padding-bottom:0px;--padding-left:15px;--padding-right:15px;}.elementor-281 .elementor-element.elementor-element-b086916{--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-281 .elementor-element.elementor-element-5e7ba71{--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-281 .elementor-element.elementor-element-24f1233{--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:90px;--padding-bottom:90px;--padding-left:15px;--padding-right:15px;}.elementor-281 .elementor-element.elementor-element-3f47b39{--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-style:solid;--border-style:solid;border-width:0px 1px 0px 0px;--border-top-width:0px;--border-right-width:1px;--border-bottom-width:0px;--border-left-width:0px;border-color:#EDEDED;--border-color:#EDEDED;}.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-281 .elementor-element.elementor-element-0073dde .elementor-heading-title{font-family:"Neue Haas Unica", Sans-serif;font-size:40px;font-weight:700;line-height:53px;letter-spacing:-0.86px;}.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 );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );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-281 .elementor-element.elementor-element-1ec020d{font-family:"Neue Haas Unica", Sans-serif;font-size:20px;font-weight:400;line-height:25px;letter-spacing:0.4px;color:var( --e-global-color-secondary );}.elementor-281 .elementor-element.elementor-element-fbea0cd{--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;}.elementor-281 .elementor-element.elementor-element-ac61245{--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-281 .elementor-element.elementor-element-d7de461{--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:48px;--padding-bottom:48px;--padding-left:80px;--padding-right:15px;}.elementor-281 .elementor-element.elementor-element-d7de461:not(.elementor-motion-effects-element-type-background), .elementor-281 .elementor-element.elementor-element-d7de461 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FCFCFC;}.elementor-281 .elementor-element.elementor-element-5cd4e2d{--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:20px;--padding-bottom:50px;--padding-left:80px;--padding-right:15px;}.elementor-281 .elementor-element.elementor-element-5cd4e2d:not(.elementor-motion-effects-element-type-background), .elementor-281 .elementor-element.elementor-element-5cd4e2d > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FCFCFC;}.elementor-281 .elementor-element.elementor-element-96ebd86{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-281 .elementor-element.elementor-element-850ccff .elementor-heading-title{font-family:"Neue Haas Unica", Sans-serif;font-size:40px;font-weight:700;line-height:53px;letter-spacing:-0.86px;}.elementor-widget-loop-grid .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-widget-loop-grid .elementor-pagination{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-size:var( --e-global-typography-secondary-font-size );font-weight:var( --e-global-typography-secondary-font-weight );line-height:var( --e-global-typography-secondary-line-height );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}.elementor-widget-loop-grid .e-load-more-message{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-size:var( --e-global-typography-secondary-font-size );font-weight:var( --e-global-typography-secondary-font-weight );line-height:var( --e-global-typography-secondary-line-height );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}.elementor-281 .elementor-element.elementor-element-9f3acf3{--grid-columns:4;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-281 .elementor-element.elementor-element-f61e921 .elementor-button{background-color:var( --e-global-color-primary );font-family:"Neue Haas Unica", Sans-serif;font-size:20px;font-weight:400;line-height:25px;letter-spacing:-0.44px;fill:var( --e-global-color-711091f );color:var( --e-global-color-711091f );transition-duration:0.2s;border-radius:0px 0px 0px 0px;}.elementor-281 .elementor-element.elementor-element-f61e921 .elementor-button:hover, .elementor-281 .elementor-element.elementor-element-f61e921 .elementor-button:focus{background-color:var( --e-global-color-8e43c03 );color:var( --e-global-color-secondary );}.elementor-281 .elementor-element.elementor-element-f61e921{margin:20px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-281 .elementor-element.elementor-element-f61e921 .elementor-button-content-wrapper{flex-direction:row-reverse;}.elementor-281 .elementor-element.elementor-element-f61e921 .elementor-button .elementor-button-content-wrapper{gap:25px;}.elementor-281 .elementor-element.elementor-element-f61e921 .elementor-button:hover svg, .elementor-281 .elementor-element.elementor-element-f61e921 .elementor-button:focus svg{fill:var( --e-global-color-secondary );}.elementor-281 .elementor-element.elementor-element-d3a92ae{--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;--padding-top:30px;--padding-bottom:0px;--padding-left:15px;--padding-right:15px;}.elementor-281 .elementor-element.elementor-element-d3a92ae:not(.elementor-motion-effects-element-type-background), .elementor-281 .elementor-element.elementor-element-d3a92ae > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-8d2184d );}.elementor-281 .elementor-element.elementor-element-0c02af8{--display:flex;--min-height:662px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right: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 );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.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 );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.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 );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-widget-form .elementor-button{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.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 );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.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-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.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-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-281 .elementor-element.elementor-element-d8614c4{background-color:var( --e-global-color-primary );padding:48px 15px 48px 20px;--e-form-steps-indicators-spacing:20px;--e-form-steps-indicator-padding:30px;--e-form-steps-indicator-inactive-secondary-color:#ffffff;--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-281 .elementor-element.elementor-element-d8614c4 .elementor-button-content-wrapper{flex-direction:row-reverse;}.elementor-281 .elementor-element.elementor-element-d8614c4 .elementor-button span{gap:50px;}.elementor-281 .elementor-element.elementor-element-d8614c4 .elementor-field-group{margin-bottom:10px;}.elementor-281 .elementor-element.elementor-element-d8614c4 .elementor-field-group.recaptcha_v3-bottomleft, .elementor-281 .elementor-element.elementor-element-d8614c4 .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}.elementor-281 .elementor-element.elementor-element-d8614c4 .elementor-form-fields-wrapper{margin-bottom:-10px;}body.rtl .elementor-281 .elementor-element.elementor-element-d8614c4 .elementor-labels-inline .elementor-field-group > label{padding-left:0px;}body:not(.rtl) .elementor-281 .elementor-element.elementor-element-d8614c4 .elementor-labels-inline .elementor-field-group > label{padding-right:0px;}body .elementor-281 .elementor-element.elementor-element-d8614c4 .elementor-labels-above .elementor-field-group > label{padding-bottom:0px;}.elementor-281 .elementor-element.elementor-element-d8614c4 .elementor-field-group > label, .elementor-281 .elementor-element.elementor-element-d8614c4 .elementor-field-subgroup label{color:#F7F7F7;}.elementor-281 .elementor-element.elementor-element-d8614c4 .elementor-field-group > label{font-family:"Neue Haas Unica", Sans-serif;font-size:12px;font-weight:400;line-height:18px;letter-spacing:0.4px;}.elementor-281 .elementor-element.elementor-element-d8614c4 .elementor-field-type-html{padding-bottom:0px;color:var( --e-global-color-711091f );}.elementor-281 .elementor-element.elementor-element-d8614c4 .elementor-field-group .elementor-field{color:#8F8F8F;}.elementor-281 .elementor-element.elementor-element-d8614c4 .elementor-field-group .elementor-field, .elementor-281 .elementor-element.elementor-element-d8614c4 .elementor-field-subgroup label{font-family:"Neue Haas Unica", Sans-serif;font-size:12px;font-weight:400;line-height:18px;letter-spacing:0.4px;}.elementor-281 .elementor-element.elementor-element-d8614c4 .elementor-field-group .elementor-field:not(.elementor-select-wrapper){background-color:var( --e-global-color-711091f );}.elementor-281 .elementor-element.elementor-element-d8614c4 .elementor-field-group .elementor-select-wrapper select{background-color:var( --e-global-color-711091f );}.elementor-281 .elementor-element.elementor-element-d8614c4 .elementor-button{font-family:"Neue Haas Unica", Sans-serif;font-size:24px;font-weight:400;line-height:21px;letter-spacing:-0.44px;padding:15px 15px 15px 15px;}.elementor-281 .elementor-element.elementor-element-d8614c4 .e-form__buttons__wrapper__button-next{background-color:var( --e-global-color-711091f );color:var( --e-global-color-primary );}.elementor-281 .elementor-element.elementor-element-d8614c4 .elementor-button[type="submit"]{background-color:var( --e-global-color-711091f );color:var( --e-global-color-primary );}.elementor-281 .elementor-element.elementor-element-d8614c4 .elementor-button[type="submit"] svg *{fill:var( --e-global-color-primary );}.elementor-281 .elementor-element.elementor-element-d8614c4 .e-form__buttons__wrapper__button-previous{color:#ffffff;}.elementor-281 .elementor-element.elementor-element-d8614c4 .e-form__buttons__wrapper__button-next:hover{background-color:#DB002F;color:#ffffff;}.elementor-281 .elementor-element.elementor-element-d8614c4 .elementor-button[type="submit"]:hover{background-color:#DB002F;color:#ffffff;}.elementor-281 .elementor-element.elementor-element-d8614c4 .elementor-button[type="submit"]:hover svg *{fill:#ffffff;}.elementor-281 .elementor-element.elementor-element-d8614c4 .e-form__buttons__wrapper__button-previous:hover{color:#ffffff;}.elementor-281 .elementor-element.elementor-element-86b1554{--display:flex;--min-height:662px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}@media(max-width:1024px){.elementor-281 .elementor-element.elementor-element-51609ff{--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-281 .elementor-element.elementor-element-24f1233{--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:48px;--padding-bottom:20px;--padding-left:15px;--padding-right:15px;}.elementor-281 .elementor-element.elementor-element-3f47b39{border-width:0px 0px 0px 0px;--border-top-width:0px;--border-right-width:0px;--border-bottom-width:0px;--border-left-width:0px;}.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-281 .elementor-element.elementor-element-0073dde .elementor-heading-title{font-size:33px;line-height:52px;}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-281 .elementor-element.elementor-element-d7de461{--padding-top:15px;--padding-bottom:15px;--padding-left:70px;--padding-right:70px;}.elementor-281 .elementor-element.elementor-element-5cd4e2d{--padding-top:20px;--padding-bottom:30px;--padding-left:40px;--padding-right:15px;}.elementor-281 .elementor-element.elementor-element-850ccff .elementor-heading-title{font-size:33px;line-height:1.1em;}.elementor-widget-loop-grid .elementor-pagination{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}.elementor-widget-loop-grid .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-widget-loop-grid .e-load-more-message{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}.elementor-281 .elementor-element.elementor-element-9f3acf3{--grid-columns:2;}.elementor-widget-button .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-281 .elementor-element.elementor-element-d3a92ae{--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-form .elementor-field-group > label{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-widget-form .elementor-field-type-html{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-widget-form .elementor-field-group .elementor-field, .elementor-widget-form .elementor-field-subgroup label{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-widget-form .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-widget-form .elementor-message{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-widget-form .e-form__indicators__indicator, .elementor-widget-form .e-form__indicators__indicator__label{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-widget-form .e-form__indicators__indicator__progress__meter{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-281 .elementor-element.elementor-element-86b1554{--min-height:335px;--margin-top:-57px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}}@media(max-width:767px){.elementor-281 .elementor-element.elementor-element-51609ff{--padding-top:0px;--padding-bottom:0px;--padding-left:10px;--padding-right:10px;}.elementor-281 .elementor-element.elementor-element-24f1233{--padding-top:48px;--padding-bottom:15px;--padding-left:15px;--padding-right:15px;}.elementor-281 .elementor-element.elementor-element-3f47b39{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.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 );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-281 .elementor-element.elementor-element-1ec020d{line-height:26px;}.elementor-281 .elementor-element.elementor-element-fbea0cd{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-281 .elementor-element.elementor-element-ac61245{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-281 .elementor-element.elementor-element-aa0b0bc{padding:0px 0px 0px 0px;}.elementor-281 .elementor-element.elementor-element-d7de461{--padding-top:0px;--padding-bottom:0px;--padding-left:15px;--padding-right:15px;}.elementor-281 .elementor-element.elementor-element-5cd4e2d{--padding-top:15px;--padding-bottom:15px;--padding-left:15px;--padding-right:15px;}.elementor-widget-loop-grid .elementor-pagination{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}.elementor-widget-loop-grid .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-widget-loop-grid .e-load-more-message{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}.elementor-281 .elementor-element.elementor-element-9f3acf3{--grid-columns:1;}.elementor-widget-button .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-281 .elementor-element.elementor-element-0c02af8{--padding-top:0px;--padding-bottom:30px;--padding-left:0px;--padding-right:0px;}.elementor-widget-form .elementor-field-group > label{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-widget-form .elementor-field-type-html{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-widget-form .elementor-field-group .elementor-field, .elementor-widget-form .elementor-field-subgroup label{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-widget-form .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-widget-form .elementor-message{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-widget-form .e-form__indicators__indicator, .elementor-widget-form .e-form__indicators__indicator__label{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-widget-form .e-form__indicators__indicator__progress__meter{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}}@media(min-width:768px){.elementor-281 .elementor-element.elementor-element-b086916{--width:33%;}.elementor-281 .elementor-element.elementor-element-5e7ba71{--width:67%;}.elementor-281 .elementor-element.elementor-element-3f47b39{--width:33%;}.elementor-281 .elementor-element.elementor-element-fbea0cd{--width:67%;}}@media(max-width:1024px) and (min-width:768px){.elementor-281 .elementor-element.elementor-element-b086916{--width:100%;}.elementor-281 .elementor-element.elementor-element-5e7ba71{--width:100%;}.elementor-281 .elementor-element.elementor-element-3f47b39{--width:100%;}.elementor-281 .elementor-element.elementor-element-fbea0cd{--width:100%;}}/* Start custom CSS for html, class: .elementor-element-a2377be *//* =========================================================
   FRIBIN HOMEPAGE HERO — DUAL CAROUSEL
   =========================================================
   Structure: two independent Swiper instances sitting side
   by side —
   .fribin-hero__images  (left column, ~33% width, photos)
   .fribin-hero__videos  (right column, ~67% width, videos)
   They are linked via Swiper's Controller module in the
   accompanying JS snippet ("Hero JS"), so navigating one
   moves the other in sync — this CSS only handles
   appearance, not the linking logic itself.

   Column reordering on tablet/mobile (video first, image
   second when stacked) is handled entirely by the Hero JS
   snippet's reorderHeroColumns() function, which physically
   moves the DOM nodes — NOT by CSS 'order', since that only
   works on flex children and this build's Elementor
   Container structure doesn't reliably provide that flex
   context at this breakpoint. Do not re-add an 'order'-based
   rule here; it was tried, found unreliable, and removed.
   ========================================================= */

/* ---------------------------------------------------------
   Fixed height (500px) so both columns match regardless of
   each individual image/video's native size on desktop.
   overflow:hidden clips anything Swiper positions outside
   the visible slide.

   NOTE: Actual height is overridden dynamically at runtime
   by the Hero JS snippet (matchVideoHeightToImage), which
   applies different logic per breakpoint — the values below
   are just a fallback/starting point before JS runs.
   --------------------------------------------------------- */
.elementor-281 .elementor-element.elementor-element-a2377be .fribin-hero__images {
    width: 100%;
    height: 500px !important;
    overflow: hidden;
}
.elementor-281 .elementor-element.elementor-element-a2377be .fribin-hero__videos {
    width: 100%;
    height: 500px;
    overflow: hidden;
    position: relative; /* anchors the nav arrows + dots below */
}

/* ---------------------------------------------------------
   SLIDE HEIGHT FIX
   ---------------------------------------------------------
   Swiper sets an inline width on each .swiper-slide via JS,
   but does not always set a height — meaning direct children
   using height:100% (like the img/video rule below) have
   nothing to be 100% OF, and fall back to their own natural
   size instead. This rule explicitly gives every slide a
   height matching its parent container, restoring that
   chain. Actual pixel values are also set directly by the
   Hero JS snippet at runtime.
   --------------------------------------------------------- */
.elementor-281 .elementor-element.elementor-element-a2377be .fribin-hero__images .swiper-slide,
.elementor-281 .elementor-element.elementor-element-a2377be .fribin-hero__videos .swiper-slide {
    height: 100% !important;
}

/* ---------------------------------------------------------
   object-fit: cover crops media to fill the slide area
   without distorting aspect ratio.
   display: block removes the small inline-element whitespace
   gap browsers add by default under <img>/<video> tags.
   --------------------------------------------------------- */
.elementor-281 .elementor-element.elementor-element-a2377be .fribin-hero__images .swiper-slide img,
.elementor-281 .elementor-element.elementor-element-a2377be .fribin-hero__videos .swiper-slide video {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
}

/* ---------------------------------------------------------
   NAVIGATION ARROWS (prev/next)
   ---------------------------------------------------------
   Rectangular light-gray tabs sitting flush against the
   bottom-right corner of the video column, matching the
   original Fribin site's design. Dimensions (24x20px)
   confirmed directly from the real site via DevTools.
   z-index: 20 keeps these above the pagination dots
   (z-index: 10) so clicks always reach the arrows even if
   their bounding boxes visually overlap.
   --------------------------------------------------------- */
.elementor-281 .elementor-element.elementor-element-a2377be .fribin-hero__nav {
    position: absolute;
    bottom: 0;
    right: 0;
    display: flex;
    z-index: 20;
}
.elementor-281 .elementor-element.elementor-element-a2377be .fribin-hero__prev,
.elementor-281 .elementor-element.elementor-element-a2377be .fribin-hero__next {
    width: 64px;
    height: 64px;
    background: #f2f2f2;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    box-sizing: border-box;
    position: relative;
    z-index: 15;
}

/* ---------------------------------------------------------
   Vertical divider line between the two arrow buttons,
   confirmed from the real site's reference screenshot.
   --------------------------------------------------------- */
.elementor-281 .elementor-element.elementor-element-a2377be .fribin-hero__prev {
    border-right: 1px solid #ddd;
}

/* ---------------------------------------------------------
   Arrow icon: thin chevron drawn via SVG mask-image rather
   than CSS border-rotation, matching the original site's
   slim arrow style and avoiding any character-encoding
   issues (same technique used for the header menu's hover
   arrow). Size confirmed directly from the real site.
   --------------------------------------------------------- */
.elementor-281 .elementor-element.elementor-element-a2377be .fribin-hero__prev::before,
.elementor-281 .elementor-element.elementor-element-a2377be .fribin-hero__next::before {
    content: '';
    width: 18px;
    height: 18px;
    background-color: #b70140;
    -webkit-mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='black' d='M4 11h13.17l-5.59-5.59L13 4l8 8-8 8-1.41-1.41L17.17 13H4z'/></svg>");
    mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='black' d='M4 11h13.17l-5.59-5.59L13 4l8 8-8 8-1.41-1.41L17.17 13H4z'/></svg>");
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: contain;
    mask-size: contain;
    border: none;
}
.elementor-281 .elementor-element.elementor-element-a2377be .fribin-hero__prev::before {
    transform: rotate(180deg); /* flips the arrow to point left */
    margin: 0;
}
.elementor-281 .elementor-element.elementor-element-a2377be .fribin-hero__next::before {
    transform: none;
    margin: 0;
}

/* ---------------------------------------------------------
   PAGINATION DOTS
   ---------------------------------------------------------
   Swiper auto-generates the dot elements; we only style
   their appearance and position here. Sits bottom-left of
   the video column (not the whole hero) — all positioning
   properties use !important to override Swiper's own
   default pagination CSS (which otherwise centers/stretches
   the container), keeping the dots anchored bottom-left as
   confirmed on the real site.
   --------------------------------------------------------- */
.elementor-281 .elementor-element.elementor-element-a2377be .fribin-hero__dots {
    position: absolute !important;
    bottom: 20px !important;
    left: 20px !important;
    right: auto !important;
    top: auto !important;
    z-index: 10;
    width: auto !important;
    text-align: left !important;
    display: inline-flex !important;
}

/* ---------------------------------------------------------
   Individual dots: solid white fill at all times, matching
   the real site. Sizes (14px) confirmed directly from the
   real site via DevTools.
   --------------------------------------------------------- */
.elementor-281 .elementor-element.elementor-element-a2377be .fribin-hero__dots .swiper-pagination-bullet {
    width: 14px;
    height: 14px;
    background: #fff;
    opacity: 1;
    border: none;
    position: relative;
}

/* ---------------------------------------------------------
   Active dot: keeps the SAME solid white fill and size as
   inactive dots — no color change, no size change on the
   dot itself. Instead, a separate ring is drawn using an
   ::after pseudo-element below, layered exactly on top of
   the dot and centered via transform: translate(-50%, -50%).
   This creates genuine visual separation between the dot
   and the ring around it, matching the real site.
   --------------------------------------------------------- */
.elementor-281 .elementor-element.elementor-element-a2377be .fribin-hero__dots .swiper-pagination-bullet-active {
    width: 14px;
    height: 14px;
    background: #fff;
}

.elementor-281 .elementor-element.elementor-element-a2377be .fribin-hero__dots .swiper-pagination-bullet-active::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 22px;
    height: 22px;
    border: 1px solid #fff;
    border-radius: 50%;
    transform: translate(-50%, -50%);
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-eaede8d *//* =========================================================
   FRIBIN HOMEPAGE — WELCOME STATS COUNTERS
   =========================================================
   4 counter blocks laid out in a row (2x2 on smaller
   screens — handled in the responsive section further
   down). Each block: animated number, small dots icon,
   category icon, label. The counting animation itself is
   handled by JS (see "Welcome Counters JS" snippet), which
   triggers when this section scrolls into view.
   ========================================================= */
.elementor-281 .elementor-element.elementor-element-eaede8d .fribin-counters {
    display: flex;
    flex-wrap: wrap;
}
.elementor-281 .elementor-element.elementor-element-eaede8d .fribin-counter {
    flex: 1 1 25%;
    text-align: center;
    padding: 0 15px;
    border-right: 1px solid #ededed;
}
/* Last counter block has no right divider */
.elementor-281 .elementor-element.elementor-element-eaede8d .fribin-counter:last-child {
    border-right: none;
}
.elementor-281 .elementor-element.elementor-element-eaede8d .fribin-counter__number-row {
    margin-bottom: 10px;
}
/* ---------------------------------------------------------
   COUNTER NUMBER + UNIT
   ---------------------------------------------------------
   Desktop: 52px / 63px line-height (confirmed values).
   Tablet + Mobile (<=1024px): 32px / 32px line-height,
   overridden in the responsive block further down.
   --------------------------------------------------------- */
.elementor-281 .elementor-element.elementor-element-eaede8d .fribin-counter__number,
.elementor-281 .elementor-element.elementor-element-eaede8d .fribin-counter__unit {
    font-family: "Neue Haas Unica", sans-serif;
    font-weight: 700;
    font-size: 52px;
    line-height: 63px;
    color: #b70140;
}
.elementor-281 .elementor-element.elementor-element-eaede8d .fribin-counter__dots {
    display: block;
    margin: 10px auto;
    height: 8px;
}
.elementor-281 .elementor-element.elementor-element-eaede8d .fribin-counter__icon {
    display: block;
    margin: 15px auto;
    height: 50px;
}
/* ---------------------------------------------------------
   COUNTER LABEL (Beef, Pork, Staff, Size of facilities...)
   ---------------------------------------------------------
   Desktop + Tablet: 20px / 26px line-height (confirmed).
   Mobile (<=768px): 16px / 26px line-height (confirmed),
   overridden further down.
   --------------------------------------------------------- */
.elementor-281 .elementor-element.elementor-element-eaede8d .fribin-counter__label {
    font-family: "Neue Haas Unica", sans-serif;
    font-weight: 400;
    font-size: 20px;
    line-height: 26px;
    color: #494949;
    margin: 0;
}
/* ---------------------------------------------------------
   RESPONSIVE — 2x2 grid on tablet/mobile instead of 1x4 row,
   plus smaller counter number size (32px / 32px line-height,
   confirmed values). Cross-divider pattern: vertical line
   between columns + horizontal line between rows.
   --------------------------------------------------------- */
@media (max-width: 1024px) {
    .elementor-281 .elementor-element.elementor-element-eaede8d .fribin-counter {
        flex: 1 1 50%;
        padding: 20px 15px;
        border-right: 1px solid #ededed;
        border-bottom: 1px solid #ededed;
        margin-bottom: 0;
    }
    /* Remove right divider on every 2nd item (right column
       of the 2x2 grid) */
    .elementor-281 .elementor-element.elementor-element-eaede8d .fribin-counter:nth-child(2n) {
        border-right: none;
    }
    /* Remove bottom divider on the last row (3rd and 4th
       items — since there are exactly 4 counters total) */
    .elementor-281 .elementor-element.elementor-element-eaede8d .fribin-counter:nth-child(3),
    .elementor-281 .elementor-element.elementor-element-eaede8d .fribin-counter:nth-child(4) {
        border-bottom: none;
    }
    .elementor-281 .elementor-element.elementor-element-eaede8d .fribin-counter__number,
    .elementor-281 .elementor-element.elementor-element-eaede8d .fribin-counter__unit {
        font-size: 32px;
        line-height: 32px;
    }
}
/* ---------------------------------------------------------
   MOBILE ONLY — smaller label size (16px / 26px line-height,
   confirmed value). Everything else (grid, dividers, number
   size) inherits from the tablet/mobile block above.
   --------------------------------------------------------- */
@media (max-width: 768px) {
    .elementor-281 .elementor-element.elementor-element-eaede8d .fribin-counter__label {
        font-size: 16px;
        line-height: 26px;
    }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-aa0b0bc *//* =========================================================
   FRIBIN HOMEPAGE — DIVISIONS SECTION
   =========================================================
   Left: background image, swaps on hover of the 4 tiles.
   Desktop only — hidden entirely on tablet/mobile. Fades in
   and slides from the left when scrolled into view (matches
   original site's fadeInLeft, 1s duration, made more
   pronounced with a 150px slide distance).
   Right: H2 title, text, then a 2x2 grid of division tiles
   (Beef, Pork, Halal, Processed) with cross-divider borders
   and a small red arrow after each tile label.
   ========================================================= */
.elementor-281 .elementor-element.elementor-element-aa0b0bc .fribin-divisions {
    display: flex;
    flex-wrap: wrap;
}
/* ---------------------------------------------------------
   IMAGE BLOCK — background image + entrance animation
   --------------------------------------------------------- */
.elementor-281 .elementor-element.elementor-element-aa0b0bc .fribin-divisions__image {
    flex: 0 0 50%;
    max-width: 50%;
    background-size: cover;
    background-position: center;
    min-height: 500px;
    transition: background-image 0.3s ease;
    opacity: 0;
    transform: translate3d(-150px, 0, 0);
}
.elementor-281 .elementor-element.elementor-element-aa0b0bc .fribin-divisions__image.is-visible {
    animation: fribinFadeInLeft 1s ease both;
}
@keyframes fribinFadeInLeft {
    from {
        opacity: 0;
        transform: translate3d(-150px, 0, 0);
    }
    to {
        opacity: 1;
        transform: translate3d(0, 0, 0);
    }
}
.elementor-281 .elementor-element.elementor-element-aa0b0bc .fribin-divisions__content {
    flex: 0 0 50%;
    max-width: 50%;
    padding: 40px;
}
/* ---------------------------------------------------------
   TITLE — "Divisions" heading (H2)
   ---------------------------------------------------------
   Desktop: 40px / 53px line-height
   Tablet:  33px / 48px line-height (see @media 1024px)
   Mobile:  33px / 33px line-height (see @media 768px)
   --------------------------------------------------------- */
.elementor-281 .elementor-element.elementor-element-aa0b0bc .fribin-divisions__title {
    font-family: "Neue Haas Unica", sans-serif;
    font-weight: 700;
    font-size: 40px;
    line-height: 53px;
    color: #b70140;
    margin: 0 0 20px;
}
/* ---------------------------------------------------------
   BODY TEXT
   ---------------------------------------------------------
   Desktop: 20px / 25px line-height
   Tablet + Mobile: 20px, letter-spacing -.42px, 26px
   line-height (see @media 1024px, applies to both)
   --------------------------------------------------------- */
.elementor-281 .elementor-element.elementor-element-aa0b0bc .fribin-divisions__text {
    font-family: "Neue Haas Unica", sans-serif;
    font-size: 20px;
    line-height: 25px;
    color: #494949;
    margin: 0;
}
.elementor-281 .elementor-element.elementor-element-aa0b0bc .fribin-divisions__tiles {
    display: flex;
    flex-wrap: wrap;
    margin-top: 40px;
}
.elementor-281 .elementor-element.elementor-element-aa0b0bc .fribin-divisions__tile {
    flex: 1 1 50%;
    text-align: center;
    padding: 30px 15px;
    text-decoration: none;
    box-sizing: border-box;
}
.elementor-281 .elementor-element.elementor-element-aa0b0bc .fribin-divisions__tile img {
    display: block;
    margin: 0 auto 15px;
    height: 60px;
}
/* ---------------------------------------------------------
   TILE LABEL — text under each division icon (Beef, Pork,
   Halal, Processed)
   ---------------------------------------------------------
   Desktop: 26px, Medium weight, letter-spacing -.42px,
   brand red color
   Tablet/Mobile (<=991px): 18px, letter-spacing -.29px
   --------------------------------------------------------- */
.elementor-281 .elementor-element.elementor-element-aa0b0bc .fribin-divisions__tile p {
    font-family: "Neue Haas Unica W 1 G - Medium", sans-serif;
    font-weight: 500;
    font-size: 26px;
    letter-spacing: -.42px;
    color: #b70140;
    margin-top: 15px;
    margin-bottom: 0;
    position: relative;
}
@media (max-width: 991px) {
    .elementor-281 .elementor-element.elementor-element-aa0b0bc .fribin-divisions__tile p {
        font-size: 18px;
        letter-spacing: -.29px;
    }
}
/* ---------------------------------------------------------
   ARROW — small red arrow after each tile label
   --------------------------------------------------------- */
.elementor-281 .elementor-element.elementor-element-aa0b0bc .fribin-divisions__arrow {
    display: inline-block;
    width: 18px;
    height: 18px;
    vertical-align: middle;
    margin-left: 4px;
    position: relative;
    top: -2px;
}
@media (max-width: 991px) {
    .elementor-281 .elementor-element.elementor-element-aa0b0bc .fribin-divisions__arrow {
        width: 14px;
        height: 14px;
    }
}
/* Cross-divider borders — matches original's border-b/l/r/t
   Layout: Beef (top-left) | Pork (top-right)
           Halal (btm-left) | Processed (btm-right) */
.elementor-281 .elementor-element.elementor-element-aa0b0bc .fribin-divisions__tile--b {
    border-bottom: 1px solid #ededed;
    border-right: 1px solid #ededed;
}
.elementor-281 .elementor-element.elementor-element-aa0b0bc .fribin-divisions__tile--l {
    border-bottom: 1px solid #ededed;
}
.elementor-281 .elementor-element.elementor-element-aa0b0bc .fribin-divisions__tile--r {
    border-right: 1px solid #ededed;
}
/* ---------------------------------------------------------
   RESPONSIVE — TABLET (max-width: 1024px)
   ---------------------------------------------------------
   Hide image entirely (desktop-only per original site),
   content stacks full-width, title/text resize per confirmed
   tablet values.
   --------------------------------------------------------- */
@media (max-width: 1024px) {
    .elementor-281 .elementor-element.elementor-element-aa0b0bc .fribin-divisions__image {
        display: none;
    }
    .elementor-281 .elementor-element.elementor-element-aa0b0bc .fribin-divisions__content {
        flex: 1 1 100%;
        max-width: 100%;
        padding: 30px 20px;
    }
    .elementor-281 .elementor-element.elementor-element-aa0b0bc .fribin-divisions__title {
        font-size: 33px;
        line-height: 48px;
    }
    .elementor-281 .elementor-element.elementor-element-aa0b0bc .fribin-divisions__text {
        font-size: 20px;
        letter-spacing: -.42px;
        line-height: 26px;
    }
}
/* ---------------------------------------------------------
   RESPONSIVE — MOBILE ONLY (max-width: 768px)
   --------------------------------------------------------- */
@media (max-width: 768px) {
    .elementor-281 .elementor-element.elementor-element-aa0b0bc .fribin-divisions__title {
        line-height: 33px;
    }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-ef3c542 *//* =========================================================
   FRIBIN HOMEPAGE — CERTIFICATIONS SECTION
   =========================================================
   Row has a full-bleed background photo (certificaciones-
   fribin.jpg). A pink card panel floats on top of it on
   desktop (negative-margin offset), and sits flush/full-
   width on tablet/mobile. Contains an H2 title, a
   Process/Product tab switcher (H3 inside each tab link),
   and per-tab certificate lists — each wrapped in a
   .fribin-certifications__cert block (H4 name + paragraph,
   some with a linked cert image or "View certificate" text
   link), with a divider line after every cert except the
   last one in each panel, and a pill-shaped "Learn more"
   button at the bottom of each panel.
   ========================================================= */
.elementor-281 .elementor-element.elementor-element-ef3c542 .fribin-certifications {
    padding: 48px 0;
    background: #fcfcfc;
}
.elementor-281 .elementor-element.elementor-element-ef3c542 .fribin-certifications__row {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -15px;
    background: url("https://fribins.com/wp-content/uploads/2026/08/certificaciones-fribin.jpg") center center / cover no-repeat;
}
/* ---------------------------------------------------------
   CARD — pink panel, floats over the background photo on
   desktop via negative margin; flush full-width on
   tablet/mobile (confirmed: margin resets to 0 at <=991px)
   --------------------------------------------------------- */
.elementor-281 .elementor-element.elementor-element-ef3c542 .fribin-certifications__card {
    position: relative;
    box-sizing: border-box;
    padding: 30px 15px;
    background-color: rgb(253, 242, 234);
}
@media (min-width: 992px) {
    .elementor-281 .elementor-element.elementor-element-ef3c542 .fribin-certifications__card {
        flex: 0 0 50%;
        max-width: 50%;
        margin: -30px 30px 30px -30px;
        padding: 30px;
    }
}
@media (min-width: 993px) and (max-width: 1500px) {
    .elementor-281 .elementor-element.elementor-element-ef3c542 .fribin-certifications__card {
        margin-left: -1px;
    }
}
/* ---------------------------------------------------------
   TITLE — H2 "Certifications"
   ---------------------------------------------------------
   Desktop: 40px / 53px, Bold
   Tablet + Mobile (<=991px): 33px / 33px, Bold
   --------------------------------------------------------- */
.elementor-281 .elementor-element.elementor-element-ef3c542 .fribin-certifications__title {
    font-family: "Neue Haas Unica W 1 G - Bold", sans-serif;
    font-size: 40px;
    line-height: 53px;
    color: #b70140;
    margin: 0 0 20px;
}
@media (max-width: 991px) {
    .elementor-281 .elementor-element.elementor-element-ef3c542 .fribin-certifications__title {
        font-size: 33px;
        line-height: 33px;
    }
}
/* ---------------------------------------------------------
   TABS — "Process" / "Product" switcher (H3 inside each
   link, styled to match confirmed tab typography)
   ---------------------------------------------------------
   Desktop: 25px / 24px, Medium weight
   Tablet + Mobile: value not confirmed from real site —
   using proportional estimate (18px), verify and adjust
   once live
   --------------------------------------------------------- */
.elementor-281 .elementor-element.elementor-element-ef3c542 .fribin-certifications__tabs {
    display: flex;
    gap: 30px;
    margin-bottom: 20px;
    border-bottom: 1px solid #ddd;
}
.elementor-281 .elementor-element.elementor-element-ef3c542 .fribin-certifications__tab {
    text-decoration: none;
    cursor: pointer;
    padding: 15px 0;
    position: relative;
    display: inline-block;
}
.elementor-281 .elementor-element.elementor-element-ef3c542 .fribin-certifications__tab h3 {
    font-family: "Neue Haas Unica W 1 G - Medium", sans-serif;
    font-size: 25px;
    line-height: 24px;
    font-weight: 500;
    color: #494949;
    margin: 0;
    text-transform: capitalize;
}
.elementor-281 .elementor-element.elementor-element-ef3c542 .fribin-certifications__tab.is-active h3 {
    color: #b70140;
}
.elementor-281 .elementor-element.elementor-element-ef3c542 .fribin-certifications__tab.is-active::after {
    content: "";
    position: absolute;
    bottom: -1px;
    left: 0;
    width: 100%;
    height: 2px;
    background: #b70140;
}
@media (max-width: 991px) {
    .elementor-281 .elementor-element.elementor-element-ef3c542 .fribin-certifications__tab h3 {
        font-size: 18px; /* estimated — confirm against live site */
        line-height: 24px;
    }
}
/* ---------------------------------------------------------
   PANELS — tab content, hidden unless .is-active
   --------------------------------------------------------- */
.elementor-281 .elementor-element.elementor-element-ef3c542 .fribin-certifications__panel {
    display: none;
}
.elementor-281 .elementor-element.elementor-element-ef3c542 .fribin-certifications__panel.is-active {
    display: block;
}
/* ---------------------------------------------------------
   CERT BLOCK — wraps each H4 + paragraph (+ optional
   link/image). Divider line after every cert block except
   the last one in each panel.
   --------------------------------------------------------- */
.elementor-281 .elementor-element.elementor-element-ef3c542 .fribin-certifications__cert {
    padding-bottom: 20px;
    margin-bottom: 20px;
    border-bottom: 1px solid #ededed;
}
.elementor-281 .elementor-element.elementor-element-ef3c542 .fribin-certifications__cert--last {
    padding-bottom: 0;
    margin-bottom: 0;
    border-bottom: none;
}
/* ---------------------------------------------------------
   CERT NAME — H4 (ISO 9001, ISO 14001, IFS Food, etc.)
   ---------------------------------------------------------
   Desktop: 20px / 26px
   Tablet + Mobile (<=991px): 16px / 26px
   --------------------------------------------------------- */
.elementor-281 .elementor-element.elementor-element-ef3c542 .fribin-certifications__cert h4 {
    font-family: "Neue Haas Unica W 1 G - Regular", sans-serif;
    font-size: 20px;
    line-height: 26px;
    color: #db032f;
    margin: 0 0 5px;
}
@media (max-width: 991px) {
    .elementor-281 .elementor-element.elementor-element-ef3c542 .fribin-certifications__cert h4 {
        font-size: 16px;
        line-height: 26px;
    }
}
/* ---------------------------------------------------------
   BODY TEXT — certificate description paragraphs
   ---------------------------------------------------------
   Desktop: 20px / 26px
   Tablet + Mobile (<=991px): 16px / 26px
   --------------------------------------------------------- */
.elementor-281 .elementor-element.elementor-element-ef3c542 .fribin-certifications__cert p {
    font-family: "Neue Haas Unica W 1 G - Regular", sans-serif;
    font-size: 20px;
    line-height: 26px;
    color: #494949;
    margin: 0;
}
@media (max-width: 991px) {
    .elementor-281 .elementor-element.elementor-element-ef3c542 .fribin-certifications__cert p {
        font-size: 16px;
        line-height: 26px;
    }
}
/* ---------------------------------------------------------
   CERT IMAGE LINKS
   --------------------------------------------------------- */
.elementor-281 .elementor-element.elementor-element-ef3c542 .fribin-certifications__cert-link {
    display: inline-block;
    margin-top: 10px;
}
.elementor-281 .elementor-element.elementor-element-ef3c542 .fribin-certifications__cert-link img {
    max-width: 120px;
    height: auto;
    display: block;
}
.elementor-281 .elementor-element.elementor-element-ef3c542 .fribin-certifications__cert-full {
    max-width: 100% !important;
}
/* ---------------------------------------------------------
   "View certificate" text link — grey at rest, brand red
   on hover (confirmed value: #525252), no underline
   ---------------------------------------------------------
   Desktop: 20px / 25px line-height
   Tablet + Mobile (<=991px): inherits 16px/26px pattern —
   not separately confirmed, verify and adjust once live
   --------------------------------------------------------- */
.elementor-281 .elementor-element.elementor-element-ef3c542 .fribin-certifications__text-link {
    display: inline-block;
    margin-top: 10px;
    color: #525252;
    text-decoration: none;
    font-size: 20px;
    line-height: 25px;
    transition: color 0.2s ease;
}
.elementor-281 .elementor-element.elementor-element-ef3c542 .fribin-certifications__text-link:hover {
    color: #b70140;
}
@media (max-width: 991px) {
    .elementor-281 .elementor-element.elementor-element-ef3c542 .fribin-certifications__text-link {
        font-size: 16px;
        line-height: 26px;
    }
}
/* ---------------------------------------------------------
   "Learn more" button — pill shape, red border, red text,
   plus icon on the right (confirmed from original site).
   Fills red with white text/icon on hover.
   --------------------------------------------------------- */
.elementor-281 .elementor-element.elementor-element-ef3c542 .fribin-certifications__learn-more {
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    gap: 40px;
    margin-top: 30px;
    padding: 14px 24px;
    border: 1px solid #b70140;
    border-radius: 50px;
    color: #b70140;
    font-family: "Neue Haas Unica W 1 G - Regular", sans-serif;
    font-size: 18px;
    text-decoration: none;
    transition: background-color 0.2s ease, color 0.2s ease;
}
.elementor-281 .elementor-element.elementor-element-ef3c542 .fribin-certifications__learn-more::after {
    content: "";
    display: inline-block;
    width: 16px;
    height: 16px;
    flex-shrink: 0;
    background-color: #b70140;
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M12 4v16M4 12h16'/%3E%3C/svg%3E");
    mask-repeat: no-repeat;
    mask-position: center;
    mask-size: contain;
    transition: background-color 0.2s ease;
}
.elementor-281 .elementor-element.elementor-element-ef3c542 .fribin-certifications__learn-more:hover {
    background-color: #b70140;
    color: #fff;
}
.elementor-281 .elementor-element.elementor-element-ef3c542 .fribin-certifications__learn-more:hover::after {
    background-color: #fff;
}/* End custom CSS */
/* Start custom CSS for form, class: .elementor-element-d8614c4 *//* =========================================================
   FRIBIN CONTACT SECTION — LEGAL TEXT, FIELD PLACEHOLDERS,
   SUBMIT BUTTON, AND FORM TITLE
   ========================================================= */

/* ---------------------------------------------------------
   LEGAL NOTICE TEXT — the fine-print GDPR/privacy paragraph
   block sitting above the checkboxes. Small, white text
   matching the original site's fine-print sizing.
   --------------------------------------------------------- */
.fribin-legal-notice p {
    color: #ffffff;
    font-size: 10px;
    line-height: 15px;
    font-weight: 400;
    margin-bottom: 0px;
}
.fribin-legal-notice a {
    color: #0066cc;
    font-size: 12px;
    text-decoration: underline;
}

/* ---------------------------------------------------------
   FORM FIELD PLACEHOLDER TEXT — enlarges "Name", "Email",
   "Comments" placeholder text, plus whatever the user
   actually types into these fields, to 21px (confirmed
   working per earlier testing).
   --------------------------------------------------------- */
.elementor-field-textual::placeholder {
    font-size: 21px;
}
.elementor-field-textual {
    font-size: 21px;
}

/* ---------------------------------------------------------
   SUBMIT BUTTON SPACING — pushes the "Send email" button
   down 20px from the checkbox above it. Scoped specifically
   to the form widget (.elementor-widget-form) to avoid
   accidentally affecting any other button wrapper elsewhere
   on the site that might share the .e-form__buttons class.
   --------------------------------------------------------- */
.elementor-widget-form .e-form__buttons {
    margin-top: 20px;
}

/* ---------------------------------------------------------
   "CONTACT US" FORM TITLE — desktop sizing
   ---------------------------------------------------------
   Scoped to .elementor-element-d8614c4 (this specific form
   widget's unique ID, confirmed from the page's raw HTML)
   rather than a bare "p.title" .elementor-281 .elementor-element.elementor-element-d8614c4. A bare .elementor-281 .elementor-element.elementor-element-d8614c4
   would match every <p class="title"> across the entire
   site, since that class name is reused generically in
   other sections (Welcome, Divisions, Certifications, etc.)
   — scoping it here prevents this rule from leaking into
   and overriding those unrelated headings.
   --------------------------------------------------------- */
.elementor-element-d8614c4 p.title {
    color: rgb(255, 255, 255);
    font-family: "Neue Haas Unica";
    font-size: 40px;
    font-weight: 700;
    letter-spacing: -0.86px;
    line-height: 53px;
    margin: 0px 0px 20px;
    box-sizing: border-box;
}

/* ---------------------------------------------------------
   "CONTACT US" FORM TITLE — tablet/mobile sizing
   ---------------------------------------------------------
   Fixed from the original: a @media query is only valid
   CSS when it wraps a .elementor-281 .elementor-element.elementor-element-d8614c4 and its rules inside curly
   braces — { @media (...) { .elementor-281 .elementor-element.elementor-element-d8614c4 { rules } } }. The
   version you pasted was missing all of this structure
   (no braces, no .elementor-281 .elementor-element.elementor-element-d8614c4), so the browser would have
   silently ignored it entirely.
   --------------------------------------------------------- */
@media (max-width: 991px) {
    .elementor-element-d8614c4 p.title {
        font-size: 33px;
        font-weight: 700;
        letter-spacing: -0.58px;
        line-height: 1;
    }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-f03e4ab */@media (max-width: 1024px) {
    .fribin-map-wrapper iframe {
        height: 335px;
    }
}/* End custom CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'Neue Haas Unica';
	font-style: normal;
	font-weight: 700;
	font-display: auto;
	src: url('https://fribins.com/wp-content/uploads/2026/08/NeueHaasUnicaPro-Bold.woff2') format('woff2'),
		url('https://fribins.com/wp-content/uploads/2026/08/NeueHaasUnicaPro-Bold.woff') format('woff');
}
@font-face {
	font-family: 'Neue Haas Unica';
	font-style: normal;
	font-weight: 500;
	font-display: auto;
	src: url('https://fribins.com/wp-content/uploads/2026/08/NeueHaasUnicaPro-Medium.woff2') format('woff2'),
		url('https://fribins.com/wp-content/uploads/2026/08/NeueHaasUnicaPro-Medium.woff') format('woff');
}
@font-face {
	font-family: 'Neue Haas Unica';
	font-style: normal;
	font-weight: 400;
	font-display: auto;
	src: url('https://fribins.com/wp-content/uploads/2026/08/NeueHaasUnicaPro-Regular.woff2') format('woff2'),
		url('https://fribins.com/wp-content/uploads/2026/08/NeueHaasUnicaPro-Regular.woff') format('woff');
}
/* End Custom Fonts CSS */