:root{
  --bg:#f4f6f4; --surface:#dfe8e4; --ink:#10302a; --ink-2:#3f5d55; --leaf:#2e6b57; --accent-2:#b7cfae;
  --line:#cfdcd6; --midrib:var(--bg);
  --display:'Bricolage Grotesque',system-ui,sans-serif;
  --sans:'Schibsted Grotesk',system-ui,-apple-system,'Segoe UI',sans-serif;
  --mono:'IBM Plex Mono',ui-monospace,Menlo,Consolas,monospace;
  color-scheme:light;
}
@media (prefers-color-scheme: dark){
  :root{
    --bg:#0c211d; --surface:#10302a; --ink:#e6eeea; --ink-2:#a9c0b7; --leaf:#b7cfae; --accent-2:#2e6b57;
    --line:#1f423a; color-scheme:dark;
  }
}
*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0; background:var(--bg); color:var(--ink); font:17px/1.6 var(--sans);
  padding-inline:max(20px, env(safe-area-inset-left)); padding-block:env(safe-area-inset-top) env(safe-area-inset-bottom);
  display:flex; flex-direction:column;
}
.wrap{width:100%; max-width:1040px; margin:0 auto}
a{color:inherit}
:focus-visible{outline:2px solid var(--leaf); outline-offset:3px; border-radius:4px}

header{padding-block:28px; display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:16px}
.brand{display:flex; align-items:center; gap:8px; text-decoration:none; font:800 22px/1 var(--display); letter-spacing:-.04em}
.brand svg{width:30px; height:30px; color:var(--leaf)}
.brand b{font-weight:800}

main{flex:1; display:grid; grid-template-columns:minmax(0,1.25fr) minmax(0,1fr); gap:48px; align-items:center; padding-block:48px 64px}
h1{font:800 clamp(48px, 9vw, 104px)/.92 var(--display); letter-spacing:-.05em; margin:0 0 24px; text-wrap:balance}
h1 em{font-style:normal; color:var(--leaf)}
.lead{font-size:clamp(18px, 2.2vw, 21px); color:var(--ink-2); max-width:34ch; margin:0}

.leaf{justify-self:center; width:min(100%, 380px); aspect-ratio:1; color:var(--leaf)}
.leaf path.rib{stroke:var(--bg)}
@media (prefers-reduced-motion: no-preference){
  .leaf{animation:sway 9s ease-in-out infinite; transform-origin:12% 88%}
  @keyframes sway{0%,100%{transform:rotate(0deg)}50%{transform:rotate(-3deg)}}
}

.what{border-top:1px solid var(--line); padding-block:36px; display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:32px}
.what h2{font:600 17px/1.3 var(--sans); margin:0 0 6px}
.what p{margin:0; color:var(--ink-2); font-size:15.5px; max-width:36ch}

footer{border-top:1px solid var(--line); padding-block:22px 28px; display:flex; flex-wrap:wrap; justify-content:space-between; gap:12px; font-size:13.5px; color:var(--ink-2)}

@media (max-width:760px){
  main{grid-template-columns:1fr; gap:24px; padding-block:24px 48px}
  .leaf{order:-1; width:140px; justify-self:start}
  .what{grid-template-columns:1fr; gap:22px}
}

.lang{display:flex; gap:2px; padding:3px; border:1px solid var(--line); border-radius:999px; font:500 13px/1 var(--mono)}
.lang a{padding:6px 10px; border-radius:999px; text-decoration:none; color:var(--ink-2)}
.lang a:hover{color:var(--ink)}
.lang a[aria-current]{background:var(--surface); color:var(--ink)}
