/* Polarpixel – Webseite. Schrift liegt lokal, keine externen Dienste. */
@font-face { font-family: "Fredoka"; font-weight: 300 700; font-display: swap; src: url("fredoka.woff2") format("woff2"); }
:root { --sky: #e6f5fd; --sky2: #8fd0f4; --card: #ffffff; --ink: #17335c; --muted: #5a729b; --rule: #cfe2f1; --blue: #2e84d5; --org: #f2761f; --go: #33ad48; --f: "Fredoka", "Trebuchet MS", system-ui, sans-serif; }
* { box-sizing: border-box; }
html { background: linear-gradient(180deg, var(--sky2), var(--sky) 420px) var(--sky); color: var(--ink); min-height: 100%; }
body { margin: 0; font-family: var(--f); font-size: 19px; line-height: 1.45; font-weight: 500; }
.wrap { max-width: 980px; margin: 0 auto; padding: 0 20px; }
a { color: var(--blue); }
.top { display: flex; align-items: center; gap: 12px; padding: 18px 0; }
.top img { border-radius: 14px; box-shadow: 0 4px 0 rgba(23, 51, 92, .2); }
.top a { font-size: 1.5rem; font-weight: 700; color: var(--ink); text-decoration: none; }
.top a.lang { margin-left: auto; font-size: 1rem; font-weight: 600; border-radius: 18px; padding: 4px 16px; background: var(--card); box-shadow: 0 3px 0 var(--rule); }
.hero { display: grid; grid-template-columns: 1fr; gap: 24px; padding: 10px 0 30px; }
@media (min-width: 820px) { .hero { grid-template-columns: 0.9fr 1.1fr; align-items: center; } }
h1 { font-weight: 700; font-size: clamp(2.6rem, 8vw, 4rem); line-height: 1; margin: 0 0 14px; color: #fff; -webkit-text-stroke: 10px #1a5cb0; paint-order: stroke fill; }
h1 .p2 { color: #ffd24d; -webkit-text-stroke-color: #b54d0e; }
.hero p { font-size: 1.25rem; margin: 0 0 16px; }
.badge { display: inline-block; color: #fff; background: linear-gradient(180deg, #74de6c, #33ad48); border-radius: 22px; padding: 8px 24px; font-size: 1.25rem; font-weight: 700; box-shadow: 0 5px 0 #22833a; }
.badge small { display: block; font-size: .9rem; font-weight: 500; }
.shots { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; }
.shots img { width: 100%; height: auto; border-radius: 18px; border: 4px solid #fff; box-shadow: 0 6px 0 rgba(23, 51, 92, .18); background: var(--card); }
.features { display: grid; grid-template-columns: 1fr; gap: 14px; padding: 6px 0 30px; }
@media (min-width: 700px) { .features { grid-template-columns: 1fr 1fr; } }
.features div { background: var(--card); border-radius: 18px; padding: 14px 18px; box-shadow: 0 4px 0 var(--rule); }
.features b { display: block; font-weight: 700; font-size: 1.25rem; }
.doc { background: var(--card); border-radius: 20px; padding: 22px clamp(16px, 4vw, 40px) 30px; margin-bottom: 30px; box-shadow: 0 5px 0 var(--rule); }
.doc h1 { font-size: 2.2rem; color: var(--ink); -webkit-text-stroke: 0; }
.doc h2 { font-weight: 700; font-size: 1.35rem; margin: 26px 0 6px; }
.doc p, .doc address { font-family: system-ui, -apple-system, "Segoe UI", sans-serif; font-size: 1rem; line-height: 1.6; font-style: normal; font-weight: 400; margin: 0 0 12px; }
.stand { color: var(--muted); }
.note { background: #e6f5fd; border-radius: 10px; padding: 6px 12px; }
footer { display: flex; flex-wrap: wrap; gap: 8px 18px; padding: 18px 0 40px; border-top: 2px dashed var(--rule); font-size: 1rem; color: var(--muted); }
footer a { color: var(--ink); }
