@font-face {
    font-family: "wpf9aacf4";
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url(/e16d4f/fonts/karla-700.woff2) format("woff2");
}

@font-face {
    font-family: "wpf9aacf4";
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url(/e16d4f/fonts/karla-400.woff2) format("woff2");
}
:root {
    --ph44:#B5761C;
    --azi0:#8A5812;
    --dtj0:#2F7F96;
    --vceq:#FDF9F2;
    --u9lf:#FFFFFF;
    --mhn1:#3A2B12;
    --dri0:#847057;
    --qonx:#F0E4CF;
    --m9q8:#FFFFFF;
    --p08u:#FFFFFF;
    --d9i9:#F6EFE4;
    --sdmr:#E6F0F2;
    --a63k:"wpf9aacf4", -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
    --zf32:"wpf9aacf4", system-ui, -apple-system, "Helvetica Neue", Arial, sans-serif;
    --vqsg:700;
    --vdo0:-0.01em;
    --r7h8:46rem;
    --nd4m:72rem;
    --k6oj:1.5rem;
    --hfvz:1.65;
    --re6j:2.1rem;
    --gbuq:1rem;
    --vppd:14px;
}

/* Вигляд картки один на сайт: рамка, пласка або з тінню. Кути, повітря і рамки
   формують перцептивний відбиток не менше за колір, а коштує це три змінні. */
.k_cat,
.k_goods-cols .k_good,
.k_goods-wide .k_good,
.k_faq-unit,
.k_ask-side {
    background:var(--u9lf);
    border-color:transparent;
}

*, *::before, *::after {
    box-sizing:border-box;
}

html {
    scroll-behavior:smooth;
    -webkit-text-size-adjust:100%;
}

body {
    margin:0;
}

h1, h2, h3 {
    margin:0;
    font-family:var(--a63k);
    font-weight:var(--vqsg);
    letter-spacing:var(--vdo0);
    line-height:1.22;
}

p {
    margin:0;
}

dl, dt, dd {
    margin:0;
}

ul, ol {
    list-style:none;
    margin:0;
    padding:0;
}

a {
    text-decoration:none;
    color:inherit;
}

img {
    height:auto;
    max-width:100%;
}

svg {
    display:block;
    flex:none;
}


button {
    padding:0;
    color:inherit;
    font:inherit;
    margin:0;
    border:0;
    background:none;
}

input, textarea {
    margin:0;
    font:inherit;
    color:inherit;
}

summary {
    cursor:pointer;
}

[hidden] {
    display:none !important;
}

[id] {
    scroll-margin-top:1.5rem;
}

/* каркас */

.k_page {
    margin:0;
    background:var(--vceq);
    color:var(--mhn1);
    font-family:var(--zf32);
    font-size:17px;
    line-height:var(--hfvz);
    -webkit-font-smoothing:antialiased;
}

.k_main {
    display:block;
}

.k_zone {
    max-width:var(--nd4m);
    margin:0 auto;
    padding:0 var(--k6oj);
    width:100%;
}

.k_inner {
    max-width:var(--r7h8);
    margin:0 auto;
    padding:0 var(--k6oj);
    width:100%;
}

.k_block {
    padding:var(--re6j) 0;
}

.k_block-heading {
    margin-bottom:1.1rem;
    font-size:1.5rem;
}

.k_jump {
    color:var(--ph44);
    text-decoration:underline;
    text-underline-offset:2px;
}

.k_button {
    display:inline-block;
    padding:0.7rem 1.4rem;
    border:0;
    border-radius:var(--vppd);
    background:var(--ph44);
    color:var(--m9q8);
    font-weight:600;
    cursor:pointer;
}

.k_doc {
    gap:1rem;
    display:grid;
}

.k_prose {
    color:var(--mhn1);
}

.k_rev {
    margin-top:0.5rem;
    font-size:0.86rem;
    color:var(--dri0);
}

/* шапка */

.k_head {
    background:var(--u9lf);
    border-bottom:1px solid var(--qonx);
}

.k_head-body {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:1rem;
    padding-top:0.9rem;
    padding-bottom:0.9rem;
}

.k_head-brand {
    align-items:center;
    display:inline-flex;
}

.k_head-mark {
    display:inline-flex;
    align-items:center;
    gap:0.55rem;
    font-family:var(--a63k);
    font-weight:700;
    font-size:1.15rem;
}

.k_head-menu {
    display:flex;
    align-items:center;
    gap:1.1rem;
}

.k_head-jump {
    color:var(--dri0);
    font-size:0.95rem;
}

.k_head-jump:hover {
    color:var(--mhn1);
}

.k_head-phone {
    font-weight:600;
    display:inline-flex;
    align-items:center;
    color:var(--ph44);
    gap:0.4rem;
}

.k_head-strip {
    background:var(--d9i9);
    font-size:0.85rem;
}

.k_head-strip-body {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:1rem;
    padding-top:0.4rem;
    padding-bottom:0.4rem;
}

.k_head-hours {
    color:var(--dri0);
}

/* перший екран */

.k_intro {
    border-bottom:1px solid var(--qonx);
    background:var(--u9lf);
}

.k_intro-body {
    align-items:center;
    gap:2rem;
    display:grid;
    grid-template-columns:1.15fr 1fr;
}

.k_intro-heading {
    font-size:2.05rem;
}

.k_intro-intro {
    color:var(--mhn1);
    margin-top:0.9rem;
}

.k_intro-notice {
    border-radius:var(--vppd);
    margin-top:1.1rem;
    font-size:0.95rem;
    align-items:flex-start;
    background:var(--sdmr);
    gap:0.55rem;
    display:flex;
    padding:0.75rem 0.9rem;
}

.k_intro-notice-pict {
    color:var(--dtj0);
    margin-top:0.15rem;
}

.k_intro-shot {
    border-radius:var(--vppd);
    margin:0;
    overflow:hidden;
}

.k_intro-shot img {
    display:block;
    width:100%;
    height:auto;
    object-fit:cover;
}

.k_intro-flat .k_intro-heading {
    max-width:34rem;
}

.k_intro-wide {
    margin:1.4rem 0;
    overflow:hidden;
}

.k_intro-wide img {
    height:clamp(11rem, 26vw, 20rem);
    width:100%;
    display:block;
    object-fit:cover;
}

.k_intro-facts {
    display:grid;
    gap:0.5rem;
    margin-top:1.3rem;
}

.k_intro-fact {
    display:flex;
    align-items:flex-start;
    font-size:0.95rem;
    gap:0.55rem;
}

.k_intro-fact-pict {
    color:var(--ph44);
    margin-top:0.15rem;
}

/* категорії */

.k_cats-cols {
    grid-template-columns:repeat(auto-fit, minmax(15rem, 1fr));
    display:grid;
    gap:1rem;
}

.k_cat {
    display:grid;
    gap:0.35rem;
    padding:1rem 1.1rem;
    border:1px solid var(--qonx);
    border-radius:var(--vppd);
    background:var(--u9lf);
}

.k_cat-heading {
    font-family:var(--a63k);
    font-weight:var(--vqsg);
    font-size:1.05rem;
}

.k_cat-hint {
    color:var(--dri0);
    font-size:0.92rem;
}

.k_cats-set {
    display:grid;
}

.k_cat-line {
    padding:0.85rem 0;
    display:grid;
    gap:1rem;
    grid-template-columns:12rem 1fr;
    border-top:1px solid var(--qonx);
}

.k_cat-line:last-child {
    border-bottom:1px solid var(--qonx);
}

/* товари */

.k_goods {
    background:var(--u9lf);
}

.k_goods-head {
    gap:1rem;
    justify-content:space-between;
    align-items:baseline;
    display:flex;
}

.k_goods-count {
    color:var(--dri0);
    font-size:0.9rem;
}

.k_goods-cols {
    display:grid;
    grid-template-columns:repeat(auto-fill, minmax(14rem, 1fr));
    gap:1rem;
}

.k_goods-cols .k_good {
    display:grid;
    align-content:start;
    gap:0.4rem;
    padding:1rem 1.1rem;
    border:1px solid var(--qonx);
    border-radius:var(--vppd);
    background:var(--vceq);
}

.k_good-figure {
    overflow:hidden;
    border-radius:var(--vppd) var(--vppd) 0 0;
    margin:-1rem -1.1rem 0.6rem;
}

.k_good-figure img {
    width:100%;
    height:11rem;
    object-fit:cover;
    display:block;
}

.k_good-thumb {
    margin:0;
    border-radius:var(--vppd);
    width:4.5rem;
    flex:none;
    overflow:hidden;
}

.k_good-thumb img {
    object-fit:cover;
    height:4.5rem;
    width:100%;
    display:block;
}

.k_good-name {
    font-size:1rem;
}

.k_good-hint {
    color:var(--dri0);
    font-size:0.9rem;
}

.k_good-price {
    font-family:var(--a63k);
    font-weight:700;
    font-size:1.15rem;
    color:var(--ph44);
}

.k_price-set {
    display:grid;
}

.k_price-set .k_good {
    padding:0.85rem 0;
    border-top:1px dotted var(--qonx);
    display:flex;
    gap:1rem;
    justify-content:space-between;
    align-items:center;
}

.k_price-set .k_good-main {
    flex:1;
}

.k_price-set .k_good:last-child {
    border-bottom:1px dotted var(--qonx);
}

.k_good-main {
    gap:0.15rem;
    display:grid;
}

.k_goods-few {
    grid-template-columns:repeat(auto-fit, minmax(14rem, 19rem));
    justify-content:start;
}

.k_good-foot {
    flex-wrap:wrap;
    gap:0.5rem 0.7rem;
    display:flex;
    margin-top:0.2rem;
    align-items:baseline;
}

.k_good-foot-side {
    flex:none;
    flex-direction:column;
    align-items:flex-end;
    gap:0.4rem;
}

.k_good-off {
    display:none !important;
}

.k_good-out {
    opacity:0.62;
}

.k_good-out .k_good-price {
    text-decoration:line-through;
    color:var(--dri0);
}

.k_good-ask {
    /* justify-self, а не align-self:усередині гріда картки друге тягне кнопку по
       вертикалі, а по горизонталі вона лишається на всю ширину рядка. */
    justify-self: start;
    align-self:start;
    margin-top:0.35rem;
    padding:0.28rem 0.7rem;
    border:1px solid var(--qonx);
    border-radius:var(--vppd);
    background:transparent;
    color:var(--ph44);
    font-size:0.85rem;
    cursor:pointer;
}

.k_good-ask:hover {
    border-color:var(--ph44);
}

.k_cat, .k_cat-line {
    text-align:left;
    cursor:pointer;
    width:100%;
}

.k_cat-on {
    border-color:var(--ph44);
    background:var(--d9i9);
}

.k_cats-cols .k_cat-on {
    border-color:var(--ph44);
}

/* Кнопка "показати все" тільки з підписом, тому їй потрібна власна висота. */
.k_cat-all {
    color:var(--ph44);
    min-height:3.2rem;
    align-content:center;
}

.k_good-status {
    background:var(--sdmr);
    color:var(--dtj0);
    padding:0.1rem 0.5rem;
    border-radius:999px;
    font-size:0.78rem;
    white-space:nowrap;
}

/* широкі рядки товарів */

.k_wide-set {
    gap:0.9rem;
    display:grid;
}

.k_goods-wide .k_good {
    display:flex;
    align-items:center;
    gap:1.1rem;
    padding:0.9rem 1.1rem;
    border:1px solid var(--qonx);
    border-radius:var(--vppd);
    background:var(--vceq);
}

.k_good-side {
    overflow:hidden;
    width:5.5rem;
    border-radius:var(--vppd);
    flex:none;
    margin:0;
}

.k_good-side img {
    display:block;
    height:5.5rem;
    object-fit:cover;
    width:100%;
}

.k_goods-wide .k_good-main {
    flex:1;
    justify-items:start;
    gap:0.2rem;
    display:grid;
}

.k_good-price-bin {
    flex:none;
    white-space:nowrap;
}

/* візит: години, орієнтир, зона доставки */

.k_visit-body {
    align-items:start;
    grid-template-columns:1fr 1.2fr;
    display:grid;
    gap:2rem;
}

.k_hours-set {
    display:grid;
}

.k_hours-line {
    display:flex;
    align-items:baseline;
    border-bottom:1px dotted var(--qonx);
    padding:0.45rem 0;
    gap:1rem;
    justify-content:space-between;
}

.k_hours-day {
    color:var(--mhn1);
}

.k_hours-time {
    color:var(--dri0);
    font-variant-numeric:tabular-nums;
    white-space:nowrap;
}

.k_visit-notes {
    padding-top:0.4rem;
    gap:0.8rem;
    display:grid;
}

.k_visit-hint {
    gap:0.55rem;
    font-size:0.96rem;
    display:flex;
    align-items:flex-start;
}

.k_visit-pict {
    margin-top:0.2rem;
    color:var(--ph44);
}

.k_visit-since {
    color:var(--dri0);
    font-size:0.9rem;
}

.k_visit-stack .k_hours-set {
    margin-bottom:1.1rem;
}

.k_visit-stack .k_visit-hint {
    margin-bottom:0.5rem;
}

.k_intro-since {
    color:var(--dri0);
    margin-top:0.6rem;
    font-size:0.92rem;
}

.k_intro-side .k_intro-body {
    grid-template-columns:0.85fr 1.15fr;
}

/* доставка */

.k_ship-zone {
    background:var(--d9i9);
}

.k_ship-shot {
    margin:1.4rem auto 0;
    padding:0 var(--k6oj);
    overflow:hidden;
    max-width:var(--nd4m);
}

.k_ship-shot img {
    object-fit:cover;
    display:block;
    width:100%;
    height:clamp(9rem, 20vw, 15rem);
    border-radius:var(--vppd);
}

.k_ship-body {
    grid-template-columns:1.6fr 1fr;
    display:grid;
    align-items:start;
    gap:2rem;
}

.k_ship-prose {
    gap:0.9rem;
    display:grid;
}

.k_ship-aside {
    border-radius:var(--vppd);
    gap:0.35rem;
    display:grid;
    padding:1.1rem;
    background:var(--u9lf);
}

.k_ship-aside-key {
    font-family:var(--a63k);
    font-weight:700;
}

.k_ship-aside-val {
    color:var(--dri0);
    font-size:0.93rem;
}

/* форма замовлення */

.k_ask-hint {
    margin-bottom:1.1rem;
    color:var(--dri0);
}

.k_ask-form {
    display:grid;
    gap:0.85rem;
}

.k_ask-line {
    display:grid;
    gap:0.85rem;
    grid-template-columns:1fr 1fr;
}

.k_ask-field {
    display:grid;
    gap:0.3rem;
}

.k_ask-label {
    color:var(--dri0);
    font-size:0.88rem;
}

.k_ask-input {
    width:100%;
    padding:0.65rem 0.8rem;
    border:1px solid var(--qonx);
    border-radius:var(--vppd);
    background:var(--u9lf);
    font-family:inherit;
    font-size:1rem;
}

.k_ask-input:focus {
    outline:2px solid var(--ph44);
    outline-offset:1px;
}

.k_ask-area {
    resize:vertical;
}

.k_ask-send {
    justify-self:start;
    padding:0.7rem 1.6rem;
    border:0;
    border-radius:var(--vppd);
    background:var(--ph44);
    color:var(--m9q8);
    font-weight:600;
    cursor:pointer;
}

.k_ask-after {
    color:var(--dri0);
    font-size:0.9rem;
}

.k_ask-form-sent .k_ask-after {
    color:var(--dtj0);
    font-weight:600;
}

.k_ask-split {
    background:var(--u9lf);
}

.k_ask-body {
    display:grid;
    gap:2rem;
    align-items:start;
    grid-template-columns:1.5fr 1fr;
}

.k_ask-side {
    display:grid;
    gap:0.5rem;
    padding:1.2rem;
    border:1px solid var(--qonx);
    border-radius:var(--vppd);
}

.k_ask-phone {
    font-family:var(--a63k);
    font-weight:700;
    font-size:1.3rem;
    color:var(--ph44);
}

.k_ask-side-hint {
    font-size:0.9rem;
    color:var(--dri0);
}

/* новини */

.k_log-heading {
    font-size:1.35rem;
    margin-bottom:1rem;
}

.k_log-set {
    gap:0.5rem 1.2rem;
    display:grid;
    grid-template-columns:auto 1fr;
}

.k_log-date {
    font-size:0.86rem;
    white-space:nowrap;
    color:var(--dri0);
}

.k_log-hint {
    font-size:0.96rem;
}

.k_log-cols {
    display:grid;
    grid-template-columns:repeat(auto-fit, minmax(15rem, 1fr));
    gap:1rem;
}

.k_log-panel {
    border-left:2px solid var(--ph44);
    padding:1rem;
    gap:0.35rem;
    background:var(--u9lf);
    display:grid;
}

/* питання */

.k_faq-set {
    display:grid;
    gap:0.6rem;
}

.k_faq-unit {
    padding:0.9rem 1.1rem;
    border:1px solid var(--qonx);
    border-radius:var(--vppd);
    background:var(--u9lf);
}

.k_faq-q {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:1rem;
    font-family:var(--a63k);
    font-weight:var(--vqsg);
    list-style:none;
}

.k_faq-q::-webkit-details-marker {
    display:none;
}

.k_faq-sign {
    color:var(--dri0);
}

.k_faq-a {
    margin-top:0.6rem;
    color:var(--dri0);
}

.k_faq-open .k_faq-a {
    margin-top:0.35rem;
}

/* адреса */

.k_where {
    border-top:1px solid var(--qonx);
}

.k_where-body {
    grid-template-columns:repeat(auto-fit, minmax(14rem, 1fr));
    display:grid;
    gap:1.2rem;
}

.k_where-unit {
    display:grid;
    grid-template-columns:auto 1fr;
    gap:0.2rem 0.6rem;
    align-items:start;
}

.k_where-pict {
    color:var(--ph44);
    grid-row:span 2;
}

.k_where-key {
    font-family:var(--a63k);
    font-weight:700;
}

.k_where-val {
    color:var(--dri0);
    font-size:0.93rem;
}

.k_where-bin {
    text-align:center;
    background:var(--d9i9);
    padding:1.3rem;
    gap:0.4rem;
    display:grid;
    border-radius:var(--vppd);
}

.k_where-row {
    font-size:0.97rem;
}

.k_where-hours {
    color:var(--dri0);
}

.k_where-phone {
    font-family:var(--a63k);
    font-weight:700;
    font-size:1.25rem;
    color:var(--ph44);
}

/* заголовок внутрішньої сторінки */

.k_phead {
    border-bottom:1px solid var(--qonx);
    padding:2rem 0 1.2rem;
    background:var(--u9lf);
}

.k_phead-tint {
    background:var(--d9i9);
}

.k_phead-body {
    display:grid;
    gap:0.4rem;
}

.k_phead-back {
    font-size:0.88rem;
    color:var(--ph44);
}

.k_phead-heading {
    font-size:1.75rem;
}

.k_phead-sub {
    color:var(--dri0);
}

/* контакти */

.k_cinfo {
    display:grid;
}

.k_cinfo-line {
    padding:0.8rem 0;
    grid-template-columns:14rem 1fr;
    border-top:1px solid var(--qonx);
    gap:1rem;
    display:grid;
}

.k_cinfo-line:last-child {
    border-bottom:1px solid var(--qonx);
}

.k_cinfo-key {
    font-size:0.93rem;
    align-items:center;
    gap:0.5rem;
    color:var(--dri0);
    display:flex;
}

.k_cinfo-pict {
    color:var(--ph44);
}

.k_cinfo-val {
    font-size:0.97rem;
}

/* 404 */

.k_nf {
    padding:4rem 0;
    text-align:center;
}

.k_nf-heading {
    font-size:1.8rem;
}

.k_nf-prose {
    color:var(--dri0);
    margin:0.7rem 0 1.4rem;
}

/* підвал */

.k_foot {
    background:var(--u9lf);
    border-top:1px solid var(--qonx);
    margin-top:var(--re6j);
}

.k_foot-body {
    display:flex;
    flex-wrap:wrap;
    align-items:flex-start;
    justify-content:space-between;
    gap:1.5rem;
    padding-top:1.8rem;
    padding-bottom:1.2rem;
}

.k_foot-brand {
    gap:0.25rem;
    display:grid;
}

.k_foot-name {
    font-family:var(--a63k);
    font-weight:700;
    font-size:1.05rem;
}

.k_foot-hint {
    color:var(--dri0);
    font-size:0.9rem;
}

.k_foot-menu {
    gap:0.4rem 1.1rem;
    flex-wrap:wrap;
    display:flex;
}

.k_foot-jump {
    color:var(--dri0);
    font-size:0.9rem;
}

.k_foot-jump:hover {
    color:var(--mhn1);
}

.k_foot-bottom {
    display:flex;
    padding-bottom:1.6rem;
    flex-wrap:wrap;
    gap:0.4rem 1.2rem;
}

.k_foot-legal {
    font-size:0.82rem;
    color:var(--dri0);
}

.k_foot-reg {
    font-variant-numeric:tabular-nums;
}

.k_foot-narrow .k_foot-body {
    gap:0.6rem;
    display:grid;
}

/* банер згоди */

.k_notice {
    background:var(--azi0);
    position:fixed;
    color:var(--m9q8);
    z-index:20;
}

.k_notice-bar {
    bottom:0;
    left:0;
    right:0;
}

.k_notice-body {
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:space-between;
    gap:1rem;
    padding-top:0.9rem;
    padding-bottom:0.9rem;
}

.k_notice-bin {
    max-width:22rem;
    bottom:1rem;
    padding:1.1rem;
    border-radius:var(--vppd);
    left:1rem;
}

.k_notice-prose {
    font-size:0.88rem;
}

.k_notice-actions {
    align-items:center;
    display:flex;
    gap:0.9rem;
    margin-top:0.6rem;
}

.k_notice-bin .k_notice-actions {
    margin-top:0.9rem;
}

.k_notice-more {
    font-size:0.85rem;
    text-decoration:underline;
    color:inherit;
}

.k_notice-accept {
    font-size:0.9rem;
    padding:0.45rem 1.1rem;
}

@media (max-width: 60rem) {
    .k_intro-body,
    .k_ship-body,
    .k_visit-body,
    .k_ask-body {
    grid-template-columns:1fr;
}

    .k_intro-side .k_intro-body {
    grid-template-columns:1fr;
}

    .k_intro-shot {
    order:-1;
}
}

@media (max-width: 40rem) {
    :root {
    --re6j:2rem;
    --k6oj:1.1rem;
}

    .k_intro-heading {
    font-size:1.7rem;
}

    .k_ask-line,
    .k_cat-line,
    .k_cinfo-line {
    grid-template-columns:1fr;
}

    .k_head-menu {
    gap:0.8rem;
}

    .k_price-set .k_good {
    flex-wrap:wrap;
    gap:0.3rem;
}
}
