/* Dartmouth palette: communications.dartmouth.edu/guides-and-tools/design-guidelines/dartmouth-colors */
:root{
  --dartmouth-green:#00693e;
  --forest-green:#12312b;
  --rich-forest:#0d1e1c;
  --spring-green:#c4dd88;
  --rich-spring:#a5d75f;
  --autumn-brown:#643c20;
  --bonfire-orange:#ffa00f;
  --granite:#424141;
  --gray-1:#f7f7f7;
  --gray-2:#e2e2e2;
  --gray-3:#707070;

  /* Dartmouth Ruzicka / National 2 are licensed fonts and are not bundled here.
     They are used if installed on the visitor's device; otherwise the Dartmouth-recommended fallbacks apply. */
  --serif:"Dartmouth Ruzicka",Georgia,serif;
  --sans:"National 2",Aptos,Arial,sans-serif;
}
*{box-sizing:border-box}
body{margin:0;font:18px/1.65 var(--sans);color:var(--granite);background:var(--gray-1)}
h1,h2,h3{font-family:var(--serif);font-weight:700}
header{background:var(--dartmouth-green);color:#fff;padding:3.5rem 1.5rem;text-align:center;border-bottom:6px solid var(--spring-green)}
header h1{margin:0;font-size:2.6rem;line-height:1.15}
header p{margin:.6rem 0 0;font-size:1.1rem;color:var(--spring-green)}
nav{background:var(--forest-green);text-align:center;padding:.7rem}
nav a{color:#fff;margin:0 .9rem;text-decoration:none;font-weight:500}
nav a:hover,nav a:focus{color:var(--spring-green);text-decoration:underline}
main{max-width:46rem;margin:0 auto;padding:2rem 1.5rem}
h2{color:var(--dartmouth-green);font-size:1.7rem;margin-top:2.2rem;border-bottom:2px solid var(--spring-green);padding-bottom:.25rem}
a{color:var(--dartmouth-green)}
a:hover{color:var(--autumn-brown)}
li::marker{color:var(--dartmouth-green)}
.slideshow{position:relative;margin:0 0 1.5rem;background:var(--rich-forest);border-radius:6px;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,.2)}
.slides{position:relative;aspect-ratio:3/2}
.slide{position:absolute;inset:0;margin:0;opacity:0;transition:opacity .4s;pointer-events:none}
.slide.active{opacity:1;pointer-events:auto}
.slide img{width:100%;height:100%;object-fit:cover;display:block}
.slide-btn{position:absolute;top:50%;transform:translateY(-50%);width:2.6rem;height:2.6rem;border:0;border-radius:50%;background:rgba(13,30,28,.65);color:#fff;font-size:1.5rem;line-height:1;cursor:pointer}
.slide-btn:hover,.slide-btn:focus-visible{background:var(--dartmouth-green)}
.slide-btn.prev{left:.6rem}
.slide-btn.next{right:.6rem}
.dots{position:absolute;bottom:.6rem;left:0;right:0;display:flex;justify-content:center;gap:.5rem}
.dots button{width:.7rem;height:.7rem;padding:0;border:0;border-radius:50%;background:rgba(255,255,255,.55);cursor:pointer}
.dots button[aria-current="true"]{background:var(--spring-green)}
footer{background:var(--rich-forest);padding:1.5rem;text-align:center;font-size:.85rem;color:var(--gray-2)}
