/* Visual refinement: original identity and photographs, clearer responsive presentation. */
.header-inner{min-height:188px;gap:48px;padding-block:20px}
.brand img{width:315px;max-width:100%;max-height:none;height:auto}
.header-contacts{display:grid;gap:10px;max-width:480px;font-size:14px;line-height:1.6}
.header-contacts p{display:grid;grid-template-columns:20px minmax(0,1fr);column-gap:11px;align-items:start;margin:0!important}
.header-contact-icon{display:block;width:19px;height:19px;margin-top:2px;fill:none;stroke:var(--wine);stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}
.header-contact-text{min-width:0}
.header-contacts a[href^="tel:"]{color:inherit;text-decoration:none;white-space:nowrap}
.header-contacts a[href^="tel:"]:hover,.header-contacts a[href^="tel:"]:focus-visible{color:var(--wine);text-decoration:underline}
.header-contacts a[href^="mailto:"]{text-decoration-thickness:1px;text-underline-offset:3px}
.primary-menu a{font-weight:600}
.menu-toggle-icon{position:relative;display:block;width:20px;height:16px;border-block:2px solid currentColor}
.menu-toggle-icon:before,.menu-toggle-icon:after{content:"";position:absolute;left:0;right:0;top:5px;border-top:2px solid currentColor}
.menu-toggle-icon:after{display:none}
.menu-toggle[aria-expanded="true"] .menu-toggle-icon{border-color:transparent}
.menu-toggle[aria-expanded="true"] .menu-toggle-icon:before{transform:rotate(45deg)}
.menu-toggle[aria-expanded="true"] .menu-toggle-icon:after{display:block;transform:rotate(-45deg)}
.news-source{padding-bottom:28px;border-bottom:1px solid var(--line);margin-bottom:34px}
.news-source>.primary-photo{display:block;float:left;width:30%;max-width:300px;margin:0 28px 20px 0}
.news-source>.primary-photo img{display:block;width:100%;height:auto;max-height:none;object-fit:contain}
.news-source>time{display:block;color:var(--muted);font-size:12px;margin-bottom:10px}
.news-source>h2{margin-top:0}
.news-source>h2 a,.juvi-module-cards h3 a{text-decoration:none}
.news-source>h2 a:hover,.juvi-module-cards h3 a:hover{text-decoration:underline}
.juvi-module-cards .card-image{aspect-ratio:8/5;background:#fdfbf9}
.juvi-module-cards h3{font-size:17px;line-height:1.45;margin:12px 0 8px;font-weight:600}
.juvi-module-cards time{margin-top:10px;margin-bottom:8px}
.hero+.main-area{padding-bottom:24px}
/* Keep the original desktop footer; fit it to tablet and phone viewports. */
@media(max-width:1159px){
 .juvi-source-footer .uk-container{width:calc(100% - 40px)}
 .juvi-source-footer .uk-footer-block{float:none;width:100%;margin-bottom:24px;padding-top:26px}
 .juvi-source-footer .uk-footer-block ul{float:none;margin:0;gap:16px 24px;justify-content:flex-start}
 .juvi-source-footer .uk-subnav>*{margin:0;padding:0;float:none}
 .juvi-source-footer .uk-subnav-line>:before{display:none}
 .juvi-source-footer .uk-footer-block>p{margin-top:24px!important}
 .juvi-source-footer .uk-copyright>.uk-container{display:flex;flex-wrap:wrap;column-gap:22px;padding-bottom:10px}
 .juvi-source-footer .uk-copyright>.uk-container:before,.juvi-source-footer .uk-copyright>.uk-container:after{display:none}
}
@media(min-width:1024px)and(max-width:1159px){.primary-menu a{font-size:13px}.primary-menu ul{gap:9px}}
@media(max-width:1023px){
 .header-inner{min-height:164px;gap:28px}
 .brand img{width:270px}
 .header-contacts{font-size:13px;max-width:430px;gap:9px}
 .menu-toggle{display:flex;align-items:center;justify-content:space-between;min-height:54px;width:100%;border:0;background:transparent;padding:10px 0;font-size:16px;font-weight:600;color:var(--wine)}
 .primary-menu{display:none}
 .primary-menu.is-open{display:block}
 .primary-menu ul{display:block;padding-bottom:12px}
 .primary-menu a{font-size:15px;line-height:1.5;padding:12px 8px;white-space:normal;border-bottom:1px solid var(--line)}
 .primary-menu .juvi-home-icon{height:24px}
}
@media(max-width:767px){
 .header-inner{display:grid;grid-template-columns:minmax(0,1fr);gap:18px;padding-block:18px;min-height:0}
 .brand{justify-self:center}
 .brand img{width:250px;max-width:100%;max-height:none}
 .header-contacts{width:100%;max-width:none;font-size:13px;gap:9px;line-height:1.6}
 .header-contact-icon{width:18px;height:18px}
 .header-contacts p{grid-template-columns:18px minmax(0,1fr);column-gap:10px}
 .news-source>.primary-photo{float:none;width:fit-content;max-width:100%;margin:0 auto 20px}
 .news-source>.primary-photo img{width:auto;max-width:100%;max-height:400px;object-fit:contain}
 .news-source>h2{font-size:22px}
 .juvi-module-cards h3{font-size:16px}
 .hero-slide>img,.hero-slide>.juvi-hero-picture>img{height:320px}
 .hero-caption .wk-caption-text{font-size:13px;line-height:1.55}
 .juvi-source-footer .uk-container{width:calc(100% - 32px)}
 .juvi-source-footer .uk-subnav-line>li>a{font-size:16px;line-height:1.45}
 .juvi-source-footer .uk-footer-block>p{display:grid;grid-template-columns:18px minmax(0,1fr);gap:12px 8px;align-items:start;line-height:1.6}
 .juvi-source-footer .uk-footer-block>p>img{margin:4px 0 0!important}
 .juvi-source-footer .uk-footer-block>p>span{margin:0!important;overflow-wrap:anywhere}
 .juvi-source-footer .uk-copyright>.uk-container{display:block;padding-top:4px;padding-bottom:14px}
 .juvi-source-footer .uk-copyright .uk-float-left,.juvi-source-footer .uk-copyright .uk-float-right{float:none}
 .juvi-source-footer .uk-copyright .uk-margin-small{margin:0}
}
@media(max-width:374px){.brand img{width:230px}.juvi-source-footer .uk-container{width:calc(100% - 24px)}}

/* News archive: four source-style columns with concise previews. */
.news-archive-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;align-items:stretch}
.news-preview{display:flex;flex-direction:column;min-width:0;border-bottom:1px solid var(--line);padding-bottom:20px}
.news-preview-image{margin-bottom:12px;flex-shrink:0}
.news-preview>time{font-size:12px;color:var(--muted);margin-bottom:8px}
.news-preview>h2{font-size:17px;line-height:1.45;font-weight:600;margin:0 0 12px}
.news-preview>h2 a{text-decoration:none}
.news-preview>h2 a:hover{text-decoration:underline}
.news-preview-excerpt{font-size:14px;line-height:1.65;margin:0 0 14px}
.news-preview-more{margin-top:auto;padding-top:4px;font-size:14px;font-weight:600;align-self:flex-start}
@media(max-width:1024px){.news-archive-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:599px){.news-archive-grid{grid-template-columns:minmax(0,1fr);gap:28px}.news-preview>h2{font-size:19px}.news-preview-image{aspect-ratio:4/3;max-height:260px}}
