/*
Theme Name: dds_zibamakeupstudio.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: zbplan
*/

/* ===== Шрифты ===== */
@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+0304,U+0308,U+0329,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+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"IBM Plex Sans";font-style:normal;font-weight:400;font-display:swap;src:url("fonts/ibm-plex-sans-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:"IBM Plex Sans";font-style:normal;font-weight:400;font-display:swap;src:url("fonts/ibm-plex-sans-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+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"IBM Plex Sans";font-style:italic;font-weight:400;font-display:swap;src:url("fonts/ibm-plex-sans-cyrillic-400-italic.woff2") format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"IBM Plex Sans";font-style:italic;font-weight:400;font-display:swap;src:url("fonts/ibm-plex-sans-latin-400-italic.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"IBM Plex Sans";font-style:normal;font-weight:600;font-display:swap;src:url("fonts/ibm-plex-sans-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:"IBM Plex Sans";font-style:normal;font-weight:600;font-display:swap;src:url("fonts/ibm-plex-sans-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+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

/* ===== Переменные ===== */
:root{
    --graph:#2B2F33;
    --graph-2:#353A3F;
    --graph-line:#4A5157;
    --white:#FFFFFF;
    --mm:#E8EDF0;
    --kalka:#F4F1EA;
    --grid:#CBD6DC;
    --copper:#C4713B;
    --copper-dk:#9E5526;
    --copper-lt:#E3A27A;
    --sage:#7D8F7B;
    --sage-dk:#5E6E5C;
    --muted:#7A858C;
    --muted-dk:#5B656C;
    --on-dark:#D9DEE1;
    --f-head:"Oswald","Arial Narrow","Roboto Condensed",Arial,sans-serif;
    --f-text:"IBM Plex Sans","Segoe UI",Roboto,Arial,sans-serif;
    --arrow-l:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='14'%3E%3Cpath d='M.75 0v14' stroke='%23C4713B' stroke-width='1.5'/%3E%3Cpath d='M1.5 7 12 2.5v9z' fill='%23C4713B'/%3E%3C/svg%3E");
    --arrow-r:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='14'%3E%3Cpath d='M11.25 0v14' stroke='%23C4713B' stroke-width='1.5'/%3E%3Cpath d='M10.5 7 0 2.5v9z' fill='%23C4713B'/%3E%3C/svg%3E");
    --arrow-u:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='12'%3E%3Cpath d='M0 .75h14' stroke='%23C4713B' stroke-width='1.5'/%3E%3Cpath d='M7 1.5 2.5 12h9z' fill='%23C4713B'/%3E%3C/svg%3E");
    --arrow-d:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='12'%3E%3Cpath d='M0 11.25h14' stroke='%23C4713B' stroke-width='1.5'/%3E%3Cpath d='M7 10.5 2.5 0h9z' fill='%23C4713B'/%3E%3C/svg%3E");
}

/* ===== Скрытие по атрибуту hidden (до основных стилей) ===== */
.cookie-banner[hidden]{display:none !important}

/* ===== База ===== */
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none !important}}
body{
    margin:0;
    overflow-x:hidden;
    font-family:var(--f-text);
    font-size:1.0625rem;
    line-height:1.65;
    color:var(--graph);
    background-color:var(--mm);
    background-image:
        linear-gradient(var(--grid) 1px,transparent 1px),
        linear-gradient(90deg,var(--grid) 1px,transparent 1px),
        linear-gradient(rgba(203,214,220,.45) 1px,transparent 1px),
        linear-gradient(90deg,rgba(203,214,220,.45) 1px,transparent 1px);
    background-size:100px 100px,100px 100px,20px 20px,20px 20px;
}
img{max-width:100%;height:auto}
p{margin:0 0 1em}
h1,h2,h3,h4,h5,h6{font-family:var(--f-head);font-weight:600;line-height:1.15;margin:1.6em 0 .6em;color:var(--graph);overflow-wrap:break-word;hyphens:manual}
h1{font-size:clamp(1.9rem,4vw,2.8rem);text-transform:uppercase;letter-spacing:.01em}
h2{font-size:clamp(1.5rem,3vw,2rem)}
h3{font-size:1.35rem}
h4{font-size:1.15rem}
p,li,td,th,dd,dt,blockquote,figcaption{overflow-wrap:break-word;hyphens:auto}
a{color:var(--graph);text-decoration:underline;text-decoration-thickness:1px;text-decoration-color:var(--copper);text-underline-offset:3px;transition:color .15s,text-decoration-color .15s}
a:hover{color:var(--copper-dk);text-decoration-color:var(--copper-dk)}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--copper);outline-offset:2px}
table{width:100%;border-collapse:collapse;margin:0 0 1.4em;border:1px solid var(--graph)}
th,td{border:1px solid var(--graph);padding:.55rem .75rem;text-align:start;vertical-align:top}
th{font-family:var(--f-head);font-weight:500;text-transform:uppercase;letter-spacing:.04em;font-size:.9rem;background:rgba(203,214,220,.45)}
hr{border:0;border-top:1px dashed var(--muted);margin:2rem 0}
code,kbd,pre{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:.92em}
pre{background:var(--white);border:1px solid var(--grid);padding:1rem;overflow:auto}

.screen-reader-text{position:absolute !important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link{position:absolute;left:-9999px;top:0;z-index:100;background:var(--graph);color:var(--white);padding:.6rem 1rem}
.skip-link:focus{left:1rem;top:1rem}

.shell{width:min(92%,1180px);margin-left:auto;margin-right:auto}
.shell--front{width:min(85%,1240px)}

/* ===== Кнопки ===== */
.zb-btn{
    display:inline-flex;align-items:center;justify-content:center;gap:.4rem;
    padding:.6rem 1.3rem;
    font-family:var(--f-head);font-weight:500;font-size:1rem;line-height:1.2;letter-spacing:.05em;text-transform:uppercase;
    color:var(--white);background:var(--copper);
    border:1px solid var(--copper);border-radius:0;
    outline:1px solid var(--copper);outline-offset:3px;
    text-decoration:none;cursor:pointer;
    transition:background .15s,color .15s,transform .15s;
}
.zb-btn:hover{background:transparent;color:var(--copper-dk);transform:translate(1px,1px)}
.zb-btn:focus-visible{outline:2px solid var(--graph);outline-offset:3px}
.zb-btn--sm{padding:.45rem 1rem;font-size:.92rem}
.zb-link-arrow{font-family:var(--f-head);font-weight:500;text-transform:uppercase;letter-spacing:.04em;text-decoration:none;border-bottom:1px solid var(--copper);padding-bottom:2px}
.zb-link-arrow::after{content:" →";color:var(--copper)}

/* ===== Шапка ===== */
.zb-head{
    background-color:var(--kalka);
    background-image:linear-gradient(rgba(203,214,220,.35) 1px,transparent 1px),linear-gradient(90deg,rgba(203,214,220,.35) 1px,transparent 1px);
    background-size:20px 20px;
    border-bottom:1px solid var(--grid);
    padding:1.6rem 0 1rem;
}
.zb-head__row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1.5rem 2.5rem}
.zb-brand{display:flex;align-items:center;gap:clamp(1rem,2.5vw,2.2rem);text-decoration:none;color:var(--graph);min-width:0}
.zb-brand:hover{color:var(--graph)}
.zb-brand__logo{flex:0 0 auto;display:block}
.zb-brand__mark{display:block;width:clamp(64px,9vw,128px);height:auto}
.zb-brand__logo .brand-logo{display:block;max-height:120px;width:auto}
.zb-brand__text{display:flex;flex-direction:column;gap:.55rem;min-width:0}
.zb-brand__name{font-family:var(--f-head);font-weight:600;text-transform:uppercase;font-size:clamp(1.3rem,2.7vw,2.45rem);line-height:1.08;letter-spacing:.005em;max-width:31ch;overflow-wrap:break-word;hyphens:manual}
.zb-brand__desc{font-size:.86rem;line-height:1.5;color:var(--muted-dk);max-width:72ch}

.zb-nav__list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.4rem 2.2rem}
.zb-nav__list a{display:inline-block;padding:.3rem 0;font-family:var(--f-text);font-weight:600;font-size:.98rem;color:var(--graph);text-decoration:none;border-bottom:3px solid transparent}
.zb-nav__list a:hover{color:var(--copper-dk);border-bottom-color:var(--grid)}
.zb-nav__list .current-menu-item>a,.zb-nav__list .current_page_item>a{border-bottom-color:var(--copper)}
.zb-burger{display:none;align-items:center;gap:.6rem;background:transparent;border:1px solid var(--graph);padding:.5rem .8rem;font-family:var(--f-head);font-size:.95rem;text-transform:uppercase;letter-spacing:.05em;color:var(--graph);cursor:pointer}
.zb-burger__bars,.zb-burger__bars::before,.zb-burger__bars::after{display:block;width:20px;height:2px;background:var(--graph);position:relative}
.zb-burger__bars::before,.zb-burger__bars::after{content:"";position:absolute;left:0}
.zb-burger__bars::before{top:-6px}
.zb-burger__bars::after{top:6px}

.zb-dimline{position:relative;height:14px;margin-top:1.4rem;background:var(--arrow-l) left center/12px 14px no-repeat,var(--arrow-r) right center/12px 14px no-repeat}
.zb-dimline::before{content:"";position:absolute;left:10px;right:10px;top:50%;border-top:1.5px solid var(--copper)}

/* ===== Хлебные крошки ===== */
.breadcrumbs{margin:1.6rem 0 1.4rem;font-size:.9rem;color:var(--muted-dk)}
.breadcrumbs a{color:var(--graph)}
.breadcrumbs .sep{color:var(--copper);margin:0 .25rem}
.breadcrumbs span:last-child{color:var(--muted-dk)}

/* ===== Раскладки ===== */
.zb-main{display:block;padding-bottom:4rem}
.layout-with-sidebar{display:grid;grid-template-columns:minmax(0,67%) minmax(0,27%);justify-content:space-between;align-items:start}
.layout-single{display:block}
.layout-single .content-area{width:85%;margin-left:auto;margin-right:auto}
.content-area{min-width:0}

/* ===== Заголовки секций ===== */
.fs{padding:clamp(2.5rem,5vw,4rem) 0;border-top:1px solid var(--grid)}
.fs:first-child{border-top:0}
.fs-head{display:flex;align-items:center;flex-wrap:wrap;gap:.6rem 1rem;margin:0 0 1.8rem;font-family:var(--f-head);font-weight:600;font-size:clamp(1.25rem,2.2vw,1.7rem);text-transform:uppercase;letter-spacing:.02em;line-height:1.15}
.fs-head__num{display:inline-flex;align-items:center;gap:1rem;color:var(--graph)}
.fs-head__num::after{content:"";display:block;width:34px;border-top:2px solid var(--copper)}
.fs-head__txt{min-width:0}
.fs-head--light,.fs-head--light .fs-head__num{color:var(--white)}
.fs-kicker{font-family:var(--f-head);font-weight:500;text-transform:uppercase;letter-spacing:.06em;color:var(--sage-dk);margin:0 0 1rem}
.fs-kicker--line{display:flex;align-items:center;gap:.9rem}
.fs-kicker--line::before,.fs-kicker--line::after{content:"";height:1px;background:var(--copper);flex:0 0 40px}
.fs-kicker--line::after{flex:1 1 auto;background:repeating-linear-gradient(90deg,var(--copper) 0 8px,transparent 8px 14px)}

/* ===== 01 План ===== */
.fs-plan__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,310px);gap:clamp(1.5rem,3.5vw,3rem);align-items:start}
.zb-plan{margin:0;display:grid;grid-template-columns:30px minmax(0,1fr);grid-template-areas:". top" "side sheet" ". bottom" ". cap";column-gap:10px;row-gap:8px;min-width:0}
.zb-plan__sheet{grid-area:sheet;position:relative;min-width:0}
.zb-plan__sheet img{display:block;width:100%;height:auto}
.zb-plan__dim{position:relative;color:var(--copper-dk);font-family:var(--f-head);font-weight:500;font-size:.98rem}
.zb-plan__dim span{position:absolute;background:var(--mm);padding:0 .45rem;line-height:1.3;white-space:nowrap}
.zb-plan__dim--top,.zb-plan__dim--bottom{height:24px;background:var(--arrow-l) left center/12px 14px no-repeat,var(--arrow-r) right center/12px 14px no-repeat}
.zb-plan__dim--top::before,.zb-plan__dim--bottom::before{content:"";position:absolute;left:10px;right:10px;top:50%;border-top:1.5px solid var(--copper)}
.zb-plan__dim--top span,.zb-plan__dim--bottom span{left:50%;top:50%;transform:translate(-50%,-50%)}
.zb-plan__dim--top{grid-area:top}
.zb-plan__dim--bottom{grid-area:bottom;margin-left:64.8%}
.zb-plan__dim--side{grid-area:side;width:24px;background:var(--arrow-u) center top/14px 12px no-repeat,var(--arrow-d) center bottom/14px 12px no-repeat}
.zb-plan__dim--side::before{content:"";position:absolute;top:10px;bottom:10px;left:50%;border-left:1.5px solid var(--copper)}
.zb-plan__dim--side span{left:50%;top:50%;transform:translate(-50%,-50%) rotate(-90deg)}
.zb-plan__cap{grid-area:cap;font-size:.88rem;color:var(--muted-dk);font-style:italic;margin-top:.3rem}
.zb-zone{position:absolute;left:var(--x);top:var(--y);transform:translate(-50%,-50%);font-family:var(--f-head);font-weight:500;font-size:clamp(.55rem,1.25vw,1.02rem);line-height:1;color:var(--copper-dk);white-space:nowrap;pointer-events:none}

.fs-plan__aside{min-width:0;display:flex;flex-direction:column;gap:1.4rem}
.zb-notes{list-style:none;margin:0;padding:0;display:grid;gap:.55rem}
.zb-notes li{position:relative;padding:.45rem .7rem .55rem 1.1rem;font-size:.98rem;line-height:1.4;background:linear-gradient(90deg,rgba(203,214,220,.55),rgba(203,214,220,0) 85%);border-left:5px solid #9AA6AD}
.zb-notes li::after{content:"";position:absolute;left:0;right:0;bottom:0;border-bottom:2px solid rgba(154,166,173,.45)}
.zb-aside-text{font-size:.95rem;margin:0;color:var(--graph-2)}
.zb-photo{margin:.4rem .4rem 0;padding:10px;background:var(--white);border:1px solid var(--copper);transform:rotate(-1.8deg);box-shadow:0 3px 0 rgba(43,47,51,.12)}
.zb-photo img{display:block;width:100%;aspect-ratio:1020/792;object-fit:cover}

/* ===== 02 Стена ===== */
.zb-wall{position:relative;max-width:1060px}
.zb-wall__fig{position:relative;margin:0 250px 0 200px}
.zb-wall__fig img{display:block;width:100%;height:auto;border:1px solid var(--graph);background:var(--white)}
.zb-wall__callout{position:absolute;left:0;top:63.7%;transform:translateY(-50%);width:165px;margin:0;padding:.75rem .95rem;background:var(--sage);color:var(--white);font-size:.95rem;line-height:1.35;z-index:2;hyphens:manual}
.zb-wall__callout::after{content:"";position:absolute;left:100%;top:50%;width:70px;border-top:1.5px solid var(--copper)}
.zb-wall__callout::before{content:"";position:absolute;left:calc(100% + 66px);top:50%;width:9px;height:9px;margin-top:-4px;border-radius:50%;background:var(--copper);z-index:3}
.zb-layers{position:absolute;top:0;bottom:0;left:100%;width:250px;list-style:none;margin:0;padding:0}
.zb-layers li{position:absolute;left:0;top:var(--y);transform:translateY(-50%);padding-left:62px;font-weight:600;font-size:.95rem;line-height:1.25;white-space:nowrap}
.zb-layers li::before{content:"";position:absolute;left:-22px;top:50%;width:78px;border-top:1.5px solid var(--copper)}
.zb-layers li::after{content:"";position:absolute;left:-26px;top:50%;width:9px;height:9px;margin-top:-4px;border-radius:50%;background:var(--copper)}
.zb-wall__note{max-width:760px;margin:1.8rem 0 0 200px;font-size:.98rem}
.zb-wall__motto{font-family:var(--f-head);font-weight:500;font-size:1.15rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted-dk);display:flex;align-items:center;gap:.8rem;margin-bottom:.7rem}
.zb-wall__motto::before{content:"";width:28px;border-top:2px solid var(--copper)}

/* ===== 03 Записи и карточки ===== */
.fs-latest{background:rgba(244,241,234,.88);border:1px solid var(--grid);padding:clamp(2rem,4vw,2.8rem) clamp(1.2rem,3vw,2.4rem);margin:clamp(1.5rem,3vw,2.5rem) 0}
.fs-latest__more{margin:2.2rem 0 0;text-align:end}
.cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,270px),1fr));gap:2rem 1.8rem}
.card{position:relative;display:flex;flex-direction:column;min-width:0;overflow:hidden;background:var(--kalka);border:1px solid var(--graph);padding:14px;transition:transform .2s,border-color .2s}
.fs-latest .cards-grid:has(>.card:nth-child(4)){grid-template-columns:repeat(auto-fill,minmax(min(100%,215px),1fr))}
.cards-grid>.card:nth-child(3n+1){transform:rotate(-1.2deg)}
.cards-grid>.card:nth-child(3n+2){transform:rotate(.9deg)}
.cards-grid>.card:nth-child(3n){transform:rotate(-.6deg)}
.cards-grid>.card:hover{transform:rotate(0) translateY(-3px);border-color:var(--copper)}
.card::before{content:"";position:absolute;top:5px;right:5px;width:10px;height:10px;border-top:1.5px solid var(--copper);border-right:1.5px solid var(--copper)}
.card-thumb{border:1px solid var(--copper);background:var(--white);padding:3px}
.card-thumb a{display:block}
.card-thumb img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}
.card-body{flex:1;display:flex;flex-direction:column;padding:1.1rem .25rem .2rem;min-width:0}
.card-flag{align-self:flex-start;font-family:var(--f-head);font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;color:var(--white);background:var(--sage);padding:.15rem .5rem;margin-bottom:.6rem}
.card-title{margin:0 0 .6rem;font-size:1.3rem;text-transform:uppercase;line-height:1.2}
.card-title a{text-decoration:none;color:var(--graph)}
.card-title a:hover{color:var(--copper-dk)}
.card-excerpt{font-size:.95rem;line-height:1.55;color:var(--graph-2)}
.card-excerpt p{margin:0 0 .5em;background:none}
.card-foot{margin-top:auto;padding-top:.8rem;display:flex;flex-direction:column;align-items:flex-start;gap:.8rem}
.card-date{font-family:var(--f-head);font-weight:500;font-size:1rem;color:var(--muted-dk)}
.zb-empty{padding:1.4rem 1.6rem;border:1px dashed var(--muted);background:rgba(244,241,234,.8);margin:0}

/* ===== 04 Чек-лист ===== */
.fs-check__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,470px);gap:clamp(1.5rem,4vw,3.5rem);align-items:center}
.fs-check__intro{background:rgba(244,241,234,.9);border:1px solid var(--grid);padding:1.8rem 2rem;min-width:0}
.zb-stamp{max-width:440px;margin:1.4rem 0 1.2rem;background:var(--white);font-size:.92rem}
.zb-stamp th,.zb-stamp td{padding:.4rem .6rem}
.zb-stamp th{font-size:.78rem;width:22%}
.zb-legend{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem .6rem;margin:0;font-size:.88rem;color:var(--muted-dk)}
.zb-legend .zb-box{background:var(--grid)}
.zb-legend .zb-box:nth-of-type(2){margin-left:.8rem}
.zb-plate{background:var(--graph);color:var(--white);padding:2.1rem 2.3rem 2.3rem;min-width:0;position:relative}
.zb-plate::before{content:"";position:absolute;inset:8px;border:1px solid var(--graph-line);pointer-events:none}
.zb-plate .fs-head{margin-bottom:1.5rem;font-size:clamp(1.15rem,2vw,1.5rem)}
.zb-checklist{list-style:none;margin:0;padding:0;display:grid;gap:1.05rem;position:relative}
.zb-checklist li{display:flex;align-items:center;gap:1rem;font-size:1.02rem;line-height:1.35;color:var(--on-dark)}
.zb-checklist li.is-on{color:var(--white)}
.zb-box{position:relative;display:inline-block;flex:0 0 22px;width:22px;height:22px;background:#C9D0D4;vertical-align:middle}
.zb-box--on::after{content:"";position:absolute;left:7px;top:-4px;width:9px;height:19px;border-right:3.5px solid var(--copper);border-bottom:3.5px solid var(--copper);transform:rotate(40deg)}

/* ===== 05 Материалы ===== */
.zb-samples{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:1.6rem 1.4rem}
.zb-samples li{display:flex;flex-direction:column;align-items:center;text-align:center;min-width:0}
.zb-samples img{display:block;width:100%;height:auto;aspect-ratio:1/1;object-fit:cover;border:6px solid var(--kalka);outline:1px solid var(--graph);margin-bottom:.9rem;transition:transform .2s}
.zb-samples li:hover img{transform:translateY(-3px) rotate(-1deg)}
.zb-samples b{font-weight:600;font-size:1rem}
.zb-samples span{hyphens:manual;font-size:.84rem;line-height:1.4;color:var(--muted-dk);margin-top:.25rem}

/* ===== Страницы и записи ===== */
.zb-pagehead{margin-bottom:2rem}
.zb-pagehead__title{margin:0 0 .6rem;display:flex;align-items:center;gap:1rem}
.zb-pagehead__title::before{content:"";flex:0 0 34px;border-top:3px solid var(--copper)}
.zb-pagehead__lead{color:var(--graph-2);max-width:70ch}
.zb-sheet{background:var(--kalka);border:1px solid var(--graph);padding:clamp(1.3rem,3.5vw,2.6rem);position:relative}
.zb-sheet::after{content:"";position:absolute;top:6px;right:6px;width:12px;height:12px;border-top:1.5px solid var(--copper);border-right:1.5px solid var(--copper)}
.zb-entry__head{margin-bottom:1.4rem;padding-bottom:1rem;border-bottom:1px dashed var(--muted)}
.zb-entry__title{margin:0 0 .6rem}
.zb-entry__meta{display:flex;flex-wrap:wrap;gap:.4rem 1.2rem;font-family:var(--f-head);font-weight:500;color:var(--muted-dk)}
.zb-entry__cat a{color:var(--sage-dk)}
.zb-entry__thumb{margin:0 0 1.6rem;border:1px solid var(--copper);padding:4px;background:var(--white)}
.zb-entry__thumb img{display:block;width:100%;height:auto}
.zb-entry__content>*:first-child{margin-top:0}
.zb-entry__content h2{font-size:1.65rem;text-transform:uppercase;display:flex;align-items:center;gap:.8rem}
.zb-entry__content h2::before{content:"";flex:0 0 22px;border-top:2px solid var(--copper)}
.zb-entry__content ul,.zb-entry__content ol{padding-inline-start:1.4rem;margin:0 0 1.2em}
.zb-entry__content li{margin-bottom:.4em}
.zb-entry__content ul li::marker{color:var(--copper)}
.zb-entry__content ol li::marker{color:var(--copper-dk);font-family:var(--f-head);font-weight:600}
.zb-entry__content blockquote{margin:1.6em 0;padding:1.2rem 1.5rem;background:rgba(125,143,123,.14);border-left:4px solid var(--copper);font-style:italic}
.zb-entry__content blockquote p:last-child{margin-bottom:0}
.zb-entry__content figure{margin:1.6em 0}
.zb-entry__content figcaption{font-size:.88rem;color:var(--muted-dk);margin-top:.4rem}
.zb-entry__content img{display:block}
.zb-entry__content .wp-block-table{overflow-x:auto}
.zb-entry__content .alignleft{float:left;margin:0 1.4rem 1rem 0}
.zb-entry__content .alignright{float:right;margin:0 0 1rem 1.4rem}
.zb-entry__content .aligncenter{margin-left:auto;margin-right:auto}
.zb-entry__tags{margin:1.6rem 0 0;display:flex;flex-wrap:wrap;gap:.5rem}
.zb-entry__tags a{font-size:.88rem;text-decoration:none;border:1px solid var(--grid);background:var(--white);padding:.15rem .6rem}
.zb-entry__tags a:hover{border-color:var(--copper)}
.zb-postnav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem;margin:1.8rem 0}
.zb-postnav a{display:flex;flex-direction:column;gap:.25rem;padding:1rem 1.2rem;background:rgba(244,241,234,.9);border:1px solid var(--grid);text-decoration:none;font-weight:600}
.zb-postnav a:hover{border-color:var(--copper)}
.zb-postnav small{font-family:var(--f-head);font-weight:500;text-transform:uppercase;letter-spacing:.05em;color:var(--muted-dk);font-size:.8rem}
.zb-postnav__next{grid-column:2;text-align:end}

/* ===== Сайдбар и виджеты ===== */
.sidebar{min-width:0;background:var(--kalka);border:1px solid var(--graph);padding:1.6rem 1.5rem;color:var(--graph)}
.sidebar .zb-widget+.zb-widget{margin-top:2rem;padding-top:1.6rem;border-top:1px dashed var(--muted)}
.sidebar .zb-widget__title{margin:0 0 1rem;font-size:1.1rem;text-transform:uppercase;letter-spacing:.03em;color:var(--graph);display:flex;align-items:center;gap:.6rem}
.sidebar .zb-widget__title::before{content:"";flex:0 0 18px;border-top:2px solid var(--copper)}
.sidebar a{color:var(--graph)}
.sidebar a:hover{color:var(--copper-dk)}
.sidebar ul{list-style:none;margin:0;padding:0}
.sidebar li{position:relative;padding:.45rem 0 .45rem 1.1rem;border-bottom:1px solid rgba(203,214,220,.8);line-height:1.4;font-size:.95rem}
.sidebar li::before{content:"";position:absolute;left:0;top:.95em;width:6px;height:6px;background:var(--copper)}
.sidebar .post-date{display:block;font-size:.82rem;color:var(--muted-dk)}
.sidebar p{color:var(--graph-2)}

/* ===== Пагинация ===== */
.zb-pager{display:flex;flex-wrap:wrap;align-items:center;gap:.45rem;margin:2.6rem 0 0}
.zb-pager .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:2.5rem;height:2.5rem;padding:0 .75rem;font-family:var(--f-head);font-weight:500;font-size:1rem;color:var(--graph);background:var(--kalka);border:1px solid var(--graph);text-decoration:none}
.zb-pager a.page-numbers:hover{border-color:var(--copper);color:var(--copper-dk)}
.zb-pager .page-numbers.current{background:var(--copper);border-color:var(--copper);color:var(--white)}
.zb-pager .page-numbers.dots{border:0;background:none;min-width:auto;padding:0 .2rem}
.zb-pager--inner{margin-top:1.6rem}
.zb-pager--inner a,.zb-pager--inner>span{display:inline-flex;align-items:center;justify-content:center;min-width:2.3rem;height:2.3rem;border:1px solid var(--graph);text-decoration:none}

/* ===== Поиск ===== */
.zb-search{display:flex;flex-wrap:wrap;gap:.6rem;margin:1.2rem 0}
.zb-search__field{flex:1 1 220px;min-width:0;padding:.65rem .85rem;font:inherit;font-size:1rem;color:var(--graph);background:var(--white);border:1px solid var(--graph);border-radius:0}
.zb-search__field::placeholder{color:var(--muted)}

/* ===== Комментарии ===== */
.zb-comments{margin-top:1.8rem}
.zb-comments__title{margin:0 0 1.2rem;font-size:1.4rem;text-transform:uppercase}
.zb-comments__list,.zb-comments__list .children{list-style:none;margin:0;padding:0}
.zb-comments__list .children{margin-left:clamp(1rem,4vw,2.5rem)}
.zb-comment__body{padding:1rem 0;border-bottom:1px dashed var(--muted)}
.zb-comment__head{display:flex;align-items:center;flex-wrap:wrap;gap:.4rem .8rem;margin-bottom:.5rem}
.zb-comment__ava{display:block;border:1px solid var(--copper)}
.zb-comment__author{font-weight:600}
.zb-comment__date{font-size:.85rem;color:var(--muted-dk)}
.zb-comment__wait{font-style:italic;color:var(--sage-dk)}
.zb-comment__reply a{font-size:.88rem;font-family:var(--f-head);text-transform:uppercase;letter-spacing:.04em}
.comment-respond{margin-top:1.6rem}
.comment-reply-title{font-size:1.3rem;text-transform:uppercase;margin:0 0 .8rem}
.comment-form label{display:block;font-weight:600;font-size:.92rem;margin-bottom:.3rem}
.comment-form input[type=text],.comment-form input[type=email],.comment-form input[type=url],.comment-form textarea{width:100%;padding:.6rem .8rem;font:inherit;font-size:1rem;color:var(--graph);background:var(--white);border:1px solid var(--graph);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;display:inline}
.comment-notes,.logged-in-as{font-size:.9rem;color:var(--muted-dk)}

/* ===== 404 ===== */
.zb-404{text-align:center}
.zb-404__code{font-family:var(--f-head);font-weight:600;font-size:clamp(5rem,16vw,9rem);line-height:1;margin:0;color:transparent;-webkit-text-stroke:2px var(--copper)}
.zb-404__title{margin:.4rem 0 1rem}
.zb-404 .zb-search{max-width:520px;margin-left:auto;margin-right:auto}

/* ===== Подвал ===== */
.zb-foot{background:var(--graph);color:var(--on-dark);padding:3.2rem 0 1.6rem;border-top:3px solid var(--copper)}
.zb-foot__cols{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem 3rem}
.zb-foot__col{min-width:0}
.zb-foot__col+.zb-foot__col{padding-left:2.4rem;border-left:1px solid var(--graph-line)}
.zb-foot .zb-widget+.zb-widget{margin-top:1.6rem}
.zb-foot .zb-widget__title{margin:0 0 .8rem;font-size:1.45rem;text-transform:uppercase;color:var(--white)}
.zb-foot p,.zb-foot .textwidget{color:var(--on-dark);font-size:.95rem}
.zb-foot a{color:var(--white);text-decoration-color:var(--copper-lt)}
.zb-foot a:hover{color:var(--copper-lt)}
.zb-foot ul{list-style:none;margin:0;padding:0}
.zb-foot li{padding:.25rem 0}
.zb-foot .post-date{color:#AEB7BC;font-size:.82rem;margin-left:.4rem}
.zb-foot__copy{margin:2.6rem 0 0;padding-top:1.4rem;border-top:1px solid var(--graph-line);text-align:center;font-size:.9rem;color:#AEB7BC}

/* ===== Cookie-баннер ===== */
.cookie-banner{position:fixed;left:16px;right:16px;bottom:16px;z-index:90;max-width:780px;margin-left:auto;margin-right:auto;display:flex;align-items:center;gap:1.2rem;padding:1.1rem 1.4rem;background:var(--graph);color:var(--on-dark);border:1px solid var(--copper);box-shadow:6px 6px 0 rgba(196,113,59,.35)}
.cookie-banner__text{margin:0;font-size:.9rem;line-height:1.5}
.cookie-banner a{color:var(--copper-lt)}
.cookie-banner__ok{flex:0 0 auto}

/* ===== Адаптив ===== */
@media (max-width:1100px){
    .zb-wall__fig{margin:0 220px 0 180px}
    .zb-wall__callout{width:150px}
    .zb-layers{width:220px}
    .zb-layers li{padding-left:56px;font-size:.9rem}
    .zb-wall__note{margin-left:180px}
    .zb-samples{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:960px){
    .zb-head__row{grid-template-columns:minmax(0,1fr);gap:1rem}
    .zb-burger{display:inline-flex;justify-self:start}
    .zb-nav{grid-column:1/-1;display:none}
    .zb-nav.is-open{display:block}
    .zb-nav__list{flex-direction:column;gap:0;border-top:1px solid var(--grid)}
    .zb-nav__list a{display:block;padding:.7rem 0;border-bottom:1px solid var(--grid)}
    .zb-nav__list .current-menu-item>a,.zb-nav__list .current_page_item>a{border-bottom-color:var(--copper)}

    .layout-with-sidebar{grid-template-columns:minmax(0,1fr);gap:2.5rem}
    .layout-single .content-area{width:100%}

    .fs-plan__grid{grid-template-columns:minmax(0,1fr)}
    .fs-plan__aside{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1.4rem;align-items:start}
    .fs-plan__aside .zb-photo{grid-column:2;grid-row:1/span 2}

    .zb-wall{max-width:none}
    .zb-wall__fig{margin:0}
    .zb-wall__callout{position:static;transform:none;width:auto;display:inline-block;margin:0 0 1rem}
    .zb-wall__callout::before,.zb-wall__callout::after{display:none}
    .zb-layers{position:static;width:auto;margin:1.2rem 0 0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,200px),1fr));gap:.5rem 1.2rem;counter-reset:layer}
    .zb-layers::before{content:"Слои сверху вниз";grid-column:1/-1;font-family:var(--f-head);text-transform:uppercase;letter-spacing:.05em;font-size:.85rem;color:var(--muted-dk)}
    .zb-layers li{position:static;transform:none;padding-left:0;white-space:normal;counter-increment:layer;display:flex;gap:.6rem}
    .zb-layers li::before{content:counter(layer);position:static;width:auto;border:0;font-family:var(--f-head);color:var(--copper-dk)}
    .zb-layers li::after{display:none}
    .zb-wall__note{margin-left:0}

    .fs-check__grid{grid-template-columns:minmax(0,1fr)}
    .zb-foot__cols{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
    .zb-foot__col:nth-child(3){grid-column:1/-1;padding-left:0;border-left:0;border-top:1px solid var(--graph-line);padding-top:1.6rem}
}
@media (max-width:600px){
    body{font-size:1rem}
    .shell--front{width:min(92%,1240px)}
    .zb-head{padding-top:1.1rem}
    .zb-brand{align-items:flex-start;gap:.9rem}
    .zb-brand__mark{width:56px}
    .zb-brand__name{font-size:1.2rem}
    .zb-brand__desc{font-size:.8rem;line-height:1.45}
    .fs{padding:2.2rem 0}
    .fs-latest{padding:1.8rem 1.1rem}
    .fs-plan__aside{grid-template-columns:minmax(0,1fr)}
    .fs-plan__aside .zb-photo{grid-column:auto;grid-row:auto}
    .zb-plan{grid-template-columns:22px minmax(0,1fr);column-gap:6px}
    .zb-plan__dim{font-size:.82rem}
    .zb-plan__dim--side{width:20px}
    .zb-plan__dim--bottom{margin-left:50%}
    .cards-grid>.card:nth-child(n){transform:none}
    .fs-check__intro{padding:1.3rem 1.2rem}
    .zb-plate{padding:1.7rem 1.4rem 1.8rem}
    .zb-samples{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.3rem 1rem}
    .zb-postnav{grid-template-columns:minmax(0,1fr)}
    .zb-postnav__next{grid-column:auto}
    .zb-foot__cols{grid-template-columns:minmax(0,1fr)}
    .zb-foot__col+.zb-foot__col{padding-left:0;border-left:0;border-top:1px solid var(--graph-line);padding-top:1.4rem}
    .cookie-banner{flex-direction:column;align-items:flex-start;padding:1rem 1.1rem}
    .zb-entry__content .alignleft,.zb-entry__content .alignright{float:none;margin:0 0 1rem}
}
