@font-face{
    font-family:'Nunito Sans';
    font-style:normal;
    font-weight:300 900;
    font-display:swap;
    src:url(nunito-sans.woff2) format('woff2');
  }
  
  :root{
    --ground:#ffffff;
    --ground-2:#f2f3f6;
    --card:#f7f8fa;
    --ink:#575756;
    --gold:#3d5c93;
    --gold-soft:#28265c;
    --rust:#28265c;--cta-hover:#3d5c93;
    --line:#e3e3e3;
    --muted:#7a7a79;--navy:#28265c;--on-navy:#c9c7de;

    --joey:#ba6228;
    --cub:#ffc62e;
    --scout:#0cae4b;
    --venturer:#a22237;
    --rover:#de2a26;

    --font-display:'Nunito Sans',Arial,sans-serif;
    --font-body:'Nunito Sans',Arial,sans-serif;
    --font-mono:'Nunito Sans',Arial,sans-serif;

    --maxw:720px;
  }
  @media (prefers-color-scheme: dark){
    :root{
      --ground:#17162e; --ground-2:#201f45; --card:#201f45; --ink:#e7e5f2;
      --gold:#93b1e6; --gold-soft:#b9c6e8; --rust:#3d5c93;--cta-hover:#5878ad; --line:#34335f; --muted:#b3b0d0;
    }
  }
  :root[data-theme="dark"]{
    --ground:#17162e; --ground-2:#201f45; --card:#201f45; --ink:#e7e5f2;
    --gold:#93b1e6; --gold-soft:#b9c6e8; --rust:#3d5c93;--cta-hover:#5878ad; --line:#34335f; --muted:#b3b0d0;
  }
  :root[data-theme="light"]{
    --ground:#ffffff; --ground-2:#f2f3f6; --card:#f7f8fa; --ink:#575756;
    --gold:#3d5c93; --gold-soft:#28265c; --rust:#28265c;--cta-hover:#3d5c93; --line:#e3e3e3; --muted:#7a7a79;--navy:#28265c;--on-navy:#c9c7de;
  }

  *{box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  @media (prefers-reduced-motion: reduce){ html{scroll-behavior:auto;} }
  body{
    margin:0;
    background:var(--ground);
    color:var(--ink);
    font-family:var(--font-body);
    font-size:17px;
    line-height:1.65;
    -webkit-text-size-adjust:100%;
    overflow-x:hidden;
  }
  a{color:var(--gold-soft);}
  :root[data-theme="dark"] a{color:var(--gold);}
  @media (prefers-color-scheme: dark){ :root:not([data-theme="light"]) a{color:var(--gold);} }
  img{max-width:100%;display:block;}

  .back-link{
    display:block;
    max-width:var(--maxw);
    margin:0 auto;
    padding:.9rem 1.1rem 0;
    font-family:var(--font-mono);
    font-size:.78rem;
    letter-spacing:.03em;
  }
  .back-link a{text-decoration:none;color:var(--muted);}
  .back-link a:hover{color:var(--gold-soft);}

  .masthead{
    background:var(--navy);
    color:var(--on-navy);
    padding:1.3rem 1.25rem 1.2rem;
    text-align:center;
    border-bottom:6px solid var(--gold);
    margin-top:1.1rem;
  }
  .masthead .kicker{
    font-family:var(--font-mono);
    font-size:.72rem;
    letter-spacing:.14em;
    text-transform:uppercase;
    color:var(--gold);
    margin:0 0 .6rem;
  }
  .masthead h1{
    margin:.2rem 0 .35rem;
    font-family:var(--font-display);
    font-size:clamp(1.5rem,5.5vw,2.15rem);
    letter-spacing:.02em;
    font-weight:900;
    text-wrap:balance;
    color:#fff;
  }
  .masthead .tag{
    color:var(--on-navy);
    font-family:var(--font-body);
    font-style:italic;
    font-size:1.02rem;
    font-weight:400;
    margin:0 0 .7rem;
  }
  .masthead .meta{
    font-family:var(--font-mono);
    font-size:.78rem;
    color:var(--on-navy);
    letter-spacing:.04em;
  }

  main{
    max-width:var(--maxw);
    margin:0 auto;
    padding:0 1.1rem;
  }

  .intro{
    padding:1.8rem 0 .4rem;
    color:var(--muted);
    font-size:1.05rem;
  }

  section{
    padding:1.8rem 0;
    border-bottom:1px solid var(--line);
    scroll-margin-top:1rem;
  }
  section:last-of-type{border-bottom:none;}

  .eyebrow{
    display:inline-block;
    font-family:var(--font-mono);
    font-size:.7rem;
    font-weight:600;
    letter-spacing:.1em;
    text-transform:uppercase;
    color:var(--gold-soft);
    background:var(--ground-2);
    border:1px solid var(--line);
    border-radius:2px;
    padding:.28rem .6rem;
    margin-bottom:.8rem;
  }
  .accent-bar{
    height:5px;
    width:56px;
    border-radius:3px;
    margin-bottom:.9rem;
  }
  .joey .accent-bar{background:var(--joey);}
  .cub .accent-bar{background:var(--cub);}
  .scout .accent-bar{background:var(--scout);}
  .venturer .accent-bar{background:var(--venturer);}
  .rover .accent-bar{background:var(--rover);}
  .gold .accent-bar{background:var(--gold);}

  h2.section-title{
    margin:.1rem 0 1rem;
    font-family:var(--font-display);
    font-size:clamp(1.25rem,4.2vw,1.55rem);
    font-weight:900;
    color:var(--navy);
    letter-spacing:.005em;
    text-wrap:balance;
  }
  h3{
    font-family:var(--font-display);
    font-size:.98rem;
    font-weight:700;
    color:var(--navy);
    letter-spacing:.01em;
    margin:1.2rem 0 .4rem;
  }
  p{margin:.6rem 0;}
  ul{margin:.6rem 0;padding-left:1.3rem;}
  li{margin:.3rem 0;}

  .callout{
    background:var(--card);
    border:1px solid var(--gold);
    border-radius:10px;
    padding:1rem 1.1rem;
    margin:1rem 0;
  }
  .callout p{margin:.4rem 0;}
  .callout strong{color:var(--gold-soft);}

  .cta-btn{
    display:inline-block;
    background:var(--rust);
    color:#ffffff !important;
    font-family:var(--font-display);
    font-weight:700;
    text-decoration:none;
    text-transform:uppercase;
    letter-spacing:.03em;
    padding:.7rem 1.3rem;
    border-radius:3px;
    margin-top:.6rem;
    font-size:.85rem;
  }
  .cta-btn:hover{background:var(--cta-hover);}
  .cta-btn:focus-visible, a:focus-visible{
    outline:2px solid var(--gold);
    outline-offset:2px;
  }

  .award-highlight{
    background:var(--ground-2);
    border-left:3px solid var(--gold);
    border-radius:2px;
    padding:1rem 1.15rem;
    margin-top:1rem;
    box-shadow:0 2px 6px rgba(0,0,0,.06);
  }
  .award-highlight .ah-title{
    font-family:var(--font-mono);
    font-size:.7rem;
    font-weight:600;
    letter-spacing:.1em;
    text-transform:uppercase;
    color:var(--gold-soft);
    margin-bottom:.4rem;
  }
  .award-highlight p{margin:.35rem 0;font-size:.94rem;}

  footer{
    background:var(--navy);
    color:var(--on-navy);
    text-align:center;
    padding:1.4rem 1.25rem 1.8rem;
    margin-top:1.5rem;
  }
  footer p{color:var(--on-navy);font-size:.86rem;margin:.3rem 0;}
  footer a{color:var(--on-navy);font-weight:700;text-decoration:none;}

  @media (min-width:600px){
    section{padding:2.2rem 0;}
    body{font-size:17.5px;}
  }

/* Replacements for former inline style="" attributes (blocked by the site's Content-Security-Policy) */
.u-mt-09{margin-top:.9rem !important;}
.u-mt-07{margin-top:.7rem !important;}
.u-mt-1{margin-top:1rem !important;}
.u-ml-0{margin-left:0 !important;}
.hit-pixel{position:absolute !important;visibility:hidden !important;}
