/* Activity links share the existing menu's typography and keyboard focus styles. */
.ao-site .ao-content .ao-about-activities { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; width:100%; max-width:none; margin:36px 0 16px; }
.ao-site .ao-about-activities .ao-about-activity-card { display:flex; flex-direction:column; gap:18px; padding:clamp(24px,3vw,40px); background:var(--ao-sky,#c2dcff); color:var(--ao-blue); border:1px solid transparent; border-radius:24px; text-decoration:none; }
.ao-site .ao-about-activities .ao-about-activity-card:nth-child(2) { background:#e8f1ff; }
.ao-site .ao-about-activity-card h2 { margin:0; font-size:clamp(28px,3vw,40px); line-height:1.16; }
.ao-site .ao-about-activity-card p { margin:0; max-width:48ch; }
.ao-site .ao-about-activity-action { display:flex; justify-content:space-between; gap:20px; margin-top:auto; padding-top:8px; text-decoration:underline; text-underline-offset:5px; }
.ao-site .ao-about-activity-card:is(:hover,:focus-visible) { border-color:var(--ao-blue); }
.ao-site .ao-about-activity-card:focus-visible { outline:2px solid var(--ao-blue); outline-offset:4px; }
@media(max-width:600px) { .ao-site .ao-content .ao-about-activities { grid-template-columns:minmax(0,1fr); gap:16px; margin-top:28px; } }
.ao-menu > li { position: relative; }
.ao-site .ao-menu .sub-menu {
  display: none;
  position: absolute;
  z-index: 30;
  inset: 100% auto auto 0;
  min-width: 230px;
  margin: 0;
  padding: 12px;
  list-style: none;
  background: var(--ao-sky, #c2dcff);
  border: 1px solid rgba(20,68,180,.22);
  border-radius: 16px;
}
.ao-site .ao-header .ao-menu .sub-menu a { display: block; padding: 12px 14px; min-height:44px; white-space:normal; border:0; border-radius:12px; font-size:12px; line-height:1.5; background:transparent; }
.ao-site .ao-header .ao-menu .sub-menu a:is(:hover,:focus-visible,[aria-current="page"]),
.ao-site .ao-header .ao-menu .sub-menu .current-menu-item>a { background:rgba(255,255,255,.42); color:var(--ao-blue); border:0; }
.ao-site .ao-header .ao-menu .sub-menu a::after { content:none; }
.ao-site .ao-menu > li:hover > .sub-menu,
.ao-site .ao-menu > li:focus-within > .sub-menu { display: block; }
@media (max-width: 760px), (hover: none) {
  .ao-site .ao-menu .sub-menu {
    display: block;
    position: static;
    min-width: 0;
    margin: 5px 0 12px 18px;
    padding: 2px 0 2px 12px;
    border: 0;
    border-left: 1px solid rgba(20,68,180,.38);
    border-radius: 0;
  }
  .ao-site .ao-header .ao-menu .sub-menu a { font-family:var(--ao-display); font-size:clamp(18px,4.8vw,22px); font-weight:400; padding:10px 12px; }
}
