/* FEA Hero Banner - base styles. Colours, fonts and sizes come from the widget controls. */
.fea-hb{position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:center;box-sizing:border-box;min-height:100vh;padding:130px 32px 56px;background-color:#0A0A0A;color:#fff;--fea-bgx:62%;--fea-bgy:60%;--fea-ov1:rgba(10,10,10,.92);--fea-ov2:rgba(10,10,10,.10);--fea-ova:90deg;--fea-line:rgba(255,255,255,.12)}
.fea-hb *,.fea-hb *:before,.fea-hb *:after{box-sizing:border-box}
.fea-hb--bleed{width:100vw;max-width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw)}
body:has(.fea-hb--bleed){overflow-x:clip}

/* background image */
.fea-hb__bg{position:absolute;inset:0;z-index:0}
.fea-hb__bg picture{position:absolute;inset:0;display:block}
.fea-hb__bg img{position:absolute!important;inset:0!important;display:block!important;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;object-fit:cover!important;object-position:var(--fea-bgx) var(--fea-bgy);border:0!important;border-radius:0!important;box-shadow:none!important;margin:0!important}
.fea-hb--overlay .fea-hb__bg:after,.fea-hb--overlay:not(:has(.fea-hb__bg)):before{content:"";position:absolute;inset:0;z-index:0;background:linear-gradient(var(--fea-ova),var(--fea-ov1) 0%,var(--fea-ov1) 20%,var(--fea-ov2) 100%)}
.fea-hb--fade .fea-hb__bg:before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(0deg,rgba(10,10,10,.95) 0%,rgba(10,10,10,0) 38%)}

/* content */
.fea-hb__inner{position:relative;z-index:2;width:100%;max-width:1240px;margin:0 auto;display:flex;flex-direction:column;gap:72px}
.fea-hb__text{max-width:760px}
.fea-hb__chip{display:inline-flex;align-items:center;gap:10px;padding:8px 16px 8px 12px;border:1px solid rgba(255,255,255,.14);border-radius:999px;line-height:1;margin-bottom:28px}
.fea-hb__chip i{flex:none;width:8px;height:8px;border-radius:50%;box-shadow:0 0 0 4px rgba(61,111,212,.22)}
.fea-hb__title{margin:0 0 22px;padding:0}
.fea-hb__title{text-transform:uppercase}
.fea-hb__main{display:inline}
/* ASIA: smaller, raised like the logo (superscript-like, aligned to the cap height) */
.fea-hb__accent{display:inline-block;position:relative;top:.12em;vertical-align:top;margin-left:-.08em;font-family:inherit;font-size:60%;font-weight:500;font-style:italic;line-height:1;letter-spacing:.02em;white-space:nowrap}
.fea-hb__baseline{margin:0 0 8px}
.fea-hb__tagline{margin:0 0 26px}
.fea-hb__intro{margin:0 0 36px}
.fea-hb__btns{display:flex;flex-wrap:wrap;gap:12px;justify-content:var(--fea-jc,flex-start)}
.fea-hb__btn{display:inline-flex;align-items:center;gap:10px;border:1px solid transparent;text-decoration:none!important;cursor:pointer;transition:background-color .2s,color .2s,border-color .2s}
.fea-hb__arrow{display:inline-block;transition:transform .2s}
.fea-hb__btn:hover .fea-hb__arrow{transform:translateX(3px)}

/* stats band below the hero (light background) */
.fea-hb-band{box-sizing:border-box;background-color:#F3F2EE;padding:56px 32px;--fea-line:#E3E1DA}
.fea-hb-band *,.fea-hb-band *:before,.fea-hb-band *:after{box-sizing:border-box}
.fea-hb-band--bleed{width:100vw;max-width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw)}
.fea-hb-band__in{max-width:1240px;margin:0 auto}
.fea-hb-band .fea-hb__stats{-webkit-backdrop-filter:none!important;backdrop-filter:none!important;background-color:transparent}
.fea-hb-band .fea-hb__num{color:#0A0A0A}
.fea-hb-band .fea-hb__num sup{color:#163E82}
.fea-hb-band .fea-hb__label{color:#4B4A45}

/* stats: dividers work for any number of columns */
.fea-hb__stats{border:1px solid var(--fea-line);border-radius:22px;overflow:hidden}
.fea-hb--blur .fea-hb__stats{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}
.fea-hb__grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));margin:-1px 0 0 -1px}
.fea-hb__stat{display:flex;flex-direction:column;gap:10px;padding:24px 22px 22px 28px;border-left:1px solid var(--fea-line);border-top:1px solid var(--fea-line)}
.fea-hb__num{display:block;line-height:1}
.fea-hb__num sup{font-size:.55em;margin-left:2px;top:-.7em}
.fea-hb__label{display:block}

@media (max-width:1024px){
 .fea-hb-band{padding:48px 24px}
 .fea-hb{min-height:0;padding:120px 24px 48px;--fea-ova:180deg}
 .fea-hb__grid{grid-template-columns:repeat(3,minmax(0,1fr))}
 .fea-hb__stat:last-child:nth-child(3n+2){grid-column:span 2}
 .fea-hb__stat:last-child:nth-child(3n+1){grid-column:1/-1}
}
@media (max-width:767px){
 .fea-hb-band{padding:36px 20px}
 .fea-hb{padding:100px 20px 40px;min-height:100vh;min-height:100svh;--fea-bgx:50%;--fea-bgy:50%;--fea-ov1:rgba(10,10,10,.25);--fea-ov2:rgba(10,10,10,.20);--fea-ova:180deg}
 .fea-hb--fade .fea-hb__bg:before{background:linear-gradient(0deg,rgba(10,10,10,var(--fea-mfo,.5)) 0%,rgba(10,10,10,0) var(--fea-mfh,40%))}
 .fea-hb__intro,.fea-hb__intro p{text-shadow:0 1px 2px rgba(10,10,10,.85),0 0 10px rgba(10,10,10,.8),0 0 22px rgba(10,10,10,.6)}
 .fea-hb__title,.fea-hb__sub,.fea-hb__tagline,.fea-hb__text,.fea-hb__chip{text-shadow:0 1px 2px rgba(10,10,10,.7),0 0 16px rgba(10,10,10,.65)}
 .fea-hb__inner{gap:44px}
 .fea-hb__stats{border-radius:18px}
 .fea-hb__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .fea-hb__stat{padding:18px 14px 18px 18px}
 .fea-hb__stat:last-child:nth-child(3n+2),.fea-hb__stat:last-child:nth-child(3n+1){grid-column:auto}
 .fea-hb__stat:last-child:nth-child(odd){grid-column:1/-1}
}
@media (prefers-reduced-motion:reduce){.fea-hb__btn,.fea-hb__arrow{transition:none}}

/* Wireframe review v1.1 (client): target sizes, readable tagline, darker area under the text on mobile.
   These win over sizes saved earlier in Elementor. */
.fea-hb .fea-hb__tagline{color:#FFFFFF!important}
.fea-hb .fea-hb__title{line-height:1!important}
@media (min-width:1025px){
 .fea-hb .fea-hb__title{font-size:clamp(44px,5.2vw,76px)!important}
 .fea-hb .fea-hb__baseline{font-size:20px!important}
 .fea-hb .fea-hb__tagline{font-size:22px!important}
 .fea-hb .fea-hb__intro{font-size:17px!important;line-height:1.65!important}
 .fea-hb{padding-top:150px!important}
}
@media (max-width:1024px){ .fea-hb{padding-top:136px!important} }
@media (max-width:767px){
 .fea-hb{padding-top:116px!important}
 .fea-hb--overlay .fea-hb__bg:after{background:linear-gradient(180deg,rgba(10,10,10,.30) 0%,rgba(10,10,10,.60) 20%,rgba(10,10,10,.66) 72%,rgba(10,10,10,.45) 100%)!important}
}
/* key figures: lining numerals (the serif shows old-style numerals by default) */
.fea-hb__num{font-variant-numeric:lining-nums;font-feature-settings:"lnum" 1}

/* Round 3: same "20+" as Track Record (plus on the baseline, same colour as the figure) */
.fea-hb__num sup{font-size:inherit!important;vertical-align:baseline!important;position:static!important;top:auto!important;margin-left:0!important;color:inherit!important;line-height:inherit}
/* v2.8.1 lining numerals in every browser */
.fea-hb__num,.fea-hb__num sup{font-family:"FEA Figures","Playfair Display",serif!important;font-variant-numeric:lining-nums;font-feature-settings:"lnum" 1}
