/*
Theme Name: dds_blogsiteslist.com
Theme URI: https://blogsiteslist.com/
Author: Алексей Рябинин
Description: Тема информационного портала с чек-листами документов для сделок с квартирами. Стилистика папки-регистратора: корешок-скоросшиватель, бумага-манила, штампы и закладки.
Version: 1.1
Requires at least: 6.0
Requires PHP: 8.0
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: bsldocs
*/

/* ---------- Шрифты ---------- */
@font-face{font-family:"Oswald";font-style:normal;font-weight:500;font-display:swap;src:url(fonts/oswald-cyrillic-500-normal.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Oswald";font-style:normal;font-weight:500;font-display:swap;src:url(fonts/oswald-latin-500-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Oswald";font-style:normal;font-weight:600;font-display:swap;src:url(fonts/oswald-cyrillic-600-normal.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Oswald";font-style:normal;font-weight:600;font-display:swap;src:url(fonts/oswald-latin-600-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Oswald";font-style:normal;font-weight:700;font-display:swap;src:url(fonts/oswald-cyrillic-700-normal.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Oswald";font-style:normal;font-weight:700;font-display:swap;src:url(fonts/oswald-latin-700-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Roboto Slab";font-style:normal;font-weight:400;font-display:swap;src:url(fonts/roboto-slab-cyrillic-400-normal.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Roboto Slab";font-style:normal;font-weight:400;font-display:swap;src:url(fonts/roboto-slab-latin-400-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Roboto Slab";font-style:normal;font-weight:700;font-display:swap;src:url(fonts/roboto-slab-cyrillic-700-normal.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Roboto Slab";font-style:normal;font-weight:700;font-display:swap;src:url(fonts/roboto-slab-latin-700-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Roboto Condensed";font-style:normal;font-weight:400;font-display:swap;src:url(fonts/roboto-condensed-cyrillic-400-normal.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Roboto Condensed";font-style:normal;font-weight:400;font-display:swap;src:url(fonts/roboto-condensed-latin-400-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Roboto Condensed";font-style:normal;font-weight:700;font-display:swap;src:url(fonts/roboto-condensed-cyrillic-700-normal.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Roboto Condensed";font-style:normal;font-weight:700;font-display:swap;src:url(fonts/roboto-condensed-latin-700-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

/* ---------- Палитра ---------- */
:root{
    --desk:#14202B;
    --desk-line:rgba(237,230,214,.045);
    --desk-panel:#222C36;
    --ivory:#F2E9D8;
    --manila:#E8DFC9;
    --manila-grid:#B9AE93;
    --paper:#FAF6EE;
    --green:#2F6D5B;
    --green-deep:#245647;
    --bordo:#6E2231;
    --yellow:#E3B341;
    --brown:#6B5446;
    --ink:#1C1A17;
    --muted:#7A6F5C;
    --light:#EDE6D6;
    --light-dim:#B9B2A2;
    --graphite:#2B3036;
    --font-head:"Oswald","Arial Narrow","Roboto Condensed",sans-serif;
    --font-ui:"Roboto Condensed","Arial Narrow",Arial,sans-serif;
    --font-text:"Roboto Slab",Rockwell,Georgia,"Times New Roman",serif;
    --spine:130px;
}

/* Скрытые через [hidden] элементы — до основных стилей */
.cookie-banner[hidden]{display:none !important}

/* ---------- База ---------- */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{
    margin:0;
    overflow-x:hidden;
    background-color:var(--desk);
    background-image:
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 .05 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E"),
        linear-gradient(var(--desk-line) 1px,transparent 1px),
        linear-gradient(90deg,var(--desk-line) 1px,transparent 1px);
    background-size:160px 160px,24px 24px,24px 24px;
    color:var(--light);
    font-family:var(--font-text);
    font-size:1rem;
    line-height:1.65;
}
img,svg{max-width:100%}
img{height:auto}
a{color:var(--yellow);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;transition:color .15s}
a:hover{color:#F1CB6E}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--yellow);outline-offset:2px}
p{margin:0 0 1em}
h1,h2,h3,h4,h5,h6{font-family:var(--font-head);font-weight:600;line-height:1.15;margin:1.4em 0 .55em;letter-spacing:.02em}
p,li,h1,h2,h3,h4,h5,h6,td,th,dd,dt,blockquote,figcaption{overflow-wrap:break-word;hyphens:auto}
.screen-reader-text{position:absolute !important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}
.skip-link{position:absolute;left:-9999px;top:0;z-index:100;background:var(--yellow);color:var(--ink);padding:.6rem 1rem;font-family:var(--font-ui);font-weight:700}
.skip-link:focus{left:1rem;top:1rem}

/* ---------- Корешок-скоросшиватель и контейнер ---------- */
.binder{position:relative;padding-left:var(--spine);min-height:100vh}
.binder::before{
    content:"";
    position:absolute;top:0;bottom:0;left:0;
    width:var(--spine);
    background:#296D56 url(images/spine-tile.webp) repeat-y 0 18px;
    background-size:var(--spine) calc(var(--spine) * .97);
    box-shadow:inset -6px 0 10px rgba(0,0,0,.25),3px 0 0 rgba(0,0,0,.35);
    z-index:2;
}
.shell{width:min(92%,1180px);margin-inline:auto}
.shell--front{width:min(85%,1180px)}

/* ---------- Кнопки ---------- */
.btn{
    display:inline-block;
    position:relative;
    background:var(--green);
    color:#fff;
    font-family:var(--font-ui);
    font-weight:700;
    font-size:1rem;
    line-height:1.2;
    letter-spacing:.02em;
    text-decoration:none;
    padding:.75rem 1.4rem .8rem;
    border:0;
    border-radius:0;
    box-shadow:0 5px 0 var(--yellow);
    cursor:pointer;
    transition:transform .12s,box-shadow .12s,background-color .12s;
    max-width:100%;
}
.btn:hover{color:#fff;background:var(--green-deep);transform:translateY(2px);box-shadow:0 3px 0 var(--yellow)}
.btn:active{transform:translateY(5px);box-shadow:0 0 0 var(--yellow)}
.btn--big{font-size:1.18rem;padding:.9rem 1.7rem 1rem;box-shadow:6px 6px 0 var(--yellow)}
.btn--big:hover{box-shadow:4px 4px 0 var(--yellow);transform:translate(2px,2px)}
.btn--small{font-size:.88rem;padding:.48rem .9rem .52rem;box-shadow:0 4px 0 var(--yellow)}

/* ---------- Шапка ---------- */
.masthead{
    position:relative;
    background:var(--ivory);
    color:var(--ink);
    border-bottom:4px solid var(--green);
    margin:1.6rem 1.6rem 0 0;
    box-shadow:0 -6px 0 -2px #E4D9C2,0 -11px 0 -5px #D8CCB2;
}
.masthead-inner{display:flex;align-items:center;justify-content:space-between;gap:1.5rem 2.5rem;padding:1.4rem 0 1.2rem;flex-wrap:wrap}
.brand{display:flex;align-items:center;gap:1.1rem;min-width:0;flex:1 1 440px}
.brand-mark{flex:0 0 auto;display:block;line-height:0}
.brand-stamp{display:block;width:72px;height:72px;filter:drop-shadow(0 1px 0 rgba(0,0,0,.15))}
.brand-logo{display:block;max-width:96px;max-height:96px;width:auto;height:auto}
.brand-text{min-width:0}
.brand-name{
    display:block;
    font-family:var(--font-head);
    font-weight:600;
    text-transform:uppercase;
    letter-spacing:.03em;
    font-size:clamp(1rem,1.35vw,1.28rem);
    line-height:1.18;
    color:var(--ink);
    text-decoration:none;
    max-width:46ch;
}
.brand-name:hover{color:var(--green)}
.brand-desc{margin:.45rem 0 0;font-family:var(--font-ui);font-size:.88rem;line-height:1.4;color:var(--muted);max-width:68ch}
.site-nav{flex:0 1 auto;min-width:0}
.nav-list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.2rem 1.6rem}
.nav-list a{
    display:inline-block;
    font-family:var(--font-ui);
    font-size:1.08rem;
    color:var(--ink);
    text-decoration:none;
    padding:.3rem 0;
    border-bottom:2px solid transparent;
    transition:border-color .15s,color .15s;
}
.nav-list a:hover{color:var(--green);border-bottom-color:var(--yellow)}
.nav-list .current-menu-item > a,.nav-list .current_page_item > a{color:var(--green);border-bottom-color:var(--green)}
.nav-toggle{display:none}

/* ---------- Главная: hero ---------- */
.front{padding-bottom:3.5rem}
.fs-hero{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);
    align-items:center;
    gap:2.5rem;
    padding:3.4rem 0 2.6rem;
}
.fs-hero-text{min-width:0}
.fs-hero-title{
    font-family:var(--font-head);
    font-weight:600;
    text-transform:uppercase;
    font-size:clamp(2.6rem,5.2vw,5.1rem);
    line-height:1.02;
    letter-spacing:.015em;
    color:var(--light);
    margin:0 0 1.6rem;
    text-shadow:0 3px 0 rgba(0,0,0,.25);
    hyphens:manual;
}
.fs-hero-lead{hyphens:manual;font-size:1.08rem;color:var(--light);max-width:32em;margin-bottom:2rem;opacity:.92}
.fs-hero-art{position:relative;min-width:0;margin-right:-7%;container-type:inline-size}
.fs-hero-art img{display:block;width:100%;height:auto;filter:drop-shadow(0 14px 18px rgba(0,0,0,.35))}
.fs-hero-seal{
    position:absolute;
    left:83.8%;top:72.9%;
    transform:translate(-50%,-50%) rotate(-8.5deg);
    font-family:var(--font-head);
    font-weight:700;
    text-transform:uppercase;
    font-size:2.55cqw;
    letter-spacing:.05em;
    color:var(--bordo);
    line-height:1;
    white-space:nowrap;
    pointer-events:none;
    opacity:.92;
}

/* ---------- Блок 1: чек-лист покупателя ---------- */
.fs-check{
    position:relative;
    display:grid;
    grid-template-columns:minmax(0,1.9fr) minmax(0,1fr);
    background:var(--manila);
    color:var(--ink);
    padding:2.3rem 2.4rem 2.4rem;
    margin:1.5rem 1.4rem 0 0;
    box-shadow:8px 8px 0 rgba(0,0,0,.28);
    scroll-margin-top:1.5rem;
}
.fs-check::after{
    content:"";
    position:absolute;right:-1.4rem;top:2.6rem;
    width:1.4rem;height:7.5rem;
    background:var(--yellow);
    clip-path:polygon(0 0,70% 6%,100% 14%,100% 86%,70% 94%,0 100%);
}
.fs-check-main{min-width:0;position:relative;z-index:1}
.fs-check-title{
    font-family:var(--font-head);font-weight:600;text-transform:uppercase;
    font-size:clamp(1.7rem,3vw,2.5rem);letter-spacing:.02em;margin:0 0 1rem;color:var(--ink);
}
.fs-check-table{list-style:none;margin:0;padding:0;border:1.5px solid #3A3529;background:rgba(250,246,238,.25)}
.fs-check-table li{
    display:grid;
    grid-template-columns:3rem 3.6rem minmax(0,1fr);
    align-items:stretch;
    border-top:1.5px solid #3A3529;
}
.fs-check-table li:first-child{border-top:0}
.fs-check-num,.fs-check-icon{display:flex;align-items:center;justify-content:center;border-right:1.5px solid #3A3529;font-family:var(--font-ui);font-size:1.2rem;font-weight:700}
.fs-check-icon svg{display:block;width:26px;height:26px;color:#3A3529}
.fs-check-doc{padding:.55rem 1rem .6rem;min-width:0}
.fs-check-doc strong{display:block;font-family:var(--font-ui);font-weight:700;font-size:1.14rem;line-height:1.25}
.fs-check-doc small{display:block;font-size:.84rem;line-height:1.45;color:var(--muted);margin-top:.15rem}
.fs-check-side{
    position:relative;min-width:0;
    margin:-2.3rem -2.4rem -2.4rem 1.6rem;
    padding:2.3rem 2rem 2rem;
    background-image:
        linear-gradient(rgba(185,174,147,.75) 1px,transparent 1px),
        linear-gradient(90deg,rgba(185,174,147,.75) 1px,transparent 1px);
    background-size:22px 22px;
    display:flex;flex-direction:column;justify-content:space-between;gap:1.5rem;
}
.fs-check-sticker{
    align-self:flex-end;
    background:var(--yellow);
    color:var(--ink);
    padding:1.1rem 1.4rem 1.2rem;
    text-align:center;
    transform:rotate(1.5deg);
    box-shadow:3px 4px 0 rgba(28,26,23,.18);
    max-width:15rem;
    margin-top:-1rem;
}
.fs-check-sticker-top{display:block;font-family:var(--font-head);font-weight:600;font-size:1.45rem;text-transform:uppercase;letter-spacing:.03em;line-height:1.1}
.fs-check-sticker-sub{display:block;font-family:var(--font-ui);font-size:.95rem;line-height:1.3;margin-top:.3rem}
.fs-check-note{font-size:.9rem;line-height:1.55;background:rgba(232,223,201,.92);padding:.9rem 1rem;border-left:4px solid var(--green);margin:0}
.fs-check-note a,.fs-latest-more a,.entry a:not(.btn),.sheet-intro a{color:var(--green)}
.fs-check-note a:hover{color:var(--bordo)}

/* ---------- Блок 2: сделка по шагам ---------- */
.fs-steps{padding:3rem 0 2.6rem}
.fs-steps-title{font-family:var(--font-head);font-weight:600;text-transform:uppercase;font-size:clamp(1.7rem,3vw,2.5rem);margin:0 0 1.5rem;color:var(--light)}
.fs-steps-line{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.8rem}
.fs-step{position:relative;min-width:0}
.fs-step-head{display:flex;align-items:flex-end;gap:.9rem;margin-bottom:.7rem}
.fs-step:not(:last-child) .fs-step-head::after{
    content:"";
    flex:1 1 1rem;
    align-self:center;
    margin-right:-1.4rem;
    border-top:2px dashed rgba(237,230,214,.45);
}
.fs-step-stamp{
    flex:0 0 auto;
    display:flex;align-items:center;justify-content:center;
    width:72px;height:72px;
    padding:5px;
    font-family:var(--font-head);font-weight:600;font-size:2rem;
    color:var(--light);
    background:var(--green);
    outline:3px solid var(--light);
    outline-offset:-10px;
    -webkit-mask:radial-gradient(circle 3px,transparent 94%,#000) -4.5px -4.5px / 9px 9px,linear-gradient(#000 0 0) content-box;
    mask:radial-gradient(circle 3px,transparent 94%,#000) -4.5px -4.5px / 9px 9px,linear-gradient(#000 0 0) content-box;
}
.fs-step-stamp--last{background:var(--brown)}
.fs-step-name{font-family:var(--font-ui);font-weight:700;font-size:1.3rem;line-height:1.1;color:var(--light);padding-bottom:.2rem}
.fs-step p{font-size:.9rem;line-height:1.5;color:var(--light-dim);margin:0}

/* ---------- Последние записи ---------- */
.fs-latest{
    background-color:var(--manila);
    background-image:
        linear-gradient(rgba(185,174,147,.28) 1px,transparent 1px),
        linear-gradient(90deg,rgba(185,174,147,.28) 1px,transparent 1px);
    background-size:28px 28px;
    color:var(--ink);
    padding:2.6rem 2.4rem 2.8rem;
    box-shadow:8px 8px 0 rgba(0,0,0,.28);
}
.stamp-title{text-align:center;margin:0 0 2.4rem}
.stamp-title span{
    display:inline-block;
    font-family:var(--font-head);font-weight:600;text-transform:uppercase;
    font-size:clamp(1.5rem,2.7vw,2.3rem);letter-spacing:.04em;
    color:var(--ink);
    padding:.35rem 1.4rem .45rem;
    border:2px solid var(--ink);
    outline:2px solid var(--ink);
    outline-offset:4px;
    line-height:1.15;
}
.fs-latest-more{text-align:center;margin:2.2rem 0 0;font-family:var(--font-ui);font-weight:700;font-size:1.05rem}
.empty-note{font-family:var(--font-ui);font-size:1.05rem;margin:0}
.fs-latest .empty-note{text-align:center}

/* ---------- Карточки ---------- */
.cards{display:grid;gap:2rem}
.cards--three{grid-template-columns:repeat(3,minmax(0,1fr))}
.cards--two{grid-template-columns:repeat(2,minmax(0,1fr))}
.card{
    position:relative;
    display:flex;
    flex-direction:column;
    min-width:0;
    background:var(--paper);
    color:var(--ink);
    border:1px solid var(--manila-grid);
    padding:1rem 1rem 1.1rem;
    box-shadow:6px 6px 0 -1px #F1EBDE,6px 6px 0 0 var(--manila-grid);
    transition:transform .15s,box-shadow .15s;
}
.card:hover{transform:translate(-2px,-3px);box-shadow:9px 9px 0 -1px #F1EBDE,9px 9px 0 0 var(--manila-grid)}
.card-tab{
    position:absolute;
    right:-15px;top:10px;
    width:15px;height:4.2rem;
    background:var(--yellow);
    clip-path:polygon(0 0,100% 10%,100% 90%,0 100%);
}
.card:nth-child(3n+2) .card-tab{background:var(--green)}
.card:nth-child(3n+3) .card-tab{background:var(--bordo)}
.card-thumb{display:block;overflow:hidden;border:1px solid rgba(185,174,147,.6)}
.card-img{display:block;width:100%;height:auto;aspect-ratio:12 / 5;object-fit:cover;transition:transform .35s}
.card:hover .card-img{transform:scale(1.04)}
.card-body{flex:1;display:flex;flex-direction:column;padding-top:.95rem;min-width:0}
.card-pin{align-self:flex-start;font-family:var(--font-ui);font-size:.74rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--bordo);border:1.5px solid var(--bordo);padding:.05rem .45rem;margin-bottom:.5rem}
.card-title{font-family:var(--font-ui);font-weight:700;font-size:1.28rem;line-height:1.2;letter-spacing:0;margin:0 0 .55rem}
.card-title a{color:var(--ink);text-decoration:none;background:linear-gradient(var(--yellow),var(--yellow)) 0 100% / 0 3px no-repeat;transition:background-size .2s}
.card-title a:hover{color:var(--ink);background-size:100% 3px}
.card-excerpt{font-size:.88rem;line-height:1.55;color:#3D372E;margin-bottom:1rem}
.card-excerpt p{margin:0 0 .5em;background:none}
.card-excerpt a{color:var(--green)}
.card-foot{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:.8rem;flex-wrap:wrap;padding-top:.7rem;border-top:1px dashed var(--manila-grid)}
.card-date{font-family:var(--font-ui);font-size:.9rem;color:var(--muted)}

/* ---------- Блоки 3 и 4 ---------- */
.fs-duo{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:2rem;margin-top:2.6rem}
.fs-shelf{background:var(--desk-panel);color:var(--light);padding:2.2rem 2.2rem 0;box-shadow:8px 8px 0 rgba(0,0,0,.28);min-width:0;display:flex;flex-direction:column}
.fs-shelf-title,.fs-law-title{font-family:var(--font-head);font-weight:600;text-transform:uppercase;font-size:clamp(1.6rem,2.6vw,2.3rem);letter-spacing:.02em;margin:0 0 1.5rem;color:var(--light)}
.fs-shelf-body{display:flex;align-items:flex-end;gap:1.6rem;flex:1 1 auto}
.fs-shelf-rack{list-style:none;margin:0;padding:0;display:flex;gap:.55rem;flex:1 1 auto;min-width:0;max-width:20rem;align-self:stretch}
.fs-shelf-rack li{flex:1 1 0;min-width:0;max-width:3.6rem;display:flex}
.fs-shelf-rack a{
    position:relative;
    display:block;
    flex:1 1 auto;width:100%;min-height:15rem;
    background:linear-gradient(90deg,#9C8762,#B9A27A 45%,#9A845F);
    border-top:3px solid #C9B48C;
    text-decoration:none;
    transition:transform .18s,background .18s;
}
.fs-shelf-rack a:hover{transform:translateY(-10px)}
.fs-shelf-rack span{
    position:absolute;
    top:1.1rem;bottom:1.1rem;left:18%;right:18%;
    writing-mode:vertical-rl;
    transform:rotate(180deg);
    background:#F4EEE2;
    color:var(--ink);
    font-family:var(--font-ui);
    font-size:1.15rem;
    text-align:start;
    padding:.6rem 0;
    line-height:1;
    display:flex;align-items:center;
    border-radius:2px;
    white-space:nowrap;
    overflow:hidden;
}
.fs-shelf-count{flex:0 0 auto;padding-bottom:2rem}
.fs-shelf-num{display:block;font-family:var(--font-head);font-weight:600;font-size:clamp(4.5rem,8vw,7rem);line-height:.9;color:var(--light)}
.fs-shelf-cap{display:block;font-family:var(--font-ui);font-size:1.2rem;line-height:1.25;color:var(--light);margin-top:.4rem}

.fs-law{
    position:relative;
    background:var(--bordo);
    color:var(--light);
    padding:2.2rem 2.2rem 2.2rem;
    box-shadow:8px 8px 0 rgba(0,0,0,.28);
    min-width:0;
    overflow:hidden;
}
.fs-law-lead{font-size:.92rem;color:rgba(237,230,214,.82);max-width:28em;margin:-.6rem 0 1.2rem}
.fs-law-feed{list-style:none;margin:0 6.5rem 1.4rem 0;padding:0}
.fs-law-feed li{display:grid;grid-template-columns:5.2rem minmax(0,1fr);gap:1rem;align-items:baseline;padding:.8rem 0;border-bottom:1px solid rgba(255,255,255,.55)}
.fs-law-code{font-family:var(--font-head);font-weight:500;font-size:1.3rem;color:#E8C9A4;letter-spacing:.02em;white-space:nowrap}
.fs-law-text{hyphens:manual;font-family:var(--font-ui);font-size:1.12rem;line-height:1.3}
.fs-law-link{position:relative;z-index:1;font-family:var(--font-ui);font-weight:700}
.fs-law-seal{
    position:absolute;
    right:1.6rem;top:50%;
    writing-mode:vertical-rl;
    transform:translateY(-50%) rotate(180deg);
    font-family:var(--font-head);font-weight:700;text-transform:uppercase;
    font-size:1.9rem;letter-spacing:.08em;
    color:rgba(20,10,12,.55);
    border:3px solid rgba(20,10,12,.5);
    outline:2px solid rgba(20,10,12,.4);
    outline-offset:3px;
    padding:.7rem .1rem .7rem .15rem;
    line-height:1.15;
    white-space:nowrap;
    pointer-events:none;
}

/* ---------- Внутренние страницы ---------- */
.inner{padding:1.6rem 0 4rem}
.crumbs{font-family:var(--font-ui);font-size:.95rem;color:var(--light-dim);margin:0 0 1.6rem;padding:.55rem 0;border-bottom:1px dashed rgba(237,230,214,.25)}
.crumbs a{color:var(--yellow)}
.crumbs-sep{margin:0 .35rem;color:var(--light-dim)}
.crumbs span:last-child{color:var(--light)}
.layout-with-sidebar{display:grid;grid-template-columns:minmax(0,67fr) minmax(0,27fr);column-gap:6%;align-items:start}
.layout-single{display:block}
.layout-single .content-area{width:85%;margin-left:auto;margin-right:auto}
.content-area{min-width:0}

.sheet-head{margin-bottom:1.8rem}
.content-area > .sheet-head{
    background:var(--ivory);
    color:var(--ink);
    padding:1.6rem 2rem 1.4rem;
    border-bottom:4px solid var(--green);
}
.sheet-title{font-family:var(--font-head);font-weight:600;text-transform:uppercase;font-size:clamp(1.8rem,3.4vw,2.8rem);letter-spacing:.02em;margin:0;color:var(--ink);line-height:1.1}
.sheet-intro{margin-top:.8rem;font-size:.98rem;color:#3D372E}
.sheet-intro p:last-child{margin-bottom:0}
.content-area > .cards{margin-top:.4rem}

.sheet{
    position:relative;
    background-color:var(--paper);
    background-image:linear-gradient(90deg,transparent 2.9rem,rgba(110,34,49,.28) 2.9rem,rgba(110,34,49,.28) calc(2.9rem + 1px),transparent calc(2.9rem + 1px));
    color:var(--ink);
    border:1px solid var(--manila-grid);
    padding:2.4rem 2.6rem 2.4rem 4rem;
    box-shadow:8px 8px 0 rgba(0,0,0,.3);
}
.sheet-tab{position:absolute;right:-16px;top:1.6rem;width:16px;height:5rem;background:var(--yellow);clip-path:polygon(0 0,100% 10%,100% 90%,0 100%)}
.sheet .sheet-head{padding-bottom:1.1rem;border-bottom:2px solid var(--ink);box-shadow:0 3px 0 var(--paper),0 5px 0 var(--ink)}
.sheet-meta{display:flex;flex-wrap:wrap;gap:.4rem 1.2rem;margin-top:.8rem;font-family:var(--font-ui);font-size:.95rem;color:var(--muted)}
.sheet-cat a{color:var(--green);font-weight:700;text-decoration:none;border-bottom:2px solid var(--yellow)}
.sheet-cover{margin:0 0 1.8rem}
.sheet-cover img{display:block;width:100%;height:auto;border:1px solid var(--manila-grid)}
.sheet-tags{margin:2rem 0 0;display:flex;flex-wrap:wrap;gap:.5rem;font-family:var(--font-ui)}
.sheet-tags a{text-decoration:none;background:var(--manila);color:var(--ink);padding:.2rem .65rem;border:1px solid var(--manila-grid)}
.sheet-tags a:hover{background:var(--yellow)}

/* Контент записи */
.entry{font-size:1.02rem;line-height:1.75;color:var(--ink)}
.entry > *:first-child{margin-top:0}
.entry h2{font-size:1.75rem;text-transform:uppercase;letter-spacing:.03em;margin-top:1.8em;padding-left:.8rem;border-left:6px solid var(--green)}
.entry h3{font-size:1.38rem;margin-top:1.6em}
.entry h4{font-size:1.15rem}
.entry ul,.entry ol{margin:0 0 1.2em;padding-left:1.5em}
.entry li{margin-bottom:.35em}
.entry ul{list-style:none;padding-left:0}
.entry ul > li{position:relative;padding-left:1.8rem}
.entry ul > li::before{content:"";position:absolute;left:0;top:.42em;width:.95rem;height:.95rem;border:2px solid var(--green);background:linear-gradient(45deg,transparent 45%,var(--green) 45% 60%,transparent 60%)}
.entry ol li::marker{font-family:var(--font-ui);font-weight:700;color:var(--green)}
.entry blockquote{
    margin:1.8em 0;
    padding:1.4rem 1.6rem 1.4rem 1.8rem;
    background:var(--manila);
    border-left:6px solid var(--bordo);
    font-style:normal;
    color:var(--ink);
}
.entry blockquote p:last-child{margin-bottom:0}
.entry blockquote cite{display:block;margin-top:.6rem;font-family:var(--font-ui);font-size:.92rem;color:var(--muted);font-style:normal}
.entry table{width:100%;border-collapse:collapse;margin:1.6em 0;font-size:.94rem;border:2px solid #3A3529}
.entry th,.entry td{border:1px solid #3A3529;padding:.6rem .8rem;text-align:left;vertical-align:top}
.entry th{background:var(--manila);font-family:var(--font-ui);font-weight:700}
.entry tr:nth-child(even) td{background:rgba(232,223,201,.35)}
.entry img{display:block;height:auto}
.entry figure{margin:1.6em 0}
.entry figcaption{font-family:var(--font-ui);font-size:.88rem;color:var(--muted);margin-top:.5rem}
.entry pre{background:var(--desk);color:var(--light);padding:1rem 1.2rem;overflow-x:auto;font-size:.9rem}
.entry code{font-size:.92em;background:var(--manila);padding:.05em .3em}
.entry pre code{background:none;padding:0}
.entry hr{border:0;border-top:2px dashed var(--manila-grid);margin:2em 0}
.entry .alignleft{float:left;margin:.3em 1.5em 1em 0}
.entry .alignright{float:right;margin:.3em 0 1em 1.5em}
.entry .aligncenter{margin-left:auto;margin-right:auto}
.wp-caption{max-width:100%}

/* ---------- Сайдбар и виджеты ---------- */
.sidebar{min-width:0;display:flex;flex-direction:column;gap:1.8rem}
.sidebar .wgt{
    position:relative;
    background:var(--ivory);
    color:var(--ink);
    padding:1.4rem 1.5rem 1.3rem;
    border-top:6px solid var(--green);
    box-shadow:6px 6px 0 rgba(0,0,0,.3);
}
.sidebar .wgt::before{content:"";position:absolute;left:1.5rem;top:-6px;width:3.2rem;height:6px;background:var(--yellow)}
.sidebar .wgt-title{font-family:var(--font-head);font-weight:600;text-transform:uppercase;font-size:1.25rem;letter-spacing:.04em;color:var(--ink);margin:0 0 .9rem;padding-bottom:.5rem;border-bottom:2px solid var(--ink)}
.sidebar .wgt,.sidebar .wgt p,.sidebar .wgt li{color:var(--ink)}
.sidebar .wgt a{color:var(--green);text-decoration:none}
.sidebar .wgt a:hover{color:var(--bordo);text-decoration:underline}
.sidebar .wgt ul{list-style:none;margin:0;padding:0}
.sidebar .wgt li{font-family:var(--font-ui);font-size:1rem;line-height:1.35;padding:.55rem 0 .55rem 1.4rem;border-bottom:1px dashed var(--manila-grid);position:relative}
.sidebar .wgt li:last-child{border-bottom:0}
.sidebar .wgt li::before{content:"";position:absolute;left:0;top:.85rem;width:.6rem;height:.6rem;border:2px solid var(--green)}
.sidebar .wgt .post-date,.sidebar .wgt .rss-date{display:block;color:var(--muted);font-size:.85rem}
.sidebar .search-form{flex-wrap:wrap}

/* ---------- Поиск ---------- */
.search-form{display:flex;gap:.6rem;margin:1.2rem 0}
.search-field{
    flex:1 1 12rem;min-width:0;
    font-family:var(--font-ui);font-size:1rem;
    padding:.7rem .9rem;
    background:#fff;color:var(--ink);
    border:2px solid var(--ink);border-radius:0;
}
.search-submit{flex:0 0 auto}

/* ---------- Пагинация ---------- */
.pager{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin:2.6rem 0 0;font-family:var(--font-ui)}
.pager .page-numbers{
    display:inline-flex;align-items:center;justify-content:center;
    min-width:2.7rem;height:2.7rem;padding:0 .8rem;
    background:var(--ivory);color:var(--ink);
    border:1.5px solid var(--ink);
    font-size:1.02rem;font-weight:700;text-decoration:none;
    transition:background-color .15s,transform .15s;
}
.pager a.page-numbers:hover{background:var(--yellow);color:var(--ink);transform:translateY(-2px)}
.pager .page-numbers.current{background:var(--green);color:#fff;border-color:var(--green);box-shadow:0 4px 0 var(--yellow)}
.pager .page-numbers.dots{background:none;border:0;color:var(--light-dim);min-width:1.5rem;padding:0}
.pager--inline{margin:1.6rem 0 0}
.pager--inline .post-page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:2.4rem;height:2.4rem;border:1.5px solid var(--ink);color:var(--ink);text-decoration:none;font-weight:700}
.pager--inline .post-page-numbers.current{background:var(--green);color:#fff;border-color:var(--green)}

/* ---------- Комментарии ---------- */
.discussion{margin-top:2.6rem;background:var(--manila);color:var(--ink);padding:2rem 2.2rem;box-shadow:8px 8px 0 rgba(0,0,0,.28)}
.discussion-title,.comment-reply-title{font-family:var(--font-head);font-weight:600;text-transform:uppercase;font-size:1.5rem;letter-spacing:.03em;margin:0 0 1.2rem;color:var(--ink)}
.comment-reply-title small{display:block;font-family:var(--font-ui);font-size:.9rem;text-transform:none;letter-spacing:0;margin-top:.3rem}
.comment-reply-title small a{color:var(--bordo)}
.note-list,.note-list .children{list-style:none;margin:0;padding:0}
.note-list .children{margin-left:2rem;border-left:2px dashed var(--manila-grid);padding-left:1.2rem}
.note-body{background:var(--paper);border:1px solid var(--manila-grid);padding:1rem 1.2rem;margin-bottom:1rem}
.note-head{display:flex;align-items:center;gap:.8rem;margin-bottom:.6rem}
.note-head img{display:block;border:2px solid var(--green)}
.note-author{display:block;font-family:var(--font-ui);font-weight:700;font-size:1.05rem}
.note-date{display:block;font-family:var(--font-ui);font-size:.85rem;color:var(--muted)}
.note-wait{font-family:var(--font-ui);color:var(--bordo);font-size:.9rem}
.note-text{font-size:.95rem}
.note-text p:last-child{margin-bottom:0}
.note-reply a{font-family:var(--font-ui);font-weight:700;font-size:.9rem;color:var(--green)}
.note-closed{font-family:var(--font-ui);color:var(--muted)}
.comment-respond{margin-top:1.4rem}
.comment-form p{margin:0 0 1rem}
.comment-form label{display:block;font-family:var(--font-ui);font-weight:700;margin-bottom:.3rem}
.comment-form input[type=text],.comment-form input[type=email],.comment-form input[type=url],.comment-form textarea{
    width:100%;font-family:var(--font-text);font-size:1rem;padding:.65rem .8rem;background:#fff;color:var(--ink);border:2px solid var(--ink);border-radius:0;
}
.comment-form .comment-form-cookies-consent{display:flex;gap:.5rem;align-items:flex-start}
.comment-form .comment-form-cookies-consent label{font-weight:400;font-size:.9rem;margin:0}
.comment-notes,.logged-in-as{font-family:var(--font-ui);font-size:.92rem;color:var(--muted)}
.logged-in-as a,.must-log-in a{color:var(--green)}
.req{color:var(--bordo)}
.form-submit .submit{
    background:var(--green);color:#fff;border:0;border-radius:0;cursor:pointer;
    font-family:var(--font-ui);font-weight:700;font-size:1rem;padding:.75rem 1.4rem .8rem;
    box-shadow:0 5px 0 var(--yellow);transition:transform .12s,box-shadow .12s;
}
.form-submit .submit:hover{transform:translateY(2px);box-shadow:0 3px 0 var(--yellow)}
.comment-navigation .nav-links{display:flex;justify-content:space-between;gap:1rem;font-family:var(--font-ui);margin:1rem 0}
.comment-navigation a{color:var(--green)}

/* ---------- 404 ---------- */
.sheet--404{text-align:left}
.nf-seal{
    display:inline-block;
    font-family:var(--font-head);font-weight:700;font-size:clamp(4rem,10vw,7rem);line-height:1;
    color:var(--bordo);border:4px solid var(--bordo);outline:2px solid var(--bordo);outline-offset:5px;
    padding:.1rem 1.4rem .25rem;margin:0 0 1.8rem;transform:rotate(-4deg);opacity:.9;
}
.nf-text{max-width:36em}
.nf-home{margin-top:1.6rem}
.nf-home .btn,.nf-home .btn:hover{color:#fff}
.empty-block{background:var(--ivory);color:var(--ink);padding:1.6rem 2rem}

/* ---------- Подвал ---------- */
.colophon{
    background-color:var(--graphite);
    background-image:linear-gradient(rgba(255,255,255,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px);
    background-size:24px 24px;
    color:var(--light);
    margin-top:2rem;
    padding:3rem 0 2rem;
    border-top:4px solid var(--green);
}
.colophon-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2.4rem}
.colophon-col{min-width:0}
.colophon .wgt{margin-bottom:1.4rem;color:var(--light)}
.colophon .wgt-title{font-family:var(--font-head);font-weight:600;text-transform:uppercase;font-size:1.45rem;letter-spacing:.03em;color:var(--light);margin:0 0 .7rem}
.colophon .wgt p,.colophon .wgt li,.colophon .textwidget{color:var(--light);font-size:.95rem;line-height:1.6}
.colophon .wgt a{color:var(--light);text-decoration:underline;text-decoration-color:rgba(237,230,214,.6)}
.colophon .wgt a:hover{color:var(--yellow);text-decoration-color:var(--yellow)}
.colophon .wgt ul{list-style:none;margin:0;padding:0}
.colophon .wgt li{font-family:var(--font-ui);font-size:1.02rem;padding:.2rem 0}
.colophon .wgt .post-date{color:var(--light-dim)}
.copyright{
    margin:2rem 0 0;padding-top:1.3rem;
    border-top:1px dashed rgba(237,230,214,.25);
    font-family:var(--font-ui);font-size:.92rem;color:var(--light-dim);
}

/* ---------- Cookie-баннер ---------- */
.cookie-banner{
    position:fixed;left:0;right:0;bottom:0;z-index:50;
    background:var(--ivory);color:var(--ink);
    border-top:4px solid var(--green);
    box-shadow:0 -6px 0 rgba(0,0,0,.25);
}
.cookie-inner{width:min(92%,1180px);margin-inline:auto;display:flex;align-items:center;justify-content:space-between;gap:1rem 2rem;padding:1rem 0 1.25rem}
.cookie-text{margin:0;font-family:var(--font-ui);font-size:.98rem;line-height:1.45;min-width:0}
.cookie-accept{flex:0 0 auto}

/* ---------- Адаптив ---------- */
@media (max-width:1200px){
    :root{--spine:96px}
}
@media (max-width:960px){
    :root{--spine:56px}
    .masthead{margin-right:0}
    .masthead-inner{align-items:flex-start}
    .brand{flex:1 1 0}
    .nav-toggle{
        display:inline-flex;align-items:center;gap:.6rem;
        background:var(--green);color:#fff;border:0;border-radius:0;
        font-family:var(--font-ui);font-weight:700;font-size:1rem;
        padding:.6rem .9rem;cursor:pointer;box-shadow:0 4px 0 var(--yellow);
        flex:0 0 auto;
    }
    .nav-toggle-bars,.nav-toggle-bars::before,.nav-toggle-bars::after{display:block;width:20px;height:2px;background:#fff;position:relative}
    .nav-toggle-bars::before,.nav-toggle-bars::after{content:"";position:absolute;left:0}
    .nav-toggle-bars::before{top:-6px}
    .nav-toggle-bars::after{top:6px}
    .nav-toggle[aria-expanded="true"] .nav-toggle-bars{background:transparent}
    .nav-toggle[aria-expanded="true"] .nav-toggle-bars::before{top:0;transform:rotate(45deg)}
    .nav-toggle[aria-expanded="true"] .nav-toggle-bars::after{top:0;transform:rotate(-45deg)}
    .site-nav{display:none;flex:1 1 100%}
    .site-nav.is-open{display:block}
    .nav-list{flex-direction:column;gap:0;border-top:2px solid var(--ink)}
    .nav-list a{display:block;padding:.75rem 0;border-bottom:1px dashed var(--manila-grid)}
    .nav-list .current-menu-item > a{border-bottom-color:var(--green)}

    .fs-hero{grid-template-columns:minmax(0,1fr);padding-top:2.4rem}
    .fs-hero-art{margin-right:0}
    .fs-check{grid-template-columns:minmax(0,1fr);margin-right:1.1rem}
    .fs-check-side{margin:1.6rem -2.4rem -2.4rem;padding:1.8rem 2rem}
    .fs-check-sticker{align-self:flex-start;margin-top:0}
    .fs-steps-line{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:2rem}
    .fs-step:not(:last-child) .fs-step-head::after{display:none}
    .cards--three{grid-template-columns:repeat(2,minmax(0,1fr))}
    .fs-duo{grid-template-columns:minmax(0,1fr)}
    .layout-with-sidebar{grid-template-columns:minmax(0,1fr);row-gap:2.6rem}
    .layout-single .content-area{width:100%}
    .colophon-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:600px){
    :root{--spine:30px}
    .binder::before{box-shadow:inset -3px 0 5px rgba(0,0,0,.25),2px 0 0 rgba(0,0,0,.35)}
    .shell,.shell--front{width:calc(100% - 2rem)}
    .masthead{margin-top:.8rem}
    .brand{gap:.7rem}
    .brand-stamp{width:52px;height:52px}
    .brand-name{font-size:.95rem}
    .brand-desc{font-size:.8rem}
    .nav-toggle-label{display:none}
    .fs-hero{gap:1.6rem;padding-bottom:1.6rem}
    .fs-hero-title{font-size:2.5rem}
    .fs-hero-lead{font-size:1rem}
    .fs-check{padding:1.6rem 1.3rem 1.6rem;margin-right:.9rem}
    .fs-check::after{right:-.9rem;width:.9rem;height:5rem}
    .fs-check-side{margin:1.4rem -1.3rem -1.6rem;padding:1.4rem 1.3rem}
    .fs-check-table li{grid-template-columns:2.3rem 2.6rem minmax(0,1fr)}
    .fs-check-num{font-size:1rem}
    .fs-check-doc{padding:.5rem .7rem}
    .fs-check-doc strong{font-size:1.02rem}
    .fs-steps{padding:2.4rem 0 2rem}
    .fs-steps-line{grid-template-columns:minmax(0,1fr)}
    .fs-step-stamp{width:63px;height:63px;font-size:1.7rem}
    .fs-latest{padding:1.8rem 1.3rem 2rem}
    .cards--three,.cards--two{grid-template-columns:minmax(0,1fr)}
    .card-tab{right:-10px;width:10px}
    .fs-shelf{padding:1.6rem 1.3rem 0}
    .fs-shelf-body{flex-direction:column;align-items:flex-start;gap:1rem}
    .fs-shelf-rack{gap:.4rem;width:100%}
    .fs-shelf-rack li{flex:1 1 0;min-width:0}
    .fs-shelf-rack{align-self:auto;max-width:none}
    .fs-shelf-rack a{min-height:11.5rem}
    .fs-shelf-rack span{font-size:.98rem;top:.8rem;bottom:.8rem;left:14%;right:14%}
    .fs-shelf-count{padding-bottom:1.6rem}
    .fs-law{padding:1.6rem 1.3rem}
    .fs-law-feed{margin-right:3.4rem}
    .fs-law-feed li{grid-template-columns:minmax(0,1fr);gap:.2rem}
    .fs-law-seal{font-size:1.25rem;right:.9rem}
    .content-area > .sheet-head{padding:1.3rem 1.3rem 1.1rem}
    .sheet{padding:1.6rem 1.3rem 1.6rem 2.2rem;background-image:linear-gradient(90deg,transparent 1.3rem,rgba(110,34,49,.28) 1.3rem,rgba(110,34,49,.28) calc(1.3rem + 1px),transparent calc(1.3rem + 1px))}
    .sheet-tab{right:-10px;width:10px}
    .discussion{padding:1.4rem 1.3rem}
    .note-list .children{margin-left:.6rem;padding-left:.7rem}
    .empty-block{padding:1.3rem}
    .colophon-grid{grid-template-columns:minmax(0,1fr);gap:1rem}
    .cookie-inner{flex-direction:column;align-items:flex-start;padding:.9rem 0 1.1rem}
    .entry .alignleft,.entry .alignright{float:none;margin:1em 0}
    .entry table{display:block;overflow-x:auto}
    .search-form{flex-wrap:wrap}
}
