:root{
    --bg:#0c0f10;
    --card:#13171a;
    --text:#e9f1ee;
    --muted:#b6c3bf;
    --primary:#7ac943; /* green from logo */
  }
  *{box-sizing:border-box}
  html,body{
    margin:0;
    padding:0;
    background:var(--bg);
    color:var(--text);
    font-family:system-ui,-apple-system,Segoe UI,Roboto,Heebo,Helvetica,Arial,sans-serif;
    line-height:1.5;
  }
  img{max-width:100%;height:auto;display:block}
  a{color:inherit}
  .hero{position:relative}
  .hero-img{
    width:100%;
    height:38vh;
    object-fit:cover;
    filter:brightness(.7);
  }
  .hero-overlay{
    position:absolute;
    inset:0;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:flex-end;
    padding:1rem 1rem 1.5rem;
  }
  .hero-overlay h1{margin:0 0 .25rem 0;font-size:2rem}
  .hero-overlay p{margin:0;color:var(--muted)}
  
  main{padding:1rem;display:grid;gap:1rem}
  .card{
    background:var(--card);
    border-radius:14px;
    padding:1rem;
    box-shadow:0 10px 30px rgba(0,0,0,.2);
  }
  .logo{width:84px;height:84px;border-radius:10px;margin-bottom:.5rem}
  .lead{font-size:1.05rem}
  
  .btn{
    display:inline-block;
    text-align:center;
    border:none;
    border-radius:14px;
    padding:1rem 1.25rem;
    font-weight:700;
    cursor:pointer;
    text-decoration:none;
  }
  .btn-primary{
    background:var(--primary);
    color:#000;
    font-size:1.15rem;
    width:100%;
  }
  .btn-secondary{background:#1d2327;color:var(--text)}
  .btn-tertiary{background:#232a2e;color:var(--text)}
  .sub-cta{display:flex;gap:.5rem;margin-top:.5rem;flex-wrap:wrap}
  .muted{color:var(--muted)}
  
  .gallery h2,.contact h2{font-size:1.25rem;margin:.25rem 0 0.75rem}
  .grid{display:grid;gap:.5rem;grid-template-columns:1fr 1fr}
  ul{list-style:none;margin:0;padding:0}
  li+li{margin-top:.25rem}
  
  footer{padding:2rem 1rem;color:var(--muted);text-align:center}
  
  @media(min-width:900px){
    .hero-img{height:60vh}
    main{max-width:960px;margin:0 auto}
  }
  