/*
Theme Name: dds_acelearningandconsulting.com
Theme URI: https://acelearningandconsulting.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: dealdesk
*/

/* ---------- Правила для [hidden] (до основных стилей) ---------- */
.dd-cookie[hidden] { display: none !important; }

/* ---------- Переменные ---------- */
:root {
    --navy: #12314F;
    --navy-deep: #0D2740;
    --paper: #F2EFE6;
    --paper-hi: #FAF8F2;
    --paper-2: #E8E2D2;
    --ink: #1B2430;
    --muted: #6E7C8C;
    --red: #B5372A;
    --red-dark: #8E2A20;
    --brass: #C2A24B;
    --grid: #2E5573;
    --line: #9FB0BF;
    --kraft: #D6BC8C;
    --kraft-dark: #B99B66;
    --soft: #C3CEDA;
    --dd-under: var(--paper);
    --f-head: "IBM Plex Sans Condensed", "Arial Narrow", "Roboto Condensed", Arial, sans-serif;
    --f-mono: "IBM Plex Mono", "PT Mono", "Courier New", monospace;
    --f-serif: "IBM Plex Serif", "PT Serif", Georgia, "Times New Roman", serif;
}

/* ---------- База ---------- */
*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }
body {
    margin: 0;
    overflow-x: hidden;
    color: var(--paper);
    font-family: var(--f-mono);
    font-size: 16px;
    line-height: 1.6;
    background-color: var(--navy);
    background-image:
        linear-gradient(rgba(46, 85, 115, .62) 1px, transparent 1px),
        linear-gradient(90deg, rgba(46, 85, 115, .62) 1px, transparent 1px),
        linear-gradient(rgba(46, 85, 115, .24) 1px, transparent 1px),
        linear-gradient(90deg, rgba(46, 85, 115, .24) 1px, transparent 1px);
    background-size: 64px 64px, 64px 64px, 16px 16px, 16px 16px;
    background-position: -1px -1px;
}
img { max-width: 100%; height: auto; }
a { color: inherit; }
p { margin: 0 0 1em; }
h1, h2, h3, h4, h5, h6 { margin: 0 0 .6em; line-height: 1.15; font-family: var(--f-head); font-weight: 700; }
p, li, dd, dt, h1, h2, h3, h4, td, th, blockquote, .card-title { overflow-wrap: break-word; hyphens: auto; }
:focus-visible { outline: 2px dashed var(--brass); outline-offset: 3px; }

.shell { width: min(85%, 1240px); margin-inline: auto; }

.dd-skip {
    position: absolute; left: 1rem; top: -100px; z-index: 100;
    background: var(--red); color: var(--paper); padding: .6rem 1rem; text-decoration: none;
}
.dd-skip:focus { top: 1rem; }

/* ---------- Кнопки: бланковая плашка с двойной рамкой ---------- */
.dd-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .5rem;
    padding: .62rem 1.25rem;
    background: var(--red);
    color: var(--paper);
    border: 1px solid var(--red);
    border-radius: 0;
    box-shadow: inset 0 0 0 2px var(--red), inset 0 0 0 3px rgba(242, 239, 230, .85);
    font-family: var(--f-mono);
    font-size: .86rem;
    font-weight: 600;
    letter-spacing: .03em;
    line-height: 1.3;
    text-decoration: none;
    text-align: center;
    cursor: pointer;
    transition: background-color .15s, transform .15s, box-shadow .15s;
}
.dd-btn:hover, .dd-btn:focus-visible {
    background: var(--red-dark);
    box-shadow: inset 0 0 0 2px var(--red-dark), inset 0 0 0 3px rgba(242, 239, 230, .85), 3px 3px 0 var(--ink);
    transform: translate(-2px, -2px);
}
.dd-btn:active { transform: translate(0, 0); box-shadow: inset 0 0 0 2px var(--red-dark), inset 0 0 0 3px rgba(242, 239, 230, .85); }
.dd-btn--sm { padding: .5rem 1rem; font-size: .8rem; }

/* ---------- Шапка ---------- */
.dd-head {
    position: relative;
    border-bottom: 4px solid var(--red);
    background: rgba(13, 39, 64, .55);
}
.dd-head__row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1.5rem 2.5rem;
    padding: 1.6rem 0 1.5rem;
    flex-wrap: wrap;
}
.dd-brand {
    display: flex;
    align-items: center;
    gap: 1.1rem;
    text-decoration: none;
    min-width: 0;
    flex: 1 1 420px;
}
.dd-brand__mark { flex: 0 0 auto; width: 92px; height: 92px; display: block; }
.dd-brand__seal, .dd-brand__logo { width: 100%; height: 100%; display: block; object-fit: contain; filter: drop-shadow(0 4px 6px rgba(0, 0, 0, .35)); }
.dd-brand__text { display: flex; flex-direction: column; gap: .35rem; min-width: 0; max-width: 38rem; }
.dd-brand__name {
    font-family: var(--f-head);
    font-weight: 700;
    font-size: clamp(1.15rem, 1.9vw, 1.6rem);
    line-height: 1.15;
    letter-spacing: .015em;
    color: var(--paper);
}
.dd-brand__desc { font-size: .8rem; line-height: 1.45; color: var(--soft); }

.dd-nav__list { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: .4rem 1.8rem; }
.dd-nav__list a {
    display: inline-block;
    padding: .3rem 0;
    color: var(--paper);
    text-decoration: none;
    font-size: .92rem;
    letter-spacing: .02em;
    background: linear-gradient(var(--red), var(--red)) left bottom / 0 2px no-repeat;
    transition: background-size .2s;
}
.dd-nav__list a:hover, .dd-nav__list a:focus-visible,
.dd-nav__list .current-menu-item > a, .dd-nav__list .current_page_item > a { background-size: 100% 2px; }

.dd-burger {
    display: none;
    align-items: center;
    gap: .6rem;
    padding: .55rem .9rem;
    background: transparent;
    color: var(--paper);
    border: 1px solid var(--line);
    box-shadow: inset 0 0 0 2px var(--navy), inset 0 0 0 3px rgba(159, 176, 191, .5);
    font-family: var(--f-mono);
    font-size: .85rem;
    cursor: pointer;
}
.dd-burger__bars, .dd-burger__bars::before, .dd-burger__bars::after {
    display: block; width: 18px; height: 2px; background: var(--paper); position: relative; content: "";
}
.dd-burger__bars::before { position: absolute; top: -6px; }
.dd-burger__bars::after { position: absolute; top: 6px; }

/* ---------- Главная: общие ---------- */
.fs { position: relative; }
.fs-big-title {
    font-size: clamp(2.1rem, 4.8vw, 3.5rem);
    letter-spacing: .03em;
    color: var(--paper);
    margin-bottom: 2rem;
}
.fs-big-title--ink { color: var(--ink); }

/* Блок 1 — разбор квартиры */
.fs-plan__sheet {
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr);
    gap: 3rem 4rem;
    align-items: center;
}
.fs-plan {
    margin-top: 2.2rem;
    padding: 5.2rem 0 5.6rem;
    background-color: var(--paper);
    background-image: radial-gradient(rgba(27, 36, 48, .035) 1px, transparent 1px);
    background-size: 5px 5px;
    color: var(--ink);
    clip-path: polygon(0.0% 35px,3.8% 39px,7.7% 37px,11.5% 32px,15.4% 32px,19.2% 31px,23.1% 31px,26.9% 30px,30.8% 24px,34.6% 22px,38.5% 27px,42.3% 23px,46.2% 24px,50.0% 17px,53.8% 19px,57.7% 19px,61.5% 15px,65.4% 18px,69.2% 17px,73.1% 9px,76.9% 8px,80.8% 10px,84.6% 12px,88.5% 7px,92.3% 4px,96.2% 4px,100.0% 0px,100.0% calc(100% - 42px),96.2% calc(100% - 42px),92.3% calc(100% - 41px),88.5% calc(100% - 38px),84.6% calc(100% - 36px),80.8% calc(100% - 35px),76.9% calc(100% - 35px),73.1% calc(100% - 33px),69.2% calc(100% - 30px),65.4% calc(100% - 34px),61.5% calc(100% - 31px),57.7% calc(100% - 30px),53.8% calc(100% - 26px),50.0% calc(100% - 30px),46.2% calc(100% - 28px),42.3% calc(100% - 21px),38.5% calc(100% - 21px),34.6% calc(100% - 23px),30.8% calc(100% - 21px),26.9% calc(100% - 22px),23.1% calc(100% - 17px),19.2% calc(100% - 18px),15.4% calc(100% - 16px),11.5% calc(100% - 12px),7.7% calc(100% - 13px),3.8% calc(100% - 13px),0.0% calc(100% - 12px));
}
.fs-plan__figure { min-width: 0; padding: 1.2rem 1rem 1.4rem 1.4rem; }
.fs-plan__frame {
    position: relative;
    transform: rotate(-4deg);
    background: var(--paper-hi);
    padding: .6rem;
    box-shadow: -14px 12px 0 -2px var(--kraft), -14px 12px 0 -1px var(--kraft-dark), 0 12px 22px rgba(18, 49, 79, .22);
}
.fs-plan__frame img { display: block; width: 100%; height: auto; aspect-ratio: 1410 / 981; object-fit: cover; }
.fs-plan__callout {
    position: absolute;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 2.3rem;
    padding: .18rem .55rem;
    background: var(--red);
    color: var(--paper);
    font-weight: 600;
    font-size: .85rem;
    box-shadow: inset 0 0 0 2px var(--red), inset 0 0 0 3px rgba(242, 239, 230, .7);
}
.fs-plan__callout--a { left: 82%; top: 27%; }
.fs-plan__callout--b { left: 10%; top: 56%; }
.fs-plan__text { min-width: 0; }
.fs-plan__title { font-size: clamp(2rem, 3.6vw, 3rem); color: var(--ink); letter-spacing: .02em; }
.fs-plan__lead { font-family: var(--f-serif); font-size: 1rem; color: #3A4655; max-width: 34rem; }
.fs-plan__list { margin: 1.2rem 0 0; padding: 0; list-style: none; counter-reset: dd-plan; }
.fs-plan__list li {
    counter-increment: dd-plan;
    position: relative;
    padding: .55rem 0 .55rem 2.4rem;
    border-bottom: 1px dashed rgba(110, 124, 140, .5);
}
.fs-plan__list li::before {
    content: counter(dd-plan) ".";
    position: absolute; left: 0; top: .55rem;
    font-weight: 600; color: var(--red);
}
.fs-plan__list strong { display: block; font-weight: 600; font-size: 1.04rem; color: var(--ink); }
.fs-plan__list span { display: block; font-size: .8rem; color: var(--muted); }

/* Блок 2 — этапы сделки */
.fs-stages { padding: 3.6rem 0 5rem; }
.fs-stages__track {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 1rem;
    position: relative;
}
.fs-stages__track::before {
    content: "";
    position: absolute;
    left: calc(100% / 12);
    right: calc(100% / 12);
    top: 49px;
    height: 2px;
    background: var(--brass);
    box-shadow: 0 1px 0 rgba(0, 0, 0, .25);
}
.fs-stage {
    --s: 78px;
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    min-width: 0;
}
.fs-stage--s { --s: 64px; }
.fs-stage--l { --s: 96px; }
.fs-stage__seal {
    display: block;
    width: var(--s);
    height: var(--s);
    margin: calc((100px - var(--s)) / 2) 0;
    position: relative;
    z-index: 1;
    filter: drop-shadow(0 5px 6px rgba(0, 0, 0, .4));
    transition: transform .25s;
}
.fs-stage:hover .fs-stage__seal { transform: rotate(-12deg) scale(1.05); }
.fs-stage__name { margin-top: .7rem; font-family: var(--f-head); font-weight: 600; font-size: 1.25rem; color: var(--paper); letter-spacing: .02em; }
.fs-stage__hint { margin-top: .2rem; font-size: .76rem; line-height: 1.4; color: var(--line); }
.fs-stage__note {
    margin-top: .5rem;
    padding: .55rem .7rem;
    font-size: .78rem;
    line-height: 1.45;
    color: var(--paper);
    border: 1px dashed rgba(181, 55, 42, .8);
    background: rgba(13, 39, 64, .6);
}
.fs-stage__note b { color: #E0675A; font-weight: 600; }
.fs-stage--alert::after {
    content: "";
    position: absolute;
    left: 4%;
    top: 46px;
    width: 34px;
    height: 74px;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 34 74'%3E%3Cpath d='M8 72 C2 50 4 22 26 8' fill='none' stroke='%23B5372A' stroke-width='2.2'/%3E%3Cpath d='M18 5 L28 6 L25 15' fill='none' stroke='%23B5372A' stroke-width='2.2'/%3E%3Crect x='4' y='66' width='8' height='8' fill='%23B5372A'/%3E%3C/svg%3E") no-repeat center / contain;
}


/* Последние записи */
.fs-latest {
    margin-top: .5rem;
    padding: 5rem 0 5.4rem;
    background-color: var(--paper);
    background-image: radial-gradient(rgba(27, 36, 48, .035) 1px, transparent 1px);
    background-size: 5px 5px;
    color: var(--ink);
    --dd-under: var(--paper);
    clip-path: polygon(0.0% 7px,3.8% 8px,7.7% 3px,11.5% 4px,15.4% 10px,19.2% 11px,23.1% 12px,26.9% 10px,30.8% 13px,34.6% 15px,38.5% 16px,42.3% 14px,46.2% 17px,50.0% 18px,53.8% 21px,57.7% 24px,61.5% 25px,65.4% 23px,69.2% 24px,73.1% 24px,76.9% 23px,80.8% 24px,84.6% 29px,88.5% 29px,92.3% 30px,96.2% 35px,100.0% 34px,100.0% calc(100% - 4px),96.2% calc(100% - 3px),92.3% calc(100% - 2px),88.5% calc(100% - 6px),84.6% calc(100% - 6px),80.8% calc(100% - 9px),76.9% calc(100% - 14px),73.1% calc(100% - 13px),69.2% calc(100% - 11px),65.4% calc(100% - 17px),61.5% calc(100% - 17px),57.7% calc(100% - 18px),53.8% calc(100% - 20px),50.0% calc(100% - 20px),46.2% calc(100% - 22px),42.3% calc(100% - 20px),38.5% calc(100% - 25px),34.6% calc(100% - 26px),30.8% calc(100% - 22px),26.9% calc(100% - 27px),23.1% calc(100% - 28px),19.2% calc(100% - 27px),15.4% calc(100% - 29px),11.5% calc(100% - 30px),7.7% calc(100% - 34px),3.8% calc(100% - 32px),0.0% calc(100% - 36px));
}
.dd-rule-title {
    display: flex;
    align-items: center;
    gap: 1.4rem;
    margin: 0 0 3rem;
    font-size: clamp(1.7rem, 3.4vw, 2.4rem);
    text-transform: uppercase;
    letter-spacing: .07em;
    color: var(--red);
}
.dd-rule-title::before, .dd-rule-title::after { content: ""; flex: 1 1 0; height: 2px; background: var(--red); min-width: 1.5rem; }
.dd-rule-title span { flex: 0 1 auto; text-align: center; }
.fs-latest__more { margin: 3rem 0 0; text-align: center; }
.dd-empty { font-size: .95rem; }
.fs-latest .dd-empty { text-align: center; color: var(--muted); }

/* Карточки записей — листы со скрепкой */
.dd-cards {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(min(100%, 250px), 1fr));
    gap: 2.6rem 2.2rem;
}
.dd-cards--three { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 2.6rem 3rem; }
.dd-cards--three > .card:nth-child(n+4) { display: none; }
.card {
    position: relative;
    display: flex;
    flex-direction: column;
    min-width: 0;
    background: var(--paper-hi);
    color: var(--ink);
    box-shadow: 7px 8px 0 -1px var(--kraft), 7px 8px 0 0 var(--kraft-dark), 0 14px 22px rgba(13, 39, 64, .28);
    transform: rotate(-1.3deg);
    transition: transform .25s, box-shadow .25s;
}
.card:nth-child(3n+2) { transform: rotate(1deg); }
.card:nth-child(3n) { transform: rotate(-.6deg); }
.card:hover, .card:focus-within {
    transform: rotate(0deg) translateY(-6px);
    box-shadow: 9px 11px 0 -1px var(--kraft), 9px 11px 0 0 var(--kraft-dark), 0 22px 30px rgba(13, 39, 64, .34);
}
.card::after {
    content: "";
    position: absolute;
    right: 0;
    bottom: 0;
    width: 30px;
    height: 30px;
    background: linear-gradient(315deg, var(--dd-under) 0 50%, #DED6C2 50% 100%);
    box-shadow: -3px -3px 5px rgba(27, 36, 48, .12);
}
.card-clip {
    position: absolute;
    left: 26px;
    top: -18px;
    width: 18px;
    height: 54px;
    z-index: 3;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 54'%3E%3Cpath d='M5 18 V44 a4 4 0 0 0 8 0 V8 a6 6 0 0 0 -12 0 V40' fill='none' stroke='%238C98A4' stroke-width='2.2' stroke-linecap='round'/%3E%3Cpath d='M5.6 18 V44' stroke='%23DDE3E8' stroke-width='.8'/%3E%3C/svg%3E") no-repeat center / contain;
    filter: drop-shadow(1px 2px 1px rgba(0, 0, 0, .25));
}
.card-thumb { position: relative; margin: 1.1rem 1.1rem 0; }
.card-thumb a { display: block; }
.card-thumb img {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 16 / 9;
    object-fit: cover;
    filter: saturate(.88) contrast(1.02);
}
.card-seal {
    position: absolute;
    right: 8px;
    bottom: -14px;
    max-width: 75%;
    padding: .25rem .6rem;
    border: 2px solid var(--red);
    box-shadow: inset 0 0 0 2px var(--paper-hi), inset 0 0 0 3px var(--red);
    background: rgba(250, 248, 242, .93);
    color: var(--red);
    font-size: .68rem;
    font-weight: 600;
    letter-spacing: .06em;
    text-transform: uppercase;
    line-height: 1.3;
    transform: rotate(-6deg);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.card-body {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: .55rem;
    padding: 1.3rem 1.3rem 1.6rem;
    min-width: 0;
}
.card-title { margin: 0; font-size: 1.24rem; font-weight: 600; line-height: 1.22; color: var(--ink); }
.card-title a { text-decoration: none; background: linear-gradient(var(--red), var(--red)) left 92% / 0 1px no-repeat; transition: background-size .2s; }
.card-title a:hover, .card-title a:focus-visible { background-size: 100% 1px; color: var(--red-dark); }
.card-excerpt { font-size: .82rem; line-height: 1.55; color: #3A4655; }
.card-excerpt p { margin: 0 0 0.5em; background: none; }
.card-date { font-size: .78rem; color: var(--muted); letter-spacing: .04em; }
.card-more { margin-top: auto; align-self: flex-start; }

/* Блок 3 — риски */
.fs-risks {
    margin-top: 1.6rem;
    padding: 5rem 0 9rem;
    background-color: var(--paper);
    background-image:
        linear-gradient(rgba(46, 85, 115, .2) 1px, transparent 1px),
        linear-gradient(90deg, rgba(46, 85, 115, .2) 1px, transparent 1px),
        linear-gradient(rgba(46, 85, 115, .08) 1px, transparent 1px),
        linear-gradient(90deg, rgba(46, 85, 115, .08) 1px, transparent 1px);
    background-size: 64px 64px, 64px 64px, 16px 16px, 16px 16px;
    color: var(--ink);
    clip-path: polygon(0.0% 28px,3.8% 29px,7.7% 27px,11.5% 28px,15.4% 27px,19.2% 22px,23.1% 21px,26.9% 26px,30.8% 21px,34.6% 20px,38.5% 25px,42.3% 20px,46.2% 22px,50.0% 18px,53.8% 19px,57.7% 14px,61.5% 17px,65.4% 18px,69.2% 14px,73.1% 15px,76.9% 14px,80.8% 9px,84.6% 13px,88.5% 11px,92.3% 8px,96.2% 5px,100.0% 10px,100.0% calc(100% - 29px),96.2% calc(100% - 30px),92.3% calc(100% - 30px),88.5% calc(100% - 28px),84.6% calc(100% - 29px),80.8% calc(100% - 25px),76.9% calc(100% - 27px),73.1% calc(100% - 23px),69.2% calc(100% - 26px),65.4% calc(100% - 25px),61.5% calc(100% - 18px),57.7% calc(100% - 18px),53.8% calc(100% - 17px),50.0% calc(100% - 22px),46.2% calc(100% - 17px),42.3% calc(100% - 18px),38.5% calc(100% - 15px),34.6% calc(100% - 15px),30.8% calc(100% - 13px),26.9% calc(100% - 12px),23.1% calc(100% - 13px),19.2% calc(100% - 12px),15.4% calc(100% - 14px),11.5% calc(100% - 11px),7.7% calc(100% - 12px),3.8% calc(100% - 11px),0.0% calc(100% - 11px));
}
.fs-risks__grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 3rem 4rem; align-items: start; }
.fs-risks__left { min-width: 0; }
.fs-risks__stamps { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; align-items: flex-start; gap: .55rem; }
.dd-stamp {
    display: inline-block;
    padding: .35rem 1rem .4rem;
    border: 3px solid var(--red);
    box-shadow: inset 0 0 0 2px rgba(242, 239, 230, .6), inset 0 0 0 3px var(--red);
    color: var(--red);
    font-family: var(--f-head);
    font-weight: 700;
    font-size: clamp(1.25rem, 2.3vw, 1.8rem);
    line-height: 1.2;
    letter-spacing: .03em;
    background: rgba(242, 239, 230, .55);
    opacity: .92;
    transition: transform .2s, opacity .2s;
}
.dd-stamp--r1 { transform: rotate(-9deg); margin-left: 0; }
.dd-stamp--r2 { transform: rotate(-1.5deg); margin-left: 34%; margin-top: -.4rem; }
.dd-stamp--r3 { transform: rotate(-7deg); margin-left: 4%; }
.dd-stamp--r4 { transform: rotate(-11deg); margin-left: 20%; margin-top: -.2rem; }
.dd-stamp:hover { opacity: 1; transform: rotate(0deg); }
.fs-risks__fact { min-width: 0; padding-top: 4.4rem; }
.fs-risks__num {
    margin: 0;
    font-family: var(--f-head);
    font-weight: 700;
    font-size: clamp(3.6rem, 7.5vw, 5.8rem);
    line-height: 1;
    color: var(--navy);
    letter-spacing: -.01em;
}
.fs-risks__caption { margin: .6rem 0 .3rem; font-size: .98rem; line-height: 1.45; color: var(--ink); max-width: 26rem; }
.fs-risks__accent { margin: 0 0 1.2rem; font-weight: 600; color: var(--red); text-transform: uppercase; letter-spacing: .08em; font-size: .85rem; }
.fs-risks__body { font-family: var(--f-serif); font-size: .95rem; color: #3A4655; max-width: 32rem; }

/* Блок 4 — аренда */
.fs-rent { padding: 3rem 0 6rem; z-index: 2; }
.fs-rent__grid { display: grid; grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr); gap: 3rem 4rem; align-items: start; }
.fs-rent__text { min-width: 0; padding-top: 1.5rem; }
.fs-rent__lead { font-family: var(--f-serif); color: var(--soft); max-width: 34rem; }
.fs-rent__qa { margin: 1.6rem 0 2rem; }
.fs-rent__qa dt {
    position: relative;
    padding-left: 1.4rem;
    font-family: var(--f-head);
    font-weight: 600;
    font-size: 1.3rem;
    color: var(--paper);
}
.fs-rent__qa dt::before { content: ""; position: absolute; left: 0; top: .5em; width: .6rem; height: .6rem; background: var(--red); }
.fs-rent__qa dd { margin: .15rem 0 1rem 1.4rem; font-size: .85rem; line-height: 1.5; color: var(--soft); }
.fs-rent__visual { min-width: 0; margin-top: -9rem; position: relative; }
.fs-env { position: relative; container-type: inline-size; }
.fs-env img { display: block; width: 100%; height: auto; aspect-ratio: 1332 / 1068; filter: drop-shadow(0 18px 22px rgba(0, 0, 0, .4)); }
.fs-env__sheet {
    position: absolute;
    font-weight: 600;
    font-size: 4.3cqw;
    line-height: 1;
    color: var(--ink);
    transform: rotate(5deg);
    transform-origin: left top;
    white-space: nowrap;
}
.fs-env__sheet--1 { left: 33%; top: 7%; }
.fs-env__sheet--2 { left: 27%; top: 18%; }
.fs-env__sheet--3 { left: 16%; top: 30%; }
.fs-env__stamp {
    position: absolute;
    left: 52%;
    top: 50%;
    transform: translate(-50%, -50%) rotate(-12deg);
    padding: 1cqw 3cqw;
    border: .8cqw solid var(--red);
    box-shadow: inset 0 0 0 .5cqw rgba(214, 188, 140, .9), inset 0 0 0 .8cqw var(--red);
    background: rgba(214, 188, 140, .55);
    color: var(--red);
    font-family: var(--f-head);
    font-weight: 700;
    font-size: 6.2cqw;
    line-height: 1.1;
    letter-spacing: .03em;
    white-space: nowrap;
}

/* ---------- Внутренние страницы ---------- */
.dd-inner { padding: 2rem 0 4.5rem; }
.dd-crumbs { margin: 0 0 2rem; font-size: .8rem; line-height: 1.5; color: var(--line); }
.dd-crumbs a { color: var(--paper); text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 3px; }
.dd-crumbs a:hover { color: var(--brass); }
.dd-crumbs__sep { color: var(--red); margin: 0 .25rem; }

.layout-single { display: block; }
.layout-with-sidebar {
    display: grid;
    grid-template-columns: minmax(0, 67fr) minmax(0, 27fr);
    column-gap: 6%;
    align-items: start;
}
.content-area { min-width: 0; }
.layout-single > .content-area { width: 100%; }

.dd-list-head { margin-bottom: 2.6rem; padding-bottom: 1.2rem; border-bottom: 2px solid var(--red); }
.dd-list-head__title { margin: 0 0 .4rem; font-size: clamp(2rem, 4.6vw, 3.2rem); letter-spacing: .03em; color: var(--paper); }
.dd-list-head__note { margin: 0; font-size: .88rem; color: var(--soft); }
.dd-inner .dd-cards { --dd-under: var(--navy); }
.dd-inner .dd-empty { color: var(--soft); }

/* Лист документа */
.dd-sheet {
    position: relative;
    padding: clamp(1.6rem, 4vw, 3rem) clamp(1.4rem, 4vw, 3rem) clamp(1.6rem, 4vw, 3rem) clamp(2.2rem, 5.5vw, 4.2rem);
    background-color: var(--paper);
    background-image: linear-gradient(90deg, transparent 0, transparent calc(clamp(2.2rem, 5.5vw, 4.2rem) - 1.1rem), rgba(181, 55, 42, .45) calc(clamp(2.2rem, 5.5vw, 4.2rem) - 1.1rem), rgba(181, 55, 42, .45) calc(clamp(2.2rem, 5.5vw, 4.2rem) - 1rem), transparent calc(clamp(2.2rem, 5.5vw, 4.2rem) - 1rem));
    color: var(--ink);
    box-shadow: 8px 9px 0 -1px var(--kraft), 8px 9px 0 0 var(--kraft-dark), 0 18px 32px rgba(0, 0, 0, .3);
    margin-bottom: 2.6rem;
}
.dd-sheet .dd-empty { color: var(--ink); }
.dd-entry__head { margin-bottom: 1.8rem; padding-bottom: 1.2rem; border-bottom: 1px solid rgba(110, 124, 140, .4); }
.dd-entry__seal {
    display: inline-block;
    margin-bottom: 1rem;
    padding: .25rem .7rem;
    border: 2px solid var(--red);
    box-shadow: inset 0 0 0 2px var(--paper), inset 0 0 0 3px var(--red);
    color: var(--red);
    font-size: .72rem;
    font-weight: 600;
    letter-spacing: .07em;
    text-transform: uppercase;
    transform: rotate(-3deg);
}
.dd-entry__title { margin: 0 0 .7rem; font-size: clamp(1.8rem, 4vw, 2.7rem); color: var(--ink); letter-spacing: .015em; }
.dd-entry__meta { margin: 0; font-size: .82rem; color: var(--muted); }
.dd-entry__thumb { margin: 0 0 2rem; }
.dd-entry__thumb img { display: block; width: 100%; height: auto; aspect-ratio: 16 / 9; object-fit: cover; }
.dd-entry__content { font-family: var(--f-serif); font-size: 1.06rem; line-height: 1.75; }
.dd-entry__content > *:last-child { margin-bottom: 0; }
.dd-entry__content h2, .dd-entry__content h3, .dd-entry__content h4 { margin: 2rem 0 .8rem; color: var(--ink); letter-spacing: .015em; }
.dd-entry__content h2 { font-size: 1.7rem; padding-bottom: .35rem; border-bottom: 2px solid var(--red); }
.dd-entry__content h3 { font-size: 1.35rem; }
.dd-entry__content h4 { font-size: 1.12rem; }
.dd-entry__content p { margin: 0 0 1.1em; }
.dd-entry__content a { color: var(--red-dark); text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 3px; }
.dd-entry__content a:hover { color: var(--red); text-decoration-thickness: 2px; }
.dd-entry__content ul, .dd-entry__content ol { margin: 0 0 1.2em; padding-left: 1.5rem; }
.dd-entry__content li { margin-bottom: .4em; }
.dd-entry__content ul li::marker { color: var(--red); }
.dd-entry__content ol li::marker { color: var(--red); font-family: var(--f-mono); font-weight: 600; }
.dd-entry__content blockquote {
    margin: 1.6rem 0;
    padding: 1.2rem 1.5rem 1.2rem 1.6rem;
    border-left: 5px solid var(--brass);
    background: var(--paper-2);
    font-style: italic;
}
.dd-entry__content blockquote p:last-child { margin-bottom: 0; }
.dd-entry__content table { width: 100%; margin: 1.5rem 0; border-collapse: collapse; border: 1px solid var(--line); font-family: var(--f-mono); font-size: .86rem; }
.dd-entry__content th, .dd-entry__content td { padding: .6rem .8rem; border: 1px solid var(--line); text-align: left; vertical-align: top; }
.dd-entry__content th { background: var(--navy); color: var(--paper); font-weight: 600; }
.dd-entry__content tr:nth-child(even) td { background: rgba(232, 226, 210, .6); }
.dd-entry__content pre, .dd-entry__content code { font-family: var(--f-mono); font-size: .88rem; background: var(--paper-2); }
.dd-entry__content code { padding: .1em .35em; }
.dd-entry__content pre { padding: 1rem 1.2rem; overflow-x: auto; }
.dd-entry__content img { display: block; height: auto; }
.dd-entry__content figure { margin: 1.6rem 0; }
.dd-entry__content figcaption { font-family: var(--f-mono); font-size: .78rem; color: var(--muted); margin-top: .4rem; }
.dd-entry__content hr { border: 0; border-top: 1px dashed var(--muted); margin: 2rem 0; }
.dd-entry__tags { margin: 2rem 0 0; font-size: .82rem; display: flex; flex-wrap: wrap; gap: .4rem .9rem; }
.dd-entry__tags a { color: var(--red-dark); text-decoration: underline; text-underline-offset: 3px; }

/* Сайдбар */
.sidebar { min-width: 0; display: flex; flex-direction: column; gap: 1.8rem; }
.sidebar .dd-widget {
    padding: 1.4rem 1.5rem 1.3rem;
    background: var(--paper-2);
    color: var(--ink);
    border: 1px solid #CDBF9F;
    box-shadow: 5px 6px 0 rgba(13, 39, 64, .55);
}
.sidebar .dd-widget__title {
    margin: 0 0 1rem;
    padding-bottom: .5rem;
    border-bottom: 2px solid var(--red);
    font-size: 1.1rem;
    text-transform: uppercase;
    letter-spacing: .07em;
    color: var(--red);
}
.sidebar ul { list-style: none; margin: 0; padding: 0; }
.sidebar li { padding: .55rem 0; border-bottom: 1px dashed rgba(110, 124, 140, .55); font-size: .86rem; line-height: 1.45; color: var(--ink); }
.sidebar li:last-child { border-bottom: 0; }
.sidebar a { color: var(--ink); text-decoration: none; }
.sidebar a:hover, .sidebar a:focus-visible { color: var(--red); text-decoration: underline; text-underline-offset: 3px; }
.sidebar .post-date { display: block; font-size: .74rem; color: var(--muted); }
.sidebar p { font-size: .86rem; color: var(--ink); }

/* Пагинация */
.dd-pager { display: flex; flex-wrap: wrap; align-items: center; gap: .55rem; margin: 3rem 0 0; }
.dd-pager .page-numbers {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 2.6rem;
    padding: .5rem .85rem;
    background: var(--paper);
    color: var(--ink);
    border: 1px solid var(--ink);
    box-shadow: inset 0 0 0 2px var(--paper), inset 0 0 0 3px var(--line);
    font-size: .86rem;
    font-weight: 600;
    text-decoration: none;
    transition: transform .15s, background-color .15s;
}
.dd-pager a.page-numbers:hover, .dd-pager a.page-numbers:focus-visible { transform: translate(-2px, -2px); box-shadow: inset 0 0 0 2px var(--paper), inset 0 0 0 3px var(--line), 3px 3px 0 var(--red); }
.dd-pager .page-numbers.current { background: var(--red); color: var(--paper); border-color: var(--red); box-shadow: inset 0 0 0 2px var(--red), inset 0 0 0 3px rgba(242, 239, 230, .8); }
.dd-pager .page-numbers.dots { background: none; border: 0; box-shadow: none; color: var(--paper); min-width: 0; }
.dd-sheet .dd-pager .page-numbers.dots { color: var(--ink); }

/* Поиск */
.dd-search { margin: 1.2rem 0; }
.dd-search__label { display: block; margin-bottom: .4rem; font-size: .8rem; color: var(--muted); }
.dd-search__row { display: flex; gap: .5rem; flex-wrap: wrap; }
.dd-search__field {
    flex: 1 1 220px;
    min-width: 0;
    padding: .65rem .9rem;
    border: 2px solid var(--ink);
    border-radius: 0;
    background: var(--paper-hi);
    color: var(--ink);
    font-family: var(--f-mono);
    font-size: .9rem;
}
.dd-search__field:focus { outline: 2px dashed var(--red); outline-offset: 2px; }

/* Комментарии */
.dd-comments__title { font-size: 1.5rem; color: var(--ink); }
.dd-comments__list, .dd-comments__list .children { list-style: none; margin: 0; padding: 0; }
.dd-comments__list .children { padding-left: clamp(1rem, 4vw, 2.2rem); border-left: 2px dashed rgba(110, 124, 140, .45); }
.dd-comment__body { padding: 1.1rem 0; border-bottom: 1px dashed rgba(110, 124, 140, .45); }
.dd-comment__head { display: flex; align-items: center; gap: .8rem; margin-bottom: .6rem; }
.dd-comment__head img { border-radius: 50%; display: block; }
.dd-comment__who { display: flex; flex-direction: column; font-size: .8rem; color: var(--muted); }
.dd-comment__author { font-weight: 600; color: var(--ink); font-size: .92rem; }
.dd-comment__wait { font-size: .82rem; color: var(--red); }
.dd-comment__text { font-family: var(--f-serif); font-size: .98rem; }
.dd-comment__reply a { font-size: .8rem; color: var(--red-dark); text-underline-offset: 3px; }
.dd-comments .comment-respond { margin-top: 2rem; }
.dd-comments > .comment-respond:first-child { margin-top: 0; }
.dd-comments .comment-reply-title { margin-top: 0; }
.dd-comments .comment-reply-title { font-size: 1.4rem; color: var(--ink); }
.dd-comments .comment-reply-title small a { font-family: var(--f-mono); font-size: .78rem; color: var(--red); margin-left: .6rem; }
.dd-comments .comment-form p { margin-bottom: 1rem; }
.dd-comments label { display: block; margin-bottom: .3rem; font-size: .82rem; color: var(--ink); }
.dd-comments .comment-form-cookies-consent label { display: inline; }
.dd-comments input[type="text"], .dd-comments input[type="email"], .dd-comments input[type="url"], .dd-comments textarea {
    width: 100%;
    padding: .65rem .8rem;
    border: 2px solid var(--ink);
    border-radius: 0;
    background: var(--paper-hi);
    color: var(--ink);
    font-family: var(--f-mono);
    font-size: .92rem;
}
.dd-comments input[type="submit"] {
    padding: .65rem 1.3rem;
    background: var(--red);
    color: var(--paper);
    border: 1px solid var(--red);
    border-radius: 0;
    box-shadow: inset 0 0 0 2px var(--red), inset 0 0 0 3px rgba(242, 239, 230, .85);
    font-family: var(--f-mono);
    font-weight: 600;
    cursor: pointer;
}
.dd-comments input[type="submit"]:hover { background: var(--red-dark); }
.dd-comments .comment-notes, .dd-comments .logged-in-as, .dd-comments .must-log-in, .dd-comments__closed { font-size: .82rem; color: var(--muted); }
.dd-comments .comment-navigation .nav-links { display: flex; justify-content: space-between; gap: 1rem; margin-top: 1rem; font-size: .85rem; }

/* 404 */
.dd-404 { text-align: left; }
.dd-404__stamp {
    display: inline-block;
    margin: 0 0 1.4rem;
    padding: .2rem 1.4rem;
    border: 4px solid var(--red);
    box-shadow: inset 0 0 0 3px var(--paper), inset 0 0 0 5px var(--red);
    color: var(--red);
    font-family: var(--f-head);
    font-weight: 700;
    font-size: clamp(3.5rem, 10vw, 6rem);
    line-height: 1.05;
    transform: rotate(-6deg);
}
.dd-404__title { font-size: clamp(1.8rem, 4vw, 2.6rem); color: var(--ink); }
.dd-404__text { font-family: var(--f-serif); max-width: 40rem; }
.dd-404__home { margin: 1.6rem 0 0; }

/* ---------- Подвал ---------- */
.dd-foot {
    position: relative;
    z-index: 1;
    padding: 3.6rem 0 1.6rem;
    background-color: var(--navy-deep);
    background-image:
        linear-gradient(rgba(46, 85, 115, .45) 1px, transparent 1px),
        linear-gradient(90deg, rgba(46, 85, 115, .45) 1px, transparent 1px);
    background-size: 64px 64px;
    border-top: 4px solid var(--red);
    color: var(--soft);
}
.dd-foot__cols { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 2.4rem 3rem; }
.dd-foot__col { min-width: 0; }
.dd-foot .dd-widget { margin-bottom: 1.5rem; color: var(--soft); }
.dd-foot .dd-widget__title { margin: 0 0 .9rem; font-size: 1.3rem; font-weight: 600; letter-spacing: .03em; color: var(--paper); }
.dd-foot .dd-widget p, .dd-foot .textwidget { font-size: .85rem; line-height: 1.55; color: var(--soft); }
.dd-foot ul { list-style: none; margin: 0; padding: 0; }
.dd-foot li { margin: 0 0 .5rem; font-size: .85rem; color: var(--soft); }
.dd-foot a { color: #E4E9EE; text-decoration: none; background: linear-gradient(var(--red), var(--red)) left bottom / 0 1px no-repeat; transition: background-size .2s, color .2s; }
.dd-foot a:hover, .dd-foot a:focus-visible { color: var(--paper); background-size: 100% 1px; }
.dd-foot__copy { margin: 2.4rem 0 0; padding-top: 1.4rem; border-top: 1px solid var(--grid); text-align: center; font-size: .8rem; color: var(--line); }

/* ---------- Cookie-баннер ---------- */
.dd-cookie {
    position: fixed;
    left: 1rem;
    right: 1rem;
    bottom: 1rem;
    z-index: 60;
    max-width: 820px;
    margin-inline: auto;
    display: flex;
    align-items: center;
    gap: 1rem 1.6rem;
    padding: 1.1rem 1.4rem;
    background: var(--paper);
    color: var(--ink);
    border: 2px solid var(--ink);
    box-shadow: 6px 6px 0 var(--red), 0 12px 30px rgba(0, 0, 0, .35);
}
.dd-cookie__text { margin: 0; font-size: .82rem; line-height: 1.5; color: var(--ink); }
.dd-cookie__ok { flex: 0 0 auto; }

/* WordPress-классы */
.alignleft { float: left; margin: .3rem 1.4rem 1rem 0; }
.alignright { float: right; margin: .3rem 0 1rem 1.4rem; }
.aligncenter { display: block; margin-left: auto; margin-right: auto; }
.wp-caption-text, .gallery-caption { font-family: var(--f-mono); font-size: .78rem; color: var(--muted); }
.sticky .card-title::before { content: "★ "; color: var(--red); }
.screen-reader-text {
    border: 0; clip: rect(1px, 1px, 1px, 1px); clip-path: inset(50%);
    height: 1px; width: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; word-wrap: normal;
}
.bypostauthor > .dd-comment__body .dd-comment__author::after { content: " · автор"; color: var(--red); font-weight: 400; }

/* ---------- Адаптив ---------- */
@media (max-width: 960px) {
    .dd-burger { display: inline-flex; }
    .dd-head__row { flex-wrap: wrap; }
    .dd-brand { flex: 1 1 0; }
    .dd-nav { display: none; width: 100%; }
    .dd-nav.is-open { display: block; }
    .dd-nav__list { flex-direction: column; gap: 0; border-top: 1px solid var(--grid); }
    .dd-nav__list a { display: block; padding: .75rem 0; border-bottom: 1px solid var(--grid); background: none; }
    .dd-nav__list .current-menu-item > a { color: #E0675A; }

    .fs-plan__sheet { grid-template-columns: minmax(0, 1fr); gap: 2rem; }
    .fs-plan { padding: 4.6rem 0 4.8rem; }
    .fs-stages__track { grid-template-columns: repeat(3, minmax(0, 1fr)); row-gap: 2.4rem; }
    .fs-stages__track::before { display: none; }
    .dd-cards--three { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .fs-risks { padding: 4.6rem 0 5rem; }
    .fs-risks__grid { grid-template-columns: minmax(0, 1fr); }
    .fs-risks__fact { padding-top: 0; }
    .fs-rent__grid { grid-template-columns: minmax(0, 1fr); }
    .fs-rent__visual { margin-top: 0; max-width: 620px; }

    .layout-with-sidebar { grid-template-columns: minmax(0, 1fr); row-gap: 2.5rem; }
    .dd-foot__cols { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 600px) {
    .shell { width: 92%; }
    .dd-head__row { padding: 1.1rem 0; gap: 1rem; }
    .dd-brand { flex: 1 1 100%; gap: .8rem; align-items: flex-start; }
    .dd-brand__mark { width: 64px; height: 64px; }
    .dd-brand__desc { font-size: .74rem; }

    .fs-plan { margin-top: 1.4rem; padding: 3.8rem 0 4rem; }
    .fs-plan__figure { padding: .8rem .4rem 1rem 1rem; }
    .fs-plan__callout { font-size: .72rem; min-width: 1.8rem; padding: .1rem .4rem; }

    .fs-stages { padding: 2.8rem 0 3.6rem; }
    .fs-stages__track { grid-template-columns: minmax(0, 1fr); row-gap: 1rem; }
    .fs-stages__track::before { display: block; left: 49px; right: auto; top: 20px; bottom: 20px; width: 2px; height: auto; }
    .fs-stage {
        display: grid;
        grid-template-columns: 100px minmax(0, 1fr);
        align-items: center;
        text-align: left;
        column-gap: 1rem;
    }
    .fs-stage__seal { grid-row: 1 / span 3; justify-self: center; margin: 0; }
    .fs-stage__name { margin-top: 0; }
    .fs-stage--alert::after { display: none; }
    .fs-stage__note { justify-self: start; }

    .fs-latest { padding: 4rem 0 4.4rem; }
    .dd-rule-title { gap: .8rem; letter-spacing: .04em; }
    .dd-cards--three, .dd-cards { grid-template-columns: minmax(0, 1fr); }
    .card, .card:nth-child(3n+2), .card:nth-child(3n) { transform: rotate(-.6deg); }

    .fs-risks { padding: 4rem 0 4.2rem; }
    .dd-stamp--r2, .dd-stamp--r4 { margin-left: 12%; }
    .fs-rent { padding: 2.4rem 0 4rem; }

    .dd-sheet { padding: 1.5rem 1.2rem 1.6rem 2rem; background-image: linear-gradient(90deg, transparent 0, transparent .9rem, rgba(181, 55, 42, .45) .9rem, rgba(181, 55, 42, .45) calc(.9rem + 1px), transparent calc(.9rem + 1px)); }
    .dd-entry__content { font-size: 1rem; }
    .sidebar .dd-widget { padding: 1.2rem 1.2rem 1.1rem; }

    .dd-foot__cols { grid-template-columns: minmax(0, 1fr); }
    .dd-cookie { flex-direction: column; align-items: flex-start; padding: 1rem 1.1rem; }
    .alignleft, .alignright { float: none; margin: 1rem 0; }
}

@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
    *, *::before, *::after { transition: none !important; }
}
