/* Gestaltung der bisherigen bloomers-berlin.de (gemessen 05.10.2026):
   weiß, Open Sans 500, Überschrift #333 40px / Laufweite 4px, Text #666,
   Links #7BD1FC, Linkliste VERSALIEN / Laufweite 4px mit „| “, Trenner „—–“, eine Spalte.
   Schrift liegt auf dem eigenen Server – keine Verbindung zu Google beim Seitenaufruf. */
@font-face {
  font-family: "Open Sans";
  font-style: normal;
  font-weight: 400 600;
  font-display: swap;
  src: url("/fonts/open-sans-latin.woff2") format("woff2");
}
:root { --tinte:#333; --text:#666; --leise:#8a8a8a; --link:#3aa9e0; --link-hell:#7BD1FC; }
* { box-sizing:border-box; }
html { -webkit-text-size-adjust:100%; text-size-adjust:100%; }
body { margin:0; background:#fff; color:var(--text); font-family:"Open Sans",Arial,sans-serif; font-weight:500; }
.seite { max-width:640px; margin:0 auto;
         padding:72px max(24px, env(safe-area-inset-right)) 56px max(24px, env(safe-area-inset-left)); }
.blume { width:118px; height:118px; display:block; margin:0 0 28px -6px; color:var(--tinte); }
h1 { margin:0; color:var(--tinte); font-size:40px; font-weight:500; letter-spacing:4px; line-height:1.2; }
.unter { margin:10px 0 0; color:var(--tinte); font-size:20px; letter-spacing:2px; line-height:1.4; font-weight:400; }
.text { margin:36px 0 0; font-size:17px; line-height:1.75; font-weight:400; max-width:560px; }
.trenner { margin:40px 0 22px; color:var(--text); font-size:22px; }
nav h2 { margin:0 0 10px; font-size:12px; font-weight:600; letter-spacing:3px; text-transform:uppercase; color:var(--leise); }
nav ul { list-style:none; margin:0 0 26px; padding:0; }
nav a { display:block; padding:3px 0; color:var(--tinte); text-decoration:none; font-size:16px;
        letter-spacing:4px; text-transform:uppercase; line-height:1.7; overflow-wrap:anywhere; }
nav a::before { content:"| "; }
nav a span { text-transform:none; letter-spacing:0.5px; color:var(--leise); font-size:13px; font-weight:400; margin-left:8px; }
nav a:hover, nav a:focus-visible { color:var(--link); }
a:focus-visible { outline:2px solid var(--link); outline-offset:3px; border-radius:2px; }
footer { margin-top:56px; font-size:15px; letter-spacing:1px; }
footer a { color:var(--link); text-decoration:none; text-transform:uppercase; display:inline-block; padding:8px 0; }
footer .firma { display:block; margin-top:6px; color:var(--leise); font-size:13px; letter-spacing:0.5px; }

/* Handy: größere Tippflächen (≥ 44 px), weniger Sperrung, damit lange Adressen nicht umbrechen */
@media (max-width:520px) {
  .seite { padding-top:44px; padding-bottom:40px; }
  .blume { width:96px; height:96px; margin-bottom:22px; }
  h1 { font-size:32px; letter-spacing:3px; }
  .unter { font-size:17px; letter-spacing:1px; }
  .text { font-size:16px; margin-top:28px; }
  nav a { font-size:13.5px; letter-spacing:2px; padding:9px 0 8px; line-height:1.35; }
  nav a span { display:block; margin:2px 0 0 14px; font-size:12.5px; }
  footer a { padding:13px 0; }
}
@media (prefers-reduced-motion:no-preference) { nav a { transition:color .15s; } }

/* Unterseiten (Impressum, Datenschutz) */
.zurueck { display:inline-block; padding:10px 0; margin-bottom:28px; color:var(--tinte); text-decoration:none;
           font-size:14px; letter-spacing:3px; text-transform:uppercase; }
.zurueck:hover { color:var(--link); }
.recht h1 { font-size:32px; letter-spacing:3px; }
.recht h2 { margin:36px 0 8px; color:var(--tinte); font-size:16px; font-weight:600; letter-spacing:2px; text-transform:uppercase; }
.recht p, .recht li { font-size:16px; line-height:1.7; font-weight:400; }
.recht ul { padding-left:20px; }
.recht a { color:var(--link); }
.recht .stand { margin-top:40px; color:var(--leise); font-size:13px; }

