/*
Theme Name: Algorithmics Heilbronn
Theme URI: https://algorithmicsheilbronn.de/
Author: Algorithmics Heilbronn
Author URI: https://algorithmicsheilbronn.de/
Description: Hauseigenes Theme für Algorithmics Heilbronn — modernes, kindgerechtes Design im Stil führender Kinder-Programmierschulen: großer Hero-Banner, Vorteils-Karten, Kurs-Übersicht, 4-Schritte-Ablauf und dunkler 4-Spalten-Footer. Farben, Schriften, Banner-Texte und alle Startseiten-Sektionen sind vollständig über den Customizer steuerbar. Komplett selbst entwickelt, ohne Drittanbieter-Theme.
Version: 1.4.2
Requires at least: 6.0
Requires PHP: 7.4
License: Proprietary
Text Domain: algorithmicsheilbronn-theme
Tags: education, elementor, woocommerce, custom-colors, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready
*/

:root{
	--alg-primary:#6A2C91;
	--alg-primary-dark:#54226f;
	--alg-accent:#FBB03B;
	--alg-cyan:#00c2e0;
	--alg-ink:#2b2140;
	--alg-muted:#6b6480;
	--alg-bg:#ffffff;
	--alg-soft:#f6f3fb;
	--alg-border:#ece6f6;
	--alg-radius:14px;
	--alg-shadow:0 8px 30px rgba(40,20,70,.08);
	--alg-wrap:1200px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:"Segoe UI",system-ui,-apple-system,Arial,sans-serif;color:var(--alg-ink);background:var(--alg-bg);line-height:1.65;font-size:17px}
a{color:var(--alg-primary);text-decoration:none}
a:hover{color:var(--alg-primary-dark)}
img{max-width:100%;height:auto}
h1,h2,h3,h4{font-weight:700;line-height:1.25;color:var(--alg-ink);margin:.4em 0 .5em}
h1{font-size:2.4rem}h2{font-size:1.9rem}h3{font-size:1.4rem}
.alg-wrap{max-width:var(--alg-wrap);margin:0 auto;padding:0 20px}
.screen-reader-text{position:absolute!important;clip:rect(1px,1px,1px,1px);width:1px;height:1px;overflow:hidden}

/* buttons */
.alg-btn,.wp-block-button__link,button,input[type=submit]{display:inline-block;background:var(--alg-primary);color:#fff;border:0;border-radius:30px;padding:12px 26px;font-weight:600;cursor:pointer;transition:background .15s ease,transform .15s ease,box-shadow .15s ease}
.alg-btn:hover,button:hover,input[type=submit]:hover{background:var(--alg-primary-dark);color:#fff;transform:translateY(-2px);box-shadow:0 8px 22px rgba(106,44,145,.3)}
.alg-btn-accent{background:var(--alg-accent);color:#3a1d00}
.alg-btn-ghost{background:transparent;border:2px solid var(--alg-primary);color:var(--alg-primary)}

/* header */
.alg-header{position:sticky;top:0;z-index:9000;background:rgba(255,255,255,.92);backdrop-filter:saturate(160%) blur(8px);border-bottom:1px solid var(--alg-border)}
.alg-header-inner{display:flex;align-items:center;gap:18px;min-height:74px}
.alg-logo{display:flex;align-items:center;gap:10px;font-weight:800;font-size:1.25rem;color:var(--alg-primary)}
.alg-logo img{max-height:48px;width:auto}
.alg-nav{margin-left:auto}
.alg-nav ul{display:flex;gap:6px;list-style:none;margin:0;padding:0}
.alg-nav a{display:block;padding:10px 14px;border-radius:10px;color:var(--alg-ink);font-weight:600}
.alg-nav a:hover,.alg-nav .current-menu-item>a{background:var(--alg-soft);color:var(--alg-primary)}
.alg-nav ul ul{position:absolute;display:none;flex-direction:column;background:#fff;box-shadow:var(--alg-shadow);border-radius:12px;padding:8px;min-width:200px}
.alg-nav li{position:relative}
.alg-nav li:hover>ul{display:flex}
.alg-header-cta{margin-left:6px}
.alg-burger{display:none;margin-left:auto;background:none;border:0;font-size:26px;color:var(--alg-primary);cursor:pointer}

/* hero (used by archive/blog headers) */
.alg-page-hero{background:linear-gradient(120deg,var(--alg-primary),#8a3fb8);color:#fff;padding:54px 0;text-align:center}
.alg-page-hero h1{color:#fff;margin:0}
.alg-page-hero .alg-bc{opacity:.85;font-size:.95rem;margin-top:8px}

/* content */
.alg-main{padding:40px 0 60px;min-height:40vh}
.alg-article{background:#fff;max-width:820px;margin:0 auto}
.alg-article .entry-content{font-size:1.05rem}
.alg-card{background:#fff;border:1px solid var(--alg-border);border-radius:var(--alg-radius);overflow:hidden;box-shadow:var(--alg-shadow);transition:transform .18s ease}
.alg-card:hover{transform:translateY(-4px)}
.alg-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.alg-card-body{padding:16px 18px}
.alg-card h3{margin:0 0 6px;font-size:1.15rem}
.alg-meta{color:var(--alg-muted);font-size:.85rem}

/* footer */
.alg-footer{background:var(--alg-ink);color:#cfc7e0;margin-top:40px}
.alg-footer a{color:#fff}
.alg-footer-cols{display:grid;grid-template-columns:2fr 1fr 1fr 1.5fr;gap:30px;padding:48px 0}
.alg-footer h4{color:#fff;font-size:1.05rem}
.alg-footer-bottom{border-top:1px solid rgba(255,255,255,.12);padding:18px 0;font-size:.9rem;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px}
.alg-social a{display:inline-block;margin-right:10px;font-size:1.2rem}

/* pagination */
.alg-pagination{display:flex;gap:8px;justify-content:center;margin:30px 0}
.alg-pagination .page-numbers{padding:8px 14px;border-radius:10px;background:var(--alg-soft);color:var(--alg-ink)}
.alg-pagination .current{background:var(--alg-primary);color:#fff}

/* responsive */
@media(max-width:1024px){.alg-grid{grid-template-columns:repeat(2,1fr)}.alg-footer-cols{grid-template-columns:1fr 1fr}}
@media(max-width:768px){
	.alg-nav{display:none;position:absolute;top:74px;left:0;right:0;background:#fff;border-bottom:1px solid var(--alg-border);margin:0;padding:10px}
	.alg-nav.open{display:block}
	.alg-nav ul{flex-direction:column}
	.alg-burger{display:block}
	.alg-header-cta{display:none}
	h1{font-size:1.8rem}h2{font-size:1.5rem}
	.alg-grid{grid-template-columns:1fr}
	.alg-footer-cols{grid-template-columns:1fr;gap:20px;padding:32px 0}
}
