/* SCHULTZE – VOLLSTÄNDIGER NEUAUFBAU für 01-HTML-NEU.txt.
   Dieses gesamte Dokument ersetzt den bisherigen CSS-Inhalt.
   Alle eigenen Gestaltungsklassen beginnen mit sn-. */
body { margin: 0; padding: 0; }
#container.schultze-neu { width:100%; max-width:none; margin:0; padding:0; background:#f8f9f5; color:#1d303c; background-image:none; font:16px/1.75 Arial,Helvetica,sans-serif; text-align:left; }
#container.schultze-neu *, #container.schultze-neu *:before, #container.schultze-neu *:after { box-sizing:border-box; }
#container.schultze-neu #wrapper { width:100%; max-width:none; float:none; margin:0; padding:0; background:transparent; }
#container.schultze-neu a { color:inherit; }
#container.schultze-neu a:focus-visible { outline:3px solid #809849; outline-offset:5px; }
#container.schultze-neu p { margin:0 0 20px; }
#container.schultze-neu h1, #container.schultze-neu h2, #container.schultze-neu h3 { padding:0; font-family:Arial,Helvetica,sans-serif; font-weight:500; line-height:1.16; color:inherit; }
#container.schultze-neu h1 { margin:0 0 30px; font-size:52px; letter-spacing:-2px; }
#container.schultze-neu h2 { margin:0; font-size:46px; letter-spacing:-1.8px; }
#container.schultze-neu h3 { margin:0 0 15px; font-size:23px; letter-spacing:-.5px; }
#container.schultze-neu #header { margin:0; padding:0; background:#fff; }
#container.schultze-neu #header_wrapper { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:24px; max-width:1400px; min-height:110px; margin:auto; padding:22px 6%; }
#container.schultze-neu .sn-logo { display:block; flex-shrink:0; line-height:0; }
#container.schultze-neu .sn-logo img { display:block !important; width:255px; max-width:100%; height:auto !important; border:0; }
#container.schultze-neu #navigation { float:none; width:auto; margin:0; padding:0; background:none; }
#container.schultze-neu #navigation ul { margin:0; padding:0; list-style:none; background:none; }
#container.schultze-neu #navigation .mainNav1 { display:flex; align-items:center; flex-wrap:wrap; gap:8px 24px; }
#container.schultze-neu #navigation li { position:relative; float:none; width:auto; margin:0; padding:0; background:none; }
#container.schultze-neu #navigation li a { display:block; width:auto; padding:8px 0; font:normal 13px/1.4 Arial,Helvetica,sans-serif; text-align:left; text-decoration:none; border:0; background:transparent !important; color:#1d303c !important; }
#container.schultze-neu #navigation li a:hover, #container.schultze-neu #navigation li a.current { color:#627b30 !important; }
#container.schultze-neu #navigation ul ul { display:block; position:static; padding-left:12px; border-left:1px solid #d8dfd0; }
#container.schultze-neu #navigation ul ul a { padding:3px 0; font-size:11px; }
#container.schultze-neu .sn-header-link { border:1px solid #c8cfca; padding:12px 17px; font-size:12px; text-decoration:none; white-space:nowrap; }
#container.schultze-neu .sn-header-link span { margin-left:20px; }
/* Sichtbarkeit: kompletter neuer Startseiteninhalt ODER native Unterseite.
   Die Homepage-Klasse und ID wurden auf Ihrer tatsächlichen IONOS-Seite geprüft. */
#container.schultze-neu #sn-startseite { display:none; }
#container.schultze-neu #sn-native-seiten { display:block; }
body.startpage #container.schultze-neu #sn-startseite,
body#page-1704151 #container.schultze-neu #sn-startseite { display:block !important; }
body.startpage #container.schultze-neu #sn-native-seiten,
body#page-1704151 #container.schultze-neu #sn-native-seiten { display:none !important; }
#container.schultze-neu .sn-hero { position:relative; isolation:isolate; overflow:hidden; min-height:610px; margin:0 20px; border-radius:4px; background:#142a3b; color:#fff; }
#container.schultze-neu .sn-hero-img, #container.schultze-neu .sn-hero-shade { position:absolute; inset:0; width:100%; height:100%; }
#container.schultze-neu .sn-hero-img { display:block; object-fit:cover; object-position:center 58%; border:0; }
#container.schultze-neu .sn-hero-shade { background:linear-gradient(90deg,rgba(9,27,42,.92),rgba(9,27,42,.35) 85%); }
#container.schultze-neu .sn-hero-text { position:relative; padding:80px 6% 130px; }
#container.schultze-neu .sn-label { margin:0 0 26px; font-size:10px; font-weight:bold; line-height:1.6; letter-spacing:2px; }
#container.schultze-neu .sn-hero h1 { margin:0 0 25px; color:#fff; font-size:clamp(44px,5.2vw,78px); line-height:1.1; letter-spacing:-3px; }
#container.schultze-neu .sn-hero h1 span { color:#d8ed9d; }
#container.schultze-neu .sn-hero-intro { max-width:460px; margin-bottom:30px; color:#e1e6e7; font-size:16px; line-height:1.8; }
#container.schultze-neu .sn-button { display:inline-flex; align-items:center; gap:40px; padding:17px 23px; background:#d8ed9d; color:#142a3b; font-size:13px; text-decoration:none; }
#container.schultze-neu .sn-button:hover { background:#e7f7b9; }
#container.schultze-neu .sn-hero-bottom { position:absolute; bottom:0; left:6%; right:6%; display:flex; justify-content:space-between; gap:25px; padding:23px 0; border-top:1px solid #ffffff45; font-size:11px; color:#e1e6e7; }
#container.schultze-neu .sn-hero-bottom a { text-decoration:none; }
#container.schultze-neu .sn-hero-bottom a span { margin-left:20px; }
#container.schultze-neu .sn-themen { display:flex; flex-wrap:wrap; justify-content:center; gap:18px 55px; padding:26px 6%; border-bottom:1px solid #dce0d8; font-size:12px; }
#container.schultze-neu .sn-section { width:100%; max-width:1300px; margin:0 auto; padding:85px 6%; }
#container.schultze-neu .sn-section-head { display:flex; align-items:flex-end; justify-content:space-between; gap:40px; margin-bottom:45px; }
#container.schultze-neu .sn-section-head > p { margin:0; color:#68757c; font-size:14px; }
/* DAS KARTENRASTER: exakt zwei Spalten mit direkt enthaltenen Bildkarten. */
#container.schultze-neu .sn-karten-raster { display:grid !important; grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:36px; width:100%; margin:0; padding:0; }
#container.schultze-neu .sn-karte { display:block; min-width:0; width:auto; float:none; margin:0; padding:0; background:transparent; }
#container.schultze-neu .sn-karten-bild { display:block; position:relative; overflow:hidden; width:100%; height:290px; margin:0 0 24px; background:#d4ddd4; text-decoration:none; }
#container.schultze-neu .sn-karten-bild img { display:block !important; width:100% !important; max-width:none !important; height:100% !important; object-fit:cover; object-position:center; border:0; }
#container.schultze-neu .sn-karten-bild > span { position:absolute; right:16px; bottom:16px; display:flex; align-items:center; justify-content:center; width:38px; height:38px; border-radius:50%; background:#fff; color:#142a3b; font-size:18px; }
#container.schultze-neu .sn-karten-titel { display:flex; align-items:baseline; gap:13px; }
#container.schultze-neu .sn-karten-titel > span { flex-shrink:0; font-size:11px; color:#7b8b70; }
#container.schultze-neu .sn-karten-titel h3 { margin:0 0 15px; font-size:23px; }
#container.schultze-neu .sn-karte > p { margin:0 0 20px; padding-left:28px; font-size:14px; color:#68757c; line-height:1.85; }
#container.schultze-neu .sn-text-link { display:inline-block; padding-bottom:4px; border-bottom:1px solid #8d9d83; font-size:12px; text-decoration:none; }
#container.schultze-neu .sn-karte > .sn-text-link { margin-left:28px; }
#container.schultze-neu .sn-bildhinweis { margin:28px 0 0; font-size:10px; color:#68757c; }
#container.schultze-neu .sn-zweispaltig { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:80px; }
#container.schultze-neu .sn-ueber-uns { background:#142a3b; color:#fff; }
#container.schultze-neu .sn-ueber-uns h2 span { color:#d8ed9d; }
#container.schultze-neu .sn-ueber-uns p { color:#b3c1c8; font-size:14px; }
#container.schultze-neu .sn-grosstext, #container.schultze-neu .sn-ueber-uns .sn-grosstext { font-size:21px; line-height:1.65; }
#container.schultze-neu .sn-ueber-uns .sn-grosstext { color:#fff; }
#container.schultze-neu .sn-fakten { display:flex; gap:45px; padding-top:25px; margin-top:30px; border-top:1px solid #ffffff26; }
#container.schultze-neu .sn-fakten p { margin:0; font-size:18px; color:#fff; }
#container.schultze-neu .sn-fakten small { display:block; margin-top:6px; font-size:11px; color:#b3c1c8; }
#container.schultze-neu #sn-zusammenarbeit p:not(.sn-label):not(.sn-grosstext) { color:#68757c; font-size:14px; }
#container.schultze-neu .sn-novitate { display:flex; align-items:center; justify-content:space-between; gap:30px; max-width:1144px; margin:0 auto 80px; padding:28px 35px; background:#eaeee3; }
#container.schultze-neu .sn-novitate .sn-label { margin:0 0 8px; font-size:9px; }
#container.schultze-neu .sn-novitate h3 { margin-bottom:8px; }
#container.schultze-neu .sn-novitate p { margin:0; font-size:13px; }
#container.schultze-neu .sn-novitate > a { font-size:12px; white-space:nowrap; text-decoration:none; }
#container.schultze-neu #content { width:100%; max-width:1200px; float:none; margin:auto; padding:0; background:transparent; }
#container.schultze-neu #content > .gutter { padding:65px 6%; }
#container.schultze-neu #content h1 { font-size:44px; }
#container.schultze-neu #content h2 { margin:25px 0 18px; font-size:32px; }
#container.schultze-neu #content img, #container.schultze-neu #content iframe { max-width:100%; }
#container.schultze-neu #sidebar { width:100%; float:none; margin:0; padding:0; background:#f0f3eb; }
#container.schultze-neu #sidebar_content { max-width:1144px; margin:auto; padding:30px 6%; font-size:13px; }
#container.schultze-neu #sidebar_content h1, #container.schultze-neu #sidebar_content h2, #container.schultze-neu #sidebar_content h3 { font-size:20px; }
#container.schultze-neu .sn-kontakt { background:#dceba9; scroll-margin-top:25px; }
#container.schultze-neu .sn-kontakt h2 { margin-bottom:25px; font-size:56px; }
#container.schultze-neu .sn-kontakt p { font-size:14px; }
#container.schultze-neu .sn-kontaktdaten { padding-top:30px; min-width:0; }
#container.schultze-neu .sn-email { display:flex; justify-content:space-between; gap:15px; padding-bottom:20px; border-bottom:1px solid #9aaa75; font-size:clamp(17px,2vw,27px); text-decoration:none; overflow-wrap:anywhere; }
#container.schultze-neu .sn-telefon { display:inline-block; margin:20px 0; font-size:23px; text-decoration:none; }
#container.schultze-neu .sn-kontakt-links { display:flex; flex-wrap:wrap; gap:15px 30px; }
#container.schultze-neu #footer { width:100%; float:none; margin:0; background:#fff; }
#container.schultze-neu #footer > .gutter { float:none; width:100%; max-width:1300px; margin:auto; padding:28px 6%; background:transparent; font-size:11px; }
#container.schultze-neu .sn-footer-links { display:flex; flex-wrap:wrap; gap:12px 28px; margin-bottom:18px; font-size:12px; }
#container.schultze-neu .sn-footer-links a { text-decoration:none; }
#container.schultze-neu .c { clear:both; }
@media (max-width:1000px) {
  #container.schultze-neu .sn-header-link { display:none; }
  #container.schultze-neu .sn-logo img { width:220px; }
  #container.schultze-neu .sn-zweispaltig { gap:45px; }
  #container.schultze-neu .sn-karten-raster { gap:25px; }
  #container.schultze-neu .sn-karten-bild { height:250px; }
  #container.schultze-neu .sn-karten-titel h3 { font-size:20px; }
  #container.schultze-neu .sn-novitate { margin-left:6%; margin-right:6%; }
}
@media (max-width:700px) {
  #container.schultze-neu #header_wrapper { display:block; padding:23px 7% 18px; }
  #container.schultze-neu .sn-logo img { width:205px; }
  #container.schultze-neu #navigation { margin-top:20px; }
  #container.schultze-neu #navigation .mainNav1 { align-items:flex-start; gap:6px 20px; }
  #container.schultze-neu #navigation li a { font-size:12px; }
  #container.schultze-neu .sn-hero { min-height:560px; margin:0 10px; }
  #container.schultze-neu .sn-hero-text { padding:65px 7% 115px; }
  #container.schultze-neu .sn-hero h1 { font-size:clamp(33px,7.7vw,52px); letter-spacing:-1.5px; }
  #container.schultze-neu .sn-hero-intro { font-size:14px; }
  #container.schultze-neu .sn-hero-img { object-position:60% center; }
  #container.schultze-neu .sn-hero-bottom { left:7%; right:7%; }
  #container.schultze-neu .sn-hero-bottom > span { display:none; }
  #container.schultze-neu .sn-hero-bottom a { display:flex; justify-content:space-between; width:100%; }
  #container.schultze-neu .sn-themen { gap:12px 20px; font-size:10px; }
  #container.schultze-neu .sn-section { padding:60px 7%; }
  #container.schultze-neu h2 { font-size:35px; letter-spacing:-1px; }
  #container.schultze-neu .sn-section-head { display:block; margin-bottom:30px; }
  #container.schultze-neu .sn-section-head > p { margin-top:24px; font-size:13px; }
  #container.schultze-neu .sn-karten-raster { grid-template-columns:minmax(0,1fr) !important; gap:38px; }
  #container.schultze-neu .sn-karten-bild { height:250px; margin-bottom:20px; }
  #container.schultze-neu .sn-karten-titel h3 { font-size:22px; }
  #container.schultze-neu .sn-zweispaltig { grid-template-columns:minmax(0,1fr); gap:30px; }
  #container.schultze-neu .sn-fakten { gap:25px; }
  #container.schultze-neu .sn-fakten p { font-size:16px; }
  #container.schultze-neu .sn-novitate { display:block; padding:25px; margin-bottom:60px; }
  #container.schultze-neu .sn-novitate > a { display:inline-block; margin-top:20px; }
  #container.schultze-neu .sn-kontakt h2 { font-size:46px; }
  #container.schultze-neu .sn-kontaktdaten { padding-top:0; }
  #container.schultze-neu .sn-telefon { font-size:21px; }
  #container.schultze-neu #content > .gutter { padding:45px 7%; }
}