/* C08 Content Group: reusable informational panels. No JavaScript required. */
@layer components {
 .c08 { margin-block:3rem; color:inherit; min-inline-size:0; scroll-margin-block-start:6rem; }
 .c08__inner { inline-size:min(calc(100% - 3rem),66.25rem); margin-inline:auto; }
 .c08__heading { margin-block:0 1rem; }
 .c08__intro { margin-block-end:1.5rem; }
 .c08__panels { display:grid; gap:1.5rem; padding:0; margin:0; list-style:none; }
 .c08__panel { min-inline-size:0; overflow-wrap:anywhere; }
 .c08__panel-heading { margin-block:0 1rem; }
 .c08__body > :first-child, .c08__intro > :first-child { margin-block-start:0; }
 .c08__body > :last-child, .c08__intro > :last-child { margin-block-end:0; }
 .c08--cards .c08__panel {
  padding:clamp(1.25rem,3vw,2rem);
  border:1px solid currentColor;
  border-color:color-mix(in srgb,currentColor 18%,transparent);
  border-radius:.5rem;
  background:color-mix(in srgb,currentColor 5%,transparent);
 }
 .c08__body a:focus-visible, .c08__intro a:focus-visible {
  outline:3px solid currentColor; outline-offset:4px;
 }
 @media (min-width:48rem) {
  .c08--cards .c08__panels { grid-template-columns:repeat(2,minmax(0,1fr)); }
 }
 @media (forced-colors:active) {
  .c08--cards .c08__panel { border-color:CanvasText; }
 }
}

@layer components {
 .c08--theme-light {
  background:rgb(var(--white, 255,255,255));
  color:rgb(var(--longwood-blue, 0,33,71));
  padding-block:clamp(2rem,4vw,4rem);
 }
 .c08--theme-dark {
  background:rgb(var(--longwood-blue, 0,33,71));
  color:rgb(var(--white, 255,255,255));
  padding-block:clamp(2rem,4vw,4rem);
 }
 .c08:is(.c08--theme-light,.c08--theme-dark) :is(.c08__heading,.c08__panel-heading) {
  color:inherit;
 }
 .c08--theme-light :is(.c08__body,.c08__intro) a {
  color:rgb(var(--secondary-blue, 0,102,153));
 }
 .c08--theme-dark :is(.c08__body,.c08__intro) a {
  color:rgb(var(--secondary-blue-tert-2, 153,214,234));
 }
}

@layer components {
 .c08.c08--has-background {
  position: relative;
  isolation: isolate;
  padding-block: 0;
  color: rgb(var(--longwood-blue, 0,33,71));
 }
 .c08--has-background .c08__background {
  position: absolute;
  inset: 0;
  z-index: -1;
  inline-size: 100%;
  block-size: 100%;
  object-fit: cover;
 }
 .c08--has-background .c08__inner {
  box-sizing: border-box;
  inline-size: 100%;
  padding: clamp(1.5rem, 4vw, 4rem);
  background: rgba(var(--white, 255,255,255), 0.90);
 }
 .c08--has-background.c08--theme-dark {
  color: rgb(var(--white, 255,255,255));
 }
 .c08--has-background.c08--theme-dark .c08__inner {
  background: rgba(var(--longwood-blue, 0,33,71), 0.94);
 }
 @media (min-width: 56rem) {
  .c08--split-background.c08--has-background .c08__inner {
   inline-size: 50%;
   margin-inline: auto 0;
  }
 }
}
