/* Die Klonwerkstatt - gemeinsames Aussehen aller Seiten.
   Farben nach Vorgabe: Blau #132E7C, Weiss, Gelb #FEC205. Schrift Arial.
   Zuerst fuer das Handy gebaut, groessere Bildschirme weiter unten. */

:root{
  --blau:#132E7C;
  --blau-hell:#2a49a8;
  --gelb:#FEC205;
  --gelb-dunkel:#c08f04;
  --text:#1b1b1b;
  --grau:#5e6472;
  --rahmen:#c9cfe0;
  --flaeche:#f4f6fb;
}

*,*::before,*::after{box-sizing:border-box}

html{
  -webkit-text-size-adjust:100%;
  color-scheme:light;
}

body{
  margin:0;
  font-family:Arial,Helvetica,sans-serif;
  font-size:1rem;
  line-height:1.55;
  color:var(--text);
  background:#fff;
}

.huelle{
  width:100%;
  max-width:30rem;
  margin:0 auto;
  padding:2.5rem 1.25rem 2rem;
}

.logo{
  display:block;
  width:13.75rem;
  max-width:70%;
  height:auto;
  margin:0 auto 2rem;
}

h1{
  margin:0 0 1.75rem;
  font-size:1.4375rem;
  line-height:1.3;
  color:var(--blau);
  text-align:center;
}

p{margin:0 0 1rem}
p:last-child{margin-bottom:0}

a{color:var(--blau)}

/* --- Formular --- */

.feld{margin-bottom:1.125rem}

.feld label{
  display:block;
  margin-bottom:.375rem;
  font-size:.9375rem;
  font-weight:700;
  color:var(--blau);
}

.feld input{
  width:100%;
  padding:.8rem .9rem;
  font-family:inherit;
  font-size:1rem;
  color:var(--text);
  background:#fff;
  border:2px solid var(--rahmen);
  border-radius:6px;
  appearance:none;
  -webkit-appearance:none;
}

.feld input:focus{
  outline:none;
  border-color:var(--blau);
  box-shadow:0 0 0 3px rgba(19,46,124,.15);
}

/* Spamfalle: fuer Menschen unsichtbar, fuer Maschinen auffindbar. */
.falle{
  position:absolute;
  left:-9999px;
  width:1px;
  height:1px;
  overflow:hidden;
}

.knopf{
  display:block;
  width:100%;
  margin-top:1.5rem;
  padding:.9375rem 1.5rem;
  font-family:inherit;
  font-size:1.0625rem;
  font-weight:700;
  color:var(--blau);
  background:var(--gelb);
  border:0;
  border-radius:6px;
  cursor:pointer;
  appearance:none;
  -webkit-appearance:none;
  box-shadow:3px 4px 0 var(--gelb-dunkel),6px 10px 20px rgba(0,0,0,.25);
  transition:transform .1s,box-shadow .1s;
}

.knopf:active{
  transform:translate(3px,4px);
  box-shadow:0 0 0 var(--gelb-dunkel),2px 3px 6px rgba(0,0,0,.2);
}

.hinweis{
  margin:1.125rem 0 0;
  font-size:.8125rem;
  line-height:1.5;
  color:var(--grau);
  text-align:center;
}

/* --- Terminkasten auf der Danke-Seite --- */

.termin{
  margin:0 0 1.75rem;
  padding:1.5rem 1.25rem;
  background:var(--blau);
  border-radius:10px;
  color:#fff;
  text-align:center;
}

.termin .tag{
  margin:0;
  font-size:1.0625rem;
  font-weight:700;
}

.termin .zeit{
  margin:.375rem 0 0;
  font-size:2.125rem;
  font-weight:700;
  line-height:1.1;
  color:var(--gelb);
}

.termin .dauer{
  margin:.375rem 0 0;
  font-size:.9375rem;
  color:#d6dcf0;
}

/* --- Zweitrangige Schaltflaechen, etwa Kalender --- */

.knopf-zweit{
  display:block;
  margin-top:.75rem;
  padding:.8125rem 1.25rem;
  font-size:1rem;
  font-weight:700;
  color:var(--blau);
  text-align:center;
  text-decoration:none;
  background:#fff;
  border:2px solid var(--blau);
  border-radius:6px;
}

.knopf-zweit:active{background:var(--flaeche)}

h2.klein{
  margin:2rem 0 .75rem;
  font-size:1.0625rem;
  color:var(--blau);
  text-align:center;
}

.hinweis-klein{
  margin:.5rem 0 1.25rem;
  font-size:.8125rem;
  line-height:1.45;
  color:var(--grau);
  text-align:center;
}

/* --- Hilfekasten --- */

.hilfe{
  margin:1.75rem 0 0;
  padding:1.25rem;
  background:var(--flaeche);
  border-radius:10px;
  font-size:.9375rem;
}

.hilfe h2{
  margin:0 0 .625rem;
  font-size:1.0625rem;
  color:var(--blau);
}

.hilfe ul{margin:0;padding-left:1.25rem}
.hilfe li{margin-bottom:.4375rem}
.hilfe li:last-child{margin-bottom:0}

/* --- Stimmen von Teilnehmern --- */

.stimme{
  margin:0 0 1rem;
  padding:1.125rem 1.25rem;
  background:var(--flaeche);
  border-left:4px solid var(--gelb);
  border-radius:0 10px 10px 0;
  font-size:.9375rem;
}

.stimme p{margin:0 0 .5rem;font-style:italic}
.stimme .wer{font-style:normal;font-weight:700;color:var(--blau);margin:0}

/* --- Fussbereich --- */

.fuss{
  margin-top:2.75rem;
  padding-top:1.25rem;
  border-top:1px solid var(--rahmen);
  font-size:.8125rem;
  color:var(--grau);
  text-align:center;
}

.fuss a{color:var(--grau)}
.fuss .trenn{margin:0 .5rem;color:var(--rahmen)}

/* --- Groessere Bildschirme --- */

@media (min-width:40rem){
  .huelle{padding:3.5rem 1.5rem 2.5rem}
  h1{font-size:1.875rem}
  .logo{margin-bottom:2.5rem}
  .termin .zeit{font-size:2.5rem}
}
