/* ===== NON-CRITICAL CSS (nachgelagert) ===== */

/* Typographie & Elemente, die unten auf der Seite erscheinen */
strong{font-weight:700}
.noPadding,.noPadding:hover{padding-left:0;padding-right:0}
input,select,textarea{padding:.5rem}
textarea{width:inherit;height:10rem}
form{background:#333;padding:1rem;border-radius:10px}
i{color:#fff}

/* Toast / UI-Helfer */
#toast{
  visibility:visible;min-width:250px;background:darkslategrey;color:#fff;text-align:center;
  border-radius:5px;padding:12px;position:fixed;bottom:130px;left:50%;transform:translateX(-50%);
  cursor:pointer;z-index:999;opacity:0;transition:opacity .5s,visibility .5s
}

/* Navigation – Detail-Stile, die nicht für erstes Rendern nötig sind */
.nav-list{border:2px solid #fff;border-radius:10px}
.icon-button{color:gray;background:none;border:none;cursor:pointer}
.icon-button:hover{color:green}
.nav-toggle{display:none;font-size:clamp(1.4rem,2.5vw,1.6rem);line-height:clamp(1.8rem,3.5vw,2.8rem)}
.nav-list{
  font-size:clamp(1.4rem,3vw,2.2rem);
  line-height:clamp(1.8rem,3.5vw,2.8rem)
}

/* Weitere Layout-Hilfsklassen */
#container{margin-bottom:3rem}
.column25{width:24%;display:block}
.column33{width:31%;display:block}
.column50{width:49%;display:block}
.column66{width:62%;display:block}
.column75{width:72%;display:block}
.column25,.column33,.column50,.column66,.column75{margin:.5rem}

/* Module unterhalb des Folds */
.imageFill{border-radius:0}
.philosophie{color:#f5f5f5;text-align:center}
.philosophie i{color:#e2c376;text-shadow:0 3px 20px #e2c376;font-style:italic}
.row-inputs{display:block;width:100%}
footer .social{padding:.2rem}

/* Footer (nicht LCP-relevant) */
footer{
  display:inherit;justify-content:space-between;background:#111;padding:1rem;
  position:fixed;bottom:0;width:-webkit-fill-available
}
.footer-container{align-items:center;flex-wrap:wrap}

/* Form-Details */
.row-checkbox{display:flex;align-items:flex-start;gap:.5rem;margin:.5rem}
.row-checkbox input[type="checkbox"]{margin-top:4px;transform:scale(1.2)}
.checkDatenschutz{text-align:justify}

/* Print-spezifisch */
.print{display:none}

/* Zusätzliche Typo-Scales (nicht kritisch) */
.philosophie{
  font-size:clamp(2rem,2.5vw,3rem);
  line-height:clamp(2.2rem,3.5vw,3.2rem)
}

/* Mobile Feinschliff (nicht kritisch für erstes Paint) */
@media (max-width:375px){
  body,p{font-size:1.2rem;line-height:1.8rem}
  h1,h2{font-size:1.8rem;line-height:2.4rem}
  h3{font-size:1.6rem;line-height:2.2rem}
}

@media (max-width:768px){
  section{flex-direction:column;align-items:center}
  .column33,.column50,.column66{width:97%;display:block}
  header{flex-direction:column;align-items:center}
  .linkLeft,.linkRight{bottom:10px}
}

/* Druck-Styles – komplett non-critical */
@media print{
  @page{margin:0}
  form{width:730px}
  body{margin:0;padding:5px 0 0 35px;color:#000;background:#fff}
  h1,h2,a,i,p,.philosophie{color:#333;background:#fff}
  input,textarea,select{
    border:none;border-bottom:1px solid #000;background:none;box-shadow:none;
    color:#000;font:inherit;padding:2px 0
  }
  input[type="date"]:empty,
  input[type="time"]:empty,
  input[type="date"]:not([value]),
  input[type="time"]:not([value]){color:transparent;-webkit-text-fill-color:transparent}
  input[type="checkbox"],input[type="radio"]{border:1px solid #000}
  header,footer,.no-print{display:none}
  .print{display:inherit}
  input::-webkit-datetime-edit,
  input::-webkit-inner-spin-button,
  input::-webkit-clear-button{display:none}
  button{display:none}
}
