:root{--bg:#061322;--bg2:#0b1c30;--card:#0d233b;--gold:#f0b52a;--white:#f5f7fb;--muted:#a9b9ca;--line:rgba(255,255,255,.12)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:76px}body{margin:0;background:var(--bg);color:var(--white);font:15px/1.55 Arial,Helvetica,sans-serif;overflow-x:hidden}a{color:inherit;text-decoration:none}.topline{height:3px;background:var(--gold)}
.nav{height:76px;display:grid;grid-template-columns:180px minmax(0,1fr) auto auto;align-items:center;column-gap:22px;padding:0 3.5%;border-bottom:1px solid var(--line);background:#06111f;position:sticky;top:0;z-index:50}.logo{width:180px;height:58px;object-fit:contain;object-position:left center}.links{display:flex;align-items:center;justify-content:center;gap:18px;min-width:0;font-size:13px;font-weight:700}.links>a,.navdrop>a{white-space:nowrap}.navdrop{position:relative}.navdrop>a{display:inline-flex;gap:5px;align-items:center}.dropdown{display:none;position:absolute;top:calc(100% + 14px);left:50%;transform:translateX(-50%);min-width:205px;padding:8px;background:#091b2e;border:1px solid var(--line);box-shadow:0 18px 45px #0009}.navdrop:hover .dropdown,.navdrop:focus-within .dropdown{display:flex;flex-direction:column}.dropdown a{padding:9px 10px;color:#d4dde7;font-size:12px;white-space:nowrap}.dropdown a:hover{background:#ffffff08;color:var(--gold)}
.nav-social{display:flex;gap:7px;align-items:center}.nav-social a:not(.talk){border:1px solid var(--line);width:27px;height:27px;display:grid;place-items:center;font-weight:800}.talk{color:var(--gold);margin-left:5px;font-weight:800}.cta,.button{display:inline-flex;align-items:center;justify-content:center;padding:11px 18px;border:1px solid var(--gold);font-weight:800;letter-spacing:.01em;white-space:nowrap;line-height:1.1}.cta,.button.primary{background:var(--gold);color:#07111d}
.hero{height:425px;min-height:425px;position:relative;overflow:hidden;border-bottom:1px solid var(--line)}.hero-art{position:absolute;inset:0;background-image:url('/assets/hero-mountains.svg')!important;background-position:center center;background-size:cover;background-repeat:no-repeat;opacity:1}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#061322 0%,#061322e8 25%,#06132255 57%,#06132222 82%,#061322 100%);pointer-events:none}.hero-content,.hero-side{position:relative;z-index:2}.hero-content{padding:56px 4.2%;max-width:590px}.kicker,.eyebrow,.tag{color:var(--gold);font-weight:800;letter-spacing:.14em;text-transform:uppercase}.kicker{font-size:13px}.hero h1{font-size:clamp(54px,6.2vw,88px);line-height:.86;margin:12px 0 18px;letter-spacing:-.055em}.hero h1 span{color:var(--gold)}.hero p{font-size:15px;line-height:1.45;color:#d0dae6;max-width:500px;margin:0}.actions{display:flex;gap:12px;margin-top:22px;flex-wrap:nowrap}.actions .button{font-size:12px;min-height:38px}.hero-side{position:absolute;right:4.8%;top:62px;display:flex;flex-direction:column;gap:11px;color:var(--gold);font-size:11px;letter-spacing:.13em}.hero-side span{color:#e1e6ed;line-height:1.4;margin-bottom:5px}.hero-side b{font-size:24px}
.section{padding:50px 4.2%;border-bottom:1px solid var(--line)}.feature{display:grid;grid-template-columns:1.02fr .98fr;gap:38px;align-items:center}.feature h2,.section h2{font-size:clamp(34px,3.5vw,54px);line-height:1.02;margin:10px 0 18px;letter-spacing:-.04em}.feature p,.holding p{color:#c4d0df;font-size:15px}.rbw-card{min-height:230px;background:linear-gradient(120deg,#0b2036,#132d49);border:1px solid var(--line);border-radius:7px;padding:20px 24px;display:flex;gap:22px;align-items:center;overflow:hidden}.rbw-card img{width:112px;height:170px;object-fit:contain;filter:drop-shadow(0 10px 18px #0009)}.rbw-card h3{font-size:28px;line-height:1.05;margin:12px 0}.rbw-card p{margin:0;color:#cbd6e2}.holding{display:grid;grid-template-columns:1.2fr .8fr;gap:28px}.holding-image img{width:100%;height:230px;object-fit:cover;border:1px solid var(--line);border-radius:7px}.value-grid{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.value-grid article,.service-card,.person,.video-card,.news-card{background:var(--card);border:1px solid var(--line);border-radius:7px}.value-grid article{padding:15px 19px;position:relative;min-height:115px}.value-icon{width:48px;height:42px;float:left;margin:0 14px 5px 0}.value-grid b{color:var(--gold);font-size:16px}.value-grid h3{margin:12px 0 5px;font-size:17px}.value-grid p,.service-card p,.news-card p{color:#bdc9d7;font-size:13px;margin:0}
.section-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:22px}.section-head h2{margin-bottom:0}.arrow-link{color:var(--gold);font-weight:800;font-size:11px;white-space:nowrap}.cards.three{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.service-card{overflow:hidden;display:grid;grid-template-columns:95px 1fr;min-height:118px}.service-card img{width:95px;height:100%;min-height:118px;object-fit:cover}.service-card>div{padding:14px}.service-card h3{font-size:16px;margin:0 0 5px}.service-card a{color:var(--gold);font-weight:800;font-size:12px;display:inline-block;margin-top:8px}
.horizontal-cards,.video-strip{display:flex;gap:12px;overflow-x:auto;padding-bottom:5px;scrollbar-width:thin}.person{min-width:calc((100% - 36px)/4);overflow:hidden}.person>img{width:100%;height:125px;object-fit:cover}.person>div{padding:10px 11px}.person h3{margin:0;font-size:13px}.person p{color:var(--muted);margin:2px 0 5px;font-size:11px}.person a{color:#66b7ff;font-weight:800;font-size:11px}.video-card{min-width:calc((100% - 36px)/4);overflow:hidden;padding-bottom:8px}.video-thumb{height:125px;position:relative}.video-thumb img{width:100%;height:100%;object-fit:cover}.video-thumb span{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#000b;color:#fff;border:1px solid #fff}.video-card>b,.video-card>small{display:block;padding:6px 10px 0}.video-card>b{font-size:11px;line-height:1.25}.video-card small{color:var(--gold);font-size:10px}
.partnerships{display:grid;grid-template-columns:.9fr 1.5fr;align-items:center;gap:35px}.partner-row{display:flex;align-items:center;justify-content:flex-end;gap:18px;flex-wrap:wrap}.partner-item{display:flex;align-items:center;justify-content:center;min-width:80px;min-height:52px}.partner-row img{max-width:100px;max-height:48px;object-fit:contain}.andmore{width:48px;height:48px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;color:var(--gold);position:relative}.andmore small{position:absolute;top:53px;white-space:nowrap;font-size:7px;color:#c4d0df}
.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.news-card{overflow:hidden;display:grid;grid-template-columns:1fr 62px}.news-card img{width:62px;height:100%;min-height:145px;object-fit:cover;grid-column:2;grid-row:1}.news-card>div{padding:15px;grid-column:1;grid-row:1}.news-card small{color:var(--gold);font-weight:800;font-size:9px}.news-card h3{font-size:14px;line-height:1.2;margin:7px 0}.news-card a{color:var(--gold);font-weight:800;font-size:11px}.contact{display:grid;grid-template-columns:.8fr 1.2fr;gap:40px}.contact p{font-size:16px;color:#c4d0df}.contact form{display:grid;grid-template-columns:1fr 1fr;gap:12px}.contact input,.contact textarea{background:#081a2b;border:1px solid var(--line);padding:13px;color:#fff;font:inherit;font-size:13px}.contact textarea{grid-column:1/-1;min-height:130px}.contact button{grid-column:1/-1;border:0;cursor:pointer}#formMsg{grid-column:1/-1;color:var(--gold)}
footer{padding:42px 4.2%;display:grid;grid-template-columns:1fr 1.4fr 1fr;gap:30px;color:var(--muted);font-size:11px}footer img{width:170px;height:52px;object-fit:contain;object-position:left}.footer-links{display:flex;flex-wrap:wrap;align-content:center;gap:8px 16px}.social-bottom{color:#fff}.social-bottom>a{margin-right:9px;color:var(--gold);font-weight:800}.social-bottom p{margin-top:12px;color:var(--muted)}.gold-dot{color:var(--gold)}
.journey-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.journey-grid article{padding:18px;background:var(--card);border:1px solid var(--line);border-radius:7px}.journey-grid b{color:var(--gold)}
.rich p{margin:0 0 8px}.rich h2,.rich h3{margin-top:15px}
@media(max-width:1250px) and (min-width:1001px){.nav{grid-template-columns:160px minmax(0,1fr) auto auto;gap:13px;padding:0 2.2%}.logo{width:160px}.links{gap:12px;font-size:12px}.nav-social{gap:5px}.cta{padding:10px 14px;font-size:11px}.hero-content{padding-left:4.5%}.section{padding-left:4.5%;padding-right:4.5%}}
@media(max-width:1000px){.nav{height:auto;min-height:74px;grid-template-columns:150px 1fr auto;gap:10px;padding:8px 4%}.logo{width:150px;height:52px}.links{justify-content:flex-start;gap:13px;overflow-x:auto;white-space:nowrap}.nav-social{display:none}.cta{font-size:11px;padding:10px 13px}.hero{height:470px;min-height:470px}.hero-content{padding:60px 5%;max-width:570px}.hero-side{right:5%}.feature,.holding,.partnerships,.contact{grid-template-columns:1fr}.holding-image{display:none}.cards.three,.news-grid,.value-grid,.journey-grid{grid-template-columns:1fr}.partner-row{justify-content:flex-start}.person,.video-card{min-width:240px}footer{grid-template-columns:1fr}}
@media(max-width:700px){.nav{grid-template-columns:120px auto;justify-content:space-between}.links{grid-column:1/-1;grid-row:2;padding-bottom:3px}.logo{width:120px}.hero{height:auto;min-height:500px}.hero-content{padding:48px 6%}.hero h1{font-size:58px}.hero-side{display:none}.actions{flex-wrap:wrap}.actions .button{min-width:0}.section{padding:42px 6%}.section-head{align-items:flex-start;flex-direction:column;gap:10px}.feature h2,.section h2{font-size:38px}.rbw-card{align-items:flex-start}.rbw-card img{width:90px;height:140px}.news-card{grid-template-columns:1fr 75px}.news-card img{width:75px}}
/* FINAL 3.0.1 detail-page, icon and navigation refinements */
.nav-social svg,.social-bottom svg{width:15px;height:15px;display:block}.social-bottom svg{width:18px;height:18px}.nav-social a[aria-label="Instagram"],.social-bottom a:has(svg){display:grid;place-items:center}
.navdrop.open>.dropdown{display:flex;flex-direction:column}
.detail-page{min-height:70vh}.detail-page h1{font-size:clamp(48px,7vw,90px);line-height:.98;max-width:1100px;margin:10px 0 28px}.detail-copy{max-width:950px;font-size:19px;line-height:1.7}.detail-intro{max-width:850px;font-size:18px;margin-bottom:30px}.detail-hero-image{display:block;width:min(100%,1050px);max-height:430px;object-fit:cover;border:1px solid var(--line);margin:20px 0 30px}.detail-card{max-width:900px;margin:20px 0 30px}.detail-people{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.detail-person{min-width:0}.partner-detail-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.partner-detail-item{min-height:150px;border:1px solid var(--line);background:#091b2e;padding:22px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;text-align:center}.partner-detail-item img{max-width:150px;max-height:65px;object-fit:contain}.partner-detail-item b{color:#fff;font-size:14px}
@media(max-width:1000px){.detail-people{grid-template-columns:1fr}.partner-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.detail-page h1{font-size:clamp(42px,13vw,64px)}.detail-copy{font-size:16px}.partner-detail-grid{grid-template-columns:1fr}.detail-hero-image{max-height:280px}.detail-card{flex-direction:column}}
/* Stable 100% desktop header: prevent navigation/social collisions on laptop and desktop widths */
@media (min-width:1001px) and (max-width:1600px){
  .nav{grid-template-columns:190px minmax(0,1fr) auto 170px;column-gap:14px;padding:0 2.8%;}
  .logo{width:190px;height:56px}
  .links{gap:13px;font-size:12px;justify-content:flex-start}
  .nav-social{gap:5px;white-space:nowrap}
  .nav-social a:not(.talk){width:26px;height:26px}
  .talk{margin-left:2px;font-size:12px}
  .cta{padding:10px 13px;font-size:11px}
  .dropdown{top:calc(100% + 8px)}
}
@media (min-width:1001px) and (max-width:1300px){
  .nav{grid-template-columns:155px minmax(0,1fr) auto 145px;column-gap:10px;padding:0 2%;}
  .logo{width:155px}
  .links{gap:9px;font-size:11px}
  .nav-social{gap:4px}.talk{font-size:11px}.cta{padding:9px 10px;font-size:10px}
}

/* FINAL 3.0.2 navigation, CMS detail/listing and responsive fixes */
.navdrop>.drop-toggle{appearance:none;border:0;background:transparent;color:inherit;font:inherit;cursor:pointer;padding:0;display:inline-flex;align-items:center;gap:5px;white-space:nowrap}
.navdrop>.drop-toggle span{font-size:11px}
.social-svg{width:16px;height:16px;display:block}
.nav-social a,.social-bottom a{display:inline-flex;align-items:center;justify-content:center}
.powered{color:var(--gold)!important;font-weight:800}
.service-card h3 a,.person h3 a,.news-card h3 a,.journey-card h3{color:#fff;text-decoration:none}
.service-card h3 a:hover,.person h3 a:hover,.news-card h3 a:hover,.journey-card:hover h3{color:var(--gold)}
.service-card> a:first-child{display:block;line-height:0}
.listing-card{min-height:170px}
.listing-cards{margin-top:24px}
.people-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.people-grid .person{min-width:0}
.video-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.video-grid .video-card{min-width:0}
.journey-card{display:block;padding:20px;background:var(--card);border:1px solid var(--line);border-radius:7px;color:#d4dde7;text-decoration:none;transition:border-color .2s,transform .2s}
.journey-card:hover{border-color:var(--gold);transform:translateY(-2px)}
.journey-card b{color:var(--gold);font-size:20px}.journey-card h3{margin:12px 0 8px;font-size:20px}.journey-card p{margin:0 0 16px;color:#bdc9d7}.journey-card span{color:var(--gold);font-size:11px;font-weight:800}
.detail-video{max-width:900px;margin:20px 0 30px;position:relative}.detail-video img{width:100%;max-height:480px;object-fit:cover;border:1px solid var(--line);border-radius:7px}.play-button{position:absolute;left:24px;bottom:24px;background:var(--gold);color:#071321;padding:12px 18px;font-weight:800;text-decoration:none;border-radius:3px}
.partner-detail-item{color:#fff;text-decoration:none;transition:border-color .2s,transform .2s}.partner-detail-item:hover{border-color:var(--gold);transform:translateY(-2px)}
@media(max-width:1250px) and (min-width:1001px){.nav{grid-template-columns:145px minmax(0,1fr) auto auto;column-gap:9px}.logo{width:145px}.links{gap:10px;font-size:11px}.nav-social{gap:4px}.nav-social .talk{font-size:10px}.cta{padding:10px 12px;font-size:10px}}
@media(max-width:1100px) and (min-width:701px){.people-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.video-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cards.three{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.people-grid,.video-grid{grid-template-columns:1fr}.listing-card{min-height:0}.detail-video img{max-height:300px}.play-button{left:12px;bottom:12px;font-size:11px}.navdrop .dropdown{left:0;transform:none;top:calc(100% + 8px);z-index:100}.navdrop.open .dropdown{display:flex}.links{overflow:visible;flex-wrap:wrap;white-space:normal}.links>a,.navdrop>.drop-toggle{font-size:12px}}

/* VEGA 3.0.4 FINAL UI FIXES
   Footer social row, leadership cards and leadership detail presentation. */
.social-bottom > div{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:10px;
  flex-wrap:nowrap;
  min-height:30px;
}
.social-bottom > div > a{
  flex:0 0 auto;
  margin:0;
}
.social-bottom .talk{
  margin-left:4px;
  white-space:nowrap;
}
.people-grid .person > a{
  display:block;
  line-height:0;
  overflow:hidden;
}
.people-grid .person > a > img{
  display:block;
  width:100%;
  height:170px;
  object-fit:cover;
  object-position:center top;
}
.detail-person-layout{
  display:grid;
  grid-template-columns:minmax(220px,340px) minmax(0,760px);
  gap:34px;
  align-items:start;
  margin:10px 0 30px;
}
.detail-person-photo{
  width:100%;
  max-width:340px;
  height:360px;
  object-fit:cover;
  object-position:center top;
  border:1px solid var(--line);
  border-radius:7px;
  display:block;
}
.detail-person-content{
  max-width:760px;
}
.detail-person-content .role{
  color:var(--gold);
  font-weight:800;
  font-size:18px;
  margin:0 0 18px;
}
@media(max-width:800px){
  .detail-person-layout{grid-template-columns:1fr;gap:20px}
  .detail-person-photo{max-width:320px;height:360px}
}

/* CMS image contract: uploaded media stays inside responsive containers. */
img{max-width:100%;height:auto}.service-card img{object-fit:cover}.people-grid .person > a > img,.horizontal-cards .person > a > img{width:100%;height:170px;object-fit:cover;object-position:center top}.video-thumb img{width:100%;height:100%;object-fit:cover}.news-image img{width:100%;height:100%;object-fit:cover}.holding-image img{width:100%;max-height:620px;object-fit:cover}.rbw-card img{max-width:220px;max-height:160px;object-fit:contain}.detail-person-photo{width:min(100%,520px);max-height:620px;object-fit:cover}.partner-detail-item img{max-width:180px;max-height:90px;object-fit:contain}

.detail-secondary-image{display:block;width:min(100%,1050px);max-height:360px;object-fit:cover;border:1px solid var(--line);margin:20px 0 30px}.partner-detail-logo{object-fit:contain;background:#091b2e}

/* Detail page back buttons */
.detail-back{
  display:flex;
  width:100%;
  box-sizing:border-box;
  margin:0 0 24px;
}
.detail-back.top{
  justify-content:flex-end;
}
.detail-back.bottom{
  justify-content:flex-end;
  margin:32px 0 0;
}



/* Featured Portfolio - wider carousel area */
#portfolio.feature{
  grid-template-columns:.72fr 1.28fr;
  gap:30px;
}


/* Holding Company image - responsive and fully visible */
#about .holding-image{
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
}

#about .holding-image img{
  width:100%;
  height:230px;
  max-width:100%;
  max-height:230px;
  object-fit:contain;
  object-position:center;
  display:block;
}

/* =========================================================
   FEATURED PORTFOLIO CAROUSEL - FINAL DESIGN
   ========================================================= */

.portfolio-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
  width:100%;
  align-items:stretch;
}

.portfolio-card{
  min-width:0;
  display:grid;
  grid-template-rows:minmax(300px,1fr) auto;
  gap:14px;
}

.portfolio-card .rbw-card{
  width:100%;
  min-width:0;
  min-height:300px;
  height:100%;
  box-sizing:border-box;
  padding:20px;
  display:flex;
  align-items:center;
  gap:14px;
  overflow:hidden;
}

.portfolio-card .rbw-card img{
  flex:0 0 120px;
  width:120px;
  height:150px;
  max-width:120px;
  max-height:150px;
  object-fit:contain;
  object-position:center;
  filter:drop-shadow(0 10px 18px #0009);
}

.portfolio-card .rbw-card > div{
  flex:1 1 0;
  min-width:0;
  width:0;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-self:stretch;
  overflow:visible;
}

.portfolio-card .rbw-card .tag{
  width:100%;
  height:auto;
  display:block;
  margin:0 0 8px;
  font-size:13px;
  line-height:1.2;
  white-space:normal;
  overflow:visible;
  text-overflow:clip;
  word-break:normal;
  overflow-wrap:anywhere;
}

.portfolio-card .rbw-card h3{
  width:100%;
  font-size:24px;
  line-height:1.08;
  margin:0 0 10px;
  white-space:normal;
  overflow:visible;
  word-break:normal;
  overflow-wrap:break-word;
}

.portfolio-card .rbw-card p{
  width:100%;
  margin:0;
  color:#cbd6e2;
  font-size:15px;
  line-height:1.4;
  white-space:normal;
  overflow:visible;
  word-break:normal;
  overflow-wrap:break-word;
}

.portfolio-card .button{
  width:100%;
  min-height:56px;
  margin:0;
  box-sizing:border-box;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  white-space:normal;
  line-height:1.15;
  border-radius:10px;
}

.portfolio-carousel-wrap{
  position:relative;
  width:100%;
  min-width:0;
  padding:0 0 34px;
}

.portfolio-arrow{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  z-index:10;
  width:50px;
  height:50px;
  padding:0;
  border:1px solid rgba(255,255,255,.25);
  border-radius:50%;
  display:none;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  font-size:25px;
  line-height:1;
  background:rgba(7,20,34,.96);
  color:#fff;
  box-shadow:0 8px 24px rgba(0,0,0,.28);
}

.portfolio-arrow:hover{
  transform:translateY(-50%) scale(1.05);
}

.portfolio-prev{
  left:-25px;
}

.portfolio-next{
  right:-25px;
}

.portfolio-dots{
  display:none;
  justify-content:center;
  align-items:center;
  gap:8px;
  margin-top:18px;
}

.portfolio-dot{
  width:8px;
  height:8px;
  padding:0;
  border:0;
  border-radius:50%;
  background:rgba(255,255,255,.35);
  cursor:pointer;
}

.portfolio-dot.active{
  width:26px;
  border-radius:10px;
  background:#c9a35b;
}

@media(max-width:1100px){
  .portfolio-grid{
    grid-template-columns:1fr;
  }

  .portfolio-card .rbw-card{
    min-height:280px;
  }

  .portfolio-card .rbw-card img{
    flex-basis:130px;
    width:130px;
    height:140px;
    max-width:130px;
    max-height:140px;
  }
}

@media(max-width:700px){
  .portfolio-grid{
    grid-template-columns:1fr;
  }

  .portfolio-card{
    grid-template-rows:auto auto;
  }

  .portfolio-card .rbw-card{
    min-height:240px;
    padding:18px;
    gap:14px;
  }

  .portfolio-card .rbw-card img{
    flex:0 0 100px;
    width:100px;
    height:110px;
    max-width:100px;
    max-height:110px;
  }

  .portfolio-card .rbw-card h3{
    font-size:21px;
  }

  .portfolio-card .rbw-card p{
    font-size:14px;
  }

  .portfolio-card .button{
    width:100%;
    margin:0;
  }

  .portfolio-arrow{
    width:42px;
    height:42px;
    font-size:21px;
  }

  .portfolio-prev{
    left:-8px;
  }

  .portfolio-next{
    right:-8px;
  }
}




/* =========================================================
   GLOBAL FRONTEND CARD HOVER / FOCUS
   ========================================================= */

.value-grid article,
.service-card,
.person,
.video-card,
.news-card,
.journey-grid article,
.partner-detail-item,
.portfolio-card .rbw-card{
  transition:
    border-color .2s ease,
    box-shadow .2s ease,
    transform .2s ease;
}

.value-grid article:hover,
.service-card:hover,
.person:hover,
.video-card:hover,
.news-card:hover,
.journey-grid article:hover,
.partner-detail-item:hover,
.portfolio-card .rbw-card:hover,
.value-grid article:focus-within,
.service-card:focus-within,
.person:focus-within,
.video-card:focus-within,
.news-card:focus-within,
.journey-grid article:focus-within,
.partner-detail-item:focus-within,
.portfolio-card .rbw-card:focus-within{
  border-color:var(--gold);
  box-shadow:0 0 0 1px var(--gold), 0 12px 30px rgba(0,0,0,.18);
  transform:translateY(-2px);
}



/* =========================================================
   GLOBAL FRONTEND CARD HOVER / FOCUS - COMPLETE BORDER
   ========================================================= */

.value-grid article,
.service-card,
.person,
.video-card,
.news-card,
.journey-grid article,
.partner-detail-item,
.portfolio-card .rbw-card{
  position:relative;
}

.value-grid article:hover::after,
.service-card:hover::after,
.person:hover::after,
.video-card:hover::after,
.news-card:hover::after,
.journey-grid article:hover::after,
.partner-detail-item:hover::after,
.portfolio-card .rbw-card:hover::after,
.value-grid article:focus-within::after,
.service-card:focus-within::after,
.person:focus-within::after,
.video-card:focus-within::after,
.news-card:focus-within::after,
.journey-grid article:focus-within::after,
.partner-detail-item:focus-within::after,
.portfolio-card .rbw-card:focus-within::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:20;
  pointer-events:none;
  border:2px solid var(--gold);
  border-radius:inherit;
  box-sizing:border-box;
}


/* =========================================================
   GLOBAL CARD CAROUSELS
   Services / Leadership / Videos / Partnerships / Journey / News
   ========================================================= */

.global-carousel-wrap{
  position:relative;
  width:100%;
  min-width:0;
  padding:0 0 34px;
  box-sizing:border-box;
}

.global-carousel-track{
  width:100%;
  min-width:0;
  overflow:hidden;
  box-sizing:border-box;
}

.global-carousel-track > .cards,
.global-carousel-track > .horizontal-cards,
.global-carousel-track > .video-strip,
.global-carousel-track > .partner-row,
.global-carousel-track > .journey-grid,
.global-carousel-track > .news-grid{
  width:100%;
  min-width:0;
  box-sizing:border-box;
}

.global-carousel-arrow{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  z-index:30;
  width:50px;
  height:50px;
  padding:0;
  margin:0;
  border:1px solid rgba(255,255,255,.25);
  border-radius:50%;
  display:none;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  font-family:inherit;
  font-size:25px;
  line-height:1;
  background:rgba(7,20,34,.96);
  color:#fff;
  box-shadow:0 8px 24px rgba(0,0,0,.28);
  box-sizing:border-box;
}

.global-carousel-arrow:hover{
  transform:translateY(-50%) scale(1.05);
  border-color:var(--gold);
  color:var(--gold);
}

.global-carousel-arrow:focus-visible{
  outline:2px solid var(--gold);
  outline-offset:3px;
}

.global-carousel-prev{
  left:-25px;
}

.global-carousel-next{
  right:-25px;
}

.global-carousel-dots{
  position:absolute;
  left:0;
  right:0;
  bottom:4px;
  display:none;
  align-items:center;
  justify-content:center;
  gap:8px;
  height:12px;
}

.global-carousel-dot{
  width:8px;
  height:8px;
  padding:0;
  margin:0;
  border:0;
  border-radius:50%;
  background:rgba(255,255,255,.35);
  cursor:pointer;
  box-sizing:border-box;
}

.global-carousel-dot.active{
  width:26px;
  border-radius:10px;
  background:#c9a35b;
}

.global-carousel-dot:focus-visible{
  outline:2px solid var(--gold);
  outline-offset:3px;
}

/* Keep the carousel card gaps consistent */
.global-carousel-track > .cards,
.global-carousel-track > .horizontal-cards,
.global-carousel-track > .video-strip,
.global-carousel-track > .partner-row,
.global-carousel-track > .journey-grid,
.global-carousel-track > .news-grid{
  gap:18px;
}

/* Two cards visible on desktop */
.global-carousel-track > .cards > *,
.global-carousel-track > .horizontal-cards > *,
.global-carousel-track > .video-strip > *,
.global-carousel-track > .partner-row > *,
.global-carousel-track > .journey-grid > *,
.global-carousel-track > .news-grid > *{
  box-sizing:border-box;
}

/* Mobile: one card visible */
@media(max-width:700px){
  .global-carousel-wrap{
    padding-bottom:32px;
  }

  .global-carousel-arrow{
    width:42px;
    height:42px;
    font-size:21px;
  }

  .global-carousel-prev{
    left:-8px;
  }

  .global-carousel-next{
    right:-8px;
  }
}
/* =========================================================
   GLOBAL CONTENT IMAGE FIT - RESPONSIVE / NO CROPPING
   ========================================================= */

/* Services */
.service-card img{
  width:100%;
  height:100%;
  min-height:118px;
  object-fit:contain !important;
  object-position:center;
  background:#071726;
}

/* Leadership */
.people-grid .person > a > img,
.horizontal-cards .person > a > img{
  width:100%;
  height:170px;
  object-fit:contain !important;
  object-position:center;
  background:#071726;
}

/* Videos */
.video-thumb img{
  width:100%;
  height:100%;
  object-fit:contain !important;
  object-position:center;
  background:#071726;
}

/* News */
.news-image img{
  width:100%;
  height:100%;
  object-fit:contain !important;
  object-position:center;
  background:#071726;
}

/* Detail page images */
.detail-hero-image,
.detail-secondary-image{
  width:min(100%,1050px);
  max-height:480px;
  object-fit:contain !important;
  object-position:center;
  background:#071726;
}

/* Leadership detail photo */
.detail-person-photo{
  width:min(100%,520px);
  max-height:620px;
  object-fit:contain !important;
  object-position:center;
  background:#071726;
}

/* Portfolio detail card */
.detail-card img{
  object-fit:contain !important;
  object-position:center;
}

/* Partnership logos */
.partner-detail-item img,
.partner-detail-logo{
  object-fit:contain !important;
  object-position:center;
}

/* Journey / milestone images */
.journey-grid img{
  object-fit:contain !important;
  object-position:center;
  background:#071726;
}

/* Generic uploaded content images */
.rich img{
  max-width:100%;
  height:auto;
  object-fit:contain;
  object-position:center;
}

/* Never allow normal content images to overflow their container */
.section img{
  max-width:100%;
}


/* Leadership and Latest Videos: hide horizontal scrollbar */
.horizontal-cards,.video-strip{overflow-x:hidden;scrollbar-width:none}
.horizontal-cards::-webkit-scrollbar,.video-strip::-webkit-scrollbar{display:none;width:0;height:0}

/* Footer legal links */
.footer-legal{
  display:flex;
  gap:28px;
  flex-wrap:wrap;
  margin-top:24px;
  padding-top:18px;
  border-top:1px solid rgba(255,255,255,.12);
}

.footer-legal a{
  color:inherit;
  text-decoration:none;
}

.footer-legal a:hover{
  text-decoration:underline;
}

@media (max-width:720px){
  .footer-legal{
    gap:14px 22px;
  }
}

/* Final footer alignment */
footer{
  align-items:start;
}

.footer-links,
.footer-legal{
  align-self:center;
  margin-top:0;
}

.footer-legal{
  padding-top:0;
  border-top:0;
  border-left:1px solid rgba(255,255,255,.12);
  padding-left:28px;
  min-height:22px;
  align-items:center;
}

@media(max-width:1000px){
  .footer-legal{
    border-left:0;
    padding-left:0;
    padding-top:0;
  }
}

/* Global VEGA frontend button interaction feedback */
.button,
.cta,
.play-button,
.detail-back a,
.contact button {
  transition: transform .08s ease, filter .12s ease, box-shadow .12s ease, background-color .12s ease;
  cursor: pointer;
}

.button:hover,
.cta:hover,
.play-button:hover,
.detail-back a:hover,
.contact button:hover {
  filter: brightness(1.12);
  box-shadow: 0 2px 8px rgba(0,0,0,.22);
}

.button:active,
.cta:active,
.play-button:active,
.detail-back a:active,
.contact button:active {
  transform: translateY(2px);
  filter: brightness(.92);
  box-shadow: none;
}

.button:focus-visible,
.cta:focus-visible,
.play-button:focus-visible,
.detail-back a:focus-visible,
.contact button:focus-visible {
  outline: 2px solid var(--gold);
  outline-offset: 2px;
}

.button:disabled,
.cta:disabled,
.contact button:disabled {
  opacity: .55;
  cursor: not-allowed;
  transform: none;
  box-shadow: none;
  filter: none;
}

  to { transform: rotate(360deg); }
}
