/* Homepage activities only: seven capabilities arranged around the SAS hub. */
.sas-activities{
  padding:32px 24px 24px; overflow:hidden; position:relative; isolation:isolate;
  background:transparent;
}
.sas-activities::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:url('../assets/img/panels/panel-room-wide.jpeg') center / cover no-repeat;
  opacity:1;
  pointer-events:none;
}
.sas-activities-heading{ text-align:center; margin:0 auto 20px; }
.sas-activities-heading > span{ font-size:.72rem; font-weight:800; letter-spacing:2.2px; color:#087dbb; }
.sas-activities-heading h2{ color:#092851; font-size:clamp(1.7rem,3vw,2.5rem); margin:8px 0 0; }
.sas-activities-wheel{ position:relative; max-width:1450px; height:940px; margin:auto; }
.sas-activity{
  position:absolute; isolation:isolate; display:block; overflow:hidden;
  border:3px solid var(--activity-color); outline:3px solid white;
  background:#fff; box-shadow:0 8px 20px #12466a24,inset 0 0 0 5px #fff;
  color:#08224c; transition:box-shadow .25s ease;
}
.sas-activity:hover{ color:#08224c; box-shadow:0 12px 30px #12466a45; }
.sas-activity:focus-visible{ outline:4px solid #08224c; outline-offset:5px; }
.sas-activity-photo{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:-2; }
.sas-activity::after{ content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(90deg,#fff 2%,#fffffff5 30%,#ffffffb8 56%,#ffffff08 100%); }
.sas-activity-content{ position:relative; width:68%; padding:90px 22px 20px; }
.sas-activity h3{ font-size:clamp(1.2rem,1.65vw,1.55rem); color:#08224c; font-weight:800; line-height:1.08; margin:0 0 8px; letter-spacing:-.4px; }
.sas-activity p{ color:#173659; font-size:.89rem; line-height:1.5; margin:0; }
.sas-activity-number{ position:absolute; top:12px; left:18px; display:grid; place-items:center; width:70px; height:70px; border:3px solid white; border-radius:50%; background:var(--activity-color); color:white; box-shadow:0 3px 7px #163c6330; font-family:'Barlow Semi Condensed',sans-serif; font-size:2.6rem; font-weight:700; line-height:1; }
.sas-activity-symbol{ position:absolute; top:28px; left:102px; width:52px; height:52px; display:grid; place-items:center; background:var(--activity-color); color:#fff; border:2px solid white; border-radius:50%; font-size:1.6rem; }
.sas-activity-more{ display:inline-flex; gap:7px; align-items:center; font-size:.7rem; font-weight:800; margin-top:12px; color:#173659; }
.sas-activity-more .bi{ color:var(--activity-color); transition:transform .2s; }
.sas-activity:hover .sas-activity-more .bi{ transform:translate(2px,-2px); }
.sas-activity-1{ left:30%; top:0; width:40%; height:29%; border-radius:70px 70px 110px 110px; z-index:2; }
.sas-activity-1 .sas-activity-content{ padding:25px 12px 20px 112px; width:80%; }
.sas-activity-1 .sas-activity-number{ left:12px; top:12px; }
.sas-activity-1 .sas-activity-symbol{ left:24px; top:97px; }
.sas-activity-1 p{ font-size:.85rem; }
.sas-activity-list{ margin:0; padding-left:17px; color:#173659; font-size:.84rem; line-height:1.5; }
.sas-activity-1::after{ background:linear-gradient(90deg,#fff 8%,#fffffff2 52%,#ffffff30); }
.sas-activity-2{ right:0; top:9%; width:31%; height:30%; border-radius:90px 95px 65px 30px; }
.sas-activity-3{ right:0; top:42%; width:31%; height:29%; border-radius:30px 85px 85px 30px; }
.sas-activity-2 .sas-activity-number, .sas-activity-3 .sas-activity-number, .sas-activity-4 .sas-activity-number{ left:auto; right:14px; }
.sas-activity-2 .sas-activity-content, .sas-activity-3 .sas-activity-content{ margin-left:auto; width:76%; padding-right:20px; }
.sas-activity-2 .sas-activity-symbol, .sas-activity-3 .sas-activity-symbol{ left:18px; }
.sas-activity-2::after, .sas-activity-3::after, .sas-activity-4::after{ background:linear-gradient(270deg,#fff 2%,#fffffff5 36%,#ffffffb8 65%,#ffffff08); }
.sas-activity-3 .sas-activity-photo{ object-fit:contain; object-position:left; background:#e3f4d4; width:65%; }
.sas-activity-4{ left:51%; bottom:0; width:47%; height:26%; border-radius:40px 85px 85px 60px; }
.sas-activity-4 .sas-activity-content{ margin-left:auto; width:62%; padding-top:82px; }
.sas-activity-4 .sas-activity-symbol{ left:24px; top:20px; }
.sas-activity-5{ left:2%; bottom:0; width:47%; height:26%; border-radius:85px 40px 60px 85px; }
.sas-activity-5 .sas-activity-content{ width:65%; }
.sas-activity-6{ left:0; top:42%; width:31%; height:29%; border-radius:85px 30px 30px 85px; }
.sas-activity-7{ left:0; top:9%; width:31%; height:30%; border-radius:95px 90px 30px 65px; }
.sas-activity-6 .sas-activity-content, .sas-activity-7 .sas-activity-content{ width:88%; }
.sas-activities-hub{ position:absolute; left:32%; top:31%; width:36%; aspect-ratio:1; z-index:3; border-radius:50%; padding:26px; background:conic-gradient(#079bdc 0deg 49deg,#fff 49deg 53deg,#ff7919 53deg 100deg,#fff 100deg 104deg,#2baf39 104deg 151deg,#fff 151deg 155deg,#ffbe00 155deg 202deg,#fff 202deg 206deg,#f53282 206deg 253deg,#fff 253deg 257deg,#8b33da 257deg 304deg,#fff 304deg 308deg,#ef3043 308deg 355deg,#fff 355deg); border:8px solid #fff; box-shadow:0 8px 28px #3385bd26; }
.sas-activities-globe{ width:100%; height:100%; position:relative; display:grid; place-items:center; overflow:hidden; border:8px solid #f5fbff; border-radius:50%; background:radial-gradient(circle at 40% 30%,#fff,#c8eaff); box-shadow:inset 0 0 0 2px #9bd6f850; }
.sas-activities-globe > .bi{ position:absolute; font-size:clamp(220px,26vw,390px); opacity:.11; color:#399bd1; line-height:1; }
.sas-activities-globe > div{ position:relative; text-align:center; font-family:'Barlow Semi Condensed',sans-serif; font-weight:800; font-size:clamp(1.6rem,2.6vw,2.6rem); line-height:1.08; color:#092851; }
.sas-activities-globe strong{ display:block; color:#0096e5; font-size:clamp(3.3rem,5.6vw,5.4rem); }
.sas-activities-globe strong span{ letter-spacing:-5px; }
.sas-activities-globe b{ display:block; height:6px; width:65px; margin:14px auto 0; background:#0096e5; }
.sas-activities-action{ text-align:center; margin-top:20px; }
.sas-activities-action a{ display:inline-flex; align-items:center; gap:12px; min-height:44px; font-size:.85rem; font-weight:700; color:#075f95; border-bottom:1px solid #84bddb; }
.sas-activities-wheel{ width:1450px; height:840px; max-width:none; zoom:var(--activities-scale,.9); }
.sas-activity h3{ font-size:1.55rem; }
.sas-activities-globe > .bi{ font-size:390px; }
.sas-activities-globe > div{ font-size:2.6rem; }
.sas-activities-globe strong{ font-size:5.4rem; }
@media(max-width:767.98px){
  .sas-activities{ padding:24px 12px; }
  .sas-activities-heading{ margin-bottom:16px; }
  .sas-activities-heading h2{ font-size:1.4rem; }
  .sas-activities-action{ margin-top:12px; }
}
@media(prefers-reduced-motion:reduce){ .sas-activity,.sas-activity-more .bi{ transition:none; } }

/* A shallower diagram, fitted to the available width by activities.js. */
.sas-activities{ padding-block:16px; }
.sas-activities-heading{ margin-bottom:14px; }
.sas-activities-heading h2{ font-size:clamp(1.4rem,2.3vw,2rem); }
.sas-activities-action{ margin-top:8px; }
.sas-activity-content{ padding-top:76px; padding-bottom:12px; }
.sas-activity-number{ width:58px; height:58px; font-size:2.2rem; }
.sas-activity-symbol{ width:44px; height:44px; top:22px; left:88px; font-size:1.4rem; }
.sas-activity-1 .sas-activity-content{ padding:16px 12px 12px 95px; width:88%; }
.sas-activity-1 .sas-activity-symbol{ top:83px; }
.sas-activity-4 .sas-activity-content{ padding-top:68px; }
.sas-activity-5 .sas-activity-content{ padding-top:76px; }
.sas-activity-more{ margin-top:8px; }
.sas-activities-hub{ width:30%; left:35%; top:32%; padding:20px; }
.sas-activities-globe > div{ font-size:2.2rem; }
.sas-activities-globe strong{ font-size:4.7rem; }

/* Motion stays within this diagram and preserves the responsive layout. */
.sas-activity-1{ --entry-delay:0s; }
.sas-activity-2{ --entry-delay:.1s; }
.sas-activity-3{ --entry-delay:.2s; }
.sas-activity-4{ --entry-delay:.3s; }
.sas-activity-5{ --entry-delay:.4s; }
.sas-activity-6{ --entry-delay:.5s; }
.sas-activity-7{ --entry-delay:.6s; }
@media (prefers-reduced-motion:no-preference){
  .activities-motion-ready:not(.activities-in-view) .sas-activity,
  .activities-motion-ready:not(.activities-in-view) .sas-activities-hub{ opacity:0; }
  .activities-in-view .sas-activity{
    animation:sasActivityEntrance .7s cubic-bezier(.22,1,.36,1) var(--entry-delay) backwards;
    transition:transform .3s ease,box-shadow .3s ease;
  }
  .activities-in-view .sas-activities-hub{
    animation:sasActivityEntrance .9s cubic-bezier(.22,1,.36,1) backwards,
      sasGlobeFloat 5s ease-in-out .9s infinite;
  }
  .sas-activity-symbol .bi{ transition:transform .4s ease; }
  @media (hover:hover){
    .activities-in-view .sas-activity:hover{ transform:translateY(-5px); }
    .sas-activity:hover .sas-activity-symbol .bi{ transform:rotate(15deg); }
  }
}
@keyframes sasActivityEntrance{
  from{ opacity:0; transform:translateY(18px) scale(.96); }
  to{ opacity:1; transform:translateY(0) scale(1); }
}
@keyframes sasGlobeFloat{
  0%,100%{ transform:translateY(0); }
  50%{ transform:translateY(-6px); }
}

/* Strengthen text while preserving the original diagram at every size. */
.sas-activity p,
.sas-activity-list{ font-weight:700; font-size:1rem; line-height:1.35; }
.sas-activity-1 p{ font-size:1rem; }
.sas-activity h3,
.sas-activity-more{ font-weight:900; }
.sas-activity h3{ font-size:1.85rem; }
.sas-activity-more{ font-size:.875rem; }
