narty-2027/pages/wyjazd.html
oskar ae9d170ba3 Regeneracja: 19 kart w pages/, graf 18 konceptów + 20 external
Karta zbiorcza pages/index.html grupowała tylko korzeń i oferty/ —
dziewięć konceptów wariantów dostawało własne karty, ale nie było ich
na liście. Grupowanie idzie teraz po katalogach najwyższego poziomu,
a nazwa grupy to pierwszy nagłówek index.md tego katalogu, więc kolejny
region wystarczy dodać do bundle'a, żeby pojawił się tu sam.

Linki wariantów w root index.md prowadzą do region.md, nie do index.md
podkatalogów: pliki zarezerwowane nie mają kart, więc w pages/ taki
odnośnik degenerował się do linku na samego siebie.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-03 16:23:25 +02:00

89 lines
14 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!doctype html>
<html lang="pl">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Ski 2027 — Skicircus Saalbach — Ski 2027 — Skicircus Saalbach</title>
<style>
:root { color-scheme: light dark; --fg:#0f172a; --muted:#64748b; --bg:#ffffff;
--line:#e2e8f0; --accent:#0d9488; --chip:#f1f5f9; --quote:#f8fafc; }
@media (prefers-color-scheme: dark) {
:root { --fg:#e2e8f0; --muted:#94a3b8; --bg:#0f172a; --line:#334155;
--accent:#2dd4bf; --chip:#1e293b; --quote:#1e293b; }
}
* { box-sizing: border-box; }
body { margin: 0 auto; padding: 1.25rem 1rem 4rem; max-width: 46rem;
font-family: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
font-size: 17px; line-height: 1.55; color: var(--fg); background: var(--bg);
-webkit-text-size-adjust: 100%; }
nav { font-size: .85rem; margin-bottom: 1.25rem; }
nav a { color: var(--muted); }
h1 { font-size: 1.55rem; line-height: 1.25; margin: 0 0 .35rem; }
h2 { font-size: 1.2rem; margin: 2rem 0 .5rem; padding-top: .5rem;
border-top: 1px solid var(--line); }
h3 { font-size: 1.02rem; margin: 1.4rem 0 .4rem; }
p, ul, ol { margin: .6rem 0; }
ul, ol { padding-left: 1.3rem; }
li { margin: .25rem 0; }
li.task { list-style: none; margin-left: -1.3rem; }
li.task input { margin-right: .45rem; }
a { color: var(--accent); }
a.ext::after { content: " ↗"; font-size: .8em; color: var(--muted); }
code { font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: .88em;
background: var(--chip); padding: .1em .35em; border-radius: 4px; }
pre { background: var(--chip); padding: .75rem; border-radius: 6px; overflow-x: auto; }
pre code { background: none; padding: 0; }
blockquote { margin: .9rem 0; padding: .6rem .9rem; background: var(--quote);
border-left: 3px solid var(--accent); border-radius: 0 6px 6px 0; }
blockquote p { margin: .2rem 0; }
hr { border: 0; border-top: 1px solid var(--line); margin: 1.5rem 0; }
.table-wrap { overflow-x: auto; margin: .8rem 0; -webkit-overflow-scrolling: touch; }
table { border-collapse: collapse; width: 100%; font-size: .92rem; }
th, td { border: 1px solid var(--line); padding: .4rem .55rem; vertical-align: top; }
th { background: var(--chip); font-weight: 600; }
.chip { display: inline-block; background: var(--chip); color: var(--muted);
font-size: .72rem; text-transform: uppercase; letter-spacing: .04em;
padding: .15rem .5rem; border-radius: 999px; }
.lead { color: var(--muted); margin: .35rem 0 1.25rem; }
.meta { margin: 0 0 1.5rem; }
.meta summary { cursor: pointer; font-size: .85rem; color: var(--muted);
padding: .3rem 0; }
.meta table { font-size: .85rem; }
.meta th { width: 38%; text-align: left; font-weight: 500; word-break: break-word; }
.cards { list-style: none; padding: 0; margin: 0; }
.cards li { border: 1px solid var(--line); border-radius: 8px; padding: .8rem .9rem;
margin: .6rem 0; }
.cards a { font-weight: 600; text-decoration: none; }
.cards p { margin: .3rem 0 0; font-size: .9rem; color: var(--muted); }
footer { margin-top: 3rem; padding-top: 1rem; border-top: 1px solid var(--line);
font-size: .78rem; color: var(--muted); }
</style>
</head>
<body>
<nav><a href="index.html">← Wszystkie karty</a> · <a href="../viz.html">Graf</a></nav>
<span class="chip">Trip</span>
<h1>Ski 2027 — Skicircus Saalbach</h1>
<p class="lead">Wyjazd narciarski 4 rodzin (14 osób) z Warszawy do Skicircus Saalbach w styczniu 2027, z celem budżetowym ~2 000 € za nocleg na rodzinę.</p>
<details class="meta" open><summary>Metadane (frontmatter)</summary><div class="table-wrap"><table><tbody><tr><th>type</th><td>Trip</td></tr><tr><th>title</th><td>Ski 2027 — Skicircus Saalbach</td></tr><tr><th>description</th><td>Wyjazd narciarski 4 rodzin (14 osób) z Warszawy do Skicircus Saalbach w styczniu 2027, z celem budżetowym ~2 000 € za nocleg na rodzinę.</td></tr><tr><th>timestamp</th><td>2026-07-31T00:00:00Z</td></tr><tr><th>tags</th><td>wyjazd, saalbach, 2027, planowanie</td></tr><tr><th>nazwa</th><td>Ski 2027 — Skicircus Saalbach: baza wiedzy wyjazdu</td></tr><tr><th>grupa</th><td>4 rodziny (2×2+2, 2×2+1) = 14 osób, wyjazd z Warszawy</td></tr><tr><th>termin</th><td>1623.01.2027 (alt. 916.01)</td></tr><tr><th>ostatnia_aktualizacja</th><td>2026-07-31</td></tr></tbody></table></div></details>
<p>Wyjazd narciarski 4 rodzin: 2×(2+2 nastolatki) + 2×(2+1 dziecko) = <strong>14 osób</strong>, wyjazd samochodami z Warszawy.</p>
<ul><li><strong>Termin:</strong> 1623.01.2027 (alternatywa: 916.01.2027).</li><li><strong>Cel budżetowy noclegu:</strong> <strong>~2 000 €/rodzinę za tydzień</strong> (nie 34 tys.).</li></ul>
<p>Kontekst regionu, skipassów, dojazdu i budżetu całkowitego → <a href="region.html">region</a>. Karty noclegów → <a href="index.html">oferty</a>.</p>
<h2>Oferty — ranking</h2>
<div class="table-wrap"><table><thead><tr><th style="text-align:left">#</th><th style="text-align:left">Oferta</th><th style="text-align:left">Miejscowość</th><th style="text-align:left">€/rodzinę 2+2</th><th style="text-align:left">Status</th><th style="text-align:left">Priorytet</th></tr></thead><tbody><tr><td style="text-align:left">1</td><td style="text-align:left"><a href="oferty/kristall-schattbergxpress.html">Kristall @ SchattbergXpress</a></td><td style="text-align:left">Saalbach centrum, 50 m od gondoli</td><td style="text-align:left">~1 5002 000</td><td style="text-align:left">szacunek</td><td style="text-align:left"><strong>PLAN A</strong></td></tr><tr><td style="text-align:left">2</td><td style="text-align:left"><a href="oferty/alpenparks-sonnleiten.html">AlpenParks Sonnleiten</a></td><td style="text-align:left">Saalbach, 2 min od stoku</td><td style="text-align:left">~1 4001 900</td><td style="text-align:left">szacunek</td><td style="text-align:left">PLAN A-bis</td></tr><tr><td style="text-align:left">3</td><td style="text-align:left"><a href="oferty/sportchalet-viehhofen.html">Sportchalet Viehhofen</a></td><td style="text-align:left">Viehhofen, skibus</td><td style="text-align:left">~1 2001 600</td><td style="text-align:left">szacunek</td><td style="text-align:left"><strong>PLAN B</strong></td></tr><tr><td style="text-align:left">4</td><td style="text-align:left"><a href="oferty/dom-dla-grupy.html">Dom 1214 os.</a></td><td style="text-align:left">Viehhofen/Maishofen/Fieberbrunn</td><td style="text-align:left">~1 4001 900</td><td style="text-align:left">koncept</td><td style="text-align:left">równoległy</td></tr><tr><td style="text-align:left">5</td><td style="text-align:left"><a href="oferty/alpenparks-rehrenberg.html">AlpenParks Rehrenberg</a></td><td style="text-align:left">Viehhofen</td><td style="text-align:left">~1 1001 500</td><td style="text-align:left">szacunek</td><td style="text-align:left">PLAN C</td></tr><tr><td style="text-align:left">6</td><td style="text-align:left"><a href="oferty/glemm-lodge.html">Glemm Lodge</a></td><td style="text-align:left">Saalbach/Hinterglemm</td><td style="text-align:left">~4 370</td><td style="text-align:left"><strong>zweryfikowane</strong></td><td style="text-align:left">odrzucona (referencja)</td></tr></tbody></table></div>
<h2>Porównanie wariantów regionu</h2>
<p>Saalbach jest wariantem bazowym; obok niego badane są trzy alternatywy. Wszystkie budżety liczone tą samą metodologią (14 os., tydzień, 6 dni jazdy), więc tabele są porównywalne 1:1.</p>
<div class="table-wrap"><table><thead><tr><th style="text-align:left"></th><th style="text-align:left"><a href="region.html">Saalbach (baza)</a></th><th style="text-align:left"><a href="ischgl/region.html">Ischgl/Paznaun</a></th><th style="text-align:left"><a href="kronplatz/region.html">Kronplatz</a></th><th style="text-align:left"><a href="sfl/region.html">SFL</a></th></tr></thead><tbody><tr><td style="text-align:left">Trasy</td><td style="text-align:left">270 km</td><td style="text-align:left">239 km (+40 km Kappl)</td><td style="text-align:left">121 km + Superski 1200 km</td><td style="text-align:left">214 km</td></tr><tr><td style="text-align:left">Dojazd z W-wy</td><td style="text-align:left"><strong>~950 km</strong></td><td style="text-align:left">~1 150 km</td><td style="text-align:left">~1 050 km</td><td style="text-align:left">~1 120 km</td></tr><tr><td style="text-align:left">Skipassy grupy</td><td style="text-align:left">~4 9005 400 €</td><td style="text-align:left">~5 150 € (zweryf. 26/27)</td><td style="text-align:left">~4 9005 300 €</td><td style="text-align:left"><strong>~4 4004 800 €</strong></td></tr><tr><td style="text-align:left">Zniżka 17-latka</td><td style="text-align:left">✅ (do 18)</td><td style="text-align:left">❌ brak (od 17 lat = dorosły)</td><td style="text-align:left">✅ junior do 18</td><td style="text-align:left">✅ (rocznikowo)</td></tr><tr><td style="text-align:left">Nocleg / 4 apartamenty</td><td style="text-align:left">5 5007 500 €</td><td style="text-align:left">4 0005 600 € (Kappl)</td><td style="text-align:left">4 0006 000 € (Olang)</td><td style="text-align:left">4 2006 000 € (Ladis/Fiss)</td></tr><tr><td style="text-align:left">Sezon w terminie 1623.01</td><td style="text-align:left">niski</td><td style="text-align:left">niski</td><td style="text-align:left">regular</td><td style="text-align:left"><strong>NISKI (oficjalnie!)</strong></td></tr><tr><td style="text-align:left"><strong>Budżet grupy razem</strong></td><td style="text-align:left">~14 00018 000 €</td><td style="text-align:left">~13 50016 000 €</td><td style="text-align:left">~13 20016 300 €</td><td style="text-align:left"><strong>~12 80015 700 €</strong></td></tr><tr><td style="text-align:left">Charakter</td><td style="text-align:left">wielka karuzela</td><td style="text-align:left">wysokogórski + Samnaun</td><td style="text-align:left">Dolomity bez powtórki</td><td style="text-align:left">rodzinny kombajn</td></tr><tr><td style="text-align:left">Główne ryzyko</td><td style="text-align:left">najdroższy nocleg</td><td style="text-align:left">wiek nastolatków (17!)</td><td style="text-align:left">objazdowość = auto/kolejka</td><td style="text-align:left">za spokojnie dla nastolatków?</td></tr></tbody></table></div>
<h3>Noclegi w wariantach</h3>
<div class="table-wrap"><table><thead><tr><th style="text-align:left">Wariant</th><th style="text-align:left">PLAN A</th><th style="text-align:left">PLAN B</th><th style="text-align:left">€/rodzinę 2+2</th><th style="text-align:left">Status</th></tr></thead><tbody><tr><td style="text-align:left"><a href="index.html">Ischgl</a></td><td style="text-align:left"><a href="ischgl/oferty/apartment-brandau-kappl.html">Apartment Brandau</a>, Kappl</td><td style="text-align:left"><a href="ischgl/oferty/apartments-kappl.html">Apartments Kappl</a></td><td style="text-align:left">~9001 400</td><td style="text-align:left">szacunek</td></tr><tr><td style="text-align:left"><a href="index.html">Kronplatz</a></td><td style="text-align:left"><a href="kronplatz/oferty/haeuslerhof-valdaora.html">Häuslerhof</a>, Valdaora</td><td style="text-align:left"><a href="kronplatz/oferty/residence-corones-valdaora.html">Residence Corones</a></td><td style="text-align:left">~8001 400</td><td style="text-align:left">szacunek</td></tr><tr><td style="text-align:left"><a href="index.html">SFL</a></td><td style="text-align:left"><a href="sfl/oferty/haus-central-ladis.html">Haus Central</a>, Ladis</td><td style="text-align:left"><a href="sfl/oferty/apart-ideal-serfaus.html">Apart Ideal</a>, Serfaus</td><td style="text-align:left">~1 0001 800</td><td style="text-align:left">szacunek</td></tr></tbody></table></div>
<h3>Wnioski przekrojowe</h3>
<ol><li><strong>SFL wygrywa cenowo</strong> wśród alternatyw — jedyny region, gdzie 1623.01 to oficjalnie niski sezon (skipassy i noclegi w dołku).</li><li><strong>Ischgl ma pułapkę wiekową</strong>: zniżka tylko do &lt;17 lat — policzyć roczniki nastolatków PRZED decyzją; brak zniżki = +388 € na grupę.</li><li>Dwa obiekty mają konfigurację <strong>dokładnie 4 apartamentów</strong> (<a href="kronplatz/oferty/haeuslerhof-valdaora.html">Häuslerhof</a>, <a href="sfl/oferty/haus-central-ladis.html">Haus Central</a>) — grupa zajmuje cały dom, co daje klimat wspólnego chaletu bez chaletowej ceny.</li><li>Saalbach zostaje wariantem bazowym ze względu na najkrótszy dojazd i największy połączony teren; alternatywy biją go budżetem noclegowym.</li></ol>
<h2>Najbliższe kroki</h2>
<ol><li>Mail grupowy (<a href="szablon-maila.html">szablon</a>) → Kristall/All in One + Sportchalet Viehhofen.</li><li>Ceny online datami 1623.01.2027 → AlpenParks (oba obiekty).</li><li>Zebranie ofert → decyzja grupy → zaliczki (wrzesień 2026).</li></ol>
<h2>Konwencja danych</h2>
<p>Każda karta oferty ma frontmatter YAML z polami OKF (<code>type</code>, <code>title</code>, <code>description</code>, <code>timestamp</code>, <code>tags</code>) oraz z polami rozszerzeń: <code>id</code>, <code>nazwa</code>, <code>miejscowosc</code>, <code>gps</code>, <code>odleglosc_od_wyciagu</code>, <code>ocena</code>, <code>cena_za_apartament_tydzien</code>, <code>koszt_rodzina_2p2</code>, <code>koszt_rodzina_2p1</code>, <code>status_ceny</code> (SZACUNEK / ZWERYFIKOWANE), <code>priorytet</code>, <code>www</code>, <code>ostatnia_aktualizacja</code> — stronę można generować statycznie prosto z tych pól (Astro/Hugo/Eleventy czytają frontmatter natywnie).</p>
<footer>Wygenerowane z bundle'a OKF przez <code>gen_pages.py</code> — nie edytuj
tych plików, edytuj <code>.md</code> i przegeneruj.</footer>
</body>
</html>