.bge-hub .section {
padding-top: 80px;
padding-bottom: 80px;
}
.bge-hub .bge-hub-discipline-section {
background-color: var(--section-light, #f9f9fb);
}
@media (min-width: 993px) {
.bge-hub-hero h1.section-heading {
font-size: 3rem;
}
}
.bge-hub .stats-container.bge-hub-hero-stats {
display: flex;
flex-wrap: wrap;
gap: 12px;
padding-left: 0;
padding-right: 0;
margin: 26px 0 6px;
}
.bge-hub .bge-hub-hero-stat {
background: var(--bge-mandarin-100, #FFEEE6);
border-radius: 12px;
padding: 14px 20px;
display: inline-flex;
align-items: center;
gap: 16px;
min-width: 0;
flex: 0 0 auto;
}
.bge-hub .bge-hub-hero-stat .stat-figure {
margin: 0;
font-size: clamp(1.6rem, 2.2vw, 2.1rem);
color: var(--bge-mandarin-500, #ff5500);
line-height: 1;
white-space: nowrap;
}
.bge-hub .bge-hub-hero-stat .stat-description {
margin: 0;
color: var(--bge-steel-blue-700, #1e3a44);
font-size: 14px;
font-weight: 500;
}
.bge-hub-discipline-grid {
grid-template-columns: repeat(3, 1fr);
gap: 22px;
}
.bge-hub-discipline-card {
position: relative;
list-style: none;
}
.bge-hub-discipline-link {
position: relative;
display: block;
aspect-ratio: 4 / 3;
overflow: hidden;
border-radius: 14px;
background: var(--bge-steel-blue-700, #1e3a44);
text-decoration: none;
color: #fff;
isolation: isolate;
transition: box-shadow 0.4s cubic-bezier(.22, 1, .36, 1), transform 0.4s cubic-bezier(.22, 1, .36, 1);
}
.bge-hub-discipline-link:hover {
transform: translateY(-3px);
box-shadow: 0 18px 40px -18px rgba(15, 33, 40, 0.55);
}
.bge-hub-discipline-image {
position: absolute;
inset: 0;
width: 100%;
height: 100%;
object-fit: cover;
transition: transform 0.7s cubic-bezier(.22, 1, .36, 1);
z-index: 1;
}
.bge-hub-discipline-link:hover .bge-hub-discipline-image,
.bge-hub-discipline-link:focus-visible .bge-hub-discipline-image {
transform: scale(1.05);
}
.bge-hub-discipline-overlay {
position: absolute;
inset: 0;
z-index: 2;
display: flex;
flex-direction: column;
justify-content: flex-end;
padding: 20px;
background: linear-gradient(180deg,
rgba(30, 58, 68, 0) 35%,
rgba(30, 58, 68, 0.5) 68%,
rgba(30, 58, 68, 0.9) 100%);
transition: background 0.45s cubic-bezier(.6, .6, 0, 1);
}
.bge-hub-discipline-link:hover .bge-hub-discipline-overlay,
.bge-hub-discipline-link:focus-visible .bge-hub-discipline-overlay {
background: linear-gradient(180deg,
rgba(30, 58, 68, 0.35) 0%,
rgba(30, 58, 68, 0.78) 55%,
rgba(30, 58, 68, 0.95) 100%);
}
.bge-hub-discipline-meta {
display: flex;
align-items: center;
justify-content: space-between;
gap: 12px;
}
.bge-hub-discipline-title {
margin: 0;
font-family: Inter, system-ui, sans-serif;
font-size: clamp(1rem, 1.15vw, 1.2rem);
font-weight: 600;
line-height: 1.25;
color: #fff;
text-shadow: 0 1px 3px rgba(0, 0, 0, 0.4);
}
.bge-hub-discipline-arrow {
width: 34px;
height: 34px;
background: rgba(255, 255, 255, 0.16);
backdrop-filter: blur(6px);
border: 1px solid rgba(255, 255, 255, 0.28);
border-radius: 999px;
display: inline-flex;
align-items: center;
justify-content: center;
color: #fff;
transition: transform 0.55s cubic-bezier(.34, 1.56, .64, 1),
background 0.55s cubic-bezier(.4, 0, .2, 1),
border-color 0.55s ease,
box-shadow 0.55s ease;
flex-shrink: 0;
}
.bge-hub-discipline-link:hover .bge-hub-discipline-arrow,
.bge-hub-discipline-link:focus-visible .bge-hub-discipline-arrow {
background: var(--bge-mandarin-500, #ff5500);
transform: translateX(4px) scale(1.08);
border-color: transparent;
box-shadow: 0 8px 18px -6px rgba(255, 85, 0, 0.55);
}
.bge-hub-discipline-reveal {
display: grid;
grid-template-rows: 0fr;
opacity: 0;
transition: grid-template-rows 0.5s cubic-bezier(.6, .6, 0, 1),
opacity 0.35s ease 0.05s;
}
.bge-hub-discipline-link:hover .bge-hub-discipline-reveal,
.bge-hub-discipline-link:focus-visible .bge-hub-discipline-reveal {
grid-template-rows: 1fr;
opacity: 1;
}
.bge-hub-discipline-body {
overflow: hidden;
min-height: 0;
margin: 4px 0 0;
color: rgba(255, 255, 255, 0.94);
font-family: Inter, sans-serif;
font-size: 14px;
line-height: 1.55;
text-shadow: 0 1px 2px rgba(0, 0, 0, 0.35);
}
@media (max-width: 1100px) {
.bge-hub-discipline-grid { grid-template-columns: repeat(2, 1fr); gap: 18px; }
}
@media (hover: none), (max-width: 760px) {
.bge-hub-discipline-reveal {
grid-template-rows: 1fr;
opacity: 1;
}
.bge-hub-discipline-overlay {
background: linear-gradient(180deg,
rgba(30, 58, 68, 0) 25%,
rgba(30, 58, 68, 0.6) 58%,
rgba(30, 58, 68, 0.93) 100%);
}
.bge-hub-discipline-body {
display: -webkit-box;
-webkit-line-clamp: 3;
-webkit-box-orient: vertical;
}
}
@media (max-width: 760px) {
.bge-hub-discipline-grid { grid-template-columns: 1fr; gap: 16px; }
.bge-hub-discipline-link { aspect-ratio: 16 / 10; }
}
@media (prefers-reduced-motion: reduce) {
.bge-hub-discipline-link,
.bge-hub-discipline-image,
.bge-hub-discipline-overlay,
.bge-hub-discipline-arrow,
.bge-hub-discipline-reveal {
transition: none;
}
.bge-hub-discipline-link:hover {
transform: none;
}
.bge-hub-discipline-link:hover .bge-hub-discipline-image,
.bge-hub-discipline-link:focus-visible .bge-hub-discipline-image {
transform: none;
}
}
.bge-hub-magazine-grid {
display: grid;
grid-template-columns: 1.45fr 1fr;
gap: 24px;
align-items: stretch;
}
.bge-hub-magazine-hero {
position: relative;
display: block;
overflow: hidden;
border-radius: 16px;
background: var(--bge-steel-blue-700, #1e3a44);
aspect-ratio: 4 / 5;
text-decoration: none;
isolation: isolate;
}
.bge-hub-magazine-hero-img {
position: absolute;
inset: 0;
width: 100%;
height: 100%;
object-fit: cover;
z-index: 1;
transition: transform 0.6s cubic-bezier(.22, 1, .36, 1);
}
.bge-hub-magazine-hero:hover .bge-hub-magazine-hero-img {
transform: scale(1.04);
}
.bge-hub-magazine-hero-shade {
position: absolute;
inset: 0;
z-index: 2;
background: linear-gradient(180deg, rgba(0, 0, 0, 0) 35%, rgba(0, 0, 0, 0.55) 75%, rgba(0, 0, 0, 0.85) 100%);
}
.bge-hub-magazine-hero-meta {
position: absolute;
left: 32px;
right: 32px;
bottom: 32px;
z-index: 3;
color: #fff;
display: flex;
flex-direction: column;
gap: 12px;
}
.bge-hub-magazine-award {
display: inline-flex;
align-items: center;
gap: 6px;
background: var(--bge-mandarin-500, #ff5500);
color: #fff;
padding: 6px 12px;
border-radius: 999px;
font-family: Inter, sans-serif;
font-size: 12px;
font-weight: 600;
letter-spacing: 0.04em;
align-self: flex-start;
box-shadow: 0 8px 20px -6px rgba(255, 85, 0, 0.55);
}
.bge-hub-magazine-tag {
display: inline-flex;
align-items: center;
background: rgba(255, 255, 255, 0.18);
backdrop-filter: blur(6px);
color: #fff;
padding: 4px 12px;
border-radius: 999px;
font-size: 11px;
font-weight: 600;
letter-spacing: 0.06em;
text-transform: uppercase;
align-self: flex-start;
border: 1px solid rgba(255, 255, 255, 0.25);
}
.bge-hub-magazine-hero-title {
margin: 0;
font-family: "DM Serif Display", serif;
font-size: clamp(1.6rem, 3vw, 2.5rem);
font-weight: 400;
line-height: 1.1;
color: #fff;
text-shadow: 0 1px 4px rgba(0, 0, 0, 0.35);
text-wrap: balance;
}
.bge-hub-magazine-hero-line {
display: flex;
flex-wrap: wrap;
align-items: center;
gap: 8px;
color: rgba(255, 255, 255, 0.9);
font-family: Inter, sans-serif;
font-size: 14px;
font-weight: 500;
}
.bge-hub-magazine-dot {
opacity: 0.5;
}
.bge-hub-magazine-satellites {
display: flex;
flex-direction: column;
gap: 16px;
}
.bge-hub-magazine-sat {
display: grid;
grid-template-columns: 140px 1fr;
gap: 16px;
align-items: center;
text-decoration: none;
color: inherit;
background: #fff;
border: 1px solid var(--gray-3, #d1d5db);
border-radius: 12px;
padding: 12px;
transition: border-color 0.2s ease-in-out, transform 0.22s cubic-bezier(.22, 1, .36, 1), box-shadow 0.2s ease-in-out;
}
.bge-hub-magazine-sat:hover {
border-color: var(--bge-steel-blue-500, #427a94);
transform: translateY(-2px);
box-shadow: 0 18px 40px -20px rgba(30, 58, 68, 0.15);
}
.bge-hub-magazine-sat-img-wrap {
position: relative;
width: 140px;
aspect-ratio: 4 / 3;
overflow: hidden;
border-radius: 8px;
background: var(--gray-3, #d1d5db);
}
.bge-hub-magazine-sat-img {
width: 100%;
height: 100%;
object-fit: cover;
transition: transform 0.4s cubic-bezier(.22, 1, .36, 1);
}
.bge-hub-magazine-sat:hover .bge-hub-magazine-sat-img {
transform: scale(1.06);
}
.bge-hub-magazine-sat-award {
position: absolute;
top: 6px;
right: 6px;
width: 22px;
height: 22px;
border-radius: 999px;
background: var(--bge-mandarin-500, #ff5500);
color: #fff;
display: inline-flex;
align-items: center;
justify-content: center;
box-shadow: 0 4px 10px -3px rgba(255, 85, 0, 0.6);
}
.bge-hub-magazine-sat-body { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.bge-hub-magazine-sat-sector {
font-family: Inter, sans-serif;
font-size: 11px;
font-weight: 600;
letter-spacing: 0.06em;
text-transform: uppercase;
color: var(--bge-steel-blue-500, #427a94);
}
.bge-hub-magazine-sat-title {
margin: 0;
font-family: Inter, sans-serif;
font-size: 1rem;
font-weight: 600;
color: var(--bge-steel-blue-700, #1e3a44);
line-height: 1.25;
text-wrap: balance;
}
.bge-hub-magazine-sat-meta {
margin: 0;
font-size: 13px;
color: var(--gray-4, #9ca3af);
}
@media (max-width: 900px) {
.bge-hub-magazine-grid { grid-template-columns: 1fr; }
.bge-hub-magazine-hero { aspect-ratio: 3 / 4; }
.bge-hub-magazine-hero-meta { left: 20px; right: 20px; bottom: 20px; }
}
@media (max-width: 540px) {
.bge-hub-magazine-sat { grid-template-columns: 1fr; padding: 0; border: 0; }
.bge-hub-magazine-sat-img-wrap { width: 100%; aspect-ratio: 16 / 9; }
.bge-hub-magazine-sat-body { padding: 12px 4px 4px; }
}
.bge-hub-sector-bucket + .bge-hub-sector-bucket {
margin-top: 48px;
}
.bge-hub-sector-bucket-title {
font-family: Inter, sans-serif;
font-size: 12px;
font-weight: 600;
letter-spacing: 0.12em;
text-transform: uppercase;
color: var(--bge-steel-blue-400, #64808a);
margin: 0 0 20px;
padding-bottom: 12px;
border-bottom: 1px solid var(--gray-3, #d1d5db);
}
.bge-hub-sector-card-grid {
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 16px;
}
@media (max-width: 900px) {
.bge-hub-sector-card-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 540px) {
.bge-hub-sector-card-grid { grid-template-columns: repeat(2, 1fr); gap: 12px; }
}
.bge-hub-sector-card {
position: relative;
display: flex;
flex-direction: column;
justify-content: flex-end;
aspect-ratio: 4 / 5;
overflow: hidden;
border-radius: 10px;
text-decoration: none;
color: #fff;
background: var(--bge-steel-blue-700, #1e3a44);
isolation: isolate;
}
.bge-hub-sector-card-img {
position: absolute;
inset: 0;
width: 100%;
height: 100%;
object-fit: cover;
z-index: 1;
transition: transform 0.5s cubic-bezier(.22, 1, .36, 1);
}
.bge-hub-sector-card-img--empty {
background: linear-gradient(135deg, var(--bge-steel-blue-600, #2f5b6d) 0%, var(--bge-steel-blue-700, #1e3a44) 100%);
}
.bge-hub-sector-card:hover .bge-hub-sector-card-img {
transform: scale(1.08);
}
.bge-hub-sector-card-shade {
position: absolute;
inset: 0;
z-index: 2;
background: linear-gradient(180deg, rgba(0, 0, 0, 0) 35%, rgba(0, 0, 0, 0.7) 100%);
transition: background 0.3s ease-in-out;
}
.bge-hub-sector-card:hover .bge-hub-sector-card-shade {
background: linear-gradient(180deg, rgba(0, 0, 0, 0.15) 0%, rgba(0, 0, 0, 0.8) 100%);
}
.bge-hub-sector-card-body {
position: relative;
z-index: 3;
padding: 0 14px 14px;
display: flex;
flex-direction: column;
gap: 2px;
}
.bge-hub-sector-card-name {
margin: 0;
font-family: Inter, sans-serif;
font-size: 1rem;
font-weight: 600;
color: #fff;
line-height: 1.25;
text-shadow: 0 1px 3px rgba(0, 0, 0, 0.4);
}
.bge-hub-sector-card-count {
font-family: Inter, sans-serif;
font-size: 11px;
font-weight: 500;
letter-spacing: 0.04em;
text-transform: uppercase;
color: rgba(255, 255, 255, 0.78);
}
@media (min-width: 900px) and (hover: hover) {
.bge-hub-sector-card-grid {
display: flex;
gap: 10px;
height: 300px;
}
.bge-hub-sector-card-grid + .bge-hub-sector-card-grid {
margin-top: 10px;
}
.bge-hub-sector-card {
flex: 1 1 0%;
min-width: 0;
max-width: 560px;
aspect-ratio: auto;
transition: flex-grow 0.5s cubic-bezier(.22, 1, .36, 1);
}
.bge-hub-sector-card:hover,
.bge-hub-sector-card:focus-visible {
flex-grow: 3 !important;
}
.bge-hub-sector-card-name {
font-size: 0.875rem;
line-height: 1.3;
letter-spacing: 0.01em;
text-wrap: balance;
}
.bge-hub-sector-card-count {
max-height: 0;
margin-top: 0;
overflow: hidden;
opacity: 0;
transition: max-height 0.3s ease, margin-top 0.3s ease, opacity 0.25s ease;
}
.bge-hub-sector-card:hover .bge-hub-sector-card-count,
.bge-hub-sector-card:focus-visible .bge-hub-sector-card-count {
max-height: 16px;
margin-top: 3px;
opacity: 1;
transition-delay: 0.12s;
}
.bge-hub-sector-card:hover .bge-hub-sector-card-img {
transform: none;
}
}
@media (prefers-reduced-motion: reduce) {
.bge-hub-sector-card,
.bge-hub-sector-card-count {
transition: none !important;
}
}
@media (prefers-reduced-motion: reduce) {
.bge-hub [data-aos] {
opacity: 1 !important;
transform: none !important;
transition: none !important;
}
.bge-hub-discipline-link:hover .bge-hub-discipline-image,
.bge-hub-magazine-hero:hover .bge-hub-magazine-hero-img,
.bge-hub-magazine-sat:hover .bge-hub-magazine-sat-img,
.bge-hub-sector-card:hover .bge-hub-sector-card-img {
transform: none;
}
}
[data-hub="expertise"] .bge-hub-lifecycle-visual {
display: flex;
align-items: center;
justify-content: center;
overflow: visible;
}
[data-hub="expertise"] .bge-hub-lifecycle .heading-content-wrapper {
align-items: center;
}
[data-hub="expertise"] .bge-hub-lifecycle .heading-text-wrapper {
margin-bottom: 0;
}
.bge-lc {
width: 100%;
max-width: 500px;
margin: 0 auto;
color: var(--bge-steel-blue-700, #1e3a44);
}
.bge-lc-stage {
position: relative;
width: 100%;
aspect-ratio: 1 / 1;
}
.bge-lc-ring {
position: absolute;
top: 50%;
left: 50%;
width: 68%;
height: 68%;
transform: translate(-50%, -50%);
overflow: visible;
}
.bge-lc-leaders {
position: absolute;
inset: 0;
width: 100%;
height: 100%;
pointer-events: none;
overflow: visible;
}
.bge-lc-leader {
fill: none;
stroke: var(--lc-c, #1e3a44);
stroke-width: 0.6;
stroke-linecap: round;
stroke-linejoin: round;
opacity: 0.55;
vector-effect: non-scaling-stroke;
transition: opacity 0.3s ease, stroke-width 0.3s ease;
}
.bge-lc-leader-dot {
fill: var(--lc-c, #1e3a44);
opacity: 0.75;
transition: opacity 0.3s ease, r 0.3s ease;
}
.bge-lc-leader.is-active { opacity: 1; stroke-width: 0.9; }
.bge-lc-leader-dot.is-active { opacity: 1; }
.bge-lc-seg { cursor: pointer; }
.bge-lc-seg:focus { outline: none; }
.bge-lc-arc {
transition: opacity 0.35s ease, stroke-width 0.4s cubic-bezier(.22, 1, .36, 1);
}
.bge-lc-icon {
pointer-events: none;
filter: brightness(0) invert(1);
opacity: 1;
}
.bge-lc-seg.is-active .bge-lc-arc,
.bge-lc-seg:focus-visible .bge-lc-arc { stroke-width: 46px; }
.bge-lc-flow { pointer-events: none; }
.bge-lc-flow-comet {
transform-box: view-box;
transform-origin: 110px 110px;
animation: bge-lc-spin 4.5s linear infinite;
}
@keyframes bge-lc-spin { to { transform: rotate(360deg); } }
.bge-lc-hub {
position: absolute;
top: 50%;
left: 50%;
width: 25%;
height: 25%;
transform: translate(-50%, -50%);
border-radius: 50%;
background: #fff;
box-shadow: 0 3px 12px rgba(30, 58, 68, 0.10);
display: flex;
align-items: center;
justify-content: center;
pointer-events: none;
}
.bge-lc-logo {
width: 48%;
height: auto;
}
.bge-lc-badge {
position: absolute;
transform: translate(-50%, -50%);
width: 19px;
height: 19px;
border-radius: 50%;
background: var(--lc-c, #1e3a44);
color: #fff;
font-family: Inter, sans-serif;
font-size: 10px;
font-weight: 700;
display: inline-flex;
align-items: center;
justify-content: center;
transition: box-shadow 0.3s ease;
}
.bge-lc-label {
position: absolute;
max-width: 26%;
font-family: Inter, sans-serif;
font-size: clamp(11px, 0.95vw, 13px);
font-weight: 600;
line-height: 1.25;
color: var(--bge-steel-blue-700, #1e3a44);
opacity: 1;
transition: color 0.3s ease;
}
.bge-lc-label[data-side="right"] { text-align: left;  transform: translate(15px, -50%); }
.bge-lc-label[data-side="left"]  { text-align: right; transform: translate(calc(-100% - 15px), -50%); }
.bge-lc-label.is-active { color: var(--lc-c, #1e3a44); }
.bge-lc-badge.is-active {
transform: translate(-50%, -50%) scale(1.14);
box-shadow: 0 0 0 4px color-mix(in srgb, var(--lc-c, #1e3a44) 18%, transparent);
}
.bge-lc-legend { display: none; }
.bge-lc-legend-item {
display: grid;
grid-template-columns: auto 1fr;
align-items: center;
gap: 8px;
width: 100%;
white-space: normal;
overflow-wrap: anywhere;
padding: 5px 4px;
border: 0;
border-radius: 6px;
background: none;
cursor: pointer;
text-align: left;
font-family: Inter, sans-serif;
font-size: 13px;
font-weight: 500;
line-height: 1.2;
color: var(--bge-steel-blue-700, #1e3a44);
transition: background 0.2s ease;
}
.bge-lc-legend-item:hover,
.bge-lc-legend-item:focus-visible,
.bge-lc-legend-item.is-active {
background: var(--bge-mandarin-100, #FFEEE6);
outline: none;
}
.bge-lc-legend-dot {
flex-shrink: 0;
width: 20px;
height: 20px;
border-radius: 50%;
background: var(--lc-dot, #1e3a44);
color: #fff;
font-size: 11px;
font-weight: 700;
display: inline-flex;
align-items: center;
justify-content: center;
}
.bge-lc-legend-name {
min-width: 0;
}
@media (max-width: 767px) {
.bge-hub-lifecycle .heading-content-wrapper { flex-direction: column; align-items: stretch; }
.bge-hub-lifecycle .content-wrapper,
.bge-hub-lifecycle .heading-right-wrapper { width: 100%; }
[data-hub="expertise"] .bge-hub-lifecycle .section-heading {
overflow-wrap: break-word;
word-break: normal;
max-width: 100%;
}
.bge-lc { max-width: 340px; }
.bge-lc-ring { position: static; width: 100%; height: 100%; transform: none; }
.bge-lc-label,
.bge-lc-badge,
.bge-lc-leaders { display: none; }
.bge-lc-hub { width: 40%; height: 40%; }
.bge-lc-legend-item,
.bge-lc-legend-name { white-space: normal !important; word-break: break-word; }
.bge-lc-legend {
display: grid;
grid-template-columns: 1fr;
list-style: none;
margin: 18px 0 0;
padding: 0;
gap: 2px;
}
}
@media (prefers-reduced-motion: reduce) {
.bge-lc-flow-comet { animation: none; opacity: 0.5; }
.bge-lc-arc,
.bge-lc-icon,
.bge-lc-label,
.bge-lc-badge,
.bge-lc-leader,
.bge-lc-leader-dot { transition: none; }
}
.bge-hub-discipline-link:focus-visible,
.bge-hub-magazine-hero:focus-visible,
.bge-hub-magazine-sat:focus-visible,
.bge-hub-sector-card:focus-visible {
outline: 2px solid var(--bge-mandarin-500, #ff5500);
outline-offset: 3px;
}
.bge-hub .bge-hub-sector-section {
background-color: var(--section-light, #f9f9fb);
}
.bge-hub-listing-section .section-title-center {
margin-bottom: 28px;
}
.bge-hub-filter-bar {
margin: 0 0 40px;
}
.bge-hub-filter-bar-inner {
display: flex;
align-items: center;
justify-content: space-between;
flex-wrap: wrap;
gap: 14px 18px;
padding: 18px 0;
border-top: 1px solid rgba(30, 58, 68, 0.10);
border-bottom: 1px solid rgba(30, 58, 68, 0.10);
}
.bge-hub-filter-controls {
display: flex;
align-items: center;
flex-wrap: wrap;
gap: 10px;
}
.bge-hub-filter-dropdown {
position: relative;
}
.bge-hub-filter-dropdown summary {
list-style: none;
}
.bge-hub-filter-dropdown summary::-webkit-details-marker {
display: none;
}
.bge-hub-filter-chip {
display: inline-flex;
align-items: center;
gap: 7px;
padding: 9px 16px;
border: 1px solid rgba(30, 58, 68, 0.22);
border-radius: 999px;
background: #fff;
color: var(--bge-steel-blue-700, #1e3a44);
font-family: Inter, sans-serif;
font-size: 14px;
font-weight: 500;
line-height: 1;
cursor: pointer;
user-select: none;
transition: border-color 0.2s ease, background 0.2s ease, color 0.2s ease;
}
.bge-hub-filter-chip:hover {
border-color: var(--bge-steel-blue-700, #1e3a44);
}
.bge-hub-filter-chip svg {
transition: transform 0.2s ease;
flex-shrink: 0;
}
.bge-hub-filter-dropdown[open] .bge-hub-filter-chip svg {
transform: rotate(180deg);
}
.bge-hub-filter-chip.is-active {
background: var(--bge-steel-blue-700, #1e3a44);
border-color: var(--bge-steel-blue-700, #1e3a44);
color: #fff;
}
.bge-hub-filter-count {
display: inline-flex;
align-items: center;
justify-content: center;
min-width: 18px;
height: 18px;
padding: 0 5px;
border-radius: 999px;
background: var(--bge-mandarin-500, #ff5500);
color: #fff;
font-size: 11px;
font-weight: 700;
}
.bge-hub-filter-panel {
position: absolute;
top: calc(100% + 8px);
left: 0;
z-index: 60;
min-width: 280px;
max-width: min(340px, calc(100vw - 32px));
max-height: 340px;
overflow-y: auto;
background: #fff;
border: 1px solid rgba(30, 58, 68, 0.10);
border-radius: 12px;
box-shadow: 0 18px 40px -12px rgba(30, 58, 68, 0.25);
padding: 8px;
}
.bge-hub-filter-list {
list-style: none;
margin: 0;
padding: 0;
}
.bge-hub-filter-list label {
display: flex;
align-items: center;
gap: 10px;
padding: 9px 10px;
border-radius: 8px;
cursor: pointer;
font-family: Inter, sans-serif;
font-size: 14px;
color: var(--bge-steel-blue-700, #1e3a44);
transition: background 0.15s ease;
}
.bge-hub-filter-list label:hover {
background: var(--bge-steel-blue-100, #eef2f4);
}
.bge-hub-filter-list input[type="checkbox"],
.bge-hub-filter-list input[type="radio"] {
accent-color: var(--bge-mandarin-500, #ff5500);
width: 15px;
height: 15px;
flex-shrink: 0;
margin: 0;
}
.bge-hub-filter-list label > span:first-of-type {
flex: 1;
min-width: 0;
}
.bge-hub-filter-term-count {
font-size: 12px;
font-weight: 500;
color: var(--bge-steel-blue-400, #64808a);
}
.bge-hub-filter-clear-row {
border-top: 1px solid rgba(30, 58, 68, 0.08);
margin-top: 6px;
padding-top: 6px;
}
.bge-hub-filter-clear,
.bge-hub-filter-clear-status,
.bge-hub-clear-link {
border: 0;
background: none;
padding: 9px 6px;
font-family: Inter, sans-serif;
font-size: 14px;
font-weight: 500;
color: var(--bge-steel-blue-500, #3c5a66);
text-decoration: underline;
text-underline-offset: 3px;
cursor: pointer;
}
.bge-hub-filter-clear:hover,
.bge-hub-filter-clear-status:hover,
.bge-hub-clear-link:hover {
color: var(--bge-mandarin-500, #ff5500);
}
.bge-hub-filter-meta {
display: flex;
align-items: center;
gap: 18px;
}
.bge-hub-filter-count-line {
margin: 0;
padding: 0;
font-family: Inter, sans-serif;
font-size: 14px;
color: var(--bge-steel-blue-400, #64808a);
white-space: nowrap;
}
.bge-hub-filter-count-line [data-bge-count-value] {
font-weight: 700;
color: var(--bge-steel-blue-700, #1e3a44);
}
.bge-hub-view-toggle {
display: inline-flex;
gap: 3px;
padding: 3px;
border-radius: 999px;
background: var(--bge-steel-blue-100, #eef2f4);
}
.bge-hub-view-tab {
border: 0;
background: none;
padding: 7px 16px;
border-radius: 999px;
font-family: Inter, sans-serif;
font-size: 13px;
font-weight: 600;
color: var(--bge-steel-blue-500, #3c5a66);
cursor: pointer;
transition: background 0.2s ease, color 0.2s ease, box-shadow 0.2s ease;
}
.bge-hub-view-tab.is-active {
background: #fff;
color: var(--bge-steel-blue-700, #1e3a44);
box-shadow: 0 2px 8px rgba(30, 58, 68, 0.14);
}
.bge-hub-view-tab.is-disabled {
opacity: 0.4;
cursor: not-allowed;
}
.bge-hub-results {
transition: opacity 0.2s ease;
}
.bge-hub-results[aria-busy="true"] {
opacity: 0.45;
pointer-events: none;
}
.bge-hub-card .blog-image-link {
display: block;
}
.bge-hub-award-badge {
position: absolute;
top: 12px;
right: 12px;
z-index: 10;
display: inline-flex;
align-items: center;
gap: 5px;
padding: 5px 10px;
border-radius: 999px;
background: rgba(255, 255, 255, 0.94);
color: var(--bge-steel-blue-700, #1e3a44);
font-family: Inter, sans-serif;
font-size: 11px;
font-weight: 700;
letter-spacing: 0.04em;
text-transform: uppercase;
line-height: 1;
}
.bge-hub-award-badge svg {
color: var(--bge-mandarin-500, #ff5500);
}
.bge-hub-empty {
grid-column: 1 / -1;
margin: 0;
padding: 56px 20px;
text-align: center;
font-family: Inter, sans-serif;
font-size: 16px;
color: var(--bge-steel-blue-500, #3c5a66);
}
.bge-hub-list-row {
display: grid;
grid-template-columns: 120px minmax(0, 1fr) 220px 24px;
align-items: center;
gap: 22px;
padding: 14px 6px;
border-bottom: 1px solid rgba(30, 58, 68, 0.10);
text-decoration: none;
border-radius: 8px;
transition: background 0.15s ease;
}
.bge-hub-list > .bge-hub-list-row:first-child {
border-top: 1px solid rgba(30, 58, 68, 0.10);
}
.bge-hub-list-row:hover {
background: var(--bge-steel-blue-100, #eef2f4);
}
.bge-hub-list-thumb-wrap {
line-height: 0;
border-radius: 6px;
overflow: hidden;
}
.bge-hub-list-thumb {
width: 120px;
height: 84px;
object-fit: cover;
transition: transform 0.4s ease;
}
.bge-hub-list-row:hover .bge-hub-list-thumb {
transform: scale(1.06);
}
.bge-hub-list-title .blog-title {
margin: 0;
}
.bge-hub-list-sector {
margin: 4px 0 0;
padding: 0;
font-family: Inter, sans-serif;
font-size: 12px;
font-weight: 600;
letter-spacing: 0.06em;
text-transform: uppercase;
color: var(--bge-steel-blue-400, #64808a);
}
.bge-hub-list-location p {
margin: 0;
}
.bge-hub-list-arrow {
color: var(--bge-mandarin-500, #ff5500);
opacity: 0;
transform: translateX(-4px);
transition: opacity 0.2s ease, transform 0.2s ease;
}
.bge-hub-list-row:hover .bge-hub-list-arrow {
opacity: 1;
transform: translateX(0);
}
.bge-hub-pagination {
display: flex;
align-items: center;
justify-content: center;
flex-wrap: wrap;
gap: 8px;
margin-top: 40px;
font-family: Inter, sans-serif;
}
.bge-hub-pagination[hidden] {
display: none;
}
.bge-hub-pagination .page-numbers.dots {
background: transparent;
}
.bge-hub-pagination span.current {
background: var(--bge-steel-blue-700, #1e3a44);
color: #fff;
}
.bge-hub-filter-chip:focus-visible,
.bge-hub-view-tab:focus-visible,
.bge-hub-list-row:focus-visible,
.bge-hub-filter-clear:focus-visible,
.bge-hub-clear-link:focus-visible,
.bge-hub-pagination a:focus-visible {
outline: 2px solid var(--bge-mandarin-500, #ff5500);
outline-offset: 3px;
}
@media (prefers-reduced-motion: reduce) {
.bge-hub-list-row:hover .bge-hub-list-thumb {
transform: none;
}
.bge-hub-list-arrow {
opacity: 1;
transform: none;
}
}
@media (max-width: 900px) {
.bge-hub-list-row {
grid-template-columns: 96px minmax(0, 1fr) 24px;
}
.bge-hub-list-location {
display: none;
}
.bge-hub-list-thumb {
width: 96px;
height: 68px;
}
}
@media (max-width: 760px) {
.bge-hub-filter-bar-inner {
flex-direction: column;
align-items: stretch;
}
.bge-hub-filter-meta {
justify-content: space-between;
}
}
.bge-hub img.is-broken {
opacity: 0;
}
.bge-img-reveal .bge-hub-sector-card-img,
.bge-img-reveal .bge-hub-card .blog-thumbnail,
.bge-img-reveal .bge-hub-list-thumb,
.bge-img-reveal .bge-hub-discipline-image {
opacity: 0;
}
.bge-img-reveal .bge-hub-sector-card-img {
transition: transform 0.5s cubic-bezier(.22, 1, .36, 1), opacity 0.5s ease-out;
}
.bge-img-reveal .bge-hub-card .blog-thumbnail {
transition: transform 0.4s ease-in-out, opacity 0.5s ease-out;
}
.bge-img-reveal .bge-hub-list-thumb {
transition: opacity 0.5s ease-out;
}
.bge-img-reveal .bge-hub-discipline-image {
transition: transform 0.7s cubic-bezier(.22, 1, .36, 1), opacity 0.5s ease-out;
}
.bge-img-reveal .bge-hub-sector-card-img.is-loaded,
.bge-img-reveal .bge-hub-card .blog-thumbnail.is-loaded,
.bge-img-reveal .bge-hub-list-thumb.is-loaded,
.bge-img-reveal .bge-hub-discipline-image.is-loaded {
opacity: 1;
}
.bge-img-reveal .bge-hub-sector-card::before {
content: "";
position: absolute;
inset: 0;
z-index: 0;
background: linear-gradient(105deg,
transparent 38%,
rgba(255, 255, 255, 0.07) 50%,
transparent 62%);
background-size: 250% 100%;
background-position: 130% 0;
animation: bge-card-shimmer 2.4s ease-in-out infinite;
}
@keyframes bge-card-shimmer {
from { background-position: 130% 0; }
to   { background-position: -150% 0; }
}
.bge-img-reveal .bge-hub-sector-card:has(.is-loaded)::before,
.bge-img-reveal .bge-hub-sector-card:has(.bge-hub-sector-card-img--empty)::before {
animation: none;
opacity: 0;
}
@media (prefers-reduced-motion: reduce) {
.bge-img-reveal .bge-hub-sector-card-img,
.bge-img-reveal .bge-hub-card .blog-thumbnail,
.bge-img-reveal .bge-hub-list-thumb,
.bge-img-reveal .bge-hub-discipline-image {
transition: none;
}
.bge-img-reveal .bge-hub-sector-card::before {
animation: none;
}
}
.bge-hub-card .blog-image-link {
display: block;
position: relative;
height: 200px;
background: linear-gradient(150deg, #33525f 0%, var(--bge-steel-blue-700, #1e3a44) 100%);
}
.bge-hub-card .blog-thumbnail {
position: absolute;
inset: 0;
width: 100%;
height: 100%;
object-fit: cover;
}
.bge-hub-list-thumb-wrap {
width: 120px;
height: 84px;
flex-shrink: 0;
background: linear-gradient(150deg, #33525f 0%, var(--bge-steel-blue-700, #1e3a44) 100%);
}
.bge-hub-list-thumb {
width: 100%;
height: 100%;
object-fit: cover;
}
.bge-hub-magazine-sat-img-wrap {
background: linear-gradient(150deg, #33525f 0%, var(--bge-steel-blue-700, #1e3a44) 100%);
}
.bge-hub-sector-card {
background: linear-gradient(150deg, #33525f 0%, var(--bge-steel-blue-700, #1e3a44) 100%);
}
@media (max-width: 900px) {
.bge-hub-list-thumb-wrap {
width: 96px;
height: 68px;
}
}
.bge-hub-filter-list li.is-child label {
padding-left: 32px;
}
.bge-hub-results > [hidden] {
display: none !important;
}