/* Hero section */
#home{background:linear-gradient(180deg,#1b5cb0 0,var(--navy) 100%);color:#fff}
#home::before{content:"";position:absolute;right:-10%;top:0;bottom:0;width:38%;background:rgba(255,255,255,.06);transform:skewX(-14deg);pointer-events:none}
  .h-wipe{display:block;animation:h-wipe 1s cubic-bezier(.65,0,.25,1) both}
  @keyframes h-wipe{from{clip-path:polygon(0 0,0 0,-14% 100%,0 100%)}to{clip-path:polygon(-2% -10%,118% -10%,104% 110%,-2% 110%)}}
 
  .h-cta,.h-cta2{position:relative;display:inline-flex;align-items:center;justify-content:center;height:52px;padding:0 2.2rem;font-weight:700;font-size:17px;
    clip-path:polygon(16px 0,100% 0,calc(100% - 16px) 100%,0 100%);transition:background .25s,color .25s}
  .h-cta{background:var(--or);color:#fff;overflow:hidden}
  .h-cta:hover{background:var(--navy)}
  .h-cta::after{content:"";position:absolute;top:0;bottom:0;width:30px;left:-50px;background:rgba(255,255,255,.35);transform:skewX(-24deg);transition:left .6s}
  .h-cta:hover::after{left:calc(100% + 20px)}
  .h-cta2{background:var(--navy);color:var(--navy)}
  .h-cta2::before{content:"";position:absolute;inset:2px;background:#fff;clip-path:polygon(15px 0,100% 0,calc(100% - 15px) 100%,0 100%);transition:background .25s}
  .h-cta2 span{position:relative}
  .h-cta2:hover::before{background:#eaf1fb}
 
  /* strengths strip */
  #h-strip{background:var(--navy-d);clip-path:polygon(0 22px,100% 0,100% 100%,0 100%)}
  #h-strip li{position:relative;padding-left:1.35rem}
  #h-strip li::before{content:"";position:absolute;left:0;top:.42em;width:.65rem;height:.75rem;background:var(--or);clip-path:polygon(0 0,60% 0,100% 50%,60% 100%,0 100%,40% 50%)}

  /* hero on brand blue */
  #home .h-cta2{background:#fff;color:#fff}
  #home .h-cta2::before{background:var(--navy)}
  #home .h-cta2:hover::before{background:#1b5cb0}
  #home .px-hero-brochure{color:#fff}
  #home .px-hero-brochure:hover{color:var(--or)}
  @media (prefers-reduced-motion:reduce){.h-wipe{animation:none}}

  /* hero right side */
  #home::after{content:"";position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(rgba(255,255,255,.14) 1.2px,transparent 1.4px);background-size:26px 26px;-webkit-mask-image:linear-gradient(90deg,transparent 30%,#000 100%);mask-image:linear-gradient(90deg,transparent 30%,#000 100%)}
  .h-side{display:grid;gap:1rem;width:100%;max-width:27rem;justify-self:end}
  .h-stat{position:relative;padding:1.35rem 2.2rem 1.35rem 2.1rem;background:rgba(255,255,255,.12);clip-path:polygon(20px 0,100% 0,calc(100% - 20px) 100%,0 100%);animation:h-rise .7s cubic-bezier(.2,.7,.2,1) both;animation-delay:calc(.35s + var(--i)*.15s);transition:background .25s}
  .h-stat:hover{background:rgba(255,255,255,.2)}
  .h-stat::before{content:"";position:absolute;left:0;top:0;bottom:0;width:6px;background:var(--or);transform:skewX(-18deg);transform-origin:top}
  .h-stat b{display:block;font-size:2rem;line-height:1.08;font-style:italic;font-weight:700;color:#fff}
  .h-stat.or b{color:var(--or)}
  .h-stat span{display:block;margin-top:.25rem;font-size:1rem;color:#c9d8f2}
  @media (min-width:1024px){.h-stat:nth-child(2){margin-left:2.5rem}}
  @keyframes h-rise{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}
  @media (prefers-reduced-motion:reduce){.h-stat{animation:none}}

/* full-bleed photo hero */
#home{display:flex;flex-direction:column;min-height:clamp(600px,88vh,780px);background:#06222c}
#home::before,#home::after{display:none}
.hb,.hb-shade{position:absolute;inset:0}
.hb-i{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity 1.1s ease}
.hb-i.on{opacity:1;animation:hb-pan 16s ease-out both}
@keyframes hb-pan{from{transform:scale(1.07)}to{transform:scale(1)}}
.hb-shade{background:linear-gradient(90deg,rgba(5,25,48,.92) 0,rgba(5,25,48,.62) 50%,rgba(5,25,48,.1) 100%),linear-gradient(0deg,rgba(5,25,48,.7),transparent 40%)}
.hw{position:relative;z-index:2;flex:1;display:flex;align-items:center;width:100%;max-width:80rem;margin:0 auto;padding:3rem 1rem 7rem}
@media (min-width:1024px){.hw{padding:3rem 2rem 7.5rem}}
.hd{position:absolute;z-index:3;right:1rem;bottom:6.5rem;display:flex;gap:8px}
@media (min-width:1280px){.hd{right:calc((100% - 80rem)/2 + 2rem)}}
.hd button{width:44px;height:6px;border:0;padding:0;cursor:pointer;background:rgba(255,255,255,.4);transform:skewX(-24deg);transition:background .3s}
.hd button.on{background:var(--or)}
@media (prefers-reduced-motion:reduce){.hb-i.on{animation:none}}
