.desktop-nav .menu,.site-footer .menu { list-style:none; padding:0; margin:0; display:flex; gap:24px; align-items:center; }
.site-footer .menu { display:block; }
.desktop-nav .menu>li { position:relative; }
.desktop-nav .sub-menu { position:absolute; top:100%; left:0; display:none; min-width:230px; padding:12px 20px; margin:0; list-style:none; background:var(--paper); box-shadow:var(--shadow); border-radius:12px; }
.desktop-nav li:hover>.sub-menu,.desktop-nav li:focus-within>.sub-menu { display:block; }
.desktop-nav .sub-menu { max-height:65vh; overflow-y:auto; }
.desktop-nav .current-menu-item>a,.desktop-nav .current_page_item>a { color:var(--brand); }
.desktop-nav .current-menu-item>a::after,.desktop-nav .current_page_item>a::after { transform:scaleX(1); }
.mobile-menu nav .menu { display:flex; flex-direction:column; list-style:none; padding:0; margin:0; }
.mobile-menu .sub-menu { list-style:none; padding:0 0 0 18px; }
.mobile-menu .sub-menu a { font-size:20px; }
.brand .site-brand-logo { object-fit:contain; width:65px; height:52px; }
.brand-name { max-width:310px; white-space:normal; }
.brand-sub { letter-spacing:.08em; }
.footer-top { grid-template-columns:1.2fr .8fr 1fr; }
.site-header .topline { gap:10px; }
.topline .wrap>span { gap:12px; }
.site-search { display:flex; gap:12px; flex-wrap:wrap; margin:22px 0; }
.site-search input { border:1px solid var(--line); background:var(--paper); min-height:48px; padding:10px 15px; border-radius:8px; max-width:100%; }
.article-body { margin-inline:auto; }
.article-body>img { border-radius:var(--radius); margin-bottom:30px; }
.post-navigation { margin:40px 0; }
.nav-links { display:flex; justify-content:space-between; flex-wrap:wrap; gap:20px; margin-top:35px; }
.page-numbers { display:inline-flex; min-width:44px; min-height:44px; align-items:center; justify-content:center; padding:8px; border:1px solid var(--line); border-radius:8px; }
.page-numbers.current { background:var(--brand); color:var(--paper); }
.screen-reader-text { position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0); }
.admin-bar .site-header { top:32px; }
.st-consultation-form .btn { margin-top:22px; }
.st-consultation-result label { display:block; margin:20px 0 10px; }
.st-consultation-result textarea { width:100%;padding:16px;border:1px solid var(--line);background:var(--ivory);border-radius:8px; }
.st-consultation-result .btn-row { margin-top:15px; }
.st-form-status { color:var(--brand); font-size:13px; }
.comments-area { max-width:75ch; margin:50px auto; }
.comments-area textarea,.comments-area input { max-width:100%; border:1px solid var(--line); border-radius:6px; padding:10px; }
.no-js-navigation .menu { display:flex; flex-wrap:wrap; gap:12px; padding:15px; }
.admin-only-note { font-size:13px; margin-top:18px; }
.footer-contact .text-link { white-space:normal; }
.empty-state h2 { font-size:32px; }
.st-simple-cta { grid-template-columns:1fr auto; }
.st-simple-cta>div:first-child { grid-column:auto; }
.brand-name,.news-card h3 { overflow-wrap:anywhere; }
@media(max-width:700px){ .st-simple-cta {grid-template-columns:1fr;} .st-simple-cta .btn{justify-self:start;} }
@media(max-width:1100px){ .desktop-nav .menu { gap:16px; } .brand-name { max-width:250px; } }
@media(max-width:782px){ .admin-bar .site-header { top:46px; } }
@media(max-width:700px){ .footer-top { grid-template-columns:1fr 1fr; } .footer-contact { grid-column:1/-1; } .brand .site-brand-logo{width:49px;height:42px;} .brand-name{max-width:245px;} .st-consultation-form input,.st-consultation-form textarea{font-size:16px;} .contact-widget.contextual-hidden{visibility:hidden;pointer-events:none;} }
