/*
Theme Name: KISHI
Author: KISHI
Description: Custom WordPress theme for the KISHI portfolio and lead-generation website.
Version: 1.17.0
Text Domain: kishi
*/

:root {
    --kishi-bg: #070b16;
    --kishi-bg-2: #0b1120;
    --kishi-surface: rgba(14, 20, 36, 0.88);
    --kishi-surface-2: rgba(20, 27, 46, 0.95);
    --kishi-border: rgba(125, 102, 255, 0.22);
    --kishi-text: #f5f7ff;
    --kishi-text-soft: #b9c0d4;
    --kishi-accent: #6f54ff;
    --kishi-accent-2: #8c7dff;
    --kishi-accent-glow: rgba(111, 84, 255, 0.35);
    --kishi-content-width: 1200px;
    --kishi-page-gutter: 24px;
    --kishi-radius-lg: 28px;
    --kishi-radius-md: 20px;
    --kishi-radius-sm: 14px;
    --kishi-shadow: 0 20px 60px rgba(0, 0, 0, 0.4);
}

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

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

body {
    margin: 0;
    direction: rtl;
    background:
        radial-gradient(circle at top right, rgba(111, 84, 255, 0.18), transparent 26%),
        radial-gradient(circle at top left, rgba(44, 166, 255, 0.1), transparent 22%),
        linear-gradient(180deg, #060915 0%, #090e1d 42%, #050811 100%);
    color: var(--kishi-text);
    font-family: Tahoma, Arial, sans-serif;
    line-height: 1.7;
}

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

img,
svg,
video {
    display: block;
    max-width: 100%;
}

button,
input,
textarea,
select {
    font: inherit;
}

.kishi-site-main {
    display: block;
}

.kishi-container {
    width: min(var(--kishi-content-width), calc(100% - (var(--kishi-page-gutter) * 2)));
    margin-inline: auto;
}

.kishi-topbar {
    border-bottom: 1px solid rgba(255, 255, 255, 0.06);
    background: rgba(6, 9, 21, 0.92);
    backdrop-filter: blur(12px);
}

.kishi-topbar__inner,
.kishi-site-header__inner,
.kishi-footer__inner {
    width: min(var(--kishi-content-width), calc(100% - (var(--kishi-page-gutter) * 2)));
    margin-inline: auto;
}

.kishi-topbar__inner {
    min-height: 42px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
    color: var(--kishi-text-soft);
    font-size: 13px;
}

.kishi-topbar__status {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.kishi-topbar__status::before {
    content: "";
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #23d160;
    box-shadow: 0 0 0 8px rgba(35, 209, 96, 0.08);
}



.kishi-site-header {
    position: sticky;
    top: 0;
    z-index: 30;
    border-bottom: 1px solid rgba(255, 255, 255, 0.06);
    background: rgba(7, 11, 22, 0.82);
    backdrop-filter: blur(18px);
}

.kishi-site-header__inner {
    min-height: 86px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
}

.kishi-site-header__brand {
    display: inline-flex;
    align-items: center;
    gap: 14px;
    font-size: 30px;
    font-weight: 800;
    letter-spacing: 0.04em;
}

.kishi-site-header__brand-mark {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    border-radius: 14px;
    background: linear-gradient(135deg, rgba(78, 143, 255, 0.16), rgba(111, 84, 255, 0.3));
    border: 1px solid rgba(127, 164, 255, 0.18);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06), 0 0 30px rgba(111, 84, 255, 0.2);
}

.kishi-site-header__brand-name {
    color: #fff;
}

.kishi-site-header__nav {
    display: flex;
    align-items: center;
    gap: 28px;
}

.kishi-site-header__menu {
    display: flex;
    align-items: center;
    gap: 24px;
    margin: 0;
    padding: 0;
    list-style: none;
    color: var(--kishi-text-soft);
}

.kishi-site-header__menu a {
    position: relative;
    display: inline-flex;
    align-items: center;
    min-height: 40px;
    font-size: 15px;
    font-weight: 600;
}

.kishi-site-header__menu .current-menu-item > a,
.kishi-site-header__menu a:hover,
.kishi-site-header__menu a:focus-visible {
    color: #fff;
}

.kishi-site-header__menu .current-menu-item > a::after,
.kishi-site-header__menu a:hover::after,
.kishi-site-header__menu a:focus-visible::after {
    content: "";
    position: absolute;
    right: 0;
    bottom: -6px;
    width: 100%;
    height: 2px;
    border-radius: 999px;
    background: linear-gradient(90deg, var(--kishi-accent), #7da8ff);
}

.kishi-button,
.kishi-button:visited {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 50px;
    padding: 0 22px;
    border-radius: 14px;
    border: 1px solid transparent;
    font-weight: 700;
    transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease, background 0.2s ease;
}

.kishi-button:hover,
.kishi-button:focus-visible {
    transform: translateY(-1px);
}

.kishi-button--primary {
    background: linear-gradient(135deg, var(--kishi-accent), #5d8fff);
    color: #fff;
    box-shadow: 0 16px 28px rgba(91, 94, 255, 0.24);
}

.kishi-button--secondary {
    background: rgba(255, 255, 255, 0.02);
    border-color: rgba(255, 255, 255, 0.14);
    color: #fff;
}

.kishi-hero {
    padding: 64px 0 24px;
}

.kishi-hero__grid {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(380px, 0.95fr);
    align-items: center;
    gap: 34px;
}

.kishi-hero__eyebrow {
    margin: 0 0 16px;
    color: #a998ff;
    font-size: 16px;
    font-weight: 700;
}

.kishi-hero__title {
    margin: 0 0 20px;
    font-size: clamp(40px, 5vw, 72px);
    line-height: 1.15;
    letter-spacing: -0.04em;
}

.kishi-hero__description {
    max-width: 640px;
    margin: 0 0 28px;
    color: var(--kishi-text-soft);
    font-size: 18px;
}

.kishi-hero__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    margin-bottom: 26px;
}

.kishi-hero__hint {
    color: var(--kishi-text-soft);
    font-size: 14px;
}

.kishi-hero__visual {
    position: relative;
    min-height: 580px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 36px;
    overflow: hidden;
    background:
        radial-gradient(circle at 50% 38%, rgba(111, 84, 255, 0.33), transparent 28%),
        radial-gradient(circle at 65% 55%, rgba(54, 126, 255, 0.18), transparent 26%),
        linear-gradient(180deg, rgba(10, 15, 28, 0.98), rgba(8, 11, 22, 0.98));
    box-shadow: var(--kishi-shadow);
}

.kishi-hero__orbit,
.kishi-hero__orbit::before,
.kishi-hero__orbit::after {
    position: absolute;
    border-radius: 50%;
    border: 1px solid rgba(140, 125, 255, 0.35);
}

.kishi-hero__orbit {
    inset: 100px 70px 110px 70px;
}

.kishi-hero__orbit::before,
.kishi-hero__orbit::after {
    content: "";
    inset: 18% 12%;
    transform: rotate(32deg);
}

.kishi-hero__orbit::after {
    inset: 28% 18%;
    transform: rotate(-24deg);
}

.kishi-hero__portrait {
    position: absolute;
    inset-inline-start: 50%;
    transform: translateX(-50%);
    bottom: 0;
    width: min(82%, 470px);
    height: 84%;
    display: flex;
    align-items: flex-end;
    justify-content: center;
    border-radius: 28px 28px 0 0;
    background:
        radial-gradient(circle at 50% 24%, rgba(255, 255, 255, 0.12), transparent 18%),
        linear-gradient(180deg, rgba(255,255,255,0.08), rgba(255,255,255,0) 35%),
        linear-gradient(180deg, rgba(17, 24, 42, 0.15) 0%, rgba(11, 16, 30, 0.72) 64%),
        linear-gradient(135deg, rgba(126, 75, 255, 0.3), rgba(14, 20, 36, 0.28));
}

.kishi-hero__portrait::before {
    content: "KISHI";
    position: absolute;
    top: 52px;
    right: 50%;
    transform: translateX(50%);
    font-size: 72px;
    font-weight: 800;
    letter-spacing: 0.08em;
    color: rgba(255, 255, 255, 0.06);
}

.kishi-hero__portrait::after {
    content: "پرتره شما";
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 210px;
    height: 210px;
    margin-bottom: 56px;
    border-radius: 50%;
    border: 1px dashed rgba(255, 255, 255, 0.16);
    color: rgba(255, 255, 255, 0.7);
    background: radial-gradient(circle at 50% 30%, rgba(111, 84, 255, 0.34), rgba(12, 17, 31, 0.18));
    font-size: 22px;
    font-weight: 700;
}

.kishi-hero__badge {
    position: absolute;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 74px;
    height: 74px;
    padding: 0 18px;
    border-radius: 24px;
    border: 1px solid rgba(124, 144, 255, 0.22);
    background: rgba(19, 24, 42, 0.82);
    box-shadow: 0 14px 38px rgba(0, 0, 0, 0.35);
    color: #fff;
    font-size: 26px;
    font-weight: 800;
}

.kishi-hero__badge--wordpress { top: 120px; right: 56px; }
.kishi-hero__badge--code { top: 180px; left: 42px; }
.kishi-hero__badge--figma { bottom: 96px; left: 58px; }

.kishi-hero__scroll {
    position: absolute;
    left: 26px;
    bottom: 24px;
    color: var(--kishi-text-soft);
    font-size: 13px;
    writing-mode: vertical-rl;
}

.kishi-section {
    padding: 22px 0;
}

.kishi-card {
    border: 1px solid rgba(255, 255, 255, 0.07);
    border-radius: var(--kishi-radius-lg);
    background: linear-gradient(180deg, rgba(12, 17, 31, 0.95), rgba(10, 14, 25, 0.92));
    box-shadow: var(--kishi-shadow);
}

.kishi-section-heading {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0 0 18px;
    font-size: 15px;
    font-weight: 800;
    color: #d8dcf5;
}

.kishi-section-heading::before {
    content: "";
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background: var(--kishi-accent);
    box-shadow: 0 0 0 8px rgba(111, 84, 255, 0.12);
}

.kishi-about {
    padding: 36px;
}

.kishi-about__grid {
    display: grid;
    grid-template-columns: minmax(280px, 360px) minmax(0, 1fr);
    gap: 26px;
    align-items: center;
}

.kishi-about__media {
    min-height: 250px;
    border-radius: 26px;
    background: linear-gradient(135deg, rgba(90, 86, 255, 0.4), rgba(49, 117, 255, 0.18));
    border: 1px solid rgba(255, 255, 255, 0.08);
    position: relative;
    overflow: hidden;
}

.kishi-about__media::before {
    content: "تصویر شما";
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    font-weight: 800;
    color: rgba(255, 255, 255, 0.82);
}

.kishi-about__title {
    margin: 0 0 14px;
    font-size: clamp(28px, 3vw, 40px);
    line-height: 1.25;
}

.kishi-about__text {
    margin: 0;
    color: var(--kishi-text-soft);
}

.kishi-stats {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
    margin-top: 26px;
}

.kishi-stat {
    padding: 20px 16px;
    border-radius: 20px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    background: rgba(255, 255, 255, 0.02);
    text-align: center;
}

.kishi-stat__value {
    display: block;
    margin-bottom: 6px;
    font-size: 32px;
    font-weight: 800;
    line-height: 1;
    color: #fff;
}

.kishi-stat__label {
    color: var(--kishi-text-soft);
    font-size: 14px;
}

.kishi-footer {
    padding: 28px 0 38px;
    margin-top: 26px;
    border-top: 1px solid rgba(255, 255, 255, 0.06);
    color: var(--kishi-text-soft);
}

.kishi-footer__inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}

.kishi-footer__brand {
    color: #fff;
    font-weight: 800;
}

@media (max-width: 1100px) {
    .kishi-hero__grid,
    .kishi-about__grid {
        grid-template-columns: 1fr;
    }

    .kishi-hero__visual {
        min-height: 520px;
    }
}

@media (max-width: 860px) {
    .kishi-topbar__inner,
    .kishi-site-header__inner,
    .kishi-footer__inner {
        width: min(var(--kishi-content-width), calc(100% - 32px));
    }

    .kishi-site-header__inner {
        flex-direction: column;
        align-items: stretch;
        justify-content: center;
        padding: 16px 0;
        min-height: auto;
    }

    .kishi-site-header__nav {
        flex-direction: column;
        align-items: stretch;
        gap: 14px;
    }

    .kishi-site-header__menu {
        flex-wrap: wrap;
        gap: 12px 18px;
        justify-content: center;
    }

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

@media (max-width: 640px) {
    .kishi-topbar {
        display: none;
    }

    .kishi-hero {
        padding-top: 30px;
    }

    .kishi-hero__title {
        font-size: 38px;
    }

    .kishi-hero__description {
        font-size: 16px;
    }

    .kishi-hero__visual {
        min-height: 430px;
        border-radius: 26px;
    }

    .kishi-hero__portrait::after {
        width: 160px;
        height: 160px;
        font-size: 18px;
    }

    .kishi-hero__badge {
        min-width: 60px;
        height: 60px;
        font-size: 22px;
    }

    .kishi-about {
        padding: 22px;
    }

    .kishi-about__title {
        font-size: 28px;
    }

    .kishi-stats {
        grid-template-columns: 1fr;
    }

    .kishi-footer__inner {
        flex-direction: column;
        text-align: center;
    }
}

/* Phase 2: capabilities, services and projects. */
.kishi-block-section,
.kishi-projects-section {
    padding: 32px;
}

.kishi-block-section__head,
.kishi-projects-section__head {
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(280px, 0.85fr);
    gap: 28px;
    align-items: end;
    margin-bottom: 26px;
}

.kishi-block-section__title {
    margin: 0;
    max-width: 720px;
    font-size: clamp(26px, 3vw, 38px);
    line-height: 1.35;
}

.kishi-block-section__intro {
    margin: 0;
    color: var(--kishi-text-soft);
    font-size: 14px;
}

.kishi-skills-grid {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 14px;
}

.kishi-skill-card,
.kishi-service-card {
    position: relative;
    min-width: 0;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, 0.075);
    background: linear-gradient(180deg, rgba(20, 27, 46, 0.82), rgba(11, 16, 29, 0.9));
    transition: transform 0.2s ease, border-color 0.2s ease, background 0.2s ease;
}

.kishi-skill-card:hover,
.kishi-service-card:hover,
.kishi-project-card:hover {
    transform: translateY(-3px);
    border-color: rgba(127, 105, 255, 0.34);
}

.kishi-skill-card {
    min-height: 210px;
    padding: 20px 18px;
    border-radius: 20px;
    text-align: center;
}

.kishi-skill-card__mark {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 62px;
    height: 62px;
    padding: 0 10px;
    margin-bottom: 16px;
    border-radius: 20px;
    border: 1px solid rgba(128, 111, 255, 0.23);
    background: radial-gradient(circle at 50% 0%, rgba(113, 88, 255, 0.32), rgba(255, 255, 255, 0.02));
    color: #fff;
    box-shadow: 0 12px 32px rgba(90, 73, 255, 0.12);
    font-weight: 800;
    direction: ltr;
}

.kishi-skill-card__title,
.kishi-service-card__title,
.kishi-project-card__title {
    margin: 0 0 10px;
    color: #fff;
}

.kishi-skill-card__title {
    font-size: 17px;
}

.kishi-skill-card__text,
.kishi-service-card__text,
.kishi-project-card__excerpt {
    margin: 0;
    color: var(--kishi-text-soft);
    font-size: 13px;
    line-height: 1.8;
}

.kishi-services-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
}

.kishi-service-card {
    min-height: 220px;
    padding: 24px;
    border-radius: 22px;
}

.kishi-service-card::after {
    content: "";
    position: absolute;
    inset: auto -30px -55px auto;
    width: 140px;
    height: 140px;
    border-radius: 50%;
    background: rgba(111, 84, 255, 0.12);
    filter: blur(4px);
}

.kishi-service-card__mark {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    margin-bottom: 22px;
    border-radius: 14px;
    border: 1px solid rgba(126, 109, 255, 0.28);
    background: rgba(111, 84, 255, 0.12);
    color: #ad9fff;
    font-weight: 800;
    direction: ltr;
}

.kishi-service-card__title {
    font-size: 20px;
}

.kishi-projects-section {
    background:
        radial-gradient(circle at 12% 10%, rgba(80, 87, 255, 0.12), transparent 22%),
        linear-gradient(180deg, rgba(9, 14, 28, 0.98), rgba(7, 10, 20, 0.97));
}

.kishi-projects-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
}

.kishi-project-card {
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, 0.075);
    border-radius: 22px;
    background: rgba(14, 20, 36, 0.78);
    transition: transform 0.2s ease, border-color 0.2s ease;
}

.kishi-project-card__media {
    display: block;
    aspect-ratio: 16 / 10;
    overflow: hidden;
    background:
        linear-gradient(135deg, rgba(72, 86, 160, 0.16), rgba(111, 84, 255, 0.18)),
        #0c1221;
}

.kishi-project-card__image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
}

.kishi-project-card:hover .kishi-project-card__image {
    transform: scale(1.025);
}

.kishi-project-card__placeholder {
    display: flex;
    width: 100%;
    height: 100%;
    align-items: center;
    justify-content: center;
    color: rgba(255, 255, 255, 0.44);
    font-weight: 700;
}

.kishi-project-card__content {
    padding: 20px;
}

.kishi-project-card__label {
    display: inline-flex;
    margin-bottom: 12px;
    padding: 5px 10px;
    border-radius: 999px;
    background: rgba(111, 84, 255, 0.12);
    color: #aaa0ff;
    font-size: 12px;
    font-weight: 700;
}

.kishi-project-card__title {
    font-size: 21px;
}

.kishi-project-card__meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 14px;
}

.kishi-project-card__meta span {
    display: inline-flex;
    padding: 5px 9px;
    border-radius: 10px;
    border: 1px solid rgba(255, 255, 255, 0.07);
    color: #d8dcf5;
    font-size: 11px;
}

.kishi-project-card__link {
    display: inline-flex;
    margin-top: 16px;
    color: #a99cff;
    font-size: 13px;
    font-weight: 800;
}

.kishi-projects-empty {
    display: grid;
    grid-template-columns: 110px minmax(0, 1fr);
    gap: 22px;
    align-items: center;
    padding: 26px;
    border: 1px dashed rgba(135, 119, 255, 0.28);
    border-radius: 22px;
    background: rgba(255, 255, 255, 0.018);
}

.kishi-projects-empty__visual {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 96px;
    height: 96px;
    border-radius: 28px;
    background: rgba(111, 84, 255, 0.12);
    border: 1px solid rgba(126, 109, 255, 0.25);
    color: #aaa0ff;
    font-size: 52px;
    line-height: 1;
}

.kishi-projects-empty h3 {
    margin: 0 0 8px;
    font-size: 22px;
}

.kishi-projects-empty p {
    margin: 0;
    color: var(--kishi-text-soft);
}

@media (max-width: 1100px) {
    .kishi-skills-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

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

@media (max-width: 860px) {
    .kishi-block-section__head,
    .kishi-projects-section__head {
        grid-template-columns: 1fr;
        align-items: start;
    }

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

@media (max-width: 640px) {
    .kishi-block-section,
    .kishi-projects-section {
        padding: 22px;
    }

    .kishi-skills-grid,
    .kishi-services-grid,
    .kishi-projects-grid {
        grid-template-columns: 1fr;
    }

    .kishi-projects-empty {
        grid-template-columns: 1fr;
    }
}

/* Home phase 3: journey, results, testimonials, resume, contact and full footer. */
.kishi-journey-section,
.kishi-results-section,
.kishi-testimonials-section {
    overflow: hidden;
}

.kishi-journey {
    position: relative;
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 14px;
    margin-top: 12px;
}

.kishi-journey::before {
    content: "";
    position: absolute;
    top: 29px;
    right: 8%;
    left: 8%;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(111, 84, 255, 0.7), transparent);
}

.kishi-journey__item {
    position: relative;
    z-index: 1;
    padding: 18px 14px 4px;
    text-align: center;
}

.kishi-journey__index {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 58px;
    height: 58px;
    margin-bottom: 14px;
    border-radius: 50%;
    border: 1px solid rgba(133, 116, 255, 0.42);
    background: #0d1324;
    color: #b2a7ff;
    box-shadow: 0 0 0 8px rgba(111, 84, 255, 0.06), 0 0 32px rgba(111, 84, 255, 0.14);
    font-weight: 800;
    direction: ltr;
}

.kishi-journey__item h3,
.kishi-result-card h3,
.kishi-testimonials-empty h3 {
    margin: 0 0 8px;
    color: #fff;
    font-size: 17px;
}

.kishi-journey__item p,
.kishi-result-card p,
.kishi-testimonials-empty p {
    margin: 0;
    color: var(--kishi-text-soft);
    font-size: 13px;
    line-height: 1.8;
}

.kishi-results-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
}

.kishi-result-card {
    min-height: 190px;
    padding: 24px;
    border: 1px solid rgba(255, 255, 255, 0.075);
    border-radius: 22px;
    background: linear-gradient(145deg, rgba(18, 24, 42, 0.9), rgba(11, 16, 29, 0.84));
}

.kishi-result-card__mark {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    margin-bottom: 24px;
    border-radius: 16px;
    background: rgba(111, 84, 255, 0.12);
    border: 1px solid rgba(133, 116, 255, 0.24);
    color: #a99cff;
    font-weight: 800;
    direction: ltr;
}

.kishi-testimonials-empty {
    display: grid;
    grid-template-columns: 110px minmax(0, 1fr);
    gap: 24px;
    align-items: center;
    min-height: 170px;
    padding: 26px;
    border: 1px dashed rgba(136, 119, 255, 0.3);
    border-radius: 24px;
    background: rgba(255, 255, 255, 0.018);
}

.kishi-testimonials-empty__icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 96px;
    height: 96px;
    border-radius: 28px;
    background: radial-gradient(circle at 50% 20%, rgba(111, 84, 255, 0.3), rgba(111, 84, 255, 0.08));
    border: 1px solid rgba(133, 116, 255, 0.2);
    color: #b4aaff;
    font-family: Georgia, serif;
    font-size: 68px;
    line-height: 1;
}

.kishi-resume {
    display: grid;
    grid-template-columns: minmax(220px, 0.7fr) minmax(0, 1.3fr);
    gap: 28px;
    align-items: center;
    padding: 30px;
}

.kishi-resume__preview {
    min-height: 200px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 22px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    background:
        linear-gradient(135deg, rgba(255, 255, 255, 0.92), rgba(218, 221, 237, 0.84));
    box-shadow: inset 0 0 0 12px rgba(8, 12, 23, 0.06);
}

.kishi-resume__preview span {
    color: #171b29;
    font-size: 54px;
    font-weight: 900;
    letter-spacing: 0.08em;
}

.kishi-resume__title,
.kishi-contact__title {
    margin: 0 0 12px;
    color: #fff;
    font-size: clamp(27px, 3vw, 40px);
    line-height: 1.35;
}

.kishi-resume__content > p:not(.kishi-section-heading),
.kishi-contact__intro > p:not(.kishi-section-heading) {
    margin: 0 0 20px;
    color: var(--kishi-text-soft);
}

.kishi-button--disabled {
    opacity: 0.52;
    cursor: not-allowed;
    pointer-events: none;
}

.kishi-contact {
    display: grid;
    grid-template-columns: minmax(0, 0.85fr) minmax(0, 1.15fr);
    gap: 28px;
    padding: 32px;
    background:
        radial-gradient(circle at 85% 5%, rgba(111, 84, 255, 0.13), transparent 27%),
        linear-gradient(180deg, rgba(12, 17, 31, 0.98), rgba(8, 12, 23, 0.96));
}

.kishi-contact__facts {
    display: grid;
    gap: 12px;
    margin-top: 28px;
}

.kishi-contact__facts div {
    display: grid;
    gap: 5px;
    padding: 16px 18px;
    border-radius: 17px;
    border: 1px solid rgba(255, 255, 255, 0.07);
    background: rgba(255, 255, 255, 0.018);
}

.kishi-contact__facts strong {
    color: #fff;
    font-size: 14px;
}

.kishi-contact__facts span {
    color: var(--kishi-text-soft);
    font-size: 13px;
}

.kishi-contact__form-wrap {
    padding: 24px;
    border-radius: 24px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    background: rgba(5, 9, 18, 0.5);
}

.kishi-contact-form {
    display: grid;
    gap: 14px;
}

.kishi-contact-form__row {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.kishi-contact-form label {
    display: grid;
    gap: 7px;
    color: #dce0f5;
    font-size: 13px;
    font-weight: 700;
}

.kishi-contact-form input,
.kishi-contact-form textarea {
    width: 100%;
    border: 1px solid rgba(255, 255, 255, 0.09);
    border-radius: 14px;
    outline: 0;
    background: rgba(10, 15, 28, 0.82);
    color: #fff;
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.kishi-contact-form input {
    min-height: 48px;
    padding: 0 14px;
}

.kishi-contact-form textarea {
    min-height: 150px;
    resize: vertical;
    padding: 13px 14px;
}

.kishi-contact-form input:focus,
.kishi-contact-form textarea:focus {
    border-color: rgba(127, 105, 255, 0.62);
    box-shadow: 0 0 0 4px rgba(111, 84, 255, 0.09);
}

.kishi-contact-form__submit {
    width: 100%;
    border: 0;
    cursor: pointer;
}

.kishi-contact-form__honeypot {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
    clip: rect(1px, 1px, 1px, 1px) !important;
    clip-path: inset(50%) !important;
    white-space: nowrap !important;
}

.kishi-form-message {
    margin-bottom: 16px;
    padding: 13px 15px;
    border-radius: 14px;
    font-size: 13px;
    font-weight: 700;
}

.kishi-form-message--success {
    border: 1px solid rgba(57, 203, 127, 0.22);
    background: rgba(57, 203, 127, 0.08);
    color: #8ce5b8;
}

.kishi-form-message--error {
    border: 1px solid rgba(255, 112, 130, 0.22);
    background: rgba(255, 112, 130, 0.08);
    color: #ffadb8;
}

.kishi-footer {
    padding: 28px 0 0;
    margin-top: 26px;
    border-top: 1px solid rgba(255, 255, 255, 0.06);
    background: rgba(4, 7, 15, 0.82);
    color: var(--kishi-text-soft);
}

.kishi-footer__grid {
    display: grid;
    grid-template-columns: 1.35fr 0.65fr 0.75fr 1fr;
    gap: 36px;
    align-items: start;
    padding: 24px 0 34px;
}

.kishi-footer__identity p,
.kishi-footer__cta p {
    margin: 12px 0 0;
    font-size: 13px;
}

.kishi-footer__logo {
    display: flex;
    align-items: center;
    gap: 10px;
    color: #fff;
}

.kishi-footer__logo span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    border-radius: 12px;
    background: linear-gradient(135deg, rgba(78, 143, 255, 0.16), rgba(111, 84, 255, 0.3));
    border: 1px solid rgba(127, 164, 255, 0.18);
    font-weight: 900;
}

.kishi-footer__column {
    display: grid;
    gap: 8px;
    font-size: 13px;
}

.kishi-footer__column strong,
.kishi-footer__cta strong {
    margin-bottom: 5px;
    color: #fff;
}

.kishi-footer__column a:hover,
.kishi-footer__column a:focus-visible {
    color: #fff;
}

.kishi-footer__cta .kishi-button {
    margin-top: 16px;
    min-height: 44px;
    padding-inline: 17px;
}

.kishi-footer__bottom {
    border-top: 1px solid rgba(255, 255, 255, 0.06);
}

.kishi-footer__bottom p {
    margin: 0;
    padding: 16px 0;
    font-size: 12px;
    text-align: center;
}

@media (max-width: 1100px) {
    .kishi-journey {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .kishi-journey::before {
        display: none;
    }

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

@media (max-width: 860px) {
    .kishi-journey,
    .kishi-results-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .kishi-resume,
    .kishi-contact {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 640px) {
    .kishi-journey,
    .kishi-results-grid,
    .kishi-contact-form__row,
    .kishi-footer__grid {
        grid-template-columns: 1fr;
    }

    .kishi-testimonials-empty {
        grid-template-columns: 1fr;
    }

    .kishi-resume,
    .kishi-contact {
        padding: 22px;
    }

    .kishi-contact__form-wrap {
        padding: 18px;
    }
}


/* v0.5.0 Home visual polish */
.kishi-hero {
    padding: 72px 0 30px;
}

.kishi-hero__grid {
    grid-template-columns: minmax(0, 1fr) minmax(420px, 0.92fr);
    gap: 46px;
}

.kishi-hero__content {
    max-width: 620px;
}

.kishi-hero__title {
    max-width: 14ch;
    font-size: clamp(42px, 4.9vw, 74px);
    line-height: 1.12;
    margin-bottom: 18px;
}

.kishi-hero__description {
    max-width: 560px;
    font-size: 18px;
    line-height: 1.95;
}

.kishi-hero__meta {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.kishi-hero__meta li {
    display: inline-flex;
    align-items: center;
    min-height: 40px;
    padding: 0 16px;
    border-radius: 999px;
    border: 1px solid rgba(255,255,255,0.1);
    background: rgba(255,255,255,0.03);
    color: var(--kishi-text-soft);
    font-size: 14px;
    font-weight: 700;
}

.kishi-hero__visual {
    min-height: 620px;
    border-radius: 40px;
    background:
        radial-gradient(circle at 50% 28%, rgba(111, 84, 255, 0.42), transparent 24%),
        radial-gradient(circle at 74% 34%, rgba(67, 135, 255, 0.18), transparent 18%),
        linear-gradient(180deg, rgba(9, 14, 28, 0.98), rgba(7, 10, 21, 0.98));
}

.kishi-hero__glow {
    position: absolute;
    inset: auto 12% 2% 12%;
    height: 120px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(111,84,255,0.28) 0%, rgba(111,84,255,0.03) 60%, transparent 75%);
    filter: blur(14px);
}

.kishi-hero__portrait-card {
    position: absolute;
    inset-inline-start: 50%;
    bottom: 0;
    transform: translateX(-50%);
    width: min(88%, 510px);
    margin: 0;
    z-index: 2;
}

.kishi-hero__portrait-image {
    width: 100%;
    height: auto;
    border-radius: 32px 32px 0 0;
    object-fit: cover;
    box-shadow: 0 36px 90px rgba(0,0,0,0.45);
}

.kishi-hero__badge {
    z-index: 3;
    color: #eef2ff;
    backdrop-filter: blur(8px);
}

.kishi-hero__badge--wordpress {
    top: 128px;
    right: 46px;
}

.kishi-hero__badge--code {
    top: 188px;
    left: 34px;
}

.kishi-hero__badge--figma {
    bottom: 114px;
    left: 52px;
    font-size: 22px;
}

.kishi-hero__scroll {
    left: 24px;
    bottom: 42px;
    z-index: 3;
}

.kishi-about {
    padding: 34px;
}

.kishi-about__grid {
    grid-template-columns: minmax(0, 1.15fr) minmax(280px, 360px);
    gap: 34px;
    align-items: center;
}

.kishi-about__title {
    font-size: clamp(26px, 3vw, 38px);
    line-height: 1.35;
    max-width: 17ch;
}

.kishi-about__text {
    max-width: 62ch;
    line-height: 1.95;
}

.kishi-about__points {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px 16px;
    margin: 24px 0 0;
    padding: 0;
    list-style: none;
}

.kishi-about__points li {
    position: relative;
    min-height: 54px;
    padding: 14px 16px 14px 14px;
    border-radius: 18px;
    border: 1px solid rgba(255,255,255,0.08);
    background: rgba(255,255,255,0.03);
    color: #e8ebfb;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.8;
}

.kishi-about__points li::before {
    content: "";
    position: absolute;
    top: 21px;
    right: 14px;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--kishi-accent);
    box-shadow: 0 0 0 6px rgba(111,84,255,0.12);
}

.kishi-about__points li {
    padding-right: 30px;
}

.kishi-about__media {
    min-height: 440px;
    border-radius: 28px;
    background:
        radial-gradient(circle at 50% 16%, rgba(111,84,255,0.22), transparent 24%),
        linear-gradient(180deg, rgba(18, 23, 43, 0.95), rgba(11, 15, 29, 0.94));
    overflow: hidden;
    box-shadow: 0 30px 60px rgba(0,0,0,0.35);
}

.kishi-about__media::before {
    content: none;
}

.kishi-about__image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center top;
}

.kishi-stats {
    margin-top: 26px;
    gap: 14px;
}

.kishi-stat {
    padding: 18px 14px;
    background: rgba(255,255,255,0.03);
}

.kishi-stat__value {
    font-size: 30px;
}

@media (max-width: 1100px) {
    .kishi-hero__grid,
    .kishi-about__grid {
        grid-template-columns: 1fr;
    }

    .kishi-hero__content {
        max-width: 100%;
    }

    .kishi-hero__title,
    .kishi-about__title {
        max-width: none;
    }

    .kishi-about__media {
        order: -1;
        min-height: 380px;
        max-width: 460px;
        width: 100%;
        margin: 0 auto;
    }
}

@media (max-width: 860px) {
    .kishi-hero__visual {
        min-height: 540px;
    }

    .kishi-hero__portrait-card {
        width: min(90%, 440px);
    }

    .kishi-about__points {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 640px) {
    .kishi-hero {
        padding-top: 28px;
    }

    .kishi-hero__grid {
        gap: 26px;
    }

    .kishi-hero__title {
        font-size: 38px;
    }

    .kishi-hero__description {
        font-size: 16px;
        line-height: 1.85;
    }

    .kishi-hero__actions,
    .kishi-hero__meta {
        gap: 10px;
    }

    .kishi-hero__meta li,
    .kishi-button {
        width: 100%;
    }

    .kishi-hero__visual {
        min-height: 430px;
        border-radius: 28px;
    }

    .kishi-hero__portrait-card {
        width: 92%;
    }

    .kishi-hero__badge {
        min-width: 54px;
        height: 54px;
        padding: 0 14px;
        border-radius: 18px;
    }

    .kishi-hero__badge--wordpress {
        top: 84px;
        right: 18px;
    }

    .kishi-hero__badge--code {
        top: 126px;
        left: 14px;
    }

    .kishi-hero__badge--figma {
        bottom: 92px;
        left: 18px;
    }

    .kishi-about {
        padding: 22px;
    }

    .kishi-about__media {
        min-height: 310px;
    }
}


/* v0.5.1 Hero portrait RTL positioning fix */
.kishi-hero__portrait-card {
    left: 50%;
    right: auto;
    inset-inline-start: auto;
    transform: translateX(-50%);
    width: min(92%, 520px);
    z-index: 2;
}

.kishi-hero__portrait-image {
    width: 100%;
    max-height: 590px;
    object-fit: cover;
    object-position: center top;
}

@media (max-width: 860px) {
    .kishi-hero__portrait-card {
        left: 50%;
        right: auto;
        width: min(92%, 460px);
    }
}

@media (max-width: 640px) {
    .kishi-hero__portrait-card {
        left: 50%;
        right: auto;
        width: 94%;
    }
}


/* v0.6.0 — Skills / Services / Projects visual polish */
.kishi-block-section,
.kishi-projects-section {
    padding: 40px;
}

.kishi-block-section__head,
.kishi-projects-section__head {
    gap: 44px;
    align-items: center;
    margin-bottom: 34px;
}

.kishi-block-section__title {
    max-width: 16ch;
    font-size: clamp(28px, 3vw, 40px);
    line-height: 1.38;
}

.kishi-block-section__intro {
    max-width: 54ch;
    justify-self: end;
    font-size: 14px;
    line-height: 1.95;
}

.kishi-skills-section {
    background:
        radial-gradient(circle at 8% 10%, rgba(76, 92, 255, 0.11), transparent 20%),
        linear-gradient(180deg, rgba(12, 18, 33, 0.98), rgba(9, 13, 25, 0.96));
}

.kishi-skills-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
}

.kishi-skill-card {
    min-height: 196px;
    padding: 22px;
    text-align: right;
    border-radius: 24px;
    background:
        radial-gradient(circle at 100% 0%, rgba(111, 84, 255, 0.12), transparent 34%),
        linear-gradient(180deg, rgba(18, 25, 44, 0.88), rgba(11, 16, 29, 0.92));
}

.kishi-skill-card__top,
.kishi-service-card__top,
.kishi-project-card__eyebrow {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.kishi-skill-card__mark {
    min-width: 54px;
    height: 54px;
    margin: 0;
    border-radius: 17px;
    font-size: 14px;
}

.kishi-skill-card__type,
.kishi-service-card__type {
    color: #8f98b3;
    font-size: 11px;
    font-weight: 700;
    direction: ltr;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.kishi-skill-card__title {
    margin-top: 22px;
    margin-bottom: 8px;
    font-size: 21px;
}

.kishi-skill-card__text {
    max-width: 34ch;
    font-size: 13px;
    line-height: 1.9;
}

.kishi-skill-card__line {
    position: absolute;
    right: 22px;
    bottom: 20px;
    width: 38px;
    height: 2px;
    border-radius: 999px;
    background: linear-gradient(90deg, transparent, #806cff);
    transition: width 0.25s ease;
}

.kishi-skill-card:hover .kishi-skill-card__line {
    width: calc(100% - 44px);
}

.kishi-services-section {
    background:
        radial-gradient(circle at 92% 0%, rgba(111, 84, 255, 0.1), transparent 22%),
        linear-gradient(180deg, rgba(10, 15, 29, 0.98), rgba(8, 12, 23, 0.97));
}

.kishi-services-grid {
    gap: 16px;
}

.kishi-service-card {
    min-height: 244px;
    padding: 24px;
    border-radius: 24px;
    display: flex;
    flex-direction: column;
}

.kishi-service-card::after {
    inset: auto auto -70px -58px;
    width: 190px;
    height: 190px;
    background: rgba(111, 84, 255, 0.1);
    filter: blur(10px);
}

.kishi-service-card__top {
    position: relative;
    z-index: 1;
    margin-bottom: 30px;
}

.kishi-service-card__mark {
    width: 46px;
    height: 46px;
    margin: 0;
    border-radius: 15px;
    background: linear-gradient(135deg, rgba(111, 84, 255, 0.2), rgba(62, 121, 255, 0.08));
}

.kishi-service-card__title {
    position: relative;
    z-index: 1;
    margin-bottom: 10px;
    font-size: 21px;
}

.kishi-service-card__text {
    position: relative;
    z-index: 1;
    max-width: 38ch;
    font-size: 13px;
    line-height: 1.95;
}

.kishi-service-card__arrow {
    position: relative;
    z-index: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    margin-top: auto;
    margin-right: auto;
    border-radius: 13px;
    border: 1px solid rgba(255,255,255,0.08);
    color: #a99cff;
    background: rgba(255,255,255,0.025);
    font-size: 18px;
}

.kishi-projects-section {
    padding: 40px;
    background:
        radial-gradient(circle at 12% 8%, rgba(77, 83, 255, 0.18), transparent 24%),
        radial-gradient(circle at 92% 92%, rgba(111, 84, 255, 0.07), transparent 22%),
        linear-gradient(180deg, rgba(8, 13, 27, 0.99), rgba(6, 9, 19, 0.99));
}

.kishi-projects-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
}

.kishi-projects-grid--single {
    grid-template-columns: minmax(0, 1fr);
}

.kishi-projects-grid--single .kishi-project-card {
    display: grid;
    grid-template-columns: minmax(0, 1.35fr) minmax(300px, 0.65fr);
    min-height: 380px;
}

.kishi-projects-grid--single .kishi-project-card__media {
    aspect-ratio: auto;
    min-height: 100%;
}

.kishi-projects-grid--double {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.kishi-project-card {
    position: relative;
    border-radius: 26px;
    background: linear-gradient(180deg, rgba(15, 21, 38, 0.92), rgba(9, 14, 27, 0.96));
    box-shadow: 0 18px 50px rgba(0,0,0,0.22);
}

.kishi-project-card__media {
    position: relative;
    aspect-ratio: 16 / 9;
    border-bottom: 1px solid rgba(255,255,255,0.07);
}

.kishi-project-card__media::after {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: linear-gradient(180deg, transparent 54%, rgba(5, 8, 18, 0.3));
}

.kishi-project-card__view {
    position: absolute;
    z-index: 2;
    left: 18px;
    top: 18px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    border-radius: 14px;
    border: 1px solid rgba(255,255,255,0.14);
    background: rgba(7,10,20,0.66);
    backdrop-filter: blur(10px);
    color: #fff;
    font-size: 18px;
}

.kishi-project-card__placeholder {
    position: relative;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-end;
    gap: 8px;
    padding: 26px;
    background:
        radial-gradient(circle at 24% 18%, rgba(85, 74, 255, 0.25), transparent 22%),
        linear-gradient(135deg, #121932 0%, #0c1327 48%, #101124 100%);
    color: #fff;
}

.kishi-project-card__placeholder::before {
    content: "";
    position: absolute;
    inset: 18px;
    border: 1px solid rgba(135, 119, 255, 0.12);
    border-radius: 18px;
    background-image:
        linear-gradient(rgba(255,255,255,0.025) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,0.025) 1px, transparent 1px);
    background-size: 28px 28px;
}

.kishi-project-card__placeholder-kicker,
.kishi-project-card__placeholder-title,
.kishi-project-card__placeholder-lines {
    position: relative;
    z-index: 1;
}

.kishi-project-card__placeholder-kicker {
    color: #9d91ff;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.12em;
    direction: ltr;
}

.kishi-project-card__placeholder-title {
    font-size: clamp(22px, 2vw, 32px);
    font-weight: 800;
}

.kishi-project-card__placeholder-lines {
    width: 120px;
    height: 7px;
    border-top: 2px solid rgba(255,255,255,0.16);
    border-bottom: 2px solid rgba(255,255,255,0.08);
}

.kishi-project-card__content {
    padding: 24px;
}

.kishi-project-card__label {
    margin: 0;
}

.kishi-project-card__number {
    color: rgba(255,255,255,0.26);
    font-size: 12px;
    font-weight: 800;
    direction: ltr;
}

.kishi-project-card__title {
    margin-top: 18px;
    font-size: clamp(22px, 2.1vw, 28px);
    line-height: 1.4;
}

.kishi-project-card__excerpt {
    max-width: 48ch;
    font-size: 13px;
    line-height: 1.95;
}

.kishi-project-card__meta {
    margin-top: 18px;
}

.kishi-project-card__link {
    align-items: center;
    gap: 7px;
    margin-top: 20px;
    font-size: 13px;
}

.kishi-projects-empty {
    min-height: 190px;
    background:
        radial-gradient(circle at 90% 20%, rgba(111,84,255,0.09), transparent 26%),
        rgba(255,255,255,0.018);
}

@media (max-width: 1100px) {
    .kishi-skills-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .kishi-projects-grid,
    .kishi-projects-grid--double {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .kishi-projects-grid--single .kishi-project-card {
        grid-template-columns: 1fr;
    }

    .kishi-projects-grid--single .kishi-project-card__media {
        min-height: 320px;
    }
}

@media (max-width: 860px) {
    .kishi-block-section__head,
    .kishi-projects-section__head {
        gap: 16px;
    }

    .kishi-block-section__intro {
        justify-self: start;
    }
}

@media (max-width: 640px) {
    .kishi-block-section,
    .kishi-projects-section {
        padding: 22px;
    }

    .kishi-skills-grid,
    .kishi-services-grid,
    .kishi-projects-grid,
    .kishi-projects-grid--double {
        grid-template-columns: 1fr;
    }

    .kishi-skill-card,
    .kishi-service-card {
        min-height: 0;
    }

    .kishi-service-card__arrow {
        margin-top: 24px;
    }

    .kishi-projects-grid--single .kishi-project-card__media {
        min-height: 220px;
    }
}


/* v0.7.0 — Journey / Results / Testimonials / Resume visual polish */
.kishi-journey-section,
.kishi-results-section,
.kishi-testimonials-section {
    position: relative;
}

.kishi-block-section__head--journey {
    margin-bottom: 34px;
}

.kishi-journey {
    gap: 0;
    margin-top: 6px;
    padding-top: 4px;
}

.kishi-journey::before {
    top: 35px;
    right: 10%;
    left: 10%;
    height: 2px;
    background: linear-gradient(90deg, transparent 0%, rgba(94, 77, 255, 0.24) 9%, rgba(111, 84, 255, 0.92) 50%, rgba(94, 77, 255, 0.24) 91%, transparent 100%);
    box-shadow: 0 0 24px rgba(111, 84, 255, 0.18);
}

.kishi-journey__item {
    display: flex;
    flex-direction: column;
    align-items: center;
    min-width: 0;
    padding: 0 18px 10px;
}

.kishi-journey__marker {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 72px;
}

.kishi-journey__index {
    width: 62px;
    height: 62px;
    margin: 0;
    border: 1px solid rgba(142, 127, 255, 0.48);
    background:
        radial-gradient(circle at 50% 35%, rgba(122, 105, 255, 0.22), transparent 46%),
        #0d1324;
    box-shadow: 0 0 0 9px #0b1020, 0 0 0 10px rgba(111, 84, 255, 0.14), 0 0 30px rgba(111, 84, 255, 0.22);
    font-size: 14px;
}

.kishi-journey__kicker {
    margin-top: 16px;
    margin-bottom: 4px;
    color: #8f82ff;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.06em;
}

.kishi-journey__item h3 {
    margin-bottom: 7px;
    font-size: 16px;
}

.kishi-journey__item p {
    max-width: 23ch;
    font-size: 12px;
    line-height: 1.9;
}

.kishi-results-grid {
    gap: 18px;
}

.kishi-result-card {
    position: relative;
    display: flex;
    flex-direction: column;
    min-height: 245px;
    padding: 26px;
    overflow: hidden;
    background:
        radial-gradient(circle at 100% 0%, rgba(111, 84, 255, 0.13), transparent 38%),
        linear-gradient(150deg, rgba(17, 24, 43, 0.96), rgba(10, 15, 28, 0.9));
    transition: transform .22s ease, border-color .22s ease, box-shadow .22s ease;
}

.kishi-result-card:hover {
    transform: translateY(-3px);
    border-color: rgba(132, 116, 255, 0.28);
    box-shadow: 0 22px 48px rgba(0,0,0,.24);
}

.kishi-result-card::after {
    content: "";
    position: absolute;
    width: 120px;
    height: 120px;
    left: -48px;
    bottom: -54px;
    border-radius: 50%;
    background: rgba(111,84,255,.06);
    filter: blur(2px);
}

.kishi-result-card__top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    margin-bottom: 24px;
}

.kishi-result-card__mark {
    width: 54px;
    height: 54px;
    margin: 0;
    font-size: 24px;
}

.kishi-result-card__label {
    color: #9185ff;
    font-size: 11px;
    font-weight: 800;
}

.kishi-result-card h3 {
    font-size: 20px;
    margin-bottom: 9px;
}

.kishi-result-card p {
    font-size: 13px;
    line-height: 1.9;
}

.kishi-result-card__proof {
    display: inline-flex;
    align-items: center;
    width: fit-content;
    min-height: 32px;
    margin-top: auto;
    padding: 0 12px;
    border-radius: 999px;
    border: 1px dashed rgba(138,122,255,.28);
    color: #8f95ad;
    background: rgba(255,255,255,.02);
    font-size: 11px;
}

.kishi-testimonials-stage {
    position: relative;
    display: grid;
    grid-template-columns: 94px minmax(0, 1fr) minmax(190px, .42fr);
    align-items: center;
    gap: 26px;
    min-height: 210px;
    padding: 30px;
    overflow: hidden;
    border: 1px solid rgba(130, 112, 255, 0.22);
    border-radius: 26px;
    background:
        radial-gradient(circle at 86% 18%, rgba(111,84,255,.16), transparent 24%),
        linear-gradient(145deg, rgba(15, 21, 39, .96), rgba(9, 14, 27, .94));
}

.kishi-testimonials-stage::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: linear-gradient(115deg, transparent 0 56%, rgba(255,255,255,.025) 56% 57%, transparent 57% 100%);
}

.kishi-testimonials-stage__quote {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 82px;
    height: 82px;
    border-radius: 24px;
    border: 1px solid rgba(132,116,255,.22);
    background: rgba(111,84,255,.09);
    color: #aa9fff;
    font: 66px/1 Georgia, serif;
}

.kishi-testimonials-stage__content,
.kishi-testimonials-stage__person {
    position: relative;
    z-index: 1;
}

.kishi-testimonials-stage__eyebrow {
    display: inline-block;
    margin-bottom: 9px;
    color: #7f72ff;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .16em;
    direction: ltr;
}

.kishi-testimonials-stage__content h3 {
    margin: 0 0 8px;
    font-size: 22px;
}

.kishi-testimonials-stage__content p {
    margin: 0;
    max-width: 62ch;
    color: var(--kishi-text-soft);
    font-size: 13px;
    line-height: 1.9;
}

.kishi-testimonials-stage__person {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 16px;
    border: 1px solid rgba(255,255,255,.07);
    border-radius: 20px;
    background: rgba(255,255,255,.025);
    opacity: .58;
}

.kishi-testimonials-stage__avatar {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 48px;
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background: linear-gradient(145deg, rgba(111,84,255,.32), rgba(48,112,255,.16));
    color: #fff;
    font-weight: 900;
}

.kishi-testimonials-stage__person strong,
.kishi-testimonials-stage__person span {
    display: block;
}

.kishi-testimonials-stage__person strong {
    color: #fff;
    font-size: 13px;
}

.kishi-testimonials-stage__person div > span {
    color: var(--kishi-text-soft);
    font-size: 11px;
}

.kishi-resume {
    position: relative;
    grid-template-columns: minmax(0, 1.25fr) minmax(260px, .75fr);
    min-height: 310px;
    padding: 38px;
    overflow: hidden;
    background:
        radial-gradient(circle at 88% 10%, rgba(111,84,255,.16), transparent 31%),
        linear-gradient(145deg, rgba(13,19,35,.98), rgba(8,13,25,.96));
}

.kishi-resume::before {
    content: "";
    position: absolute;
    width: 240px;
    height: 240px;
    right: -120px;
    bottom: -130px;
    border-radius: 50%;
    border: 1px solid rgba(111,84,255,.16);
    box-shadow: 0 0 0 36px rgba(111,84,255,.025), 0 0 0 72px rgba(111,84,255,.018);
}

.kishi-resume__content,
.kishi-resume__visual {
    position: relative;
    z-index: 1;
}

.kishi-resume__title {
    max-width: 19ch;
    font-size: clamp(26px, 2.8vw, 38px);
}

.kishi-resume__content > p:not(.kishi-section-heading) {
    max-width: 64ch;
    line-height: 1.95;
}

.kishi-resume__actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 14px;
}

.kishi-resume__note {
    color: #818aa5;
    font-size: 12px;
}

.kishi-resume__visual {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 230px;
}

.kishi-resume__paper {
    width: min(100%, 280px);
    min-height: 210px;
    padding: 24px;
    transform: rotate(-3deg);
    border-radius: 18px;
    border: 1px solid rgba(255,255,255,.42);
    background: linear-gradient(160deg, #f4f5fa, #dfe3ef);
    box-shadow: 0 24px 55px rgba(0,0,0,.34), inset 0 0 0 1px rgba(255,255,255,.66);
    direction: ltr;
}

.kishi-resume__paper-head {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 26px;
    color: #131828;
}

.kishi-resume__paper-head strong,
.kishi-resume__paper-head small {
    display: block;
}

.kishi-resume__paper-head strong {
    font-size: 17px;
}

.kishi-resume__paper-head small {
    color: #6b7182;
    font-size: 8px;
    letter-spacing: .12em;
}

.kishi-resume__monogram {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    border-radius: 12px;
    background: #11172a;
    color: #fff;
    font-weight: 900;
}

.kishi-resume__line {
    display: block;
    width: 78%;
    height: 7px;
    margin-bottom: 10px;
    border-radius: 99px;
    background: #b7bdca;
}

.kishi-resume__line--lg { width: 100%; height: 10px; background: #8992a5; }
.kishi-resume__line--sm { width: 54%; }

.kishi-resume__chips {
    display: flex;
    gap: 7px;
    margin-top: 22px;
}

.kishi-resume__chips span {
    padding: 4px 7px;
    border-radius: 6px;
    background: #cfd4e0;
    color: #3d4559;
    font-size: 7px;
    font-weight: 800;
}

.kishi-resume__badge {
    position: absolute;
    left: 9%;
    bottom: 6%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 62px;
    height: 62px;
    border-radius: 18px;
    border: 1px solid rgba(136,119,255,.27);
    background: #10162a;
    color: #9b90ff;
    box-shadow: 0 14px 30px rgba(0,0,0,.32);
    font-size: 13px;
    font-weight: 900;
    direction: ltr;
}

@media (max-width: 1100px) {
    .kishi-journey {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 24px 0;
    }

    .kishi-journey::before {
        display: none;
    }

    .kishi-testimonials-stage {
        grid-template-columns: 82px minmax(0, 1fr);
    }

    .kishi-testimonials-stage__person {
        grid-column: 1 / -1;
        max-width: 330px;
        justify-self: end;
    }
}

@media (max-width: 860px) {
    .kishi-journey,
    .kishi-results-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .kishi-resume {
        grid-template-columns: 1fr;
    }

    .kishi-resume__visual {
        order: -1;
        min-height: 210px;
    }

    .kishi-resume__title {
        max-width: none;
    }
}

@media (max-width: 640px) {
    .kishi-journey,
    .kishi-results-grid {
        grid-template-columns: 1fr;
    }

    .kishi-journey__item {
        align-items: flex-start;
        text-align: right;
        padding: 14px 0 18px;
        border-bottom: 1px solid rgba(255,255,255,.06);
    }

    .kishi-journey__marker {
        min-height: 0;
    }

    .kishi-journey__index {
        width: 48px;
        height: 48px;
        box-shadow: 0 0 0 6px #0b1020, 0 0 0 7px rgba(111,84,255,.12);
    }

    .kishi-journey__item p {
        max-width: none;
    }

    .kishi-testimonials-stage {
        grid-template-columns: 1fr;
        padding: 22px;
    }

    .kishi-testimonials-stage__quote {
        width: 64px;
        height: 64px;
        font-size: 52px;
    }

    .kishi-testimonials-stage__person {
        grid-column: auto;
        justify-self: stretch;
        max-width: none;
    }

    .kishi-resume {
        padding: 24px;
    }

    .kishi-resume__paper {
        width: min(90%, 260px);
    }
}


/* v0.8.0 Contact + Footer polish */
.kishi-contact-section {
    padding-top: 30px;
    padding-bottom: 34px;
}

.kishi-contact {
    position: relative;
    overflow: hidden;
    grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
    gap: 34px;
    padding: 38px;
    background:
        radial-gradient(circle at 88% 0%, rgba(111, 84, 255, 0.22), transparent 28%),
        radial-gradient(circle at 12% 100%, rgba(50, 120, 255, 0.09), transparent 24%),
        linear-gradient(180deg, rgba(12, 17, 31, 0.99), rgba(7, 11, 22, 0.98));
}

.kishi-contact::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background-image:
        linear-gradient(rgba(255,255,255,0.014) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,0.014) 1px, transparent 1px);
    background-size: 32px 32px;
    mask-image: linear-gradient(180deg, rgba(0,0,0,0.35), transparent 70%);
}

.kishi-contact > * {
    position: relative;
    z-index: 1;
}

.kishi-contact__intro {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 10px 6px;
}

.kishi-contact__title {
    max-width: 15ch;
    margin-bottom: 16px;
    font-size: clamp(30px, 3.2vw, 44px);
    line-height: 1.38;
}

.kishi-contact__lead {
    max-width: 56ch;
    margin: 0;
    color: var(--kishi-text-soft);
    line-height: 1.95;
}

.kishi-contact__availability {
    display: inline-flex;
    align-items: center;
    align-self: flex-start;
    gap: 10px;
    margin-top: 22px;
    padding: 10px 14px;
    border-radius: 999px;
    border: 1px solid rgba(72, 221, 140, 0.17);
    background: rgba(72, 221, 140, 0.055);
    color: #a9e9c6;
    font-size: 13px;
    font-weight: 700;
}

.kishi-contact__availability-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #38d981;
    box-shadow: 0 0 0 6px rgba(56, 217, 129, 0.09);
}

.kishi-contact__facts {
    gap: 10px;
    margin-top: 28px;
}

.kishi-contact__fact {
    display: grid !important;
    grid-template-columns: 42px minmax(0, 1fr);
    align-items: center;
    gap: 12px !important;
    padding: 15px 16px !important;
    border-radius: 18px !important;
    background: rgba(255,255,255,0.025) !important;
}

.kishi-contact__fact-number {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    border-radius: 14px;
    border: 1px solid rgba(128, 111, 255, 0.2);
    background: radial-gradient(circle at 50% 20%, rgba(111,84,255,0.25), rgba(111,84,255,0.06));
    color: #b6acff;
    font-size: 12px;
    font-weight: 800;
}

.kishi-contact__fact > div {
    padding: 0;
    border: 0;
    background: none;
}

.kishi-contact__fact strong {
    display: block;
    margin-bottom: 3px;
    color: #fff;
    font-size: 14px;
}

.kishi-contact__fact span:not(.kishi-contact__fact-number) {
    color: var(--kishi-text-soft);
    font-size: 12px;
}

.kishi-contact__form-wrap {
    padding: 28px;
    border-radius: 28px;
    border-color: rgba(130, 114, 255, 0.15);
    background:
        radial-gradient(circle at 100% 0%, rgba(111,84,255,0.09), transparent 25%),
        rgba(4, 8, 18, 0.68);
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.025);
}

.kishi-contact__form-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 20px;
    padding-bottom: 16px;
    border-bottom: 1px solid rgba(255,255,255,0.07);
}

.kishi-contact__form-head span {
    color: #fff;
    font-size: 16px;
    font-weight: 800;
}

.kishi-contact__form-head small {
    padding: 6px 9px;
    border-radius: 999px;
    background: rgba(111,84,255,0.1);
    color: #aaa0f4;
    font-size: 11px;
    font-weight: 700;
}

.kishi-contact-form {
    gap: 16px;
}

.kishi-contact-form label {
    gap: 8px;
    font-size: 12px;
}

.kishi-contact-form input,
.kishi-contact-form textarea {
    border-color: rgba(255,255,255,0.1);
    background: rgba(8, 13, 25, 0.92);
}

.kishi-contact-form input::placeholder,
.kishi-contact-form textarea::placeholder {
    color: rgba(185, 192, 212, 0.48);
}

.kishi-contact-form input {
    min-height: 52px;
    padding-inline: 16px;
}

.kishi-contact-form textarea {
    min-height: 172px;
    padding: 15px 16px;
    line-height: 1.8;
}

.kishi-contact-form__submit {
    gap: 12px;
    min-height: 54px;
    margin-top: 2px;
}

.kishi-contact-form__submit span:last-child {
    font-size: 18px;
}

.kishi-contact-form__note {
    margin: -3px 0 0;
    text-align: center;
    color: rgba(185,192,212,0.64);
    font-size: 11px;
}

.kishi-form-message {
    border-radius: 16px;
    padding: 14px 16px;
    line-height: 1.7;
}

.kishi-footer {
    position: relative;
    margin-top: 8px;
    padding: 56px 0 0;
    overflow: hidden;
    border-top: 1px solid rgba(131, 112, 255, 0.12);
    background:
        radial-gradient(circle at 88% 0%, rgba(111,84,255,0.13), transparent 24%),
        linear-gradient(180deg, rgba(5,8,17,0.99), rgba(3,6,13,1));
}

.kishi-footer::before {
    content: "KISHI";
    position: absolute;
    left: 4%;
    bottom: -74px;
    color: rgba(255,255,255,0.018);
    font-size: clamp(110px, 18vw, 260px);
    font-weight: 900;
    letter-spacing: 0.04em;
    line-height: 1;
    pointer-events: none;
}

.kishi-footer__top {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: minmax(0, 1.25fr) minmax(130px, 0.55fr) minmax(160px, 0.7fr) minmax(260px, 1fr);
    gap: 40px;
    align-items: start;
    padding-bottom: 44px;
}

.kishi-footer__identity {
    max-width: 390px;
}

.kishi-footer__identity p {
    margin: 18px 0 0;
    color: var(--kishi-text-soft);
    font-size: 13px;
    line-height: 1.9;
}

.kishi-footer__logo {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    color: #fff;
    font-size: 19px;
}

.kishi-footer__logo span {
    width: 44px;
    height: 44px;
    border-radius: 14px;
    box-shadow: 0 0 30px rgba(111,84,255,0.14);
}

.kishi-footer__mini-cta {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    margin-top: 22px;
    color: #b0a6ff;
    font-size: 13px;
    font-weight: 800;
}

.kishi-footer__mini-cta:hover,
.kishi-footer__mini-cta:focus-visible {
    color: #fff;
}

.kishi-footer__column {
    gap: 10px;
    font-size: 13px;
}

.kishi-footer__column strong {
    margin-bottom: 8px;
    color: #fff;
    font-size: 14px;
}

.kishi-footer__column a,
.kishi-footer__column span {
    color: rgba(185,192,212,0.82);
}

.kishi-footer__project-card {
    padding: 22px;
    border: 1px solid rgba(132,114,255,0.16);
    border-radius: 24px;
    background:
        radial-gradient(circle at 90% 0%, rgba(111,84,255,0.18), transparent 35%),
        rgba(255,255,255,0.025);
}

.kishi-footer__project-label {
    display: block;
    margin-bottom: 10px;
    color: #9d91ff;
    font-size: 11px;
    font-weight: 800;
}

.kishi-footer__project-card strong {
    display: block;
    color: #fff;
    font-size: 16px;
    line-height: 1.85;
}

.kishi-footer__project-card .kishi-button {
    width: 100%;
    min-height: 44px;
    margin-top: 18px;
    padding-inline: 16px;
}

.kishi-footer__bottom {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    min-height: 62px;
    border-top: 1px solid rgba(255,255,255,0.06);
}

.kishi-footer__bottom p {
    margin: 0;
    padding: 0;
    text-align: right;
    color: rgba(185,192,212,0.58);
    font-size: 11px;
}

.kishi-footer__bottom a {
    color: rgba(185,192,212,0.72);
    font-size: 11px;
    font-weight: 700;
}

.kishi-footer__bottom a:hover,
.kishi-footer__bottom a:focus-visible {
    color: #fff;
}

@media (max-width: 1100px) {
    .kishi-footer__top {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 860px) {
    .kishi-contact {
        grid-template-columns: 1fr;
    }

    .kishi-contact__title {
        max-width: none;
    }
}

@media (max-width: 640px) {
    .kishi-contact {
        padding: 22px;
        gap: 24px;
    }

    .kishi-contact__form-wrap {
        padding: 18px;
        border-radius: 22px;
    }

    .kishi-contact__form-head {
        align-items: flex-start;
        flex-direction: column;
        gap: 8px;
    }

    .kishi-contact__availability {
        align-self: stretch;
        justify-content: center;
    }

    .kishi-contact-form__row,
    .kishi-footer__top {
        grid-template-columns: 1fr;
    }

    .kishi-footer {
        padding-top: 40px;
    }

    .kishi-footer__top {
        gap: 28px;
        padding-bottom: 34px;
    }

    .kishi-footer__identity {
        max-width: none;
    }

    .kishi-footer__bottom {
        flex-direction: column;
        justify-content: center;
        padding: 15px 0;
        text-align: center;
    }

    .kishi-footer__bottom p {
        text-align: center;
    }
}


/* v0.9.0 — Full Home final review / release-candidate polish */
.kishi-skip-link {
    position: fixed;
    top: 12px;
    right: 12px;
    z-index: 9999;
    transform: translateY(-180%);
    padding: 10px 14px;
    border-radius: 12px;
    background: #fff;
    color: #080b16;
    font-size: 13px;
    font-weight: 800;
    box-shadow: 0 12px 32px rgba(0,0,0,.35);
}

.kishi-skip-link:focus {
    transform: translateY(0);
}

.kishi-hero[id],
.kishi-section[id] {
    scroll-margin-top: 144px;
}

:where(a, button, input, textarea, select):focus-visible {
    outline: 2px solid #9b8cff;
    outline-offset: 3px;
}

.kishi-site-header__brand:focus-visible,
.kishi-footer__logo:focus-visible {
    border-radius: 12px;
}

.kishi-hero__title {
    max-width: 650px;
    font-size: clamp(38px, 4.35vw, 62px);
    line-height: 1.2;
    text-wrap: balance;
}

.kishi-hero__description,
.kishi-about__text,
.kishi-block-section__intro,
.kishi-contact__lead {
    text-wrap: pretty;
}

.kishi-hero__portrait-image,
.kishi-about__image {
    background: #0b1020;
}

.kishi-project-card__image {
    aspect-ratio: 16 / 10;
}

@media (max-width: 860px) {
    .kishi-hero[id],
    .kishi-section[id] {
        scroll-margin-top: 180px;
    }
}

@media (max-width: 640px) {
    :root {
        --kishi-page-gutter: 16px;
    }

    .kishi-site-header__inner {
        gap: 10px;
        padding: 12px 0;
    }

    .kishi-site-header__brand {
        justify-content: center;
        gap: 10px;
        font-size: 21px;
    }

    .kishi-site-header__brand-mark {
        width: 36px;
        height: 36px;
        border-radius: 11px;
        font-size: 16px;
    }

    .kishi-site-header__nav {
        gap: 10px;
    }

    .kishi-site-header__menu {
        gap: 4px 13px;
    }

    .kishi-site-header__menu a {
        min-height: 34px;
        font-size: 12px;
    }

    .kishi-site-header__nav > .kishi-button {
        width: auto;
        min-height: 40px;
        align-self: center;
        padding-inline: 18px;
        font-size: 12px;
    }

    .kishi-hero[id],
    .kishi-section[id] {
        scroll-margin-top: 190px;
    }

    .kishi-hero__title {
        max-width: none;
        font-size: clamp(34px, 10vw, 42px);
        line-height: 1.25;
    }

    .kishi-section {
        padding-block: 16px;
    }
}

@media (prefers-reduced-motion: reduce) {
    html {
        scroll-behavior: auto;
    }

    *,
    *::before,
    *::after {
        scroll-behavior: auto !important;
        transition-duration: 0.01ms !important;
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
    }
}

/* =========================================================
   KISHI v1.0.0 — Projects archive
   ========================================================= */

.kishi-projects-archive-hero {
    padding: 42px 0 58px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.055);
}

.kishi-breadcrumb {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 38px;
    color: #7f89a6;
    font-size: 13px;
}

.kishi-breadcrumb a:hover,
.kishi-breadcrumb a:focus-visible {
    color: #fff;
}

.kishi-projects-archive-hero__grid {
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(330px, 0.9fr);
    gap: 52px;
    align-items: center;
}

.kishi-projects-archive-hero__content {
    max-width: 690px;
}

.kishi-projects-archive-hero__title {
    margin: 0 0 18px;
    font-size: clamp(54px, 7vw, 92px);
    line-height: 1;
    letter-spacing: -0.055em;
}

.kishi-projects-archive-hero__description {
    max-width: 62ch;
    margin: 0;
    color: var(--kishi-text-soft);
    font-size: 18px;
    line-height: 2;
}

.kishi-projects-archive-stats {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
    margin-top: 34px;
}

.kishi-projects-archive-stat {
    min-height: 112px;
    padding: 18px 16px;
    border: 1px solid rgba(255,255,255,0.075);
    border-radius: 20px;
    background: linear-gradient(180deg, rgba(17, 23, 41, 0.84), rgba(10, 15, 29, 0.8));
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.025);
}

.kishi-projects-archive-stat strong {
    display: block;
    margin-bottom: 8px;
    color: #fff;
    font-size: 27px;
    line-height: 1.15;
}

.kishi-projects-archive-stat span {
    color: #8e98b5;
    font-size: 12px;
}

.kishi-projects-archive-hero__visual {
    position: relative;
    min-height: 420px;
    overflow: hidden;
    border: 1px solid rgba(255,255,255,0.055);
    border-radius: 32px;
    background:
        radial-gradient(circle at 46% 42%, rgba(111,84,255,0.24), transparent 25%),
        radial-gradient(circle at 28% 56%, rgba(72,134,255,0.12), transparent 22%),
        linear-gradient(145deg, rgba(10,15,28,0.95), rgba(7,11,22,0.65));
}

.kishi-projects-archive-hero__visual::before,
.kishi-projects-archive-hero__visual::after {
    content: "";
    position: absolute;
    border-radius: 50%;
    border: 1px solid rgba(119, 96, 255, 0.18);
}

.kishi-projects-archive-hero__visual::before {
    width: 330px;
    height: 330px;
    right: 36px;
    top: 42px;
}

.kishi-projects-archive-hero__visual::after {
    width: 230px;
    height: 230px;
    right: 86px;
    top: 92px;
}

.kishi-project-cube {
    position: absolute;
    top: 50%;
    right: 50%;
    width: 150px;
    height: 150px;
    transform: translate(50%, -50%) rotate(-8deg);
    z-index: 2;
}

.kishi-project-cube__face {
    position: absolute;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(139, 120, 255, 0.7);
    background: linear-gradient(145deg, rgba(79,58,190,0.52), rgba(24,28,55,0.74));
    box-shadow: 0 0 32px rgba(101, 76, 255, 0.2), inset 0 0 26px rgba(121, 103, 255, 0.08);
}

.kishi-project-cube__face--front {
    inset: 0;
    border-radius: 28px;
    color: #c7bcff;
    font-size: 40px;
    font-weight: 800;
}

.kishi-project-cube__face--side {
    width: 46px;
    height: 120px;
    right: -28px;
    top: 16px;
    transform: skewY(-30deg);
    opacity: 0.58;
}

.kishi-project-cube__face--top {
    width: 118px;
    height: 46px;
    right: 16px;
    top: -28px;
    transform: skewX(-30deg);
    opacity: 0.5;
}

.kishi-projects-archive-hero__code-lines {
    position: absolute;
    left: 44px;
    top: 88px;
    width: 90px;
    height: 190px;
    opacity: 0.36;
    background:
        linear-gradient(rgba(129, 116, 255, 0.72), rgba(129, 116, 255, 0.72)) 0 0 / 78px 2px no-repeat,
        linear-gradient(rgba(129, 116, 255, 0.42), rgba(129, 116, 255, 0.42)) 18px 27px / 58px 2px no-repeat,
        linear-gradient(rgba(129, 116, 255, 0.26), rgba(129, 116, 255, 0.26)) 5px 54px / 82px 2px no-repeat,
        linear-gradient(rgba(129, 116, 255, 0.52), rgba(129, 116, 255, 0.52)) 26px 81px / 52px 2px no-repeat,
        linear-gradient(rgba(129, 116, 255, 0.25), rgba(129, 116, 255, 0.25)) 12px 108px / 67px 2px no-repeat,
        linear-gradient(rgba(129, 116, 255, 0.38), rgba(129, 116, 255, 0.38)) 30px 135px / 46px 2px no-repeat;
}

.kishi-projects-archive-listing {
    padding: 58px 0 36px;
}

.kishi-projects-archive-listing__head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(260px, 430px);
    gap: 28px;
    align-items: end;
    margin-bottom: 28px;
}

.kishi-projects-archive-listing__title {
    margin: 0;
    font-size: clamp(30px, 3.6vw, 46px);
    line-height: 1.3;
}

.kishi-projects-archive-listing__head > p {
    margin: 0;
    color: var(--kishi-text-soft);
    line-height: 1.9;
}

.kishi-project-filter {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    padding: 10px;
    margin-bottom: 24px;
    border: 1px solid rgba(255,255,255,0.07);
    border-radius: 18px;
    background: rgba(10,15,29,0.72);
}

.kishi-project-filter a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 40px;
    padding: 0 18px;
    border: 1px solid transparent;
    border-radius: 12px;
    color: #949eb8;
    font-size: 13px;
    font-weight: 700;
}

.kishi-project-filter a:hover,
.kishi-project-filter a:focus-visible {
    color: #fff;
    border-color: rgba(126,104,255,0.26);
}

.kishi-project-filter a.is-active {
    color: #fff;
    background: linear-gradient(135deg, #694cff, #547dff);
    box-shadow: 0 9px 24px rgba(92,79,255,0.22);
}

.kishi-project-archive-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
}

.kishi-project-archive-card {
    overflow: hidden;
    border: 1px solid rgba(255,255,255,0.075);
    border-radius: 22px;
    background: linear-gradient(180deg, rgba(14,20,37,0.95), rgba(8,13,25,0.96));
    box-shadow: 0 18px 48px rgba(0,0,0,0.2);
    transition: transform 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
}

.kishi-project-archive-card:hover {
    transform: translateY(-4px);
    border-color: rgba(119,96,255,0.36);
    box-shadow: 0 24px 58px rgba(0,0,0,0.3);
}

.kishi-project-archive-card__media {
    position: relative;
    display: block;
    aspect-ratio: 16 / 10;
    overflow: hidden;
    border-bottom: 1px solid rgba(255,255,255,0.065);
    background: #0b1020;
}

.kishi-project-archive-card__image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.35s ease;
}

.kishi-project-archive-card:hover .kishi-project-archive-card__image {
    transform: scale(1.025);
}

.kishi-project-archive-card__fallback {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    gap: 8px;
    padding: 24px;
    background:
        radial-gradient(circle at 76% 24%, rgba(111,84,255,0.26), transparent 22%),
        linear-gradient(145deg, #10172a, #090e1b);
}

.kishi-project-archive-card__fallback::before {
    content: "";
    position: absolute;
    width: 155px;
    height: 155px;
    top: -38px;
    left: -22px;
    border-radius: 50%;
    border: 1px solid rgba(126,104,255,0.14);
    box-shadow: 0 0 0 34px rgba(126,104,255,0.025);
}

.kishi-project-archive-card__fallback small {
    color: #8175da;
    font-size: 10px;
    letter-spacing: 0.13em;
}

.kishi-project-archive-card__fallback strong {
    max-width: 15ch;
    color: #fff;
    font-size: 20px;
    line-height: 1.45;
}

.kishi-project-archive-card__fallback > span {
    position: absolute;
    top: 24px;
    right: 24px;
    color: rgba(165,150,255,0.62);
    font-size: 30px;
    font-weight: 800;
}

.kishi-project-archive-card__body {
    display: flex;
    flex-direction: column;
    min-height: 300px;
    padding: 20px;
}

.kishi-project-archive-card__meta-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    margin-bottom: 14px;
    color: #8d80ee;
    font-size: 11px;
    font-weight: 800;
}

.kishi-project-archive-card__body h3 {
    margin: 0 0 10px;
    color: #fff;
    font-size: 21px;
    line-height: 1.5;
}

.kishi-project-archive-card__body > p {
    margin: 0 0 18px;
    color: #a7afc5;
    font-size: 14px;
    line-height: 1.9;
}

.kishi-project-archive-card__details {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: auto;
    margin-bottom: 16px;
}

.kishi-project-archive-card__details span {
    display: inline-flex;
    align-items: center;
    min-height: 30px;
    padding: 0 10px;
    border: 1px solid rgba(255,255,255,0.085);
    border-radius: 999px;
    color: #919bb3;
    font-size: 11px;
}

.kishi-project-archive-card__cta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 44px;
    padding: 0 14px;
    border: 1px solid rgba(255,255,255,0.09);
    border-radius: 12px;
    color: #e8ebf7;
    font-size: 13px;
    font-weight: 800;
}

.kishi-project-archive-card__cta:hover,
.kishi-project-archive-card__cta:focus-visible {
    border-color: rgba(118,95,255,0.42);
    background: rgba(111,84,255,0.07);
}

.kishi-projects-archive-empty {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 18px;
    align-items: center;
    padding: 28px;
    border: 1px dashed rgba(122,101,255,0.35);
    border-radius: 22px;
    background: rgba(111,84,255,0.035);
}

.kishi-projects-archive-empty > span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 54px;
    height: 54px;
    border-radius: 16px;
    background: rgba(111,84,255,0.12);
    color: #a997ff;
    font-size: 28px;
}

.kishi-projects-archive-empty h3,
.kishi-projects-archive-empty p {
    margin: 0;
}

.kishi-projects-archive-empty p {
    margin-top: 6px;
    color: var(--kishi-text-soft);
}

.kishi-project-pagination {
    margin-top: 30px;
}

.kishi-project-pagination .page-numbers {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.kishi-project-pagination .page-numbers a,
.kishi-project-pagination .page-numbers span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 42px;
    height: 42px;
    padding: 0 12px;
    border: 1px solid rgba(255,255,255,0.075);
    border-radius: 12px;
    background: rgba(255,255,255,0.025);
    color: #aab2c8;
}

.kishi-project-pagination .page-numbers .current,
.kishi-project-pagination .page-numbers a:hover,
.kishi-project-pagination .page-numbers a:focus-visible {
    border-color: rgba(118,95,255,0.42);
    background: rgba(111,84,255,0.12);
    color: #fff;
}

.kishi-projects-archive-cta {
    padding: 34px 0 64px;
}

.kishi-projects-archive-cta__inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 30px;
    padding: 34px;
    overflow: hidden;
    border: 1px solid rgba(118,95,255,0.4);
    border-radius: 24px;
    background:
        radial-gradient(circle at 0% 100%, rgba(90,71,255,0.2), transparent 28%),
        linear-gradient(135deg, rgba(39,34,97,0.88), rgba(11,16,30,0.95));
    box-shadow: 0 20px 60px rgba(0,0,0,0.24);
}

.kishi-projects-archive-cta__inner h2 {
    margin: 0 0 8px;
    font-size: clamp(27px, 3.2vw, 42px);
    line-height: 1.35;
}

.kishi-projects-archive-cta__inner p:not(.kishi-section-heading) {
    max-width: 680px;
    margin: 0;
    color: #adb5cc;
}

@media (max-width: 1050px) {
    .kishi-projects-archive-hero__grid,
    .kishi-projects-archive-listing__head {
        grid-template-columns: 1fr;
    }

    .kishi-projects-archive-hero__content {
        max-width: none;
    }

    .kishi-projects-archive-hero__visual {
        min-height: 350px;
    }

    .kishi-projects-archive-stats,
    .kishi-project-archive-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 700px) {
    .kishi-projects-archive-hero {
        padding-top: 28px;
        padding-bottom: 38px;
    }

    .kishi-breadcrumb {
        margin-bottom: 24px;
    }

    .kishi-projects-archive-hero__grid {
        gap: 28px;
    }

    .kishi-projects-archive-hero__title {
        font-size: 52px;
    }

    .kishi-projects-archive-hero__description {
        font-size: 16px;
        line-height: 1.9;
    }

    .kishi-projects-archive-stats,
    .kishi-project-archive-grid {
        grid-template-columns: 1fr;
    }

    .kishi-projects-archive-stats {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .kishi-projects-archive-hero__visual {
        min-height: 290px;
        border-radius: 24px;
    }

    .kishi-project-cube {
        width: 116px;
        height: 116px;
    }

    .kishi-project-cube__face--front {
        font-size: 31px;
        border-radius: 22px;
    }

    .kishi-project-cube__face--side {
        width: 36px;
        height: 92px;
        right: -22px;
    }

    .kishi-project-cube__face--top {
        width: 92px;
        height: 36px;
        right: 12px;
        top: -22px;
    }

    .kishi-projects-archive-listing {
        padding-top: 40px;
    }

    .kishi-project-filter {
        flex-wrap: nowrap;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: thin;
    }

    .kishi-project-filter a {
        flex: 0 0 auto;
    }

    .kishi-projects-archive-cta__inner {
        align-items: stretch;
        flex-direction: column;
        padding: 26px 22px;
    }

    .kishi-projects-archive-cta__inner .kishi-button {
        width: 100%;
    }
}

@media (max-width: 430px) {
    .kishi-projects-archive-stats {
        grid-template-columns: 1fr;
    }
}

/* ============================================================
   KISHI v1.1.0 — Single Project / Case Study
   ============================================================ */
.kishi-case-study {
    padding-bottom: 14px;
}

.kishi-case-study-hero {
    padding: 34px 0 28px;
}

.kishi-case-study-hero__grid {
    display: grid;
    grid-template-columns: minmax(0, 0.92fr) minmax(480px, 1.08fr);
    gap: 34px;
    align-items: center;
}

.kishi-case-study-hero__content {
    max-width: 560px;
}

.kishi-case-study-hero__label {
    display: inline-flex;
    align-items: center;
    min-height: 34px;
    margin-bottom: 16px;
    padding: 0 14px;
    border: 1px solid rgba(121, 99, 255, 0.24);
    border-radius: 999px;
    background: rgba(111, 84, 255, 0.09);
    color: #aa9bff;
    font-size: 12px;
    font-weight: 800;
}

.kishi-case-study-hero__title {
    max-width: 14ch;
    margin: 0 0 14px;
    color: #fff;
    font-size: clamp(42px, 5.2vw, 68px);
    line-height: 1.22;
    letter-spacing: -0.035em;
}

.kishi-case-study-hero__summary {
    max-width: 52ch;
    margin: 0;
    color: #b1b8cc;
    font-size: 17px;
    line-height: 1.95;
}

.kishi-case-study-hero__facts {
    display: grid;
    gap: 12px;
    margin-top: 28px;
}

.kishi-case-study-hero__facts > div {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 12px;
    align-items: center;
}

.kishi-case-study-hero__facts > div > span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    border: 1px solid rgba(122, 101, 255, 0.2);
    border-radius: 13px;
    background: rgba(111, 84, 255, 0.09);
    color: #a994ff;
    font-weight: 800;
}

.kishi-case-study-hero__facts p,
.kishi-case-study-hero__facts small,
.kishi-case-study-hero__facts strong {
    display: block;
    margin: 0;
}

.kishi-case-study-hero__facts small {
    margin-bottom: 2px;
    color: #737d97;
    font-size: 11px;
    font-weight: 700;
}

.kishi-case-study-hero__facts strong {
    color: #e9ecf7;
    font-size: 14px;
    line-height: 1.65;
}

.kishi-case-study__live-button {
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    min-width: 205px;
    min-height: 52px;
    margin-top: 24px;
    padding: 0 18px;
    border: 1px solid rgba(123, 86, 255, 0.7);
    border-radius: 13px;
    background: rgba(93, 67, 255, 0.05);
    color: #fff;
    font-size: 14px;
    font-weight: 800;
    box-shadow: inset 0 0 24px rgba(111, 84, 255, 0.035);
}

.kishi-case-study__live-button:hover,
.kishi-case-study__live-button:focus-visible {
    background: rgba(111, 84, 255, 0.12);
    box-shadow: 0 12px 34px rgba(79, 59, 205, 0.18);
}

.kishi-case-study-hero__media {
    position: relative;
    aspect-ratio: 16 / 11;
    overflow: hidden;
    padding: 14px;
    border: 1px solid rgba(255,255,255,0.075);
    border-radius: 25px;
    background: linear-gradient(180deg, rgba(13,18,33,0.96), rgba(7,11,22,0.96));
    box-shadow: 0 26px 70px rgba(0,0,0,0.28);
}

.kishi-case-study-hero__image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 17px;
}

.kishi-case-study-hero__fallback {
    position: relative;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    gap: 8px;
    padding: 34px;
    overflow: hidden;
    border-radius: 17px;
    background:
        radial-gradient(circle at 25% 28%, rgba(115, 79, 255, 0.3), transparent 24%),
        linear-gradient(140deg, #0f172c, #080d19);
}

.kishi-case-study-hero__fallback::before,
.kishi-case-study-hero__fallback::after {
    content: "";
    position: absolute;
    border: 1px solid rgba(130, 110, 255, 0.15);
    border-radius: 26px;
    transform: rotate(32deg);
}

.kishi-case-study-hero__fallback::before {
    width: 230px;
    height: 230px;
    left: 11%;
    top: 16%;
}

.kishi-case-study-hero__fallback::after {
    width: 160px;
    height: 160px;
    left: 18%;
    top: 25%;
}

.kishi-case-study-hero__fallback small,
.kishi-case-study-hero__fallback strong,
.kishi-case-study-hero__fallback span {
    position: relative;
    z-index: 2;
}

.kishi-case-study-hero__fallback small {
    color: #8175da;
    letter-spacing: 0.12em;
}

.kishi-case-study-hero__fallback strong {
    max-width: 15ch;
    color: #fff;
    font-size: 30px;
    line-height: 1.4;
}

.kishi-case-study-hero__fallback > span {
    position: absolute;
    top: 28px;
    right: 28px;
    color: #8c7dff;
    font-size: 42px;
    font-weight: 800;
}

.kishi-case-study-section {
    padding: 10px 0;
}

.kishi-case-study-panel {
    padding: 30px;
    border: 1px solid rgba(255,255,255,0.07);
    border-radius: 23px;
    background: linear-gradient(180deg, rgba(12,17,31,0.95), rgba(8,13,25,0.96));
    box-shadow: 0 18px 54px rgba(0,0,0,0.2);
}

.kishi-case-study-about__content {
    color: #adb5ca;
    line-height: 2.05;
}

.kishi-case-study-about__content > :first-child {
    margin-top: 0;
}

.kishi-case-study-about__content > :last-child {
    margin-bottom: 0;
}

.kishi-case-study-about__content h2,
.kishi-case-study-about__content h3 {
    color: #fff;
}

.kishi-case-study-about__live {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    margin-top: 28px;
    padding: 20px;
    border: 1px solid rgba(119, 82, 255, 0.52);
    border-radius: 18px;
    background:
        radial-gradient(circle at 0% 100%, rgba(111,84,255,0.14), transparent 25%),
        rgba(111,84,255,0.035);
}

.kishi-case-study-about__live strong,
.kishi-case-study-about__live span {
    display: block;
}

.kishi-case-study-about__live strong {
    margin-bottom: 4px;
    color: #fff;
    font-size: 16px;
}

.kishi-case-study-about__live span {
    color: #99a3bd;
    font-size: 13px;
}

.kishi-case-study-feature-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
}

.kishi-case-study-feature {
    min-height: 184px;
    padding: 20px;
    border: 1px solid rgba(255,255,255,0.075);
    border-radius: 18px;
    background: rgba(255,255,255,0.018);
}

.kishi-case-study-feature__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    margin-bottom: 22px;
    border-radius: 13px;
    background: rgba(111,84,255,0.09);
    color: #a18fff;
    font-size: 11px;
    font-weight: 900;
}

.kishi-case-study-feature strong {
    display: block;
    margin-bottom: 8px;
    color: #fff;
    font-size: 16px;
}

.kishi-case-study-feature p {
    margin: 0;
    color: #98a1b8;
    font-size: 13px;
    line-height: 1.85;
}

.kishi-case-study-tech-list {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.kishi-case-study-tech-list span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    padding: 0 16px;
    border: 1px solid rgba(255,255,255,0.075);
    border-radius: 13px;
    background: rgba(255,255,255,0.025);
    color: #d7dcef;
    font-size: 13px;
    font-weight: 800;
}

.kishi-case-study-tech-list span::before {
    content: "•";
    margin-left: 8px;
    color: #7965ff;
    font-size: 18px;
}

.kishi-case-study-results {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    border-top: 1px solid rgba(255,255,255,0.055);
    border-bottom: 1px solid rgba(255,255,255,0.055);
}

.kishi-case-study-result {
    padding: 24px 16px;
    text-align: center;
    border-left: 1px solid rgba(255,255,255,0.055);
}

.kishi-case-study-result:last-child {
    border-left: 0;
}

.kishi-case-study-result strong,
.kishi-case-study-result span {
    display: block;
}

.kishi-case-study-result strong {
    margin-bottom: 6px;
    color: #fff;
    font-size: clamp(26px, 3vw, 38px);
    line-height: 1.2;
}

.kishi-case-study-result span {
    color: #a4adc2;
    font-size: 13px;
}

.kishi-case-study-nav-section {
    padding: 22px 0 10px;
}

.kishi-case-study-nav {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 190px minmax(0, 1fr);
    gap: 10px;
}

.kishi-case-study-nav__project,
.kishi-case-study-nav__all,
.kishi-case-study-nav__spacer {
    min-height: 104px;
    border: 1px solid rgba(255,255,255,0.07);
    border-radius: 18px;
    background: rgba(10,15,29,0.76);
}

.kishi-case-study-nav__project {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 18px 54px 18px 20px;
}

.kishi-case-study-nav__project small {
    margin-bottom: 4px;
    color: #8c75ff;
    font-weight: 800;
}

.kishi-case-study-nav__project strong {
    max-width: 24ch;
    color: #fff;
    font-size: 15px;
}

.kishi-case-study-nav__project > span {
    position: absolute;
    right: 18px;
    top: 50%;
    transform: translateY(-50%);
    color: #8790aa;
    font-size: 22px;
}

.kishi-case-study-nav__project:hover,
.kishi-case-study-nav__project:focus-visible,
.kishi-case-study-nav__all:hover,
.kishi-case-study-nav__all:focus-visible {
    border-color: rgba(118,95,255,0.38);
    background: rgba(111,84,255,0.055);
}

.kishi-case-study-nav__all {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 7px;
    color: #d9ddec;
    font-size: 12px;
    font-weight: 800;
    text-align: center;
}

.kishi-case-study-nav__all > span {
    color: #7865ff;
    font-size: 28px;
}

.kishi-case-study-cta-section {
    padding: 12px 0 44px;
}

.kishi-case-study-cta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 28px;
    padding: 28px;
    overflow: hidden;
    border: 1px solid rgba(118,95,255,0.38);
    border-radius: 22px;
    background:
        radial-gradient(circle at 0 100%, rgba(90,71,255,0.2), transparent 25%),
        linear-gradient(135deg, rgba(38,32,92,0.78), rgba(9,14,27,0.96));
}

.kishi-case-study-cta h2 {
    margin: 0 0 6px;
    color: #fff;
    font-size: clamp(25px, 3vw, 38px);
}

.kishi-case-study-cta > div > p:not(.kishi-section-heading) {
    margin: 0;
    color: #a8b0c6;
}

@media (max-width: 1050px) {
    .kishi-case-study-hero__grid {
        grid-template-columns: 1fr;
    }

    .kishi-case-study-hero__content {
        max-width: none;
    }

    .kishi-case-study-hero__title {
        max-width: none;
    }

    .kishi-case-study-hero__media {
        order: -1;
    }

    .kishi-case-study-feature-grid,
    .kishi-case-study-results {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .kishi-case-study-result:nth-child(2n) {
        border-left: 0;
    }

    .kishi-case-study-result:nth-child(n+3) {
        border-top: 1px solid rgba(255,255,255,0.055);
    }
}

@media (max-width: 700px) {
    .kishi-case-study-hero {
        padding-top: 26px;
    }

    .kishi-case-study-hero__grid {
        gap: 24px;
    }

    .kishi-case-study-hero__title {
        font-size: 44px;
    }

    .kishi-case-study-hero__summary {
        font-size: 15px;
    }

    .kishi-case-study-hero__media {
        padding: 9px;
        border-radius: 20px;
    }

    .kishi-case-study-panel {
        padding: 22px;
    }

    .kishi-case-study-about__live,
    .kishi-case-study-cta {
        align-items: stretch;
        flex-direction: column;
    }

    .kishi-case-study-about__live .kishi-button,
    .kishi-case-study-cta .kishi-button,
    .kishi-case-study__live-button {
        width: 100%;
    }

    .kishi-case-study-feature-grid,
    .kishi-case-study-results {
        grid-template-columns: 1fr;
    }

    .kishi-case-study-result {
        border-left: 0;
        border-top: 1px solid rgba(255,255,255,0.055);
    }

    .kishi-case-study-result:first-child {
        border-top: 0;
    }

    .kishi-case-study-nav {
        grid-template-columns: 1fr;
    }

    .kishi-case-study-nav__spacer {
        display: none;
    }

    .kishi-case-study-nav__all {
        order: -1;
        min-height: 84px;
    }
}

/* =========================================================
   Services Page — v1.2.0
   ========================================================= */

.kishi-services-page-hero {
    padding: 26px 0 30px;
}

.kishi-page-breadcrumbs {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 30px;
    color: #707b96;
    font-size: 13px;
}

.kishi-page-breadcrumbs a:hover,
.kishi-page-breadcrumbs a:focus-visible {
    color: #fff;
}

.kishi-services-page-hero__grid {
    display: grid;
    grid-template-columns: minmax(0, 0.9fr) minmax(440px, 1.1fr);
    align-items: center;
    gap: 48px;
    min-height: 500px;
}

.kishi-services-page-hero__content {
    max-width: 620px;
}

.kishi-services-page-hero__content h1 {
    max-width: 12ch;
    margin: 0 0 18px;
    color: #fff;
    font-size: clamp(46px, 5.4vw, 76px);
    line-height: 1.15;
    letter-spacing: -0.045em;
}

.kishi-services-page-hero__content > p:not(.kishi-section-heading) {
    max-width: 610px;
    margin: 0 0 28px;
    color: #aeb6cb;
    font-size: 17px;
    line-height: 1.95;
}

.kishi-services-page-hero__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
}

.kishi-services-page-hero__visual {
    position: relative;
    min-height: 460px;
    overflow: hidden;
    border: 1px solid rgba(255,255,255,0.07);
    border-radius: 32px;
    background:
        radial-gradient(circle at 60% 38%, rgba(111,84,255,0.27), transparent 30%),
        radial-gradient(circle at 20% 72%, rgba(45,111,255,0.12), transparent 24%),
        linear-gradient(180deg, rgba(10,15,29,0.92), rgba(6,10,20,0.96));
    box-shadow: 0 30px 80px rgba(0,0,0,0.42);
}

.kishi-services-page-hero__visual::before {
    content: "";
    position: absolute;
    inset: 0;
    opacity: 0.18;
    background-image:
        linear-gradient(rgba(255,255,255,0.035) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,0.035) 1px, transparent 1px);
    background-size: 34px 34px;
    mask-image: linear-gradient(180deg, #000, transparent 86%);
}

.kishi-services-laptop {
    position: absolute;
    top: 76px;
    left: 50%;
    width: min(70%, 470px);
    height: 278px;
    transform: translateX(-50%) perspective(900px) rotateX(2deg) rotateY(-8deg) rotateZ(-2deg);
    border: 9px solid #141b2e;
    border-radius: 20px;
    background: #060a14;
    box-shadow: 0 34px 60px rgba(0,0,0,0.55), 0 0 60px rgba(111,84,255,0.14);
}

.kishi-services-laptop::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: -27px;
    width: 120%;
    height: 22px;
    transform: translateX(-50%);
    border-radius: 3px 3px 18px 18px;
    background: linear-gradient(180deg, #262e42, #0e1423);
    box-shadow: 0 14px 30px rgba(0,0,0,0.38);
}

.kishi-services-laptop__camera {
    position: absolute;
    top: -6px;
    left: 50%;
    width: 5px;
    height: 5px;
    transform: translateX(-50%);
    border-radius: 50%;
    background: #48516a;
    z-index: 2;
}

.kishi-services-laptop__screen {
    position: absolute;
    inset: 8px;
    overflow: hidden;
    border-radius: 8px;
    background:
        radial-gradient(circle at 68% 26%, rgba(93,75,255,0.2), transparent 30%),
        #090e1c;
}

.kishi-services-laptop__bar {
    display: flex;
    gap: 5px;
    padding: 10px 12px;
    border-bottom: 1px solid rgba(255,255,255,0.055);
}

.kishi-services-laptop__bar i {
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: rgba(255,255,255,0.18);
}

.kishi-services-laptop__code {
    display: grid;
    align-content: center;
    gap: 14px;
    width: 70%;
    height: calc(100% - 25px);
    padding: 26px;
}

.kishi-services-laptop__code span {
    display: block;
    height: 8px;
    border-radius: 999px;
    background: linear-gradient(90deg, rgba(119,91,255,0.86), rgba(73,132,255,0.35));
}

.kishi-services-laptop__code span:nth-child(1) { width: 72%; }
.kishi-services-laptop__code span:nth-child(2) { width: 46%; opacity: 0.7; }
.kishi-services-laptop__code span:nth-child(3) { width: 84%; }
.kishi-services-laptop__code span:nth-child(4) { width: 58%; opacity: 0.7; }
.kishi-services-laptop__code span:nth-child(5) { width: 68%; }

.kishi-services-orbit {
    position: absolute;
    display: grid;
    place-items: center;
    width: 78px;
    height: 78px;
    z-index: 3;
    border: 1px solid rgba(139,119,255,0.24);
    border-radius: 22px;
    background: rgba(19,25,45,0.82);
    color: #a998ff;
    font-size: 24px;
    font-weight: 900;
    box-shadow: 0 18px 40px rgba(0,0,0,0.35), 0 0 24px rgba(111,84,255,0.13);
    backdrop-filter: blur(10px);
}

.kishi-services-orbit--code {
    top: 112px;
    right: 34px;
}

.kishi-services-orbit--ui {
    bottom: 58px;
    left: 44px;
}

.kishi-services-floating-list {
    position: absolute;
    top: 90px;
    left: 20px;
    display: grid;
    gap: 10px;
    z-index: 4;
    width: 160px;
    padding: 16px;
    border: 1px solid rgba(139,119,255,0.17);
    border-radius: 18px;
    background: rgba(16,22,39,0.82);
    color: #c8cee0;
    font-size: 12px;
    font-weight: 700;
    backdrop-filter: blur(14px);
}

.kishi-services-floating-list span {
    position: relative;
    padding-right: 16px;
}

.kishi-services-floating-list span::before {
    content: "";
    position: absolute;
    right: 0;
    top: 8px;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #7461ff;
    box-shadow: 0 0 0 4px rgba(111,84,255,0.08);
}

.kishi-services-principles {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin-top: 26px;
    padding: 20px;
    border: 1px solid rgba(255,255,255,0.075);
    border-radius: 22px;
    background: rgba(10,15,28,0.76);
}

.kishi-services-principles div {
    padding: 4px 22px;
    border-left: 1px solid rgba(255,255,255,0.065);
    text-align: center;
}

.kishi-services-principles div:last-child {
    border-left: 0;
}

.kishi-services-principles strong,
.kishi-services-principles span {
    display: block;
}

.kishi-services-principles strong {
    margin-bottom: 4px;
    color: #fff;
    font-size: 16px;
}

.kishi-services-principles span {
    color: #8f99b2;
    font-size: 12px;
}

.kishi-services-page-section {
    padding: 34px 0;
}

.kishi-services-page-section__head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(320px, 0.62fr);
    gap: 30px;
    align-items: end;
    margin-bottom: 24px;
}

.kishi-services-page-section__head .kishi-section-heading {
    grid-column: 1 / -1;
    margin-bottom: -18px;
}

.kishi-services-page-section__head h2 {
    margin: 0;
    color: #fff;
    font-size: clamp(30px, 3.5vw, 46px);
    line-height: 1.25;
}

.kishi-services-page-section__head > p:not(.kishi-section-heading) {
    margin: 0;
    color: #929cb6;
    font-size: 14px;
    line-height: 1.9;
}

.kishi-services-page-section__head--center {
    display: block;
    max-width: 760px;
    margin-inline: auto;
    text-align: center;
}

.kishi-services-page-section__head--center .kishi-section-heading {
    justify-content: center;
    margin-bottom: 16px;
}

.kishi-services-page-section__head--center h2 {
    margin-bottom: 12px;
}

.kishi-services-page-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
}

.kishi-services-page-card {
    position: relative;
    min-height: 390px;
    padding: 24px;
    overflow: hidden;
    border: 1px solid rgba(255,255,255,0.075);
    border-radius: 22px;
    background:
        radial-gradient(circle at 100% 0, rgba(111,84,255,0.07), transparent 28%),
        rgba(10,15,28,0.78);
}

.kishi-services-page-card::after {
    content: "";
    position: absolute;
    right: 0;
    left: 0;
    bottom: 0;
    height: 2px;
    opacity: 0;
    background: linear-gradient(90deg, transparent, #6f54ff, transparent);
    transition: opacity .2s ease;
}

.kishi-services-page-card:hover::after {
    opacity: 1;
}

.kishi-services-page-card__top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 28px;
}

.kishi-services-page-card__number {
    display: grid;
    place-items: center;
    width: 42px;
    height: 42px;
    border-radius: 13px;
    background: rgba(111,84,255,0.1);
    color: #9a88ff;
    font-size: 12px;
    font-weight: 900;
}

.kishi-services-page-card__eyebrow {
    color: #66728e;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .08em;
}

.kishi-services-page-card h3 {
    margin: 0 0 10px;
    color: #fff;
    font-size: 21px;
}

.kishi-services-page-card > p {
    min-height: 82px;
    margin: 0 0 22px;
    color: #9aa4bc;
    font-size: 13px;
    line-height: 1.85;
}

.kishi-services-page-card ul {
    display: grid;
    gap: 10px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.kishi-services-page-card li {
    position: relative;
    padding-right: 18px;
    color: #ccd2e2;
    font-size: 12px;
}

.kishi-services-page-card li::before {
    content: "";
    position: absolute;
    right: 0;
    top: 10px;
    width: 6px;
    height: 6px;
    border: 1px solid #7c67ff;
    border-radius: 50%;
}

.kishi-services-page-section--paths {
    padding-top: 46px;
}

.kishi-services-paths-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
    margin-top: 28px;
}

.kishi-services-path-card {
    position: relative;
    min-height: 220px;
    padding: 24px;
    border: 1px solid rgba(255,255,255,0.075);
    border-radius: 20px;
    background: rgba(255,255,255,0.018);
}

.kishi-services-path-card > span {
    display: inline-flex;
    margin-bottom: 30px;
    color: #7d68ff;
    font-size: 12px;
    font-weight: 900;
}

.kishi-services-path-card h3 {
    margin: 0 0 10px;
    color: #fff;
    font-size: 17px;
}

.kishi-services-path-card p {
    margin: 0;
    color: #929cb4;
    font-size: 12px;
    line-height: 1.9;
}

.kishi-services-page-section--projects {
    padding-top: 46px;
}

.kishi-services-projects-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
}

.kishi-services-project-card {
    overflow: hidden;
    border: 1px solid rgba(255,255,255,0.075);
    border-radius: 20px;
    background: rgba(10,15,28,0.78);
}

.kishi-services-project-card__media {
    display: block;
    aspect-ratio: 16 / 10;
    overflow: hidden;
    border-bottom: 1px solid rgba(255,255,255,0.06);
    background:
        radial-gradient(circle at 50% 44%, rgba(111,84,255,0.18), transparent 28%),
        #0b1020;
}

.kishi-services-project-card__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .25s ease;
}

.kishi-services-project-card:hover .kishi-services-project-card__media img {
    transform: scale(1.025);
}

.kishi-services-project-card__media > span {
    display: grid;
    place-items: center;
    width: 100%;
    height: 100%;
    color: rgba(255,255,255,0.14);
    font-size: 26px;
    font-weight: 900;
    letter-spacing: .12em;
}

.kishi-services-project-card__body {
    padding: 18px;
}

.kishi-services-project-card__body small {
    display: block;
    margin-bottom: 6px;
    color: #7f69ff;
    font-weight: 800;
}

.kishi-services-project-card__body h3 {
    margin: 0 0 7px;
    color: #fff;
    font-size: 16px;
}

.kishi-services-project-card__body p {
    min-height: 44px;
    margin: 0 0 14px;
    color: #919ab1;
    font-size: 12px;
    line-height: 1.8;
}

.kishi-services-project-card__link {
    color: #b8aeff;
    font-size: 12px;
    font-weight: 800;
}

.kishi-services-page-cta-section {
    padding: 34px 0 52px;
}

.kishi-services-page-cta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 28px;
    padding: 32px;
    overflow: hidden;
    border: 1px solid rgba(118,95,255,0.4);
    border-radius: 24px;
    background:
        radial-gradient(circle at 8% 100%, rgba(111,84,255,0.22), transparent 28%),
        linear-gradient(135deg, rgba(39,32,94,0.78), rgba(8,13,26,0.98));
}

.kishi-services-page-cta h2 {
    margin: 0 0 6px;
    color: #fff;
    font-size: clamp(28px, 3vw, 40px);
}

.kishi-services-page-cta > div > p:not(.kishi-section-heading) {
    margin: 0;
    color: #9da6bd;
}

@media (max-width: 1100px) {
    .kishi-services-page-hero__grid {
        grid-template-columns: 1fr;
    }

    .kishi-services-page-hero__content,
    .kishi-services-page-hero__content h1 {
        max-width: none;
    }

    .kishi-services-page-hero__visual {
        min-height: 430px;
    }

    .kishi-services-page-grid,
    .kishi-services-paths-grid,
    .kishi-services-projects-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 760px) {
    .kishi-services-page-hero {
        padding-top: 22px;
    }

    .kishi-page-breadcrumbs {
        margin-bottom: 20px;
    }

    .kishi-services-page-hero__grid {
        gap: 26px;
        min-height: auto;
    }

    .kishi-services-page-hero__content h1 {
        font-size: 42px;
    }

    .kishi-services-page-hero__content > p:not(.kishi-section-heading) {
        font-size: 15px;
    }

    .kishi-services-page-hero__actions .kishi-button {
        width: 100%;
    }

    .kishi-services-page-hero__visual {
        min-height: 330px;
        border-radius: 24px;
    }

    .kishi-services-laptop {
        top: 72px;
        width: 76%;
        height: 190px;
    }

    .kishi-services-floating-list {
        display: none;
    }

    .kishi-services-orbit {
        width: 58px;
        height: 58px;
        border-radius: 17px;
        font-size: 17px;
    }

    .kishi-services-orbit--code {
        top: 40px;
        right: 18px;
    }

    .kishi-services-orbit--ui {
        bottom: 34px;
        left: 20px;
    }

    .kishi-services-principles {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 0;
        padding: 10px;
    }

    .kishi-services-principles div {
        padding: 14px 8px;
        border-left: 0;
    }

    .kishi-services-page-section__head {
        display: block;
    }

    .kishi-services-page-section__head .kishi-section-heading {
        margin-bottom: 16px;
    }

    .kishi-services-page-section__head h2 {
        margin-bottom: 10px;
    }

    .kishi-services-page-grid,
    .kishi-services-paths-grid,
    .kishi-services-projects-grid {
        grid-template-columns: 1fr;
    }

    .kishi-services-page-card {
        min-height: auto;
    }

    .kishi-services-page-card > p,
    .kishi-services-project-card__body p {
        min-height: 0;
    }

    .kishi-services-page-cta {
        align-items: stretch;
        flex-direction: column;
    }

    .kishi-services-page-cta .kishi-button {
        width: 100%;
    }
}

.kishi-services-section__more {
    display: flex;
    justify-content: flex-start;
    margin: -4px 0 18px;
}

.kishi-services-section__more a {
    color: #b4aaff;
    font-size: 13px;
    font-weight: 800;
}


/* =========================================================
   Services Page Blueprint Polish — v1.3.0
   ========================================================= */

.kishi-services-page-hero {
    padding: 24px 0 34px;
}

.kishi-services-page-hero__grid {
    grid-template-columns: minmax(0, 1.02fr) minmax(430px, 0.98fr);
    gap: 58px;
    min-height: 520px;
}

.kishi-services-page-hero__content {
    max-width: 690px;
}

.kishi-services-page-hero__eyebrow {
    margin: 0 0 15px;
    color: #8f79ff;
    font-size: 14px;
    font-weight: 900;
}

.kishi-services-page-hero__content h1 {
    max-width: 13ch;
    font-size: clamp(43px, 5.15vw, 72px);
    line-height: 1.22;
}

.kishi-services-page-hero__content h1 > span {
    color: #765cff;
    text-shadow: 0 0 30px rgba(111,84,255,.2);
}

.kishi-services-page-hero__content > p:not(.kishi-services-page-hero__eyebrow) {
    max-width: 610px;
    color: #abb4ca;
    font-size: 17px;
    line-height: 2;
}

.kishi-services-page-hero__actions {
    align-items: center;
    gap: 22px;
}

.kishi-services-page-text-link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #ad9fff;
    font-size: 14px;
    font-weight: 800;
}

.kishi-services-page-text-link:hover,
.kishi-services-page-text-link:focus-visible {
    color: #fff;
}

.kishi-services-page-hero__visual {
    min-height: 480px;
    overflow: visible;
    border: 0;
    background:
        radial-gradient(circle at 45% 72%, rgba(101,72,255,.25), transparent 34%),
        radial-gradient(circle at 18% 58%, rgba(48,92,255,.13), transparent 24%);
    box-shadow: none;
}

.kishi-services-page-hero__visual::before {
    inset: 34px 28px 32px;
    border: 1px solid rgba(125,103,255,.1);
    border-radius: 28px;
    opacity: .35;
    background-image:
        linear-gradient(rgba(255,255,255,.028) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.028) 1px, transparent 1px);
    background-size: 30px 30px;
}

.kishi-services-laptop {
    top: 92px;
    width: min(79%, 500px);
    height: 292px;
    border-width: 8px;
    transform: translateX(-50%) perspective(1000px) rotateX(3deg) rotateY(-9deg) rotateZ(-3deg);
    box-shadow: 0 40px 72px rgba(0,0,0,.62), 0 0 72px rgba(111,84,255,.15);
}

.kishi-services-laptop__screen-layout {
    display: grid;
    grid-template-columns: .9fr 1.1fr;
    height: calc(100% - 27px);
}

.kishi-services-laptop__screen-copy {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    direction: ltr;
    padding: 24px 20px 24px 28px;
}

.kishi-services-laptop__screen-copy small {
    color: #9182ff;
    font-size: 10px;
    font-weight: 800;
}

.kishi-services-laptop__screen-copy strong {
    margin: 7px 0 12px;
    color: #f6f7ff;
    font-size: 18px;
    line-height: 1.15;
}

.kishi-services-laptop__screen-copy i {
    width: 64px;
    height: 18px;
    border-radius: 6px;
    background: linear-gradient(135deg,#654eff,#7e69ff);
    box-shadow: 0 6px 16px rgba(111,84,255,.25);
}

.kishi-services-laptop__code {
    width: 100%;
    height: 100%;
    padding: 30px 24px;
}

.kishi-services-orbit--code {
    top: 126px;
    right: 28px;
}

.kishi-services-floating-list {
    top: 118px;
    left: 0;
    width: 165px;
}

.kishi-services-principles {
    margin-top: 18px;
    padding: 0;
    overflow: hidden;
    border-color: rgba(125,103,255,.24);
    border-radius: 18px;
    background: rgba(8,13,25,.72);
}

.kishi-services-principles div {
    min-height: 126px;
    padding: 22px 20px;
}

.kishi-services-principles b {
    display: grid;
    place-items: center;
    width: 34px;
    height: 34px;
    margin: 0 auto 10px;
    border-radius: 11px;
    background: rgba(111,84,255,.1);
    color: #8c76ff;
    font-size: 20px;
}

.kishi-services-principles strong {
    font-size: 15px;
}

.kishi-services-principles span {
    margin-top: 3px;
    color: #8792aa;
    font-size: 11px;
    line-height: 1.7;
}

.kishi-services-page-section {
    padding: 38px 0;
}

.kishi-services-page-section__head--center {
    max-width: 810px;
    margin-bottom: 28px;
}

.kishi-services-page-section__head--center .kishi-section-heading {
    display: inline-flex;
}

.kishi-services-page-section__head--center h2 {
    font-size: clamp(30px,3.4vw,44px);
}

.kishi-services-page-grid {
    gap: 16px;
}

.kishi-services-page-card {
    min-height: 470px;
    padding: 22px 22px 20px;
    border-color: rgba(132,115,255,.17);
    background:
        radial-gradient(circle at 50% 0, rgba(111,84,255,.08), transparent 27%),
        linear-gradient(180deg, rgba(10,15,28,.92), rgba(7,12,23,.96));
}

.kishi-services-page-card__top {
    margin-bottom: 18px;
}

.kishi-services-page-card__icon {
    display: grid;
    place-items: center;
    width: 54px;
    height: 54px;
    border: 1px solid rgba(124,102,255,.18);
    border-radius: 16px;
    background: linear-gradient(145deg, rgba(111,84,255,.18), rgba(40,31,88,.16));
    color: #866fff;
    font-size: 20px;
    font-weight: 900;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.04), 0 12px 28px rgba(0,0,0,.15);
}

.kishi-services-page-card__number {
    width: 38px;
    height: 38px;
    color: #cec7ff;
    background: #34276f;
}

.kishi-services-page-card__eyebrow {
    display: block;
    margin: 0 0 10px;
    color: #6d7790;
}

.kishi-services-page-card h3 {
    margin-bottom: 11px;
    font-size: 20px;
}

.kishi-services-page-card > p {
    min-height: 92px;
}

.kishi-services-page-card li {
    color: #b9c1d3;
    line-height: 1.75;
}

.kishi-services-page-card__link {
    display: inline-flex;
    gap: 7px;
    margin-top: 22px;
    color: #aa9cff;
    font-size: 12px;
    font-weight: 900;
}

.kishi-services-page-section--paths {
    padding-top: 26px;
}

.kishi-services-paths-grid {
    gap: 16px;
    margin-top: 24px;
}

.kishi-services-path-card {
    min-height: 236px;
    padding: 24px;
    border-color: rgba(132,115,255,.16);
    background:
        radial-gradient(circle at 50% 0, rgba(111,84,255,.06), transparent 30%),
        rgba(8,13,25,.75);
}

.kishi-services-path-card__icon {
    display: grid !important;
    place-items: center;
    width: 48px;
    height: 48px;
    margin: 0 0 22px !important;
    border-radius: 15px;
    background: rgba(111,84,255,.1);
    color: #8069ff !important;
    font-size: 24px !important;
}

.kishi-services-path-card h3 {
    font-size: 16px;
    line-height: 1.65;
}

.kishi-services-path-card p {
    min-height: 78px;
}

.kishi-services-path-card a {
    display: inline-flex;
    gap: 6px;
    margin-top: 16px;
    color: #9d8cff;
    font-size: 12px;
    font-weight: 800;
}

.kishi-services-page-section__head--projects {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 24px;
}

.kishi-services-page-section__head--projects > div {
    max-width: 760px;
}

.kishi-services-page-section__head--projects .kishi-section-heading {
    margin-bottom: 14px;
}

.kishi-services-page-section__head--projects h2 {
    font-size: clamp(28px,3vw,40px);
}

.kishi-services-projects-grid {
    gap: 16px;
}

.kishi-services-project-card {
    border-color: rgba(132,115,255,.15);
    background: #090e1b;
    transition: transform .2s ease, border-color .2s ease;
}

.kishi-services-project-card:hover {
    transform: translateY(-2px);
    border-color: rgba(132,115,255,.32);
}

.kishi-services-project-card__media {
    aspect-ratio: 16 / 9;
}

.kishi-services-project-card__body {
    padding: 17px 18px 19px;
}

.kishi-services-page-cta {
    position: relative;
    min-height: 150px;
    padding: 30px 34px;
    border-color: rgba(117,91,255,.52);
    background:
        radial-gradient(circle at 92% 100%, rgba(111,84,255,.34), transparent 26%),
        linear-gradient(110deg, rgba(46,35,108,.82), rgba(10,14,28,.96) 58%);
}

.kishi-services-page-cta__copy {
    position: relative;
    z-index: 2;
    flex: 1;
}

.kishi-services-page-cta__actions {
    position: relative;
    z-index: 2;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
}

.kishi-services-page-cta__rocket {
    position: absolute;
    left: 56px;
    bottom: -14px;
    color: rgba(125,103,255,.18);
    font-size: 130px;
    font-weight: 900;
    line-height: 1;
    transform: rotate(-25deg);
}

@media (max-width: 1100px) {
    .kishi-services-page-hero__grid {
        grid-template-columns: 1fr;
    }

    .kishi-services-page-hero__visual {
        min-height: 430px;
    }

    .kishi-services-page-section__head--projects {
        align-items: flex-start;
        flex-direction: column;
    }
}

@media (max-width: 760px) {
    .kishi-services-page-hero__content h1 {
        font-size: 39px;
        max-width: none;
    }

    .kishi-services-page-hero__actions {
        align-items: stretch;
        flex-direction: column;
    }

    .kishi-services-page-hero__actions .kishi-button {
        width: 100%;
    }

    .kishi-services-page-text-link {
        justify-content: center;
        min-height: 44px;
    }

    .kishi-services-page-hero__visual {
        min-height: 320px;
    }

    .kishi-services-laptop {
        top: 75px;
        height: 190px;
    }

    .kishi-services-laptop__screen-copy strong {
        font-size: 12px;
    }

    .kishi-services-laptop__screen-copy i {
        width: 42px;
        height: 14px;
    }

    .kishi-services-principles {
        grid-template-columns: 1fr 1fr;
    }

    .kishi-services-principles div {
        min-height: 120px;
    }

    .kishi-services-page-card {
        min-height: auto;
    }

    .kishi-services-page-card > p,
    .kishi-services-path-card p {
        min-height: 0;
    }

    .kishi-services-page-section__head--projects .kishi-button {
        width: 100%;
    }

    .kishi-services-page-cta {
        flex-direction: column;
        align-items: stretch;
        padding: 26px;
    }

    .kishi-services-page-cta__actions {
        width: 100%;
    }

    .kishi-services-page-cta__actions .kishi-button {
        width: 100%;
    }

    .kishi-services-page-cta__rocket {
        left: 12px;
        bottom: 10px;
        font-size: 84px;
    }
}


/* =========================================================
   About Page — v1.4.0
   ========================================================= */
.kishi-about-page-hero {
    padding: 24px 0 32px;
}

.kishi-about-page-hero__grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(410px, .92fr);
    align-items: center;
    gap: 54px;
    min-height: 560px;
}

.kishi-about-page-hero__content {
    max-width: 690px;
}

.kishi-about-page-hero__eyebrow {
    margin: 0 0 14px;
    color: #9a87ff;
    font-size: 14px;
    font-weight: 900;
}

.kishi-about-page-hero__content h1 {
    max-width: 13ch;
    margin: 0 0 20px;
    color: #fff;
    font-size: clamp(44px, 5vw, 72px);
    line-height: 1.2;
    letter-spacing: -.035em;
}

.kishi-about-page-hero__content h1 span {
    color: #8068ff;
    text-shadow: 0 0 30px rgba(111,84,255,.22);
}

.kishi-about-page-hero__content > p:not(.kishi-about-page-hero__eyebrow) {
    max-width: 620px;
    margin: 0;
    color: #aeb7cc;
    font-size: 17px;
    line-height: 2;
}

.kishi-about-page-hero__actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 22px;
    margin-top: 30px;
}

.kishi-about-page-text-link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #a898ff;
    font-size: 14px;
    font-weight: 800;
}

.kishi-about-page-text-link:hover,
.kishi-about-page-text-link:focus-visible {
    color: #fff;
}

.kishi-about-page-hero__visual {
    position: relative;
    min-height: 520px;
    overflow: hidden;
    border: 1px solid rgba(129,111,255,.14);
    border-radius: 34px;
    background:
        radial-gradient(circle at 51% 42%, rgba(111,84,255,.3), transparent 28%),
        radial-gradient(circle at 83% 68%, rgba(41,93,255,.13), transparent 25%),
        linear-gradient(180deg, rgba(9,14,27,.97), rgba(7,11,21,.98));
    box-shadow: 0 36px 80px rgba(0,0,0,.34);
}

.kishi-about-page-hero__visual::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(rgba(255,255,255,.022) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.022) 1px, transparent 1px);
    background-size: 32px 32px;
    mask-image: linear-gradient(180deg, rgba(0,0,0,.9), transparent 88%);
}

.kishi-about-page-hero__visual img {
    position: absolute;
    z-index: 2;
    bottom: 0;
    left: 50%;
    width: min(86%, 440px);
    height: auto;
    transform: translateX(-50%);
    object-fit: contain;
    filter: drop-shadow(0 30px 40px rgba(0,0,0,.45));
}

.kishi-about-page-hero__ring {
    position: absolute;
    top: 72px;
    left: 50%;
    width: 365px;
    height: 365px;
    transform: translateX(-50%);
    border: 1px solid rgba(134,112,255,.55);
    border-radius: 50%;
    box-shadow: 0 0 50px rgba(111,84,255,.08);
}

.kishi-about-page-hero__ring::before,
.kishi-about-page-hero__ring::after {
    content: "";
    position: absolute;
    border: 1px solid rgba(100,82,234,.18);
    border-radius: 50%;
}

.kishi-about-page-hero__ring::before { inset: 34px; }
.kishi-about-page-hero__ring::after { inset: 78px; }

.kishi-about-page-float {
    position: absolute;
    z-index: 4;
    border: 1px solid rgba(130,111,255,.2);
    background: rgba(12,17,31,.78);
    box-shadow: 0 18px 42px rgba(0,0,0,.35);
    backdrop-filter: blur(12px);
}

.kishi-about-page-float--code {
    top: 112px;
    right: 30px;
    display: grid;
    place-items: center;
    width: 74px;
    height: 74px;
    border-radius: 20px;
    color: #fff;
    font-size: 24px;
    font-weight: 900;
}

.kishi-about-page-float--copy {
    top: 158px;
    left: 20px;
    width: 142px;
    padding: 18px;
    border-radius: 18px;
    direction: ltr;
}

.kishi-about-page-float--copy span {
    display: block;
    margin-bottom: 6px;
    color: #8f79ff;
    font-size: 10px;
    font-weight: 900;
}

.kishi-about-page-float--copy strong {
    color: #fff;
    font-size: 17px;
    line-height: 1.4;
}

.kishi-about-page-principles-section,
.kishi-about-page-section,
.kishi-about-page-cta-section {
    padding: 24px 0;
}

.kishi-about-page-principles {
    display: grid;
    grid-template-columns: repeat(4, minmax(0,1fr));
    overflow: hidden;
    border: 1px solid rgba(131,112,255,.2);
    border-radius: 22px;
    background: rgba(8,13,25,.78);
}

.kishi-about-page-principles article {
    position: relative;
    min-height: 195px;
    padding: 28px 24px;
    text-align: center;
}

.kishi-about-page-principles article + article::before {
    content: "";
    position: absolute;
    top: 26px;
    right: 0;
    bottom: 26px;
    width: 1px;
    background: rgba(255,255,255,.07);
}

.kishi-about-page-principles article > span {
    display: grid;
    place-items: center;
    width: 46px;
    height: 46px;
    margin: 0 auto 15px;
    border-radius: 15px;
    background: rgba(111,84,255,.1);
    color: #806aff;
    font-size: 23px;
    font-weight: 900;
}

.kishi-about-page-principles h2 {
    margin: 0 0 7px;
    color: #fff;
    font-size: 16px;
}

.kishi-about-page-principles p {
    margin: 0;
    color: #8993aa;
    font-size: 12px;
    line-height: 1.85;
}

.kishi-about-page-story__grid {
    display: grid;
    grid-template-columns: minmax(0,1.1fr) minmax(350px,.9fr);
    gap: 28px;
    align-items: stretch;
}

.kishi-about-page-story__content,
.kishi-about-page-story__visual {
    border: 1px solid rgba(255,255,255,.075);
    border-radius: 26px;
    background: linear-gradient(180deg, rgba(10,15,28,.94), rgba(7,12,23,.96));
}

.kishi-about-page-story__content {
    padding: 32px;
}

.kishi-about-page-story__content .kishi-section-heading {
    margin-bottom: 17px;
}

.kishi-about-page-story__content h2,
.kishi-about-page-section__head h2,
.kishi-about-page-belief h2,
.kishi-about-page-cta h2 {
    margin: 0;
    color: #fff;
    font-size: clamp(28px,3.3vw,42px);
    line-height: 1.4;
}

.kishi-about-page-story__content > p {
    margin: 17px 0 0;
    color: #a7b0c5;
    font-size: 14px;
    line-height: 2;
}

.kishi-about-page-story__quote {
    position: relative;
    margin-top: 28px;
    padding: 21px 24px 21px 60px;
    overflow: hidden;
    border: 1px solid rgba(121,96,255,.26);
    border-radius: 19px;
    background: linear-gradient(105deg, rgba(36,27,84,.35), rgba(255,255,255,.015));
}

.kishi-about-page-story__quote > span {
    position: absolute;
    left: 18px;
    top: 7px;
    color: #765eff;
    font-size: 60px;
    font-family: Georgia, serif;
}

.kishi-about-page-story__quote strong {
    display: block;
    color: #fff;
    font-size: 18px;
}

.kishi-about-page-story__quote p {
    margin: 4px 0 0;
    color: #929db3;
    font-size: 12px;
}

.kishi-about-page-story__visual {
    position: relative;
    display: grid;
    place-items: center;
    min-height: 450px;
    overflow: hidden;
    background:
        radial-gradient(circle at 45% 42%, rgba(111,84,255,.16), transparent 28%),
        linear-gradient(180deg, rgba(9,14,27,.95), rgba(5,9,18,.98));
}

.kishi-about-workspace {
    position: relative;
    width: min(80%, 380px);
    height: 260px;
    transform: perspective(900px) rotateX(3deg) rotateY(8deg);
}

.kishi-about-workspace__screen {
    position: absolute;
    inset: 0 10px 35px;
    padding: 28px;
    border: 7px solid #111726;
    border-radius: 18px;
    background: #070b14;
    box-shadow: 0 30px 60px rgba(0,0,0,.55), 0 0 48px rgba(111,84,255,.12);
    direction: ltr;
}

.kishi-about-workspace__screen span {
    color: #8b75ff;
    font-size: 10px;
    font-weight: 900;
}

.kishi-about-workspace__screen strong {
    display: block;
    margin: 12px 0 22px;
    color: #e8ecff;
    font-size: 21px;
    line-height: 1.25;
}

.kishi-about-workspace__screen i {
    display: block;
    width: 70%;
    height: 7px;
    margin: 8px 0;
    border-radius: 999px;
    background: linear-gradient(90deg,#745bff,rgba(116,91,255,.08));
}

.kishi-about-workspace__screen i:nth-of-type(2) { width: 54%; }
.kishi-about-workspace__screen i:nth-of-type(3) { width: 39%; }

.kishi-about-workspace__notes {
    position: absolute;
    left: -30px;
    bottom: 4px;
    width: 180px;
    height: 105px;
    padding: 18px;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 14px;
    background: rgba(15,21,36,.92);
    transform: rotate(-7deg);
}

.kishi-about-workspace__notes i {
    display: block;
    height: 6px;
    margin-bottom: 10px;
    border-radius: 999px;
    background: rgba(255,255,255,.12);
}

.kishi-about-workspace__notes i:nth-child(2) { width: 75%; }
.kishi-about-workspace__notes i:nth-child(3) { width: 48%; }

.kishi-about-page-section__head {
    max-width: 760px;
    margin: 0 0 28px;
}

.kishi-about-page-section__head--center {
    margin-inline: auto;
    text-align: center;
}

.kishi-about-page-section__head--center .kishi-section-heading {
    display: inline-flex;
}

.kishi-about-page-section__head > p:not(.kishi-section-heading) {
    margin: 12px 0 0;
    color: #939eb5;
    font-size: 13px;
    line-height: 1.85;
}

.kishi-about-page-journey {
    position: relative;
    display: grid;
    grid-template-columns: repeat(4,minmax(0,1fr));
    gap: 14px;
    padding-top: 28px;
}

.kishi-about-page-journey::before {
    content: "";
    position: absolute;
    top: 48px;
    right: 8%;
    left: 8%;
    height: 1px;
    background: linear-gradient(90deg,transparent,#694eff 15%,#694eff 85%,transparent);
    opacity: .5;
}

.kishi-about-page-journey__item {
    position: relative;
    z-index: 2;
    min-height: 235px;
    padding: 0 20px 24px;
    border: 1px solid rgba(255,255,255,.07);
    border-radius: 22px;
    background: rgba(8,13,25,.87);
    text-align: center;
}

.kishi-about-page-journey__marker {
    display: grid;
    place-items: center;
    width: 48px;
    height: 48px;
    margin: -25px auto 18px;
    border: 1px solid rgba(130,110,255,.42);
    border-radius: 50%;
    background: #0b1020;
    box-shadow: 0 0 0 8px #070b16;
}

.kishi-about-page-journey__marker span {
    color: #917eff;
    font-size: 11px;
    font-weight: 900;
}

.kishi-about-page-journey__item h3 {
    margin: 0 0 9px;
    color: #fff;
    font-size: 16px;
}

.kishi-about-page-journey__item p {
    margin: 0;
    color: #8e99af;
    font-size: 12px;
    line-height: 1.9;
}

.kishi-about-page-skills-layout {
    display: grid;
    grid-template-columns: minmax(0,1.04fr) minmax(330px,.96fr);
    gap: 18px;
}

.kishi-about-page-capabilities,
.kishi-about-page-tools {
    border: 1px solid rgba(255,255,255,.075);
    border-radius: 24px;
    background: rgba(8,13,25,.84);
}

.kishi-about-page-capabilities {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 12px;
    padding: 20px;
}

.kishi-about-page-capabilities article {
    padding: 18px;
    border: 1px solid rgba(255,255,255,.065);
    border-radius: 16px;
    background: rgba(255,255,255,.018);
}

.kishi-about-page-capabilities span {
    display: inline-flex;
    margin-bottom: 8px;
    color: #8c78ff;
    font-size: 10px;
    font-weight: 900;
}

.kishi-about-page-capabilities h3 {
    margin: 0;
    color: #eef1ff;
    font-size: 14px;
}

.kishi-about-page-tools {
    padding: 22px;
}

.kishi-about-page-tools > p {
    margin: 0 0 18px;
    color: #dbe0f4;
    font-size: 14px;
    font-weight: 800;
}

.kishi-about-page-tools > div {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 10px;
}

.kishi-about-page-tools span {
    display: grid;
    place-items: center;
    min-height: 58px;
    padding: 10px;
    border: 1px solid rgba(255,255,255,.06);
    border-radius: 14px;
    background: rgba(255,255,255,.022);
    color: #b8c0d4;
    font-size: 12px;
    font-weight: 800;
}

.kishi-about-page-belief {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    gap: 28px;
    min-height: 190px;
    padding: 32px 38px;
    border: 1px solid rgba(117,91,255,.42);
    border-radius: 24px;
    background:
        radial-gradient(circle at 93% 80%, rgba(111,84,255,.24), transparent 27%),
        linear-gradient(110deg, rgba(35,27,80,.55), rgba(8,12,23,.97) 60%);
}

.kishi-about-page-belief > div { position: relative; z-index: 2; max-width: 790px; }
.kishi-about-page-belief .kishi-section-heading { margin-bottom: 13px; }
.kishi-about-page-belief p:not(.kishi-section-heading) { margin: 10px 0 0; color: #a8b1c6; font-size: 13px; line-height: 1.9; }

.kishi-about-page-belief__quote {
    position: absolute;
    left: 48px;
    top: -20px;
    color: rgba(121,95,255,.33);
    font-family: Georgia,serif;
    font-size: 145px;
    line-height: 1;
}

.kishi-about-page-cta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 34px;
    min-height: 185px;
    padding: 32px 36px;
    border: 1px solid rgba(117,91,255,.45);
    border-radius: 25px;
    background:
        radial-gradient(circle at 8% 100%,rgba(111,84,255,.25),transparent 24%),
        linear-gradient(110deg,rgba(11,16,30,.96),rgba(39,29,91,.58));
}

.kishi-about-page-cta > div:first-child { max-width: 750px; }
.kishi-about-page-cta .kishi-section-heading { margin-bottom: 12px; }
.kishi-about-page-cta p:not(.kishi-section-heading) { margin: 9px 0 0; color: #a8b1c6; font-size: 13px; line-height: 1.85; }

.kishi-about-page-cta__actions {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
    flex: 0 0 auto;
}

@media (max-width: 1100px) {
    .kishi-about-page-hero__grid,
    .kishi-about-page-story__grid,
    .kishi-about-page-skills-layout {
        grid-template-columns: 1fr;
    }

    .kishi-about-page-hero__visual {
        min-height: 500px;
    }

    .kishi-about-page-principles,
    .kishi-about-page-journey {
        grid-template-columns: repeat(2,minmax(0,1fr));
    }

    .kishi-about-page-principles article:nth-child(3)::before {
        display: none;
    }

    .kishi-about-page-journey::before {
        display: none;
    }

    .kishi-about-page-journey__item {
        margin-top: 24px;
    }
}

@media (max-width: 720px) {
    .kishi-about-page-hero__grid { gap: 26px; min-height: auto; }
    .kishi-about-page-hero__content h1 { max-width: none; font-size: 39px; }
    .kishi-about-page-hero__content > p:not(.kishi-about-page-hero__eyebrow) { font-size: 15px; }
    .kishi-about-page-hero__actions { align-items: stretch; flex-direction: column; }
    .kishi-about-page-hero__actions .kishi-button { width: 100%; }
    .kishi-about-page-text-link { justify-content: center; min-height: 44px; }
    .kishi-about-page-hero__visual { min-height: 410px; border-radius: 26px; }
    .kishi-about-page-hero__visual img { width: 92%; }
    .kishi-about-page-hero__ring { top: 66px; width: 290px; height: 290px; }
    .kishi-about-page-float--code { top: 76px; right: 14px; width: 58px; height: 58px; border-radius: 16px; font-size: 18px; }
    .kishi-about-page-float--copy { top: 130px; left: 12px; width: 112px; padding: 13px; }
    .kishi-about-page-float--copy strong { font-size: 13px; }

    .kishi-about-page-principles,
    .kishi-about-page-journey,
    .kishi-about-page-capabilities,
    .kishi-about-page-tools > div {
        grid-template-columns: 1fr;
    }

    .kishi-about-page-principles article + article::before { display: none; }
    .kishi-about-page-principles article { min-height: auto; padding: 22px; }
    .kishi-about-page-story__content { padding: 24px; }
    .kishi-about-page-story__quote { padding-left: 22px; }
    .kishi-about-page-story__quote > span { display: none; }
    .kishi-about-page-story__visual { min-height: 330px; }
    .kishi-about-workspace { width: 88%; height: 220px; }
    .kishi-about-workspace__notes { left: -8px; }
    .kishi-about-page-belief { padding: 26px; }
    .kishi-about-page-belief__quote { display: none; }
    .kishi-about-page-cta { align-items: stretch; flex-direction: column; padding: 26px; }
    .kishi-about-page-cta__actions { width: 100%; }
    .kishi-about-page-cta__actions .kishi-button { width: 100%; }
}


/* =========================================================
   Work With Me / Collaboration Page — v1.5.0
   ========================================================= */

.kishi-work-page-hero {
    padding: 24px 0 34px;
}

.kishi-work-page-hero__grid {
    display: grid;
    grid-template-columns: minmax(0, .94fr) minmax(430px, 1.06fr);
    align-items: center;
    gap: 52px;
    min-height: 520px;
}

.kishi-work-page-hero__content {
    max-width: 650px;
}

.kishi-work-page-hero__eyebrow {
    margin: 0 0 15px;
    color: #8d76ff;
    font-size: 14px;
    font-weight: 900;
}

.kishi-work-page-hero__content h1 {
    max-width: 13ch;
    margin: 0 0 18px;
    color: #fff;
    font-size: clamp(44px, 5vw, 70px);
    line-height: 1.22;
    letter-spacing: -.035em;
}

.kishi-work-page-hero__content h1 span {
    color: #755cff;
    text-shadow: 0 0 30px rgba(111,84,255,.18);
}

.kishi-work-page-hero__content > p:not(.kishi-work-page-hero__eyebrow) {
    max-width: 590px;
    margin: 0;
    color: #a8b1c6;
    font-size: 16px;
    line-height: 2;
}

.kishi-work-page-hero__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 13px;
    margin-top: 28px;
}

.kishi-work-page-hero__visual {
    position: relative;
    min-height: 470px;
    overflow: hidden;
    border-radius: 30px;
    background:
        radial-gradient(circle at 50% 55%, rgba(111,84,255,.24), transparent 29%),
        radial-gradient(circle at 76% 35%, rgba(51,112,255,.1), transparent 22%);
}

.kishi-work-page-hero__visual::before {
    content: "";
    position: absolute;
    inset: 25px;
    border: 1px solid rgba(128,109,255,.08);
    border-radius: 26px;
    background-image:
        linear-gradient(rgba(255,255,255,.02) 1px,transparent 1px),
        linear-gradient(90deg,rgba(255,255,255,.02) 1px,transparent 1px);
    background-size: 30px 30px;
}

.kishi-work-desk {
    position: absolute;
    inset: 0;
}

.kishi-work-desk__laptop {
    position: absolute;
    left: 50%;
    top: 58px;
    width: min(78%, 510px);
    height: 330px;
    transform: translateX(-50%) perspective(1000px) rotateX(3deg) rotateY(-6deg) rotateZ(-2deg);
    border: 8px solid #151a27;
    border-bottom-width: 19px;
    border-radius: 18px 18px 25px 25px;
    background: #090e1a;
    box-shadow: 0 40px 70px rgba(0,0,0,.58), 0 0 55px rgba(111,84,255,.12);
}

.kishi-work-desk__screen {
    position: absolute;
    inset: 0;
    overflow: hidden;
    border-radius: 10px;
    background: #070b14;
}

.kishi-work-desk__topbar {
    display: flex;
    align-items: center;
    gap: 5px;
    height: 25px;
    padding: 0 10px;
    border-bottom: 1px solid rgba(255,255,255,.045);
    direction: ltr;
}

.kishi-work-desk__topbar i {
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: rgba(255,255,255,.22);
}

.kishi-work-desk__screen-grid {
    display: grid;
    grid-template-columns: 68px 1fr;
    height: calc(100% - 25px);
    direction: ltr;
}

.kishi-work-desk__sidebar {
    padding: 24px 13px;
    border-right: 1px solid rgba(255,255,255,.045);
    background: rgba(255,255,255,.012);
}

.kishi-work-desk__sidebar span {
    display: block;
    width: 34px;
    height: 6px;
    margin: 0 0 18px;
    border-radius: 99px;
    background: rgba(128,102,255,.14);
}

.kishi-work-desk__overview {
    padding: 27px 28px;
}

.kishi-work-desk__overview small {
    color: #8b75ff;
    font-size: 8px;
    font-weight: 900;
}

.kishi-work-desk__overview > strong {
    display: block;
    margin: 5px 0 20px;
    color: #eef1ff;
    font-size: 16px;
}

.kishi-work-desk__row {
    display: grid;
    grid-template-columns: 24px 1fr;
    align-items: center;
    gap: 10px;
    margin: 0 0 15px;
}

.kishi-work-desk__row b {
    color: #77819a;
    font-size: 7px;
    font-weight: 800;
}

.kishi-work-desk__row > span {
    position: relative;
    display: block;
    height: 3px;
    border-radius: 99px;
    background: rgba(255,255,255,.07);
}

.kishi-work-desk__row > span i {
    position: absolute;
    inset: 0 auto 0 0;
    width: 64%;
    border-radius: inherit;
    background: linear-gradient(90deg,#6550ff,#977eff);
}

.kishi-work-desk__row:nth-child(4) > span i { width: 82%; }
.kishi-work-desk__row:nth-child(5) > span i { width: 48%; }
.kishi-work-desk__row:nth-child(6) > span i { width: 72%; }
.kishi-work-desk__row:nth-child(7) > span i { width: 91%; }
.kishi-work-desk__row:nth-child(8) > span i { width: 58%; }

.kishi-work-desk__mug {
    position: absolute;
    right: 10%;
    bottom: 48px;
    display: grid;
    place-items: center;
    width: 72px;
    height: 76px;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 9px 9px 20px 20px;
    background: #080c15;
    color: #755dff;
    font-size: 24px;
    font-weight: 900;
    box-shadow: 0 18px 35px rgba(0,0,0,.45);
}

.kishi-work-desk__mug::after {
    content: "";
    position: absolute;
    right: -20px;
    top: 18px;
    width: 28px;
    height: 33px;
    border: 6px solid #101624;
    border-left: 0;
    border-radius: 0 20px 20px 0;
}

.kishi-work-desk__book {
    position: absolute;
    left: 3%;
    bottom: 42px;
    display: flex;
    align-items: flex-end;
    width: 140px;
    height: 38px;
    padding: 0 15px 8px;
    border: 1px solid rgba(255,255,255,.07);
    border-radius: 5px;
    background: linear-gradient(180deg,#121724,#080c15);
    color: rgba(255,255,255,.2);
    font-size: 9px;
    letter-spacing: .15em;
    transform: rotate(-3deg);
}

.kishi-work-page-section {
    padding: 38px 0;
}

.kishi-work-page-section__head {
    max-width: 790px;
    margin: 0 0 30px;
}

.kishi-work-page-section__head--center {
    margin-inline: auto;
    text-align: center;
}

.kishi-work-page-section__head--center .kishi-section-heading {
    display: inline-flex;
}

.kishi-work-page-section__head h2 {
    margin: 0;
    color: #fff;
    font-size: clamp(29px,3.2vw,42px);
    line-height: 1.4;
}

.kishi-work-page-section__head > p:not(.kishi-section-heading) {
    margin: 10px 0 0;
    color: #929db3;
    font-size: 13px;
    line-height: 1.85;
}

.kishi-work-page-process-section .kishi-container {
    padding: 28px 26px 30px;
    border: 1px solid rgba(255,255,255,.075);
    border-radius: 24px;
    background: rgba(8,13,25,.84);
}

.kishi-work-process {
    position: relative;
    display: grid;
    grid-template-columns: repeat(6,minmax(0,1fr));
    gap: 10px;
    padding-top: 25px;
}

.kishi-work-process::before {
    content: "";
    position: absolute;
    top: 47px;
    right: 5%;
    left: 5%;
    height: 1px;
    background: linear-gradient(90deg,transparent,#755cff 10%,#755cff 90%,transparent);
    opacity: .5;
}

.kishi-work-process__item {
    position: relative;
    z-index: 2;
    min-height: 282px;
    padding: 0 15px 20px;
    border: 1px solid rgba(255,255,255,.065);
    border-radius: 18px;
    background: linear-gradient(180deg,rgba(13,18,33,.96),rgba(7,11,21,.95));
    text-align: center;
}

.kishi-work-process__marker {
    display: grid;
    place-items: center;
    width: 42px;
    height: 42px;
    margin: -21px auto 16px;
    border: 1px solid rgba(130,108,255,.55);
    border-radius: 50%;
    background: #080d19;
    box-shadow: 0 0 0 7px #080d19;
}

.kishi-work-process__marker span {
    color: #b0a4ff;
    font-size: 10px;
    font-weight: 900;
}

.kishi-work-process__icon {
    display: grid;
    place-items: center;
    min-height: 52px;
    color: #755cff;
    font-size: 26px;
    font-weight: 900;
}

.kishi-work-process__item h3 {
    margin: 8px 0 9px;
    color: #f3f5ff;
    font-size: 14px;
    line-height: 1.55;
}

.kishi-work-process__item p {
    margin: 0;
    color: #8995ac;
    font-size: 10.5px;
    line-height: 1.85;
}

.kishi-work-principles {
    display: grid;
    grid-template-columns: repeat(4,minmax(0,1fr));
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.075);
    border-radius: 22px;
    background: rgba(8,13,25,.82);
}

.kishi-work-principles article {
    position: relative;
    min-height: 180px;
    padding: 28px 24px;
    text-align: center;
}

.kishi-work-principles article + article::before {
    content: "";
    position: absolute;
    right: 0;
    top: 28px;
    bottom: 28px;
    width: 1px;
    background: rgba(255,255,255,.075);
}

.kishi-work-principles span {
    display: grid;
    place-items: center;
    width: 45px;
    height: 45px;
    margin: 0 auto 14px;
    border-radius: 14px;
    background: rgba(111,84,255,.09);
    color: #8068ff;
    font-size: 21px;
    font-weight: 900;
}

.kishi-work-principles h3 {
    margin: 0 0 7px;
    color: #fff;
    font-size: 15px;
}

.kishi-work-principles p {
    margin: 0;
    color: #8994aa;
    font-size: 11px;
    line-height: 1.8;
}

.kishi-work-page-models-section {
    padding-top: 26px;
}

.kishi-work-models {
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 18px;
}

.kishi-work-model {
    position: relative;
    min-height: 430px;
    padding: 28px;
    border: 1px solid rgba(255,255,255,.075);
    border-radius: 22px;
    background: linear-gradient(180deg,rgba(11,16,29,.93),rgba(7,11,21,.98));
}

.kishi-work-model--featured {
    border-color: rgba(115,91,255,.6);
    background:
        radial-gradient(circle at 50% 0,rgba(111,84,255,.12),transparent 29%),
        linear-gradient(180deg,rgba(13,18,34,.96),rgba(8,12,23,.98));
    box-shadow: 0 20px 52px rgba(63,45,156,.12);
}

.kishi-work-model__badge {
    position: absolute;
    top: -13px;
    right: 50%;
    transform: translateX(50%);
    padding: 6px 14px;
    border-radius: 999px;
    background: linear-gradient(135deg,#624cff,#836aff);
    color: #fff;
    font-size: 10px;
    font-weight: 900;
}

.kishi-work-model__icon {
    display: grid;
    place-items: center;
    width: 56px;
    height: 56px;
    margin: 0 auto 20px;
    border-radius: 18px;
    background: rgba(111,84,255,.1);
    color: #8069ff;
    font-size: 26px;
    font-weight: 900;
}

.kishi-work-model h3 {
    margin: 0 0 10px;
    color: #fff;
    font-size: 19px;
    text-align: center;
}

.kishi-work-model > p {
    min-height: 73px;
    margin: 0;
    color: #939db2;
    font-size: 12px;
    line-height: 1.85;
    text-align: center;
}

.kishi-work-model ul {
    margin: 22px 0 26px;
    padding: 0;
    list-style: none;
}

.kishi-work-model li {
    position: relative;
    margin: 0 0 10px;
    padding-right: 18px;
    color: #b9c1d3;
    font-size: 11px;
    line-height: 1.7;
}

.kishi-work-model li::before {
    content: "";
    position: absolute;
    right: 0;
    top: .72em;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #765cff;
    box-shadow: 0 0 0 5px rgba(111,84,255,.08);
}

.kishi-work-model .kishi-button {
    width: 100%;
    min-height: 46px;
    font-size: 12px;
}

.kishi-work-page-cta-section {
    padding: 25px 0 50px;
}

.kishi-work-page-cta {
    position: relative;
    display: grid;
    grid-template-columns: 150px minmax(0,1fr) auto;
    align-items: center;
    gap: 30px;
    min-height: 170px;
    overflow: hidden;
    padding: 30px 36px;
    border: 1px solid rgba(117,91,255,.52);
    border-radius: 25px;
    background:
        radial-gradient(circle at 6% 105%,rgba(111,84,255,.34),transparent 24%),
        linear-gradient(110deg,rgba(45,33,105,.74),rgba(8,13,25,.97) 58%);
}

.kishi-work-page-cta__visual {
    display: grid;
    place-items: center;
    width: 125px;
    height: 125px;
    border-radius: 50%;
    background: radial-gradient(circle,rgba(119,93,255,.24),rgba(119,93,255,.04) 55%,transparent 68%);
}

.kishi-work-page-cta__visual span {
    display: grid;
    place-items: center;
    width: 74px;
    height: 74px;
    border: 10px solid rgba(129,107,255,.66);
    border-radius: 50%;
    color: #9d8dff;
    font-size: 30px;
    font-weight: 900;
}

.kishi-work-page-cta__copy .kishi-section-heading {
    margin-bottom: 11px;
}

.kishi-work-page-cta__copy h2 {
    margin: 0;
    color: #fff;
    font-size: clamp(26px,3vw,39px);
    line-height: 1.45;
}

.kishi-work-page-cta__copy > p:not(.kishi-section-heading) {
    margin: 9px 0 0;
    color: #a7b0c4;
    font-size: 13px;
    line-height: 1.85;
}

.kishi-work-page-cta__actions {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 10px;
    min-width: 165px;
}

.kishi-work-page-text-link {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    min-height: 40px;
    color: #b0a4ff;
    font-size: 12px;
    font-weight: 800;
}

@media (max-width: 1180px) {
    .kishi-work-page-hero__grid {
        grid-template-columns: 1fr;
    }

    .kishi-work-page-hero__content {
        max-width: none;
    }

    .kishi-work-page-hero__content h1 {
        max-width: 14ch;
    }

    .kishi-work-page-hero__visual {
        min-height: 430px;
    }

    .kishi-work-process {
        grid-template-columns: repeat(3,minmax(0,1fr));
        gap: 42px 12px;
    }

    .kishi-work-process::before {
        display: none;
    }

    .kishi-work-models {
        grid-template-columns: 1fr 1fr;
    }

    .kishi-work-model--featured {
        grid-column: span 2;
    }
}

@media (max-width: 760px) {
    .kishi-work-page-hero__grid { gap: 20px; min-height: auto; }
    .kishi-work-page-hero__content h1 { max-width: none; font-size: 39px; }
    .kishi-work-page-hero__content > p:not(.kishi-work-page-hero__eyebrow) { font-size: 15px; }
    .kishi-work-page-hero__actions { flex-direction: column; }
    .kishi-work-page-hero__actions .kishi-button { width: 100%; }
    .kishi-work-page-hero__visual { min-height: 315px; border-radius: 24px; }
    .kishi-work-desk__laptop { top: 50px; width: 84%; height: 205px; border-width: 5px; border-bottom-width: 12px; }
    .kishi-work-desk__overview { padding: 15px; }
    .kishi-work-desk__overview > strong { margin-bottom: 12px; font-size: 11px; }
    .kishi-work-desk__row { margin-bottom: 8px; }
    .kishi-work-desk__mug { right: 6%; bottom: 25px; width: 48px; height: 50px; font-size: 17px; }
    .kishi-work-desk__mug::after { display: none; }
    .kishi-work-desk__book { left: 3%; bottom: 24px; width: 96px; height: 28px; padding: 0 9px 5px; font-size: 7px; }

    .kishi-work-page-process-section .kishi-container { padding: 24px 18px 28px; }
    .kishi-work-process { grid-template-columns: 1fr; gap: 34px; }
    .kishi-work-process__item { min-height: auto; padding: 0 22px 24px; }
    .kishi-work-process__item p { font-size: 11px; }

    .kishi-work-principles { grid-template-columns: 1fr; }
    .kishi-work-principles article { min-height: auto; padding: 24px; }
    .kishi-work-principles article + article::before { top: 0; right: 24px; left: 24px; bottom: auto; width: auto; height: 1px; }

    .kishi-work-models { grid-template-columns: 1fr; }
    .kishi-work-model--featured { grid-column: auto; }
    .kishi-work-model { min-height: auto; }
    .kishi-work-model > p { min-height: 0; }

    .kishi-work-page-cta { grid-template-columns: 1fr; gap: 18px; padding: 26px; }
    .kishi-work-page-cta__visual { display: none; }
    .kishi-work-page-cta__actions { width: 100%; }
    .kishi-work-page-cta__actions .kishi-button { width: 100%; }
}


/* =========================================================
   Contact / Start Project Page — v1.6.0
   ========================================================= */
.kishi-contact-page-hero {
    position: relative;
    padding: 30px 0 26px;
    overflow: hidden;
}

.kishi-contact-page-hero::before,
.kishi-contact-page-hero::after {
    content: "";
    position: absolute;
    width: 330px;
    height: 330px;
    border: 1px solid rgba(112, 84, 255, .18);
    border-radius: 50%;
    pointer-events: none;
}

.kishi-contact-page-hero::before {
    right: -190px;
    top: 0;
    box-shadow: 0 0 80px rgba(111,84,255,.08);
}

.kishi-contact-page-hero::after {
    left: -220px;
    bottom: -160px;
}

.kishi-contact-page-hero__copy {
    position: relative;
    z-index: 1;
    max-width: 900px;
    margin: 66px auto 0;
    text-align: center;
}

.kishi-contact-page-hero__eyebrow {
    margin: 0 0 14px;
    color: #9a86ff;
    font-size: 14px;
    font-weight: 900;
}

.kishi-contact-page-hero__copy h1 {
    margin: 0;
    color: #fff;
    font-size: clamp(42px, 5.5vw, 76px);
    line-height: 1.2;
    letter-spacing: -.035em;
}

.kishi-contact-page-hero__copy h1 span {
    color: #755cff;
    text-shadow: 0 0 34px rgba(111,84,255,.22);
}

.kishi-contact-page-hero__copy > p:last-child {
    max-width: 720px;
    margin: 24px auto 0;
    color: #aeb7cb;
    font-size: 16px;
    line-height: 2;
}

.kishi-contact-page-main {
    padding: 14px 0 28px;
}

.kishi-contact-page-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.72fr) minmax(280px, .78fr);
    gap: 18px;
    align-items: start;
}

.kishi-contact-page-form-card,
.kishi-contact-page-info-card,
.kishi-contact-page-side-note,
.kishi-contact-page-guide-card {
    border: 1px solid rgba(127, 108, 255, .15);
    background:
        radial-gradient(circle at 50% 0, rgba(111,84,255,.055), transparent 28%),
        linear-gradient(180deg, rgba(10,15,29,.94), rgba(7,11,22,.97));
    box-shadow: 0 26px 60px rgba(0,0,0,.2);
}

.kishi-contact-page-form-card {
    padding: 30px;
    border-radius: 24px;
}

.kishi-contact-page-form-card__head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 22px;
}

.kishi-contact-page-form-card__head .kishi-section-heading {
    margin-bottom: 13px;
}

.kishi-contact-page-form-card__head h2 {
    margin: 0;
    font-size: clamp(24px, 2.6vw, 34px);
    line-height: 1.45;
}

.kishi-contact-page-form-card__mark {
    display: grid;
    place-items: center;
    flex: 0 0 auto;
    width: 50px;
    height: 50px;
    border: 1px solid rgba(123,102,255,.22);
    border-radius: 16px;
    background: rgba(111,84,255,.1);
    color: #8d78ff;
    font-size: 25px;
}

.kishi-contact-page-form {
    display: grid;
    gap: 18px;
}

.kishi-contact-page-form__row {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.kishi-contact-page-form label {
    display: grid;
    gap: 9px;
    color: #e8ebf7;
    font-size: 13px;
    font-weight: 800;
}

.kishi-contact-page-form label > span b {
    color: #ff7f94;
}

.kishi-contact-page-form input,
.kishi-contact-page-form select,
.kishi-contact-page-form textarea {
    width: 100%;
    border: 1px solid rgba(139,151,183,.16);
    border-radius: 12px;
    outline: 0;
    background: rgba(6,10,19,.75);
    color: #f5f7ff;
    transition: border-color .18s ease, box-shadow .18s ease, background .18s ease;
}

.kishi-contact-page-form input,
.kishi-contact-page-form select {
    min-height: 52px;
    padding: 0 15px;
}

.kishi-contact-page-form textarea {
    min-height: 174px;
    resize: vertical;
    padding: 15px;
    line-height: 1.8;
}

.kishi-contact-page-form input::placeholder,
.kishi-contact-page-form textarea::placeholder {
    color: #657087;
}

.kishi-contact-page-form input:focus,
.kishi-contact-page-form select:focus,
.kishi-contact-page-form textarea:focus {
    border-color: rgba(120,94,255,.6);
    background: rgba(8,12,24,.92);
    box-shadow: 0 0 0 4px rgba(111,84,255,.08);
}

.kishi-contact-page-form select {
    color-scheme: dark;
}

.kishi-contact-page-form__submit-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin-top: 3px;
}

.kishi-contact-page-form__submit-row p {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 0;
    color: #7f899e;
    font-size: 11px;
    line-height: 1.7;
}

.kishi-contact-page-form__submit-row p span {
    color: #8d78ff;
}

.kishi-contact-page-form__submit-row .kishi-button {
    min-width: 220px;
}

.kishi-contact-page-side {
    display: grid;
    gap: 14px;
}

.kishi-contact-page-info-card {
    display: grid;
    grid-template-columns: 54px minmax(0, 1fr);
    gap: 15px;
    padding: 23px;
    border-radius: 22px;
}

.kishi-contact-page-info-card__icon {
    display: grid;
    place-items: center;
    width: 48px;
    height: 48px;
    border: 1px solid rgba(130,109,255,.2);
    border-radius: 14px;
    background: rgba(111,84,255,.09);
    color: #8c75ff;
    font-size: 21px;
}

.kishi-contact-page-info-card small {
    display: block;
    margin-bottom: 5px;
    color: #8f9ab0;
    font-size: 11px;
}

.kishi-contact-page-info-card strong,
.kishi-contact-page-info-card a {
    display: block;
    color: #f1f3fc;
    font-size: 14px;
    font-weight: 850;
    overflow-wrap: anywhere;
}

.kishi-contact-page-info-card a:hover,
.kishi-contact-page-info-card a:focus-visible {
    color: #a99aff;
}

.kishi-contact-page-info-card p {
    margin: 9px 0 0;
    color: #7e899f;
    font-size: 11px;
    line-height: 1.8;
}

.kishi-contact-page-side-note {
    position: relative;
    min-height: 160px;
    padding: 24px;
    overflow: hidden;
    border-radius: 22px;
}

.kishi-contact-page-side-note > span {
    position: absolute;
    left: 16px;
    bottom: -28px;
    color: rgba(124,103,255,.11);
    font-size: 130px;
    font-weight: 900;
    line-height: 1;
}

.kishi-contact-page-side-note p {
    position: relative;
    z-index: 1;
    margin: 0;
    color: #b4bdd0;
    font-size: 13px;
    line-height: 2;
}

.kishi-contact-page-guide {
    padding: 12px 0 28px;
}

.kishi-contact-page-guide__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
}

.kishi-contact-page-guide-card {
    padding: 25px;
    border-radius: 23px;
}

.kishi-contact-page-guide-card__head {
    display: flex;
    align-items: center;
    gap: 11px;
    margin-bottom: 18px;
}

.kishi-contact-page-guide-card__head > span {
    display: grid;
    place-items: center;
    width: 34px;
    height: 34px;
    flex: 0 0 auto;
    border-radius: 11px;
    background: rgba(111,84,255,.1);
    color: #8e79ff;
    font-weight: 900;
}

.kishi-contact-page-guide-card__head h2 {
    margin: 0;
    font-size: 19px;
}

.kishi-contact-page-guide-card ul,
.kishi-contact-page-guide-card ol {
    display: grid;
    gap: 8px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.kishi-contact-page-guide-card li {
    display: grid;
    grid-template-columns: minmax(120px, .36fr) minmax(0, 1fr);
    gap: 14px;
    align-items: center;
    min-height: 70px;
    padding: 13px 15px;
    border: 1px solid rgba(255,255,255,.05);
    border-radius: 14px;
    background: rgba(255,255,255,.018);
}

.kishi-contact-page-guide-card li strong {
    color: #eceefa;
    font-size: 13px;
}

.kishi-contact-page-guide-card li > span:not(:first-child),
.kishi-contact-page-guide-card li > small {
    color: #8994a9;
    font-size: 11px;
    line-height: 1.75;
}

.kishi-contact-page-guide-card ol li {
    grid-template-columns: 38px minmax(0, 1fr);
}

.kishi-contact-page-guide-card ol li > span {
    display: grid;
    place-items: center;
    width: 34px;
    height: 34px;
    border: 1px solid rgba(126,104,255,.18);
    border-radius: 11px;
    color: #9a89ff;
    font-size: 10px;
    font-weight: 900;
}

.kishi-contact-page-guide-card ol li div {
    display: grid;
    gap: 3px;
}

.kishi-contact-page-guide-card ol li small {
    color: #8792a7;
    font-size: 11px;
    line-height: 1.7;
}

.kishi-contact-page-cta-section {
    padding: 8px 0 36px;
}

.kishi-contact-page-cta {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 30px;
    align-items: center;
    min-height: 160px;
    padding: 30px 34px;
    overflow: hidden;
    border: 1px solid rgba(123,93,255,.5);
    border-radius: 22px;
    background:
        radial-gradient(circle at 90% 100%, rgba(111,84,255,.38), transparent 28%),
        linear-gradient(110deg, rgba(44,33,104,.78), rgba(8,13,25,.97) 60%);
}

.kishi-contact-page-cta > div:not(.kishi-contact-page-cta__visual) {
    position: relative;
    z-index: 2;
}

.kishi-contact-page-cta .kishi-section-heading {
    margin-bottom: 13px;
}

.kishi-contact-page-cta h2 {
    max-width: 720px;
    margin: 0;
    font-size: clamp(26px, 3vw, 40px);
    line-height: 1.45;
}

.kishi-contact-page-cta p:not(.kishi-section-heading) {
    margin: 9px 0 0;
    color: #aab3c8;
    font-size: 13px;
}

.kishi-contact-page-cta__actions {
    position: relative;
    z-index: 2;
    display: flex;
    flex-direction: column;
    gap: 10px;
    min-width: 190px;
}

.kishi-contact-page-cta__actions > a:not(.kishi-button) {
    text-align: center;
    color: #a89bff;
    font-size: 12px;
    font-weight: 800;
}

.kishi-contact-page-cta__visual {
    position: absolute;
    left: 38px;
    bottom: -28px;
    color: rgba(140,119,255,.14);
    font-size: 150px;
    font-weight: 900;
    line-height: 1;
    transform: rotate(-28deg);
}

@media (max-width: 1000px) {
    .kishi-contact-page-layout {
        grid-template-columns: 1fr;
    }

    .kishi-contact-page-side {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .kishi-contact-page-side-note {
        grid-column: 1 / -1;
        min-height: auto;
    }
}

@media (max-width: 760px) {
    .kishi-contact-page-hero__copy {
        margin-top: 38px;
        text-align: right;
    }

    .kishi-contact-page-hero__copy h1 {
        font-size: 39px;
    }

    .kishi-contact-page-hero__copy > p:last-child {
        font-size: 14px;
    }

    .kishi-contact-page-form-card {
        padding: 21px;
    }

    .kishi-contact-page-form-card__mark {
        display: none;
    }

    .kishi-contact-page-form__row,
    .kishi-contact-page-guide__grid,
    .kishi-contact-page-side {
        grid-template-columns: 1fr;
    }

    .kishi-contact-page-form__submit-row {
        align-items: stretch;
        flex-direction: column;
    }

    .kishi-contact-page-form__submit-row .kishi-button {
        width: 100%;
    }

    .kishi-contact-page-info-card {
        padding: 19px;
    }

    .kishi-contact-page-guide-card li {
        grid-template-columns: 1fr;
        gap: 6px;
    }

    .kishi-contact-page-guide-card ol li {
        grid-template-columns: 38px minmax(0, 1fr);
    }

    .kishi-contact-page-cta {
        grid-template-columns: 1fr;
        padding: 24px;
    }

    .kishi-contact-page-cta__actions {
        width: 100%;
    }

    .kishi-contact-page-cta__actions .kishi-button {
        width: 100%;
    }

    .kishi-contact-page-cta__visual {
        left: -2px;
        font-size: 100px;
    }
}


.kishi-contact-page-file {
    padding: 16px;
    border: 1px dashed rgba(132,112,255,.22);
    border-radius: 14px;
    background: rgba(111,84,255,.025);
}

.kishi-contact-page-file input[type="file"] {
    min-height: 48px;
    padding: 9px 12px;
    cursor: pointer;
}

.kishi-contact-page-file input[type="file"]::file-selector-button {
    margin-left: 12px;
    border: 1px solid rgba(127,105,255,.22);
    border-radius: 9px;
    background: rgba(111,84,255,.12);
    color: #ddd8ff;
    padding: 7px 11px;
    font: inherit;
    font-size: 11px;
    font-weight: 800;
    cursor: pointer;
}

.kishi-contact-page-file small {
    color: #727e94;
    font-size: 10px;
    font-weight: 500;
    line-height: 1.7;
}


/* =========================================================
   Contact Form Conditional Fields — v1.8.0
   ========================================================= */

[hidden] {
    display: none !important;
}

.kishi-contact-page-input-unit {
    position: relative;
    display: block;
}

.kishi-contact-page-input-unit input {
    padding-left: 82px !important;
}

.kishi-contact-page-input-unit em {
    position: absolute;
    top: 50%;
    left: 14px;
    transform: translateY(-50%);
    display: inline-flex;
    align-items: center;
    min-height: 30px;
    padding: 0 11px;
    border-radius: 9px;
    background: rgba(111, 84, 255, .10);
    color: #b7abff;
    font-size: 12px;
    font-style: normal;
    font-weight: 800;
    pointer-events: none;
}

.kishi-contact-page-form label > small {
    display: block;
    margin-top: 7px;
    color: #78849d;
    font-size: 11px;
}

.kishi-contact-page-consultation-note {
    display: flex;
    align-items: flex-start;
    gap: 11px;
    padding: 15px 16px;
    border: 1px solid rgba(111, 84, 255, .20);
    border-radius: 14px;
    background: rgba(111, 84, 255, .07);
    color: #aeb7cc;
}

.kishi-contact-page-consultation-note > span {
    color: #8c76ff;
    font-size: 18px;
}

.kishi-contact-page-consultation-note p {
    margin: 0;
    font-size: 12px;
    line-height: 1.9;
}

@media (max-width: 760px) {
    .kishi-contact-page-form__finance {
        grid-template-columns: 1fr;
    }
}

/* =========================================================
   KISHI v1.10.0 — Home interaction + skills + feedback
   ========================================================= */

/* Hero CTAs: stronger hover/focus feedback. */
.kishi-hero .kishi-button {
    position: relative;
    overflow: hidden;
    transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease, background .22s ease, color .22s ease;
}

.kishi-hero .kishi-button--primary:hover,
.kishi-hero .kishi-button--primary:focus-visible {
    background: linear-gradient(135deg, #8b74ff, #4d9dff);
    box-shadow: 0 18px 38px rgba(91, 94, 255, .34);
}

.kishi-hero .kishi-button--secondary:hover,
.kishi-hero .kishi-button--secondary:focus-visible {
    color: #fff;
    border-color: rgba(139, 116, 255, .62);
    background: rgba(111, 84, 255, .16);
    box-shadow: 0 14px 34px rgba(68, 52, 166, .16);
}

.kishi-hero__badge--wordpress {
    color: #c8bdff;
    font-size: 34px;
}

.kishi-hero__badge--figma {
    min-width: 96px;
    font-size: 16px;
    letter-spacing: .03em;
    direction: ltr;
}

/* About: interactive principles and statistics. */
.kishi-about__points li {
    overflow: hidden;
    transition: transform .22s ease, border-color .22s ease, background .22s ease, color .22s ease, box-shadow .22s ease;
}

.kishi-about__points li::after {
    content: "";
    position: absolute;
    right: 16px;
    left: 16px;
    bottom: 8px;
    height: 2px;
    border-radius: 999px;
    background: linear-gradient(90deg, var(--kishi-accent), #75a7ff);
    transform: scaleX(0);
    transform-origin: right center;
    transition: transform .24s ease;
}

.kishi-about__points li:hover,
.kishi-about__points li:focus-within {
    color: #fff;
    border-color: rgba(131, 111, 255, .48);
    background: rgba(111, 84, 255, .1);
    box-shadow: 0 12px 28px rgba(31, 25, 74, .2);
    transform: translateY(-2px);
}

.kishi-about__points li:hover::after,
.kishi-about__points li:focus-within::after {
    transform: scaleX(1);
}

.kishi-stat {
    position: relative;
    overflow: hidden;
    transition: transform .22s ease, border-color .22s ease, background .22s ease, box-shadow .22s ease;
}

.kishi-stat::after {
    content: "";
    position: absolute;
    right: 15px;
    left: 15px;
    bottom: 8px;
    height: 2px;
    border-radius: 999px;
    background: linear-gradient(90deg, var(--kishi-accent), #75a7ff);
    transform: scaleX(0);
    transform-origin: right center;
    transition: transform .24s ease;
}

.kishi-stat:hover,
.kishi-stat:focus-within {
    border-color: rgba(131, 111, 255, .48);
    background: rgba(111, 84, 255, .1);
    box-shadow: 0 12px 28px rgba(31, 25, 74, .2);
    transform: translateY(-2px);
}

.kishi-stat:hover::after,
.kishi-stat:focus-within::after {
    transform: scaleX(1);
}

.kishi-stat:hover .kishi-stat__value,
.kishi-stat:focus-within .kishi-stat__value {
    color: #b8adff;
}

/* Skills: expandable inventory + per-skill visual identity. */
.kishi-skill-card {
    --kishi-skill-accent: #8a76ff;
    --kishi-skill-soft: rgba(138, 118, 255, .14);
}

.kishi-skill-card__mark {
    color: var(--kishi-skill-accent);
    border: 1px solid color-mix(in srgb, var(--kishi-skill-accent) 40%, transparent);
    background: var(--kishi-skill-soft);
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.025);
    transition: transform .22s ease, box-shadow .22s ease, background .22s ease;
}

.kishi-skill-card:hover .kishi-skill-card__mark {
    transform: translateY(-2px) scale(1.03);
    box-shadow: 0 12px 26px color-mix(in srgb, var(--kishi-skill-accent) 20%, transparent);
}

.kishi-skill-card__line {
    background: linear-gradient(90deg, transparent, var(--kishi-skill-accent));
}

.kishi-skill-card--wordpress { --kishi-skill-accent: #58aee8; --kishi-skill-soft: rgba(88,174,232,.12); }
.kishi-skill-card--php { --kishi-skill-accent: #9a9fe9; --kishi-skill-soft: rgba(154,159,233,.12); }
.kishi-skill-card--laravel { --kishi-skill-accent: #ff7265; --kishi-skill-soft: rgba(255,114,101,.12); }
.kishi-skill-card--python { --kishi-skill-accent: #ffd45d; --kishi-skill-soft: rgba(255,212,93,.11); }
.kishi-skill-card--javascript { --kishi-skill-accent: #f1d84f; --kishi-skill-soft: rgba(241,216,79,.1); }
.kishi-skill-card--css { --kishi-skill-accent: #5a9dff; --kishi-skill-soft: rgba(90,157,255,.12); }
.kishi-skill-card--uiux { --kishi-skill-accent: #e486ff; --kishi-skill-soft: rgba(228,134,255,.11); }
.kishi-skill-card--figma { --kishi-skill-accent: #ff8a72; --kishi-skill-soft: rgba(255,138,114,.11); }
.kishi-skill-card--seo { --kishi-skill-accent: #69d7a1; --kishi-skill-soft: rgba(105,215,161,.11); }
.kishi-skill-card--product { --kishi-skill-accent: #9c82ff; --kishi-skill-soft: rgba(156,130,255,.12); }
.kishi-skill-card--systems { --kishi-skill-accent: #65c8ff; --kishi-skill-soft: rgba(101,200,255,.11); }
.kishi-skill-card--custom-systems { --kishi-skill-accent: #65e2d5; --kishi-skill-soft: rgba(101,226,213,.1); }
.kishi-skill-card--mysql { --kishi-skill-accent: #6cbcf2; --kishi-skill-soft: rgba(108,188,242,.11); }
.kishi-skill-card--pwa { --kishi-skill-accent: #9b7cff; --kishi-skill-soft: rgba(155,124,255,.11); }
.kishi-skill-card--ecommerce { --kishi-skill-accent: #d38bff; --kishi-skill-soft: rgba(211,139,255,.1); }
.kishi-skill-card--photoshop { --kishi-skill-accent: #47a9ff; --kishi-skill-soft: rgba(71,169,255,.11); }
.kishi-skill-card--dreamweaver { --kishi-skill-accent: #b6e66a; --kishi-skill-soft: rgba(182,230,106,.1); }
.kishi-skill-card--brand { --kishi-skill-accent: #ff9bc6; --kishi-skill-soft: rgba(255,155,198,.1); }

.kishi-skills-more {
    margin-top: 22px;
}

.kishi-skills-more__toggle {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    width: fit-content;
    min-height: 48px;
    margin: 0 auto;
    padding: 0 20px;
    cursor: pointer;
    user-select: none;
    list-style: none;
    border: 1px solid rgba(139, 116, 255, .26);
    border-radius: 15px;
    color: #ddd8ff;
    background: rgba(111,84,255,.07);
    font-weight: 800;
    transition: transform .2s ease, border-color .2s ease, background .2s ease, color .2s ease;
}

.kishi-skills-more__toggle::-webkit-details-marker {
    display: none;
}

.kishi-skills-more__toggle:hover,
.kishi-skills-more__toggle:focus-visible {
    color: #fff;
    border-color: rgba(139, 116, 255, .58);
    background: rgba(111,84,255,.15);
    transform: translateY(-1px);
}

.kishi-skills-more__label--close {
    display: none;
}

.kishi-skills-more__icon {
    font-size: 17px;
    transition: transform .24s ease;
}

.kishi-skills-more[open] .kishi-skills-more__label--open {
    display: none;
}

.kishi-skills-more[open] .kishi-skills-more__label--close {
    display: inline;
}

.kishi-skills-more[open] .kishi-skills-more__icon {
    transform: rotate(180deg);
}

.kishi-skills-grid--more {
    margin-top: 20px;
    animation: kishi-skills-reveal .26s ease both;
}

@keyframes kishi-skills-reveal {
    from { opacity: 0; transform: translateY(-7px); }
    to { opacity: 1; transform: translateY(0); }
}

/* Services: arrow controls now link to the matching service section. */
.kishi-service-card__arrow {
    text-decoration: none;
    transition: transform .2s ease, background .2s ease, border-color .2s ease, color .2s ease;
}

.kishi-service-card__arrow:hover,
.kishi-service-card__arrow:focus-visible {
    color: #fff;
    border-color: rgba(139,116,255,.55);
    background: rgba(111,84,255,.18);
    transform: translate(-2px, 2px);
}

#services-core,
#service-uiux,
#service-web,
#service-ecommerce,
#service-growth {
    scroll-margin-top: 110px;
}

/* Home projects: fixed capacity of three cards on desktop. */
.kishi-projects-grid--three {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.kishi-projects-grid--three .kishi-project-card {
    min-width: 0;
}

.kishi-projects-grid--three .kishi-project-card__media {
    aspect-ratio: 16 / 11;
}

/* Home feedback: latest approved comments from project pages. */
.kishi-feedback-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
}

.kishi-feedback-card {
    min-width: 0;
}

.kishi-feedback-card__link {
    position: relative;
    display: flex;
    flex-direction: column;
    min-height: 255px;
    height: 100%;
    padding: 24px;
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.075);
    border-radius: 24px;
    color: inherit;
    text-decoration: none;
    background:
        radial-gradient(circle at 92% 8%, rgba(111,84,255,.12), transparent 30%),
        rgba(255,255,255,.025);
    transition: transform .22s ease, border-color .22s ease, background .22s ease, box-shadow .22s ease;
}

.kishi-feedback-card__link:hover,
.kishi-feedback-card__link:focus-visible {
    color: inherit;
    transform: translateY(-3px);
    border-color: rgba(132, 115, 255, .42);
    background:
        radial-gradient(circle at 92% 8%, rgba(111,84,255,.2), transparent 34%),
        rgba(111,84,255,.045);
    box-shadow: 0 18px 42px rgba(0,0,0,.22);
}

.kishi-feedback-card__quote {
    color: #9f91ff;
    font: 48px/1 Georgia, serif;
}

.kishi-feedback-card__text {
    margin: 10px 0 24px;
    color: #e9ebf8;
    font-size: 14px;
    line-height: 2;
}

.kishi-feedback-card__footer {
    display: grid;
    grid-template-columns: 42px minmax(0,1fr) auto;
    align-items: center;
    gap: 10px;
    margin-top: auto;
}

.kishi-feedback-card__avatar {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    border-radius: 14px;
    color: #fff;
    background: linear-gradient(145deg, rgba(111,84,255,.42), rgba(64,127,255,.2));
    font-weight: 900;
}

.kishi-feedback-card__person {
    min-width: 0;
}

.kishi-feedback-card__person strong,
.kishi-feedback-card__person small {
    display: block;
}

.kishi-feedback-card__person strong {
    overflow: hidden;
    color: #fff;
    font-size: 13px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.kishi-feedback-card__person small,
.kishi-feedback-card time {
    color: #8f97b2;
    font-size: 10px;
}

.kishi-feedback-card__go {
    position: absolute;
    top: 20px;
    left: 20px;
    color: #9c8eff;
    font-size: 17px;
    transition: transform .2s ease;
}

.kishi-feedback-card__link:hover .kishi-feedback-card__go {
    transform: translateX(-3px);
}

.kishi-feedback-empty {
    display: grid;
    grid-template-columns: 68px minmax(0,1fr) auto;
    align-items: center;
    gap: 20px;
    padding: 24px;
    border: 1px dashed rgba(139,116,255,.28);
    border-radius: 24px;
    background: rgba(255,255,255,.018);
}

.kishi-feedback-empty__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 62px;
    height: 62px;
    border-radius: 20px;
    color: #a99cff;
    background: rgba(111,84,255,.1);
    font: 46px/1 Georgia, serif;
}

.kishi-feedback-empty h3 {
    margin: 0 0 6px;
    font-size: 18px;
}

.kishi-feedback-empty p {
    margin: 0;
    max-width: 70ch;
    color: var(--kishi-text-soft);
    font-size: 13px;
    line-height: 1.9;
}

/* Project page comments / client feedback. */
.kishi-project-feedback__panel {
    padding: 34px;
}

.kishi-project-feedback__head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 24px;
    margin-bottom: 24px;
}

.kishi-project-feedback__head h2 {
    margin: 0 0 8px;
    font-size: clamp(24px, 3vw, 34px);
}

.kishi-project-feedback__head > div > p:last-child {
    margin: 0;
    max-width: 68ch;
    color: var(--kishi-text-soft);
    line-height: 1.9;
}

.kishi-project-feedback__count {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    min-height: 38px;
    padding: 0 14px;
    border: 1px solid rgba(139,116,255,.26);
    border-radius: 999px;
    color: #c7c0ff;
    background: rgba(111,84,255,.08);
    font-size: 12px;
    font-weight: 800;
}

.kishi-project-comments-list,
.kishi-project-comments-list .children {
    margin: 0;
    padding: 0;
    list-style: none;
}

.kishi-project-comments-list {
    display: grid;
    gap: 14px;
    margin-bottom: 28px;
}

.kishi-project-comments-list .children {
    display: grid;
    gap: 12px;
    margin-top: 12px;
    margin-right: 34px;
}

.kishi-project-comment__card {
    padding: 20px;
    border: 1px solid rgba(255,255,255,.075);
    border-radius: 22px;
    background: rgba(255,255,255,.025);
}

.kishi-project-comment__head {
    display: flex;
    align-items: center;
    gap: 11px;
    margin-bottom: 13px;
}

.kishi-project-comment__avatar {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    border-radius: 15px;
    color: #fff;
    background: linear-gradient(145deg, rgba(111,84,255,.42), rgba(64,127,255,.2));
    font-weight: 900;
}

.kishi-project-comment__head strong,
.kishi-project-comment__head time {
    display: block;
}

.kishi-project-comment__head strong {
    color: #fff;
    font-size: 13px;
}

.kishi-project-comment__head a {
    color: #8f97b2;
    font-size: 10px;
    text-decoration: none;
}

.kishi-project-comment__body {
    color: #dfe3f3;
    font-size: 14px;
    line-height: 2;
}

.kishi-project-comment__body p:last-child {
    margin-bottom: 0;
}

.kishi-project-comment__pending {
    margin: 0 0 10px;
    color: #d7cb83;
    font-size: 12px;
}

.kishi-project-comment__actions {
    margin-top: 12px;
}

.kishi-project-comment__actions a {
    color: #a99cff;
    font-size: 12px;
    font-weight: 800;
}

.kishi-project-comments-nav {
    display: flex;
    justify-content: space-between;
    gap: 14px;
    margin: 20px 0;
}

.kishi-project-comments-nav a {
    color: #bbb2ff;
    font-size: 12px;
    font-weight: 800;
}

.kishi-project-comment-form-wrap {
    padding-top: 26px;
    border-top: 1px solid rgba(255,255,255,.07);
}

.kishi-project-comment-form-wrap .comment-reply-title {
    margin: 0 0 8px;
    font-size: 22px;
}

.kishi-project-comment-form__note {
    margin: 0 0 18px;
    color: var(--kishi-text-soft);
    font-size: 12px;
}

.kishi-project-comment-form {
    display: grid;
    grid-template-columns: repeat(2, minmax(0,1fr));
    gap: 14px;
}

.kishi-project-comment-form > .comment-reply-title,
.kishi-project-comment-form > .kishi-project-comment-form__note,
.kishi-project-comment-form > .kishi-project-comment-field--message,
.kishi-project-comment-form > .form-submit,
.kishi-project-comment-form > .comment-form-cookies-consent,
.kishi-project-comment-form > .logged-in-as {
    grid-column: 1 / -1;
}

.kishi-project-comment-field {
    margin: 0;
}

.kishi-project-comment-field label {
    display: block;
    margin-bottom: 7px;
    color: #dfe3f3;
    font-size: 12px;
    font-weight: 800;
}

.kishi-project-comment-field input,
.kishi-project-comment-field textarea {
    width: 100%;
    border: 1px solid rgba(255,255,255,.1);
    border-radius: 15px;
    outline: none;
    color: #fff;
    background: rgba(255,255,255,.035);
    font: inherit;
    transition: border-color .2s ease, box-shadow .2s ease, background .2s ease;
}

.kishi-project-comment-field input {
    min-height: 50px;
    padding: 0 15px;
}

.kishi-project-comment-field textarea {
    min-height: 145px;
    padding: 14px 15px;
    resize: vertical;
    line-height: 1.9;
}

.kishi-project-comment-field input:focus,
.kishi-project-comment-field textarea:focus {
    border-color: rgba(139,116,255,.62);
    background: rgba(111,84,255,.055);
    box-shadow: 0 0 0 4px rgba(111,84,255,.08);
}

.kishi-project-comment-form .comment-form-cookies-consent {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    color: var(--kishi-text-soft);
    font-size: 11px;
    line-height: 1.7;
}

.kishi-project-comment-form .comment-form-cookies-consent input {
    margin-top: 4px;
}

.kishi-project-comment-form .form-submit {
    margin: 4px 0 0;
}

.kishi-project-comment-form__submit {
    cursor: pointer;
}

.kishi-project-feedback__closed {
    margin: 0;
    padding: 16px;
    border-radius: 16px;
    color: var(--kishi-text-soft);
    background: rgba(255,255,255,.025);
}

@media (max-width: 1020px) {
    .kishi-projects-grid--three,
    .kishi-feedback-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .kishi-feedback-card:last-child:nth-child(odd) {
        grid-column: 1 / -1;
    }
}

@media (max-width: 720px) {
    .kishi-projects-grid--three,
    .kishi-feedback-grid {
        grid-template-columns: 1fr;
    }

    .kishi-feedback-card:last-child:nth-child(odd) {
        grid-column: auto;
    }

    .kishi-feedback-empty {
        grid-template-columns: 54px minmax(0,1fr);
    }

    .kishi-feedback-empty .kishi-button {
        grid-column: 1 / -1;
        width: 100%;
    }

    .kishi-feedback-empty__icon {
        width: 52px;
        height: 52px;
        border-radius: 17px;
    }

    .kishi-project-feedback__panel {
        padding: 24px 18px;
    }

    .kishi-project-feedback__head {
        display: block;
    }

    .kishi-project-feedback__count {
        margin-top: 15px;
    }

    .kishi-project-comment-form {
        grid-template-columns: 1fr;
    }

    .kishi-project-comment-form > * {
        grid-column: 1 / -1;
    }

    .kishi-project-comments-list .children {
        margin-right: 14px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .kishi-skills-grid--more {
        animation: none;
    }
}

/* Shared CTA hover language across the site. */
.kishi-button--primary:hover,
.kishi-button--primary:focus-visible {
    color: #fff;
    background: linear-gradient(135deg, #8b74ff, #4d9dff);
    box-shadow: 0 18px 38px rgba(91, 94, 255, .3);
}

.kishi-button--secondary:hover,
.kishi-button--secondary:focus-visible {
    color: #fff;
    border-color: rgba(139, 116, 255, .58);
    background: rgba(111, 84, 255, .14);
    box-shadow: 0 14px 32px rgba(68, 52, 166, .14);
}

.kishi-hero__meta li {
    transition: transform .2s ease, color .2s ease, border-color .2s ease, background .2s ease;
}

.kishi-hero__meta li:hover {
    color: #fff;
    border-color: rgba(139, 116, 255, .5);
    background: rgba(111, 84, 255, .13);
    transform: translateY(-2px);
}

/* =========================================================
   KISHI v1.11.0 — animated polish + contextual collaboration
   ========================================================= */

/* Reusable "code types itself" layer for coding-related cards. */
.kishi-code-hover {
    position: relative;
    overflow: hidden;
    isolation: isolate;
}

.kishi-code-hover::before {
    content: attr(data-code);
    position: absolute;
    z-index: 0;
    right: 18px;
    left: 18px;
    bottom: 14px;
    max-width: calc(100% - 36px);
    overflow: hidden;
    direction: ltr;
    color: var(--kishi-skill-accent, #8d78ff);
    font-family: Consolas, "Courier New", monospace;
    font-size: 11px;
    font-weight: 700;
    line-height: 1.4;
    letter-spacing: .01em;
    text-align: left;
    white-space: nowrap;
    opacity: 0;
    clip-path: inset(0 100% 0 0);
    pointer-events: none;
    filter: drop-shadow(0 0 12px color-mix(in srgb, var(--kishi-skill-accent, #8d78ff) 35%, transparent));
}

.kishi-code-hover:hover::before,
.kishi-code-hover:focus-within::before {
    opacity: .14;
    animation: kishi-code-type .95s steps(28, end) both;
}

.kishi-code-hover > * {
    position: relative;
    z-index: 1;
}

@keyframes kishi-code-type {
    from { clip-path: inset(0 100% 0 0); }
    to { clip-path: inset(0 0 0 0); }
}

/* About / Work hero height correction and richer but bounded presentation. */
.kishi-about-page-hero,
.kishi-work-page-hero {
    min-height: 0;
    overflow: hidden;
}

.kishi-about-page-hero__grid,
.kishi-work-page-hero__grid {
    min-height: 520px;
}

.kishi-about-page-hero__visual,
.kishi-work-page-hero__visual,
.kishi-services-page-hero__visual {
    transition: transform .35s ease, border-color .35s ease, box-shadow .35s ease, background-position .8s ease;
}

.kishi-about-page-hero__visual:hover,
.kishi-work-page-hero__visual:hover,
.kishi-services-page-hero__visual:hover {
    transform: translateY(-5px);
    border-color: rgba(145, 123, 255, .42);
    box-shadow: 0 34px 85px rgba(0,0,0,.38), 0 0 48px rgba(111,84,255,.14);
}

/* About page: animated glass/glow accents. */
.kishi-about-page-principles article,
.kishi-about-page-story__quote,
.kishi-about-page-capabilities article,
.kishi-about-page-tools,
.kishi-about-page-cta {
    transition: transform .28s ease, border-color .28s ease, box-shadow .28s ease, background .35s ease;
}

.kishi-about-page-principles article:hover,
.kishi-about-page-capabilities article:hover {
    transform: translateY(-5px);
    border-color: rgba(143, 118, 255, .44);
    background: radial-gradient(circle at 85% 15%, rgba(111,84,255,.16), transparent 36%), rgba(13,18,34,.92);
    box-shadow: 0 20px 45px rgba(0,0,0,.24), 0 0 28px rgba(111,84,255,.09);
}

.kishi-about-page-story__quote:hover,
.kishi-about-page-tools:hover {
    transform: translateY(-3px);
    border-color: rgba(107, 181, 255, .34);
    box-shadow: 0 18px 42px rgba(0,0,0,.22), 0 0 30px rgba(69,142,255,.08);
}

.kishi-about-page-tools span {
    transition: transform .22s ease, color .22s ease, border-color .22s ease, background .22s ease, box-shadow .22s ease;
}

.kishi-about-page-tools span:hover {
    transform: translateY(-2px);
    color: #fff;
    border-color: rgba(137,113,255,.45);
    background: rgba(111,84,255,.14);
    box-shadow: 0 10px 24px rgba(72,52,169,.16);
}

.kishi-about-page-cta {
    position: relative;
    overflow: hidden;
    background-size: 180% 180%;
    animation: kishi-gradient-breathe 8s ease-in-out infinite;
}

.kishi-about-page-cta::after {
    content: "";
    position: absolute;
    inset: -45% auto -45% -28%;
    width: 34%;
    transform: rotate(17deg);
    background: linear-gradient(90deg, transparent, rgba(255,255,255,.09), transparent);
    animation: kishi-sheen 6.5s ease-in-out infinite;
    pointer-events: none;
}

.kishi-about-page-cta:hover {
    transform: translateY(-4px);
    border-color: rgba(146,122,255,.5);
    box-shadow: 0 26px 70px rgba(0,0,0,.28), 0 0 45px rgba(111,84,255,.12);
}

/* Services page: give every major card a responsive glow instead of static decoration. */
.kishi-services-principles div,
.kishi-services-page-card,
.kishi-services-path-card,
.kishi-services-project-card,
.kishi-services-page-cta {
    transition: transform .28s ease, border-color .28s ease, box-shadow .28s ease, background .35s ease;
}

.kishi-services-principles div:hover,
.kishi-services-page-card:hover,
.kishi-services-path-card:hover,
.kishi-services-project-card:hover {
    transform: translateY(-5px);
    border-color: rgba(132,109,255,.42);
    box-shadow: 0 20px 48px rgba(0,0,0,.24), 0 0 28px rgba(111,84,255,.09);
}

.kishi-services-principles div:hover b,
.kishi-services-page-card:hover .kishi-services-page-card__icon,
.kishi-services-path-card:hover .kishi-services-path-card__icon {
    transform: scale(1.06) rotate(-3deg);
    color: #d7d0ff;
    box-shadow: 0 0 28px rgba(111,84,255,.18);
}

.kishi-services-principles b,
.kishi-services-page-card__icon,
.kishi-services-path-card__icon {
    transition: transform .28s ease, color .28s ease, box-shadow .28s ease, background .28s ease;
}

.kishi-services-page-cta {
    overflow: hidden;
    background-size: 180% 180%;
    animation: kishi-gradient-breathe 9s ease-in-out infinite;
}

.kishi-services-page-cta:hover {
    transform: translateY(-4px);
    border-color: rgba(139,116,255,.5);
    box-shadow: 0 26px 70px rgba(0,0,0,.3), 0 0 48px rgba(111,84,255,.12);
}

.kishi-services-page-cta__rocket {
    animation: kishi-rocket-float 3.8s ease-in-out infinite;
}

@keyframes kishi-rocket-float {
    0%, 100% { transform: rotate(-25deg) translate3d(0,0,0); }
    50% { transform: rotate(-20deg) translate3d(9px,-8px,0); }
}

/* Projects archive hero metrics: interactive and animated. */
.kishi-projects-archive-stat {
    position: relative;
    overflow: hidden;
    transition: transform .26s ease, border-color .26s ease, box-shadow .26s ease, background .35s ease;
}

.kishi-projects-archive-stat::after {
    content: "";
    position: absolute;
    right: 16px;
    left: 16px;
    bottom: 9px;
    height: 2px;
    border-radius: 999px;
    background: linear-gradient(90deg, #725cff, #5fa9ff, #8d78ff);
    transform: scaleX(0);
    transform-origin: right center;
    transition: transform .3s ease;
}

.kishi-projects-archive-stat:hover {
    transform: translateY(-5px);
    border-color: rgba(132,110,255,.48);
    background: radial-gradient(circle at 72% 12%, rgba(111,84,255,.2), transparent 46%), linear-gradient(180deg, rgba(18,25,45,.95), rgba(10,15,29,.9));
    box-shadow: 0 20px 48px rgba(0,0,0,.28), 0 0 34px rgba(111,84,255,.1);
}

.kishi-projects-archive-stat:hover::after {
    transform: scaleX(1);
}

.kishi-projects-archive-stat strong {
    transition: color .25s ease, transform .25s ease, text-shadow .25s ease;
}

.kishi-projects-archive-stat:hover strong {
    color: #b9aeff;
    transform: translateY(-2px);
    text-shadow: 0 0 22px rgba(111,84,255,.25);
}

/* Work With Me: animated, lively cards while keeping the dark KISHI identity. */
.kishi-work-process__item,
.kishi-work-principles article,
.kishi-work-model,
.kishi-work-page-cta {
    transition: transform .28s ease, border-color .28s ease, box-shadow .28s ease, background .35s ease;
}

.kishi-work-process__item:hover,
.kishi-work-principles article:hover,
.kishi-work-model:hover {
    transform: translateY(-6px);
    border-color: rgba(138,115,255,.45);
    background: radial-gradient(circle at 80% 10%, rgba(111,84,255,.16), transparent 38%), rgba(11,16,31,.94);
    box-shadow: 0 22px 52px rgba(0,0,0,.26), 0 0 32px rgba(111,84,255,.09);
}

.kishi-work-process__marker span,
.kishi-work-process__icon,
.kishi-work-principles article > span,
.kishi-work-model__icon {
    transition: transform .28s ease, color .28s ease, border-color .28s ease, box-shadow .28s ease, background .28s ease;
}

.kishi-work-process__item:hover .kishi-work-process__marker span,
.kishi-work-process__item:hover .kishi-work-process__icon,
.kishi-work-principles article:hover > span,
.kishi-work-model:hover .kishi-work-model__icon {
    transform: translateY(-2px) scale(1.05);
    color: #d2c9ff;
    border-color: rgba(142,119,255,.45);
    box-shadow: 0 0 26px rgba(111,84,255,.14);
}

.kishi-work-model--featured {
    animation: kishi-featured-model 5.4s ease-in-out infinite;
}

@keyframes kishi-featured-model {
    0%, 100% { box-shadow: 0 18px 46px rgba(0,0,0,.24), 0 0 0 rgba(111,84,255,0); }
    50% { box-shadow: 0 24px 58px rgba(0,0,0,.3), 0 0 38px rgba(111,84,255,.14); }
}

.kishi-work-page-cta {
    position: relative;
    overflow: hidden;
    background-size: 180% 180%;
    animation: kishi-gradient-breathe 8.5s ease-in-out infinite;
}

.kishi-work-page-cta:hover {
    transform: translateY(-4px);
    border-color: rgba(143,120,255,.5);
    box-shadow: 0 26px 70px rgba(0,0,0,.3), 0 0 46px rgba(111,84,255,.12);
}

.kishi-work-page-cta__visual span {
    animation: kishi-orbit-pulse 3.4s ease-in-out infinite;
}

@keyframes kishi-orbit-pulse {
    0%, 100% { transform: scale(1) rotate(0deg); opacity: .82; }
    50% { transform: scale(1.08) rotate(12deg); opacity: 1; }
}

/* Contact: animated info cards requested by the user. */
.kishi-contact-page-info-card,
.kishi-contact-page-side-note,
.kishi-contact-page-form-card {
    position: relative;
    overflow: hidden;
    transition: transform .28s ease, border-color .28s ease, box-shadow .28s ease, background .35s ease;
}

.kishi-contact-page-info-card::after,
.kishi-contact-page-side-note::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(115deg, transparent 18%, rgba(126,105,255,.08) 45%, rgba(78,164,255,.08) 55%, transparent 82%);
    transform: translateX(120%);
    transition: transform .65s ease;
    pointer-events: none;
}

.kishi-contact-page-info-card:hover,
.kishi-contact-page-side-note:hover,
.kishi-contact-page-form-card:hover {
    transform: translateY(-4px);
    border-color: rgba(140,116,255,.44);
    box-shadow: 0 22px 54px rgba(0,0,0,.26), 0 0 34px rgba(111,84,255,.09);
}

.kishi-contact-page-info-card:hover::after,
.kishi-contact-page-side-note:hover::after {
    transform: translateX(-120%);
}

.kishi-contact-page-info-card__icon,
.kishi-contact-page-form-card__mark {
    transition: transform .25s ease, color .25s ease, border-color .25s ease, box-shadow .25s ease, background .25s ease;
}

.kishi-contact-page-info-card:hover .kishi-contact-page-info-card__icon,
.kishi-contact-page-form-card:hover .kishi-contact-page-form-card__mark {
    transform: translateY(-2px) rotate(-4deg) scale(1.04);
    color: #d9d2ff;
    border-color: rgba(143,119,255,.48);
    background: rgba(111,84,255,.16);
    box-shadow: 0 0 28px rgba(111,84,255,.15);
}

.kishi-contact-page-side-note > span {
    transition: transform .45s ease, color .45s ease;
}

.kishi-contact-page-side-note:hover > span {
    transform: translate3d(5px,-6px,0) rotate(-6deg);
    color: rgba(124,103,255,.18);
}

.kishi-contact-model-hint {
    display: block;
    margin-top: 2px;
    color: #9e92dc;
    font-size: 11px;
    font-weight: 600;
    line-height: 1.7;
}

/* Shared gradients / motion. */
@keyframes kishi-gradient-breathe {
    0%, 100% { background-position: 0% 50%; }
    50% { background-position: 100% 50%; }
}

@keyframes kishi-sheen {
    0%, 20% { transform: translateX(0) rotate(17deg); opacity: 0; }
    35% { opacity: 1; }
    60%, 100% { transform: translateX(470%) rotate(17deg); opacity: 0; }
}

@media (max-width: 760px) {
    .kishi-about-page-hero__grid,
    .kishi-work-page-hero__grid {
        min-height: auto;
    }

    .kishi-code-hover::before {
        right: 14px;
        left: 14px;
        bottom: 10px;
        max-width: calc(100% - 28px);
        font-size: 9px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .kishi-about-page-cta,
    .kishi-services-page-cta,
    .kishi-services-page-cta__rocket,
    .kishi-work-model--featured,
    .kishi-work-page-cta,
    .kishi-work-page-cta__visual span,
    .kishi-about-page-cta::after {
        animation: none !important;
    }

    .kishi-code-hover:hover::before,
    .kishi-code-hover:focus-within::before {
        animation: none !important;
        clip-path: inset(0 0 0 0);
    }
}

/* =========================================================
   KISHI v1.12.0 — differentiated accents + richer code motion
   ========================================================= */

/* Coding skill cards: type multiple lines across the whole card background. */
.kishi-code-hover--stream::before {
    content: none;
}

.kishi-code-hover > .kishi-code-hover__stream {
    position: absolute;
    z-index: 0;
    inset: 12px 14px;
    display: grid;
    align-content: space-evenly;
    gap: 3px;
    direction: ltr;
    overflow: hidden;
    color: var(--kishi-skill-accent, #8d78ff);
    font-family: Consolas, "Courier New", monospace;
    font-size: 9.5px;
    font-weight: 700;
    line-height: 1.35;
    letter-spacing: .01em;
    text-align: left;
    opacity: 0;
    pointer-events: none;
    transform: scale(1.015);
    transition: opacity .22s ease, transform .35s ease;
    mask-image: linear-gradient(180deg, rgba(0,0,0,.9), rgba(0,0,0,.72));
}

.kishi-code-hover__stream span {
    display: block;
    width: 0;
    max-width: 100%;
    overflow: hidden;
    white-space: nowrap;
    text-shadow: 0 0 13px currentColor;
}

.kishi-code-hover--stream:hover .kishi-code-hover__stream,
.kishi-code-hover--stream:focus-within .kishi-code-hover__stream {
    opacity: .16;
    transform: scale(1);
}

.kishi-code-hover--stream:hover .kishi-code-hover__stream span,
.kishi-code-hover--stream:focus-within .kishi-code-hover__stream span {
    animation: kishi-code-stream-type .48s steps(30, end) both;
    animation-delay: calc(var(--kishi-code-line, 0) * .075s);
}

@keyframes kishi-code-stream-type {
    from { width: 0; }
    to { width: 100%; }
}

/* Give the skill cards a stronger, visible identity even before hover. */
.kishi-skill-card {
    border-color: color-mix(in srgb, var(--kishi-skill-accent, #806cff) 22%, transparent);
    background:
        radial-gradient(circle at 96% 4%, var(--kishi-skill-soft, rgba(111,84,255,.1)), transparent 38%),
        linear-gradient(180deg, rgba(18,25,44,.92), rgba(10,15,28,.96));
}

.kishi-skill-card__mark {
    color: var(--kishi-skill-accent, #a99cff);
    border-color: color-mix(in srgb, var(--kishi-skill-accent, #806cff) 34%, transparent);
    background: color-mix(in srgb, var(--kishi-skill-accent, #806cff) 12%, rgba(10,15,28,.92));
    box-shadow: 0 0 24px color-mix(in srgb, var(--kishi-skill-accent, #806cff) 12%, transparent);
}

.kishi-skill-card__line {
    background: linear-gradient(90deg, transparent, var(--kishi-skill-accent, #806cff));
}

.kishi-skill-card:hover {
    border-color: color-mix(in srgb, var(--kishi-skill-accent, #806cff) 52%, transparent);
    background:
        radial-gradient(circle at 96% 4%, color-mix(in srgb, var(--kishi-skill-accent, #806cff) 20%, transparent), transparent 42%),
        linear-gradient(180deg, rgba(18,25,44,.96), rgba(9,14,27,.98));
    box-shadow: 0 20px 48px rgba(0,0,0,.26), 0 0 34px color-mix(in srgb, var(--kishi-skill-accent, #806cff) 12%, transparent);
}

/* Shared per-card accent system for the areas animated in v1.11. */
.kishi-about-page-principles article:nth-child(1),
.kishi-about-page-journey__item:nth-child(1),
.kishi-about-page-capabilities article:nth-child(1),
.kishi-services-principles div:nth-child(1),
.kishi-services-page-card:nth-child(1),
.kishi-services-path-card:nth-child(1),
.kishi-projects-archive-stat:nth-child(1),
.kishi-work-process__item:nth-child(1),
.kishi-work-principles article:nth-child(1),
.kishi-contact-page-info-card:nth-child(1) { --kishi-card-rgb: 92, 135, 255; }

.kishi-about-page-principles article:nth-child(2),
.kishi-about-page-journey__item:nth-child(2),
.kishi-about-page-capabilities article:nth-child(2),
.kishi-services-principles div:nth-child(2),
.kishi-services-page-card:nth-child(2),
.kishi-services-path-card:nth-child(2),
.kishi-projects-archive-stat:nth-child(2),
.kishi-work-process__item:nth-child(2),
.kishi-work-principles article:nth-child(2),
.kishi-contact-page-info-card:nth-child(2) { --kishi-card-rgb: 90, 207, 190; }

.kishi-about-page-principles article:nth-child(3),
.kishi-about-page-journey__item:nth-child(3),
.kishi-about-page-capabilities article:nth-child(3),
.kishi-services-principles div:nth-child(3),
.kishi-services-page-card:nth-child(3),
.kishi-services-path-card:nth-child(3),
.kishi-projects-archive-stat:nth-child(3),
.kishi-work-process__item:nth-child(3),
.kishi-work-principles article:nth-child(3),
.kishi-contact-page-info-card:nth-child(3) { --kishi-card-rgb: 112, 217, 142; }

.kishi-about-page-principles article:nth-child(4),
.kishi-about-page-journey__item:nth-child(4),
.kishi-about-page-capabilities article:nth-child(4),
.kishi-services-principles div:nth-child(4),
.kishi-services-page-card:nth-child(4),
.kishi-services-path-card:nth-child(4),
.kishi-projects-archive-stat:nth-child(4),
.kishi-work-process__item:nth-child(4),
.kishi-work-principles article:nth-child(4) { --kishi-card-rgb: 177, 115, 255; }

.kishi-about-page-capabilities article:nth-child(5),
.kishi-work-process__item:nth-child(5) { --kishi-card-rgb: 255, 151, 104; }

.kishi-about-page-capabilities article:nth-child(6),
.kishi-work-process__item:nth-child(6) { --kishi-card-rgb: 238, 112, 176; }

.kishi-about-page-capabilities article:nth-child(7) { --kishi-card-rgb: 95, 188, 255; }
.kishi-about-page-capabilities article:nth-child(8) { --kishi-card-rgb: 245, 198, 91; }

/* About: principles and capabilities are visibly different at rest. */
.kishi-about-page-principles article,
.kishi-about-page-capabilities article {
    border-color: rgba(var(--kishi-card-rgb, 126,105,255), .2);
    background:
        radial-gradient(circle at 86% 12%, rgba(var(--kishi-card-rgb, 126,105,255), .12), transparent 38%),
        rgba(10,15,29,.92);
}

.kishi-about-page-principles article > span,
.kishi-about-page-capabilities article > span {
    color: rgb(var(--kishi-card-rgb, 126,105,255));
}

.kishi-about-page-principles article:hover,
.kishi-about-page-capabilities article:hover {
    border-color: rgba(var(--kishi-card-rgb, 126,105,255), .52);
    background:
        radial-gradient(circle at 84% 12%, rgba(var(--kishi-card-rgb, 126,105,255), .22), transparent 42%),
        rgba(11,17,32,.97);
    box-shadow: 0 22px 52px rgba(0,0,0,.27), 0 0 34px rgba(var(--kishi-card-rgb, 126,105,255), .12);
}

/* About: animate the Journey section itself, not only its neighbours. */
.kishi-about-page-journey {
    isolation: isolate;
}

.kishi-about-page-journey::before {
    height: 2px;
    background: linear-gradient(90deg, transparent, rgba(92,135,255,.65) 13%, rgba(90,207,190,.72) 39%, rgba(112,217,142,.72) 64%, rgba(177,115,255,.68) 87%, transparent);
    background-size: 180% 100%;
    animation: kishi-about-route-glow 5s ease-in-out infinite;
}

.kishi-about-page-journey::after {
    content: "";
    position: absolute;
    z-index: 1;
    top: 45px;
    right: 8%;
    width: 52px;
    height: 8px;
    border-radius: 999px;
    background: rgba(154,140,255,.8);
    filter: blur(5px);
    box-shadow: 0 0 18px rgba(126,105,255,.55);
    animation: kishi-about-route-scan 4.2s ease-in-out infinite;
    pointer-events: none;
}

.kishi-about-page-journey__item {
    overflow: hidden;
    border-color: rgba(var(--kishi-card-rgb, 126,105,255), .22);
    background:
        radial-gradient(circle at 50% -5%, rgba(var(--kishi-card-rgb, 126,105,255), .13), transparent 36%),
        rgba(8,13,25,.9);
    transition: transform .3s ease, border-color .3s ease, box-shadow .3s ease, background .35s ease;
}

.kishi-about-page-journey__item::after {
    content: "";
    position: absolute;
    right: 18px;
    left: 18px;
    bottom: 0;
    height: 2px;
    border-radius: 999px;
    background: linear-gradient(90deg, transparent, rgba(var(--kishi-card-rgb, 126,105,255), .95), transparent);
    transform: scaleX(.18);
    opacity: .45;
    transition: transform .3s ease, opacity .3s ease;
}

.kishi-about-page-journey__item:hover {
    transform: translateY(-7px);
    border-color: rgba(var(--kishi-card-rgb, 126,105,255), .55);
    background:
        radial-gradient(circle at 50% -5%, rgba(var(--kishi-card-rgb, 126,105,255), .22), transparent 42%),
        rgba(10,16,30,.97);
    box-shadow: 0 23px 52px rgba(0,0,0,.28), 0 0 34px rgba(var(--kishi-card-rgb, 126,105,255), .12);
}

.kishi-about-page-journey__item:hover::after {
    transform: scaleX(1);
    opacity: 1;
}

.kishi-about-page-journey__marker {
    border-color: rgba(var(--kishi-card-rgb, 126,105,255), .55);
    box-shadow: 0 0 0 8px #070b16, 0 0 24px rgba(var(--kishi-card-rgb, 126,105,255), .12);
    animation: kishi-about-marker-pulse 3.4s ease-in-out infinite;
    animation-delay: calc((var(--kishi-journey-index, 0)) * .3s);
}

.kishi-about-page-journey__marker span {
    color: rgb(var(--kishi-card-rgb, 126,105,255));
}

.kishi-about-page-journey__item:nth-child(1) { --kishi-journey-index: 0; }
.kishi-about-page-journey__item:nth-child(2) { --kishi-journey-index: 1; }
.kishi-about-page-journey__item:nth-child(3) { --kishi-journey-index: 2; }
.kishi-about-page-journey__item:nth-child(4) { --kishi-journey-index: 3; }

@keyframes kishi-about-route-glow {
    0%, 100% { background-position: 0% 50%; opacity: .52; }
    50% { background-position: 100% 50%; opacity: .9; }
}

@keyframes kishi-about-route-scan {
    0%, 8% { right: 8%; opacity: 0; }
    18% { opacity: 1; }
    82% { opacity: 1; }
    92%, 100% { right: calc(92% - 52px); opacity: 0; }
}

@keyframes kishi-about-marker-pulse {
    0%, 100% { transform: translateY(0) scale(1); }
    50% { transform: translateY(-2px) scale(1.035); }
}

/* Services: each animated group receives its own muted accent. */
.kishi-services-principles div,
.kishi-services-page-card,
.kishi-services-path-card {
    border-color: rgba(var(--kishi-card-rgb, 126,105,255), .2);
    background:
        radial-gradient(circle at 88% 8%, rgba(var(--kishi-card-rgb, 126,105,255), .12), transparent 40%),
        rgba(9,14,27,.93);
}

.kishi-services-principles b,
.kishi-services-page-card__icon,
.kishi-services-path-card__icon {
    color: rgb(var(--kishi-card-rgb, 126,105,255));
    border-color: rgba(var(--kishi-card-rgb, 126,105,255), .25);
    background: rgba(var(--kishi-card-rgb, 126,105,255), .08);
}

.kishi-services-principles div:hover,
.kishi-services-page-card:hover,
.kishi-services-path-card:hover {
    border-color: rgba(var(--kishi-card-rgb, 126,105,255), .52);
    background:
        radial-gradient(circle at 86% 8%, rgba(var(--kishi-card-rgb, 126,105,255), .22), transparent 44%),
        rgba(10,16,30,.97);
    box-shadow: 0 22px 52px rgba(0,0,0,.27), 0 0 34px rgba(var(--kishi-card-rgb, 126,105,255), .11);
}

.kishi-services-page-cta {
    background:
        radial-gradient(circle at 10% 10%, rgba(92,135,255,.2), transparent 28%),
        radial-gradient(circle at 88% 80%, rgba(177,115,255,.18), transparent 32%),
        linear-gradient(120deg, rgba(14,22,42,.98), rgba(10,15,29,.98));
}

/* Project archive hero stats: four different signals instead of one purple treatment. */
.kishi-projects-archive-stat {
    border-color: rgba(var(--kishi-card-rgb, 126,105,255), .22);
    background:
        radial-gradient(circle at 82% 4%, rgba(var(--kishi-card-rgb, 126,105,255), .13), transparent 45%),
        linear-gradient(180deg, rgba(16,23,42,.94), rgba(9,14,27,.94));
}

.kishi-projects-archive-stat::after {
    background: linear-gradient(90deg, transparent, rgb(var(--kishi-card-rgb, 126,105,255)), transparent);
}

.kishi-projects-archive-stat strong {
    color: rgb(var(--kishi-card-rgb, 126,105,255));
}

.kishi-projects-archive-stat:hover {
    border-color: rgba(var(--kishi-card-rgb, 126,105,255), .56);
    background:
        radial-gradient(circle at 76% 8%, rgba(var(--kishi-card-rgb, 126,105,255), .23), transparent 48%),
        linear-gradient(180deg, rgba(18,25,45,.97), rgba(9,14,28,.97));
    box-shadow: 0 20px 48px rgba(0,0,0,.28), 0 0 34px rgba(var(--kishi-card-rgb, 126,105,255), .12);
}

.kishi-projects-archive-stat:hover strong {
    color: rgb(var(--kishi-card-rgb, 126,105,255));
    text-shadow: 0 0 22px rgba(var(--kishi-card-rgb, 126,105,255), .28);
}

/* Work With Me: process/principles/models stay in theme, but no longer look identical. */
.kishi-work-process__item,
.kishi-work-principles article {
    border-color: rgba(var(--kishi-card-rgb, 126,105,255), .2);
    background:
        radial-gradient(circle at 82% 8%, rgba(var(--kishi-card-rgb, 126,105,255), .11), transparent 40%),
        rgba(9,14,27,.93);
}

.kishi-work-process__marker span,
.kishi-work-process__icon,
.kishi-work-principles article > span {
    color: rgb(var(--kishi-card-rgb, 126,105,255));
    border-color: rgba(var(--kishi-card-rgb, 126,105,255), .28);
    background: rgba(var(--kishi-card-rgb, 126,105,255), .08);
}

.kishi-work-process__item:hover,
.kishi-work-principles article:hover {
    border-color: rgba(var(--kishi-card-rgb, 126,105,255), .52);
    background:
        radial-gradient(circle at 82% 8%, rgba(var(--kishi-card-rgb, 126,105,255), .21), transparent 45%),
        rgba(10,16,30,.97);
    box-shadow: 0 22px 52px rgba(0,0,0,.27), 0 0 32px rgba(var(--kishi-card-rgb, 126,105,255), .11);
}

.kishi-work-model:nth-child(1) { --kishi-model-rgb: 92,135,255; }
.kishi-work-model:nth-child(2) { --kishi-model-rgb: 177,115,255; }
.kishi-work-model:nth-child(3) { --kishi-model-rgb: 90,207,190; }

.kishi-work-model {
    border-color: rgba(var(--kishi-model-rgb, 126,105,255), .23);
    background:
        radial-gradient(circle at 84% 6%, rgba(var(--kishi-model-rgb, 126,105,255), .14), transparent 42%),
        rgba(9,14,27,.94);
}

.kishi-work-model__icon,
.kishi-work-model__badge {
    color: rgb(var(--kishi-model-rgb, 126,105,255));
    border-color: rgba(var(--kishi-model-rgb, 126,105,255), .3);
    background: rgba(var(--kishi-model-rgb, 126,105,255), .09);
}

.kishi-work-model:hover {
    border-color: rgba(var(--kishi-model-rgb, 126,105,255), .56);
    background:
        radial-gradient(circle at 82% 8%, rgba(var(--kishi-model-rgb, 126,105,255), .23), transparent 46%),
        rgba(10,16,30,.98);
    box-shadow: 0 22px 52px rgba(0,0,0,.28), 0 0 34px rgba(var(--kishi-model-rgb, 126,105,255), .12);
}

.kishi-work-page-cta {
    background:
        radial-gradient(circle at 10% 20%, rgba(90,207,190,.18), transparent 28%),
        radial-gradient(circle at 88% 70%, rgba(177,115,255,.2), transparent 34%),
        linear-gradient(120deg, rgba(13,21,40,.98), rgba(10,15,29,.98));
}

/* Contact cards and form: distinct but coordinated accents. */
.kishi-contact-page-form-card { --kishi-contact-rgb: 177,115,255; }
.kishi-contact-page-info-card:nth-child(1) { --kishi-contact-rgb: 92,135,255; }
.kishi-contact-page-info-card:nth-child(2) { --kishi-contact-rgb: 90,207,190; }
.kishi-contact-page-info-card:nth-child(3) { --kishi-contact-rgb: 112,217,142; }
.kishi-contact-page-side-note { --kishi-contact-rgb: 238,112,176; }

.kishi-contact-page-info-card,
.kishi-contact-page-side-note,
.kishi-contact-page-form-card {
    border-color: rgba(var(--kishi-contact-rgb, 126,105,255), .22);
    background:
        radial-gradient(circle at 86% 8%, rgba(var(--kishi-contact-rgb, 126,105,255), .12), transparent 42%),
        rgba(9,14,27,.94);
}

.kishi-contact-page-info-card__icon,
.kishi-contact-page-form-card__mark {
    color: rgb(var(--kishi-contact-rgb, 126,105,255));
    border-color: rgba(var(--kishi-contact-rgb, 126,105,255), .3);
    background: rgba(var(--kishi-contact-rgb, 126,105,255), .09);
}

.kishi-contact-page-info-card:hover,
.kishi-contact-page-side-note:hover,
.kishi-contact-page-form-card:hover {
    border-color: rgba(var(--kishi-contact-rgb, 126,105,255), .54);
    background:
        radial-gradient(circle at 84% 8%, rgba(var(--kishi-contact-rgb, 126,105,255), .22), transparent 46%),
        rgba(10,16,30,.98);
    box-shadow: 0 22px 54px rgba(0,0,0,.27), 0 0 34px rgba(var(--kishi-contact-rgb, 126,105,255), .12);
}

.kishi-contact-page-side-note > span {
    color: rgba(var(--kishi-contact-rgb, 238,112,176), .16);
}

/* Give the three large visual/CTA surfaces a little more chromatic separation. */
.kishi-about-page-hero__visual {
    background:
        radial-gradient(circle at 20% 10%, rgba(92,135,255,.15), transparent 32%),
        radial-gradient(circle at 82% 78%, rgba(177,115,255,.15), transparent 34%),
        rgba(8,13,25,.9);
}

.kishi-services-page-hero__visual {
    background:
        radial-gradient(circle at 22% 12%, rgba(90,207,190,.13), transparent 32%),
        radial-gradient(circle at 82% 72%, rgba(92,135,255,.16), transparent 34%),
        rgba(8,13,25,.9);
}

.kishi-work-page-hero__visual {
    background:
        radial-gradient(circle at 18% 10%, rgba(177,115,255,.14), transparent 32%),
        radial-gradient(circle at 82% 76%, rgba(90,207,190,.13), transparent 34%),
        rgba(8,13,25,.9);
}

/* Consultation has no collaboration model. */
.kishi-contact-page-form [hidden] {
    display: none !important;
}

@media (max-width: 760px) {
    .kishi-code-hover > .kishi-code-hover__stream {
        inset: 10px 12px;
        font-size: 8.7px;
        opacity: 0;
    }

    .kishi-about-page-journey::after {
        display: none;
    }
}

@media (prefers-reduced-motion: reduce) {
    .kishi-code-hover--stream:hover .kishi-code-hover__stream span,
    .kishi-code-hover--stream:focus-within .kishi-code-hover__stream span,
    .kishi-about-page-journey::before,
    .kishi-about-page-journey::after,
    .kishi-about-page-journey__marker {
        animation: none !important;
    }

    .kishi-code-hover--stream:hover .kishi-code-hover__stream span,
    .kishi-code-hover--stream:focus-within .kishi-code-hover__stream span {
        width: 100%;
    }
}

/* =========================================================
   KISHI v1.13.0 — Home color motion + richer skill visuals
   ========================================================= */

:root {
    --kishi-home-blue: 92, 135, 255;
    --kishi-home-cyan: 90, 207, 190;
    --kishi-home-green: 112, 217, 142;
    --kishi-home-violet: 177, 115, 255;
    --kishi-home-pink: 238, 112, 176;
    --kishi-home-orange: 255, 151, 104;
    --kishi-home-yellow: 245, 198, 91;
}

/* Home sections: add visible color personality + subtle movement. */
body.home .kishi-card,
body.home .kishi-project-card,
body.home .kishi-feedback-card,
body.home .kishi-result-card,
body.home .kishi-service-card,
body.home .kishi-stat,
body.home .kishi-about__points li {
    transition: transform .32s ease, border-color .32s ease, box-shadow .32s ease, background .35s ease;
}

body.home #about .kishi-card,
body.home #skills .kishi-card,
body.home #services .kishi-card,
body.home #projects .kishi-card,
body.home #journey .kishi-card,
body.home #results .kishi-card,
body.home #testimonials .kishi-card,
body.home #resume .kishi-card {
    position: relative;
    overflow: hidden;
}

body.home #about .kishi-card::before,
body.home #skills .kishi-card::before,
body.home #services .kishi-card::before,
body.home #projects .kishi-card::before,
body.home #journey .kishi-card::before,
body.home #results .kishi-card::before,
body.home #testimonials .kishi-card::before,
body.home #resume .kishi-card::before {
    content: "";
    position: absolute;
    inset: auto -80px -80px auto;
    width: 220px;
    height: 220px;
    border-radius: 50%;
    filter: blur(50px);
    opacity: .16;
    pointer-events: none;
    animation: kishi-home-float-glow 9s ease-in-out infinite;
}

body.home #about .kishi-card::before { background: rgba(var(--kishi-home-blue), .65); }
body.home #skills .kishi-card::before { background: rgba(var(--kishi-home-violet), .65); }
body.home #services .kishi-card::before { background: rgba(var(--kishi-home-cyan), .65); }
body.home #projects .kishi-card::before { background: rgba(var(--kishi-home-green), .65); }
body.home #journey .kishi-card::before { background: rgba(var(--kishi-home-orange), .5); }
body.home #results .kishi-card::before { background: rgba(var(--kishi-home-pink), .55); }
body.home #testimonials .kishi-card::before { background: rgba(var(--kishi-home-yellow), .5); }
body.home #resume .kishi-card::before { background: rgba(var(--kishi-home-violet), .7); }

@keyframes kishi-home-float-glow {
    0%, 100% { transform: translate3d(0,0,0) scale(1); opacity: .14; }
    50% { transform: translate3d(-12px,-12px,0) scale(1.08); opacity: .22; }
}

/* About preview section on home. */
body.home .kishi-about__points li {
    position: relative;
    border-color: rgba(var(--kishi-home-blue), .18);
    background:
        radial-gradient(circle at 92% 12%, rgba(var(--kishi-home-blue), .09), transparent 40%),
        rgba(255,255,255,.02);
}

body.home .kishi-about__points li:nth-child(2) { border-color: rgba(var(--kishi-home-cyan), .18); }
body.home .kishi-about__points li:nth-child(2) { background: radial-gradient(circle at 92% 12%, rgba(var(--kishi-home-cyan), .09), transparent 40%), rgba(255,255,255,.02); }
body.home .kishi-about__points li:nth-child(3) { border-color: rgba(var(--kishi-home-green), .18); }
body.home .kishi-about__points li:nth-child(3) { background: radial-gradient(circle at 92% 12%, rgba(var(--kishi-home-green), .09), transparent 40%), rgba(255,255,255,.02); }
body.home .kishi-about__points li:nth-child(4) { border-color: rgba(var(--kishi-home-violet), .18); }
body.home .kishi-about__points li:nth-child(4) { background: radial-gradient(circle at 92% 12%, rgba(var(--kishi-home-violet), .09), transparent 40%), rgba(255,255,255,.02); }

body.home .kishi-about__points li:hover,
body.home .kishi-stat:hover,
body.home .kishi-service-card:hover,
body.home .kishi-project-card:hover,
body.home .kishi-result-card:hover,
body.home .kishi-feedback-card:hover {
    transform: translateY(-6px);
}

body.home .kishi-stat:nth-child(1),
body.home .kishi-stat:nth-child(1)::before,
body.home .kishi-service-card:nth-child(1),
body.home .kishi-project-card:nth-child(1),
body.home .kishi-result-card:nth-child(1),
body.home .kishi-feedback-card:nth-child(1) { --kishi-home-rgb: var(--kishi-home-blue); }
body.home .kishi-stat:nth-child(2),
body.home .kishi-service-card:nth-child(2),
body.home .kishi-project-card:nth-child(2),
body.home .kishi-result-card:nth-child(2),
body.home .kishi-feedback-card:nth-child(2) { --kishi-home-rgb: var(--kishi-home-cyan); }
body.home .kishi-stat:nth-child(3),
body.home .kishi-service-card:nth-child(3),
body.home .kishi-project-card:nth-child(3),
body.home .kishi-result-card:nth-child(3),
body.home .kishi-feedback-card:nth-child(3) { --kishi-home-rgb: var(--kishi-home-green); }
body.home .kishi-stat:nth-child(4),
body.home .kishi-service-card:nth-child(4) { --kishi-home-rgb: var(--kishi-home-violet); }
body.home .kishi-service-card:nth-child(5) { --kishi-home-rgb: var(--kishi-home-orange); }
body.home .kishi-service-card:nth-child(6) { --kishi-home-rgb: var(--kishi-home-pink); }

body.home .kishi-stat,
body.home .kishi-service-card,
body.home .kishi-project-card,
body.home .kishi-result-card,
body.home .kishi-feedback-card,
body.home .kishi-resume__paper,
body.home .kishi-journey__item {
    border-color: rgba(var(--kishi-home-rgb, 126,105,255), .2);
    background:
        radial-gradient(circle at 85% 8%, rgba(var(--kishi-home-rgb, 126,105,255), .11), transparent 42%),
        rgba(8,13,25,.9);
}

body.home .kishi-stat__value,
body.home .kishi-service-card__mark,
body.home .kishi-result-card__mark,
body.home .kishi-feedback-card__avatar,
body.home .kishi-journey__index,
body.home .kishi-project-card__meta strong {
    color: rgb(var(--kishi-home-rgb, 126,105,255));
}

body.home .kishi-stat:hover,
body.home .kishi-service-card:hover,
body.home .kishi-project-card:hover,
body.home .kishi-result-card:hover,
body.home .kishi-feedback-card:hover,
body.home .kishi-journey__item:hover {
    border-color: rgba(var(--kishi-home-rgb, 126,105,255), .48);
    box-shadow: 0 22px 52px rgba(0,0,0,.25), 0 0 36px rgba(var(--kishi-home-rgb, 126,105,255), .12);
}

body.home .kishi-service-card__arrow,
body.home .kishi-result-card__proof,
body.home .kishi-feedback-card__go {
    border-color: rgba(var(--kishi-home-rgb, 126,105,255), .24);
    background: rgba(var(--kishi-home-rgb, 126,105,255), .09);
}

body.home .kishi-project-card__media::after {
    background: linear-gradient(180deg, transparent, rgba(var(--kishi-home-rgb, 126,105,255), .08));
}

/* Skills: stronger code streams across the full card area. */
.kishi-code-hover > .kishi-code-hover__stream {
    inset: 10px 12px 12px;
    align-content: start;
    gap: 7px;
    padding-top: 8px;
    font-size: 10px;
    line-height: 1.4;
    opacity: 0;
    mask-image: linear-gradient(180deg, rgba(0,0,0,.9), rgba(0,0,0,.82) 64%, rgba(0,0,0,.65));
}

.kishi-code-hover__stream span {
    width: 0;
    opacity: .85;
}

.kishi-code-hover--stream:hover .kishi-code-hover__stream,
.kishi-code-hover--stream:focus-within .kishi-code-hover__stream {
    opacity: .18;
}

/* Non-coding skill cards: visual animated backgrounds. */
.kishi-skill-card { isolation: isolate; }
.kishi-skill-card > *:not(.kishi-skill-visual):not(.kishi-code-hover__stream) { position: relative; z-index: 2; }
.kishi-skill-visual {
    position: absolute;
    inset: 12px;
    z-index: 0;
    pointer-events: none;
    opacity: .13;
    transition: opacity .32s ease, transform .32s ease;
}

.kishi-skill-card:hover .kishi-skill-visual,
.kishi-skill-card:focus-within .kishi-skill-visual {
    opacity: .28;
    transform: scale(1.01);
}

.kishi-skill-visual span {
    position: absolute;
    display: block;
    border: 1px solid currentColor;
    border-radius: 12px;
    color: var(--kishi-skill-accent, #8d78ff);
    box-sizing: border-box;
}

.kishi-skill-visual .cursor {
    width: 10px;
    height: 18px;
    border-radius: 3px;
    background: currentColor;
    border: none;
    box-shadow: 0 0 10px currentColor;
    animation: kishi-skill-cursor 2.8s ease-in-out infinite;
}

@keyframes kishi-skill-cursor {
    0%, 100% { opacity: .32; transform: translate3d(0,0,0); }
    45% { opacity: .95; }
    50% { opacity: .12; }
    70% { opacity: .95; }
}

/* UI/UX */
.kishi-skill-visual--uiux .v1 { inset: 10px 18px auto; height: 88px; border-radius: 16px; animation: kishi-ui-draw 2.8s ease-in-out infinite; }
.kishi-skill-visual--uiux .v2 { top: 26px; right: 30px; width: 78px; height: 12px; border-radius: 999px; animation: kishi-fade-shift 2.8s ease-in-out infinite .2s; }
.kishi-skill-visual--uiux .v3 { top: 52px; right: 30px; width: 112px; height: 26px; animation: kishi-fade-shift 2.8s ease-in-out infinite .35s; }
.kishi-skill-visual--uiux .v4 { top: 84px; right: 30px; width: 70px; height: 14px; border-radius: 999px; animation: kishi-fade-shift 2.8s ease-in-out infinite .5s; }
.kishi-skill-visual--uiux .v5 { top: 116px; right: 18px; left: 18px; bottom: 12px; border-style: dashed; }
.kishi-skill-visual--uiux .v6 { display:none; }
.kishi-skill-visual--uiux .cursor { top: 58px; right: 36px; animation-name: kishi-ui-cursor; }

@keyframes kishi-ui-draw {
    0% { clip-path: inset(0 100% 100% 0); opacity: 0; }
    18% { clip-path: inset(0 0 100% 0); opacity: .9; }
    36% { clip-path: inset(0 0 0 0); opacity: 1; }
    100% { clip-path: inset(0 0 0 0); opacity: .95; }
}
@keyframes kishi-ui-cursor {
    0%,100% { transform: translate(0,0); opacity: .35; }
    30% { transform: translate(-22px, 18px); opacity: .95; }
    60% { transform: translate(16px, 46px); opacity: .95; }
}

/* Figma */
.kishi-skill-visual--figma .v1,
.kishi-skill-visual--figma .v2,
.kishi-skill-visual--figma .v3,
.kishi-skill-visual--figma .v4,
.kishi-skill-visual--figma .v5 { width: 42px; height: 42px; border-radius: 16px; }
.kishi-skill-visual--figma .v1 { top: 26px; right: 36px; animation: kishi-figma-shape 3.6s ease-in-out infinite; }
.kishi-skill-visual--figma .v2 { top: 26px; right: 84px; border-radius: 999px 999px 0 999px; animation: kishi-figma-shape 3.6s ease-in-out infinite .2s; }
.kishi-skill-visual--figma .v3 { top: 72px; right: 84px; border-radius: 999px 0 999px 999px; animation: kishi-figma-shape 3.6s ease-in-out infinite .35s; }
.kishi-skill-visual--figma .v4 { top: 72px; right: 36px; border-radius: 999px; animation: kishi-figma-shape 3.6s ease-in-out infinite .55s; }
.kishi-skill-visual--figma .v5 { top: 118px; right: 60px; border-radius: 999px 999px 999px 0; animation: kishi-figma-shape 3.6s ease-in-out infinite .75s; }
.kishi-skill-visual--figma .v6 { inset: 14px; border-style: dashed; border-color: color-mix(in srgb, currentColor 45%, transparent); }
.kishi-skill-visual--figma .cursor { top: 22px; right: 102px; animation-name: kishi-figma-cursor; }

@keyframes kishi-figma-shape {
    0%,100% { transform: translateY(0) scale(1); opacity: .75; }
    50% { transform: translateY(-6px) scale(1.08); opacity: 1; }
}
@keyframes kishi-figma-cursor {
    0%,100% { transform: translate(0,0); }
    30% { transform: translate(48px, 0); }
    60% { transform: translate(14px, 46px); }
}

/* Photoshop */
.kishi-skill-visual--photoshop .v1,
.kishi-skill-visual--photoshop .v2,
.kishi-skill-visual--photoshop .v3 { right: 18px; left: 18px; height: 32px; border-radius: 10px; }
.kishi-skill-visual--photoshop .v1 { top: 24px; background: rgba(255,255,255,.02); animation: kishi-layer-rise 3.2s ease-in-out infinite; }
.kishi-skill-visual--photoshop .v2 { top: 64px; background: rgba(255,255,255,.03); animation: kishi-layer-rise 3.2s ease-in-out infinite .25s; }
.kishi-skill-visual--photoshop .v3 { top: 104px; background: rgba(255,255,255,.04); animation: kishi-layer-rise 3.2s ease-in-out infinite .5s; }
.kishi-skill-visual--photoshop .v4 { top: 22px; left: 28px; width: 14px; height: 10px; border-radius: 999px; background: currentColor; border: none; box-shadow: 24px 0 0 rgba(255,255,255,.12), 48px 0 0 currentColor; animation: kishi-blink-toggle 2.8s ease-in-out infinite; }
.kishi-skill-visual--photoshop .v5 { top: 58px; right: 38px; width: 86px; height: 64px; border-style: dashed; animation: kishi-select-box 3s ease-in-out infinite; }
.kishi-skill-visual--photoshop .v6,
.kishi-skill-visual--photoshop .cursor { display:none; }

@keyframes kishi-layer-rise {
    0%,100% { transform: translateY(0); opacity: .55; }
    50% { transform: translateY(-6px); opacity: 1; }
}
@keyframes kishi-blink-toggle {
    0%,100% { opacity: .35; }
    50% { opacity: 1; }
}
@keyframes kishi-select-box {
    0%,100% { transform: translate(0,0) scale(1); }
    50% { transform: translate(-10px, 8px) scale(1.08); }
}

/* SEO */
.kishi-skill-visual--seo .v1 { top: 20px; right: 18px; left: 18px; height: 24px; border-radius: 999px; }
.kishi-skill-visual--seo .v2 { top: 24px; left: 30px; width: 70px; height: 6px; border: none; background: currentColor; opacity: .7; }
.kishi-skill-visual--seo .v3 { right: 24px; bottom: 26px; width: 132px; height: 72px; border: none; background:
linear-gradient(180deg, transparent 0 68%, currentColor 68% 70%, transparent 70%),
linear-gradient(90deg, transparent 0 9%, currentColor 9% 11%, transparent 11%),
linear-gradient(153deg, transparent 56%, currentColor 56% 58%, transparent 58%);
opacity: .9; animation: kishi-graph-rise 3.4s ease-in-out infinite; }
.kishi-skill-visual--seo .v4 { top: 64px; left: 26px; width: 42px; height: 18px; border-radius: 999px; animation: kishi-keyword-pop 3.4s ease-in-out infinite; }
.kishi-skill-visual--seo .v5 { top: 88px; left: 44px; width: 56px; height: 18px; border-radius: 999px; animation: kishi-keyword-pop 3.4s ease-in-out infinite .25s; }
.kishi-skill-visual--seo .v6 { top: 112px; left: 28px; width: 34px; height: 18px; border-radius: 999px; animation: kishi-keyword-pop 3.4s ease-in-out infinite .45s; }
.kishi-skill-visual--seo .cursor { display: none; }

@keyframes kishi-graph-rise {
    0%,100% { transform: translateY(4px); opacity: .6; }
    50% { transform: translateY(-4px); opacity: 1; }
}
@keyframes kishi-keyword-pop {
    0%,100% { transform: scale(.92); opacity: .32; }
    50% { transform: scale(1); opacity: .92; }
}

/* Branding / brand thinking */
.kishi-skill-visual--brand .v1 { inset: 18px; border-style: dashed; }
.kishi-skill-visual--brand .v2 { top: 36px; right: 28px; width: 48px; height: 48px; border-radius: 50%; animation: kishi-brand-build 3.6s ease-in-out infinite; }
.kishi-skill-visual--brand .v3 { top: 50px; right: 92px; width: 38px; height: 38px; border-radius: 12px; animation: kishi-brand-build 3.6s ease-in-out infinite .2s; }
.kishi-skill-visual--brand .v4 { top: 96px; right: 52px; width: 60px; height: 24px; border-radius: 999px; animation: kishi-brand-build 3.6s ease-in-out infinite .4s; }
.kishi-skill-visual--brand .v5 { top: 44px; left: 26px; width: 14px; height: 14px; border-radius: 50%; background: currentColor; border:none; box-shadow: 22px 0 0 color-mix(in srgb, currentColor 72%, transparent), 44px 0 0 color-mix(in srgb, currentColor 45%, transparent); }
.kishi-skill-visual--brand .v6,
.kishi-skill-visual--brand .cursor { display:none; }

@keyframes kishi-brand-build {
    0%,100% { transform: translateY(0) rotate(0); opacity: .4; }
    50% { transform: translateY(-5px) rotate(3deg); opacity: 1; }
}

/* Product */
.kishi-skill-visual--product .v1,
.kishi-skill-visual--product .v2,
.kishi-skill-visual--product .v3,
.kishi-skill-visual--product .v4 { width: 58px; height: 24px; border-radius: 999px; }
.kishi-skill-visual--product .v1 { top: 28px; right: 26px; }
.kishi-skill-visual--product .v2 { top: 28px; right: 106px; }
.kishi-skill-visual--product .v3 { top: 86px; right: 66px; }
.kishi-skill-visual--product .v4 { top: 142px; right: 106px; }
.kishi-skill-visual--product .v5 { top: 40px; right: 84px; width: 64px; height: 96px; border: none; background:
linear-gradient(currentColor,currentColor) 50% 0/1px 100% no-repeat,
linear-gradient(currentColor,currentColor) 0 16px/100% 1px no-repeat,
linear-gradient(currentColor,currentColor) 50% calc(100% - 16px)/100% 1px no-repeat;
opacity: .7; }
.kishi-skill-visual--product .v6,
.kishi-skill-visual--product .cursor { display:none; }

/* Systems / architecture */
.kishi-skill-visual--systems .v1,
.kishi-skill-visual--systems .v2,
.kishi-skill-visual--systems .v3,
.kishi-skill-visual--systems .v4 { width: 56px; height: 28px; border-radius: 10px; }
.kishi-skill-visual--systems .v1 { top: 32px; right: 26px; }
.kishi-skill-visual--systems .v2 { top: 32px; right: 118px; }
.kishi-skill-visual--systems .v3 { top: 104px; right: 26px; }
.kishi-skill-visual--systems .v4 { top: 104px; right: 118px; }
.kishi-skill-visual--systems .v5 { top: 46px; right: 82px; width: 92px; height: 74px; border: none; background:
linear-gradient(currentColor,currentColor) 50% 0/1px 100% no-repeat,
linear-gradient(currentColor,currentColor) 0 50%/100% 1px no-repeat; opacity: .7; }
.kishi-skill-visual--systems .v6,
.kishi-skill-visual--systems .cursor { display:none; }

/* Digital Systems / CRM / Analytics / Community / Events as one lively system card */
.kishi-skill-visual--custom-systems .v1,
.kishi-skill-visual--custom-systems .v2,
.kishi-skill-visual--custom-systems .v3 { width: 54px; height: 28px; border-radius: 10px; }
.kishi-skill-visual--custom-systems .v1 { top: 28px; right: 28px; animation: kishi-lead-shift 3.6s ease-in-out infinite; }
.kishi-skill-visual--custom-systems .v2 { top: 76px; right: 84px; animation: kishi-lead-shift 3.6s ease-in-out infinite .25s; }
.kishi-skill-visual--custom-systems .v3 { top: 124px; right: 138px; animation: kishi-lead-shift 3.6s ease-in-out infinite .5s; }
.kishi-skill-visual--custom-systems .v4 { top: 36px; left: 26px; width: 48px; height: 48px; border-radius: 50%; box-shadow: 34px 10px 0 -10px currentColor, 20px 44px 0 -10px currentColor; }
.kishi-skill-visual--custom-systems .v5 { right: 24px; bottom: 18px; width: 124px; height: 38px; border: none; background:
linear-gradient(180deg, transparent 0 56%, currentColor 56% 58%, transparent 58%),
linear-gradient(90deg, currentColor 18%, transparent 18% 34%, currentColor 34% 52%, transparent 52% 70%, currentColor 70% 88%, transparent 88%); opacity: .7; }
.kishi-skill-visual--custom-systems .v6 { top: 24px; right: 24px; width: 34px; height: 34px; border-radius: 6px; transform: rotate(45deg); }
.kishi-skill-visual--custom-systems .cursor { display:none; }
@keyframes kishi-lead-shift {
    0%,100% { transform: translateX(0); opacity: .4; }
    50% { transform: translateX(-10px); opacity: 1; }
}

/* Database / MySQL */
.kishi-skill-visual--mysql .v1,
.kishi-skill-visual--mysql .v2,
.kishi-skill-visual--mysql .v3 { right: 32px; left: 32px; height: 26px; border-radius: 50%; }
.kishi-skill-visual--mysql .v1 { top: 34px; }
.kishi-skill-visual--mysql .v2 { top: 78px; }
.kishi-skill-visual--mysql .v3 { top: 122px; }
.kishi-skill-visual--mysql .v4 { top: 48px; right: 32px; left: 32px; height: 88px; border-top: none; border-bottom: none; border-radius: 0; }
.kishi-skill-visual--mysql .v5 { top: 44px; left: 26px; width: 94px; height: 72px; border: none; background:
linear-gradient(currentColor,currentColor) 0 0/100% 1px no-repeat,
linear-gradient(currentColor,currentColor) 0 50%/100% 1px no-repeat,
linear-gradient(currentColor,currentColor) 0 100%/100% 1px no-repeat,
linear-gradient(currentColor,currentColor) 0 0/1px 100% no-repeat,
linear-gradient(currentColor,currentColor) 50% 0/1px 100% no-repeat,
linear-gradient(currentColor,currentColor) 100% 0/1px 100% no-repeat; opacity: .7; }
.kishi-skill-visual--mysql .v6,
.kishi-skill-visual--mysql .cursor { display:none; }

/* PWA / Mobile */
.kishi-skill-visual--pwa .v1 { top: 16px; right: 44px; width: 96px; height: 162px; border-radius: 22px; }
.kishi-skill-visual--pwa .v2 { top: 32px; right: 58px; width: 68px; height: 14px; border-radius: 999px; }
.kishi-skill-visual--pwa .v3 { top: 58px; right: 56px; width: 74px; height: 34px; animation: kishi-mobile-slide 3.2s ease-in-out infinite; }
.kishi-skill-visual--pwa .v4 { top: 100px; right: 56px; width: 74px; height: 22px; animation: kishi-mobile-slide 3.2s ease-in-out infinite .2s; }
.kishi-skill-visual--pwa .v5 { top: 146px; right: 72px; width: 42px; height: 18px; border-radius: 999px; }
.kishi-skill-visual--pwa .v6 { top: 18px; left: 24px; width: 22px; height: 22px; border-radius: 6px; transform: rotate(45deg); }
.kishi-skill-visual--pwa .cursor { display:none; }
@keyframes kishi-mobile-slide {
    0%,100% { transform: translateY(0); opacity: .42; }
    50% { transform: translateY(-6px); opacity: 1; }
}

/* E-commerce */
.kishi-skill-visual--ecommerce .v1 { top: 36px; right: 24px; width: 64px; height: 74px; border-radius: 14px; }
.kishi-skill-visual--ecommerce .v2 { top: 62px; right: 108px; width: 40px; height: 30px; border-radius: 10px; }
.kishi-skill-visual--ecommerce .v3 { top: 138px; right: 142px; width: 70px; height: 26px; border-radius: 999px; }
.kishi-skill-visual--ecommerce .v4 { top: 74px; right: 82px; width: 90px; height: 62px; border: none; background:
linear-gradient(currentColor,currentColor) 50% 20%/1px 60% no-repeat,
linear-gradient(currentColor,currentColor) 10% 50%/80% 1px no-repeat,
linear-gradient(currentColor,currentColor) 65% 80%/34% 1px no-repeat; opacity: .65; }
.kishi-skill-visual--ecommerce .v5 { top: 46px; left: 28px; width: 52px; height: 28px; border-radius: 999px; }
.kishi-skill-visual--ecommerce .v6,
.kishi-skill-visual--ecommerce .cursor { display:none; }

/* Dreamweaver / Graphic layout tool */
.kishi-skill-visual--dreamweaver .v1 { inset: 24px 18px 54px; border-style: dashed; }
.kishi-skill-visual--dreamweaver .v2 { top: 40px; right: 32px; width: 78px; height: 42px; }
.kishi-skill-visual--dreamweaver .v3 { top: 90px; right: 32px; width: 98px; height: 18px; border-radius: 999px; }
.kishi-skill-visual--dreamweaver .v4 { top: 120px; left: 26px; width: 46px; height: 32px; border-radius: 10px; }
.kishi-skill-visual--dreamweaver .v5 { top: 120px; left: 82px; width: 64px; height: 32px; border-radius: 10px; }
.kishi-skill-visual--dreamweaver .v6,
.kishi-skill-visual--dreamweaver .cursor { display:none; }

/* Generic fallback visual. */
.kishi-skill-visual--custom .v1,
.kishi-skill-visual--custom .v2,
.kishi-skill-visual--custom .v3 { border-radius: 999px; }
.kishi-skill-visual--custom .v1 { top: 30px; right: 36px; width: 112px; height: 16px; }
.kishi-skill-visual--custom .v2 { top: 62px; right: 54px; width: 76px; height: 16px; }
.kishi-skill-visual--custom .v3 { top: 94px; right: 26px; width: 124px; height: 16px; }
.kishi-skill-visual--custom .v4 { inset: 132px 18px 16px; }
.kishi-skill-visual--custom .v5,
.kishi-skill-visual--custom .v6,
.kishi-skill-visual--custom .cursor { display:none; }

/* About page journey alignment fix. */
.kishi-about-page-journey {
    justify-content: center;
    justify-items: center;
    margin-inline: auto;
}
.kishi-about-page-journey__item {
    width: 100%;
    max-width: 285px;
}

@media (min-width: 1101px) {
    .kishi-about-page-journey {
        grid-template-columns: repeat(4, minmax(220px, 285px));
    }
}

@media (max-width: 1100px) {
    .kishi-about-page-journey {
        justify-items: stretch;
    }
    .kishi-about-page-journey__item {
        max-width: none;
    }
}

@media (prefers-reduced-motion: reduce) {
    body.home #about .kishi-card::before,
    body.home #skills .kishi-card::before,
    body.home #services .kishi-card::before,
    body.home #projects .kishi-card::before,
    body.home #journey .kishi-card::before,
    body.home #results .kishi-card::before,
    body.home #testimonials .kishi-card::before,
    body.home #resume .kishi-card::before,
    .kishi-skill-visual span,
    .kishi-skill-visual .cursor,
    .kishi-code-hover__stream span {
        animation: none !important;
    }
}

/* =========================================================
   KISHI v1.14.0 — Home Journey motion + About Journey fix
   ========================================================= */

/* Home / Journey: each step gets its own accent and a moving route. */
body.home .kishi-journey-section {
    --kishi-journey-route-a: 92, 135, 255;
    --kishi-journey-route-b: 90, 207, 190;
    --kishi-journey-route-c: 112, 217, 142;
    --kishi-journey-route-d: 177, 115, 255;
    --kishi-journey-route-e: 238, 112, 176;
    overflow: hidden;
    background:
        radial-gradient(circle at 8% 10%, rgba(var(--kishi-journey-route-a), .10), transparent 24%),
        radial-gradient(circle at 92% 88%, rgba(var(--kishi-journey-route-d), .10), transparent 26%),
        linear-gradient(180deg, rgba(14,20,36,.92), rgba(9,14,27,.96));
}

body.home .kishi-journey {
    position: relative;
    gap: 12px;
    padding-top: 14px;
    isolation: isolate;
}

body.home .kishi-journey::before {
    top: 48px;
    right: 7%;
    left: 7%;
    height: 2px;
    border-radius: 999px;
    background: linear-gradient(
        90deg,
        transparent 0%,
        rgba(var(--kishi-journey-route-a), .7) 12%,
        rgba(var(--kishi-journey-route-b), .75) 32%,
        rgba(var(--kishi-journey-route-c), .78) 50%,
        rgba(var(--kishi-journey-route-d), .76) 70%,
        rgba(var(--kishi-journey-route-e), .7) 88%,
        transparent 100%
    );
    background-size: 180% 100%;
    box-shadow: 0 0 22px rgba(112,217,142,.11), 0 0 34px rgba(177,115,255,.08);
    animation: kishi-home-journey-route 5.5s ease-in-out infinite;
}

body.home .kishi-journey::after {
    content: "";
    position: absolute;
    z-index: 0;
    top: 45px;
    right: 8%;
    width: 50px;
    height: 8px;
    border-radius: 999px;
    background: rgba(var(--kishi-journey-route-a), .92);
    filter: blur(5px);
    box-shadow: 0 0 20px rgba(var(--kishi-journey-route-a), .55);
    animation: kishi-home-journey-scan 5.2s ease-in-out infinite;
    pointer-events: none;
}

body.home .kishi-journey__item:nth-child(1) { --kishi-home-rgb: var(--kishi-journey-route-a); --kishi-journey-delay: 0s; }
body.home .kishi-journey__item:nth-child(2) { --kishi-home-rgb: var(--kishi-journey-route-b); --kishi-journey-delay: .18s; }
body.home .kishi-journey__item:nth-child(3) { --kishi-home-rgb: var(--kishi-journey-route-c); --kishi-journey-delay: .36s; }
body.home .kishi-journey__item:nth-child(4) { --kishi-home-rgb: var(--kishi-journey-route-d); --kishi-journey-delay: .54s; }
body.home .kishi-journey__item:nth-child(5) { --kishi-home-rgb: var(--kishi-journey-route-e); --kishi-journey-delay: .72s; }

body.home .kishi-journey__item {
    z-index: 2;
    min-height: 250px;
    padding: 16px 16px 20px;
    border: 1px solid rgba(var(--kishi-home-rgb,126,105,255), .20);
    border-radius: 22px;
    background:
        radial-gradient(circle at 50% -10%, rgba(var(--kishi-home-rgb,126,105,255), .13), transparent 38%),
        linear-gradient(180deg, rgba(13,19,34,.90), rgba(8,13,25,.94));
    box-shadow: inset 0 1px 0 rgba(255,255,255,.02);
    overflow: visible;
    transform: translateY(0);
    animation: kishi-home-journey-breathe 4.6s ease-in-out infinite;
    animation-delay: var(--kishi-journey-delay, 0s);
}

body.home .kishi-journey__item::after {
    content: "";
    position: absolute;
    right: 18px;
    left: 18px;
    bottom: 0;
    height: 2px;
    border-radius: 999px;
    background: linear-gradient(90deg, transparent, rgba(var(--kishi-home-rgb,126,105,255), .95), transparent);
    transform: scaleX(.22);
    opacity: .45;
    transition: transform .3s ease, opacity .3s ease;
}

body.home .kishi-journey__marker {
    position: relative;
    z-index: 3;
    min-height: 72px;
}

body.home .kishi-journey__index {
    color: rgb(var(--kishi-home-rgb,126,105,255));
    border-color: rgba(var(--kishi-home-rgb,126,105,255), .56);
    background:
        radial-gradient(circle at 50% 32%, rgba(var(--kishi-home-rgb,126,105,255), .25), transparent 48%),
        #0d1324;
    box-shadow:
        0 0 0 8px #0b1020,
        0 0 0 9px rgba(var(--kishi-home-rgb,126,105,255), .12),
        0 0 30px rgba(var(--kishi-home-rgb,126,105,255), .18);
    animation: kishi-home-journey-marker 3.4s ease-in-out infinite;
    animation-delay: var(--kishi-journey-delay, 0s);
}

body.home .kishi-journey__kicker {
    color: rgb(var(--kishi-home-rgb,126,105,255));
}

body.home .kishi-journey__item:hover {
    transform: translateY(-8px);
    border-color: rgba(var(--kishi-home-rgb,126,105,255), .56);
    background:
        radial-gradient(circle at 50% -5%, rgba(var(--kishi-home-rgb,126,105,255), .23), transparent 44%),
        linear-gradient(180deg, rgba(15,22,39,.96), rgba(8,13,25,.98));
    box-shadow: 0 22px 52px rgba(0,0,0,.26), 0 0 36px rgba(var(--kishi-home-rgb,126,105,255), .13);
    animation-play-state: paused;
}

body.home .kishi-journey__item:hover::after {
    transform: scaleX(1);
    opacity: 1;
}

@keyframes kishi-home-journey-route {
    0%,100% { background-position: 0% 50%; opacity: .58; }
    50% { background-position: 100% 50%; opacity: .95; }
}

@keyframes kishi-home-journey-scan {
    0%,7% { right: 8%; opacity: 0; background: rgba(var(--kishi-journey-route-a), .92); }
    18% { opacity: 1; }
    36% { background: rgba(var(--kishi-journey-route-b), .92); }
    52% { background: rgba(var(--kishi-journey-route-c), .92); }
    68% { background: rgba(var(--kishi-journey-route-d), .92); }
    82% { opacity: 1; background: rgba(var(--kishi-journey-route-e), .92); }
    93%,100% { right: calc(92% - 50px); opacity: 0; }
}

@keyframes kishi-home-journey-breathe {
    0%,100% { box-shadow: inset 0 1px 0 rgba(255,255,255,.02), 0 0 0 rgba(var(--kishi-home-rgb,126,105,255), 0); }
    50% { box-shadow: inset 0 1px 0 rgba(255,255,255,.03), 0 0 25px rgba(var(--kishi-home-rgb,126,105,255), .055); }
}

@keyframes kishi-home-journey-marker {
    0%,100% { transform: scale(1); }
    50% { transform: scale(1.055); }
}

/* About / Journey: fix clipped markers and guarantee complete, centered content. */
.kishi-about-page-section:has(.kishi-about-page-journey) {
    overflow: visible;
}

.kishi-about-page-section:has(.kishi-about-page-journey) .kishi-container {
    overflow: visible;
}

.kishi-about-page-journey {
    width: min(100%, 1180px);
    margin: 0 auto;
    padding: 48px 0 4px;
    justify-content: center;
    justify-items: center;
    align-items: stretch;
    overflow: visible !important;
}

.kishi-about-page-journey::before {
    top: 48px;
    right: 6%;
    left: 6%;
}

.kishi-about-page-journey::after {
    top: 44px;
}

.kishi-about-page-journey__item {
    width: 100%;
    max-width: 280px;
    min-height: 250px;
    padding: 30px 20px 24px;
    overflow: visible !important;
}

.kishi-about-page-journey__marker {
    position: relative;
    z-index: 5;
    width: 52px;
    height: 52px;
    margin: -57px auto 22px;
    flex: 0 0 auto;
    overflow: visible;
}

.kishi-about-page-journey__item h3,
.kishi-about-page-journey__item p {
    position: relative;
    z-index: 2;
}

@media (min-width: 1101px) {
    .kishi-about-page-journey {
        grid-template-columns: repeat(4, minmax(0, 280px));
        gap: 16px;
    }
}

@media (max-width: 1100px) {
    .kishi-about-page-journey {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        padding-top: 28px;
        justify-items: stretch;
    }

    .kishi-about-page-journey__item {
        max-width: none;
        margin-top: 28px;
        padding-top: 30px;
    }

    .kishi-about-page-journey__marker {
        margin-top: -57px;
    }
}

@media (max-width: 720px) {
    body.home .kishi-journey__item {
        min-height: 0;
        animation: none;
    }

    body.home .kishi-journey::after {
        display: none;
    }

    .kishi-about-page-journey {
        grid-template-columns: 1fr;
        gap: 18px;
        padding-top: 22px;
    }

    .kishi-about-page-journey__item {
        margin-top: 28px;
        min-height: 0;
        padding: 30px 18px 22px;
    }
}

@media (prefers-reduced-motion: reduce) {
    body.home .kishi-journey::before,
    body.home .kishi-journey::after,
    body.home .kishi-journey__item,
    body.home .kishi-journey__index {
        animation: none !important;
    }
}

/* =========================================================
   KISHI v1.15.0 — Articles / SEO content system
   ========================================================= */

body.home #articles .kishi-card {
    position: relative;
    overflow: hidden;
    border-color: rgba(245, 198, 91, .2);
    background:
        radial-gradient(circle at 92% 5%, rgba(245, 198, 91, .1), transparent 30%),
        radial-gradient(circle at 4% 90%, rgba(90, 207, 190, .08), transparent 28%),
        rgba(8, 13, 25, .9);
}

body.home #articles .kishi-card::before {
    content: "";
    position: absolute;
    left: -70px;
    bottom: -90px;
    width: 230px;
    height: 230px;
    border-radius: 50%;
    background: rgba(245, 198, 91, .5);
    filter: blur(55px);
    opacity: .15;
    pointer-events: none;
    animation: kishi-home-float-glow 9s ease-in-out infinite reverse;
}

.kishi-home-articles-section__footer {
    display: flex;
    justify-content: center;
    margin-top: 24px;
}

.kishi-articles-grid {
    display: grid;
    gap: 18px;
}

.kishi-articles-grid--home,
.kishi-articles-grid--archive,
.kishi-articles-grid--related {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.kishi-article-card {
    --kishi-article-rgb: 245, 198, 91;
    position: relative;
    overflow: hidden;
    min-width: 0;
    border: 1px solid rgba(var(--kishi-article-rgb), .18);
    border-radius: 22px;
    background:
        radial-gradient(circle at 92% 5%, rgba(var(--kishi-article-rgb), .1), transparent 38%),
        linear-gradient(180deg, rgba(16,23,42,.96), rgba(8,13,25,.97));
    transition: transform .32s ease, border-color .32s ease, box-shadow .32s ease, background .32s ease;
}

.kishi-article-card:nth-child(3n+2) { --kishi-article-rgb: 90, 207, 190; }
.kishi-article-card:nth-child(3n+3) { --kishi-article-rgb: 177, 115, 255; }

.kishi-article-card:hover {
    transform: translateY(-7px);
    border-color: rgba(var(--kishi-article-rgb), .48);
    background:
        radial-gradient(circle at 92% 5%, rgba(var(--kishi-article-rgb), .2), transparent 42%),
        linear-gradient(180deg, rgba(18,27,48,.98), rgba(8,13,25,.98));
    box-shadow: 0 24px 58px rgba(0,0,0,.28), 0 0 36px rgba(var(--kishi-article-rgb), .1);
}

.kishi-article-card::after {
    content: "";
    position: absolute;
    right: 22px;
    left: 22px;
    bottom: 0;
    height: 2px;
    border-radius: 999px;
    background: linear-gradient(90deg, transparent, rgba(var(--kishi-article-rgb), .95), transparent);
    transform: scaleX(.14);
    opacity: .36;
    transition: transform .32s ease, opacity .32s ease;
}

.kishi-article-card:hover::after {
    transform: scaleX(1);
    opacity: 1;
}

.kishi-article-card__media {
    position: relative;
    display: block;
    overflow: hidden;
    aspect-ratio: 16 / 9;
    background:
        radial-gradient(circle at 50% 45%, rgba(var(--kishi-article-rgb), .22), transparent 45%),
        #0a1020;
}

.kishi-article-card__media::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, transparent 48%, rgba(7,11,22,.52));
    pointer-events: none;
}

.kishi-article-card__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .55s cubic-bezier(.2,.7,.2,1), filter .45s ease;
}

.kishi-article-card:hover .kishi-article-card__media img {
    transform: scale(1.045);
    filter: saturate(1.06) contrast(1.02);
}

.kishi-article-card__placeholder {
    position: absolute;
    inset: 0;
    display: grid;
    place-items: center;
    color: rgba(var(--kishi-article-rgb), .58);
    font-size: 58px;
    font-weight: 950;
    letter-spacing: -.05em;
}

.kishi-article-card__body {
    position: relative;
    z-index: 2;
    padding: 20px 20px 22px;
}

.kishi-article-card__meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 7px 12px;
    margin-bottom: 10px;
    color: #7f8ba3;
    font-size: 10.5px;
    font-weight: 700;
}

.kishi-article-card__meta > * + *::before {
    content: "•";
    margin-inline-end: 10px;
    color: rgba(var(--kishi-article-rgb), .62);
}

.kishi-article-card__category,
.kishi-single-article__category {
    display: inline-flex;
    align-items: center;
    min-height: 27px;
    padding: 4px 10px;
    margin-bottom: 11px;
    border: 1px solid rgba(var(--kishi-article-rgb, 126,105,255), .26);
    border-radius: 999px;
    background: rgba(var(--kishi-article-rgb, 126,105,255), .08);
    color: rgb(var(--kishi-article-rgb, 126,105,255));
    font-size: 10px;
    font-weight: 900;
}

.kishi-article-card h2,
.kishi-article-card h3 {
    margin: 0 0 10px;
    color: #f4f6ff;
    font-size: 18px;
    line-height: 1.65;
}

.kishi-article-card h2 a,
.kishi-article-card h3 a {
    color: inherit;
    text-decoration: none;
}

.kishi-article-card__body > p {
    margin: 0;
    color: #9aa5ba;
    font-size: 12px;
    line-height: 1.95;
}

.kishi-article-card__read {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    margin-top: 16px;
    color: rgb(var(--kishi-article-rgb));
    font-size: 11px;
    font-weight: 900;
    text-decoration: none;
}

.kishi-article-card__read span {
    transition: transform .25s ease;
}

.kishi-article-card:hover .kishi-article-card__read span {
    transform: translateX(-4px);
}

.kishi-articles-empty {
    display: flex;
    align-items: center;
    gap: 18px;
    min-height: 120px;
    padding: 24px;
    border: 1px dashed rgba(245,198,91,.28);
    border-radius: 20px;
    background: rgba(245,198,91,.035);
}

.kishi-articles-empty > span {
    display: grid;
    place-items: center;
    flex: 0 0 48px;
    width: 48px;
    height: 48px;
    border: 1px solid rgba(245,198,91,.28);
    border-radius: 16px;
    color: #f5c65b;
    background: rgba(245,198,91,.07);
    box-shadow: 0 0 24px rgba(245,198,91,.06);
}

.kishi-articles-empty h2,
.kishi-articles-empty h3 { margin: 0 0 5px; color: #f4f6ff; }
.kishi-articles-empty p { margin: 0; color: #929db2; line-height: 1.85; }

/* Articles archive. */
.kishi-articles-archive-hero {
    position: relative;
    overflow: hidden;
    padding: 42px 0 64px;
    border-bottom: 1px solid rgba(255,255,255,.05);
    background:
        radial-gradient(circle at 82% 18%, rgba(245,198,91,.14), transparent 28%),
        radial-gradient(circle at 15% 78%, rgba(90,207,190,.1), transparent 28%),
        linear-gradient(180deg, rgba(9,14,27,.95), #070b16);
}

.kishi-articles-archive-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    opacity: .14;
    pointer-events: none;
    background-image:
        linear-gradient(rgba(255,255,255,.03) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.03) 1px, transparent 1px);
    background-size: 42px 42px;
    mask-image: linear-gradient(180deg, rgba(0,0,0,.75), transparent 90%);
}

.kishi-articles-archive-hero__grid {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: minmax(0,1.35fr) minmax(320px,.65fr);
    align-items: end;
    gap: 36px;
    margin-top: 38px;
}

.kishi-articles-archive-hero h1 {
    max-width: 820px;
    margin: 0;
    color: #fff;
    font-size: clamp(38px, 5vw, 68px);
    line-height: 1.45;
    letter-spacing: -.025em;
}

.kishi-articles-archive-hero__grid > div:first-child > p:last-child {
    max-width: 710px;
    margin: 18px 0 0;
    color: #a1abc0;
    font-size: 14px;
    line-height: 2;
}

.kishi-articles-archive-hero__stats {
    display: grid;
    gap: 10px;
}

.kishi-articles-archive-hero__stats span {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    min-height: 64px;
    padding: 13px 16px;
    border: 1px solid rgba(245,198,91,.16);
    border-radius: 16px;
    background: rgba(12,18,33,.72);
    color: #8e99ae;
    font-size: 11px;
    transition: transform .28s ease, border-color .28s ease, box-shadow .28s ease;
}

.kishi-articles-archive-hero__stats span:nth-child(2) { border-color: rgba(90,207,190,.18); }
.kishi-articles-archive-hero__stats span:nth-child(3) { border-color: rgba(177,115,255,.18); }
.kishi-articles-archive-hero__stats span:hover {
    transform: translateX(-5px);
    border-color: rgba(245,198,91,.46);
    box-shadow: 0 0 28px rgba(245,198,91,.08);
}

.kishi-articles-archive-hero__stats strong {
    color: #f5c65b;
    font-size: 20px;
}
.kishi-articles-archive-hero__stats span:nth-child(2) strong { color: #5acfbe; }
.kishi-articles-archive-hero__stats span:nth-child(3) strong { color: #b173ff; }

.kishi-articles-archive-section {
    padding: 58px 0 90px;
}

.kishi-articles-pagination {
    display: flex;
    justify-content: center;
    margin-top: 36px;
}

.kishi-articles-pagination .nav-links {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.kishi-articles-pagination .page-numbers {
    display: grid;
    place-items: center;
    min-width: 42px;
    min-height: 42px;
    padding: 6px 12px;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 12px;
    background: rgba(255,255,255,.025);
    color: #adb6c9;
    text-decoration: none;
}

.kishi-articles-pagination .page-numbers.current,
.kishi-articles-pagination .page-numbers:hover {
    border-color: rgba(245,198,91,.4);
    background: rgba(245,198,91,.08);
    color: #f5c65b;
}

/* Single article. */
.kishi-single-article__hero {
    position: relative;
    overflow: hidden;
    padding: 40px 0 0;
    background:
        radial-gradient(circle at 84% 15%, rgba(245,198,91,.12), transparent 30%),
        radial-gradient(circle at 10% 72%, rgba(177,115,255,.09), transparent 28%);
}

.kishi-single-article__hero-content {
    max-width: 900px;
    margin: 46px auto 34px;
    text-align: center;
}

.kishi-single-article__hero-content h1 {
    margin: 0;
    color: #fff;
    font-size: clamp(38px, 5.4vw, 72px);
    line-height: 1.45;
    letter-spacing: -.03em;
}

.kishi-single-article__category {
    --kishi-article-rgb: 245, 198, 91;
    margin-bottom: 16px;
}

.kishi-single-article__lead {
    max-width: 760px;
    margin: 18px auto 0;
    color: #a9b2c5;
    font-size: 15px;
    line-height: 2;
}

.kishi-single-article__meta {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 8px 18px;
    margin-top: 22px;
    color: #7f8aa0;
    font-size: 11px;
    font-weight: 700;
}

.kishi-single-article__meta > * + *::before {
    content: "•";
    margin-inline-end: 17px;
    color: rgba(245,198,91,.62);
}

.kishi-single-article__cover {
    position: relative;
    z-index: 2;
    overflow: hidden;
    max-width: 1080px;
    margin: 0 auto -90px;
    aspect-ratio: 16 / 8.5;
    border: 1px solid rgba(245,198,91,.18);
    border-radius: 28px;
    background: #0a1020;
    box-shadow: 0 30px 80px rgba(0,0,0,.35), 0 0 50px rgba(245,198,91,.05);
}

.kishi-single-article__cover img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.kishi-single-article__body-wrap {
    padding: 58px 0 70px;
    background: linear-gradient(180deg, rgba(10,15,28,.92), #070b16 210px);
}

.kishi-single-article__body-wrap--with-cover {
    padding-top: 138px;
}

.kishi-single-article__layout {
    display: grid;
    grid-template-columns: minmax(0,780px) minmax(240px,300px);
    justify-content: center;
    align-items: start;
    gap: 42px;
}

.kishi-single-article__content {
    min-width: 0;
    color: #c3cada;
    font-size: 15px;
    line-height: 2.15;
}

.kishi-single-article__content > :first-child { margin-top: 0; }
.kishi-single-article__content > :last-child { margin-bottom: 0; }

.kishi-single-article__content h2,
.kishi-single-article__content h3,
.kishi-single-article__content h4 {
    color: #f6f7ff;
    line-height: 1.65;
    scroll-margin-top: 110px;
}
.kishi-single-article__content h2 { margin: 2.2em 0 .75em; font-size: 28px; }
.kishi-single-article__content h3 { margin: 1.9em 0 .65em; font-size: 22px; }
.kishi-single-article__content h4 { margin: 1.6em 0 .6em; font-size: 18px; }

.kishi-single-article__content p,
.kishi-single-article__content ul,
.kishi-single-article__content ol,
.kishi-single-article__content blockquote,
.kishi-single-article__content pre,
.kishi-single-article__content table,
.kishi-single-article__content figure {
    margin-top: 0;
    margin-bottom: 1.45em;
}

.kishi-single-article__content a {
    color: #9d8cff;
    text-underline-offset: 4px;
}

.kishi-single-article__content img {
    max-width: 100%;
    height: auto;
    border-radius: 18px;
}

.kishi-single-article__content figure {
    max-width: 100%;
}

.kishi-single-article__content figcaption {
    margin-top: 8px;
    color: #758096;
    font-size: 11px;
    text-align: center;
}

.kishi-single-article__content blockquote {
    position: relative;
    padding: 22px 24px;
    border: 1px solid rgba(177,115,255,.18);
    border-right: 3px solid #b173ff;
    border-radius: 18px;
    background: rgba(177,115,255,.045);
    color: #d6d9e6;
}

.kishi-single-article__content pre,
.kishi-single-article__content code {
    direction: ltr;
    text-align: left;
    font-family: Consolas, "Courier New", monospace;
}

.kishi-single-article__content pre {
    overflow: auto;
    padding: 20px;
    border: 1px solid rgba(90,207,190,.15);
    border-radius: 16px;
    background: #060a13;
    color: #a9e8dc;
    line-height: 1.7;
}

.kishi-single-article__content :not(pre) > code {
    padding: 2px 6px;
    border-radius: 6px;
    background: rgba(90,207,190,.08);
    color: #84ded0;
}

.kishi-single-article__content table {
    width: 100%;
    border-collapse: collapse;
    overflow: hidden;
    border-radius: 14px;
}

.kishi-single-article__content th,
.kishi-single-article__content td {
    padding: 12px 14px;
    border: 1px solid rgba(255,255,255,.07);
    text-align: right;
}

.kishi-single-article__content th {
    background: rgba(126,105,255,.08);
    color: #eef0fa;
}

.kishi-single-article__aside {
    position: sticky;
    top: 110px;
    display: grid;
    gap: 14px;
}

.kishi-single-article__aside-card,
.kishi-single-article__tags {
    padding: 20px;
    border: 1px solid rgba(255,255,255,.075);
    border-radius: 20px;
    background:
        radial-gradient(circle at 90% 5%, rgba(177,115,255,.1), transparent 42%),
        rgba(10,15,28,.88);
}

.kishi-single-article__aside-mark {
    display: grid;
    place-items: center;
    width: 42px;
    height: 42px;
    margin-bottom: 13px;
    border: 1px solid rgba(177,115,255,.28);
    border-radius: 14px;
    background: rgba(177,115,255,.08);
    color: #b173ff;
    font-size: 18px;
    font-weight: 950;
}

.kishi-single-article__aside-card strong,
.kishi-single-article__tags > strong {
    display: block;
    color: #f3f5ff;
    font-size: 13px;
}

.kishi-single-article__aside-card p {
    margin: 8px 0 0;
    color: #8e99ad;
    font-size: 11.5px;
    line-height: 1.9;
}

.kishi-single-article__tags > div {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    margin-top: 12px;
}

.kishi-single-article__tags span {
    padding: 5px 9px;
    border: 1px solid rgba(90,207,190,.14);
    border-radius: 999px;
    background: rgba(90,207,190,.04);
    color: #8daea9;
    font-size: 9px;
}

.kishi-related-articles {
    padding: 62px 0 90px;
    border-top: 1px solid rgba(255,255,255,.05);
}

.kishi-related-articles__head {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 24px;
}

.kishi-related-articles__head h2 {
    margin: 3px 0 0;
    color: #f5f7ff;
    font-size: 25px;
}

.kishi-related-articles__head > a {
    color: #a99cff;
    font-size: 11px;
    font-weight: 900;
    text-decoration: none;
}

.kishi-article-card--compact .kishi-article-card__body { padding: 16px 18px 18px; }
.kishi-article-card--compact h3 { font-size: 15px; margin: 0; }

@media (max-width: 1050px) {
    .kishi-articles-grid--home,
    .kishi-articles-grid--archive,
    .kishi-articles-grid--related {
        grid-template-columns: repeat(2, minmax(0,1fr));
    }

    .kishi-articles-archive-hero__grid,
    .kishi-single-article__layout {
        grid-template-columns: 1fr;
    }

    .kishi-articles-archive-hero__stats {
        grid-template-columns: repeat(3,minmax(0,1fr));
    }

    .kishi-single-article__aside {
        position: static;
        grid-template-columns: repeat(2,minmax(0,1fr));
    }
}

@media (max-width: 720px) {
    .kishi-articles-grid--home,
    .kishi-articles-grid--archive,
    .kishi-articles-grid--related,
    .kishi-articles-archive-hero__stats,
    .kishi-single-article__aside {
        grid-template-columns: 1fr;
    }

    .kishi-articles-archive-hero { padding: 28px 0 48px; }
    .kishi-articles-archive-hero__grid { margin-top: 26px; gap: 28px; }
    .kishi-articles-archive-hero h1 { font-size: 37px; }

    .kishi-single-article__hero { padding-top: 28px; }
    .kishi-single-article__hero-content { margin: 32px auto 26px; text-align: right; }
    .kishi-single-article__hero-content h1 { font-size: 36px; }
    .kishi-single-article__lead { font-size: 14px; }
    .kishi-single-article__meta { justify-content: flex-start; gap: 7px 12px; }
    .kishi-single-article__meta > * + *::before { margin-inline-end: 11px; }

    .kishi-single-article__cover {
        margin-bottom: -46px;
        border-radius: 20px;
        aspect-ratio: 16 / 10;
    }
    .kishi-single-article__body-wrap { padding-top: 42px; }
    .kishi-single-article__body-wrap--with-cover { padding-top: 82px; }
    .kishi-single-article__content { font-size: 14px; }
    .kishi-single-article__content h2 { font-size: 23px; }
    .kishi-single-article__content h3 { font-size: 19px; }

    .kishi-related-articles__head { align-items: flex-start; flex-direction: column; }
}

@media (prefers-reduced-motion: reduce) {
    body.home #articles .kishi-card::before,
    .kishi-article-card,
    .kishi-article-card__media img,
    .kishi-articles-archive-hero__stats span {
        animation: none !important;
        transition: none !important;
    }
}

/* KISHI v1.16.0 — About resume */
.kishi-about-resume-card{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:28px;padding:30px 34px;border:1px solid rgba(94,135,255,.28);border-radius:24px;background:radial-gradient(circle at 8% 100%,rgba(90,207,190,.14),transparent 28%),radial-gradient(circle at 92% 0,rgba(177,115,255,.16),transparent 30%),rgba(8,13,25,.94);box-shadow:0 20px 55px rgba(0,0,0,.2)}.kishi-about-resume-card:after{content:"PDF";position:absolute;left:28px;bottom:-18px;color:rgba(255,255,255,.035);font-size:90px;font-weight:900;letter-spacing:.04em}.kishi-about-resume-card>div:first-child{position:relative;z-index:2;max-width:760px}.kishi-about-resume-card h2{margin:8px 0 10px;color:#fff;font-size:clamp(25px,3vw,39px)}.kishi-about-resume-card p:not(.kishi-section-heading){margin:0;color:#a5aec2;line-height:1.9}.kishi-about-resume-card__actions{position:relative;z-index:2;display:flex;align-items:center;gap:12px;flex:0 0 auto}.kishi-about-resume-card__actions>span:last-child{display:grid;place-items:center;width:58px;height:58px;border:1px solid rgba(111,84,255,.3);border-radius:16px;background:rgba(111,84,255,.08);color:#9a87ff;font-weight:900}.kishi-about-resume-card:hover{border-color:rgba(90,207,190,.45);box-shadow:0 24px 64px rgba(0,0,0,.25),0 0 34px rgba(90,207,190,.08)}@media(max-width:720px){.kishi-about-resume-card{align-items:stretch;flex-direction:column;padding:24px}.kishi-about-resume-card__actions{align-items:stretch;flex-direction:column}.kishi-about-resume-card__actions .kishi-button{width:100%}.kishi-about-resume-card__actions>span:last-child{display:none}}

/* =========================================================
   KISHI v1.17.0 — live project index previews
   ========================================================= */
.kishi-project-preview {
    --kishi-preview-scale: .3;
    position: relative;
    width: 100%;
    height: 100%;
    min-height: 100%;
    overflow: hidden;
    background: #080d18;
    isolation: isolate;
}

.kishi-project-preview__chrome {
    position: relative;
    z-index: 4;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 10px;
    height: 30px;
    padding: 0 10px;
    direction: ltr;
    border-bottom: 1px solid rgba(255,255,255,.08);
    background: linear-gradient(180deg, rgba(22,29,47,.98), rgba(12,18,31,.98));
    color: rgba(235,240,255,.62);
    font-size: 9px;
}

.kishi-project-preview__dots {
    display: flex;
    align-items: center;
    gap: 4px;
}

.kishi-project-preview__dots i {
    display: block;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: rgba(255,255,255,.18);
}
.kishi-project-preview__dots i:nth-child(1) { background: rgba(255,113,113,.72); }
.kishi-project-preview__dots i:nth-child(2) { background: rgba(245,198,91,.72); }
.kishi-project-preview__dots i:nth-child(3) { background: rgba(112,217,142,.72); }

.kishi-project-preview__address {
    overflow: hidden;
    padding: 3px 9px;
    border: 1px solid rgba(255,255,255,.06);
    border-radius: 999px;
    background: rgba(255,255,255,.035);
    text-overflow: ellipsis;
    white-space: nowrap;
    text-align: center;
}

.kishi-project-preview__lock { color: #8c7dff; }

.kishi-project-preview__viewport {
    position: absolute;
    z-index: 1;
    top: 30px;
    right: 0;
    bottom: 0;
    left: 0;
    overflow: hidden;
    background: #fff;
}

.kishi-project-preview__fallback,
.kishi-project-preview__frame {
    position: absolute;
    top: 0;
    left: 0;
}

.kishi-project-preview__fallback {
    z-index: 0;
    width: 100%;
    height: 100%;
    background:
        radial-gradient(circle at 78% 20%, rgba(111,84,255,.28), transparent 28%),
        linear-gradient(145deg, #10172a, #080d18);
}

.kishi-project-preview__fallback-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.kishi-project-preview__fallback-brand {
    display: flex;
    width: 100%;
    height: 100%;
    flex-direction: column;
    justify-content: flex-end;
    gap: 6px;
    padding: 22px;
    color: #fff;
}
.kishi-project-preview__fallback-brand small { color: #8c7dff; font-size: 9px; font-weight: 900; letter-spacing: .12em; }
.kishi-project-preview__fallback-brand strong { font-size: 18px; }
.kishi-project-preview__fallback-brand b { position: absolute; top: 24px; left: 24px; color: rgba(255,255,255,.15); font-size: 34px; }

.kishi-project-preview__frame {
    z-index: 2;
    width: 1280px;
    height: 900px;
    margin: 0;
    border: 0;
    background: transparent;
    pointer-events: none;
    transform: scale(var(--kishi-preview-scale));
    transform-origin: top left;
}

.kishi-project-preview__click {
    position: absolute;
    z-index: 5;
    inset: 0;
    cursor: pointer;
}

.kishi-project-preview::after {
    content: "";
    position: absolute;
    z-index: 3;
    inset: 30px 0 0;
    pointer-events: none;
    background: linear-gradient(180deg, transparent 60%, rgba(5,8,18,.18));
}

.kishi-project-card__media,
.kishi-project-archive-card__media,
.kishi-services-project-card__media,
.kishi-case-study-hero__media {
    position: relative;
}

.kishi-project-card__media .kishi-project-preview,
.kishi-project-archive-card__media .kishi-project-preview,
.kishi-services-project-card__media .kishi-project-preview {
    position: absolute;
    inset: 0;
}

.kishi-project-card__media::after {
    z-index: 3;
}

.kishi-project-card__view {
    z-index: 6;
    pointer-events: none;
}

.kishi-case-study-hero__media .kishi-project-preview {
    border-radius: 17px;
}

.kishi-project-preview--hero .kishi-project-preview__chrome {
    height: 36px;
    padding-inline: 13px;
    font-size: 10px;
}
.kishi-project-preview--hero .kishi-project-preview__viewport { top: 36px; }
.kishi-project-preview--hero::after { inset-block-start: 36px; }
.kishi-project-preview--hero .kishi-project-preview__dots i { width: 7px; height: 7px; }

.kishi-project-card:hover .kishi-project-preview__frame,
.kishi-project-archive-card:hover .kishi-project-preview__frame,
.kishi-services-project-card:hover .kishi-project-preview__frame {
    filter: saturate(1.04) contrast(1.01);
}

@media (max-width: 720px) {
    .kishi-project-preview__chrome { height: 27px; }
    .kishi-project-preview__viewport { top: 27px; }
    .kishi-project-preview::after { inset-block-start: 27px; }
    .kishi-project-preview__address { font-size: 8px; }
}

@media (prefers-reduced-motion: reduce) {
    .kishi-project-preview__frame { transition: none !important; }
}
