/*
Theme Name: Aller-Weser-Oberschule
Theme URI: https://obs-doerverden.de
Author: Aller-Weser-Oberschule Dörverden
Description: Maßgeschneidertes Block-Theme (Full Site Editing) für die Landingpage der Aller-Weser-Oberschule Dörverden. Modernes, barrierearmes Design in den Schulfarben, Schriften lokal eingebunden. Alle Abschnitte im WordPress-Editor bearbeitbar.
Version: 1.31.1
Requires at least: 6.4
Tested up to: 6.6
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: aws-oberschule
*/

:root{
  --aws-radius: 18px;
  --aws-radius-sm: 12px;
  --aws-shadow: 0 1px 2px rgba(18,42,44,.05), 0 12px 32px -12px rgba(18,42,44,.14);
  --aws-shadow-sm: 0 1px 2px rgba(18,42,44,.06), 0 4px 14px -8px rgba(18,42,44,.16);
  --c-bg: var(--wp--preset--color--base);
  --c-surface: var(--wp--preset--color--surface);
  --c-surface-2: var(--wp--preset--color--surface-2);
  --c-ink: var(--wp--preset--color--contrast);
  --c-muted: var(--wp--preset--color--muted);
  --c-line: var(--wp--preset--color--line);
  --c-primary: var(--wp--preset--color--primary);
  --c-primary-deep: var(--wp--preset--color--primary-deep);
  --c-primary-soft: var(--wp--preset--color--primary-soft);
  --c-accent: var(--wp--preset--color--accent);
}

/* Dunkelmodus (per Umschalter) – überschreibt die Farbwerte, alles andere folgt automatisch */
:root[data-theme="dark"]{
  --wp--preset--color--base: #0E1A22;
  --wp--preset--color--surface: #14242E;
  --wp--preset--color--surface-2: #1A2E38;
  --wp--preset--color--contrast: #E9F1F4;
  --wp--preset--color--muted: #93A9B2;
  --wp--preset--color--line: #243A45;
  --wp--preset--color--primary: #4FB3E0;
  --wp--preset--color--primary-deep: #2E86B8;
  --wp--preset--color--primary-soft: #123043;
  --wp--preset--color--accent: #3FD0DE;
}

body{ background: var(--c-bg); color: var(--c-ink); }
a{ color: var(--c-primary); }

/* ---------- Section scaffolding ---------- */
.aws-section{ padding-block: clamp(3.4rem, 2.6rem + 3vw, 5.5rem); }
.aws-section.aws-alt{ background: var(--c-surface-2); border-block: 1px solid var(--c-line); }
.aws-inner{ width:100%; max-width: 1140px; margin-inline:auto; padding-inline: clamp(1.1rem, 4vw, 2.2rem); }

.aws-eyebrow{ font-size:.82rem !important; font-weight:600; letter-spacing:.13em; text-transform:uppercase; color:var(--c-primary); display:flex; align-items:center; gap:.55rem; margin:0 0 .7rem; }
.aws-eyebrow::before{ content:""; width:26px; height:2px; background:var(--c-primary); border-radius:2px; }
.aws-sec-head{ max-width:60ch; margin-bottom:2.6rem; }
.aws-sec-head h2{ font-size: clamp(2rem, 1.6rem + 1.8vw, 3rem); margin:0; }
.aws-sec-head p{ color:var(--c-muted); font-size:1.25rem; margin:.8rem 0 0; line-height:1.5; }

/* ---------- Buttons (pill) ---------- */
.wp-block-button.aws-btn-primary .wp-block-button__link{
  background: var(--c-primary); color:#fff; border-radius:100px; padding:.8rem 1.5rem;
  font-weight:600; box-shadow: var(--aws-shadow-sm); border:1px solid transparent;
  transition: background .18s ease, transform .18s ease;
}
.wp-block-button.aws-btn-primary .wp-block-button__link:hover{ background:var(--c-primary-deep); transform:translateY(-2px); }
:root[data-theme="dark"] .wp-block-button.aws-btn-primary .wp-block-button__link{ color:#06171a; }
.wp-block-button.aws-btn-ghost .wp-block-button__link{
  background:transparent; color:var(--c-ink); border:1px solid var(--c-line); border-radius:100px;
  padding:.8rem 1.5rem; font-weight:600; transition: border-color .18s, color .18s, transform .18s;
}
.wp-block-button.aws-btn-ghost .wp-block-button__link:hover{ border-color:var(--c-primary); color:var(--c-primary); transform:translateY(-2px); }

/* ---------- Header ---------- */
.aws-header{ position:sticky; top:0; z-index:50; background:color-mix(in srgb, var(--c-bg) 85%, transparent); backdrop-filter:blur(12px); border-bottom:1px solid var(--c-line); transition:box-shadow .3s ease, background .3s ease; }
.aws-header.scrolled{ box-shadow:0 8px 26px -16px rgba(18,42,44,.35); background:color-mix(in srgb, var(--c-bg) 93%, transparent); }
.aws-nav{ width:100%; max-width:1220px; margin-inline:auto; padding:1.25rem clamp(1.1rem,4vw,2.2rem); gap:1.15rem; transition:padding .3s ease; }
.aws-header.scrolled .aws-nav{ padding-block:.7rem; }
.aws-brand{ text-decoration:none; gap:.85rem; flex:none; }
.aws-brand .wp-block-site-logo{ width:auto !important; }
.aws-brand .wp-block-site-logo img{ height:60px !important; width:auto !important; max-width:none; transition:height .3s ease; }
.aws-header.scrolled .aws-brand .wp-block-site-logo img{ height:46px !important; }
.aws-brand-name{ font-family: var(--wp--preset--font-family--fraunces); font-weight:600; font-size:1.3rem; color:var(--c-ink); line-height:1.1; white-space:nowrap; }
.aws-brand-sub{ font-size:.82rem; color:var(--c-muted); letter-spacing:.03em; margin:0; white-space:nowrap; }
.aws-nav .wp-block-navigation{ font-size:1.04rem; flex-wrap:nowrap; }
.aws-nav .wp-block-navigation .wp-block-navigation__container{ flex-wrap:nowrap; gap:clamp(.8rem, 1.4vw, 1.3rem); }
.aws-nav .wp-block-navigation a{ color:var(--c-muted); font-weight:500; position:relative; padding-block:.35rem; white-space:nowrap; transition:color .2s ease; }
.aws-nav .wp-block-navigation a::after{ content:""; position:absolute; left:0; right:0; bottom:0; height:2px; background:var(--c-primary); border-radius:2px; transform:scaleX(0); transform-origin:left center; transition:transform .28s cubic-bezier(.2,.8,.2,1); }
.aws-nav .wp-block-navigation a:hover{ color:var(--c-ink); }
.aws-nav .wp-block-navigation a:hover::after{ transform:scaleX(1); }
.aws-nav .wp-block-button__link{ font-size:1.02rem; padding:.85rem 1.7rem; }
/* Lebendiges Einblenden der Kopfleiste */
@media (prefers-reduced-motion: no-preference){
  .aws-nav > *{ animation: aws-nav-in .5s ease both; }
  .aws-nav > *:nth-child(2){ animation-delay:.06s; }
  .aws-nav > *:nth-child(3){ animation-delay:.12s; }
  .aws-nav > *:nth-child(4){ animation-delay:.18s; }
  @keyframes aws-nav-in{ from{ opacity:0; transform:translateY(-10px);} to{ opacity:1; transform:none; } }
}
@media (max-width: 1120px){
  .aws-brand-sub{ display:none; }
  .aws-nav{ gap:1rem; }
  .aws-nav .wp-block-navigation{ font-size:1rem; }
}
@media (max-width: 600px){
  .aws-brand .wp-block-site-logo img{ height:46px !important; }
  .aws-brand-name{ font-size:1.15rem; }
  .aws-nav{ padding-block:.9rem; }
}
.aws-theme-toggle{ width:44px; height:44px; border-radius:50%; border:1px solid var(--c-line); background:var(--c-surface); color:var(--c-ink); cursor:pointer; display:grid; place-items:center; padding:0; transition:border-color .15s, transform .15s; }
.aws-theme-toggle:hover{ border-color:var(--c-primary); transform:translateY(-1px) rotate(-8deg); }
.aws-theme-toggle svg{ width:20px; height:20px; }
.aws-theme-toggle .icon-moon{ display:none; }
:root[data-theme="dark"] .aws-theme-toggle .icon-sun{ display:none; }
:root[data-theme="dark"] .aws-theme-toggle .icon-moon{ display:block; }
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]) .aws-theme-toggle .icon-sun{ display:none; }
  :root:not([data-theme="light"]) .aws-theme-toggle .icon-moon{ display:block; }
}

/* ---------- Hero ---------- */
.aws-hero{ position:relative; overflow:hidden; padding-block: clamp(3rem, 2rem + 5vw, 6rem); }
.aws-hero-bg{ position:absolute; inset:0; z-index:0; pointer-events:none; }
.aws-hero-bg svg{ width:100%; height:100%; display:block; }
.aws-hero .aws-inner{ position:relative; z-index:1; }
.aws-hero h1{ font-size: clamp(2.1rem, 1.6rem + 2.3vw, 3.4rem); font-weight:600; margin:0; }
.aws-hero h1 em{ font-style:italic; color:var(--c-primary); }
.aws-hero-lede{ font-size:1.3rem; color:var(--c-muted); max-width:34ch; line-height:1.5; margin:1.3rem 0 0; }
.aws-hero-meta{ color:var(--c-muted); font-size:.9rem; margin:2rem 0 0; }
.aws-hero-meta strong{ font-weight:500; }

.aws-hero-card{ background:var(--c-surface); border:1px solid var(--c-line); border-radius:var(--aws-radius); box-shadow:var(--aws-shadow); overflow:hidden; }
.aws-photo{ aspect-ratio:4/3; background:
    radial-gradient(120% 90% at 20% 10%, color-mix(in srgb, var(--c-accent) 40%, transparent), transparent 60%),
    linear-gradient(150deg, var(--c-primary-deep), var(--c-primary));
  display:grid; place-items:center; position:relative; }
.aws-photo::after{ content:"Platzhalter · Foto"; position:absolute; bottom:12px; left:14px; font-size:.72rem; letter-spacing:.05em; text-transform:uppercase; color:#fff; background:rgba(0,0,0,.25); padding:.25rem .6rem; border-radius:100px; }
.aws-hero-card .aws-card-body{ padding:1.1rem 1.3rem 1.3rem; }
.aws-hero-card .aws-card-body h3{ font-size:1.15rem; margin:0 0 .3rem; }
.aws-hero-card .aws-card-body p{ color:var(--c-muted); font-size:.94rem; margin:0; }

/* ---------- Icon chips ---------- */
.aws-ic{ width:46px; height:46px; border-radius:13px; background:var(--c-primary-soft); position:relative; margin-bottom:1rem; }
.aws-ic::before{ content:""; position:absolute; inset:0; margin:auto; width:24px; height:24px; background:var(--c-primary);
  -webkit-mask-repeat:no-repeat; mask-repeat:no-repeat; -webkit-mask-position:center; mask-position:center; -webkit-mask-size:contain; mask-size:contain; }
.aws-ic-clock::before{ -webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'><circle cx='12' cy='12' r='9'/><path d='M12 7v5l3 2'/></svg>"); mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'><circle cx='12' cy='12' r='9'/><path d='M12 7v5l3 2'/></svg>"); }
.aws-ic-star::before{ -webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'><path d='M12 3l2.6 5.3 5.9.9-4.3 4.1 1 5.8L12 16.9 6.8 19.6l1-5.8L3.5 9.7l5.9-.9z'/></svg>"); mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'><path d='M12 3l2.6 5.3 5.9.9-4.3 4.1 1 5.8L12 16.9 6.8 19.6l1-5.8L3.5 9.7l5.9-.9z'/></svg>"); }
.aws-ic-pin::before{ -webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'><path d='M12 21s-7-4.5-7-10a7 7 0 0114 0c0 5.5-7 10-7 10z'/><circle cx='12' cy='11' r='2.5'/></svg>"); mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'><path d='M12 21s-7-4.5-7-10a7 7 0 0114 0c0 5.5-7 10-7 10z'/><circle cx='12' cy='11' r='2.5'/></svg>"); }
.aws-ic-briefcase::before{ -webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'><path d='M4 7h16M4 7v10a2 2 0 002 2h12a2 2 0 002-2V7M9 7V5a2 2 0 012-2h2a2 2 0 012 2v2'/></svg>"); mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'><path d='M4 7h16M4 7v10a2 2 0 002 2h12a2 2 0 002-2V7M9 7V5a2 2 0 012-2h2a2 2 0 012 2v2'/></svg>"); }
.aws-ic-ball::before{ -webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'><circle cx='12' cy='12' r='9'/><path d='M3.5 9h17M3.5 15h17M12 3a9 9 0 000 18'/></svg>"); mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'><circle cx='12' cy='12' r='9'/><path d='M3.5 9h17M3.5 15h17M12 3a9 9 0 000 18'/></svg>"); }
.aws-ic-palette::before{ -webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'><path d='M12 3a9 9 0 100 18c1.1 0 2-.9 2-2 0-.5-.2-.9-.5-1.3-.3-.4-.5-.8-.5-1.2 0-.8.7-1.5 1.5-1.5H17a4 4 0 004-4c0-3.9-4-7-9-7z'/><circle cx='7.5' cy='11' r='1'/><circle cx='12' cy='8' r='1'/><circle cx='16.5' cy='11' r='1'/></svg>"); mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'><path d='M12 3a9 9 0 100 18c1.1 0 2-.9 2-2 0-.5-.2-.9-.5-1.3-.3-.4-.5-.8-.5-1.2 0-.8.7-1.5 1.5-1.5H17a4 4 0 004-4c0-3.9-4-7-9-7z'/><circle cx='7.5' cy='11' r='1'/><circle cx='12' cy='8' r='1'/><circle cx='16.5' cy='11' r='1'/></svg>"); }
.aws-ic-music::before{ -webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'><path d='M9 18V5l12-2v13'/><circle cx='6' cy='18' r='3'/><circle cx='18' cy='16' r='3'/></svg>"); mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'><path d='M9 18V5l12-2v13'/><circle cx='6' cy='18' r='3'/><circle cx='18' cy='16' r='3'/></svg>"); }
.aws-ic-leaf::before{ -webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'><path d='M12 22c4-2 8-6 8-11a8 8 0 00-8-3 8 8 0 00-8 3c0 5 4 9 8 11z'/><path d='M12 8v14'/></svg>"); mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'><path d='M12 22c4-2 8-6 8-11a8 8 0 00-8-3 8 8 0 00-8 3c0 5 4 9 8 11z'/><path d='M12 8v14'/></svg>"); }
.aws-ic-book::before{ -webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'><path d='M4 5a2 2 0 012-2h6v16H6a2 2 0 00-2 2zM20 5a2 2 0 00-2-2h-6v16h6a2 2 0 012 2z'/></svg>"); mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'><path d='M4 5a2 2 0 012-2h6v16H6a2 2 0 00-2 2zM20 5a2 2 0 00-2-2h-6v16h6a2 2 0 012 2z'/></svg>"); }
.aws-ic-learn::before{ -webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'><path d='M4 19V6a1 1 0 011-1h6v14M13 19V5h6a1 1 0 011 1v13M3 19h18'/></svg>"); mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'><path d='M4 19V6a1 1 0 011-1h6v14M13 19V5h6a1 1 0 011 1v13M3 19h18'/></svg>"); }
.aws-ic-phone::before{ -webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'><path d='M4 5a2 2 0 012-2h2l2 5-2 1a11 11 0 005 5l1-2 5 2v2a2 2 0 01-2 2A16 16 0 014 5z'/></svg>"); mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'><path d='M4 5a2 2 0 012-2h2l2 5-2 1a11 11 0 005 5l1-2 5 2v2a2 2 0 01-2 2A16 16 0 014 5z'/></svg>"); }
.aws-ic-mail::before{ -webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'><rect x='3' y='5' width='18' height='14' rx='2'/><path d='M3 7l9 6 9-6'/></svg>"); mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'><rect x='3' y='5' width='18' height='14' rx='2'/><path d='M3 7l9 6 9-6'/></svg>"); }

/* ---------- Cards ---------- */
.aws-grid{ display:grid; gap:1.1rem; }
.aws-grid-4{ grid-template-columns:repeat(4,1fr); }
.aws-grid-3{ grid-template-columns:repeat(3,1fr); }
.aws-grid-2{ grid-template-columns:repeat(2,1fr); }
@media(max-width:940px){ .aws-grid-4{ grid-template-columns:repeat(2,1fr); } .aws-grid-3{ grid-template-columns:repeat(2,1fr); } }
@media(max-width:560px){ .aws-grid-4,.aws-grid-3,.aws-grid-2{ grid-template-columns:1fr; } }

.aws-card{ background:var(--c-surface); border:1px solid var(--c-line); border-radius:var(--aws-radius); padding:1.5rem 1.4rem !important; box-shadow:var(--aws-shadow-sm); transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease; }
.aws-card:hover{ transform:translateY(-4px); box-shadow:var(--aws-shadow); border-color:color-mix(in srgb, var(--c-primary) 40%, var(--c-line)); }
.aws-card h3{ font-size:1.3rem; margin:0; }
.aws-card p{ color:var(--c-muted); font-size:.95rem; margin:.5rem 0 0; }
.aws-card .wp-block-list{ margin:.7rem 0 0; padding:0; list-style:none; display:grid; gap:.4rem; }
.aws-card .wp-block-list li{ color:var(--c-muted); font-size:.93rem; padding-left:1.05rem; position:relative; }
.aws-card .wp-block-list li::before{ content:""; position:absolute; left:0; top:.62em; width:5px; height:5px; border-radius:50%; background:var(--c-accent); }
.aws-card .wp-block-buttons{ margin-top:1.1rem; }
.aws-buch-cta{ margin-top:1.4rem; }
/* Materiallisten */
.aws-material-card{ display:flex; flex-direction:column; align-items:flex-start; }
.aws-material-card h3{ margin-top:.4rem; }
.aws-material-card .wp-block-file{ margin:.9rem 0 0; display:flex; flex-wrap:wrap; align-items:center; gap:.5rem .9rem; }
.aws-material-card .wp-block-file>a:not(.wp-block-file__button){ color:var(--c-muted); font-size:.88rem; text-decoration:none; }
.aws-material-card .wp-block-file__button{ background:var(--c-primary); color:#fff; border:1px solid transparent; border-radius:100px; padding:.5rem 1.15rem; font-weight:600; font-size:.88rem; text-decoration:none; box-shadow:var(--aws-shadow-sm); transition:background .18s ease, transform .18s ease; }
.aws-material-card .wp-block-file__button:hover{ background:var(--c-primary-deep); transform:translateY(-2px); }
:root[data-theme="dark"] .aws-material-card .wp-block-file__button{ color:#06171a; }
/* Aus dem Schulalltag (Beiträge) */
.aws-posts .aws-posts-grid{ list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(3,1fr); gap:1.4rem; }
@media(max-width:940px){ .aws-posts .aws-posts-grid{ grid-template-columns:repeat(2,1fr); } }
@media(max-width:600px){ .aws-posts .aws-posts-grid{ grid-template-columns:1fr; } }
.aws-post-card{ background:var(--c-surface); border:1px solid var(--c-line); border-radius:var(--aws-radius); overflow:hidden; box-shadow:var(--aws-shadow-sm); transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease; height:100%; display:flex; flex-direction:column; }
.aws-post-card:hover{ transform:translateY(-4px); box-shadow:var(--aws-shadow); border-color:color-mix(in srgb, var(--c-primary) 40%, var(--c-line)); }
.aws-post-thumb{ margin:0; }
.aws-post-thumb a, .aws-post-thumb img{ display:block; }
.aws-post-thumb img{ width:100%; height:200px; object-fit:cover; }
.aws-post-body{ padding:1.2rem 1.3rem 1.4rem; display:flex; flex-direction:column; gap:.5rem; }
.aws-post-date{ color:var(--c-muted); font-size:.85rem; margin:0; }
.aws-post-card .wp-block-post-title{ margin:0; font-size:1.25rem; line-height:1.25; }
.aws-post-card .wp-block-post-title a{ color:var(--c-ink); text-decoration:none; }
.aws-post-card .wp-block-post-title a:hover{ color:var(--c-primary); }
.aws-post-card .wp-block-post-excerpt{ margin:0; }
.aws-post-card .wp-block-post-excerpt p{ color:var(--c-muted); font-size:.95rem; margin:0; }
.aws-post-card .wp-block-post-excerpt__more-link{ display:inline-block; margin-top:.5rem; color:var(--c-primary); font-weight:600; text-decoration:none; }
.aws-posts-empty{ text-align:center; padding:2rem 1rem; color:var(--c-muted); border:1px dashed var(--c-line); border-radius:var(--aws-radius); }
.aws-posts-pagination{ margin-top:2rem; display:flex; flex-wrap:wrap; gap:.6rem 1rem; justify-content:center; align-items:center; }
.aws-posts-pagination a, .aws-posts-pagination .wp-block-query-pagination-numbers{ color:var(--c-primary); font-weight:600; text-decoration:none; }
.aws-posts-pagination .current{ color:var(--c-ink); }
/* Einzelansicht Bericht */
.aws-post-single .aws-inner{ max-width:820px; }
.aws-post-back a{ color:var(--c-primary); font-weight:600; text-decoration:none; }
.aws-post-back a:hover{ text-decoration:underline; }
.aws-post-hero img{ width:100%; max-height:440px; object-fit:cover; border-radius:var(--aws-radius); display:block; margin:.4rem 0 1.4rem; }
.aws-post-single .wp-block-post-title{ font-family:var(--wp--preset--font-family--fraunces); font-size:clamp(1.8rem,1.3rem+2vw,2.6rem); line-height:1.15; margin:0 0 .3rem; }
.aws-post-single .wp-block-post-date{ color:var(--c-muted); font-size:.9rem; margin:0 0 1.4rem; }
.aws-post-single .wp-block-post-content{ font-size:1.05rem; line-height:1.75; }
.aws-post-single .wp-block-post-content img{ border-radius:var(--aws-radius); height:auto; }
/* Kommunikation Schule–Eltern */
.aws-komm-concept{ display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:1rem 1.4rem; margin:1.4rem 0 0; padding:1.4rem; background:var(--c-surface-2); border:1px solid var(--c-line); border-radius:var(--aws-radius); }
.aws-komm-actor{ display:flex; flex-direction:column; gap:.2rem; text-align:center; min-width:140px; padding:1rem 1.2rem; background:var(--c-surface); border:1px solid var(--c-line); border-radius:var(--aws-radius); box-shadow:var(--aws-shadow-sm); }
.aws-komm-actor-name{ font-family:var(--wp--preset--font-family--fraunces); font-weight:600; font-size:1.25rem; color:var(--c-ink); }
.aws-komm-actor-role{ color:var(--c-muted); font-size:.9rem; }
.aws-komm-core{ display:flex; flex-direction:column; align-items:center; gap:.55rem; flex:1 1 220px; max-width:320px; }
.aws-komm-arrows{ display:flex; justify-content:space-between; width:100%; color:var(--c-muted); font-size:.82rem; font-weight:600; }
.aws-komm-hub{ display:flex; flex-direction:column; align-items:center; gap:.15rem; padding:1rem 1.6rem; border-radius:100px; background:var(--c-primary); color:#fff; box-shadow:var(--aws-shadow); width:100%; }
.aws-komm-hub-title{ font-family:var(--wp--preset--font-family--fraunces); font-weight:600; font-size:1.7rem; line-height:1; }
.aws-komm-hub-sub{ font-size:.82rem; opacity:.9; }
:root[data-theme="dark"] .aws-komm-hub{ color:#06171a; }
.aws-komm-hub-tags{ display:flex; flex-wrap:wrap; justify-content:center; gap:.4rem; }
.aws-komm-hub-tags span{ font-size:.8rem; font-weight:600; color:var(--c-primary); background:var(--c-primary-soft); border:1px solid color-mix(in srgb, var(--c-primary) 25%, transparent); padding:.25rem .6rem; border-radius:100px; }
.aws-komm-firstcontact{ margin:1.1rem 0 0; padding:.9rem 1.1rem; border-left:4px solid var(--c-primary); background:var(--c-primary-soft); border-radius:0 var(--aws-radius) var(--aws-radius) 0; color:var(--c-ink); }
.aws-komm-table table{ width:100%; border-collapse:collapse; }
.aws-komm-table th, .aws-komm-table td{ text-align:left; padding:.7rem .9rem; border-bottom:1px solid var(--c-line); vertical-align:top; }
.aws-komm-table thead th{ background:var(--c-surface-2); color:var(--c-ink); font-weight:600; }
.aws-komm-table td:last-child{ color:var(--c-primary); font-weight:600; }
.aws-komm-note{ margin-top:1.4rem; font-size:.9rem; color:var(--c-muted); border:1px dashed var(--c-line); border-radius:var(--aws-radius); padding:.9rem 1.1rem; }
/* Lageplan / Campus-Karte */
.aws-campus-layout{ display:grid; grid-template-columns:1.6fr 1fr; gap:1.4rem; align-items:start; }
@media(max-width:760px){ .aws-campus-layout{ grid-template-columns:1fr; } }
.aws-campus-map{ position:relative; aspect-ratio:16/10; border:1px solid var(--c-line); border-radius:var(--aws-radius); overflow:hidden; box-shadow:var(--aws-shadow); }
.aws-campus-scene{ position:absolute; inset:0; width:100%; height:100%; display:block; }
.aws-campus-pin{ position:absolute; transform:translate(-50%,-50%); min-width:32px; height:32px; padding:0 6px; border-radius:16px; border:0; cursor:pointer; background:var(--c-surface); color:var(--c-primary); font-family:inherit; font-weight:700; font-size:.92rem; box-shadow:var(--aws-shadow-sm); display:grid; place-items:center; transition:transform .18s, background .18s, color .18s, box-shadow .18s; }
.aws-campus-pin:hover{ transform:translate(-50%,-50%) scale(1.12); }
.aws-campus-pin:focus-visible{ outline:3px solid var(--c-primary); outline-offset:3px; }
.aws-campus-pin.active{ background:var(--c-primary); color:#fff; transform:translate(-50%,-50%) scale(1.15); box-shadow:0 0 0 6px var(--c-primary-soft), var(--aws-shadow); }
:root[data-theme="dark"] .aws-campus-pin.active{ color:#06171a; }
.aws-campus-panel{ background:var(--c-surface); border:1px solid var(--c-line); border-radius:var(--aws-radius); padding:1.4rem; position:sticky; top:16px; }
.aws-campus-cat{ display:inline-block; font-size:.72rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase; color:var(--c-accent); background:var(--c-primary-soft); padding:.25rem .6rem; border-radius:100px; }
.aws-campus-panel h3{ font-size:1.4rem; margin:.7rem 0 .5rem; }
.aws-campus-panel p{ color:var(--c-muted); margin:0; }
.aws-campus-tip{ margin-top:.9rem !important; padding:.6rem .9rem; border-left:3px solid var(--c-primary); background:var(--c-primary-soft); border-radius:0 12px 12px 0; color:var(--c-ink) !important; font-size:.92rem; }
.aws-campus-list{ list-style:none; margin:1.2rem 0 0; padding:0; display:flex; flex-wrap:wrap; gap:.45rem; }
.aws-campus-list button{ cursor:pointer; font:inherit; font-size:.85rem; font-weight:600; color:var(--c-ink); background:transparent; border:1px solid var(--c-line); border-radius:100px; padding:.35rem .7rem; transition:border-color .15s, color .15s, background .15s; }
.aws-campus-list button:hover{ border-color:var(--c-primary); color:var(--c-primary); }
.aws-campus-list button.active{ background:var(--c-primary); border-color:var(--c-primary); color:#fff; }
:root[data-theme="dark"] .aws-campus-list button.active{ color:#06171a; }
.aws-campus-note{ margin-top:1.2rem; color:var(--c-muted); font-size:.82rem; }

/* ---------- Profile split ---------- */
.aws-split{ align-items:center; gap: clamp(2rem,5vw,4rem) !important; }
.aws-profile-list{ list-style:none; padding:0; margin:1.4rem 0 0; display:grid; gap:1rem; }
.aws-profile-list li{ padding-left:2.4rem; position:relative; }
.aws-profile-list li::before{ content:"✓"; position:absolute; left:0; top:.05rem; width:26px; height:26px; border-radius:50%; background:var(--c-primary); color:#fff; display:grid; place-items:center; font-size:.85rem; }
.aws-profile-list strong{ display:block; color:var(--c-ink); }
.aws-visual{ border-radius:var(--aws-radius); overflow:hidden; border:1px solid var(--c-line); box-shadow:var(--aws-shadow); aspect-ratio:5/4;
  background: radial-gradient(90% 80% at 85% 90%, color-mix(in srgb, var(--c-accent) 45%, transparent), transparent 55%), linear-gradient(160deg, color-mix(in srgb, var(--c-accent) 75%, #000 4%), var(--c-primary-deep));
  position:relative; }
.aws-visual::after{ content:"Platzhalter · Schulalltag"; position:absolute; bottom:12px; left:14px; font-size:.72rem; letter-spacing:.05em; text-transform:uppercase; color:#fff; background:rgba(0,0,0,.25); padding:.25rem .6rem; border-radius:100px; }

/* ---------- Stats ---------- */
.aws-stats{ display:grid; grid-template-columns:repeat(4,1fr); gap:1.1rem; text-align:center; }
@media(max-width:760px){ .aws-stats{ grid-template-columns:repeat(2,1fr); } }
.aws-stat{ margin:0; }
.aws-stat b, .aws-stat-num{ font-family:var(--wp--preset--font-family--fraunces); font-size:clamp(2.6rem, 1.9rem + 3vw, 4rem); font-weight:600; color:var(--c-primary); display:block; line-height:1; margin:0; }
.aws-stat span, .aws-stat-label{ color:var(--c-muted); font-size:1.05rem; margin:.6rem 0 0; display:block; }

/* ---------- Steps ---------- */
.aws-steps{ display:grid; grid-template-columns:repeat(4,1fr); gap:1.1rem; }
@media(max-width:900px){ .aws-steps{ grid-template-columns:repeat(2,1fr); } }
@media(max-width:520px){ .aws-steps{ grid-template-columns:1fr; } }
.aws-step{ background:var(--c-surface); border:1px solid var(--c-line); border-radius:var(--aws-radius); padding:1.5rem 1.35rem !important; box-shadow:var(--aws-shadow-sm); }
.aws-step .aws-num{ font-family:var(--wp--preset--font-family--fraunces); font-weight:600; color:var(--c-primary); width:40px; height:40px; border-radius:50%; border:1.5px solid var(--c-primary); display:grid; place-items:center; margin-bottom:1rem; }
.aws-step .aws-num p{ margin:0; }
.aws-step h3{ font-size:1.3rem; margin:0; }
.aws-step p{ color:var(--c-muted); font-size:.93rem; margin:.4rem 0 0; }

/* ---------- CTA band ---------- */
.aws-cta{ background:linear-gradient(155deg, var(--c-primary-deep), var(--c-primary)); color:#fff; border-radius:var(--aws-radius); padding: clamp(2.2rem,5vw,3.6rem) !important; text-align:center; }
.aws-cta h2{ color:#fff; font-size:clamp(2rem,1.6rem+1.8vw,3rem); margin:0; }
.aws-cta p{ color:rgba(255,255,255,.85); font-size:1.25rem; margin:.9rem auto 0; max-width:46ch; }
.aws-cta .wp-block-buttons{ justify-content:center; margin-top:1.6rem; }
.aws-cta .aws-btn-primary .wp-block-button__link{ background:#fff; color:var(--c-primary-deep); }
.aws-cta .aws-btn-primary .wp-block-button__link:hover{ background:#eef7f7; }
.aws-cta .aws-btn-ghost .wp-block-button__link{ color:#fff; border-color:rgba(255,255,255,.55); }
.aws-cta .aws-btn-ghost .wp-block-button__link:hover{ border-color:#fff; background:rgba(255,255,255,.12); }

/* ---------- Förderverein ---------- */
.aws-foerder{ max-width:840px; margin-inline:auto; text-align:center; position:relative;
  background:linear-gradient(150deg, var(--c-primary-soft), color-mix(in srgb, var(--c-accent) 16%, var(--c-surface)));
  border:1px solid var(--c-line); border-radius:var(--aws-radius); box-shadow:var(--aws-shadow);
  padding: clamp(2rem, 4vw, 3.4rem) !important; }
.aws-foerder .aws-eyebrow{ justify-content:center; }
.aws-foerder-icon{ width:66px; height:66px; border-radius:50%; background:var(--c-surface); border:1px solid var(--c-line); display:grid; place-items:center; margin:0 auto 1.2rem; color:var(--c-primary); box-shadow:var(--aws-shadow-sm); }
.aws-foerder-icon svg{ width:32px; height:32px; }
.aws-foerder h2{ font-size:clamp(1.9rem, 1.5rem + 1.6vw, 2.6rem); margin:0; }
.aws-foerder p:not(.aws-eyebrow):not(.aws-foerder-meta){ color:var(--c-muted); font-size:1.15rem; line-height:1.55; margin:.9rem auto 0; max-width:58ch; }
.aws-foerder-list{ list-style:none; margin:1.5rem auto 0; padding:0; display:flex; flex-wrap:wrap; gap:.6rem .7rem; justify-content:center; max-width:640px; }
.aws-foerder-list li{ background:var(--c-surface); border:1px solid var(--c-line); border-radius:100px; padding:.45rem 1rem; font-size:.92rem; color:var(--c-ink); display:inline-flex; align-items:center; gap:.45rem; }
.aws-foerder-list li::before{ content:"✓"; color:var(--c-primary); font-weight:700; }
.aws-foerder .wp-block-buttons{ display:flex; flex-wrap:wrap; gap:.8rem; justify-content:center; margin-top:1.7rem; }
.aws-foerder-meta{ font-size:.85rem; color:var(--c-muted); margin-top:1.3rem !important; }

/* ---------- Contact ---------- */
.aws-contact-list{ list-style:none; padding:0; margin:1.4rem 0 0; display:grid; gap:1.1rem; }
.aws-contact-list li{ padding-left:3.4rem; position:relative; min-height:42px; display:flex; flex-direction:column; justify-content:center; }
.aws-contact-list li strong{ display:block; text-transform:uppercase; letter-spacing:.08em; color:var(--c-muted); font-weight:600; font-size:.72rem; }
/* Icon-Kachel je Zeile per CSS (kein Extra-Markup noetig -> Text bleibt frei bearbeitbar) */
.aws-contact-list li::before{ content:""; position:absolute; left:0; top:50%; transform:translateY(-50%); width:42px; height:42px; border-radius:13px; background:var(--c-primary-soft); }
.aws-contact-list li::after{ content:""; position:absolute; left:9px; top:50%; transform:translateY(-50%); width:24px; height:24px; background:var(--c-primary); -webkit-mask-repeat:no-repeat; mask-repeat:no-repeat; -webkit-mask-position:center; mask-position:center; -webkit-mask-size:contain; mask-size:contain; }
.aws-contact-list li:nth-child(1)::after{ -webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'><path d='M12 21s-7-4.5-7-10a7 7 0 0114 0c0 5.5-7 10-7 10z'/><circle cx='12' cy='11' r='2.5'/></svg>"); mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'><path d='M12 21s-7-4.5-7-10a7 7 0 0114 0c0 5.5-7 10-7 10z'/><circle cx='12' cy='11' r='2.5'/></svg>"); }
.aws-contact-list li:nth-child(2)::after{ -webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'><path d='M4 5a2 2 0 012-2h2l2 5-2 1a11 11 0 005 5l1-2 5 2v2a2 2 0 01-2 2A16 16 0 014 5z'/></svg>"); mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'><path d='M4 5a2 2 0 012-2h2l2 5-2 1a11 11 0 005 5l1-2 5 2v2a2 2 0 01-2 2A16 16 0 014 5z'/></svg>"); }
.aws-contact-list li:nth-child(3)::after{ -webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'><rect x='3' y='5' width='18' height='14' rx='2'/><path d='M3 7l9 6 9-6'/></svg>"); mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'><rect x='3' y='5' width='18' height='14' rx='2'/><path d='M3 7l9 6 9-6'/></svg>"); }
.aws-map{ position:relative; border-radius:var(--aws-radius); border:1px solid var(--c-line); overflow:hidden; box-shadow:var(--aws-shadow); aspect-ratio:16/11; background:var(--c-surface-2); display:grid; place-items:center; color:var(--c-muted); text-align:center; }
.aws-map.is-loaded{ display:block; }
.aws-map iframe{ position:absolute; inset:0; width:100%; height:100%; border:0; display:block; }
.aws-map-consent{ padding:1.5rem; max-width:36ch; }
.aws-map-title{ font-weight:600; color:var(--c-ink); margin:0 0 .4rem; }
.aws-map-text{ font-size:.86rem; color:var(--c-muted); margin:0 0 1rem; line-height:1.5; }
.aws-map-load{ display:inline-flex; align-items:center; gap:.5rem; background:var(--c-primary); color:#fff; border:1px solid transparent; border-radius:100px; padding:.7rem 1.35rem; font-weight:600; font-size:1rem; cursor:pointer; box-shadow:var(--aws-shadow-sm); transition:background .18s ease, transform .18s ease; }
.aws-map-load:hover{ background:var(--c-primary-deep); transform:translateY(-2px); }
:root[data-theme="dark"] .aws-map-load{ color:#06171a; }
.aws-map-links{ font-size:.82rem; color:var(--c-muted); margin:1rem 0 0; }
.aws-map-links a{ color:var(--c-primary); }

/* ---------- Footer ---------- */
.aws-footer{ background:var(--c-surface-2); border-top:1px solid var(--c-line); padding-block:2.6rem 1.8rem; }
.aws-footer .wp-block-site-logo img{ height:40px; width:auto; }
.aws-footer .aws-brand-name{ font-size:1rem; }
.aws-footer p{ color:var(--c-muted); font-size:.95rem; }
.aws-footer .wp-block-navigation a{ color:var(--c-ink); font-size:.95rem; }
.aws-footer .wp-block-navigation a:hover{ color:var(--c-primary); }
.aws-foot-quick{ display:flex; flex-wrap:wrap; align-items:center; gap:.7rem 1.3rem; padding-bottom:1.6rem; margin-bottom:1.9rem; border-bottom:1px solid var(--c-line); }
.aws-foot-quick-label{ margin:0 !important; font-weight:600; color:var(--c-ink) !important; font-size:1rem !important; }
.aws-foot-quick .aws-foot-quick-btns{ margin:0; gap:.7rem; }
.aws-foot-quick .wp-block-button__link{ padding:.6rem 1.3rem; font-size:.95rem; }
.aws-foot-legal{ font-size:.85rem; color:var(--c-muted); }
.aws-social{ margin:1rem 0 0; }
.aws-social a{ display:inline-flex; align-items:center; gap:.55rem; color:var(--c-ink); text-decoration:none; font-weight:600; font-size:.95rem; transition:color .18s ease; }
.aws-social a:hover{ color:var(--c-primary); }
.aws-social svg{ width:24px; height:24px; flex:none; }

/* ---------- Aktuelles: Fluss-Zeitstrahl ---------- */
.news-track { position: relative; margin-top: 2.8rem; }
/* Fallback-Linie (falls das Skript nicht/erst später lädt) */
.news-track::after { content: ""; position: absolute; left: 50%; transform: translateX(-50%); top: 0; bottom: 0; width: 3px; background: var(--c-line); border-radius: 3px; z-index: 0; }
.news-track.ready::after { content: none; }
.news-river { position: absolute; inset: 0; width: 100%; height: 100%; z-index: 0; pointer-events: none; overflow: visible; }
.news-river .base { stroke: var(--c-line); stroke-width: 4; fill: none; }
.news-river .draw { stroke: var(--c-primary); stroke-width: 4; fill: none; stroke-linecap: round; }
.news-head { position: absolute; width: 15px; height: 15px; border-radius: 50%; background: var(--c-primary); transform: translate(-50%, -50%); z-index: 3; opacity: 0; box-shadow: 0 0 0 6px color-mix(in srgb, var(--c-primary) 22%, transparent); }
.news-nodes { position: absolute; inset: 0; z-index: 2; pointer-events: none; }
.news-node { position: absolute; width: 16px; height: 16px; border-radius: 50%; background: var(--c-surface); border: 3px solid var(--c-primary); transform: translate(-50%, -50%); transition: transform .5s cubic-bezier(.2,.8,.2,1), opacity .5s; }
.news-track.anim .news-node { opacity: 0; transform: translate(-50%, -50%) scale(.4); }
.news-track.anim .news-node.in { opacity: 1; transform: translate(-50%, -50%) scale(1); }
.news-list { position: relative; z-index: 1; display: grid; gap: clamp(1.6rem, 4vw, 3.2rem); }
.news-item { display: grid; grid-template-columns: 1fr 120px 1fr; align-items: center; }
.news-card { background: var(--c-surface); border: 1px solid var(--c-line); border-radius: var(--aws-radius); box-shadow: var(--aws-shadow-sm); padding: 1.3rem 1.4rem !important; max-width: 400px; transition: opacity .6s ease, transform .6s ease, box-shadow .2s ease; }
.news-track.anim .news-card { opacity: 0; transform: translateY(26px); }
.news-track.anim .news-item.in .news-card { opacity: 1; transform: none; }
.news-card:hover { box-shadow: var(--aws-shadow); }
.news-item:nth-child(odd) .news-card { grid-column: 1; justify-self: end; }
.news-item:nth-child(even) .news-card { grid-column: 3; justify-self: start; }
.news-tag { display: inline-flex; align-items: center; gap: .4rem; font-size: .72rem; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: var(--c-primary); background: var(--c-primary-soft); padding: .25rem .6rem; border-radius: 100px; }
.news-tag.termin { color: var(--c-accent); background: color-mix(in srgb, var(--c-accent) 15%, var(--c-surface)); }
.news-card h3 { font-size: 1.3rem; margin: .7rem 0 0; }
.news-date { display: flex; align-items: baseline; gap: .45rem; color: var(--c-primary); font-weight: 600; margin: .5rem 0 0; }
.news-date strong { font-family: var(--wp--preset--font-family--fraunces); font-size: 1.5rem; line-height: 1; font-weight: 600; }
.news-card p:not(.news-date):not(.news-tag) { color: var(--c-muted); font-size: .94rem; margin: .5rem 0 0; }
.news-cta { justify-content: center; margin-top: 2.8rem !important; position: relative; z-index: 1; }
@media (max-width: 760px) {
  .news-river { display: none; }
  .news-track::after { content: none; }
  .news-track::before { content: ""; position: absolute; left: 9px; top: 0; bottom: 0; width: 3px; background: var(--c-line); border-radius: 3px; }
  .news-item { grid-template-columns: 1fr; padding-left: 2.4rem; }
  .news-item:nth-child(odd) .news-card, .news-item:nth-child(even) .news-card { grid-column: 1; justify-self: stretch; max-width: none; }
  .news-head { display: none; }
}
@media (prefers-reduced-motion: reduce) {
  .news-card, .news-node { transition: none; opacity: 1; transform: none; }
  .news-node { transform: translate(-50%, -50%) scale(1); }
}

/* ---------- Legal pages ---------- */
.aws-legal{ max-width:820px; }
.aws-legal h1{ font-size:clamp(1.9rem,1.4rem+1.8vw,2.6rem); }
.aws-legal h2{ font-size:1.3rem; margin-top:2.2rem; }
.aws-legal .aws-block{ background:var(--c-surface); border:1px solid var(--c-line); border-radius:var(--aws-radius-sm); padding:1rem 1.2rem; }
.aws-todo{ background:color-mix(in srgb,#E6A100 22%, var(--c-surface)); border:1px dashed color-mix(in srgb,#E6A100 60%, var(--c-line)); border-radius:6px; padding:.05rem .4rem; font-weight:600; }

/* ---------- Accessibility ---------- */
a:focus-visible, .wp-block-button__link:focus-visible, .wp-block-navigation a:focus-visible{ outline:3px solid var(--c-primary); outline-offset:3px; border-radius:6px; }
@media(prefers-reduced-motion: reduce){ *{ scroll-behavior:auto !important; } .aws-card{ transition:none; } .aws-header, .aws-nav, .aws-brand .wp-block-site-logo img, .aws-nav .wp-block-navigation a, .aws-nav .wp-block-navigation a::after, .aws-theme-toggle{ transition:none; } .aws-nav > *{ animation:none; } }

/* ---------- Kopf: Masthead mit flachem ∪-Bogen (ersetzt Menuezeile) ---------- */
.aws-header{ position:relative; top:auto; background:transparent; backdrop-filter:none; border-bottom:none; box-shadow:none; }
.masthead{ position:relative; padding:1rem 0 0; }
.masthead .arc{ position:relative; width:100%; max-width:1160px; height:360px; margin:0 auto; }
.arc-line{ position:absolute; inset:0; width:100%; height:100%; pointer-events:none; overflow:visible; }
.arc-line path{ fill:none; stroke-width:3; stroke-linecap:round; }
.masthead-brand{ position:absolute; top:4px; left:50%; transform:translateX(-50%); z-index:2; display:flex; flex-direction:column; align-items:center; gap:.3rem; text-decoration:none; text-align:center; }
.masthead-brand .wp-block-site-logo{ width:auto !important; }
.masthead-brand .wp-block-site-logo img{ height:104px !important; width:auto !important; max-width:none; }
.masthead-name{ font-family:var(--wp--preset--font-family--fraunces); font-weight:600; font-size:clamp(1.95rem,1.45rem+1.4vw,2.5rem); color:var(--c-ink); line-height:1.04; }
.masthead-sub{ font-size:clamp(1.05rem,.9rem+.5vw,1.35rem); color:var(--c-muted); letter-spacing:.03em; }
.arc-item{ position:absolute; transform:translate(-50%,-50%); text-decoration:none; opacity:0; }
.arc-btn{ width:66px; height:66px; border-radius:50%; background:var(--c-surface); border:1px solid var(--c-line); box-shadow:var(--aws-shadow-sm); display:grid; place-items:center; color:var(--c-primary); transition:transform .25s cubic-bezier(.2,.8,.2,1), box-shadow .25s, border-color .25s, background .25s; }
.arc-btn svg{ width:28px; height:28px; }
.arc-label{ position:absolute; top:calc(100% + .55rem); left:50%; transform:translateX(-50%); font-size:.95rem; font-weight:600; color:var(--c-ink); white-space:nowrap; transition:color .2s; }
.arc-item.edge .arc-label{ top:auto; bottom:calc(100% + .55rem); }
.arc-item:hover .arc-btn{ transform:translateY(-6px) scale(1.08); box-shadow:var(--aws-shadow); border-color:var(--c-primary); background:var(--c-primary-soft); }
.arc-item:hover .arc-label{ color:var(--c-primary); }
.arc-item:focus-visible .arc-btn{ outline:3px solid var(--c-primary); outline-offset:3px; }
.arc.in .arc-item{ animation:arc-pop .55s cubic-bezier(.2,.8,.2,1) both; }
@keyframes arc-pop{ from{ opacity:0; transform:translate(-50%,-50%) scale(.3); } to{ opacity:1; transform:translate(-50%,-50%) scale(1); } }
@media (prefers-reduced-motion: no-preference){ .arc.in .arc-btn svg{ animation:arc-float 5s ease-in-out infinite; } }
@keyframes arc-float{ 0%,100%{ transform:translateY(0); } 50%{ transform:translateY(-4px); } }
.aws-float-toggle{ position:fixed; top:16px; right:16px; z-index:72; box-shadow:var(--aws-shadow-sm); }
/* Kompakte Mini-Navigation (erscheint beim Scrollen) */
.aws-mininav{ position:fixed; top:0; left:0; right:0; z-index:65; display:flex; align-items:center; gap:1rem;
  padding:.5rem 72px; transform:translateY(-100%); transition:transform .25s ease; visibility:hidden;
  background:var(--glass-sheen), var(--glass-bg-strong);
  -webkit-backdrop-filter:blur(14px) saturate(var(--glass-sat)); backdrop-filter:blur(14px) saturate(var(--glass-sat));
  border-bottom:1px solid var(--glass-hairline); box-shadow:var(--glass-shadow); }
.aws-mininav.show{ transform:translateY(0); visibility:visible; }
.aws-mininav-brand{ display:flex; align-items:center; flex:none; font-family:var(--wp--preset--font-family--fraunces); font-weight:600; color:var(--c-ink); text-decoration:none; white-space:nowrap; font-size:1rem; transition:transform .15s; }
.aws-mininav-brand:hover{ transform:translateY(-1px); }
.aws-mininav-brand img{ display:block; height:30px; width:auto; }
.aws-mininav-links{ display:flex; gap:.15rem .3rem; overflow-x:auto; -webkit-overflow-scrolling:touch; scrollbar-width:none; }
.aws-mininav-links::-webkit-scrollbar{ display:none; }
.aws-mininav-links a{ color:var(--c-ink); text-decoration:none; font-weight:600; font-size:.9rem; padding:.35rem .6rem; border-radius:100px; white-space:nowrap; transition:background .15s, color .15s; }
.aws-mininav-links a:hover{ color:var(--c-primary); background:var(--c-primary-soft); }
@media (max-width:700px){ .aws-mininav{ padding:.45rem 60px; } .aws-mininav-brand img{ height:26px; } }
/* Vorlesefunktion */
.aws-tts{ position:fixed; top:68px; left:16px; z-index:72; display:flex; gap:.4rem; align-items:center; }
.aws-tts[hidden]{ display:none; }
.aws-tts-btn{ width:44px; height:44px; border-radius:50%; display:grid; place-items:center; padding:0; cursor:pointer; color:var(--c-ink);
  background:var(--glass-sheen), var(--glass-bg-strong);
  -webkit-backdrop-filter:blur(14px) saturate(var(--glass-sat)); backdrop-filter:blur(14px) saturate(var(--glass-sat));
  border:1px solid var(--glass-hairline); box-shadow:var(--glass-shadow), inset 0 1px 0 var(--glass-edge);
  transition:transform .15s, border-color .15s; }
.aws-tts-btn:hover{ border-color:var(--c-primary); transform:translateY(-1px); }
.aws-tts-btn[hidden]{ display:none; }
.aws-tts-btn svg{ width:20px; height:20px; }
.aws-tts-btn .ic-play{ display:none; }
.aws-tts-btn.is-paused .ic-pause{ display:none; }
.aws-tts-btn.is-paused .ic-play{ display:block; }
.aws-reading{ background:var(--c-primary-soft); box-shadow:0 0 0 3px var(--c-primary-soft); border-radius:5px; }
@media (max-width:700px){ .aws-tts{ top:60px; left:12px; } }
@media (max-width:700px){
  .masthead .arc{ height:auto; display:flex; flex-wrap:wrap; justify-content:center; align-items:center; gap:1.3rem 1.5rem; padding:1rem 0; }
  .masthead-brand{ position:static; transform:none; flex-basis:100%; margin-bottom:.4rem; }
  .masthead-brand .wp-block-site-logo img{ height:88px !important; }
  .arc-item{ position:static; transform:none; display:flex; flex-direction:column; align-items:center; gap:.5rem; }
  .arc-item .arc-label, .arc-item.edge .arc-label{ position:static; transform:none; top:auto; bottom:auto; }
  .arc-line{ display:none; }
}
@media (prefers-reduced-motion: reduce){ .arc-item{ opacity:1; } .arc.in .arc-item{ animation:none; } .arc-btn{ transition:none; } }

/* Robust: Schulname unter dem Logo garantiert groesser (egal welches Element) */
.aws-header .masthead-name,
.masthead .masthead-name,
.aws-header .wp-block-site-title,
.aws-header .wp-block-site-title a{
  font-size: clamp(1.95rem, 1.45rem + 1.4vw, 2.5rem) !important;
  font-family: var(--wp--preset--font-family--fraunces) !important;
  font-weight: 600 !important;
  line-height: 1.04 !important;
}

/* ---------- Sprach-Hinweis (Browser-Uebersetzung, DSGVO-frei) ---------- */
.aws-lang-toggle{
  position:fixed; top:16px; left:16px; z-index:72;
  width:44px; height:44px; border-radius:50%; display:grid; place-items:center; padding:0; cursor:pointer;
  color:var(--c-ink);
  background:var(--glass-sheen), var(--glass-bg-strong);
  -webkit-backdrop-filter:blur(14px) saturate(var(--glass-sat)); backdrop-filter:blur(14px) saturate(var(--glass-sat));
  border:1px solid var(--glass-hairline);
  box-shadow:var(--glass-shadow), inset 0 1px 0 var(--glass-edge);
  transition:transform .15s, border-color .15s;
}
.aws-lang-toggle:hover{ border-color:var(--c-primary); transform:translateY(-1px); }
.aws-lang-toggle svg{ width:20px; height:20px; }
.aws-lang-pop{
  position:fixed; top:70px; left:16px; z-index:61; width:min(340px, 92vw);
  background:var(--glass-sheen), var(--glass-bg-strong);
  -webkit-backdrop-filter:blur(18px) saturate(var(--glass-sat)); backdrop-filter:blur(18px) saturate(var(--glass-sat));
  border:1px solid var(--glass-hairline); border-radius:var(--aws-radius);
  box-shadow:var(--glass-shadow-hi), inset 0 1px 0 var(--glass-edge);
  padding:1.05rem 1.15rem; color:var(--c-ink);
}
.aws-lang-pop[hidden]{ display:none; }
.aws-lang-pop h3{ font-family:var(--wp--preset--font-family--fraunces); font-weight:600; font-size:1.1rem; margin:0 0 .4rem; }
.aws-lang-intro{ margin:.1rem 0 .6rem; font-size:.9rem; color:var(--c-ink); }
.aws-lang-langs{ display:flex; flex-wrap:wrap; gap:.35rem .4rem; margin:0 0 .8rem; }
.aws-lang-langs span{ font-size:.82rem; color:var(--c-primary-deep); background:var(--c-primary-soft); border-radius:100px; padding:.22rem .6rem; }
:root[data-theme="dark"] .aws-lang-langs span{ color:var(--c-ink); }
.aws-lang-steps{ list-style:none; margin:0; padding:0; display:grid; gap:.5rem; }
.aws-lang-steps li{ font-size:.86rem; color:var(--c-muted); padding-left:1.15rem; position:relative; }
.aws-lang-steps li strong{ color:var(--c-ink); font-weight:600; }
.aws-lang-steps li::before{ content:""; position:absolute; left:0; top:.5em; width:6px; height:6px; border-radius:50%; background:var(--c-accent); }
.aws-lang-note{ margin:.8rem 0 0; font-size:.78rem; color:var(--c-muted); }
@media (max-width:700px){ .aws-lang-toggle{ top:12px; left:12px; } .aws-lang-pop{ top:62px; } }
@supports not ((-webkit-backdrop-filter: blur(1px)) or (backdrop-filter: blur(1px))){
  .aws-lang-toggle, .aws-lang-pop{ background:var(--c-surface); }
}
@media (prefers-reduced-transparency: reduce){
  .aws-lang-toggle, .aws-lang-pop{ background:var(--c-surface); -webkit-backdrop-filter:none; backdrop-filter:none; }
}

/* Bild-Platzhalter mit Illustration/Foto gefuellt (blendet Verlauf + Label aus) */
.aws-photo.has-img, .aws-visual.has-img{ background:none; }
.aws-photo.has-img::after, .aws-visual.has-img::after{ content:none; }
.aws-photo.has-img > svg, .aws-photo.has-img > img,
.aws-visual.has-img > svg, .aws-visual.has-img > img{
  position:absolute; inset:0; width:100%; height:100%; object-fit:cover; display:block;
}

/* Enge Abstaende im Kopf-Markenblock (WP-Block-Gap neutralisieren) */
.masthead-brand{ gap:.35rem; }
.masthead-brand > *{ margin-block:0 !important; }
.masthead-brand .wp-block-site-logo{ margin:0 !important; }

/* =====================================================================
   3D / Liquid-Glass-Effekte (iOS-Optik)
   Halbtransparente Flaechen mit Unschaerfe, Lichtkante und Tiefe.
   ===================================================================== */
:root{
  --glass-blur: 26px;
  --glass-sat: 190%;
  --glass-bg:        color-mix(in srgb, var(--c-surface) 42%, transparent);
  --glass-bg-strong: color-mix(in srgb, var(--c-surface) 62%, transparent);
  --glass-hairline:  color-mix(in srgb, #ffffff 50%, var(--c-line));   /* zarte Umrandung */
  --glass-edge:      color-mix(in srgb, #ffffff 90%, transparent);     /* helle Lichtkante oben */
  --glass-sheen:     linear-gradient(180deg, color-mix(in srgb, #ffffff 60%, transparent), color-mix(in srgb, #ffffff 10%, transparent) 40%, transparent 60%);
  --glass-shadow:    0 16px 40px -14px rgba(18,42,44,.42), 0 4px 10px -5px rgba(18,42,44,.26);
  --glass-shadow-hi: 0 30px 60px -18px rgba(18,42,44,.52), 0 8px 18px -8px rgba(18,42,44,.32);
}
:root[data-theme="dark"]{
  --glass-bg:        color-mix(in srgb, var(--c-surface) 34%, transparent);
  --glass-bg-strong: color-mix(in srgb, var(--c-surface) 54%, transparent);
  --glass-hairline:  color-mix(in srgb, #ffffff 22%, var(--c-line));
  --glass-edge:      color-mix(in srgb, #ffffff 34%, transparent);
  --glass-sheen:     linear-gradient(180deg, color-mix(in srgb, #ffffff 20%, transparent), color-mix(in srgb, #ffffff 4%, transparent) 40%, transparent 60%);
  --glass-shadow:    0 18px 44px -14px rgba(0,0,0,.65), 0 4px 12px -5px rgba(0,0,0,.55);
  --glass-shadow-hi: 0 32px 64px -18px rgba(0,0,0,.75), 0 8px 20px -8px rgba(0,0,0,.6);
}

/* Sanfte Farb-Auren hinter den Abschnitten -> Tiefe fuer die Unschaerfe */
.aws-section{ position:relative; }
.aws-section > .aws-inner{ position:relative; z-index:1; }
.aws-section::before{
  content:""; position:absolute; inset:0; z-index:0; pointer-events:none;
  background:
    radial-gradient(42% 58% at 10% 14%, color-mix(in srgb, var(--c-primary) 30%, transparent), transparent 68%),
    radial-gradient(40% 55% at 90% 86%, color-mix(in srgb, var(--c-accent)  30%, transparent), transparent 68%),
    radial-gradient(34% 46% at 62% 32%, color-mix(in srgb, var(--c-primary-deep) 16%, transparent), transparent 70%);
  opacity:1;
}
/* Aura auch hinter dem Kopf-Bogen */
body::before{
  content:""; position:fixed; inset:0; z-index:-1; pointer-events:none;
  background:
    radial-gradient(55% 45% at 18% 0%,  color-mix(in srgb, var(--c-primary) 22%, transparent), transparent 60%),
    radial-gradient(45% 40% at 100% 12%, color-mix(in srgb, var(--c-accent)  22%, transparent), transparent 60%);
}

/* Glas-Flaechen */
.aws-card,
.aws-step,
.news-card,
.aws-hero-card,
.aws-legal .aws-block{
  background: var(--glass-sheen), var(--glass-bg);
  -webkit-backdrop-filter: blur(var(--glass-blur)) saturate(var(--glass-sat));
  backdrop-filter: blur(var(--glass-blur)) saturate(var(--glass-sat));
  border: 1px solid var(--glass-hairline);
  box-shadow: var(--glass-shadow), inset 0 1px 0 var(--glass-edge), inset 0 -1px 0 color-mix(in srgb, #000 8%, transparent);
}
.aws-card:hover,
.news-card:hover{
  box-shadow: var(--glass-shadow-hi), inset 0 1px 0 var(--glass-edge), inset 0 -1px 0 color-mix(in srgb, #000 8%, transparent);
  border-color: color-mix(in srgb, var(--c-primary) 45%, var(--glass-hairline));
}

/* Schwebende Rund-Buttons (Kopf-Bogen + Umschalter) als kleines Glas */
.arc-btn,
.aws-theme-toggle{
  background: var(--glass-sheen), var(--glass-bg-strong);
  -webkit-backdrop-filter: blur(14px) saturate(var(--glass-sat));
  backdrop-filter: blur(14px) saturate(var(--glass-sat));
  border: 1px solid var(--glass-hairline);
  box-shadow: var(--glass-shadow), inset 0 1px 0 var(--glass-edge);
}

/* Fallback: kein backdrop-filter -> solide Flaechen (Look wie zuvor) */
@supports not ((-webkit-backdrop-filter: blur(1px)) or (backdrop-filter: blur(1px))){
  .aws-card, .aws-step, .news-card, .aws-hero-card, .aws-legal .aws-block,
  .arc-btn, .aws-theme-toggle{ background: var(--c-surface); }
}

/* Barrierefreiheit: weniger Transparenz -> solide Flaechen, keine Auren */
@media (prefers-reduced-transparency: reduce){
  .aws-card, .aws-step, .news-card, .aws-hero-card, .aws-legal .aws-block,
  .arc-btn, .aws-theme-toggle{
    background: var(--c-surface);
    -webkit-backdrop-filter: none; backdrop-filter: none;
  }
  .aws-section::before, body::before{ display:none; }
}

/* ---------- Online-Anmeldung (Formular) ---------- */
.aws-form-ok{ background:color-mix(in srgb, var(--c-accent) 12%, var(--c-surface)); border:1px solid color-mix(in srgb, var(--c-accent) 40%, var(--c-line)); border-radius:var(--aws-radius); padding:1.6rem 1.5rem; }
.aws-form-ok h2{ margin:0 0 .4rem; font-size:1.5rem; }
.aws-form-ok p{ margin:0; color:var(--c-muted); }
.aws-form-err{ background:color-mix(in srgb,#c62828 10%, var(--c-surface)); border:1px solid color-mix(in srgb,#c62828 45%, var(--c-line)); border-radius:12px; padding:.9rem 1.1rem; margin-bottom:1.4rem; color:#8a1f1f; }
.aws-anmeldung .aws-hp{ position:absolute; left:-9999px; width:1px; height:1px; overflow:hidden; }
.aws-anmeldung .aws-note{ display:block; background:var(--c-primary-soft); border:1px solid color-mix(in srgb, var(--c-primary) 25%, var(--c-line)); border-radius:12px; padding:.9rem 1.1rem; color:var(--c-primary-deep); font-size:.95rem; margin-bottom:1.6rem; }
.aws-anmeldung .req{ color:var(--c-primary); }
.aws-anmeldung .opt{ font-weight:400; color:var(--c-muted); font-size:.8rem; }
.aws-anmeldung fieldset{ border:1px solid var(--c-line); border-radius:var(--aws-radius); background:var(--c-surface); padding:1.4rem 1.4rem 1.6rem; margin:0 0 1.3rem; box-shadow:var(--aws-shadow-sm); }
.aws-anmeldung legend{ font-family:var(--wp--preset--font-family--fraunces); font-weight:600; color:var(--c-primary-deep); font-size:1.2rem; padding:0 .4rem; display:flex; align-items:center; gap:.6rem; }
.aws-anmeldung legend .n{ width:28px; height:28px; border-radius:50%; background:var(--c-primary); color:#fff; font-family:var(--wp--preset--font-family--figtree); font-weight:600; font-size:.9rem; display:grid; place-items:center; flex:none; }
.aws-anmeldung .hint{ color:var(--c-muted); font-size:.9rem; margin:.1rem 0 1rem; }
.aws-anmeldung .grid{ display:grid; grid-template-columns:1fr 1fr; gap:.9rem 1.1rem; }
.aws-anmeldung .grid .full{ grid-column:1/-1; }
@media(max-width:620px){ .aws-anmeldung .grid{ grid-template-columns:1fr; } }
.aws-anmeldung label{ display:block; font-size:.85rem; font-weight:600; color:var(--c-ink); margin:0 0 .3rem; }
.aws-anmeldung input[type=text],.aws-anmeldung input[type=date],.aws-anmeldung input[type=tel],.aws-anmeldung input[type=email],.aws-anmeldung select,.aws-anmeldung textarea{ width:100%; font:inherit; color:var(--c-ink); background:var(--c-surface); border:1px solid var(--c-line); border-radius:10px; padding:.6rem .7rem; transition:border-color .15s, box-shadow .15s; }
.aws-anmeldung input:focus,.aws-anmeldung select:focus,.aws-anmeldung textarea:focus{ outline:none; border-color:var(--c-primary); box-shadow:0 0 0 3px color-mix(in srgb, var(--c-primary) 20%, transparent); }
.aws-anmeldung textarea{ min-height:64px; resize:vertical; }
.aws-anmeldung .radio,.aws-anmeldung .check{ display:flex; flex-wrap:wrap; gap:.5rem .8rem; margin-top:.2rem; }
.aws-anmeldung .radio label,.aws-anmeldung .check label{ display:flex; align-items:center; gap:.45rem; font-weight:500; background:var(--c-surface); border:1px solid var(--c-line); border-radius:10px; padding:.5rem .8rem; cursor:pointer; margin:0; }
.aws-anmeldung .check.stack{ flex-direction:column; align-items:stretch; }
.aws-anmeldung .check.stack label{ align-items:flex-start; gap:.6rem; }
.aws-anmeldung .check.stack input{ margin-top:.2rem; }
.aws-anmeldung .subhead{ font-weight:600; color:var(--c-primary-deep); margin:1.1rem 0 .5rem; font-size:.95rem; }
.aws-anmeldung .cond{ border-left:3px solid var(--c-primary-soft); padding-left:.9rem; margin:.3rem 0 .2rem; }
.aws-anmeldung .file{ border:1px dashed color-mix(in srgb, var(--c-primary) 45%, var(--c-line)); border-radius:12px; padding:.8rem .9rem; background:color-mix(in srgb, var(--c-primary) 5%, var(--c-surface)); }
.aws-anmeldung .actions{ display:flex; flex-wrap:wrap; gap:.8rem; align-items:center; margin-top:.4rem; }
.aws-anmeldung .btn{ appearance:none; border:none; cursor:pointer; font:inherit; font-weight:600; border-radius:100px; padding:.85rem 1.7rem; background:var(--c-primary); color:#fff; box-shadow:var(--aws-shadow-sm); transition:background .18s, transform .18s; }
.aws-anmeldung .btn:hover{ background:var(--c-primary-deep); transform:translateY(-2px); }
:root[data-theme="dark"] .aws-anmeldung .btn{ color:#06171a; }
.aws-anmeldung .aws-todo{ background:color-mix(in srgb,#E6A100 22%, var(--c-surface)); border:1px dashed color-mix(in srgb,#E6A100 60%, var(--c-line)); border-radius:6px; padding:.05rem .4rem; font-weight:600; }
