/* SP Sobiechy 1.1 — article cards, matching the original school website. */
.blog-items,.items-leading{grid-template-columns:repeat(3,minmax(0,1fr))}
.blog-item:has(.school-card){padding:0;background:#fff;overflow:hidden}
.school-card{height:100%}.school-card-link{display:flex;flex-direction:column;height:100%;color:var(--sp-ink);text-decoration:none}
.card-photo{height:215px;overflow:hidden;background:#e9efe4}.card-photo img{width:100%;height:100%!important;object-fit:cover;border-radius:0;transition:transform .25s ease}
.school-card-link:hover .card-photo img{transform:scale(1.025)}
.card-symbol{height:215px;background:#eaf0e4;color:#62824f;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px}
.card-symbol span{font-size:.7rem;letter-spacing:.18em}.card-body{padding:24px;display:flex;flex-direction:column;flex:1}
.card-meta{display:flex;justify-content:space-between;gap:12px;color:#596d5f;font-size:.7rem;margin-bottom:16px}.card-meta span{max-width:65%}
.card-body h2{font:600 1.2rem/1.4 Arial,Helvetica,sans-serif;letter-spacing:-.02em;margin:0 0 14px}
.card-body p{font-size:.88rem;line-height:1.7;color:var(--sp-muted)}.card-more{font-size:.8rem;font-weight:600;margin-top:auto;padding-top:10px}
.with-sidebar .blog-items{grid-template-columns:repeat(2,minmax(0,1fr))}
.is-home .blog-featured>.page-header{display:none}
.brand-mark svg{width:28px;height:28px}
.sidebar .mod-menu a,.sidebar .mod-menu a:hover,.sidebar .mod-menu a:focus,.sidebar .mod-menu a:active{text-decoration:none}
/* Clearly nested sidebar navigation; all levels remain visible. */
.sidebar .mod-menu,.sidebar .mod-menu ul{list-style:none;margin:0;padding:0;display:block}
.sidebar .mod-menu li{position:relative;margin:0;padding:0;min-width:0}
.sidebar .mod-menu a,.sidebar .mod-menu .nav-header,.sidebar .mod-menu .separator{display:block;padding:9px 10px;border-radius:5px;line-height:1.45;overflow-wrap:anywhere;color:var(--sp-ink)}
.sidebar .mod-menu>li{margin-bottom:5px}
.sidebar .mod-menu>li>a,.sidebar .mod-menu>li>.nav-header,.sidebar .mod-menu>li>.separator{font-size:1rem;font-weight:700}
.sidebar .mod-menu li.parent>a,.sidebar .mod-menu li.parent>.nav-header,.sidebar .mod-menu li.parent>.separator{font-weight:700}
.sidebar .mod-menu>li.parent>a,.sidebar .mod-menu>li.parent>.nav-header,.sidebar .mod-menu>li.parent>.separator{background:#dfe9d8}
.sidebar .mod-menu ul{margin:5px 0 12px 13px;padding-left:13px;border-left:2px solid #b8cbae}
.sidebar .mod-menu ul>li>a,.sidebar .mod-menu ul>li>.nav-header,.sidebar .mod-menu ul>li>.separator{font-size:.92rem}
.sidebar .mod-menu ul>li:before{content:'';position:absolute;left:-13px;top:19px;width:10px;border-top:2px solid #b8cbae}
.sidebar .mod-menu ul ul{margin-left:10px;padding-left:12px;border-left-color:#cedbc7}
.sidebar .mod-menu ul ul>li:before{left:-12px;width:9px;border-top-color:#cedbc7}
.sidebar .mod-menu ul ul>li>a,.sidebar .mod-menu ul ul>li>.nav-header,.sidebar .mod-menu ul ul>li>.separator{font-size:.85rem;font-weight:400;padding-block:8px}
.sidebar .mod-menu a:hover{background:#e1ebda;color:#174c40}
.sidebar .mod-menu li.current>a,.sidebar .mod-menu a[aria-current="page"]{background:#194f43;color:#fff;font-weight:700}
.sidebar .mod-menu a:focus-visible{outline:3px solid #63843f;outline-offset:2px}
@media(max-width:1000px){.blog-items{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.blog-items,.with-sidebar .blog-items{grid-template-columns:1fr}.card-photo,.card-symbol{height:220px}}
@media(prefers-reduced-motion:reduce){.card-photo img{transition:none}}
/* Share one grid between Joomla's leading and introductory articles. */
.blog-featured,.com-content-category-blog{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px;align-items:stretch}
.blog-featured>*,.com-content-category-blog>*{grid-column:1/-1;min-width:0}
.blog-featured>.blog-items,.com-content-category-blog>.blog-items{display:contents}
.blog-featured>.blog-items>.blog-item,.com-content-category-blog>.blog-items>.blog-item{grid-column:auto;margin:0}
@media(max-width:720px){.blog-featured,.com-content-category-blog{grid-template-columns:minmax(0,1fr)}}
