/* BZH44 public layout v1. Scoped to the observed Joomla template "be". */
:root { color-scheme: light; }
html { box-sizing:border-box; }
*, *:before, *:after { box-sizing:inherit; }
body { min-width:0; background:#f7f7f6; color:#293038; font:16px/1.6 system-ui,-apple-system,Arial,sans-serif; }
img,iframe { max-width:100%; }
a { color:#8e2027; }
a:hover { color:#bc333a; }
a:focus-visible,button:focus-visible { outline:3px solid #b58146; outline-offset:3px; }
#header { max-width:1120px; width:100%; }
#topmenu { height:auto; min-height:48px; background:#92252a; }
#fw { max-width:1120px; width:100%; }
#topmenu ul.menu { display:flex; align-items:center; flex-wrap:wrap; gap:2px 4px; min-height:48px; }
#topmenu ul.menu li { float:none; width:auto; line-height:1.3; height:auto; }
#topmenu ul.menu li a { display:flex; align-items:center; min-height:44px; padding:10px 17px; border-radius:5px; color:#fff; font:600 14px/1.2 system-ui,Arial,sans-serif; letter-spacing:.02em; }
#topmenu ul.menu li a:hover,#topmenu ul.menu li.active a { background:rgba(255,255,255,.18); }
#topmenu ul.menu li.item-106 img { max-height:29px; width:auto; margin:0; }
#main { display:flex; align-items:flex-start; gap:24px; max-width:1120px; width:100%; min-height:0; padding:24px 18px 56px; }
#main-left,#main-center,#main-center-wide,#main-right { float:none; margin:0; min-width:0; }
#main-left { flex:0 0 295px; width:auto; }
#main-left .custom iframe { display:block; width:100%; }
#main-center,#main-center-wide { flex:1 1 0; width:auto; border:0; }
#main-right { flex:0 0 206px; width:auto; }
.blog,.blog-featured,.item-page { margin:0; }
#main-center .page-header h1,#main-center-wide .page-header h1 { font:700 clamp(23px,3vw,30px)/1.2 system-ui,Arial,sans-serif; color:#20262e; letter-spacing:.02em; margin:0 0 16px; }
#main-center .items-row,#main-center-wide .items-row { padding:0; margin:0 0 18px; }
#main-center .item,#main-center-wide .item { padding:0 0 24px; border-bottom:1px solid #e1dfdc; overflow:auto; }
#main-center h2.item-title,#main-center-wide h2.item-title { font:650 20px/1.35 system-ui,Arial,sans-serif; margin:0 0 12px !important; }
#main-center h2.item-title a,#main-center-wide h2.item-title a { color:#252a31; }
#main-center .item p,#main-center-wide .item p { line-height:1.55; }
#main-center .img-intro-left,#main-center-wide .img-intro-left { float:left; margin:2px 16px 10px 0; }
#main-center img.multithumb_blog,#main-center-wide img.multithumb_blog { display:block; float:none; max-width:160px; height:auto; border-radius:8px; margin:0; }
#main-center .readmore,#main-center-wide .readmore { clear:both; margin:12px 0 0; }
.readmore a { display:inline-flex; align-items:center; min-height:40px; padding:8px 14px; border:1px solid #c9a397; border-radius:8px; color:#83282d; font:650 14px/1.3 system-ui,Arial,sans-serif; text-decoration:none; text-transform:none; }
.readmore a:hover { background:#fff0e7; }
#main-right ul.menu { display:grid; gap:8px; list-style:none; }
#main-right ul.menu li,#main-right ul.menu li.active,#main-right ul.menu li.item-138,#main-right ul.menu li.item-138.active { display:block; width:auto; min-height:0; height:auto !important; line-height:normal !important; background:none !important; text-align:left; }
#main-right ul.menu li a,#main-right ul.menu li a:hover,#main-right ul.menu li.active a,#main-right ul.menu li.item-138 a { display:flex; align-items:center; min-height:46px; padding:10px 14px !important; border-radius:9px; border:1px solid #e2dedb; background:#fff; box-shadow:0 2px 6px rgba(0,0,0,.04); color:#293038; font:600 14px/1.3 system-ui,Arial,sans-serif !important; text-decoration:none; overflow-wrap:anywhere; }
#main-right ul.menu li.active a,#main-right ul.menu li a:hover { border-color:#aa484d; background:#fff4f0; color:#82242c; }
#footer { clear:both; width:100%; height:auto; min-height:72px; margin:0; background:#30363b; border:0; }
#footer-int { max-width:1120px; width:100%; padding:20px 18px; }
#footer-int table { table-layout:fixed; width:100% !important; margin:0; color:#f4f4f1; font:14px/1.45 system-ui,Arial,sans-serif; }
.pagination { margin:18px 0; }
.pagination ul li { display:inline-block; margin:3px; }
.pagination a { display:inline-block; min-width:30px; padding:4px; text-align:center; }
@media(max-width:950px) {
  #header { height:185px; background-size:auto 185px; background-position:left top; }
  #anons { top:125px; }
  #main { flex-wrap:wrap; gap:26px; }
  #main-left { flex:0 0 255px; }
  #main-center,#main-center-wide { flex:1 1 410px; }
  #main-right { flex:1 1 100%; }
  #main-right ul.menu { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media(max-width:700px) {
  #header { height:160px; background-size:auto 160px; background-position:left top; }
  #anons { top:104px; padding-left:8px; max-width:calc(100% - 16px); }
  #line1 { max-width:280px; }
  #topmenu ul.menu { padding:4px 8px; }
  #topmenu ul.menu li a { min-height:40px; padding:8px 11px; font-size:12px; }
  #main { display:block; padding:18px 14px 38px; }
  #main-left,#main-center,#main-center-wide,#main-right { width:100%; margin:0 0 25px; }
  #main-left .custom iframe { max-width:310px; height:650px !important; }
  #main-right ul.menu { grid-template-columns:repeat(2,minmax(0,1fr)); }
  #main-center .item,#main-center-wide .item { overflow:hidden; }
  #main-center .img-intro-left,#main-center-wide .img-intro-left { float:none; margin:0 0 14px; }
  #main-center img.multithumb_blog,#main-center-wide img.multithumb_blog { max-width:min(100%,260px); width:auto; }
  #footer-int table,#footer-int tbody,#footer-int tr,#footer-int td { display:block; width:100% !important; text-align:left !important; }
  #footer-int td+td { margin-top:8px; }
}
@media(max-width:400px) { #main-right ul.menu { grid-template-columns:1fr; } }

/* BZH44 reader and section navigation v2. The reader uses page scrolling only. */
#main.bzh44-reader-layout { max-width:1380px; flex-wrap:wrap; }
#main.bzh44-reader-layout #main-center-wide,
#main.bzh44-reader-layout #main-center { flex:1 1 100%; width:100%; }
#main.bzh44-reader-layout #main-right { flex:1 1 100%; width:100%; }
#main.bzh44-reader-layout #main-right ul.menu { grid-template-columns:repeat(3,minmax(0,1fr)); }
#main.bzh44-reader-layout .item-page iframe[src^="/issues/"] { display:block; width:100% !important; max-width:100%; border:0; }
#main.bzh44-reader-layout #main-right .moduletable_cover { max-width:100%; }
#main-right .moduletable_cover:before { content:'Предыдущие выпуски'; display:block; margin:0 0 12px; font:700 20px/1.3 system-ui,Arial,sans-serif; color:#283039; }
#main-right .custom_cover iframe[src^="/bzh44-issues/covers.html"] { display:block; width:100%; }
#bzh44-quick-nav { display:none; }
@media(max-width:1199px) {
  #main { display:block; }
  #main-left,#main-center,#main-center-wide,#main-right { display:block; width:100%; max-width:none; margin:0 0 24px; }
  #main.bzh44-reader-layout #main-center-wide,
  #main.bzh44-reader-layout #main-center { width:100%; }
  #bzh44-quick-nav { display:block; position:sticky; top:0; z-index:50; width:100%; background:#f8f7f5; border-bottom:1px solid #ddd6d1; box-shadow:0 3px 10px rgba(0,0,0,.08); }
  #bzh44-quick-nav ul.menu { display:flex; flex-wrap:nowrap; align-items:center; gap:7px; overflow-x:auto; overscroll-behavior-x:contain; -webkit-overflow-scrolling:touch; list-style:none; margin:0 auto; padding:7px 12px; max-width:1120px; scrollbar-width:thin; }
  #bzh44-quick-nav li { flex:0 0 auto; float:none; display:block; width:auto; height:auto; margin:0; padding:0; background:none; }
  #bzh44-quick-nav a { display:flex; align-items:center; min-height:42px; max-width:260px; padding:7px 14px; border:1px solid #e1d9d3; border-radius:9px; color:#2a3036; background:#fff; text-decoration:none; font:600 14px/1.2 system-ui,Arial,sans-serif; white-space:normal; }
  #bzh44-quick-nav li.active a,#bzh44-quick-nav a:hover { border-color:#a34e4d; background:#fff0e9; color:#7f252c; }
  body.bzh44-has-quick-nav #main-right ul.menu { display:none; }
  #main-right .moduletable_cover { clear:both; padding:18px 0; }
  #main-right .custom_cover iframe { width:100% !important; }
}
@media(max-width:700px) {
  #main { padding-left:12px; padding-right:12px; }
  #main.bzh44-reader-layout { padding-left:8px; padding-right:8px; }
  #main.bzh44-reader-layout .item-page .page-header { margin-bottom:12px; }
  #main-right .moduletable_cover { background:#fff; border:1px solid #e7e0da; border-radius:12px; padding:14px; }
}

/* The cloned navigation must not inherit the template's decorative menu tile. */
#bzh44-quick-nav ul.menu li,
#bzh44-quick-nav ul.menu li.item-138,
#bzh44-quick-nav ul.menu li.item-138.active {
  background:none !important;
  background-image:none !important;
  border:0 !important;
  box-shadow:none !important;
}
#bzh44-quick-nav ul.menu li a,
#bzh44-quick-nav ul.menu li.item-138 a {
  background:#fff !important;
  background-image:none !important;
  box-shadow:none !important;
}
#bzh44-quick-nav ul.menu li.active a,
#bzh44-quick-nav ul.menu li a:hover { background:#fff0e9 !important; }

/* Desktop front page: current issue first, centred above the news feed. */
@media(min-width:1200px) {
  #main.bzh44-home-layout {
    display:grid;
    grid-template-columns:minmax(0,1fr) 206px;
    grid-template-areas:"issue issue" "news sidebar";
    align-items:start;
    gap:24px;
  }
  #main.bzh44-home-layout #main-left { grid-area:issue; width:100%; }
  #main.bzh44-home-layout #main-center { grid-area:news; width:100%; }
  #main.bzh44-home-layout #main-right { grid-area:sidebar; width:206px; }
}

/* Centre the complete cover widget even in a mobile browser's desktop mode. */
#main.bzh44-home-layout #main-left .custom iframe {
  display:block;
  width:310px !important;
  max-width:100%;
  margin-left:auto;
  margin-right:auto;
}

/* The old template forces item-138 to 68px and overrides its link padding. */
@media(max-width:1199px) {
  #bzh44-quick-nav ul.menu { align-items:stretch; }
  #bzh44-quick-nav ul.menu li,
  #bzh44-quick-nav ul.menu li.item-138 {
    display:flex;
    align-items:stretch;
    height:54px !important;
    min-height:54px !important;
    line-height:normal !important;
  }
  #bzh44-quick-nav ul.menu li a,
  #bzh44-quick-nav ul.menu li.item-138 a {
    display:flex;
    align-items:center;
    box-sizing:border-box;
    height:54px !important;
    min-height:54px !important;
    padding:6px 14px !important;
    font:600 14px/1.2 system-ui,Arial,sans-serif !important;
  }
}

/* Wide home page, including desktop mode in mobile browsers. */
@media(min-width:900px) {
  body.bzh44-home-layout-page #bzh44-quick-nav { display:none; }
  #main.bzh44-home-layout {
    display:grid;
    grid-template-columns:minmax(0,1fr) 206px;
    grid-template-areas:"issue sidebar" "news sidebar";
    align-items:start;
    gap:24px;
  }
  #main.bzh44-home-layout #main-left { grid-area:issue; width:100%; margin:0; }
  #main.bzh44-home-layout #main-left .custom iframe {
    display:block;
    width:100% !important;
    max-width:none;
    margin:0;
  }
  #main.bzh44-home-layout #main-center { grid-area:news; width:100%; }
  #main.bzh44-home-layout #main-right { grid-area:sidebar; width:206px; }
  body.bzh44-home-layout-page #main.bzh44-home-layout #main-right ul.menu {
    display:grid;
    grid-template-columns:1fr;
  }
}

/* Mobile section menu: indicate that more sections are available to the right. */
@media(max-width:1199px) {
  #bzh44-quick-nav.bzh44-can-scroll-right:after {
    content:'›';
    position:absolute;
    z-index:2;
    top:7px;
    right:0;
    display:flex;
    align-items:center;
    justify-content:center;
    width:34px;
    height:54px;
    color:#79262c;
    font:700 30px/1 Arial,sans-serif;
    background:linear-gradient(90deg,rgba(248,247,245,0),#f8f7f5 35%);
    pointer-events:none;
  }
}
@media(max-width:899px) {
  #main-right .moduletable_cover,
  #main-right .custom_cover { width:100% !important; max-width:none !important; }
  #main-right .custom_cover iframe[src^="/bzh44-issues/covers.html"] {
    width:100% !important;
    max-width:none !important;
  }
}

/* Consistent article preview cards without altering legacy Joomla content. */
#main-center .blog-featured .item,
#main-center .blog .item,
#main-center-wide .blog .item {
  display:flow-root;
  margin:0 0 18px;
  padding:18px;
  border:1px solid #e4ded9;
  border-radius:12px;
  background:#fff;
  box-shadow:0 2px 8px rgba(31,35,40,.04);
}
#main-center .blog-featured .item h2.item-title,
#main-center .blog .item h2.item-title,
#main-center-wide .blog .item h2.item-title { margin:0 0 12px !important; }
#main-center .blog-featured .item img.multithumb_blog,
#main-center .blog .item img.multithumb_blog,
#main-center-wide .blog .item img.multithumb_blog {
  float:left;
  width:150px;
  max-width:150px;
  height:auto;
  margin:2px 16px 10px 0 !important;
  border-radius:8px;
}
#main-center .blog-featured .item .readmore,
#main-center .blog .item .readmore,
#main-center-wide .blog .item .readmore { clear:both; text-align:right; margin:12px 0 0; }
@media(max-width:700px) {
  #main-center .blog-featured .item,
  #main-center .blog .item,
  #main-center-wide .blog .item { padding:16px; }
  #main-center .blog-featured .item img.multithumb_blog,
  #main-center .blog .item img.multithumb_blog,
  #main-center-wide .blog .item img.multithumb_blog {
    float:none;
    display:block;
    width:auto;
    max-width:min(100%,220px);
    margin:4px 0 14px !important;
  }
}

/* Keep the current page and its neighbours; navigation links still work. */
.pagination.bzh44-compact-pagination ul { display:flex; flex-wrap:wrap; align-items:center; gap:6px; padding:0; list-style:none; }
.pagination.bzh44-compact-pagination ul li { margin:0; }
.pagination.bzh44-compact-pagination li.pagination-start,
.pagination.bzh44-compact-pagination li.pagination-end { display:none; }
.pagination.bzh44-compact-pagination .pagenav { display:inline-flex; align-items:center; justify-content:center; min-height:38px; min-width:38px; padding:6px 10px; border:1px solid #ded5d0; border-radius:7px; text-decoration:none; }
.pagination.bzh44-compact-pagination span.pagenav { background:#f1eeec; color:#4e5053; }
.pagination.bzh44-compact-pagination a.pagenav { background:#fff; }
