/*
Theme Name: Лохино-ВИЛС
Description: Минималистичная мобильная тема СНТ, с тонким советским акцентом.
Author: СНТ Лохино-ВИЛС
Version: 2.2.0
Requires PHP: 8.1
Text Domain: snt-vils
*/
:root{--paper:#f7f3ea;--white:#fffefa;--ink:#242a26;--muted:#6f716b;--line:#ddd8cd;--red:#9b332b;--red-dark:#75261f;--soft:#f0e9dc;--green:#526754}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.55 system-ui,-apple-system,'Segoe UI',Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit}a:hover{color:var(--red)}img,svg{max-width:100%;height:auto}.container{width:100%;max-width:1140px;margin:0 auto;padding:0 22px}.skip-link{position:absolute;left:-9999px;top:6px;z-index:100;padding:8px;background:#fff}.skip-link:focus{left:6px}.mast{background:var(--white);border-bottom:1px solid var(--line)}.mast-inner{display:flex;align-items:center;justify-content:space-between;gap:26px;min-height:90px}.brand{text-decoration:none;display:flex;align-items:center;gap:12px;line-height:1.15;flex-shrink:0}.brand-mark{width:44px;height:44px;display:grid;place-items:center;clip-path:polygon(50% 0,100% 26%,100% 100%,0 100%,0 26%);background:var(--red);color:white;font-size:26px}.brand strong{font-size:18px;letter-spacing:.045em;display:block}.brand small{font-size:12px;color:var(--muted);display:block;margin-top:4px}.nav{min-width:0}.nav-list{display:flex;flex-wrap:wrap;gap:18px;list-style:none;padding:0;margin:0}.nav>a,.nav-list a{font-weight:700;text-decoration:none;font-size:14px;white-space:nowrap}.nav .current-menu-item>a{color:var(--red)}.hero{border-bottom:1px solid var(--line);background:radial-gradient(circle at 82% 35%,#eadcca 0,transparent 38%),var(--paper)}.hero-inner{display:flex;justify-content:space-between;align-items:center;gap:30px;min-height:380px;padding-top:40px;padding-bottom:50px}.hero h1{font-size:clamp(38px,5.5vw,65px);line-height:1.08;margin:12px 0 17px;letter-spacing:-.045em}.hero h1 em{font-style:normal;color:var(--red)}.hero-seal{width:194px;height:194px;border:2px solid var(--red);border-radius:50%;display:flex;align-items:center;justify-content:center;gap:8px;color:var(--red);transform:rotate(-10deg);flex-shrink:0}.hero-seal span{font-size:82px;font-weight:800;line-height:1}.hero-seal small{line-height:1.3;font-weight:800;letter-spacing:.16em}.eyebrow{color:var(--red);font-size:11px;letter-spacing:.16em;text-transform:uppercase;font-weight:800;margin:0}.lead{font-size:18px;color:#575f56;max-width:600px;margin-bottom:25px}.btn{display:inline-flex;justify-content:center;align-items:center;gap:13px;padding:12px 17px;border:1px solid var(--red);border-radius:3px;background:var(--red);font-weight:750;color:#fff;text-decoration:none;cursor:pointer;font:inherit;font-weight:750}.btn:hover{color:#fff;background:var(--red-dark)}.btn.secondary{background:#fff;color:var(--red)}.btn.secondary:hover{background:var(--soft)}.section{padding:34px 0}.quick{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.quick a{background:var(--white);border:1px solid var(--line);text-decoration:none;display:flex;flex-direction:column;gap:2px;padding:20px;min-height:142px}.quick a:hover{border-color:var(--red);transform:translateY(-1px)}.quick-icon{color:var(--red);font-size:24px;margin-bottom:8px}.quick strong{font-size:16px}.quick small{color:var(--muted);font-size:12px}.section-head{display:flex;align-items:end;justify-content:space-between;gap:14px;margin-bottom:19px}.section-head h2{margin:6px 0 0}.text-link,.more{color:var(--red);font-weight:750;text-decoration:none}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.card{padding:23px;background:var(--white);border:1px solid var(--line);min-width:0;display:flex;flex-direction:column;gap:4px}.card.pinned{border-top:4px solid var(--red);padding-top:20px}.card h3{font-size:21px;line-height:1.26;margin:7px 0}.card h3 a{text-decoration:none}.card p{color:#5d625c;margin:6px 0 14px}.card .more{margin-top:auto}.tag{font-size:10px;font-weight:850;letter-spacing:.15em;color:var(--red);text-transform:uppercase}.meta{font-size:13px;color:var(--muted)}h1,h2,h3{line-height:1.18;letter-spacing:-.025em}h1{font-size:clamp(32px,5vw,48px)}h2{font-size:clamp(25px,3vw,32px)}.content{background:var(--white);border:1px solid var(--line);padding:clamp(19px,4vw,36px);margin:28px 0 44px;overflow:hidden}.content iframe{max-width:100%}.content-news .news-row{padding:22px 0;border-bottom:1px solid var(--line)}.content-news .news-row h2{font-size:24px;margin:9px 0}.content-news .news-pinned{padding-left:13px;border-left:4px solid var(--red)}.wp-block-file{padding:12px;border-bottom:1px solid var(--line)}.site-footer{background:#293029;color:#f8f3e6;padding:34px 0;margin-top:40px}.site-footer a{color:#fff}.site-footer small{color:#cac8be}.footer-flex{display:flex;align-items:start;justify-content:space-between;gap:20px;flex-wrap:wrap}.snt-control{width:100%;border:1px solid #cbc6bb;border-radius:4px;padding:12px;background:#fff;color:var(--ink);font:inherit;min-height:46px}.snt-control:focus{outline:2px solid #bd8c86;outline-offset:1px}.snt-table-scroll{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.snt-table{width:100%;border-collapse:collapse;background:var(--white)}.snt-table th,.snt-table td{padding:13px 12px;text-align:left;border-bottom:1px solid var(--line);font-size:14px}.snt-table th{background:var(--soft);font-weight:750}.snt-table td:not(:first-child),.snt-table th:not(:first-child){text-align:right;white-space:nowrap}.snt-empty{padding:16px 0}.sv-electric-public{width:100%}.sv-electric-head{display:flex;align-items:end;justify-content:space-between;flex-wrap:wrap;gap:18px;padding-bottom:18px;border-bottom:1px solid var(--line)}.sv-electric-head h2{margin:7px 0}.sv-select-label{font-size:13px;font-weight:700;display:grid;gap:6px;min-width:220px}.sv-select-label select{width:100%}.sv-stat-strip{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:22px 0 14px}.sv-stat-strip>div{border:1px solid var(--line);padding:16px;background:var(--soft);min-width:0}.sv-stat-strip small{display:block;color:var(--muted);margin-bottom:7px}.sv-stat-strip strong{display:block;font-size:clamp(19px,3vw,25px);line-height:1.3;overflow-wrap:anywhere}.sv-stat-strip span{font-size:13px;color:var(--muted);font-weight:500}.sv-zero-note{font-size:13px;line-height:1.5;color:var(--muted);margin:12px 0 19px}.sv-search-label{font-size:15px;font-weight:750;display:block;margin-bottom:7px}.sv-search{max-width:560px;font-size:16px}.sv-show-count{margin:9px 0 18px}.sv-desktop-grid{display:block}.sv-mobile-grid{display:none}.sv-filter-row[hidden],.sv-none[hidden],.sv-more[hidden]{display:none!important}.sv-more{display:none;margin-top:16px}.sv-none{padding:16px;background:var(--soft)}.sv-common{padding:22px 0 4px;margin-top:28px;border-top:1px solid var(--line)}.sv-common h3{margin:0 0 6px}.sv-common-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:15px}.sv-common-card{background:var(--soft);border:1px solid var(--line);padding:15px;display:grid;gap:5px}.sv-common-card div{font-size:13px;color:var(--muted)}.sv-common-card b{font-size:16px}.sv-read-card{border:1px solid var(--line);background:#fff;padding:14px 15px;margin-bottom:10px}.sv-read-title{display:flex;justify-content:space-between;align-items:baseline;gap:15px;padding-bottom:10px;border-bottom:1px solid var(--line)}.sv-read-title span{font-size:14px;color:var(--muted)}.sv-read-title strong{font-size:22px;color:var(--red)}.sv-read-pair{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:14px 0}.sv-read-pair>div{display:flex;flex-direction:column}.sv-read-pair small{font-size:12px;color:var(--muted)}.sv-read-pair strong{font-size:23px;line-height:1.4;letter-spacing:-.025em}.sv-read-pair span{font-size:12px;color:var(--muted)}.sv-read-total{display:flex;justify-content:space-between;gap:10px;align-items:center;border-top:1px solid var(--line);padding-top:11px}.sv-read-total span{font-size:13px;color:var(--muted)}.sv-read-total strong{font-size:19px;text-align:right}
@media(max-width:850px){.mast-inner{flex-direction:column;align-items:stretch;gap:14px;min-height:auto;padding-top:15px;padding-bottom:10px}.nav{width:100%;overflow:auto;scrollbar-width:thin}.nav-list{flex-wrap:nowrap;gap:18px;width:max-content;padding-bottom:4px}.nav>a{display:inline-block;margin-right:18px;margin-bottom:4px}.hero-inner{min-height:315px}.hero-seal{width:126px;height:126px}.hero-seal span{font-size:50px}.quick{grid-template-columns:repeat(2,minmax(0,1fr))}.grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.container{padding-left:16px;padding-right:16px}.mast-inner{padding-top:12px}.brand strong{font-size:17px}.brand-mark{width:39px;height:39px}.nav{margin:0 -16px;width:calc(100% + 32px);padding:0 16px 7px}.nav-list a,.nav>a{font-size:13px}.hero-inner{padding-top:32px;padding-bottom:36px;min-height:0;display:block}.hero h1{font-size:40px}.hero-seal{display:none}.lead{font-size:16px}.quick a{padding:16px;min-height:126px}.quick strong{font-size:15px}.section{padding:24px 0}.section-head{align-items:start}.section-head h2{font-size:26px}.grid{grid-template-columns:1fr;gap:10px}.card{padding:19px}.content{margin:15px 0 22px;padding:18px}.content h1{font-size:30px}.site-footer{margin-top:24px}.sv-electric-head{display:block}.sv-electric-head form{margin-top:15px}.sv-stat-strip{gap:8px;margin:14px 0}.sv-stat-strip>div{padding:12px}.sv-stat-strip small{font-size:11px}.sv-stat-strip strong{font-size:20px}.sv-desktop-grid{display:none}.sv-mobile-grid{display:block}.sv-common-list{grid-template-columns:1fr}.sv-more{display:inline-flex;width:100%}}


/* 2.1.0: закрепленная шапка при прокрутке (desktop/mobile) */
.mast {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    z-index: 1100;
    background: var(--white);
    box-shadow: 0 3px 14px rgba(36, 42, 38, .07);
}

/* В административном режиме учитываем панель WordPress. */
body.admin-bar .mast { top: 32px; }

/* Якорные ссылки не должны уводить заголовки под закрепленную шапку. */
html { scroll-padding-top: 108px; }

@media (max-width: 850px) {
    html { scroll-padding-top: 135px; }
}
@media (max-width: 782px) {
    body.admin-bar .mast { top: 46px; }
}
@media (max-width: 600px) {
    /* На узких экранах WP admin bar не закреплена к окну. */
    body.admin-bar .mast { top: 0; }
}
