/* A compact editorial theme for the archival materials. */
:root { --ink:#142d3a; --muted:#5c7280; --brand:#05859b; --brand-dark:#064f68; --accent:#ef9a42; --paper:#fff; --ground:#f2f7f7; --line:#d8e6e8; --shadow:0 18px 48px rgba(12,55,70,.09); }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--ink); background:linear-gradient(180deg,#f7fbfb 0,#eef5f5 38rem,#f7fafa 100%); font:16px/1.7 Inter,system-ui,-apple-system,"Segoe UI",Arial,sans-serif; }
a { color:var(--brand-dark); text-decoration-thickness:1px; text-underline-offset:3px; }
a:hover { color:#bb5d19; }
img { display:block; max-width:100%; height:auto; border-radius:14px; }
img.image-fallback { min-height:180px; width:100%; object-fit:cover; background:#dceff1; }
.skip-link { position:absolute; z-index:100; top:.75rem; left:-100vw; padding:.5rem .75rem; color:#fff; background:var(--brand-dark); border-radius:.5rem; }
.skip-link:focus { left:.75rem; }
.site-header { position:relative; isolation:isolate; overflow:hidden; color:#fff; background:radial-gradient(circle at 82% 4%,#46c8c6 0,transparent 26%),radial-gradient(circle at 5% 100%,rgba(151,234,217,.23) 0,transparent 28%),linear-gradient(125deg,#043c59,#087c98); padding:clamp(2.1rem,5vw,4rem) max(1.25rem,calc((100vw - 1180px)/2)); box-shadow:inset 0 -1px rgba(255,255,255,.16); }
.site-header::after { content:""; position:absolute; z-index:-1; right:-10rem; bottom:-13rem; width:29rem; height:29rem; border:1px solid rgba(255,255,255,.16); border-radius:50%; box-shadow:0 0 0 3rem rgba(255,255,255,.035),0 0 0 6rem rgba(255,255,255,.025); }
.site-header a { color:inherit; text-decoration:none; }
.site-header-inner { display:flex; align-items:center; max-width:1180px; min-height:60px; margin:0 auto; }
.site-branding { display:flex; align-items:center; gap:1rem; min-width:0; }
.site-logotype { flex:0 0 60px; width:60px; height:60px; }
.site-logotype img { width:60px !important; height:60px !important; min-height:0 !important; object-fit:cover; border-radius:15px; box-shadow:0 10px 22px rgba(0,26,42,.17); }
.site-header .site-title { margin:0; color:#fff !important; font-size:clamp(2rem,4.4vw,3.35rem); font-weight:800; letter-spacing:-.05em; line-height:1; text-wrap:balance; }
.site-description { margin:.6rem 0 0; max-width:48rem; color:#d9f3f4; font-size:1rem; }
.humburger { display:none !important; }
.main-navigation,.top-menu,.footer-navigation { position:relative; z-index:10; background:rgba(4,70,92,.98); padding:0 max(1.25rem,calc((100vw - 1180px)/2)); box-shadow:0 8px 20px rgba(2,39,53,.13); }
.main-navigation > ul,.top-menu > ul,.footer-navigation > ul,.main-navigation-inner { display:flex; gap:.3rem; flex-wrap:wrap; max-width:1180px; margin:0 auto; padding:0; list-style:none; }
.main-navigation-inner { width:100%; }
#header_menu { display:flex; gap:.3rem; flex-wrap:wrap; width:100%; margin:0; padding:.35rem 0; list-style:none; }
.main-navigation > ul > li,#header_menu > li { position:relative; }
.main-navigation a,.top-menu a,.footer-navigation a { display:block; padding:.68rem .8rem; color:#efffff; border-radius:.55rem; font-size:.78rem; font-weight:800; letter-spacing:.025em; text-decoration:none; transition:background .18s ease,color .18s ease,transform .18s ease; }
.main-navigation a:hover,.main-navigation a[aria-current="page"],.top-menu a:hover,.footer-navigation a:hover { color:#fff; background:rgba(255,255,255,.15); transform:translateY(-1px); }
.main-navigation > ul > li > ul,#header_menu > li > .sub-menu { display:none; position:absolute; z-index:30; top:100%; left:0; min-width:245px; margin:.25rem 0 0; padding:.38rem; list-style:none; background:#fff; border:1px solid #dce9ea; border-radius:.8rem; box-shadow:0 16px 34px rgba(3,43,64,.23); }
.main-navigation > ul > li:hover > ul,.main-navigation > ul > li:focus-within > ul,#header_menu > li:hover > .sub-menu,#header_menu > li:focus-within > .sub-menu { display:block; }
.main-navigation > ul > li > ul a,#header_menu > li > .sub-menu a { color:var(--ink); white-space:nowrap; }
.main-navigation > ul > li > ul a:hover,#header_menu > li > .sub-menu a:hover { color:var(--brand-dark); background:#edf8f8; }
.site-content,.content-area { max-width:1180px; margin:2.15rem auto; padding:0 1.25rem; }
.site-main { min-width:0; }
.card-slider-container { max-width:1180px; margin:1.65rem auto 0; padding:0 1.25rem; }
.swiper-wrapper { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:1rem; }
.swiper-slide { min-width:0; }
.swiper-slide > a,.swiper-slide > .archive-reference { display:block; height:100%; overflow:hidden; color:var(--ink); background:var(--paper); border:1px solid var(--line); border-radius:18px; box-shadow:0 8px 22px rgba(19,47,59,.06); text-decoration:none; transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease; }
.swiper-slide > a:hover { color:var(--ink); transform:translateY(-5px); border-color:#a8d7db; box-shadow:var(--shadow); }
.card-slider__image { min-height:146px; background:linear-gradient(135deg,rgba(9,124,152,.11),rgba(64,195,186,.18)),#d8eef0 center/cover; background-position:center; background-size:cover; }
.card-slider__image.image-fallback { background-color:#d8eef0; }
.card-slider__body { display:flex; flex-direction:column; min-height:172px; padding:1rem; }
.card-slider__category { display:block; width:max-content; max-width:100%; margin-bottom:.7rem; padding:.18rem .42rem; color:#056b7e; background:#dff5f7; font-size:.68rem; font-weight:850; letter-spacing:.035em; line-height:1.2; text-transform:uppercase; }
.card-slider__title { font-size:.98rem; font-weight:760; line-height:1.38; }
.content-area { display:grid; grid-template-columns:minmax(0,1fr) minmax(240px,300px); gap:2rem; align-items:start; }
.content-area > .site-main:only-child { grid-column:1 / -1; width:100%; max-width:900px; margin-inline:auto; }
.content-area > .site-main { margin:0; padding:0; }
article,.post,.page,.post-card,.post-box,.home-text { background:var(--paper); border:1px solid var(--line); border-radius:22px; box-shadow:var(--shadow); padding:clamp(1.25rem,3vw,2.45rem); margin:0 0 1.4rem; overflow:hidden; }
.article-post { position:relative; }
.breadcrumb { display:flex; flex-wrap:wrap; gap:.35rem; margin:0 0 .7rem; color:#6d9eaa; font-size:.87rem; }
.breadcrumb a { color:#4c9cad; }
.entry-title,.post-card__title,.post-box__title,h1 { margin:.1rem 0 .8rem; font-size:clamp(1.6rem,3vw,2.45rem); line-height:1.18; letter-spacing:-.032em; }
h2 { margin:2.25rem 0 .82rem; font-size:clamp(1.32rem,2.4vw,1.82rem); line-height:1.25; letter-spacing:-.018em; }
h3 { margin:1.65rem 0 .55rem; line-height:1.3; }
.entry-meta,.post-card__meta,.post-box__meta,.entry-date,.entry-category { color:var(--muted); font-size:.88rem; }
.entry-content { max-width:76ch; }
.entry-content > :first-child { margin-top:0; }
.entry-content p,.text-content p { margin:0 0 1.25rem; }
.entry-content a { font-weight:650; }
.entry-content ul,.entry-content ol { padding-left:1.45rem; }
.entry-content li + li { margin-top:.35rem; }
.entry-content blockquote { margin:1.6rem 0; padding:1.05rem 1.25rem; border-left:4px solid #31b9c4; background:#effafa; color:#294451; }
.entry-content > p > img,.entry-content > figure img,.entry-content img { margin:1.45rem auto; box-shadow:0 10px 24px rgba(20,55,67,.1); }
.post-card__thumbnail,.post-box__thumbnail,.entry-image { margin:0 0 1.15rem; }
.post-card__thumbnail img,.post-box__thumbnail img,.entry-image img { width:100%; max-height:430px; object-fit:cover; }
.widget-area,.sidebar { background:var(--paper); border:1px solid var(--line); border-radius:18px; padding:1.3rem; box-shadow:0 10px 30px rgba(19,47,59,.05); }
.widget { padding-bottom:1.1rem; margin-bottom:1.1rem; border-bottom:1px solid var(--line); }
.widget:last-child { padding:0; margin:0; border:0; }
.widget-title { margin:0 0 .65rem; font-size:1.05rem; }
.widget ul { margin:0; padding-left:1.1rem; }
.site-footer { margin-top:3.25rem; padding:2.75rem max(1.25rem,calc((100vw - 1180px)/2)); color:#cce2e9; background:#032b40; }
.site-footer a { color:#fff; }
.main-navigation .archive-reference,.top-menu .archive-reference,.footer-navigation .archive-reference,#header_menu > li > .archive-reference { display:block; padding:.68rem .8rem; color:rgba(255,255,255,.72); font-size:.78rem; font-weight:800; cursor:default; }
.entry-content .archive-reference,.text-content .archive-reference { color:var(--muted); border-bottom:1px dotted currentColor; }
.search-screen,.search-screen-overlay,.relap-runtime-iframe { display:none !important; }
table { display:block; overflow:auto; width:100%; border-collapse:collapse; }
textarea,input,select { max-width:100%; }
th,td { padding:.65rem .75rem; border:1px solid var(--line); text-align:left; }
code { padding:.1rem .35rem; border-radius:5px; background:#edf5f5; }
pre { overflow:auto; padding:1rem; border-radius:12px; background:#edf5f5; }
:focus-visible { outline:3px solid var(--accent); outline-offset:3px; }
@media (prefers-reduced-motion:reduce) { *,*::before,*::after { scroll-behavior:auto !important; transition:none !important; } }
@media (max-width:850px) { .content-area { display:block; } .widget-area,.sidebar { margin-top:1.35rem; } .swiper-wrapper { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:620px) { .site-header { padding-top:2.1rem; padding-bottom:2.3rem; } .site-logotype { flex-basis:48px; width:48px; height:48px; } .site-logotype img { width:48px !important; height:48px !important; } .site-header .site-title { font-size:2rem; } .site-description { font-size:.9rem; } .main-navigation,.top-menu,.footer-navigation { padding:0; overflow-x:auto; scrollbar-width:thin; } .main-navigation-inner { display:block; width:100%; min-width:0; } .menu-katalog-container { width:100%; min-width:0; overflow-x:auto; } .main-navigation > ul,.top-menu > ul,.footer-navigation > ul,#header_menu,.menu-katalog-container > .menu { flex-wrap:nowrap; width:max-content; min-width:100%; padding-inline:.75rem; } .main-navigation a,.top-menu a,.footer-navigation a { padding:.66rem .63rem; font-size:.72rem; white-space:nowrap; } .content-area,.site-content,.card-slider-container { padding-inline:1rem; } article,.post,.page,.post-card,.post-box,.home-text { border-radius:17px; padding:1.2rem; } }
@media (max-width:480px) { .swiper-wrapper { grid-template-columns:1fr; } .card-slider__image { min-height:170px; } }
