/* About Us — screenshot-specific layout */
.page-about-us { overflow-x: hidden; color: #10234d; }
.page-about-us h1,.page-about-us h2,.page-about-us h3 { color: #071b49; }
.page-about-us .site-header { position: relative; z-index: 1000; box-shadow: 0 2px 10px rgba(6,26,65,.08); }
.page-about-us .site-header .navbar { min-height: 82px; }
.page-about-us .site-header .nav-link.active { color: #ffad00; }
.page-about-us .site-header .nav-link.active::after { background: #ffad00; }

/* Hero */
.about-hero { position: relative; min-height: 488px; overflow: hidden; background: radial-gradient(circle at 29% 24%,rgba(25,74,145,.25),transparent 31%),linear-gradient(118deg,#061a43 0%,#061a43 51%,#0b2a61 100%); color: #fff; }
.about-hero::before { content:""; position:absolute; inset:0 45% 0 0; opacity:.18; background-image:linear-gradient(120deg,transparent 65%,rgba(255,255,255,.15) 65.5%,transparent 66%),radial-gradient(circle at 18% 88%,rgba(255,255,255,.18),transparent 27%); }
.about-hero__photo { position:absolute; z-index:3; top:0; right:-1px; width:54%; height:100%; background:url("../../images/about/about-hero-team-kuala-lumpur.png") center bottom/118% auto no-repeat; clip-path:ellipse(74% 180% at 71% 150%); }
.about-hero__photo::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(4,22,55,.28),transparent 25%); }
.about-hero__curve { position:absolute; top:0; right:-1px; left:auto; height:100%; border-radius:0; transform:none; clip-path:ellipse(74% 180% at 71% 150%); }
.about-hero__curve--gold { z-index:1; width:55.35%; background:linear-gradient(180deg,#ffd000,#ff9600); }
.about-hero__curve--red { z-index:2; width:54.7%; background:#ef4437; opacity:1; }
.about-hero__inner { position:relative; z-index:4; min-height:488px; max-width:1184px; display:flex; align-items:center; }
.about-hero__content { width:47.5%; padding:34px 0 29px; }
.about-breadcrumb { display:flex; gap:9px; align-items:center; margin-bottom:33px; font-size:12px; color:rgba(255,255,255,.82); }
.about-breadcrumb a { color:#fff; }
.about-breadcrumb i { font-size:8px; }
.about-hero h1 { margin:0 0 18px; color:#fff; font-size:43px; line-height:1.08; letter-spacing:-1.5px; font-weight:700; }
.about-hero h1 span { color:#ffc000; font-family:var(--gem-font-accent); font-size:50px; line-height:.9; }
.about-hero__lead { margin:0 0 20px; font-family:var(--gem-font-heading); font-size:20px; line-height:1.45; font-weight:600; }
.about-hero__copy { max-width:475px; margin:0 0 34px; color:rgba(255,255,255,.9); font-size:13px; line-height:1.72; }
.about-hero__stats { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; width:560px; }
.about-stat { display:flex; align-items:center; gap:11px; }
.about-stat > i { color:#ffbf00; font-size:26px; line-height:1; }
.about-stat strong { display:block; color:#fff; font-family:var(--gem-font-heading); font-size:18px; line-height:1.05; }
.about-stat small { display:block; margin-top:3px; color:rgba(255,255,255,.85); font-size:8px; white-space:nowrap; }
.about-hero__route { position:absolute; z-index:3; left:34%; top:105px; width:140px; height:140px; border-top:1.5px dashed rgba(255,255,255,.55); border-radius:50%; transform:rotate(24deg); }
.about-hero__route i { position:absolute; right:-11px; top:-8px; color:#fff; font-size:23px; transform:rotate(31deg); }
.about-hero__badge { position:absolute; z-index:6; left:50.2%; bottom:-12px; width:490px; height:140px; padding:14px 28px; display:flex; align-items:center; justify-content:center; gap:26px; color:#071b49; background:#fff; border-radius:12px; box-shadow:0 13px 30px rgba(3,19,48,.25); transform:none; }
.anniversary-seal { flex:0 0 150px; width:150px; height:112px; text-align:center; line-height:1; }
.anniversary-seal img { width:150px; height:112px; object-fit:contain; }
.about-hero__badge-copy { padding-left:22px; border-left:1px solid #e1e6ef; }
.about-hero__badge-copy strong { display:block; margin-bottom:9px; font-family:var(--gem-font-heading); font-size:14px; line-height:1.35; }
.about-hero__badge-copy img { width:100px; height:auto; }

/* Story */
.about-story { padding:76px 0 67px; background:#fff; }
.about-story > .container { max-width:1184px; }
.about-milestones > .container,.about-team > .container,.about-closing > .container { max-width:1260px; }
.about-story__grid { display:grid; grid-template-columns:1.08fr .95fr .76fr; gap:48px; align-items:center; }
.section-kicker { display:flex; align-items:center; gap:13px; margin:0 0 16px; color:#071b49; font-family:var(--gem-font-heading); font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:.4px; }
.section-kicker::before { content:""; width:45px; height:2px; background:#ffb800; }
.about-story__copy h2 { margin:0 0 25px; font-size:29px; line-height:1.32; letter-spacing:-.6px; }
.about-story__copy h2 span { color:#135ce5; }
.about-story__copy p:not(.section-kicker) { margin-bottom:17px; color:#32415f; font-size:12.5px; line-height:1.75; }
.about-story__copy .btn-gem { margin-top:7px; padding:12px 25px; font-size:10px; }
.about-story__visual { position:relative; height:390px; }
.about-story__visual > img { width:100%; height:100%; object-fit:cover; object-position:center; border-radius:16px; }
.mission-card { position:absolute; left:44px; right:0; bottom:-18px; min-height:102px; padding:20px 22px; display:flex; align-items:flex-start; gap:16px; color:#fff; background:#08265e; border-radius:11px; box-shadow:var(--gem-shadow-md); }
.mission-card > i { flex:0 0 auto; color:#ffbd00; font-size:37px; }
.mission-card strong { display:block; margin-bottom:4px; color:#fff; font-family:var(--gem-font-heading); font-size:13px; }
.mission-card p { margin:0; color:rgba(255,255,255,.94); font-size:10px; line-height:1.55; }
.about-values { display:grid; gap:32px; }
.about-values article { display:grid; grid-template-columns:69px 1fr; gap:17px; align-items:center; }
.about-values article > span { width:66px; height:66px; display:grid; place-items:center; color:#071b49; border:1.5px solid #ffb900; border-radius:50%; }
.about-values i { font-size:31px; }
.about-values img { width:35px; height:35px; }
.about-values h3 { margin:0 0 5px; font-size:13px; }
.about-values p { margin:0; color:#32415f; font-size:11px; line-height:1.55; }

/* Milestones */
.about-milestones { padding:31px 0 38px; background:linear-gradient(90deg,#f8faff,#f2f6fd 50%,#f8faff); }
.about-heading { text-align:center; margin-bottom:22px; }
.about-heading h2 { margin:0; font-size:24px; letter-spacing:-.4px; }
.about-heading span { display:block; width:34px; height:3px; margin:8px auto 0; border-radius:4px; background:#ffbb00; }
.milestone-track { display:grid; grid-template-columns:repeat(6,1fr); position:relative; gap:16px; }
.milestone-track::before { content:""; position:absolute; z-index:0; left:8%; right:8%; top:40px; border-top:1.5px dashed #8292ad; }
.milestone { position:relative; z-index:1; text-align:center; }
.milestone__icon { width:80px; height:80px; display:grid; place-items:center; margin:0 auto 13px; color:#071b49; background:#fff; border:1px solid #dfe5ef; border-radius:50%; box-shadow:0 5px 14px rgba(9,33,77,.08); }
.milestone__icon i { font-size:27px; }
.milestone h3 { margin:0 0 6px; font-size:17px; }
.milestone strong { display:block; margin-bottom:6px; color:#071b49; font-size:11px; }
.milestone p { max-width:145px; margin:0 auto; color:#35435e; font-size:9.5px; line-height:1.5; }

/* Leadership */
.about-team { padding:31px 0 28px; background:#fff; }
.team-swiper { overflow:visible; padding:0 2px 15px; }
.team-swiper .swiper-wrapper { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:27px; }
.team-swiper .swiper-slide { width:auto; height:auto; }
.team-card { overflow:hidden; border:1px solid #dfe4ec; border-radius:12px; background:#fff; box-shadow:0 4px 12px rgba(5,28,70,.03); transition:transform .25s ease,box-shadow .25s ease; }
.team-card:hover { transform:translateY(-6px); box-shadow:0 15px 30px rgba(5,28,70,.13); }
.team-card__photo { position:relative; height:202px; overflow:hidden; background:linear-gradient(145deg,#f7f7f7,#fff); }
.team-card__photo img { width:100%; height:100%; object-fit:contain; object-position:center bottom; transform:scale(1.05); transform-origin:center bottom; }
.team-card:nth-child(6) .team-card__photo img { transform:scale(1.3); transform-origin:center 20%; }
.team-card__social { position:absolute; right:9px; bottom:7px; display:flex; gap:3px; }
.team-card__social a { width:25px; height:25px; display:grid; place-items:center; color:#fff; background:#23395e; border-radius:50%; font-size:12px; }
.team-card__social a:hover { background:#ffb700; color:#071b49; }
.team-card__body { min-height:126px; padding:12px 10px 13px; text-align:center; }
.team-card__body h3 { margin:0 0 4px; font-size:12px; }
.team-card__body span { display:block; color:#071b49; font-size:9.5px; }
.team-card__body p { margin:12px 0 0; color:#3d4964; font-size:9.2px; line-height:1.55; }
.team-pagination { display:none; }
.about-team > .container > .text-center { margin-top:0; }
.about-team .btn-gem { padding:11px 24px; font-size:10px; }

/* Awards and CTA */
.about-closing { padding:0 0 36px; }
.about-closing__grid { display:grid; grid-template-columns:.94fr 1.06fr; min-height:238px; overflow:hidden; border:1px solid #e1e6ef; border-radius:13px; box-shadow:0 4px 17px rgba(7,27,73,.04); }
.awards-panel { padding:28px 29px 23px; background:#fff; }
.awards-panel h2 { margin:0 0 27px; font-size:18px; }
.awards-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:13px; }
.awards-grid article { text-align:center; }
.awards-grid img { width:82px; height:64px; object-fit:contain; margin:0 auto 10px; }
.awards-grid p { margin:0; color:#1f2e4d; font-size:9.2px; line-height:1.5; }
.about-cta { position:relative; overflow:hidden; display:grid; grid-template-columns:40% 60%; align-items:center; padding:20px 24px 20px 10px; color:#fff; background:radial-gradient(circle at 22% 48%,rgba(28,89,167,.55),transparent 29%),linear-gradient(118deg,#08255e,#041a43); }
.about-cta::after { content:""; position:absolute; inset:0; opacity:.12; background-image:radial-gradient(circle at 90% 20%,#fff 0 1px,transparent 1px); background-size:14px 14px; pointer-events:none; }
.about-cta__image { position:relative; z-index:1; }
.about-cta__image::before { content:""; position:absolute; inset:-5px; border:2px solid #f7b800; border-radius:50%; clip-path:polygon(0 0,100% 0,100% 78%,38% 100%,0 100%); }
.about-cta__image img { position:relative; width:100%; aspect-ratio:1/1; object-fit:cover; border-radius:50%; }
.about-cta__content { position:relative; z-index:1; padding-left:26px; }
.about-cta__content small { display:block; margin-bottom:8px; font-family:var(--gem-font-heading); font-size:9px; font-weight:600; text-transform:uppercase; letter-spacing:.5px; }
.about-cta__content h2 { margin:0 0 10px; color:#fff; font-size:23px; line-height:1.27; }
.about-cta__content p { max-width:380px; margin:0 0 18px; color:rgba(255,255,255,.88); font-size:10px; line-height:1.5; }
.about-cta__content .btn-gem { min-height:35px; padding:9px 18px; margin-right:8px; font-size:9px; }

@media (max-width:1199.98px) {
  .about-hero__content { width:50%; }
  .about-hero__photo { background-size:cover; background-position:center bottom; }
  .about-hero__stats { width:470px; gap:8px; }
  .about-story__grid { gap:28px; }
  .team-swiper .swiper-wrapper { gap:10px; }
  .team-card__photo { height:190px; }
  .about-cta__content { padding-left:16px; }
}

@media (max-width:991.98px) {
  .about-hero { min-height:760px; }
  .about-hero__photo { top:380px; width:100%; height:380px; background-size:cover; background-position:center 60%; clip-path:ellipse(94% 70% at 64% 70%); }
  .about-hero__curve { display:none; }
  .about-hero__inner { min-height:420px; align-items:flex-start; }
  .about-hero__content { width:100%; max-width:700px; padding:35px 0 15px; }
  .about-hero__copy { margin-bottom:22px; }
  .about-hero__badge { left:50%; bottom:12px; transform:translateX(-50%); }
  .about-hero__route { right:8%; left:auto; }
  .about-story__grid { grid-template-columns:1fr 1fr; }
  .about-values { grid-column:1/-1; grid-template-columns:repeat(3,1fr); margin-top:18px; }
  .about-values article { grid-template-columns:60px 1fr; }
  .milestone-track { grid-template-columns:repeat(3,1fr); row-gap:30px; }
  .milestone-track::before { display:none; }
  .team-swiper { overflow:hidden; }
  .team-swiper .swiper-wrapper { display:flex; gap:0; }
  .team-pagination { display:block; position:relative; margin-top:18px; }
  .team-card__photo { height:255px; }
  .about-closing__grid { grid-template-columns:1fr; }
  .about-cta { min-height:265px; }
}

@media (max-width:767.98px) {
  .page-about-us .topbar { display:none; }
  .page-about-us .site-header .navbar { min-height:68px; }
  .about-hero { min-height:790px; }
  .about-hero__photo { top:450px; height:340px; clip-path:ellipse(104% 67% at 67% 72%); }
  .about-hero__content { padding-top:27px; }
  .about-breadcrumb { margin-bottom:22px; }
  .about-hero h1 { font-size:34px; }
  .about-hero h1 span { font-size:40px; }
  .about-hero__lead { font-size:16px; }
  .about-hero__copy { max-width:100%; font-size:11.5px; }
  .about-hero__stats { width:100%; grid-template-columns:repeat(2,1fr); gap:15px 8px; }
  .about-hero__badge { bottom:8px; width:88%; max-width:390px; height:108px; padding:8px 14px; gap:12px; }
  .anniversary-seal { flex-basis:118px; width:118px; height:92px; }
  .anniversary-seal img { width:118px; height:92px; }
  .about-hero__badge-copy { padding-left:14px; }
  .about-hero__badge-copy strong { font-size:11px; }
  .about-story { padding:50px 0 54px; }
  .about-story__grid { grid-template-columns:1fr; gap:38px; }
  .about-story__copy h2 { font-size:25px; }
  .about-story__visual { height:385px; }
  .mission-card { left:22px; right:10px; bottom:-22px; }
  .about-values { grid-column:auto; grid-template-columns:1fr; gap:20px; margin-top:8px; }
  .about-values article { grid-template-columns:58px 1fr; }
  .about-values article > span { width:56px; height:56px; }
  .about-values i { font-size:25px; }
  .about-milestones { padding:37px 0; }
  .milestone-track { display:flex; flex-direction:column; gap:0; padding-left:13px; }
  .milestone-track::before { display:block; top:28px; bottom:31px; left:42px; right:auto; width:1px; height:auto; border:0; border-left:1.5px dashed #8292ad; }
  .milestone { min-height:100px; display:grid; grid-template-columns:66px 1fr; grid-template-rows:auto auto 1fr; column-gap:17px; text-align:left; }
  .milestone__icon { grid-row:1/4; width:58px; height:58px; margin:0; }
  .milestone__icon i { font-size:22px; }
  .milestone h3 { margin:3px 0 2px; font-size:16px; }
  .milestone strong { margin-bottom:3px; font-size:11px; }
  .milestone p { max-width:250px; margin:0; font-size:9.5px; }
  .about-team { padding:38px 0; }
  .about-team .about-heading h2 { font-size:21px; }
  .team-swiper { margin-right:-14px; }
  .team-card__photo { height:235px; }
  .awards-panel { padding:27px 18px; }
  .awards-grid { grid-template-columns:repeat(2,1fr); gap:25px 12px; }
  .about-cta { grid-template-columns:1fr; padding:25px; text-align:center; }
  .about-cta__image { width:180px; margin:0 auto 20px; }
  .about-cta__content { padding:0; }
  .about-cta__content p { margin-left:auto; margin-right:auto; }
}

@media (max-width:399.98px) {
  .about-hero h1 { font-size:30px; }
  .about-hero__lead br { display:none; }
  .about-hero__badge { width:94%; }
  .about-stat > i { font-size:21px; }
  .about-stat strong { font-size:15px; }
  .about-story__visual { height:345px; }
  .milestone__icon { width:62px; height:62px; }
}

@media (prefers-reduced-motion:reduce) {
  .team-card { transition:none; }
}
