.elementor-kit-6{--e-global-color-primary:#FBB217;--e-global-color-secondary:#262C36;--e-global-color-text:#262C36;--e-global-color-accent:#FBB217;--e-global-color-signal:#FBB217;--e-global-color-ink:#262C36;--e-global-color-white:#FFFFFF;--e-global-color-softgrey:#F3F4F6;--e-global-color-line:#D9DCE1;--e-global-color-muted:#4F5662;--e-global-color-darkmuted:#AEB4BD;--e-global-color-darkline:#3A414C;--e-global-typography-primary-font-family:"Sora";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Sora";--e-global-typography-secondary-font-weight:600;--e-global-typography-text-font-family:"Hanken Grotesk";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Sora";--e-global-typography-accent-font-weight:600;--e-global-typography-lead-font-family:"Hanken Grotesk";--e-global-typography-lead-font-size:18px;--e-global-typography-lead-font-weight:400;--e-global-typography-lead-line-height:1.6em;--e-global-typography-lead-letter-spacing:0em;--e-global-typography-label-font-family:"Sora";--e-global-typography-label-font-size:12px;--e-global-typography-label-font-weight:600;--e-global-typography-label-text-transform:uppercase;--e-global-typography-label-line-height:1.4em;--e-global-typography-label-letter-spacing:0.1em;--e-global-typography-labelsm-font-family:"Sora";--e-global-typography-labelsm-font-size:11px;--e-global-typography-labelsm-font-weight:600;--e-global-typography-labelsm-text-transform:uppercase;--e-global-typography-labelsm-line-height:1.4em;--e-global-typography-labelsm-letter-spacing:0.1em;--e-global-typography-nav-font-family:"Hanken Grotesk";--e-global-typography-nav-font-size:15px;--e-global-typography-nav-font-weight:500;--e-global-typography-nav-line-height:1em;--e-global-typography-nav-letter-spacing:0em;--e-global-typography-caption-font-family:"Hanken Grotesk";--e-global-typography-caption-font-size:12px;--e-global-typography-caption-font-weight:400;--e-global-typography-caption-line-height:1.5em;--e-global-typography-caption-letter-spacing:0em;--e-global-typography-kicker-font-family:"Hanken Grotesk";--e-global-typography-kicker-font-size:15px;--e-global-typography-kicker-font-weight:600;--e-global-typography-kicker-line-height:1.4em;--e-global-typography-kicker-letter-spacing:0em;--e-global-typography-chip-font-family:"Hanken Grotesk";--e-global-typography-chip-font-size:16px;--e-global-typography-chip-font-weight:500;--e-global-typography-chip-line-height:1.4em;--e-global-typography-chip-letter-spacing:0em;--e-global-typography-btnsm-font-family:"Sora";--e-global-typography-btnsm-font-size:15px;--e-global-typography-btnsm-font-weight:600;--e-global-typography-btnsm-line-height:1em;--e-global-typography-btnsm-letter-spacing:0em;--e-global-typography-h3-font-family:"Sora";--e-global-typography-h3-font-size:20px;--e-global-typography-h3-font-weight:600;--e-global-typography-h3-line-height:1.25em;--e-global-typography-h3-letter-spacing:-0.01em;background-color:var( --e-global-color-white );color:var( --e-global-color-ink );font-family:"Hanken Grotesk", Sans-serif;font-size:17px;font-weight:400;line-height:1.6em;}.elementor-kit-6 button,.elementor-kit-6 input[type="button"],.elementor-kit-6 input[type="submit"],.elementor-kit-6 .elementor-button{background-color:var( --e-global-color-signal );font-family:"Sora", Sans-serif;font-size:16px;font-weight:600;text-transform:none;line-height:1em;letter-spacing:0em;color:var( --e-global-color-ink );border-style:solid;border-width:2px 2px 2px 2px;border-color:var( --e-global-color-signal );border-radius:6px 6px 6px 6px;padding:17px 28px 17px 28px;}.elementor-kit-6 button:hover,.elementor-kit-6 button:focus,.elementor-kit-6 input[type="button"]:hover,.elementor-kit-6 input[type="button"]:focus,.elementor-kit-6 input[type="submit"]:hover,.elementor-kit-6 input[type="submit"]:focus,.elementor-kit-6 .elementor-button:hover,.elementor-kit-6 .elementor-button:focus{background-color:var( --e-global-color-ink );color:var( --e-global-color-white );border-style:solid;border-width:2px 2px 2px 2px;border-color:var( --e-global-color-ink );}.elementor-kit-6 e-page-transition{background-color:#FFBC7D;}.elementor-kit-6 a{color:var( --e-global-color-ink );}.elementor-kit-6 a:hover{color:var( --e-global-color-ink );}.elementor-kit-6 h1{color:var( --e-global-color-ink );font-family:"Sora", Sans-serif;font-size:clamp(32px, 5vw, 56px);font-weight:600;line-height:1.15em;letter-spacing:-0.03em;}.elementor-kit-6 h2{color:var( --e-global-color-ink );font-family:"Sora", Sans-serif;font-size:clamp(24px, 2.8vw, 32px);font-weight:600;line-height:1.15em;letter-spacing:-0.03em;}.elementor-kit-6 h3{color:var( --e-global-color-ink );font-family:"Sora", Sans-serif;font-size:20px;font-weight:600;line-height:1.25em;letter-spacing:-0.01em;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1200px;}.e-con{--container-max-width:1200px;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}.elementor-widget:not(:last-child){--kit-widget-spacing:24px;}.elementor-element{--widgets-spacing:24px 24px;--widgets-spacing-row:24px;--widgets-spacing-column:24px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* Halro site CSS. Globals do the heavy lifting; this covers what Elementor controls cannot. */
h1,h2,h3{text-wrap:balance}
/* Heading marker: add class halro-marker (or halro-marker-ink on Signal) to H2 widgets */
.halro-marker .elementor-heading-title::before,.halro-marker-ink .elementor-heading-title::before{content:"";display:block;width:36px;height:4px;border-radius:2px;background:var(--e-global-color-signal);margin-bottom:18px}
.halro-marker-ink .elementor-heading-title::before{background:var(--e-global-color-ink)}
/* Text link */
.halro-tlink a{color:var(--e-global-color-ink);font-weight:600;text-decoration:underline;text-decoration-color:var(--e-global-color-signal);text-decoration-thickness:2px;text-underline-offset:5px;font-variant-numeric:tabular-nums}
.halro-on-signal .halro-tlink a{text-decoration-color:var(--e-global-color-ink)}
/* Focus ring */
:focus-visible{outline:2px solid var(--e-global-color-ink);outline-offset:3px}
.is-dark :focus-visible{outline-color:var(--e-global-color-signal)}
/* Button variants (primary is the kit default) */
body .elementor-button{display:inline-flex;align-items:center;justify-content:center;transition:none}
body .halro-btn-secondary .elementor-button{background:var(--e-global-color-white);color:var(--e-global-color-ink);border-color:var(--e-global-color-ink)}
body .halro-btn-secondary .elementor-button:hover,body .halro-btn-secondary .elementor-button:focus-visible{background:var(--e-global-color-ink);color:var(--e-global-color-white);border-color:var(--e-global-color-ink)}
body .halro-btn-outline .elementor-button{background:transparent;color:var(--e-global-color-ink);border-color:var(--e-global-color-ink);padding:10px 16px;min-height:44px;font-size:15px}
body .halro-btn-outline .elementor-button:hover,body .halro-btn-outline .elementor-button:focus-visible{background:var(--e-global-color-signal);border-color:var(--e-global-color-signal);color:var(--e-global-color-ink)}
body .halro-btn-outline .elementor-button-icon svg{width:14px;height:14px;fill:currentColor}
body .halro-btn-ink .elementor-button,body .halro-form-ink .elementor-button{background:var(--e-global-color-ink);border-color:var(--e-global-color-ink);color:var(--e-global-color-white)}
body .halro-btn-ink .elementor-button:hover,body .halro-btn-header .elementor-button:hover{background:var(--e-global-color-white);border-color:var(--e-global-color-white);color:var(--e-global-color-ink)}
body .halro-form-ink .elementor-button:hover{background:var(--e-global-color-signal);border-color:var(--e-global-color-signal);color:var(--e-global-color-ink)}
/* Header call line */
.halro-call p{margin:0;white-space:nowrap}
.halro-call span{font-family:Sora,sans-serif;font-weight:600;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--e-global-color-darkmuted);margin-right:6px}
.halro-call a{color:var(--e-global-color-white);font-weight:600;text-decoration:none;font-variant-numeric:tabular-nums}
.halro-call a:hover{text-decoration:underline;text-decoration-color:var(--e-global-color-signal);text-underline-offset:5px}
/* Image placeholders: Line fill at the slot radius, caption carries the photo brief */
.halro-ph{background:var(--e-global-color-line);width:100%}
.halro-ph.r-45{aspect-ratio:4/5}.halro-ph.r-54{aspect-ratio:5/4}.halro-ph.r-43{aspect-ratio:4/3}.halro-ph.r-1610{aspect-ratio:16/10}.halro-ph.r-65{aspect-ratio:6/5}
/* Footer */
.is-dark a{color:var(--e-global-color-white);text-decoration:none}
.is-dark a:hover{text-decoration:underline;text-decoration-color:var(--e-global-color-signal);text-underline-offset:4px}
.halro-ft-list ul{list-style:none;margin:0;padding:0}.halro-ft-list li{margin-bottom:8px}
.halro-ft-list p{margin:0 0 10px}
.halro-accred{width:96px;height:56px;border-radius:4px}
/* Plain content lists */
.halro-list ul{margin:0;padding-left:1.2em}.halro-list li{margin-bottom:6px}.halro-list li::marker{color:var(--e-global-color-muted)}
/* Forms */
.halro-form .elementor-field-group .elementor-field-textual,.halro-form .elementor-field-group .elementor-select-wrapper select{min-height:50px;padding:10px 12px;font-size:16px}
.halro-form .elementor-field-group .elementor-field-textual:focus,.halro-form .elementor-select-wrapper select:focus{border-color:var(--e-global-color-ink);outline:2px solid var(--e-global-color-ink);outline-offset:0}
.halro-form .elementor-field-label{font-family:Sora,sans-serif;font-weight:600;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--e-global-color-ink)}
.halro-form .elementor-message{font-size:15px}
.halro-form .elementor-message-danger::before{content:"Error: ";font-weight:600}
/* Motion: hover transitions only, and only when the visitor allows motion */
@media (prefers-reduced-motion:no-preference){body .elementor-button,.halro-tlink a,.is-dark a,.halro-call a,.elementor-nav-menu a{transition:background-color .15s,color .15s,border-color .15s,text-decoration-color .15s}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
/* Header: nav collapses under 1100px, toggle sits far right */
.halro-nav .elementor-nav-menu--main .halro-mobile-only{display:none}
.halro-nav .elementor-menu-toggle{width:44px;height:44px;padding:0;justify-content:center;align-items:center;border:1px solid var(--e-global-color-darkline)}
@media (max-width:1099px){.halro-hdr-end{margin-left:auto}.halro-nav{order:3}}
@media (min-width:1025px) and (max-width:1099px){.halro-nav .elementor-nav-menu--main{display:none!important}.halro-nav .elementor-menu-toggle{display:flex!important}}
@media (max-width:639px){.halro-hdr-btn{display:none!important}}
.halro-sch strong{color:var(--e-global-color-ink)}
@media (min-width:768px){.halro-form .elementor-field-type-submit{justify-content:flex-start}.halro-form .elementor-field-type-submit .elementor-button{width:auto;flex:0 0 auto}}
.halro-form .elementor-mark-required .elementor-field-label:after{color:var(--e-global-color-ink)}
@media (min-width:768px){body .halro-form .elementor-field-type-submit .elementor-button{flex:0 0 auto!important;width:auto!important}}
@media (min-width:768px) and (max-width:1024px){.halro-ph.r-45,.halro-ph.r-54,.halro-ph.r-65{aspect-ratio:16/10}}
.halro-prose h2{font-size:24px;line-height:1.25;letter-spacing:-0.01em;margin:40px 0 12px}.halro-prose ul{padding-left:1.2em;margin:0 0 16px}.halro-prose li{margin-bottom:6px}
/* Mobile drawer CTA as the primary button */
#pmm-drawer .pmm-item--cta{border:0;padding:24px 20px 8px}
#pmm-drawer .pmm-item--cta a.pmm-link,#pmm-drawer .pmm-item--cta a.pmm-link:link,#pmm-drawer .pmm-item--cta a.pmm-link:visited{display:flex;align-items:center;justify-content:center;min-height:54px;padding:0 28px;background:var(--e-global-color-signal);color:var(--e-global-color-ink);border:2px solid var(--e-global-color-signal);border-radius:6px;font-family:Sora,sans-serif;font-weight:600;font-size:16px;line-height:1;text-decoration:none}
#pmm-drawer .pmm-item--cta a.pmm-link:link:hover,#pmm-drawer .pmm-item--cta a.pmm-link:visited:hover{background:var(--e-global-color-white);border-color:var(--e-global-color-white);color:var(--e-global-color-ink)}
#pmm-drawer :focus-visible{outline:2px solid var(--e-global-color-signal);outline-offset:3px}
/* hover-border-fix: border always matches the fill */
body .elementor-widget-button:not([class*=halro-btn-]) .elementor-button:hover,body .elementor-widget-button:not([class*=halro-btn-]) .elementor-button:focus-visible{border-color:var(--e-global-color-ink)}
/* nav-single-underline: nav uses Elementor's pointer bar only */
.is-dark .elementor-nav-menu a,.is-dark .elementor-nav-menu a:hover,.is-dark .elementor-nav-menu a:focus{text-decoration:none}
/* How it works: scroll fill (JS adds .halro-steps-js; without JS all steps stay filled) */
.halro-steps-js .halro-step-num:not(.is-on){background-color:transparent!important;border-color:var(--e-global-color-white)!important}
.halro-steps-js .halro-step-num:not(.is-on) .elementor-heading-title{color:var(--e-global-color-white)!important}
.halro-steps-js .halro-step-line.is-on{background-color:var(--e-global-color-signal)!important}
@media (prefers-reduced-motion:no-preference){.halro-steps-js .halro-step-num,.halro-steps-js .halro-step-num .elementor-heading-title,.halro-steps-js .halro-step-line{transition:background-color .4s ease,border-color .4s ease,color .4s ease}}
.halro-sectors .elementor-icon-list-item{min-height:44px}
/* Image slots: fixed ratio, cover crop. Swap the image in Elementor; the ratio stays. */
.halro-img img{display:block;width:100%;height:auto;object-fit:cover}
.halro-img.r-45 img{aspect-ratio:4/5}.halro-img.r-54 img{aspect-ratio:5/4}.halro-img.r-65 img{aspect-ratio:6/5}.halro-img.r-43 img{aspect-ratio:4/3}.halro-img.r-1610 img{aspect-ratio:16/10}
@media (min-width:768px) and (max-width:1024px){.halro-img.r-45 img,.halro-img.r-54 img,.halro-img.r-65 img{aspect-ratio:16/10}}
/* Small primary button (service cards): kit yellow, compact size */
body .halro-btn-small .elementor-button{padding:10px 16px;min-height:44px;font-size:15px}
body .halro-btn-small .elementor-button:hover,body .halro-btn-small .elementor-button:focus-visible{border-color:var(--e-global-color-ink)}
body .halro-btn-small .elementor-button-icon svg{width:14px;height:14px;fill:currentColor}
/* mobile-img-ratio: tall portrait slots go landscape on phones */
@media (max-width:767px){.halro-img.r-45 img,.halro-img.r-54 img,.halro-img.r-65 img{aspect-ratio:4/3}}
/* FAQ: hairline list, rounded icon tile */
.halro-faq .elementor-accordion-item{border:0!important;border-bottom:1px solid var(--e-global-color-line)!important}
.halro-faq .elementor-accordion-item:first-child{border-top:1px solid var(--e-global-color-line)!important}
.halro-faq .elementor-tab-title{display:flex;align-items:center;gap:20px;cursor:pointer}
.halro-faq .elementor-tab-title a{flex:1;text-decoration:none;color:inherit}
.halro-faq .elementor-accordion-icon{order:2;float:none!important;flex:none;width:36px;height:36px;border-radius:6px;background:var(--e-global-color-white);display:inline-flex!important;align-items:center;justify-content:center}
.halro-faq .elementor-accordion-icon svg{width:12px;height:12px;fill:var(--e-global-color-ink)}
.halro-faq .elementor-tab-title.elementor-active .elementor-accordion-icon,.halro-faq .elementor-tab-title:hover .elementor-accordion-icon{background:var(--e-global-color-signal)}
.halro-faq .elementor-tab-content{border:0!important}
.halro-faq .elementor-tab-content p{max-width:60ch}
.halro-faq .elementor-tab-content a{color:var(--e-global-color-ink);font-weight:600;text-decoration:underline;text-decoration-color:var(--e-global-color-signal);text-decoration-thickness:2px;text-underline-offset:5px}
@media (prefers-reduced-motion:no-preference){.halro-faq .elementor-accordion-icon{transition:background-color .15s}}
/* header-logo-collapse: wordmark folds into the H monogram once the sticky header kicks in */
.halro-logo{display:block;width:150px;line-height:0}
.halro-logo-svg{display:block;width:100%;height:auto;overflow:visible}
.halro-logo-svg g{transform-box:fill-box;transform-origin:0 50%}
.elementor-sticky--effects .hl-tag,.elementor-sticky--effects .hl-rr{opacity:0;transform:translateY(-8px)}
.elementor-sticky--effects .hl-a,.elementor-sticky--effects .hl-l,.elementor-sticky--effects .hl-r,.elementor-sticky--effects .hl-o{opacity:0;transform:translateX(-28px) scaleX(.4)}
.elementor-sticky--effects .hl-rl{transform:translateY(-16px)}
@media (prefers-reduced-motion:no-preference){
.halro-logo-svg g{transition:opacity .3s ease,transform .45s cubic-bezier(.4,0,.2,1)}
.hl-a{transition-delay:.12s!important}.hl-l{transition-delay:.08s!important}.hl-r{transition-delay:.04s!important}
.elementor-sticky--effects .hl-o{transition-delay:0s!important}.elementor-sticky--effects .hl-r{transition-delay:.05s!important}.elementor-sticky--effects .hl-l{transition-delay:.1s!important}.elementor-sticky--effects .hl-a{transition-delay:.15s!important}.elementor-sticky--effects .hl-rl{transition-delay:.15s!important}
}
@media (max-width:1099px){.halro-logo{width:140px}}
[data-elementor-type=header] .e-con.elementor-sticky--effects{--min-height:64px!important}
@media (prefers-reduced-motion:no-preference){[data-elementor-type=header] > .e-con{transition:min-height .35s cubic-bezier(.4,0,.2,1)}}/* End custom CSS */