:root{
  --green:#00703c;
  --green-dark:#005a30;
  --yellow:#ffdd00;
  --ink:#0b0c0c;
  --muted:#505a5f;
  --line:#b1b4b6;
  --paper:#ffffff;
  --surface:#f3f2f1;
  --focus:#ffdd00;
  --sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;
  min-height:100vh;
  background:var(--surface);
  color:var(--ink);
  font-family:var(--sans);
  font-size:1.0625rem;
  line-height:1.5;
  display:flex;
  flex-direction:column;
}
main{flex:1}
a{color:var(--green-dark)}
a:focus-visible{
  outline:3px solid var(--focus);
  outline-offset:2px;
  box-shadow:0 0 0 1px var(--ink);
}

.wrap{
  box-sizing:border-box;
  max-width:48rem;
  margin:0 auto;
  padding:1.5rem 1.25rem 3rem;
}

.hero{
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
  gap:1.25rem;
  padding:1rem 0 1.75rem;
  border-bottom:4px solid var(--yellow);
}
.logo{width:140px;height:auto;display:block}
.eyebrow{
  margin:0 0 .25rem;
  font-size:.8125rem;
  letter-spacing:.2em;
  text-transform:uppercase;
  color:var(--green);
  font-weight:700;
}
.hero h1{
  margin:0;
  font-size:clamp(1.75rem,5vw,2.5rem);
  line-height:1.15;
  color:var(--ink);
}
.tagline{margin:.5rem 0 0;color:var(--muted);font-size:1.0625rem}

.agenda-cta{margin:1.5rem 0 0}
.btn{
  display:block;
  padding:.85rem 1.25rem;
  background:var(--green);
  color:#fff;
  border:2px solid var(--green);
  box-shadow:0 2px 0 var(--green-dark);
  font-weight:700;
  font-size:1.125rem;
  text-align:center;
  text-decoration:none;
}
.btn:hover{background:var(--green-dark);border-color:var(--green-dark)}
@media (min-width:640px){.btn{display:inline-block;text-align:left}}

.apps{
  list-style:none;
  padding:0;
  margin:1.5rem 0 0;
  display:grid;
  gap:1rem;
}
.apps li{
  background:var(--paper);
  padding:1rem 1.25rem;
  border:1px solid var(--line);
  border-left:4px solid var(--green);
}
.apps a{
  display:inline-block;
  color:var(--green-dark);
  font-weight:700;
  text-decoration:none;
  font-size:1.125rem;
}
.apps a:hover{text-decoration:underline}
.apps p{margin:.25rem 0 0;color:var(--muted);font-size:.9375rem}
.empty{margin:1.5rem 0 0;color:var(--muted);font-style:italic}

@media (min-width:640px){
  .hero{
    flex-direction:row;
    text-align:left;
    align-items:center;
    gap:1.75rem;
  }
  .hero-text{flex:1}
  .logo{width:170px}
}

.gdd-footer{
  background:linear-gradient(to right, #3b464b 0%, #3b464b 100%);
  padding:1.5rem 1rem;
  display:flex;
  justify-content:center;
  align-items:center;
}
.gdd-badge{display:block;max-width:220px;width:100%;height:auto}
