/* =========================================================
   HOME.CSS — Kitchen Home Page

   01. HERO
   02. EDITORIAL METHOD
   03. FEATURED GUIDES
   04. RESPONSIVE
   99. ANIMATIONS

   Structure rule:
   - each section is grouped in order
   - typography lives inside the same section group
   - card tags and card numbering are slightly enlarged
   ========================================================= */


/* =========================================================
   01. HERO
   ========================================================= */


/* ---------- 01. HERO / section base + background ---------- */


.kitchen-hero {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    padding: clamp(78px, 6.7vw, 108px) 0 clamp(180px, 5.8vw, 116px);
    background: var(--ks-bg);
    color: var(--ks-ink);
}

.kitchen-hero__grain {
    position: absolute;
    inset: 0;
    z-index: -6;
    background-image:
        linear-gradient(rgba(31, 37, 36, 0.04) 1px, transparent 1px),
        linear-gradient(90deg, rgba(31, 37, 36, 0.04) 1px, transparent 1px);
    background-size: 46px 46px;
    opacity: 0.28;
    pointer-events: none;
}

.kitchen-hero__decor {
    position: absolute;
    z-index: -5;
    pointer-events: none;
}

.kitchen-hero__decor--one {
    top: 58px;
    right: clamp(12px, 3.8vw, 70px);
    width: clamp(250px, 27vw, 450px);
    height: clamp(250px, 27vw, 450px);
    border: 1px solid rgba(31, 37, 36, 0.12);
    background:
        repeating-linear-gradient(-45deg,
            rgba(31, 37, 36, 0.055) 0,
            rgba(31, 37, 36, 0.055) 1px,
            transparent 1px,
            transparent 13px);
    animation: kitchenFloatSlow 8s ease-in-out infinite;
}

.kitchen-hero__decor--two {
    left: -104px;
    bottom: 18px;
    width: clamp(340px, 39vw, 660px);
    height: clamp(340px, 39vw, 660px);
    border-radius: 50%;
    background: rgba(255, 250, 242, 0.58);
    box-shadow: inset 0 0 0 1px rgba(31, 37, 36, 0.06);
    animation: kitchenFloatSoft 10s ease-in-out infinite;
}

.kitchen-hero::before {
    content: "";
    position: absolute;
    top: 13%;
    right: -4vw;
    z-index: -4;
    width: 54vw;
    height: 73%;
    background: rgba(95, 108, 88, 0.105);
    clip-path: polygon(18% 0, 100% 0, 100% 100%, 0 84%);
    pointer-events: none;
}

.kitchen-hero::after {
    content: "";
    position: absolute;
    left: -10vw;
    top: 28%;
    z-index: -4;
    width: 32vw;
    height: 32vw;
    min-width: 430px;
    min-height: 430px;
    border: 1px solid rgba(31, 37, 36, 0.07);
    border-radius: 50%;
    pointer-events: none;
}


/* ---------- 01. HERO / layout ---------- */


.kitchen-hero__inner {
    position: relative;
    z-index: 2;
    width: min(var(--ks-container), calc(100% - 64px));
    margin: 0 auto;
    display: grid;
    grid-template-columns: minmax(0, 0.8fr) minmax(660px, 1.1fr);
    align-items: center;
    gap: clamp(56px, 6vw, 100px);
}

.kitchen-hero__content {
    max-width: 690px;
    animation: kitchenFadeUp 720ms var(--ks-ease) both;
}

.kitchen-hero__visual {
    position: relative;
    min-height: 675px;
    animation: kitchenFadeIn 820ms var(--ks-ease) 120ms both;
}


/* ---------- 01. HERO / typography ---------- */


.kitchen-hero__eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 13px;
    margin: 0 0 24px;
    color: var(--ks-olive-dark);
    font-size: 0.74rem;
    font-weight: 860;
    letter-spacing: 0.17em;
    line-height: 1;
    text-transform: uppercase;
}

.kitchen-hero__eyebrow::before {
    content: "";
    width: 34px;
    height: 1px;
    background: currentColor;
}

.kitchen-hero__title {
    max-width: 680px;
    margin: 0;
    color: var(--ks-heading);
    font-size: clamp(3rem, 4.55vw, 4.85rem);
    font-weight: 900;
    line-height: 1;
    letter-spacing: -0.063em;
    text-wrap: balance;
}

.kitchen-hero__lead {
    max-width: 640px;
    margin: 27px 0 0;
    color: var(--ks-muted);
    font-size: clamp(1.04rem, 1.06vw, 1.14rem);
    line-height: 1.72;
}


/* ---------- 01. HERO / buttons + proof tags ---------- */


.kitchen-hero__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    margin-top: 34px;
}

.kitchen-hero__button {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 56px;
    padding: 0 29px;
    overflow: hidden;
    border: 1px solid transparent;
    color: inherit;
    text-decoration: none;
    font-size: 0.75rem;
    font-weight: 860;
    letter-spacing: 0.13em;
    line-height: 1;
    text-transform: uppercase;
    transition:
        transform 180ms ease,
        background-color 180ms ease,
        border-color 180ms ease,
        color 180ms ease,
        box-shadow 180ms ease;
}

.kitchen-hero__button::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(110deg, transparent 0%, rgba(255, 255, 255, 0.22) 48%, transparent 100%);
    transform: translateX(-120%);
    transition: transform 420ms ease;
}

.kitchen-hero__button:hover,
.kitchen-hero__button:focus-visible {
    transform: translateY(-2px);
}

.kitchen-hero__button:hover::after,
.kitchen-hero__button:focus-visible::after {
    transform: translateX(120%);
}

.kitchen-hero__button--primary {
    background: var(--ks-charcoal);
    border-color: var(--ks-charcoal);
    color: var(--ks-surface);
    box-shadow: 0 16px 30px rgba(34, 40, 39, 0.14);
}

.kitchen-hero__button--primary:hover,
.kitchen-hero__button--primary:focus-visible {
    background: var(--ks-accent-dark);
    border-color: var(--ks-accent-dark);
    box-shadow: 0 18px 36px rgba(143, 78, 53, 0.2);
}

.kitchen-hero__button--secondary {
    background: rgba(255, 250, 242, 0.72);
    border-color: rgba(31, 37, 36, 0.17);
    color: var(--ks-charcoal);
    backdrop-filter: blur(8px);
}

.kitchen-hero__button--secondary:hover,
.kitchen-hero__button--secondary:focus-visible {
    background: var(--ks-surface);
    border-color: rgba(31, 37, 36, 0.3);
}

.kitchen-hero__proof {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 26px;
}

.kitchen-hero__proof span {
    display: inline-flex;
    align-items: center;
    min-height: 33px;
    padding: 0 13px;
    border: 1px solid rgba(31, 37, 36, 0.12);
    background: rgba(255, 250, 242, 0.58);
    color: var(--ks-muted);
    font-size: 0.8rem;
    font-weight: 720;
    line-height: 1;
    backdrop-filter: blur(8px);
}


/* ---------- 01. HERO / image + floating notes ---------- */


.kitchen-hero__image-card {
    position: relative;
    z-index: 2;
    width: min(100%, 860px);
    height: min(675px, 44vw);
    min-height: 590px;
    margin-left: auto;
    overflow: hidden;
    background: #d9d1c7;
    box-shadow: var(--ks-shadow-lg);
}

.kitchen-hero__image-card::before {
    content: "";
    position: absolute;
    inset: 18px;
    z-index: 2;
    border: 1px solid rgba(255, 250, 242, 0.58);
    pointer-events: none;
}

.kitchen-hero__image-card::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    background:
        linear-gradient(to bottom, rgba(21, 25, 24, 0.02), rgba(21, 25, 24, 0.16)),
        linear-gradient(110deg, rgba(255, 250, 242, 0.08), transparent 42%);
    pointer-events: none;
}

.kitchen-hero__image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transform: scale(1.02);
    animation: kitchenImageDrift 12s ease-in-out infinite alternate;
}

.kitchen-hero__floating {
    position: absolute;
    z-index: 4;
    background: rgba(255, 250, 242, 0.92);
    border: 1px solid rgba(31, 37, 36, 0.12);
    box-shadow: var(--ks-shadow-md);
    backdrop-filter: blur(12px);
}

.kitchen-hero__floating--top {
    top: 48px;
    left: -34px;
    width: min(310px, 60%);
    padding: 24px 26px;
    animation: kitchenFloatCard 6s ease-in-out infinite;
}

.kitchen-hero__floating-label {
    display: block;
    margin-bottom: 10px;
    color: var(--ks-accent-dark);
    font-size: 0.67rem;
    font-weight: 860;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}

.kitchen-hero__floating strong {
    display: block;
    color: var(--ks-heading);
    font-size: 1.1rem;
    font-weight: 820;
    line-height: 1.24;
    letter-spacing: -0.03em;
}

.kitchen-hero__floating--bottom {
    right: 42px;
    bottom: -32px;
    display: grid;
    grid-template-columns: auto 1fr;
    align-items: center;
    gap: 16px;
    width: min(320px, 64%);
    padding: 20px 24px;
    background: var(--ks-charcoal);
    border-color: rgba(255, 250, 242, 0.12);
    color: var(--ks-surface);
    animation: kitchenFloatCard 7s ease-in-out 500ms infinite;
}

.kitchen-hero__floating-number {
    color: var(--ks-accent-soft);
    font-size: 2.7rem;
    font-weight: 890;
    line-height: 1;
    letter-spacing: -0.06em;
}

.kitchen-hero__floating-text {
    color: rgba(255, 250, 242, 0.86);
    font-size: 0.93rem;
    font-weight: 680;
    line-height: 1.3;
}


/* ---------- 01. HERO / topic cards ---------- */


.kitchen-hero__topics {
    position: relative;
    z-index: 3;
    width: min(var(--ks-container), calc(100% - 64px));
    margin: clamp(58px, 4.8vw, 76px) auto 0;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    border: 1px solid rgba(31, 37, 36, 0.12);
    background: rgba(255, 250, 242, 0.82);
    box-shadow: 0 24px 60px rgba(31, 37, 36, 0.08);
    backdrop-filter: blur(12px);
    animation: kitchenFadeUp 760ms var(--ks-ease) 200ms both;
}

.kitchen-topic-card {
    position: relative;
    display: flex;
    flex-direction: column;
    min-height: 176px;
    padding: 30px 28px 27px;
    overflow: hidden;
    color: var(--ks-ink);
    text-decoration: none;
    border-right: 1px solid rgba(31, 37, 36, 0.12);
    transition:
        background-color 180ms ease,
        transform 180ms ease;
}

.kitchen-topic-card:last-child {
    border-right: 0;
}

.kitchen-topic-card::before {
    content: "";
    position: absolute;
    right: -30px;
    top: -30px;
    width: 88px;
    height: 88px;
    border-radius: 50%;
    background: rgba(183, 111, 74, 0.08);
    transform: scale(0.8);
    transition:
        transform 220ms ease,
        background-color 220ms ease;
}

.kitchen-topic-card:hover,
.kitchen-topic-card:focus-visible {
    background: var(--ks-surface);
    transform: translateY(-3px);
}

.kitchen-topic-card:hover::before,
.kitchen-topic-card:focus-visible::before {
    transform: scale(1.35);
    background: rgba(183, 111, 74, 0.13);
}

.kitchen-topic-card__num {
    position: relative;
    z-index: 1;
    margin-bottom: 25px;
    color: var(--ks-accent-dark);
    font-size: 0.72rem;
    font-weight: 860;
    letter-spacing: 0.13em;
    line-height: 1;
}

.kitchen-topic-card__title {
    position: relative;
    z-index: 1;
    margin: 0 0 10px;
    color: var(--ks-heading);
    font-size: 1.1rem;
    font-weight: 830;
    line-height: 1.18;
    letter-spacing: -0.025em;
}

.kitchen-topic-card__text {
    position: relative;
    z-index: 1;
    margin: 0;
    color: var(--ks-muted);
    font-size: 0.96rem;
    line-height: 1.46;
}

/* =========================================================
   02. EDITORIAL METHOD
   ========================================================= */


/* ---------- 02. EDITORIAL METHOD / section layout + visual ---------- */

.kitchen-method {
    position: relative;
    padding: 0 0 clamp(142px, 7.2vw, 174px);
    background: transparent;
    overflow: visible;
}

.kitchen-method__inner {
    position: relative;
    z-index: 2;
    width: min(1460px, calc(100% - 64px));
    margin: 0 auto;
    display: grid;
    grid-template-columns: minmax(800px, 1.08fr) minmax(560px, 0.92fr);
    gap: clamp(68px, 5.6vw, 96px);
    align-items: center;
}

.kitchen-method__visual {
    position: relative;
    min-height: 620px;
    animation: kitchenMethodVisualIn 820ms var(--ks-ease, cubic-bezier(0.22, 1, 0.36, 1)) both;
}

.kitchen-method__photo {
    position: absolute;
    top: 0;
    right: 0;
    z-index: 1;
    width: 740px;
    height: 560px;
    margin: 0;
    overflow: hidden;
    background: #d8d1c7;
    box-shadow: 0 34px 86px rgba(31, 37, 36, 0.13);
    animation: kitchenMethodPhotoFloat 8s ease-in-out infinite;
}

.kitchen-method__photo::before {
    content: "";
    position: absolute;
    inset: 16px;
    z-index: 2;
    border: 1px solid rgba(255, 250, 242, 0.36);
    pointer-events: none;
}

.kitchen-method__photo::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    background:
        linear-gradient(180deg,
            rgba(21, 25, 24, 0.02) 0%,
            rgba(21, 25, 24, 0.12) 100%),
        linear-gradient(105deg,
            rgba(255, 250, 242, 0.06) 0%,
            transparent 46%);
    pointer-events: none;
}

.kitchen-method__photo img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transform: scale(1.012);
}

.kitchen-method__statement {
    position: absolute;
    left: -18px;
    top: 212px;
    z-index: 2;
    width: 480px;
    min-height: 296px;
    padding: 33px 38px 34px;
    background: var(--ks-charcoal);
    color: var(--ks-surface);
    box-shadow: 0 38px 96px rgba(31, 37, 36, 0.2);
    overflow: hidden;
}

.kitchen-method__statement::before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 156px;
    height: 156px;
    background:
        repeating-linear-gradient(-45deg,
            rgba(255, 250, 242, 0.05) 0,
            rgba(255, 250, 242, 0.05) 1px,
            transparent 1px,
            transparent 10px);
    opacity: 0.78;
    pointer-events: none;
}

.kitchen-method__statement::after {
    content: "";
    position: absolute;
    right: -52px;
    bottom: -60px;
    width: 184px;
    height: 184px;
    border: 1px solid rgba(223, 177, 142, 0.17);
    border-radius: 50%;
    pointer-events: none;
}


/* ---------- 02. EDITORIAL METHOD / dark card typography ---------- */

.kitchen-method__eyebrow,
.kitchen-method__title,
.kitchen-method__text,
.kitchen-method__stamp {
    position: relative;
    z-index: 1;
}

.kitchen-method__eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    margin: 0 0 18px;
    color: var(--ks-accent-soft);
    font-size: 0.62rem;
    font-weight: 880;
    line-height: 1;
    letter-spacing: 0.17em;
    text-transform: uppercase;
}

.kitchen-method__eyebrow::before {
    content: "";
    width: 30px;
    height: 1px;
    background: currentColor;
    opacity: 0.82;
}

.kitchen-method__title {
    max-width: 372px;
    margin: 0;
    color: var(--ks-surface);
    font-size: clamp(2.15rem, 2.32vw, 2.68rem);
    font-weight: 900;
    line-height: 0.9;
    letter-spacing: -0.073em;
}

.kitchen-method__text {
    max-width: 365px;
    margin: 18px 0 0;
    padding-right: 78px;
    color: rgba(255, 250, 242, 0.76);
    font-size: 1.01rem;
    line-height: 1.56;
    letter-spacing: -0.012em;
}

.kitchen-method__stamp {
    position: absolute;
    right: 34px;
    bottom: 28px;
    z-index: 2;
    display: inline-flex;
    align-items: flex-end;
    gap: 8px;
}

.kitchen-method__stamp span {
    color: var(--ks-accent-soft);
    font-size: 2.45rem;
    font-weight: 900;
    line-height: 0.84;
    letter-spacing: -0.075em;
}

.kitchen-method__stamp small {
    max-width: 68px;
    color: rgba(255, 250, 242, 0.82);
    font-size: 0.56rem;
    font-weight: 870;
    line-height: 1.08;
    letter-spacing: 0.13em;
    text-transform: uppercase;
}


/* ---------- 02. EDITORIAL METHOD / content typography + decor ---------- */

.kitchen-method__content {
    position: relative;
    width: 100%;
    max-width: none;
    justify-self: stretch;
    padding-top: 4px;
    animation: kitchenMethodContentIn 860ms var(--ks-ease, cubic-bezier(0.22, 1, 0.36, 1)) 120ms both;
}

.kitchen-method__content::before {
    content: "";
    position: absolute;
    right: -22px;
    top: 24px;
    width: 112px;
    height: 112px;
    border-radius: 50%;
    background: rgba(183, 111, 74, 0.07);
    pointer-events: none;
}

.kitchen-method__content::after {
    content: "";
    position: absolute;
    right: -10px;
    bottom: 14px;
    width: 132px;
    height: 104px;
    background:
        repeating-linear-gradient(-45deg,
            rgba(183, 111, 74, 0.052) 0,
            rgba(183, 111, 74, 0.052) 2px,
            transparent 2px,
            transparent 9px);
    pointer-events: none;
}

.kitchen-method__content-eyebrow,
.kitchen-method__content-title,
.kitchen-method__content-text,
.kitchen-method__points {
    position: relative;
    z-index: 1;
}

.kitchen-method__content-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 13px;
    margin: 0 0 16px;
    color: var(--ks-accent);
    font-size: 0.75rem;
    font-weight: 880;
    line-height: 1;
    letter-spacing: 0.17em;
    text-transform: uppercase;
}

.kitchen-method__content-eyebrow::before {
    content: "";
    width: 36px;
    height: 1px;
    background: currentColor;
    opacity: 0.8;
}

.kitchen-method__content-title {
    max-width: 620px;
    margin: 0;
    color: var(--ks-heading);
    font-size: clamp(2.55rem, 3.22vw, 3.42rem);
    font-weight: 900;
    line-height: 0.98;
    letter-spacing: -0.064em;
    text-wrap: balance;
}

.kitchen-method__content-text {
    max-width: 590px;
    margin: 19px 0 0;
    color: var(--ks-muted);
    font-size: clamp(1.08rem, 1.12vw, 1.2rem);
    line-height: 1.66;
    letter-spacing: -0.012em;
}


/* ---------- 02. EDITORIAL METHOD / checklist numbers + text ---------- */

.kitchen-method__points {
    width: 100%;
    margin: 36px 0 0;
    padding: 0;
    list-style: none;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 22px 24px;
}

.kitchen-method__points li {
    position: relative;
    min-height: 136px;
    display: grid;
    grid-template-columns: 70px minmax(0, 1fr);
    gap: 18px;
    align-items: start;
    padding: 20px 20px 18px 0;
    overflow: hidden;
}

.kitchen-method__points li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 84px;
    height: 84px;
    border-radius: 50%;
    background: rgba(183, 111, 74, 0.075);
    pointer-events: none;
}

.kitchen-method__points li::after {
    content: "";
    position: absolute;
    right: 0;
    bottom: 0;
    width: 84px;
    height: 66px;
    background:
        repeating-linear-gradient(-45deg,
            rgba(31, 37, 36, 0.047) 0,
            rgba(31, 37, 36, 0.047) 2px,
            transparent 2px,
            transparent 9px);
    opacity: 0.76;
    pointer-events: none;
}

.kitchen-method__points span {
    position: relative;
    z-index: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 56px;
    height: 56px;
    color: var(--ks-accent-dark);
    font-size: 0.96rem;
    font-weight: 900;
    line-height: 1;
    letter-spacing: 0.1em;
    border: 2px solid rgba(183, 111, 74, 0.5);
    background: rgba(255, 250, 242, 0.68);
    box-shadow: 0 10px 24px rgba(31, 37, 36, 0.045);
}

.kitchen-method__points strong {
    position: relative;
    z-index: 1;
    display: block;
    margin: 2px 0 6px;
    color: var(--ks-heading);
    font-size: 1.08rem;
    font-weight: 880;
    line-height: 1.14;
    letter-spacing: -0.034em;
}

.kitchen-method__points p {
    position: relative;
    z-index: 1;
    margin: 0;
    color: var(--ks-muted);
    font-size: 1rem;
    line-height: 1.48;
    letter-spacing: -0.01em;
}


/* ---------- 02. EDITORIAL METHOD / section decor ---------- */

.kitchen-method::before {
    content: "";
    position: absolute;
    left: -88px;
    bottom: 38px;
    width: 238px;
    height: 238px;
    border: 1px solid rgba(30, 34, 32, 0.062);
    border-radius: 50%;
    pointer-events: none;
}

.kitchen-method::after {
    content: "";
    position: absolute;
    right: 20px;
    top: 24px;
    width: 104px;
    height: 132px;
    background:
        repeating-linear-gradient(135deg,
            rgba(48, 53, 50, 0.034) 0,
            rgba(48, 53, 50, 0.034) 2px,
            transparent 2px,
            transparent 11px);
    pointer-events: none;
}


/* =========================================================
   02. EDITORIAL METHOD / RESPONSIVE
   ========================================================= */

@media (max-width: 1320px) {
    .kitchen-method__inner {
        grid-template-columns: minmax(700px, 1fr) minmax(500px, 0.92fr);
        gap: 66px;
    }

    .kitchen-method__photo {
        width: 690px;
        height: 540px;
    }

    .kitchen-method__statement {
        left: -36px;
        width: 460px;
    }
}

@media (max-width: 1180px) {
    .kitchen-method {
        padding-bottom: 132px;
    }

    .kitchen-method__inner {
        width: min(980px, calc(100% - 48px));
        grid-template-columns: 1fr;
        gap: 62px;
    }

    .kitchen-method__visual {
        min-height: 610px;
        max-width: 900px;
    }

    .kitchen-method__photo {
        width: min(100%, 760px);
        height: 560px;
    }

    .kitchen-method__statement {
        left: 0;
        top: 218px;
        width: 480px;
    }

    .kitchen-method__content {
        max-width: 860px;
    }

    .kitchen-method__content-title,
    .kitchen-method__content-text {
        max-width: 720px;
    }

    .kitchen-method__points {
        max-width: 860px;
    }
}

@media (max-width: 860px) {
    .kitchen-method__points {
        grid-template-columns: 1fr;
        max-width: 640px;
        gap: 12px;
    }

    .kitchen-method__points li {
        min-height: auto;
        padding: 16px 14px 16px 0;
    }
}

@media (max-width: 760px) {
    .kitchen-method {
        padding-left: 0;
        padding-right: 0;
        padding-bottom: 92px;
    }

    .kitchen-method__inner {
        width: min(100% - 32px, var(--ks-container));
    }

    .kitchen-method__visual {
        min-height: 490px;
    }

    .kitchen-method__photo {
        top: 0;
        right: 0;
        width: min(78vw, 340px);
        height: 360px;
    }

    .kitchen-method__statement {
        left: 0;
        top: 136px;
        width: min(84vw, 336px);
        min-height: 290px;
        padding: 25px 23px 80px;
    }

    .kitchen-method__eyebrow {
        margin-bottom: 15px;
        font-size: 0.56rem;
    }

    .kitchen-method__title {
        max-width: 260px;
        font-size: 2rem;
    }

    .kitchen-method__text {
        max-width: none;
        padding-right: 0;
        font-size: 0.88rem;
        line-height: 1.52;
    }

    .kitchen-method__stamp {
        right: 22px;
        bottom: 22px;
    }

    .kitchen-method__stamp span {
        font-size: 2.45rem;
    }

    .kitchen-method__stamp small {
        font-size: 0.58rem;
    }

    .kitchen-method__content::before {
        right: -8px;
        top: 20px;
        width: 76px;
        height: 76px;
    }

    .kitchen-method__content::after {
        right: 0;
        bottom: 8px;
        width: 92px;
        height: 76px;
    }

    .kitchen-method__content-eyebrow {
        margin-bottom: 14px;
        font-size: 0.68rem;
    }

    .kitchen-method__content-title {
        font-size: clamp(1.95rem, 8.8vw, 2.42rem);
        line-height: 1;
    }

    .kitchen-method__content-text {
        margin-top: 16px;
        font-size: 0.97rem;
        line-height: 1.6;
    }

    .kitchen-method__points {
        margin-top: 26px;
    }

    .kitchen-method__points li {
        grid-template-columns: 52px minmax(0, 1fr);
        gap: 14px;
    }

    .kitchen-method__points span {
        width: 44px;
        height: 44px;
        font-size: 0.82rem;
    }

    .kitchen-method__points strong {
        font-size: 1rem;
    }

    .kitchen-method__points p {
        font-size: 0.92rem;
    }
}

@media (prefers-reduced-motion: reduce) {

    .kitchen-method__visual,
    .kitchen-method__content,
    .kitchen-method__photo {
        animation: none;
    }
}


/* =========================================================
   02. EDITORIAL METHOD / ANIMATIONS
   ========================================================= */

@keyframes kitchenMethodVisualIn {
    from {
        opacity: 0;
        transform: translateX(-18px);
    }

    to {
        opacity: 1;
        transform: translateX(0);
    }
}

@keyframes kitchenMethodContentIn {
    from {
        opacity: 0;
        transform: translateY(18px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes kitchenMethodPhotoFloat {
    0% {
        transform: translate3d(0, 0, 0);
    }

    50% {
        transform: translate3d(0, -8px, 0);
    }

    100% {
        transform: translate3d(0, 0, 0);
    }
}


/* =========================================================
   03. FEATURED GUIDES
   ========================================================= */


/* ---------- 03. FEATURED GUIDES / section base + background ---------- */


.latest-guides {
    position: relative;
    padding: 0 0 clamp(92px, 7vw, 120px);
    overflow: hidden;
    background: transparent;
}

.latest-guides::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(180deg,
            rgba(255, 255, 255, 0) 0%,
            rgba(255, 255, 255, 0.08) 100%),
        repeating-linear-gradient(90deg,
            rgba(24, 33, 31, 0.028) 0,
            rgba(24, 33, 31, 0.028) 1px,
            transparent 1px,
            transparent 64px);
    opacity: 0.46;
    pointer-events: none;
}

.latest-guides::after {
    content: "";
    position: absolute;
    inset: 0;
    background:
        radial-gradient(circle at 14% 70%, rgba(181, 126, 88, 0.07) 0%, transparent 25%),
        radial-gradient(circle at 85% 16%, rgba(181, 126, 88, 0.06) 0%, transparent 20%);
    pointer-events: none;
}

.latest-guides__inner {
    position: relative;
    z-index: 1;
    width: min(var(--ks-container), calc(100% - 64px));
    margin: 0 auto;
}

.latest-guides__inner::before {
    content: "";
    position: absolute;
    left: -160px;
    bottom: 96px;
    width: 340px;
    height: 340px;
    border: 1px solid rgba(24, 33, 31, 0.06);
    border-radius: 50%;
    pointer-events: none;
}

.latest-guides__inner::after {
    content: "";
    position: absolute;
    right: 26px;
    top: 12px;
    width: 164px;
    height: 164px;
    border: 1px solid rgba(24, 33, 31, 0.06);
    background:
        repeating-linear-gradient(-45deg,
            rgba(24, 33, 31, 0.022) 0,
            rgba(24, 33, 31, 0.022) 1px,
            transparent 1px,
            transparent 12px);
    opacity: 0.9;
    pointer-events: none;
}


/* ---------- 03. FEATURED GUIDES / header layout + typography ---------- */


.latest-guides__top {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(360px, 0.72fr);
    align-items: start;
    gap: clamp(32px, 4vw, 76px);
    margin-bottom: clamp(36px, 3.8vw, 52px);
}

.latest-guides__heading {
    max-width: 720px;
}

.latest-guides__eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    margin: 0 0 17px;
    color: var(--ks-accent-dark);
    font-size: 0.73rem;
    font-weight: 850;
    letter-spacing: 0.16em;
    line-height: 1;
    text-transform: uppercase;
}

.latest-guides__eyebrow::before {
    content: "";
    width: 28px;
    height: 1px;
    background: currentColor;
    opacity: 0.74;
}

.latest-guides__title {
    margin: 0;
    max-width: 700px;
    color: var(--ks-heading);
    font-size: clamp(2.35rem, 3.25vw, 3.9rem);
    font-weight: 900;
    line-height: 0.94;
    letter-spacing: -0.06em;
    text-wrap: balance;
}

.latest-guides__intro {
    max-width: 470px;
    justify-self: end;
    padding-top: 10px;
}

.latest-guides__intro p {
    margin: 0;
    color: var(--ks-muted);
    font-size: clamp(1.04rem, 1.06vw, 1.14rem);
    line-height: 1.72;
}


/* ---------- 03. FEATURED GUIDES / grid + card shell ---------- */


.latest-guides__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: clamp(28px, 2.35vw, 34px);
    align-items: stretch;
}

.guide-card {
    position: relative;
    height: 100%;
}

.guide-card__link {
    display: flex;
    flex-direction: column;
    height: 100%;
    color: inherit;
    text-decoration: none;
    transition: transform 220ms ease;
}

.guide-card:hover .guide-card__link {
    transform: translateY(-4px);
}


/* ---------- 03. FEATURED GUIDES / card media, tags + numbering ---------- */


.guide-card__media {
    position: relative;
    overflow: hidden;
    aspect-ratio: 0.92 / 1;
    background: #d8d1c7;
    box-shadow: 0 18px 42px rgba(30, 26, 22, 0.08);
}

.guide-card__image {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transform: scale(1.01);
    transition: transform 380ms ease;
}

.guide-card:hover .guide-card__image {
    transform: scale(1.045) rotate(-0.25deg);
}

.guide-card__overlay-top {
    position: absolute;
    inset: 0 0 auto 0;
    height: 106px;
    z-index: 1;
    background: linear-gradient(180deg,
            rgba(16, 22, 21, 0.62) 0%,
            rgba(16, 22, 21, 0.42) 38%,
            rgba(16, 22, 21, 0.18) 72%,
            rgba(16, 22, 21, 0) 100%);
    pointer-events: none;
}

.guide-card__tags {
    position: absolute;
    left: 18px;
    top: 16px;
    z-index: 2;
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
    max-width: calc(100% - 36px);
}

.guide-card__tags span {
    display: inline-flex;
    align-items: center;
    min-height: 34px;
    padding: 0 14px;
    border: 1px solid rgba(255, 250, 242, 0.54);
    background: rgba(255, 250, 242, 0.11);
    color: #fffaf3;
    font-size: 0.67rem;
    font-weight: 870;
    letter-spacing: 0.12em;
    line-height: 1;
    text-transform: uppercase;
    backdrop-filter: blur(6px);
}

.guide-card__index {
    position: absolute;
    right: 18px;
    bottom: 18px;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 50px;
    height: 50px;
    padding: 0 12px;
    background: #18211f;
    color: #f3d2b8;
    font-size: 0.84rem;
    font-weight: 880;
    letter-spacing: 0.1em;
    line-height: 1;
    box-shadow: 0 10px 22px rgba(18, 24, 23, 0.18);
}


/* ---------- 03. FEATURED GUIDES / card body typography + CTA ---------- */


.guide-card__body {
    position: relative;
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    min-height: 292px;
    padding: 25px 25px 27px;
    background: #fffaf4;
    border: 1px solid rgba(24, 33, 31, 0.08);
    border-top: none;
    box-shadow: 0 16px 36px rgba(30, 26, 22, 0.05);
}

.guide-card__body::before {
    content: "";
    position: absolute;
    left: 25px;
    top: 0;
    width: 54px;
    height: 3px;
    background: #b57e58;
    transform: translateY(-1px);
}

.guide-card__meta {
    margin-bottom: 15px;
}

.guide-card__date {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: var(--ks-heading);
    font-size: 0.77rem;
    font-weight: 650;
    line-height: 1;
    opacity: 0.9;
}

.guide-card__date::before {
    content: "";
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--ks-heading);
    flex: 0 0 auto;
}

.guide-card__title {
    margin: 0;
    color: var(--ks-heading);
    font-size: clamp(1.34rem, 1.5vw, 1.82rem);
    font-weight: 850;
    line-height: 1.05;
    letter-spacing: -0.05em;
    text-wrap: balance;
    transition: color 180ms ease;
}

.guide-card:hover .guide-card__title {
    color: var(--ks-accent-dark);
}

.guide-card__text {
    margin: 14px 0 0;
    color: var(--ks-muted);
    font-size: 0.97rem;
    line-height: 1.6;
    flex-grow: 1;
}

.guide-card__cta {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    margin-top: 22px;
    color: var(--ks-heading);
    font-size: 0.72rem;
    font-weight: 850;
    letter-spacing: 0.14em;
    line-height: 1;
    text-transform: uppercase;
}

.guide-card__cta::after {
    content: "";
    width: 34px;
    height: 1px;
    background: currentColor;
    opacity: 0.82;
    transition: width 200ms ease;
}

.guide-card:hover .guide-card__cta::after {
    width: 46px;
}


/* =========================================================
   04. RESPONSIVE
   ========================================================= */

@media (max-width: 1280px) {
    .kitchen-method__inner {
        grid-template-columns: minmax(660px, 1fr) minmax(460px, 0.9fr);
    }

    .kitchen-method__statement {
        left: -48px;
    }
}

@media (max-width: 1180px) {
    .kitchen-hero__inner {
        grid-template-columns: minmax(0, 0.86fr) minmax(560px, 1fr);
        gap: 52px;
    }

    .kitchen-hero__image-card {
        height: min(610px, 46vw);
        min-height: 530px;
    }

    .kitchen-method__inner {
        grid-template-columns: 1fr;
        gap: 56px;
    }

    .kitchen-method__visual {
        min-height: 570px;
        max-width: 860px;
    }

    .kitchen-method__statement {
        left: 0;
    }

    .kitchen-method__content {
        max-width: 820px;
    }

    .kitchen-method__content-title,
    .kitchen-method__content-text {
        max-width: 680px;
    }

    .kitchen-method__points {
        max-width: 820px;
    }
}

@media (max-width: 1120px) {
    .latest-guides__top {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .latest-guides__intro {
        justify-self: start;
        max-width: 720px;
        padding-top: 0;
    }

    .latest-guides__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .latest-guides__inner::after {
        display: none;
    }
}

@media (max-width: 1080px) {
    .kitchen-hero {
        padding-top: 76px;
        padding-bottom: 92px;
    }

    .kitchen-hero__inner {
        grid-template-columns: 1fr;
        gap: 42px;
    }

    .kitchen-hero__content {
        max-width: 820px;
    }

    .kitchen-hero__title {
        max-width: 800px;
    }

    .kitchen-hero__lead {
        max-width: 720px;
    }

    .kitchen-hero__visual {
        min-height: 0;
    }

    .kitchen-hero__image-card {
        width: min(100%, 920px);
        height: auto;
        min-height: 0;
        aspect-ratio: 1.42 / 1;
        margin-left: 0;
    }

    .kitchen-hero__floating--top {
        left: 28px;
    }

    .kitchen-hero__topics {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .kitchen-topic-card:nth-child(2) {
        border-right: 0;
    }

    .kitchen-topic-card:nth-child(-n + 2) {
        border-bottom: 1px solid rgba(31, 37, 36, 0.12);
    }
}

@media (max-width: 860px) {
    .kitchen-method__points {
        grid-template-columns: 1fr;
        max-width: 600px;
        gap: 10px;
    }

    .kitchen-method__points li {
        min-height: auto;
        padding: 14px 12px 14px 0;
    }
}

@media (max-width: 760px) {

    .kitchen-hero,
    .kitchen-method,
    .latest-guides {
        padding-left: 0;
        padding-right: 0;
    }

    .kitchen-hero {
        padding-top: 62px;
        padding-bottom: 72px;
    }

    .kitchen-hero__inner,
    .kitchen-hero__topics,
    .kitchen-method__inner,
    .latest-guides__inner {
        width: min(100% - 32px, var(--ks-container));
    }

    .kitchen-hero__title {
        font-size: clamp(2.2rem, 10.4vw, 3.1rem);
        line-height: 1.02;
        letter-spacing: -0.055em;
    }

    .kitchen-hero__lead {
        margin-top: 21px;
        font-size: 0.98rem;
        line-height: 1.66;
    }

    .kitchen-hero__actions {
        display: grid;
        grid-template-columns: 1fr;
    }

    .kitchen-hero__button {
        width: 100%;
    }

    .kitchen-hero__proof {
        gap: 8px;
    }

    .kitchen-hero__proof span {
        font-size: 0.74rem;
    }

    .kitchen-hero__image-card {
        aspect-ratio: 1 / 1.04;
    }

    .kitchen-hero__floating--top {
        top: 18px;
        left: 14px;
        width: min(250px, calc(100% - 28px));
        padding: 16px 18px;
    }

    .kitchen-hero__floating--bottom {
        right: 14px;
        bottom: -22px;
        width: min(250px, calc(100% - 28px));
        padding: 16px 18px;
    }

    .kitchen-hero__topics {
        grid-template-columns: 1fr;
        margin-top: 54px;
    }

    .kitchen-topic-card {
        min-height: auto;
        border-right: 0;
        border-bottom: 1px solid rgba(31, 37, 36, 0.12);
    }

    .kitchen-topic-card:last-child {
        border-bottom: 0;
    }

    .kitchen-topic-card__num {
        margin-bottom: 15px;
    }

    .kitchen-method {
        padding-bottom: 84px;
    }

    .kitchen-method__visual {
        min-height: 470px;
    }

    .kitchen-method__photo {
        top: 0;
        right: 0;
        width: min(76vw, 320px);
        height: 350px;
    }

    .kitchen-method__statement {
        left: 0;
        top: 132px;
        width: min(82vw, 318px);
        min-height: 278px;
        padding: 24px 22px 76px;
    }

    .kitchen-method__title {
        max-width: 250px;
        font-size: 1.92rem;
    }

    .kitchen-method__text {
        max-width: none;
        padding-right: 0;
        font-size: 0.86rem;
    }

    .kitchen-method__stamp {
        right: 22px;
        bottom: 22px;
    }

    .kitchen-method__stamp span {
        font-size: 2.35rem;
    }

    .kitchen-method__stamp small {
        font-size: 0.58rem;
    }

    .kitchen-method__content::before {
        right: -8px;
        top: 20px;
        width: 70px;
        height: 70px;
    }

    .kitchen-method__content::after {
        right: 0;
        bottom: 8px;
        width: 88px;
        height: 72px;
    }

    .kitchen-method__content-title {
        font-size: clamp(1.8rem, 8.6vw, 2.28rem);
    }

    .kitchen-method__content-text {
        font-size: 0.95rem;
    }

    .kitchen-method__points {
        margin-top: 24px;
    }

    .kitchen-method__points li {
        grid-template-columns: 50px minmax(0, 1fr);
        gap: 13px;
    }

    .kitchen-method__points span {
        width: 42px;
        height: 42px;
        font-size: 0.8rem;
    }

    .latest-guides {
        padding: 80px 0 92px;
    }

    .latest-guides__grid {
        grid-template-columns: 1fr;
        gap: 22px;
    }

    .guide-card__media {
        aspect-ratio: 1 / 0.95;
    }

    .guide-card__body {
        min-height: auto;
        padding: 20px 18px 22px;
    }

    .guide-card__body::before {
        left: 18px;
    }

    .latest-guides__title {
        font-size: clamp(1.9rem, 10vw, 2.9rem);
    }

    .latest-guides__inner::before {
        display: none;
    }

    /* 03. FEATURED GUIDES / mobile card tags + numbering */

    .guide-card__overlay-top {
        height: 98px;
    }

    .guide-card__tags {
        left: 14px;
        top: 14px;
        gap: 7px;
        max-width: calc(100% - 28px);
    }

    .guide-card__tags span {
        min-height: 30px;
        padding: 0 11px;
        font-size: 0.6rem;
        font-weight: 850;
    }

    .guide-card__index {
        right: 14px;
        bottom: 14px;
        min-width: 44px;
        height: 44px;
        padding: 0 10px;
        font-size: 0.76rem;
        font-weight: 860;
    }

}


/* =========================================================
   99. ANIMATIONS
   ========================================================= */

@keyframes kitchenFadeUp {
    from {
        opacity: 0;
        transform: translateY(18px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes kitchenFadeIn {
    from {
        opacity: 0;
        transform: translateX(18px);
    }

    to {
        opacity: 1;
        transform: translateX(0);
    }
}

@keyframes kitchenFloatSlow {

    0%,
    100% {
        transform: translate3d(0, 0, 0);
    }

    50% {
        transform: translate3d(10px, -12px, 0);
    }
}

@keyframes kitchenFloatSoft {

    0%,
    100% {
        transform: translate3d(0, 0, 0) scale(1);
    }

    50% {
        transform: translate3d(-8px, 10px, 0) scale(1.03);
    }
}

@keyframes kitchenFloatCard {

    0%,
    100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-8px);
    }
}

@keyframes kitchenImageDrift {
    from {
        transform: scale(1.02) translate3d(0, 0, 0);
    }

    to {
        transform: scale(1.065) translate3d(-8px, -6px, 0);
    }
}

@keyframes kitchenMethodPhotoFloat {
    0% {
        transform: translate3d(0, 0, 0);
    }

    50% {
        transform: translate3d(0, -8px, 0);
    }

    100% {
        transform: translate3d(0, 0, 0);
    }
}

@media (prefers-reduced-motion: reduce) {

    .kitchen-hero__decor--one,
    .kitchen-hero__decor--two,
    .kitchen-hero__image,
    .kitchen-hero__floating--top,
    .kitchen-hero__floating--bottom,
    .kitchen-method__photo {
        animation: none;
    }
}

/* =========================================================
   HOME — KITCHEN BRIEF / WHY THIS SITE EXISTS
   Position: after hero category strip, before editorial method
   ========================================================= */

.home-kitchen-brief {
    position: relative;
    padding: 0 0 196px;
    margin: 0;
    background: #f3f0e8;
    overflow: visible;
}

.home-kitchen-brief::before {
    content: "";
    position: absolute;
    left: -150px;
    top: -120px;
    width: 410px;
    height: 410px;
    border-radius: 50%;
    border: 1px solid rgba(18, 25, 22, 0.06);
    pointer-events: none;
}

.home-kitchen-brief::after {
    content: "";
    position: absolute;
    right: 5.5%;
    bottom: 94px;
    width: 142px;
    height: 142px;
    background:
        repeating-linear-gradient(135deg,
            rgba(18, 25, 22, 0.04) 0,
            rgba(18, 25, 22, 0.04) 1px,
            transparent 1px,
            transparent 8px);
    opacity: 0.62;
    animation: kitchenBriefHatch 10s ease-in-out infinite;
    pointer-events: none;
}

.home-kitchen-brief__inner {
    position: relative;
    z-index: 2;
    width: min(1320px, calc(100% - 56px));
    margin: 0 auto;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(575px, 635px);
    gap: 84px;
    align-items: start;
}

/* =========================================================
   LEFT COPY
   ========================================================= */

.home-kitchen-brief__copy {
    position: relative;
    max-width: 650px;
    padding-top: 10px;
    animation: kitchenBriefCopyIn 760ms var(--ks-ease, cubic-bezier(0.22, 1, 0.36, 1)) both;
}

.home-kitchen-brief__copy::after {
    content: "";
    position: absolute;
    left: -44px;
    bottom: 82px;
    width: 190px;
    height: 190px;
    border-radius: 50%;
    border: 1px solid rgba(18, 25, 22, 0.05);
    pointer-events: none;
}

.home-kitchen-brief__kicker {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 25px;
    color: #9c5f48;
    font-size: 11px;
    line-height: 1;
    font-weight: 900;
    letter-spacing: 0.18em;
    text-transform: uppercase;
}

.home-kitchen-brief__kicker span {
    display: block;
    width: 38px;
    height: 1px;
    background: #b56e52;
}

.home-kitchen-brief__headline {
    max-width: 630px;
    margin: 0;
    color: #151f1b;
    font-size: clamp(32px, 3.08vw, 44px);
    line-height: 0.92;
    letter-spacing: -0.075em;
    font-weight: 900;
}

.home-kitchen-brief__intro {
    max-width: 570px;
    margin: 23px 0 0;
    color: #5d635e;
    font-size: 18px;
    line-height: 1.55;
    letter-spacing: -0.016em;
}

.home-kitchen-brief__mini-list {
    position: relative;
    z-index: 2;
    max-width: 590px;
    margin-top: 30px;
    display: grid;
    gap: 18px;
    font-size: 19px;
}

.home-kitchen-brief__mini-item {
    display: grid;
    grid-template-columns: 34px 1fr;
    gap: 17px;
    align-items: start;
}

.home-kitchen-brief__check {
    width: 23px;
    height: 23px;
    margin-top: 2px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #b56e52;
    font-size: 15px;
    line-height: 1;
    font-weight: 900;
}

.home-kitchen-brief__mini-item p {
    margin: 0;
    color: #5d635e;
    font-size: 0.94em;
    line-height: 1.42;
    letter-spacing: -0.014em;
}

.home-kitchen-brief__mini-item strong {
    display: block;
    margin-bottom: 4px;
    color: #151f1b;
    font-size: 1em;
    line-height: 1.08;
    letter-spacing: -0.038em;
    font-weight: 900;
}

/* softer editorial note */

.home-kitchen-brief__editorial-line {
    position: relative;
    z-index: 2;
    max-width: 570px;
    margin: 36px 0 0;
    padding-left: 50px;
    color: #555d58;
    font-size: 17px;
    line-height: 1.55;
    letter-spacing: -0.018em;
    font-weight: 650;
}

.home-kitchen-brief__editorial-line::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.8em;
    width: 34px;
    height: 1px;
    background: #b56e52;
    opacity: 0.85;
}

/* AUTHOR BUTTON — same interaction logic as hero buttons */

.home-kitchen-brief__author-link {
    position: relative;
    z-index: 3;
    width: fit-content;
    min-width: 226px;
    min-height: 58px;
    margin-top: 34px;
    padding: 0 31px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    color: #151f1b;
    background: rgba(255, 250, 242, 0.72);
    border: 1px solid rgba(31, 37, 36, 0.17);
    backdrop-filter: blur(8px);
    text-decoration: none;
    font-size: 0.76rem;
    line-height: 1;
    font-weight: 860;
    letter-spacing: 0.13em;
    text-transform: uppercase;
    transition:
        transform 180ms ease,
        background-color 180ms ease,
        border-color 180ms ease,
        color 180ms ease,
        box-shadow 180ms ease;
}

.home-kitchen-brief__author-link::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(110deg,
            transparent 0%,
            rgba(255, 255, 255, 0.32) 48%,
            transparent 100%);
    transform: translateX(-120%);
    transition: transform 420ms ease;
    pointer-events: none;
}

.home-kitchen-brief__author-link:hover,
.home-kitchen-brief__author-link:focus-visible {
    color: #fffaf0;
    background: #151f1b;
    border-color: #151f1b;
    box-shadow: 0 16px 30px rgba(34, 40, 39, 0.14);
    transform: translateY(-2px);
}

.home-kitchen-brief__author-link:hover::after,
.home-kitchen-brief__author-link:focus-visible::after {
    transform: translateX(120%);
}

/* =========================================================
   RIGHT VISUAL BLOCK
   ========================================================= */

.home-kitchen-brief__media {
    position: relative;
    display: grid;
    gap: 15px;
    width: 100%;
    max-width: 635px;
    justify-self: end;
    animation: kitchenBriefMediaIn 820ms var(--ks-ease, cubic-bezier(0.22, 1, 0.36, 1)) 120ms both;
}

.home-kitchen-brief__media::before {
    content: "";
    position: absolute;
    left: -36px;
    top: 55px;
    width: 78%;
    height: calc(100% - 26px);
    background: rgba(210, 163, 125, 0.07);
    pointer-events: none;
}

.home-kitchen-brief__pin-note {
    position: absolute;
    left: -42px;
    top: -36px;
    z-index: 5;
    width: min(276px, 56%);
    padding: 20px 23px 19px;
    background: rgba(255, 250, 242, 0.94);
    border: 1px solid rgba(31, 37, 36, 0.12);
    box-shadow: 0 22px 58px rgba(18, 25, 22, 0.14);
    backdrop-filter: blur(10px);
    animation: kitchenBriefNoteFloat 6.5s ease-in-out infinite;
}

.home-kitchen-brief__pin-note::before {
    content: "";
    position: absolute;
    left: 23px;
    top: -1px;
    width: 44px;
    height: 2px;
    background: #d2a37d;
}

.home-kitchen-brief__pin-note span {
    display: block;
    margin-bottom: 8px;
    color: #9c5f48;
    font-size: 0.61rem;
    line-height: 1;
    font-weight: 900;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}

.home-kitchen-brief__pin-note strong {
    display: block;
    color: #151f1b;
    font-size: 1rem;
    line-height: 1.22;
    letter-spacing: -0.032em;
    font-weight: 850;
}

.home-kitchen-brief__panel {
    position: relative;
    z-index: 2;
    width: 100%;
    min-height: 486px;
    padding: 55px 57px 45px;
    background:
        linear-gradient(135deg,
            rgba(15, 24, 20, 0.97),
            rgba(10, 18, 15, 0.985));
    color: #fffaf0;
    box-shadow: 0 32px 88px rgba(18, 25, 22, 0.16);
    overflow: hidden;
    animation: kitchenBriefPanelFloat 7.5s ease-in-out 900ms infinite;
}

.home-kitchen-brief__panel::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(90deg,
            rgba(255, 255, 255, 0.032) 1px,
            transparent 1px),
        linear-gradient(rgba(255, 255, 255, 0.026) 1px,
            transparent 1px);
    background-size: 36px 36px;
    opacity: 0.32;
    pointer-events: none;
}

.home-kitchen-brief__panel::after {
    content: "";
    position: absolute;
    right: 36px;
    bottom: 36px;
    width: 108px;
    height: 108px;
    border-radius: 50%;
    border: 1px solid rgba(210, 163, 125, 0.15);
    pointer-events: none;
}

.home-kitchen-brief__small-kicker {
    position: relative;
    z-index: 2;
    margin-bottom: 19px;
    color: #d2a37d;
    font-size: 10px;
    line-height: 1;
    font-weight: 900;
    letter-spacing: 0.18em;
    text-transform: uppercase;
}

.home-kitchen-brief__panel h2 {
    position: relative;
    z-index: 2;
    max-width: 520px;
    margin: 0;
    color: #fffaf0;
    font-size: clamp(51px, 4.55vw, 70px);
    line-height: 0.88;
    letter-spacing: -0.082em;
    font-weight: 900;
    text-transform: uppercase;
}

.home-kitchen-brief__word-rotator {
    position: relative;
    display: inline-block;
    min-width: 302px;
    height: 0.92em;
    vertical-align: bottom;
    color: #d2a37d;
    overflow: hidden;
}

.home-kitchen-brief__word-rotator span {
    position: absolute;
    left: 0;
    top: 0;
    opacity: 0;
    transform: translateY(0.45em);
    animation: kitchenBriefWords 9.6s ease-in-out infinite;
}

.home-kitchen-brief__word-rotator span:nth-child(1) {
    animation-delay: 0s;
}

.home-kitchen-brief__word-rotator span:nth-child(2) {
    animation-delay: 2.4s;
}

.home-kitchen-brief__word-rotator span:nth-child(3) {
    animation-delay: 4.8s;
}

.home-kitchen-brief__word-rotator span:nth-child(4) {
    animation-delay: 7.2s;
}

.home-kitchen-brief__panel p {
    position: relative;
    z-index: 2;
    max-width: 405px;
    margin: 27px 0 0;
    color: rgba(255, 250, 240, 0.74);
    font-size: 17px;
    line-height: 1.5;
    letter-spacing: -0.013em;
}

.home-kitchen-brief__swatches {
    position: absolute;
    left: 57px;
    bottom: 38px;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    gap: 11px;
}

.home-kitchen-brief__swatches::before {
    content: "material cues";
    margin-right: 4px;
    color: rgba(255, 250, 240, 0.36);
    font-size: 0.56rem;
    line-height: 1;
    font-weight: 850;
    letter-spacing: 0.15em;
    text-transform: uppercase;
}

.home-kitchen-brief__swatch {
    width: 30px;
    height: 30px;
    display: block;
    border: 1px solid rgba(255, 250, 240, 0.16);
    box-shadow: inset 0 0 0 1px rgba(21, 31, 27, 0.18);
}

.home-kitchen-brief__swatch--steel {
    background:
        linear-gradient(135deg, rgba(255, 250, 242, 0.42), rgba(255, 250, 242, 0.12)),
        #5b625f;
}

.home-kitchen-brief__swatch--wood {
    background:
        linear-gradient(135deg, rgba(210, 163, 125, 0.88), rgba(143, 78, 53, 0.72));
}

.home-kitchen-brief__swatch--care {
    background:
        repeating-linear-gradient(-45deg,
            rgba(255, 250, 242, 0.16) 0,
            rgba(255, 250, 242, 0.16) 1px,
            transparent 1px,
            transparent 6px),
        #151f1b;
}

/* LOWER STRIP */

.home-kitchen-brief__rule {
    position: relative;
    z-index: 3;
    width: 100%;
    min-height: 72px;
    padding: 21px 34px;
    display: flex;
    align-items: center;
    gap: 17px;
    flex-wrap: wrap;
    background: #151f1b;
    color: #fffaf0;
    box-shadow: 0 18px 48px rgba(18, 25, 22, 0.09);
}

.home-kitchen-brief__rule span {
    position: relative;
    color: rgba(255, 250, 240, 0.86);
    font-size: 16px;
    line-height: 1;
    font-weight: 850;
    letter-spacing: -0.034em;
}

.home-kitchen-brief__rule span:not(:last-child)::after {
    content: "";
    display: inline-block;
    width: 4px;
    height: 4px;
    margin-left: 17px;
    vertical-align: middle;
    border-radius: 50%;
    background: #d2a37d;
}

/* =========================================================
   ANIMATIONS
   ========================================================= */

@keyframes kitchenBriefCopyIn {
    from {
        opacity: 0;
        transform: translateY(18px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes kitchenBriefMediaIn {
    from {
        opacity: 0;
        transform: translateX(18px);
    }

    to {
        opacity: 1;
        transform: translateX(0);
    }
}

@keyframes kitchenBriefPanelFloat {

    0%,
    100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-6px);
    }
}

@keyframes kitchenBriefNoteFloat {

    0%,
    100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-7px);
    }
}

@keyframes kitchenBriefWords {
    0% {
        opacity: 0;
        transform: translateY(0.45em);
    }

    8% {
        opacity: 1;
        transform: translateY(0);
    }

    22% {
        opacity: 1;
        transform: translateY(0);
    }

    30% {
        opacity: 0;
        transform: translateY(-0.4em);
    }

    100% {
        opacity: 0;
        transform: translateY(-0.4em);
    }
}

@keyframes kitchenBriefHatch {

    0%,
    100% {
        transform: translate3d(0, 0, 0);
    }

    50% {
        transform: translate3d(-12px, 10px, 0);
    }
}

/* =========================================================
   RESPONSIVE
   ========================================================= */

@media (max-width: 1180px) {
    .home-kitchen-brief {
        padding-bottom: 152px;
    }

    .home-kitchen-brief__inner {
        width: min(980px, calc(100% - 48px));
        grid-template-columns: 1fr;
        gap: 64px;
    }

    .home-kitchen-brief__copy {
        max-width: 760px;
    }

    .home-kitchen-brief__headline {
        max-width: 720px;
    }

    .home-kitchen-brief__intro {
        max-width: 660px;
    }

    .home-kitchen-brief__mini-list {
        max-width: 660px;
    }

    .home-kitchen-brief__media {
        max-width: 680px;
        justify-self: start;
    }
}

@media (max-width: 720px) {
    .home-kitchen-brief {
        padding-bottom: 112px;
        overflow: hidden;
    }

    .home-kitchen-brief__inner {
        width: min(100% - 30px, 560px);
        gap: 44px;
    }

    .home-kitchen-brief__kicker {
        margin-bottom: 20px;
    }

    .home-kitchen-brief__headline {
        font-size: clamp(30px, 10vw, 42px);
        line-height: 0.98;
    }

    .home-kitchen-brief__intro {
        margin-top: 18px;
        font-size: 16px;
        line-height: 1.56;
    }

    .home-kitchen-brief__mini-list {
        margin-top: 24px;
        gap: 18px;
        font-size: 17px;
    }

    .home-kitchen-brief__mini-item {
        grid-template-columns: 30px 1fr;
        gap: 12px;
    }

    .home-kitchen-brief__check {
        width: 20px;
        height: 20px;
        font-size: 14px;
    }

    .home-kitchen-brief__mini-item p {
        font-size: 0.94em;
    }

    .home-kitchen-brief__mini-item strong {
        font-size: 1em;
    }

    .home-kitchen-brief__editorial-line {
        max-width: none;
        margin-top: 28px;
        padding-left: 40px;
        font-size: 15px;
        line-height: 1.5;
    }

    .home-kitchen-brief__editorial-line::before {
        width: 26px;
    }

    .home-kitchen-brief__author-link {
        width: 100%;
        min-width: 0;
        min-height: 54px;
        margin-top: 26px;
        padding: 0 22px;
        font-size: 0.7rem;
    }

    .home-kitchen-brief__pin-note {
        position: relative;
        left: auto;
        top: auto;
        width: min(290px, 100%);
        margin-bottom: -2px;
        padding: 17px 19px 16px;
    }

    .home-kitchen-brief__panel {
        min-height: 380px;
        padding: 40px 32px 72px;
    }

    .home-kitchen-brief__panel h2 {
        font-size: clamp(40px, 12vw, 58px);
        letter-spacing: -0.076em;
    }

    .home-kitchen-brief__word-rotator {
        display: block;
        min-width: 100%;
        height: 0.94em;
        margin-top: 3px;
    }

    .home-kitchen-brief__panel p {
        font-size: 15px;
        margin-top: 20px;
    }

    .home-kitchen-brief__swatches {
        left: 32px;
        bottom: 30px;
    }

    .home-kitchen-brief__swatches::before {
        display: none;
    }

    .home-kitchen-brief__rule {
        min-height: auto;
        padding: 18px 24px;
    }

    .home-kitchen-brief__rule span {
        font-size: 14px;
    }
}

@media (max-width: 460px) {
    .home-kitchen-brief {
        padding-bottom: 92px;
    }

    .home-kitchen-brief__editorial-line {
        padding-left: 0;
    }

    .home-kitchen-brief__editorial-line::before {
        position: static;
        display: block;
        margin-bottom: 13px;
    }

    .home-kitchen-brief__panel {
        min-height: 350px;
        padding: 34px 26px 72px;
    }

    .home-kitchen-brief__panel h2 {
        letter-spacing: -0.068em;
    }

    .home-kitchen-brief__swatches {
        left: 26px;
    }

    .home-kitchen-brief__rule {
        display: grid;
        gap: 10px;
    }

    .home-kitchen-brief__rule span:not(:last-child)::after {
        display: none;
    }
}

@media (prefers-reduced-motion: reduce) {

    .home-kitchen-brief::after,
    .home-kitchen-brief__copy,
    .home-kitchen-brief__media,
    .home-kitchen-brief__panel,
    .home-kitchen-brief__pin-note,
    .home-kitchen-brief__word-rotator span {
        animation: none;
    }

    .home-kitchen-brief__word-rotator span {
        opacity: 1;
        transform: none;
        position: static;
        display: none;
    }

    .home-kitchen-brief__word-rotator span:first-child {
        display: inline;
    }
}

/* =========================================================
   04. AUTHOR FOCUS
   Photo-first compact author section
   ========================================================= */


/* ---------- 04. AUTHOR FOCUS / section base ---------- */

.kitchen-author-focus {
    position: relative;
    scroll-margin-top: calc(var(--ks-header-height) + 28px);
    isolation: isolate;
    overflow: hidden;
    padding: clamp(74px, 5vw, 100px) 0;
    background: linear-gradient(135deg, rgba(15, 24, 20, 0.97), rgba(10, 18, 15, 0.984));
    color: var(--ks-surface);
}

.kitchen-author-focus::before {
    content: "";
    position: absolute;
    left: -120px;
    top: -150px;
    z-index: -2;
    width: 420px;
    height: 420px;
    border-radius: 50%;
    border: 1px solid rgba(255, 250, 242, 0.045);
    pointer-events: none;
}

.kitchen-author-focus::after {
    content: "";
    position: absolute;
    right: 7%;
    bottom: 42px;
    z-index: -1;
    width: 136px;
    height: 136px;
    background:
        repeating-linear-gradient(-45deg,
            rgba(223, 177, 142, 0.08) 0,
            rgba(223, 177, 142, 0.08) 1px,
            transparent 1px,
            transparent 10px);
    opacity: 0.38;
    pointer-events: none;
}

.kitchen-author-focus__inner {
    position: relative;
    z-index: 2;
    width: min(1360px, calc(100% - 64px));
    margin: 0 auto;
    display: grid;
    grid-template-columns: minmax(420px, 0.7fr) minmax(500px, 0.82fr);
    gap: clamp(64px, 6.4vw, 112px);
    align-items: center;
}


/* ---------- 04. AUTHOR FOCUS / portrait photo + background pattern ---------- */

.kitchen-author-focus__media {
    position: relative;
    width: min(445px, 100%);
    padding-bottom: 82px;
}

.kitchen-author-focus__media::before {
    content: "";
    position: absolute;
    left: 108px;
    top: 42px;
    z-index: 0;
    width: min(430px, 86%);
    height: calc(100% - 122px);
    border: 1px solid rgba(255, 250, 242, 0.06);
    background:
        linear-gradient(90deg, rgba(255, 250, 242, 0.026) 1px, transparent 1px),
        linear-gradient(rgba(255, 250, 242, 0.02) 1px, transparent 1px),
        radial-gradient(circle at 22% 20%, rgba(223, 177, 142, 0.09) 0 1px, transparent 2px),
        radial-gradient(circle at 76% 78%, rgba(255, 250, 242, 0.07) 0 1px, transparent 2px);
    background-size:
        38px 38px,
        38px 38px,
        34px 34px,
        46px 46px;
    opacity: 0.78;
    pointer-events: none;
}

.kitchen-author-focus__media::after {
    content: "";
    position: absolute;
    left: -42px;
    bottom: 118px;
    z-index: 0;
    width: 220px;
    height: 220px;
    border-radius: 50%;
    background:
        repeating-linear-gradient(-45deg,
            rgba(223, 177, 142, 0.075) 0,
            rgba(223, 177, 142, 0.075) 1px,
            transparent 1px,
            transparent 9px);
    opacity: 0.34;
    pointer-events: none;
}

.kitchen-author-focus__photo {
    position: relative;
    z-index: 2;
    width: min(455px, 100%);
    aspect-ratio: 1.8 / 3;
    height: auto;
    margin: 0;
    overflow: hidden;
    background: #d8d1c7;
    box-shadow: 0 34px 92px rgba(0, 0, 0, 0.22);
}

.kitchen-author-focus__photo::before {
    display: none;
}

.kitchen-author-focus__photo::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    background:
        linear-gradient(90deg,
            rgba(21, 25, 24, 0.035) 0%,
            rgba(21, 25, 24, 0.01) 46%,
            rgba(21, 25, 24, 0.11) 100%),
        linear-gradient(180deg,
            rgba(21, 25, 24, 0) 0%,
            rgba(21, 25, 24, 0.13) 100%);
    pointer-events: none;
}

.kitchen-author-focus__photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center 46%;
    transform: scale(1.012);
    animation: kitchenAuthorPhotoBreath 8.5s ease-in-out infinite;
}


/* ---------- 04. AUTHOR FOCUS / name card ---------- */

.kitchen-author-focus__name-card {
    position: absolute;
    left: 30px;
    bottom: 28px;
    z-index: 4;
    width: min(315px, calc(100% - 60px));
    padding: 19px 24px 22px;
    overflow: hidden;
    background: var(--ks-surface);
    color: var(--ks-heading);
    box-shadow: 0 24px 62px rgba(0, 0, 0, 0.18);
}

.kitchen-author-focus__name-card::before {
    content: "";
    position: relative;
    z-index: 1;
    display: block;
    width: 50px;
    height: 3px;
    margin-bottom: 15px;
    background: var(--ks-accent);
}

.kitchen-author-focus__name-card::after {
    content: "ML";
    position: absolute;
    right: 13px;
    bottom: -9px;
    z-index: 0;
    color: rgba(21, 31, 27, 0.045);
    font-size: 5.2rem;
    font-weight: 900;
    line-height: 1;
    letter-spacing: -0.1em;
    pointer-events: none;
}

.kitchen-author-focus__name-card span {
    position: relative;
    z-index: 1;
    display: block;
    margin-bottom: 9px;
    color: var(--ks-accent-dark);
    font-size: 0.6rem;
    font-weight: 900;
    letter-spacing: 0.17em;
    line-height: 1;
    text-transform: uppercase;
}

.kitchen-author-focus__name-card strong {
    position: relative;
    z-index: 1;
    display: block;
    max-width: 285px;
    color: var(--ks-heading);
    font-size: clamp(3rem, 3.45vw, 3.72rem);
    font-weight: 900;
    line-height: 0.78;
    letter-spacing: -0.088em;
    white-space: nowrap;
}


/* ---------- 04. AUTHOR FOCUS / content ---------- */

.kitchen-author-focus__content {
    position: relative;
    max-width: 545px;
}

.kitchen-author-focus__content::before {
    content: "";
    position: absolute;
    right: -28px;
    top: -34px;
    width: 104px;
    height: 104px;
    border-radius: 50%;
    background: rgba(223, 177, 142, 0.052);
    pointer-events: none;
}

.kitchen-author-focus__eyebrow,
.kitchen-author-focus__title,
.kitchen-author-focus__lead,
.kitchen-author-focus__editorial-strip,
.kitchen-author-focus__rule,
.kitchen-author-focus__statement,
.kitchen-author-focus__markers,
.kitchen-author-focus__points {
    position: relative;
    z-index: 1;
}

.kitchen-author-focus__eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 13px;
    margin: 0 0 17px;
    color: var(--ks-accent-soft);
    font-size: 0.72rem;
    font-weight: 880;
    line-height: 1;
    letter-spacing: 0.18em;
    text-transform: uppercase;
}

.kitchen-author-focus__eyebrow::before {
    content: "";
    width: 34px;
    height: 1px;
    background: currentColor;
}

.kitchen-author-focus__title {
    max-width: 530px;
    margin: 0;
    color: var(--ks-surface);
    font-size: clamp(2.25rem, 3.12vw, 3.72rem);
    font-weight: 900;
    line-height: 0.93;
    letter-spacing: -0.074em;
    text-wrap: balance;
}

.kitchen-author-focus__lead {
    max-width: 500px;
    margin: 23px 0 0;
    padding-bottom: 22px;
    border-bottom: 1px solid rgba(255, 250, 242, 0.085);
    color: rgba(255, 250, 242, 0.62);
    font-size: clamp(1rem, 1.04vw, 1.1rem);
    font-weight: 520;
    line-height: 1.62;
    letter-spacing: -0.012em;
}


/* ---------- 04. AUTHOR FOCUS / hide extra strip ---------- */

.kitchen-author-focus__editorial-strip {
    display: none;
}


/* ---------- 04. AUTHOR FOCUS / author rule ---------- */

.kitchen-author-focus__rule,
.kitchen-author-focus__statement {
    position: relative;
    max-width: 500px;
    margin-top: 21px;
    padding: 0;
    overflow: visible;
    border: 0;
    background: transparent;
}

.kitchen-author-focus__rule::before,
.kitchen-author-focus__statement::before {
    content: "";
    display: block;
    width: 46px;
    height: 3px;
    margin-bottom: 16px;
    background: var(--ks-accent-soft);
}

.kitchen-author-focus__rule::after,
.kitchen-author-focus__statement::after {
    display: none;
}

.kitchen-author-focus__rule span,
.kitchen-author-focus__statement span {
    display: block;
    margin-bottom: 13px;
    color: var(--ks-accent-soft);
    font-size: 0.62rem;
    font-weight: 900;
    line-height: 1;
    letter-spacing: 0.17em;
    text-transform: uppercase;
}

.kitchen-author-focus__rule p,
.kitchen-author-focus__statement p {
    position: relative;
    max-width: 455px;
    margin: 0;
    color: rgba(255, 250, 242, 0.92);
    font-size: clamp(1.12rem, 1.24vw, 1.36rem);
    font-weight: 760;
    line-height: 1.34;
    letter-spacing: -0.038em;
}


/* ---------- 04. AUTHOR FOCUS / compact markers ---------- */

.kitchen-author-focus__markers,
.kitchen-author-focus__points {
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
    max-width: 500px;
    margin-top: 23px;
}

.kitchen-author-focus__markers span,
.kitchen-author-focus__points div {
    position: relative;
    display: inline-flex;
    align-items: center;
    min-height: 34px;
    padding: 0 13px;
    border: 1px solid rgba(223, 177, 142, 0.2);
    background: rgba(255, 250, 242, 0.04);
    color: rgba(255, 250, 242, 0.76);
    font-size: 0.68rem;
    font-weight: 840;
    line-height: 1;
    letter-spacing: 0.105em;
    text-transform: uppercase;
}

.kitchen-author-focus__points div::after {
    display: none;
}

.kitchen-author-focus__points span {
    display: none;
}

.kitchen-author-focus__points strong {
    display: inline;
    margin: 0;
    color: inherit;
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit;
    letter-spacing: inherit;
}

.kitchen-author-focus__points p {
    display: none;
}


/* =========================================================
   04. AUTHOR FOCUS / RESPONSIVE
   ========================================================= */

@media (max-width: 1180px) {
    .kitchen-author-focus__inner {
        grid-template-columns: 1fr;
        gap: 46px;
    }

    .kitchen-author-focus__media {
        width: min(445px, 100%);
        padding-bottom: 82px;
    }

    .kitchen-author-focus__photo {
        width: min(405px, 100%);
    }

    .kitchen-author-focus__content {
        max-width: 760px;
    }

    .kitchen-author-focus__title,
    .kitchen-author-focus__lead,
    .kitchen-author-focus__rule,
    .kitchen-author-focus__statement,
    .kitchen-author-focus__markers,
    .kitchen-author-focus__points {
        max-width: 720px;
    }
}

@media (max-width: 760px) {
    .kitchen-author-focus {
        padding: 72px 0 82px;
    }

    .kitchen-author-focus__inner {
        width: min(100% - 32px, var(--ks-container));
        gap: 40px;
    }

    .kitchen-author-focus__media {
        width: min(390px, 100%);
        padding-bottom: 76px;
    }

    .kitchen-author-focus__media::before {
        left: 36px;
        top: 34px;
        width: min(360px, 84%);
        height: calc(100% - 104px);
    }

    .kitchen-author-focus__media::after {
        left: -30px;
        bottom: 108px;
        width: 170px;
        height: 170px;
    }

    .kitchen-author-focus__photo {
        width: min(360px, 100%);
    }

    .kitchen-author-focus__name-card {
        left: 16px;
        bottom: 24px;
        width: min(288px, calc(100% - 32px));
        padding: 19px 21px 22px;
    }

    .kitchen-author-focus__name-card strong {
        font-size: clamp(2.58rem, 12vw, 3.25rem);
        line-height: 0.8;
    }

    .kitchen-author-focus__title {
        font-size: clamp(2rem, 9vw, 2.85rem);
        line-height: 0.98;
        letter-spacing: -0.066em;
    }

    .kitchen-author-focus__lead {
        margin-top: 19px;
        padding-bottom: 20px;
        font-size: 0.96rem;
        line-height: 1.58;
    }

    .kitchen-author-focus__rule,
    .kitchen-author-focus__statement {
        margin-top: 20px;
    }

    .kitchen-author-focus__rule p,
    .kitchen-author-focus__statement p {
        font-size: clamp(1.08rem, 5vw, 1.34rem);
        line-height: 1.28;
    }

    .kitchen-author-focus__markers,
    .kitchen-author-focus__points {
        gap: 8px;
        margin-top: 20px;
    }

    .kitchen-author-focus__markers span,
    .kitchen-author-focus__points div {
        min-height: 32px;
        padding: 0 11px;
        font-size: 0.62rem;
    }
}

@media (max-width: 460px) {
    .kitchen-author-focus__media {
        width: 100%;
        padding-bottom: 72px;
    }

    .kitchen-author-focus__photo {
        width: 100%;
    }

    .kitchen-author-focus__name-card {
        left: 12px;
        bottom: 18px;
        width: calc(100% - 24px);
    }

    .kitchen-author-focus__name-card strong {
        font-size: clamp(2.45rem, 14vw, 3rem);
    }
}

@media (prefers-reduced-motion: reduce) {
    .kitchen-author-focus__photo img {
        animation: none;
    }
}


/* =========================================================
   04. AUTHOR FOCUS / ANIMATIONS
   ========================================================= */

@keyframes kitchenAuthorPhotoBreath {
    0% {
        transform: scale(1.012) translate3d(0, 0, 0);
    }

    50% {
        transform: scale(1.026) translate3d(-3px, -3px, 0);
    }

    100% {
        transform: scale(1.012) translate3d(0, 0, 0);
    }
}

/* =========================================================
   05. KITCHEN GALLERY STRIP
   Seamless image line after author section
   ========================================================= */

.kitchen-gallery-strip {
    position: relative;
    overflow: hidden;
    margin: 0;
    padding: 0;
    background: #101815;
}

.kitchen-gallery-strip__track {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    width: 100%;
    margin: 0;
    padding: 0;
    gap: 0;
}

.kitchen-gallery-strip__item {
    position: relative;
    height: clamp(360px, 26vw, 498px);
    margin: 0;
    padding: 0;
    overflow: hidden;
    background: #d8d1c7;
}

.kitchen-gallery-strip__item::after {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(180deg,
            rgba(10, 18, 15, 0.03) 0%,
            rgba(10, 18, 15, 0.17) 100%);
    pointer-events: none;
}

.kitchen-gallery-strip__item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transform: scale(1.015);
    transition:
        transform 420ms ease,
        filter 420ms ease;
}

.kitchen-gallery-strip__item:nth-child(1) img {
    object-position: center center;
}

.kitchen-gallery-strip__item:nth-child(2) img {
    object-position: center center;
}

.kitchen-gallery-strip__item:nth-child(3) img {
    object-position: center center;
}

.kitchen-gallery-strip__item:nth-child(4) img {
    object-position: center center;
}

.kitchen-gallery-strip__item:nth-child(5) img {
    object-position: center center;
}

.kitchen-gallery-strip__item:nth-child(6) img {
    object-position: center center;
}

.kitchen-gallery-strip__item:hover img {
    transform: scale(1.055);
    filter: contrast(1.04) saturate(1.04);
}


/* =========================================================
   05. KITCHEN GALLERY STRIP / RESPONSIVE
   ========================================================= */

@media (max-width: 1180px) {
    .kitchen-gallery-strip__track {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .kitchen-gallery-strip__item {
        height: clamp(260px, 31vw, 390px);
    }
}

@media (max-width: 760px) {
    .kitchen-gallery-strip__track {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .kitchen-gallery-strip__item {
        height: clamp(220px, 52vw, 330px);
    }
}

@media (max-width: 460px) {
    .kitchen-gallery-strip__item {
        height: 240px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .kitchen-gallery-strip__item img {
        transition: none;
    }

    .kitchen-gallery-strip__item:hover img {
        transform: scale(1.015);
        filter: none;
    }
}

/* =========================================================
   06. KITCHEN FAQ SMOOTH
   Full section — geometric background + smooth gallery transition
   ========================================================= */


/* ---------- 06. FAQ SMOOTH / section base ---------- */

.kitchen-faq-smooth {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    margin-top: 0;
    padding: 0 0 clamp(104px, 7.4vw, 148px);
    background: var(--ks-bg);
    color: var(--ks-ink);
}

.kitchen-faq-smooth::before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    z-index: -4;
    height: 168px;
    background: linear-gradient(135deg, rgba(15, 24, 20, 0.97), rgba(10, 18, 15, 0.984));
    pointer-events: none;
}

.kitchen-faq-smooth::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 82px;
    z-index: -3;
    height: 230px;
    background: var(--ks-bg);
    clip-path: polygon(0 24%, 100% 0, 100% 100%, 0 100%);
    pointer-events: none;
}


/* ---------- 06. FAQ SMOOTH / background figures ---------- */

.kitchen-faq-smooth__inner {
    position: relative;
    z-index: 2;
    width: min(1360px, calc(100% - 64px));
    margin: 0 auto;
    padding-top: clamp(92px, 7vw, 126px);
    display: grid;
    grid-template-columns: minmax(360px, 0.54fr) minmax(0, 1fr);
    gap: clamp(62px, 6.2vw, 112px);
    align-items: start;
}

.kitchen-faq-smooth__inner::before {
    content: "";
    position: absolute;
    left: -120px;
    top: 44px;
    z-index: -2;
    width: clamp(340px, 34vw, 560px);
    height: clamp(340px, 34vw, 560px);
    border-radius: 50%;
    border: 1px solid rgba(31, 37, 36, 0.06);
    background:
        repeating-linear-gradient(-45deg,
            rgba(31, 37, 36, 0.032) 0,
            rgba(31, 37, 36, 0.032) 1px,
            transparent 1px,
            transparent 12px);
    opacity: 0.64;
    animation: kitchenFaqFigureDrift 13s ease-in-out infinite;
    pointer-events: none;
}

.kitchen-faq-smooth__inner::after {
    content: "";
    position: absolute;
    right: -84px;
    top: 130px;
    z-index: -2;
    width: clamp(280px, 28vw, 460px);
    height: clamp(280px, 28vw, 460px);
    border: 1px solid rgba(31, 37, 36, 0.055);
    background:
        linear-gradient(90deg,
            rgba(31, 37, 36, 0.026) 1px,
            transparent 1px),
        linear-gradient(rgba(31, 37, 36, 0.022) 1px,
            transparent 1px);
    background-size: 36px 36px;
    opacity: 0.56;
    transform: rotate(2deg);
    animation: kitchenFaqGridDrift 11s ease-in-out infinite;
    pointer-events: none;
}


/* ---------- 06. FAQ SMOOTH / bridge panel ---------- */

.kitchen-faq-smooth__left,
.kitchen-faq-smooth__right {
    position: relative;
}

.kitchen-faq-smooth__left {
    padding-top: 8px;
}

.kitchen-faq-smooth__left::before {
    content: "";
    position: absolute;
    left: -38px;
    top: -48px;
    z-index: -1;
    width: 168px;
    height: 168px;
    border-radius: 50%;
    background: rgba(183, 111, 74, 0.08);
    pointer-events: none;
}

.kitchen-faq-smooth__left::after {
    content: "";
    position: absolute;
    left: 74px;
    bottom: -74px;
    z-index: -1;
    width: 118px;
    height: 156px;
    background:
        repeating-linear-gradient(-45deg,
            rgba(143, 78, 53, 0.065) 0,
            rgba(143, 78, 53, 0.065) 1px,
            transparent 1px,
            transparent 9px);
    opacity: 0.58;
    animation: kitchenFaqSmallFloat 8s ease-in-out infinite;
    pointer-events: none;
}

.kitchen-faq-smooth__right {
    padding: 40px 0 0;
}

.kitchen-faq-smooth__right::before {
    content: "";
    position: absolute;
    left: 32px;
    top: 34px;
    bottom: 92px;
    width: 1px;
    background:
        linear-gradient(180deg,
            rgba(183, 111, 74, 0),
            rgba(183, 111, 74, 0.44),
            rgba(183, 111, 74, 0));
    pointer-events: none;
}

.kitchen-faq-smooth__right::after {
    content: "";
    position: absolute;
    right: -36px;
    bottom: 74px;
    z-index: -1;
    width: 190px;
    height: 190px;
    border-radius: 50%;
    background: rgba(95, 108, 88, 0.075);
    animation: kitchenFaqCircleFloat 10s ease-in-out infinite;
    pointer-events: none;
}


/* ---------- 06. FAQ SMOOTH / left typography ---------- */

.kitchen-faq-smooth__eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 13px;
    margin: 0 0 20px;
    color: var(--ks-accent-dark);
    font-size: 0.72rem;
    font-weight: 900;
    line-height: 1;
    letter-spacing: 0.18em;
    text-transform: uppercase;
}

.kitchen-faq-smooth__eyebrow::before {
    content: "";
    width: 34px;
    height: 1px;
    background: currentColor;
    opacity: 0.82;
}

.kitchen-faq-smooth__title {
    max-width: 560px;
    margin: 0;
    color: var(--ks-heading);
    font-size: clamp(2.45rem, 3.55vw, 4.34rem);
    font-weight: 900;
    line-height: 0.9;
    letter-spacing: -0.08em;
    text-wrap: balance;
}

.kitchen-faq-smooth__text {
    max-width: 470px;
    margin: 25px 0 0;
    color: var(--ks-muted);
    font-size: clamp(1.03rem, 1.08vw, 1.16rem);
    line-height: 1.72;
    letter-spacing: -0.014em;
}


/* ---------- 06. FAQ SMOOTH / principle card ---------- */

.kitchen-faq-smooth__principle {
    position: relative;
    max-width: 470px;
    margin-top: 42px;
    padding: 30px 32px 32px;
    overflow: hidden;
    background: rgba(255, 250, 242, 0.72);
    border: 1px solid rgba(31, 37, 36, 0.1);
    box-shadow: 0 20px 58px rgba(31, 37, 36, 0.06);
    backdrop-filter: blur(8px);
    animation: kitchenFaqCardFloat 7s ease-in-out infinite;
}

.kitchen-faq-smooth__principle::before {
    content: "";
    display: block;
    width: 48px;
    height: 3px;
    margin-bottom: 18px;
    background: var(--ks-accent);
}

.kitchen-faq-smooth__principle::after {
    content: "";
    position: absolute;
    right: -50px;
    bottom: -50px;
    width: 158px;
    height: 158px;
    border-radius: 50%;
    background: rgba(183, 111, 74, 0.075);
    pointer-events: none;
}

.kitchen-faq-smooth__principle span {
    position: relative;
    z-index: 1;
    display: block;
    margin-bottom: 13px;
    color: var(--ks-accent-dark);
    font-size: 0.62rem;
    font-weight: 900;
    line-height: 1;
    letter-spacing: 0.17em;
    text-transform: uppercase;
}

.kitchen-faq-smooth__principle p {
    position: relative;
    z-index: 1;
    max-width: 380px;
    margin: 0;
    color: var(--ks-heading);
    font-size: clamp(1.13rem, 1.28vw, 1.42rem);
    font-weight: 770;
    line-height: 1.26;
    letter-spacing: -0.044em;
}


/* ---------- 06. FAQ SMOOTH / checkbox reset ---------- */

.kitchen-faq-smooth__toggle {
    position: absolute;
    inline-size: 1px;
    block-size: 1px;
    opacity: 0;
    pointer-events: none;
}


/* ---------- 06. FAQ SMOOTH / items ---------- */

.kitchen-faq-smooth__item {
    position: relative;
    border-bottom: 1px solid rgba(31, 37, 36, 0.13);
    animation: kitchenFaqItemReveal 650ms var(--ks-ease) both;
}

.kitchen-faq-smooth__item:nth-child(2) {
    animation-delay: 70ms;
}

.kitchen-faq-smooth__item:nth-child(3) {
    animation-delay: 120ms;
}

.kitchen-faq-smooth__item:nth-child(4) {
    animation-delay: 170ms;
}

.kitchen-faq-smooth__item:nth-child(5) {
    animation-delay: 220ms;
}

.kitchen-faq-smooth__item:nth-child(6) {
    animation-delay: 270ms;
}

.kitchen-faq-smooth__item:first-child {
    border-top: 1px solid rgba(31, 37, 36, 0.13);
}

.kitchen-faq-smooth__question {
    position: relative;
    min-height: 96px;
    padding: 29px 70px 29px 0;
    display: grid;
    grid-template-columns: 66px minmax(0, 1fr);
    gap: 28px;
    align-items: center;
    cursor: pointer;
}

.kitchen-faq-smooth__question::before {
    content: "";
    position: absolute;
    inset: 10px -18px 10px 84px;
    z-index: -1;
    background: rgba(255, 250, 242, 0);
    opacity: 0;
    transform: scaleX(0.986);
    transform-origin: left center;
    transition:
        opacity 240ms ease,
        transform 260ms var(--ks-ease),
        background-color 240ms ease,
        box-shadow 240ms ease;
    pointer-events: none;
}

.kitchen-faq-smooth__item:hover .kitchen-faq-smooth__question::before,
.kitchen-faq-smooth__toggle:checked+.kitchen-faq-smooth__question::before {
    opacity: 1;
    transform: scaleX(1);
    background: rgba(255, 250, 242, 0.72);
    box-shadow: 0 16px 42px rgba(31, 37, 36, 0.035);
}

.kitchen-faq-smooth__toggle:focus-visible+.kitchen-faq-smooth__question::before {
    opacity: 1;
    transform: scaleX(1);
    background: rgba(255, 250, 242, 0.86);
    box-shadow: 0 0 0 2px rgba(183, 111, 74, 0.18);
}

.kitchen-faq-smooth__toggle:checked+.kitchen-faq-smooth__question::after {
    content: "";
    position: absolute;
    left: 84px;
    right: 70px;
    bottom: 10px;
    height: 1px;
    background:
        linear-gradient(90deg,
            transparent,
            rgba(183, 111, 74, 0.62),
            transparent);
    animation: kitchenFaqActiveLine 2.6s ease-in-out infinite;
    pointer-events: none;
}


/* ---------- 06. FAQ SMOOTH / question typography ---------- */

.kitchen-faq-smooth__num {
    position: relative;
    z-index: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 64px;
    height: 64px;
    border: 1px solid rgba(183, 111, 74, 0.34);
    background: rgba(255, 250, 242, 0.76);
    color: var(--ks-accent-dark);
    font-size: 0.82rem;
    font-weight: 900;
    line-height: 1;
    letter-spacing: 0.11em;
    box-shadow: 0 10px 24px rgba(31, 37, 36, 0.04);
    transition:
        background-color 240ms ease,
        border-color 240ms ease,
        color 240ms ease,
        transform 260ms var(--ks-ease);
}

.kitchen-faq-smooth__toggle:checked+.kitchen-faq-smooth__question .kitchen-faq-smooth__num {
    background: var(--ks-charcoal);
    border-color: var(--ks-charcoal);
    color: var(--ks-accent-soft);
    transform: scale(1.025);
}

.kitchen-faq-smooth__question-text {
    position: relative;
    z-index: 1;
    max-width: 720px;
    color: var(--ks-heading);
    font-size: clamp(1.28rem, 1.72vw, 2.06rem);
    font-weight: 880;
    line-height: 1.05;
    letter-spacing: -0.06em;
    text-wrap: balance;
    transition: color 180ms ease;
}

.kitchen-faq-smooth__item:hover .kitchen-faq-smooth__question-text,
.kitchen-faq-smooth__toggle:checked+.kitchen-faq-smooth__question .kitchen-faq-smooth__question-text {
    color: var(--ks-accent-dark);
}


/* ---------- 06. FAQ SMOOTH / plus icon ---------- */

.kitchen-faq-smooth__plus {
    position: absolute;
    right: 6px;
    top: 50%;
    width: 36px;
    height: 36px;
    transform: translateY(-50%);
    border: 1px solid rgba(31, 37, 36, 0.16);
    background: rgba(255, 250, 242, 0.58);
    transition:
        background-color 240ms ease,
        border-color 240ms ease,
        transform 260ms var(--ks-ease),
        box-shadow 240ms ease;
}

.kitchen-faq-smooth__plus::before,
.kitchen-faq-smooth__plus::after {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    width: 13px;
    height: 2px;
    background: var(--ks-heading);
    transform: translate(-50%, -50%);
    transition:
        transform 240ms var(--ks-ease),
        background-color 240ms ease;
}

.kitchen-faq-smooth__plus::after {
    transform: translate(-50%, -50%) rotate(90deg);
}

.kitchen-faq-smooth__toggle:checked+.kitchen-faq-smooth__question .kitchen-faq-smooth__plus {
    background: var(--ks-charcoal);
    border-color: var(--ks-charcoal);
    transform: translateY(-50%) rotate(180deg);
    box-shadow:
        0 12px 26px rgba(31, 37, 36, 0.12),
        0 0 0 6px rgba(183, 111, 74, 0.07);
}

.kitchen-faq-smooth__toggle:checked+.kitchen-faq-smooth__question .kitchen-faq-smooth__plus::before,
.kitchen-faq-smooth__toggle:checked+.kitchen-faq-smooth__question .kitchen-faq-smooth__plus::after {
    background: var(--ks-accent-soft);
}

.kitchen-faq-smooth__toggle:checked+.kitchen-faq-smooth__question .kitchen-faq-smooth__plus::after {
    transform: translate(-50%, -50%) rotate(0deg);
}


/* ---------- 06. FAQ SMOOTH / answer animation ---------- */

.kitchen-faq-smooth__answer {
    display: grid;
    grid-template-rows: 0fr;
    padding-left: 94px;
    padding-right: 72px;
    overflow: hidden;
    opacity: 0;
    transform: translateY(-5px);
    transition:
        grid-template-rows 320ms var(--ks-ease),
        opacity 240ms ease,
        transform 320ms var(--ks-ease),
        padding-bottom 320ms var(--ks-ease);
}

.kitchen-faq-smooth__answer>div {
    min-height: 0;
    overflow: hidden;
}

.kitchen-faq-smooth__toggle:checked~.kitchen-faq-smooth__answer {
    grid-template-rows: 1fr;
    padding-bottom: 32px;
    opacity: 1;
    transform: translateY(0);
}

.kitchen-faq-smooth__answer p {
    max-width: 720px;
    margin: 0;
    color: var(--ks-muted);
    font-size: clamp(0.98rem, 1.02vw, 1.08rem);
    line-height: 1.68;
    letter-spacing: -0.012em;
}


/* ---------- 06. FAQ SMOOTH / bottom strip ---------- */

.kitchen-faq-smooth__bottom {
    position: relative;
    margin-top: 34px;
    padding: 24px 28px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 22px;
    overflow: hidden;
    background: var(--ks-charcoal);
    color: var(--ks-surface);
    box-shadow: 0 22px 60px rgba(31, 37, 36, 0.12);
}

.kitchen-faq-smooth__bottom::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(90deg,
            rgba(255, 250, 242, 0.026) 1px,
            transparent 1px),
        linear-gradient(rgba(255, 250, 242, 0.02) 1px,
            transparent 1px);
    background-size: 34px 34px;
    opacity: 0.36;
    pointer-events: none;
}

.kitchen-faq-smooth__bottom::after {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(110deg,
            transparent 0%,
            rgba(255, 250, 242, 0.08) 48%,
            transparent 100%);
    transform: translateX(-130%);
    animation: kitchenFaqCtaShine 5.8s ease-in-out infinite;
    pointer-events: none;
}

.kitchen-faq-smooth__bottom span,
.kitchen-faq-smooth__bottom a {
    position: relative;
    z-index: 1;
}

.kitchen-faq-smooth__bottom span {
    color: rgba(255, 250, 242, 0.78);
    font-size: 0.8rem;
    font-weight: 860;
    line-height: 1;
    letter-spacing: 0.13em;
    text-transform: uppercase;
}

.kitchen-faq-smooth__bottom a {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    color: var(--ks-accent-soft);
    text-decoration: none;
    font-size: 0.78rem;
    font-weight: 900;
    line-height: 1;
    letter-spacing: 0.13em;
    text-transform: uppercase;
}

.kitchen-faq-smooth__bottom a::after {
    content: "";
    width: 36px;
    height: 1px;
    background: currentColor;
    transition: width 200ms ease;
}

.kitchen-faq-smooth__bottom a:hover::after,
.kitchen-faq-smooth__bottom a:focus-visible::after {
    width: 52px;
}


/* =========================================================
   06. FAQ SMOOTH / responsive
   ========================================================= */

@media (max-width: 1180px) {
    .kitchen-faq-smooth__inner {
        grid-template-columns: 1fr;
        gap: 48px;
    }

    .kitchen-faq-smooth__left {
        max-width: 820px;
    }

    .kitchen-faq-smooth__title,
    .kitchen-faq-smooth__text,
    .kitchen-faq-smooth__principle {
        max-width: 720px;
    }

    .kitchen-faq-smooth__right {
        max-width: 940px;
    }

    .kitchen-faq-smooth__inner::after {
        left: auto;
        right: -90px;
        top: auto;
        bottom: -120px;
    }

    .kitchen-faq-smooth__right::after {
        right: -76px;
        bottom: 60px;
    }
}

@media (max-width: 760px) {
    .kitchen-faq-smooth {
        padding-bottom: 94px;
    }

    .kitchen-faq-smooth__inner {
        width: min(100% - 32px, var(--ks-container));
        padding-top: 78px;
        gap: 38px;
    }

    .kitchen-faq-smooth__inner::before {
        left: -150px;
        top: 70px;
        width: 320px;
        height: 320px;
        opacity: 0.44;
    }

    .kitchen-faq-smooth__inner::after {
        right: -92px;
        bottom: -80px;
        width: 240px;
        height: 240px;
        opacity: 0.44;
    }

    .kitchen-faq-smooth__left::after,
    .kitchen-faq-smooth__right::after {
        display: none;
    }

    .kitchen-faq-smooth__title {
        font-size: clamp(2rem, 9.5vw, 2.95rem);
        line-height: 0.98;
        letter-spacing: -0.068em;
    }

    .kitchen-faq-smooth__text {
        margin-top: 18px;
        font-size: 0.96rem;
        line-height: 1.62;
    }

    .kitchen-faq-smooth__principle {
        margin-top: 28px;
        padding: 25px 22px 26px;
    }

    .kitchen-faq-smooth__principle p {
        font-size: clamp(1.05rem, 5vw, 1.28rem);
    }

    .kitchen-faq-smooth__right::before {
        left: 22px;
        bottom: 86px;
    }

    .kitchen-faq-smooth__question {
        min-height: 80px;
        grid-template-columns: 46px minmax(0, 1fr);
        gap: 16px;
        padding: 23px 46px 23px 0;
    }

    .kitchen-faq-smooth__question::before {
        inset: 8px -10px 8px 58px;
    }

    .kitchen-faq-smooth__toggle:checked+.kitchen-faq-smooth__question::after {
        left: 58px;
        right: 46px;
    }

    .kitchen-faq-smooth__num {
        width: 44px;
        height: 44px;
        font-size: 0.72rem;
    }

    .kitchen-faq-smooth__question-text {
        font-size: clamp(1.1rem, 5.4vw, 1.48rem);
        line-height: 1.1;
    }

    .kitchen-faq-smooth__plus {
        right: 0;
        width: 30px;
        height: 30px;
    }

    .kitchen-faq-smooth__answer {
        padding-left: 62px;
        padding-right: 8px;
    }

    .kitchen-faq-smooth__toggle:checked~.kitchen-faq-smooth__answer {
        padding-bottom: 24px;
    }

    .kitchen-faq-smooth__answer p {
        font-size: 0.92rem;
        line-height: 1.56;
    }

    .kitchen-faq-smooth__bottom {
        align-items: flex-start;
        flex-direction: column;
        padding: 23px 22px;
    }
}

@media (max-width: 460px) {
    .kitchen-faq-smooth__question {
        grid-template-columns: 1fr;
        gap: 12px;
        padding-right: 44px;
    }

    .kitchen-faq-smooth__question::before {
        inset: 8px -8px 8px -8px;
    }

    .kitchen-faq-smooth__toggle:checked+.kitchen-faq-smooth__question::after {
        left: 0;
        right: 44px;
    }

    .kitchen-faq-smooth__right::before {
        display: none;
    }

    .kitchen-faq-smooth__answer {
        padding-left: 0;
        padding-right: 0;
    }

    .kitchen-faq-smooth__toggle:checked~.kitchen-faq-smooth__answer {
        padding-bottom: 24px;
    }

    .kitchen-faq-smooth__bottom a {
        line-height: 1.25;
    }
}


/* =========================================================
   06. FAQ SMOOTH / animations
   ========================================================= */

@keyframes kitchenFaqFigureDrift {

    0%,
    100% {
        transform: translate3d(0, 0, 0) rotate(0deg);
    }

    50% {
        transform: translate3d(18px, -14px, 0) rotate(3deg);
    }
}

@keyframes kitchenFaqGridDrift {

    0%,
    100% {
        transform: translate3d(0, 0, 0) rotate(2deg);
        opacity: 0.5;
    }

    50% {
        transform: translate3d(-12px, 14px, 0) rotate(0.5deg);
        opacity: 0.68;
    }
}

@keyframes kitchenFaqSmallFloat {

    0%,
    100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-12px);
    }
}

@keyframes kitchenFaqCircleFloat {

    0%,
    100% {
        transform: translate3d(0, 0, 0) scale(1);
    }

    50% {
        transform: translate3d(-10px, 12px, 0) scale(1.04);
    }
}

@keyframes kitchenFaqSteam {

    0%,
    100% {
        transform: translate3d(0, 0, 0);
        opacity: 0.32;
    }

    50% {
        transform: translate3d(0, -18px, 0);
        opacity: 0.52;
    }
}

@keyframes kitchenFaqItemReveal {
    from {
        opacity: 0;
        transform: translateY(18px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes kitchenFaqCardFloat {

    0%,
    100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-6px);
    }
}

@keyframes kitchenFaqActiveLine {

    0%,
    100% {
        opacity: 0.32;
        transform: scaleX(0.9);
    }

    50% {
        opacity: 0.82;
        transform: scaleX(1);
    }
}

@keyframes kitchenFaqCtaShine {

    0%,
    42% {
        transform: translateX(-130%);
    }

    62%,
    100% {
        transform: translateX(130%);
    }
}

@media (prefers-reduced-motion: reduce) {

    .kitchen-faq-smooth__inner::before,
    .kitchen-faq-smooth__inner::after,
    .kitchen-faq-smooth__left::after,
    .kitchen-faq-smooth__right::after,
    .kitchen-faq-smooth__item,
    .kitchen-faq-smooth__principle,
    .kitchen-faq-smooth__bottom::after,
    .kitchen-faq-smooth__toggle:checked+.kitchen-faq-smooth__question::after {
        animation: none;
    }

    .kitchen-faq-smooth__question::before,
    .kitchen-faq-smooth__num,
    .kitchen-faq-smooth__question-text,
    .kitchen-faq-smooth__plus,
    .kitchen-faq-smooth__plus::before,
    .kitchen-faq-smooth__plus::after,
    .kitchen-faq-smooth__answer,
    .kitchen-faq-smooth__bottom a::after {
        transition: none;
    }
}

/* =========================================================
   07. KITCHEN DISCLOSURE HERO
   Standalone editorial disclosure mini-hero
   Hero-style wide composition
   ========================================================= */


/* ---------- 07. DISCLOSURE HERO / section base ---------- */

.kitchen-disclosure-hero {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    padding: clamp(18px, 6.2vw, 80px) 0 clamp(94px, 6.8vw, 130px);
    background: var(--ks-bg);
    color: var(--ks-ink);
}

.kitchen-disclosure-hero::before {
    content: "";
    position: absolute;
    top: 18%;
    right: -7vw;
    z-index: -5;
    width: 56vw;
    height: 64%;
    background: rgba(95, 108, 88, 0.082);
    clip-path: polygon(18% 0, 100% 0, 100% 100%, 0 82%);
    pointer-events: none;
}

.kitchen-disclosure-hero::after {
    content: "";
    position: absolute;
    left: -9vw;
    top: 20%;
    z-index: -5;
    width: 31vw;
    height: 31vw;
    min-width: 390px;
    min-height: 390px;
    border: 1px solid rgba(31, 37, 36, 0.058);
    border-radius: 50%;
    pointer-events: none;
}


/* ---------- 07. DISCLOSURE HERO / layout ---------- */

.kitchen-disclosure-hero__inner {
    position: relative;
    z-index: 2;
    width: min(var(--ks-container), calc(100% - 64px));
    margin: 0 auto;
    display: grid;
    grid-template-columns: minmax(0, 0.78fr) minmax(640px, 1.08fr);
    grid-template-areas:
        "copy visual"
        "copy rail";
    gap: 20px clamp(56px, 6vw, 96px);
    align-items: center;
}

.kitchen-disclosure-hero__inner::before {
    content: "";
    position: absolute;
    right: 22px;
    top: 18px;
    z-index: -3;
    width: clamp(260px, 26vw, 420px);
    height: clamp(220px, 22vw, 340px);
    border: 1px solid rgba(31, 37, 36, 0.055);
    background:
        linear-gradient(90deg,
            rgba(31, 37, 36, 0.023) 1px,
            transparent 1px),
        linear-gradient(rgba(31, 37, 36, 0.019) 1px,
            transparent 1px);
    background-size: 38px 38px;
    opacity: 0.52;
    transform: rotate(1.8deg);
    animation: kitchenFloatSlow 9s ease-in-out infinite;
    pointer-events: none;
}

.kitchen-disclosure-hero__inner::after {
    content: "DISCLOSURE";
    position: absolute;
    left: 36%;
    bottom: 20px;
    z-index: -3;
    color: rgba(31, 37, 36, 0.031);
    font-size: clamp(4.2rem, 8vw, 10rem);
    font-weight: 900;
    line-height: 0.8;
    letter-spacing: 0.045em;
    white-space: nowrap;
    text-transform: uppercase;
    pointer-events: none;
}


/* ---------- 07. DISCLOSURE HERO / copy ---------- */

.kitchen-disclosure-hero__copy {
    grid-area: copy;
    position: relative;
    min-height: 520px;
    padding: 26px 0 26px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    animation: kitchenFadeUp 720ms var(--ks-ease) both;
}

.kitchen-disclosure-hero__copy::before {
    content: "";
    position: absolute;
    left: -48px;
    top: 82px;
    width: 4px;
    height: 104px;
    background: var(--ks-accent);
}

.kitchen-disclosure-hero__eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 13px;
    margin: 0 0 22px;
    color: var(--ks-accent-dark);
    font-size: 0.72rem;
    font-weight: 900;
    line-height: 1;
    letter-spacing: 0.18em;
    text-transform: uppercase;
}

.kitchen-disclosure-hero__eyebrow::before {
    content: "";
    width: 34px;
    height: 1px;
    background: currentColor;
    opacity: 0.82;
}

.kitchen-disclosure-hero__title {
    max-width: 760px;
    margin: 0;
    color: var(--ks-heading);
    font-size: clamp(3.1rem, 5.2vw, 6.35rem);
    font-weight: 900;
    line-height: 0.82;
    letter-spacing: -0.092em;
    text-wrap: balance;
}

.kitchen-disclosure-hero__text {
    position: relative;
    max-width: 635px;
    margin: 28px 0 0;
    padding: 18px 24px 19px 25px;
    border-left: 3px solid rgba(183, 111, 74, 0.54);
    background: rgba(255, 250, 242, 0.52);
    color: #505a55;
    font-size: clamp(1.02rem, 1.08vw, 1.18rem);
    font-weight: 520;
    line-height: 1.7;
    letter-spacing: -0.012em;
    box-shadow: 0 14px 34px rgba(31, 37, 36, 0.035);
    backdrop-filter: blur(6px);
}

.kitchen-disclosure-hero__rule {
    position: relative;
    max-width: 540px;
    margin-top: 30px;
    padding: 24px 28px 25px;
    overflow: hidden;
    background: rgba(255, 250, 242, 0.74);
    border: 1px solid rgba(31, 37, 36, 0.105);
    box-shadow: 0 18px 44px rgba(31, 37, 36, 0.055);
    animation: kitchenFloatCard 7s ease-in-out infinite;
}

.kitchen-disclosure-hero__rule::before {
    content: "";
    display: block;
    width: 44px;
    height: 2px;
    margin-bottom: 15px;
    background: var(--ks-accent);
}

.kitchen-disclosure-hero__rule::after {
    content: "";
    position: absolute;
    right: -42px;
    bottom: -42px;
    width: 128px;
    height: 128px;
    border-radius: 50%;
    background: rgba(183, 111, 74, 0.065);
    pointer-events: none;
}

.kitchen-disclosure-hero__rule span {
    position: relative;
    z-index: 1;
    display: block;
    margin-bottom: 10px;
    color: var(--ks-accent-dark);
    font-size: 0.62rem;
    font-weight: 900;
    line-height: 1;
    letter-spacing: 0.17em;
    text-transform: uppercase;
}

.kitchen-disclosure-hero__rule p {
    position: relative;
    z-index: 1;
    max-width: 430px;
    margin: 0;
    color: var(--ks-heading);
    font-size: clamp(1.06rem, 1.18vw, 1.3rem);
    font-weight: 780;
    line-height: 1.24;
    letter-spacing: -0.04em;
}


/* ---------- 07. DISCLOSURE HERO / visual ---------- */

.kitchen-disclosure-hero__visual {
    grid-area: visual;
    position: relative;
    min-height: 510px;
    animation: kitchenFadeIn 820ms var(--ks-ease) 120ms both;
}

.kitchen-disclosure-hero__visual::before {
    content: "";
    position: absolute;
    right: 34px;
    top: -26px;
    z-index: -2;
    width: min(650px, 100%);
    height: 455px;
    border: 1px solid rgba(31, 37, 36, 0.075);
    background:
        linear-gradient(90deg,
            rgba(31, 37, 36, 0.026) 1px,
            transparent 1px),
        linear-gradient(rgba(31, 37, 36, 0.021) 1px,
            transparent 1px),
        radial-gradient(circle at 18% 24%,
            rgba(183, 111, 74, 0.11) 0 1.5px,
            transparent 2px),
        radial-gradient(circle at 74% 72%,
            rgba(95, 108, 88, 0.12) 0 1.5px,
            transparent 2px);
    background-size:
        38px 38px,
        38px 38px,
        42px 42px,
        54px 54px;
    opacity: 0.74;
    transform: rotate(1.2deg);
    animation: kitchenFloatSoft 10s ease-in-out infinite;
    pointer-events: none;
}

.kitchen-disclosure-hero__visual::after {
    content: "";
    position: absolute;
    right: -34px;
    bottom: 58px;
    z-index: -1;
    width: 180px;
    height: 180px;
    border: 1px solid rgba(31, 37, 36, 0.06);
    background:
        repeating-linear-gradient(-45deg,
            rgba(143, 78, 53, 0.065) 0,
            rgba(143, 78, 53, 0.065) 1px,
            transparent 1px,
            transparent 10px);
    opacity: 0.62;
    animation: kitchenFloatSlow 11s ease-in-out infinite;
    pointer-events: none;
}

.kitchen-disclosure-hero__photo {
    position: relative;
    z-index: 2;
    width: min(720px, 100%);
    height: 510px;
    margin: 0 0 0 auto;
    overflow: hidden;
    background: #d8d1c7;
    box-shadow: var(--ks-shadow-lg);
    animation: kitchenFloatCard 7.5s ease-in-out infinite;
}

.kitchen-disclosure-hero__photo::before {
    content: "";
    position: absolute;
    inset: 18px;
    z-index: 2;
    border: 1px solid rgba(255, 250, 242, 0.42);
    pointer-events: none;
}

.kitchen-disclosure-hero__photo::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    background:
        linear-gradient(to bottom,
            rgba(21, 25, 24, 0.015),
            rgba(21, 25, 24, 0.14)),
        linear-gradient(110deg,
            rgba(255, 250, 242, 0.07),
            transparent 45%);
    pointer-events: none;
}

.kitchen-disclosure-hero__photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
    transform: scale(1.02);
    animation: kitchenImageDrift 14s ease-in-out infinite alternate;
}

.kitchen-disclosure-hero__badge {
    position: absolute;
    left: -34px;
    bottom: 38px;
    z-index: 4;
    width: min(430px, 58%);
    padding: 27px 31px 29px;
    overflow: hidden;
    background: var(--ks-charcoal);
    color: var(--ks-surface);
    box-shadow: 0 30px 76px rgba(31, 37, 36, 0.2);
    animation: kitchenFloatCard 7s ease-in-out 400ms infinite;
}

.kitchen-disclosure-hero__badge::before {
    content: "";
    display: block;
    width: 44px;
    height: 2px;
    margin-bottom: 15px;
    background: var(--ks-accent-soft);
}

.kitchen-disclosure-hero__badge::after {
    content: "";
    position: absolute;
    right: -44px;
    bottom: -44px;
    width: 138px;
    height: 138px;
    border-radius: 50%;
    border: 1px solid rgba(255, 250, 242, 0.1);
    pointer-events: none;
}

.kitchen-disclosure-hero__badge span {
    position: relative;
    z-index: 1;
    display: block;
    margin-bottom: 10px;
    color: var(--ks-accent-soft);
    font-size: 0.62rem;
    font-weight: 900;
    line-height: 1;
    letter-spacing: 0.17em;
    text-transform: uppercase;
}

.kitchen-disclosure-hero__badge strong {
    position: relative;
    z-index: 1;
    display: block;
    max-width: 330px;
    color: rgba(255, 250, 242, 0.92);
    font-size: clamp(1.08rem, 1.24vw, 1.38rem);
    font-weight: 820;
    line-height: 1.14;
    letter-spacing: -0.044em;
}


/* ---------- 07. DISCLOSURE HERO / bottom rail ---------- */

.kitchen-disclosure-hero__rail {
    grid-area: rail;
    position: relative;
    z-index: 4;
    width: min(720px, 100%);
    margin: -8px 0 0 auto;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    background: rgba(255, 250, 242, 0.84);
    border: 1px solid rgba(31, 37, 36, 0.12);
    box-shadow: 0 22px 58px rgba(31, 37, 36, 0.075);
    backdrop-filter: blur(10px);
}

.kitchen-disclosure-hero__rail::before {
    content: "";
    position: absolute;
    left: 0;
    top: -3px;
    width: 86px;
    height: 3px;
    background: var(--ks-accent);
    pointer-events: none;
}

.kitchen-disclosure-hero__rail a {
    position: relative;
    min-height: 84px;
    padding: 21px 24px;
    display: grid;
    grid-template-columns: 38px minmax(0, 1fr);
    gap: 15px;
    align-items: center;
    overflow: hidden;
    color: var(--ks-heading);
    text-decoration: none;
    border-right: 1px solid rgba(31, 37, 36, 0.12);
    transition:
        background-color 180ms ease,
        color 180ms ease,
        transform 180ms ease;
}

.kitchen-disclosure-hero__rail a:last-child {
    border-right: 0;
}

.kitchen-disclosure-hero__rail a::before {
    content: "";
    position: absolute;
    right: -30px;
    top: -30px;
    width: 88px;
    height: 88px;
    border-radius: 50%;
    background: rgba(183, 111, 74, 0.075);
    opacity: 0;
    transform: scale(0.78);
    transition:
        opacity 200ms ease,
        transform 200ms ease;
    pointer-events: none;
}

.kitchen-disclosure-hero__rail a:hover,
.kitchen-disclosure-hero__rail a:focus-visible {
    background: var(--ks-surface);
    transform: translateY(-3px);
}

.kitchen-disclosure-hero__rail a:hover::before,
.kitchen-disclosure-hero__rail a:focus-visible::before {
    opacity: 1;
    transform: scale(1.2);
}

.kitchen-disclosure-hero__rail span {
    position: relative;
    z-index: 1;
    color: var(--ks-accent-dark);
    font-size: 0.76rem;
    font-weight: 900;
    line-height: 1;
    letter-spacing: 0.11em;
}

.kitchen-disclosure-hero__rail strong {
    position: relative;
    z-index: 1;
    color: var(--ks-heading);
    font-size: 0.72rem;
    font-weight: 900;
    line-height: 1.15;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}


/* =========================================================
   07. DISCLOSURE HERO / responsive
   ========================================================= */

@media (max-width: 1180px) {
    .kitchen-disclosure-hero__inner {
        grid-template-columns: 1fr;
        grid-template-areas:
            "copy"
            "visual"
            "rail";
        gap: 34px;
        width: min(980px, calc(100% - 48px));
    }

    .kitchen-disclosure-hero__copy {
        min-height: 0;
        max-width: 860px;
    }

    .kitchen-disclosure-hero__copy::before {
        left: -28px;
    }

    .kitchen-disclosure-hero__visual {
        min-height: 500px;
        max-width: 860px;
    }

    .kitchen-disclosure-hero__photo {
        width: 100%;
        height: 500px;
        margin: 0;
    }

    .kitchen-disclosure-hero__badge {
        left: 34px;
    }

    .kitchen-disclosure-hero__rail {
        width: min(860px, 100%);
        margin: -4px 0 0;
    }

    .kitchen-disclosure-hero__inner::after {
        left: 6%;
        bottom: 18px;
        font-size: clamp(3.6rem, 12vw, 8rem);
    }
}

@media (max-width: 760px) {
    .kitchen-disclosure-hero {
        padding: 68px 0 88px;
    }

    .kitchen-disclosure-hero__inner {
        width: min(100% - 32px, var(--ks-container));
        gap: 28px;
    }

    .kitchen-disclosure-hero__copy::before {
        left: 0;
        top: 0;
        height: 72px;
    }

    .kitchen-disclosure-hero__title {
        font-size: clamp(2.15rem, 10.5vw, 3.35rem);
        line-height: 0.92;
        letter-spacing: -0.078em;
    }

    .kitchen-disclosure-hero__text {
        margin-top: 19px;
        padding: 16px 18px 17px;
        font-size: 0.94rem;
        line-height: 1.58;
    }

    .kitchen-disclosure-hero__rule {
        margin-top: 22px;
        padding: 22px 22px 23px;
    }

    .kitchen-disclosure-hero__visual {
        min-height: 390px;
    }

    .kitchen-disclosure-hero__visual::before {
        right: 12px;
        top: -16px;
        height: 330px;
        background-size:
            30px 30px,
            30px 30px,
            36px 36px,
            44px 44px;
    }

    .kitchen-disclosure-hero__visual::after {
        right: -18px;
        bottom: 42px;
        width: 92px;
        height: 92px;
    }

    .kitchen-disclosure-hero__photo {
        height: 390px;
    }

    .kitchen-disclosure-hero__badge {
        left: 22px;
        right: 22px;
        bottom: 18px;
        width: auto;
        padding: 23px 24px 24px;
    }

    .kitchen-disclosure-hero__badge strong {
        font-size: clamp(1.02rem, 5vw, 1.24rem);
    }

    .kitchen-disclosure-hero__rail {
        grid-template-columns: 1fr;
        margin-top: 0;
    }

    .kitchen-disclosure-hero__rail a {
        min-height: 72px;
        padding: 19px 22px;
        border-right: 0;
        border-bottom: 1px solid rgba(31, 37, 36, 0.12);
    }

    .kitchen-disclosure-hero__rail a:last-child {
        border-bottom: 0;
    }

    .kitchen-disclosure-hero__inner::after {
        letter-spacing: 0.05em;
        opacity: 0.7;
    }
}

@media (max-width: 460px) {
    .kitchen-disclosure-hero__visual {
        min-height: 350px;
    }

    .kitchen-disclosure-hero__photo {
        height: 350px;
    }
}


/* =========================================================
   07. DISCLOSURE HERO / reduced motion
   ========================================================= */

@media (prefers-reduced-motion: reduce) {

    .kitchen-disclosure-hero__inner::before,
    .kitchen-disclosure-hero__visual::before,
    .kitchen-disclosure-hero__visual::after,
    .kitchen-disclosure-hero__photo,
    .kitchen-disclosure-hero__photo img,
    .kitchen-disclosure-hero__badge,
    .kitchen-disclosure-hero__rule {
        animation: none;
    }

    .kitchen-disclosure-hero__rail a,
    .kitchen-disclosure-hero__rail a::before {
        transition: none;
    }

    .kitchen-disclosure-hero__rail a:hover,
    .kitchen-disclosure-hero__rail a:focus-visible {
        transform: none;
    }
}