/* Shared by the licence and privacy pages. */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
:root {
  --green-dark: #1e3d1a; --green-mid: #2d5a27; --green-light: #4a7c3f; --green-pale: #d6e8d0;
  --cream: #f7f4ee; --text: #1a2a18; --text-light: #4a5e44;
}
body { font-family: system-ui, -apple-system, sans-serif; background: var(--cream); color: var(--text); line-height: 1.65; }
header { background: var(--green-dark); color: #fff; padding: 36px 24px 32px; }
header .wrap, main { max-width: 760px; margin: 0 auto; }
header a { color: #a8d898; font-size: .85rem; text-decoration: none; }
header h1 { font-size: clamp(1.6rem, 4vw, 2.2rem); margin: 10px 0 6px; }
header p { color: rgba(255,255,255,.7); font-size: .92rem; }
main { padding: 32px 24px 64px; }
h2 { font-size: 1.15rem; color: var(--green-dark); margin: 30px 0 8px; }
p, li { font-size: .95rem; }
ul { padding-left: 22px; margin: 6px 0; }
li { margin: 3px 0; }
.summary { display: grid; grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); gap: 12px; margin-top: 8px; }
.summary div { background: #fff; border: 1px solid #deecd8; border-radius: 10px; padding: 14px 16px; font-size: .9rem; }
.summary strong { display: block; color: var(--green-dark); margin-bottom: 4px; }
.summary .no { border-color: #f0c8c0; }
.summary .no strong { color: #a33a2a; }
form { background: #fff; border: 1px solid #deecd8; border-radius: 12px; padding: 22px; margin-top: 12px; }
label { display: block; font-size: .85rem; font-weight: 600; color: var(--green-dark); margin: 14px 0 4px; }
input[type=text], input[type=email], select, textarea {
  width: 100%; padding: 9px 11px; font: inherit; font-size: .92rem; border: 1px solid #c4d8c0; border-radius: 7px; background: #fafffe;
}
textarea { resize: vertical; min-height: 110px; }
.check { display: flex; gap: 8px; align-items: flex-start; font-weight: normal; color: var(--text); font-size: .85rem; }
.check input { margin-top: 4px; }
.captcha-row { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; }
.captcha-row img { height: 52px; border-radius: 6px; border: 1px solid #c4d8c0; background: #f3f8f1; }
.captcha-row input { width: 110px; }
.captcha-row button { background: none; border: 1px solid #c4d8c0; border-radius: 7px; padding: 8px 10px; cursor: pointer; }
.hp { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
.submit { margin-top: 18px; background: var(--green-mid); color: #fff; border: none; border-radius: 50px; padding: 12px 30px; font-size: 1rem; font-weight: 700; cursor: pointer; }
.submit:disabled { opacity: .6; cursor: default; }
#form-msg { margin-top: 12px; font-size: .9rem; font-weight: 600; }
#form-msg.err { color: #b3261e; }
#form-msg.ok { color: var(--green-mid); }
.rodo { font-size: .8rem; color: var(--text-light); margin-top: 14px; line-height: 1.55; }
.meta { font-size: .82rem; color: var(--text-light); margin-top: 36px; }
.meta a { color: var(--green-mid); }
table { border-collapse: collapse; width: 100%; margin: 8px 0; font-size: .88rem; background: #fff; }
th, td { border: 1px solid #deecd8; padding: 7px 9px; text-align: left; vertical-align: top; }
th { background: #eef5ea; color: var(--green-dark); }
.table-wrap { overflow-x: auto; }
