You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

402 lines
22 KiB

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

<!DOCTYPE html>
<html lang="de">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>drop.two – 4:5-Fassung aus 9:16-Videos für den Mac</title>
<meta name="description" content="9:16 rein. 9:16 und 4:5 raus. drop.two schneidet aus fertigen Hochkant-Videos die 4:5-Fassung für Feed und Ads und legt beide sauber im Projektordner ab. Kostenlos für macOS.">
<link rel="canonical" href="https://droptwo.zielke.studio/">
<meta property="og:type" content="website">
<meta property="og:site_name" content="drop.two">
<meta property="og:locale" content="de_DE">
<meta property="og:url" content="https://droptwo.zielke.studio/">
<meta property="og:title" content="drop.two – 9:16 rein. 9:16 und 4:5 raus.">
<meta property="og:description" content="Fertige Hochkant-Videos reinziehen, 4:5-Fassung raus. Ausschnitt verschiebbar, auch pro Szene. Kostenlos für macOS.">
<meta property="og:image" content="https://droptwo.zielke.studio/og/og-de.png">
<meta property="og:image:width" content="1200">
<meta property="og:image:height" content="630">
<meta name="twitter:card" content="summary_large_image">
<link rel="icon" type="image/svg+xml" href="favicon.svg">
<link href="fonts/fonts.css" rel="stylesheet">
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "SoftwareApplication",
"name": "drop.two",
"operatingSystem": "macOS 13 oder neuer",
"applicationCategory": "MultimediaApplication",
"description": "Schneidet aus 9:16-Videos die 4:5-Fassung und legt beide Fassungen im Projektordner ab.",
"url": "https://droptwo.zielke.studio/",
"downloadUrl": "https://droptwo.zielke.studio/drop.two-latest.dmg",
"offers": { "@type": "Offer", "price": "0", "priceCurrency": "EUR" },
"publisher": { "@type": "Organization", "name": "Zielke Studio", "url": "https://zielke.studio/" }
}
</script>
<!-- drop.two landing page, /var/www/updates/droptwo (droptwo.zielke.studio).
Source: drop.two repo, site/. Version from appcast.xml. Fonts are
self-hosted (fonts/), no requests to third parties. -->
<style>
:root {
--dark: #0B0B0C;
--surface: #141416;
--light: #F5F5F4;
--mid: #B8B5B0;
--gray: #8A8886;
--rule: #26262a;
--gold: #C8A96A;
--gold-hi: #E4C98F;
}
* { box-sizing: border-box; margin: 0; padding: 0; }
html { background: var(--dark); scroll-behavior: smooth; }
body {
color: var(--light);
font-family: "Kanit", "Poppins", -apple-system, sans-serif;
font-weight: 300;
line-height: 1.65;
-webkit-font-smoothing: antialiased;
padding: 0 16px 48px;
background:
radial-gradient(38vw 30vw at 85% 12%, rgba(200, 169, 106, .16), transparent 70%),
radial-gradient(30vw 30vw at 0% 60%, rgba(200, 169, 106, .07), transparent 70%),
var(--dark);
background-repeat: no-repeat;
}
main { max-width: 1000px; margin: 0 auto; }
a { color: inherit; }
nav { display: flex; justify-content: space-between; align-items: center; gap: 16px; padding: 26px 0; }
.brand { display: inline-flex; align-items: center; gap: 10px; font-weight: 500; font-size: 1.05rem; color: var(--light); text-decoration: none; }
.brand svg { width: 30px; height: 30px; }
.links { display: flex; gap: 22px; align-items: center; }
.links a { font-size: .85rem; color: var(--gray); text-decoration: none; transition: color .15s ease; }
.links a:hover { color: var(--light); }
/* Hero */
.hero { display: grid; grid-template-columns: 1.05fr 1fr; gap: 48px; align-items: center; padding: 64px 0 88px; }
.eyebrow { font-size: .74rem; font-weight: 500; letter-spacing: .14em; text-transform: uppercase; color: var(--gold); margin-bottom: 14px; }
h1 { font-size: clamp(2.5rem, 5.5vw, 3.8rem); font-weight: 500; letter-spacing: -0.03em; line-height: 1.05; margin-bottom: 20px; }
.em {
font-family: "Instrument Serif", Georgia, serif; font-style: italic; font-weight: 400;
background: linear-gradient(90deg, var(--gold), var(--gold-hi), var(--gold));
background-size: 200% 100%;
-webkit-background-clip: text; background-clip: text; color: transparent;
padding: 0 .16em; margin: 0 -.16em;
-webkit-box-decoration-break: clone; box-decoration-break: clone;
animation: shimmer 6s ease-in-out infinite;
}
@keyframes shimmer { 50% { background-position: 100% 0; } }
.lede { color: var(--mid); font-size: 1.08rem; max-width: 30em; margin-bottom: 34px; }
.cta-row { display: flex; flex-wrap: wrap; align-items: center; gap: 14px 22px; }
.download {
display: inline-flex; align-items: center; gap: 10px;
background: var(--gold); color: var(--dark); text-decoration: none; font-weight: 500;
padding: 13px 28px; border-radius: 999px;
box-shadow: 0 10px 34px rgba(200, 169, 106, .28);
transition: transform .15s ease, box-shadow .15s ease, background .15s ease;
}
.download:hover { background: var(--gold-hi); transform: translateY(-2px); box-shadow: 0 14px 40px rgba(200, 169, 106, .38); }
.free { font-size: .88rem; color: var(--mid); }
.free b { color: var(--light); font-weight: 400; }
.version { font-size: .8rem; color: var(--gray); margin-top: 14px; min-height: 1.2em; }
/* Demo: 9:16 master, the 4:5 frame lands on it, moves to the subject, the 4:5 cut follows. */
.demo { display: flex; align-items: center; justify-content: center; gap: 26px; position: relative; }
.frame { position: relative; border-radius: 18px; overflow: hidden; background: #1a1a1d; }
.master { width: 176px; aspect-ratio: 9 / 16; border: 3px solid var(--light); }
.cut { width: 176px; aspect-ratio: 4 / 5; border: 3px solid var(--gold); box-shadow: 0 0 40px rgba(200, 169, 106, .35); animation: slide 8s ease-in-out infinite; }
.scene { position: absolute; inset: 0; background: linear-gradient(180deg, #2b2f45 0%, #7a5a48 45%, #d19b5b 62%, #2a221c 100%); }
/* The 4:5 cut shows the same scene, shifted with the frame. */
.cut .scene { inset: -21.1% 0; animation: follow 8s ease-in-out infinite; }
.sun { position: absolute; left: 50%; top: 36%; width: 34%; aspect-ratio: 1; border-radius: 50%; background: #ffd9a0; box-shadow: 0 0 40px #ffcf87; transform: translateX(-50%); }
.person { position: absolute; bottom: 22%; left: 50%; width: 30%; height: 34%; transform: translateX(-50%); background: #151418; border-radius: 40% 40% 12% 12% / 30% 30% 10% 10%; }
.person::before { content: ""; position: absolute; top: -34%; left: 50%; width: 62%; aspect-ratio: 1; transform: translateX(-50%); background: #151418; border-radius: 50%; }
.crop {
position: absolute; left: 0; right: 0; top: 50%; aspect-ratio: 4 / 5; transform: translateY(-50%);
border: 3px solid var(--gold); border-radius: 12px;
box-shadow: 0 0 0 999px rgba(11, 11, 12, .55);
animation: crop 8s ease-in-out infinite;
}
.label { position: absolute; bottom: -30px; left: 0; right: 0; text-align: center; font-size: .78rem; letter-spacing: .12em; color: var(--gray); }
.wrap-master, .wrap-cut { position: relative; }
.arrow { color: var(--gold); font-size: 1.6rem; animation: nudge 8s ease-in-out infinite; }
/* Frame moves down by 12% of its own height (max. 21.1% fits), the cut
scene moves up by the same distance: 12% × 1.25 ÷ 1.778 ≈ 8.44% of its height. */
@keyframes crop {
0%, 8% { opacity: 0; transform: translateY(-50%) scale(1.25); }
18%, 40% { opacity: 1; transform: translateY(-50%) scale(1); }
52%, 80% { opacity: 1; transform: translateY(calc(-50% + 12%)) scale(1); }
92% { opacity: 1; transform: translateY(-50%) scale(1); }
100% { opacity: 0; transform: translateY(-50%) scale(1); }
}
@keyframes follow {
0%, 40% { transform: none; }
52%, 80% { transform: translateY(-8.44%); }
92%, 100% { transform: none; }
}
@keyframes slide {
0%, 18% { opacity: 0; transform: translateX(-40px) scale(.9); }
28%, 90% { opacity: 1; transform: translateX(0) scale(1); }
100% { opacity: 0; transform: translateX(0) scale(1); }
}
@keyframes nudge { 0%, 18% { opacity: .2; transform: translateX(-6px); } 28%, 90% { opacity: 1; transform: none; } 100% { opacity: .2; } }
/* Filename */
.file {
margin: 0 auto; max-width: 760px; padding: 28px; border-radius: 20px;
background: var(--surface); border: 1px solid var(--rule);
font-family: ui-monospace, "SF Mono", Menlo, monospace; font-size: clamp(.8rem, 2.2vw, 1.05rem);
}
.file .row { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 14px; }
.file .in { color: var(--light); }
.seg { padding: 2px 6px; border-radius: 6px; }
.seg.project { background: rgba(200, 169, 106, .18); color: var(--gold-hi); }
.seg.format { background: rgba(245, 245, 244, .1); }
.seg.new { background: var(--gold); color: var(--dark); }
.file .to { color: var(--gold); }
.file .out { display: grid; gap: 6px; color: var(--mid); }
.legend { margin-top: 16px; font-family: "Kanit", sans-serif; font-size: .85rem; color: var(--gray); }
.legend code { font-size: .8rem; color: var(--mid); }
/* Sections */
section { padding: 88px 0 0; scroll-margin-top: 16px; }
h2 { font-size: 1.6rem; font-weight: 500; letter-spacing: -0.01em; margin-bottom: 8px; }
.sub { color: var(--mid); margin-bottom: 30px; max-width: 36em; }
.steps { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.step, .feature { padding: 24px; border-radius: 18px; background: var(--surface); border: 1px solid var(--rule); transition: border-color .15s ease, transform .15s ease; }
.step:hover, .feature:hover { border-color: rgba(200, 169, 106, .5); transform: translateY(-2px); }
.step .num { font-family: "Instrument Serif", Georgia, serif; font-style: italic; font-size: 2.4rem; line-height: 1; color: var(--gold); display: block; margin-bottom: 12px; }
.step h3, .feature h3 { font-weight: 500; font-size: 1.05rem; margin-bottom: 4px; }
.step p, .feature p { color: var(--mid); font-size: .92rem; }
.features { display: grid; grid-template-columns: repeat(2, 1fr); gap: 16px; }
.feature { display: flex; gap: 16px; align-items: flex-start; }
.feature svg { width: 40px; height: 40px; flex: none; }
.facts { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 26px; }
.fact { padding: 8px 16px; border-radius: 999px; border: 1px solid var(--rule); color: var(--mid); font-size: .88rem; }
.fact b { color: var(--light); font-weight: 400; }
/* FAQ */
.faq { max-width: 720px; }
details { border-bottom: 1px solid var(--rule); }
details:first-of-type { border-top: 1px solid var(--rule); }
summary {
list-style: none; cursor: pointer; padding: 18px 40px 18px 0; position: relative;
font-weight: 400; font-size: 1.02rem; transition: color .15s ease;
}
summary::-webkit-details-marker { display: none; }
summary::after {
content: "+"; position: absolute; right: 4px; top: 50%; transform: translateY(-50%);
color: var(--gold); font-size: 1.4rem; font-weight: 300; transition: transform .2s ease;
}
details[open] summary::after { transform: translateY(-50%) rotate(45deg); }
summary:hover { color: var(--gold-hi); }
details p { color: var(--mid); padding: 0 40px 20px 0; font-size: .95rem; }
details p + p { margin-top: -8px; }
/* Closing */
.closing {
margin-top: 96px; padding: 48px 32px; border-radius: 24px; text-align: center;
background: radial-gradient(60% 120% at 50% 0%, rgba(200, 169, 106, .14), transparent 70%), var(--surface);
border: 1px solid var(--rule);
}
.closing h2 { margin-bottom: 10px; }
.closing p { color: var(--mid); margin-bottom: 26px; }
footer {
margin-top: 64px; padding-top: 24px; border-top: 1px solid var(--rule);
display: flex; flex-wrap: wrap; justify-content: space-between; gap: 10px 24px;
font-size: .82rem; color: var(--gray);
}
footer nav { padding: 0; gap: 18px; flex-wrap: wrap; justify-content: flex-start; }
footer a { color: var(--gray); text-decoration: none; }
footer a:hover { color: var(--light); }
@media (max-width: 800px) {
.hero { grid-template-columns: 1fr; gap: 64px; padding-top: 32px; }
.master, .cut { width: 132px; }
.steps, .features { grid-template-columns: 1fr; }
.links a:not(.back) { display: none; }
}
@media (prefers-reduced-motion: reduce) {
*, *::before, *::after { animation: none !important; }
.crop, .cut { opacity: 1; }
}
</style>
</head>
<body>
<main>
<nav>
<a class="brand" href="./">
<svg viewBox="0 0 1024 1024" aria-hidden="true">
<rect x="310" y="152" width="404" height="718" rx="44" fill="none" stroke="#F5F5F4" stroke-width="44"/>
<rect x="328" y="281" width="368" height="460" rx="26" fill="#C8A96A"/>
</svg>
drop.two
</a>
<div class="links">
<a href="#funktionen">Funktionen</a>
<a href="#faq">FAQ</a>
<a class="back" href="https://apps.zielke.studio/">← Alle Apps</a>
</div>
</nav>
<section class="hero">
<div>
<p class="eyebrow">Kostenlos · für macOS</p>
<h1>9:16 rein. <span class="em">9:16 und 4:5 raus.</span></h1>
<p class="lede">Fertige Hochkant-Videos reinziehen – drop.two schneidet die 4:5-Fassung für Feed und Ads und legt beide Fassungen ordentlich im Projektordner ab. Ausschnitt mittig oder genau da, wo er hingehört. Keine Timeline, kein Export-Dialog.</p>
<div class="cta-row">
<a class="download" href="drop.two-latest.dmg">Für macOS laden <span aria-hidden="true">↓</span></a>
<span class="free"><b>Kostenlos</b> · ohne Konto · ohne Abo</span>
</div>
<p class="version" id="version">macOS 13 oder neuer · Apple Silicon &amp; Intel</p>
</div>
<div class="demo" aria-label="Animation: aus einem 9:16-Video entsteht ein 4:5-Ausschnitt, der Rahmen lässt sich verschieben">
<div class="wrap-master">
<div class="frame master">
<div class="scene"><div class="sun"></div><div class="person"></div></div>
<div class="crop"></div>
</div>
<span class="label">9×16</span>
</div>
<span class="arrow" aria-hidden="true">→</span>
<div class="wrap-cut">
<div class="frame cut">
<div class="scene"><div class="sun"></div><div class="person"></div></div>
</div>
<span class="label">4×5</span>
</div>
</div>
</section>
<div class="file" aria-label="Beispiel: aus SOMOS-9x16-v3-DE.mp4 werden zwei Dateien im Ordner SOMOS">
<div class="row">
<span class="in"><span class="seg project">SOMOS</span>-<span class="seg format">9x16</span>-v3-DE.mp4</span>
<span class="to">→</span>
<span class="out">
<span><span class="seg project">SOMOS</span>/SOMOS-9x16-v3-DE.mp4</span>
<span><span class="seg project">SOMOS</span>/SOMOS-<span class="seg new">4x5</span>-v3-DE.mp4</span>
</span>
</div>
<p class="legend">Das Projekt steht im Dateinamen, das Format ist der Anker: <code>9x16</code>, <code>9X16</code>, getrennt mit <code>-</code>, <code>_</code> oder Leerzeichen. Steht kein Format drin, fragt drop.two nach und hängt <code>4x5</code> auf Wunsch an.</p>
</div>
<section id="ablauf">
<h2>So einfach geht's</h2>
<p class="sub">Drei Schritte, und der zweite ist optional.</p>
<div class="steps">
<div class="step"><span class="num">1</span><h3>Reinziehen</h3><p>Eine oder gleich viele 9:16-Dateien per Drag &amp; Drop – oder im Dialog auswählen. drop.two zeigt sofort, was daraus wird.</p></div>
<div class="step"><span class="num">2</span><h3>Ausschnitt prüfen</h3><p>Der 4:5-Rahmen liegt über dem Video. Passt er nicht, ziehst du ihn einfach dahin, wo das Bild spielt.</p></div>
<div class="step"><span class="num">3</span><h3>Abgelegt</h3><p>Original und 4:5-Fassung landen zusammen im Projektordner. Fertig zum Hochladen.</p></div>
</div>
</section>
<section id="funktionen">
<h2>Was drop.two kann</h2>
<p class="sub">Ein Werkzeug für genau einen Handgriff – der dafür sitzt.</p>
<div class="features">
<div class="feature">
<svg viewBox="0 0 40 40" aria-hidden="true"><rect x="11" y="3" width="18" height="34" rx="3" fill="none" stroke="#F5F5F4" stroke-width="2"/><rect x="12" y="13" width="16" height="20" rx="2" fill="#C8A96A"/><path d="M34 15l2.5 3-2.5 3M34 25l2.5-3" fill="none" stroke="#C8A96A" stroke-width="1.6" stroke-linecap="round" stroke-linejoin="round"/></svg>
<div><h3>Ausschnitt verschieben</h3>
<p>Rahmen in der Vorschau nach oben oder unten ziehen. Was du siehst, wird gerendert – pixelgenau.</p></div>
</div>
<div class="feature">
<svg viewBox="0 0 40 40" aria-hidden="true"><path d="M4 26h32" stroke="#F5F5F4" stroke-opacity=".35" stroke-width="2.5" stroke-linecap="round"/><path d="M15 26h21" stroke="#C8A96A" stroke-width="2.5" stroke-linecap="round"/><rect x="2.5" y="22.5" width="7" height="7" transform="rotate(45 6 26)" fill="#C8A96A"/><rect x="11.5" y="22.5" width="7" height="7" transform="rotate(45 15 26)" fill="#E4C98F"/><rect x="25.5" y="10" width="2" height="16" rx="1" fill="#F5F5F4"/></svg>
<div><h3>Marken für Szenenwechsel</h3>
<p>Zwei Szenen, zwei Bildausschnitte? Marke setzen, Rahmen ziehen – ab dort gilt die neue Position. Harter Schnitt, kein Wackeln.</p></div>
</div>
<div class="feature">
<svg viewBox="0 0 40 40" aria-hidden="true"><rect x="5" y="9" width="30" height="22" rx="4" fill="none" stroke="#F5F5F4" stroke-width="2"/><path d="M17 15.5v9l7.5-4.5z" fill="#C8A96A"/></svg>
<div><h3>Bereit für Feed und Ads</h3>
<p>MP4 mit H.264 und AAC – das Format, das Instagram, Facebook und Meta Ads ohne Umweg nehmen. Egal ob ProRes, H.264 oder HEVC reinkommt.</p></div>
</div>
<div class="feature">
<svg viewBox="0 0 40 40" aria-hidden="true"><path d="M5 12h12l3 3h15v17a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2z" fill="none" stroke="#F5F5F4" stroke-width="2" stroke-linejoin="round"/><rect x="13" y="20" width="6" height="10" rx="1" fill="none" stroke="#F5F5F4" stroke-width="1.5"/><rect x="22" y="21" width="7" height="8.5" rx="1" fill="#C8A96A"/></svg>
<div><h3>Ordnung von allein</h3>
<p>Projektname aus dem Dateinamen, Unterordner automatisch, Original unverändert daneben. Ganze Stapel auf einmal.</p></div>
</div>
</div>
<div class="facts">
<span class="fact"><b>Volle Breite</b>, 1080×1920 → 1080×1350</span>
<span class="fact"><b>Framerate</b> und Dauer bleiben</span>
<span class="fact"><b>Lokal</b> auf deinem Mac, kein Upload</span>
<span class="fact"><b>Fehler</b> werden gezeigt, nicht verschluckt</span>
<span class="fact"><b>Updates</b> kommen automatisch</span>
</div>
</section>
<section id="faq" class="faq">
<h2>Häufige Fragen</h2>
<p class="sub">Kurz beantwortet. Fehlt etwas? Schreib an <a href="mailto:app-feedback@zielke.studio">app-feedback@zielke.studio</a>.</p>
<details>
<summary>Was kostet drop.two?</summary>
<p>Nichts. drop.two ist kostenlos, ohne Konto, ohne Abo und ohne Wasserzeichen.</p>
</details>
<details>
<summary>Welche Videos kann ich reinwerfen?</summary>
<p>Alles im Seitenverhältnis 9:16, was dein Mac abspielen kann – zum Beispiel ProRes, H.264 oder HEVC in .mov oder .mp4. Dateien in einem anderen Seitenverhältnis lehnt drop.two mit einem Hinweis ab, statt sie zu verzerren.</p>
</details>
<details>
<summary>In welchem Format kommt die 4:5-Fassung raus?</summary>
<p>Als MP4 mit H.264 (High Profile) und AAC-Ton mit 128 kbit/s. Die Breite bleibt, die Höhe wird auf 4:5 beschnitten; Framerate und Dauer bleiben unverändert. Die Bitrate passt drop.two an Auflösung und Framerate an – passend für Feed-Posts und Meta Ads.</p>
</details>
<details>
<summary>Und wenn der Ausschnitt nicht in der Mitte sitzen soll?</summary>
<p>Klick in der Liste auf das Ausschnitt-Symbol. In der Vorschau ziehst du den goldenen Rahmen dahin, wo er hingehört. Wechselt die Szene, spulst du an die Stelle und setzt eine Marke (Taste M) – ab dort gilt eine eigene Position.</p>
</details>
<details>
<summary>Muss ich meine Dateien umbenennen?</summary>
<p>Nein. drop.two erkennt das Format im Namen in vielen Schreibweisen, etwa <code>Projekt-9x16-v3-DE</code>, <code>Projekt_9X16_v3</code> oder <code>Projekt 9x16</code>, und ersetzt dort nur das Format durch 4x5. Steht kein Format im Namen, fragt die App nach und hängt „4x5“ auf Wunsch einfach an.</p>
</details>
<details>
<summary>Wird mein Original verändert oder hochgeladen?</summary>
<p>Weder noch. Das Original wird unverändert in den Projektordner kopiert, gerendert wird komplett auf deinem Mac. Die App schickt keine Videos und keine Nutzungsdaten irgendwohin; sie fragt nur nach, ob es eine neue Version gibt.</p>
</details>
<details>
<summary>Welchen Mac brauche ich?</summary>
<p>macOS 13 Ventura oder neuer, auf Apple Silicon und Intel. Gerendert wird hardwarebeschleunigt mit den Videobausteinen von macOS.</p>
</details>
<details>
<summary>Wie installiere und aktualisiere ich die App?</summary>
<p>DMG öffnen und drop.two in den Programme-Ordner ziehen. Die App ist von Apple notarisiert, macOS prüft sie beim ersten Start einmal kurz. Neue Versionen meldet die App selbst; alternativ im App-Menü „Nach Updates suchen …“.</p>
</details>
</section>
<div class="closing">
<h2>Nie wieder zweite Timeline.</h2>
<p>Laden, Video reinziehen, fertig. Kostenlos für macOS 13 oder neuer.</p>
<a class="download" href="drop.two-latest.dmg">Für macOS laden <span aria-hidden="true">↓</span></a>
</div>
<footer>
<span>&copy; Zielke Studio</span>
<nav>
<a href="#faq">FAQ</a>
<a href="mailto:app-feedback@zielke.studio">Feedback</a>
<a href="https://zielke.studio/">Impressum &amp; Datenschutz</a>
<a href="https://apps.zielke.studio/">Weitere Apps</a>
</nav>
</footer>
</main>
<script>
// Version from the appcast: one source of truth.
fetch("appcast.xml")
.then(function (r) { return r.ok ? r.text() : Promise.reject(); })
.then(function (t) {
var doc = new DOMParser().parseFromString(t, "application/xml");
var items = doc.getElementsByTagName("item");
if (!items.length) return;
var el = items[0].getElementsByTagName("sparkle:shortVersionString")[0]
|| items[0].getElementsByTagName("title")[0];
if (el) document.getElementById("version").textContent = "Version " + el.textContent.trim() + " · macOS 13+ · Apple Silicon & Intel";
})
.catch(function () { /* stay quiet, the default line stays */ });
</script>
</body>
</html>

Powered by TurnKey Linux.