diff --git a/static/style.css b/static/style.css index c0ed1fe..a18ebce 100644 --- a/static/style.css +++ b/static/style.css @@ -207,33 +207,28 @@ header nav { .target-grid { display: grid; grid-template-columns: 1fr 1fr; - gap: 1.5rem; - margin-top: 1.5rem; + gap: 0; + margin-top: 2rem; + border: 1px solid var(--border); } @media (max-width: 580px) { - .target-grid { grid-template-columns: 1fr; } + .target-grid { + grid-template-columns: 1fr; + } + .target-box + .target-box { + border-left: none; + border-top: 1px solid var(--border); + } } .target-box { - padding: 1.5rem; - border: 1px solid var(--gray-20); + padding: 1.75rem 2rem; background: var(--white); - border-top: 3px solid transparent; } -.target-box.not-for { - border-top-color: var(--red); - background: var(--red-bg); - border-color: var(--red-border); - border-top-color: var(--red); -} - -.target-box.is-for { - border-top-color: var(--green); - background: var(--green-bg); - border-color: var(--green-bdr); - border-top-color: var(--green); +.target-box + .target-box { + border-left: 1px solid var(--border); } .target-box h3 { @@ -241,43 +236,43 @@ header nav { font-weight: 600; text-transform: uppercase; letter-spacing: 0.12em; - margin-bottom: 1rem; + margin-bottom: 1.25rem; font-family: var(--mono); + color: var(--muted); } -.target-box.not-for h3 { color: var(--red); } -.target-box.is-for h3 { color: var(--green); } - .target-box ul { list-style: none; } .target-box ul li { - padding: 0.3rem 0 0.3rem 1.4rem; + padding: 0.55rem 0 0.55rem 1.5rem; font-size: 0.9rem; color: var(--text); position: relative; line-height: 1.5; + border-bottom: 1px solid var(--border); } -.target-box.not-for ul li::before { - content: "✕"; - position: absolute; - left: 0; - color: var(--red); - font-size: 0.7rem; - font-family: var(--mono); - top: 0.42rem; +.target-box ul li:last-child { + border-bottom: none; } .target-box.is-for ul li::before { content: "✓"; position: absolute; left: 0; - color: var(--green); - font-size: 0.8rem; - font-family: var(--mono); - top: 0.35rem; + color: var(--primary); + font-weight: 600; + top: 0.55rem; +} + +.target-box.not-for ul li::before { + content: "—"; + position: absolute; + left: 0; + color: var(--muted); + top: 0.55rem; } /* ── Idea list ───────────────────────── */ @@ -770,3 +765,161 @@ footer { color: var(--muted); font-weight: 400; } + +/* ── Timeline ─────────────────────── */ +.timeline { + position: relative; + margin-top: 2rem; + padding-left: 2.5rem; +} + +.timeline::before { + content: ''; + position: absolute; + left: 6px; + top: 10px; + bottom: 10px; + width: 2px; + background: var(--border); +} + +.timeline-item { + position: relative; + padding-bottom: 2.25rem; +} + +.timeline-item:last-child { + padding-bottom: 0; +} + +.timeline-marker { + position: absolute; + left: -2.5rem; + top: 4px; + width: 14px; + height: 14px; + border-radius: 50%; + border: 2px solid var(--border); + background: var(--white); + z-index: 1; +} + +.timeline-marker.is-now { + background: var(--primary); + border-color: var(--primary); +} + +.timeline-marker.is-soon { + background: var(--white); + border-color: var(--primary); + box-shadow: 0 0 0 4px var(--primary-bg); +} + +.timeline-marker.is-future { + background: var(--white); + border-color: var(--border); +} + +.timeline-date { + display: flex; + align-items: center; + gap: 0.5rem; + font-size: 0.72rem; + font-family: var(--mono); + color: var(--muted); + text-transform: uppercase; + letter-spacing: 0.08em; + margin-bottom: 0.3rem; +} + +.timeline-badge { + display: inline-block; + font-size: 0.62rem; + font-weight: 600; + letter-spacing: 0.06em; + text-transform: uppercase; + color: var(--red); + background: var(--red-bg); + border: 1px solid var(--red-border); + padding: 0.05rem 0.4rem; + border-radius: 2px; + font-family: var(--mono); +} + +.timeline-body h3 { + font-size: 1rem; + font-weight: 600; + color: var(--dark); + margin-bottom: 0.35rem; +} + +.timeline-body p { + font-size: 0.9rem; + color: var(--text); + line-height: 1.65; + margin: 0; + max-width: 56ch; +} + +/* ── FAQ ──────────────────────────── */ +.faq { + margin-top: 1.5rem; + border: 1px solid var(--border); +} + +.faq-item { + border-bottom: 1px solid var(--border); +} + +.faq-item:last-child { + border-bottom: none; +} + +.faq-item summary { + display: flex; + align-items: center; + justify-content: space-between; + padding: 1.1rem 1.5rem; + font-size: 0.95rem; + font-weight: 600; + color: var(--dark); + cursor: pointer; + list-style: none; + user-select: none; +} + +.faq-item summary::-webkit-details-marker { + display: none; +} + +.faq-item summary::after { + content: '+'; + font-size: 1.2rem; + font-weight: 300; + color: var(--muted); + flex-shrink: 0; + margin-left: 1rem; + line-height: 1; + transition: transform 0.15s ease; +} + +.faq-item[open] summary::after { + content: '−'; +} + +.faq-item summary:hover { + background: var(--section-alt); +} + +.faq-answer { + padding: 0 1.5rem 1.25rem; + border-top: 1px solid var(--border); +} + +.faq-answer p { + margin: 0; + font-size: 0.9rem; + color: var(--text); + line-height: 1.7; + padding-top: 1rem; +} diff --git a/templates/index.html b/templates/index.html index 2d5a7ce..89b8455 100644 --- a/templates/index.html +++ b/templates/index.html @@ -80,15 +80,39 @@
- Punktum dk ændrer reglerne for .dk-domæner. Fra 2026 kræves en akkrediteret registrator - for alle domæner — også dem der har kørt perfekt i årevis uden hjælp fra nogen. + Punktum dk ændrer reglerne for .dk-domæner. Her er hvad der sker, og hvornår. +
+ +Har du administreret dine domæner direkte hos Punktum dk, kører det fortsat. Men det ændrer sig om kort tid.
+Direkte registrering af nye domæner hos Punktum dk udgår. Du skal have en akkrediteret registrator — uanset om du bruger deres services eller ej.
+Også domæner registreret direkte hos Punktum dk skal nu have en registrator som formelt mellemled. Intet ændrer sig teknisk — men det administrative led er obligatorisk.
++ Kommercielle registratorer opkræver typisk 90–150 kr/år per domæne. PunktFri sigter mod kostpris.
-Nej overhovedet ikke. Tilmelding her er kun en interessetilkendegivelse. Du forpligter dig til ingenting, betaler ingenting. Vi kontakter dig én gang, når der er nyt — og ikke mere.
+Det afhænger af akkrediteringsomkostninger, drift og antal medlemmer — og det kender vi ikke præcist endnu. Modellen er kostpris uden markup. Vi regner med, at det kan holdes væsentligt under de 90–150 kr/år kommercielle udbydere tager.
+Nej. Din infrastruktur er din. PunktFri håndterer udelukkende det formelle registratorforhold til Punktum dk. Vi ændrer ingenting på NS-records, zonefiler eller konfiguration. Du fortsætter præcis som nu.
+En registrator er en akkrediteret organisation, der må registrere og administrere .dk-domæner på vegne af domæneejere. Punktum dk er selve registret — den øverste myndighed. En registrator er det formelle mellemled, Punktum dk nu kræver for alle domæner. PunktFri vil fungere som registrator, men som non-profit og udelukkende for teknisk selvstyrende brugere.
+Vi arbejder på det. Målet er at have forening stiftet og akkreditering ansøgt inden 1. juli 2026-deadlinen for nye domæner. Tilmeldingerne her er afgørende for, om vi har den kritiske masse til at gå videre — juridisk, teknisk og organisatorisk.
+Det er præcis planen. Når PunktFri er akkrediteret, kan du overføre dine domæner fra Punktum dks direkte registrering — eller fra en anden registrator — til PunktFri. Du beholder naturligvis dine egne navneservere og al konfiguration.
+Punktum dk har endnu ikke offentliggjort præcis, hvad der sker — men de vil sandsynligvis tvinge en overflytning til en registrator, du ikke selv har valgt. Det er bedre at vælge sin registrator på egne præmisser og i god tid.
+