/* =========================================================================
   «Бархат» — a discreet boutique for adults, on top of NewCMS Default.

   ART DIRECTION
   A jewellery box, not a shop window. Blush pearl paper (#f8eeea) for the
   quiet sections, deep plum velvet (#2a0f1f) for the ones that hold a
   promise, burgundy (#7a1f3d) for everything you press, and gold
   (#c9a46a) only as a thread: hairlines, ornaments, numerals, rings.

   Type: Cormorant Garamond — a high-contrast display serif — set large and
   light for titles; Manrope for the rest, with labels in small spaced
   capitals. Shapes: the arch (photographs, cards, covers) and the circle
   (monograms, medallions). Lots of air: sections breathe.

   Motion is slow and optional: light pools drift over the velvet, cards
   lift a little, sections fade up as they arrive (design toggle
   «Плавные появления»); all of it stops under prefers-reduced-motion.

   Loaded after the parent's theme.css / blocks.css / chrome.css and the
   modules' styles, so the rules here re-dress rather than rebuild.
   ========================================================================= */

/* -------------------------------------------------------------------------
   1. Fonts
   ------------------------------------------------------------------------- */
@font-face {
    font-family: 'Barkhat Cormorant';
    font-style: normal;
    font-weight: 300 700;
    font-display: swap;
    src: url('../fonts/cormorant-garamond-wght.woff2') format('woff2');
}
@font-face {
    font-family: 'Barkhat Lora';
    font-style: normal;
    font-weight: 400 700;
    font-display: swap;
    src: url('/themes/default/assets/fonts/lora-cyrillic-wght-normal.woff2') format('woff2');
    unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
    font-family: 'Barkhat Lora';
    font-style: normal;
    font-weight: 400 700;
    font-display: swap;
    src: url('/themes/default/assets/fonts/lora-latin-wght-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+20BD, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
    font-family: 'Barkhat Manrope';
    font-style: normal;
    font-weight: 200 800;
    font-display: swap;
    src: url('/themes/default/assets/fonts/manrope-cyrillic-wght-normal.woff2') format('woff2');
    unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
    font-family: 'Barkhat Manrope';
    font-style: normal;
    font-weight: 200 800;
    font-display: swap;
    src: url('/themes/default/assets/fonts/manrope-latin-wght-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+20BD, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
    font-family: 'Barkhat Onest';
    font-style: normal;
    font-weight: 100 900;
    font-display: swap;
    src: url('/themes/default/assets/fonts/onest-cyrillic-wght-normal.woff2') format('woff2');
    unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
    font-family: 'Barkhat Onest';
    font-style: normal;
    font-weight: 100 900;
    font-display: swap;
    src: url('/themes/default/assets/fonts/onest-latin-wght-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+20BD, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
    font-family: 'Barkhat Inter';
    font-style: normal;
    font-weight: 100 900;
    font-display: swap;
    src: url('/themes/default/assets/fonts/inter-cyrillic-wght-normal.woff2') format('woff2');
    unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
    font-family: 'Barkhat Inter';
    font-style: normal;
    font-weight: 100 900;
    font-display: swap;
    src: url('/themes/default/assets/fonts/inter-latin-wght-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+20BD, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* The owner's design settings (theme.json → design.controls). Core prints
   the chosen values as :root{--barkhat-…} after this file. */
:root {
    --barkhat-accent: #7a1f3d;
    --barkhat-gold: #c9a46a;
    --barkhat-font-display: 'Barkhat Cormorant', 'Cormorant Garamond', Georgia, 'Times New Roman', serif;
    --barkhat-font-body: 'Barkhat Manrope', system-ui, -apple-system, 'Segoe UI', Arial, sans-serif;
    --barkhat-radius: 14px;
}

/* -------------------------------------------------------------------------
   2. Tokens — palette «Пудра и слива» by default
   ------------------------------------------------------------------------- */
html:root {
    --bk-paper: #f8eeea;
    --bk-paper-2: #fdf7f4;
    --bk-sunk: #f1e1db;
    --bk-ink: #2b1220;
    --bk-text: #4a2b39;
    --bk-muted: #74535f;
    --bk-line: #e7d3cc;
    --bk-line-2: #d6b9b0;
    --bk-plum: #2a0f1f;
    --bk-plum-2: #3d1629;
    --bk-plum-3: #561f39;
    --bk-on-plum: #f6e6e4;
    --bk-on-plum-muted: #cfb2b8;
    --bk-accent: var(--barkhat-accent);
    --bk-accent-2: color-mix(in srgb, var(--barkhat-accent) 82%, #000);
    --bk-gold: var(--barkhat-gold);
    --bk-gold-ink: color-mix(in srgb, var(--barkhat-gold) 52%, #3a1a10);
    --bk-blush: #ecc9c4;

    --bk-serif: var(--barkhat-font-display);
    --bk-sans: var(--barkhat-font-body);
    --bk-ease: cubic-bezier(0.22, 0.61, 0.36, 1);
    --bk-r: var(--barkhat-radius);
    --bk-arch: 999px 999px var(--bk-r) var(--bk-r);

    --c-bg: var(--bk-paper);
    --c-surface: var(--bk-paper-2);
    --c-surface-sunk: var(--bk-sunk);
    --c-text: var(--bk-text);
    --c-text-strong: var(--bk-ink);
    --c-text-muted: var(--bk-muted);
    --c-text-faint: #8e7480;
    --c-border: var(--bk-line);
    --c-border-strong: var(--bk-line-2);
    --c-accent: var(--bk-accent);
    --c-accent-hover: var(--bk-accent-2);
    --c-accent-soft: color-mix(in srgb, var(--barkhat-accent) 10%, var(--bk-paper));
    --c-accent-contrast: #fff8f5;
    --c-link: var(--bk-accent);
    --c-link-hover: var(--bk-accent-2);
    --c-mark: var(--bk-accent);
    --c-mark-text: var(--bk-accent);
    --c-mark-soft: color-mix(in srgb, var(--barkhat-accent) 12%, var(--bk-paper));
    --c-slab: var(--bk-plum);
    --c-slab-text: var(--bk-on-plum);
    --c-slab-muted: var(--bk-on-plum-muted);
    --c-danger: #a3243b;
    --c-success: #4f6b4a;

    --font-display: var(--bk-serif);
    --font-ui: var(--bk-sans);
    --font-prose: var(--bk-sans);

    --fw-heading: 500;
    --tr-tight: -0.01em;
    --tr-snug: 0;

    --r-xs: min(var(--barkhat-radius), 6px);
    --r-sm: var(--barkhat-radius);
    --r-md: var(--barkhat-radius);
    --r-lg: calc(var(--barkhat-radius) * 1.5);
    --r-btn: 999px;
    --r-pill: 999px;
    --card-radius: var(--barkhat-radius);
    --card-bg: var(--bk-paper-2);
    --card-border: 1px solid var(--bk-line);
    --card-shadow: none;
    --shadow-sm: none;
    --shadow-md: 0 18px 40px -24px rgba(42, 15, 31, 0.35);
    --shadow-lg: 0 30px 70px -30px rgba(42, 15, 31, 0.45);
    --shadow-lift: 0 26px 50px -28px rgba(42, 15, 31, 0.5);

    --w-container: 76rem;
    --w-wide: 90rem;
    --w-prose: 40rem;
    --gutter: clamp(1rem, 3.6vw, 3.5rem);

    --sp-xs: 1.5rem;
    --sp-sm: clamp(2.5rem, 2rem + 2.5vw, 3.75rem);
    --sp-md: clamp(4rem, 3rem + 4vw, 7rem);
    --sp-lg: clamp(5.5rem, 4rem + 6.5vw, 10rem);
    --sp-xl: clamp(7rem, 5rem + 9vw, 13rem);

    --dur: 260ms;
    --ease: var(--bk-ease);

    color-scheme: light;
}

/* The same in the visitor's dark scheme: the palette is the owner's choice. */
@media (prefers-color-scheme: dark) {
    html:root {
        --c-bg: var(--bk-paper);
        --c-surface: var(--bk-paper-2);
        --c-surface-sunk: var(--bk-sunk);
        --c-text: var(--bk-text);
        --c-text-strong: var(--bk-ink);
        --c-text-muted: var(--bk-muted);
        --c-border: var(--bk-line);
        --c-border-strong: var(--bk-line-2);
        --c-accent: var(--bk-accent);
        --c-accent-hover: var(--bk-accent-2);
        --c-accent-contrast: #fff8f5;
        --c-link: var(--bk-accent);
        --c-link-hover: var(--bk-accent-2);
        --c-mark: var(--bk-accent);
        --c-mark-text: var(--bk-accent);
    }
}

/* Palette «Жемчуг и шампань» — lighter, warmer, champagne instead of blush. */
html[data-barkhat-palette="pearl"]:root {
    --bk-paper: #faf6ef;
    --bk-paper-2: #fffdf9;
    --bk-sunk: #f2eadc;
    --bk-line: #e8dccb;
    --bk-line-2: #d5c3aa;
    --bk-text: #45313a;
    --bk-muted: #6f5a5f;
    --bk-blush: #eadcc6;
}

/* Palette «Ночной бархат» — the whole site on dark velvet. */
html[data-barkhat-palette="noir"]:root {
    --bk-paper: #1c0a14;
    --bk-paper-2: #26101c;
    --bk-sunk: #2e1322;
    --bk-ink: #fbeef0;
    --bk-text: #ead7db;
    --bk-muted: #c3a6ae;
    --bk-line: #432031;
    --bk-line-2: #5d2d44;
    --bk-plum: #12050c;
    --bk-plum-2: #220b17;
    --bk-gold-ink: var(--barkhat-gold);
    --bk-blush: #5d2d44;
    --c-accent: color-mix(in srgb, var(--barkhat-accent) 55%, #f3b7c4);
    --c-accent-hover: color-mix(in srgb, var(--barkhat-accent) 40%, #f7cbd5);
    --c-accent-contrast: #1c0a14;
    --c-link: #efb3c1;
    --c-link-hover: #f7d0d9;
    --c-mark: #efb3c1;
    --c-mark-text: #efb3c1;
    --c-text-faint: #a88c95;
    --c-accent-soft: #3a1628;
    --c-mark-soft: #3a1628;
    color-scheme: dark;
}
@media (prefers-color-scheme: dark) {
    html[data-barkhat-palette="noir"]:root {
        --c-accent: color-mix(in srgb, var(--barkhat-accent) 55%, #f3b7c4);
        --c-accent-hover: color-mix(in srgb, var(--barkhat-accent) 40%, #f7cbd5);
        --c-accent-contrast: #1c0a14;
        --c-link: #efb3c1;
        --c-link-hover: #f7d0d9;
        --c-mark: #efb3c1;
        --c-mark-text: #efb3c1;
    }
}

/* Section tones: the design layer is not linked, so the theme owns them. */
.cms-tone-soft {
    --section-bg: var(--bk-sunk);
    --c-bg: var(--bk-sunk);
    --c-surface: var(--bk-paper-2);
}
.cms-tone-dark,
.cms-tone-primary,
.cms-on-dark,
.bk-ftr {
    --section-bg: var(--bk-plum);
    --c-bg: var(--bk-plum);
    --c-surface: var(--bk-plum-2);
    --c-surface-sunk: #34122a;
    --c-text: var(--bk-on-plum);
    --c-text-strong: #fff5f3;
    --c-text-muted: var(--bk-on-plum-muted);
    --c-text-faint: #a88c95;
    --c-border: rgba(201, 164, 106, 0.22);
    --c-border-strong: rgba(201, 164, 106, 0.42);
    --c-accent: var(--bk-gold);
    --c-accent-hover: color-mix(in srgb, var(--barkhat-gold) 80%, #fff);
    --c-accent-contrast: var(--bk-plum);
    --c-link: #f1d6a8;
    --c-link-hover: #fff1d6;
    --c-mark: var(--bk-gold);
    --c-mark-text: #e9c992;
    --card-bg: rgba(255, 240, 240, 0.04);
    --card-border: 1px solid rgba(201, 164, 106, 0.22);
    color-scheme: dark;
}
.cms-tone-accent {
    --section-bg: var(--bk-accent);
    --c-bg: var(--bk-accent);
    --c-text: #fbe9ec;
    --c-text-strong: #fff;
    --c-text-muted: #f0c9d1;
    --c-accent: #fff5f3;
    --c-accent-contrast: var(--bk-accent);
    --c-link: #fff;
    --c-border: rgba(255, 255, 255, 0.25);
}

/* Velvet: soft grain and slow pools of light on every dark section. */
.cms-tone-dark,
.cms-tone-primary,
.bk-ftr,
.bk-hero {
    --bk-velvet: radial-gradient(60% 80% at 15% 10%, rgba(122, 31, 61, 0.55), transparent 70%),
        radial-gradient(50% 70% at 90% 90%, rgba(201, 164, 106, 0.14), transparent 70%),
        linear-gradient(160deg, var(--bk-plum-2), var(--bk-plum) 60%);
}
html:not([data-barkhat-velvet="off"]) .cms-tone-dark,
html:not([data-barkhat-velvet="off"]) .cms-tone-primary {
    --section-bg-image: var(--bk-velvet);
}
html:not([data-barkhat-velvet="off"]) .cms-tone-dark::after,
html:not([data-barkhat-velvet="off"]) .cms-tone-primary::after,
html:not([data-barkhat-velvet="off"]) .bk-ftr__velvet,
html:not([data-barkhat-velvet="off"]) .bk-hero__velvet::after {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    opacity: 0.22;
    mix-blend-mode: soft-light;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 .9 0 0 0 0 .9 0 0 0 .7 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}
.cms-tone-dark,
.cms-tone-primary { position: relative; isolation: isolate; }
.cms-tone-dark > .cms-section__inner,
.cms-tone-primary > .cms-section__inner { position: relative; z-index: 1; }

/* -------------------------------------------------------------------------
   3. Base
   ------------------------------------------------------------------------- */
body.bk-body {
    background: var(--c-bg);
    color: var(--c-text);
    font-family: var(--bk-sans);
    font-feature-settings: "kern", "liga";
    -webkit-font-smoothing: antialiased;
}

::selection { background: var(--bk-blush); color: var(--bk-ink); }

.bk-wrap {
    width: min(100% - 2 * var(--gutter), var(--w-wide));
    margin-inline: auto;
}

h1, h2, h3, h4,
.cms-section__title {
    font-family: var(--bk-serif);
    font-weight: 500;
    letter-spacing: -0.005em;
    color: var(--c-text-strong);
}

.cms-section__title {
    font-size: clamp(2.1rem, 1.5rem + 2.4vw, 3.6rem);
    line-height: 1.05;
    font-weight: 400;
}
.cms-section__head--center .cms-section__title::before {
    content: "";
    display: block;
    width: 44px;
    height: 12px;
    margin: 0 auto 1.25rem;
    background: center / contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 44 12'%3E%3Cpath d='M0 6h15M29 6h15' stroke='%23c9a46a' stroke-width='.8'/%3E%3Cpath d='M22 1.5 26.5 6 22 10.5 17.5 6Z' fill='none' stroke='%23c9a46a' stroke-width='.9'/%3E%3C/svg%3E");
}
.cms-section__subtitle {
    color: var(--c-text-muted);
    font-size: clamp(1rem, 0.95rem + 0.3vw, 1.15rem);
    max-width: 38rem;
}
.cms-section__head--center .cms-section__subtitle { margin-inline: auto; }

.cms-prose h2, .cms-prose h3 { font-family: var(--bk-serif); font-weight: 500; }
.cms-prose h2 { font-size: clamp(1.7rem, 1.4rem + 1vw, 2.3rem); }
.cms-prose blockquote {
    border-left: 1px solid var(--bk-gold);
    font-family: var(--bk-serif);
    font-size: 1.45rem;
    line-height: 1.35;
    color: var(--c-text-strong);
}
.cms-prose li::marker { color: var(--bk-gold); }

/* Buttons: pills, burgundy, a thin gold ring on hover. */
.cms-btn {
    min-height: 50px;
    padding: 0.85rem 1.9rem;
    font-size: 0.8rem;
    font-weight: 600;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    transition: background-color var(--dur) var(--ease), color var(--dur) var(--ease), box-shadow var(--dur) var(--ease), border-color var(--dur) var(--ease);
}
.cms-btn--primary { box-shadow: none; }
.cms-btn--primary:hover { box-shadow: 0 0 0 3px var(--c-bg), 0 0 0 4px var(--bk-gold); }
.cms-btn--ghost { border-color: var(--c-border-strong); }
.cms-btn--ghost:hover { border-color: var(--bk-gold); }

.bk-link {
    display: inline-flex;
    align-items: center;
    gap: 0.6rem;
    min-height: 44px;
    color: var(--c-text-strong);
    font-size: 0.8rem;
    font-weight: 600;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    text-decoration: none;
    background: linear-gradient(var(--bk-gold), var(--bk-gold)) 0 calc(100% - 8px) / 100% 1px no-repeat;
    transition: background-size var(--dur) var(--ease), color var(--dur) var(--ease);
}
.bk-link::after { content: "→"; font-weight: 400; transition: transform var(--dur) var(--ease); }
.bk-link:hover { color: var(--c-link); background-size: 40% 1px; }
.bk-link:hover::after { transform: translateX(4px); }

.bk-diamond {
    display: inline-block;
    width: 7px;
    height: 7px;
    margin-right: 0.7rem;
    border: 1px solid var(--bk-gold);
    transform: rotate(45deg) translateY(-2px);
}

.bk-ornament { display: block; width: 120px; height: 12px; color: var(--bk-gold); }

:focus-visible { outline-color: var(--bk-gold); }

/* Soft reveals (armed by barkhat.js only when motion is on). */
.bk-motion .bk-reveal {
    opacity: 0;
    transform: translateY(18px);
    transition: opacity 900ms var(--bk-ease), transform 900ms var(--bk-ease);
    transition-delay: calc(var(--i, 0) * 90ms);
}
.bk-motion .bk-reveal.is-in { opacity: 1; transform: none; }

/* -------------------------------------------------------------------------
   4. Header
   ------------------------------------------------------------------------- */
.bk-hdr {
    position: relative;
    z-index: 50;
    background: var(--c-bg);
}
.bk-hdr--sticky { position: sticky; top: 0; }

.bk-bar {
    background: var(--bk-plum);
    color: var(--bk-on-plum);
    font-size: 0.72rem;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}
html[data-barkhat-announce="off"] .bk-bar { display: none; }
.bk-bar__inner {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 1.5rem;
    min-height: 36px;
    padding-inline: var(--gutter);
}
.bk-bar__zone { display: flex; align-items: center; gap: 0 1.5rem; flex-wrap: wrap; justify-content: center; }
.bk-bar__zone--right { margin-left: auto; }
.bk-bar__text { display: inline-flex; align-items: center; gap: 0.5rem; margin: 0; }
.bk-bar__text + .bk-bar__text::before {
    content: "";
    width: 5px;
    height: 5px;
    margin-right: 1rem;
    border: 1px solid var(--bk-gold);
    transform: rotate(45deg);
}
.bk-bar .cms-icon, .bk-bar svg { width: 14px; height: 14px; color: var(--bk-gold); }
.bk-bar a { color: inherit; }

.bk-hdr__shell { padding: 0.9rem var(--gutter); }
.bk-hdr__capsule {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    gap: 1rem;
    max-width: var(--w-wide);
    min-height: 68px;
    margin-inline: auto;
    padding: 0.45rem 0.6rem 0.45rem 1.25rem;
    border: 1px solid color-mix(in srgb, var(--bk-gold) 45%, transparent);
    border-radius: 999px;
    background: color-mix(in srgb, var(--bk-paper-2) 86%, transparent);
    -webkit-backdrop-filter: blur(14px) saturate(1.2);
    backdrop-filter: blur(14px) saturate(1.2);
    box-shadow: 0 18px 40px -30px rgba(42, 15, 31, 0.55);
    transition: box-shadow var(--dur) var(--ease), min-height var(--dur) var(--ease);
}
.bk-hdr.is-scrolled .bk-hdr__capsule { box-shadow: 0 22px 48px -26px rgba(42, 15, 31, 0.6); }

html[data-barkhat-header="bar"] .bk-hdr { border-bottom: 1px solid var(--c-border); }
html[data-barkhat-header="bar"] .bk-hdr__shell { padding-block: 0; }
html[data-barkhat-header="bar"] .bk-hdr__capsule {
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    backdrop-filter: none;
    padding-inline: 0;
    min-height: 76px;
}
html[data-barkhat-header="centered"] .bk-hdr { border-bottom: 1px solid var(--c-border); }
html[data-barkhat-header="centered"] .bk-hdr__capsule {
    grid-template-columns: 1fr auto 1fr;
    grid-template-areas: ". brand right" "nav nav nav";
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    backdrop-filter: none;
    padding: 0.4rem 0 0;
}
html[data-barkhat-header="centered"] .bk-hdr__zone--left { grid-area: brand; justify-content: center; }
html[data-barkhat-header="centered"] .bk-hdr__zone--center { grid-area: nav; justify-content: center; border-top: 1px solid var(--c-border); padding-top: 0.2rem; }
html[data-barkhat-header="centered"] .bk-hdr__zone--right { grid-area: right; }
html[data-barkhat-header="centered"] .bk-logo__name { font-size: 2rem; }

.bk-hdr__zone { display: flex; align-items: center; gap: 0.75rem; min-width: 0; }
.bk-hdr__zone--center { justify-content: center; }
.bk-hdr__zone--right { justify-content: flex-end; gap: 0.25rem; }

.bk-logo {
    display: inline-flex;
    align-items: center;
    gap: 0.75rem;
    color: var(--c-text-strong);
    text-decoration: none;
}
.bk-logo__img { height: var(--logo-h, 40px); width: auto; }
.bk-logo__mono {
    position: relative;
    display: grid;
    place-items: center;
    width: 42px;
    height: 42px;
    flex: none;
    color: var(--bk-gold);
}
.bk-logo__mono svg { position: absolute; inset: 0; width: 100%; height: 100%; transition: transform 1.2s var(--bk-ease); }
.bk-logo:hover .bk-logo__mono svg { transform: rotate(90deg); }
.bk-logo__mono span {
    font-family: var(--bk-serif);
    font-size: 1.35rem;
    font-weight: 500;
    color: var(--bk-accent);
    line-height: 1;
}
.bk-logo__text { display: flex; flex-direction: column; line-height: 1; }
.bk-logo__name {
    font-family: var(--bk-serif);
    font-size: 1.65rem;
    font-weight: 500;
    letter-spacing: 0.04em;
}
.bk-logo__tagline { margin-top: 0.3rem; font-size: 0.62rem; letter-spacing: 0.16em; text-transform: uppercase; color: var(--c-text-muted); }

/* The default's menu, re-dressed: spaced capitals, a gold dot on hover. */
.bk-hdr .hdr-nav__list { gap: 0.2rem; }
.bk-hdr .hdr-nav__link {
    position: relative;
    padding: 0.7rem 0.85rem;
    font-size: 0.74rem;
    font-weight: 600;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: var(--c-text-strong);
    background: none;
}
.bk-hdr .hdr-nav__link::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 0.25rem;
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background: var(--bk-gold);
    opacity: 0;
    transform: translate(-50%, 4px);
    transition: opacity var(--dur) var(--ease), transform var(--dur) var(--ease);
}
.bk-hdr .hdr-nav__link:hover,
.bk-hdr .hdr-nav__link.is-active { color: var(--bk-accent); background: none; }
.bk-hdr .hdr-nav__link:hover::after,
.bk-hdr .hdr-nav__link.is-active::after { opacity: 1; transform: translate(-50%, 0); }
.bk-hdr .hdr-sub {
    border: 1px solid color-mix(in srgb, var(--bk-gold) 40%, transparent);
    border-radius: calc(var(--bk-r) + 4px);
    background: var(--bk-paper-2);
    box-shadow: var(--shadow-lg);
}
.bk-hdr .hdr-sub__link { font-family: var(--bk-serif); font-size: 1.15rem; }
.bk-hdr .hdr-sub__link:hover { color: var(--bk-accent); }

.bk-hdr__sub {
    display: flex;
    justify-content: center;
    gap: 1.5rem;
    padding-top: 0.6rem;
    font-size: 0.8rem;
}

.bk-burger {
    display: none;
    width: 46px;
    height: 46px;
    border-radius: 50%;
    border: 1px solid color-mix(in srgb, var(--bk-gold) 50%, transparent);
    background: transparent;
    color: var(--c-text-strong);
    place-items: center;
}
.bk-burger__lines { display: grid; gap: 6px; width: 18px; }
.bk-burger__lines span { display: block; height: 1px; background: currentColor; }
.bk-burger__lines span:last-child { width: 60%; justify-self: end; }

.bk-drawer {
    background: var(--bk-plum);
    color: var(--bk-on-plum);
    --c-text: var(--bk-on-plum);
    --c-text-strong: #fff5f3;
    --c-text-muted: var(--bk-on-plum-muted);
    --c-border: rgba(201, 164, 106, 0.25);
    --c-link: #f1d6a8;
}
.bk-drawer .bk-logo { color: #fff5f3; }
.bk-drawer .hdr-drawer__nav a,
.bk-drawer .hdr-drawer__nav button { font-family: var(--bk-serif); font-size: 1.5rem; color: #fff5f3; }
.bk-drawer__tagline { margin: 2rem 0 0; font-family: var(--bk-serif); font-size: 1.2rem; color: var(--bk-gold); }

@media (max-width: 1080px) {
    .bk-hdr__capsule { grid-template-columns: auto 1fr; padding-left: 1rem; }
    .bk-hdr__zone--center { display: none; }
    .bk-burger { display: grid; }
    html[data-barkhat-header="centered"] .bk-hdr__capsule { grid-template-columns: auto 1fr; grid-template-areas: "brand right"; }
    html[data-barkhat-header="centered"] .bk-hdr__zone--left { justify-content: flex-start; }
}
@media (max-width: 640px) {
    .bk-bar__zone .bk-bar__text:not(:first-child) { display: none; }
    .bk-hdr__shell { padding: 0.6rem 0.75rem; }
    .bk-hdr__capsule { min-height: 58px; padding: 0.3rem 0.35rem 0.3rem 0.7rem; }
    .bk-logo__mono { width: 34px; height: 34px; }
    .bk-logo__mono span { font-size: 1.1rem; }
    .bk-logo__name { font-size: 1.35rem; }
}

/* -------------------------------------------------------------------------
   5. Footer
   ------------------------------------------------------------------------- */
.bk-ftr {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    margin-top: 0;
    background: var(--bk-velvet);
    color: var(--c-text);
    font-size: 0.92rem;
}
html[data-barkhat-velvet="off"] .bk-ftr { background: var(--bk-plum); }
.bk-ftr__velvet { position: absolute; inset: 0; z-index: -1; }
.bk-ftr a { color: var(--c-text); text-decoration: none; }
.bk-ftr a:hover { color: var(--c-link); }

.bk-ftr__top {
    display: grid;
    grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr);
    gap: 3rem;
    align-items: end;
    padding-block: clamp(4rem, 3rem + 4vw, 7rem) 3rem;
    border-bottom: 1px solid var(--c-border);
}
.bk-ftr__mark .bk-ornament { margin-bottom: 1.5rem; }
.bk-ftr__word {
    margin: 0;
    font-family: var(--bk-serif);
    font-size: clamp(3.5rem, 2rem + 8vw, 9rem);
    font-weight: 300;
    line-height: 0.9;
    letter-spacing: 0.02em;
    color: #fff5f3;
}
.bk-ftr__tagline { margin: 1rem 0 0; color: var(--bk-gold); font-size: 0.75rem; letter-spacing: 0.2em; text-transform: uppercase; }
.bk-ftr__sub-title { font-size: 1.8rem; font-weight: 400; margin: 0 0 0.5rem; }
.bk-ftr__sub-lead { color: var(--c-text-muted); margin: 0 0 1rem; }

.bk-ftr__grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(12rem, 1fr));
    gap: 2.5rem 2rem;
    padding-block: 3.5rem;
}
.bk-ftr__col--about { grid-column: span 2; max-width: 26rem; }
.bk-ftr__title {
    margin: 0 0 1.1rem;
    font-family: var(--bk-sans);
    font-size: 0.7rem;
    font-weight: 600;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    color: var(--bk-gold);
}
.bk-ftr__about, .bk-ftr__text { margin: 0; color: var(--c-text-muted); line-height: 1.7; }
.bk-ftr__menu { list-style: none; margin: 0; padding: 0; display: grid; gap: 0.55rem; }
.bk-ftr__menu a { display: inline-block; padding-block: 0.15rem; }
.bk-ftr__contacts { font-style: normal; display: grid; gap: 0.6rem; }
.bk-ftr__contacts p { margin: 0; }
.bk-ftr__phone a { font-family: var(--bk-serif); font-size: 1.6rem; color: #fff5f3; }
.bk-ftr__phone span { display: block; font-size: 0.8rem; color: var(--c-text-muted); }
.bk-ftr__line { display: flex; gap: 0.6rem; align-items: flex-start; color: var(--c-text-muted); }
.bk-ftr__line svg { width: 16px; height: 16px; flex: none; margin-top: 0.2rem; color: var(--bk-gold); }
.bk-ftr__socials { margin-top: 1.4rem; }
.bk-ftr__socials a {
    border: 1px solid var(--c-border-strong);
    border-radius: 50%;
}
.bk-ftr__pay { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 0.5rem; }
.bk-ftr__pay-item {
    padding: 0.35rem 0.8rem;
    border: 1px solid var(--c-border-strong);
    border-radius: 999px;
    font-size: 0.72rem;
    letter-spacing: 0.08em;
    color: var(--c-text-muted);
}
.bk-ftr__bottom { border-top: 1px solid var(--c-border); }
.bk-ftr__bottom-inner {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.75rem 2rem;
    padding-block: 1.5rem;
    font-size: 0.8rem;
    color: var(--c-text-muted);
}
.bk-ftr__copy, .bk-ftr__company { margin: 0; }
.bk-ftr__links { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 0.5rem 1.5rem; }
.bk-ftr .site-footer__slot { margin-left: auto; }

@media (max-width: 760px) {
    .bk-ftr__top { grid-template-columns: 1fr; gap: 2rem; }
    .bk-ftr__col--about { grid-column: auto; }
    .bk-ftr .site-footer__slot { margin-left: 0; }
}

/* -------------------------------------------------------------------------
   6. Own blocks
   ------------------------------------------------------------------------- */

/* 6.1 Velvet cover */
.bk-hero {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    color: var(--bk-on-plum);
    background: var(--bk-velvet);
    --c-text: var(--bk-on-plum);
    --c-text-strong: #fff5f3;
    --c-text-muted: var(--bk-on-plum-muted);
    --c-accent: var(--bk-gold);
    --c-accent-hover: color-mix(in srgb, var(--barkhat-gold) 80%, #fff);
    --c-accent-contrast: var(--bk-plum);
    --c-link: #f1d6a8;
    --c-bg: var(--bk-plum);
}
html[data-barkhat-velvet="off"] .bk-hero { background: var(--bk-plum); }
.bk-hero--screen { min-height: min(calc(100svh - 8rem), 52rem); }
.bk-hero--tall { min-height: min(75svh, 46rem); }

.bk-hero__velvet { position: absolute; inset: 0; z-index: -1; pointer-events: none; }
.bk-hero__velvet span {
    position: absolute;
    border-radius: 50%;
    filter: blur(60px);
    opacity: 0.55;
}
.bk-hero__velvet span:first-child {
    width: 46vw; height: 46vw; left: -10vw; top: -12vw;
    background: radial-gradient(circle, rgba(176, 72, 108, 0.7), transparent 65%);
    animation: bk-drift 22s ease-in-out infinite alternate;
}
.bk-hero__velvet span:last-child {
    width: 38vw; height: 38vw; right: -6vw; bottom: -14vw;
    background: radial-gradient(circle, rgba(201, 164, 106, 0.35), transparent 65%);
    animation: bk-drift 28s ease-in-out infinite alternate-reverse;
}
@keyframes bk-drift {
    to { transform: translate(6vw, 4vw) scale(1.12); }
}
html[data-barkhat-motion="off"] .bk-hero__velvet span { animation: none; }

.bk-hero__inner {
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.9fr);
    gap: clamp(2rem, 5vw, 6rem);
    align-items: center;
    width: min(100% - 2 * var(--gutter), var(--w-wide));
    min-height: inherit;
    margin-inline: auto;
    padding-block: clamp(3rem, 6vw, 6rem);
}
.bk-hero--screen .bk-hero__inner { min-height: min(calc(100svh - 8rem), 52rem); }
.bk-hero__eyebrow {
    display: flex;
    align-items: center;
    margin: 0 0 1.75rem;
    font-size: 0.74rem;
    font-weight: 600;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    color: var(--bk-gold);
}
.bk-hero__title {
    margin: 0;
    max-width: 14ch;
    font-family: var(--bk-serif);
    font-size: clamp(2.9rem, 1.6rem + 5.4vw, 6.4rem);
    font-weight: 300;
    line-height: 0.98;
    letter-spacing: -0.01em;
    color: #fff5f3;
}
.bk-hero__lead {
    max-width: 34rem;
    margin: 1.75rem 0 0;
    font-size: clamp(1rem, 0.95rem + 0.35vw, 1.2rem);
    line-height: 1.65;
    color: var(--bk-on-plum-muted);
}
.bk-hero__actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 1rem 2rem;
    margin: 2.5rem 0 0;
}
.bk-hero .bk-link { color: #fff5f3; }
.bk-hero__promises {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem 1.75rem;
    list-style: none;
    margin: 3rem 0 0;
    padding: 1.4rem 0 0;
    border-top: 1px solid rgba(201, 164, 106, 0.3);
    font-size: 0.8rem;
    letter-spacing: 0.06em;
    color: var(--bk-on-plum-muted);
}
.bk-hero__promises li { display: inline-flex; align-items: center; gap: 0.6rem; }
.bk-hero__promises li::before {
    content: "";
    width: 6px;
    height: 6px;
    border: 1px solid var(--bk-gold);
    transform: rotate(45deg);
}

.bk-hero__arch {
    position: relative;
    justify-self: center;
    width: min(100%, 30rem);
    margin: 0;
}
.bk-hero__frame {
    position: relative;
    display: block;
    aspect-ratio: 3 / 4.1;
    overflow: hidden;
    border-radius: 999px 999px 18px 18px;
    background: linear-gradient(160deg, var(--bk-plum-3), var(--bk-plum-2));
    box-shadow: 0 50px 90px -40px rgba(0, 0, 0, 0.7);
}
.bk-hero__img { width: 100%; height: 100%; object-fit: cover; }
html:not([data-barkhat-motion="off"]) .bk-hero__img { animation: bk-breathe 18s ease-in-out infinite alternate; }
@keyframes bk-breathe { to { transform: scale(1.06); } }
.bk-hero__ring {
    position: absolute;
    inset: -18px;
    border: 1px solid rgba(201, 164, 106, 0.55);
    border-radius: 999px 999px 26px 26px;
    pointer-events: none;
}
.bk-hero__ring::after {
    content: "";
    position: absolute;
    inset: 8px;
    border: 1px dashed rgba(201, 164, 106, 0.25);
    border-radius: inherit;
}
.bk-hero__caption {
    margin-top: 1.75rem;
    text-align: center;
    font-family: var(--bk-serif);
    font-style: italic;
    font-size: 1.05rem;
    color: var(--bk-on-plum-muted);
}

.bk-hero--full { background: var(--bk-plum); }
.bk-hero__bg { position: absolute; inset: 0; z-index: -2; margin: 0; }
.bk-hero__bg-img { width: 100%; height: 100%; object-fit: cover; opacity: 0.55; }
.bk-hero--full .bk-hero__inner { grid-template-columns: minmax(0, 1fr); }
.bk-hero--full .bk-hero__velvet { background: linear-gradient(90deg, rgba(42, 15, 31, 0.85), rgba(42, 15, 31, 0.2)); }
.bk-hero__caption--full { position: absolute; right: var(--gutter); bottom: 1.5rem; margin: 0; }

@media (max-width: 860px) {
    .bk-hero__inner { grid-template-columns: 1fr; padding-top: 2rem; }
    .bk-hero--screen .bk-hero__inner { min-height: 0; }
    .bk-hero__arch { width: min(78%, 22rem); order: -1; }
}

/* 6.2 Privacy promises */
.bk-promises__list {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 14rem), 1fr));
    gap: 2.5rem 2rem;
    list-style: none;
    margin: 0;
    padding: 0;
}
.bk-promises__item { text-align: center; padding-inline: 0.5rem; }
.bk-promises__medal {
    position: relative;
    display: grid;
    place-items: center;
    width: 76px;
    height: 76px;
    margin: 0 auto 1.4rem;
    border: 1px solid var(--bk-gold);
    border-radius: 50%;
    color: var(--bk-gold);
}
.bk-promises__medal::after {
    content: "";
    position: absolute;
    inset: 5px;
    border: 1px solid color-mix(in srgb, var(--bk-gold) 35%, transparent);
    border-radius: 50%;
}
.bk-promises__medal svg { width: 26px; height: 26px; stroke-width: 1.3; }
.bk-promises__title { margin: 0 0 0.6rem; font-size: 1.55rem; font-weight: 500; line-height: 1.15; }
.bk-promises__text { margin: 0 auto; max-width: 17rem; color: var(--c-text-muted); font-size: 0.93rem; line-height: 1.65; }
.bk-promises__note {
    margin: 3rem auto 0;
    max-width: 36rem;
    text-align: center;
    font-family: var(--bk-serif);
    font-style: italic;
    font-size: 1.15rem;
    color: var(--c-text-muted);
}

/* 6.3 Collections in arches */
.bk-cols__list {
    display: grid;
    grid-template-columns: repeat(var(--n), minmax(0, 1fr));
    gap: clamp(1rem, 2vw, 2rem);
    list-style: none;
    margin: 0;
    padding: 0;
}
.bk-cols__item:nth-child(even) { margin-top: 3rem; }
.bk-cols__link { display: flex; flex-direction: column; align-items: center; text-align: center; color: inherit; text-decoration: none; }
.bk-cols__arch {
    position: relative;
    display: block;
    width: 100%;
    aspect-ratio: 3 / 4.4;
    overflow: hidden;
    border-radius: var(--bk-arch);
    background: linear-gradient(170deg, var(--bk-blush), var(--bk-sunk));
}
.bk-cols__arch::after {
    content: "";
    position: absolute;
    inset: 8px;
    border: 1px solid rgba(255, 245, 243, 0.55);
    border-radius: inherit;
    opacity: 0;
    transition: opacity var(--dur) var(--ease);
}
.bk-cols__img { width: 100%; height: 100%; object-fit: cover; transition: transform 1.4s var(--bk-ease); }
.bk-cols__link:hover .bk-cols__img { transform: scale(1.05); }
.bk-cols__link:hover .bk-cols__arch::after { opacity: 1; }
.bk-cols__num {
    margin-top: 1.4rem;
    font-family: var(--bk-serif);
    font-size: 0.95rem;
    letter-spacing: 0.18em;
    color: var(--bk-gold-ink);
}
.bk-cols__title { margin: 0.35rem 0 0; font-size: clamp(1.4rem, 1.1rem + 0.8vw, 1.9rem); font-weight: 500; }
.bk-cols__note { margin-top: 0.35rem; color: var(--c-text-muted); font-size: 0.88rem; }
.bk-cols__more {
    margin-top: 0.9rem;
    font-size: 0.7rem;
    font-weight: 600;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: var(--bk-accent);
}
@media (max-width: 900px) {
    .bk-cols__list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .bk-cols__item:nth-child(even) { margin-top: 2rem; }
    .bk-cols__item:last-child:nth-child(odd) { grid-column: 1 / -1; width: 60%; justify-self: center; }
}

/* 6.4 Manifesto */
.bk-mani { display: grid; justify-items: center; text-align: center; }
.bk-mani__text { display: grid; justify-items: center; gap: 1.5rem; max-width: 50rem; }
.bk-mani__eyebrow { margin: 0; font-size: 0.72rem; font-weight: 600; letter-spacing: 0.22em; text-transform: uppercase; color: var(--bk-gold-ink); }
.bk-mani__statement {
    margin: 0;
    font-family: var(--bk-serif);
    font-size: clamp(1.8rem, 1.2rem + 2.4vw, 3.3rem);
    font-weight: 400;
    line-height: 1.18;
    color: var(--c-text-strong);
}
.bk-mani__body { max-width: 36rem; color: var(--c-text-muted); }
.bk-mani__body p { margin: 0; }
.bk-mani__sign { margin: 0; font-family: var(--bk-serif); font-style: italic; font-size: 1.2rem; color: var(--bk-accent); }
.bk-mani__more { margin: 0; }
.bk-mani--img {
    grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
    gap: clamp(2rem, 6vw, 7rem);
    align-items: center;
    text-align: left;
}
.bk-mani--img .bk-mani__text { justify-items: start; }
.bk-mani__pic {
    margin: 0;
    width: 100%;
    aspect-ratio: 4 / 5;
    overflow: hidden;
    border-radius: 50% / 38%;
    box-shadow: var(--shadow-lg);
}
.bk-mani__img { width: 100%; height: 100%; object-fit: cover; }
@media (max-width: 860px) {
    .bk-mani--img { grid-template-columns: 1fr; text-align: center; }
    .bk-mani--img .bk-mani__text { justify-items: center; }
    .bk-mani__pic { width: min(80%, 22rem); justify-self: center; }
}

/* 6.5 Discreet parcel */
.bk-parcel {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: clamp(2rem, 6vw, 6rem);
    align-items: center;
}
.bk-parcel__media { position: relative; padding-bottom: 3rem; }
.bk-parcel__pic {
    margin: 0;
    aspect-ratio: 4 / 3;
    overflow: hidden;
    border-radius: calc(var(--bk-r) * 1.6);
    background: var(--bk-sunk);
}
.bk-parcel__img { width: 100%; height: 100%; object-fit: cover; }
.bk-parcel__label {
    position: absolute;
    right: clamp(-1rem, -2vw, 0rem);
    bottom: 0;
    width: min(19rem, 80%);
    padding: 1.2rem 1.3rem 1rem;
    background: #fbfaf7;
    color: #2d2a27;
    border-radius: 6px;
    box-shadow: 0 24px 50px -24px rgba(42, 15, 31, 0.45);
    transform: rotate(-2.5deg);
    font-family: ui-monospace, 'SFMono-Regular', Consolas, monospace;
    font-size: 0.78rem;
}
.bk-parcel__label-title {
    margin: 0 0 0.75rem;
    padding-bottom: 0.5rem;
    border-bottom: 1px dashed #bdb5aa;
    font-family: var(--bk-sans);
    font-size: 0.66rem;
    font-weight: 700;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: #6b625a;
}
.bk-parcel__label-list { margin: 0; display: grid; gap: 0.35rem; }
.bk-parcel__label-list div { display: flex; gap: 0.5rem; }
.bk-parcel__label-list dt { color: #7a7168; }
.bk-parcel__label-list dt::after { content: ":"; }
.bk-parcel__label-list dd { margin: 0; color: #211e1b; }
.bk-parcel__barcode {
    display: block;
    height: 26px;
    margin-top: 0.8rem;
    background: repeating-linear-gradient(90deg, #2d2a27 0 2px, transparent 2px 4px, #2d2a27 4px 5px, transparent 5px 8px, #2d2a27 8px 11px, transparent 11px 12px);
    opacity: 0.85;
}
.bk-parcel__text { color: var(--c-text-muted); font-size: 1.05rem; }
.bk-parcel__steps { list-style: none; margin: 2rem 0 0; padding: 0; display: grid; gap: 0; }
.bk-parcel__step {
    position: relative;
    display: grid;
    grid-template-columns: 3.2rem 1fr;
    column-gap: 1rem;
    padding: 1.2rem 0;
    border-top: 1px solid var(--c-border);
}
.bk-parcel__num {
    grid-row: span 2;
    font-family: var(--bk-serif);
    font-size: 2rem;
    line-height: 1;
    color: var(--bk-gold-ink);
}
.bk-parcel__step-title { margin: 0; font-size: 1.4rem; font-weight: 500; }
.bk-parcel__step-text { margin: 0.35rem 0 0; color: var(--c-text-muted); font-size: 0.93rem; }
.bk-parcel__more { margin: 2rem 0 0; }
@media (max-width: 860px) {
    .bk-parcel { grid-template-columns: 1fr; }
    .bk-parcel__label { right: 0.5rem; }
}

/* 6.6 Gift certificate */
.bk-gift {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: clamp(2rem, 6vw, 6rem);
    align-items: center;
}
.bk-gift__card-wrap { perspective: 1200px; display: grid; place-items: center; padding: 2rem 0; }
.bk-gift__card {
    position: relative;
    width: min(100%, 30rem);
    aspect-ratio: 1.6;
    padding: clamp(1.4rem, 3vw, 2.2rem);
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    gap: 0.2rem;
    border-radius: 20px;
    background:
        radial-gradient(120% 90% at 0% 0%, rgba(176, 72, 108, 0.55), transparent 60%),
        radial-gradient(80% 80% at 100% 100%, rgba(201, 164, 106, 0.3), transparent 60%),
        linear-gradient(140deg, #4a1731, #240a18);
    color: #fff5f3;
    box-shadow: 0 50px 80px -40px rgba(0, 0, 0, 0.8), inset 0 0 0 1px rgba(201, 164, 106, 0.55), inset 0 0 0 9px rgba(0, 0, 0, 0.12), inset 0 0 0 10px rgba(201, 164, 106, 0.3);
    transform: rotate(-4deg);
    transition: transform 700ms var(--bk-ease);
}
.bk-gift__card:hover { transform: rotate(-1deg) translateY(-8px); }
html[data-barkhat-motion="off"] .bk-gift__card:hover { transform: rotate(-4deg); }
.bk-gift__ring {
    position: absolute;
    top: clamp(1.2rem, 3vw, 2rem);
    right: clamp(1.2rem, 3vw, 2rem);
    display: grid;
    place-items: center;
    width: 58px;
    height: 58px;
    border: 1px solid var(--bk-gold);
    border-radius: 50%;
    font-family: var(--bk-serif);
    font-size: 1.7rem;
    color: var(--bk-gold);
}
.bk-gift__brand { margin: 0 0 auto; font-family: var(--bk-serif); font-size: 1.5rem; letter-spacing: 0.1em; color: var(--bk-gold); position: absolute; top: clamp(1.4rem, 3vw, 2.2rem); left: clamp(1.4rem, 3vw, 2.2rem); }
.bk-gift__card-title { margin: 0; font-size: 0.68rem; letter-spacing: 0.24em; text-transform: uppercase; color: #e7cdd2; }
.bk-gift__amount { margin: 0; font-family: var(--bk-serif); font-size: clamp(2.2rem, 1.6rem + 2vw, 3.2rem); font-weight: 400; line-height: 1.05; }
.bk-gift__note { margin: 0.3rem 0 0; font-size: 0.72rem; color: #cfb2b8; }
.bk-gift__eyebrow { display: flex; align-items: center; margin: 0 0 1.25rem; font-size: 0.72rem; font-weight: 600; letter-spacing: 0.22em; text-transform: uppercase; color: var(--bk-gold); }
.bk-gift__text { color: var(--c-text-muted); font-size: 1.05rem; }
.bk-gift__amounts { display: flex; flex-wrap: wrap; gap: 0.6rem; list-style: none; margin: 1.75rem 0 0; padding: 0; }
.bk-gift__amounts li {
    padding: 0.55rem 1.1rem;
    border: 1px solid var(--c-border-strong);
    border-radius: 999px;
    font-family: var(--bk-serif);
    font-size: 1.2rem;
    color: var(--c-text-strong);
}
.bk-gift__actions { display: flex; flex-wrap: wrap; align-items: center; gap: 1rem 2rem; margin: 2.25rem 0 0; }
@media (max-width: 860px) {
    .bk-gift { grid-template-columns: 1fr; }
}

/* 6.7 Journal */
.bk-journal__list {
    display: grid;
    grid-template-columns: 1.25fr 1fr 1fr;
    gap: clamp(1.25rem, 3vw, 2.5rem);
    list-style: none;
    margin: 0;
    padding: 0;
}
.bk-journal__post { display: flex; flex-direction: column; }
.bk-journal__cover {
    aspect-ratio: 4 / 5;
    overflow: hidden;
    border-radius: 200px 200px var(--bk-r) var(--bk-r);
    background: var(--bk-sunk);
}
.bk-journal__item:first-child .bk-journal__cover { aspect-ratio: 4 / 4.6; }
.bk-journal__img { width: 100%; height: 100%; object-fit: cover; transition: transform 1.4s var(--bk-ease); }
.bk-journal__post:hover .bk-journal__img { transform: scale(1.04); }
.bk-journal__meta {
    display: flex;
    gap: 1rem;
    margin: 1.2rem 0 0.4rem;
    font-size: 0.7rem;
    font-weight: 600;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: var(--bk-gold-ink);
}
.bk-journal__title { margin: 0; font-size: clamp(1.35rem, 1.1rem + 0.7vw, 1.8rem); font-weight: 500; line-height: 1.15; }
.bk-journal__link { color: inherit; text-decoration: none; }
.bk-journal__link::after { content: ""; position: absolute; inset: 0; }
.bk-journal__post { position: relative; }
.bk-journal__link:hover { color: var(--bk-accent); }
.bk-journal__excerpt { margin: 0.6rem 0 0; color: var(--c-text-muted); font-size: 0.93rem; line-height: 1.6; }
.bk-journal__more { margin: 2.5rem 0 0; }
@media (max-width: 900px) {
    .bk-journal__list { grid-template-columns: 1fr; max-width: 30rem; }
}

/* -------------------------------------------------------------------------
   7. Shared blocks, re-dressed
   ------------------------------------------------------------------------- */

/* Questions */
.cms-block--faq details, .cms-faq__item { border-color: var(--c-border); }
.cms-block--faq summary {
    font-family: var(--bk-serif);
    font-size: clamp(1.2rem, 1.05rem + 0.5vw, 1.5rem);
    font-weight: 500;
    color: var(--c-text-strong);
}
.cms-block--faq summary::marker { color: var(--bk-gold); }

/* Reviews */
.cms-block--testimonials blockquote,
.cms-block--testimonials .cms-quote__text,
.cms-block--testimonials q {
    font-family: var(--bk-serif);
    font-size: 1.3rem;
    line-height: 1.4;
    color: var(--c-text-strong);
}

/* Stats */
.cms-block--stats .cms-stat__value,
.cms-block--stats [class*="__value"] {
    font-family: var(--bk-serif);
    font-weight: 400;
    color: var(--c-mark-text);
}

/* Newsletter and forms: pill fields with a gold focus. */
.cms-input, .cms-field input, .cms-field textarea, .cms-field select,
.cms-block--newsletter input[type="email"] {
    border-radius: var(--bk-r);
    border-color: var(--c-border-strong);
    background: var(--c-surface);
}
.cms-block--newsletter input[type="email"] { border-radius: 999px; }
input:focus-visible, textarea:focus-visible, select:focus-visible { outline: 2px solid var(--bk-gold); outline-offset: 1px; }

/* Cards of other blocks */
.cms-card { border-radius: var(--bk-r); }

/* -------------------------------------------------------------------------
   8. Shop
   ------------------------------------------------------------------------- */
.shop-card.shop-card--grid,
.shop-card:not(.shop-card--row) {
    border: 0;
    background: transparent;
    box-shadow: none;
    text-align: center;
}
.shop-card__media {
    border-radius: var(--bk-r);
    background: linear-gradient(170deg, var(--bk-paper-2), var(--bk-sunk));
    overflow: hidden;
}
html[data-barkhat-cards="arch"] .shop-card:not(.shop-card--row) .shop-card__media { border-radius: 999px 999px var(--bk-r) var(--bk-r); }
html[data-barkhat-cards="frame"] .shop-card:not(.shop-card--row) .shop-card__media {
    border-radius: 2px;
    outline: 1px solid var(--bk-gold);
    outline-offset: -10px;
}
.shop-card__img { transition: transform 1.2s var(--bk-ease); }
.shop-card:hover .shop-card__img { transform: scale(1.04); }
.shop-card__body { padding-inline: 0.25rem; }
.shop-card:not(.shop-card--row) .shop-card__body { align-items: center; }
.shop-card__title { font-family: var(--bk-serif); font-size: 1.3rem; font-weight: 500; line-height: 1.2; }
.shop-card__link { color: var(--c-text-strong); }
.shop-card__link:hover { color: var(--bk-accent); }
.shop-card__brand { font-size: 0.68rem; letter-spacing: 0.18em; text-transform: uppercase; color: var(--bk-gold-ink); }
.shop-card:not(.shop-card--row) .shop-card__foot { justify-content: center; }
.shop-card:not(.shop-card--row) .shop-pick__options { justify-content: center; }
.shop-price__now, .shop-price__value { font-family: var(--bk-serif); font-weight: 500; font-size: 1.35em; color: var(--c-text-strong); }
.shop-price__old, .shop-price__was { color: var(--c-text-faint); }
.shop-price__off { background: var(--bk-accent); color: #fff8f5; border-radius: 999px; }
.shop-pick__chip { border-radius: 999px; }
.shop-sticker { border-radius: 999px; font-size: 0.62rem; letter-spacing: 0.14em; text-transform: uppercase; font-weight: 600; }
.shop-card .shop-card__btn { min-height: 44px; padding-inline: 1.3rem; }

.shop-product__title { font-family: var(--bk-serif); font-weight: 400; font-size: clamp(2.1rem, 1.6rem + 2vw, 3.2rem); line-height: 1.05; }
.shop-product__lead { color: var(--c-text-muted); }

.shop-catimg { border-radius: var(--bk-r); overflow: hidden; }

@media (prefers-reduced-motion: reduce) {
    .bk-hero__velvet span, .bk-hero__img { animation: none !important; }
    .bk-motion .bk-reveal { opacity: 1; transform: none; transition: none; }
    .bk-cols__img, .shop-card__img, .bk-journal__img, .bk-gift__card, .bk-logo__mono svg { transition: none; }
}

/* -------------------------------------------------------------------------
   9. Fit and finish
   ------------------------------------------------------------------------- */
.bk-hdr__capsule { grid-template-columns: auto minmax(0, 1fr) auto; }
.bk-hdr__zone--right { min-width: 0; }
.bk-hdr .shop-hsearch-wrap, .bk-hdr .shop-hsearch { max-width: 15rem; min-width: 0; }
.bk-hdr .shop-minicart__label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
@media (max-width: 1280px) {
    .bk-hdr .hdr-mod--shop-search { display: none; }
}
@media (max-width: 1080px) {
    .bk-hdr__capsule { grid-template-columns: auto minmax(0, 1fr); }
}
@media (max-width: 640px) {
    .bk-hdr__zone--right { gap: 0; }
    .bk-hdr__zone--right .hdr-el:not(.hdr-el--mobile) { display: none; }
    .bk-burger { width: 42px; height: 42px; }
}

/* Stickers sit inside the arch, below its curve. */
html[data-barkhat-cards="arch"] .shop-card:not(.shop-card--row) .shop-stickers { top: 22%; left: 0.75rem; }
html[data-barkhat-cards="arch"] .shop-card:not(.shop-card--row) .shop-toggles { top: 22%; right: 0.75rem; }
.shop-sticker { background: var(--bk-plum); color: #f6e6e4; }
.shop-sticker--sale { background: var(--bk-accent); }
.shop-card__foot { margin-top: auto; }

.bk-journal__list { grid-template-columns: repeat(3, minmax(0, 1fr)); align-items: start; }
.bk-journal__item:first-child .bk-journal__cover { aspect-ratio: 4 / 5; }

.cms-rating, .cms-stars, [class*="__stars"], [class*="rating__star"] { color: var(--bk-gold); }
@media (max-width: 860px) {
    .bk-parcel__label { transform: none; right: 0.75rem; left: 0.75rem; width: auto; }
}
.bk-cols, .bk-parcel, .bk-gift { overflow-x: clip; }
.bk-hero__velvet { overflow: hidden; }
@media (max-width: 900px) {
    .bk-journal__list { grid-template-columns: minmax(0, 1fr); }
}
.shop-card:not(.shop-card--row) .shop-card__foot { align-items: center; text-align: center; }
.shop-card:not(.shop-card--row) .shop-price { justify-content: center; }

/* The shared 18+ confirmation, dressed as a velvet card. */
.bk-body .cms-agegate { background: rgba(26, 8, 18, 0.72); -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); }
.bk-body .cms-agegate__box,
.bk-body .cms-agegate-page {
    background: linear-gradient(160deg, var(--bk-plum-2), var(--bk-plum));
    color: var(--bk-on-plum);
    border: 1px solid rgba(201, 164, 106, 0.45);
    border-radius: calc(var(--bk-r) * 1.4);
    --c-text: var(--bk-on-plum);
    --c-text-strong: #fff5f3;
    --c-accent: var(--bk-gold);
    --c-accent-hover: color-mix(in srgb, var(--barkhat-gold) 80%, #fff);
    --c-accent-contrast: var(--bk-plum);
    --c-border-strong: rgba(201, 164, 106, 0.45);
}
.bk-body .cms-agegate__age,
.bk-body .cms-agegate-page__age { font-family: var(--bk-serif); color: var(--bk-gold); border-color: var(--bk-gold); }
.bk-body .cms-agegate__title,
.bk-body .cms-agegate-page__title { font-family: var(--bk-serif); font-weight: 400; color: #fff5f3; }
.bk-body .cms-agegate__text,
.bk-body .cms-agegate-page__text { color: var(--bk-on-plum-muted); }
