
/* v5.5.0 visual refinement: flagship hero stage + premium image handling */
.hero-grid-v5{align-items:start}
.hero-structure{padding:88px 20px 152px;min-height:660px;background:linear-gradient(180deg,rgba(10,34,61,.78),rgba(2,11,23,.92));}
.hero-structure-head{position:absolute;z-index:6;left:22px;right:22px;top:18px;display:flex;align-items:flex-start;justify-content:space-between;gap:14px;pointer-events:none}
.hero-structure-kicker,.hero-structure-count{display:grid;gap:4px;padding:14px 16px;border:1px solid rgba(237,207,149,.22);background:linear-gradient(180deg,rgba(3,14,29,.86),rgba(7,24,43,.72));backdrop-filter:blur(12px);box-shadow:0 12px 28px rgba(0,0,0,.18)}
.hero-structure-kicker span,.hero-structure-count small{font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-300);opacity:.92}
.hero-structure-kicker strong,.hero-structure-count strong{font-family:var(--serif);font-weight:600;font-size:18px;line-height:1;color:var(--cream-100)}
.hero-structure-count{justify-items:end;min-width:92px}
.hero-structure-count strong{font-size:30px;color:var(--gold-300)}
.hero-sector-backdrop{opacity:.24;filter:saturate(.84) contrast(1.04) brightness(.78);transform:scale(1.03)}
.structure-mark{inset:19% 22%;opacity:.075}
.structure-pillars{left:7%;right:7%;top:110px;bottom:160px;gap:12px;align-items:flex-end}
.structure-pillar{width:18.4%;min-height:250px;background:linear-gradient(180deg,rgba(194,158,106,.10),rgba(194,158,106,.16));border-color:rgba(237,207,149,.35);box-shadow:0 16px 28px rgba(0,0,0,.18),inset 0 0 0 1px rgba(255,255,255,.015)}
.structure-pillar img{opacity:.16;filter:saturate(.9) contrast(1.05) brightness(.9)}
.structure-pillar::after{background:linear-gradient(180deg,rgba(2,11,23,.04),rgba(2,11,23,.18) 48%,rgba(2,11,23,.90) 100%)}
.structure-pillar .pillar-no{top:12px;left:12px;padding:7px 8px;border:1px solid rgba(237,207,149,.26);background:rgba(2,11,23,.52);backdrop-filter:blur(8px);font-size:11px;line-height:1}
.structure-pillar .pillar-label{left:10px;right:10px;bottom:10px;display:block;max-height:none;padding:12px 12px 13px;border:1px solid rgba(237,207,149,.18);background:linear-gradient(180deg,rgba(3,14,29,.14),rgba(3,14,29,.58));backdrop-filter:blur(10px);writing-mode:horizontal-tb;transform:none;font-size:12px;line-height:1.28;text-transform:none;letter-spacing:.02em;color:var(--cream-100)}
.structure-pillar .pillar-label strong{font-weight:600}
.structure-pillar:hover,.structure-pillar:focus-visible,.structure-pillar.is-active{width:21%;transform:translateY(-8px);background:rgba(194,158,106,.20);border-color:var(--gold-300);box-shadow:0 22px 48px rgba(0,0,0,.28),inset 0 0 0 1px rgba(237,207,149,.10)}
.structure-pillar:hover img,.structure-pillar:focus-visible img,.structure-pillar.is-active img{opacity:.48;transform:scale(1.04)}
.structure-pillar.is-active .pillar-label,.structure-pillar:hover .pillar-label,.structure-pillar:focus-visible .pillar-label{border-color:rgba(237,207,149,.32);background:linear-gradient(180deg,rgba(3,14,29,.18),rgba(3,14,29,.72))}
.structure-baseline{left:10%;right:10%;bottom:118px}
.hero-sector-preview{left:22px;right:22px;bottom:18px;grid-template-columns:60px minmax(0,1fr) auto;gap:16px;padding:18px 18px 18px 20px;border-color:rgba(194,158,106,.34);background:linear-gradient(90deg,rgba(2,11,23,.96),rgba(8,28,52,.90))}
.hero-sector-no{display:grid;place-items:center;width:60px;min-height:60px;border:1px solid rgba(237,207,149,.22);background:linear-gradient(180deg,rgba(194,158,106,.08),rgba(194,158,106,.18));font-size:28px;line-height:1;color:var(--gold-300)}
.hero-sector-copy strong{display:block;margin-bottom:4px;font-size:clamp(18px,1.5vw,24px);line-height:1.05}
.hero-sector-copy p{margin:0;color:rgba(245,239,230,.82);font-size:13px;line-height:1.52;max-width:46ch}
.hero-sector-link{align-self:center;justify-self:end;white-space:nowrap}
.hero-copy .hero-lead{max-width:58ch}
.capability-media,.service-hero-media,.about-photo-frame{overflow:hidden}
.capability-media img,.service-hero-media img,.about-photo-frame img,.capability-mobile-image,.evidence-card img,.crossnav-card img{object-fit:cover;object-position:center center}
@media(max-width:1180px){
  .hero-structure{min-height:620px;padding-top:82px}
  .hero-structure-head{left:18px;right:18px}
  .structure-pillars{top:102px;bottom:152px;gap:10px}
  .structure-pillar{min-height:224px}
  .structure-pillar .pillar-label{font-size:11px;padding:10px 10px 11px}
}
@media(max-width:991px){
  .hero-structure{padding:74px 16px 138px;min-height:560px}
  .hero-structure-head{top:14px;left:16px;right:16px}
  .hero-structure-kicker strong{font-size:16px}
  .hero-structure-count strong{font-size:26px}
  .structure-pillars{top:92px;bottom:144px;left:5.5%;right:5.5%;gap:8px}
  .structure-pillar{min-height:188px;width:18.8%}
  .structure-pillar:hover,.structure-pillar:focus-visible,.structure-pillar.is-active{width:20.6%;transform:translateY(-5px)}
  .structure-pillar .pillar-label{font-size:10px;line-height:1.24;bottom:8px;left:8px;right:8px;padding:9px}
  .structure-pillar .pillar-no{top:9px;left:9px;font-size:10px;padding:6px 7px}
  .hero-sector-preview{grid-template-columns:46px minmax(0,1fr);gap:12px;padding:14px 14px 15px 16px}
  .hero-sector-no{width:46px;min-height:46px;font-size:22px}
  .hero-sector-link{display:none}
  .hero-sector-copy strong{font-size:17px}
  .hero-sector-copy p{font-size:11px;max-width:none}
}
@media(max-width:640px){
  .hero-structure{min-height:500px;padding-top:70px;padding-bottom:130px}
  .hero-structure-head{gap:10px}
  .hero-structure-kicker,.hero-structure-count{padding:10px 12px}
  .hero-structure-kicker strong{font-size:14px}
  .hero-structure-count strong{font-size:22px}
  .structure-mark{inset:22% 20%;opacity:.06}
  .structure-pillars{top:88px;bottom:132px;gap:6px}
  .structure-pillar{min-height:154px}
  .structure-pillar .pillar-label{display:none}
  .structure-baseline{bottom:102px}
}
