/*
Theme Name: Grundschule Wolperath
Template: kadence
Version: 0.2.7
Description: Child-Theme für grundschule-wolperath.de – Entwurf C (bunt, kindgerecht). Farben und Schriften; keine externen Dienste, Fonts lokal.
Text Domain: grundschule-wolperath
*/

/* ===== Entwurf C – Farbpalette (überschreibt Kadence Global Palette) ===== */
:root{
  --gsw-blue:#1f9fd6; --gsw-blue-d:#1580ad; --gsw-blue-s:#e6f5fc;
  --gsw-green:#46a35e; --gsw-green-d:#3a8c4f; --gsw-green-s:#e9f6ec;
  --gsw-lime:#8cbf2d; --gsw-lime-d:#5f8a1c; --gsw-lime-s:#eef6df;
  --gsw-yellow:#ffc328; --gsw-yellow-d:#e8a700; --gsw-yellow-s:#fff6dd;
  --gsw-coral:#f0664a; --gsw-coral-d:#d8513a; --gsw-coral-s:#fdeae5;
  --gsw-purple:#7b6cd9; --gsw-ink:#22324c; --gsw-cream:#fff8ec; --gsw-line:#ececec;
  --gsw-shadow:0 6px 22px rgba(34,50,76,.10); --gsw-shadow-sm:0 3px 12px rgba(34,50,76,.08);

  /* Kadence-Palette: 1 Primär, 2 Primär-dunkel, 3 Text, 4 Text-hell, 5 Rand, 6 Fläche-hell, 7/8 Hintergrund, 9 Weiß */
  --global-palette1:#1f9fd6;
  --global-palette2:#1580ad;
  --global-palette3:#22324c;
  --global-palette4:#3f4d66;
  --global-palette5:#6b7890;
  --global-palette6:#ececec;
  --global-palette7:#fff8ec;
  --global-palette8:#fffdf7;
  --global-palette9:#ffffff;
  --global-heading-font-family:'Fredoka',system-ui,sans-serif;
  --global-body-font-family:'Nunito',system-ui,sans-serif;
}
body{font-family:var(--global-body-font-family);color:var(--gsw-ink);background:var(--gsw-cream);}
h1,h2,h3,h4,h5,h6,.site-title{font-family:var(--global-heading-font-family);font-weight:600;letter-spacing:.01em;}

/* Menü: Hover Lindgrün wie Original-„Startseite“-Button */
.main-navigation .primary-menu-container > ul > li > a{border-radius:999px;padding:.45em .9em;transition:background .15s,color .15s;}
.main-navigation .primary-menu-container > ul > li > a:hover,
.main-navigation .primary-menu-container > ul > li.current-menu-item > a,
.main-navigation .primary-menu-container > ul > li.current-menu-ancestor > a{background:var(--gsw-lime);color:#fff;}
.main-navigation ul ul{border-radius:14px;box-shadow:var(--gsw-shadow);}

/* Buttons rund, freundlich */
.wp-block-button__link,.button,button.kb-button{border-radius:999px;font-family:var(--global-heading-font-family);font-weight:600;}

/* Farbige Karten (für Block-Patterns) */
.gsw-card{border-radius:18px;padding:1.4rem;box-shadow:var(--gsw-shadow-sm);background:#fff;}
.gsw-card--blue{background:var(--gsw-blue-s);} .gsw-card--green{background:var(--gsw-green-s);}
.gsw-card--yellow{background:var(--gsw-yellow-s);} .gsw-card--coral{background:var(--gsw-coral-s);} .gsw-card--lime{background:var(--gsw-lime-s);}

/* Barrierefreiheit: sichtbarer Fokus, Kontrast */
a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid var(--gsw-blue-d);outline-offset:2px;}
.skip-link:focus{background:var(--gsw-yellow);color:var(--gsw-ink);}
/* Lindgrün nie als Fließtextfarbe auf Creme (Kontrast) – nur Flächen */

/* ===== Startseite / Sektionen ===== */
.gsw-kicker{font-family:var(--global-heading-font-family);font-weight:600;color:var(--gsw-blue-d);text-transform:uppercase;letter-spacing:.08em;font-size:.85rem;margin-bottom:.3em;}
.gsw-lead{font-size:1.15rem;max-width:44rem;}
.gsw-hinweis{font-size:.9rem;color:#5b6a84;}
section.wp-block-group.alignfull{padding:3.5rem 1.25rem;}
.gsw-hero{background:linear-gradient(135deg,var(--gsw-blue-s),var(--gsw-yellow-s));text-align:center;padding-top:4.5rem;padding-bottom:4.5rem;}
.gsw-hero h1{font-size:clamp(2rem,5vw,3.4rem);line-height:1.1;margin:.2em 0 .5em;}
.gsw-hero .gsw-lead{margin-inline:auto;}
.gsw-hero .wp-block-buttons{justify-content:center;}
.gsw-quick{padding-top:0;margin-top:-2.5rem;}
.gsw-aktuelles{background:#fff;} .gsw-leben{background:var(--gsw-cream);} .gsw-termine{background:#fff;}
.gsw-ogs{background:var(--gsw-green-s);} .gsw-foev{background:var(--gsw-yellow-s);text-align:center;} .gsw-foev .gsw-lead{margin-inline:auto;} .gsw-foev .wp-block-buttons{justify-content:center;}
.gsw-kontakt{background:#fff;}
.gsw-cards .wp-block-column{display:flex;} .gsw-cards .gsw-card{flex:1;}
.gsw-card h3{margin-top:0;font-size:1.25rem;}
.gsw-card .wp-block-buttons{margin-top:.5rem;}
.gsw-posts .wp-block-post{background:#fff;border-radius:18px;box-shadow:var(--gsw-shadow-sm);padding:1rem;}
.gsw-posts .wp-block-post-featured-image img{border-radius:12px;}
.gsw-posts h3{font-size:1.15rem;margin:.4em 0;}
.gsw-posts .wp-block-post-date{font-size:.85rem;color:#5b6a84;}
.gsw-termin{display:grid;grid-template-columns:4.5rem 1fr;gap:1rem;align-items:center;background:#fff;border-radius:14px;box-shadow:var(--gsw-shadow-sm);padding:.9rem 1rem;margin-bottom:.8rem;}
.gsw-termin__datum{grid-row:1/3;background:var(--gsw-blue);color:#fff;border-radius:12px;text-align:center;padding:.4rem 0;line-height:1.1;font-family:var(--global-heading-font-family);}
.gsw-termin__datum strong{font-size:1.5rem;display:block;}
.gsw-termin__titel{font-size:1.05rem;margin:0;}
.gsw-termin__detail{margin:0;font-size:.9rem;color:#5b6a84;}
.wp-block-button.is-style-outline .wp-block-button__link{border-color:var(--gsw-blue);color:var(--gsw-blue-d);}
.wp-block-button__link{background:var(--gsw-blue);}
/* Header */
.site-header .site-title{font-family:var(--global-heading-font-family);color:var(--gsw-ink);}
.site-branding img{max-height:96px;width:auto;}
/* Footer */
.site-footer{background:var(--gsw-ink);color:#fff;} .site-footer a{color:#fff;}
/* 404 */
.gsw-404{text-align:center;padding:4rem 1rem;} .gsw-404 .gsw-404__emoji{font-size:5rem;line-height:1;}
@media (max-width:781px){.gsw-hero{padding-top:3rem;padding-bottom:3rem;} section.wp-block-group.alignfull{padding:2.5rem 1rem;}}

/* ===== Fix 1 (02.09.): Inhaltsbreite in Vollbreite-Sektionen + Termin-Karten-Grid ===== */
.wp-block-group.alignfull.is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)){max-width:1200px;margin-left:auto;margin-right:auto;}
.wp-block-group.alignfull.is-layout-constrained > .wp-block-columns{max-width:1200px;}
.gsw-termin.is-layout-constrained{display:grid;grid-template-columns:4.5rem 1fr;grid-template-rows:auto auto;column-gap:1rem;row-gap:.15rem;align-items:center;}
.gsw-termin > *{margin:0 !important;max-width:none !important;}
.gsw-termin > .gsw-termin__datum{grid-column:1;grid-row:1 / span 2;}
.gsw-termin > :not(.gsw-termin__datum){grid-column:2;}
.gsw-termin__titel{font-size:1.05rem;line-height:1.25;}
.gsw-card.is-layout-constrained > *{max-width:none;margin-left:0;margin-right:0;}
.gsw-hero.is-layout-constrained > *{margin-left:auto;margin-right:auto;}
.gsw-foev.is-layout-constrained > *{margin-left:auto;margin-right:auto;}

/* ===== Fix 2 (02.09.): Kadence rendert Gruppen mit .wp-block-group__inner-container ===== */
.wp-block-group.alignfull > .wp-block-group__inner-container{max-width:1200px;margin-left:auto;margin-right:auto;}
.wp-block-group.alignfull > .wp-block-group__inner-container > *{max-width:none;margin-left:0;margin-right:0;}
.gsw-hero > .wp-block-group__inner-container > *,.gsw-foev > .wp-block-group__inner-container > *{margin-left:auto;margin-right:auto;}
.gsw-hero .gsw-lead,.gsw-foev .gsw-lead{max-width:44rem;}
.gsw-card > .wp-block-group__inner-container > *{max-width:none;margin-left:0;margin-right:0;}
.gsw-termin{display:block;}
.gsw-termin > .wp-block-group__inner-container{display:grid;grid-template-columns:4.5rem 1fr;grid-template-rows:auto auto;column-gap:1rem;row-gap:.15rem;align-items:center;}
.gsw-termin > .wp-block-group__inner-container > *{margin:0 !important;max-width:none !important;}
.gsw-termin > .wp-block-group__inner-container > .gsw-termin__datum{grid-column:1;grid-row:1 / span 2;}
.gsw-termin > .wp-block-group__inner-container > :not(.gsw-termin__datum){grid-column:2;}
.gsw-termin__datum{background:var(--gsw-blue);color:#fff;border-radius:12px;text-align:center;padding:.4rem 0;line-height:1.1;font-family:var(--global-heading-font-family);}
