
.school-announcement{position:relative;z-index:9998;font-family:inherit}
.school-announcement-inner{max-width:1380px;margin:auto;min-height:48px;padding:9px 22px;display:flex;gap:12px;align-items:center}
.school-announcement.info{background:#eaf3ff;color:#123e78}
.school-announcement.warning{background:#fff0b8;color:#6a4a00}
.school-announcement.urgent{background:#a91f2c;color:white}
.school-announcement-icon{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.35);font-weight:900;flex:none}
.school-announcement-copy{display:flex;gap:8px;align-items:baseline;min-width:0;flex:1}
.school-announcement-copy strong{font-weight:850}
.school-announcement-copy span{opacity:.92}
.school-announcement-link{font-weight:800;color:inherit;text-decoration:none;white-space:nowrap}
.school-announcement-close{border:0;background:transparent;color:inherit;font-size:25px;line-height:1;cursor:pointer;opacity:.8}
@media(max-width:760px){.school-announcement-inner{align-items:flex-start;padding:10px 14px}.school-announcement-copy{display:block}.school-announcement-copy span{display:block;margin-top:2px}.school-announcement-link{display:none}}

/* v1.5 polish */
.school-announcement-inner{min-height:42px;padding:7px 22px;gap:10px}
.school-announcement-icon{width:26px;height:26px;font-size:13px}
.school-announcement-copy{font-size:14px;gap:7px}
.school-announcement-copy strong{font-size:14px}
.school-announcement-link{font-size:13px}
.school-announcement-close{font-size:21px;opacity:.65;padding:2px 6px}
.school-announcement-close:hover{opacity:1}
@media(max-width:760px){
  .school-announcement-inner{padding:8px 12px}
  .school-announcement-copy{font-size:13px}
  .school-announcement-copy strong{font-size:13px}
}

/* v3.6.13 — wide vertical Aktuality archive */
.news-archive-list{display:grid;gap:16px;margin-top:18px}
.news-archive-row{
  display:grid;grid-template-columns:280px minmax(0,1fr) 52px;align-items:stretch;
  min-height:172px;border:1px solid #e0e9ee;border-radius:22px;overflow:hidden;background:#fff;
  box-shadow:0 12px 32px rgba(25,48,69,.06);
  transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease;cursor:pointer
}
.news-archive-row:hover{transform:translateY(-3px);box-shadow:0 20px 48px rgba(25,48,69,.11);border-color:transparent}
.news-archive-thumb{position:relative;min-height:172px;background:linear-gradient(135deg,#0d527b,#109ca6);background-size:cover;background-position:center;overflow:hidden}
.news-archive-thumb.has-image{transition:background-size .35s ease}
.news-archive-row:hover .news-archive-thumb.has-image{background-size:104%}
.news-archive-placeholder{position:absolute;inset:0;display:grid;place-items:center;color:#fff;font-weight:900;letter-spacing:.16em;font-size:22px}
.news-archive-copy{align-self:center;padding:25px 30px}
.news-archive-copy small{display:block;margin-bottom:7px;color:#1c61d8;font-size:9px;font-weight:900;letter-spacing:.10em;text-transform:uppercase}
.news-archive-copy h2{margin:0 0 8px;font-size:24px;line-height:1.12;color:#11293d}
.news-archive-copy p{margin:0;color:#667a88;font-size:12px;line-height:1.55}
.news-archive-arrow{display:grid;place-items:center;font-size:25px;color:#0e8092;transition:transform .22s ease}
.news-archive-row:hover .news-archive-arrow{transform:translateX(5px)}
.news-archive-row:focus-visible{outline:3px solid rgba(24,133,171,.30);outline-offset:4px}
@media(max-width:900px){.news-archive-row{grid-template-columns:220px minmax(0,1fr) 42px}}
@media(max-width:680px){.news-archive-row{grid-template-columns:1fr}.news-archive-thumb{min-height:210px}.news-archive-arrow{display:none}}

/* v3.6.13 — magazine-style Aktuality archive */
.archive-toolbar-modern{
  align-items:end!important;
  gap:18px!important;
}
.archive-selects{
  display:flex;
  gap:10px;
  margin-left:auto;
}
.archive-selects label{
  display:grid;
  gap:5px;
}
.archive-selects label>span{
  font-size:8px;
  font-weight:900;
  color:#687c8a;
  text-transform:uppercase;
  letter-spacing:.10em;
}
.archive-selects select{
  height:42px;
  min-width:150px;
  padding:0 34px 0 12px;
  border:1px solid #dce6ec;
  border-radius:11px;
  background:#fff;
  color:#233e50;
  font:800 10px Manrope;
}
.archive-category-row{
  justify-content:flex-start!important;
  margin:14px 0 8px!important;
}
.news-archive-row{
  grid-template-columns:280px 82px minmax(0,1fr) 150px!important;
  min-height:180px!important;
}
.news-archive-date{
  align-self:center;
  justify-self:center;
  display:grid;
  text-align:center;
  line-height:1;
  color:#153e59;
}
.news-archive-date strong{
  font-size:32px;
  font-weight:950;
  letter-spacing:-.04em;
}
.news-archive-date span{
  margin-top:4px;
  font-size:10px;
  font-weight:950;
  color:#0d8da0;
  letter-spacing:.08em;
}
.news-archive-date small{
  margin-top:4px;
  font-size:8px;
  font-weight:850;
  color:#8a9aa5;
}
.news-archive-topline{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:6px;
  margin-bottom:8px;
}
.archive-category{
  color:#1761d8;
  font-size:9px;
  font-weight:950;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.archive-school-year{
  color:#8a9aa5;
  font-size:8px;
  font-weight:850;
}
.archive-badge{
  display:inline-flex;
  align-items:center;
  min-height:23px;
  padding:0 8px;
  border-radius:999px;
  font-size:7px;
  font-weight:950;
  letter-spacing:.06em;
}
.archive-badge.is-new{
  background:#e7fbef;
  color:#16824c;
}
.archive-badge.is-pin{
  background:#fff5dc;
  color:#9b6a0a;
}
.archive-badge.is-featured{
  background:#edf3ff;
  color:#275fc1;
}
.news-archive-copy h2{
  font-size:25px!important;
  margin-bottom:9px!important;
}
.news-archive-meta{
  display:flex;
  gap:8px;
  margin-top:12px;
  min-height:22px;
}
.news-archive-meta span{
  display:inline-flex;
  align-items:center;
  padding:5px 8px;
  border-radius:8px;
  background:#f0f6f8;
  color:#527080;
  font-size:8px;
  font-weight:850;
}
.news-archive-read{
  align-self:center;
  justify-self:end;
  display:flex;
  align-items:center;
  gap:8px;
  padding-right:22px;
  color:#0d8295;
  font-size:9px;
  font-weight:950;
  white-space:nowrap;
}
.news-archive-read b{
  display:grid;
  place-items:center;
  width:34px;
  height:34px;
  border-radius:999px;
  background:#edf8fa;
  font-size:17px;
  transition:transform .22s ease,background .22s ease;
}
.news-archive-row:hover .news-archive-read b{
  transform:translateX(4px);
  background:#dff3f6;
}
@media(max-width:1050px){
  .news-archive-row{grid-template-columns:230px 74px minmax(0,1fr) 48px!important}
  .news-archive-read span{display:none}
}
@media(max-width:760px){
  .archive-toolbar-modern{align-items:stretch!important;flex-direction:column}
  .archive-selects{margin-left:0;width:100%}
  .archive-selects label{flex:1}
  .archive-selects select{width:100%;min-width:0}
  .news-archive-row{grid-template-columns:1fr!important}
  .news-archive-date{position:absolute;z-index:3;top:14px;right:14px;background:rgba(255,255,255,.94);padding:9px;border-radius:12px}
  .news-archive-row{position:relative}
  .news-archive-copy{padding:22px!important}
  .news-archive-read{display:none}
}

/* v3.6.13 — clearer date badges */
.news-archive-date{
  min-width:62px;
  padding:12px 8px;
  border-radius:14px;
  background:#f3f8fa;
  border:1px solid #e0eaee;
}
.news-archive-date strong{
  color:#123e59!important;
}
.news-archive-date span{
  color:#0c8ca0!important;
}
.news-archive-date small{
  color:#728895!important;
}
.archive-selects select option{
  color:#203b4e;
  background:#fff;
}

/* v3.6.13 — article galleries in public gallery archive */
.gallery-archive-card[data-folder] .gallery-archive-image{
  background-size:cover;background-position:center;
}
.gallery-archive-card[data-folder] small{
  color:#0b8ca0!important;
}
.gallery-archive-card{
  transition:transform .22s ease,box-shadow .22s ease;
}
.gallery-archive-card:hover{
  transform:translateY(-4px);
  box-shadow:0 20px 46px rgba(25,48,69,.11);
}

/* v3.6.13 — same horizontal rhythm on archive/list pages */
:root{
  --dvojka-page-max:1180px;
  --dvojka-page-gutter:22px;
}
.public-header .shell,
.public-hero .shell,
.archive-main,
.archive-toolbar,
.gallery-archive-grid,
.news-archive-list,
.public-footer .shell,
.search-page-main,
.search-results,
.documents-public-main{
  width:min(var(--dvojka-page-max),calc(100% - (var(--dvojka-page-gutter) * 2)))!important;
  max-width:var(--dvojka-page-max)!important;
  margin-left:auto!important;
  margin-right:auto!important;
  box-sizing:border-box!important;
}

/* Hero content itself uses same left edge as lists/cards */
.public-hero{
  box-sizing:border-box!important;
}
.public-hero > .shell{
  padding-left:0!important;
  padding-right:0!important;
}

/* keep cards/list rows from exceeding shell */
.news-archive-row,
.gallery-archive-card,
.search-result-card,
.document-folder-card{
  max-width:100%!important;
  box-sizing:border-box!important;
}

@media(max-width:720px){
  :root{--dvojka-page-gutter:10px}
}
