:root{--dk-bg:#faf7f2;--dk-surface:#fff;--dk-ink:#3e3428;--dk-muted:#74695d;--dk-accent:#c88a24;--dk-accent-hover:#a96e12;--dk-line:#e7ddd0;--dk-dark:#3e3428;--dk-radius:20px;--dk-shadow:0 10px 30px rgba(62,52,40,.08)}
html{scroll-behavior:smooth}.dk-section{scroll-margin-top:110px;padding:82px 24px}.dk-about{background:var(--dk-bg)}.dk-contacts{background:#efe6da}.dk-map-section{background:var(--dk-bg);padding-top:0}.dk-shell{width:min(1200px,100%);margin-inline:auto}.dk-section-head{max-width:820px;margin:0 auto 42px;text-align:center}.dk-section h2{margin:0;color:var(--dk-ink);font-size:clamp(34px,4vw,52px);line-height:1.08;letter-spacing:-.025em}.dk-lead{margin:24px 0 0;color:var(--dk-muted);font-size:18px;line-height:1.75;text-align:center}.dk-service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.dk-service-card{display:flex;min-height:250px;flex-direction:column;padding:36px;border:1px solid var(--dk-line);border-radius:var(--dk-radius);background:var(--dk-surface);box-shadow:var(--dk-shadow);transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}.dk-service-card:hover{transform:translateY(-6px);border-color:#d9c6ad;box-shadow:0 18px 42px rgba(62,52,40,.13)}.dk-service-card h3,.dk-contact-card h3,.dk-order-card h3{margin:0 0 14px;color:var(--dk-ink);font-size:24px;line-height:1.25}.dk-service-card p{margin:0 0 24px;color:var(--dk-muted);font-size:16px;line-height:1.65}.dk-text-link{display:inline-flex;align-items:center;gap:8px;margin-top:auto;color:var(--dk-accent);font-size:15px;font-weight:700;text-decoration:none}.dk-text-link:hover{color:var(--dk-accent-hover)}.dk-text-link svg{width:20px;height:20px;fill:currentColor;transition:transform .2s ease}.dk-text-link:hover svg{transform:translateX(4px)}.dk-contact-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:30px;align-items:stretch}.dk-contact-card,.dk-order-card,.dk-map-card{border-radius:var(--dk-radius)}.dk-contact-card{padding:36px;border:1px solid var(--dk-line);background:#fff;box-shadow:var(--dk-shadow)}.dk-contact-card h3{font-size:27px}.dk-contact-row{display:flex;align-items:center;gap:16px;padding:17px 0}.dk-contact-row+.dk-contact-row{border-top:1px solid #eee5da}.dk-icon{display:inline-grid;width:58px;height:58px;flex:0 0 auto;place-items:center;border-radius:50%;background:#fff3de;color:var(--dk-accent)}.dk-icon svg{width:28px;height:28px;fill:currentColor}.dk-icon--small{width:44px;height:44px}.dk-icon--small svg{width:21px;height:21px}.dk-contact-row small{display:block;margin-bottom:2px;color:var(--dk-muted);font-size:13px;font-weight:700}.dk-contact-row span:not(.dk-icon),.dk-contact-row a{color:var(--dk-ink);font-size:17px;font-weight:650;text-decoration:none}.dk-contact-row a:hover{color:var(--dk-accent)}.dk-contact-side{display:grid;gap:20px}.dk-order-card{display:flex;flex-direction:column;justify-content:center;padding:36px;background:var(--dk-dark);box-shadow:0 16px 40px rgba(62,52,40,.18)}.dk-order-card h3{color:#fff;font-size:30px}.dk-order-card>p{margin:0 0 28px;color:rgba(255,255,255,.78);font-size:17px;line-height:1.7}.dk-actions{display:grid;gap:14px}.dk-button{display:inline-flex;min-height:50px;align-items:center;justify-content:center;gap:9px;padding:13px 22px;border:1px solid transparent;border-radius:12px;font-size:16px;font-weight:750;line-height:1.2;text-align:center;text-decoration:none;transition:transform .2s ease,background .2s ease,border-color .2s ease,color .2s ease}.dk-button:hover{transform:translateY(-2px)}.dk-button svg{width:20px;height:20px;fill:currentColor}.dk-button--primary{background:var(--dk-accent);color:#fff}.dk-button--primary:hover{background:var(--dk-accent-hover);color:#fff}.dk-button--ghost{border-color:rgba(255,255,255,.38);background:transparent;color:#fff}.dk-button--ghost:hover{background:rgba(255,255,255,.1);color:#fff}.dk-button--outline{width:fit-content;margin:16px auto 0;border-color:var(--dk-accent);background:transparent;color:var(--dk-accent)}.dk-button--outline:hover{background:var(--dk-accent);color:#fff}.dk-map-card{overflow:hidden;padding:0 0 20px;border:1px solid var(--dk-line);background:#fff;box-shadow:var(--dk-shadow);text-align:center}.dk-map-card iframe{display:block;width:100%;height:360px;border:0}
.hk-dish-card{border-color:var(--dk-line)!important;border-radius:18px!important;box-shadow:var(--dk-shadow)!important;transition:transform .25s ease,box-shadow .25s ease!important}.hk-dish-card:hover{transform:translateY(-5px);box-shadow:0 18px 42px rgba(62,52,40,.13)!important}.hk-dish-title,.hk-menu-category-title{color:var(--dk-ink)!important}.hk-dish-price{color:var(--dk-accent)!important}.hk-popup-window{border-radius:22px!important;box-shadow:0 24px 70px rgba(28,20,12,.25)!important}
@media(max-width:900px){.dk-section{padding:64px 20px}.dk-contact-grid{grid-template-columns:1fr}.dk-contact-side{grid-template-columns:1fr}.dk-order-card{min-height:0}}
@media(max-width:767px){.dk-section{scroll-margin-top:78px;padding:48px 16px}.dk-section-head{margin-bottom:30px}.dk-lead{font-size:16px;line-height:1.7}.dk-service-grid{grid-template-columns:1fr;gap:16px}.dk-service-card{min-height:0;padding:26px;border-radius:16px}.dk-service-card:hover{transform:none}.dk-contact-card,.dk-order-card{padding:25px;border-radius:16px}.dk-contact-row{align-items:flex-start}.dk-button{width:100%}.dk-map-card{border-radius:16px}.dk-map-card iframe{height:300px}.hk-dish-card:hover{transform:none}}

/* v1.3 — одинаковое начало секций и единый размер карточек меню */
:is(#menu, #banquet, #frozen) {
    min-height: 0 !important;
    padding-top: 80px !important;
    padding-bottom: 80px !important;
    scroll-margin-top: 110px;
}

:is(#menu, #banquet, #frozen) > .uagb-container-inner-blocks-wrap,
:is(#menu, #banquet, #frozen) > .wp-block-group__inner-container {
    width: min(1280px, 100%);
    margin-inline: auto;
    align-content: start !important;
    justify-content: flex-start !important;
}

:is(#menu, #banquet, #frozen) .wp-block-heading:first-child {
    margin-top: 0 !important;
    margin-bottom: 40px !important;
}

/* Все три каталога используют одну сетку и одинаковую высоту карточек. */
:is(#menu, #banquet, #frozen) .hk-menu-grid {
    align-items: stretch !important;
    grid-auto-rows: 1fr;
}

:is(#menu, #banquet, #frozen) .hk-dish-card {
    display: flex;
    width: 100%;
    height: 100%;
    min-height: 500px;
}

:is(#menu, #banquet, #frozen) .hk-dish-link {
    display: flex;
    width: 100%;
    height: 100%;
    flex-direction: column;
}

/* Одинаковая область изображения во всех карточках. */
:is(#menu, #banquet, #frozen) .hk-dish-image {
    width: 100% !important;
    height: 280px !important;
    min-height: 280px !important;
    aspect-ratio: auto !important;
    flex: 0 0 280px;
}

:is(#menu, #banquet, #frozen) .hk-dish-content {
    display: flex;
    min-height: 218px;
    flex: 1 1 auto;
    flex-direction: column;
}

:is(#menu, #banquet, #frozen) .hk-dish-meta {
    margin-top: auto;
}

@media (max-width: 900px) {
    :is(#menu, #banquet, #frozen) {
        padding-top: 64px !important;
        padding-bottom: 64px !important;
    }
}

@media (max-width: 767px) {
    :is(#menu, #banquet, #frozen) {
        min-height: 0 !important;
        padding-top: 48px !important;
        padding-bottom: 48px !important;
        scroll-margin-top: 78px;
    }

    :is(#menu, #banquet, #frozen) .wp-block-heading:first-child {
        margin-bottom: 28px !important;
    }

    :is(#menu, #banquet, #frozen) .hk-dish-card {
        min-height: 0;
    }

    :is(#menu, #banquet, #frozen) .hk-dish-image {
        height: 190px !important;
        min-height: 190px !important;
        flex-basis: 190px;
    }

    :is(#menu, #banquet, #frozen) .hk-dish-content {
        min-height: 150px;
    }
}

@media (max-width: 420px) {
    :is(#menu, #banquet, #frozen) .hk-dish-image {
        height: 230px !important;
        min-height: 230px !important;
        flex-basis: 230px;
    }
}

/* v1.4 — тёплая ресторанная палитра и единая типографика */
:root {
    --dk-ink: #3b2f25;
    --dk-title: #4a382b;
    --dk-muted: #6d6257;
    --dk-subtle: #8e8174;
    --dk-accent: #c88419;
    --dk-accent-hover: #a86c12;
    --dk-line: #e6d9ca;
    --dk-dark: #3b2f25;
    --dk-shadow: 0 10px 30px rgba(120, 78, 22, .08);
}

/* Заголовки секций */
:is(#menu, #banquet, #frozen) .wp-block-heading:first-child,
.dk-section h2 {
    color: var(--dk-ink) !important;
    font-weight: 700 !important;
    letter-spacing: -.02em !important;
    line-height: 1.1 !important;
}

/* Заголовки карточек и контактных блоков */
.hk-dish-title,
.dk-service-card h3,
.dk-contact-card h3,
.dk-order-card h3 {
    color: var(--dk-title) !important;
    font-weight: 700 !important;
    letter-spacing: -.012em;
}

/* Основной и второстепенный текст */
.hk-dish-description,
.hk-dish-ingredients,
.dk-lead,
.dk-service-card p,
.dk-order-card > p {
    color: var(--dk-muted) !important;
}

.hk-dish-weight,
.hk-dish-meta,
.dk-contact-row small {
    color: var(--dk-subtle) !important;
}

/* Цена и ссылки */
.hk-dish-price,
.dk-text-link,
.dk-contact-row a:hover {
    color: var(--dk-accent) !important;
}

.dk-text-link:hover {
    color: var(--dk-accent-hover) !important;
}

/* Карточки — более тёплая тень */
.hk-dish-card,
.dk-service-card,
.dk-contact-card,
.dk-map-card {
    box-shadow: var(--dk-shadow) !important;
}

.hk-dish-card:hover,
.dk-service-card:hover {
    box-shadow: 0 18px 42px rgba(120, 78, 22, .13) !important;
}

/* Кнопки */
.dk-button--primary {
    background: var(--dk-accent) !important;
    color: #fff !important;
}

.dk-button--primary:hover {
    background: var(--dk-accent-hover) !important;
}

.dk-button--outline {
    border-color: var(--dk-accent) !important;
    color: var(--dk-accent) !important;
}

.dk-button--outline:hover {
    background: var(--dk-accent) !important;
    color: #fff !important;
}

/* Убираем случайный синий цвет ссылок внутри ресторанных секций */
:is(#menu, #banquet, #frozen, #about, #contacts) a:not(.dk-button) {
    text-decoration-color: currentColor;
}
