    :root{
      --bg:#f6f7f3;
      --card:#ffffff;
      --text:#142018;
      --muted:#4a5a52;
      --border:#e6ebe6;
      --brand:#339966; /* kan ændres */
      --shadow: 0 18px 55px rgba(16, 24, 20, .10);
      --shadow-soft: 0 10px 24px rgba(16, 24, 20, .08);
      --radius: 18px;
      --radius-lg: 26px;
      --max: 1040px;
    }
    *{box-sizing:border-box}
    html,body{margin:0;padding:0}
    body{
      font-family: ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,Helvetica,Arial;
      background: radial-gradient(1200px 600px at 20% -10%, rgba(51,153,102,.18), transparent 55%),
                  radial-gradient(1100px 620px at 90% 0%, rgba(20,32,24,.10), transparent 60%),
                  var(--bg);
      color:var(--text);
      line-height:1.55;
    }
    a{color:inherit}
    .wrap{max-width:var(--max); margin:0 auto; padding:28px 16px 60px}
    .topbar{
      display:flex; align-items:center; justify-content:space-between;
      gap:14px; padding:10px 14px;
      border:1px solid var(--border); border-radius:999px;
      background:rgba(255,255,255,.70); backdrop-filter:saturate(140%) blur(10px);
      box-shadow: var(--shadow-soft);
      position:sticky; top:12px; z-index:10;
    }
    .brand{
      display:flex; align-items:center; gap:10px; text-decoration:none;
      font-weight:700;
      letter-spacing:.2px;
    }
    .dot{
      width:12px; height:12px; border-radius:999px;
      background: var(--brand);
      box-shadow: 0 0 0 6px rgba(51,153,102,.18);
    }
    .nav{display:flex; gap:10px; flex-wrap:wrap; justify-content:flex-end}
    .nav a{
      text-decoration:none;
      font-size:14px;
      color:var(--muted);
      padding:8px 10px;
      border-radius:999px;
      border:1px solid transparent;
    }
    .nav a:hover{border-color:var(--border); background:rgba(255,255,255,.75); color:var(--text)}
    .hero{
      margin-top:18px;
      padding:26px;
      border:1px solid var(--border);
      border-radius: var(--radius-lg);
      background: linear-gradient(180deg, rgba(255,255,255,.92), rgba(255,255,255,.72));
      box-shadow: var(--shadow);
      display:grid;
      grid-template-columns: 1.2fr .8fr;
      gap:22px;
      align-items:center;
    }
    @media (max-width: 860px){
      .hero{grid-template-columns:1fr}
      .topbar{position:relative; top:0}
    }
    .kicker{
      display:inline-flex;
      align-items:center;
      gap:10px;
      color:var(--muted);
      font-weight:600;
      font-size:14px;
      padding:6px 10px;
      border-radius:999px;
      border:1px solid var(--border);
      background:rgba(255,255,255,.6);
    }
    h1{
      margin:12px 0 8px;
      font-size: clamp(30px, 3.6vw, 44px);
      line-height:1.12;
      letter-spacing:-.6px;
    }
    .lead{
      margin:0;
      color:var(--muted);
      font-size: clamp(16px, 1.6vw, 18px);
    }
    .cta{
      display:flex; gap:10px; flex-wrap:wrap;
      margin-top:16px;
    }
    .btn{
      display:inline-flex; align-items:center; justify-content:center;
      gap:10px;
      text-decoration:none;
      border-radius: 999px;
      padding:12px 14px;
      font-weight:700;
      border:1px solid var(--border);
      background: rgba(255,255,255,.85);
      box-shadow: var(--shadow-soft);
    }
    .btn--primary{
      border-color: rgba(51,153,102,.35);
      background: linear-gradient(180deg, rgba(51,153,102,.95), rgba(33,123,78,.95));
      color:#fff;
    }
    .btn--primary:hover{filter:brightness(.98)}
    .btn--ghost:hover{background:#fff}
    .avatar{
      display:flex; justify-content:center;
    }
    .avatar .img{
      width: 180px; height: 180px;
      border-radius: 999px;
      border: 1px solid var(--border);
      background:
        radial-gradient(circle at 30% 30%, rgba(51,153,102,.25), transparent 45%),
        linear-gradient(135deg, rgba(20,32,24,.12), rgba(255,255,255,.65));
      box-shadow: var(--shadow);
      overflow:hidden;
      position:relative;
    }
    .avatar .img img{
      width:100%; height:100%; object-fit:cover;
      display:block;
    }
    .avatar .badge{
      position:absolute; left:12px; bottom:12px;
      font-size:12px; font-weight:700;
      color: #0f2a20;
      background: rgba(255,255,255,.85);
      border: 1px solid var(--border);
      padding:6px 10px;
      border-radius:999px;
    }
    .grid{
      margin-top:18px;
      display:grid;
      grid-template-columns: 1fr 1fr;
      gap:14px;
    }
    @media (max-width: 860px){
      .grid{grid-template-columns:1fr}
    }
    .card{
      border:1px solid var(--border);
      border-radius: var(--radius);
      background: rgba(255,255,255,.82);
      box-shadow: var(--shadow-soft);
      padding:18px;
    }
    .card h2{
      margin:0 0 8px;
      font-size:18px;
      letter-spacing:-.2px;
    }
    .card p{margin:0; color:var(--muted)}
    .list{margin:12px 0 0; padding:0; list-style:none; display:grid; gap:10px}
    .li{
      display:flex; gap:10px; align-items:flex-start;
      padding:10px 12px;
      border-radius: 14px;
      border: 1px solid var(--border);
      background: rgba(255,255,255,.75);
    }
    .bullet{
      width:10px; height:10px; border-radius:999px; margin-top:6px;
      background: var(--brand);
      box-shadow: 0 0 0 5px rgba(51,153,102,.16);
      flex:0 0 auto;
    }
    .li b{display:block; font-size:14px}
    .li span{display:block; font-size:14px; color:var(--muted); margin-top:2px}
    .links{
      display:flex; flex-direction:column; gap:10px; margin-top:10px;
    }
    .linkrow{
      display:flex; align-items:center; justify-content:space-between; gap:10px;
      padding:12px 12px;
      border-radius:14px;
      border:1px solid var(--border);
      background: rgba(255,255,255,.75);
      text-decoration:none;
    }
    .linkrow:hover{background:#fff}
    .pill{
      font-size:12px; font-weight:800;
      padding:6px 10px; border-radius:999px;
      background: rgba(51,153,102,.12);
      border: 1px solid rgba(51,153,102,.25);
      color:#0f2a20;
      white-space:nowrap;
    }
    .footer{
      margin-top:18px;
      padding:16px 18px;
      border-radius: var(--radius);
      border:1px solid var(--border);
      background: rgba(255,255,255,.70);
      color: var(--muted);
      font-size:14px;
    }
    .small{font-size:13px; color:var(--muted)}
    .sr-only{
      position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden;
      clip:rect(0,0,0,0); white-space:nowrap; border:0;
    }

/* 3 bokse under "Om mig" */
#om .list{
  display:grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap:14px;
  margin-top:18px;
  padding:0;
  list-style:none;
}

#om .li{
  display:flex;
  gap:10px;
  align-items:flex-start;
  padding:16px;
  min-height:120px;
  border:1px solid var(--border);
  border-radius:16px;
  background: linear-gradient(180deg, rgba(255,255,255,.92), rgba(255,255,255,.78));
  box-shadow: var(--shadow-soft);
}

#om .li b{
  display:block;
  margin-bottom:4px;
  font-size:15px;
}

#om .li span{
  display:block;
  font-size:14px;
  color:var(--muted);
  line-height:1.5;
}

@media (max-width: 860px){
  #om .list{
    grid-template-columns: 1fr;
  }

  #om .li{
    min-height:auto;
  }
}

#om h3{
  margin:20px 0 8px;
  font-size:20px;
  letter-spacing:-.2px;
}

#om p + p{
  margin-top:12px;
}

html{
  scroll-behavior: smooth;
  scroll-padding-top: 50px;
}

#om,
#projekter,
#guides,
#social,
#links{
  scroll-margin-top: 50px;
}