
  :root{
    --night:#0D1330;
    --night-2:#151D42;
    --gilt:#C8A44B;
    --gilt-dim:#8A7334;
    --parchment:#E9E4D6;
    --muted:#9199BE;
    --rule:#28315C;
    --measure:34rem;
  }
  *{box-sizing:border-box}
  html{-webkit-text-size-adjust:100%}
  body{
    margin:0;
    background:var(--night);
    color:var(--parchment);
    font-family:"Gentium Book Plus",Georgia,serif;
    font-size:1.0625rem;
    line-height:1.72;
  }
  .wrap{max-width:62rem;margin:0 auto;padding:0 2rem}
  @media (max-width:40rem){ .wrap{padding:0 1.35rem} }

  a{color:var(--gilt);text-decoration:none;border-bottom:1px solid var(--gilt-dim);padding-bottom:1px}
  a:hover{border-bottom-color:var(--gilt)}
  a:focus-visible{outline:2px solid var(--gilt);outline-offset:3px;border-radius:2px}

  /* trademark mark: borrow the serif glyph, set it as a true superscript */
  .tm{
    font-family:"Gentium Book Plus",Georgia,serif;
    font-size:.58em;
    vertical-align:.42em;
    letter-spacing:.02em;
  }

  /* ---- masthead ---- */
  .masthead{padding:2.25rem 0 0;display:flex;align-items:baseline;gap:.75rem}
  .masthead .name{
    font-size:1rem;letter-spacing:.01em;color:var(--parchment);
    border:0;
  }
  .masthead .inc{font-size:.9rem;color:var(--muted);font-style:italic}

  /* ---- hero ---- */
  .hero{padding:5.5rem 0 5rem;text-align:center}
  .seal{width:92px;height:92px;margin:0 auto 2.75rem;display:block}
  .verse{
    font-size:clamp(1.65rem,4.6vw,2.9rem);
    line-height:1.3;
    margin:0 auto;
    max-width:21ch;
    font-weight:400;
  }
  .verse .shut{color:var(--gilt)}
  .cite{
    margin:1.6rem 0 0;font-size:.95rem;color:var(--muted);
    font-family:"Public Sans",system-ui,sans-serif;
  }
  .stand{
    margin:3.25rem auto 0;max-width:var(--measure);
    font-size:1.1875rem;color:var(--parchment);
  }

  /* ---- rule ---- */
  .hr{height:1px;background:var(--rule);border:0;margin:0}

  /* ---- apps ---- */
  .apps{padding:4.5rem 0 1rem}
  .app{padding:0 0 4.25rem;max-width:var(--measure)}
  .app h2{
    font-size:1.85rem;font-weight:700;margin:0 0 .35rem;letter-spacing:-.005em;
  }
  /* ---- app links under the masthead ---- */
  .appnav{
    display:flex;flex-wrap:wrap;gap:.4rem 1.35rem;padding:1.1rem 0 0;
    font-family:"Public Sans",system-ui,sans-serif;font-size:.9rem;
  }
  .appnav a{color:var(--muted);border-bottom:0;padding-bottom:0}
  .appnav a:hover{color:var(--parchment)}

  /* ---- Read more toggle ---- */
  .more{margin:0 0 1.15rem}
  .more summary{
    cursor:pointer;list-style:none;display:inline-block;color:var(--gilt);
    font-family:"Public Sans",system-ui,sans-serif;font-size:.9rem;
  }
  .more summary::-webkit-details-marker{display:none}
  .more summary:focus-visible{outline:2px solid var(--gilt);outline-offset:3px;border-radius:2px}
  .more .less, .more[open] .read{display:none}
  .more[open] .less{display:inline}
  .more[open] summary{margin-bottom:1.15rem}

  .app h2 a{color:inherit;border-bottom-color:var(--gilt-dim)}
  .app h2 a:hover{border-bottom-color:var(--gilt)}
  .app .what{color:var(--muted);font-style:italic;margin:0 0 1.15rem}
  .app p{margin:0 0 1.15rem}
  .plain{margin:0;padding:0;list-style:none}
  .plain li{
    padding-left:1.4rem;position:relative;margin:0 0 .4rem;color:var(--parchment);
  }
  .plain li::before{
    content:"";position:absolute;left:0;top:.72em;
    width:.5rem;height:1px;background:var(--gilt-dim);
  }
  .soon{
    display:inline-block;font-family:"Public Sans",system-ui,sans-serif;
    font-size:.8125rem;color:var(--night);background:var(--gilt);
    padding:.1rem .5rem;border-radius:2px;vertical-align:.22em;margin-left:.5rem;
    font-weight:500;
  }

  /* ---- about ---- */
  .about{padding:4.5rem 0}
  .about h2, .give h2, .contact h2{
    font-size:1.35rem;margin:0 0 1rem;font-weight:700;
  }
  .about p, .give p, .contact p{max-width:var(--measure);margin:0 0 1.15rem}

  .board{
    max-width:var(--measure);margin:1.5rem 0 0;padding:0;list-style:none;
    color:var(--muted);font-size:1rem;
  }
  .board li{margin:0 0 1rem}
  .board .bio{display:block;margin-top:.2rem}
  .board .role{color:var(--parchment)}

  /* ---- give ---- */
  .give{padding:4.5rem 0;background:var(--night-2)}
  .tax-status{
    max-width:var(--measure);font-size:.95rem;color:var(--muted);
    border-left:2px solid var(--gilt-dim);padding-left:1.1rem;margin:1.75rem 0 0;
  }
  .tax-status h2, .tax-status dt{color:var(--parchment)}
  .tax-status dl{margin:1rem 0}
  .tax-status dt{font-weight:700}
  .tax-status dd{margin:0 0 .75rem}

  /* ---- contact / footer ---- */
  .contact{padding:4.5rem 0 1rem}
  footer{
    padding:2.5rem 0 3.5rem;color:var(--muted);font-size:.9rem;
    font-family:"Public Sans",system-ui,sans-serif;line-height:1.6;
  }
  footer p{margin:0 0 .3rem;max-width:44rem}

  /* ---- one motion moment: the seal presses, the verse settles ---- */
  @media (prefers-reduced-motion:no-preference){
    .seal{animation:press .9s cubic-bezier(.22,1,.36,1) both}
    .verse{animation:settle .9s .25s cubic-bezier(.22,1,.36,1) both}
    .cite,.stand{animation:settle .9s .45s cubic-bezier(.22,1,.36,1) both}
    @keyframes press{
      from{opacity:0;transform:scale(1.22)}
      to{opacity:1;transform:scale(1)}
    }
    @keyframes settle{
      from{opacity:0;transform:translateY(.5rem)}
      to{opacity:1;transform:none}
    }
  }

/* Shared navigation and compact page layout. */
[hidden]{display:none!important}
.skip{position:absolute;left:1rem;top:-5rem;z-index:5;background:var(--night);padding:.75rem}
.skip:focus{top:1rem}
.site-header{border-bottom:1px solid var(--rule)}
.header-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.1rem 0}
.brand{border:0;color:var(--parchment);line-height:1.3;font-size:1.1rem}
.brand small{display:block;color:var(--muted);font-size:.8rem;margin-top:.25rem}
.site-nav{display:flex;gap:.5rem;flex-wrap:wrap;padding-bottom:1rem;font-family:"Public Sans",system-ui,sans-serif;font-size:.9rem}
.site-nav a{display:flex;align-items:center;min-height:44px;padding:.5rem .85rem;border:0;border-radius:4px;color:var(--parchment)}
.site-nav a:hover,.site-nav a[aria-current="page"]{background:var(--night-2);color:var(--gilt)}
.menu-toggle{display:none;align-items:center;gap:.5rem;min-height:44px;padding:.6rem .75rem;border:1px solid var(--rule);border-radius:4px;background:var(--night-2);color:var(--parchment);font:inherit;cursor:pointer}
.menu-icon{width:18px;height:14px;border-top:2px solid currentColor;border-bottom:2px solid currentColor;position:relative}
.menu-icon:after{content:"";position:absolute;left:0;right:0;top:5px;border-top:2px solid currentColor}
button:focus-visible,summary:focus-visible{outline:2px solid var(--gilt);outline-offset:4px}
.hero{padding:3rem 0 2.5rem}
.seal{width:64px;height:64px;margin-bottom:1.5rem}
.stand{margin-top:1.75rem}
.home-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;padding-bottom:2.5rem}
.home-link{display:block;border:1px solid var(--rule);border-radius:8px;padding:1.1rem;background:var(--night-2)}
.home-link strong{display:block;font-size:1.25rem}
.home-link span{display:block;color:var(--parchment);font-size:1rem;line-height:1.5;margin-top:.35rem}
.page-title{font-size:2.1rem;line-height:1.2;margin:0 0 1.5rem}
.apps,.about,.give{padding:2.5rem 0}
.apps-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem;align-items:start}
.app{padding:1.25rem;border:1px solid var(--rule);border-radius:8px;min-width:0}
.app h2{font-size:1.5rem;line-height:1.4}
.soon{margin:.5rem 0;display:table;font-size:.75rem}
.more summary{padding:.6rem 0;min-height:44px}
.contact{padding:1.5rem 0 .5rem}
footer{border-top:1px solid var(--rule);padding:1.5rem 0 2rem}
footer a{display:inline-block;min-height:44px;padding-top:.5rem}
p,a{overflow-wrap:anywhere}
@media(max-width:40rem){
 .wrap{padding:0 1rem}
 .js .menu-toggle{display:inline-flex}
 .js .site-nav:not(.is-open){display:none}
 .site-nav{flex-direction:column;gap:.25rem}
 .site-nav a{padding:.65rem .85rem}
 .hero{padding:2rem 0}
 .verse{font-size:1.85rem}
 .stand{font-size:1.0625rem}
 .home-links,.apps-grid{grid-template-columns:1fr}
 .home-links{gap:.65rem}
 .app{padding:1rem}
 .apps,.about,.give{padding:1.75rem 0}
}
