/*
Theme Name: LocalData Portal Theme
Theme URI: https://solectwowarkaly.pl/
Author: ODM STUDIO
Description: Lekki, dostępny motyw dla modularnego LocalData Portal.
Version: 0.4.2
Text Domain: localdata-portal-theme
*/
:root{--site-bg:#fff;--site-ink:#122019;--site-muted:#687269;--site-line:#e1e6e1;--site-accent:#2f6544}html{scroll-behavior:smooth}body{margin:0;background:var(--site-bg);color:var(--site-ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.site-header{position:sticky;top:0;z-index:40;background:rgba(255,255,255,.95);backdrop-filter:blur(16px);border-bottom:1px solid var(--site-line)}.admin-bar .site-header{top:32px}.site-shell{width:min(1180px,calc(100% - 40px));margin:auto}.site-header-inner{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:32px}.site-brand-wrap{display:flex;align-items:center;min-width:0}.site-brand{display:flex;align-items:center;gap:12px;color:inherit;text-decoration:none;font-weight:850;letter-spacing:-.028em;font-size:18px}.site-brand img{max-height:48px;width:auto}.site-nav ul{display:flex;align-items:center;gap:28px;list-style:none;margin:0;padding:0}.site-nav a{position:relative;color:inherit;text-decoration:none;font-weight:700;font-size:14px}.site-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-8px;height:2px;background:var(--site-accent);transition:right .18s ease}.site-nav a:hover:after,.site-nav .current-menu-item>a:after{right:0}.site-menu-toggle{display:none;border:1px solid var(--site-line);background:#fff;border-radius:10px;padding:9px 11px;font:inherit;font-weight:700;color:var(--site-ink)}.site-main{min-height:62vh}.site-content{padding:68px 0}.site-content article{max-width:820px}.site-content--wide{padding:0}.site-content h1{font-size:clamp(40px,6vw,70px);letter-spacing:-.045em;line-height:.98}.site-content h2{letter-spacing:-.025em}.site-content p,.site-content li{font-size:18px;line-height:1.72}.site-content img{max-width:100%;height:auto;border-radius:14px}.site-content a{color:#245c3a}.site-footer{padding:56px 0 42px;background:#0e1a13;color:#dbe3dc}.site-footer-inner{display:grid;grid-template-columns:1.35fr .65fr;gap:60px;align-items:start}.site-footer-brand{font-size:20px;font-weight:800;color:#fff}.site-footer p{max-width:620px;color:#aebbb1;line-height:1.55}.site-footer-note{font-size:13px;margin-top:22px}.site-footer a{color:inherit}.site-footer-menu ul{list-style:none;padding:0;margin:0;display:grid;gap:10px}.site-footer-menu a{text-decoration:none}.site-footer-menu a:hover{text-decoration:underline}.site-event-list{display:grid;gap:14px;margin-top:34px}.site-event-card{display:grid;grid-template-columns:86px 1fr;gap:20px;padding:20px;border:1px solid var(--site-line);border-radius:16px}.site-event-date{text-align:center;background:#f1f5f0;border-radius:12px;padding:12px}.site-event-date strong{font-size:30px;display:block}.site-event-card h2{margin:3px 0 8px}.site-event-card h2 a{color:inherit;text-decoration:none}.site-event-meta{color:var(--site-muted)}.site-nav li{position:relative}.site-nav .sub-menu{position:absolute;left:-18px;top:calc(100% + 18px);display:none;min-width:220px;padding:10px;background:#fff;border:1px solid var(--site-line);border-radius:12px;box-shadow:0 18px 50px rgba(13,32,20,.12);gap:0}.site-nav li:hover>.sub-menu,.site-nav li:focus-within>.sub-menu{display:grid}.site-nav .sub-menu li{width:100%}.site-nav .sub-menu a{display:block;padding:10px 11px;border-radius:8px;white-space:nowrap}.site-nav .sub-menu a:hover{background:#f2f5f1}.site-nav .sub-menu a:after{display:none}.site-page-hero{padding:54px 0 38px;background:#f5f7f3;border-bottom:1px solid var(--site-line)}.site-page-hero .site-kicker{margin:0 0 10px;text-transform:uppercase;letter-spacing:.16em;font-size:11px;font-weight:800;color:var(--site-muted)}.site-page-hero h1{margin:0;font-size:clamp(38px,5vw,62px);line-height:1;letter-spacing:-.045em}.site-content--wide>.ldp-portal--module:first-child .ldp-section:first-child{padding-top:56px}
@media(max-width:782px){.admin-bar .site-header{top:46px}}@media(max-width:760px){.site-shell{width:min(100% - 28px,1180px)}.site-header-inner{min-height:66px;flex-wrap:wrap;padding:10px 0}.site-menu-toggle{display:inline-flex}.site-nav{display:none;width:100%;padding:5px 0 13px}.site-header.is-open .site-nav{display:block}.site-nav ul{display:grid;gap:0}.site-nav li{border-top:1px solid var(--site-line)}.site-nav a{display:block;padding:13px 2px}.site-nav a:after{display:none}.site-footer-inner{grid-template-columns:1fr;gap:28px}.site-event-card{grid-template-columns:68px 1fr}}

@media(max-width:760px){.site-nav .sub-menu{position:static;display:grid!important;min-width:0;padding:0 0 8px 16px;border:0;border-radius:0;box-shadow:none;background:transparent}.site-nav .sub-menu li{border-top:0}.site-nav .sub-menu a{padding:9px 2px;font-weight:600;color:var(--site-muted)}.site-page-hero{padding:38px 0 26px}}

/* LocalData 0.3.1: keep the pointer over the parent menu item while
   travelling across the 18px spacing before its dropdown. This avoids
   repeated hover close/open ("flicker") without moving the submenu. */
@media (min-width: 761px) {
    .site-nav li.menu-item-has-children:hover::before,
    .site-nav li.menu-item-has-children:focus-within::before {
        content: "";
        position: absolute;
        top: 100%;
        left: -18px;
        right: -18px;
        height: 18px;
        z-index: 1;
    }
    .site-nav li.menu-item-has-children > .sub-menu { z-index: 2; }
    .site-nav .sub-menu a:focus-visible {
        outline: 2px solid var(--site-accent);
        outline-offset: 2px;
        background: #f2f5f1;
    }
}
